diff --git a/.env-sample b/.env-sample index b9ace62..8e126ce 100644 --- a/.env-sample +++ b/.env-sample @@ -7,7 +7,10 @@ # The password used to encrypt cookies #LNDASH_COOKIE_SECRET=cookie_encrypting_password - +# Privacy mode disables: +# Exchange-rate queries +# Default: false +#LNDASH_PRIVACY_MODE=true # The environment variables below can be used to pre-configure diff --git a/.prettierrc.yaml b/.prettierrc.yaml new file mode 100644 index 0000000..e135d55 --- /dev/null +++ b/.prettierrc.yaml @@ -0,0 +1,7 @@ +plugins: + - "@prettier/plugin-pug" +printWidth: 120 +semi: true +tabWidth: 4 +trailingComma: "none" +useTabs: true \ No newline at end of file diff --git a/app.js b/app.js index 346f5b5..644317c 100755 --- a/app.js +++ b/app.js @@ -179,8 +179,10 @@ app.runOnStartup = async () => { // exchange rates - utils.refreshExchangeRates(); - setInterval(utils.refreshExchangeRates, 30 * 60000); + if (!process.env.LNDASH_PRIVACY_MODE) { + utils.refreshExchangeRates(); + setInterval(utils.refreshExchangeRates, 30 * 60000); + } // refresh periodically diff --git a/app/btcCoinConfig.js b/app/btcCoinConfig.js index dc4e166..f63a387 100644 --- a/app/btcCoinConfig.js +++ b/app/btcCoinConfig.js @@ -33,7 +33,7 @@ const currencyUnits = [ active:true, multiplier:100000000, values:["sat", "satoshi"], - decimalPlaces:0 + decimalPlaces:3 }, { type:"native", @@ -52,7 +52,7 @@ const currencyUnits = [ decimalPlaces:0 }, { - type:"exchanged", + type:"fiat", name:"USD", multiplier:"usd", values:["usd"], @@ -60,7 +60,7 @@ const currencyUnits = [ symbol:"$" }, { - type:"exchanged", + type:"fiat", name:"EUR", multiplier:"eur", values:["eur"], diff --git a/app/currencies.js b/app/currencies.js index c991f00..3af1928 100644 --- a/app/currencies.js +++ b/app/currencies.js @@ -1,50 +1,70 @@ global.currencyTypes = { "btc": { id: "btc", - type:"native", - name:"BTC", - multiplier:1, - default:true, - decimalPlaces:8 + type: "native", + name: "BTC", + multiplier: 1, + default: true, + decimalPlaces: 8 + }, + "mbtc": { + id: "mbtc", + type: "native", + name: "mBTC", + multiplier: 1000, + decimalPlaces: 5 + }, + "bits": { + id: "bits", + type: "native", + name: "bits", + active: false, + multiplier: 1000000, + decimalPlaces: 2 }, "sat": { id: "sat", - type:"native", - name:"sat", - multiplier:100000000, - decimalPlaces:0 + type: "native", + name: "sat", + multiplier: 100000000, + decimalPlaces: 3 }, "msat": { id: "msat", - type:"native", - name:"msat", - multiplier:100000000000, - decimalPlaces:0 + type: "native", + name: "msat", + multiplier: 100000000000, + decimalPlaces: 0 + }, + "local": { + id: "local", + type: "native", + name: "Local" }, "usd": { id: "usd", - type:"exchanged", - name:"USD", - multiplier:"usd", - decimalPlaces:2, - symbol:"$" + type: "fiat", + name: "USD", + multiplier: "usd", + decimalPlaces: 2, + symbol: "$" }, "eur": { id: "eur", - type:"exchanged", - name:"EUR", - multiplier:"eur", - decimalPlaces:2, - symbol:"€" + type: "fiat", + name: "EUR", + multiplier: "eur", + decimalPlaces: 2, + symbol: "€" }, "gbp": { id: "gbp", - type:"exchanged", - name:"GBP", - multiplier:"gbp", - decimalPlaces:2, - symbol:"£" - }, + type: "fiat", + name: "GBP", + multiplier: "gbp", + decimalPlaces: 2, + symbol: "£" + } }; global.currencySymbols = { diff --git a/app/passwordUtils.js b/app/passwordUtils.js index eecda08..1cec8e1 100644 --- a/app/passwordUtils.js +++ b/app/passwordUtils.js @@ -1,36 +1,27 @@ const crypto = require("crypto"); -async function hash(password) { - return new Promise((resolve, reject) => { - const salt = crypto.randomBytes(8).toString("hex"); - - crypto.scrypt(password, salt, 64, (err, derivedKey) => { - if (err) { - reject(err); - - } else { - resolve(salt + ":" + derivedKey.toString('hex')); - } - }); - }) +function hash(password) { + try { + const salt = crypto.randomBytes(8).toString('hex'); + const derivedKey = (crypto.scryptSync(password, salt, 64)).toString('hex'); + return salt + ":" + derivedKey; + } catch (e) { + throw e; + } } -async function verify(password, hash) { - return new Promise((resolve, reject) => { +function verify(password, hash) { + try { const [salt, key] = hash.split(":"); - crypto.scrypt(password, salt, 64, (err, derivedKey) => { - if (err) { - reject(err); - - } else { - resolve(key == derivedKey.toString('hex')); - } - }); - }) + const derivedKey = (crypto.scryptSync(password, salt, 64)).toString('hex'); + return key === derivedKey; + } catch (e) { + throw e; + } } module.exports = { hash: hash, verify: verify -} \ No newline at end of file +}; \ No newline at end of file diff --git a/app/rpcApi.js b/app/rpcApi.js index 1f50460..6c49656 100644 --- a/app/rpcApi.js +++ b/app/rpcApi.js @@ -660,9 +660,9 @@ async function getWalletUtxos(minConfirmations=1, maxConfirmations=100000000) { } async function getNewDepositAddress(addressType) { - let valuesByTypeString = {"p2wkh":0, "np2wkh":1}; + const valuesByTypeString = {"p2wkh":0, "np2wkh":1, "p2tr": 4}; - let NewAddress = util.promisify(lndRpc.NewAddress.bind(lndRpc)); + const NewAddress = util.promisify(lndRpc.NewAddress.bind(lndRpc)); return await NewAddress({type:valuesByTypeString[addressType]}); } diff --git a/app/utils.js b/app/utils.js index 7335cca..87f62d3 100644 --- a/app/utils.js +++ b/app/utils.js @@ -7,7 +7,6 @@ const qrcode = require("qrcode"); const CryptoJS = require("crypto-js"); const fs = require("fs"); const url = require("url"); -const base64url = require('base64url'); const path = require('path'); const axios = require("axios"); @@ -112,7 +111,10 @@ function formatCurrencyAmountWithForcedDecimalPlaces(amount, formatType, forcedD var dec = new Decimal(amount); - var decimalPlaces = currencyType.decimalPlaces; + // the regex used to strip trailing zeros only works + // if theres a non-zero in the string + // force currencies with no decimals to have one so 0 values dont get deleted + var decimalPlaces = currencyType.decimalPlaces || 1; //if (decimalPlaces == 0 && dec < 1) { // decimalPlaces = 5; //} @@ -159,7 +161,7 @@ function formatCurrencyAmountWithForcedDecimalPlaces(amount, formatType, forcedD return returnVal; } - } else if (currencyType.type == "exchanged") { + } else if (currencyType.type == "fiat") { //console.log(JSON.stringify(global.exchangeRates) + " - " + currencyType.name); if (global.exchangeRates != null && global.exchangeRates[currencyType.id] != null) { dec = dec.times(global.exchangeRates[currencyType.id]); @@ -626,11 +628,10 @@ function parseLndconnectString(lndconnectString) { let parsedUrl = url.parse(lndconnectString, true); let tlsCertAscii = "-----BEGIN CERTIFICATE-----\r\n"; - tlsCertAscii += chunkString(base64url.toBase64(parsedUrl.query.cert), 64).join("\r\n"); + tlsCertAscii += chunkString(Buffer.from(parsedUrl.query.cert, 'base64url').toString('base64'), 64).join("\r\n"); tlsCertAscii += "\r\n-----END CERTIFICATE-----"; - let adminMacaroonHex = base64url.toBase64(parsedUrl.query.macaroon); - adminMacaroonHex = Buffer.from(adminMacaroonHex, 'base64').toString('hex'); + let adminMacaroonHex = Buffer.from(parsedUrl.query.macaroon, 'base64url').toString('hex'); let parsedData = { host:parsedUrl.hostname, @@ -654,8 +655,8 @@ function formatLndconnectString(lndconnectData) { // remove ---END--- line certLines.shift(); - let cert = base64url.fromBase64(certLines.join('')); - let macaroon = base64url(Buffer.from(lndconnectData.adminMacaroonHex, 'hex')); + let cert = Buffer.from(certLines.join(''), 'base64').toString('base64url'); + let macaroon = Buffer.from(lndconnectData.adminMacaroonHex, 'hex').toString('base64url'); return `lndconnect://${lndconnectData.host}:${lndconnectData.port}?cert=${cert}&macaroon=${macaroon}`; } @@ -767,9 +768,10 @@ const formatBuffer = (buffer, format="base64", fullDetail=false) => { }; function getExchangedCurrencyFormatData(amount, exchangeType, includeUnit=true) { - if (global.exchangeRates != null && global.exchangeRates[exchangeType.toLowerCase()] != null) { + exchangeType = exchangeType.toLowerCase() + if (global.exchangeRates != null && global.exchangeRates[exchangeType] != null) { var dec = new Decimal(amount); - dec = dec.times(global.exchangeRates[exchangeType.toLowerCase()]); + dec = dec.times(global.exchangeRates[exchangeType]); var exchangedAmt = parseFloat(Math.round(dec * 100) / 100).toFixed(2); return { diff --git a/npm-shrinkwrap.json b/npm-shrinkwrap.json index 665ef7d..1356689 100644 --- a/npm-shrinkwrap.json +++ b/npm-shrinkwrap.json @@ -1,49 +1,52 @@ { "name": "ln-dash", - "version": "0.11.0-beta.4", + "version": "0.11.0-beta.7", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "ln-dash", - "version": "0.11.0-beta.4", - "license": "MIT", - "dependencies": { - "@grpc/grpc-js": "^1.3.7", - "@grpc/proto-loader": "^0.7.4", - "axios": "^1.2.1", - "base64url": "3.0.1", - "body-parser": "^1.19.0", - "bootstrap": "^5.1.3", - "cookie-parser": "^1.4.5", - "crypto-js": "^4.1.1", - "debug": "^4.3.2", - "decimal.js": "^10.3.1", - "dotenv": "^16.0.0", - "express": "^4.17.1", - "express-async-handler": "^1.1.4", - "express-session": "^1.17.2", + "version": "0.11.0-beta.7", + "license": "MIT", + "dependencies": { + "@grpc/grpc-js": "^1.12.5", + "@grpc/proto-loader": "^0.7.13", + "@highlightjs/cdn-assets": "^11.11.1", + "axios": "^1.7.9", + "body-parser": "^1.20.3", + "bootstrap": "^5.3.3", + "cookie-parser": "^1.4.7", + "crypto-js": "^4.2.0", + "debug": "^4.4.0", + "decimal.js": "^10.4.3", + "dotenv": "^16.4.7", + "express": "^4.21.2", + "express-async-handler": "^1.2.0", + "express-session": "^1.18.1", "hash.js": "1.1.7", + "jdenticon": "^3.3.0", "latest-version": "^7.0.0", "meow": "^9.0.0", - "moment": "^2.29.1", + "moment": "^2.30.1", "moment-duration-format": "^2.3.2", "morgan": "^1.10.0", - "pug": "^3.0.2", + "pug": "^3.0.3", "qr-image": "3.2.0", - "qrcode": "^1.4.4", + "qrcode": "^1.5.4", "runes": "0.4.3", - "semver": "^7.3.5", + "semver": "^7.6.3", "serve-favicon": "^2.5.0", - "simple-git": "^3.15.1", + "simple-git": "^3.27.0", "untildify": "^4.0.0" }, "bin": { "ln-dash": "bin/cli.js" }, "devDependencies": { + "@prettier/plugin-pug": "^3.2.0", "npm-run-all": "^4.1.5", - "sass": "^1.51.0" + "prettier": "^3.4.2", + "sass": "^1.83.1" } }, "node_modules/@babel/code-frame": { @@ -111,27 +114,28 @@ } }, "node_modules/@grpc/grpc-js": { - "version": "1.8.1", - "resolved": "https://registry.npmjs.org/@grpc/grpc-js/-/grpc-js-1.8.1.tgz", - "integrity": "sha512-mdqYADWl/9Kb75XLstt6pvBnS1DpxSDFRKrbadkY1ymUd29hq49nP6tLcL7a7qLydgqFCpjNwa2RsyrqB3MsXA==", + "version": "1.12.5", + "resolved": "https://registry.npmjs.org/@grpc/grpc-js/-/grpc-js-1.12.5.tgz", + "integrity": "sha512-d3iiHxdpg5+ZcJ6jnDSOT8Z0O0VMVGy34jAnYLUX8yd36b1qn8f1TwOA/Lc7TsOh03IkPJ38eGI5qD2EjNkoEA==", + "license": "Apache-2.0", "dependencies": { - "@grpc/proto-loader": "^0.7.0", - "@types/node": ">=12.12.47" + "@grpc/proto-loader": "^0.7.13", + "@js-sdsl/ordered-map": "^4.4.2" }, "engines": { - "node": "^8.13.0 || >=10.10.0" + "node": ">=12.10.0" } }, "node_modules/@grpc/proto-loader": { - "version": "0.7.4", - "resolved": "https://registry.npmjs.org/@grpc/proto-loader/-/proto-loader-0.7.4.tgz", - "integrity": "sha512-MnWjkGwqQ3W8fx94/c1CwqLsNmHHv2t0CFn+9++6+cDphC1lolpg9M2OU0iebIjK//pBNX9e94ho+gjx6vz39w==", + "version": "0.7.13", + "resolved": "https://registry.npmjs.org/@grpc/proto-loader/-/proto-loader-0.7.13.tgz", + "integrity": "sha512-AiXO/bfe9bmxBjxxtYxFAXGZvMaN5s8kO+jBHAJCON8rJoB5YS/D6X7ZNc6XQkuHNmyl4CYaMI1fJ/Gn27RGGw==", + "license": "Apache-2.0", "dependencies": { - "@types/long": "^4.0.1", "lodash.camelcase": "^4.3.0", - "long": "^4.0.0", - "protobufjs": "^7.0.0", - "yargs": "^16.2.0" + "long": "^5.0.0", + "protobufjs": "^7.2.5", + "yargs": "^17.7.2" }, "bin": { "proto-loader-gen-types": "build/bin/proto-loader-gen-types.js" @@ -140,6 +144,25 @@ "node": ">=6" } }, + "node_modules/@highlightjs/cdn-assets": { + "version": "11.11.1", + "resolved": "https://registry.npmjs.org/@highlightjs/cdn-assets/-/cdn-assets-11.11.1.tgz", + "integrity": "sha512-VEPdHzwelZ12hEX18BHduqxMZGolcUsrbeokHYxOUIm8X2+M7nx5QPtPeQgRxR9XjhdLv4/7DD5BWOlSrJ3k7Q==", + "license": "BSD-3-Clause", + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/@js-sdsl/ordered-map": { + "version": "4.4.2", + "resolved": "https://registry.npmjs.org/@js-sdsl/ordered-map/-/ordered-map-4.4.2.tgz", + "integrity": "sha512-iUKgm52T8HOE/makSxjqoWhe95ZJA1/G1sYsGev2JDKUSS14KAgg1LHb+Ba+IPow0xflbnSkOsZcO08C7w1gYw==", + "license": "MIT", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/js-sdsl" + } + }, "node_modules/@kwsites/file-exists": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/@kwsites/file-exists/-/file-exists-1.1.1.tgz", @@ -153,6 +176,316 @@ "resolved": "https://registry.npmjs.org/@kwsites/promise-deferred/-/promise-deferred-1.1.1.tgz", "integrity": "sha512-GaHYm+c0O9MjZRu0ongGBRbinu8gVAMd2UZjji6jVmqKtZluZnptXGWhz1E8j8D2HJ3f/yMxKAUC0b+57wncIw==" }, + "node_modules/@parcel/watcher": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher/-/watcher-2.5.0.tgz", + "integrity": "sha512-i0GV1yJnm2n3Yq1qw6QrUrd/LI9bE8WEBOTtOkpCXHHdyN3TAGgqAK/DAT05z4fq2x04cARXt2pDmjWjL92iTQ==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "optional": true, + "dependencies": { + "detect-libc": "^1.0.3", + "is-glob": "^4.0.3", + "micromatch": "^4.0.5", + "node-addon-api": "^7.0.0" + }, + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + }, + "optionalDependencies": { + "@parcel/watcher-android-arm64": "2.5.0", + "@parcel/watcher-darwin-arm64": "2.5.0", + "@parcel/watcher-darwin-x64": "2.5.0", + "@parcel/watcher-freebsd-x64": "2.5.0", + "@parcel/watcher-linux-arm-glibc": "2.5.0", + "@parcel/watcher-linux-arm-musl": "2.5.0", + "@parcel/watcher-linux-arm64-glibc": "2.5.0", + "@parcel/watcher-linux-arm64-musl": "2.5.0", + "@parcel/watcher-linux-x64-glibc": "2.5.0", + "@parcel/watcher-linux-x64-musl": "2.5.0", + "@parcel/watcher-win32-arm64": "2.5.0", + "@parcel/watcher-win32-ia32": "2.5.0", + "@parcel/watcher-win32-x64": "2.5.0" + } + }, + "node_modules/@parcel/watcher-android-arm64": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-android-arm64/-/watcher-android-arm64-2.5.0.tgz", + "integrity": "sha512-qlX4eS28bUcQCdribHkg/herLe+0A9RyYC+mm2PXpncit8z5b3nSqGVzMNR3CmtAOgRutiZ02eIJJgP/b1iEFQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-darwin-arm64": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-darwin-arm64/-/watcher-darwin-arm64-2.5.0.tgz", + "integrity": "sha512-hyZ3TANnzGfLpRA2s/4U1kbw2ZI4qGxaRJbBH2DCSREFfubMswheh8TeiC1sGZ3z2jUf3s37P0BBlrD3sjVTUw==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-darwin-x64": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-darwin-x64/-/watcher-darwin-x64-2.5.0.tgz", + "integrity": "sha512-9rhlwd78saKf18fT869/poydQK8YqlU26TMiNg7AIu7eBp9adqbJZqmdFOsbZ5cnLp5XvRo9wcFmNHgHdWaGYA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-freebsd-x64": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-freebsd-x64/-/watcher-freebsd-x64-2.5.0.tgz", + "integrity": "sha512-syvfhZzyM8kErg3VF0xpV8dixJ+RzbUaaGaeb7uDuz0D3FK97/mZ5AJQ3XNnDsXX7KkFNtyQyFrXZzQIcN49Tw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-arm-glibc": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm-glibc/-/watcher-linux-arm-glibc-2.5.0.tgz", + "integrity": "sha512-0VQY1K35DQET3dVYWpOaPFecqOT9dbuCfzjxoQyif1Wc574t3kOSkKevULddcR9znz1TcklCE7Ht6NIxjvTqLA==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-arm-musl": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm-musl/-/watcher-linux-arm-musl-2.5.0.tgz", + "integrity": "sha512-6uHywSIzz8+vi2lAzFeltnYbdHsDm3iIB57d4g5oaB9vKwjb6N6dRIgZMujw4nm5r6v9/BQH0noq6DzHrqr2pA==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-arm64-glibc": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm64-glibc/-/watcher-linux-arm64-glibc-2.5.0.tgz", + "integrity": "sha512-BfNjXwZKxBy4WibDb/LDCriWSKLz+jJRL3cM/DllnHH5QUyoiUNEp3GmL80ZqxeumoADfCCP19+qiYiC8gUBjA==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-arm64-musl": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm64-musl/-/watcher-linux-arm64-musl-2.5.0.tgz", + "integrity": "sha512-S1qARKOphxfiBEkwLUbHjCY9BWPdWnW9j7f7Hb2jPplu8UZ3nes7zpPOW9bkLbHRvWM0WDTsjdOTUgW0xLBN1Q==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-x64-glibc": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-x64-glibc/-/watcher-linux-x64-glibc-2.5.0.tgz", + "integrity": "sha512-d9AOkusyXARkFD66S6zlGXyzx5RvY+chTP9Jp0ypSTC9d4lzyRs9ovGf/80VCxjKddcUvnsGwCHWuF2EoPgWjw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-x64-musl": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-x64-musl/-/watcher-linux-x64-musl-2.5.0.tgz", + "integrity": "sha512-iqOC+GoTDoFyk/VYSFHwjHhYrk8bljW6zOhPuhi5t9ulqiYq1togGJB5e3PwYVFFfeVgc6pbz3JdQyDoBszVaA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-win32-arm64": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-arm64/-/watcher-win32-arm64-2.5.0.tgz", + "integrity": "sha512-twtft1d+JRNkM5YbmexfcH/N4znDtjgysFaV9zvZmmJezQsKpkfLYJ+JFV3uygugK6AtIM2oADPkB2AdhBrNig==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-win32-ia32": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-ia32/-/watcher-win32-ia32-2.5.0.tgz", + "integrity": "sha512-+rgpsNRKwo8A53elqbbHXdOMtY/tAtTzManTWShB5Kk54N8Q9mzNWV7tV+IbGueCbcj826MfWGU3mprWtuf1TA==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-win32-x64": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-x64/-/watcher-win32-x64-2.5.0.tgz", + "integrity": "sha512-lPrxve92zEHdgeff3aiu4gDOIt4u7sJYha6wbdEZDCDUhtjTsOMiaJzG5lMY4GkWH8p0fMmO2Ppq5G5XXG+DQw==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, "node_modules/@pnpm/network.ca-file": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/@pnpm/network.ca-file/-/network.ca-file-1.0.2.tgz", @@ -177,39 +510,72 @@ } }, "node_modules/@popperjs/core": { - "version": "2.11.6", - "resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.11.6.tgz", - "integrity": "sha512-50/17A98tWUfQ176raKiOGXuYpLyyVMkxxG6oylzL3BPOlA6ADGdK7EYunSa4I064xerltq9TGXs8HmOk5E+vw==", + "version": "2.11.8", + "resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.11.8.tgz", + "integrity": "sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==", + "license": "MIT", "peer": true, "funding": { "type": "opencollective", "url": "https://opencollective.com/popperjs" } }, + "node_modules/@prettier/plugin-pug": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/@prettier/plugin-pug/-/plugin-pug-3.2.0.tgz", + "integrity": "sha512-SJEDgNjLpgZ2utQJGAFG96yho1hxX/tXflL24HztHYxzkPlDus2/XcvaW7WKQgMej1I+Pk6hLKp2FWv/zgzvkA==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/Shinigami92" + }, + { + "type": "paypal", + "url": "https://www.paypal.com/donate/?hosted_button_id=L7GY729FBKTZY" + } + ], + "license": "MIT", + "dependencies": { + "pug-lexer": "^5.0.1" + }, + "engines": { + "node": ">=18.0.0", + "npm": ">=9.0.0" + }, + "peerDependencies": { + "prettier": "^3.0.0" + } + }, "node_modules/@protobufjs/aspromise": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/@protobufjs/aspromise/-/aspromise-1.1.2.tgz", - "integrity": "sha512-j+gKExEuLmKwvz3OgROXtrJ2UG2x8Ch2YZUxahh+s1F2HZ+wAceUNLkvy6zKCPVRkU++ZWQrdxsUeQXmcg4uoQ==" + "integrity": "sha512-j+gKExEuLmKwvz3OgROXtrJ2UG2x8Ch2YZUxahh+s1F2HZ+wAceUNLkvy6zKCPVRkU++ZWQrdxsUeQXmcg4uoQ==", + "license": "BSD-3-Clause" }, "node_modules/@protobufjs/base64": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/@protobufjs/base64/-/base64-1.1.2.tgz", - "integrity": "sha512-AZkcAA5vnN/v4PDqKyMR5lx7hZttPDgClv83E//FMNhR2TMcLUhfRUBHCmSl0oi9zMgDDqRUJkSxO3wm85+XLg==" + "integrity": "sha512-AZkcAA5vnN/v4PDqKyMR5lx7hZttPDgClv83E//FMNhR2TMcLUhfRUBHCmSl0oi9zMgDDqRUJkSxO3wm85+XLg==", + "license": "BSD-3-Clause" }, "node_modules/@protobufjs/codegen": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/@protobufjs/codegen/-/codegen-2.0.4.tgz", - "integrity": "sha512-YyFaikqM5sH0ziFZCN3xDC7zeGaB/d0IUb9CATugHWbd1FRFwWwt4ld4OYMPWu5a3Xe01mGAULCdqhMlPl29Jg==" + "integrity": "sha512-YyFaikqM5sH0ziFZCN3xDC7zeGaB/d0IUb9CATugHWbd1FRFwWwt4ld4OYMPWu5a3Xe01mGAULCdqhMlPl29Jg==", + "license": "BSD-3-Clause" }, "node_modules/@protobufjs/eventemitter": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/@protobufjs/eventemitter/-/eventemitter-1.1.0.tgz", - "integrity": "sha512-j9ednRT81vYJ9OfVuXG6ERSTdEL1xVsNgqpkxMsbIabzSo3goCjDIveeGv5d03om39ML71RdmrGNjG5SReBP/Q==" + "integrity": "sha512-j9ednRT81vYJ9OfVuXG6ERSTdEL1xVsNgqpkxMsbIabzSo3goCjDIveeGv5d03om39ML71RdmrGNjG5SReBP/Q==", + "license": "BSD-3-Clause" }, "node_modules/@protobufjs/fetch": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/@protobufjs/fetch/-/fetch-1.1.0.tgz", "integrity": "sha512-lljVXpqXebpsijW71PZaCYeIcE5on1w5DlQy5WH6GLbFryLUrBD4932W/E2BSpfRJWseIL4v/KPgBFxDOIdKpQ==", + "license": "BSD-3-Clause", "dependencies": { "@protobufjs/aspromise": "^1.1.1", "@protobufjs/inquire": "^1.1.0" @@ -218,27 +584,32 @@ "node_modules/@protobufjs/float": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/@protobufjs/float/-/float-1.0.2.tgz", - "integrity": "sha512-Ddb+kVXlXst9d+R9PfTIxh1EdNkgoRe5tOX6t01f1lYWOvJnSPDBlG241QLzcyPdoNTsblLUdujGSE4RzrTZGQ==" + "integrity": "sha512-Ddb+kVXlXst9d+R9PfTIxh1EdNkgoRe5tOX6t01f1lYWOvJnSPDBlG241QLzcyPdoNTsblLUdujGSE4RzrTZGQ==", + "license": "BSD-3-Clause" }, "node_modules/@protobufjs/inquire": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/@protobufjs/inquire/-/inquire-1.1.0.tgz", - "integrity": "sha512-kdSefcPdruJiFMVSbn801t4vFK7KB/5gd2fYvrxhuJYg8ILrmn9SKSX2tZdV6V+ksulWqS7aXjBcRXl3wHoD9Q==" + "integrity": "sha512-kdSefcPdruJiFMVSbn801t4vFK7KB/5gd2fYvrxhuJYg8ILrmn9SKSX2tZdV6V+ksulWqS7aXjBcRXl3wHoD9Q==", + "license": "BSD-3-Clause" }, "node_modules/@protobufjs/path": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/@protobufjs/path/-/path-1.1.2.tgz", - "integrity": "sha512-6JOcJ5Tm08dOHAbdR3GrvP+yUUfkjG5ePsHYczMFLq3ZmMkAD98cDgcT2iA1lJ9NVwFd4tH/iSSoe44YWkltEA==" + "integrity": "sha512-6JOcJ5Tm08dOHAbdR3GrvP+yUUfkjG5ePsHYczMFLq3ZmMkAD98cDgcT2iA1lJ9NVwFd4tH/iSSoe44YWkltEA==", + "license": "BSD-3-Clause" }, "node_modules/@protobufjs/pool": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/@protobufjs/pool/-/pool-1.1.0.tgz", - "integrity": "sha512-0kELaGSIDBKvcgS4zkjz1PeddatrjYcmMWOlAuAPwAeccUrPHdUqo/J6LiymHHEiJT5NrF1UVwxY14f+fy4WQw==" + "integrity": "sha512-0kELaGSIDBKvcgS4zkjz1PeddatrjYcmMWOlAuAPwAeccUrPHdUqo/J6LiymHHEiJT5NrF1UVwxY14f+fy4WQw==", + "license": "BSD-3-Clause" }, "node_modules/@protobufjs/utf8": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/@protobufjs/utf8/-/utf8-1.1.0.tgz", - "integrity": "sha512-Vvn3zZrhQZkkBE8LSuW3em98c0FwgO4nxzv6OdSxPKJIEKY2bGbHn+mhGIPerzI4twdxaP8/0+06HBpwf345Lw==" + "integrity": "sha512-Vvn3zZrhQZkkBE8LSuW3em98c0FwgO4nxzv6OdSxPKJIEKY2bGbHn+mhGIPerzI4twdxaP8/0+06HBpwf345Lw==", + "license": "BSD-3-Clause" }, "node_modules/@sindresorhus/is": { "version": "5.3.0", @@ -262,20 +633,19 @@ "node": ">=14.16" } }, - "node_modules/@types/long": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/@types/long/-/long-4.0.2.tgz", - "integrity": "sha512-MqTGEo5bj5t157U6fA/BiDynNkn0YknVdh48CMPkTSpFTVmvao5UQmm7uEF6xBEo7qIMAlY/JSleYaE6VOdpaA==" - }, "node_modules/@types/minimist": { "version": "1.2.2", "resolved": "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.2.tgz", "integrity": "sha512-jhuKLIRrhvCPLqwPcx6INqmKeiA5EWrsCOPhrlFSrbrmU4ZMPjj5Ul/oLCMDO98XRUIwVm78xICz4EPCektzeQ==" }, "node_modules/@types/node": { - "version": "18.11.18", - "resolved": "https://registry.npmjs.org/@types/node/-/node-18.11.18.tgz", - "integrity": "sha512-DHQpWGjyQKSHj3ebjFI/wRKcqQcdR+MoFBygntYOZytCqNfkd2ZC4ARDJ2DQqhjH5p85Nnd3jhUJIXrszFX/JA==" + "version": "22.10.5", + "resolved": "https://registry.npmjs.org/@types/node/-/node-22.10.5.tgz", + "integrity": "sha512-F8Q+SeGimwOo86fiovQh8qiXfFEh2/ocYv7tU5pJ3EXMSSxk1Joj5wefpFK2fHTf/N6HKGSxIDBT9f3gCxXPkQ==", + "license": "MIT", + "dependencies": { + "undici-types": "~6.20.0" + } }, "node_modules/@types/normalize-package-data": { "version": "2.4.1", @@ -324,19 +694,6 @@ "node": ">=4" } }, - "node_modules/anymatch": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", - "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", - "dev": true, - "dependencies": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" - }, - "engines": { - "node": ">= 8" - } - }, "node_modules/array-flatten": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", @@ -356,9 +713,10 @@ "integrity": "sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==" }, "node_modules/assert-never": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/assert-never/-/assert-never-1.2.1.tgz", - "integrity": "sha512-TaTivMB6pYI1kXwrFlEhLeGfOqoDNdTxjCdwRfFFkEA30Eu+k48W34nlok2EYWJfFFzqaEmichdNM7th6M5HNw==" + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/assert-never/-/assert-never-1.4.0.tgz", + "integrity": "sha512-5oJg84os6NMQNl27T9LnZkvvqzvAnHu03ShCnoj6bsJwS7L8AO4lf+C/XjK/nvzEqQB744moC6V128RucQd1jA==", + "license": "MIT" }, "node_modules/asynckit": { "version": "0.4.0", @@ -366,11 +724,12 @@ "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==" }, "node_modules/axios": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/axios/-/axios-1.2.2.tgz", - "integrity": "sha512-bz/J4gS2S3I7mpN/YZfGFTqhXTYzRho8Ay38w2otuuDR322KzFIWm/4W2K6gIwvWaws5n+mnb7D1lN9uD+QH6Q==", + "version": "1.7.9", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.7.9.tgz", + "integrity": "sha512-LhLcE7Hbiryz8oMDdDptSrWowmB4Bl6RCt6sIJKpRB4XtVf0iEgewX3au/pJqm+Py1kCASkb/FFKjxQaLtxJvw==", + "license": "MIT", "dependencies": { - "follow-redirects": "^1.15.0", + "follow-redirects": "^1.15.6", "form-data": "^4.0.0", "proxy-from-env": "^1.1.0" } @@ -379,6 +738,7 @@ "version": "3.0.0-canary-5", "resolved": "https://registry.npmjs.org/babel-walk/-/babel-walk-3.0.0-canary-5.tgz", "integrity": "sha512-GAwkz0AihzY5bkwIY5QDR+LvsRQgB/B+1foMPvi0FZPMl5fjD7ICiznUiBdLYMH1QYe6vqu4gWYytZOccLouFw==", + "license": "MIT", "dependencies": { "@babel/types": "^7.9.6" }, @@ -392,14 +752,6 @@ "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", "dev": true }, - "node_modules/base64url": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/base64url/-/base64url-3.0.1.tgz", - "integrity": "sha512-ir1UPr3dkwexU7FdV8qBBbNDRUhMmIekYMFZfi+C/sLNnRESKPl23nB9b2pltqfOQNnGzsDdId90AEtG5tCx4A==", - "engines": { - "node": ">=6.0.0" - } - }, "node_modules/basic-auth": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/basic-auth/-/basic-auth-2.0.1.tgz", @@ -416,30 +768,22 @@ "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" }, - "node_modules/binary-extensions": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", - "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", - "dev": true, - "engines": { - "node": ">=8" - } - }, "node_modules/body-parser": { - "version": "1.20.1", - "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.1.tgz", - "integrity": "sha512-jWi7abTbYwajOytWCQc37VulmWiRae5RyTpaCyDcS5/lMdtwSz5lOpDE67srw/HYe35f1z3fDQw+3txg7gNtWw==", + "version": "1.20.3", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.3.tgz", + "integrity": "sha512-7rAxByjUMqQ3/bHJy7D6OGXvx/MMc4IqBn/X0fcM1QUcAItpZrBEYhWGem+tzXH90c+G01ypMcYJBO9Y30203g==", + "license": "MIT", "dependencies": { "bytes": "3.1.2", - "content-type": "~1.0.4", + "content-type": "~1.0.5", "debug": "2.6.9", "depd": "2.0.0", "destroy": "1.2.0", "http-errors": "2.0.0", "iconv-lite": "0.4.24", "on-finished": "2.4.1", - "qs": "6.11.0", - "raw-body": "2.5.1", + "qs": "6.13.0", + "raw-body": "2.5.2", "type-is": "~1.6.18", "unpipe": "1.0.0" }, @@ -462,9 +806,9 @@ "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" }, "node_modules/bootstrap": { - "version": "5.2.3", - "resolved": "https://registry.npmjs.org/bootstrap/-/bootstrap-5.2.3.tgz", - "integrity": "sha512-cEKPM+fwb3cT8NzQZYEu4HilJ3anCrWqh3CHAok1p9jXqMPsPTBhU25fBckEJHJ/p+tTxTFTsFQGM+gaHpi3QQ==", + "version": "5.3.3", + "resolved": "https://registry.npmjs.org/bootstrap/-/bootstrap-5.3.3.tgz", + "integrity": "sha512-8HLCdWgyoMguSO9o+aH+iuZ+aht+mzW0u3HIMzVu7Srrpv7EBBxTnrFlSCskwdY1+EOFQSm7uMJhNQHkdPcmjg==", "funding": [ { "type": "github", @@ -475,8 +819,9 @@ "url": "https://opencollective.com/bootstrap" } ], + "license": "MIT", "peerDependencies": { - "@popperjs/core": "^2.11.6" + "@popperjs/core": "^2.11.8" } }, "node_modules/brace-expansion": { @@ -490,12 +835,14 @@ } }, "node_modules/braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", + "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", "dev": true, + "license": "MIT", + "optional": true, "dependencies": { - "fill-range": "^7.0.1" + "fill-range": "^7.1.1" }, "engines": { "node": ">=8" @@ -505,6 +852,7 @@ "version": "3.1.2", "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", + "license": "MIT", "engines": { "node": ">= 0.8" } @@ -545,6 +893,35 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/call-bind-apply-helpers": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.1.tgz", + "integrity": "sha512-BhYE+WDaywFg2TBWYNXAE+8B1ATnThNBqXHP5nQu0jWJdVvY2hvkpyB3qOmtmDePiS5/BDQ8wASEWGMWRG148g==", + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/call-bound": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/call-bound/-/call-bound-1.0.3.tgz", + "integrity": "sha512-YTd+6wGlNlPxSuri7Y6X8tY2dmm12UMH66RpKMhiX6rsk5wXXnYgbUcOt8kiS31/AjfoTOvCsE+w8nZQLQnzHA==", + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.1", + "get-intrinsic": "^1.2.6" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/camelcase": { "version": "5.3.1", "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", @@ -569,6 +946,15 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/canvas-renderer": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/canvas-renderer/-/canvas-renderer-2.2.1.tgz", + "integrity": "sha512-RrBgVL5qCEDIXpJ6NrzyRNoTnXxYarqm/cS/W6ERhUJts5UQtt/XPEosGN3rqUkZ4fjBArlnCbsISJ+KCFnIAg==", + "license": "MIT", + "dependencies": { + "@types/node": "*" + } + }, "node_modules/chalk": { "version": "2.4.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", @@ -591,40 +977,33 @@ } }, "node_modules/chokidar": { - "version": "3.5.3", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", - "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-4.0.3.tgz", + "integrity": "sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==", "dev": true, - "funding": [ - { - "type": "individual", - "url": "https://paulmillr.com/funding/" - } - ], + "license": "MIT", "dependencies": { - "anymatch": "~3.1.2", - "braces": "~3.0.2", - "glob-parent": "~5.1.2", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.6.0" + "readdirp": "^4.0.1" }, "engines": { - "node": ">= 8.10.0" + "node": ">= 14.16.0" }, - "optionalDependencies": { - "fsevents": "~2.3.2" + "funding": { + "url": "https://paulmillr.com/funding/" } }, "node_modules/cliui": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", - "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", + "license": "ISC", "dependencies": { "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", + "strip-ansi": "^6.0.1", "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=12" } }, "node_modules/color-convert": { @@ -687,27 +1066,30 @@ } }, "node_modules/content-type": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", - "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==", + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz", + "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==", + "license": "MIT", "engines": { "node": ">= 0.6" } }, "node_modules/cookie": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.1.tgz", - "integrity": "sha512-ZwrFkGJxUR3EIoXtO+yVE69Eb7KlixbaeAWfBQB9vVsNn/o+Yw69gBWSSDK825hQNdN+wF8zELf3dFNl/kxkUA==", + "version": "0.7.2", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.7.2.tgz", + "integrity": "sha512-yki5XnKuf750l50uGTllt6kKILY4nQ1eNIQatoXEByZ5dWgnKqbnqmTrBE5B4N7lrMJKQ2ytWMiTO2o0v6Ew/w==", + "license": "MIT", "engines": { "node": ">= 0.6" } }, "node_modules/cookie-parser": { - "version": "1.4.6", - "resolved": "https://registry.npmjs.org/cookie-parser/-/cookie-parser-1.4.6.tgz", - "integrity": "sha512-z3IzaNjdwUC2olLIB5/ITd0/setiaFMLYiZJle7xg5Fe9KWAceil7xszYfHHBtDFYLSgJduS2Ty0P1uJdPDJeA==", + "version": "1.4.7", + "resolved": "https://registry.npmjs.org/cookie-parser/-/cookie-parser-1.4.7.tgz", + "integrity": "sha512-nGUvgXnotP3BsjiLX2ypbQnWoGUPIIfHQNZkkC668ntrzGWEZVW70HDEB1qnNGMicPje6EttlIgzo51YSwNQGw==", + "license": "MIT", "dependencies": { - "cookie": "0.4.1", + "cookie": "0.7.2", "cookie-signature": "1.0.6" }, "engines": { @@ -745,16 +1127,18 @@ } }, "node_modules/crypto-js": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/crypto-js/-/crypto-js-4.1.1.tgz", - "integrity": "sha512-o2JlM7ydqd3Qk9CA0L4NL6mTzU2sdx96a+oOfPu8Mkl/PK51vSyoi8/rQ8NknZtk44vq15lmhAj9CIAGwgeWKw==" + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/crypto-js/-/crypto-js-4.2.0.tgz", + "integrity": "sha512-KALDyEYgpY+Rlob/iriUtjV6d5Eq+Y191A5g4UqLAi8CyGP9N1+FdVbkc1SxKc2r4YAYqG8JzO2KGL+AizD70Q==", + "license": "MIT" }, "node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.0.tgz", + "integrity": "sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA==", + "license": "MIT", "dependencies": { - "ms": "2.1.2" + "ms": "^2.1.3" }, "engines": { "node": ">=6.0" @@ -883,6 +1267,20 @@ "npm": "1.2.8000 || >= 1.4.16" } }, + "node_modules/detect-libc": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz", + "integrity": "sha512-pGjwhsmsp4kL2RTz08wcOlGN83otlqHeD/Z5T8GXZB+/YcpQ/dgo+lbU8ZsGxV0HIvqqxo9l7mqYwyYMD9bKDg==", + "dev": true, + "license": "Apache-2.0", + "optional": true, + "bin": { + "detect-libc": "bin/detect-libc.js" + }, + "engines": { + "node": ">=0.10" + } + }, "node_modules/dijkstrajs": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/dijkstrajs/-/dijkstrajs-1.0.2.tgz", @@ -891,14 +1289,33 @@ "node_modules/doctypes": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/doctypes/-/doctypes-1.1.0.tgz", - "integrity": "sha512-LLBi6pEqS6Do3EKQ3J0NqHWV5hhb78Pi8vvESYwyOy2c31ZEZVdtitdzsQsKb7878PEERhzUk0ftqGhG6Mz+pQ==" + "integrity": "sha512-LLBi6pEqS6Do3EKQ3J0NqHWV5hhb78Pi8vvESYwyOy2c31ZEZVdtitdzsQsKb7878PEERhzUk0ftqGhG6Mz+pQ==", + "license": "MIT" }, "node_modules/dotenv": { - "version": "16.0.3", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.0.3.tgz", - "integrity": "sha512-7GO6HghkA5fYG9TYnNxi14/7K9f5occMlp3zXAuSxn7CKCxt9xbNWG7yF8hTCSUchlfWSe3uLmlPfigevRItzQ==", + "version": "16.4.7", + "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.4.7.tgz", + "integrity": "sha512-47qPchRCykZC03FhkYAhrvwU4xDBFIj1QPqaarj6mdM/hgUzfPHcpkHJOn3mJAufFeeAxAzeGsr5X0M4k6fLZQ==", + "license": "BSD-2-Clause", "engines": { "node": ">=12" + }, + "funding": { + "url": "https://dotenvx.com" + } + }, + "node_modules/dunder-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz", + "integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==", + "license": "MIT", + "dependencies": { + "call-bind-apply-helpers": "^1.0.1", + "es-errors": "^1.3.0", + "gopd": "^1.2.0" + }, + "engines": { + "node": ">= 0.4" } }, "node_modules/ee-first": { @@ -911,15 +1328,11 @@ "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" }, - "node_modules/encode-utf8": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/encode-utf8/-/encode-utf8-1.0.3.tgz", - "integrity": "sha512-ucAnuBEhUK4boH2HjVYG5Q2mQyPorvv0u/ocS+zhdw0S8AlHYY+GOFhP1Gio5z4icpP2ivFSvhtFjQi8+T9ppw==" - }, "node_modules/encodeurl": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", - "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz", + "integrity": "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==", + "license": "MIT", "engines": { "node": ">= 0.8" } @@ -971,6 +1384,36 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/es-define-property": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz", + "integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==", + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-errors": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz", + "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-object-atoms": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.0.0.tgz", + "integrity": "sha512-MZ4iQ6JwHOBQjahnjwaC1ZtIBH+2ohjamzAO3oaHcXYup7qxjF2fixyH+Q71voWHeOkI2q/TnJao/KfXYIZWbw==", + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0" + }, + "engines": { + "node": ">= 0.4" + } + }, "node_modules/es-to-primitive": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", @@ -989,9 +1432,10 @@ } }, "node_modules/escalade": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", - "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", + "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", + "license": "MIT", "engines": { "node": ">=6" } @@ -999,7 +1443,8 @@ "node_modules/escape-html": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", - "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==" + "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==", + "license": "MIT" }, "node_modules/escape-string-regexp": { "version": "1.0.5", @@ -1018,36 +1463,37 @@ } }, "node_modules/express": { - "version": "4.18.2", - "resolved": "https://registry.npmjs.org/express/-/express-4.18.2.tgz", - "integrity": "sha512-5/PsL6iGPdfQ/lKM1UuielYgv3BUoJfz1aUwU9vHZ+J7gyvwdQXFEBIEIaxeGf0GIcreATNyBExtalisDbuMqQ==", + "version": "4.21.2", + "resolved": "https://registry.npmjs.org/express/-/express-4.21.2.tgz", + "integrity": "sha512-28HqgMZAmih1Czt9ny7qr6ek2qddF4FclbMzwhCREB6OFfH+rXAnuNCwo1/wFvrtbgsQDb4kSbX9de9lFbrXnA==", + "license": "MIT", "dependencies": { "accepts": "~1.3.8", "array-flatten": "1.1.1", - "body-parser": "1.20.1", + "body-parser": "1.20.3", "content-disposition": "0.5.4", "content-type": "~1.0.4", - "cookie": "0.5.0", + "cookie": "0.7.1", "cookie-signature": "1.0.6", "debug": "2.6.9", "depd": "2.0.0", - "encodeurl": "~1.0.2", + "encodeurl": "~2.0.0", "escape-html": "~1.0.3", "etag": "~1.8.1", - "finalhandler": "1.2.0", + "finalhandler": "1.3.1", "fresh": "0.5.2", "http-errors": "2.0.0", - "merge-descriptors": "1.0.1", + "merge-descriptors": "1.0.3", "methods": "~1.1.2", "on-finished": "2.4.1", "parseurl": "~1.3.3", - "path-to-regexp": "0.1.7", + "path-to-regexp": "0.1.12", "proxy-addr": "~2.0.7", - "qs": "6.11.0", + "qs": "6.13.0", "range-parser": "~1.2.1", "safe-buffer": "5.2.1", - "send": "0.18.0", - "serve-static": "1.15.0", + "send": "0.19.0", + "serve-static": "1.16.2", "setprototypeof": "1.2.0", "statuses": "2.0.1", "type-is": "~1.6.18", @@ -1056,6 +1502,10 @@ }, "engines": { "node": ">= 0.10.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/express" } }, "node_modules/express-async-handler": { @@ -1064,12 +1514,13 @@ "integrity": "sha512-rCSVtPXRmQSW8rmik/AIb2P0op6l7r1fMW538yyvTMltCO4xQEWMmobfrIxN2V1/mVrgxB8Az3reYF6yUZw37w==" }, "node_modules/express-session": { - "version": "1.17.3", - "resolved": "https://registry.npmjs.org/express-session/-/express-session-1.17.3.tgz", - "integrity": "sha512-4+otWXlShYlG1Ma+2Jnn+xgKUZTMJ5QD3YvfilX3AcocOAbIkVylSWEklzALe/+Pu4qV6TYBj5GwOBFfdKqLBw==", + "version": "1.18.1", + "resolved": "https://registry.npmjs.org/express-session/-/express-session-1.18.1.tgz", + "integrity": "sha512-a5mtTqEaZvBCL9A9aqkrtfz+3SMDhOVUnjafjo+s7A9Txkq+SVX2DLvSp1Zrv4uCXa3lMSK3viWnh9Gg07PBUA==", + "license": "MIT", "dependencies": { - "cookie": "0.4.2", - "cookie-signature": "1.0.6", + "cookie": "0.7.2", + "cookie-signature": "1.0.7", "debug": "2.6.9", "depd": "~2.0.0", "on-headers": "~1.0.2", @@ -1081,13 +1532,11 @@ "node": ">= 0.8.0" } }, - "node_modules/express-session/node_modules/cookie": { - "version": "0.4.2", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.2.tgz", - "integrity": "sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA==", - "engines": { - "node": ">= 0.6" - } + "node_modules/express-session/node_modules/cookie-signature": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.7.tgz", + "integrity": "sha512-NXdYc3dLr47pBkpUCHtKSwIOQXLVn8dZEuywboCOJY/osA0wFSLlSawr3KN8qXJEyX66FcONTH8EIlVuK0yyFA==", + "license": "MIT" }, "node_modules/express-session/node_modules/debug": { "version": "2.6.9", @@ -1103,9 +1552,10 @@ "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" }, "node_modules/express/node_modules/cookie": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz", - "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==", + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.7.1.tgz", + "integrity": "sha512-6DnInpx7SJ2AK3+CTUE/ZM0vWTUboZCegxhC2xiIydHR9jNuTAASBrfEpHhiGOZw/nX51bHt6YQl8jsGo4y/0w==", + "license": "MIT", "engines": { "node": ">= 0.6" } @@ -1124,10 +1574,12 @@ "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" }, "node_modules/fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", - "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", + "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", "dev": true, + "license": "MIT", + "optional": true, "dependencies": { "to-regex-range": "^5.0.1" }, @@ -1136,12 +1588,13 @@ } }, "node_modules/finalhandler": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz", - "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==", + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.3.1.tgz", + "integrity": "sha512-6BN9trH7bp3qvnrRyzsBz+g3lZxTNZTbVO2EV1CS0WIcDbawYVdYvGflME/9QP0h0pYlCDBCTjYa9nZzMDpyxQ==", + "license": "MIT", "dependencies": { "debug": "2.6.9", - "encodeurl": "~1.0.2", + "encodeurl": "~2.0.0", "escape-html": "~1.0.3", "on-finished": "2.4.1", "parseurl": "~1.3.3", @@ -1156,6 +1609,7 @@ "version": "2.6.9", "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "license": "MIT", "dependencies": { "ms": "2.0.0" } @@ -1163,7 +1617,8 @@ "node_modules/finalhandler/node_modules/ms": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "license": "MIT" }, "node_modules/find-up": { "version": "4.1.0", @@ -1178,15 +1633,16 @@ } }, "node_modules/follow-redirects": { - "version": "1.15.2", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.2.tgz", - "integrity": "sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==", + "version": "1.15.9", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.9.tgz", + "integrity": "sha512-gew4GsXizNgdoRyqmyfMHyAmXsZDk6mHkSxZFCzW9gwlbtOW44CDtYavM+y+72qD/Vq2l550kMF52DT8fOLJqQ==", "funding": [ { "type": "individual", "url": "https://github.com/sponsors/RubenVerborgh" } ], + "license": "MIT", "engines": { "node": ">=4.0" }, @@ -1233,24 +1689,14 @@ "node": ">= 0.6" } }, - "node_modules/fsevents": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", - "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", - "dev": true, - "hasInstallScript": true, - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": "^8.16.0 || ^10.6.0 || >=11.0.0" - } - }, "node_modules/function-bind": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", - "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, "node_modules/function.prototype.name": { "version": "1.1.5", @@ -1288,18 +1734,42 @@ } }, "node_modules/get-intrinsic": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.3.tgz", - "integrity": "sha512-QJVz1Tj7MS099PevUG5jvnt9tSkXN8K14dxQlikJuPt4uD9hHAHjLyLBiLR5zELelBdD9QNRAXZzsJx0WaDL9A==", + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.7.tgz", + "integrity": "sha512-VW6Pxhsrk0KAOqs3WEd0klDiF/+V7gQOpAvY1jVU/LHmaD/kQO4523aiJuikX/QAKYiW6x8Jh+RJej1almdtCA==", + "license": "MIT", "dependencies": { - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.3" + "call-bind-apply-helpers": "^1.0.1", + "es-define-property": "^1.0.1", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", + "function-bind": "^1.1.2", + "get-proto": "^1.0.0", + "gopd": "^1.2.0", + "has-symbols": "^1.1.0", + "hasown": "^2.0.2", + "math-intrinsics": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/get-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz", + "integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==", + "license": "MIT", + "dependencies": { + "dunder-proto": "^1.0.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, "node_modules/get-stream": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", @@ -1327,25 +1797,13 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "dev": true, - "dependencies": { - "is-glob": "^4.0.1" - }, - "engines": { - "node": ">= 6" - } - }, "node_modules/gopd": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", - "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", - "dev": true, - "dependencies": { - "get-intrinsic": "^1.1.3" + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz", + "integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==", + "license": "MIT", + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -1429,9 +1887,10 @@ } }, "node_modules/has-symbols": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", - "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz", + "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==", + "license": "MIT", "engines": { "node": ">= 0.4" }, @@ -1462,6 +1921,18 @@ "minimalistic-assert": "^1.0.1" } }, + "node_modules/hasown": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", + "license": "MIT", + "dependencies": { + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, "node_modules/hosted-git-info": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz", @@ -1520,6 +1991,7 @@ "version": "0.4.24", "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "license": "MIT", "dependencies": { "safer-buffer": ">= 2.1.2 < 3" }, @@ -1528,10 +2000,11 @@ } }, "node_modules/immutable": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.2.1.tgz", - "integrity": "sha512-7WYV7Q5BTs0nlQm7tl92rDYYoyELLKHoDMBKhrxEoiV4mrfVdRz8hzPiYOzH7yWjzoVEamxRuAqhxL2PLRwZYQ==", - "dev": true + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-5.0.3.tgz", + "integrity": "sha512-P8IdPQHq3lA1xVeBRi5VPqUm5HDgKnx0Ru51wZz5mjxHr5n3RWhjIpOFU7ybkUxfB+5IToy+OLaHYDBIWsv+uw==", + "dev": true, + "license": "MIT" }, "node_modules/indent-string": { "version": "4.0.0", @@ -1590,18 +2063,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-binary-path": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", - "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", - "dev": true, - "dependencies": { - "binary-extensions": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/is-boolean-object": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz", @@ -1670,6 +2131,8 @@ "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", "dev": true, + "license": "MIT", + "optional": true, "engines": { "node": ">=0.10.0" } @@ -1687,6 +2150,8 @@ "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", "dev": true, + "license": "MIT", + "optional": true, "dependencies": { "is-extglob": "^2.1.1" }, @@ -1711,6 +2176,8 @@ "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", "dev": true, + "license": "MIT", + "optional": true, "engines": { "node": ">=0.12.0" } @@ -1818,10 +2285,26 @@ "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", "dev": true }, + "node_modules/jdenticon": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/jdenticon/-/jdenticon-3.3.0.tgz", + "integrity": "sha512-DhuBRNRIybGPeAjMjdHbkIfiwZCCmf8ggu7C49jhp6aJ7DYsZfudnvnTY5/1vgUhrGA7JaDAx1WevnpjCPvaGg==", + "license": "MIT", + "dependencies": { + "canvas-renderer": "~2.2.0" + }, + "bin": { + "jdenticon": "bin/jdenticon.js" + }, + "engines": { + "node": ">=6.4.0" + } + }, "node_modules/js-stringify": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/js-stringify/-/js-stringify-1.0.2.tgz", - "integrity": "sha512-rtS5ATOo2Q5k1G+DADISilDA6lv79zIiwFd6CcjuIxGKLFm5C+RLImRscVap9k55i+MOZwgliw+NejvkLuGD5g==" + "integrity": "sha512-rtS5ATOo2Q5k1G+DADISilDA6lv79zIiwFd6CcjuIxGKLFm5C+RLImRscVap9k55i+MOZwgliw+NejvkLuGD5g==", + "license": "MIT" }, "node_modules/js-tokens": { "version": "4.0.0", @@ -1917,12 +2400,14 @@ "node_modules/lodash.camelcase": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz", - "integrity": "sha512-TwuEnCnxbc3rAvhf/LbG7tJUDzhqXyFnv3dtzLOPgCG/hODL7WFnsbwktkD7yUV0RrreP/l1PALq/YSg6VvjlA==" + "integrity": "sha512-TwuEnCnxbc3rAvhf/LbG7tJUDzhqXyFnv3dtzLOPgCG/hODL7WFnsbwktkD7yUV0RrreP/l1PALq/YSg6VvjlA==", + "license": "MIT" }, "node_modules/long": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/long/-/long-4.0.0.tgz", - "integrity": "sha512-XsP+KhQif4bjX1kbuSiySJFNAehNxgLb6hPRGJ9QsUr8ajHkuXGdrHmFUTUUXhDwVX2R5bY4JNZEwbUiMhV+MA==" + "version": "5.2.3", + "resolved": "https://registry.npmjs.org/long/-/long-5.2.3.tgz", + "integrity": "sha512-lcHwpNoggQTObv5apGNCTdJrO69eHOZMi4BNC+rTLER8iHAqGrUVeLh/irVIM7zTw2bOXA8T6uNPeujwOLg/2Q==", + "license": "Apache-2.0" }, "node_modules/lowercase-keys": { "version": "3.0.0", @@ -1957,6 +2442,15 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/math-intrinsics": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz", + "integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==", + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, "node_modules/media-typer": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", @@ -2000,9 +2494,13 @@ } }, "node_modules/merge-descriptors": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", - "integrity": "sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==" + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.3.tgz", + "integrity": "sha512-gaNvAS7TZ897/rVaZ0nMtAyxNyi/pdbjbAwUpFQpN70GqnVfOiXpeUUMKRBmzXaSQ8DdTX4/0ms62r2K+hE6mQ==", + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, "node_modules/methods": { "version": "1.1.2", @@ -2012,10 +2510,26 @@ "node": ">= 0.6" } }, + "node_modules/micromatch": { + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", + "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", + "dev": true, + "license": "MIT", + "optional": true, + "dependencies": { + "braces": "^3.0.3", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, "node_modules/mime": { "version": "1.6.0", "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "license": "MIT", "bin": { "mime": "cli.js" }, @@ -2100,9 +2614,10 @@ } }, "node_modules/moment": { - "version": "2.29.4", - "resolved": "https://registry.npmjs.org/moment/-/moment-2.29.4.tgz", - "integrity": "sha512-5LC9SOxjSc2HF6vO2CyuTDNivEdoz2IvyJJGj6X8DJ0eFyfszE0QiEd+iXmBvUP3WHxSjFH/vIsA0EN00cgr8w==", + "version": "2.30.1", + "resolved": "https://registry.npmjs.org/moment/-/moment-2.30.1.tgz", + "integrity": "sha512-uEmtNhbDOrWPFS+hdjFCBfy9f2YoyzRpwcl+DqpC6taX21FzsTLQVbMV/W7PzNSX6x/bhC1zA3c2UQ5NzH6how==", + "license": "MIT", "engines": { "node": "*" } @@ -2152,9 +2667,10 @@ } }, "node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "license": "MIT" }, "node_modules/negotiator": { "version": "0.6.3", @@ -2170,6 +2686,14 @@ "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==", "dev": true }, + "node_modules/node-addon-api": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-7.1.1.tgz", + "integrity": "sha512-5m3bsyrjFWE1xf7nz7YXdN4udnVtXK6/Yfgn5qnahL6bCkf2yKt4k3nuTKAtT4r3IG8JNR2ncsIMdZuAzJjHQQ==", + "dev": true, + "license": "MIT", + "optional": true + }, "node_modules/normalize-package-data": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz", @@ -2184,15 +2708,6 @@ "node": ">=10" } }, - "node_modules/normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/normalize-url": { "version": "8.0.0", "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-8.0.0.tgz", @@ -2238,9 +2753,13 @@ } }, "node_modules/object-inspect": { - "version": "1.12.2", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.2.tgz", - "integrity": "sha512-z+cPxW0QGUp0mcqcsgQyLVRDoXFQbXOwBaqyF7VIgI4TWNQsDHrBpUQslRmIfAoYWdYzs6UlKJtB2XJpTaNSpQ==", + "version": "1.13.3", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.3.tgz", + "integrity": "sha512-kDCGIbxkDSXE3euJZZXzc6to7fCrKHNI/hSRQnRuQ+BWjFNzZwiFF8fj/6o2t2G9/jTj8PSIYTfCLelLZEeRpA==", + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, "funding": { "url": "https://github.com/sponsors/ljharb" } @@ -2393,9 +2912,10 @@ "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" }, "node_modules/path-to-regexp": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", - "integrity": "sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==" + "version": "0.1.12", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.12.tgz", + "integrity": "sha512-RA1GjUVMnvYFxuqovrEqZoxxW5NUZqbwKtYz/Tt7nXerk0LbLblQmrsgdeOxV5SFHf0UDggjS/bSeOZwt1pmEQ==", + "license": "MIT" }, "node_modules/path-type": { "version": "3.0.0", @@ -2414,6 +2934,8 @@ "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", "dev": true, + "license": "MIT", + "optional": true, "engines": { "node": ">=8.6" }, @@ -2450,6 +2972,22 @@ "node": ">=10.13.0" } }, + "node_modules/prettier": { + "version": "3.4.2", + "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.4.2.tgz", + "integrity": "sha512-e9MewbtFo+Fevyuxn/4rrcDAaq0IYxPGLvObpQjiZBMAzB9IGmzlnG9RZy3FFas+eBMu2vA0CszMeduow5dIuQ==", + "dev": true, + "license": "MIT", + "bin": { + "prettier": "bin/prettier.cjs" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/prettier/prettier?sponsor=1" + } + }, "node_modules/promise": { "version": "7.3.1", "resolved": "https://registry.npmjs.org/promise/-/promise-7.3.1.tgz", @@ -2464,10 +3002,11 @@ "integrity": "sha512-vtK/94akxsTMhe0/cbfpR+syPuszcuwhqVjJq26CuNDgFGj682oRBXOP5MJpv2r7JtE8MsiepGIqvvOTBwn2vA==" }, "node_modules/protobufjs": { - "version": "7.1.2", - "resolved": "https://registry.npmjs.org/protobufjs/-/protobufjs-7.1.2.tgz", - "integrity": "sha512-4ZPTPkXCdel3+L81yw3dG6+Kq3umdWKh7Dc7GW/CpNk4SX3hK58iPCWeCyhVTDrbkNeKrYNZ7EojM5WDaEWTLQ==", + "version": "7.4.0", + "resolved": "https://registry.npmjs.org/protobufjs/-/protobufjs-7.4.0.tgz", + "integrity": "sha512-mRUWCc3KUU4w1jU8sGxICXH/gNS94DvI1gxqDvBzhj1JpcsimQkYiOJfwsPUykUI5ZaspFbSgmBLER8IrQ3tqw==", "hasInstallScript": true, + "license": "BSD-3-Clause", "dependencies": { "@protobufjs/aspromise": "^1.1.2", "@protobufjs/base64": "^1.1.2", @@ -2486,11 +3025,6 @@ "node": ">=12.0.0" } }, - "node_modules/protobufjs/node_modules/long": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/long/-/long-5.2.1.tgz", - "integrity": "sha512-GKSNGeNAtw8IryjjkhZxuKB3JzlcLTwjtiQCHKvqQet81I93kXslhDQruGI/QsddO83mcDToBVy7GqGS/zYf/A==" - }, "node_modules/proxy-addr": { "version": "2.0.7", "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", @@ -2509,11 +3043,12 @@ "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==" }, "node_modules/pug": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/pug/-/pug-3.0.2.tgz", - "integrity": "sha512-bp0I/hiK1D1vChHh6EfDxtndHji55XP/ZJKwsRqrz6lRia6ZC2OZbdAymlxdVFwd1L70ebrVJw4/eZ79skrIaw==", + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/pug/-/pug-3.0.3.tgz", + "integrity": "sha512-uBi6kmc9f3SZ3PXxqcHiUZLmIXgfgWooKWXcwSGwQd2Zi5Rb0bT14+8CJjJgI8AB+nndLaNgHGrcc6bPIB665g==", + "license": "MIT", "dependencies": { - "pug-code-gen": "^3.0.2", + "pug-code-gen": "^3.0.3", "pug-filters": "^4.0.0", "pug-lexer": "^5.0.1", "pug-linker": "^4.0.0", @@ -2527,6 +3062,7 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/pug-attrs/-/pug-attrs-3.0.0.tgz", "integrity": "sha512-azINV9dUtzPMFQktvTXciNAfAuVh/L/JCl0vtPCwvOA21uZrC08K/UnmrL+SXGEVc1FwzjW62+xw5S/uaLj6cA==", + "license": "MIT", "dependencies": { "constantinople": "^4.0.1", "js-stringify": "^1.0.2", @@ -2534,24 +3070,26 @@ } }, "node_modules/pug-code-gen": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/pug-code-gen/-/pug-code-gen-3.0.2.tgz", - "integrity": "sha512-nJMhW16MbiGRiyR4miDTQMRWDgKplnHyeLvioEJYbk1RsPI3FuA3saEP8uwnTb2nTJEKBU90NFVWJBk4OU5qyg==", + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/pug-code-gen/-/pug-code-gen-3.0.3.tgz", + "integrity": "sha512-cYQg0JW0w32Ux+XTeZnBEeuWrAY7/HNE6TWnhiHGnnRYlCgyAUPoyh9KzCMa9WhcJlJ1AtQqpEYHc+vbCzA+Aw==", + "license": "MIT", "dependencies": { "constantinople": "^4.0.1", "doctypes": "^1.1.0", "js-stringify": "^1.0.2", "pug-attrs": "^3.0.0", - "pug-error": "^2.0.0", - "pug-runtime": "^3.0.0", + "pug-error": "^2.1.0", + "pug-runtime": "^3.0.1", "void-elements": "^3.1.0", "with": "^7.0.0" } }, "node_modules/pug-error": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/pug-error/-/pug-error-2.0.0.tgz", - "integrity": "sha512-sjiUsi9M4RAGHktC1drQfCr5C5eriu24Lfbt4s+7SykztEOwVZtbFk1RRq0tzLxcMxMYTBR+zMQaG07J/btayQ==" + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/pug-error/-/pug-error-2.1.0.tgz", + "integrity": "sha512-lv7sU9e5Jk8IeUheHata6/UThZ7RK2jnaaNztxfPYUY+VxZyk/ePVaNZ/vwmH8WqGvDz3LrNYt/+gA55NDg6Pg==", + "license": "MIT" }, "node_modules/pug-filters": { "version": "4.0.0", @@ -2605,7 +3143,8 @@ "node_modules/pug-runtime": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/pug-runtime/-/pug-runtime-3.0.1.tgz", - "integrity": "sha512-L50zbvrQ35TkpHwv0G6aLSuueDRwc/97XdY8kL3tOT0FmhgG7UypU3VztfV/LATAvmUfYi4wNxSajhSAeNN+Kg==" + "integrity": "sha512-L50zbvrQ35TkpHwv0G6aLSuueDRwc/97XdY8kL3tOT0FmhgG7UypU3VztfV/LATAvmUfYi4wNxSajhSAeNN+Kg==", + "license": "MIT" }, "node_modules/pug-strip-comments": { "version": "2.0.0", @@ -2626,12 +3165,12 @@ "integrity": "sha512-rXKDS5Sx3YipVsqmlMJsJsk6jXylEpiHRC2+nJy66fxA5ExYyGa4PqwteW69SaVmAb2OQ18HbYriT7cGQMbduw==" }, "node_modules/qrcode": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/qrcode/-/qrcode-1.5.1.tgz", - "integrity": "sha512-nS8NJ1Z3md8uTjKtP+SGGhfqmTCs5flU/xR623oI0JX+Wepz9R8UrRVCTBTJm3qGw3rH6jJ6MUHjkDx15cxSSg==", + "version": "1.5.4", + "resolved": "https://registry.npmjs.org/qrcode/-/qrcode-1.5.4.tgz", + "integrity": "sha512-1ca71Zgiu6ORjHqFBDpnSMTR2ReToX4l1Au1VFLyVeBTFavzQnv5JxMFr3ukHVKpSrSA2MCk0lNJSykjUfz7Zg==", + "license": "MIT", "dependencies": { "dijkstrajs": "^1.0.1", - "encode-utf8": "^1.0.3", "pngjs": "^5.0.0", "yargs": "^15.3.1" }, @@ -2734,11 +3273,12 @@ } }, "node_modules/qs": { - "version": "6.11.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz", - "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==", + "version": "6.13.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.13.0.tgz", + "integrity": "sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg==", + "license": "BSD-3-Clause", "dependencies": { - "side-channel": "^1.0.4" + "side-channel": "^1.0.6" }, "engines": { "node": ">=0.6" @@ -2767,14 +3307,16 @@ "version": "1.2.1", "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", + "license": "MIT", "engines": { "node": ">= 0.6" } }, "node_modules/raw-body": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.1.tgz", - "integrity": "sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==", + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.2.tgz", + "integrity": "sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==", + "license": "MIT", "dependencies": { "bytes": "3.1.2", "http-errors": "2.0.0", @@ -2928,15 +3470,17 @@ } }, "node_modules/readdirp": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", - "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-4.0.2.tgz", + "integrity": "sha512-yDMz9g+VaZkqBYS/ozoBJwaBhTbZo3UNYQHNRw1D3UFQB8oHB4uS/tAODO+ZLjGWmUbKnIlOWO+aaIiAxrUWHA==", "dev": true, - "dependencies": { - "picomatch": "^2.2.1" - }, + "license": "MIT", "engines": { - "node": ">=8.10.0" + "node": ">= 14.16.0" + }, + "funding": { + "type": "individual", + "url": "https://paulmillr.com/funding/" } }, "node_modules/redent": { @@ -3085,32 +3629,35 @@ "node_modules/safer-buffer": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", + "license": "MIT" }, "node_modules/sass": { - "version": "1.57.1", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.57.1.tgz", - "integrity": "sha512-O2+LwLS79op7GI0xZ8fqzF7X2m/m8WFfI02dHOdsK5R2ECeS5F62zrwg/relM1rjSLy7Vd/DiMNIvPrQGsA0jw==", + "version": "1.83.1", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.83.1.tgz", + "integrity": "sha512-EVJbDaEs4Rr3F0glJzFSOvtg2/oy2V/YrGFPqPY24UqcLDWcI9ZY5sN+qyO3c/QCZwzgfirvhXvINiJCE/OLcA==", "dev": true, + "license": "MIT", "dependencies": { - "chokidar": ">=3.0.0 <4.0.0", - "immutable": "^4.0.0", + "chokidar": "^4.0.0", + "immutable": "^5.0.2", "source-map-js": ">=0.6.2 <2.0.0" }, "bin": { "sass": "sass.js" }, "engines": { - "node": ">=12.0.0" + "node": ">=14.0.0" + }, + "optionalDependencies": { + "@parcel/watcher": "^2.4.1" } }, "node_modules/semver": { - "version": "7.3.8", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", - "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", - "dependencies": { - "lru-cache": "^6.0.0" - }, + "version": "7.6.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", + "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", + "license": "ISC", "bin": { "semver": "bin/semver.js" }, @@ -3119,9 +3666,10 @@ } }, "node_modules/send": { - "version": "0.18.0", - "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", - "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", + "version": "0.19.0", + "resolved": "https://registry.npmjs.org/send/-/send-0.19.0.tgz", + "integrity": "sha512-dW41u5VfLXu8SJh5bwRmyYUbAoSB3c9uQh6L8h/KtsFREPWpbX1lrljJo186Jc4nmci/sGUZ9a0a0J2zgfq2hw==", + "license": "MIT", "dependencies": { "debug": "2.6.9", "depd": "2.0.0", @@ -3145,6 +3693,7 @@ "version": "2.6.9", "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "license": "MIT", "dependencies": { "ms": "2.0.0" } @@ -3152,12 +3701,17 @@ "node_modules/send/node_modules/debug/node_modules/ms": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "license": "MIT" }, - "node_modules/send/node_modules/ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" + "node_modules/send/node_modules/encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", + "license": "MIT", + "engines": { + "node": ">= 0.8" + } }, "node_modules/serve-favicon": { "version": "2.5.0", @@ -3185,14 +3739,15 @@ "integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg==" }, "node_modules/serve-static": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz", - "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==", + "version": "1.16.2", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.16.2.tgz", + "integrity": "sha512-VqpjJZKadQB/PEbEwvFdO43Ax5dFBZ2UECszz8bQ7pi7wt//PWe1P6MN7eCnjsatYtBT6EuiClbjSWP2WrIoTw==", + "license": "MIT", "dependencies": { - "encodeurl": "~1.0.2", + "encodeurl": "~2.0.0", "escape-html": "~1.0.3", "parseurl": "~1.3.3", - "send": "0.18.0" + "send": "0.19.0" }, "engines": { "node": ">= 0.8.0" @@ -3239,26 +3794,86 @@ } }, "node_modules/side-channel": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", - "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.1.0.tgz", + "integrity": "sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==", + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "object-inspect": "^1.13.3", + "side-channel-list": "^1.0.0", + "side-channel-map": "^1.0.1", + "side-channel-weakmap": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-list": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/side-channel-list/-/side-channel-list-1.0.0.tgz", + "integrity": "sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==", + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "object-inspect": "^1.13.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-map": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/side-channel-map/-/side-channel-map-1.0.1.tgz", + "integrity": "sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==", + "license": "MIT", "dependencies": { - "call-bind": "^1.0.0", - "get-intrinsic": "^1.0.2", - "object-inspect": "^1.9.0" + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.5", + "object-inspect": "^1.13.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/side-channel-weakmap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz", + "integrity": "sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==", + "license": "MIT", + "dependencies": { + "call-bound": "^1.0.2", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.5", + "object-inspect": "^1.13.3", + "side-channel-map": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" }, "funding": { "url": "https://github.com/sponsors/ljharb" } }, "node_modules/simple-git": { - "version": "3.15.1", - "resolved": "https://registry.npmjs.org/simple-git/-/simple-git-3.15.1.tgz", - "integrity": "sha512-73MVa5984t/JP4JcQt0oZlKGr42ROYWC3BcUZfuHtT3IHKPspIvL0cZBnvPXF7LL3S/qVeVHVdYYmJ3LOTw4Rg==", + "version": "3.27.0", + "resolved": "https://registry.npmjs.org/simple-git/-/simple-git-3.27.0.tgz", + "integrity": "sha512-ivHoFS9Yi9GY49ogc6/YAi3Fl9ROnF4VyubNylgCkA+RVqLaKWnDSzXOVzya8csELIaWaYNutsEuAhZrtOjozA==", + "license": "MIT", "dependencies": { "@kwsites/file-exists": "^1.1.1", "@kwsites/promise-deferred": "^1.1.1", - "debug": "^4.3.4" + "debug": "^4.3.5" }, "funding": { "type": "github", @@ -3442,6 +4057,8 @@ "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", "dev": true, + "license": "MIT", + "optional": true, "dependencies": { "is-number": "^7.0.0" }, @@ -3519,6 +4136,12 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/undici-types": { + "version": "6.20.0", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.20.0.tgz", + "integrity": "sha512-Ny6QZ2Nju20vw1SRHe3d9jVu6gJ+4e3+MMpqu7pqE5HT6WsTSlce++GQmK5UXS8mzV8DSYHrQH+Xrf2jVcuKNg==", + "license": "MIT" + }, "node_modules/unpipe": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", @@ -3564,6 +4187,7 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/void-elements/-/void-elements-3.1.0.tgz", "integrity": "sha512-Dhxzh5HZuiHQhbvTW9AMetFfBHDMYpo23Uo9btPXgdYP+3T5S+p+jgNy7spra+veYhBP2dCSgxR/i2Y02h5/6w==", + "license": "MIT", "engines": { "node": ">=0.10.0" } @@ -3605,6 +4229,7 @@ "version": "7.0.2", "resolved": "https://registry.npmjs.org/with/-/with-7.0.2.tgz", "integrity": "sha512-RNGKj82nUPg3g5ygxkQl0R937xLyho1J24ItRCBTr/m1YnZkzJy1hUiHUJrc/VlsDQzsCnInEGSg3bci0Lmd4w==", + "license": "MIT", "dependencies": { "@babel/parser": "^7.9.6", "@babel/types": "^7.9.6", @@ -3619,6 +4244,7 @@ "version": "7.0.0", "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "license": "MIT", "dependencies": { "ansi-styles": "^4.0.0", "string-width": "^4.1.0", @@ -3635,6 +4261,7 @@ "version": "4.3.0", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "license": "MIT", "dependencies": { "color-convert": "^2.0.1" }, @@ -3649,6 +4276,7 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "license": "MIT", "dependencies": { "color-name": "~1.1.4" }, @@ -3659,12 +4287,14 @@ "node_modules/wrap-ansi/node_modules/color-name": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "license": "MIT" }, "node_modules/y18n": { "version": "5.0.8", "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", + "license": "ISC", "engines": { "node": ">=10" } @@ -3675,20 +4305,21 @@ "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" }, "node_modules/yargs": { - "version": "16.2.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", - "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", + "version": "17.7.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz", + "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==", + "license": "MIT", "dependencies": { - "cliui": "^7.0.2", + "cliui": "^8.0.1", "escalade": "^3.1.1", "get-caller-file": "^2.0.5", "require-directory": "^2.1.1", - "string-width": "^4.2.0", + "string-width": "^4.2.3", "y18n": "^5.0.5", - "yargs-parser": "^20.2.2" + "yargs-parser": "^21.1.1" }, "engines": { - "node": ">=10" + "node": ">=12" } }, "node_modules/yargs-parser": { @@ -3698,6 +4329,15 @@ "engines": { "node": ">=10" } + }, + "node_modules/yargs/node_modules/yargs-parser": { + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", + "license": "ISC", + "engines": { + "node": ">=12" + } } } } diff --git a/package.json b/package.json index 24addc4..451db8b 100644 --- a/package.json +++ b/package.json @@ -27,37 +27,40 @@ "url": "git+https://github.com/janoside/lndash.git" }, "dependencies": { - "@grpc/proto-loader": "^0.7.4", - "@grpc/grpc-js": "^1.3.7", - "axios": "^1.2.1", - "base64url": "3.0.1", - "body-parser": "^1.19.0", - "bootstrap": "^5.1.3", - "cookie-parser": "^1.4.5", - "crypto-js": "^4.1.1", - "debug": "^4.3.2", - "decimal.js": "^10.3.1", - "dotenv": "^16.0.0", - "express": "^4.17.1", - "express-async-handler": "^1.1.4", - "express-session": "^1.17.2", + "@grpc/grpc-js": "^1.12.5", + "@grpc/proto-loader": "^0.7.13", + "@highlightjs/cdn-assets": "^11.11.1", + "axios": "^1.7.9", + "body-parser": "^1.20.3", + "bootstrap": "^5.3.3", + "cookie-parser": "^1.4.7", + "crypto-js": "^4.2.0", + "debug": "^4.4.0", + "decimal.js": "^10.4.3", + "dotenv": "^16.4.7", + "express": "^4.21.2", + "express-async-handler": "^1.2.0", + "express-session": "^1.18.1", "hash.js": "1.1.7", + "jdenticon": "^3.3.0", "latest-version": "^7.0.0", "meow": "^9.0.0", - "moment": "^2.29.1", + "moment": "^2.30.1", "moment-duration-format": "^2.3.2", "morgan": "^1.10.0", - "pug": "^3.0.2", + "pug": "^3.0.3", "qr-image": "3.2.0", - "qrcode": "^1.4.4", + "qrcode": "^1.5.4", "runes": "0.4.3", - "semver": "^7.3.5", + "semver": "^7.6.3", "serve-favicon": "^2.5.0", - "simple-git": "^3.15.1", + "simple-git": "^3.27.0", "untildify": "^4.0.0" }, "devDependencies": { + "@prettier/plugin-pug": "^3.2.0", "npm-run-all": "^4.1.5", - "sass": "^1.51.0" + "prettier": "^3.4.2", + "sass": "^1.83.1" } } diff --git a/public/css/highlight.min.css b/public/css/highlight.min.css deleted file mode 100644 index 7d8be18..0000000 --- a/public/css/highlight.min.css +++ /dev/null @@ -1 +0,0 @@ -.hljs{display:block;overflow-x:auto;padding:0.5em;background:#F0F0F0}.hljs,.hljs-subst{color:#444}.hljs-comment{color:#888888}.hljs-keyword,.hljs-attribute,.hljs-selector-tag,.hljs-meta-keyword,.hljs-doctag,.hljs-name{font-weight:bold}.hljs-type,.hljs-string,.hljs-number,.hljs-selector-id,.hljs-selector-class,.hljs-quote,.hljs-template-tag,.hljs-deletion{color:#880000}.hljs-title,.hljs-section{color:#880000;font-weight:bold}.hljs-regexp,.hljs-symbol,.hljs-variable,.hljs-template-variable,.hljs-link,.hljs-selector-attr,.hljs-selector-pseudo{color:#BC6060}.hljs-literal{color:#78A960}.hljs-built_in,.hljs-bullet,.hljs-code,.hljs-addition{color:#397300}.hljs-meta{color:#1f7199}.hljs-meta-string{color:#4d99bf}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:bold} \ No newline at end of file diff --git a/public/js/highlight.min.js b/public/js/highlight.min.js deleted file mode 100644 index d79c8b7..0000000 --- a/public/js/highlight.min.js +++ /dev/null @@ -1,3 +0,0 @@ -/*! highlight.js v9.14.2 | BSD3 License | git.io/hljslicense */ -!function(e){var t="object"==typeof window&&window||"object"==typeof self&&self;"undefined"!=typeof exports?e(exports):t&&(t.hljs=e({}),"function"==typeof define&&define.amd&&define([],function(){return t.hljs}))}(function(e){function t(e){return e.replace(/&/g,"&").replace(//g,">")}function r(e){return e.nodeName.toLowerCase()}function a(e,t){var r=e&&e.exec(t);return r&&0===r.index}function n(e){return M.test(e)}function i(e){var t,r,a,i,s=e.className+" ";if(s+=e.parentNode?e.parentNode.className:"",r=B.exec(s))return w(r[1])?r[1]:"no-highlight";for(s=s.split(/\s+/),t=0,a=s.length;a>t;t++)if(i=s[t],n(i)||w(i))return i}function s(e){var t,r={},a=Array.prototype.slice.call(arguments,1);for(t in e)r[t]=e[t];return a.forEach(function(e){for(t in e)r[t]=e[t]}),r}function c(e){var t=[];return function a(e,n){for(var i=e.firstChild;i;i=i.nextSibling)3===i.nodeType?n+=i.nodeValue.length:1===i.nodeType&&(t.push({event:"start",offset:n,node:i}),n=a(i,n),r(i).match(/br|hr|img|input/)||t.push({event:"stop",offset:n,node:i}));return n}(e,0),t}function o(e,a,n){function i(){return e.length&&a.length?e[0].offset!==a[0].offset?e[0].offset"}function c(e){u+=""}function o(e){("start"===e.event?s:c)(e.node)}for(var l=0,u="",d=[];e.length||a.length;){var b=i();if(u+=t(n.substring(l,b[0].offset)),l=b[0].offset,b===e){d.reverse().forEach(c);do o(b.splice(0,1)[0]),b=i();while(b===e&&b.length&&b[0].offset===l);d.reverse().forEach(s)}else"start"===b[0].event?d.push(b[0].node):d.pop(),o(b.splice(0,1)[0])}return u+t(n.substr(l))}function l(e){return e.v&&!e.cached_variants&&(e.cached_variants=e.v.map(function(t){return s(e,{v:null},t)})),e.cached_variants||e.eW&&[s(e)]||[e]}function u(e){function t(e){return e&&e.source||e}function r(r,a){return new RegExp(t(r),"m"+(e.cI?"i":"")+(a?"g":""))}function a(n,i){if(!n.compiled){if(n.compiled=!0,n.k=n.k||n.bK,n.k){var s={},c=function(t,r){e.cI&&(r=r.toLowerCase()),r.split(" ").forEach(function(e){var r=e.split("|");s[r[0]]=[t,r[1]?Number(r[1]):1]})};"string"==typeof n.k?c("keyword",n.k):x(n.k).forEach(function(e){c(e,n.k[e])}),n.k=s}n.lR=r(n.l||/\w+/,!0),i&&(n.bK&&(n.b="\\b("+n.bK.split(" ").join("|")+")\\b"),n.b||(n.b=/\B|\b/),n.bR=r(n.b),n.endSameAsBegin&&(n.e=n.b),n.e||n.eW||(n.e=/\B|\b/),n.e&&(n.eR=r(n.e)),n.tE=t(n.e)||"",n.eW&&i.tE&&(n.tE+=(n.e?"|":"")+i.tE)),n.i&&(n.iR=r(n.i)),null==n.r&&(n.r=1),n.c||(n.c=[]),n.c=Array.prototype.concat.apply([],n.c.map(function(e){return l("self"===e?n:e)})),n.c.forEach(function(e){a(e,n)}),n.starts&&a(n.starts,i);var o=n.c.map(function(e){return e.bK?"\\.?("+e.b+")\\.?":e.b}).concat([n.tE,n.i]).map(t).filter(Boolean);n.t=o.length?r(o.join("|"),!0):{exec:function(){return null}}}}a(e)}function d(e,r,n,i){function s(e){return new RegExp(e.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&"),"m")}function c(e,t){var r,n;for(r=0,n=t.c.length;n>r;r++)if(a(t.c[r].bR,e))return t.c[r].endSameAsBegin&&(t.c[r].eR=s(t.c[r].bR.exec(e)[0])),t.c[r]}function o(e,t){if(a(e.eR,t)){for(;e.endsParent&&e.parent;)e=e.parent;return e}return e.eW?o(e.parent,t):void 0}function l(e,t){return!n&&a(t.iR,e)}function p(e,t){var r=y.cI?t[0].toLowerCase():t[0];return e.k.hasOwnProperty(r)&&e.k[r]}function m(e,t,r,a){var n=a?"":S.classPrefix,i='',i+t+s}function f(){var e,r,a,n;if(!k.k)return t(M);for(n="",r=0,k.lR.lastIndex=0,a=k.lR.exec(M);a;)n+=t(M.substring(r,a.index)),e=p(k,a),e?(B+=e[1],n+=m(e[0],t(a[0]))):n+=t(a[0]),r=k.lR.lastIndex,a=k.lR.exec(M);return n+t(M.substr(r))}function g(){var e="string"==typeof k.sL;if(e&&!E[k.sL])return t(M);var r=e?d(k.sL,M,!0,x[k.sL]):b(M,k.sL.length?k.sL:void 0);return k.r>0&&(B+=r.r),e&&(x[k.sL]=r.top),m(r.language,r.value,!1,!0)}function _(){C+=null!=k.sL?g():f(),M=""}function h(e){C+=e.cN?m(e.cN,"",!0):"",k=Object.create(e,{parent:{value:k}})}function v(e,t){if(M+=e,null==t)return _(),0;var r=c(t,k);if(r)return r.skip?M+=t:(r.eB&&(M+=t),_(),r.rB||r.eB||(M=t)),h(r,t),r.rB?0:t.length;var a=o(k,t);if(a){var n=k;n.skip?M+=t:(n.rE||n.eE||(M+=t),_(),n.eE&&(M=t));do k.cN&&(C+=R),k.skip||k.sL||(B+=k.r),k=k.parent;while(k!==a.parent);return a.starts&&(a.endSameAsBegin&&(a.starts.eR=a.eR),h(a.starts,"")),n.rE?0:t.length}if(l(t,k))throw new Error('Illegal lexeme "'+t+'" for mode "'+(k.cN||"")+'"');return M+=t,t.length||1}var y=w(e);if(!y)throw new Error('Unknown language: "'+e+'"');u(y);var N,k=i||y,x={},C="";for(N=k;N!==y;N=N.parent)N.cN&&(C=m(N.cN,"",!0)+C);var M="",B=0;try{for(var L,A,$=0;;){if(k.t.lastIndex=$,L=k.t.exec(r),!L)break;A=v(r.substring($,L.index),L[0]),$=L.index+A}for(v(r.substr($)),N=k;N.parent;N=N.parent)N.cN&&(C+=R);return{r:B,value:C,language:e,top:k}}catch(I){if(I.message&&-1!==I.message.indexOf("Illegal"))return{r:0,value:t(r)};throw I}}function b(e,r){r=r||S.languages||x(E);var a={r:0,value:t(e)},n=a;return r.filter(w).filter(N).forEach(function(t){var r=d(t,e,!1);r.language=t,r.r>n.r&&(n=r),r.r>a.r&&(n=a,a=r)}),n.language&&(a.second_best=n),a}function p(e){return S.tabReplace||S.useBR?e.replace(L,function(e,t){return S.useBR&&"\n"===e?"
":S.tabReplace?t.replace(/\t/g,S.tabReplace):""}):e}function m(e,t,r){var a=t?C[t]:r,n=[e.trim()];return e.match(/\bhljs\b/)||n.push("hljs"),-1===e.indexOf(a)&&n.push(a),n.join(" ").trim()}function f(e){var t,r,a,s,l,u=i(e);n(u)||(S.useBR?(t=document.createElementNS("http://www.w3.org/1999/xhtml","div"),t.innerHTML=e.innerHTML.replace(/\n/g,"").replace(//g,"\n")):t=e,l=t.textContent,a=u?d(u,l,!0):b(l),r=c(t),r.length&&(s=document.createElementNS("http://www.w3.org/1999/xhtml","div"),s.innerHTML=a.value,a.value=o(r,c(s),l)),a.value=p(a.value),e.innerHTML=a.value,e.className=m(e.className,u,a.language),e.result={language:a.language,re:a.r},a.second_best&&(e.second_best={language:a.second_best.language,re:a.second_best.r}))}function g(e){S=s(S,e)}function _(){if(!_.called){_.called=!0;var e=document.querySelectorAll("pre code");k.forEach.call(e,f)}}function h(){addEventListener("DOMContentLoaded",_,!1),addEventListener("load",_,!1)}function v(t,r){var a=E[t]=r(e);a.aliases&&a.aliases.forEach(function(e){C[e]=t})}function y(){return x(E)}function w(e){return e=(e||"").toLowerCase(),E[e]||E[C[e]]}function N(e){var t=w(e);return t&&!t.disableAutodetect}var k=[],x=Object.keys,E={},C={},M=/^(no-?highlight|plain|text)$/i,B=/\blang(?:uage)?-([\w-]+)\b/i,L=/((^(<[^>]+>|\t|)+|(?:\n)))/gm,R="
",S={classPrefix:"hljs-",tabReplace:null,useBR:!1,languages:void 0};return e.highlight=d,e.highlightAuto=b,e.fixMarkup=p,e.highlightBlock=f,e.configure=g,e.initHighlighting=_,e.initHighlightingOnLoad=h,e.registerLanguage=v,e.listLanguages=y,e.getLanguage=w,e.autoDetection=N,e.inherit=s,e.IR="[a-zA-Z]\\w*",e.UIR="[a-zA-Z_]\\w*",e.NR="\\b\\d+(\\.\\d+)?",e.CNR="(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",e.BNR="\\b(0b[01]+)",e.RSR="!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~",e.BE={b:"\\\\[\\s\\S]",r:0},e.ASM={cN:"string",b:"'",e:"'",i:"\\n",c:[e.BE]},e.QSM={cN:"string",b:'"',e:'"',i:"\\n",c:[e.BE]},e.PWM={b:/\b(a|an|the|are|I'm|isn't|don't|doesn't|won't|but|just|should|pretty|simply|enough|gonna|going|wtf|so|such|will|you|your|they|like|more)\b/},e.C=function(t,r,a){var n=e.inherit({cN:"comment",b:t,e:r,c:[]},a||{});return n.c.push(e.PWM),n.c.push({cN:"doctag",b:"(?:TODO|FIXME|NOTE|BUG|XXX):",r:0}),n},e.CLCM=e.C("//","$"),e.CBCM=e.C("/\\*","\\*/"),e.HCM=e.C("#","$"),e.NM={cN:"number",b:e.NR,r:0},e.CNM={cN:"number",b:e.CNR,r:0},e.BNM={cN:"number",b:e.BNR,r:0},e.CSSNM={cN:"number",b:e.NR+"(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?",r:0},e.RM={cN:"regexp",b:/\//,e:/\/[gimuy]*/,i:/\n/,c:[e.BE,{b:/\[/,e:/\]/,r:0,c:[e.BE]}]},e.TM={cN:"title",b:e.IR,r:0},e.UTM={cN:"title",b:e.UIR,r:0},e.METHOD_GUARD={b:"\\.\\s*"+e.UIR,r:0},e.registerLanguage("apache",function(e){var t={cN:"number",b:"[\\$%]\\d+"};return{aliases:["apacheconf"],cI:!0,c:[e.HCM,{cN:"section",b:""},{cN:"attribute",b:/\w+/,r:0,k:{nomarkup:"order deny allow setenv rewriterule rewriteengine rewritecond documentroot sethandler errordocument loadmodule options header listen serverroot servername"},starts:{e:/$/,r:0,k:{literal:"on off all"},c:[{cN:"meta",b:"\\s\\[",e:"\\]$"},{cN:"variable",b:"[\\$%]\\{",e:"\\}",c:["self",t]},t,e.QSM]}}],i:/\S/}}),e.registerLanguage("bash",function(e){var t={cN:"variable",v:[{b:/\$[\w\d#@][\w\d_]*/},{b:/\$\{(.*?)}/}]},r={cN:"string",b:/"/,e:/"/,c:[e.BE,t,{cN:"variable",b:/\$\(/,e:/\)/,c:[e.BE]}]},a={cN:"string",b:/'/,e:/'/};return{aliases:["sh","zsh"],l:/\b-?[a-z\._]+\b/,k:{keyword:"if then else elif fi for while in do done case esac function",literal:"true false",built_in:"break cd continue eval exec exit export getopts hash pwd readonly return shift test times trap umask unset alias bind builtin caller command declare echo enable help let local logout mapfile printf read readarray source type typeset ulimit unalias set shopt autoload bg bindkey bye cap chdir clone comparguments compcall compctl compdescribe compfiles compgroups compquote comptags comptry compvalues dirs disable disown echotc echoti emulate fc fg float functions getcap getln history integer jobs kill limit log noglob popd print pushd pushln rehash sched setcap setopt stat suspend ttyctl unfunction unhash unlimit unsetopt vared wait whence where which zcompile zformat zftp zle zmodload zparseopts zprof zpty zregexparse zsocket zstyle ztcp",_:"-ne -eq -lt -gt -f -d -e -s -l -a"},c:[{cN:"meta",b:/^#![^\n]+sh\s*$/,r:10},{cN:"function",b:/\w[\w\d_]*\s*\(\s*\)\s*\{/,rB:!0,c:[e.inherit(e.TM,{b:/\w[\w\d_]*/})],r:0},e.HCM,r,a,t]}}),e.registerLanguage("coffeescript",function(e){var t={keyword:"in if for while finally new do return else break catch instanceof throw try this switch continue typeof delete debugger super yield import export from as default await then unless until loop of by when and or is isnt not",literal:"true false null undefined yes no on off",built_in:"npm require console print module global window document"},r="[A-Za-z$_][0-9A-Za-z$_]*",a={cN:"subst",b:/#\{/,e:/}/,k:t},n=[e.BNM,e.inherit(e.CNM,{starts:{e:"(\\s*/)?",r:0}}),{cN:"string",v:[{b:/'''/,e:/'''/,c:[e.BE]},{b:/'/,e:/'/,c:[e.BE]},{b:/"""/,e:/"""/,c:[e.BE,a]},{b:/"/,e:/"/,c:[e.BE,a]}]},{cN:"regexp",v:[{b:"///",e:"///",c:[a,e.HCM]},{b:"//[gim]*",r:0},{b:/\/(?![ *])(\\\/|.)*?\/[gim]*(?=\W|$)/}]},{b:"@"+r},{sL:"javascript",eB:!0,eE:!0,v:[{b:"```",e:"```"},{b:"`",e:"`"}]}];a.c=n;var i=e.inherit(e.TM,{b:r}),s="(\\(.*\\))?\\s*\\B[-=]>",c={cN:"params",b:"\\([^\\(]",rB:!0,c:[{b:/\(/,e:/\)/,k:t,c:["self"].concat(n)}]};return{aliases:["coffee","cson","iced"],k:t,i:/\/\*/,c:n.concat([e.C("###","###"),e.HCM,{cN:"function",b:"^\\s*"+r+"\\s*=\\s*"+s,e:"[-=]>",rB:!0,c:[i,c]},{b:/[:\(,=]\s*/,r:0,c:[{cN:"function",b:s,e:"[-=]>",rB:!0,c:[c]}]},{cN:"class",bK:"class",e:"$",i:/[:="\[\]]/,c:[{bK:"extends",eW:!0,i:/[:="\[\]]/,c:[i]},i]},{b:r+":",e:":",rB:!0,rE:!0,r:0}])}}),e.registerLanguage("cpp",function(e){var t={cN:"keyword",b:"\\b[a-z\\d_]*_t\\b"},r={cN:"string",v:[{b:'(u8?|U|L)?"',e:'"',i:"\\n",c:[e.BE]},{b:'(u8?|U|L)?R"\\(',e:'\\)"'},{b:"'\\\\?.",e:"'",i:"."}]},a={cN:"number",v:[{b:"\\b(0b[01']+)"},{b:"(-?)\\b([\\d']+(\\.[\\d']*)?|\\.[\\d']+)(u|U|l|L|ul|UL|f|F|b|B)"},{b:"(-?)(\\b0[xX][a-fA-F0-9']+|(\\b[\\d']+(\\.[\\d']*)?|\\.[\\d']+)([eE][-+]?[\\d']+)?)"}],r:0},n={cN:"meta",b:/#\s*[a-z]+\b/,e:/$/,k:{"meta-keyword":"if else elif endif define undef warning error line pragma ifdef ifndef include"},c:[{b:/\\\n/,r:0},e.inherit(r,{cN:"meta-string"}),{cN:"meta-string",b:/<[^\n>]*>/,e:/$/,i:"\\n"},e.CLCM,e.CBCM]},i=e.IR+"\\s*\\(",s={keyword:"int float while private char catch import module export virtual operator sizeof dynamic_cast|10 typedef const_cast|10 const for static_cast|10 union namespace unsigned long volatile static protected bool template mutable if public friend do goto auto void enum else break extern using asm case typeid short reinterpret_cast|10 default double register explicit signed typename try this switch continue inline delete alignof constexpr decltype noexcept static_assert thread_local restrict _Bool complex _Complex _Imaginary atomic_bool atomic_char atomic_schar atomic_uchar atomic_short atomic_ushort atomic_int atomic_uint atomic_long atomic_ulong atomic_llong atomic_ullong new throw return and or not",built_in:"std string cin cout cerr clog stdin stdout stderr stringstream istringstream ostringstream auto_ptr deque list queue stack vector map set bitset multiset multimap unordered_set unordered_map unordered_multiset unordered_multimap array shared_ptr abort abs acos asin atan2 atan calloc ceil cosh cos exit exp fabs floor fmod fprintf fputs free frexp fscanf isalnum isalpha iscntrl isdigit isgraph islower isprint ispunct isspace isupper isxdigit tolower toupper labs ldexp log10 log malloc realloc memchr memcmp memcpy memset modf pow printf putchar puts scanf sinh sin snprintf sprintf sqrt sscanf strcat strchr strcmp strcpy strcspn strlen strncat strncmp strncpy strpbrk strrchr strspn strstr tanh tan vfprintf vprintf vsprintf endl initializer_list unique_ptr",literal:"true false nullptr NULL"},c=[t,e.CLCM,e.CBCM,a,r];return{aliases:["c","cc","h","c++","h++","hpp"],k:s,i:"",k:s,c:["self",t]},{b:e.IR+"::",k:s},{v:[{b:/=/,e:/;/},{b:/\(/,e:/\)/},{bK:"new throw return else",e:/;/}],k:s,c:c.concat([{b:/\(/,e:/\)/,k:s,c:c.concat(["self"]),r:0}]),r:0},{cN:"function",b:"("+e.IR+"[\\*&\\s]+)+"+i,rB:!0,e:/[{;=]/,eE:!0,k:s,i:/[^\w\s\*&]/,c:[{b:i,rB:!0,c:[e.TM],r:0},{cN:"params",b:/\(/,e:/\)/,k:s,r:0,c:[e.CLCM,e.CBCM,r,a,t,{b:/\(/,e:/\)/,k:s,r:0,c:["self",e.CLCM,e.CBCM,r,a,t]}]},e.CLCM,e.CBCM,n]},{cN:"class",bK:"class struct",e:/[{;:]/,c:[{b://,c:["self"]},e.TM]}]),exports:{preprocessor:n,strings:r,k:s}}}),e.registerLanguage("cs",function(e){var t={keyword:"abstract as base bool break byte case catch char checked const continue decimal default delegate do double enum event explicit extern finally fixed float for foreach goto if implicit in int interface internal is lock long nameof object operator out override params private protected public readonly ref sbyte sealed short sizeof stackalloc static string struct switch this try typeof uint ulong unchecked unsafe ushort using virtual void volatile while add alias ascending async await by descending dynamic equals from get global group into join let on orderby partial remove select set value var where yield",literal:"null false true"},r={cN:"number",v:[{b:"\\b(0b[01']+)"},{b:"(-?)\\b([\\d']+(\\.[\\d']*)?|\\.[\\d']+)(u|U|l|L|ul|UL|f|F|b|B)"},{b:"(-?)(\\b0[xX][a-fA-F0-9']+|(\\b[\\d']+(\\.[\\d']*)?|\\.[\\d']+)([eE][-+]?[\\d']+)?)"}],r:0},a={cN:"string",b:'@"',e:'"',c:[{b:'""'}]},n=e.inherit(a,{i:/\n/}),i={cN:"subst",b:"{",e:"}",k:t},s=e.inherit(i,{i:/\n/}),c={cN:"string",b:/\$"/,e:'"',i:/\n/,c:[{b:"{{"},{b:"}}"},e.BE,s]},o={cN:"string",b:/\$@"/,e:'"',c:[{b:"{{"},{b:"}}"},{b:'""'},i]},l=e.inherit(o,{i:/\n/,c:[{b:"{{"},{b:"}}"},{b:'""'},s]});i.c=[o,c,a,e.ASM,e.QSM,r,e.CBCM],s.c=[l,c,n,e.ASM,e.QSM,r,e.inherit(e.CBCM,{i:/\n/})];var u={v:[o,c,a,e.ASM,e.QSM]},d=e.IR+"(<"+e.IR+"(\\s*,\\s*"+e.IR+")*>)?(\\[\\])?";return{aliases:["csharp","c#"],k:t,i:/::/,c:[e.C("///","$",{rB:!0,c:[{cN:"doctag",v:[{b:"///",r:0},{b:""},{b:""}]}]}),e.CLCM,e.CBCM,{cN:"meta",b:"#",e:"$",k:{"meta-keyword":"if else elif endif define undef warning error line region endregion pragma checksum"}},u,r,{bK:"class interface",e:/[{;=]/,i:/[^\s:,]/,c:[e.TM,e.CLCM,e.CBCM]},{bK:"namespace",e:/[{;=]/,i:/[^\s:]/,c:[e.inherit(e.TM,{b:"[a-zA-Z](\\.?\\w)*"}),e.CLCM,e.CBCM]},{cN:"meta",b:"^\\s*\\[",eB:!0,e:"\\]",eE:!0,c:[{cN:"meta-string",b:/"/,e:/"/}]},{bK:"new return throw await else",r:0},{cN:"function",b:"("+d+"\\s+)+"+e.IR+"\\s*\\(",rB:!0,e:/\s*[{;=]/,eE:!0,k:t,c:[{b:e.IR+"\\s*\\(",rB:!0,c:[e.TM],r:0},{cN:"params",b:/\(/,e:/\)/,eB:!0,eE:!0,k:t,r:0,c:[u,r,e.CBCM]},e.CLCM,e.CBCM]}]}}),e.registerLanguage("css",function(e){var t="[a-zA-Z-][a-zA-Z0-9_-]*",r={b:/[A-Z\_\.\-]+\s*:/,rB:!0,e:";",eW:!0,c:[{cN:"attribute",b:/\S/,e:":",eE:!0,starts:{eW:!0,eE:!0,c:[{b:/[\w-]+\(/,rB:!0,c:[{cN:"built_in",b:/[\w-]+/},{b:/\(/,e:/\)/,c:[e.ASM,e.QSM]}]},e.CSSNM,e.QSM,e.ASM,e.CBCM,{cN:"number",b:"#[0-9A-Fa-f]+"},{cN:"meta",b:"!important"}]}}]};return{cI:!0,i:/[=\/|'\$]/,c:[e.CBCM,{cN:"selector-id",b:/#[A-Za-z0-9_-]+/},{cN:"selector-class",b:/\.[A-Za-z0-9_-]+/},{cN:"selector-attr",b:/\[/,e:/\]/,i:"$"},{cN:"selector-pseudo",b:/:(:)?[a-zA-Z0-9\_\-\+\(\)"'.]+/},{b:"@(font-face|page)",l:"[a-z-]+",k:"font-face page"},{b:"@",e:"[{;]",i:/:/,c:[{cN:"keyword",b:/\w+/},{b:/\s/,eW:!0,eE:!0,r:0,c:[e.ASM,e.QSM,e.CSSNM]}]},{cN:"selector-tag",b:t,r:0},{b:"{",e:"}",i:/\S/,c:[e.CBCM,r]}]}}),e.registerLanguage("diff",function(e){return{aliases:["patch"],c:[{cN:"meta",r:10,v:[{b:/^@@ +\-\d+,\d+ +\+\d+,\d+ +@@$/},{b:/^\*\*\* +\d+,\d+ +\*\*\*\*$/},{b:/^\-\-\- +\d+,\d+ +\-\-\-\-$/}]},{cN:"comment",v:[{b:/Index: /,e:/$/},{b:/={3,}/,e:/$/},{b:/^\-{3}/,e:/$/},{b:/^\*{3} /,e:/$/},{b:/^\+{3}/,e:/$/},{b:/\*{5}/,e:/\*{5}$/}]},{cN:"addition",b:"^\\+",e:"$"},{cN:"deletion",b:"^\\-",e:"$"},{cN:"addition",b:"^\\!",e:"$"}]}}),e.registerLanguage("http",function(e){var t="HTTP/[0-9\\.]+";return{aliases:["https"],i:"\\S",c:[{b:"^"+t,e:"$",c:[{cN:"number",b:"\\b\\d{3}\\b"}]},{b:"^[A-Z]+ (.*?) "+t+"$",rB:!0,e:"$",c:[{cN:"string",b:" ",e:" ",eB:!0,eE:!0},{b:t},{cN:"keyword",b:"[A-Z]+"}]},{cN:"attribute",b:"^\\w",e:": ",eE:!0,i:"\\n|\\s|=",starts:{e:"$",r:0}},{b:"\\n\\n",starts:{sL:[],eW:!0}}]}}),e.registerLanguage("ini",function(e){var t={cN:"string",c:[e.BE],v:[{b:"'''",e:"'''",r:10},{b:'"""',e:'"""',r:10},{b:'"',e:'"'},{b:"'",e:"'"}]};return{aliases:["toml"],cI:!0,i:/\S/,c:[e.C(";","$"),e.HCM,{cN:"section",b:/^\s*\[+/,e:/\]+/},{b:/^[a-z0-9\[\]_-]+\s*=\s*/,e:"$",rB:!0,c:[{cN:"attr",b:/[a-z0-9\[\]_-]+/},{b:/=/,eW:!0,r:0,c:[{cN:"literal",b:/\bon|off|true|false|yes|no\b/},{cN:"variable",v:[{b:/\$[\w\d"][\w\d_]*/},{b:/\$\{(.*?)}/}]},t,{cN:"number",b:/([\+\-]+)?[\d]+_[\d_]+/},e.NM]}]}]}}),e.registerLanguage("java",function(e){var t="[À-ʸa-zA-Z_$][À-ʸa-zA-Z_$0-9]*",r=t+"(<"+t+"(\\s*,\\s*"+t+")*>)?",a="false synchronized int abstract float private char boolean var static null if const for true while long strictfp finally protected import native final void enum else break transient catch instanceof byte super volatile case assert short package default double public try this switch continue throws protected public private module requires exports do",n="\\b(0[bB]([01]+[01_]+[01]+|[01]+)|0[xX]([a-fA-F0-9]+[a-fA-F0-9_]+[a-fA-F0-9]+|[a-fA-F0-9]+)|(([\\d]+[\\d_]+[\\d]+|[\\d]+)(\\.([\\d]+[\\d_]+[\\d]+|[\\d]+))?|\\.([\\d]+[\\d_]+[\\d]+|[\\d]+))([eE][-+]?\\d+)?)[lLfF]?",i={cN:"number",b:n,r:0};return{aliases:["jsp"],k:a,i:/<\/|#/,c:[e.C("/\\*\\*","\\*/",{r:0,c:[{b:/\w+@/,r:0},{cN:"doctag",b:"@[A-Za-z]+"}]}),e.CLCM,e.CBCM,e.ASM,e.QSM,{cN:"class",bK:"class interface",e:/[{;=]/,eE:!0,k:"class interface",i:/[:"\[\]]/,c:[{bK:"extends implements"},e.UTM]},{bK:"new throw return else",r:0},{cN:"function",b:"("+r+"\\s+)+"+e.UIR+"\\s*\\(",rB:!0,e:/[{;=]/,eE:!0,k:a,c:[{b:e.UIR+"\\s*\\(",rB:!0,r:0,c:[e.UTM]},{cN:"params",b:/\(/,e:/\)/,k:a,r:0,c:[e.ASM,e.QSM,e.CNM,e.CBCM]},e.CLCM,e.CBCM]},i,{cN:"meta",b:"@[A-Za-z]+"}]}}),e.registerLanguage("javascript",function(e){var t="[A-Za-z$_][0-9A-Za-z$_]*",r={keyword:"in of if for while finally var new function do return void else break catch instanceof with throw case default try this switch continue typeof delete let yield const export super debugger as async await static import from as",literal:"true false null undefined NaN Infinity",built_in:"eval isFinite isNaN parseFloat parseInt decodeURI decodeURIComponent encodeURI encodeURIComponent escape unescape Object Function Boolean Error EvalError InternalError RangeError ReferenceError StopIteration SyntaxError TypeError URIError Number Math Date String RegExp Array Float32Array Float64Array Int16Array Int32Array Int8Array Uint16Array Uint32Array Uint8Array Uint8ClampedArray ArrayBuffer DataView JSON Intl arguments require module console window document Symbol Set Map WeakSet WeakMap Proxy Reflect Promise"},a={cN:"number",v:[{b:"\\b(0[bB][01]+)"},{b:"\\b(0[oO][0-7]+)"},{b:e.CNR}],r:0},n={cN:"subst",b:"\\$\\{",e:"\\}",k:r,c:[]},i={cN:"string",b:"`",e:"`",c:[e.BE,n]};n.c=[e.ASM,e.QSM,i,a,e.RM];var s=n.c.concat([e.CBCM,e.CLCM]);return{aliases:["js","jsx"],k:r,c:[{cN:"meta",r:10,b:/^\s*['"]use (strict|asm)['"]/},{cN:"meta",b:/^#!/,e:/$/},e.ASM,e.QSM,i,e.CLCM,e.CBCM,a,{b:/[{,]\s*/,r:0,c:[{b:t+"\\s*:",rB:!0,r:0,c:[{cN:"attr",b:t,r:0}]}]},{b:"("+e.RSR+"|\\b(case|return|throw)\\b)\\s*",k:"return throw case",c:[e.CLCM,e.CBCM,e.RM,{cN:"function",b:"(\\(.*?\\)|"+t+")\\s*=>",rB:!0,e:"\\s*=>",c:[{cN:"params",v:[{b:t},{b:/\(\s*\)/},{b:/\(/,e:/\)/,eB:!0,eE:!0,k:r,c:s}]}]},{b://,sL:"xml",c:[{b:/<\w+\s*\/>/,skip:!0},{b:/<\w+/,e:/(\/\w+|\w+\/)>/,skip:!0,c:[{b:/<\w+\s*\/>/,skip:!0},"self"]}]}],r:0},{cN:"function",bK:"function",e:/\{/,eE:!0,c:[e.inherit(e.TM,{b:t}),{cN:"params",b:/\(/,e:/\)/,eB:!0,eE:!0,c:s}],i:/\[|%/},{b:/\$[(.]/},e.METHOD_GUARD,{cN:"class",bK:"class",e:/[{;=]/,eE:!0,i:/[:"\[\]]/,c:[{bK:"extends"},e.UTM]},{bK:"constructor get set",e:/\{/,eE:!0}],i:/#(?!!)/}}),e.registerLanguage("json",function(e){var t={literal:"true false null"},r=[e.QSM,e.CNM],a={e:",",eW:!0,eE:!0,c:r,k:t},n={b:"{",e:"}",c:[{cN:"attr",b:/"/,e:/"/,c:[e.BE],i:"\\n"},e.inherit(a,{b:/:/})],i:"\\S"},i={b:"\\[",e:"\\]",c:[e.inherit(a)],i:"\\S"};return r.splice(r.length,0,n,i),{c:r,k:t,i:"\\S"}}),e.registerLanguage("makefile",function(e){var t={cN:"variable",v:[{b:"\\$\\("+e.UIR+"\\)",c:[e.BE]},{b:/\$[@%`]+/}]}]}]};return{aliases:["html","xhtml","rss","atom","xjb","xsd","xsl","plist"],cI:!0,c:[{cN:"meta",b:"",r:10,c:[{b:"\\[",e:"\\]"}]},e.C("",{r:10}),{b:"<\\!\\[CDATA\\[",e:"\\]\\]>",r:10},{cN:"meta",b:/<\?xml/,e:/\?>/,r:10},{b:/<\?(php)?/,e:/\?>/,sL:"php",c:[{b:"/\\*",e:"\\*/",skip:!0},{b:'b"',e:'"',skip:!0},{b:"b'",e:"'",skip:!0},e.inherit(e.ASM,{i:null,cN:null,c:null,skip:!0}),e.inherit(e.QSM,{i:null,cN:null,c:null,skip:!0})]},{cN:"tag",b:"|$)",e:">",k:{name:"style"},c:[r],starts:{e:"",rE:!0,sL:["css","xml"]}},{cN:"tag",b:"|$)",e:">",k:{name:"script"},c:[r],starts:{e:"",rE:!0,sL:["actionscript","javascript","handlebars","xml"]}},{cN:"tag",b:"",c:[{cN:"name",b:/[^\/><\s]+/,r:0},r]}]}}),e.registerLanguage("markdown",function(e){return{aliases:["md","mkdown","mkd"],c:[{cN:"section",v:[{b:"^#{1,6}",e:"$"},{b:"^.+?\\n[=-]{2,}$"}]},{b:"<",e:">",sL:"xml",r:0},{cN:"bullet",b:"^([*+-]|(\\d+\\.))\\s+"},{cN:"strong",b:"[*_]{2}.+?[*_]{2}"},{cN:"emphasis",v:[{b:"\\*.+?\\*"},{b:"_.+?_",r:0}]},{cN:"quote",b:"^>\\s+",e:"$"},{cN:"code",v:[{b:"^```w*s*$",e:"^```s*$"},{b:"`.+?`"},{b:"^( {4}| )",e:"$",r:0}]},{b:"^[-\\*]{3,}",e:"$"},{b:"\\[.+?\\][\\(\\[].*?[\\)\\]]",rB:!0,c:[{cN:"string",b:"\\[",e:"\\]",eB:!0,rE:!0,r:0},{cN:"link",b:"\\]\\(",e:"\\)",eB:!0,eE:!0},{cN:"symbol",b:"\\]\\[",e:"\\]",eB:!0,eE:!0}],r:10},{b:/^\[[^\n]+\]:/,rB:!0,c:[{cN:"symbol",b:/\[/,e:/\]/,eB:!0,eE:!0},{cN:"link",b:/:\s*/,e:/$/,eB:!0}]}]}}),e.registerLanguage("nginx",function(e){var t={cN:"variable",v:[{b:/\$\d+/},{b:/\$\{/,e:/}/},{b:"[\\$\\@]"+e.UIR}]},r={eW:!0,l:"[a-z/_]+",k:{literal:"on off yes no true false none blocked debug info notice warn error crit select break last permanent redirect kqueue rtsig epoll poll /dev/poll"},r:0,i:"=>",c:[e.HCM,{cN:"string",c:[e.BE,t],v:[{b:/"/,e:/"/},{b:/'/,e:/'/}]},{b:"([a-z]+):/",e:"\\s",eW:!0,eE:!0,c:[t]},{cN:"regexp",c:[e.BE,t],v:[{b:"\\s\\^",e:"\\s|{|;",rE:!0},{b:"~\\*?\\s+",e:"\\s|{|;",rE:!0},{b:"\\*(\\.[a-z\\-]+)+"},{b:"([a-z\\-]+\\.)+\\*"}]},{cN:"number",b:"\\b\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}(:\\d{1,5})?\\b"},{cN:"number",b:"\\b\\d+[kKmMgGdshdwy]*\\b",r:0},t]};return{aliases:["nginxconf"],c:[e.HCM,{b:e.UIR+"\\s+{",rB:!0,e:"{",c:[{cN:"section",b:e.UIR}],r:0},{b:e.UIR+"\\s",e:";|{",rB:!0,c:[{cN:"attribute",b:e.UIR,starts:r}],r:0}],i:"[^\\s\\}]"}}),e.registerLanguage("objectivec",function(e){var t={cN:"built_in",b:"\\b(AV|CA|CF|CG|CI|CL|CM|CN|CT|MK|MP|MTK|MTL|NS|SCN|SK|UI|WK|XC)\\w+"},r={keyword:"int float while char export sizeof typedef const struct for union unsigned long volatile static bool mutable if do return goto void enum else break extern asm case short default double register explicit signed typename this switch continue wchar_t inline readonly assign readwrite self @synchronized id typeof nonatomic super unichar IBOutlet IBAction strong weak copy in out inout bycopy byref oneway __strong __weak __block __autoreleasing @private @protected @public @try @property @end @throw @catch @finally @autoreleasepool @synthesize @dynamic @selector @optional @required @encode @package @import @defs @compatibility_alias __bridge __bridge_transfer __bridge_retained __bridge_retain __covariant __contravariant __kindof _Nonnull _Nullable _Null_unspecified __FUNCTION__ __PRETTY_FUNCTION__ __attribute__ getter setter retain unsafe_unretained nonnull nullable null_unspecified null_resettable class instancetype NS_DESIGNATED_INITIALIZER NS_UNAVAILABLE NS_REQUIRES_SUPER NS_RETURNS_INNER_POINTER NS_INLINE NS_AVAILABLE NS_DEPRECATED NS_ENUM NS_OPTIONS NS_SWIFT_UNAVAILABLE NS_ASSUME_NONNULL_BEGIN NS_ASSUME_NONNULL_END NS_REFINED_FOR_SWIFT NS_SWIFT_NAME NS_SWIFT_NOTHROW NS_DURING NS_HANDLER NS_ENDHANDLER NS_VALUERETURN NS_VOIDRETURN",literal:"false true FALSE TRUE nil YES NO NULL",built_in:"BOOL dispatch_once_t dispatch_queue_t dispatch_sync dispatch_async dispatch_once"},a=/[a-zA-Z@][a-zA-Z0-9_]*/,n="@interface @class @protocol @implementation";return{aliases:["mm","objc","obj-c"],k:r,l:a,i:""}]}]},{cN:"class",b:"("+n.split(" ").join("|")+")\\b",e:"({|$)",eE:!0,k:n,l:a,c:[e.UTM]},{b:"\\."+e.UIR,r:0}]}}),e.registerLanguage("perl",function(e){var t="getpwent getservent quotemeta msgrcv scalar kill dbmclose undef lc ma syswrite tr send umask sysopen shmwrite vec qx utime local oct semctl localtime readpipe do return format read sprintf dbmopen pop getpgrp not getpwnam rewinddir qqfileno qw endprotoent wait sethostent bless s|0 opendir continue each sleep endgrent shutdown dump chomp connect getsockname die socketpair close flock exists index shmgetsub for endpwent redo lstat msgctl setpgrp abs exit select print ref gethostbyaddr unshift fcntl syscall goto getnetbyaddr join gmtime symlink semget splice x|0 getpeername recv log setsockopt cos last reverse gethostbyname getgrnam study formline endhostent times chop length gethostent getnetent pack getprotoent getservbyname rand mkdir pos chmod y|0 substr endnetent printf next open msgsnd readdir use unlink getsockopt getpriority rindex wantarray hex system getservbyport endservent int chr untie rmdir prototype tell listen fork shmread ucfirst setprotoent else sysseek link getgrgid shmctl waitpid unpack getnetbyname reset chdir grep split require caller lcfirst until warn while values shift telldir getpwuid my getprotobynumber delete and sort uc defined srand accept package seekdir getprotobyname semop our rename seek if q|0 chroot sysread setpwent no crypt getc chown sqrt write setnetent setpriority foreach tie sin msgget map stat getlogin unless elsif truncate exec keys glob tied closedirioctl socket readlink eval xor readline binmode setservent eof ord bind alarm pipe atan2 getgrent exp time push setgrent gt lt or ne m|0 break given say state when",r={cN:"subst",b:"[$@]\\{",e:"\\}",k:t},a={b:"->{",e:"}"},n={v:[{b:/\$\d/},{b:/[\$%@](\^\w\b|#\w+(::\w+)*|{\w+}|\w+(::\w*)*)/},{b:/[\$%@][^\s\w{]/,r:0}]},i=[e.BE,r,n],s=[n,e.HCM,e.C("^\\=\\w","\\=cut",{eW:!0}),a,{cN:"string",c:i,v:[{b:"q[qwxr]?\\s*\\(",e:"\\)",r:5},{b:"q[qwxr]?\\s*\\[",e:"\\]",r:5},{b:"q[qwxr]?\\s*\\{",e:"\\}",r:5},{b:"q[qwxr]?\\s*\\|",e:"\\|",r:5},{b:"q[qwxr]?\\s*\\<",e:"\\>",r:5},{b:"qw\\s+q",e:"q",r:5},{b:"'",e:"'",c:[e.BE]},{b:'"',e:'"'},{b:"`",e:"`",c:[e.BE]},{b:"{\\w+}",c:[],r:0},{b:"-?\\w+\\s*\\=\\>",c:[],r:0}]},{cN:"number",b:"(\\b0[0-7_]+)|(\\b0x[0-9a-fA-F_]+)|(\\b[1-9][0-9_]*(\\.[0-9_]+)?)|[0_]\\b",r:0},{b:"(\\/\\/|"+e.RSR+"|\\b(split|return|print|reverse|grep)\\b)\\s*",k:"split return print reverse grep",r:0,c:[e.HCM,{cN:"regexp",b:"(s|tr|y)/(\\\\.|[^/])*/(\\\\.|[^/])*/[a-z]*",r:10},{cN:"regexp",b:"(m|qr)?/",e:"/[a-z]*",c:[e.BE],r:0}]},{cN:"function",bK:"sub",e:"(\\s*\\(.*?\\))?[;{]",eE:!0,r:5,c:[e.TM]},{b:"-\\w\\b",r:0},{b:"^__DATA__$",e:"^__END__$",sL:"mojolicious",c:[{b:"^@@.*",e:"$",cN:"comment"}]}];return r.c=s,a.c=s,{aliases:["pl","pm"],l:/[\w\.]+/,k:t,c:s}}),e.registerLanguage("php",function(e){var t={b:"\\$+[a-zA-Z_-ÿ][a-zA-Z0-9_-ÿ]*"},r={cN:"meta",b:/<\?(php)?|\?>/},a={cN:"string",c:[e.BE,r],v:[{b:'b"',e:'"'},{b:"b'",e:"'"},e.inherit(e.ASM,{i:null}),e.inherit(e.QSM,{i:null})]},n={v:[e.BNM,e.CNM]};return{aliases:["php","php3","php4","php5","php6","php7"],cI:!0,k:"and include_once list abstract global private echo interface as static endswitch array null if endwhile or const for endforeach self var while isset public protected exit foreach throw elseif include __FILE__ empty require_once do xor return parent clone use __CLASS__ __LINE__ else break print eval new catch __METHOD__ case exception default die require __FUNCTION__ enddeclare final try switch continue endfor endif declare unset true false trait goto instanceof insteadof __DIR__ __NAMESPACE__ yield finally",c:[e.HCM,e.C("//","$",{c:[r]}),e.C("/\\*","\\*/",{c:[{cN:"doctag",b:"@[A-Za-z]+"}]}),e.C("__halt_compiler.+?;",!1,{eW:!0,k:"__halt_compiler",l:e.UIR}),{cN:"string",b:/<<<['"]?\w+['"]?$/,e:/^\w+;?$/,c:[e.BE,{cN:"subst",v:[{b:/\$\w+/},{b:/\{\$/,e:/\}/}]}]},r,{cN:"keyword",b:/\$this\b/},t,{b:/(::|->)+[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*/},{cN:"function",bK:"function",e:/[;{]/,eE:!0,i:"\\$|\\[|%",c:[e.UTM,{cN:"params",b:"\\(",e:"\\)",c:["self",t,e.CBCM,a,n]}]},{cN:"class",bK:"class interface",e:"{",eE:!0,i:/[:\(\$"]/,c:[{bK:"extends implements"},e.UTM]},{bK:"namespace",e:";",i:/[\.']/,c:[e.UTM]},{bK:"use",e:";",c:[e.UTM]},{b:"=>"},a,n]}}),e.registerLanguage("properties",function(e){var t="[ \\t\\f]*",r="[ \\t\\f]+",a="("+t+"[:=]"+t+"|"+r+")",n="([^\\\\\\W:= \\t\\f\\n]|\\\\.)+",i="([^\\\\:= \\t\\f\\n]|\\\\.)+",s={e:a,r:0,starts:{cN:"string",e:/$/,r:0,c:[{b:"\\\\\\n"}]}};return{cI:!0,i:/\S/,c:[e.C("^\\s*[!#]","$"),{b:n+a,rB:!0,c:[{cN:"attr",b:n,endsParent:!0,r:0}],starts:s},{b:i+a,rB:!0,r:0,c:[{cN:"meta",b:i,endsParent:!0,r:0}],starts:s},{cN:"attr",r:0,b:i+t+"$"}]}}),e.registerLanguage("python",function(e){ -var t={keyword:"and elif is global as in if from raise for except finally print import pass return exec else break not with class assert yield try while continue del or def lambda async await nonlocal|10 None True False",built_in:"Ellipsis NotImplemented"},r={cN:"meta",b:/^(>>>|\.\.\.) /},a={cN:"subst",b:/\{/,e:/\}/,k:t,i:/#/},n={cN:"string",c:[e.BE],v:[{b:/(u|b)?r?'''/,e:/'''/,c:[e.BE,r],r:10},{b:/(u|b)?r?"""/,e:/"""/,c:[e.BE,r],r:10},{b:/(fr|rf|f)'''/,e:/'''/,c:[e.BE,r,a]},{b:/(fr|rf|f)"""/,e:/"""/,c:[e.BE,r,a]},{b:/(u|r|ur)'/,e:/'/,r:10},{b:/(u|r|ur)"/,e:/"/,r:10},{b:/(b|br)'/,e:/'/},{b:/(b|br)"/,e:/"/},{b:/(fr|rf|f)'/,e:/'/,c:[e.BE,a]},{b:/(fr|rf|f)"/,e:/"/,c:[e.BE,a]},e.ASM,e.QSM]},i={cN:"number",r:0,v:[{b:e.BNR+"[lLjJ]?"},{b:"\\b(0o[0-7]+)[lLjJ]?"},{b:e.CNR+"[lLjJ]?"}]},s={cN:"params",b:/\(/,e:/\)/,c:["self",r,i,n]};return a.c=[n,i,r],{aliases:["py","gyp","ipython"],k:t,i:/(<\/|->|\?)|=>/,c:[r,i,n,e.HCM,{v:[{cN:"function",bK:"def"},{cN:"class",bK:"class"}],e:/:/,i:/[${=;\n,]/,c:[e.UTM,s,{b:/->/,eW:!0,k:"None"}]},{cN:"meta",b:/^[\t ]*@/,e:/$/},{b:/\b(print|exec)\(/}]}}),e.registerLanguage("ruby",function(e){var t="[a-zA-Z_]\\w*[!?=]?|[-+~]\\@|<<|>>|=~|===?|<=>|[<>]=?|\\*\\*|[-/+%^&*~`|]|\\[\\]=?",r={keyword:"and then defined module in return redo if BEGIN retry end for self when next until do begin unless END rescue else break undef not super class case require yield alias while ensure elsif or include attr_reader attr_writer attr_accessor",literal:"true false nil"},a={cN:"doctag",b:"@[A-Za-z]+"},n={b:"#<",e:">"},i=[e.C("#","$",{c:[a]}),e.C("^\\=begin","^\\=end",{c:[a],r:10}),e.C("^__END__","\\n$")],s={cN:"subst",b:"#\\{",e:"}",k:r},c={cN:"string",c:[e.BE,s],v:[{b:/'/,e:/'/},{b:/"/,e:/"/},{b:/`/,e:/`/},{b:"%[qQwWx]?\\(",e:"\\)"},{b:"%[qQwWx]?\\[",e:"\\]"},{b:"%[qQwWx]?{",e:"}"},{b:"%[qQwWx]?<",e:">"},{b:"%[qQwWx]?/",e:"/"},{b:"%[qQwWx]?%",e:"%"},{b:"%[qQwWx]?-",e:"-"},{b:"%[qQwWx]?\\|",e:"\\|"},{b:/\B\?(\\\d{1,3}|\\x[A-Fa-f0-9]{1,2}|\\u[A-Fa-f0-9]{4}|\\?\S)\b/},{b:/<<(-?)\w+$/,e:/^\s*\w+$/}]},o={cN:"params",b:"\\(",e:"\\)",endsParent:!0,k:r},l=[c,n,{cN:"class",bK:"class module",e:"$|;",i:/=/,c:[e.inherit(e.TM,{b:"[A-Za-z_]\\w*(::\\w+)*(\\?|\\!)?"}),{b:"<\\s*",c:[{b:"("+e.IR+"::)?"+e.IR}]}].concat(i)},{cN:"function",bK:"def",e:"$|;",c:[e.inherit(e.TM,{b:t}),o].concat(i)},{b:e.IR+"::"},{cN:"symbol",b:e.UIR+"(\\!|\\?)?:",r:0},{cN:"symbol",b:":(?!\\s)",c:[c,{b:t}],r:0},{cN:"number",b:"(\\b0[0-7_]+)|(\\b0x[0-9a-fA-F_]+)|(\\b[1-9][0-9_]*(\\.[0-9_]+)?)|[0_]\\b",r:0},{b:"(\\$\\W)|((\\$|\\@\\@?)(\\w+))"},{cN:"params",b:/\|/,e:/\|/,k:r},{b:"("+e.RSR+"|unless)\\s*",k:"unless",c:[n,{cN:"regexp",c:[e.BE,s],i:/\n/,v:[{b:"/",e:"/[a-z]*"},{b:"%r{",e:"}[a-z]*"},{b:"%r\\(",e:"\\)[a-z]*"},{b:"%r!",e:"![a-z]*"},{b:"%r\\[",e:"\\][a-z]*"}]}].concat(i),r:0}].concat(i);s.c=l,o.c=l;var u="[>?]>",d="[\\w#]+\\(\\w+\\):\\d+:\\d+>",b="(\\w+-)?\\d+\\.\\d+\\.\\d(p\\d+)?[^>]+>",p=[{b:/^\s*=>/,starts:{e:"$",c:l}},{cN:"meta",b:"^("+u+"|"+d+"|"+b+")",starts:{e:"$",c:l}}];return{aliases:["rb","gemspec","podspec","thor","irb"],k:r,i:/\/\*/,c:i.concat(p).concat(l)}}),e.registerLanguage("shell",function(e){return{aliases:["console"],c:[{cN:"meta",b:"^\\s{0,3}[\\w\\d\\[\\]()@-]*[>%$#]",starts:{e:"$",sL:"bash"}}]}}),e.registerLanguage("sql",function(e){var t=e.C("--","$");return{cI:!0,i:/[<>{}*]/,c:[{bK:"begin end start commit rollback savepoint lock alter create drop rename call delete do handler insert load replace select truncate update set show pragma grant merge describe use explain help declare prepare execute deallocate release unlock purge reset change stop analyze cache flush optimize repair kill install uninstall checksum restore check backup revoke comment values with",e:/;/,eW:!0,l:/[\w\.]+/,k:{keyword:"as abort abs absolute acc acce accep accept access accessed accessible account acos action activate add addtime admin administer advanced advise aes_decrypt aes_encrypt after agent aggregate ali alia alias all allocate allow alter always analyze ancillary and anti any anydata anydataset anyschema anytype apply archive archived archivelog are as asc ascii asin assembly assertion associate asynchronous at atan atn2 attr attri attrib attribu attribut attribute attributes audit authenticated authentication authid authors auto autoallocate autodblink autoextend automatic availability avg backup badfile basicfile before begin beginning benchmark between bfile bfile_base big bigfile bin binary_double binary_float binlog bit_and bit_count bit_length bit_or bit_xor bitmap blob_base block blocksize body both bound bucket buffer_cache buffer_pool build bulk by byte byteordermark bytes cache caching call calling cancel capacity cascade cascaded case cast catalog category ceil ceiling chain change changed char_base char_length character_length characters characterset charindex charset charsetform charsetid check checksum checksum_agg child choose chr chunk class cleanup clear client clob clob_base clone close cluster_id cluster_probability cluster_set clustering coalesce coercibility col collate collation collect colu colum column column_value columns columns_updated comment commit compact compatibility compiled complete composite_limit compound compress compute concat concat_ws concurrent confirm conn connec connect connect_by_iscycle connect_by_isleaf connect_by_root connect_time connection consider consistent constant constraint constraints constructor container content contents context contributors controlfile conv convert convert_tz corr corr_k corr_s corresponding corruption cos cost count count_big counted covar_pop covar_samp cpu_per_call cpu_per_session crc32 create creation critical cross cube cume_dist curdate current current_date current_time current_timestamp current_user cursor curtime customdatum cycle data database databases datafile datafiles datalength date_add date_cache date_format date_sub dateadd datediff datefromparts datename datepart datetime2fromparts day day_to_second dayname dayofmonth dayofweek dayofyear days db_role_change dbtimezone ddl deallocate declare decode decompose decrement decrypt deduplicate def defa defau defaul default defaults deferred defi defin define degrees delayed delegate delete delete_all delimited demand dense_rank depth dequeue des_decrypt des_encrypt des_key_file desc descr descri describ describe descriptor deterministic diagnostics difference dimension direct_load directory disable disable_all disallow disassociate discardfile disconnect diskgroup distinct distinctrow distribute distributed div do document domain dotnet double downgrade drop dumpfile duplicate duration each edition editionable editions element ellipsis else elsif elt empty enable enable_all enclosed encode encoding encrypt end end-exec endian enforced engine engines enqueue enterprise entityescaping eomonth error errors escaped evalname evaluate event eventdata events except exception exceptions exchange exclude excluding execu execut execute exempt exists exit exp expire explain explode export export_set extended extent external external_1 external_2 externally extract failed failed_login_attempts failover failure far fast feature_set feature_value fetch field fields file file_name_convert filesystem_like_logging final finish first first_value fixed flash_cache flashback floor flush following follows for forall force foreign form forma format found found_rows freelist freelists freepools fresh from from_base64 from_days ftp full function general generated get get_format get_lock getdate getutcdate global global_name globally go goto grant grants greatest group group_concat group_id grouping grouping_id groups gtid_subtract guarantee guard handler hash hashkeys having hea head headi headin heading heap help hex hierarchy high high_priority hosts hour hours http id ident_current ident_incr ident_seed identified identity idle_time if ifnull ignore iif ilike ilm immediate import in include including increment index indexes indexing indextype indicator indices inet6_aton inet6_ntoa inet_aton inet_ntoa infile initial initialized initially initrans inmemory inner innodb input insert install instance instantiable instr interface interleaved intersect into invalidate invisible is is_free_lock is_ipv4 is_ipv4_compat is_not is_not_null is_used_lock isdate isnull isolation iterate java join json json_exists keep keep_duplicates key keys kill language large last last_day last_insert_id last_value lateral lax lcase lead leading least leaves left len lenght length less level levels library like like2 like4 likec limit lines link list listagg little ln load load_file lob lobs local localtime localtimestamp locate locator lock locked log log10 log2 logfile logfiles logging logical logical_reads_per_call logoff logon logs long loop low low_priority lower lpad lrtrim ltrim main make_set makedate maketime managed management manual map mapping mask master master_pos_wait match matched materialized max maxextents maximize maxinstances maxlen maxlogfiles maxloghistory maxlogmembers maxsize maxtrans md5 measures median medium member memcompress memory merge microsecond mid migration min minextents minimum mining minus minute minutes minvalue missing mod mode model modification modify module monitoring month months mount move movement multiset mutex name name_const names nan national native natural nav nchar nclob nested never new newline next nextval no no_write_to_binlog noarchivelog noaudit nobadfile nocheck nocompress nocopy nocycle nodelay nodiscardfile noentityescaping noguarantee nokeep nologfile nomapping nomaxvalue nominimize nominvalue nomonitoring none noneditionable nonschema noorder nopr nopro noprom nopromp noprompt norely noresetlogs noreverse normal norowdependencies noschemacheck noswitch not nothing notice notnull notrim novalidate now nowait nth_value nullif nulls num numb numbe nvarchar nvarchar2 object ocicoll ocidate ocidatetime ociduration ociinterval ociloblocator ocinumber ociref ocirefcursor ocirowid ocistring ocitype oct octet_length of off offline offset oid oidindex old on online only opaque open operations operator optimal optimize option optionally or oracle oracle_date oradata ord ordaudio orddicom orddoc order ordimage ordinality ordvideo organization orlany orlvary out outer outfile outline output over overflow overriding package pad parallel parallel_enable parameters parent parse partial partition partitions pascal passing password password_grace_time password_lock_time password_reuse_max password_reuse_time password_verify_function patch path patindex pctincrease pctthreshold pctused pctversion percent percent_rank percentile_cont percentile_disc performance period period_add period_diff permanent physical pi pipe pipelined pivot pluggable plugin policy position post_transaction pow power pragma prebuilt precedes preceding precision prediction prediction_cost prediction_details prediction_probability prediction_set prepare present preserve prior priority private private_sga privileges procedural procedure procedure_analyze processlist profiles project prompt protection public publishingservername purge quarter query quick quiesce quota quotename radians raise rand range rank raw read reads readsize rebuild record records recover recovery recursive recycle redo reduced ref reference referenced references referencing refresh regexp_like register regr_avgx regr_avgy regr_count regr_intercept regr_r2 regr_slope regr_sxx regr_sxy reject rekey relational relative relaylog release release_lock relies_on relocate rely rem remainder rename repair repeat replace replicate replication required reset resetlogs resize resource respect restore restricted result result_cache resumable resume retention return returning returns reuse reverse revoke right rlike role roles rollback rolling rollup round row row_count rowdependencies rowid rownum rows rtrim rules safe salt sample save savepoint sb1 sb2 sb4 scan schema schemacheck scn scope scroll sdo_georaster sdo_topo_geometry search sec_to_time second seconds section securefile security seed segment select self semi sequence sequential serializable server servererror session session_user sessions_per_user set sets settings sha sha1 sha2 share shared shared_pool short show shrink shutdown si_averagecolor si_colorhistogram si_featurelist si_positionalcolor si_stillimage si_texture siblings sid sign sin size size_t sizes skip slave sleep smalldatetimefromparts smallfile snapshot some soname sort soundex source space sparse spfile split sql sql_big_result sql_buffer_result sql_cache sql_calc_found_rows sql_small_result sql_variant_property sqlcode sqldata sqlerror sqlname sqlstate sqrt square standalone standby start starting startup statement static statistics stats_binomial_test stats_crosstab stats_ks_test stats_mode stats_mw_test stats_one_way_anova stats_t_test_ stats_t_test_indep stats_t_test_one stats_t_test_paired stats_wsr_test status std stddev stddev_pop stddev_samp stdev stop storage store stored str str_to_date straight_join strcmp strict string struct stuff style subdate subpartition subpartitions substitutable substr substring subtime subtring_index subtype success sum suspend switch switchoffset switchover sync synchronous synonym sys sys_xmlagg sysasm sysaux sysdate sysdatetimeoffset sysdba sysoper system system_user sysutcdatetime table tables tablespace tablesample tan tdo template temporary terminated tertiary_weights test than then thread through tier ties time time_format time_zone timediff timefromparts timeout timestamp timestampadd timestampdiff timezone_abbr timezone_minute timezone_region to to_base64 to_date to_days to_seconds todatetimeoffset trace tracking transaction transactional translate translation treat trigger trigger_nestlevel triggers trim truncate try_cast try_convert try_parse type ub1 ub2 ub4 ucase unarchived unbounded uncompress under undo unhex unicode uniform uninstall union unique unix_timestamp unknown unlimited unlock unnest unpivot unrecoverable unsafe unsigned until untrusted unusable unused update updated upgrade upped upper upsert url urowid usable usage use use_stored_outlines user user_data user_resources users using utc_date utc_timestamp uuid uuid_short validate validate_password_strength validation valist value values var var_samp varcharc vari varia variab variabl variable variables variance varp varraw varrawc varray verify version versions view virtual visible void wait wallet warning warnings week weekday weekofyear wellformed when whene whenev wheneve whenever where while whitespace window with within without work wrapped xdb xml xmlagg xmlattributes xmlcast xmlcolattval xmlelement xmlexists xmlforest xmlindex xmlnamespaces xmlpi xmlquery xmlroot xmlschema xmlserialize xmltable xmltype xor year year_to_month years yearweek",literal:"true false null unknown",built_in:"array bigint binary bit blob bool boolean char character date dec decimal float int int8 integer interval number numeric real record serial serial8 smallint text time timestamp tinyint varchar varying void"},c:[{cN:"string",b:"'",e:"'",c:[e.BE,{b:"''"}]},{cN:"string",b:'"',e:'"',c:[e.BE,{b:'""'}]},{cN:"string",b:"`",e:"`",c:[e.BE]},e.CNM,e.CBCM,t,e.HCM]},e.CBCM,t,e.HCM]}}),e}); \ No newline at end of file diff --git a/public/js/highlight.min.js b/public/js/highlight.min.js new file mode 120000 index 0000000..24e3bff --- /dev/null +++ b/public/js/highlight.min.js @@ -0,0 +1 @@ +../../node_modules/@highlightjs/cdn-assets/highlight.min.js \ No newline at end of file diff --git a/public/js/jdenticon.min.js b/public/js/jdenticon.min.js deleted file mode 100644 index 20c0545..0000000 --- a/public/js/jdenticon.min.js +++ /dev/null @@ -1,20 +0,0 @@ -// Jdenticon 2.1.1 | jdenticon.com | MIT licensed | (c) 2014-2018 Daniel Mester Pirttijärvi -(function(q,y,z){var t=z(q,q.jQuery);"undefined"!==typeof module&&"exports"in module?module.exports=t:"function"===typeof define&&define.amd?define([],function(){return t}):q[y]=t})(this,"jdenticon",function(q,y){function z(a,b,c){for(var d=document.createElementNS("http://www.w3.org/2000/svg",b),f=2;f+1>>e&15).toString(16));return b.join("")}(function(a){for(var b= -1732584193,d=4023233417,f=2562383102,e=271733878,h=3285377520,k=[b,d,f,e,h],g=0;gl;l++){var A=u[l-3]^u[l-8]^u[l-14]^u[l-16];u[l]=A<<1|A>>>31}for(l=0;80>l;l++)A=(b<<5|b>>>27)+(20>l?(d&f^~d&e)+1518500249:40>l?(d^f^e)+1859775393:60>l?(d&f^d&e^f&e)+2400959708:(d^f^e)+3395469782)+h+u[l],h=e,e=f,f=d<<30|d>>>2,d=b,b=A|0;k[0]=b=k[0]+b|0;k[1]=d=k[1]+d|0;k[2]=f=k[2]+f|0;k[3]=e=k[3]+e|0;k[4]=h=k[4]+h|0}return k}(function(a){function b(a,b){for(var c=[],d=-1,e=0;e++d;)c[d]=0;return c}var d=encodeURI(a),f=[];a=0;var e,h=[];for(e=0;ea?"00":16>a?"0"+a.toString(16):256>a?a.toString(16):"ff"}function F(a,b,c){c=0>c?c+6:6c?a+(b-a)*c:3>c?b:4>c?a+(b-a)*(4-c):a))}function O(a){"undefined"!=typeof MutationObserver&&(new MutationObserver(function(b){for(var c=0;cf;f++){var q=r(b,8+f,1)%p.length;if(g([0,4])||g([2,3]))q=1;n.push(q)}k(0, -I.I,2,3,[[1,0],[2,0],[2,3],[1,3],[0,1],[3,1],[3,2],[0,2]]);k(1,I.I,4,5,[[0,0],[3,0],[3,3],[0,3]]);k(2,I.M,1,null,[[1,1],[2,1],[2,2],[1,2]]);a.finish()}function J(){function a(a,b){var d=c[a];d&&1a?0:1a.length){var b=a[1],c=a[2],d=a[3];a=a[4]||"";return"#"+b+b+c+c+d+d+a+a}if(7==a.length||8=c?c*(b+1):c+b-c*b;c=2*c-b;return"#"+F(c,b,6*a+2)+F(c,b,6*a)+F(c,b,6*a-2)},i:function(a,b,c){var d=[.55,.5,.5,.46,.6,.55,.55][6*a+.5|0];return m.N(a,b,.5>c?c*d*2:d+(c-.5)*(1-d)*2)}},I={M:[function(a,b){var c=.42*b;a.f([0,0,b,0,b,b-2*c,b-c,b,0,b])},function(a,b){var c=0|.5*b;a.b(b-c,0,c,0|.8*b,2)},function(a,b){var c=0|b/3;a.a(c,c,b-c,b-c)},function(a,b){var c=.1*b,d= -6>b?1:8>b?2:0|.25*b;c=1b?1:6>b?2:0|.35*b;c=8>b?c:0|c;a.a(0,0,b,b);a.a(d,d,b-d-c,b-d-c,!0)},function(a,b){var c=.12* -b,d=3*c;a.a(0,0,b,b);a.g(d,d,b-c-d,!0)},function(a,b){a.b(b/2,b/2,b/2,b/2,3)},function(a,b){var c=.25*b;a.a(0,0,b,b);a.l(c,c,b-c,b-c,!0)},function(a,b,c){var d=.4*b;c||a.g(d,d,1.2*b)}],I:[function(a,b){a.b(0,0,b,b,0)},function(a,b){a.b(0,b/2,b,b/2,0)},function(a,b){a.l(0,0,b,b)},function(a,b){var c=b/6;a.g(c,c,b-2*c)}]};L.prototype={f:function(a){for(var b="M"+p(a[0].x)+" "+p(a[0].y),c=1;c .p-3 { + padding-right: 0.5rem !important; +} .table > :not(:first-child) { border-top: 0px; @@ -87,7 +102,6 @@ $dropdown-min-width: 11rem; .table td.fit, .table th.fit { white-space: nowrap; - width: 1%; } @@ -261,7 +275,20 @@ pre { .word-wrap { word-wrap: break-word; - word-break: break-all; + // word-break: break-all; +} + +// the flags jump all over the place +// depending on the size of the other tds +// lets force it into a column so it has less chance to spill out +.chan-flags > div { + display: flex; + flex-direction: column; + gap: .1em; +} +// bad pills, no expanding! +.chan-flags > div > span { + width: fit-content; } .table th { diff --git a/public/style/dark.css b/public/style/dark.css index a4c1268..2fbeae9 100644 --- a/public/style/dark.css +++ b/public/style/dark.css @@ -1,6 +1,5 @@ /*! - * Bootstrap v5.2.3 (https://getbootstrap.com/) - * Copyright 2011-2022 The Bootstrap Authors - * Copyright 2011-2022 Twitter, Inc. + * Bootstrap v5.3.0 (https://getbootstrap.com/) + * Copyright 2011-2023 The Bootstrap Authors * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) - */:root{--bs-blue: #0d6efd;--bs-indigo: #6610f2;--bs-purple: #6f42c1;--bs-pink: #d63384;--bs-red: #dc3545;--bs-orange: #fd7e14;--bs-yellow: #ffc107;--bs-green: #198754;--bs-teal: #20c997;--bs-cyan: #0dcaf0;--bs-black: #000;--bs-white: #fff;--bs-gray: #6c757d;--bs-gray-dark: #343a40;--bs-gray-100: #f8f9fa;--bs-gray-200: #e9ecef;--bs-gray-300: #dee2e6;--bs-gray-400: #ced4da;--bs-gray-500: #adb5bd;--bs-gray-600: #6c757d;--bs-gray-700: #495057;--bs-gray-800: #343a40;--bs-gray-900: #212529;--bs-primary: #0d6efd;--bs-secondary: #6c757d;--bs-success: #198754;--bs-info: #0dcaf0;--bs-warning: #ffc107;--bs-danger: #dc3545;--bs-light: #e9ecef;--bs-dark: #0c1118;--bs-primary-rgb: 13, 110, 253;--bs-secondary-rgb: 108, 117, 125;--bs-success-rgb: 25, 135, 84;--bs-info-rgb: 13, 202, 240;--bs-warning-rgb: 255, 193, 7;--bs-danger-rgb: 220, 53, 69;--bs-light-rgb: 233, 236, 239;--bs-dark-rgb: 12, 17, 24;--bs-white-rgb: 255, 255, 255;--bs-black-rgb: 0, 0, 0;--bs-body-color-rgb: 247, 250, 250;--bs-body-bg-rgb: 26, 36, 51;--bs-font-sans-serif: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));--bs-body-font-family: var(--bs-font-sans-serif);--bs-body-font-size:1rem;--bs-body-font-weight: 400;--bs-body-line-height: 1.5;--bs-body-color: #f7fafa;--bs-body-bg: #1a2433;--bs-border-width: 1px;--bs-border-style: solid;--bs-border-color: #212e41;--bs-border-color-translucent: rgba(0, 0, 0, 0.175);--bs-border-radius: 0.4rem;--bs-border-radius-sm: 0.25rem;--bs-border-radius-lg: 0.5rem;--bs-border-radius-xl: 1rem;--bs-border-radius-2xl: 2rem;--bs-border-radius-pill: 50rem;--bs-link-color: #0d6efd;--bs-link-hover-color: #408cff;--bs-code-color: #d63384;--bs-highlight-bg: #fff3cd}*,*::before,*::after{box-sizing:border-box}@media(prefers-reduced-motion: no-preference){:root{scroll-behavior:smooth}}body{margin:0;font-family:var(--bs-body-font-family);font-size:var(--bs-body-font-size);font-weight:var(--bs-body-font-weight);line-height:var(--bs-body-line-height);color:var(--bs-body-color);text-align:var(--bs-body-text-align);background-color:var(--bs-body-bg);-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:rgba(0,0,0,0)}hr{margin:.9rem 0;color:inherit;border:0;border-top:1px solid;opacity:.25}h6,.h6,h5,.h5,h4,.h4,h3,.h3,h2,.h2,h1,.h1{margin-top:0;margin-bottom:.45rem;font-weight:500;line-height:1.2}h1,.h1{font-size:calc(1.375rem + 1.5vw)}@media(min-width: 1200px){h1,.h1{font-size:2.5rem}}h2,.h2{font-size:calc(1.325rem + 0.9vw)}@media(min-width: 1200px){h2,.h2{font-size:2rem}}h3,.h3{font-size:calc(1.3rem + 0.6vw)}@media(min-width: 1200px){h3,.h3{font-size:1.75rem}}h4,.h4{font-size:calc(1.275rem + 0.3vw)}@media(min-width: 1200px){h4,.h4{font-size:1.5rem}}h5,.h5{font-size:1.25rem}h6,.h6{font-size:1rem}p{margin-top:0;margin-bottom:1rem}abbr[title]{text-decoration:underline dotted;cursor:help;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:.5rem;margin-left:0}blockquote{margin:0 0 1rem}b,strong{font-weight:bolder}small,.small{font-size:0.875em}mark,.mark{padding:.1875em;background-color:var(--bs-highlight-bg)}sub,sup{position:relative;font-size:0.75em;line-height:0;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}a{color:var(--bs-link-color);text-decoration:none}a:hover{color:var(--bs-link-hover-color);text-decoration:underline}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}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:var(--bs-code-color);word-wrap:break-word}a>code{color:inherit}kbd{padding:.1875rem .375rem;font-size:0.875em;color:var(--bs-body-bg);background-color:var(--bs-body-color);border-radius:.25rem}kbd kbd{padding:0;font-size:1em}figure{margin:0 0 1rem}img,svg{vertical-align:middle}table{caption-side:bottom;border-collapse:collapse}caption{padding-top:.5rem;padding-bottom:.5rem;color:#b2bac2;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]:not([type=date]):not([type=datetime-local]):not([type=month]):not([type=week]):not([type=time])::-webkit-calendar-picker-indicator{display:none !important}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:.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}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-color-swatch-wrapper{padding:0}::file-selector-button{font:inherit;-webkit-appearance:button}output{display:inline-block}iframe{border:0}summary{display:list-item;cursor:pointer}progress{vertical-align:baseline}[hidden]{display:none !important}.lead{font-size:1.25rem;font-weight:300}.display-1{font-size:calc(1.625rem + 4.5vw);font-weight:300;line-height:1.2}@media(min-width: 1200px){.display-1{font-size:5rem}}.display-2{font-size:calc(1.575rem + 3.9vw);font-weight:300;line-height:1.2}@media(min-width: 1200px){.display-2{font-size:4.5rem}}.display-3{font-size:calc(1.525rem + 3.3vw);font-weight:300;line-height:1.2}@media(min-width: 1200px){.display-3{font-size:4rem}}.display-4{font-size:calc(1.475rem + 2.7vw);font-weight:300;line-height:1.2}@media(min-width: 1200px){.display-4{font-size:3.5rem}}.display-5{font-size:calc(1.425rem + 2.1vw);font-weight:300;line-height:1.2}@media(min-width: 1200px){.display-5{font-size:3rem}}.display-6{font-size:calc(1.375rem + 1.5vw);font-weight:300;line-height:1.2}@media(min-width: 1200px){.display-6{font-size:2.5rem}}.list-unstyled{padding-left:0;list-style:none}.list-inline{padding-left:0;list-style:none}.list-inline-item{display:inline-block}.list-inline-item:not(:last-child){margin-right:.5rem}.initialism{font-size:0.875em;text-transform:uppercase}.blockquote{margin-bottom:.9rem;font-size:1.25rem}.blockquote>:last-child{margin-bottom:0}.blockquote-footer{margin-top:-0.9rem;margin-bottom:.9rem;font-size:0.875em;color:#6c757d}.blockquote-footer::before{content:"— "}.img-fluid{max-width:100%;height:auto}.img-thumbnail{padding:.25rem;background-color:#1a2433;border:1px solid var(--bs-border-color);border-radius:.4rem;max-width:100%;height:auto}.figure{display:inline-block}.figure-img{margin-bottom:.45rem;line-height:1}.figure-caption{font-size:0.875em;color:#6c757d}.container,.container-fluid,.container-xxxl,.container-xxl,.container-xl,.container-lg,.container-md,.container-sm{--bs-gutter-x: 1.5rem;--bs-gutter-y: 0;width:100%;padding-right:calc(var(--bs-gutter-x)*.5);padding-left:calc(var(--bs-gutter-x)*.5);margin-right:auto;margin-left:auto}@media(min-width: 576px){.container-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}}@media(min-width: 1900px){.container-xxxl,.container-xxl,.container-xl,.container-lg,.container-md,.container-sm,.container{max-width:1820px}}.row{--bs-gutter-x: 1.5rem;--bs-gutter-y: 0;display:flex;flex-wrap:wrap;margin-top:calc(-1*var(--bs-gutter-y));margin-right:calc(-0.5*var(--bs-gutter-x));margin-left:calc(-0.5*var(--bs-gutter-x))}.row>*{flex-shrink:0;width:100%;max-width:100%;padding-right:calc(var(--bs-gutter-x)*.5);padding-left:calc(var(--bs-gutter-x)*.5);margin-top:var(--bs-gutter-y)}.col{flex:1 0 0%}.row-cols-auto>*{flex:0 0 auto;width:auto}.row-cols-1>*{flex:0 0 auto;width:100%}.row-cols-2>*{flex:0 0 auto;width:50%}.row-cols-3>*{flex:0 0 auto;width:33.3333333333%}.row-cols-4>*{flex:0 0 auto;width:25%}.row-cols-5>*{flex:0 0 auto;width:20%}.row-cols-6>*{flex:0 0 auto;width:16.6666666667%}.col-auto{flex:0 0 auto;width:auto}.col-1{flex:0 0 auto;width:8.33333333%}.col-2{flex:0 0 auto;width:16.66666667%}.col-3{flex:0 0 auto;width:25%}.col-4{flex:0 0 auto;width:33.33333333%}.col-5{flex:0 0 auto;width:41.66666667%}.col-6{flex:0 0 auto;width:50%}.col-7{flex:0 0 auto;width:58.33333333%}.col-8{flex:0 0 auto;width:66.66666667%}.col-9{flex:0 0 auto;width:75%}.col-10{flex:0 0 auto;width:83.33333333%}.col-11{flex:0 0 auto;width:91.66666667%}.col-12{flex:0 0 auto;width:100%}.offset-1{margin-left:8.33333333%}.offset-2{margin-left:16.66666667%}.offset-3{margin-left:25%}.offset-4{margin-left:33.33333333%}.offset-5{margin-left:41.66666667%}.offset-6{margin-left:50%}.offset-7{margin-left:58.33333333%}.offset-8{margin-left:66.66666667%}.offset-9{margin-left:75%}.offset-10{margin-left:83.33333333%}.offset-11{margin-left:91.66666667%}.g-0,.gx-0{--bs-gutter-x: 0}.g-0,.gy-0{--bs-gutter-y: 0}.g-1,.gx-1{--bs-gutter-x: 0.225rem}.g-1,.gy-1{--bs-gutter-y: 0.225rem}.g-2,.gx-2{--bs-gutter-x: 0.45rem}.g-2,.gy-2{--bs-gutter-y: 0.45rem}.g-3,.gx-3{--bs-gutter-x: 0.9rem}.g-3,.gy-3{--bs-gutter-y: 0.9rem}.g-4,.gx-4{--bs-gutter-x: 1.35rem}.g-4,.gy-4{--bs-gutter-y: 1.35rem}.g-5,.gx-5{--bs-gutter-x: 1.8rem}.g-5,.gy-5{--bs-gutter-y: 1.8rem}.g-6,.gx-6{--bs-gutter-x: 2.25rem}.g-6,.gy-6{--bs-gutter-y: 2.25rem}.g-7,.gx-7{--bs-gutter-x: 2.7rem}.g-7,.gy-7{--bs-gutter-y: 2.7rem}.g-8,.gx-8{--bs-gutter-x: 3.15rem}.g-8,.gy-8{--bs-gutter-y: 3.15rem}.g-9,.gx-9{--bs-gutter-x: 3.6rem}.g-9,.gy-9{--bs-gutter-y: 3.6rem}.g-tiny,.gx-tiny{--bs-gutter-x: 0.135rem}.g-tiny,.gy-tiny{--bs-gutter-y: 0.135rem}@media(min-width: 576px){.col-sm{flex:1 0 0%}.row-cols-sm-auto>*{flex:0 0 auto;width:auto}.row-cols-sm-1>*{flex:0 0 auto;width:100%}.row-cols-sm-2>*{flex:0 0 auto;width:50%}.row-cols-sm-3>*{flex:0 0 auto;width:33.3333333333%}.row-cols-sm-4>*{flex:0 0 auto;width:25%}.row-cols-sm-5>*{flex:0 0 auto;width:20%}.row-cols-sm-6>*{flex:0 0 auto;width:16.6666666667%}.col-sm-auto{flex:0 0 auto;width:auto}.col-sm-1{flex:0 0 auto;width:8.33333333%}.col-sm-2{flex:0 0 auto;width:16.66666667%}.col-sm-3{flex:0 0 auto;width:25%}.col-sm-4{flex:0 0 auto;width:33.33333333%}.col-sm-5{flex:0 0 auto;width:41.66666667%}.col-sm-6{flex:0 0 auto;width:50%}.col-sm-7{flex:0 0 auto;width:58.33333333%}.col-sm-8{flex:0 0 auto;width:66.66666667%}.col-sm-9{flex:0 0 auto;width:75%}.col-sm-10{flex:0 0 auto;width:83.33333333%}.col-sm-11{flex:0 0 auto;width:91.66666667%}.col-sm-12{flex:0 0 auto;width:100%}.offset-sm-0{margin-left:0}.offset-sm-1{margin-left:8.33333333%}.offset-sm-2{margin-left:16.66666667%}.offset-sm-3{margin-left:25%}.offset-sm-4{margin-left:33.33333333%}.offset-sm-5{margin-left:41.66666667%}.offset-sm-6{margin-left:50%}.offset-sm-7{margin-left:58.33333333%}.offset-sm-8{margin-left:66.66666667%}.offset-sm-9{margin-left:75%}.offset-sm-10{margin-left:83.33333333%}.offset-sm-11{margin-left:91.66666667%}.g-sm-0,.gx-sm-0{--bs-gutter-x: 0}.g-sm-0,.gy-sm-0{--bs-gutter-y: 0}.g-sm-1,.gx-sm-1{--bs-gutter-x: 0.225rem}.g-sm-1,.gy-sm-1{--bs-gutter-y: 0.225rem}.g-sm-2,.gx-sm-2{--bs-gutter-x: 0.45rem}.g-sm-2,.gy-sm-2{--bs-gutter-y: 0.45rem}.g-sm-3,.gx-sm-3{--bs-gutter-x: 0.9rem}.g-sm-3,.gy-sm-3{--bs-gutter-y: 0.9rem}.g-sm-4,.gx-sm-4{--bs-gutter-x: 1.35rem}.g-sm-4,.gy-sm-4{--bs-gutter-y: 1.35rem}.g-sm-5,.gx-sm-5{--bs-gutter-x: 1.8rem}.g-sm-5,.gy-sm-5{--bs-gutter-y: 1.8rem}.g-sm-6,.gx-sm-6{--bs-gutter-x: 2.25rem}.g-sm-6,.gy-sm-6{--bs-gutter-y: 2.25rem}.g-sm-7,.gx-sm-7{--bs-gutter-x: 2.7rem}.g-sm-7,.gy-sm-7{--bs-gutter-y: 2.7rem}.g-sm-8,.gx-sm-8{--bs-gutter-x: 3.15rem}.g-sm-8,.gy-sm-8{--bs-gutter-y: 3.15rem}.g-sm-9,.gx-sm-9{--bs-gutter-x: 3.6rem}.g-sm-9,.gy-sm-9{--bs-gutter-y: 3.6rem}.g-sm-tiny,.gx-sm-tiny{--bs-gutter-x: 0.135rem}.g-sm-tiny,.gy-sm-tiny{--bs-gutter-y: 0.135rem}}@media(min-width: 768px){.col-md{flex:1 0 0%}.row-cols-md-auto>*{flex:0 0 auto;width:auto}.row-cols-md-1>*{flex:0 0 auto;width:100%}.row-cols-md-2>*{flex:0 0 auto;width:50%}.row-cols-md-3>*{flex:0 0 auto;width:33.3333333333%}.row-cols-md-4>*{flex:0 0 auto;width:25%}.row-cols-md-5>*{flex:0 0 auto;width:20%}.row-cols-md-6>*{flex:0 0 auto;width:16.6666666667%}.col-md-auto{flex:0 0 auto;width:auto}.col-md-1{flex:0 0 auto;width:8.33333333%}.col-md-2{flex:0 0 auto;width:16.66666667%}.col-md-3{flex:0 0 auto;width:25%}.col-md-4{flex:0 0 auto;width:33.33333333%}.col-md-5{flex:0 0 auto;width:41.66666667%}.col-md-6{flex:0 0 auto;width:50%}.col-md-7{flex:0 0 auto;width:58.33333333%}.col-md-8{flex:0 0 auto;width:66.66666667%}.col-md-9{flex:0 0 auto;width:75%}.col-md-10{flex:0 0 auto;width:83.33333333%}.col-md-11{flex:0 0 auto;width:91.66666667%}.col-md-12{flex:0 0 auto;width:100%}.offset-md-0{margin-left:0}.offset-md-1{margin-left:8.33333333%}.offset-md-2{margin-left:16.66666667%}.offset-md-3{margin-left:25%}.offset-md-4{margin-left:33.33333333%}.offset-md-5{margin-left:41.66666667%}.offset-md-6{margin-left:50%}.offset-md-7{margin-left:58.33333333%}.offset-md-8{margin-left:66.66666667%}.offset-md-9{margin-left:75%}.offset-md-10{margin-left:83.33333333%}.offset-md-11{margin-left:91.66666667%}.g-md-0,.gx-md-0{--bs-gutter-x: 0}.g-md-0,.gy-md-0{--bs-gutter-y: 0}.g-md-1,.gx-md-1{--bs-gutter-x: 0.225rem}.g-md-1,.gy-md-1{--bs-gutter-y: 0.225rem}.g-md-2,.gx-md-2{--bs-gutter-x: 0.45rem}.g-md-2,.gy-md-2{--bs-gutter-y: 0.45rem}.g-md-3,.gx-md-3{--bs-gutter-x: 0.9rem}.g-md-3,.gy-md-3{--bs-gutter-y: 0.9rem}.g-md-4,.gx-md-4{--bs-gutter-x: 1.35rem}.g-md-4,.gy-md-4{--bs-gutter-y: 1.35rem}.g-md-5,.gx-md-5{--bs-gutter-x: 1.8rem}.g-md-5,.gy-md-5{--bs-gutter-y: 1.8rem}.g-md-6,.gx-md-6{--bs-gutter-x: 2.25rem}.g-md-6,.gy-md-6{--bs-gutter-y: 2.25rem}.g-md-7,.gx-md-7{--bs-gutter-x: 2.7rem}.g-md-7,.gy-md-7{--bs-gutter-y: 2.7rem}.g-md-8,.gx-md-8{--bs-gutter-x: 3.15rem}.g-md-8,.gy-md-8{--bs-gutter-y: 3.15rem}.g-md-9,.gx-md-9{--bs-gutter-x: 3.6rem}.g-md-9,.gy-md-9{--bs-gutter-y: 3.6rem}.g-md-tiny,.gx-md-tiny{--bs-gutter-x: 0.135rem}.g-md-tiny,.gy-md-tiny{--bs-gutter-y: 0.135rem}}@media(min-width: 992px){.col-lg{flex:1 0 0%}.row-cols-lg-auto>*{flex:0 0 auto;width:auto}.row-cols-lg-1>*{flex:0 0 auto;width:100%}.row-cols-lg-2>*{flex:0 0 auto;width:50%}.row-cols-lg-3>*{flex:0 0 auto;width:33.3333333333%}.row-cols-lg-4>*{flex:0 0 auto;width:25%}.row-cols-lg-5>*{flex:0 0 auto;width:20%}.row-cols-lg-6>*{flex:0 0 auto;width:16.6666666667%}.col-lg-auto{flex:0 0 auto;width:auto}.col-lg-1{flex:0 0 auto;width:8.33333333%}.col-lg-2{flex:0 0 auto;width:16.66666667%}.col-lg-3{flex:0 0 auto;width:25%}.col-lg-4{flex:0 0 auto;width:33.33333333%}.col-lg-5{flex:0 0 auto;width:41.66666667%}.col-lg-6{flex:0 0 auto;width:50%}.col-lg-7{flex:0 0 auto;width:58.33333333%}.col-lg-8{flex:0 0 auto;width:66.66666667%}.col-lg-9{flex:0 0 auto;width:75%}.col-lg-10{flex:0 0 auto;width:83.33333333%}.col-lg-11{flex:0 0 auto;width:91.66666667%}.col-lg-12{flex:0 0 auto;width:100%}.offset-lg-0{margin-left:0}.offset-lg-1{margin-left:8.33333333%}.offset-lg-2{margin-left:16.66666667%}.offset-lg-3{margin-left:25%}.offset-lg-4{margin-left:33.33333333%}.offset-lg-5{margin-left:41.66666667%}.offset-lg-6{margin-left:50%}.offset-lg-7{margin-left:58.33333333%}.offset-lg-8{margin-left:66.66666667%}.offset-lg-9{margin-left:75%}.offset-lg-10{margin-left:83.33333333%}.offset-lg-11{margin-left:91.66666667%}.g-lg-0,.gx-lg-0{--bs-gutter-x: 0}.g-lg-0,.gy-lg-0{--bs-gutter-y: 0}.g-lg-1,.gx-lg-1{--bs-gutter-x: 0.225rem}.g-lg-1,.gy-lg-1{--bs-gutter-y: 0.225rem}.g-lg-2,.gx-lg-2{--bs-gutter-x: 0.45rem}.g-lg-2,.gy-lg-2{--bs-gutter-y: 0.45rem}.g-lg-3,.gx-lg-3{--bs-gutter-x: 0.9rem}.g-lg-3,.gy-lg-3{--bs-gutter-y: 0.9rem}.g-lg-4,.gx-lg-4{--bs-gutter-x: 1.35rem}.g-lg-4,.gy-lg-4{--bs-gutter-y: 1.35rem}.g-lg-5,.gx-lg-5{--bs-gutter-x: 1.8rem}.g-lg-5,.gy-lg-5{--bs-gutter-y: 1.8rem}.g-lg-6,.gx-lg-6{--bs-gutter-x: 2.25rem}.g-lg-6,.gy-lg-6{--bs-gutter-y: 2.25rem}.g-lg-7,.gx-lg-7{--bs-gutter-x: 2.7rem}.g-lg-7,.gy-lg-7{--bs-gutter-y: 2.7rem}.g-lg-8,.gx-lg-8{--bs-gutter-x: 3.15rem}.g-lg-8,.gy-lg-8{--bs-gutter-y: 3.15rem}.g-lg-9,.gx-lg-9{--bs-gutter-x: 3.6rem}.g-lg-9,.gy-lg-9{--bs-gutter-y: 3.6rem}.g-lg-tiny,.gx-lg-tiny{--bs-gutter-x: 0.135rem}.g-lg-tiny,.gy-lg-tiny{--bs-gutter-y: 0.135rem}}@media(min-width: 1200px){.col-xl{flex:1 0 0%}.row-cols-xl-auto>*{flex:0 0 auto;width:auto}.row-cols-xl-1>*{flex:0 0 auto;width:100%}.row-cols-xl-2>*{flex:0 0 auto;width:50%}.row-cols-xl-3>*{flex:0 0 auto;width:33.3333333333%}.row-cols-xl-4>*{flex:0 0 auto;width:25%}.row-cols-xl-5>*{flex:0 0 auto;width:20%}.row-cols-xl-6>*{flex:0 0 auto;width:16.6666666667%}.col-xl-auto{flex:0 0 auto;width:auto}.col-xl-1{flex:0 0 auto;width:8.33333333%}.col-xl-2{flex:0 0 auto;width:16.66666667%}.col-xl-3{flex:0 0 auto;width:25%}.col-xl-4{flex:0 0 auto;width:33.33333333%}.col-xl-5{flex:0 0 auto;width:41.66666667%}.col-xl-6{flex:0 0 auto;width:50%}.col-xl-7{flex:0 0 auto;width:58.33333333%}.col-xl-8{flex:0 0 auto;width:66.66666667%}.col-xl-9{flex:0 0 auto;width:75%}.col-xl-10{flex:0 0 auto;width:83.33333333%}.col-xl-11{flex:0 0 auto;width:91.66666667%}.col-xl-12{flex:0 0 auto;width:100%}.offset-xl-0{margin-left:0}.offset-xl-1{margin-left:8.33333333%}.offset-xl-2{margin-left:16.66666667%}.offset-xl-3{margin-left:25%}.offset-xl-4{margin-left:33.33333333%}.offset-xl-5{margin-left:41.66666667%}.offset-xl-6{margin-left:50%}.offset-xl-7{margin-left:58.33333333%}.offset-xl-8{margin-left:66.66666667%}.offset-xl-9{margin-left:75%}.offset-xl-10{margin-left:83.33333333%}.offset-xl-11{margin-left:91.66666667%}.g-xl-0,.gx-xl-0{--bs-gutter-x: 0}.g-xl-0,.gy-xl-0{--bs-gutter-y: 0}.g-xl-1,.gx-xl-1{--bs-gutter-x: 0.225rem}.g-xl-1,.gy-xl-1{--bs-gutter-y: 0.225rem}.g-xl-2,.gx-xl-2{--bs-gutter-x: 0.45rem}.g-xl-2,.gy-xl-2{--bs-gutter-y: 0.45rem}.g-xl-3,.gx-xl-3{--bs-gutter-x: 0.9rem}.g-xl-3,.gy-xl-3{--bs-gutter-y: 0.9rem}.g-xl-4,.gx-xl-4{--bs-gutter-x: 1.35rem}.g-xl-4,.gy-xl-4{--bs-gutter-y: 1.35rem}.g-xl-5,.gx-xl-5{--bs-gutter-x: 1.8rem}.g-xl-5,.gy-xl-5{--bs-gutter-y: 1.8rem}.g-xl-6,.gx-xl-6{--bs-gutter-x: 2.25rem}.g-xl-6,.gy-xl-6{--bs-gutter-y: 2.25rem}.g-xl-7,.gx-xl-7{--bs-gutter-x: 2.7rem}.g-xl-7,.gy-xl-7{--bs-gutter-y: 2.7rem}.g-xl-8,.gx-xl-8{--bs-gutter-x: 3.15rem}.g-xl-8,.gy-xl-8{--bs-gutter-y: 3.15rem}.g-xl-9,.gx-xl-9{--bs-gutter-x: 3.6rem}.g-xl-9,.gy-xl-9{--bs-gutter-y: 3.6rem}.g-xl-tiny,.gx-xl-tiny{--bs-gutter-x: 0.135rem}.g-xl-tiny,.gy-xl-tiny{--bs-gutter-y: 0.135rem}}@media(min-width: 1400px){.col-xxl{flex:1 0 0%}.row-cols-xxl-auto>*{flex:0 0 auto;width:auto}.row-cols-xxl-1>*{flex:0 0 auto;width:100%}.row-cols-xxl-2>*{flex:0 0 auto;width:50%}.row-cols-xxl-3>*{flex:0 0 auto;width:33.3333333333%}.row-cols-xxl-4>*{flex:0 0 auto;width:25%}.row-cols-xxl-5>*{flex:0 0 auto;width:20%}.row-cols-xxl-6>*{flex:0 0 auto;width:16.6666666667%}.col-xxl-auto{flex:0 0 auto;width:auto}.col-xxl-1{flex:0 0 auto;width:8.33333333%}.col-xxl-2{flex:0 0 auto;width:16.66666667%}.col-xxl-3{flex:0 0 auto;width:25%}.col-xxl-4{flex:0 0 auto;width:33.33333333%}.col-xxl-5{flex:0 0 auto;width:41.66666667%}.col-xxl-6{flex:0 0 auto;width:50%}.col-xxl-7{flex:0 0 auto;width:58.33333333%}.col-xxl-8{flex:0 0 auto;width:66.66666667%}.col-xxl-9{flex:0 0 auto;width:75%}.col-xxl-10{flex:0 0 auto;width:83.33333333%}.col-xxl-11{flex:0 0 auto;width:91.66666667%}.col-xxl-12{flex:0 0 auto;width:100%}.offset-xxl-0{margin-left:0}.offset-xxl-1{margin-left:8.33333333%}.offset-xxl-2{margin-left:16.66666667%}.offset-xxl-3{margin-left:25%}.offset-xxl-4{margin-left:33.33333333%}.offset-xxl-5{margin-left:41.66666667%}.offset-xxl-6{margin-left:50%}.offset-xxl-7{margin-left:58.33333333%}.offset-xxl-8{margin-left:66.66666667%}.offset-xxl-9{margin-left:75%}.offset-xxl-10{margin-left:83.33333333%}.offset-xxl-11{margin-left:91.66666667%}.g-xxl-0,.gx-xxl-0{--bs-gutter-x: 0}.g-xxl-0,.gy-xxl-0{--bs-gutter-y: 0}.g-xxl-1,.gx-xxl-1{--bs-gutter-x: 0.225rem}.g-xxl-1,.gy-xxl-1{--bs-gutter-y: 0.225rem}.g-xxl-2,.gx-xxl-2{--bs-gutter-x: 0.45rem}.g-xxl-2,.gy-xxl-2{--bs-gutter-y: 0.45rem}.g-xxl-3,.gx-xxl-3{--bs-gutter-x: 0.9rem}.g-xxl-3,.gy-xxl-3{--bs-gutter-y: 0.9rem}.g-xxl-4,.gx-xxl-4{--bs-gutter-x: 1.35rem}.g-xxl-4,.gy-xxl-4{--bs-gutter-y: 1.35rem}.g-xxl-5,.gx-xxl-5{--bs-gutter-x: 1.8rem}.g-xxl-5,.gy-xxl-5{--bs-gutter-y: 1.8rem}.g-xxl-6,.gx-xxl-6{--bs-gutter-x: 2.25rem}.g-xxl-6,.gy-xxl-6{--bs-gutter-y: 2.25rem}.g-xxl-7,.gx-xxl-7{--bs-gutter-x: 2.7rem}.g-xxl-7,.gy-xxl-7{--bs-gutter-y: 2.7rem}.g-xxl-8,.gx-xxl-8{--bs-gutter-x: 3.15rem}.g-xxl-8,.gy-xxl-8{--bs-gutter-y: 3.15rem}.g-xxl-9,.gx-xxl-9{--bs-gutter-x: 3.6rem}.g-xxl-9,.gy-xxl-9{--bs-gutter-y: 3.6rem}.g-xxl-tiny,.gx-xxl-tiny{--bs-gutter-x: 0.135rem}.g-xxl-tiny,.gy-xxl-tiny{--bs-gutter-y: 0.135rem}}@media(min-width: 1900px){.col-xxxl{flex:1 0 0%}.row-cols-xxxl-auto>*{flex:0 0 auto;width:auto}.row-cols-xxxl-1>*{flex:0 0 auto;width:100%}.row-cols-xxxl-2>*{flex:0 0 auto;width:50%}.row-cols-xxxl-3>*{flex:0 0 auto;width:33.3333333333%}.row-cols-xxxl-4>*{flex:0 0 auto;width:25%}.row-cols-xxxl-5>*{flex:0 0 auto;width:20%}.row-cols-xxxl-6>*{flex:0 0 auto;width:16.6666666667%}.col-xxxl-auto{flex:0 0 auto;width:auto}.col-xxxl-1{flex:0 0 auto;width:8.33333333%}.col-xxxl-2{flex:0 0 auto;width:16.66666667%}.col-xxxl-3{flex:0 0 auto;width:25%}.col-xxxl-4{flex:0 0 auto;width:33.33333333%}.col-xxxl-5{flex:0 0 auto;width:41.66666667%}.col-xxxl-6{flex:0 0 auto;width:50%}.col-xxxl-7{flex:0 0 auto;width:58.33333333%}.col-xxxl-8{flex:0 0 auto;width:66.66666667%}.col-xxxl-9{flex:0 0 auto;width:75%}.col-xxxl-10{flex:0 0 auto;width:83.33333333%}.col-xxxl-11{flex:0 0 auto;width:91.66666667%}.col-xxxl-12{flex:0 0 auto;width:100%}.offset-xxxl-0{margin-left:0}.offset-xxxl-1{margin-left:8.33333333%}.offset-xxxl-2{margin-left:16.66666667%}.offset-xxxl-3{margin-left:25%}.offset-xxxl-4{margin-left:33.33333333%}.offset-xxxl-5{margin-left:41.66666667%}.offset-xxxl-6{margin-left:50%}.offset-xxxl-7{margin-left:58.33333333%}.offset-xxxl-8{margin-left:66.66666667%}.offset-xxxl-9{margin-left:75%}.offset-xxxl-10{margin-left:83.33333333%}.offset-xxxl-11{margin-left:91.66666667%}.g-xxxl-0,.gx-xxxl-0{--bs-gutter-x: 0}.g-xxxl-0,.gy-xxxl-0{--bs-gutter-y: 0}.g-xxxl-1,.gx-xxxl-1{--bs-gutter-x: 0.225rem}.g-xxxl-1,.gy-xxxl-1{--bs-gutter-y: 0.225rem}.g-xxxl-2,.gx-xxxl-2{--bs-gutter-x: 0.45rem}.g-xxxl-2,.gy-xxxl-2{--bs-gutter-y: 0.45rem}.g-xxxl-3,.gx-xxxl-3{--bs-gutter-x: 0.9rem}.g-xxxl-3,.gy-xxxl-3{--bs-gutter-y: 0.9rem}.g-xxxl-4,.gx-xxxl-4{--bs-gutter-x: 1.35rem}.g-xxxl-4,.gy-xxxl-4{--bs-gutter-y: 1.35rem}.g-xxxl-5,.gx-xxxl-5{--bs-gutter-x: 1.8rem}.g-xxxl-5,.gy-xxxl-5{--bs-gutter-y: 1.8rem}.g-xxxl-6,.gx-xxxl-6{--bs-gutter-x: 2.25rem}.g-xxxl-6,.gy-xxxl-6{--bs-gutter-y: 2.25rem}.g-xxxl-7,.gx-xxxl-7{--bs-gutter-x: 2.7rem}.g-xxxl-7,.gy-xxxl-7{--bs-gutter-y: 2.7rem}.g-xxxl-8,.gx-xxxl-8{--bs-gutter-x: 3.15rem}.g-xxxl-8,.gy-xxxl-8{--bs-gutter-y: 3.15rem}.g-xxxl-9,.gx-xxxl-9{--bs-gutter-x: 3.6rem}.g-xxxl-9,.gy-xxxl-9{--bs-gutter-y: 3.6rem}.g-xxxl-tiny,.gx-xxxl-tiny{--bs-gutter-x: 0.135rem}.g-xxxl-tiny,.gy-xxxl-tiny{--bs-gutter-y: 0.135rem}}.table{--bs-table-color: var(--bs-body-color);--bs-table-bg: transparent;--bs-table-border-color: var(--bs-border-color);--bs-table-accent-bg: transparent;--bs-table-striped-color: var(--bs-body-color);--bs-table-striped-bg: rgba(0, 0, 0, 0.15);--bs-table-active-color: var(--bs-body-color);--bs-table-active-bg: rgba(0, 0, 0, 0.1);--bs-table-hover-color: var(--bs-body-color);--bs-table-hover-bg: rgba(0, 0, 0, 0.075);width:100%;margin-bottom:.9rem;color:var(--bs-table-color);vertical-align:top;border-color:var(--bs-table-border-color)}.table>:not(caption)>*>*{padding:.5rem .5rem;background-color:var(--bs-table-bg);border-bottom-width:1px;box-shadow:inset 0 0 0 9999px var(--bs-table-accent-bg)}.table>tbody{vertical-align:inherit}.table>thead{vertical-align:bottom}.table-group-divider{border-top:2px solid currentcolor}.caption-top{caption-side:top}.table-sm>:not(caption)>*>*{padding:.25rem .25rem}.table-bordered>:not(caption)>*{border-width:1px 0}.table-bordered>:not(caption)>*>*{border-width:0 1px}.table-borderless>:not(caption)>*>*{border-bottom-width:0}.table-borderless>:not(:first-child){border-top-width:0}.table-striped>tbody>tr:nth-of-type(odd)>*{--bs-table-accent-bg: var(--bs-table-striped-bg);color:var(--bs-table-striped-color)}.table-striped-columns>:not(caption)>tr>:nth-child(even){--bs-table-accent-bg: var(--bs-table-striped-bg);color:var(--bs-table-striped-color)}.table-active{--bs-table-accent-bg: var(--bs-table-active-bg);color:var(--bs-table-active-color)}.table-hover>tbody>tr:hover>*{--bs-table-accent-bg: var(--bs-table-hover-bg);color:var(--bs-table-hover-color)}.table-primary{--bs-table-color: #000;--bs-table-bg: #cfe2ff;--bs-table-border-color: #bacbe6;--bs-table-striped-bg: #b0c0d9;--bs-table-striped-color: #000;--bs-table-active-bg: #bacbe6;--bs-table-active-color: #000;--bs-table-hover-bg: #bfd1ec;--bs-table-hover-color: #000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-secondary{--bs-table-color: #000;--bs-table-bg: #e2e3e5;--bs-table-border-color: #cbccce;--bs-table-striped-bg: #c0c1c3;--bs-table-striped-color: #000;--bs-table-active-bg: #cbccce;--bs-table-active-color: #000;--bs-table-hover-bg: #d1d2d4;--bs-table-hover-color: #000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-success{--bs-table-color: #000;--bs-table-bg: #d1e7dd;--bs-table-border-color: #bcd0c7;--bs-table-striped-bg: #b2c4bc;--bs-table-striped-color: #000;--bs-table-active-bg: #bcd0c7;--bs-table-active-color: #000;--bs-table-hover-bg: #c1d6cc;--bs-table-hover-color: #000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-info{--bs-table-color: #000;--bs-table-bg: #cff4fc;--bs-table-border-color: #badce3;--bs-table-striped-bg: #b0cfd6;--bs-table-striped-color: #000;--bs-table-active-bg: #badce3;--bs-table-active-color: #000;--bs-table-hover-bg: #bfe2e9;--bs-table-hover-color: #000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-warning{--bs-table-color: #000;--bs-table-bg: #fff3cd;--bs-table-border-color: #e6dbb9;--bs-table-striped-bg: #d9cfae;--bs-table-striped-color: #000;--bs-table-active-bg: #e6dbb9;--bs-table-active-color: #000;--bs-table-hover-bg: #ece1be;--bs-table-hover-color: #000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-danger{--bs-table-color: #000;--bs-table-bg: #f8d7da;--bs-table-border-color: #dfc2c4;--bs-table-striped-bg: #d3b7b9;--bs-table-striped-color: #000;--bs-table-active-bg: #dfc2c4;--bs-table-active-color: #000;--bs-table-hover-bg: #e5c7ca;--bs-table-hover-color: #000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-light{--bs-table-color: #000;--bs-table-bg: #e9ecef;--bs-table-border-color: #d2d4d7;--bs-table-striped-bg: #c6c9cb;--bs-table-striped-color: #000;--bs-table-active-bg: #d2d4d7;--bs-table-active-color: #000;--bs-table-hover-bg: #d8dadd;--bs-table-hover-color: #000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-dark{--bs-table-color: #fff;--bs-table-bg: #0c1118;--bs-table-border-color: #24292f;--bs-table-striped-bg: #30353b;--bs-table-striped-color: #fff;--bs-table-active-bg: #24292f;--bs-table-active-color: #fff;--bs-table-hover-bg: #1e2329;--bs-table-hover-color: #fff;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-responsive{overflow-x:auto;-webkit-overflow-scrolling:touch}@media(max-width: 575.98px){.table-responsive-sm{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media(max-width: 767.98px){.table-responsive-md{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media(max-width: 991.98px){.table-responsive-lg{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media(max-width: 1199.98px){.table-responsive-xl{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media(max-width: 1399.98px){.table-responsive-xxl{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media(max-width: 1899.98px){.table-responsive-xxxl{overflow-x:auto;-webkit-overflow-scrolling:touch}}.form-label{margin-bottom:.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:.25rem;font-size:0.875em;color:#b2bac2}.form-control{display:block;width:100%;padding:.375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:#f7fafa;background-color:#344866;background-clip:padding-box;border:1px solid #233044;appearance:none;border-radius:.4rem;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:#f7fafa;background-color:#344866;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::placeholder{color:#b8d3d3;opacity:1}.form-control:disabled{background-color:#111822;opacity:1}.form-control::file-selector-button{padding:.375rem .75rem;margin:-0.375rem -0.75rem;margin-inline-end:.75rem;color:#f7fafa;background-color:#1f2b3d;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:#1d293a}.form-control-plaintext{display:block;width:100%;padding:.375rem 0;margin-bottom:0;line-height:1.5;color:#f7fafa;background-color:rgba(0,0,0,0);border:solid rgba(0,0,0,0);border-width:1px 0}.form-control-plaintext:focus{outline: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:.25rem .5rem;font-size:0.875rem;border-radius:.25rem}.form-control-sm::file-selector-button{padding:.25rem .5rem;margin:-0.25rem -0.5rem;margin-inline-end:.5rem}.form-control-lg{min-height:calc(1.5em + 1rem + 2px);padding:.5rem 1rem;font-size:1.25rem;border-radius:.5rem}.form-control-lg::file-selector-button{padding:.5rem 1rem;margin:-0.5rem -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{width:3rem;height:calc(1.5em + 0.75rem + 2px);padding:.375rem}.form-control-color:not(:disabled):not([readonly]){cursor:pointer}.form-control-color::-moz-color-swatch{border:0 !important;border-radius:.4rem}.form-control-color::-webkit-color-swatch{border-radius:.4rem}.form-control-color.form-control-sm{height:calc(1.5em + 0.5rem + 2px)}.form-control-color.form-control-lg{height:calc(1.5em + 1rem + 2px)}.form-select{display:block;width:100%;padding:.375rem 2.25rem .375rem .75rem;-moz-padding-start:calc(0.75rem - 3px);font-size:1rem;font-weight:400;line-height:1.5;color:#f7fafa;background-color:#344866;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right .75rem center;background-size:16px 12px;border:1px solid #233044;border-radius:.4rem;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out;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:rgba(0,0,0,0);text-shadow:0 0 0 #f7fafa}.form-select-sm{padding-top:.25rem;padding-bottom:.25rem;padding-left:.5rem;font-size:0.875rem;border-radius:.25rem}.form-select-lg{padding-top:.5rem;padding-bottom:.5rem;padding-left:1rem;font-size:1.25rem;border-radius:.5rem}.form-check{display:block;min-height:1.5rem;padding-left:1.5em;margin-bottom:.125rem}.form-check .form-check-input{float:left;margin-left:-1.5em}.form-check-reverse{padding-right:1.5em;padding-left:0;text-align:right}.form-check-reverse .form-check-input{float:right;margin-right:-1.5em;margin-left:0}.form-check-input{width:1em;height:1em;margin-top:.25em;vertical-align:top;background-color:#344866;background-repeat:no-repeat;background-position:center;background-size:contain;border:1px solid rgba(0,0,0,.25);appearance:none;print-color-adjust:exact}.form-check-input[type=checkbox]{border-radius:.25em}.form-check-input[type=radio]{border-radius:50%}.form-check-input:active{filter:brightness(90%)}.form-check-input:focus{border-color:#86b7fe;outline:0;box-shadow:0 0 0 .25rem rgba(13,110,253,.25)}.form-check-input:checked{background-color:#0d6efd;border-color:#0d6efd}.form-check-input:checked[type=checkbox]{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='m6 10 3 3 6-6'/%3e%3c/svg%3e")}.form-check-input:checked[type=radio]{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='2' fill='%23fff'/%3e%3c/svg%3e")}.form-check-input[type=checkbox]:indeterminate{background-color:#0d6efd;border-color:#0d6efd;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10h8'/%3e%3c/svg%3e")}.form-check-input:disabled{pointer-events:none;filter:none;opacity:.5}.form-check-input[disabled]~.form-check-label,.form-check-input:disabled~.form-check-label{cursor:default;opacity:.5}.form-switch{padding-left:2.5em}.form-switch .form-check-input{width:2em;margin-left:-2.5em;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba%280, 0, 0, 0.25%29'/%3e%3c/svg%3e");background-position:left center;border-radius:2em;transition:background-position .15s ease-in-out}@media(prefers-reduced-motion: reduce){.form-switch .form-check-input{transition:none}}.form-switch .form-check-input:focus{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%2386b7fe'/%3e%3c/svg%3e")}.form-switch .form-check-input:checked{background-position:right center;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e")}.form-switch.form-check-reverse{padding-right:2.5em;padding-left:0}.form-switch.form-check-reverse .form-check-input{margin-right:-2.5em;margin-left:0}.form-check-inline{display:inline-block;margin-right:1rem}.btn-check{position:absolute;clip:rect(0, 0, 0, 0);pointer-events:none}.btn-check[disabled]+.btn,.btn-check:disabled+.btn{pointer-events:none;filter:none;opacity:.65}.form-range{width:100%;height:1.5rem;padding:0;background-color:rgba(0,0,0,0);appearance:none}.form-range:focus{outline:0}.form-range:focus::-webkit-slider-thumb{box-shadow:0 0 0 1px #1a2433,0 0 0 .25rem rgba(13,110,253,.25)}.form-range:focus::-moz-range-thumb{box-shadow:0 0 0 1px #1a2433,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:-0.25rem;background-color:#0d6efd;border:0;border-radius:1rem;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;appearance:none}@media(prefers-reduced-motion: reduce){.form-range::-webkit-slider-thumb{transition:none}}.form-range::-webkit-slider-thumb:active{background-color:#b6d4fe}.form-range::-webkit-slider-runnable-track{width:100%;height:.5rem;color:rgba(0,0,0,0);cursor:pointer;background-color:#dee2e6;border-color:rgba(0,0,0,0);border-radius:1rem}.form-range::-moz-range-thumb{width:1rem;height:1rem;background-color:#0d6efd;border:0;border-radius:1rem;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;appearance:none}@media(prefers-reduced-motion: reduce){.form-range::-moz-range-thumb{transition:none}}.form-range::-moz-range-thumb:active{background-color:#b6d4fe}.form-range::-moz-range-track{width:100%;height:.5rem;color:rgba(0,0,0,0);cursor:pointer;background-color:#dee2e6;border-color:rgba(0,0,0,0);border-radius:1rem}.form-range:disabled{pointer-events:none}.form-range:disabled::-webkit-slider-thumb{background-color:#adb5bd}.form-range:disabled::-moz-range-thumb{background-color:#adb5bd}.form-floating{position:relative}.form-floating>.form-control,.form-floating>.form-control-plaintext,.form-floating>.form-select{height:calc(3.5rem + 2px);line-height:1.25}.form-floating>label{position:absolute;top:0;left:0;width:100%;height:100%;padding:1rem .75rem;overflow:hidden;text-align:start;text-overflow:ellipsis;white-space:nowrap;pointer-events:none;border:1px solid rgba(0,0,0,0);transform-origin:0 0;transition:opacity .1s ease-in-out,transform .1s ease-in-out}@media(prefers-reduced-motion: reduce){.form-floating>label{transition:none}}.form-floating>.form-control,.form-floating>.form-control-plaintext{padding:1rem .75rem}.form-floating>.form-control::placeholder,.form-floating>.form-control-plaintext::placeholder{color:rgba(0,0,0,0)}.form-floating>.form-control:focus,.form-floating>.form-control:not(:placeholder-shown),.form-floating>.form-control-plaintext:focus,.form-floating>.form-control-plaintext:not(:placeholder-shown){padding-top:1.625rem;padding-bottom:.625rem}.form-floating>.form-control:-webkit-autofill,.form-floating>.form-control-plaintext:-webkit-autofill{padding-top:1.625rem;padding-bottom:.625rem}.form-floating>.form-select{padding-top:1.625rem;padding-bottom:.625rem}.form-floating>.form-control:focus~label,.form-floating>.form-control:not(:placeholder-shown)~label,.form-floating>.form-control-plaintext~label,.form-floating>.form-select~label{opacity:.65;transform:scale(0.85) translateY(-0.5rem) translateX(0.15rem)}.form-floating>.form-control:-webkit-autofill~label{opacity:.65;transform:scale(0.85) translateY(-0.5rem) translateX(0.15rem)}.form-floating>.form-control-plaintext~label{border-width:1px 0}.input-group{position:relative;display:flex;flex-wrap:wrap;align-items:stretch;width:100%}.input-group>.form-control,.input-group>.form-select,.input-group>.form-floating{position:relative;flex:1 1 auto;width:1%;min-width:0}.input-group>.form-control:focus,.input-group>.form-select:focus,.input-group>.form-floating:focus-within{z-index:5}.input-group .btn{position:relative;z-index:2}.input-group .btn:focus{z-index:5}.input-group-text{display:flex;align-items:center;padding:.375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:#f7fafa;text-align:center;white-space:nowrap;background-color:#1f2b3d;border:1px solid #233044;border-radius:.4rem}.input-group-lg>.form-control,.input-group-lg>.form-select,.input-group-lg>.input-group-text,.input-group-lg>.btn{padding:.5rem 1rem;font-size:1.25rem;border-radius:.5rem}.input-group-sm>.form-control,.input-group-sm>.form-select,.input-group-sm>.input-group-text,.input-group-sm>.btn{padding:.25rem .5rem;font-size:0.875rem;border-radius:.25rem}.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):not(.form-floating),.input-group:not(.has-validation)>.dropdown-toggle:nth-last-child(n+3),.input-group:not(.has-validation)>.form-floating:not(:last-child)>.form-control,.input-group:not(.has-validation)>.form-floating:not(:last-child)>.form-select{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):not(.form-floating),.input-group.has-validation>.dropdown-toggle:nth-last-child(n+4),.input-group.has-validation>.form-floating:nth-last-child(n+3)>.form-control,.input-group.has-validation>.form-floating:nth-last-child(n+3)>.form-select{border-top-right-radius:0;border-bottom-right-radius:0}.input-group>:not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback){margin-left:-1px;border-top-left-radius:0;border-bottom-left-radius:0}.input-group>.form-floating:not(:first-child)>.form-control,.input-group>.form-floating:not(:first-child)>.form-select{border-top-left-radius:0;border-bottom-left-radius:0}.valid-feedback{display:none;width:100%;margin-top:.25rem;font-size:0.875em;color:#198754}.valid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.4rem .8rem;margin-top:.1rem;font-size:0.875rem;color:#fff;background-color:#198754;border-radius:.4rem}.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.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right calc(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 .25rem rgba(25,135,84,.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 5 6 6 6-6'/%3e%3c/svg%3e"),url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23198754' d='M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");background-position:right .75rem center,center right 2.25rem;background-size:16px 12px,calc(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 .25rem rgba(25,135,84,.25)}.was-validated .form-control-color:valid,.form-control-color.is-valid{width:calc(3rem + calc(1.5em + 0.75rem))}.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 .25rem rgba(25,135,84,.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:.5em}.was-validated .input-group>.form-control:not(:focus):valid,.input-group>.form-control:not(:focus).is-valid,.was-validated .input-group>.form-select:not(:focus):valid,.input-group>.form-select:not(:focus).is-valid,.was-validated .input-group>.form-floating:not(:focus-within):valid,.input-group>.form-floating:not(:focus-within).is-valid{z-index:3}.invalid-feedback{display:none;width:100%;margin-top:.25rem;font-size:0.875em;color:#dc3545}.invalid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.4rem .8rem;margin-top:.1rem;font-size:0.875rem;color:#fff;background-color:#dc3545;border-radius:.4rem}.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 .25rem rgba(220,53,69,.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 5 6 6 6-6'/%3e%3c/svg%3e"),url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");background-position:right .75rem center,center right 2.25rem;background-size:16px 12px,calc(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 .25rem rgba(220,53,69,.25)}.was-validated .form-control-color:invalid,.form-control-color.is-invalid{width:calc(3rem + calc(1.5em + 0.75rem))}.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 .25rem rgba(220,53,69,.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:.5em}.was-validated .input-group>.form-control:not(:focus):invalid,.input-group>.form-control:not(:focus).is-invalid,.was-validated .input-group>.form-select:not(:focus):invalid,.input-group>.form-select:not(:focus).is-invalid,.was-validated .input-group>.form-floating:not(:focus-within):invalid,.input-group>.form-floating:not(:focus-within).is-invalid{z-index:4}.btn{--bs-btn-padding-x: 0.75rem;--bs-btn-padding-y: 0.375rem;--bs-btn-font-family: ;--bs-btn-font-size:1rem;--bs-btn-font-weight: 400;--bs-btn-line-height: 1.5;--bs-btn-color: #f7fafa;--bs-btn-bg: transparent;--bs-btn-border-width: 1px;--bs-btn-border-color: transparent;--bs-btn-border-radius: 0.4rem;--bs-btn-hover-border-color: transparent;--bs-btn-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);--bs-btn-disabled-opacity: 0.65;--bs-btn-focus-box-shadow: 0 0 0 0.25rem rgba(var(--bs-btn-focus-shadow-rgb), .5);display:inline-block;padding:var(--bs-btn-padding-y) var(--bs-btn-padding-x);font-family:var(--bs-btn-font-family);font-size:var(--bs-btn-font-size);font-weight:var(--bs-btn-font-weight);line-height:var(--bs-btn-line-height);color:var(--bs-btn-color);text-align:center;vertical-align:middle;cursor:pointer;user-select:none;border:var(--bs-btn-border-width) solid var(--bs-btn-border-color);border-radius:var(--bs-btn-border-radius);background-color:var(--bs-btn-bg);transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media(prefers-reduced-motion: reduce){.btn{transition:none}}.btn:hover{color:var(--bs-btn-hover-color);text-decoration:none;background-color:var(--bs-btn-hover-bg);border-color:var(--bs-btn-hover-border-color)}.btn-check+.btn:hover{color:var(--bs-btn-color);background-color:var(--bs-btn-bg);border-color:var(--bs-btn-border-color)}.btn:focus-visible{color:var(--bs-btn-hover-color);background-color:var(--bs-btn-hover-bg);border-color:var(--bs-btn-hover-border-color);outline:0;box-shadow:var(--bs-btn-focus-box-shadow)}.btn-check:focus-visible+.btn{border-color:var(--bs-btn-hover-border-color);outline:0;box-shadow:var(--bs-btn-focus-box-shadow)}.btn-check:checked+.btn,:not(.btn-check)+.btn:active,.btn:first-child:active,.btn.active,.btn.show{color:var(--bs-btn-active-color);background-color:var(--bs-btn-active-bg);border-color:var(--bs-btn-active-border-color)}.btn-check:checked+.btn:focus-visible,:not(.btn-check)+.btn:active:focus-visible,.btn:first-child:active:focus-visible,.btn.active:focus-visible,.btn.show:focus-visible{box-shadow:var(--bs-btn-focus-box-shadow)}.btn:disabled,.btn.disabled,fieldset:disabled .btn{color:var(--bs-btn-disabled-color);pointer-events:none;background-color:var(--bs-btn-disabled-bg);border-color:var(--bs-btn-disabled-border-color);opacity:var(--bs-btn-disabled-opacity)}.btn-primary{--bs-btn-color: #fff;--bs-btn-bg: #0d6efd;--bs-btn-border-color: #0d6efd;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #0b5ed7;--bs-btn-hover-border-color: #0a58ca;--bs-btn-focus-shadow-rgb: 49, 132, 253;--bs-btn-active-color: #fff;--bs-btn-active-bg: #0a58ca;--bs-btn-active-border-color: #0a53be;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color: #fff;--bs-btn-disabled-bg: #0d6efd;--bs-btn-disabled-border-color: #0d6efd}.btn-secondary{--bs-btn-color: #fff;--bs-btn-bg: #6c757d;--bs-btn-border-color: #6c757d;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #5c636a;--bs-btn-hover-border-color: #565e64;--bs-btn-focus-shadow-rgb: 130, 138, 145;--bs-btn-active-color: #fff;--bs-btn-active-bg: #565e64;--bs-btn-active-border-color: #51585e;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color: #fff;--bs-btn-disabled-bg: #6c757d;--bs-btn-disabled-border-color: #6c757d}.btn-success{--bs-btn-color: #fff;--bs-btn-bg: #198754;--bs-btn-border-color: #198754;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #157347;--bs-btn-hover-border-color: #146c43;--bs-btn-focus-shadow-rgb: 60, 153, 110;--bs-btn-active-color: #fff;--bs-btn-active-bg: #146c43;--bs-btn-active-border-color: #13653f;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color: #fff;--bs-btn-disabled-bg: #198754;--bs-btn-disabled-border-color: #198754}.btn-info{--bs-btn-color: #000;--bs-btn-bg: #0dcaf0;--bs-btn-border-color: #0dcaf0;--bs-btn-hover-color: #000;--bs-btn-hover-bg: #31d2f2;--bs-btn-hover-border-color: #25cff2;--bs-btn-focus-shadow-rgb: 11, 172, 204;--bs-btn-active-color: #000;--bs-btn-active-bg: #3dd5f3;--bs-btn-active-border-color: #25cff2;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color: #000;--bs-btn-disabled-bg: #0dcaf0;--bs-btn-disabled-border-color: #0dcaf0}.btn-warning{--bs-btn-color: #000;--bs-btn-bg: #ffc107;--bs-btn-border-color: #ffc107;--bs-btn-hover-color: #000;--bs-btn-hover-bg: #ffca2c;--bs-btn-hover-border-color: #ffc720;--bs-btn-focus-shadow-rgb: 217, 164, 6;--bs-btn-active-color: #000;--bs-btn-active-bg: #ffcd39;--bs-btn-active-border-color: #ffc720;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color: #000;--bs-btn-disabled-bg: #ffc107;--bs-btn-disabled-border-color: #ffc107}.btn-danger{--bs-btn-color: #fff;--bs-btn-bg: #dc3545;--bs-btn-border-color: #dc3545;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #bb2d3b;--bs-btn-hover-border-color: #b02a37;--bs-btn-focus-shadow-rgb: 225, 83, 97;--bs-btn-active-color: #fff;--bs-btn-active-bg: #b02a37;--bs-btn-active-border-color: #a52834;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color: #fff;--bs-btn-disabled-bg: #dc3545;--bs-btn-disabled-border-color: #dc3545}.btn-light{--bs-btn-color: #000;--bs-btn-bg: #e9ecef;--bs-btn-border-color: #e9ecef;--bs-btn-hover-color: #000;--bs-btn-hover-bg: #c6c9cb;--bs-btn-hover-border-color: #babdbf;--bs-btn-focus-shadow-rgb: 198, 201, 203;--bs-btn-active-color: #000;--bs-btn-active-bg: #babdbf;--bs-btn-active-border-color: #afb1b3;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color: #000;--bs-btn-disabled-bg: #e9ecef;--bs-btn-disabled-border-color: #e9ecef}.btn-dark{--bs-btn-color: #fff;--bs-btn-bg: #0c1118;--bs-btn-border-color: #0c1118;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #30353b;--bs-btn-hover-border-color: #24292f;--bs-btn-focus-shadow-rgb: 48, 53, 59;--bs-btn-active-color: #fff;--bs-btn-active-bg: #3d4146;--bs-btn-active-border-color: #24292f;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color: #fff;--bs-btn-disabled-bg: #0c1118;--bs-btn-disabled-border-color: #0c1118}.btn-outline-primary{--bs-btn-color: #0d6efd;--bs-btn-border-color: #0d6efd;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #0d6efd;--bs-btn-hover-border-color: #0d6efd;--bs-btn-focus-shadow-rgb: 13, 110, 253;--bs-btn-active-color: #fff;--bs-btn-active-bg: #0d6efd;--bs-btn-active-border-color: #0d6efd;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color: #0d6efd;--bs-btn-disabled-bg: transparent;--bs-btn-disabled-border-color: #0d6efd;--bs-gradient: none}.btn-outline-secondary{--bs-btn-color: #6c757d;--bs-btn-border-color: #6c757d;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #6c757d;--bs-btn-hover-border-color: #6c757d;--bs-btn-focus-shadow-rgb: 108, 117, 125;--bs-btn-active-color: #fff;--bs-btn-active-bg: #6c757d;--bs-btn-active-border-color: #6c757d;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color: #6c757d;--bs-btn-disabled-bg: transparent;--bs-btn-disabled-border-color: #6c757d;--bs-gradient: none}.btn-outline-success{--bs-btn-color: #198754;--bs-btn-border-color: #198754;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #198754;--bs-btn-hover-border-color: #198754;--bs-btn-focus-shadow-rgb: 25, 135, 84;--bs-btn-active-color: #fff;--bs-btn-active-bg: #198754;--bs-btn-active-border-color: #198754;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color: #198754;--bs-btn-disabled-bg: transparent;--bs-btn-disabled-border-color: #198754;--bs-gradient: none}.btn-outline-info{--bs-btn-color: #0dcaf0;--bs-btn-border-color: #0dcaf0;--bs-btn-hover-color: #000;--bs-btn-hover-bg: #0dcaf0;--bs-btn-hover-border-color: #0dcaf0;--bs-btn-focus-shadow-rgb: 13, 202, 240;--bs-btn-active-color: #000;--bs-btn-active-bg: #0dcaf0;--bs-btn-active-border-color: #0dcaf0;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color: #0dcaf0;--bs-btn-disabled-bg: transparent;--bs-btn-disabled-border-color: #0dcaf0;--bs-gradient: none}.btn-outline-warning{--bs-btn-color: #ffc107;--bs-btn-border-color: #ffc107;--bs-btn-hover-color: #000;--bs-btn-hover-bg: #ffc107;--bs-btn-hover-border-color: #ffc107;--bs-btn-focus-shadow-rgb: 255, 193, 7;--bs-btn-active-color: #000;--bs-btn-active-bg: #ffc107;--bs-btn-active-border-color: #ffc107;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color: #ffc107;--bs-btn-disabled-bg: transparent;--bs-btn-disabled-border-color: #ffc107;--bs-gradient: none}.btn-outline-danger{--bs-btn-color: #dc3545;--bs-btn-border-color: #dc3545;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #dc3545;--bs-btn-hover-border-color: #dc3545;--bs-btn-focus-shadow-rgb: 220, 53, 69;--bs-btn-active-color: #fff;--bs-btn-active-bg: #dc3545;--bs-btn-active-border-color: #dc3545;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color: #dc3545;--bs-btn-disabled-bg: transparent;--bs-btn-disabled-border-color: #dc3545;--bs-gradient: none}.btn-outline-light{--bs-btn-color: #e9ecef;--bs-btn-border-color: #e9ecef;--bs-btn-hover-color: #000;--bs-btn-hover-bg: #e9ecef;--bs-btn-hover-border-color: #e9ecef;--bs-btn-focus-shadow-rgb: 233, 236, 239;--bs-btn-active-color: #000;--bs-btn-active-bg: #e9ecef;--bs-btn-active-border-color: #e9ecef;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color: #e9ecef;--bs-btn-disabled-bg: transparent;--bs-btn-disabled-border-color: #e9ecef;--bs-gradient: none}.btn-outline-dark{--bs-btn-color: #0c1118;--bs-btn-border-color: #0c1118;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #0c1118;--bs-btn-hover-border-color: #0c1118;--bs-btn-focus-shadow-rgb: 12, 17, 24;--bs-btn-active-color: #fff;--bs-btn-active-bg: #0c1118;--bs-btn-active-border-color: #0c1118;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color: #0c1118;--bs-btn-disabled-bg: transparent;--bs-btn-disabled-border-color: #0c1118;--bs-gradient: none}.btn-link{--bs-btn-font-weight: 400;--bs-btn-color: var(--bs-link-color);--bs-btn-bg: transparent;--bs-btn-border-color: transparent;--bs-btn-hover-color: var(--bs-link-hover-color);--bs-btn-hover-border-color: transparent;--bs-btn-active-color: var(--bs-link-hover-color);--bs-btn-active-border-color: transparent;--bs-btn-disabled-color: #6c757d;--bs-btn-disabled-border-color: transparent;--bs-btn-box-shadow: none;--bs-btn-focus-shadow-rgb: 49, 132, 253;text-decoration:none}.btn-link:hover,.btn-link:focus-visible{text-decoration:underline}.btn-link:focus-visible{color:var(--bs-btn-color)}.btn-link:hover{color:var(--bs-btn-hover-color)}.btn-lg,.btn-group-lg>.btn{--bs-btn-padding-y: 0.5rem;--bs-btn-padding-x: 1rem;--bs-btn-font-size:1.25rem;--bs-btn-border-radius: 0.5rem}.btn-sm,.btn-group-sm>.btn{--bs-btn-padding-y: 0.2rem;--bs-btn-padding-x: 0.5rem;--bs-btn-font-size:0.875rem;--bs-btn-border-radius: 0.25rem}.fade{transition:opacity .15s linear}@media(prefers-reduced-motion: reduce){.fade{transition:none}}.fade:not(.show){opacity:0}.collapse:not(.show){display:none}.collapsing{height:0;overflow:hidden;transition:height .35s ease}@media(prefers-reduced-motion: reduce){.collapsing{transition:none}}.collapsing.collapse-horizontal{width:0;height:auto;transition:width .35s ease}@media(prefers-reduced-motion: reduce){.collapsing.collapse-horizontal{transition:none}}.dropup,.dropend,.dropdown,.dropstart,.dropup-center,.dropdown-center{position:relative}.dropdown-toggle{white-space:nowrap}.dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid;border-right:.3em solid rgba(0,0,0,0);border-bottom:0;border-left:.3em solid rgba(0,0,0,0)}.dropdown-toggle:empty::after{margin-left:0}.dropdown-menu{--bs-dropdown-zindex: 1000;--bs-dropdown-min-width: 11rem;--bs-dropdown-padding-x: 0;--bs-dropdown-padding-y: 0.5rem;--bs-dropdown-spacer: 0.125rem;--bs-dropdown-font-size:1rem;--bs-dropdown-color: #f7fafa;--bs-dropdown-bg: #2b3c55;--bs-dropdown-border-color: var(--bs-border-color-translucent);--bs-dropdown-border-radius: 0.4rem;--bs-dropdown-border-width: 1px;--bs-dropdown-inner-border-radius: calc(0.4rem - 1px);--bs-dropdown-divider-bg: var(--bs-border-color-translucent);--bs-dropdown-divider-margin-y: 0.45rem;--bs-dropdown-box-shadow: 0 1.5rem 1rem rgba(0, 0, 0, 0.35);--bs-dropdown-link-color: #f7fafa;--bs-dropdown-link-hover-color: #f7fafa;--bs-dropdown-link-hover-bg: #3c5477;--bs-dropdown-link-active-color: #344866;--bs-dropdown-link-active-bg: #344866;--bs-dropdown-link-disabled-color: #adb5bd;--bs-dropdown-item-padding-x: 0.9rem;--bs-dropdown-item-padding-y: 0.225rem;--bs-dropdown-header-color: #a9c9c9;--bs-dropdown-header-padding-x: 0.9rem;--bs-dropdown-header-padding-y: 0.5rem;position:absolute;z-index:var(--bs-dropdown-zindex);display:none;min-width:var(--bs-dropdown-min-width);padding:var(--bs-dropdown-padding-y) var(--bs-dropdown-padding-x);margin:0;font-size:var(--bs-dropdown-font-size);color:var(--bs-dropdown-color);text-align:left;list-style:none;background-color:var(--bs-dropdown-bg);background-clip:padding-box;border:var(--bs-dropdown-border-width) solid var(--bs-dropdown-border-color);border-radius:var(--bs-dropdown-border-radius)}.dropdown-menu[data-bs-popper]{top:100%;left:0;margin-top:var(--bs-dropdown-spacer)}.dropdown-menu-start{--bs-position: start}.dropdown-menu-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-end{--bs-position: end}.dropdown-menu-end[data-bs-popper]{right:0;left:auto}@media(min-width: 576px){.dropdown-menu-sm-start{--bs-position: start}.dropdown-menu-sm-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-sm-end{--bs-position: end}.dropdown-menu-sm-end[data-bs-popper]{right:0;left:auto}}@media(min-width: 768px){.dropdown-menu-md-start{--bs-position: start}.dropdown-menu-md-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-md-end{--bs-position: end}.dropdown-menu-md-end[data-bs-popper]{right:0;left:auto}}@media(min-width: 992px){.dropdown-menu-lg-start{--bs-position: start}.dropdown-menu-lg-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-lg-end{--bs-position: end}.dropdown-menu-lg-end[data-bs-popper]{right:0;left:auto}}@media(min-width: 1200px){.dropdown-menu-xl-start{--bs-position: start}.dropdown-menu-xl-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-xl-end{--bs-position: end}.dropdown-menu-xl-end[data-bs-popper]{right:0;left:auto}}@media(min-width: 1400px){.dropdown-menu-xxl-start{--bs-position: start}.dropdown-menu-xxl-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-xxl-end{--bs-position: end}.dropdown-menu-xxl-end[data-bs-popper]{right:0;left:auto}}@media(min-width: 1900px){.dropdown-menu-xxxl-start{--bs-position: start}.dropdown-menu-xxxl-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-xxxl-end{--bs-position: end}.dropdown-menu-xxxl-end[data-bs-popper]{right:0;left:auto}}.dropup .dropdown-menu[data-bs-popper]{top:auto;bottom:100%;margin-top:0;margin-bottom:var(--bs-dropdown-spacer)}.dropup .dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:0;border-right:.3em solid rgba(0,0,0,0);border-bottom:.3em solid;border-left:.3em solid rgba(0,0,0,0)}.dropup .dropdown-toggle:empty::after{margin-left:0}.dropend .dropdown-menu[data-bs-popper]{top:0;right:auto;left:100%;margin-top:0;margin-left:var(--bs-dropdown-spacer)}.dropend .dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid rgba(0,0,0,0);border-right:0;border-bottom:.3em solid rgba(0,0,0,0);border-left:.3em solid}.dropend .dropdown-toggle:empty::after{margin-left:0}.dropend .dropdown-toggle::after{vertical-align:0}.dropstart .dropdown-menu[data-bs-popper]{top:0;right:100%;left:auto;margin-top:0;margin-right:var(--bs-dropdown-spacer)}.dropstart .dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:""}.dropstart .dropdown-toggle::after{display:none}.dropstart .dropdown-toggle::before{display:inline-block;margin-right:.255em;vertical-align:.255em;content:"";border-top:.3em solid rgba(0,0,0,0);border-right:.3em solid;border-bottom:.3em solid rgba(0,0,0,0)}.dropstart .dropdown-toggle:empty::after{margin-left:0}.dropstart .dropdown-toggle::before{vertical-align:0}.dropdown-divider{height:0;margin:var(--bs-dropdown-divider-margin-y) 0;overflow:hidden;border-top:1px solid var(--bs-dropdown-divider-bg);opacity:1}.dropdown-item{display:block;width:100%;padding:var(--bs-dropdown-item-padding-y) var(--bs-dropdown-item-padding-x);clear:both;font-weight:400;color:var(--bs-dropdown-link-color);text-align:inherit;white-space:nowrap;background-color:rgba(0,0,0,0);border:0}.dropdown-item:hover,.dropdown-item:focus{color:var(--bs-dropdown-link-hover-color);text-decoration:none;background-color:var(--bs-dropdown-link-hover-bg)}.dropdown-item.active,.dropdown-item:active{color:var(--bs-dropdown-link-active-color);text-decoration:none;background-color:var(--bs-dropdown-link-active-bg)}.dropdown-item.disabled,.dropdown-item:disabled{color:var(--bs-dropdown-link-disabled-color);pointer-events:none;background-color:rgba(0,0,0,0)}.dropdown-menu.show{display:block}.dropdown-header{display:block;padding:var(--bs-dropdown-header-padding-y) var(--bs-dropdown-header-padding-x);margin-bottom:0;font-size:0.875rem;color:var(--bs-dropdown-header-color);white-space:nowrap}.dropdown-item-text{display:block;padding:var(--bs-dropdown-item-padding-y) var(--bs-dropdown-item-padding-x);color:var(--bs-dropdown-link-color)}.dropdown-menu-dark{--bs-dropdown-color: #dee2e6;--bs-dropdown-bg: #ff0;--bs-dropdown-border-color: var(--bs-border-color-translucent);--bs-dropdown-box-shadow: ;--bs-dropdown-link-color: #dee2e6;--bs-dropdown-link-hover-color: #fff;--bs-dropdown-divider-bg: var(--bs-border-color-translucent);--bs-dropdown-link-hover-bg: #0ff;--bs-dropdown-link-active-color: #344866;--bs-dropdown-link-active-bg: #f0f;--bs-dropdown-link-disabled-color: #adb5bd;--bs-dropdown-header-color: #adb5bd}.btn-group,.btn-group-vertical{position:relative;display:inline-flex;vertical-align:middle}.btn-group>.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{border-radius:.4rem}.btn-group>:not(.btn-check:first-child)+.btn,.btn-group>.btn-group:not(:first-child){margin-left:-1px}.btn-group>.btn:not(:last-child):not(.dropdown-toggle),.btn-group>.btn.dropdown-toggle-split:first-child,.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:.5625rem;padding-left:.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:.375rem;padding-left:.375rem}.btn-lg+.dropdown-toggle-split,.btn-group-lg>.btn+.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: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{--bs-nav-link-padding-x: 1rem;--bs-nav-link-padding-y: 0.5rem;--bs-nav-link-font-weight: ;--bs-nav-link-color: var(--bs-link-color);--bs-nav-link-hover-color: var(--bs-link-hover-color);--bs-nav-link-disabled-color: #6c757d;display:flex;flex-wrap:wrap;padding-left:0;margin-bottom:0;list-style:none}.nav-link{display:block;padding:var(--bs-nav-link-padding-y) var(--bs-nav-link-padding-x);font-size:var(--bs-nav-link-font-size);font-weight:var(--bs-nav-link-font-weight);color:var(--bs-nav-link-color);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:hover,.nav-link:focus{color:var(--bs-nav-link-hover-color);text-decoration:none}.nav-link.disabled{color:var(--bs-nav-link-disabled-color);pointer-events:none;cursor:default}.nav-tabs{--bs-nav-tabs-border-width: 1px;--bs-nav-tabs-border-color: #dee2e6;--bs-nav-tabs-border-radius: 0.4rem;--bs-nav-tabs-link-hover-border-color: #e9ecef #e9ecef #dee2e6;--bs-nav-tabs-link-active-color: #e7f0f0;--bs-nav-tabs-link-active-bg: #1a2433;--bs-nav-tabs-link-active-border-color: #ced4da #ced4da #1a2433 !important;border-bottom:var(--bs-nav-tabs-border-width) solid var(--bs-nav-tabs-border-color)}.nav-tabs .nav-link{margin-bottom:calc(-1*var(--bs-nav-tabs-border-width));background:none;border:var(--bs-nav-tabs-border-width) solid rgba(0,0,0,0);border-top-left-radius:var(--bs-nav-tabs-border-radius);border-top-right-radius:var(--bs-nav-tabs-border-radius)}.nav-tabs .nav-link:hover,.nav-tabs .nav-link:focus{isolation:isolate;border-color:var(--bs-nav-tabs-link-hover-border-color)}.nav-tabs .nav-link.disabled,.nav-tabs .nav-link:disabled{color:var(--bs-nav-link-disabled-color);background-color:rgba(0,0,0,0);border-color:rgba(0,0,0,0)}.nav-tabs .nav-link.active,.nav-tabs .nav-item.show .nav-link{color:var(--bs-nav-tabs-link-active-color);background-color:var(--bs-nav-tabs-link-active-bg);border-color:var(--bs-nav-tabs-link-active-border-color)}.nav-tabs .dropdown-menu{margin-top:calc(-1*var(--bs-nav-tabs-border-width));border-top-left-radius:0;border-top-right-radius:0}.nav-pills{--bs-nav-pills-border-radius: 0.4rem;--bs-nav-pills-link-active-color: #fff;--bs-nav-pills-link-active-bg: #0d6efd}.nav-pills .nav-link{background:none;border:0;border-radius:var(--bs-nav-pills-border-radius)}.nav-pills .nav-link:disabled{color:var(--bs-nav-link-disabled-color);background-color:rgba(0,0,0,0);border-color:rgba(0,0,0,0)}.nav-pills .nav-link.active,.nav-pills .show>.nav-link{color:var(--bs-nav-pills-link-active-color);background-color:var(--bs-nav-pills-link-active-bg)}.nav-fill>.nav-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{--bs-navbar-padding-x: 1rem;--bs-navbar-padding-y: 1rem;--bs-navbar-color: rgba(0, 0, 0, 0.55);--bs-navbar-hover-color: rgba(0, 0, 0, 0.7);--bs-navbar-disabled-color: rgba(0, 0, 0, 0.3);--bs-navbar-active-color: rgba(0, 0, 0, 0.9);--bs-navbar-brand-padding-y: 0.125rem;--bs-navbar-brand-margin-end: 1rem;--bs-navbar-brand-font-size: 1.5rem;--bs-navbar-brand-color: rgba(0, 0, 0, 0.9);--bs-navbar-brand-hover-color: rgba(0, 0, 0, 0.9);--bs-navbar-nav-link-padding-x: 0.5rem;--bs-navbar-toggler-padding-y: 0.25rem;--bs-navbar-toggler-padding-x: 0.75rem;--bs-navbar-toggler-font-size: 1.25rem;--bs-navbar-toggler-icon-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%280, 0, 0, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");--bs-navbar-toggler-border-color: rgba(0, 0, 0, 0.1);--bs-navbar-toggler-border-radius: 0.4rem;--bs-navbar-toggler-focus-width: 0.25rem;--bs-navbar-toggler-transition: box-shadow 0.15s ease-in-out;position:relative;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;padding:var(--bs-navbar-padding-y) var(--bs-navbar-padding-x)}.navbar>.container,.navbar>.container-fluid,.navbar>.container-sm,.navbar>.container-md,.navbar>.container-lg,.navbar>.container-xl,.navbar>.container-xxl,.navbar>.container-xxxl{display:flex;flex-wrap:inherit;align-items:center;justify-content:space-between}.navbar-brand{padding-top:var(--bs-navbar-brand-padding-y);padding-bottom:var(--bs-navbar-brand-padding-y);margin-right:var(--bs-navbar-brand-margin-end);font-size:var(--bs-navbar-brand-font-size);color:var(--bs-navbar-brand-color);white-space:nowrap}.navbar-brand:hover,.navbar-brand:focus{color:var(--bs-navbar-brand-hover-color);text-decoration:none}.navbar-nav{--bs-nav-link-padding-x: 0;--bs-nav-link-padding-y: 0.5rem;--bs-nav-link-font-weight: ;--bs-nav-link-color: var(--bs-navbar-color);--bs-nav-link-hover-color: var(--bs-navbar-hover-color);--bs-nav-link-disabled-color: var(--bs-navbar-disabled-color);display:flex;flex-direction:column;padding-left:0;margin-bottom:0;list-style:none}.navbar-nav .show>.nav-link,.navbar-nav .nav-link.active{color:var(--bs-navbar-active-color)}.navbar-nav .dropdown-menu{position:static}.navbar-text{padding-top:.5rem;padding-bottom:.5rem;color:var(--bs-navbar-color)}.navbar-text a,.navbar-text a:hover,.navbar-text a:focus{color:var(--bs-navbar-active-color)}.navbar-collapse{flex-basis:100%;flex-grow:1;align-items:center}.navbar-toggler{padding:var(--bs-navbar-toggler-padding-y) var(--bs-navbar-toggler-padding-x);font-size:var(--bs-navbar-toggler-font-size);line-height:1;color:var(--bs-navbar-color);background-color:rgba(0,0,0,0);border:var(--bs-border-width) solid var(--bs-navbar-toggler-border-color);border-radius:var(--bs-navbar-toggler-border-radius);transition:var(--bs-navbar-toggler-transition)}@media(prefers-reduced-motion: reduce){.navbar-toggler{transition:none}}.navbar-toggler:hover{text-decoration:none}.navbar-toggler:focus{text-decoration:none;outline:0;box-shadow:0 0 0 var(--bs-navbar-toggler-focus-width)}.navbar-toggler-icon{display:inline-block;width:1.5em;height:1.5em;vertical-align:middle;background-image:var(--bs-navbar-toggler-icon-bg);background-repeat:no-repeat;background-position:center;background-size:100%}.navbar-nav-scroll{max-height:var(--bs-scroll-height, 75vh);overflow-y:auto}@media(min-width: 576px){.navbar-expand-sm{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand-sm .navbar-nav{flex-direction:row}.navbar-expand-sm .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-sm .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand-sm .navbar-nav-scroll{overflow:visible}.navbar-expand-sm .navbar-collapse{display:flex !important;flex-basis:auto}.navbar-expand-sm .navbar-toggler{display:none}.navbar-expand-sm .offcanvas{position:static;z-index:auto;flex-grow:1;width:auto !important;height:auto !important;visibility:visible !important;background-color:rgba(0,0,0,0) !important;border:0 !important;transform:none !important;transition:none}.navbar-expand-sm .offcanvas .offcanvas-header{display:none}.navbar-expand-sm .offcanvas .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible}}@media(min-width: 768px){.navbar-expand-md{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand-md .navbar-nav{flex-direction:row}.navbar-expand-md .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-md .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand-md .navbar-nav-scroll{overflow:visible}.navbar-expand-md .navbar-collapse{display:flex !important;flex-basis:auto}.navbar-expand-md .navbar-toggler{display:none}.navbar-expand-md .offcanvas{position:static;z-index:auto;flex-grow:1;width:auto !important;height:auto !important;visibility:visible !important;background-color:rgba(0,0,0,0) !important;border:0 !important;transform:none !important;transition:none}.navbar-expand-md .offcanvas .offcanvas-header{display:none}.navbar-expand-md .offcanvas .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible}}@media(min-width: 992px){.navbar-expand-lg{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand-lg .navbar-nav{flex-direction:row}.navbar-expand-lg .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-lg .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand-lg .navbar-nav-scroll{overflow:visible}.navbar-expand-lg .navbar-collapse{display:flex !important;flex-basis:auto}.navbar-expand-lg .navbar-toggler{display:none}.navbar-expand-lg .offcanvas{position:static;z-index:auto;flex-grow:1;width:auto !important;height:auto !important;visibility:visible !important;background-color:rgba(0,0,0,0) !important;border:0 !important;transform:none !important;transition:none}.navbar-expand-lg .offcanvas .offcanvas-header{display:none}.navbar-expand-lg .offcanvas .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible}}@media(min-width: 1200px){.navbar-expand-xl{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand-xl .navbar-nav{flex-direction:row}.navbar-expand-xl .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-xl .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand-xl .navbar-nav-scroll{overflow:visible}.navbar-expand-xl .navbar-collapse{display:flex !important;flex-basis:auto}.navbar-expand-xl .navbar-toggler{display:none}.navbar-expand-xl .offcanvas{position:static;z-index:auto;flex-grow:1;width:auto !important;height:auto !important;visibility:visible !important;background-color:rgba(0,0,0,0) !important;border:0 !important;transform:none !important;transition:none}.navbar-expand-xl .offcanvas .offcanvas-header{display:none}.navbar-expand-xl .offcanvas .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible}}@media(min-width: 1400px){.navbar-expand-xxl{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand-xxl .navbar-nav{flex-direction:row}.navbar-expand-xxl .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-xxl .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand-xxl .navbar-nav-scroll{overflow:visible}.navbar-expand-xxl .navbar-collapse{display:flex !important;flex-basis:auto}.navbar-expand-xxl .navbar-toggler{display:none}.navbar-expand-xxl .offcanvas{position:static;z-index:auto;flex-grow:1;width:auto !important;height:auto !important;visibility:visible !important;background-color:rgba(0,0,0,0) !important;border:0 !important;transform:none !important;transition:none}.navbar-expand-xxl .offcanvas .offcanvas-header{display:none}.navbar-expand-xxl .offcanvas .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible}}@media(min-width: 1900px){.navbar-expand-xxxl{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand-xxxl .navbar-nav{flex-direction:row}.navbar-expand-xxxl .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-xxxl .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand-xxxl .navbar-nav-scroll{overflow:visible}.navbar-expand-xxxl .navbar-collapse{display:flex !important;flex-basis:auto}.navbar-expand-xxxl .navbar-toggler{display:none}.navbar-expand-xxxl .offcanvas{position:static;z-index:auto;flex-grow:1;width:auto !important;height:auto !important;visibility:visible !important;background-color:rgba(0,0,0,0) !important;border:0 !important;transform:none !important;transition:none}.navbar-expand-xxxl .offcanvas .offcanvas-header{display:none}.navbar-expand-xxxl .offcanvas .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible}}.navbar-expand{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand .navbar-nav{flex-direction:row}.navbar-expand .navbar-nav .dropdown-menu{position:absolute}.navbar-expand .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand .navbar-nav-scroll{overflow:visible}.navbar-expand .navbar-collapse{display:flex !important;flex-basis:auto}.navbar-expand .navbar-toggler{display:none}.navbar-expand .offcanvas{position:static;z-index:auto;flex-grow:1;width:auto !important;height:auto !important;visibility:visible !important;background-color:rgba(0,0,0,0) !important;border:0 !important;transform:none !important;transition:none}.navbar-expand .offcanvas .offcanvas-header{display:none}.navbar-expand .offcanvas .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible}.navbar-dark{--bs-navbar-color: rgba(255, 255, 255, 0.55);--bs-navbar-hover-color: rgba(255, 255, 255, 0.75);--bs-navbar-disabled-color: rgba(255, 255, 255, 0.25);--bs-navbar-active-color: #fff;--bs-navbar-brand-color: #fff;--bs-navbar-brand-hover-color: #fff;--bs-navbar-toggler-border-color: rgba(255, 255, 255, 0.1);--bs-navbar-toggler-icon-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}.card{--bs-card-spacer-y: 0.9rem;--bs-card-spacer-x: 0.9rem;--bs-card-title-spacer-y: 0.45rem;--bs-card-border-width: 1px;--bs-card-border-color: #212e41;--bs-card-border-radius: 0.4rem;--bs-card-box-shadow: ;--bs-card-inner-border-radius: calc(0.4rem - 1px);--bs-card-cap-padding-y: 0.45rem;--bs-card-cap-padding-x: 0.9rem;--bs-card-cap-bg: rgba(0, 0, 0, 0.03);--bs-card-cap-color: ;--bs-card-height: ;--bs-card-color: ;--bs-card-bg: #1a2433;--bs-card-img-overlay-padding: 0.9rem;--bs-card-group-margin: 0.75rem;position:relative;display:flex;flex-direction:column;min-width:0;height:var(--bs-card-height);word-wrap:break-word;background-color:var(--bs-card-bg);background-clip:border-box;border:var(--bs-card-border-width) solid var(--bs-card-border-color);border-radius:var(--bs-card-border-radius)}.card>hr{margin-right:0;margin-left:0}.card>.list-group{border-top:inherit;border-bottom:inherit}.card>.list-group:first-child{border-top-width:0;border-top-left-radius:var(--bs-card-inner-border-radius);border-top-right-radius:var(--bs-card-inner-border-radius)}.card>.list-group:last-child{border-bottom-width:0;border-bottom-right-radius:var(--bs-card-inner-border-radius);border-bottom-left-radius:var(--bs-card-inner-border-radius)}.card>.card-header+.list-group,.card>.list-group+.card-footer{border-top:0}.card-body{flex:1 1 auto;padding:var(--bs-card-spacer-y) var(--bs-card-spacer-x);color:var(--bs-card-color)}.card-title{margin-bottom:var(--bs-card-title-spacer-y)}.card-subtitle{margin-top:calc(-0.5*var(--bs-card-title-spacer-y));margin-bottom:0}.card-text:last-child{margin-bottom:0}.card-link:hover{text-decoration:none}.card-link+.card-link{margin-left:var(--bs-card-spacer-x)}.card-header{padding:var(--bs-card-cap-padding-y) var(--bs-card-cap-padding-x);margin-bottom:0;color:var(--bs-card-cap-color);background-color:var(--bs-card-cap-bg);border-bottom:var(--bs-card-border-width) solid var(--bs-card-border-color)}.card-header:first-child{border-radius:var(--bs-card-inner-border-radius) var(--bs-card-inner-border-radius) 0 0}.card-footer{padding:var(--bs-card-cap-padding-y) var(--bs-card-cap-padding-x);color:var(--bs-card-cap-color);background-color:var(--bs-card-cap-bg);border-top:var(--bs-card-border-width) solid var(--bs-card-border-color)}.card-footer:last-child{border-radius:0 0 var(--bs-card-inner-border-radius) var(--bs-card-inner-border-radius)}.card-header-tabs{margin-right:calc(-0.5*var(--bs-card-cap-padding-x));margin-bottom:calc(-1*var(--bs-card-cap-padding-y));margin-left:calc(-0.5*var(--bs-card-cap-padding-x));border-bottom:0}.card-header-tabs .nav-link.active{background-color:var(--bs-card-bg);border-bottom-color:var(--bs-card-bg)}.card-header-pills{margin-right:calc(-0.5*var(--bs-card-cap-padding-x));margin-left:calc(-0.5*var(--bs-card-cap-padding-x))}.card-img-overlay{position:absolute;top:0;right:0;bottom:0;left:0;padding:var(--bs-card-img-overlay-padding);border-radius:var(--bs-card-inner-border-radius)}.card-img,.card-img-top,.card-img-bottom{width:100%}.card-img,.card-img-top{border-top-left-radius:var(--bs-card-inner-border-radius);border-top-right-radius:var(--bs-card-inner-border-radius)}.card-img,.card-img-bottom{border-bottom-right-radius:var(--bs-card-inner-border-radius);border-bottom-left-radius:var(--bs-card-inner-border-radius)}.card-group>.card{margin-bottom:var(--bs-card-group-margin)}@media(min-width: 576px){.card-group{display:flex;flex-flow:row wrap}.card-group>.card{flex:1 0 0%;margin-bottom:0}.card-group>.card+.card{margin-left:0;border-left:0}.card-group>.card:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.card-group>.card:not(:last-child) .card-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{--bs-accordion-color: #f7fafa;--bs-accordion-bg: #1a2433;--bs-accordion-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, border-radius 0.15s ease;--bs-accordion-border-color: var(--bs-border-color);--bs-accordion-border-width: 1px;--bs-accordion-border-radius: 0.4rem;--bs-accordion-inner-border-radius: calc(0.4rem - 1px);--bs-accordion-btn-padding-x: 1.25rem;--bs-accordion-btn-padding-y: 1rem;--bs-accordion-btn-color: #f7fafa;--bs-accordion-btn-bg: var(--bs-accordion-bg);--bs-accordion-btn-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23f7fafa'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");--bs-accordion-btn-icon-width: 1.25rem;--bs-accordion-btn-icon-transform: rotate(-180deg);--bs-accordion-btn-icon-transition: transform 0.2s ease-in-out;--bs-accordion-btn-active-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%230c63e4'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");--bs-accordion-btn-focus-border-color: #86b7fe;--bs-accordion-btn-focus-box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);--bs-accordion-body-padding-x: 1.25rem;--bs-accordion-body-padding-y: 1rem;--bs-accordion-active-color: #0c63e4;--bs-accordion-active-bg: #e7f1ff}.accordion-button{position:relative;display:flex;align-items:center;width:100%;padding:var(--bs-accordion-btn-padding-y) var(--bs-accordion-btn-padding-x);font-size:1rem;color:var(--bs-accordion-btn-color);text-align:left;background-color:var(--bs-accordion-btn-bg);border:0;border-radius:0;overflow-anchor:none;transition:var(--bs-accordion-transition)}@media(prefers-reduced-motion: reduce){.accordion-button{transition:none}}.accordion-button:not(.collapsed){color:var(--bs-accordion-active-color);background-color:var(--bs-accordion-active-bg);box-shadow:inset 0 calc(-1*var(--bs-accordion-border-width)) 0 var(--bs-accordion-border-color)}.accordion-button:not(.collapsed)::after{background-image:var(--bs-accordion-btn-active-icon);transform:var(--bs-accordion-btn-icon-transform)}.accordion-button::after{flex-shrink:0;width:var(--bs-accordion-btn-icon-width);height:var(--bs-accordion-btn-icon-width);margin-left:auto;content:"";background-image:var(--bs-accordion-btn-icon);background-repeat:no-repeat;background-size:var(--bs-accordion-btn-icon-width);transition:var(--bs-accordion-btn-icon-transition)}@media(prefers-reduced-motion: reduce){.accordion-button::after{transition:none}}.accordion-button:hover{z-index:2}.accordion-button:focus{z-index:3;border-color:var(--bs-accordion-btn-focus-border-color);outline:0;box-shadow:var(--bs-accordion-btn-focus-box-shadow)}.accordion-header{margin-bottom:0}.accordion-item{color:var(--bs-accordion-color);background-color:var(--bs-accordion-bg);border:var(--bs-accordion-border-width) solid var(--bs-accordion-border-color)}.accordion-item:first-of-type{border-top-left-radius:var(--bs-accordion-border-radius);border-top-right-radius:var(--bs-accordion-border-radius)}.accordion-item:first-of-type .accordion-button{border-top-left-radius:var(--bs-accordion-inner-border-radius);border-top-right-radius:var(--bs-accordion-inner-border-radius)}.accordion-item:not(:first-of-type){border-top:0}.accordion-item:last-of-type{border-bottom-right-radius:var(--bs-accordion-border-radius);border-bottom-left-radius:var(--bs-accordion-border-radius)}.accordion-item:last-of-type .accordion-button.collapsed{border-bottom-right-radius:var(--bs-accordion-inner-border-radius);border-bottom-left-radius:var(--bs-accordion-inner-border-radius)}.accordion-item:last-of-type .accordion-collapse{border-bottom-right-radius:var(--bs-accordion-border-radius);border-bottom-left-radius:var(--bs-accordion-border-radius)}.accordion-body{padding:var(--bs-accordion-body-padding-y) var(--bs-accordion-body-padding-x)}.accordion-flush .accordion-collapse{border-width:0}.accordion-flush .accordion-item{border-right:0;border-left:0;border-radius:0}.accordion-flush .accordion-item:first-child{border-top:0}.accordion-flush .accordion-item:last-child{border-bottom:0}.accordion-flush .accordion-item .accordion-button,.accordion-flush .accordion-item .accordion-button.collapsed{border-radius:0}.breadcrumb{--bs-breadcrumb-padding-x: 0;--bs-breadcrumb-padding-y: 0;--bs-breadcrumb-margin-bottom: 1rem;--bs-breadcrumb-bg: ;--bs-breadcrumb-border-radius: ;--bs-breadcrumb-divider-color: #6c757d;--bs-breadcrumb-item-padding-x: 0.5rem;--bs-breadcrumb-item-active-color: #6c757d;display:flex;flex-wrap:wrap;padding:var(--bs-breadcrumb-padding-y) var(--bs-breadcrumb-padding-x);margin-bottom:var(--bs-breadcrumb-margin-bottom);font-size:var(--bs-breadcrumb-font-size);list-style:none;background-color:var(--bs-breadcrumb-bg);border-radius:var(--bs-breadcrumb-border-radius)}.breadcrumb-item+.breadcrumb-item{padding-left:var(--bs-breadcrumb-item-padding-x)}.breadcrumb-item+.breadcrumb-item::before{float:left;padding-right:var(--bs-breadcrumb-item-padding-x);color:var(--bs-breadcrumb-divider-color);content:var(--bs-breadcrumb-divider, "/") /* rtl: var(--bs-breadcrumb-divider, "/") */}.breadcrumb-item.active{color:var(--bs-breadcrumb-item-active-color)}.pagination{--bs-pagination-padding-x: 0.75rem;--bs-pagination-padding-y: 0.375rem;--bs-pagination-font-size:1rem;--bs-pagination-color: var(--bs-link-color);--bs-pagination-bg: #1a2433;--bs-pagination-border-width: 1px;--bs-pagination-border-color: #293951;--bs-pagination-border-radius: 0.4rem;--bs-pagination-hover-color: var(--bs-link-hover-color);--bs-pagination-hover-bg: #344866;--bs-pagination-hover-border-color: #293951;--bs-pagination-focus-color: var(--bs-link-hover-color);--bs-pagination-focus-bg: #e9ecef;--bs-pagination-focus-box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);--bs-pagination-active-color: #fff;--bs-pagination-active-bg: #1a2433;--bs-pagination-active-border-color: #293951;--bs-pagination-disabled-color: #6c757d;--bs-pagination-disabled-bg: #151d29;--bs-pagination-disabled-border-color: #293951;display:flex;padding-left:0;list-style:none}.page-link{position:relative;display:block;padding:var(--bs-pagination-padding-y) var(--bs-pagination-padding-x);font-size:var(--bs-pagination-font-size);color:var(--bs-pagination-color);background-color:var(--bs-pagination-bg);border:var(--bs-pagination-border-width) solid var(--bs-pagination-border-color);transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media(prefers-reduced-motion: reduce){.page-link{transition:none}}.page-link:hover{z-index:2;color:var(--bs-pagination-hover-color);text-decoration:none;background-color:var(--bs-pagination-hover-bg);border-color:var(--bs-pagination-hover-border-color)}.page-link:focus{z-index:3;color:var(--bs-pagination-focus-color);background-color:var(--bs-pagination-focus-bg);outline:0;box-shadow:var(--bs-pagination-focus-box-shadow)}.page-link.active,.active>.page-link{z-index:3;color:var(--bs-pagination-active-color);background-color:var(--bs-pagination-active-bg);border-color:var(--bs-pagination-active-border-color)}.page-link.disabled,.disabled>.page-link{color:var(--bs-pagination-disabled-color);pointer-events:none;background-color:var(--bs-pagination-disabled-bg);border-color:var(--bs-pagination-disabled-border-color)}.page-item:not(:first-child) .page-link{margin-left:-1px}.page-item:first-child .page-link{border-top-left-radius:var(--bs-pagination-border-radius);border-bottom-left-radius:var(--bs-pagination-border-radius)}.page-item:last-child .page-link{border-top-right-radius:var(--bs-pagination-border-radius);border-bottom-right-radius:var(--bs-pagination-border-radius)}.pagination-lg{--bs-pagination-padding-x: 1.5rem;--bs-pagination-padding-y: 0.75rem;--bs-pagination-font-size:1.25rem;--bs-pagination-border-radius: 0.5rem}.pagination-sm{--bs-pagination-padding-x: 0.5rem;--bs-pagination-padding-y: 0.25rem;--bs-pagination-font-size:0.875rem;--bs-pagination-border-radius: 0.25rem}.badge{--bs-badge-padding-x: 0.65em;--bs-badge-padding-y: 0.35em;--bs-badge-font-size:0.75em;--bs-badge-font-weight: 400;--bs-badge-color: #fff;--bs-badge-border-radius: 0.2rem;display:inline-block;padding:var(--bs-badge-padding-y) var(--bs-badge-padding-x);font-size:var(--bs-badge-font-size);font-weight:var(--bs-badge-font-weight);line-height:1;color:var(--bs-badge-color);text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:var(--bs-badge-border-radius)}.badge:empty{display:none}.btn .badge{position:relative;top:-1px}.alert{--bs-alert-bg: transparent;--bs-alert-padding-x: 0.9rem;--bs-alert-padding-y: 0.9rem;--bs-alert-margin-bottom: 1rem;--bs-alert-color: inherit;--bs-alert-border-color: transparent;--bs-alert-border: 1px solid var(--bs-alert-border-color);--bs-alert-border-radius: 0.4rem;position:relative;padding:var(--bs-alert-padding-y) var(--bs-alert-padding-x);margin-bottom:var(--bs-alert-margin-bottom);color:var(--bs-alert-color);background-color:var(--bs-alert-bg);border:var(--bs-alert-border);border-radius:var(--bs-alert-border-radius)}.alert-heading{color:inherit}.alert-link{font-weight:700}.alert-dismissible{padding-right:2.25rem}.alert-dismissible .btn-close{position:absolute;top:0;right:0;z-index:2;padding:1.125rem .9rem}.alert-primary{--bs-alert-color: #084298;--bs-alert-bg: #cfe2ff;--bs-alert-border-color: #b6d4fe}.alert-primary .alert-link{color:#06357a}.alert-secondary{--bs-alert-color: #41464b;--bs-alert-bg: #e2e3e5;--bs-alert-border-color: #d3d6d8}.alert-secondary .alert-link{color:#34383c}.alert-success{--bs-alert-color: #0f5132;--bs-alert-bg: #d1e7dd;--bs-alert-border-color: #badbcc}.alert-success .alert-link{color:#0c4128}.alert-info{--bs-alert-color: #055160;--bs-alert-bg: #cff4fc;--bs-alert-border-color: #b6effb}.alert-info .alert-link{color:#04414d}.alert-warning{--bs-alert-color: #664d03;--bs-alert-bg: #fff3cd;--bs-alert-border-color: #ffecb5}.alert-warning .alert-link{color:#523e02}.alert-danger{--bs-alert-color: #842029;--bs-alert-bg: #f8d7da;--bs-alert-border-color: #f5c2c7}.alert-danger .alert-link{color:#6a1a21}.alert-light{--bs-alert-color: #5d5e60;--bs-alert-bg: #fbfbfc;--bs-alert-border-color: #f8f9fa}.alert-light .alert-link{color:#4a4b4d}.alert-dark{--bs-alert-color: #070a0e;--bs-alert-bg: #cecfd1;--bs-alert-border-color: #b6b8ba}.alert-dark .alert-link{color:#06080b}@keyframes progress-bar-stripes{0%{background-position-x:1rem}}.progress{--bs-progress-height: 1rem;--bs-progress-font-size:0.75rem;--bs-progress-bg: #e9ecef;--bs-progress-border-radius: 0.4rem;--bs-progress-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.075);--bs-progress-bar-color: #fff;--bs-progress-bar-bg: #0d6efd;--bs-progress-bar-transition: width 0.6s ease;display:flex;height:var(--bs-progress-height);overflow:hidden;font-size:var(--bs-progress-font-size);background-color:var(--bs-progress-bg);border-radius:var(--bs-progress-border-radius)}.progress-bar{display:flex;flex-direction:column;justify-content:center;overflow:hidden;color:var(--bs-progress-bar-color);text-align:center;white-space:nowrap;background-color:var(--bs-progress-bar-bg);transition:var(--bs-progress-bar-transition)}@media(prefers-reduced-motion: reduce){.progress-bar{transition:none}}.progress-bar-striped{background-image:linear-gradient(45deg, rgba(255, 255, 255, 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:var(--bs-progress-height) var(--bs-progress-height)}.progress-bar-animated{animation:1s linear infinite progress-bar-stripes}@media(prefers-reduced-motion: reduce){.progress-bar-animated{animation:none}}.list-group{--bs-list-group-color: #212529;--bs-list-group-bg: #fff;--bs-list-group-border-color: rgba(0, 0, 0, 0.125);--bs-list-group-border-width: 1px;--bs-list-group-border-radius: 0.4rem;--bs-list-group-item-padding-x: 0.9rem;--bs-list-group-item-padding-y: 0.45rem;--bs-list-group-action-color: #495057;--bs-list-group-action-hover-color: #495057;--bs-list-group-action-hover-bg: #f8f9fa;--bs-list-group-action-active-color: #f7fafa;--bs-list-group-action-active-bg: #e9ecef;--bs-list-group-disabled-color: #6c757d;--bs-list-group-disabled-bg: #fff;--bs-list-group-active-color: #fff;--bs-list-group-active-bg: #0d6efd;--bs-list-group-active-border-color: #0d6efd;display:flex;flex-direction:column;padding-left:0;margin-bottom:0;border-radius:var(--bs-list-group-border-radius)}.list-group-numbered{list-style-type:none;counter-reset:section}.list-group-numbered>.list-group-item::before{content:counters(section, ".") ". ";counter-increment:section}.list-group-item-action{width:100%;color:var(--bs-list-group-action-color);text-align:inherit}.list-group-item-action:hover,.list-group-item-action:focus{z-index:1;color:var(--bs-list-group-action-hover-color);text-decoration:none;background-color:var(--bs-list-group-action-hover-bg)}.list-group-item-action:active{color:var(--bs-list-group-action-active-color);background-color:var(--bs-list-group-action-active-bg)}.list-group-item{position:relative;display:block;padding:var(--bs-list-group-item-padding-y) var(--bs-list-group-item-padding-x);color:var(--bs-list-group-color);background-color:var(--bs-list-group-bg);border:var(--bs-list-group-border-width) solid var(--bs-list-group-border-color)}.list-group-item:first-child{border-top-left-radius:inherit;border-top-right-radius:inherit}.list-group-item:last-child{border-bottom-right-radius:inherit;border-bottom-left-radius:inherit}.list-group-item.disabled,.list-group-item:disabled{color:var(--bs-list-group-disabled-color);pointer-events:none;background-color:var(--bs-list-group-disabled-bg)}.list-group-item.active{z-index:2;color:var(--bs-list-group-active-color);background-color:var(--bs-list-group-active-bg);border-color:var(--bs-list-group-active-border-color)}.list-group-item+.list-group-item{border-top-width:0}.list-group-item+.list-group-item.active{margin-top:calc(-1*var(--bs-list-group-border-width));border-top-width:var(--bs-list-group-border-width)}.list-group-horizontal{flex-direction:row}.list-group-horizontal>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal>.list-group-item.active{margin-top:0}.list-group-horizontal>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal>.list-group-item+.list-group-item.active{margin-left:calc(-1*var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}@media(min-width: 576px){.list-group-horizontal-sm{flex-direction:row}.list-group-horizontal-sm>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal-sm>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal-sm>.list-group-item.active{margin-top:0}.list-group-horizontal-sm>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal-sm>.list-group-item+.list-group-item.active{margin-left:calc(-1*var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}}@media(min-width: 768px){.list-group-horizontal-md{flex-direction:row}.list-group-horizontal-md>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal-md>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal-md>.list-group-item.active{margin-top:0}.list-group-horizontal-md>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal-md>.list-group-item+.list-group-item.active{margin-left:calc(-1*var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}}@media(min-width: 992px){.list-group-horizontal-lg{flex-direction:row}.list-group-horizontal-lg>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal-lg>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal-lg>.list-group-item.active{margin-top:0}.list-group-horizontal-lg>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal-lg>.list-group-item+.list-group-item.active{margin-left:calc(-1*var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}}@media(min-width: 1200px){.list-group-horizontal-xl{flex-direction:row}.list-group-horizontal-xl>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal-xl>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal-xl>.list-group-item.active{margin-top:0}.list-group-horizontal-xl>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal-xl>.list-group-item+.list-group-item.active{margin-left:calc(-1*var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}}@media(min-width: 1400px){.list-group-horizontal-xxl{flex-direction:row}.list-group-horizontal-xxl>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal-xxl>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal-xxl>.list-group-item.active{margin-top:0}.list-group-horizontal-xxl>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal-xxl>.list-group-item+.list-group-item.active{margin-left:calc(-1*var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}}@media(min-width: 1900px){.list-group-horizontal-xxxl{flex-direction:row}.list-group-horizontal-xxxl>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal-xxxl>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal-xxxl>.list-group-item.active{margin-top:0}.list-group-horizontal-xxxl>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal-xxxl>.list-group-item+.list-group-item.active{margin-left:calc(-1*var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}}.list-group-flush{border-radius:0}.list-group-flush>.list-group-item{border-width:0 0 var(--bs-list-group-border-width)}.list-group-flush>.list-group-item:last-child{border-bottom-width:0}.list-group-item-primary{color:#084298;background-color:#cfe2ff}.list-group-item-primary.list-group-item-action: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:#5d5e60;background-color:#fbfbfc}.list-group-item-light.list-group-item-action:hover,.list-group-item-light.list-group-item-action:focus{color:#5d5e60;background-color:#e2e2e3}.list-group-item-light.list-group-item-action.active{color:#fff;background-color:#5d5e60;border-color:#5d5e60}.list-group-item-dark{color:#070a0e;background-color:#cecfd1}.list-group-item-dark.list-group-item-action:hover,.list-group-item-dark.list-group-item-action:focus{color:#070a0e;background-color:#b9babc}.list-group-item-dark.list-group-item-action.active{color:#fff;background-color:#070a0e;border-color:#070a0e}.btn-close{box-sizing:content-box;width:.75rem;height:.75rem;padding:.25em .25em;color:#fff;background:rgba(0,0,0,0) url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M.293.293a1 1 0 0 1 1.414 0L8 6.586 14.293.293a1 1 0 1 1 1.414 1.414L9.414 8l6.293 6.293a1 1 0 0 1-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 0 1-1.414-1.414L6.586 8 .293 1.707a1 1 0 0 1 0-1.414z'/%3e%3c/svg%3e") center/0.75rem auto no-repeat;border:0;border-radius:.4rem;opacity:.5}.btn-close:hover{color:#fff;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;user-select:none;opacity:.25}.btn-close-white{filter:invert(1) grayscale(100%) brightness(200%)}.toast{--bs-toast-zindex: 1090;--bs-toast-padding-x: 0.75rem;--bs-toast-padding-y: 0.5rem;--bs-toast-spacing: 1.5rem;--bs-toast-max-width: 550px;--bs-toast-font-size:0.875rem;--bs-toast-color: #f7fafa;--bs-toast-bg: #344866;--bs-toast-border-width: 1px;--bs-toast-border-color: rgba(255, 255, 255, 0.1);--bs-toast-border-radius: 0.4rem;--bs-toast-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);--bs-toast-header-color: #f7fafa;--bs-toast-header-bg: #26354b;--bs-toast-header-border-color: rgba(0, 0, 0, 0.05);width:var(--bs-toast-max-width);max-width:100%;font-size:var(--bs-toast-font-size);color:var(--bs-toast-color);pointer-events:auto;background-color:var(--bs-toast-bg);background-clip:padding-box;border:var(--bs-toast-border-width) solid var(--bs-toast-border-color);box-shadow:var(--bs-toast-box-shadow);border-radius:var(--bs-toast-border-radius)}.toast.showing{opacity:0}.toast:not(.show){display:none}.toast-container{--bs-toast-zindex: 1090;position:absolute;z-index:var(--bs-toast-zindex);width:max-content;max-width:100%;pointer-events:none}.toast-container>:not(:last-child){margin-bottom:var(--bs-toast-spacing)}.toast-header{display:flex;align-items:center;padding:var(--bs-toast-padding-y) var(--bs-toast-padding-x);color:var(--bs-toast-header-color);background-color:var(--bs-toast-header-bg);background-clip:padding-box;border-bottom:var(--bs-toast-border-width) solid var(--bs-toast-header-border-color);border-top-left-radius:calc(var(--bs-toast-border-radius) - var(--bs-toast-border-width));border-top-right-radius:calc(var(--bs-toast-border-radius) - var(--bs-toast-border-width))}.toast-header .btn-close{margin-right:calc(-0.5*var(--bs-toast-padding-x));margin-left:var(--bs-toast-padding-x)}.toast-body{padding:var(--bs-toast-padding-x);word-wrap:break-word}.modal{--bs-modal-zindex: 1055;--bs-modal-width: 500px;--bs-modal-padding: 0.9rem;--bs-modal-margin: 0.5rem;--bs-modal-color: #f7fafa;--bs-modal-bg: #1a2433;--bs-modal-border-color: var(--bs-border-color-translucent);--bs-modal-border-width: 1px;--bs-modal-border-radius: 0.5rem;--bs-modal-box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);--bs-modal-inner-border-radius: calc(0.5rem - 1px);--bs-modal-header-padding-x: 0.9rem;--bs-modal-header-padding-y: 0.9rem;--bs-modal-header-padding: 0.9rem 0.9rem;--bs-modal-header-border-color: var(--bs-border-color);--bs-modal-header-border-width: 1px;--bs-modal-title-line-height: 1.5;--bs-modal-footer-gap: 0.5rem;--bs-modal-footer-bg: ;--bs-modal-footer-border-color: var(--bs-border-color);--bs-modal-footer-border-width: 1px;position:fixed;top:0;left:0;z-index:var(--bs-modal-zindex);display:none;width:100%;height:100%;overflow-x:hidden;overflow-y:auto;outline:0}.modal-dialog{position:relative;width:auto;margin:var(--bs-modal-margin);pointer-events:none}.modal.fade .modal-dialog{transition:transform .3s ease-out;transform:translate(0, -50px)}@media(prefers-reduced-motion: reduce){.modal.fade .modal-dialog{transition:none}}.modal.show .modal-dialog{transform:none}.modal.modal-static .modal-dialog{transform:scale(1.02)}.modal-dialog-scrollable{height:calc(100% - var(--bs-modal-margin)*2)}.modal-dialog-scrollable .modal-content{max-height:100%;overflow:hidden}.modal-dialog-scrollable .modal-body{overflow-y:auto}.modal-dialog-centered{display:flex;align-items:center;min-height:calc(100% - var(--bs-modal-margin)*2)}.modal-content{position:relative;display:flex;flex-direction:column;width:100%;color:var(--bs-modal-color);pointer-events:auto;background-color:var(--bs-modal-bg);background-clip:padding-box;border:var(--bs-modal-border-width) solid var(--bs-modal-border-color);border-radius:var(--bs-modal-border-radius);outline:0}.modal-backdrop{--bs-backdrop-zindex: 1050;--bs-backdrop-bg: #000;--bs-backdrop-opacity: 0.5;position:fixed;top:0;left:0;z-index:var(--bs-backdrop-zindex);width:100vw;height:100vh;background-color:var(--bs-backdrop-bg)}.modal-backdrop.fade{opacity:0}.modal-backdrop.show{opacity:var(--bs-backdrop-opacity)}.modal-header{display:flex;flex-shrink:0;align-items:center;justify-content:space-between;padding:var(--bs-modal-header-padding);border-bottom:var(--bs-modal-header-border-width) solid var(--bs-modal-header-border-color);border-top-left-radius:var(--bs-modal-inner-border-radius);border-top-right-radius:var(--bs-modal-inner-border-radius)}.modal-header .btn-close{padding:calc(var(--bs-modal-header-padding-y)*.5) calc(var(--bs-modal-header-padding-x)*.5);margin:calc(-0.5*var(--bs-modal-header-padding-y)) calc(-0.5*var(--bs-modal-header-padding-x)) calc(-0.5*var(--bs-modal-header-padding-y)) auto}.modal-title{margin-bottom:0;line-height:var(--bs-modal-title-line-height)}.modal-body{position:relative;flex:1 1 auto;padding:var(--bs-modal-padding)}.modal-footer{display:flex;flex-shrink:0;flex-wrap:wrap;align-items:center;justify-content:flex-end;padding:calc(var(--bs-modal-padding) - var(--bs-modal-footer-gap)*.5);background-color:var(--bs-modal-footer-bg);border-top:var(--bs-modal-footer-border-width) solid var(--bs-modal-footer-border-color);border-bottom-right-radius:var(--bs-modal-inner-border-radius);border-bottom-left-radius:var(--bs-modal-inner-border-radius)}.modal-footer>*{margin:calc(var(--bs-modal-footer-gap)*.5)}@media(min-width: 576px){.modal{--bs-modal-margin: 1.75rem;--bs-modal-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15)}.modal-dialog{max-width:var(--bs-modal-width);margin-right:auto;margin-left:auto}.modal-sm{--bs-modal-width: 300px}}@media(min-width: 992px){.modal-lg,.modal-xl{--bs-modal-width: 800px}}@media(min-width: 1200px){.modal-xl{--bs-modal-width: 1140px}}.modal-fullscreen{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen .modal-header,.modal-fullscreen .modal-footer{border-radius:0}.modal-fullscreen .modal-body{overflow-y:auto}@media(max-width: 575.98px){.modal-fullscreen-sm-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-sm-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-sm-down .modal-header,.modal-fullscreen-sm-down .modal-footer{border-radius:0}.modal-fullscreen-sm-down .modal-body{overflow-y:auto}}@media(max-width: 767.98px){.modal-fullscreen-md-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-md-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-md-down .modal-header,.modal-fullscreen-md-down .modal-footer{border-radius:0}.modal-fullscreen-md-down .modal-body{overflow-y:auto}}@media(max-width: 991.98px){.modal-fullscreen-lg-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-lg-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-lg-down .modal-header,.modal-fullscreen-lg-down .modal-footer{border-radius:0}.modal-fullscreen-lg-down .modal-body{overflow-y:auto}}@media(max-width: 1199.98px){.modal-fullscreen-xl-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-xl-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-xl-down .modal-header,.modal-fullscreen-xl-down .modal-footer{border-radius:0}.modal-fullscreen-xl-down .modal-body{overflow-y:auto}}@media(max-width: 1399.98px){.modal-fullscreen-xxl-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-xxl-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-xxl-down .modal-header,.modal-fullscreen-xxl-down .modal-footer{border-radius:0}.modal-fullscreen-xxl-down .modal-body{overflow-y:auto}}@media(max-width: 1899.98px){.modal-fullscreen-xxxl-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-xxxl-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-xxxl-down .modal-header,.modal-fullscreen-xxxl-down .modal-footer{border-radius:0}.modal-fullscreen-xxxl-down .modal-body{overflow-y:auto}}.tooltip{--bs-tooltip-zindex: 1080;--bs-tooltip-max-width: 350px;--bs-tooltip-padding-x: 0.8rem;--bs-tooltip-padding-y: 0.4rem;--bs-tooltip-margin: ;--bs-tooltip-font-size:0.875rem;--bs-tooltip-color: #f7fafa;--bs-tooltip-bg: #344866;--bs-tooltip-border-radius: 0.4rem;--bs-tooltip-opacity: 1;--bs-tooltip-arrow-width: 0.8rem;--bs-tooltip-arrow-height: 0.4rem;z-index:var(--bs-tooltip-zindex);display:block;padding:var(--bs-tooltip-arrow-height);margin:var(--bs-tooltip-margin);font-family:var(--bs-font-sans-serif);font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;white-space:normal;word-spacing:normal;line-break:auto;font-size:var(--bs-tooltip-font-size);word-wrap:break-word;opacity:0}.tooltip.show{opacity:var(--bs-tooltip-opacity)}.tooltip .tooltip-arrow{display:block;width:var(--bs-tooltip-arrow-width);height:var(--bs-tooltip-arrow-height)}.tooltip .tooltip-arrow::before{position:absolute;content:"";border-color:rgba(0,0,0,0);border-style:solid}.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:var(--bs-tooltip-arrow-height) calc(var(--bs-tooltip-arrow-width)*.5) 0;border-top-color:var(--bs-tooltip-bg)}.bs-tooltip-end .tooltip-arrow,.bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow{left:0;width:var(--bs-tooltip-arrow-height);height:var(--bs-tooltip-arrow-width)}.bs-tooltip-end .tooltip-arrow::before,.bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow::before{right:-1px;border-width:calc(var(--bs-tooltip-arrow-width)*.5) var(--bs-tooltip-arrow-height) calc(var(--bs-tooltip-arrow-width)*.5) 0;border-right-color:var(--bs-tooltip-bg)}.bs-tooltip-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 calc(var(--bs-tooltip-arrow-width)*.5) var(--bs-tooltip-arrow-height);border-bottom-color:var(--bs-tooltip-bg)}.bs-tooltip-start .tooltip-arrow,.bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow{right:0;width:var(--bs-tooltip-arrow-height);height:var(--bs-tooltip-arrow-width)}.bs-tooltip-start .tooltip-arrow::before,.bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow::before{left:-1px;border-width:calc(var(--bs-tooltip-arrow-width)*.5) 0 calc(var(--bs-tooltip-arrow-width)*.5) var(--bs-tooltip-arrow-height);border-left-color:var(--bs-tooltip-bg)}.tooltip-inner{max-width:var(--bs-tooltip-max-width);padding:var(--bs-tooltip-padding-y) var(--bs-tooltip-padding-x);color:var(--bs-tooltip-color);text-align:center;background-color:var(--bs-tooltip-bg);border-radius:var(--bs-tooltip-border-radius)}.popover{--bs-popover-zindex: 1070;--bs-popover-max-width: 276px;--bs-popover-font-size:0.875rem;--bs-popover-bg: #fff;--bs-popover-border-width: 1px;--bs-popover-border-color: var(--bs-border-color-translucent);--bs-popover-border-radius: 0.5rem;--bs-popover-inner-border-radius: calc(0.5rem - 1px);--bs-popover-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);--bs-popover-header-padding-x: 0.9rem;--bs-popover-header-padding-y: 0.5rem;--bs-popover-header-font-size:1rem;--bs-popover-header-color: ;--bs-popover-header-bg: #f0f0f0;--bs-popover-body-padding-x: 0.9rem;--bs-popover-body-padding-y: 0.9rem;--bs-popover-body-color: #f7fafa;--bs-popover-arrow-width: 1rem;--bs-popover-arrow-height: 0.5rem;--bs-popover-arrow-border: var(--bs-popover-border-color);z-index:var(--bs-popover-zindex);display:block;max-width:var(--bs-popover-max-width);font-family:var(--bs-font-sans-serif);font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;white-space:normal;word-spacing:normal;line-break:auto;font-size:var(--bs-popover-font-size);word-wrap:break-word;background-color:var(--bs-popover-bg);background-clip:padding-box;border:var(--bs-popover-border-width) solid var(--bs-popover-border-color);border-radius:var(--bs-popover-border-radius)}.popover .popover-arrow{display:block;width:var(--bs-popover-arrow-width);height:var(--bs-popover-arrow-height)}.popover .popover-arrow::before,.popover .popover-arrow::after{position:absolute;display:block;content:"";border-color:rgba(0,0,0,0);border-style:solid;border-width:0}.bs-popover-top>.popover-arrow,.bs-popover-auto[data-popper-placement^=top]>.popover-arrow{bottom:calc(-1*(var(--bs-popover-arrow-height)) - var(--bs-popover-border-width))}.bs-popover-top>.popover-arrow::before,.bs-popover-auto[data-popper-placement^=top]>.popover-arrow::before,.bs-popover-top>.popover-arrow::after,.bs-popover-auto[data-popper-placement^=top]>.popover-arrow::after{border-width:var(--bs-popover-arrow-height) calc(var(--bs-popover-arrow-width)*.5) 0}.bs-popover-top>.popover-arrow::before,.bs-popover-auto[data-popper-placement^=top]>.popover-arrow::before{bottom:0;border-top-color:var(--bs-popover-arrow-border)}.bs-popover-top>.popover-arrow::after,.bs-popover-auto[data-popper-placement^=top]>.popover-arrow::after{bottom:var(--bs-popover-border-width);border-top-color:var(--bs-popover-bg)}.bs-popover-end>.popover-arrow,.bs-popover-auto[data-popper-placement^=right]>.popover-arrow{left:calc(-1*(var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));width:var(--bs-popover-arrow-height);height:var(--bs-popover-arrow-width)}.bs-popover-end>.popover-arrow::before,.bs-popover-auto[data-popper-placement^=right]>.popover-arrow::before,.bs-popover-end>.popover-arrow::after,.bs-popover-auto[data-popper-placement^=right]>.popover-arrow::after{border-width:calc(var(--bs-popover-arrow-width)*.5) var(--bs-popover-arrow-height) calc(var(--bs-popover-arrow-width)*.5) 0}.bs-popover-end>.popover-arrow::before,.bs-popover-auto[data-popper-placement^=right]>.popover-arrow::before{left:0;border-right-color:var(--bs-popover-arrow-border)}.bs-popover-end>.popover-arrow::after,.bs-popover-auto[data-popper-placement^=right]>.popover-arrow::after{left:var(--bs-popover-border-width);border-right-color:var(--bs-popover-bg)}.bs-popover-bottom>.popover-arrow,.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow{top:calc(-1*(var(--bs-popover-arrow-height)) - var(--bs-popover-border-width))}.bs-popover-bottom>.popover-arrow::before,.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow::before,.bs-popover-bottom>.popover-arrow::after,.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow::after{border-width:0 calc(var(--bs-popover-arrow-width)*.5) var(--bs-popover-arrow-height)}.bs-popover-bottom>.popover-arrow::before,.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow::before{top:0;border-bottom-color:var(--bs-popover-arrow-border)}.bs-popover-bottom>.popover-arrow::after,.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow::after{top:var(--bs-popover-border-width);border-bottom-color:var(--bs-popover-bg)}.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:var(--bs-popover-arrow-width);margin-left:calc(-0.5*var(--bs-popover-arrow-width));content:"";border-bottom:var(--bs-popover-border-width) solid var(--bs-popover-header-bg)}.bs-popover-start>.popover-arrow,.bs-popover-auto[data-popper-placement^=left]>.popover-arrow{right:calc(-1*(var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));width:var(--bs-popover-arrow-height);height:var(--bs-popover-arrow-width)}.bs-popover-start>.popover-arrow::before,.bs-popover-auto[data-popper-placement^=left]>.popover-arrow::before,.bs-popover-start>.popover-arrow::after,.bs-popover-auto[data-popper-placement^=left]>.popover-arrow::after{border-width:calc(var(--bs-popover-arrow-width)*.5) 0 calc(var(--bs-popover-arrow-width)*.5) var(--bs-popover-arrow-height)}.bs-popover-start>.popover-arrow::before,.bs-popover-auto[data-popper-placement^=left]>.popover-arrow::before{right:0;border-left-color:var(--bs-popover-arrow-border)}.bs-popover-start>.popover-arrow::after,.bs-popover-auto[data-popper-placement^=left]>.popover-arrow::after{right:var(--bs-popover-border-width);border-left-color:var(--bs-popover-bg)}.popover-header{padding:var(--bs-popover-header-padding-y) var(--bs-popover-header-padding-x);margin-bottom:0;font-size:var(--bs-popover-header-font-size);color:var(--bs-popover-header-color);background-color:var(--bs-popover-header-bg);border-bottom:var(--bs-popover-border-width) solid var(--bs-popover-border-color);border-top-left-radius:var(--bs-popover-inner-border-radius);border-top-right-radius:var(--bs-popover-inner-border-radius)}.popover-header:empty{display:none}.popover-body{padding:var(--bs-popover-body-padding-y) var(--bs-popover-body-padding-x);color:var(--bs-popover-body-color)}.carousel{position:relative}.carousel.pointer-event{touch-action:pan-y}.carousel-inner{position:relative;width:100%;overflow:hidden}.carousel-inner::after{display:block;clear:both;content:""}.carousel-item{position:relative;display:none;float:left;width:100%;margin-right:-100%;backface-visibility:hidden;transition:transform .6s ease-in-out}@media(prefers-reduced-motion: reduce){.carousel-item{transition:none}}.carousel-item.active,.carousel-item-next,.carousel-item-prev{display:block}.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%)}.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 .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:.5;transition:opacity .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:.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%}.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 rgba(0,0,0,0);border-bottom:10px solid rgba(0,0,0,0);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-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}.spinner-grow,.spinner-border{display:inline-block;width:var(--bs-spinner-width);height:var(--bs-spinner-height);vertical-align:var(--bs-spinner-vertical-align);border-radius:50%;animation:var(--bs-spinner-animation-speed) linear infinite var(--bs-spinner-animation-name)}@keyframes spinner-border{to{transform:rotate(360deg) /* rtl:ignore */}}.spinner-border{--bs-spinner-width: 2rem;--bs-spinner-height: 2rem;--bs-spinner-vertical-align: -0.125em;--bs-spinner-border-width: 0.25em;--bs-spinner-animation-speed: 0.75s;--bs-spinner-animation-name: spinner-border;border:var(--bs-spinner-border-width) solid currentcolor;border-right-color:rgba(0,0,0,0)}.spinner-border-sm{--bs-spinner-width: 1rem;--bs-spinner-height: 1rem;--bs-spinner-border-width: 0.2em}@keyframes spinner-grow{0%{transform:scale(0)}50%{opacity:1;transform:none}}.spinner-grow{--bs-spinner-width: 2rem;--bs-spinner-height: 2rem;--bs-spinner-vertical-align: -0.125em;--bs-spinner-animation-speed: 0.75s;--bs-spinner-animation-name: spinner-grow;background-color:currentcolor;opacity:0}.spinner-grow-sm{--bs-spinner-width: 1rem;--bs-spinner-height: 1rem}@media(prefers-reduced-motion: reduce){.spinner-border,.spinner-grow{--bs-spinner-animation-speed: 1.5s}}.offcanvas,.offcanvas-xxxl,.offcanvas-xxl,.offcanvas-xl,.offcanvas-lg,.offcanvas-md,.offcanvas-sm{--bs-offcanvas-zindex: 1045;--bs-offcanvas-width: 400px;--bs-offcanvas-height: 30vh;--bs-offcanvas-padding-x: 0.9rem;--bs-offcanvas-padding-y: 0.9rem;--bs-offcanvas-color: #f7fafa;--bs-offcanvas-bg: #1a2433;--bs-offcanvas-border-width: 1px;--bs-offcanvas-border-color: var(--bs-border-color-translucent);--bs-offcanvas-box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075)}@media(max-width: 575.98px){.offcanvas-sm{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:transform .3s ease-in-out}}@media(max-width: 575.98px)and (prefers-reduced-motion: reduce){.offcanvas-sm{transition:none}}@media(max-width: 575.98px){.offcanvas-sm.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(-100%)}}@media(max-width: 575.98px){.offcanvas-sm.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(100%)}}@media(max-width: 575.98px){.offcanvas-sm.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}}@media(max-width: 575.98px){.offcanvas-sm.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}}@media(max-width: 575.98px){.offcanvas-sm.showing,.offcanvas-sm.show:not(.hiding){transform:none}}@media(max-width: 575.98px){.offcanvas-sm.showing,.offcanvas-sm.hiding,.offcanvas-sm.show{visibility:visible}}@media(min-width: 576px){.offcanvas-sm{--bs-offcanvas-height: auto;--bs-offcanvas-border-width: 0;background-color:rgba(0,0,0,0) !important}.offcanvas-sm .offcanvas-header{display:none}.offcanvas-sm .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible;background-color:rgba(0,0,0,0) !important}}@media(max-width: 767.98px){.offcanvas-md{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:transform .3s ease-in-out}}@media(max-width: 767.98px)and (prefers-reduced-motion: reduce){.offcanvas-md{transition:none}}@media(max-width: 767.98px){.offcanvas-md.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(-100%)}}@media(max-width: 767.98px){.offcanvas-md.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(100%)}}@media(max-width: 767.98px){.offcanvas-md.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}}@media(max-width: 767.98px){.offcanvas-md.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}}@media(max-width: 767.98px){.offcanvas-md.showing,.offcanvas-md.show:not(.hiding){transform:none}}@media(max-width: 767.98px){.offcanvas-md.showing,.offcanvas-md.hiding,.offcanvas-md.show{visibility:visible}}@media(min-width: 768px){.offcanvas-md{--bs-offcanvas-height: auto;--bs-offcanvas-border-width: 0;background-color:rgba(0,0,0,0) !important}.offcanvas-md .offcanvas-header{display:none}.offcanvas-md .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible;background-color:rgba(0,0,0,0) !important}}@media(max-width: 991.98px){.offcanvas-lg{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:transform .3s ease-in-out}}@media(max-width: 991.98px)and (prefers-reduced-motion: reduce){.offcanvas-lg{transition:none}}@media(max-width: 991.98px){.offcanvas-lg.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(-100%)}}@media(max-width: 991.98px){.offcanvas-lg.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(100%)}}@media(max-width: 991.98px){.offcanvas-lg.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}}@media(max-width: 991.98px){.offcanvas-lg.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}}@media(max-width: 991.98px){.offcanvas-lg.showing,.offcanvas-lg.show:not(.hiding){transform:none}}@media(max-width: 991.98px){.offcanvas-lg.showing,.offcanvas-lg.hiding,.offcanvas-lg.show{visibility:visible}}@media(min-width: 992px){.offcanvas-lg{--bs-offcanvas-height: auto;--bs-offcanvas-border-width: 0;background-color:rgba(0,0,0,0) !important}.offcanvas-lg .offcanvas-header{display:none}.offcanvas-lg .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible;background-color:rgba(0,0,0,0) !important}}@media(max-width: 1199.98px){.offcanvas-xl{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:transform .3s ease-in-out}}@media(max-width: 1199.98px)and (prefers-reduced-motion: reduce){.offcanvas-xl{transition:none}}@media(max-width: 1199.98px){.offcanvas-xl.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(-100%)}}@media(max-width: 1199.98px){.offcanvas-xl.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(100%)}}@media(max-width: 1199.98px){.offcanvas-xl.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}}@media(max-width: 1199.98px){.offcanvas-xl.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}}@media(max-width: 1199.98px){.offcanvas-xl.showing,.offcanvas-xl.show:not(.hiding){transform:none}}@media(max-width: 1199.98px){.offcanvas-xl.showing,.offcanvas-xl.hiding,.offcanvas-xl.show{visibility:visible}}@media(min-width: 1200px){.offcanvas-xl{--bs-offcanvas-height: auto;--bs-offcanvas-border-width: 0;background-color:rgba(0,0,0,0) !important}.offcanvas-xl .offcanvas-header{display:none}.offcanvas-xl .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible;background-color:rgba(0,0,0,0) !important}}@media(max-width: 1399.98px){.offcanvas-xxl{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:transform .3s ease-in-out}}@media(max-width: 1399.98px)and (prefers-reduced-motion: reduce){.offcanvas-xxl{transition:none}}@media(max-width: 1399.98px){.offcanvas-xxl.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(-100%)}}@media(max-width: 1399.98px){.offcanvas-xxl.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(100%)}}@media(max-width: 1399.98px){.offcanvas-xxl.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}}@media(max-width: 1399.98px){.offcanvas-xxl.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}}@media(max-width: 1399.98px){.offcanvas-xxl.showing,.offcanvas-xxl.show:not(.hiding){transform:none}}@media(max-width: 1399.98px){.offcanvas-xxl.showing,.offcanvas-xxl.hiding,.offcanvas-xxl.show{visibility:visible}}@media(min-width: 1400px){.offcanvas-xxl{--bs-offcanvas-height: auto;--bs-offcanvas-border-width: 0;background-color:rgba(0,0,0,0) !important}.offcanvas-xxl .offcanvas-header{display:none}.offcanvas-xxl .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible;background-color:rgba(0,0,0,0) !important}}@media(max-width: 1899.98px){.offcanvas-xxxl{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:transform .3s ease-in-out}}@media(max-width: 1899.98px)and (prefers-reduced-motion: reduce){.offcanvas-xxxl{transition:none}}@media(max-width: 1899.98px){.offcanvas-xxxl.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(-100%)}}@media(max-width: 1899.98px){.offcanvas-xxxl.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(100%)}}@media(max-width: 1899.98px){.offcanvas-xxxl.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}}@media(max-width: 1899.98px){.offcanvas-xxxl.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}}@media(max-width: 1899.98px){.offcanvas-xxxl.showing,.offcanvas-xxxl.show:not(.hiding){transform:none}}@media(max-width: 1899.98px){.offcanvas-xxxl.showing,.offcanvas-xxxl.hiding,.offcanvas-xxxl.show{visibility:visible}}@media(min-width: 1900px){.offcanvas-xxxl{--bs-offcanvas-height: auto;--bs-offcanvas-border-width: 0;background-color:rgba(0,0,0,0) !important}.offcanvas-xxxl .offcanvas-header{display:none}.offcanvas-xxxl .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible;background-color:rgba(0,0,0,0) !important}}.offcanvas{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:transform .3s ease-in-out}@media(prefers-reduced-motion: reduce){.offcanvas{transition:none}}.offcanvas.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(-100%)}.offcanvas.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(100%)}.offcanvas.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}.offcanvas.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}.offcanvas.showing,.offcanvas.show:not(.hiding){transform:none}.offcanvas.showing,.offcanvas.hiding,.offcanvas.show{visibility:visible}.offcanvas-backdrop{position:fixed;top:0;left:0;z-index:1040;width:100vw;height:100vh;background-color:#000}.offcanvas-backdrop.fade{opacity:0}.offcanvas-backdrop.show{opacity:.5}.offcanvas-header{display:flex;align-items:center;justify-content:space-between;padding:var(--bs-offcanvas-padding-y) var(--bs-offcanvas-padding-x)}.offcanvas-header .btn-close{padding:calc(var(--bs-offcanvas-padding-y)*.5) calc(var(--bs-offcanvas-padding-x)*.5);margin-top:calc(-0.5*var(--bs-offcanvas-padding-y));margin-right:calc(-0.5*var(--bs-offcanvas-padding-x));margin-bottom:calc(-0.5*var(--bs-offcanvas-padding-y))}.offcanvas-title{margin-bottom:0;line-height:1.5}.offcanvas-body{flex-grow:1;padding:var(--bs-offcanvas-padding-y) var(--bs-offcanvas-padding-x);overflow-y:auto}.placeholder{display:inline-block;min-height:1em;vertical-align:middle;cursor:wait;background-color:currentcolor;opacity:.5}.placeholder.btn::before{display:inline-block;content:""}.placeholder-xs{min-height:.6em}.placeholder-sm{min-height:.8em}.placeholder-lg{min-height:1.2em}.placeholder-glow .placeholder{animation:placeholder-glow 2s ease-in-out infinite}@keyframes placeholder-glow{50%{opacity:.2}}.placeholder-wave{mask-image:linear-gradient(130deg, #000 55%, rgba(0, 0, 0, 0.8) 75%, #000 95%);mask-size:200% 100%;animation:placeholder-wave 2s linear infinite}@keyframes placeholder-wave{100%{mask-position:-200% 0%}}.clearfix::after{display:block;clear:both;content:""}.text-bg-primary{color:#fff !important;background-color:RGBA(13, 110, 253, var(--bs-bg-opacity, 1)) !important}.text-bg-secondary{color:#fff !important;background-color:RGBA(108, 117, 125, var(--bs-bg-opacity, 1)) !important}.text-bg-success{color:#fff !important;background-color:RGBA(25, 135, 84, var(--bs-bg-opacity, 1)) !important}.text-bg-info{color:#000 !important;background-color:RGBA(13, 202, 240, var(--bs-bg-opacity, 1)) !important}.text-bg-warning{color:#000 !important;background-color:RGBA(255, 193, 7, var(--bs-bg-opacity, 1)) !important}.text-bg-danger{color:#fff !important;background-color:RGBA(220, 53, 69, var(--bs-bg-opacity, 1)) !important}.text-bg-light{color:#000 !important;background-color:RGBA(233, 236, 239, var(--bs-bg-opacity, 1)) !important}.text-bg-dark{color:#fff !important;background-color:RGBA(12, 17, 24, var(--bs-bg-opacity, 1)) !important}.link-primary{color:#0d6efd !important}.link-primary:hover,.link-primary:focus{color:#0a58ca !important}.link-secondary{color:#6c757d !important}.link-secondary:hover,.link-secondary:focus{color:#565e64 !important}.link-success{color:#198754 !important}.link-success:hover,.link-success:focus{color:#146c43 !important}.link-info{color:#0dcaf0 !important}.link-info:hover,.link-info:focus{color:#3dd5f3 !important}.link-warning{color:#ffc107 !important}.link-warning:hover,.link-warning:focus{color:#ffcd39 !important}.link-danger{color:#dc3545 !important}.link-danger:hover,.link-danger:focus{color:#b02a37 !important}.link-light{color:#e9ecef !important}.link-light:hover,.link-light:focus{color:#edf0f2 !important}.link-dark{color:#0c1118 !important}.link-dark:hover,.link-dark:focus{color:#0a0e13 !important}.ratio{position:relative;width:100%}.ratio::before{display:block;padding-top:var(--bs-aspect-ratio);content:""}.ratio>*{position:absolute;top:0;left:0;width:100%;height:100%}.ratio-1x1{--bs-aspect-ratio: 100%}.ratio-4x3{--bs-aspect-ratio: 75%}.ratio-16x9{--bs-aspect-ratio: 56.25%}.ratio-21x9{--bs-aspect-ratio: 42.8571428571%}.fixed-top{position:fixed;top:0;right:0;left:0;z-index:1030}.fixed-bottom{position:fixed;right:0;bottom:0;left:0;z-index:1030}.sticky-top{position:sticky;top:0;z-index:1020}.sticky-bottom{position:sticky;bottom:0;z-index:1020}@media(min-width: 576px){.sticky-sm-top{position:sticky;top:0;z-index:1020}.sticky-sm-bottom{position:sticky;bottom:0;z-index:1020}}@media(min-width: 768px){.sticky-md-top{position:sticky;top:0;z-index:1020}.sticky-md-bottom{position:sticky;bottom:0;z-index:1020}}@media(min-width: 992px){.sticky-lg-top{position:sticky;top:0;z-index:1020}.sticky-lg-bottom{position:sticky;bottom:0;z-index:1020}}@media(min-width: 1200px){.sticky-xl-top{position:sticky;top:0;z-index:1020}.sticky-xl-bottom{position:sticky;bottom:0;z-index:1020}}@media(min-width: 1400px){.sticky-xxl-top{position:sticky;top:0;z-index:1020}.sticky-xxl-bottom{position:sticky;bottom:0;z-index:1020}}@media(min-width: 1900px){.sticky-xxxl-top{position:sticky;top:0;z-index:1020}.sticky-xxxl-bottom{position:sticky;bottom:0;z-index:1020}}.hstack{display:flex;flex-direction:row;align-items:center;align-self:stretch}.vstack{display:flex;flex:1 1 auto;flex-direction:column;align-self:stretch}.visually-hidden,.visually-hidden-focusable:not(:focus):not(:focus-within){position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;white-space:nowrap !important;border:0 !important}.stretched-link::after{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;content:""}.text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vr{display:inline-block;align-self:stretch;width:1px;min-height:1em;background-color:currentcolor;opacity:.25}.align-baseline{vertical-align:baseline !important}.align-top{vertical-align:top !important}.align-middle{vertical-align:middle !important}.align-bottom{vertical-align:bottom !important}.align-text-bottom{vertical-align:text-bottom !important}.align-text-top{vertical-align:text-top !important}.float-start{float:left !important}.float-end{float:right !important}.float-none{float:none !important}.opacity-0{opacity:0 !important}.opacity-25{opacity:.25 !important}.opacity-50{opacity:.5 !important}.opacity-75{opacity:.75 !important}.opacity-100{opacity:1 !important}.overflow-auto{overflow:auto !important}.overflow-hidden{overflow:hidden !important}.overflow-visible{overflow:visible !important}.overflow-scroll{overflow:scroll !important}.d-inline{display:inline !important}.d-inline-block{display:inline-block !important}.d-block{display:block !important}.d-grid{display:grid !important}.d-table{display:table !important}.d-table-row{display:table-row !important}.d-table-cell{display:table-cell !important}.d-flex{display:flex !important}.d-inline-flex{display:inline-flex !important}.d-none{display:none !important}.shadow{box-shadow:0 .5rem 1rem rgba(0,0,0,.15) !important}.shadow-sm{box-shadow:0 .125rem .25rem rgba(0,0,0,.075) !important}.shadow-lg{box-shadow:0 1rem 3rem rgba(0,0,0,.175) !important}.shadow-none{box-shadow:none !important}.position-static{position:static !important}.position-relative{position:relative !important}.position-absolute{position:absolute !important}.position-fixed{position:fixed !important}.position-sticky{position:sticky !important}.top-0{top:0 !important}.top-50{top:50% !important}.top-100{top:100% !important}.bottom-0{bottom:0 !important}.bottom-50{bottom:50% !important}.bottom-100{bottom:100% !important}.start-0{left:0 !important}.start-50{left:50% !important}.start-100{left:100% !important}.end-0{right:0 !important}.end-50{right:50% !important}.end-100{right:100% !important}.translate-middle{transform:translate(-50%, -50%) !important}.translate-middle-x{transform:translateX(-50%) !important}.translate-middle-y{transform:translateY(-50%) !important}.border{border:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important}.border-0{border:0 !important}.border-top{border-top:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important}.border-top-0{border-top:0 !important}.border-end{border-right:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important}.border-end-0{border-right:0 !important}.border-bottom{border-bottom:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important}.border-bottom-0{border-bottom:0 !important}.border-start{border-left:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important}.border-start-0{border-left:0 !important}.border-primary{--bs-border-opacity: 1;border-color:rgba(var(--bs-primary-rgb), var(--bs-border-opacity)) !important}.border-secondary{--bs-border-opacity: 1;border-color:rgba(var(--bs-secondary-rgb), var(--bs-border-opacity)) !important}.border-success{--bs-border-opacity: 1;border-color:rgba(var(--bs-success-rgb), var(--bs-border-opacity)) !important}.border-info{--bs-border-opacity: 1;border-color:rgba(var(--bs-info-rgb), var(--bs-border-opacity)) !important}.border-warning{--bs-border-opacity: 1;border-color:rgba(var(--bs-warning-rgb), var(--bs-border-opacity)) !important}.border-danger{--bs-border-opacity: 1;border-color:rgba(var(--bs-danger-rgb), var(--bs-border-opacity)) !important}.border-light{--bs-border-opacity: 1;border-color:rgba(var(--bs-light-rgb), var(--bs-border-opacity)) !important}.border-dark{--bs-border-opacity: 1;border-color:rgba(var(--bs-dark-rgb), var(--bs-border-opacity)) !important}.border-white{--bs-border-opacity: 1;border-color:rgba(var(--bs-white-rgb), var(--bs-border-opacity)) !important}.border-1{--bs-border-width: 1px}.border-2{--bs-border-width: 2px}.border-3{--bs-border-width: 3px}.border-4{--bs-border-width: 4px}.border-5{--bs-border-width: 5px}.border-opacity-10{--bs-border-opacity: 0.1}.border-opacity-25{--bs-border-opacity: 0.25}.border-opacity-50{--bs-border-opacity: 0.5}.border-opacity-75{--bs-border-opacity: 0.75}.border-opacity-100{--bs-border-opacity: 1}.w-25{width:25% !important}.w-50{width:50% !important}.w-75{width:75% !important}.w-100{width:100% !important}.w-auto{width:auto !important}.mw-100{max-width:100% !important}.vw-100{width:100vw !important}.min-vw-100{min-width:100vw !important}.h-25{height:25% !important}.h-50{height:50% !important}.h-75{height:75% !important}.h-100{height:100% !important}.h-auto{height:auto !important}.mh-100{max-height:100% !important}.vh-100{height:100vh !important}.min-vh-100{min-height:100vh !important}.flex-fill{flex:1 1 auto !important}.flex-row{flex-direction:row !important}.flex-column{flex-direction:column !important}.flex-row-reverse{flex-direction:row-reverse !important}.flex-column-reverse{flex-direction:column-reverse !important}.flex-grow-0{flex-grow:0 !important}.flex-grow-1{flex-grow:1 !important}.flex-shrink-0{flex-shrink:0 !important}.flex-shrink-1{flex-shrink:1 !important}.flex-wrap{flex-wrap:wrap !important}.flex-nowrap{flex-wrap:nowrap !important}.flex-wrap-reverse{flex-wrap:wrap-reverse !important}.justify-content-start{justify-content:flex-start !important}.justify-content-end{justify-content:flex-end !important}.justify-content-center{justify-content:center !important}.justify-content-between{justify-content:space-between !important}.justify-content-around{justify-content:space-around !important}.justify-content-evenly{justify-content:space-evenly !important}.align-items-start{align-items:flex-start !important}.align-items-end{align-items:flex-end !important}.align-items-center{align-items:center !important}.align-items-baseline{align-items:baseline !important}.align-items-stretch{align-items:stretch !important}.align-content-start{align-content:flex-start !important}.align-content-end{align-content:flex-end !important}.align-content-center{align-content:center !important}.align-content-between{align-content:space-between !important}.align-content-around{align-content:space-around !important}.align-content-stretch{align-content:stretch !important}.align-self-auto{align-self:auto !important}.align-self-start{align-self:flex-start !important}.align-self-end{align-self:flex-end !important}.align-self-center{align-self:center !important}.align-self-baseline{align-self:baseline !important}.align-self-stretch{align-self:stretch !important}.order-first{order:-1 !important}.order-0{order:0 !important}.order-1{order:1 !important}.order-2{order:2 !important}.order-3{order:3 !important}.order-4{order:4 !important}.order-5{order:5 !important}.order-last{order:6 !important}.m-0{margin:0 !important}.m-1{margin:.225rem !important}.m-2{margin:.45rem !important}.m-3{margin:.9rem !important}.m-4{margin:1.35rem !important}.m-5{margin:1.8rem !important}.m-6{margin:2.25rem !important}.m-7{margin:2.7rem !important}.m-8{margin:3.15rem !important}.m-9{margin:3.6rem !important}.m-tiny{margin:.135rem !important}.m-auto{margin:auto !important}.mx-0{margin-right:0 !important;margin-left:0 !important}.mx-1{margin-right:.225rem !important;margin-left:.225rem !important}.mx-2{margin-right:.45rem !important;margin-left:.45rem !important}.mx-3{margin-right:.9rem !important;margin-left:.9rem !important}.mx-4{margin-right:1.35rem !important;margin-left:1.35rem !important}.mx-5{margin-right:1.8rem !important;margin-left:1.8rem !important}.mx-6{margin-right:2.25rem !important;margin-left:2.25rem !important}.mx-7{margin-right:2.7rem !important;margin-left:2.7rem !important}.mx-8{margin-right:3.15rem !important;margin-left:3.15rem !important}.mx-9{margin-right:3.6rem !important;margin-left:3.6rem !important}.mx-tiny{margin-right:.135rem !important;margin-left:.135rem !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:.225rem !important;margin-bottom:.225rem !important}.my-2{margin-top:.45rem !important;margin-bottom:.45rem !important}.my-3{margin-top:.9rem !important;margin-bottom:.9rem !important}.my-4{margin-top:1.35rem !important;margin-bottom:1.35rem !important}.my-5{margin-top:1.8rem !important;margin-bottom:1.8rem !important}.my-6{margin-top:2.25rem !important;margin-bottom:2.25rem !important}.my-7{margin-top:2.7rem !important;margin-bottom:2.7rem !important}.my-8{margin-top:3.15rem !important;margin-bottom:3.15rem !important}.my-9{margin-top:3.6rem !important;margin-bottom:3.6rem !important}.my-tiny{margin-top:.135rem !important;margin-bottom:.135rem !important}.my-auto{margin-top:auto !important;margin-bottom:auto !important}.mt-0{margin-top:0 !important}.mt-1{margin-top:.225rem !important}.mt-2{margin-top:.45rem !important}.mt-3{margin-top:.9rem !important}.mt-4{margin-top:1.35rem !important}.mt-5{margin-top:1.8rem !important}.mt-6{margin-top:2.25rem !important}.mt-7{margin-top:2.7rem !important}.mt-8{margin-top:3.15rem !important}.mt-9{margin-top:3.6rem !important}.mt-tiny{margin-top:.135rem !important}.mt-auto{margin-top:auto !important}.me-0{margin-right:0 !important}.me-1{margin-right:.225rem !important}.me-2{margin-right:.45rem !important}.me-3{margin-right:.9rem !important}.me-4{margin-right:1.35rem !important}.me-5{margin-right:1.8rem !important}.me-6{margin-right:2.25rem !important}.me-7{margin-right:2.7rem !important}.me-8{margin-right:3.15rem !important}.me-9{margin-right:3.6rem !important}.me-tiny{margin-right:.135rem !important}.me-auto{margin-right:auto !important}.mb-0{margin-bottom:0 !important}.mb-1{margin-bottom:.225rem !important}.mb-2{margin-bottom:.45rem !important}.mb-3{margin-bottom:.9rem !important}.mb-4{margin-bottom:1.35rem !important}.mb-5{margin-bottom:1.8rem !important}.mb-6{margin-bottom:2.25rem !important}.mb-7{margin-bottom:2.7rem !important}.mb-8{margin-bottom:3.15rem !important}.mb-9{margin-bottom:3.6rem !important}.mb-tiny{margin-bottom:.135rem !important}.mb-auto{margin-bottom:auto !important}.ms-0{margin-left:0 !important}.ms-1{margin-left:.225rem !important}.ms-2{margin-left:.45rem !important}.ms-3{margin-left:.9rem !important}.ms-4{margin-left:1.35rem !important}.ms-5{margin-left:1.8rem !important}.ms-6{margin-left:2.25rem !important}.ms-7{margin-left:2.7rem !important}.ms-8{margin-left:3.15rem !important}.ms-9{margin-left:3.6rem !important}.ms-tiny{margin-left:.135rem !important}.ms-auto{margin-left:auto !important}.m-n1{margin:-0.225rem !important}.m-n2{margin:-0.45rem !important}.m-n3{margin:-0.9rem !important}.m-n4{margin:-1.35rem !important}.m-n5{margin:-1.8rem !important}.m-n6{margin:-2.25rem !important}.m-n7{margin:-2.7rem !important}.m-n8{margin:-3.15rem !important}.m-n9{margin:-3.6rem !important}.m-ntiny{margin:-0.135rem !important}.mx-n1{margin-right:-0.225rem !important;margin-left:-0.225rem !important}.mx-n2{margin-right:-0.45rem !important;margin-left:-0.45rem !important}.mx-n3{margin-right:-0.9rem !important;margin-left:-0.9rem !important}.mx-n4{margin-right:-1.35rem !important;margin-left:-1.35rem !important}.mx-n5{margin-right:-1.8rem !important;margin-left:-1.8rem !important}.mx-n6{margin-right:-2.25rem !important;margin-left:-2.25rem !important}.mx-n7{margin-right:-2.7rem !important;margin-left:-2.7rem !important}.mx-n8{margin-right:-3.15rem !important;margin-left:-3.15rem !important}.mx-n9{margin-right:-3.6rem !important;margin-left:-3.6rem !important}.mx-ntiny{margin-right:-0.135rem !important;margin-left:-0.135rem !important}.my-n1{margin-top:-0.225rem !important;margin-bottom:-0.225rem !important}.my-n2{margin-top:-0.45rem !important;margin-bottom:-0.45rem !important}.my-n3{margin-top:-0.9rem !important;margin-bottom:-0.9rem !important}.my-n4{margin-top:-1.35rem !important;margin-bottom:-1.35rem !important}.my-n5{margin-top:-1.8rem !important;margin-bottom:-1.8rem !important}.my-n6{margin-top:-2.25rem !important;margin-bottom:-2.25rem !important}.my-n7{margin-top:-2.7rem !important;margin-bottom:-2.7rem !important}.my-n8{margin-top:-3.15rem !important;margin-bottom:-3.15rem !important}.my-n9{margin-top:-3.6rem !important;margin-bottom:-3.6rem !important}.my-ntiny{margin-top:-0.135rem !important;margin-bottom:-0.135rem !important}.mt-n1{margin-top:-0.225rem !important}.mt-n2{margin-top:-0.45rem !important}.mt-n3{margin-top:-0.9rem !important}.mt-n4{margin-top:-1.35rem !important}.mt-n5{margin-top:-1.8rem !important}.mt-n6{margin-top:-2.25rem !important}.mt-n7{margin-top:-2.7rem !important}.mt-n8{margin-top:-3.15rem !important}.mt-n9{margin-top:-3.6rem !important}.mt-ntiny{margin-top:-0.135rem !important}.me-n1{margin-right:-0.225rem !important}.me-n2{margin-right:-0.45rem !important}.me-n3{margin-right:-0.9rem !important}.me-n4{margin-right:-1.35rem !important}.me-n5{margin-right:-1.8rem !important}.me-n6{margin-right:-2.25rem !important}.me-n7{margin-right:-2.7rem !important}.me-n8{margin-right:-3.15rem !important}.me-n9{margin-right:-3.6rem !important}.me-ntiny{margin-right:-0.135rem !important}.mb-n1{margin-bottom:-0.225rem !important}.mb-n2{margin-bottom:-0.45rem !important}.mb-n3{margin-bottom:-0.9rem !important}.mb-n4{margin-bottom:-1.35rem !important}.mb-n5{margin-bottom:-1.8rem !important}.mb-n6{margin-bottom:-2.25rem !important}.mb-n7{margin-bottom:-2.7rem !important}.mb-n8{margin-bottom:-3.15rem !important}.mb-n9{margin-bottom:-3.6rem !important}.mb-ntiny{margin-bottom:-0.135rem !important}.ms-n1{margin-left:-0.225rem !important}.ms-n2{margin-left:-0.45rem !important}.ms-n3{margin-left:-0.9rem !important}.ms-n4{margin-left:-1.35rem !important}.ms-n5{margin-left:-1.8rem !important}.ms-n6{margin-left:-2.25rem !important}.ms-n7{margin-left:-2.7rem !important}.ms-n8{margin-left:-3.15rem !important}.ms-n9{margin-left:-3.6rem !important}.ms-ntiny{margin-left:-0.135rem !important}.p-0{padding:0 !important}.p-1{padding:.225rem !important}.p-2{padding:.45rem !important}.p-3{padding:.9rem !important}.p-4{padding:1.35rem !important}.p-5{padding:1.8rem !important}.p-6{padding:2.25rem !important}.p-7{padding:2.7rem !important}.p-8{padding:3.15rem !important}.p-9{padding:3.6rem !important}.p-tiny{padding:.135rem !important}.px-0{padding-right:0 !important;padding-left:0 !important}.px-1{padding-right:.225rem !important;padding-left:.225rem !important}.px-2{padding-right:.45rem !important;padding-left:.45rem !important}.px-3{padding-right:.9rem !important;padding-left:.9rem !important}.px-4{padding-right:1.35rem !important;padding-left:1.35rem !important}.px-5{padding-right:1.8rem !important;padding-left:1.8rem !important}.px-6{padding-right:2.25rem !important;padding-left:2.25rem !important}.px-7{padding-right:2.7rem !important;padding-left:2.7rem !important}.px-8{padding-right:3.15rem !important;padding-left:3.15rem !important}.px-9{padding-right:3.6rem !important;padding-left:3.6rem !important}.px-tiny{padding-right:.135rem !important;padding-left:.135rem !important}.py-0{padding-top:0 !important;padding-bottom:0 !important}.py-1{padding-top:.225rem !important;padding-bottom:.225rem !important}.py-2{padding-top:.45rem !important;padding-bottom:.45rem !important}.py-3{padding-top:.9rem !important;padding-bottom:.9rem !important}.py-4{padding-top:1.35rem !important;padding-bottom:1.35rem !important}.py-5{padding-top:1.8rem !important;padding-bottom:1.8rem !important}.py-6{padding-top:2.25rem !important;padding-bottom:2.25rem !important}.py-7{padding-top:2.7rem !important;padding-bottom:2.7rem !important}.py-8{padding-top:3.15rem !important;padding-bottom:3.15rem !important}.py-9{padding-top:3.6rem !important;padding-bottom:3.6rem !important}.py-tiny{padding-top:.135rem !important;padding-bottom:.135rem !important}.pt-0{padding-top:0 !important}.pt-1{padding-top:.225rem !important}.pt-2{padding-top:.45rem !important}.pt-3{padding-top:.9rem !important}.pt-4{padding-top:1.35rem !important}.pt-5{padding-top:1.8rem !important}.pt-6{padding-top:2.25rem !important}.pt-7{padding-top:2.7rem !important}.pt-8{padding-top:3.15rem !important}.pt-9{padding-top:3.6rem !important}.pt-tiny{padding-top:.135rem !important}.pe-0{padding-right:0 !important}.pe-1{padding-right:.225rem !important}.pe-2{padding-right:.45rem !important}.pe-3{padding-right:.9rem !important}.pe-4{padding-right:1.35rem !important}.pe-5{padding-right:1.8rem !important}.pe-6{padding-right:2.25rem !important}.pe-7{padding-right:2.7rem !important}.pe-8{padding-right:3.15rem !important}.pe-9{padding-right:3.6rem !important}.pe-tiny{padding-right:.135rem !important}.pb-0{padding-bottom:0 !important}.pb-1{padding-bottom:.225rem !important}.pb-2{padding-bottom:.45rem !important}.pb-3{padding-bottom:.9rem !important}.pb-4{padding-bottom:1.35rem !important}.pb-5{padding-bottom:1.8rem !important}.pb-6{padding-bottom:2.25rem !important}.pb-7{padding-bottom:2.7rem !important}.pb-8{padding-bottom:3.15rem !important}.pb-9{padding-bottom:3.6rem !important}.pb-tiny{padding-bottom:.135rem !important}.ps-0{padding-left:0 !important}.ps-1{padding-left:.225rem !important}.ps-2{padding-left:.45rem !important}.ps-3{padding-left:.9rem !important}.ps-4{padding-left:1.35rem !important}.ps-5{padding-left:1.8rem !important}.ps-6{padding-left:2.25rem !important}.ps-7{padding-left:2.7rem !important}.ps-8{padding-left:3.15rem !important}.ps-9{padding-left:3.6rem !important}.ps-tiny{padding-left:.135rem !important}.gap-0{gap:0 !important}.gap-1{gap:.225rem !important}.gap-2{gap:.45rem !important}.gap-3{gap:.9rem !important}.gap-4{gap:1.35rem !important}.gap-5{gap:1.8rem !important}.gap-6{gap:2.25rem !important}.gap-7{gap:2.7rem !important}.gap-8{gap:3.15rem !important}.gap-9{gap:3.6rem !important}.gap-tiny{gap:.135rem !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-semibold{font-weight:600 !important}.fw-bolder{font-weight:bolder !important}.lh-1{line-height:1 !important}.lh-sm{line-height:1.25 !important}.lh-base{line-height:1.5 !important}.lh-lg{line-height:2 !important}.text-start{text-align:left !important}.text-end{text-align:right !important}.text-center{text-align:center !important}.text-decoration-none{text-decoration:none !important}.text-decoration-underline{text-decoration:underline !important}.text-decoration-line-through{text-decoration:line-through !important}.text-lowercase{text-transform:lowercase !important}.text-uppercase{text-transform:uppercase !important}.text-capitalize{text-transform:capitalize !important}.text-wrap{white-space:normal !important}.text-nowrap{white-space:nowrap !important}.text-break{word-wrap:break-word !important;word-break:break-word !important}.text-primary{--bs-text-opacity: 1;color:rgba(var(--bs-primary-rgb), var(--bs-text-opacity)) !important}.text-secondary{--bs-text-opacity: 1;color:rgba(var(--bs-secondary-rgb), var(--bs-text-opacity)) !important}.text-success{--bs-text-opacity: 1;color:rgba(var(--bs-success-rgb), var(--bs-text-opacity)) !important}.text-info{--bs-text-opacity: 1;color:rgba(var(--bs-info-rgb), var(--bs-text-opacity)) !important}.text-warning{--bs-text-opacity: 1;color:rgba(var(--bs-warning-rgb), var(--bs-text-opacity)) !important}.text-danger{--bs-text-opacity: 1;color:rgba(var(--bs-danger-rgb), var(--bs-text-opacity)) !important}.text-light{--bs-text-opacity: 1;color:rgba(var(--bs-light-rgb), var(--bs-text-opacity)) !important}.text-dark{--bs-text-opacity: 1;color:rgba(var(--bs-dark-rgb), var(--bs-text-opacity)) !important}.text-black{--bs-text-opacity: 1;color:rgba(var(--bs-black-rgb), var(--bs-text-opacity)) !important}.text-white{--bs-text-opacity: 1;color:rgba(var(--bs-white-rgb), var(--bs-text-opacity)) !important}.text-body{--bs-text-opacity: 1;color:rgba(var(--bs-body-color-rgb), var(--bs-text-opacity)) !important}.text-muted{--bs-text-opacity: 1;color:#b2bac2 !important}.text-black-50{--bs-text-opacity: 1;color:rgba(0,0,0,.5) !important}.text-white-50{--bs-text-opacity: 1;color:rgba(255,255,255,.5) !important}.text-reset{--bs-text-opacity: 1;color:inherit !important}.text-opacity-25{--bs-text-opacity: 0.25}.text-opacity-50{--bs-text-opacity: 0.5}.text-opacity-75{--bs-text-opacity: 0.75}.text-opacity-100{--bs-text-opacity: 1}.bg-primary{--bs-bg-opacity: 1;background-color:rgba(var(--bs-primary-rgb), var(--bs-bg-opacity)) !important}.bg-secondary{--bs-bg-opacity: 1;background-color:rgba(var(--bs-secondary-rgb), var(--bs-bg-opacity)) !important}.bg-success{--bs-bg-opacity: 1;background-color:rgba(var(--bs-success-rgb), var(--bs-bg-opacity)) !important}.bg-info{--bs-bg-opacity: 1;background-color:rgba(var(--bs-info-rgb), var(--bs-bg-opacity)) !important}.bg-warning{--bs-bg-opacity: 1;background-color:rgba(var(--bs-warning-rgb), var(--bs-bg-opacity)) !important}.bg-danger{--bs-bg-opacity: 1;background-color:rgba(var(--bs-danger-rgb), var(--bs-bg-opacity)) !important}.bg-light{--bs-bg-opacity: 1;background-color:rgba(var(--bs-light-rgb), var(--bs-bg-opacity)) !important}.bg-dark{--bs-bg-opacity: 1;background-color:rgba(var(--bs-dark-rgb), var(--bs-bg-opacity)) !important}.bg-black{--bs-bg-opacity: 1;background-color:rgba(var(--bs-black-rgb), var(--bs-bg-opacity)) !important}.bg-white{--bs-bg-opacity: 1;background-color:rgba(var(--bs-white-rgb), var(--bs-bg-opacity)) !important}.bg-body{--bs-bg-opacity: 1;background-color:rgba(var(--bs-body-bg-rgb), var(--bs-bg-opacity)) !important}.bg-transparent{--bs-bg-opacity: 1;background-color:rgba(0,0,0,0) !important}.bg-opacity-10{--bs-bg-opacity: 0.1}.bg-opacity-25{--bs-bg-opacity: 0.25}.bg-opacity-50{--bs-bg-opacity: 0.5}.bg-opacity-75{--bs-bg-opacity: 0.75}.bg-opacity-100{--bs-bg-opacity: 1}.bg-gradient{background-image:var(--bs-gradient) !important}.user-select-all{user-select:all !important}.user-select-auto{user-select:auto !important}.user-select-none{user-select:none !important}.pe-none{pointer-events:none !important}.pe-auto{pointer-events:auto !important}.rounded{border-radius:var(--bs-border-radius) !important}.rounded-0{border-radius:0 !important}.rounded-1{border-radius:var(--bs-border-radius-sm) !important}.rounded-2{border-radius:var(--bs-border-radius) !important}.rounded-3{border-radius:var(--bs-border-radius-lg) !important}.rounded-4{border-radius:var(--bs-border-radius-xl) !important}.rounded-5{border-radius:var(--bs-border-radius-2xl) !important}.rounded-circle{border-radius:50% !important}.rounded-pill{border-radius:var(--bs-border-radius-pill) !important}.rounded-top{border-top-left-radius:var(--bs-border-radius) !important;border-top-right-radius:var(--bs-border-radius) !important}.rounded-end{border-top-right-radius:var(--bs-border-radius) !important;border-bottom-right-radius:var(--bs-border-radius) !important}.rounded-bottom{border-bottom-right-radius:var(--bs-border-radius) !important;border-bottom-left-radius:var(--bs-border-radius) !important}.rounded-start{border-bottom-left-radius:var(--bs-border-radius) !important;border-top-left-radius:var(--bs-border-radius) !important}.visible{visibility:visible !important}.invisible{visibility:hidden !important}@media(min-width: 576px){.float-sm-start{float:left !important}.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}.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:.225rem !important}.m-sm-2{margin:.45rem !important}.m-sm-3{margin:.9rem !important}.m-sm-4{margin:1.35rem !important}.m-sm-5{margin:1.8rem !important}.m-sm-6{margin:2.25rem !important}.m-sm-7{margin:2.7rem !important}.m-sm-8{margin:3.15rem !important}.m-sm-9{margin:3.6rem !important}.m-sm-tiny{margin:.135rem !important}.m-sm-auto{margin:auto !important}.mx-sm-0{margin-right:0 !important;margin-left:0 !important}.mx-sm-1{margin-right:.225rem !important;margin-left:.225rem !important}.mx-sm-2{margin-right:.45rem !important;margin-left:.45rem !important}.mx-sm-3{margin-right:.9rem !important;margin-left:.9rem !important}.mx-sm-4{margin-right:1.35rem !important;margin-left:1.35rem !important}.mx-sm-5{margin-right:1.8rem !important;margin-left:1.8rem !important}.mx-sm-6{margin-right:2.25rem !important;margin-left:2.25rem !important}.mx-sm-7{margin-right:2.7rem !important;margin-left:2.7rem !important}.mx-sm-8{margin-right:3.15rem !important;margin-left:3.15rem !important}.mx-sm-9{margin-right:3.6rem !important;margin-left:3.6rem !important}.mx-sm-tiny{margin-right:.135rem !important;margin-left:.135rem !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:.225rem !important;margin-bottom:.225rem !important}.my-sm-2{margin-top:.45rem !important;margin-bottom:.45rem !important}.my-sm-3{margin-top:.9rem !important;margin-bottom:.9rem !important}.my-sm-4{margin-top:1.35rem !important;margin-bottom:1.35rem !important}.my-sm-5{margin-top:1.8rem !important;margin-bottom:1.8rem !important}.my-sm-6{margin-top:2.25rem !important;margin-bottom:2.25rem !important}.my-sm-7{margin-top:2.7rem !important;margin-bottom:2.7rem !important}.my-sm-8{margin-top:3.15rem !important;margin-bottom:3.15rem !important}.my-sm-9{margin-top:3.6rem !important;margin-bottom:3.6rem !important}.my-sm-tiny{margin-top:.135rem !important;margin-bottom:.135rem !important}.my-sm-auto{margin-top:auto !important;margin-bottom:auto !important}.mt-sm-0{margin-top:0 !important}.mt-sm-1{margin-top:.225rem !important}.mt-sm-2{margin-top:.45rem !important}.mt-sm-3{margin-top:.9rem !important}.mt-sm-4{margin-top:1.35rem !important}.mt-sm-5{margin-top:1.8rem !important}.mt-sm-6{margin-top:2.25rem !important}.mt-sm-7{margin-top:2.7rem !important}.mt-sm-8{margin-top:3.15rem !important}.mt-sm-9{margin-top:3.6rem !important}.mt-sm-tiny{margin-top:.135rem !important}.mt-sm-auto{margin-top:auto !important}.me-sm-0{margin-right:0 !important}.me-sm-1{margin-right:.225rem !important}.me-sm-2{margin-right:.45rem !important}.me-sm-3{margin-right:.9rem !important}.me-sm-4{margin-right:1.35rem !important}.me-sm-5{margin-right:1.8rem !important}.me-sm-6{margin-right:2.25rem !important}.me-sm-7{margin-right:2.7rem !important}.me-sm-8{margin-right:3.15rem !important}.me-sm-9{margin-right:3.6rem !important}.me-sm-tiny{margin-right:.135rem !important}.me-sm-auto{margin-right:auto !important}.mb-sm-0{margin-bottom:0 !important}.mb-sm-1{margin-bottom:.225rem !important}.mb-sm-2{margin-bottom:.45rem !important}.mb-sm-3{margin-bottom:.9rem !important}.mb-sm-4{margin-bottom:1.35rem !important}.mb-sm-5{margin-bottom:1.8rem !important}.mb-sm-6{margin-bottom:2.25rem !important}.mb-sm-7{margin-bottom:2.7rem !important}.mb-sm-8{margin-bottom:3.15rem !important}.mb-sm-9{margin-bottom:3.6rem !important}.mb-sm-tiny{margin-bottom:.135rem !important}.mb-sm-auto{margin-bottom:auto !important}.ms-sm-0{margin-left:0 !important}.ms-sm-1{margin-left:.225rem !important}.ms-sm-2{margin-left:.45rem !important}.ms-sm-3{margin-left:.9rem !important}.ms-sm-4{margin-left:1.35rem !important}.ms-sm-5{margin-left:1.8rem !important}.ms-sm-6{margin-left:2.25rem !important}.ms-sm-7{margin-left:2.7rem !important}.ms-sm-8{margin-left:3.15rem !important}.ms-sm-9{margin-left:3.6rem !important}.ms-sm-tiny{margin-left:.135rem !important}.ms-sm-auto{margin-left:auto !important}.m-sm-n1{margin:-0.225rem !important}.m-sm-n2{margin:-0.45rem !important}.m-sm-n3{margin:-0.9rem !important}.m-sm-n4{margin:-1.35rem !important}.m-sm-n5{margin:-1.8rem !important}.m-sm-n6{margin:-2.25rem !important}.m-sm-n7{margin:-2.7rem !important}.m-sm-n8{margin:-3.15rem !important}.m-sm-n9{margin:-3.6rem !important}.m-sm-ntiny{margin:-0.135rem !important}.mx-sm-n1{margin-right:-0.225rem !important;margin-left:-0.225rem !important}.mx-sm-n2{margin-right:-0.45rem !important;margin-left:-0.45rem !important}.mx-sm-n3{margin-right:-0.9rem !important;margin-left:-0.9rem !important}.mx-sm-n4{margin-right:-1.35rem !important;margin-left:-1.35rem !important}.mx-sm-n5{margin-right:-1.8rem !important;margin-left:-1.8rem !important}.mx-sm-n6{margin-right:-2.25rem !important;margin-left:-2.25rem !important}.mx-sm-n7{margin-right:-2.7rem !important;margin-left:-2.7rem !important}.mx-sm-n8{margin-right:-3.15rem !important;margin-left:-3.15rem !important}.mx-sm-n9{margin-right:-3.6rem !important;margin-left:-3.6rem !important}.mx-sm-ntiny{margin-right:-0.135rem !important;margin-left:-0.135rem !important}.my-sm-n1{margin-top:-0.225rem !important;margin-bottom:-0.225rem !important}.my-sm-n2{margin-top:-0.45rem !important;margin-bottom:-0.45rem !important}.my-sm-n3{margin-top:-0.9rem !important;margin-bottom:-0.9rem !important}.my-sm-n4{margin-top:-1.35rem !important;margin-bottom:-1.35rem !important}.my-sm-n5{margin-top:-1.8rem !important;margin-bottom:-1.8rem !important}.my-sm-n6{margin-top:-2.25rem !important;margin-bottom:-2.25rem !important}.my-sm-n7{margin-top:-2.7rem !important;margin-bottom:-2.7rem !important}.my-sm-n8{margin-top:-3.15rem !important;margin-bottom:-3.15rem !important}.my-sm-n9{margin-top:-3.6rem !important;margin-bottom:-3.6rem !important}.my-sm-ntiny{margin-top:-0.135rem !important;margin-bottom:-0.135rem !important}.mt-sm-n1{margin-top:-0.225rem !important}.mt-sm-n2{margin-top:-0.45rem !important}.mt-sm-n3{margin-top:-0.9rem !important}.mt-sm-n4{margin-top:-1.35rem !important}.mt-sm-n5{margin-top:-1.8rem !important}.mt-sm-n6{margin-top:-2.25rem !important}.mt-sm-n7{margin-top:-2.7rem !important}.mt-sm-n8{margin-top:-3.15rem !important}.mt-sm-n9{margin-top:-3.6rem !important}.mt-sm-ntiny{margin-top:-0.135rem !important}.me-sm-n1{margin-right:-0.225rem !important}.me-sm-n2{margin-right:-0.45rem !important}.me-sm-n3{margin-right:-0.9rem !important}.me-sm-n4{margin-right:-1.35rem !important}.me-sm-n5{margin-right:-1.8rem !important}.me-sm-n6{margin-right:-2.25rem !important}.me-sm-n7{margin-right:-2.7rem !important}.me-sm-n8{margin-right:-3.15rem !important}.me-sm-n9{margin-right:-3.6rem !important}.me-sm-ntiny{margin-right:-0.135rem !important}.mb-sm-n1{margin-bottom:-0.225rem !important}.mb-sm-n2{margin-bottom:-0.45rem !important}.mb-sm-n3{margin-bottom:-0.9rem !important}.mb-sm-n4{margin-bottom:-1.35rem !important}.mb-sm-n5{margin-bottom:-1.8rem !important}.mb-sm-n6{margin-bottom:-2.25rem !important}.mb-sm-n7{margin-bottom:-2.7rem !important}.mb-sm-n8{margin-bottom:-3.15rem !important}.mb-sm-n9{margin-bottom:-3.6rem !important}.mb-sm-ntiny{margin-bottom:-0.135rem !important}.ms-sm-n1{margin-left:-0.225rem !important}.ms-sm-n2{margin-left:-0.45rem !important}.ms-sm-n3{margin-left:-0.9rem !important}.ms-sm-n4{margin-left:-1.35rem !important}.ms-sm-n5{margin-left:-1.8rem !important}.ms-sm-n6{margin-left:-2.25rem !important}.ms-sm-n7{margin-left:-2.7rem !important}.ms-sm-n8{margin-left:-3.15rem !important}.ms-sm-n9{margin-left:-3.6rem !important}.ms-sm-ntiny{margin-left:-0.135rem !important}.p-sm-0{padding:0 !important}.p-sm-1{padding:.225rem !important}.p-sm-2{padding:.45rem !important}.p-sm-3{padding:.9rem !important}.p-sm-4{padding:1.35rem !important}.p-sm-5{padding:1.8rem !important}.p-sm-6{padding:2.25rem !important}.p-sm-7{padding:2.7rem !important}.p-sm-8{padding:3.15rem !important}.p-sm-9{padding:3.6rem !important}.p-sm-tiny{padding:.135rem !important}.px-sm-0{padding-right:0 !important;padding-left:0 !important}.px-sm-1{padding-right:.225rem !important;padding-left:.225rem !important}.px-sm-2{padding-right:.45rem !important;padding-left:.45rem !important}.px-sm-3{padding-right:.9rem !important;padding-left:.9rem !important}.px-sm-4{padding-right:1.35rem !important;padding-left:1.35rem !important}.px-sm-5{padding-right:1.8rem !important;padding-left:1.8rem !important}.px-sm-6{padding-right:2.25rem !important;padding-left:2.25rem !important}.px-sm-7{padding-right:2.7rem !important;padding-left:2.7rem !important}.px-sm-8{padding-right:3.15rem !important;padding-left:3.15rem !important}.px-sm-9{padding-right:3.6rem !important;padding-left:3.6rem !important}.px-sm-tiny{padding-right:.135rem !important;padding-left:.135rem !important}.py-sm-0{padding-top:0 !important;padding-bottom:0 !important}.py-sm-1{padding-top:.225rem !important;padding-bottom:.225rem !important}.py-sm-2{padding-top:.45rem !important;padding-bottom:.45rem !important}.py-sm-3{padding-top:.9rem !important;padding-bottom:.9rem !important}.py-sm-4{padding-top:1.35rem !important;padding-bottom:1.35rem !important}.py-sm-5{padding-top:1.8rem !important;padding-bottom:1.8rem !important}.py-sm-6{padding-top:2.25rem !important;padding-bottom:2.25rem !important}.py-sm-7{padding-top:2.7rem !important;padding-bottom:2.7rem !important}.py-sm-8{padding-top:3.15rem !important;padding-bottom:3.15rem !important}.py-sm-9{padding-top:3.6rem !important;padding-bottom:3.6rem !important}.py-sm-tiny{padding-top:.135rem !important;padding-bottom:.135rem !important}.pt-sm-0{padding-top:0 !important}.pt-sm-1{padding-top:.225rem !important}.pt-sm-2{padding-top:.45rem !important}.pt-sm-3{padding-top:.9rem !important}.pt-sm-4{padding-top:1.35rem !important}.pt-sm-5{padding-top:1.8rem !important}.pt-sm-6{padding-top:2.25rem !important}.pt-sm-7{padding-top:2.7rem !important}.pt-sm-8{padding-top:3.15rem !important}.pt-sm-9{padding-top:3.6rem !important}.pt-sm-tiny{padding-top:.135rem !important}.pe-sm-0{padding-right:0 !important}.pe-sm-1{padding-right:.225rem !important}.pe-sm-2{padding-right:.45rem !important}.pe-sm-3{padding-right:.9rem !important}.pe-sm-4{padding-right:1.35rem !important}.pe-sm-5{padding-right:1.8rem !important}.pe-sm-6{padding-right:2.25rem !important}.pe-sm-7{padding-right:2.7rem !important}.pe-sm-8{padding-right:3.15rem !important}.pe-sm-9{padding-right:3.6rem !important}.pe-sm-tiny{padding-right:.135rem !important}.pb-sm-0{padding-bottom:0 !important}.pb-sm-1{padding-bottom:.225rem !important}.pb-sm-2{padding-bottom:.45rem !important}.pb-sm-3{padding-bottom:.9rem !important}.pb-sm-4{padding-bottom:1.35rem !important}.pb-sm-5{padding-bottom:1.8rem !important}.pb-sm-6{padding-bottom:2.25rem !important}.pb-sm-7{padding-bottom:2.7rem !important}.pb-sm-8{padding-bottom:3.15rem !important}.pb-sm-9{padding-bottom:3.6rem !important}.pb-sm-tiny{padding-bottom:.135rem !important}.ps-sm-0{padding-left:0 !important}.ps-sm-1{padding-left:.225rem !important}.ps-sm-2{padding-left:.45rem !important}.ps-sm-3{padding-left:.9rem !important}.ps-sm-4{padding-left:1.35rem !important}.ps-sm-5{padding-left:1.8rem !important}.ps-sm-6{padding-left:2.25rem !important}.ps-sm-7{padding-left:2.7rem !important}.ps-sm-8{padding-left:3.15rem !important}.ps-sm-9{padding-left:3.6rem !important}.ps-sm-tiny{padding-left:.135rem !important}.gap-sm-0{gap:0 !important}.gap-sm-1{gap:.225rem !important}.gap-sm-2{gap:.45rem !important}.gap-sm-3{gap:.9rem !important}.gap-sm-4{gap:1.35rem !important}.gap-sm-5{gap:1.8rem !important}.gap-sm-6{gap:2.25rem !important}.gap-sm-7{gap:2.7rem !important}.gap-sm-8{gap:3.15rem !important}.gap-sm-9{gap:3.6rem !important}.gap-sm-tiny{gap:.135rem !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}.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:.225rem !important}.m-md-2{margin:.45rem !important}.m-md-3{margin:.9rem !important}.m-md-4{margin:1.35rem !important}.m-md-5{margin:1.8rem !important}.m-md-6{margin:2.25rem !important}.m-md-7{margin:2.7rem !important}.m-md-8{margin:3.15rem !important}.m-md-9{margin:3.6rem !important}.m-md-tiny{margin:.135rem !important}.m-md-auto{margin:auto !important}.mx-md-0{margin-right:0 !important;margin-left:0 !important}.mx-md-1{margin-right:.225rem !important;margin-left:.225rem !important}.mx-md-2{margin-right:.45rem !important;margin-left:.45rem !important}.mx-md-3{margin-right:.9rem !important;margin-left:.9rem !important}.mx-md-4{margin-right:1.35rem !important;margin-left:1.35rem !important}.mx-md-5{margin-right:1.8rem !important;margin-left:1.8rem !important}.mx-md-6{margin-right:2.25rem !important;margin-left:2.25rem !important}.mx-md-7{margin-right:2.7rem !important;margin-left:2.7rem !important}.mx-md-8{margin-right:3.15rem !important;margin-left:3.15rem !important}.mx-md-9{margin-right:3.6rem !important;margin-left:3.6rem !important}.mx-md-tiny{margin-right:.135rem !important;margin-left:.135rem !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:.225rem !important;margin-bottom:.225rem !important}.my-md-2{margin-top:.45rem !important;margin-bottom:.45rem !important}.my-md-3{margin-top:.9rem !important;margin-bottom:.9rem !important}.my-md-4{margin-top:1.35rem !important;margin-bottom:1.35rem !important}.my-md-5{margin-top:1.8rem !important;margin-bottom:1.8rem !important}.my-md-6{margin-top:2.25rem !important;margin-bottom:2.25rem !important}.my-md-7{margin-top:2.7rem !important;margin-bottom:2.7rem !important}.my-md-8{margin-top:3.15rem !important;margin-bottom:3.15rem !important}.my-md-9{margin-top:3.6rem !important;margin-bottom:3.6rem !important}.my-md-tiny{margin-top:.135rem !important;margin-bottom:.135rem !important}.my-md-auto{margin-top:auto !important;margin-bottom:auto !important}.mt-md-0{margin-top:0 !important}.mt-md-1{margin-top:.225rem !important}.mt-md-2{margin-top:.45rem !important}.mt-md-3{margin-top:.9rem !important}.mt-md-4{margin-top:1.35rem !important}.mt-md-5{margin-top:1.8rem !important}.mt-md-6{margin-top:2.25rem !important}.mt-md-7{margin-top:2.7rem !important}.mt-md-8{margin-top:3.15rem !important}.mt-md-9{margin-top:3.6rem !important}.mt-md-tiny{margin-top:.135rem !important}.mt-md-auto{margin-top:auto !important}.me-md-0{margin-right:0 !important}.me-md-1{margin-right:.225rem !important}.me-md-2{margin-right:.45rem !important}.me-md-3{margin-right:.9rem !important}.me-md-4{margin-right:1.35rem !important}.me-md-5{margin-right:1.8rem !important}.me-md-6{margin-right:2.25rem !important}.me-md-7{margin-right:2.7rem !important}.me-md-8{margin-right:3.15rem !important}.me-md-9{margin-right:3.6rem !important}.me-md-tiny{margin-right:.135rem !important}.me-md-auto{margin-right:auto !important}.mb-md-0{margin-bottom:0 !important}.mb-md-1{margin-bottom:.225rem !important}.mb-md-2{margin-bottom:.45rem !important}.mb-md-3{margin-bottom:.9rem !important}.mb-md-4{margin-bottom:1.35rem !important}.mb-md-5{margin-bottom:1.8rem !important}.mb-md-6{margin-bottom:2.25rem !important}.mb-md-7{margin-bottom:2.7rem !important}.mb-md-8{margin-bottom:3.15rem !important}.mb-md-9{margin-bottom:3.6rem !important}.mb-md-tiny{margin-bottom:.135rem !important}.mb-md-auto{margin-bottom:auto !important}.ms-md-0{margin-left:0 !important}.ms-md-1{margin-left:.225rem !important}.ms-md-2{margin-left:.45rem !important}.ms-md-3{margin-left:.9rem !important}.ms-md-4{margin-left:1.35rem !important}.ms-md-5{margin-left:1.8rem !important}.ms-md-6{margin-left:2.25rem !important}.ms-md-7{margin-left:2.7rem !important}.ms-md-8{margin-left:3.15rem !important}.ms-md-9{margin-left:3.6rem !important}.ms-md-tiny{margin-left:.135rem !important}.ms-md-auto{margin-left:auto !important}.m-md-n1{margin:-0.225rem !important}.m-md-n2{margin:-0.45rem !important}.m-md-n3{margin:-0.9rem !important}.m-md-n4{margin:-1.35rem !important}.m-md-n5{margin:-1.8rem !important}.m-md-n6{margin:-2.25rem !important}.m-md-n7{margin:-2.7rem !important}.m-md-n8{margin:-3.15rem !important}.m-md-n9{margin:-3.6rem !important}.m-md-ntiny{margin:-0.135rem !important}.mx-md-n1{margin-right:-0.225rem !important;margin-left:-0.225rem !important}.mx-md-n2{margin-right:-0.45rem !important;margin-left:-0.45rem !important}.mx-md-n3{margin-right:-0.9rem !important;margin-left:-0.9rem !important}.mx-md-n4{margin-right:-1.35rem !important;margin-left:-1.35rem !important}.mx-md-n5{margin-right:-1.8rem !important;margin-left:-1.8rem !important}.mx-md-n6{margin-right:-2.25rem !important;margin-left:-2.25rem !important}.mx-md-n7{margin-right:-2.7rem !important;margin-left:-2.7rem !important}.mx-md-n8{margin-right:-3.15rem !important;margin-left:-3.15rem !important}.mx-md-n9{margin-right:-3.6rem !important;margin-left:-3.6rem !important}.mx-md-ntiny{margin-right:-0.135rem !important;margin-left:-0.135rem !important}.my-md-n1{margin-top:-0.225rem !important;margin-bottom:-0.225rem !important}.my-md-n2{margin-top:-0.45rem !important;margin-bottom:-0.45rem !important}.my-md-n3{margin-top:-0.9rem !important;margin-bottom:-0.9rem !important}.my-md-n4{margin-top:-1.35rem !important;margin-bottom:-1.35rem !important}.my-md-n5{margin-top:-1.8rem !important;margin-bottom:-1.8rem !important}.my-md-n6{margin-top:-2.25rem !important;margin-bottom:-2.25rem !important}.my-md-n7{margin-top:-2.7rem !important;margin-bottom:-2.7rem !important}.my-md-n8{margin-top:-3.15rem !important;margin-bottom:-3.15rem !important}.my-md-n9{margin-top:-3.6rem !important;margin-bottom:-3.6rem !important}.my-md-ntiny{margin-top:-0.135rem !important;margin-bottom:-0.135rem !important}.mt-md-n1{margin-top:-0.225rem !important}.mt-md-n2{margin-top:-0.45rem !important}.mt-md-n3{margin-top:-0.9rem !important}.mt-md-n4{margin-top:-1.35rem !important}.mt-md-n5{margin-top:-1.8rem !important}.mt-md-n6{margin-top:-2.25rem !important}.mt-md-n7{margin-top:-2.7rem !important}.mt-md-n8{margin-top:-3.15rem !important}.mt-md-n9{margin-top:-3.6rem !important}.mt-md-ntiny{margin-top:-0.135rem !important}.me-md-n1{margin-right:-0.225rem !important}.me-md-n2{margin-right:-0.45rem !important}.me-md-n3{margin-right:-0.9rem !important}.me-md-n4{margin-right:-1.35rem !important}.me-md-n5{margin-right:-1.8rem !important}.me-md-n6{margin-right:-2.25rem !important}.me-md-n7{margin-right:-2.7rem !important}.me-md-n8{margin-right:-3.15rem !important}.me-md-n9{margin-right:-3.6rem !important}.me-md-ntiny{margin-right:-0.135rem !important}.mb-md-n1{margin-bottom:-0.225rem !important}.mb-md-n2{margin-bottom:-0.45rem !important}.mb-md-n3{margin-bottom:-0.9rem !important}.mb-md-n4{margin-bottom:-1.35rem !important}.mb-md-n5{margin-bottom:-1.8rem !important}.mb-md-n6{margin-bottom:-2.25rem !important}.mb-md-n7{margin-bottom:-2.7rem !important}.mb-md-n8{margin-bottom:-3.15rem !important}.mb-md-n9{margin-bottom:-3.6rem !important}.mb-md-ntiny{margin-bottom:-0.135rem !important}.ms-md-n1{margin-left:-0.225rem !important}.ms-md-n2{margin-left:-0.45rem !important}.ms-md-n3{margin-left:-0.9rem !important}.ms-md-n4{margin-left:-1.35rem !important}.ms-md-n5{margin-left:-1.8rem !important}.ms-md-n6{margin-left:-2.25rem !important}.ms-md-n7{margin-left:-2.7rem !important}.ms-md-n8{margin-left:-3.15rem !important}.ms-md-n9{margin-left:-3.6rem !important}.ms-md-ntiny{margin-left:-0.135rem !important}.p-md-0{padding:0 !important}.p-md-1{padding:.225rem !important}.p-md-2{padding:.45rem !important}.p-md-3{padding:.9rem !important}.p-md-4{padding:1.35rem !important}.p-md-5{padding:1.8rem !important}.p-md-6{padding:2.25rem !important}.p-md-7{padding:2.7rem !important}.p-md-8{padding:3.15rem !important}.p-md-9{padding:3.6rem !important}.p-md-tiny{padding:.135rem !important}.px-md-0{padding-right:0 !important;padding-left:0 !important}.px-md-1{padding-right:.225rem !important;padding-left:.225rem !important}.px-md-2{padding-right:.45rem !important;padding-left:.45rem !important}.px-md-3{padding-right:.9rem !important;padding-left:.9rem !important}.px-md-4{padding-right:1.35rem !important;padding-left:1.35rem !important}.px-md-5{padding-right:1.8rem !important;padding-left:1.8rem !important}.px-md-6{padding-right:2.25rem !important;padding-left:2.25rem !important}.px-md-7{padding-right:2.7rem !important;padding-left:2.7rem !important}.px-md-8{padding-right:3.15rem !important;padding-left:3.15rem !important}.px-md-9{padding-right:3.6rem !important;padding-left:3.6rem !important}.px-md-tiny{padding-right:.135rem !important;padding-left:.135rem !important}.py-md-0{padding-top:0 !important;padding-bottom:0 !important}.py-md-1{padding-top:.225rem !important;padding-bottom:.225rem !important}.py-md-2{padding-top:.45rem !important;padding-bottom:.45rem !important}.py-md-3{padding-top:.9rem !important;padding-bottom:.9rem !important}.py-md-4{padding-top:1.35rem !important;padding-bottom:1.35rem !important}.py-md-5{padding-top:1.8rem !important;padding-bottom:1.8rem !important}.py-md-6{padding-top:2.25rem !important;padding-bottom:2.25rem !important}.py-md-7{padding-top:2.7rem !important;padding-bottom:2.7rem !important}.py-md-8{padding-top:3.15rem !important;padding-bottom:3.15rem !important}.py-md-9{padding-top:3.6rem !important;padding-bottom:3.6rem !important}.py-md-tiny{padding-top:.135rem !important;padding-bottom:.135rem !important}.pt-md-0{padding-top:0 !important}.pt-md-1{padding-top:.225rem !important}.pt-md-2{padding-top:.45rem !important}.pt-md-3{padding-top:.9rem !important}.pt-md-4{padding-top:1.35rem !important}.pt-md-5{padding-top:1.8rem !important}.pt-md-6{padding-top:2.25rem !important}.pt-md-7{padding-top:2.7rem !important}.pt-md-8{padding-top:3.15rem !important}.pt-md-9{padding-top:3.6rem !important}.pt-md-tiny{padding-top:.135rem !important}.pe-md-0{padding-right:0 !important}.pe-md-1{padding-right:.225rem !important}.pe-md-2{padding-right:.45rem !important}.pe-md-3{padding-right:.9rem !important}.pe-md-4{padding-right:1.35rem !important}.pe-md-5{padding-right:1.8rem !important}.pe-md-6{padding-right:2.25rem !important}.pe-md-7{padding-right:2.7rem !important}.pe-md-8{padding-right:3.15rem !important}.pe-md-9{padding-right:3.6rem !important}.pe-md-tiny{padding-right:.135rem !important}.pb-md-0{padding-bottom:0 !important}.pb-md-1{padding-bottom:.225rem !important}.pb-md-2{padding-bottom:.45rem !important}.pb-md-3{padding-bottom:.9rem !important}.pb-md-4{padding-bottom:1.35rem !important}.pb-md-5{padding-bottom:1.8rem !important}.pb-md-6{padding-bottom:2.25rem !important}.pb-md-7{padding-bottom:2.7rem !important}.pb-md-8{padding-bottom:3.15rem !important}.pb-md-9{padding-bottom:3.6rem !important}.pb-md-tiny{padding-bottom:.135rem !important}.ps-md-0{padding-left:0 !important}.ps-md-1{padding-left:.225rem !important}.ps-md-2{padding-left:.45rem !important}.ps-md-3{padding-left:.9rem !important}.ps-md-4{padding-left:1.35rem !important}.ps-md-5{padding-left:1.8rem !important}.ps-md-6{padding-left:2.25rem !important}.ps-md-7{padding-left:2.7rem !important}.ps-md-8{padding-left:3.15rem !important}.ps-md-9{padding-left:3.6rem !important}.ps-md-tiny{padding-left:.135rem !important}.gap-md-0{gap:0 !important}.gap-md-1{gap:.225rem !important}.gap-md-2{gap:.45rem !important}.gap-md-3{gap:.9rem !important}.gap-md-4{gap:1.35rem !important}.gap-md-5{gap:1.8rem !important}.gap-md-6{gap:2.25rem !important}.gap-md-7{gap:2.7rem !important}.gap-md-8{gap:3.15rem !important}.gap-md-9{gap:3.6rem !important}.gap-md-tiny{gap:.135rem !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}.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:.225rem !important}.m-lg-2{margin:.45rem !important}.m-lg-3{margin:.9rem !important}.m-lg-4{margin:1.35rem !important}.m-lg-5{margin:1.8rem !important}.m-lg-6{margin:2.25rem !important}.m-lg-7{margin:2.7rem !important}.m-lg-8{margin:3.15rem !important}.m-lg-9{margin:3.6rem !important}.m-lg-tiny{margin:.135rem !important}.m-lg-auto{margin:auto !important}.mx-lg-0{margin-right:0 !important;margin-left:0 !important}.mx-lg-1{margin-right:.225rem !important;margin-left:.225rem !important}.mx-lg-2{margin-right:.45rem !important;margin-left:.45rem !important}.mx-lg-3{margin-right:.9rem !important;margin-left:.9rem !important}.mx-lg-4{margin-right:1.35rem !important;margin-left:1.35rem !important}.mx-lg-5{margin-right:1.8rem !important;margin-left:1.8rem !important}.mx-lg-6{margin-right:2.25rem !important;margin-left:2.25rem !important}.mx-lg-7{margin-right:2.7rem !important;margin-left:2.7rem !important}.mx-lg-8{margin-right:3.15rem !important;margin-left:3.15rem !important}.mx-lg-9{margin-right:3.6rem !important;margin-left:3.6rem !important}.mx-lg-tiny{margin-right:.135rem !important;margin-left:.135rem !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:.225rem !important;margin-bottom:.225rem !important}.my-lg-2{margin-top:.45rem !important;margin-bottom:.45rem !important}.my-lg-3{margin-top:.9rem !important;margin-bottom:.9rem !important}.my-lg-4{margin-top:1.35rem !important;margin-bottom:1.35rem !important}.my-lg-5{margin-top:1.8rem !important;margin-bottom:1.8rem !important}.my-lg-6{margin-top:2.25rem !important;margin-bottom:2.25rem !important}.my-lg-7{margin-top:2.7rem !important;margin-bottom:2.7rem !important}.my-lg-8{margin-top:3.15rem !important;margin-bottom:3.15rem !important}.my-lg-9{margin-top:3.6rem !important;margin-bottom:3.6rem !important}.my-lg-tiny{margin-top:.135rem !important;margin-bottom:.135rem !important}.my-lg-auto{margin-top:auto !important;margin-bottom:auto !important}.mt-lg-0{margin-top:0 !important}.mt-lg-1{margin-top:.225rem !important}.mt-lg-2{margin-top:.45rem !important}.mt-lg-3{margin-top:.9rem !important}.mt-lg-4{margin-top:1.35rem !important}.mt-lg-5{margin-top:1.8rem !important}.mt-lg-6{margin-top:2.25rem !important}.mt-lg-7{margin-top:2.7rem !important}.mt-lg-8{margin-top:3.15rem !important}.mt-lg-9{margin-top:3.6rem !important}.mt-lg-tiny{margin-top:.135rem !important}.mt-lg-auto{margin-top:auto !important}.me-lg-0{margin-right:0 !important}.me-lg-1{margin-right:.225rem !important}.me-lg-2{margin-right:.45rem !important}.me-lg-3{margin-right:.9rem !important}.me-lg-4{margin-right:1.35rem !important}.me-lg-5{margin-right:1.8rem !important}.me-lg-6{margin-right:2.25rem !important}.me-lg-7{margin-right:2.7rem !important}.me-lg-8{margin-right:3.15rem !important}.me-lg-9{margin-right:3.6rem !important}.me-lg-tiny{margin-right:.135rem !important}.me-lg-auto{margin-right:auto !important}.mb-lg-0{margin-bottom:0 !important}.mb-lg-1{margin-bottom:.225rem !important}.mb-lg-2{margin-bottom:.45rem !important}.mb-lg-3{margin-bottom:.9rem !important}.mb-lg-4{margin-bottom:1.35rem !important}.mb-lg-5{margin-bottom:1.8rem !important}.mb-lg-6{margin-bottom:2.25rem !important}.mb-lg-7{margin-bottom:2.7rem !important}.mb-lg-8{margin-bottom:3.15rem !important}.mb-lg-9{margin-bottom:3.6rem !important}.mb-lg-tiny{margin-bottom:.135rem !important}.mb-lg-auto{margin-bottom:auto !important}.ms-lg-0{margin-left:0 !important}.ms-lg-1{margin-left:.225rem !important}.ms-lg-2{margin-left:.45rem !important}.ms-lg-3{margin-left:.9rem !important}.ms-lg-4{margin-left:1.35rem !important}.ms-lg-5{margin-left:1.8rem !important}.ms-lg-6{margin-left:2.25rem !important}.ms-lg-7{margin-left:2.7rem !important}.ms-lg-8{margin-left:3.15rem !important}.ms-lg-9{margin-left:3.6rem !important}.ms-lg-tiny{margin-left:.135rem !important}.ms-lg-auto{margin-left:auto !important}.m-lg-n1{margin:-0.225rem !important}.m-lg-n2{margin:-0.45rem !important}.m-lg-n3{margin:-0.9rem !important}.m-lg-n4{margin:-1.35rem !important}.m-lg-n5{margin:-1.8rem !important}.m-lg-n6{margin:-2.25rem !important}.m-lg-n7{margin:-2.7rem !important}.m-lg-n8{margin:-3.15rem !important}.m-lg-n9{margin:-3.6rem !important}.m-lg-ntiny{margin:-0.135rem !important}.mx-lg-n1{margin-right:-0.225rem !important;margin-left:-0.225rem !important}.mx-lg-n2{margin-right:-0.45rem !important;margin-left:-0.45rem !important}.mx-lg-n3{margin-right:-0.9rem !important;margin-left:-0.9rem !important}.mx-lg-n4{margin-right:-1.35rem !important;margin-left:-1.35rem !important}.mx-lg-n5{margin-right:-1.8rem !important;margin-left:-1.8rem !important}.mx-lg-n6{margin-right:-2.25rem !important;margin-left:-2.25rem !important}.mx-lg-n7{margin-right:-2.7rem !important;margin-left:-2.7rem !important}.mx-lg-n8{margin-right:-3.15rem !important;margin-left:-3.15rem !important}.mx-lg-n9{margin-right:-3.6rem !important;margin-left:-3.6rem !important}.mx-lg-ntiny{margin-right:-0.135rem !important;margin-left:-0.135rem !important}.my-lg-n1{margin-top:-0.225rem !important;margin-bottom:-0.225rem !important}.my-lg-n2{margin-top:-0.45rem !important;margin-bottom:-0.45rem !important}.my-lg-n3{margin-top:-0.9rem !important;margin-bottom:-0.9rem !important}.my-lg-n4{margin-top:-1.35rem !important;margin-bottom:-1.35rem !important}.my-lg-n5{margin-top:-1.8rem !important;margin-bottom:-1.8rem !important}.my-lg-n6{margin-top:-2.25rem !important;margin-bottom:-2.25rem !important}.my-lg-n7{margin-top:-2.7rem !important;margin-bottom:-2.7rem !important}.my-lg-n8{margin-top:-3.15rem !important;margin-bottom:-3.15rem !important}.my-lg-n9{margin-top:-3.6rem !important;margin-bottom:-3.6rem !important}.my-lg-ntiny{margin-top:-0.135rem !important;margin-bottom:-0.135rem !important}.mt-lg-n1{margin-top:-0.225rem !important}.mt-lg-n2{margin-top:-0.45rem !important}.mt-lg-n3{margin-top:-0.9rem !important}.mt-lg-n4{margin-top:-1.35rem !important}.mt-lg-n5{margin-top:-1.8rem !important}.mt-lg-n6{margin-top:-2.25rem !important}.mt-lg-n7{margin-top:-2.7rem !important}.mt-lg-n8{margin-top:-3.15rem !important}.mt-lg-n9{margin-top:-3.6rem !important}.mt-lg-ntiny{margin-top:-0.135rem !important}.me-lg-n1{margin-right:-0.225rem !important}.me-lg-n2{margin-right:-0.45rem !important}.me-lg-n3{margin-right:-0.9rem !important}.me-lg-n4{margin-right:-1.35rem !important}.me-lg-n5{margin-right:-1.8rem !important}.me-lg-n6{margin-right:-2.25rem !important}.me-lg-n7{margin-right:-2.7rem !important}.me-lg-n8{margin-right:-3.15rem !important}.me-lg-n9{margin-right:-3.6rem !important}.me-lg-ntiny{margin-right:-0.135rem !important}.mb-lg-n1{margin-bottom:-0.225rem !important}.mb-lg-n2{margin-bottom:-0.45rem !important}.mb-lg-n3{margin-bottom:-0.9rem !important}.mb-lg-n4{margin-bottom:-1.35rem !important}.mb-lg-n5{margin-bottom:-1.8rem !important}.mb-lg-n6{margin-bottom:-2.25rem !important}.mb-lg-n7{margin-bottom:-2.7rem !important}.mb-lg-n8{margin-bottom:-3.15rem !important}.mb-lg-n9{margin-bottom:-3.6rem !important}.mb-lg-ntiny{margin-bottom:-0.135rem !important}.ms-lg-n1{margin-left:-0.225rem !important}.ms-lg-n2{margin-left:-0.45rem !important}.ms-lg-n3{margin-left:-0.9rem !important}.ms-lg-n4{margin-left:-1.35rem !important}.ms-lg-n5{margin-left:-1.8rem !important}.ms-lg-n6{margin-left:-2.25rem !important}.ms-lg-n7{margin-left:-2.7rem !important}.ms-lg-n8{margin-left:-3.15rem !important}.ms-lg-n9{margin-left:-3.6rem !important}.ms-lg-ntiny{margin-left:-0.135rem !important}.p-lg-0{padding:0 !important}.p-lg-1{padding:.225rem !important}.p-lg-2{padding:.45rem !important}.p-lg-3{padding:.9rem !important}.p-lg-4{padding:1.35rem !important}.p-lg-5{padding:1.8rem !important}.p-lg-6{padding:2.25rem !important}.p-lg-7{padding:2.7rem !important}.p-lg-8{padding:3.15rem !important}.p-lg-9{padding:3.6rem !important}.p-lg-tiny{padding:.135rem !important}.px-lg-0{padding-right:0 !important;padding-left:0 !important}.px-lg-1{padding-right:.225rem !important;padding-left:.225rem !important}.px-lg-2{padding-right:.45rem !important;padding-left:.45rem !important}.px-lg-3{padding-right:.9rem !important;padding-left:.9rem !important}.px-lg-4{padding-right:1.35rem !important;padding-left:1.35rem !important}.px-lg-5{padding-right:1.8rem !important;padding-left:1.8rem !important}.px-lg-6{padding-right:2.25rem !important;padding-left:2.25rem !important}.px-lg-7{padding-right:2.7rem !important;padding-left:2.7rem !important}.px-lg-8{padding-right:3.15rem !important;padding-left:3.15rem !important}.px-lg-9{padding-right:3.6rem !important;padding-left:3.6rem !important}.px-lg-tiny{padding-right:.135rem !important;padding-left:.135rem !important}.py-lg-0{padding-top:0 !important;padding-bottom:0 !important}.py-lg-1{padding-top:.225rem !important;padding-bottom:.225rem !important}.py-lg-2{padding-top:.45rem !important;padding-bottom:.45rem !important}.py-lg-3{padding-top:.9rem !important;padding-bottom:.9rem !important}.py-lg-4{padding-top:1.35rem !important;padding-bottom:1.35rem !important}.py-lg-5{padding-top:1.8rem !important;padding-bottom:1.8rem !important}.py-lg-6{padding-top:2.25rem !important;padding-bottom:2.25rem !important}.py-lg-7{padding-top:2.7rem !important;padding-bottom:2.7rem !important}.py-lg-8{padding-top:3.15rem !important;padding-bottom:3.15rem !important}.py-lg-9{padding-top:3.6rem !important;padding-bottom:3.6rem !important}.py-lg-tiny{padding-top:.135rem !important;padding-bottom:.135rem !important}.pt-lg-0{padding-top:0 !important}.pt-lg-1{padding-top:.225rem !important}.pt-lg-2{padding-top:.45rem !important}.pt-lg-3{padding-top:.9rem !important}.pt-lg-4{padding-top:1.35rem !important}.pt-lg-5{padding-top:1.8rem !important}.pt-lg-6{padding-top:2.25rem !important}.pt-lg-7{padding-top:2.7rem !important}.pt-lg-8{padding-top:3.15rem !important}.pt-lg-9{padding-top:3.6rem !important}.pt-lg-tiny{padding-top:.135rem !important}.pe-lg-0{padding-right:0 !important}.pe-lg-1{padding-right:.225rem !important}.pe-lg-2{padding-right:.45rem !important}.pe-lg-3{padding-right:.9rem !important}.pe-lg-4{padding-right:1.35rem !important}.pe-lg-5{padding-right:1.8rem !important}.pe-lg-6{padding-right:2.25rem !important}.pe-lg-7{padding-right:2.7rem !important}.pe-lg-8{padding-right:3.15rem !important}.pe-lg-9{padding-right:3.6rem !important}.pe-lg-tiny{padding-right:.135rem !important}.pb-lg-0{padding-bottom:0 !important}.pb-lg-1{padding-bottom:.225rem !important}.pb-lg-2{padding-bottom:.45rem !important}.pb-lg-3{padding-bottom:.9rem !important}.pb-lg-4{padding-bottom:1.35rem !important}.pb-lg-5{padding-bottom:1.8rem !important}.pb-lg-6{padding-bottom:2.25rem !important}.pb-lg-7{padding-bottom:2.7rem !important}.pb-lg-8{padding-bottom:3.15rem !important}.pb-lg-9{padding-bottom:3.6rem !important}.pb-lg-tiny{padding-bottom:.135rem !important}.ps-lg-0{padding-left:0 !important}.ps-lg-1{padding-left:.225rem !important}.ps-lg-2{padding-left:.45rem !important}.ps-lg-3{padding-left:.9rem !important}.ps-lg-4{padding-left:1.35rem !important}.ps-lg-5{padding-left:1.8rem !important}.ps-lg-6{padding-left:2.25rem !important}.ps-lg-7{padding-left:2.7rem !important}.ps-lg-8{padding-left:3.15rem !important}.ps-lg-9{padding-left:3.6rem !important}.ps-lg-tiny{padding-left:.135rem !important}.gap-lg-0{gap:0 !important}.gap-lg-1{gap:.225rem !important}.gap-lg-2{gap:.45rem !important}.gap-lg-3{gap:.9rem !important}.gap-lg-4{gap:1.35rem !important}.gap-lg-5{gap:1.8rem !important}.gap-lg-6{gap:2.25rem !important}.gap-lg-7{gap:2.7rem !important}.gap-lg-8{gap:3.15rem !important}.gap-lg-9{gap:3.6rem !important}.gap-lg-tiny{gap:.135rem !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}.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:.225rem !important}.m-xl-2{margin:.45rem !important}.m-xl-3{margin:.9rem !important}.m-xl-4{margin:1.35rem !important}.m-xl-5{margin:1.8rem !important}.m-xl-6{margin:2.25rem !important}.m-xl-7{margin:2.7rem !important}.m-xl-8{margin:3.15rem !important}.m-xl-9{margin:3.6rem !important}.m-xl-tiny{margin:.135rem !important}.m-xl-auto{margin:auto !important}.mx-xl-0{margin-right:0 !important;margin-left:0 !important}.mx-xl-1{margin-right:.225rem !important;margin-left:.225rem !important}.mx-xl-2{margin-right:.45rem !important;margin-left:.45rem !important}.mx-xl-3{margin-right:.9rem !important;margin-left:.9rem !important}.mx-xl-4{margin-right:1.35rem !important;margin-left:1.35rem !important}.mx-xl-5{margin-right:1.8rem !important;margin-left:1.8rem !important}.mx-xl-6{margin-right:2.25rem !important;margin-left:2.25rem !important}.mx-xl-7{margin-right:2.7rem !important;margin-left:2.7rem !important}.mx-xl-8{margin-right:3.15rem !important;margin-left:3.15rem !important}.mx-xl-9{margin-right:3.6rem !important;margin-left:3.6rem !important}.mx-xl-tiny{margin-right:.135rem !important;margin-left:.135rem !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:.225rem !important;margin-bottom:.225rem !important}.my-xl-2{margin-top:.45rem !important;margin-bottom:.45rem !important}.my-xl-3{margin-top:.9rem !important;margin-bottom:.9rem !important}.my-xl-4{margin-top:1.35rem !important;margin-bottom:1.35rem !important}.my-xl-5{margin-top:1.8rem !important;margin-bottom:1.8rem !important}.my-xl-6{margin-top:2.25rem !important;margin-bottom:2.25rem !important}.my-xl-7{margin-top:2.7rem !important;margin-bottom:2.7rem !important}.my-xl-8{margin-top:3.15rem !important;margin-bottom:3.15rem !important}.my-xl-9{margin-top:3.6rem !important;margin-bottom:3.6rem !important}.my-xl-tiny{margin-top:.135rem !important;margin-bottom:.135rem !important}.my-xl-auto{margin-top:auto !important;margin-bottom:auto !important}.mt-xl-0{margin-top:0 !important}.mt-xl-1{margin-top:.225rem !important}.mt-xl-2{margin-top:.45rem !important}.mt-xl-3{margin-top:.9rem !important}.mt-xl-4{margin-top:1.35rem !important}.mt-xl-5{margin-top:1.8rem !important}.mt-xl-6{margin-top:2.25rem !important}.mt-xl-7{margin-top:2.7rem !important}.mt-xl-8{margin-top:3.15rem !important}.mt-xl-9{margin-top:3.6rem !important}.mt-xl-tiny{margin-top:.135rem !important}.mt-xl-auto{margin-top:auto !important}.me-xl-0{margin-right:0 !important}.me-xl-1{margin-right:.225rem !important}.me-xl-2{margin-right:.45rem !important}.me-xl-3{margin-right:.9rem !important}.me-xl-4{margin-right:1.35rem !important}.me-xl-5{margin-right:1.8rem !important}.me-xl-6{margin-right:2.25rem !important}.me-xl-7{margin-right:2.7rem !important}.me-xl-8{margin-right:3.15rem !important}.me-xl-9{margin-right:3.6rem !important}.me-xl-tiny{margin-right:.135rem !important}.me-xl-auto{margin-right:auto !important}.mb-xl-0{margin-bottom:0 !important}.mb-xl-1{margin-bottom:.225rem !important}.mb-xl-2{margin-bottom:.45rem !important}.mb-xl-3{margin-bottom:.9rem !important}.mb-xl-4{margin-bottom:1.35rem !important}.mb-xl-5{margin-bottom:1.8rem !important}.mb-xl-6{margin-bottom:2.25rem !important}.mb-xl-7{margin-bottom:2.7rem !important}.mb-xl-8{margin-bottom:3.15rem !important}.mb-xl-9{margin-bottom:3.6rem !important}.mb-xl-tiny{margin-bottom:.135rem !important}.mb-xl-auto{margin-bottom:auto !important}.ms-xl-0{margin-left:0 !important}.ms-xl-1{margin-left:.225rem !important}.ms-xl-2{margin-left:.45rem !important}.ms-xl-3{margin-left:.9rem !important}.ms-xl-4{margin-left:1.35rem !important}.ms-xl-5{margin-left:1.8rem !important}.ms-xl-6{margin-left:2.25rem !important}.ms-xl-7{margin-left:2.7rem !important}.ms-xl-8{margin-left:3.15rem !important}.ms-xl-9{margin-left:3.6rem !important}.ms-xl-tiny{margin-left:.135rem !important}.ms-xl-auto{margin-left:auto !important}.m-xl-n1{margin:-0.225rem !important}.m-xl-n2{margin:-0.45rem !important}.m-xl-n3{margin:-0.9rem !important}.m-xl-n4{margin:-1.35rem !important}.m-xl-n5{margin:-1.8rem !important}.m-xl-n6{margin:-2.25rem !important}.m-xl-n7{margin:-2.7rem !important}.m-xl-n8{margin:-3.15rem !important}.m-xl-n9{margin:-3.6rem !important}.m-xl-ntiny{margin:-0.135rem !important}.mx-xl-n1{margin-right:-0.225rem !important;margin-left:-0.225rem !important}.mx-xl-n2{margin-right:-0.45rem !important;margin-left:-0.45rem !important}.mx-xl-n3{margin-right:-0.9rem !important;margin-left:-0.9rem !important}.mx-xl-n4{margin-right:-1.35rem !important;margin-left:-1.35rem !important}.mx-xl-n5{margin-right:-1.8rem !important;margin-left:-1.8rem !important}.mx-xl-n6{margin-right:-2.25rem !important;margin-left:-2.25rem !important}.mx-xl-n7{margin-right:-2.7rem !important;margin-left:-2.7rem !important}.mx-xl-n8{margin-right:-3.15rem !important;margin-left:-3.15rem !important}.mx-xl-n9{margin-right:-3.6rem !important;margin-left:-3.6rem !important}.mx-xl-ntiny{margin-right:-0.135rem !important;margin-left:-0.135rem !important}.my-xl-n1{margin-top:-0.225rem !important;margin-bottom:-0.225rem !important}.my-xl-n2{margin-top:-0.45rem !important;margin-bottom:-0.45rem !important}.my-xl-n3{margin-top:-0.9rem !important;margin-bottom:-0.9rem !important}.my-xl-n4{margin-top:-1.35rem !important;margin-bottom:-1.35rem !important}.my-xl-n5{margin-top:-1.8rem !important;margin-bottom:-1.8rem !important}.my-xl-n6{margin-top:-2.25rem !important;margin-bottom:-2.25rem !important}.my-xl-n7{margin-top:-2.7rem !important;margin-bottom:-2.7rem !important}.my-xl-n8{margin-top:-3.15rem !important;margin-bottom:-3.15rem !important}.my-xl-n9{margin-top:-3.6rem !important;margin-bottom:-3.6rem !important}.my-xl-ntiny{margin-top:-0.135rem !important;margin-bottom:-0.135rem !important}.mt-xl-n1{margin-top:-0.225rem !important}.mt-xl-n2{margin-top:-0.45rem !important}.mt-xl-n3{margin-top:-0.9rem !important}.mt-xl-n4{margin-top:-1.35rem !important}.mt-xl-n5{margin-top:-1.8rem !important}.mt-xl-n6{margin-top:-2.25rem !important}.mt-xl-n7{margin-top:-2.7rem !important}.mt-xl-n8{margin-top:-3.15rem !important}.mt-xl-n9{margin-top:-3.6rem !important}.mt-xl-ntiny{margin-top:-0.135rem !important}.me-xl-n1{margin-right:-0.225rem !important}.me-xl-n2{margin-right:-0.45rem !important}.me-xl-n3{margin-right:-0.9rem !important}.me-xl-n4{margin-right:-1.35rem !important}.me-xl-n5{margin-right:-1.8rem !important}.me-xl-n6{margin-right:-2.25rem !important}.me-xl-n7{margin-right:-2.7rem !important}.me-xl-n8{margin-right:-3.15rem !important}.me-xl-n9{margin-right:-3.6rem !important}.me-xl-ntiny{margin-right:-0.135rem !important}.mb-xl-n1{margin-bottom:-0.225rem !important}.mb-xl-n2{margin-bottom:-0.45rem !important}.mb-xl-n3{margin-bottom:-0.9rem !important}.mb-xl-n4{margin-bottom:-1.35rem !important}.mb-xl-n5{margin-bottom:-1.8rem !important}.mb-xl-n6{margin-bottom:-2.25rem !important}.mb-xl-n7{margin-bottom:-2.7rem !important}.mb-xl-n8{margin-bottom:-3.15rem !important}.mb-xl-n9{margin-bottom:-3.6rem !important}.mb-xl-ntiny{margin-bottom:-0.135rem !important}.ms-xl-n1{margin-left:-0.225rem !important}.ms-xl-n2{margin-left:-0.45rem !important}.ms-xl-n3{margin-left:-0.9rem !important}.ms-xl-n4{margin-left:-1.35rem !important}.ms-xl-n5{margin-left:-1.8rem !important}.ms-xl-n6{margin-left:-2.25rem !important}.ms-xl-n7{margin-left:-2.7rem !important}.ms-xl-n8{margin-left:-3.15rem !important}.ms-xl-n9{margin-left:-3.6rem !important}.ms-xl-ntiny{margin-left:-0.135rem !important}.p-xl-0{padding:0 !important}.p-xl-1{padding:.225rem !important}.p-xl-2{padding:.45rem !important}.p-xl-3{padding:.9rem !important}.p-xl-4{padding:1.35rem !important}.p-xl-5{padding:1.8rem !important}.p-xl-6{padding:2.25rem !important}.p-xl-7{padding:2.7rem !important}.p-xl-8{padding:3.15rem !important}.p-xl-9{padding:3.6rem !important}.p-xl-tiny{padding:.135rem !important}.px-xl-0{padding-right:0 !important;padding-left:0 !important}.px-xl-1{padding-right:.225rem !important;padding-left:.225rem !important}.px-xl-2{padding-right:.45rem !important;padding-left:.45rem !important}.px-xl-3{padding-right:.9rem !important;padding-left:.9rem !important}.px-xl-4{padding-right:1.35rem !important;padding-left:1.35rem !important}.px-xl-5{padding-right:1.8rem !important;padding-left:1.8rem !important}.px-xl-6{padding-right:2.25rem !important;padding-left:2.25rem !important}.px-xl-7{padding-right:2.7rem !important;padding-left:2.7rem !important}.px-xl-8{padding-right:3.15rem !important;padding-left:3.15rem !important}.px-xl-9{padding-right:3.6rem !important;padding-left:3.6rem !important}.px-xl-tiny{padding-right:.135rem !important;padding-left:.135rem !important}.py-xl-0{padding-top:0 !important;padding-bottom:0 !important}.py-xl-1{padding-top:.225rem !important;padding-bottom:.225rem !important}.py-xl-2{padding-top:.45rem !important;padding-bottom:.45rem !important}.py-xl-3{padding-top:.9rem !important;padding-bottom:.9rem !important}.py-xl-4{padding-top:1.35rem !important;padding-bottom:1.35rem !important}.py-xl-5{padding-top:1.8rem !important;padding-bottom:1.8rem !important}.py-xl-6{padding-top:2.25rem !important;padding-bottom:2.25rem !important}.py-xl-7{padding-top:2.7rem !important;padding-bottom:2.7rem !important}.py-xl-8{padding-top:3.15rem !important;padding-bottom:3.15rem !important}.py-xl-9{padding-top:3.6rem !important;padding-bottom:3.6rem !important}.py-xl-tiny{padding-top:.135rem !important;padding-bottom:.135rem !important}.pt-xl-0{padding-top:0 !important}.pt-xl-1{padding-top:.225rem !important}.pt-xl-2{padding-top:.45rem !important}.pt-xl-3{padding-top:.9rem !important}.pt-xl-4{padding-top:1.35rem !important}.pt-xl-5{padding-top:1.8rem !important}.pt-xl-6{padding-top:2.25rem !important}.pt-xl-7{padding-top:2.7rem !important}.pt-xl-8{padding-top:3.15rem !important}.pt-xl-9{padding-top:3.6rem !important}.pt-xl-tiny{padding-top:.135rem !important}.pe-xl-0{padding-right:0 !important}.pe-xl-1{padding-right:.225rem !important}.pe-xl-2{padding-right:.45rem !important}.pe-xl-3{padding-right:.9rem !important}.pe-xl-4{padding-right:1.35rem !important}.pe-xl-5{padding-right:1.8rem !important}.pe-xl-6{padding-right:2.25rem !important}.pe-xl-7{padding-right:2.7rem !important}.pe-xl-8{padding-right:3.15rem !important}.pe-xl-9{padding-right:3.6rem !important}.pe-xl-tiny{padding-right:.135rem !important}.pb-xl-0{padding-bottom:0 !important}.pb-xl-1{padding-bottom:.225rem !important}.pb-xl-2{padding-bottom:.45rem !important}.pb-xl-3{padding-bottom:.9rem !important}.pb-xl-4{padding-bottom:1.35rem !important}.pb-xl-5{padding-bottom:1.8rem !important}.pb-xl-6{padding-bottom:2.25rem !important}.pb-xl-7{padding-bottom:2.7rem !important}.pb-xl-8{padding-bottom:3.15rem !important}.pb-xl-9{padding-bottom:3.6rem !important}.pb-xl-tiny{padding-bottom:.135rem !important}.ps-xl-0{padding-left:0 !important}.ps-xl-1{padding-left:.225rem !important}.ps-xl-2{padding-left:.45rem !important}.ps-xl-3{padding-left:.9rem !important}.ps-xl-4{padding-left:1.35rem !important}.ps-xl-5{padding-left:1.8rem !important}.ps-xl-6{padding-left:2.25rem !important}.ps-xl-7{padding-left:2.7rem !important}.ps-xl-8{padding-left:3.15rem !important}.ps-xl-9{padding-left:3.6rem !important}.ps-xl-tiny{padding-left:.135rem !important}.gap-xl-0{gap:0 !important}.gap-xl-1{gap:.225rem !important}.gap-xl-2{gap:.45rem !important}.gap-xl-3{gap:.9rem !important}.gap-xl-4{gap:1.35rem !important}.gap-xl-5{gap:1.8rem !important}.gap-xl-6{gap:2.25rem !important}.gap-xl-7{gap:2.7rem !important}.gap-xl-8{gap:3.15rem !important}.gap-xl-9{gap:3.6rem !important}.gap-xl-tiny{gap:.135rem !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}.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:.225rem !important}.m-xxl-2{margin:.45rem !important}.m-xxl-3{margin:.9rem !important}.m-xxl-4{margin:1.35rem !important}.m-xxl-5{margin:1.8rem !important}.m-xxl-6{margin:2.25rem !important}.m-xxl-7{margin:2.7rem !important}.m-xxl-8{margin:3.15rem !important}.m-xxl-9{margin:3.6rem !important}.m-xxl-tiny{margin:.135rem !important}.m-xxl-auto{margin:auto !important}.mx-xxl-0{margin-right:0 !important;margin-left:0 !important}.mx-xxl-1{margin-right:.225rem !important;margin-left:.225rem !important}.mx-xxl-2{margin-right:.45rem !important;margin-left:.45rem !important}.mx-xxl-3{margin-right:.9rem !important;margin-left:.9rem !important}.mx-xxl-4{margin-right:1.35rem !important;margin-left:1.35rem !important}.mx-xxl-5{margin-right:1.8rem !important;margin-left:1.8rem !important}.mx-xxl-6{margin-right:2.25rem !important;margin-left:2.25rem !important}.mx-xxl-7{margin-right:2.7rem !important;margin-left:2.7rem !important}.mx-xxl-8{margin-right:3.15rem !important;margin-left:3.15rem !important}.mx-xxl-9{margin-right:3.6rem !important;margin-left:3.6rem !important}.mx-xxl-tiny{margin-right:.135rem !important;margin-left:.135rem !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:.225rem !important;margin-bottom:.225rem !important}.my-xxl-2{margin-top:.45rem !important;margin-bottom:.45rem !important}.my-xxl-3{margin-top:.9rem !important;margin-bottom:.9rem !important}.my-xxl-4{margin-top:1.35rem !important;margin-bottom:1.35rem !important}.my-xxl-5{margin-top:1.8rem !important;margin-bottom:1.8rem !important}.my-xxl-6{margin-top:2.25rem !important;margin-bottom:2.25rem !important}.my-xxl-7{margin-top:2.7rem !important;margin-bottom:2.7rem !important}.my-xxl-8{margin-top:3.15rem !important;margin-bottom:3.15rem !important}.my-xxl-9{margin-top:3.6rem !important;margin-bottom:3.6rem !important}.my-xxl-tiny{margin-top:.135rem !important;margin-bottom:.135rem !important}.my-xxl-auto{margin-top:auto !important;margin-bottom:auto !important}.mt-xxl-0{margin-top:0 !important}.mt-xxl-1{margin-top:.225rem !important}.mt-xxl-2{margin-top:.45rem !important}.mt-xxl-3{margin-top:.9rem !important}.mt-xxl-4{margin-top:1.35rem !important}.mt-xxl-5{margin-top:1.8rem !important}.mt-xxl-6{margin-top:2.25rem !important}.mt-xxl-7{margin-top:2.7rem !important}.mt-xxl-8{margin-top:3.15rem !important}.mt-xxl-9{margin-top:3.6rem !important}.mt-xxl-tiny{margin-top:.135rem !important}.mt-xxl-auto{margin-top:auto !important}.me-xxl-0{margin-right:0 !important}.me-xxl-1{margin-right:.225rem !important}.me-xxl-2{margin-right:.45rem !important}.me-xxl-3{margin-right:.9rem !important}.me-xxl-4{margin-right:1.35rem !important}.me-xxl-5{margin-right:1.8rem !important}.me-xxl-6{margin-right:2.25rem !important}.me-xxl-7{margin-right:2.7rem !important}.me-xxl-8{margin-right:3.15rem !important}.me-xxl-9{margin-right:3.6rem !important}.me-xxl-tiny{margin-right:.135rem !important}.me-xxl-auto{margin-right:auto !important}.mb-xxl-0{margin-bottom:0 !important}.mb-xxl-1{margin-bottom:.225rem !important}.mb-xxl-2{margin-bottom:.45rem !important}.mb-xxl-3{margin-bottom:.9rem !important}.mb-xxl-4{margin-bottom:1.35rem !important}.mb-xxl-5{margin-bottom:1.8rem !important}.mb-xxl-6{margin-bottom:2.25rem !important}.mb-xxl-7{margin-bottom:2.7rem !important}.mb-xxl-8{margin-bottom:3.15rem !important}.mb-xxl-9{margin-bottom:3.6rem !important}.mb-xxl-tiny{margin-bottom:.135rem !important}.mb-xxl-auto{margin-bottom:auto !important}.ms-xxl-0{margin-left:0 !important}.ms-xxl-1{margin-left:.225rem !important}.ms-xxl-2{margin-left:.45rem !important}.ms-xxl-3{margin-left:.9rem !important}.ms-xxl-4{margin-left:1.35rem !important}.ms-xxl-5{margin-left:1.8rem !important}.ms-xxl-6{margin-left:2.25rem !important}.ms-xxl-7{margin-left:2.7rem !important}.ms-xxl-8{margin-left:3.15rem !important}.ms-xxl-9{margin-left:3.6rem !important}.ms-xxl-tiny{margin-left:.135rem !important}.ms-xxl-auto{margin-left:auto !important}.m-xxl-n1{margin:-0.225rem !important}.m-xxl-n2{margin:-0.45rem !important}.m-xxl-n3{margin:-0.9rem !important}.m-xxl-n4{margin:-1.35rem !important}.m-xxl-n5{margin:-1.8rem !important}.m-xxl-n6{margin:-2.25rem !important}.m-xxl-n7{margin:-2.7rem !important}.m-xxl-n8{margin:-3.15rem !important}.m-xxl-n9{margin:-3.6rem !important}.m-xxl-ntiny{margin:-0.135rem !important}.mx-xxl-n1{margin-right:-0.225rem !important;margin-left:-0.225rem !important}.mx-xxl-n2{margin-right:-0.45rem !important;margin-left:-0.45rem !important}.mx-xxl-n3{margin-right:-0.9rem !important;margin-left:-0.9rem !important}.mx-xxl-n4{margin-right:-1.35rem !important;margin-left:-1.35rem !important}.mx-xxl-n5{margin-right:-1.8rem !important;margin-left:-1.8rem !important}.mx-xxl-n6{margin-right:-2.25rem !important;margin-left:-2.25rem !important}.mx-xxl-n7{margin-right:-2.7rem !important;margin-left:-2.7rem !important}.mx-xxl-n8{margin-right:-3.15rem !important;margin-left:-3.15rem !important}.mx-xxl-n9{margin-right:-3.6rem !important;margin-left:-3.6rem !important}.mx-xxl-ntiny{margin-right:-0.135rem !important;margin-left:-0.135rem !important}.my-xxl-n1{margin-top:-0.225rem !important;margin-bottom:-0.225rem !important}.my-xxl-n2{margin-top:-0.45rem !important;margin-bottom:-0.45rem !important}.my-xxl-n3{margin-top:-0.9rem !important;margin-bottom:-0.9rem !important}.my-xxl-n4{margin-top:-1.35rem !important;margin-bottom:-1.35rem !important}.my-xxl-n5{margin-top:-1.8rem !important;margin-bottom:-1.8rem !important}.my-xxl-n6{margin-top:-2.25rem !important;margin-bottom:-2.25rem !important}.my-xxl-n7{margin-top:-2.7rem !important;margin-bottom:-2.7rem !important}.my-xxl-n8{margin-top:-3.15rem !important;margin-bottom:-3.15rem !important}.my-xxl-n9{margin-top:-3.6rem !important;margin-bottom:-3.6rem !important}.my-xxl-ntiny{margin-top:-0.135rem !important;margin-bottom:-0.135rem !important}.mt-xxl-n1{margin-top:-0.225rem !important}.mt-xxl-n2{margin-top:-0.45rem !important}.mt-xxl-n3{margin-top:-0.9rem !important}.mt-xxl-n4{margin-top:-1.35rem !important}.mt-xxl-n5{margin-top:-1.8rem !important}.mt-xxl-n6{margin-top:-2.25rem !important}.mt-xxl-n7{margin-top:-2.7rem !important}.mt-xxl-n8{margin-top:-3.15rem !important}.mt-xxl-n9{margin-top:-3.6rem !important}.mt-xxl-ntiny{margin-top:-0.135rem !important}.me-xxl-n1{margin-right:-0.225rem !important}.me-xxl-n2{margin-right:-0.45rem !important}.me-xxl-n3{margin-right:-0.9rem !important}.me-xxl-n4{margin-right:-1.35rem !important}.me-xxl-n5{margin-right:-1.8rem !important}.me-xxl-n6{margin-right:-2.25rem !important}.me-xxl-n7{margin-right:-2.7rem !important}.me-xxl-n8{margin-right:-3.15rem !important}.me-xxl-n9{margin-right:-3.6rem !important}.me-xxl-ntiny{margin-right:-0.135rem !important}.mb-xxl-n1{margin-bottom:-0.225rem !important}.mb-xxl-n2{margin-bottom:-0.45rem !important}.mb-xxl-n3{margin-bottom:-0.9rem !important}.mb-xxl-n4{margin-bottom:-1.35rem !important}.mb-xxl-n5{margin-bottom:-1.8rem !important}.mb-xxl-n6{margin-bottom:-2.25rem !important}.mb-xxl-n7{margin-bottom:-2.7rem !important}.mb-xxl-n8{margin-bottom:-3.15rem !important}.mb-xxl-n9{margin-bottom:-3.6rem !important}.mb-xxl-ntiny{margin-bottom:-0.135rem !important}.ms-xxl-n1{margin-left:-0.225rem !important}.ms-xxl-n2{margin-left:-0.45rem !important}.ms-xxl-n3{margin-left:-0.9rem !important}.ms-xxl-n4{margin-left:-1.35rem !important}.ms-xxl-n5{margin-left:-1.8rem !important}.ms-xxl-n6{margin-left:-2.25rem !important}.ms-xxl-n7{margin-left:-2.7rem !important}.ms-xxl-n8{margin-left:-3.15rem !important}.ms-xxl-n9{margin-left:-3.6rem !important}.ms-xxl-ntiny{margin-left:-0.135rem !important}.p-xxl-0{padding:0 !important}.p-xxl-1{padding:.225rem !important}.p-xxl-2{padding:.45rem !important}.p-xxl-3{padding:.9rem !important}.p-xxl-4{padding:1.35rem !important}.p-xxl-5{padding:1.8rem !important}.p-xxl-6{padding:2.25rem !important}.p-xxl-7{padding:2.7rem !important}.p-xxl-8{padding:3.15rem !important}.p-xxl-9{padding:3.6rem !important}.p-xxl-tiny{padding:.135rem !important}.px-xxl-0{padding-right:0 !important;padding-left:0 !important}.px-xxl-1{padding-right:.225rem !important;padding-left:.225rem !important}.px-xxl-2{padding-right:.45rem !important;padding-left:.45rem !important}.px-xxl-3{padding-right:.9rem !important;padding-left:.9rem !important}.px-xxl-4{padding-right:1.35rem !important;padding-left:1.35rem !important}.px-xxl-5{padding-right:1.8rem !important;padding-left:1.8rem !important}.px-xxl-6{padding-right:2.25rem !important;padding-left:2.25rem !important}.px-xxl-7{padding-right:2.7rem !important;padding-left:2.7rem !important}.px-xxl-8{padding-right:3.15rem !important;padding-left:3.15rem !important}.px-xxl-9{padding-right:3.6rem !important;padding-left:3.6rem !important}.px-xxl-tiny{padding-right:.135rem !important;padding-left:.135rem !important}.py-xxl-0{padding-top:0 !important;padding-bottom:0 !important}.py-xxl-1{padding-top:.225rem !important;padding-bottom:.225rem !important}.py-xxl-2{padding-top:.45rem !important;padding-bottom:.45rem !important}.py-xxl-3{padding-top:.9rem !important;padding-bottom:.9rem !important}.py-xxl-4{padding-top:1.35rem !important;padding-bottom:1.35rem !important}.py-xxl-5{padding-top:1.8rem !important;padding-bottom:1.8rem !important}.py-xxl-6{padding-top:2.25rem !important;padding-bottom:2.25rem !important}.py-xxl-7{padding-top:2.7rem !important;padding-bottom:2.7rem !important}.py-xxl-8{padding-top:3.15rem !important;padding-bottom:3.15rem !important}.py-xxl-9{padding-top:3.6rem !important;padding-bottom:3.6rem !important}.py-xxl-tiny{padding-top:.135rem !important;padding-bottom:.135rem !important}.pt-xxl-0{padding-top:0 !important}.pt-xxl-1{padding-top:.225rem !important}.pt-xxl-2{padding-top:.45rem !important}.pt-xxl-3{padding-top:.9rem !important}.pt-xxl-4{padding-top:1.35rem !important}.pt-xxl-5{padding-top:1.8rem !important}.pt-xxl-6{padding-top:2.25rem !important}.pt-xxl-7{padding-top:2.7rem !important}.pt-xxl-8{padding-top:3.15rem !important}.pt-xxl-9{padding-top:3.6rem !important}.pt-xxl-tiny{padding-top:.135rem !important}.pe-xxl-0{padding-right:0 !important}.pe-xxl-1{padding-right:.225rem !important}.pe-xxl-2{padding-right:.45rem !important}.pe-xxl-3{padding-right:.9rem !important}.pe-xxl-4{padding-right:1.35rem !important}.pe-xxl-5{padding-right:1.8rem !important}.pe-xxl-6{padding-right:2.25rem !important}.pe-xxl-7{padding-right:2.7rem !important}.pe-xxl-8{padding-right:3.15rem !important}.pe-xxl-9{padding-right:3.6rem !important}.pe-xxl-tiny{padding-right:.135rem !important}.pb-xxl-0{padding-bottom:0 !important}.pb-xxl-1{padding-bottom:.225rem !important}.pb-xxl-2{padding-bottom:.45rem !important}.pb-xxl-3{padding-bottom:.9rem !important}.pb-xxl-4{padding-bottom:1.35rem !important}.pb-xxl-5{padding-bottom:1.8rem !important}.pb-xxl-6{padding-bottom:2.25rem !important}.pb-xxl-7{padding-bottom:2.7rem !important}.pb-xxl-8{padding-bottom:3.15rem !important}.pb-xxl-9{padding-bottom:3.6rem !important}.pb-xxl-tiny{padding-bottom:.135rem !important}.ps-xxl-0{padding-left:0 !important}.ps-xxl-1{padding-left:.225rem !important}.ps-xxl-2{padding-left:.45rem !important}.ps-xxl-3{padding-left:.9rem !important}.ps-xxl-4{padding-left:1.35rem !important}.ps-xxl-5{padding-left:1.8rem !important}.ps-xxl-6{padding-left:2.25rem !important}.ps-xxl-7{padding-left:2.7rem !important}.ps-xxl-8{padding-left:3.15rem !important}.ps-xxl-9{padding-left:3.6rem !important}.ps-xxl-tiny{padding-left:.135rem !important}.gap-xxl-0{gap:0 !important}.gap-xxl-1{gap:.225rem !important}.gap-xxl-2{gap:.45rem !important}.gap-xxl-3{gap:.9rem !important}.gap-xxl-4{gap:1.35rem !important}.gap-xxl-5{gap:1.8rem !important}.gap-xxl-6{gap:2.25rem !important}.gap-xxl-7{gap:2.7rem !important}.gap-xxl-8{gap:3.15rem !important}.gap-xxl-9{gap:3.6rem !important}.gap-xxl-tiny{gap:.135rem !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: 1900px){.float-xxxl-start{float:left !important}.float-xxxl-end{float:right !important}.float-xxxl-none{float:none !important}.d-xxxl-inline{display:inline !important}.d-xxxl-inline-block{display:inline-block !important}.d-xxxl-block{display:block !important}.d-xxxl-grid{display:grid !important}.d-xxxl-table{display:table !important}.d-xxxl-table-row{display:table-row !important}.d-xxxl-table-cell{display:table-cell !important}.d-xxxl-flex{display:flex !important}.d-xxxl-inline-flex{display:inline-flex !important}.d-xxxl-none{display:none !important}.flex-xxxl-fill{flex:1 1 auto !important}.flex-xxxl-row{flex-direction:row !important}.flex-xxxl-column{flex-direction:column !important}.flex-xxxl-row-reverse{flex-direction:row-reverse !important}.flex-xxxl-column-reverse{flex-direction:column-reverse !important}.flex-xxxl-grow-0{flex-grow:0 !important}.flex-xxxl-grow-1{flex-grow:1 !important}.flex-xxxl-shrink-0{flex-shrink:0 !important}.flex-xxxl-shrink-1{flex-shrink:1 !important}.flex-xxxl-wrap{flex-wrap:wrap !important}.flex-xxxl-nowrap{flex-wrap:nowrap !important}.flex-xxxl-wrap-reverse{flex-wrap:wrap-reverse !important}.justify-content-xxxl-start{justify-content:flex-start !important}.justify-content-xxxl-end{justify-content:flex-end !important}.justify-content-xxxl-center{justify-content:center !important}.justify-content-xxxl-between{justify-content:space-between !important}.justify-content-xxxl-around{justify-content:space-around !important}.justify-content-xxxl-evenly{justify-content:space-evenly !important}.align-items-xxxl-start{align-items:flex-start !important}.align-items-xxxl-end{align-items:flex-end !important}.align-items-xxxl-center{align-items:center !important}.align-items-xxxl-baseline{align-items:baseline !important}.align-items-xxxl-stretch{align-items:stretch !important}.align-content-xxxl-start{align-content:flex-start !important}.align-content-xxxl-end{align-content:flex-end !important}.align-content-xxxl-center{align-content:center !important}.align-content-xxxl-between{align-content:space-between !important}.align-content-xxxl-around{align-content:space-around !important}.align-content-xxxl-stretch{align-content:stretch !important}.align-self-xxxl-auto{align-self:auto !important}.align-self-xxxl-start{align-self:flex-start !important}.align-self-xxxl-end{align-self:flex-end !important}.align-self-xxxl-center{align-self:center !important}.align-self-xxxl-baseline{align-self:baseline !important}.align-self-xxxl-stretch{align-self:stretch !important}.order-xxxl-first{order:-1 !important}.order-xxxl-0{order:0 !important}.order-xxxl-1{order:1 !important}.order-xxxl-2{order:2 !important}.order-xxxl-3{order:3 !important}.order-xxxl-4{order:4 !important}.order-xxxl-5{order:5 !important}.order-xxxl-last{order:6 !important}.m-xxxl-0{margin:0 !important}.m-xxxl-1{margin:.225rem !important}.m-xxxl-2{margin:.45rem !important}.m-xxxl-3{margin:.9rem !important}.m-xxxl-4{margin:1.35rem !important}.m-xxxl-5{margin:1.8rem !important}.m-xxxl-6{margin:2.25rem !important}.m-xxxl-7{margin:2.7rem !important}.m-xxxl-8{margin:3.15rem !important}.m-xxxl-9{margin:3.6rem !important}.m-xxxl-tiny{margin:.135rem !important}.m-xxxl-auto{margin:auto !important}.mx-xxxl-0{margin-right:0 !important;margin-left:0 !important}.mx-xxxl-1{margin-right:.225rem !important;margin-left:.225rem !important}.mx-xxxl-2{margin-right:.45rem !important;margin-left:.45rem !important}.mx-xxxl-3{margin-right:.9rem !important;margin-left:.9rem !important}.mx-xxxl-4{margin-right:1.35rem !important;margin-left:1.35rem !important}.mx-xxxl-5{margin-right:1.8rem !important;margin-left:1.8rem !important}.mx-xxxl-6{margin-right:2.25rem !important;margin-left:2.25rem !important}.mx-xxxl-7{margin-right:2.7rem !important;margin-left:2.7rem !important}.mx-xxxl-8{margin-right:3.15rem !important;margin-left:3.15rem !important}.mx-xxxl-9{margin-right:3.6rem !important;margin-left:3.6rem !important}.mx-xxxl-tiny{margin-right:.135rem !important;margin-left:.135rem !important}.mx-xxxl-auto{margin-right:auto !important;margin-left:auto !important}.my-xxxl-0{margin-top:0 !important;margin-bottom:0 !important}.my-xxxl-1{margin-top:.225rem !important;margin-bottom:.225rem !important}.my-xxxl-2{margin-top:.45rem !important;margin-bottom:.45rem !important}.my-xxxl-3{margin-top:.9rem !important;margin-bottom:.9rem !important}.my-xxxl-4{margin-top:1.35rem !important;margin-bottom:1.35rem !important}.my-xxxl-5{margin-top:1.8rem !important;margin-bottom:1.8rem !important}.my-xxxl-6{margin-top:2.25rem !important;margin-bottom:2.25rem !important}.my-xxxl-7{margin-top:2.7rem !important;margin-bottom:2.7rem !important}.my-xxxl-8{margin-top:3.15rem !important;margin-bottom:3.15rem !important}.my-xxxl-9{margin-top:3.6rem !important;margin-bottom:3.6rem !important}.my-xxxl-tiny{margin-top:.135rem !important;margin-bottom:.135rem !important}.my-xxxl-auto{margin-top:auto !important;margin-bottom:auto !important}.mt-xxxl-0{margin-top:0 !important}.mt-xxxl-1{margin-top:.225rem !important}.mt-xxxl-2{margin-top:.45rem !important}.mt-xxxl-3{margin-top:.9rem !important}.mt-xxxl-4{margin-top:1.35rem !important}.mt-xxxl-5{margin-top:1.8rem !important}.mt-xxxl-6{margin-top:2.25rem !important}.mt-xxxl-7{margin-top:2.7rem !important}.mt-xxxl-8{margin-top:3.15rem !important}.mt-xxxl-9{margin-top:3.6rem !important}.mt-xxxl-tiny{margin-top:.135rem !important}.mt-xxxl-auto{margin-top:auto !important}.me-xxxl-0{margin-right:0 !important}.me-xxxl-1{margin-right:.225rem !important}.me-xxxl-2{margin-right:.45rem !important}.me-xxxl-3{margin-right:.9rem !important}.me-xxxl-4{margin-right:1.35rem !important}.me-xxxl-5{margin-right:1.8rem !important}.me-xxxl-6{margin-right:2.25rem !important}.me-xxxl-7{margin-right:2.7rem !important}.me-xxxl-8{margin-right:3.15rem !important}.me-xxxl-9{margin-right:3.6rem !important}.me-xxxl-tiny{margin-right:.135rem !important}.me-xxxl-auto{margin-right:auto !important}.mb-xxxl-0{margin-bottom:0 !important}.mb-xxxl-1{margin-bottom:.225rem !important}.mb-xxxl-2{margin-bottom:.45rem !important}.mb-xxxl-3{margin-bottom:.9rem !important}.mb-xxxl-4{margin-bottom:1.35rem !important}.mb-xxxl-5{margin-bottom:1.8rem !important}.mb-xxxl-6{margin-bottom:2.25rem !important}.mb-xxxl-7{margin-bottom:2.7rem !important}.mb-xxxl-8{margin-bottom:3.15rem !important}.mb-xxxl-9{margin-bottom:3.6rem !important}.mb-xxxl-tiny{margin-bottom:.135rem !important}.mb-xxxl-auto{margin-bottom:auto !important}.ms-xxxl-0{margin-left:0 !important}.ms-xxxl-1{margin-left:.225rem !important}.ms-xxxl-2{margin-left:.45rem !important}.ms-xxxl-3{margin-left:.9rem !important}.ms-xxxl-4{margin-left:1.35rem !important}.ms-xxxl-5{margin-left:1.8rem !important}.ms-xxxl-6{margin-left:2.25rem !important}.ms-xxxl-7{margin-left:2.7rem !important}.ms-xxxl-8{margin-left:3.15rem !important}.ms-xxxl-9{margin-left:3.6rem !important}.ms-xxxl-tiny{margin-left:.135rem !important}.ms-xxxl-auto{margin-left:auto !important}.m-xxxl-n1{margin:-0.225rem !important}.m-xxxl-n2{margin:-0.45rem !important}.m-xxxl-n3{margin:-0.9rem !important}.m-xxxl-n4{margin:-1.35rem !important}.m-xxxl-n5{margin:-1.8rem !important}.m-xxxl-n6{margin:-2.25rem !important}.m-xxxl-n7{margin:-2.7rem !important}.m-xxxl-n8{margin:-3.15rem !important}.m-xxxl-n9{margin:-3.6rem !important}.m-xxxl-ntiny{margin:-0.135rem !important}.mx-xxxl-n1{margin-right:-0.225rem !important;margin-left:-0.225rem !important}.mx-xxxl-n2{margin-right:-0.45rem !important;margin-left:-0.45rem !important}.mx-xxxl-n3{margin-right:-0.9rem !important;margin-left:-0.9rem !important}.mx-xxxl-n4{margin-right:-1.35rem !important;margin-left:-1.35rem !important}.mx-xxxl-n5{margin-right:-1.8rem !important;margin-left:-1.8rem !important}.mx-xxxl-n6{margin-right:-2.25rem !important;margin-left:-2.25rem !important}.mx-xxxl-n7{margin-right:-2.7rem !important;margin-left:-2.7rem !important}.mx-xxxl-n8{margin-right:-3.15rem !important;margin-left:-3.15rem !important}.mx-xxxl-n9{margin-right:-3.6rem !important;margin-left:-3.6rem !important}.mx-xxxl-ntiny{margin-right:-0.135rem !important;margin-left:-0.135rem !important}.my-xxxl-n1{margin-top:-0.225rem !important;margin-bottom:-0.225rem !important}.my-xxxl-n2{margin-top:-0.45rem !important;margin-bottom:-0.45rem !important}.my-xxxl-n3{margin-top:-0.9rem !important;margin-bottom:-0.9rem !important}.my-xxxl-n4{margin-top:-1.35rem !important;margin-bottom:-1.35rem !important}.my-xxxl-n5{margin-top:-1.8rem !important;margin-bottom:-1.8rem !important}.my-xxxl-n6{margin-top:-2.25rem !important;margin-bottom:-2.25rem !important}.my-xxxl-n7{margin-top:-2.7rem !important;margin-bottom:-2.7rem !important}.my-xxxl-n8{margin-top:-3.15rem !important;margin-bottom:-3.15rem !important}.my-xxxl-n9{margin-top:-3.6rem !important;margin-bottom:-3.6rem !important}.my-xxxl-ntiny{margin-top:-0.135rem !important;margin-bottom:-0.135rem !important}.mt-xxxl-n1{margin-top:-0.225rem !important}.mt-xxxl-n2{margin-top:-0.45rem !important}.mt-xxxl-n3{margin-top:-0.9rem !important}.mt-xxxl-n4{margin-top:-1.35rem !important}.mt-xxxl-n5{margin-top:-1.8rem !important}.mt-xxxl-n6{margin-top:-2.25rem !important}.mt-xxxl-n7{margin-top:-2.7rem !important}.mt-xxxl-n8{margin-top:-3.15rem !important}.mt-xxxl-n9{margin-top:-3.6rem !important}.mt-xxxl-ntiny{margin-top:-0.135rem !important}.me-xxxl-n1{margin-right:-0.225rem !important}.me-xxxl-n2{margin-right:-0.45rem !important}.me-xxxl-n3{margin-right:-0.9rem !important}.me-xxxl-n4{margin-right:-1.35rem !important}.me-xxxl-n5{margin-right:-1.8rem !important}.me-xxxl-n6{margin-right:-2.25rem !important}.me-xxxl-n7{margin-right:-2.7rem !important}.me-xxxl-n8{margin-right:-3.15rem !important}.me-xxxl-n9{margin-right:-3.6rem !important}.me-xxxl-ntiny{margin-right:-0.135rem !important}.mb-xxxl-n1{margin-bottom:-0.225rem !important}.mb-xxxl-n2{margin-bottom:-0.45rem !important}.mb-xxxl-n3{margin-bottom:-0.9rem !important}.mb-xxxl-n4{margin-bottom:-1.35rem !important}.mb-xxxl-n5{margin-bottom:-1.8rem !important}.mb-xxxl-n6{margin-bottom:-2.25rem !important}.mb-xxxl-n7{margin-bottom:-2.7rem !important}.mb-xxxl-n8{margin-bottom:-3.15rem !important}.mb-xxxl-n9{margin-bottom:-3.6rem !important}.mb-xxxl-ntiny{margin-bottom:-0.135rem !important}.ms-xxxl-n1{margin-left:-0.225rem !important}.ms-xxxl-n2{margin-left:-0.45rem !important}.ms-xxxl-n3{margin-left:-0.9rem !important}.ms-xxxl-n4{margin-left:-1.35rem !important}.ms-xxxl-n5{margin-left:-1.8rem !important}.ms-xxxl-n6{margin-left:-2.25rem !important}.ms-xxxl-n7{margin-left:-2.7rem !important}.ms-xxxl-n8{margin-left:-3.15rem !important}.ms-xxxl-n9{margin-left:-3.6rem !important}.ms-xxxl-ntiny{margin-left:-0.135rem !important}.p-xxxl-0{padding:0 !important}.p-xxxl-1{padding:.225rem !important}.p-xxxl-2{padding:.45rem !important}.p-xxxl-3{padding:.9rem !important}.p-xxxl-4{padding:1.35rem !important}.p-xxxl-5{padding:1.8rem !important}.p-xxxl-6{padding:2.25rem !important}.p-xxxl-7{padding:2.7rem !important}.p-xxxl-8{padding:3.15rem !important}.p-xxxl-9{padding:3.6rem !important}.p-xxxl-tiny{padding:.135rem !important}.px-xxxl-0{padding-right:0 !important;padding-left:0 !important}.px-xxxl-1{padding-right:.225rem !important;padding-left:.225rem !important}.px-xxxl-2{padding-right:.45rem !important;padding-left:.45rem !important}.px-xxxl-3{padding-right:.9rem !important;padding-left:.9rem !important}.px-xxxl-4{padding-right:1.35rem !important;padding-left:1.35rem !important}.px-xxxl-5{padding-right:1.8rem !important;padding-left:1.8rem !important}.px-xxxl-6{padding-right:2.25rem !important;padding-left:2.25rem !important}.px-xxxl-7{padding-right:2.7rem !important;padding-left:2.7rem !important}.px-xxxl-8{padding-right:3.15rem !important;padding-left:3.15rem !important}.px-xxxl-9{padding-right:3.6rem !important;padding-left:3.6rem !important}.px-xxxl-tiny{padding-right:.135rem !important;padding-left:.135rem !important}.py-xxxl-0{padding-top:0 !important;padding-bottom:0 !important}.py-xxxl-1{padding-top:.225rem !important;padding-bottom:.225rem !important}.py-xxxl-2{padding-top:.45rem !important;padding-bottom:.45rem !important}.py-xxxl-3{padding-top:.9rem !important;padding-bottom:.9rem !important}.py-xxxl-4{padding-top:1.35rem !important;padding-bottom:1.35rem !important}.py-xxxl-5{padding-top:1.8rem !important;padding-bottom:1.8rem !important}.py-xxxl-6{padding-top:2.25rem !important;padding-bottom:2.25rem !important}.py-xxxl-7{padding-top:2.7rem !important;padding-bottom:2.7rem !important}.py-xxxl-8{padding-top:3.15rem !important;padding-bottom:3.15rem !important}.py-xxxl-9{padding-top:3.6rem !important;padding-bottom:3.6rem !important}.py-xxxl-tiny{padding-top:.135rem !important;padding-bottom:.135rem !important}.pt-xxxl-0{padding-top:0 !important}.pt-xxxl-1{padding-top:.225rem !important}.pt-xxxl-2{padding-top:.45rem !important}.pt-xxxl-3{padding-top:.9rem !important}.pt-xxxl-4{padding-top:1.35rem !important}.pt-xxxl-5{padding-top:1.8rem !important}.pt-xxxl-6{padding-top:2.25rem !important}.pt-xxxl-7{padding-top:2.7rem !important}.pt-xxxl-8{padding-top:3.15rem !important}.pt-xxxl-9{padding-top:3.6rem !important}.pt-xxxl-tiny{padding-top:.135rem !important}.pe-xxxl-0{padding-right:0 !important}.pe-xxxl-1{padding-right:.225rem !important}.pe-xxxl-2{padding-right:.45rem !important}.pe-xxxl-3{padding-right:.9rem !important}.pe-xxxl-4{padding-right:1.35rem !important}.pe-xxxl-5{padding-right:1.8rem !important}.pe-xxxl-6{padding-right:2.25rem !important}.pe-xxxl-7{padding-right:2.7rem !important}.pe-xxxl-8{padding-right:3.15rem !important}.pe-xxxl-9{padding-right:3.6rem !important}.pe-xxxl-tiny{padding-right:.135rem !important}.pb-xxxl-0{padding-bottom:0 !important}.pb-xxxl-1{padding-bottom:.225rem !important}.pb-xxxl-2{padding-bottom:.45rem !important}.pb-xxxl-3{padding-bottom:.9rem !important}.pb-xxxl-4{padding-bottom:1.35rem !important}.pb-xxxl-5{padding-bottom:1.8rem !important}.pb-xxxl-6{padding-bottom:2.25rem !important}.pb-xxxl-7{padding-bottom:2.7rem !important}.pb-xxxl-8{padding-bottom:3.15rem !important}.pb-xxxl-9{padding-bottom:3.6rem !important}.pb-xxxl-tiny{padding-bottom:.135rem !important}.ps-xxxl-0{padding-left:0 !important}.ps-xxxl-1{padding-left:.225rem !important}.ps-xxxl-2{padding-left:.45rem !important}.ps-xxxl-3{padding-left:.9rem !important}.ps-xxxl-4{padding-left:1.35rem !important}.ps-xxxl-5{padding-left:1.8rem !important}.ps-xxxl-6{padding-left:2.25rem !important}.ps-xxxl-7{padding-left:2.7rem !important}.ps-xxxl-8{padding-left:3.15rem !important}.ps-xxxl-9{padding-left:3.6rem !important}.ps-xxxl-tiny{padding-left:.135rem !important}.gap-xxxl-0{gap:0 !important}.gap-xxxl-1{gap:.225rem !important}.gap-xxxl-2{gap:.45rem !important}.gap-xxxl-3{gap:.9rem !important}.gap-xxxl-4{gap:1.35rem !important}.gap-xxxl-5{gap:1.8rem !important}.gap-xxxl-6{gap:2.25rem !important}.gap-xxxl-7{gap:2.7rem !important}.gap-xxxl-8{gap:3.15rem !important}.gap-xxxl-9{gap:3.6rem !important}.gap-xxxl-tiny{gap:.135rem !important}.text-xxxl-start{text-align:left !important}.text-xxxl-end{text-align:right !important}.text-xxxl-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}}.table>:not(:first-child){border-top:0px}.table td.fit,.table th.fit{white-space:nowrap;width:1%}.bg-content{background-color:#1a2433 !important}code{background-color:#1a2433 !important}.icon-shadow{filter:drop-shadow(1px 1px 1px #666)}.icon-shadow-dark{filter:drop-shadow(1px 1px 1px #262626)}.text-darken{filter:brightness(80%)}.text-lighten{filter:brightness(120%)}.text-tight-spacing{letter-spacing:-0.5px}.text-orange{color:#fd7e14}.text-twitter{color:#1d9bf0}.mb-large{margin-bottom:100px}.hljs,.hljs-subst{color:#f7fafa}.fs-120{font-size:120%}.fs-100{font-size:100%}.fs-90{font-size:90%}.fs-80{font-size:80%}.fs-75{font-size:75%}.text-small{font-size:80%}.text-tiny{font-size:75% !important}.text-60pct{font-size:50% !important}.text-50pct{font-size:50% !important}.border-dotted{border-bottom:1px dotted #ccc}.border-thick{border-width:4px !important}body{font-size:14px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji}.font-serif{font-family:Georgia,Garamond,serif !important}hr{margin:.25rem 0 .75rem 0 !important}img.header-image{margin-top:-10px;margin-bottom:-5px;width:40px;height:40px;margin-right:10px}code,.font-json,.font-data,.font-plaintext{font-family:"Source Code Pro",monospace !important}.hr-thick{height:3px !important}.mb-section{margin-bottom:1.5rem !important}.mb-tiny{margin-bottom:3px}.mb-huge{margin-bottom:200px}.user-message-markdown p{margin-bottom:0 !important}.summary-row:last-child{margin-bottom:0 !important}pre{white-space:pre-wrap;white-space:-moz-pre-wrap;white-space:-pre-wrap;white-space:-o-pre-wrap;word-wrap:break-word;margin-bottom:0 !important}.word-wrap{word-wrap:break-word;word-break:break-all}.table th{border-top:none}.footer-link{color:#ddd;text-decoration:underline}.footer-link:hover{color:#fff}.hljs-type,.hljs-string,.hljs-selector-id,.hljs-selector-class,.hljs-quote,.hljs-template-tag,.hljs-deletion{color:#3aa54f}.hljs-literal,.hljs-number{color:#0dcaf0}.node-color-circle-outer{position:relative;width:4em;height:4em;background-color:#000;border-radius:50%}.node-color-circle-inner{top:10%;left:10%;position:absolute;width:80%;height:80%;background-color:#e5e5e5;border-radius:50%}.node-icon{top:10%;left:10%;position:absolute;width:80%;height:80%;border-radius:50%}input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus,input:-webkit-autofill:active{-webkit-box-shadow:0 0 0 30px #344866 inset !important}input:-webkit-autofill{-webkit-text-fill-color:#f7fafa !important}.alert-primary{color:#f7fafa;background-color:#012457;border-color:#0143a3;border-width:2px}.alert-danger{color:#f7fafa;background-color:#66121a;border-color:#921925;border-width:2px}.alert-warning{color:#f7fafa;background-color:#876500;border-color:#ba8b00;border-width:2px}.alert-success{color:#f7fafa;background-color:#115c39;border-color:#1d9d61;border-width:2px}.alert-info{color:#f7fafa;background-color:#08798f;border-color:#0aa1c0;border-width:2px}.bg-background{background-color:#000}.bg-main{background-color:#131a25 !important}.bg-menu{background-color:#1a2433}.bg-header-footer{background-color:#112138 !important}.bg-header-footer-highlight{background-color:#1f3d67 !important}.bg-gradient-body-to-main{background:linear-gradient(0deg, #131a25 0%, #1a2433 100%)}.bg-card-highlight-badge{background-color:#1a2433 !important}li.nav-item:hover{background-color:#233044}.bg-tx-separator{background-color:#131a24}.border-card-highlight-badge{border-color:#183662 !important}.border-dark{border-color:#1a2433 !important}.card-highlight{background-color:#233044;border:solid 1px #2b3c55 !important;color:#f7fafa}.text-card-highlight{color:#406fb4 !important}.border-dotted{border-bottom:dotted 1px #6688bc}code{padding:0px 3px;border-radius:3px;background-color:#344866;color:#198754}/*# sourceMappingURL=dark.css.map */ + */:root,[data-bs-theme=light]{--bs-blue: #0d6efd;--bs-indigo: #6610f2;--bs-purple: #6f42c1;--bs-pink: #d63384;--bs-red: #dc3545;--bs-orange: #fd7e14;--bs-yellow: #ffc107;--bs-green: #198754;--bs-teal: #20c997;--bs-cyan: #0dcaf0;--bs-black: #000;--bs-white: #fff;--bs-gray: #6c757d;--bs-gray-dark: #343a40;--bs-gray-100: #f8f9fa;--bs-gray-200: #e9ecef;--bs-gray-300: #dee2e6;--bs-gray-400: #ced4da;--bs-gray-500: #adb5bd;--bs-gray-600: #6c757d;--bs-gray-700: #495057;--bs-gray-800: #343a40;--bs-gray-900: #212529;--bs-primary: #0d6efd;--bs-secondary: #6c757d;--bs-success: #198754;--bs-info: #0dcaf0;--bs-warning: #ffc107;--bs-danger: #dc3545;--bs-light: #e9ecef;--bs-dark: #0c1118;--bs-primary-rgb: 13, 110, 253;--bs-secondary-rgb: 108, 117, 125;--bs-success-rgb: 25, 135, 84;--bs-info-rgb: 13, 202, 240;--bs-warning-rgb: 255, 193, 7;--bs-danger-rgb: 220, 53, 69;--bs-light-rgb: 233, 236, 239;--bs-dark-rgb: 12, 17, 24;--bs-primary-text-emphasis: #052c65;--bs-secondary-text-emphasis: #2b2f32;--bs-success-text-emphasis: #0a3622;--bs-info-text-emphasis: #055160;--bs-warning-text-emphasis: #664d03;--bs-danger-text-emphasis: #58151c;--bs-light-text-emphasis: #495057;--bs-dark-text-emphasis: #495057;--bs-primary-bg-subtle: #cfe2ff;--bs-secondary-bg-subtle: #e2e3e5;--bs-success-bg-subtle: #d1e7dd;--bs-info-bg-subtle: #cff4fc;--bs-warning-bg-subtle: #fff3cd;--bs-danger-bg-subtle: #f8d7da;--bs-light-bg-subtle: #fcfcfd;--bs-dark-bg-subtle: #ced4da;--bs-primary-border-subtle: #9ec5fe;--bs-secondary-border-subtle: #c4c8cb;--bs-success-border-subtle: #a3cfbb;--bs-info-border-subtle: #9eeaf9;--bs-warning-border-subtle: #ffe69c;--bs-danger-border-subtle: #f1aeb5;--bs-light-border-subtle: #e9ecef;--bs-dark-border-subtle: #adb5bd;--bs-white-rgb: 255, 255, 255;--bs-black-rgb: 0, 0, 0;--bs-font-sans-serif: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));--bs-body-font-family: var(--bs-font-sans-serif);--bs-body-font-size:1rem;--bs-body-font-weight: 400;--bs-body-line-height: 1.5;--bs-body-color: #f7fafa;--bs-body-color-rgb: 247, 250, 250;--bs-body-bg: #1a2433;--bs-body-bg-rgb: 26, 36, 51;--bs-emphasis-color: #000;--bs-emphasis-color-rgb: 0, 0, 0;--bs-secondary-color: rgba(247, 250, 250, 0.75);--bs-secondary-color-rgb: 247, 250, 250;--bs-secondary-bg: #e9ecef;--bs-secondary-bg-rgb: 233, 236, 239;--bs-tertiary-color: rgba(247, 250, 250, 0.5);--bs-tertiary-color-rgb: 247, 250, 250;--bs-tertiary-bg: #f8f9fa;--bs-tertiary-bg-rgb: 248, 249, 250;--bs-heading-color: inherit;--bs-link-color: #0d6efd;--bs-link-color-rgb: 13, 110, 253;--bs-link-decoration: none;--bs-link-hover-color: #408cff;--bs-link-hover-color-rgb: 64, 140, 255;--bs-link-hover-decoration: underline;--bs-code-color: #d63384;--bs-highlight-bg: #fff3cd;--bs-border-width: 1px;--bs-border-style: solid;--bs-border-color: #212e41;--bs-border-color-translucent: rgba(0, 0, 0, 0.175);--bs-border-radius: 0.4rem;--bs-border-radius-sm: 0.25rem;--bs-border-radius-lg: 0.5rem;--bs-border-radius-xl: 1rem;--bs-border-radius-xxl: 2rem;--bs-border-radius-2xl: var(--bs-border-radius-xxl);--bs-border-radius-pill: 50rem;--bs-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);--bs-box-shadow-sm: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);--bs-box-shadow-lg: 0 1rem 3rem rgba(0, 0, 0, 0.175);--bs-box-shadow-inset: inset 0 1px 2px rgba(0, 0, 0, 0.075);--bs-focus-ring-width: 0.25rem;--bs-focus-ring-opacity: 0.25;--bs-focus-ring-color: rgba(13, 110, 253, 0.25);--bs-form-valid-color: #198754;--bs-form-valid-border-color: #198754;--bs-form-invalid-color: #dc3545;--bs-form-invalid-border-color: #dc3545}[data-bs-theme=dark]{color-scheme:dark;--bs-body-color: #adb5bd;--bs-body-color-rgb: 173, 181, 189;--bs-body-bg: #212529;--bs-body-bg-rgb: 33, 37, 41;--bs-emphasis-color: #fff;--bs-emphasis-color-rgb: 255, 255, 255;--bs-secondary-color: rgba(173, 181, 189, 0.75);--bs-secondary-color-rgb: 173, 181, 189;--bs-secondary-bg: #343a40;--bs-secondary-bg-rgb: 52, 58, 64;--bs-tertiary-color: rgba(173, 181, 189, 0.5);--bs-tertiary-color-rgb: 173, 181, 189;--bs-tertiary-bg: #2b3035;--bs-tertiary-bg-rgb: 43, 48, 53;--bs-primary-text-emphasis: #6ea8fe;--bs-secondary-text-emphasis: #a7acb1;--bs-success-text-emphasis: #75b798;--bs-info-text-emphasis: #6edff6;--bs-warning-text-emphasis: #ffda6a;--bs-danger-text-emphasis: #ea868f;--bs-light-text-emphasis: #f8f9fa;--bs-dark-text-emphasis: #dee2e6;--bs-primary-bg-subtle: #031633;--bs-secondary-bg-subtle: #161719;--bs-success-bg-subtle: #051b11;--bs-info-bg-subtle: #032830;--bs-warning-bg-subtle: #332701;--bs-danger-bg-subtle: #2c0b0e;--bs-light-bg-subtle: #343a40;--bs-dark-bg-subtle: #1a1d20;--bs-primary-border-subtle: #084298;--bs-secondary-border-subtle: #41464b;--bs-success-border-subtle: #0f5132;--bs-info-border-subtle: #087990;--bs-warning-border-subtle: #997404;--bs-danger-border-subtle: #842029;--bs-light-border-subtle: #495057;--bs-dark-border-subtle: #343a40;--bs-heading-color: inherit;--bs-link-color: #6ea8fe;--bs-link-hover-color: #8bb9fe;--bs-link-color-rgb: 110, 168, 254;--bs-link-hover-color-rgb: 139, 185, 254;--bs-code-color: #e685b5;--bs-border-color: #495057;--bs-border-color-translucent: rgba(255, 255, 255, 0.15);--bs-form-valid-color: #75b798;--bs-form-valid-border-color: #75b798;--bs-form-invalid-color: #ea868f;--bs-form-invalid-border-color: #ea868f}*,*::before,*::after{box-sizing:border-box}@media(prefers-reduced-motion: no-preference){:root{scroll-behavior:smooth}}body{margin:0;font-family:var(--bs-body-font-family);font-size:var(--bs-body-font-size);font-weight:var(--bs-body-font-weight);line-height:var(--bs-body-line-height);color:var(--bs-body-color);text-align:var(--bs-body-text-align);background-color:var(--bs-body-bg);-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:rgba(0,0,0,0)}hr{margin:.9rem 0;color:inherit;border:0;border-top:var(--bs-border-width) solid;opacity:.25}h6,.h6,h5,.h5,h4,.h4,h3,.h3,h2,.h2,h1,.h1{margin-top:0;margin-bottom:.45rem;font-weight:500;line-height:1.2;color:var(--bs-heading-color)}h1,.h1{font-size:calc(1.375rem + 1.5vw)}@media(min-width: 1200px){h1,.h1{font-size:2.5rem}}h2,.h2{font-size:calc(1.325rem + 0.9vw)}@media(min-width: 1200px){h2,.h2{font-size:2rem}}h3,.h3{font-size:calc(1.3rem + 0.6vw)}@media(min-width: 1200px){h3,.h3{font-size:1.75rem}}h4,.h4{font-size:calc(1.275rem + 0.3vw)}@media(min-width: 1200px){h4,.h4{font-size:1.5rem}}h5,.h5{font-size:1.25rem}h6,.h6{font-size:1rem}p{margin-top:0;margin-bottom:1rem}abbr[title]{text-decoration:underline dotted;cursor:help;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:.5rem;margin-left:0}blockquote{margin:0 0 1rem}b,strong{font-weight:bolder}small,.small{font-size:0.875em}mark,.mark{padding:.1875em;background-color:var(--bs-highlight-bg)}sub,sup{position:relative;font-size:0.75em;line-height:0;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}a{color:rgba(var(--bs-link-color-rgb), var(--bs-link-opacity, 1));text-decoration:none}a:hover{--bs-link-color-rgb: var(--bs-link-hover-color-rgb);text-decoration:underline}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}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:var(--bs-code-color);word-wrap:break-word}a>code{color:inherit}kbd{padding:.1875rem .375rem;font-size:0.875em;color:var(--bs-body-bg);background-color:var(--bs-body-color);border-radius:.25rem}kbd kbd{padding:0;font-size:1em}figure{margin:0 0 1rem}img,svg{vertical-align:middle}table{caption-side:bottom;border-collapse:collapse}caption{padding-top:.5rem;padding-bottom:.5rem;color:var(--bs-secondary-color);text-align:left}th{text-align:inherit;text-align:-webkit-match-parent}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]:not([type=date]):not([type=datetime-local]):not([type=month]):not([type=week]):not([type=time])::-webkit-calendar-picker-indicator{display:none !important}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:.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}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-color-swatch-wrapper{padding:0}::file-selector-button{font:inherit;-webkit-appearance:button}output{display:inline-block}iframe{border:0}summary{display:list-item;cursor:pointer}progress{vertical-align:baseline}[hidden]{display:none !important}.lead{font-size:1.25rem;font-weight:300}.display-1{font-size:calc(1.625rem + 4.5vw);font-weight:300;line-height:1.2}@media(min-width: 1200px){.display-1{font-size:5rem}}.display-2{font-size:calc(1.575rem + 3.9vw);font-weight:300;line-height:1.2}@media(min-width: 1200px){.display-2{font-size:4.5rem}}.display-3{font-size:calc(1.525rem + 3.3vw);font-weight:300;line-height:1.2}@media(min-width: 1200px){.display-3{font-size:4rem}}.display-4{font-size:calc(1.475rem + 2.7vw);font-weight:300;line-height:1.2}@media(min-width: 1200px){.display-4{font-size:3.5rem}}.display-5{font-size:calc(1.425rem + 2.1vw);font-weight:300;line-height:1.2}@media(min-width: 1200px){.display-5{font-size:3rem}}.display-6{font-size:calc(1.375rem + 1.5vw);font-weight:300;line-height:1.2}@media(min-width: 1200px){.display-6{font-size:2.5rem}}.list-unstyled{padding-left:0;list-style:none}.list-inline{padding-left:0;list-style:none}.list-inline-item{display:inline-block}.list-inline-item:not(:last-child){margin-right:.5rem}.initialism{font-size:0.875em;text-transform:uppercase}.blockquote{margin-bottom:.9rem;font-size:1.25rem}.blockquote>:last-child{margin-bottom:0}.blockquote-footer{margin-top:-0.9rem;margin-bottom:.9rem;font-size:0.875em;color:#6c757d}.blockquote-footer::before{content:"— "}.img-fluid{max-width:100%;height:auto}.img-thumbnail{padding:.25rem;background-color:var(--bs-body-bg);border:var(--bs-border-width) solid var(--bs-border-color);border-radius:var(--bs-border-radius);max-width:100%;height:auto}.figure{display:inline-block}.figure-img{margin-bottom:.45rem;line-height:1}.figure-caption{font-size:0.875em;color:var(--bs-secondary-color)}.container,.container-fluid,.container-xxxl,.container-xxl,.container-xl,.container-lg,.container-md,.container-sm{--bs-gutter-x: 1.5rem;--bs-gutter-y: 0;width:100%;padding-right:calc(var(--bs-gutter-x)*.5);padding-left:calc(var(--bs-gutter-x)*.5);margin-right:auto;margin-left:auto}@media(min-width: 576px){.container-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}}@media(min-width: 1900px){.container-xxxl,.container-xxl,.container-xl,.container-lg,.container-md,.container-sm,.container{max-width:1820px}}:root{--bs-breakpoint-xs: 0;--bs-breakpoint-sm: 576px;--bs-breakpoint-md: 768px;--bs-breakpoint-lg: 992px;--bs-breakpoint-xl: 1200px;--bs-breakpoint-xxl: 1400px;--bs-breakpoint-xxxl: 1900px}.row{--bs-gutter-x: 1.5rem;--bs-gutter-y: 0;display:flex;flex-wrap:wrap;margin-top:calc(-1*var(--bs-gutter-y));margin-right:calc(-0.5*var(--bs-gutter-x));margin-left:calc(-0.5*var(--bs-gutter-x))}.row>*{flex-shrink:0;width:100%;max-width:100%;padding-right:calc(var(--bs-gutter-x)*.5);padding-left:calc(var(--bs-gutter-x)*.5);margin-top:var(--bs-gutter-y)}.col{flex:1 0 0%}.row-cols-auto>*{flex:0 0 auto;width:auto}.row-cols-1>*{flex:0 0 auto;width:100%}.row-cols-2>*{flex:0 0 auto;width:50%}.row-cols-3>*{flex:0 0 auto;width:33.3333333333%}.row-cols-4>*{flex:0 0 auto;width:25%}.row-cols-5>*{flex:0 0 auto;width:20%}.row-cols-6>*{flex:0 0 auto;width:16.6666666667%}.col-auto{flex:0 0 auto;width:auto}.col-1{flex:0 0 auto;width:8.33333333%}.col-2{flex:0 0 auto;width:16.66666667%}.col-3{flex:0 0 auto;width:25%}.col-4{flex:0 0 auto;width:33.33333333%}.col-5{flex:0 0 auto;width:41.66666667%}.col-6{flex:0 0 auto;width:50%}.col-7{flex:0 0 auto;width:58.33333333%}.col-8{flex:0 0 auto;width:66.66666667%}.col-9{flex:0 0 auto;width:75%}.col-10{flex:0 0 auto;width:83.33333333%}.col-11{flex:0 0 auto;width:91.66666667%}.col-12{flex:0 0 auto;width:100%}.offset-1{margin-left:8.33333333%}.offset-2{margin-left:16.66666667%}.offset-3{margin-left:25%}.offset-4{margin-left:33.33333333%}.offset-5{margin-left:41.66666667%}.offset-6{margin-left:50%}.offset-7{margin-left:58.33333333%}.offset-8{margin-left:66.66666667%}.offset-9{margin-left:75%}.offset-10{margin-left:83.33333333%}.offset-11{margin-left:91.66666667%}.g-0,.gx-0{--bs-gutter-x: 0}.g-0,.gy-0{--bs-gutter-y: 0}.g-1,.gx-1{--bs-gutter-x: 0.225rem}.g-1,.gy-1{--bs-gutter-y: 0.225rem}.g-2,.gx-2{--bs-gutter-x: 0.45rem}.g-2,.gy-2{--bs-gutter-y: 0.45rem}.g-3,.gx-3{--bs-gutter-x: 0.9rem}.g-3,.gy-3{--bs-gutter-y: 0.9rem}.g-4,.gx-4{--bs-gutter-x: 1.35rem}.g-4,.gy-4{--bs-gutter-y: 1.35rem}.g-5,.gx-5{--bs-gutter-x: 1.8rem}.g-5,.gy-5{--bs-gutter-y: 1.8rem}.g-6,.gx-6{--bs-gutter-x: 2.25rem}.g-6,.gy-6{--bs-gutter-y: 2.25rem}.g-7,.gx-7{--bs-gutter-x: 2.7rem}.g-7,.gy-7{--bs-gutter-y: 2.7rem}.g-8,.gx-8{--bs-gutter-x: 3.15rem}.g-8,.gy-8{--bs-gutter-y: 3.15rem}.g-9,.gx-9{--bs-gutter-x: 3.6rem}.g-9,.gy-9{--bs-gutter-y: 3.6rem}.g-tiny,.gx-tiny{--bs-gutter-x: 0.135rem}.g-tiny,.gy-tiny{--bs-gutter-y: 0.135rem}@media(min-width: 576px){.col-sm{flex:1 0 0%}.row-cols-sm-auto>*{flex:0 0 auto;width:auto}.row-cols-sm-1>*{flex:0 0 auto;width:100%}.row-cols-sm-2>*{flex:0 0 auto;width:50%}.row-cols-sm-3>*{flex:0 0 auto;width:33.3333333333%}.row-cols-sm-4>*{flex:0 0 auto;width:25%}.row-cols-sm-5>*{flex:0 0 auto;width:20%}.row-cols-sm-6>*{flex:0 0 auto;width:16.6666666667%}.col-sm-auto{flex:0 0 auto;width:auto}.col-sm-1{flex:0 0 auto;width:8.33333333%}.col-sm-2{flex:0 0 auto;width:16.66666667%}.col-sm-3{flex:0 0 auto;width:25%}.col-sm-4{flex:0 0 auto;width:33.33333333%}.col-sm-5{flex:0 0 auto;width:41.66666667%}.col-sm-6{flex:0 0 auto;width:50%}.col-sm-7{flex:0 0 auto;width:58.33333333%}.col-sm-8{flex:0 0 auto;width:66.66666667%}.col-sm-9{flex:0 0 auto;width:75%}.col-sm-10{flex:0 0 auto;width:83.33333333%}.col-sm-11{flex:0 0 auto;width:91.66666667%}.col-sm-12{flex:0 0 auto;width:100%}.offset-sm-0{margin-left:0}.offset-sm-1{margin-left:8.33333333%}.offset-sm-2{margin-left:16.66666667%}.offset-sm-3{margin-left:25%}.offset-sm-4{margin-left:33.33333333%}.offset-sm-5{margin-left:41.66666667%}.offset-sm-6{margin-left:50%}.offset-sm-7{margin-left:58.33333333%}.offset-sm-8{margin-left:66.66666667%}.offset-sm-9{margin-left:75%}.offset-sm-10{margin-left:83.33333333%}.offset-sm-11{margin-left:91.66666667%}.g-sm-0,.gx-sm-0{--bs-gutter-x: 0}.g-sm-0,.gy-sm-0{--bs-gutter-y: 0}.g-sm-1,.gx-sm-1{--bs-gutter-x: 0.225rem}.g-sm-1,.gy-sm-1{--bs-gutter-y: 0.225rem}.g-sm-2,.gx-sm-2{--bs-gutter-x: 0.45rem}.g-sm-2,.gy-sm-2{--bs-gutter-y: 0.45rem}.g-sm-3,.gx-sm-3{--bs-gutter-x: 0.9rem}.g-sm-3,.gy-sm-3{--bs-gutter-y: 0.9rem}.g-sm-4,.gx-sm-4{--bs-gutter-x: 1.35rem}.g-sm-4,.gy-sm-4{--bs-gutter-y: 1.35rem}.g-sm-5,.gx-sm-5{--bs-gutter-x: 1.8rem}.g-sm-5,.gy-sm-5{--bs-gutter-y: 1.8rem}.g-sm-6,.gx-sm-6{--bs-gutter-x: 2.25rem}.g-sm-6,.gy-sm-6{--bs-gutter-y: 2.25rem}.g-sm-7,.gx-sm-7{--bs-gutter-x: 2.7rem}.g-sm-7,.gy-sm-7{--bs-gutter-y: 2.7rem}.g-sm-8,.gx-sm-8{--bs-gutter-x: 3.15rem}.g-sm-8,.gy-sm-8{--bs-gutter-y: 3.15rem}.g-sm-9,.gx-sm-9{--bs-gutter-x: 3.6rem}.g-sm-9,.gy-sm-9{--bs-gutter-y: 3.6rem}.g-sm-tiny,.gx-sm-tiny{--bs-gutter-x: 0.135rem}.g-sm-tiny,.gy-sm-tiny{--bs-gutter-y: 0.135rem}}@media(min-width: 768px){.col-md{flex:1 0 0%}.row-cols-md-auto>*{flex:0 0 auto;width:auto}.row-cols-md-1>*{flex:0 0 auto;width:100%}.row-cols-md-2>*{flex:0 0 auto;width:50%}.row-cols-md-3>*{flex:0 0 auto;width:33.3333333333%}.row-cols-md-4>*{flex:0 0 auto;width:25%}.row-cols-md-5>*{flex:0 0 auto;width:20%}.row-cols-md-6>*{flex:0 0 auto;width:16.6666666667%}.col-md-auto{flex:0 0 auto;width:auto}.col-md-1{flex:0 0 auto;width:8.33333333%}.col-md-2{flex:0 0 auto;width:16.66666667%}.col-md-3{flex:0 0 auto;width:25%}.col-md-4{flex:0 0 auto;width:33.33333333%}.col-md-5{flex:0 0 auto;width:41.66666667%}.col-md-6{flex:0 0 auto;width:50%}.col-md-7{flex:0 0 auto;width:58.33333333%}.col-md-8{flex:0 0 auto;width:66.66666667%}.col-md-9{flex:0 0 auto;width:75%}.col-md-10{flex:0 0 auto;width:83.33333333%}.col-md-11{flex:0 0 auto;width:91.66666667%}.col-md-12{flex:0 0 auto;width:100%}.offset-md-0{margin-left:0}.offset-md-1{margin-left:8.33333333%}.offset-md-2{margin-left:16.66666667%}.offset-md-3{margin-left:25%}.offset-md-4{margin-left:33.33333333%}.offset-md-5{margin-left:41.66666667%}.offset-md-6{margin-left:50%}.offset-md-7{margin-left:58.33333333%}.offset-md-8{margin-left:66.66666667%}.offset-md-9{margin-left:75%}.offset-md-10{margin-left:83.33333333%}.offset-md-11{margin-left:91.66666667%}.g-md-0,.gx-md-0{--bs-gutter-x: 0}.g-md-0,.gy-md-0{--bs-gutter-y: 0}.g-md-1,.gx-md-1{--bs-gutter-x: 0.225rem}.g-md-1,.gy-md-1{--bs-gutter-y: 0.225rem}.g-md-2,.gx-md-2{--bs-gutter-x: 0.45rem}.g-md-2,.gy-md-2{--bs-gutter-y: 0.45rem}.g-md-3,.gx-md-3{--bs-gutter-x: 0.9rem}.g-md-3,.gy-md-3{--bs-gutter-y: 0.9rem}.g-md-4,.gx-md-4{--bs-gutter-x: 1.35rem}.g-md-4,.gy-md-4{--bs-gutter-y: 1.35rem}.g-md-5,.gx-md-5{--bs-gutter-x: 1.8rem}.g-md-5,.gy-md-5{--bs-gutter-y: 1.8rem}.g-md-6,.gx-md-6{--bs-gutter-x: 2.25rem}.g-md-6,.gy-md-6{--bs-gutter-y: 2.25rem}.g-md-7,.gx-md-7{--bs-gutter-x: 2.7rem}.g-md-7,.gy-md-7{--bs-gutter-y: 2.7rem}.g-md-8,.gx-md-8{--bs-gutter-x: 3.15rem}.g-md-8,.gy-md-8{--bs-gutter-y: 3.15rem}.g-md-9,.gx-md-9{--bs-gutter-x: 3.6rem}.g-md-9,.gy-md-9{--bs-gutter-y: 3.6rem}.g-md-tiny,.gx-md-tiny{--bs-gutter-x: 0.135rem}.g-md-tiny,.gy-md-tiny{--bs-gutter-y: 0.135rem}}@media(min-width: 992px){.col-lg{flex:1 0 0%}.row-cols-lg-auto>*{flex:0 0 auto;width:auto}.row-cols-lg-1>*{flex:0 0 auto;width:100%}.row-cols-lg-2>*{flex:0 0 auto;width:50%}.row-cols-lg-3>*{flex:0 0 auto;width:33.3333333333%}.row-cols-lg-4>*{flex:0 0 auto;width:25%}.row-cols-lg-5>*{flex:0 0 auto;width:20%}.row-cols-lg-6>*{flex:0 0 auto;width:16.6666666667%}.col-lg-auto{flex:0 0 auto;width:auto}.col-lg-1{flex:0 0 auto;width:8.33333333%}.col-lg-2{flex:0 0 auto;width:16.66666667%}.col-lg-3{flex:0 0 auto;width:25%}.col-lg-4{flex:0 0 auto;width:33.33333333%}.col-lg-5{flex:0 0 auto;width:41.66666667%}.col-lg-6{flex:0 0 auto;width:50%}.col-lg-7{flex:0 0 auto;width:58.33333333%}.col-lg-8{flex:0 0 auto;width:66.66666667%}.col-lg-9{flex:0 0 auto;width:75%}.col-lg-10{flex:0 0 auto;width:83.33333333%}.col-lg-11{flex:0 0 auto;width:91.66666667%}.col-lg-12{flex:0 0 auto;width:100%}.offset-lg-0{margin-left:0}.offset-lg-1{margin-left:8.33333333%}.offset-lg-2{margin-left:16.66666667%}.offset-lg-3{margin-left:25%}.offset-lg-4{margin-left:33.33333333%}.offset-lg-5{margin-left:41.66666667%}.offset-lg-6{margin-left:50%}.offset-lg-7{margin-left:58.33333333%}.offset-lg-8{margin-left:66.66666667%}.offset-lg-9{margin-left:75%}.offset-lg-10{margin-left:83.33333333%}.offset-lg-11{margin-left:91.66666667%}.g-lg-0,.gx-lg-0{--bs-gutter-x: 0}.g-lg-0,.gy-lg-0{--bs-gutter-y: 0}.g-lg-1,.gx-lg-1{--bs-gutter-x: 0.225rem}.g-lg-1,.gy-lg-1{--bs-gutter-y: 0.225rem}.g-lg-2,.gx-lg-2{--bs-gutter-x: 0.45rem}.g-lg-2,.gy-lg-2{--bs-gutter-y: 0.45rem}.g-lg-3,.gx-lg-3{--bs-gutter-x: 0.9rem}.g-lg-3,.gy-lg-3{--bs-gutter-y: 0.9rem}.g-lg-4,.gx-lg-4{--bs-gutter-x: 1.35rem}.g-lg-4,.gy-lg-4{--bs-gutter-y: 1.35rem}.g-lg-5,.gx-lg-5{--bs-gutter-x: 1.8rem}.g-lg-5,.gy-lg-5{--bs-gutter-y: 1.8rem}.g-lg-6,.gx-lg-6{--bs-gutter-x: 2.25rem}.g-lg-6,.gy-lg-6{--bs-gutter-y: 2.25rem}.g-lg-7,.gx-lg-7{--bs-gutter-x: 2.7rem}.g-lg-7,.gy-lg-7{--bs-gutter-y: 2.7rem}.g-lg-8,.gx-lg-8{--bs-gutter-x: 3.15rem}.g-lg-8,.gy-lg-8{--bs-gutter-y: 3.15rem}.g-lg-9,.gx-lg-9{--bs-gutter-x: 3.6rem}.g-lg-9,.gy-lg-9{--bs-gutter-y: 3.6rem}.g-lg-tiny,.gx-lg-tiny{--bs-gutter-x: 0.135rem}.g-lg-tiny,.gy-lg-tiny{--bs-gutter-y: 0.135rem}}@media(min-width: 1200px){.col-xl{flex:1 0 0%}.row-cols-xl-auto>*{flex:0 0 auto;width:auto}.row-cols-xl-1>*{flex:0 0 auto;width:100%}.row-cols-xl-2>*{flex:0 0 auto;width:50%}.row-cols-xl-3>*{flex:0 0 auto;width:33.3333333333%}.row-cols-xl-4>*{flex:0 0 auto;width:25%}.row-cols-xl-5>*{flex:0 0 auto;width:20%}.row-cols-xl-6>*{flex:0 0 auto;width:16.6666666667%}.col-xl-auto{flex:0 0 auto;width:auto}.col-xl-1{flex:0 0 auto;width:8.33333333%}.col-xl-2{flex:0 0 auto;width:16.66666667%}.col-xl-3{flex:0 0 auto;width:25%}.col-xl-4{flex:0 0 auto;width:33.33333333%}.col-xl-5{flex:0 0 auto;width:41.66666667%}.col-xl-6{flex:0 0 auto;width:50%}.col-xl-7{flex:0 0 auto;width:58.33333333%}.col-xl-8{flex:0 0 auto;width:66.66666667%}.col-xl-9{flex:0 0 auto;width:75%}.col-xl-10{flex:0 0 auto;width:83.33333333%}.col-xl-11{flex:0 0 auto;width:91.66666667%}.col-xl-12{flex:0 0 auto;width:100%}.offset-xl-0{margin-left:0}.offset-xl-1{margin-left:8.33333333%}.offset-xl-2{margin-left:16.66666667%}.offset-xl-3{margin-left:25%}.offset-xl-4{margin-left:33.33333333%}.offset-xl-5{margin-left:41.66666667%}.offset-xl-6{margin-left:50%}.offset-xl-7{margin-left:58.33333333%}.offset-xl-8{margin-left:66.66666667%}.offset-xl-9{margin-left:75%}.offset-xl-10{margin-left:83.33333333%}.offset-xl-11{margin-left:91.66666667%}.g-xl-0,.gx-xl-0{--bs-gutter-x: 0}.g-xl-0,.gy-xl-0{--bs-gutter-y: 0}.g-xl-1,.gx-xl-1{--bs-gutter-x: 0.225rem}.g-xl-1,.gy-xl-1{--bs-gutter-y: 0.225rem}.g-xl-2,.gx-xl-2{--bs-gutter-x: 0.45rem}.g-xl-2,.gy-xl-2{--bs-gutter-y: 0.45rem}.g-xl-3,.gx-xl-3{--bs-gutter-x: 0.9rem}.g-xl-3,.gy-xl-3{--bs-gutter-y: 0.9rem}.g-xl-4,.gx-xl-4{--bs-gutter-x: 1.35rem}.g-xl-4,.gy-xl-4{--bs-gutter-y: 1.35rem}.g-xl-5,.gx-xl-5{--bs-gutter-x: 1.8rem}.g-xl-5,.gy-xl-5{--bs-gutter-y: 1.8rem}.g-xl-6,.gx-xl-6{--bs-gutter-x: 2.25rem}.g-xl-6,.gy-xl-6{--bs-gutter-y: 2.25rem}.g-xl-7,.gx-xl-7{--bs-gutter-x: 2.7rem}.g-xl-7,.gy-xl-7{--bs-gutter-y: 2.7rem}.g-xl-8,.gx-xl-8{--bs-gutter-x: 3.15rem}.g-xl-8,.gy-xl-8{--bs-gutter-y: 3.15rem}.g-xl-9,.gx-xl-9{--bs-gutter-x: 3.6rem}.g-xl-9,.gy-xl-9{--bs-gutter-y: 3.6rem}.g-xl-tiny,.gx-xl-tiny{--bs-gutter-x: 0.135rem}.g-xl-tiny,.gy-xl-tiny{--bs-gutter-y: 0.135rem}}@media(min-width: 1400px){.col-xxl{flex:1 0 0%}.row-cols-xxl-auto>*{flex:0 0 auto;width:auto}.row-cols-xxl-1>*{flex:0 0 auto;width:100%}.row-cols-xxl-2>*{flex:0 0 auto;width:50%}.row-cols-xxl-3>*{flex:0 0 auto;width:33.3333333333%}.row-cols-xxl-4>*{flex:0 0 auto;width:25%}.row-cols-xxl-5>*{flex:0 0 auto;width:20%}.row-cols-xxl-6>*{flex:0 0 auto;width:16.6666666667%}.col-xxl-auto{flex:0 0 auto;width:auto}.col-xxl-1{flex:0 0 auto;width:8.33333333%}.col-xxl-2{flex:0 0 auto;width:16.66666667%}.col-xxl-3{flex:0 0 auto;width:25%}.col-xxl-4{flex:0 0 auto;width:33.33333333%}.col-xxl-5{flex:0 0 auto;width:41.66666667%}.col-xxl-6{flex:0 0 auto;width:50%}.col-xxl-7{flex:0 0 auto;width:58.33333333%}.col-xxl-8{flex:0 0 auto;width:66.66666667%}.col-xxl-9{flex:0 0 auto;width:75%}.col-xxl-10{flex:0 0 auto;width:83.33333333%}.col-xxl-11{flex:0 0 auto;width:91.66666667%}.col-xxl-12{flex:0 0 auto;width:100%}.offset-xxl-0{margin-left:0}.offset-xxl-1{margin-left:8.33333333%}.offset-xxl-2{margin-left:16.66666667%}.offset-xxl-3{margin-left:25%}.offset-xxl-4{margin-left:33.33333333%}.offset-xxl-5{margin-left:41.66666667%}.offset-xxl-6{margin-left:50%}.offset-xxl-7{margin-left:58.33333333%}.offset-xxl-8{margin-left:66.66666667%}.offset-xxl-9{margin-left:75%}.offset-xxl-10{margin-left:83.33333333%}.offset-xxl-11{margin-left:91.66666667%}.g-xxl-0,.gx-xxl-0{--bs-gutter-x: 0}.g-xxl-0,.gy-xxl-0{--bs-gutter-y: 0}.g-xxl-1,.gx-xxl-1{--bs-gutter-x: 0.225rem}.g-xxl-1,.gy-xxl-1{--bs-gutter-y: 0.225rem}.g-xxl-2,.gx-xxl-2{--bs-gutter-x: 0.45rem}.g-xxl-2,.gy-xxl-2{--bs-gutter-y: 0.45rem}.g-xxl-3,.gx-xxl-3{--bs-gutter-x: 0.9rem}.g-xxl-3,.gy-xxl-3{--bs-gutter-y: 0.9rem}.g-xxl-4,.gx-xxl-4{--bs-gutter-x: 1.35rem}.g-xxl-4,.gy-xxl-4{--bs-gutter-y: 1.35rem}.g-xxl-5,.gx-xxl-5{--bs-gutter-x: 1.8rem}.g-xxl-5,.gy-xxl-5{--bs-gutter-y: 1.8rem}.g-xxl-6,.gx-xxl-6{--bs-gutter-x: 2.25rem}.g-xxl-6,.gy-xxl-6{--bs-gutter-y: 2.25rem}.g-xxl-7,.gx-xxl-7{--bs-gutter-x: 2.7rem}.g-xxl-7,.gy-xxl-7{--bs-gutter-y: 2.7rem}.g-xxl-8,.gx-xxl-8{--bs-gutter-x: 3.15rem}.g-xxl-8,.gy-xxl-8{--bs-gutter-y: 3.15rem}.g-xxl-9,.gx-xxl-9{--bs-gutter-x: 3.6rem}.g-xxl-9,.gy-xxl-9{--bs-gutter-y: 3.6rem}.g-xxl-tiny,.gx-xxl-tiny{--bs-gutter-x: 0.135rem}.g-xxl-tiny,.gy-xxl-tiny{--bs-gutter-y: 0.135rem}}@media(min-width: 1900px){.col-xxxl{flex:1 0 0%}.row-cols-xxxl-auto>*{flex:0 0 auto;width:auto}.row-cols-xxxl-1>*{flex:0 0 auto;width:100%}.row-cols-xxxl-2>*{flex:0 0 auto;width:50%}.row-cols-xxxl-3>*{flex:0 0 auto;width:33.3333333333%}.row-cols-xxxl-4>*{flex:0 0 auto;width:25%}.row-cols-xxxl-5>*{flex:0 0 auto;width:20%}.row-cols-xxxl-6>*{flex:0 0 auto;width:16.6666666667%}.col-xxxl-auto{flex:0 0 auto;width:auto}.col-xxxl-1{flex:0 0 auto;width:8.33333333%}.col-xxxl-2{flex:0 0 auto;width:16.66666667%}.col-xxxl-3{flex:0 0 auto;width:25%}.col-xxxl-4{flex:0 0 auto;width:33.33333333%}.col-xxxl-5{flex:0 0 auto;width:41.66666667%}.col-xxxl-6{flex:0 0 auto;width:50%}.col-xxxl-7{flex:0 0 auto;width:58.33333333%}.col-xxxl-8{flex:0 0 auto;width:66.66666667%}.col-xxxl-9{flex:0 0 auto;width:75%}.col-xxxl-10{flex:0 0 auto;width:83.33333333%}.col-xxxl-11{flex:0 0 auto;width:91.66666667%}.col-xxxl-12{flex:0 0 auto;width:100%}.offset-xxxl-0{margin-left:0}.offset-xxxl-1{margin-left:8.33333333%}.offset-xxxl-2{margin-left:16.66666667%}.offset-xxxl-3{margin-left:25%}.offset-xxxl-4{margin-left:33.33333333%}.offset-xxxl-5{margin-left:41.66666667%}.offset-xxxl-6{margin-left:50%}.offset-xxxl-7{margin-left:58.33333333%}.offset-xxxl-8{margin-left:66.66666667%}.offset-xxxl-9{margin-left:75%}.offset-xxxl-10{margin-left:83.33333333%}.offset-xxxl-11{margin-left:91.66666667%}.g-xxxl-0,.gx-xxxl-0{--bs-gutter-x: 0}.g-xxxl-0,.gy-xxxl-0{--bs-gutter-y: 0}.g-xxxl-1,.gx-xxxl-1{--bs-gutter-x: 0.225rem}.g-xxxl-1,.gy-xxxl-1{--bs-gutter-y: 0.225rem}.g-xxxl-2,.gx-xxxl-2{--bs-gutter-x: 0.45rem}.g-xxxl-2,.gy-xxxl-2{--bs-gutter-y: 0.45rem}.g-xxxl-3,.gx-xxxl-3{--bs-gutter-x: 0.9rem}.g-xxxl-3,.gy-xxxl-3{--bs-gutter-y: 0.9rem}.g-xxxl-4,.gx-xxxl-4{--bs-gutter-x: 1.35rem}.g-xxxl-4,.gy-xxxl-4{--bs-gutter-y: 1.35rem}.g-xxxl-5,.gx-xxxl-5{--bs-gutter-x: 1.8rem}.g-xxxl-5,.gy-xxxl-5{--bs-gutter-y: 1.8rem}.g-xxxl-6,.gx-xxxl-6{--bs-gutter-x: 2.25rem}.g-xxxl-6,.gy-xxxl-6{--bs-gutter-y: 2.25rem}.g-xxxl-7,.gx-xxxl-7{--bs-gutter-x: 2.7rem}.g-xxxl-7,.gy-xxxl-7{--bs-gutter-y: 2.7rem}.g-xxxl-8,.gx-xxxl-8{--bs-gutter-x: 3.15rem}.g-xxxl-8,.gy-xxxl-8{--bs-gutter-y: 3.15rem}.g-xxxl-9,.gx-xxxl-9{--bs-gutter-x: 3.6rem}.g-xxxl-9,.gy-xxxl-9{--bs-gutter-y: 3.6rem}.g-xxxl-tiny,.gx-xxxl-tiny{--bs-gutter-x: 0.135rem}.g-xxxl-tiny,.gy-xxxl-tiny{--bs-gutter-y: 0.135rem}}.table{--bs-table-color-type: initial;--bs-table-bg-type: initial;--bs-table-color-state: initial;--bs-table-bg-state: initial;--bs-table-color: var(--bs-body-color);--bs-table-bg: var(--bs-body-bg);--bs-table-border-color: var(--bs-border-color);--bs-table-accent-bg: transparent;--bs-table-striped-color: var(--bs-body-color);--bs-table-striped-bg: rgba(0, 0, 0, 0.15);--bs-table-active-color: var(--bs-body-color);--bs-table-active-bg: rgba(0, 0, 0, 0.1);--bs-table-hover-color: var(--bs-body-color);--bs-table-hover-bg: rgba(0, 0, 0, 0.075);width:100%;margin-bottom:.9rem;vertical-align:top;border-color:var(--bs-table-border-color)}.table>:not(caption)>*>*{padding:.5rem .5rem;color:var(--bs-table-color-state, var(--bs-table-color-type, var(--bs-table-color)));background-color:var(--bs-table-bg);border-bottom-width:var(--bs-border-width);box-shadow:inset 0 0 0 9999px var(--bs-table-bg-state, var(--bs-table-bg-type, var(--bs-table-accent-bg)))}.table>tbody{vertical-align:inherit}.table>thead{vertical-align:bottom}.table-group-divider{border-top:calc(var(--bs-border-width) * 2) solid currentcolor}.caption-top{caption-side:top}.table-sm>:not(caption)>*>*{padding:.25rem .25rem}.table-bordered>:not(caption)>*{border-width:var(--bs-border-width) 0}.table-bordered>:not(caption)>*>*{border-width:0 var(--bs-border-width)}.table-borderless>:not(caption)>*>*{border-bottom-width:0}.table-borderless>:not(:first-child){border-top-width:0}.table-striped>tbody>tr:nth-of-type(odd)>*{--bs-table-color-type: var(--bs-table-striped-color);--bs-table-bg-type: var(--bs-table-striped-bg)}.table-striped-columns>:not(caption)>tr>:nth-child(even){--bs-table-color-type: var(--bs-table-striped-color);--bs-table-bg-type: var(--bs-table-striped-bg)}.table-active{--bs-table-color-state: var(--bs-table-active-color);--bs-table-bg-state: var(--bs-table-active-bg)}.table-hover>tbody>tr:hover>*{--bs-table-color-state: var(--bs-table-hover-color);--bs-table-bg-state: var(--bs-table-hover-bg)}.table-primary{--bs-table-color: #000;--bs-table-bg: #cfe2ff;--bs-table-border-color: #bacbe6;--bs-table-striped-bg: #b0c0d9;--bs-table-striped-color: #000;--bs-table-active-bg: #bacbe6;--bs-table-active-color: #000;--bs-table-hover-bg: #bfd1ec;--bs-table-hover-color: #000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-secondary{--bs-table-color: #000;--bs-table-bg: #e2e3e5;--bs-table-border-color: #cbccce;--bs-table-striped-bg: #c0c1c3;--bs-table-striped-color: #000;--bs-table-active-bg: #cbccce;--bs-table-active-color: #000;--bs-table-hover-bg: #d1d2d4;--bs-table-hover-color: #000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-success{--bs-table-color: #000;--bs-table-bg: #d1e7dd;--bs-table-border-color: #bcd0c7;--bs-table-striped-bg: #b2c4bc;--bs-table-striped-color: #000;--bs-table-active-bg: #bcd0c7;--bs-table-active-color: #000;--bs-table-hover-bg: #c1d6cc;--bs-table-hover-color: #000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-info{--bs-table-color: #000;--bs-table-bg: #cff4fc;--bs-table-border-color: #badce3;--bs-table-striped-bg: #b0cfd6;--bs-table-striped-color: #000;--bs-table-active-bg: #badce3;--bs-table-active-color: #000;--bs-table-hover-bg: #bfe2e9;--bs-table-hover-color: #000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-warning{--bs-table-color: #000;--bs-table-bg: #fff3cd;--bs-table-border-color: #e6dbb9;--bs-table-striped-bg: #d9cfae;--bs-table-striped-color: #000;--bs-table-active-bg: #e6dbb9;--bs-table-active-color: #000;--bs-table-hover-bg: #ece1be;--bs-table-hover-color: #000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-danger{--bs-table-color: #000;--bs-table-bg: #f8d7da;--bs-table-border-color: #dfc2c4;--bs-table-striped-bg: #d3b7b9;--bs-table-striped-color: #000;--bs-table-active-bg: #dfc2c4;--bs-table-active-color: #000;--bs-table-hover-bg: #e5c7ca;--bs-table-hover-color: #000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-light{--bs-table-color: #000;--bs-table-bg: #e9ecef;--bs-table-border-color: #d2d4d7;--bs-table-striped-bg: #c6c9cb;--bs-table-striped-color: #000;--bs-table-active-bg: #d2d4d7;--bs-table-active-color: #000;--bs-table-hover-bg: #d8dadd;--bs-table-hover-color: #000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-dark{--bs-table-color: #fff;--bs-table-bg: #0c1118;--bs-table-border-color: #24292f;--bs-table-striped-bg: #30353b;--bs-table-striped-color: #fff;--bs-table-active-bg: #24292f;--bs-table-active-color: #fff;--bs-table-hover-bg: #1e2329;--bs-table-hover-color: #fff;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-responsive{overflow-x:auto;-webkit-overflow-scrolling:touch}@media(max-width: 575.98px){.table-responsive-sm{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media(max-width: 767.98px){.table-responsive-md{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media(max-width: 991.98px){.table-responsive-lg{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media(max-width: 1199.98px){.table-responsive-xl{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media(max-width: 1399.98px){.table-responsive-xxl{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media(max-width: 1899.98px){.table-responsive-xxxl{overflow-x:auto;-webkit-overflow-scrolling:touch}}.form-label{margin-bottom:.5rem}.col-form-label{padding-top:calc(0.375rem + var(--bs-border-width));padding-bottom:calc(0.375rem + var(--bs-border-width));margin-bottom:0;font-size:inherit;line-height:1.5}.col-form-label-lg{padding-top:calc(0.5rem + var(--bs-border-width));padding-bottom:calc(0.5rem + var(--bs-border-width));font-size:1.25rem}.col-form-label-sm{padding-top:calc(0.25rem + var(--bs-border-width));padding-bottom:calc(0.25rem + var(--bs-border-width));font-size:0.875rem}.form-text{margin-top:.25rem;font-size:0.875em;color:var(--bs-secondary-color)}.form-control{display:block;width:100%;padding:.375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:#f7fafa;background-color:#344866;background-clip:padding-box;border:var(--bs-border-width) solid #233044;appearance:none;border-radius:var(--bs-border-radius);transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media(prefers-reduced-motion: reduce){.form-control{transition:none}}.form-control[type=file]{overflow:hidden}.form-control[type=file]:not(:disabled):not([readonly]){cursor:pointer}.form-control:focus{color:#f7fafa;background-color:#344866;border-color:#86b7fe;outline:0;box-shadow:0 0 0 .25rem rgba(13,110,253,.25)}.form-control::-webkit-date-and-time-value{min-width:85px;height:1.5em;margin:0}.form-control::-webkit-datetime-edit{display:block;padding:0}.form-control::placeholder{color:#b8d3d3;opacity:1}.form-control:disabled{background-color:#111822;opacity:1}.form-control::file-selector-button{padding:.375rem .75rem;margin:-0.375rem -0.75rem;margin-inline-end:.75rem;color:#f7fafa;background-color:var(--bs-tertiary-bg);pointer-events:none;border-color:inherit;border-style:solid;border-width:0;border-inline-end-width:var(--bs-border-width);border-radius:0;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media(prefers-reduced-motion: reduce){.form-control::file-selector-button{transition:none}}.form-control:hover:not(:disabled):not([readonly])::file-selector-button{background-color:var(--bs-secondary-bg)}.form-control-plaintext{display:block;width:100%;padding:.375rem 0;margin-bottom:0;line-height:1.5;color:var(--bs-body-color);background-color:rgba(0,0,0,0);border:solid rgba(0,0,0,0);border-width:var(--bs-border-width) 0}.form-control-plaintext:focus{outline: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 + calc(var(--bs-border-width) * 2));padding:.25rem .5rem;font-size:0.875rem;border-radius:var(--bs-border-radius-sm)}.form-control-sm::file-selector-button{padding:.25rem .5rem;margin:-0.25rem -0.5rem;margin-inline-end:.5rem}.form-control-lg{min-height:calc(1.5em + 1rem + calc(var(--bs-border-width) * 2));padding:.5rem 1rem;font-size:1.25rem;border-radius:var(--bs-border-radius-lg)}.form-control-lg::file-selector-button{padding:.5rem 1rem;margin:-0.5rem -1rem;margin-inline-end:1rem}textarea.form-control{min-height:calc(1.5em + 0.75rem + calc(var(--bs-border-width) * 2))}textarea.form-control-sm{min-height:calc(1.5em + 0.5rem + calc(var(--bs-border-width) * 2))}textarea.form-control-lg{min-height:calc(1.5em + 1rem + calc(var(--bs-border-width) * 2))}.form-control-color{width:3rem;height:calc(1.5em + 0.75rem + calc(var(--bs-border-width) * 2));padding:.375rem}.form-control-color:not(:disabled):not([readonly]){cursor:pointer}.form-control-color::-moz-color-swatch{border:0 !important;border-radius:var(--bs-border-radius)}.form-control-color::-webkit-color-swatch{border:0 !important;border-radius:var(--bs-border-radius)}.form-control-color.form-control-sm{height:calc(1.5em + 0.5rem + calc(var(--bs-border-width) * 2))}.form-control-color.form-control-lg{height:calc(1.5em + 1rem + calc(var(--bs-border-width) * 2))}.form-select{--bs-form-select-bg-img: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e");display:block;width:100%;padding:.375rem 2.25rem .375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:#f7fafa;background-color:#344866;background-image:var(--bs-form-select-bg-img),var(--bs-form-select-bg-icon, none);background-repeat:no-repeat;background-position:right .75rem center;background-size:16px 12px;border:var(--bs-border-width) solid #233044;border-radius:var(--bs-border-radius);transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out;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:#111822}.form-select:-moz-focusring{color:rgba(0,0,0,0);text-shadow:0 0 0 #f7fafa}.form-select-sm{padding-top:.25rem;padding-bottom:.25rem;padding-left:.5rem;font-size:0.875rem;border-radius:var(--bs-border-radius-sm)}.form-select-lg{padding-top:.5rem;padding-bottom:.5rem;padding-left:1rem;font-size:1.25rem;border-radius:var(--bs-border-radius-lg)}[data-bs-theme=dark] .form-select{--bs-form-select-bg-img: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23adb5bd' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e")}.form-check{display:block;min-height:1.5rem;padding-left:1.5em;margin-bottom:.125rem}.form-check .form-check-input{float:left;margin-left:-1.5em}.form-check-reverse{padding-right:1.5em;padding-left:0;text-align:right}.form-check-reverse .form-check-input{float:right;margin-right:-1.5em;margin-left:0}.form-check-input{--bs-form-check-bg: #344866;width:1em;height:1em;margin-top:.25em;vertical-align:top;background-color:var(--bs-form-check-bg);background-image:var(--bs-form-check-bg-image);background-repeat:no-repeat;background-position:center;background-size:contain;border:var(--bs-border-width) solid var(--bs-border-color);appearance:none;print-color-adjust:exact}.form-check-input[type=checkbox]{border-radius:.25em}.form-check-input[type=radio]{border-radius:50%}.form-check-input:active{filter:brightness(90%)}.form-check-input:focus{border-color:#86b7fe;outline:0;box-shadow:0 0 0 .25rem rgba(13,110,253,.25)}.form-check-input:checked{background-color:#0d6efd;border-color:#0d6efd}.form-check-input:checked[type=checkbox]{--bs-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='m6 10 3 3 6-6'/%3e%3c/svg%3e")}.form-check-input:checked[type=radio]{--bs-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='2' fill='%23fff'/%3e%3c/svg%3e")}.form-check-input[type=checkbox]:indeterminate{background-color:#0d6efd;border-color:#0d6efd;--bs-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10h8'/%3e%3c/svg%3e")}.form-check-input:disabled{pointer-events:none;filter:none;opacity:.5}.form-check-input[disabled]~.form-check-label,.form-check-input:disabled~.form-check-label{cursor:default;opacity:.5}.form-switch{padding-left:2.5em}.form-switch .form-check-input{--bs-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba%280, 0, 0, 0.25%29'/%3e%3c/svg%3e");width:2em;margin-left:-2.5em;background-image:var(--bs-form-switch-bg);background-position:left center;border-radius:2em;transition:background-position .15s ease-in-out}@media(prefers-reduced-motion: reduce){.form-switch .form-check-input{transition:none}}.form-switch .form-check-input:focus{--bs-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%2386b7fe'/%3e%3c/svg%3e")}.form-switch .form-check-input:checked{background-position:right center;--bs-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e")}.form-switch.form-check-reverse{padding-right:2.5em;padding-left:0}.form-switch.form-check-reverse .form-check-input{margin-right:-2.5em;margin-left:0}.form-check-inline{display:inline-block;margin-right:1rem}.btn-check{position:absolute;clip:rect(0, 0, 0, 0);pointer-events:none}.btn-check[disabled]+.btn,.btn-check:disabled+.btn{pointer-events:none;filter:none;opacity:.65}[data-bs-theme=dark] .form-switch .form-check-input:not(:checked):not(:focus){--bs-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba%28255, 255, 255, 0.25%29'/%3e%3c/svg%3e")}.form-range{width:100%;height:1.5rem;padding:0;background-color:rgba(0,0,0,0);appearance:none}.form-range:focus{outline:0}.form-range:focus::-webkit-slider-thumb{box-shadow:0 0 0 1px #1a2433,0 0 0 .25rem rgba(13,110,253,.25)}.form-range:focus::-moz-range-thumb{box-shadow:0 0 0 1px #1a2433,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:-0.25rem;background-color:#0d6efd;border:0;border-radius:1rem;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;appearance:none}@media(prefers-reduced-motion: reduce){.form-range::-webkit-slider-thumb{transition:none}}.form-range::-webkit-slider-thumb:active{background-color:#b6d4fe}.form-range::-webkit-slider-runnable-track{width:100%;height:.5rem;color:rgba(0,0,0,0);cursor:pointer;background-color:var(--bs-tertiary-bg);border-color:rgba(0,0,0,0);border-radius:1rem}.form-range::-moz-range-thumb{width:1rem;height:1rem;background-color:#0d6efd;border:0;border-radius:1rem;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;appearance:none}@media(prefers-reduced-motion: reduce){.form-range::-moz-range-thumb{transition:none}}.form-range::-moz-range-thumb:active{background-color:#b6d4fe}.form-range::-moz-range-track{width:100%;height:.5rem;color:rgba(0,0,0,0);cursor:pointer;background-color:var(--bs-tertiary-bg);border-color:rgba(0,0,0,0);border-radius:1rem}.form-range:disabled{pointer-events:none}.form-range:disabled::-webkit-slider-thumb{background-color:var(--bs-secondary-color)}.form-range:disabled::-moz-range-thumb{background-color:var(--bs-secondary-color)}.form-floating{position:relative}.form-floating>.form-control,.form-floating>.form-control-plaintext,.form-floating>.form-select{height:calc(3.5rem + calc(var(--bs-border-width) * 2));min-height:calc(3.5rem + calc(var(--bs-border-width) * 2));line-height:1.25}.form-floating>label{position:absolute;top:0;left:0;z-index:2;height:100%;padding:1rem .75rem;overflow:hidden;text-align:start;text-overflow:ellipsis;white-space:nowrap;pointer-events:none;border:var(--bs-border-width) solid rgba(0,0,0,0);transform-origin:0 0;transition:opacity .1s ease-in-out,transform .1s ease-in-out}@media(prefers-reduced-motion: reduce){.form-floating>label{transition:none}}.form-floating>.form-control,.form-floating>.form-control-plaintext{padding:1rem .75rem}.form-floating>.form-control::placeholder,.form-floating>.form-control-plaintext::placeholder{color:rgba(0,0,0,0)}.form-floating>.form-control:focus,.form-floating>.form-control:not(:placeholder-shown),.form-floating>.form-control-plaintext:focus,.form-floating>.form-control-plaintext:not(:placeholder-shown){padding-top:1.625rem;padding-bottom:.625rem}.form-floating>.form-control:-webkit-autofill,.form-floating>.form-control-plaintext:-webkit-autofill{padding-top:1.625rem;padding-bottom:.625rem}.form-floating>.form-select{padding-top:1.625rem;padding-bottom:.625rem}.form-floating>.form-control:focus~label,.form-floating>.form-control:not(:placeholder-shown)~label,.form-floating>.form-control-plaintext~label,.form-floating>.form-select~label{color:rgba(var(--bs-body-color-rgb), 0.65);transform:scale(0.85) translateY(-0.5rem) translateX(0.15rem)}.form-floating>.form-control:focus~label::after,.form-floating>.form-control:not(:placeholder-shown)~label::after,.form-floating>.form-control-plaintext~label::after,.form-floating>.form-select~label::after{position:absolute;inset:1rem .375rem;z-index:-1;height:1.5em;content:"";background-color:#344866;border-radius:var(--bs-border-radius)}.form-floating>.form-control:-webkit-autofill~label{color:rgba(var(--bs-body-color-rgb), 0.65);transform:scale(0.85) translateY(-0.5rem) translateX(0.15rem)}.form-floating>.form-control-plaintext~label{border-width:var(--bs-border-width) 0}.form-floating>:disabled~label{color:#6c757d}.form-floating>:disabled~label::after{background-color:#111822}.input-group{position:relative;display:flex;flex-wrap:wrap;align-items:stretch;width:100%}.input-group>.form-control,.input-group>.form-select,.input-group>.form-floating{position:relative;flex:1 1 auto;width:1%;min-width:0}.input-group>.form-control:focus,.input-group>.form-select:focus,.input-group>.form-floating:focus-within{z-index:5}.input-group .btn{position:relative;z-index:2}.input-group .btn:focus{z-index:5}.input-group-text{display:flex;align-items:center;padding:.375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:#f7fafa;text-align:center;white-space:nowrap;background-color:#1f2b3d;border:var(--bs-border-width) solid #233044;border-radius:var(--bs-border-radius)}.input-group-lg>.form-control,.input-group-lg>.form-select,.input-group-lg>.input-group-text,.input-group-lg>.btn{padding:.5rem 1rem;font-size:1.25rem;border-radius:var(--bs-border-radius-lg)}.input-group-sm>.form-control,.input-group-sm>.form-select,.input-group-sm>.input-group-text,.input-group-sm>.btn{padding:.25rem .5rem;font-size:0.875rem;border-radius:var(--bs-border-radius-sm)}.input-group-lg>.form-select,.input-group-sm>.form-select{padding-right:3rem}.input-group:not(.has-validation)>:not(:last-child):not(.dropdown-toggle):not(.dropdown-menu):not(.form-floating),.input-group:not(.has-validation)>.dropdown-toggle:nth-last-child(n+3),.input-group:not(.has-validation)>.form-floating:not(:last-child)>.form-control,.input-group:not(.has-validation)>.form-floating:not(:last-child)>.form-select{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):not(.form-floating),.input-group.has-validation>.dropdown-toggle:nth-last-child(n+4),.input-group.has-validation>.form-floating:nth-last-child(n+3)>.form-control,.input-group.has-validation>.form-floating:nth-last-child(n+3)>.form-select{border-top-right-radius:0;border-bottom-right-radius:0}.input-group>:not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback){margin-left:calc(var(--bs-border-width) * -1);border-top-left-radius:0;border-bottom-left-radius:0}.input-group>.form-floating:not(:first-child)>.form-control,.input-group>.form-floating:not(:first-child)>.form-select{border-top-left-radius:0;border-bottom-left-radius:0}.valid-feedback{display:none;width:100%;margin-top:.25rem;font-size:0.875em;color:var(--bs-form-valid-color)}.valid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.9rem .8rem;margin-top:.1rem;font-size:0.875rem;color:#fff;background-color:var(--bs-success);border-radius:var(--bs-border-radius)}.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:var(--bs-form-valid-border-color);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.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right calc(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:var(--bs-form-valid-border-color);box-shadow:0 0 0 .25rem rgba(var(--bs-success-rgb), 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:var(--bs-form-valid-border-color)}.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"]{--bs-form-select-bg-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23198754' d='M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");padding-right:4.125rem;background-position:right .75rem center,center right 2.25rem;background-size:16px 12px,calc(0.75em + 0.375rem) calc(0.75em + 0.375rem)}.was-validated .form-select:valid:focus,.form-select.is-valid:focus{border-color:var(--bs-form-valid-border-color);box-shadow:0 0 0 .25rem rgba(var(--bs-success-rgb), 0.25)}.was-validated .form-control-color:valid,.form-control-color.is-valid{width:calc(3rem + calc(1.5em + 0.75rem))}.was-validated .form-check-input:valid,.form-check-input.is-valid{border-color:var(--bs-form-valid-border-color)}.was-validated .form-check-input:valid:checked,.form-check-input.is-valid:checked{background-color:var(--bs-form-valid-color)}.was-validated .form-check-input:valid:focus,.form-check-input.is-valid:focus{box-shadow:0 0 0 .25rem rgba(var(--bs-success-rgb), 0.25)}.was-validated .form-check-input:valid~.form-check-label,.form-check-input.is-valid~.form-check-label{color:var(--bs-form-valid-color)}.form-check-inline .form-check-input~.valid-feedback{margin-left:.5em}.was-validated .input-group>.form-control:not(:focus):valid,.input-group>.form-control:not(:focus).is-valid,.was-validated .input-group>.form-select:not(:focus):valid,.input-group>.form-select:not(:focus).is-valid,.was-validated .input-group>.form-floating:not(:focus-within):valid,.input-group>.form-floating:not(:focus-within).is-valid{z-index:3}.invalid-feedback{display:none;width:100%;margin-top:.25rem;font-size:0.875em;color:var(--bs-form-invalid-color)}.invalid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.9rem .8rem;margin-top:.1rem;font-size:0.875rem;color:#fff;background-color:var(--bs-danger);border-radius:var(--bs-border-radius)}.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:var(--bs-form-invalid-border-color);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:var(--bs-form-invalid-border-color);box-shadow:0 0 0 .25rem rgba(var(--bs-danger-rgb), 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:var(--bs-form-invalid-border-color)}.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"]{--bs-form-select-bg-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");padding-right:4.125rem;background-position:right .75rem center,center right 2.25rem;background-size:16px 12px,calc(0.75em + 0.375rem) calc(0.75em + 0.375rem)}.was-validated .form-select:invalid:focus,.form-select.is-invalid:focus{border-color:var(--bs-form-invalid-border-color);box-shadow:0 0 0 .25rem rgba(var(--bs-danger-rgb), 0.25)}.was-validated .form-control-color:invalid,.form-control-color.is-invalid{width:calc(3rem + calc(1.5em + 0.75rem))}.was-validated .form-check-input:invalid,.form-check-input.is-invalid{border-color:var(--bs-form-invalid-border-color)}.was-validated .form-check-input:invalid:checked,.form-check-input.is-invalid:checked{background-color:var(--bs-form-invalid-color)}.was-validated .form-check-input:invalid:focus,.form-check-input.is-invalid:focus{box-shadow:0 0 0 .25rem rgba(var(--bs-danger-rgb), 0.25)}.was-validated .form-check-input:invalid~.form-check-label,.form-check-input.is-invalid~.form-check-label{color:var(--bs-form-invalid-color)}.form-check-inline .form-check-input~.invalid-feedback{margin-left:.5em}.was-validated .input-group>.form-control:not(:focus):invalid,.input-group>.form-control:not(:focus).is-invalid,.was-validated .input-group>.form-select:not(:focus):invalid,.input-group>.form-select:not(:focus).is-invalid,.was-validated .input-group>.form-floating:not(:focus-within):invalid,.input-group>.form-floating:not(:focus-within).is-invalid{z-index:4}.btn{--bs-btn-padding-x: 0.75rem;--bs-btn-padding-y: 0.375rem;--bs-btn-font-family: ;--bs-btn-font-size:1rem;--bs-btn-font-weight: 400;--bs-btn-line-height: 1.5;--bs-btn-color: var(--bs-body-color);--bs-btn-bg: transparent;--bs-btn-border-width: var(--bs-border-width);--bs-btn-border-color: transparent;--bs-btn-border-radius: var(--bs-border-radius);--bs-btn-hover-border-color: transparent;--bs-btn-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);--bs-btn-disabled-opacity: 0.65;--bs-btn-focus-box-shadow: 0 0 0 0.25rem rgba(var(--bs-btn-focus-shadow-rgb), .5);display:inline-block;padding:var(--bs-btn-padding-y) var(--bs-btn-padding-x);font-family:var(--bs-btn-font-family);font-size:var(--bs-btn-font-size);font-weight:var(--bs-btn-font-weight);line-height:var(--bs-btn-line-height);color:var(--bs-btn-color);text-align:center;vertical-align:middle;cursor:pointer;user-select:none;border:var(--bs-btn-border-width) solid var(--bs-btn-border-color);border-radius:var(--bs-btn-border-radius);background-color:var(--bs-btn-bg);transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media(prefers-reduced-motion: reduce){.btn{transition:none}}.btn:hover{color:var(--bs-btn-hover-color);text-decoration:none;background-color:var(--bs-btn-hover-bg);border-color:var(--bs-btn-hover-border-color)}.btn-check+.btn:hover{color:var(--bs-btn-color);background-color:var(--bs-btn-bg);border-color:var(--bs-btn-border-color)}.btn:focus-visible{color:var(--bs-btn-hover-color);background-color:var(--bs-btn-hover-bg);border-color:var(--bs-btn-hover-border-color);outline:0;box-shadow:var(--bs-btn-focus-box-shadow)}.btn-check:focus-visible+.btn{border-color:var(--bs-btn-hover-border-color);outline:0;box-shadow:var(--bs-btn-focus-box-shadow)}.btn-check:checked+.btn,:not(.btn-check)+.btn:active,.btn:first-child:active,.btn.active,.btn.show{color:var(--bs-btn-active-color);background-color:var(--bs-btn-active-bg);border-color:var(--bs-btn-active-border-color)}.btn-check:checked+.btn:focus-visible,:not(.btn-check)+.btn:active:focus-visible,.btn:first-child:active:focus-visible,.btn.active:focus-visible,.btn.show:focus-visible{box-shadow:var(--bs-btn-focus-box-shadow)}.btn:disabled,.btn.disabled,fieldset:disabled .btn{color:var(--bs-btn-disabled-color);pointer-events:none;background-color:var(--bs-btn-disabled-bg);border-color:var(--bs-btn-disabled-border-color);opacity:var(--bs-btn-disabled-opacity)}.btn-primary{--bs-btn-color: #fff;--bs-btn-bg: #0d6efd;--bs-btn-border-color: #0d6efd;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #0b5ed7;--bs-btn-hover-border-color: #0a58ca;--bs-btn-focus-shadow-rgb: 49, 132, 253;--bs-btn-active-color: #fff;--bs-btn-active-bg: #0a58ca;--bs-btn-active-border-color: #0a53be;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color: #fff;--bs-btn-disabled-bg: #0d6efd;--bs-btn-disabled-border-color: #0d6efd}.btn-secondary{--bs-btn-color: #fff;--bs-btn-bg: #6c757d;--bs-btn-border-color: #6c757d;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #5c636a;--bs-btn-hover-border-color: #565e64;--bs-btn-focus-shadow-rgb: 130, 138, 145;--bs-btn-active-color: #fff;--bs-btn-active-bg: #565e64;--bs-btn-active-border-color: #51585e;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color: #fff;--bs-btn-disabled-bg: #6c757d;--bs-btn-disabled-border-color: #6c757d}.btn-success{--bs-btn-color: #fff;--bs-btn-bg: #198754;--bs-btn-border-color: #198754;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #157347;--bs-btn-hover-border-color: #146c43;--bs-btn-focus-shadow-rgb: 60, 153, 110;--bs-btn-active-color: #fff;--bs-btn-active-bg: #146c43;--bs-btn-active-border-color: #13653f;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color: #fff;--bs-btn-disabled-bg: #198754;--bs-btn-disabled-border-color: #198754}.btn-info{--bs-btn-color: #000;--bs-btn-bg: #0dcaf0;--bs-btn-border-color: #0dcaf0;--bs-btn-hover-color: #000;--bs-btn-hover-bg: #31d2f2;--bs-btn-hover-border-color: #25cff2;--bs-btn-focus-shadow-rgb: 11, 172, 204;--bs-btn-active-color: #000;--bs-btn-active-bg: #3dd5f3;--bs-btn-active-border-color: #25cff2;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color: #000;--bs-btn-disabled-bg: #0dcaf0;--bs-btn-disabled-border-color: #0dcaf0}.btn-warning{--bs-btn-color: #000;--bs-btn-bg: #ffc107;--bs-btn-border-color: #ffc107;--bs-btn-hover-color: #000;--bs-btn-hover-bg: #ffca2c;--bs-btn-hover-border-color: #ffc720;--bs-btn-focus-shadow-rgb: 217, 164, 6;--bs-btn-active-color: #000;--bs-btn-active-bg: #ffcd39;--bs-btn-active-border-color: #ffc720;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color: #000;--bs-btn-disabled-bg: #ffc107;--bs-btn-disabled-border-color: #ffc107}.btn-danger{--bs-btn-color: #fff;--bs-btn-bg: #dc3545;--bs-btn-border-color: #dc3545;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #bb2d3b;--bs-btn-hover-border-color: #b02a37;--bs-btn-focus-shadow-rgb: 225, 83, 97;--bs-btn-active-color: #fff;--bs-btn-active-bg: #b02a37;--bs-btn-active-border-color: #a52834;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color: #fff;--bs-btn-disabled-bg: #dc3545;--bs-btn-disabled-border-color: #dc3545}.btn-light{--bs-btn-color: #000;--bs-btn-bg: #e9ecef;--bs-btn-border-color: #e9ecef;--bs-btn-hover-color: #000;--bs-btn-hover-bg: #c6c9cb;--bs-btn-hover-border-color: #babdbf;--bs-btn-focus-shadow-rgb: 198, 201, 203;--bs-btn-active-color: #000;--bs-btn-active-bg: #babdbf;--bs-btn-active-border-color: #afb1b3;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color: #000;--bs-btn-disabled-bg: #e9ecef;--bs-btn-disabled-border-color: #e9ecef}.btn-dark{--bs-btn-color: #fff;--bs-btn-bg: #0c1118;--bs-btn-border-color: #0c1118;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #30353b;--bs-btn-hover-border-color: #24292f;--bs-btn-focus-shadow-rgb: 48, 53, 59;--bs-btn-active-color: #fff;--bs-btn-active-bg: #3d4146;--bs-btn-active-border-color: #24292f;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color: #fff;--bs-btn-disabled-bg: #0c1118;--bs-btn-disabled-border-color: #0c1118}.btn-outline-primary{--bs-btn-color: #0d6efd;--bs-btn-border-color: #0d6efd;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #0d6efd;--bs-btn-hover-border-color: #0d6efd;--bs-btn-focus-shadow-rgb: 13, 110, 253;--bs-btn-active-color: #fff;--bs-btn-active-bg: #0d6efd;--bs-btn-active-border-color: #0d6efd;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color: #0d6efd;--bs-btn-disabled-bg: transparent;--bs-btn-disabled-border-color: #0d6efd;--bs-gradient: none}.btn-outline-secondary{--bs-btn-color: #6c757d;--bs-btn-border-color: #6c757d;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #6c757d;--bs-btn-hover-border-color: #6c757d;--bs-btn-focus-shadow-rgb: 108, 117, 125;--bs-btn-active-color: #fff;--bs-btn-active-bg: #6c757d;--bs-btn-active-border-color: #6c757d;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color: #6c757d;--bs-btn-disabled-bg: transparent;--bs-btn-disabled-border-color: #6c757d;--bs-gradient: none}.btn-outline-success{--bs-btn-color: #198754;--bs-btn-border-color: #198754;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #198754;--bs-btn-hover-border-color: #198754;--bs-btn-focus-shadow-rgb: 25, 135, 84;--bs-btn-active-color: #fff;--bs-btn-active-bg: #198754;--bs-btn-active-border-color: #198754;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color: #198754;--bs-btn-disabled-bg: transparent;--bs-btn-disabled-border-color: #198754;--bs-gradient: none}.btn-outline-info{--bs-btn-color: #0dcaf0;--bs-btn-border-color: #0dcaf0;--bs-btn-hover-color: #000;--bs-btn-hover-bg: #0dcaf0;--bs-btn-hover-border-color: #0dcaf0;--bs-btn-focus-shadow-rgb: 13, 202, 240;--bs-btn-active-color: #000;--bs-btn-active-bg: #0dcaf0;--bs-btn-active-border-color: #0dcaf0;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color: #0dcaf0;--bs-btn-disabled-bg: transparent;--bs-btn-disabled-border-color: #0dcaf0;--bs-gradient: none}.btn-outline-warning{--bs-btn-color: #ffc107;--bs-btn-border-color: #ffc107;--bs-btn-hover-color: #000;--bs-btn-hover-bg: #ffc107;--bs-btn-hover-border-color: #ffc107;--bs-btn-focus-shadow-rgb: 255, 193, 7;--bs-btn-active-color: #000;--bs-btn-active-bg: #ffc107;--bs-btn-active-border-color: #ffc107;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color: #ffc107;--bs-btn-disabled-bg: transparent;--bs-btn-disabled-border-color: #ffc107;--bs-gradient: none}.btn-outline-danger{--bs-btn-color: #dc3545;--bs-btn-border-color: #dc3545;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #dc3545;--bs-btn-hover-border-color: #dc3545;--bs-btn-focus-shadow-rgb: 220, 53, 69;--bs-btn-active-color: #fff;--bs-btn-active-bg: #dc3545;--bs-btn-active-border-color: #dc3545;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color: #dc3545;--bs-btn-disabled-bg: transparent;--bs-btn-disabled-border-color: #dc3545;--bs-gradient: none}.btn-outline-light{--bs-btn-color: #e9ecef;--bs-btn-border-color: #e9ecef;--bs-btn-hover-color: #000;--bs-btn-hover-bg: #e9ecef;--bs-btn-hover-border-color: #e9ecef;--bs-btn-focus-shadow-rgb: 233, 236, 239;--bs-btn-active-color: #000;--bs-btn-active-bg: #e9ecef;--bs-btn-active-border-color: #e9ecef;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color: #e9ecef;--bs-btn-disabled-bg: transparent;--bs-btn-disabled-border-color: #e9ecef;--bs-gradient: none}.btn-outline-dark{--bs-btn-color: #0c1118;--bs-btn-border-color: #0c1118;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #0c1118;--bs-btn-hover-border-color: #0c1118;--bs-btn-focus-shadow-rgb: 12, 17, 24;--bs-btn-active-color: #fff;--bs-btn-active-bg: #0c1118;--bs-btn-active-border-color: #0c1118;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color: #0c1118;--bs-btn-disabled-bg: transparent;--bs-btn-disabled-border-color: #0c1118;--bs-gradient: none}.btn-link{--bs-btn-font-weight: 400;--bs-btn-color: var(--bs-link-color);--bs-btn-bg: transparent;--bs-btn-border-color: transparent;--bs-btn-hover-color: var(--bs-link-hover-color);--bs-btn-hover-border-color: transparent;--bs-btn-active-color: var(--bs-link-hover-color);--bs-btn-active-border-color: transparent;--bs-btn-disabled-color: #6c757d;--bs-btn-disabled-border-color: transparent;--bs-btn-box-shadow: 0 0 0 #000;--bs-btn-focus-shadow-rgb: 49, 132, 253;text-decoration:none}.btn-link:hover,.btn-link:focus-visible{text-decoration:underline}.btn-link:focus-visible{color:var(--bs-btn-color)}.btn-link:hover{color:var(--bs-btn-hover-color)}.btn-lg,.btn-group-lg>.btn{--bs-btn-padding-y: 0.5rem;--bs-btn-padding-x: 1rem;--bs-btn-font-size:1.25rem;--bs-btn-border-radius: var(--bs-border-radius-lg)}.btn-sm,.btn-group-sm>.btn{--bs-btn-padding-y: 0.2rem;--bs-btn-padding-x: 0.5rem;--bs-btn-font-size:0.875rem;--bs-btn-border-radius: var(--bs-border-radius-sm)}.fade{transition:opacity .15s linear}@media(prefers-reduced-motion: reduce){.fade{transition:none}}.fade:not(.show){opacity:0}.collapse:not(.show){display:none}.collapsing{height:0;overflow:hidden;transition:height .35s ease}@media(prefers-reduced-motion: reduce){.collapsing{transition:none}}.collapsing.collapse-horizontal{width:0;height:auto;transition:width .35s ease}@media(prefers-reduced-motion: reduce){.collapsing.collapse-horizontal{transition:none}}.dropup,.dropend,.dropdown,.dropstart,.dropup-center,.dropdown-center{position:relative}.dropdown-toggle{white-space:nowrap}.dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid;border-right:.3em solid rgba(0,0,0,0);border-bottom:0;border-left:.3em solid rgba(0,0,0,0)}.dropdown-toggle:empty::after{margin-left:0}.dropdown-menu{--bs-dropdown-zindex: 1000;--bs-dropdown-min-width: 11rem;--bs-dropdown-padding-x: 0;--bs-dropdown-padding-y: 0.5rem;--bs-dropdown-spacer: 0.125rem;--bs-dropdown-font-size:1rem;--bs-dropdown-color: var(--bs-body-color);--bs-dropdown-bg: #2b3c55;--bs-dropdown-border-color: var(--bs-border-color-translucent);--bs-dropdown-border-radius: var(--bs-border-radius);--bs-dropdown-border-width: var(--bs-border-width);--bs-dropdown-inner-border-radius: calc(var(--bs-border-radius) - var(--bs-border-width));--bs-dropdown-divider-bg: var(--bs-border-color-translucent);--bs-dropdown-divider-margin-y: 0.45rem;--bs-dropdown-box-shadow: 0 1.5rem 1rem rgba(0, 0, 0, 0.35);--bs-dropdown-link-color: #f7fafa;--bs-dropdown-link-hover-color: #f7fafa;--bs-dropdown-link-hover-bg: #3c5477;--bs-dropdown-link-active-color: #344866;--bs-dropdown-link-active-bg: #344866;--bs-dropdown-link-disabled-color: var(--bs-tertiary-color);--bs-dropdown-item-padding-x: 0.9rem;--bs-dropdown-item-padding-y: 0.225rem;--bs-dropdown-header-color: #a9c9c9;--bs-dropdown-header-padding-x: 0.9rem;--bs-dropdown-header-padding-y: 0.5rem;position:absolute;z-index:var(--bs-dropdown-zindex);display:none;min-width:var(--bs-dropdown-min-width);padding:var(--bs-dropdown-padding-y) var(--bs-dropdown-padding-x);margin:0;font-size:var(--bs-dropdown-font-size);color:var(--bs-dropdown-color);text-align:left;list-style:none;background-color:var(--bs-dropdown-bg);background-clip:padding-box;border:var(--bs-dropdown-border-width) solid var(--bs-dropdown-border-color);border-radius:var(--bs-dropdown-border-radius)}.dropdown-menu[data-bs-popper]{top:100%;left:0;margin-top:var(--bs-dropdown-spacer)}.dropdown-menu-start{--bs-position: start}.dropdown-menu-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-end{--bs-position: end}.dropdown-menu-end[data-bs-popper]{right:0;left:auto}@media(min-width: 576px){.dropdown-menu-sm-start{--bs-position: start}.dropdown-menu-sm-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-sm-end{--bs-position: end}.dropdown-menu-sm-end[data-bs-popper]{right:0;left:auto}}@media(min-width: 768px){.dropdown-menu-md-start{--bs-position: start}.dropdown-menu-md-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-md-end{--bs-position: end}.dropdown-menu-md-end[data-bs-popper]{right:0;left:auto}}@media(min-width: 992px){.dropdown-menu-lg-start{--bs-position: start}.dropdown-menu-lg-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-lg-end{--bs-position: end}.dropdown-menu-lg-end[data-bs-popper]{right:0;left:auto}}@media(min-width: 1200px){.dropdown-menu-xl-start{--bs-position: start}.dropdown-menu-xl-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-xl-end{--bs-position: end}.dropdown-menu-xl-end[data-bs-popper]{right:0;left:auto}}@media(min-width: 1400px){.dropdown-menu-xxl-start{--bs-position: start}.dropdown-menu-xxl-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-xxl-end{--bs-position: end}.dropdown-menu-xxl-end[data-bs-popper]{right:0;left:auto}}@media(min-width: 1900px){.dropdown-menu-xxxl-start{--bs-position: start}.dropdown-menu-xxxl-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-xxxl-end{--bs-position: end}.dropdown-menu-xxxl-end[data-bs-popper]{right:0;left:auto}}.dropup .dropdown-menu[data-bs-popper]{top:auto;bottom:100%;margin-top:0;margin-bottom:var(--bs-dropdown-spacer)}.dropup .dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:0;border-right:.3em solid rgba(0,0,0,0);border-bottom:.3em solid;border-left:.3em solid rgba(0,0,0,0)}.dropup .dropdown-toggle:empty::after{margin-left:0}.dropend .dropdown-menu[data-bs-popper]{top:0;right:auto;left:100%;margin-top:0;margin-left:var(--bs-dropdown-spacer)}.dropend .dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid rgba(0,0,0,0);border-right:0;border-bottom:.3em solid rgba(0,0,0,0);border-left:.3em solid}.dropend .dropdown-toggle:empty::after{margin-left:0}.dropend .dropdown-toggle::after{vertical-align:0}.dropstart .dropdown-menu[data-bs-popper]{top:0;right:100%;left:auto;margin-top:0;margin-right:var(--bs-dropdown-spacer)}.dropstart .dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:""}.dropstart .dropdown-toggle::after{display:none}.dropstart .dropdown-toggle::before{display:inline-block;margin-right:.255em;vertical-align:.255em;content:"";border-top:.3em solid rgba(0,0,0,0);border-right:.3em solid;border-bottom:.3em solid rgba(0,0,0,0)}.dropstart .dropdown-toggle:empty::after{margin-left:0}.dropstart .dropdown-toggle::before{vertical-align:0}.dropdown-divider{height:0;margin:var(--bs-dropdown-divider-margin-y) 0;overflow:hidden;border-top:1px solid var(--bs-dropdown-divider-bg);opacity:1}.dropdown-item{display:block;width:100%;padding:var(--bs-dropdown-item-padding-y) var(--bs-dropdown-item-padding-x);clear:both;font-weight:400;color:var(--bs-dropdown-link-color);text-align:inherit;white-space:nowrap;background-color:rgba(0,0,0,0);border:0;border-radius:var(--bs-dropdown-item-border-radius, 0)}.dropdown-item:hover,.dropdown-item:focus{color:var(--bs-dropdown-link-hover-color);text-decoration:none;background-color:var(--bs-dropdown-link-hover-bg)}.dropdown-item.active,.dropdown-item:active{color:var(--bs-dropdown-link-active-color);text-decoration:none;background-color:var(--bs-dropdown-link-active-bg)}.dropdown-item.disabled,.dropdown-item:disabled{color:var(--bs-dropdown-link-disabled-color);pointer-events:none;background-color:rgba(0,0,0,0)}.dropdown-menu.show{display:block}.dropdown-header{display:block;padding:var(--bs-dropdown-header-padding-y) var(--bs-dropdown-header-padding-x);margin-bottom:0;font-size:0.875rem;color:var(--bs-dropdown-header-color);white-space:nowrap}.dropdown-item-text{display:block;padding:var(--bs-dropdown-item-padding-y) var(--bs-dropdown-item-padding-x);color:var(--bs-dropdown-link-color)}.dropdown-menu-dark{--bs-dropdown-color: #dee2e6;--bs-dropdown-bg: #ff0;--bs-dropdown-border-color: var(--bs-border-color-translucent);--bs-dropdown-box-shadow: ;--bs-dropdown-link-color: #dee2e6;--bs-dropdown-link-hover-color: #fff;--bs-dropdown-divider-bg: var(--bs-border-color-translucent);--bs-dropdown-link-hover-bg: #0ff;--bs-dropdown-link-active-color: #344866;--bs-dropdown-link-active-bg: #f0f;--bs-dropdown-link-disabled-color: #adb5bd;--bs-dropdown-header-color: #adb5bd}.btn-group,.btn-group-vertical{position:relative;display:inline-flex;vertical-align:middle}.btn-group>.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{border-radius:var(--bs-border-radius)}.btn-group>:not(.btn-check:first-child)+.btn,.btn-group>.btn-group:not(:first-child){margin-left:calc(var(--bs-border-width) * -1)}.btn-group>.btn:not(:last-child):not(.dropdown-toggle),.btn-group>.btn.dropdown-toggle-split:first-child,.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:.5625rem;padding-left:.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:.375rem;padding-left:.375rem}.btn-lg+.dropdown-toggle-split,.btn-group-lg>.btn+.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:not(:first-child),.btn-group-vertical>.btn-group:not(:first-child){margin-top:calc(var(--bs-border-width) * -1)}.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{--bs-nav-link-padding-x: 1rem;--bs-nav-link-padding-y: 0.5rem;--bs-nav-link-font-weight: ;--bs-nav-link-color: var(--bs-link-color);--bs-nav-link-hover-color: var(--bs-link-hover-color);--bs-nav-link-disabled-color: var(--bs-secondary-color);display:flex;flex-wrap:wrap;padding-left:0;margin-bottom:0;list-style:none}.nav-link{display:block;padding:var(--bs-nav-link-padding-y) var(--bs-nav-link-padding-x);font-size:var(--bs-nav-link-font-size);font-weight:var(--bs-nav-link-font-weight);color:var(--bs-nav-link-color);background:none;border:0;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out}@media(prefers-reduced-motion: reduce){.nav-link{transition:none}}.nav-link:hover,.nav-link:focus{color:var(--bs-nav-link-hover-color);text-decoration:none}.nav-link:focus-visible{outline:0;box-shadow:0 0 0 .25rem rgba(13,110,253,.25)}.nav-link.disabled{color:var(--bs-nav-link-disabled-color);pointer-events:none;cursor:default}.nav-tabs{--bs-nav-tabs-border-width: var(--bs-border-width);--bs-nav-tabs-border-color: var(--bs-border-color);--bs-nav-tabs-border-radius: var(--bs-border-radius);--bs-nav-tabs-link-hover-border-color: var(--bs-secondary-bg) var(--bs-secondary-bg) var(--bs-border-color);--bs-nav-tabs-link-active-color: #e7f0f0;--bs-nav-tabs-link-active-bg: var(--bs-body-bg);--bs-nav-tabs-link-active-border-color: #ced4da #ced4da #1a2433 !important;border-bottom:var(--bs-nav-tabs-border-width) solid var(--bs-nav-tabs-border-color)}.nav-tabs .nav-link{margin-bottom:calc(-1*var(--bs-nav-tabs-border-width));border:var(--bs-nav-tabs-border-width) solid rgba(0,0,0,0);border-top-left-radius:var(--bs-nav-tabs-border-radius);border-top-right-radius:var(--bs-nav-tabs-border-radius)}.nav-tabs .nav-link:hover,.nav-tabs .nav-link:focus{isolation:isolate;border-color:var(--bs-nav-tabs-link-hover-border-color)}.nav-tabs .nav-link.disabled,.nav-tabs .nav-link:disabled{color:var(--bs-nav-link-disabled-color);background-color:rgba(0,0,0,0);border-color:rgba(0,0,0,0)}.nav-tabs .nav-link.active,.nav-tabs .nav-item.show .nav-link{color:var(--bs-nav-tabs-link-active-color);background-color:var(--bs-nav-tabs-link-active-bg);border-color:var(--bs-nav-tabs-link-active-border-color)}.nav-tabs .dropdown-menu{margin-top:calc(-1*var(--bs-nav-tabs-border-width));border-top-left-radius:0;border-top-right-radius:0}.nav-pills{--bs-nav-pills-border-radius: var(--bs-border-radius);--bs-nav-pills-link-active-color: #fff;--bs-nav-pills-link-active-bg: #0d6efd}.nav-pills .nav-link{border-radius:var(--bs-nav-pills-border-radius)}.nav-pills .nav-link:disabled{color:var(--bs-nav-link-disabled-color);background-color:rgba(0,0,0,0);border-color:rgba(0,0,0,0)}.nav-pills .nav-link.active,.nav-pills .show>.nav-link{color:var(--bs-nav-pills-link-active-color);background-color:var(--bs-nav-pills-link-active-bg)}.nav-underline{--bs-nav-underline-gap: 1rem;--bs-nav-underline-border-width: 0.125rem;--bs-nav-underline-link-active-color: var(--bs-emphasis-color);gap:var(--bs-nav-underline-gap)}.nav-underline .nav-link{padding-right:0;padding-left:0;border-bottom:var(--bs-nav-underline-border-width) solid rgba(0,0,0,0)}.nav-underline .nav-link:hover,.nav-underline .nav-link:focus{border-bottom-color:currentcolor}.nav-underline .nav-link.active,.nav-underline .show>.nav-link{font-weight:700;color:var(--bs-nav-underline-link-active-color);border-bottom-color:currentcolor}.nav-fill>.nav-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{--bs-navbar-padding-x: 1rem;--bs-navbar-padding-y: 1rem;--bs-navbar-color: rgba(var(--bs-emphasis-color-rgb), 0.65);--bs-navbar-hover-color: rgba(var(--bs-emphasis-color-rgb), 0.8);--bs-navbar-disabled-color: rgba(var(--bs-emphasis-color-rgb), 0.3);--bs-navbar-active-color: rgba(var(--bs-emphasis-color-rgb), 1);--bs-navbar-brand-padding-y: 0.125rem;--bs-navbar-brand-margin-end: 1rem;--bs-navbar-brand-font-size: 1.5rem;--bs-navbar-brand-color: rgba(var(--bs-emphasis-color-rgb), 1);--bs-navbar-brand-hover-color: rgba(var(--bs-emphasis-color-rgb), 1);--bs-navbar-nav-link-padding-x: 0.5rem;--bs-navbar-toggler-padding-y: 0.25rem;--bs-navbar-toggler-padding-x: 0.75rem;--bs-navbar-toggler-font-size: 1.25rem;--bs-navbar-toggler-icon-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28247, 250, 250, 0.75%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");--bs-navbar-toggler-border-color: rgba(var(--bs-emphasis-color-rgb), 0.15);--bs-navbar-toggler-border-radius: var(--bs-border-radius);--bs-navbar-toggler-focus-width: 0.25rem;--bs-navbar-toggler-transition: box-shadow 0.15s ease-in-out;position:relative;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;padding:var(--bs-navbar-padding-y) var(--bs-navbar-padding-x)}.navbar>.container,.navbar>.container-fluid,.navbar>.container-sm,.navbar>.container-md,.navbar>.container-lg,.navbar>.container-xl,.navbar>.container-xxl,.navbar>.container-xxxl{display:flex;flex-wrap:inherit;align-items:center;justify-content:space-between}.navbar-brand{padding-top:var(--bs-navbar-brand-padding-y);padding-bottom:var(--bs-navbar-brand-padding-y);margin-right:var(--bs-navbar-brand-margin-end);font-size:var(--bs-navbar-brand-font-size);color:var(--bs-navbar-brand-color);white-space:nowrap}.navbar-brand:hover,.navbar-brand:focus{color:var(--bs-navbar-brand-hover-color);text-decoration:none}.navbar-nav{--bs-nav-link-padding-x: 0;--bs-nav-link-padding-y: 0.5rem;--bs-nav-link-font-weight: ;--bs-nav-link-color: var(--bs-navbar-color);--bs-nav-link-hover-color: var(--bs-navbar-hover-color);--bs-nav-link-disabled-color: var(--bs-navbar-disabled-color);display:flex;flex-direction:column;padding-left:0;margin-bottom:0;list-style:none}.navbar-nav .nav-link.active,.navbar-nav .nav-link.show{color:var(--bs-navbar-active-color)}.navbar-nav .dropdown-menu{position:static}.navbar-text{padding-top:.5rem;padding-bottom:.5rem;color:var(--bs-navbar-color)}.navbar-text a,.navbar-text a:hover,.navbar-text a:focus{color:var(--bs-navbar-active-color)}.navbar-collapse{flex-basis:100%;flex-grow:1;align-items:center}.navbar-toggler{padding:var(--bs-navbar-toggler-padding-y) var(--bs-navbar-toggler-padding-x);font-size:var(--bs-navbar-toggler-font-size);line-height:1;color:var(--bs-navbar-color);background-color:rgba(0,0,0,0);border:var(--bs-border-width) solid var(--bs-navbar-toggler-border-color);border-radius:var(--bs-navbar-toggler-border-radius);transition:var(--bs-navbar-toggler-transition)}@media(prefers-reduced-motion: reduce){.navbar-toggler{transition:none}}.navbar-toggler:hover{text-decoration:none}.navbar-toggler:focus{text-decoration:none;outline:0;box-shadow:0 0 0 var(--bs-navbar-toggler-focus-width)}.navbar-toggler-icon{display:inline-block;width:1.5em;height:1.5em;vertical-align:middle;background-image:var(--bs-navbar-toggler-icon-bg);background-repeat:no-repeat;background-position:center;background-size:100%}.navbar-nav-scroll{max-height:var(--bs-scroll-height, 75vh);overflow-y:auto}@media(min-width: 576px){.navbar-expand-sm{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand-sm .navbar-nav{flex-direction:row}.navbar-expand-sm .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-sm .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand-sm .navbar-nav-scroll{overflow:visible}.navbar-expand-sm .navbar-collapse{display:flex !important;flex-basis:auto}.navbar-expand-sm .navbar-toggler{display:none}.navbar-expand-sm .offcanvas{position:static;z-index:auto;flex-grow:1;width:auto !important;height:auto !important;visibility:visible !important;background-color:rgba(0,0,0,0) !important;border:0 !important;transform:none !important;transition:none}.navbar-expand-sm .offcanvas .offcanvas-header{display:none}.navbar-expand-sm .offcanvas .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible}}@media(min-width: 768px){.navbar-expand-md{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand-md .navbar-nav{flex-direction:row}.navbar-expand-md .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-md .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand-md .navbar-nav-scroll{overflow:visible}.navbar-expand-md .navbar-collapse{display:flex !important;flex-basis:auto}.navbar-expand-md .navbar-toggler{display:none}.navbar-expand-md .offcanvas{position:static;z-index:auto;flex-grow:1;width:auto !important;height:auto !important;visibility:visible !important;background-color:rgba(0,0,0,0) !important;border:0 !important;transform:none !important;transition:none}.navbar-expand-md .offcanvas .offcanvas-header{display:none}.navbar-expand-md .offcanvas .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible}}@media(min-width: 992px){.navbar-expand-lg{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand-lg .navbar-nav{flex-direction:row}.navbar-expand-lg .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-lg .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand-lg .navbar-nav-scroll{overflow:visible}.navbar-expand-lg .navbar-collapse{display:flex !important;flex-basis:auto}.navbar-expand-lg .navbar-toggler{display:none}.navbar-expand-lg .offcanvas{position:static;z-index:auto;flex-grow:1;width:auto !important;height:auto !important;visibility:visible !important;background-color:rgba(0,0,0,0) !important;border:0 !important;transform:none !important;transition:none}.navbar-expand-lg .offcanvas .offcanvas-header{display:none}.navbar-expand-lg .offcanvas .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible}}@media(min-width: 1200px){.navbar-expand-xl{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand-xl .navbar-nav{flex-direction:row}.navbar-expand-xl .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-xl .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand-xl .navbar-nav-scroll{overflow:visible}.navbar-expand-xl .navbar-collapse{display:flex !important;flex-basis:auto}.navbar-expand-xl .navbar-toggler{display:none}.navbar-expand-xl .offcanvas{position:static;z-index:auto;flex-grow:1;width:auto !important;height:auto !important;visibility:visible !important;background-color:rgba(0,0,0,0) !important;border:0 !important;transform:none !important;transition:none}.navbar-expand-xl .offcanvas .offcanvas-header{display:none}.navbar-expand-xl .offcanvas .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible}}@media(min-width: 1400px){.navbar-expand-xxl{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand-xxl .navbar-nav{flex-direction:row}.navbar-expand-xxl .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-xxl .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand-xxl .navbar-nav-scroll{overflow:visible}.navbar-expand-xxl .navbar-collapse{display:flex !important;flex-basis:auto}.navbar-expand-xxl .navbar-toggler{display:none}.navbar-expand-xxl .offcanvas{position:static;z-index:auto;flex-grow:1;width:auto !important;height:auto !important;visibility:visible !important;background-color:rgba(0,0,0,0) !important;border:0 !important;transform:none !important;transition:none}.navbar-expand-xxl .offcanvas .offcanvas-header{display:none}.navbar-expand-xxl .offcanvas .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible}}@media(min-width: 1900px){.navbar-expand-xxxl{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand-xxxl .navbar-nav{flex-direction:row}.navbar-expand-xxxl .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-xxxl .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand-xxxl .navbar-nav-scroll{overflow:visible}.navbar-expand-xxxl .navbar-collapse{display:flex !important;flex-basis:auto}.navbar-expand-xxxl .navbar-toggler{display:none}.navbar-expand-xxxl .offcanvas{position:static;z-index:auto;flex-grow:1;width:auto !important;height:auto !important;visibility:visible !important;background-color:rgba(0,0,0,0) !important;border:0 !important;transform:none !important;transition:none}.navbar-expand-xxxl .offcanvas .offcanvas-header{display:none}.navbar-expand-xxxl .offcanvas .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible}}.navbar-expand{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand .navbar-nav{flex-direction:row}.navbar-expand .navbar-nav .dropdown-menu{position:absolute}.navbar-expand .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand .navbar-nav-scroll{overflow:visible}.navbar-expand .navbar-collapse{display:flex !important;flex-basis:auto}.navbar-expand .navbar-toggler{display:none}.navbar-expand .offcanvas{position:static;z-index:auto;flex-grow:1;width:auto !important;height:auto !important;visibility:visible !important;background-color:rgba(0,0,0,0) !important;border:0 !important;transform:none !important;transition:none}.navbar-expand .offcanvas .offcanvas-header{display:none}.navbar-expand .offcanvas .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible}.navbar-dark,.navbar[data-bs-theme=dark]{--bs-navbar-color: rgba(255, 255, 255, 0.55);--bs-navbar-hover-color: rgba(255, 255, 255, 0.75);--bs-navbar-disabled-color: rgba(255, 255, 255, 0.25);--bs-navbar-active-color: #fff;--bs-navbar-brand-color: #fff;--bs-navbar-brand-hover-color: #fff;--bs-navbar-toggler-border-color: rgba(255, 255, 255, 0.1);--bs-navbar-toggler-icon-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}[data-bs-theme=dark] .navbar-toggler-icon{--bs-navbar-toggler-icon-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}.card{--bs-card-spacer-y: 0.9rem;--bs-card-spacer-x: 0.9rem;--bs-card-title-spacer-y: 0.45rem;--bs-card-title-color: ;--bs-card-subtitle-color: ;--bs-card-border-width: var(--bs-border-width);--bs-card-border-color: #212e41;--bs-card-border-radius: var(--bs-border-radius);--bs-card-box-shadow: ;--bs-card-inner-border-radius: calc(var(--bs-border-radius) - (var(--bs-border-width)));--bs-card-cap-padding-y: 0.45rem;--bs-card-cap-padding-x: 0.9rem;--bs-card-cap-bg: rgba(var(--bs-body-color-rgb), 0.03);--bs-card-cap-color: ;--bs-card-height: ;--bs-card-color: ;--bs-card-bg: #1a2433;--bs-card-img-overlay-padding: 0.9rem;--bs-card-group-margin: 0.75rem;position:relative;display:flex;flex-direction:column;min-width:0;height:var(--bs-card-height);color:var(--bs-body-color);word-wrap:break-word;background-color:var(--bs-card-bg);background-clip:border-box;border:var(--bs-card-border-width) solid var(--bs-card-border-color);border-radius:var(--bs-card-border-radius)}.card>hr{margin-right:0;margin-left:0}.card>.list-group{border-top:inherit;border-bottom:inherit}.card>.list-group:first-child{border-top-width:0;border-top-left-radius:var(--bs-card-inner-border-radius);border-top-right-radius:var(--bs-card-inner-border-radius)}.card>.list-group:last-child{border-bottom-width:0;border-bottom-right-radius:var(--bs-card-inner-border-radius);border-bottom-left-radius:var(--bs-card-inner-border-radius)}.card>.card-header+.list-group,.card>.list-group+.card-footer{border-top:0}.card-body{flex:1 1 auto;padding:var(--bs-card-spacer-y) var(--bs-card-spacer-x);color:var(--bs-card-color)}.card-title{margin-bottom:var(--bs-card-title-spacer-y);color:var(--bs-card-title-color)}.card-subtitle{margin-top:calc(-0.5*var(--bs-card-title-spacer-y));margin-bottom:0;color:var(--bs-card-subtitle-color)}.card-text:last-child{margin-bottom:0}.card-link:hover{text-decoration:none}.card-link+.card-link{margin-left:var(--bs-card-spacer-x)}.card-header{padding:var(--bs-card-cap-padding-y) var(--bs-card-cap-padding-x);margin-bottom:0;color:var(--bs-card-cap-color);background-color:var(--bs-card-cap-bg);border-bottom:var(--bs-card-border-width) solid var(--bs-card-border-color)}.card-header:first-child{border-radius:var(--bs-card-inner-border-radius) var(--bs-card-inner-border-radius) 0 0}.card-footer{padding:var(--bs-card-cap-padding-y) var(--bs-card-cap-padding-x);color:var(--bs-card-cap-color);background-color:var(--bs-card-cap-bg);border-top:var(--bs-card-border-width) solid var(--bs-card-border-color)}.card-footer:last-child{border-radius:0 0 var(--bs-card-inner-border-radius) var(--bs-card-inner-border-radius)}.card-header-tabs{margin-right:calc(-0.5*var(--bs-card-cap-padding-x));margin-bottom:calc(-1*var(--bs-card-cap-padding-y));margin-left:calc(-0.5*var(--bs-card-cap-padding-x));border-bottom:0}.card-header-tabs .nav-link.active{background-color:var(--bs-card-bg);border-bottom-color:var(--bs-card-bg)}.card-header-pills{margin-right:calc(-0.5*var(--bs-card-cap-padding-x));margin-left:calc(-0.5*var(--bs-card-cap-padding-x))}.card-img-overlay{position:absolute;top:0;right:0;bottom:0;left:0;padding:var(--bs-card-img-overlay-padding);border-radius:var(--bs-card-inner-border-radius)}.card-img,.card-img-top,.card-img-bottom{width:100%}.card-img,.card-img-top{border-top-left-radius:var(--bs-card-inner-border-radius);border-top-right-radius:var(--bs-card-inner-border-radius)}.card-img,.card-img-bottom{border-bottom-right-radius:var(--bs-card-inner-border-radius);border-bottom-left-radius:var(--bs-card-inner-border-radius)}.card-group>.card{margin-bottom:var(--bs-card-group-margin)}@media(min-width: 576px){.card-group{display:flex;flex-flow:row wrap}.card-group>.card{flex:1 0 0%;margin-bottom:0}.card-group>.card+.card{margin-left:0;border-left:0}.card-group>.card:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.card-group>.card:not(:last-child) .card-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{--bs-accordion-color: var(--bs-body-color);--bs-accordion-bg: var(--bs-body-bg);--bs-accordion-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, border-radius 0.15s ease;--bs-accordion-border-color: var(--bs-border-color);--bs-accordion-border-width: var(--bs-border-width);--bs-accordion-border-radius: var(--bs-border-radius);--bs-accordion-inner-border-radius: calc(var(--bs-border-radius) - (var(--bs-border-width)));--bs-accordion-btn-padding-x: 1.25rem;--bs-accordion-btn-padding-y: 1rem;--bs-accordion-btn-color: var(--bs-body-color);--bs-accordion-btn-bg: var(--bs-accordion-bg);--bs-accordion-btn-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23f7fafa'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");--bs-accordion-btn-icon-width: 1.25rem;--bs-accordion-btn-icon-transform: rotate(-180deg);--bs-accordion-btn-icon-transition: transform 0.2s ease-in-out;--bs-accordion-btn-active-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23052c65'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");--bs-accordion-btn-focus-border-color: #86b7fe;--bs-accordion-btn-focus-box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);--bs-accordion-body-padding-x: 1.25rem;--bs-accordion-body-padding-y: 1rem;--bs-accordion-active-color: var(--bs-primary-text-emphasis);--bs-accordion-active-bg: var(--bs-primary-bg-subtle)}.accordion-button{position:relative;display:flex;align-items:center;width:100%;padding:var(--bs-accordion-btn-padding-y) var(--bs-accordion-btn-padding-x);font-size:1rem;color:var(--bs-accordion-btn-color);text-align:left;background-color:var(--bs-accordion-btn-bg);border:0;border-radius:0;overflow-anchor:none;transition:var(--bs-accordion-transition)}@media(prefers-reduced-motion: reduce){.accordion-button{transition:none}}.accordion-button:not(.collapsed){color:var(--bs-accordion-active-color);background-color:var(--bs-accordion-active-bg);box-shadow:inset 0 calc(-1*var(--bs-accordion-border-width)) 0 var(--bs-accordion-border-color)}.accordion-button:not(.collapsed)::after{background-image:var(--bs-accordion-btn-active-icon);transform:var(--bs-accordion-btn-icon-transform)}.accordion-button::after{flex-shrink:0;width:var(--bs-accordion-btn-icon-width);height:var(--bs-accordion-btn-icon-width);margin-left:auto;content:"";background-image:var(--bs-accordion-btn-icon);background-repeat:no-repeat;background-size:var(--bs-accordion-btn-icon-width);transition:var(--bs-accordion-btn-icon-transition)}@media(prefers-reduced-motion: reduce){.accordion-button::after{transition:none}}.accordion-button:hover{z-index:2}.accordion-button:focus{z-index:3;border-color:var(--bs-accordion-btn-focus-border-color);outline:0;box-shadow:var(--bs-accordion-btn-focus-box-shadow)}.accordion-header{margin-bottom:0}.accordion-item{color:var(--bs-accordion-color);background-color:var(--bs-accordion-bg);border:var(--bs-accordion-border-width) solid var(--bs-accordion-border-color)}.accordion-item:first-of-type{border-top-left-radius:var(--bs-accordion-border-radius);border-top-right-radius:var(--bs-accordion-border-radius)}.accordion-item:first-of-type .accordion-button{border-top-left-radius:var(--bs-accordion-inner-border-radius);border-top-right-radius:var(--bs-accordion-inner-border-radius)}.accordion-item:not(:first-of-type){border-top:0}.accordion-item:last-of-type{border-bottom-right-radius:var(--bs-accordion-border-radius);border-bottom-left-radius:var(--bs-accordion-border-radius)}.accordion-item:last-of-type .accordion-button.collapsed{border-bottom-right-radius:var(--bs-accordion-inner-border-radius);border-bottom-left-radius:var(--bs-accordion-inner-border-radius)}.accordion-item:last-of-type .accordion-collapse{border-bottom-right-radius:var(--bs-accordion-border-radius);border-bottom-left-radius:var(--bs-accordion-border-radius)}.accordion-body{padding:var(--bs-accordion-body-padding-y) var(--bs-accordion-body-padding-x)}.accordion-flush .accordion-collapse{border-width:0}.accordion-flush .accordion-item{border-right:0;border-left:0;border-radius:0}.accordion-flush .accordion-item:first-child{border-top:0}.accordion-flush .accordion-item:last-child{border-bottom:0}.accordion-flush .accordion-item .accordion-button,.accordion-flush .accordion-item .accordion-button.collapsed{border-radius:0}[data-bs-theme=dark] .accordion-button::after{--bs-accordion-btn-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%236ea8fe'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");--bs-accordion-btn-active-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%236ea8fe'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e")}.breadcrumb{--bs-breadcrumb-padding-x: 0;--bs-breadcrumb-padding-y: 0;--bs-breadcrumb-margin-bottom: 1rem;--bs-breadcrumb-bg: ;--bs-breadcrumb-border-radius: ;--bs-breadcrumb-divider-color: var(--bs-secondary-color);--bs-breadcrumb-item-padding-x: 0.5rem;--bs-breadcrumb-item-active-color: var(--bs-secondary-color);display:flex;flex-wrap:wrap;padding:var(--bs-breadcrumb-padding-y) var(--bs-breadcrumb-padding-x);margin-bottom:var(--bs-breadcrumb-margin-bottom);font-size:var(--bs-breadcrumb-font-size);list-style:none;background-color:var(--bs-breadcrumb-bg);border-radius:var(--bs-breadcrumb-border-radius)}.breadcrumb-item+.breadcrumb-item{padding-left:var(--bs-breadcrumb-item-padding-x)}.breadcrumb-item+.breadcrumb-item::before{float:left;padding-right:var(--bs-breadcrumb-item-padding-x);color:var(--bs-breadcrumb-divider-color);content:var(--bs-breadcrumb-divider, "/") /* rtl: var(--bs-breadcrumb-divider, "/") */}.breadcrumb-item.active{color:var(--bs-breadcrumb-item-active-color)}.pagination{--bs-pagination-padding-x: 0.75rem;--bs-pagination-padding-y: 0.375rem;--bs-pagination-font-size:1rem;--bs-pagination-color: var(--bs-link-color);--bs-pagination-bg: #1a2433;--bs-pagination-border-width: var(--bs-border-width);--bs-pagination-border-color: #293951;--bs-pagination-border-radius: var(--bs-border-radius);--bs-pagination-hover-color: var(--bs-link-hover-color);--bs-pagination-hover-bg: #344866;--bs-pagination-hover-border-color: #293951;--bs-pagination-focus-color: var(--bs-link-hover-color);--bs-pagination-focus-bg: var(--bs-secondary-bg);--bs-pagination-focus-box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);--bs-pagination-active-color: #fff;--bs-pagination-active-bg: #1a2433;--bs-pagination-active-border-color: #293951;--bs-pagination-disabled-color: var(--bs-secondary-color);--bs-pagination-disabled-bg: #151d29;--bs-pagination-disabled-border-color: #293951;display:flex;padding-left:0;list-style:none}.page-link{position:relative;display:block;padding:var(--bs-pagination-padding-y) var(--bs-pagination-padding-x);font-size:var(--bs-pagination-font-size);color:var(--bs-pagination-color);background-color:var(--bs-pagination-bg);border:var(--bs-pagination-border-width) solid var(--bs-pagination-border-color);transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media(prefers-reduced-motion: reduce){.page-link{transition:none}}.page-link:hover{z-index:2;color:var(--bs-pagination-hover-color);text-decoration:none;background-color:var(--bs-pagination-hover-bg);border-color:var(--bs-pagination-hover-border-color)}.page-link:focus{z-index:3;color:var(--bs-pagination-focus-color);background-color:var(--bs-pagination-focus-bg);outline:0;box-shadow:var(--bs-pagination-focus-box-shadow)}.page-link.active,.active>.page-link{z-index:3;color:var(--bs-pagination-active-color);background-color:var(--bs-pagination-active-bg);border-color:var(--bs-pagination-active-border-color)}.page-link.disabled,.disabled>.page-link{color:var(--bs-pagination-disabled-color);pointer-events:none;background-color:var(--bs-pagination-disabled-bg);border-color:var(--bs-pagination-disabled-border-color)}.page-item:not(:first-child) .page-link{margin-left:calc(var(--bs-border-width) * -1)}.page-item:first-child .page-link{border-top-left-radius:var(--bs-pagination-border-radius);border-bottom-left-radius:var(--bs-pagination-border-radius)}.page-item:last-child .page-link{border-top-right-radius:var(--bs-pagination-border-radius);border-bottom-right-radius:var(--bs-pagination-border-radius)}.pagination-lg{--bs-pagination-padding-x: 1.5rem;--bs-pagination-padding-y: 0.75rem;--bs-pagination-font-size:1.25rem;--bs-pagination-border-radius: var(--bs-border-radius-lg)}.pagination-sm{--bs-pagination-padding-x: 0.5rem;--bs-pagination-padding-y: 0.25rem;--bs-pagination-font-size:0.875rem;--bs-pagination-border-radius: var(--bs-border-radius-sm)}.badge{--bs-badge-padding-x: 0.65em;--bs-badge-padding-y: 0.35em;--bs-badge-font-size:0.75em;--bs-badge-font-weight: 400;--bs-badge-color: #fff;--bs-badge-border-radius: 0.2rem;display:inline-block;padding:var(--bs-badge-padding-y) var(--bs-badge-padding-x);font-size:var(--bs-badge-font-size);font-weight:var(--bs-badge-font-weight);line-height:1;color:var(--bs-badge-color);text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:var(--bs-badge-border-radius)}.badge:empty{display:none}.btn .badge{position:relative;top:-1px}.alert{--bs-alert-bg: transparent;--bs-alert-padding-x: 0.9rem;--bs-alert-padding-y: 0.9rem;--bs-alert-margin-bottom: 1rem;--bs-alert-color: inherit;--bs-alert-border-color: transparent;--bs-alert-border: var(--bs-border-width) solid var(--bs-alert-border-color);--bs-alert-border-radius: var(--bs-border-radius);--bs-alert-link-color: inherit;position:relative;padding:var(--bs-alert-padding-y) var(--bs-alert-padding-x);margin-bottom:var(--bs-alert-margin-bottom);color:var(--bs-alert-color);background-color:var(--bs-alert-bg);border:var(--bs-alert-border);border-radius:var(--bs-alert-border-radius)}.alert-heading{color:inherit}.alert-link{font-weight:700;color:var(--bs-alert-link-color)}.alert-dismissible{padding-right:2.25rem}.alert-dismissible .btn-close{position:absolute;top:0;right:0;z-index:2;padding:1.125rem .9rem}.alert-primary{--bs-alert-color: var(--bs-primary-text-emphasis);--bs-alert-bg: var(--bs-primary-bg-subtle);--bs-alert-border-color: var(--bs-primary-border-subtle);--bs-alert-link-color: var(--bs-primary-text-emphasis)}.alert-secondary{--bs-alert-color: var(--bs-secondary-text-emphasis);--bs-alert-bg: var(--bs-secondary-bg-subtle);--bs-alert-border-color: var(--bs-secondary-border-subtle);--bs-alert-link-color: var(--bs-secondary-text-emphasis)}.alert-success{--bs-alert-color: var(--bs-success-text-emphasis);--bs-alert-bg: var(--bs-success-bg-subtle);--bs-alert-border-color: var(--bs-success-border-subtle);--bs-alert-link-color: var(--bs-success-text-emphasis)}.alert-info{--bs-alert-color: var(--bs-info-text-emphasis);--bs-alert-bg: var(--bs-info-bg-subtle);--bs-alert-border-color: var(--bs-info-border-subtle);--bs-alert-link-color: var(--bs-info-text-emphasis)}.alert-warning{--bs-alert-color: var(--bs-warning-text-emphasis);--bs-alert-bg: var(--bs-warning-bg-subtle);--bs-alert-border-color: var(--bs-warning-border-subtle);--bs-alert-link-color: var(--bs-warning-text-emphasis)}.alert-danger{--bs-alert-color: var(--bs-danger-text-emphasis);--bs-alert-bg: var(--bs-danger-bg-subtle);--bs-alert-border-color: var(--bs-danger-border-subtle);--bs-alert-link-color: var(--bs-danger-text-emphasis)}.alert-light{--bs-alert-color: var(--bs-light-text-emphasis);--bs-alert-bg: var(--bs-light-bg-subtle);--bs-alert-border-color: var(--bs-light-border-subtle);--bs-alert-link-color: var(--bs-light-text-emphasis)}.alert-dark{--bs-alert-color: var(--bs-dark-text-emphasis);--bs-alert-bg: var(--bs-dark-bg-subtle);--bs-alert-border-color: var(--bs-dark-border-subtle);--bs-alert-link-color: var(--bs-dark-text-emphasis)}@keyframes progress-bar-stripes{0%{background-position-x:1rem}}.progress,.progress-stacked{--bs-progress-height: 1rem;--bs-progress-font-size:0.75rem;--bs-progress-bg: var(--bs-secondary-bg);--bs-progress-border-radius: var(--bs-border-radius);--bs-progress-box-shadow: var(--bs-box-shadow-inset);--bs-progress-bar-color: #fff;--bs-progress-bar-bg: #0d6efd;--bs-progress-bar-transition: width 0.6s ease;display:flex;height:var(--bs-progress-height);overflow:hidden;font-size:var(--bs-progress-font-size);background-color:var(--bs-progress-bg);border-radius:var(--bs-progress-border-radius)}.progress-bar{display:flex;flex-direction:column;justify-content:center;overflow:hidden;color:var(--bs-progress-bar-color);text-align:center;white-space:nowrap;background-color:var(--bs-progress-bar-bg);transition:var(--bs-progress-bar-transition)}@media(prefers-reduced-motion: reduce){.progress-bar{transition:none}}.progress-bar-striped{background-image:linear-gradient(45deg, rgba(255, 255, 255, 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:var(--bs-progress-height) var(--bs-progress-height)}.progress-stacked>.progress{overflow:visible}.progress-stacked>.progress>.progress-bar{width:100%}.progress-bar-animated{animation:1s linear infinite progress-bar-stripes}@media(prefers-reduced-motion: reduce){.progress-bar-animated{animation:none}}.list-group{--bs-list-group-color: var(--bs-body-color);--bs-list-group-bg: var(--bs-body-bg);--bs-list-group-border-color: var(--bs-border-color);--bs-list-group-border-width: var(--bs-border-width);--bs-list-group-border-radius: var(--bs-border-radius);--bs-list-group-item-padding-x: 0.9rem;--bs-list-group-item-padding-y: 0.45rem;--bs-list-group-action-color: var(--bs-secondary-color);--bs-list-group-action-hover-color: var(--bs-emphasis-color);--bs-list-group-action-hover-bg: var(--bs-tertiary-bg);--bs-list-group-action-active-color: var(--bs-body-color);--bs-list-group-action-active-bg: var(--bs-secondary-bg);--bs-list-group-disabled-color: var(--bs-secondary-color);--bs-list-group-disabled-bg: var(--bs-body-bg);--bs-list-group-active-color: #fff;--bs-list-group-active-bg: #0d6efd;--bs-list-group-active-border-color: #0d6efd;display:flex;flex-direction:column;padding-left:0;margin-bottom:0;border-radius:var(--bs-list-group-border-radius)}.list-group-numbered{list-style-type:none;counter-reset:section}.list-group-numbered>.list-group-item::before{content:counters(section, ".") ". ";counter-increment:section}.list-group-item-action{width:100%;color:var(--bs-list-group-action-color);text-align:inherit}.list-group-item-action:hover,.list-group-item-action:focus{z-index:1;color:var(--bs-list-group-action-hover-color);text-decoration:none;background-color:var(--bs-list-group-action-hover-bg)}.list-group-item-action:active{color:var(--bs-list-group-action-active-color);background-color:var(--bs-list-group-action-active-bg)}.list-group-item{position:relative;display:block;padding:var(--bs-list-group-item-padding-y) var(--bs-list-group-item-padding-x);color:var(--bs-list-group-color);background-color:var(--bs-list-group-bg);border:var(--bs-list-group-border-width) solid var(--bs-list-group-border-color)}.list-group-item:first-child{border-top-left-radius:inherit;border-top-right-radius:inherit}.list-group-item:last-child{border-bottom-right-radius:inherit;border-bottom-left-radius:inherit}.list-group-item.disabled,.list-group-item:disabled{color:var(--bs-list-group-disabled-color);pointer-events:none;background-color:var(--bs-list-group-disabled-bg)}.list-group-item.active{z-index:2;color:var(--bs-list-group-active-color);background-color:var(--bs-list-group-active-bg);border-color:var(--bs-list-group-active-border-color)}.list-group-item+.list-group-item{border-top-width:0}.list-group-item+.list-group-item.active{margin-top:calc(-1*var(--bs-list-group-border-width));border-top-width:var(--bs-list-group-border-width)}.list-group-horizontal{flex-direction:row}.list-group-horizontal>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal>.list-group-item.active{margin-top:0}.list-group-horizontal>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal>.list-group-item+.list-group-item.active{margin-left:calc(-1*var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}@media(min-width: 576px){.list-group-horizontal-sm{flex-direction:row}.list-group-horizontal-sm>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal-sm>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal-sm>.list-group-item.active{margin-top:0}.list-group-horizontal-sm>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal-sm>.list-group-item+.list-group-item.active{margin-left:calc(-1*var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}}@media(min-width: 768px){.list-group-horizontal-md{flex-direction:row}.list-group-horizontal-md>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal-md>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal-md>.list-group-item.active{margin-top:0}.list-group-horizontal-md>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal-md>.list-group-item+.list-group-item.active{margin-left:calc(-1*var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}}@media(min-width: 992px){.list-group-horizontal-lg{flex-direction:row}.list-group-horizontal-lg>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal-lg>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal-lg>.list-group-item.active{margin-top:0}.list-group-horizontal-lg>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal-lg>.list-group-item+.list-group-item.active{margin-left:calc(-1*var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}}@media(min-width: 1200px){.list-group-horizontal-xl{flex-direction:row}.list-group-horizontal-xl>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal-xl>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal-xl>.list-group-item.active{margin-top:0}.list-group-horizontal-xl>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal-xl>.list-group-item+.list-group-item.active{margin-left:calc(-1*var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}}@media(min-width: 1400px){.list-group-horizontal-xxl{flex-direction:row}.list-group-horizontal-xxl>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal-xxl>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal-xxl>.list-group-item.active{margin-top:0}.list-group-horizontal-xxl>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal-xxl>.list-group-item+.list-group-item.active{margin-left:calc(-1*var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}}@media(min-width: 1900px){.list-group-horizontal-xxxl{flex-direction:row}.list-group-horizontal-xxxl>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal-xxxl>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal-xxxl>.list-group-item.active{margin-top:0}.list-group-horizontal-xxxl>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal-xxxl>.list-group-item+.list-group-item.active{margin-left:calc(-1*var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}}.list-group-flush{border-radius:0}.list-group-flush>.list-group-item{border-width:0 0 var(--bs-list-group-border-width)}.list-group-flush>.list-group-item:last-child{border-bottom-width:0}.list-group-item-primary{--bs-list-group-color: var(--bs-primary-text-emphasis);--bs-list-group-bg: var(--bs-primary-bg-subtle);--bs-list-group-border-color: var(--bs-primary-border-subtle);--bs-list-group-action-hover-color: var(--bs-emphasis-color);--bs-list-group-action-hover-bg: var(--bs-primary-border-subtle);--bs-list-group-action-active-color: var(--bs-emphasis-color);--bs-list-group-action-active-bg: var(--bs-primary-border-subtle);--bs-list-group-active-color: var(--bs-primary-bg-subtle);--bs-list-group-active-bg: var(--bs-primary-text-emphasis);--bs-list-group-active-border-color: var(--bs-primary-text-emphasis)}.list-group-item-secondary{--bs-list-group-color: var(--bs-secondary-text-emphasis);--bs-list-group-bg: var(--bs-secondary-bg-subtle);--bs-list-group-border-color: var(--bs-secondary-border-subtle);--bs-list-group-action-hover-color: var(--bs-emphasis-color);--bs-list-group-action-hover-bg: var(--bs-secondary-border-subtle);--bs-list-group-action-active-color: var(--bs-emphasis-color);--bs-list-group-action-active-bg: var(--bs-secondary-border-subtle);--bs-list-group-active-color: var(--bs-secondary-bg-subtle);--bs-list-group-active-bg: var(--bs-secondary-text-emphasis);--bs-list-group-active-border-color: var(--bs-secondary-text-emphasis)}.list-group-item-success{--bs-list-group-color: var(--bs-success-text-emphasis);--bs-list-group-bg: var(--bs-success-bg-subtle);--bs-list-group-border-color: var(--bs-success-border-subtle);--bs-list-group-action-hover-color: var(--bs-emphasis-color);--bs-list-group-action-hover-bg: var(--bs-success-border-subtle);--bs-list-group-action-active-color: var(--bs-emphasis-color);--bs-list-group-action-active-bg: var(--bs-success-border-subtle);--bs-list-group-active-color: var(--bs-success-bg-subtle);--bs-list-group-active-bg: var(--bs-success-text-emphasis);--bs-list-group-active-border-color: var(--bs-success-text-emphasis)}.list-group-item-info{--bs-list-group-color: var(--bs-info-text-emphasis);--bs-list-group-bg: var(--bs-info-bg-subtle);--bs-list-group-border-color: var(--bs-info-border-subtle);--bs-list-group-action-hover-color: var(--bs-emphasis-color);--bs-list-group-action-hover-bg: var(--bs-info-border-subtle);--bs-list-group-action-active-color: var(--bs-emphasis-color);--bs-list-group-action-active-bg: var(--bs-info-border-subtle);--bs-list-group-active-color: var(--bs-info-bg-subtle);--bs-list-group-active-bg: var(--bs-info-text-emphasis);--bs-list-group-active-border-color: var(--bs-info-text-emphasis)}.list-group-item-warning{--bs-list-group-color: var(--bs-warning-text-emphasis);--bs-list-group-bg: var(--bs-warning-bg-subtle);--bs-list-group-border-color: var(--bs-warning-border-subtle);--bs-list-group-action-hover-color: var(--bs-emphasis-color);--bs-list-group-action-hover-bg: var(--bs-warning-border-subtle);--bs-list-group-action-active-color: var(--bs-emphasis-color);--bs-list-group-action-active-bg: var(--bs-warning-border-subtle);--bs-list-group-active-color: var(--bs-warning-bg-subtle);--bs-list-group-active-bg: var(--bs-warning-text-emphasis);--bs-list-group-active-border-color: var(--bs-warning-text-emphasis)}.list-group-item-danger{--bs-list-group-color: var(--bs-danger-text-emphasis);--bs-list-group-bg: var(--bs-danger-bg-subtle);--bs-list-group-border-color: var(--bs-danger-border-subtle);--bs-list-group-action-hover-color: var(--bs-emphasis-color);--bs-list-group-action-hover-bg: var(--bs-danger-border-subtle);--bs-list-group-action-active-color: var(--bs-emphasis-color);--bs-list-group-action-active-bg: var(--bs-danger-border-subtle);--bs-list-group-active-color: var(--bs-danger-bg-subtle);--bs-list-group-active-bg: var(--bs-danger-text-emphasis);--bs-list-group-active-border-color: var(--bs-danger-text-emphasis)}.list-group-item-light{--bs-list-group-color: var(--bs-light-text-emphasis);--bs-list-group-bg: var(--bs-light-bg-subtle);--bs-list-group-border-color: var(--bs-light-border-subtle);--bs-list-group-action-hover-color: var(--bs-emphasis-color);--bs-list-group-action-hover-bg: var(--bs-light-border-subtle);--bs-list-group-action-active-color: var(--bs-emphasis-color);--bs-list-group-action-active-bg: var(--bs-light-border-subtle);--bs-list-group-active-color: var(--bs-light-bg-subtle);--bs-list-group-active-bg: var(--bs-light-text-emphasis);--bs-list-group-active-border-color: var(--bs-light-text-emphasis)}.list-group-item-dark{--bs-list-group-color: var(--bs-dark-text-emphasis);--bs-list-group-bg: var(--bs-dark-bg-subtle);--bs-list-group-border-color: var(--bs-dark-border-subtle);--bs-list-group-action-hover-color: var(--bs-emphasis-color);--bs-list-group-action-hover-bg: var(--bs-dark-border-subtle);--bs-list-group-action-active-color: var(--bs-emphasis-color);--bs-list-group-action-active-bg: var(--bs-dark-border-subtle);--bs-list-group-active-color: var(--bs-dark-bg-subtle);--bs-list-group-active-bg: var(--bs-dark-text-emphasis);--bs-list-group-active-border-color: var(--bs-dark-text-emphasis)}.btn-close{--bs-btn-close-color: #fff;--bs-btn-close-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M.293.293a1 1 0 0 1 1.414 0L8 6.586 14.293.293a1 1 0 1 1 1.414 1.414L9.414 8l6.293 6.293a1 1 0 0 1-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 0 1-1.414-1.414L6.586 8 .293 1.707a1 1 0 0 1 0-1.414z'/%3e%3c/svg%3e");--bs-btn-close-opacity: 0.5;--bs-btn-close-hover-opacity: 0.75;--bs-btn-close-focus-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);--bs-btn-close-focus-opacity: 1;--bs-btn-close-disabled-opacity: 0.25;--bs-btn-close-white-filter: invert(1) grayscale(100%) brightness(200%);box-sizing:content-box;width:.75rem;height:.75rem;padding:.25em .25em;color:var(--bs-btn-close-color);background:rgba(0,0,0,0) var(--bs-btn-close-bg) center/0.75rem auto no-repeat;border:0;border-radius:.4rem;opacity:var(--bs-btn-close-opacity)}.btn-close:hover{color:var(--bs-btn-close-color);text-decoration:none;opacity:var(--bs-btn-close-hover-opacity)}.btn-close:focus{outline:0;box-shadow:var(--bs-btn-close-focus-shadow);opacity:var(--bs-btn-close-focus-opacity)}.btn-close:disabled,.btn-close.disabled{pointer-events:none;user-select:none;opacity:var(--bs-btn-close-disabled-opacity)}.btn-close-white{filter:var(--bs-btn-close-white-filter)}[data-bs-theme=dark] .btn-close{filter:var(--bs-btn-close-white-filter)}.toast{--bs-toast-zindex: 1090;--bs-toast-padding-x: 0.75rem;--bs-toast-padding-y: 0.5rem;--bs-toast-spacing: 1.5rem;--bs-toast-max-width: 550px;--bs-toast-font-size:0.875rem;--bs-toast-color: #f7fafa;--bs-toast-bg: #344866;--bs-toast-border-width: var(--bs-border-width);--bs-toast-border-color: rgba(255, 255, 255, 0.1);--bs-toast-border-radius: var(--bs-border-radius);--bs-toast-box-shadow: var(--bs-box-shadow);--bs-toast-header-color: #f7fafa;--bs-toast-header-bg: #26354b;--bs-toast-header-border-color: rgba(0, 0, 0, 0.05);width:var(--bs-toast-max-width);max-width:100%;font-size:var(--bs-toast-font-size);color:var(--bs-toast-color);pointer-events:auto;background-color:var(--bs-toast-bg);background-clip:padding-box;border:var(--bs-toast-border-width) solid var(--bs-toast-border-color);box-shadow:var(--bs-toast-box-shadow);border-radius:var(--bs-toast-border-radius)}.toast.showing{opacity:0}.toast:not(.show){display:none}.toast-container{--bs-toast-zindex: 1090;position:absolute;z-index:var(--bs-toast-zindex);width:max-content;max-width:100%;pointer-events:none}.toast-container>:not(:last-child){margin-bottom:var(--bs-toast-spacing)}.toast-header{display:flex;align-items:center;padding:var(--bs-toast-padding-y) var(--bs-toast-padding-x);color:var(--bs-toast-header-color);background-color:var(--bs-toast-header-bg);background-clip:padding-box;border-bottom:var(--bs-toast-border-width) solid var(--bs-toast-header-border-color);border-top-left-radius:calc(var(--bs-toast-border-radius) - var(--bs-toast-border-width));border-top-right-radius:calc(var(--bs-toast-border-radius) - var(--bs-toast-border-width))}.toast-header .btn-close{margin-right:calc(-0.5*var(--bs-toast-padding-x));margin-left:var(--bs-toast-padding-x)}.toast-body{padding:var(--bs-toast-padding-x);word-wrap:break-word}.modal{--bs-modal-zindex: 1055;--bs-modal-width: 500px;--bs-modal-padding: 0.9rem;--bs-modal-margin: 0.5rem;--bs-modal-color: #f7fafa;--bs-modal-bg: #1a2433;--bs-modal-border-color: var(--bs-border-color-translucent);--bs-modal-border-width: var(--bs-border-width);--bs-modal-border-radius: var(--bs-border-radius-lg);--bs-modal-box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);--bs-modal-inner-border-radius: calc(var(--bs-border-radius-lg) - (var(--bs-border-width)));--bs-modal-header-padding-x: 0.9rem;--bs-modal-header-padding-y: 0.9rem;--bs-modal-header-padding: 0.9rem 0.9rem;--bs-modal-header-border-color: var(--bs-border-color);--bs-modal-header-border-width: var(--bs-border-width);--bs-modal-title-line-height: 1.5;--bs-modal-footer-gap: 0.5rem;--bs-modal-footer-bg: ;--bs-modal-footer-border-color: var(--bs-border-color);--bs-modal-footer-border-width: var(--bs-border-width);position:fixed;top:0;left:0;z-index:var(--bs-modal-zindex);display:none;width:100%;height:100%;overflow-x:hidden;overflow-y:auto;outline:0}.modal-dialog{position:relative;width:auto;margin:var(--bs-modal-margin);pointer-events:none}.modal.fade .modal-dialog{transition:transform .3s ease-out;transform:translate(0, -50px)}@media(prefers-reduced-motion: reduce){.modal.fade .modal-dialog{transition:none}}.modal.show .modal-dialog{transform:none}.modal.modal-static .modal-dialog{transform:scale(1.02)}.modal-dialog-scrollable{height:calc(100% - var(--bs-modal-margin)*2)}.modal-dialog-scrollable .modal-content{max-height:100%;overflow:hidden}.modal-dialog-scrollable .modal-body{overflow-y:auto}.modal-dialog-centered{display:flex;align-items:center;min-height:calc(100% - var(--bs-modal-margin)*2)}.modal-content{position:relative;display:flex;flex-direction:column;width:100%;color:var(--bs-modal-color);pointer-events:auto;background-color:var(--bs-modal-bg);background-clip:padding-box;border:var(--bs-modal-border-width) solid var(--bs-modal-border-color);border-radius:var(--bs-modal-border-radius);outline:0}.modal-backdrop{--bs-backdrop-zindex: 1050;--bs-backdrop-bg: #000;--bs-backdrop-opacity: 0.5;position:fixed;top:0;left:0;z-index:var(--bs-backdrop-zindex);width:100vw;height:100vh;background-color:var(--bs-backdrop-bg)}.modal-backdrop.fade{opacity:0}.modal-backdrop.show{opacity:var(--bs-backdrop-opacity)}.modal-header{display:flex;flex-shrink:0;align-items:center;justify-content:space-between;padding:var(--bs-modal-header-padding);border-bottom:var(--bs-modal-header-border-width) solid var(--bs-modal-header-border-color);border-top-left-radius:var(--bs-modal-inner-border-radius);border-top-right-radius:var(--bs-modal-inner-border-radius)}.modal-header .btn-close{padding:calc(var(--bs-modal-header-padding-y)*.5) calc(var(--bs-modal-header-padding-x)*.5);margin:calc(-0.5*var(--bs-modal-header-padding-y)) calc(-0.5*var(--bs-modal-header-padding-x)) calc(-0.5*var(--bs-modal-header-padding-y)) auto}.modal-title{margin-bottom:0;line-height:var(--bs-modal-title-line-height)}.modal-body{position:relative;flex:1 1 auto;padding:var(--bs-modal-padding)}.modal-footer{display:flex;flex-shrink:0;flex-wrap:wrap;align-items:center;justify-content:flex-end;padding:calc(var(--bs-modal-padding) - var(--bs-modal-footer-gap)*.5);background-color:var(--bs-modal-footer-bg);border-top:var(--bs-modal-footer-border-width) solid var(--bs-modal-footer-border-color);border-bottom-right-radius:var(--bs-modal-inner-border-radius);border-bottom-left-radius:var(--bs-modal-inner-border-radius)}.modal-footer>*{margin:calc(var(--bs-modal-footer-gap)*.5)}@media(min-width: 576px){.modal{--bs-modal-margin: 1.75rem;--bs-modal-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15)}.modal-dialog{max-width:var(--bs-modal-width);margin-right:auto;margin-left:auto}.modal-sm{--bs-modal-width: 300px}}@media(min-width: 992px){.modal-lg,.modal-xl{--bs-modal-width: 800px}}@media(min-width: 1200px){.modal-xl{--bs-modal-width: 1140px}}.modal-fullscreen{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen .modal-header,.modal-fullscreen .modal-footer{border-radius:0}.modal-fullscreen .modal-body{overflow-y:auto}@media(max-width: 575.98px){.modal-fullscreen-sm-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-sm-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-sm-down .modal-header,.modal-fullscreen-sm-down .modal-footer{border-radius:0}.modal-fullscreen-sm-down .modal-body{overflow-y:auto}}@media(max-width: 767.98px){.modal-fullscreen-md-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-md-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-md-down .modal-header,.modal-fullscreen-md-down .modal-footer{border-radius:0}.modal-fullscreen-md-down .modal-body{overflow-y:auto}}@media(max-width: 991.98px){.modal-fullscreen-lg-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-lg-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-lg-down .modal-header,.modal-fullscreen-lg-down .modal-footer{border-radius:0}.modal-fullscreen-lg-down .modal-body{overflow-y:auto}}@media(max-width: 1199.98px){.modal-fullscreen-xl-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-xl-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-xl-down .modal-header,.modal-fullscreen-xl-down .modal-footer{border-radius:0}.modal-fullscreen-xl-down .modal-body{overflow-y:auto}}@media(max-width: 1399.98px){.modal-fullscreen-xxl-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-xxl-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-xxl-down .modal-header,.modal-fullscreen-xxl-down .modal-footer{border-radius:0}.modal-fullscreen-xxl-down .modal-body{overflow-y:auto}}@media(max-width: 1899.98px){.modal-fullscreen-xxxl-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-xxxl-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-xxxl-down .modal-header,.modal-fullscreen-xxxl-down .modal-footer{border-radius:0}.modal-fullscreen-xxxl-down .modal-body{overflow-y:auto}}.tooltip{--bs-tooltip-zindex: 1080;--bs-tooltip-max-width: 350px;--bs-tooltip-padding-x: 0.8rem;--bs-tooltip-padding-y: 0.9rem;--bs-tooltip-margin: ;--bs-tooltip-font-size:0.875rem;--bs-tooltip-color: #f7fafa;--bs-tooltip-bg: #344866;--bs-tooltip-border-radius: var(--bs-border-radius);--bs-tooltip-opacity: 1;--bs-tooltip-arrow-width: 0.8rem;--bs-tooltip-arrow-height: 0.4rem;z-index:var(--bs-tooltip-zindex);display:block;margin:var(--bs-tooltip-margin);font-family:var(--bs-font-sans-serif);font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;white-space:normal;word-spacing:normal;line-break:auto;font-size:var(--bs-tooltip-font-size);word-wrap:break-word;opacity:0}.tooltip.show{opacity:var(--bs-tooltip-opacity)}.tooltip .tooltip-arrow{display:block;width:var(--bs-tooltip-arrow-width);height:var(--bs-tooltip-arrow-height)}.tooltip .tooltip-arrow::before{position:absolute;content:"";border-color:rgba(0,0,0,0);border-style:solid}.bs-tooltip-top .tooltip-arrow,.bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow{bottom:calc(-1*var(--bs-tooltip-arrow-height))}.bs-tooltip-top .tooltip-arrow::before,.bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow::before{top:-1px;border-width:var(--bs-tooltip-arrow-height) calc(var(--bs-tooltip-arrow-width)*.5) 0;border-top-color:var(--bs-tooltip-bg)}.bs-tooltip-end .tooltip-arrow,.bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow{left:calc(-1*var(--bs-tooltip-arrow-height));width:var(--bs-tooltip-arrow-height);height:var(--bs-tooltip-arrow-width)}.bs-tooltip-end .tooltip-arrow::before,.bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow::before{right:-1px;border-width:calc(var(--bs-tooltip-arrow-width)*.5) var(--bs-tooltip-arrow-height) calc(var(--bs-tooltip-arrow-width)*.5) 0;border-right-color:var(--bs-tooltip-bg)}.bs-tooltip-bottom .tooltip-arrow,.bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow{top:calc(-1*var(--bs-tooltip-arrow-height))}.bs-tooltip-bottom .tooltip-arrow::before,.bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow::before{bottom:-1px;border-width:0 calc(var(--bs-tooltip-arrow-width)*.5) var(--bs-tooltip-arrow-height);border-bottom-color:var(--bs-tooltip-bg)}.bs-tooltip-start .tooltip-arrow,.bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow{right:calc(-1*var(--bs-tooltip-arrow-height));width:var(--bs-tooltip-arrow-height);height:var(--bs-tooltip-arrow-width)}.bs-tooltip-start .tooltip-arrow::before,.bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow::before{left:-1px;border-width:calc(var(--bs-tooltip-arrow-width)*.5) 0 calc(var(--bs-tooltip-arrow-width)*.5) var(--bs-tooltip-arrow-height);border-left-color:var(--bs-tooltip-bg)}.tooltip-inner{max-width:var(--bs-tooltip-max-width);padding:var(--bs-tooltip-padding-y) var(--bs-tooltip-padding-x);color:var(--bs-tooltip-color);text-align:center;background-color:var(--bs-tooltip-bg);border-radius:var(--bs-tooltip-border-radius)}.popover{--bs-popover-zindex: 1070;--bs-popover-max-width: 276px;--bs-popover-font-size:0.875rem;--bs-popover-bg: var(--bs-body-bg);--bs-popover-border-width: var(--bs-border-width);--bs-popover-border-color: var(--bs-border-color-translucent);--bs-popover-border-radius: var(--bs-border-radius-lg);--bs-popover-inner-border-radius: calc(var(--bs-border-radius-lg) - var(--bs-border-width));--bs-popover-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);--bs-popover-header-padding-x: 0.9rem;--bs-popover-header-padding-y: 0.5rem;--bs-popover-header-font-size:1rem;--bs-popover-header-color: inherit;--bs-popover-header-bg: var(--bs-secondary-bg);--bs-popover-body-padding-x: 0.9rem;--bs-popover-body-padding-y: 0.9rem;--bs-popover-body-color: var(--bs-body-color);--bs-popover-arrow-width: 1rem;--bs-popover-arrow-height: 0.5rem;--bs-popover-arrow-border: var(--bs-popover-border-color);z-index:var(--bs-popover-zindex);display:block;max-width:var(--bs-popover-max-width);font-family:var(--bs-font-sans-serif);font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;white-space:normal;word-spacing:normal;line-break:auto;font-size:var(--bs-popover-font-size);word-wrap:break-word;background-color:var(--bs-popover-bg);background-clip:padding-box;border:var(--bs-popover-border-width) solid var(--bs-popover-border-color);border-radius:var(--bs-popover-border-radius)}.popover .popover-arrow{display:block;width:var(--bs-popover-arrow-width);height:var(--bs-popover-arrow-height)}.popover .popover-arrow::before,.popover .popover-arrow::after{position:absolute;display:block;content:"";border-color:rgba(0,0,0,0);border-style:solid;border-width:0}.bs-popover-top>.popover-arrow,.bs-popover-auto[data-popper-placement^=top]>.popover-arrow{bottom:calc(-1*(var(--bs-popover-arrow-height)) - var(--bs-popover-border-width))}.bs-popover-top>.popover-arrow::before,.bs-popover-auto[data-popper-placement^=top]>.popover-arrow::before,.bs-popover-top>.popover-arrow::after,.bs-popover-auto[data-popper-placement^=top]>.popover-arrow::after{border-width:var(--bs-popover-arrow-height) calc(var(--bs-popover-arrow-width)*.5) 0}.bs-popover-top>.popover-arrow::before,.bs-popover-auto[data-popper-placement^=top]>.popover-arrow::before{bottom:0;border-top-color:var(--bs-popover-arrow-border)}.bs-popover-top>.popover-arrow::after,.bs-popover-auto[data-popper-placement^=top]>.popover-arrow::after{bottom:var(--bs-popover-border-width);border-top-color:var(--bs-popover-bg)}.bs-popover-end>.popover-arrow,.bs-popover-auto[data-popper-placement^=right]>.popover-arrow{left:calc(-1*(var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));width:var(--bs-popover-arrow-height);height:var(--bs-popover-arrow-width)}.bs-popover-end>.popover-arrow::before,.bs-popover-auto[data-popper-placement^=right]>.popover-arrow::before,.bs-popover-end>.popover-arrow::after,.bs-popover-auto[data-popper-placement^=right]>.popover-arrow::after{border-width:calc(var(--bs-popover-arrow-width)*.5) var(--bs-popover-arrow-height) calc(var(--bs-popover-arrow-width)*.5) 0}.bs-popover-end>.popover-arrow::before,.bs-popover-auto[data-popper-placement^=right]>.popover-arrow::before{left:0;border-right-color:var(--bs-popover-arrow-border)}.bs-popover-end>.popover-arrow::after,.bs-popover-auto[data-popper-placement^=right]>.popover-arrow::after{left:var(--bs-popover-border-width);border-right-color:var(--bs-popover-bg)}.bs-popover-bottom>.popover-arrow,.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow{top:calc(-1*(var(--bs-popover-arrow-height)) - var(--bs-popover-border-width))}.bs-popover-bottom>.popover-arrow::before,.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow::before,.bs-popover-bottom>.popover-arrow::after,.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow::after{border-width:0 calc(var(--bs-popover-arrow-width)*.5) var(--bs-popover-arrow-height)}.bs-popover-bottom>.popover-arrow::before,.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow::before{top:0;border-bottom-color:var(--bs-popover-arrow-border)}.bs-popover-bottom>.popover-arrow::after,.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow::after{top:var(--bs-popover-border-width);border-bottom-color:var(--bs-popover-bg)}.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:var(--bs-popover-arrow-width);margin-left:calc(-0.5*var(--bs-popover-arrow-width));content:"";border-bottom:var(--bs-popover-border-width) solid var(--bs-popover-header-bg)}.bs-popover-start>.popover-arrow,.bs-popover-auto[data-popper-placement^=left]>.popover-arrow{right:calc(-1*(var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));width:var(--bs-popover-arrow-height);height:var(--bs-popover-arrow-width)}.bs-popover-start>.popover-arrow::before,.bs-popover-auto[data-popper-placement^=left]>.popover-arrow::before,.bs-popover-start>.popover-arrow::after,.bs-popover-auto[data-popper-placement^=left]>.popover-arrow::after{border-width:calc(var(--bs-popover-arrow-width)*.5) 0 calc(var(--bs-popover-arrow-width)*.5) var(--bs-popover-arrow-height)}.bs-popover-start>.popover-arrow::before,.bs-popover-auto[data-popper-placement^=left]>.popover-arrow::before{right:0;border-left-color:var(--bs-popover-arrow-border)}.bs-popover-start>.popover-arrow::after,.bs-popover-auto[data-popper-placement^=left]>.popover-arrow::after{right:var(--bs-popover-border-width);border-left-color:var(--bs-popover-bg)}.popover-header{padding:var(--bs-popover-header-padding-y) var(--bs-popover-header-padding-x);margin-bottom:0;font-size:var(--bs-popover-header-font-size);color:var(--bs-popover-header-color);background-color:var(--bs-popover-header-bg);border-bottom:var(--bs-popover-border-width) solid var(--bs-popover-border-color);border-top-left-radius:var(--bs-popover-inner-border-radius);border-top-right-radius:var(--bs-popover-inner-border-radius)}.popover-header:empty{display:none}.popover-body{padding:var(--bs-popover-body-padding-y) var(--bs-popover-body-padding-x);color:var(--bs-popover-body-color)}.carousel{position:relative}.carousel.pointer-event{touch-action:pan-y}.carousel-inner{position:relative;width:100%;overflow:hidden}.carousel-inner::after{display:block;clear:both;content:""}.carousel-item{position:relative;display:none;float:left;width:100%;margin-right:-100%;backface-visibility:hidden;transition:transform .6s ease-in-out}@media(prefers-reduced-motion: reduce){.carousel-item{transition:none}}.carousel-item.active,.carousel-item-next,.carousel-item-prev{display:block}.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%)}.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 .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:.5;transition:opacity .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:.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%}.carousel-control-prev-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0z'/%3e%3c/svg%3e")}.carousel-control-next-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e")}.carousel-indicators{position:absolute;right:0;bottom:0;left:0;z-index:2;display:flex;justify-content:center;padding:0;margin-right:15%;margin-bottom:1rem;margin-left:15%}.carousel-indicators [data-bs-target]{box-sizing:content-box;flex:0 1 auto;width:30px;height:3px;padding:0;margin-right:3px;margin-left:3px;text-indent:-999px;cursor:pointer;background-color:#fff;background-clip:padding-box;border:0;border-top:10px solid rgba(0,0,0,0);border-bottom:10px solid rgba(0,0,0,0);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-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}[data-bs-theme=dark] .carousel .carousel-control-prev-icon,[data-bs-theme=dark] .carousel .carousel-control-next-icon,[data-bs-theme=dark].carousel .carousel-control-prev-icon,[data-bs-theme=dark].carousel .carousel-control-next-icon{filter:invert(1) grayscale(100)}[data-bs-theme=dark] .carousel .carousel-indicators [data-bs-target],[data-bs-theme=dark].carousel .carousel-indicators [data-bs-target]{background-color:#000}[data-bs-theme=dark] .carousel .carousel-caption,[data-bs-theme=dark].carousel .carousel-caption{color:#000}.spinner-grow,.spinner-border{display:inline-block;width:var(--bs-spinner-width);height:var(--bs-spinner-height);vertical-align:var(--bs-spinner-vertical-align);border-radius:50%;animation:var(--bs-spinner-animation-speed) linear infinite var(--bs-spinner-animation-name)}@keyframes spinner-border{to{transform:rotate(360deg) /* rtl:ignore */}}.spinner-border{--bs-spinner-width: 2rem;--bs-spinner-height: 2rem;--bs-spinner-vertical-align: -0.125em;--bs-spinner-border-width: 0.25em;--bs-spinner-animation-speed: 0.75s;--bs-spinner-animation-name: spinner-border;border:var(--bs-spinner-border-width) solid currentcolor;border-right-color:rgba(0,0,0,0)}.spinner-border-sm{--bs-spinner-width: 1rem;--bs-spinner-height: 1rem;--bs-spinner-border-width: 0.2em}@keyframes spinner-grow{0%{transform:scale(0)}50%{opacity:1;transform:none}}.spinner-grow{--bs-spinner-width: 2rem;--bs-spinner-height: 2rem;--bs-spinner-vertical-align: -0.125em;--bs-spinner-animation-speed: 0.75s;--bs-spinner-animation-name: spinner-grow;background-color:currentcolor;opacity:0}.spinner-grow-sm{--bs-spinner-width: 1rem;--bs-spinner-height: 1rem}@media(prefers-reduced-motion: reduce){.spinner-border,.spinner-grow{--bs-spinner-animation-speed: 1.5s}}.offcanvas,.offcanvas-xxxl,.offcanvas-xxl,.offcanvas-xl,.offcanvas-lg,.offcanvas-md,.offcanvas-sm{--bs-offcanvas-zindex: 1045;--bs-offcanvas-width: 400px;--bs-offcanvas-height: 30vh;--bs-offcanvas-padding-x: 0.9rem;--bs-offcanvas-padding-y: 0.9rem;--bs-offcanvas-color: var(--bs-body-color);--bs-offcanvas-bg: var(--bs-body-bg);--bs-offcanvas-border-width: var(--bs-border-width);--bs-offcanvas-border-color: var(--bs-border-color-translucent);--bs-offcanvas-box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);--bs-offcanvas-transition: transform 0.3s ease-in-out;--bs-offcanvas-title-line-height: 1.5}@media(max-width: 575.98px){.offcanvas-sm{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:var(--bs-offcanvas-transition)}}@media(max-width: 575.98px)and (prefers-reduced-motion: reduce){.offcanvas-sm{transition:none}}@media(max-width: 575.98px){.offcanvas-sm.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(-100%)}.offcanvas-sm.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(100%)}.offcanvas-sm.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}.offcanvas-sm.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}.offcanvas-sm.showing,.offcanvas-sm.show:not(.hiding){transform:none}.offcanvas-sm.showing,.offcanvas-sm.hiding,.offcanvas-sm.show{visibility:visible}}@media(min-width: 576px){.offcanvas-sm{--bs-offcanvas-height: auto;--bs-offcanvas-border-width: 0;background-color:rgba(0,0,0,0) !important}.offcanvas-sm .offcanvas-header{display:none}.offcanvas-sm .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible;background-color:rgba(0,0,0,0) !important}}@media(max-width: 767.98px){.offcanvas-md{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:var(--bs-offcanvas-transition)}}@media(max-width: 767.98px)and (prefers-reduced-motion: reduce){.offcanvas-md{transition:none}}@media(max-width: 767.98px){.offcanvas-md.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(-100%)}.offcanvas-md.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(100%)}.offcanvas-md.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}.offcanvas-md.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}.offcanvas-md.showing,.offcanvas-md.show:not(.hiding){transform:none}.offcanvas-md.showing,.offcanvas-md.hiding,.offcanvas-md.show{visibility:visible}}@media(min-width: 768px){.offcanvas-md{--bs-offcanvas-height: auto;--bs-offcanvas-border-width: 0;background-color:rgba(0,0,0,0) !important}.offcanvas-md .offcanvas-header{display:none}.offcanvas-md .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible;background-color:rgba(0,0,0,0) !important}}@media(max-width: 991.98px){.offcanvas-lg{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:var(--bs-offcanvas-transition)}}@media(max-width: 991.98px)and (prefers-reduced-motion: reduce){.offcanvas-lg{transition:none}}@media(max-width: 991.98px){.offcanvas-lg.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(-100%)}.offcanvas-lg.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(100%)}.offcanvas-lg.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}.offcanvas-lg.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}.offcanvas-lg.showing,.offcanvas-lg.show:not(.hiding){transform:none}.offcanvas-lg.showing,.offcanvas-lg.hiding,.offcanvas-lg.show{visibility:visible}}@media(min-width: 992px){.offcanvas-lg{--bs-offcanvas-height: auto;--bs-offcanvas-border-width: 0;background-color:rgba(0,0,0,0) !important}.offcanvas-lg .offcanvas-header{display:none}.offcanvas-lg .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible;background-color:rgba(0,0,0,0) !important}}@media(max-width: 1199.98px){.offcanvas-xl{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:var(--bs-offcanvas-transition)}}@media(max-width: 1199.98px)and (prefers-reduced-motion: reduce){.offcanvas-xl{transition:none}}@media(max-width: 1199.98px){.offcanvas-xl.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(-100%)}.offcanvas-xl.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(100%)}.offcanvas-xl.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}.offcanvas-xl.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}.offcanvas-xl.showing,.offcanvas-xl.show:not(.hiding){transform:none}.offcanvas-xl.showing,.offcanvas-xl.hiding,.offcanvas-xl.show{visibility:visible}}@media(min-width: 1200px){.offcanvas-xl{--bs-offcanvas-height: auto;--bs-offcanvas-border-width: 0;background-color:rgba(0,0,0,0) !important}.offcanvas-xl .offcanvas-header{display:none}.offcanvas-xl .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible;background-color:rgba(0,0,0,0) !important}}@media(max-width: 1399.98px){.offcanvas-xxl{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:var(--bs-offcanvas-transition)}}@media(max-width: 1399.98px)and (prefers-reduced-motion: reduce){.offcanvas-xxl{transition:none}}@media(max-width: 1399.98px){.offcanvas-xxl.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(-100%)}.offcanvas-xxl.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(100%)}.offcanvas-xxl.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}.offcanvas-xxl.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}.offcanvas-xxl.showing,.offcanvas-xxl.show:not(.hiding){transform:none}.offcanvas-xxl.showing,.offcanvas-xxl.hiding,.offcanvas-xxl.show{visibility:visible}}@media(min-width: 1400px){.offcanvas-xxl{--bs-offcanvas-height: auto;--bs-offcanvas-border-width: 0;background-color:rgba(0,0,0,0) !important}.offcanvas-xxl .offcanvas-header{display:none}.offcanvas-xxl .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible;background-color:rgba(0,0,0,0) !important}}@media(max-width: 1899.98px){.offcanvas-xxxl{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:var(--bs-offcanvas-transition)}}@media(max-width: 1899.98px)and (prefers-reduced-motion: reduce){.offcanvas-xxxl{transition:none}}@media(max-width: 1899.98px){.offcanvas-xxxl.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(-100%)}.offcanvas-xxxl.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(100%)}.offcanvas-xxxl.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}.offcanvas-xxxl.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}.offcanvas-xxxl.showing,.offcanvas-xxxl.show:not(.hiding){transform:none}.offcanvas-xxxl.showing,.offcanvas-xxxl.hiding,.offcanvas-xxxl.show{visibility:visible}}@media(min-width: 1900px){.offcanvas-xxxl{--bs-offcanvas-height: auto;--bs-offcanvas-border-width: 0;background-color:rgba(0,0,0,0) !important}.offcanvas-xxxl .offcanvas-header{display:none}.offcanvas-xxxl .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible;background-color:rgba(0,0,0,0) !important}}.offcanvas{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:var(--bs-offcanvas-transition)}@media(prefers-reduced-motion: reduce){.offcanvas{transition:none}}.offcanvas.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(-100%)}.offcanvas.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(100%)}.offcanvas.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}.offcanvas.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}.offcanvas.showing,.offcanvas.show:not(.hiding){transform:none}.offcanvas.showing,.offcanvas.hiding,.offcanvas.show{visibility:visible}.offcanvas-backdrop{position:fixed;top:0;left:0;z-index:1040;width:100vw;height:100vh;background-color:#000}.offcanvas-backdrop.fade{opacity:0}.offcanvas-backdrop.show{opacity:.5}.offcanvas-header{display:flex;align-items:center;justify-content:space-between;padding:var(--bs-offcanvas-padding-y) var(--bs-offcanvas-padding-x)}.offcanvas-header .btn-close{padding:calc(var(--bs-offcanvas-padding-y)*.5) calc(var(--bs-offcanvas-padding-x)*.5);margin-top:calc(-0.5*var(--bs-offcanvas-padding-y));margin-right:calc(-0.5*var(--bs-offcanvas-padding-x));margin-bottom:calc(-0.5*var(--bs-offcanvas-padding-y))}.offcanvas-title{margin-bottom:0;line-height:var(--bs-offcanvas-title-line-height)}.offcanvas-body{flex-grow:1;padding:var(--bs-offcanvas-padding-y) var(--bs-offcanvas-padding-x);overflow-y:auto}.placeholder{display:inline-block;min-height:1em;vertical-align:middle;cursor:wait;background-color:currentcolor;opacity:.5}.placeholder.btn::before{display:inline-block;content:""}.placeholder-xs{min-height:.6em}.placeholder-sm{min-height:.8em}.placeholder-lg{min-height:1.2em}.placeholder-glow .placeholder{animation:placeholder-glow 2s ease-in-out infinite}@keyframes placeholder-glow{50%{opacity:.2}}.placeholder-wave{mask-image:linear-gradient(130deg, #000 55%, rgba(0, 0, 0, 0.8) 75%, #000 95%);mask-size:200% 100%;animation:placeholder-wave 2s linear infinite}@keyframes placeholder-wave{100%{mask-position:-200% 0%}}.clearfix::after{display:block;clear:both;content:""}.text-bg-primary{color:#fff !important;background-color:RGBA(13, 110, 253, var(--bs-bg-opacity, 1)) !important}.text-bg-secondary{color:#fff !important;background-color:RGBA(108, 117, 125, var(--bs-bg-opacity, 1)) !important}.text-bg-success{color:#fff !important;background-color:RGBA(25, 135, 84, var(--bs-bg-opacity, 1)) !important}.text-bg-info{color:#000 !important;background-color:RGBA(13, 202, 240, var(--bs-bg-opacity, 1)) !important}.text-bg-warning{color:#000 !important;background-color:RGBA(255, 193, 7, var(--bs-bg-opacity, 1)) !important}.text-bg-danger{color:#fff !important;background-color:RGBA(220, 53, 69, var(--bs-bg-opacity, 1)) !important}.text-bg-light{color:#000 !important;background-color:RGBA(233, 236, 239, var(--bs-bg-opacity, 1)) !important}.text-bg-dark{color:#fff !important;background-color:RGBA(12, 17, 24, var(--bs-bg-opacity, 1)) !important}.link-primary{color:RGBA(var(--bs-primary-rgb), var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(var(--bs-primary-rgb), var(--bs-link-underline-opacity, 1)) !important}.link-primary:hover,.link-primary:focus{color:RGBA(10, 88, 202, var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(10, 88, 202, var(--bs-link-underline-opacity, 1)) !important}.link-secondary{color:RGBA(var(--bs-secondary-rgb), var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(var(--bs-secondary-rgb), var(--bs-link-underline-opacity, 1)) !important}.link-secondary:hover,.link-secondary:focus{color:RGBA(86, 94, 100, var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(86, 94, 100, var(--bs-link-underline-opacity, 1)) !important}.link-success{color:RGBA(var(--bs-success-rgb), var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(var(--bs-success-rgb), var(--bs-link-underline-opacity, 1)) !important}.link-success:hover,.link-success:focus{color:RGBA(20, 108, 67, var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(20, 108, 67, var(--bs-link-underline-opacity, 1)) !important}.link-info{color:RGBA(var(--bs-info-rgb), var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(var(--bs-info-rgb), var(--bs-link-underline-opacity, 1)) !important}.link-info:hover,.link-info:focus{color:RGBA(61, 213, 243, var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(61, 213, 243, var(--bs-link-underline-opacity, 1)) !important}.link-warning{color:RGBA(var(--bs-warning-rgb), var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(var(--bs-warning-rgb), var(--bs-link-underline-opacity, 1)) !important}.link-warning:hover,.link-warning:focus{color:RGBA(255, 205, 57, var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(255, 205, 57, var(--bs-link-underline-opacity, 1)) !important}.link-danger{color:RGBA(var(--bs-danger-rgb), var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(var(--bs-danger-rgb), var(--bs-link-underline-opacity, 1)) !important}.link-danger:hover,.link-danger:focus{color:RGBA(176, 42, 55, var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(176, 42, 55, var(--bs-link-underline-opacity, 1)) !important}.link-light{color:RGBA(var(--bs-light-rgb), var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(var(--bs-light-rgb), var(--bs-link-underline-opacity, 1)) !important}.link-light:hover,.link-light:focus{color:RGBA(237, 240, 242, var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(237, 240, 242, var(--bs-link-underline-opacity, 1)) !important}.link-dark{color:RGBA(var(--bs-dark-rgb), var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(var(--bs-dark-rgb), var(--bs-link-underline-opacity, 1)) !important}.link-dark:hover,.link-dark:focus{color:RGBA(10, 14, 19, var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(10, 14, 19, var(--bs-link-underline-opacity, 1)) !important}.link-body-emphasis{color:RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-underline-opacity, 1)) !important}.link-body-emphasis:hover,.link-body-emphasis:focus{color:RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-opacity, 0.75)) !important;text-decoration-color:RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-underline-opacity, 0.75)) !important}.focus-ring:focus{outline:0;box-shadow:var(--bs-focus-ring-x, 0) var(--bs-focus-ring-y, 0) var(--bs-focus-ring-blur, 0) var(--bs-focus-ring-width) var(--bs-focus-ring-color)}.icon-link{display:inline-flex;gap:.375rem;align-items:center;text-decoration-color:rgba(var(--bs-link-color-rgb), var(--bs-link-opacity, 0.5));text-underline-offset:.25em;backface-visibility:hidden}.icon-link>.bi{flex-shrink:0;width:1em;height:1em;fill:currentcolor;transition:.2s ease-in-out transform}@media(prefers-reduced-motion: reduce){.icon-link>.bi{transition:none}}.icon-link-hover:hover>.bi,.icon-link-hover:focus-visible>.bi{transform:var(--bs-icon-link-transform, translate3d(0.25em, 0, 0))}.ratio{position:relative;width:100%}.ratio::before{display:block;padding-top:var(--bs-aspect-ratio);content:""}.ratio>*{position:absolute;top:0;left:0;width:100%;height:100%}.ratio-1x1{--bs-aspect-ratio: 100%}.ratio-4x3{--bs-aspect-ratio: 75%}.ratio-16x9{--bs-aspect-ratio: 56.25%}.ratio-21x9{--bs-aspect-ratio: 42.8571428571%}.fixed-top{position:fixed;top:0;right:0;left:0;z-index:1030}.fixed-bottom{position:fixed;right:0;bottom:0;left:0;z-index:1030}.sticky-top{position:sticky;top:0;z-index:1020}.sticky-bottom{position:sticky;bottom:0;z-index:1020}@media(min-width: 576px){.sticky-sm-top{position:sticky;top:0;z-index:1020}.sticky-sm-bottom{position:sticky;bottom:0;z-index:1020}}@media(min-width: 768px){.sticky-md-top{position:sticky;top:0;z-index:1020}.sticky-md-bottom{position:sticky;bottom:0;z-index:1020}}@media(min-width: 992px){.sticky-lg-top{position:sticky;top:0;z-index:1020}.sticky-lg-bottom{position:sticky;bottom:0;z-index:1020}}@media(min-width: 1200px){.sticky-xl-top{position:sticky;top:0;z-index:1020}.sticky-xl-bottom{position:sticky;bottom:0;z-index:1020}}@media(min-width: 1400px){.sticky-xxl-top{position:sticky;top:0;z-index:1020}.sticky-xxl-bottom{position:sticky;bottom:0;z-index:1020}}@media(min-width: 1900px){.sticky-xxxl-top{position:sticky;top:0;z-index:1020}.sticky-xxxl-bottom{position:sticky;bottom:0;z-index:1020}}.hstack{display:flex;flex-direction:row;align-items:center;align-self:stretch}.vstack{display:flex;flex:1 1 auto;flex-direction:column;align-self:stretch}.visually-hidden,.visually-hidden-focusable:not(:focus):not(:focus-within){width:1px !important;height:1px !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;white-space:nowrap !important;border:0 !important}.visually-hidden:not(caption),.visually-hidden-focusable:not(:focus):not(:focus-within):not(caption){position:absolute !important}.stretched-link::after{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;content:""}.text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vr{display:inline-block;align-self:stretch;width:1px;min-height:1em;background-color:currentcolor;opacity:.25}.align-baseline{vertical-align:baseline !important}.align-top{vertical-align:top !important}.align-middle{vertical-align:middle !important}.align-bottom{vertical-align:bottom !important}.align-text-bottom{vertical-align:text-bottom !important}.align-text-top{vertical-align:text-top !important}.float-start{float:left !important}.float-end{float:right !important}.float-none{float:none !important}.object-fit-contain{object-fit:contain !important}.object-fit-cover{object-fit:cover !important}.object-fit-fill{object-fit:fill !important}.object-fit-scale{object-fit:scale-down !important}.object-fit-none{object-fit:none !important}.opacity-0{opacity:0 !important}.opacity-25{opacity:.25 !important}.opacity-50{opacity:.5 !important}.opacity-75{opacity:.75 !important}.opacity-100{opacity:1 !important}.overflow-auto{overflow:auto !important}.overflow-hidden{overflow:hidden !important}.overflow-visible{overflow:visible !important}.overflow-scroll{overflow:scroll !important}.overflow-x-auto{overflow-x:auto !important}.overflow-x-hidden{overflow-x:hidden !important}.overflow-x-visible{overflow-x:visible !important}.overflow-x-scroll{overflow-x:scroll !important}.overflow-y-auto{overflow-y:auto !important}.overflow-y-hidden{overflow-y:hidden !important}.overflow-y-visible{overflow-y:visible !important}.overflow-y-scroll{overflow-y:scroll !important}.d-inline{display:inline !important}.d-inline-block{display:inline-block !important}.d-block{display:block !important}.d-grid{display:grid !important}.d-inline-grid{display:inline-grid !important}.d-table{display:table !important}.d-table-row{display:table-row !important}.d-table-cell{display:table-cell !important}.d-flex{display:flex !important}.d-inline-flex{display:inline-flex !important}.d-none{display:none !important}.shadow{box-shadow: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}.focus-ring-primary{--bs-focus-ring-color: rgba(var(--bs-primary-rgb), var(--bs-focus-ring-opacity))}.focus-ring-secondary{--bs-focus-ring-color: rgba(var(--bs-secondary-rgb), var(--bs-focus-ring-opacity))}.focus-ring-success{--bs-focus-ring-color: rgba(var(--bs-success-rgb), var(--bs-focus-ring-opacity))}.focus-ring-info{--bs-focus-ring-color: rgba(var(--bs-info-rgb), var(--bs-focus-ring-opacity))}.focus-ring-warning{--bs-focus-ring-color: rgba(var(--bs-warning-rgb), var(--bs-focus-ring-opacity))}.focus-ring-danger{--bs-focus-ring-color: rgba(var(--bs-danger-rgb), var(--bs-focus-ring-opacity))}.focus-ring-light{--bs-focus-ring-color: rgba(var(--bs-light-rgb), var(--bs-focus-ring-opacity))}.focus-ring-dark{--bs-focus-ring-color: rgba(var(--bs-dark-rgb), var(--bs-focus-ring-opacity))}.position-static{position:static !important}.position-relative{position:relative !important}.position-absolute{position:absolute !important}.position-fixed{position:fixed !important}.position-sticky{position:sticky !important}.top-0{top:0 !important}.top-50{top:50% !important}.top-100{top:100% !important}.bottom-0{bottom:0 !important}.bottom-50{bottom:50% !important}.bottom-100{bottom:100% !important}.start-0{left:0 !important}.start-50{left:50% !important}.start-100{left:100% !important}.end-0{right:0 !important}.end-50{right:50% !important}.end-100{right:100% !important}.translate-middle{transform:translate(-50%, -50%) !important}.translate-middle-x{transform:translateX(-50%) !important}.translate-middle-y{transform:translateY(-50%) !important}.border{border:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important}.border-0{border:0 !important}.border-top{border-top:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important}.border-top-0{border-top:0 !important}.border-end{border-right:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important}.border-end-0{border-right:0 !important}.border-bottom{border-bottom:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important}.border-bottom-0{border-bottom:0 !important}.border-start{border-left:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important}.border-start-0{border-left:0 !important}.border-primary{--bs-border-opacity: 1;border-color:rgba(var(--bs-primary-rgb), var(--bs-border-opacity)) !important}.border-secondary{--bs-border-opacity: 1;border-color:rgba(var(--bs-secondary-rgb), var(--bs-border-opacity)) !important}.border-success{--bs-border-opacity: 1;border-color:rgba(var(--bs-success-rgb), var(--bs-border-opacity)) !important}.border-info{--bs-border-opacity: 1;border-color:rgba(var(--bs-info-rgb), var(--bs-border-opacity)) !important}.border-warning{--bs-border-opacity: 1;border-color:rgba(var(--bs-warning-rgb), var(--bs-border-opacity)) !important}.border-danger{--bs-border-opacity: 1;border-color:rgba(var(--bs-danger-rgb), var(--bs-border-opacity)) !important}.border-light{--bs-border-opacity: 1;border-color:rgba(var(--bs-light-rgb), var(--bs-border-opacity)) !important}.border-dark{--bs-border-opacity: 1;border-color:rgba(var(--bs-dark-rgb), var(--bs-border-opacity)) !important}.border-black{--bs-border-opacity: 1;border-color:rgba(var(--bs-black-rgb), var(--bs-border-opacity)) !important}.border-white{--bs-border-opacity: 1;border-color:rgba(var(--bs-white-rgb), var(--bs-border-opacity)) !important}.border-primary-subtle{border-color:var(--bs-primary-border-subtle) !important}.border-secondary-subtle{border-color:var(--bs-secondary-border-subtle) !important}.border-success-subtle{border-color:var(--bs-success-border-subtle) !important}.border-info-subtle{border-color:var(--bs-info-border-subtle) !important}.border-warning-subtle{border-color:var(--bs-warning-border-subtle) !important}.border-danger-subtle{border-color:var(--bs-danger-border-subtle) !important}.border-light-subtle{border-color:var(--bs-light-border-subtle) !important}.border-dark-subtle{border-color:var(--bs-dark-border-subtle) !important}.border-1{border-width:1px !important}.border-2{border-width:2px !important}.border-3{border-width:3px !important}.border-4{border-width:4px !important}.border-5{border-width:5px !important}.border-opacity-10{--bs-border-opacity: 0.1}.border-opacity-25{--bs-border-opacity: 0.25}.border-opacity-50{--bs-border-opacity: 0.5}.border-opacity-75{--bs-border-opacity: 0.75}.border-opacity-100{--bs-border-opacity: 1}.w-25{width:25% !important}.w-50{width:50% !important}.w-75{width:75% !important}.w-100{width:100% !important}.w-auto{width:auto !important}.mw-100{max-width:100% !important}.vw-100{width:100vw !important}.min-vw-100{min-width:100vw !important}.h-25{height:25% !important}.h-50{height:50% !important}.h-75{height:75% !important}.h-100{height:100% !important}.h-auto{height:auto !important}.mh-100{max-height:100% !important}.vh-100{height:100vh !important}.min-vh-100{min-height:100vh !important}.flex-fill{flex:1 1 auto !important}.flex-row{flex-direction:row !important}.flex-column{flex-direction:column !important}.flex-row-reverse{flex-direction:row-reverse !important}.flex-column-reverse{flex-direction:column-reverse !important}.flex-grow-0{flex-grow:0 !important}.flex-grow-1{flex-grow:1 !important}.flex-shrink-0{flex-shrink:0 !important}.flex-shrink-1{flex-shrink:1 !important}.flex-wrap{flex-wrap:wrap !important}.flex-nowrap{flex-wrap:nowrap !important}.flex-wrap-reverse{flex-wrap:wrap-reverse !important}.justify-content-start{justify-content:flex-start !important}.justify-content-end{justify-content:flex-end !important}.justify-content-center{justify-content:center !important}.justify-content-between{justify-content:space-between !important}.justify-content-around{justify-content:space-around !important}.justify-content-evenly{justify-content:space-evenly !important}.align-items-start{align-items:flex-start !important}.align-items-end{align-items:flex-end !important}.align-items-center{align-items:center !important}.align-items-baseline{align-items:baseline !important}.align-items-stretch{align-items:stretch !important}.align-content-start{align-content:flex-start !important}.align-content-end{align-content:flex-end !important}.align-content-center{align-content:center !important}.align-content-between{align-content:space-between !important}.align-content-around{align-content:space-around !important}.align-content-stretch{align-content:stretch !important}.align-self-auto{align-self:auto !important}.align-self-start{align-self:flex-start !important}.align-self-end{align-self:flex-end !important}.align-self-center{align-self:center !important}.align-self-baseline{align-self:baseline !important}.align-self-stretch{align-self:stretch !important}.order-first{order:-1 !important}.order-0{order:0 !important}.order-1{order:1 !important}.order-2{order:2 !important}.order-3{order:3 !important}.order-4{order:4 !important}.order-5{order:5 !important}.order-last{order:6 !important}.m-0{margin:0 !important}.m-1{margin:.225rem !important}.m-2{margin:.45rem !important}.m-3{margin:.9rem !important}.m-4{margin:1.35rem !important}.m-5{margin:1.8rem !important}.m-6{margin:2.25rem !important}.m-7{margin:2.7rem !important}.m-8{margin:3.15rem !important}.m-9{margin:3.6rem !important}.m-tiny{margin:.135rem !important}.m-auto{margin:auto !important}.mx-0{margin-right:0 !important;margin-left:0 !important}.mx-1{margin-right:.225rem !important;margin-left:.225rem !important}.mx-2{margin-right:.45rem !important;margin-left:.45rem !important}.mx-3{margin-right:.9rem !important;margin-left:.9rem !important}.mx-4{margin-right:1.35rem !important;margin-left:1.35rem !important}.mx-5{margin-right:1.8rem !important;margin-left:1.8rem !important}.mx-6{margin-right:2.25rem !important;margin-left:2.25rem !important}.mx-7{margin-right:2.7rem !important;margin-left:2.7rem !important}.mx-8{margin-right:3.15rem !important;margin-left:3.15rem !important}.mx-9{margin-right:3.6rem !important;margin-left:3.6rem !important}.mx-tiny{margin-right:.135rem !important;margin-left:.135rem !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:.225rem !important;margin-bottom:.225rem !important}.my-2{margin-top:.45rem !important;margin-bottom:.45rem !important}.my-3{margin-top:.9rem !important;margin-bottom:.9rem !important}.my-4{margin-top:1.35rem !important;margin-bottom:1.35rem !important}.my-5{margin-top:1.8rem !important;margin-bottom:1.8rem !important}.my-6{margin-top:2.25rem !important;margin-bottom:2.25rem !important}.my-7{margin-top:2.7rem !important;margin-bottom:2.7rem !important}.my-8{margin-top:3.15rem !important;margin-bottom:3.15rem !important}.my-9{margin-top:3.6rem !important;margin-bottom:3.6rem !important}.my-tiny{margin-top:.135rem !important;margin-bottom:.135rem !important}.my-auto{margin-top:auto !important;margin-bottom:auto !important}.mt-0{margin-top:0 !important}.mt-1{margin-top:.225rem !important}.mt-2{margin-top:.45rem !important}.mt-3{margin-top:.9rem !important}.mt-4{margin-top:1.35rem !important}.mt-5{margin-top:1.8rem !important}.mt-6{margin-top:2.25rem !important}.mt-7{margin-top:2.7rem !important}.mt-8{margin-top:3.15rem !important}.mt-9{margin-top:3.6rem !important}.mt-tiny{margin-top:.135rem !important}.mt-auto{margin-top:auto !important}.me-0{margin-right:0 !important}.me-1{margin-right:.225rem !important}.me-2{margin-right:.45rem !important}.me-3{margin-right:.9rem !important}.me-4{margin-right:1.35rem !important}.me-5{margin-right:1.8rem !important}.me-6{margin-right:2.25rem !important}.me-7{margin-right:2.7rem !important}.me-8{margin-right:3.15rem !important}.me-9{margin-right:3.6rem !important}.me-tiny{margin-right:.135rem !important}.me-auto{margin-right:auto !important}.mb-0{margin-bottom:0 !important}.mb-1{margin-bottom:.225rem !important}.mb-2{margin-bottom:.45rem !important}.mb-3{margin-bottom:.9rem !important}.mb-4{margin-bottom:1.35rem !important}.mb-5{margin-bottom:1.8rem !important}.mb-6{margin-bottom:2.25rem !important}.mb-7{margin-bottom:2.7rem !important}.mb-8{margin-bottom:3.15rem !important}.mb-9{margin-bottom:3.6rem !important}.mb-tiny{margin-bottom:.135rem !important}.mb-auto{margin-bottom:auto !important}.ms-0{margin-left:0 !important}.ms-1{margin-left:.225rem !important}.ms-2{margin-left:.45rem !important}.ms-3{margin-left:.9rem !important}.ms-4{margin-left:1.35rem !important}.ms-5{margin-left:1.8rem !important}.ms-6{margin-left:2.25rem !important}.ms-7{margin-left:2.7rem !important}.ms-8{margin-left:3.15rem !important}.ms-9{margin-left:3.6rem !important}.ms-tiny{margin-left:.135rem !important}.ms-auto{margin-left:auto !important}.m-n1{margin:-0.225rem !important}.m-n2{margin:-0.45rem !important}.m-n3{margin:-0.9rem !important}.m-n4{margin:-1.35rem !important}.m-n5{margin:-1.8rem !important}.m-n6{margin:-2.25rem !important}.m-n7{margin:-2.7rem !important}.m-n8{margin:-3.15rem !important}.m-n9{margin:-3.6rem !important}.m-ntiny{margin:-0.135rem !important}.mx-n1{margin-right:-0.225rem !important;margin-left:-0.225rem !important}.mx-n2{margin-right:-0.45rem !important;margin-left:-0.45rem !important}.mx-n3{margin-right:-0.9rem !important;margin-left:-0.9rem !important}.mx-n4{margin-right:-1.35rem !important;margin-left:-1.35rem !important}.mx-n5{margin-right:-1.8rem !important;margin-left:-1.8rem !important}.mx-n6{margin-right:-2.25rem !important;margin-left:-2.25rem !important}.mx-n7{margin-right:-2.7rem !important;margin-left:-2.7rem !important}.mx-n8{margin-right:-3.15rem !important;margin-left:-3.15rem !important}.mx-n9{margin-right:-3.6rem !important;margin-left:-3.6rem !important}.mx-ntiny{margin-right:-0.135rem !important;margin-left:-0.135rem !important}.my-n1{margin-top:-0.225rem !important;margin-bottom:-0.225rem !important}.my-n2{margin-top:-0.45rem !important;margin-bottom:-0.45rem !important}.my-n3{margin-top:-0.9rem !important;margin-bottom:-0.9rem !important}.my-n4{margin-top:-1.35rem !important;margin-bottom:-1.35rem !important}.my-n5{margin-top:-1.8rem !important;margin-bottom:-1.8rem !important}.my-n6{margin-top:-2.25rem !important;margin-bottom:-2.25rem !important}.my-n7{margin-top:-2.7rem !important;margin-bottom:-2.7rem !important}.my-n8{margin-top:-3.15rem !important;margin-bottom:-3.15rem !important}.my-n9{margin-top:-3.6rem !important;margin-bottom:-3.6rem !important}.my-ntiny{margin-top:-0.135rem !important;margin-bottom:-0.135rem !important}.mt-n1{margin-top:-0.225rem !important}.mt-n2{margin-top:-0.45rem !important}.mt-n3{margin-top:-0.9rem !important}.mt-n4{margin-top:-1.35rem !important}.mt-n5{margin-top:-1.8rem !important}.mt-n6{margin-top:-2.25rem !important}.mt-n7{margin-top:-2.7rem !important}.mt-n8{margin-top:-3.15rem !important}.mt-n9{margin-top:-3.6rem !important}.mt-ntiny{margin-top:-0.135rem !important}.me-n1{margin-right:-0.225rem !important}.me-n2{margin-right:-0.45rem !important}.me-n3{margin-right:-0.9rem !important}.me-n4{margin-right:-1.35rem !important}.me-n5{margin-right:-1.8rem !important}.me-n6{margin-right:-2.25rem !important}.me-n7{margin-right:-2.7rem !important}.me-n8{margin-right:-3.15rem !important}.me-n9{margin-right:-3.6rem !important}.me-ntiny{margin-right:-0.135rem !important}.mb-n1{margin-bottom:-0.225rem !important}.mb-n2{margin-bottom:-0.45rem !important}.mb-n3{margin-bottom:-0.9rem !important}.mb-n4{margin-bottom:-1.35rem !important}.mb-n5{margin-bottom:-1.8rem !important}.mb-n6{margin-bottom:-2.25rem !important}.mb-n7{margin-bottom:-2.7rem !important}.mb-n8{margin-bottom:-3.15rem !important}.mb-n9{margin-bottom:-3.6rem !important}.mb-ntiny{margin-bottom:-0.135rem !important}.ms-n1{margin-left:-0.225rem !important}.ms-n2{margin-left:-0.45rem !important}.ms-n3{margin-left:-0.9rem !important}.ms-n4{margin-left:-1.35rem !important}.ms-n5{margin-left:-1.8rem !important}.ms-n6{margin-left:-2.25rem !important}.ms-n7{margin-left:-2.7rem !important}.ms-n8{margin-left:-3.15rem !important}.ms-n9{margin-left:-3.6rem !important}.ms-ntiny{margin-left:-0.135rem !important}.p-0{padding:0 !important}.p-1{padding:.225rem !important}.p-2{padding:.45rem !important}.p-3{padding:.9rem !important}.p-4{padding:1.35rem !important}.p-5{padding:1.8rem !important}.p-6{padding:2.25rem !important}.p-7{padding:2.7rem !important}.p-8{padding:3.15rem !important}.p-9{padding:3.6rem !important}.p-tiny{padding:.135rem !important}.px-0{padding-right:0 !important;padding-left:0 !important}.px-1{padding-right:.225rem !important;padding-left:.225rem !important}.px-2{padding-right:.45rem !important;padding-left:.45rem !important}.px-3{padding-right:.9rem !important;padding-left:.9rem !important}.px-4{padding-right:1.35rem !important;padding-left:1.35rem !important}.px-5{padding-right:1.8rem !important;padding-left:1.8rem !important}.px-6{padding-right:2.25rem !important;padding-left:2.25rem !important}.px-7{padding-right:2.7rem !important;padding-left:2.7rem !important}.px-8{padding-right:3.15rem !important;padding-left:3.15rem !important}.px-9{padding-right:3.6rem !important;padding-left:3.6rem !important}.px-tiny{padding-right:.135rem !important;padding-left:.135rem !important}.py-0{padding-top:0 !important;padding-bottom:0 !important}.py-1{padding-top:.225rem !important;padding-bottom:.225rem !important}.py-2{padding-top:.45rem !important;padding-bottom:.45rem !important}.py-3{padding-top:.9rem !important;padding-bottom:.9rem !important}.py-4{padding-top:1.35rem !important;padding-bottom:1.35rem !important}.py-5{padding-top:1.8rem !important;padding-bottom:1.8rem !important}.py-6{padding-top:2.25rem !important;padding-bottom:2.25rem !important}.py-7{padding-top:2.7rem !important;padding-bottom:2.7rem !important}.py-8{padding-top:3.15rem !important;padding-bottom:3.15rem !important}.py-9{padding-top:3.6rem !important;padding-bottom:3.6rem !important}.py-tiny{padding-top:.135rem !important;padding-bottom:.135rem !important}.pt-0{padding-top:0 !important}.pt-1{padding-top:.225rem !important}.pt-2{padding-top:.45rem !important}.pt-3{padding-top:.9rem !important}.pt-4{padding-top:1.35rem !important}.pt-5{padding-top:1.8rem !important}.pt-6{padding-top:2.25rem !important}.pt-7{padding-top:2.7rem !important}.pt-8{padding-top:3.15rem !important}.pt-9{padding-top:3.6rem !important}.pt-tiny{padding-top:.135rem !important}.pe-0{padding-right:0 !important}.pe-1{padding-right:.225rem !important}.pe-2{padding-right:.45rem !important}.pe-3{padding-right:.9rem !important}.pe-4{padding-right:1.35rem !important}.pe-5{padding-right:1.8rem !important}.pe-6{padding-right:2.25rem !important}.pe-7{padding-right:2.7rem !important}.pe-8{padding-right:3.15rem !important}.pe-9{padding-right:3.6rem !important}.pe-tiny{padding-right:.135rem !important}.pb-0{padding-bottom:0 !important}.pb-1{padding-bottom:.225rem !important}.pb-2{padding-bottom:.45rem !important}.pb-3{padding-bottom:.9rem !important}.pb-4{padding-bottom:1.35rem !important}.pb-5{padding-bottom:1.8rem !important}.pb-6{padding-bottom:2.25rem !important}.pb-7{padding-bottom:2.7rem !important}.pb-8{padding-bottom:3.15rem !important}.pb-9{padding-bottom:3.6rem !important}.pb-tiny{padding-bottom:.135rem !important}.ps-0{padding-left:0 !important}.ps-1{padding-left:.225rem !important}.ps-2{padding-left:.45rem !important}.ps-3{padding-left:.9rem !important}.ps-4{padding-left:1.35rem !important}.ps-5{padding-left:1.8rem !important}.ps-6{padding-left:2.25rem !important}.ps-7{padding-left:2.7rem !important}.ps-8{padding-left:3.15rem !important}.ps-9{padding-left:3.6rem !important}.ps-tiny{padding-left:.135rem !important}.gap-0{gap:0 !important}.gap-1{gap:.225rem !important}.gap-2{gap:.45rem !important}.gap-3{gap:.9rem !important}.gap-4{gap:1.35rem !important}.gap-5{gap:1.8rem !important}.gap-6{gap:2.25rem !important}.gap-7{gap:2.7rem !important}.gap-8{gap:3.15rem !important}.gap-9{gap:3.6rem !important}.gap-tiny{gap:.135rem !important}.row-gap-0{row-gap:0 !important}.row-gap-1{row-gap:.225rem !important}.row-gap-2{row-gap:.45rem !important}.row-gap-3{row-gap:.9rem !important}.row-gap-4{row-gap:1.35rem !important}.row-gap-5{row-gap:1.8rem !important}.row-gap-6{row-gap:2.25rem !important}.row-gap-7{row-gap:2.7rem !important}.row-gap-8{row-gap:3.15rem !important}.row-gap-9{row-gap:3.6rem !important}.row-gap-tiny{row-gap:.135rem !important}.column-gap-0{column-gap:0 !important}.column-gap-1{column-gap:.225rem !important}.column-gap-2{column-gap:.45rem !important}.column-gap-3{column-gap:.9rem !important}.column-gap-4{column-gap:1.35rem !important}.column-gap-5{column-gap:1.8rem !important}.column-gap-6{column-gap:2.25rem !important}.column-gap-7{column-gap:2.7rem !important}.column-gap-8{column-gap:3.15rem !important}.column-gap-9{column-gap:3.6rem !important}.column-gap-tiny{column-gap:.135rem !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-lighter{font-weight:lighter !important}.fw-light{font-weight:300 !important}.fw-normal{font-weight:400 !important}.fw-medium{font-weight:500 !important}.fw-semibold{font-weight:600 !important}.fw-bold{font-weight:700 !important}.fw-bolder{font-weight:bolder !important}.lh-1{line-height:1 !important}.lh-sm{line-height:1.25 !important}.lh-base{line-height:1.5 !important}.lh-lg{line-height:2 !important}.text-start{text-align:left !important}.text-end{text-align:right !important}.text-center{text-align:center !important}.text-decoration-none{text-decoration:none !important}.text-decoration-underline{text-decoration:underline !important}.text-decoration-line-through{text-decoration:line-through !important}.text-lowercase{text-transform:lowercase !important}.text-uppercase{text-transform:uppercase !important}.text-capitalize{text-transform:capitalize !important}.text-wrap{white-space:normal !important}.text-nowrap{white-space:nowrap !important}.text-break{word-wrap:break-word !important;word-break:break-word !important}.text-primary{--bs-text-opacity: 1;color:rgba(var(--bs-primary-rgb), var(--bs-text-opacity)) !important}.text-secondary{--bs-text-opacity: 1;color:rgba(var(--bs-secondary-rgb), var(--bs-text-opacity)) !important}.text-success{--bs-text-opacity: 1;color:rgba(var(--bs-success-rgb), var(--bs-text-opacity)) !important}.text-info{--bs-text-opacity: 1;color:rgba(var(--bs-info-rgb), var(--bs-text-opacity)) !important}.text-warning{--bs-text-opacity: 1;color:rgba(var(--bs-warning-rgb), var(--bs-text-opacity)) !important}.text-danger{--bs-text-opacity: 1;color:rgba(var(--bs-danger-rgb), var(--bs-text-opacity)) !important}.text-light{--bs-text-opacity: 1;color:rgba(var(--bs-light-rgb), var(--bs-text-opacity)) !important}.text-dark{--bs-text-opacity: 1;color:rgba(var(--bs-dark-rgb), var(--bs-text-opacity)) !important}.text-black{--bs-text-opacity: 1;color:rgba(var(--bs-black-rgb), var(--bs-text-opacity)) !important}.text-white{--bs-text-opacity: 1;color:rgba(var(--bs-white-rgb), var(--bs-text-opacity)) !important}.text-body{--bs-text-opacity: 1;color:rgba(var(--bs-body-color-rgb), var(--bs-text-opacity)) !important}.text-muted{--bs-text-opacity: 1;color:var(--bs-secondary-color) !important}.text-black-50{--bs-text-opacity: 1;color:rgba(0,0,0,.5) !important}.text-white-50{--bs-text-opacity: 1;color:rgba(255,255,255,.5) !important}.text-body-secondary{--bs-text-opacity: 1;color:var(--bs-secondary-color) !important}.text-body-tertiary{--bs-text-opacity: 1;color:var(--bs-tertiary-color) !important}.text-body-emphasis{--bs-text-opacity: 1;color:var(--bs-emphasis-color) !important}.text-reset{--bs-text-opacity: 1;color:inherit !important}.text-opacity-25{--bs-text-opacity: 0.25}.text-opacity-50{--bs-text-opacity: 0.5}.text-opacity-75{--bs-text-opacity: 0.75}.text-opacity-100{--bs-text-opacity: 1}.text-primary-emphasis{color:var(--bs-primary-text-emphasis) !important}.text-secondary-emphasis{color:var(--bs-secondary-text-emphasis) !important}.text-success-emphasis{color:var(--bs-success-text-emphasis) !important}.text-info-emphasis{color:var(--bs-info-text-emphasis) !important}.text-warning-emphasis{color:var(--bs-warning-text-emphasis) !important}.text-danger-emphasis{color:var(--bs-danger-text-emphasis) !important}.text-light-emphasis{color:var(--bs-light-text-emphasis) !important}.text-dark-emphasis{color:var(--bs-dark-text-emphasis) !important}.link-opacity-10{--bs-link-opacity: 0.1}.link-opacity-10-hover:hover{--bs-link-opacity: 0.1}.link-opacity-25{--bs-link-opacity: 0.25}.link-opacity-25-hover:hover{--bs-link-opacity: 0.25}.link-opacity-50{--bs-link-opacity: 0.5}.link-opacity-50-hover:hover{--bs-link-opacity: 0.5}.link-opacity-75{--bs-link-opacity: 0.75}.link-opacity-75-hover:hover{--bs-link-opacity: 0.75}.link-opacity-100{--bs-link-opacity: 1}.link-opacity-100-hover:hover{--bs-link-opacity: 1}.link-offset-1{text-underline-offset:.125em !important}.link-offset-1-hover:hover{text-underline-offset:.125em !important}.link-offset-2{text-underline-offset:.25em !important}.link-offset-2-hover:hover{text-underline-offset:.25em !important}.link-offset-3{text-underline-offset:.375em !important}.link-offset-3-hover:hover{text-underline-offset:.375em !important}.link-underline-primary{--bs-link-underline-opacity: 1;text-decoration-color:rgba(var(--bs-primary-rgb), var(--bs-link-underline-opacity)) !important}.link-underline-secondary{--bs-link-underline-opacity: 1;text-decoration-color:rgba(var(--bs-secondary-rgb), var(--bs-link-underline-opacity)) !important}.link-underline-success{--bs-link-underline-opacity: 1;text-decoration-color:rgba(var(--bs-success-rgb), var(--bs-link-underline-opacity)) !important}.link-underline-info{--bs-link-underline-opacity: 1;text-decoration-color:rgba(var(--bs-info-rgb), var(--bs-link-underline-opacity)) !important}.link-underline-warning{--bs-link-underline-opacity: 1;text-decoration-color:rgba(var(--bs-warning-rgb), var(--bs-link-underline-opacity)) !important}.link-underline-danger{--bs-link-underline-opacity: 1;text-decoration-color:rgba(var(--bs-danger-rgb), var(--bs-link-underline-opacity)) !important}.link-underline-light{--bs-link-underline-opacity: 1;text-decoration-color:rgba(var(--bs-light-rgb), var(--bs-link-underline-opacity)) !important}.link-underline-dark{--bs-link-underline-opacity: 1;text-decoration-color:rgba(var(--bs-dark-rgb), var(--bs-link-underline-opacity)) !important}.link-underline{--bs-link-underline-opacity: 1;text-decoration-color:rgba(var(--bs-link-color-rgb), var(--bs-link-underline-opacity, 1)) !important}.link-underline-opacity-0{--bs-link-underline-opacity: 0}.link-underline-opacity-0-hover:hover{--bs-link-underline-opacity: 0}.link-underline-opacity-10{--bs-link-underline-opacity: 0.1}.link-underline-opacity-10-hover:hover{--bs-link-underline-opacity: 0.1}.link-underline-opacity-25{--bs-link-underline-opacity: 0.25}.link-underline-opacity-25-hover:hover{--bs-link-underline-opacity: 0.25}.link-underline-opacity-50{--bs-link-underline-opacity: 0.5}.link-underline-opacity-50-hover:hover{--bs-link-underline-opacity: 0.5}.link-underline-opacity-75{--bs-link-underline-opacity: 0.75}.link-underline-opacity-75-hover:hover{--bs-link-underline-opacity: 0.75}.link-underline-opacity-100{--bs-link-underline-opacity: 1}.link-underline-opacity-100-hover:hover{--bs-link-underline-opacity: 1}.bg-primary{--bs-bg-opacity: 1;background-color:rgba(var(--bs-primary-rgb), var(--bs-bg-opacity)) !important}.bg-secondary{--bs-bg-opacity: 1;background-color:rgba(var(--bs-secondary-rgb), var(--bs-bg-opacity)) !important}.bg-success{--bs-bg-opacity: 1;background-color:rgba(var(--bs-success-rgb), var(--bs-bg-opacity)) !important}.bg-info{--bs-bg-opacity: 1;background-color:rgba(var(--bs-info-rgb), var(--bs-bg-opacity)) !important}.bg-warning{--bs-bg-opacity: 1;background-color:rgba(var(--bs-warning-rgb), var(--bs-bg-opacity)) !important}.bg-danger{--bs-bg-opacity: 1;background-color:rgba(var(--bs-danger-rgb), var(--bs-bg-opacity)) !important}.bg-light{--bs-bg-opacity: 1;background-color:rgba(var(--bs-light-rgb), var(--bs-bg-opacity)) !important}.bg-dark{--bs-bg-opacity: 1;background-color:rgba(var(--bs-dark-rgb), var(--bs-bg-opacity)) !important}.bg-black{--bs-bg-opacity: 1;background-color:rgba(var(--bs-black-rgb), var(--bs-bg-opacity)) !important}.bg-white{--bs-bg-opacity: 1;background-color:rgba(var(--bs-white-rgb), var(--bs-bg-opacity)) !important}.bg-body{--bs-bg-opacity: 1;background-color:rgba(var(--bs-body-bg-rgb), var(--bs-bg-opacity)) !important}.bg-transparent{--bs-bg-opacity: 1;background-color:rgba(0,0,0,0) !important}.bg-body-secondary{--bs-bg-opacity: 1;background-color:rgba(var(--bs-secondary-bg-rgb), var(--bs-bg-opacity)) !important}.bg-body-tertiary{--bs-bg-opacity: 1;background-color:rgba(var(--bs-tertiary-bg-rgb), var(--bs-bg-opacity)) !important}.bg-opacity-10{--bs-bg-opacity: 0.1}.bg-opacity-25{--bs-bg-opacity: 0.25}.bg-opacity-50{--bs-bg-opacity: 0.5}.bg-opacity-75{--bs-bg-opacity: 0.75}.bg-opacity-100{--bs-bg-opacity: 1}.bg-primary-subtle{background-color:var(--bs-primary-bg-subtle) !important}.bg-secondary-subtle{background-color:var(--bs-secondary-bg-subtle) !important}.bg-success-subtle{background-color:var(--bs-success-bg-subtle) !important}.bg-info-subtle{background-color:var(--bs-info-bg-subtle) !important}.bg-warning-subtle{background-color:var(--bs-warning-bg-subtle) !important}.bg-danger-subtle{background-color:var(--bs-danger-bg-subtle) !important}.bg-light-subtle{background-color:var(--bs-light-bg-subtle) !important}.bg-dark-subtle{background-color:var(--bs-dark-bg-subtle) !important}.bg-gradient{background-image:var(--bs-gradient) !important}.user-select-all{user-select:all !important}.user-select-auto{user-select:auto !important}.user-select-none{user-select:none !important}.pe-none{pointer-events:none !important}.pe-auto{pointer-events:auto !important}.rounded{border-radius:var(--bs-border-radius) !important}.rounded-0{border-radius:0 !important}.rounded-1{border-radius:var(--bs-border-radius-sm) !important}.rounded-2{border-radius:var(--bs-border-radius) !important}.rounded-3{border-radius:var(--bs-border-radius-lg) !important}.rounded-4{border-radius:var(--bs-border-radius-xl) !important}.rounded-5{border-radius:var(--bs-border-radius-xxl) !important}.rounded-circle{border-radius:50% !important}.rounded-pill{border-radius:var(--bs-border-radius-pill) !important}.rounded-top{border-top-left-radius:var(--bs-border-radius) !important;border-top-right-radius:var(--bs-border-radius) !important}.rounded-top-0{border-top-left-radius:0 !important;border-top-right-radius:0 !important}.rounded-top-1{border-top-left-radius:var(--bs-border-radius-sm) !important;border-top-right-radius:var(--bs-border-radius-sm) !important}.rounded-top-2{border-top-left-radius:var(--bs-border-radius) !important;border-top-right-radius:var(--bs-border-radius) !important}.rounded-top-3{border-top-left-radius:var(--bs-border-radius-lg) !important;border-top-right-radius:var(--bs-border-radius-lg) !important}.rounded-top-4{border-top-left-radius:var(--bs-border-radius-xl) !important;border-top-right-radius:var(--bs-border-radius-xl) !important}.rounded-top-5{border-top-left-radius:var(--bs-border-radius-xxl) !important;border-top-right-radius:var(--bs-border-radius-xxl) !important}.rounded-top-circle{border-top-left-radius:50% !important;border-top-right-radius:50% !important}.rounded-top-pill{border-top-left-radius:var(--bs-border-radius-pill) !important;border-top-right-radius:var(--bs-border-radius-pill) !important}.rounded-end{border-top-right-radius:var(--bs-border-radius) !important;border-bottom-right-radius:var(--bs-border-radius) !important}.rounded-end-0{border-top-right-radius:0 !important;border-bottom-right-radius:0 !important}.rounded-end-1{border-top-right-radius:var(--bs-border-radius-sm) !important;border-bottom-right-radius:var(--bs-border-radius-sm) !important}.rounded-end-2{border-top-right-radius:var(--bs-border-radius) !important;border-bottom-right-radius:var(--bs-border-radius) !important}.rounded-end-3{border-top-right-radius:var(--bs-border-radius-lg) !important;border-bottom-right-radius:var(--bs-border-radius-lg) !important}.rounded-end-4{border-top-right-radius:var(--bs-border-radius-xl) !important;border-bottom-right-radius:var(--bs-border-radius-xl) !important}.rounded-end-5{border-top-right-radius:var(--bs-border-radius-xxl) !important;border-bottom-right-radius:var(--bs-border-radius-xxl) !important}.rounded-end-circle{border-top-right-radius:50% !important;border-bottom-right-radius:50% !important}.rounded-end-pill{border-top-right-radius:var(--bs-border-radius-pill) !important;border-bottom-right-radius:var(--bs-border-radius-pill) !important}.rounded-bottom{border-bottom-right-radius:var(--bs-border-radius) !important;border-bottom-left-radius:var(--bs-border-radius) !important}.rounded-bottom-0{border-bottom-right-radius:0 !important;border-bottom-left-radius:0 !important}.rounded-bottom-1{border-bottom-right-radius:var(--bs-border-radius-sm) !important;border-bottom-left-radius:var(--bs-border-radius-sm) !important}.rounded-bottom-2{border-bottom-right-radius:var(--bs-border-radius) !important;border-bottom-left-radius:var(--bs-border-radius) !important}.rounded-bottom-3{border-bottom-right-radius:var(--bs-border-radius-lg) !important;border-bottom-left-radius:var(--bs-border-radius-lg) !important}.rounded-bottom-4{border-bottom-right-radius:var(--bs-border-radius-xl) !important;border-bottom-left-radius:var(--bs-border-radius-xl) !important}.rounded-bottom-5{border-bottom-right-radius:var(--bs-border-radius-xxl) !important;border-bottom-left-radius:var(--bs-border-radius-xxl) !important}.rounded-bottom-circle{border-bottom-right-radius:50% !important;border-bottom-left-radius:50% !important}.rounded-bottom-pill{border-bottom-right-radius:var(--bs-border-radius-pill) !important;border-bottom-left-radius:var(--bs-border-radius-pill) !important}.rounded-start{border-bottom-left-radius:var(--bs-border-radius) !important;border-top-left-radius:var(--bs-border-radius) !important}.rounded-start-0{border-bottom-left-radius:0 !important;border-top-left-radius:0 !important}.rounded-start-1{border-bottom-left-radius:var(--bs-border-radius-sm) !important;border-top-left-radius:var(--bs-border-radius-sm) !important}.rounded-start-2{border-bottom-left-radius:var(--bs-border-radius) !important;border-top-left-radius:var(--bs-border-radius) !important}.rounded-start-3{border-bottom-left-radius:var(--bs-border-radius-lg) !important;border-top-left-radius:var(--bs-border-radius-lg) !important}.rounded-start-4{border-bottom-left-radius:var(--bs-border-radius-xl) !important;border-top-left-radius:var(--bs-border-radius-xl) !important}.rounded-start-5{border-bottom-left-radius:var(--bs-border-radius-xxl) !important;border-top-left-radius:var(--bs-border-radius-xxl) !important}.rounded-start-circle{border-bottom-left-radius:50% !important;border-top-left-radius:50% !important}.rounded-start-pill{border-bottom-left-radius:var(--bs-border-radius-pill) !important;border-top-left-radius:var(--bs-border-radius-pill) !important}.visible{visibility:visible !important}.invisible{visibility:hidden !important}.z-n1{z-index:-1 !important}.z-0{z-index:0 !important}.z-1{z-index:1 !important}.z-2{z-index:2 !important}.z-3{z-index:3 !important}@media(min-width: 576px){.float-sm-start{float:left !important}.float-sm-end{float:right !important}.float-sm-none{float:none !important}.object-fit-sm-contain{object-fit:contain !important}.object-fit-sm-cover{object-fit:cover !important}.object-fit-sm-fill{object-fit:fill !important}.object-fit-sm-scale{object-fit:scale-down !important}.object-fit-sm-none{object-fit:none !important}.d-sm-inline{display:inline !important}.d-sm-inline-block{display:inline-block !important}.d-sm-block{display:block !important}.d-sm-grid{display:grid !important}.d-sm-inline-grid{display:inline-grid !important}.d-sm-table{display:table !important}.d-sm-table-row{display:table-row !important}.d-sm-table-cell{display:table-cell !important}.d-sm-flex{display:flex !important}.d-sm-inline-flex{display:inline-flex !important}.d-sm-none{display:none !important}.flex-sm-fill{flex:1 1 auto !important}.flex-sm-row{flex-direction:row !important}.flex-sm-column{flex-direction:column !important}.flex-sm-row-reverse{flex-direction:row-reverse !important}.flex-sm-column-reverse{flex-direction:column-reverse !important}.flex-sm-grow-0{flex-grow:0 !important}.flex-sm-grow-1{flex-grow:1 !important}.flex-sm-shrink-0{flex-shrink:0 !important}.flex-sm-shrink-1{flex-shrink:1 !important}.flex-sm-wrap{flex-wrap:wrap !important}.flex-sm-nowrap{flex-wrap:nowrap !important}.flex-sm-wrap-reverse{flex-wrap:wrap-reverse !important}.justify-content-sm-start{justify-content:flex-start !important}.justify-content-sm-end{justify-content:flex-end !important}.justify-content-sm-center{justify-content:center !important}.justify-content-sm-between{justify-content:space-between !important}.justify-content-sm-around{justify-content:space-around !important}.justify-content-sm-evenly{justify-content:space-evenly !important}.align-items-sm-start{align-items:flex-start !important}.align-items-sm-end{align-items:flex-end !important}.align-items-sm-center{align-items:center !important}.align-items-sm-baseline{align-items:baseline !important}.align-items-sm-stretch{align-items:stretch !important}.align-content-sm-start{align-content:flex-start !important}.align-content-sm-end{align-content:flex-end !important}.align-content-sm-center{align-content:center !important}.align-content-sm-between{align-content:space-between !important}.align-content-sm-around{align-content:space-around !important}.align-content-sm-stretch{align-content:stretch !important}.align-self-sm-auto{align-self:auto !important}.align-self-sm-start{align-self:flex-start !important}.align-self-sm-end{align-self:flex-end !important}.align-self-sm-center{align-self:center !important}.align-self-sm-baseline{align-self:baseline !important}.align-self-sm-stretch{align-self:stretch !important}.order-sm-first{order:-1 !important}.order-sm-0{order:0 !important}.order-sm-1{order:1 !important}.order-sm-2{order:2 !important}.order-sm-3{order:3 !important}.order-sm-4{order:4 !important}.order-sm-5{order:5 !important}.order-sm-last{order:6 !important}.m-sm-0{margin:0 !important}.m-sm-1{margin:.225rem !important}.m-sm-2{margin:.45rem !important}.m-sm-3{margin:.9rem !important}.m-sm-4{margin:1.35rem !important}.m-sm-5{margin:1.8rem !important}.m-sm-6{margin:2.25rem !important}.m-sm-7{margin:2.7rem !important}.m-sm-8{margin:3.15rem !important}.m-sm-9{margin:3.6rem !important}.m-sm-tiny{margin:.135rem !important}.m-sm-auto{margin:auto !important}.mx-sm-0{margin-right:0 !important;margin-left:0 !important}.mx-sm-1{margin-right:.225rem !important;margin-left:.225rem !important}.mx-sm-2{margin-right:.45rem !important;margin-left:.45rem !important}.mx-sm-3{margin-right:.9rem !important;margin-left:.9rem !important}.mx-sm-4{margin-right:1.35rem !important;margin-left:1.35rem !important}.mx-sm-5{margin-right:1.8rem !important;margin-left:1.8rem !important}.mx-sm-6{margin-right:2.25rem !important;margin-left:2.25rem !important}.mx-sm-7{margin-right:2.7rem !important;margin-left:2.7rem !important}.mx-sm-8{margin-right:3.15rem !important;margin-left:3.15rem !important}.mx-sm-9{margin-right:3.6rem !important;margin-left:3.6rem !important}.mx-sm-tiny{margin-right:.135rem !important;margin-left:.135rem !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:.225rem !important;margin-bottom:.225rem !important}.my-sm-2{margin-top:.45rem !important;margin-bottom:.45rem !important}.my-sm-3{margin-top:.9rem !important;margin-bottom:.9rem !important}.my-sm-4{margin-top:1.35rem !important;margin-bottom:1.35rem !important}.my-sm-5{margin-top:1.8rem !important;margin-bottom:1.8rem !important}.my-sm-6{margin-top:2.25rem !important;margin-bottom:2.25rem !important}.my-sm-7{margin-top:2.7rem !important;margin-bottom:2.7rem !important}.my-sm-8{margin-top:3.15rem !important;margin-bottom:3.15rem !important}.my-sm-9{margin-top:3.6rem !important;margin-bottom:3.6rem !important}.my-sm-tiny{margin-top:.135rem !important;margin-bottom:.135rem !important}.my-sm-auto{margin-top:auto !important;margin-bottom:auto !important}.mt-sm-0{margin-top:0 !important}.mt-sm-1{margin-top:.225rem !important}.mt-sm-2{margin-top:.45rem !important}.mt-sm-3{margin-top:.9rem !important}.mt-sm-4{margin-top:1.35rem !important}.mt-sm-5{margin-top:1.8rem !important}.mt-sm-6{margin-top:2.25rem !important}.mt-sm-7{margin-top:2.7rem !important}.mt-sm-8{margin-top:3.15rem !important}.mt-sm-9{margin-top:3.6rem !important}.mt-sm-tiny{margin-top:.135rem !important}.mt-sm-auto{margin-top:auto !important}.me-sm-0{margin-right:0 !important}.me-sm-1{margin-right:.225rem !important}.me-sm-2{margin-right:.45rem !important}.me-sm-3{margin-right:.9rem !important}.me-sm-4{margin-right:1.35rem !important}.me-sm-5{margin-right:1.8rem !important}.me-sm-6{margin-right:2.25rem !important}.me-sm-7{margin-right:2.7rem !important}.me-sm-8{margin-right:3.15rem !important}.me-sm-9{margin-right:3.6rem !important}.me-sm-tiny{margin-right:.135rem !important}.me-sm-auto{margin-right:auto !important}.mb-sm-0{margin-bottom:0 !important}.mb-sm-1{margin-bottom:.225rem !important}.mb-sm-2{margin-bottom:.45rem !important}.mb-sm-3{margin-bottom:.9rem !important}.mb-sm-4{margin-bottom:1.35rem !important}.mb-sm-5{margin-bottom:1.8rem !important}.mb-sm-6{margin-bottom:2.25rem !important}.mb-sm-7{margin-bottom:2.7rem !important}.mb-sm-8{margin-bottom:3.15rem !important}.mb-sm-9{margin-bottom:3.6rem !important}.mb-sm-tiny{margin-bottom:.135rem !important}.mb-sm-auto{margin-bottom:auto !important}.ms-sm-0{margin-left:0 !important}.ms-sm-1{margin-left:.225rem !important}.ms-sm-2{margin-left:.45rem !important}.ms-sm-3{margin-left:.9rem !important}.ms-sm-4{margin-left:1.35rem !important}.ms-sm-5{margin-left:1.8rem !important}.ms-sm-6{margin-left:2.25rem !important}.ms-sm-7{margin-left:2.7rem !important}.ms-sm-8{margin-left:3.15rem !important}.ms-sm-9{margin-left:3.6rem !important}.ms-sm-tiny{margin-left:.135rem !important}.ms-sm-auto{margin-left:auto !important}.m-sm-n1{margin:-0.225rem !important}.m-sm-n2{margin:-0.45rem !important}.m-sm-n3{margin:-0.9rem !important}.m-sm-n4{margin:-1.35rem !important}.m-sm-n5{margin:-1.8rem !important}.m-sm-n6{margin:-2.25rem !important}.m-sm-n7{margin:-2.7rem !important}.m-sm-n8{margin:-3.15rem !important}.m-sm-n9{margin:-3.6rem !important}.m-sm-ntiny{margin:-0.135rem !important}.mx-sm-n1{margin-right:-0.225rem !important;margin-left:-0.225rem !important}.mx-sm-n2{margin-right:-0.45rem !important;margin-left:-0.45rem !important}.mx-sm-n3{margin-right:-0.9rem !important;margin-left:-0.9rem !important}.mx-sm-n4{margin-right:-1.35rem !important;margin-left:-1.35rem !important}.mx-sm-n5{margin-right:-1.8rem !important;margin-left:-1.8rem !important}.mx-sm-n6{margin-right:-2.25rem !important;margin-left:-2.25rem !important}.mx-sm-n7{margin-right:-2.7rem !important;margin-left:-2.7rem !important}.mx-sm-n8{margin-right:-3.15rem !important;margin-left:-3.15rem !important}.mx-sm-n9{margin-right:-3.6rem !important;margin-left:-3.6rem !important}.mx-sm-ntiny{margin-right:-0.135rem !important;margin-left:-0.135rem !important}.my-sm-n1{margin-top:-0.225rem !important;margin-bottom:-0.225rem !important}.my-sm-n2{margin-top:-0.45rem !important;margin-bottom:-0.45rem !important}.my-sm-n3{margin-top:-0.9rem !important;margin-bottom:-0.9rem !important}.my-sm-n4{margin-top:-1.35rem !important;margin-bottom:-1.35rem !important}.my-sm-n5{margin-top:-1.8rem !important;margin-bottom:-1.8rem !important}.my-sm-n6{margin-top:-2.25rem !important;margin-bottom:-2.25rem !important}.my-sm-n7{margin-top:-2.7rem !important;margin-bottom:-2.7rem !important}.my-sm-n8{margin-top:-3.15rem !important;margin-bottom:-3.15rem !important}.my-sm-n9{margin-top:-3.6rem !important;margin-bottom:-3.6rem !important}.my-sm-ntiny{margin-top:-0.135rem !important;margin-bottom:-0.135rem !important}.mt-sm-n1{margin-top:-0.225rem !important}.mt-sm-n2{margin-top:-0.45rem !important}.mt-sm-n3{margin-top:-0.9rem !important}.mt-sm-n4{margin-top:-1.35rem !important}.mt-sm-n5{margin-top:-1.8rem !important}.mt-sm-n6{margin-top:-2.25rem !important}.mt-sm-n7{margin-top:-2.7rem !important}.mt-sm-n8{margin-top:-3.15rem !important}.mt-sm-n9{margin-top:-3.6rem !important}.mt-sm-ntiny{margin-top:-0.135rem !important}.me-sm-n1{margin-right:-0.225rem !important}.me-sm-n2{margin-right:-0.45rem !important}.me-sm-n3{margin-right:-0.9rem !important}.me-sm-n4{margin-right:-1.35rem !important}.me-sm-n5{margin-right:-1.8rem !important}.me-sm-n6{margin-right:-2.25rem !important}.me-sm-n7{margin-right:-2.7rem !important}.me-sm-n8{margin-right:-3.15rem !important}.me-sm-n9{margin-right:-3.6rem !important}.me-sm-ntiny{margin-right:-0.135rem !important}.mb-sm-n1{margin-bottom:-0.225rem !important}.mb-sm-n2{margin-bottom:-0.45rem !important}.mb-sm-n3{margin-bottom:-0.9rem !important}.mb-sm-n4{margin-bottom:-1.35rem !important}.mb-sm-n5{margin-bottom:-1.8rem !important}.mb-sm-n6{margin-bottom:-2.25rem !important}.mb-sm-n7{margin-bottom:-2.7rem !important}.mb-sm-n8{margin-bottom:-3.15rem !important}.mb-sm-n9{margin-bottom:-3.6rem !important}.mb-sm-ntiny{margin-bottom:-0.135rem !important}.ms-sm-n1{margin-left:-0.225rem !important}.ms-sm-n2{margin-left:-0.45rem !important}.ms-sm-n3{margin-left:-0.9rem !important}.ms-sm-n4{margin-left:-1.35rem !important}.ms-sm-n5{margin-left:-1.8rem !important}.ms-sm-n6{margin-left:-2.25rem !important}.ms-sm-n7{margin-left:-2.7rem !important}.ms-sm-n8{margin-left:-3.15rem !important}.ms-sm-n9{margin-left:-3.6rem !important}.ms-sm-ntiny{margin-left:-0.135rem !important}.p-sm-0{padding:0 !important}.p-sm-1{padding:.225rem !important}.p-sm-2{padding:.45rem !important}.p-sm-3{padding:.9rem !important}.p-sm-4{padding:1.35rem !important}.p-sm-5{padding:1.8rem !important}.p-sm-6{padding:2.25rem !important}.p-sm-7{padding:2.7rem !important}.p-sm-8{padding:3.15rem !important}.p-sm-9{padding:3.6rem !important}.p-sm-tiny{padding:.135rem !important}.px-sm-0{padding-right:0 !important;padding-left:0 !important}.px-sm-1{padding-right:.225rem !important;padding-left:.225rem !important}.px-sm-2{padding-right:.45rem !important;padding-left:.45rem !important}.px-sm-3{padding-right:.9rem !important;padding-left:.9rem !important}.px-sm-4{padding-right:1.35rem !important;padding-left:1.35rem !important}.px-sm-5{padding-right:1.8rem !important;padding-left:1.8rem !important}.px-sm-6{padding-right:2.25rem !important;padding-left:2.25rem !important}.px-sm-7{padding-right:2.7rem !important;padding-left:2.7rem !important}.px-sm-8{padding-right:3.15rem !important;padding-left:3.15rem !important}.px-sm-9{padding-right:3.6rem !important;padding-left:3.6rem !important}.px-sm-tiny{padding-right:.135rem !important;padding-left:.135rem !important}.py-sm-0{padding-top:0 !important;padding-bottom:0 !important}.py-sm-1{padding-top:.225rem !important;padding-bottom:.225rem !important}.py-sm-2{padding-top:.45rem !important;padding-bottom:.45rem !important}.py-sm-3{padding-top:.9rem !important;padding-bottom:.9rem !important}.py-sm-4{padding-top:1.35rem !important;padding-bottom:1.35rem !important}.py-sm-5{padding-top:1.8rem !important;padding-bottom:1.8rem !important}.py-sm-6{padding-top:2.25rem !important;padding-bottom:2.25rem !important}.py-sm-7{padding-top:2.7rem !important;padding-bottom:2.7rem !important}.py-sm-8{padding-top:3.15rem !important;padding-bottom:3.15rem !important}.py-sm-9{padding-top:3.6rem !important;padding-bottom:3.6rem !important}.py-sm-tiny{padding-top:.135rem !important;padding-bottom:.135rem !important}.pt-sm-0{padding-top:0 !important}.pt-sm-1{padding-top:.225rem !important}.pt-sm-2{padding-top:.45rem !important}.pt-sm-3{padding-top:.9rem !important}.pt-sm-4{padding-top:1.35rem !important}.pt-sm-5{padding-top:1.8rem !important}.pt-sm-6{padding-top:2.25rem !important}.pt-sm-7{padding-top:2.7rem !important}.pt-sm-8{padding-top:3.15rem !important}.pt-sm-9{padding-top:3.6rem !important}.pt-sm-tiny{padding-top:.135rem !important}.pe-sm-0{padding-right:0 !important}.pe-sm-1{padding-right:.225rem !important}.pe-sm-2{padding-right:.45rem !important}.pe-sm-3{padding-right:.9rem !important}.pe-sm-4{padding-right:1.35rem !important}.pe-sm-5{padding-right:1.8rem !important}.pe-sm-6{padding-right:2.25rem !important}.pe-sm-7{padding-right:2.7rem !important}.pe-sm-8{padding-right:3.15rem !important}.pe-sm-9{padding-right:3.6rem !important}.pe-sm-tiny{padding-right:.135rem !important}.pb-sm-0{padding-bottom:0 !important}.pb-sm-1{padding-bottom:.225rem !important}.pb-sm-2{padding-bottom:.45rem !important}.pb-sm-3{padding-bottom:.9rem !important}.pb-sm-4{padding-bottom:1.35rem !important}.pb-sm-5{padding-bottom:1.8rem !important}.pb-sm-6{padding-bottom:2.25rem !important}.pb-sm-7{padding-bottom:2.7rem !important}.pb-sm-8{padding-bottom:3.15rem !important}.pb-sm-9{padding-bottom:3.6rem !important}.pb-sm-tiny{padding-bottom:.135rem !important}.ps-sm-0{padding-left:0 !important}.ps-sm-1{padding-left:.225rem !important}.ps-sm-2{padding-left:.45rem !important}.ps-sm-3{padding-left:.9rem !important}.ps-sm-4{padding-left:1.35rem !important}.ps-sm-5{padding-left:1.8rem !important}.ps-sm-6{padding-left:2.25rem !important}.ps-sm-7{padding-left:2.7rem !important}.ps-sm-8{padding-left:3.15rem !important}.ps-sm-9{padding-left:3.6rem !important}.ps-sm-tiny{padding-left:.135rem !important}.gap-sm-0{gap:0 !important}.gap-sm-1{gap:.225rem !important}.gap-sm-2{gap:.45rem !important}.gap-sm-3{gap:.9rem !important}.gap-sm-4{gap:1.35rem !important}.gap-sm-5{gap:1.8rem !important}.gap-sm-6{gap:2.25rem !important}.gap-sm-7{gap:2.7rem !important}.gap-sm-8{gap:3.15rem !important}.gap-sm-9{gap:3.6rem !important}.gap-sm-tiny{gap:.135rem !important}.row-gap-sm-0{row-gap:0 !important}.row-gap-sm-1{row-gap:.225rem !important}.row-gap-sm-2{row-gap:.45rem !important}.row-gap-sm-3{row-gap:.9rem !important}.row-gap-sm-4{row-gap:1.35rem !important}.row-gap-sm-5{row-gap:1.8rem !important}.row-gap-sm-6{row-gap:2.25rem !important}.row-gap-sm-7{row-gap:2.7rem !important}.row-gap-sm-8{row-gap:3.15rem !important}.row-gap-sm-9{row-gap:3.6rem !important}.row-gap-sm-tiny{row-gap:.135rem !important}.column-gap-sm-0{column-gap:0 !important}.column-gap-sm-1{column-gap:.225rem !important}.column-gap-sm-2{column-gap:.45rem !important}.column-gap-sm-3{column-gap:.9rem !important}.column-gap-sm-4{column-gap:1.35rem !important}.column-gap-sm-5{column-gap:1.8rem !important}.column-gap-sm-6{column-gap:2.25rem !important}.column-gap-sm-7{column-gap:2.7rem !important}.column-gap-sm-8{column-gap:3.15rem !important}.column-gap-sm-9{column-gap:3.6rem !important}.column-gap-sm-tiny{column-gap:.135rem !important}.text-sm-start{text-align:left !important}.text-sm-end{text-align:right !important}.text-sm-center{text-align:center !important}}@media(min-width: 768px){.float-md-start{float:left !important}.float-md-end{float:right !important}.float-md-none{float:none !important}.object-fit-md-contain{object-fit:contain !important}.object-fit-md-cover{object-fit:cover !important}.object-fit-md-fill{object-fit:fill !important}.object-fit-md-scale{object-fit:scale-down !important}.object-fit-md-none{object-fit:none !important}.d-md-inline{display:inline !important}.d-md-inline-block{display:inline-block !important}.d-md-block{display:block !important}.d-md-grid{display:grid !important}.d-md-inline-grid{display:inline-grid !important}.d-md-table{display:table !important}.d-md-table-row{display:table-row !important}.d-md-table-cell{display:table-cell !important}.d-md-flex{display:flex !important}.d-md-inline-flex{display:inline-flex !important}.d-md-none{display:none !important}.flex-md-fill{flex:1 1 auto !important}.flex-md-row{flex-direction:row !important}.flex-md-column{flex-direction:column !important}.flex-md-row-reverse{flex-direction:row-reverse !important}.flex-md-column-reverse{flex-direction:column-reverse !important}.flex-md-grow-0{flex-grow:0 !important}.flex-md-grow-1{flex-grow:1 !important}.flex-md-shrink-0{flex-shrink:0 !important}.flex-md-shrink-1{flex-shrink:1 !important}.flex-md-wrap{flex-wrap:wrap !important}.flex-md-nowrap{flex-wrap:nowrap !important}.flex-md-wrap-reverse{flex-wrap:wrap-reverse !important}.justify-content-md-start{justify-content:flex-start !important}.justify-content-md-end{justify-content:flex-end !important}.justify-content-md-center{justify-content:center !important}.justify-content-md-between{justify-content:space-between !important}.justify-content-md-around{justify-content:space-around !important}.justify-content-md-evenly{justify-content:space-evenly !important}.align-items-md-start{align-items:flex-start !important}.align-items-md-end{align-items:flex-end !important}.align-items-md-center{align-items:center !important}.align-items-md-baseline{align-items:baseline !important}.align-items-md-stretch{align-items:stretch !important}.align-content-md-start{align-content:flex-start !important}.align-content-md-end{align-content:flex-end !important}.align-content-md-center{align-content:center !important}.align-content-md-between{align-content:space-between !important}.align-content-md-around{align-content:space-around !important}.align-content-md-stretch{align-content:stretch !important}.align-self-md-auto{align-self:auto !important}.align-self-md-start{align-self:flex-start !important}.align-self-md-end{align-self:flex-end !important}.align-self-md-center{align-self:center !important}.align-self-md-baseline{align-self:baseline !important}.align-self-md-stretch{align-self:stretch !important}.order-md-first{order:-1 !important}.order-md-0{order:0 !important}.order-md-1{order:1 !important}.order-md-2{order:2 !important}.order-md-3{order:3 !important}.order-md-4{order:4 !important}.order-md-5{order:5 !important}.order-md-last{order:6 !important}.m-md-0{margin:0 !important}.m-md-1{margin:.225rem !important}.m-md-2{margin:.45rem !important}.m-md-3{margin:.9rem !important}.m-md-4{margin:1.35rem !important}.m-md-5{margin:1.8rem !important}.m-md-6{margin:2.25rem !important}.m-md-7{margin:2.7rem !important}.m-md-8{margin:3.15rem !important}.m-md-9{margin:3.6rem !important}.m-md-tiny{margin:.135rem !important}.m-md-auto{margin:auto !important}.mx-md-0{margin-right:0 !important;margin-left:0 !important}.mx-md-1{margin-right:.225rem !important;margin-left:.225rem !important}.mx-md-2{margin-right:.45rem !important;margin-left:.45rem !important}.mx-md-3{margin-right:.9rem !important;margin-left:.9rem !important}.mx-md-4{margin-right:1.35rem !important;margin-left:1.35rem !important}.mx-md-5{margin-right:1.8rem !important;margin-left:1.8rem !important}.mx-md-6{margin-right:2.25rem !important;margin-left:2.25rem !important}.mx-md-7{margin-right:2.7rem !important;margin-left:2.7rem !important}.mx-md-8{margin-right:3.15rem !important;margin-left:3.15rem !important}.mx-md-9{margin-right:3.6rem !important;margin-left:3.6rem !important}.mx-md-tiny{margin-right:.135rem !important;margin-left:.135rem !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:.225rem !important;margin-bottom:.225rem !important}.my-md-2{margin-top:.45rem !important;margin-bottom:.45rem !important}.my-md-3{margin-top:.9rem !important;margin-bottom:.9rem !important}.my-md-4{margin-top:1.35rem !important;margin-bottom:1.35rem !important}.my-md-5{margin-top:1.8rem !important;margin-bottom:1.8rem !important}.my-md-6{margin-top:2.25rem !important;margin-bottom:2.25rem !important}.my-md-7{margin-top:2.7rem !important;margin-bottom:2.7rem !important}.my-md-8{margin-top:3.15rem !important;margin-bottom:3.15rem !important}.my-md-9{margin-top:3.6rem !important;margin-bottom:3.6rem !important}.my-md-tiny{margin-top:.135rem !important;margin-bottom:.135rem !important}.my-md-auto{margin-top:auto !important;margin-bottom:auto !important}.mt-md-0{margin-top:0 !important}.mt-md-1{margin-top:.225rem !important}.mt-md-2{margin-top:.45rem !important}.mt-md-3{margin-top:.9rem !important}.mt-md-4{margin-top:1.35rem !important}.mt-md-5{margin-top:1.8rem !important}.mt-md-6{margin-top:2.25rem !important}.mt-md-7{margin-top:2.7rem !important}.mt-md-8{margin-top:3.15rem !important}.mt-md-9{margin-top:3.6rem !important}.mt-md-tiny{margin-top:.135rem !important}.mt-md-auto{margin-top:auto !important}.me-md-0{margin-right:0 !important}.me-md-1{margin-right:.225rem !important}.me-md-2{margin-right:.45rem !important}.me-md-3{margin-right:.9rem !important}.me-md-4{margin-right:1.35rem !important}.me-md-5{margin-right:1.8rem !important}.me-md-6{margin-right:2.25rem !important}.me-md-7{margin-right:2.7rem !important}.me-md-8{margin-right:3.15rem !important}.me-md-9{margin-right:3.6rem !important}.me-md-tiny{margin-right:.135rem !important}.me-md-auto{margin-right:auto !important}.mb-md-0{margin-bottom:0 !important}.mb-md-1{margin-bottom:.225rem !important}.mb-md-2{margin-bottom:.45rem !important}.mb-md-3{margin-bottom:.9rem !important}.mb-md-4{margin-bottom:1.35rem !important}.mb-md-5{margin-bottom:1.8rem !important}.mb-md-6{margin-bottom:2.25rem !important}.mb-md-7{margin-bottom:2.7rem !important}.mb-md-8{margin-bottom:3.15rem !important}.mb-md-9{margin-bottom:3.6rem !important}.mb-md-tiny{margin-bottom:.135rem !important}.mb-md-auto{margin-bottom:auto !important}.ms-md-0{margin-left:0 !important}.ms-md-1{margin-left:.225rem !important}.ms-md-2{margin-left:.45rem !important}.ms-md-3{margin-left:.9rem !important}.ms-md-4{margin-left:1.35rem !important}.ms-md-5{margin-left:1.8rem !important}.ms-md-6{margin-left:2.25rem !important}.ms-md-7{margin-left:2.7rem !important}.ms-md-8{margin-left:3.15rem !important}.ms-md-9{margin-left:3.6rem !important}.ms-md-tiny{margin-left:.135rem !important}.ms-md-auto{margin-left:auto !important}.m-md-n1{margin:-0.225rem !important}.m-md-n2{margin:-0.45rem !important}.m-md-n3{margin:-0.9rem !important}.m-md-n4{margin:-1.35rem !important}.m-md-n5{margin:-1.8rem !important}.m-md-n6{margin:-2.25rem !important}.m-md-n7{margin:-2.7rem !important}.m-md-n8{margin:-3.15rem !important}.m-md-n9{margin:-3.6rem !important}.m-md-ntiny{margin:-0.135rem !important}.mx-md-n1{margin-right:-0.225rem !important;margin-left:-0.225rem !important}.mx-md-n2{margin-right:-0.45rem !important;margin-left:-0.45rem !important}.mx-md-n3{margin-right:-0.9rem !important;margin-left:-0.9rem !important}.mx-md-n4{margin-right:-1.35rem !important;margin-left:-1.35rem !important}.mx-md-n5{margin-right:-1.8rem !important;margin-left:-1.8rem !important}.mx-md-n6{margin-right:-2.25rem !important;margin-left:-2.25rem !important}.mx-md-n7{margin-right:-2.7rem !important;margin-left:-2.7rem !important}.mx-md-n8{margin-right:-3.15rem !important;margin-left:-3.15rem !important}.mx-md-n9{margin-right:-3.6rem !important;margin-left:-3.6rem !important}.mx-md-ntiny{margin-right:-0.135rem !important;margin-left:-0.135rem !important}.my-md-n1{margin-top:-0.225rem !important;margin-bottom:-0.225rem !important}.my-md-n2{margin-top:-0.45rem !important;margin-bottom:-0.45rem !important}.my-md-n3{margin-top:-0.9rem !important;margin-bottom:-0.9rem !important}.my-md-n4{margin-top:-1.35rem !important;margin-bottom:-1.35rem !important}.my-md-n5{margin-top:-1.8rem !important;margin-bottom:-1.8rem !important}.my-md-n6{margin-top:-2.25rem !important;margin-bottom:-2.25rem !important}.my-md-n7{margin-top:-2.7rem !important;margin-bottom:-2.7rem !important}.my-md-n8{margin-top:-3.15rem !important;margin-bottom:-3.15rem !important}.my-md-n9{margin-top:-3.6rem !important;margin-bottom:-3.6rem !important}.my-md-ntiny{margin-top:-0.135rem !important;margin-bottom:-0.135rem !important}.mt-md-n1{margin-top:-0.225rem !important}.mt-md-n2{margin-top:-0.45rem !important}.mt-md-n3{margin-top:-0.9rem !important}.mt-md-n4{margin-top:-1.35rem !important}.mt-md-n5{margin-top:-1.8rem !important}.mt-md-n6{margin-top:-2.25rem !important}.mt-md-n7{margin-top:-2.7rem !important}.mt-md-n8{margin-top:-3.15rem !important}.mt-md-n9{margin-top:-3.6rem !important}.mt-md-ntiny{margin-top:-0.135rem !important}.me-md-n1{margin-right:-0.225rem !important}.me-md-n2{margin-right:-0.45rem !important}.me-md-n3{margin-right:-0.9rem !important}.me-md-n4{margin-right:-1.35rem !important}.me-md-n5{margin-right:-1.8rem !important}.me-md-n6{margin-right:-2.25rem !important}.me-md-n7{margin-right:-2.7rem !important}.me-md-n8{margin-right:-3.15rem !important}.me-md-n9{margin-right:-3.6rem !important}.me-md-ntiny{margin-right:-0.135rem !important}.mb-md-n1{margin-bottom:-0.225rem !important}.mb-md-n2{margin-bottom:-0.45rem !important}.mb-md-n3{margin-bottom:-0.9rem !important}.mb-md-n4{margin-bottom:-1.35rem !important}.mb-md-n5{margin-bottom:-1.8rem !important}.mb-md-n6{margin-bottom:-2.25rem !important}.mb-md-n7{margin-bottom:-2.7rem !important}.mb-md-n8{margin-bottom:-3.15rem !important}.mb-md-n9{margin-bottom:-3.6rem !important}.mb-md-ntiny{margin-bottom:-0.135rem !important}.ms-md-n1{margin-left:-0.225rem !important}.ms-md-n2{margin-left:-0.45rem !important}.ms-md-n3{margin-left:-0.9rem !important}.ms-md-n4{margin-left:-1.35rem !important}.ms-md-n5{margin-left:-1.8rem !important}.ms-md-n6{margin-left:-2.25rem !important}.ms-md-n7{margin-left:-2.7rem !important}.ms-md-n8{margin-left:-3.15rem !important}.ms-md-n9{margin-left:-3.6rem !important}.ms-md-ntiny{margin-left:-0.135rem !important}.p-md-0{padding:0 !important}.p-md-1{padding:.225rem !important}.p-md-2{padding:.45rem !important}.p-md-3{padding:.9rem !important}.p-md-4{padding:1.35rem !important}.p-md-5{padding:1.8rem !important}.p-md-6{padding:2.25rem !important}.p-md-7{padding:2.7rem !important}.p-md-8{padding:3.15rem !important}.p-md-9{padding:3.6rem !important}.p-md-tiny{padding:.135rem !important}.px-md-0{padding-right:0 !important;padding-left:0 !important}.px-md-1{padding-right:.225rem !important;padding-left:.225rem !important}.px-md-2{padding-right:.45rem !important;padding-left:.45rem !important}.px-md-3{padding-right:.9rem !important;padding-left:.9rem !important}.px-md-4{padding-right:1.35rem !important;padding-left:1.35rem !important}.px-md-5{padding-right:1.8rem !important;padding-left:1.8rem !important}.px-md-6{padding-right:2.25rem !important;padding-left:2.25rem !important}.px-md-7{padding-right:2.7rem !important;padding-left:2.7rem !important}.px-md-8{padding-right:3.15rem !important;padding-left:3.15rem !important}.px-md-9{padding-right:3.6rem !important;padding-left:3.6rem !important}.px-md-tiny{padding-right:.135rem !important;padding-left:.135rem !important}.py-md-0{padding-top:0 !important;padding-bottom:0 !important}.py-md-1{padding-top:.225rem !important;padding-bottom:.225rem !important}.py-md-2{padding-top:.45rem !important;padding-bottom:.45rem !important}.py-md-3{padding-top:.9rem !important;padding-bottom:.9rem !important}.py-md-4{padding-top:1.35rem !important;padding-bottom:1.35rem !important}.py-md-5{padding-top:1.8rem !important;padding-bottom:1.8rem !important}.py-md-6{padding-top:2.25rem !important;padding-bottom:2.25rem !important}.py-md-7{padding-top:2.7rem !important;padding-bottom:2.7rem !important}.py-md-8{padding-top:3.15rem !important;padding-bottom:3.15rem !important}.py-md-9{padding-top:3.6rem !important;padding-bottom:3.6rem !important}.py-md-tiny{padding-top:.135rem !important;padding-bottom:.135rem !important}.pt-md-0{padding-top:0 !important}.pt-md-1{padding-top:.225rem !important}.pt-md-2{padding-top:.45rem !important}.pt-md-3{padding-top:.9rem !important}.pt-md-4{padding-top:1.35rem !important}.pt-md-5{padding-top:1.8rem !important}.pt-md-6{padding-top:2.25rem !important}.pt-md-7{padding-top:2.7rem !important}.pt-md-8{padding-top:3.15rem !important}.pt-md-9{padding-top:3.6rem !important}.pt-md-tiny{padding-top:.135rem !important}.pe-md-0{padding-right:0 !important}.pe-md-1{padding-right:.225rem !important}.pe-md-2{padding-right:.45rem !important}.pe-md-3{padding-right:.9rem !important}.pe-md-4{padding-right:1.35rem !important}.pe-md-5{padding-right:1.8rem !important}.pe-md-6{padding-right:2.25rem !important}.pe-md-7{padding-right:2.7rem !important}.pe-md-8{padding-right:3.15rem !important}.pe-md-9{padding-right:3.6rem !important}.pe-md-tiny{padding-right:.135rem !important}.pb-md-0{padding-bottom:0 !important}.pb-md-1{padding-bottom:.225rem !important}.pb-md-2{padding-bottom:.45rem !important}.pb-md-3{padding-bottom:.9rem !important}.pb-md-4{padding-bottom:1.35rem !important}.pb-md-5{padding-bottom:1.8rem !important}.pb-md-6{padding-bottom:2.25rem !important}.pb-md-7{padding-bottom:2.7rem !important}.pb-md-8{padding-bottom:3.15rem !important}.pb-md-9{padding-bottom:3.6rem !important}.pb-md-tiny{padding-bottom:.135rem !important}.ps-md-0{padding-left:0 !important}.ps-md-1{padding-left:.225rem !important}.ps-md-2{padding-left:.45rem !important}.ps-md-3{padding-left:.9rem !important}.ps-md-4{padding-left:1.35rem !important}.ps-md-5{padding-left:1.8rem !important}.ps-md-6{padding-left:2.25rem !important}.ps-md-7{padding-left:2.7rem !important}.ps-md-8{padding-left:3.15rem !important}.ps-md-9{padding-left:3.6rem !important}.ps-md-tiny{padding-left:.135rem !important}.gap-md-0{gap:0 !important}.gap-md-1{gap:.225rem !important}.gap-md-2{gap:.45rem !important}.gap-md-3{gap:.9rem !important}.gap-md-4{gap:1.35rem !important}.gap-md-5{gap:1.8rem !important}.gap-md-6{gap:2.25rem !important}.gap-md-7{gap:2.7rem !important}.gap-md-8{gap:3.15rem !important}.gap-md-9{gap:3.6rem !important}.gap-md-tiny{gap:.135rem !important}.row-gap-md-0{row-gap:0 !important}.row-gap-md-1{row-gap:.225rem !important}.row-gap-md-2{row-gap:.45rem !important}.row-gap-md-3{row-gap:.9rem !important}.row-gap-md-4{row-gap:1.35rem !important}.row-gap-md-5{row-gap:1.8rem !important}.row-gap-md-6{row-gap:2.25rem !important}.row-gap-md-7{row-gap:2.7rem !important}.row-gap-md-8{row-gap:3.15rem !important}.row-gap-md-9{row-gap:3.6rem !important}.row-gap-md-tiny{row-gap:.135rem !important}.column-gap-md-0{column-gap:0 !important}.column-gap-md-1{column-gap:.225rem !important}.column-gap-md-2{column-gap:.45rem !important}.column-gap-md-3{column-gap:.9rem !important}.column-gap-md-4{column-gap:1.35rem !important}.column-gap-md-5{column-gap:1.8rem !important}.column-gap-md-6{column-gap:2.25rem !important}.column-gap-md-7{column-gap:2.7rem !important}.column-gap-md-8{column-gap:3.15rem !important}.column-gap-md-9{column-gap:3.6rem !important}.column-gap-md-tiny{column-gap:.135rem !important}.text-md-start{text-align:left !important}.text-md-end{text-align:right !important}.text-md-center{text-align:center !important}}@media(min-width: 992px){.float-lg-start{float:left !important}.float-lg-end{float:right !important}.float-lg-none{float:none !important}.object-fit-lg-contain{object-fit:contain !important}.object-fit-lg-cover{object-fit:cover !important}.object-fit-lg-fill{object-fit:fill !important}.object-fit-lg-scale{object-fit:scale-down !important}.object-fit-lg-none{object-fit:none !important}.d-lg-inline{display:inline !important}.d-lg-inline-block{display:inline-block !important}.d-lg-block{display:block !important}.d-lg-grid{display:grid !important}.d-lg-inline-grid{display:inline-grid !important}.d-lg-table{display:table !important}.d-lg-table-row{display:table-row !important}.d-lg-table-cell{display:table-cell !important}.d-lg-flex{display:flex !important}.d-lg-inline-flex{display:inline-flex !important}.d-lg-none{display:none !important}.flex-lg-fill{flex:1 1 auto !important}.flex-lg-row{flex-direction:row !important}.flex-lg-column{flex-direction:column !important}.flex-lg-row-reverse{flex-direction:row-reverse !important}.flex-lg-column-reverse{flex-direction:column-reverse !important}.flex-lg-grow-0{flex-grow:0 !important}.flex-lg-grow-1{flex-grow:1 !important}.flex-lg-shrink-0{flex-shrink:0 !important}.flex-lg-shrink-1{flex-shrink:1 !important}.flex-lg-wrap{flex-wrap:wrap !important}.flex-lg-nowrap{flex-wrap:nowrap !important}.flex-lg-wrap-reverse{flex-wrap:wrap-reverse !important}.justify-content-lg-start{justify-content:flex-start !important}.justify-content-lg-end{justify-content:flex-end !important}.justify-content-lg-center{justify-content:center !important}.justify-content-lg-between{justify-content:space-between !important}.justify-content-lg-around{justify-content:space-around !important}.justify-content-lg-evenly{justify-content:space-evenly !important}.align-items-lg-start{align-items:flex-start !important}.align-items-lg-end{align-items:flex-end !important}.align-items-lg-center{align-items:center !important}.align-items-lg-baseline{align-items:baseline !important}.align-items-lg-stretch{align-items:stretch !important}.align-content-lg-start{align-content:flex-start !important}.align-content-lg-end{align-content:flex-end !important}.align-content-lg-center{align-content:center !important}.align-content-lg-between{align-content:space-between !important}.align-content-lg-around{align-content:space-around !important}.align-content-lg-stretch{align-content:stretch !important}.align-self-lg-auto{align-self:auto !important}.align-self-lg-start{align-self:flex-start !important}.align-self-lg-end{align-self:flex-end !important}.align-self-lg-center{align-self:center !important}.align-self-lg-baseline{align-self:baseline !important}.align-self-lg-stretch{align-self:stretch !important}.order-lg-first{order:-1 !important}.order-lg-0{order:0 !important}.order-lg-1{order:1 !important}.order-lg-2{order:2 !important}.order-lg-3{order:3 !important}.order-lg-4{order:4 !important}.order-lg-5{order:5 !important}.order-lg-last{order:6 !important}.m-lg-0{margin:0 !important}.m-lg-1{margin:.225rem !important}.m-lg-2{margin:.45rem !important}.m-lg-3{margin:.9rem !important}.m-lg-4{margin:1.35rem !important}.m-lg-5{margin:1.8rem !important}.m-lg-6{margin:2.25rem !important}.m-lg-7{margin:2.7rem !important}.m-lg-8{margin:3.15rem !important}.m-lg-9{margin:3.6rem !important}.m-lg-tiny{margin:.135rem !important}.m-lg-auto{margin:auto !important}.mx-lg-0{margin-right:0 !important;margin-left:0 !important}.mx-lg-1{margin-right:.225rem !important;margin-left:.225rem !important}.mx-lg-2{margin-right:.45rem !important;margin-left:.45rem !important}.mx-lg-3{margin-right:.9rem !important;margin-left:.9rem !important}.mx-lg-4{margin-right:1.35rem !important;margin-left:1.35rem !important}.mx-lg-5{margin-right:1.8rem !important;margin-left:1.8rem !important}.mx-lg-6{margin-right:2.25rem !important;margin-left:2.25rem !important}.mx-lg-7{margin-right:2.7rem !important;margin-left:2.7rem !important}.mx-lg-8{margin-right:3.15rem !important;margin-left:3.15rem !important}.mx-lg-9{margin-right:3.6rem !important;margin-left:3.6rem !important}.mx-lg-tiny{margin-right:.135rem !important;margin-left:.135rem !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:.225rem !important;margin-bottom:.225rem !important}.my-lg-2{margin-top:.45rem !important;margin-bottom:.45rem !important}.my-lg-3{margin-top:.9rem !important;margin-bottom:.9rem !important}.my-lg-4{margin-top:1.35rem !important;margin-bottom:1.35rem !important}.my-lg-5{margin-top:1.8rem !important;margin-bottom:1.8rem !important}.my-lg-6{margin-top:2.25rem !important;margin-bottom:2.25rem !important}.my-lg-7{margin-top:2.7rem !important;margin-bottom:2.7rem !important}.my-lg-8{margin-top:3.15rem !important;margin-bottom:3.15rem !important}.my-lg-9{margin-top:3.6rem !important;margin-bottom:3.6rem !important}.my-lg-tiny{margin-top:.135rem !important;margin-bottom:.135rem !important}.my-lg-auto{margin-top:auto !important;margin-bottom:auto !important}.mt-lg-0{margin-top:0 !important}.mt-lg-1{margin-top:.225rem !important}.mt-lg-2{margin-top:.45rem !important}.mt-lg-3{margin-top:.9rem !important}.mt-lg-4{margin-top:1.35rem !important}.mt-lg-5{margin-top:1.8rem !important}.mt-lg-6{margin-top:2.25rem !important}.mt-lg-7{margin-top:2.7rem !important}.mt-lg-8{margin-top:3.15rem !important}.mt-lg-9{margin-top:3.6rem !important}.mt-lg-tiny{margin-top:.135rem !important}.mt-lg-auto{margin-top:auto !important}.me-lg-0{margin-right:0 !important}.me-lg-1{margin-right:.225rem !important}.me-lg-2{margin-right:.45rem !important}.me-lg-3{margin-right:.9rem !important}.me-lg-4{margin-right:1.35rem !important}.me-lg-5{margin-right:1.8rem !important}.me-lg-6{margin-right:2.25rem !important}.me-lg-7{margin-right:2.7rem !important}.me-lg-8{margin-right:3.15rem !important}.me-lg-9{margin-right:3.6rem !important}.me-lg-tiny{margin-right:.135rem !important}.me-lg-auto{margin-right:auto !important}.mb-lg-0{margin-bottom:0 !important}.mb-lg-1{margin-bottom:.225rem !important}.mb-lg-2{margin-bottom:.45rem !important}.mb-lg-3{margin-bottom:.9rem !important}.mb-lg-4{margin-bottom:1.35rem !important}.mb-lg-5{margin-bottom:1.8rem !important}.mb-lg-6{margin-bottom:2.25rem !important}.mb-lg-7{margin-bottom:2.7rem !important}.mb-lg-8{margin-bottom:3.15rem !important}.mb-lg-9{margin-bottom:3.6rem !important}.mb-lg-tiny{margin-bottom:.135rem !important}.mb-lg-auto{margin-bottom:auto !important}.ms-lg-0{margin-left:0 !important}.ms-lg-1{margin-left:.225rem !important}.ms-lg-2{margin-left:.45rem !important}.ms-lg-3{margin-left:.9rem !important}.ms-lg-4{margin-left:1.35rem !important}.ms-lg-5{margin-left:1.8rem !important}.ms-lg-6{margin-left:2.25rem !important}.ms-lg-7{margin-left:2.7rem !important}.ms-lg-8{margin-left:3.15rem !important}.ms-lg-9{margin-left:3.6rem !important}.ms-lg-tiny{margin-left:.135rem !important}.ms-lg-auto{margin-left:auto !important}.m-lg-n1{margin:-0.225rem !important}.m-lg-n2{margin:-0.45rem !important}.m-lg-n3{margin:-0.9rem !important}.m-lg-n4{margin:-1.35rem !important}.m-lg-n5{margin:-1.8rem !important}.m-lg-n6{margin:-2.25rem !important}.m-lg-n7{margin:-2.7rem !important}.m-lg-n8{margin:-3.15rem !important}.m-lg-n9{margin:-3.6rem !important}.m-lg-ntiny{margin:-0.135rem !important}.mx-lg-n1{margin-right:-0.225rem !important;margin-left:-0.225rem !important}.mx-lg-n2{margin-right:-0.45rem !important;margin-left:-0.45rem !important}.mx-lg-n3{margin-right:-0.9rem !important;margin-left:-0.9rem !important}.mx-lg-n4{margin-right:-1.35rem !important;margin-left:-1.35rem !important}.mx-lg-n5{margin-right:-1.8rem !important;margin-left:-1.8rem !important}.mx-lg-n6{margin-right:-2.25rem !important;margin-left:-2.25rem !important}.mx-lg-n7{margin-right:-2.7rem !important;margin-left:-2.7rem !important}.mx-lg-n8{margin-right:-3.15rem !important;margin-left:-3.15rem !important}.mx-lg-n9{margin-right:-3.6rem !important;margin-left:-3.6rem !important}.mx-lg-ntiny{margin-right:-0.135rem !important;margin-left:-0.135rem !important}.my-lg-n1{margin-top:-0.225rem !important;margin-bottom:-0.225rem !important}.my-lg-n2{margin-top:-0.45rem !important;margin-bottom:-0.45rem !important}.my-lg-n3{margin-top:-0.9rem !important;margin-bottom:-0.9rem !important}.my-lg-n4{margin-top:-1.35rem !important;margin-bottom:-1.35rem !important}.my-lg-n5{margin-top:-1.8rem !important;margin-bottom:-1.8rem !important}.my-lg-n6{margin-top:-2.25rem !important;margin-bottom:-2.25rem !important}.my-lg-n7{margin-top:-2.7rem !important;margin-bottom:-2.7rem !important}.my-lg-n8{margin-top:-3.15rem !important;margin-bottom:-3.15rem !important}.my-lg-n9{margin-top:-3.6rem !important;margin-bottom:-3.6rem !important}.my-lg-ntiny{margin-top:-0.135rem !important;margin-bottom:-0.135rem !important}.mt-lg-n1{margin-top:-0.225rem !important}.mt-lg-n2{margin-top:-0.45rem !important}.mt-lg-n3{margin-top:-0.9rem !important}.mt-lg-n4{margin-top:-1.35rem !important}.mt-lg-n5{margin-top:-1.8rem !important}.mt-lg-n6{margin-top:-2.25rem !important}.mt-lg-n7{margin-top:-2.7rem !important}.mt-lg-n8{margin-top:-3.15rem !important}.mt-lg-n9{margin-top:-3.6rem !important}.mt-lg-ntiny{margin-top:-0.135rem !important}.me-lg-n1{margin-right:-0.225rem !important}.me-lg-n2{margin-right:-0.45rem !important}.me-lg-n3{margin-right:-0.9rem !important}.me-lg-n4{margin-right:-1.35rem !important}.me-lg-n5{margin-right:-1.8rem !important}.me-lg-n6{margin-right:-2.25rem !important}.me-lg-n7{margin-right:-2.7rem !important}.me-lg-n8{margin-right:-3.15rem !important}.me-lg-n9{margin-right:-3.6rem !important}.me-lg-ntiny{margin-right:-0.135rem !important}.mb-lg-n1{margin-bottom:-0.225rem !important}.mb-lg-n2{margin-bottom:-0.45rem !important}.mb-lg-n3{margin-bottom:-0.9rem !important}.mb-lg-n4{margin-bottom:-1.35rem !important}.mb-lg-n5{margin-bottom:-1.8rem !important}.mb-lg-n6{margin-bottom:-2.25rem !important}.mb-lg-n7{margin-bottom:-2.7rem !important}.mb-lg-n8{margin-bottom:-3.15rem !important}.mb-lg-n9{margin-bottom:-3.6rem !important}.mb-lg-ntiny{margin-bottom:-0.135rem !important}.ms-lg-n1{margin-left:-0.225rem !important}.ms-lg-n2{margin-left:-0.45rem !important}.ms-lg-n3{margin-left:-0.9rem !important}.ms-lg-n4{margin-left:-1.35rem !important}.ms-lg-n5{margin-left:-1.8rem !important}.ms-lg-n6{margin-left:-2.25rem !important}.ms-lg-n7{margin-left:-2.7rem !important}.ms-lg-n8{margin-left:-3.15rem !important}.ms-lg-n9{margin-left:-3.6rem !important}.ms-lg-ntiny{margin-left:-0.135rem !important}.p-lg-0{padding:0 !important}.p-lg-1{padding:.225rem !important}.p-lg-2{padding:.45rem !important}.p-lg-3{padding:.9rem !important}.p-lg-4{padding:1.35rem !important}.p-lg-5{padding:1.8rem !important}.p-lg-6{padding:2.25rem !important}.p-lg-7{padding:2.7rem !important}.p-lg-8{padding:3.15rem !important}.p-lg-9{padding:3.6rem !important}.p-lg-tiny{padding:.135rem !important}.px-lg-0{padding-right:0 !important;padding-left:0 !important}.px-lg-1{padding-right:.225rem !important;padding-left:.225rem !important}.px-lg-2{padding-right:.45rem !important;padding-left:.45rem !important}.px-lg-3{padding-right:.9rem !important;padding-left:.9rem !important}.px-lg-4{padding-right:1.35rem !important;padding-left:1.35rem !important}.px-lg-5{padding-right:1.8rem !important;padding-left:1.8rem !important}.px-lg-6{padding-right:2.25rem !important;padding-left:2.25rem !important}.px-lg-7{padding-right:2.7rem !important;padding-left:2.7rem !important}.px-lg-8{padding-right:3.15rem !important;padding-left:3.15rem !important}.px-lg-9{padding-right:3.6rem !important;padding-left:3.6rem !important}.px-lg-tiny{padding-right:.135rem !important;padding-left:.135rem !important}.py-lg-0{padding-top:0 !important;padding-bottom:0 !important}.py-lg-1{padding-top:.225rem !important;padding-bottom:.225rem !important}.py-lg-2{padding-top:.45rem !important;padding-bottom:.45rem !important}.py-lg-3{padding-top:.9rem !important;padding-bottom:.9rem !important}.py-lg-4{padding-top:1.35rem !important;padding-bottom:1.35rem !important}.py-lg-5{padding-top:1.8rem !important;padding-bottom:1.8rem !important}.py-lg-6{padding-top:2.25rem !important;padding-bottom:2.25rem !important}.py-lg-7{padding-top:2.7rem !important;padding-bottom:2.7rem !important}.py-lg-8{padding-top:3.15rem !important;padding-bottom:3.15rem !important}.py-lg-9{padding-top:3.6rem !important;padding-bottom:3.6rem !important}.py-lg-tiny{padding-top:.135rem !important;padding-bottom:.135rem !important}.pt-lg-0{padding-top:0 !important}.pt-lg-1{padding-top:.225rem !important}.pt-lg-2{padding-top:.45rem !important}.pt-lg-3{padding-top:.9rem !important}.pt-lg-4{padding-top:1.35rem !important}.pt-lg-5{padding-top:1.8rem !important}.pt-lg-6{padding-top:2.25rem !important}.pt-lg-7{padding-top:2.7rem !important}.pt-lg-8{padding-top:3.15rem !important}.pt-lg-9{padding-top:3.6rem !important}.pt-lg-tiny{padding-top:.135rem !important}.pe-lg-0{padding-right:0 !important}.pe-lg-1{padding-right:.225rem !important}.pe-lg-2{padding-right:.45rem !important}.pe-lg-3{padding-right:.9rem !important}.pe-lg-4{padding-right:1.35rem !important}.pe-lg-5{padding-right:1.8rem !important}.pe-lg-6{padding-right:2.25rem !important}.pe-lg-7{padding-right:2.7rem !important}.pe-lg-8{padding-right:3.15rem !important}.pe-lg-9{padding-right:3.6rem !important}.pe-lg-tiny{padding-right:.135rem !important}.pb-lg-0{padding-bottom:0 !important}.pb-lg-1{padding-bottom:.225rem !important}.pb-lg-2{padding-bottom:.45rem !important}.pb-lg-3{padding-bottom:.9rem !important}.pb-lg-4{padding-bottom:1.35rem !important}.pb-lg-5{padding-bottom:1.8rem !important}.pb-lg-6{padding-bottom:2.25rem !important}.pb-lg-7{padding-bottom:2.7rem !important}.pb-lg-8{padding-bottom:3.15rem !important}.pb-lg-9{padding-bottom:3.6rem !important}.pb-lg-tiny{padding-bottom:.135rem !important}.ps-lg-0{padding-left:0 !important}.ps-lg-1{padding-left:.225rem !important}.ps-lg-2{padding-left:.45rem !important}.ps-lg-3{padding-left:.9rem !important}.ps-lg-4{padding-left:1.35rem !important}.ps-lg-5{padding-left:1.8rem !important}.ps-lg-6{padding-left:2.25rem !important}.ps-lg-7{padding-left:2.7rem !important}.ps-lg-8{padding-left:3.15rem !important}.ps-lg-9{padding-left:3.6rem !important}.ps-lg-tiny{padding-left:.135rem !important}.gap-lg-0{gap:0 !important}.gap-lg-1{gap:.225rem !important}.gap-lg-2{gap:.45rem !important}.gap-lg-3{gap:.9rem !important}.gap-lg-4{gap:1.35rem !important}.gap-lg-5{gap:1.8rem !important}.gap-lg-6{gap:2.25rem !important}.gap-lg-7{gap:2.7rem !important}.gap-lg-8{gap:3.15rem !important}.gap-lg-9{gap:3.6rem !important}.gap-lg-tiny{gap:.135rem !important}.row-gap-lg-0{row-gap:0 !important}.row-gap-lg-1{row-gap:.225rem !important}.row-gap-lg-2{row-gap:.45rem !important}.row-gap-lg-3{row-gap:.9rem !important}.row-gap-lg-4{row-gap:1.35rem !important}.row-gap-lg-5{row-gap:1.8rem !important}.row-gap-lg-6{row-gap:2.25rem !important}.row-gap-lg-7{row-gap:2.7rem !important}.row-gap-lg-8{row-gap:3.15rem !important}.row-gap-lg-9{row-gap:3.6rem !important}.row-gap-lg-tiny{row-gap:.135rem !important}.column-gap-lg-0{column-gap:0 !important}.column-gap-lg-1{column-gap:.225rem !important}.column-gap-lg-2{column-gap:.45rem !important}.column-gap-lg-3{column-gap:.9rem !important}.column-gap-lg-4{column-gap:1.35rem !important}.column-gap-lg-5{column-gap:1.8rem !important}.column-gap-lg-6{column-gap:2.25rem !important}.column-gap-lg-7{column-gap:2.7rem !important}.column-gap-lg-8{column-gap:3.15rem !important}.column-gap-lg-9{column-gap:3.6rem !important}.column-gap-lg-tiny{column-gap:.135rem !important}.text-lg-start{text-align:left !important}.text-lg-end{text-align:right !important}.text-lg-center{text-align:center !important}}@media(min-width: 1200px){.float-xl-start{float:left !important}.float-xl-end{float:right !important}.float-xl-none{float:none !important}.object-fit-xl-contain{object-fit:contain !important}.object-fit-xl-cover{object-fit:cover !important}.object-fit-xl-fill{object-fit:fill !important}.object-fit-xl-scale{object-fit:scale-down !important}.object-fit-xl-none{object-fit:none !important}.d-xl-inline{display:inline !important}.d-xl-inline-block{display:inline-block !important}.d-xl-block{display:block !important}.d-xl-grid{display:grid !important}.d-xl-inline-grid{display:inline-grid !important}.d-xl-table{display:table !important}.d-xl-table-row{display:table-row !important}.d-xl-table-cell{display:table-cell !important}.d-xl-flex{display:flex !important}.d-xl-inline-flex{display:inline-flex !important}.d-xl-none{display:none !important}.flex-xl-fill{flex:1 1 auto !important}.flex-xl-row{flex-direction:row !important}.flex-xl-column{flex-direction:column !important}.flex-xl-row-reverse{flex-direction:row-reverse !important}.flex-xl-column-reverse{flex-direction:column-reverse !important}.flex-xl-grow-0{flex-grow:0 !important}.flex-xl-grow-1{flex-grow:1 !important}.flex-xl-shrink-0{flex-shrink:0 !important}.flex-xl-shrink-1{flex-shrink:1 !important}.flex-xl-wrap{flex-wrap:wrap !important}.flex-xl-nowrap{flex-wrap:nowrap !important}.flex-xl-wrap-reverse{flex-wrap:wrap-reverse !important}.justify-content-xl-start{justify-content:flex-start !important}.justify-content-xl-end{justify-content:flex-end !important}.justify-content-xl-center{justify-content:center !important}.justify-content-xl-between{justify-content:space-between !important}.justify-content-xl-around{justify-content:space-around !important}.justify-content-xl-evenly{justify-content:space-evenly !important}.align-items-xl-start{align-items:flex-start !important}.align-items-xl-end{align-items:flex-end !important}.align-items-xl-center{align-items:center !important}.align-items-xl-baseline{align-items:baseline !important}.align-items-xl-stretch{align-items:stretch !important}.align-content-xl-start{align-content:flex-start !important}.align-content-xl-end{align-content:flex-end !important}.align-content-xl-center{align-content:center !important}.align-content-xl-between{align-content:space-between !important}.align-content-xl-around{align-content:space-around !important}.align-content-xl-stretch{align-content:stretch !important}.align-self-xl-auto{align-self:auto !important}.align-self-xl-start{align-self:flex-start !important}.align-self-xl-end{align-self:flex-end !important}.align-self-xl-center{align-self:center !important}.align-self-xl-baseline{align-self:baseline !important}.align-self-xl-stretch{align-self:stretch !important}.order-xl-first{order:-1 !important}.order-xl-0{order:0 !important}.order-xl-1{order:1 !important}.order-xl-2{order:2 !important}.order-xl-3{order:3 !important}.order-xl-4{order:4 !important}.order-xl-5{order:5 !important}.order-xl-last{order:6 !important}.m-xl-0{margin:0 !important}.m-xl-1{margin:.225rem !important}.m-xl-2{margin:.45rem !important}.m-xl-3{margin:.9rem !important}.m-xl-4{margin:1.35rem !important}.m-xl-5{margin:1.8rem !important}.m-xl-6{margin:2.25rem !important}.m-xl-7{margin:2.7rem !important}.m-xl-8{margin:3.15rem !important}.m-xl-9{margin:3.6rem !important}.m-xl-tiny{margin:.135rem !important}.m-xl-auto{margin:auto !important}.mx-xl-0{margin-right:0 !important;margin-left:0 !important}.mx-xl-1{margin-right:.225rem !important;margin-left:.225rem !important}.mx-xl-2{margin-right:.45rem !important;margin-left:.45rem !important}.mx-xl-3{margin-right:.9rem !important;margin-left:.9rem !important}.mx-xl-4{margin-right:1.35rem !important;margin-left:1.35rem !important}.mx-xl-5{margin-right:1.8rem !important;margin-left:1.8rem !important}.mx-xl-6{margin-right:2.25rem !important;margin-left:2.25rem !important}.mx-xl-7{margin-right:2.7rem !important;margin-left:2.7rem !important}.mx-xl-8{margin-right:3.15rem !important;margin-left:3.15rem !important}.mx-xl-9{margin-right:3.6rem !important;margin-left:3.6rem !important}.mx-xl-tiny{margin-right:.135rem !important;margin-left:.135rem !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:.225rem !important;margin-bottom:.225rem !important}.my-xl-2{margin-top:.45rem !important;margin-bottom:.45rem !important}.my-xl-3{margin-top:.9rem !important;margin-bottom:.9rem !important}.my-xl-4{margin-top:1.35rem !important;margin-bottom:1.35rem !important}.my-xl-5{margin-top:1.8rem !important;margin-bottom:1.8rem !important}.my-xl-6{margin-top:2.25rem !important;margin-bottom:2.25rem !important}.my-xl-7{margin-top:2.7rem !important;margin-bottom:2.7rem !important}.my-xl-8{margin-top:3.15rem !important;margin-bottom:3.15rem !important}.my-xl-9{margin-top:3.6rem !important;margin-bottom:3.6rem !important}.my-xl-tiny{margin-top:.135rem !important;margin-bottom:.135rem !important}.my-xl-auto{margin-top:auto !important;margin-bottom:auto !important}.mt-xl-0{margin-top:0 !important}.mt-xl-1{margin-top:.225rem !important}.mt-xl-2{margin-top:.45rem !important}.mt-xl-3{margin-top:.9rem !important}.mt-xl-4{margin-top:1.35rem !important}.mt-xl-5{margin-top:1.8rem !important}.mt-xl-6{margin-top:2.25rem !important}.mt-xl-7{margin-top:2.7rem !important}.mt-xl-8{margin-top:3.15rem !important}.mt-xl-9{margin-top:3.6rem !important}.mt-xl-tiny{margin-top:.135rem !important}.mt-xl-auto{margin-top:auto !important}.me-xl-0{margin-right:0 !important}.me-xl-1{margin-right:.225rem !important}.me-xl-2{margin-right:.45rem !important}.me-xl-3{margin-right:.9rem !important}.me-xl-4{margin-right:1.35rem !important}.me-xl-5{margin-right:1.8rem !important}.me-xl-6{margin-right:2.25rem !important}.me-xl-7{margin-right:2.7rem !important}.me-xl-8{margin-right:3.15rem !important}.me-xl-9{margin-right:3.6rem !important}.me-xl-tiny{margin-right:.135rem !important}.me-xl-auto{margin-right:auto !important}.mb-xl-0{margin-bottom:0 !important}.mb-xl-1{margin-bottom:.225rem !important}.mb-xl-2{margin-bottom:.45rem !important}.mb-xl-3{margin-bottom:.9rem !important}.mb-xl-4{margin-bottom:1.35rem !important}.mb-xl-5{margin-bottom:1.8rem !important}.mb-xl-6{margin-bottom:2.25rem !important}.mb-xl-7{margin-bottom:2.7rem !important}.mb-xl-8{margin-bottom:3.15rem !important}.mb-xl-9{margin-bottom:3.6rem !important}.mb-xl-tiny{margin-bottom:.135rem !important}.mb-xl-auto{margin-bottom:auto !important}.ms-xl-0{margin-left:0 !important}.ms-xl-1{margin-left:.225rem !important}.ms-xl-2{margin-left:.45rem !important}.ms-xl-3{margin-left:.9rem !important}.ms-xl-4{margin-left:1.35rem !important}.ms-xl-5{margin-left:1.8rem !important}.ms-xl-6{margin-left:2.25rem !important}.ms-xl-7{margin-left:2.7rem !important}.ms-xl-8{margin-left:3.15rem !important}.ms-xl-9{margin-left:3.6rem !important}.ms-xl-tiny{margin-left:.135rem !important}.ms-xl-auto{margin-left:auto !important}.m-xl-n1{margin:-0.225rem !important}.m-xl-n2{margin:-0.45rem !important}.m-xl-n3{margin:-0.9rem !important}.m-xl-n4{margin:-1.35rem !important}.m-xl-n5{margin:-1.8rem !important}.m-xl-n6{margin:-2.25rem !important}.m-xl-n7{margin:-2.7rem !important}.m-xl-n8{margin:-3.15rem !important}.m-xl-n9{margin:-3.6rem !important}.m-xl-ntiny{margin:-0.135rem !important}.mx-xl-n1{margin-right:-0.225rem !important;margin-left:-0.225rem !important}.mx-xl-n2{margin-right:-0.45rem !important;margin-left:-0.45rem !important}.mx-xl-n3{margin-right:-0.9rem !important;margin-left:-0.9rem !important}.mx-xl-n4{margin-right:-1.35rem !important;margin-left:-1.35rem !important}.mx-xl-n5{margin-right:-1.8rem !important;margin-left:-1.8rem !important}.mx-xl-n6{margin-right:-2.25rem !important;margin-left:-2.25rem !important}.mx-xl-n7{margin-right:-2.7rem !important;margin-left:-2.7rem !important}.mx-xl-n8{margin-right:-3.15rem !important;margin-left:-3.15rem !important}.mx-xl-n9{margin-right:-3.6rem !important;margin-left:-3.6rem !important}.mx-xl-ntiny{margin-right:-0.135rem !important;margin-left:-0.135rem !important}.my-xl-n1{margin-top:-0.225rem !important;margin-bottom:-0.225rem !important}.my-xl-n2{margin-top:-0.45rem !important;margin-bottom:-0.45rem !important}.my-xl-n3{margin-top:-0.9rem !important;margin-bottom:-0.9rem !important}.my-xl-n4{margin-top:-1.35rem !important;margin-bottom:-1.35rem !important}.my-xl-n5{margin-top:-1.8rem !important;margin-bottom:-1.8rem !important}.my-xl-n6{margin-top:-2.25rem !important;margin-bottom:-2.25rem !important}.my-xl-n7{margin-top:-2.7rem !important;margin-bottom:-2.7rem !important}.my-xl-n8{margin-top:-3.15rem !important;margin-bottom:-3.15rem !important}.my-xl-n9{margin-top:-3.6rem !important;margin-bottom:-3.6rem !important}.my-xl-ntiny{margin-top:-0.135rem !important;margin-bottom:-0.135rem !important}.mt-xl-n1{margin-top:-0.225rem !important}.mt-xl-n2{margin-top:-0.45rem !important}.mt-xl-n3{margin-top:-0.9rem !important}.mt-xl-n4{margin-top:-1.35rem !important}.mt-xl-n5{margin-top:-1.8rem !important}.mt-xl-n6{margin-top:-2.25rem !important}.mt-xl-n7{margin-top:-2.7rem !important}.mt-xl-n8{margin-top:-3.15rem !important}.mt-xl-n9{margin-top:-3.6rem !important}.mt-xl-ntiny{margin-top:-0.135rem !important}.me-xl-n1{margin-right:-0.225rem !important}.me-xl-n2{margin-right:-0.45rem !important}.me-xl-n3{margin-right:-0.9rem !important}.me-xl-n4{margin-right:-1.35rem !important}.me-xl-n5{margin-right:-1.8rem !important}.me-xl-n6{margin-right:-2.25rem !important}.me-xl-n7{margin-right:-2.7rem !important}.me-xl-n8{margin-right:-3.15rem !important}.me-xl-n9{margin-right:-3.6rem !important}.me-xl-ntiny{margin-right:-0.135rem !important}.mb-xl-n1{margin-bottom:-0.225rem !important}.mb-xl-n2{margin-bottom:-0.45rem !important}.mb-xl-n3{margin-bottom:-0.9rem !important}.mb-xl-n4{margin-bottom:-1.35rem !important}.mb-xl-n5{margin-bottom:-1.8rem !important}.mb-xl-n6{margin-bottom:-2.25rem !important}.mb-xl-n7{margin-bottom:-2.7rem !important}.mb-xl-n8{margin-bottom:-3.15rem !important}.mb-xl-n9{margin-bottom:-3.6rem !important}.mb-xl-ntiny{margin-bottom:-0.135rem !important}.ms-xl-n1{margin-left:-0.225rem !important}.ms-xl-n2{margin-left:-0.45rem !important}.ms-xl-n3{margin-left:-0.9rem !important}.ms-xl-n4{margin-left:-1.35rem !important}.ms-xl-n5{margin-left:-1.8rem !important}.ms-xl-n6{margin-left:-2.25rem !important}.ms-xl-n7{margin-left:-2.7rem !important}.ms-xl-n8{margin-left:-3.15rem !important}.ms-xl-n9{margin-left:-3.6rem !important}.ms-xl-ntiny{margin-left:-0.135rem !important}.p-xl-0{padding:0 !important}.p-xl-1{padding:.225rem !important}.p-xl-2{padding:.45rem !important}.p-xl-3{padding:.9rem !important}.p-xl-4{padding:1.35rem !important}.p-xl-5{padding:1.8rem !important}.p-xl-6{padding:2.25rem !important}.p-xl-7{padding:2.7rem !important}.p-xl-8{padding:3.15rem !important}.p-xl-9{padding:3.6rem !important}.p-xl-tiny{padding:.135rem !important}.px-xl-0{padding-right:0 !important;padding-left:0 !important}.px-xl-1{padding-right:.225rem !important;padding-left:.225rem !important}.px-xl-2{padding-right:.45rem !important;padding-left:.45rem !important}.px-xl-3{padding-right:.9rem !important;padding-left:.9rem !important}.px-xl-4{padding-right:1.35rem !important;padding-left:1.35rem !important}.px-xl-5{padding-right:1.8rem !important;padding-left:1.8rem !important}.px-xl-6{padding-right:2.25rem !important;padding-left:2.25rem !important}.px-xl-7{padding-right:2.7rem !important;padding-left:2.7rem !important}.px-xl-8{padding-right:3.15rem !important;padding-left:3.15rem !important}.px-xl-9{padding-right:3.6rem !important;padding-left:3.6rem !important}.px-xl-tiny{padding-right:.135rem !important;padding-left:.135rem !important}.py-xl-0{padding-top:0 !important;padding-bottom:0 !important}.py-xl-1{padding-top:.225rem !important;padding-bottom:.225rem !important}.py-xl-2{padding-top:.45rem !important;padding-bottom:.45rem !important}.py-xl-3{padding-top:.9rem !important;padding-bottom:.9rem !important}.py-xl-4{padding-top:1.35rem !important;padding-bottom:1.35rem !important}.py-xl-5{padding-top:1.8rem !important;padding-bottom:1.8rem !important}.py-xl-6{padding-top:2.25rem !important;padding-bottom:2.25rem !important}.py-xl-7{padding-top:2.7rem !important;padding-bottom:2.7rem !important}.py-xl-8{padding-top:3.15rem !important;padding-bottom:3.15rem !important}.py-xl-9{padding-top:3.6rem !important;padding-bottom:3.6rem !important}.py-xl-tiny{padding-top:.135rem !important;padding-bottom:.135rem !important}.pt-xl-0{padding-top:0 !important}.pt-xl-1{padding-top:.225rem !important}.pt-xl-2{padding-top:.45rem !important}.pt-xl-3{padding-top:.9rem !important}.pt-xl-4{padding-top:1.35rem !important}.pt-xl-5{padding-top:1.8rem !important}.pt-xl-6{padding-top:2.25rem !important}.pt-xl-7{padding-top:2.7rem !important}.pt-xl-8{padding-top:3.15rem !important}.pt-xl-9{padding-top:3.6rem !important}.pt-xl-tiny{padding-top:.135rem !important}.pe-xl-0{padding-right:0 !important}.pe-xl-1{padding-right:.225rem !important}.pe-xl-2{padding-right:.45rem !important}.pe-xl-3{padding-right:.9rem !important}.pe-xl-4{padding-right:1.35rem !important}.pe-xl-5{padding-right:1.8rem !important}.pe-xl-6{padding-right:2.25rem !important}.pe-xl-7{padding-right:2.7rem !important}.pe-xl-8{padding-right:3.15rem !important}.pe-xl-9{padding-right:3.6rem !important}.pe-xl-tiny{padding-right:.135rem !important}.pb-xl-0{padding-bottom:0 !important}.pb-xl-1{padding-bottom:.225rem !important}.pb-xl-2{padding-bottom:.45rem !important}.pb-xl-3{padding-bottom:.9rem !important}.pb-xl-4{padding-bottom:1.35rem !important}.pb-xl-5{padding-bottom:1.8rem !important}.pb-xl-6{padding-bottom:2.25rem !important}.pb-xl-7{padding-bottom:2.7rem !important}.pb-xl-8{padding-bottom:3.15rem !important}.pb-xl-9{padding-bottom:3.6rem !important}.pb-xl-tiny{padding-bottom:.135rem !important}.ps-xl-0{padding-left:0 !important}.ps-xl-1{padding-left:.225rem !important}.ps-xl-2{padding-left:.45rem !important}.ps-xl-3{padding-left:.9rem !important}.ps-xl-4{padding-left:1.35rem !important}.ps-xl-5{padding-left:1.8rem !important}.ps-xl-6{padding-left:2.25rem !important}.ps-xl-7{padding-left:2.7rem !important}.ps-xl-8{padding-left:3.15rem !important}.ps-xl-9{padding-left:3.6rem !important}.ps-xl-tiny{padding-left:.135rem !important}.gap-xl-0{gap:0 !important}.gap-xl-1{gap:.225rem !important}.gap-xl-2{gap:.45rem !important}.gap-xl-3{gap:.9rem !important}.gap-xl-4{gap:1.35rem !important}.gap-xl-5{gap:1.8rem !important}.gap-xl-6{gap:2.25rem !important}.gap-xl-7{gap:2.7rem !important}.gap-xl-8{gap:3.15rem !important}.gap-xl-9{gap:3.6rem !important}.gap-xl-tiny{gap:.135rem !important}.row-gap-xl-0{row-gap:0 !important}.row-gap-xl-1{row-gap:.225rem !important}.row-gap-xl-2{row-gap:.45rem !important}.row-gap-xl-3{row-gap:.9rem !important}.row-gap-xl-4{row-gap:1.35rem !important}.row-gap-xl-5{row-gap:1.8rem !important}.row-gap-xl-6{row-gap:2.25rem !important}.row-gap-xl-7{row-gap:2.7rem !important}.row-gap-xl-8{row-gap:3.15rem !important}.row-gap-xl-9{row-gap:3.6rem !important}.row-gap-xl-tiny{row-gap:.135rem !important}.column-gap-xl-0{column-gap:0 !important}.column-gap-xl-1{column-gap:.225rem !important}.column-gap-xl-2{column-gap:.45rem !important}.column-gap-xl-3{column-gap:.9rem !important}.column-gap-xl-4{column-gap:1.35rem !important}.column-gap-xl-5{column-gap:1.8rem !important}.column-gap-xl-6{column-gap:2.25rem !important}.column-gap-xl-7{column-gap:2.7rem !important}.column-gap-xl-8{column-gap:3.15rem !important}.column-gap-xl-9{column-gap:3.6rem !important}.column-gap-xl-tiny{column-gap:.135rem !important}.text-xl-start{text-align:left !important}.text-xl-end{text-align:right !important}.text-xl-center{text-align:center !important}}@media(min-width: 1400px){.float-xxl-start{float:left !important}.float-xxl-end{float:right !important}.float-xxl-none{float:none !important}.object-fit-xxl-contain{object-fit:contain !important}.object-fit-xxl-cover{object-fit:cover !important}.object-fit-xxl-fill{object-fit:fill !important}.object-fit-xxl-scale{object-fit:scale-down !important}.object-fit-xxl-none{object-fit:none !important}.d-xxl-inline{display:inline !important}.d-xxl-inline-block{display:inline-block !important}.d-xxl-block{display:block !important}.d-xxl-grid{display:grid !important}.d-xxl-inline-grid{display:inline-grid !important}.d-xxl-table{display:table !important}.d-xxl-table-row{display:table-row !important}.d-xxl-table-cell{display:table-cell !important}.d-xxl-flex{display:flex !important}.d-xxl-inline-flex{display:inline-flex !important}.d-xxl-none{display:none !important}.flex-xxl-fill{flex:1 1 auto !important}.flex-xxl-row{flex-direction:row !important}.flex-xxl-column{flex-direction:column !important}.flex-xxl-row-reverse{flex-direction:row-reverse !important}.flex-xxl-column-reverse{flex-direction:column-reverse !important}.flex-xxl-grow-0{flex-grow:0 !important}.flex-xxl-grow-1{flex-grow:1 !important}.flex-xxl-shrink-0{flex-shrink:0 !important}.flex-xxl-shrink-1{flex-shrink:1 !important}.flex-xxl-wrap{flex-wrap:wrap !important}.flex-xxl-nowrap{flex-wrap:nowrap !important}.flex-xxl-wrap-reverse{flex-wrap:wrap-reverse !important}.justify-content-xxl-start{justify-content:flex-start !important}.justify-content-xxl-end{justify-content:flex-end !important}.justify-content-xxl-center{justify-content:center !important}.justify-content-xxl-between{justify-content:space-between !important}.justify-content-xxl-around{justify-content:space-around !important}.justify-content-xxl-evenly{justify-content:space-evenly !important}.align-items-xxl-start{align-items:flex-start !important}.align-items-xxl-end{align-items:flex-end !important}.align-items-xxl-center{align-items:center !important}.align-items-xxl-baseline{align-items:baseline !important}.align-items-xxl-stretch{align-items:stretch !important}.align-content-xxl-start{align-content:flex-start !important}.align-content-xxl-end{align-content:flex-end !important}.align-content-xxl-center{align-content:center !important}.align-content-xxl-between{align-content:space-between !important}.align-content-xxl-around{align-content:space-around !important}.align-content-xxl-stretch{align-content:stretch !important}.align-self-xxl-auto{align-self:auto !important}.align-self-xxl-start{align-self:flex-start !important}.align-self-xxl-end{align-self:flex-end !important}.align-self-xxl-center{align-self:center !important}.align-self-xxl-baseline{align-self:baseline !important}.align-self-xxl-stretch{align-self:stretch !important}.order-xxl-first{order:-1 !important}.order-xxl-0{order:0 !important}.order-xxl-1{order:1 !important}.order-xxl-2{order:2 !important}.order-xxl-3{order:3 !important}.order-xxl-4{order:4 !important}.order-xxl-5{order:5 !important}.order-xxl-last{order:6 !important}.m-xxl-0{margin:0 !important}.m-xxl-1{margin:.225rem !important}.m-xxl-2{margin:.45rem !important}.m-xxl-3{margin:.9rem !important}.m-xxl-4{margin:1.35rem !important}.m-xxl-5{margin:1.8rem !important}.m-xxl-6{margin:2.25rem !important}.m-xxl-7{margin:2.7rem !important}.m-xxl-8{margin:3.15rem !important}.m-xxl-9{margin:3.6rem !important}.m-xxl-tiny{margin:.135rem !important}.m-xxl-auto{margin:auto !important}.mx-xxl-0{margin-right:0 !important;margin-left:0 !important}.mx-xxl-1{margin-right:.225rem !important;margin-left:.225rem !important}.mx-xxl-2{margin-right:.45rem !important;margin-left:.45rem !important}.mx-xxl-3{margin-right:.9rem !important;margin-left:.9rem !important}.mx-xxl-4{margin-right:1.35rem !important;margin-left:1.35rem !important}.mx-xxl-5{margin-right:1.8rem !important;margin-left:1.8rem !important}.mx-xxl-6{margin-right:2.25rem !important;margin-left:2.25rem !important}.mx-xxl-7{margin-right:2.7rem !important;margin-left:2.7rem !important}.mx-xxl-8{margin-right:3.15rem !important;margin-left:3.15rem !important}.mx-xxl-9{margin-right:3.6rem !important;margin-left:3.6rem !important}.mx-xxl-tiny{margin-right:.135rem !important;margin-left:.135rem !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:.225rem !important;margin-bottom:.225rem !important}.my-xxl-2{margin-top:.45rem !important;margin-bottom:.45rem !important}.my-xxl-3{margin-top:.9rem !important;margin-bottom:.9rem !important}.my-xxl-4{margin-top:1.35rem !important;margin-bottom:1.35rem !important}.my-xxl-5{margin-top:1.8rem !important;margin-bottom:1.8rem !important}.my-xxl-6{margin-top:2.25rem !important;margin-bottom:2.25rem !important}.my-xxl-7{margin-top:2.7rem !important;margin-bottom:2.7rem !important}.my-xxl-8{margin-top:3.15rem !important;margin-bottom:3.15rem !important}.my-xxl-9{margin-top:3.6rem !important;margin-bottom:3.6rem !important}.my-xxl-tiny{margin-top:.135rem !important;margin-bottom:.135rem !important}.my-xxl-auto{margin-top:auto !important;margin-bottom:auto !important}.mt-xxl-0{margin-top:0 !important}.mt-xxl-1{margin-top:.225rem !important}.mt-xxl-2{margin-top:.45rem !important}.mt-xxl-3{margin-top:.9rem !important}.mt-xxl-4{margin-top:1.35rem !important}.mt-xxl-5{margin-top:1.8rem !important}.mt-xxl-6{margin-top:2.25rem !important}.mt-xxl-7{margin-top:2.7rem !important}.mt-xxl-8{margin-top:3.15rem !important}.mt-xxl-9{margin-top:3.6rem !important}.mt-xxl-tiny{margin-top:.135rem !important}.mt-xxl-auto{margin-top:auto !important}.me-xxl-0{margin-right:0 !important}.me-xxl-1{margin-right:.225rem !important}.me-xxl-2{margin-right:.45rem !important}.me-xxl-3{margin-right:.9rem !important}.me-xxl-4{margin-right:1.35rem !important}.me-xxl-5{margin-right:1.8rem !important}.me-xxl-6{margin-right:2.25rem !important}.me-xxl-7{margin-right:2.7rem !important}.me-xxl-8{margin-right:3.15rem !important}.me-xxl-9{margin-right:3.6rem !important}.me-xxl-tiny{margin-right:.135rem !important}.me-xxl-auto{margin-right:auto !important}.mb-xxl-0{margin-bottom:0 !important}.mb-xxl-1{margin-bottom:.225rem !important}.mb-xxl-2{margin-bottom:.45rem !important}.mb-xxl-3{margin-bottom:.9rem !important}.mb-xxl-4{margin-bottom:1.35rem !important}.mb-xxl-5{margin-bottom:1.8rem !important}.mb-xxl-6{margin-bottom:2.25rem !important}.mb-xxl-7{margin-bottom:2.7rem !important}.mb-xxl-8{margin-bottom:3.15rem !important}.mb-xxl-9{margin-bottom:3.6rem !important}.mb-xxl-tiny{margin-bottom:.135rem !important}.mb-xxl-auto{margin-bottom:auto !important}.ms-xxl-0{margin-left:0 !important}.ms-xxl-1{margin-left:.225rem !important}.ms-xxl-2{margin-left:.45rem !important}.ms-xxl-3{margin-left:.9rem !important}.ms-xxl-4{margin-left:1.35rem !important}.ms-xxl-5{margin-left:1.8rem !important}.ms-xxl-6{margin-left:2.25rem !important}.ms-xxl-7{margin-left:2.7rem !important}.ms-xxl-8{margin-left:3.15rem !important}.ms-xxl-9{margin-left:3.6rem !important}.ms-xxl-tiny{margin-left:.135rem !important}.ms-xxl-auto{margin-left:auto !important}.m-xxl-n1{margin:-0.225rem !important}.m-xxl-n2{margin:-0.45rem !important}.m-xxl-n3{margin:-0.9rem !important}.m-xxl-n4{margin:-1.35rem !important}.m-xxl-n5{margin:-1.8rem !important}.m-xxl-n6{margin:-2.25rem !important}.m-xxl-n7{margin:-2.7rem !important}.m-xxl-n8{margin:-3.15rem !important}.m-xxl-n9{margin:-3.6rem !important}.m-xxl-ntiny{margin:-0.135rem !important}.mx-xxl-n1{margin-right:-0.225rem !important;margin-left:-0.225rem !important}.mx-xxl-n2{margin-right:-0.45rem !important;margin-left:-0.45rem !important}.mx-xxl-n3{margin-right:-0.9rem !important;margin-left:-0.9rem !important}.mx-xxl-n4{margin-right:-1.35rem !important;margin-left:-1.35rem !important}.mx-xxl-n5{margin-right:-1.8rem !important;margin-left:-1.8rem !important}.mx-xxl-n6{margin-right:-2.25rem !important;margin-left:-2.25rem !important}.mx-xxl-n7{margin-right:-2.7rem !important;margin-left:-2.7rem !important}.mx-xxl-n8{margin-right:-3.15rem !important;margin-left:-3.15rem !important}.mx-xxl-n9{margin-right:-3.6rem !important;margin-left:-3.6rem !important}.mx-xxl-ntiny{margin-right:-0.135rem !important;margin-left:-0.135rem !important}.my-xxl-n1{margin-top:-0.225rem !important;margin-bottom:-0.225rem !important}.my-xxl-n2{margin-top:-0.45rem !important;margin-bottom:-0.45rem !important}.my-xxl-n3{margin-top:-0.9rem !important;margin-bottom:-0.9rem !important}.my-xxl-n4{margin-top:-1.35rem !important;margin-bottom:-1.35rem !important}.my-xxl-n5{margin-top:-1.8rem !important;margin-bottom:-1.8rem !important}.my-xxl-n6{margin-top:-2.25rem !important;margin-bottom:-2.25rem !important}.my-xxl-n7{margin-top:-2.7rem !important;margin-bottom:-2.7rem !important}.my-xxl-n8{margin-top:-3.15rem !important;margin-bottom:-3.15rem !important}.my-xxl-n9{margin-top:-3.6rem !important;margin-bottom:-3.6rem !important}.my-xxl-ntiny{margin-top:-0.135rem !important;margin-bottom:-0.135rem !important}.mt-xxl-n1{margin-top:-0.225rem !important}.mt-xxl-n2{margin-top:-0.45rem !important}.mt-xxl-n3{margin-top:-0.9rem !important}.mt-xxl-n4{margin-top:-1.35rem !important}.mt-xxl-n5{margin-top:-1.8rem !important}.mt-xxl-n6{margin-top:-2.25rem !important}.mt-xxl-n7{margin-top:-2.7rem !important}.mt-xxl-n8{margin-top:-3.15rem !important}.mt-xxl-n9{margin-top:-3.6rem !important}.mt-xxl-ntiny{margin-top:-0.135rem !important}.me-xxl-n1{margin-right:-0.225rem !important}.me-xxl-n2{margin-right:-0.45rem !important}.me-xxl-n3{margin-right:-0.9rem !important}.me-xxl-n4{margin-right:-1.35rem !important}.me-xxl-n5{margin-right:-1.8rem !important}.me-xxl-n6{margin-right:-2.25rem !important}.me-xxl-n7{margin-right:-2.7rem !important}.me-xxl-n8{margin-right:-3.15rem !important}.me-xxl-n9{margin-right:-3.6rem !important}.me-xxl-ntiny{margin-right:-0.135rem !important}.mb-xxl-n1{margin-bottom:-0.225rem !important}.mb-xxl-n2{margin-bottom:-0.45rem !important}.mb-xxl-n3{margin-bottom:-0.9rem !important}.mb-xxl-n4{margin-bottom:-1.35rem !important}.mb-xxl-n5{margin-bottom:-1.8rem !important}.mb-xxl-n6{margin-bottom:-2.25rem !important}.mb-xxl-n7{margin-bottom:-2.7rem !important}.mb-xxl-n8{margin-bottom:-3.15rem !important}.mb-xxl-n9{margin-bottom:-3.6rem !important}.mb-xxl-ntiny{margin-bottom:-0.135rem !important}.ms-xxl-n1{margin-left:-0.225rem !important}.ms-xxl-n2{margin-left:-0.45rem !important}.ms-xxl-n3{margin-left:-0.9rem !important}.ms-xxl-n4{margin-left:-1.35rem !important}.ms-xxl-n5{margin-left:-1.8rem !important}.ms-xxl-n6{margin-left:-2.25rem !important}.ms-xxl-n7{margin-left:-2.7rem !important}.ms-xxl-n8{margin-left:-3.15rem !important}.ms-xxl-n9{margin-left:-3.6rem !important}.ms-xxl-ntiny{margin-left:-0.135rem !important}.p-xxl-0{padding:0 !important}.p-xxl-1{padding:.225rem !important}.p-xxl-2{padding:.45rem !important}.p-xxl-3{padding:.9rem !important}.p-xxl-4{padding:1.35rem !important}.p-xxl-5{padding:1.8rem !important}.p-xxl-6{padding:2.25rem !important}.p-xxl-7{padding:2.7rem !important}.p-xxl-8{padding:3.15rem !important}.p-xxl-9{padding:3.6rem !important}.p-xxl-tiny{padding:.135rem !important}.px-xxl-0{padding-right:0 !important;padding-left:0 !important}.px-xxl-1{padding-right:.225rem !important;padding-left:.225rem !important}.px-xxl-2{padding-right:.45rem !important;padding-left:.45rem !important}.px-xxl-3{padding-right:.9rem !important;padding-left:.9rem !important}.px-xxl-4{padding-right:1.35rem !important;padding-left:1.35rem !important}.px-xxl-5{padding-right:1.8rem !important;padding-left:1.8rem !important}.px-xxl-6{padding-right:2.25rem !important;padding-left:2.25rem !important}.px-xxl-7{padding-right:2.7rem !important;padding-left:2.7rem !important}.px-xxl-8{padding-right:3.15rem !important;padding-left:3.15rem !important}.px-xxl-9{padding-right:3.6rem !important;padding-left:3.6rem !important}.px-xxl-tiny{padding-right:.135rem !important;padding-left:.135rem !important}.py-xxl-0{padding-top:0 !important;padding-bottom:0 !important}.py-xxl-1{padding-top:.225rem !important;padding-bottom:.225rem !important}.py-xxl-2{padding-top:.45rem !important;padding-bottom:.45rem !important}.py-xxl-3{padding-top:.9rem !important;padding-bottom:.9rem !important}.py-xxl-4{padding-top:1.35rem !important;padding-bottom:1.35rem !important}.py-xxl-5{padding-top:1.8rem !important;padding-bottom:1.8rem !important}.py-xxl-6{padding-top:2.25rem !important;padding-bottom:2.25rem !important}.py-xxl-7{padding-top:2.7rem !important;padding-bottom:2.7rem !important}.py-xxl-8{padding-top:3.15rem !important;padding-bottom:3.15rem !important}.py-xxl-9{padding-top:3.6rem !important;padding-bottom:3.6rem !important}.py-xxl-tiny{padding-top:.135rem !important;padding-bottom:.135rem !important}.pt-xxl-0{padding-top:0 !important}.pt-xxl-1{padding-top:.225rem !important}.pt-xxl-2{padding-top:.45rem !important}.pt-xxl-3{padding-top:.9rem !important}.pt-xxl-4{padding-top:1.35rem !important}.pt-xxl-5{padding-top:1.8rem !important}.pt-xxl-6{padding-top:2.25rem !important}.pt-xxl-7{padding-top:2.7rem !important}.pt-xxl-8{padding-top:3.15rem !important}.pt-xxl-9{padding-top:3.6rem !important}.pt-xxl-tiny{padding-top:.135rem !important}.pe-xxl-0{padding-right:0 !important}.pe-xxl-1{padding-right:.225rem !important}.pe-xxl-2{padding-right:.45rem !important}.pe-xxl-3{padding-right:.9rem !important}.pe-xxl-4{padding-right:1.35rem !important}.pe-xxl-5{padding-right:1.8rem !important}.pe-xxl-6{padding-right:2.25rem !important}.pe-xxl-7{padding-right:2.7rem !important}.pe-xxl-8{padding-right:3.15rem !important}.pe-xxl-9{padding-right:3.6rem !important}.pe-xxl-tiny{padding-right:.135rem !important}.pb-xxl-0{padding-bottom:0 !important}.pb-xxl-1{padding-bottom:.225rem !important}.pb-xxl-2{padding-bottom:.45rem !important}.pb-xxl-3{padding-bottom:.9rem !important}.pb-xxl-4{padding-bottom:1.35rem !important}.pb-xxl-5{padding-bottom:1.8rem !important}.pb-xxl-6{padding-bottom:2.25rem !important}.pb-xxl-7{padding-bottom:2.7rem !important}.pb-xxl-8{padding-bottom:3.15rem !important}.pb-xxl-9{padding-bottom:3.6rem !important}.pb-xxl-tiny{padding-bottom:.135rem !important}.ps-xxl-0{padding-left:0 !important}.ps-xxl-1{padding-left:.225rem !important}.ps-xxl-2{padding-left:.45rem !important}.ps-xxl-3{padding-left:.9rem !important}.ps-xxl-4{padding-left:1.35rem !important}.ps-xxl-5{padding-left:1.8rem !important}.ps-xxl-6{padding-left:2.25rem !important}.ps-xxl-7{padding-left:2.7rem !important}.ps-xxl-8{padding-left:3.15rem !important}.ps-xxl-9{padding-left:3.6rem !important}.ps-xxl-tiny{padding-left:.135rem !important}.gap-xxl-0{gap:0 !important}.gap-xxl-1{gap:.225rem !important}.gap-xxl-2{gap:.45rem !important}.gap-xxl-3{gap:.9rem !important}.gap-xxl-4{gap:1.35rem !important}.gap-xxl-5{gap:1.8rem !important}.gap-xxl-6{gap:2.25rem !important}.gap-xxl-7{gap:2.7rem !important}.gap-xxl-8{gap:3.15rem !important}.gap-xxl-9{gap:3.6rem !important}.gap-xxl-tiny{gap:.135rem !important}.row-gap-xxl-0{row-gap:0 !important}.row-gap-xxl-1{row-gap:.225rem !important}.row-gap-xxl-2{row-gap:.45rem !important}.row-gap-xxl-3{row-gap:.9rem !important}.row-gap-xxl-4{row-gap:1.35rem !important}.row-gap-xxl-5{row-gap:1.8rem !important}.row-gap-xxl-6{row-gap:2.25rem !important}.row-gap-xxl-7{row-gap:2.7rem !important}.row-gap-xxl-8{row-gap:3.15rem !important}.row-gap-xxl-9{row-gap:3.6rem !important}.row-gap-xxl-tiny{row-gap:.135rem !important}.column-gap-xxl-0{column-gap:0 !important}.column-gap-xxl-1{column-gap:.225rem !important}.column-gap-xxl-2{column-gap:.45rem !important}.column-gap-xxl-3{column-gap:.9rem !important}.column-gap-xxl-4{column-gap:1.35rem !important}.column-gap-xxl-5{column-gap:1.8rem !important}.column-gap-xxl-6{column-gap:2.25rem !important}.column-gap-xxl-7{column-gap:2.7rem !important}.column-gap-xxl-8{column-gap:3.15rem !important}.column-gap-xxl-9{column-gap:3.6rem !important}.column-gap-xxl-tiny{column-gap:.135rem !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: 1900px){.float-xxxl-start{float:left !important}.float-xxxl-end{float:right !important}.float-xxxl-none{float:none !important}.object-fit-xxxl-contain{object-fit:contain !important}.object-fit-xxxl-cover{object-fit:cover !important}.object-fit-xxxl-fill{object-fit:fill !important}.object-fit-xxxl-scale{object-fit:scale-down !important}.object-fit-xxxl-none{object-fit:none !important}.d-xxxl-inline{display:inline !important}.d-xxxl-inline-block{display:inline-block !important}.d-xxxl-block{display:block !important}.d-xxxl-grid{display:grid !important}.d-xxxl-inline-grid{display:inline-grid !important}.d-xxxl-table{display:table !important}.d-xxxl-table-row{display:table-row !important}.d-xxxl-table-cell{display:table-cell !important}.d-xxxl-flex{display:flex !important}.d-xxxl-inline-flex{display:inline-flex !important}.d-xxxl-none{display:none !important}.flex-xxxl-fill{flex:1 1 auto !important}.flex-xxxl-row{flex-direction:row !important}.flex-xxxl-column{flex-direction:column !important}.flex-xxxl-row-reverse{flex-direction:row-reverse !important}.flex-xxxl-column-reverse{flex-direction:column-reverse !important}.flex-xxxl-grow-0{flex-grow:0 !important}.flex-xxxl-grow-1{flex-grow:1 !important}.flex-xxxl-shrink-0{flex-shrink:0 !important}.flex-xxxl-shrink-1{flex-shrink:1 !important}.flex-xxxl-wrap{flex-wrap:wrap !important}.flex-xxxl-nowrap{flex-wrap:nowrap !important}.flex-xxxl-wrap-reverse{flex-wrap:wrap-reverse !important}.justify-content-xxxl-start{justify-content:flex-start !important}.justify-content-xxxl-end{justify-content:flex-end !important}.justify-content-xxxl-center{justify-content:center !important}.justify-content-xxxl-between{justify-content:space-between !important}.justify-content-xxxl-around{justify-content:space-around !important}.justify-content-xxxl-evenly{justify-content:space-evenly !important}.align-items-xxxl-start{align-items:flex-start !important}.align-items-xxxl-end{align-items:flex-end !important}.align-items-xxxl-center{align-items:center !important}.align-items-xxxl-baseline{align-items:baseline !important}.align-items-xxxl-stretch{align-items:stretch !important}.align-content-xxxl-start{align-content:flex-start !important}.align-content-xxxl-end{align-content:flex-end !important}.align-content-xxxl-center{align-content:center !important}.align-content-xxxl-between{align-content:space-between !important}.align-content-xxxl-around{align-content:space-around !important}.align-content-xxxl-stretch{align-content:stretch !important}.align-self-xxxl-auto{align-self:auto !important}.align-self-xxxl-start{align-self:flex-start !important}.align-self-xxxl-end{align-self:flex-end !important}.align-self-xxxl-center{align-self:center !important}.align-self-xxxl-baseline{align-self:baseline !important}.align-self-xxxl-stretch{align-self:stretch !important}.order-xxxl-first{order:-1 !important}.order-xxxl-0{order:0 !important}.order-xxxl-1{order:1 !important}.order-xxxl-2{order:2 !important}.order-xxxl-3{order:3 !important}.order-xxxl-4{order:4 !important}.order-xxxl-5{order:5 !important}.order-xxxl-last{order:6 !important}.m-xxxl-0{margin:0 !important}.m-xxxl-1{margin:.225rem !important}.m-xxxl-2{margin:.45rem !important}.m-xxxl-3{margin:.9rem !important}.m-xxxl-4{margin:1.35rem !important}.m-xxxl-5{margin:1.8rem !important}.m-xxxl-6{margin:2.25rem !important}.m-xxxl-7{margin:2.7rem !important}.m-xxxl-8{margin:3.15rem !important}.m-xxxl-9{margin:3.6rem !important}.m-xxxl-tiny{margin:.135rem !important}.m-xxxl-auto{margin:auto !important}.mx-xxxl-0{margin-right:0 !important;margin-left:0 !important}.mx-xxxl-1{margin-right:.225rem !important;margin-left:.225rem !important}.mx-xxxl-2{margin-right:.45rem !important;margin-left:.45rem !important}.mx-xxxl-3{margin-right:.9rem !important;margin-left:.9rem !important}.mx-xxxl-4{margin-right:1.35rem !important;margin-left:1.35rem !important}.mx-xxxl-5{margin-right:1.8rem !important;margin-left:1.8rem !important}.mx-xxxl-6{margin-right:2.25rem !important;margin-left:2.25rem !important}.mx-xxxl-7{margin-right:2.7rem !important;margin-left:2.7rem !important}.mx-xxxl-8{margin-right:3.15rem !important;margin-left:3.15rem !important}.mx-xxxl-9{margin-right:3.6rem !important;margin-left:3.6rem !important}.mx-xxxl-tiny{margin-right:.135rem !important;margin-left:.135rem !important}.mx-xxxl-auto{margin-right:auto !important;margin-left:auto !important}.my-xxxl-0{margin-top:0 !important;margin-bottom:0 !important}.my-xxxl-1{margin-top:.225rem !important;margin-bottom:.225rem !important}.my-xxxl-2{margin-top:.45rem !important;margin-bottom:.45rem !important}.my-xxxl-3{margin-top:.9rem !important;margin-bottom:.9rem !important}.my-xxxl-4{margin-top:1.35rem !important;margin-bottom:1.35rem !important}.my-xxxl-5{margin-top:1.8rem !important;margin-bottom:1.8rem !important}.my-xxxl-6{margin-top:2.25rem !important;margin-bottom:2.25rem !important}.my-xxxl-7{margin-top:2.7rem !important;margin-bottom:2.7rem !important}.my-xxxl-8{margin-top:3.15rem !important;margin-bottom:3.15rem !important}.my-xxxl-9{margin-top:3.6rem !important;margin-bottom:3.6rem !important}.my-xxxl-tiny{margin-top:.135rem !important;margin-bottom:.135rem !important}.my-xxxl-auto{margin-top:auto !important;margin-bottom:auto !important}.mt-xxxl-0{margin-top:0 !important}.mt-xxxl-1{margin-top:.225rem !important}.mt-xxxl-2{margin-top:.45rem !important}.mt-xxxl-3{margin-top:.9rem !important}.mt-xxxl-4{margin-top:1.35rem !important}.mt-xxxl-5{margin-top:1.8rem !important}.mt-xxxl-6{margin-top:2.25rem !important}.mt-xxxl-7{margin-top:2.7rem !important}.mt-xxxl-8{margin-top:3.15rem !important}.mt-xxxl-9{margin-top:3.6rem !important}.mt-xxxl-tiny{margin-top:.135rem !important}.mt-xxxl-auto{margin-top:auto !important}.me-xxxl-0{margin-right:0 !important}.me-xxxl-1{margin-right:.225rem !important}.me-xxxl-2{margin-right:.45rem !important}.me-xxxl-3{margin-right:.9rem !important}.me-xxxl-4{margin-right:1.35rem !important}.me-xxxl-5{margin-right:1.8rem !important}.me-xxxl-6{margin-right:2.25rem !important}.me-xxxl-7{margin-right:2.7rem !important}.me-xxxl-8{margin-right:3.15rem !important}.me-xxxl-9{margin-right:3.6rem !important}.me-xxxl-tiny{margin-right:.135rem !important}.me-xxxl-auto{margin-right:auto !important}.mb-xxxl-0{margin-bottom:0 !important}.mb-xxxl-1{margin-bottom:.225rem !important}.mb-xxxl-2{margin-bottom:.45rem !important}.mb-xxxl-3{margin-bottom:.9rem !important}.mb-xxxl-4{margin-bottom:1.35rem !important}.mb-xxxl-5{margin-bottom:1.8rem !important}.mb-xxxl-6{margin-bottom:2.25rem !important}.mb-xxxl-7{margin-bottom:2.7rem !important}.mb-xxxl-8{margin-bottom:3.15rem !important}.mb-xxxl-9{margin-bottom:3.6rem !important}.mb-xxxl-tiny{margin-bottom:.135rem !important}.mb-xxxl-auto{margin-bottom:auto !important}.ms-xxxl-0{margin-left:0 !important}.ms-xxxl-1{margin-left:.225rem !important}.ms-xxxl-2{margin-left:.45rem !important}.ms-xxxl-3{margin-left:.9rem !important}.ms-xxxl-4{margin-left:1.35rem !important}.ms-xxxl-5{margin-left:1.8rem !important}.ms-xxxl-6{margin-left:2.25rem !important}.ms-xxxl-7{margin-left:2.7rem !important}.ms-xxxl-8{margin-left:3.15rem !important}.ms-xxxl-9{margin-left:3.6rem !important}.ms-xxxl-tiny{margin-left:.135rem !important}.ms-xxxl-auto{margin-left:auto !important}.m-xxxl-n1{margin:-0.225rem !important}.m-xxxl-n2{margin:-0.45rem !important}.m-xxxl-n3{margin:-0.9rem !important}.m-xxxl-n4{margin:-1.35rem !important}.m-xxxl-n5{margin:-1.8rem !important}.m-xxxl-n6{margin:-2.25rem !important}.m-xxxl-n7{margin:-2.7rem !important}.m-xxxl-n8{margin:-3.15rem !important}.m-xxxl-n9{margin:-3.6rem !important}.m-xxxl-ntiny{margin:-0.135rem !important}.mx-xxxl-n1{margin-right:-0.225rem !important;margin-left:-0.225rem !important}.mx-xxxl-n2{margin-right:-0.45rem !important;margin-left:-0.45rem !important}.mx-xxxl-n3{margin-right:-0.9rem !important;margin-left:-0.9rem !important}.mx-xxxl-n4{margin-right:-1.35rem !important;margin-left:-1.35rem !important}.mx-xxxl-n5{margin-right:-1.8rem !important;margin-left:-1.8rem !important}.mx-xxxl-n6{margin-right:-2.25rem !important;margin-left:-2.25rem !important}.mx-xxxl-n7{margin-right:-2.7rem !important;margin-left:-2.7rem !important}.mx-xxxl-n8{margin-right:-3.15rem !important;margin-left:-3.15rem !important}.mx-xxxl-n9{margin-right:-3.6rem !important;margin-left:-3.6rem !important}.mx-xxxl-ntiny{margin-right:-0.135rem !important;margin-left:-0.135rem !important}.my-xxxl-n1{margin-top:-0.225rem !important;margin-bottom:-0.225rem !important}.my-xxxl-n2{margin-top:-0.45rem !important;margin-bottom:-0.45rem !important}.my-xxxl-n3{margin-top:-0.9rem !important;margin-bottom:-0.9rem !important}.my-xxxl-n4{margin-top:-1.35rem !important;margin-bottom:-1.35rem !important}.my-xxxl-n5{margin-top:-1.8rem !important;margin-bottom:-1.8rem !important}.my-xxxl-n6{margin-top:-2.25rem !important;margin-bottom:-2.25rem !important}.my-xxxl-n7{margin-top:-2.7rem !important;margin-bottom:-2.7rem !important}.my-xxxl-n8{margin-top:-3.15rem !important;margin-bottom:-3.15rem !important}.my-xxxl-n9{margin-top:-3.6rem !important;margin-bottom:-3.6rem !important}.my-xxxl-ntiny{margin-top:-0.135rem !important;margin-bottom:-0.135rem !important}.mt-xxxl-n1{margin-top:-0.225rem !important}.mt-xxxl-n2{margin-top:-0.45rem !important}.mt-xxxl-n3{margin-top:-0.9rem !important}.mt-xxxl-n4{margin-top:-1.35rem !important}.mt-xxxl-n5{margin-top:-1.8rem !important}.mt-xxxl-n6{margin-top:-2.25rem !important}.mt-xxxl-n7{margin-top:-2.7rem !important}.mt-xxxl-n8{margin-top:-3.15rem !important}.mt-xxxl-n9{margin-top:-3.6rem !important}.mt-xxxl-ntiny{margin-top:-0.135rem !important}.me-xxxl-n1{margin-right:-0.225rem !important}.me-xxxl-n2{margin-right:-0.45rem !important}.me-xxxl-n3{margin-right:-0.9rem !important}.me-xxxl-n4{margin-right:-1.35rem !important}.me-xxxl-n5{margin-right:-1.8rem !important}.me-xxxl-n6{margin-right:-2.25rem !important}.me-xxxl-n7{margin-right:-2.7rem !important}.me-xxxl-n8{margin-right:-3.15rem !important}.me-xxxl-n9{margin-right:-3.6rem !important}.me-xxxl-ntiny{margin-right:-0.135rem !important}.mb-xxxl-n1{margin-bottom:-0.225rem !important}.mb-xxxl-n2{margin-bottom:-0.45rem !important}.mb-xxxl-n3{margin-bottom:-0.9rem !important}.mb-xxxl-n4{margin-bottom:-1.35rem !important}.mb-xxxl-n5{margin-bottom:-1.8rem !important}.mb-xxxl-n6{margin-bottom:-2.25rem !important}.mb-xxxl-n7{margin-bottom:-2.7rem !important}.mb-xxxl-n8{margin-bottom:-3.15rem !important}.mb-xxxl-n9{margin-bottom:-3.6rem !important}.mb-xxxl-ntiny{margin-bottom:-0.135rem !important}.ms-xxxl-n1{margin-left:-0.225rem !important}.ms-xxxl-n2{margin-left:-0.45rem !important}.ms-xxxl-n3{margin-left:-0.9rem !important}.ms-xxxl-n4{margin-left:-1.35rem !important}.ms-xxxl-n5{margin-left:-1.8rem !important}.ms-xxxl-n6{margin-left:-2.25rem !important}.ms-xxxl-n7{margin-left:-2.7rem !important}.ms-xxxl-n8{margin-left:-3.15rem !important}.ms-xxxl-n9{margin-left:-3.6rem !important}.ms-xxxl-ntiny{margin-left:-0.135rem !important}.p-xxxl-0{padding:0 !important}.p-xxxl-1{padding:.225rem !important}.p-xxxl-2{padding:.45rem !important}.p-xxxl-3{padding:.9rem !important}.p-xxxl-4{padding:1.35rem !important}.p-xxxl-5{padding:1.8rem !important}.p-xxxl-6{padding:2.25rem !important}.p-xxxl-7{padding:2.7rem !important}.p-xxxl-8{padding:3.15rem !important}.p-xxxl-9{padding:3.6rem !important}.p-xxxl-tiny{padding:.135rem !important}.px-xxxl-0{padding-right:0 !important;padding-left:0 !important}.px-xxxl-1{padding-right:.225rem !important;padding-left:.225rem !important}.px-xxxl-2{padding-right:.45rem !important;padding-left:.45rem !important}.px-xxxl-3{padding-right:.9rem !important;padding-left:.9rem !important}.px-xxxl-4{padding-right:1.35rem !important;padding-left:1.35rem !important}.px-xxxl-5{padding-right:1.8rem !important;padding-left:1.8rem !important}.px-xxxl-6{padding-right:2.25rem !important;padding-left:2.25rem !important}.px-xxxl-7{padding-right:2.7rem !important;padding-left:2.7rem !important}.px-xxxl-8{padding-right:3.15rem !important;padding-left:3.15rem !important}.px-xxxl-9{padding-right:3.6rem !important;padding-left:3.6rem !important}.px-xxxl-tiny{padding-right:.135rem !important;padding-left:.135rem !important}.py-xxxl-0{padding-top:0 !important;padding-bottom:0 !important}.py-xxxl-1{padding-top:.225rem !important;padding-bottom:.225rem !important}.py-xxxl-2{padding-top:.45rem !important;padding-bottom:.45rem !important}.py-xxxl-3{padding-top:.9rem !important;padding-bottom:.9rem !important}.py-xxxl-4{padding-top:1.35rem !important;padding-bottom:1.35rem !important}.py-xxxl-5{padding-top:1.8rem !important;padding-bottom:1.8rem !important}.py-xxxl-6{padding-top:2.25rem !important;padding-bottom:2.25rem !important}.py-xxxl-7{padding-top:2.7rem !important;padding-bottom:2.7rem !important}.py-xxxl-8{padding-top:3.15rem !important;padding-bottom:3.15rem !important}.py-xxxl-9{padding-top:3.6rem !important;padding-bottom:3.6rem !important}.py-xxxl-tiny{padding-top:.135rem !important;padding-bottom:.135rem !important}.pt-xxxl-0{padding-top:0 !important}.pt-xxxl-1{padding-top:.225rem !important}.pt-xxxl-2{padding-top:.45rem !important}.pt-xxxl-3{padding-top:.9rem !important}.pt-xxxl-4{padding-top:1.35rem !important}.pt-xxxl-5{padding-top:1.8rem !important}.pt-xxxl-6{padding-top:2.25rem !important}.pt-xxxl-7{padding-top:2.7rem !important}.pt-xxxl-8{padding-top:3.15rem !important}.pt-xxxl-9{padding-top:3.6rem !important}.pt-xxxl-tiny{padding-top:.135rem !important}.pe-xxxl-0{padding-right:0 !important}.pe-xxxl-1{padding-right:.225rem !important}.pe-xxxl-2{padding-right:.45rem !important}.pe-xxxl-3{padding-right:.9rem !important}.pe-xxxl-4{padding-right:1.35rem !important}.pe-xxxl-5{padding-right:1.8rem !important}.pe-xxxl-6{padding-right:2.25rem !important}.pe-xxxl-7{padding-right:2.7rem !important}.pe-xxxl-8{padding-right:3.15rem !important}.pe-xxxl-9{padding-right:3.6rem !important}.pe-xxxl-tiny{padding-right:.135rem !important}.pb-xxxl-0{padding-bottom:0 !important}.pb-xxxl-1{padding-bottom:.225rem !important}.pb-xxxl-2{padding-bottom:.45rem !important}.pb-xxxl-3{padding-bottom:.9rem !important}.pb-xxxl-4{padding-bottom:1.35rem !important}.pb-xxxl-5{padding-bottom:1.8rem !important}.pb-xxxl-6{padding-bottom:2.25rem !important}.pb-xxxl-7{padding-bottom:2.7rem !important}.pb-xxxl-8{padding-bottom:3.15rem !important}.pb-xxxl-9{padding-bottom:3.6rem !important}.pb-xxxl-tiny{padding-bottom:.135rem !important}.ps-xxxl-0{padding-left:0 !important}.ps-xxxl-1{padding-left:.225rem !important}.ps-xxxl-2{padding-left:.45rem !important}.ps-xxxl-3{padding-left:.9rem !important}.ps-xxxl-4{padding-left:1.35rem !important}.ps-xxxl-5{padding-left:1.8rem !important}.ps-xxxl-6{padding-left:2.25rem !important}.ps-xxxl-7{padding-left:2.7rem !important}.ps-xxxl-8{padding-left:3.15rem !important}.ps-xxxl-9{padding-left:3.6rem !important}.ps-xxxl-tiny{padding-left:.135rem !important}.gap-xxxl-0{gap:0 !important}.gap-xxxl-1{gap:.225rem !important}.gap-xxxl-2{gap:.45rem !important}.gap-xxxl-3{gap:.9rem !important}.gap-xxxl-4{gap:1.35rem !important}.gap-xxxl-5{gap:1.8rem !important}.gap-xxxl-6{gap:2.25rem !important}.gap-xxxl-7{gap:2.7rem !important}.gap-xxxl-8{gap:3.15rem !important}.gap-xxxl-9{gap:3.6rem !important}.gap-xxxl-tiny{gap:.135rem !important}.row-gap-xxxl-0{row-gap:0 !important}.row-gap-xxxl-1{row-gap:.225rem !important}.row-gap-xxxl-2{row-gap:.45rem !important}.row-gap-xxxl-3{row-gap:.9rem !important}.row-gap-xxxl-4{row-gap:1.35rem !important}.row-gap-xxxl-5{row-gap:1.8rem !important}.row-gap-xxxl-6{row-gap:2.25rem !important}.row-gap-xxxl-7{row-gap:2.7rem !important}.row-gap-xxxl-8{row-gap:3.15rem !important}.row-gap-xxxl-9{row-gap:3.6rem !important}.row-gap-xxxl-tiny{row-gap:.135rem !important}.column-gap-xxxl-0{column-gap:0 !important}.column-gap-xxxl-1{column-gap:.225rem !important}.column-gap-xxxl-2{column-gap:.45rem !important}.column-gap-xxxl-3{column-gap:.9rem !important}.column-gap-xxxl-4{column-gap:1.35rem !important}.column-gap-xxxl-5{column-gap:1.8rem !important}.column-gap-xxxl-6{column-gap:2.25rem !important}.column-gap-xxxl-7{column-gap:2.7rem !important}.column-gap-xxxl-8{column-gap:3.15rem !important}.column-gap-xxxl-9{column-gap:3.6rem !important}.column-gap-xxxl-tiny{column-gap:.135rem !important}.text-xxxl-start{text-align:left !important}.text-xxxl-end{text-align:right !important}.text-xxxl-center{text-align:center !important}}@media(min-width: 1200px){.fs-1{font-size:2.5rem !important}.fs-2{font-size:2rem !important}.fs-3{font-size:1.75rem !important}.fs-4{font-size:1.5rem !important}}@media print{.d-print-inline{display:inline !important}.d-print-inline-block{display:inline-block !important}.d-print-block{display:block !important}.d-print-grid{display:grid !important}.d-print-inline-grid{display:inline-grid !important}.d-print-table{display:table !important}.d-print-table-row{display:table-row !important}.d-print-table-cell{display:table-cell !important}.d-print-flex{display:flex !important}.d-print-inline-flex{display:inline-flex !important}.d-print-none{display:none !important}}.modal{--bs-modal-width: fit-content}.container{max-width:100%}main>.p-3{padding-right:.5rem !important}.table>:not(:first-child){border-top:0px}.table td.fit,.table th.fit{white-space:nowrap}.bg-content{background-color:#1a2433 !important}code{background-color:#1a2433 !important}.icon-shadow{filter:drop-shadow(1px 1px 1px #666)}.icon-shadow-dark{filter:drop-shadow(1px 1px 1px #262626)}.text-darken{filter:brightness(80%)}.text-lighten{filter:brightness(120%)}.text-tight-spacing{letter-spacing:-0.5px}.text-orange{color:#fd7e14}.text-twitter{color:#1d9bf0}.mb-large{margin-bottom:100px}.hljs,.hljs-subst{color:#f7fafa}.fs-120{font-size:120%}.fs-100{font-size:100%}.fs-90{font-size:90%}.fs-80{font-size:80%}.fs-75{font-size:75%}.text-small{font-size:80%}.text-tiny{font-size:75% !important}.text-60pct{font-size:50% !important}.text-50pct{font-size:50% !important}.border-dotted{border-bottom:1px dotted #ccc}.border-thick{border-width:4px !important}body{font-size:14px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji}.font-serif{font-family:Georgia,Garamond,serif !important}hr{margin:.25rem 0 .75rem 0 !important}img.header-image{margin-top:-10px;margin-bottom:-5px;width:40px;height:40px;margin-right:10px}code,.font-json,.font-data,.font-plaintext{font-family:"Source Code Pro",monospace !important}.hr-thick{height:3px !important}.mb-section{margin-bottom:1.5rem !important}.mb-tiny{margin-bottom:3px}.mb-huge{margin-bottom:200px}.user-message-markdown p{margin-bottom:0 !important}.summary-row:last-child{margin-bottom:0 !important}pre{white-space:pre-wrap;white-space:-moz-pre-wrap;white-space:-pre-wrap;white-space:-o-pre-wrap;word-wrap:break-word;margin-bottom:0 !important}.word-wrap{word-wrap:break-word}.chan-flags>div{display:flex;flex-direction:column;gap:.1em}.chan-flags>div>span{width:fit-content}.table th{border-top:none}.footer-link{color:#ddd;text-decoration:underline}.footer-link:hover{color:#fff}.hljs-type,.hljs-string,.hljs-selector-id,.hljs-selector-class,.hljs-quote,.hljs-template-tag,.hljs-deletion{color:#3aa54f}.hljs-literal,.hljs-number{color:#0dcaf0}.node-color-circle-outer{position:relative;width:4em;height:4em;background-color:#000;border-radius:50%}.node-color-circle-inner{top:10%;left:10%;position:absolute;width:80%;height:80%;background-color:#e5e5e5;border-radius:50%}.node-icon{top:10%;left:10%;position:absolute;width:80%;height:80%;border-radius:50%}input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus,input:-webkit-autofill:active{-webkit-box-shadow:0 0 0 30px #344866 inset !important}input:-webkit-autofill{-webkit-text-fill-color:#f7fafa !important}.alert-primary{color:#f7fafa;background-color:#012457;border-color:#0143a3;border-width:2px}.alert-danger{color:#f7fafa;background-color:#66121a;border-color:#921925;border-width:2px}.alert-warning{color:#f7fafa;background-color:#876500;border-color:#ba8b00;border-width:2px}.alert-success{color:#f7fafa;background-color:#115c39;border-color:#1d9d61;border-width:2px}.alert-info{color:#f7fafa;background-color:#08798f;border-color:#0aa1c0;border-width:2px}.bg-background{background-color:#000}.bg-main{background-color:#131a25 !important}.bg-menu{background-color:#1a2433}.bg-header-footer{background-color:#112138 !important}.bg-header-footer-highlight{background-color:#1f3d67 !important}.bg-gradient-body-to-main{background:linear-gradient(0deg, #131a25 0%, #1a2433 100%)}.bg-card-highlight-badge{background-color:#1a2433 !important}li.nav-item:hover{background-color:#233044}.bg-tx-separator{background-color:#131a24}.border-card-highlight-badge{border-color:#183662 !important}.border-dark{border-color:#1a2433 !important}.card-highlight{background-color:#233044;border:solid 1px #2b3c55 !important;color:#f7fafa}.text-card-highlight{color:#406fb4 !important}.border-dotted{border-bottom:dotted 1px #6688bc}code{padding:0px 3px;border-radius:3px;background-color:#344866;color:#198754}/*# sourceMappingURL=dark.css.map */ diff --git a/public/style/dark.css.map b/public/style/dark.css.map index e098cf0..313184a 100644 --- a/public/style/dark.css.map +++ b/public/style/dark.css.map @@ -1 +1 @@ -{"version":3,"sourceRoot":"","sources":["../../node_modules/bootstrap/scss/mixins/_banner.scss","../../node_modules/bootstrap/scss/_root.scss","../../node_modules/bootstrap/scss/vendor/_rfs.scss","../../node_modules/bootstrap/scss/_reboot.scss","../../node_modules/bootstrap/scss/_variables.scss","../scss/main.scss","../../node_modules/bootstrap/scss/mixins/_border-radius.scss","../scss/dark.scss","../../node_modules/bootstrap/scss/_type.scss","../../node_modules/bootstrap/scss/mixins/_lists.scss","../../node_modules/bootstrap/scss/_images.scss","../../node_modules/bootstrap/scss/mixins/_image.scss","../../node_modules/bootstrap/scss/_containers.scss","../../node_modules/bootstrap/scss/mixins/_container.scss","../../node_modules/bootstrap/scss/mixins/_breakpoints.scss","../../node_modules/bootstrap/scss/_grid.scss","../../node_modules/bootstrap/scss/mixins/_grid.scss","../../node_modules/bootstrap/scss/_tables.scss","../../node_modules/bootstrap/scss/mixins/_table-variants.scss","../../node_modules/bootstrap/scss/forms/_labels.scss","../../node_modules/bootstrap/scss/forms/_form-text.scss","../../node_modules/bootstrap/scss/forms/_form-control.scss","../../node_modules/bootstrap/scss/mixins/_transition.scss","../../node_modules/bootstrap/scss/mixins/_gradients.scss","../../node_modules/bootstrap/scss/forms/_form-select.scss","../../node_modules/bootstrap/scss/forms/_form-check.scss","../../node_modules/bootstrap/scss/forms/_form-range.scss","../../node_modules/bootstrap/scss/forms/_floating-labels.scss","../../node_modules/bootstrap/scss/forms/_input-group.scss","../../node_modules/bootstrap/scss/mixins/_forms.scss","../../node_modules/bootstrap/scss/_buttons.scss","../../node_modules/bootstrap/scss/mixins/_buttons.scss","../../node_modules/bootstrap/scss/_transitions.scss","../../node_modules/bootstrap/scss/_dropdown.scss","../../node_modules/bootstrap/scss/mixins/_caret.scss","../../node_modules/bootstrap/scss/_button-group.scss","../../node_modules/bootstrap/scss/_nav.scss","../../node_modules/bootstrap/scss/_navbar.scss","../../node_modules/bootstrap/scss/_card.scss","../../node_modules/bootstrap/scss/_accordion.scss","../../node_modules/bootstrap/scss/_breadcrumb.scss","../../node_modules/bootstrap/scss/_pagination.scss","../../node_modules/bootstrap/scss/mixins/_pagination.scss","../../node_modules/bootstrap/scss/_badge.scss","../../node_modules/bootstrap/scss/_alert.scss","../../node_modules/bootstrap/scss/mixins/_alert.scss","../../node_modules/bootstrap/scss/_progress.scss","../../node_modules/bootstrap/scss/_list-group.scss","../../node_modules/bootstrap/scss/mixins/_list-group.scss","../../node_modules/bootstrap/scss/_close.scss","../../node_modules/bootstrap/scss/_toasts.scss","../../node_modules/bootstrap/scss/_modal.scss","../../node_modules/bootstrap/scss/mixins/_backdrop.scss","../../node_modules/bootstrap/scss/_tooltip.scss","../../node_modules/bootstrap/scss/mixins/_reset-text.scss","../../node_modules/bootstrap/scss/_popover.scss","../../node_modules/bootstrap/scss/_carousel.scss","../../node_modules/bootstrap/scss/mixins/_clearfix.scss","../../node_modules/bootstrap/scss/_spinners.scss","../../node_modules/bootstrap/scss/_offcanvas.scss","../../node_modules/bootstrap/scss/_placeholders.scss","../../node_modules/bootstrap/scss/helpers/_color-bg.scss","../../node_modules/bootstrap/scss/helpers/_colored-links.scss","../../node_modules/bootstrap/scss/helpers/_ratio.scss","../../node_modules/bootstrap/scss/helpers/_position.scss","../../node_modules/bootstrap/scss/helpers/_stacks.scss","../../node_modules/bootstrap/scss/helpers/_visually-hidden.scss","../../node_modules/bootstrap/scss/mixins/_visually-hidden.scss","../../node_modules/bootstrap/scss/helpers/_stretched-link.scss","../../node_modules/bootstrap/scss/helpers/_text-truncation.scss","../../node_modules/bootstrap/scss/mixins/_text-truncate.scss","../../node_modules/bootstrap/scss/helpers/_vr.scss","../../node_modules/bootstrap/scss/mixins/_utilities.scss","../../node_modules/bootstrap/scss/utilities/_api.scss"],"names":[],"mappings":"CACE;AAAA;AAAA;AAAA;AAAA;AAAA,GCDF,MAQI,mRAIA,+MAIA,yKAIA,8OAGF,8BACA,wBACA,mCACA,6BAMA,sNACA,0GACA,0FAOA,iDC4PI,oBALI,KDrPR,2BACA,2BACA,yBAIA,sBAIA,uBACA,yBACA,2BACA,oDAEA,2BACA,+BACA,8BACA,4BACA,6BACA,+BAGA,yBACA,+BAEA,yBAEA,2BExDF,qBAGE,sBAeE,8CANJ,MAOM,wBAcN,KACE,SACA,uCDmPI,UALI,yBC5OR,uCACA,uCACA,2BACA,qCACA,mCACA,8BACA,0CASF,GACE,eACA,MCijB4B,QDhjB5B,SACA,qBACA,QCujB4B,ID7iB9B,0CACE,aACA,cCwf4B,ODrf5B,YCwf4B,IDvf5B,YCwf4B,IDpf9B,OD6MQ,iCAlKJ,0BC3CJ,ODoNQ,kBC/MR,ODwMQ,iCAlKJ,0BCtCJ,OD+MQ,gBC1MR,ODmMQ,+BAlKJ,0BCjCJ,OD0MQ,mBCrMR,OD8LQ,iCAlKJ,0BC5BJ,ODqMQ,kBChMR,ODqLM,UALI,QC3KV,ODgLM,UALI,KChKV,EACE,aACA,cCmS0B,KDzR5B,YACE,iCACA,YACA,8BAMF,QACE,mBACA,kBACA,oBAMF,MAEE,kBAGF,SAGE,aACA,mBAGF,wBAIE,gBAGF,GACE,YC6X4B,IDxX9B,GACE,oBACA,cAMF,WACE,gBAQF,SAEE,YCsW4B,OD9V9B,aDmFM,UALI,QCvEV,WACE,QC+a4B,QD9a5B,wCASF,QAEE,kBD+DI,UALI,OCxDR,cACA,wBAGF,mBACA,eAKA,EACE,2BACA,gBEvMkB,KFyMlB,QACE,iCACA,gBE1MqB,UFoNvB,4DAEE,cACA,qBAOJ,kBAIE,YCkR4B,yBF7PxB,UALI,ICRV,IACE,cACA,aACA,mBACA,cDSI,UALI,QCCR,SDII,UALI,QCGN,cACA,kBAIJ,KDHM,UALI,QCUR,2BACA,qBAGA,OACE,cAIJ,IACE,yBDfI,UALI,QCsBR,MCuyCkC,kBDtyClC,iBCuyCkC,qBE3kDhC,qBHuSF,QACE,UDtBE,UALI,ICsCV,OACE,gBAMF,QAEE,sBAQF,MACE,oBACA,yBAGF,QACE,YCsT4B,MDrT5B,eCqT4B,MDpT5B,MI1VW,QJ2VX,gBAOF,GAEE,mBACA,gCAGF,2BAME,qBACA,mBACA,eAQF,MACE,qBAMF,OAEE,gBAQF,iCACE,UAKF,sCAKE,SACA,oBDrHI,UALI,QC4HR,oBAIF,cAEE,oBAKF,cACE,eAGF,OAGE,iBAGA,gBACE,UAOJ,0IACE,wBAQF,gDAIE,0BAGE,4GACE,eAON,mBACE,UACA,kBAKF,SACE,gBAUF,SACE,YACA,UACA,SACA,SAQF,OACE,WACA,WACA,UACA,cC8I4B,MFxVtB,iCC6MN,oBD/WE,0BCwWJ,OD/LQ,kBCwMN,SACE,WAOJ,+OAOE,UAGF,4BACE,YASF,cACE,oBACA,6BAmBF,4BACE,wBAKF,+BACE,UAOF,uBACE,aACA,0BAKF,OACE,qBAKF,OACE,SAOF,QACE,kBACA,eAQF,SACE,wBAQF,SACE,wBKpkBF,MNyQM,UALI,QMlQR,YJwkB4B,IInkB5B,WNsQM,iCMlQJ,YJyjBkB,IIxjBlB,YJwiB0B,IFzc1B,0BMpGF,WN6QM,gBM7QN,WNsQM,iCMlQJ,YJyjBkB,IIxjBlB,YJwiB0B,IFzc1B,0BMpGF,WN6QM,kBM7QN,WNsQM,iCMlQJ,YJyjBkB,IIxjBlB,YJwiB0B,IFzc1B,0BMpGF,WN6QM,gBM7QN,WNsQM,iCMlQJ,YJyjBkB,IIxjBlB,YJwiB0B,IFzc1B,0BMpGF,WN6QM,kBM7QN,WNsQM,iCMlQJ,YJyjBkB,IIxjBlB,YJwiB0B,IFzc1B,0BMpGF,WN6QM,gBM7QN,WNsQM,iCMlQJ,YJyjBkB,IIxjBlB,YJwiB0B,IFzc1B,0BMpGF,WN6QM,kBMrPR,eCvDE,eACA,gBD2DF,aC5DE,eACA,gBD8DF,kBACE,qBAEA,mCACE,aJgkB0B,MItjB9B,YNoNM,UALI,QM7MR,yBAIF,YACE,cHxFO,MHqSH,UALI,QMrMR,wBACE,gBAIJ,mBACE,mBACA,cHlGO,MHqSH,UALI,QM5LR,MJtFS,QIwFT,2BACE,aEhGJ,WCIE,eAGA,YDDF,eACE,QN48CkC,OM38ClC,iBHfQ,QGgBR,wCJGE,oBKRF,eAGA,YDcF,QAEE,qBAGF,YACE,qBACA,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A,oCAMF,yDACE,iDACA,oCAQJ,cACE,gDACA,mCAQA,8BACE,+CACA,kCCrIF,eAOE,uBACA,uBACA,iCACA,+BACA,+BACA,8BACA,8BACA,6BACA,6BAEA,4BACA,0CAlBF,iBAOE,uBACA,uBACA,iCACA,+BACA,+BACA,8BACA,8BACA,6BACA,6BAEA,4BACA,0CAlBF,eAOE,uBACA,uBACA,iCACA,+BACA,+BACA,8BACA,8BACA,6BACA,6BAEA,4BACA,0CAlBF,YAOE,uBACA,uBACA,iCACA,+BACA,+BACA,8BACA,8BACA,6BACA,6BAEA,4BACA,0CAlBF,eAOE,uBACA,uBACA,iCACA,+BACA,+BACA,8BACA,8BACA,6BACA,6BAEA,4BACA,0CAlBF,cAOE,uBACA,uBACA,iCACA,+BACA,+BACA,8BACA,8BACA,6BACA,6BAEA,4BACA,0CAlBF,aAOE,uBACA,uBACA,iCACA,+BACA,+BACA,8BACA,8BACA,6BACA,6BAEA,4BACA,0CAlBF,YAOE,uBACA,uBACA,iCACA,+BACA,+BACA,8BACA,8BACA,6BACA,6BAEA,4BACA,0CD0IA,kBACE,gBACA,iCHpFF,4BGkFA,qBACE,gBACA,kCHpFF,4BGkFA,qBACE,gBACA,kCHpFF,4BGkFA,qBACE,gBACA,kCHpFF,6BGkFA,qBACE,gBACA,kCHpFF,6BGkFA,sBACE,gBACA,kCHpFF,6BGkFA,uBACE,gBACA,kCE5JN,YACE,cf8xBsC,MerxBxC,gBACE,iCACA,oCACA,gBjBoRI,UALI,QiB3QR,Yf+hB4B,Ie3hB9B,mBACE,+BACA,kCjB0QI,UALI,QiBjQV,mBACE,gCACA,mCjBoQI,UALI,SkB5RV,WACE,WhBsxBsC,OFtflC,UALI,QkBvRR,MbJW,QcDb,cACE,cACA,WACA,uBnB8RI,UALI,KmBtRR,YjBmiB4B,IiBliB5B,YjByiB4B,IiBxiB5B,MdXW,QcYX,iBdSS,QcRT,4BACA,yBACA,gBfGE,oBgBHE,WDMJ,0DCFI,uCDhBN,cCiBQ,iBDGN,yBACE,gBAEA,wDACE,eAKJ,oBACE,MdjCS,QckCT,iBdbO,QccP,ajBqyBoC,QiBpyBpC,UAKE,WjB6qB0B,kCiBtqB9B,2CAEE,aAIF,2BACE,MdwBsB,QctBtB,UAQF,uBAEE,iBd3CgB,Qc8ChB,UAIF,oCACE,uBACA,0BACA,kBjBgoB0B,OiB/nB1B,Md9ES,QgBGX,iBhB6EqB,4BcCnB,qBACA,mBACA,eACA,wBjB0Y0B,IiBzY1B,gBCtEE,WDuEF,mHCnEE,uCDuDJ,oCCtDM,iBDqEN,yEACE,iBjBs4B8B,QiB73BlC,wBACE,cACA,WACA,kBACA,gBACA,YjB2c4B,IiB1c5B,MdzGW,Qc0GX,+BACA,2BACA,mBAEA,8BACE,UAGF,gFAEE,gBACA,eAWJ,iBACE,WjBstBsC,2BiBrtBtC,qBnBkKI,UALI,SI7QN,qBeoHF,uCACE,qBACA,wBACA,kBjBglB0B,MiB5kB9B,iBACE,WjB0sBsC,yBiBzsBtC,mBnBqJI,UALI,QI7QN,oBeiIF,uCACE,mBACA,qBACA,kBjBukB0B,KiB/jB5B,sBACE,WjBurBoC,4BiBprBtC,yBACE,WjBorBoC,2BiBjrBtC,yBACE,WjBirBoC,yBiB5qBxC,oBACE,MjB+qBsC,KiB9qBtC,OjBwqBsC,4BiBvqBtC,QjB6hB4B,QiB3hB5B,mDACE,eAGF,uCACE,oBfpKA,oBewKF,0CfxKE,oBe4KF,2CjBypBsC,2BiBxpBtC,2CjBypBsC,yBoBp1BxC,aACE,cACA,WACA,uCACA,uCtB4RI,UALI,KsBpRR,YpBiiB4B,IoBhiB5B,YpBuiB4B,IoBtiB5B,MjBbW,QiBcX,iBjBOS,QiBNT,iPACA,4BACA,oBpBw5BkC,oBoBv5BlC,gBpBw5BkC,UoBv5BlC,yBlBDE,oBgBHE,WEOJ,0DACA,gBFJI,uCEfN,aFgBQ,iBEKN,mBACE,apB8yBoC,QoB7yBpC,UAKE,WpBy5B4B,kCoBr5BhC,0DAEE,cpBuqB0B,OoBtqB1B,sBAGF,sBAEE,iBpBnCO,QoBwCT,4BACE,oBACA,0BAIJ,gBACE,YpBgqB4B,OoB/pB5B,epB+pB4B,OoB9pB5B,apB+pB4B,MFrbxB,UALI,SI7QN,qBkB6CJ,gBACE,YpB4pB4B,MoB3pB5B,epB2pB4B,MoB1pB5B,apB2pB4B,KFzbxB,UALI,QI7QN,oBmBfJ,YACE,cACA,WrB41BwC,OqB31BxC,arB41BwC,MqB31BxC,crB41BwC,QqB11BxC,8BACE,WACA,mBAIJ,oBACE,crBk1BwC,MqBj1BxC,eACA,iBAEA,sCACE,YACA,oBACA,cAIJ,kBACE,MrBo0BwC,IqBn0BxC,OrBm0BwC,IqBl0BxC,iBACA,mBACA,iBlBXS,QkBYT,4BACA,2BACA,wBACA,OrBu0BwC,0BqBt0BxC,gBACA,yBAGA,iCnBvBE,oBmB2BF,8BAEE,crB8zBsC,IqB3zBxC,yBACE,OrBqzBsC,gBqBlzBxC,wBACE,arBixBoC,QqBhxBpC,UACA,WrB6pB4B,kCqB1pB9B,0BACE,iBlBhDG,QkBiDH,alBjDG,QkBmDH,yCAII,+OAIJ,sCAII,uJAKN,+CACE,iBlBrEG,QkBsEH,alBtEG,QkB2ED,yOAIJ,2BACE,oBACA,YACA,QrB6xBuC,GqBtxBvC,2FACE,eACA,QrBoxBqC,GqBtwB3C,aACE,arB+wBgC,MqB7wBhC,+BACE,MrB2wB8B,IqB1wB9B,mBACA,wKACA,gCnB3GA,kBgBHE,WGgHF,qCH5GE,uCGsGJ,+BHrGM,iBG6GJ,qCACE,0JAGF,uCACE,oBrB0wB4B,aqBrwB1B,uJAKN,gCACE,crBqvB8B,MqBpvB9B,eAEA,kDACE,oBACA,cAKN,mBACE,qBACA,arBmuBgC,KqBhuBlC,WACE,kBACA,sBACA,oBAIE,mDACE,oBACA,YACA,QrBolBwB,IsBzvB9B,YACE,WACA,cACA,UACA,+BACA,gBAEA,kBACE,UAIA,mDtBq8BuC,oDsBp8BvC,+CtBo8BuC,oDsBj8BzC,8BACE,SAGF,kCACE,MtBs7BuC,KsBr7BvC,OtBq7BuC,KsBp7BvC,oBHzBF,iBhBUK,QmBiBH,OtBq7BuC,EEj8BvC,mBgBHE,WIkBF,4FACA,gBJfE,uCIMJ,kCJLM,iBIgBJ,yCHjCF,iBnBq9ByC,QsB/6BzC,2CACE,MtB+5B8B,KsB95B9B,OtB+5B8B,MsB95B9B,oBACA,OtB85B8B,QsB75B9B,iBtBpCO,QsBqCP,2BpB7BA,mBoBkCF,8BACE,MtB25BuC,KsB15BvC,OtB05BuC,KmB78BzC,iBhBUK,QmB2CH,OtB25BuC,EEj8BvC,mBgBHE,WI4CF,4FACA,gBJzCE,uCIiCJ,8BJhCM,iBI0CJ,qCH3DF,iBnBq9ByC,QsBr5BzC,8BACE,MtBq4B8B,KsBp4B9B,OtBq4B8B,MsBp4B9B,oBACA,OtBo4B8B,QsBn4B9B,iBtB9DO,QsB+DP,2BpBvDA,mBoB4DF,qBACE,oBAEA,2CACE,iBtBtEK,QsByEP,uCACE,iBtB1EK,QuBbX,eACE,kBAEA,gGAGE,OvB+9B8B,mBuB99B9B,YvB+9B8B,KuB59BhC,qBACE,kBACA,MACA,OACA,WACA,YACA,oBACA,gBACA,iBACA,uBACA,mBACA,oBACA,+BACA,qBLPE,WKQF,kDLJE,uCKVJ,qBLWM,iBKMN,oEAEE,oBAEA,8FACE,oBAGF,oMAEE,YvBo8B4B,SuBn8B5B,evBo8B4B,QuBj8B9B,sGACE,YvB+7B4B,SuB97B5B,evB+7B4B,QuB37BhC,4BACE,YvBy7B8B,SuBx7B9B,evBy7B8B,QuBl7B9B,mLACE,QvBk7B4B,IuBj7B5B,UvBk7B4B,oDuB76B9B,oDACE,QvB26B4B,IuB16B5B,UvB26B4B,oDuBt6B9B,6CACE,mBCnEN,aACE,kBACA,aACA,eACA,oBACA,WAEA,iFAGE,kBACA,cACA,SACA,YAIF,0GAGE,UAMF,kBACE,kBACA,UAEA,wBACE,UAWN,kBACE,aACA,mBACA,uB1BoPI,UALI,K0B7OR,YxB0f4B,IwBzf5B,YxBggB4B,IwB/f5B,MrBpDW,QqBqDX,kBACA,mBACA,iBrByBqB,QqBxBrB,yBtBtCE,oBsBgDJ,kHAIE,mB1B8NI,UALI,QI7QN,oBsByDJ,kHAIE,qB1BqNI,UALI,SI7QN,qBsBkEJ,0DAEE,mBAaE,wVtBjEA,0BACA,6BsByEA,yUtB1EA,0BACA,6BsBsFF,0IACE,iBtB1EA,yBACA,4BsB6EF,uHtB9EE,yBACA,4BuBzBF,gBACE,aACA,WACA,WzB+vBoC,OFtflC,UALI,Q2BjQN,MzBi+BqB,QyB99BvB,eACE,kBACA,SACA,UACA,aACA,eACA,oBACA,iB3B4PE,UALI,S2BpPN,MAvBc,KAwBd,iBAvBiB,QvBHjB,oBuB+BA,8HAEE,cA9CF,0DAoDE,azBs8BmB,QyBn8BjB,czBsxBgC,sByBrxBhC,2PACA,4BACA,2DACA,gEAGF,sEACE,azB27BiB,QyB17BjB,WA/Ca,iCAjBjB,0EAyEI,czBowBgC,sByBnwBhC,kFA1EJ,wDAiFE,azBy6BmB,QyBt6BjB,4NAEE,czBm1B8B,SyBl1B9B,2dACA,6DACA,0EAIJ,oEACE,azB45BiB,QyB35BjB,WA9Ea,iCAjBjB,sEAuGI,yCAvGJ,kEA8GE,azB44BmB,QyB14BnB,kFACE,iBzBy4BiB,QyBt4BnB,8EACE,WApGa,iCAuGf,sGACE,MzBi4BiB,QyB53BrB,qDACE,iBA/HF,kVAyIM,UAtHR,kBACE,aACA,WACA,WzB+vBoC,OFtflC,UALI,Q2BjQN,MzBi+BqB,QyB99BvB,iBACE,kBACA,SACA,UACA,aACA,eACA,oBACA,iB3B4PE,UALI,S2BpPN,MAvBc,KAwBd,iBAvBiB,QvBHjB,oBuB+BA,8IAEE,cA9CF,8DAoDE,azBs8BmB,QyBn8BjB,czBsxBgC,sByBrxBhC,4UACA,4BACA,2DACA,gEAGF,0EACE,azB27BiB,QyB17BjB,WA/Ca,iCAjBjB,8EAyEI,czBowBgC,sByBnwBhC,kFA1EJ,4DAiFE,azBy6BmB,QyBt6BjB,oOAEE,czBm1B8B,SyBl1B9B,4iBACA,6DACA,0EAIJ,wEACE,azB45BiB,QyB35BjB,WA9Ea,iCAjBjB,0EAuGI,yCAvGJ,sEA8GE,azB44BmB,QyB14BnB,sFACE,iBzBy4BiB,QyBt4BnB,kFACE,WApGa,iCAuGf,0GACE,MzBi4BiB,QyB53BrB,uDACE,iBA/HF,8VA2IM,UC7IV,KAEE,4BACA,6BACA,uB5B6RI,mBALI,K4BtRR,0BACA,0BACA,wBACA,yBACA,2BACA,mCACA,+BACA,yCACA,6FACA,gCACA,kFAGA,qBACA,wDACA,sC5B4QI,UALI,wB4BrQR,sCACA,sCACA,0BACA,kBAGA,sBACA,eACA,iBACA,mExBjBE,0CiBfF,iBOkCqB,iBRtBjB,WQwBJ,mHRpBI,uCQhBN,KRiBQ,iBQqBN,WACE,gCACA,qBACA,wCACA,8CAGF,sBAEE,0BACA,kCACA,wCAGF,mBACE,gCPrDF,iBOsDuB,uBACrB,8CACA,UAKE,0CAIJ,8BACE,8CACA,UAKE,0CAIJ,mGAKE,iCACA,yCAGA,+CAGA,yKAKI,0CAKN,mDAGE,mCACA,oBACA,2CAEA,iDACA,uCAYF,aCtGA,qBACA,qBACA,+BACA,2BACA,2BACA,qCACA,wCACA,4BACA,4BACA,sCACA,6DACA,8BACA,8BACA,wCDyFA,eCtGA,qBACA,qBACA,+BACA,2BACA,2BACA,qCACA,yCACA,4BACA,4BACA,sCACA,6DACA,8BACA,8BACA,wCDyFA,aCtGA,qBACA,qBACA,+BACA,2BACA,2BACA,qCACA,wCACA,4BACA,4BACA,sCACA,6DACA,8BACA,8BACA,wCDyFA,UCtGA,qBACA,qBACA,+BACA,2BACA,2BACA,qCACA,wCACA,4BACA,4BACA,sCACA,6DACA,8BACA,8BACA,wCDyFA,aCtGA,qBACA,qBACA,+BACA,2BACA,2BACA,qCACA,uCACA,4BACA,4BACA,sCACA,6DACA,8BACA,8BACA,wCDyFA,YCtGA,qBACA,qBACA,+BACA,2BACA,2BACA,qCACA,uCACA,4BACA,4BACA,sCACA,6DACA,8BACA,8BACA,wCDyFA,WCtGA,qBACA,qBACA,+BACA,2BACA,2BACA,qCACA,yCACA,4BACA,4BACA,sCACA,6DACA,8BACA,8BACA,wCDyFA,UCtGA,qBACA,qBACA,+BACA,2BACA,2BACA,qCACA,sCACA,4BACA,4BACA,sCACA,6DACA,8BACA,8BACA,wCDmHA,qBCvGA,wBACA,+BACA,2BACA,2BACA,qCACA,wCACA,4BACA,4BACA,sCACA,6DACA,iCACA,kCACA,wCACA,oBD0FA,uBCvGA,wBACA,+BACA,2BACA,2BACA,qCACA,yCACA,4BACA,4BACA,sCACA,6DACA,iCACA,kCACA,wCACA,oBD0FA,qBCvGA,wBACA,+BACA,2BACA,2BACA,qCACA,uCACA,4BACA,4BACA,sCACA,6DACA,iCACA,kCACA,wCACA,oBD0FA,kBCvGA,wBACA,+BACA,2BACA,2BACA,qCACA,wCACA,4BACA,4BACA,sCACA,6DACA,iCACA,kCACA,wCACA,oBD0FA,qBCvGA,wBACA,+BACA,2BACA,2BACA,qCACA,uCACA,4BACA,4BACA,sCACA,6DACA,iCACA,kCACA,wCACA,oBD0FA,oBCvGA,wBACA,+BACA,2BACA,2BACA,qCACA,uCACA,4BACA,4BACA,sCACA,6DACA,iCACA,kCACA,wCACA,oBD0FA,mBCvGA,wBACA,+BACA,2BACA,2BACA,qCACA,yCACA,4BACA,4BACA,sCACA,6DACA,iCACA,kCACA,wCACA,oBD0FA,kBCvGA,wBACA,+BACA,2BACA,2BACA,qCACA,sCACA,4BACA,4BACA,sCACA,6DACA,iCACA,kCACA,wCACA,oBDsGF,UACE,0BACA,qCACA,yBACA,mCACA,iDACA,yCACA,kDACA,0CACA,iCACA,4CACA,0BACA,wCAEA,gBzBjIkB,KyBsIlB,wCAEE,gBzBvIqB,UyB0IvB,wBACE,0BAGF,gBACE,gCAWJ,2BCxIE,2BACA,yB7BoOI,mBALI,Q6B7NR,+BDyIF,2BC5IE,2BACA,2B7BoOI,mBALI,S6B7NR,gCCnEF,MVgBM,WUfJ,oBVmBI,uCUpBN,MVqBQ,iBUlBN,iBACE,UAMF,qBACE,aAIJ,YACE,SACA,gBVDI,WUEJ,iBVEI,uCULN,YVMQ,iBUDN,gCACE,QACA,YVNE,WUOF,gBVHE,uEACE,iBWpBR,sEAME,kBAGF,iBACE,mBCmBE,wBACE,qBACA,Y9BmewB,O8BlexB,e9BiewB,O8BhexB,WAhCJ,sBACA,sCACA,gBACA,qCAqDE,8BACE,cDzCN,eAEE,2BACA,+BACA,2BACA,gCACA,+B/B6QI,wBALI,K+BtQR,6BACA,0BACA,+DACA,oCACA,gCACA,sDACA,6DACA,wCACA,4DACA,kCACA,wCACA,qCACA,yCACA,sCACA,2CACA,qCACA,uCACA,oCACA,uCACA,uCAGA,kBACA,kCACA,aACA,uCACA,kEACA,S/BgPI,UALI,6B+BzOR,+BACA,gBACA,gBAC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A,oBACA,0Bf5NJ,We8NI,KAGA,+CACE,aAGF,6CACE,aACA,YACA,UACA,oBvB1LR,0BuBoIA,mBAEI,iBACA,2BAEA,+BACE,mBAEA,8CACE,kBAGF,yCACE,kDACA,iDAIJ,sCACE,iBAGF,oCACE,wBACA,gBAGF,mCACE,aAGF,8BAEE,gBACA,aACA,YACA,sBACA,uBACA,8BACA,0CACA,oBACA,0Bf5NJ,We8NI,KAGA,gDACE,aAGF,8CACE,aACA,YACA,UACA,oBvB1LR,0BuBoIA,oBAEI,iBACA,2BAEA,gCACE,mBAEA,+CACE,kBAGF,0CACE,kDACA,iDAIJ,uCACE,iBAGF,qCACE,wBACA,gBAGF,oCACE,aAGF,+BAEE,gBACA,aACA,YACA,sBACA,uBACA,8BACA,0CACA,oBACA,0Bf5NJ,We8NI,KAGA,iDACE,aAGF,+CACE,aACA,YACA,UACA,oBAtDR,eAEI,iBACA,2BAEA,2BACE,mBAEA,0CACE,kBAGF,qCACE,kDACA,iDAIJ,kCACE,iBAGF,gCACE,wBACA,gBAGF,+BACE,aAGF,0BAEE,gBACA,aACA,YACA,sBACA,uBACA,8BACA,0CACA,oBACA,0Bf5NJ,We8NI,KAGA,4CACE,aAGF,0CACE,aACA,YACA,UACA,mBAiBZ,aAEE,6CACA,mDACA,sDACA,+BACA,8BACA,oCACA,2DACA,+QC/QF,MAEE,2BACA,2BACA,kCACA,4BACA,gCACA,gCACA,uBACA,kDACA,iCACA,gCACA,sCACA,sBACA,mBACA,kBACA,sBACA,sCACA,gCAGA,kBACA,aACA,sBACA,YACA,6BACA,qBACA,mCACA,2BACA,qEhCdE,2CgCkBF,SACE,eACA,cAGF,kBACE,mBACA,sBAEA,8BACE,mBhCnBF,0DACA,2DgCsBA,6BACE,sBhCVF,8DACA,6DgCgBF,8DAEE,aAIJ,WAGE,cACA,wDACA,2BAGF,YACE,4CAGF,eACE,oDACA,gBAGF,sBACE,gBAIA,iBACE,qBAGF,sBACE,oCAQJ,aACE,kEACA,gBACA,+BACA,uCACA,4EAEA,yBhCxFE,wFgC6FJ,aACE,kEACA,+BACA,uCACA,yEAEA,wBhCnGE,wFgC6GJ,kBACE,qDACA,oDACA,oDACA,gBAEA,mCACE,mCACA,sCAIJ,mBACE,qDACA,oDAIF,kBACE,kBACA,MACA,QACA,SACA,OACA,2ChCrIE,iDgCyIJ,yCAGE,WAGF,wBhCtII,0DACA,2DgC0IJ,2BhC7HI,8DACA,6DgCyIF,kBACE,0CxBtHA,yBwBkHJ,YAQI,aACA,mBAGA,kBAEE,YACA,gBAEA,wBACE,cACA,cAKA,mChCtKJ,0BACA,6BgCwKM,iGAGE,0BAEF,oGAGE,6BAIJ,oChCvKJ,yBACA,4BgCyKM,mGAGE,yBAEF,sGAGE,6BC/NZ,WAEE,8BACA,2BACA,+KACA,oDACA,iCACA,qCACA,uDACA,sCACA,mCACA,kCACA,8CACA,ySACA,uCACA,mDACA,+DACA,gTACA,+CACA,4EACA,uCACA,oCACA,qCACA,kCAIF,kBACE,kBACA,aACA,mBACA,WACA,4ErCiQI,UALI,KqC1PR,oCACA,gBACA,4CACA,SjCtBE,gBiCwBF,qBjB3BI,WiB4BJ,+BjBxBI,uCiBWN,kBjBVQ,iBiByBN,kCACE,uCACA,+CACA,gGAEA,yCACE,qDACA,iDAKJ,yBACE,cACA,yCACA,0CACA,iBACA,WACA,8CACA,4BACA,mDjBlDE,WiBmDF,wCjB/CE,uCiBsCJ,yBjBrCM,iBiBiDN,wBACE,UAGF,wBACE,UACA,wDACA,UACA,oDAIJ,kBACE,gBAGF,gBACE,gCACA,wCACA,+EAEA,8BjC/DE,yDACA,0DiCiEA,gDjClEA,+DACA,gEiCsEF,oCACE,aAIF,6BjC9DE,6DACA,4DiCiEE,yDjClEF,mEACA,kEiCsEA,iDjCvEA,6DACA,4DiC4EJ,gBACE,8EASA,qCACE,eAGF,iCACE,eACA,cjCpHA,gBiCuHA,0DACA,4DAGE,gHjC3HF,gBkCnBJ,YAEE,6BACA,6BACA,oCAEA,qBACA,gCACA,uCACA,uCACA,2CAGA,aACA,eACA,sEACA,iDtCqRI,UALI,+BsC9QR,gBACA,0FAMA,kCACE,iDAEA,0CACE,WACA,kDACA,yCACA,uFAIJ,wBACE,6CCrCJ,YAEE,mCACA,oCvCkSI,0BALI,KuC3RR,4CACA,4BACA,kCACA,sCACA,sCACA,wDACA,kCACA,4CACA,wDACA,kCACA,yEACA,mCACA,mCACA,6CACA,wCACA,qCACA,+CAGA,ahCpBA,eACA,gBgCuBF,WACE,kBACA,cACA,sEvCsQI,UALI,+BuC/PR,iCAEA,yCACA,iFnBpBI,WmBqBJ,mHnBjBI,uCmBQN,WnBPQ,iBmBkBN,iBACE,UACA,uCACA,qBACA,+CACA,qDAGF,iBACE,UACA,uCACA,+CACA,QrCgoCgC,EqC/nChC,iDAGF,qCAEE,UACA,wClBtDF,iBkBuDuB,+BACrB,sDAGF,yCAEE,0CACA,oBACA,kDACA,wDAKF,wCACE,YrCmmCgC,KqC9lC9B,kCnC9BF,0DACA,6DmCmCE,iCnClDF,2DACA,8DmCkEJ,eClGE,kCACA,mCxCgSI,0BALI,QwCzRR,sCDmGF,eCtGE,kCACA,mCxCgSI,0BALI,SwCzRR,uCCFF,OAEE,6BACA,6BzC6RI,qBALI,OyCtRR,4BACA,uBACA,iCAGA,qBACA,4DzCqRI,UALI,0ByC9QR,wCACA,cACA,4BACA,kBACA,mBACA,wBrCJE,4CqCSF,aACE,aAKJ,YACE,kBACA,SChCF,OAEE,2BACA,6BACA,6BACA,+BACA,0BACA,qCACA,0DACA,iCAGA,kBACA,4DACA,4CACA,4BACA,oCACA,8BtCFE,4CsCOJ,eAEE,cAIF,YACE,YxC8gB4B,IwCtgB9B,mBACE,cvC4B4B,QuCzB5B,8BACE,kBACA,MACA,QACA,UACA,uBAgBF,eChEA,0BACA,uBACA,iCAMA,2BACE,cDuDF,iBChEA,0BACA,uBACA,iCAMA,6BACE,cDuDF,eChEA,0BACA,uBACA,iCAMA,2BACE,cDuDF,YChEA,0BACA,uBACA,iCAMA,wBACE,cDuDF,eChEA,0BACA,uBACA,iCAMA,2BACE,cDuDF,cChEA,0BACA,uBACA,iCAMA,0BACE,cDuDF,aChEA,0BACA,uBACA,iCAMA,yBACE,cDuDF,YChEA,0BACA,uBACA,iCAMA,wBACE,cCPF,gCACE,yB1Cw6CgC,M0Cn6CpC,UAEE,2B5CyRI,wBALI,Q4ClRR,0BACA,oCACA,+DACA,8BACA,8BACA,8CAGA,aACA,iCACA,gB5C6QI,UALI,6B4CtQR,uCxCPE,+CwCYJ,cACE,aACA,sBACA,uBACA,gBACA,mCACA,kBACA,mBACA,2CxBvBI,WwBwBJ,kCxBpBI,uCwBWN,cxBVQ,iBwBsBR,sBvBCE,qMuBCA,oEAIA,uBACE,kDAGE,uCAJJ,uBAKM,gBClDR,YAEE,+BACA,yBACA,mDACA,kCACA,sCACA,uCACA,wCACA,sCACA,4CACA,yCACA,6CACA,0CACA,wCACA,kCACA,mCACA,mCACA,6CAGA,aACA,sBAGA,eACA,gBzCXE,iDyCeJ,qBACE,qBACA,sBAEA,8CAEE,oCACA,0BASJ,wBACE,WACA,wCACA,mBAGA,4DAEE,UACA,8CACA,qBACA,sDAGF,+BACE,+CACA,uDAQJ,iBACE,kBACA,cACA,gFACA,iCAEA,yCACA,iFAEA,6BzCvDE,+BACA,gCyC0DF,4BzC7CE,mCACA,kCyCgDF,oDAEE,0CACA,oBACA,kDAIF,wBACE,UACA,wCACA,gDACA,sDAIF,kCACE,mBAEA,yCACE,sDACA,mDAaF,uBACE,mBAGE,qEzCvDJ,6DAZA,0ByCwEI,qEzCxEJ,2DAYA,4ByCiEI,+CACE,aAGF,yDACE,mDACA,oBAEA,gEACE,uDACA,oDjCtFR,yBiC8DA,0BACE,mBAGE,wEzCvDJ,6DAZA,0ByCwEI,wEzCxEJ,2DAYA,4ByCiEI,kDACE,aAGF,4DACE,mDACA,oBAEA,mEACE,uDACA,qDjCtFR,yBiC8DA,0BACE,mBAGE,wEzCvDJ,6DAZA,0ByCwEI,wEzCxEJ,2DAYA,4ByCiEI,kDACE,aAGF,4DACE,mDACA,oBAEA,mEACE,uDACA,qDjCtFR,yBiC8DA,0BACE,mBAGE,wEzCvDJ,6DAZA,0ByCwEI,wEzCxEJ,2DAYA,4ByCiEI,kDACE,aAGF,4DACE,mDACA,oBAEA,mEACE,uDACA,qDjCtFR,0BiC8DA,0BACE,mBAGE,wEzCvDJ,6DAZA,0ByCwEI,wEzCxEJ,2DAYA,4ByCiEI,kDACE,aAGF,4DACE,mDACA,oBAEA,mEACE,uDACA,qDjCtFR,0BiC8DA,2BACE,mBAGE,yEzCvDJ,6DAZA,0ByCwEI,yEzCxEJ,2DAYA,4ByCiEI,mDACE,aAGF,6DACE,mDACA,oBAEA,oEACE,uDACA,qDjCtFR,0BiC8DA,4BACE,mBAGE,0EzCvDJ,6DAZA,0ByCwEI,0EzCxEJ,2DAYA,4ByCiEI,oDACE,aAGF,8DACE,mDACA,oBAEA,qEACE,uDACA,qDAcZ,kBzChJI,gByCmJF,mCACE,mDAEA,8CACE,sBCtKJ,yBACE,MDmLyB,QClLzB,iBDiLsB,QC9KpB,4GAEE,MD6KqB,QC5KrB,yBAGF,uDACE,M5CRG,K4CSH,iBDuKqB,QCtKrB,aDsKqB,QCpL3B,2BACE,MDmLyB,QClLzB,iBDiLsB,QC9KpB,gHAEE,MD6KqB,QC5KrB,yBAGF,yDACE,M5CRG,K4CSH,iBDuKqB,QCtKrB,aDsKqB,QCpL3B,yBACE,MDmLyB,QClLzB,iBDiLsB,QC9KpB,4GAEE,MD6KqB,QC5KrB,yBAGF,uDACE,M5CRG,K4CSH,iBDuKqB,QCtKrB,aDsKqB,QCpL3B,sBACE,MDqL2B,QCpL3B,iBDiLsB,QC9KpB,sGAEE,MD+KuB,QC9KvB,yBAGF,oDACE,M5CRG,K4CSH,iBDyKuB,QCxKvB,aDwKuB,QCtL7B,yBACE,MDqL2B,QCpL3B,iBDiLsB,QC9KpB,4GAEE,MD+KuB,QC9KvB,yBAGF,uDACE,M5CRG,K4CSH,iBDyKuB,QCxKvB,aDwKuB,QCtL7B,wBACE,MDmLyB,QClLzB,iBDiLsB,QC9KpB,0GAEE,MD6KqB,QC5KrB,yBAGF,sDACE,M5CRG,K4CSH,iBDuKqB,QCtKrB,aDsKqB,QCpL3B,uBACE,MDqL2B,QCpL3B,iBDiLsB,QC9KpB,wGAEE,MD+KuB,QC9KvB,yBAGF,qDACE,M5CRG,K4CSH,iBDyKuB,QCxKvB,aDwKuB,QCtL7B,sBACE,MDmLyB,QClLzB,iBDiLsB,QC9KpB,sGAEE,MD6KqB,QC5KrB,yBAGF,oDACE,M5CRG,K4CSH,iBDuKqB,QCtKrB,aDsKqB,QEnL7B,WACE,uBACA,M5C4DgB,O4C3DhB,O5C2DgB,O4C1DhB,oBACA,M1CgDgB,K0C/ChB,yXACA,S3COE,oB2CLF,Q7C6iD2B,G6C1iD3B,iBACE,M1CwCc,K0CvCd,qBACA,Q7CwiDyB,I6CriD3B,iBACE,UACA,W7C8rB4B,kC6C7rB5B,Q7CmiDyB,E6ChiD3B,wCAEE,oBACA,iBACA,Q7C6hDyB,I6CzhD7B,iBACE,O7CyhD2B,2C8C/jD7B,OAEE,wBACA,8BACA,6BACA,2BACA,4BhD+RI,qBALI,SgDxRR,0BACA,uBACA,6BACA,kDACA,iCACA,yDACA,iCACA,8BACA,oDAGA,gCACA,ehDiRI,UALI,0BgD1QR,4BACA,oBACA,oCACA,4BACA,uEACA,sC5CRE,4C4CWF,eACE,UAGF,kBACE,aAIJ,iBACE,wBAEA,kBACA,+BACA,kBACA,eACA,oBAEA,mCACE,sCAIJ,cACE,aACA,mBACA,4DACA,mCACA,2CACA,4BACA,qF5ChCE,0FACA,2F4CkCF,yBACE,kDACA,sCAIJ,YACE,kCACA,qBC9DF,OAEE,wBACA,wBACA,2BACA,0BACA,0BACA,uBACA,4DACA,6BACA,iCACA,+DACA,mDACA,oCACA,oCACA,yCACA,uDACA,oCACA,kCACA,8BACA,uBACA,uDACA,oCAGA,eACA,MACA,OACA,+BACA,aACA,WACA,YACA,kBACA,gBAGA,UAOF,cACE,kBACA,WACA,8BAEA,oBAGA,0B7B5CI,W6B6CF,uBACA,U/Cm1CgC,oBkB73C9B,uC6BwCJ,0B7BvCM,iB6B2CN,0BACE,U/Ci1CgC,K+C70ClC,kCACE,U/C80CgC,Y+C10CpC,yBACE,6CAEA,wCACE,gBACA,gBAGF,qCACE,gBAIJ,uBACE,aACA,mBACA,iDAIF,eACE,kBACA,aACA,sBACA,WAEA,4BACA,oBACA,oCACA,4BACA,uE7CrFE,4C6CyFF,UAIF,gBAEE,2BACA,uBACA,2BClHA,eACA,MACA,OACA,QDkH0B,0BCjH1B,YACA,aACA,iBD+G4D,sBC5G5D,+BACA,6BD2G0F,2BAK5F,cACE,aACA,cACA,mBACA,8BACA,uCACA,4F7CtGE,2DACA,4D6CwGF,yBACE,4FACA,gJAKJ,aACE,gBACA,8CAKF,YACE,kBAGA,cACA,gCAIF,cACE,aACA,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CA,mBAEA,2CA/ER,WAEI,eACA,SACA,mCACA,aACA,sBACA,eACA,gCACA,kBACA,wCACA,4BACA,UrC1BA,WqC4BA,0BrCxBA,uCqCUJ,WrCTM,iBqCyBF,2BACE,MACA,OACA,gCACA,qFACA,4BAGF,yBACE,MACA,QACA,gCACA,oFACA,2BAGF,yBACE,MACA,QACA,OACA,kCACA,gBACA,sFACA,4BAGF,4BACE,QACA,OACA,kCACA,gBACA,mFACA,2BAGF,gDAEE,eAGF,qDAGE,mBA2BR,oBPlHE,eACA,MACA,OACA,QhDghCkC,KgD/gClC,YACA,aACA,iBhDUS,KgDPT,mCACA,iChDo3CkC,GuDxwCpC,kBACE,aACA,mBACA,8BACA,oEAEA,6BACE,sFACA,oDACA,sDACA,uDAIJ,iBACE,gBACA,YvD4a4B,IuDza9B,gBACE,YACA,oEACA,gBC9IF,aACE,qBACA,eACA,sBACA,YACA,8BACA,QxDqsCkC,GwDnsClC,yBACE,qBACA,WAKJ,gBACE,gBAGF,gBACE,gBAGF,gBACE,iBAKA,+BACE,mDAIJ,4BACE,IACE,QxDwqCgC,IwDpqCpC,kBACE,+EACA,oBACA,8CAGF,4BACE,KACE,wBH9CF,iBACE,cACA,WACA,4BICA,sBACA,wEAFF,mBACE,sBACA,yEAFF,iBACE,sBACA,uEAFF,cACE,sBACA,wEAFF,iBACE,sBACA,uEAFF,gBACE,sBACA,uEAFF,eACE,sBACA,yEAFF,cACE,sBACA,sECNF,cACE,yBAGE,wCAEE,yBANN,gBACE,yBAGE,4CAEE,yBANN,cACE,yBAGE,wCAEE,yBANN,WACE,yBAGE,kCAEE,yBANN,cACE,yBAGE,wCAEE,yBANN,aACE,yBAGE,sCAEE,yBANN,YACE,yBAGE,oCAEE,yBANN,WACE,yBAGE,kCAEE,yBCLR,OACE,kBACA,WAEA,eACE,cACA,mCACA,WAGF,SACE,kBACA,MACA,OACA,WACA,YAKF,WACE,wBADF,WACE,uBADF,YACE,0BADF,YACE,kCCrBJ,WACE,eACA,MACA,QACA,OACA,Q5D6gCkC,K4D1gCpC,cACE,eACA,QACA,SACA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","file":"dark.css"} \ No newline at end of file +{"version":3,"sourceRoot":"","sources":["../../node_modules/bootstrap/scss/mixins/_banner.scss","../../node_modules/bootstrap/scss/_root.scss","../../node_modules/bootstrap/scss/vendor/_rfs.scss","../../node_modules/bootstrap/scss/mixins/_color-mode.scss","../../node_modules/bootstrap/scss/_reboot.scss","../../node_modules/bootstrap/scss/_variables.scss","../scss/main.scss","../../node_modules/bootstrap/scss/mixins/_border-radius.scss","../../node_modules/bootstrap/scss/_type.scss","../../node_modules/bootstrap/scss/mixins/_lists.scss","../../node_modules/bootstrap/scss/_images.scss","../../node_modules/bootstrap/scss/mixins/_image.scss","../../node_modules/bootstrap/scss/_containers.scss","../../node_modules/bootstrap/scss/mixins/_container.scss","../../node_modules/bootstrap/scss/mixins/_breakpoints.scss","../../node_modules/bootstrap/scss/_grid.scss","../../node_modules/bootstrap/scss/mixins/_grid.scss","../../node_modules/bootstrap/scss/_tables.scss","../../node_modules/bootstrap/scss/mixins/_table-variants.scss","../../node_modules/bootstrap/scss/forms/_labels.scss","../../node_modules/bootstrap/scss/forms/_form-text.scss","../../node_modules/bootstrap/scss/forms/_form-control.scss","../scss/dark.scss","../../node_modules/bootstrap/scss/mixins/_transition.scss","../../node_modules/bootstrap/scss/mixins/_gradients.scss","../../node_modules/bootstrap/scss/forms/_form-select.scss","../../node_modules/bootstrap/scss/forms/_form-check.scss","../../node_modules/bootstrap/scss/forms/_form-range.scss","../../node_modules/bootstrap/scss/forms/_floating-labels.scss","../../node_modules/bootstrap/scss/forms/_input-group.scss","../../node_modules/bootstrap/scss/mixins/_forms.scss","../../node_modules/bootstrap/scss/_buttons.scss","../../node_modules/bootstrap/scss/mixins/_buttons.scss","../../node_modules/bootstrap/scss/_transitions.scss","../../node_modules/bootstrap/scss/_dropdown.scss","../../node_modules/bootstrap/scss/mixins/_caret.scss","../../node_modules/bootstrap/scss/_button-group.scss","../../node_modules/bootstrap/scss/_nav.scss","../../node_modules/bootstrap/scss/_navbar.scss","../../node_modules/bootstrap/scss/_card.scss","../../node_modules/bootstrap/scss/_accordion.scss","../../node_modules/bootstrap/scss/_breadcrumb.scss","../../node_modules/bootstrap/scss/_pagination.scss","../../node_modules/bootstrap/scss/mixins/_pagination.scss","../../node_modules/bootstrap/scss/_badge.scss","../../node_modules/bootstrap/scss/_alert.scss","../../node_modules/bootstrap/scss/_progress.scss","../../node_modules/bootstrap/scss/_list-group.scss","../../node_modules/bootstrap/scss/_close.scss","../../node_modules/bootstrap/scss/_toasts.scss","../../node_modules/bootstrap/scss/_modal.scss","../../node_modules/bootstrap/scss/mixins/_backdrop.scss","../../node_modules/bootstrap/scss/_tooltip.scss","../../node_modules/bootstrap/scss/mixins/_reset-text.scss","../../node_modules/bootstrap/scss/_popover.scss","../../node_modules/bootstrap/scss/_carousel.scss","../../node_modules/bootstrap/scss/mixins/_clearfix.scss","../../node_modules/bootstrap/scss/_spinners.scss","../../node_modules/bootstrap/scss/_offcanvas.scss","../../node_modules/bootstrap/scss/_placeholders.scss","../../node_modules/bootstrap/scss/helpers/_color-bg.scss","../../node_modules/bootstrap/scss/helpers/_colored-links.scss","../../node_modules/bootstrap/scss/helpers/_focus-ring.scss","../../node_modules/bootstrap/scss/helpers/_icon-link.scss","../../node_modules/bootstrap/scss/helpers/_ratio.scss","../../node_modules/bootstrap/scss/helpers/_position.scss","../../node_modules/bootstrap/scss/helpers/_stacks.scss","../../node_modules/bootstrap/scss/helpers/_visually-hidden.scss","../../node_modules/bootstrap/scss/mixins/_visually-hidden.scss","../../node_modules/bootstrap/scss/helpers/_stretched-link.scss","../../node_modules/bootstrap/scss/helpers/_text-truncation.scss","../../node_modules/bootstrap/scss/mixins/_text-truncate.scss","../../node_modules/bootstrap/scss/helpers/_vr.scss","../../node_modules/bootstrap/scss/mixins/_utilities.scss","../../node_modules/bootstrap/scss/utilities/_api.scss"],"names":[],"mappings":"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uBAPF,qBAEE,sBAGF,qBAEE,sBAPF,qBAEE,uBAGF,qBAEE,uBAPF,qBAEE,sBAGF,qBAEE,sBAPF,qBAEE,uBAGF,qBAEE,uBAPF,qBAEE,sBAGF,qBAEE,sBAPF,2BAEE,wBAGF,2BAEE,yBCrHV,OAEE,+BACA,4BACA,gCACA,6BAEA,uCACA,iCACA,gDACA,kCACA,+CACA,2CACA,8CACA,yCACA,6CACA,0CAEA,WACA,cXvBO,MWwBP,eZksB4B,IYjsB5B,0CAOA,yBACE,oBAEA,qFACA,oCACA,oBZ0sB0B,uBYzsB1B,2GAGF,aACE,uBAGF,aACE,sBAIJ,qBACE,+DAOF,aACE,iBAUA,4BACE,sBAeF,gCACE,sCAGA,kCACE,sCAOJ,oCACE,sBAGF,qCACE,mBAUF,2CACE,qDACA,+CAMF,yDACE,qDACA,+CAQJ,cACE,qDACA,+CAQA,8BACE,oDACA,8CC5IF,eAOE,uBACA,uBACA,iCACA,+BACA,+BACA,8BACA,8BACA,6BACA,6BAEA,4BACA,0CAlBF,iBAOE,uBACA,uBACA,iCACA,+BACA,+BACA,8BACA,8BACA,6BACA,6BAEA,4BACA,0CAlBF,eAOE,uBACA,uBACA,iCACA,+BACA,+BACA,8BACA,8BACA,6BACA,6BAEA,4BACA,0CAlBF,YAOE,uBACA,uBACA,iCACA,+BACA,+BACA,8BACA,8BACA,6BACA,6BAEA,4BACA,0CAlBF,eAOE,uBACA,uBACA,iCACA,+BACA,+BACA,8BACA,8BACA,6BACA,6BAEA,4BACA,0CAlBF,cAOE,uBACA,uBACA,iCACA,+BACA,+BACA,8BACA,8BACA,6BACA,6BAEA,4BACA,0CAlBF,aAOE,uBACA,uBACA,iCACA,+BACA,+BACA,8BACA,8BACA,6BACA,6BAEA,4BACA,0CAlBF,YAOE,uBACA,uBACA,iCACA,+BACA,+BACA,8BACA,8BACA,6BACA,6BAEA,4BACA,0CDiJA,kBACE,gBACA,iCH3FF,4BGyFA,qBACE,gBACA,kCH3FF,4BGyFA,qBACE,gBACA,kCH3FF,4BGyFA,qBACE,gBACA,kCH3FF,6BGyFA,qBACE,gBACA,kCH3FF,6BGyFA,sBACE,gBACA,kCH3FF,6BGyFA,uBACE,gBACA,kCEnKN,YACE,cdi2BsC,Mcx1BxC,gBACE,oDACA,uDACA,gBjB8QI,UALI,QiBrQR,Yd+lB4B,Ic3lB9B,mBACE,kDACA,qDjBoQI,UALI,QiB3PV,mBACE,mDACA,sDjB8PI,UALI,SkBtRV,WACE,Wfy1BsC,OH/jBlC,UALI,QkBjRR,Mfy1BsC,0BgB91BxC,cACE,cACA,WACA,uBnBwRI,UALI,KmBhRR,YhBkmB4B,IgBjmB5B,YhBymB4B,IgBxmB5B,MCXW,QDYX,iBCSS,QDRT,4BACA,4CACA,gBdGE,sCgBHE,WFMJ,0DEFI,uCFhBN,cEiBQ,iBFGN,yBACE,gBAEA,wDACE,eAKJ,oBACE,MCjCS,QDkCT,iBCbO,QDcP,ahBw2BoC,QgBv2BpC,UAKE,WhBkhBkB,kCgB9gBtB,2CAME,eAMA,aAKA,SAKF,qCACE,cACA,UAIF,2BACE,MCKsB,QDHtB,UAQF,uBAEE,iBC9DgB,QDiEhB,UAIF,oCACE,uBACA,0BACA,kBhB+qB0B,OgB9qB1B,MCjGS,QEGX,iBnB+hCgC,sBgB/7B9B,oBACA,qBACA,mBACA,eACA,wBhB2rB0B,uBgB1rB1B,gBEzFE,WF0FF,mHEtFE,uCF0EJ,oCEzEM,iBFwFN,yEACE,iBhBs7B8B,uBgB76BlC,wBACE,cACA,WACA,kBACA,gBACA,YhBwf4B,IgBvf5B,MhBqxBsC,qBgBpxBtC,+BACA,2BACA,sCAEA,8BACE,UAGF,gFAEE,gBACA,eAWJ,iBACE,WhBswBsC,wDgBrwBtC,qBnByII,UALI,SKvQN,yCcuIF,uCACE,qBACA,wBACA,kBhB+nB0B,MgB3nB9B,iBACE,WhB0vBsC,sDgBzvBtC,mBnB4HI,UALI,QKvQN,yCcoJF,uCACE,mBACA,qBACA,kBhBsnB0B,KgB9mB5B,sBACE,WhBuuBoC,yDgBpuBtC,yBACE,WhBouBoC,wDgBjuBtC,yBACE,WhBiuBoC,sDgB5tBxC,oBACE,MhB+tBsC,KgB9tBtC,OhBwtBsC,yDgBvtBtC,QhB4kB4B,QgB1kB5B,mDACE,eAGF,uCACE,oBdvLA,sCc2LF,0CACE,oBd5LA,sCcgMF,2ChBwsBsC,wDgBvsBtC,2ChBwsBsC,sDoBv5BxC,aACE,yPAEA,cACA,WACA,uCvBqRI,UALI,KuB7QR,YpB+lB4B,IoB9lB5B,YpBsmB4B,IoBrmB5B,MHdW,QGeX,iBHMS,QGLT,kFACA,4BACA,oBpB09BkC,oBoBz9BlC,gBpB09BkC,UoBz9BlC,4ClBFE,sCgBHE,WEQJ,0DACA,gBFLI,uCEfN,aFgBQ,iBEMN,mBACE,apBg3BoC,QoB/2BpC,UAKE,WpB29B4B,kCoBv9BhC,0DAEE,cpBwuB0B,OoBvuB1B,sBAGF,sBAEE,iBHrBgB,QG0BlB,4BACE,oBACA,0BAIJ,gBACE,YpBiuB4B,OoBhuB5B,epBguB4B,OoB/tB5B,apBguB4B,MH7fxB,UALI,SKvQN,yCkB8CJ,gBACE,YpB6tB4B,MoB5tB5B,epB4tB4B,MoB3tB5B,apB4tB4B,KHjgBxB,UALI,QKvQN,yCkBwDA,kCACE,yPCxEN,YACE,cACA,WrB+5BwC,OqB95BxC,arB+5BwC,MqB95BxC,crB+5BwC,QqB75BxC,8BACE,WACA,mBAIJ,oBACE,crBq5BwC,MqBp5BxC,eACA,iBAEA,sCACE,YACA,oBACA,cAIJ,kBACE,4BAEA,MrBq4BwC,IqBp4BxC,OrBo4BwC,IqBn4BxC,iBACA,mBACA,yCACA,+CACA,4BACA,2BACA,wBACA,OrBu4BwC,oDqBt4BxC,gBACA,yBAGA,iCnB1BE,oBmB8BF,8BAEE,crB83BsC,IqB33BxC,yBACE,OrBq3BsC,gBqBl3BxC,wBACE,arBi1BoC,QqBh1BpC,UACA,WrB+foB,kCqB5ftB,0BACE,iBJnDG,QIoDH,aJpDG,QIsDH,yCAII,wPAIJ,sCAII,gKAKN,+CACE,iBJxEG,QIyEH,aJzEG,QI8ED,kPAIJ,2BACE,oBACA,YACA,QrB61BuC,GqBt1BvC,2FACE,eACA,QrBo1BqC,GqBt0B3C,aACE,arB+0BgC,MqB70BhC,+BACE,4KAEA,MrBy0B8B,IqBx0B9B,mBACA,0CACA,gCnBhHA,kBgBHE,WGqHF,qCHjHE,uCGyGJ,+BHxGM,iBGkHJ,qCACE,8JAGF,uCACE,oBrBw0B4B,aqBn0B1B,2JAKN,gCACE,crBmzB8B,MqBlzB9B,eAEA,kDACE,oBACA,cAKN,mBACE,qBACA,arBiyBgC,KqB9xBlC,WACE,kBACA,sBACA,oBAIE,mDACE,oBACA,YACA,QrBkpBwB,IqB3oB1B,8EACE,kLClLN,YACE,WACA,cACA,UACA,+BACA,gBAEA,kBACE,UAIA,mDtBwgCuC,oDsBvgCvC,+CtBugCuC,oDsBpgCzC,8BACE,SAGF,kCACE,MtBy/BuC,KsBx/BvC,OtBw/BuC,KsBv/BvC,oBHzBF,iBFUK,QKiBH,OtBw/BuC,EEpgCvC,mBgBHE,WIkBF,4FACA,gBJfE,uCIMJ,kCJLM,iBIgBJ,yCHjCF,iBnBwhCyC,QsBl/BzC,2CACE,MtBk+B8B,KsBj+B9B,OtBk+B8B,MsBj+B9B,oBACA,OtBi+B8B,QsBh+B9B,iBtBi+B8B,sBsBh+B9B,2BpB7BA,mBoBkCF,8BACE,MtB89BuC,KsB79BvC,OtB69BuC,KmBhhCzC,iBFUK,QK2CH,OtB89BuC,EEpgCvC,mBgBHE,WI4CF,4FACA,gBJzCE,uCIiCJ,8BJhCM,iBI0CJ,qCH3DF,iBnBwhCyC,QsBx9BzC,8BACE,MtBw8B8B,KsBv8B9B,OtBw8B8B,MsBv8B9B,oBACA,OtBu8B8B,QsBt8B9B,iBtBu8B8B,sBsBt8B9B,2BpBvDA,mBoB4DF,qBACE,oBAEA,2CACE,iBtB08BqC,0BsBv8BvC,uCACE,iBtBs8BqC,0BuB7hC3C,eACE,kBAEA,gGAGE,OvBkiCoC,gDuBjiCpC,WvBiiCoC,gDuBhiCpC,YvBiiCoC,KuB9hCtC,qBACE,kBACA,MACA,OACA,UACA,YACA,oBACA,gBACA,iBACA,uBACA,mBACA,oBACA,kDACA,qBLRE,WKSF,kDLLE,uCKTJ,qBLUM,iBKON,oEAEE,oBAEA,8FACE,oBAGF,oMAEE,YvBsgCkC,SuBrgClC,evBsgCkC,QuBngCpC,sGACE,YvBigCkC,SuBhgClC,evBigCkC,QuB7/BtC,4BACE,YvB2/BoC,SuB1/BpC,evB2/BoC,QuBp/BpC,mLACE,2CACA,UvBq/BkC,oDuBn/BlC,+MACE,k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DyFA,UCtGA,qBACA,qBACA,+BACA,2BACA,2BACA,qCACA,wCACA,4BACA,4BACA,sCACA,6DACA,8BACA,8BACA,wCDyFA,aCtGA,qBACA,qBACA,+BACA,2BACA,2BACA,qCACA,uCACA,4BACA,4BACA,sCACA,6DACA,8BACA,8BACA,wCDyFA,YCtGA,qBACA,qBACA,+BACA,2BACA,2BACA,qCACA,uCACA,4BACA,4BACA,sCACA,6DACA,8BACA,8BACA,wCDyFA,WCtGA,qBACA,qBACA,+BACA,2BACA,2BACA,qCACA,yCACA,4BACA,4BACA,sCACA,6DACA,8BACA,8BACA,wCDyFA,UCtGA,qBACA,qBACA,+BACA,2BACA,2BACA,qCACA,sCACA,4BACA,4BACA,sCACA,6DACA,8BACA,8BACA,wCDmHA,qBCvGA,wBACA,+BACA,2BACA,2BACA,qCACA,wCACA,4BACA,4BACA,sCACA,6DACA,iCACA,kCACA,wCACA,oBD0FA,uBCvGA,wBACA,+BACA,2BACA,2BACA,qCACA,yCACA,4BACA,4BACA,sCACA,6DACA,iCACA,kCACA,wCACA,oBD0FA,qBCvGA,wBACA,+BACA,2BACA,2BACA,qCACA,uCACA,4BACA,4BACA,sCACA,6DACA,iCACA,kCACA,wCACA,oBD0FA,kBCvGA,wBACA,+BACA,2BACA,2BACA,qCACA,wCACA,4BACA,4BACA,sCACA,6DACA,iCACA,kCACA,wCACA,oBD0FA,qBCvGA,wBACA,+BACA,2BACA,2BACA,qCACA,uCACA,4BACA,4BACA,sCACA,6DACA,iCACA,kCACA,wCACA,oBD0FA,oBCvGA,wBACA,+BACA,2BACA,2BACA,qCACA,uCACA,4BACA,4BACA,sCACA,6DACA,iCACA,kCACA,wCACA,oBD0FA,mBCvGA,wBACA,+BACA,2BACA,2BACA,qCACA,yCACA,4BACA,4BACA,sCACA,6DACA,iCACA,kCACA,wCACA,oBD0FA,kBCvGA,wBACA,+BACA,2BACA,2BACA,qCACA,sCACA,4BACA,4BACA,sCACA,6DACA,iCACA,kCACA,wCACA,oBDsGF,UACE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ACE,kDACA,iDAIJ,uCACE,iBAGF,qCACE,wBACA,gBAGF,oCACE,aAGF,+BAEE,gBACA,aACA,YACA,sBACA,uBACA,8BACA,0CACA,oBACA,0Bf9NJ,WegOI,KAGA,iDACE,aAGF,+CACE,aACA,YACA,UACA,oBAtDR,eAEI,iBACA,2BAEA,2BACE,mBAEA,0CACE,kBAGF,qCACE,kDACA,iDAIJ,kCACE,iBAGF,gCACE,wBACA,gBAGF,+BACE,aAGF,0BAEE,gBACA,aACA,YACA,sBACA,uBACA,8BACA,0CACA,oBACA,0Bf9NJ,WegOI,KAGA,4CACE,aAGF,0CACE,aACA,YACA,UACA,mBAiBZ,yCAGE,6CACA,mDACA,sDACA,+BACA,8BACA,oCACA,2DACA,+QAME,0CACE,+QCzRN,MAEE,2BACA,2BACA,kCACA,wBACA,2BACA,+CACA,gCACA,iDACA,uBACA,wFACA,iCACA,gCACA,uDACA,sBACA,mBACA,kBACA,sBACA,sCACA,gCAGA,kBACA,aACA,sBACA,YACA,6BACA,2BACA,qBACA,mCACA,2BACA,qEhCjBE,2CgCqBF,SACE,eACA,cAGF,kBACE,mBACA,sBAEA,8BACE,mBhCtBF,0DACA,2DgCyBA,6BACE,sBhCbF,8DACA,6DgCmBF,8DAEE,aAIJ,WAGE,cACA,wDACA,2BAGF,YACE,4CACA,iCAGF,eACE,oDACA,gBACA,oCAGF,sBACE,gBAIA,iBACE,qBAGF,sBACE,oCAQJ,aACE,kEACA,gBACA,+BACA,uCACA,4EAEA,yBhC7FE,wFgCkGJ,aACE,kEACA,+BACA,uCACA,yEAEA,wBhCxGE,wFgCkHJ,kBACE,qDACA,oDACA,oDACA,gBAEA,mCACE,mCACA,sCAIJ,mBACE,qDACA,oDAIF,kBACE,kBACA,MACA,QACA,SACA,OACA,2ChC1IE,iDgC8IJ,yCAGE,WAGF,wBhC3II,0DACA,2DgC+IJ,2BhClII,8DACA,6DgC8IF,kBACE,0CzB3HA,yByBuHJ,YAQI,aACA,mBAGA,kBAEE,YACA,gBAEA,wBACE,cACA,cAKA,mChC3KJ,0BACA,6BgC6KM,iGAGE,0BAEF,oGAGE,6BAIJ,oChC5KJ,yBACA,4BgC8KM,mGAGE,yBAEF,sGAGE,6BCpOZ,WAEE,2CACA,qCACA,+KACA,oDACA,oDACA,sDACA,6FACA,sCACA,mCACA,+CACA,8CACA,ySACA,uCACA,mDACA,+DACA,gTACA,+CACA,4EACA,uCACA,oCACA,6DACA,sDAIF,kBACE,kBACA,aACA,mBACA,WACA,4EtC2PI,UALI,KsCpPR,oCACA,gBACA,4CACA,SjCtBE,gBiCwBF,qBjB3BI,WiB4BJ,+BjBxBI,uCiBWN,kBjBVQ,iBiByBN,kCACE,uCACA,+CACA,gGAEA,yCACE,qDACA,iDAKJ,yBACE,cACA,yCACA,0CACA,iBACA,WACA,8CACA,4BACA,mDjBlDE,WiBmDF,wCjB/CE,uCiBsCJ,yBjBrCM,iBiBiDN,wBACE,UAGF,wBACE,UACA,wDACA,UACA,oDAIJ,kBACE,gBAGF,gBACE,gCACA,wCACA,+EAEA,8BjC/DE,yDACA,0DiCiEA,gDjClEA,+DACA,gEiCsEF,oCACE,aAIF,6BjC9DE,6DACA,4DiCiEE,yDjClEF,mEACA,kEiCsEA,iDjCvEA,6DACA,4DiC4EJ,gBACE,8EASA,qCACE,eAGF,iCACE,eACA,cjCpHA,gBiCuHA,0DACA,4DAGE,gHjC3HF,gBiCqIA,8CACE,ySACA,gTC1JN,YAEE,6BACA,6BACA,oCAEA,qBACA,gCACA,yDACA,uCACA,6DAGA,aACA,eACA,sEACA,iDvC+QI,UALI,+BuCxQR,gBACA,0FAMA,kCACE,iDAEA,0CACE,WACA,kDACA,yCACA,uFAIJ,wBACE,6CCrCJ,YAEE,mCACA,oCxC4RI,0BALI,KwCrRR,4CACA,4BACA,qDACA,sCACA,uDACA,wDACA,kCACA,4CACA,wDACA,iDACA,yEACA,mCACA,mCACA,6CACA,0DACA,qCACA,+CAGA,ajCpBA,eACA,gBiCuBF,WACE,kBACA,cACA,sExCgQI,UALI,+BwCzPR,iCAEA,yCACA,iFnBpBI,WmBqBJ,mHnBjBI,uCmBQN,WnBPQ,iBmBkBN,iBACE,UACA,uCACA,qBACA,+CACA,qDAGF,iBACE,UACA,uCACA,+CACA,QrCouCgC,EqCnuChC,iDAGF,qCAEE,UACA,wClBtDF,iBkBuDuB,+BACrB,sDAGF,yCAEE,0CACA,oBACA,kDACA,wDAKF,wCACE,YrCusCgC,kCqClsC9B,kCnC9BF,0DACA,6DmCmCE,iCnClDF,2DACA,8DmCkEJ,eClGE,kCACA,mCzC0RI,0BALI,QyCnRR,0DDmGF,eCtGE,kCACA,mCzC0RI,0BALI,SyCnRR,0DCFF,OAEE,6BACA,6B1CuRI,qBALI,O0ChRR,4BACA,uBACA,iCAGA,qBACA,4D1C+QI,UALI,0B0CxQR,wCACA,cACA,4BACA,kBACA,mBACA,wBrCJE,4CqCSF,aACE,aAKJ,YACE,kBACA,SChCF,OAEE,2BACA,6BACA,6BACA,+BACA,0BACA,qCACA,6EACA,kDACA,+BAGA,kBACA,4DACA,4CACA,4BACA,oCACA,8BtCHE,4CsCQJ,eAEE,cAIF,YACE,YxC6kB4B,IwC5kB5B,iCAQF,mBACE,cvC0B4B,QuCvB5B,8BACE,kBACA,MACA,QACA,UACA,uBAQF,eACE,kDACA,2CACA,yDACA,uDAJF,iBACE,oDACA,6CACA,2DACA,yDAJF,eACE,kDACA,2CACA,yDACA,uDAJF,YACE,+CACA,wCACA,sDACA,oDAJF,eACE,kDACA,2CACA,yDACA,uDAJF,cACE,iDACA,0CACA,wDACA,sDAJF,aACE,gDACA,yCACA,uDACA,qDAJF,YACE,+CACA,wCACA,sDACA,oDC5DF,gCACE,yBzCmhDgC,MyC9gDpC,4BAGE,2B5CkRI,wBALI,Q4C3QR,yCACA,qDACA,qDACA,8BACA,8BACA,8CAGA,aACA,iCACA,gB5CsQI,UALI,6B4C/PR,uCvCRE,+CuCaJ,cACE,aACA,sBACA,uBACA,gBACA,mCACA,kBACA,mBACA,2CvBxBI,WuByBJ,kCvBrBI,uCuBYN,cvBXQ,iBuBuBR,2NAEE,oEAGF,4BACE,iBAGF,0CACE,WAIA,uBACE,kDAGE,uCAJJ,uBAKM,gBC3DR,YAEE,4CACA,sCACA,qDACA,qDACA,uDACA,uCACA,wCACA,wDACA,6DACA,uDACA,0DACA,yDACA,0DACA,+CACA,mCACA,mCACA,6CAGA,aACA,sBAGA,eACA,gBxCXE,iDwCeJ,qBACE,qBACA,sBAEA,8CAEE,oCACA,0BASJ,wBACE,WACA,wCACA,mBAGA,4DAEE,UACA,8CACA,qBACA,sDAGF,+BACE,+CACA,uDAQJ,iBACE,kBACA,cACA,gFACA,iCAEA,yCACA,iFAEA,6BxCvDE,+BACA,gCwC0DF,4BxC7CE,mCACA,kCwCgDF,oDAEE,0CACA,oBACA,kDAIF,wBACE,UACA,wCACA,gDACA,sDAIF,kCACE,mBAEA,yCACE,sDACA,mDAaF,uBACE,mBAGE,qExCvDJ,6DAZA,0BwCwEI,qExCxEJ,2DAYA,4BwCiEI,+CACE,aAGF,yDACE,mDACA,oBAEA,gEACE,uDACA,oDjCtFR,yBiC8DA,0BACE,mBAGE,wExCvDJ,6DAZA,0BwCwEI,wExCxEJ,2DAYA,4BwCiEI,kDACE,aAGF,4DACE,mDACA,oBAEA,mEACE,uDACA,qDjCtFR,yBiC8DA,0BACE,mBAGE,wExCvDJ,6DAZA,0BwCwEI,wExCxEJ,2DAYA,4BwCiEI,kDACE,aAGF,4DACE,mDACA,oBAEA,mEACE,uDACA,qDjCtFR,yBiC8DA,0BACE,mBAGE,wExCvDJ,6DAZA,0BwCwEI,wExCxEJ,2DAYA,4BwCiEI,kDACE,aAGF,4DACE,mDACA,oBAEA,mEACE,uDACA,qDjCtFR,0BiC8DA,0BACE,mBAGE,wExCvDJ,6DAZA,0BwCwEI,wExCxEJ,2DAYA,4BwCiEI,kDACE,aAGF,4DACE,mDACA,oBAEA,mEACE,uDACA,qDjCtFR,0BiC8DA,2BACE,mBAGE,yExCvDJ,6DAZA,0BwCwEI,yExCxEJ,2DAYA,4BwCiEI,mDACE,aAGF,6DACE,mDACA,oBAEA,oEACE,uDACA,qDjCtFR,0BiC8DA,4BACE,mBAGE,0ExCvDJ,6DAZA,0BwCwEI,0ExCxEJ,2DAYA,4BwCiEI,oDACE,aAGF,8DACE,mDACA,oBAEA,qEACE,uDACA,qDAcZ,kBxChJI,gBwCmJF,mCACE,mDAEA,8CACE,sBAaJ,yBACE,uDACA,gDACA,8DACA,6DACA,iEACA,8DACA,kEACA,0DACA,2DACA,qEAVF,2BACE,yDACA,kDACA,gEACA,6DACA,mEACA,8DACA,oEACA,4DACA,6DACA,uEAVF,yBACE,uDACA,gDACA,8DACA,6DACA,iEACA,8DACA,kEACA,0DACA,2DACA,qEAVF,sBACE,oDACA,6CACA,2DACA,6DACA,8DACA,8DACA,+DACA,uDACA,wDACA,kEAVF,yBACE,uDACA,gDACA,8DACA,6DACA,iEACA,8DACA,kEACA,0DACA,2DACA,qEAVF,wBACE,sDACA,+CACA,6DACA,6DACA,gEACA,8DACA,iEACA,yDACA,0DACA,oEAVF,uBACE,qDACA,8CACA,4DACA,6DACA,+DACA,8DACA,gEACA,wDACA,yDACA,mEAVF,sBACE,oDACA,6CACA,2DACA,6DACA,8DACA,8DACA,+DACA,uDACA,wDACA,kEC5LJ,WAEE,2BACA,qVACA,4BACA,mCACA,oEACA,gCACA,sCACA,wEAGA,uBACA,M1CiDgB,O0ChDhB,O1CgDgB,O0C/ChB,oBACA,gCACA,8EACA,SzCJE,oByCMF,oCAGA,iBACE,gCACA,qBACA,0CAGF,iBACE,UACA,4CACA,0CAGF,wCAEE,oBACA,iBACA,6CAQJ,iBAHE,wCASE,gCATF,wCCjDF,OAEE,wBACA,8BACA,6BACA,2BACA,4B/CyRI,qBALI,S+ClRR,0BACA,uBACA,gDACA,kDACA,kDACA,4CACA,iCACA,8BACA,oDAGA,gCACA,e/C2QI,UALI,0B+CpQR,4BACA,oBACA,oCACA,4BACA,uEACA,sC1CRE,4C0CWF,eACE,UAGF,kBACE,aAIJ,iBACE,wBAEA,kBACA,+BACA,kBACA,eACA,oBAEA,mCACE,sCAIJ,cACE,aACA,mBACA,4DACA,mCACA,2CACA,4BACA,qF1ChCE,0FACA,2F0CkCF,yBACE,kDACA,sCAIJ,YACE,kCACA,qBC9DF,OAEE,wBACA,wBACA,2BACA,0BACA,0BACA,uBACA,4DACA,gDACA,qDACA,+DACA,4FACA,oCACA,oCACA,yCACA,uDACA,uDACA,kCACA,8BACA,uBACA,uDACA,uDAGA,eACA,MACA,OACA,+BACA,aACA,WACA,YACA,kBACA,gBAGA,UAOF,cACE,kBACA,WACA,8BAEA,oBAGA,0B3B5CI,W2B6CF,uBACA,U7Cy7CgC,oBkBn+C9B,uC2BwCJ,0B3BvCM,iB2B2CN,0BACE,U7Cu7CgC,K6Cn7ClC,kCACE,U7Co7CgC,Y6Ch7CpC,yBACE,6CAEA,wCACE,gBACA,gBAGF,qCACE,gBAIJ,uBACE,aACA,mBACA,iDAIF,eACE,kBACA,aACA,sBACA,WAEA,4BACA,oBACA,oCACA,4BACA,uE3CrFE,4C2CyFF,UAIF,gBAEE,2BACA,uBACA,2BClHA,eACA,MACA,OACA,QDkH0B,0BCjH1B,YACA,aACA,iBD+G4D,sBC5G5D,+BACA,6BD2G0F,2BAK5F,cACE,aACA,cACA,mBACA,8BACA,uCACA,4F3CtGE,2DACA,4D2CwGF,yBACE,4FACA,gJAKJ,aACE,gBACA,8CAKF,YACE,kBAGA,cACA,gCAIF,cACE,aACA,cACA,eACA,mBACA,yBACA,sEACA,2CACA,yF3C1HE,+DACA,8D2C+HF,gBACE,2CpC5GA,yBoCkHF,OACE,2BACA,yDAIF,cACE,gCACA,kBACA,iBAGF,UACE,yBpC/HA,yBoCoIF,oBAEE,yBpCtIA,0BoC2IF,UACE,0BAUA,kBACE,YACA,eACA,YACA,SAEA,iCACE,YACA,S3C1MJ,gB2C8ME,gE3C9MF,gB2CmNE,8BACE,gBpC3JJ,4BoCyIA,0BACE,YACA,eACA,YACA,SAEA,yCACE,YACA,S3C1MJ,gB2C8ME,gF3C9MF,gB2CmNE,sCACE,iBpC3JJ,4BoCyIA,0BACE,YACA,eACA,YACA,SAEA,yCACE,YACA,S3C1MJ,gB2C8ME,gF3C9MF,gB2CmNE,sCACE,iBpC3JJ,4BoCyIA,0BACE,YACA,eACA,YACA,SAEA,yCACE,YACA,S3C1MJ,gB2C8ME,gF3C9MF,gB2CmNE,sCACE,iBpC3JJ,6BoCyIA,0BACE,YACA,eACA,YACA,SAEA,yCACE,YACA,S3C1MJ,gB2C8ME,gF3C9MF,gB2CmNE,sCACE,iBpC3JJ,6BoCyIA,2BACE,YACA,eACA,YACA,SAEA,0CACE,YACA,S3C1MJ,gB2C8ME,kF3C9MF,gB2CmNE,uCACE,iBpC3JJ,6BoCyIA,4BACE,YACA,eACA,YACA,SAEA,2CACE,YACA,S3C1MJ,gB2C8ME,oF3C9MF,gB2CmNE,wCACE,iBEtOR,SAEE,0BACA,8BACA,+BACA,+BACA,sBlDwRI,uBALI,SkDjRR,4BACA,yBACA,oDACA,wBACA,iCACA,kCAGA,iCACA,cACA,gCClBA,YhD+lB4B,0BgD7lB5B,kBACA,YhDwmB4B,IgDvmB5B,YhD+mB4B,IgD9mB5B,gBACA,iBACA,qBACA,iBACA,oBACA,sBACA,kBACA,mBACA,oBACA,gBnDgRI,UALI,4BkDhQR,qBACA,UAEA,gDAEA,wBACE,cACA,oCACA,sCAEA,gCACE,kBACA,WACA,2BACA,mBAKN,2FACE,+CAEA,2GACE,SACA,qFACA,sCAKJ,6FACE,6CACA,qCACA,qCAEA,6GACE,WACA,4HACA,wCAMJ,iGACE,4CAEA,iHACE,YACA,qFACA,yCAKJ,8FACE,8CACA,qCACA,qCAEA,8GACE,UACA,4HACA,uCAsBJ,eACE,sCACA,gEACA,8BACA,kBACA,sC7CjGE,8C+CnBJ,SAEE,0BACA,8BpD4RI,uBALI,SoDrRR,mCACA,kDACA,8DACA,uDACA,4FACA,2DACA,sCACA,sCpDmRI,8BALI,KoD5QR,mCACA,+CACA,oCACA,oCACA,8CACA,+BACA,kCACA,0DAGA,iCACA,cACA,sCDzBA,YhD+lB4B,0BgD7lB5B,kBACA,YhDwmB4B,IgDvmB5B,YhD+mB4B,IgD9mB5B,gBACA,iBACA,qBACA,iBACA,oBACA,sBACA,kBACA,mBACA,oBACA,gBnDgRI,UALI,4BoD1PR,qBACA,sCACA,4BACA,2E/ChBE,8C+CoBF,wBACE,cACA,oCACA,sCAEA,+DAEE,kBACA,cACA,WACA,2BACA,mBACA,eAMJ,2FACE,kFAEA,oNAEE,qFAGF,2GACE,SACA,gDAGF,yGACE,sCACA,sCAOJ,6FACE,gFACA,qCACA,qCAEA,wNAEE,4HAGF,6GACE,OACA,kDAGF,2GACE,oCACA,wCAQJ,iGACE,+EAEA,gOAEE,qFAGF,iHACE,MACA,mDAGF,+GACE,mCACA,yCAKJ,mHACE,kBACA,MACA,SACA,cACA,oCACA,qDACA,WACA,+EAMF,8FACE,iFACA,qCACA,qCAEA,0NAEE,4HAGF,8GACE,QACA,iDAGF,4GACE,qCACA,uCAuBN,gBACE,8EACA,gBpD2GI,UALI,mCoDpGR,qCACA,6CACA,kF/C5JE,6DACA,8D+C8JF,sBACE,aAIJ,cACE,0EACA,mCCrLF,UACE,kBAGF,wBACE,mBAGF,gBACE,kBACA,WACA,gBCtBA,uBACE,cACA,WACA,WDuBJ,eACE,kBACA,aACA,WACA,WACA,mBACA,2BhClBI,WgCmBJ,0BhCfI,uCgCQN,ehCPQ,iBgCiBR,8DAGE,cAGF,wEAEE,2BAGF,wEAEE,4BASA,8BACE,UACA,4BACA,eAGF,iJAGE,UACA,UAGF,oFAEE,UACA,UhC5DE,WgC6DF,ehCzDE,uCgCqDJ,oFhCpDM,iBgCiER,8CAEE,kBACA,MACA,SACA,UAEA,aACA,mBACA,uBACA,MlD4gDmC,IkD3gDnC,UACA,MlD1FS,KkD2FT,kBACA,gBACA,SACA,QlDugDmC,GkB7lD/B,WgCuFJ,kBhCnFI,uCgCkEN,8ChCjEQ,iBgCqFN,oHAEE,MlDpGO,KkDqGP,qBACA,UACA,QlD+/CiC,GkD5/CrC,uBACE,OAGF,uBACE,QAKF,wDAEE,qBACA,MlDggDmC,KkD//CnC,OlD+/CmC,KkD9/CnC,4BACA,wBACA,0BAWF,4BACE,yQAEF,4BACE,0QAQF,qBACE,kBACA,QACA,SACA,OACA,UACA,aACA,uBACA,UAEA,alDw8CmC,IkDv8CnC,mBACA,YlDs8CmC,IkDp8CnC,sCACE,uBACA,cACA,MlDs8CiC,KkDr8CjC,OlDs8CiC,IkDr8CjC,UACA,alDs8CiC,IkDr8CjC,YlDq8CiC,IkDp8CjC,mBACA,eACA,iBlD1KO,KkD2KP,4BACA,SAEA,oCACA,uCACA,QlD67CiC,GkBrmD/B,WgCyKF,iBhCrKE,uCgCoJJ,sChCnJM,iBgCuKN,6BACE,QlD07CiC,EkDj7CrC,kBACE,kBACA,UACA,OlDo7CmC,QkDn7CnC,SACA,YlDi7CmC,QkDh7CnC,elDg7CmC,QkD/6CnC,MlDrMS,KkDsMT,kBAMA,sFAEE,OlDq7CiC,yBkDl7CnC,qDACE,iBlDxMO,KkD2MT,iCACE,MlD5MO,KkDkMT,0OAEE,OlDq7CiC,yBkDl7CnC,yIACE,iBlDxMO,KkD2MT,iGACE,MlD5MO,KoDdX,8BAEE,qBACA,8BACA,gCACA,gDAEA,kBACA,6FAIF,0BACE,8CAIF,gBAEE,yBACA,0BACA,sCACA,kCACA,oCACA,4CAGA,yDACA,iCAGF,mBAEE,yBACA,0BACA,iCASF,wBACE,GACE,mBAEF,IACE,UACA,gBAKJ,cAEE,yBACA,0BACA,sCACA,oCACA,0CAGA,8BACA,UAGF,iBACE,yBACA,0BAIA,uCACE,8BAEE,oCC/EN,kGAEE,4BACA,4BACA,4BACA,iCACA,iCACA,2CACA,qCACA,oDACA,gEACA,mEACA,sDACA,sC5C6DE,4B4C5CF,cAEI,eACA,SACA,mCACA,aACA,sBACA,eACA,gCACA,kBACA,wCACA,4BACA,UnC5BA,WmC8BA,gCnC1BA,gEmCYJ,cnCXM,iBTuDJ,4B4C5BE,8BACE,MACA,OACA,gCACA,qFACA,4BAGF,4BACE,MACA,QACA,gCACA,oFACA,2BAGF,4BACE,MACA,QACA,OACA,kCACA,gBACA,sFACA,4BAGF,+BACE,QACA,OACA,kCACA,gBACA,mFACA,2BAGF,sDAEE,eAGF,8DAGE,oB5C5BJ,yB4C/BF,cAiEM,4BACA,+BACA,0CAEA,gCACE,aAGF,8BACE,aACA,YACA,UACA,mBAEA,2C5CnCN,4B4C5CF,cAEI,eACA,SACA,mCACA,aACA,sBACA,eACA,gCACA,kBACA,wCACA,4BACA,UnC5BA,WmC8BA,gCnC1BA,gEmCYJ,cnCXM,iBTuDJ,4B4C5BE,8BACE,MACA,OACA,gCACA,qFACA,4BAGF,4BACE,MACA,QACA,gCACA,oFACA,2BAGF,4BACE,MACA,QACA,OACA,kCACA,gBACA,sFACA,4BAGF,+BACE,QACA,OACA,kCACA,gBACA,mFACA,2BAGF,sDAEE,eAGF,8DAGE,oB5C5BJ,yB4C/BF,cAiEM,4BACA,+BACA,0CAEA,gCACE,aAGF,8BACE,aACA,YACA,UACA,mBAEA,2C5CnCN,4B4C5CF,cAEI,eACA,SACA,mCACA,aACA,sBACA,eACA,gCACA,kBACA,wCACA,4BACA,UnC5BA,WmC8BA,gCnC1BA,gEmCYJ,cnCXM,iBTuDJ,4B4C5BE,8BACE,MACA,OACA,gCACA,qFACA,4BAGF,4BACE,MACA,QACA,gCACA,oFACA,2BAGF,4BACE,MACA,QACA,OACA,kCACA,gBACA,sFACA,4BAGF,+BACE,QACA,OACA,kCACA,gBACA,mFACA,2BAGF,sDAEE,eAGF,8DAGE,oB5C5BJ,yB4C/BF,cAiEM,4BACA,+BACA,0CAEA,gCACE,aAGF,8BACE,aACA,YACA,UACA,mBAEA,2C5CnCN,6B4C5CF,cAEI,eACA,SACA,mCACA,aACA,sBACA,eACA,gCACA,kBACA,wCACA,4BACA,UnC5BA,WmC8BA,gCnC1BA,iEmCYJ,cnCXM,iBTuDJ,6B4C5BE,8BACE,MACA,OACA,gCACA,qFACA,4BAGF,4BACE,MACA,QACA,gCACA,oFACA,2BAGF,4BACE,MACA,QACA,OACA,kCACA,gBACA,sFACA,4BAGF,+BACE,QACA,OACA,kCACA,gBACA,mFACA,2BAGF,sDAEE,eAGF,8DAGE,oB5C5BJ,0B4C/BF,cAiEM,4BACA,+BACA,0CAEA,gCACE,aAGF,8BACE,aACA,YACA,UACA,mBAEA,2C5CnCN,6B4C5CF,eAEI,eACA,SACA,mCACA,aACA,sBACA,eACA,gCACA,kBACA,wCACA,4BACA,UnC5BA,WmC8BA,gCnC1BA,iEmCYJ,enCXM,iBTuDJ,6B4C5BE,+BACE,MACA,OACA,gCACA,qFACA,4BAGF,6BACE,MACA,QACA,gCACA,oFACA,2BAGF,6BACE,MACA,QACA,OACA,kCACA,gBACA,sFACA,4BAGF,gCACE,QACA,OACA,kCACA,gBACA,mFACA,2BAGF,wDAEE,eAGF,iEAGE,oB5C5BJ,0B4C/BF,eAiEM,4BACA,+BACA,0CAEA,iCACE,aAGF,+BACE,aACA,YACA,UACA,mBAEA,2C5CnCN,6B4C5CF,gBAEI,eACA,SACA,mCACA,aACA,sBACA,eACA,gCACA,kBACA,wCACA,4BACA,UnC5BA,WmC8BA,gCnC1BA,iEmCYJ,gBnCXM,iBTuDJ,6B4C5BE,gCACE,MACA,OACA,gCACA,qFACA,4BAGF,8BACE,MACA,QACA,gCACA,oFACA,2BAGF,8BACE,MACA,QACA,OACA,kCACA,gBACA,sFACA,4BAGF,iCACE,QACA,OACA,kCACA,gBACA,mFACA,2BAGF,0DAEE,eAGF,oEAGE,oB5C5BJ,0B4C/BF,gBAiEM,4BACA,+BACA,0CAEA,kCACE,aAGF,gCACE,aACA,YACA,UACA,mBAEA,2CA/ER,WAEI,eACA,SACA,mCACA,aACA,sBACA,eACA,gCACA,kBACA,wCACA,4BACA,UnC5BA,WmC8BA,+BnC1BA,uCmCYJ,WnCXM,iBmC2BF,2BACE,MACA,OACA,gCACA,qFACA,4BAGF,yBACE,MACA,QACA,gCACA,oFACA,2BAGF,yBACE,MACA,QACA,OACA,kCACA,gBACA,sFACA,4BAGF,4BACE,QACA,OACA,kCACA,gBACA,mFACA,2BAGF,gDAEE,eAGF,qDAGE,mBA2BR,oBPpHE,eACA,MACA,OACA,Q9ComCkC,K8CnmClC,YACA,aACA,iB9CUS,K8CPT,mCACA,iC9C09CkC,GqD52CpC,kBACE,aACA,mBACA,8BACA,oEAEA,6BACE,sFACA,oDACA,sDACA,uDAIJ,iBACE,gBACA,kDAGF,gBACE,YACA,oEACA,gBChJF,aACE,qBACA,eACA,sBACA,YACA,8BACA,QtDyyCkC,GsDvyClC,yBACE,qBACA,WAKJ,gBACE,gBAGF,gBACE,gBAGF,gBACE,iBAKA,+BACE,mDAIJ,4BACE,IACE,QtD4wCgC,IsDxwCpC,kBACE,+EACA,oBACA,8CAGF,4BACE,KACE,wBH9CF,iBACE,cACA,WACA,WIFF,iBACE,sBACA,wEAFF,mBACE,sBACA,yEAFF,iBACE,sBACA,uEAFF,cACE,sBACA,wEAFF,iBACE,sBACA,uEAFF,gBACE,sBACA,uEAFF,eACE,sBACA,yEAFF,cACE,sBACA,sECHF,cACE,wEACA,kGAGE,wCAGE,8DACA,wFATN,gBACE,0EACA,oGAGE,4CAGE,8DACA,wFATN,cACE,wEACA,kGAGE,wCAGE,8DACA,wFATN,WACE,qEACA,+FAGE,kCAGE,+DACA,yFATN,cACE,wEACA,kGAGE,wCAGE,+DACA,yFATN,aACE,uEACA,iGAGE,sCAGE,8DACA,wFATN,YACE,sEACA,gGAGE,oCAGE,gEACA,0FATN,WACE,qEACA,+FAGE,kCAGE,6DACA,uFAOR,oBACE,+EACA,yGAGE,oDAEE,kFACA,4GC1BN,kBACE,UAEA,kJCHF,WACE,oBACA,I1D6c4B,Q0D5c5B,mBACA,kFACA,sB1D2c4B,M0D1c5B,2BAEA,eACE,cACA,M1Duc0B,I0Dtc1B,O1Dsc0B,I0Drc1B,kBxCIE,WwCHF,0BxCOE,uCwCZJ,exCaM,iBwCDJ,8DACE,mECnBN,OACE,kBACA,WAEA,eACE,cACA,mCACA,WAGF,SACE,kBACA,MACA,OACA,WACA,YAKF,WACE,wBADF,WACE,uBADF,YACE,0BADF,YACE,kCCrBJ,WACE,eACA,MACA,QACA,OACA,Q5DimCkC,K4D9lCpC,cACE,eACA,QACA,SACA,OACA,Q5DylCkC,K4DjlChC,YACE,gBACA,MACA,Q5D6kC8B,K4D1kChC,eACE,gBACA,SACA,Q5DukC8B,KSxiChC,yBmDxCA,eACE,gBACA,MACA,Q5D6kC8B,K4D1kChC,kBACE,gBACA,SACA,Q5DukC8B,MSxiChC,yBmDxCA,eACE,gBACA,MACA,Q5D6kC8B,K4D1kChC,kBACE,gBACA,SACA,Q5DukC8B,MSxiChC,yBmDxCA,eACE,gBACA,MACA,Q5D6kC8B,K4D1kChC,kBACE,gBACA,SACA,Q5DukC8B,MSxiChC,0BmDxCA,eACE,gBACA,MACA,Q5D6kC8B,K4D1kChC,kBACE,gBACA,SACA,Q5DukC8B,MSxiChC,0BmDxCA,gBACE,gBACA,MACA,Q5D6kC8B,K4D1kChC,mBACE,gBACA,SACA,Q5DukC8B,MSxiChC,0BmDxCA,iBACE,gBACA,MACA,Q5D6kC8B,K4D1kChC,oBACE,gBACA,SACA,Q5DukC8B,M6DtmCpC,QACE,aACA,mBACA,mBACA,mBAGF,QACE,aACA,cACA,sBACA,mBCRF,2ECIE,qBACA,sBACA,qBACA,uBACA,2BACA,iCACA,8BACA,oBAGA,qGACE,6BCdF,uBACE,kBACA,MACA,QACA,SACA,OACA,QhEgcsC,EgE/btC,WCRJ,+BCCE,uBACA,mBCNF,IACE,qBACA,mBACA,UACA,eACA,8BACA,QnE2rB4B,IoE/nBtB,gBAOI,mCAPJ,WAOI,8BAPJ,cAOI,iCAPJ,cAOI,iCAPJ,mBAOI,sCAPJ,gBAOI,mCAPJ,aAOI,sBAPJ,WAOI,uBAPJ,YAOI,sBAPJ,oBAOI,8BAPJ,kBAOI,4BAPJ,iBAOI,2BAPJ,kBAOI,iCAPJ,iBAOI,2BAPJ,WAOI,qBAPJ,YAOI,uBAPJ,YAOI,sBAPJ,YAOI,uBAPJ,aAOI,qBAPJ,eAOI,yBAPJ,iBAOI,2BAPJ,kBAOI,4BAPJ,iBAOI,2BAPJ,iBAOI,2BAPJ,mBAOI,6BAPJ,oBAOI,8BAPJ,mBAOI,6BAPJ,iBAOI,2BAPJ,mBAOI,6BAPJ,oBAOI,8BAPJ,mBAOI,6BAPJ,UAOI,0BAPJ,gBAOI,gCAPJ,SAOI,yBAPJ,QAOI,wBAPJ,eAOI,+BAPJ,SAOI,yBAPJ,aAOI,6BAPJ,cAOI,8BAPJ,QAOI,wBAPJ,eAOI,+BAPJ,QAOI,wBAPJ,QAOI,mDAPJ,WAOI,wDAPJ,WAOI,mDAPJ,aAOI,2BAjBJ,oBACE,iFADF,sBACE,mFADF,oBACE,iFADF,iBACE,8EADF,oBACE,iFADF,mBACE,gFADF,kBACE,+EADF,iBACE,8EASF,iBAOI,2BAPJ,mBAOI,6BAPJ,mBAOI,6BAPJ,gBAOI,0BAPJ,iBAOI,2BAPJ,OAOI,iBAPJ,QAOI,mBAPJ,SAOI,oBAPJ,UAOI,oBAPJ,WAOI,sBAPJ,YAOI,uBAPJ,SAOI,kBAPJ,UAOI,oBAPJ,WAOI,qBAPJ,OAOI,mBAPJ,QAOI,qBAPJ,SAOI,sBAPJ,kBAOI,2CAPJ,oBAOI,sCAPJ,oBAOI,sCAPJ,QAOI,uFAPJ,UAOI,oBAPJ,YAOI,2FAPJ,cAOI,wBAPJ,YAOI,6FAPJ,cAOI,0BAPJ,eAOI,8FAPJ,iBAOI,2BAPJ,cAOI,4FAPJ,gBAOI,yBAPJ,gBAIQ,uBAGJ,8EAPJ,kBAIQ,uBAGJ,gFAPJ,gBAIQ,uBAGJ,8EAPJ,aAIQ,uBAGJ,2EAPJ,gBAIQ,uBAGJ,8EAPJ,eAIQ,uBAGJ,6EAPJ,cAIQ,uBAGJ,4EAPJ,aAIQ,uBAGJ,2EAPJ,cAIQ,uBAGJ,4EAPJ,cAIQ,uBAGJ,4EAPJ,uBAOI,wDAPJ,yBAOI,0DAPJ,uBAOI,wDAPJ,oBAOI,qDAPJ,uBAOI,wDAPJ,sBAOI,uDAPJ,qBAOI,sDAPJ,oBAOI,qDAPJ,UAOI,4BAPJ,UAOI,4BAPJ,UAOI,4BAPJ,UAOI,4BAPJ,UAOI,4BAjBJ,mBACE,yBADF,mBACE,0BADF,mBACE,yBADF,mBACE,0BADF,oBACE,uBASF,MAOI,qBAPJ,MAOI,qBAPJ,MAOI,qBAPJ,OAOI,sBAPJ,QAOI,sBAPJ,QAOI,0BAPJ,QAOI,uBAPJ,YAOI,2BAPJ,MAOI,sBAPJ,MAOI,sBAPJ,MAOI,sBAPJ,OAOI,uBAPJ,QAOI,uBAPJ,QAOI,2BAPJ,QAOI,wBAPJ,YAOI,4BAPJ,WAOI,yBAPJ,UAOI,8BAPJ,aAOI,iCAPJ,kBAOI,sCAPJ,qBAOI,yCAPJ,aAOI,uBAPJ,aAOI,uBAPJ,eAOI,yBAPJ,eAOI,yBAPJ,WAOI,0BAPJ,aAOI,4BAPJ,mBAOI,kCAPJ,uBAOI,sCAPJ,qBAOI,oCAPJ,wBAOI,kCAPJ,yBAOI,yCAPJ,wBAOI,wCAPJ,wBAOI,wCAPJ,mBAOI,kCAPJ,iBAOI,gCAPJ,oBAOI,8BAPJ,sBAOI,gCAPJ,qBAOI,+BAPJ,qBAOI,oCAPJ,mBAOI,kCAPJ,sBAOI,gCAPJ,uBAOI,uCAPJ,sBAOI,sCAPJ,uBAOI,iCAPJ,iBAOI,2BAPJ,kBAOI,iCAPJ,gBAOI,+BAPJ,mBAOI,6BAPJ,qBAOI,+BAPJ,oBAOI,8BAPJ,aAOI,oBAPJ,SAOI,mBAPJ,SAOI,mBAPJ,SAOI,mBAPJ,SAOI,mBAPJ,SAOI,mBAPJ,SAOI,mBAPJ,YAOI,mBAPJ,KAOI,oBAPJ,KAOI,0BAPJ,KAOI,yBAPJ,KAOI,wBAPJ,KAOI,0BAPJ,KAOI,yBAPJ,KAOI,0BAPJ,KAOI,yBAPJ,KAOI,0BAPJ,KAOI,yBAPJ,QAOI,0BAPJ,QAOI,uBAPJ,MAOI,mDAPJ,MAOI,+DAPJ,MAOI,6DAPJ,MAOI,2DAPJ,MAOI,+DAPJ,MAOI,6DAPJ,MAOI,+DAPJ,MAOI,6DAPJ,MAOI,+DAPJ,MAOI,6DAPJ,SAOI,+DAPJ,SAOI,yDAPJ,MAOI,mDAPJ,MAOI,+DAPJ,MAOI,6DAPJ,MAOI,2DAPJ,MAOI,+DAPJ,MAOI,6DAPJ,MAOI,+DAPJ,MAOI,6DAPJ,MAOI,+DAPJ,MAOI,6DAPJ,SAOI,+DAPJ,SAOI,yDAPJ,MAOI,wBAPJ,MAOI,8BAPJ,MAOI,6BAPJ,MAOI,4BAPJ,MAOI,8BAPJ,MAOI,6BAPJ,MAOI,8BAPJ,MAOI,6BAPJ,MAOI,8BAPJ,MAOI,6BAPJ,SAOI,8BAPJ,SAOI,2BAPJ,MAOI,0BAPJ,MAOI,gCAPJ,MAOI,+BAPJ,MAOI,8BAPJ,MAOI,gCAPJ,MAOI,+BAPJ,MAOI,gCAPJ,MAOI,+BAPJ,MAOI,gCAPJ,MAOI,+BAPJ,SAOI,gCAPJ,SAOI,6BAPJ,MAOI,2BAPJ,MAOI,iCAPJ,MAOI,gCAPJ,MAOI,+BAPJ,MAOI,iCAPJ,MAOI,gCAPJ,MAOI,iCAPJ,MAOI,gCAPJ,MAOI,iCAPJ,MAOI,gCAPJ,SAOI,iCAPJ,SAOI,8BAPJ,MAOI,yBAPJ,MAOI,+BAPJ,MAOI,8BAPJ,MAOI,6BAPJ,MAOI,+BAPJ,MAOI,8BAPJ,MAOI,+BAPJ,MAOI,8BAPJ,MAOI,+BAPJ,MAOI,8BAPJ,SAOI,+BAPJ,SAOI,4BAPJ,MAOI,4BAPJ,MAOI,2BAPJ,MAOI,0BAPJ,MAOI,2BAPJ,MAOI,0BAPJ,MAOI,2BAPJ,MAOI,0BAPJ,MAOI,2BAPJ,MAOI,0BAPJ,SAOI,4BAPJ,OAOI,mEAPJ,OAOI,iEAPJ,OAOI,+DAPJ,OAOI,iEAPJ,OAOI,+DAPJ,OAOI,iEAPJ,OAOI,+DAPJ,OAOI,iEAPJ,OAOI,+DAPJ,UAOI,mEAPJ,OAOI,mEAPJ,OAOI,iEAPJ,OAOI,+DAPJ,OAOI,iEAPJ,OAOI,+DAPJ,OAOI,iEAPJ,OAOI,+DAPJ,OAOI,iEAPJ,OAOI,+DAPJ,UAOI,mEAPJ,OAOI,gCAPJ,OAOI,+BAPJ,OAOI,8BAPJ,OAOI,+BAPJ,OAOI,8BAPJ,OAOI,+BAPJ,OAOI,8BAPJ,OAOI,+BAPJ,OAOI,8BAPJ,UAOI,gCAPJ,OAOI,kCAPJ,OAOI,iCAPJ,OAOI,gCAPJ,OAOI,iCAPJ,OAOI,gCAPJ,OAOI,iCAPJ,OAOI,gCAPJ,OAOI,iCAPJ,OAOI,gCAPJ,UAOI,kCAPJ,OAOI,mCAPJ,OAOI,kCAPJ,OAOI,iCAPJ,OAOI,kCAPJ,OAOI,iCAPJ,OAOI,kCAPJ,OAOI,iCAPJ,OAOI,kCAPJ,OAOI,iCAPJ,UAOI,mCAPJ,OAOI,iCAPJ,OAOI,gCAPJ,OAOI,+BAPJ,OAOI,gCAPJ,OAOI,+BAPJ,OAOI,gCAPJ,OAOI,+BAPJ,OAOI,gCAPJ,OAOI,+BAPJ,UAOI,iCAPJ,KAOI,qBAPJ,KAOI,2BAPJ,KAOI,0BAPJ,KAOI,yBAPJ,KAOI,2BAPJ,KAOI,0BAPJ,KAOI,2BAPJ,KAOI,0BAPJ,KAOI,2BAPJ,KAOI,0BAPJ,QAOI,2BAPJ,MAOI,qDAPJ,MAOI,iEAPJ,MAOI,+DAPJ,MAOI,6DAPJ,MAOI,iEAPJ,MAOI,+DAPJ,MAOI,iEAPJ,MAOI,+DAPJ,MAOI,iEAPJ,MAOI,+DAPJ,SAOI,iEAPJ,MAOI,qDAPJ,MAOI,iEAPJ,MAOI,+DAPJ,MAOI,6DAPJ,MAOI,iEAPJ,MAOI,+DAPJ,MAOI,iEAPJ,MAOI,+DAPJ,MAOI,iEAPJ,MAOI,+DAPJ,SAOI,iEAPJ,MAOI,yBAPJ,MAOI,+BAPJ,MAOI,8BAPJ,MAOI,6BAPJ,MAOI,+BAPJ,MAOI,8BAPJ,MAOI,+BAPJ,MAOI,8BAPJ,MAOI,+BAPJ,MAOI,8BAPJ,SAOI,+BAPJ,MAOI,2BAPJ,MAOI,iCAPJ,MAOI,gCAPJ,MAOI,+BAPJ,MAOI,iCAPJ,MAOI,gCAPJ,MAOI,iCAPJ,MAOI,gCAPJ,MAOI,iCAPJ,MAOI,gCAPJ,SAOI,iCAPJ,MAOI,4BAPJ,MAOI,kCAPJ,MAOI,iCAPJ,MAOI,gCAPJ,MAOI,kCAPJ,MAOI,iCAPJ,MAOI,kCAPJ,MAOI,iCAPJ,MAOI,kCAPJ,MAOI,iCAPJ,SAOI,kCAPJ,MAOI,0BAPJ,MAOI,gCAPJ,MAOI,+BAPJ,MAOI,8BAPJ,MAOI,gCAPJ,MAOI,+BAPJ,MAOI,gCAPJ,MAOI,+BAPJ,MAOI,gCAPJ,MAOI,+BAPJ,SAOI,gCAPJ,OAOI,iBAPJ,OAOI,uBAPJ,OAOI,sBAPJ,OAOI,qBAPJ,OAOI,uBAPJ,OAOI,sBAPJ,OAOI,uBAPJ,OAOI,sBAPJ,OAOI,uBAPJ,OAOI,sBAPJ,UAOI,uBAPJ,WAOI,qBAPJ,WAOI,2BAPJ,WAOI,0BAPJ,WAOI,yBAPJ,WAOI,2BAPJ,WAOI,0BAPJ,WAOI,2BAPJ,WAOI,0BAPJ,WAOI,2BAPJ,WAOI,0BAPJ,cAOI,2BAPJ,cAOI,wBAPJ,cAOI,8BAPJ,cAOI,6BAPJ,cAOI,4BAPJ,cAOI,8BAPJ,cAOI,6BAPJ,cAOI,8BAPJ,cAOI,6BAPJ,cAOI,8BAPJ,cAOI,6BAPJ,iBAOI,8BAPJ,gBAOI,gDAPJ,MAOI,4CAPJ,MAOI,4CAPJ,MAOI,0CAPJ,MAOI,4CAPJ,MAOI,6BAPJ,MAOI,0BAPJ,YAOI,6BAPJ,YAOI,6BAPJ,YAOI,+BAPJ,UAOI,2BAPJ,WAOI,2BAPJ,WAOI,2BAPJ,aAOI,2BAPJ,SAOI,2BAPJ,WAOI,8BAPJ,MAOI,yBAPJ,OAOI,4BAPJ,SAOI,2BAPJ,OAOI,yBAPJ,YAOI,2BAPJ,UAOI,4BAPJ,aAOI,6BAPJ,sBAOI,gCAPJ,2BAOI,qCAPJ,8BAOI,wCAPJ,gBAOI,oCAPJ,gBAOI,oCAPJ,iBAOI,qCAPJ,WAOI,8BAPJ,aAOI,8BAPJ,YAOI,iEAPJ,cAIQ,qBAGJ,qEAPJ,gBAIQ,qBAGJ,uEAPJ,cAIQ,qBAGJ,qEAPJ,WAIQ,qBAGJ,kEAPJ,cAIQ,qBAGJ,qEAPJ,aAIQ,qBAGJ,oEAPJ,YAIQ,qBAGJ,mEAPJ,WAIQ,qBAGJ,kEAPJ,YAIQ,qBAGJ,mEAPJ,YAIQ,qBAGJ,mEAPJ,WAIQ,qBAGJ,wEAPJ,YAIQ,qBAGJ,2CAPJ,eAIQ,qBAGJ,gCAPJ,eAIQ,qBAGJ,sCAPJ,qBAIQ,qBAGJ,2CAPJ,oBAIQ,qBAGJ,0CAPJ,oBAIQ,qBAGJ,0CAPJ,YAIQ,qBAGJ,yBAjBJ,iBACE,wBADF,iBACE,uBADF,iBACE,wBADF,kBACE,qBASF,uBAOI,iDAPJ,yBAOI,mDAPJ,uBAOI,iDAPJ,oBAOI,8CAPJ,uBAOI,iDAPJ,sBAOI,gDAPJ,qBAOI,+CAPJ,oBAOI,8CAjBJ,iBACE,uBAIA,6BACE,uBANJ,iBACE,wBAIA,6BACE,wBANJ,iBACE,uBAIA,6BACE,uBANJ,iBACE,wBAIA,6BACE,wBANJ,kBACE,qBAIA,8BACE,qBAIJ,eAOI,wCAKF,2BAOI,wCAnBN,eAOI,uCAKF,2BAOI,uCAnBN,eAOI,wCAKF,2BAOI,wCAnBN,wBAIQ,+BAGJ,+FAPJ,0BAIQ,+BAGJ,iGAPJ,wBAIQ,+BAGJ,+FAPJ,qBAIQ,+BAGJ,4FAPJ,wBAIQ,+BAGJ,+FAPJ,uBAIQ,+BAGJ,8FAPJ,sBAIQ,+BAGJ,6FAPJ,qBAIQ,+BAGJ,4FAPJ,gBAIQ,+BAGJ,qGAjBJ,0BACE,+BAIA,sCACE,+BANJ,2BACE,iCAIA,uCACE,iCANJ,2BACE,kCAIA,uCACE,kCANJ,2BACE,iCAIA,uCACE,iCANJ,2BACE,kCAIA,uCACE,kCANJ,4BACE,+BAIA,wCACE,+BAIJ,YAIQ,mBAGJ,8EAPJ,cAIQ,mBAGJ,gFAPJ,YAIQ,mBAGJ,8EAPJ,SAIQ,mBAGJ,2EAPJ,YAIQ,mBAGJ,8EAPJ,WAIQ,mBAGJ,6EAPJ,UAIQ,mBAGJ,4EAPJ,SAIQ,mBAGJ,2EAPJ,UAIQ,mBAGJ,4EAPJ,UAIQ,mBAGJ,4EAPJ,SAIQ,mBAGJ,8EAPJ,gBAIQ,mBAGJ,0CAPJ,mBAIQ,mBAGJ,mFAPJ,kBAIQ,mBAGJ,kFAjBJ,eACE,qBADF,eACE,sBADF,eACE,qBADF,eACE,sBADF,gBACE,mBASF,mBAOI,wDAPJ,qBAOI,0DAPJ,mBAOI,wDAPJ,gBAOI,qDAPJ,mBAOI,wDAPJ,kBAOI,uDAPJ,iBAOI,sDAPJ,gBAOI,qDAPJ,aAOI,+CAPJ,iBAOI,2BAPJ,kBAOI,4BAPJ,kBAOI,4BAPJ,SAOI,+BAPJ,SAOI,+BAPJ,SAOI,iDAPJ,WAOI,2BAPJ,WAOI,oDAPJ,WAOI,iDAPJ,WAOI,oDAPJ,WAOI,oDAPJ,WAOI,qDAPJ,gBAOI,6BAPJ,cAOI,sDAPJ,aAOI,qHAPJ,eAOI,yEAPJ,eAOI,2HAPJ,eAOI,qHAPJ,eAOI,2HAPJ,eAOI,2HAPJ,eAOI,6HAPJ,oBAOI,6EAPJ,kBAOI,+HAPJ,aAOI,yHAPJ,eAOI,6EAPJ,eAOI,+HAPJ,eAOI,yHAPJ,eAOI,+HAPJ,eAOI,+HAPJ,eAOI,iIAPJ,oBAOI,iFAPJ,kBAOI,mIAPJ,gBAOI,2HAPJ,kBAOI,+EAPJ,kBAOI,iIAPJ,kBAOI,2HAPJ,kBAOI,iIAPJ,kBAOI,iIAPJ,kBAOI,mIAPJ,uBAOI,mFAPJ,qBAOI,qIAPJ,eAOI,uHAPJ,iBAOI,2EAPJ,iBAOI,6HAPJ,iBAOI,uHAPJ,iBAOI,6HAPJ,iBAOI,6HAPJ,iBAOI,+HAPJ,sBAOI,+EAPJ,oBAOI,iIAPJ,SAOI,8BAPJ,WAOI,6BAPJ,MAOI,sBAPJ,KAOI,qBAPJ,KAOI,qBAPJ,KAOI,qBAPJ,KAOI,qB3DVR,yB2DGI,gBAOI,sBAPJ,cAOI,uBAPJ,eAOI,sBAPJ,uBAOI,8BAPJ,qBAOI,4BAPJ,oBAOI,2BAPJ,qBAOI,iCAPJ,oBAOI,2BAPJ,aAOI,0BAPJ,mBAOI,gCAPJ,YAOI,yBAPJ,WAOI,wBAPJ,kBAOI,+BAPJ,YAOI,yBAPJ,gBAOI,6BAPJ,iBAOI,8BAPJ,WAOI,wBAPJ,kBAOI,+BAPJ,WAOI,wBAPJ,cAOI,yBAPJ,aAOI,8BAPJ,gBAOI,iCAPJ,qBAOI,sCAPJ,wBAOI,yCAPJ,gBAOI,uBAPJ,gBAOI,uBAPJ,kBAOI,yBAPJ,kBAOI,yBAPJ,cAOI,0BAPJ,gBAOI,4BAPJ,sBAOI,kCAPJ,0BAOI,sCAPJ,wBAOI,oCAPJ,2BAOI,kCAPJ,4BAOI,yCAPJ,2BAOI,wCAPJ,2BAOI,wCAPJ,sBAOI,kCAPJ,oBAOI,gCAPJ,uBAOI,8BAPJ,yBAOI,gCAPJ,wBAOI,+BAPJ,wBAOI,oCAPJ,sBAOI,kCAPJ,yBAOI,gCAPJ,0BAOI,uCAPJ,yBAOI,sCAPJ,0BAOI,iCAPJ,oBAOI,2BAPJ,qBAOI,iCAPJ,mBAOI,+BAPJ,sBAOI,6BAPJ,wBAOI,+BAPJ,uBAOI,8BAPJ,gBAOI,oBAPJ,YAOI,mBAPJ,YAOI,mBAPJ,YAOI,mBAPJ,YAOI,mBAPJ,YAOI,mBAPJ,YAOI,mBAPJ,eAOI,mBAPJ,QAOI,oBAPJ,QAOI,0BAPJ,QAOI,yBAPJ,QAOI,wBAPJ,QAOI,0BAPJ,QAOI,yBAPJ,QAOI,0BAPJ,QAOI,yBAPJ,QAOI,0BAPJ,QAOI,yBAPJ,WAOI,0BAPJ,WAOI,uBAPJ,SAOI,mDAPJ,SAOI,+DAPJ,SAOI,6DAPJ,SAOI,2DAPJ,SAOI,+DAPJ,SAOI,6DAPJ,SAOI,+DAPJ,SAOI,6DAPJ,SAOI,+DAPJ,SAOI,6DAPJ,YAOI,+DAPJ,YAOI,yDAPJ,SAOI,mDAPJ,SAOI,+DAPJ,SAOI,6DAPJ,SAOI,2DAPJ,SAOI,+DAPJ,SAOI,6DAPJ,SAOI,+DAPJ,SAOI,6DAPJ,SAOI,+DAPJ,SAOI,6DAPJ,YAOI,+DAPJ,YAOI,yDAPJ,SAOI,wBAPJ,SAOI,8BAPJ,SAOI,6BAPJ,SAOI,4BAPJ,SAOI,8BAPJ,SAOI,6BAPJ,SAOI,8BAPJ,SAOI,6BAPJ,SAOI,8BAPJ,SAOI,6BAPJ,YAOI,8BAPJ,YAOI,2BAPJ,SAOI,0BAPJ,SAOI,gCAPJ,SAOI,+BAPJ,SAOI,8BAPJ,SAOI,gCAPJ,SAOI,+BAPJ,SAOI,gCAPJ,SAOI,+BAPJ,SAOI,gCAPJ,SAOI,+BAPJ,YAOI,gCAPJ,YAOI,6BAPJ,SAOI,2BAPJ,SAOI,iCAPJ,SAOI,gCAPJ,SAOI,+BAPJ,SAOI,iCAPJ,SAOI,gCAPJ,SAOI,iCAPJ,SAOI,gCAPJ,SAOI,iCAPJ,SAOI,gCAPJ,YAOI,iCAPJ,YAOI,8BAPJ,SAOI,yBAPJ,SAOI,+BAPJ,SAOI,8BAPJ,SAOI,6BAPJ,SAOI,+BAPJ,SAOI,8BAPJ,SAOI,+BAPJ,SAOI,8BAPJ,SAOI,+BAPJ,SAOI,8BAPJ,YAOI,+BAPJ,YAOI,4BAPJ,SAOI,4BAPJ,SAOI,2BAPJ,SAOI,0BAPJ,SAOI,2BAPJ,SAOI,0BAPJ,SAOI,2BAPJ,SAOI,0BAPJ,SAOI,2BAPJ,SAOI,0BAPJ,YAOI,4BAPJ,UAOI,mEAPJ,UAOI,iEAPJ,UAOI,+DAPJ,UAOI,iEAPJ,UAOI,+DAPJ,UAOI,iEAPJ,UAOI,+DAPJ,UAOI,iEAPJ,UAOI,+DAPJ,aAOI,mEAPJ,UAOI,mEAPJ,UAOI,iEAPJ,UAOI,+DAPJ,UAOI,iEAPJ,UAOI,+DAPJ,UAOI,iEAPJ,UAOI,+DAPJ,UAOI,iEAPJ,UAOI,+DAPJ,aAOI,mEAPJ,UAOI,gCAPJ,UAOI,+BAPJ,UAOI,8BAPJ,UAOI,+BAPJ,UAOI,8BAPJ,UAOI,+BAPJ,UAOI,8BAPJ,UAOI,+BAPJ,UAOI,8BAPJ,aAOI,gCAPJ,UAOI,kCAPJ,UAOI,iCAPJ,UAOI,gCAPJ,UAOI,iCAPJ,UAOI,gCAPJ,UAOI,iCAPJ,UAOI,gCAPJ,UAOI,iCAPJ,UAOI,gCAPJ,aAOI,kCAPJ,UAOI,mCAPJ,UAOI,kCAPJ,UAOI,iCAPJ,UAOI,kCAPJ,UAOI,iCAPJ,UAOI,kCAPJ,UAOI,iCAPJ,UAOI,kCAPJ,UAOI,iCAPJ,aAOI,mCAPJ,UAOI,iCAPJ,UAOI,gCAPJ,UAOI,+BAPJ,UAOI,gCAPJ,UAOI,+BAPJ,UAOI,gCAPJ,UAOI,+BAPJ,UAOI,gCAPJ,UAOI,+BAPJ,aAOI,iCAPJ,QAOI,qBAPJ,QAOI,2BAPJ,QAOI,0BAPJ,QAOI,yBAPJ,QAOI,2BAPJ,QAOI,0BAPJ,QAOI,2BAPJ,QAOI,0BAPJ,QAOI,2BAPJ,QAOI,0BAPJ,WAOI,2BAPJ,SAOI,qDAPJ,SAOI,iEAPJ,SAOI,+DAPJ,SAOI,6DAPJ,SAOI,iEAPJ,SAOI,+DAPJ,SAOI,iEAPJ,SAOI,+DAPJ,SAOI,iEAPJ,SAOI,+DAPJ,YAOI,iEAPJ,SAOI,qDAPJ,SAOI,iEAPJ,SAOI,+DAPJ,SAOI,6DAPJ,SAOI,iEAPJ,SAOI,+DAPJ,SAOI,iEAPJ,SAOI,+DAPJ,SAOI,iEAPJ,SAOI,+DAPJ,YAOI,iEAPJ,SAOI,yBAPJ,SAOI,+BAPJ,SAOI,8BAPJ,SAOI,6BAPJ,SAOI,+BAPJ,SAOI,8BAPJ,SAOI,+BAPJ,SAOI,8BAPJ,SAOI,+BAPJ,SAOI,8BAPJ,YAOI,+BAPJ,SAOI,2BAPJ,SAOI,iCAPJ,SAOI,gCAPJ,SAOI,+BAPJ,SAOI,iCAPJ,SAOI,gCAPJ,SAOI,iCAPJ,SAOI,gCAPJ,SAOI,iCAPJ,SAOI,gCAPJ,YAOI,iCAPJ,SAOI,4BAPJ,SAOI,kCAPJ,SAOI,iCAPJ,SAOI,gCAPJ,SAOI,kCAPJ,SAOI,iCAPJ,SAOI,kCAPJ,SAOI,iCAPJ,SAOI,kCAPJ,SAOI,iCAPJ,YAOI,kCAPJ,SAOI,0BAPJ,SAOI,gCAPJ,SAOI,+BAPJ,SAOI,8BAPJ,SAOI,gCAPJ,SAOI,+BAPJ,SAOI,gCAPJ,SAOI,+BAPJ,SAOI,gCAPJ,SAOI,+BAPJ,YAOI,gCAPJ,UAOI,iBAPJ,UAOI,uBAPJ,UAOI,sBAPJ,UAOI,qBAPJ,UAOI,uBAPJ,UAOI,sBAPJ,UAOI,uBAPJ,UAOI,sBAPJ,UAOI,uBAPJ,UAOI,sBAPJ,aAOI,uBAPJ,cAOI,qBAPJ,cAOI,2BAPJ,cAOI,0BAPJ,cAOI,yBAPJ,cAOI,2BAPJ,cAOI,0BAPJ,cAOI,2BAPJ,cAOI,0BAPJ,cAOI,2BAPJ,cAOI,0BAPJ,iBAOI,2BAPJ,iBAOI,wBAPJ,iBAOI,8BAPJ,iBAOI,6BAPJ,iBAOI,4BAPJ,iBAOI,8BAPJ,iBAOI,6BAPJ,iBAOI,8BAPJ,iBAOI,6BAPJ,iBAOI,8BAPJ,iBAOI,6BAPJ,oBAOI,8BAPJ,eAOI,2BAPJ,aAOI,4BAPJ,gBAOI,8B3DVR,yB2DGI,gBAOI,sBAPJ,cAOI,uBAPJ,eAOI,sBAPJ,uBAOI,8BAPJ,qBAOI,4BAPJ,oBAOI,2BAPJ,qBAOI,iCAPJ,oBAOI,2BAPJ,aAOI,0BAPJ,mBAOI,gCAPJ,YAOI,yBAPJ,WAOI,wBAPJ,kBAOI,+BAPJ,YAOI,yBAPJ,gBAOI,6BAPJ,iBAOI,8BAPJ,WAOI,wBAPJ,kBAOI,+BAPJ,WAOI,wBAPJ,cAOI,yBAPJ,aAOI,8BAPJ,gBAOI,iCAPJ,qBAOI,sCAPJ,wBAOI,yCAPJ,gBAOI,uBAPJ,gBAOI,uBAPJ,kBAOI,yBAPJ,kBAOI,yBAPJ,cAOI,0BAPJ,gBAOI,4BAPJ,sBAOI,kCAPJ,0BAOI,sCAPJ,wBAOI,oCAPJ,2BAOI,kCAPJ,4BAOI,yCAPJ,2BAOI,wCAPJ,2BAOI,wCAPJ,sBAOI,kCAPJ,oBAOI,gCAPJ,uBAOI,8BAPJ,yBAOI,gCAPJ,wBAOI,+BAPJ,wBAOI,oCAPJ,sBAOI,kCAPJ,yBAOI,gCAPJ,0BAOI,uCAPJ,yBAOI,sCAPJ,0BAOI,iCAPJ,oBAOI,2BAPJ,qBAOI,iCAPJ,mBAOI,+BAPJ,sBAOI,6BAPJ,wBAOI,+BAPJ,uBAOI,8BAPJ,gBAOI,oBAPJ,YAOI,mBAPJ,YAOI,mBAPJ,YAOI,mBAPJ,YAOI,mBAPJ,YAOI,mBAPJ,YAOI,mBAPJ,eAOI,mBAPJ,QAOI,oBAPJ,QAOI,0BAPJ,QAOI,yBAPJ,QAOI,wBAPJ,QAOI,0BAPJ,QAOI,yBAPJ,QAOI,0BAPJ,QAOI,yBAPJ,QAOI,0BAPJ,QAOI,yBAPJ,WAOI,0BAPJ,WAOI,uBAPJ,SAOI,mDAPJ,SAOI,+DAPJ,SAOI,6DAPJ,SAOI,2DAPJ,SAOI,+DAPJ,SAOI,6DAPJ,SAOI,+DAPJ,SAOI,6DAPJ,SAOI,+DAPJ,SAOI,6DAPJ,YAOI,+DAPJ,YAOI,yDAPJ,SAOI,mDAPJ,SAOI,+DAPJ,SAOI,6DAPJ,SAOI,2DAPJ,SAOI,+DAPJ,SAOI,6DAPJ,SAOI,+DAPJ,SAOI,6DAPJ,SAOI,+DAPJ,SAOI,6DAPJ,YAOI,+DAPJ,YAOI,yDAPJ,SAOI,wBAPJ,SAOI,8BAPJ,SAOI,6BAPJ,SAOI,4BAPJ,SAOI,8BAPJ,SAOI,6BAPJ,SAOI,8BAPJ,SAOI,6BAPJ,SAOI,8BAPJ,SAOI,6BAPJ,YAOI,8BAPJ,YAOI,2BAPJ,SAOI,0BAPJ,SAOI,gCAPJ,SAOI,+BAPJ,SAOI,8BAPJ,SAOI,gCAPJ,SAOI,+BAPJ,SAOI,gCAPJ,SAOI,+BAPJ,SAOI,gCAPJ,SAOI,+BAPJ,YAOI,gCAPJ,YAOI,6BAPJ,SAOI,2BAPJ,SAOI,iCAPJ,SAOI,gCAPJ,SAOI,+BAPJ,SAOI,iCAPJ,SAOI,gCAPJ,SAOI,iCAPJ,SAOI,gCAPJ,SAOI,iCAPJ,SAOI,gCAPJ,YAOI,iCAPJ,YAOI,8BAPJ,SAOI,yBAPJ,SAOI,+BAPJ,SAOI,8BAPJ,SAOI,6BAPJ,SAOI,+BAPJ,SAOI,8BAPJ,SAOI,+BAPJ,SAOI,8BAPJ,SAOI,+BAPJ,SAOI,8BAPJ,YAOI,+BAPJ,YAOI,4BAPJ,SAOI,4BAPJ,SAOI,2BAPJ,SAOI,0BAPJ,SAOI,2BAPJ,SAOI,0BAPJ,SAOI,2BAPJ,SAOI,0BAPJ,SAOI,2BAPJ,SAOI,0BAPJ,YAOI,4BAPJ,UAOI,mEAPJ,UAOI,iEAPJ,UAOI,+DAPJ,UAOI,iEAPJ,UAOI,+DAPJ,UAOI,iEAPJ,UAOI,+DAPJ,UAOI,iEAPJ,UAOI,+DAPJ,aAOI,mEAPJ,UAOI,mEAPJ,UAOI,iEAPJ,UAOI,+DAPJ,UAOI,iEAPJ,UAOI,+DAPJ,UAOI,iEAPJ,UAOI,+DAPJ,UAOI,iEAPJ,UAOI,+DAPJ,aAOI,mEAPJ,UAOI,gCAPJ,UAOI,+BAPJ,UAOI,8BAPJ,UAOI,+BAPJ,UAOI,8BAPJ,UAOI,+BAPJ,UAOI,8BAPJ,UAOI,+BAPJ,UAOI,8BAPJ,aAOI,gCAPJ,UAOI,kCAPJ,UAOI,iCAPJ,UAOI,gCAPJ,UAOI,iCAPJ,UAOI,gCAPJ,UAOI,iCAPJ,UAOI,gCAPJ,UAOI,iCAPJ,UAOI,gCAPJ,aAOI,kCAPJ,UAOI,mCAPJ,UAOI,kCAPJ,UAOI,iCAPJ,UAOI,kCAPJ,UAOI,iCAPJ,UAOI,kCAPJ,UAOI,iCAPJ,UAOI,kCAPJ,UAOI,iCAPJ,aAOI,mCAPJ,UAOI,iCAPJ,UAOI,gCAPJ,UAOI,+BAPJ,UAOI,gCAPJ,UAOI,+BAPJ,UAOI,gCAPJ,UAOI,+BAPJ,UAOI,gCAPJ,UAOI,+BAPJ,aAOI,iCAPJ,QAOI,qBAPJ,QAOI,2BAPJ,QAOI,0BAPJ,QAOI,yBAPJ,QAOI,2BAPJ,QAOI,0BAPJ,QAOI,2BAPJ,QAOI,0BAPJ,QAOI,2BAPJ,QAOI,0BAPJ,WAOI,2BAPJ,SAOI,qDAPJ,SAOI,iEAPJ,SAOI,+DAPJ,SAOI,6DAPJ,SAOI,iEAPJ,SAOI,+DAPJ,SAOI,iEAPJ,SAOI,+DAPJ,SAOI,iEAPJ,SAOI,+DAPJ,YAOI,iEAPJ,SAOI,qDAPJ,SAOI,iEAPJ,SAOI,+DAPJ,SAOI,6DAPJ,SAOI,iEAPJ,SAOI,+DAPJ,SAOI,iEAPJ,SAOI,+DAPJ,SAOI,iEAPJ,SAOI,+DAPJ,YAOI,iEAPJ,SAOI,yBAPJ,SAOI,+BAPJ,SAOI,8BAPJ,SAOI,6BAPJ,SAOI,+BAPJ,SAOI,8BAPJ,SAOI,+BAPJ,SAOI,8BAPJ,SAOI,+BAPJ,SAOI,8BAPJ,YAOI,+BAPJ,SAOI,2BAPJ,SAOI,iCAPJ,SAOI,gCAPJ,SAOI,+BAPJ,SAOI,iCAPJ,SAOI,gCAPJ,SAOI,iCAPJ,SAOI,gCAPJ,SAOI,iCAPJ,SAOI,gCAPJ,YAOI,iCAPJ,SAOI,4BAPJ,SAOI,kCAPJ,SAOI,iCAPJ,SAOI,gCAPJ,SAOI,kCAPJ,SAOI,iCAPJ,SAOI,kCAPJ,SAOI,iCAPJ,SAOI,kCAPJ,SAOI,iCAPJ,YAOI,kCAPJ,SAOI,0BAPJ,SAOI,gCAPJ,SAOI,+BAPJ,SAOI,8BAPJ,SAOI,gCAPJ,SAOI,+BAPJ,SAOI,gCAPJ,SAOI,+BAPJ,SAOI,gCAPJ,SAOI,+BAPJ,YAOI,gCAPJ,UAOI,iBAPJ,UAOI,uBAPJ,UAOI,sBAPJ,UAOI,qBAPJ,UAOI,uBAPJ,UAOI,sBAPJ,UAOI,uBAPJ,UAOI,sBAPJ,UAOI,uBAPJ,UAOI,sBAPJ,aAOI,uBAPJ,cAOI,qBAPJ,cAOI,2BAPJ,cAOI,0BAPJ,cAOI,yBAPJ,cAOI,2BAPJ,cAOI,0BAPJ,cAOI,2BAPJ,cAOI,0BAPJ,cAOI,2BAPJ,cAOI,0BAPJ,iBAOI,2BAPJ,iBAOI,wBAPJ,iBAOI,8BAPJ,iBAOI,6BAPJ,iBAOI,4BAPJ,iBAOI,8BAPJ,iBAOI,6BAPJ,iBAOI,8BAPJ,iBAOI,6BAPJ,iBAOI,8BAPJ,iBAOI,6BAPJ,oBAOI,8BAPJ,eAOI,2BAPJ,aAOI,4BAPJ,gBAOI,8B3DVR,yB2DGI,gBAOI,sBAPJ,cAOI,uBAPJ,eAOI,sBAPJ,uBAOI,8BAPJ,qBAOI,4BAPJ,oBAOI,2BAPJ,qBAOI,iCAPJ,oBAOI,2BAPJ,aAOI,0BAPJ,mBAOI,gCAPJ,YAOI,yBAPJ,WAOI,wBAPJ,kBAOI,+BAPJ,YAOI,yBAPJ,gBAOI,6BAPJ,iBAOI,8BAPJ,WAOI,wBAPJ,kBAOI,+BAPJ,WAOI,wBAPJ,cAOI,yBAPJ,aAOI,8BAPJ,gBAOI,iCAPJ,qBAOI,sCAPJ,wBAOI,yCAPJ,gBAOI,uBAPJ,gBAOI,uBAPJ,kBAOI,yBAPJ,kBAOI,yBAPJ,cAOI,0BAPJ,gBAOI,4BAPJ,sBAOI,kCAPJ,0BAOI,sCAPJ,wBAOI,oCAPJ,2BAOI,kCAPJ,4BAOI,yCAPJ,2BAOI,wCAPJ,2BAOI,wCAPJ,sBAOI,kCAPJ,oBAOI,gCAPJ,uBAOI,8BAPJ,yBAOI,gCAPJ,wBAOI,+BAPJ,wBAOI,oCAPJ,sBAOI,kCAPJ,yBAOI,gCAPJ,0BAOI,uCAPJ,yBAOI,sCAPJ,0BAOI,iCAPJ,oBAOI,2BAPJ,qBAOI,iCAPJ,mBAOI,+BAPJ,sBAOI,6BAPJ,wBAOI,+BAPJ,uBAOI,8BAPJ,gBAOI,oBAPJ,YAOI,mBAPJ,YAOI,mBAPJ,YAOI,mBAPJ,YAOI,mBAPJ,YAOI,mBAPJ,YAOI,mBAPJ,eAOI,mBAPJ,QAOI,oBAPJ,QAOI,0BAPJ,QAOI,yBAPJ,QAOI,wBAPJ,QAOI,0BAPJ,QAOI,yBAPJ,QAOI,0BAPJ,QAOI,yBAPJ,QAOI,0BAPJ,QAOI,yBAPJ,WAOI,0BAPJ,WAOI,uBAPJ,SAOI,mDAPJ,SAOI,+DAPJ,SAOI,6DAPJ,SAOI,2DAPJ,SAOI,+DAPJ,SAOI,6DAPJ,SAOI,+DAPJ,SAOI,6DAPJ,SAOI,+DAPJ,SAOI,6DAPJ,YAOI,+DAPJ,YAOI,yDAPJ,SAOI,mDAPJ,SAOI,+DAPJ,SAOI,6DAPJ,SAOI,2DAPJ,SAOI,+DAPJ,SAOI,6DAPJ,SAOI,+DAPJ,SAOI,6DAPJ,SAOI,+DAPJ,SAOI,6DAPJ,YAOI,+DAPJ,YAOI,yDAPJ,SAOI,wBAPJ,SAOI,8BAPJ,SAOI,6BAPJ,SAOI,4BAPJ,SAOI,8BAPJ,SAOI,6BAPJ,SAOI,8BAPJ,SAOI,6BAPJ,SAOI,8BAPJ,SAOI,6BAPJ,YAOI,8BAPJ,YAOI,2BAPJ,SAOI,0BAPJ,SAOI,gCAPJ,SAOI,+BAPJ,SAOI,8BAPJ,SAOI,gCAPJ,SAOI,+BAPJ,SAOI,gCAPJ,SAOI,+BAPJ,SAOI,gCAPJ,SAOI,+BAPJ,YAOI,gCAPJ,YAOI,6BAPJ,SAOI,2BAPJ,SAOI,iCAPJ,SAOI,gCAPJ,SAOI,+BAPJ,SAOI,iCAPJ,SAOI,gCAPJ,SAOI,iCAPJ,SAOI,gCAPJ,SAOI,iCAPJ,SAOI,gCAPJ,YAOI,iCAPJ,YAOI,8BAPJ,SAOI,yBAPJ,SAOI,+BAPJ,SAOI,8BAPJ,SAOI,6BAPJ,SAOI,+BAPJ,SAOI,8BAPJ,SAOI,+BAPJ,SAOI,8BAPJ,SAOI,+BAPJ,SAOI,8BAPJ,YAOI,+BAPJ,YAOI,4BAPJ,SAOI,4BAPJ,SAOI,2BAPJ,SAOI,0BAPJ,SAOI,2BAPJ,SAOI,0BAPJ,SAOI,2BAPJ,SAOI,0BAPJ,SAOI,2BAPJ,SAOI,0BAPJ,YAOI,4BAPJ,UAOI,mEAPJ,UAOI,iEAPJ,UAOI,+DAPJ,UAOI,iEAPJ,UAOI,+DAPJ,UAOI,iEAPJ,UAOI,+DAPJ,UAOI,iEAPJ,UAOI,+DAPJ,aAOI,mEAPJ,UAOI,mEAPJ,UAOI,iEAPJ,UAOI,+DAPJ,UAOI,iEAPJ,UAOI,+DAPJ,UAOI,iEAPJ,UAOI,+DAPJ,UAOI,iEAPJ,UAOI,+DAPJ,aAOI,mEAPJ,UAOI,gCAPJ,UAOI,+BAPJ,UAOI,8BAPJ,UAOI,+BAPJ,UAOI,8BAPJ,UAOI,+BAPJ,UAOI,8BAPJ,UAOI,+BAPJ,UAOI,8BAPJ,aAOI,gCAPJ,UAOI,kCAPJ,UAOI,iCAPJ,UAOI,gCAPJ,UAOI,iCAPJ,UAOI,gCAPJ,UAOI,iCAPJ,UAOI,gCAPJ,UAOI,iCAPJ,UAOI,gCAPJ,aAOI,kCAPJ,UAOI,mCAPJ,UAOI,kCAPJ,UAOI,iCAPJ,UAOI,kCAPJ,UAOI,iCAPJ,UAOI,kCAPJ,UAOI,iCAPJ,UAOI,kCAPJ,UAOI,iCAPJ,aAOI,mCAPJ,UAOI,iCAPJ,UAOI,gCAPJ,UAOI,+BAPJ,UAOI,gCAPJ,UAOI,+BAPJ,UAOI,gCAPJ,UAOI,+BAPJ,UAOI,gCAPJ,UAOI,+BAPJ,aAOI,iCAPJ,QAOI,qBAPJ,QAOI,2BAPJ,QAOI,0BAPJ,QAOI,yBAPJ,QAOI,2BAPJ,QAOI,0BAPJ,QAOI,2BAPJ,QAOI,0BAPJ,QAOI,2BAPJ,QAOI,0BAPJ,WAOI,2BAPJ,SAOI,qDAPJ,SAOI,iEAPJ,SAOI,+DAPJ,SAOI,6DAPJ,SAOI,iEAPJ,SAOI,+DAPJ,SAOI,iEAPJ,SAOI,+DAPJ,SAOI,iEAPJ,SAOI,+DAPJ,YAOI,iEAPJ,SAOI,qDAPJ,SAOI,iEAPJ,SAOI,+DAPJ,SAOI,6DAPJ,SAOI,iEAPJ,SAOI,+DAPJ,SAOI,iEAPJ,SAOI,+DAPJ,SAOI,iEAPJ,SAOI,+DAPJ,YAOI,iEAPJ,SAOI,yBAPJ,SAOI,+BAPJ,SAOI,8BAPJ,SAOI,6BAPJ,SAOI,+BAPJ,SAOI,8BAPJ,SAOI,+BAPJ,SAOI,8BAPJ,SAOI,+BAPJ,SAOI,8BAPJ,YAOI,+BAPJ,SAOI,2BAPJ,SAOI,iCAPJ,SAOI,gCAPJ,SAOI,+BAPJ,SAOI,iCAPJ,SAOI,gCAPJ,SAOI,iCAPJ,SAOI,gCAPJ,SAOI,iCAPJ,SAOI,gCAPJ,YAOI,iCAPJ,SAOI,4BAPJ,SAOI,kCAPJ,SAOI,iCAPJ,SAOI,gCAPJ,SAOI,kCAPJ,SAOI,iCAPJ,SAOI,kCAPJ,SAOI,iCAPJ,SAOI,kCAPJ,SAOI,iCAPJ,YAOI,kCAPJ,SAOI,0BAPJ,SAOI,gCAPJ,SAOI,+BAPJ,SAOI,8BAPJ,SAOI,gCAPJ,SAOI,+BAPJ,SAOI,gCAPJ,SAOI,+BAPJ,SAOI,gCAPJ,SAOI,+BAPJ,YAOI,gCAPJ,UAOI,iBAPJ,UAOI,uBAPJ,UAOI,sBAPJ,UAOI,qBAPJ,UAOI,uBAPJ,UAOI,sBAPJ,UAOI,uBAPJ,UAOI,sBAPJ,UAOI,uBAPJ,UAOI,sBAPJ,aAOI,uBAPJ,cAOI,qBAPJ,cAOI,2BAPJ,cAOI,0BAPJ,cAOI,yBAPJ,cAOI,2BAPJ,cAOI,0BAPJ,cAOI,2BAPJ,cAOI,0BAPJ,cAOI,2BAPJ,cAOI,0BAPJ,iBAOI,2BAPJ,iBAOI,wBAPJ,iBAOI,8BAPJ,iBAOI,6BAPJ,iBAOI,4BAPJ,iBAOI,8BAPJ,iBAOI,6BAPJ,iBAOI,8BAPJ,iBAOI,6BAPJ,iBAOI,8BAPJ,iBAOI,6BAPJ,oBAOI,8BAPJ,eAOI,2BAPJ,aAOI,4BAPJ,gBAOI,8B3DVR,0B2DGI,gBAOI,sBAPJ,cAOI,uBAPJ,eAOI,sBAPJ,uBAOI,8BAPJ,qBAOI,4BAPJ,oBAOI,2BAPJ,qBAOI,iCAPJ,oBAOI,2BAPJ,aAOI,0BAPJ,mBAOI,gCAPJ,YAOI,yBAPJ,WAOI,wBAPJ,kBAOI,+BAPJ,YAOI,yBAPJ,gBAOI,6BAPJ,iBAOI,8BAPJ,WAOI,wBAPJ,kBAOI,+BAPJ,WAOI,wBAPJ,cAOI,yBAPJ,aAOI,8BAPJ,gBAOI,iCAPJ,qBAOI,sCAPJ,wBAOI,yCAPJ,gBAOI,uBAPJ,gBAOI,uBAPJ,kBAOI,yBAPJ,kBAOI,yBAPJ,cAOI,0BAPJ,gBAOI,4BAPJ,sBAOI,kCAPJ,0BAOI,sCAPJ,wBAOI,oCAPJ,2BAOI,kCAPJ,4BAOI,yCAPJ,2BAOI,wCAPJ,2BAOI,wCAPJ,sBAOI,kCAPJ,oBAOI,gCAPJ,uBAOI,8BAPJ,yBAOI,gCAPJ,wBAOI,+BAPJ,wBAOI,oCAPJ,sBAOI,kCAPJ,yBAOI,gCAPJ,0BAOI,uCAPJ,yBAOI,sCAPJ,0BAOI,iCAPJ,oBAOI,2BAPJ,qBAOI,iCAPJ,mBAOI,+BAPJ,sBAOI,6BAPJ,wBAOI,+BAPJ,uBAOI,8BAPJ,gBAOI,oBAPJ,YAOI,mBAPJ,YAOI,mBAPJ,YAOI,mBAPJ,YAOI,mBAPJ,YAOI,mBAPJ,YAOI,mBAPJ,eAOI,mBAPJ,QAOI,oBAPJ,QAOI,0BAPJ,QAOI,yBAPJ,QAOI,wBAPJ,QAOI,0BAPJ,QAOI,yBAPJ,QAOI,0BAPJ,QAOI,yBAPJ,QAOI,0BAPJ,QAOI,yBAPJ,WAOI,0BAPJ,WAOI,uBAPJ,SAOI,mDAPJ,SAOI,+DAPJ,SAOI,6DAPJ,SAOI,2DAPJ,SAOI,+DAPJ,SAOI,6DAPJ,SAOI,+DAPJ,SAOI,6DAPJ,SAOI,+DAPJ,SAOI,6DAPJ,YAOI,+DAPJ,YAOI,yDAPJ,SAOI,mDAPJ,SAOI,+DAPJ,SAOI,6DAPJ,SAOI,2DAPJ,SAOI,+DAPJ,SAOI,6DAPJ,SAOI,+DAPJ,SAOI,6DAPJ,SAOI,+DAPJ,SAOI,6DAPJ,YAOI,+DAPJ,YAOI,yDAPJ,SAOI,wBAPJ,SAOI,8BAPJ,SAOI,6BAPJ,SAOI,4BAPJ,SAOI,8BAPJ,SAOI,6BAPJ,SAOI,8BAPJ,SAOI,6BAPJ,SAOI,8BAPJ,SAOI,6BAPJ,YAOI,8BAPJ,YAOI,2BAPJ,SAOI,0BAPJ,SAOI,gCAPJ,SAOI,+BAPJ,SAOI,8BAPJ,SAOI,gCAPJ,SAOI,+BAPJ,SAOI,gCAPJ,SAOI,+BAPJ,SAOI,gCAPJ,SAOI,+BAPJ,YAOI,gCAPJ,YAOI,6BAPJ,SAOI,2BAPJ,SAOI,iCAPJ,SAOI,gCAPJ,SAOI,+BAPJ,SAOI,iCAPJ,SAOI,gCAPJ,SAOI,iCAPJ,SAOI,gCAPJ,SAOI,iCAPJ,SAOI,gCAPJ,YAOI,iCAPJ,YAOI,8BAPJ,SAOI,yBAPJ,SAOI,+BAPJ,SAOI,8BAPJ,SAOI,6BAPJ,SAOI,+BAPJ,SAOI,8BAPJ,SAOI,+BAPJ,SAOI,8BAPJ,SAOI,+BAPJ,SAOI,8BAPJ,YAOI,+BAPJ,YAOI,4BAPJ,SAOI,4BAPJ,SAOI,2BAPJ,SAOI,0BAPJ,SAOI,2BAPJ,SAOI,0BAPJ,SAOI,2BAPJ,SAOI,0BAPJ,SAOI,2BAPJ,SAOI,0BAPJ,YAOI,4BAPJ,UAOI,mEAPJ,UAOI,iEAPJ,UAOI,+DAPJ,UAOI,iEAPJ,UAOI,+DAPJ,UAOI,iEAPJ,UAOI,+DAPJ,UAOI,iEAPJ,UAOI,+DAPJ,aAOI,mEAPJ,UAOI,mEAPJ,UAOI,iEAPJ,UAOI,+DAPJ,UAOI,iEAPJ,UAOI,+DAPJ,UAOI,iEAPJ,UAOI,+DAPJ,UAOI,iEAPJ,UAOI,+DAPJ,aAOI,mEAPJ,UAOI,gCAPJ,UAOI,+BAPJ,UAOI,8BAPJ,UAOI,+BAPJ,UAOI,8BAPJ,UAOI,+BAPJ,UAOI,8BAPJ,UAOI,+BAPJ,UAOI,8BAPJ,aAOI,gCAPJ,UAOI,kCAPJ,UAOI,iCAPJ,UAOI,gCAPJ,UAOI,iCAPJ,UAOI,gCAPJ,UAOI,iCAPJ,UAOI,gCAPJ,UAOI,iCAPJ,UAOI,gCAPJ,aAOI,kCAPJ,UAOI,mCAPJ,UAOI,kCAPJ,UAOI,iCAPJ,UAOI,kCAPJ,UAOI,iCAPJ,UAOI,kCAPJ,UAOI,iCAPJ,UAOI,kCAPJ,UAOI,iCAPJ,aAOI,mCAPJ,UAOI,iCAPJ,UAOI,gCAPJ,UAOI,+BAPJ,UAOI,gCAPJ,UAOI,+BAPJ,UAOI,gCAPJ,UAOI,+BAPJ,UAOI,gCAPJ,UAOI,+BAPJ,aAOI,iCAPJ,QAOI,qBAPJ,QAOI,2BAPJ,QAOI,0BAPJ,QAOI,yBAPJ,QAOI,2BAPJ,QAOI,0BAPJ,QAOI,2BAPJ,QAOI,0BAPJ,QAOI,2BAPJ,QAOI,0BAPJ,WAOI,2BAPJ,SAOI,qDAPJ,SAOI,iEAPJ,SAOI,+DAPJ,SAOI,6DAPJ,SAOI,iEAPJ,SAOI,+DAPJ,SAOI,iEAPJ,SAOI,+DAPJ,SAOI,iEAPJ,SAOI,+DAPJ,YAOI,iEAPJ,SAOI,qDAPJ,SAOI,iEAPJ,SAOI,+DAPJ,SAOI,6DAPJ,SAOI,iEAPJ,SAOI,+DAPJ,SAOI,iEAPJ,SAOI,+DAPJ,SAOI,iEAPJ,SAOI,+DAPJ,YAOI,iEAPJ,SAOI,yBAPJ,SAOI,+BAPJ,SAOI,8BAPJ,SAOI,6BAPJ,SAOI,+BAPJ,SAOI,8BAPJ,SAOI,+BAPJ,SAOI,8BAPJ,SAOI,+BAPJ,SAOI,8BAPJ,YAOI,+BAPJ,SAOI,2BAPJ,SAOI,iCAPJ,SAOI,gCAPJ,SAOI,+BAPJ,SAOI,iCAPJ,SAOI,gCAPJ,SAOI,iCAPJ,SAOI,gCAPJ,SAOI,iCAPJ,SAOI,gCAPJ,YAOI,iCAPJ,SAOI,4BAPJ,SAOI,kCAPJ,SAOI,iCAPJ,SAOI,gCAPJ,SAOI,kCAPJ,SAOI,iCAPJ,SAOI,kCAPJ,SAOI,iCAPJ,SAOI,kCAPJ,SAOI,iCAPJ,YAOI,kCAPJ,SAOI,0BAPJ,SAOI,gCAPJ,SAOI,+BAPJ,SAOI,8BAPJ,SAOI,gCAPJ,SAOI,+BAPJ,SAOI,gCAPJ,SAOI,+BAPJ,SAOI,gCAPJ,SAOI,+BAPJ,YAOI,gCAPJ,UAOI,iBAPJ,UAOI,uBAPJ,UAOI,sBAPJ,UAOI,qBAPJ,UAOI,uBAPJ,UAOI,sBAPJ,UAOI,uBAPJ,UAOI,sBAPJ,UAOI,uBAPJ,UAOI,sBAPJ,aAOI,uBAPJ,cAOI,qBAPJ,cAOI,2BAPJ,cAOI,0BAPJ,cAOI,yBAPJ,cAOI,2BAPJ,cAOI,0BAPJ,cAOI,2BAPJ,cAOI,0BAPJ,cAOI,2BAPJ,cAOI,0BAPJ,iBAOI,2BAPJ,iBAOI,wBAPJ,iBAOI,8BAPJ,iBAOI,6BAPJ,iBAOI,4BAPJ,iBAOI,8BAPJ,iBAOI,6BAPJ,iBAOI,8BAPJ,iBAOI,6BAPJ,iBAOI,8BAPJ,iBAOI,6BAPJ,oBAOI,8BAPJ,eAOI,2BAPJ,aAOI,4BAPJ,gBAOI,8B3DVR,0B2DGI,iBAOI,sBAPJ,eAOI,uBAPJ,gBAOI,sBAPJ,wBAOI,8BAPJ,sBAOI,4BAPJ,qBAOI,2BAPJ,sBAOI,iCAPJ,qBAOI,2BAPJ,cAOI,0BAPJ,oBAOI,gCAPJ,aAOI,yBAPJ,YAOI,wBAPJ,mBAOI,+BAPJ,aAOI,yBAPJ,iBAOI,6BAPJ,kBAOI,8BAPJ,YAOI,wBAPJ,mBAOI,+BAPJ,YAOI,wBAPJ,eAOI,yBAPJ,cAOI,8BAPJ,iBAOI,iCAPJ,sBAOI,sCAPJ,yBAOI,yCAPJ,iBAOI,uBAPJ,iBAOI,uBAPJ,mBAOI,yBAPJ,mBAOI,yBAPJ,eAOI,0BAPJ,iBAOI,4BAPJ,uBAOI,kCAPJ,2BAOI,sCAPJ,yBAOI,oCAPJ,4BAOI,kCAPJ,6BAOI,yCAPJ,4BAOI,wCAPJ,4BAOI,wCAPJ,uBAOI,kCAPJ,qBAOI,gCAPJ,wBAOI,8BAPJ,0BAOI,gCAPJ,yBAOI,+BAPJ,yBAOI,oCAPJ,uBAOI,kCAPJ,0BAOI,gCAPJ,2BAOI,uCAPJ,0BAOI,sCAPJ,2BAOI,iCAPJ,qBAOI,2BAPJ,sBAOI,iCAPJ,oBAOI,+BAPJ,uBAOI,6BAPJ,yBAOI,+BAPJ,wBAOI,8BAPJ,iBAOI,oBAPJ,aAOI,mBAPJ,aAOI,mBAPJ,aAOI,mBAPJ,aAOI,mBAPJ,aAOI,mBAPJ,aAOI,mBAPJ,gBAOI,mBAPJ,SAOI,oBAPJ,SAOI,0BAPJ,SAOI,yBAPJ,SAOI,wBAPJ,SAOI,0BAPJ,SAOI,yBAPJ,SAOI,0BAPJ,SAOI,yBAPJ,SAOI,0BAPJ,SAOI,yBAPJ,YAOI,0BAPJ,YAOI,uBAPJ,UAOI,mDAPJ,UAOI,+DAPJ,UAOI,6DAPJ,UAOI,2DAPJ,UAOI,+DAPJ,UAOI,6DAPJ,UAOI,+DAPJ,UAOI,6DAPJ,UAOI,+DAPJ,UAOI,6DAPJ,aAOI,+DAPJ,aAOI,yDAPJ,UAOI,mDAPJ,UAOI,+DAPJ,UAOI,6DAPJ,UAOI,2DAPJ,UAOI,+DAPJ,UAOI,6DAPJ,UAOI,+DAPJ,UAOI,6DAPJ,UAOI,+DAPJ,UAOI,6DAPJ,aAOI,+DAPJ,aAOI,yDAPJ,UAOI,wBAPJ,UAOI,8BAPJ,UAOI,6BAPJ,UAOI,4BAPJ,UAOI,8BAPJ,UAOI,6BAPJ,UAOI,8BAPJ,UAOI,6BAPJ,UAOI,8BAPJ,UAOI,6BAPJ,aAOI,8BAPJ,aAOI,2BAPJ,UAOI,0BAPJ,UAOI,gCAPJ,UAOI,+BAPJ,UAOI,8BAPJ,UAOI,gCAPJ,UAOI,+BAPJ,UAOI,gCAPJ,UAOI,+BAPJ,UAOI,gCAPJ,UAOI,+BAPJ,aAOI,gCAPJ,aAOI,6BAPJ,UAOI,2BAPJ,UAOI,iCAPJ,UAOI,gCAPJ,UAOI,+BAPJ,UAOI,iCAPJ,UAOI,gCAPJ,UAOI,iCAPJ,UAOI,gCAPJ,UAOI,iCAPJ,UAOI,gCAPJ,aAOI,iCAPJ,aAOI,8BAPJ,UAOI,yBAPJ,UAOI,+BAPJ,UAOI,8BAPJ,UAOI,6BAPJ,UAOI,+BAPJ,UAOI,8BAPJ,UAOI,+BAPJ,UAOI,8BAPJ,UAOI,+BAPJ,UAOI,8BAPJ,aAOI,+BAPJ,aAOI,4BAPJ,UAOI,4BAPJ,UAOI,2BAPJ,UAOI,0BAPJ,UAOI,2BAPJ,UAOI,0BAPJ,UAOI,2BAPJ,UAOI,0BAPJ,UAOI,2BAPJ,UAOI,0BAPJ,aAOI,4BAPJ,WAOI,mEAPJ,WAOI,iEAPJ,WAOI,+DAPJ,WAOI,iEAPJ,WAOI,+DAPJ,WAOI,iEAPJ,WAOI,+DAPJ,WAOI,iEAPJ,WAOI,+DAPJ,cAOI,mEAPJ,WAOI,mEAPJ,WAOI,iEAPJ,WAOI,+DAPJ,WAOI,iEAPJ,WAOI,+DAPJ,WAOI,iEAPJ,WAOI,+DAPJ,WAOI,iEAPJ,WAOI,+DAPJ,cAOI,mEAPJ,WAOI,gCAPJ,WAOI,+BAPJ,WAOI,8BAPJ,WAOI,+BAPJ,WAOI,8BAPJ,WAOI,+BAPJ,WAOI,8BAPJ,WAOI,+BAPJ,WAOI,8BAPJ,cAOI,gCAPJ,WAOI,kCAPJ,WAOI,iCAPJ,WAOI,gCAPJ,WAOI,iCAPJ,WAOI,gCAPJ,WAOI,iCAPJ,WAOI,gCAPJ,WAOI,iCAPJ,WAOI,gCAPJ,cAOI,kCAPJ,WAOI,mCAPJ,WAOI,kCAPJ,WAOI,iCAPJ,WAOI,kCAPJ,WAOI,iCAPJ,WAOI,kCAPJ,WAOI,iCAPJ,WAOI,kCAPJ,WAOI,iCAPJ,cAOI,mCAPJ,WAOI,iCAPJ,WAOI,gCAPJ,WAOI,+BAPJ,WAOI,gCAPJ,WAOI,+BAPJ,WAOI,gCAPJ,WAOI,+BAPJ,WAOI,gCAPJ,WAOI,+BAPJ,cAOI,iCAPJ,SAOI,qBAPJ,SAOI,2BAPJ,SAOI,0BAPJ,SAOI,yBAPJ,SAOI,2BAPJ,SAOI,0BAPJ,SAOI,2BAPJ,SAOI,0BAPJ,SAOI,2BAPJ,SAOI,0BAPJ,YAOI,2BAPJ,UAOI,qDAPJ,UAOI,iEAPJ,UAOI,+DAPJ,UAOI,6DAPJ,UAOI,iEAPJ,UAOI,+DAPJ,UAOI,iEAPJ,UAOI,+DAPJ,UAOI,iEAPJ,UAOI,+DAPJ,aAOI,iEAPJ,UAOI,qDAPJ,UAOI,iEAPJ,UAOI,+DAPJ,UAOI,6DAPJ,UAOI,iEAPJ,UAOI,+DAPJ,UAOI,iEAPJ,UAOI,+DAPJ,UAOI,iEAPJ,UAOI,+DAPJ,aAOI,iEAPJ,UAOI,yBAPJ,UAOI,+BAPJ,UAOI,8BAPJ,UAOI,6BAPJ,UAOI,+BAPJ,UAOI,8BAPJ,UAOI,+BAPJ,UAOI,8BAPJ,UAOI,+BAPJ,UAOI,8BAPJ,aAOI,+BAPJ,UAOI,2BAPJ,UAOI,iCAPJ,UAOI,gCAPJ,UAOI,+BAPJ,UAOI,iCAPJ,UAOI,gCAPJ,UAOI,iCAPJ,UAOI,gCAPJ,UAOI,iCAPJ,UAOI,gCAPJ,aAOI,iCAPJ,UAOI,4BAPJ,UAOI,kCAPJ,UAOI,iCAPJ,UAOI,gCAPJ,UAOI,kCAPJ,UAOI,iCAPJ,UAOI,kCAPJ,UAOI,iCAPJ,UAOI,kCAPJ,UAOI,iCAPJ,aAOI,kCAPJ,UAOI,0BAPJ,UAOI,gCAPJ,UAOI,+BAPJ,UAOI,8BAPJ,UAOI,gCAPJ,UAOI,+BAPJ,UAOI,gCAPJ,UAOI,+BAPJ,UAOI,gCAPJ,UAOI,+BAPJ,aAOI,gCAPJ,WAOI,iBAPJ,WAOI,uBAPJ,WAOI,sBAPJ,WAOI,qBAPJ,WAOI,uBAPJ,WAOI,sBAPJ,WAOI,uBAPJ,WAOI,sBAPJ,WAOI,uBAPJ,WAOI,sBAPJ,cAOI,uBAPJ,eAOI,qBAPJ,eAOI,2BAPJ,eAOI,0BAPJ,eAOI,yBAPJ,eAOI,2BAPJ,eAOI,0BAPJ,eAOI,2BAPJ,eAOI,0BAPJ,eAOI,2BAPJ,eAOI,0BAPJ,kBAOI,2BAPJ,kBAOI,wBAPJ,kBAOI,8BAPJ,kBAOI,6BAPJ,kBAOI,4BAPJ,kBAOI,8BAPJ,kBAOI,6BAPJ,kBAOI,8BAPJ,kBAOI,6BAPJ,kBAOI,8BAPJ,kBAOI,6BAPJ,qBAOI,8BAPJ,gBAOI,2BAPJ,cAOI,4BAPJ,iBAOI,8B3DVR,0B2DGI,kBAOI,sBAPJ,gBAOI,uBAPJ,iBAOI,sBAPJ,yBAOI,8BAPJ,uBAOI,4BAPJ,sBAOI,2BAPJ,uBAOI,iCAPJ,sBAOI,2BAPJ,eAOI,0BAPJ,qBAOI,gCAPJ,cAOI,yBAPJ,aAOI,wBAPJ,oBAOI,+BAPJ,cAOI,yBAPJ,kBAOI,6BAPJ,mBAOI,8BAPJ,aAOI,wBAPJ,oBAOI,+BAPJ,aAOI,wBAPJ,gBAOI,yBAPJ,eAOI,8BAPJ,kBAOI,iCAPJ,uBAOI,sCAPJ,0BAOI,yCAPJ,kBAOI,uBAPJ,kBAOI,uBAPJ,oBAOI,yBAPJ,oBAOI,yBAPJ,gBAOI,0BAPJ,kBAOI,4BAPJ,wBAOI,kCAPJ,4BAOI,sCAPJ,0BAOI,oCAPJ,6BAOI,kCAPJ,8BAOI,yCAPJ,6BAOI,wCAPJ,6BAOI,wCAPJ,wBAOI,kCAPJ,sBAOI,gCAPJ,yBAOI,8BAPJ,2BAOI,gCAPJ,0BAOI,+BAPJ,0BAOI,oCAPJ,wBAOI,kCAPJ,2BAOI,gCAPJ,4BAOI,uCAPJ,2BAOI,sCAPJ,4BAOI,iCAPJ,sBAOI,2BAPJ,uBAOI,iCAPJ,qBAOI,+BAPJ,wBAOI,6BAPJ,0BAOI,+BAPJ,yBAOI,8BAPJ,kBAOI,oBAPJ,cAOI,mBAPJ,cAOI,mBAPJ,cAOI,mBAPJ,cAOI,mBAPJ,cAOI,mBAPJ,cAOI,mBAPJ,iBAOI,mBAPJ,UAOI,oBAPJ,UAOI,0BAPJ,UAOI,yBAPJ,UAOI,wBAPJ,UAOI,0BAPJ,UAOI,yBAPJ,UAOI,0BAPJ,UAOI,yBAPJ,UAOI,0BAPJ,UAOI,yBAPJ,aAOI,0BAPJ,aAOI,uBAPJ,WAOI,mDAPJ,WAOI,+DAPJ,WAOI,6DAPJ,WAOI,2DAPJ,WAOI,+DAPJ,WAOI,6DAPJ,WAOI,+DAPJ,WAOI,6DAPJ,WAOI,+DAPJ,WAOI,6DAPJ,cAOI,+DAPJ,cAOI,yDAPJ,WAOI,mDAPJ,WAOI,+DAPJ,WAOI,6DAPJ,WAOI,2DAPJ,WAOI,+DAPJ,WAOI,6DAPJ,WAOI,+DAPJ,WAOI,6DAPJ,WAOI,+DAPJ,WAOI,6DAPJ,cAOI,+DAPJ,cAOI,yDAPJ,WAOI,wBAPJ,WAOI,8BAPJ,WAOI,6BAPJ,WAOI,4BAPJ,WAOI,8BAPJ,WAOI,6BAPJ,WAOI,8BAPJ,WAOI,6BAPJ,WAOI,8BAPJ,WAOI,6BAPJ,cAOI,8BAPJ,cAOI,2BAPJ,WAOI,0BAPJ,WAOI,gCAPJ,WAOI,+BAPJ,WAOI,8BAPJ,WAOI,gCAPJ,WAOI,+BAPJ,WAOI,gCAPJ,WAOI,+BAPJ,WAOI,gCAPJ,WAOI,+BAPJ,cAOI,gCAPJ,cAOI,6BAPJ,WAOI,2BAPJ,WAOI,iCAPJ,WAOI,gCAPJ,WAOI,+BAPJ,WAOI,iCAPJ,WAOI,gCAPJ,WAOI,iCAPJ,WAOI,gCAPJ,WAOI,iCAPJ,WAOI,gCAPJ,cAOI,iCAPJ,cAOI,8BAPJ,WAOI,yBAPJ,WAOI,+BAPJ,WAOI,8BAPJ,WAOI,6BAPJ,WAOI,+BAPJ,WAOI,8BAPJ,WAOI,+BAPJ,WAOI,8BAPJ,WAOI,+BAPJ,WAOI,8BAPJ,cAOI,+BAPJ,cAOI,4BAPJ,WAOI,4BAPJ,WAOI,2BAPJ,WAOI,0BAPJ,WAOI,2BAPJ,WAOI,0BAPJ,WAOI,2BAPJ,WAOI,0BAPJ,WAOI,2BAPJ,WAOI,0BAPJ,cAOI,4BAPJ,YAOI,mEAPJ,YAOI,iEAPJ,YAOI,+DAPJ,YAOI,iEAPJ,YAOI,+DAPJ,YAOI,iEAPJ,YAOI,+DAPJ,YAOI,iEAPJ,YAOI,+DAPJ,eAOI,mEAPJ,YAOI,mEAPJ,YAOI,iEAPJ,YAOI,+DAPJ,YAOI,iEAPJ,YAOI,+DAPJ,YAOI,iEAPJ,YAOI,+DAPJ,YAOI,iEAPJ,YAOI,+DAPJ,eAOI,mEAPJ,YAOI,gCAPJ,YAOI,+BAPJ,YAOI,8BAPJ,YAOI,+BAPJ,YAOI,8BAPJ,YAOI,+BAPJ,YAOI,8BAPJ,YAOI,+BAPJ,YAOI,8BAPJ,eAOI,gCAPJ,YAOI,kCAPJ,YAOI,iCAPJ,YAOI,gCAPJ,YAOI,iCAPJ,YAOI,gCAPJ,YAOI,iCAPJ,YAOI,gCAPJ,YAOI,iCAPJ,YAOI,gCAPJ,eAOI,kCAPJ,YAOI,mCAPJ,YAOI,kCAPJ,YAOI,iCAPJ,YAOI,kCAPJ,YAOI,iCAPJ,YAOI,kCAPJ,YAOI,iCAPJ,YAOI,kCAPJ,YAOI,iCAPJ,eAOI,mCAPJ,YAOI,iCAPJ,YAOI,gCAPJ,YAOI,+BAPJ,YAOI,gCAPJ,YAOI,+BAPJ,YAOI,gCAPJ,YAOI,+BAPJ,YAOI,gCAPJ,YAOI,+BAPJ,eAOI,iCAPJ,UAOI,qBAPJ,UAOI,2BAPJ,UAOI,0BAPJ,UAOI,yBAPJ,UAOI,2BAPJ,UAOI,0BAPJ,UAOI,2BAPJ,UAOI,0BAPJ,UAOI,2BAPJ,UAOI,0BAPJ,aAOI,2BAPJ,WAOI,qDAPJ,WAOI,iEAPJ,WAOI,+DAPJ,WAOI,6DAPJ,WAOI,iEAPJ,WAOI,+DAPJ,WAOI,iEAPJ,WAOI,+DAPJ,WAOI,iEAPJ,WAOI,+DAPJ,cAOI,iEAPJ,WAOI,qDAPJ,WAOI,iEAPJ,WAOI,+DAPJ,WAOI,6DAPJ,WAOI,iEAPJ,WAOI,+DAPJ,WAOI,iEAPJ,WAOI,+DAPJ,WAOI,iEAPJ,WAOI,+DAPJ,cAOI,iEAPJ,WAOI,yBAPJ,WAOI,+BAPJ,WAOI,8BAPJ,WAOI,6BAPJ,WAOI,+BAPJ,WAOI,8BAPJ,WAOI,+BAPJ,WAOI,8BAPJ,WAOI,+BAPJ,WAOI,8BAPJ,cAOI,+BAPJ,WAOI,2BAPJ,WAOI,iCAPJ,WAOI,gCAPJ,WAOI,+BAPJ,WAOI,iCAPJ,WAOI,gCAPJ,WAOI,iCAPJ,WAOI,gCAPJ,WAOI,iCAPJ,WAOI,gCAPJ,cAOI,iCAPJ,WAOI,4BAPJ,WAOI,kCAPJ,WAOI,iCAPJ,WAOI,gCAPJ,WAOI,kCAPJ,WAOI,iCAPJ,WAOI,kCAPJ,WAOI,iCAPJ,WAOI,kCAPJ,WAOI,iCAPJ,cAOI,kCAPJ,WAOI,0BAPJ,WAOI,gCAPJ,WAOI,+BAPJ,WAOI,8BAPJ,WAOI,gCAPJ,WAOI,+BAPJ,WAOI,gCAPJ,WAOI,+BAPJ,WAOI,gCAPJ,WAOI,+BAPJ,cAOI,gCAPJ,YAOI,iBAPJ,YAOI,uBAPJ,YAOI,sBAPJ,YAOI,qBAPJ,YAOI,uBAPJ,YAOI,sBAPJ,YAOI,uBAPJ,YAOI,sBAPJ,YAOI,uBAPJ,YAOI,sBAPJ,eAOI,uBAPJ,gBAOI,qBAPJ,gBAOI,2BAPJ,gBAOI,0BAPJ,gBAOI,yBAPJ,gBAOI,2BAPJ,gBAOI,0BAPJ,gBAOI,2BAPJ,gBAOI,0BAPJ,gBAOI,2BAPJ,gBAOI,0BAPJ,mBAOI,2BAPJ,mBAOI,wBAPJ,mBAOI,8BAPJ,mBAOI,6BAPJ,mBAOI,4BAPJ,mBAOI,8BAPJ,mBAOI,6BAPJ,mBAOI,8BAPJ,mBAOI,6BAPJ,mBAOI,8BAPJ,mBAOI,6BAPJ,sBAOI,8BAPJ,iBAOI,2BAPJ,eAOI,4BAPJ,kBAOI,8BCtDZ,0BD+CQ,MAOI,4BAPJ,MAOI,0BAPJ,MAOI,6BAPJ,MAOI,6BCnCZ,aD4BQ,gBAOI,0BAPJ,sBAOI,gCAPJ,eAOI,yBAPJ,cAOI,wBAPJ,qBAOI,+BAPJ,eAOI,yBAPJ,mBAOI,6BAPJ,oBAOI,8BAPJ,cAOI,wBAPJ,qBAOI,+BAPJ,cAOI,yBnEUZ,OACC,8BAID,WACC,eAID,UACC,+BAGD,0BACC,eAGD,4BAEI,mBAIJ,YACC,oCAGD,KACC,oCAGD,aACC,qCAGD,kBACC,wCAGD,aACC,uBAGD,cACC,wBAGD,oBACC,sBAGD,aACC,MD7FS,QCiGV,cACC,cAGD,UACC,oBAGD,kBACC,MgBpJY,QhBuJb,QACC,eAGD,QACC,eAGD,OACC,cAGD,OACC,cAGD,OACC,cAGD,YACC,cAGD,WACC,yBAGD,YACC,yBAGD,YACC,yBAGD,eACC,8BAGD,cACC,4BAQD,KACC,eAEA,yKAID,YACC,8CAGD,GACC,oCAGD,iBACC,iBACA,mBACA,WACA,YACA,kBAUD,2CACC,mDAGD,UACC,sBAGD,YACC,gCAGD,SACC,kBAGD,SACC,oBAGD,yBACC,2BAGD,wBACC,2BAUD,IACC,qBACA,0BACA,sBACA,wBACA,qBACA,2BAGD,WACC,qBAOD,gBACC,aACA,sBACA,SAGD,qBACC,kBAGD,UACC,gBAsBD,aACC,WACA,0BAGD,mBACC,WAGD,6GACC,cAGD,2BACC,cAOD,yBACC,kBACA,UACA,WACA,sBACA,kBAGD,yBACC,QACA,SACA,kBACA,UACA,WACA,yBACA,kBAGD,WACC,QACA,SACA,kBACA,UACA,WACA,kBAKD,+GAII,uDAIJ,uBACI,2CgB/QJ,eACC,MAxGY,QAyGZ,yBACA,qBACA,iBAGD,cACC,MA/GY,QAgHZ,yBACA,qBACA,iBAGD,eACC,MAtHY,QAuHZ,yBACA,qBACA,iBAGD,eACC,MA7HY,QA8HZ,yBACA,qBACA,iBAGD,YACC,MApIY,QAqIZ,yBACA,qBACA,iBAMD,eACC,sBAGD,SACC,oCAKD,SACC,iBAzJS,QA8JV,kBACC,oCAGD,4BACC,oCAGD,0BACC,2DAGD,yBACC,oCAID,kBACC,yBAGD,iBACC,yBAGD,6BACC,gCAGD,aACC,gCAGD,gBACC,yBACA,oCACA,MAjMY,QAoMb,qBACC,yBAGD,eACC,iCAGD,KACC,gBACA,kBACA,yBACA","file":"dark.css"} \ No newline at end of file diff --git a/public/style/light.css b/public/style/light.css index 2d1089d..f897990 100644 --- a/public/style/light.css +++ b/public/style/light.css @@ -1,6 +1,5 @@ /*! - * Bootstrap v5.2.3 (https://getbootstrap.com/) - * Copyright 2011-2022 The Bootstrap Authors - * Copyright 2011-2022 Twitter, Inc. + * Bootstrap v5.3.0 (https://getbootstrap.com/) + * Copyright 2011-2023 The Bootstrap Authors * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) - */:root{--bs-blue: #0d6efd;--bs-indigo: #6610f2;--bs-purple: #6f42c1;--bs-pink: #d63384;--bs-red: #dc3545;--bs-orange: #fd7e14;--bs-yellow: #ffc107;--bs-green: #198754;--bs-teal: #20c997;--bs-cyan: #0dcaf0;--bs-black: #000;--bs-white: #fff;--bs-gray: #6c757d;--bs-gray-dark: #343a40;--bs-gray-100: #f8f9fa;--bs-gray-200: #e9ecef;--bs-gray-300: #dee2e6;--bs-gray-400: #ced4da;--bs-gray-500: #adb5bd;--bs-gray-600: #6c757d;--bs-gray-700: #495057;--bs-gray-800: #343a40;--bs-gray-900: #212529;--bs-primary: #0d6efd;--bs-secondary: #6c757d;--bs-success: #198754;--bs-info: #0dcaf0;--bs-warning: #ffc107;--bs-danger: #dc3545;--bs-light: #f8f9fa;--bs-dark: #212529;--bs-primary-rgb: 13, 110, 253;--bs-secondary-rgb: 108, 117, 125;--bs-success-rgb: 25, 135, 84;--bs-info-rgb: 13, 202, 240;--bs-warning-rgb: 255, 193, 7;--bs-danger-rgb: 220, 53, 69;--bs-light-rgb: 248, 249, 250;--bs-dark-rgb: 33, 37, 41;--bs-white-rgb: 255, 255, 255;--bs-black-rgb: 0, 0, 0;--bs-body-color-rgb: 33, 37, 41;--bs-body-bg-rgb: 255, 255, 255;--bs-font-sans-serif: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));--bs-body-font-family: var(--bs-font-sans-serif);--bs-body-font-size:1rem;--bs-body-font-weight: 400;--bs-body-line-height: 1.5;--bs-body-color: #212529;--bs-body-bg: #fff;--bs-border-width: 1px;--bs-border-style: solid;--bs-border-color: #e4e7eb;--bs-border-color-translucent: rgba(0, 0, 0, 0.175);--bs-border-radius: 0.4rem;--bs-border-radius-sm: 0.25rem;--bs-border-radius-lg: 0.5rem;--bs-border-radius-xl: 1rem;--bs-border-radius-2xl: 2rem;--bs-border-radius-pill: 50rem;--bs-link-color: #0d6efd;--bs-link-hover-color: #0a58ca;--bs-code-color: #d63384;--bs-highlight-bg: #fff3cd}*,*::before,*::after{box-sizing:border-box}@media(prefers-reduced-motion: no-preference){:root{scroll-behavior:smooth}}body{margin:0;font-family:var(--bs-body-font-family);font-size:var(--bs-body-font-size);font-weight:var(--bs-body-font-weight);line-height:var(--bs-body-line-height);color:var(--bs-body-color);text-align:var(--bs-body-text-align);background-color:var(--bs-body-bg);-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:rgba(0,0,0,0)}hr{margin:.9rem 0;color:inherit;border:0;border-top:1px solid;opacity:.25}h6,.h6,h5,.h5,h4,.h4,h3,.h3,h2,.h2,h1,.h1{margin-top:0;margin-bottom:.45rem;font-weight:500;line-height:1.2}h1,.h1{font-size:calc(1.375rem + 1.5vw)}@media(min-width: 1200px){h1,.h1{font-size:2.5rem}}h2,.h2{font-size:calc(1.325rem + 0.9vw)}@media(min-width: 1200px){h2,.h2{font-size:2rem}}h3,.h3{font-size:calc(1.3rem + 0.6vw)}@media(min-width: 1200px){h3,.h3{font-size:1.75rem}}h4,.h4{font-size:calc(1.275rem + 0.3vw)}@media(min-width: 1200px){h4,.h4{font-size:1.5rem}}h5,.h5{font-size:1.25rem}h6,.h6{font-size:1rem}p{margin-top:0;margin-bottom:1rem}abbr[title]{text-decoration:underline dotted;cursor:help;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:.5rem;margin-left:0}blockquote{margin:0 0 1rem}b,strong{font-weight:bolder}small,.small{font-size:0.875em}mark,.mark{padding:.1875em;background-color:var(--bs-highlight-bg)}sub,sup{position:relative;font-size:0.75em;line-height:0;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}a{color:var(--bs-link-color);text-decoration:none}a:hover{color:var(--bs-link-hover-color);text-decoration:underline}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}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:var(--bs-code-color);word-wrap:break-word}a>code{color:inherit}kbd{padding:.1875rem .375rem;font-size:0.875em;color:var(--bs-body-bg);background-color:var(--bs-body-color);border-radius:.25rem}kbd kbd{padding:0;font-size:1em}figure{margin:0 0 1rem}img,svg{vertical-align:middle}table{caption-side:bottom;border-collapse:collapse}caption{padding-top:.5rem;padding-bottom:.5rem;color:#6c757d;text-align:left}th{text-align:inherit;text-align:-webkit-match-parent}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]:not([type=date]):not([type=datetime-local]):not([type=month]):not([type=week]):not([type=time])::-webkit-calendar-picker-indicator{display:none !important}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:.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}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-color-swatch-wrapper{padding:0}::file-selector-button{font:inherit;-webkit-appearance:button}output{display:inline-block}iframe{border:0}summary{display:list-item;cursor:pointer}progress{vertical-align:baseline}[hidden]{display:none !important}.lead{font-size:1.25rem;font-weight:300}.display-1{font-size:calc(1.625rem + 4.5vw);font-weight:300;line-height:1.2}@media(min-width: 1200px){.display-1{font-size:5rem}}.display-2{font-size:calc(1.575rem + 3.9vw);font-weight:300;line-height:1.2}@media(min-width: 1200px){.display-2{font-size:4.5rem}}.display-3{font-size:calc(1.525rem + 3.3vw);font-weight:300;line-height:1.2}@media(min-width: 1200px){.display-3{font-size:4rem}}.display-4{font-size:calc(1.475rem + 2.7vw);font-weight:300;line-height:1.2}@media(min-width: 1200px){.display-4{font-size:3.5rem}}.display-5{font-size:calc(1.425rem + 2.1vw);font-weight:300;line-height:1.2}@media(min-width: 1200px){.display-5{font-size:3rem}}.display-6{font-size:calc(1.375rem + 1.5vw);font-weight:300;line-height:1.2}@media(min-width: 1200px){.display-6{font-size:2.5rem}}.list-unstyled{padding-left:0;list-style:none}.list-inline{padding-left:0;list-style:none}.list-inline-item{display:inline-block}.list-inline-item:not(:last-child){margin-right:.5rem}.initialism{font-size:0.875em;text-transform:uppercase}.blockquote{margin-bottom:.9rem;font-size:1.25rem}.blockquote>:last-child{margin-bottom:0}.blockquote-footer{margin-top:-0.9rem;margin-bottom:.9rem;font-size:0.875em;color:#6c757d}.blockquote-footer::before{content:"— "}.img-fluid{max-width:100%;height:auto}.img-thumbnail{padding:.25rem;background-color:#fff;border:1px solid var(--bs-border-color);border-radius:.4rem;max-width:100%;height:auto}.figure{display:inline-block}.figure-img{margin-bottom:.45rem;line-height:1}.figure-caption{font-size:0.875em;color:#6c757d}.container,.container-fluid,.container-xxxl,.container-xxl,.container-xl,.container-lg,.container-md,.container-sm{--bs-gutter-x: 1.5rem;--bs-gutter-y: 0;width:100%;padding-right:calc(var(--bs-gutter-x)*.5);padding-left:calc(var(--bs-gutter-x)*.5);margin-right:auto;margin-left:auto}@media(min-width: 576px){.container-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}}@media(min-width: 1900px){.container-xxxl,.container-xxl,.container-xl,.container-lg,.container-md,.container-sm,.container{max-width:1820px}}.row{--bs-gutter-x: 1.5rem;--bs-gutter-y: 0;display:flex;flex-wrap:wrap;margin-top:calc(-1*var(--bs-gutter-y));margin-right:calc(-0.5*var(--bs-gutter-x));margin-left:calc(-0.5*var(--bs-gutter-x))}.row>*{flex-shrink:0;width:100%;max-width:100%;padding-right:calc(var(--bs-gutter-x)*.5);padding-left:calc(var(--bs-gutter-x)*.5);margin-top:var(--bs-gutter-y)}.col{flex:1 0 0%}.row-cols-auto>*{flex:0 0 auto;width:auto}.row-cols-1>*{flex:0 0 auto;width:100%}.row-cols-2>*{flex:0 0 auto;width:50%}.row-cols-3>*{flex:0 0 auto;width:33.3333333333%}.row-cols-4>*{flex:0 0 auto;width:25%}.row-cols-5>*{flex:0 0 auto;width:20%}.row-cols-6>*{flex:0 0 auto;width:16.6666666667%}.col-auto{flex:0 0 auto;width:auto}.col-1{flex:0 0 auto;width:8.33333333%}.col-2{flex:0 0 auto;width:16.66666667%}.col-3{flex:0 0 auto;width:25%}.col-4{flex:0 0 auto;width:33.33333333%}.col-5{flex:0 0 auto;width:41.66666667%}.col-6{flex:0 0 auto;width:50%}.col-7{flex:0 0 auto;width:58.33333333%}.col-8{flex:0 0 auto;width:66.66666667%}.col-9{flex:0 0 auto;width:75%}.col-10{flex:0 0 auto;width:83.33333333%}.col-11{flex:0 0 auto;width:91.66666667%}.col-12{flex:0 0 auto;width:100%}.offset-1{margin-left:8.33333333%}.offset-2{margin-left:16.66666667%}.offset-3{margin-left:25%}.offset-4{margin-left:33.33333333%}.offset-5{margin-left:41.66666667%}.offset-6{margin-left:50%}.offset-7{margin-left:58.33333333%}.offset-8{margin-left:66.66666667%}.offset-9{margin-left:75%}.offset-10{margin-left:83.33333333%}.offset-11{margin-left:91.66666667%}.g-0,.gx-0{--bs-gutter-x: 0}.g-0,.gy-0{--bs-gutter-y: 0}.g-1,.gx-1{--bs-gutter-x: 0.225rem}.g-1,.gy-1{--bs-gutter-y: 0.225rem}.g-2,.gx-2{--bs-gutter-x: 0.45rem}.g-2,.gy-2{--bs-gutter-y: 0.45rem}.g-3,.gx-3{--bs-gutter-x: 0.9rem}.g-3,.gy-3{--bs-gutter-y: 0.9rem}.g-4,.gx-4{--bs-gutter-x: 1.35rem}.g-4,.gy-4{--bs-gutter-y: 1.35rem}.g-5,.gx-5{--bs-gutter-x: 1.8rem}.g-5,.gy-5{--bs-gutter-y: 1.8rem}.g-6,.gx-6{--bs-gutter-x: 2.25rem}.g-6,.gy-6{--bs-gutter-y: 2.25rem}.g-7,.gx-7{--bs-gutter-x: 2.7rem}.g-7,.gy-7{--bs-gutter-y: 2.7rem}.g-8,.gx-8{--bs-gutter-x: 3.15rem}.g-8,.gy-8{--bs-gutter-y: 3.15rem}.g-9,.gx-9{--bs-gutter-x: 3.6rem}.g-9,.gy-9{--bs-gutter-y: 3.6rem}.g-tiny,.gx-tiny{--bs-gutter-x: 0.135rem}.g-tiny,.gy-tiny{--bs-gutter-y: 0.135rem}@media(min-width: 576px){.col-sm{flex:1 0 0%}.row-cols-sm-auto>*{flex:0 0 auto;width:auto}.row-cols-sm-1>*{flex:0 0 auto;width:100%}.row-cols-sm-2>*{flex:0 0 auto;width:50%}.row-cols-sm-3>*{flex:0 0 auto;width:33.3333333333%}.row-cols-sm-4>*{flex:0 0 auto;width:25%}.row-cols-sm-5>*{flex:0 0 auto;width:20%}.row-cols-sm-6>*{flex:0 0 auto;width:16.6666666667%}.col-sm-auto{flex:0 0 auto;width:auto}.col-sm-1{flex:0 0 auto;width:8.33333333%}.col-sm-2{flex:0 0 auto;width:16.66666667%}.col-sm-3{flex:0 0 auto;width:25%}.col-sm-4{flex:0 0 auto;width:33.33333333%}.col-sm-5{flex:0 0 auto;width:41.66666667%}.col-sm-6{flex:0 0 auto;width:50%}.col-sm-7{flex:0 0 auto;width:58.33333333%}.col-sm-8{flex:0 0 auto;width:66.66666667%}.col-sm-9{flex:0 0 auto;width:75%}.col-sm-10{flex:0 0 auto;width:83.33333333%}.col-sm-11{flex:0 0 auto;width:91.66666667%}.col-sm-12{flex:0 0 auto;width:100%}.offset-sm-0{margin-left:0}.offset-sm-1{margin-left:8.33333333%}.offset-sm-2{margin-left:16.66666667%}.offset-sm-3{margin-left:25%}.offset-sm-4{margin-left:33.33333333%}.offset-sm-5{margin-left:41.66666667%}.offset-sm-6{margin-left:50%}.offset-sm-7{margin-left:58.33333333%}.offset-sm-8{margin-left:66.66666667%}.offset-sm-9{margin-left:75%}.offset-sm-10{margin-left:83.33333333%}.offset-sm-11{margin-left:91.66666667%}.g-sm-0,.gx-sm-0{--bs-gutter-x: 0}.g-sm-0,.gy-sm-0{--bs-gutter-y: 0}.g-sm-1,.gx-sm-1{--bs-gutter-x: 0.225rem}.g-sm-1,.gy-sm-1{--bs-gutter-y: 0.225rem}.g-sm-2,.gx-sm-2{--bs-gutter-x: 0.45rem}.g-sm-2,.gy-sm-2{--bs-gutter-y: 0.45rem}.g-sm-3,.gx-sm-3{--bs-gutter-x: 0.9rem}.g-sm-3,.gy-sm-3{--bs-gutter-y: 0.9rem}.g-sm-4,.gx-sm-4{--bs-gutter-x: 1.35rem}.g-sm-4,.gy-sm-4{--bs-gutter-y: 1.35rem}.g-sm-5,.gx-sm-5{--bs-gutter-x: 1.8rem}.g-sm-5,.gy-sm-5{--bs-gutter-y: 1.8rem}.g-sm-6,.gx-sm-6{--bs-gutter-x: 2.25rem}.g-sm-6,.gy-sm-6{--bs-gutter-y: 2.25rem}.g-sm-7,.gx-sm-7{--bs-gutter-x: 2.7rem}.g-sm-7,.gy-sm-7{--bs-gutter-y: 2.7rem}.g-sm-8,.gx-sm-8{--bs-gutter-x: 3.15rem}.g-sm-8,.gy-sm-8{--bs-gutter-y: 3.15rem}.g-sm-9,.gx-sm-9{--bs-gutter-x: 3.6rem}.g-sm-9,.gy-sm-9{--bs-gutter-y: 3.6rem}.g-sm-tiny,.gx-sm-tiny{--bs-gutter-x: 0.135rem}.g-sm-tiny,.gy-sm-tiny{--bs-gutter-y: 0.135rem}}@media(min-width: 768px){.col-md{flex:1 0 0%}.row-cols-md-auto>*{flex:0 0 auto;width:auto}.row-cols-md-1>*{flex:0 0 auto;width:100%}.row-cols-md-2>*{flex:0 0 auto;width:50%}.row-cols-md-3>*{flex:0 0 auto;width:33.3333333333%}.row-cols-md-4>*{flex:0 0 auto;width:25%}.row-cols-md-5>*{flex:0 0 auto;width:20%}.row-cols-md-6>*{flex:0 0 auto;width:16.6666666667%}.col-md-auto{flex:0 0 auto;width:auto}.col-md-1{flex:0 0 auto;width:8.33333333%}.col-md-2{flex:0 0 auto;width:16.66666667%}.col-md-3{flex:0 0 auto;width:25%}.col-md-4{flex:0 0 auto;width:33.33333333%}.col-md-5{flex:0 0 auto;width:41.66666667%}.col-md-6{flex:0 0 auto;width:50%}.col-md-7{flex:0 0 auto;width:58.33333333%}.col-md-8{flex:0 0 auto;width:66.66666667%}.col-md-9{flex:0 0 auto;width:75%}.col-md-10{flex:0 0 auto;width:83.33333333%}.col-md-11{flex:0 0 auto;width:91.66666667%}.col-md-12{flex:0 0 auto;width:100%}.offset-md-0{margin-left:0}.offset-md-1{margin-left:8.33333333%}.offset-md-2{margin-left:16.66666667%}.offset-md-3{margin-left:25%}.offset-md-4{margin-left:33.33333333%}.offset-md-5{margin-left:41.66666667%}.offset-md-6{margin-left:50%}.offset-md-7{margin-left:58.33333333%}.offset-md-8{margin-left:66.66666667%}.offset-md-9{margin-left:75%}.offset-md-10{margin-left:83.33333333%}.offset-md-11{margin-left:91.66666667%}.g-md-0,.gx-md-0{--bs-gutter-x: 0}.g-md-0,.gy-md-0{--bs-gutter-y: 0}.g-md-1,.gx-md-1{--bs-gutter-x: 0.225rem}.g-md-1,.gy-md-1{--bs-gutter-y: 0.225rem}.g-md-2,.gx-md-2{--bs-gutter-x: 0.45rem}.g-md-2,.gy-md-2{--bs-gutter-y: 0.45rem}.g-md-3,.gx-md-3{--bs-gutter-x: 0.9rem}.g-md-3,.gy-md-3{--bs-gutter-y: 0.9rem}.g-md-4,.gx-md-4{--bs-gutter-x: 1.35rem}.g-md-4,.gy-md-4{--bs-gutter-y: 1.35rem}.g-md-5,.gx-md-5{--bs-gutter-x: 1.8rem}.g-md-5,.gy-md-5{--bs-gutter-y: 1.8rem}.g-md-6,.gx-md-6{--bs-gutter-x: 2.25rem}.g-md-6,.gy-md-6{--bs-gutter-y: 2.25rem}.g-md-7,.gx-md-7{--bs-gutter-x: 2.7rem}.g-md-7,.gy-md-7{--bs-gutter-y: 2.7rem}.g-md-8,.gx-md-8{--bs-gutter-x: 3.15rem}.g-md-8,.gy-md-8{--bs-gutter-y: 3.15rem}.g-md-9,.gx-md-9{--bs-gutter-x: 3.6rem}.g-md-9,.gy-md-9{--bs-gutter-y: 3.6rem}.g-md-tiny,.gx-md-tiny{--bs-gutter-x: 0.135rem}.g-md-tiny,.gy-md-tiny{--bs-gutter-y: 0.135rem}}@media(min-width: 992px){.col-lg{flex:1 0 0%}.row-cols-lg-auto>*{flex:0 0 auto;width:auto}.row-cols-lg-1>*{flex:0 0 auto;width:100%}.row-cols-lg-2>*{flex:0 0 auto;width:50%}.row-cols-lg-3>*{flex:0 0 auto;width:33.3333333333%}.row-cols-lg-4>*{flex:0 0 auto;width:25%}.row-cols-lg-5>*{flex:0 0 auto;width:20%}.row-cols-lg-6>*{flex:0 0 auto;width:16.6666666667%}.col-lg-auto{flex:0 0 auto;width:auto}.col-lg-1{flex:0 0 auto;width:8.33333333%}.col-lg-2{flex:0 0 auto;width:16.66666667%}.col-lg-3{flex:0 0 auto;width:25%}.col-lg-4{flex:0 0 auto;width:33.33333333%}.col-lg-5{flex:0 0 auto;width:41.66666667%}.col-lg-6{flex:0 0 auto;width:50%}.col-lg-7{flex:0 0 auto;width:58.33333333%}.col-lg-8{flex:0 0 auto;width:66.66666667%}.col-lg-9{flex:0 0 auto;width:75%}.col-lg-10{flex:0 0 auto;width:83.33333333%}.col-lg-11{flex:0 0 auto;width:91.66666667%}.col-lg-12{flex:0 0 auto;width:100%}.offset-lg-0{margin-left:0}.offset-lg-1{margin-left:8.33333333%}.offset-lg-2{margin-left:16.66666667%}.offset-lg-3{margin-left:25%}.offset-lg-4{margin-left:33.33333333%}.offset-lg-5{margin-left:41.66666667%}.offset-lg-6{margin-left:50%}.offset-lg-7{margin-left:58.33333333%}.offset-lg-8{margin-left:66.66666667%}.offset-lg-9{margin-left:75%}.offset-lg-10{margin-left:83.33333333%}.offset-lg-11{margin-left:91.66666667%}.g-lg-0,.gx-lg-0{--bs-gutter-x: 0}.g-lg-0,.gy-lg-0{--bs-gutter-y: 0}.g-lg-1,.gx-lg-1{--bs-gutter-x: 0.225rem}.g-lg-1,.gy-lg-1{--bs-gutter-y: 0.225rem}.g-lg-2,.gx-lg-2{--bs-gutter-x: 0.45rem}.g-lg-2,.gy-lg-2{--bs-gutter-y: 0.45rem}.g-lg-3,.gx-lg-3{--bs-gutter-x: 0.9rem}.g-lg-3,.gy-lg-3{--bs-gutter-y: 0.9rem}.g-lg-4,.gx-lg-4{--bs-gutter-x: 1.35rem}.g-lg-4,.gy-lg-4{--bs-gutter-y: 1.35rem}.g-lg-5,.gx-lg-5{--bs-gutter-x: 1.8rem}.g-lg-5,.gy-lg-5{--bs-gutter-y: 1.8rem}.g-lg-6,.gx-lg-6{--bs-gutter-x: 2.25rem}.g-lg-6,.gy-lg-6{--bs-gutter-y: 2.25rem}.g-lg-7,.gx-lg-7{--bs-gutter-x: 2.7rem}.g-lg-7,.gy-lg-7{--bs-gutter-y: 2.7rem}.g-lg-8,.gx-lg-8{--bs-gutter-x: 3.15rem}.g-lg-8,.gy-lg-8{--bs-gutter-y: 3.15rem}.g-lg-9,.gx-lg-9{--bs-gutter-x: 3.6rem}.g-lg-9,.gy-lg-9{--bs-gutter-y: 3.6rem}.g-lg-tiny,.gx-lg-tiny{--bs-gutter-x: 0.135rem}.g-lg-tiny,.gy-lg-tiny{--bs-gutter-y: 0.135rem}}@media(min-width: 1200px){.col-xl{flex:1 0 0%}.row-cols-xl-auto>*{flex:0 0 auto;width:auto}.row-cols-xl-1>*{flex:0 0 auto;width:100%}.row-cols-xl-2>*{flex:0 0 auto;width:50%}.row-cols-xl-3>*{flex:0 0 auto;width:33.3333333333%}.row-cols-xl-4>*{flex:0 0 auto;width:25%}.row-cols-xl-5>*{flex:0 0 auto;width:20%}.row-cols-xl-6>*{flex:0 0 auto;width:16.6666666667%}.col-xl-auto{flex:0 0 auto;width:auto}.col-xl-1{flex:0 0 auto;width:8.33333333%}.col-xl-2{flex:0 0 auto;width:16.66666667%}.col-xl-3{flex:0 0 auto;width:25%}.col-xl-4{flex:0 0 auto;width:33.33333333%}.col-xl-5{flex:0 0 auto;width:41.66666667%}.col-xl-6{flex:0 0 auto;width:50%}.col-xl-7{flex:0 0 auto;width:58.33333333%}.col-xl-8{flex:0 0 auto;width:66.66666667%}.col-xl-9{flex:0 0 auto;width:75%}.col-xl-10{flex:0 0 auto;width:83.33333333%}.col-xl-11{flex:0 0 auto;width:91.66666667%}.col-xl-12{flex:0 0 auto;width:100%}.offset-xl-0{margin-left:0}.offset-xl-1{margin-left:8.33333333%}.offset-xl-2{margin-left:16.66666667%}.offset-xl-3{margin-left:25%}.offset-xl-4{margin-left:33.33333333%}.offset-xl-5{margin-left:41.66666667%}.offset-xl-6{margin-left:50%}.offset-xl-7{margin-left:58.33333333%}.offset-xl-8{margin-left:66.66666667%}.offset-xl-9{margin-left:75%}.offset-xl-10{margin-left:83.33333333%}.offset-xl-11{margin-left:91.66666667%}.g-xl-0,.gx-xl-0{--bs-gutter-x: 0}.g-xl-0,.gy-xl-0{--bs-gutter-y: 0}.g-xl-1,.gx-xl-1{--bs-gutter-x: 0.225rem}.g-xl-1,.gy-xl-1{--bs-gutter-y: 0.225rem}.g-xl-2,.gx-xl-2{--bs-gutter-x: 0.45rem}.g-xl-2,.gy-xl-2{--bs-gutter-y: 0.45rem}.g-xl-3,.gx-xl-3{--bs-gutter-x: 0.9rem}.g-xl-3,.gy-xl-3{--bs-gutter-y: 0.9rem}.g-xl-4,.gx-xl-4{--bs-gutter-x: 1.35rem}.g-xl-4,.gy-xl-4{--bs-gutter-y: 1.35rem}.g-xl-5,.gx-xl-5{--bs-gutter-x: 1.8rem}.g-xl-5,.gy-xl-5{--bs-gutter-y: 1.8rem}.g-xl-6,.gx-xl-6{--bs-gutter-x: 2.25rem}.g-xl-6,.gy-xl-6{--bs-gutter-y: 2.25rem}.g-xl-7,.gx-xl-7{--bs-gutter-x: 2.7rem}.g-xl-7,.gy-xl-7{--bs-gutter-y: 2.7rem}.g-xl-8,.gx-xl-8{--bs-gutter-x: 3.15rem}.g-xl-8,.gy-xl-8{--bs-gutter-y: 3.15rem}.g-xl-9,.gx-xl-9{--bs-gutter-x: 3.6rem}.g-xl-9,.gy-xl-9{--bs-gutter-y: 3.6rem}.g-xl-tiny,.gx-xl-tiny{--bs-gutter-x: 0.135rem}.g-xl-tiny,.gy-xl-tiny{--bs-gutter-y: 0.135rem}}@media(min-width: 1400px){.col-xxl{flex:1 0 0%}.row-cols-xxl-auto>*{flex:0 0 auto;width:auto}.row-cols-xxl-1>*{flex:0 0 auto;width:100%}.row-cols-xxl-2>*{flex:0 0 auto;width:50%}.row-cols-xxl-3>*{flex:0 0 auto;width:33.3333333333%}.row-cols-xxl-4>*{flex:0 0 auto;width:25%}.row-cols-xxl-5>*{flex:0 0 auto;width:20%}.row-cols-xxl-6>*{flex:0 0 auto;width:16.6666666667%}.col-xxl-auto{flex:0 0 auto;width:auto}.col-xxl-1{flex:0 0 auto;width:8.33333333%}.col-xxl-2{flex:0 0 auto;width:16.66666667%}.col-xxl-3{flex:0 0 auto;width:25%}.col-xxl-4{flex:0 0 auto;width:33.33333333%}.col-xxl-5{flex:0 0 auto;width:41.66666667%}.col-xxl-6{flex:0 0 auto;width:50%}.col-xxl-7{flex:0 0 auto;width:58.33333333%}.col-xxl-8{flex:0 0 auto;width:66.66666667%}.col-xxl-9{flex:0 0 auto;width:75%}.col-xxl-10{flex:0 0 auto;width:83.33333333%}.col-xxl-11{flex:0 0 auto;width:91.66666667%}.col-xxl-12{flex:0 0 auto;width:100%}.offset-xxl-0{margin-left:0}.offset-xxl-1{margin-left:8.33333333%}.offset-xxl-2{margin-left:16.66666667%}.offset-xxl-3{margin-left:25%}.offset-xxl-4{margin-left:33.33333333%}.offset-xxl-5{margin-left:41.66666667%}.offset-xxl-6{margin-left:50%}.offset-xxl-7{margin-left:58.33333333%}.offset-xxl-8{margin-left:66.66666667%}.offset-xxl-9{margin-left:75%}.offset-xxl-10{margin-left:83.33333333%}.offset-xxl-11{margin-left:91.66666667%}.g-xxl-0,.gx-xxl-0{--bs-gutter-x: 0}.g-xxl-0,.gy-xxl-0{--bs-gutter-y: 0}.g-xxl-1,.gx-xxl-1{--bs-gutter-x: 0.225rem}.g-xxl-1,.gy-xxl-1{--bs-gutter-y: 0.225rem}.g-xxl-2,.gx-xxl-2{--bs-gutter-x: 0.45rem}.g-xxl-2,.gy-xxl-2{--bs-gutter-y: 0.45rem}.g-xxl-3,.gx-xxl-3{--bs-gutter-x: 0.9rem}.g-xxl-3,.gy-xxl-3{--bs-gutter-y: 0.9rem}.g-xxl-4,.gx-xxl-4{--bs-gutter-x: 1.35rem}.g-xxl-4,.gy-xxl-4{--bs-gutter-y: 1.35rem}.g-xxl-5,.gx-xxl-5{--bs-gutter-x: 1.8rem}.g-xxl-5,.gy-xxl-5{--bs-gutter-y: 1.8rem}.g-xxl-6,.gx-xxl-6{--bs-gutter-x: 2.25rem}.g-xxl-6,.gy-xxl-6{--bs-gutter-y: 2.25rem}.g-xxl-7,.gx-xxl-7{--bs-gutter-x: 2.7rem}.g-xxl-7,.gy-xxl-7{--bs-gutter-y: 2.7rem}.g-xxl-8,.gx-xxl-8{--bs-gutter-x: 3.15rem}.g-xxl-8,.gy-xxl-8{--bs-gutter-y: 3.15rem}.g-xxl-9,.gx-xxl-9{--bs-gutter-x: 3.6rem}.g-xxl-9,.gy-xxl-9{--bs-gutter-y: 3.6rem}.g-xxl-tiny,.gx-xxl-tiny{--bs-gutter-x: 0.135rem}.g-xxl-tiny,.gy-xxl-tiny{--bs-gutter-y: 0.135rem}}@media(min-width: 1900px){.col-xxxl{flex:1 0 0%}.row-cols-xxxl-auto>*{flex:0 0 auto;width:auto}.row-cols-xxxl-1>*{flex:0 0 auto;width:100%}.row-cols-xxxl-2>*{flex:0 0 auto;width:50%}.row-cols-xxxl-3>*{flex:0 0 auto;width:33.3333333333%}.row-cols-xxxl-4>*{flex:0 0 auto;width:25%}.row-cols-xxxl-5>*{flex:0 0 auto;width:20%}.row-cols-xxxl-6>*{flex:0 0 auto;width:16.6666666667%}.col-xxxl-auto{flex:0 0 auto;width:auto}.col-xxxl-1{flex:0 0 auto;width:8.33333333%}.col-xxxl-2{flex:0 0 auto;width:16.66666667%}.col-xxxl-3{flex:0 0 auto;width:25%}.col-xxxl-4{flex:0 0 auto;width:33.33333333%}.col-xxxl-5{flex:0 0 auto;width:41.66666667%}.col-xxxl-6{flex:0 0 auto;width:50%}.col-xxxl-7{flex:0 0 auto;width:58.33333333%}.col-xxxl-8{flex:0 0 auto;width:66.66666667%}.col-xxxl-9{flex:0 0 auto;width:75%}.col-xxxl-10{flex:0 0 auto;width:83.33333333%}.col-xxxl-11{flex:0 0 auto;width:91.66666667%}.col-xxxl-12{flex:0 0 auto;width:100%}.offset-xxxl-0{margin-left:0}.offset-xxxl-1{margin-left:8.33333333%}.offset-xxxl-2{margin-left:16.66666667%}.offset-xxxl-3{margin-left:25%}.offset-xxxl-4{margin-left:33.33333333%}.offset-xxxl-5{margin-left:41.66666667%}.offset-xxxl-6{margin-left:50%}.offset-xxxl-7{margin-left:58.33333333%}.offset-xxxl-8{margin-left:66.66666667%}.offset-xxxl-9{margin-left:75%}.offset-xxxl-10{margin-left:83.33333333%}.offset-xxxl-11{margin-left:91.66666667%}.g-xxxl-0,.gx-xxxl-0{--bs-gutter-x: 0}.g-xxxl-0,.gy-xxxl-0{--bs-gutter-y: 0}.g-xxxl-1,.gx-xxxl-1{--bs-gutter-x: 0.225rem}.g-xxxl-1,.gy-xxxl-1{--bs-gutter-y: 0.225rem}.g-xxxl-2,.gx-xxxl-2{--bs-gutter-x: 0.45rem}.g-xxxl-2,.gy-xxxl-2{--bs-gutter-y: 0.45rem}.g-xxxl-3,.gx-xxxl-3{--bs-gutter-x: 0.9rem}.g-xxxl-3,.gy-xxxl-3{--bs-gutter-y: 0.9rem}.g-xxxl-4,.gx-xxxl-4{--bs-gutter-x: 1.35rem}.g-xxxl-4,.gy-xxxl-4{--bs-gutter-y: 1.35rem}.g-xxxl-5,.gx-xxxl-5{--bs-gutter-x: 1.8rem}.g-xxxl-5,.gy-xxxl-5{--bs-gutter-y: 1.8rem}.g-xxxl-6,.gx-xxxl-6{--bs-gutter-x: 2.25rem}.g-xxxl-6,.gy-xxxl-6{--bs-gutter-y: 2.25rem}.g-xxxl-7,.gx-xxxl-7{--bs-gutter-x: 2.7rem}.g-xxxl-7,.gy-xxxl-7{--bs-gutter-y: 2.7rem}.g-xxxl-8,.gx-xxxl-8{--bs-gutter-x: 3.15rem}.g-xxxl-8,.gy-xxxl-8{--bs-gutter-y: 3.15rem}.g-xxxl-9,.gx-xxxl-9{--bs-gutter-x: 3.6rem}.g-xxxl-9,.gy-xxxl-9{--bs-gutter-y: 3.6rem}.g-xxxl-tiny,.gx-xxxl-tiny{--bs-gutter-x: 0.135rem}.g-xxxl-tiny,.gy-xxxl-tiny{--bs-gutter-y: 0.135rem}}.table{--bs-table-color: var(--bs-body-color);--bs-table-bg: transparent;--bs-table-border-color: var(--bs-border-color);--bs-table-accent-bg: transparent;--bs-table-striped-color: var(--bs-body-color);--bs-table-striped-bg: rgba(0, 0, 0, 0.04);--bs-table-active-color: var(--bs-body-color);--bs-table-active-bg: rgba(0, 0, 0, 0.1);--bs-table-hover-color: var(--bs-body-color);--bs-table-hover-bg: rgba(0, 0, 0, 0.075);width:100%;margin-bottom:.9rem;color:var(--bs-table-color);vertical-align:top;border-color:var(--bs-table-border-color)}.table>:not(caption)>*>*{padding:.5rem .5rem;background-color:var(--bs-table-bg);border-bottom-width:1px;box-shadow:inset 0 0 0 9999px var(--bs-table-accent-bg)}.table>tbody{vertical-align:inherit}.table>thead{vertical-align:bottom}.table-group-divider{border-top:2px solid currentcolor}.caption-top{caption-side:top}.table-sm>:not(caption)>*>*{padding:.25rem .25rem}.table-bordered>:not(caption)>*{border-width:1px 0}.table-bordered>:not(caption)>*>*{border-width:0 1px}.table-borderless>:not(caption)>*>*{border-bottom-width:0}.table-borderless>:not(:first-child){border-top-width:0}.table-striped>tbody>tr:nth-of-type(odd)>*{--bs-table-accent-bg: var(--bs-table-striped-bg);color:var(--bs-table-striped-color)}.table-striped-columns>:not(caption)>tr>:nth-child(even){--bs-table-accent-bg: var(--bs-table-striped-bg);color:var(--bs-table-striped-color)}.table-active{--bs-table-accent-bg: var(--bs-table-active-bg);color:var(--bs-table-active-color)}.table-hover>tbody>tr:hover>*{--bs-table-accent-bg: var(--bs-table-hover-bg);color:var(--bs-table-hover-color)}.table-primary{--bs-table-color: #000;--bs-table-bg: #cfe2ff;--bs-table-border-color: #bacbe6;--bs-table-striped-bg: #c5d7f2;--bs-table-striped-color: #000;--bs-table-active-bg: #bacbe6;--bs-table-active-color: #000;--bs-table-hover-bg: #bfd1ec;--bs-table-hover-color: #000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-secondary{--bs-table-color: #000;--bs-table-bg: #e2e3e5;--bs-table-border-color: #cbccce;--bs-table-striped-bg: #d7d8da;--bs-table-striped-color: #000;--bs-table-active-bg: #cbccce;--bs-table-active-color: #000;--bs-table-hover-bg: #d1d2d4;--bs-table-hover-color: #000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-success{--bs-table-color: #000;--bs-table-bg: #d1e7dd;--bs-table-border-color: #bcd0c7;--bs-table-striped-bg: #c7dbd2;--bs-table-striped-color: #000;--bs-table-active-bg: #bcd0c7;--bs-table-active-color: #000;--bs-table-hover-bg: #c1d6cc;--bs-table-hover-color: #000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-info{--bs-table-color: #000;--bs-table-bg: #cff4fc;--bs-table-border-color: #badce3;--bs-table-striped-bg: #c5e8ef;--bs-table-striped-color: #000;--bs-table-active-bg: #badce3;--bs-table-active-color: #000;--bs-table-hover-bg: #bfe2e9;--bs-table-hover-color: #000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-warning{--bs-table-color: #000;--bs-table-bg: #fff3cd;--bs-table-border-color: #e6dbb9;--bs-table-striped-bg: #f2e7c3;--bs-table-striped-color: #000;--bs-table-active-bg: #e6dbb9;--bs-table-active-color: #000;--bs-table-hover-bg: #ece1be;--bs-table-hover-color: #000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-danger{--bs-table-color: #000;--bs-table-bg: #f8d7da;--bs-table-border-color: #dfc2c4;--bs-table-striped-bg: #eccccf;--bs-table-striped-color: #000;--bs-table-active-bg: #dfc2c4;--bs-table-active-color: #000;--bs-table-hover-bg: #e5c7ca;--bs-table-hover-color: #000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-light{--bs-table-color: #000;--bs-table-bg: #f8f9fa;--bs-table-border-color: #dfe0e1;--bs-table-striped-bg: #ecedee;--bs-table-striped-color: #000;--bs-table-active-bg: #dfe0e1;--bs-table-active-color: #000;--bs-table-hover-bg: #e5e6e7;--bs-table-hover-color: #000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-dark{--bs-table-color: #fff;--bs-table-bg: #212529;--bs-table-border-color: #373b3e;--bs-table-striped-bg: #2c3034;--bs-table-striped-color: #fff;--bs-table-active-bg: #373b3e;--bs-table-active-color: #fff;--bs-table-hover-bg: #323539;--bs-table-hover-color: #fff;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-responsive{overflow-x:auto;-webkit-overflow-scrolling:touch}@media(max-width: 575.98px){.table-responsive-sm{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media(max-width: 767.98px){.table-responsive-md{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media(max-width: 991.98px){.table-responsive-lg{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media(max-width: 1199.98px){.table-responsive-xl{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media(max-width: 1399.98px){.table-responsive-xxl{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media(max-width: 1899.98px){.table-responsive-xxxl{overflow-x:auto;-webkit-overflow-scrolling:touch}}.form-label{margin-bottom:.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:.25rem;font-size:0.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;appearance:none;border-radius:.4rem;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::placeholder{color:#6c757d;opacity:1}.form-control:disabled{background-color:#e9ecef;opacity:1}.form-control::file-selector-button{padding:.375rem .75rem;margin:-0.375rem -0.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-plaintext{display:block;width:100%;padding:.375rem 0;margin-bottom:0;line-height:1.5;color:#212529;background-color:rgba(0,0,0,0);border:solid rgba(0,0,0,0);border-width:1px 0}.form-control-plaintext:focus{outline: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:.25rem .5rem;font-size:0.875rem;border-radius:.25rem}.form-control-sm::file-selector-button{padding:.25rem .5rem;margin:-0.25rem -0.5rem;margin-inline-end:.5rem}.form-control-lg{min-height:calc(1.5em + 1rem + 2px);padding:.5rem 1rem;font-size:1.25rem;border-radius:.5rem}.form-control-lg::file-selector-button{padding:.5rem 1rem;margin:-0.5rem -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{width:3rem;height:calc(1.5em + 0.75rem + 2px);padding:.375rem}.form-control-color:not(:disabled):not([readonly]){cursor:pointer}.form-control-color::-moz-color-swatch{border:0 !important;border-radius:.4rem}.form-control-color::-webkit-color-swatch{border-radius:.4rem}.form-control-color.form-control-sm{height:calc(1.5em + 0.5rem + 2px)}.form-control-color.form-control-lg{height:calc(1.5em + 1rem + 2px)}.form-select{display:block;width:100%;padding:.375rem 2.25rem .375rem .75rem;-moz-padding-start:calc(0.75rem - 3px);font-size:1rem;font-weight:400;line-height:1.5;color:#212529;background-color:#fff;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right .75rem center;background-size:16px 12px;border:1px solid #ced4da;border-radius:.4rem;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out;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:rgba(0,0,0,0);text-shadow:0 0 0 #212529}.form-select-sm{padding-top:.25rem;padding-bottom:.25rem;padding-left:.5rem;font-size:0.875rem;border-radius:.25rem}.form-select-lg{padding-top:.5rem;padding-bottom:.5rem;padding-left:1rem;font-size:1.25rem;border-radius:.5rem}.form-check{display:block;min-height:1.5rem;padding-left:1.5em;margin-bottom:.125rem}.form-check .form-check-input{float:left;margin-left:-1.5em}.form-check-reverse{padding-right:1.5em;padding-left:0;text-align:right}.form-check-reverse .form-check-input{float:right;margin-right:-1.5em;margin-left:0}.form-check-input{width:1em;height:1em;margin-top:.25em;vertical-align:top;background-color:#fff;background-repeat:no-repeat;background-position:center;background-size:contain;border:1px solid rgba(0,0,0,.25);appearance:none;print-color-adjust:exact}.form-check-input[type=checkbox]{border-radius:.25em}.form-check-input[type=radio]{border-radius:50%}.form-check-input:active{filter:brightness(90%)}.form-check-input:focus{border-color:#86b7fe;outline:0;box-shadow:0 0 0 .25rem rgba(13,110,253,.25)}.form-check-input:checked{background-color:#0d6efd;border-color:#0d6efd}.form-check-input:checked[type=checkbox]{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='m6 10 3 3 6-6'/%3e%3c/svg%3e")}.form-check-input:checked[type=radio]{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='2' fill='%23fff'/%3e%3c/svg%3e")}.form-check-input[type=checkbox]:indeterminate{background-color:#0d6efd;border-color:#0d6efd;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10h8'/%3e%3c/svg%3e")}.form-check-input:disabled{pointer-events:none;filter:none;opacity:.5}.form-check-input[disabled]~.form-check-label,.form-check-input:disabled~.form-check-label{cursor:default;opacity:.5}.form-switch{padding-left:2.5em}.form-switch .form-check-input{width:2em;margin-left:-2.5em;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba%280, 0, 0, 0.25%29'/%3e%3c/svg%3e");background-position:left center;border-radius:2em;transition:background-position .15s ease-in-out}@media(prefers-reduced-motion: reduce){.form-switch .form-check-input{transition:none}}.form-switch .form-check-input:focus{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%2386b7fe'/%3e%3c/svg%3e")}.form-switch .form-check-input:checked{background-position:right center;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e")}.form-switch.form-check-reverse{padding-right:2.5em;padding-left:0}.form-switch.form-check-reverse .form-check-input{margin-right:-2.5em;margin-left:0}.form-check-inline{display:inline-block;margin-right:1rem}.btn-check{position:absolute;clip:rect(0, 0, 0, 0);pointer-events:none}.btn-check[disabled]+.btn,.btn-check:disabled+.btn{pointer-events:none;filter:none;opacity:.65}.form-range{width:100%;height:1.5rem;padding:0;background-color:rgba(0,0,0,0);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:-0.25rem;background-color:#0d6efd;border:0;border-radius:1rem;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;appearance:none}@media(prefers-reduced-motion: reduce){.form-range::-webkit-slider-thumb{transition:none}}.form-range::-webkit-slider-thumb:active{background-color:#b6d4fe}.form-range::-webkit-slider-runnable-track{width:100%;height:.5rem;color:rgba(0,0,0,0);cursor:pointer;background-color:#dee2e6;border-color:rgba(0,0,0,0);border-radius:1rem}.form-range::-moz-range-thumb{width:1rem;height:1rem;background-color:#0d6efd;border:0;border-radius:1rem;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;appearance:none}@media(prefers-reduced-motion: reduce){.form-range::-moz-range-thumb{transition:none}}.form-range::-moz-range-thumb:active{background-color:#b6d4fe}.form-range::-moz-range-track{width:100%;height:.5rem;color:rgba(0,0,0,0);cursor:pointer;background-color:#dee2e6;border-color:rgba(0,0,0,0);border-radius:1rem}.form-range:disabled{pointer-events:none}.form-range:disabled::-webkit-slider-thumb{background-color:#adb5bd}.form-range:disabled::-moz-range-thumb{background-color:#adb5bd}.form-floating{position:relative}.form-floating>.form-control,.form-floating>.form-control-plaintext,.form-floating>.form-select{height:calc(3.5rem + 2px);line-height:1.25}.form-floating>label{position:absolute;top:0;left:0;width:100%;height:100%;padding:1rem .75rem;overflow:hidden;text-align:start;text-overflow:ellipsis;white-space:nowrap;pointer-events:none;border:1px solid rgba(0,0,0,0);transform-origin:0 0;transition:opacity .1s ease-in-out,transform .1s ease-in-out}@media(prefers-reduced-motion: reduce){.form-floating>label{transition:none}}.form-floating>.form-control,.form-floating>.form-control-plaintext{padding:1rem .75rem}.form-floating>.form-control::placeholder,.form-floating>.form-control-plaintext::placeholder{color:rgba(0,0,0,0)}.form-floating>.form-control:focus,.form-floating>.form-control:not(:placeholder-shown),.form-floating>.form-control-plaintext:focus,.form-floating>.form-control-plaintext:not(:placeholder-shown){padding-top:1.625rem;padding-bottom:.625rem}.form-floating>.form-control:-webkit-autofill,.form-floating>.form-control-plaintext:-webkit-autofill{padding-top:1.625rem;padding-bottom:.625rem}.form-floating>.form-select{padding-top:1.625rem;padding-bottom:.625rem}.form-floating>.form-control:focus~label,.form-floating>.form-control:not(:placeholder-shown)~label,.form-floating>.form-control-plaintext~label,.form-floating>.form-select~label{opacity:.65;transform:scale(0.85) translateY(-0.5rem) translateX(0.15rem)}.form-floating>.form-control:-webkit-autofill~label{opacity:.65;transform:scale(0.85) translateY(-0.5rem) translateX(0.15rem)}.form-floating>.form-control-plaintext~label{border-width:1px 0}.input-group{position:relative;display:flex;flex-wrap:wrap;align-items:stretch;width:100%}.input-group>.form-control,.input-group>.form-select,.input-group>.form-floating{position:relative;flex:1 1 auto;width:1%;min-width:0}.input-group>.form-control:focus,.input-group>.form-select:focus,.input-group>.form-floating:focus-within{z-index:5}.input-group .btn{position:relative;z-index:2}.input-group .btn:focus{z-index:5}.input-group-text{display:flex;align-items:center;padding:.375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:#212529;text-align:center;white-space:nowrap;background-color:#e9ecef;border:1px solid #ced4da;border-radius:.4rem}.input-group-lg>.form-control,.input-group-lg>.form-select,.input-group-lg>.input-group-text,.input-group-lg>.btn{padding:.5rem 1rem;font-size:1.25rem;border-radius:.5rem}.input-group-sm>.form-control,.input-group-sm>.form-select,.input-group-sm>.input-group-text,.input-group-sm>.btn{padding:.25rem .5rem;font-size:0.875rem;border-radius:.25rem}.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):not(.form-floating),.input-group:not(.has-validation)>.dropdown-toggle:nth-last-child(n+3),.input-group:not(.has-validation)>.form-floating:not(:last-child)>.form-control,.input-group:not(.has-validation)>.form-floating:not(:last-child)>.form-select{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):not(.form-floating),.input-group.has-validation>.dropdown-toggle:nth-last-child(n+4),.input-group.has-validation>.form-floating:nth-last-child(n+3)>.form-control,.input-group.has-validation>.form-floating:nth-last-child(n+3)>.form-select{border-top-right-radius:0;border-bottom-right-radius:0}.input-group>:not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback){margin-left:-1px;border-top-left-radius:0;border-bottom-left-radius:0}.input-group>.form-floating:not(:first-child)>.form-control,.input-group>.form-floating:not(:first-child)>.form-select{border-top-left-radius:0;border-bottom-left-radius:0}.valid-feedback{display:none;width:100%;margin-top:.25rem;font-size:0.875em;color:#198754}.valid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.4rem .8rem;margin-top:.1rem;font-size:0.875rem;color:#fff;background-color:rgba(25,135,84,.9);border-radius:.4rem}.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.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right calc(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 .25rem rgba(25,135,84,.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 5 6 6 6-6'/%3e%3c/svg%3e"),url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23198754' d='M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");background-position:right .75rem center,center right 2.25rem;background-size:16px 12px,calc(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 .25rem rgba(25,135,84,.25)}.was-validated .form-control-color:valid,.form-control-color.is-valid{width:calc(3rem + calc(1.5em + 0.75rem))}.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 .25rem rgba(25,135,84,.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:.5em}.was-validated .input-group>.form-control:not(:focus):valid,.input-group>.form-control:not(:focus).is-valid,.was-validated .input-group>.form-select:not(:focus):valid,.input-group>.form-select:not(:focus).is-valid,.was-validated .input-group>.form-floating:not(:focus-within):valid,.input-group>.form-floating:not(:focus-within).is-valid{z-index:3}.invalid-feedback{display:none;width:100%;margin-top:.25rem;font-size:0.875em;color:#dc3545}.invalid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.4rem .8rem;margin-top:.1rem;font-size:0.875rem;color:#fff;background-color:rgba(220,53,69,.9);border-radius:.4rem}.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 .25rem rgba(220,53,69,.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 5 6 6 6-6'/%3e%3c/svg%3e"),url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");background-position:right .75rem center,center right 2.25rem;background-size:16px 12px,calc(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 .25rem rgba(220,53,69,.25)}.was-validated .form-control-color:invalid,.form-control-color.is-invalid{width:calc(3rem + calc(1.5em + 0.75rem))}.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 .25rem rgba(220,53,69,.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:.5em}.was-validated .input-group>.form-control:not(:focus):invalid,.input-group>.form-control:not(:focus).is-invalid,.was-validated .input-group>.form-select:not(:focus):invalid,.input-group>.form-select:not(:focus).is-invalid,.was-validated .input-group>.form-floating:not(:focus-within):invalid,.input-group>.form-floating:not(:focus-within).is-invalid{z-index:4}.btn{--bs-btn-padding-x: 0.75rem;--bs-btn-padding-y: 0.375rem;--bs-btn-font-family: ;--bs-btn-font-size:1rem;--bs-btn-font-weight: 400;--bs-btn-line-height: 1.5;--bs-btn-color: #212529;--bs-btn-bg: transparent;--bs-btn-border-width: 1px;--bs-btn-border-color: transparent;--bs-btn-border-radius: 0.4rem;--bs-btn-hover-border-color: transparent;--bs-btn-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);--bs-btn-disabled-opacity: 0.65;--bs-btn-focus-box-shadow: 0 0 0 0.25rem rgba(var(--bs-btn-focus-shadow-rgb), .5);display:inline-block;padding:var(--bs-btn-padding-y) var(--bs-btn-padding-x);font-family:var(--bs-btn-font-family);font-size:var(--bs-btn-font-size);font-weight:var(--bs-btn-font-weight);line-height:var(--bs-btn-line-height);color:var(--bs-btn-color);text-align:center;vertical-align:middle;cursor:pointer;user-select:none;border:var(--bs-btn-border-width) solid var(--bs-btn-border-color);border-radius:var(--bs-btn-border-radius);background-color:var(--bs-btn-bg);transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media(prefers-reduced-motion: reduce){.btn{transition:none}}.btn:hover{color:var(--bs-btn-hover-color);text-decoration:none;background-color:var(--bs-btn-hover-bg);border-color:var(--bs-btn-hover-border-color)}.btn-check+.btn:hover{color:var(--bs-btn-color);background-color:var(--bs-btn-bg);border-color:var(--bs-btn-border-color)}.btn:focus-visible{color:var(--bs-btn-hover-color);background-color:var(--bs-btn-hover-bg);border-color:var(--bs-btn-hover-border-color);outline:0;box-shadow:var(--bs-btn-focus-box-shadow)}.btn-check:focus-visible+.btn{border-color:var(--bs-btn-hover-border-color);outline:0;box-shadow:var(--bs-btn-focus-box-shadow)}.btn-check:checked+.btn,:not(.btn-check)+.btn:active,.btn:first-child:active,.btn.active,.btn.show{color:var(--bs-btn-active-color);background-color:var(--bs-btn-active-bg);border-color:var(--bs-btn-active-border-color)}.btn-check:checked+.btn:focus-visible,:not(.btn-check)+.btn:active:focus-visible,.btn:first-child:active:focus-visible,.btn.active:focus-visible,.btn.show:focus-visible{box-shadow:var(--bs-btn-focus-box-shadow)}.btn:disabled,.btn.disabled,fieldset:disabled .btn{color:var(--bs-btn-disabled-color);pointer-events:none;background-color:var(--bs-btn-disabled-bg);border-color:var(--bs-btn-disabled-border-color);opacity:var(--bs-btn-disabled-opacity)}.btn-primary{--bs-btn-color: #fff;--bs-btn-bg: #0d6efd;--bs-btn-border-color: #0d6efd;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #0b5ed7;--bs-btn-hover-border-color: #0a58ca;--bs-btn-focus-shadow-rgb: 49, 132, 253;--bs-btn-active-color: #fff;--bs-btn-active-bg: #0a58ca;--bs-btn-active-border-color: #0a53be;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color: #fff;--bs-btn-disabled-bg: #0d6efd;--bs-btn-disabled-border-color: #0d6efd}.btn-secondary{--bs-btn-color: #fff;--bs-btn-bg: #6c757d;--bs-btn-border-color: #6c757d;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #5c636a;--bs-btn-hover-border-color: #565e64;--bs-btn-focus-shadow-rgb: 130, 138, 145;--bs-btn-active-color: #fff;--bs-btn-active-bg: #565e64;--bs-btn-active-border-color: #51585e;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color: #fff;--bs-btn-disabled-bg: #6c757d;--bs-btn-disabled-border-color: #6c757d}.btn-success{--bs-btn-color: #fff;--bs-btn-bg: #198754;--bs-btn-border-color: #198754;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #157347;--bs-btn-hover-border-color: #146c43;--bs-btn-focus-shadow-rgb: 60, 153, 110;--bs-btn-active-color: #fff;--bs-btn-active-bg: #146c43;--bs-btn-active-border-color: #13653f;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color: #fff;--bs-btn-disabled-bg: #198754;--bs-btn-disabled-border-color: #198754}.btn-info{--bs-btn-color: #000;--bs-btn-bg: #0dcaf0;--bs-btn-border-color: #0dcaf0;--bs-btn-hover-color: #000;--bs-btn-hover-bg: #31d2f2;--bs-btn-hover-border-color: #25cff2;--bs-btn-focus-shadow-rgb: 11, 172, 204;--bs-btn-active-color: #000;--bs-btn-active-bg: #3dd5f3;--bs-btn-active-border-color: #25cff2;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color: #000;--bs-btn-disabled-bg: #0dcaf0;--bs-btn-disabled-border-color: #0dcaf0}.btn-warning{--bs-btn-color: #000;--bs-btn-bg: #ffc107;--bs-btn-border-color: #ffc107;--bs-btn-hover-color: #000;--bs-btn-hover-bg: #ffca2c;--bs-btn-hover-border-color: #ffc720;--bs-btn-focus-shadow-rgb: 217, 164, 6;--bs-btn-active-color: #000;--bs-btn-active-bg: #ffcd39;--bs-btn-active-border-color: #ffc720;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color: #000;--bs-btn-disabled-bg: #ffc107;--bs-btn-disabled-border-color: #ffc107}.btn-danger{--bs-btn-color: #fff;--bs-btn-bg: #dc3545;--bs-btn-border-color: #dc3545;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #bb2d3b;--bs-btn-hover-border-color: #b02a37;--bs-btn-focus-shadow-rgb: 225, 83, 97;--bs-btn-active-color: #fff;--bs-btn-active-bg: #b02a37;--bs-btn-active-border-color: #a52834;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color: #fff;--bs-btn-disabled-bg: #dc3545;--bs-btn-disabled-border-color: #dc3545}.btn-light{--bs-btn-color: #000;--bs-btn-bg: #f8f9fa;--bs-btn-border-color: #f8f9fa;--bs-btn-hover-color: #000;--bs-btn-hover-bg: #d3d4d5;--bs-btn-hover-border-color: #c6c7c8;--bs-btn-focus-shadow-rgb: 211, 212, 213;--bs-btn-active-color: #000;--bs-btn-active-bg: #c6c7c8;--bs-btn-active-border-color: #babbbc;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color: #000;--bs-btn-disabled-bg: #f8f9fa;--bs-btn-disabled-border-color: #f8f9fa}.btn-dark{--bs-btn-color: #fff;--bs-btn-bg: #212529;--bs-btn-border-color: #212529;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #424649;--bs-btn-hover-border-color: #373b3e;--bs-btn-focus-shadow-rgb: 66, 70, 73;--bs-btn-active-color: #fff;--bs-btn-active-bg: #4d5154;--bs-btn-active-border-color: #373b3e;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color: #fff;--bs-btn-disabled-bg: #212529;--bs-btn-disabled-border-color: #212529}.btn-outline-primary{--bs-btn-color: #0d6efd;--bs-btn-border-color: #0d6efd;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #0d6efd;--bs-btn-hover-border-color: #0d6efd;--bs-btn-focus-shadow-rgb: 13, 110, 253;--bs-btn-active-color: #fff;--bs-btn-active-bg: #0d6efd;--bs-btn-active-border-color: #0d6efd;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color: #0d6efd;--bs-btn-disabled-bg: transparent;--bs-btn-disabled-border-color: #0d6efd;--bs-gradient: none}.btn-outline-secondary{--bs-btn-color: #6c757d;--bs-btn-border-color: #6c757d;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #6c757d;--bs-btn-hover-border-color: #6c757d;--bs-btn-focus-shadow-rgb: 108, 117, 125;--bs-btn-active-color: #fff;--bs-btn-active-bg: #6c757d;--bs-btn-active-border-color: #6c757d;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color: #6c757d;--bs-btn-disabled-bg: transparent;--bs-btn-disabled-border-color: #6c757d;--bs-gradient: none}.btn-outline-success{--bs-btn-color: #198754;--bs-btn-border-color: #198754;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #198754;--bs-btn-hover-border-color: #198754;--bs-btn-focus-shadow-rgb: 25, 135, 84;--bs-btn-active-color: #fff;--bs-btn-active-bg: #198754;--bs-btn-active-border-color: #198754;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color: #198754;--bs-btn-disabled-bg: transparent;--bs-btn-disabled-border-color: #198754;--bs-gradient: none}.btn-outline-info{--bs-btn-color: #0dcaf0;--bs-btn-border-color: #0dcaf0;--bs-btn-hover-color: #000;--bs-btn-hover-bg: #0dcaf0;--bs-btn-hover-border-color: #0dcaf0;--bs-btn-focus-shadow-rgb: 13, 202, 240;--bs-btn-active-color: #000;--bs-btn-active-bg: #0dcaf0;--bs-btn-active-border-color: #0dcaf0;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color: #0dcaf0;--bs-btn-disabled-bg: transparent;--bs-btn-disabled-border-color: #0dcaf0;--bs-gradient: none}.btn-outline-warning{--bs-btn-color: #ffc107;--bs-btn-border-color: #ffc107;--bs-btn-hover-color: #000;--bs-btn-hover-bg: #ffc107;--bs-btn-hover-border-color: #ffc107;--bs-btn-focus-shadow-rgb: 255, 193, 7;--bs-btn-active-color: #000;--bs-btn-active-bg: #ffc107;--bs-btn-active-border-color: #ffc107;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color: #ffc107;--bs-btn-disabled-bg: transparent;--bs-btn-disabled-border-color: #ffc107;--bs-gradient: none}.btn-outline-danger{--bs-btn-color: #dc3545;--bs-btn-border-color: #dc3545;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #dc3545;--bs-btn-hover-border-color: #dc3545;--bs-btn-focus-shadow-rgb: 220, 53, 69;--bs-btn-active-color: #fff;--bs-btn-active-bg: #dc3545;--bs-btn-active-border-color: #dc3545;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color: #dc3545;--bs-btn-disabled-bg: transparent;--bs-btn-disabled-border-color: #dc3545;--bs-gradient: none}.btn-outline-light{--bs-btn-color: #f8f9fa;--bs-btn-border-color: #f8f9fa;--bs-btn-hover-color: #000;--bs-btn-hover-bg: #f8f9fa;--bs-btn-hover-border-color: #f8f9fa;--bs-btn-focus-shadow-rgb: 248, 249, 250;--bs-btn-active-color: #000;--bs-btn-active-bg: #f8f9fa;--bs-btn-active-border-color: #f8f9fa;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color: #f8f9fa;--bs-btn-disabled-bg: transparent;--bs-btn-disabled-border-color: #f8f9fa;--bs-gradient: none}.btn-outline-dark{--bs-btn-color: #212529;--bs-btn-border-color: #212529;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #212529;--bs-btn-hover-border-color: #212529;--bs-btn-focus-shadow-rgb: 33, 37, 41;--bs-btn-active-color: #fff;--bs-btn-active-bg: #212529;--bs-btn-active-border-color: #212529;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color: #212529;--bs-btn-disabled-bg: transparent;--bs-btn-disabled-border-color: #212529;--bs-gradient: none}.btn-link{--bs-btn-font-weight: 400;--bs-btn-color: var(--bs-link-color);--bs-btn-bg: transparent;--bs-btn-border-color: transparent;--bs-btn-hover-color: var(--bs-link-hover-color);--bs-btn-hover-border-color: transparent;--bs-btn-active-color: var(--bs-link-hover-color);--bs-btn-active-border-color: transparent;--bs-btn-disabled-color: #6c757d;--bs-btn-disabled-border-color: transparent;--bs-btn-box-shadow: none;--bs-btn-focus-shadow-rgb: 49, 132, 253;text-decoration:none}.btn-link:hover,.btn-link:focus-visible{text-decoration:underline}.btn-link:focus-visible{color:var(--bs-btn-color)}.btn-link:hover{color:var(--bs-btn-hover-color)}.btn-lg,.btn-group-lg>.btn{--bs-btn-padding-y: 0.5rem;--bs-btn-padding-x: 1rem;--bs-btn-font-size:1.25rem;--bs-btn-border-radius: 0.5rem}.btn-sm,.btn-group-sm>.btn{--bs-btn-padding-y: 0.2rem;--bs-btn-padding-x: 0.5rem;--bs-btn-font-size:0.875rem;--bs-btn-border-radius: 0.25rem}.fade{transition:opacity .15s linear}@media(prefers-reduced-motion: reduce){.fade{transition:none}}.fade:not(.show){opacity:0}.collapse:not(.show){display:none}.collapsing{height:0;overflow:hidden;transition:height .35s ease}@media(prefers-reduced-motion: reduce){.collapsing{transition:none}}.collapsing.collapse-horizontal{width:0;height:auto;transition:width .35s ease}@media(prefers-reduced-motion: reduce){.collapsing.collapse-horizontal{transition:none}}.dropup,.dropend,.dropdown,.dropstart,.dropup-center,.dropdown-center{position:relative}.dropdown-toggle{white-space:nowrap}.dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid;border-right:.3em solid rgba(0,0,0,0);border-bottom:0;border-left:.3em solid rgba(0,0,0,0)}.dropdown-toggle:empty::after{margin-left:0}.dropdown-menu{--bs-dropdown-zindex: 1000;--bs-dropdown-min-width: 11rem;--bs-dropdown-padding-x: 0;--bs-dropdown-padding-y: 0.5rem;--bs-dropdown-spacer: 0.125rem;--bs-dropdown-font-size:1rem;--bs-dropdown-color: #212529;--bs-dropdown-bg: #fff;--bs-dropdown-border-color: var(--bs-border-color-translucent);--bs-dropdown-border-radius: 0.4rem;--bs-dropdown-border-width: 1px;--bs-dropdown-inner-border-radius: calc(0.4rem - 1px);--bs-dropdown-divider-bg: var(--bs-border-color-translucent);--bs-dropdown-divider-margin-y: 0.45rem;--bs-dropdown-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);--bs-dropdown-link-color: #212529;--bs-dropdown-link-hover-color: #1e2125;--bs-dropdown-link-hover-bg: #e9ecef;--bs-dropdown-link-active-color: #fff;--bs-dropdown-link-active-bg: #0d6efd;--bs-dropdown-link-disabled-color: #adb5bd;--bs-dropdown-item-padding-x: 0.9rem;--bs-dropdown-item-padding-y: 0.225rem;--bs-dropdown-header-color: #6c757d;--bs-dropdown-header-padding-x: 0.9rem;--bs-dropdown-header-padding-y: 0.5rem;position:absolute;z-index:var(--bs-dropdown-zindex);display:none;min-width:var(--bs-dropdown-min-width);padding:var(--bs-dropdown-padding-y) var(--bs-dropdown-padding-x);margin:0;font-size:var(--bs-dropdown-font-size);color:var(--bs-dropdown-color);text-align:left;list-style:none;background-color:var(--bs-dropdown-bg);background-clip:padding-box;border:var(--bs-dropdown-border-width) solid var(--bs-dropdown-border-color);border-radius:var(--bs-dropdown-border-radius)}.dropdown-menu[data-bs-popper]{top:100%;left:0;margin-top:var(--bs-dropdown-spacer)}.dropdown-menu-start{--bs-position: start}.dropdown-menu-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-end{--bs-position: end}.dropdown-menu-end[data-bs-popper]{right:0;left:auto}@media(min-width: 576px){.dropdown-menu-sm-start{--bs-position: start}.dropdown-menu-sm-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-sm-end{--bs-position: end}.dropdown-menu-sm-end[data-bs-popper]{right:0;left:auto}}@media(min-width: 768px){.dropdown-menu-md-start{--bs-position: start}.dropdown-menu-md-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-md-end{--bs-position: end}.dropdown-menu-md-end[data-bs-popper]{right:0;left:auto}}@media(min-width: 992px){.dropdown-menu-lg-start{--bs-position: start}.dropdown-menu-lg-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-lg-end{--bs-position: end}.dropdown-menu-lg-end[data-bs-popper]{right:0;left:auto}}@media(min-width: 1200px){.dropdown-menu-xl-start{--bs-position: start}.dropdown-menu-xl-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-xl-end{--bs-position: end}.dropdown-menu-xl-end[data-bs-popper]{right:0;left:auto}}@media(min-width: 1400px){.dropdown-menu-xxl-start{--bs-position: start}.dropdown-menu-xxl-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-xxl-end{--bs-position: end}.dropdown-menu-xxl-end[data-bs-popper]{right:0;left:auto}}@media(min-width: 1900px){.dropdown-menu-xxxl-start{--bs-position: start}.dropdown-menu-xxxl-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-xxxl-end{--bs-position: end}.dropdown-menu-xxxl-end[data-bs-popper]{right:0;left:auto}}.dropup .dropdown-menu[data-bs-popper]{top:auto;bottom:100%;margin-top:0;margin-bottom:var(--bs-dropdown-spacer)}.dropup .dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:0;border-right:.3em solid rgba(0,0,0,0);border-bottom:.3em solid;border-left:.3em solid rgba(0,0,0,0)}.dropup .dropdown-toggle:empty::after{margin-left:0}.dropend .dropdown-menu[data-bs-popper]{top:0;right:auto;left:100%;margin-top:0;margin-left:var(--bs-dropdown-spacer)}.dropend .dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid rgba(0,0,0,0);border-right:0;border-bottom:.3em solid rgba(0,0,0,0);border-left:.3em solid}.dropend .dropdown-toggle:empty::after{margin-left:0}.dropend .dropdown-toggle::after{vertical-align:0}.dropstart .dropdown-menu[data-bs-popper]{top:0;right:100%;left:auto;margin-top:0;margin-right:var(--bs-dropdown-spacer)}.dropstart .dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:""}.dropstart .dropdown-toggle::after{display:none}.dropstart .dropdown-toggle::before{display:inline-block;margin-right:.255em;vertical-align:.255em;content:"";border-top:.3em solid rgba(0,0,0,0);border-right:.3em solid;border-bottom:.3em solid rgba(0,0,0,0)}.dropstart .dropdown-toggle:empty::after{margin-left:0}.dropstart .dropdown-toggle::before{vertical-align:0}.dropdown-divider{height:0;margin:var(--bs-dropdown-divider-margin-y) 0;overflow:hidden;border-top:1px solid var(--bs-dropdown-divider-bg);opacity:1}.dropdown-item{display:block;width:100%;padding:var(--bs-dropdown-item-padding-y) var(--bs-dropdown-item-padding-x);clear:both;font-weight:400;color:var(--bs-dropdown-link-color);text-align:inherit;white-space:nowrap;background-color:rgba(0,0,0,0);border:0}.dropdown-item:hover,.dropdown-item:focus{color:var(--bs-dropdown-link-hover-color);text-decoration:none;background-color:var(--bs-dropdown-link-hover-bg)}.dropdown-item.active,.dropdown-item:active{color:var(--bs-dropdown-link-active-color);text-decoration:none;background-color:var(--bs-dropdown-link-active-bg)}.dropdown-item.disabled,.dropdown-item:disabled{color:var(--bs-dropdown-link-disabled-color);pointer-events:none;background-color:rgba(0,0,0,0)}.dropdown-menu.show{display:block}.dropdown-header{display:block;padding:var(--bs-dropdown-header-padding-y) var(--bs-dropdown-header-padding-x);margin-bottom:0;font-size:0.875rem;color:var(--bs-dropdown-header-color);white-space:nowrap}.dropdown-item-text{display:block;padding:var(--bs-dropdown-item-padding-y) var(--bs-dropdown-item-padding-x);color:var(--bs-dropdown-link-color)}.dropdown-menu-dark{--bs-dropdown-color: #dee2e6;--bs-dropdown-bg: #343a40;--bs-dropdown-border-color: var(--bs-border-color-translucent);--bs-dropdown-box-shadow: ;--bs-dropdown-link-color: #dee2e6;--bs-dropdown-link-hover-color: #fff;--bs-dropdown-divider-bg: var(--bs-border-color-translucent);--bs-dropdown-link-hover-bg: rgba(255, 255, 255, 0.15);--bs-dropdown-link-active-color: #fff;--bs-dropdown-link-active-bg: #0d6efd;--bs-dropdown-link-disabled-color: #adb5bd;--bs-dropdown-header-color: #adb5bd}.btn-group,.btn-group-vertical{position:relative;display:inline-flex;vertical-align:middle}.btn-group>.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{border-radius:.4rem}.btn-group>:not(.btn-check:first-child)+.btn,.btn-group>.btn-group:not(:first-child){margin-left:-1px}.btn-group>.btn:not(:last-child):not(.dropdown-toggle),.btn-group>.btn.dropdown-toggle-split:first-child,.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:.5625rem;padding-left:.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:.375rem;padding-left:.375rem}.btn-lg+.dropdown-toggle-split,.btn-group-lg>.btn+.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: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{--bs-nav-link-padding-x: 1rem;--bs-nav-link-padding-y: 0.5rem;--bs-nav-link-font-weight: ;--bs-nav-link-color: var(--bs-link-color);--bs-nav-link-hover-color: var(--bs-link-hover-color);--bs-nav-link-disabled-color: #6c757d;display:flex;flex-wrap:wrap;padding-left:0;margin-bottom:0;list-style:none}.nav-link{display:block;padding:var(--bs-nav-link-padding-y) var(--bs-nav-link-padding-x);font-size:var(--bs-nav-link-font-size);font-weight:var(--bs-nav-link-font-weight);color:var(--bs-nav-link-color);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:hover,.nav-link:focus{color:var(--bs-nav-link-hover-color);text-decoration:none}.nav-link.disabled{color:var(--bs-nav-link-disabled-color);pointer-events:none;cursor:default}.nav-tabs{--bs-nav-tabs-border-width: 1px;--bs-nav-tabs-border-color: #adb5bd;--bs-nav-tabs-border-radius: 0.4rem;--bs-nav-tabs-link-hover-border-color: #e9ecef #e9ecef #adb5bd;--bs-nav-tabs-link-active-color: #2c3237;--bs-nav-tabs-link-active-bg: #fff;--bs-nav-tabs-link-active-border-color: #adb5bd #adb5bd #fff !important;border-bottom:var(--bs-nav-tabs-border-width) solid var(--bs-nav-tabs-border-color)}.nav-tabs .nav-link{margin-bottom:calc(-1*var(--bs-nav-tabs-border-width));background:none;border:var(--bs-nav-tabs-border-width) solid rgba(0,0,0,0);border-top-left-radius:var(--bs-nav-tabs-border-radius);border-top-right-radius:var(--bs-nav-tabs-border-radius)}.nav-tabs .nav-link:hover,.nav-tabs .nav-link:focus{isolation:isolate;border-color:var(--bs-nav-tabs-link-hover-border-color)}.nav-tabs .nav-link.disabled,.nav-tabs .nav-link:disabled{color:var(--bs-nav-link-disabled-color);background-color:rgba(0,0,0,0);border-color:rgba(0,0,0,0)}.nav-tabs .nav-link.active,.nav-tabs .nav-item.show .nav-link{color:var(--bs-nav-tabs-link-active-color);background-color:var(--bs-nav-tabs-link-active-bg);border-color:var(--bs-nav-tabs-link-active-border-color)}.nav-tabs .dropdown-menu{margin-top:calc(-1*var(--bs-nav-tabs-border-width));border-top-left-radius:0;border-top-right-radius:0}.nav-pills{--bs-nav-pills-border-radius: 0.4rem;--bs-nav-pills-link-active-color: #fff;--bs-nav-pills-link-active-bg: #0d6efd}.nav-pills .nav-link{background:none;border:0;border-radius:var(--bs-nav-pills-border-radius)}.nav-pills .nav-link:disabled{color:var(--bs-nav-link-disabled-color);background-color:rgba(0,0,0,0);border-color:rgba(0,0,0,0)}.nav-pills .nav-link.active,.nav-pills .show>.nav-link{color:var(--bs-nav-pills-link-active-color);background-color:var(--bs-nav-pills-link-active-bg)}.nav-fill>.nav-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{--bs-navbar-padding-x: 1rem;--bs-navbar-padding-y: 1rem;--bs-navbar-color: rgba(0, 0, 0, 0.55);--bs-navbar-hover-color: rgba(0, 0, 0, 0.7);--bs-navbar-disabled-color: rgba(0, 0, 0, 0.3);--bs-navbar-active-color: rgba(0, 0, 0, 0.9);--bs-navbar-brand-padding-y: 0.125rem;--bs-navbar-brand-margin-end: 1rem;--bs-navbar-brand-font-size: 1.5rem;--bs-navbar-brand-color: rgba(0, 0, 0, 0.9);--bs-navbar-brand-hover-color: rgba(0, 0, 0, 0.9);--bs-navbar-nav-link-padding-x: 0.5rem;--bs-navbar-toggler-padding-y: 0.25rem;--bs-navbar-toggler-padding-x: 0.75rem;--bs-navbar-toggler-font-size: 1.25rem;--bs-navbar-toggler-icon-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%280, 0, 0, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");--bs-navbar-toggler-border-color: rgba(0, 0, 0, 0.1);--bs-navbar-toggler-border-radius: 0.4rem;--bs-navbar-toggler-focus-width: 0.25rem;--bs-navbar-toggler-transition: box-shadow 0.15s ease-in-out;position:relative;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;padding:var(--bs-navbar-padding-y) var(--bs-navbar-padding-x)}.navbar>.container,.navbar>.container-fluid,.navbar>.container-sm,.navbar>.container-md,.navbar>.container-lg,.navbar>.container-xl,.navbar>.container-xxl,.navbar>.container-xxxl{display:flex;flex-wrap:inherit;align-items:center;justify-content:space-between}.navbar-brand{padding-top:var(--bs-navbar-brand-padding-y);padding-bottom:var(--bs-navbar-brand-padding-y);margin-right:var(--bs-navbar-brand-margin-end);font-size:var(--bs-navbar-brand-font-size);color:var(--bs-navbar-brand-color);white-space:nowrap}.navbar-brand:hover,.navbar-brand:focus{color:var(--bs-navbar-brand-hover-color);text-decoration:none}.navbar-nav{--bs-nav-link-padding-x: 0;--bs-nav-link-padding-y: 0.5rem;--bs-nav-link-font-weight: ;--bs-nav-link-color: var(--bs-navbar-color);--bs-nav-link-hover-color: var(--bs-navbar-hover-color);--bs-nav-link-disabled-color: var(--bs-navbar-disabled-color);display:flex;flex-direction:column;padding-left:0;margin-bottom:0;list-style:none}.navbar-nav .show>.nav-link,.navbar-nav .nav-link.active{color:var(--bs-navbar-active-color)}.navbar-nav .dropdown-menu{position:static}.navbar-text{padding-top:.5rem;padding-bottom:.5rem;color:var(--bs-navbar-color)}.navbar-text a,.navbar-text a:hover,.navbar-text a:focus{color:var(--bs-navbar-active-color)}.navbar-collapse{flex-basis:100%;flex-grow:1;align-items:center}.navbar-toggler{padding:var(--bs-navbar-toggler-padding-y) var(--bs-navbar-toggler-padding-x);font-size:var(--bs-navbar-toggler-font-size);line-height:1;color:var(--bs-navbar-color);background-color:rgba(0,0,0,0);border:var(--bs-border-width) solid var(--bs-navbar-toggler-border-color);border-radius:var(--bs-navbar-toggler-border-radius);transition:var(--bs-navbar-toggler-transition)}@media(prefers-reduced-motion: reduce){.navbar-toggler{transition:none}}.navbar-toggler:hover{text-decoration:none}.navbar-toggler:focus{text-decoration:none;outline:0;box-shadow:0 0 0 var(--bs-navbar-toggler-focus-width)}.navbar-toggler-icon{display:inline-block;width:1.5em;height:1.5em;vertical-align:middle;background-image:var(--bs-navbar-toggler-icon-bg);background-repeat:no-repeat;background-position:center;background-size:100%}.navbar-nav-scroll{max-height:var(--bs-scroll-height, 75vh);overflow-y:auto}@media(min-width: 576px){.navbar-expand-sm{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand-sm .navbar-nav{flex-direction:row}.navbar-expand-sm .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-sm .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand-sm .navbar-nav-scroll{overflow:visible}.navbar-expand-sm .navbar-collapse{display:flex !important;flex-basis:auto}.navbar-expand-sm .navbar-toggler{display:none}.navbar-expand-sm .offcanvas{position:static;z-index:auto;flex-grow:1;width:auto !important;height:auto !important;visibility:visible !important;background-color:rgba(0,0,0,0) !important;border:0 !important;transform:none !important;transition:none}.navbar-expand-sm .offcanvas .offcanvas-header{display:none}.navbar-expand-sm .offcanvas .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible}}@media(min-width: 768px){.navbar-expand-md{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand-md .navbar-nav{flex-direction:row}.navbar-expand-md .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-md .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand-md .navbar-nav-scroll{overflow:visible}.navbar-expand-md .navbar-collapse{display:flex !important;flex-basis:auto}.navbar-expand-md .navbar-toggler{display:none}.navbar-expand-md .offcanvas{position:static;z-index:auto;flex-grow:1;width:auto !important;height:auto !important;visibility:visible !important;background-color:rgba(0,0,0,0) !important;border:0 !important;transform:none !important;transition:none}.navbar-expand-md .offcanvas .offcanvas-header{display:none}.navbar-expand-md .offcanvas .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible}}@media(min-width: 992px){.navbar-expand-lg{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand-lg .navbar-nav{flex-direction:row}.navbar-expand-lg .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-lg .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand-lg .navbar-nav-scroll{overflow:visible}.navbar-expand-lg .navbar-collapse{display:flex !important;flex-basis:auto}.navbar-expand-lg .navbar-toggler{display:none}.navbar-expand-lg .offcanvas{position:static;z-index:auto;flex-grow:1;width:auto !important;height:auto !important;visibility:visible !important;background-color:rgba(0,0,0,0) !important;border:0 !important;transform:none !important;transition:none}.navbar-expand-lg .offcanvas .offcanvas-header{display:none}.navbar-expand-lg .offcanvas .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible}}@media(min-width: 1200px){.navbar-expand-xl{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand-xl .navbar-nav{flex-direction:row}.navbar-expand-xl .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-xl .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand-xl .navbar-nav-scroll{overflow:visible}.navbar-expand-xl .navbar-collapse{display:flex !important;flex-basis:auto}.navbar-expand-xl .navbar-toggler{display:none}.navbar-expand-xl .offcanvas{position:static;z-index:auto;flex-grow:1;width:auto !important;height:auto !important;visibility:visible !important;background-color:rgba(0,0,0,0) !important;border:0 !important;transform:none !important;transition:none}.navbar-expand-xl .offcanvas .offcanvas-header{display:none}.navbar-expand-xl .offcanvas .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible}}@media(min-width: 1400px){.navbar-expand-xxl{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand-xxl .navbar-nav{flex-direction:row}.navbar-expand-xxl .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-xxl .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand-xxl .navbar-nav-scroll{overflow:visible}.navbar-expand-xxl .navbar-collapse{display:flex !important;flex-basis:auto}.navbar-expand-xxl .navbar-toggler{display:none}.navbar-expand-xxl .offcanvas{position:static;z-index:auto;flex-grow:1;width:auto !important;height:auto !important;visibility:visible !important;background-color:rgba(0,0,0,0) !important;border:0 !important;transform:none !important;transition:none}.navbar-expand-xxl .offcanvas .offcanvas-header{display:none}.navbar-expand-xxl .offcanvas .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible}}@media(min-width: 1900px){.navbar-expand-xxxl{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand-xxxl .navbar-nav{flex-direction:row}.navbar-expand-xxxl .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-xxxl .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand-xxxl .navbar-nav-scroll{overflow:visible}.navbar-expand-xxxl .navbar-collapse{display:flex !important;flex-basis:auto}.navbar-expand-xxxl .navbar-toggler{display:none}.navbar-expand-xxxl .offcanvas{position:static;z-index:auto;flex-grow:1;width:auto !important;height:auto !important;visibility:visible !important;background-color:rgba(0,0,0,0) !important;border:0 !important;transform:none !important;transition:none}.navbar-expand-xxxl .offcanvas .offcanvas-header{display:none}.navbar-expand-xxxl .offcanvas .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible}}.navbar-expand{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand .navbar-nav{flex-direction:row}.navbar-expand .navbar-nav .dropdown-menu{position:absolute}.navbar-expand .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand .navbar-nav-scroll{overflow:visible}.navbar-expand .navbar-collapse{display:flex !important;flex-basis:auto}.navbar-expand .navbar-toggler{display:none}.navbar-expand .offcanvas{position:static;z-index:auto;flex-grow:1;width:auto !important;height:auto !important;visibility:visible !important;background-color:rgba(0,0,0,0) !important;border:0 !important;transform:none !important;transition:none}.navbar-expand .offcanvas .offcanvas-header{display:none}.navbar-expand .offcanvas .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible}.navbar-dark{--bs-navbar-color: rgba(255, 255, 255, 0.55);--bs-navbar-hover-color: rgba(255, 255, 255, 0.75);--bs-navbar-disabled-color: rgba(255, 255, 255, 0.25);--bs-navbar-active-color: #fff;--bs-navbar-brand-color: #fff;--bs-navbar-brand-hover-color: #fff;--bs-navbar-toggler-border-color: rgba(255, 255, 255, 0.1);--bs-navbar-toggler-icon-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}.card{--bs-card-spacer-y: 0.9rem;--bs-card-spacer-x: 0.9rem;--bs-card-title-spacer-y: 0.45rem;--bs-card-border-width: 1px;--bs-card-border-color: #e4e7eb;--bs-card-border-radius: 0.4rem;--bs-card-box-shadow: ;--bs-card-inner-border-radius: calc(0.4rem - 1px);--bs-card-cap-padding-y: 0.45rem;--bs-card-cap-padding-x: 0.9rem;--bs-card-cap-bg: rgba(0, 0, 0, 0.03);--bs-card-cap-color: ;--bs-card-height: ;--bs-card-color: ;--bs-card-bg: #fff;--bs-card-img-overlay-padding: 0.9rem;--bs-card-group-margin: 0.75rem;position:relative;display:flex;flex-direction:column;min-width:0;height:var(--bs-card-height);word-wrap:break-word;background-color:var(--bs-card-bg);background-clip:border-box;border:var(--bs-card-border-width) solid var(--bs-card-border-color);border-radius:var(--bs-card-border-radius)}.card>hr{margin-right:0;margin-left:0}.card>.list-group{border-top:inherit;border-bottom:inherit}.card>.list-group:first-child{border-top-width:0;border-top-left-radius:var(--bs-card-inner-border-radius);border-top-right-radius:var(--bs-card-inner-border-radius)}.card>.list-group:last-child{border-bottom-width:0;border-bottom-right-radius:var(--bs-card-inner-border-radius);border-bottom-left-radius:var(--bs-card-inner-border-radius)}.card>.card-header+.list-group,.card>.list-group+.card-footer{border-top:0}.card-body{flex:1 1 auto;padding:var(--bs-card-spacer-y) var(--bs-card-spacer-x);color:var(--bs-card-color)}.card-title{margin-bottom:var(--bs-card-title-spacer-y)}.card-subtitle{margin-top:calc(-0.5*var(--bs-card-title-spacer-y));margin-bottom:0}.card-text:last-child{margin-bottom:0}.card-link:hover{text-decoration:none}.card-link+.card-link{margin-left:var(--bs-card-spacer-x)}.card-header{padding:var(--bs-card-cap-padding-y) var(--bs-card-cap-padding-x);margin-bottom:0;color:var(--bs-card-cap-color);background-color:var(--bs-card-cap-bg);border-bottom:var(--bs-card-border-width) solid var(--bs-card-border-color)}.card-header:first-child{border-radius:var(--bs-card-inner-border-radius) var(--bs-card-inner-border-radius) 0 0}.card-footer{padding:var(--bs-card-cap-padding-y) var(--bs-card-cap-padding-x);color:var(--bs-card-cap-color);background-color:var(--bs-card-cap-bg);border-top:var(--bs-card-border-width) solid var(--bs-card-border-color)}.card-footer:last-child{border-radius:0 0 var(--bs-card-inner-border-radius) var(--bs-card-inner-border-radius)}.card-header-tabs{margin-right:calc(-0.5*var(--bs-card-cap-padding-x));margin-bottom:calc(-1*var(--bs-card-cap-padding-y));margin-left:calc(-0.5*var(--bs-card-cap-padding-x));border-bottom:0}.card-header-tabs .nav-link.active{background-color:var(--bs-card-bg);border-bottom-color:var(--bs-card-bg)}.card-header-pills{margin-right:calc(-0.5*var(--bs-card-cap-padding-x));margin-left:calc(-0.5*var(--bs-card-cap-padding-x))}.card-img-overlay{position:absolute;top:0;right:0;bottom:0;left:0;padding:var(--bs-card-img-overlay-padding);border-radius:var(--bs-card-inner-border-radius)}.card-img,.card-img-top,.card-img-bottom{width:100%}.card-img,.card-img-top{border-top-left-radius:var(--bs-card-inner-border-radius);border-top-right-radius:var(--bs-card-inner-border-radius)}.card-img,.card-img-bottom{border-bottom-right-radius:var(--bs-card-inner-border-radius);border-bottom-left-radius:var(--bs-card-inner-border-radius)}.card-group>.card{margin-bottom:var(--bs-card-group-margin)}@media(min-width: 576px){.card-group{display:flex;flex-flow:row wrap}.card-group>.card{flex:1 0 0%;margin-bottom:0}.card-group>.card+.card{margin-left:0;border-left:0}.card-group>.card:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.card-group>.card:not(:last-child) .card-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{--bs-accordion-color: #212529;--bs-accordion-bg: #fff;--bs-accordion-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, border-radius 0.15s ease;--bs-accordion-border-color: var(--bs-border-color);--bs-accordion-border-width: 1px;--bs-accordion-border-radius: 0.4rem;--bs-accordion-inner-border-radius: calc(0.4rem - 1px);--bs-accordion-btn-padding-x: 1.25rem;--bs-accordion-btn-padding-y: 1rem;--bs-accordion-btn-color: #212529;--bs-accordion-btn-bg: var(--bs-accordion-bg);--bs-accordion-btn-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23212529'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");--bs-accordion-btn-icon-width: 1.25rem;--bs-accordion-btn-icon-transform: rotate(-180deg);--bs-accordion-btn-icon-transition: transform 0.2s ease-in-out;--bs-accordion-btn-active-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%230c63e4'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");--bs-accordion-btn-focus-border-color: #86b7fe;--bs-accordion-btn-focus-box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);--bs-accordion-body-padding-x: 1.25rem;--bs-accordion-body-padding-y: 1rem;--bs-accordion-active-color: #0c63e4;--bs-accordion-active-bg: #e7f1ff}.accordion-button{position:relative;display:flex;align-items:center;width:100%;padding:var(--bs-accordion-btn-padding-y) var(--bs-accordion-btn-padding-x);font-size:1rem;color:var(--bs-accordion-btn-color);text-align:left;background-color:var(--bs-accordion-btn-bg);border:0;border-radius:0;overflow-anchor:none;transition:var(--bs-accordion-transition)}@media(prefers-reduced-motion: reduce){.accordion-button{transition:none}}.accordion-button:not(.collapsed){color:var(--bs-accordion-active-color);background-color:var(--bs-accordion-active-bg);box-shadow:inset 0 calc(-1*var(--bs-accordion-border-width)) 0 var(--bs-accordion-border-color)}.accordion-button:not(.collapsed)::after{background-image:var(--bs-accordion-btn-active-icon);transform:var(--bs-accordion-btn-icon-transform)}.accordion-button::after{flex-shrink:0;width:var(--bs-accordion-btn-icon-width);height:var(--bs-accordion-btn-icon-width);margin-left:auto;content:"";background-image:var(--bs-accordion-btn-icon);background-repeat:no-repeat;background-size:var(--bs-accordion-btn-icon-width);transition:var(--bs-accordion-btn-icon-transition)}@media(prefers-reduced-motion: reduce){.accordion-button::after{transition:none}}.accordion-button:hover{z-index:2}.accordion-button:focus{z-index:3;border-color:var(--bs-accordion-btn-focus-border-color);outline:0;box-shadow:var(--bs-accordion-btn-focus-box-shadow)}.accordion-header{margin-bottom:0}.accordion-item{color:var(--bs-accordion-color);background-color:var(--bs-accordion-bg);border:var(--bs-accordion-border-width) solid var(--bs-accordion-border-color)}.accordion-item:first-of-type{border-top-left-radius:var(--bs-accordion-border-radius);border-top-right-radius:var(--bs-accordion-border-radius)}.accordion-item:first-of-type .accordion-button{border-top-left-radius:var(--bs-accordion-inner-border-radius);border-top-right-radius:var(--bs-accordion-inner-border-radius)}.accordion-item:not(:first-of-type){border-top:0}.accordion-item:last-of-type{border-bottom-right-radius:var(--bs-accordion-border-radius);border-bottom-left-radius:var(--bs-accordion-border-radius)}.accordion-item:last-of-type .accordion-button.collapsed{border-bottom-right-radius:var(--bs-accordion-inner-border-radius);border-bottom-left-radius:var(--bs-accordion-inner-border-radius)}.accordion-item:last-of-type .accordion-collapse{border-bottom-right-radius:var(--bs-accordion-border-radius);border-bottom-left-radius:var(--bs-accordion-border-radius)}.accordion-body{padding:var(--bs-accordion-body-padding-y) var(--bs-accordion-body-padding-x)}.accordion-flush .accordion-collapse{border-width:0}.accordion-flush .accordion-item{border-right:0;border-left:0;border-radius:0}.accordion-flush .accordion-item:first-child{border-top:0}.accordion-flush .accordion-item:last-child{border-bottom:0}.accordion-flush .accordion-item .accordion-button,.accordion-flush .accordion-item .accordion-button.collapsed{border-radius:0}.breadcrumb{--bs-breadcrumb-padding-x: 0;--bs-breadcrumb-padding-y: 0;--bs-breadcrumb-margin-bottom: 1rem;--bs-breadcrumb-bg: ;--bs-breadcrumb-border-radius: ;--bs-breadcrumb-divider-color: #6c757d;--bs-breadcrumb-item-padding-x: 0.5rem;--bs-breadcrumb-item-active-color: #6c757d;display:flex;flex-wrap:wrap;padding:var(--bs-breadcrumb-padding-y) var(--bs-breadcrumb-padding-x);margin-bottom:var(--bs-breadcrumb-margin-bottom);font-size:var(--bs-breadcrumb-font-size);list-style:none;background-color:var(--bs-breadcrumb-bg);border-radius:var(--bs-breadcrumb-border-radius)}.breadcrumb-item+.breadcrumb-item{padding-left:var(--bs-breadcrumb-item-padding-x)}.breadcrumb-item+.breadcrumb-item::before{float:left;padding-right:var(--bs-breadcrumb-item-padding-x);color:var(--bs-breadcrumb-divider-color);content:var(--bs-breadcrumb-divider, "/") /* rtl: var(--bs-breadcrumb-divider, "/") */}.breadcrumb-item.active{color:var(--bs-breadcrumb-item-active-color)}.pagination{--bs-pagination-padding-x: 0.75rem;--bs-pagination-padding-y: 0.375rem;--bs-pagination-font-size:1rem;--bs-pagination-color: var(--bs-link-color);--bs-pagination-bg: #fff;--bs-pagination-border-width: 1px;--bs-pagination-border-color: #dee2e6;--bs-pagination-border-radius: 0.4rem;--bs-pagination-hover-color: var(--bs-link-hover-color);--bs-pagination-hover-bg: #e9ecef;--bs-pagination-hover-border-color: #dee2e6;--bs-pagination-focus-color: var(--bs-link-hover-color);--bs-pagination-focus-bg: #e9ecef;--bs-pagination-focus-box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);--bs-pagination-active-color: #fff;--bs-pagination-active-bg: #0d6efd;--bs-pagination-active-border-color: #0d6efd;--bs-pagination-disabled-color: #6c757d;--bs-pagination-disabled-bg: #fff;--bs-pagination-disabled-border-color: #dee2e6;display:flex;padding-left:0;list-style:none}.page-link{position:relative;display:block;padding:var(--bs-pagination-padding-y) var(--bs-pagination-padding-x);font-size:var(--bs-pagination-font-size);color:var(--bs-pagination-color);background-color:var(--bs-pagination-bg);border:var(--bs-pagination-border-width) solid var(--bs-pagination-border-color);transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media(prefers-reduced-motion: reduce){.page-link{transition:none}}.page-link:hover{z-index:2;color:var(--bs-pagination-hover-color);text-decoration:none;background-color:var(--bs-pagination-hover-bg);border-color:var(--bs-pagination-hover-border-color)}.page-link:focus{z-index:3;color:var(--bs-pagination-focus-color);background-color:var(--bs-pagination-focus-bg);outline:0;box-shadow:var(--bs-pagination-focus-box-shadow)}.page-link.active,.active>.page-link{z-index:3;color:var(--bs-pagination-active-color);background-color:var(--bs-pagination-active-bg);border-color:var(--bs-pagination-active-border-color)}.page-link.disabled,.disabled>.page-link{color:var(--bs-pagination-disabled-color);pointer-events:none;background-color:var(--bs-pagination-disabled-bg);border-color:var(--bs-pagination-disabled-border-color)}.page-item:not(:first-child) .page-link{margin-left:-1px}.page-item:first-child .page-link{border-top-left-radius:var(--bs-pagination-border-radius);border-bottom-left-radius:var(--bs-pagination-border-radius)}.page-item:last-child .page-link{border-top-right-radius:var(--bs-pagination-border-radius);border-bottom-right-radius:var(--bs-pagination-border-radius)}.pagination-lg{--bs-pagination-padding-x: 1.5rem;--bs-pagination-padding-y: 0.75rem;--bs-pagination-font-size:1.25rem;--bs-pagination-border-radius: 0.5rem}.pagination-sm{--bs-pagination-padding-x: 0.5rem;--bs-pagination-padding-y: 0.25rem;--bs-pagination-font-size:0.875rem;--bs-pagination-border-radius: 0.25rem}.badge{--bs-badge-padding-x: 0.65em;--bs-badge-padding-y: 0.35em;--bs-badge-font-size:0.75em;--bs-badge-font-weight: 400;--bs-badge-color: #fff;--bs-badge-border-radius: 0.2rem;display:inline-block;padding:var(--bs-badge-padding-y) var(--bs-badge-padding-x);font-size:var(--bs-badge-font-size);font-weight:var(--bs-badge-font-weight);line-height:1;color:var(--bs-badge-color);text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:var(--bs-badge-border-radius)}.badge:empty{display:none}.btn .badge{position:relative;top:-1px}.alert{--bs-alert-bg: transparent;--bs-alert-padding-x: 0.9rem;--bs-alert-padding-y: 0.9rem;--bs-alert-margin-bottom: 1rem;--bs-alert-color: inherit;--bs-alert-border-color: transparent;--bs-alert-border: 1px solid var(--bs-alert-border-color);--bs-alert-border-radius: 0.4rem;position:relative;padding:var(--bs-alert-padding-y) var(--bs-alert-padding-x);margin-bottom:var(--bs-alert-margin-bottom);color:var(--bs-alert-color);background-color:var(--bs-alert-bg);border:var(--bs-alert-border);border-radius:var(--bs-alert-border-radius)}.alert-heading{color:inherit}.alert-link{font-weight:700}.alert-dismissible{padding-right:2.25rem}.alert-dismissible .btn-close{position:absolute;top:0;right:0;z-index:2;padding:1.125rem .9rem}.alert-primary{--bs-alert-color: #084298;--bs-alert-bg: #b6d4fe;--bs-alert-border-color: #9ec5fe}.alert-primary .alert-link{color:#06357a}.alert-secondary{--bs-alert-color: #41464b;--bs-alert-bg: #d3d6d8;--bs-alert-border-color: #c4c8cb}.alert-secondary .alert-link{color:#34383c}.alert-success{--bs-alert-color: #0f5132;--bs-alert-bg: #badbcc;--bs-alert-border-color: #a3cfbb}.alert-success .alert-link{color:#0c4128}.alert-info{--bs-alert-color: #055160;--bs-alert-bg: #b6effb;--bs-alert-border-color: #9eeaf9}.alert-info .alert-link{color:#04414d}.alert-warning{--bs-alert-color: #664d03;--bs-alert-bg: #ffecb5;--bs-alert-border-color: #ffe69c}.alert-warning .alert-link{color:#523e02}.alert-danger{--bs-alert-color: #842029;--bs-alert-bg: #f5c2c7;--bs-alert-border-color: #f1aeb5}.alert-danger .alert-link{color:#6a1a21}.alert-light{--bs-alert-color: #636464;--bs-alert-bg: #fdfdfe;--bs-alert-border-color: #fcfdfd}.alert-light .alert-link{color:#4f5050}.alert-dark{--bs-alert-color: #141619;--bs-alert-bg: #bcbebf;--bs-alert-border-color: #a6a8a9}.alert-dark .alert-link{color:#101214}@keyframes progress-bar-stripes{0%{background-position-x:1rem}}.progress{--bs-progress-height: 1rem;--bs-progress-font-size:0.75rem;--bs-progress-bg: #e9ecef;--bs-progress-border-radius: 0.4rem;--bs-progress-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.075);--bs-progress-bar-color: #fff;--bs-progress-bar-bg: #0d6efd;--bs-progress-bar-transition: width 0.6s ease;display:flex;height:var(--bs-progress-height);overflow:hidden;font-size:var(--bs-progress-font-size);background-color:var(--bs-progress-bg);border-radius:var(--bs-progress-border-radius)}.progress-bar{display:flex;flex-direction:column;justify-content:center;overflow:hidden;color:var(--bs-progress-bar-color);text-align:center;white-space:nowrap;background-color:var(--bs-progress-bar-bg);transition:var(--bs-progress-bar-transition)}@media(prefers-reduced-motion: reduce){.progress-bar{transition:none}}.progress-bar-striped{background-image:linear-gradient(45deg, rgba(255, 255, 255, 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:var(--bs-progress-height) var(--bs-progress-height)}.progress-bar-animated{animation:1s linear infinite progress-bar-stripes}@media(prefers-reduced-motion: reduce){.progress-bar-animated{animation:none}}.list-group{--bs-list-group-color: #212529;--bs-list-group-bg: #fff;--bs-list-group-border-color: rgba(0, 0, 0, 0.125);--bs-list-group-border-width: 1px;--bs-list-group-border-radius: 0.4rem;--bs-list-group-item-padding-x: 0.9rem;--bs-list-group-item-padding-y: 0.45rem;--bs-list-group-action-color: #495057;--bs-list-group-action-hover-color: #495057;--bs-list-group-action-hover-bg: #f8f9fa;--bs-list-group-action-active-color: #212529;--bs-list-group-action-active-bg: #e9ecef;--bs-list-group-disabled-color: #6c757d;--bs-list-group-disabled-bg: #fff;--bs-list-group-active-color: #fff;--bs-list-group-active-bg: #0d6efd;--bs-list-group-active-border-color: #0d6efd;display:flex;flex-direction:column;padding-left:0;margin-bottom:0;border-radius:var(--bs-list-group-border-radius)}.list-group-numbered{list-style-type:none;counter-reset:section}.list-group-numbered>.list-group-item::before{content:counters(section, ".") ". ";counter-increment:section}.list-group-item-action{width:100%;color:var(--bs-list-group-action-color);text-align:inherit}.list-group-item-action:hover,.list-group-item-action:focus{z-index:1;color:var(--bs-list-group-action-hover-color);text-decoration:none;background-color:var(--bs-list-group-action-hover-bg)}.list-group-item-action:active{color:var(--bs-list-group-action-active-color);background-color:var(--bs-list-group-action-active-bg)}.list-group-item{position:relative;display:block;padding:var(--bs-list-group-item-padding-y) var(--bs-list-group-item-padding-x);color:var(--bs-list-group-color);background-color:var(--bs-list-group-bg);border:var(--bs-list-group-border-width) solid var(--bs-list-group-border-color)}.list-group-item:first-child{border-top-left-radius:inherit;border-top-right-radius:inherit}.list-group-item:last-child{border-bottom-right-radius:inherit;border-bottom-left-radius:inherit}.list-group-item.disabled,.list-group-item:disabled{color:var(--bs-list-group-disabled-color);pointer-events:none;background-color:var(--bs-list-group-disabled-bg)}.list-group-item.active{z-index:2;color:var(--bs-list-group-active-color);background-color:var(--bs-list-group-active-bg);border-color:var(--bs-list-group-active-border-color)}.list-group-item+.list-group-item{border-top-width:0}.list-group-item+.list-group-item.active{margin-top:calc(-1*var(--bs-list-group-border-width));border-top-width:var(--bs-list-group-border-width)}.list-group-horizontal{flex-direction:row}.list-group-horizontal>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal>.list-group-item.active{margin-top:0}.list-group-horizontal>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal>.list-group-item+.list-group-item.active{margin-left:calc(-1*var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}@media(min-width: 576px){.list-group-horizontal-sm{flex-direction:row}.list-group-horizontal-sm>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal-sm>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal-sm>.list-group-item.active{margin-top:0}.list-group-horizontal-sm>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal-sm>.list-group-item+.list-group-item.active{margin-left:calc(-1*var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}}@media(min-width: 768px){.list-group-horizontal-md{flex-direction:row}.list-group-horizontal-md>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal-md>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal-md>.list-group-item.active{margin-top:0}.list-group-horizontal-md>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal-md>.list-group-item+.list-group-item.active{margin-left:calc(-1*var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}}@media(min-width: 992px){.list-group-horizontal-lg{flex-direction:row}.list-group-horizontal-lg>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal-lg>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal-lg>.list-group-item.active{margin-top:0}.list-group-horizontal-lg>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal-lg>.list-group-item+.list-group-item.active{margin-left:calc(-1*var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}}@media(min-width: 1200px){.list-group-horizontal-xl{flex-direction:row}.list-group-horizontal-xl>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal-xl>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal-xl>.list-group-item.active{margin-top:0}.list-group-horizontal-xl>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal-xl>.list-group-item+.list-group-item.active{margin-left:calc(-1*var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}}@media(min-width: 1400px){.list-group-horizontal-xxl{flex-direction:row}.list-group-horizontal-xxl>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal-xxl>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal-xxl>.list-group-item.active{margin-top:0}.list-group-horizontal-xxl>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal-xxl>.list-group-item+.list-group-item.active{margin-left:calc(-1*var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}}@media(min-width: 1900px){.list-group-horizontal-xxxl{flex-direction:row}.list-group-horizontal-xxxl>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal-xxxl>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal-xxxl>.list-group-item.active{margin-top:0}.list-group-horizontal-xxxl>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal-xxxl>.list-group-item+.list-group-item.active{margin-left:calc(-1*var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}}.list-group-flush{border-radius:0}.list-group-flush>.list-group-item{border-width:0 0 var(--bs-list-group-border-width)}.list-group-flush>.list-group-item:last-child{border-bottom-width:0}.list-group-item-primary{color:#084298;background-color:#cfe2ff}.list-group-item-primary.list-group-item-action: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:.75rem;height:.75rem;padding:.25em .25em;color:#000;background:rgba(0,0,0,0) url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23000'%3e%3cpath d='M.293.293a1 1 0 0 1 1.414 0L8 6.586 14.293.293a1 1 0 1 1 1.414 1.414L9.414 8l6.293 6.293a1 1 0 0 1-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 0 1-1.414-1.414L6.586 8 .293 1.707a1 1 0 0 1 0-1.414z'/%3e%3c/svg%3e") center/0.75rem auto no-repeat;border:0;border-radius:.4rem;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;user-select:none;opacity:.25}.btn-close-white{filter:invert(1) grayscale(100%) brightness(200%)}.toast{--bs-toast-zindex: 1090;--bs-toast-padding-x: 0.75rem;--bs-toast-padding-y: 0.5rem;--bs-toast-spacing: 1.5rem;--bs-toast-max-width: 550px;--bs-toast-font-size:0.875rem;--bs-toast-color: ;--bs-toast-bg: rgba(255, 255, 255, 0.85);--bs-toast-border-width: 1px;--bs-toast-border-color: var(--bs-border-color-translucent);--bs-toast-border-radius: 0.4rem;--bs-toast-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);--bs-toast-header-color: #6c757d;--bs-toast-header-bg: rgba(255, 255, 255, 0.85);--bs-toast-header-border-color: rgba(0, 0, 0, 0.05);width:var(--bs-toast-max-width);max-width:100%;font-size:var(--bs-toast-font-size);color:var(--bs-toast-color);pointer-events:auto;background-color:var(--bs-toast-bg);background-clip:padding-box;border:var(--bs-toast-border-width) solid var(--bs-toast-border-color);box-shadow:var(--bs-toast-box-shadow);border-radius:var(--bs-toast-border-radius)}.toast.showing{opacity:0}.toast:not(.show){display:none}.toast-container{--bs-toast-zindex: 1090;position:absolute;z-index:var(--bs-toast-zindex);width:max-content;max-width:100%;pointer-events:none}.toast-container>:not(:last-child){margin-bottom:var(--bs-toast-spacing)}.toast-header{display:flex;align-items:center;padding:var(--bs-toast-padding-y) var(--bs-toast-padding-x);color:var(--bs-toast-header-color);background-color:var(--bs-toast-header-bg);background-clip:padding-box;border-bottom:var(--bs-toast-border-width) solid var(--bs-toast-header-border-color);border-top-left-radius:calc(var(--bs-toast-border-radius) - var(--bs-toast-border-width));border-top-right-radius:calc(var(--bs-toast-border-radius) - var(--bs-toast-border-width))}.toast-header .btn-close{margin-right:calc(-0.5*var(--bs-toast-padding-x));margin-left:var(--bs-toast-padding-x)}.toast-body{padding:var(--bs-toast-padding-x);word-wrap:break-word}.modal{--bs-modal-zindex: 1055;--bs-modal-width: 500px;--bs-modal-padding: 0.9rem;--bs-modal-margin: 0.5rem;--bs-modal-color: #212529;--bs-modal-bg: #fff;--bs-modal-border-color: var(--bs-border-color-translucent);--bs-modal-border-width: 1px;--bs-modal-border-radius: 0.5rem;--bs-modal-box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);--bs-modal-inner-border-radius: calc(0.5rem - 1px);--bs-modal-header-padding-x: 0.9rem;--bs-modal-header-padding-y: 0.9rem;--bs-modal-header-padding: 0.9rem 0.9rem;--bs-modal-header-border-color: var(--bs-border-color);--bs-modal-header-border-width: 1px;--bs-modal-title-line-height: 1.5;--bs-modal-footer-gap: 0.5rem;--bs-modal-footer-bg: ;--bs-modal-footer-border-color: var(--bs-border-color);--bs-modal-footer-border-width: 1px;position:fixed;top:0;left:0;z-index:var(--bs-modal-zindex);display:none;width:100%;height:100%;overflow-x:hidden;overflow-y:auto;outline:0}.modal-dialog{position:relative;width:auto;margin:var(--bs-modal-margin);pointer-events:none}.modal.fade .modal-dialog{transition:transform .3s ease-out;transform:translate(0, -50px)}@media(prefers-reduced-motion: reduce){.modal.fade .modal-dialog{transition:none}}.modal.show .modal-dialog{transform:none}.modal.modal-static .modal-dialog{transform:scale(1.02)}.modal-dialog-scrollable{height:calc(100% - var(--bs-modal-margin)*2)}.modal-dialog-scrollable .modal-content{max-height:100%;overflow:hidden}.modal-dialog-scrollable .modal-body{overflow-y:auto}.modal-dialog-centered{display:flex;align-items:center;min-height:calc(100% - var(--bs-modal-margin)*2)}.modal-content{position:relative;display:flex;flex-direction:column;width:100%;color:var(--bs-modal-color);pointer-events:auto;background-color:var(--bs-modal-bg);background-clip:padding-box;border:var(--bs-modal-border-width) solid var(--bs-modal-border-color);border-radius:var(--bs-modal-border-radius);outline:0}.modal-backdrop{--bs-backdrop-zindex: 1050;--bs-backdrop-bg: #000;--bs-backdrop-opacity: 0.5;position:fixed;top:0;left:0;z-index:var(--bs-backdrop-zindex);width:100vw;height:100vh;background-color:var(--bs-backdrop-bg)}.modal-backdrop.fade{opacity:0}.modal-backdrop.show{opacity:var(--bs-backdrop-opacity)}.modal-header{display:flex;flex-shrink:0;align-items:center;justify-content:space-between;padding:var(--bs-modal-header-padding);border-bottom:var(--bs-modal-header-border-width) solid var(--bs-modal-header-border-color);border-top-left-radius:var(--bs-modal-inner-border-radius);border-top-right-radius:var(--bs-modal-inner-border-radius)}.modal-header .btn-close{padding:calc(var(--bs-modal-header-padding-y)*.5) calc(var(--bs-modal-header-padding-x)*.5);margin:calc(-0.5*var(--bs-modal-header-padding-y)) calc(-0.5*var(--bs-modal-header-padding-x)) calc(-0.5*var(--bs-modal-header-padding-y)) auto}.modal-title{margin-bottom:0;line-height:var(--bs-modal-title-line-height)}.modal-body{position:relative;flex:1 1 auto;padding:var(--bs-modal-padding)}.modal-footer{display:flex;flex-shrink:0;flex-wrap:wrap;align-items:center;justify-content:flex-end;padding:calc(var(--bs-modal-padding) - var(--bs-modal-footer-gap)*.5);background-color:var(--bs-modal-footer-bg);border-top:var(--bs-modal-footer-border-width) solid var(--bs-modal-footer-border-color);border-bottom-right-radius:var(--bs-modal-inner-border-radius);border-bottom-left-radius:var(--bs-modal-inner-border-radius)}.modal-footer>*{margin:calc(var(--bs-modal-footer-gap)*.5)}@media(min-width: 576px){.modal{--bs-modal-margin: 1.75rem;--bs-modal-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15)}.modal-dialog{max-width:var(--bs-modal-width);margin-right:auto;margin-left:auto}.modal-sm{--bs-modal-width: 300px}}@media(min-width: 992px){.modal-lg,.modal-xl{--bs-modal-width: 800px}}@media(min-width: 1200px){.modal-xl{--bs-modal-width: 1140px}}.modal-fullscreen{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen .modal-header,.modal-fullscreen .modal-footer{border-radius:0}.modal-fullscreen .modal-body{overflow-y:auto}@media(max-width: 575.98px){.modal-fullscreen-sm-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-sm-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-sm-down .modal-header,.modal-fullscreen-sm-down .modal-footer{border-radius:0}.modal-fullscreen-sm-down .modal-body{overflow-y:auto}}@media(max-width: 767.98px){.modal-fullscreen-md-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-md-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-md-down .modal-header,.modal-fullscreen-md-down .modal-footer{border-radius:0}.modal-fullscreen-md-down .modal-body{overflow-y:auto}}@media(max-width: 991.98px){.modal-fullscreen-lg-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-lg-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-lg-down .modal-header,.modal-fullscreen-lg-down .modal-footer{border-radius:0}.modal-fullscreen-lg-down .modal-body{overflow-y:auto}}@media(max-width: 1199.98px){.modal-fullscreen-xl-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-xl-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-xl-down .modal-header,.modal-fullscreen-xl-down .modal-footer{border-radius:0}.modal-fullscreen-xl-down .modal-body{overflow-y:auto}}@media(max-width: 1399.98px){.modal-fullscreen-xxl-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-xxl-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-xxl-down .modal-header,.modal-fullscreen-xxl-down .modal-footer{border-radius:0}.modal-fullscreen-xxl-down .modal-body{overflow-y:auto}}@media(max-width: 1899.98px){.modal-fullscreen-xxxl-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-xxxl-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-xxxl-down .modal-header,.modal-fullscreen-xxxl-down .modal-footer{border-radius:0}.modal-fullscreen-xxxl-down .modal-body{overflow-y:auto}}.tooltip{--bs-tooltip-zindex: 1080;--bs-tooltip-max-width: 350px;--bs-tooltip-padding-x: 0.8rem;--bs-tooltip-padding-y: 0.4rem;--bs-tooltip-margin: ;--bs-tooltip-font-size:0.875rem;--bs-tooltip-color: #fff;--bs-tooltip-bg: #000;--bs-tooltip-border-radius: 0.4rem;--bs-tooltip-opacity: 0.9;--bs-tooltip-arrow-width: 0.8rem;--bs-tooltip-arrow-height: 0.4rem;z-index:var(--bs-tooltip-zindex);display:block;padding:var(--bs-tooltip-arrow-height);margin:var(--bs-tooltip-margin);font-family:var(--bs-font-sans-serif);font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;white-space:normal;word-spacing:normal;line-break:auto;font-size:var(--bs-tooltip-font-size);word-wrap:break-word;opacity:0}.tooltip.show{opacity:var(--bs-tooltip-opacity)}.tooltip .tooltip-arrow{display:block;width:var(--bs-tooltip-arrow-width);height:var(--bs-tooltip-arrow-height)}.tooltip .tooltip-arrow::before{position:absolute;content:"";border-color:rgba(0,0,0,0);border-style:solid}.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:var(--bs-tooltip-arrow-height) calc(var(--bs-tooltip-arrow-width)*.5) 0;border-top-color:var(--bs-tooltip-bg)}.bs-tooltip-end .tooltip-arrow,.bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow{left:0;width:var(--bs-tooltip-arrow-height);height:var(--bs-tooltip-arrow-width)}.bs-tooltip-end .tooltip-arrow::before,.bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow::before{right:-1px;border-width:calc(var(--bs-tooltip-arrow-width)*.5) var(--bs-tooltip-arrow-height) calc(var(--bs-tooltip-arrow-width)*.5) 0;border-right-color:var(--bs-tooltip-bg)}.bs-tooltip-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 calc(var(--bs-tooltip-arrow-width)*.5) var(--bs-tooltip-arrow-height);border-bottom-color:var(--bs-tooltip-bg)}.bs-tooltip-start .tooltip-arrow,.bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow{right:0;width:var(--bs-tooltip-arrow-height);height:var(--bs-tooltip-arrow-width)}.bs-tooltip-start .tooltip-arrow::before,.bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow::before{left:-1px;border-width:calc(var(--bs-tooltip-arrow-width)*.5) 0 calc(var(--bs-tooltip-arrow-width)*.5) var(--bs-tooltip-arrow-height);border-left-color:var(--bs-tooltip-bg)}.tooltip-inner{max-width:var(--bs-tooltip-max-width);padding:var(--bs-tooltip-padding-y) var(--bs-tooltip-padding-x);color:var(--bs-tooltip-color);text-align:center;background-color:var(--bs-tooltip-bg);border-radius:var(--bs-tooltip-border-radius)}.popover{--bs-popover-zindex: 1070;--bs-popover-max-width: 276px;--bs-popover-font-size:0.875rem;--bs-popover-bg: #fff;--bs-popover-border-width: 1px;--bs-popover-border-color: var(--bs-border-color-translucent);--bs-popover-border-radius: 0.5rem;--bs-popover-inner-border-radius: calc(0.5rem - 1px);--bs-popover-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);--bs-popover-header-padding-x: 0.9rem;--bs-popover-header-padding-y: 0.5rem;--bs-popover-header-font-size:1rem;--bs-popover-header-color: ;--bs-popover-header-bg: #f0f0f0;--bs-popover-body-padding-x: 0.9rem;--bs-popover-body-padding-y: 0.9rem;--bs-popover-body-color: #212529;--bs-popover-arrow-width: 1rem;--bs-popover-arrow-height: 0.5rem;--bs-popover-arrow-border: var(--bs-popover-border-color);z-index:var(--bs-popover-zindex);display:block;max-width:var(--bs-popover-max-width);font-family:var(--bs-font-sans-serif);font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;white-space:normal;word-spacing:normal;line-break:auto;font-size:var(--bs-popover-font-size);word-wrap:break-word;background-color:var(--bs-popover-bg);background-clip:padding-box;border:var(--bs-popover-border-width) solid var(--bs-popover-border-color);border-radius:var(--bs-popover-border-radius)}.popover .popover-arrow{display:block;width:var(--bs-popover-arrow-width);height:var(--bs-popover-arrow-height)}.popover .popover-arrow::before,.popover .popover-arrow::after{position:absolute;display:block;content:"";border-color:rgba(0,0,0,0);border-style:solid;border-width:0}.bs-popover-top>.popover-arrow,.bs-popover-auto[data-popper-placement^=top]>.popover-arrow{bottom:calc(-1*(var(--bs-popover-arrow-height)) - var(--bs-popover-border-width))}.bs-popover-top>.popover-arrow::before,.bs-popover-auto[data-popper-placement^=top]>.popover-arrow::before,.bs-popover-top>.popover-arrow::after,.bs-popover-auto[data-popper-placement^=top]>.popover-arrow::after{border-width:var(--bs-popover-arrow-height) calc(var(--bs-popover-arrow-width)*.5) 0}.bs-popover-top>.popover-arrow::before,.bs-popover-auto[data-popper-placement^=top]>.popover-arrow::before{bottom:0;border-top-color:var(--bs-popover-arrow-border)}.bs-popover-top>.popover-arrow::after,.bs-popover-auto[data-popper-placement^=top]>.popover-arrow::after{bottom:var(--bs-popover-border-width);border-top-color:var(--bs-popover-bg)}.bs-popover-end>.popover-arrow,.bs-popover-auto[data-popper-placement^=right]>.popover-arrow{left:calc(-1*(var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));width:var(--bs-popover-arrow-height);height:var(--bs-popover-arrow-width)}.bs-popover-end>.popover-arrow::before,.bs-popover-auto[data-popper-placement^=right]>.popover-arrow::before,.bs-popover-end>.popover-arrow::after,.bs-popover-auto[data-popper-placement^=right]>.popover-arrow::after{border-width:calc(var(--bs-popover-arrow-width)*.5) var(--bs-popover-arrow-height) calc(var(--bs-popover-arrow-width)*.5) 0}.bs-popover-end>.popover-arrow::before,.bs-popover-auto[data-popper-placement^=right]>.popover-arrow::before{left:0;border-right-color:var(--bs-popover-arrow-border)}.bs-popover-end>.popover-arrow::after,.bs-popover-auto[data-popper-placement^=right]>.popover-arrow::after{left:var(--bs-popover-border-width);border-right-color:var(--bs-popover-bg)}.bs-popover-bottom>.popover-arrow,.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow{top:calc(-1*(var(--bs-popover-arrow-height)) - var(--bs-popover-border-width))}.bs-popover-bottom>.popover-arrow::before,.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow::before,.bs-popover-bottom>.popover-arrow::after,.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow::after{border-width:0 calc(var(--bs-popover-arrow-width)*.5) var(--bs-popover-arrow-height)}.bs-popover-bottom>.popover-arrow::before,.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow::before{top:0;border-bottom-color:var(--bs-popover-arrow-border)}.bs-popover-bottom>.popover-arrow::after,.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow::after{top:var(--bs-popover-border-width);border-bottom-color:var(--bs-popover-bg)}.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:var(--bs-popover-arrow-width);margin-left:calc(-0.5*var(--bs-popover-arrow-width));content:"";border-bottom:var(--bs-popover-border-width) solid var(--bs-popover-header-bg)}.bs-popover-start>.popover-arrow,.bs-popover-auto[data-popper-placement^=left]>.popover-arrow{right:calc(-1*(var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));width:var(--bs-popover-arrow-height);height:var(--bs-popover-arrow-width)}.bs-popover-start>.popover-arrow::before,.bs-popover-auto[data-popper-placement^=left]>.popover-arrow::before,.bs-popover-start>.popover-arrow::after,.bs-popover-auto[data-popper-placement^=left]>.popover-arrow::after{border-width:calc(var(--bs-popover-arrow-width)*.5) 0 calc(var(--bs-popover-arrow-width)*.5) var(--bs-popover-arrow-height)}.bs-popover-start>.popover-arrow::before,.bs-popover-auto[data-popper-placement^=left]>.popover-arrow::before{right:0;border-left-color:var(--bs-popover-arrow-border)}.bs-popover-start>.popover-arrow::after,.bs-popover-auto[data-popper-placement^=left]>.popover-arrow::after{right:var(--bs-popover-border-width);border-left-color:var(--bs-popover-bg)}.popover-header{padding:var(--bs-popover-header-padding-y) var(--bs-popover-header-padding-x);margin-bottom:0;font-size:var(--bs-popover-header-font-size);color:var(--bs-popover-header-color);background-color:var(--bs-popover-header-bg);border-bottom:var(--bs-popover-border-width) solid var(--bs-popover-border-color);border-top-left-radius:var(--bs-popover-inner-border-radius);border-top-right-radius:var(--bs-popover-inner-border-radius)}.popover-header:empty{display:none}.popover-body{padding:var(--bs-popover-body-padding-y) var(--bs-popover-body-padding-x);color:var(--bs-popover-body-color)}.carousel{position:relative}.carousel.pointer-event{touch-action:pan-y}.carousel-inner{position:relative;width:100%;overflow:hidden}.carousel-inner::after{display:block;clear:both;content:""}.carousel-item{position:relative;display:none;float:left;width:100%;margin-right:-100%;backface-visibility:hidden;transition:transform .6s ease-in-out}@media(prefers-reduced-motion: reduce){.carousel-item{transition:none}}.carousel-item.active,.carousel-item-next,.carousel-item-prev{display:block}.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%)}.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 .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:.5;transition:opacity .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:.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%}.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 rgba(0,0,0,0);border-bottom:10px solid rgba(0,0,0,0);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-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}.spinner-grow,.spinner-border{display:inline-block;width:var(--bs-spinner-width);height:var(--bs-spinner-height);vertical-align:var(--bs-spinner-vertical-align);border-radius:50%;animation:var(--bs-spinner-animation-speed) linear infinite var(--bs-spinner-animation-name)}@keyframes spinner-border{to{transform:rotate(360deg) /* rtl:ignore */}}.spinner-border{--bs-spinner-width: 2rem;--bs-spinner-height: 2rem;--bs-spinner-vertical-align: -0.125em;--bs-spinner-border-width: 0.25em;--bs-spinner-animation-speed: 0.75s;--bs-spinner-animation-name: spinner-border;border:var(--bs-spinner-border-width) solid currentcolor;border-right-color:rgba(0,0,0,0)}.spinner-border-sm{--bs-spinner-width: 1rem;--bs-spinner-height: 1rem;--bs-spinner-border-width: 0.2em}@keyframes spinner-grow{0%{transform:scale(0)}50%{opacity:1;transform:none}}.spinner-grow{--bs-spinner-width: 2rem;--bs-spinner-height: 2rem;--bs-spinner-vertical-align: -0.125em;--bs-spinner-animation-speed: 0.75s;--bs-spinner-animation-name: spinner-grow;background-color:currentcolor;opacity:0}.spinner-grow-sm{--bs-spinner-width: 1rem;--bs-spinner-height: 1rem}@media(prefers-reduced-motion: reduce){.spinner-border,.spinner-grow{--bs-spinner-animation-speed: 1.5s}}.offcanvas,.offcanvas-xxxl,.offcanvas-xxl,.offcanvas-xl,.offcanvas-lg,.offcanvas-md,.offcanvas-sm{--bs-offcanvas-zindex: 1045;--bs-offcanvas-width: 400px;--bs-offcanvas-height: 30vh;--bs-offcanvas-padding-x: 0.9rem;--bs-offcanvas-padding-y: 0.9rem;--bs-offcanvas-color: #212529;--bs-offcanvas-bg: #fff;--bs-offcanvas-border-width: 1px;--bs-offcanvas-border-color: var(--bs-border-color-translucent);--bs-offcanvas-box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075)}@media(max-width: 575.98px){.offcanvas-sm{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:transform .3s ease-in-out}}@media(max-width: 575.98px)and (prefers-reduced-motion: reduce){.offcanvas-sm{transition:none}}@media(max-width: 575.98px){.offcanvas-sm.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(-100%)}}@media(max-width: 575.98px){.offcanvas-sm.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(100%)}}@media(max-width: 575.98px){.offcanvas-sm.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}}@media(max-width: 575.98px){.offcanvas-sm.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}}@media(max-width: 575.98px){.offcanvas-sm.showing,.offcanvas-sm.show:not(.hiding){transform:none}}@media(max-width: 575.98px){.offcanvas-sm.showing,.offcanvas-sm.hiding,.offcanvas-sm.show{visibility:visible}}@media(min-width: 576px){.offcanvas-sm{--bs-offcanvas-height: auto;--bs-offcanvas-border-width: 0;background-color:rgba(0,0,0,0) !important}.offcanvas-sm .offcanvas-header{display:none}.offcanvas-sm .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible;background-color:rgba(0,0,0,0) !important}}@media(max-width: 767.98px){.offcanvas-md{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:transform .3s ease-in-out}}@media(max-width: 767.98px)and (prefers-reduced-motion: reduce){.offcanvas-md{transition:none}}@media(max-width: 767.98px){.offcanvas-md.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(-100%)}}@media(max-width: 767.98px){.offcanvas-md.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(100%)}}@media(max-width: 767.98px){.offcanvas-md.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}}@media(max-width: 767.98px){.offcanvas-md.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}}@media(max-width: 767.98px){.offcanvas-md.showing,.offcanvas-md.show:not(.hiding){transform:none}}@media(max-width: 767.98px){.offcanvas-md.showing,.offcanvas-md.hiding,.offcanvas-md.show{visibility:visible}}@media(min-width: 768px){.offcanvas-md{--bs-offcanvas-height: auto;--bs-offcanvas-border-width: 0;background-color:rgba(0,0,0,0) !important}.offcanvas-md .offcanvas-header{display:none}.offcanvas-md .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible;background-color:rgba(0,0,0,0) !important}}@media(max-width: 991.98px){.offcanvas-lg{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:transform .3s ease-in-out}}@media(max-width: 991.98px)and (prefers-reduced-motion: reduce){.offcanvas-lg{transition:none}}@media(max-width: 991.98px){.offcanvas-lg.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(-100%)}}@media(max-width: 991.98px){.offcanvas-lg.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(100%)}}@media(max-width: 991.98px){.offcanvas-lg.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}}@media(max-width: 991.98px){.offcanvas-lg.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}}@media(max-width: 991.98px){.offcanvas-lg.showing,.offcanvas-lg.show:not(.hiding){transform:none}}@media(max-width: 991.98px){.offcanvas-lg.showing,.offcanvas-lg.hiding,.offcanvas-lg.show{visibility:visible}}@media(min-width: 992px){.offcanvas-lg{--bs-offcanvas-height: auto;--bs-offcanvas-border-width: 0;background-color:rgba(0,0,0,0) !important}.offcanvas-lg .offcanvas-header{display:none}.offcanvas-lg .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible;background-color:rgba(0,0,0,0) !important}}@media(max-width: 1199.98px){.offcanvas-xl{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:transform .3s ease-in-out}}@media(max-width: 1199.98px)and (prefers-reduced-motion: reduce){.offcanvas-xl{transition:none}}@media(max-width: 1199.98px){.offcanvas-xl.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(-100%)}}@media(max-width: 1199.98px){.offcanvas-xl.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(100%)}}@media(max-width: 1199.98px){.offcanvas-xl.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}}@media(max-width: 1199.98px){.offcanvas-xl.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}}@media(max-width: 1199.98px){.offcanvas-xl.showing,.offcanvas-xl.show:not(.hiding){transform:none}}@media(max-width: 1199.98px){.offcanvas-xl.showing,.offcanvas-xl.hiding,.offcanvas-xl.show{visibility:visible}}@media(min-width: 1200px){.offcanvas-xl{--bs-offcanvas-height: auto;--bs-offcanvas-border-width: 0;background-color:rgba(0,0,0,0) !important}.offcanvas-xl .offcanvas-header{display:none}.offcanvas-xl .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible;background-color:rgba(0,0,0,0) !important}}@media(max-width: 1399.98px){.offcanvas-xxl{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:transform .3s ease-in-out}}@media(max-width: 1399.98px)and (prefers-reduced-motion: reduce){.offcanvas-xxl{transition:none}}@media(max-width: 1399.98px){.offcanvas-xxl.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(-100%)}}@media(max-width: 1399.98px){.offcanvas-xxl.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(100%)}}@media(max-width: 1399.98px){.offcanvas-xxl.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}}@media(max-width: 1399.98px){.offcanvas-xxl.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}}@media(max-width: 1399.98px){.offcanvas-xxl.showing,.offcanvas-xxl.show:not(.hiding){transform:none}}@media(max-width: 1399.98px){.offcanvas-xxl.showing,.offcanvas-xxl.hiding,.offcanvas-xxl.show{visibility:visible}}@media(min-width: 1400px){.offcanvas-xxl{--bs-offcanvas-height: auto;--bs-offcanvas-border-width: 0;background-color:rgba(0,0,0,0) !important}.offcanvas-xxl .offcanvas-header{display:none}.offcanvas-xxl .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible;background-color:rgba(0,0,0,0) !important}}@media(max-width: 1899.98px){.offcanvas-xxxl{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:transform .3s ease-in-out}}@media(max-width: 1899.98px)and (prefers-reduced-motion: reduce){.offcanvas-xxxl{transition:none}}@media(max-width: 1899.98px){.offcanvas-xxxl.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(-100%)}}@media(max-width: 1899.98px){.offcanvas-xxxl.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(100%)}}@media(max-width: 1899.98px){.offcanvas-xxxl.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}}@media(max-width: 1899.98px){.offcanvas-xxxl.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}}@media(max-width: 1899.98px){.offcanvas-xxxl.showing,.offcanvas-xxxl.show:not(.hiding){transform:none}}@media(max-width: 1899.98px){.offcanvas-xxxl.showing,.offcanvas-xxxl.hiding,.offcanvas-xxxl.show{visibility:visible}}@media(min-width: 1900px){.offcanvas-xxxl{--bs-offcanvas-height: auto;--bs-offcanvas-border-width: 0;background-color:rgba(0,0,0,0) !important}.offcanvas-xxxl .offcanvas-header{display:none}.offcanvas-xxxl .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible;background-color:rgba(0,0,0,0) !important}}.offcanvas{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:transform .3s ease-in-out}@media(prefers-reduced-motion: reduce){.offcanvas{transition:none}}.offcanvas.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(-100%)}.offcanvas.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(100%)}.offcanvas.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}.offcanvas.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}.offcanvas.showing,.offcanvas.show:not(.hiding){transform:none}.offcanvas.showing,.offcanvas.hiding,.offcanvas.show{visibility:visible}.offcanvas-backdrop{position:fixed;top:0;left:0;z-index:1040;width:100vw;height:100vh;background-color:#000}.offcanvas-backdrop.fade{opacity:0}.offcanvas-backdrop.show{opacity:.5}.offcanvas-header{display:flex;align-items:center;justify-content:space-between;padding:var(--bs-offcanvas-padding-y) var(--bs-offcanvas-padding-x)}.offcanvas-header .btn-close{padding:calc(var(--bs-offcanvas-padding-y)*.5) calc(var(--bs-offcanvas-padding-x)*.5);margin-top:calc(-0.5*var(--bs-offcanvas-padding-y));margin-right:calc(-0.5*var(--bs-offcanvas-padding-x));margin-bottom:calc(-0.5*var(--bs-offcanvas-padding-y))}.offcanvas-title{margin-bottom:0;line-height:1.5}.offcanvas-body{flex-grow:1;padding:var(--bs-offcanvas-padding-y) var(--bs-offcanvas-padding-x);overflow-y:auto}.placeholder{display:inline-block;min-height:1em;vertical-align:middle;cursor:wait;background-color:currentcolor;opacity:.5}.placeholder.btn::before{display:inline-block;content:""}.placeholder-xs{min-height:.6em}.placeholder-sm{min-height:.8em}.placeholder-lg{min-height:1.2em}.placeholder-glow .placeholder{animation:placeholder-glow 2s ease-in-out infinite}@keyframes placeholder-glow{50%{opacity:.2}}.placeholder-wave{mask-image:linear-gradient(130deg, #000 55%, rgba(0, 0, 0, 0.8) 75%, #000 95%);mask-size:200% 100%;animation:placeholder-wave 2s linear infinite}@keyframes placeholder-wave{100%{mask-position:-200% 0%}}.clearfix::after{display:block;clear:both;content:""}.text-bg-primary{color:#fff !important;background-color:RGBA(13, 110, 253, var(--bs-bg-opacity, 1)) !important}.text-bg-secondary{color:#fff !important;background-color:RGBA(108, 117, 125, var(--bs-bg-opacity, 1)) !important}.text-bg-success{color:#fff !important;background-color:RGBA(25, 135, 84, var(--bs-bg-opacity, 1)) !important}.text-bg-info{color:#000 !important;background-color:RGBA(13, 202, 240, var(--bs-bg-opacity, 1)) !important}.text-bg-warning{color:#000 !important;background-color:RGBA(255, 193, 7, var(--bs-bg-opacity, 1)) !important}.text-bg-danger{color:#fff !important;background-color:RGBA(220, 53, 69, var(--bs-bg-opacity, 1)) !important}.text-bg-light{color:#000 !important;background-color:RGBA(248, 249, 250, var(--bs-bg-opacity, 1)) !important}.text-bg-dark{color:#fff !important;background-color:RGBA(33, 37, 41, var(--bs-bg-opacity, 1)) !important}.link-primary{color:#0d6efd !important}.link-primary:hover,.link-primary:focus{color:#0a58ca !important}.link-secondary{color:#6c757d !important}.link-secondary:hover,.link-secondary:focus{color:#565e64 !important}.link-success{color:#198754 !important}.link-success:hover,.link-success:focus{color:#146c43 !important}.link-info{color:#0dcaf0 !important}.link-info:hover,.link-info:focus{color:#3dd5f3 !important}.link-warning{color:#ffc107 !important}.link-warning:hover,.link-warning:focus{color:#ffcd39 !important}.link-danger{color:#dc3545 !important}.link-danger:hover,.link-danger:focus{color:#b02a37 !important}.link-light{color:#f8f9fa !important}.link-light:hover,.link-light:focus{color:#f9fafb !important}.link-dark{color:#212529 !important}.link-dark:hover,.link-dark:focus{color:#1a1e21 !important}.ratio{position:relative;width:100%}.ratio::before{display:block;padding-top:var(--bs-aspect-ratio);content:""}.ratio>*{position:absolute;top:0;left:0;width:100%;height:100%}.ratio-1x1{--bs-aspect-ratio: 100%}.ratio-4x3{--bs-aspect-ratio: 75%}.ratio-16x9{--bs-aspect-ratio: 56.25%}.ratio-21x9{--bs-aspect-ratio: 42.8571428571%}.fixed-top{position:fixed;top:0;right:0;left:0;z-index:1030}.fixed-bottom{position:fixed;right:0;bottom:0;left:0;z-index:1030}.sticky-top{position:sticky;top:0;z-index:1020}.sticky-bottom{position:sticky;bottom:0;z-index:1020}@media(min-width: 576px){.sticky-sm-top{position:sticky;top:0;z-index:1020}.sticky-sm-bottom{position:sticky;bottom:0;z-index:1020}}@media(min-width: 768px){.sticky-md-top{position:sticky;top:0;z-index:1020}.sticky-md-bottom{position:sticky;bottom:0;z-index:1020}}@media(min-width: 992px){.sticky-lg-top{position:sticky;top:0;z-index:1020}.sticky-lg-bottom{position:sticky;bottom:0;z-index:1020}}@media(min-width: 1200px){.sticky-xl-top{position:sticky;top:0;z-index:1020}.sticky-xl-bottom{position:sticky;bottom:0;z-index:1020}}@media(min-width: 1400px){.sticky-xxl-top{position:sticky;top:0;z-index:1020}.sticky-xxl-bottom{position:sticky;bottom:0;z-index:1020}}@media(min-width: 1900px){.sticky-xxxl-top{position:sticky;top:0;z-index:1020}.sticky-xxxl-bottom{position:sticky;bottom:0;z-index:1020}}.hstack{display:flex;flex-direction:row;align-items:center;align-self:stretch}.vstack{display:flex;flex:1 1 auto;flex-direction:column;align-self:stretch}.visually-hidden,.visually-hidden-focusable:not(:focus):not(:focus-within){position:absolute !important;width:1px !important;height:1px !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;white-space:nowrap !important;border:0 !important}.stretched-link::after{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;content:""}.text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vr{display:inline-block;align-self:stretch;width:1px;min-height:1em;background-color:currentcolor;opacity:.25}.align-baseline{vertical-align:baseline !important}.align-top{vertical-align:top !important}.align-middle{vertical-align:middle !important}.align-bottom{vertical-align:bottom !important}.align-text-bottom{vertical-align:text-bottom !important}.align-text-top{vertical-align:text-top !important}.float-start{float:left !important}.float-end{float:right !important}.float-none{float:none !important}.opacity-0{opacity:0 !important}.opacity-25{opacity:.25 !important}.opacity-50{opacity:.5 !important}.opacity-75{opacity:.75 !important}.opacity-100{opacity:1 !important}.overflow-auto{overflow:auto !important}.overflow-hidden{overflow:hidden !important}.overflow-visible{overflow:visible !important}.overflow-scroll{overflow:scroll !important}.d-inline{display:inline !important}.d-inline-block{display:inline-block !important}.d-block{display:block !important}.d-grid{display:grid !important}.d-table{display:table !important}.d-table-row{display:table-row !important}.d-table-cell{display:table-cell !important}.d-flex{display:flex !important}.d-inline-flex{display:inline-flex !important}.d-none{display:none !important}.shadow{box-shadow:0 .5rem 1rem rgba(0,0,0,.15) !important}.shadow-sm{box-shadow:0 .125rem .25rem rgba(0,0,0,.075) !important}.shadow-lg{box-shadow:0 1rem 3rem rgba(0,0,0,.175) !important}.shadow-none{box-shadow:none !important}.position-static{position:static !important}.position-relative{position:relative !important}.position-absolute{position:absolute !important}.position-fixed{position:fixed !important}.position-sticky{position:sticky !important}.top-0{top:0 !important}.top-50{top:50% !important}.top-100{top:100% !important}.bottom-0{bottom:0 !important}.bottom-50{bottom:50% !important}.bottom-100{bottom:100% !important}.start-0{left:0 !important}.start-50{left:50% !important}.start-100{left:100% !important}.end-0{right:0 !important}.end-50{right:50% !important}.end-100{right:100% !important}.translate-middle{transform:translate(-50%, -50%) !important}.translate-middle-x{transform:translateX(-50%) !important}.translate-middle-y{transform:translateY(-50%) !important}.border{border:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important}.border-0{border:0 !important}.border-top{border-top:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important}.border-top-0{border-top:0 !important}.border-end{border-right:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important}.border-end-0{border-right:0 !important}.border-bottom{border-bottom:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important}.border-bottom-0{border-bottom:0 !important}.border-start{border-left:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important}.border-start-0{border-left:0 !important}.border-primary{--bs-border-opacity: 1;border-color:rgba(var(--bs-primary-rgb), var(--bs-border-opacity)) !important}.border-secondary{--bs-border-opacity: 1;border-color:rgba(var(--bs-secondary-rgb), var(--bs-border-opacity)) !important}.border-success{--bs-border-opacity: 1;border-color:rgba(var(--bs-success-rgb), var(--bs-border-opacity)) !important}.border-info{--bs-border-opacity: 1;border-color:rgba(var(--bs-info-rgb), var(--bs-border-opacity)) !important}.border-warning{--bs-border-opacity: 1;border-color:rgba(var(--bs-warning-rgb), var(--bs-border-opacity)) !important}.border-danger{--bs-border-opacity: 1;border-color:rgba(var(--bs-danger-rgb), var(--bs-border-opacity)) !important}.border-light{--bs-border-opacity: 1;border-color:rgba(var(--bs-light-rgb), var(--bs-border-opacity)) !important}.border-dark{--bs-border-opacity: 1;border-color:rgba(var(--bs-dark-rgb), var(--bs-border-opacity)) !important}.border-white{--bs-border-opacity: 1;border-color:rgba(var(--bs-white-rgb), var(--bs-border-opacity)) !important}.border-1{--bs-border-width: 1px}.border-2{--bs-border-width: 2px}.border-3{--bs-border-width: 3px}.border-4{--bs-border-width: 4px}.border-5{--bs-border-width: 5px}.border-opacity-10{--bs-border-opacity: 0.1}.border-opacity-25{--bs-border-opacity: 0.25}.border-opacity-50{--bs-border-opacity: 0.5}.border-opacity-75{--bs-border-opacity: 0.75}.border-opacity-100{--bs-border-opacity: 1}.w-25{width:25% !important}.w-50{width:50% !important}.w-75{width:75% !important}.w-100{width:100% !important}.w-auto{width:auto !important}.mw-100{max-width:100% !important}.vw-100{width:100vw !important}.min-vw-100{min-width:100vw !important}.h-25{height:25% !important}.h-50{height:50% !important}.h-75{height:75% !important}.h-100{height:100% !important}.h-auto{height:auto !important}.mh-100{max-height:100% !important}.vh-100{height:100vh !important}.min-vh-100{min-height:100vh !important}.flex-fill{flex:1 1 auto !important}.flex-row{flex-direction:row !important}.flex-column{flex-direction:column !important}.flex-row-reverse{flex-direction:row-reverse !important}.flex-column-reverse{flex-direction:column-reverse !important}.flex-grow-0{flex-grow:0 !important}.flex-grow-1{flex-grow:1 !important}.flex-shrink-0{flex-shrink:0 !important}.flex-shrink-1{flex-shrink:1 !important}.flex-wrap{flex-wrap:wrap !important}.flex-nowrap{flex-wrap:nowrap !important}.flex-wrap-reverse{flex-wrap:wrap-reverse !important}.justify-content-start{justify-content:flex-start !important}.justify-content-end{justify-content:flex-end !important}.justify-content-center{justify-content:center !important}.justify-content-between{justify-content:space-between !important}.justify-content-around{justify-content:space-around !important}.justify-content-evenly{justify-content:space-evenly !important}.align-items-start{align-items:flex-start !important}.align-items-end{align-items:flex-end !important}.align-items-center{align-items:center !important}.align-items-baseline{align-items:baseline !important}.align-items-stretch{align-items:stretch !important}.align-content-start{align-content:flex-start !important}.align-content-end{align-content:flex-end !important}.align-content-center{align-content:center !important}.align-content-between{align-content:space-between !important}.align-content-around{align-content:space-around !important}.align-content-stretch{align-content:stretch !important}.align-self-auto{align-self:auto !important}.align-self-start{align-self:flex-start !important}.align-self-end{align-self:flex-end !important}.align-self-center{align-self:center !important}.align-self-baseline{align-self:baseline !important}.align-self-stretch{align-self:stretch !important}.order-first{order:-1 !important}.order-0{order:0 !important}.order-1{order:1 !important}.order-2{order:2 !important}.order-3{order:3 !important}.order-4{order:4 !important}.order-5{order:5 !important}.order-last{order:6 !important}.m-0{margin:0 !important}.m-1{margin:.225rem !important}.m-2{margin:.45rem !important}.m-3{margin:.9rem !important}.m-4{margin:1.35rem !important}.m-5{margin:1.8rem !important}.m-6{margin:2.25rem !important}.m-7{margin:2.7rem !important}.m-8{margin:3.15rem !important}.m-9{margin:3.6rem !important}.m-tiny{margin:.135rem !important}.m-auto{margin:auto !important}.mx-0{margin-right:0 !important;margin-left:0 !important}.mx-1{margin-right:.225rem !important;margin-left:.225rem !important}.mx-2{margin-right:.45rem !important;margin-left:.45rem !important}.mx-3{margin-right:.9rem !important;margin-left:.9rem !important}.mx-4{margin-right:1.35rem !important;margin-left:1.35rem !important}.mx-5{margin-right:1.8rem !important;margin-left:1.8rem !important}.mx-6{margin-right:2.25rem !important;margin-left:2.25rem !important}.mx-7{margin-right:2.7rem !important;margin-left:2.7rem !important}.mx-8{margin-right:3.15rem !important;margin-left:3.15rem !important}.mx-9{margin-right:3.6rem !important;margin-left:3.6rem !important}.mx-tiny{margin-right:.135rem !important;margin-left:.135rem !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:.225rem !important;margin-bottom:.225rem !important}.my-2{margin-top:.45rem !important;margin-bottom:.45rem !important}.my-3{margin-top:.9rem !important;margin-bottom:.9rem !important}.my-4{margin-top:1.35rem !important;margin-bottom:1.35rem !important}.my-5{margin-top:1.8rem !important;margin-bottom:1.8rem !important}.my-6{margin-top:2.25rem !important;margin-bottom:2.25rem !important}.my-7{margin-top:2.7rem !important;margin-bottom:2.7rem !important}.my-8{margin-top:3.15rem !important;margin-bottom:3.15rem !important}.my-9{margin-top:3.6rem !important;margin-bottom:3.6rem !important}.my-tiny{margin-top:.135rem !important;margin-bottom:.135rem !important}.my-auto{margin-top:auto !important;margin-bottom:auto !important}.mt-0{margin-top:0 !important}.mt-1{margin-top:.225rem !important}.mt-2{margin-top:.45rem !important}.mt-3{margin-top:.9rem !important}.mt-4{margin-top:1.35rem !important}.mt-5{margin-top:1.8rem !important}.mt-6{margin-top:2.25rem !important}.mt-7{margin-top:2.7rem !important}.mt-8{margin-top:3.15rem !important}.mt-9{margin-top:3.6rem !important}.mt-tiny{margin-top:.135rem !important}.mt-auto{margin-top:auto !important}.me-0{margin-right:0 !important}.me-1{margin-right:.225rem !important}.me-2{margin-right:.45rem !important}.me-3{margin-right:.9rem !important}.me-4{margin-right:1.35rem !important}.me-5{margin-right:1.8rem !important}.me-6{margin-right:2.25rem !important}.me-7{margin-right:2.7rem !important}.me-8{margin-right:3.15rem !important}.me-9{margin-right:3.6rem !important}.me-tiny{margin-right:.135rem !important}.me-auto{margin-right:auto !important}.mb-0{margin-bottom:0 !important}.mb-1{margin-bottom:.225rem !important}.mb-2{margin-bottom:.45rem !important}.mb-3{margin-bottom:.9rem !important}.mb-4{margin-bottom:1.35rem !important}.mb-5{margin-bottom:1.8rem !important}.mb-6{margin-bottom:2.25rem !important}.mb-7{margin-bottom:2.7rem !important}.mb-8{margin-bottom:3.15rem !important}.mb-9{margin-bottom:3.6rem !important}.mb-tiny{margin-bottom:.135rem !important}.mb-auto{margin-bottom:auto !important}.ms-0{margin-left:0 !important}.ms-1{margin-left:.225rem !important}.ms-2{margin-left:.45rem !important}.ms-3{margin-left:.9rem !important}.ms-4{margin-left:1.35rem !important}.ms-5{margin-left:1.8rem !important}.ms-6{margin-left:2.25rem !important}.ms-7{margin-left:2.7rem !important}.ms-8{margin-left:3.15rem !important}.ms-9{margin-left:3.6rem !important}.ms-tiny{margin-left:.135rem !important}.ms-auto{margin-left:auto !important}.m-n1{margin:-0.225rem !important}.m-n2{margin:-0.45rem !important}.m-n3{margin:-0.9rem !important}.m-n4{margin:-1.35rem !important}.m-n5{margin:-1.8rem !important}.m-n6{margin:-2.25rem !important}.m-n7{margin:-2.7rem !important}.m-n8{margin:-3.15rem !important}.m-n9{margin:-3.6rem !important}.m-ntiny{margin:-0.135rem !important}.mx-n1{margin-right:-0.225rem !important;margin-left:-0.225rem !important}.mx-n2{margin-right:-0.45rem !important;margin-left:-0.45rem !important}.mx-n3{margin-right:-0.9rem !important;margin-left:-0.9rem !important}.mx-n4{margin-right:-1.35rem !important;margin-left:-1.35rem !important}.mx-n5{margin-right:-1.8rem !important;margin-left:-1.8rem !important}.mx-n6{margin-right:-2.25rem !important;margin-left:-2.25rem !important}.mx-n7{margin-right:-2.7rem !important;margin-left:-2.7rem !important}.mx-n8{margin-right:-3.15rem !important;margin-left:-3.15rem !important}.mx-n9{margin-right:-3.6rem !important;margin-left:-3.6rem !important}.mx-ntiny{margin-right:-0.135rem !important;margin-left:-0.135rem !important}.my-n1{margin-top:-0.225rem !important;margin-bottom:-0.225rem !important}.my-n2{margin-top:-0.45rem !important;margin-bottom:-0.45rem !important}.my-n3{margin-top:-0.9rem !important;margin-bottom:-0.9rem !important}.my-n4{margin-top:-1.35rem !important;margin-bottom:-1.35rem !important}.my-n5{margin-top:-1.8rem !important;margin-bottom:-1.8rem !important}.my-n6{margin-top:-2.25rem !important;margin-bottom:-2.25rem !important}.my-n7{margin-top:-2.7rem !important;margin-bottom:-2.7rem !important}.my-n8{margin-top:-3.15rem !important;margin-bottom:-3.15rem !important}.my-n9{margin-top:-3.6rem !important;margin-bottom:-3.6rem !important}.my-ntiny{margin-top:-0.135rem !important;margin-bottom:-0.135rem !important}.mt-n1{margin-top:-0.225rem !important}.mt-n2{margin-top:-0.45rem !important}.mt-n3{margin-top:-0.9rem !important}.mt-n4{margin-top:-1.35rem !important}.mt-n5{margin-top:-1.8rem !important}.mt-n6{margin-top:-2.25rem !important}.mt-n7{margin-top:-2.7rem !important}.mt-n8{margin-top:-3.15rem !important}.mt-n9{margin-top:-3.6rem !important}.mt-ntiny{margin-top:-0.135rem !important}.me-n1{margin-right:-0.225rem !important}.me-n2{margin-right:-0.45rem !important}.me-n3{margin-right:-0.9rem !important}.me-n4{margin-right:-1.35rem !important}.me-n5{margin-right:-1.8rem !important}.me-n6{margin-right:-2.25rem !important}.me-n7{margin-right:-2.7rem !important}.me-n8{margin-right:-3.15rem !important}.me-n9{margin-right:-3.6rem !important}.me-ntiny{margin-right:-0.135rem !important}.mb-n1{margin-bottom:-0.225rem !important}.mb-n2{margin-bottom:-0.45rem !important}.mb-n3{margin-bottom:-0.9rem !important}.mb-n4{margin-bottom:-1.35rem !important}.mb-n5{margin-bottom:-1.8rem !important}.mb-n6{margin-bottom:-2.25rem !important}.mb-n7{margin-bottom:-2.7rem !important}.mb-n8{margin-bottom:-3.15rem !important}.mb-n9{margin-bottom:-3.6rem !important}.mb-ntiny{margin-bottom:-0.135rem !important}.ms-n1{margin-left:-0.225rem !important}.ms-n2{margin-left:-0.45rem !important}.ms-n3{margin-left:-0.9rem !important}.ms-n4{margin-left:-1.35rem !important}.ms-n5{margin-left:-1.8rem !important}.ms-n6{margin-left:-2.25rem !important}.ms-n7{margin-left:-2.7rem !important}.ms-n8{margin-left:-3.15rem !important}.ms-n9{margin-left:-3.6rem !important}.ms-ntiny{margin-left:-0.135rem !important}.p-0{padding:0 !important}.p-1{padding:.225rem !important}.p-2{padding:.45rem !important}.p-3{padding:.9rem !important}.p-4{padding:1.35rem !important}.p-5{padding:1.8rem !important}.p-6{padding:2.25rem !important}.p-7{padding:2.7rem !important}.p-8{padding:3.15rem !important}.p-9{padding:3.6rem !important}.p-tiny{padding:.135rem !important}.px-0{padding-right:0 !important;padding-left:0 !important}.px-1{padding-right:.225rem !important;padding-left:.225rem !important}.px-2{padding-right:.45rem !important;padding-left:.45rem !important}.px-3{padding-right:.9rem !important;padding-left:.9rem !important}.px-4{padding-right:1.35rem !important;padding-left:1.35rem !important}.px-5{padding-right:1.8rem !important;padding-left:1.8rem !important}.px-6{padding-right:2.25rem !important;padding-left:2.25rem !important}.px-7{padding-right:2.7rem !important;padding-left:2.7rem !important}.px-8{padding-right:3.15rem !important;padding-left:3.15rem !important}.px-9{padding-right:3.6rem !important;padding-left:3.6rem !important}.px-tiny{padding-right:.135rem !important;padding-left:.135rem !important}.py-0{padding-top:0 !important;padding-bottom:0 !important}.py-1{padding-top:.225rem !important;padding-bottom:.225rem !important}.py-2{padding-top:.45rem !important;padding-bottom:.45rem !important}.py-3{padding-top:.9rem !important;padding-bottom:.9rem !important}.py-4{padding-top:1.35rem !important;padding-bottom:1.35rem !important}.py-5{padding-top:1.8rem !important;padding-bottom:1.8rem !important}.py-6{padding-top:2.25rem !important;padding-bottom:2.25rem !important}.py-7{padding-top:2.7rem !important;padding-bottom:2.7rem !important}.py-8{padding-top:3.15rem !important;padding-bottom:3.15rem !important}.py-9{padding-top:3.6rem !important;padding-bottom:3.6rem !important}.py-tiny{padding-top:.135rem !important;padding-bottom:.135rem !important}.pt-0{padding-top:0 !important}.pt-1{padding-top:.225rem !important}.pt-2{padding-top:.45rem !important}.pt-3{padding-top:.9rem !important}.pt-4{padding-top:1.35rem !important}.pt-5{padding-top:1.8rem !important}.pt-6{padding-top:2.25rem !important}.pt-7{padding-top:2.7rem !important}.pt-8{padding-top:3.15rem !important}.pt-9{padding-top:3.6rem !important}.pt-tiny{padding-top:.135rem !important}.pe-0{padding-right:0 !important}.pe-1{padding-right:.225rem !important}.pe-2{padding-right:.45rem !important}.pe-3{padding-right:.9rem !important}.pe-4{padding-right:1.35rem !important}.pe-5{padding-right:1.8rem !important}.pe-6{padding-right:2.25rem !important}.pe-7{padding-right:2.7rem !important}.pe-8{padding-right:3.15rem !important}.pe-9{padding-right:3.6rem !important}.pe-tiny{padding-right:.135rem !important}.pb-0{padding-bottom:0 !important}.pb-1{padding-bottom:.225rem !important}.pb-2{padding-bottom:.45rem !important}.pb-3{padding-bottom:.9rem !important}.pb-4{padding-bottom:1.35rem !important}.pb-5{padding-bottom:1.8rem !important}.pb-6{padding-bottom:2.25rem !important}.pb-7{padding-bottom:2.7rem !important}.pb-8{padding-bottom:3.15rem !important}.pb-9{padding-bottom:3.6rem !important}.pb-tiny{padding-bottom:.135rem !important}.ps-0{padding-left:0 !important}.ps-1{padding-left:.225rem !important}.ps-2{padding-left:.45rem !important}.ps-3{padding-left:.9rem !important}.ps-4{padding-left:1.35rem !important}.ps-5{padding-left:1.8rem !important}.ps-6{padding-left:2.25rem !important}.ps-7{padding-left:2.7rem !important}.ps-8{padding-left:3.15rem !important}.ps-9{padding-left:3.6rem !important}.ps-tiny{padding-left:.135rem !important}.gap-0{gap:0 !important}.gap-1{gap:.225rem !important}.gap-2{gap:.45rem !important}.gap-3{gap:.9rem !important}.gap-4{gap:1.35rem !important}.gap-5{gap:1.8rem !important}.gap-6{gap:2.25rem !important}.gap-7{gap:2.7rem !important}.gap-8{gap:3.15rem !important}.gap-9{gap:3.6rem !important}.gap-tiny{gap:.135rem !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-semibold{font-weight:600 !important}.fw-bolder{font-weight:bolder !important}.lh-1{line-height:1 !important}.lh-sm{line-height:1.25 !important}.lh-base{line-height:1.5 !important}.lh-lg{line-height:2 !important}.text-start{text-align:left !important}.text-end{text-align:right !important}.text-center{text-align:center !important}.text-decoration-none{text-decoration:none !important}.text-decoration-underline{text-decoration:underline !important}.text-decoration-line-through{text-decoration:line-through !important}.text-lowercase{text-transform:lowercase !important}.text-uppercase{text-transform:uppercase !important}.text-capitalize{text-transform:capitalize !important}.text-wrap{white-space:normal !important}.text-nowrap{white-space:nowrap !important}.text-break{word-wrap:break-word !important;word-break:break-word !important}.text-primary{--bs-text-opacity: 1;color:rgba(var(--bs-primary-rgb), var(--bs-text-opacity)) !important}.text-secondary{--bs-text-opacity: 1;color:rgba(var(--bs-secondary-rgb), var(--bs-text-opacity)) !important}.text-success{--bs-text-opacity: 1;color:rgba(var(--bs-success-rgb), var(--bs-text-opacity)) !important}.text-info{--bs-text-opacity: 1;color:rgba(var(--bs-info-rgb), var(--bs-text-opacity)) !important}.text-warning{--bs-text-opacity: 1;color:rgba(var(--bs-warning-rgb), var(--bs-text-opacity)) !important}.text-danger{--bs-text-opacity: 1;color:rgba(var(--bs-danger-rgb), var(--bs-text-opacity)) !important}.text-light{--bs-text-opacity: 1;color:rgba(var(--bs-light-rgb), var(--bs-text-opacity)) !important}.text-dark{--bs-text-opacity: 1;color:rgba(var(--bs-dark-rgb), var(--bs-text-opacity)) !important}.text-black{--bs-text-opacity: 1;color:rgba(var(--bs-black-rgb), var(--bs-text-opacity)) !important}.text-white{--bs-text-opacity: 1;color:rgba(var(--bs-white-rgb), var(--bs-text-opacity)) !important}.text-body{--bs-text-opacity: 1;color:rgba(var(--bs-body-color-rgb), var(--bs-text-opacity)) !important}.text-muted{--bs-text-opacity: 1;color:#6c757d !important}.text-black-50{--bs-text-opacity: 1;color:rgba(0,0,0,.5) !important}.text-white-50{--bs-text-opacity: 1;color:rgba(255,255,255,.5) !important}.text-reset{--bs-text-opacity: 1;color:inherit !important}.text-opacity-25{--bs-text-opacity: 0.25}.text-opacity-50{--bs-text-opacity: 0.5}.text-opacity-75{--bs-text-opacity: 0.75}.text-opacity-100{--bs-text-opacity: 1}.bg-primary{--bs-bg-opacity: 1;background-color:rgba(var(--bs-primary-rgb), var(--bs-bg-opacity)) !important}.bg-secondary{--bs-bg-opacity: 1;background-color:rgba(var(--bs-secondary-rgb), var(--bs-bg-opacity)) !important}.bg-success{--bs-bg-opacity: 1;background-color:rgba(var(--bs-success-rgb), var(--bs-bg-opacity)) !important}.bg-info{--bs-bg-opacity: 1;background-color:rgba(var(--bs-info-rgb), var(--bs-bg-opacity)) !important}.bg-warning{--bs-bg-opacity: 1;background-color:rgba(var(--bs-warning-rgb), var(--bs-bg-opacity)) !important}.bg-danger{--bs-bg-opacity: 1;background-color:rgba(var(--bs-danger-rgb), var(--bs-bg-opacity)) !important}.bg-light{--bs-bg-opacity: 1;background-color:rgba(var(--bs-light-rgb), var(--bs-bg-opacity)) !important}.bg-dark{--bs-bg-opacity: 1;background-color:rgba(var(--bs-dark-rgb), var(--bs-bg-opacity)) !important}.bg-black{--bs-bg-opacity: 1;background-color:rgba(var(--bs-black-rgb), var(--bs-bg-opacity)) !important}.bg-white{--bs-bg-opacity: 1;background-color:rgba(var(--bs-white-rgb), var(--bs-bg-opacity)) !important}.bg-body{--bs-bg-opacity: 1;background-color:rgba(var(--bs-body-bg-rgb), var(--bs-bg-opacity)) !important}.bg-transparent{--bs-bg-opacity: 1;background-color:rgba(0,0,0,0) !important}.bg-opacity-10{--bs-bg-opacity: 0.1}.bg-opacity-25{--bs-bg-opacity: 0.25}.bg-opacity-50{--bs-bg-opacity: 0.5}.bg-opacity-75{--bs-bg-opacity: 0.75}.bg-opacity-100{--bs-bg-opacity: 1}.bg-gradient{background-image:var(--bs-gradient) !important}.user-select-all{user-select:all !important}.user-select-auto{user-select:auto !important}.user-select-none{user-select:none !important}.pe-none{pointer-events:none !important}.pe-auto{pointer-events:auto !important}.rounded{border-radius:var(--bs-border-radius) !important}.rounded-0{border-radius:0 !important}.rounded-1{border-radius:var(--bs-border-radius-sm) !important}.rounded-2{border-radius:var(--bs-border-radius) !important}.rounded-3{border-radius:var(--bs-border-radius-lg) !important}.rounded-4{border-radius:var(--bs-border-radius-xl) !important}.rounded-5{border-radius:var(--bs-border-radius-2xl) !important}.rounded-circle{border-radius:50% !important}.rounded-pill{border-radius:var(--bs-border-radius-pill) !important}.rounded-top{border-top-left-radius:var(--bs-border-radius) !important;border-top-right-radius:var(--bs-border-radius) !important}.rounded-end{border-top-right-radius:var(--bs-border-radius) !important;border-bottom-right-radius:var(--bs-border-radius) !important}.rounded-bottom{border-bottom-right-radius:var(--bs-border-radius) !important;border-bottom-left-radius:var(--bs-border-radius) !important}.rounded-start{border-bottom-left-radius:var(--bs-border-radius) !important;border-top-left-radius:var(--bs-border-radius) !important}.visible{visibility:visible !important}.invisible{visibility:hidden !important}@media(min-width: 576px){.float-sm-start{float:left !important}.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}.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:.225rem !important}.m-sm-2{margin:.45rem !important}.m-sm-3{margin:.9rem !important}.m-sm-4{margin:1.35rem !important}.m-sm-5{margin:1.8rem !important}.m-sm-6{margin:2.25rem !important}.m-sm-7{margin:2.7rem !important}.m-sm-8{margin:3.15rem !important}.m-sm-9{margin:3.6rem !important}.m-sm-tiny{margin:.135rem !important}.m-sm-auto{margin:auto !important}.mx-sm-0{margin-right:0 !important;margin-left:0 !important}.mx-sm-1{margin-right:.225rem !important;margin-left:.225rem !important}.mx-sm-2{margin-right:.45rem !important;margin-left:.45rem !important}.mx-sm-3{margin-right:.9rem !important;margin-left:.9rem !important}.mx-sm-4{margin-right:1.35rem !important;margin-left:1.35rem !important}.mx-sm-5{margin-right:1.8rem !important;margin-left:1.8rem !important}.mx-sm-6{margin-right:2.25rem !important;margin-left:2.25rem !important}.mx-sm-7{margin-right:2.7rem !important;margin-left:2.7rem !important}.mx-sm-8{margin-right:3.15rem !important;margin-left:3.15rem !important}.mx-sm-9{margin-right:3.6rem !important;margin-left:3.6rem !important}.mx-sm-tiny{margin-right:.135rem !important;margin-left:.135rem !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:.225rem !important;margin-bottom:.225rem !important}.my-sm-2{margin-top:.45rem !important;margin-bottom:.45rem !important}.my-sm-3{margin-top:.9rem !important;margin-bottom:.9rem !important}.my-sm-4{margin-top:1.35rem !important;margin-bottom:1.35rem !important}.my-sm-5{margin-top:1.8rem !important;margin-bottom:1.8rem !important}.my-sm-6{margin-top:2.25rem !important;margin-bottom:2.25rem !important}.my-sm-7{margin-top:2.7rem !important;margin-bottom:2.7rem !important}.my-sm-8{margin-top:3.15rem !important;margin-bottom:3.15rem !important}.my-sm-9{margin-top:3.6rem !important;margin-bottom:3.6rem !important}.my-sm-tiny{margin-top:.135rem !important;margin-bottom:.135rem !important}.my-sm-auto{margin-top:auto !important;margin-bottom:auto !important}.mt-sm-0{margin-top:0 !important}.mt-sm-1{margin-top:.225rem !important}.mt-sm-2{margin-top:.45rem !important}.mt-sm-3{margin-top:.9rem !important}.mt-sm-4{margin-top:1.35rem !important}.mt-sm-5{margin-top:1.8rem !important}.mt-sm-6{margin-top:2.25rem !important}.mt-sm-7{margin-top:2.7rem !important}.mt-sm-8{margin-top:3.15rem !important}.mt-sm-9{margin-top:3.6rem !important}.mt-sm-tiny{margin-top:.135rem !important}.mt-sm-auto{margin-top:auto !important}.me-sm-0{margin-right:0 !important}.me-sm-1{margin-right:.225rem !important}.me-sm-2{margin-right:.45rem !important}.me-sm-3{margin-right:.9rem !important}.me-sm-4{margin-right:1.35rem !important}.me-sm-5{margin-right:1.8rem !important}.me-sm-6{margin-right:2.25rem !important}.me-sm-7{margin-right:2.7rem !important}.me-sm-8{margin-right:3.15rem !important}.me-sm-9{margin-right:3.6rem !important}.me-sm-tiny{margin-right:.135rem !important}.me-sm-auto{margin-right:auto !important}.mb-sm-0{margin-bottom:0 !important}.mb-sm-1{margin-bottom:.225rem !important}.mb-sm-2{margin-bottom:.45rem !important}.mb-sm-3{margin-bottom:.9rem !important}.mb-sm-4{margin-bottom:1.35rem !important}.mb-sm-5{margin-bottom:1.8rem !important}.mb-sm-6{margin-bottom:2.25rem !important}.mb-sm-7{margin-bottom:2.7rem !important}.mb-sm-8{margin-bottom:3.15rem !important}.mb-sm-9{margin-bottom:3.6rem !important}.mb-sm-tiny{margin-bottom:.135rem !important}.mb-sm-auto{margin-bottom:auto !important}.ms-sm-0{margin-left:0 !important}.ms-sm-1{margin-left:.225rem !important}.ms-sm-2{margin-left:.45rem !important}.ms-sm-3{margin-left:.9rem !important}.ms-sm-4{margin-left:1.35rem !important}.ms-sm-5{margin-left:1.8rem !important}.ms-sm-6{margin-left:2.25rem !important}.ms-sm-7{margin-left:2.7rem !important}.ms-sm-8{margin-left:3.15rem !important}.ms-sm-9{margin-left:3.6rem !important}.ms-sm-tiny{margin-left:.135rem !important}.ms-sm-auto{margin-left:auto !important}.m-sm-n1{margin:-0.225rem !important}.m-sm-n2{margin:-0.45rem !important}.m-sm-n3{margin:-0.9rem !important}.m-sm-n4{margin:-1.35rem !important}.m-sm-n5{margin:-1.8rem !important}.m-sm-n6{margin:-2.25rem !important}.m-sm-n7{margin:-2.7rem !important}.m-sm-n8{margin:-3.15rem !important}.m-sm-n9{margin:-3.6rem !important}.m-sm-ntiny{margin:-0.135rem !important}.mx-sm-n1{margin-right:-0.225rem !important;margin-left:-0.225rem !important}.mx-sm-n2{margin-right:-0.45rem !important;margin-left:-0.45rem !important}.mx-sm-n3{margin-right:-0.9rem !important;margin-left:-0.9rem !important}.mx-sm-n4{margin-right:-1.35rem !important;margin-left:-1.35rem !important}.mx-sm-n5{margin-right:-1.8rem !important;margin-left:-1.8rem !important}.mx-sm-n6{margin-right:-2.25rem !important;margin-left:-2.25rem !important}.mx-sm-n7{margin-right:-2.7rem !important;margin-left:-2.7rem !important}.mx-sm-n8{margin-right:-3.15rem !important;margin-left:-3.15rem !important}.mx-sm-n9{margin-right:-3.6rem !important;margin-left:-3.6rem !important}.mx-sm-ntiny{margin-right:-0.135rem !important;margin-left:-0.135rem !important}.my-sm-n1{margin-top:-0.225rem !important;margin-bottom:-0.225rem !important}.my-sm-n2{margin-top:-0.45rem !important;margin-bottom:-0.45rem !important}.my-sm-n3{margin-top:-0.9rem !important;margin-bottom:-0.9rem !important}.my-sm-n4{margin-top:-1.35rem !important;margin-bottom:-1.35rem !important}.my-sm-n5{margin-top:-1.8rem !important;margin-bottom:-1.8rem !important}.my-sm-n6{margin-top:-2.25rem !important;margin-bottom:-2.25rem !important}.my-sm-n7{margin-top:-2.7rem !important;margin-bottom:-2.7rem !important}.my-sm-n8{margin-top:-3.15rem !important;margin-bottom:-3.15rem !important}.my-sm-n9{margin-top:-3.6rem !important;margin-bottom:-3.6rem !important}.my-sm-ntiny{margin-top:-0.135rem !important;margin-bottom:-0.135rem !important}.mt-sm-n1{margin-top:-0.225rem !important}.mt-sm-n2{margin-top:-0.45rem !important}.mt-sm-n3{margin-top:-0.9rem !important}.mt-sm-n4{margin-top:-1.35rem !important}.mt-sm-n5{margin-top:-1.8rem !important}.mt-sm-n6{margin-top:-2.25rem !important}.mt-sm-n7{margin-top:-2.7rem !important}.mt-sm-n8{margin-top:-3.15rem !important}.mt-sm-n9{margin-top:-3.6rem !important}.mt-sm-ntiny{margin-top:-0.135rem !important}.me-sm-n1{margin-right:-0.225rem !important}.me-sm-n2{margin-right:-0.45rem !important}.me-sm-n3{margin-right:-0.9rem !important}.me-sm-n4{margin-right:-1.35rem !important}.me-sm-n5{margin-right:-1.8rem !important}.me-sm-n6{margin-right:-2.25rem !important}.me-sm-n7{margin-right:-2.7rem !important}.me-sm-n8{margin-right:-3.15rem !important}.me-sm-n9{margin-right:-3.6rem !important}.me-sm-ntiny{margin-right:-0.135rem !important}.mb-sm-n1{margin-bottom:-0.225rem !important}.mb-sm-n2{margin-bottom:-0.45rem !important}.mb-sm-n3{margin-bottom:-0.9rem !important}.mb-sm-n4{margin-bottom:-1.35rem !important}.mb-sm-n5{margin-bottom:-1.8rem !important}.mb-sm-n6{margin-bottom:-2.25rem !important}.mb-sm-n7{margin-bottom:-2.7rem !important}.mb-sm-n8{margin-bottom:-3.15rem !important}.mb-sm-n9{margin-bottom:-3.6rem !important}.mb-sm-ntiny{margin-bottom:-0.135rem !important}.ms-sm-n1{margin-left:-0.225rem !important}.ms-sm-n2{margin-left:-0.45rem !important}.ms-sm-n3{margin-left:-0.9rem !important}.ms-sm-n4{margin-left:-1.35rem !important}.ms-sm-n5{margin-left:-1.8rem !important}.ms-sm-n6{margin-left:-2.25rem !important}.ms-sm-n7{margin-left:-2.7rem !important}.ms-sm-n8{margin-left:-3.15rem !important}.ms-sm-n9{margin-left:-3.6rem !important}.ms-sm-ntiny{margin-left:-0.135rem !important}.p-sm-0{padding:0 !important}.p-sm-1{padding:.225rem !important}.p-sm-2{padding:.45rem !important}.p-sm-3{padding:.9rem !important}.p-sm-4{padding:1.35rem !important}.p-sm-5{padding:1.8rem !important}.p-sm-6{padding:2.25rem !important}.p-sm-7{padding:2.7rem !important}.p-sm-8{padding:3.15rem !important}.p-sm-9{padding:3.6rem !important}.p-sm-tiny{padding:.135rem !important}.px-sm-0{padding-right:0 !important;padding-left:0 !important}.px-sm-1{padding-right:.225rem !important;padding-left:.225rem !important}.px-sm-2{padding-right:.45rem !important;padding-left:.45rem !important}.px-sm-3{padding-right:.9rem !important;padding-left:.9rem !important}.px-sm-4{padding-right:1.35rem !important;padding-left:1.35rem !important}.px-sm-5{padding-right:1.8rem !important;padding-left:1.8rem !important}.px-sm-6{padding-right:2.25rem !important;padding-left:2.25rem !important}.px-sm-7{padding-right:2.7rem !important;padding-left:2.7rem !important}.px-sm-8{padding-right:3.15rem !important;padding-left:3.15rem !important}.px-sm-9{padding-right:3.6rem !important;padding-left:3.6rem !important}.px-sm-tiny{padding-right:.135rem !important;padding-left:.135rem !important}.py-sm-0{padding-top:0 !important;padding-bottom:0 !important}.py-sm-1{padding-top:.225rem !important;padding-bottom:.225rem !important}.py-sm-2{padding-top:.45rem !important;padding-bottom:.45rem !important}.py-sm-3{padding-top:.9rem !important;padding-bottom:.9rem !important}.py-sm-4{padding-top:1.35rem !important;padding-bottom:1.35rem !important}.py-sm-5{padding-top:1.8rem !important;padding-bottom:1.8rem !important}.py-sm-6{padding-top:2.25rem !important;padding-bottom:2.25rem !important}.py-sm-7{padding-top:2.7rem !important;padding-bottom:2.7rem !important}.py-sm-8{padding-top:3.15rem !important;padding-bottom:3.15rem !important}.py-sm-9{padding-top:3.6rem !important;padding-bottom:3.6rem !important}.py-sm-tiny{padding-top:.135rem !important;padding-bottom:.135rem !important}.pt-sm-0{padding-top:0 !important}.pt-sm-1{padding-top:.225rem !important}.pt-sm-2{padding-top:.45rem !important}.pt-sm-3{padding-top:.9rem !important}.pt-sm-4{padding-top:1.35rem !important}.pt-sm-5{padding-top:1.8rem !important}.pt-sm-6{padding-top:2.25rem !important}.pt-sm-7{padding-top:2.7rem !important}.pt-sm-8{padding-top:3.15rem !important}.pt-sm-9{padding-top:3.6rem !important}.pt-sm-tiny{padding-top:.135rem !important}.pe-sm-0{padding-right:0 !important}.pe-sm-1{padding-right:.225rem !important}.pe-sm-2{padding-right:.45rem !important}.pe-sm-3{padding-right:.9rem !important}.pe-sm-4{padding-right:1.35rem !important}.pe-sm-5{padding-right:1.8rem !important}.pe-sm-6{padding-right:2.25rem !important}.pe-sm-7{padding-right:2.7rem !important}.pe-sm-8{padding-right:3.15rem !important}.pe-sm-9{padding-right:3.6rem !important}.pe-sm-tiny{padding-right:.135rem !important}.pb-sm-0{padding-bottom:0 !important}.pb-sm-1{padding-bottom:.225rem !important}.pb-sm-2{padding-bottom:.45rem !important}.pb-sm-3{padding-bottom:.9rem !important}.pb-sm-4{padding-bottom:1.35rem !important}.pb-sm-5{padding-bottom:1.8rem !important}.pb-sm-6{padding-bottom:2.25rem !important}.pb-sm-7{padding-bottom:2.7rem !important}.pb-sm-8{padding-bottom:3.15rem !important}.pb-sm-9{padding-bottom:3.6rem !important}.pb-sm-tiny{padding-bottom:.135rem !important}.ps-sm-0{padding-left:0 !important}.ps-sm-1{padding-left:.225rem !important}.ps-sm-2{padding-left:.45rem !important}.ps-sm-3{padding-left:.9rem !important}.ps-sm-4{padding-left:1.35rem !important}.ps-sm-5{padding-left:1.8rem !important}.ps-sm-6{padding-left:2.25rem !important}.ps-sm-7{padding-left:2.7rem !important}.ps-sm-8{padding-left:3.15rem !important}.ps-sm-9{padding-left:3.6rem !important}.ps-sm-tiny{padding-left:.135rem !important}.gap-sm-0{gap:0 !important}.gap-sm-1{gap:.225rem !important}.gap-sm-2{gap:.45rem !important}.gap-sm-3{gap:.9rem !important}.gap-sm-4{gap:1.35rem !important}.gap-sm-5{gap:1.8rem !important}.gap-sm-6{gap:2.25rem !important}.gap-sm-7{gap:2.7rem !important}.gap-sm-8{gap:3.15rem !important}.gap-sm-9{gap:3.6rem !important}.gap-sm-tiny{gap:.135rem !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}.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:.225rem !important}.m-md-2{margin:.45rem !important}.m-md-3{margin:.9rem !important}.m-md-4{margin:1.35rem !important}.m-md-5{margin:1.8rem !important}.m-md-6{margin:2.25rem !important}.m-md-7{margin:2.7rem !important}.m-md-8{margin:3.15rem !important}.m-md-9{margin:3.6rem !important}.m-md-tiny{margin:.135rem !important}.m-md-auto{margin:auto !important}.mx-md-0{margin-right:0 !important;margin-left:0 !important}.mx-md-1{margin-right:.225rem !important;margin-left:.225rem !important}.mx-md-2{margin-right:.45rem !important;margin-left:.45rem !important}.mx-md-3{margin-right:.9rem !important;margin-left:.9rem !important}.mx-md-4{margin-right:1.35rem !important;margin-left:1.35rem !important}.mx-md-5{margin-right:1.8rem !important;margin-left:1.8rem !important}.mx-md-6{margin-right:2.25rem !important;margin-left:2.25rem !important}.mx-md-7{margin-right:2.7rem !important;margin-left:2.7rem !important}.mx-md-8{margin-right:3.15rem !important;margin-left:3.15rem !important}.mx-md-9{margin-right:3.6rem !important;margin-left:3.6rem !important}.mx-md-tiny{margin-right:.135rem !important;margin-left:.135rem !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:.225rem !important;margin-bottom:.225rem !important}.my-md-2{margin-top:.45rem !important;margin-bottom:.45rem !important}.my-md-3{margin-top:.9rem !important;margin-bottom:.9rem !important}.my-md-4{margin-top:1.35rem !important;margin-bottom:1.35rem !important}.my-md-5{margin-top:1.8rem !important;margin-bottom:1.8rem !important}.my-md-6{margin-top:2.25rem !important;margin-bottom:2.25rem !important}.my-md-7{margin-top:2.7rem !important;margin-bottom:2.7rem !important}.my-md-8{margin-top:3.15rem !important;margin-bottom:3.15rem !important}.my-md-9{margin-top:3.6rem !important;margin-bottom:3.6rem !important}.my-md-tiny{margin-top:.135rem !important;margin-bottom:.135rem !important}.my-md-auto{margin-top:auto !important;margin-bottom:auto !important}.mt-md-0{margin-top:0 !important}.mt-md-1{margin-top:.225rem !important}.mt-md-2{margin-top:.45rem !important}.mt-md-3{margin-top:.9rem !important}.mt-md-4{margin-top:1.35rem !important}.mt-md-5{margin-top:1.8rem !important}.mt-md-6{margin-top:2.25rem !important}.mt-md-7{margin-top:2.7rem !important}.mt-md-8{margin-top:3.15rem !important}.mt-md-9{margin-top:3.6rem !important}.mt-md-tiny{margin-top:.135rem !important}.mt-md-auto{margin-top:auto !important}.me-md-0{margin-right:0 !important}.me-md-1{margin-right:.225rem !important}.me-md-2{margin-right:.45rem !important}.me-md-3{margin-right:.9rem !important}.me-md-4{margin-right:1.35rem !important}.me-md-5{margin-right:1.8rem !important}.me-md-6{margin-right:2.25rem !important}.me-md-7{margin-right:2.7rem !important}.me-md-8{margin-right:3.15rem !important}.me-md-9{margin-right:3.6rem !important}.me-md-tiny{margin-right:.135rem !important}.me-md-auto{margin-right:auto !important}.mb-md-0{margin-bottom:0 !important}.mb-md-1{margin-bottom:.225rem !important}.mb-md-2{margin-bottom:.45rem !important}.mb-md-3{margin-bottom:.9rem !important}.mb-md-4{margin-bottom:1.35rem !important}.mb-md-5{margin-bottom:1.8rem !important}.mb-md-6{margin-bottom:2.25rem !important}.mb-md-7{margin-bottom:2.7rem !important}.mb-md-8{margin-bottom:3.15rem !important}.mb-md-9{margin-bottom:3.6rem !important}.mb-md-tiny{margin-bottom:.135rem !important}.mb-md-auto{margin-bottom:auto !important}.ms-md-0{margin-left:0 !important}.ms-md-1{margin-left:.225rem !important}.ms-md-2{margin-left:.45rem !important}.ms-md-3{margin-left:.9rem !important}.ms-md-4{margin-left:1.35rem !important}.ms-md-5{margin-left:1.8rem !important}.ms-md-6{margin-left:2.25rem !important}.ms-md-7{margin-left:2.7rem !important}.ms-md-8{margin-left:3.15rem !important}.ms-md-9{margin-left:3.6rem !important}.ms-md-tiny{margin-left:.135rem !important}.ms-md-auto{margin-left:auto !important}.m-md-n1{margin:-0.225rem !important}.m-md-n2{margin:-0.45rem !important}.m-md-n3{margin:-0.9rem !important}.m-md-n4{margin:-1.35rem !important}.m-md-n5{margin:-1.8rem !important}.m-md-n6{margin:-2.25rem !important}.m-md-n7{margin:-2.7rem !important}.m-md-n8{margin:-3.15rem !important}.m-md-n9{margin:-3.6rem !important}.m-md-ntiny{margin:-0.135rem !important}.mx-md-n1{margin-right:-0.225rem !important;margin-left:-0.225rem !important}.mx-md-n2{margin-right:-0.45rem !important;margin-left:-0.45rem !important}.mx-md-n3{margin-right:-0.9rem !important;margin-left:-0.9rem !important}.mx-md-n4{margin-right:-1.35rem !important;margin-left:-1.35rem !important}.mx-md-n5{margin-right:-1.8rem !important;margin-left:-1.8rem !important}.mx-md-n6{margin-right:-2.25rem !important;margin-left:-2.25rem !important}.mx-md-n7{margin-right:-2.7rem !important;margin-left:-2.7rem !important}.mx-md-n8{margin-right:-3.15rem !important;margin-left:-3.15rem !important}.mx-md-n9{margin-right:-3.6rem !important;margin-left:-3.6rem !important}.mx-md-ntiny{margin-right:-0.135rem !important;margin-left:-0.135rem !important}.my-md-n1{margin-top:-0.225rem !important;margin-bottom:-0.225rem !important}.my-md-n2{margin-top:-0.45rem !important;margin-bottom:-0.45rem !important}.my-md-n3{margin-top:-0.9rem !important;margin-bottom:-0.9rem !important}.my-md-n4{margin-top:-1.35rem !important;margin-bottom:-1.35rem !important}.my-md-n5{margin-top:-1.8rem !important;margin-bottom:-1.8rem !important}.my-md-n6{margin-top:-2.25rem !important;margin-bottom:-2.25rem !important}.my-md-n7{margin-top:-2.7rem !important;margin-bottom:-2.7rem !important}.my-md-n8{margin-top:-3.15rem !important;margin-bottom:-3.15rem !important}.my-md-n9{margin-top:-3.6rem !important;margin-bottom:-3.6rem !important}.my-md-ntiny{margin-top:-0.135rem !important;margin-bottom:-0.135rem !important}.mt-md-n1{margin-top:-0.225rem !important}.mt-md-n2{margin-top:-0.45rem !important}.mt-md-n3{margin-top:-0.9rem !important}.mt-md-n4{margin-top:-1.35rem !important}.mt-md-n5{margin-top:-1.8rem !important}.mt-md-n6{margin-top:-2.25rem !important}.mt-md-n7{margin-top:-2.7rem !important}.mt-md-n8{margin-top:-3.15rem !important}.mt-md-n9{margin-top:-3.6rem !important}.mt-md-ntiny{margin-top:-0.135rem !important}.me-md-n1{margin-right:-0.225rem !important}.me-md-n2{margin-right:-0.45rem !important}.me-md-n3{margin-right:-0.9rem !important}.me-md-n4{margin-right:-1.35rem !important}.me-md-n5{margin-right:-1.8rem !important}.me-md-n6{margin-right:-2.25rem !important}.me-md-n7{margin-right:-2.7rem !important}.me-md-n8{margin-right:-3.15rem !important}.me-md-n9{margin-right:-3.6rem !important}.me-md-ntiny{margin-right:-0.135rem !important}.mb-md-n1{margin-bottom:-0.225rem !important}.mb-md-n2{margin-bottom:-0.45rem !important}.mb-md-n3{margin-bottom:-0.9rem !important}.mb-md-n4{margin-bottom:-1.35rem !important}.mb-md-n5{margin-bottom:-1.8rem !important}.mb-md-n6{margin-bottom:-2.25rem !important}.mb-md-n7{margin-bottom:-2.7rem !important}.mb-md-n8{margin-bottom:-3.15rem !important}.mb-md-n9{margin-bottom:-3.6rem !important}.mb-md-ntiny{margin-bottom:-0.135rem !important}.ms-md-n1{margin-left:-0.225rem !important}.ms-md-n2{margin-left:-0.45rem !important}.ms-md-n3{margin-left:-0.9rem !important}.ms-md-n4{margin-left:-1.35rem !important}.ms-md-n5{margin-left:-1.8rem !important}.ms-md-n6{margin-left:-2.25rem !important}.ms-md-n7{margin-left:-2.7rem !important}.ms-md-n8{margin-left:-3.15rem !important}.ms-md-n9{margin-left:-3.6rem !important}.ms-md-ntiny{margin-left:-0.135rem !important}.p-md-0{padding:0 !important}.p-md-1{padding:.225rem !important}.p-md-2{padding:.45rem !important}.p-md-3{padding:.9rem !important}.p-md-4{padding:1.35rem !important}.p-md-5{padding:1.8rem !important}.p-md-6{padding:2.25rem !important}.p-md-7{padding:2.7rem !important}.p-md-8{padding:3.15rem !important}.p-md-9{padding:3.6rem !important}.p-md-tiny{padding:.135rem !important}.px-md-0{padding-right:0 !important;padding-left:0 !important}.px-md-1{padding-right:.225rem !important;padding-left:.225rem !important}.px-md-2{padding-right:.45rem !important;padding-left:.45rem !important}.px-md-3{padding-right:.9rem !important;padding-left:.9rem !important}.px-md-4{padding-right:1.35rem !important;padding-left:1.35rem !important}.px-md-5{padding-right:1.8rem !important;padding-left:1.8rem !important}.px-md-6{padding-right:2.25rem !important;padding-left:2.25rem !important}.px-md-7{padding-right:2.7rem !important;padding-left:2.7rem !important}.px-md-8{padding-right:3.15rem !important;padding-left:3.15rem !important}.px-md-9{padding-right:3.6rem !important;padding-left:3.6rem !important}.px-md-tiny{padding-right:.135rem !important;padding-left:.135rem !important}.py-md-0{padding-top:0 !important;padding-bottom:0 !important}.py-md-1{padding-top:.225rem !important;padding-bottom:.225rem !important}.py-md-2{padding-top:.45rem !important;padding-bottom:.45rem !important}.py-md-3{padding-top:.9rem !important;padding-bottom:.9rem !important}.py-md-4{padding-top:1.35rem !important;padding-bottom:1.35rem !important}.py-md-5{padding-top:1.8rem !important;padding-bottom:1.8rem !important}.py-md-6{padding-top:2.25rem !important;padding-bottom:2.25rem !important}.py-md-7{padding-top:2.7rem !important;padding-bottom:2.7rem !important}.py-md-8{padding-top:3.15rem !important;padding-bottom:3.15rem !important}.py-md-9{padding-top:3.6rem !important;padding-bottom:3.6rem !important}.py-md-tiny{padding-top:.135rem !important;padding-bottom:.135rem !important}.pt-md-0{padding-top:0 !important}.pt-md-1{padding-top:.225rem !important}.pt-md-2{padding-top:.45rem !important}.pt-md-3{padding-top:.9rem !important}.pt-md-4{padding-top:1.35rem !important}.pt-md-5{padding-top:1.8rem !important}.pt-md-6{padding-top:2.25rem !important}.pt-md-7{padding-top:2.7rem !important}.pt-md-8{padding-top:3.15rem !important}.pt-md-9{padding-top:3.6rem !important}.pt-md-tiny{padding-top:.135rem !important}.pe-md-0{padding-right:0 !important}.pe-md-1{padding-right:.225rem !important}.pe-md-2{padding-right:.45rem !important}.pe-md-3{padding-right:.9rem !important}.pe-md-4{padding-right:1.35rem !important}.pe-md-5{padding-right:1.8rem !important}.pe-md-6{padding-right:2.25rem !important}.pe-md-7{padding-right:2.7rem !important}.pe-md-8{padding-right:3.15rem !important}.pe-md-9{padding-right:3.6rem !important}.pe-md-tiny{padding-right:.135rem !important}.pb-md-0{padding-bottom:0 !important}.pb-md-1{padding-bottom:.225rem !important}.pb-md-2{padding-bottom:.45rem !important}.pb-md-3{padding-bottom:.9rem !important}.pb-md-4{padding-bottom:1.35rem !important}.pb-md-5{padding-bottom:1.8rem !important}.pb-md-6{padding-bottom:2.25rem !important}.pb-md-7{padding-bottom:2.7rem !important}.pb-md-8{padding-bottom:3.15rem !important}.pb-md-9{padding-bottom:3.6rem !important}.pb-md-tiny{padding-bottom:.135rem !important}.ps-md-0{padding-left:0 !important}.ps-md-1{padding-left:.225rem !important}.ps-md-2{padding-left:.45rem !important}.ps-md-3{padding-left:.9rem !important}.ps-md-4{padding-left:1.35rem !important}.ps-md-5{padding-left:1.8rem !important}.ps-md-6{padding-left:2.25rem !important}.ps-md-7{padding-left:2.7rem !important}.ps-md-8{padding-left:3.15rem !important}.ps-md-9{padding-left:3.6rem !important}.ps-md-tiny{padding-left:.135rem !important}.gap-md-0{gap:0 !important}.gap-md-1{gap:.225rem !important}.gap-md-2{gap:.45rem !important}.gap-md-3{gap:.9rem !important}.gap-md-4{gap:1.35rem !important}.gap-md-5{gap:1.8rem !important}.gap-md-6{gap:2.25rem !important}.gap-md-7{gap:2.7rem !important}.gap-md-8{gap:3.15rem !important}.gap-md-9{gap:3.6rem !important}.gap-md-tiny{gap:.135rem !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}.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:.225rem !important}.m-lg-2{margin:.45rem !important}.m-lg-3{margin:.9rem !important}.m-lg-4{margin:1.35rem !important}.m-lg-5{margin:1.8rem !important}.m-lg-6{margin:2.25rem !important}.m-lg-7{margin:2.7rem !important}.m-lg-8{margin:3.15rem !important}.m-lg-9{margin:3.6rem !important}.m-lg-tiny{margin:.135rem !important}.m-lg-auto{margin:auto !important}.mx-lg-0{margin-right:0 !important;margin-left:0 !important}.mx-lg-1{margin-right:.225rem !important;margin-left:.225rem !important}.mx-lg-2{margin-right:.45rem !important;margin-left:.45rem !important}.mx-lg-3{margin-right:.9rem !important;margin-left:.9rem !important}.mx-lg-4{margin-right:1.35rem !important;margin-left:1.35rem !important}.mx-lg-5{margin-right:1.8rem !important;margin-left:1.8rem !important}.mx-lg-6{margin-right:2.25rem !important;margin-left:2.25rem !important}.mx-lg-7{margin-right:2.7rem !important;margin-left:2.7rem !important}.mx-lg-8{margin-right:3.15rem !important;margin-left:3.15rem !important}.mx-lg-9{margin-right:3.6rem !important;margin-left:3.6rem !important}.mx-lg-tiny{margin-right:.135rem !important;margin-left:.135rem !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:.225rem !important;margin-bottom:.225rem !important}.my-lg-2{margin-top:.45rem !important;margin-bottom:.45rem !important}.my-lg-3{margin-top:.9rem !important;margin-bottom:.9rem !important}.my-lg-4{margin-top:1.35rem !important;margin-bottom:1.35rem !important}.my-lg-5{margin-top:1.8rem !important;margin-bottom:1.8rem !important}.my-lg-6{margin-top:2.25rem !important;margin-bottom:2.25rem !important}.my-lg-7{margin-top:2.7rem !important;margin-bottom:2.7rem !important}.my-lg-8{margin-top:3.15rem !important;margin-bottom:3.15rem !important}.my-lg-9{margin-top:3.6rem !important;margin-bottom:3.6rem !important}.my-lg-tiny{margin-top:.135rem !important;margin-bottom:.135rem !important}.my-lg-auto{margin-top:auto !important;margin-bottom:auto !important}.mt-lg-0{margin-top:0 !important}.mt-lg-1{margin-top:.225rem !important}.mt-lg-2{margin-top:.45rem !important}.mt-lg-3{margin-top:.9rem !important}.mt-lg-4{margin-top:1.35rem !important}.mt-lg-5{margin-top:1.8rem !important}.mt-lg-6{margin-top:2.25rem !important}.mt-lg-7{margin-top:2.7rem !important}.mt-lg-8{margin-top:3.15rem !important}.mt-lg-9{margin-top:3.6rem !important}.mt-lg-tiny{margin-top:.135rem !important}.mt-lg-auto{margin-top:auto !important}.me-lg-0{margin-right:0 !important}.me-lg-1{margin-right:.225rem !important}.me-lg-2{margin-right:.45rem !important}.me-lg-3{margin-right:.9rem !important}.me-lg-4{margin-right:1.35rem !important}.me-lg-5{margin-right:1.8rem !important}.me-lg-6{margin-right:2.25rem !important}.me-lg-7{margin-right:2.7rem !important}.me-lg-8{margin-right:3.15rem !important}.me-lg-9{margin-right:3.6rem !important}.me-lg-tiny{margin-right:.135rem !important}.me-lg-auto{margin-right:auto !important}.mb-lg-0{margin-bottom:0 !important}.mb-lg-1{margin-bottom:.225rem !important}.mb-lg-2{margin-bottom:.45rem !important}.mb-lg-3{margin-bottom:.9rem !important}.mb-lg-4{margin-bottom:1.35rem !important}.mb-lg-5{margin-bottom:1.8rem !important}.mb-lg-6{margin-bottom:2.25rem !important}.mb-lg-7{margin-bottom:2.7rem !important}.mb-lg-8{margin-bottom:3.15rem !important}.mb-lg-9{margin-bottom:3.6rem !important}.mb-lg-tiny{margin-bottom:.135rem !important}.mb-lg-auto{margin-bottom:auto !important}.ms-lg-0{margin-left:0 !important}.ms-lg-1{margin-left:.225rem !important}.ms-lg-2{margin-left:.45rem !important}.ms-lg-3{margin-left:.9rem !important}.ms-lg-4{margin-left:1.35rem !important}.ms-lg-5{margin-left:1.8rem !important}.ms-lg-6{margin-left:2.25rem !important}.ms-lg-7{margin-left:2.7rem !important}.ms-lg-8{margin-left:3.15rem !important}.ms-lg-9{margin-left:3.6rem !important}.ms-lg-tiny{margin-left:.135rem !important}.ms-lg-auto{margin-left:auto !important}.m-lg-n1{margin:-0.225rem !important}.m-lg-n2{margin:-0.45rem !important}.m-lg-n3{margin:-0.9rem !important}.m-lg-n4{margin:-1.35rem !important}.m-lg-n5{margin:-1.8rem !important}.m-lg-n6{margin:-2.25rem !important}.m-lg-n7{margin:-2.7rem !important}.m-lg-n8{margin:-3.15rem !important}.m-lg-n9{margin:-3.6rem !important}.m-lg-ntiny{margin:-0.135rem !important}.mx-lg-n1{margin-right:-0.225rem !important;margin-left:-0.225rem !important}.mx-lg-n2{margin-right:-0.45rem !important;margin-left:-0.45rem !important}.mx-lg-n3{margin-right:-0.9rem !important;margin-left:-0.9rem !important}.mx-lg-n4{margin-right:-1.35rem !important;margin-left:-1.35rem !important}.mx-lg-n5{margin-right:-1.8rem !important;margin-left:-1.8rem !important}.mx-lg-n6{margin-right:-2.25rem !important;margin-left:-2.25rem !important}.mx-lg-n7{margin-right:-2.7rem !important;margin-left:-2.7rem !important}.mx-lg-n8{margin-right:-3.15rem !important;margin-left:-3.15rem !important}.mx-lg-n9{margin-right:-3.6rem !important;margin-left:-3.6rem !important}.mx-lg-ntiny{margin-right:-0.135rem !important;margin-left:-0.135rem !important}.my-lg-n1{margin-top:-0.225rem !important;margin-bottom:-0.225rem !important}.my-lg-n2{margin-top:-0.45rem !important;margin-bottom:-0.45rem !important}.my-lg-n3{margin-top:-0.9rem !important;margin-bottom:-0.9rem !important}.my-lg-n4{margin-top:-1.35rem !important;margin-bottom:-1.35rem !important}.my-lg-n5{margin-top:-1.8rem !important;margin-bottom:-1.8rem !important}.my-lg-n6{margin-top:-2.25rem !important;margin-bottom:-2.25rem !important}.my-lg-n7{margin-top:-2.7rem !important;margin-bottom:-2.7rem !important}.my-lg-n8{margin-top:-3.15rem !important;margin-bottom:-3.15rem !important}.my-lg-n9{margin-top:-3.6rem !important;margin-bottom:-3.6rem !important}.my-lg-ntiny{margin-top:-0.135rem !important;margin-bottom:-0.135rem !important}.mt-lg-n1{margin-top:-0.225rem !important}.mt-lg-n2{margin-top:-0.45rem !important}.mt-lg-n3{margin-top:-0.9rem !important}.mt-lg-n4{margin-top:-1.35rem !important}.mt-lg-n5{margin-top:-1.8rem !important}.mt-lg-n6{margin-top:-2.25rem !important}.mt-lg-n7{margin-top:-2.7rem !important}.mt-lg-n8{margin-top:-3.15rem !important}.mt-lg-n9{margin-top:-3.6rem !important}.mt-lg-ntiny{margin-top:-0.135rem !important}.me-lg-n1{margin-right:-0.225rem !important}.me-lg-n2{margin-right:-0.45rem !important}.me-lg-n3{margin-right:-0.9rem !important}.me-lg-n4{margin-right:-1.35rem !important}.me-lg-n5{margin-right:-1.8rem !important}.me-lg-n6{margin-right:-2.25rem !important}.me-lg-n7{margin-right:-2.7rem !important}.me-lg-n8{margin-right:-3.15rem !important}.me-lg-n9{margin-right:-3.6rem !important}.me-lg-ntiny{margin-right:-0.135rem !important}.mb-lg-n1{margin-bottom:-0.225rem !important}.mb-lg-n2{margin-bottom:-0.45rem !important}.mb-lg-n3{margin-bottom:-0.9rem !important}.mb-lg-n4{margin-bottom:-1.35rem !important}.mb-lg-n5{margin-bottom:-1.8rem !important}.mb-lg-n6{margin-bottom:-2.25rem !important}.mb-lg-n7{margin-bottom:-2.7rem !important}.mb-lg-n8{margin-bottom:-3.15rem !important}.mb-lg-n9{margin-bottom:-3.6rem !important}.mb-lg-ntiny{margin-bottom:-0.135rem !important}.ms-lg-n1{margin-left:-0.225rem !important}.ms-lg-n2{margin-left:-0.45rem !important}.ms-lg-n3{margin-left:-0.9rem !important}.ms-lg-n4{margin-left:-1.35rem !important}.ms-lg-n5{margin-left:-1.8rem !important}.ms-lg-n6{margin-left:-2.25rem !important}.ms-lg-n7{margin-left:-2.7rem !important}.ms-lg-n8{margin-left:-3.15rem !important}.ms-lg-n9{margin-left:-3.6rem !important}.ms-lg-ntiny{margin-left:-0.135rem !important}.p-lg-0{padding:0 !important}.p-lg-1{padding:.225rem !important}.p-lg-2{padding:.45rem !important}.p-lg-3{padding:.9rem !important}.p-lg-4{padding:1.35rem !important}.p-lg-5{padding:1.8rem !important}.p-lg-6{padding:2.25rem !important}.p-lg-7{padding:2.7rem !important}.p-lg-8{padding:3.15rem !important}.p-lg-9{padding:3.6rem !important}.p-lg-tiny{padding:.135rem !important}.px-lg-0{padding-right:0 !important;padding-left:0 !important}.px-lg-1{padding-right:.225rem !important;padding-left:.225rem !important}.px-lg-2{padding-right:.45rem !important;padding-left:.45rem !important}.px-lg-3{padding-right:.9rem !important;padding-left:.9rem !important}.px-lg-4{padding-right:1.35rem !important;padding-left:1.35rem !important}.px-lg-5{padding-right:1.8rem !important;padding-left:1.8rem !important}.px-lg-6{padding-right:2.25rem !important;padding-left:2.25rem !important}.px-lg-7{padding-right:2.7rem !important;padding-left:2.7rem !important}.px-lg-8{padding-right:3.15rem !important;padding-left:3.15rem !important}.px-lg-9{padding-right:3.6rem !important;padding-left:3.6rem !important}.px-lg-tiny{padding-right:.135rem !important;padding-left:.135rem !important}.py-lg-0{padding-top:0 !important;padding-bottom:0 !important}.py-lg-1{padding-top:.225rem !important;padding-bottom:.225rem !important}.py-lg-2{padding-top:.45rem !important;padding-bottom:.45rem !important}.py-lg-3{padding-top:.9rem !important;padding-bottom:.9rem !important}.py-lg-4{padding-top:1.35rem !important;padding-bottom:1.35rem !important}.py-lg-5{padding-top:1.8rem !important;padding-bottom:1.8rem !important}.py-lg-6{padding-top:2.25rem !important;padding-bottom:2.25rem !important}.py-lg-7{padding-top:2.7rem !important;padding-bottom:2.7rem !important}.py-lg-8{padding-top:3.15rem !important;padding-bottom:3.15rem !important}.py-lg-9{padding-top:3.6rem !important;padding-bottom:3.6rem !important}.py-lg-tiny{padding-top:.135rem !important;padding-bottom:.135rem !important}.pt-lg-0{padding-top:0 !important}.pt-lg-1{padding-top:.225rem !important}.pt-lg-2{padding-top:.45rem !important}.pt-lg-3{padding-top:.9rem !important}.pt-lg-4{padding-top:1.35rem !important}.pt-lg-5{padding-top:1.8rem !important}.pt-lg-6{padding-top:2.25rem !important}.pt-lg-7{padding-top:2.7rem !important}.pt-lg-8{padding-top:3.15rem !important}.pt-lg-9{padding-top:3.6rem !important}.pt-lg-tiny{padding-top:.135rem !important}.pe-lg-0{padding-right:0 !important}.pe-lg-1{padding-right:.225rem !important}.pe-lg-2{padding-right:.45rem !important}.pe-lg-3{padding-right:.9rem !important}.pe-lg-4{padding-right:1.35rem !important}.pe-lg-5{padding-right:1.8rem !important}.pe-lg-6{padding-right:2.25rem !important}.pe-lg-7{padding-right:2.7rem !important}.pe-lg-8{padding-right:3.15rem !important}.pe-lg-9{padding-right:3.6rem !important}.pe-lg-tiny{padding-right:.135rem !important}.pb-lg-0{padding-bottom:0 !important}.pb-lg-1{padding-bottom:.225rem !important}.pb-lg-2{padding-bottom:.45rem !important}.pb-lg-3{padding-bottom:.9rem !important}.pb-lg-4{padding-bottom:1.35rem !important}.pb-lg-5{padding-bottom:1.8rem !important}.pb-lg-6{padding-bottom:2.25rem !important}.pb-lg-7{padding-bottom:2.7rem !important}.pb-lg-8{padding-bottom:3.15rem !important}.pb-lg-9{padding-bottom:3.6rem !important}.pb-lg-tiny{padding-bottom:.135rem !important}.ps-lg-0{padding-left:0 !important}.ps-lg-1{padding-left:.225rem !important}.ps-lg-2{padding-left:.45rem !important}.ps-lg-3{padding-left:.9rem !important}.ps-lg-4{padding-left:1.35rem !important}.ps-lg-5{padding-left:1.8rem !important}.ps-lg-6{padding-left:2.25rem !important}.ps-lg-7{padding-left:2.7rem !important}.ps-lg-8{padding-left:3.15rem !important}.ps-lg-9{padding-left:3.6rem !important}.ps-lg-tiny{padding-left:.135rem !important}.gap-lg-0{gap:0 !important}.gap-lg-1{gap:.225rem !important}.gap-lg-2{gap:.45rem !important}.gap-lg-3{gap:.9rem !important}.gap-lg-4{gap:1.35rem !important}.gap-lg-5{gap:1.8rem !important}.gap-lg-6{gap:2.25rem !important}.gap-lg-7{gap:2.7rem !important}.gap-lg-8{gap:3.15rem !important}.gap-lg-9{gap:3.6rem !important}.gap-lg-tiny{gap:.135rem !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}.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:.225rem !important}.m-xl-2{margin:.45rem !important}.m-xl-3{margin:.9rem !important}.m-xl-4{margin:1.35rem !important}.m-xl-5{margin:1.8rem !important}.m-xl-6{margin:2.25rem !important}.m-xl-7{margin:2.7rem !important}.m-xl-8{margin:3.15rem !important}.m-xl-9{margin:3.6rem !important}.m-xl-tiny{margin:.135rem !important}.m-xl-auto{margin:auto !important}.mx-xl-0{margin-right:0 !important;margin-left:0 !important}.mx-xl-1{margin-right:.225rem !important;margin-left:.225rem !important}.mx-xl-2{margin-right:.45rem !important;margin-left:.45rem !important}.mx-xl-3{margin-right:.9rem !important;margin-left:.9rem !important}.mx-xl-4{margin-right:1.35rem !important;margin-left:1.35rem !important}.mx-xl-5{margin-right:1.8rem !important;margin-left:1.8rem !important}.mx-xl-6{margin-right:2.25rem !important;margin-left:2.25rem !important}.mx-xl-7{margin-right:2.7rem !important;margin-left:2.7rem !important}.mx-xl-8{margin-right:3.15rem !important;margin-left:3.15rem !important}.mx-xl-9{margin-right:3.6rem !important;margin-left:3.6rem !important}.mx-xl-tiny{margin-right:.135rem !important;margin-left:.135rem !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:.225rem !important;margin-bottom:.225rem !important}.my-xl-2{margin-top:.45rem !important;margin-bottom:.45rem !important}.my-xl-3{margin-top:.9rem !important;margin-bottom:.9rem !important}.my-xl-4{margin-top:1.35rem !important;margin-bottom:1.35rem !important}.my-xl-5{margin-top:1.8rem !important;margin-bottom:1.8rem !important}.my-xl-6{margin-top:2.25rem !important;margin-bottom:2.25rem !important}.my-xl-7{margin-top:2.7rem !important;margin-bottom:2.7rem !important}.my-xl-8{margin-top:3.15rem !important;margin-bottom:3.15rem !important}.my-xl-9{margin-top:3.6rem !important;margin-bottom:3.6rem !important}.my-xl-tiny{margin-top:.135rem !important;margin-bottom:.135rem !important}.my-xl-auto{margin-top:auto !important;margin-bottom:auto !important}.mt-xl-0{margin-top:0 !important}.mt-xl-1{margin-top:.225rem !important}.mt-xl-2{margin-top:.45rem !important}.mt-xl-3{margin-top:.9rem !important}.mt-xl-4{margin-top:1.35rem !important}.mt-xl-5{margin-top:1.8rem !important}.mt-xl-6{margin-top:2.25rem !important}.mt-xl-7{margin-top:2.7rem !important}.mt-xl-8{margin-top:3.15rem !important}.mt-xl-9{margin-top:3.6rem !important}.mt-xl-tiny{margin-top:.135rem !important}.mt-xl-auto{margin-top:auto !important}.me-xl-0{margin-right:0 !important}.me-xl-1{margin-right:.225rem !important}.me-xl-2{margin-right:.45rem !important}.me-xl-3{margin-right:.9rem !important}.me-xl-4{margin-right:1.35rem !important}.me-xl-5{margin-right:1.8rem !important}.me-xl-6{margin-right:2.25rem !important}.me-xl-7{margin-right:2.7rem !important}.me-xl-8{margin-right:3.15rem !important}.me-xl-9{margin-right:3.6rem !important}.me-xl-tiny{margin-right:.135rem !important}.me-xl-auto{margin-right:auto !important}.mb-xl-0{margin-bottom:0 !important}.mb-xl-1{margin-bottom:.225rem !important}.mb-xl-2{margin-bottom:.45rem !important}.mb-xl-3{margin-bottom:.9rem !important}.mb-xl-4{margin-bottom:1.35rem !important}.mb-xl-5{margin-bottom:1.8rem !important}.mb-xl-6{margin-bottom:2.25rem !important}.mb-xl-7{margin-bottom:2.7rem !important}.mb-xl-8{margin-bottom:3.15rem !important}.mb-xl-9{margin-bottom:3.6rem !important}.mb-xl-tiny{margin-bottom:.135rem !important}.mb-xl-auto{margin-bottom:auto !important}.ms-xl-0{margin-left:0 !important}.ms-xl-1{margin-left:.225rem !important}.ms-xl-2{margin-left:.45rem !important}.ms-xl-3{margin-left:.9rem !important}.ms-xl-4{margin-left:1.35rem !important}.ms-xl-5{margin-left:1.8rem !important}.ms-xl-6{margin-left:2.25rem !important}.ms-xl-7{margin-left:2.7rem !important}.ms-xl-8{margin-left:3.15rem !important}.ms-xl-9{margin-left:3.6rem !important}.ms-xl-tiny{margin-left:.135rem !important}.ms-xl-auto{margin-left:auto !important}.m-xl-n1{margin:-0.225rem !important}.m-xl-n2{margin:-0.45rem !important}.m-xl-n3{margin:-0.9rem !important}.m-xl-n4{margin:-1.35rem !important}.m-xl-n5{margin:-1.8rem !important}.m-xl-n6{margin:-2.25rem !important}.m-xl-n7{margin:-2.7rem !important}.m-xl-n8{margin:-3.15rem !important}.m-xl-n9{margin:-3.6rem !important}.m-xl-ntiny{margin:-0.135rem !important}.mx-xl-n1{margin-right:-0.225rem !important;margin-left:-0.225rem !important}.mx-xl-n2{margin-right:-0.45rem !important;margin-left:-0.45rem !important}.mx-xl-n3{margin-right:-0.9rem !important;margin-left:-0.9rem !important}.mx-xl-n4{margin-right:-1.35rem !important;margin-left:-1.35rem !important}.mx-xl-n5{margin-right:-1.8rem !important;margin-left:-1.8rem !important}.mx-xl-n6{margin-right:-2.25rem !important;margin-left:-2.25rem !important}.mx-xl-n7{margin-right:-2.7rem !important;margin-left:-2.7rem !important}.mx-xl-n8{margin-right:-3.15rem !important;margin-left:-3.15rem !important}.mx-xl-n9{margin-right:-3.6rem !important;margin-left:-3.6rem !important}.mx-xl-ntiny{margin-right:-0.135rem !important;margin-left:-0.135rem !important}.my-xl-n1{margin-top:-0.225rem !important;margin-bottom:-0.225rem !important}.my-xl-n2{margin-top:-0.45rem !important;margin-bottom:-0.45rem !important}.my-xl-n3{margin-top:-0.9rem !important;margin-bottom:-0.9rem !important}.my-xl-n4{margin-top:-1.35rem !important;margin-bottom:-1.35rem !important}.my-xl-n5{margin-top:-1.8rem !important;margin-bottom:-1.8rem !important}.my-xl-n6{margin-top:-2.25rem !important;margin-bottom:-2.25rem !important}.my-xl-n7{margin-top:-2.7rem !important;margin-bottom:-2.7rem !important}.my-xl-n8{margin-top:-3.15rem !important;margin-bottom:-3.15rem !important}.my-xl-n9{margin-top:-3.6rem !important;margin-bottom:-3.6rem !important}.my-xl-ntiny{margin-top:-0.135rem !important;margin-bottom:-0.135rem !important}.mt-xl-n1{margin-top:-0.225rem !important}.mt-xl-n2{margin-top:-0.45rem !important}.mt-xl-n3{margin-top:-0.9rem !important}.mt-xl-n4{margin-top:-1.35rem !important}.mt-xl-n5{margin-top:-1.8rem !important}.mt-xl-n6{margin-top:-2.25rem !important}.mt-xl-n7{margin-top:-2.7rem !important}.mt-xl-n8{margin-top:-3.15rem !important}.mt-xl-n9{margin-top:-3.6rem !important}.mt-xl-ntiny{margin-top:-0.135rem !important}.me-xl-n1{margin-right:-0.225rem !important}.me-xl-n2{margin-right:-0.45rem !important}.me-xl-n3{margin-right:-0.9rem !important}.me-xl-n4{margin-right:-1.35rem !important}.me-xl-n5{margin-right:-1.8rem !important}.me-xl-n6{margin-right:-2.25rem !important}.me-xl-n7{margin-right:-2.7rem !important}.me-xl-n8{margin-right:-3.15rem !important}.me-xl-n9{margin-right:-3.6rem !important}.me-xl-ntiny{margin-right:-0.135rem !important}.mb-xl-n1{margin-bottom:-0.225rem !important}.mb-xl-n2{margin-bottom:-0.45rem !important}.mb-xl-n3{margin-bottom:-0.9rem !important}.mb-xl-n4{margin-bottom:-1.35rem !important}.mb-xl-n5{margin-bottom:-1.8rem !important}.mb-xl-n6{margin-bottom:-2.25rem !important}.mb-xl-n7{margin-bottom:-2.7rem !important}.mb-xl-n8{margin-bottom:-3.15rem !important}.mb-xl-n9{margin-bottom:-3.6rem !important}.mb-xl-ntiny{margin-bottom:-0.135rem !important}.ms-xl-n1{margin-left:-0.225rem !important}.ms-xl-n2{margin-left:-0.45rem !important}.ms-xl-n3{margin-left:-0.9rem !important}.ms-xl-n4{margin-left:-1.35rem !important}.ms-xl-n5{margin-left:-1.8rem !important}.ms-xl-n6{margin-left:-2.25rem !important}.ms-xl-n7{margin-left:-2.7rem !important}.ms-xl-n8{margin-left:-3.15rem !important}.ms-xl-n9{margin-left:-3.6rem !important}.ms-xl-ntiny{margin-left:-0.135rem !important}.p-xl-0{padding:0 !important}.p-xl-1{padding:.225rem !important}.p-xl-2{padding:.45rem !important}.p-xl-3{padding:.9rem !important}.p-xl-4{padding:1.35rem !important}.p-xl-5{padding:1.8rem !important}.p-xl-6{padding:2.25rem !important}.p-xl-7{padding:2.7rem !important}.p-xl-8{padding:3.15rem !important}.p-xl-9{padding:3.6rem !important}.p-xl-tiny{padding:.135rem !important}.px-xl-0{padding-right:0 !important;padding-left:0 !important}.px-xl-1{padding-right:.225rem !important;padding-left:.225rem !important}.px-xl-2{padding-right:.45rem !important;padding-left:.45rem !important}.px-xl-3{padding-right:.9rem !important;padding-left:.9rem !important}.px-xl-4{padding-right:1.35rem !important;padding-left:1.35rem !important}.px-xl-5{padding-right:1.8rem !important;padding-left:1.8rem !important}.px-xl-6{padding-right:2.25rem !important;padding-left:2.25rem !important}.px-xl-7{padding-right:2.7rem !important;padding-left:2.7rem !important}.px-xl-8{padding-right:3.15rem !important;padding-left:3.15rem !important}.px-xl-9{padding-right:3.6rem !important;padding-left:3.6rem !important}.px-xl-tiny{padding-right:.135rem !important;padding-left:.135rem !important}.py-xl-0{padding-top:0 !important;padding-bottom:0 !important}.py-xl-1{padding-top:.225rem !important;padding-bottom:.225rem !important}.py-xl-2{padding-top:.45rem !important;padding-bottom:.45rem !important}.py-xl-3{padding-top:.9rem !important;padding-bottom:.9rem !important}.py-xl-4{padding-top:1.35rem !important;padding-bottom:1.35rem !important}.py-xl-5{padding-top:1.8rem !important;padding-bottom:1.8rem !important}.py-xl-6{padding-top:2.25rem !important;padding-bottom:2.25rem !important}.py-xl-7{padding-top:2.7rem !important;padding-bottom:2.7rem !important}.py-xl-8{padding-top:3.15rem !important;padding-bottom:3.15rem !important}.py-xl-9{padding-top:3.6rem !important;padding-bottom:3.6rem !important}.py-xl-tiny{padding-top:.135rem !important;padding-bottom:.135rem !important}.pt-xl-0{padding-top:0 !important}.pt-xl-1{padding-top:.225rem !important}.pt-xl-2{padding-top:.45rem !important}.pt-xl-3{padding-top:.9rem !important}.pt-xl-4{padding-top:1.35rem !important}.pt-xl-5{padding-top:1.8rem !important}.pt-xl-6{padding-top:2.25rem !important}.pt-xl-7{padding-top:2.7rem !important}.pt-xl-8{padding-top:3.15rem !important}.pt-xl-9{padding-top:3.6rem !important}.pt-xl-tiny{padding-top:.135rem !important}.pe-xl-0{padding-right:0 !important}.pe-xl-1{padding-right:.225rem !important}.pe-xl-2{padding-right:.45rem !important}.pe-xl-3{padding-right:.9rem !important}.pe-xl-4{padding-right:1.35rem !important}.pe-xl-5{padding-right:1.8rem !important}.pe-xl-6{padding-right:2.25rem !important}.pe-xl-7{padding-right:2.7rem !important}.pe-xl-8{padding-right:3.15rem !important}.pe-xl-9{padding-right:3.6rem !important}.pe-xl-tiny{padding-right:.135rem !important}.pb-xl-0{padding-bottom:0 !important}.pb-xl-1{padding-bottom:.225rem !important}.pb-xl-2{padding-bottom:.45rem !important}.pb-xl-3{padding-bottom:.9rem !important}.pb-xl-4{padding-bottom:1.35rem !important}.pb-xl-5{padding-bottom:1.8rem !important}.pb-xl-6{padding-bottom:2.25rem !important}.pb-xl-7{padding-bottom:2.7rem !important}.pb-xl-8{padding-bottom:3.15rem !important}.pb-xl-9{padding-bottom:3.6rem !important}.pb-xl-tiny{padding-bottom:.135rem !important}.ps-xl-0{padding-left:0 !important}.ps-xl-1{padding-left:.225rem !important}.ps-xl-2{padding-left:.45rem !important}.ps-xl-3{padding-left:.9rem !important}.ps-xl-4{padding-left:1.35rem !important}.ps-xl-5{padding-left:1.8rem !important}.ps-xl-6{padding-left:2.25rem !important}.ps-xl-7{padding-left:2.7rem !important}.ps-xl-8{padding-left:3.15rem !important}.ps-xl-9{padding-left:3.6rem !important}.ps-xl-tiny{padding-left:.135rem !important}.gap-xl-0{gap:0 !important}.gap-xl-1{gap:.225rem !important}.gap-xl-2{gap:.45rem !important}.gap-xl-3{gap:.9rem !important}.gap-xl-4{gap:1.35rem !important}.gap-xl-5{gap:1.8rem !important}.gap-xl-6{gap:2.25rem !important}.gap-xl-7{gap:2.7rem !important}.gap-xl-8{gap:3.15rem !important}.gap-xl-9{gap:3.6rem !important}.gap-xl-tiny{gap:.135rem !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}.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:.225rem !important}.m-xxl-2{margin:.45rem !important}.m-xxl-3{margin:.9rem !important}.m-xxl-4{margin:1.35rem !important}.m-xxl-5{margin:1.8rem !important}.m-xxl-6{margin:2.25rem !important}.m-xxl-7{margin:2.7rem !important}.m-xxl-8{margin:3.15rem !important}.m-xxl-9{margin:3.6rem !important}.m-xxl-tiny{margin:.135rem !important}.m-xxl-auto{margin:auto !important}.mx-xxl-0{margin-right:0 !important;margin-left:0 !important}.mx-xxl-1{margin-right:.225rem !important;margin-left:.225rem !important}.mx-xxl-2{margin-right:.45rem !important;margin-left:.45rem !important}.mx-xxl-3{margin-right:.9rem !important;margin-left:.9rem !important}.mx-xxl-4{margin-right:1.35rem !important;margin-left:1.35rem !important}.mx-xxl-5{margin-right:1.8rem !important;margin-left:1.8rem !important}.mx-xxl-6{margin-right:2.25rem !important;margin-left:2.25rem !important}.mx-xxl-7{margin-right:2.7rem !important;margin-left:2.7rem !important}.mx-xxl-8{margin-right:3.15rem !important;margin-left:3.15rem !important}.mx-xxl-9{margin-right:3.6rem !important;margin-left:3.6rem !important}.mx-xxl-tiny{margin-right:.135rem !important;margin-left:.135rem !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:.225rem !important;margin-bottom:.225rem !important}.my-xxl-2{margin-top:.45rem !important;margin-bottom:.45rem !important}.my-xxl-3{margin-top:.9rem !important;margin-bottom:.9rem !important}.my-xxl-4{margin-top:1.35rem !important;margin-bottom:1.35rem !important}.my-xxl-5{margin-top:1.8rem !important;margin-bottom:1.8rem !important}.my-xxl-6{margin-top:2.25rem !important;margin-bottom:2.25rem !important}.my-xxl-7{margin-top:2.7rem !important;margin-bottom:2.7rem !important}.my-xxl-8{margin-top:3.15rem !important;margin-bottom:3.15rem !important}.my-xxl-9{margin-top:3.6rem !important;margin-bottom:3.6rem !important}.my-xxl-tiny{margin-top:.135rem !important;margin-bottom:.135rem !important}.my-xxl-auto{margin-top:auto !important;margin-bottom:auto !important}.mt-xxl-0{margin-top:0 !important}.mt-xxl-1{margin-top:.225rem !important}.mt-xxl-2{margin-top:.45rem !important}.mt-xxl-3{margin-top:.9rem !important}.mt-xxl-4{margin-top:1.35rem !important}.mt-xxl-5{margin-top:1.8rem !important}.mt-xxl-6{margin-top:2.25rem !important}.mt-xxl-7{margin-top:2.7rem !important}.mt-xxl-8{margin-top:3.15rem !important}.mt-xxl-9{margin-top:3.6rem !important}.mt-xxl-tiny{margin-top:.135rem !important}.mt-xxl-auto{margin-top:auto !important}.me-xxl-0{margin-right:0 !important}.me-xxl-1{margin-right:.225rem !important}.me-xxl-2{margin-right:.45rem !important}.me-xxl-3{margin-right:.9rem !important}.me-xxl-4{margin-right:1.35rem !important}.me-xxl-5{margin-right:1.8rem !important}.me-xxl-6{margin-right:2.25rem !important}.me-xxl-7{margin-right:2.7rem !important}.me-xxl-8{margin-right:3.15rem !important}.me-xxl-9{margin-right:3.6rem !important}.me-xxl-tiny{margin-right:.135rem !important}.me-xxl-auto{margin-right:auto !important}.mb-xxl-0{margin-bottom:0 !important}.mb-xxl-1{margin-bottom:.225rem !important}.mb-xxl-2{margin-bottom:.45rem !important}.mb-xxl-3{margin-bottom:.9rem !important}.mb-xxl-4{margin-bottom:1.35rem !important}.mb-xxl-5{margin-bottom:1.8rem !important}.mb-xxl-6{margin-bottom:2.25rem !important}.mb-xxl-7{margin-bottom:2.7rem !important}.mb-xxl-8{margin-bottom:3.15rem !important}.mb-xxl-9{margin-bottom:3.6rem !important}.mb-xxl-tiny{margin-bottom:.135rem !important}.mb-xxl-auto{margin-bottom:auto !important}.ms-xxl-0{margin-left:0 !important}.ms-xxl-1{margin-left:.225rem !important}.ms-xxl-2{margin-left:.45rem !important}.ms-xxl-3{margin-left:.9rem !important}.ms-xxl-4{margin-left:1.35rem !important}.ms-xxl-5{margin-left:1.8rem !important}.ms-xxl-6{margin-left:2.25rem !important}.ms-xxl-7{margin-left:2.7rem !important}.ms-xxl-8{margin-left:3.15rem !important}.ms-xxl-9{margin-left:3.6rem !important}.ms-xxl-tiny{margin-left:.135rem !important}.ms-xxl-auto{margin-left:auto !important}.m-xxl-n1{margin:-0.225rem !important}.m-xxl-n2{margin:-0.45rem !important}.m-xxl-n3{margin:-0.9rem !important}.m-xxl-n4{margin:-1.35rem !important}.m-xxl-n5{margin:-1.8rem !important}.m-xxl-n6{margin:-2.25rem !important}.m-xxl-n7{margin:-2.7rem !important}.m-xxl-n8{margin:-3.15rem !important}.m-xxl-n9{margin:-3.6rem !important}.m-xxl-ntiny{margin:-0.135rem !important}.mx-xxl-n1{margin-right:-0.225rem !important;margin-left:-0.225rem !important}.mx-xxl-n2{margin-right:-0.45rem !important;margin-left:-0.45rem !important}.mx-xxl-n3{margin-right:-0.9rem !important;margin-left:-0.9rem !important}.mx-xxl-n4{margin-right:-1.35rem !important;margin-left:-1.35rem !important}.mx-xxl-n5{margin-right:-1.8rem !important;margin-left:-1.8rem !important}.mx-xxl-n6{margin-right:-2.25rem !important;margin-left:-2.25rem !important}.mx-xxl-n7{margin-right:-2.7rem !important;margin-left:-2.7rem !important}.mx-xxl-n8{margin-right:-3.15rem !important;margin-left:-3.15rem !important}.mx-xxl-n9{margin-right:-3.6rem !important;margin-left:-3.6rem !important}.mx-xxl-ntiny{margin-right:-0.135rem !important;margin-left:-0.135rem !important}.my-xxl-n1{margin-top:-0.225rem !important;margin-bottom:-0.225rem !important}.my-xxl-n2{margin-top:-0.45rem !important;margin-bottom:-0.45rem !important}.my-xxl-n3{margin-top:-0.9rem !important;margin-bottom:-0.9rem !important}.my-xxl-n4{margin-top:-1.35rem !important;margin-bottom:-1.35rem !important}.my-xxl-n5{margin-top:-1.8rem !important;margin-bottom:-1.8rem !important}.my-xxl-n6{margin-top:-2.25rem !important;margin-bottom:-2.25rem !important}.my-xxl-n7{margin-top:-2.7rem !important;margin-bottom:-2.7rem !important}.my-xxl-n8{margin-top:-3.15rem !important;margin-bottom:-3.15rem !important}.my-xxl-n9{margin-top:-3.6rem !important;margin-bottom:-3.6rem !important}.my-xxl-ntiny{margin-top:-0.135rem !important;margin-bottom:-0.135rem !important}.mt-xxl-n1{margin-top:-0.225rem !important}.mt-xxl-n2{margin-top:-0.45rem !important}.mt-xxl-n3{margin-top:-0.9rem !important}.mt-xxl-n4{margin-top:-1.35rem !important}.mt-xxl-n5{margin-top:-1.8rem !important}.mt-xxl-n6{margin-top:-2.25rem !important}.mt-xxl-n7{margin-top:-2.7rem !important}.mt-xxl-n8{margin-top:-3.15rem !important}.mt-xxl-n9{margin-top:-3.6rem !important}.mt-xxl-ntiny{margin-top:-0.135rem !important}.me-xxl-n1{margin-right:-0.225rem !important}.me-xxl-n2{margin-right:-0.45rem !important}.me-xxl-n3{margin-right:-0.9rem !important}.me-xxl-n4{margin-right:-1.35rem !important}.me-xxl-n5{margin-right:-1.8rem !important}.me-xxl-n6{margin-right:-2.25rem !important}.me-xxl-n7{margin-right:-2.7rem !important}.me-xxl-n8{margin-right:-3.15rem !important}.me-xxl-n9{margin-right:-3.6rem !important}.me-xxl-ntiny{margin-right:-0.135rem !important}.mb-xxl-n1{margin-bottom:-0.225rem !important}.mb-xxl-n2{margin-bottom:-0.45rem !important}.mb-xxl-n3{margin-bottom:-0.9rem !important}.mb-xxl-n4{margin-bottom:-1.35rem !important}.mb-xxl-n5{margin-bottom:-1.8rem !important}.mb-xxl-n6{margin-bottom:-2.25rem !important}.mb-xxl-n7{margin-bottom:-2.7rem !important}.mb-xxl-n8{margin-bottom:-3.15rem !important}.mb-xxl-n9{margin-bottom:-3.6rem !important}.mb-xxl-ntiny{margin-bottom:-0.135rem !important}.ms-xxl-n1{margin-left:-0.225rem !important}.ms-xxl-n2{margin-left:-0.45rem !important}.ms-xxl-n3{margin-left:-0.9rem !important}.ms-xxl-n4{margin-left:-1.35rem !important}.ms-xxl-n5{margin-left:-1.8rem !important}.ms-xxl-n6{margin-left:-2.25rem !important}.ms-xxl-n7{margin-left:-2.7rem !important}.ms-xxl-n8{margin-left:-3.15rem !important}.ms-xxl-n9{margin-left:-3.6rem !important}.ms-xxl-ntiny{margin-left:-0.135rem !important}.p-xxl-0{padding:0 !important}.p-xxl-1{padding:.225rem !important}.p-xxl-2{padding:.45rem !important}.p-xxl-3{padding:.9rem !important}.p-xxl-4{padding:1.35rem !important}.p-xxl-5{padding:1.8rem !important}.p-xxl-6{padding:2.25rem !important}.p-xxl-7{padding:2.7rem !important}.p-xxl-8{padding:3.15rem !important}.p-xxl-9{padding:3.6rem !important}.p-xxl-tiny{padding:.135rem !important}.px-xxl-0{padding-right:0 !important;padding-left:0 !important}.px-xxl-1{padding-right:.225rem !important;padding-left:.225rem !important}.px-xxl-2{padding-right:.45rem !important;padding-left:.45rem !important}.px-xxl-3{padding-right:.9rem !important;padding-left:.9rem !important}.px-xxl-4{padding-right:1.35rem !important;padding-left:1.35rem !important}.px-xxl-5{padding-right:1.8rem !important;padding-left:1.8rem !important}.px-xxl-6{padding-right:2.25rem !important;padding-left:2.25rem !important}.px-xxl-7{padding-right:2.7rem !important;padding-left:2.7rem !important}.px-xxl-8{padding-right:3.15rem !important;padding-left:3.15rem !important}.px-xxl-9{padding-right:3.6rem !important;padding-left:3.6rem !important}.px-xxl-tiny{padding-right:.135rem !important;padding-left:.135rem !important}.py-xxl-0{padding-top:0 !important;padding-bottom:0 !important}.py-xxl-1{padding-top:.225rem !important;padding-bottom:.225rem !important}.py-xxl-2{padding-top:.45rem !important;padding-bottom:.45rem !important}.py-xxl-3{padding-top:.9rem !important;padding-bottom:.9rem !important}.py-xxl-4{padding-top:1.35rem !important;padding-bottom:1.35rem !important}.py-xxl-5{padding-top:1.8rem !important;padding-bottom:1.8rem !important}.py-xxl-6{padding-top:2.25rem !important;padding-bottom:2.25rem !important}.py-xxl-7{padding-top:2.7rem !important;padding-bottom:2.7rem !important}.py-xxl-8{padding-top:3.15rem !important;padding-bottom:3.15rem !important}.py-xxl-9{padding-top:3.6rem !important;padding-bottom:3.6rem !important}.py-xxl-tiny{padding-top:.135rem !important;padding-bottom:.135rem !important}.pt-xxl-0{padding-top:0 !important}.pt-xxl-1{padding-top:.225rem !important}.pt-xxl-2{padding-top:.45rem !important}.pt-xxl-3{padding-top:.9rem !important}.pt-xxl-4{padding-top:1.35rem !important}.pt-xxl-5{padding-top:1.8rem !important}.pt-xxl-6{padding-top:2.25rem !important}.pt-xxl-7{padding-top:2.7rem !important}.pt-xxl-8{padding-top:3.15rem !important}.pt-xxl-9{padding-top:3.6rem !important}.pt-xxl-tiny{padding-top:.135rem !important}.pe-xxl-0{padding-right:0 !important}.pe-xxl-1{padding-right:.225rem !important}.pe-xxl-2{padding-right:.45rem !important}.pe-xxl-3{padding-right:.9rem !important}.pe-xxl-4{padding-right:1.35rem !important}.pe-xxl-5{padding-right:1.8rem !important}.pe-xxl-6{padding-right:2.25rem !important}.pe-xxl-7{padding-right:2.7rem !important}.pe-xxl-8{padding-right:3.15rem !important}.pe-xxl-9{padding-right:3.6rem !important}.pe-xxl-tiny{padding-right:.135rem !important}.pb-xxl-0{padding-bottom:0 !important}.pb-xxl-1{padding-bottom:.225rem !important}.pb-xxl-2{padding-bottom:.45rem !important}.pb-xxl-3{padding-bottom:.9rem !important}.pb-xxl-4{padding-bottom:1.35rem !important}.pb-xxl-5{padding-bottom:1.8rem !important}.pb-xxl-6{padding-bottom:2.25rem !important}.pb-xxl-7{padding-bottom:2.7rem !important}.pb-xxl-8{padding-bottom:3.15rem !important}.pb-xxl-9{padding-bottom:3.6rem !important}.pb-xxl-tiny{padding-bottom:.135rem !important}.ps-xxl-0{padding-left:0 !important}.ps-xxl-1{padding-left:.225rem !important}.ps-xxl-2{padding-left:.45rem !important}.ps-xxl-3{padding-left:.9rem !important}.ps-xxl-4{padding-left:1.35rem !important}.ps-xxl-5{padding-left:1.8rem !important}.ps-xxl-6{padding-left:2.25rem !important}.ps-xxl-7{padding-left:2.7rem !important}.ps-xxl-8{padding-left:3.15rem !important}.ps-xxl-9{padding-left:3.6rem !important}.ps-xxl-tiny{padding-left:.135rem !important}.gap-xxl-0{gap:0 !important}.gap-xxl-1{gap:.225rem !important}.gap-xxl-2{gap:.45rem !important}.gap-xxl-3{gap:.9rem !important}.gap-xxl-4{gap:1.35rem !important}.gap-xxl-5{gap:1.8rem !important}.gap-xxl-6{gap:2.25rem !important}.gap-xxl-7{gap:2.7rem !important}.gap-xxl-8{gap:3.15rem !important}.gap-xxl-9{gap:3.6rem !important}.gap-xxl-tiny{gap:.135rem !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: 1900px){.float-xxxl-start{float:left !important}.float-xxxl-end{float:right !important}.float-xxxl-none{float:none !important}.d-xxxl-inline{display:inline !important}.d-xxxl-inline-block{display:inline-block !important}.d-xxxl-block{display:block !important}.d-xxxl-grid{display:grid !important}.d-xxxl-table{display:table !important}.d-xxxl-table-row{display:table-row !important}.d-xxxl-table-cell{display:table-cell !important}.d-xxxl-flex{display:flex !important}.d-xxxl-inline-flex{display:inline-flex !important}.d-xxxl-none{display:none !important}.flex-xxxl-fill{flex:1 1 auto !important}.flex-xxxl-row{flex-direction:row !important}.flex-xxxl-column{flex-direction:column !important}.flex-xxxl-row-reverse{flex-direction:row-reverse !important}.flex-xxxl-column-reverse{flex-direction:column-reverse !important}.flex-xxxl-grow-0{flex-grow:0 !important}.flex-xxxl-grow-1{flex-grow:1 !important}.flex-xxxl-shrink-0{flex-shrink:0 !important}.flex-xxxl-shrink-1{flex-shrink:1 !important}.flex-xxxl-wrap{flex-wrap:wrap !important}.flex-xxxl-nowrap{flex-wrap:nowrap !important}.flex-xxxl-wrap-reverse{flex-wrap:wrap-reverse !important}.justify-content-xxxl-start{justify-content:flex-start !important}.justify-content-xxxl-end{justify-content:flex-end !important}.justify-content-xxxl-center{justify-content:center !important}.justify-content-xxxl-between{justify-content:space-between !important}.justify-content-xxxl-around{justify-content:space-around !important}.justify-content-xxxl-evenly{justify-content:space-evenly !important}.align-items-xxxl-start{align-items:flex-start !important}.align-items-xxxl-end{align-items:flex-end !important}.align-items-xxxl-center{align-items:center !important}.align-items-xxxl-baseline{align-items:baseline !important}.align-items-xxxl-stretch{align-items:stretch !important}.align-content-xxxl-start{align-content:flex-start !important}.align-content-xxxl-end{align-content:flex-end !important}.align-content-xxxl-center{align-content:center !important}.align-content-xxxl-between{align-content:space-between !important}.align-content-xxxl-around{align-content:space-around !important}.align-content-xxxl-stretch{align-content:stretch !important}.align-self-xxxl-auto{align-self:auto !important}.align-self-xxxl-start{align-self:flex-start !important}.align-self-xxxl-end{align-self:flex-end !important}.align-self-xxxl-center{align-self:center !important}.align-self-xxxl-baseline{align-self:baseline !important}.align-self-xxxl-stretch{align-self:stretch !important}.order-xxxl-first{order:-1 !important}.order-xxxl-0{order:0 !important}.order-xxxl-1{order:1 !important}.order-xxxl-2{order:2 !important}.order-xxxl-3{order:3 !important}.order-xxxl-4{order:4 !important}.order-xxxl-5{order:5 !important}.order-xxxl-last{order:6 !important}.m-xxxl-0{margin:0 !important}.m-xxxl-1{margin:.225rem !important}.m-xxxl-2{margin:.45rem !important}.m-xxxl-3{margin:.9rem !important}.m-xxxl-4{margin:1.35rem !important}.m-xxxl-5{margin:1.8rem !important}.m-xxxl-6{margin:2.25rem !important}.m-xxxl-7{margin:2.7rem !important}.m-xxxl-8{margin:3.15rem !important}.m-xxxl-9{margin:3.6rem !important}.m-xxxl-tiny{margin:.135rem !important}.m-xxxl-auto{margin:auto !important}.mx-xxxl-0{margin-right:0 !important;margin-left:0 !important}.mx-xxxl-1{margin-right:.225rem !important;margin-left:.225rem !important}.mx-xxxl-2{margin-right:.45rem !important;margin-left:.45rem !important}.mx-xxxl-3{margin-right:.9rem !important;margin-left:.9rem !important}.mx-xxxl-4{margin-right:1.35rem !important;margin-left:1.35rem !important}.mx-xxxl-5{margin-right:1.8rem !important;margin-left:1.8rem !important}.mx-xxxl-6{margin-right:2.25rem !important;margin-left:2.25rem !important}.mx-xxxl-7{margin-right:2.7rem !important;margin-left:2.7rem !important}.mx-xxxl-8{margin-right:3.15rem !important;margin-left:3.15rem !important}.mx-xxxl-9{margin-right:3.6rem !important;margin-left:3.6rem !important}.mx-xxxl-tiny{margin-right:.135rem !important;margin-left:.135rem !important}.mx-xxxl-auto{margin-right:auto !important;margin-left:auto !important}.my-xxxl-0{margin-top:0 !important;margin-bottom:0 !important}.my-xxxl-1{margin-top:.225rem !important;margin-bottom:.225rem !important}.my-xxxl-2{margin-top:.45rem !important;margin-bottom:.45rem !important}.my-xxxl-3{margin-top:.9rem !important;margin-bottom:.9rem !important}.my-xxxl-4{margin-top:1.35rem !important;margin-bottom:1.35rem !important}.my-xxxl-5{margin-top:1.8rem !important;margin-bottom:1.8rem !important}.my-xxxl-6{margin-top:2.25rem !important;margin-bottom:2.25rem !important}.my-xxxl-7{margin-top:2.7rem !important;margin-bottom:2.7rem !important}.my-xxxl-8{margin-top:3.15rem !important;margin-bottom:3.15rem !important}.my-xxxl-9{margin-top:3.6rem !important;margin-bottom:3.6rem !important}.my-xxxl-tiny{margin-top:.135rem !important;margin-bottom:.135rem !important}.my-xxxl-auto{margin-top:auto !important;margin-bottom:auto !important}.mt-xxxl-0{margin-top:0 !important}.mt-xxxl-1{margin-top:.225rem !important}.mt-xxxl-2{margin-top:.45rem !important}.mt-xxxl-3{margin-top:.9rem !important}.mt-xxxl-4{margin-top:1.35rem !important}.mt-xxxl-5{margin-top:1.8rem !important}.mt-xxxl-6{margin-top:2.25rem !important}.mt-xxxl-7{margin-top:2.7rem !important}.mt-xxxl-8{margin-top:3.15rem !important}.mt-xxxl-9{margin-top:3.6rem !important}.mt-xxxl-tiny{margin-top:.135rem !important}.mt-xxxl-auto{margin-top:auto !important}.me-xxxl-0{margin-right:0 !important}.me-xxxl-1{margin-right:.225rem !important}.me-xxxl-2{margin-right:.45rem !important}.me-xxxl-3{margin-right:.9rem !important}.me-xxxl-4{margin-right:1.35rem !important}.me-xxxl-5{margin-right:1.8rem !important}.me-xxxl-6{margin-right:2.25rem !important}.me-xxxl-7{margin-right:2.7rem !important}.me-xxxl-8{margin-right:3.15rem !important}.me-xxxl-9{margin-right:3.6rem !important}.me-xxxl-tiny{margin-right:.135rem !important}.me-xxxl-auto{margin-right:auto !important}.mb-xxxl-0{margin-bottom:0 !important}.mb-xxxl-1{margin-bottom:.225rem !important}.mb-xxxl-2{margin-bottom:.45rem !important}.mb-xxxl-3{margin-bottom:.9rem !important}.mb-xxxl-4{margin-bottom:1.35rem !important}.mb-xxxl-5{margin-bottom:1.8rem !important}.mb-xxxl-6{margin-bottom:2.25rem !important}.mb-xxxl-7{margin-bottom:2.7rem !important}.mb-xxxl-8{margin-bottom:3.15rem !important}.mb-xxxl-9{margin-bottom:3.6rem !important}.mb-xxxl-tiny{margin-bottom:.135rem !important}.mb-xxxl-auto{margin-bottom:auto !important}.ms-xxxl-0{margin-left:0 !important}.ms-xxxl-1{margin-left:.225rem !important}.ms-xxxl-2{margin-left:.45rem !important}.ms-xxxl-3{margin-left:.9rem !important}.ms-xxxl-4{margin-left:1.35rem !important}.ms-xxxl-5{margin-left:1.8rem !important}.ms-xxxl-6{margin-left:2.25rem !important}.ms-xxxl-7{margin-left:2.7rem !important}.ms-xxxl-8{margin-left:3.15rem !important}.ms-xxxl-9{margin-left:3.6rem !important}.ms-xxxl-tiny{margin-left:.135rem !important}.ms-xxxl-auto{margin-left:auto !important}.m-xxxl-n1{margin:-0.225rem !important}.m-xxxl-n2{margin:-0.45rem !important}.m-xxxl-n3{margin:-0.9rem !important}.m-xxxl-n4{margin:-1.35rem !important}.m-xxxl-n5{margin:-1.8rem !important}.m-xxxl-n6{margin:-2.25rem !important}.m-xxxl-n7{margin:-2.7rem !important}.m-xxxl-n8{margin:-3.15rem !important}.m-xxxl-n9{margin:-3.6rem !important}.m-xxxl-ntiny{margin:-0.135rem !important}.mx-xxxl-n1{margin-right:-0.225rem !important;margin-left:-0.225rem !important}.mx-xxxl-n2{margin-right:-0.45rem !important;margin-left:-0.45rem !important}.mx-xxxl-n3{margin-right:-0.9rem !important;margin-left:-0.9rem !important}.mx-xxxl-n4{margin-right:-1.35rem !important;margin-left:-1.35rem !important}.mx-xxxl-n5{margin-right:-1.8rem !important;margin-left:-1.8rem !important}.mx-xxxl-n6{margin-right:-2.25rem !important;margin-left:-2.25rem !important}.mx-xxxl-n7{margin-right:-2.7rem !important;margin-left:-2.7rem !important}.mx-xxxl-n8{margin-right:-3.15rem !important;margin-left:-3.15rem !important}.mx-xxxl-n9{margin-right:-3.6rem !important;margin-left:-3.6rem !important}.mx-xxxl-ntiny{margin-right:-0.135rem !important;margin-left:-0.135rem !important}.my-xxxl-n1{margin-top:-0.225rem !important;margin-bottom:-0.225rem !important}.my-xxxl-n2{margin-top:-0.45rem !important;margin-bottom:-0.45rem !important}.my-xxxl-n3{margin-top:-0.9rem !important;margin-bottom:-0.9rem !important}.my-xxxl-n4{margin-top:-1.35rem !important;margin-bottom:-1.35rem !important}.my-xxxl-n5{margin-top:-1.8rem !important;margin-bottom:-1.8rem !important}.my-xxxl-n6{margin-top:-2.25rem !important;margin-bottom:-2.25rem !important}.my-xxxl-n7{margin-top:-2.7rem !important;margin-bottom:-2.7rem !important}.my-xxxl-n8{margin-top:-3.15rem !important;margin-bottom:-3.15rem !important}.my-xxxl-n9{margin-top:-3.6rem !important;margin-bottom:-3.6rem !important}.my-xxxl-ntiny{margin-top:-0.135rem !important;margin-bottom:-0.135rem !important}.mt-xxxl-n1{margin-top:-0.225rem !important}.mt-xxxl-n2{margin-top:-0.45rem !important}.mt-xxxl-n3{margin-top:-0.9rem !important}.mt-xxxl-n4{margin-top:-1.35rem !important}.mt-xxxl-n5{margin-top:-1.8rem !important}.mt-xxxl-n6{margin-top:-2.25rem !important}.mt-xxxl-n7{margin-top:-2.7rem !important}.mt-xxxl-n8{margin-top:-3.15rem !important}.mt-xxxl-n9{margin-top:-3.6rem !important}.mt-xxxl-ntiny{margin-top:-0.135rem !important}.me-xxxl-n1{margin-right:-0.225rem !important}.me-xxxl-n2{margin-right:-0.45rem !important}.me-xxxl-n3{margin-right:-0.9rem !important}.me-xxxl-n4{margin-right:-1.35rem !important}.me-xxxl-n5{margin-right:-1.8rem !important}.me-xxxl-n6{margin-right:-2.25rem !important}.me-xxxl-n7{margin-right:-2.7rem !important}.me-xxxl-n8{margin-right:-3.15rem !important}.me-xxxl-n9{margin-right:-3.6rem !important}.me-xxxl-ntiny{margin-right:-0.135rem !important}.mb-xxxl-n1{margin-bottom:-0.225rem !important}.mb-xxxl-n2{margin-bottom:-0.45rem !important}.mb-xxxl-n3{margin-bottom:-0.9rem !important}.mb-xxxl-n4{margin-bottom:-1.35rem !important}.mb-xxxl-n5{margin-bottom:-1.8rem !important}.mb-xxxl-n6{margin-bottom:-2.25rem !important}.mb-xxxl-n7{margin-bottom:-2.7rem !important}.mb-xxxl-n8{margin-bottom:-3.15rem !important}.mb-xxxl-n9{margin-bottom:-3.6rem !important}.mb-xxxl-ntiny{margin-bottom:-0.135rem !important}.ms-xxxl-n1{margin-left:-0.225rem !important}.ms-xxxl-n2{margin-left:-0.45rem !important}.ms-xxxl-n3{margin-left:-0.9rem !important}.ms-xxxl-n4{margin-left:-1.35rem !important}.ms-xxxl-n5{margin-left:-1.8rem !important}.ms-xxxl-n6{margin-left:-2.25rem !important}.ms-xxxl-n7{margin-left:-2.7rem !important}.ms-xxxl-n8{margin-left:-3.15rem !important}.ms-xxxl-n9{margin-left:-3.6rem !important}.ms-xxxl-ntiny{margin-left:-0.135rem !important}.p-xxxl-0{padding:0 !important}.p-xxxl-1{padding:.225rem !important}.p-xxxl-2{padding:.45rem !important}.p-xxxl-3{padding:.9rem !important}.p-xxxl-4{padding:1.35rem !important}.p-xxxl-5{padding:1.8rem !important}.p-xxxl-6{padding:2.25rem !important}.p-xxxl-7{padding:2.7rem !important}.p-xxxl-8{padding:3.15rem !important}.p-xxxl-9{padding:3.6rem !important}.p-xxxl-tiny{padding:.135rem !important}.px-xxxl-0{padding-right:0 !important;padding-left:0 !important}.px-xxxl-1{padding-right:.225rem !important;padding-left:.225rem !important}.px-xxxl-2{padding-right:.45rem !important;padding-left:.45rem !important}.px-xxxl-3{padding-right:.9rem !important;padding-left:.9rem !important}.px-xxxl-4{padding-right:1.35rem !important;padding-left:1.35rem !important}.px-xxxl-5{padding-right:1.8rem !important;padding-left:1.8rem !important}.px-xxxl-6{padding-right:2.25rem !important;padding-left:2.25rem !important}.px-xxxl-7{padding-right:2.7rem !important;padding-left:2.7rem !important}.px-xxxl-8{padding-right:3.15rem !important;padding-left:3.15rem !important}.px-xxxl-9{padding-right:3.6rem !important;padding-left:3.6rem !important}.px-xxxl-tiny{padding-right:.135rem !important;padding-left:.135rem !important}.py-xxxl-0{padding-top:0 !important;padding-bottom:0 !important}.py-xxxl-1{padding-top:.225rem !important;padding-bottom:.225rem !important}.py-xxxl-2{padding-top:.45rem !important;padding-bottom:.45rem !important}.py-xxxl-3{padding-top:.9rem !important;padding-bottom:.9rem !important}.py-xxxl-4{padding-top:1.35rem !important;padding-bottom:1.35rem !important}.py-xxxl-5{padding-top:1.8rem !important;padding-bottom:1.8rem !important}.py-xxxl-6{padding-top:2.25rem !important;padding-bottom:2.25rem !important}.py-xxxl-7{padding-top:2.7rem !important;padding-bottom:2.7rem !important}.py-xxxl-8{padding-top:3.15rem !important;padding-bottom:3.15rem !important}.py-xxxl-9{padding-top:3.6rem !important;padding-bottom:3.6rem !important}.py-xxxl-tiny{padding-top:.135rem !important;padding-bottom:.135rem !important}.pt-xxxl-0{padding-top:0 !important}.pt-xxxl-1{padding-top:.225rem !important}.pt-xxxl-2{padding-top:.45rem !important}.pt-xxxl-3{padding-top:.9rem !important}.pt-xxxl-4{padding-top:1.35rem !important}.pt-xxxl-5{padding-top:1.8rem !important}.pt-xxxl-6{padding-top:2.25rem !important}.pt-xxxl-7{padding-top:2.7rem !important}.pt-xxxl-8{padding-top:3.15rem !important}.pt-xxxl-9{padding-top:3.6rem !important}.pt-xxxl-tiny{padding-top:.135rem !important}.pe-xxxl-0{padding-right:0 !important}.pe-xxxl-1{padding-right:.225rem !important}.pe-xxxl-2{padding-right:.45rem !important}.pe-xxxl-3{padding-right:.9rem !important}.pe-xxxl-4{padding-right:1.35rem !important}.pe-xxxl-5{padding-right:1.8rem !important}.pe-xxxl-6{padding-right:2.25rem !important}.pe-xxxl-7{padding-right:2.7rem !important}.pe-xxxl-8{padding-right:3.15rem !important}.pe-xxxl-9{padding-right:3.6rem !important}.pe-xxxl-tiny{padding-right:.135rem !important}.pb-xxxl-0{padding-bottom:0 !important}.pb-xxxl-1{padding-bottom:.225rem !important}.pb-xxxl-2{padding-bottom:.45rem !important}.pb-xxxl-3{padding-bottom:.9rem !important}.pb-xxxl-4{padding-bottom:1.35rem !important}.pb-xxxl-5{padding-bottom:1.8rem !important}.pb-xxxl-6{padding-bottom:2.25rem !important}.pb-xxxl-7{padding-bottom:2.7rem !important}.pb-xxxl-8{padding-bottom:3.15rem !important}.pb-xxxl-9{padding-bottom:3.6rem !important}.pb-xxxl-tiny{padding-bottom:.135rem !important}.ps-xxxl-0{padding-left:0 !important}.ps-xxxl-1{padding-left:.225rem !important}.ps-xxxl-2{padding-left:.45rem !important}.ps-xxxl-3{padding-left:.9rem !important}.ps-xxxl-4{padding-left:1.35rem !important}.ps-xxxl-5{padding-left:1.8rem !important}.ps-xxxl-6{padding-left:2.25rem !important}.ps-xxxl-7{padding-left:2.7rem !important}.ps-xxxl-8{padding-left:3.15rem !important}.ps-xxxl-9{padding-left:3.6rem !important}.ps-xxxl-tiny{padding-left:.135rem !important}.gap-xxxl-0{gap:0 !important}.gap-xxxl-1{gap:.225rem !important}.gap-xxxl-2{gap:.45rem !important}.gap-xxxl-3{gap:.9rem !important}.gap-xxxl-4{gap:1.35rem !important}.gap-xxxl-5{gap:1.8rem !important}.gap-xxxl-6{gap:2.25rem !important}.gap-xxxl-7{gap:2.7rem !important}.gap-xxxl-8{gap:3.15rem !important}.gap-xxxl-9{gap:3.6rem !important}.gap-xxxl-tiny{gap:.135rem !important}.text-xxxl-start{text-align:left !important}.text-xxxl-end{text-align:right !important}.text-xxxl-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}}.table>:not(:first-child){border-top:0px}.table td.fit,.table th.fit{white-space:nowrap;width:1%}.bg-content{background-color:#fff !important}code{background-color:#fff !important}.icon-shadow{filter:drop-shadow(1px 1px 1px #666)}.icon-shadow-dark{filter:drop-shadow(1px 1px 1px #262626)}.text-darken{filter:brightness(80%)}.text-lighten{filter:brightness(120%)}.text-tight-spacing{letter-spacing:-0.5px}.text-orange{color:#fd7e14}.text-twitter{color:#1d9bf0}.mb-large{margin-bottom:100px}.hljs,.hljs-subst{color:#212529}.fs-120{font-size:120%}.fs-100{font-size:100%}.fs-90{font-size:90%}.fs-80{font-size:80%}.fs-75{font-size:75%}.text-small{font-size:80%}.text-tiny{font-size:75% !important}.text-60pct{font-size:50% !important}.text-50pct{font-size:50% !important}.border-dotted{border-bottom:1px dotted #ccc}.border-thick{border-width:4px !important}body{font-size:14px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji}.font-serif{font-family:Georgia,Garamond,serif !important}hr{margin:.25rem 0 .75rem 0 !important}img.header-image{margin-top:-10px;margin-bottom:-5px;width:40px;height:40px;margin-right:10px}code,.font-json,.font-data,.font-plaintext{font-family:"Source Code Pro",monospace !important}.hr-thick{height:3px !important}.mb-section{margin-bottom:1.5rem !important}.mb-tiny{margin-bottom:3px}.mb-huge{margin-bottom:200px}.user-message-markdown p{margin-bottom:0 !important}.summary-row:last-child{margin-bottom:0 !important}pre{white-space:pre-wrap;white-space:-moz-pre-wrap;white-space:-pre-wrap;white-space:-o-pre-wrap;word-wrap:break-word;margin-bottom:0 !important}.word-wrap{word-wrap:break-word;word-break:break-all}.table th{border-top:none}.footer-link{color:#ddd;text-decoration:underline}.footer-link:hover{color:#fff}.hljs-type,.hljs-string,.hljs-selector-id,.hljs-selector-class,.hljs-quote,.hljs-template-tag,.hljs-deletion{color:#3aa54f}.hljs-literal,.hljs-number{color:#0dcaf0}.node-color-circle-outer{position:relative;width:4em;height:4em;background-color:#000;border-radius:50%}.node-color-circle-inner{top:10%;left:10%;position:absolute;width:80%;height:80%;background-color:#e5e5e5;border-radius:50%}.node-icon{top:10%;left:10%;position:absolute;width:80%;height:80%;border-radius:50%}input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus,input:-webkit-autofill:active{-webkit-box-shadow:0 0 0 30px #fff inset !important}input:-webkit-autofill{-webkit-text-fill-color:#212529 !important}.bg-background{background-color:#444}.bg-main{background-color:#f7fcff !important}.bg-menu{background-color:#fff}li.nav-item:hover{background-color:#eee}.bg-header-footer{background-color:#212529 !important}.bg-header-footer-highlight{background-color:#434b53 !important}.bg-header-footer{background-color:#162740 !important}.bg-header-footer-highlight{background-color:#2a4a79 !important}.bg-gradient-body-to-main{background:linear-gradient(0deg, #f7fcff 0%, #fff 100%)}.bg-card-highlight-badge{background-color:#e6e6e6 !important}.bg-tx-separator{background-color:#dce1e5}.border-card-highlight-badge{border-color:#d6d6d6 !important}.text-card-highlight{color:#567997 !important}.border-dotted{border-bottom:dotted 1px #979ca5}.card-highlight{background-color:#f7f7f7;border:solid 1px #e6e6e6 !important;color:#212529}/*# sourceMappingURL=light.css.map */ + */:root,[data-bs-theme=light]{--bs-blue: #0d6efd;--bs-indigo: #6610f2;--bs-purple: #6f42c1;--bs-pink: #d63384;--bs-red: #dc3545;--bs-orange: #fd7e14;--bs-yellow: #ffc107;--bs-green: #198754;--bs-teal: #20c997;--bs-cyan: #0dcaf0;--bs-black: #000;--bs-white: #fff;--bs-gray: #6c757d;--bs-gray-dark: #343a40;--bs-gray-100: #f8f9fa;--bs-gray-200: #e9ecef;--bs-gray-300: #dee2e6;--bs-gray-400: #ced4da;--bs-gray-500: #adb5bd;--bs-gray-600: #6c757d;--bs-gray-700: #495057;--bs-gray-800: #343a40;--bs-gray-900: #212529;--bs-primary: #0d6efd;--bs-secondary: #6c757d;--bs-success: #198754;--bs-info: #0dcaf0;--bs-warning: #ffc107;--bs-danger: #dc3545;--bs-light: #f8f9fa;--bs-dark: #212529;--bs-primary-rgb: 13, 110, 253;--bs-secondary-rgb: 108, 117, 125;--bs-success-rgb: 25, 135, 84;--bs-info-rgb: 13, 202, 240;--bs-warning-rgb: 255, 193, 7;--bs-danger-rgb: 220, 53, 69;--bs-light-rgb: 248, 249, 250;--bs-dark-rgb: 33, 37, 41;--bs-primary-text-emphasis: #052c65;--bs-secondary-text-emphasis: #2b2f32;--bs-success-text-emphasis: #0a3622;--bs-info-text-emphasis: #055160;--bs-warning-text-emphasis: #664d03;--bs-danger-text-emphasis: #58151c;--bs-light-text-emphasis: #495057;--bs-dark-text-emphasis: #495057;--bs-primary-bg-subtle: #cfe2ff;--bs-secondary-bg-subtle: #e2e3e5;--bs-success-bg-subtle: #d1e7dd;--bs-info-bg-subtle: #cff4fc;--bs-warning-bg-subtle: #fff3cd;--bs-danger-bg-subtle: #f8d7da;--bs-light-bg-subtle: #fcfcfd;--bs-dark-bg-subtle: #ced4da;--bs-primary-border-subtle: #9ec5fe;--bs-secondary-border-subtle: #c4c8cb;--bs-success-border-subtle: #a3cfbb;--bs-info-border-subtle: #9eeaf9;--bs-warning-border-subtle: #ffe69c;--bs-danger-border-subtle: #f1aeb5;--bs-light-border-subtle: #e9ecef;--bs-dark-border-subtle: #adb5bd;--bs-white-rgb: 255, 255, 255;--bs-black-rgb: 0, 0, 0;--bs-font-sans-serif: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));--bs-body-font-family: var(--bs-font-sans-serif);--bs-body-font-size:1rem;--bs-body-font-weight: 400;--bs-body-line-height: 1.5;--bs-body-color: #212529;--bs-body-color-rgb: 33, 37, 41;--bs-body-bg: #fff;--bs-body-bg-rgb: 255, 255, 255;--bs-emphasis-color: #000;--bs-emphasis-color-rgb: 0, 0, 0;--bs-secondary-color: rgba(33, 37, 41, 0.75);--bs-secondary-color-rgb: 33, 37, 41;--bs-secondary-bg: #e9ecef;--bs-secondary-bg-rgb: 233, 236, 239;--bs-tertiary-color: rgba(33, 37, 41, 0.5);--bs-tertiary-color-rgb: 33, 37, 41;--bs-tertiary-bg: #f8f9fa;--bs-tertiary-bg-rgb: 248, 249, 250;--bs-heading-color: inherit;--bs-link-color: #0d6efd;--bs-link-color-rgb: 13, 110, 253;--bs-link-decoration: none;--bs-link-hover-color: #0a58ca;--bs-link-hover-color-rgb: 10, 88, 202;--bs-link-hover-decoration: underline;--bs-code-color: #d63384;--bs-highlight-bg: #fff3cd;--bs-border-width: 1px;--bs-border-style: solid;--bs-border-color: #e4e7eb;--bs-border-color-translucent: rgba(0, 0, 0, 0.175);--bs-border-radius: 0.4rem;--bs-border-radius-sm: 0.25rem;--bs-border-radius-lg: 0.5rem;--bs-border-radius-xl: 1rem;--bs-border-radius-xxl: 2rem;--bs-border-radius-2xl: var(--bs-border-radius-xxl);--bs-border-radius-pill: 50rem;--bs-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);--bs-box-shadow-sm: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);--bs-box-shadow-lg: 0 1rem 3rem rgba(0, 0, 0, 0.175);--bs-box-shadow-inset: inset 0 1px 2px rgba(0, 0, 0, 0.075);--bs-focus-ring-width: 0.25rem;--bs-focus-ring-opacity: 0.25;--bs-focus-ring-color: rgba(13, 110, 253, 0.25);--bs-form-valid-color: #198754;--bs-form-valid-border-color: #198754;--bs-form-invalid-color: #dc3545;--bs-form-invalid-border-color: #dc3545}[data-bs-theme=dark]{color-scheme:dark;--bs-body-color: #adb5bd;--bs-body-color-rgb: 173, 181, 189;--bs-body-bg: #212529;--bs-body-bg-rgb: 33, 37, 41;--bs-emphasis-color: #fff;--bs-emphasis-color-rgb: 255, 255, 255;--bs-secondary-color: rgba(173, 181, 189, 0.75);--bs-secondary-color-rgb: 173, 181, 189;--bs-secondary-bg: #343a40;--bs-secondary-bg-rgb: 52, 58, 64;--bs-tertiary-color: rgba(173, 181, 189, 0.5);--bs-tertiary-color-rgb: 173, 181, 189;--bs-tertiary-bg: #2b3035;--bs-tertiary-bg-rgb: 43, 48, 53;--bs-primary-text-emphasis: #6ea8fe;--bs-secondary-text-emphasis: #a7acb1;--bs-success-text-emphasis: #75b798;--bs-info-text-emphasis: #6edff6;--bs-warning-text-emphasis: #ffda6a;--bs-danger-text-emphasis: #ea868f;--bs-light-text-emphasis: #f8f9fa;--bs-dark-text-emphasis: #dee2e6;--bs-primary-bg-subtle: #031633;--bs-secondary-bg-subtle: #161719;--bs-success-bg-subtle: #051b11;--bs-info-bg-subtle: #032830;--bs-warning-bg-subtle: #332701;--bs-danger-bg-subtle: #2c0b0e;--bs-light-bg-subtle: #343a40;--bs-dark-bg-subtle: #1a1d20;--bs-primary-border-subtle: #084298;--bs-secondary-border-subtle: #41464b;--bs-success-border-subtle: #0f5132;--bs-info-border-subtle: #087990;--bs-warning-border-subtle: #997404;--bs-danger-border-subtle: #842029;--bs-light-border-subtle: #495057;--bs-dark-border-subtle: #343a40;--bs-heading-color: inherit;--bs-link-color: #6ea8fe;--bs-link-hover-color: #8bb9fe;--bs-link-color-rgb: 110, 168, 254;--bs-link-hover-color-rgb: 139, 185, 254;--bs-code-color: #e685b5;--bs-border-color: #495057;--bs-border-color-translucent: rgba(255, 255, 255, 0.15);--bs-form-valid-color: #75b798;--bs-form-valid-border-color: #75b798;--bs-form-invalid-color: #ea868f;--bs-form-invalid-border-color: #ea868f}*,*::before,*::after{box-sizing:border-box}@media(prefers-reduced-motion: no-preference){:root{scroll-behavior:smooth}}body{margin:0;font-family:var(--bs-body-font-family);font-size:var(--bs-body-font-size);font-weight:var(--bs-body-font-weight);line-height:var(--bs-body-line-height);color:var(--bs-body-color);text-align:var(--bs-body-text-align);background-color:var(--bs-body-bg);-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:rgba(0,0,0,0)}hr{margin:.9rem 0;color:inherit;border:0;border-top:var(--bs-border-width) solid;opacity:.25}h6,.h6,h5,.h5,h4,.h4,h3,.h3,h2,.h2,h1,.h1{margin-top:0;margin-bottom:.45rem;font-weight:500;line-height:1.2;color:var(--bs-heading-color)}h1,.h1{font-size:calc(1.375rem + 1.5vw)}@media(min-width: 1200px){h1,.h1{font-size:2.5rem}}h2,.h2{font-size:calc(1.325rem + 0.9vw)}@media(min-width: 1200px){h2,.h2{font-size:2rem}}h3,.h3{font-size:calc(1.3rem + 0.6vw)}@media(min-width: 1200px){h3,.h3{font-size:1.75rem}}h4,.h4{font-size:calc(1.275rem + 0.3vw)}@media(min-width: 1200px){h4,.h4{font-size:1.5rem}}h5,.h5{font-size:1.25rem}h6,.h6{font-size:1rem}p{margin-top:0;margin-bottom:1rem}abbr[title]{text-decoration:underline dotted;cursor:help;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:.5rem;margin-left:0}blockquote{margin:0 0 1rem}b,strong{font-weight:bolder}small,.small{font-size:0.875em}mark,.mark{padding:.1875em;background-color:var(--bs-highlight-bg)}sub,sup{position:relative;font-size:0.75em;line-height:0;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}a{color:rgba(var(--bs-link-color-rgb), var(--bs-link-opacity, 1));text-decoration:none}a:hover{--bs-link-color-rgb: var(--bs-link-hover-color-rgb);text-decoration:underline}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}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:var(--bs-code-color);word-wrap:break-word}a>code{color:inherit}kbd{padding:.1875rem .375rem;font-size:0.875em;color:var(--bs-body-bg);background-color:var(--bs-body-color);border-radius:.25rem}kbd kbd{padding:0;font-size:1em}figure{margin:0 0 1rem}img,svg{vertical-align:middle}table{caption-side:bottom;border-collapse:collapse}caption{padding-top:.5rem;padding-bottom:.5rem;color:var(--bs-secondary-color);text-align:left}th{text-align:inherit;text-align:-webkit-match-parent}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]:not([type=date]):not([type=datetime-local]):not([type=month]):not([type=week]):not([type=time])::-webkit-calendar-picker-indicator{display:none !important}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:.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}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-color-swatch-wrapper{padding:0}::file-selector-button{font:inherit;-webkit-appearance:button}output{display:inline-block}iframe{border:0}summary{display:list-item;cursor:pointer}progress{vertical-align:baseline}[hidden]{display:none !important}.lead{font-size:1.25rem;font-weight:300}.display-1{font-size:calc(1.625rem + 4.5vw);font-weight:300;line-height:1.2}@media(min-width: 1200px){.display-1{font-size:5rem}}.display-2{font-size:calc(1.575rem + 3.9vw);font-weight:300;line-height:1.2}@media(min-width: 1200px){.display-2{font-size:4.5rem}}.display-3{font-size:calc(1.525rem + 3.3vw);font-weight:300;line-height:1.2}@media(min-width: 1200px){.display-3{font-size:4rem}}.display-4{font-size:calc(1.475rem + 2.7vw);font-weight:300;line-height:1.2}@media(min-width: 1200px){.display-4{font-size:3.5rem}}.display-5{font-size:calc(1.425rem + 2.1vw);font-weight:300;line-height:1.2}@media(min-width: 1200px){.display-5{font-size:3rem}}.display-6{font-size:calc(1.375rem + 1.5vw);font-weight:300;line-height:1.2}@media(min-width: 1200px){.display-6{font-size:2.5rem}}.list-unstyled{padding-left:0;list-style:none}.list-inline{padding-left:0;list-style:none}.list-inline-item{display:inline-block}.list-inline-item:not(:last-child){margin-right:.5rem}.initialism{font-size:0.875em;text-transform:uppercase}.blockquote{margin-bottom:.9rem;font-size:1.25rem}.blockquote>:last-child{margin-bottom:0}.blockquote-footer{margin-top:-0.9rem;margin-bottom:.9rem;font-size:0.875em;color:#6c757d}.blockquote-footer::before{content:"— "}.img-fluid{max-width:100%;height:auto}.img-thumbnail{padding:.25rem;background-color:var(--bs-body-bg);border:var(--bs-border-width) solid var(--bs-border-color);border-radius:var(--bs-border-radius);max-width:100%;height:auto}.figure{display:inline-block}.figure-img{margin-bottom:.45rem;line-height:1}.figure-caption{font-size:0.875em;color:var(--bs-secondary-color)}.container,.container-fluid,.container-xxxl,.container-xxl,.container-xl,.container-lg,.container-md,.container-sm{--bs-gutter-x: 1.5rem;--bs-gutter-y: 0;width:100%;padding-right:calc(var(--bs-gutter-x)*.5);padding-left:calc(var(--bs-gutter-x)*.5);margin-right:auto;margin-left:auto}@media(min-width: 576px){.container-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}}@media(min-width: 1900px){.container-xxxl,.container-xxl,.container-xl,.container-lg,.container-md,.container-sm,.container{max-width:1820px}}:root{--bs-breakpoint-xs: 0;--bs-breakpoint-sm: 576px;--bs-breakpoint-md: 768px;--bs-breakpoint-lg: 992px;--bs-breakpoint-xl: 1200px;--bs-breakpoint-xxl: 1400px;--bs-breakpoint-xxxl: 1900px}.row{--bs-gutter-x: 1.5rem;--bs-gutter-y: 0;display:flex;flex-wrap:wrap;margin-top:calc(-1*var(--bs-gutter-y));margin-right:calc(-0.5*var(--bs-gutter-x));margin-left:calc(-0.5*var(--bs-gutter-x))}.row>*{flex-shrink:0;width:100%;max-width:100%;padding-right:calc(var(--bs-gutter-x)*.5);padding-left:calc(var(--bs-gutter-x)*.5);margin-top:var(--bs-gutter-y)}.col{flex:1 0 0%}.row-cols-auto>*{flex:0 0 auto;width:auto}.row-cols-1>*{flex:0 0 auto;width:100%}.row-cols-2>*{flex:0 0 auto;width:50%}.row-cols-3>*{flex:0 0 auto;width:33.3333333333%}.row-cols-4>*{flex:0 0 auto;width:25%}.row-cols-5>*{flex:0 0 auto;width:20%}.row-cols-6>*{flex:0 0 auto;width:16.6666666667%}.col-auto{flex:0 0 auto;width:auto}.col-1{flex:0 0 auto;width:8.33333333%}.col-2{flex:0 0 auto;width:16.66666667%}.col-3{flex:0 0 auto;width:25%}.col-4{flex:0 0 auto;width:33.33333333%}.col-5{flex:0 0 auto;width:41.66666667%}.col-6{flex:0 0 auto;width:50%}.col-7{flex:0 0 auto;width:58.33333333%}.col-8{flex:0 0 auto;width:66.66666667%}.col-9{flex:0 0 auto;width:75%}.col-10{flex:0 0 auto;width:83.33333333%}.col-11{flex:0 0 auto;width:91.66666667%}.col-12{flex:0 0 auto;width:100%}.offset-1{margin-left:8.33333333%}.offset-2{margin-left:16.66666667%}.offset-3{margin-left:25%}.offset-4{margin-left:33.33333333%}.offset-5{margin-left:41.66666667%}.offset-6{margin-left:50%}.offset-7{margin-left:58.33333333%}.offset-8{margin-left:66.66666667%}.offset-9{margin-left:75%}.offset-10{margin-left:83.33333333%}.offset-11{margin-left:91.66666667%}.g-0,.gx-0{--bs-gutter-x: 0}.g-0,.gy-0{--bs-gutter-y: 0}.g-1,.gx-1{--bs-gutter-x: 0.225rem}.g-1,.gy-1{--bs-gutter-y: 0.225rem}.g-2,.gx-2{--bs-gutter-x: 0.45rem}.g-2,.gy-2{--bs-gutter-y: 0.45rem}.g-3,.gx-3{--bs-gutter-x: 0.9rem}.g-3,.gy-3{--bs-gutter-y: 0.9rem}.g-4,.gx-4{--bs-gutter-x: 1.35rem}.g-4,.gy-4{--bs-gutter-y: 1.35rem}.g-5,.gx-5{--bs-gutter-x: 1.8rem}.g-5,.gy-5{--bs-gutter-y: 1.8rem}.g-6,.gx-6{--bs-gutter-x: 2.25rem}.g-6,.gy-6{--bs-gutter-y: 2.25rem}.g-7,.gx-7{--bs-gutter-x: 2.7rem}.g-7,.gy-7{--bs-gutter-y: 2.7rem}.g-8,.gx-8{--bs-gutter-x: 3.15rem}.g-8,.gy-8{--bs-gutter-y: 3.15rem}.g-9,.gx-9{--bs-gutter-x: 3.6rem}.g-9,.gy-9{--bs-gutter-y: 3.6rem}.g-tiny,.gx-tiny{--bs-gutter-x: 0.135rem}.g-tiny,.gy-tiny{--bs-gutter-y: 0.135rem}@media(min-width: 576px){.col-sm{flex:1 0 0%}.row-cols-sm-auto>*{flex:0 0 auto;width:auto}.row-cols-sm-1>*{flex:0 0 auto;width:100%}.row-cols-sm-2>*{flex:0 0 auto;width:50%}.row-cols-sm-3>*{flex:0 0 auto;width:33.3333333333%}.row-cols-sm-4>*{flex:0 0 auto;width:25%}.row-cols-sm-5>*{flex:0 0 auto;width:20%}.row-cols-sm-6>*{flex:0 0 auto;width:16.6666666667%}.col-sm-auto{flex:0 0 auto;width:auto}.col-sm-1{flex:0 0 auto;width:8.33333333%}.col-sm-2{flex:0 0 auto;width:16.66666667%}.col-sm-3{flex:0 0 auto;width:25%}.col-sm-4{flex:0 0 auto;width:33.33333333%}.col-sm-5{flex:0 0 auto;width:41.66666667%}.col-sm-6{flex:0 0 auto;width:50%}.col-sm-7{flex:0 0 auto;width:58.33333333%}.col-sm-8{flex:0 0 auto;width:66.66666667%}.col-sm-9{flex:0 0 auto;width:75%}.col-sm-10{flex:0 0 auto;width:83.33333333%}.col-sm-11{flex:0 0 auto;width:91.66666667%}.col-sm-12{flex:0 0 auto;width:100%}.offset-sm-0{margin-left:0}.offset-sm-1{margin-left:8.33333333%}.offset-sm-2{margin-left:16.66666667%}.offset-sm-3{margin-left:25%}.offset-sm-4{margin-left:33.33333333%}.offset-sm-5{margin-left:41.66666667%}.offset-sm-6{margin-left:50%}.offset-sm-7{margin-left:58.33333333%}.offset-sm-8{margin-left:66.66666667%}.offset-sm-9{margin-left:75%}.offset-sm-10{margin-left:83.33333333%}.offset-sm-11{margin-left:91.66666667%}.g-sm-0,.gx-sm-0{--bs-gutter-x: 0}.g-sm-0,.gy-sm-0{--bs-gutter-y: 0}.g-sm-1,.gx-sm-1{--bs-gutter-x: 0.225rem}.g-sm-1,.gy-sm-1{--bs-gutter-y: 0.225rem}.g-sm-2,.gx-sm-2{--bs-gutter-x: 0.45rem}.g-sm-2,.gy-sm-2{--bs-gutter-y: 0.45rem}.g-sm-3,.gx-sm-3{--bs-gutter-x: 0.9rem}.g-sm-3,.gy-sm-3{--bs-gutter-y: 0.9rem}.g-sm-4,.gx-sm-4{--bs-gutter-x: 1.35rem}.g-sm-4,.gy-sm-4{--bs-gutter-y: 1.35rem}.g-sm-5,.gx-sm-5{--bs-gutter-x: 1.8rem}.g-sm-5,.gy-sm-5{--bs-gutter-y: 1.8rem}.g-sm-6,.gx-sm-6{--bs-gutter-x: 2.25rem}.g-sm-6,.gy-sm-6{--bs-gutter-y: 2.25rem}.g-sm-7,.gx-sm-7{--bs-gutter-x: 2.7rem}.g-sm-7,.gy-sm-7{--bs-gutter-y: 2.7rem}.g-sm-8,.gx-sm-8{--bs-gutter-x: 3.15rem}.g-sm-8,.gy-sm-8{--bs-gutter-y: 3.15rem}.g-sm-9,.gx-sm-9{--bs-gutter-x: 3.6rem}.g-sm-9,.gy-sm-9{--bs-gutter-y: 3.6rem}.g-sm-tiny,.gx-sm-tiny{--bs-gutter-x: 0.135rem}.g-sm-tiny,.gy-sm-tiny{--bs-gutter-y: 0.135rem}}@media(min-width: 768px){.col-md{flex:1 0 0%}.row-cols-md-auto>*{flex:0 0 auto;width:auto}.row-cols-md-1>*{flex:0 0 auto;width:100%}.row-cols-md-2>*{flex:0 0 auto;width:50%}.row-cols-md-3>*{flex:0 0 auto;width:33.3333333333%}.row-cols-md-4>*{flex:0 0 auto;width:25%}.row-cols-md-5>*{flex:0 0 auto;width:20%}.row-cols-md-6>*{flex:0 0 auto;width:16.6666666667%}.col-md-auto{flex:0 0 auto;width:auto}.col-md-1{flex:0 0 auto;width:8.33333333%}.col-md-2{flex:0 0 auto;width:16.66666667%}.col-md-3{flex:0 0 auto;width:25%}.col-md-4{flex:0 0 auto;width:33.33333333%}.col-md-5{flex:0 0 auto;width:41.66666667%}.col-md-6{flex:0 0 auto;width:50%}.col-md-7{flex:0 0 auto;width:58.33333333%}.col-md-8{flex:0 0 auto;width:66.66666667%}.col-md-9{flex:0 0 auto;width:75%}.col-md-10{flex:0 0 auto;width:83.33333333%}.col-md-11{flex:0 0 auto;width:91.66666667%}.col-md-12{flex:0 0 auto;width:100%}.offset-md-0{margin-left:0}.offset-md-1{margin-left:8.33333333%}.offset-md-2{margin-left:16.66666667%}.offset-md-3{margin-left:25%}.offset-md-4{margin-left:33.33333333%}.offset-md-5{margin-left:41.66666667%}.offset-md-6{margin-left:50%}.offset-md-7{margin-left:58.33333333%}.offset-md-8{margin-left:66.66666667%}.offset-md-9{margin-left:75%}.offset-md-10{margin-left:83.33333333%}.offset-md-11{margin-left:91.66666667%}.g-md-0,.gx-md-0{--bs-gutter-x: 0}.g-md-0,.gy-md-0{--bs-gutter-y: 0}.g-md-1,.gx-md-1{--bs-gutter-x: 0.225rem}.g-md-1,.gy-md-1{--bs-gutter-y: 0.225rem}.g-md-2,.gx-md-2{--bs-gutter-x: 0.45rem}.g-md-2,.gy-md-2{--bs-gutter-y: 0.45rem}.g-md-3,.gx-md-3{--bs-gutter-x: 0.9rem}.g-md-3,.gy-md-3{--bs-gutter-y: 0.9rem}.g-md-4,.gx-md-4{--bs-gutter-x: 1.35rem}.g-md-4,.gy-md-4{--bs-gutter-y: 1.35rem}.g-md-5,.gx-md-5{--bs-gutter-x: 1.8rem}.g-md-5,.gy-md-5{--bs-gutter-y: 1.8rem}.g-md-6,.gx-md-6{--bs-gutter-x: 2.25rem}.g-md-6,.gy-md-6{--bs-gutter-y: 2.25rem}.g-md-7,.gx-md-7{--bs-gutter-x: 2.7rem}.g-md-7,.gy-md-7{--bs-gutter-y: 2.7rem}.g-md-8,.gx-md-8{--bs-gutter-x: 3.15rem}.g-md-8,.gy-md-8{--bs-gutter-y: 3.15rem}.g-md-9,.gx-md-9{--bs-gutter-x: 3.6rem}.g-md-9,.gy-md-9{--bs-gutter-y: 3.6rem}.g-md-tiny,.gx-md-tiny{--bs-gutter-x: 0.135rem}.g-md-tiny,.gy-md-tiny{--bs-gutter-y: 0.135rem}}@media(min-width: 992px){.col-lg{flex:1 0 0%}.row-cols-lg-auto>*{flex:0 0 auto;width:auto}.row-cols-lg-1>*{flex:0 0 auto;width:100%}.row-cols-lg-2>*{flex:0 0 auto;width:50%}.row-cols-lg-3>*{flex:0 0 auto;width:33.3333333333%}.row-cols-lg-4>*{flex:0 0 auto;width:25%}.row-cols-lg-5>*{flex:0 0 auto;width:20%}.row-cols-lg-6>*{flex:0 0 auto;width:16.6666666667%}.col-lg-auto{flex:0 0 auto;width:auto}.col-lg-1{flex:0 0 auto;width:8.33333333%}.col-lg-2{flex:0 0 auto;width:16.66666667%}.col-lg-3{flex:0 0 auto;width:25%}.col-lg-4{flex:0 0 auto;width:33.33333333%}.col-lg-5{flex:0 0 auto;width:41.66666667%}.col-lg-6{flex:0 0 auto;width:50%}.col-lg-7{flex:0 0 auto;width:58.33333333%}.col-lg-8{flex:0 0 auto;width:66.66666667%}.col-lg-9{flex:0 0 auto;width:75%}.col-lg-10{flex:0 0 auto;width:83.33333333%}.col-lg-11{flex:0 0 auto;width:91.66666667%}.col-lg-12{flex:0 0 auto;width:100%}.offset-lg-0{margin-left:0}.offset-lg-1{margin-left:8.33333333%}.offset-lg-2{margin-left:16.66666667%}.offset-lg-3{margin-left:25%}.offset-lg-4{margin-left:33.33333333%}.offset-lg-5{margin-left:41.66666667%}.offset-lg-6{margin-left:50%}.offset-lg-7{margin-left:58.33333333%}.offset-lg-8{margin-left:66.66666667%}.offset-lg-9{margin-left:75%}.offset-lg-10{margin-left:83.33333333%}.offset-lg-11{margin-left:91.66666667%}.g-lg-0,.gx-lg-0{--bs-gutter-x: 0}.g-lg-0,.gy-lg-0{--bs-gutter-y: 0}.g-lg-1,.gx-lg-1{--bs-gutter-x: 0.225rem}.g-lg-1,.gy-lg-1{--bs-gutter-y: 0.225rem}.g-lg-2,.gx-lg-2{--bs-gutter-x: 0.45rem}.g-lg-2,.gy-lg-2{--bs-gutter-y: 0.45rem}.g-lg-3,.gx-lg-3{--bs-gutter-x: 0.9rem}.g-lg-3,.gy-lg-3{--bs-gutter-y: 0.9rem}.g-lg-4,.gx-lg-4{--bs-gutter-x: 1.35rem}.g-lg-4,.gy-lg-4{--bs-gutter-y: 1.35rem}.g-lg-5,.gx-lg-5{--bs-gutter-x: 1.8rem}.g-lg-5,.gy-lg-5{--bs-gutter-y: 1.8rem}.g-lg-6,.gx-lg-6{--bs-gutter-x: 2.25rem}.g-lg-6,.gy-lg-6{--bs-gutter-y: 2.25rem}.g-lg-7,.gx-lg-7{--bs-gutter-x: 2.7rem}.g-lg-7,.gy-lg-7{--bs-gutter-y: 2.7rem}.g-lg-8,.gx-lg-8{--bs-gutter-x: 3.15rem}.g-lg-8,.gy-lg-8{--bs-gutter-y: 3.15rem}.g-lg-9,.gx-lg-9{--bs-gutter-x: 3.6rem}.g-lg-9,.gy-lg-9{--bs-gutter-y: 3.6rem}.g-lg-tiny,.gx-lg-tiny{--bs-gutter-x: 0.135rem}.g-lg-tiny,.gy-lg-tiny{--bs-gutter-y: 0.135rem}}@media(min-width: 1200px){.col-xl{flex:1 0 0%}.row-cols-xl-auto>*{flex:0 0 auto;width:auto}.row-cols-xl-1>*{flex:0 0 auto;width:100%}.row-cols-xl-2>*{flex:0 0 auto;width:50%}.row-cols-xl-3>*{flex:0 0 auto;width:33.3333333333%}.row-cols-xl-4>*{flex:0 0 auto;width:25%}.row-cols-xl-5>*{flex:0 0 auto;width:20%}.row-cols-xl-6>*{flex:0 0 auto;width:16.6666666667%}.col-xl-auto{flex:0 0 auto;width:auto}.col-xl-1{flex:0 0 auto;width:8.33333333%}.col-xl-2{flex:0 0 auto;width:16.66666667%}.col-xl-3{flex:0 0 auto;width:25%}.col-xl-4{flex:0 0 auto;width:33.33333333%}.col-xl-5{flex:0 0 auto;width:41.66666667%}.col-xl-6{flex:0 0 auto;width:50%}.col-xl-7{flex:0 0 auto;width:58.33333333%}.col-xl-8{flex:0 0 auto;width:66.66666667%}.col-xl-9{flex:0 0 auto;width:75%}.col-xl-10{flex:0 0 auto;width:83.33333333%}.col-xl-11{flex:0 0 auto;width:91.66666667%}.col-xl-12{flex:0 0 auto;width:100%}.offset-xl-0{margin-left:0}.offset-xl-1{margin-left:8.33333333%}.offset-xl-2{margin-left:16.66666667%}.offset-xl-3{margin-left:25%}.offset-xl-4{margin-left:33.33333333%}.offset-xl-5{margin-left:41.66666667%}.offset-xl-6{margin-left:50%}.offset-xl-7{margin-left:58.33333333%}.offset-xl-8{margin-left:66.66666667%}.offset-xl-9{margin-left:75%}.offset-xl-10{margin-left:83.33333333%}.offset-xl-11{margin-left:91.66666667%}.g-xl-0,.gx-xl-0{--bs-gutter-x: 0}.g-xl-0,.gy-xl-0{--bs-gutter-y: 0}.g-xl-1,.gx-xl-1{--bs-gutter-x: 0.225rem}.g-xl-1,.gy-xl-1{--bs-gutter-y: 0.225rem}.g-xl-2,.gx-xl-2{--bs-gutter-x: 0.45rem}.g-xl-2,.gy-xl-2{--bs-gutter-y: 0.45rem}.g-xl-3,.gx-xl-3{--bs-gutter-x: 0.9rem}.g-xl-3,.gy-xl-3{--bs-gutter-y: 0.9rem}.g-xl-4,.gx-xl-4{--bs-gutter-x: 1.35rem}.g-xl-4,.gy-xl-4{--bs-gutter-y: 1.35rem}.g-xl-5,.gx-xl-5{--bs-gutter-x: 1.8rem}.g-xl-5,.gy-xl-5{--bs-gutter-y: 1.8rem}.g-xl-6,.gx-xl-6{--bs-gutter-x: 2.25rem}.g-xl-6,.gy-xl-6{--bs-gutter-y: 2.25rem}.g-xl-7,.gx-xl-7{--bs-gutter-x: 2.7rem}.g-xl-7,.gy-xl-7{--bs-gutter-y: 2.7rem}.g-xl-8,.gx-xl-8{--bs-gutter-x: 3.15rem}.g-xl-8,.gy-xl-8{--bs-gutter-y: 3.15rem}.g-xl-9,.gx-xl-9{--bs-gutter-x: 3.6rem}.g-xl-9,.gy-xl-9{--bs-gutter-y: 3.6rem}.g-xl-tiny,.gx-xl-tiny{--bs-gutter-x: 0.135rem}.g-xl-tiny,.gy-xl-tiny{--bs-gutter-y: 0.135rem}}@media(min-width: 1400px){.col-xxl{flex:1 0 0%}.row-cols-xxl-auto>*{flex:0 0 auto;width:auto}.row-cols-xxl-1>*{flex:0 0 auto;width:100%}.row-cols-xxl-2>*{flex:0 0 auto;width:50%}.row-cols-xxl-3>*{flex:0 0 auto;width:33.3333333333%}.row-cols-xxl-4>*{flex:0 0 auto;width:25%}.row-cols-xxl-5>*{flex:0 0 auto;width:20%}.row-cols-xxl-6>*{flex:0 0 auto;width:16.6666666667%}.col-xxl-auto{flex:0 0 auto;width:auto}.col-xxl-1{flex:0 0 auto;width:8.33333333%}.col-xxl-2{flex:0 0 auto;width:16.66666667%}.col-xxl-3{flex:0 0 auto;width:25%}.col-xxl-4{flex:0 0 auto;width:33.33333333%}.col-xxl-5{flex:0 0 auto;width:41.66666667%}.col-xxl-6{flex:0 0 auto;width:50%}.col-xxl-7{flex:0 0 auto;width:58.33333333%}.col-xxl-8{flex:0 0 auto;width:66.66666667%}.col-xxl-9{flex:0 0 auto;width:75%}.col-xxl-10{flex:0 0 auto;width:83.33333333%}.col-xxl-11{flex:0 0 auto;width:91.66666667%}.col-xxl-12{flex:0 0 auto;width:100%}.offset-xxl-0{margin-left:0}.offset-xxl-1{margin-left:8.33333333%}.offset-xxl-2{margin-left:16.66666667%}.offset-xxl-3{margin-left:25%}.offset-xxl-4{margin-left:33.33333333%}.offset-xxl-5{margin-left:41.66666667%}.offset-xxl-6{margin-left:50%}.offset-xxl-7{margin-left:58.33333333%}.offset-xxl-8{margin-left:66.66666667%}.offset-xxl-9{margin-left:75%}.offset-xxl-10{margin-left:83.33333333%}.offset-xxl-11{margin-left:91.66666667%}.g-xxl-0,.gx-xxl-0{--bs-gutter-x: 0}.g-xxl-0,.gy-xxl-0{--bs-gutter-y: 0}.g-xxl-1,.gx-xxl-1{--bs-gutter-x: 0.225rem}.g-xxl-1,.gy-xxl-1{--bs-gutter-y: 0.225rem}.g-xxl-2,.gx-xxl-2{--bs-gutter-x: 0.45rem}.g-xxl-2,.gy-xxl-2{--bs-gutter-y: 0.45rem}.g-xxl-3,.gx-xxl-3{--bs-gutter-x: 0.9rem}.g-xxl-3,.gy-xxl-3{--bs-gutter-y: 0.9rem}.g-xxl-4,.gx-xxl-4{--bs-gutter-x: 1.35rem}.g-xxl-4,.gy-xxl-4{--bs-gutter-y: 1.35rem}.g-xxl-5,.gx-xxl-5{--bs-gutter-x: 1.8rem}.g-xxl-5,.gy-xxl-5{--bs-gutter-y: 1.8rem}.g-xxl-6,.gx-xxl-6{--bs-gutter-x: 2.25rem}.g-xxl-6,.gy-xxl-6{--bs-gutter-y: 2.25rem}.g-xxl-7,.gx-xxl-7{--bs-gutter-x: 2.7rem}.g-xxl-7,.gy-xxl-7{--bs-gutter-y: 2.7rem}.g-xxl-8,.gx-xxl-8{--bs-gutter-x: 3.15rem}.g-xxl-8,.gy-xxl-8{--bs-gutter-y: 3.15rem}.g-xxl-9,.gx-xxl-9{--bs-gutter-x: 3.6rem}.g-xxl-9,.gy-xxl-9{--bs-gutter-y: 3.6rem}.g-xxl-tiny,.gx-xxl-tiny{--bs-gutter-x: 0.135rem}.g-xxl-tiny,.gy-xxl-tiny{--bs-gutter-y: 0.135rem}}@media(min-width: 1900px){.col-xxxl{flex:1 0 0%}.row-cols-xxxl-auto>*{flex:0 0 auto;width:auto}.row-cols-xxxl-1>*{flex:0 0 auto;width:100%}.row-cols-xxxl-2>*{flex:0 0 auto;width:50%}.row-cols-xxxl-3>*{flex:0 0 auto;width:33.3333333333%}.row-cols-xxxl-4>*{flex:0 0 auto;width:25%}.row-cols-xxxl-5>*{flex:0 0 auto;width:20%}.row-cols-xxxl-6>*{flex:0 0 auto;width:16.6666666667%}.col-xxxl-auto{flex:0 0 auto;width:auto}.col-xxxl-1{flex:0 0 auto;width:8.33333333%}.col-xxxl-2{flex:0 0 auto;width:16.66666667%}.col-xxxl-3{flex:0 0 auto;width:25%}.col-xxxl-4{flex:0 0 auto;width:33.33333333%}.col-xxxl-5{flex:0 0 auto;width:41.66666667%}.col-xxxl-6{flex:0 0 auto;width:50%}.col-xxxl-7{flex:0 0 auto;width:58.33333333%}.col-xxxl-8{flex:0 0 auto;width:66.66666667%}.col-xxxl-9{flex:0 0 auto;width:75%}.col-xxxl-10{flex:0 0 auto;width:83.33333333%}.col-xxxl-11{flex:0 0 auto;width:91.66666667%}.col-xxxl-12{flex:0 0 auto;width:100%}.offset-xxxl-0{margin-left:0}.offset-xxxl-1{margin-left:8.33333333%}.offset-xxxl-2{margin-left:16.66666667%}.offset-xxxl-3{margin-left:25%}.offset-xxxl-4{margin-left:33.33333333%}.offset-xxxl-5{margin-left:41.66666667%}.offset-xxxl-6{margin-left:50%}.offset-xxxl-7{margin-left:58.33333333%}.offset-xxxl-8{margin-left:66.66666667%}.offset-xxxl-9{margin-left:75%}.offset-xxxl-10{margin-left:83.33333333%}.offset-xxxl-11{margin-left:91.66666667%}.g-xxxl-0,.gx-xxxl-0{--bs-gutter-x: 0}.g-xxxl-0,.gy-xxxl-0{--bs-gutter-y: 0}.g-xxxl-1,.gx-xxxl-1{--bs-gutter-x: 0.225rem}.g-xxxl-1,.gy-xxxl-1{--bs-gutter-y: 0.225rem}.g-xxxl-2,.gx-xxxl-2{--bs-gutter-x: 0.45rem}.g-xxxl-2,.gy-xxxl-2{--bs-gutter-y: 0.45rem}.g-xxxl-3,.gx-xxxl-3{--bs-gutter-x: 0.9rem}.g-xxxl-3,.gy-xxxl-3{--bs-gutter-y: 0.9rem}.g-xxxl-4,.gx-xxxl-4{--bs-gutter-x: 1.35rem}.g-xxxl-4,.gy-xxxl-4{--bs-gutter-y: 1.35rem}.g-xxxl-5,.gx-xxxl-5{--bs-gutter-x: 1.8rem}.g-xxxl-5,.gy-xxxl-5{--bs-gutter-y: 1.8rem}.g-xxxl-6,.gx-xxxl-6{--bs-gutter-x: 2.25rem}.g-xxxl-6,.gy-xxxl-6{--bs-gutter-y: 2.25rem}.g-xxxl-7,.gx-xxxl-7{--bs-gutter-x: 2.7rem}.g-xxxl-7,.gy-xxxl-7{--bs-gutter-y: 2.7rem}.g-xxxl-8,.gx-xxxl-8{--bs-gutter-x: 3.15rem}.g-xxxl-8,.gy-xxxl-8{--bs-gutter-y: 3.15rem}.g-xxxl-9,.gx-xxxl-9{--bs-gutter-x: 3.6rem}.g-xxxl-9,.gy-xxxl-9{--bs-gutter-y: 3.6rem}.g-xxxl-tiny,.gx-xxxl-tiny{--bs-gutter-x: 0.135rem}.g-xxxl-tiny,.gy-xxxl-tiny{--bs-gutter-y: 0.135rem}}.table{--bs-table-color-type: initial;--bs-table-bg-type: initial;--bs-table-color-state: initial;--bs-table-bg-state: initial;--bs-table-color: var(--bs-body-color);--bs-table-bg: var(--bs-body-bg);--bs-table-border-color: var(--bs-border-color);--bs-table-accent-bg: transparent;--bs-table-striped-color: var(--bs-body-color);--bs-table-striped-bg: rgba(0, 0, 0, 0.04);--bs-table-active-color: var(--bs-body-color);--bs-table-active-bg: rgba(0, 0, 0, 0.1);--bs-table-hover-color: var(--bs-body-color);--bs-table-hover-bg: rgba(0, 0, 0, 0.075);width:100%;margin-bottom:.9rem;vertical-align:top;border-color:var(--bs-table-border-color)}.table>:not(caption)>*>*{padding:.5rem .5rem;color:var(--bs-table-color-state, var(--bs-table-color-type, var(--bs-table-color)));background-color:var(--bs-table-bg);border-bottom-width:var(--bs-border-width);box-shadow:inset 0 0 0 9999px var(--bs-table-bg-state, var(--bs-table-bg-type, var(--bs-table-accent-bg)))}.table>tbody{vertical-align:inherit}.table>thead{vertical-align:bottom}.table-group-divider{border-top:calc(var(--bs-border-width) * 2) solid currentcolor}.caption-top{caption-side:top}.table-sm>:not(caption)>*>*{padding:.25rem .25rem}.table-bordered>:not(caption)>*{border-width:var(--bs-border-width) 0}.table-bordered>:not(caption)>*>*{border-width:0 var(--bs-border-width)}.table-borderless>:not(caption)>*>*{border-bottom-width:0}.table-borderless>:not(:first-child){border-top-width:0}.table-striped>tbody>tr:nth-of-type(odd)>*{--bs-table-color-type: var(--bs-table-striped-color);--bs-table-bg-type: var(--bs-table-striped-bg)}.table-striped-columns>:not(caption)>tr>:nth-child(even){--bs-table-color-type: var(--bs-table-striped-color);--bs-table-bg-type: var(--bs-table-striped-bg)}.table-active{--bs-table-color-state: var(--bs-table-active-color);--bs-table-bg-state: var(--bs-table-active-bg)}.table-hover>tbody>tr:hover>*{--bs-table-color-state: var(--bs-table-hover-color);--bs-table-bg-state: var(--bs-table-hover-bg)}.table-primary{--bs-table-color: #000;--bs-table-bg: #cfe2ff;--bs-table-border-color: #bacbe6;--bs-table-striped-bg: #c5d7f2;--bs-table-striped-color: #000;--bs-table-active-bg: #bacbe6;--bs-table-active-color: #000;--bs-table-hover-bg: #bfd1ec;--bs-table-hover-color: #000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-secondary{--bs-table-color: #000;--bs-table-bg: #e2e3e5;--bs-table-border-color: #cbccce;--bs-table-striped-bg: #d7d8da;--bs-table-striped-color: #000;--bs-table-active-bg: #cbccce;--bs-table-active-color: #000;--bs-table-hover-bg: #d1d2d4;--bs-table-hover-color: #000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-success{--bs-table-color: #000;--bs-table-bg: #d1e7dd;--bs-table-border-color: #bcd0c7;--bs-table-striped-bg: #c7dbd2;--bs-table-striped-color: #000;--bs-table-active-bg: #bcd0c7;--bs-table-active-color: #000;--bs-table-hover-bg: #c1d6cc;--bs-table-hover-color: #000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-info{--bs-table-color: #000;--bs-table-bg: #cff4fc;--bs-table-border-color: #badce3;--bs-table-striped-bg: #c5e8ef;--bs-table-striped-color: #000;--bs-table-active-bg: #badce3;--bs-table-active-color: #000;--bs-table-hover-bg: #bfe2e9;--bs-table-hover-color: #000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-warning{--bs-table-color: #000;--bs-table-bg: #fff3cd;--bs-table-border-color: #e6dbb9;--bs-table-striped-bg: #f2e7c3;--bs-table-striped-color: #000;--bs-table-active-bg: #e6dbb9;--bs-table-active-color: #000;--bs-table-hover-bg: #ece1be;--bs-table-hover-color: #000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-danger{--bs-table-color: #000;--bs-table-bg: #f8d7da;--bs-table-border-color: #dfc2c4;--bs-table-striped-bg: #eccccf;--bs-table-striped-color: #000;--bs-table-active-bg: #dfc2c4;--bs-table-active-color: #000;--bs-table-hover-bg: #e5c7ca;--bs-table-hover-color: #000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-light{--bs-table-color: #000;--bs-table-bg: #f8f9fa;--bs-table-border-color: #dfe0e1;--bs-table-striped-bg: #ecedee;--bs-table-striped-color: #000;--bs-table-active-bg: #dfe0e1;--bs-table-active-color: #000;--bs-table-hover-bg: #e5e6e7;--bs-table-hover-color: #000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-dark{--bs-table-color: #fff;--bs-table-bg: #212529;--bs-table-border-color: #373b3e;--bs-table-striped-bg: #2c3034;--bs-table-striped-color: #fff;--bs-table-active-bg: #373b3e;--bs-table-active-color: #fff;--bs-table-hover-bg: #323539;--bs-table-hover-color: #fff;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-responsive{overflow-x:auto;-webkit-overflow-scrolling:touch}@media(max-width: 575.98px){.table-responsive-sm{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media(max-width: 767.98px){.table-responsive-md{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media(max-width: 991.98px){.table-responsive-lg{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media(max-width: 1199.98px){.table-responsive-xl{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media(max-width: 1399.98px){.table-responsive-xxl{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media(max-width: 1899.98px){.table-responsive-xxxl{overflow-x:auto;-webkit-overflow-scrolling:touch}}.form-label{margin-bottom:.5rem}.col-form-label{padding-top:calc(0.375rem + var(--bs-border-width));padding-bottom:calc(0.375rem + var(--bs-border-width));margin-bottom:0;font-size:inherit;line-height:1.5}.col-form-label-lg{padding-top:calc(0.5rem + var(--bs-border-width));padding-bottom:calc(0.5rem + var(--bs-border-width));font-size:1.25rem}.col-form-label-sm{padding-top:calc(0.25rem + var(--bs-border-width));padding-bottom:calc(0.25rem + var(--bs-border-width));font-size:0.875rem}.form-text{margin-top:.25rem;font-size:0.875em;color:var(--bs-secondary-color)}.form-control{display:block;width:100%;padding:.375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:var(--bs-body-color);background-color:var(--bs-body-bg);background-clip:padding-box;border:var(--bs-border-width) solid var(--bs-border-color);appearance:none;border-radius:var(--bs-border-radius);transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media(prefers-reduced-motion: reduce){.form-control{transition:none}}.form-control[type=file]{overflow:hidden}.form-control[type=file]:not(:disabled):not([readonly]){cursor:pointer}.form-control:focus{color:var(--bs-body-color);background-color:var(--bs-body-bg);border-color:#86b7fe;outline:0;box-shadow:0 0 0 .25rem rgba(13,110,253,.25)}.form-control::-webkit-date-and-time-value{min-width:85px;height:1.5em;margin:0}.form-control::-webkit-datetime-edit{display:block;padding:0}.form-control::placeholder{color:var(--bs-secondary-color);opacity:1}.form-control:disabled{background-color:var(--bs-secondary-bg);opacity:1}.form-control::file-selector-button{padding:.375rem .75rem;margin:-0.375rem -0.75rem;margin-inline-end:.75rem;color:var(--bs-body-color);background-color:var(--bs-tertiary-bg);pointer-events:none;border-color:inherit;border-style:solid;border-width:0;border-inline-end-width:var(--bs-border-width);border-radius:0;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media(prefers-reduced-motion: reduce){.form-control::file-selector-button{transition:none}}.form-control:hover:not(:disabled):not([readonly])::file-selector-button{background-color:var(--bs-secondary-bg)}.form-control-plaintext{display:block;width:100%;padding:.375rem 0;margin-bottom:0;line-height:1.5;color:var(--bs-body-color);background-color:rgba(0,0,0,0);border:solid rgba(0,0,0,0);border-width:var(--bs-border-width) 0}.form-control-plaintext:focus{outline: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 + calc(var(--bs-border-width) * 2));padding:.25rem .5rem;font-size:0.875rem;border-radius:var(--bs-border-radius-sm)}.form-control-sm::file-selector-button{padding:.25rem .5rem;margin:-0.25rem -0.5rem;margin-inline-end:.5rem}.form-control-lg{min-height:calc(1.5em + 1rem + calc(var(--bs-border-width) * 2));padding:.5rem 1rem;font-size:1.25rem;border-radius:var(--bs-border-radius-lg)}.form-control-lg::file-selector-button{padding:.5rem 1rem;margin:-0.5rem -1rem;margin-inline-end:1rem}textarea.form-control{min-height:calc(1.5em + 0.75rem + calc(var(--bs-border-width) * 2))}textarea.form-control-sm{min-height:calc(1.5em + 0.5rem + calc(var(--bs-border-width) * 2))}textarea.form-control-lg{min-height:calc(1.5em + 1rem + calc(var(--bs-border-width) * 2))}.form-control-color{width:3rem;height:calc(1.5em + 0.75rem + calc(var(--bs-border-width) * 2));padding:.375rem}.form-control-color:not(:disabled):not([readonly]){cursor:pointer}.form-control-color::-moz-color-swatch{border:0 !important;border-radius:var(--bs-border-radius)}.form-control-color::-webkit-color-swatch{border:0 !important;border-radius:var(--bs-border-radius)}.form-control-color.form-control-sm{height:calc(1.5em + 0.5rem + calc(var(--bs-border-width) * 2))}.form-control-color.form-control-lg{height:calc(1.5em + 1rem + calc(var(--bs-border-width) * 2))}.form-select{--bs-form-select-bg-img: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e");display:block;width:100%;padding:.375rem 2.25rem .375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:var(--bs-body-color);background-color:var(--bs-body-bg);background-image:var(--bs-form-select-bg-img),var(--bs-form-select-bg-icon, none);background-repeat:no-repeat;background-position:right .75rem center;background-size:16px 12px;border:var(--bs-border-width) solid var(--bs-border-color);border-radius:var(--bs-border-radius);transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out;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:var(--bs-secondary-bg)}.form-select:-moz-focusring{color:rgba(0,0,0,0);text-shadow:0 0 0 var(--bs-body-color)}.form-select-sm{padding-top:.25rem;padding-bottom:.25rem;padding-left:.5rem;font-size:0.875rem;border-radius:var(--bs-border-radius-sm)}.form-select-lg{padding-top:.5rem;padding-bottom:.5rem;padding-left:1rem;font-size:1.25rem;border-radius:var(--bs-border-radius-lg)}[data-bs-theme=dark] .form-select{--bs-form-select-bg-img: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23adb5bd' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e")}.form-check{display:block;min-height:1.5rem;padding-left:1.5em;margin-bottom:.125rem}.form-check .form-check-input{float:left;margin-left:-1.5em}.form-check-reverse{padding-right:1.5em;padding-left:0;text-align:right}.form-check-reverse .form-check-input{float:right;margin-right:-1.5em;margin-left:0}.form-check-input{--bs-form-check-bg: var(--bs-body-bg);width:1em;height:1em;margin-top:.25em;vertical-align:top;background-color:var(--bs-form-check-bg);background-image:var(--bs-form-check-bg-image);background-repeat:no-repeat;background-position:center;background-size:contain;border:var(--bs-border-width) solid var(--bs-border-color);appearance:none;print-color-adjust:exact}.form-check-input[type=checkbox]{border-radius:.25em}.form-check-input[type=radio]{border-radius:50%}.form-check-input:active{filter:brightness(90%)}.form-check-input:focus{border-color:#86b7fe;outline:0;box-shadow:0 0 0 .25rem rgba(13,110,253,.25)}.form-check-input:checked{background-color:#0d6efd;border-color:#0d6efd}.form-check-input:checked[type=checkbox]{--bs-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='m6 10 3 3 6-6'/%3e%3c/svg%3e")}.form-check-input:checked[type=radio]{--bs-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='2' fill='%23fff'/%3e%3c/svg%3e")}.form-check-input[type=checkbox]:indeterminate{background-color:#0d6efd;border-color:#0d6efd;--bs-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10h8'/%3e%3c/svg%3e")}.form-check-input:disabled{pointer-events:none;filter:none;opacity:.5}.form-check-input[disabled]~.form-check-label,.form-check-input:disabled~.form-check-label{cursor:default;opacity:.5}.form-switch{padding-left:2.5em}.form-switch .form-check-input{--bs-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba%280, 0, 0, 0.25%29'/%3e%3c/svg%3e");width:2em;margin-left:-2.5em;background-image:var(--bs-form-switch-bg);background-position:left center;border-radius:2em;transition:background-position .15s ease-in-out}@media(prefers-reduced-motion: reduce){.form-switch .form-check-input{transition:none}}.form-switch .form-check-input:focus{--bs-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%2386b7fe'/%3e%3c/svg%3e")}.form-switch .form-check-input:checked{background-position:right center;--bs-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e")}.form-switch.form-check-reverse{padding-right:2.5em;padding-left:0}.form-switch.form-check-reverse .form-check-input{margin-right:-2.5em;margin-left:0}.form-check-inline{display:inline-block;margin-right:1rem}.btn-check{position:absolute;clip:rect(0, 0, 0, 0);pointer-events:none}.btn-check[disabled]+.btn,.btn-check:disabled+.btn{pointer-events:none;filter:none;opacity:.65}[data-bs-theme=dark] .form-switch .form-check-input:not(:checked):not(:focus){--bs-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba%28255, 255, 255, 0.25%29'/%3e%3c/svg%3e")}.form-range{width:100%;height:1.5rem;padding:0;background-color:rgba(0,0,0,0);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:-0.25rem;background-color:#0d6efd;border:0;border-radius:1rem;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;appearance:none}@media(prefers-reduced-motion: reduce){.form-range::-webkit-slider-thumb{transition:none}}.form-range::-webkit-slider-thumb:active{background-color:#b6d4fe}.form-range::-webkit-slider-runnable-track{width:100%;height:.5rem;color:rgba(0,0,0,0);cursor:pointer;background-color:var(--bs-tertiary-bg);border-color:rgba(0,0,0,0);border-radius:1rem}.form-range::-moz-range-thumb{width:1rem;height:1rem;background-color:#0d6efd;border:0;border-radius:1rem;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;appearance:none}@media(prefers-reduced-motion: reduce){.form-range::-moz-range-thumb{transition:none}}.form-range::-moz-range-thumb:active{background-color:#b6d4fe}.form-range::-moz-range-track{width:100%;height:.5rem;color:rgba(0,0,0,0);cursor:pointer;background-color:var(--bs-tertiary-bg);border-color:rgba(0,0,0,0);border-radius:1rem}.form-range:disabled{pointer-events:none}.form-range:disabled::-webkit-slider-thumb{background-color:var(--bs-secondary-color)}.form-range:disabled::-moz-range-thumb{background-color:var(--bs-secondary-color)}.form-floating{position:relative}.form-floating>.form-control,.form-floating>.form-control-plaintext,.form-floating>.form-select{height:calc(3.5rem + calc(var(--bs-border-width) * 2));min-height:calc(3.5rem + calc(var(--bs-border-width) * 2));line-height:1.25}.form-floating>label{position:absolute;top:0;left:0;z-index:2;height:100%;padding:1rem .75rem;overflow:hidden;text-align:start;text-overflow:ellipsis;white-space:nowrap;pointer-events:none;border:var(--bs-border-width) solid rgba(0,0,0,0);transform-origin:0 0;transition:opacity .1s ease-in-out,transform .1s ease-in-out}@media(prefers-reduced-motion: reduce){.form-floating>label{transition:none}}.form-floating>.form-control,.form-floating>.form-control-plaintext{padding:1rem .75rem}.form-floating>.form-control::placeholder,.form-floating>.form-control-plaintext::placeholder{color:rgba(0,0,0,0)}.form-floating>.form-control:focus,.form-floating>.form-control:not(:placeholder-shown),.form-floating>.form-control-plaintext:focus,.form-floating>.form-control-plaintext:not(:placeholder-shown){padding-top:1.625rem;padding-bottom:.625rem}.form-floating>.form-control:-webkit-autofill,.form-floating>.form-control-plaintext:-webkit-autofill{padding-top:1.625rem;padding-bottom:.625rem}.form-floating>.form-select{padding-top:1.625rem;padding-bottom:.625rem}.form-floating>.form-control:focus~label,.form-floating>.form-control:not(:placeholder-shown)~label,.form-floating>.form-control-plaintext~label,.form-floating>.form-select~label{color:rgba(var(--bs-body-color-rgb), 0.65);transform:scale(0.85) translateY(-0.5rem) translateX(0.15rem)}.form-floating>.form-control:focus~label::after,.form-floating>.form-control:not(:placeholder-shown)~label::after,.form-floating>.form-control-plaintext~label::after,.form-floating>.form-select~label::after{position:absolute;inset:1rem .375rem;z-index:-1;height:1.5em;content:"";background-color:var(--bs-body-bg);border-radius:var(--bs-border-radius)}.form-floating>.form-control:-webkit-autofill~label{color:rgba(var(--bs-body-color-rgb), 0.65);transform:scale(0.85) translateY(-0.5rem) translateX(0.15rem)}.form-floating>.form-control-plaintext~label{border-width:var(--bs-border-width) 0}.form-floating>:disabled~label{color:#6c757d}.form-floating>:disabled~label::after{background-color:var(--bs-secondary-bg)}.input-group{position:relative;display:flex;flex-wrap:wrap;align-items:stretch;width:100%}.input-group>.form-control,.input-group>.form-select,.input-group>.form-floating{position:relative;flex:1 1 auto;width:1%;min-width:0}.input-group>.form-control:focus,.input-group>.form-select:focus,.input-group>.form-floating:focus-within{z-index:5}.input-group .btn{position:relative;z-index:2}.input-group .btn:focus{z-index:5}.input-group-text{display:flex;align-items:center;padding:.375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:var(--bs-body-color);text-align:center;white-space:nowrap;background-color:var(--bs-tertiary-bg);border:var(--bs-border-width) solid var(--bs-border-color);border-radius:var(--bs-border-radius)}.input-group-lg>.form-control,.input-group-lg>.form-select,.input-group-lg>.input-group-text,.input-group-lg>.btn{padding:.5rem 1rem;font-size:1.25rem;border-radius:var(--bs-border-radius-lg)}.input-group-sm>.form-control,.input-group-sm>.form-select,.input-group-sm>.input-group-text,.input-group-sm>.btn{padding:.25rem .5rem;font-size:0.875rem;border-radius:var(--bs-border-radius-sm)}.input-group-lg>.form-select,.input-group-sm>.form-select{padding-right:3rem}.input-group:not(.has-validation)>:not(:last-child):not(.dropdown-toggle):not(.dropdown-menu):not(.form-floating),.input-group:not(.has-validation)>.dropdown-toggle:nth-last-child(n+3),.input-group:not(.has-validation)>.form-floating:not(:last-child)>.form-control,.input-group:not(.has-validation)>.form-floating:not(:last-child)>.form-select{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):not(.form-floating),.input-group.has-validation>.dropdown-toggle:nth-last-child(n+4),.input-group.has-validation>.form-floating:nth-last-child(n+3)>.form-control,.input-group.has-validation>.form-floating:nth-last-child(n+3)>.form-select{border-top-right-radius:0;border-bottom-right-radius:0}.input-group>:not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback){margin-left:calc(var(--bs-border-width) * -1);border-top-left-radius:0;border-bottom-left-radius:0}.input-group>.form-floating:not(:first-child)>.form-control,.input-group>.form-floating:not(:first-child)>.form-select{border-top-left-radius:0;border-bottom-left-radius:0}.valid-feedback{display:none;width:100%;margin-top:.25rem;font-size:0.875em;color:var(--bs-form-valid-color)}.valid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.9rem .8rem;margin-top:.1rem;font-size:0.875rem;color:#fff;background-color:var(--bs-success);border-radius:var(--bs-border-radius)}.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:var(--bs-form-valid-border-color);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.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right calc(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:var(--bs-form-valid-border-color);box-shadow:0 0 0 .25rem rgba(var(--bs-success-rgb), 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:var(--bs-form-valid-border-color)}.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"]{--bs-form-select-bg-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23198754' d='M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");padding-right:4.125rem;background-position:right .75rem center,center right 2.25rem;background-size:16px 12px,calc(0.75em + 0.375rem) calc(0.75em + 0.375rem)}.was-validated .form-select:valid:focus,.form-select.is-valid:focus{border-color:var(--bs-form-valid-border-color);box-shadow:0 0 0 .25rem rgba(var(--bs-success-rgb), 0.25)}.was-validated .form-control-color:valid,.form-control-color.is-valid{width:calc(3rem + calc(1.5em + 0.75rem))}.was-validated .form-check-input:valid,.form-check-input.is-valid{border-color:var(--bs-form-valid-border-color)}.was-validated .form-check-input:valid:checked,.form-check-input.is-valid:checked{background-color:var(--bs-form-valid-color)}.was-validated .form-check-input:valid:focus,.form-check-input.is-valid:focus{box-shadow:0 0 0 .25rem rgba(var(--bs-success-rgb), 0.25)}.was-validated .form-check-input:valid~.form-check-label,.form-check-input.is-valid~.form-check-label{color:var(--bs-form-valid-color)}.form-check-inline .form-check-input~.valid-feedback{margin-left:.5em}.was-validated .input-group>.form-control:not(:focus):valid,.input-group>.form-control:not(:focus).is-valid,.was-validated .input-group>.form-select:not(:focus):valid,.input-group>.form-select:not(:focus).is-valid,.was-validated .input-group>.form-floating:not(:focus-within):valid,.input-group>.form-floating:not(:focus-within).is-valid{z-index:3}.invalid-feedback{display:none;width:100%;margin-top:.25rem;font-size:0.875em;color:var(--bs-form-invalid-color)}.invalid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.9rem .8rem;margin-top:.1rem;font-size:0.875rem;color:#fff;background-color:var(--bs-danger);border-radius:var(--bs-border-radius)}.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:var(--bs-form-invalid-border-color);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:var(--bs-form-invalid-border-color);box-shadow:0 0 0 .25rem rgba(var(--bs-danger-rgb), 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:var(--bs-form-invalid-border-color)}.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"]{--bs-form-select-bg-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");padding-right:4.125rem;background-position:right .75rem center,center right 2.25rem;background-size:16px 12px,calc(0.75em + 0.375rem) calc(0.75em + 0.375rem)}.was-validated .form-select:invalid:focus,.form-select.is-invalid:focus{border-color:var(--bs-form-invalid-border-color);box-shadow:0 0 0 .25rem rgba(var(--bs-danger-rgb), 0.25)}.was-validated .form-control-color:invalid,.form-control-color.is-invalid{width:calc(3rem + calc(1.5em + 0.75rem))}.was-validated .form-check-input:invalid,.form-check-input.is-invalid{border-color:var(--bs-form-invalid-border-color)}.was-validated .form-check-input:invalid:checked,.form-check-input.is-invalid:checked{background-color:var(--bs-form-invalid-color)}.was-validated .form-check-input:invalid:focus,.form-check-input.is-invalid:focus{box-shadow:0 0 0 .25rem rgba(var(--bs-danger-rgb), 0.25)}.was-validated .form-check-input:invalid~.form-check-label,.form-check-input.is-invalid~.form-check-label{color:var(--bs-form-invalid-color)}.form-check-inline .form-check-input~.invalid-feedback{margin-left:.5em}.was-validated .input-group>.form-control:not(:focus):invalid,.input-group>.form-control:not(:focus).is-invalid,.was-validated .input-group>.form-select:not(:focus):invalid,.input-group>.form-select:not(:focus).is-invalid,.was-validated .input-group>.form-floating:not(:focus-within):invalid,.input-group>.form-floating:not(:focus-within).is-invalid{z-index:4}.btn{--bs-btn-padding-x: 0.75rem;--bs-btn-padding-y: 0.375rem;--bs-btn-font-family: ;--bs-btn-font-size:1rem;--bs-btn-font-weight: 400;--bs-btn-line-height: 1.5;--bs-btn-color: var(--bs-body-color);--bs-btn-bg: transparent;--bs-btn-border-width: var(--bs-border-width);--bs-btn-border-color: transparent;--bs-btn-border-radius: var(--bs-border-radius);--bs-btn-hover-border-color: transparent;--bs-btn-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);--bs-btn-disabled-opacity: 0.65;--bs-btn-focus-box-shadow: 0 0 0 0.25rem rgba(var(--bs-btn-focus-shadow-rgb), .5);display:inline-block;padding:var(--bs-btn-padding-y) var(--bs-btn-padding-x);font-family:var(--bs-btn-font-family);font-size:var(--bs-btn-font-size);font-weight:var(--bs-btn-font-weight);line-height:var(--bs-btn-line-height);color:var(--bs-btn-color);text-align:center;vertical-align:middle;cursor:pointer;user-select:none;border:var(--bs-btn-border-width) solid var(--bs-btn-border-color);border-radius:var(--bs-btn-border-radius);background-color:var(--bs-btn-bg);transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media(prefers-reduced-motion: reduce){.btn{transition:none}}.btn:hover{color:var(--bs-btn-hover-color);text-decoration:none;background-color:var(--bs-btn-hover-bg);border-color:var(--bs-btn-hover-border-color)}.btn-check+.btn:hover{color:var(--bs-btn-color);background-color:var(--bs-btn-bg);border-color:var(--bs-btn-border-color)}.btn:focus-visible{color:var(--bs-btn-hover-color);background-color:var(--bs-btn-hover-bg);border-color:var(--bs-btn-hover-border-color);outline:0;box-shadow:var(--bs-btn-focus-box-shadow)}.btn-check:focus-visible+.btn{border-color:var(--bs-btn-hover-border-color);outline:0;box-shadow:var(--bs-btn-focus-box-shadow)}.btn-check:checked+.btn,:not(.btn-check)+.btn:active,.btn:first-child:active,.btn.active,.btn.show{color:var(--bs-btn-active-color);background-color:var(--bs-btn-active-bg);border-color:var(--bs-btn-active-border-color)}.btn-check:checked+.btn:focus-visible,:not(.btn-check)+.btn:active:focus-visible,.btn:first-child:active:focus-visible,.btn.active:focus-visible,.btn.show:focus-visible{box-shadow:var(--bs-btn-focus-box-shadow)}.btn:disabled,.btn.disabled,fieldset:disabled .btn{color:var(--bs-btn-disabled-color);pointer-events:none;background-color:var(--bs-btn-disabled-bg);border-color:var(--bs-btn-disabled-border-color);opacity:var(--bs-btn-disabled-opacity)}.btn-primary{--bs-btn-color: #fff;--bs-btn-bg: #0d6efd;--bs-btn-border-color: #0d6efd;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #0b5ed7;--bs-btn-hover-border-color: #0a58ca;--bs-btn-focus-shadow-rgb: 49, 132, 253;--bs-btn-active-color: #fff;--bs-btn-active-bg: #0a58ca;--bs-btn-active-border-color: #0a53be;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color: #fff;--bs-btn-disabled-bg: #0d6efd;--bs-btn-disabled-border-color: #0d6efd}.btn-secondary{--bs-btn-color: #fff;--bs-btn-bg: #6c757d;--bs-btn-border-color: #6c757d;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #5c636a;--bs-btn-hover-border-color: #565e64;--bs-btn-focus-shadow-rgb: 130, 138, 145;--bs-btn-active-color: #fff;--bs-btn-active-bg: #565e64;--bs-btn-active-border-color: #51585e;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color: #fff;--bs-btn-disabled-bg: #6c757d;--bs-btn-disabled-border-color: #6c757d}.btn-success{--bs-btn-color: #fff;--bs-btn-bg: #198754;--bs-btn-border-color: #198754;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #157347;--bs-btn-hover-border-color: #146c43;--bs-btn-focus-shadow-rgb: 60, 153, 110;--bs-btn-active-color: #fff;--bs-btn-active-bg: #146c43;--bs-btn-active-border-color: #13653f;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color: #fff;--bs-btn-disabled-bg: #198754;--bs-btn-disabled-border-color: #198754}.btn-info{--bs-btn-color: #000;--bs-btn-bg: #0dcaf0;--bs-btn-border-color: #0dcaf0;--bs-btn-hover-color: #000;--bs-btn-hover-bg: #31d2f2;--bs-btn-hover-border-color: #25cff2;--bs-btn-focus-shadow-rgb: 11, 172, 204;--bs-btn-active-color: #000;--bs-btn-active-bg: #3dd5f3;--bs-btn-active-border-color: #25cff2;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color: #000;--bs-btn-disabled-bg: #0dcaf0;--bs-btn-disabled-border-color: #0dcaf0}.btn-warning{--bs-btn-color: #000;--bs-btn-bg: #ffc107;--bs-btn-border-color: #ffc107;--bs-btn-hover-color: #000;--bs-btn-hover-bg: #ffca2c;--bs-btn-hover-border-color: #ffc720;--bs-btn-focus-shadow-rgb: 217, 164, 6;--bs-btn-active-color: #000;--bs-btn-active-bg: #ffcd39;--bs-btn-active-border-color: #ffc720;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color: #000;--bs-btn-disabled-bg: #ffc107;--bs-btn-disabled-border-color: #ffc107}.btn-danger{--bs-btn-color: #fff;--bs-btn-bg: #dc3545;--bs-btn-border-color: #dc3545;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #bb2d3b;--bs-btn-hover-border-color: #b02a37;--bs-btn-focus-shadow-rgb: 225, 83, 97;--bs-btn-active-color: #fff;--bs-btn-active-bg: #b02a37;--bs-btn-active-border-color: #a52834;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color: #fff;--bs-btn-disabled-bg: #dc3545;--bs-btn-disabled-border-color: #dc3545}.btn-light{--bs-btn-color: #000;--bs-btn-bg: #f8f9fa;--bs-btn-border-color: #f8f9fa;--bs-btn-hover-color: #000;--bs-btn-hover-bg: #d3d4d5;--bs-btn-hover-border-color: #c6c7c8;--bs-btn-focus-shadow-rgb: 211, 212, 213;--bs-btn-active-color: #000;--bs-btn-active-bg: #c6c7c8;--bs-btn-active-border-color: #babbbc;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color: #000;--bs-btn-disabled-bg: #f8f9fa;--bs-btn-disabled-border-color: #f8f9fa}.btn-dark{--bs-btn-color: #fff;--bs-btn-bg: #212529;--bs-btn-border-color: #212529;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #424649;--bs-btn-hover-border-color: #373b3e;--bs-btn-focus-shadow-rgb: 66, 70, 73;--bs-btn-active-color: #fff;--bs-btn-active-bg: #4d5154;--bs-btn-active-border-color: #373b3e;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color: #fff;--bs-btn-disabled-bg: #212529;--bs-btn-disabled-border-color: #212529}.btn-outline-primary{--bs-btn-color: #0d6efd;--bs-btn-border-color: #0d6efd;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #0d6efd;--bs-btn-hover-border-color: #0d6efd;--bs-btn-focus-shadow-rgb: 13, 110, 253;--bs-btn-active-color: #fff;--bs-btn-active-bg: #0d6efd;--bs-btn-active-border-color: #0d6efd;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color: #0d6efd;--bs-btn-disabled-bg: transparent;--bs-btn-disabled-border-color: #0d6efd;--bs-gradient: none}.btn-outline-secondary{--bs-btn-color: #6c757d;--bs-btn-border-color: #6c757d;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #6c757d;--bs-btn-hover-border-color: #6c757d;--bs-btn-focus-shadow-rgb: 108, 117, 125;--bs-btn-active-color: #fff;--bs-btn-active-bg: #6c757d;--bs-btn-active-border-color: #6c757d;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color: #6c757d;--bs-btn-disabled-bg: transparent;--bs-btn-disabled-border-color: #6c757d;--bs-gradient: none}.btn-outline-success{--bs-btn-color: #198754;--bs-btn-border-color: #198754;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #198754;--bs-btn-hover-border-color: #198754;--bs-btn-focus-shadow-rgb: 25, 135, 84;--bs-btn-active-color: #fff;--bs-btn-active-bg: #198754;--bs-btn-active-border-color: #198754;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color: #198754;--bs-btn-disabled-bg: transparent;--bs-btn-disabled-border-color: #198754;--bs-gradient: none}.btn-outline-info{--bs-btn-color: #0dcaf0;--bs-btn-border-color: #0dcaf0;--bs-btn-hover-color: #000;--bs-btn-hover-bg: #0dcaf0;--bs-btn-hover-border-color: #0dcaf0;--bs-btn-focus-shadow-rgb: 13, 202, 240;--bs-btn-active-color: #000;--bs-btn-active-bg: #0dcaf0;--bs-btn-active-border-color: #0dcaf0;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color: #0dcaf0;--bs-btn-disabled-bg: transparent;--bs-btn-disabled-border-color: #0dcaf0;--bs-gradient: none}.btn-outline-warning{--bs-btn-color: #ffc107;--bs-btn-border-color: #ffc107;--bs-btn-hover-color: #000;--bs-btn-hover-bg: #ffc107;--bs-btn-hover-border-color: #ffc107;--bs-btn-focus-shadow-rgb: 255, 193, 7;--bs-btn-active-color: #000;--bs-btn-active-bg: #ffc107;--bs-btn-active-border-color: #ffc107;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color: #ffc107;--bs-btn-disabled-bg: transparent;--bs-btn-disabled-border-color: #ffc107;--bs-gradient: none}.btn-outline-danger{--bs-btn-color: #dc3545;--bs-btn-border-color: #dc3545;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #dc3545;--bs-btn-hover-border-color: #dc3545;--bs-btn-focus-shadow-rgb: 220, 53, 69;--bs-btn-active-color: #fff;--bs-btn-active-bg: #dc3545;--bs-btn-active-border-color: #dc3545;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color: #dc3545;--bs-btn-disabled-bg: transparent;--bs-btn-disabled-border-color: #dc3545;--bs-gradient: none}.btn-outline-light{--bs-btn-color: #f8f9fa;--bs-btn-border-color: #f8f9fa;--bs-btn-hover-color: #000;--bs-btn-hover-bg: #f8f9fa;--bs-btn-hover-border-color: #f8f9fa;--bs-btn-focus-shadow-rgb: 248, 249, 250;--bs-btn-active-color: #000;--bs-btn-active-bg: #f8f9fa;--bs-btn-active-border-color: #f8f9fa;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color: #f8f9fa;--bs-btn-disabled-bg: transparent;--bs-btn-disabled-border-color: #f8f9fa;--bs-gradient: none}.btn-outline-dark{--bs-btn-color: #212529;--bs-btn-border-color: #212529;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #212529;--bs-btn-hover-border-color: #212529;--bs-btn-focus-shadow-rgb: 33, 37, 41;--bs-btn-active-color: #fff;--bs-btn-active-bg: #212529;--bs-btn-active-border-color: #212529;--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color: #212529;--bs-btn-disabled-bg: transparent;--bs-btn-disabled-border-color: #212529;--bs-gradient: none}.btn-link{--bs-btn-font-weight: 400;--bs-btn-color: var(--bs-link-color);--bs-btn-bg: transparent;--bs-btn-border-color: transparent;--bs-btn-hover-color: var(--bs-link-hover-color);--bs-btn-hover-border-color: transparent;--bs-btn-active-color: var(--bs-link-hover-color);--bs-btn-active-border-color: transparent;--bs-btn-disabled-color: #6c757d;--bs-btn-disabled-border-color: transparent;--bs-btn-box-shadow: 0 0 0 #000;--bs-btn-focus-shadow-rgb: 49, 132, 253;text-decoration:none}.btn-link:hover,.btn-link:focus-visible{text-decoration:underline}.btn-link:focus-visible{color:var(--bs-btn-color)}.btn-link:hover{color:var(--bs-btn-hover-color)}.btn-lg,.btn-group-lg>.btn{--bs-btn-padding-y: 0.5rem;--bs-btn-padding-x: 1rem;--bs-btn-font-size:1.25rem;--bs-btn-border-radius: var(--bs-border-radius-lg)}.btn-sm,.btn-group-sm>.btn{--bs-btn-padding-y: 0.2rem;--bs-btn-padding-x: 0.5rem;--bs-btn-font-size:0.875rem;--bs-btn-border-radius: var(--bs-border-radius-sm)}.fade{transition:opacity .15s linear}@media(prefers-reduced-motion: reduce){.fade{transition:none}}.fade:not(.show){opacity:0}.collapse:not(.show){display:none}.collapsing{height:0;overflow:hidden;transition:height .35s ease}@media(prefers-reduced-motion: reduce){.collapsing{transition:none}}.collapsing.collapse-horizontal{width:0;height:auto;transition:width .35s ease}@media(prefers-reduced-motion: reduce){.collapsing.collapse-horizontal{transition:none}}.dropup,.dropend,.dropdown,.dropstart,.dropup-center,.dropdown-center{position:relative}.dropdown-toggle{white-space:nowrap}.dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid;border-right:.3em solid rgba(0,0,0,0);border-bottom:0;border-left:.3em solid rgba(0,0,0,0)}.dropdown-toggle:empty::after{margin-left:0}.dropdown-menu{--bs-dropdown-zindex: 1000;--bs-dropdown-min-width: 11rem;--bs-dropdown-padding-x: 0;--bs-dropdown-padding-y: 0.5rem;--bs-dropdown-spacer: 0.125rem;--bs-dropdown-font-size:1rem;--bs-dropdown-color: var(--bs-body-color);--bs-dropdown-bg: var(--bs-body-bg);--bs-dropdown-border-color: var(--bs-border-color-translucent);--bs-dropdown-border-radius: var(--bs-border-radius);--bs-dropdown-border-width: var(--bs-border-width);--bs-dropdown-inner-border-radius: calc(var(--bs-border-radius) - var(--bs-border-width));--bs-dropdown-divider-bg: var(--bs-border-color-translucent);--bs-dropdown-divider-margin-y: 0.45rem;--bs-dropdown-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);--bs-dropdown-link-color: var(--bs-body-color);--bs-dropdown-link-hover-color: var(--bs-body-color);--bs-dropdown-link-hover-bg: var(--bs-tertiary-bg);--bs-dropdown-link-active-color: #fff;--bs-dropdown-link-active-bg: #0d6efd;--bs-dropdown-link-disabled-color: var(--bs-tertiary-color);--bs-dropdown-item-padding-x: 0.9rem;--bs-dropdown-item-padding-y: 0.225rem;--bs-dropdown-header-color: #6c757d;--bs-dropdown-header-padding-x: 0.9rem;--bs-dropdown-header-padding-y: 0.5rem;position:absolute;z-index:var(--bs-dropdown-zindex);display:none;min-width:var(--bs-dropdown-min-width);padding:var(--bs-dropdown-padding-y) var(--bs-dropdown-padding-x);margin:0;font-size:var(--bs-dropdown-font-size);color:var(--bs-dropdown-color);text-align:left;list-style:none;background-color:var(--bs-dropdown-bg);background-clip:padding-box;border:var(--bs-dropdown-border-width) solid var(--bs-dropdown-border-color);border-radius:var(--bs-dropdown-border-radius)}.dropdown-menu[data-bs-popper]{top:100%;left:0;margin-top:var(--bs-dropdown-spacer)}.dropdown-menu-start{--bs-position: start}.dropdown-menu-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-end{--bs-position: end}.dropdown-menu-end[data-bs-popper]{right:0;left:auto}@media(min-width: 576px){.dropdown-menu-sm-start{--bs-position: start}.dropdown-menu-sm-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-sm-end{--bs-position: end}.dropdown-menu-sm-end[data-bs-popper]{right:0;left:auto}}@media(min-width: 768px){.dropdown-menu-md-start{--bs-position: start}.dropdown-menu-md-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-md-end{--bs-position: end}.dropdown-menu-md-end[data-bs-popper]{right:0;left:auto}}@media(min-width: 992px){.dropdown-menu-lg-start{--bs-position: start}.dropdown-menu-lg-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-lg-end{--bs-position: end}.dropdown-menu-lg-end[data-bs-popper]{right:0;left:auto}}@media(min-width: 1200px){.dropdown-menu-xl-start{--bs-position: start}.dropdown-menu-xl-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-xl-end{--bs-position: end}.dropdown-menu-xl-end[data-bs-popper]{right:0;left:auto}}@media(min-width: 1400px){.dropdown-menu-xxl-start{--bs-position: start}.dropdown-menu-xxl-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-xxl-end{--bs-position: end}.dropdown-menu-xxl-end[data-bs-popper]{right:0;left:auto}}@media(min-width: 1900px){.dropdown-menu-xxxl-start{--bs-position: start}.dropdown-menu-xxxl-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-xxxl-end{--bs-position: end}.dropdown-menu-xxxl-end[data-bs-popper]{right:0;left:auto}}.dropup .dropdown-menu[data-bs-popper]{top:auto;bottom:100%;margin-top:0;margin-bottom:var(--bs-dropdown-spacer)}.dropup .dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:0;border-right:.3em solid rgba(0,0,0,0);border-bottom:.3em solid;border-left:.3em solid rgba(0,0,0,0)}.dropup .dropdown-toggle:empty::after{margin-left:0}.dropend .dropdown-menu[data-bs-popper]{top:0;right:auto;left:100%;margin-top:0;margin-left:var(--bs-dropdown-spacer)}.dropend .dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid rgba(0,0,0,0);border-right:0;border-bottom:.3em solid rgba(0,0,0,0);border-left:.3em solid}.dropend .dropdown-toggle:empty::after{margin-left:0}.dropend .dropdown-toggle::after{vertical-align:0}.dropstart .dropdown-menu[data-bs-popper]{top:0;right:100%;left:auto;margin-top:0;margin-right:var(--bs-dropdown-spacer)}.dropstart .dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:""}.dropstart .dropdown-toggle::after{display:none}.dropstart .dropdown-toggle::before{display:inline-block;margin-right:.255em;vertical-align:.255em;content:"";border-top:.3em solid rgba(0,0,0,0);border-right:.3em solid;border-bottom:.3em solid rgba(0,0,0,0)}.dropstart .dropdown-toggle:empty::after{margin-left:0}.dropstart .dropdown-toggle::before{vertical-align:0}.dropdown-divider{height:0;margin:var(--bs-dropdown-divider-margin-y) 0;overflow:hidden;border-top:1px solid var(--bs-dropdown-divider-bg);opacity:1}.dropdown-item{display:block;width:100%;padding:var(--bs-dropdown-item-padding-y) var(--bs-dropdown-item-padding-x);clear:both;font-weight:400;color:var(--bs-dropdown-link-color);text-align:inherit;white-space:nowrap;background-color:rgba(0,0,0,0);border:0;border-radius:var(--bs-dropdown-item-border-radius, 0)}.dropdown-item:hover,.dropdown-item:focus{color:var(--bs-dropdown-link-hover-color);text-decoration:none;background-color:var(--bs-dropdown-link-hover-bg)}.dropdown-item.active,.dropdown-item:active{color:var(--bs-dropdown-link-active-color);text-decoration:none;background-color:var(--bs-dropdown-link-active-bg)}.dropdown-item.disabled,.dropdown-item:disabled{color:var(--bs-dropdown-link-disabled-color);pointer-events:none;background-color:rgba(0,0,0,0)}.dropdown-menu.show{display:block}.dropdown-header{display:block;padding:var(--bs-dropdown-header-padding-y) var(--bs-dropdown-header-padding-x);margin-bottom:0;font-size:0.875rem;color:var(--bs-dropdown-header-color);white-space:nowrap}.dropdown-item-text{display:block;padding:var(--bs-dropdown-item-padding-y) var(--bs-dropdown-item-padding-x);color:var(--bs-dropdown-link-color)}.dropdown-menu-dark{--bs-dropdown-color: #dee2e6;--bs-dropdown-bg: #343a40;--bs-dropdown-border-color: var(--bs-border-color-translucent);--bs-dropdown-box-shadow: ;--bs-dropdown-link-color: #dee2e6;--bs-dropdown-link-hover-color: #fff;--bs-dropdown-divider-bg: var(--bs-border-color-translucent);--bs-dropdown-link-hover-bg: rgba(255, 255, 255, 0.15);--bs-dropdown-link-active-color: #fff;--bs-dropdown-link-active-bg: #0d6efd;--bs-dropdown-link-disabled-color: #adb5bd;--bs-dropdown-header-color: #adb5bd}.btn-group,.btn-group-vertical{position:relative;display:inline-flex;vertical-align:middle}.btn-group>.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{border-radius:var(--bs-border-radius)}.btn-group>:not(.btn-check:first-child)+.btn,.btn-group>.btn-group:not(:first-child){margin-left:calc(var(--bs-border-width) * -1)}.btn-group>.btn:not(:last-child):not(.dropdown-toggle),.btn-group>.btn.dropdown-toggle-split:first-child,.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:.5625rem;padding-left:.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:.375rem;padding-left:.375rem}.btn-lg+.dropdown-toggle-split,.btn-group-lg>.btn+.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:not(:first-child),.btn-group-vertical>.btn-group:not(:first-child){margin-top:calc(var(--bs-border-width) * -1)}.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{--bs-nav-link-padding-x: 1rem;--bs-nav-link-padding-y: 0.5rem;--bs-nav-link-font-weight: ;--bs-nav-link-color: var(--bs-link-color);--bs-nav-link-hover-color: var(--bs-link-hover-color);--bs-nav-link-disabled-color: var(--bs-secondary-color);display:flex;flex-wrap:wrap;padding-left:0;margin-bottom:0;list-style:none}.nav-link{display:block;padding:var(--bs-nav-link-padding-y) var(--bs-nav-link-padding-x);font-size:var(--bs-nav-link-font-size);font-weight:var(--bs-nav-link-font-weight);color:var(--bs-nav-link-color);background:none;border:0;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out}@media(prefers-reduced-motion: reduce){.nav-link{transition:none}}.nav-link:hover,.nav-link:focus{color:var(--bs-nav-link-hover-color);text-decoration:none}.nav-link:focus-visible{outline:0;box-shadow:0 0 0 .25rem rgba(13,110,253,.25)}.nav-link.disabled{color:var(--bs-nav-link-disabled-color);pointer-events:none;cursor:default}.nav-tabs{--bs-nav-tabs-border-width: var(--bs-border-width);--bs-nav-tabs-border-color: #adb5bd;--bs-nav-tabs-border-radius: var(--bs-border-radius);--bs-nav-tabs-link-hover-border-color: var(--bs-secondary-bg) var(--bs-secondary-bg) #adb5bd;--bs-nav-tabs-link-active-color: #2c3237;--bs-nav-tabs-link-active-bg: var(--bs-body-bg);--bs-nav-tabs-link-active-border-color: #adb5bd #adb5bd #fff !important;border-bottom:var(--bs-nav-tabs-border-width) solid var(--bs-nav-tabs-border-color)}.nav-tabs .nav-link{margin-bottom:calc(-1*var(--bs-nav-tabs-border-width));border:var(--bs-nav-tabs-border-width) solid rgba(0,0,0,0);border-top-left-radius:var(--bs-nav-tabs-border-radius);border-top-right-radius:var(--bs-nav-tabs-border-radius)}.nav-tabs .nav-link:hover,.nav-tabs .nav-link:focus{isolation:isolate;border-color:var(--bs-nav-tabs-link-hover-border-color)}.nav-tabs .nav-link.disabled,.nav-tabs .nav-link:disabled{color:var(--bs-nav-link-disabled-color);background-color:rgba(0,0,0,0);border-color:rgba(0,0,0,0)}.nav-tabs .nav-link.active,.nav-tabs .nav-item.show .nav-link{color:var(--bs-nav-tabs-link-active-color);background-color:var(--bs-nav-tabs-link-active-bg);border-color:var(--bs-nav-tabs-link-active-border-color)}.nav-tabs .dropdown-menu{margin-top:calc(-1*var(--bs-nav-tabs-border-width));border-top-left-radius:0;border-top-right-radius:0}.nav-pills{--bs-nav-pills-border-radius: var(--bs-border-radius);--bs-nav-pills-link-active-color: #fff;--bs-nav-pills-link-active-bg: #0d6efd}.nav-pills .nav-link{border-radius:var(--bs-nav-pills-border-radius)}.nav-pills .nav-link:disabled{color:var(--bs-nav-link-disabled-color);background-color:rgba(0,0,0,0);border-color:rgba(0,0,0,0)}.nav-pills .nav-link.active,.nav-pills .show>.nav-link{color:var(--bs-nav-pills-link-active-color);background-color:var(--bs-nav-pills-link-active-bg)}.nav-underline{--bs-nav-underline-gap: 1rem;--bs-nav-underline-border-width: 0.125rem;--bs-nav-underline-link-active-color: var(--bs-emphasis-color);gap:var(--bs-nav-underline-gap)}.nav-underline .nav-link{padding-right:0;padding-left:0;border-bottom:var(--bs-nav-underline-border-width) solid rgba(0,0,0,0)}.nav-underline .nav-link:hover,.nav-underline .nav-link:focus{border-bottom-color:currentcolor}.nav-underline .nav-link.active,.nav-underline .show>.nav-link{font-weight:700;color:var(--bs-nav-underline-link-active-color);border-bottom-color:currentcolor}.nav-fill>.nav-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{--bs-navbar-padding-x: 1rem;--bs-navbar-padding-y: 1rem;--bs-navbar-color: rgba(var(--bs-emphasis-color-rgb), 0.65);--bs-navbar-hover-color: rgba(var(--bs-emphasis-color-rgb), 0.8);--bs-navbar-disabled-color: rgba(var(--bs-emphasis-color-rgb), 0.3);--bs-navbar-active-color: rgba(var(--bs-emphasis-color-rgb), 1);--bs-navbar-brand-padding-y: 0.125rem;--bs-navbar-brand-margin-end: 1rem;--bs-navbar-brand-font-size: 1.5rem;--bs-navbar-brand-color: rgba(var(--bs-emphasis-color-rgb), 1);--bs-navbar-brand-hover-color: rgba(var(--bs-emphasis-color-rgb), 1);--bs-navbar-nav-link-padding-x: 0.5rem;--bs-navbar-toggler-padding-y: 0.25rem;--bs-navbar-toggler-padding-x: 0.75rem;--bs-navbar-toggler-font-size: 1.25rem;--bs-navbar-toggler-icon-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%2833, 37, 41, 0.75%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");--bs-navbar-toggler-border-color: rgba(var(--bs-emphasis-color-rgb), 0.15);--bs-navbar-toggler-border-radius: var(--bs-border-radius);--bs-navbar-toggler-focus-width: 0.25rem;--bs-navbar-toggler-transition: box-shadow 0.15s ease-in-out;position:relative;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;padding:var(--bs-navbar-padding-y) var(--bs-navbar-padding-x)}.navbar>.container,.navbar>.container-fluid,.navbar>.container-sm,.navbar>.container-md,.navbar>.container-lg,.navbar>.container-xl,.navbar>.container-xxl,.navbar>.container-xxxl{display:flex;flex-wrap:inherit;align-items:center;justify-content:space-between}.navbar-brand{padding-top:var(--bs-navbar-brand-padding-y);padding-bottom:var(--bs-navbar-brand-padding-y);margin-right:var(--bs-navbar-brand-margin-end);font-size:var(--bs-navbar-brand-font-size);color:var(--bs-navbar-brand-color);white-space:nowrap}.navbar-brand:hover,.navbar-brand:focus{color:var(--bs-navbar-brand-hover-color);text-decoration:none}.navbar-nav{--bs-nav-link-padding-x: 0;--bs-nav-link-padding-y: 0.5rem;--bs-nav-link-font-weight: ;--bs-nav-link-color: var(--bs-navbar-color);--bs-nav-link-hover-color: var(--bs-navbar-hover-color);--bs-nav-link-disabled-color: var(--bs-navbar-disabled-color);display:flex;flex-direction:column;padding-left:0;margin-bottom:0;list-style:none}.navbar-nav .nav-link.active,.navbar-nav .nav-link.show{color:var(--bs-navbar-active-color)}.navbar-nav .dropdown-menu{position:static}.navbar-text{padding-top:.5rem;padding-bottom:.5rem;color:var(--bs-navbar-color)}.navbar-text a,.navbar-text a:hover,.navbar-text a:focus{color:var(--bs-navbar-active-color)}.navbar-collapse{flex-basis:100%;flex-grow:1;align-items:center}.navbar-toggler{padding:var(--bs-navbar-toggler-padding-y) var(--bs-navbar-toggler-padding-x);font-size:var(--bs-navbar-toggler-font-size);line-height:1;color:var(--bs-navbar-color);background-color:rgba(0,0,0,0);border:var(--bs-border-width) solid var(--bs-navbar-toggler-border-color);border-radius:var(--bs-navbar-toggler-border-radius);transition:var(--bs-navbar-toggler-transition)}@media(prefers-reduced-motion: reduce){.navbar-toggler{transition:none}}.navbar-toggler:hover{text-decoration:none}.navbar-toggler:focus{text-decoration:none;outline:0;box-shadow:0 0 0 var(--bs-navbar-toggler-focus-width)}.navbar-toggler-icon{display:inline-block;width:1.5em;height:1.5em;vertical-align:middle;background-image:var(--bs-navbar-toggler-icon-bg);background-repeat:no-repeat;background-position:center;background-size:100%}.navbar-nav-scroll{max-height:var(--bs-scroll-height, 75vh);overflow-y:auto}@media(min-width: 576px){.navbar-expand-sm{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand-sm .navbar-nav{flex-direction:row}.navbar-expand-sm .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-sm .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand-sm .navbar-nav-scroll{overflow:visible}.navbar-expand-sm .navbar-collapse{display:flex !important;flex-basis:auto}.navbar-expand-sm .navbar-toggler{display:none}.navbar-expand-sm .offcanvas{position:static;z-index:auto;flex-grow:1;width:auto !important;height:auto !important;visibility:visible !important;background-color:rgba(0,0,0,0) !important;border:0 !important;transform:none !important;transition:none}.navbar-expand-sm .offcanvas .offcanvas-header{display:none}.navbar-expand-sm .offcanvas .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible}}@media(min-width: 768px){.navbar-expand-md{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand-md .navbar-nav{flex-direction:row}.navbar-expand-md .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-md .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand-md .navbar-nav-scroll{overflow:visible}.navbar-expand-md .navbar-collapse{display:flex !important;flex-basis:auto}.navbar-expand-md .navbar-toggler{display:none}.navbar-expand-md .offcanvas{position:static;z-index:auto;flex-grow:1;width:auto !important;height:auto !important;visibility:visible !important;background-color:rgba(0,0,0,0) !important;border:0 !important;transform:none !important;transition:none}.navbar-expand-md .offcanvas .offcanvas-header{display:none}.navbar-expand-md .offcanvas .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible}}@media(min-width: 992px){.navbar-expand-lg{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand-lg .navbar-nav{flex-direction:row}.navbar-expand-lg .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-lg .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand-lg .navbar-nav-scroll{overflow:visible}.navbar-expand-lg .navbar-collapse{display:flex !important;flex-basis:auto}.navbar-expand-lg .navbar-toggler{display:none}.navbar-expand-lg .offcanvas{position:static;z-index:auto;flex-grow:1;width:auto !important;height:auto !important;visibility:visible !important;background-color:rgba(0,0,0,0) !important;border:0 !important;transform:none !important;transition:none}.navbar-expand-lg .offcanvas .offcanvas-header{display:none}.navbar-expand-lg .offcanvas .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible}}@media(min-width: 1200px){.navbar-expand-xl{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand-xl .navbar-nav{flex-direction:row}.navbar-expand-xl .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-xl .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand-xl .navbar-nav-scroll{overflow:visible}.navbar-expand-xl .navbar-collapse{display:flex !important;flex-basis:auto}.navbar-expand-xl .navbar-toggler{display:none}.navbar-expand-xl .offcanvas{position:static;z-index:auto;flex-grow:1;width:auto !important;height:auto !important;visibility:visible !important;background-color:rgba(0,0,0,0) !important;border:0 !important;transform:none !important;transition:none}.navbar-expand-xl .offcanvas .offcanvas-header{display:none}.navbar-expand-xl .offcanvas .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible}}@media(min-width: 1400px){.navbar-expand-xxl{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand-xxl .navbar-nav{flex-direction:row}.navbar-expand-xxl .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-xxl .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand-xxl .navbar-nav-scroll{overflow:visible}.navbar-expand-xxl .navbar-collapse{display:flex !important;flex-basis:auto}.navbar-expand-xxl .navbar-toggler{display:none}.navbar-expand-xxl .offcanvas{position:static;z-index:auto;flex-grow:1;width:auto !important;height:auto !important;visibility:visible !important;background-color:rgba(0,0,0,0) !important;border:0 !important;transform:none !important;transition:none}.navbar-expand-xxl .offcanvas .offcanvas-header{display:none}.navbar-expand-xxl .offcanvas .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible}}@media(min-width: 1900px){.navbar-expand-xxxl{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand-xxxl .navbar-nav{flex-direction:row}.navbar-expand-xxxl .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-xxxl .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand-xxxl .navbar-nav-scroll{overflow:visible}.navbar-expand-xxxl .navbar-collapse{display:flex !important;flex-basis:auto}.navbar-expand-xxxl .navbar-toggler{display:none}.navbar-expand-xxxl .offcanvas{position:static;z-index:auto;flex-grow:1;width:auto !important;height:auto !important;visibility:visible !important;background-color:rgba(0,0,0,0) !important;border:0 !important;transform:none !important;transition:none}.navbar-expand-xxxl .offcanvas .offcanvas-header{display:none}.navbar-expand-xxxl .offcanvas .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible}}.navbar-expand{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand .navbar-nav{flex-direction:row}.navbar-expand .navbar-nav .dropdown-menu{position:absolute}.navbar-expand .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand .navbar-nav-scroll{overflow:visible}.navbar-expand .navbar-collapse{display:flex !important;flex-basis:auto}.navbar-expand .navbar-toggler{display:none}.navbar-expand .offcanvas{position:static;z-index:auto;flex-grow:1;width:auto !important;height:auto !important;visibility:visible !important;background-color:rgba(0,0,0,0) !important;border:0 !important;transform:none !important;transition:none}.navbar-expand .offcanvas .offcanvas-header{display:none}.navbar-expand .offcanvas .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible}.navbar-dark,.navbar[data-bs-theme=dark]{--bs-navbar-color: rgba(255, 255, 255, 0.55);--bs-navbar-hover-color: rgba(255, 255, 255, 0.75);--bs-navbar-disabled-color: rgba(255, 255, 255, 0.25);--bs-navbar-active-color: #fff;--bs-navbar-brand-color: #fff;--bs-navbar-brand-hover-color: #fff;--bs-navbar-toggler-border-color: rgba(255, 255, 255, 0.1);--bs-navbar-toggler-icon-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}[data-bs-theme=dark] .navbar-toggler-icon{--bs-navbar-toggler-icon-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}.card{--bs-card-spacer-y: 0.9rem;--bs-card-spacer-x: 0.9rem;--bs-card-title-spacer-y: 0.45rem;--bs-card-title-color: ;--bs-card-subtitle-color: ;--bs-card-border-width: var(--bs-border-width);--bs-card-border-color: #e4e7eb;--bs-card-border-radius: var(--bs-border-radius);--bs-card-box-shadow: ;--bs-card-inner-border-radius: calc(var(--bs-border-radius) - (var(--bs-border-width)));--bs-card-cap-padding-y: 0.45rem;--bs-card-cap-padding-x: 0.9rem;--bs-card-cap-bg: rgba(var(--bs-body-color-rgb), 0.03);--bs-card-cap-color: ;--bs-card-height: ;--bs-card-color: ;--bs-card-bg: #fff;--bs-card-img-overlay-padding: 0.9rem;--bs-card-group-margin: 0.75rem;position:relative;display:flex;flex-direction:column;min-width:0;height:var(--bs-card-height);color:var(--bs-body-color);word-wrap:break-word;background-color:var(--bs-card-bg);background-clip:border-box;border:var(--bs-card-border-width) solid var(--bs-card-border-color);border-radius:var(--bs-card-border-radius)}.card>hr{margin-right:0;margin-left:0}.card>.list-group{border-top:inherit;border-bottom:inherit}.card>.list-group:first-child{border-top-width:0;border-top-left-radius:var(--bs-card-inner-border-radius);border-top-right-radius:var(--bs-card-inner-border-radius)}.card>.list-group:last-child{border-bottom-width:0;border-bottom-right-radius:var(--bs-card-inner-border-radius);border-bottom-left-radius:var(--bs-card-inner-border-radius)}.card>.card-header+.list-group,.card>.list-group+.card-footer{border-top:0}.card-body{flex:1 1 auto;padding:var(--bs-card-spacer-y) var(--bs-card-spacer-x);color:var(--bs-card-color)}.card-title{margin-bottom:var(--bs-card-title-spacer-y);color:var(--bs-card-title-color)}.card-subtitle{margin-top:calc(-0.5*var(--bs-card-title-spacer-y));margin-bottom:0;color:var(--bs-card-subtitle-color)}.card-text:last-child{margin-bottom:0}.card-link:hover{text-decoration:none}.card-link+.card-link{margin-left:var(--bs-card-spacer-x)}.card-header{padding:var(--bs-card-cap-padding-y) var(--bs-card-cap-padding-x);margin-bottom:0;color:var(--bs-card-cap-color);background-color:var(--bs-card-cap-bg);border-bottom:var(--bs-card-border-width) solid var(--bs-card-border-color)}.card-header:first-child{border-radius:var(--bs-card-inner-border-radius) var(--bs-card-inner-border-radius) 0 0}.card-footer{padding:var(--bs-card-cap-padding-y) var(--bs-card-cap-padding-x);color:var(--bs-card-cap-color);background-color:var(--bs-card-cap-bg);border-top:var(--bs-card-border-width) solid var(--bs-card-border-color)}.card-footer:last-child{border-radius:0 0 var(--bs-card-inner-border-radius) var(--bs-card-inner-border-radius)}.card-header-tabs{margin-right:calc(-0.5*var(--bs-card-cap-padding-x));margin-bottom:calc(-1*var(--bs-card-cap-padding-y));margin-left:calc(-0.5*var(--bs-card-cap-padding-x));border-bottom:0}.card-header-tabs .nav-link.active{background-color:var(--bs-card-bg);border-bottom-color:var(--bs-card-bg)}.card-header-pills{margin-right:calc(-0.5*var(--bs-card-cap-padding-x));margin-left:calc(-0.5*var(--bs-card-cap-padding-x))}.card-img-overlay{position:absolute;top:0;right:0;bottom:0;left:0;padding:var(--bs-card-img-overlay-padding);border-radius:var(--bs-card-inner-border-radius)}.card-img,.card-img-top,.card-img-bottom{width:100%}.card-img,.card-img-top{border-top-left-radius:var(--bs-card-inner-border-radius);border-top-right-radius:var(--bs-card-inner-border-radius)}.card-img,.card-img-bottom{border-bottom-right-radius:var(--bs-card-inner-border-radius);border-bottom-left-radius:var(--bs-card-inner-border-radius)}.card-group>.card{margin-bottom:var(--bs-card-group-margin)}@media(min-width: 576px){.card-group{display:flex;flex-flow:row wrap}.card-group>.card{flex:1 0 0%;margin-bottom:0}.card-group>.card+.card{margin-left:0;border-left:0}.card-group>.card:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.card-group>.card:not(:last-child) .card-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{--bs-accordion-color: var(--bs-body-color);--bs-accordion-bg: var(--bs-body-bg);--bs-accordion-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, border-radius 0.15s ease;--bs-accordion-border-color: var(--bs-border-color);--bs-accordion-border-width: var(--bs-border-width);--bs-accordion-border-radius: var(--bs-border-radius);--bs-accordion-inner-border-radius: calc(var(--bs-border-radius) - (var(--bs-border-width)));--bs-accordion-btn-padding-x: 1.25rem;--bs-accordion-btn-padding-y: 1rem;--bs-accordion-btn-color: var(--bs-body-color);--bs-accordion-btn-bg: var(--bs-accordion-bg);--bs-accordion-btn-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23212529'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");--bs-accordion-btn-icon-width: 1.25rem;--bs-accordion-btn-icon-transform: rotate(-180deg);--bs-accordion-btn-icon-transition: transform 0.2s ease-in-out;--bs-accordion-btn-active-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23052c65'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");--bs-accordion-btn-focus-border-color: #86b7fe;--bs-accordion-btn-focus-box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);--bs-accordion-body-padding-x: 1.25rem;--bs-accordion-body-padding-y: 1rem;--bs-accordion-active-color: var(--bs-primary-text-emphasis);--bs-accordion-active-bg: var(--bs-primary-bg-subtle)}.accordion-button{position:relative;display:flex;align-items:center;width:100%;padding:var(--bs-accordion-btn-padding-y) var(--bs-accordion-btn-padding-x);font-size:1rem;color:var(--bs-accordion-btn-color);text-align:left;background-color:var(--bs-accordion-btn-bg);border:0;border-radius:0;overflow-anchor:none;transition:var(--bs-accordion-transition)}@media(prefers-reduced-motion: reduce){.accordion-button{transition:none}}.accordion-button:not(.collapsed){color:var(--bs-accordion-active-color);background-color:var(--bs-accordion-active-bg);box-shadow:inset 0 calc(-1*var(--bs-accordion-border-width)) 0 var(--bs-accordion-border-color)}.accordion-button:not(.collapsed)::after{background-image:var(--bs-accordion-btn-active-icon);transform:var(--bs-accordion-btn-icon-transform)}.accordion-button::after{flex-shrink:0;width:var(--bs-accordion-btn-icon-width);height:var(--bs-accordion-btn-icon-width);margin-left:auto;content:"";background-image:var(--bs-accordion-btn-icon);background-repeat:no-repeat;background-size:var(--bs-accordion-btn-icon-width);transition:var(--bs-accordion-btn-icon-transition)}@media(prefers-reduced-motion: reduce){.accordion-button::after{transition:none}}.accordion-button:hover{z-index:2}.accordion-button:focus{z-index:3;border-color:var(--bs-accordion-btn-focus-border-color);outline:0;box-shadow:var(--bs-accordion-btn-focus-box-shadow)}.accordion-header{margin-bottom:0}.accordion-item{color:var(--bs-accordion-color);background-color:var(--bs-accordion-bg);border:var(--bs-accordion-border-width) solid var(--bs-accordion-border-color)}.accordion-item:first-of-type{border-top-left-radius:var(--bs-accordion-border-radius);border-top-right-radius:var(--bs-accordion-border-radius)}.accordion-item:first-of-type .accordion-button{border-top-left-radius:var(--bs-accordion-inner-border-radius);border-top-right-radius:var(--bs-accordion-inner-border-radius)}.accordion-item:not(:first-of-type){border-top:0}.accordion-item:last-of-type{border-bottom-right-radius:var(--bs-accordion-border-radius);border-bottom-left-radius:var(--bs-accordion-border-radius)}.accordion-item:last-of-type .accordion-button.collapsed{border-bottom-right-radius:var(--bs-accordion-inner-border-radius);border-bottom-left-radius:var(--bs-accordion-inner-border-radius)}.accordion-item:last-of-type .accordion-collapse{border-bottom-right-radius:var(--bs-accordion-border-radius);border-bottom-left-radius:var(--bs-accordion-border-radius)}.accordion-body{padding:var(--bs-accordion-body-padding-y) var(--bs-accordion-body-padding-x)}.accordion-flush .accordion-collapse{border-width:0}.accordion-flush .accordion-item{border-right:0;border-left:0;border-radius:0}.accordion-flush .accordion-item:first-child{border-top:0}.accordion-flush .accordion-item:last-child{border-bottom:0}.accordion-flush .accordion-item .accordion-button,.accordion-flush .accordion-item .accordion-button.collapsed{border-radius:0}[data-bs-theme=dark] .accordion-button::after{--bs-accordion-btn-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%236ea8fe'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");--bs-accordion-btn-active-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%236ea8fe'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e")}.breadcrumb{--bs-breadcrumb-padding-x: 0;--bs-breadcrumb-padding-y: 0;--bs-breadcrumb-margin-bottom: 1rem;--bs-breadcrumb-bg: ;--bs-breadcrumb-border-radius: ;--bs-breadcrumb-divider-color: var(--bs-secondary-color);--bs-breadcrumb-item-padding-x: 0.5rem;--bs-breadcrumb-item-active-color: var(--bs-secondary-color);display:flex;flex-wrap:wrap;padding:var(--bs-breadcrumb-padding-y) var(--bs-breadcrumb-padding-x);margin-bottom:var(--bs-breadcrumb-margin-bottom);font-size:var(--bs-breadcrumb-font-size);list-style:none;background-color:var(--bs-breadcrumb-bg);border-radius:var(--bs-breadcrumb-border-radius)}.breadcrumb-item+.breadcrumb-item{padding-left:var(--bs-breadcrumb-item-padding-x)}.breadcrumb-item+.breadcrumb-item::before{float:left;padding-right:var(--bs-breadcrumb-item-padding-x);color:var(--bs-breadcrumb-divider-color);content:var(--bs-breadcrumb-divider, "/") /* rtl: var(--bs-breadcrumb-divider, "/") */}.breadcrumb-item.active{color:var(--bs-breadcrumb-item-active-color)}.pagination{--bs-pagination-padding-x: 0.75rem;--bs-pagination-padding-y: 0.375rem;--bs-pagination-font-size:1rem;--bs-pagination-color: var(--bs-link-color);--bs-pagination-bg: var(--bs-body-bg);--bs-pagination-border-width: var(--bs-border-width);--bs-pagination-border-color: var(--bs-border-color);--bs-pagination-border-radius: var(--bs-border-radius);--bs-pagination-hover-color: var(--bs-link-hover-color);--bs-pagination-hover-bg: var(--bs-tertiary-bg);--bs-pagination-hover-border-color: var(--bs-border-color);--bs-pagination-focus-color: var(--bs-link-hover-color);--bs-pagination-focus-bg: var(--bs-secondary-bg);--bs-pagination-focus-box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);--bs-pagination-active-color: #fff;--bs-pagination-active-bg: #0d6efd;--bs-pagination-active-border-color: #0d6efd;--bs-pagination-disabled-color: var(--bs-secondary-color);--bs-pagination-disabled-bg: var(--bs-secondary-bg);--bs-pagination-disabled-border-color: var(--bs-border-color);display:flex;padding-left:0;list-style:none}.page-link{position:relative;display:block;padding:var(--bs-pagination-padding-y) var(--bs-pagination-padding-x);font-size:var(--bs-pagination-font-size);color:var(--bs-pagination-color);background-color:var(--bs-pagination-bg);border:var(--bs-pagination-border-width) solid var(--bs-pagination-border-color);transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media(prefers-reduced-motion: reduce){.page-link{transition:none}}.page-link:hover{z-index:2;color:var(--bs-pagination-hover-color);text-decoration:none;background-color:var(--bs-pagination-hover-bg);border-color:var(--bs-pagination-hover-border-color)}.page-link:focus{z-index:3;color:var(--bs-pagination-focus-color);background-color:var(--bs-pagination-focus-bg);outline:0;box-shadow:var(--bs-pagination-focus-box-shadow)}.page-link.active,.active>.page-link{z-index:3;color:var(--bs-pagination-active-color);background-color:var(--bs-pagination-active-bg);border-color:var(--bs-pagination-active-border-color)}.page-link.disabled,.disabled>.page-link{color:var(--bs-pagination-disabled-color);pointer-events:none;background-color:var(--bs-pagination-disabled-bg);border-color:var(--bs-pagination-disabled-border-color)}.page-item:not(:first-child) .page-link{margin-left:calc(var(--bs-border-width) * -1)}.page-item:first-child .page-link{border-top-left-radius:var(--bs-pagination-border-radius);border-bottom-left-radius:var(--bs-pagination-border-radius)}.page-item:last-child .page-link{border-top-right-radius:var(--bs-pagination-border-radius);border-bottom-right-radius:var(--bs-pagination-border-radius)}.pagination-lg{--bs-pagination-padding-x: 1.5rem;--bs-pagination-padding-y: 0.75rem;--bs-pagination-font-size:1.25rem;--bs-pagination-border-radius: var(--bs-border-radius-lg)}.pagination-sm{--bs-pagination-padding-x: 0.5rem;--bs-pagination-padding-y: 0.25rem;--bs-pagination-font-size:0.875rem;--bs-pagination-border-radius: var(--bs-border-radius-sm)}.badge{--bs-badge-padding-x: 0.65em;--bs-badge-padding-y: 0.35em;--bs-badge-font-size:0.75em;--bs-badge-font-weight: 400;--bs-badge-color: #fff;--bs-badge-border-radius: 0.2rem;display:inline-block;padding:var(--bs-badge-padding-y) var(--bs-badge-padding-x);font-size:var(--bs-badge-font-size);font-weight:var(--bs-badge-font-weight);line-height:1;color:var(--bs-badge-color);text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:var(--bs-badge-border-radius)}.badge:empty{display:none}.btn .badge{position:relative;top:-1px}.alert{--bs-alert-bg: transparent;--bs-alert-padding-x: 0.9rem;--bs-alert-padding-y: 0.9rem;--bs-alert-margin-bottom: 1rem;--bs-alert-color: inherit;--bs-alert-border-color: transparent;--bs-alert-border: var(--bs-border-width) solid var(--bs-alert-border-color);--bs-alert-border-radius: var(--bs-border-radius);--bs-alert-link-color: inherit;position:relative;padding:var(--bs-alert-padding-y) var(--bs-alert-padding-x);margin-bottom:var(--bs-alert-margin-bottom);color:var(--bs-alert-color);background-color:var(--bs-alert-bg);border:var(--bs-alert-border);border-radius:var(--bs-alert-border-radius)}.alert-heading{color:inherit}.alert-link{font-weight:700;color:var(--bs-alert-link-color)}.alert-dismissible{padding-right:2.25rem}.alert-dismissible .btn-close{position:absolute;top:0;right:0;z-index:2;padding:1.125rem .9rem}.alert-primary{--bs-alert-color: var(--bs-primary-text-emphasis);--bs-alert-bg: var(--bs-primary-bg-subtle);--bs-alert-border-color: var(--bs-primary-border-subtle);--bs-alert-link-color: var(--bs-primary-text-emphasis)}.alert-secondary{--bs-alert-color: var(--bs-secondary-text-emphasis);--bs-alert-bg: var(--bs-secondary-bg-subtle);--bs-alert-border-color: var(--bs-secondary-border-subtle);--bs-alert-link-color: var(--bs-secondary-text-emphasis)}.alert-success{--bs-alert-color: var(--bs-success-text-emphasis);--bs-alert-bg: var(--bs-success-bg-subtle);--bs-alert-border-color: var(--bs-success-border-subtle);--bs-alert-link-color: var(--bs-success-text-emphasis)}.alert-info{--bs-alert-color: var(--bs-info-text-emphasis);--bs-alert-bg: var(--bs-info-bg-subtle);--bs-alert-border-color: var(--bs-info-border-subtle);--bs-alert-link-color: var(--bs-info-text-emphasis)}.alert-warning{--bs-alert-color: var(--bs-warning-text-emphasis);--bs-alert-bg: var(--bs-warning-bg-subtle);--bs-alert-border-color: var(--bs-warning-border-subtle);--bs-alert-link-color: var(--bs-warning-text-emphasis)}.alert-danger{--bs-alert-color: var(--bs-danger-text-emphasis);--bs-alert-bg: var(--bs-danger-bg-subtle);--bs-alert-border-color: var(--bs-danger-border-subtle);--bs-alert-link-color: var(--bs-danger-text-emphasis)}.alert-light{--bs-alert-color: var(--bs-light-text-emphasis);--bs-alert-bg: var(--bs-light-bg-subtle);--bs-alert-border-color: var(--bs-light-border-subtle);--bs-alert-link-color: var(--bs-light-text-emphasis)}.alert-dark{--bs-alert-color: var(--bs-dark-text-emphasis);--bs-alert-bg: var(--bs-dark-bg-subtle);--bs-alert-border-color: var(--bs-dark-border-subtle);--bs-alert-link-color: var(--bs-dark-text-emphasis)}@keyframes progress-bar-stripes{0%{background-position-x:1rem}}.progress,.progress-stacked{--bs-progress-height: 1rem;--bs-progress-font-size:0.75rem;--bs-progress-bg: var(--bs-secondary-bg);--bs-progress-border-radius: var(--bs-border-radius);--bs-progress-box-shadow: var(--bs-box-shadow-inset);--bs-progress-bar-color: #fff;--bs-progress-bar-bg: #0d6efd;--bs-progress-bar-transition: width 0.6s ease;display:flex;height:var(--bs-progress-height);overflow:hidden;font-size:var(--bs-progress-font-size);background-color:var(--bs-progress-bg);border-radius:var(--bs-progress-border-radius)}.progress-bar{display:flex;flex-direction:column;justify-content:center;overflow:hidden;color:var(--bs-progress-bar-color);text-align:center;white-space:nowrap;background-color:var(--bs-progress-bar-bg);transition:var(--bs-progress-bar-transition)}@media(prefers-reduced-motion: reduce){.progress-bar{transition:none}}.progress-bar-striped{background-image:linear-gradient(45deg, rgba(255, 255, 255, 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:var(--bs-progress-height) var(--bs-progress-height)}.progress-stacked>.progress{overflow:visible}.progress-stacked>.progress>.progress-bar{width:100%}.progress-bar-animated{animation:1s linear infinite progress-bar-stripes}@media(prefers-reduced-motion: reduce){.progress-bar-animated{animation:none}}.list-group{--bs-list-group-color: var(--bs-body-color);--bs-list-group-bg: var(--bs-body-bg);--bs-list-group-border-color: var(--bs-border-color);--bs-list-group-border-width: var(--bs-border-width);--bs-list-group-border-radius: var(--bs-border-radius);--bs-list-group-item-padding-x: 0.9rem;--bs-list-group-item-padding-y: 0.45rem;--bs-list-group-action-color: var(--bs-secondary-color);--bs-list-group-action-hover-color: var(--bs-emphasis-color);--bs-list-group-action-hover-bg: var(--bs-tertiary-bg);--bs-list-group-action-active-color: var(--bs-body-color);--bs-list-group-action-active-bg: var(--bs-secondary-bg);--bs-list-group-disabled-color: var(--bs-secondary-color);--bs-list-group-disabled-bg: var(--bs-body-bg);--bs-list-group-active-color: #fff;--bs-list-group-active-bg: #0d6efd;--bs-list-group-active-border-color: #0d6efd;display:flex;flex-direction:column;padding-left:0;margin-bottom:0;border-radius:var(--bs-list-group-border-radius)}.list-group-numbered{list-style-type:none;counter-reset:section}.list-group-numbered>.list-group-item::before{content:counters(section, ".") ". ";counter-increment:section}.list-group-item-action{width:100%;color:var(--bs-list-group-action-color);text-align:inherit}.list-group-item-action:hover,.list-group-item-action:focus{z-index:1;color:var(--bs-list-group-action-hover-color);text-decoration:none;background-color:var(--bs-list-group-action-hover-bg)}.list-group-item-action:active{color:var(--bs-list-group-action-active-color);background-color:var(--bs-list-group-action-active-bg)}.list-group-item{position:relative;display:block;padding:var(--bs-list-group-item-padding-y) var(--bs-list-group-item-padding-x);color:var(--bs-list-group-color);background-color:var(--bs-list-group-bg);border:var(--bs-list-group-border-width) solid var(--bs-list-group-border-color)}.list-group-item:first-child{border-top-left-radius:inherit;border-top-right-radius:inherit}.list-group-item:last-child{border-bottom-right-radius:inherit;border-bottom-left-radius:inherit}.list-group-item.disabled,.list-group-item:disabled{color:var(--bs-list-group-disabled-color);pointer-events:none;background-color:var(--bs-list-group-disabled-bg)}.list-group-item.active{z-index:2;color:var(--bs-list-group-active-color);background-color:var(--bs-list-group-active-bg);border-color:var(--bs-list-group-active-border-color)}.list-group-item+.list-group-item{border-top-width:0}.list-group-item+.list-group-item.active{margin-top:calc(-1*var(--bs-list-group-border-width));border-top-width:var(--bs-list-group-border-width)}.list-group-horizontal{flex-direction:row}.list-group-horizontal>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal>.list-group-item.active{margin-top:0}.list-group-horizontal>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal>.list-group-item+.list-group-item.active{margin-left:calc(-1*var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}@media(min-width: 576px){.list-group-horizontal-sm{flex-direction:row}.list-group-horizontal-sm>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal-sm>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal-sm>.list-group-item.active{margin-top:0}.list-group-horizontal-sm>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal-sm>.list-group-item+.list-group-item.active{margin-left:calc(-1*var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}}@media(min-width: 768px){.list-group-horizontal-md{flex-direction:row}.list-group-horizontal-md>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal-md>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal-md>.list-group-item.active{margin-top:0}.list-group-horizontal-md>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal-md>.list-group-item+.list-group-item.active{margin-left:calc(-1*var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}}@media(min-width: 992px){.list-group-horizontal-lg{flex-direction:row}.list-group-horizontal-lg>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal-lg>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal-lg>.list-group-item.active{margin-top:0}.list-group-horizontal-lg>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal-lg>.list-group-item+.list-group-item.active{margin-left:calc(-1*var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}}@media(min-width: 1200px){.list-group-horizontal-xl{flex-direction:row}.list-group-horizontal-xl>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal-xl>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal-xl>.list-group-item.active{margin-top:0}.list-group-horizontal-xl>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal-xl>.list-group-item+.list-group-item.active{margin-left:calc(-1*var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}}@media(min-width: 1400px){.list-group-horizontal-xxl{flex-direction:row}.list-group-horizontal-xxl>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal-xxl>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal-xxl>.list-group-item.active{margin-top:0}.list-group-horizontal-xxl>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal-xxl>.list-group-item+.list-group-item.active{margin-left:calc(-1*var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}}@media(min-width: 1900px){.list-group-horizontal-xxxl{flex-direction:row}.list-group-horizontal-xxxl>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal-xxxl>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal-xxxl>.list-group-item.active{margin-top:0}.list-group-horizontal-xxxl>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal-xxxl>.list-group-item+.list-group-item.active{margin-left:calc(-1*var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}}.list-group-flush{border-radius:0}.list-group-flush>.list-group-item{border-width:0 0 var(--bs-list-group-border-width)}.list-group-flush>.list-group-item:last-child{border-bottom-width:0}.list-group-item-primary{--bs-list-group-color: var(--bs-primary-text-emphasis);--bs-list-group-bg: var(--bs-primary-bg-subtle);--bs-list-group-border-color: var(--bs-primary-border-subtle);--bs-list-group-action-hover-color: var(--bs-emphasis-color);--bs-list-group-action-hover-bg: var(--bs-primary-border-subtle);--bs-list-group-action-active-color: var(--bs-emphasis-color);--bs-list-group-action-active-bg: var(--bs-primary-border-subtle);--bs-list-group-active-color: var(--bs-primary-bg-subtle);--bs-list-group-active-bg: var(--bs-primary-text-emphasis);--bs-list-group-active-border-color: var(--bs-primary-text-emphasis)}.list-group-item-secondary{--bs-list-group-color: var(--bs-secondary-text-emphasis);--bs-list-group-bg: var(--bs-secondary-bg-subtle);--bs-list-group-border-color: var(--bs-secondary-border-subtle);--bs-list-group-action-hover-color: var(--bs-emphasis-color);--bs-list-group-action-hover-bg: var(--bs-secondary-border-subtle);--bs-list-group-action-active-color: var(--bs-emphasis-color);--bs-list-group-action-active-bg: var(--bs-secondary-border-subtle);--bs-list-group-active-color: var(--bs-secondary-bg-subtle);--bs-list-group-active-bg: var(--bs-secondary-text-emphasis);--bs-list-group-active-border-color: var(--bs-secondary-text-emphasis)}.list-group-item-success{--bs-list-group-color: var(--bs-success-text-emphasis);--bs-list-group-bg: var(--bs-success-bg-subtle);--bs-list-group-border-color: var(--bs-success-border-subtle);--bs-list-group-action-hover-color: var(--bs-emphasis-color);--bs-list-group-action-hover-bg: var(--bs-success-border-subtle);--bs-list-group-action-active-color: var(--bs-emphasis-color);--bs-list-group-action-active-bg: var(--bs-success-border-subtle);--bs-list-group-active-color: var(--bs-success-bg-subtle);--bs-list-group-active-bg: var(--bs-success-text-emphasis);--bs-list-group-active-border-color: var(--bs-success-text-emphasis)}.list-group-item-info{--bs-list-group-color: var(--bs-info-text-emphasis);--bs-list-group-bg: var(--bs-info-bg-subtle);--bs-list-group-border-color: var(--bs-info-border-subtle);--bs-list-group-action-hover-color: var(--bs-emphasis-color);--bs-list-group-action-hover-bg: var(--bs-info-border-subtle);--bs-list-group-action-active-color: var(--bs-emphasis-color);--bs-list-group-action-active-bg: var(--bs-info-border-subtle);--bs-list-group-active-color: var(--bs-info-bg-subtle);--bs-list-group-active-bg: var(--bs-info-text-emphasis);--bs-list-group-active-border-color: var(--bs-info-text-emphasis)}.list-group-item-warning{--bs-list-group-color: var(--bs-warning-text-emphasis);--bs-list-group-bg: var(--bs-warning-bg-subtle);--bs-list-group-border-color: var(--bs-warning-border-subtle);--bs-list-group-action-hover-color: var(--bs-emphasis-color);--bs-list-group-action-hover-bg: var(--bs-warning-border-subtle);--bs-list-group-action-active-color: var(--bs-emphasis-color);--bs-list-group-action-active-bg: var(--bs-warning-border-subtle);--bs-list-group-active-color: var(--bs-warning-bg-subtle);--bs-list-group-active-bg: var(--bs-warning-text-emphasis);--bs-list-group-active-border-color: var(--bs-warning-text-emphasis)}.list-group-item-danger{--bs-list-group-color: var(--bs-danger-text-emphasis);--bs-list-group-bg: var(--bs-danger-bg-subtle);--bs-list-group-border-color: var(--bs-danger-border-subtle);--bs-list-group-action-hover-color: var(--bs-emphasis-color);--bs-list-group-action-hover-bg: var(--bs-danger-border-subtle);--bs-list-group-action-active-color: var(--bs-emphasis-color);--bs-list-group-action-active-bg: var(--bs-danger-border-subtle);--bs-list-group-active-color: var(--bs-danger-bg-subtle);--bs-list-group-active-bg: var(--bs-danger-text-emphasis);--bs-list-group-active-border-color: var(--bs-danger-text-emphasis)}.list-group-item-light{--bs-list-group-color: var(--bs-light-text-emphasis);--bs-list-group-bg: var(--bs-light-bg-subtle);--bs-list-group-border-color: var(--bs-light-border-subtle);--bs-list-group-action-hover-color: var(--bs-emphasis-color);--bs-list-group-action-hover-bg: var(--bs-light-border-subtle);--bs-list-group-action-active-color: var(--bs-emphasis-color);--bs-list-group-action-active-bg: var(--bs-light-border-subtle);--bs-list-group-active-color: var(--bs-light-bg-subtle);--bs-list-group-active-bg: var(--bs-light-text-emphasis);--bs-list-group-active-border-color: var(--bs-light-text-emphasis)}.list-group-item-dark{--bs-list-group-color: var(--bs-dark-text-emphasis);--bs-list-group-bg: var(--bs-dark-bg-subtle);--bs-list-group-border-color: var(--bs-dark-border-subtle);--bs-list-group-action-hover-color: var(--bs-emphasis-color);--bs-list-group-action-hover-bg: var(--bs-dark-border-subtle);--bs-list-group-action-active-color: var(--bs-emphasis-color);--bs-list-group-action-active-bg: var(--bs-dark-border-subtle);--bs-list-group-active-color: var(--bs-dark-bg-subtle);--bs-list-group-active-bg: var(--bs-dark-text-emphasis);--bs-list-group-active-border-color: var(--bs-dark-text-emphasis)}.btn-close{--bs-btn-close-color: #000;--bs-btn-close-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23000'%3e%3cpath d='M.293.293a1 1 0 0 1 1.414 0L8 6.586 14.293.293a1 1 0 1 1 1.414 1.414L9.414 8l6.293 6.293a1 1 0 0 1-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 0 1-1.414-1.414L6.586 8 .293 1.707a1 1 0 0 1 0-1.414z'/%3e%3c/svg%3e");--bs-btn-close-opacity: 0.5;--bs-btn-close-hover-opacity: 0.75;--bs-btn-close-focus-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);--bs-btn-close-focus-opacity: 1;--bs-btn-close-disabled-opacity: 0.25;--bs-btn-close-white-filter: invert(1) grayscale(100%) brightness(200%);box-sizing:content-box;width:.75rem;height:.75rem;padding:.25em .25em;color:var(--bs-btn-close-color);background:rgba(0,0,0,0) var(--bs-btn-close-bg) center/0.75rem auto no-repeat;border:0;border-radius:.4rem;opacity:var(--bs-btn-close-opacity)}.btn-close:hover{color:var(--bs-btn-close-color);text-decoration:none;opacity:var(--bs-btn-close-hover-opacity)}.btn-close:focus{outline:0;box-shadow:var(--bs-btn-close-focus-shadow);opacity:var(--bs-btn-close-focus-opacity)}.btn-close:disabled,.btn-close.disabled{pointer-events:none;user-select:none;opacity:var(--bs-btn-close-disabled-opacity)}.btn-close-white{filter:var(--bs-btn-close-white-filter)}[data-bs-theme=dark] .btn-close{filter:var(--bs-btn-close-white-filter)}.toast{--bs-toast-zindex: 1090;--bs-toast-padding-x: 0.75rem;--bs-toast-padding-y: 0.5rem;--bs-toast-spacing: 1.5rem;--bs-toast-max-width: 550px;--bs-toast-font-size:0.875rem;--bs-toast-color: ;--bs-toast-bg: rgba(var(--bs-body-bg-rgb), 0.85);--bs-toast-border-width: var(--bs-border-width);--bs-toast-border-color: var(--bs-border-color-translucent);--bs-toast-border-radius: var(--bs-border-radius);--bs-toast-box-shadow: var(--bs-box-shadow);--bs-toast-header-color: var(--bs-secondary-color);--bs-toast-header-bg: rgba(var(--bs-body-bg-rgb), 0.85);--bs-toast-header-border-color: var(--bs-border-color-translucent);width:var(--bs-toast-max-width);max-width:100%;font-size:var(--bs-toast-font-size);color:var(--bs-toast-color);pointer-events:auto;background-color:var(--bs-toast-bg);background-clip:padding-box;border:var(--bs-toast-border-width) solid var(--bs-toast-border-color);box-shadow:var(--bs-toast-box-shadow);border-radius:var(--bs-toast-border-radius)}.toast.showing{opacity:0}.toast:not(.show){display:none}.toast-container{--bs-toast-zindex: 1090;position:absolute;z-index:var(--bs-toast-zindex);width:max-content;max-width:100%;pointer-events:none}.toast-container>:not(:last-child){margin-bottom:var(--bs-toast-spacing)}.toast-header{display:flex;align-items:center;padding:var(--bs-toast-padding-y) var(--bs-toast-padding-x);color:var(--bs-toast-header-color);background-color:var(--bs-toast-header-bg);background-clip:padding-box;border-bottom:var(--bs-toast-border-width) solid var(--bs-toast-header-border-color);border-top-left-radius:calc(var(--bs-toast-border-radius) - var(--bs-toast-border-width));border-top-right-radius:calc(var(--bs-toast-border-radius) - var(--bs-toast-border-width))}.toast-header .btn-close{margin-right:calc(-0.5*var(--bs-toast-padding-x));margin-left:var(--bs-toast-padding-x)}.toast-body{padding:var(--bs-toast-padding-x);word-wrap:break-word}.modal{--bs-modal-zindex: 1055;--bs-modal-width: 500px;--bs-modal-padding: 0.9rem;--bs-modal-margin: 0.5rem;--bs-modal-color: #212529;--bs-modal-bg: #fff;--bs-modal-border-color: var(--bs-border-color-translucent);--bs-modal-border-width: var(--bs-border-width);--bs-modal-border-radius: var(--bs-border-radius-lg);--bs-modal-box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);--bs-modal-inner-border-radius: calc(var(--bs-border-radius-lg) - (var(--bs-border-width)));--bs-modal-header-padding-x: 0.9rem;--bs-modal-header-padding-y: 0.9rem;--bs-modal-header-padding: 0.9rem 0.9rem;--bs-modal-header-border-color: var(--bs-border-color);--bs-modal-header-border-width: var(--bs-border-width);--bs-modal-title-line-height: 1.5;--bs-modal-footer-gap: 0.5rem;--bs-modal-footer-bg: ;--bs-modal-footer-border-color: var(--bs-border-color);--bs-modal-footer-border-width: var(--bs-border-width);position:fixed;top:0;left:0;z-index:var(--bs-modal-zindex);display:none;width:100%;height:100%;overflow-x:hidden;overflow-y:auto;outline:0}.modal-dialog{position:relative;width:auto;margin:var(--bs-modal-margin);pointer-events:none}.modal.fade .modal-dialog{transition:transform .3s ease-out;transform:translate(0, -50px)}@media(prefers-reduced-motion: reduce){.modal.fade .modal-dialog{transition:none}}.modal.show .modal-dialog{transform:none}.modal.modal-static .modal-dialog{transform:scale(1.02)}.modal-dialog-scrollable{height:calc(100% - var(--bs-modal-margin)*2)}.modal-dialog-scrollable .modal-content{max-height:100%;overflow:hidden}.modal-dialog-scrollable .modal-body{overflow-y:auto}.modal-dialog-centered{display:flex;align-items:center;min-height:calc(100% - var(--bs-modal-margin)*2)}.modal-content{position:relative;display:flex;flex-direction:column;width:100%;color:var(--bs-modal-color);pointer-events:auto;background-color:var(--bs-modal-bg);background-clip:padding-box;border:var(--bs-modal-border-width) solid var(--bs-modal-border-color);border-radius:var(--bs-modal-border-radius);outline:0}.modal-backdrop{--bs-backdrop-zindex: 1050;--bs-backdrop-bg: #000;--bs-backdrop-opacity: 0.5;position:fixed;top:0;left:0;z-index:var(--bs-backdrop-zindex);width:100vw;height:100vh;background-color:var(--bs-backdrop-bg)}.modal-backdrop.fade{opacity:0}.modal-backdrop.show{opacity:var(--bs-backdrop-opacity)}.modal-header{display:flex;flex-shrink:0;align-items:center;justify-content:space-between;padding:var(--bs-modal-header-padding);border-bottom:var(--bs-modal-header-border-width) solid var(--bs-modal-header-border-color);border-top-left-radius:var(--bs-modal-inner-border-radius);border-top-right-radius:var(--bs-modal-inner-border-radius)}.modal-header .btn-close{padding:calc(var(--bs-modal-header-padding-y)*.5) calc(var(--bs-modal-header-padding-x)*.5);margin:calc(-0.5*var(--bs-modal-header-padding-y)) calc(-0.5*var(--bs-modal-header-padding-x)) calc(-0.5*var(--bs-modal-header-padding-y)) auto}.modal-title{margin-bottom:0;line-height:var(--bs-modal-title-line-height)}.modal-body{position:relative;flex:1 1 auto;padding:var(--bs-modal-padding)}.modal-footer{display:flex;flex-shrink:0;flex-wrap:wrap;align-items:center;justify-content:flex-end;padding:calc(var(--bs-modal-padding) - var(--bs-modal-footer-gap)*.5);background-color:var(--bs-modal-footer-bg);border-top:var(--bs-modal-footer-border-width) solid var(--bs-modal-footer-border-color);border-bottom-right-radius:var(--bs-modal-inner-border-radius);border-bottom-left-radius:var(--bs-modal-inner-border-radius)}.modal-footer>*{margin:calc(var(--bs-modal-footer-gap)*.5)}@media(min-width: 576px){.modal{--bs-modal-margin: 1.75rem;--bs-modal-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15)}.modal-dialog{max-width:var(--bs-modal-width);margin-right:auto;margin-left:auto}.modal-sm{--bs-modal-width: 300px}}@media(min-width: 992px){.modal-lg,.modal-xl{--bs-modal-width: 800px}}@media(min-width: 1200px){.modal-xl{--bs-modal-width: 1140px}}.modal-fullscreen{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen .modal-header,.modal-fullscreen .modal-footer{border-radius:0}.modal-fullscreen .modal-body{overflow-y:auto}@media(max-width: 575.98px){.modal-fullscreen-sm-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-sm-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-sm-down .modal-header,.modal-fullscreen-sm-down .modal-footer{border-radius:0}.modal-fullscreen-sm-down .modal-body{overflow-y:auto}}@media(max-width: 767.98px){.modal-fullscreen-md-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-md-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-md-down .modal-header,.modal-fullscreen-md-down .modal-footer{border-radius:0}.modal-fullscreen-md-down .modal-body{overflow-y:auto}}@media(max-width: 991.98px){.modal-fullscreen-lg-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-lg-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-lg-down .modal-header,.modal-fullscreen-lg-down .modal-footer{border-radius:0}.modal-fullscreen-lg-down .modal-body{overflow-y:auto}}@media(max-width: 1199.98px){.modal-fullscreen-xl-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-xl-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-xl-down .modal-header,.modal-fullscreen-xl-down .modal-footer{border-radius:0}.modal-fullscreen-xl-down .modal-body{overflow-y:auto}}@media(max-width: 1399.98px){.modal-fullscreen-xxl-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-xxl-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-xxl-down .modal-header,.modal-fullscreen-xxl-down .modal-footer{border-radius:0}.modal-fullscreen-xxl-down .modal-body{overflow-y:auto}}@media(max-width: 1899.98px){.modal-fullscreen-xxxl-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-xxxl-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-xxxl-down .modal-header,.modal-fullscreen-xxxl-down .modal-footer{border-radius:0}.modal-fullscreen-xxxl-down .modal-body{overflow-y:auto}}.tooltip{--bs-tooltip-zindex: 1080;--bs-tooltip-max-width: 350px;--bs-tooltip-padding-x: 0.8rem;--bs-tooltip-padding-y: 0.9rem;--bs-tooltip-margin: ;--bs-tooltip-font-size:0.875rem;--bs-tooltip-color: var(--bs-body-bg);--bs-tooltip-bg: var(--bs-emphasis-color);--bs-tooltip-border-radius: var(--bs-border-radius);--bs-tooltip-opacity: 0.9;--bs-tooltip-arrow-width: 0.8rem;--bs-tooltip-arrow-height: 0.4rem;z-index:var(--bs-tooltip-zindex);display:block;margin:var(--bs-tooltip-margin);font-family:var(--bs-font-sans-serif);font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;white-space:normal;word-spacing:normal;line-break:auto;font-size:var(--bs-tooltip-font-size);word-wrap:break-word;opacity:0}.tooltip.show{opacity:var(--bs-tooltip-opacity)}.tooltip .tooltip-arrow{display:block;width:var(--bs-tooltip-arrow-width);height:var(--bs-tooltip-arrow-height)}.tooltip .tooltip-arrow::before{position:absolute;content:"";border-color:rgba(0,0,0,0);border-style:solid}.bs-tooltip-top .tooltip-arrow,.bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow{bottom:calc(-1*var(--bs-tooltip-arrow-height))}.bs-tooltip-top .tooltip-arrow::before,.bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow::before{top:-1px;border-width:var(--bs-tooltip-arrow-height) calc(var(--bs-tooltip-arrow-width)*.5) 0;border-top-color:var(--bs-tooltip-bg)}.bs-tooltip-end .tooltip-arrow,.bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow{left:calc(-1*var(--bs-tooltip-arrow-height));width:var(--bs-tooltip-arrow-height);height:var(--bs-tooltip-arrow-width)}.bs-tooltip-end .tooltip-arrow::before,.bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow::before{right:-1px;border-width:calc(var(--bs-tooltip-arrow-width)*.5) var(--bs-tooltip-arrow-height) calc(var(--bs-tooltip-arrow-width)*.5) 0;border-right-color:var(--bs-tooltip-bg)}.bs-tooltip-bottom .tooltip-arrow,.bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow{top:calc(-1*var(--bs-tooltip-arrow-height))}.bs-tooltip-bottom .tooltip-arrow::before,.bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow::before{bottom:-1px;border-width:0 calc(var(--bs-tooltip-arrow-width)*.5) var(--bs-tooltip-arrow-height);border-bottom-color:var(--bs-tooltip-bg)}.bs-tooltip-start .tooltip-arrow,.bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow{right:calc(-1*var(--bs-tooltip-arrow-height));width:var(--bs-tooltip-arrow-height);height:var(--bs-tooltip-arrow-width)}.bs-tooltip-start .tooltip-arrow::before,.bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow::before{left:-1px;border-width:calc(var(--bs-tooltip-arrow-width)*.5) 0 calc(var(--bs-tooltip-arrow-width)*.5) var(--bs-tooltip-arrow-height);border-left-color:var(--bs-tooltip-bg)}.tooltip-inner{max-width:var(--bs-tooltip-max-width);padding:var(--bs-tooltip-padding-y) var(--bs-tooltip-padding-x);color:var(--bs-tooltip-color);text-align:center;background-color:var(--bs-tooltip-bg);border-radius:var(--bs-tooltip-border-radius)}.popover{--bs-popover-zindex: 1070;--bs-popover-max-width: 276px;--bs-popover-font-size:0.875rem;--bs-popover-bg: var(--bs-body-bg);--bs-popover-border-width: var(--bs-border-width);--bs-popover-border-color: var(--bs-border-color-translucent);--bs-popover-border-radius: var(--bs-border-radius-lg);--bs-popover-inner-border-radius: calc(var(--bs-border-radius-lg) - var(--bs-border-width));--bs-popover-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);--bs-popover-header-padding-x: 0.9rem;--bs-popover-header-padding-y: 0.5rem;--bs-popover-header-font-size:1rem;--bs-popover-header-color: inherit;--bs-popover-header-bg: var(--bs-secondary-bg);--bs-popover-body-padding-x: 0.9rem;--bs-popover-body-padding-y: 0.9rem;--bs-popover-body-color: var(--bs-body-color);--bs-popover-arrow-width: 1rem;--bs-popover-arrow-height: 0.5rem;--bs-popover-arrow-border: var(--bs-popover-border-color);z-index:var(--bs-popover-zindex);display:block;max-width:var(--bs-popover-max-width);font-family:var(--bs-font-sans-serif);font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;white-space:normal;word-spacing:normal;line-break:auto;font-size:var(--bs-popover-font-size);word-wrap:break-word;background-color:var(--bs-popover-bg);background-clip:padding-box;border:var(--bs-popover-border-width) solid var(--bs-popover-border-color);border-radius:var(--bs-popover-border-radius)}.popover .popover-arrow{display:block;width:var(--bs-popover-arrow-width);height:var(--bs-popover-arrow-height)}.popover .popover-arrow::before,.popover .popover-arrow::after{position:absolute;display:block;content:"";border-color:rgba(0,0,0,0);border-style:solid;border-width:0}.bs-popover-top>.popover-arrow,.bs-popover-auto[data-popper-placement^=top]>.popover-arrow{bottom:calc(-1*(var(--bs-popover-arrow-height)) - var(--bs-popover-border-width))}.bs-popover-top>.popover-arrow::before,.bs-popover-auto[data-popper-placement^=top]>.popover-arrow::before,.bs-popover-top>.popover-arrow::after,.bs-popover-auto[data-popper-placement^=top]>.popover-arrow::after{border-width:var(--bs-popover-arrow-height) calc(var(--bs-popover-arrow-width)*.5) 0}.bs-popover-top>.popover-arrow::before,.bs-popover-auto[data-popper-placement^=top]>.popover-arrow::before{bottom:0;border-top-color:var(--bs-popover-arrow-border)}.bs-popover-top>.popover-arrow::after,.bs-popover-auto[data-popper-placement^=top]>.popover-arrow::after{bottom:var(--bs-popover-border-width);border-top-color:var(--bs-popover-bg)}.bs-popover-end>.popover-arrow,.bs-popover-auto[data-popper-placement^=right]>.popover-arrow{left:calc(-1*(var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));width:var(--bs-popover-arrow-height);height:var(--bs-popover-arrow-width)}.bs-popover-end>.popover-arrow::before,.bs-popover-auto[data-popper-placement^=right]>.popover-arrow::before,.bs-popover-end>.popover-arrow::after,.bs-popover-auto[data-popper-placement^=right]>.popover-arrow::after{border-width:calc(var(--bs-popover-arrow-width)*.5) var(--bs-popover-arrow-height) calc(var(--bs-popover-arrow-width)*.5) 0}.bs-popover-end>.popover-arrow::before,.bs-popover-auto[data-popper-placement^=right]>.popover-arrow::before{left:0;border-right-color:var(--bs-popover-arrow-border)}.bs-popover-end>.popover-arrow::after,.bs-popover-auto[data-popper-placement^=right]>.popover-arrow::after{left:var(--bs-popover-border-width);border-right-color:var(--bs-popover-bg)}.bs-popover-bottom>.popover-arrow,.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow{top:calc(-1*(var(--bs-popover-arrow-height)) - var(--bs-popover-border-width))}.bs-popover-bottom>.popover-arrow::before,.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow::before,.bs-popover-bottom>.popover-arrow::after,.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow::after{border-width:0 calc(var(--bs-popover-arrow-width)*.5) var(--bs-popover-arrow-height)}.bs-popover-bottom>.popover-arrow::before,.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow::before{top:0;border-bottom-color:var(--bs-popover-arrow-border)}.bs-popover-bottom>.popover-arrow::after,.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow::after{top:var(--bs-popover-border-width);border-bottom-color:var(--bs-popover-bg)}.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:var(--bs-popover-arrow-width);margin-left:calc(-0.5*var(--bs-popover-arrow-width));content:"";border-bottom:var(--bs-popover-border-width) solid var(--bs-popover-header-bg)}.bs-popover-start>.popover-arrow,.bs-popover-auto[data-popper-placement^=left]>.popover-arrow{right:calc(-1*(var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));width:var(--bs-popover-arrow-height);height:var(--bs-popover-arrow-width)}.bs-popover-start>.popover-arrow::before,.bs-popover-auto[data-popper-placement^=left]>.popover-arrow::before,.bs-popover-start>.popover-arrow::after,.bs-popover-auto[data-popper-placement^=left]>.popover-arrow::after{border-width:calc(var(--bs-popover-arrow-width)*.5) 0 calc(var(--bs-popover-arrow-width)*.5) var(--bs-popover-arrow-height)}.bs-popover-start>.popover-arrow::before,.bs-popover-auto[data-popper-placement^=left]>.popover-arrow::before{right:0;border-left-color:var(--bs-popover-arrow-border)}.bs-popover-start>.popover-arrow::after,.bs-popover-auto[data-popper-placement^=left]>.popover-arrow::after{right:var(--bs-popover-border-width);border-left-color:var(--bs-popover-bg)}.popover-header{padding:var(--bs-popover-header-padding-y) var(--bs-popover-header-padding-x);margin-bottom:0;font-size:var(--bs-popover-header-font-size);color:var(--bs-popover-header-color);background-color:var(--bs-popover-header-bg);border-bottom:var(--bs-popover-border-width) solid var(--bs-popover-border-color);border-top-left-radius:var(--bs-popover-inner-border-radius);border-top-right-radius:var(--bs-popover-inner-border-radius)}.popover-header:empty{display:none}.popover-body{padding:var(--bs-popover-body-padding-y) var(--bs-popover-body-padding-x);color:var(--bs-popover-body-color)}.carousel{position:relative}.carousel.pointer-event{touch-action:pan-y}.carousel-inner{position:relative;width:100%;overflow:hidden}.carousel-inner::after{display:block;clear:both;content:""}.carousel-item{position:relative;display:none;float:left;width:100%;margin-right:-100%;backface-visibility:hidden;transition:transform .6s ease-in-out}@media(prefers-reduced-motion: reduce){.carousel-item{transition:none}}.carousel-item.active,.carousel-item-next,.carousel-item-prev{display:block}.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%)}.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 .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:.5;transition:opacity .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:.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%}.carousel-control-prev-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0z'/%3e%3c/svg%3e")}.carousel-control-next-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e")}.carousel-indicators{position:absolute;right:0;bottom:0;left:0;z-index:2;display:flex;justify-content:center;padding:0;margin-right:15%;margin-bottom:1rem;margin-left:15%}.carousel-indicators [data-bs-target]{box-sizing:content-box;flex:0 1 auto;width:30px;height:3px;padding:0;margin-right:3px;margin-left:3px;text-indent:-999px;cursor:pointer;background-color:#fff;background-clip:padding-box;border:0;border-top:10px solid rgba(0,0,0,0);border-bottom:10px solid rgba(0,0,0,0);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-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}[data-bs-theme=dark] .carousel .carousel-control-prev-icon,[data-bs-theme=dark] .carousel .carousel-control-next-icon,[data-bs-theme=dark].carousel .carousel-control-prev-icon,[data-bs-theme=dark].carousel .carousel-control-next-icon{filter:invert(1) grayscale(100)}[data-bs-theme=dark] .carousel .carousel-indicators [data-bs-target],[data-bs-theme=dark].carousel .carousel-indicators [data-bs-target]{background-color:#000}[data-bs-theme=dark] .carousel .carousel-caption,[data-bs-theme=dark].carousel .carousel-caption{color:#000}.spinner-grow,.spinner-border{display:inline-block;width:var(--bs-spinner-width);height:var(--bs-spinner-height);vertical-align:var(--bs-spinner-vertical-align);border-radius:50%;animation:var(--bs-spinner-animation-speed) linear infinite var(--bs-spinner-animation-name)}@keyframes spinner-border{to{transform:rotate(360deg) /* rtl:ignore */}}.spinner-border{--bs-spinner-width: 2rem;--bs-spinner-height: 2rem;--bs-spinner-vertical-align: -0.125em;--bs-spinner-border-width: 0.25em;--bs-spinner-animation-speed: 0.75s;--bs-spinner-animation-name: spinner-border;border:var(--bs-spinner-border-width) solid currentcolor;border-right-color:rgba(0,0,0,0)}.spinner-border-sm{--bs-spinner-width: 1rem;--bs-spinner-height: 1rem;--bs-spinner-border-width: 0.2em}@keyframes spinner-grow{0%{transform:scale(0)}50%{opacity:1;transform:none}}.spinner-grow{--bs-spinner-width: 2rem;--bs-spinner-height: 2rem;--bs-spinner-vertical-align: -0.125em;--bs-spinner-animation-speed: 0.75s;--bs-spinner-animation-name: spinner-grow;background-color:currentcolor;opacity:0}.spinner-grow-sm{--bs-spinner-width: 1rem;--bs-spinner-height: 1rem}@media(prefers-reduced-motion: reduce){.spinner-border,.spinner-grow{--bs-spinner-animation-speed: 1.5s}}.offcanvas,.offcanvas-xxxl,.offcanvas-xxl,.offcanvas-xl,.offcanvas-lg,.offcanvas-md,.offcanvas-sm{--bs-offcanvas-zindex: 1045;--bs-offcanvas-width: 400px;--bs-offcanvas-height: 30vh;--bs-offcanvas-padding-x: 0.9rem;--bs-offcanvas-padding-y: 0.9rem;--bs-offcanvas-color: var(--bs-body-color);--bs-offcanvas-bg: var(--bs-body-bg);--bs-offcanvas-border-width: var(--bs-border-width);--bs-offcanvas-border-color: var(--bs-border-color-translucent);--bs-offcanvas-box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);--bs-offcanvas-transition: transform 0.3s ease-in-out;--bs-offcanvas-title-line-height: 1.5}@media(max-width: 575.98px){.offcanvas-sm{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:var(--bs-offcanvas-transition)}}@media(max-width: 575.98px)and (prefers-reduced-motion: reduce){.offcanvas-sm{transition:none}}@media(max-width: 575.98px){.offcanvas-sm.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(-100%)}.offcanvas-sm.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(100%)}.offcanvas-sm.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}.offcanvas-sm.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}.offcanvas-sm.showing,.offcanvas-sm.show:not(.hiding){transform:none}.offcanvas-sm.showing,.offcanvas-sm.hiding,.offcanvas-sm.show{visibility:visible}}@media(min-width: 576px){.offcanvas-sm{--bs-offcanvas-height: auto;--bs-offcanvas-border-width: 0;background-color:rgba(0,0,0,0) !important}.offcanvas-sm .offcanvas-header{display:none}.offcanvas-sm .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible;background-color:rgba(0,0,0,0) !important}}@media(max-width: 767.98px){.offcanvas-md{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:var(--bs-offcanvas-transition)}}@media(max-width: 767.98px)and (prefers-reduced-motion: reduce){.offcanvas-md{transition:none}}@media(max-width: 767.98px){.offcanvas-md.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(-100%)}.offcanvas-md.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(100%)}.offcanvas-md.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}.offcanvas-md.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}.offcanvas-md.showing,.offcanvas-md.show:not(.hiding){transform:none}.offcanvas-md.showing,.offcanvas-md.hiding,.offcanvas-md.show{visibility:visible}}@media(min-width: 768px){.offcanvas-md{--bs-offcanvas-height: auto;--bs-offcanvas-border-width: 0;background-color:rgba(0,0,0,0) !important}.offcanvas-md .offcanvas-header{display:none}.offcanvas-md .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible;background-color:rgba(0,0,0,0) !important}}@media(max-width: 991.98px){.offcanvas-lg{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:var(--bs-offcanvas-transition)}}@media(max-width: 991.98px)and (prefers-reduced-motion: reduce){.offcanvas-lg{transition:none}}@media(max-width: 991.98px){.offcanvas-lg.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(-100%)}.offcanvas-lg.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(100%)}.offcanvas-lg.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}.offcanvas-lg.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}.offcanvas-lg.showing,.offcanvas-lg.show:not(.hiding){transform:none}.offcanvas-lg.showing,.offcanvas-lg.hiding,.offcanvas-lg.show{visibility:visible}}@media(min-width: 992px){.offcanvas-lg{--bs-offcanvas-height: auto;--bs-offcanvas-border-width: 0;background-color:rgba(0,0,0,0) !important}.offcanvas-lg .offcanvas-header{display:none}.offcanvas-lg .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible;background-color:rgba(0,0,0,0) !important}}@media(max-width: 1199.98px){.offcanvas-xl{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:var(--bs-offcanvas-transition)}}@media(max-width: 1199.98px)and (prefers-reduced-motion: reduce){.offcanvas-xl{transition:none}}@media(max-width: 1199.98px){.offcanvas-xl.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(-100%)}.offcanvas-xl.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(100%)}.offcanvas-xl.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}.offcanvas-xl.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}.offcanvas-xl.showing,.offcanvas-xl.show:not(.hiding){transform:none}.offcanvas-xl.showing,.offcanvas-xl.hiding,.offcanvas-xl.show{visibility:visible}}@media(min-width: 1200px){.offcanvas-xl{--bs-offcanvas-height: auto;--bs-offcanvas-border-width: 0;background-color:rgba(0,0,0,0) !important}.offcanvas-xl .offcanvas-header{display:none}.offcanvas-xl .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible;background-color:rgba(0,0,0,0) !important}}@media(max-width: 1399.98px){.offcanvas-xxl{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:var(--bs-offcanvas-transition)}}@media(max-width: 1399.98px)and (prefers-reduced-motion: reduce){.offcanvas-xxl{transition:none}}@media(max-width: 1399.98px){.offcanvas-xxl.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(-100%)}.offcanvas-xxl.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(100%)}.offcanvas-xxl.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}.offcanvas-xxl.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}.offcanvas-xxl.showing,.offcanvas-xxl.show:not(.hiding){transform:none}.offcanvas-xxl.showing,.offcanvas-xxl.hiding,.offcanvas-xxl.show{visibility:visible}}@media(min-width: 1400px){.offcanvas-xxl{--bs-offcanvas-height: auto;--bs-offcanvas-border-width: 0;background-color:rgba(0,0,0,0) !important}.offcanvas-xxl .offcanvas-header{display:none}.offcanvas-xxl .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible;background-color:rgba(0,0,0,0) !important}}@media(max-width: 1899.98px){.offcanvas-xxxl{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:var(--bs-offcanvas-transition)}}@media(max-width: 1899.98px)and (prefers-reduced-motion: reduce){.offcanvas-xxxl{transition:none}}@media(max-width: 1899.98px){.offcanvas-xxxl.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(-100%)}.offcanvas-xxxl.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(100%)}.offcanvas-xxxl.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}.offcanvas-xxxl.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}.offcanvas-xxxl.showing,.offcanvas-xxxl.show:not(.hiding){transform:none}.offcanvas-xxxl.showing,.offcanvas-xxxl.hiding,.offcanvas-xxxl.show{visibility:visible}}@media(min-width: 1900px){.offcanvas-xxxl{--bs-offcanvas-height: auto;--bs-offcanvas-border-width: 0;background-color:rgba(0,0,0,0) !important}.offcanvas-xxxl .offcanvas-header{display:none}.offcanvas-xxxl .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible;background-color:rgba(0,0,0,0) !important}}.offcanvas{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:var(--bs-offcanvas-transition)}@media(prefers-reduced-motion: reduce){.offcanvas{transition:none}}.offcanvas.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(-100%)}.offcanvas.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(100%)}.offcanvas.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}.offcanvas.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}.offcanvas.showing,.offcanvas.show:not(.hiding){transform:none}.offcanvas.showing,.offcanvas.hiding,.offcanvas.show{visibility:visible}.offcanvas-backdrop{position:fixed;top:0;left:0;z-index:1040;width:100vw;height:100vh;background-color:#000}.offcanvas-backdrop.fade{opacity:0}.offcanvas-backdrop.show{opacity:.5}.offcanvas-header{display:flex;align-items:center;justify-content:space-between;padding:var(--bs-offcanvas-padding-y) var(--bs-offcanvas-padding-x)}.offcanvas-header .btn-close{padding:calc(var(--bs-offcanvas-padding-y)*.5) calc(var(--bs-offcanvas-padding-x)*.5);margin-top:calc(-0.5*var(--bs-offcanvas-padding-y));margin-right:calc(-0.5*var(--bs-offcanvas-padding-x));margin-bottom:calc(-0.5*var(--bs-offcanvas-padding-y))}.offcanvas-title{margin-bottom:0;line-height:var(--bs-offcanvas-title-line-height)}.offcanvas-body{flex-grow:1;padding:var(--bs-offcanvas-padding-y) var(--bs-offcanvas-padding-x);overflow-y:auto}.placeholder{display:inline-block;min-height:1em;vertical-align:middle;cursor:wait;background-color:currentcolor;opacity:.5}.placeholder.btn::before{display:inline-block;content:""}.placeholder-xs{min-height:.6em}.placeholder-sm{min-height:.8em}.placeholder-lg{min-height:1.2em}.placeholder-glow .placeholder{animation:placeholder-glow 2s ease-in-out infinite}@keyframes placeholder-glow{50%{opacity:.2}}.placeholder-wave{mask-image:linear-gradient(130deg, #000 55%, rgba(0, 0, 0, 0.8) 75%, #000 95%);mask-size:200% 100%;animation:placeholder-wave 2s linear infinite}@keyframes placeholder-wave{100%{mask-position:-200% 0%}}.clearfix::after{display:block;clear:both;content:""}.text-bg-primary{color:#fff !important;background-color:RGBA(13, 110, 253, var(--bs-bg-opacity, 1)) !important}.text-bg-secondary{color:#fff !important;background-color:RGBA(108, 117, 125, var(--bs-bg-opacity, 1)) !important}.text-bg-success{color:#fff !important;background-color:RGBA(25, 135, 84, var(--bs-bg-opacity, 1)) !important}.text-bg-info{color:#000 !important;background-color:RGBA(13, 202, 240, var(--bs-bg-opacity, 1)) !important}.text-bg-warning{color:#000 !important;background-color:RGBA(255, 193, 7, var(--bs-bg-opacity, 1)) !important}.text-bg-danger{color:#fff !important;background-color:RGBA(220, 53, 69, var(--bs-bg-opacity, 1)) !important}.text-bg-light{color:#000 !important;background-color:RGBA(248, 249, 250, var(--bs-bg-opacity, 1)) !important}.text-bg-dark{color:#fff !important;background-color:RGBA(33, 37, 41, var(--bs-bg-opacity, 1)) !important}.link-primary{color:RGBA(var(--bs-primary-rgb), var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(var(--bs-primary-rgb), var(--bs-link-underline-opacity, 1)) !important}.link-primary:hover,.link-primary:focus{color:RGBA(10, 88, 202, var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(10, 88, 202, var(--bs-link-underline-opacity, 1)) !important}.link-secondary{color:RGBA(var(--bs-secondary-rgb), var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(var(--bs-secondary-rgb), var(--bs-link-underline-opacity, 1)) !important}.link-secondary:hover,.link-secondary:focus{color:RGBA(86, 94, 100, var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(86, 94, 100, var(--bs-link-underline-opacity, 1)) !important}.link-success{color:RGBA(var(--bs-success-rgb), var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(var(--bs-success-rgb), var(--bs-link-underline-opacity, 1)) !important}.link-success:hover,.link-success:focus{color:RGBA(20, 108, 67, var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(20, 108, 67, var(--bs-link-underline-opacity, 1)) !important}.link-info{color:RGBA(var(--bs-info-rgb), var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(var(--bs-info-rgb), var(--bs-link-underline-opacity, 1)) !important}.link-info:hover,.link-info:focus{color:RGBA(61, 213, 243, var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(61, 213, 243, var(--bs-link-underline-opacity, 1)) !important}.link-warning{color:RGBA(var(--bs-warning-rgb), var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(var(--bs-warning-rgb), var(--bs-link-underline-opacity, 1)) !important}.link-warning:hover,.link-warning:focus{color:RGBA(255, 205, 57, var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(255, 205, 57, var(--bs-link-underline-opacity, 1)) !important}.link-danger{color:RGBA(var(--bs-danger-rgb), var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(var(--bs-danger-rgb), var(--bs-link-underline-opacity, 1)) !important}.link-danger:hover,.link-danger:focus{color:RGBA(176, 42, 55, var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(176, 42, 55, var(--bs-link-underline-opacity, 1)) !important}.link-light{color:RGBA(var(--bs-light-rgb), var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(var(--bs-light-rgb), var(--bs-link-underline-opacity, 1)) !important}.link-light:hover,.link-light:focus{color:RGBA(249, 250, 251, var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(249, 250, 251, var(--bs-link-underline-opacity, 1)) !important}.link-dark{color:RGBA(var(--bs-dark-rgb), var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(var(--bs-dark-rgb), var(--bs-link-underline-opacity, 1)) !important}.link-dark:hover,.link-dark:focus{color:RGBA(26, 30, 33, var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(26, 30, 33, var(--bs-link-underline-opacity, 1)) !important}.link-body-emphasis{color:RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-underline-opacity, 1)) !important}.link-body-emphasis:hover,.link-body-emphasis:focus{color:RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-opacity, 0.75)) !important;text-decoration-color:RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-underline-opacity, 0.75)) !important}.focus-ring:focus{outline:0;box-shadow:var(--bs-focus-ring-x, 0) var(--bs-focus-ring-y, 0) var(--bs-focus-ring-blur, 0) var(--bs-focus-ring-width) var(--bs-focus-ring-color)}.icon-link{display:inline-flex;gap:.375rem;align-items:center;text-decoration-color:rgba(var(--bs-link-color-rgb), var(--bs-link-opacity, 0.5));text-underline-offset:.25em;backface-visibility:hidden}.icon-link>.bi{flex-shrink:0;width:1em;height:1em;fill:currentcolor;transition:.2s ease-in-out transform}@media(prefers-reduced-motion: reduce){.icon-link>.bi{transition:none}}.icon-link-hover:hover>.bi,.icon-link-hover:focus-visible>.bi{transform:var(--bs-icon-link-transform, translate3d(0.25em, 0, 0))}.ratio{position:relative;width:100%}.ratio::before{display:block;padding-top:var(--bs-aspect-ratio);content:""}.ratio>*{position:absolute;top:0;left:0;width:100%;height:100%}.ratio-1x1{--bs-aspect-ratio: 100%}.ratio-4x3{--bs-aspect-ratio: 75%}.ratio-16x9{--bs-aspect-ratio: 56.25%}.ratio-21x9{--bs-aspect-ratio: 42.8571428571%}.fixed-top{position:fixed;top:0;right:0;left:0;z-index:1030}.fixed-bottom{position:fixed;right:0;bottom:0;left:0;z-index:1030}.sticky-top{position:sticky;top:0;z-index:1020}.sticky-bottom{position:sticky;bottom:0;z-index:1020}@media(min-width: 576px){.sticky-sm-top{position:sticky;top:0;z-index:1020}.sticky-sm-bottom{position:sticky;bottom:0;z-index:1020}}@media(min-width: 768px){.sticky-md-top{position:sticky;top:0;z-index:1020}.sticky-md-bottom{position:sticky;bottom:0;z-index:1020}}@media(min-width: 992px){.sticky-lg-top{position:sticky;top:0;z-index:1020}.sticky-lg-bottom{position:sticky;bottom:0;z-index:1020}}@media(min-width: 1200px){.sticky-xl-top{position:sticky;top:0;z-index:1020}.sticky-xl-bottom{position:sticky;bottom:0;z-index:1020}}@media(min-width: 1400px){.sticky-xxl-top{position:sticky;top:0;z-index:1020}.sticky-xxl-bottom{position:sticky;bottom:0;z-index:1020}}@media(min-width: 1900px){.sticky-xxxl-top{position:sticky;top:0;z-index:1020}.sticky-xxxl-bottom{position:sticky;bottom:0;z-index:1020}}.hstack{display:flex;flex-direction:row;align-items:center;align-self:stretch}.vstack{display:flex;flex:1 1 auto;flex-direction:column;align-self:stretch}.visually-hidden,.visually-hidden-focusable:not(:focus):not(:focus-within){width:1px !important;height:1px !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;white-space:nowrap !important;border:0 !important}.visually-hidden:not(caption),.visually-hidden-focusable:not(:focus):not(:focus-within):not(caption){position:absolute !important}.stretched-link::after{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;content:""}.text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vr{display:inline-block;align-self:stretch;width:1px;min-height:1em;background-color:currentcolor;opacity:.25}.align-baseline{vertical-align:baseline !important}.align-top{vertical-align:top !important}.align-middle{vertical-align:middle !important}.align-bottom{vertical-align:bottom !important}.align-text-bottom{vertical-align:text-bottom !important}.align-text-top{vertical-align:text-top !important}.float-start{float:left !important}.float-end{float:right !important}.float-none{float:none !important}.object-fit-contain{object-fit:contain !important}.object-fit-cover{object-fit:cover !important}.object-fit-fill{object-fit:fill !important}.object-fit-scale{object-fit:scale-down !important}.object-fit-none{object-fit:none !important}.opacity-0{opacity:0 !important}.opacity-25{opacity:.25 !important}.opacity-50{opacity:.5 !important}.opacity-75{opacity:.75 !important}.opacity-100{opacity:1 !important}.overflow-auto{overflow:auto !important}.overflow-hidden{overflow:hidden !important}.overflow-visible{overflow:visible !important}.overflow-scroll{overflow:scroll !important}.overflow-x-auto{overflow-x:auto !important}.overflow-x-hidden{overflow-x:hidden !important}.overflow-x-visible{overflow-x:visible !important}.overflow-x-scroll{overflow-x:scroll !important}.overflow-y-auto{overflow-y:auto !important}.overflow-y-hidden{overflow-y:hidden !important}.overflow-y-visible{overflow-y:visible !important}.overflow-y-scroll{overflow-y:scroll !important}.d-inline{display:inline !important}.d-inline-block{display:inline-block !important}.d-block{display:block !important}.d-grid{display:grid !important}.d-inline-grid{display:inline-grid !important}.d-table{display:table !important}.d-table-row{display:table-row !important}.d-table-cell{display:table-cell !important}.d-flex{display:flex !important}.d-inline-flex{display:inline-flex !important}.d-none{display:none !important}.shadow{box-shadow: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}.focus-ring-primary{--bs-focus-ring-color: rgba(var(--bs-primary-rgb), var(--bs-focus-ring-opacity))}.focus-ring-secondary{--bs-focus-ring-color: rgba(var(--bs-secondary-rgb), var(--bs-focus-ring-opacity))}.focus-ring-success{--bs-focus-ring-color: rgba(var(--bs-success-rgb), var(--bs-focus-ring-opacity))}.focus-ring-info{--bs-focus-ring-color: rgba(var(--bs-info-rgb), var(--bs-focus-ring-opacity))}.focus-ring-warning{--bs-focus-ring-color: rgba(var(--bs-warning-rgb), var(--bs-focus-ring-opacity))}.focus-ring-danger{--bs-focus-ring-color: rgba(var(--bs-danger-rgb), var(--bs-focus-ring-opacity))}.focus-ring-light{--bs-focus-ring-color: rgba(var(--bs-light-rgb), var(--bs-focus-ring-opacity))}.focus-ring-dark{--bs-focus-ring-color: rgba(var(--bs-dark-rgb), var(--bs-focus-ring-opacity))}.position-static{position:static !important}.position-relative{position:relative !important}.position-absolute{position:absolute !important}.position-fixed{position:fixed !important}.position-sticky{position:sticky !important}.top-0{top:0 !important}.top-50{top:50% !important}.top-100{top:100% !important}.bottom-0{bottom:0 !important}.bottom-50{bottom:50% !important}.bottom-100{bottom:100% !important}.start-0{left:0 !important}.start-50{left:50% !important}.start-100{left:100% !important}.end-0{right:0 !important}.end-50{right:50% !important}.end-100{right:100% !important}.translate-middle{transform:translate(-50%, -50%) !important}.translate-middle-x{transform:translateX(-50%) !important}.translate-middle-y{transform:translateY(-50%) !important}.border{border:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important}.border-0{border:0 !important}.border-top{border-top:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important}.border-top-0{border-top:0 !important}.border-end{border-right:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important}.border-end-0{border-right:0 !important}.border-bottom{border-bottom:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important}.border-bottom-0{border-bottom:0 !important}.border-start{border-left:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important}.border-start-0{border-left:0 !important}.border-primary{--bs-border-opacity: 1;border-color:rgba(var(--bs-primary-rgb), var(--bs-border-opacity)) !important}.border-secondary{--bs-border-opacity: 1;border-color:rgba(var(--bs-secondary-rgb), var(--bs-border-opacity)) !important}.border-success{--bs-border-opacity: 1;border-color:rgba(var(--bs-success-rgb), var(--bs-border-opacity)) !important}.border-info{--bs-border-opacity: 1;border-color:rgba(var(--bs-info-rgb), var(--bs-border-opacity)) !important}.border-warning{--bs-border-opacity: 1;border-color:rgba(var(--bs-warning-rgb), var(--bs-border-opacity)) !important}.border-danger{--bs-border-opacity: 1;border-color:rgba(var(--bs-danger-rgb), var(--bs-border-opacity)) !important}.border-light{--bs-border-opacity: 1;border-color:rgba(var(--bs-light-rgb), var(--bs-border-opacity)) !important}.border-dark{--bs-border-opacity: 1;border-color:rgba(var(--bs-dark-rgb), var(--bs-border-opacity)) !important}.border-black{--bs-border-opacity: 1;border-color:rgba(var(--bs-black-rgb), var(--bs-border-opacity)) !important}.border-white{--bs-border-opacity: 1;border-color:rgba(var(--bs-white-rgb), var(--bs-border-opacity)) !important}.border-primary-subtle{border-color:var(--bs-primary-border-subtle) !important}.border-secondary-subtle{border-color:var(--bs-secondary-border-subtle) !important}.border-success-subtle{border-color:var(--bs-success-border-subtle) !important}.border-info-subtle{border-color:var(--bs-info-border-subtle) !important}.border-warning-subtle{border-color:var(--bs-warning-border-subtle) !important}.border-danger-subtle{border-color:var(--bs-danger-border-subtle) !important}.border-light-subtle{border-color:var(--bs-light-border-subtle) !important}.border-dark-subtle{border-color:var(--bs-dark-border-subtle) !important}.border-1{border-width:1px !important}.border-2{border-width:2px !important}.border-3{border-width:3px !important}.border-4{border-width:4px !important}.border-5{border-width:5px !important}.border-opacity-10{--bs-border-opacity: 0.1}.border-opacity-25{--bs-border-opacity: 0.25}.border-opacity-50{--bs-border-opacity: 0.5}.border-opacity-75{--bs-border-opacity: 0.75}.border-opacity-100{--bs-border-opacity: 1}.w-25{width:25% !important}.w-50{width:50% !important}.w-75{width:75% !important}.w-100{width:100% !important}.w-auto{width:auto !important}.mw-100{max-width:100% !important}.vw-100{width:100vw !important}.min-vw-100{min-width:100vw !important}.h-25{height:25% !important}.h-50{height:50% !important}.h-75{height:75% !important}.h-100{height:100% !important}.h-auto{height:auto !important}.mh-100{max-height:100% !important}.vh-100{height:100vh !important}.min-vh-100{min-height:100vh !important}.flex-fill{flex:1 1 auto !important}.flex-row{flex-direction:row !important}.flex-column{flex-direction:column !important}.flex-row-reverse{flex-direction:row-reverse !important}.flex-column-reverse{flex-direction:column-reverse !important}.flex-grow-0{flex-grow:0 !important}.flex-grow-1{flex-grow:1 !important}.flex-shrink-0{flex-shrink:0 !important}.flex-shrink-1{flex-shrink:1 !important}.flex-wrap{flex-wrap:wrap !important}.flex-nowrap{flex-wrap:nowrap !important}.flex-wrap-reverse{flex-wrap:wrap-reverse !important}.justify-content-start{justify-content:flex-start !important}.justify-content-end{justify-content:flex-end !important}.justify-content-center{justify-content:center !important}.justify-content-between{justify-content:space-between !important}.justify-content-around{justify-content:space-around !important}.justify-content-evenly{justify-content:space-evenly !important}.align-items-start{align-items:flex-start !important}.align-items-end{align-items:flex-end !important}.align-items-center{align-items:center !important}.align-items-baseline{align-items:baseline !important}.align-items-stretch{align-items:stretch !important}.align-content-start{align-content:flex-start !important}.align-content-end{align-content:flex-end !important}.align-content-center{align-content:center !important}.align-content-between{align-content:space-between !important}.align-content-around{align-content:space-around !important}.align-content-stretch{align-content:stretch !important}.align-self-auto{align-self:auto !important}.align-self-start{align-self:flex-start !important}.align-self-end{align-self:flex-end !important}.align-self-center{align-self:center !important}.align-self-baseline{align-self:baseline !important}.align-self-stretch{align-self:stretch !important}.order-first{order:-1 !important}.order-0{order:0 !important}.order-1{order:1 !important}.order-2{order:2 !important}.order-3{order:3 !important}.order-4{order:4 !important}.order-5{order:5 !important}.order-last{order:6 !important}.m-0{margin:0 !important}.m-1{margin:.225rem !important}.m-2{margin:.45rem !important}.m-3{margin:.9rem !important}.m-4{margin:1.35rem !important}.m-5{margin:1.8rem !important}.m-6{margin:2.25rem !important}.m-7{margin:2.7rem !important}.m-8{margin:3.15rem !important}.m-9{margin:3.6rem !important}.m-tiny{margin:.135rem !important}.m-auto{margin:auto !important}.mx-0{margin-right:0 !important;margin-left:0 !important}.mx-1{margin-right:.225rem !important;margin-left:.225rem !important}.mx-2{margin-right:.45rem !important;margin-left:.45rem !important}.mx-3{margin-right:.9rem !important;margin-left:.9rem !important}.mx-4{margin-right:1.35rem !important;margin-left:1.35rem !important}.mx-5{margin-right:1.8rem !important;margin-left:1.8rem !important}.mx-6{margin-right:2.25rem !important;margin-left:2.25rem !important}.mx-7{margin-right:2.7rem !important;margin-left:2.7rem !important}.mx-8{margin-right:3.15rem !important;margin-left:3.15rem !important}.mx-9{margin-right:3.6rem !important;margin-left:3.6rem !important}.mx-tiny{margin-right:.135rem !important;margin-left:.135rem !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:.225rem !important;margin-bottom:.225rem !important}.my-2{margin-top:.45rem !important;margin-bottom:.45rem !important}.my-3{margin-top:.9rem !important;margin-bottom:.9rem !important}.my-4{margin-top:1.35rem !important;margin-bottom:1.35rem !important}.my-5{margin-top:1.8rem !important;margin-bottom:1.8rem !important}.my-6{margin-top:2.25rem !important;margin-bottom:2.25rem !important}.my-7{margin-top:2.7rem !important;margin-bottom:2.7rem !important}.my-8{margin-top:3.15rem !important;margin-bottom:3.15rem !important}.my-9{margin-top:3.6rem !important;margin-bottom:3.6rem !important}.my-tiny{margin-top:.135rem !important;margin-bottom:.135rem !important}.my-auto{margin-top:auto !important;margin-bottom:auto !important}.mt-0{margin-top:0 !important}.mt-1{margin-top:.225rem !important}.mt-2{margin-top:.45rem !important}.mt-3{margin-top:.9rem !important}.mt-4{margin-top:1.35rem !important}.mt-5{margin-top:1.8rem !important}.mt-6{margin-top:2.25rem !important}.mt-7{margin-top:2.7rem !important}.mt-8{margin-top:3.15rem !important}.mt-9{margin-top:3.6rem !important}.mt-tiny{margin-top:.135rem !important}.mt-auto{margin-top:auto !important}.me-0{margin-right:0 !important}.me-1{margin-right:.225rem !important}.me-2{margin-right:.45rem !important}.me-3{margin-right:.9rem !important}.me-4{margin-right:1.35rem !important}.me-5{margin-right:1.8rem !important}.me-6{margin-right:2.25rem !important}.me-7{margin-right:2.7rem !important}.me-8{margin-right:3.15rem !important}.me-9{margin-right:3.6rem !important}.me-tiny{margin-right:.135rem !important}.me-auto{margin-right:auto !important}.mb-0{margin-bottom:0 !important}.mb-1{margin-bottom:.225rem !important}.mb-2{margin-bottom:.45rem !important}.mb-3{margin-bottom:.9rem !important}.mb-4{margin-bottom:1.35rem !important}.mb-5{margin-bottom:1.8rem !important}.mb-6{margin-bottom:2.25rem !important}.mb-7{margin-bottom:2.7rem !important}.mb-8{margin-bottom:3.15rem !important}.mb-9{margin-bottom:3.6rem !important}.mb-tiny{margin-bottom:.135rem !important}.mb-auto{margin-bottom:auto !important}.ms-0{margin-left:0 !important}.ms-1{margin-left:.225rem !important}.ms-2{margin-left:.45rem !important}.ms-3{margin-left:.9rem !important}.ms-4{margin-left:1.35rem !important}.ms-5{margin-left:1.8rem !important}.ms-6{margin-left:2.25rem !important}.ms-7{margin-left:2.7rem !important}.ms-8{margin-left:3.15rem !important}.ms-9{margin-left:3.6rem !important}.ms-tiny{margin-left:.135rem !important}.ms-auto{margin-left:auto !important}.m-n1{margin:-0.225rem !important}.m-n2{margin:-0.45rem !important}.m-n3{margin:-0.9rem !important}.m-n4{margin:-1.35rem !important}.m-n5{margin:-1.8rem !important}.m-n6{margin:-2.25rem !important}.m-n7{margin:-2.7rem !important}.m-n8{margin:-3.15rem !important}.m-n9{margin:-3.6rem !important}.m-ntiny{margin:-0.135rem !important}.mx-n1{margin-right:-0.225rem !important;margin-left:-0.225rem !important}.mx-n2{margin-right:-0.45rem !important;margin-left:-0.45rem !important}.mx-n3{margin-right:-0.9rem !important;margin-left:-0.9rem !important}.mx-n4{margin-right:-1.35rem !important;margin-left:-1.35rem !important}.mx-n5{margin-right:-1.8rem !important;margin-left:-1.8rem !important}.mx-n6{margin-right:-2.25rem !important;margin-left:-2.25rem !important}.mx-n7{margin-right:-2.7rem !important;margin-left:-2.7rem !important}.mx-n8{margin-right:-3.15rem !important;margin-left:-3.15rem !important}.mx-n9{margin-right:-3.6rem !important;margin-left:-3.6rem !important}.mx-ntiny{margin-right:-0.135rem !important;margin-left:-0.135rem !important}.my-n1{margin-top:-0.225rem !important;margin-bottom:-0.225rem !important}.my-n2{margin-top:-0.45rem !important;margin-bottom:-0.45rem !important}.my-n3{margin-top:-0.9rem !important;margin-bottom:-0.9rem !important}.my-n4{margin-top:-1.35rem !important;margin-bottom:-1.35rem !important}.my-n5{margin-top:-1.8rem !important;margin-bottom:-1.8rem !important}.my-n6{margin-top:-2.25rem !important;margin-bottom:-2.25rem !important}.my-n7{margin-top:-2.7rem !important;margin-bottom:-2.7rem !important}.my-n8{margin-top:-3.15rem !important;margin-bottom:-3.15rem !important}.my-n9{margin-top:-3.6rem !important;margin-bottom:-3.6rem !important}.my-ntiny{margin-top:-0.135rem !important;margin-bottom:-0.135rem !important}.mt-n1{margin-top:-0.225rem !important}.mt-n2{margin-top:-0.45rem !important}.mt-n3{margin-top:-0.9rem !important}.mt-n4{margin-top:-1.35rem !important}.mt-n5{margin-top:-1.8rem !important}.mt-n6{margin-top:-2.25rem !important}.mt-n7{margin-top:-2.7rem !important}.mt-n8{margin-top:-3.15rem !important}.mt-n9{margin-top:-3.6rem !important}.mt-ntiny{margin-top:-0.135rem !important}.me-n1{margin-right:-0.225rem !important}.me-n2{margin-right:-0.45rem !important}.me-n3{margin-right:-0.9rem !important}.me-n4{margin-right:-1.35rem !important}.me-n5{margin-right:-1.8rem !important}.me-n6{margin-right:-2.25rem !important}.me-n7{margin-right:-2.7rem !important}.me-n8{margin-right:-3.15rem !important}.me-n9{margin-right:-3.6rem !important}.me-ntiny{margin-right:-0.135rem !important}.mb-n1{margin-bottom:-0.225rem !important}.mb-n2{margin-bottom:-0.45rem !important}.mb-n3{margin-bottom:-0.9rem !important}.mb-n4{margin-bottom:-1.35rem !important}.mb-n5{margin-bottom:-1.8rem !important}.mb-n6{margin-bottom:-2.25rem !important}.mb-n7{margin-bottom:-2.7rem !important}.mb-n8{margin-bottom:-3.15rem !important}.mb-n9{margin-bottom:-3.6rem !important}.mb-ntiny{margin-bottom:-0.135rem !important}.ms-n1{margin-left:-0.225rem !important}.ms-n2{margin-left:-0.45rem !important}.ms-n3{margin-left:-0.9rem !important}.ms-n4{margin-left:-1.35rem !important}.ms-n5{margin-left:-1.8rem !important}.ms-n6{margin-left:-2.25rem !important}.ms-n7{margin-left:-2.7rem !important}.ms-n8{margin-left:-3.15rem !important}.ms-n9{margin-left:-3.6rem !important}.ms-ntiny{margin-left:-0.135rem !important}.p-0{padding:0 !important}.p-1{padding:.225rem !important}.p-2{padding:.45rem !important}.p-3{padding:.9rem !important}.p-4{padding:1.35rem !important}.p-5{padding:1.8rem !important}.p-6{padding:2.25rem !important}.p-7{padding:2.7rem !important}.p-8{padding:3.15rem !important}.p-9{padding:3.6rem !important}.p-tiny{padding:.135rem !important}.px-0{padding-right:0 !important;padding-left:0 !important}.px-1{padding-right:.225rem !important;padding-left:.225rem !important}.px-2{padding-right:.45rem !important;padding-left:.45rem !important}.px-3{padding-right:.9rem !important;padding-left:.9rem !important}.px-4{padding-right:1.35rem !important;padding-left:1.35rem !important}.px-5{padding-right:1.8rem !important;padding-left:1.8rem !important}.px-6{padding-right:2.25rem !important;padding-left:2.25rem !important}.px-7{padding-right:2.7rem !important;padding-left:2.7rem !important}.px-8{padding-right:3.15rem !important;padding-left:3.15rem !important}.px-9{padding-right:3.6rem !important;padding-left:3.6rem !important}.px-tiny{padding-right:.135rem !important;padding-left:.135rem !important}.py-0{padding-top:0 !important;padding-bottom:0 !important}.py-1{padding-top:.225rem !important;padding-bottom:.225rem !important}.py-2{padding-top:.45rem !important;padding-bottom:.45rem !important}.py-3{padding-top:.9rem !important;padding-bottom:.9rem !important}.py-4{padding-top:1.35rem !important;padding-bottom:1.35rem !important}.py-5{padding-top:1.8rem !important;padding-bottom:1.8rem !important}.py-6{padding-top:2.25rem !important;padding-bottom:2.25rem !important}.py-7{padding-top:2.7rem !important;padding-bottom:2.7rem !important}.py-8{padding-top:3.15rem !important;padding-bottom:3.15rem !important}.py-9{padding-top:3.6rem !important;padding-bottom:3.6rem !important}.py-tiny{padding-top:.135rem !important;padding-bottom:.135rem !important}.pt-0{padding-top:0 !important}.pt-1{padding-top:.225rem !important}.pt-2{padding-top:.45rem !important}.pt-3{padding-top:.9rem !important}.pt-4{padding-top:1.35rem !important}.pt-5{padding-top:1.8rem !important}.pt-6{padding-top:2.25rem !important}.pt-7{padding-top:2.7rem !important}.pt-8{padding-top:3.15rem !important}.pt-9{padding-top:3.6rem !important}.pt-tiny{padding-top:.135rem !important}.pe-0{padding-right:0 !important}.pe-1{padding-right:.225rem !important}.pe-2{padding-right:.45rem !important}.pe-3{padding-right:.9rem !important}.pe-4{padding-right:1.35rem !important}.pe-5{padding-right:1.8rem !important}.pe-6{padding-right:2.25rem !important}.pe-7{padding-right:2.7rem !important}.pe-8{padding-right:3.15rem !important}.pe-9{padding-right:3.6rem !important}.pe-tiny{padding-right:.135rem !important}.pb-0{padding-bottom:0 !important}.pb-1{padding-bottom:.225rem !important}.pb-2{padding-bottom:.45rem !important}.pb-3{padding-bottom:.9rem !important}.pb-4{padding-bottom:1.35rem !important}.pb-5{padding-bottom:1.8rem !important}.pb-6{padding-bottom:2.25rem !important}.pb-7{padding-bottom:2.7rem !important}.pb-8{padding-bottom:3.15rem !important}.pb-9{padding-bottom:3.6rem !important}.pb-tiny{padding-bottom:.135rem !important}.ps-0{padding-left:0 !important}.ps-1{padding-left:.225rem !important}.ps-2{padding-left:.45rem !important}.ps-3{padding-left:.9rem !important}.ps-4{padding-left:1.35rem !important}.ps-5{padding-left:1.8rem !important}.ps-6{padding-left:2.25rem !important}.ps-7{padding-left:2.7rem !important}.ps-8{padding-left:3.15rem !important}.ps-9{padding-left:3.6rem !important}.ps-tiny{padding-left:.135rem !important}.gap-0{gap:0 !important}.gap-1{gap:.225rem !important}.gap-2{gap:.45rem !important}.gap-3{gap:.9rem !important}.gap-4{gap:1.35rem !important}.gap-5{gap:1.8rem !important}.gap-6{gap:2.25rem !important}.gap-7{gap:2.7rem !important}.gap-8{gap:3.15rem !important}.gap-9{gap:3.6rem !important}.gap-tiny{gap:.135rem !important}.row-gap-0{row-gap:0 !important}.row-gap-1{row-gap:.225rem !important}.row-gap-2{row-gap:.45rem !important}.row-gap-3{row-gap:.9rem !important}.row-gap-4{row-gap:1.35rem !important}.row-gap-5{row-gap:1.8rem !important}.row-gap-6{row-gap:2.25rem !important}.row-gap-7{row-gap:2.7rem !important}.row-gap-8{row-gap:3.15rem !important}.row-gap-9{row-gap:3.6rem !important}.row-gap-tiny{row-gap:.135rem !important}.column-gap-0{column-gap:0 !important}.column-gap-1{column-gap:.225rem !important}.column-gap-2{column-gap:.45rem !important}.column-gap-3{column-gap:.9rem !important}.column-gap-4{column-gap:1.35rem !important}.column-gap-5{column-gap:1.8rem !important}.column-gap-6{column-gap:2.25rem !important}.column-gap-7{column-gap:2.7rem !important}.column-gap-8{column-gap:3.15rem !important}.column-gap-9{column-gap:3.6rem !important}.column-gap-tiny{column-gap:.135rem !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-lighter{font-weight:lighter !important}.fw-light{font-weight:300 !important}.fw-normal{font-weight:400 !important}.fw-medium{font-weight:500 !important}.fw-semibold{font-weight:600 !important}.fw-bold{font-weight:700 !important}.fw-bolder{font-weight:bolder !important}.lh-1{line-height:1 !important}.lh-sm{line-height:1.25 !important}.lh-base{line-height:1.5 !important}.lh-lg{line-height:2 !important}.text-start{text-align:left !important}.text-end{text-align:right !important}.text-center{text-align:center !important}.text-decoration-none{text-decoration:none !important}.text-decoration-underline{text-decoration:underline !important}.text-decoration-line-through{text-decoration:line-through !important}.text-lowercase{text-transform:lowercase !important}.text-uppercase{text-transform:uppercase !important}.text-capitalize{text-transform:capitalize !important}.text-wrap{white-space:normal !important}.text-nowrap{white-space:nowrap !important}.text-break{word-wrap:break-word !important;word-break:break-word !important}.text-primary{--bs-text-opacity: 1;color:rgba(var(--bs-primary-rgb), var(--bs-text-opacity)) !important}.text-secondary{--bs-text-opacity: 1;color:rgba(var(--bs-secondary-rgb), var(--bs-text-opacity)) !important}.text-success{--bs-text-opacity: 1;color:rgba(var(--bs-success-rgb), var(--bs-text-opacity)) !important}.text-info{--bs-text-opacity: 1;color:rgba(var(--bs-info-rgb), var(--bs-text-opacity)) !important}.text-warning{--bs-text-opacity: 1;color:rgba(var(--bs-warning-rgb), var(--bs-text-opacity)) !important}.text-danger{--bs-text-opacity: 1;color:rgba(var(--bs-danger-rgb), var(--bs-text-opacity)) !important}.text-light{--bs-text-opacity: 1;color:rgba(var(--bs-light-rgb), var(--bs-text-opacity)) !important}.text-dark{--bs-text-opacity: 1;color:rgba(var(--bs-dark-rgb), var(--bs-text-opacity)) !important}.text-black{--bs-text-opacity: 1;color:rgba(var(--bs-black-rgb), var(--bs-text-opacity)) !important}.text-white{--bs-text-opacity: 1;color:rgba(var(--bs-white-rgb), var(--bs-text-opacity)) !important}.text-body{--bs-text-opacity: 1;color:rgba(var(--bs-body-color-rgb), var(--bs-text-opacity)) !important}.text-muted{--bs-text-opacity: 1;color:var(--bs-secondary-color) !important}.text-black-50{--bs-text-opacity: 1;color:rgba(0,0,0,.5) !important}.text-white-50{--bs-text-opacity: 1;color:rgba(255,255,255,.5) !important}.text-body-secondary{--bs-text-opacity: 1;color:var(--bs-secondary-color) !important}.text-body-tertiary{--bs-text-opacity: 1;color:var(--bs-tertiary-color) !important}.text-body-emphasis{--bs-text-opacity: 1;color:var(--bs-emphasis-color) !important}.text-reset{--bs-text-opacity: 1;color:inherit !important}.text-opacity-25{--bs-text-opacity: 0.25}.text-opacity-50{--bs-text-opacity: 0.5}.text-opacity-75{--bs-text-opacity: 0.75}.text-opacity-100{--bs-text-opacity: 1}.text-primary-emphasis{color:var(--bs-primary-text-emphasis) !important}.text-secondary-emphasis{color:var(--bs-secondary-text-emphasis) !important}.text-success-emphasis{color:var(--bs-success-text-emphasis) !important}.text-info-emphasis{color:var(--bs-info-text-emphasis) !important}.text-warning-emphasis{color:var(--bs-warning-text-emphasis) !important}.text-danger-emphasis{color:var(--bs-danger-text-emphasis) !important}.text-light-emphasis{color:var(--bs-light-text-emphasis) !important}.text-dark-emphasis{color:var(--bs-dark-text-emphasis) !important}.link-opacity-10{--bs-link-opacity: 0.1}.link-opacity-10-hover:hover{--bs-link-opacity: 0.1}.link-opacity-25{--bs-link-opacity: 0.25}.link-opacity-25-hover:hover{--bs-link-opacity: 0.25}.link-opacity-50{--bs-link-opacity: 0.5}.link-opacity-50-hover:hover{--bs-link-opacity: 0.5}.link-opacity-75{--bs-link-opacity: 0.75}.link-opacity-75-hover:hover{--bs-link-opacity: 0.75}.link-opacity-100{--bs-link-opacity: 1}.link-opacity-100-hover:hover{--bs-link-opacity: 1}.link-offset-1{text-underline-offset:.125em !important}.link-offset-1-hover:hover{text-underline-offset:.125em !important}.link-offset-2{text-underline-offset:.25em !important}.link-offset-2-hover:hover{text-underline-offset:.25em !important}.link-offset-3{text-underline-offset:.375em !important}.link-offset-3-hover:hover{text-underline-offset:.375em !important}.link-underline-primary{--bs-link-underline-opacity: 1;text-decoration-color:rgba(var(--bs-primary-rgb), var(--bs-link-underline-opacity)) !important}.link-underline-secondary{--bs-link-underline-opacity: 1;text-decoration-color:rgba(var(--bs-secondary-rgb), var(--bs-link-underline-opacity)) !important}.link-underline-success{--bs-link-underline-opacity: 1;text-decoration-color:rgba(var(--bs-success-rgb), var(--bs-link-underline-opacity)) !important}.link-underline-info{--bs-link-underline-opacity: 1;text-decoration-color:rgba(var(--bs-info-rgb), var(--bs-link-underline-opacity)) !important}.link-underline-warning{--bs-link-underline-opacity: 1;text-decoration-color:rgba(var(--bs-warning-rgb), var(--bs-link-underline-opacity)) !important}.link-underline-danger{--bs-link-underline-opacity: 1;text-decoration-color:rgba(var(--bs-danger-rgb), var(--bs-link-underline-opacity)) !important}.link-underline-light{--bs-link-underline-opacity: 1;text-decoration-color:rgba(var(--bs-light-rgb), var(--bs-link-underline-opacity)) !important}.link-underline-dark{--bs-link-underline-opacity: 1;text-decoration-color:rgba(var(--bs-dark-rgb), var(--bs-link-underline-opacity)) !important}.link-underline{--bs-link-underline-opacity: 1;text-decoration-color:rgba(var(--bs-link-color-rgb), var(--bs-link-underline-opacity, 1)) !important}.link-underline-opacity-0{--bs-link-underline-opacity: 0}.link-underline-opacity-0-hover:hover{--bs-link-underline-opacity: 0}.link-underline-opacity-10{--bs-link-underline-opacity: 0.1}.link-underline-opacity-10-hover:hover{--bs-link-underline-opacity: 0.1}.link-underline-opacity-25{--bs-link-underline-opacity: 0.25}.link-underline-opacity-25-hover:hover{--bs-link-underline-opacity: 0.25}.link-underline-opacity-50{--bs-link-underline-opacity: 0.5}.link-underline-opacity-50-hover:hover{--bs-link-underline-opacity: 0.5}.link-underline-opacity-75{--bs-link-underline-opacity: 0.75}.link-underline-opacity-75-hover:hover{--bs-link-underline-opacity: 0.75}.link-underline-opacity-100{--bs-link-underline-opacity: 1}.link-underline-opacity-100-hover:hover{--bs-link-underline-opacity: 1}.bg-primary{--bs-bg-opacity: 1;background-color:rgba(var(--bs-primary-rgb), var(--bs-bg-opacity)) !important}.bg-secondary{--bs-bg-opacity: 1;background-color:rgba(var(--bs-secondary-rgb), var(--bs-bg-opacity)) !important}.bg-success{--bs-bg-opacity: 1;background-color:rgba(var(--bs-success-rgb), var(--bs-bg-opacity)) !important}.bg-info{--bs-bg-opacity: 1;background-color:rgba(var(--bs-info-rgb), var(--bs-bg-opacity)) !important}.bg-warning{--bs-bg-opacity: 1;background-color:rgba(var(--bs-warning-rgb), var(--bs-bg-opacity)) !important}.bg-danger{--bs-bg-opacity: 1;background-color:rgba(var(--bs-danger-rgb), var(--bs-bg-opacity)) !important}.bg-light{--bs-bg-opacity: 1;background-color:rgba(var(--bs-light-rgb), var(--bs-bg-opacity)) !important}.bg-dark{--bs-bg-opacity: 1;background-color:rgba(var(--bs-dark-rgb), var(--bs-bg-opacity)) !important}.bg-black{--bs-bg-opacity: 1;background-color:rgba(var(--bs-black-rgb), var(--bs-bg-opacity)) !important}.bg-white{--bs-bg-opacity: 1;background-color:rgba(var(--bs-white-rgb), var(--bs-bg-opacity)) !important}.bg-body{--bs-bg-opacity: 1;background-color:rgba(var(--bs-body-bg-rgb), var(--bs-bg-opacity)) !important}.bg-transparent{--bs-bg-opacity: 1;background-color:rgba(0,0,0,0) !important}.bg-body-secondary{--bs-bg-opacity: 1;background-color:rgba(var(--bs-secondary-bg-rgb), var(--bs-bg-opacity)) !important}.bg-body-tertiary{--bs-bg-opacity: 1;background-color:rgba(var(--bs-tertiary-bg-rgb), var(--bs-bg-opacity)) !important}.bg-opacity-10{--bs-bg-opacity: 0.1}.bg-opacity-25{--bs-bg-opacity: 0.25}.bg-opacity-50{--bs-bg-opacity: 0.5}.bg-opacity-75{--bs-bg-opacity: 0.75}.bg-opacity-100{--bs-bg-opacity: 1}.bg-primary-subtle{background-color:var(--bs-primary-bg-subtle) !important}.bg-secondary-subtle{background-color:var(--bs-secondary-bg-subtle) !important}.bg-success-subtle{background-color:var(--bs-success-bg-subtle) !important}.bg-info-subtle{background-color:var(--bs-info-bg-subtle) !important}.bg-warning-subtle{background-color:var(--bs-warning-bg-subtle) !important}.bg-danger-subtle{background-color:var(--bs-danger-bg-subtle) !important}.bg-light-subtle{background-color:var(--bs-light-bg-subtle) !important}.bg-dark-subtle{background-color:var(--bs-dark-bg-subtle) !important}.bg-gradient{background-image:var(--bs-gradient) !important}.user-select-all{user-select:all !important}.user-select-auto{user-select:auto !important}.user-select-none{user-select:none !important}.pe-none{pointer-events:none !important}.pe-auto{pointer-events:auto !important}.rounded{border-radius:var(--bs-border-radius) !important}.rounded-0{border-radius:0 !important}.rounded-1{border-radius:var(--bs-border-radius-sm) !important}.rounded-2{border-radius:var(--bs-border-radius) !important}.rounded-3{border-radius:var(--bs-border-radius-lg) !important}.rounded-4{border-radius:var(--bs-border-radius-xl) !important}.rounded-5{border-radius:var(--bs-border-radius-xxl) !important}.rounded-circle{border-radius:50% !important}.rounded-pill{border-radius:var(--bs-border-radius-pill) !important}.rounded-top{border-top-left-radius:var(--bs-border-radius) !important;border-top-right-radius:var(--bs-border-radius) !important}.rounded-top-0{border-top-left-radius:0 !important;border-top-right-radius:0 !important}.rounded-top-1{border-top-left-radius:var(--bs-border-radius-sm) !important;border-top-right-radius:var(--bs-border-radius-sm) !important}.rounded-top-2{border-top-left-radius:var(--bs-border-radius) !important;border-top-right-radius:var(--bs-border-radius) !important}.rounded-top-3{border-top-left-radius:var(--bs-border-radius-lg) !important;border-top-right-radius:var(--bs-border-radius-lg) !important}.rounded-top-4{border-top-left-radius:var(--bs-border-radius-xl) !important;border-top-right-radius:var(--bs-border-radius-xl) !important}.rounded-top-5{border-top-left-radius:var(--bs-border-radius-xxl) !important;border-top-right-radius:var(--bs-border-radius-xxl) !important}.rounded-top-circle{border-top-left-radius:50% !important;border-top-right-radius:50% !important}.rounded-top-pill{border-top-left-radius:var(--bs-border-radius-pill) !important;border-top-right-radius:var(--bs-border-radius-pill) !important}.rounded-end{border-top-right-radius:var(--bs-border-radius) !important;border-bottom-right-radius:var(--bs-border-radius) !important}.rounded-end-0{border-top-right-radius:0 !important;border-bottom-right-radius:0 !important}.rounded-end-1{border-top-right-radius:var(--bs-border-radius-sm) !important;border-bottom-right-radius:var(--bs-border-radius-sm) !important}.rounded-end-2{border-top-right-radius:var(--bs-border-radius) !important;border-bottom-right-radius:var(--bs-border-radius) !important}.rounded-end-3{border-top-right-radius:var(--bs-border-radius-lg) !important;border-bottom-right-radius:var(--bs-border-radius-lg) !important}.rounded-end-4{border-top-right-radius:var(--bs-border-radius-xl) !important;border-bottom-right-radius:var(--bs-border-radius-xl) !important}.rounded-end-5{border-top-right-radius:var(--bs-border-radius-xxl) !important;border-bottom-right-radius:var(--bs-border-radius-xxl) !important}.rounded-end-circle{border-top-right-radius:50% !important;border-bottom-right-radius:50% !important}.rounded-end-pill{border-top-right-radius:var(--bs-border-radius-pill) !important;border-bottom-right-radius:var(--bs-border-radius-pill) !important}.rounded-bottom{border-bottom-right-radius:var(--bs-border-radius) !important;border-bottom-left-radius:var(--bs-border-radius) !important}.rounded-bottom-0{border-bottom-right-radius:0 !important;border-bottom-left-radius:0 !important}.rounded-bottom-1{border-bottom-right-radius:var(--bs-border-radius-sm) !important;border-bottom-left-radius:var(--bs-border-radius-sm) !important}.rounded-bottom-2{border-bottom-right-radius:var(--bs-border-radius) !important;border-bottom-left-radius:var(--bs-border-radius) !important}.rounded-bottom-3{border-bottom-right-radius:var(--bs-border-radius-lg) !important;border-bottom-left-radius:var(--bs-border-radius-lg) !important}.rounded-bottom-4{border-bottom-right-radius:var(--bs-border-radius-xl) !important;border-bottom-left-radius:var(--bs-border-radius-xl) !important}.rounded-bottom-5{border-bottom-right-radius:var(--bs-border-radius-xxl) !important;border-bottom-left-radius:var(--bs-border-radius-xxl) !important}.rounded-bottom-circle{border-bottom-right-radius:50% !important;border-bottom-left-radius:50% !important}.rounded-bottom-pill{border-bottom-right-radius:var(--bs-border-radius-pill) !important;border-bottom-left-radius:var(--bs-border-radius-pill) !important}.rounded-start{border-bottom-left-radius:var(--bs-border-radius) !important;border-top-left-radius:var(--bs-border-radius) !important}.rounded-start-0{border-bottom-left-radius:0 !important;border-top-left-radius:0 !important}.rounded-start-1{border-bottom-left-radius:var(--bs-border-radius-sm) !important;border-top-left-radius:var(--bs-border-radius-sm) !important}.rounded-start-2{border-bottom-left-radius:var(--bs-border-radius) !important;border-top-left-radius:var(--bs-border-radius) !important}.rounded-start-3{border-bottom-left-radius:var(--bs-border-radius-lg) !important;border-top-left-radius:var(--bs-border-radius-lg) !important}.rounded-start-4{border-bottom-left-radius:var(--bs-border-radius-xl) !important;border-top-left-radius:var(--bs-border-radius-xl) !important}.rounded-start-5{border-bottom-left-radius:var(--bs-border-radius-xxl) !important;border-top-left-radius:var(--bs-border-radius-xxl) !important}.rounded-start-circle{border-bottom-left-radius:50% !important;border-top-left-radius:50% !important}.rounded-start-pill{border-bottom-left-radius:var(--bs-border-radius-pill) !important;border-top-left-radius:var(--bs-border-radius-pill) !important}.visible{visibility:visible !important}.invisible{visibility:hidden !important}.z-n1{z-index:-1 !important}.z-0{z-index:0 !important}.z-1{z-index:1 !important}.z-2{z-index:2 !important}.z-3{z-index:3 !important}@media(min-width: 576px){.float-sm-start{float:left !important}.float-sm-end{float:right !important}.float-sm-none{float:none !important}.object-fit-sm-contain{object-fit:contain !important}.object-fit-sm-cover{object-fit:cover !important}.object-fit-sm-fill{object-fit:fill !important}.object-fit-sm-scale{object-fit:scale-down !important}.object-fit-sm-none{object-fit:none !important}.d-sm-inline{display:inline !important}.d-sm-inline-block{display:inline-block !important}.d-sm-block{display:block !important}.d-sm-grid{display:grid !important}.d-sm-inline-grid{display:inline-grid !important}.d-sm-table{display:table !important}.d-sm-table-row{display:table-row !important}.d-sm-table-cell{display:table-cell !important}.d-sm-flex{display:flex !important}.d-sm-inline-flex{display:inline-flex !important}.d-sm-none{display:none !important}.flex-sm-fill{flex:1 1 auto !important}.flex-sm-row{flex-direction:row !important}.flex-sm-column{flex-direction:column !important}.flex-sm-row-reverse{flex-direction:row-reverse !important}.flex-sm-column-reverse{flex-direction:column-reverse !important}.flex-sm-grow-0{flex-grow:0 !important}.flex-sm-grow-1{flex-grow:1 !important}.flex-sm-shrink-0{flex-shrink:0 !important}.flex-sm-shrink-1{flex-shrink:1 !important}.flex-sm-wrap{flex-wrap:wrap !important}.flex-sm-nowrap{flex-wrap:nowrap !important}.flex-sm-wrap-reverse{flex-wrap:wrap-reverse !important}.justify-content-sm-start{justify-content:flex-start !important}.justify-content-sm-end{justify-content:flex-end !important}.justify-content-sm-center{justify-content:center !important}.justify-content-sm-between{justify-content:space-between !important}.justify-content-sm-around{justify-content:space-around !important}.justify-content-sm-evenly{justify-content:space-evenly !important}.align-items-sm-start{align-items:flex-start !important}.align-items-sm-end{align-items:flex-end !important}.align-items-sm-center{align-items:center !important}.align-items-sm-baseline{align-items:baseline !important}.align-items-sm-stretch{align-items:stretch !important}.align-content-sm-start{align-content:flex-start !important}.align-content-sm-end{align-content:flex-end !important}.align-content-sm-center{align-content:center !important}.align-content-sm-between{align-content:space-between !important}.align-content-sm-around{align-content:space-around !important}.align-content-sm-stretch{align-content:stretch !important}.align-self-sm-auto{align-self:auto !important}.align-self-sm-start{align-self:flex-start !important}.align-self-sm-end{align-self:flex-end !important}.align-self-sm-center{align-self:center !important}.align-self-sm-baseline{align-self:baseline !important}.align-self-sm-stretch{align-self:stretch !important}.order-sm-first{order:-1 !important}.order-sm-0{order:0 !important}.order-sm-1{order:1 !important}.order-sm-2{order:2 !important}.order-sm-3{order:3 !important}.order-sm-4{order:4 !important}.order-sm-5{order:5 !important}.order-sm-last{order:6 !important}.m-sm-0{margin:0 !important}.m-sm-1{margin:.225rem !important}.m-sm-2{margin:.45rem !important}.m-sm-3{margin:.9rem !important}.m-sm-4{margin:1.35rem !important}.m-sm-5{margin:1.8rem !important}.m-sm-6{margin:2.25rem !important}.m-sm-7{margin:2.7rem !important}.m-sm-8{margin:3.15rem !important}.m-sm-9{margin:3.6rem !important}.m-sm-tiny{margin:.135rem !important}.m-sm-auto{margin:auto !important}.mx-sm-0{margin-right:0 !important;margin-left:0 !important}.mx-sm-1{margin-right:.225rem !important;margin-left:.225rem !important}.mx-sm-2{margin-right:.45rem !important;margin-left:.45rem !important}.mx-sm-3{margin-right:.9rem !important;margin-left:.9rem !important}.mx-sm-4{margin-right:1.35rem !important;margin-left:1.35rem !important}.mx-sm-5{margin-right:1.8rem !important;margin-left:1.8rem !important}.mx-sm-6{margin-right:2.25rem !important;margin-left:2.25rem !important}.mx-sm-7{margin-right:2.7rem !important;margin-left:2.7rem !important}.mx-sm-8{margin-right:3.15rem !important;margin-left:3.15rem !important}.mx-sm-9{margin-right:3.6rem !important;margin-left:3.6rem !important}.mx-sm-tiny{margin-right:.135rem !important;margin-left:.135rem !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:.225rem !important;margin-bottom:.225rem !important}.my-sm-2{margin-top:.45rem !important;margin-bottom:.45rem !important}.my-sm-3{margin-top:.9rem !important;margin-bottom:.9rem !important}.my-sm-4{margin-top:1.35rem !important;margin-bottom:1.35rem !important}.my-sm-5{margin-top:1.8rem !important;margin-bottom:1.8rem !important}.my-sm-6{margin-top:2.25rem !important;margin-bottom:2.25rem !important}.my-sm-7{margin-top:2.7rem !important;margin-bottom:2.7rem !important}.my-sm-8{margin-top:3.15rem !important;margin-bottom:3.15rem !important}.my-sm-9{margin-top:3.6rem !important;margin-bottom:3.6rem !important}.my-sm-tiny{margin-top:.135rem !important;margin-bottom:.135rem !important}.my-sm-auto{margin-top:auto !important;margin-bottom:auto !important}.mt-sm-0{margin-top:0 !important}.mt-sm-1{margin-top:.225rem !important}.mt-sm-2{margin-top:.45rem !important}.mt-sm-3{margin-top:.9rem !important}.mt-sm-4{margin-top:1.35rem !important}.mt-sm-5{margin-top:1.8rem !important}.mt-sm-6{margin-top:2.25rem !important}.mt-sm-7{margin-top:2.7rem !important}.mt-sm-8{margin-top:3.15rem !important}.mt-sm-9{margin-top:3.6rem !important}.mt-sm-tiny{margin-top:.135rem !important}.mt-sm-auto{margin-top:auto !important}.me-sm-0{margin-right:0 !important}.me-sm-1{margin-right:.225rem !important}.me-sm-2{margin-right:.45rem !important}.me-sm-3{margin-right:.9rem !important}.me-sm-4{margin-right:1.35rem !important}.me-sm-5{margin-right:1.8rem !important}.me-sm-6{margin-right:2.25rem !important}.me-sm-7{margin-right:2.7rem !important}.me-sm-8{margin-right:3.15rem !important}.me-sm-9{margin-right:3.6rem !important}.me-sm-tiny{margin-right:.135rem !important}.me-sm-auto{margin-right:auto !important}.mb-sm-0{margin-bottom:0 !important}.mb-sm-1{margin-bottom:.225rem !important}.mb-sm-2{margin-bottom:.45rem !important}.mb-sm-3{margin-bottom:.9rem !important}.mb-sm-4{margin-bottom:1.35rem !important}.mb-sm-5{margin-bottom:1.8rem !important}.mb-sm-6{margin-bottom:2.25rem !important}.mb-sm-7{margin-bottom:2.7rem !important}.mb-sm-8{margin-bottom:3.15rem !important}.mb-sm-9{margin-bottom:3.6rem !important}.mb-sm-tiny{margin-bottom:.135rem !important}.mb-sm-auto{margin-bottom:auto !important}.ms-sm-0{margin-left:0 !important}.ms-sm-1{margin-left:.225rem !important}.ms-sm-2{margin-left:.45rem !important}.ms-sm-3{margin-left:.9rem !important}.ms-sm-4{margin-left:1.35rem !important}.ms-sm-5{margin-left:1.8rem !important}.ms-sm-6{margin-left:2.25rem !important}.ms-sm-7{margin-left:2.7rem !important}.ms-sm-8{margin-left:3.15rem !important}.ms-sm-9{margin-left:3.6rem !important}.ms-sm-tiny{margin-left:.135rem !important}.ms-sm-auto{margin-left:auto !important}.m-sm-n1{margin:-0.225rem !important}.m-sm-n2{margin:-0.45rem !important}.m-sm-n3{margin:-0.9rem !important}.m-sm-n4{margin:-1.35rem !important}.m-sm-n5{margin:-1.8rem !important}.m-sm-n6{margin:-2.25rem !important}.m-sm-n7{margin:-2.7rem !important}.m-sm-n8{margin:-3.15rem !important}.m-sm-n9{margin:-3.6rem !important}.m-sm-ntiny{margin:-0.135rem !important}.mx-sm-n1{margin-right:-0.225rem !important;margin-left:-0.225rem !important}.mx-sm-n2{margin-right:-0.45rem !important;margin-left:-0.45rem !important}.mx-sm-n3{margin-right:-0.9rem !important;margin-left:-0.9rem !important}.mx-sm-n4{margin-right:-1.35rem !important;margin-left:-1.35rem !important}.mx-sm-n5{margin-right:-1.8rem !important;margin-left:-1.8rem !important}.mx-sm-n6{margin-right:-2.25rem !important;margin-left:-2.25rem !important}.mx-sm-n7{margin-right:-2.7rem !important;margin-left:-2.7rem !important}.mx-sm-n8{margin-right:-3.15rem !important;margin-left:-3.15rem !important}.mx-sm-n9{margin-right:-3.6rem !important;margin-left:-3.6rem !important}.mx-sm-ntiny{margin-right:-0.135rem !important;margin-left:-0.135rem !important}.my-sm-n1{margin-top:-0.225rem !important;margin-bottom:-0.225rem !important}.my-sm-n2{margin-top:-0.45rem !important;margin-bottom:-0.45rem !important}.my-sm-n3{margin-top:-0.9rem !important;margin-bottom:-0.9rem !important}.my-sm-n4{margin-top:-1.35rem !important;margin-bottom:-1.35rem !important}.my-sm-n5{margin-top:-1.8rem !important;margin-bottom:-1.8rem !important}.my-sm-n6{margin-top:-2.25rem !important;margin-bottom:-2.25rem !important}.my-sm-n7{margin-top:-2.7rem !important;margin-bottom:-2.7rem !important}.my-sm-n8{margin-top:-3.15rem !important;margin-bottom:-3.15rem !important}.my-sm-n9{margin-top:-3.6rem !important;margin-bottom:-3.6rem !important}.my-sm-ntiny{margin-top:-0.135rem !important;margin-bottom:-0.135rem !important}.mt-sm-n1{margin-top:-0.225rem !important}.mt-sm-n2{margin-top:-0.45rem !important}.mt-sm-n3{margin-top:-0.9rem !important}.mt-sm-n4{margin-top:-1.35rem !important}.mt-sm-n5{margin-top:-1.8rem !important}.mt-sm-n6{margin-top:-2.25rem !important}.mt-sm-n7{margin-top:-2.7rem !important}.mt-sm-n8{margin-top:-3.15rem !important}.mt-sm-n9{margin-top:-3.6rem !important}.mt-sm-ntiny{margin-top:-0.135rem !important}.me-sm-n1{margin-right:-0.225rem !important}.me-sm-n2{margin-right:-0.45rem !important}.me-sm-n3{margin-right:-0.9rem !important}.me-sm-n4{margin-right:-1.35rem !important}.me-sm-n5{margin-right:-1.8rem !important}.me-sm-n6{margin-right:-2.25rem !important}.me-sm-n7{margin-right:-2.7rem !important}.me-sm-n8{margin-right:-3.15rem !important}.me-sm-n9{margin-right:-3.6rem !important}.me-sm-ntiny{margin-right:-0.135rem !important}.mb-sm-n1{margin-bottom:-0.225rem !important}.mb-sm-n2{margin-bottom:-0.45rem !important}.mb-sm-n3{margin-bottom:-0.9rem !important}.mb-sm-n4{margin-bottom:-1.35rem !important}.mb-sm-n5{margin-bottom:-1.8rem !important}.mb-sm-n6{margin-bottom:-2.25rem !important}.mb-sm-n7{margin-bottom:-2.7rem !important}.mb-sm-n8{margin-bottom:-3.15rem !important}.mb-sm-n9{margin-bottom:-3.6rem !important}.mb-sm-ntiny{margin-bottom:-0.135rem !important}.ms-sm-n1{margin-left:-0.225rem !important}.ms-sm-n2{margin-left:-0.45rem !important}.ms-sm-n3{margin-left:-0.9rem !important}.ms-sm-n4{margin-left:-1.35rem !important}.ms-sm-n5{margin-left:-1.8rem !important}.ms-sm-n6{margin-left:-2.25rem !important}.ms-sm-n7{margin-left:-2.7rem !important}.ms-sm-n8{margin-left:-3.15rem !important}.ms-sm-n9{margin-left:-3.6rem !important}.ms-sm-ntiny{margin-left:-0.135rem !important}.p-sm-0{padding:0 !important}.p-sm-1{padding:.225rem !important}.p-sm-2{padding:.45rem !important}.p-sm-3{padding:.9rem !important}.p-sm-4{padding:1.35rem !important}.p-sm-5{padding:1.8rem !important}.p-sm-6{padding:2.25rem !important}.p-sm-7{padding:2.7rem !important}.p-sm-8{padding:3.15rem !important}.p-sm-9{padding:3.6rem !important}.p-sm-tiny{padding:.135rem !important}.px-sm-0{padding-right:0 !important;padding-left:0 !important}.px-sm-1{padding-right:.225rem !important;padding-left:.225rem !important}.px-sm-2{padding-right:.45rem !important;padding-left:.45rem !important}.px-sm-3{padding-right:.9rem !important;padding-left:.9rem !important}.px-sm-4{padding-right:1.35rem !important;padding-left:1.35rem !important}.px-sm-5{padding-right:1.8rem !important;padding-left:1.8rem !important}.px-sm-6{padding-right:2.25rem !important;padding-left:2.25rem !important}.px-sm-7{padding-right:2.7rem !important;padding-left:2.7rem !important}.px-sm-8{padding-right:3.15rem !important;padding-left:3.15rem !important}.px-sm-9{padding-right:3.6rem !important;padding-left:3.6rem !important}.px-sm-tiny{padding-right:.135rem !important;padding-left:.135rem !important}.py-sm-0{padding-top:0 !important;padding-bottom:0 !important}.py-sm-1{padding-top:.225rem !important;padding-bottom:.225rem !important}.py-sm-2{padding-top:.45rem !important;padding-bottom:.45rem !important}.py-sm-3{padding-top:.9rem !important;padding-bottom:.9rem !important}.py-sm-4{padding-top:1.35rem !important;padding-bottom:1.35rem !important}.py-sm-5{padding-top:1.8rem !important;padding-bottom:1.8rem !important}.py-sm-6{padding-top:2.25rem !important;padding-bottom:2.25rem !important}.py-sm-7{padding-top:2.7rem !important;padding-bottom:2.7rem !important}.py-sm-8{padding-top:3.15rem !important;padding-bottom:3.15rem !important}.py-sm-9{padding-top:3.6rem !important;padding-bottom:3.6rem !important}.py-sm-tiny{padding-top:.135rem !important;padding-bottom:.135rem !important}.pt-sm-0{padding-top:0 !important}.pt-sm-1{padding-top:.225rem !important}.pt-sm-2{padding-top:.45rem !important}.pt-sm-3{padding-top:.9rem !important}.pt-sm-4{padding-top:1.35rem !important}.pt-sm-5{padding-top:1.8rem !important}.pt-sm-6{padding-top:2.25rem !important}.pt-sm-7{padding-top:2.7rem !important}.pt-sm-8{padding-top:3.15rem !important}.pt-sm-9{padding-top:3.6rem !important}.pt-sm-tiny{padding-top:.135rem !important}.pe-sm-0{padding-right:0 !important}.pe-sm-1{padding-right:.225rem !important}.pe-sm-2{padding-right:.45rem !important}.pe-sm-3{padding-right:.9rem !important}.pe-sm-4{padding-right:1.35rem !important}.pe-sm-5{padding-right:1.8rem !important}.pe-sm-6{padding-right:2.25rem !important}.pe-sm-7{padding-right:2.7rem !important}.pe-sm-8{padding-right:3.15rem !important}.pe-sm-9{padding-right:3.6rem !important}.pe-sm-tiny{padding-right:.135rem !important}.pb-sm-0{padding-bottom:0 !important}.pb-sm-1{padding-bottom:.225rem !important}.pb-sm-2{padding-bottom:.45rem !important}.pb-sm-3{padding-bottom:.9rem !important}.pb-sm-4{padding-bottom:1.35rem !important}.pb-sm-5{padding-bottom:1.8rem !important}.pb-sm-6{padding-bottom:2.25rem !important}.pb-sm-7{padding-bottom:2.7rem !important}.pb-sm-8{padding-bottom:3.15rem !important}.pb-sm-9{padding-bottom:3.6rem !important}.pb-sm-tiny{padding-bottom:.135rem !important}.ps-sm-0{padding-left:0 !important}.ps-sm-1{padding-left:.225rem !important}.ps-sm-2{padding-left:.45rem !important}.ps-sm-3{padding-left:.9rem !important}.ps-sm-4{padding-left:1.35rem !important}.ps-sm-5{padding-left:1.8rem !important}.ps-sm-6{padding-left:2.25rem !important}.ps-sm-7{padding-left:2.7rem !important}.ps-sm-8{padding-left:3.15rem !important}.ps-sm-9{padding-left:3.6rem !important}.ps-sm-tiny{padding-left:.135rem !important}.gap-sm-0{gap:0 !important}.gap-sm-1{gap:.225rem !important}.gap-sm-2{gap:.45rem !important}.gap-sm-3{gap:.9rem !important}.gap-sm-4{gap:1.35rem !important}.gap-sm-5{gap:1.8rem !important}.gap-sm-6{gap:2.25rem !important}.gap-sm-7{gap:2.7rem !important}.gap-sm-8{gap:3.15rem !important}.gap-sm-9{gap:3.6rem !important}.gap-sm-tiny{gap:.135rem !important}.row-gap-sm-0{row-gap:0 !important}.row-gap-sm-1{row-gap:.225rem !important}.row-gap-sm-2{row-gap:.45rem !important}.row-gap-sm-3{row-gap:.9rem !important}.row-gap-sm-4{row-gap:1.35rem !important}.row-gap-sm-5{row-gap:1.8rem !important}.row-gap-sm-6{row-gap:2.25rem !important}.row-gap-sm-7{row-gap:2.7rem !important}.row-gap-sm-8{row-gap:3.15rem !important}.row-gap-sm-9{row-gap:3.6rem !important}.row-gap-sm-tiny{row-gap:.135rem !important}.column-gap-sm-0{column-gap:0 !important}.column-gap-sm-1{column-gap:.225rem !important}.column-gap-sm-2{column-gap:.45rem !important}.column-gap-sm-3{column-gap:.9rem !important}.column-gap-sm-4{column-gap:1.35rem !important}.column-gap-sm-5{column-gap:1.8rem !important}.column-gap-sm-6{column-gap:2.25rem !important}.column-gap-sm-7{column-gap:2.7rem !important}.column-gap-sm-8{column-gap:3.15rem !important}.column-gap-sm-9{column-gap:3.6rem !important}.column-gap-sm-tiny{column-gap:.135rem !important}.text-sm-start{text-align:left !important}.text-sm-end{text-align:right !important}.text-sm-center{text-align:center !important}}@media(min-width: 768px){.float-md-start{float:left !important}.float-md-end{float:right !important}.float-md-none{float:none !important}.object-fit-md-contain{object-fit:contain !important}.object-fit-md-cover{object-fit:cover !important}.object-fit-md-fill{object-fit:fill !important}.object-fit-md-scale{object-fit:scale-down !important}.object-fit-md-none{object-fit:none !important}.d-md-inline{display:inline !important}.d-md-inline-block{display:inline-block !important}.d-md-block{display:block !important}.d-md-grid{display:grid !important}.d-md-inline-grid{display:inline-grid !important}.d-md-table{display:table !important}.d-md-table-row{display:table-row !important}.d-md-table-cell{display:table-cell !important}.d-md-flex{display:flex !important}.d-md-inline-flex{display:inline-flex !important}.d-md-none{display:none !important}.flex-md-fill{flex:1 1 auto !important}.flex-md-row{flex-direction:row !important}.flex-md-column{flex-direction:column !important}.flex-md-row-reverse{flex-direction:row-reverse !important}.flex-md-column-reverse{flex-direction:column-reverse !important}.flex-md-grow-0{flex-grow:0 !important}.flex-md-grow-1{flex-grow:1 !important}.flex-md-shrink-0{flex-shrink:0 !important}.flex-md-shrink-1{flex-shrink:1 !important}.flex-md-wrap{flex-wrap:wrap !important}.flex-md-nowrap{flex-wrap:nowrap !important}.flex-md-wrap-reverse{flex-wrap:wrap-reverse !important}.justify-content-md-start{justify-content:flex-start !important}.justify-content-md-end{justify-content:flex-end !important}.justify-content-md-center{justify-content:center !important}.justify-content-md-between{justify-content:space-between !important}.justify-content-md-around{justify-content:space-around !important}.justify-content-md-evenly{justify-content:space-evenly !important}.align-items-md-start{align-items:flex-start !important}.align-items-md-end{align-items:flex-end !important}.align-items-md-center{align-items:center !important}.align-items-md-baseline{align-items:baseline !important}.align-items-md-stretch{align-items:stretch !important}.align-content-md-start{align-content:flex-start !important}.align-content-md-end{align-content:flex-end !important}.align-content-md-center{align-content:center !important}.align-content-md-between{align-content:space-between !important}.align-content-md-around{align-content:space-around !important}.align-content-md-stretch{align-content:stretch !important}.align-self-md-auto{align-self:auto !important}.align-self-md-start{align-self:flex-start !important}.align-self-md-end{align-self:flex-end !important}.align-self-md-center{align-self:center !important}.align-self-md-baseline{align-self:baseline !important}.align-self-md-stretch{align-self:stretch !important}.order-md-first{order:-1 !important}.order-md-0{order:0 !important}.order-md-1{order:1 !important}.order-md-2{order:2 !important}.order-md-3{order:3 !important}.order-md-4{order:4 !important}.order-md-5{order:5 !important}.order-md-last{order:6 !important}.m-md-0{margin:0 !important}.m-md-1{margin:.225rem !important}.m-md-2{margin:.45rem !important}.m-md-3{margin:.9rem !important}.m-md-4{margin:1.35rem !important}.m-md-5{margin:1.8rem !important}.m-md-6{margin:2.25rem !important}.m-md-7{margin:2.7rem !important}.m-md-8{margin:3.15rem !important}.m-md-9{margin:3.6rem !important}.m-md-tiny{margin:.135rem !important}.m-md-auto{margin:auto !important}.mx-md-0{margin-right:0 !important;margin-left:0 !important}.mx-md-1{margin-right:.225rem !important;margin-left:.225rem !important}.mx-md-2{margin-right:.45rem !important;margin-left:.45rem !important}.mx-md-3{margin-right:.9rem !important;margin-left:.9rem !important}.mx-md-4{margin-right:1.35rem !important;margin-left:1.35rem !important}.mx-md-5{margin-right:1.8rem !important;margin-left:1.8rem !important}.mx-md-6{margin-right:2.25rem !important;margin-left:2.25rem !important}.mx-md-7{margin-right:2.7rem !important;margin-left:2.7rem !important}.mx-md-8{margin-right:3.15rem !important;margin-left:3.15rem !important}.mx-md-9{margin-right:3.6rem !important;margin-left:3.6rem !important}.mx-md-tiny{margin-right:.135rem !important;margin-left:.135rem !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:.225rem !important;margin-bottom:.225rem !important}.my-md-2{margin-top:.45rem !important;margin-bottom:.45rem !important}.my-md-3{margin-top:.9rem !important;margin-bottom:.9rem !important}.my-md-4{margin-top:1.35rem !important;margin-bottom:1.35rem !important}.my-md-5{margin-top:1.8rem !important;margin-bottom:1.8rem !important}.my-md-6{margin-top:2.25rem !important;margin-bottom:2.25rem !important}.my-md-7{margin-top:2.7rem !important;margin-bottom:2.7rem !important}.my-md-8{margin-top:3.15rem !important;margin-bottom:3.15rem !important}.my-md-9{margin-top:3.6rem !important;margin-bottom:3.6rem !important}.my-md-tiny{margin-top:.135rem !important;margin-bottom:.135rem !important}.my-md-auto{margin-top:auto !important;margin-bottom:auto !important}.mt-md-0{margin-top:0 !important}.mt-md-1{margin-top:.225rem !important}.mt-md-2{margin-top:.45rem !important}.mt-md-3{margin-top:.9rem !important}.mt-md-4{margin-top:1.35rem !important}.mt-md-5{margin-top:1.8rem !important}.mt-md-6{margin-top:2.25rem !important}.mt-md-7{margin-top:2.7rem !important}.mt-md-8{margin-top:3.15rem !important}.mt-md-9{margin-top:3.6rem !important}.mt-md-tiny{margin-top:.135rem !important}.mt-md-auto{margin-top:auto !important}.me-md-0{margin-right:0 !important}.me-md-1{margin-right:.225rem !important}.me-md-2{margin-right:.45rem !important}.me-md-3{margin-right:.9rem !important}.me-md-4{margin-right:1.35rem !important}.me-md-5{margin-right:1.8rem !important}.me-md-6{margin-right:2.25rem !important}.me-md-7{margin-right:2.7rem !important}.me-md-8{margin-right:3.15rem !important}.me-md-9{margin-right:3.6rem !important}.me-md-tiny{margin-right:.135rem !important}.me-md-auto{margin-right:auto !important}.mb-md-0{margin-bottom:0 !important}.mb-md-1{margin-bottom:.225rem !important}.mb-md-2{margin-bottom:.45rem !important}.mb-md-3{margin-bottom:.9rem !important}.mb-md-4{margin-bottom:1.35rem !important}.mb-md-5{margin-bottom:1.8rem !important}.mb-md-6{margin-bottom:2.25rem !important}.mb-md-7{margin-bottom:2.7rem !important}.mb-md-8{margin-bottom:3.15rem !important}.mb-md-9{margin-bottom:3.6rem !important}.mb-md-tiny{margin-bottom:.135rem !important}.mb-md-auto{margin-bottom:auto !important}.ms-md-0{margin-left:0 !important}.ms-md-1{margin-left:.225rem !important}.ms-md-2{margin-left:.45rem !important}.ms-md-3{margin-left:.9rem !important}.ms-md-4{margin-left:1.35rem !important}.ms-md-5{margin-left:1.8rem !important}.ms-md-6{margin-left:2.25rem !important}.ms-md-7{margin-left:2.7rem !important}.ms-md-8{margin-left:3.15rem !important}.ms-md-9{margin-left:3.6rem !important}.ms-md-tiny{margin-left:.135rem !important}.ms-md-auto{margin-left:auto !important}.m-md-n1{margin:-0.225rem !important}.m-md-n2{margin:-0.45rem !important}.m-md-n3{margin:-0.9rem !important}.m-md-n4{margin:-1.35rem !important}.m-md-n5{margin:-1.8rem !important}.m-md-n6{margin:-2.25rem !important}.m-md-n7{margin:-2.7rem !important}.m-md-n8{margin:-3.15rem !important}.m-md-n9{margin:-3.6rem !important}.m-md-ntiny{margin:-0.135rem !important}.mx-md-n1{margin-right:-0.225rem !important;margin-left:-0.225rem !important}.mx-md-n2{margin-right:-0.45rem !important;margin-left:-0.45rem !important}.mx-md-n3{margin-right:-0.9rem !important;margin-left:-0.9rem !important}.mx-md-n4{margin-right:-1.35rem !important;margin-left:-1.35rem !important}.mx-md-n5{margin-right:-1.8rem !important;margin-left:-1.8rem !important}.mx-md-n6{margin-right:-2.25rem !important;margin-left:-2.25rem !important}.mx-md-n7{margin-right:-2.7rem !important;margin-left:-2.7rem !important}.mx-md-n8{margin-right:-3.15rem !important;margin-left:-3.15rem !important}.mx-md-n9{margin-right:-3.6rem !important;margin-left:-3.6rem !important}.mx-md-ntiny{margin-right:-0.135rem !important;margin-left:-0.135rem !important}.my-md-n1{margin-top:-0.225rem !important;margin-bottom:-0.225rem !important}.my-md-n2{margin-top:-0.45rem !important;margin-bottom:-0.45rem !important}.my-md-n3{margin-top:-0.9rem !important;margin-bottom:-0.9rem !important}.my-md-n4{margin-top:-1.35rem !important;margin-bottom:-1.35rem !important}.my-md-n5{margin-top:-1.8rem !important;margin-bottom:-1.8rem !important}.my-md-n6{margin-top:-2.25rem !important;margin-bottom:-2.25rem !important}.my-md-n7{margin-top:-2.7rem !important;margin-bottom:-2.7rem !important}.my-md-n8{margin-top:-3.15rem !important;margin-bottom:-3.15rem !important}.my-md-n9{margin-top:-3.6rem !important;margin-bottom:-3.6rem !important}.my-md-ntiny{margin-top:-0.135rem !important;margin-bottom:-0.135rem !important}.mt-md-n1{margin-top:-0.225rem !important}.mt-md-n2{margin-top:-0.45rem !important}.mt-md-n3{margin-top:-0.9rem !important}.mt-md-n4{margin-top:-1.35rem !important}.mt-md-n5{margin-top:-1.8rem !important}.mt-md-n6{margin-top:-2.25rem !important}.mt-md-n7{margin-top:-2.7rem !important}.mt-md-n8{margin-top:-3.15rem !important}.mt-md-n9{margin-top:-3.6rem !important}.mt-md-ntiny{margin-top:-0.135rem !important}.me-md-n1{margin-right:-0.225rem !important}.me-md-n2{margin-right:-0.45rem !important}.me-md-n3{margin-right:-0.9rem !important}.me-md-n4{margin-right:-1.35rem !important}.me-md-n5{margin-right:-1.8rem !important}.me-md-n6{margin-right:-2.25rem !important}.me-md-n7{margin-right:-2.7rem !important}.me-md-n8{margin-right:-3.15rem !important}.me-md-n9{margin-right:-3.6rem !important}.me-md-ntiny{margin-right:-0.135rem !important}.mb-md-n1{margin-bottom:-0.225rem !important}.mb-md-n2{margin-bottom:-0.45rem !important}.mb-md-n3{margin-bottom:-0.9rem !important}.mb-md-n4{margin-bottom:-1.35rem !important}.mb-md-n5{margin-bottom:-1.8rem !important}.mb-md-n6{margin-bottom:-2.25rem !important}.mb-md-n7{margin-bottom:-2.7rem !important}.mb-md-n8{margin-bottom:-3.15rem !important}.mb-md-n9{margin-bottom:-3.6rem !important}.mb-md-ntiny{margin-bottom:-0.135rem !important}.ms-md-n1{margin-left:-0.225rem !important}.ms-md-n2{margin-left:-0.45rem !important}.ms-md-n3{margin-left:-0.9rem !important}.ms-md-n4{margin-left:-1.35rem !important}.ms-md-n5{margin-left:-1.8rem !important}.ms-md-n6{margin-left:-2.25rem !important}.ms-md-n7{margin-left:-2.7rem !important}.ms-md-n8{margin-left:-3.15rem !important}.ms-md-n9{margin-left:-3.6rem !important}.ms-md-ntiny{margin-left:-0.135rem !important}.p-md-0{padding:0 !important}.p-md-1{padding:.225rem !important}.p-md-2{padding:.45rem !important}.p-md-3{padding:.9rem !important}.p-md-4{padding:1.35rem !important}.p-md-5{padding:1.8rem !important}.p-md-6{padding:2.25rem !important}.p-md-7{padding:2.7rem !important}.p-md-8{padding:3.15rem !important}.p-md-9{padding:3.6rem !important}.p-md-tiny{padding:.135rem !important}.px-md-0{padding-right:0 !important;padding-left:0 !important}.px-md-1{padding-right:.225rem !important;padding-left:.225rem !important}.px-md-2{padding-right:.45rem !important;padding-left:.45rem !important}.px-md-3{padding-right:.9rem !important;padding-left:.9rem !important}.px-md-4{padding-right:1.35rem !important;padding-left:1.35rem !important}.px-md-5{padding-right:1.8rem !important;padding-left:1.8rem !important}.px-md-6{padding-right:2.25rem !important;padding-left:2.25rem !important}.px-md-7{padding-right:2.7rem !important;padding-left:2.7rem !important}.px-md-8{padding-right:3.15rem !important;padding-left:3.15rem !important}.px-md-9{padding-right:3.6rem !important;padding-left:3.6rem !important}.px-md-tiny{padding-right:.135rem !important;padding-left:.135rem !important}.py-md-0{padding-top:0 !important;padding-bottom:0 !important}.py-md-1{padding-top:.225rem !important;padding-bottom:.225rem !important}.py-md-2{padding-top:.45rem !important;padding-bottom:.45rem !important}.py-md-3{padding-top:.9rem !important;padding-bottom:.9rem !important}.py-md-4{padding-top:1.35rem !important;padding-bottom:1.35rem !important}.py-md-5{padding-top:1.8rem !important;padding-bottom:1.8rem !important}.py-md-6{padding-top:2.25rem !important;padding-bottom:2.25rem !important}.py-md-7{padding-top:2.7rem !important;padding-bottom:2.7rem !important}.py-md-8{padding-top:3.15rem !important;padding-bottom:3.15rem !important}.py-md-9{padding-top:3.6rem !important;padding-bottom:3.6rem !important}.py-md-tiny{padding-top:.135rem !important;padding-bottom:.135rem !important}.pt-md-0{padding-top:0 !important}.pt-md-1{padding-top:.225rem !important}.pt-md-2{padding-top:.45rem !important}.pt-md-3{padding-top:.9rem !important}.pt-md-4{padding-top:1.35rem !important}.pt-md-5{padding-top:1.8rem !important}.pt-md-6{padding-top:2.25rem !important}.pt-md-7{padding-top:2.7rem !important}.pt-md-8{padding-top:3.15rem !important}.pt-md-9{padding-top:3.6rem !important}.pt-md-tiny{padding-top:.135rem !important}.pe-md-0{padding-right:0 !important}.pe-md-1{padding-right:.225rem !important}.pe-md-2{padding-right:.45rem !important}.pe-md-3{padding-right:.9rem !important}.pe-md-4{padding-right:1.35rem !important}.pe-md-5{padding-right:1.8rem !important}.pe-md-6{padding-right:2.25rem !important}.pe-md-7{padding-right:2.7rem !important}.pe-md-8{padding-right:3.15rem !important}.pe-md-9{padding-right:3.6rem !important}.pe-md-tiny{padding-right:.135rem !important}.pb-md-0{padding-bottom:0 !important}.pb-md-1{padding-bottom:.225rem !important}.pb-md-2{padding-bottom:.45rem !important}.pb-md-3{padding-bottom:.9rem !important}.pb-md-4{padding-bottom:1.35rem !important}.pb-md-5{padding-bottom:1.8rem !important}.pb-md-6{padding-bottom:2.25rem !important}.pb-md-7{padding-bottom:2.7rem !important}.pb-md-8{padding-bottom:3.15rem !important}.pb-md-9{padding-bottom:3.6rem !important}.pb-md-tiny{padding-bottom:.135rem !important}.ps-md-0{padding-left:0 !important}.ps-md-1{padding-left:.225rem !important}.ps-md-2{padding-left:.45rem !important}.ps-md-3{padding-left:.9rem !important}.ps-md-4{padding-left:1.35rem !important}.ps-md-5{padding-left:1.8rem !important}.ps-md-6{padding-left:2.25rem !important}.ps-md-7{padding-left:2.7rem !important}.ps-md-8{padding-left:3.15rem !important}.ps-md-9{padding-left:3.6rem !important}.ps-md-tiny{padding-left:.135rem !important}.gap-md-0{gap:0 !important}.gap-md-1{gap:.225rem !important}.gap-md-2{gap:.45rem !important}.gap-md-3{gap:.9rem !important}.gap-md-4{gap:1.35rem !important}.gap-md-5{gap:1.8rem !important}.gap-md-6{gap:2.25rem !important}.gap-md-7{gap:2.7rem !important}.gap-md-8{gap:3.15rem !important}.gap-md-9{gap:3.6rem !important}.gap-md-tiny{gap:.135rem !important}.row-gap-md-0{row-gap:0 !important}.row-gap-md-1{row-gap:.225rem !important}.row-gap-md-2{row-gap:.45rem !important}.row-gap-md-3{row-gap:.9rem !important}.row-gap-md-4{row-gap:1.35rem !important}.row-gap-md-5{row-gap:1.8rem !important}.row-gap-md-6{row-gap:2.25rem !important}.row-gap-md-7{row-gap:2.7rem !important}.row-gap-md-8{row-gap:3.15rem !important}.row-gap-md-9{row-gap:3.6rem !important}.row-gap-md-tiny{row-gap:.135rem !important}.column-gap-md-0{column-gap:0 !important}.column-gap-md-1{column-gap:.225rem !important}.column-gap-md-2{column-gap:.45rem !important}.column-gap-md-3{column-gap:.9rem !important}.column-gap-md-4{column-gap:1.35rem !important}.column-gap-md-5{column-gap:1.8rem !important}.column-gap-md-6{column-gap:2.25rem !important}.column-gap-md-7{column-gap:2.7rem !important}.column-gap-md-8{column-gap:3.15rem !important}.column-gap-md-9{column-gap:3.6rem !important}.column-gap-md-tiny{column-gap:.135rem !important}.text-md-start{text-align:left !important}.text-md-end{text-align:right !important}.text-md-center{text-align:center !important}}@media(min-width: 992px){.float-lg-start{float:left !important}.float-lg-end{float:right !important}.float-lg-none{float:none !important}.object-fit-lg-contain{object-fit:contain !important}.object-fit-lg-cover{object-fit:cover !important}.object-fit-lg-fill{object-fit:fill !important}.object-fit-lg-scale{object-fit:scale-down !important}.object-fit-lg-none{object-fit:none !important}.d-lg-inline{display:inline !important}.d-lg-inline-block{display:inline-block !important}.d-lg-block{display:block !important}.d-lg-grid{display:grid !important}.d-lg-inline-grid{display:inline-grid !important}.d-lg-table{display:table !important}.d-lg-table-row{display:table-row !important}.d-lg-table-cell{display:table-cell !important}.d-lg-flex{display:flex !important}.d-lg-inline-flex{display:inline-flex !important}.d-lg-none{display:none !important}.flex-lg-fill{flex:1 1 auto !important}.flex-lg-row{flex-direction:row !important}.flex-lg-column{flex-direction:column !important}.flex-lg-row-reverse{flex-direction:row-reverse !important}.flex-lg-column-reverse{flex-direction:column-reverse !important}.flex-lg-grow-0{flex-grow:0 !important}.flex-lg-grow-1{flex-grow:1 !important}.flex-lg-shrink-0{flex-shrink:0 !important}.flex-lg-shrink-1{flex-shrink:1 !important}.flex-lg-wrap{flex-wrap:wrap !important}.flex-lg-nowrap{flex-wrap:nowrap !important}.flex-lg-wrap-reverse{flex-wrap:wrap-reverse !important}.justify-content-lg-start{justify-content:flex-start !important}.justify-content-lg-end{justify-content:flex-end !important}.justify-content-lg-center{justify-content:center !important}.justify-content-lg-between{justify-content:space-between !important}.justify-content-lg-around{justify-content:space-around !important}.justify-content-lg-evenly{justify-content:space-evenly !important}.align-items-lg-start{align-items:flex-start !important}.align-items-lg-end{align-items:flex-end !important}.align-items-lg-center{align-items:center !important}.align-items-lg-baseline{align-items:baseline !important}.align-items-lg-stretch{align-items:stretch !important}.align-content-lg-start{align-content:flex-start !important}.align-content-lg-end{align-content:flex-end !important}.align-content-lg-center{align-content:center !important}.align-content-lg-between{align-content:space-between !important}.align-content-lg-around{align-content:space-around !important}.align-content-lg-stretch{align-content:stretch !important}.align-self-lg-auto{align-self:auto !important}.align-self-lg-start{align-self:flex-start !important}.align-self-lg-end{align-self:flex-end !important}.align-self-lg-center{align-self:center !important}.align-self-lg-baseline{align-self:baseline !important}.align-self-lg-stretch{align-self:stretch !important}.order-lg-first{order:-1 !important}.order-lg-0{order:0 !important}.order-lg-1{order:1 !important}.order-lg-2{order:2 !important}.order-lg-3{order:3 !important}.order-lg-4{order:4 !important}.order-lg-5{order:5 !important}.order-lg-last{order:6 !important}.m-lg-0{margin:0 !important}.m-lg-1{margin:.225rem !important}.m-lg-2{margin:.45rem !important}.m-lg-3{margin:.9rem !important}.m-lg-4{margin:1.35rem !important}.m-lg-5{margin:1.8rem !important}.m-lg-6{margin:2.25rem !important}.m-lg-7{margin:2.7rem !important}.m-lg-8{margin:3.15rem !important}.m-lg-9{margin:3.6rem !important}.m-lg-tiny{margin:.135rem !important}.m-lg-auto{margin:auto !important}.mx-lg-0{margin-right:0 !important;margin-left:0 !important}.mx-lg-1{margin-right:.225rem !important;margin-left:.225rem !important}.mx-lg-2{margin-right:.45rem !important;margin-left:.45rem !important}.mx-lg-3{margin-right:.9rem !important;margin-left:.9rem !important}.mx-lg-4{margin-right:1.35rem !important;margin-left:1.35rem !important}.mx-lg-5{margin-right:1.8rem !important;margin-left:1.8rem !important}.mx-lg-6{margin-right:2.25rem !important;margin-left:2.25rem !important}.mx-lg-7{margin-right:2.7rem !important;margin-left:2.7rem !important}.mx-lg-8{margin-right:3.15rem !important;margin-left:3.15rem !important}.mx-lg-9{margin-right:3.6rem !important;margin-left:3.6rem !important}.mx-lg-tiny{margin-right:.135rem !important;margin-left:.135rem !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:.225rem !important;margin-bottom:.225rem !important}.my-lg-2{margin-top:.45rem !important;margin-bottom:.45rem !important}.my-lg-3{margin-top:.9rem !important;margin-bottom:.9rem !important}.my-lg-4{margin-top:1.35rem !important;margin-bottom:1.35rem !important}.my-lg-5{margin-top:1.8rem !important;margin-bottom:1.8rem !important}.my-lg-6{margin-top:2.25rem !important;margin-bottom:2.25rem !important}.my-lg-7{margin-top:2.7rem !important;margin-bottom:2.7rem !important}.my-lg-8{margin-top:3.15rem !important;margin-bottom:3.15rem !important}.my-lg-9{margin-top:3.6rem !important;margin-bottom:3.6rem !important}.my-lg-tiny{margin-top:.135rem !important;margin-bottom:.135rem !important}.my-lg-auto{margin-top:auto !important;margin-bottom:auto !important}.mt-lg-0{margin-top:0 !important}.mt-lg-1{margin-top:.225rem !important}.mt-lg-2{margin-top:.45rem !important}.mt-lg-3{margin-top:.9rem !important}.mt-lg-4{margin-top:1.35rem !important}.mt-lg-5{margin-top:1.8rem !important}.mt-lg-6{margin-top:2.25rem !important}.mt-lg-7{margin-top:2.7rem !important}.mt-lg-8{margin-top:3.15rem !important}.mt-lg-9{margin-top:3.6rem !important}.mt-lg-tiny{margin-top:.135rem !important}.mt-lg-auto{margin-top:auto !important}.me-lg-0{margin-right:0 !important}.me-lg-1{margin-right:.225rem !important}.me-lg-2{margin-right:.45rem !important}.me-lg-3{margin-right:.9rem !important}.me-lg-4{margin-right:1.35rem !important}.me-lg-5{margin-right:1.8rem !important}.me-lg-6{margin-right:2.25rem !important}.me-lg-7{margin-right:2.7rem !important}.me-lg-8{margin-right:3.15rem !important}.me-lg-9{margin-right:3.6rem !important}.me-lg-tiny{margin-right:.135rem !important}.me-lg-auto{margin-right:auto !important}.mb-lg-0{margin-bottom:0 !important}.mb-lg-1{margin-bottom:.225rem !important}.mb-lg-2{margin-bottom:.45rem !important}.mb-lg-3{margin-bottom:.9rem !important}.mb-lg-4{margin-bottom:1.35rem !important}.mb-lg-5{margin-bottom:1.8rem !important}.mb-lg-6{margin-bottom:2.25rem !important}.mb-lg-7{margin-bottom:2.7rem !important}.mb-lg-8{margin-bottom:3.15rem !important}.mb-lg-9{margin-bottom:3.6rem !important}.mb-lg-tiny{margin-bottom:.135rem !important}.mb-lg-auto{margin-bottom:auto !important}.ms-lg-0{margin-left:0 !important}.ms-lg-1{margin-left:.225rem !important}.ms-lg-2{margin-left:.45rem !important}.ms-lg-3{margin-left:.9rem !important}.ms-lg-4{margin-left:1.35rem !important}.ms-lg-5{margin-left:1.8rem !important}.ms-lg-6{margin-left:2.25rem !important}.ms-lg-7{margin-left:2.7rem !important}.ms-lg-8{margin-left:3.15rem !important}.ms-lg-9{margin-left:3.6rem !important}.ms-lg-tiny{margin-left:.135rem !important}.ms-lg-auto{margin-left:auto !important}.m-lg-n1{margin:-0.225rem !important}.m-lg-n2{margin:-0.45rem !important}.m-lg-n3{margin:-0.9rem !important}.m-lg-n4{margin:-1.35rem !important}.m-lg-n5{margin:-1.8rem !important}.m-lg-n6{margin:-2.25rem !important}.m-lg-n7{margin:-2.7rem !important}.m-lg-n8{margin:-3.15rem !important}.m-lg-n9{margin:-3.6rem !important}.m-lg-ntiny{margin:-0.135rem !important}.mx-lg-n1{margin-right:-0.225rem !important;margin-left:-0.225rem !important}.mx-lg-n2{margin-right:-0.45rem !important;margin-left:-0.45rem !important}.mx-lg-n3{margin-right:-0.9rem !important;margin-left:-0.9rem !important}.mx-lg-n4{margin-right:-1.35rem !important;margin-left:-1.35rem !important}.mx-lg-n5{margin-right:-1.8rem !important;margin-left:-1.8rem !important}.mx-lg-n6{margin-right:-2.25rem !important;margin-left:-2.25rem !important}.mx-lg-n7{margin-right:-2.7rem !important;margin-left:-2.7rem !important}.mx-lg-n8{margin-right:-3.15rem !important;margin-left:-3.15rem !important}.mx-lg-n9{margin-right:-3.6rem !important;margin-left:-3.6rem !important}.mx-lg-ntiny{margin-right:-0.135rem !important;margin-left:-0.135rem !important}.my-lg-n1{margin-top:-0.225rem !important;margin-bottom:-0.225rem !important}.my-lg-n2{margin-top:-0.45rem !important;margin-bottom:-0.45rem !important}.my-lg-n3{margin-top:-0.9rem !important;margin-bottom:-0.9rem !important}.my-lg-n4{margin-top:-1.35rem !important;margin-bottom:-1.35rem !important}.my-lg-n5{margin-top:-1.8rem !important;margin-bottom:-1.8rem !important}.my-lg-n6{margin-top:-2.25rem !important;margin-bottom:-2.25rem !important}.my-lg-n7{margin-top:-2.7rem !important;margin-bottom:-2.7rem !important}.my-lg-n8{margin-top:-3.15rem !important;margin-bottom:-3.15rem !important}.my-lg-n9{margin-top:-3.6rem !important;margin-bottom:-3.6rem !important}.my-lg-ntiny{margin-top:-0.135rem !important;margin-bottom:-0.135rem !important}.mt-lg-n1{margin-top:-0.225rem !important}.mt-lg-n2{margin-top:-0.45rem !important}.mt-lg-n3{margin-top:-0.9rem !important}.mt-lg-n4{margin-top:-1.35rem !important}.mt-lg-n5{margin-top:-1.8rem !important}.mt-lg-n6{margin-top:-2.25rem !important}.mt-lg-n7{margin-top:-2.7rem !important}.mt-lg-n8{margin-top:-3.15rem !important}.mt-lg-n9{margin-top:-3.6rem !important}.mt-lg-ntiny{margin-top:-0.135rem !important}.me-lg-n1{margin-right:-0.225rem !important}.me-lg-n2{margin-right:-0.45rem !important}.me-lg-n3{margin-right:-0.9rem !important}.me-lg-n4{margin-right:-1.35rem !important}.me-lg-n5{margin-right:-1.8rem !important}.me-lg-n6{margin-right:-2.25rem !important}.me-lg-n7{margin-right:-2.7rem !important}.me-lg-n8{margin-right:-3.15rem !important}.me-lg-n9{margin-right:-3.6rem !important}.me-lg-ntiny{margin-right:-0.135rem !important}.mb-lg-n1{margin-bottom:-0.225rem !important}.mb-lg-n2{margin-bottom:-0.45rem !important}.mb-lg-n3{margin-bottom:-0.9rem !important}.mb-lg-n4{margin-bottom:-1.35rem !important}.mb-lg-n5{margin-bottom:-1.8rem !important}.mb-lg-n6{margin-bottom:-2.25rem !important}.mb-lg-n7{margin-bottom:-2.7rem !important}.mb-lg-n8{margin-bottom:-3.15rem !important}.mb-lg-n9{margin-bottom:-3.6rem !important}.mb-lg-ntiny{margin-bottom:-0.135rem !important}.ms-lg-n1{margin-left:-0.225rem !important}.ms-lg-n2{margin-left:-0.45rem !important}.ms-lg-n3{margin-left:-0.9rem !important}.ms-lg-n4{margin-left:-1.35rem !important}.ms-lg-n5{margin-left:-1.8rem !important}.ms-lg-n6{margin-left:-2.25rem !important}.ms-lg-n7{margin-left:-2.7rem !important}.ms-lg-n8{margin-left:-3.15rem !important}.ms-lg-n9{margin-left:-3.6rem !important}.ms-lg-ntiny{margin-left:-0.135rem !important}.p-lg-0{padding:0 !important}.p-lg-1{padding:.225rem !important}.p-lg-2{padding:.45rem !important}.p-lg-3{padding:.9rem !important}.p-lg-4{padding:1.35rem !important}.p-lg-5{padding:1.8rem !important}.p-lg-6{padding:2.25rem !important}.p-lg-7{padding:2.7rem !important}.p-lg-8{padding:3.15rem !important}.p-lg-9{padding:3.6rem !important}.p-lg-tiny{padding:.135rem !important}.px-lg-0{padding-right:0 !important;padding-left:0 !important}.px-lg-1{padding-right:.225rem !important;padding-left:.225rem !important}.px-lg-2{padding-right:.45rem !important;padding-left:.45rem !important}.px-lg-3{padding-right:.9rem !important;padding-left:.9rem !important}.px-lg-4{padding-right:1.35rem !important;padding-left:1.35rem !important}.px-lg-5{padding-right:1.8rem !important;padding-left:1.8rem !important}.px-lg-6{padding-right:2.25rem !important;padding-left:2.25rem !important}.px-lg-7{padding-right:2.7rem !important;padding-left:2.7rem !important}.px-lg-8{padding-right:3.15rem !important;padding-left:3.15rem !important}.px-lg-9{padding-right:3.6rem !important;padding-left:3.6rem !important}.px-lg-tiny{padding-right:.135rem !important;padding-left:.135rem !important}.py-lg-0{padding-top:0 !important;padding-bottom:0 !important}.py-lg-1{padding-top:.225rem !important;padding-bottom:.225rem !important}.py-lg-2{padding-top:.45rem !important;padding-bottom:.45rem !important}.py-lg-3{padding-top:.9rem !important;padding-bottom:.9rem !important}.py-lg-4{padding-top:1.35rem !important;padding-bottom:1.35rem !important}.py-lg-5{padding-top:1.8rem !important;padding-bottom:1.8rem !important}.py-lg-6{padding-top:2.25rem !important;padding-bottom:2.25rem !important}.py-lg-7{padding-top:2.7rem !important;padding-bottom:2.7rem !important}.py-lg-8{padding-top:3.15rem !important;padding-bottom:3.15rem !important}.py-lg-9{padding-top:3.6rem !important;padding-bottom:3.6rem !important}.py-lg-tiny{padding-top:.135rem !important;padding-bottom:.135rem !important}.pt-lg-0{padding-top:0 !important}.pt-lg-1{padding-top:.225rem !important}.pt-lg-2{padding-top:.45rem !important}.pt-lg-3{padding-top:.9rem !important}.pt-lg-4{padding-top:1.35rem !important}.pt-lg-5{padding-top:1.8rem !important}.pt-lg-6{padding-top:2.25rem !important}.pt-lg-7{padding-top:2.7rem !important}.pt-lg-8{padding-top:3.15rem !important}.pt-lg-9{padding-top:3.6rem !important}.pt-lg-tiny{padding-top:.135rem !important}.pe-lg-0{padding-right:0 !important}.pe-lg-1{padding-right:.225rem !important}.pe-lg-2{padding-right:.45rem !important}.pe-lg-3{padding-right:.9rem !important}.pe-lg-4{padding-right:1.35rem !important}.pe-lg-5{padding-right:1.8rem !important}.pe-lg-6{padding-right:2.25rem !important}.pe-lg-7{padding-right:2.7rem !important}.pe-lg-8{padding-right:3.15rem !important}.pe-lg-9{padding-right:3.6rem !important}.pe-lg-tiny{padding-right:.135rem !important}.pb-lg-0{padding-bottom:0 !important}.pb-lg-1{padding-bottom:.225rem !important}.pb-lg-2{padding-bottom:.45rem !important}.pb-lg-3{padding-bottom:.9rem !important}.pb-lg-4{padding-bottom:1.35rem !important}.pb-lg-5{padding-bottom:1.8rem !important}.pb-lg-6{padding-bottom:2.25rem !important}.pb-lg-7{padding-bottom:2.7rem !important}.pb-lg-8{padding-bottom:3.15rem !important}.pb-lg-9{padding-bottom:3.6rem !important}.pb-lg-tiny{padding-bottom:.135rem !important}.ps-lg-0{padding-left:0 !important}.ps-lg-1{padding-left:.225rem !important}.ps-lg-2{padding-left:.45rem !important}.ps-lg-3{padding-left:.9rem !important}.ps-lg-4{padding-left:1.35rem !important}.ps-lg-5{padding-left:1.8rem !important}.ps-lg-6{padding-left:2.25rem !important}.ps-lg-7{padding-left:2.7rem !important}.ps-lg-8{padding-left:3.15rem !important}.ps-lg-9{padding-left:3.6rem !important}.ps-lg-tiny{padding-left:.135rem !important}.gap-lg-0{gap:0 !important}.gap-lg-1{gap:.225rem !important}.gap-lg-2{gap:.45rem !important}.gap-lg-3{gap:.9rem !important}.gap-lg-4{gap:1.35rem !important}.gap-lg-5{gap:1.8rem !important}.gap-lg-6{gap:2.25rem !important}.gap-lg-7{gap:2.7rem !important}.gap-lg-8{gap:3.15rem !important}.gap-lg-9{gap:3.6rem !important}.gap-lg-tiny{gap:.135rem !important}.row-gap-lg-0{row-gap:0 !important}.row-gap-lg-1{row-gap:.225rem !important}.row-gap-lg-2{row-gap:.45rem !important}.row-gap-lg-3{row-gap:.9rem !important}.row-gap-lg-4{row-gap:1.35rem !important}.row-gap-lg-5{row-gap:1.8rem !important}.row-gap-lg-6{row-gap:2.25rem !important}.row-gap-lg-7{row-gap:2.7rem !important}.row-gap-lg-8{row-gap:3.15rem !important}.row-gap-lg-9{row-gap:3.6rem !important}.row-gap-lg-tiny{row-gap:.135rem !important}.column-gap-lg-0{column-gap:0 !important}.column-gap-lg-1{column-gap:.225rem !important}.column-gap-lg-2{column-gap:.45rem !important}.column-gap-lg-3{column-gap:.9rem !important}.column-gap-lg-4{column-gap:1.35rem !important}.column-gap-lg-5{column-gap:1.8rem !important}.column-gap-lg-6{column-gap:2.25rem !important}.column-gap-lg-7{column-gap:2.7rem !important}.column-gap-lg-8{column-gap:3.15rem !important}.column-gap-lg-9{column-gap:3.6rem !important}.column-gap-lg-tiny{column-gap:.135rem !important}.text-lg-start{text-align:left !important}.text-lg-end{text-align:right !important}.text-lg-center{text-align:center !important}}@media(min-width: 1200px){.float-xl-start{float:left !important}.float-xl-end{float:right !important}.float-xl-none{float:none !important}.object-fit-xl-contain{object-fit:contain !important}.object-fit-xl-cover{object-fit:cover !important}.object-fit-xl-fill{object-fit:fill !important}.object-fit-xl-scale{object-fit:scale-down !important}.object-fit-xl-none{object-fit:none !important}.d-xl-inline{display:inline !important}.d-xl-inline-block{display:inline-block !important}.d-xl-block{display:block !important}.d-xl-grid{display:grid !important}.d-xl-inline-grid{display:inline-grid !important}.d-xl-table{display:table !important}.d-xl-table-row{display:table-row !important}.d-xl-table-cell{display:table-cell !important}.d-xl-flex{display:flex !important}.d-xl-inline-flex{display:inline-flex !important}.d-xl-none{display:none !important}.flex-xl-fill{flex:1 1 auto !important}.flex-xl-row{flex-direction:row !important}.flex-xl-column{flex-direction:column !important}.flex-xl-row-reverse{flex-direction:row-reverse !important}.flex-xl-column-reverse{flex-direction:column-reverse !important}.flex-xl-grow-0{flex-grow:0 !important}.flex-xl-grow-1{flex-grow:1 !important}.flex-xl-shrink-0{flex-shrink:0 !important}.flex-xl-shrink-1{flex-shrink:1 !important}.flex-xl-wrap{flex-wrap:wrap !important}.flex-xl-nowrap{flex-wrap:nowrap !important}.flex-xl-wrap-reverse{flex-wrap:wrap-reverse !important}.justify-content-xl-start{justify-content:flex-start !important}.justify-content-xl-end{justify-content:flex-end !important}.justify-content-xl-center{justify-content:center !important}.justify-content-xl-between{justify-content:space-between !important}.justify-content-xl-around{justify-content:space-around !important}.justify-content-xl-evenly{justify-content:space-evenly !important}.align-items-xl-start{align-items:flex-start !important}.align-items-xl-end{align-items:flex-end !important}.align-items-xl-center{align-items:center !important}.align-items-xl-baseline{align-items:baseline !important}.align-items-xl-stretch{align-items:stretch !important}.align-content-xl-start{align-content:flex-start !important}.align-content-xl-end{align-content:flex-end !important}.align-content-xl-center{align-content:center !important}.align-content-xl-between{align-content:space-between !important}.align-content-xl-around{align-content:space-around !important}.align-content-xl-stretch{align-content:stretch !important}.align-self-xl-auto{align-self:auto !important}.align-self-xl-start{align-self:flex-start !important}.align-self-xl-end{align-self:flex-end !important}.align-self-xl-center{align-self:center !important}.align-self-xl-baseline{align-self:baseline !important}.align-self-xl-stretch{align-self:stretch !important}.order-xl-first{order:-1 !important}.order-xl-0{order:0 !important}.order-xl-1{order:1 !important}.order-xl-2{order:2 !important}.order-xl-3{order:3 !important}.order-xl-4{order:4 !important}.order-xl-5{order:5 !important}.order-xl-last{order:6 !important}.m-xl-0{margin:0 !important}.m-xl-1{margin:.225rem !important}.m-xl-2{margin:.45rem !important}.m-xl-3{margin:.9rem !important}.m-xl-4{margin:1.35rem !important}.m-xl-5{margin:1.8rem !important}.m-xl-6{margin:2.25rem !important}.m-xl-7{margin:2.7rem !important}.m-xl-8{margin:3.15rem !important}.m-xl-9{margin:3.6rem !important}.m-xl-tiny{margin:.135rem !important}.m-xl-auto{margin:auto !important}.mx-xl-0{margin-right:0 !important;margin-left:0 !important}.mx-xl-1{margin-right:.225rem !important;margin-left:.225rem !important}.mx-xl-2{margin-right:.45rem !important;margin-left:.45rem !important}.mx-xl-3{margin-right:.9rem !important;margin-left:.9rem !important}.mx-xl-4{margin-right:1.35rem !important;margin-left:1.35rem !important}.mx-xl-5{margin-right:1.8rem !important;margin-left:1.8rem !important}.mx-xl-6{margin-right:2.25rem !important;margin-left:2.25rem !important}.mx-xl-7{margin-right:2.7rem !important;margin-left:2.7rem !important}.mx-xl-8{margin-right:3.15rem !important;margin-left:3.15rem !important}.mx-xl-9{margin-right:3.6rem !important;margin-left:3.6rem !important}.mx-xl-tiny{margin-right:.135rem !important;margin-left:.135rem !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:.225rem !important;margin-bottom:.225rem !important}.my-xl-2{margin-top:.45rem !important;margin-bottom:.45rem !important}.my-xl-3{margin-top:.9rem !important;margin-bottom:.9rem !important}.my-xl-4{margin-top:1.35rem !important;margin-bottom:1.35rem !important}.my-xl-5{margin-top:1.8rem !important;margin-bottom:1.8rem !important}.my-xl-6{margin-top:2.25rem !important;margin-bottom:2.25rem !important}.my-xl-7{margin-top:2.7rem !important;margin-bottom:2.7rem !important}.my-xl-8{margin-top:3.15rem !important;margin-bottom:3.15rem !important}.my-xl-9{margin-top:3.6rem !important;margin-bottom:3.6rem !important}.my-xl-tiny{margin-top:.135rem !important;margin-bottom:.135rem !important}.my-xl-auto{margin-top:auto !important;margin-bottom:auto !important}.mt-xl-0{margin-top:0 !important}.mt-xl-1{margin-top:.225rem !important}.mt-xl-2{margin-top:.45rem !important}.mt-xl-3{margin-top:.9rem !important}.mt-xl-4{margin-top:1.35rem !important}.mt-xl-5{margin-top:1.8rem !important}.mt-xl-6{margin-top:2.25rem !important}.mt-xl-7{margin-top:2.7rem !important}.mt-xl-8{margin-top:3.15rem !important}.mt-xl-9{margin-top:3.6rem !important}.mt-xl-tiny{margin-top:.135rem !important}.mt-xl-auto{margin-top:auto !important}.me-xl-0{margin-right:0 !important}.me-xl-1{margin-right:.225rem !important}.me-xl-2{margin-right:.45rem !important}.me-xl-3{margin-right:.9rem !important}.me-xl-4{margin-right:1.35rem !important}.me-xl-5{margin-right:1.8rem !important}.me-xl-6{margin-right:2.25rem !important}.me-xl-7{margin-right:2.7rem !important}.me-xl-8{margin-right:3.15rem !important}.me-xl-9{margin-right:3.6rem !important}.me-xl-tiny{margin-right:.135rem !important}.me-xl-auto{margin-right:auto !important}.mb-xl-0{margin-bottom:0 !important}.mb-xl-1{margin-bottom:.225rem !important}.mb-xl-2{margin-bottom:.45rem !important}.mb-xl-3{margin-bottom:.9rem !important}.mb-xl-4{margin-bottom:1.35rem !important}.mb-xl-5{margin-bottom:1.8rem !important}.mb-xl-6{margin-bottom:2.25rem !important}.mb-xl-7{margin-bottom:2.7rem !important}.mb-xl-8{margin-bottom:3.15rem !important}.mb-xl-9{margin-bottom:3.6rem !important}.mb-xl-tiny{margin-bottom:.135rem !important}.mb-xl-auto{margin-bottom:auto !important}.ms-xl-0{margin-left:0 !important}.ms-xl-1{margin-left:.225rem !important}.ms-xl-2{margin-left:.45rem !important}.ms-xl-3{margin-left:.9rem !important}.ms-xl-4{margin-left:1.35rem !important}.ms-xl-5{margin-left:1.8rem !important}.ms-xl-6{margin-left:2.25rem !important}.ms-xl-7{margin-left:2.7rem !important}.ms-xl-8{margin-left:3.15rem !important}.ms-xl-9{margin-left:3.6rem !important}.ms-xl-tiny{margin-left:.135rem !important}.ms-xl-auto{margin-left:auto !important}.m-xl-n1{margin:-0.225rem !important}.m-xl-n2{margin:-0.45rem !important}.m-xl-n3{margin:-0.9rem !important}.m-xl-n4{margin:-1.35rem !important}.m-xl-n5{margin:-1.8rem !important}.m-xl-n6{margin:-2.25rem !important}.m-xl-n7{margin:-2.7rem !important}.m-xl-n8{margin:-3.15rem !important}.m-xl-n9{margin:-3.6rem !important}.m-xl-ntiny{margin:-0.135rem !important}.mx-xl-n1{margin-right:-0.225rem !important;margin-left:-0.225rem !important}.mx-xl-n2{margin-right:-0.45rem !important;margin-left:-0.45rem !important}.mx-xl-n3{margin-right:-0.9rem !important;margin-left:-0.9rem !important}.mx-xl-n4{margin-right:-1.35rem !important;margin-left:-1.35rem !important}.mx-xl-n5{margin-right:-1.8rem !important;margin-left:-1.8rem !important}.mx-xl-n6{margin-right:-2.25rem !important;margin-left:-2.25rem !important}.mx-xl-n7{margin-right:-2.7rem !important;margin-left:-2.7rem !important}.mx-xl-n8{margin-right:-3.15rem !important;margin-left:-3.15rem !important}.mx-xl-n9{margin-right:-3.6rem !important;margin-left:-3.6rem !important}.mx-xl-ntiny{margin-right:-0.135rem !important;margin-left:-0.135rem !important}.my-xl-n1{margin-top:-0.225rem !important;margin-bottom:-0.225rem !important}.my-xl-n2{margin-top:-0.45rem !important;margin-bottom:-0.45rem !important}.my-xl-n3{margin-top:-0.9rem !important;margin-bottom:-0.9rem !important}.my-xl-n4{margin-top:-1.35rem !important;margin-bottom:-1.35rem !important}.my-xl-n5{margin-top:-1.8rem !important;margin-bottom:-1.8rem !important}.my-xl-n6{margin-top:-2.25rem !important;margin-bottom:-2.25rem !important}.my-xl-n7{margin-top:-2.7rem !important;margin-bottom:-2.7rem !important}.my-xl-n8{margin-top:-3.15rem !important;margin-bottom:-3.15rem !important}.my-xl-n9{margin-top:-3.6rem !important;margin-bottom:-3.6rem !important}.my-xl-ntiny{margin-top:-0.135rem !important;margin-bottom:-0.135rem !important}.mt-xl-n1{margin-top:-0.225rem !important}.mt-xl-n2{margin-top:-0.45rem !important}.mt-xl-n3{margin-top:-0.9rem !important}.mt-xl-n4{margin-top:-1.35rem !important}.mt-xl-n5{margin-top:-1.8rem !important}.mt-xl-n6{margin-top:-2.25rem !important}.mt-xl-n7{margin-top:-2.7rem !important}.mt-xl-n8{margin-top:-3.15rem !important}.mt-xl-n9{margin-top:-3.6rem !important}.mt-xl-ntiny{margin-top:-0.135rem !important}.me-xl-n1{margin-right:-0.225rem !important}.me-xl-n2{margin-right:-0.45rem !important}.me-xl-n3{margin-right:-0.9rem !important}.me-xl-n4{margin-right:-1.35rem !important}.me-xl-n5{margin-right:-1.8rem !important}.me-xl-n6{margin-right:-2.25rem !important}.me-xl-n7{margin-right:-2.7rem !important}.me-xl-n8{margin-right:-3.15rem !important}.me-xl-n9{margin-right:-3.6rem !important}.me-xl-ntiny{margin-right:-0.135rem !important}.mb-xl-n1{margin-bottom:-0.225rem !important}.mb-xl-n2{margin-bottom:-0.45rem !important}.mb-xl-n3{margin-bottom:-0.9rem !important}.mb-xl-n4{margin-bottom:-1.35rem !important}.mb-xl-n5{margin-bottom:-1.8rem !important}.mb-xl-n6{margin-bottom:-2.25rem !important}.mb-xl-n7{margin-bottom:-2.7rem !important}.mb-xl-n8{margin-bottom:-3.15rem !important}.mb-xl-n9{margin-bottom:-3.6rem !important}.mb-xl-ntiny{margin-bottom:-0.135rem !important}.ms-xl-n1{margin-left:-0.225rem !important}.ms-xl-n2{margin-left:-0.45rem !important}.ms-xl-n3{margin-left:-0.9rem !important}.ms-xl-n4{margin-left:-1.35rem !important}.ms-xl-n5{margin-left:-1.8rem !important}.ms-xl-n6{margin-left:-2.25rem !important}.ms-xl-n7{margin-left:-2.7rem !important}.ms-xl-n8{margin-left:-3.15rem !important}.ms-xl-n9{margin-left:-3.6rem !important}.ms-xl-ntiny{margin-left:-0.135rem !important}.p-xl-0{padding:0 !important}.p-xl-1{padding:.225rem !important}.p-xl-2{padding:.45rem !important}.p-xl-3{padding:.9rem !important}.p-xl-4{padding:1.35rem !important}.p-xl-5{padding:1.8rem !important}.p-xl-6{padding:2.25rem !important}.p-xl-7{padding:2.7rem !important}.p-xl-8{padding:3.15rem !important}.p-xl-9{padding:3.6rem !important}.p-xl-tiny{padding:.135rem !important}.px-xl-0{padding-right:0 !important;padding-left:0 !important}.px-xl-1{padding-right:.225rem !important;padding-left:.225rem !important}.px-xl-2{padding-right:.45rem !important;padding-left:.45rem !important}.px-xl-3{padding-right:.9rem !important;padding-left:.9rem !important}.px-xl-4{padding-right:1.35rem !important;padding-left:1.35rem !important}.px-xl-5{padding-right:1.8rem !important;padding-left:1.8rem !important}.px-xl-6{padding-right:2.25rem !important;padding-left:2.25rem !important}.px-xl-7{padding-right:2.7rem !important;padding-left:2.7rem !important}.px-xl-8{padding-right:3.15rem !important;padding-left:3.15rem !important}.px-xl-9{padding-right:3.6rem !important;padding-left:3.6rem !important}.px-xl-tiny{padding-right:.135rem !important;padding-left:.135rem !important}.py-xl-0{padding-top:0 !important;padding-bottom:0 !important}.py-xl-1{padding-top:.225rem !important;padding-bottom:.225rem !important}.py-xl-2{padding-top:.45rem !important;padding-bottom:.45rem !important}.py-xl-3{padding-top:.9rem !important;padding-bottom:.9rem !important}.py-xl-4{padding-top:1.35rem !important;padding-bottom:1.35rem !important}.py-xl-5{padding-top:1.8rem !important;padding-bottom:1.8rem !important}.py-xl-6{padding-top:2.25rem !important;padding-bottom:2.25rem !important}.py-xl-7{padding-top:2.7rem !important;padding-bottom:2.7rem !important}.py-xl-8{padding-top:3.15rem !important;padding-bottom:3.15rem !important}.py-xl-9{padding-top:3.6rem !important;padding-bottom:3.6rem !important}.py-xl-tiny{padding-top:.135rem !important;padding-bottom:.135rem !important}.pt-xl-0{padding-top:0 !important}.pt-xl-1{padding-top:.225rem !important}.pt-xl-2{padding-top:.45rem !important}.pt-xl-3{padding-top:.9rem !important}.pt-xl-4{padding-top:1.35rem !important}.pt-xl-5{padding-top:1.8rem !important}.pt-xl-6{padding-top:2.25rem !important}.pt-xl-7{padding-top:2.7rem !important}.pt-xl-8{padding-top:3.15rem !important}.pt-xl-9{padding-top:3.6rem !important}.pt-xl-tiny{padding-top:.135rem !important}.pe-xl-0{padding-right:0 !important}.pe-xl-1{padding-right:.225rem !important}.pe-xl-2{padding-right:.45rem !important}.pe-xl-3{padding-right:.9rem !important}.pe-xl-4{padding-right:1.35rem !important}.pe-xl-5{padding-right:1.8rem !important}.pe-xl-6{padding-right:2.25rem !important}.pe-xl-7{padding-right:2.7rem !important}.pe-xl-8{padding-right:3.15rem !important}.pe-xl-9{padding-right:3.6rem !important}.pe-xl-tiny{padding-right:.135rem !important}.pb-xl-0{padding-bottom:0 !important}.pb-xl-1{padding-bottom:.225rem !important}.pb-xl-2{padding-bottom:.45rem !important}.pb-xl-3{padding-bottom:.9rem !important}.pb-xl-4{padding-bottom:1.35rem !important}.pb-xl-5{padding-bottom:1.8rem !important}.pb-xl-6{padding-bottom:2.25rem !important}.pb-xl-7{padding-bottom:2.7rem !important}.pb-xl-8{padding-bottom:3.15rem !important}.pb-xl-9{padding-bottom:3.6rem !important}.pb-xl-tiny{padding-bottom:.135rem !important}.ps-xl-0{padding-left:0 !important}.ps-xl-1{padding-left:.225rem !important}.ps-xl-2{padding-left:.45rem !important}.ps-xl-3{padding-left:.9rem !important}.ps-xl-4{padding-left:1.35rem !important}.ps-xl-5{padding-left:1.8rem !important}.ps-xl-6{padding-left:2.25rem !important}.ps-xl-7{padding-left:2.7rem !important}.ps-xl-8{padding-left:3.15rem !important}.ps-xl-9{padding-left:3.6rem !important}.ps-xl-tiny{padding-left:.135rem !important}.gap-xl-0{gap:0 !important}.gap-xl-1{gap:.225rem !important}.gap-xl-2{gap:.45rem !important}.gap-xl-3{gap:.9rem !important}.gap-xl-4{gap:1.35rem !important}.gap-xl-5{gap:1.8rem !important}.gap-xl-6{gap:2.25rem !important}.gap-xl-7{gap:2.7rem !important}.gap-xl-8{gap:3.15rem !important}.gap-xl-9{gap:3.6rem !important}.gap-xl-tiny{gap:.135rem !important}.row-gap-xl-0{row-gap:0 !important}.row-gap-xl-1{row-gap:.225rem !important}.row-gap-xl-2{row-gap:.45rem !important}.row-gap-xl-3{row-gap:.9rem !important}.row-gap-xl-4{row-gap:1.35rem !important}.row-gap-xl-5{row-gap:1.8rem !important}.row-gap-xl-6{row-gap:2.25rem !important}.row-gap-xl-7{row-gap:2.7rem !important}.row-gap-xl-8{row-gap:3.15rem !important}.row-gap-xl-9{row-gap:3.6rem !important}.row-gap-xl-tiny{row-gap:.135rem !important}.column-gap-xl-0{column-gap:0 !important}.column-gap-xl-1{column-gap:.225rem !important}.column-gap-xl-2{column-gap:.45rem !important}.column-gap-xl-3{column-gap:.9rem !important}.column-gap-xl-4{column-gap:1.35rem !important}.column-gap-xl-5{column-gap:1.8rem !important}.column-gap-xl-6{column-gap:2.25rem !important}.column-gap-xl-7{column-gap:2.7rem !important}.column-gap-xl-8{column-gap:3.15rem !important}.column-gap-xl-9{column-gap:3.6rem !important}.column-gap-xl-tiny{column-gap:.135rem !important}.text-xl-start{text-align:left !important}.text-xl-end{text-align:right !important}.text-xl-center{text-align:center !important}}@media(min-width: 1400px){.float-xxl-start{float:left !important}.float-xxl-end{float:right !important}.float-xxl-none{float:none !important}.object-fit-xxl-contain{object-fit:contain !important}.object-fit-xxl-cover{object-fit:cover !important}.object-fit-xxl-fill{object-fit:fill !important}.object-fit-xxl-scale{object-fit:scale-down !important}.object-fit-xxl-none{object-fit:none !important}.d-xxl-inline{display:inline !important}.d-xxl-inline-block{display:inline-block !important}.d-xxl-block{display:block !important}.d-xxl-grid{display:grid !important}.d-xxl-inline-grid{display:inline-grid !important}.d-xxl-table{display:table !important}.d-xxl-table-row{display:table-row !important}.d-xxl-table-cell{display:table-cell !important}.d-xxl-flex{display:flex !important}.d-xxl-inline-flex{display:inline-flex !important}.d-xxl-none{display:none !important}.flex-xxl-fill{flex:1 1 auto !important}.flex-xxl-row{flex-direction:row !important}.flex-xxl-column{flex-direction:column !important}.flex-xxl-row-reverse{flex-direction:row-reverse !important}.flex-xxl-column-reverse{flex-direction:column-reverse !important}.flex-xxl-grow-0{flex-grow:0 !important}.flex-xxl-grow-1{flex-grow:1 !important}.flex-xxl-shrink-0{flex-shrink:0 !important}.flex-xxl-shrink-1{flex-shrink:1 !important}.flex-xxl-wrap{flex-wrap:wrap !important}.flex-xxl-nowrap{flex-wrap:nowrap !important}.flex-xxl-wrap-reverse{flex-wrap:wrap-reverse !important}.justify-content-xxl-start{justify-content:flex-start !important}.justify-content-xxl-end{justify-content:flex-end !important}.justify-content-xxl-center{justify-content:center !important}.justify-content-xxl-between{justify-content:space-between !important}.justify-content-xxl-around{justify-content:space-around !important}.justify-content-xxl-evenly{justify-content:space-evenly !important}.align-items-xxl-start{align-items:flex-start !important}.align-items-xxl-end{align-items:flex-end !important}.align-items-xxl-center{align-items:center !important}.align-items-xxl-baseline{align-items:baseline !important}.align-items-xxl-stretch{align-items:stretch !important}.align-content-xxl-start{align-content:flex-start !important}.align-content-xxl-end{align-content:flex-end !important}.align-content-xxl-center{align-content:center !important}.align-content-xxl-between{align-content:space-between !important}.align-content-xxl-around{align-content:space-around !important}.align-content-xxl-stretch{align-content:stretch !important}.align-self-xxl-auto{align-self:auto !important}.align-self-xxl-start{align-self:flex-start !important}.align-self-xxl-end{align-self:flex-end !important}.align-self-xxl-center{align-self:center !important}.align-self-xxl-baseline{align-self:baseline !important}.align-self-xxl-stretch{align-self:stretch !important}.order-xxl-first{order:-1 !important}.order-xxl-0{order:0 !important}.order-xxl-1{order:1 !important}.order-xxl-2{order:2 !important}.order-xxl-3{order:3 !important}.order-xxl-4{order:4 !important}.order-xxl-5{order:5 !important}.order-xxl-last{order:6 !important}.m-xxl-0{margin:0 !important}.m-xxl-1{margin:.225rem !important}.m-xxl-2{margin:.45rem !important}.m-xxl-3{margin:.9rem !important}.m-xxl-4{margin:1.35rem !important}.m-xxl-5{margin:1.8rem !important}.m-xxl-6{margin:2.25rem !important}.m-xxl-7{margin:2.7rem !important}.m-xxl-8{margin:3.15rem !important}.m-xxl-9{margin:3.6rem !important}.m-xxl-tiny{margin:.135rem !important}.m-xxl-auto{margin:auto !important}.mx-xxl-0{margin-right:0 !important;margin-left:0 !important}.mx-xxl-1{margin-right:.225rem !important;margin-left:.225rem !important}.mx-xxl-2{margin-right:.45rem !important;margin-left:.45rem !important}.mx-xxl-3{margin-right:.9rem !important;margin-left:.9rem !important}.mx-xxl-4{margin-right:1.35rem !important;margin-left:1.35rem !important}.mx-xxl-5{margin-right:1.8rem !important;margin-left:1.8rem !important}.mx-xxl-6{margin-right:2.25rem !important;margin-left:2.25rem !important}.mx-xxl-7{margin-right:2.7rem !important;margin-left:2.7rem !important}.mx-xxl-8{margin-right:3.15rem !important;margin-left:3.15rem !important}.mx-xxl-9{margin-right:3.6rem !important;margin-left:3.6rem !important}.mx-xxl-tiny{margin-right:.135rem !important;margin-left:.135rem !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:.225rem !important;margin-bottom:.225rem !important}.my-xxl-2{margin-top:.45rem !important;margin-bottom:.45rem !important}.my-xxl-3{margin-top:.9rem !important;margin-bottom:.9rem !important}.my-xxl-4{margin-top:1.35rem !important;margin-bottom:1.35rem !important}.my-xxl-5{margin-top:1.8rem !important;margin-bottom:1.8rem !important}.my-xxl-6{margin-top:2.25rem !important;margin-bottom:2.25rem !important}.my-xxl-7{margin-top:2.7rem !important;margin-bottom:2.7rem !important}.my-xxl-8{margin-top:3.15rem !important;margin-bottom:3.15rem !important}.my-xxl-9{margin-top:3.6rem !important;margin-bottom:3.6rem !important}.my-xxl-tiny{margin-top:.135rem !important;margin-bottom:.135rem !important}.my-xxl-auto{margin-top:auto !important;margin-bottom:auto !important}.mt-xxl-0{margin-top:0 !important}.mt-xxl-1{margin-top:.225rem !important}.mt-xxl-2{margin-top:.45rem !important}.mt-xxl-3{margin-top:.9rem !important}.mt-xxl-4{margin-top:1.35rem !important}.mt-xxl-5{margin-top:1.8rem !important}.mt-xxl-6{margin-top:2.25rem !important}.mt-xxl-7{margin-top:2.7rem !important}.mt-xxl-8{margin-top:3.15rem !important}.mt-xxl-9{margin-top:3.6rem !important}.mt-xxl-tiny{margin-top:.135rem !important}.mt-xxl-auto{margin-top:auto !important}.me-xxl-0{margin-right:0 !important}.me-xxl-1{margin-right:.225rem !important}.me-xxl-2{margin-right:.45rem !important}.me-xxl-3{margin-right:.9rem !important}.me-xxl-4{margin-right:1.35rem !important}.me-xxl-5{margin-right:1.8rem !important}.me-xxl-6{margin-right:2.25rem !important}.me-xxl-7{margin-right:2.7rem !important}.me-xxl-8{margin-right:3.15rem !important}.me-xxl-9{margin-right:3.6rem !important}.me-xxl-tiny{margin-right:.135rem !important}.me-xxl-auto{margin-right:auto !important}.mb-xxl-0{margin-bottom:0 !important}.mb-xxl-1{margin-bottom:.225rem !important}.mb-xxl-2{margin-bottom:.45rem !important}.mb-xxl-3{margin-bottom:.9rem !important}.mb-xxl-4{margin-bottom:1.35rem !important}.mb-xxl-5{margin-bottom:1.8rem !important}.mb-xxl-6{margin-bottom:2.25rem !important}.mb-xxl-7{margin-bottom:2.7rem !important}.mb-xxl-8{margin-bottom:3.15rem !important}.mb-xxl-9{margin-bottom:3.6rem !important}.mb-xxl-tiny{margin-bottom:.135rem !important}.mb-xxl-auto{margin-bottom:auto !important}.ms-xxl-0{margin-left:0 !important}.ms-xxl-1{margin-left:.225rem !important}.ms-xxl-2{margin-left:.45rem !important}.ms-xxl-3{margin-left:.9rem !important}.ms-xxl-4{margin-left:1.35rem !important}.ms-xxl-5{margin-left:1.8rem !important}.ms-xxl-6{margin-left:2.25rem !important}.ms-xxl-7{margin-left:2.7rem !important}.ms-xxl-8{margin-left:3.15rem !important}.ms-xxl-9{margin-left:3.6rem !important}.ms-xxl-tiny{margin-left:.135rem !important}.ms-xxl-auto{margin-left:auto !important}.m-xxl-n1{margin:-0.225rem !important}.m-xxl-n2{margin:-0.45rem !important}.m-xxl-n3{margin:-0.9rem !important}.m-xxl-n4{margin:-1.35rem !important}.m-xxl-n5{margin:-1.8rem !important}.m-xxl-n6{margin:-2.25rem !important}.m-xxl-n7{margin:-2.7rem !important}.m-xxl-n8{margin:-3.15rem !important}.m-xxl-n9{margin:-3.6rem !important}.m-xxl-ntiny{margin:-0.135rem !important}.mx-xxl-n1{margin-right:-0.225rem !important;margin-left:-0.225rem !important}.mx-xxl-n2{margin-right:-0.45rem !important;margin-left:-0.45rem !important}.mx-xxl-n3{margin-right:-0.9rem !important;margin-left:-0.9rem !important}.mx-xxl-n4{margin-right:-1.35rem !important;margin-left:-1.35rem !important}.mx-xxl-n5{margin-right:-1.8rem !important;margin-left:-1.8rem !important}.mx-xxl-n6{margin-right:-2.25rem !important;margin-left:-2.25rem !important}.mx-xxl-n7{margin-right:-2.7rem !important;margin-left:-2.7rem !important}.mx-xxl-n8{margin-right:-3.15rem !important;margin-left:-3.15rem !important}.mx-xxl-n9{margin-right:-3.6rem !important;margin-left:-3.6rem !important}.mx-xxl-ntiny{margin-right:-0.135rem !important;margin-left:-0.135rem !important}.my-xxl-n1{margin-top:-0.225rem !important;margin-bottom:-0.225rem !important}.my-xxl-n2{margin-top:-0.45rem !important;margin-bottom:-0.45rem !important}.my-xxl-n3{margin-top:-0.9rem !important;margin-bottom:-0.9rem !important}.my-xxl-n4{margin-top:-1.35rem !important;margin-bottom:-1.35rem !important}.my-xxl-n5{margin-top:-1.8rem !important;margin-bottom:-1.8rem !important}.my-xxl-n6{margin-top:-2.25rem !important;margin-bottom:-2.25rem !important}.my-xxl-n7{margin-top:-2.7rem !important;margin-bottom:-2.7rem !important}.my-xxl-n8{margin-top:-3.15rem !important;margin-bottom:-3.15rem !important}.my-xxl-n9{margin-top:-3.6rem !important;margin-bottom:-3.6rem !important}.my-xxl-ntiny{margin-top:-0.135rem !important;margin-bottom:-0.135rem !important}.mt-xxl-n1{margin-top:-0.225rem !important}.mt-xxl-n2{margin-top:-0.45rem !important}.mt-xxl-n3{margin-top:-0.9rem !important}.mt-xxl-n4{margin-top:-1.35rem !important}.mt-xxl-n5{margin-top:-1.8rem !important}.mt-xxl-n6{margin-top:-2.25rem !important}.mt-xxl-n7{margin-top:-2.7rem !important}.mt-xxl-n8{margin-top:-3.15rem !important}.mt-xxl-n9{margin-top:-3.6rem !important}.mt-xxl-ntiny{margin-top:-0.135rem !important}.me-xxl-n1{margin-right:-0.225rem !important}.me-xxl-n2{margin-right:-0.45rem !important}.me-xxl-n3{margin-right:-0.9rem !important}.me-xxl-n4{margin-right:-1.35rem !important}.me-xxl-n5{margin-right:-1.8rem !important}.me-xxl-n6{margin-right:-2.25rem !important}.me-xxl-n7{margin-right:-2.7rem !important}.me-xxl-n8{margin-right:-3.15rem !important}.me-xxl-n9{margin-right:-3.6rem !important}.me-xxl-ntiny{margin-right:-0.135rem !important}.mb-xxl-n1{margin-bottom:-0.225rem !important}.mb-xxl-n2{margin-bottom:-0.45rem !important}.mb-xxl-n3{margin-bottom:-0.9rem !important}.mb-xxl-n4{margin-bottom:-1.35rem !important}.mb-xxl-n5{margin-bottom:-1.8rem !important}.mb-xxl-n6{margin-bottom:-2.25rem !important}.mb-xxl-n7{margin-bottom:-2.7rem !important}.mb-xxl-n8{margin-bottom:-3.15rem !important}.mb-xxl-n9{margin-bottom:-3.6rem !important}.mb-xxl-ntiny{margin-bottom:-0.135rem !important}.ms-xxl-n1{margin-left:-0.225rem !important}.ms-xxl-n2{margin-left:-0.45rem !important}.ms-xxl-n3{margin-left:-0.9rem !important}.ms-xxl-n4{margin-left:-1.35rem !important}.ms-xxl-n5{margin-left:-1.8rem !important}.ms-xxl-n6{margin-left:-2.25rem !important}.ms-xxl-n7{margin-left:-2.7rem !important}.ms-xxl-n8{margin-left:-3.15rem !important}.ms-xxl-n9{margin-left:-3.6rem !important}.ms-xxl-ntiny{margin-left:-0.135rem !important}.p-xxl-0{padding:0 !important}.p-xxl-1{padding:.225rem !important}.p-xxl-2{padding:.45rem !important}.p-xxl-3{padding:.9rem !important}.p-xxl-4{padding:1.35rem !important}.p-xxl-5{padding:1.8rem !important}.p-xxl-6{padding:2.25rem !important}.p-xxl-7{padding:2.7rem !important}.p-xxl-8{padding:3.15rem !important}.p-xxl-9{padding:3.6rem !important}.p-xxl-tiny{padding:.135rem !important}.px-xxl-0{padding-right:0 !important;padding-left:0 !important}.px-xxl-1{padding-right:.225rem !important;padding-left:.225rem !important}.px-xxl-2{padding-right:.45rem !important;padding-left:.45rem !important}.px-xxl-3{padding-right:.9rem !important;padding-left:.9rem !important}.px-xxl-4{padding-right:1.35rem !important;padding-left:1.35rem !important}.px-xxl-5{padding-right:1.8rem !important;padding-left:1.8rem !important}.px-xxl-6{padding-right:2.25rem !important;padding-left:2.25rem !important}.px-xxl-7{padding-right:2.7rem !important;padding-left:2.7rem !important}.px-xxl-8{padding-right:3.15rem !important;padding-left:3.15rem !important}.px-xxl-9{padding-right:3.6rem !important;padding-left:3.6rem !important}.px-xxl-tiny{padding-right:.135rem !important;padding-left:.135rem !important}.py-xxl-0{padding-top:0 !important;padding-bottom:0 !important}.py-xxl-1{padding-top:.225rem !important;padding-bottom:.225rem !important}.py-xxl-2{padding-top:.45rem !important;padding-bottom:.45rem !important}.py-xxl-3{padding-top:.9rem !important;padding-bottom:.9rem !important}.py-xxl-4{padding-top:1.35rem !important;padding-bottom:1.35rem !important}.py-xxl-5{padding-top:1.8rem !important;padding-bottom:1.8rem !important}.py-xxl-6{padding-top:2.25rem !important;padding-bottom:2.25rem !important}.py-xxl-7{padding-top:2.7rem !important;padding-bottom:2.7rem !important}.py-xxl-8{padding-top:3.15rem !important;padding-bottom:3.15rem !important}.py-xxl-9{padding-top:3.6rem !important;padding-bottom:3.6rem !important}.py-xxl-tiny{padding-top:.135rem !important;padding-bottom:.135rem !important}.pt-xxl-0{padding-top:0 !important}.pt-xxl-1{padding-top:.225rem !important}.pt-xxl-2{padding-top:.45rem !important}.pt-xxl-3{padding-top:.9rem !important}.pt-xxl-4{padding-top:1.35rem !important}.pt-xxl-5{padding-top:1.8rem !important}.pt-xxl-6{padding-top:2.25rem !important}.pt-xxl-7{padding-top:2.7rem !important}.pt-xxl-8{padding-top:3.15rem !important}.pt-xxl-9{padding-top:3.6rem !important}.pt-xxl-tiny{padding-top:.135rem !important}.pe-xxl-0{padding-right:0 !important}.pe-xxl-1{padding-right:.225rem !important}.pe-xxl-2{padding-right:.45rem !important}.pe-xxl-3{padding-right:.9rem !important}.pe-xxl-4{padding-right:1.35rem !important}.pe-xxl-5{padding-right:1.8rem !important}.pe-xxl-6{padding-right:2.25rem !important}.pe-xxl-7{padding-right:2.7rem !important}.pe-xxl-8{padding-right:3.15rem !important}.pe-xxl-9{padding-right:3.6rem !important}.pe-xxl-tiny{padding-right:.135rem !important}.pb-xxl-0{padding-bottom:0 !important}.pb-xxl-1{padding-bottom:.225rem !important}.pb-xxl-2{padding-bottom:.45rem !important}.pb-xxl-3{padding-bottom:.9rem !important}.pb-xxl-4{padding-bottom:1.35rem !important}.pb-xxl-5{padding-bottom:1.8rem !important}.pb-xxl-6{padding-bottom:2.25rem !important}.pb-xxl-7{padding-bottom:2.7rem !important}.pb-xxl-8{padding-bottom:3.15rem !important}.pb-xxl-9{padding-bottom:3.6rem !important}.pb-xxl-tiny{padding-bottom:.135rem !important}.ps-xxl-0{padding-left:0 !important}.ps-xxl-1{padding-left:.225rem !important}.ps-xxl-2{padding-left:.45rem !important}.ps-xxl-3{padding-left:.9rem !important}.ps-xxl-4{padding-left:1.35rem !important}.ps-xxl-5{padding-left:1.8rem !important}.ps-xxl-6{padding-left:2.25rem !important}.ps-xxl-7{padding-left:2.7rem !important}.ps-xxl-8{padding-left:3.15rem !important}.ps-xxl-9{padding-left:3.6rem !important}.ps-xxl-tiny{padding-left:.135rem !important}.gap-xxl-0{gap:0 !important}.gap-xxl-1{gap:.225rem !important}.gap-xxl-2{gap:.45rem !important}.gap-xxl-3{gap:.9rem !important}.gap-xxl-4{gap:1.35rem !important}.gap-xxl-5{gap:1.8rem !important}.gap-xxl-6{gap:2.25rem !important}.gap-xxl-7{gap:2.7rem !important}.gap-xxl-8{gap:3.15rem !important}.gap-xxl-9{gap:3.6rem !important}.gap-xxl-tiny{gap:.135rem !important}.row-gap-xxl-0{row-gap:0 !important}.row-gap-xxl-1{row-gap:.225rem !important}.row-gap-xxl-2{row-gap:.45rem !important}.row-gap-xxl-3{row-gap:.9rem !important}.row-gap-xxl-4{row-gap:1.35rem !important}.row-gap-xxl-5{row-gap:1.8rem !important}.row-gap-xxl-6{row-gap:2.25rem !important}.row-gap-xxl-7{row-gap:2.7rem !important}.row-gap-xxl-8{row-gap:3.15rem !important}.row-gap-xxl-9{row-gap:3.6rem !important}.row-gap-xxl-tiny{row-gap:.135rem !important}.column-gap-xxl-0{column-gap:0 !important}.column-gap-xxl-1{column-gap:.225rem !important}.column-gap-xxl-2{column-gap:.45rem !important}.column-gap-xxl-3{column-gap:.9rem !important}.column-gap-xxl-4{column-gap:1.35rem !important}.column-gap-xxl-5{column-gap:1.8rem !important}.column-gap-xxl-6{column-gap:2.25rem !important}.column-gap-xxl-7{column-gap:2.7rem !important}.column-gap-xxl-8{column-gap:3.15rem !important}.column-gap-xxl-9{column-gap:3.6rem !important}.column-gap-xxl-tiny{column-gap:.135rem !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: 1900px){.float-xxxl-start{float:left !important}.float-xxxl-end{float:right !important}.float-xxxl-none{float:none !important}.object-fit-xxxl-contain{object-fit:contain !important}.object-fit-xxxl-cover{object-fit:cover !important}.object-fit-xxxl-fill{object-fit:fill !important}.object-fit-xxxl-scale{object-fit:scale-down !important}.object-fit-xxxl-none{object-fit:none !important}.d-xxxl-inline{display:inline !important}.d-xxxl-inline-block{display:inline-block !important}.d-xxxl-block{display:block !important}.d-xxxl-grid{display:grid !important}.d-xxxl-inline-grid{display:inline-grid !important}.d-xxxl-table{display:table !important}.d-xxxl-table-row{display:table-row !important}.d-xxxl-table-cell{display:table-cell !important}.d-xxxl-flex{display:flex !important}.d-xxxl-inline-flex{display:inline-flex !important}.d-xxxl-none{display:none !important}.flex-xxxl-fill{flex:1 1 auto !important}.flex-xxxl-row{flex-direction:row !important}.flex-xxxl-column{flex-direction:column !important}.flex-xxxl-row-reverse{flex-direction:row-reverse !important}.flex-xxxl-column-reverse{flex-direction:column-reverse !important}.flex-xxxl-grow-0{flex-grow:0 !important}.flex-xxxl-grow-1{flex-grow:1 !important}.flex-xxxl-shrink-0{flex-shrink:0 !important}.flex-xxxl-shrink-1{flex-shrink:1 !important}.flex-xxxl-wrap{flex-wrap:wrap !important}.flex-xxxl-nowrap{flex-wrap:nowrap !important}.flex-xxxl-wrap-reverse{flex-wrap:wrap-reverse !important}.justify-content-xxxl-start{justify-content:flex-start !important}.justify-content-xxxl-end{justify-content:flex-end !important}.justify-content-xxxl-center{justify-content:center !important}.justify-content-xxxl-between{justify-content:space-between !important}.justify-content-xxxl-around{justify-content:space-around !important}.justify-content-xxxl-evenly{justify-content:space-evenly !important}.align-items-xxxl-start{align-items:flex-start !important}.align-items-xxxl-end{align-items:flex-end !important}.align-items-xxxl-center{align-items:center !important}.align-items-xxxl-baseline{align-items:baseline !important}.align-items-xxxl-stretch{align-items:stretch !important}.align-content-xxxl-start{align-content:flex-start !important}.align-content-xxxl-end{align-content:flex-end !important}.align-content-xxxl-center{align-content:center !important}.align-content-xxxl-between{align-content:space-between !important}.align-content-xxxl-around{align-content:space-around !important}.align-content-xxxl-stretch{align-content:stretch !important}.align-self-xxxl-auto{align-self:auto !important}.align-self-xxxl-start{align-self:flex-start !important}.align-self-xxxl-end{align-self:flex-end !important}.align-self-xxxl-center{align-self:center !important}.align-self-xxxl-baseline{align-self:baseline !important}.align-self-xxxl-stretch{align-self:stretch !important}.order-xxxl-first{order:-1 !important}.order-xxxl-0{order:0 !important}.order-xxxl-1{order:1 !important}.order-xxxl-2{order:2 !important}.order-xxxl-3{order:3 !important}.order-xxxl-4{order:4 !important}.order-xxxl-5{order:5 !important}.order-xxxl-last{order:6 !important}.m-xxxl-0{margin:0 !important}.m-xxxl-1{margin:.225rem !important}.m-xxxl-2{margin:.45rem !important}.m-xxxl-3{margin:.9rem !important}.m-xxxl-4{margin:1.35rem !important}.m-xxxl-5{margin:1.8rem !important}.m-xxxl-6{margin:2.25rem !important}.m-xxxl-7{margin:2.7rem !important}.m-xxxl-8{margin:3.15rem !important}.m-xxxl-9{margin:3.6rem !important}.m-xxxl-tiny{margin:.135rem !important}.m-xxxl-auto{margin:auto !important}.mx-xxxl-0{margin-right:0 !important;margin-left:0 !important}.mx-xxxl-1{margin-right:.225rem !important;margin-left:.225rem !important}.mx-xxxl-2{margin-right:.45rem !important;margin-left:.45rem !important}.mx-xxxl-3{margin-right:.9rem !important;margin-left:.9rem !important}.mx-xxxl-4{margin-right:1.35rem !important;margin-left:1.35rem !important}.mx-xxxl-5{margin-right:1.8rem !important;margin-left:1.8rem !important}.mx-xxxl-6{margin-right:2.25rem !important;margin-left:2.25rem !important}.mx-xxxl-7{margin-right:2.7rem !important;margin-left:2.7rem !important}.mx-xxxl-8{margin-right:3.15rem !important;margin-left:3.15rem !important}.mx-xxxl-9{margin-right:3.6rem !important;margin-left:3.6rem !important}.mx-xxxl-tiny{margin-right:.135rem !important;margin-left:.135rem !important}.mx-xxxl-auto{margin-right:auto !important;margin-left:auto !important}.my-xxxl-0{margin-top:0 !important;margin-bottom:0 !important}.my-xxxl-1{margin-top:.225rem !important;margin-bottom:.225rem !important}.my-xxxl-2{margin-top:.45rem !important;margin-bottom:.45rem !important}.my-xxxl-3{margin-top:.9rem !important;margin-bottom:.9rem !important}.my-xxxl-4{margin-top:1.35rem !important;margin-bottom:1.35rem !important}.my-xxxl-5{margin-top:1.8rem !important;margin-bottom:1.8rem !important}.my-xxxl-6{margin-top:2.25rem !important;margin-bottom:2.25rem !important}.my-xxxl-7{margin-top:2.7rem !important;margin-bottom:2.7rem !important}.my-xxxl-8{margin-top:3.15rem !important;margin-bottom:3.15rem !important}.my-xxxl-9{margin-top:3.6rem !important;margin-bottom:3.6rem !important}.my-xxxl-tiny{margin-top:.135rem !important;margin-bottom:.135rem !important}.my-xxxl-auto{margin-top:auto !important;margin-bottom:auto !important}.mt-xxxl-0{margin-top:0 !important}.mt-xxxl-1{margin-top:.225rem !important}.mt-xxxl-2{margin-top:.45rem !important}.mt-xxxl-3{margin-top:.9rem !important}.mt-xxxl-4{margin-top:1.35rem !important}.mt-xxxl-5{margin-top:1.8rem !important}.mt-xxxl-6{margin-top:2.25rem !important}.mt-xxxl-7{margin-top:2.7rem !important}.mt-xxxl-8{margin-top:3.15rem !important}.mt-xxxl-9{margin-top:3.6rem !important}.mt-xxxl-tiny{margin-top:.135rem !important}.mt-xxxl-auto{margin-top:auto !important}.me-xxxl-0{margin-right:0 !important}.me-xxxl-1{margin-right:.225rem !important}.me-xxxl-2{margin-right:.45rem !important}.me-xxxl-3{margin-right:.9rem !important}.me-xxxl-4{margin-right:1.35rem !important}.me-xxxl-5{margin-right:1.8rem !important}.me-xxxl-6{margin-right:2.25rem !important}.me-xxxl-7{margin-right:2.7rem !important}.me-xxxl-8{margin-right:3.15rem !important}.me-xxxl-9{margin-right:3.6rem !important}.me-xxxl-tiny{margin-right:.135rem !important}.me-xxxl-auto{margin-right:auto !important}.mb-xxxl-0{margin-bottom:0 !important}.mb-xxxl-1{margin-bottom:.225rem !important}.mb-xxxl-2{margin-bottom:.45rem !important}.mb-xxxl-3{margin-bottom:.9rem !important}.mb-xxxl-4{margin-bottom:1.35rem !important}.mb-xxxl-5{margin-bottom:1.8rem !important}.mb-xxxl-6{margin-bottom:2.25rem !important}.mb-xxxl-7{margin-bottom:2.7rem !important}.mb-xxxl-8{margin-bottom:3.15rem !important}.mb-xxxl-9{margin-bottom:3.6rem !important}.mb-xxxl-tiny{margin-bottom:.135rem !important}.mb-xxxl-auto{margin-bottom:auto !important}.ms-xxxl-0{margin-left:0 !important}.ms-xxxl-1{margin-left:.225rem !important}.ms-xxxl-2{margin-left:.45rem !important}.ms-xxxl-3{margin-left:.9rem !important}.ms-xxxl-4{margin-left:1.35rem !important}.ms-xxxl-5{margin-left:1.8rem !important}.ms-xxxl-6{margin-left:2.25rem !important}.ms-xxxl-7{margin-left:2.7rem !important}.ms-xxxl-8{margin-left:3.15rem !important}.ms-xxxl-9{margin-left:3.6rem !important}.ms-xxxl-tiny{margin-left:.135rem !important}.ms-xxxl-auto{margin-left:auto !important}.m-xxxl-n1{margin:-0.225rem !important}.m-xxxl-n2{margin:-0.45rem !important}.m-xxxl-n3{margin:-0.9rem !important}.m-xxxl-n4{margin:-1.35rem !important}.m-xxxl-n5{margin:-1.8rem !important}.m-xxxl-n6{margin:-2.25rem !important}.m-xxxl-n7{margin:-2.7rem !important}.m-xxxl-n8{margin:-3.15rem !important}.m-xxxl-n9{margin:-3.6rem !important}.m-xxxl-ntiny{margin:-0.135rem !important}.mx-xxxl-n1{margin-right:-0.225rem !important;margin-left:-0.225rem !important}.mx-xxxl-n2{margin-right:-0.45rem !important;margin-left:-0.45rem !important}.mx-xxxl-n3{margin-right:-0.9rem !important;margin-left:-0.9rem !important}.mx-xxxl-n4{margin-right:-1.35rem !important;margin-left:-1.35rem !important}.mx-xxxl-n5{margin-right:-1.8rem !important;margin-left:-1.8rem !important}.mx-xxxl-n6{margin-right:-2.25rem !important;margin-left:-2.25rem !important}.mx-xxxl-n7{margin-right:-2.7rem !important;margin-left:-2.7rem !important}.mx-xxxl-n8{margin-right:-3.15rem !important;margin-left:-3.15rem !important}.mx-xxxl-n9{margin-right:-3.6rem !important;margin-left:-3.6rem !important}.mx-xxxl-ntiny{margin-right:-0.135rem !important;margin-left:-0.135rem !important}.my-xxxl-n1{margin-top:-0.225rem !important;margin-bottom:-0.225rem !important}.my-xxxl-n2{margin-top:-0.45rem !important;margin-bottom:-0.45rem !important}.my-xxxl-n3{margin-top:-0.9rem !important;margin-bottom:-0.9rem !important}.my-xxxl-n4{margin-top:-1.35rem !important;margin-bottom:-1.35rem !important}.my-xxxl-n5{margin-top:-1.8rem !important;margin-bottom:-1.8rem !important}.my-xxxl-n6{margin-top:-2.25rem !important;margin-bottom:-2.25rem !important}.my-xxxl-n7{margin-top:-2.7rem !important;margin-bottom:-2.7rem !important}.my-xxxl-n8{margin-top:-3.15rem !important;margin-bottom:-3.15rem !important}.my-xxxl-n9{margin-top:-3.6rem !important;margin-bottom:-3.6rem !important}.my-xxxl-ntiny{margin-top:-0.135rem !important;margin-bottom:-0.135rem !important}.mt-xxxl-n1{margin-top:-0.225rem !important}.mt-xxxl-n2{margin-top:-0.45rem !important}.mt-xxxl-n3{margin-top:-0.9rem !important}.mt-xxxl-n4{margin-top:-1.35rem !important}.mt-xxxl-n5{margin-top:-1.8rem !important}.mt-xxxl-n6{margin-top:-2.25rem !important}.mt-xxxl-n7{margin-top:-2.7rem !important}.mt-xxxl-n8{margin-top:-3.15rem !important}.mt-xxxl-n9{margin-top:-3.6rem !important}.mt-xxxl-ntiny{margin-top:-0.135rem !important}.me-xxxl-n1{margin-right:-0.225rem !important}.me-xxxl-n2{margin-right:-0.45rem !important}.me-xxxl-n3{margin-right:-0.9rem !important}.me-xxxl-n4{margin-right:-1.35rem !important}.me-xxxl-n5{margin-right:-1.8rem !important}.me-xxxl-n6{margin-right:-2.25rem !important}.me-xxxl-n7{margin-right:-2.7rem !important}.me-xxxl-n8{margin-right:-3.15rem !important}.me-xxxl-n9{margin-right:-3.6rem !important}.me-xxxl-ntiny{margin-right:-0.135rem !important}.mb-xxxl-n1{margin-bottom:-0.225rem !important}.mb-xxxl-n2{margin-bottom:-0.45rem !important}.mb-xxxl-n3{margin-bottom:-0.9rem !important}.mb-xxxl-n4{margin-bottom:-1.35rem !important}.mb-xxxl-n5{margin-bottom:-1.8rem !important}.mb-xxxl-n6{margin-bottom:-2.25rem !important}.mb-xxxl-n7{margin-bottom:-2.7rem !important}.mb-xxxl-n8{margin-bottom:-3.15rem !important}.mb-xxxl-n9{margin-bottom:-3.6rem !important}.mb-xxxl-ntiny{margin-bottom:-0.135rem !important}.ms-xxxl-n1{margin-left:-0.225rem !important}.ms-xxxl-n2{margin-left:-0.45rem !important}.ms-xxxl-n3{margin-left:-0.9rem !important}.ms-xxxl-n4{margin-left:-1.35rem !important}.ms-xxxl-n5{margin-left:-1.8rem !important}.ms-xxxl-n6{margin-left:-2.25rem !important}.ms-xxxl-n7{margin-left:-2.7rem !important}.ms-xxxl-n8{margin-left:-3.15rem !important}.ms-xxxl-n9{margin-left:-3.6rem !important}.ms-xxxl-ntiny{margin-left:-0.135rem !important}.p-xxxl-0{padding:0 !important}.p-xxxl-1{padding:.225rem !important}.p-xxxl-2{padding:.45rem !important}.p-xxxl-3{padding:.9rem !important}.p-xxxl-4{padding:1.35rem !important}.p-xxxl-5{padding:1.8rem !important}.p-xxxl-6{padding:2.25rem !important}.p-xxxl-7{padding:2.7rem !important}.p-xxxl-8{padding:3.15rem !important}.p-xxxl-9{padding:3.6rem !important}.p-xxxl-tiny{padding:.135rem !important}.px-xxxl-0{padding-right:0 !important;padding-left:0 !important}.px-xxxl-1{padding-right:.225rem !important;padding-left:.225rem !important}.px-xxxl-2{padding-right:.45rem !important;padding-left:.45rem !important}.px-xxxl-3{padding-right:.9rem !important;padding-left:.9rem !important}.px-xxxl-4{padding-right:1.35rem !important;padding-left:1.35rem !important}.px-xxxl-5{padding-right:1.8rem !important;padding-left:1.8rem !important}.px-xxxl-6{padding-right:2.25rem !important;padding-left:2.25rem !important}.px-xxxl-7{padding-right:2.7rem !important;padding-left:2.7rem !important}.px-xxxl-8{padding-right:3.15rem !important;padding-left:3.15rem !important}.px-xxxl-9{padding-right:3.6rem !important;padding-left:3.6rem !important}.px-xxxl-tiny{padding-right:.135rem !important;padding-left:.135rem !important}.py-xxxl-0{padding-top:0 !important;padding-bottom:0 !important}.py-xxxl-1{padding-top:.225rem !important;padding-bottom:.225rem !important}.py-xxxl-2{padding-top:.45rem !important;padding-bottom:.45rem !important}.py-xxxl-3{padding-top:.9rem !important;padding-bottom:.9rem !important}.py-xxxl-4{padding-top:1.35rem !important;padding-bottom:1.35rem !important}.py-xxxl-5{padding-top:1.8rem !important;padding-bottom:1.8rem !important}.py-xxxl-6{padding-top:2.25rem !important;padding-bottom:2.25rem !important}.py-xxxl-7{padding-top:2.7rem !important;padding-bottom:2.7rem !important}.py-xxxl-8{padding-top:3.15rem !important;padding-bottom:3.15rem !important}.py-xxxl-9{padding-top:3.6rem !important;padding-bottom:3.6rem !important}.py-xxxl-tiny{padding-top:.135rem !important;padding-bottom:.135rem !important}.pt-xxxl-0{padding-top:0 !important}.pt-xxxl-1{padding-top:.225rem !important}.pt-xxxl-2{padding-top:.45rem !important}.pt-xxxl-3{padding-top:.9rem !important}.pt-xxxl-4{padding-top:1.35rem !important}.pt-xxxl-5{padding-top:1.8rem !important}.pt-xxxl-6{padding-top:2.25rem !important}.pt-xxxl-7{padding-top:2.7rem !important}.pt-xxxl-8{padding-top:3.15rem !important}.pt-xxxl-9{padding-top:3.6rem !important}.pt-xxxl-tiny{padding-top:.135rem !important}.pe-xxxl-0{padding-right:0 !important}.pe-xxxl-1{padding-right:.225rem !important}.pe-xxxl-2{padding-right:.45rem !important}.pe-xxxl-3{padding-right:.9rem !important}.pe-xxxl-4{padding-right:1.35rem !important}.pe-xxxl-5{padding-right:1.8rem !important}.pe-xxxl-6{padding-right:2.25rem !important}.pe-xxxl-7{padding-right:2.7rem !important}.pe-xxxl-8{padding-right:3.15rem !important}.pe-xxxl-9{padding-right:3.6rem !important}.pe-xxxl-tiny{padding-right:.135rem !important}.pb-xxxl-0{padding-bottom:0 !important}.pb-xxxl-1{padding-bottom:.225rem !important}.pb-xxxl-2{padding-bottom:.45rem !important}.pb-xxxl-3{padding-bottom:.9rem !important}.pb-xxxl-4{padding-bottom:1.35rem !important}.pb-xxxl-5{padding-bottom:1.8rem !important}.pb-xxxl-6{padding-bottom:2.25rem !important}.pb-xxxl-7{padding-bottom:2.7rem !important}.pb-xxxl-8{padding-bottom:3.15rem !important}.pb-xxxl-9{padding-bottom:3.6rem !important}.pb-xxxl-tiny{padding-bottom:.135rem !important}.ps-xxxl-0{padding-left:0 !important}.ps-xxxl-1{padding-left:.225rem !important}.ps-xxxl-2{padding-left:.45rem !important}.ps-xxxl-3{padding-left:.9rem !important}.ps-xxxl-4{padding-left:1.35rem !important}.ps-xxxl-5{padding-left:1.8rem !important}.ps-xxxl-6{padding-left:2.25rem !important}.ps-xxxl-7{padding-left:2.7rem !important}.ps-xxxl-8{padding-left:3.15rem !important}.ps-xxxl-9{padding-left:3.6rem !important}.ps-xxxl-tiny{padding-left:.135rem !important}.gap-xxxl-0{gap:0 !important}.gap-xxxl-1{gap:.225rem !important}.gap-xxxl-2{gap:.45rem !important}.gap-xxxl-3{gap:.9rem !important}.gap-xxxl-4{gap:1.35rem !important}.gap-xxxl-5{gap:1.8rem !important}.gap-xxxl-6{gap:2.25rem !important}.gap-xxxl-7{gap:2.7rem !important}.gap-xxxl-8{gap:3.15rem !important}.gap-xxxl-9{gap:3.6rem !important}.gap-xxxl-tiny{gap:.135rem !important}.row-gap-xxxl-0{row-gap:0 !important}.row-gap-xxxl-1{row-gap:.225rem !important}.row-gap-xxxl-2{row-gap:.45rem !important}.row-gap-xxxl-3{row-gap:.9rem !important}.row-gap-xxxl-4{row-gap:1.35rem !important}.row-gap-xxxl-5{row-gap:1.8rem !important}.row-gap-xxxl-6{row-gap:2.25rem !important}.row-gap-xxxl-7{row-gap:2.7rem !important}.row-gap-xxxl-8{row-gap:3.15rem !important}.row-gap-xxxl-9{row-gap:3.6rem !important}.row-gap-xxxl-tiny{row-gap:.135rem !important}.column-gap-xxxl-0{column-gap:0 !important}.column-gap-xxxl-1{column-gap:.225rem !important}.column-gap-xxxl-2{column-gap:.45rem !important}.column-gap-xxxl-3{column-gap:.9rem !important}.column-gap-xxxl-4{column-gap:1.35rem !important}.column-gap-xxxl-5{column-gap:1.8rem !important}.column-gap-xxxl-6{column-gap:2.25rem !important}.column-gap-xxxl-7{column-gap:2.7rem !important}.column-gap-xxxl-8{column-gap:3.15rem !important}.column-gap-xxxl-9{column-gap:3.6rem !important}.column-gap-xxxl-tiny{column-gap:.135rem !important}.text-xxxl-start{text-align:left !important}.text-xxxl-end{text-align:right !important}.text-xxxl-center{text-align:center !important}}@media(min-width: 1200px){.fs-1{font-size:2.5rem !important}.fs-2{font-size:2rem !important}.fs-3{font-size:1.75rem !important}.fs-4{font-size:1.5rem !important}}@media print{.d-print-inline{display:inline !important}.d-print-inline-block{display:inline-block !important}.d-print-block{display:block !important}.d-print-grid{display:grid !important}.d-print-inline-grid{display:inline-grid !important}.d-print-table{display:table !important}.d-print-table-row{display:table-row !important}.d-print-table-cell{display:table-cell !important}.d-print-flex{display:flex !important}.d-print-inline-flex{display:inline-flex !important}.d-print-none{display:none !important}}.modal{--bs-modal-width: fit-content}.container{max-width:100%}main>.p-3{padding-right:.5rem !important}.table>:not(:first-child){border-top:0px}.table td.fit,.table th.fit{white-space:nowrap}.bg-content{background-color:#fff !important}code{background-color:#fff !important}.icon-shadow{filter:drop-shadow(1px 1px 1px #666)}.icon-shadow-dark{filter:drop-shadow(1px 1px 1px #262626)}.text-darken{filter:brightness(80%)}.text-lighten{filter:brightness(120%)}.text-tight-spacing{letter-spacing:-0.5px}.text-orange{color:#fd7e14}.text-twitter{color:#1d9bf0}.mb-large{margin-bottom:100px}.hljs,.hljs-subst{color:#212529}.fs-120{font-size:120%}.fs-100{font-size:100%}.fs-90{font-size:90%}.fs-80{font-size:80%}.fs-75{font-size:75%}.text-small{font-size:80%}.text-tiny{font-size:75% !important}.text-60pct{font-size:50% !important}.text-50pct{font-size:50% !important}.border-dotted{border-bottom:1px dotted #ccc}.border-thick{border-width:4px !important}body{font-size:14px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji}.font-serif{font-family:Georgia,Garamond,serif !important}hr{margin:.25rem 0 .75rem 0 !important}img.header-image{margin-top:-10px;margin-bottom:-5px;width:40px;height:40px;margin-right:10px}code,.font-json,.font-data,.font-plaintext{font-family:"Source Code Pro",monospace !important}.hr-thick{height:3px !important}.mb-section{margin-bottom:1.5rem !important}.mb-tiny{margin-bottom:3px}.mb-huge{margin-bottom:200px}.user-message-markdown p{margin-bottom:0 !important}.summary-row:last-child{margin-bottom:0 !important}pre{white-space:pre-wrap;white-space:-moz-pre-wrap;white-space:-pre-wrap;white-space:-o-pre-wrap;word-wrap:break-word;margin-bottom:0 !important}.word-wrap{word-wrap:break-word}.chan-flags>div{display:flex;flex-direction:column;gap:.1em}.chan-flags>div>span{width:fit-content}.table th{border-top:none}.footer-link{color:#ddd;text-decoration:underline}.footer-link:hover{color:#fff}.hljs-type,.hljs-string,.hljs-selector-id,.hljs-selector-class,.hljs-quote,.hljs-template-tag,.hljs-deletion{color:#3aa54f}.hljs-literal,.hljs-number{color:#0dcaf0}.node-color-circle-outer{position:relative;width:4em;height:4em;background-color:#000;border-radius:50%}.node-color-circle-inner{top:10%;left:10%;position:absolute;width:80%;height:80%;background-color:#e5e5e5;border-radius:50%}.node-icon{top:10%;left:10%;position:absolute;width:80%;height:80%;border-radius:50%}input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus,input:-webkit-autofill:active{-webkit-box-shadow:0 0 0 30px var(--bs-body-bg) inset !important}input:-webkit-autofill{-webkit-text-fill-color:#212529 !important}.bg-background{background-color:#444}.bg-main{background-color:#f7fcff !important}.bg-menu{background-color:#fff}li.nav-item:hover{background-color:#eee}.bg-header-footer{background-color:#212529 !important}.bg-header-footer-highlight{background-color:#434b53 !important}.bg-header-footer{background-color:#162740 !important}.bg-header-footer-highlight{background-color:#2a4a79 !important}.bg-gradient-body-to-main{background:linear-gradient(0deg, #f7fcff 0%, #fff 100%)}.bg-card-highlight-badge{background-color:#e6e6e6 !important}.bg-tx-separator{background-color:#dce1e5}.border-card-highlight-badge{border-color:#d6d6d6 !important}.text-card-highlight{color:#567997 !important}.border-dotted{border-bottom:dotted 1px #979ca5}.card-highlight{background-color:#f7f7f7;border:solid 1px #e6e6e6 !important;color:#212529}/*# sourceMappingURL=light.css.map */ diff --git a/public/style/light.css.map b/public/style/light.css.map index e537329..96c966c 100644 --- a/public/style/light.css.map +++ b/public/style/light.css.map @@ -1 +1 @@ -{"version":3,"sourceRoot":"","sources":["../../node_modules/bootstrap/scss/mixins/_banner.scss","../../node_modules/bootstrap/scss/_root.scss","../../node_modules/bootstrap/scss/vendor/_rfs.scss","../../node_modules/bootstrap/scss/_reboot.scss","../../node_modules/bootstrap/scss/_variables.scss","../scss/main.scss","../../node_modules/bootstrap/scss/mixins/_border-radius.scss","../../node_modules/bootstrap/scss/_type.scss","../../node_modules/bootstrap/scss/mixins/_lists.scss","../../node_modules/bootstrap/scss/_images.scss","../../node_modules/bootstrap/scss/mixins/_image.scss","../scss/light.scss","../../node_modules/bootstrap/scss/_containers.scss","../../node_modules/bootstrap/scss/mixins/_container.scss","../../node_modules/bootstrap/scss/mixins/_breakpoints.scss","../../node_modules/bootstrap/scss/_grid.scss","../../node_modules/bootstrap/scss/mixins/_grid.scss","../../node_modules/bootstrap/scss/_tables.scss","../../node_modules/bootstrap/scss/mixins/_table-variants.scss","../../node_modules/bootstrap/scss/forms/_labels.scss","../../node_modules/bootstrap/scss/forms/_form-text.scss","../../node_modules/bootstrap/scss/forms/_form-control.scss","../../node_modules/bootstrap/scss/mixins/_transition.scss","../../node_modules/bootstrap/scss/mixins/_gradients.scss","../../node_modules/bootstrap/scss/forms/_form-select.scss","../../node_modules/bootstrap/scss/forms/_form-check.scss","../../node_modules/bootstrap/scss/forms/_form-range.scss","../../node_modules/bootstrap/scss/forms/_floating-labels.scss","../../node_modules/bootstrap/scss/forms/_input-group.scss","../../node_modules/bootstrap/scss/mixins/_forms.scss","../../node_modules/bootstrap/scss/_buttons.scss","../../node_modules/bootstrap/scss/mixins/_buttons.scss","../../node_modules/bootstrap/scss/_transitions.scss","../../node_modules/bootstrap/scss/_dropdown.scss","../../node_modules/bootstrap/scss/mixins/_caret.scss","../../node_modules/bootstrap/scss/_button-group.scss","../../node_modules/bootstrap/scss/_nav.scss","../../node_modules/bootstrap/scss/_navbar.scss","../../node_modules/bootstrap/scss/_card.scss","../../node_modules/bootstrap/scss/_accordion.scss","../../node_modules/bootstrap/scss/_breadcrumb.scss","../../node_modules/bootstrap/scss/_pagination.scss","../../node_modules/bootstrap/scss/mixins/_pagination.scss","../../node_modules/bootstrap/scss/_badge.scss","../../node_modules/bootstrap/scss/_alert.scss","../../node_modules/bootstrap/scss/mixins/_alert.scss","../../node_modules/bootstrap/scss/_progress.scss","../../node_modules/bootstrap/scss/_list-group.scss","../../node_modules/bootstrap/scss/mixins/_list-group.scss","../../node_modules/bootstrap/scss/_close.scss","../../node_modules/bootstrap/scss/_toasts.scss","../../node_modules/bootstrap/scss/_modal.scss","../../node_modules/bootstrap/scss/mixins/_backdrop.scss","../../node_modules/bootstrap/scss/_tooltip.scss","../../node_modules/bootstrap/scss/mixins/_reset-text.scss","../../node_modules/bootstrap/scss/_popover.scss","../../node_modules/bootstrap/scss/_carousel.scss","../../node_modules/bootstrap/scss/mixins/_clearfix.scss","../../node_modules/bootstrap/scss/_spinners.scss","../../node_modules/bootstrap/scss/_offcanvas.scss","../../node_modules/bootstrap/scss/_placeholders.scss","../../node_modules/bootstrap/scss/helpers/_color-bg.scss","../../node_modules/bootstrap/scss/helpers/_colored-links.scss","../../node_modules/bootstrap/scss/helpers/_ratio.scss","../../node_modules/bootstrap/scss/helpers/_position.scss","../../node_modules/bootstrap/scss/helpers/_stacks.scss","../../node_modules/bootstrap/scss/helpers/_visually-hidden.scss","../../node_modules/bootstrap/scss/mixins/_visually-hidden.scss","../../node_modules/bootstrap/scss/helpers/_stretched-link.scss","../../node_modules/bootstrap/scss/helpers/_text-truncation.scss","../../node_modules/bootstrap/scss/mixins/_text-truncate.scss","../../node_modules/bootstrap/scss/helpers/_vr.scss","../../node_modules/bootstrap/scss/mixins/_utilities.scss","../../node_modules/bootstrap/scss/utilities/_api.scss"],"names":[],"mappings":"CACE;AAAA;AAAA;AAAA;AAAA;AAAA,GCDF,MAQI,mRAIA,+MAIA,yKAIA,8OAGF,8BACA,wBACA,gCACA,gCAMA,sNACA,0GACA,0FAOA,iDC4PI,oBALI,KDrPR,2BACA,2BACA,yBAIA,mBAIA,uBACA,yBACA,2BACA,oDAEA,2BACA,+BACA,8BACA,4BACA,6BACA,+BAGA,yBACA,+BAEA,yBAEA,2BExDF,qBAGE,sBAeE,8CANJ,MAOM,wBAcN,KACE,SACA,uCDmPI,UALI,yBC5OR,uCACA,uCACA,2BACA,qCACA,mCACA,8BACA,0CASF,GACE,eACA,MCijB4B,QDhjB5B,SACA,qBACA,QCujB4B,ID7iB9B,0CACE,aACA,cCwf4B,ODrf5B,YCwf4B,IDvf5B,YCwf4B,IDpf9B,OD6MQ,iCAlKJ,0BC3CJ,ODoNQ,kBC/MR,ODwMQ,iCAlKJ,0BCtCJ,OD+MQ,gBC1MR,ODmMQ,+BAlKJ,0BCjCJ,OD0MQ,mBCrMR,OD8LQ,iCAlKJ,0BC5BJ,ODqMQ,kBChMR,ODqLM,UALI,QC3KV,ODgLM,UALI,KChKV,EACE,aACA,cCmS0B,KDzR5B,YACE,iCACA,YACA,8BAMF,QACE,mBACA,kBACA,oBAMF,MAEE,kBAGF,SAGE,aACA,mBAGF,wBAIE,gBAGF,GACE,YC6X4B,IDxX9B,GACE,oBACA,cAMF,WACE,gBAQF,SAEE,YCsW4B,OD9V9B,aDmFM,UALI,QCvEV,WACE,QC+a4B,QD9a5B,wCASF,QAEE,kBD+DI,UALI,OCxDR,cACA,wBAGF,mBACA,eAKA,EACE,2BACA,gBEvMkB,KFyMlB,QACE,iCACA,gBE1MqB,UFoNvB,4DAEE,cACA,qBAOJ,kBAIE,YCkR4B,yBF7PxB,UALI,ICRV,IACE,cACA,aACA,mBACA,cDSI,UALI,QCCR,SDII,UALI,QCGN,cACA,kBAIJ,KDHM,UALI,QCUR,2BACA,qBAGA,OACE,cAIJ,IACE,yBDfI,UALI,QCsBR,MCuyCkC,kBDtyClC,iBCuyCkC,qBE3kDhC,qBHuSF,QACE,UDtBE,UALI,ICsCV,OACE,gBAMF,QAEE,sBAQF,MACE,oBACA,yBAGF,QACE,YCsT4B,MDrT5B,eCqT4B,MDpT5B,MCjVS,QDkVT,gBAOF,GAEE,mBACA,gCAGF,2BAME,qBACA,mBACA,eAQF,MACE,qBAMF,OAEE,gBAQF,iCACE,UAKF,sCAKE,SACA,oBDrHI,UALI,QC4HR,oBAIF,cAEE,oBAKF,cACE,eAGF,OAGE,iBAGA,gBACE,UAOJ,0IACE,wBAQF,gDAIE,0BAGE,4GACE,eAON,mBACE,UACA,kBAKF,SACE,gBAUF,SACE,YACA,UACA,SACA,SAQF,OACE,WACA,WACA,UACA,cC8I4B,MFxVtB,iCC6MN,oBD/WE,0BCwWJ,OD/LQ,kBCwMN,SACE,WAOJ,+OAOE,UAGF,4BACE,YASF,cACE,oBACA,6BAmBF,4BACE,wBAKF,+BACE,UAOF,uBACE,aACA,0BAKF,OACE,qBAKF,OACE,SAOF,QACE,kBACA,eAQF,SACE,wBAQF,SACE,wBIpkBF,MLyQM,UALI,QKlQR,YHwkB4B,IGnkB5B,WLsQM,iCKlQJ,YHyjBkB,IGxjBlB,YHwiB0B,IFzc1B,0BKpGF,WL6QM,gBK7QN,WLsQM,iCKlQJ,YHyjBkB,IGxjBlB,YHwiB0B,IFzc1B,0BKpGF,WL6QM,kBK7QN,WLsQM,iCKlQJ,YHyjBkB,IGxjBlB,YHwiB0B,IFzc1B,0BKpGF,WL6QM,gBK7QN,WLsQM,iCKlQJ,YHyjBkB,IGxjBlB,YHwiB0B,IFzc1B,0BKpGF,WL6QM,kBK7QN,WLsQM,iCKlQJ,YHyjBkB,IGxjBlB,YHwiB0B,IFzc1B,0BKpGF,WL6QM,gBK7QN,WLsQM,iCKlQJ,YHyjBkB,IGxjBlB,YHwiB0B,IFzc1B,0BKpGF,WL6QM,kBKrPR,eCvDE,eACA,gBD2DF,aC5DE,eACA,gBD8DF,kBACE,qBAEA,mCACE,aHgkB0B,MGtjB9B,YLoNM,UALI,QK7MR,yBAIF,YACE,cFxFO,MHqSH,UALI,QKrMR,wBACE,gBAIJ,mBACE,mBACA,cFlGO,MHqSH,UALI,QK5LR,MHtFS,QGwFT,2BACE,aEhGJ,WCIE,eAGA,YDDF,eACE,QL48CkC,OK38ClC,iBEfQ,KFgBR,wCHGE,oBIRF,eAGA,YDcF,QAEE,qBAGF,YACE,qBACA,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A,oCAMF,yDACE,iDACA,oCAQJ,cACE,gDACA,mCAQA,8BACE,+CACA,kCCrIF,eAOE,uBACA,uBACA,iCACA,+BACA,+BACA,8BACA,8BACA,6BACA,6BAEA,4BACA,0CAlBF,iBAOE,uBACA,uBACA,iCACA,+BACA,+BACA,8BACA,8BACA,6BACA,6BAEA,4BACA,0CAlBF,eAOE,uBACA,uBACA,iCACA,+BACA,+BACA,8BACA,8BACA,6BACA,6BAEA,4BACA,0CAlBF,YAOE,uBACA,uBACA,iCACA,+BACA,+BACA,8BACA,8BACA,6BACA,6BAEA,4BACA,0CAlBF,eAOE,uBACA,uBACA,iCACA,+BACA,+BACA,8BACA,8BACA,6BACA,6BAEA,4BACA,0CAlBF,cAOE,uBACA,uBACA,iCACA,+BACA,+BACA,8BACA,8BACA,6BACA,6BAEA,4BACA,0CAlBF,aAOE,uBACA,uBACA,iCACA,+BACA,+BACA,8BACA,8BACA,6BACA,6BAEA,4BACA,0CAlBF,YAOE,uBACA,uBACA,iCACA,+BACA,+BACA,8BACA,8BACA,6BACA,6BAEA,4BACA,0CD0IA,kBACE,gBACA,iCHpFF,4BGkFA,qBACE,gBACA,kCHpFF,4BGkFA,qBACE,gBACA,kCHpFF,4BGkFA,qBACE,gBACA,kCHpFF,6BGkFA,qBACE,gBACA,kCHpFF,6BGkFA,sBACE,gBACA,kCHpFF,6BGkFA,uBACE,gBACA,kCE5JN,YACE,cf8xBsC,MerxBxC,gBACE,iCACA,oCACA,gBjBoRI,UALI,QiB3QR,Yf+hB4B,Ie3hB9B,mBACE,+BACA,kCjB0QI,UALI,QiBjQV,mBACE,gCACA,mCjBoQI,UALI,SkB5RV,WACE,WhBsxBsC,OFtflC,UALI,QkBvRR,MhBKS,QiBVX,cACE,cACA,WACA,uBnB8RI,UALI,KmBtRR,YjBmiB4B,IiBliB5B,YjByiB4B,IiBxiB5B,MVXW,QUYX,iBVbQ,KUcR,4BACA,yBACA,gBfGE,oBgBHE,WDMJ,0DCFI,uCDhBN,cCiBQ,iBDGN,yBACE,gBAEA,wDACE,eAKJ,oBACE,MVjCS,QUkCT,iBVnCM,KUoCN,ajBqyBoC,QiBpyBpC,UAKE,WjB6qB0B,kCiBtqB9B,2CAEE,aAIF,2BACE,MjB1CO,QiB4CP,UAQF,uBAEE,iBjB1DO,QiB6DP,UAIF,oCACE,uBACA,0BACA,kBjBgoB0B,OiB/nB1B,MV9ES,QYGX,iBnBMS,QiBuEP,oBACA,qBACA,mBACA,eACA,wBjB0Y0B,IiBzY1B,gBCtEE,WDuEF,mHCnEE,uCDuDJ,oCCtDM,iBDqEN,yEACE,iBjBs4B8B,QiB73BlC,wBACE,cACA,WACA,kBACA,gBACA,YjB2c4B,IiB1c5B,MVzGW,QU0GX,+BACA,2BACA,mBAEA,8BACE,UAGF,gFAEE,gBACA,eAWJ,iBACE,WjBstBsC,2BiBrtBtC,qBnBkKI,UALI,SI7QN,qBeoHF,uCACE,qBACA,wBACA,kBjBglB0B,MiB5kB9B,iBACE,WjB0sBsC,yBiBzsBtC,mBnBqJI,UALI,QI7QN,oBeiIF,uCACE,mBACA,qBACA,kBjBukB0B,KiB/jB5B,sBACE,WjBurBoC,4BiBprBtC,yBACE,WjBorBoC,2BiBjrBtC,yBACE,WjBirBoC,yBiB5qBxC,oBACE,MjB+qBsC,KiB9qBtC,OjBwqBsC,4BiBvqBtC,QjB6hB4B,QiB3hB5B,mDACE,eAGF,uCACE,oBfpKA,oBewKF,0CfxKE,oBe4KF,2CjBypBsC,2BiBxpBtC,2CjBypBsC,yBoBp1BxC,aACE,cACA,WACA,uCACA,uCtB4RI,UALI,KsBpRR,YpBiiB4B,IoBhiB5B,YpBuiB4B,IoBtiB5B,MbbW,QacX,iBbfQ,KagBR,iPACA,4BACA,oBpBw5BkC,oBoBv5BlC,gBpBw5BkC,UoBv5BlC,yBlBDE,oBgBHE,WEOJ,0DACA,gBFJI,uCEfN,aFgBQ,iBEKN,mBACE,apB8yBoC,QoB7yBpC,UAKE,WpBy5B4B,kCoBr5BhC,0DAEE,cpBuqB0B,OoBtqB1B,sBAGF,sBAEE,iBpBnCO,QoBwCT,4BACE,oBACA,0BAIJ,gBACE,YpBgqB4B,OoB/pB5B,epB+pB4B,OoB9pB5B,apB+pB4B,MFrbxB,UALI,SI7QN,qBkB6CJ,gBACE,YpB4pB4B,MoB3pB5B,epB2pB4B,MoB1pB5B,apB2pB4B,KFzbxB,UALI,QI7QN,oBmBfJ,YACE,cACA,WrB41BwC,OqB31BxC,arB41BwC,MqB31BxC,crB41BwC,QqB11BxC,8BACE,WACA,mBAIJ,oBACE,crBk1BwC,MqBj1BxC,eACA,iBAEA,sCACE,YACA,oBACA,cAIJ,kBACE,MrBo0BwC,IqBn0BxC,OrBm0BwC,IqBl0BxC,iBACA,mBACA,iBdjCQ,KckCR,4BACA,2BACA,wBACA,OrBu0BwC,0BqBt0BxC,gBACA,yBAGA,iCnBvBE,oBmB2BF,8BAEE,crB8zBsC,IqB3zBxC,yBACE,OrBqzBsC,gBqBlzBxC,wBACE,arBixBoC,QqBhxBpC,UACA,WrB6pB4B,kCqB1pB9B,0BACE,iBrBxBM,QqByBN,arBzBM,QqB2BN,yCAII,+OAIJ,sCAII,uJAKN,+CACE,iBrB7CM,QqB8CN,arB9CM,QqBmDJ,yOAIJ,2BACE,oBACA,YACA,QrB6xBuC,GqBtxBvC,2FACE,eACA,QrBoxBqC,GqBtwB3C,aACE,arB+wBgC,MqB7wBhC,+BACE,MrB2wB8B,IqB1wB9B,mBACA,wKACA,gCnB3GA,kBgBHE,WGgHF,qCH5GE,uCGsGJ,+BHrGM,iBG6GJ,qCACE,0JAGF,uCACE,oBrB0wB4B,aqBrwB1B,uJAKN,gCACE,crBqvB8B,MqBpvB9B,eAEA,kDACE,oBACA,cAKN,mBACE,qBACA,arBmuBgC,KqBhuBlC,WACE,kBACA,sBACA,oBAIE,mDACE,oBACA,YACA,QrBolBwB,IsBzvB9B,YACE,WACA,cACA,UACA,+BACA,gBAEA,kBACE,UAIA,mDtBq8BuC,iDsBp8BvC,+CtBo8BuC,iDsBj8BzC,8BACE,SAGF,kCACE,MtBs7BuC,KsBr7BvC,OtBq7BuC,KsBp7BvC,oBHzBF,iBnBkCQ,QsBPN,OtBq7BuC,EEj8BvC,mBgBHE,WIkBF,4FACA,gBJfE,uCIMJ,kCJLM,iBIgBJ,yCHjCF,iBnBq9ByC,QsB/6BzC,2CACE,MtB+5B8B,KsB95B9B,OtB+5B8B,MsB95B9B,oBACA,OtB85B8B,QsB75B9B,iBtBpCO,QsBqCP,2BpB7BA,mBoBkCF,8BACE,MtB25BuC,KsB15BvC,OtB05BuC,KmB78BzC,iBnBkCQ,QsBmBN,OtB25BuC,EEj8BvC,mBgBHE,WI4CF,4FACA,gBJzCE,uCIiCJ,8BJhCM,iBI0CJ,qCH3DF,iBnBq9ByC,QsBr5BzC,8BACE,MtBq4B8B,KsBp4B9B,OtBq4B8B,MsBp4B9B,oBACA,OtBo4B8B,QsBn4B9B,iBtB9DO,QsB+DP,2BpBvDA,mBoB4DF,qBACE,oBAEA,2CACE,iBtBtEK,QsByEP,uCACE,iBtB1EK,QuBbX,eACE,kBAEA,gGAGE,OvB+9B8B,mBuB99B9B,YvB+9B8B,KuB59BhC,qBACE,kBACA,MACA,OACA,WACA,YACA,oBACA,gBACA,iBACA,uBACA,mBACA,oBACA,+BACA,qBLPE,WKQF,kDLJE,uCKVJ,qBLWM,iBKMN,oEAEE,oBAEA,8FACE,oBAGF,oMAEE,YvBo8B4B,SuBn8B5B,evBo8B4B,QuBj8B9B,sGACE,YvB+7B4B,SuB97B5B,evB+7B4B,QuB37BhC,4BACE,YvBy7B8B,SuBx7B9B,evBy7B8B,QuBl7B9B,mLACE,QvBk7B4B,IuBj7B5B,UvBk7B4B,oDuB76B9B,oDACE,QvB26B4B,IuB16B5B,UvB26B4B,oDuBt6B9B,6CACE,mBCnEN,aACE,kBACA,aACA,eACA,oBACA,WAEA,iFAGE,kBACA,cACA,SACA,YAIF,0GAGE,UAMF,kBACE,kBACA,UAEA,wBACE,UAWN,kBACE,aACA,mBACA,uB1BoPI,UALI,K0B7OR,YxB0f4B,IwBzf5B,YxBggB4B,IwB/f5B,MjBpDW,QiBqDX,kBACA,mBACA,iBxB9CS,QwB+CT,yBtBtCE,oBsBgDJ,kHAIE,mB1B8NI,UALI,QI7QN,oBsByDJ,kHAIE,qB1BqNI,UALI,SI7QN,qBsBkEJ,0DAEE,mBAaE,wVtBjEA,0BACA,6BsByEA,yUtB1EA,0BACA,6BsBsFF,0IACE,iBtB1EA,yBACA,4BsB6EF,uHtB9EE,yBACA,4BuBzBF,gBACE,aACA,WACA,WzB+vBoC,OFtflC,UALI,Q2BjQN,MzBi+BqB,QyB99BvB,eACE,kBACA,SACA,UACA,aACA,eACA,oBACA,iB3B4PE,UALI,S2BpPN,MAvBc,KAwBd,iBAvBiB,mBvBHjB,oBuB+BA,8HAEE,cA9CF,0DAoDE,azBs8BmB,QyBn8BjB,czBsxBgC,sByBrxBhC,2PACA,4BACA,2DACA,gEAGF,sEACE,azB27BiB,QyB17BjB,WA/Ca,iCAjBjB,0EAyEI,czBowBgC,sByBnwBhC,kFA1EJ,wDAiFE,azBy6BmB,QyBt6BjB,4NAEE,czBm1B8B,SyBl1B9B,2dACA,6DACA,0EAIJ,oEACE,azB45BiB,QyB35BjB,WA9Ea,iCAjBjB,sEAuGI,yCAvGJ,kEA8GE,azB44BmB,QyB14BnB,kFACE,iBzBy4BiB,QyBt4BnB,8EACE,WApGa,iCAuGf,sGACE,MzBi4BiB,QyB53BrB,qDACE,iBA/HF,kVAyIM,UAtHR,kBACE,aACA,WACA,WzB+vBoC,OFtflC,UALI,Q2BjQN,MzBi+BqB,QyB99BvB,iBACE,kBACA,SACA,UACA,aACA,eACA,oBACA,iB3B4PE,UALI,S2BpPN,MAvBc,KAwBd,iBAvBiB,mBvBHjB,oBuB+BA,8IAEE,cA9CF,8DAoDE,azBs8BmB,QyBn8BjB,czBsxBgC,sByBrxBhC,4UACA,4BACA,2DACA,gEAGF,0EACE,azB27BiB,QyB17BjB,WA/Ca,iCAjBjB,8EAyEI,czBowBgC,sByBnwBhC,kFA1EJ,4DAiFE,azBy6BmB,QyBt6BjB,oOAEE,czBm1B8B,SyBl1B9B,4iBACA,6DACA,0EAIJ,wEACE,azB45BiB,QyB35BjB,WA9Ea,iCAjBjB,0EAuGI,yCAvGJ,sEA8GE,azB44BmB,QyB14BnB,sFACE,iBzBy4BiB,QyBt4BnB,kFACE,WApGa,iCAuGf,0GACE,MzBi4BiB,QyB53BrB,uDACE,iBA/HF,8VA2IM,UC7IV,KAEE,4BACA,6BACA,uB5B6RI,mBALI,K4BtRR,0BACA,0BACA,wBACA,yBACA,2BACA,mCACA,+BACA,yCACA,6FACA,gCACA,kFAGA,qBACA,wDACA,sC5B4QI,UALI,wB4BrQR,sCACA,sCACA,0BACA,kBAGA,sBACA,eACA,iBACA,mExBjBE,0CiBfF,iBOkCqB,iBRtBjB,WQwBJ,mHRpBI,uCQhBN,KRiBQ,iBQqBN,WACE,gCACA,qBACA,wCACA,8CAGF,sBAEE,0BACA,kCACA,wCAGF,mBACE,gCPrDF,iBOsDuB,uBACrB,8CACA,UAKE,0CAIJ,8BACE,8CACA,UAKE,0CAIJ,mGAKE,iCACA,yCAGA,+CAGA,yKAKI,0CAKN,mDAGE,mCACA,oBACA,2CAEA,iDACA,uCAYF,aCtGA,qBACA,qBACA,+BACA,2BACA,2BACA,qCACA,wCACA,4BACA,4BACA,sCACA,6DACA,8BACA,8BACA,wCDyFA,eCtGA,qBACA,qBACA,+BACA,2BACA,2BACA,qCACA,yCACA,4BACA,4BACA,sCACA,6DACA,8BACA,8BACA,wCDyFA,aCtGA,qBACA,qBACA,+BACA,2BACA,2BACA,qCACA,wCACA,4BACA,4BACA,sCACA,6DACA,8BACA,8BACA,wCDyFA,UCtGA,qBACA,qBACA,+BACA,2BACA,2BACA,qCACA,wCACA,4BACA,4BACA,sCACA,6DACA,8BACA,8BACA,wCDyFA,aCtGA,qBACA,qBACA,+BACA,2BACA,2BACA,qCACA,uCACA,4BACA,4BACA,sCACA,6DACA,8BACA,8BACA,wCDyFA,YCtGA,qBACA,qBACA,+BACA,2BACA,2BACA,qCACA,uCACA,4BACA,4BACA,sCACA,6DACA,8BACA,8BACA,wCDyFA,WCtGA,qBACA,qBACA,+BACA,2BACA,2BACA,qCACA,yCACA,4BACA,4BACA,sCACA,6DACA,8BACA,8BACA,wCDyFA,UCtGA,qBACA,qBACA,+BACA,2BACA,2BACA,qCACA,sCACA,4BACA,4BACA,sCACA,6DACA,8BACA,8BACA,wCDmHA,qBCvGA,wBACA,+BACA,2BACA,2BACA,qCACA,wCACA,4BACA,4BACA,sCACA,6DACA,iCACA,kCACA,wCACA,oBD0FA,uBCvGA,wBACA,+BACA,2BACA,2BACA,qCACA,yCACA,4BACA,4BACA,sCACA,6DACA,iCACA,kCACA,wCACA,oBD0FA,qBCvGA,wBACA,+BACA,2BACA,2BACA,qCACA,uCACA,4BACA,4BACA,sCACA,6DACA,iCACA,kCACA,wCACA,oBD0FA,kBCvGA,wBACA,+BACA,2BACA,2BACA,qCACA,wCACA,4BACA,4BACA,sCACA,6DACA,iCACA,kCACA,wCACA,oBD0FA,qBCvGA,wBACA,+BACA,2BACA,2BACA,qCACA,uCACA,4BACA,4BACA,sCACA,6DACA,iCACA,kCACA,wCACA,oBD0FA,oBCvGA,wBACA,+BACA,2BACA,2BACA,qCACA,uCACA,4BACA,4BACA,sCACA,6DACA,iCACA,kCACA,wCACA,oBD0FA,mBCvGA,wBACA,+BACA,2BACA,2BACA,qCACA,yCACA,4BACA,4BACA,sCACA,6DACA,iCACA,kCACA,wCACA,oBD0FA,kBCvGA,wBACA,+BACA,2BACA,2BACA,qCACA,sCACA,4BACA,4BACA,sCACA,6DACA,iCACA,kCACA,wCACA,oBDsGF,UACE,0BACA,qCACA,yBACA,mCACA,iDACA,yCACA,kDACA,0CACA,iCACA,4CACA,0BACA,wCAEA,gBzBjIkB,KyBsIlB,wCAEE,gBzBvIqB,UyB0IvB,wBACE,0BAGF,gBACE,gCAWJ,2BCxIE,2BACA,yB7BoOI,mBALI,Q6B7NR,+BDyIF,2BC5IE,2BACA,2B7BoOI,mBALI,S6B7NR,gCCnEF,MVgBM,WUfJ,oBVmBI,uCUpBN,MVqBQ,iBUlBN,iBACE,UAMF,qBACE,aAIJ,YACE,SACA,gBVDI,WUEJ,iBVEI,uCULN,YVMQ,iBUDN,gCACE,QACA,YVNE,WUOF,gBVHE,uEACE,iBWpBR,sEAME,kBAGF,iBACE,mBCmBE,wBACE,qBACA,Y9BmewB,O8BlexB,e9BiewB,O8BhexB,WAhCJ,sBACA,sCACA,gBACA,qCAqDE,8BACE,cDzCN,eAEE,2BACA,+BACA,2BACA,gCACA,+B/B6QI,wBALI,K+BtQR,6BACA,uBACA,+DACA,oCACA,gCACA,sDACA,6DACA,wCACA,4DACA,kCACA,wCACA,qCACA,sCACA,sCACA,2CACA,qCACA,uCACA,oCACA,uCACA,uCAGA,kBACA,kCACA,aACA,uCACA,kEACA,S/BgPI,UALI,6B+BzOR,+BACA,gBACA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,0CACA,oBACA,0Bf5NJ,We8NI,KAGA,+CACE,aAGF,6CACE,aACA,YACA,UACA,oBvB1LR,0BuBoIA,mBAEI,iBACA,2BAEA,+BACE,mBAEA,8CACE,kBAGF,yCACE,kDACA,iDAIJ,sCACE,iBAGF,oCACE,wBACA,gBAGF,mCACE,aAGF,8BAEE,gBACA,aACA,YACA,sBACA,uBACA,8BACA,0CACA,oBACA,0Bf5NJ,We8NI,KAGA,gDACE,aAGF,8CACE,aACA,YACA,UACA,oBvB1LR,0BuBoIA,oBAEI,iBACA,2BAEA,gCACE,mBAEA,+CACE,kBAGF,0CACE,kDACA,iDAIJ,uCACE,iBAGF,qCACE,wBACA,gBAGF,oCACE,aAGF,+BAEE,gBACA,aACA,YACA,sBACA,uBACA,8BACA,0CACA,oBACA,0Bf5NJ,We8NI,KAGA,iDACE,aAGF,+CACE,aACA,YACA,UACA,oBAtDR,eAEI,iBACA,2BAEA,2BACE,mBAEA,0CACE,kBAGF,qCACE,kDACA,iDAIJ,kCACE,iBAGF,gCACE,wBACA,gBAGF,+BACE,aAGF,0BAEE,gBACA,aACA,YACA,sBACA,uBACA,8BACA,0CACA,oBACA,0Bf5NJ,We8NI,KAGA,4CACE,aAGF,0CACE,aACA,YACA,UACA,mBAiBZ,aAEE,6CACA,mDACA,sDACA,+BACA,8BACA,oCACA,2DACA,+QC/QF,MAEE,2BACA,2BACA,kCACA,4BACA,gCACA,gCACA,uBACA,kDACA,iCACA,gCACA,sCACA,sBACA,mBACA,kBACA,mBACA,sCACA,gCAGA,kBACA,aACA,sBACA,YACA,6BACA,qBACA,mCACA,2BACA,qEhCdE,2CgCkBF,SACE,eACA,cAGF,kBACE,mBACA,sBAEA,8BACE,mBhCnBF,0DACA,2DgCsBA,6BACE,sBhCVF,8DACA,6DgCgBF,8DAEE,aAIJ,WAGE,cACA,wDACA,2BAGF,YACE,4CAGF,eACE,oDACA,gBAGF,sBACE,gBAIA,iBACE,qBAGF,sBACE,oCAQJ,aACE,kEACA,gBACA,+BACA,uCACA,4EAEA,yBhCxFE,wFgC6FJ,aACE,kEACA,+BACA,uCACA,yE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ACE,mBAGE,yEzCvDJ,6DAZA,0ByCwEI,yEzCxEJ,2DAYA,4ByCiEI,mDACE,aAGF,6DACE,mDACA,oBAEA,oEACE,uDACA,qDjCtFR,0BiC8DA,4BACE,mBAGE,0EzCvDJ,6DAZA,0ByCwEI,0EzCxEJ,2DAYA,4ByCiEI,oDACE,aAGF,8DACE,mDACA,oBAEA,qEACE,uDACA,qDAcZ,kBzChJI,gByCmJF,mCACE,mDAEA,8CACE,sBCtKJ,yBACE,MDmLyB,QClLzB,iBDiLsB,QC9KpB,4GAEE,MD6KqB,QC5KrB,yBAGF,uDACE,M5CRG,K4CSH,iBDuKqB,QCtKrB,aDsKqB,QCpL3B,2BACE,MDmLyB,QClLzB,iBDiLsB,QC9KpB,gHAEE,MD6KqB,QC5KrB,yBAGF,yDACE,M5CRG,K4CSH,iBDuKqB,QCtKrB,aDsKqB,QCpL3B,yBACE,MDmLyB,QClLzB,iBDiLsB,QC9KpB,4GAEE,MD6KqB,QC5KrB,yBAGF,uDACE,M5CRG,K4CSH,iBDuKqB,QCtKrB,aDsKqB,QCpL3B,sBACE,MDqL2B,QCpL3B,iBDiLsB,QC9KpB,sGAEE,MD+KuB,QC9KvB,yBAGF,oDACE,M5CRG,K4CSH,iBDyKuB,QCxKvB,aDwKuB,QCtL7B,yBACE,MDqL2B,QCpL3B,iBDiLsB,QC9KpB,4GAEE,MD+KuB,QC9KvB,yBAGF,uDACE,M5CRG,K4CSH,iBDyKuB,QCxKvB,aDwKuB,QCtL7B,wBACE,MDmLyB,QClLzB,iBDiLsB,QC9KpB,0GAEE,MD6KqB,QC5KrB,yBAGF,sDACE,M5CRG,K4CSH,iBDuKqB,QCtKrB,aDsKqB,QCpL3B,uBACE,MDqL2B,QCpL3B,iBDiLsB,QC9KpB,wGAEE,MD+KuB,QC9KvB,yBAGF,qDACE,M5CRG,K4CSH,iBDyKuB,QCxKvB,aDwKuB,QCtL7B,sBACE,MDmLyB,QClLzB,iBDiLsB,QC9KpB,sGAEE,MD6KqB,QC5KrB,yBAGF,oDACE,M5CRG,K4CSH,iBDuKqB,QCtKrB,aDsKqB,QEnL7B,WACE,uBACA,M5C4DgB,O4C3DhB,O5C2DgB,O4C1DhB,oBACA,M7CQS,K6CPT,yXACA,S3COE,oB2CLF,Q7C6iD2B,G6C1iD3B,iBACE,WACA,qBACA,Q7CwiDyB,I6CriD3B,iBACE,UACA,W7C8rB4B,kC6C7rB5B,Q7CmiDyB,E6ChiD3B,wCAEE,oBACA,iBACA,Q7C6hDyB,I6CzhD7B,iBACE,O7CyhD2B,2C8C/jD7B,OAEE,wBACA,8BACA,6BACA,2BACA,4BhD+RI,qBALI,SgDxRR,mBACA,yCACA,6BACA,4DACA,iCACA,yDACA,iCACA,gDACA,oDAGA,gCACA,ehDiRI,UALI,0BgD1QR,4BACA,oBACA,oCACA,4BACA,uEACA,sC5CRE,4C4CWF,eACE,UAGF,kBACE,aAIJ,iBACE,wBAEA,kBACA,+BACA,kBACA,eACA,oBAEA,mCACE,sCAIJ,cACE,aACA,mBACA,4DACA,mCACA,2CACA,4BACA,qF5ChCE,0FACA,2F4CkCF,yBACE,kDACA,sCAIJ,YACE,kCACA,qBC9DF,OAEE,wBACA,wBACA,2BACA,0BACA,0BACA,oBACA,4DACA,6BACA,iCACA,+DACA,mDACA,oCACA,oCACA,yCACA,uDACA,oCACA,kCACA,8BACA,uBACA,uDACA,oCAGA,eACA,MACA,OACA,+BACA,aACA,WACA,YACA,kBACA,gBAGA,UAOF,cACE,kBACA,WACA,8BAEA,oBAGA,0B7B5CI,W6B6CF,uBACA,U/Cm1CgC,oBkB73C9B,uC6BwCJ,0B7BvCM,iB6B2CN,0BACE,U/Ci1CgC,K+C70ClC,kCACE,U/C80CgC,Y+C10CpC,yBACE,6CAEA,wCACE,gBACA,gBAGF,qCACE,gBAIJ,uBACE,aACA,mBACA,iDAIF,eACE,kBACA,aACA,sBACA,WAEA,4BACA,oBACA,oCACA,4BACA,uE7CrFE,4C6CyFF,UAIF,gBAEE,2BACA,uBACA,2BClHA,eACA,MACA,OACA,QDkH0B,0BCjH1B,YACA,aACA,iBD+G4D,sBC5G5D,+BACA,6BD2G0F,2BAK5F,cACE,aACA,cACA,mBACA,8BACA,uCACA,4F7CtGE,2DACA,4D6CwGF,yBACE,4FACA,gJAKJ,aACE,gBACA,8CAKF,YACE,kBAGA,cACA,gCAIF,cACE,aACA,cACA,eAC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,2CA/ER,WAEI,eACA,SACA,mCACA,aACA,sBACA,eACA,gCACA,kBACA,wCACA,4BACA,UrC1BA,WqC4BA,0BrCxBA,uCqCUJ,WrCTM,iBqCyBF,2BACE,MACA,OACA,gCACA,qFACA,4BAGF,yBACE,MACA,QACA,gCACA,oFACA,2BAGF,yBACE,MACA,QACA,OACA,kCACA,gBACA,sFACA,4BAGF,4BACE,QACA,OACA,kCACA,gBACA,mFACA,2BAGF,gDAEE,eAGF,qDAGE,mBA2BR,oBPlHE,eACA,MACA,OACA,QhDghCkC,KgD/gClC,YACA,aACA,iBhDUS,KgDPT,mCACA,iChDo3CkC,GuDxwCpC,kBACE,aACA,mBACA,8BACA,oEAEA,6BACE,sFACA,oDACA,sDACA,uDAIJ,iBACE,gBACA,YvD4a4B,IuDza9B,gBACE,YACA,oEACA,gBC9IF,aACE,qBACA,eACA,sBACA,YACA,8BACA,QxDqsCkC,GwDnsClC,yBACE,qBACA,WAKJ,gBACE,gBAGF,gBACE,gBAGF,gBACE,iBAKA,+BACE,mDAIJ,4BACE,IACE,QxDwqCgC,IwDpqCpC,kBACE,+EACA,oBACA,8CAGF,4BACE,KACE,wBH9CF,iBACE,cACA,WACA,4BICA,sBACA,wEAFF,mBACE,sBACA,yEAFF,iBACE,sBACA,uEAFF,cACE,sBACA,wEAFF,iBACE,sBACA,uEAFF,gBACE,sBACA,uEAFF,eACE,sBACA,yEAFF,cACE,sBACA,sECNF,cACE,yBAGE,wCAEE,yBANN,gBACE,yBAGE,4CAEE,yBANN,cACE,yBAGE,wCAEE,yBANN,WACE,yBAGE,kCAEE,yBANN,cACE,yBAGE,wCAEE,yBANN,aACE,yBAGE,sCAEE,yBANN,YACE,yBAGE,oCAEE,yBANN,WACE,yBAGE,kCAEE,yBCLR,OACE,kBACA,WAEA,eACE,cACA,mCACA,WAGF,SACE,kBACA,MACA,OACA,WACA,YAKF,WACE,wBADF,WACE,uBADF,YACE,0BADF,YACE,kCCrBJ,WACE,eACA,MACA,QACA,OACA,Q5D6gCkC,K4D1gCpC,cACE,eACA,QACA,SACA,OACA,Q5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","file":"light.css"} \ No newline at end of file +{"version":3,"sourceRoot":"","sources":["../../node_modules/bootstrap/scss/mixins/_banner.scss","../../node_modules/bootstrap/scss/_root.scss","../../node_modules/bootstrap/scss/vendor/_rfs.scss","../../node_modules/bootstrap/scss/mixins/_color-mode.scss","../../node_modules/bootstrap/scss/_reboot.scss","../../node_modules/bootstrap/scss/_variables.scss","../scss/main.scss","../../node_modules/bootstrap/scss/mixins/_border-radius.scss","../../node_modules/bootstrap/scss/_type.scss","../../node_modules/bootstrap/scss/mixins/_lists.scss","../../node_modules/bootstrap/scss/_images.scss","../../node_modules/bootstrap/scss/mixins/_image.scss","../../node_modules/bootstrap/scss/_containers.scss","../../node_modules/bootstrap/scss/mixins/_container.scss","../../node_modules/bootstrap/scss/mixins/_breakpoints.scss","../../node_modules/bootstrap/scss/_grid.scss","../../node_modules/bootstrap/scss/mixins/_grid.scss","../../node_modules/bootstrap/scss/_tables.scss","../../node_modules/bootstrap/scss/mixins/_table-variants.scss","../../node_modules/bootstrap/scss/forms/_labels.scss","../../node_modules/bootstrap/scss/forms/_form-text.scss","../../node_modules/bootstrap/scss/forms/_form-control.scss","../../node_modules/bootstrap/scss/mixins/_transition.scss","../../node_modules/bootstrap/scss/mixins/_gradients.scss","../../node_modules/bootstrap/scss/forms/_form-select.scss","../../node_modules/bootstrap/scss/forms/_form-check.scss","../../node_modules/bootstrap/scss/forms/_form-range.scss","../../node_modules/bootstrap/scss/forms/_floating-labels.scss","../../node_modules/bootstrap/scss/forms/_input-group.scss","../../node_modules/bootstrap/scss/mixins/_forms.scss","../../node_modules/bootstrap/scss/_buttons.scss","../../node_modules/bootstrap/scss/mixins/_buttons.scss","../../node_modules/bootstrap/scss/_transitions.scss","../../node_modules/bootstrap/scss/_dropdown.scss","../../node_modules/bootstrap/scss/mixins/_caret.scss","../../node_modules/bootstrap/scss/_button-group.scss","../../node_modules/bootstrap/scss/_nav.scss","../../node_modules/bootstrap/scss/_navbar.scss","../../node_modules/bootstrap/scss/_card.scss","../../node_modules/bootstrap/scss/_accordion.scss","../../node_modules/bootstrap/scss/_breadcrumb.scss","../../node_modules/bootstrap/scss/_pagination.scss","../../node_modules/bootstrap/scss/mixins/_pagination.scss","../../node_modules/bootstrap/scss/_badge.scss","../../node_modules/bootstrap/scss/_alert.scss","../../node_modules/bootstrap/scss/_progress.scss","../../node_modules/bootstrap/scss/_list-group.scss","../../node_modules/bootstrap/scss/_close.scss","../../node_modules/bootstrap/scss/_toasts.scss","../../node_modules/bootstrap/scss/_modal.scss","../../node_modules/bootstrap/scss/mixins/_backdrop.scss","../../node_modules/bootstrap/scss/_tooltip.scss","../../node_modules/bootstrap/scss/mixins/_reset-text.scss","../../node_modules/bootstrap/scss/_popover.scss","../../node_modules/bootstrap/scss/_carousel.scss","../../node_modules/bootstrap/scss/mixins/_clearfix.scss","../../node_modules/bootstrap/scss/_spinners.scss","../../node_modules/bootstrap/scss/_offcanvas.scss","../../node_modules/bootstrap/scss/_placeholders.scss","../../node_modules/bootstrap/scss/helpers/_color-bg.scss","../../node_modules/bootstrap/scss/helpers/_colored-links.scss","../../node_modules/bootstrap/scss/helpers/_focus-ring.scss","../../node_modules/bootstrap/scss/helpers/_icon-link.scss","../../node_modules/bootstrap/scss/helpers/_ratio.scss","../../node_modules/bootstrap/scss/helpers/_position.scss","../../node_modules/bootstrap/scss/helpers/_stacks.scss","../../node_modules/bootstrap/scss/helpers/_visually-hidden.scss","../../node_modules/bootstrap/scss/mixins/_visually-hidden.scss","../../node_modules/bootstrap/scss/helpers/_stretched-link.scss","../../node_modules/bootstrap/scss/helpers/_text-truncation.scss","../../node_modules/bootstrap/scss/mixins/_text-truncate.scss","../../node_modules/bootstrap/scss/helpers/_vr.scss","../../node_modules/bootstrap/scss/mixins/_utilities.scss","../../node_modules/bootstrap/scss/utilities/_api.scss","../scss/light.scss"],"names":[],"mappings":"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uBAPF,qBAEE,sBAGF,qBAEE,sBAPF,qBAEE,uBAGF,qBAEE,uBAPF,qBAEE,sBAGF,qBAEE,sBAPF,qBAEE,uBAGF,qBAEE,uBAPF,qBAEE,sBAGF,qBAEE,sBAPF,2BAEE,wBAGF,2BAEE,yBCrHV,OAEE,+BACA,4BACA,gCACA,6BAEA,uCACA,iCACA,gDACA,kCACA,+CACA,2CACA,8CACA,yCACA,6CACA,0CAEA,WACA,cXvBO,MWwBP,eZksB4B,IYjsB5B,0CAOA,yBACE,oBAEA,qFACA,oCACA,oBZ0sB0B,uBYzsB1B,2GAGF,aACE,uBAGF,aACE,sBAIJ,qBACE,+DAOF,aACE,iBAUA,4BACE,sBAeF,gCACE,sCAGA,kCACE,sCAOJ,oCACE,sBAGF,qCACE,mBAUF,2CACE,qDACA,+CAMF,yDACE,qDACA,+CAQJ,cACE,qDACA,+CAQA,8BACE,oDACA,8CC5IF,eAOE,uBACA,uBACA,iCACA,+BACA,+BACA,8BACA,8BACA,6BACA,6BAEA,4BACA,0CAlBF,iBAOE,uBACA,uBACA,iCACA,+BACA,+BACA,8BACA,8BACA,6BACA,6BAEA,4BACA,0CAlBF,eAOE,uBACA,uBACA,iCACA,+BACA,+BACA,8BACA,8BACA,6BACA,6BAEA,4BACA,0CAlBF,YAOE,uBACA,uBACA,iCACA,+BACA,+BACA,8BACA,8BACA,6BACA,6BAEA,4BACA,0CAlBF,eAOE,uBACA,uBACA,iCACA,+BACA,+BACA,8BACA,8BACA,6BACA,6BAEA,4BACA,0CAlBF,cAOE,uBACA,uBACA,iCACA,+BACA,+BACA,8BACA,8BACA,6BACA,6BAEA,4BACA,0CAlBF,aAOE,uBACA,uBACA,iCACA,+BACA,+BACA,8BACA,8BACA,6BACA,6BAEA,4BACA,0CAlBF,YAOE,uBACA,uBACA,iCACA,+BACA,+BACA,8BACA,8BACA,6BACA,6BAEA,4BACA,0CDiJA,kBACE,gBACA,iCH3FF,4BGyFA,qBACE,gBACA,kCH3FF,4BGyFA,qBACE,gBACA,kCH3FF,4BGyFA,qBACE,gBACA,kCH3FF,6BGyFA,qBACE,gBACA,kCH3FF,6BGyFA,sBACE,gBACA,kCH3FF,6BGyFA,uBACE,gBACA,kCEnKN,YACE,cdi2BsC,Mcx1BxC,gBACE,oDACA,uDACA,gBjB8QI,UALI,QiBrQR,Yd+lB4B,Ic3lB9B,mBACE,kDACA,qDjBoQI,UALI,QiB3PV,mBACE,mDACA,sDjB8PI,UALI,SkBtRV,WACE,Wfy1BsC,OH/jBlC,UALI,QkBjRR,Mfy1BsC,0BgB91BxC,cACE,cACA,WACA,uBnBwRI,UALI,KmBhRR,YhBkmB4B,IgBjmB5B,YhBymB4B,IgBxmB5B,MhBs3BsC,qBgBr3BtC,iBhBg3BsC,kBgB/2BtC,4BACA,2DACA,gBdGE,sCeHE,WDMJ,0DCFI,uCDhBN,cCiBQ,iBDGN,yBACE,gBAEA,wDACE,eAKJ,oBACE,MhBg2BoC,qBgB/1BpC,iBhB01BoC,kBgBz1BpC,ahBw2BoC,QgBv2BpC,UAKE,WhBkhBkB,kCgB9gBtB,2CAME,eAMA,aAKA,SAKF,qCACE,cACA,UAIF,2BACE,MhBs0BoC,0BgBp0BpC,UAQF,uBAEE,iBhBwyBoC,uBgBryBpC,UAIF,oCACE,uBACA,0BACA,kBhB+qB0B,OgB9qB1B,MhBgyBoC,qBkB93BtC,iBlB+hCgC,sBgB/7B9B,oBACA,qBACA,mBACA,eACA,wBhB2rB0B,uBgB1rB1B,gBCzFE,WD0FF,mHCtFE,uCD0EJ,oCCzEM,iBDwFN,yEACE,iBhBs7B8B,uBgB76BlC,wBACE,cACA,WACA,kBACA,gBACA,YhBwf4B,IgBvf5B,MhBqxBsC,qBgBpxBtC,+BACA,2BACA,sCAEA,8BACE,UAGF,gFAEE,gBACA,eAWJ,iBACE,WhBswBsC,wDgBrwBtC,qBnByII,UALI,SKvQN,yCcuIF,uCACE,qBACA,wBACA,kBhB+nB0B,MgB3nB9B,iBACE,WhB0vBsC,sDgBzvBtC,mBnB4HI,UALI,QKvQN,yCcoJF,uCACE,mBACA,qBACA,kBhBsnB0B,KgB9mB5B,sBACE,WhBuuBoC,yDgBpuBtC,yBACE,WhBouBoC,wDgBjuBtC,yBACE,WhBiuBoC,sDgB5tBxC,oBACE,MhB+tBsC,KgB9tBtC,OhBwtBsC,yDgBvtBtC,QhB4kB4B,QgB1kB5B,mDACE,eAGF,uCACE,oBdvLA,sCc2LF,0CACE,oBd5LA,sCcgMF,2ChBwsBsC,wDgBvsBtC,2ChBwsBsC,sDmBv5BxC,aACE,yPAEA,cACA,WACA,uCtBqRI,UALI,KsB7QR,YnB+lB4B,ImB9lB5B,YnBsmB4B,ImBrmB5B,MnBm3BsC,qBmBl3BtC,iBnB62BsC,kBmB52BtC,kFACA,4BACA,oBnB09BkC,oBmBz9BlC,gBnB09BkC,UmBz9BlC,2DjBFE,sCeHE,WEQJ,0DACA,gBFLI,uCEfN,aFgBQ,iBEMN,mBACE,anBg3BoC,QmB/2BpC,UAKE,WnB29B4B,kCmBv9BhC,0DAEE,cnBwuB0B,OmBvuB1B,sBAGF,sBAEE,iBnBi1BoC,uBmB50BtC,4BACE,oBACA,uCAIJ,gBACE,YnBiuB4B,OmBhuB5B,enBguB4B,OmB/tB5B,anBguB4B,MH7fxB,UALI,SKvQN,yCiB8CJ,gBACE,YnB6tB4B,MmB5tB5B,enB4tB4B,MmB3tB5B,anB4tB4B,KHjgBxB,UALI,QKvQN,yCiBwDA,kCACE,yPCxEN,YACE,cACA,WpB+5BwC,OoB95BxC,apB+5BwC,MoB95BxC,cpB+5BwC,QoB75BxC,8BACE,WACA,mBAIJ,oBACE,cpBq5BwC,MoBp5BxC,eACA,iBAEA,sCACE,YACA,oBACA,cAIJ,kBACE,sCAEA,MpBq4BwC,IoBp4BxC,OpBo4BwC,IoBn4BxC,iBACA,mBACA,yCACA,+CACA,4BACA,2BACA,wBACA,OpBu4BwC,oDoBt4BxC,gBACA,yBAGA,iClB1BE,oBkB8BF,8BAEE,cpB83BsC,IoB33BxC,yBACE,OpBq3BsC,gBoBl3BxC,wBACE,apBi1BoC,QoBh1BpC,UACA,WpB+foB,kCoB5ftB,0BACE,iBpB3BM,QoB4BN,apB5BM,QoB8BN,yCAII,wPAIJ,sCAII,gKAKN,+CACE,iBpBhDM,QoBiDN,apBjDM,QoBsDJ,kPAIJ,2BACE,oBACA,YACA,QpB61BuC,GoBt1BvC,2FACE,eACA,QpBo1BqC,GoBt0B3C,aACE,apB+0BgC,MoB70BhC,+BACE,4KAEA,MpBy0B8B,IoBx0B9B,mBACA,0CACA,gClBhHA,kBeHE,WGqHF,qCHjHE,uCGyGJ,+BHxGM,iBGkHJ,qCACE,8JAGF,uCACE,oBpBw0B4B,aoBn0B1B,2JAKN,gCACE,cpBmzB8B,MoBlzB9B,eAEA,kDACE,oBACA,cAKN,mBACE,qBACA,apBiyBgC,KoB9xBlC,WACE,kBACA,sBACA,oBAIE,mDACE,oBACA,YACA,QpBkpBwB,IoB3oB1B,8EACE,kLClLN,YACE,WACA,cACA,UACA,+BACA,gBAEA,kBACE,UAIA,mDrBwgCuC,iDqBvgCvC,+CrBugCuC,iDqBpgCzC,8BACE,SAGF,kCACE,MrBy/BuC,KqBx/BvC,OrBw/BuC,KqBv/BvC,oBHzBF,iBlBkCQ,QqBPN,OrBw/BuC,EEpgCvC,mBeHE,WIkBF,4FACA,gBJfE,uCIMJ,kCJLM,iBIgBJ,yCHjCF,iBlBwhCyC,QqBl/BzC,2CACE,MrBk+B8B,KqBj+B9B,OrBk+B8B,MqBj+B9B,oBACA,OrBi+B8B,QqBh+B9B,iBrBi+B8B,sBqBh+B9B,2BnB7BA,mBmBkCF,8BACE,MrB89BuC,KqB79BvC,OrB69BuC,KkBhhCzC,iBlBkCQ,QqBmBN,OrB89BuC,EEpgCvC,mBeHE,WI4CF,4FACA,gBJzCE,uCIiCJ,8BJhCM,iBI0CJ,qCH3DF,iBlBwhCyC,QqBx9BzC,8BACE,MrBw8B8B,KqBv8B9B,OrBw8B8B,MqBv8B9B,oBACA,OrBu8B8B,QqBt8B9B,iBrBu8B8B,sBqBt8B9B,2BnBvDA,mBmB4DF,qBACE,oBAEA,2CACE,iBrB08BqC,0BqBv8BvC,uCACE,iBrBs8BqC,0BsB7hC3C,eACE,kBAEA,gGAGE,OtBkiCoC,gDsBjiCpC,WtBiiCoC,gDsBhiCpC,YtBiiCoC,KsB9hCtC,qBACE,kBACA,MACA,OACA,UACA,YACA,oBACA,gBACA,iBACA,uBACA,mBACA,oBACA,kDACA,qBLRE,WKSF,kDLLE,uCKTJ,qBLUM,iBKON,oEAEE,oBAEA,8FACE,oBAGF,oMAEE,YtBsgCkC,SsBrgClC,etBsgCkC,QsBngCpC,sGACE,YtBigCkC,SsBhgClC,etBigCkC,QsB7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DACA,8BACA,8BACA,wCDyFA,aCtGA,qBACA,qBACA,+BACA,2BACA,2BACA,qCACA,wCACA,4BACA,4BACA,sCACA,6DACA,8BACA,8BACA,wCDyFA,UCtGA,qBACA,qBACA,+BACA,2BACA,2BACA,qCACA,wCACA,4BACA,4BACA,sCACA,6DACA,8BACA,8BACA,wCDyFA,aCtGA,qBACA,qBACA,+BACA,2BACA,2BACA,qCACA,uCACA,4BACA,4BACA,sCACA,6DACA,8BACA,8BACA,wCDyFA,YCtGA,qBACA,qBACA,+BACA,2BACA,2BACA,qCACA,uCACA,4BACA,4BACA,sCACA,6DACA,8BACA,8BACA,wCDyFA,WCtGA,qBACA,qBACA,+BACA,2BACA,2BACA,qCACA,yCACA,4BACA,4BACA,sCACA,6DACA,8BACA,8BACA,wCDyFA,UCtGA,qBACA,qBACA,+BACA,2BACA,2BACA,qCACA,sCACA,4BACA,4BACA,sCACA,6DACA,8BACA,8BACA,wCDmHA,qBCvGA,wBACA,+BACA,2BACA,2BACA,qCACA,wCACA,4BACA,4BACA,sCACA,6DACA,iCACA,kCACA,wCACA,oBD0FA,uBCvGA,wBACA,+BACA,2BACA,2BACA,qCACA,yCACA,4BACA,4BACA,sCACA,6DACA,iCACA,kCACA,wCACA,oBD0FA,qBCvGA,wBACA,+BACA,2BACA,2BACA,qCACA,uCACA,4BACA,4BACA,sCACA,6DACA,iCACA,kCACA,wCACA,oBD0FA,kBCvGA,wBACA,+BACA,2BACA,2BACA,qCACA,wCACA,4BACA,4BACA,sCACA,6DACA,iCACA,kCACA,wCACA,oBD0FA,qBCvGA,wBACA,+BACA,2BACA,2BACA,qCACA,uCACA,4BACA,4BACA,sCACA,6DACA,iCACA,kCACA,wCACA,oBD0FA,oBCvGA,wBACA,+BACA,2BACA,2BACA,qCACA,uCACA,4BACA,4BACA,sCACA,6DACA,iCACA,kCACA,wCACA,oBD0FA,mBCvGA,wBACA,+BACA,2BACA,2BACA,qCACA,yCACA,4BACA,4BACA,sCACA,6DACA,iCACA,kCACA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,+BACA,0E9BxIE,qDeHE,We6IJ,oCfzII,uCeiIN,gBfhIQ,iBe0IN,sBACE,qBAGF,sBACE,qBACA,UACA,sDAMJ,qBACE,qBACA,YACA,aACA,sBACA,kDACA,4BACA,2BACA,qBAGF,mBACE,yCACA,gBvB1HE,yBuBsIA,kBAEI,iBACA,2BAEA,8BACE,mBAEA,6CACE,kBAGF,wCACE,kDACA,iDAIJ,qCACE,iBAGF,mCACE,wBACA,gBAGF,kCACE,aAGF,6BAEE,gBACA,aACA,YACA,sBACA,uBACA,8BACA,0CACA,oBACA,0Bf9NJ,WegOI,KAGA,+CACE,aAGF,6CACE,aACA,YACA,UACA,oBvB5LR,yBuBsIA,kBAEI,iBACA,2BAEA,8BACE,mBAEA,6CACE,kBAGF,wCACE,kDACA,iDAIJ,qCACE,iBAGF,mCACE,wBACA,gBAGF,kCACE,aAGF,6BAEE,gBACA,aACA,YACA,sBACA,uBACA,8BACA,0CACA,oBACA,0Bf9NJ,WegOI,KAGA,+CACE,aAGF,6CACE,aACA,YACA,UACA,oBvB5LR,yBuBsIA,kBAEI,iBACA,2BAEA,8BACE,mBAEA,6CACE,kBAGF,wCACE,kDACA,iDAIJ,qCACE,iBAGF,mCACE,wBACA,gBAGF,kCACE,aAGF,6BAEE,gBACA,aACA,YACA,sBACA,uBACA,8BACA,0CACA,oBACA,0Bf9NJ,WegOI,KAGA,+CACE,aAGF,6CACE,aACA,YACA,UACA,oBvB5LR,0BuBsIA,kBAEI,iBACA,2BAEA,8BACE,mBAEA,6CACE,kBAGF,wCACE,kDACA,iDAIJ,qCACE,iBAGF,mCACE,wBACA,gBAGF,kCACE,aAGF,6BAEE,gBACA,aACA,YACA,sBACA,uBACA,8BACA,0CACA,oBACA,0Bf9NJ,WegOI,KAGA,+CACE,aAGF,6CACE,aACA,YACA,UACA,oBvB5LR,0BuBsIA,mBAEI,iBACA,2BAEA,+BACE,mBAEA,8CACE,kBAGF,yCACE,kDACA,iDAIJ,sCACE,iBAGF,oCACE,wBACA,gBAGF,mCACE,aAGF,8BAEE,gBACA,aACA,YACA,sBACA,uBACA,8BACA,0CACA,oBACA,0Bf9NJ,WegOI,KAGA,gDACE,aAGF,8CACE,aACA,YACA,UACA,oBvB5LR,0BuBsIA,oBAEI,iBACA,2BAEA,gCACE,mBAEA,+CACE,kBAGF,0CACE,kDACA,iDAIJ,uCACE,iBAGF,qCACE,wBACA,gBAGF,oCACE,aAGF,+BAEE,gBACA,aACA,YACA,sBACA,uBACA,8BACA,0CACA,oBACA,0Bf9NJ,WegOI,KAGA,iDACE,aAGF,+CACE,aACA,YACA,UACA,oBAtDR,eAEI,iBACA,2BAEA,2BACE,mBAEA,0CACE,kBAGF,qCACE,kDACA,iDAIJ,kCACE,iBAGF,gCACE,wBACA,gBAGF,+BACE,aAGF,0BAEE,gBACA,aACA,YACA,sBACA,uBACA,8BACA,0CACA,oBACA,0Bf9NJ,WegOI,KAGA,4CACE,aAGF,0CACE,aACA,YACA,UACA,mBAiBZ,yCAGE,6CACA,mDACA,sDACA,+BACA,8BACA,oCACA,2DACA,+QAME,0CACE,+QCzRN,MAEE,2BACA,2BACA,kCACA,wBACA,2BACA,+CACA,gCACA,iDACA,uBACA,wFACA,iCACA,gCACA,uDACA,sBACA,mBACA,kBACA,mBACA,sCACA,gCAGA,kBACA,aACA,sBACA,YACA,6BACA,2BACA,qBACA,mCACA,2BACA,qE/BjBE,2C+BqBF,SACE,eACA,cAGF,kBACE,mBACA,sBAEA,8BACE,mB/BtBF,0DACA,2D+ByBA,6BACE,sB/BbF,8DACA,6D+BmBF,8DAEE,aAIJ,WAGE,cACA,wDACA,2BAGF,YACE,4CACA,iCAGF,eACE,oDACA,gBACA,oCAGF,sBACE,gBAIA,iBACE,qBAGF,sBACE,oCAQJ,aACE,kEACA,gBACA,+BACA,uCACA,4EAEA,yB/B7FE,wF+BkGJ,aACE,kEACA,+BACA,uCACA,yEAEA,wB/BxGE,wF+BkHJ,kBACE,qDACA,oDACA,oDACA,gBAEA,mCACE,mCACA,sCAIJ,mBACE,qDACA,oDAIF,kBACE,kBACA,MACA,QACA,SACA,OACA,2C/B1IE,iD+B8IJ,yCAGE,WAGF,wB/B3II,0DACA,2D+B+IJ,2B/BlII,8DACA,6D+B8IF,kBACE,0CxB3HA,yBwBuHJ,YAQI,aACA,mBAGA,kBAEE,YACA,gBAEA,wBACE,cACA,cAKA,mC/B3KJ,0BACA,6B+B6KM,iGAGE,0BAEF,oGAGE,6BAIJ,oC/B5KJ,yBACA,4B+B8KM,mGAGE,yBAEF,sGAGE,6BCpOZ,WAEE,2CACA,qCACA,+KACA,oDACA,oDACA,sDACA,6FACA,sCACA,mCACA,+CACA,8CACA,ySACA,uCACA,mDACA,+DACA,gTACA,+CACA,4EACA,uCACA,oCACA,6DACA,sDAIF,kBACE,kBACA,aACA,mBACA,WACA,4ErC2PI,UALI,KqCpPR,oCACA,gBACA,4CACA,ShCtBE,gBgCwBF,qBjB3BI,WiB4BJ,+BjBxBI,uCiBWN,kBjBVQ,iBiByBN,kCACE,uCACA,+CACA,gGAEA,yCACE,qDACA,iDAKJ,yBACE,cACA,yCACA,0CACA,iBACA,WACA,8CACA,4BACA,mDjBlDE,WiBmDF,wCjB/CE,uCiBsCJ,yBjBrCM,iBiBiDN,wBACE,UAGF,wBACE,UACA,wDACA,UACA,oDAIJ,kBACE,gBAGF,gBACE,gCACA,wCACA,+EAEA,8BhC/DE,yDACA,0DgCiEA,gDhClEA,+DACA,gEgCsEF,oCACE,aAIF,6BhC9DE,6DACA,4DgCiEE,yDhClEF,mEACA,kEgCsEA,iDhCvEA,6DACA,4DgC4EJ,gBACE,8EASA,qCACE,eAGF,iCACE,eACA,chCpHA,gBgCuHA,0DACA,4DAGE,gHhC3HF,gBgCqIA,8CACE,ySACA,gTC1JN,YAEE,6BACA,6BACA,oCAEA,qBACA,gCACA,yDACA,uCACA,6DAGA,aACA,eACA,sEACA,iDtC+QI,UALI,+BsCxQR,gBACA,0FAMA,kCACE,iDAEA,0CACE,WACA,kDACA,yCACA,uFAIJ,wBACE,6CCrCJ,YAEE,mCACA,oCvC4RI,0BALI,KuCrRR,4CACA,sCACA,qDACA,qDACA,uDACA,wDACA,gDACA,2DACA,wDACA,iDACA,yEACA,mCACA,mCACA,6CACA,0DACA,oDACA,8DAGA,ahCpBA,eACA,gBgCuBF,WACE,kBACA,cACA,sEvCgQI,UALI,+BuCzPR,iCAEA,yCACA,iFnBpBI,WmBqBJ,mHnBjBI,uCmBQN,WnBPQ,iBmBkBN,iBACE,UACA,uCACA,qBACA,+CACA,qDAGF,iBACE,UACA,uCACA,+CACA,QpCouCgC,EoCnuChC,iDAGF,qCAEE,UACA,wClBtDF,iBkBuDuB,+BACrB,sDAGF,yCAEE,0CACA,oBACA,kDACA,wDAKF,wCACE,YpCusCgC,kCoClsC9B,kClC9BF,0DACA,6DkCmCE,iClClDF,2DACA,8DkCkEJ,eClGE,kCACA,mCxC0RI,0BALI,QwCnRR,0DDmGF,eCtGE,kCACA,mCxC0RI,0BALI,SwCnRR,0DCFF,OAEE,6BACA,6BzCuRI,qBALI,OyChRR,4BACA,uBACA,iCAGA,qBACA,4DzC+QI,UALI,0ByCxQR,wCACA,cACA,4BACA,kBACA,mBACA,wBpCJE,4CoCSF,aACE,aAKJ,YACE,kBACA,SChCF,OAEE,2BACA,6BACA,6BACA,+BACA,0BACA,qCACA,6EACA,kDACA,+BAGA,kBACA,4DACA,4CACA,4BACA,oCACA,8BrCHE,4CqCQJ,eAEE,cAIF,YACE,YvC6kB4B,IuC5kB5B,iCAQF,mBACE,ctC0B4B,QsCvB5B,8BACE,kBACA,MACA,QACA,UACA,uBAQF,eACE,kDACA,2CACA,yDACA,uDAJF,iBACE,oDACA,6CACA,2DACA,yDAJF,eACE,kDACA,2CACA,yDACA,uDAJF,YACE,+CACA,wCACA,sDACA,oDAJF,eACE,kDACA,2CACA,yDACA,uDAJF,cACE,iDACA,0CACA,wDACA,sDAJF,aACE,gDACA,yCACA,uDACA,qDAJF,YACE,+CACA,wCACA,sDACA,oDC5DF,gCACE,yBxCmhDgC,MwC9gDpC,4BAGE,2B3CkRI,wBALI,Q2C3QR,yCACA,qDACA,qDACA,8BACA,8BACA,8CAGA,aACA,iCACA,gB3CsQI,UALI,6B2C/PR,uCtCRE,+CsCaJ,cACE,aACA,sBACA,uBACA,gBACA,mCACA,kBACA,mBACA,2CvBxBI,WuByBJ,kCvBrBI,uCuBYN,cvBXQ,iBuBuBR,2NAEE,oEAGF,4BACE,iBAGF,0CACE,WAIA,uBACE,kDAGE,uCAJJ,uBAKM,gBC3DR,YAEE,4CACA,sCACA,qDACA,qDACA,uDACA,uCACA,wCACA,wDACA,6DACA,uDACA,0DACA,yDACA,0DACA,+CACA,mCACA,mCACA,6CAGA,aACA,sBAGA,eACA,gBvCXE,iDuCeJ,qBACE,qBACA,sBAEA,8CAEE,oCACA,0BASJ,wBACE,WACA,wCACA,mBAGA,4DAEE,UACA,8CACA,qBACA,sDAGF,+BACE,+CACA,uDAQJ,iBACE,kBACA,cACA,gFACA,iCAEA,yCACA,iFAEA,6BvCvDE,+BACA,gCuC0DF,4BvC7CE,mCACA,kCuCgDF,oDAEE,0CACA,oBACA,kDAIF,wBACE,UACA,wCACA,gDACA,sDAIF,kCACE,mBAEA,yCACE,sDACA,mDAaF,uBACE,mBAGE,qEvCvDJ,6DAZA,0BuCwEI,qEvCxEJ,2DAYA,4BuCiEI,+CACE,aAGF,yDACE,mDACA,oBAEA,gEACE,uDACA,oDhCtFR,yBgC8DA,0BACE,mBAGE,wEvCvDJ,6DAZA,0BuCwEI,wEvCxEJ,2DAYA,4BuCiEI,kDACE,aAGF,4DACE,mDACA,oBAEA,mEACE,uDACA,qDhCtFR,yBgC8DA,0BACE,mBAGE,wEvCvDJ,6DAZA,0BuCwEI,wEvCxEJ,2DAYA,4BuCiEI,kDACE,aAGF,4DACE,mDACA,oBAEA,mEACE,uDACA,qDhCtFR,yBgC8DA,0BACE,mBAGE,wEvCvDJ,6DAZA,0BuCwEI,wEvCxEJ,2DAYA,4BuCiEI,kDACE,aAGF,4DACE,mDACA,oBAEA,mEACE,uDACA,qDhCtFR,0BgC8DA,0BACE,mBAGE,wEvCvDJ,6DAZA,0BuCwEI,wEvCxEJ,2DAYA,4BuCiEI,kDACE,aAGF,4DACE,mDACA,oBAEA,mEACE,uDACA,qDhCtFR,0BgC8DA,2BACE,mBAGE,yEvCvDJ,6DAZA,0BuCwEI,yEvCxEJ,2DAYA,4BuCiEI,mDACE,aAGF,6DACE,mDACA,oBAEA,oEACE,uDACA,qDhCtFR,0BgC8DA,4BACE,mBAGE,0EvCvDJ,6DAZA,0BuCwEI,0EvCxEJ,2DAYA,4BuCiEI,oDACE,aAGF,8DACE,mDACA,oBAEA,qEACE,uDACA,qDAcZ,kBvChJI,gBuCmJF,mCACE,mDAEA,8CACE,sBAaJ,yBACE,uDACA,gDACA,8DACA,6DACA,iEACA,8DACA,kEACA,0DACA,2DACA,qEAVF,2BACE,yDACA,kDACA,gEACA,6DACA,mEACA,8DACA,oEACA,4DACA,6DACA,uEAVF,yBACE,uDACA,gDACA,8DACA,6DACA,iEACA,8DACA,kEACA,0DACA,2DACA,qEAVF,sBACE,oDACA,6CACA,2DACA,6DACA,8DACA,8DACA,+DACA,uDACA,wDACA,kEAVF,yBACE,uDACA,gDACA,8DACA,6DACA,iEACA,8DACA,kEACA,0DACA,2DACA,qEAVF,wBACE,sDACA,+CACA,6DACA,6DACA,gEACA,8DACA,iEACA,yDACA,0DACA,oEAVF,uBACE,qDACA,8CACA,4DACA,6DACA,+DACA,8DACA,gEACA,wDACA,yDACA,mEAVF,sBACE,oDACA,6CACA,2DACA,6DACA,8DACA,8DACA,+DACA,uDACA,wDACA,kEC5LJ,WAEE,2BACA,qVACA,4BACA,mCACA,oEACA,gCACA,sCACA,wEAGA,uBACA,MzCiDgB,OyChDhB,OzCgDgB,OyC/ChB,oBACA,gCACA,8EACA,SxCJE,oBwCMF,oCAGA,iBACE,gCACA,qBACA,0CAGF,iBACE,UACA,4CACA,0CAGF,wCAEE,oBACA,iBACA,6CAQJ,iBAHE,wCASE,gCATF,wCCjDF,OAEE,wBACA,8BACA,6BACA,2BACA,4B9CyRI,qBALI,S8ClRR,mBACA,iDACA,gDACA,4DACA,kDACA,4CACA,mDACA,wDACA,mEAGA,gCACA,e9C2QI,UALI,0B8CpQR,4BACA,oBACA,oCACA,4BACA,uEACA,sCzCRE,4CyCWF,eACE,UAGF,kBACE,aAIJ,iBACE,wBAEA,kBACA,+BACA,kBACA,eACA,oBAEA,mCACE,sCAIJ,cACE,aACA,mBACA,4DACA,mCACA,2CACA,4BACA,qFzChCE,0FACA,2FyCkCF,yBACE,kDACA,sCAIJ,YACE,kCACA,qBC9DF,OAEE,wBACA,wBACA,2BACA,0BACA,0BACA,oBACA,4D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,gBACA,sFACA,4BAGF,+BACE,QACA,OACA,kCACA,gBACA,mFACA,2BAGF,sDAEE,eAGF,8DAGE,oB3C5BJ,yB2C/BF,cAiEM,4BACA,+BACA,0CAEA,gCACE,aAGF,8BACE,aACA,YACA,UACA,mBAEA,2C3CnCN,4B2C5CF,cAEI,eACA,SACA,mCACA,aACA,sBACA,eACA,gCACA,kBACA,wCACA,4BACA,UnC5BA,WmC8BA,gCnC1BA,gEmCYJ,cnCXM,iBRuDJ,4B2C5BE,8BACE,MACA,OACA,gCACA,qFACA,4BAGF,4BACE,MACA,QACA,gCACA,oFACA,2BAGF,4BACE,MACA,QACA,OACA,kCACA,gBACA,sFACA,4BAGF,+BACE,QACA,OACA,kCACA,gBACA,mFACA,2BAGF,sDAEE,eAGF,8DAGE,oB3C5BJ,yB2C/BF,cAiEM,4BACA,+BACA,0CAEA,gCACE,aAGF,8BACE,aACA,YACA,UACA,mBAEA,2C3CnCN,6B2C5CF,cAEI,eACA,SACA,mCACA,aACA,sBACA,eACA,gCACA,kBACA,wCACA,4BACA,UnC5BA,WmC8BA,gCnC1BA,iEmCYJ,cnCXM,iBRuDJ,6B2C5BE,8BACE,MACA,OACA,gCACA,qFACA,4BAGF,4BACE,MACA,QACA,gCACA,oFACA,2BAGF,4BACE,MACA,QACA,OACA,kCACA,gBACA,sFACA,4BAGF,+BACE,QACA,OACA,kCACA,gBACA,mFACA,2BAGF,sDAEE,eAGF,8DAGE,oB3C5BJ,0B2C/BF,cAiEM,4BACA,+BACA,0CAEA,gCACE,aAGF,8BACE,aACA,YACA,UACA,mBAEA,2C3CnCN,6B2C5CF,eAEI,eACA,SACA,mCACA,aACA,sBACA,eACA,gCACA,kBACA,wCACA,4BACA,UnC5BA,WmC8BA,gCnC1BA,iEmCYJ,enCXM,iBRuDJ,6B2C5BE,+BACE,MACA,OACA,gCACA,qFACA,4BAGF,6BACE,MACA,QACA,gCACA,oFACA,2BAGF,6BACE,MACA,QACA,OACA,kCACA,gBACA,sFACA,4BAGF,gCACE,QACA,OACA,kCACA,gBACA,mFACA,2BAGF,wDAEE,eAGF,iEAGE,oB3C5BJ,0B2C/BF,eAiEM,4BACA,+BACA,0CAEA,iCACE,aAGF,+BACE,aACA,YACA,UACA,mBAEA,2C3CnCN,6B2C5CF,gBAEI,eACA,SACA,mCACA,aACA,sBACA,eACA,gCACA,kBACA,wCACA,4BACA,UnC5BA,WmC8BA,gCnC1BA,iEmCYJ,gBnCXM,iBRuDJ,6B2C5BE,gCACE,MACA,OACA,gCACA,qFACA,4BAGF,8BACE,MACA,QACA,gCACA,oFACA,2BAGF,8BACE,MACA,QACA,OACA,kCACA,gBACA,sFACA,4BAGF,iCACE,QACA,OACA,kCACA,gBACA,mFACA,2BAGF,0DAEE,eAGF,oEAGE,oB3C5BJ,0B2C/BF,gBAiEM,4BACA,+BACA,0CAEA,kCACE,aAGF,gCACE,aACA,YACA,UACA,mBAEA,2CA/ER,WAEI,eACA,SACA,mCACA,aACA,sBACA,eACA,gCACA,kBACA,wCACA,4BACA,UnC5BA,WmC8BA,+BnC1BA,uCmCYJ,WnCXM,iBmC2BF,2BACE,MACA,OACA,gCACA,qFACA,4BAGF,yBACE,MACA,QACA,gCACA,oFACA,2BAGF,yBACE,MACA,QACA,OACA,kCACA,gBACA,sFACA,4BAGF,4BACE,QACA,OACA,kCACA,gBACA,mFACA,2BAGF,gDAEE,eAGF,qDAGE,mBA2BR,oBPpHE,eACA,MACA,OACA,Q7ComCkC,K6CnmClC,YACA,aACA,iB7CUS,K6CPT,mCACA,iC7C09CkC,GoD52CpC,kBACE,aACA,mBACA,8BACA,oEAEA,6BACE,sFACA,oDACA,sDACA,uDAIJ,iBACE,gBACA,kDAGF,gBACE,YACA,oEACA,gBChJF,aACE,qBACA,eACA,sBACA,YACA,8BACA,QrDyyCkC,GqDvyClC,yBACE,qBACA,WAKJ,gBACE,gBAGF,gBACE,gBAGF,gBACE,iBAKA,+BACE,mDAIJ,4BACE,IACE,QrD4wCgC,IqDxwCpC,kBACE,+EACA,oBACA,8CAGF,4BACE,KACE,wBH9CF,iBACE,cACA,WACA,WIFF,iBACE,sBACA,wEAFF,mBACE,sBACA,yEAFF,iBACE,sBACA,uEAFF,cACE,sBACA,wEAFF,iBACE,sBACA,uEAFF,gBACE,sBACA,uEAFF,eACE,sBACA,yEAFF,cACE,sBACA,sECHF,cACE,wEACA,kGAGE,wCAGE,8DACA,wFATN,gBACE,0EACA,oGAGE,4CAGE,8DACA,wFATN,cACE,wEACA,kGAGE,wCAGE,8DACA,wFATN,WACE,qEACA,+FAGE,kCAGE,+DACA,yFATN,cACE,wEACA,kGAGE,wCAGE,+DACA,yFATN,aACE,uEACA,iGAGE,sCAGE,8DACA,wFATN,YACE,sEACA,gGAGE,oCAGE,gEACA,0FATN,WACE,qEACA,+FAGE,kCAGE,6DACA,uFAOR,oBACE,+EACA,yGAGE,oDAEE,kFACA,4GC1BN,kBACE,UAEA,kJCHF,WACE,oBACA,IzD6c4B,QyD5c5B,mBACA,kFACA,sBzD2c4B,MyD1c5B,2BAEA,eACE,cACA,MzDuc0B,IyDtc1B,OzDsc0B,IyDrc1B,kBxCIE,WwCHF,0BxCOE,uCwCZJ,exCaM,iBwCDJ,8DACE,mECnBN,OACE,kBACA,WAEA,eACE,cACA,mCACA,WAGF,SACE,kBACA,MACA,OACA,WACA,YAKF,WACE,wBADF,WACE,uBADF,YACE,0BADF,YACE,kCCrBJ,WACE,eACA,MACA,QACA,OACA,Q3DimCkC,K2D9lCpC,cACE,eACA,QACA,SACA,OACA,Q3DylCkC,K2DjlChC,YACE,gBACA,MACA,Q3D6kC8B,K2D1kChC,eACE,gBACA,SACA,Q3DukC8B,KSxiChC,yBkDxCA,eACE,gBACA,MACA,Q3D6kC8B,K2D1kChC,kBACE,gBACA,SACA,Q3DukC8B,MSxiChC,yBkDxCA,eACE,gBACA,MACA,Q3D6kC8B,K2D1kChC,kBACE,gBACA,SACA,Q3DukC8B,MSxiChC,yBkDxCA,eACE,gBACA,MACA,Q3D6kC8B,K2D1kChC,kBACE,gBACA,SACA,Q3DukC8B,MSxiChC,0BkDxCA,eACE,gBACA,MACA,Q3D6kC8B,K2D1kChC,kBACE,gBACA,SACA,Q3DukC8B,MSxiChC,0BkDxCA,gBACE,gBACA,MACA,Q3D6kC8B,K2D1kChC,mBACE,gBACA,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I,mBAIJ,YACC,iCAGD,KACC,iCAGD,aACC,qCAGD,kBACC,wCAGD,aACC,uBAGD,cACC,wBAGD,oBACC,sBAGD,aACC,MD7FS,QCiGV,cACC,cAGD,UACC,oBAGD,kBACC,MoEpJY,QpEuJb,QACC,eAGD,QACC,eAGD,OACC,cAGD,OACC,cAGD,OACC,cAGD,YACC,cAGD,WACC,yBAGD,YACC,yBAGD,YACC,yBAGD,eACC,8BAGD,cACC,4BAQD,KACC,eAEA,yKAID,YACC,8CAGD,GACC,oCAGD,iBACC,iBACA,mBACA,WACA,YACA,kBAUD,2CACC,mDAGD,UACC,sBAGD,YACC,gCAGD,SACC,kBAGD,SACC,oBAGD,yBACC,2BAGD,wBACC,2BAUD,IACC,qBACA,0BACA,sBACA,wBACA,qBACA,2BAGD,WACC,qBAOD,gBACC,aACA,sBACA,SAGD,qBACC,kBAGD,UACC,gBAsBD,aACC,WACA,0BAGD,mBACC,WAGD,6GACC,cAGD,2BACC,cAOD,yBACC,kBACA,UACA,WACA,sBACA,kBAGD,yBACC,QACA,SACA,kBACA,UACA,WACA,yBACA,kBAGD,WACC,QACA,SACA,kBACA,UACA,WACA,kBAKD,+GAII,iEAIJ,uBACI,2CoErVJ,eACC,sBAGD,SACC,oCAGD,SACC,sBAGD,kBACC,sBAGD,kBACC,oCAGD,4BACC,oCAGD,kBACC,oCAGD,4BACC,oCAGD,0BACC,wDAGD,yBACC,oCAGD,iBACC,yBAGD,6BACC,gCAGD,qBACC,yBAGD,eACC,iCAGD,gBACC,yBACA,oCACA,MA5FY","file":"light.css"} \ No newline at end of file diff --git a/routes/baseRouter.js b/routes/baseRouter.js index 9a3e6b4..99c5dac 100644 --- a/routes/baseRouter.js +++ b/routes/baseRouter.js @@ -30,8 +30,14 @@ router.get("/", asyncHandler(async (req, res, next) => { let totalRemoteBalance = new Decimal(0); localChannelsResponse.channels.forEach((chan) => { - totalLocalBalance = totalLocalBalance.plus(parseInt(chan.local_balance)); - totalRemoteBalance = totalRemoteBalance.plus(parseInt(chan.remote_balance)); + const localBalance = parseInt(chan.local_balance) + const remoteBalance = parseInt(chan.remote_balance) + if (!isNaN(localBalance)) { + totalLocalBalance = totalLocalBalance.plus(localBalance); + } + if (!isNaN(remoteBalance)) { + totalRemoteBalance = totalRemoteBalance.plus(remoteBalance); + } }); res.locals.totalLocalBalance = totalLocalBalance; @@ -233,7 +239,7 @@ router.post("/setup", asyncHandler(async (req, res, next) => { global.adminPassword = pwd; - let pwdHash = await passwordUtils.hash(pwd); + let pwdHash = passwordUtils.hash(pwd); global.adminCredentials = {}; global.adminCredentials.adminPasswordHash = pwdHash; @@ -897,23 +903,36 @@ router.get("/forwarding-history", function(req, res) { var maxFee = 0; var maxValueTransferred = 0; + + var maxPPM = 0; + var accumulatedPPM = 0; /// for the average var inChannelsById = {}; var outChannelsById = {}; allFilteredEvents.forEach(function(event) { var valueTransferredIn = parseInt(event.amt_in); var valueTransferredOut = parseInt(event.amt_out); - var fee = parseInt(event.fee); + var feeMsat = parseInt(event.fee_msat); + var fee = parseInt(feeMsat) / 1000; + /// sometimes the effective ppm is almost but not quite the actual value + /// just round it, or display 2 decimal places + var effectiveFeerate = Math.round((feeMsat / event.amt_in_msat)*1e6) + event.effectiveFeerate = effectiveFeerate + + if (effectiveFeerate > maxPPM) { + maxPPM = effectiveFeerate + } + accumulatedPPM += effectiveFeerate - totalValueTransferred += valueTransferredIn; + totalValueTransferred += valueTransferredOut; totalFees += fee; if (fee > maxFee) { maxFee = fee; } - if (valueTransferredIn > maxValueTransferred) { - maxValueTransferred = valueTransferredIn; + if (valueTransferredOut > maxValueTransferred) { + maxValueTransferred = valueTransferredOut; } @@ -949,7 +968,7 @@ router.get("/forwarding-history", function(req, res) { } } - inChannels.sort(function(a, b) { + const chanSort = function(a, b) { var aVal = a.totalValueTransferred; var bVal = b.totalValueTransferred; var valDiff = bVal - aVal; @@ -992,7 +1011,9 @@ router.get("/forwarding-history", function(req, res) { } else { return sortFunc(valDiff, feeDiff, chanIdDiff); } - }); + } + inChannels.sort(chanSort); + outChannels.sort(chanSort); res.locals.totalFees = totalFees; res.locals.totalValueTransferred = totalValueTransferred; @@ -1000,6 +1021,8 @@ router.get("/forwarding-history", function(req, res) { res.locals.avgValueTransferred = totalValueTransferred / allEvents.length; res.locals.maxFee = maxFee; res.locals.maxValueTransferred = maxValueTransferred; + res.locals.maxPPM = maxPPM; + res.locals.avgPPM = (accumulatedPPM / allEvents.length).toFixed(2); res.locals.inChannels = inChannels; res.locals.outChannels = outChannels; @@ -1028,7 +1051,9 @@ router.get("/changeSetting", function(req, res) { if (req.query.name) { req.session[req.query.name] = req.query.value; - res.cookie('user-setting-' + req.query.name, req.query.value); + res.cookie('user-setting-' + req.query.name, req.query.value, { + sameSite: 'Strict' + }); } res.redirect(req.headers.referer); @@ -1309,6 +1334,8 @@ router.get("/channels", function(req, res) { })); Promise.all(promises.map(utils.reflectPromise)).then(function() { + // like literally how is this even defined? + delete res.locals.localChannels; res.render("channels"); }).catch(function(err) { @@ -1702,14 +1729,14 @@ router.get("/manage-nodes", function(req, res) { }); router.post("/manage-nodes", asyncHandler(async (req, res, next) => { + // copied to res.locals on error, so form can be re-filled + let userFormParams = {}; try { let inputType = req.body.inputType; res.locals.inputType = inputType; res.locals.setupActive = (!global.adminCredentials.lndNodes || global.adminCredentials.lndNodes.length == 0); - // copied to res.locals on error, so form can be re-filled - let userFormParams = {}; let newLndNode = null; @@ -1898,7 +1925,7 @@ router.post("/manage-nodes", asyncHandler(async (req, res, next) => { res.locals.pageErrors.push(utils.logError("29834y0ehfe", err)); - for (var prop in userFormParams) { + for (const prop in userFormParams) { if (userFormParams.hasOwnProperty(prop)) { res.locals[prop] = userFormParams[prop]; } diff --git a/rpc.proto b/rpc.proto index ac07a40..6356a6b 100644 --- a/rpc.proto +++ b/rpc.proto @@ -32,8 +32,9 @@ service Lightning { rpc WalletBalance (WalletBalanceRequest) returns (WalletBalanceResponse); /* lncli: `channelbalance` - ChannelBalance returns the total funds available across all open channels - in satoshis. + ChannelBalance returns a report on the total funds across all open channels, + categorized in local/remote, pending local/remote and unsettled local/remote + balances. */ rpc ChannelBalance (ChannelBalanceRequest) returns (ChannelBalanceResponse); @@ -57,7 +58,7 @@ service Lightning { /* lncli: `sendcoins` SendCoins executes a request to send coins to a particular address. Unlike SendMany, this RPC call only allows creating a single output at a time. If - neither target_conf, or sat_per_byte are set, then the internal wallet will + neither target_conf, or sat_per_vbyte are set, then the internal wallet will consult its fee model to determine a fee for the default confirmation target. */ @@ -81,7 +82,7 @@ service Lightning { /* lncli: `sendmany` SendMany handles a request for a transaction that creates multiple specified - outputs in parallel. If neither target_conf, or sat_per_byte are set, then + outputs in parallel. If neither target_conf, or sat_per_vbyte are set, then the internal wallet will consult its fee model to determine a fee for the default confirmation target. */ @@ -100,8 +101,10 @@ service Lightning { rpc SignMessage (SignMessageRequest) returns (SignMessageResponse); /* lncli: `verifymessage` - VerifyMessage verifies a signature over a msg. The signature must be - zbase32 encoded and signed by an active node in the resident node's + VerifyMessage verifies a signature over a message and recovers the signer's + public key. The signature is only deemed valid if the recovered public key + corresponds to a node key in the public Lightning network. The signature + must be zbase32 encoded and signed by an active node in the resident node's channel database. In addition to returning the validity of the signature, VerifyMessage also returns the recovered pubkey from the signature. */ @@ -140,6 +143,13 @@ service Lightning { */ rpc GetInfo (GetInfoRequest) returns (GetInfoResponse); + /* lncli: 'getdebuginfo' + GetDebugInfo returns debug information concerning the state of the daemon + and its subsystems. This includes the full configuration and the latest log + entries from the log file. + */ + rpc GetDebugInfo (GetDebugInfoRequest) returns (GetDebugInfoResponse); + /** lncli: `getrecoveryinfo` GetRecoveryInfo returns information concerning the recovery mode including whether it's in a recovery mode, whether the recovery is finished, and the @@ -199,6 +209,16 @@ service Lightning { */ rpc OpenChannel (OpenChannelRequest) returns (stream OpenStatusUpdate); + /* lncli: `batchopenchannel` + BatchOpenChannel attempts to open multiple single-funded channels in a + single transaction in an atomic way. This means either all channel open + requests succeed at once or all attempts are aborted if any of them fail. + This is the safer variant of using PSBTs to manually fund a batch of + channels through the OpenChannel RPC. + */ + rpc BatchOpenChannel (BatchOpenChannelRequest) + returns (BatchOpenChannelResponse); + /* FundingStateStep is an advanced funding related call that allows the caller to either execute some preparatory steps for a funding workflow, or @@ -309,7 +329,7 @@ service Lightning { optionally specify the add_index and/or the settle_index. If the add_index is specified, then we'll first start by sending add invoice events for all invoices with an add_index greater than the specified value. If the - settle_index is specified, the next, we'll send out all settle events for + settle_index is specified, then next, we'll send out all settle events for invoices with a settle_index greater than the specified value. One or both of these fields can be set. If no fields are set, then we'll only send out the latest add/settle events. @@ -328,8 +348,15 @@ service Lightning { */ rpc ListPayments (ListPaymentsRequest) returns (ListPaymentsResponse); - /* - DeleteAllPayments deletes all outgoing payments from DB. + /* lncli: `deletepayments` + DeletePayment deletes an outgoing payment from DB. Note that it will not + attempt to delete an In-Flight payment, since that would be unsafe. + */ + rpc DeletePayment (DeletePaymentRequest) returns (DeletePaymentResponse); + + /* lncli: `deletepayments --all` + DeleteAllPayments deletes all outgoing payments from DB. Note that it will + not attempt to delete In-Flight payments, since that would be unsafe. */ rpc DeleteAllPayments (DeleteAllPaymentsRequest) returns (DeleteAllPaymentsResponse); @@ -425,8 +452,9 @@ service Lightning { /* lncli: `fwdinghistory` ForwardingHistory allows the caller to query the htlcswitch for a record of all HTLCs forwarded within the target time range, and integer offset - within that time range. If no time-range is specified, then the first chunk - of the past 24 hrs of forwarding history are returned. + within that time range, for a maximum number of events. If no maximum number + of events is specified, up to 100 events will be returned. If no time-range + is specified, then events will be returned in the order that they occured. A list of forwarding events are returned. The size of each forwarding event is 40 bytes, and the max message size able to be returned in gRPC is 4 MiB. @@ -458,7 +486,7 @@ service Lightning { rpc ExportAllChannelBackups (ChanBackupExportRequest) returns (ChanBackupSnapshot); - /* + /* lncli: `verifychanbackup` VerifyChanBackup allows a caller to verify the integrity of a channel backup snapshot. This method will accept either a packed Single or a packed Multi. Specifying both will result in an error. @@ -513,6 +541,108 @@ service Lightning { */ rpc ListPermissions (ListPermissionsRequest) returns (ListPermissionsResponse); + + /* + CheckMacaroonPermissions checks whether a request follows the constraints + imposed on the macaroon and that the macaroon is authorized to follow the + provided permissions. + */ + rpc CheckMacaroonPermissions (CheckMacPermRequest) + returns (CheckMacPermResponse); + + /* + RegisterRPCMiddleware adds a new gRPC middleware to the interceptor chain. A + gRPC middleware is software component external to lnd that aims to add + additional business logic to lnd by observing/intercepting/validating + incoming gRPC client requests and (if needed) replacing/overwriting outgoing + messages before they're sent to the client. When registering the middleware + must identify itself and indicate what custom macaroon caveats it wants to + be responsible for. Only requests that contain a macaroon with that specific + custom caveat are then sent to the middleware for inspection. The other + option is to register for the read-only mode in which all requests/responses + are forwarded for interception to the middleware but the middleware is not + allowed to modify any responses. As a security measure, _no_ middleware can + modify responses for requests made with _unencumbered_ macaroons! + */ + rpc RegisterRPCMiddleware (stream RPCMiddlewareResponse) + returns (stream RPCMiddlewareRequest); + + /* lncli: `sendcustom` + SendCustomMessage sends a custom peer message. + */ + rpc SendCustomMessage (SendCustomMessageRequest) + returns (SendCustomMessageResponse); + + /* lncli: `subscribecustom` + SubscribeCustomMessages subscribes to a stream of incoming custom peer + messages. + + To include messages with type outside of the custom range (>= 32768) lnd + needs to be compiled with the `dev` build tag, and the message type to + override should be specified in lnd's experimental protocol configuration. + */ + rpc SubscribeCustomMessages (SubscribeCustomMessagesRequest) + returns (stream CustomMessage); + + /* lncli: `listaliases` + ListAliases returns the set of all aliases that have ever existed with + their confirmed SCID (if it exists) and/or the base SCID (in the case of + zero conf). + */ + rpc ListAliases (ListAliasesRequest) returns (ListAliasesResponse); + + /* + LookupHtlcResolution retrieves a final htlc resolution from the database. + If the htlc has no final resolution yet, a NotFound grpc status code is + returned. + */ + rpc LookupHtlcResolution (LookupHtlcResolutionRequest) + returns (LookupHtlcResolutionResponse); +} + +message LookupHtlcResolutionRequest { + uint64 chan_id = 1; + + uint64 htlc_index = 2; +} + +message LookupHtlcResolutionResponse { + // Settled is true is the htlc was settled. If false, the htlc was failed. + bool settled = 1; + + // Offchain indicates whether the htlc was resolved off-chain or on-chain. + bool offchain = 2; +} + +message SubscribeCustomMessagesRequest { +} + +message CustomMessage { + // Peer from which the message originates + bytes peer = 1; + + // Message type. This value will be in the custom range (>= 32768). + uint32 type = 2; + + // Raw message data + bytes data = 3; +} + +message SendCustomMessageRequest { + // Peer to send the message to + bytes peer = 1; + + // Message type. This value needs to be in the custom range (>= 32768). + // To send a type < custom range, lnd needs to be compiled with the `dev` + // build tag, and the message type to override should be specified in lnd's + // experimental protocol configuration. + uint32 type = 2; + + // Raw message data. + bytes data = 3; +} + +message SendCustomMessageResponse { } message Utxo { @@ -535,6 +665,39 @@ message Utxo { int64 confirmations = 6; } +enum OutputScriptType { + SCRIPT_TYPE_PUBKEY_HASH = 0; + SCRIPT_TYPE_SCRIPT_HASH = 1; + SCRIPT_TYPE_WITNESS_V0_PUBKEY_HASH = 2; + SCRIPT_TYPE_WITNESS_V0_SCRIPT_HASH = 3; + SCRIPT_TYPE_PUBKEY = 4; + SCRIPT_TYPE_MULTISIG = 5; + SCRIPT_TYPE_NULLDATA = 6; + SCRIPT_TYPE_NON_STANDARD = 7; + SCRIPT_TYPE_WITNESS_UNKNOWN = 8; + SCRIPT_TYPE_WITNESS_V1_TAPROOT = 9; +} + +message OutputDetail { + // The type of the output + OutputScriptType output_type = 1; + + // The address + string address = 2; + + // The pkscript in hex + string pk_script = 3; + + // The output index used in the raw transaction + int64 output_index = 4; + + // The value of the output coin in satoshis + int64 amount = 5; + + // Denotes if the output is controlled by the internal wallet + bool is_our_address = 6; +} + message Transaction { // The transaction hash string tx_hash = 1; @@ -557,15 +720,23 @@ message Transaction { // Fees paid for this transaction int64 total_fees = 7; - // Addresses that received funds for this transaction - repeated string dest_addresses = 8; + // Addresses that received funds for this transaction. Deprecated as it is + // now incorporated in the output_details field. + repeated string dest_addresses = 8 [deprecated = true]; + + // Outputs that received funds for this transaction + repeated OutputDetail output_details = 11; // The raw transaction hex. string raw_tx_hex = 9; // A label that was optionally set on transaction broadcast. string label = 10; + + // PreviousOutpoints/Inputs of this transaction. + repeated PreviousOutPoint previous_outpoints = 12; } + message GetTransactionsRequest { /* The height from which to list transactions, inclusive. If this value is @@ -581,6 +752,9 @@ message GetTransactionsRequest { default to this option. */ int32 end_height = 2; + + // An optional filter to only include transactions relevant to an account. + string account = 3; } message TransactionDetails { @@ -665,7 +839,8 @@ message SendRequest { The maximum number of satoshis that will be paid as a fee of the payment. This value can be represented either as a percentage of the amount being sent, or as a fixed amount of the maximum fee the user is willing the pay to - send the payment. + send the payment. If not specified, lnd will use a default value of 100% + fees for small amounts (<=1k sat) or 5% fees for larger amounts. */ FeeLimit fee_limit = 8; @@ -707,6 +882,12 @@ message SendRequest { fallback. */ repeated FeatureBit dest_features = 15; + + /* + The payment address of the generated invoice. This is also called + payment secret in specifications (e.g. BOLT 11). + */ + bytes payment_addr = 16; } message SendResponse { @@ -782,6 +963,17 @@ message ChannelAcceptRequest { // A bit-field which the initiator uses to specify proposed channel // behavior. uint32 channel_flags = 13; + + // The commitment type the initiator wishes to use for the proposed channel. + CommitmentType commitment_type = 14; + + // Whether the initiator wants to open a zero-conf channel via the channel + // type. + bool wants_zero_conf = 15; + + // Whether the initiator wants to use the scid-alias channel type. This is + // separate from the feature bit. + bool wants_scid_alias = 16; } message ChannelAcceptResponse { @@ -790,6 +982,65 @@ message ChannelAcceptResponse { // The pending channel id to which this response applies. bytes pending_chan_id = 2; + + /* + An optional error to send the initiating party to indicate why the channel + was rejected. This field *should not* contain sensitive information, it will + be sent to the initiating party. This field should only be set if accept is + false, the channel will be rejected if an error is set with accept=true + because the meaning of this response is ambiguous. Limited to 500 + characters. + */ + string error = 3; + + /* + The upfront shutdown address to use if the initiating peer supports option + upfront shutdown script (see ListPeers for the features supported). Note + that the channel open will fail if this value is set for a peer that does + not support this feature bit. + */ + string upfront_shutdown = 4; + + /* + The csv delay (in blocks) that we require for the remote party. + */ + uint32 csv_delay = 5; + + /* + The reserve amount in satoshis that we require the remote peer to adhere to. + We require that the remote peer always have some reserve amount allocated to + them so that there is always a disincentive to broadcast old state (if they + hold 0 sats on their side of the channel, there is nothing to lose). + */ + uint64 reserve_sat = 6; + + /* + The maximum amount of funds in millisatoshis that we allow the remote peer + to have in outstanding htlcs. + */ + uint64 in_flight_max_msat = 7; + + /* + The maximum number of htlcs that the remote peer can offer us. + */ + uint32 max_htlc_count = 8; + + /* + The minimum value in millisatoshis for incoming htlcs on the channel. + */ + uint64 min_htlc_in = 9; + + /* + The number of confirmations we require before we consider the channel open. + */ + uint32 min_accept_depth = 10; + + /* + Whether the responder wants this to be a zero-conf channel. This will fail + if either side does not have the scid-alias feature bit set. The minimum + depth field must be zero if this is true. + */ + bool zero_conf = 11; } message ChannelPoint { @@ -822,15 +1073,36 @@ message OutPoint { uint32 output_index = 3; } +message PreviousOutPoint { + // The outpoint in format txid:n. + string outpoint = 1; + + // Denotes if the outpoint is controlled by the internal wallet. + // The flag will only detect p2wkh, np2wkh and p2tr inputs as its own. + bool is_our_output = 2; +} + message LightningAddress { - // The identity pubkey of the Lightning node + // The identity pubkey of the Lightning node. string pubkey = 1; // The network location of the lightning node, e.g. `69.69.69.69:1337` or - // `localhost:10011` + // `localhost:10011`. string host = 2; } +enum CoinSelectionStrategy { + // Use the coin selection strategy defined in the global configuration + // (lnd.conf). + STRATEGY_USE_GLOBAL_CONFIG = 0; + + // Select the largest available coins first during coin selection. + STRATEGY_LARGEST = 1; + + // Randomly select the available coins during coin selection. + STRATEGY_RANDOM = 2; +} + message EstimateFeeRequest { // The map from addresses to amounts for the transaction. map AddrToAmount = 1; @@ -838,14 +1110,28 @@ message EstimateFeeRequest { // The target number of blocks that this transaction should be confirmed // by. int32 target_conf = 2; + + // The minimum number of confirmations each one of your outputs used for + // the transaction must satisfy. + int32 min_confs = 3; + + // Whether unconfirmed outputs should be used as inputs for the transaction. + bool spend_unconfirmed = 4; + + // The strategy to use for selecting coins during fees estimation. + CoinSelectionStrategy coin_selection_strategy = 5; } message EstimateFeeResponse { // The total fee in satoshis. int64 fee_sat = 1; - // The fee rate in satoshi/byte. - int64 feerate_sat_per_byte = 2; + // Deprecated, use sat_per_vbyte. + // The fee rate in satoshi/vbyte. + int64 feerate_sat_per_byte = 2 [deprecated = true]; + + // The fee rate in satoshi/vbyte. + uint64 sat_per_vbyte = 3; } message SendManyRequest { @@ -856,12 +1142,27 @@ message SendManyRequest { // by. int32 target_conf = 3; - // A manual fee rate set in sat/byte that should be used when crafting the + // A manual fee rate set in sat/vbyte that should be used when crafting the + // transaction. + uint64 sat_per_vbyte = 4; + + // Deprecated, use sat_per_vbyte. + // A manual fee rate set in sat/vbyte that should be used when crafting the // transaction. - int64 sat_per_byte = 5; + int64 sat_per_byte = 5 [deprecated = true]; // An optional label for the transaction, limited to 500 characters. string label = 6; + + // The minimum number of confirmations each one of your outputs used for + // the transaction must satisfy. + int32 min_confs = 7; + + // Whether unconfirmed outputs should be used as inputs for the transaction. + bool spend_unconfirmed = 8; + + // The strategy to use for selecting coins during sending many requests. + CoinSelectionStrategy coin_selection_strategy = 9; } message SendManyResponse { // The id of the transaction @@ -879,9 +1180,14 @@ message SendCoinsRequest { // by. int32 target_conf = 3; - // A manual fee rate set in sat/byte that should be used when crafting the + // A manual fee rate set in sat/vbyte that should be used when crafting the + // transaction. + uint64 sat_per_vbyte = 4; + + // Deprecated, use sat_per_vbyte. + // A manual fee rate set in sat/vbyte that should be used when crafting the // transaction. - int64 sat_per_byte = 5; + int64 sat_per_byte = 5 [deprecated = true]; /* If set, then the amount field will be ignored, and lnd will attempt to @@ -892,6 +1198,16 @@ message SendCoinsRequest { // An optional label for the transaction, limited to 500 characters. string label = 7; + + // The minimum number of confirmations each one of your outputs used for + // the transaction must satisfy. + int32 min_confs = 8; + + // Whether unconfirmed outputs should be used as inputs for the transaction. + bool spend_unconfirmed = 9; + + // The strategy to use for selecting coins. + CoinSelectionStrategy coin_selection_strategy = 10; } message SendCoinsResponse { // The transaction ID of the transaction @@ -904,6 +1220,9 @@ message ListUnspentRequest { // The maximum number of confirmations to be included. int32 max_confs = 2; + + // An optional filter to only include outputs belonging to an account. + string account = 3; } message ListUnspentResponse { // A list of utxos @@ -915,17 +1234,26 @@ message ListUnspentResponse { - `p2wkh`: Pay to witness key hash (`WITNESS_PUBKEY_HASH` = 0) - `np2wkh`: Pay to nested witness key hash (`NESTED_PUBKEY_HASH` = 1) +- `p2tr`: Pay to taproot pubkey (`TAPROOT_PUBKEY` = 4) */ enum AddressType { WITNESS_PUBKEY_HASH = 0; NESTED_PUBKEY_HASH = 1; UNUSED_WITNESS_PUBKEY_HASH = 2; UNUSED_NESTED_PUBKEY_HASH = 3; + TAPROOT_PUBKEY = 4; + UNUSED_TAPROOT_PUBKEY = 5; } message NewAddressRequest { - // The address type + // The type of address to generate. AddressType type = 1; + + /* + The name of the account to generate a new address for. If empty, the + default wallet account is used. + */ + string account = 2; } message NewAddressResponse { // The newly generated wallet address @@ -938,6 +1266,12 @@ message SignMessageRequest { base64. */ bytes msg = 1; + + /* + Instead of the default double-SHA256 hashing of the message before signing, + only use one round of hashing instead. + */ + bool single_hash = 2; } message SignMessageResponse { // The signature for the given message @@ -963,12 +1297,22 @@ message VerifyMessageResponse { } message ConnectPeerRequest { - // Lightning address of the peer, in the format `@host` + /* + Lightning address of the peer to connect to. + */ LightningAddress addr = 1; - /* If set, the daemon will attempt to persistently connect to the target - * peer. Otherwise, the call will be synchronous. */ + /* + If set, the daemon will attempt to persistently connect to the target + peer. Otherwise, the call will be synchronous. + */ bool perm = 2; + + /* + The connection timeout value (in seconds) for this request. It won't affect + other requests. + */ + uint64 timeout = 3; } message ConnectPeerResponse { } @@ -985,14 +1329,34 @@ message HTLC { int64 amount = 2; bytes hash_lock = 3; uint32 expiration_height = 4; + + // Index identifying the htlc on the channel. + uint64 htlc_index = 5; + + // If this HTLC is involved in a forwarding operation, this field indicates + // the forwarding channel. For an outgoing htlc, it is the incoming channel. + // For an incoming htlc, it is the outgoing channel. When the htlc + // originates from this node or this node is the final destination, + // forwarding_channel will be zero. The forwarding channel will also be zero + // for htlcs that need to be forwarded but don't have a forwarding decision + // persisted yet. + uint64 forwarding_channel = 6; + + // Index identifying the htlc on the forwarding channel. + uint64 forwarding_htlc_index = 7; } enum CommitmentType { + /* + Returned when the commitment type isn't known or unavailable. + */ + UNKNOWN_COMMITMENT_TYPE = 0; + /* A channel using the legacy commitment format having tweaked to_remote keys. */ - LEGACY = 0; + LEGACY = 1; /* A channel that uses the modern commitment format where the key in the @@ -1000,19 +1364,30 @@ enum CommitmentType { up and recovery easier as when the channel is closed, the funds go directly to that key. */ - STATIC_REMOTE_KEY = 1; + STATIC_REMOTE_KEY = 2; /* A channel that uses a commitment format that has anchor outputs on the commitments, allowing fee bumping after a force close transaction has been broadcast. */ - ANCHORS = 2; + ANCHORS = 3; /* - Returned when the commitment type isn't known or unavailable. + A channel that uses a commitment type that builds upon the anchors + commitment format, but in addition requires a CLTV clause to spend outputs + paying to the channel initiator. This is intended for use on leased channels + to guarantee that the channel initiator has no incentives to close a leased + channel before its maturity date. */ - UNKNOWN_COMMITMENT_TYPE = 999; + SCRIPT_ENFORCED_LEASE = 4; + + /* + A channel that uses musig2 for the funding output, and the new tapscript + features where relevant. + */ + // TODO(roasbeef): need script enforce mirror type for the above as well? + SIMPLE_TAPROOT = 5; } message ChannelConstraints { @@ -1190,6 +1565,31 @@ message Channel { // List constraints for the remote node. ChannelConstraints remote_constraints = 30; + + /* + This lists out the set of alias short channel ids that exist for a channel. + This may be empty. + */ + repeated uint64 alias_scids = 31; + + // Whether or not this is a zero-conf channel. + bool zero_conf = 32; + + // This is the confirmed / on-chain zero-conf SCID. + uint64 zero_conf_confirmed_scid = 33; + + // The configured alias name of our peer. + string peer_alias = 34; + + // This is the peer SCID alias. + uint64 peer_scid_alias = 35 [jstype = JS_STRING]; + + /* + An optional note-to-self to go along with the channel containing some + useful information. This is only ever stored locally and in no way impacts + the channel's operation. + */ + string memo = 36; } message ListChannelsRequest { @@ -1203,12 +1603,33 @@ message ListChannelsRequest { empty, all channels will be returned. */ bytes peer = 5; + + // Informs the server if the peer alias lookup per channel should be + // enabled. It is turned off by default in order to avoid degradation of + // performance for existing clients. + bool peer_alias_lookup = 6; } message ListChannelsResponse { // The list of active channels repeated Channel channels = 11; } +message AliasMap { + /* + For non-zero-conf channels, this is the confirmed SCID. Otherwise, this is + the first assigned "base" alias. + */ + uint64 base_scid = 1; + + // The set of all aliases stored for the base SCID. + repeated uint64 aliases = 2; +} +message ListAliasesRequest { +} +message ListAliasesResponse { + repeated AliasMap alias_maps = 1; +} + enum Initiator { INITIATOR_UNKNOWN = 0; INITIATOR_LOCAL = 1; @@ -1273,6 +1694,15 @@ message ChannelCloseSummary { Initiator close_initiator = 12; repeated Resolution resolutions = 13; + + /* + This lists out the set of alias short channel ids that existed for the + closed channel. This may be empty. + */ + repeated uint64 alias_scids = 14; + + // The confirmed SCID for a zero-conf channel. + uint64 zero_conf_confirmed_scid = 15 [jstype = JS_STRING]; } enum ResolutionType { @@ -1399,6 +1829,11 @@ message Peer { Denotes that we are not receiving new graph updates from the peer. */ PASSIVE_SYNC = 2; + + /* + Denotes that this peer is pinned into an active sync. + */ + PINNED_SYNC = 3; } // The type of sync we are currently performing with this peer. @@ -1415,6 +1850,25 @@ message Peer { spamming us with errors at no cost. */ repeated TimestampedError errors = 12; + + /* + The number of times we have recorded this peer going offline or coming + online, recorded across restarts. Note that this value is decreased over + time if the peer has not recently flapped, so that we can forgive peers + with historically high flap counts. + */ + int32 flap_count = 13; + + /* + The timestamp of the last flap we observed for this peer. If this value is + zero, we have not observed any flaps for this peer. + */ + int64 last_flap_ns = 14; + + /* + The last ping payload the peer has sent to us. + */ + bytes last_ping_payload = 15; } message TimestampedError { @@ -1501,12 +1955,16 @@ message GetInfoResponse { /* Whether the current node is connected to testnet. This field is deprecated and the network field should be used instead - **/ + */ bool testnet = 10 [deprecated = true]; reserved 11; - // A list of active chains the node is connected to + /* + A list of active chains the node is connected to. This will only + ever contain a single entry since LND will only ever have a single + chain backend during its lifetime. + */ repeated Chain chains = 16; // The URIs of the current node. @@ -1517,6 +1975,22 @@ message GetInfoResponse { announcements and invoices. */ map features = 19; + + /* + Indicates whether the HTLC interceptor API is in always-on mode. + */ + bool require_htlc_interceptor = 21; + + // Indicates whether final htlc resolutions are stored on disk. + bool store_final_htlc_resolutions = 22; +} + +message GetDebugInfoRequest { +} + +message GetDebugInfoResponse { + map config = 1; + repeated string log = 2; } message GetRecoveryInfoRequest { @@ -1533,8 +2007,9 @@ message GetRecoveryInfoResponse { } message Chain { - // The blockchain the node is on (eg bitcoin, litecoin) - string chain = 1; + // Deprecated. The chain is now always assumed to be bitcoin. + // The blockchain the node is on (must be bitcoin) + string chain = 1 [deprecated = true]; // The network the node is on (eg regtest, testnet, mainnet) string network = 2; @@ -1573,9 +2048,10 @@ message CloseChannelRequest { // confirmed by. int32 target_conf = 3; - // A manual fee rate set in sat/byte that should be used when crafting the + // Deprecated, use sat_per_vbyte. + // A manual fee rate set in sat/vbyte that should be used when crafting the // closure transaction. - int64 sat_per_byte = 4; + int64 sat_per_byte = 4 [deprecated = true]; /* An optional address to send funds to in the case of a cooperative close. @@ -1584,12 +2060,27 @@ message CloseChannelRequest { to the upfront shutdown addresss. */ string delivery_address = 5; + + // A manual fee rate set in sat/vbyte that should be used when crafting the + // closure transaction. + uint64 sat_per_vbyte = 6; + + // The maximum fee rate the closer is willing to pay. + // + // NOTE: This field is only respected if we're the initiator of the channel. + uint64 max_fee_per_vbyte = 7; + + // If true, then the rpc call will not block while it awaits a closing txid. + // Consequently this RPC call will not return a closing txid if this value + // is set. + bool no_wait = 8; } message CloseStatusUpdate { oneof update { PendingUpdate close_pending = 1; ChannelCloseUpdate chan_close = 3; + InstantUpdate close_instant = 4; } } @@ -1598,6 +2089,9 @@ message PendingUpdate { uint32 output_index = 2; } +message InstantUpdate { +} + message ReadyForPsbtFunding { /* The P2WSH address of the channel funding multisig address that the below @@ -1620,53 +2114,56 @@ message ReadyForPsbtFunding { bytes psbt = 3; } -message OpenChannelRequest { - /* - The pubkey of the node to open a channel with. When using REST, this field - must be encoded as base64. - */ - bytes node_pubkey = 2; - - /* - The hex encoded pubkey of the node to open a channel with. Deprecated now - that the REST gateway supports base64 encoding of bytes fields. - */ - string node_pubkey_string = 3 [deprecated = true]; - - // The number of satoshis the wallet should commit to the channel - int64 local_funding_amount = 4; - - // The number of satoshis to push to the remote side as part of the initial - // commitment state - int64 push_sat = 5; +message BatchOpenChannelRequest { + // The list of channels to open. + repeated BatchOpenChannel channels = 1; // The target number of blocks that the funding transaction should be // confirmed by. - int32 target_conf = 6; + int32 target_conf = 2; - // A manual fee rate set in sat/byte that should be used when crafting the + // A manual fee rate set in sat/vByte that should be used when crafting the // funding transaction. - int64 sat_per_byte = 7; + int64 sat_per_vbyte = 3; + + // The minimum number of confirmations each one of your outputs used for + // the funding transaction must satisfy. + int32 min_confs = 4; + + // Whether unconfirmed outputs should be used as inputs for the funding + // transaction. + bool spend_unconfirmed = 5; + + // An optional label for the batch transaction, limited to 500 characters. + string label = 6; + + // The strategy to use for selecting coins during batch opening channels. + CoinSelectionStrategy coin_selection_strategy = 7; +} + +message BatchOpenChannel { + // The pubkey of the node to open a channel with. When using REST, this + // field must be encoded as base64. + bytes node_pubkey = 1; + + // The number of satoshis the wallet should commit to the channel. + int64 local_funding_amount = 2; + + // The number of satoshis to push to the remote side as part of the initial + // commitment state. + int64 push_sat = 3; // Whether this channel should be private, not announced to the greater // network. - bool private = 8; + bool private = 4; // The minimum value in millisatoshi we will require for incoming HTLCs on // the channel. - int64 min_htlc_msat = 9; + int64 min_htlc_msat = 5; // The delay we require on the remote's commitment transaction. If this is // not set, it will be scaled automatically with the channel size. - uint32 remote_csv_delay = 10; - - // The minimum number of confirmations each one of your outputs used for - // the funding transaction must satisfy. - int32 min_confs = 11; - - // Whether unconfirmed outputs should be used as inputs for the funding - // transaction. - bool spend_unconfirmed = 12; + uint32 remote_csv_delay = 6; /* Close address is an optional address which specifies the address to which @@ -1678,30 +2175,259 @@ message OpenChannelRequest { Note: If this value is set on channel creation, you will *not* be able to cooperatively close out to a different address. */ - string close_address = 13; + string close_address = 7; /* - Funding shims are an optional argument that allow the caller to intercept - certain funding functionality. For example, a shim can be provided to use a - particular key for the commitment key (ideally cold) rather than use one - that is generated by the wallet as normal, or signal that signing will be - carried out in an interactive manner (PSBT based). + An optional, unique identifier of 32 random bytes that will be used as the + pending channel ID to identify the channel while it is in the pre-pending + state. */ - FundingShim funding_shim = 14; + bytes pending_chan_id = 8; + + /* + The explicit commitment type to use. Note this field will only be used if + the remote peer supports explicit channel negotiation. + */ + CommitmentType commitment_type = 9; /* The maximum amount of coins in millisatoshi that can be pending within the channel. It only applies to the remote party. */ - uint64 remote_max_value_in_flight_msat = 15; + uint64 remote_max_value_in_flight_msat = 10; /* The maximum number of concurrent HTLCs we will allow the remote party to add to the commitment transaction. */ - uint32 remote_max_htlcs = 16; -} -message OpenStatusUpdate { + uint32 remote_max_htlcs = 11; + + /* + Max local csv is the maximum csv delay we will allow for our own commitment + transaction. + */ + uint32 max_local_csv = 12; + + /* + If this is true, then a zero-conf channel open will be attempted. + */ + bool zero_conf = 13; + + /* + If this is true, then an option-scid-alias channel-type open will be + attempted. + */ + bool scid_alias = 14; + + /* + The base fee charged regardless of the number of milli-satoshis sent. + */ + uint64 base_fee = 15; + + /* + The fee rate in ppm (parts per million) that will be charged in + proportion of the value of each forwarded HTLC. + */ + uint64 fee_rate = 16; + + /* + If use_base_fee is true the open channel announcement will update the + channel base fee with the value specified in base_fee. In the case of + a base_fee of 0 use_base_fee is needed downstream to distinguish whether + to use the default base fee value specified in the config or 0. + */ + bool use_base_fee = 17; + + /* + If use_fee_rate is true the open channel announcement will update the + channel fee rate with the value specified in fee_rate. In the case of + a fee_rate of 0 use_fee_rate is needed downstream to distinguish whether + to use the default fee rate value specified in the config or 0. + */ + bool use_fee_rate = 18; + + /* + The number of satoshis we require the remote peer to reserve. This value, + if specified, must be above the dust limit and below 20% of the channel + capacity. + */ + uint64 remote_chan_reserve_sat = 19; + + /* + An optional note-to-self to go along with the channel containing some + useful information. This is only ever stored locally and in no way impacts + the channel's operation. + */ + string memo = 20; +} + +message BatchOpenChannelResponse { + repeated PendingUpdate pending_channels = 1; +} + +message OpenChannelRequest { + // A manual fee rate set in sat/vbyte that should be used when crafting the + // funding transaction. + uint64 sat_per_vbyte = 1; + + /* + The pubkey of the node to open a channel with. When using REST, this field + must be encoded as base64. + */ + bytes node_pubkey = 2; + + /* + The hex encoded pubkey of the node to open a channel with. Deprecated now + that the REST gateway supports base64 encoding of bytes fields. + */ + string node_pubkey_string = 3 [deprecated = true]; + + // The number of satoshis the wallet should commit to the channel + int64 local_funding_amount = 4; + + // The number of satoshis to push to the remote side as part of the initial + // commitment state + int64 push_sat = 5; + + // The target number of blocks that the funding transaction should be + // confirmed by. + int32 target_conf = 6; + + // Deprecated, use sat_per_vbyte. + // A manual fee rate set in sat/vbyte that should be used when crafting the + // funding transaction. + int64 sat_per_byte = 7 [deprecated = true]; + + // Whether this channel should be private, not announced to the greater + // network. + bool private = 8; + + // The minimum value in millisatoshi we will require for incoming HTLCs on + // the channel. + int64 min_htlc_msat = 9; + + // The delay we require on the remote's commitment transaction. If this is + // not set, it will be scaled automatically with the channel size. + uint32 remote_csv_delay = 10; + + // The minimum number of confirmations each one of your outputs used for + // the funding transaction must satisfy. + int32 min_confs = 11; + + // Whether unconfirmed outputs should be used as inputs for the funding + // transaction. + bool spend_unconfirmed = 12; + + /* + Close address is an optional address which specifies the address to which + funds should be paid out to upon cooperative close. This field may only be + set if the peer supports the option upfront feature bit (call listpeers + to check). The remote peer will only accept cooperative closes to this + address if it is set. + + Note: If this value is set on channel creation, you will *not* be able to + cooperatively close out to a different address. + */ + string close_address = 13; + + /* + Funding shims are an optional argument that allow the caller to intercept + certain funding functionality. For example, a shim can be provided to use a + particular key for the commitment key (ideally cold) rather than use one + that is generated by the wallet as normal, or signal that signing will be + carried out in an interactive manner (PSBT based). + */ + FundingShim funding_shim = 14; + + /* + The maximum amount of coins in millisatoshi that can be pending within + the channel. It only applies to the remote party. + */ + uint64 remote_max_value_in_flight_msat = 15; + + /* + The maximum number of concurrent HTLCs we will allow the remote party to add + to the commitment transaction. + */ + uint32 remote_max_htlcs = 16; + + /* + Max local csv is the maximum csv delay we will allow for our own commitment + transaction. + */ + uint32 max_local_csv = 17; + + /* + The explicit commitment type to use. Note this field will only be used if + the remote peer supports explicit channel negotiation. + */ + CommitmentType commitment_type = 18; + + /* + If this is true, then a zero-conf channel open will be attempted. + */ + bool zero_conf = 19; + + /* + If this is true, then an option-scid-alias channel-type open will be + attempted. + */ + bool scid_alias = 20; + + /* + The base fee charged regardless of the number of milli-satoshis sent. + */ + uint64 base_fee = 21; + + /* + The fee rate in ppm (parts per million) that will be charged in + proportion of the value of each forwarded HTLC. + */ + uint64 fee_rate = 22; + + /* + If use_base_fee is true the open channel announcement will update the + channel base fee with the value specified in base_fee. In the case of + a base_fee of 0 use_base_fee is needed downstream to distinguish whether + to use the default base fee value specified in the config or 0. + */ + bool use_base_fee = 23; + + /* + If use_fee_rate is true the open channel announcement will update the + channel fee rate with the value specified in fee_rate. In the case of + a fee_rate of 0 use_fee_rate is needed downstream to distinguish whether + to use the default fee rate value specified in the config or 0. + */ + bool use_fee_rate = 24; + + /* + The number of satoshis we require the remote peer to reserve. This value, + if specified, must be above the dust limit and below 20% of the channel + capacity. + */ + uint64 remote_chan_reserve_sat = 25; + + /* + If set, then lnd will attempt to commit all the coins under control of the + internal wallet to open the channel, and the LocalFundingAmount field must + be zero and is ignored. + */ + bool fund_max = 26; + + /* + An optional note-to-self to go along with the channel containing some + useful information. This is only ever stored locally and in no way impacts + the channel's operation. + */ + string memo = 27; + + /* + A list of selected outpoints that are allocated for channel funding. + */ + repeated OutPoint outpoints = 28; +} +message OpenStatusUpdate { oneof update { /* Signals that the channel is now fully negotiated and the funding @@ -1781,6 +2507,11 @@ message ChanPointShim { the value is less than 500,000, or as an absolute height otherwise. */ uint32 thaw_height = 6; + + /* + Indicates that the funding output is using a MuSig2 multi-sig output. + */ + bool musig2 = 7; } message PsbtShim { @@ -1839,18 +2570,39 @@ message FundingPsbtVerify { // The pending channel ID of the channel to get the PSBT for. bytes pending_chan_id = 2; + + /* + Can only be used if the no_publish flag was set to true in the OpenChannel + call meaning that the caller is solely responsible for publishing the final + funding transaction. If skip_finalize is set to true then lnd will not wait + for a FundingPsbtFinalize state step and instead assumes that a transaction + with the same TXID as the passed in PSBT will eventually confirm. + IT IS ABSOLUTELY IMPERATIVE that the TXID of the transaction that is + eventually published does have the _same TXID_ as the verified PSBT. That + means no inputs or outputs can change, only signatures can be added. If the + TXID changes between this call and the publish step then the channel will + never be created and the funds will be in limbo. + */ + bool skip_finalize = 3; } message FundingPsbtFinalize { /* The funded PSBT that contains all witness data to send the exact channel capacity amount to the PK script returned in the open channel message in a - previous step. + previous step. Cannot be set at the same time as final_raw_tx. */ bytes signed_psbt = 1; // The pending channel ID of the channel to get the PSBT for. bytes pending_chan_id = 2; + + /* + As an alternative to the signed PSBT with all witness data, the final raw + wire format transaction can also be specified directly. Cannot be set at the + same time as signed_psbt. + */ + bytes final_raw_tx = 3; } message FundingTransitionMsg { @@ -1910,6 +2662,9 @@ message PendingHTLC { } message PendingChannelsRequest { + // Indicates whether to include the raw transaction hex for + // waiting_close_channels. + bool include_raw_tx = 1; } message PendingChannelsResponse { message PendingChannel { @@ -1936,15 +2691,28 @@ message PendingChannelsResponse { // The commitment type used by this channel. CommitmentType commitment_type = 9; + + // Total number of forwarding packages created in this channel. + int64 num_forwarding_packages = 10; + + // A set of flags showing the current state of the channel. + string chan_status_flags = 11; + + // Whether this channel is advertised to the network or not. + bool private = 12; + + /* + An optional note-to-self to go along with the channel containing some + useful information. This is only ever stored locally and in no way + impacts the channel's operation. + */ + string memo = 13; } message PendingOpenChannel { // The pending channel PendingChannel channel = 1; - // The height at which this channel will be confirmed - uint32 confirmation_height = 2; - /* The amount calculated to be paid in fees for the current set of commitment transactions. The fee amount is persisted with the channel @@ -1963,6 +2731,20 @@ message PendingChannelsResponse { transaction. This value can later be updated once the channel is open. */ int64 fee_per_kw = 6; + + // Previously used for confirmation_height. Do not reuse. + reserved 2; + + // The number of blocks until the funding transaction is considered + // expired. If this value gets close to zero, there is a risk that the + // channel funding will be canceled by the channel responder. The + // channel should be fee bumped using CPFP (see walletrpc.BumpFee) to + // ensure that the channel confirms in time. Otherwise a force-close + // will be necessary if the channel confirms after the funding + // transaction expires. A negative value means the channel responder has + // very likely canceled the funding and the channel will never become + // fully operational. + int32 funding_expiry_blocks = 3; } message WaitingCloseChannel { @@ -1977,6 +2759,13 @@ message PendingChannelsResponse { this point. */ Commitments commitments = 3; + + // The transaction id of the closing transaction + string closing_txid = 4; + + // The raw hex encoded bytes of the closing transaction. Included if + // include_raw_tx in the request is true. + string closing_tx_hex = 5; } message Commitments { @@ -2041,9 +2830,17 @@ message PendingChannelsResponse { repeated PendingHTLC pending_htlcs = 8; + /* + There are three resolution states for the anchor: + limbo, lost and recovered. Derive the current state + from the limbo and recovered balances. + */ enum AnchorState { + // The recovered_balance is zero and limbo_balance is non-zero. LIMBO = 0; + // The recovered_balance is non-zero. RECOVERED = 1; + // A state that is neither LIMBO nor RECOVERED. LOST = 2; } @@ -2080,6 +2877,7 @@ message ChannelEventUpdate { ChannelPoint active_channel = 3; ChannelPoint inactive_channel = 4; PendingUpdate pending_open_channel = 6; + ChannelPoint fully_resolved_channel = 7; } enum UpdateType { @@ -2088,13 +2886,31 @@ message ChannelEventUpdate { ACTIVE_CHANNEL = 2; INACTIVE_CHANNEL = 3; PENDING_OPEN_CHANNEL = 4; + FULLY_RESOLVED_CHANNEL = 5; } UpdateType type = 5; } +message WalletAccountBalance { + // The confirmed balance of the account (with >= 1 confirmations). + int64 confirmed_balance = 1; + + // The unconfirmed balance of the account (with 0 confirmations). + int64 unconfirmed_balance = 2; +} + message WalletBalanceRequest { + // The wallet account the balance is shown for. + // If this is not specified, the balance of the "default" account is shown. + string account = 1; + + // The minimum number of confirmations each one of your outputs used for the + // funding transaction must satisfy. If this is not specified, the default + // value of 1 is used. + int32 min_confs = 2; } + message WalletBalanceResponse { // The balance of the wallet int64 total_balance = 1; @@ -2104,16 +2920,52 @@ message WalletBalanceResponse { // The unconfirmed balance of a wallet(with 0 confirmations) int64 unconfirmed_balance = 3; + + // The total amount of wallet UTXOs held in outputs that are locked for + // other usage. + int64 locked_balance = 5; + + // The amount of reserve required. + int64 reserved_balance_anchor_chan = 6; + + // A mapping of each wallet account's name to its balance. + map account_balance = 4; +} + +message Amount { + // Value denominated in satoshis. + uint64 sat = 1; + + // Value denominated in milli-satoshis. + uint64 msat = 2; } message ChannelBalanceRequest { } message ChannelBalanceResponse { - // Sum of channels balances denominated in satoshis - int64 balance = 1; + // Deprecated. Sum of channels balances denominated in satoshis + int64 balance = 1 [deprecated = true]; + + // Deprecated. Sum of channels pending balances denominated in satoshis + int64 pending_open_balance = 2 [deprecated = true]; + + // Sum of channels local balances. + Amount local_balance = 3; + + // Sum of channels remote balances. + Amount remote_balance = 4; + + // Sum of channels local unsettled balances. + Amount unsettled_local_balance = 5; + + // Sum of channels remote unsettled balances. + Amount unsettled_remote_balance = 6; - // Sum of channels pending balances denominated in satoshis - int64 pending_open_balance = 2; + // Sum of channels pending local balances. + Amount pending_open_local_balance = 7; + + // Sum of channels pending remote balances. + Amount pending_open_remote_balance = 8; } message QueryRoutesRequest { @@ -2142,6 +2994,9 @@ message QueryRoutesRequest { not add any additional block padding on top of final_ctlv_delta. This padding of a few blocks needs to be added manually or otherwise failures may happen when a block comes in while the payment is in flight. + + Note: must not be set if making a payment to a blinded path (delta is + set by the aggregate parameters provided by blinded_payment_paths) */ int32 final_cltv_delta = 4; @@ -2149,7 +3004,8 @@ message QueryRoutesRequest { The maximum number of satoshis that will be paid as a fee of the payment. This value can be represented either as a percentage of the amount being sent, or as a fixed amount of the maximum fee the user is willing the pay to - send the payment. + send the payment. If not specified, lnd will use a default value of 100% + fees for small amounts (<=1k sat) or 5% fees for larger amounts. */ FeeLimit fee_limit = 5; @@ -2192,7 +3048,7 @@ message QueryRoutesRequest { An optional field that can be used to pass an arbitrary set of TLV records to a peer which understands the new records. This can be used to pass application specific data during the payment attempt. If the destination - does not support the specified recrods, and error will be returned. + does not support the specified records, an error will be returned. Record types are required to be in the custom range >= 65536. When using REST, the values must be encoded as base64. */ @@ -2214,14 +3070,29 @@ message QueryRoutesRequest { */ repeated lnrpc.RouteHint route_hints = 16; + /* + An optional blinded path(s) to reach the destination. Note that the + introduction node must be provided as the first hop in the route. + */ + repeated BlindedPaymentPath blinded_payment_paths = 19; + /* Features assumed to be supported by the final node. All transitive feature dependencies must also be set properly. For a given feature bit pair, either optional or remote may be set, but not both. If this field is nil or empty, the router will try to load destination features from the graph as a fallback. + + Note: must not be set if making a payment to a blinded route (features + are provided in blinded_payment_paths). */ repeated lnrpc.FeatureBit dest_features = 17; + + /* + The time preference for this payment. Set to -1 to optimize for fees + only, to 1 to optimize for reliability only or a value inbetween for a mix. + */ + double time_pref = 18; } message NodePair { @@ -2272,7 +3143,7 @@ message Hop { output index for the channel. */ uint64 chan_id = 1 [jstype = JS_STRING]; - int64 chan_capacity = 2; + int64 chan_capacity = 2 [deprecated = true]; int64 amt_to_forward = 3 [deprecated = true]; int64 fee = 4 [deprecated = true]; uint32 expiry = 5; @@ -2290,22 +3161,61 @@ message Hop { TLV format. Note that if any custom tlv_records below are specified, then this field MUST be set to true for them to be encoded properly. */ - bool tlv_payload = 9; + bool tlv_payload = 9 [deprecated = true]; /* An optional TLV record that signals the use of an MPP payment. If present, - the receiver will enforce that that the same mpp_record is included in the - final hop payload of all non-zero payments in the HTLC set. If empty, a - regular single-shot payment is or was attempted. + the receiver will enforce that the same mpp_record is included in the final + hop payload of all non-zero payments in the HTLC set. If empty, a regular + single-shot payment is or was attempted. */ MPPRecord mpp_record = 10; + /* + An optional TLV record that signals the use of an AMP payment. If present, + the receiver will treat all received payments including the same + (payment_addr, set_id) pair as being part of one logical payment. The + payment will be settled by XORing the root_share's together and deriving the + child hashes and preimages according to BOLT XX. Must be used in conjunction + with mpp_record. + */ + AMPRecord amp_record = 12; + /* An optional set of key-value TLV records. This is useful within the context of the SendToRoute call as it allows callers to specify arbitrary K-V pairs to drop off at each hop within the onion. */ map custom_records = 11; + + // The payment metadata to send along with the payment to the payee. + bytes metadata = 13; + + /* + Blinding point is an optional blinding point included for introduction + nodes in blinded paths. This field is mandatory for hops that represents + the introduction point in a blinded path. + */ + bytes blinding_point = 14; + + /* + Encrypted data is a receiver-produced blob of data that provides hops + in a blinded route with forwarding data. As this data is encrypted by + the recipient, we will not be able to parse it - it is essentially an + arbitrary blob of data from our node's perspective. This field is + mandatory for all hops in a blinded path, including the introduction + node. + */ + bytes encrypted_data = 15; + + /* + The total amount that is sent to the recipient (possibly across multiple + HTLCs), as specified by the sender when making a payment to a blinded path. + This value is only set in the final hop payload of a blinded payment. This + value is analogous to the MPPRecord that is used for regular (non-blinded) + MPP payments. + */ + uint64 total_amt_msat = 16; } message MPPRecord { @@ -2313,7 +3223,8 @@ message MPPRecord { A unique, random identifier used to authenticate the sender as the intended payer of a multi-path payment. The payment_addr must be the same for all subpayments, and match the payment_addr provided in the receiver's invoice. - The same payment_addr must be used on all subpayments. + The same payment_addr must be used on all subpayments. This is also called + payment secret in specifications (e.g. BOLT 11). */ bytes payment_addr = 11; @@ -2326,6 +3237,14 @@ message MPPRecord { int64 total_amt_msat = 10; } +message AMPRecord { + bytes root_share = 1; + + bytes set_id = 2; + + uint32 child_index = 3; +} + /* A path through the channel graph which runs over one or more channels in succession. This struct carries all the information required to craft the @@ -2414,6 +3333,9 @@ message LightningNode { repeated NodeAddress addresses = 4; string color = 5; map features = 6; + + // Custom node announcement tlv records. + map custom_records = 7; } message NodeAddress { @@ -2429,6 +3351,12 @@ message RoutingPolicy { bool disabled = 5; uint64 max_htlc_msat = 6; uint32 last_update = 7; + + // Custom channel update tlv records. + map custom_records = 8; + + int32 inbound_fee_base_msat = 9; + int32 inbound_fee_rate_milli_msat = 10; } /* @@ -2456,6 +3384,9 @@ message ChannelEdge { RoutingPolicy node1_policy = 7; RoutingPolicy node2_policy = 8; + + // Custom channel announcement tlv records. + map custom_records = 9; } message ChannelGraphRequest { @@ -2551,11 +3482,27 @@ message GraphTopologyUpdate { repeated ClosedChannelUpdate closed_chans = 3; } message NodeUpdate { - repeated string addresses = 1; + /* + Deprecated, use node_addresses. + */ + repeated string addresses = 1 [deprecated = true]; + string identity_key = 2; - bytes global_features = 3; + + /* + Deprecated, use features. + */ + bytes global_features = 3 [deprecated = true]; + string alias = 4; string color = 5; + repeated NodeAddress node_addresses = 7; + + /* + Features that the node has advertised in the init message, node + announcements and invoices. + */ + map features = 6; } message ChannelEdgeUpdate { /* @@ -2606,6 +3553,10 @@ message HopHint { uint32 cltv_expiry_delta = 5; } +message SetID { + bytes set_id = 1; +} + message RouteHint { /* A list of hop hints that when chained together can assist in reaching a @@ -2614,6 +3565,78 @@ message RouteHint { repeated HopHint hop_hints = 1; } +message BlindedPaymentPath { + // The blinded path to send the payment to. + BlindedPath blinded_path = 1; + + // The base fee for the blinded path provided, expressed in msat. + uint64 base_fee_msat = 2; + + /* + The proportional fee for the blinded path provided, expressed in parts + per million. + */ + uint32 proportional_fee_rate = 3; + + /* + The total CLTV delta for the blinded path provided, including the + final CLTV delta for the receiving node. + */ + uint32 total_cltv_delta = 4; + + /* + The minimum hltc size that may be sent over the blinded path, expressed + in msat. + */ + uint64 htlc_min_msat = 5; + + /* + The maximum htlc size that may be sent over the blinded path, expressed + in msat. + */ + uint64 htlc_max_msat = 6; + + // The feature bits for the route. + repeated FeatureBit features = 7; +} + +message BlindedPath { + // The unblinded pubkey of the introduction node for the route. + bytes introduction_node = 1; + + // The ephemeral pubkey used by nodes in the blinded route. + bytes blinding_point = 2; + + /* + A set of blinded node keys and data blobs for the blinded portion of the + route. Note that the first hop is expected to be the introduction node, + so the route is always expected to have at least one hop. + */ + repeated BlindedHop blinded_hops = 3; +} + +message BlindedHop { + // The blinded public key of the node. + bytes blinded_node = 1; + + // An encrypted blob of data provided to the blinded node. + bytes encrypted_data = 2; +} + +message AMPInvoiceState { + // The state the HTLCs associated with this setID are in. + InvoiceHTLCState state = 1; + + // The settle index of this HTLC set, if the invoice state is settled. + uint64 settle_index = 2; + + // The time this HTLC set was settled expressed in unix epoch. + int64 settle_time = 3; + + // The total amount paid for the sub-invoice expressed in milli satoshis. + int64 amt_paid_msat = 5; +} + message Invoice { /* An optional memo to attach along with the invoice. Used for record keeping @@ -2635,6 +3658,7 @@ message Invoice { /* The hash of the preimage. When using REST, this field must be encoded as base64. + Note: Output only, don't specify for creating an invoice. */ bytes r_hash = 4; @@ -2652,19 +3676,32 @@ message Invoice { */ int64 value_msat = 23; - // Whether this invoice has been fulfilled + /* + Whether this invoice has been fulfilled. + + The field is deprecated. Use the state field instead (compare to SETTLED). + */ bool settled = 6 [deprecated = true]; - // When this invoice was created + /* + When this invoice was created. + Measured in seconds since the unix epoch. + Note: Output only, don't specify for creating an invoice. + */ int64 creation_date = 7; - // When this invoice was settled + /* + When this invoice was settled. + Measured in seconds since the unix epoch. + Note: Output only, don't specify for creating an invoice. + */ int64 settle_date = 8; /* A bare-bones invoice for a payment within the Lightning Network. With the details of the invoice, the sender has all the data necessary to send a payment to the recipient. + Note: Output only, don't specify for creating an invoice. */ string payment_request = 9; @@ -2676,7 +3713,7 @@ message Invoice { */ bytes description_hash = 10; - // Payment request expiry time in seconds. Default is 3600 (1 hour). + // Payment request expiry time in seconds. Default is 86400 (24 hours). int64 expiry = 11; // Fallback on-chain address. @@ -2692,6 +3729,8 @@ message Invoice { repeated RouteHint route_hints = 14; // Whether this invoice should include routing hints for private channels. + // Note: When enabled, if value and value_msat are zero, a large number of + // hints with these channels can be included, which might not be desirable. bool private = 15; /* @@ -2699,6 +3738,7 @@ message Invoice { this index making it monotonically increasing. Callers to the SubscribeInvoices call can use this to instantly get notified of all added invoices with an add_index greater than this one. + Note: Output only, don't specify for creating an invoice. */ uint64 add_index = 16; @@ -2707,6 +3747,7 @@ message Invoice { increment this index making it monotonically increasing. Callers to the SubscribeInvoices call can use this to instantly get notified of all settled invoices with an settle_index greater than this one. + Note: Output only, don't specify for creating an invoice. */ uint64 settle_index = 17; @@ -2715,21 +3756,23 @@ message Invoice { /* The amount that was accepted for this invoice, in satoshis. This will ONLY - be set if this invoice has been settled. We provide this field as if the - invoice was created with a zero value, then we need to record what amount - was ultimately accepted. Additionally, it's possible that the sender paid - MORE that was specified in the original invoice. So we'll record that here - as well. + be set if this invoice has been settled or accepted. We provide this field + as if the invoice was created with a zero value, then we need to record what + amount was ultimately accepted. Additionally, it's possible that the sender + paid MORE that was specified in the original invoice. So we'll record that + here as well. + Note: Output only, don't specify for creating an invoice. */ int64 amt_paid_sat = 19; /* The amount that was accepted for this invoice, in millisatoshis. This will - ONLY be set if this invoice has been settled. We provide this field as if - the invoice was created with a zero value, then we need to record what - amount was ultimately accepted. Additionally, it's possible that the sender - paid MORE that was specified in the original invoice. So we'll record that - here as well. + ONLY be set if this invoice has been settled or accepted. We provide this + field as if the invoice was created with a zero value, then we need to + record what amount was ultimately accepted. Additionally, it's possible that + the sender paid MORE that was specified in the original invoice. So we'll + record that here as well. + Note: Output only, don't specify for creating an invoice. */ int64 amt_paid_msat = 20; @@ -2742,20 +3785,53 @@ message Invoice { /* The state the invoice is in. + Note: Output only, don't specify for creating an invoice. */ InvoiceState state = 21; - // List of HTLCs paying to this invoice [EXPERIMENTAL]. + /* + List of HTLCs paying to this invoice [EXPERIMENTAL]. + Note: Output only, don't specify for creating an invoice. + */ repeated InvoiceHTLC htlcs = 22; - // List of features advertised on the invoice. + /* + List of features advertised on the invoice. + Note: Output only, don't specify for creating an invoice. + */ map features = 24; /* Indicates if this invoice was a spontaneous payment that arrived via keysend [EXPERIMENTAL]. + Note: Output only, don't specify for creating an invoice. */ bool is_keysend = 25; + + /* + The payment address of this invoice. This is also called payment secret in + specifications (e.g. BOLT 11). This value will be used in MPP payments, and + also for newer invoices that always require the MPP payload for added + end-to-end security. + Note: Output only, don't specify for creating an invoice. + */ + bytes payment_addr = 26; + + /* + Signals whether or not this is an AMP invoice. + */ + bool is_amp = 27; + + /* + [EXPERIMENTAL]: + + Maps a 32-byte hex-encoded set ID to the sub-invoice AMP state for the + given set ID. This field is always populated for AMP invoices, and can be + used along side LookupInvoice to obtain the HTLC information related to a + given sub-invoice. + Note: Output only, don't specify for creating an invoice. + */ + map amp_invoice_state = 28; } enum InvoiceHTLCState { @@ -2795,6 +3871,31 @@ message InvoiceHTLC { // The total amount of the mpp payment in msat. uint64 mpp_total_amt_msat = 10; + + // Details relevant to AMP HTLCs, only populated if this is an AMP HTLC. + AMP amp = 11; +} + +// Details specific to AMP HTLCs. +message AMP { + // An n-of-n secret share of the root seed from which child payment hashes + // and preimages are derived. + bytes root_share = 1; + + // An identifier for the HTLC set that this HTLC belongs to. + bytes set_id = 2; + + // A nonce used to randomize the child preimage and child hash from a given + // root_share. + uint32 child_index = 3; + + // The payment hash of the AMP HTLC. + bytes hash = 4; + + // The preimage used to settle this AMP htlc. This field will only be + // populated if the invoice is in InvoiceState_ACCEPTED or + // InvoiceState_SETTLED. + bytes preimage = 5; } message AddInvoiceResponse { @@ -2814,6 +3915,13 @@ message AddInvoiceResponse { invoices with an add_index greater than this one. */ uint64 add_index = 16; + + /* + The payment address of the generated invoice. This is also called + payment secret in specifications (e.g. BOLT 11). This value should be used + in all payments for this invoice as we require it for end to end security. + */ + bytes payment_addr = 17; } message PaymentHash { /* @@ -2852,7 +3960,16 @@ message ListInvoiceRequest { specified index offset. This can be used to paginate backwards. */ bool reversed = 6; + + // If set, returns all invoices with a creation date greater than or equal + // to it. Measured in seconds since the unix epoch. + uint64 creation_date_start = 7; + + // If set, returns all invoices with a creation date less than or equal to + // it. Measured in seconds since the unix epoch. + uint64 creation_date_end = 8; } + message ListInvoiceResponse { /* A list of invoices from the time slice of the time series specified in the @@ -2953,10 +4070,20 @@ message Payment { string payment_request = 9; enum PaymentStatus { - UNKNOWN = 0; + // Deprecated. This status will never be returned. + UNKNOWN = 0 [deprecated = true]; + + // Payment has inflight HTLCs. IN_FLIGHT = 1; + + // Payment is settled. SUCCEEDED = 2; + + // Payment is failed. FAILED = 3; + + // Payment is created and has not attempted any HTLCs. + INITIATED = 4; } // The status of the payment. @@ -2985,6 +4112,9 @@ message Payment { } message HTLCAttempt { + // The unique ID that is used for this attempt. + uint64 attempt_id = 7; + enum HTLCStatus { IN_FLIGHT = 0; SUCCEEDED = 1; @@ -3040,6 +4170,22 @@ message ListPaymentsRequest { of the returned payments is always oldest first (ascending index order). */ bool reversed = 4; + + /* + If set, all payments (complete and incomplete, independent of the + max_payments parameter) will be counted. Note that setting this to true will + increase the run time of the call significantly on systems that have a lot + of payments, as all of them have to be iterated through to be counted. + */ + bool count_total_payments = 5; + + // If set, returns all payments with a creation date greater than or equal + // to it. Measured in seconds since the unix epoch. + uint64 creation_date_start = 6; + + // If set, returns all payments with a creation date less than or equal to + // it. Measured in seconds since the unix epoch. + uint64 creation_date_end = 7; } message ListPaymentsResponse { @@ -3057,9 +4203,41 @@ message ListPaymentsResponse { as the index_offset to continue seeking forwards in the next request. */ uint64 last_index_offset = 3; + + /* + Will only be set if count_total_payments in the request was set. Represents + the total number of payments (complete and incomplete, independent of the + number of payments requested in the query) currently present in the payments + database. + */ + uint64 total_num_payments = 4; +} + +message DeletePaymentRequest { + // Payment hash to delete. + bytes payment_hash = 1; + + /* + Only delete failed HTLCs from the payment, not the payment itself. + */ + bool failed_htlcs_only = 2; } message DeleteAllPaymentsRequest { + // Only delete failed payments. + bool failed_payments_only = 1; + + /* + Only delete failed HTLCs from payments, not the payment itself. + */ + bool failed_htlcs_only = 2; + + // Delete all payments. NOTE: Using this option requires careful + // consideration as it is a destructive operation. + bool all_payments = 3; +} + +message DeletePaymentResponse { } message DeleteAllPaymentsResponse { @@ -3069,6 +4247,13 @@ message AbandonChannelRequest { ChannelPoint channel_point = 1; bool pending_funding_shim_only = 2; + + /* + Override the requirement for being in dev mode by setting this to true and + confirming the user knows what they are doing and this is a potential foot + gun to lose funds if used on active channels. + */ + bool i_know_what_i_am_doing = 3; } message AbandonChannelResponse { @@ -3120,6 +4305,16 @@ enum FeatureBit { PAYMENT_ADDR_OPT = 15; MPP_REQ = 16; MPP_OPT = 17; + WUMBO_CHANNELS_REQ = 18; + WUMBO_CHANNELS_OPT = 19; + ANCHORS_REQ = 20; + ANCHORS_OPT = 21; + ANCHORS_ZERO_FEE_HTLC_REQ = 22; + ANCHORS_ZERO_FEE_HTLC_OPT = 23; + ROUTE_BLINDING_REQUIRED = 24; + ROUTE_BLINDING_OPTIONAL = 25; + AMP_REQ = 30; + AMP_OPT = 31; } message Feature { @@ -3147,7 +4342,15 @@ message ChannelFeeReport { // The effective fee rate in milli-satoshis. Computed by dividing the // fee_per_mil value by 1 million. double fee_rate = 4; + + // The base fee charged regardless of the number of milli-satoshis sent. + int32 inbound_base_fee_msat = 6; + + // The amount charged per milli-satoshis transferred expressed in + // millionths of a satoshi. + int32 inbound_fee_per_mil = 7; } + message FeeReportResponse { // An array of channel fee reports which describes the current fee schedule // for each channel. @@ -3166,6 +4369,16 @@ message FeeReportResponse { uint64 month_fee_sum = 4; } +message InboundFee { + // The inbound base fee charged regardless of the number of milli-satoshis + // received in the channel. By default, only negative values are accepted. + int32 base_fee_msat = 1; + + // The effective inbound fee rate in micro-satoshis (parts per million). + // By default, only negative values are accepted. + int32 fee_rate_ppm = 2; +} + message PolicyUpdateRequest { oneof scope { // If set, then this update applies to all currently active channels. @@ -3182,6 +4395,9 @@ message PolicyUpdateRequest { // goes up to 6 decimal places, so 1e-6. double fee_rate = 4; + // The effective fee rate in micro-satoshis (parts per million). + uint32 fee_rate_ppm = 9; + // The required timelock delta for HTLCs forwarded over the channel. uint32 time_lock_delta = 5; @@ -3195,8 +4411,34 @@ message PolicyUpdateRequest { // If true, min_htlc_msat is applied. bool min_htlc_msat_specified = 8; + + // Optional inbound fee. If unset, the previously set value will be + // retained [EXPERIMENTAL]. + InboundFee inbound_fee = 10; +} + +enum UpdateFailure { + UPDATE_FAILURE_UNKNOWN = 0; + UPDATE_FAILURE_PENDING = 1; + UPDATE_FAILURE_NOT_FOUND = 2; + UPDATE_FAILURE_INTERNAL_ERR = 3; + UPDATE_FAILURE_INVALID_PARAMETER = 4; +} + +message FailedUpdate { + // The outpoint in format txid:n + OutPoint outpoint = 1; + + // Reason for the policy update failure. + UpdateFailure reason = 2; + + // A string representation of the policy update error. + string update_error = 3; } + message PolicyUpdateResponse { + // List of failed policy updates. + repeated FailedUpdate failed_updates = 1; } message ForwardingHistoryRequest { @@ -3217,11 +4459,15 @@ message ForwardingHistoryRequest { // The max number of events to return in the response to this query. uint32 num_max_events = 4; + + // Informs the server if the peer alias should be looked up for each + // forwarding event. + bool peer_alias_lookup = 5; } message ForwardingEvent { // Timestamp is the time (unix epoch offset) that this circuit was - // completed. - uint64 timestamp = 1; + // completed. Deprecated by timestamp_ns. + uint64 timestamp = 1 [deprecated = true]; // The incoming channel ID that carried the HTLC that created the circuit. uint64 chan_id_in = 2 [jstype = JS_STRING]; @@ -3252,6 +4498,16 @@ message ForwardingEvent { // the second half of the circuit. uint64 amt_out_msat = 10; + // The number of nanoseconds elapsed since January 1, 1970 UTC when this + // circuit was completed. + uint64 timestamp_ns = 11; + + // The peer alias of the incoming channel. + string peer_alias_in = 12; + + // The peer alias of the outgoing channel. + string peer_alias_out = 13; + // TODO(roasbeef): add settlement latency? // * use FPE on the chan id? // * also list failures? @@ -3360,6 +4616,12 @@ message BakeMacaroonRequest { // The root key ID used to create the macaroon, must be a positive integer. uint64 root_key_id = 2; + + /* + Informs the RPC on whether to allow external permissions that LND is not + aware of. + */ + bool allow_external_permissions = 3; } message BakeMacaroonResponse { // The hex encoded macaroon, serialized in binary format. @@ -3429,6 +4691,8 @@ message Failure { PERMANENT_CHANNEL_FAILURE = 21; EXPIRY_TOO_FAR = 22; MPP_TIMEOUT = 23; + INVALID_ONION_PAYLOAD = 24; + INVALID_ONION_BLINDING = 25; /* An internal error occurred. @@ -3570,3 +4834,224 @@ message Op { string entity = 1; repeated string actions = 2; } + +message CheckMacPermRequest { + bytes macaroon = 1; + repeated MacaroonPermission permissions = 2; + string fullMethod = 3; +} + +message CheckMacPermResponse { + bool valid = 1; +} + +message RPCMiddlewareRequest { + /* + The unique ID of the intercepted original gRPC request. Useful for mapping + request to response when implementing full duplex message interception. For + streaming requests, this will be the same ID for all incoming and outgoing + middleware intercept messages of the _same_ stream. + */ + uint64 request_id = 1; + + /* + The raw bytes of the complete macaroon as sent by the gRPC client in the + original request. This might be empty for a request that doesn't require + macaroons such as the wallet unlocker RPCs. + */ + bytes raw_macaroon = 2; + + /* + The parsed condition of the macaroon's custom caveat for convenient access. + This field only contains the value of the custom caveat that the handling + middleware has registered itself for. The condition _must_ be validated for + messages of intercept_type stream_auth and request! + */ + string custom_caveat_condition = 3; + + /* + There are three types of messages that will be sent to the middleware for + inspection and approval: Stream authentication, request and response + interception. The first two can only be accepted (=forward to main RPC + server) or denied (=return error to client). Intercepted responses can also + be replaced/overwritten. + */ + oneof intercept_type { + /* + Intercept stream authentication: each new streaming RPC call that is + initiated against lnd and contains the middleware's custom macaroon + caveat can be approved or denied based upon the macaroon in the stream + header. This message will only be sent for streaming RPCs, unary RPCs + must handle the macaroon authentication in the request interception to + avoid an additional message round trip between lnd and the middleware. + */ + StreamAuth stream_auth = 4; + + /* + Intercept incoming gRPC client request message: all incoming messages, + both on streaming and unary RPCs, are forwarded to the middleware for + inspection. For unary RPC messages the middleware is also expected to + validate the custom macaroon caveat of the request. + */ + RPCMessage request = 5; + + /* + Intercept outgoing gRPC response message: all outgoing messages, both on + streaming and unary RPCs, are forwarded to the middleware for inspection + and amendment. The response in this message is the original response as + it was generated by the main RPC server. It can either be accepted + (=forwarded to the client), replaced/overwritten with a new message of + the same type, or replaced by an error message. + */ + RPCMessage response = 6; + + /* + This is used to indicate to the client that the server has successfully + registered the interceptor. This is only used in the very first message + that the server sends to the client after the client sends the server + the middleware registration message. + */ + bool reg_complete = 8; + } + + /* + The unique message ID of this middleware intercept message. There can be + multiple middleware intercept messages per single gRPC request (one for the + incoming request and one for the outgoing response) or gRPC stream (one for + each incoming message and one for each outgoing response). This message ID + must be referenced when responding (accepting/rejecting/modifying) to an + intercept message. + */ + uint64 msg_id = 7; +} + +message StreamAuth { + /* + The full URI (in the format /./MethodName, for + example /lnrpc.Lightning/GetInfo) of the streaming RPC method that was just + established. + */ + string method_full_uri = 1; +} + +message RPCMessage { + /* + The full URI (in the format /./MethodName, for + example /lnrpc.Lightning/GetInfo) of the RPC method the message was sent + to/from. + */ + string method_full_uri = 1; + + /* + Indicates whether the message was sent over a streaming RPC method or not. + */ + bool stream_rpc = 2; + + /* + The full canonical gRPC name of the message type (in the format + .TypeName, for example lnrpc.GetInfoRequest). In case of an + error being returned from lnd, this simply contains the string "error". + */ + string type_name = 3; + + /* + The full content of the gRPC message, serialized in the binary protobuf + format. + */ + bytes serialized = 4; + + /* + Indicates that the response from lnd was an error, not a gRPC response. If + this is set to true then the type_name contains the string "error" and + serialized contains the error string. + */ + bool is_error = 5; +} + +message RPCMiddlewareResponse { + /* + The request message ID this response refers to. Must always be set when + giving feedback to an intercept but is ignored for the initial registration + message. + */ + uint64 ref_msg_id = 1; + + /* + The middleware can only send two types of messages to lnd: The initial + registration message that identifies the middleware and after that only + feedback messages to requests sent to the middleware. + */ + oneof middleware_message { + /* + The registration message identifies the middleware that's being + registered in lnd. The registration message must be sent immediately + after initiating the RegisterRpcMiddleware stream, otherwise lnd will + time out the attempt and terminate the request. NOTE: The middleware + will only receive interception messages for requests that contain a + macaroon with the custom caveat that the middleware declares it is + responsible for handling in the registration message! As a security + measure, _no_ middleware can intercept requests made with _unencumbered_ + macaroons! + */ + MiddlewareRegistration register = 2; + + /* + The middleware received an interception request and gives feedback to + it. The request_id indicates what message the feedback refers to. + */ + InterceptFeedback feedback = 3; + } +} + +message MiddlewareRegistration { + /* + The name of the middleware to register. The name should be as informative + as possible and is logged on registration. + */ + string middleware_name = 1; + + /* + The name of the custom macaroon caveat that this middleware is responsible + for. Only requests/responses that contain a macaroon with the registered + custom caveat are forwarded for interception to the middleware. The + exception being the read-only mode: All requests/responses are forwarded to + a middleware that requests read-only access but such a middleware won't be + allowed to _alter_ responses. As a security measure, _no_ middleware can + change responses to requests made with _unencumbered_ macaroons! + NOTE: Cannot be used at the same time as read_only_mode. + */ + string custom_macaroon_caveat_name = 2; + + /* + Instead of defining a custom macaroon caveat name a middleware can register + itself for read-only access only. In that mode all requests/responses are + forwarded to the middleware but the middleware isn't allowed to alter any of + the responses. + NOTE: Cannot be used at the same time as custom_macaroon_caveat_name. + */ + bool read_only_mode = 3; +} + +message InterceptFeedback { + /* + The error to return to the user. If this is non-empty, the incoming gRPC + stream/request is aborted and the error is returned to the gRPC client. If + this value is empty, it means the middleware accepts the stream/request/ + response and the processing of it can continue. + */ + string error = 1; + + /* + A boolean indicating that the gRPC message should be replaced/overwritten. + This boolean is needed because in protobuf an empty message is serialized as + a 0-length or nil byte slice and we wouldn't be able to distinguish between + an empty replacement message and the "don't replace anything" case. + */ + bool replace_response = 2; + + /* + If the replace_response field is set to true, this field must contain the + binary serialized gRPC message in the protobuf format. + */ + bytes replacement_serialized = 3; +} diff --git a/views/channel.pug b/views/channel.pug index ed2527f..ea290fc 100644 --- a/views/channel.pug +++ b/views/channel.pug @@ -1,343 +1,373 @@ extends layout block headContent - title Channel #{channelId} + title Channel #{ channelId } block breadcrumb - if (channel != null && localChannels.byId && localChannels.byId[channel.channel_id]) - li.breadcrumb-item - a(href='/') Home - li.breadcrumb-item My Node - li.breadcrumb-item - a(href="/local-channels") My Channels - li.breadcrumb-item Channel #{channel.channel_id} - - else - li.breadcrumb-item - a(href='/') Home - li.breadcrumb-item Network - li.breadcrumb-item - a(href="/channels") All Channels - li.breadcrumb-item Channel #{channelId} - -block content - - - if (channel) - - var localChannel = localChannels.byId && localChannels.byId[channel.channel_id]; - - var localChannelStatus = "Active"; - - if (localChannels.byId[channel.channel_id] && !localChannels.byId[channel.channel_id].active) - - localChannelStatus = "Inactive"; - - if (!localChannel) - - localChannel = localClosedChannels.byId && localClosedChannels.byId[channel.channel_id]; - - if (!localChannel && localPendingChannels.waitingCloseChannels) - each waitingCloseChannel in localPendingChannels.waitingCloseChannels - if (waitingCloseChannel.channel.channel_point == channel.chan_point) - - localChannel = true; - - localChannelStatus = "Waiting to Close"; - - - mixin titlePillBadge(text, colorClass) - span.badge.rounded-pill.fs-75.ms-2.align-text-bottom(class=colorClass) - | #{text} - block - - +pageTitle("Channel", channelId, true) - span.h3 - if (localChannelStatus) - if (localChannelStatus == "Active") - +titlePillBadge(localChannelStatus, "text-bg-success") - - if (localChannelStatus == "Waiting to Close" || localChannelStatus == "Inactive") - +titlePillBadge(localChannelStatus, "text-bg-warning") - - if (localChannel && localChannel.private) - +titlePillBadge("Private", "text-bg-success") - i.fas.fa-lock.ms-2 - - - if (localChannel) - span(title="Your LND node is one of the participants in this channel", data-bs-toggle="tooltip") - i.fas.fa-certificate.fa-sm.text-primary.ms-2 - - if (utils.isObjectStarred(`channel:${channelId}`)) - span(title="This is one of your favorite channels" data-bs-toggle="tooltip") - i.fas.fa-star.text-warning.fa-sm.ms-2 - - - - - if (false) - pre - code.json #{JSON.stringify(localPendingChannels, null, 4)} - - if (channel == null) - .alert.alert-warning.shadow-sm - span Channel - span.fw-bold #{channelId} - span : Not Found - - else - - var channelPointParts = channel.chan_point.split(":"); - - var channelPointTxid = channelPointParts[0]; - - var channelPointIndex = channelPointParts[1]; - - - if (localChannels.byId && localChannels.byId[channel.channel_id]) - - var localChannel = localChannels.byId[channel.channel_id]; - - - var localBalance = new Decimal(localChannel.local_balance); - - var remoteBalance = new Decimal(localChannel.remote_balance); - - - var valueReceived = new Decimal(localChannel.total_satoshis_received); - - var valueSent = new Decimal(localChannel.total_satoshis_sent); - - var netValue = valueReceived.minus(valueSent); - - - +pageTabs(["Details", "JSON"]) - - .tab-content - +pageTab("Details", true) - +contentSection("Summary") - if (localChannel) - .mb-3 - +summaryRow(2) - +summaryItem("Local / Remote Balances") - .d-flex.justify-content-between.fs-90.mb-3 - .text-start - .mb-2 - i.fas.fa-circle.text-primary.me-2 - span.border-dotted(title="Local, spendable balance on the local side of this channel.", data-bs-toggle="tooltip") Spendable - - span.badge.text-bg-primary.fs-80 - +btcValue(localBalance) - - .text-end - .mb-2 - i.fas.fa-circle.text-info.me-2 - span.border-dotted(title="Total receivable balance on the remote side of this channel.", data-bs-toggle="tooltip") Receivable - - span.badge.text-bg-info.fs-80 - +btcValue(remoteBalance) - - - - +progressBar([localBalance, remoteBalance], ["text-bg-primary", "text-bg-info"]) - - - - +summaryItem("Received / Sent Value") - if (valueReceived != null && (valueReceived > 0 || valueSent > 0)) - .d-flex.justify-content-between.fs-90.mb-3 - .text-start - .mb-2 - i.fas.fa-circle.text-success.me-2 - span.border-dotted(title="Value received via this channel.", data-bs-toggle="tooltip") Received - - span.badge.text-bg-success.fs-80 - +btcValue(valueReceived) - - - if (netValue != 0) - .text-center - .mb-2 - span.border-dotted(title="Net value (received minus sent) received via this channel.", data-bs-toggle="tooltip") Net - - if (netValue < 0) - span.badge.text-bg-danger - | - - +btcValue(netValue.times(-1)) - else - span.badge.text-bg-success - | + - +btcValue(netValue) - - - .text-end - .mb-2 - i.fas.fa-circle.text-danger.me-2 - span.border-dotted(title="Value sent via this channel.", data-bs-toggle="tooltip") Sent - - span.badge.text-bg-danger.fs-80 - +btcValue(valueSent) - - + if (channel != null && localChannels.byId && localChannels.byId[channel.channel_id]) + li.breadcrumb-item + a(href="/") Home + li.breadcrumb-item My Node + li.breadcrumb-item + a(href="/local-channels") My Channels + li.breadcrumb-item Channel #{ channel.channel_id } + + else + li.breadcrumb-item + a(href="/") Home + li.breadcrumb-item Network + li.breadcrumb-item + a(href="/channels") All Channels + li.breadcrumb-item Channel #{ channelId } - +progressBar([valueReceived, valueSent], ["text-bg-success", "text-bg-danger"]) - - else - span.text-muted (none) - - - - - hr.my-4 - - - +summaryRow(3 + (localChannel ? 1 : 0)) - +summaryItem("Last Update") - +date(channel.last_update) - - - +summaryItem("Capacity") - +btcValue(channel.capacity) - - - +summaryItem("Channel Point", "On-chain transaction:output-index that opened this channel.") - +channelPoint(channelPointTxid, channelPointIndex, blockHeight) - - - if (localChannel) - +summaryItem("Uptime") - | #{new Decimal(localChannel.uptime).dividedBy(localChannel.lifetime).times(100).toDP(1)}% - - - - if (localChannel) - - hr.my-4 - - +summaryRow(2) - +summaryItem("Creator") - if (localChannel.initiator) - | You - else - | Them - - +summaryItem("Updates") - | #{parseInt(localChannel.num_updates).toLocaleString()} - - - - - - - - - - - - - - - +contentSection("Tools") - if (localChannels.byId[channel.channel_id]) - if (session.admin) - include includes/edit-channel-policies-modal.pug - - a.btn.btn-primary.me-0.me-lg-2.mb-2.mb-lg-0.d-block.d-lg-inline-block(href=`javascript:void(0)` data-bs-toggle="modal" data-bs-target="#updateChannelPoliciesModal") - i.fas.fa-pen.me-2 - span Edit Policies... - - else - a.btn.btn-secondary.me-0.me-lg-2.mb-2.mb-lg-0.d-block.d-md-inline-block(href=`javascript:void(0)` data-bs-toggle="tooltip" title="You need to log in to modify your channels." disabled) - i.fas.fa-edit.me-2 - span Edit Policies... - - if (utils.isObjectStarred(`channel:${channelId}`)) - a.btn.btn-primary.me-0.me-lg-2.mb-2.mb-lg-0.d-block.d-lg-inline-block(href=`/tag?action=remove&tagType=star&objectId=channel:${channelId}` title="Remove this channel from your list of favorites" data-bs-toggle="tooltip") - i.far.fa-star.me-2 - span Unstar Channel - - else - a.btn.btn-primary.me-0.me-lg-2.mb-2.mb-lg-0.d-block.d-lg-inline-block(href=`/tag?action=add&tagType=star&objectId=channel:${channelId}` title="Add this channel to your list of favorites" data-bs-toggle="tooltip") - i.fas.fa-star.me-2 - span Star Channel - - - if (localChannels.byId[channel.channel_id]) - if (session.admin) - include includes/close-channel-modal.pug - - a.btn.btn-danger.me-0.me-lg-2.mb-2.mb-lg-0.d-block.d-lg-inline-block(href="javascript:void(0)" data-bs-toggle="modal" data-bs-target="#closeChannelModal") - i.fas.fa-times.me-2 - span Close Channel... - - else - a.btn.btn-danger.me-0.me-lg-2.mb-2.mb-lg-0.d-block.d-lg-inline-block(href="javascript:void(0)" data-bs-toggle="tooltip" title="You need to log in to modify your channels." disabled) - i.fas.fa-times.me-2 - span Close Channel... - - - +contentSection("Policies") - .table-responsive-sm - table.table.table-striped.mb-0 - thead - tr - th.text-end.fw-light # - th Node - th.text-end - span.border-dotted(title="The CLTV delta that will be applied to all forwarded HTLCs." data-bs-toggle="tooltip") Time Lock Delta - th.text-end Min HTLC - th.text-end - span.border-dotted(title="The base fee in milli-satoshis that will be charged for each forwarded HTLC, regardless of payment size." data-bs-toggle="tooltip") Base Fee - th.text-end - span.border-dotted(title="The fee rate that will be charged proportionally based on the value of each forwarded HTLC. The lowest possible rate is 1 milli-msat (0.000001)" data-bs-toggle="tooltip") Fee Rate (milli-msat) - tbody - tr - th.text-end.fw-light 1 - td - +nodeCard(channel.node1_pub) - - if (channel.node1_policy) - td.text-end #{parseInt(channel.node1_policy.time_lock_delta).toLocaleString()} - td.text-end #{parseInt(channel.node1_policy.min_htlc).toLocaleString()} - td.text-end - +btcValue(channel.node1_policy.fee_base_msat, "msat", "msat") - - td.text-end #{parseInt(channel.node1_policy.fee_rate_milli_msat).toLocaleString()} - else - td.text-end ? - td.text-end ? - td.text-end ? - td.text-end ? - tr - th.text-end.fw-light 2 - td - +nodeCard(channel.node2_pub) - - if (channel.node2_policy) - td.text-end #{parseInt(channel.node2_policy.time_lock_delta).toLocaleString()} - td.text-end #{parseInt(channel.node2_policy.min_htlc).toLocaleString()} - td.text-end - +btcValue(channel.node2_policy.fee_base_msat, "msat", "msat") - - td.text-end #{parseInt(channel.node2_policy.fee_rate_milli_msat).toLocaleString()} - else - td.text-end ? - td.text-end ? - td.text-end ? - td.text-end ? - - - +contentSection("Node Details") - - var nodes = [ node1, node2 ]; - - var nodePubkeys = [ channel.node1_pub, channel.node2_pub ]; - - var showTableNumbers = true; - include includes/node-details-table.pug - - - +pageTab("JSON") - +contentSection("parsedChannelId") - pre - code.json #{JSON.stringify(parsedChannelId, null, 4)} - - +contentSection("channelInfo") - pre - code.json #{JSON.stringify(channel, null, 4)} - - if (localChannels.byId[channel.channel_id]) - +contentSection("localChannelInfo") - pre - code.json #{JSON.stringify(localChannel, null, 4)} - - +contentSection("node1Info") - pre - code.json #{JSON.stringify(node1, null, 4)} - - +contentSection("node2Info") - pre - code.json #{JSON.stringify(node2, null, 4)} \ No newline at end of file +block content + if (channel) + - var localChannel = localChannels.byId && localChannels.byId[channel.channel_id]; + - var localChannelStatus = "Active"; + + if (localChannels.byId[channel.channel_id] && !localChannels.byId[channel.channel_id].active) + - localChannelStatus = "Inactive"; + + if (!localChannel) + - localChannel = localClosedChannels.byId && localClosedChannels.byId[channel.channel_id]; + + if (!localChannel && localPendingChannels.waitingCloseChannels) + each waitingCloseChannel in localPendingChannels.waitingCloseChannels + if (waitingCloseChannel.channel.channel_point == channel.chan_point) + - localChannel = true; + - localChannelStatus = "Waiting to Close"; + + mixin titlePillBadge(text, colorClass) + span.badge.rounded-pill.fs-75.ms-2.align-text-bottom(class=colorClass) + | #{ text } + block + + +pageTitle("Channel", channelId, true) + span.h3 + if (localChannelStatus) + if (localChannelStatus == "Active") + +titlePillBadge(localChannelStatus, "text-bg-success") + + if (localChannelStatus == "Waiting to Close" || localChannelStatus == "Inactive") + +titlePillBadge(localChannelStatus, "text-bg-warning") + + if (localChannel && localChannel.private) + +titlePillBadge("Private", "text-bg-success") + i.fas.fa-lock.ms-2 + + if (localChannel) + span( + title="Your LND node is one of the participants in this channel", + data-bs-toggle="tooltip" + ) + i.fas.fa-certificate.fa-sm.text-primary.ms-2 + + if (utils.isObjectStarred(`channel:${channelId}`)) + span( + title="This is one of your favorite channels", + data-bs-toggle="tooltip" + ) + i.fas.fa-star.text-warning.fa-sm.ms-2 + + if (false) + pre + code.json #{ JSON.stringify(localPendingChannels, null, 4) } + + if (channel == null) + .alert.alert-warning.shadow-sm + span Channel + span.fw-bold #{ channelId } + span : Not Found + + else + - var channelPointParts = channel.chan_point.split(":"); + - var channelPointTxid = channelPointParts[0]; + - var channelPointIndex = channelPointParts[1]; + + if (localChannels.byId && localChannels.byId[channel.channel_id]) + - var localChannel = localChannels.byId[channel.channel_id]; + + - var localBalance = new Decimal(localChannel.local_balance); + - var remoteBalance = new Decimal(localChannel.remote_balance); + + - var valueReceived = new Decimal(localChannel.total_satoshis_received); + - var valueSent = new Decimal(localChannel.total_satoshis_sent); + - var netValue = valueReceived.minus(valueSent); + + +pageTabs(["Details", "JSON"]) + + .tab-content + +pageTab("Details", true) + +contentSection("Summary") + if (localChannel) + .mb-3 + +summaryRow(2) + +summaryItem("Local / Remote Balances") + .d-flex.justify-content-between.fs-90.mb-3 + .text-start + .mb-2 + i.fas.fa-circle.text-primary.me-2 + span.border-dotted( + title="Local, spendable balance on the local side of this channel.", + data-bs-toggle="tooltip" + ) Spendable + + span.badge.text-bg-primary.fs-80 + +btcValue(localBalance) + + .text-end + .mb-2 + i.fas.fa-circle.text-info.me-2 + span.border-dotted( + title="Total receivable balance on the remote side of this channel.", + data-bs-toggle="tooltip" + ) Receivable + + span.badge.text-bg-info.fs-80 + +btcValue(remoteBalance) + + +progressBar([localBalance, remoteBalance], ["text-bg-primary", "text-bg-info"]) + + +summaryItem("Received / Sent Value") + if (valueReceived != null && (valueReceived > 0 || valueSent > 0)) + .d-flex.justify-content-between.fs-90.mb-3 + .text-start + .mb-2 + i.fas.fa-circle.text-success.me-2 + span.border-dotted( + title="Value received via this channel.", + data-bs-toggle="tooltip" + ) Received + + span.badge.text-bg-success.fs-80 + +btcValue(valueReceived) + + if (netValue != 0) + .text-center + .mb-2 + span.border-dotted( + title="Net value (received minus sent) received via this channel.", + data-bs-toggle="tooltip" + ) Net + + if (netValue < 0) + span.badge.text-bg-danger + | - + +btcValue(netValue.times(-1)) + else + span.badge.text-bg-success + | + + +btcValue(netValue) + + .text-end + .mb-2 + i.fas.fa-circle.text-danger.me-2 + span.border-dotted( + title="Value sent via this channel.", + data-bs-toggle="tooltip" + ) Sent + + span.badge.text-bg-danger.fs-80 + +btcValue(valueSent) + + +progressBar([valueReceived, valueSent], ["text-bg-success", "text-bg-danger"]) + + else + span.text-muted (none) + + hr.my-4 + + +summaryRow(3 + (localChannel ? 1 : 0)) + +summaryItem("Last Update") + +date(channel.last_update) + + +summaryItem("Capacity") + +btcValue(channel.capacity) + + +summaryItem("Channel Point", "On-chain transaction:output-index that opened this channel.") + +channelPoint(channelPointTxid, channelPointIndex, blockHeight) + + if (localChannel) + +summaryItem("Uptime") + | #{ new Decimal(localChannel.uptime).dividedBy(localChannel.lifetime).times(100).toDP(1) }% + + if (localChannel) + hr.my-4 + + +summaryRow(2) + +summaryItem("Creator") + if (localChannel.initiator) + | You + else + | Them + + +summaryItem("Updates") + | #{ parseInt(localChannel.num_updates).toLocaleString() } + + +contentSection("Tools") + if (localChannels.byId[channel.channel_id]) + if (session.admin) + include includes/edit-channel-policies-modal.pug + + a.btn.btn-primary.me-0.me-lg-2.mb-2.mb-lg-0.d-block.d-lg-inline-block( + href="javascript:void(0)", + data-bs-toggle="modal", + data-bs-target="#updateChannelPoliciesModal" + ) + i.fas.fa-pen.me-2 + span Edit Policies... + + else + a.btn.btn-secondary.me-0.me-lg-2.mb-2.mb-lg-0.d-block.d-md-inline-block( + href="javascript:void(0)", + data-bs-toggle="tooltip", + title="You need to log in to modify your channels.", + disabled + ) + i.fas.fa-edit.me-2 + span Edit Policies... + + if (utils.isObjectStarred(`channel:${channelId}`)) + a.btn.btn-primary.me-0.me-lg-2.mb-2.mb-lg-0.d-block.d-lg-inline-block( + href=`/tag?action=remove&tagType=star&objectId=channel:${channelId}`, + title="Remove this channel from your list of favorites", + data-bs-toggle="tooltip" + ) + i.far.fa-star.me-2 + span Unstar Channel + + else + a.btn.btn-primary.me-0.me-lg-2.mb-2.mb-lg-0.d-block.d-lg-inline-block( + href=`/tag?action=add&tagType=star&objectId=channel:${channelId}`, + title="Add this channel to your list of favorites", + data-bs-toggle="tooltip" + ) + i.fas.fa-star.me-2 + span Star Channel + + if (localChannels.byId[channel.channel_id]) + if (session.admin) + include includes/close-channel-modal.pug + + a.btn.btn-danger.me-0.me-lg-2.mb-2.mb-lg-0.d-block.d-lg-inline-block( + href="javascript:void(0)", + data-bs-toggle="modal", + data-bs-target="#closeChannelModal" + ) + i.fas.fa-times.me-2 + span Close Channel... + + else + a.btn.btn-danger.me-0.me-lg-2.mb-2.mb-lg-0.d-block.d-lg-inline-block( + href="javascript:void(0)", + data-bs-toggle="tooltip", + title="You need to log in to modify your channels.", + disabled + ) + i.fas.fa-times.me-2 + span Close Channel... + + +contentSection("Policies") + .table-responsive-sm + table.table.table-striped.mb-0 + thead + tr + th.text-end.fw-light # + th Node + th.text-end + span.border-dotted( + title="The CLTV delta that will be applied to all forwarded HTLCs.", + data-bs-toggle="tooltip" + ) Time Lock Delta + th.text-end Min HTLC + th.text-end + span.border-dotted( + title="The base fee in milli-satoshis that will be charged for each forwarded HTLC, regardless of payment size.", + data-bs-toggle="tooltip" + ) Base Fee + th.text-end + span.border-dotted( + title="The fee rate, in milli-msat, that will be charged proportionally based on the value of each forwarded HTLC. The lowest possible rate is 0 milli-msat (0.000000)", + data-bs-toggle="tooltip" + ) Fee Rate
(milli-msat) + th.text-end + span.border-dotted( + title="The base fee in milli-satoshis that will be either discounted or charged for each forwarded HTLC, regardless of payment size. The fee can be negative, providing a discount on the outbound channel.", + data-bs-toggle="tooltip" + ) Inbound Base Fee + th.text-end + span.border-dotted( + title="The fee rate that will be either discounted or charged proportionally based on the value of each forwarded HTLC. The rate can be negative, providing a discount on the outbound channel.", + data-bs-toggle="tooltip" + ) Inbound Fee Rate
(milli-msat) + + tbody + tr + th.text-end.fw-light 1 + td + +nodeCard(channel.node1_pub) + if (channel.node1_policy) + td.text-end #{ parseInt(channel.node1_policy.time_lock_delta).toLocaleString() } + td.text-end #{ parseInt(channel.node1_policy.min_htlc).toLocaleString() } + td.text-end + +btcValue(channel.node1_policy.fee_base_msat, "msat", "msat") + td.text-end #{ parseInt(channel.node1_policy.fee_rate_milli_msat).toLocaleString() } + td.text-end + +btcValue(channel.node1_policy.inbound_fee_base_msat, "msat", "msat") + td.text-end #{ parseInt(channel.node1_policy.inbound_fee_rate_milli_msat).toLocaleString() } + else + td.text-end ? + td.text-end ? + td.text-end ? + td.text-end ? + td.text-end ? + td.text-end ? + tr + th.text-end.fw-light 2 + td + +nodeCard(channel.node2_pub) + + if (channel.node2_policy) + td.text-end #{ parseInt(channel.node2_policy.time_lock_delta).toLocaleString() } + td.text-end #{ parseInt(channel.node2_policy.min_htlc).toLocaleString() } + td.text-end + +btcValue(channel.node2_policy.fee_base_msat, "msat", "msat") + td.text-end #{ parseInt(channel.node2_policy.fee_rate_milli_msat).toLocaleString() } + td.text-end + +btcValue(channel.node2_policy.inbound_fee_base_msat, "msat", "msat") + td.text-end #{ parseInt(channel.node2_policy.inbound_fee_rate_milli_msat).toLocaleString() } + else + td.text-end ? + td.text-end ? + td.text-end ? + td.text-end ? + td.text-end ? + td.text-end ? + + +contentSection("Node Details") + - var nodes = [node1, node2]; + - var nodePubkeys = [channel.node1_pub, channel.node2_pub]; + - var showTableNumbers = true; + include includes/node-details-table.pug + + +pageTab("JSON") + +contentSection("parsedChannelId") + pre + code.json #{ JSON.stringify(parsedChannelId, null, 4) } + + +contentSection("channelInfo") + pre + code.json #{ JSON.stringify(channel, null, 4) } + + if (localChannels.byId[channel.channel_id]) + +contentSection("localChannelInfo") + pre + code.json #{ JSON.stringify(localChannel, null, 4) } + + +contentSection("node1Info") + pre + code.json #{ JSON.stringify(node1, null, 4) } + + +contentSection("node2Info") + pre + code.json #{ JSON.stringify(node2, null, 4) } diff --git a/views/channels.pug b/views/channels.pug index 2071570..3a32968 100644 --- a/views/channels.pug +++ b/views/channels.pug @@ -1,83 +1,86 @@ extends layout block headContent - title All Channels + title All Channels block breadcrumb - li.breadcrumb-item - a(href='/') Home - li.breadcrumb-item Network - li.breadcrumb-item All Channels - -block content - +pageTitle(`${fullNetworkDescription.channels.sortedByLastUpdate.length.toLocaleString()} Channel${(fullNetworkDescription.channels.sortedByLastUpdate.length == 1) ? "" : "s"}`) - - - if (!session.hideChannelsNetworkNote) - .alert.alert-primary.alert-dismissible.shadow-sm(role="alert") - .mb-2 - span This shows all public channels on that network, - span.fw-bold from the perspective of your node - span . If your node has been recently started/configured, it may take time before it has a good view of the rest of the public network. + li.breadcrumb-item + a(href="/") Home + li.breadcrumb-item Network + li.breadcrumb-item All Channels - div - a(href="/changeSetting?name=hideChannelsNetworkNote&value=true") Don't show this note again - - - a.btn-close(href="/changeSetting?name=hideChannelsNetworkNote&value=true", aria-label="Close", style="text-decoration: none;") +block content + +pageTitle(`${fullNetworkDescription.channels.sortedByLastUpdate.length.toLocaleString()} Channel${(fullNetworkDescription.channels.sortedByLastUpdate.length == 1) ? "" : "s"}`) + if (!session.hideChannelsNetworkNote) + .alert.alert-primary.alert-dismissible.shadow-sm(role="alert") + .mb-2. + This shows all public channels on the network, + #[span.fw-bold from the perspective of your node.] + If your node has been recently started/configured, it may take time before it has a good view of the rest of the public network. - +card - +filterList - +filterItem - - var sortOptions = [["Open Block", "openblockheight-desc"], ["Last Update", "last_update-desc"], ["Capacity", "capacity-desc"]]; + div + a(href="/changeSetting?name=hideChannelsNetworkNote&value=true") Don't show this note again - +filterBtnGroup("Sort", null, sortOptions, `/channels?starred=${starred}&limit=${limit}`, "sort", sort) + a.btn-close( + href="/changeSetting?name=hideChannelsNetworkNote&value=true", + aria-label="Close", + style="text-decoration: none" + ) + +card + +filterList + +filterItem + - var sortOptions = [["Open Block", "openblockheight-desc"], ["Last Update", "last_update-desc"], ["Capacity", "capacity-desc"]]; - +filterItem - - var starredFilterOptions = [["Yes", "yes"], ["All", "all"]]; + +filterBtnGroup("Sort", null, sortOptions, `/channels?starred=${starred}&limit=${limit}`, "sort", sort) - +filterBtnGroup("Starred", "Option to only show channels that you have 'starred' (favorited) in the app", starredFilterOptions, `/channels?sort=${sort}&limit=${limit}`, "starred", starred) + +filterItem + - var starredFilterOptions = [["Yes", "yes"], ["All", "all"]]; + +filterBtnGroup("Starred", "Option to only show channels that you have 'starred' (favorited) in the app", starredFilterOptions, `/channels?sort=${sort}&limit=${limit}`, "starred", starred) - +filterItem - - var pageSizeOptions = [["20", "20"], ["50", "50"], ["100", "100"]]; + +filterItem + - var pageSizeOptions = [["20", "20"], ["50", "50"], ["100", "100"]]; - +filterBtnGroup("Page Size", null, pageSizeOptions, `/channels?sort=${sort}&starred=${starred}`, "limit", limit) + +filterBtnGroup("Page Size", null, pageSizeOptions, `/channels?sort=${sort}&starred=${starred}`, "limit", limit) - hr.my-3 + hr.my-3 - div - if (allFilteredChannels.length > limit) - span Showing - span.fw-bold ##{(offset + 1).toLocaleString()} - #{Math.min(offset + limit, allFilteredChannels.length).toLocaleString()} - span of - span.fw-bold #{allFilteredChannels.length.toLocaleString()} - if (allChannels.length > allFilteredChannels.length) - span filtered - span channel - if (allFilteredChannels.length != 1) - span s + div + if (allFilteredChannels.length > limit) + span. + Showing + #[span.fw-bold ##{ (offset + 1).toLocaleString() } - #{ Math.min(offset + limit, allFilteredChannels.length).toLocaleString() }] + of + #[span.fw-bold #{ allFilteredChannels.length.toLocaleString() }] - else if (allFilteredChannels.length > 0) - span Showing - span.fw-bold #{allFilteredChannels.length.toLocaleString()} - if (allChannels.length > allFilteredChannels.length) - span filtered + if (allChannels.length > allFilteredChannels.length) + | filtered - span channel - if (allFilteredChannels.length > 1) - span s - else - .alert.alert-warning.shadow-sm.mb-0 No matching channels + | + | channel + if (allFilteredChannels.length != 1) + | s + else if (allFilteredChannels.length > 0) + span. + Showing + #[span.fw-bold #{ allFilteredChannels.length.toLocaleString() }] - +pagination(allFilteredChannels.length, limit, offset, paginationBaseUrl) + if (allChannels.length > allFilteredChannels.length) + | filtered + | + | channel + if (allFilteredChannels.length > 1) + | s + else + .alert.alert-warning.shadow-sm.mb-0 No matching channels - if (pagedFilteredChannels.length > 0) - - var channelTableIndexOffset = offset; - - var channels = pagedFilteredChannels; - include includes/channel-table.pug + +pagination(allFilteredChannels.length, limit, offset, paginationBaseUrl) + if (pagedFilteredChannels.length > 0) + - var channelTableIndexOffset = offset; + - var channels = pagedFilteredChannels; + include includes/channel-table.pug diff --git a/views/create-invoice.pug b/views/create-invoice.pug index 00d7bd4..4e9b54b 100644 --- a/views/create-invoice.pug +++ b/views/create-invoice.pug @@ -1,81 +1,85 @@ extends layout block headContent - title Create Invoice + title Create Invoice block breadcrumb - li.breadcrumb-item - a(href='/') Home - li.breadcrumb-item Tools - li.breadcrumb-item Create Invoice - + li.breadcrumb-item + a(href="/") Home + li.breadcrumb-item Tools + li.breadcrumb-item Create Invoice + block content - +pageTitle("Create Invoice") - - - if (createInvoiceResponse != null) - .alert.alert-success - h3.h5 Success - - .mb-3 Your invoice was created successfully - - - .mb-3 - div Payment Request - span.h4.fw-light - | #{utils.ellipsizeMiddle(createInvoiceResponse.payment_request, 40)} - +copyTextButton(createInvoiceResponse.payment_request) - - - .mb-3 - label.form-label QR Code - .input-group - img(src=`/qrcode?data=${createInvoiceResponse.payment_request}` style="width: 300px; height: 300px;") - - .mb-3 - span.fw-bold Hash (hex) - br - span #{createInvoiceResponse.r_hash_hex} - - .mb-3 - span.fw-bold Hash (base64) - br - span #{createInvoiceResponse.r_hash_base64} - - if (false) - pre - code.json #{JSON.stringify(createInvoiceResponse, null, 4)} - - if (!session.admin) - - var loginRequiredNote = "allow you to create a new invoice."; - include includes/login-required-alert.pug - - else - - form(method="post", action="/create-invoice") - .mb-3 - label.form-label(for="memo") Memo - input.form-control.form-control-lg(type="text" id="memo" name="memo") - - .d-flex - .mb-3 - label.form-label(for="amount") Amount - - .input-group - input.form-control.form-control-lg(type="number" id="amount" name="amount") - - .input-group-text sat - - .mb-3.ms-3 - label.form-label(for="expiration") Expiration - - .input-group - input.form-control.form-control-lg(type="number" id="expiration" name="expiration" value="24") - - .input-group-text hrs - - button.btn.btn-primary(type="submit") - i.fas.fa-asterisk.me-2 - span Create Invoice - - \ No newline at end of file + +pageTitle("Create Invoice") + + if (createInvoiceResponse != null) + .alert.alert-success + h3.h5 Success + + .mb-3 Your invoice was created successfully + + .mb-3 + div Payment Request + span.h4.fw-light + | #{ utils.ellipsizeMiddle(createInvoiceResponse.payment_request, 40) } + +copyTextButton(createInvoiceResponse.payment_request) + + .mb-3 + label.form-label QR Code + .input-group + img( + src=`/qrcode?data=${createInvoiceResponse.payment_request}`, + style="width: 300px; height: 300px" + ) + + .mb-3 + span.fw-bold Hash (hex) + br + span #{ createInvoiceResponse.r_hash_hex } + + .mb-3 + span.fw-bold Hash (base64) + br + span #{ createInvoiceResponse.r_hash_base64 } + + if (false) + pre + code.json #{ JSON.stringify(createInvoiceResponse, null, 4) } + + if (!session.admin) + - var loginRequiredNote = "allow you to create a new invoice."; + include includes/login-required-alert.pug + + else + form(method="post", action="/create-invoice") + .mb-3 + label.form-label(for="memo") Memo + input#memo.form-control.form-control-lg(type="text", name="memo") + + .d-flex + .mb-3 + label.form-label(for="amount") Amount + + .input-group + input#amount.form-control.form-control-lg( + type="number", + name="amount" + ) + + .input-group-text sat + + .mb-3.ms-3 + label.form-label(for="expiration") Expiration + + .input-group + input#expiration.form-control.form-control-lg( + type="number", + name="expiration", + value="24" + ) + + .input-group-text hrs + + button.btn.btn-primary(type="submit") + i.fas.fa-asterisk.me-2 + span Create Invoice diff --git a/views/edit-multi-channel-policies.pug b/views/edit-multi-channel-policies.pug index 5a713d4..e186c43 100644 --- a/views/edit-multi-channel-policies.pug +++ b/views/edit-multi-channel-policies.pug @@ -1,303 +1,345 @@ extends layout block headContent - title Bulk Edit Channels + title Bulk Edit Channels block breadcrumb - li.breadcrumb-item - a(href='/') Home - li.breadcrumb-item Tools - li.breadcrumb-item Bulk Edit Channels + li.breadcrumb-item + a(href="/") Home + li.breadcrumb-item Tools + li.breadcrumb-item Bulk Edit Channels block content - +pageTitle("Bulk Edit Channels") - - - if (!session.admin) - - var loginRequiredNote = "allow you to edit all of your channels' fee/routing policies."; - include includes/login-required-alert.pug - - else - - +pageTabs(["Edit All Channels", "Edit Selected Channels"]) - - if (false) - pre - code.json #{JSON.stringify(channelFeeSummary, null, 4)} - - .tab-content - +pageTab("Edit All Channels", true) - - .alert.alert-primary.mb-3.shadow-sm This tool sets all open channels to the same policy. If you wish to edit only a subset of your open channels, switch tabs. - - +contentSection("Edit All Channels") - - form(method="post") - input(type="hidden" name="tab" value=tab) - - .mb-3 - label.form-label(for="baseFeeMsat") - span.border-dotted(title="The base fee in milli-satoshis that will be charged for each forwarded HTLC, regardless of payment size (default: 0)" data-bs-toggle="tooltip") Base Fee (msat) - input.form-control(id="baseFeeMsat" name="baseFeeMsat" type="number" placeholder=(channelFeeSummary.base_fee_msat_list.length > 1 ? "multiple values (see below)" : "") value=(channelFeeSummary.base_fee_msat_list.length == 1 ? channelFeeSummary.base_fee_msat_list[0] : false)) - - if (channelFeeSummary.base_fee_msat_list.length == 1) - .form-text - span All open channels (#{localChannels.length.toLocaleString()}) currently set to: - br - span Base Fee = #{channelFeeSummary.base_fee_msat_list[0]} msat - else - hr.mt-4 - - span Channel Counts By Current Value - .table-responsive - table.table(style="display: inline;") - thead - tr - each item in channelFeeSummary.base_fee_msat_list - td.border-top-0 #{item.toLocaleString()} msat - tbody - tr - each item in channelFeeSummary.base_fee_msat_list - - var chanCount = channelFeeSummary.base_fee_msat[item].length; - td #{chanCount.toLocaleString()} - if (chanCount == 1) - span channel - else - span channels - - - - .mb-3 - label.form-label(for="feeRateMilliMsat") - span.border-dotted(title="The fee rate that will be charged proportionally based on the value of each forwarded HTLC. The lowest possible rate is 1 milli-msat (0.000001)" data-bs-toggle="tooltip") Fee Rate (milli-msat) - input.form-control(id="feeRateMilliMsat" name="feeRateMilliMsat" type="number" placeholder=(channelFeeSummary.fee_per_mil_list.length > 1 ? "multiple values (see below)" : "") value=(channelFeeSummary.fee_per_mil_list.length == 1 ? channelFeeSummary.fee_per_mil_list[0] : false)) - - - if (channelFeeSummary.fee_per_mil_list.length == 1) - .form-text - span All open channels (#{localChannels.length.toLocaleString()}) currently set to: - br - span Fee Rate = #{channelFeeSummary.fee_per_mil_list[0]} milli-msat - else - hr.mt-4 - - span Channel Counts By Current Value - .table-responsive - table.table(style="display: inline;") - thead - tr - each item in channelFeeSummary.fee_per_mil_list - td.border-top-0 #{item.toLocaleString()} milli-msat - tbody - tr - each item in channelFeeSummary.fee_per_mil_list - - var chanCount = channelFeeSummary.fee_per_mil[item].length; - td #{chanCount.toLocaleString()} - if (chanCount == 1) - span channel - else - span channels - - - - .mb-3 - label.form-label(for="timeLockDelta") - span.border-dotted(title="The CLTV delta that will be applied to all forwarded HTLCs (default: 0)" data-bs-toggle="tooltip") Time Lock Delta - input.form-control(id="timeLockDelta" name="timeLockDelta" type="number" placeholder=(channelFeeSummary.time_lock_delta_list.length > 1 ? "multiple values (see below)" : "") value=(channelFeeSummary.time_lock_delta_list.length == 1 ? channelFeeSummary.time_lock_delta_list[0] : false)) - - - if (channelFeeSummary.time_lock_delta_list.length == 1) - .form-text - span All open channels (#{localChannels.length.toLocaleString()}) currently set to: - br - span Time Lock Delta = #{channelFeeSummary.time_lock_delta_list[0]} - else - hr.mt-4 - - span Channel Counts By Current Value - .table-responsive - table.table(style="display: inline;") - thead - tr - each item in channelFeeSummary.time_lock_delta_list - td.border-top-0 #{item.toLocaleString()} - tbody - tr - each item in channelFeeSummary.time_lock_delta_list - - var chanCount = channelFeeSummary.time_lock_delta[item].length; - td #{chanCount.toLocaleString()} - if (chanCount == 1) - span channel - else - span channels - - - - - button.btn.btn-primary(type="submit") - i.fas.fa-pen.me-2 - span Edit Policies For #{localChannels.length.toLocaleString()} Open Channels - - - +pageTab("Edit Selected Channels") - - .alert.alert-primary.shadow-sm Coming soon... - - if (false) - if (localChannels.length > 0) - .table-responsive - table.table.table-bordered.border-top - thead.table-head-with-nav - tr - th.text-end.fw-light # - - th.text-center - input(type="checkbox") - th ID - th Remote Node - th.text-end - if (sort == "openblockheight-desc") - span.border-dotted.me-2(title="The height of the block that confirmed each channel's opening transaction" data-bs-toggle="tooltip") Open Block Height - i.fas.fa-arrow-down - else - a.border-dotted(href=`/local-channels?sort=openblockheight-desc&status=${status}&localbalance=${localbalance}&remotebalance=${remotebalance}` title="Sort by the height of the block that confirmed each channel's opening transaction" data-bs-toggle="tooltip") - span Open Block Height - - th.text-end - if (sort == "basefee-desc") - span.me-2 Base Fee - i.fas.fa-arrow-down - else - a(href=`/edit-multi-channel-policies?sort=valuetransfer-desc&status=${status}&localbalance=${localbalance}&remotebalance=${remotebalance}` title="Sort" data-bs-toggle="tooltip") - span Base Fee - - th.text-end - if (sort == "valuetransfer-desc") - span.me-2 Value Transfer - i.fas.fa-arrow-down - else - a(href=`/local-channels?sort=valuetransfer-desc&status=${status}&localbalance=${localbalance}&remotebalance=${remotebalance}` title="Sort" data-bs-toggle="tooltip") - span Value Transfer - - th.text-end - if (sort == "localbalance-desc") - span.me-2 Local Balance - i.fas.fa-arrow-down - else - a(href=`/local-channels?sort=localbalance-desc&status=${status}&localbalance=${localbalance}&remotebalance=${remotebalance}` title="Sort" data-bs-toggle="tooltip") - span Local Balance - - th.text-end - if (sort == "remotebalance-desc") - span.me-2 Remote Balance - i.fas.fa-arrow-down - else - a(href=`/local-channels?sort=remotebalance-desc&status=${status}&localbalance=${localbalance}&remotebalance=${remotebalance}` title="Sort" data-bs-toggle="tooltip") - span Remote Balance - - th Details - - tbody - each channel, channel_index in localChannels - - var localChannel_index = channel_index; - - var localChannel = channel; - - if (channel.active) - +modal(`localChannelModal-${channel.chan_id}`) - pre - code.json #{JSON.stringify(channel, null, 4)} - - tr.word-wrap - th.text-end #{(channel_index + 1).toLocaleString()} - th.text-center - input(type="checkbox") - td(class="table-col-channelid") - if (channel.chan_id) - +channelId(channel.chan_id, channel.active) - - else - span - - - td - if (channel.remote_pubkey) - - var card_node_pubkey = channel.remote_pubkey; - - else if (channel.channel.remote_node_pub) - - var card_node_pubkey = channel.channel.remote_node_pub; - - +nodeCard(card_node_pubkey) - - td.text-end - if (config.blockExplorerUrl) - a(href=`${config.blockExplorerUrl}/block-height/${parsedChannelIds[channel.chan_id].blockHeight}` target="_blank") #{parsedChannelIds[channel.chan_id].blockHeight.toLocaleString()} - - else - span #{parsedChannelIds[channel.chan_id].blockHeight.toLocaleString()} - - td.text-end - - - td.text-end - if (channel.active) - - var atLeastOne = false; - if (channel.total_satoshis_received > 0) - - var atLeastOne = true; - - span.text-success - span + - +btcValue(channel.total_satoshis_received) - - br - - if (channel.total_satoshis_sent > 0) - - var atLeastOne = true; - - span.text-danger - span - - +btcValue(channel.total_satoshis_sent) - - if (!atLeastOne) - span - - - else - span - - - td.text-end - if (channel.active) - +btcValue(channel.local_balance) - - else if (channel.channel != null) - .text-muted - +btcValue(channel.channel.local_balance) - - else - span - - - td.text-end - if (channel.active) - +btcValue(channel.remote_balance) - - if (false) - .row - .col-md-6.text-end - +btcValue(channel.local_balance) - - .col-md-6.text-end - +btcValue(channel.remote_balance) - - - var fullPercent = new Decimal(100 * parseFloat(channel.local_balance) / (parseFloat(channel.local_balance) + parseFloat(channel.remote_balance))).toDecimalPlaces(1); - - .progress.mt-2(style="height: 6px;") - div(class="progress-bar", role="progressbar", style=("width: " + fullPercent + "%;"), aria-valuenow=parseInt(fullPercent), aria-valuemin="0", aria-valuemax="100") - - else if (channel.channel != null) - .text-muted - +btcValue(channel.channel.remote_balance) - - else - span - - - - td.text-reset - a(href="javascript:void(0)" data-bs-toggle="modal" data-bs-target=("#localChannelModal-" + localChannel_index)) Details - + +pageTitle("Bulk Edit Channels") + + if (!session.admin) + - var loginRequiredNote = "allow you to edit all of your channels' fee/routing policies."; + include includes/login-required-alert.pug + + else + +pageTabs(["Edit All Channels", "Edit Selected Channels"]) + + if (false) + pre + code.json #{ JSON.stringify(channelFeeSummary, null, 4) } + + .tab-content + +pageTab("Edit All Channels", true) + .alert.alert-primary.mb-3.shadow-sm This tool sets all open channels to the same policy. If you wish to edit only a subset of your open channels, switch tabs. + + +contentSection("Edit All Channels") + form(method="post") + input(type="hidden", name="tab", value=tab) + + .mb-3 + label.form-label(for="baseFeeMsat") + span.border-dotted( + title="The base fee in milli-satoshis that will be charged for each forwarded HTLC, regardless of payment size (default: 0)", + data-bs-toggle="tooltip" + ) Base Fee (msat) + input#baseFeeMsat.form-control( + name="baseFeeMsat", + type="number", + placeholder=channelFeeSummary.base_fee_msat_list.length > 1 ? "multiple values (see below)" : "", + value=channelFeeSummary.base_fee_msat_list.length == 1 ? channelFeeSummary.base_fee_msat_list[0] : false + ) + + if (channelFeeSummary.base_fee_msat_list.length == 1) + .form-text + span All open channels (#{ localChannels.length.toLocaleString() }) currently set to: + br + span Base Fee = #{ channelFeeSummary.base_fee_msat_list[0] } msat + else + hr.mt-4 + + span Channel Counts By Current Value + .table-responsive + table.table(style="display: inline") + thead + tr + each item in channelFeeSummary.base_fee_msat_list + td.border-top-0 #{ item.toLocaleString() } msat + tbody + tr + each item in channelFeeSummary.base_fee_msat_list + - var chanCount = channelFeeSummary.base_fee_msat[item].length; + td #{ chanCount.toLocaleString() } + if (chanCount == 1) + span channel + else + span channels + + .mb-3 + label.form-label(for="feeRateMilliMsat") + span.border-dotted( + title="The fee rate that will be charged proportionally based on the value of each forwarded HTLC. The lowest possible rate is 1 milli-msat (0.000001)", + data-bs-toggle="tooltip" + ) Fee Rate (milli-msat) + input#feeRateMilliMsat.form-control( + name="feeRateMilliMsat", + type="number", + placeholder=channelFeeSummary.fee_per_mil_list.length > 1 ? "multiple values (see below)" : "", + value=channelFeeSummary.fee_per_mil_list.length == 1 ? channelFeeSummary.fee_per_mil_list[0] : false + ) + + if (channelFeeSummary.fee_per_mil_list.length == 1) + .form-text + span All open channels (#{ localChannels.length.toLocaleString() }) currently set to: + br + span Fee Rate = #{ channelFeeSummary.fee_per_mil_list[0] } milli-msat + else + hr.mt-4 + + span Channel Counts By Current Value + .table-responsive + table.table(style="display: inline") + thead + tr + each item in channelFeeSummary.fee_per_mil_list + td.border-top-0 #{ item.toLocaleString() } milli-msat + tbody + tr + each item in channelFeeSummary.fee_per_mil_list + - var chanCount = channelFeeSummary.fee_per_mil[item].length; + td #{ chanCount.toLocaleString() } + if (chanCount == 1) + span channel + else + span channels + + .mb-3 + label.form-label(for="timeLockDelta") + span.border-dotted( + title="The CLTV delta that will be applied to all forwarded HTLCs (default: 0)", + data-bs-toggle="tooltip" + ) Time Lock Delta + input#timeLockDelta.form-control( + name="timeLockDelta", + type="number", + placeholder=channelFeeSummary.time_lock_delta_list.length > 1 ? "multiple values (see below)" : "", + value=channelFeeSummary.time_lock_delta_list.length == 1 ? channelFeeSummary.time_lock_delta_list[0] : false + ) + + if (channelFeeSummary.time_lock_delta_list.length == 1) + .form-text + span All open channels (#{ localChannels.length.toLocaleString() }) currently set to: + br + span Time Lock Delta = #{ channelFeeSummary.time_lock_delta_list[0] } + else + hr.mt-4 + + span Channel Counts By Current Value + .table-responsive + table.table(style="display: inline") + thead + tr + each item in channelFeeSummary.time_lock_delta_list + td.border-top-0 #{ item.toLocaleString() } + tbody + tr + each item in channelFeeSummary.time_lock_delta_list + - var chanCount = channelFeeSummary.time_lock_delta[item].length; + td #{ chanCount.toLocaleString() } + if (chanCount == 1) + span channel + else + span channels + + button.btn.btn-primary(type="submit") + i.fas.fa-pen.me-2 + span Edit Policies For #{ localChannels.length.toLocaleString() } Open Channels + + +pageTab("Edit Selected Channels") + .alert.alert-primary.shadow-sm Coming soon... + + if (false) + if (localChannels.length > 0) + .table-responsive + table.table.table-bordered.border-top + thead.table-head-with-nav + tr + th.text-end.fw-light # + + th.text-center + input(type="checkbox") + th ID + th Remote Node + th.text-end + if (sort == "openblockheight-desc") + span.border-dotted.me-2( + title="The height of the block that confirmed each channel's opening transaction", + data-bs-toggle="tooltip" + ) Open Block Height + i.fas.fa-arrow-down + else + a.border-dotted( + href=`/local-channels?sort=openblockheight-desc&status=${status}&localbalance=${localbalance}&remotebalance=${remotebalance}`, + title="Sort by the height of the block that confirmed each channel's opening transaction", + data-bs-toggle="tooltip" + ) + span Open Block Height + + th.text-end + if (sort == "basefee-desc") + span.me-2 Base Fee + i.fas.fa-arrow-down + else + a( + href=`/edit-multi-channel-policies?sort=valuetransfer-desc&status=${status}&localbalance=${localbalance}&remotebalance=${remotebalance}`, + title="Sort", + data-bs-toggle="tooltip" + ) + span Base Fee + + th.text-end + if (sort == "valuetransfer-desc") + span.me-2 Value Transfer + i.fas.fa-arrow-down + else + a( + href=`/local-channels?sort=valuetransfer-desc&status=${status}&localbalance=${localbalance}&remotebalance=${remotebalance}`, + title="Sort", + data-bs-toggle="tooltip" + ) + span Value Transfer + + th.text-end + if (sort == "localbalance-desc") + span.me-2 Local Balance + i.fas.fa-arrow-down + else + a( + href=`/local-channels?sort=localbalance-desc&status=${status}&localbalance=${localbalance}&remotebalance=${remotebalance}`, + title="Sort", + data-bs-toggle="tooltip" + ) + span Local Balance + + th.text-end + if (sort == "remotebalance-desc") + span.me-2 Remote Balance + i.fas.fa-arrow-down + else + a( + href=`/local-channels?sort=remotebalance-desc&status=${status}&localbalance=${localbalance}&remotebalance=${remotebalance}`, + title="Sort", + data-bs-toggle="tooltip" + ) + span Remote Balance + + th Details + + tbody + each channel, channel_index in localChannels + - var localChannel_index = channel_index; + - var localChannel = channel; + + if (channel.active) + +modal(`localChannelModal-${channel.chan_id}`) + pre + code.json #{ JSON.stringify(channel, null, 4) } + + tr.word-wrap + th.text-end #{ (channel_index + 1).toLocaleString() } + th.text-center + input(type="checkbox") + td.table-col-channelid + if (channel.chan_id) + +channelId(channel.chan_id, channel.active) + + else + span - + + td + if (channel.remote_pubkey) + - var card_node_pubkey = channel.remote_pubkey; + + else if (channel.channel.remote_node_pub) + - var card_node_pubkey = channel.channel.remote_node_pub; + + +nodeCard(card_node_pubkey) + + td.text-end + if (config.blockExplorerUrl) + a( + href=`${config.blockExplorerUrl}/block-height/${parsedChannelIds[channel.chan_id].blockHeight}`, + target="_blank" + ) #{ parsedChannelIds[channel.chan_id].blockHeight.toLocaleString() } + + else + span #{ parsedChannelIds[channel.chan_id].blockHeight.toLocaleString() } + + td.text-end + + td.text-end + if (channel.active) + - var atLeastOne = false; + if (channel.total_satoshis_received > 0) + - var atLeastOne = true; + + span.text-success + span + + +btcValue(channel.total_satoshis_received) + + br + + if (channel.total_satoshis_sent > 0) + - var atLeastOne = true; + + span.text-danger + span - + +btcValue(channel.total_satoshis_sent) + + if (!atLeastOne) + span - + + else + span - + + td.text-end + if (channel.active) + +btcValue(channel.local_balance) + + else if (channel.channel != null) + .text-muted + +btcValue(channel.channel.local_balance) + + else + span - + + td.text-end + if (channel.active) + +btcValue(channel.remote_balance) + + if (false) + .row + .col-md-6.text-end + +btcValue(channel.local_balance) + + .col-md-6.text-end + +btcValue(channel.remote_balance) + + - var fullPercent = new Decimal((100 * parseFloat(channel.local_balance)) / (parseFloat(channel.local_balance) + parseFloat(channel.remote_balance))).toDecimalPlaces(1); + + .progress.mt-2(style="height: 6px") + .progress-bar( + role="progressbar", + style="width: " + fullPercent + "%;", + aria-valuenow=parseInt(fullPercent), + aria-valuemin="0", + aria-valuemax="100" + ) + + else if (channel.channel != null) + .text-muted + +btcValue(channel.channel.remote_balance) + + else + span - + + td.text-reset + a( + href="javascript:void(0)", + data-bs-toggle="modal", + data-bs-target="#localChannelModal-" + localChannel_index + ) Details diff --git a/views/error-log.pug b/views/error-log.pug index 44631d6..b6feaad 100644 --- a/views/error-log.pug +++ b/views/error-log.pug @@ -1,84 +1,83 @@ extends layout block headContent - title Error Log + title Error Log block breadcrumb - li.breadcrumb-item - a(href='/') Home - li.breadcrumb-item Technical - li.breadcrumb-item Error Log + li.breadcrumb-item + a(href="/") Home + li.breadcrumb-item Technical + li.breadcrumb-item Error Log block content - +pageTitle("Error Log") - - - if (!session.admin) - - var loginRequiredNote = "display recent application errors."; - include includes/login-required-alert.pug - - else - - if (false) - pre - code.json #{JSON.stringify(errorSummary)} - - if (errorLog.length == 0) - .alert.alert-success.shadow-sm - | No recent errors - i.fas.fa-check.ms-2 - - else - - - - each error, errorIndex in errorLog - +modal("errorModal-" + errorIndex, `Error #${(errorIndex + 1).toLocaleString()}`) - h3.h6 Error - - pre - code.json #{JSON.stringify(error.error, null, 4)} - - if (error.error.stack) - hr - - h4.h6 Stacktrace - pre - code.json #{error.error.stack} - - if (error.userData) - hr - - h4.h6 User Data - pre - code.json #{JSON.stringify(error.userData, null, 4)} - - - - .table-responsive - table.table.table-striped - thead - tr - th.text-end.fw-light # - th Date - th - span.border-dotted(title="This identifies the error in the source code for LNDash." data-bs-toggle="tooltip") ID - - th Error - th.text-end Details - - tbody - each error, errorIndex in errorLog - tr - th.text-end.fw-light #{(errorIndex + 1).toLocaleString()} - - td - +date(error.date.getTime()/1000) - - td #{error.errorId} - td #{error.error} - - td.text-end - a.btn.btn-primary.btn-sm(href="javascript:void(0)" data-bs-toggle="modal" data-bs-target=("#errorModal-" + errorIndex)) - i.fas.fa-file-lines - + +pageTitle("Error Log") + + if (!session.admin) + - var loginRequiredNote = "display recent application errors."; + include includes/login-required-alert.pug + + else + if (false) + pre + code.json #{ JSON.stringify(errorSummary) } + + if (errorLog.length == 0) + .alert.alert-success.shadow-sm + | No recent errors + i.fas.fa-check.ms-2 + + else + each error, errorIndex in errorLog + +modal("errorModal-" + errorIndex, `Error #${(errorIndex + 1).toLocaleString()}`) + h3.h6 Error + + pre + code.json #{ JSON.stringify(error.error, null, 4) } + + if (error.error.stack) + hr + + h4.h6 Stacktrace + pre + code.json #{ error.error.stack } + + if (error.userData) + hr + + h4.h6 User Data + pre + code.json #{ JSON.stringify(error.userData, null, 4) } + + .table-responsive + table.table.table-striped + thead + tr + th.text-end.fw-light # + th Date + th + span.border-dotted( + title="This identifies the error in the source code for LNDash.", + data-bs-toggle="tooltip" + ) ID + + th Error + th.text-end Details + + tbody + each error, errorIndex in errorLog + tr + th.text-end.fw-light #{ (errorIndex + 1).toLocaleString() } + + td + +date(error.date.getTime()/1000) + + td #{ error.errorId } + td #{ error.error } + + td.text-end + a.btn.btn-primary.btn-sm( + href="javascript:void(0)", + data-bs-toggle="modal", + data-bs-target="#errorModal-" + errorIndex + ) + i.fas.fa-file-lines diff --git a/views/error.pug b/views/error.pug index f6b257a..124220c 100644 --- a/views/error.pug +++ b/views/error.pug @@ -1,20 +1,19 @@ extends layout block breadcrumb - li.breadcrumb-item - a(href='/') Home - li.breadcrumb-item Error + li.breadcrumb-item + a(href="/") Home + li.breadcrumb-item Error block content - +pageTitle("Error") - + +pageTitle("Error") - if (message) - p !{message} - else - p Unknown error + if (message) + p !{ message } + else + p Unknown error - if (error) - h2 #{error.status} - pre - code(class="json") #{error.stack} + if (error) + h2 #{ error.status } + pre + code.json #{ error.stack } diff --git a/views/forwarding-history.pug b/views/forwarding-history.pug index fab19bd..ca23199 100644 --- a/views/forwarding-history.pug +++ b/views/forwarding-history.pug @@ -1,316 +1,330 @@ extends layout block headContent - title Forwarding History + title Forwarding History block breadcrumb - li.breadcrumb-item - a(href='/') Home - li.breadcrumb-item Lightning Payments - li.breadcrumb-item Forwarding History - -block content - +pageTitle("Forwarding History") - - - if (!session.admin) - - var loginRequiredNote = "show this node's payment forwarding history."; - include includes/login-required-alert.pug - - else - - +card - .d-flex.flex-wrap - .me-3 - - var createdFilterOptions = [["1h", "60m"], ["24h", "24h"], ["7d", "7d"], ["30d", "30d"], ["All", "all"]]; - - +filterBtnGroup("Time", null, createdFilterOptions, `/forwarding-history?sort=${sort}&tab=${tab}&limit=${limit}`, "daterange", daterange) - - - - if (forwardingHistoryResponse.forwarding_events && forwardingHistoryResponse.forwarding_events.length > 0) - ul.nav.nav-tabs#page-tabs - li.nav-item.ms-3 - a.nav-link(href=`/forwarding-history?sort=${sort}&tab=summary&daterange=${daterange}&limit=${limit}` class=(tab == "summary" ? "active" : false)) Summary - li.nav-item - a.nav-link(href=`/forwarding-history?sort=${sort}&tab=events&daterange=${daterange}&limit=${limit}` class=(tab == "events" ? "active" : false)) Events - span.badge.text-bg-secondary.ms-2 #{forwardingHistoryResponse.forwarding_events.length.toLocaleString()} - li.nav-item - a.nav-link(href=`/forwarding-history?sort=${sort}&tab=channels&daterange=${daterange}&limit=${limit}` class=(tab == "channels" ? "active" : false)) Channels - span.badge.text-bg-secondary.ms-2 #{(inChannels.length + outChannels.length).toLocaleString()} - - .bg-gradient-body-to-main.pb-4.mb-2 - - - .tab-content - .tab-pane(id="tab-summary" role="tabpanel" class=(tab == "summary" ? "active" : false)) - if (tab == "summary") - +contentSection("Summary") - +summaryRow(3) - +summaryItem("Forwarded Payments") - | #{allFilteredEventsCount.toLocaleString()} - - +summaryItem("Total Fees Collected") - +btcValue(totalFees) - - +summaryItem("Total Value Transferred") - +btcValue(totalValueTransferred) - - - hr.my-4 - - - +summaryRow(2) - +summaryItem("Fee Stats", "Maximum and average fee collected", "max / avg") - +btcValue(maxFee) - - span.mx-2.text-muted / - - +btcValue(avgFee) - - - +summaryItem("Transfer Stats", "Maximum and average value transferred", "max / avg") - +btcValue(maxValueTransferred) - - span.mx-2.text-muted / - - +btcValue(avgValueTransferred) - - - - - .tab-pane(id="tab-events" role="tabpanel" class=(tab == "events" ? "active" : false)) - - if (tab == "events") - +card - +filterList - +filterItem - - var sortOptions = [["Date", "date-desc"], ["Value", "value-desc"]]; - - +filterBtnGroup("Sort", null, sortOptions, `/forwarding-history?tab=${tab}&daterange=${daterange}&limit=${limit}`, "sort", sort) - - +filterItem(true) - - var pageSizeOptions = [["20", "20"], ["50", "50"], ["100", "100"]]; + li.breadcrumb-item + a(href="/") Home + li.breadcrumb-item Lightning Payments + li.breadcrumb-item Forwarding History - +filterBtnGroup("Page Size", null, pageSizeOptions, `/forwarding-history?sort=${sort}&tab=${tab}&daterange=${daterange}`, "limit", limit) - - - hr.my-3 - - div - if (allFilteredEventsCount > limit) - span Showing - span.fw-bold ##{(offset + 1).toLocaleString()} - #{Math.min(offset + limit, allFilteredEventsCount).toLocaleString()} - span of - span.fw-bold #{allFilteredEventsCount.toLocaleString()} - if (allEvents.length > allFilteredEventsCount) - span filtered - span event - if (allFilteredEventsCount != 1) - span s - - else if (allFilteredEventsCount > 0) - span Showing - span.fw-bold #{allFilteredEventsCount.toLocaleString()} - if (allEvents.length > allFilteredEventsCount) - span filtered - - span event - if (allFilteredEventsCount > 1) - span s - else - .alert.alert-warning.shadow-sm.mb-0 No matching events - - - +pagination(allFilteredEventsCount, limit, offset, paginationBaseUrl) - - - - each forwardingEvent, forwardingEventIndex in pagedFilteredEvents - +modal(`forwardingEventModal-${forwardingEventIndex}`, `Forwarding Event #${(forwardingEventIndex + 1).toLocaleString()}`) - pre - code.json #{JSON.stringify(forwardingEvent, null, 4)} - - .table-responsive - table.table.table-striped - thead - tr - th.text-end.fw-light # - th Date - th Incoming Channel - th Outgoing Channel - th.text-end Incoming Amount - th.text-end Outgoing Amount - th.text-end Fee - th.text-end Raw - - tbody - each forwardingEvent, forwardingEventIndex in pagedFilteredEvents - tr - th.text-end.fw-light #{(forwardingEventIndex + offset + 1).toLocaleString()} - - td - +date(forwardingEvent.timestamp) - - - td - - var channel_id = forwardingEvent.chan_id_in; - - var channelInfo = fullNetworkDescription.channelsById[channel_id]; - - +channelId(forwardingEvent.chan_id_in, channelInfo != null) - - - if (channelInfo) - hr - - - var card_node_pubkey = channelInfo.node1_pub; - if (card_node_pubkey == lndRpc.internal_pubkey) - - card_node_pubkey = channelInfo.node2_pub; - - +nodeCard(card_node_pubkey, {style:"compact"}) - - td - - var channel_id = forwardingEvent.chan_id_out; - - var channelInfo = fullNetworkDescription.channelsById[channel_id]; - - +channelId(forwardingEvent.chan_id_out, channelInfo != null) - - - if (channelInfo) - hr - - - var card_node_pubkey = channelInfo.node1_pub; - if (card_node_pubkey == lndRpc.internal_pubkey) - - card_node_pubkey = channelInfo.node2_pub; - - +nodeCard(card_node_pubkey, {style:"compact"}) - - td.text-end - +btcValue(forwardingEvent.amt_in) - - td.text-end - +btcValue(forwardingEvent.amt_out) - - td.text-end - .text-success - span + - - +btcValue(forwardingEvent.fee) - - td.text-end - a.btn.btn-sm.btn-primary(href="javascript:void(0)" data-bs-toggle="modal" data-bs-target=("#forwardingEventModal-" + forwardingEventIndex)) - i.fas.fa-file-lines - - - .tab-pane(id="tab-channels" role="tabpanel" class=(tab == "channels" ? "active" : false)) - if (false) - pre - code.json #{JSON.stringify(inChannels, null, 4)} - - if (tab == "channels") - +card - +filterList - +filterItem - - var sortOptions = [["Σ Transferred", "valuetransfer-desc"], ["Fees", "fees-desc"], ["Payment Count", "eventcount-desc"], ["Channel ID", "channelId-asc"]]; - - +filterBtnGroup("Sort", null, sortOptions, `/forwarding-history?tab=${tab}&daterange=${daterange}&limit=${limit}`, "sort", sort) - - - let tabs = []; - - if (inChannels.length > 0) - - tabs.push(`Incoming Channels (${inChannels.length.toLocaleString()})`); - - if (outChannels.length > 0) - - tabs.push(`Outgoing Channels (${outChannels.length.toLocaleString()})`); - - +pageTabs(tabs) - - .tab-content - if (inChannels.length > 0) - +pageTab(tabs[0], true) - .table-responsive - table.table.table-striped - thead - tr - th.text-end.fw-light # - th Channel - th.text-end Payments - th.text-end Value Transferred - th.text-end Fees Collected - - - tbody - each channelForwardingInfo, channelInfoIndex in inChannels - tr - th.text-end.fw-light #{(channelInfoIndex + 1).toLocaleString()} - - td - - var channel_id = channelForwardingInfo.channelId; - - var channelInfo = fullNetworkDescription.channelsById[channel_id]; +block content + +pageTitle("Forwarding History") + + if (!session.admin) + - var loginRequiredNote = "show this node's payment forwarding history."; + include includes/login-required-alert.pug + + else + +card + .d-flex.flex-wrap + .me-3 + - var createdFilterOptions = [["1h", "60m"], ["24h", "24h"], ["7d", "7d"], ["30d", "30d"], ["All", "all"]]; + + +filterBtnGroup("Time", null, createdFilterOptions, `/forwarding-history?sort=${sort}&tab=${tab}&limit=${limit}`, "daterange", daterange) + + if (forwardingHistoryResponse.forwarding_events && forwardingHistoryResponse.forwarding_events.length > 0) + ul#page-tabs.nav.nav-tabs + li.nav-item.ms-3 + a.nav-link( + href=`/forwarding-history?sort=${sort}&tab=summary&daterange=${daterange}&limit=${limit}`, + class=tab == "summary" ? "active" : false + ) Summary + li.nav-item + a.nav-link( + href=`/forwarding-history?sort=${sort}&tab=events&daterange=${daterange}&limit=${limit}`, + class=tab == "events" ? "active" : false + ) Events + span.badge.text-bg-secondary.ms-2 #{ forwardingHistoryResponse.forwarding_events.length.toLocaleString() } + li.nav-item + a.nav-link( + href=`/forwarding-history?sort=${sort}&tab=channels&daterange=${daterange}&limit=${limit}`, + class=tab == "channels" ? "active" : false + ) Channels + span.badge.text-bg-secondary.ms-2 #{ (inChannels.length + outChannels.length).toLocaleString() } + + .bg-gradient-body-to-main.pb-4.mb-2 + + .tab-content + #tab-summary.tab-pane( + role="tabpanel", + class=tab == "summary" ? "active" : false + ) + if (tab == "summary") + +contentSection("Summary") + +summaryRow(3) + +summaryItem("Forwarded Payments") + | #{ allFilteredEventsCount.toLocaleString() } + + +summaryItem("Total Fees Collected") + +btcValue(totalFees) + + +summaryItem("Total Value Transferred") + +btcValue(totalValueTransferred) + + hr.my-4 + + +summaryRow(3) + +summaryItem("PPM Stats", "Maximum and average fee PPM", "max / avg") + span #{ maxPPM } + + span.mx-2.text-muted / + + span #{ avgPPM } + + +summaryItem("Fee Stats", "Maximum and average fee collected", "max / avg") + +btcValue(maxFee) + + span.mx-2.text-muted / + + +btcValue(avgFee) + + +summaryItem("Transfer Stats", "Maximum and average value transferred", "max / avg") + +btcValue(maxValueTransferred) + + span.mx-2.text-muted / + + +btcValue(avgValueTransferred) + + #tab-events.tab-pane( + role="tabpanel", + class=tab == "events" ? "active" : false + ) + if (tab == "events") + +card + +filterList + +filterItem + - var sortOptions = [["Date", "date-desc"], ["Value", "value-desc"]]; + + +filterBtnGroup("Sort", null, sortOptions, `/forwarding-history?tab=${tab}&daterange=${daterange}&limit=${limit}`, "sort", sort) + + +filterItem(true) + - var pageSizeOptions = [["20", "20"], ["50", "50"], ["100", "100"]]; + + +filterBtnGroup("Page Size", null, pageSizeOptions, `/forwarding-history?sort=${sort}&tab=${tab}&daterange=${daterange}`, "limit", limit) + + hr.my-3 + + div + if (allFilteredEventsCount > limit) + span. + Showing + #[span.fw-bold ##{ (offset + 1).toLocaleString() } - #{ Math.min(offset + limit, allFilteredEventsCount).toLocaleString() }] + of + #[span.fw-bold #{ allFilteredEventsCount.toLocaleString() }] + + if (allEvents.length > allFilteredEventsCount) + | filtered + + | + | event + if (allFilteredEventsCount != 1) + | s + + else if (allFilteredEventsCount > 0) + span. + Showing + #[span.fw-bold #{ allFilteredEventsCount.toLocaleString() }] + + if (allEvents.length > allFilteredEventsCount) + | filtered + + | + | event + if (allFilteredEventsCount > 1) + | s + else + .alert.alert-warning.shadow-sm.mb-0 No matching events + + +pagination(allFilteredEventsCount, limit, offset, paginationBaseUrl) + + each forwardingEvent, forwardingEventIndex in pagedFilteredEvents + +modal(`forwardingEventModal-${forwardingEventIndex}`, `Forwarding Event #${(forwardingEventIndex + 1).toLocaleString()}`) + pre + code.json #{ JSON.stringify(forwardingEvent, null, 4) } + + .table-responsive + table.table.table-striped + thead + tr + th.text-end.fw-light # + th Date + th Incoming Channel + th Outgoing Channel + th.text-end Incoming Amount + th.text-end Outgoing Amount + th.text-end Fee + th.text-end Effective PPM + th.text-end Raw + + tbody + each forwardingEvent, forwardingEventIndex in pagedFilteredEvents + tr + th.text-end.fw-light #{ (forwardingEventIndex + offset + 1).toLocaleString() } + + td + +date(forwardingEvent.timestamp) + + td + - var channel_id = forwardingEvent.chan_id_in; + - var channelInfo = fullNetworkDescription.channelsById[channel_id]; + + +channelId(forwardingEvent.chan_id_in, channelInfo != null) + + if (channelInfo) + hr + + - var card_node_pubkey = channelInfo.node1_pub; + if (card_node_pubkey == lndRpc.internal_pubkey) + - card_node_pubkey = channelInfo.node2_pub; + + +nodeCard(card_node_pubkey, {style:"compact"}) + + td + - var channel_id = forwardingEvent.chan_id_out; + - var channelInfo = fullNetworkDescription.channelsById[channel_id]; + + +channelId(forwardingEvent.chan_id_out, channelInfo != null) + + if (channelInfo) + hr + + - var card_node_pubkey = channelInfo.node1_pub; + if (card_node_pubkey == lndRpc.internal_pubkey) + - card_node_pubkey = channelInfo.node2_pub; + + +nodeCard(card_node_pubkey, {style:"compact"}) + + td.text-end + +btcValue(forwardingEvent.amt_in) + + td.text-end + +btcValue(forwardingEvent.amt_out) + + td.text-end + .text-success + span + + if (forwardingEvent.fee == "0") + span #{ forwardingEvent.fee_msat } msat + else + +btcValue(forwardingEvent.fee) + + td.text-end + .text-success + span #{ forwardingEvent.effectiveFeerate } ppm + + td.text-end + a.btn.btn-sm.btn-primary( + href="javascript:void(0)", + data-bs-toggle="modal", + data-bs-target="#forwardingEventModal-" + forwardingEventIndex + ) + i.fas.fa-file-lines + + #tab-channels.tab-pane( + role="tabpanel", + class=tab == "channels" ? "active" : false + ) + if (false) + pre + code.json #{ JSON.stringify(inChannels, null, 4) } + + if (tab == "channels") + +card + +filterList + +filterItem + - var sortOptions = [["Σ Transferred", "valuetransfer-desc"], ["Fees", "fees-desc"], ["Payment Count", "eventcount-desc"], ["Channel ID", "channelId-asc"]]; + + +filterBtnGroup("Sort", null, sortOptions, `/forwarding-history?tab=${tab}&daterange=${daterange}&limit=${limit}`, "sort", sort) + + - let tabs = []; + + if (inChannels.length > 0) + - tabs.push(`Incoming Channels (${inChannels.length.toLocaleString()})`); + + if (outChannels.length > 0) + - tabs.push(`Outgoing Channels (${outChannels.length.toLocaleString()})`); + + +pageTabs(tabs) + + .tab-content + if (inChannels.length > 0) + +pageTab(tabs[0], true) + .table-responsive + table.table.table-striped + thead + tr + th.text-end # + th Channel + th.text-end Payments + th.text-end Value Transferred - +channelId(channelForwardingInfo.channelId, channelInfo != null) + tbody + each channelForwardingInfo, channelInfoIndex in inChannels + tr + th.text-end #{ (channelInfoIndex + 1).toLocaleString() } + td + - var channel_id = channelForwardingInfo.channelId; + - var channelInfo = fullNetworkDescription.channelsById[channel_id]; - if (channelInfo) - hr - - - var card_node_pubkey = channelInfo.node1_pub; - if (card_node_pubkey == lndRpc.internal_pubkey) - - card_node_pubkey = channelInfo.node2_pub; + +channelId(channelForwardingInfo.channelId, channelInfo != null) - +nodeCard(card_node_pubkey) + if (channelInfo) + hr - td.text-end #{channelForwardingInfo.eventCount.toLocaleString()} - - td.text-end - +btcValue(channelForwardingInfo.totalValueTransferred) + - var card_node_pubkey = channelInfo.node1_pub; + if (card_node_pubkey == lndRpc.internal_pubkey) + - card_node_pubkey = channelInfo.node2_pub; - td.text-end - .text-success - span + + +nodeCard(card_node_pubkey) + + td.text-end #{ channelForwardingInfo.eventCount.toLocaleString() } + + td.text-end + +btcValue(channelForwardingInfo.totalValueTransferred) + + if (outChannels.length > 0) + +pageTab(inChannels.length > 0 ? tabs[1] : tabs[0], !(inChannels.length > 0)) + .table-responsive + table.table.table-striped + thead + tr + th.text-end # + th Channel + th.text-end Payments + th.text-end Value Transferred + th.text-end Fees Collected + + tbody + each channelForwardingInfo, channelInfoIndex in outChannels + tr + th.text-end #{ (channelInfoIndex + 1).toLocaleString() } + td + - var channel_id = channelForwardingInfo.channelId; + - var channelInfo = fullNetworkDescription.channelsById[channel_id]; + + +channelId(channelForwardingInfo.channelId, channelInfo != null) + + if (channelInfo) + hr + + - var card_node_pubkey = channelInfo.node1_pub; + if (card_node_pubkey == lndRpc.internal_pubkey) + - card_node_pubkey = channelInfo.node2_pub; + + +nodeCard(card_node_pubkey) + + td.text-end #{ channelForwardingInfo.eventCount.toLocaleString() } + + td.text-end + +btcValue(channelForwardingInfo.totalValueTransferred) + + td.text-end + .text-success + span + + +btcValue(channelForwardingInfo.totalFees) - +btcValue(channelForwardingInfo.totalFees) - - if (outChannels.length > 0) - +pageTab(inChannels.length > 0 ? tabs[1] : tabs[0], !(inChannels.length > 0)) - .table-responsive - table.table.table-striped - thead - tr - th.text-end # - th Channel - th.text-end Payments - th.text-end Value Transferred - - - tbody - each channelForwardingInfo, channelInfoIndex in outChannels - tr - th.text-end #{(channelInfoIndex + 1).toLocaleString()} - td - - var channel_id = channelForwardingInfo.channelId; - - var channelInfo = fullNetworkDescription.channelsById[channel_id]; - - +channelId(channelForwardingInfo.channelId, channelInfo != null) - - - if (channelInfo) - hr - - - var card_node_pubkey = channelInfo.node1_pub; - if (card_node_pubkey == lndRpc.internal_pubkey) - - card_node_pubkey = channelInfo.node2_pub; - - +nodeCard(card_node_pubkey) - - td.text-end #{channelForwardingInfo.eventCount.toLocaleString()} - - td.text-end - +btcValue(channelForwardingInfo.totalValueTransferred) - - - - - else - .alert.alert-warning.shadow-sm Your LND Node has not forwarded any payments during this window - \ No newline at end of file + else + .alert.alert-warning.shadow-sm Your LND Node has not forwarded any payments during this window diff --git a/views/includes/channel-table-row.pug b/views/includes/channel-table-row.pug index e15238a..4eae6f0 100644 --- a/views/includes/channel-table-row.pug +++ b/views/includes/channel-table-row.pug @@ -1,33 +1,210 @@ +- chan = channel; + +if (chan.chan_id) + - chan.channel_id = chan.chan_id; + - var parsedChannelId = utils.parseChannelId(chan.channel_id); + +// specific to /node +if (unsharedChannels && unsharedChannels.includes(chan)) + - var isUnshared = true; + +if (localChannels && localChannels.byId && localChannels.byId[chan.channel_id] && !isUnshared) + - var localChannel = localChannels.byId[chan.channel_id]; + +- let card_node_pubkey = null; +if (chan.remote_pubkey) + - card_node_pubkey = chan.remote_pubkey; +else if (chan.channel && chan.channel.remote_node_pub) + - card_node_pubkey = chan.channel.remote_node_pub; + +- const channelDescription = fullNetworkDescription.parsedChannelIds[chan.channel_id]; + tr.word-wrap - th.text-end.fw-light #{channelTableIndex.toLocaleString()} + th.fit.text-start.fw-light #{ channelTableIndex.toLocaleString() } + + td.fit + if (localChannel) + span.me-2 + if (chan.active || localChannel.active) + span(title="Active", data-bs-toggle="tooltip") + i.fas.fa-circle.fa-sm.text-success + + else if (chan.channel_id) + if (chan.close_type) + span(title=`Closed (${chan.close_type})`, data-bs-toggle="tooltip") + i.fas.fa-xmark.fa-sm.text-danger + else + span(title="Inactive", data-bs-toggle="tooltip") + i.fas.fa-circle.fa-sm(style="color: var(--bs-gray-500)") + + else + if (pendingOpenChannels.includes(chan)) + span(title="Opening", data-bs-toggle="tooltip") + i.fas.fa-circle.fa-sm.text-orange + if (pendingCloseChannels.includes(chan)) + span(title="Closing", data-bs-toggle="tooltip") + i.fas.fa-circle.fa-sm.text-danger + if (pendingForceCloseChannels.includes(chan)) + span(title="Force Closing", data-bs-toggle="tooltip") + i.fas.fa-circle.fa-sm.text-danger + if (waitingCloseChannels.includes(chan)) + span(title="Waiting to Close", data-bs-toggle="tooltip") + i.fas.fa-circle.fa-sm.text-warning + + if (chan.channel_id) + +channelId(chan.channel_id, localChannel.active || (chan.channel_id && !chan.close_type)) + else if (chan.closing_txid) + +btcTxid(chan.closing_txid, 12) + +copyTextButton(chan.closing_txid) + else if (pendingOpenChannels.includes(chan)) + - const [txid, output_index] = chan.channel.channel_point.split(":"); + +btcTxid(txid, 12) + span.ms-1 [#{ output_index }] + +copyTextButton(txid) + + else + +channelId(chan.channel_id, true) + + if (localChannel) + td.chan-flags + div + if (chan.close_height) + - localChannel.initiator = chan.open_initiator === "INITIATOR_LOCAL"; + else + if (localChannel.private === undefined) + - localChannel.private = chan.channel.private; + if (localChannel.initiator === undefined) + - localChannel.initiator = chan.channel.initiator === "INITIATOR_LOCAL"; + + if (localChannel.private === undefined) + +pillBadgeDanger + span.me-1 Closed + i.fas.fa-xmark + + else if (localChannel.private) + +pillBadgeSuccess + span.me-1 Private + i.fas.fa-lock + else + +pillBadgeInfo + span.me-1 Public + i.fas.fa-eye + + if (localChannel.initiator) + +pillBadgeInfo + span(title="You created this channel", data-bs-toggle="tooltip") + span.me-1 Outbound + i.fas.fa-arrow-up + else + +pillBadgeSuccess + span( + title="Your channel partner created this channel", + data-bs-toggle="tooltip" + ) + span.me-1 Inbound + i.fas.fa-arrow-down + + if (card_node_pubkey) + td.fit + +nodeCard(card_node_pubkey, {style: "compact"}) + else + td.fit + +nodeCard(chan.node1_pub, {style:"compact"}) + td.fit + +nodeCard(chan.node2_pub, {style:"compact"}) + + if (localChannel) + td + - let localBalance = null; + - let remoteBalance = null; + if (localChannel.channel) + - localBalance = new Decimal(localChannel.channel.local_balance || 0); + - remoteBalance = new Decimal(localChannel.channel.remote_balance || 0); + else if (localChannel.local_balance) + - localBalance = new Decimal(localChannel.local_balance || 0); + - remoteBalance = new Decimal(localChannel.remote_balance || 0); + else + - localBalance = new Decimal(localChannel.settled_balance || 0); + - let remoteBal = parseInt(localChannel.capacity) - parseInt(localChannel.settled_balance) + - remoteBalance = new Decimal(remoteBal || 0) + + if (localBalance != null) + +progressBar([localBalance, remoteBalance], ["text-bg-primary", "text-bg-info"], "6px", false) + + .d-flex.justify-content-between + .text-start + span.fs-90 + +btcValue(localBalance) + + .text-end + span.fs-90 + +btcValue(remoteBalance) + else + .text-end - - td - +channelId(channel.channel_id, true) - + td + - let valueReceived = null; + - let valueSent = null; - td - +nodeCard(channel.node1_pub, {style:"compact"}) + if (localChannel != null) + - valueReceived = new Decimal(localChannel.total_satoshis_received || 0); + - valueSent = new Decimal(localChannel.total_satoshis_sent || 0); + else if (localChannel.channel != null) + - valueReceived = new Decimal(localChannel.channel.total_satoshis_received || 0); + - valueSent = new Decimal(localChannel.channel.total_satoshis_sent || 0); - td - +nodeCard(channel.node2_pub, {style:"compact"}) + if (valueReceived != null && (valueReceived > 0 || valueSent > 0)) + .text-end.fs-90 + if (valueReceived && valueReceived > 0) + .text-success + | + + +btcValue(valueReceived) + if (valueSent && valueSent > 0) + .text-danger + | - + +btcValue(valueSent) + else + .text-end - - td.text-end - +btcValue(channel.capacity) - + if (nodeChannels) + td.fit.text-end + +btcValue(chan.capacity) + else + td.fit.text-end + +btcValue(chan.capacity) - td.text-end - if (config.blockExplorerUrl) - a(href=`${config.blockExplorerUrl}/block-height/${fullNetworkDescription.parsedChannelIds[channel.channel_id].blockHeight}` target="_blank") #{fullNetworkDescription.parsedChannelIds[channel.channel_id].blockHeight.toLocaleString()} + if (chan.channel_id) + td.fit.text-end + - let blockHeight = 0; + if (parsedChannelId && parsedChannelId.blockHeight) + - blockHeight = parsedChannelId.blockHeight; + else + - blockHeight = channelDescription.blockHeight; - else - span #{fullNetworkDescription.parsedChannelIds[channel.channel_id].blockHeight.toLocaleString()} + +blockHeight(blockHeight) - br + br + if (!chan.close_type && (chan.last_update || localChannel) && fullNetworkDescription.channelsById[chan.channel_id]) + +date(fullNetworkDescription.channelsById[chan.channel_id].last_update) + else + span - + else + td.fit.text-end + span - - +date(channel.last_update) + if (localChannel) + - let modal = `#localChannelModal-${localChannel_index}`; + if (sharedChannel) + - modal = `#sharedChannelModal-${channelTableIndex}`; - \ No newline at end of file + td.text-end + a.btn.btn-sm.btn-primary( + href="javascript:void(0)", + data-bs-toggle="modal", + data-bs-target=modal + ) + i.fas.fa-file-lines diff --git a/views/includes/channel-table.pug b/views/includes/channel-table.pug index cb8d7f1..6db43b8 100644 --- a/views/includes/channel-table.pug +++ b/views/includes/channel-table.pug @@ -1,21 +1,22 @@ .table-responsive - table.table.table-striped - thead - tr - th.text-end.fw-light # - th ID - th Node 1 - th Node 2 + table.table.table-striped + thead + tr + th.text-start.fw-light # + th ID + th Node 1 + th Node 2 - th.text-end Capacity + th.text-end Capacity - th.text-end - span.border-dotted(title="The height of the block that confirmed each channel's opening transaction" data-bs-toggle="tooltip") Opened - span.ms-1 / Updated - - - - tbody - each channel, index in channels - - var channelTableIndex = (channelTableIndexOffset + index + 1); - include ./channel-table-row.pug \ No newline at end of file + th.text-end + span.border-dotted( + title="The height of the block that confirmed each channel's opening transaction", + data-bs-toggle="tooltip" + ) Opened + span.ms-1 / Updated + + tbody + each channel, index in channels + - var channelTableIndex = channelTableIndexOffset + index + 1; + include ./channel-table-row.pug diff --git a/views/includes/close-channel-modal.pug b/views/includes/close-channel-modal.pug index a68714d..17c9a05 100644 --- a/views/includes/close-channel-modal.pug +++ b/views/includes/close-channel-modal.pug @@ -1,112 +1,128 @@ +modal("closeChannelModal", "Close Channel") - script. - function closeChannel() { - $("#responseAlertCloseChannel").hide(); - - var data = {}; - data.txid = "#{channelPointTxid}"; - data.txOutput = #{channelPointIndex}; - data.forceClose = $("#forceCloseChannelCheckbox").is(':checked'); - data.speedType = $("#speedTypeValue").val(); - data.speedValue = $("#speedValue").val(); - - console.log("data: " + JSON.stringify(data)); - - toggleCloseChannelStatus(); - - $.ajax({ - type: "POST", - url: `/close-channel`, - data: data, - success: function(response) { - toggleCloseChannelStatus(); - - if (response.code && response.details) { - $("#alertCloseChannelError").show(); - - $("#closeChannelErrorDetails").text(response.details); - - } else { - $("#closeChannelForm").hide(); - - $("#alertCloseChannelSuccess").show(); - } - - console.log("response: " + JSON.stringify(response)); - } - }); - - return false; - } - - function toggleCloseChannelStatus() { - var disabled = $("#closeChannelButton").prop("disabled"); - - $("#closeChannelButton").prop("disabled", !disabled).toggleClass("btn-primary").toggleClass("btn-secondary"); - $("#closeChannelStatus").toggle(); - } - - documentReadyFunctions.push(function() { - $(document).on('change', 'input:radio[name="speedTypeRadio"]', function(event) { - $("#speedTypeValue").val($(event.target).val()); - - if ($(event.target).val() == "target_conf") { - $("#closeChannelSpeedNote").text("Number of blocks to try to confirm within"); - - } else if ($(event.target).val() == "sat_per_byte") { - $("#closeChannelSpeedNote").text("Fee rate, sat / byte"); - } - }); - }); - - - - div#alertCloseChannelError.alert.alert-danger(style="display: none;") - h4.h6 Error - div There was an error when trying to close this channel: - div#closeChannelErrorDetails.mt-2 - - div#alertCloseChannelSuccess.alert.alert-success(style="display: none;") - h4.h6 Success - span Your close channel request has been submitted and your channel should begin closing. See your - a(href="/local-channels?status=Pending") pending channels - span for more details. - - form#closeChannelForm(onsubmit="return closeChannel();") - .mb-3 - label.form-label(for="speedValue") Speed - - input(id="speedTypeValue" type="hidden" name="speedType" value="target_conf") - - .mb-3 - .form-check - input#customRadioInline1.form-check-input(type='radio' name='speedTypeRadio' value="target_conf" checked="checked") - label.form-check-label(for='customRadioInline1') Try to confirm in - span.border-dotted(for='customRadioInline1' title="LND will compute a fee rate for your on-chain transaction based on the current state of the network. Note that there is no guarantee that your transaction will be confirmed by the network based on what you set here." data-bs-toggle="tooltip") N or fewer blocks - - .form-check - input#customRadioInline2.form-check-input(type='radio' name='speedTypeRadio' value="sat_per_byte") - label.custom-control-label(for='customRadioInline2') Manual fee (sat/byte) - - input.form-control(id="speedValue" name="speedValue") - small#closeChannelSpeedNote.text-muted Number of blocks to try to confirm within - - .mb-3 - .form-check - input.form-check-input(type="checkbox" id="forceCloseChannelCheckbox") - label.form-check-label(for="forceCloseChannelCheckbox") - span.border-dotted(title="If set, then the channel will be closed forcibly. This means the current commitment transaction will be signed and broadcast." data-bs-toggle="tooltip") Force close - - .alert.alert-danger Please use caution when closing channels! Both LNDash and LND itself are beta software. - - .mt-4 - button#closeChannelButton.btn.btn-danger(type="submit") - i.fas.fa-times.me-2 - span Close Channel - - div#closeChannelStatus.mt-3(style="display: none;") - span.spinner-border.spinner-border-sm.me-2.text-primary(role="status" aria-hidden="true") - span Channel close request submitted... - - - \ No newline at end of file + script. + function closeChannel() { + $("#responseAlertCloseChannel").hide(); + + var data = {}; + data.txid = "#{channelPointTxid}"; + data.txOutput = #{ channelPointIndex }; + data.forceClose = $("#forceCloseChannelCheckbox").is(":checked"); + data.speedType = $("#speedTypeValue").val(); + data.speedValue = $("#speedValue").val(); + + console.log("data: " + JSON.stringify(data)); + + toggleCloseChannelStatus(); + + $.ajax({ + type: "POST", + url: `/close-channel`, + data: data, + success: function (response) { + toggleCloseChannelStatus(); + + if (response.code && response.details) { + $("#alertCloseChannelError").show(); + + $("#closeChannelErrorDetails").text(response.details); + } else { + $("#closeChannelForm").hide(); + + $("#alertCloseChannelSuccess").show(); + } + + console.log("response: " + JSON.stringify(response)); + }, + }); + + return false; + } + + function toggleCloseChannelStatus() { + var disabled = $("#closeChannelButton").prop("disabled"); + + $("#closeChannelButton").prop("disabled", !disabled).toggleClass("btn-primary").toggleClass("btn-secondary"); + $("#closeChannelStatus").toggle(); + } + + documentReadyFunctions.push(function () { + $(document).on("change", 'input:radio[name="speedTypeRadio"]', function (event) { + $("#speedTypeValue").val($(event.target).val()); + + if ($(event.target).val() == "target_conf") { + $("#closeChannelSpeedNote").text("Number of blocks to try to confirm within"); + } else if ($(event.target).val() == "sat_per_byte") { + $("#closeChannelSpeedNote").text("Fee rate, sat / byte"); + } + }); + }); + + #alertCloseChannelError.alert.alert-danger(style="display: none") + h4.h6 Error + div There was an error when trying to close this channel: + #closeChannelErrorDetails.mt-2 + + #alertCloseChannelSuccess.alert.alert-success(style="display: none") + h4.h6 Success + span Your close channel request has been submitted and your channel should begin closing. See your + a(href="/local-channels?status=Pending") pending channels + span for more details. + + form#closeChannelForm(onsubmit="return closeChannel();") + .mb-3 + label.form-label(for="speedValue") Speed + + input#speedTypeValue( + type="hidden", + name="speedType", + value="target_conf" + ) + + .mb-3 + .form-check + input#customRadioInline1.form-check-input( + type="radio", + name="speedTypeRadio", + value="target_conf", + checked="checked" + ) + label.form-check-label(for="customRadioInline1") Try to confirm in + span.border-dotted( + for="customRadioInline1", + title="LND will compute a fee rate for your on-chain transaction based on the current state of the network. Note that there is no guarantee that your transaction will be confirmed by the network based on what you set here.", + data-bs-toggle="tooltip" + ) N or fewer blocks + + .form-check + input#customRadioInline2.form-check-input( + type="radio", + name="speedTypeRadio", + value="sat_per_byte" + ) + label.custom-control-label(for="customRadioInline2") Manual fee (sat/byte) + + input#speedValue.form-control(name="speedValue") + small#closeChannelSpeedNote.text-muted Number of blocks to try to confirm within + + .mb-3 + .form-check + input#forceCloseChannelCheckbox.form-check-input(type="checkbox") + label.form-check-label(for="forceCloseChannelCheckbox") + span.border-dotted( + title="If set, then the channel will be closed forcibly. This means the current commitment transaction will be signed and broadcast.", + data-bs-toggle="tooltip" + ) Force close + + .alert.alert-danger Please use caution when closing channels! Both LNDash and LND itself are beta software. + + .mt-4 + button#closeChannelButton.btn.btn-danger(type="submit") + i.fas.fa-times.me-2 + span Close Channel + + #closeChannelStatus.mt-3(style="display: none") + span.spinner-border.spinner-border-sm.me-2.text-primary( + role="status", + aria-hidden="true" + ) + span Channel close request submitted... diff --git a/views/includes/edit-channel-policies-modal.pug b/views/includes/edit-channel-policies-modal.pug index 9f38ea8..bc8cf16 100644 --- a/views/includes/edit-channel-policies-modal.pug +++ b/views/includes/edit-channel-policies-modal.pug @@ -1,70 +1,89 @@ +modal("updateChannelPoliciesModal", "Edit Channel Policies") - script. - function updateChannelPolicies() { - $("#responseAlertUpdateChannelPolicies").hide(); + script. + function updateChannelPolicies() { + $("#responseAlertUpdateChannelPolicies").hide(); - var data = {}; - data.txid = "#{channelPointTxid}"; - data.txOutput = #{channelPointIndex}; - data.baseFeeMsat = $("#baseFeeMsat").val(); - data.feeRateMilliMsat = $("#feeRateMilliMsat").val(); - data.timeLockDelta = $("#timeLockDelta").val(); + var data = {}; + data.txid = "#{channelPointTxid}"; + data.txOutput = #{ channelPointIndex }; + data.baseFeeMsat = $("#baseFeeMsat").val(); + data.feeRateMilliMsat = $("#feeRateMilliMsat").val(); + data.timeLockDelta = $("#timeLockDelta").val(); - console.log("data: " + JSON.stringify(data)); + console.log("data: " + JSON.stringify(data)); - $.ajax({ - type: "POST", - url: `/edit-single-channel-policies`, - data: data, - success: function(response) { - if ((response.code && response.details) || response.error) { - $("#responseAlertUpdateChannelPolicies").removeClass("alert-success").addClass("alert-danger"); + $.ajax({ + type: "POST", + url: `/edit-single-channel-policies`, + data: data, + success: function (response) { + if ((response.code && response.details) || response.error) { + $("#responseAlertUpdateChannelPolicies").removeClass("alert-success").addClass("alert-danger"); - if (response.details) { - $("#responseAlertUpdateChannelPolicies").text(response.details); + if (response.details) { + $("#responseAlertUpdateChannelPolicies").text(response.details); + } else if (response.error) { + $("#responseAlertUpdateChannelPolicies").text(response.error); + } - } else if (response.error) { - $("#responseAlertUpdateChannelPolicies").text(response.error); - } + $("#responseAlertUpdateChannelPolicies").show(); + } else { + $("#responseAlertUpdateChannelPolicies").removeClass("alert-danger").addClass("alert-success"); + $("#responseAlertUpdateChannelPolicies").text("Success"); + $("#responseAlertUpdateChannelPolicies").show(); - $("#responseAlertUpdateChannelPolicies").show(); + setTimeout(function () { + location.reload(); + }, 1000); + } - } else { - $("#responseAlertUpdateChannelPolicies").removeClass("alert-danger").addClass("alert-success"); - $("#responseAlertUpdateChannelPolicies").text("Success"); - $("#responseAlertUpdateChannelPolicies").show(); + console.log("response: " + JSON.stringify(response)); + }, + }); - setTimeout(function() { - location.reload(); - }, 1000); - } + return false; + } - console.log("response: " + JSON.stringify(response)); - } - }); + form(onsubmit="return updateChannelPolicies();") + #responseAlertUpdateChannelPolicies.alert(style="display: none") - return false; - } + .mb-3 + label.form-label(for="baseFeeMsat") + span.border-dotted( + title="The base fee in milli-satoshis that will be charged for each forwarded HTLC, regardless of payment size (default: 0)", + data-bs-toggle="tooltip" + ) Base Fee (msat) + input#baseFeeMsat.form-control( + name="baseFeeMsat", + type="number", + value=baseFeeMsat + ) - form(onsubmit="return updateChannelPolicies();") - .alert(id="responseAlertUpdateChannelPolicies" style="display: none;") + .mb-3 + label.form-label(for="feeRateMilliMsat") + span.border-dotted( + title="The fee rate that will be charged proportionally based on the value of each forwarded HTLC. The lowest possible rate is 1 milli-msat (0.000001)", + data-bs-toggle="tooltip" + ) Fee Rate (milli-msat) + input#feeRateMilliMsat.form-control( + name="feeRateMilliMsat", + type="number", + value=feeRateMilliMsat + ) - .mb-3 - label.form-label(for="baseFeeMsat") - span.border-dotted(title="The base fee in milli-satoshis that will be charged for each forwarded HTLC, regardless of payment size (default: 0)" data-bs-toggle="tooltip") Base Fee (msat) - input.form-control(id="baseFeeMsat" name="baseFeeMsat" type="number" value=baseFeeMsat) + .mb-3 + label.form-label(for="timeLockDelta") + span.border-dotted( + title="The CLTV delta that will be applied to all forwarded HTLCs (default: 0)", + data-bs-toggle="tooltip" + ) Time Lock Delta + input#timeLockDelta.form-control( + name="timeLockDelta", + type="number", + value=timeLockDelta + ) - .mb-3 - label.form-label(for="feeRateMilliMsat") - span.border-dotted(title="The fee rate that will be charged proportionally based on the value of each forwarded HTLC. The lowest possible rate is 1 milli-msat (0.000001)" data-bs-toggle="tooltip") Fee Rate (milli-msat) - input.form-control(id="feeRateMilliMsat" name="feeRateMilliMsat" type="number" value=feeRateMilliMsat) - - .mb-3 - label.form-label(for="timeLockDelta") - span.border-dotted(title="The CLTV delta that will be applied to all forwarded HTLCs (default: 0)" data-bs-toggle="tooltip") Time Lock Delta - input.form-control(id="timeLockDelta" name="timeLockDelta" type="number" value=timeLockDelta) - - .mt-5 - button.btn.btn-primary(type="submit") - i.fas.fa-pen.me-2 - span Edit Policies \ No newline at end of file + .mt-5 + button.btn.btn-primary(type="submit") + i.fas.fa-pen.me-2 + span Edit Policies diff --git a/views/includes/invoice-details-modal.pug b/views/includes/invoice-details-modal.pug index 9a1a1c7..fe9d168 100644 --- a/views/includes/invoice-details-modal.pug +++ b/views/includes/invoice-details-modal.pug @@ -1,39 +1,45 @@ +modal(`invoiceModal-${invoice_index}`, `Invoice - ${Buffer.from(invoice.r_hash).toString("hex")}`) - - var jsonX = invoice; - - jsonX.r_preimage_base64 = utils.formatBuffer(jsonX.r_preimage, "base64"); - - jsonX.r_preimage_hex = utils.formatBuffer(jsonX.r_preimage, "hex"); - - jsonX.r_hash_base64 = utils.formatBuffer(jsonX.r_hash, "base64"); - - jsonX.r_hash_hex = utils.formatBuffer(jsonX.r_hash, "hex"); - - - delete jsonX.r_preimage; - - delete jsonX.r_hash; - - pre - code.json #{JSON.stringify(jsonX, null, 4)} - - - if (false) - ul.nav.nav-tabs.mb-3 - li.nav-item - a.nav-link.active(data-bs-toggle="tab" href=`#tab-summary-${invoice_index}` role="tab") Summary - li.nav-item - a.nav-link(data-bs-toggle="tab" href=`#tab-json-${invoice_index}` role="tab") JSON - - .tab-content - .tab-pane.active(id=`tab-summary-${invoice_index}` role="tabpanel") - h1 snv - - .tab-content - .tab-pane(id=`tab-json-${invoice_index}` role="tabpanel") - - - var jsonX = invoice; - - jsonX.r_preimage_base64 = Buffer.from(jsonX.r_preimage).toString("base64"); - - jsonX.r_preimage_hex = Buffer.from(jsonX.r_preimage).toString("hex"); - - jsonX.r_hash_base64 = Buffer.from(jsonX.r_hash).toString("base64"); - - jsonX.r_hash_hex = Buffer.from(jsonX.r_hash).toString("hex"); - - - delete jsonX.r_preimage; - - delete jsonX.r_hash; - - pre - code.json #{JSON.stringify(jsonX, null, 4)} + - var jsonX = invoice; + - jsonX.r_preimage_base64 = utils.formatBuffer(jsonX.r_preimage, "base64"); + - jsonX.r_preimage_hex = utils.formatBuffer(jsonX.r_preimage, "hex"); + - jsonX.r_hash_base64 = utils.formatBuffer(jsonX.r_hash, "base64"); + - jsonX.r_hash_hex = utils.formatBuffer(jsonX.r_hash, "hex"); + + - delete jsonX.r_preimage; + - delete jsonX.r_hash; + + pre + code.json #{ JSON.stringify(jsonX, null, 4) } + + if (false) + ul.nav.nav-tabs.mb-3 + li.nav-item + a.nav-link.active( + data-bs-toggle="tab", + href=`#tab-summary-${invoice_index}`, + role="tab" + ) Summary + li.nav-item + a.nav-link( + data-bs-toggle="tab", + href=`#tab-json-${invoice_index}`, + role="tab" + ) JSON + + .tab-content + .tab-pane.active(id=`tab-summary-${invoice_index}`, role="tabpanel") + h1 snv + + .tab-content + .tab-pane(id=`tab-json-${invoice_index}`, role="tabpanel") + - var jsonX = invoice; + - jsonX.r_preimage_base64 = Buffer.from(jsonX.r_preimage).toString("base64"); + - jsonX.r_preimage_hex = Buffer.from(jsonX.r_preimage).toString("hex"); + - jsonX.r_hash_base64 = Buffer.from(jsonX.r_hash).toString("base64"); + - jsonX.r_hash_hex = Buffer.from(jsonX.r_hash).toString("hex"); + + - delete jsonX.r_preimage; + - delete jsonX.r_hash; + + pre + code.json #{ JSON.stringify(jsonX, null, 4) } diff --git a/views/includes/local-channel-table-row.pug b/views/includes/local-channel-table-row.pug deleted file mode 100644 index d8e1f28..0000000 --- a/views/includes/local-channel-table-row.pug +++ /dev/null @@ -1,191 +0,0 @@ -if (channel.chan_id) - - var parsedChannelId = utils.parseChannelId(channel.chan_id); - -tr.word-wrap - th.text-end.fw-light #{(channel_index + offset + 1).toLocaleString()} - - td - if (channel.chan_id) - span.me-2 - if (channel.active) - span(title="Active", data-bs-toggle="tooltip") - i.fas.fa-circle.fa-sm.text-success - - else if (channel.chan_id) - if (channel.close_type) - span(title=`Closed (${channel.close_type})`, data-bs-toggle="tooltip") - i.fas.fa-circle.fa-sm.text-danger - - - else - span(title="Inactive", data-bs-toggle="tooltip") - i.fas.fa-circle.fa-sm.text-warning - - else - if (pendingOpenChannels.includes(channel)) - span(title="Opening", data-bs-toggle="tooltip") - i.fas.fa-circle.fa-sm.text-orange - - if (pendingCloseChannels.includes(channel)) - span(title="Opening", data-bs-toggle="tooltip") - i.fas.fa-circle.fa-sm.text-danger - - if (pendingForceCloseChannels.includes(channel)) - span(title="Force Closing", data-bs-toggle="tooltip") - i.fas.fa-circle.fa-sm.text-danger - - if (waitingCloseChannels.includes(channel)) - span(title="Waiting to Close", data-bs-toggle="tooltip") - i.fas.fa-circle.fa-sm.text-orange - - - +channelId(channel.chan_id, channel.active || (channel.chan_id && !channel.close_type)) - - if (pendingOpenChannels && pendingOpenChannels.includes(channel)) - span.me-2(title="Opening", data-bs-toggle="tooltip") - i.fas.fa-circle.fa-sm.text-info - - - var btc_txid = channel.channel.channel_point.substring(0, channel.channel.channel_point.indexOf(":")); - - var outpoint_output_index = channel.channel.channel_point.substring(channel.channel.channel_point.indexOf(":") + 1); - - +pillBadgeInfo("TX", "Opening Bitcoin transaction (with output index)") - +btcTxid(btc_txid, 12) - span.ms-1 [#{outpoint_output_index}] - - - - td - if (channel.private) - +pillBadgeSuccess - span.me-1 Private - i.fas.fa-lock - - else - +pillBadgeWarning - span.me-1 Public - i.fas.fa-eye - - - - if (channel.initiator) - +pillBadgeInfo - span(title="You created this channel", data-bs-toggle="tooltip") - i.fas.fa-arrow-up.me-1 - | Outbound - else - +pillBadgeSuccess - span(title="Your channel partner created this channel", data-bs-toggle="tooltip") - i.fas.fa-arrow-down.me-1 - | Inbound - - - - td - - let card_node_pubkey = null; - - if (channel.remote_pubkey) - - card_node_pubkey = channel.remote_pubkey; - - else if (channel.channel && channel.channel.remote_node_pub) - - card_node_pubkey = channel.channel.remote_node_pub; - - if (card_node_pubkey) - +nodeCard(card_node_pubkey, {style: "compact"}) - else - span.text-danger Unknown node - - if (false) - td.text-end - if (config.blockExplorerUrl && parsedChannelIds[channel.chan_id].blockHeight > 0) - a(href=`${config.blockExplorerUrl}/block-height/${parsedChannelIds[channel.chan_id].blockHeight}` target="_blank") #{parsedChannelIds[channel.chan_id].blockHeight.toLocaleString()} - - else - if (parsedChannelIds[channel.chan_id].blockHeight > 0) - span #{parsedChannelIds[channel.chan_id].blockHeight.toLocaleString()} - else - span - - - - - td - - let localBalance = null; - - let remoteBalance = null; - - if (channel.active) - - localBalance = new Decimal(channel.local_balance); - - remoteBalance = new Decimal(channel.remote_balance); - - else if (channel.channel != null) - - localBalance = new Decimal(channel.channel.local_balance); - - remoteBalance = new Decimal(channel.channel.remote_balance); - - - if (localBalance != null) - +progressBar([localBalance, remoteBalance], ["text-bg-primary", "text-bg-info"], "6px", false) - - .d-flex.justify-content-between - .text-start - span.fs-90 - +btcValue(localBalance) - - .text-end - span.fs-90 - +btcValue(remoteBalance) - - else - .text-end - - - - td - - let valueReceived = null; - - let valueSent = null; - - if (channel.active) - - valueReceived = new Decimal(channel.total_satoshis_received || 0); - - valueSent = new Decimal(channel.total_satoshis_sent || 0); - - else if (channel.channel != null) - - valueReceived = new Decimal(channel.channel.total_satoshis_received || 0); - - valueSent = new Decimal(channel.channel.total_satoshis_sent || 0); - - - if (valueReceived != null && (valueReceived > 0 || valueSent > 0)) - .text-end.fs-90 - if (valueReceived && valueReceived > 0) - .text-success - | + - +btcValue(valueReceived) - - if (valueSent && valueSent > 0) - .text-danger - | - - +btcValue(valueSent) - - - - - else - .text-end - - - - - - td.text-end - if (channel.chan_id) - +blockHeight(parsedChannelId.blockHeight) - - br - - if (channel.active && fullNetworkDescription.channelsById[channel.chan_id]) - - var lastUpdateTimestamp = fullNetworkDescription.channelsById[channel.chan_id].last_update; - - +date(lastUpdateTimestamp, "human") - - else - span - - - - td.text-end - a.btn.btn-sm.btn-primary(href="javascript:void(0)" data-bs-toggle="modal" data-bs-target=("#localChannelModal-" + localChannel_index)) - i.fas.fa-file-lines - \ No newline at end of file diff --git a/views/includes/login-required-alert.pug b/views/includes/login-required-alert.pug index bf7a8c1..0af35c0 100644 --- a/views/includes/login-required-alert.pug +++ b/views/includes/login-required-alert.pug @@ -1,20 +1,20 @@ .alert.alert-primary.mb-0 - h3.h5.mb-3 Login Required + h3.h5.mb-3 Login Required - if (loginRequiredFullNote) - .mb-3 #{loginRequiredFullNote} + if (loginRequiredFullNote) + .mb-3 #{ loginRequiredFullNote } - else if (loginRequiredNote) - .mb-3 If logged in as an admin this page will #{loginRequiredNote} + else if (loginRequiredNote) + .mb-3 If logged in as an admin this page will #{ loginRequiredNote } - else - .mb-3 You must be logged in as an admin to view this page. + else + .mb-3 You must be logged in as an admin to view this page. - form(method="post", action="/login") - .mb-3 - label.form-label(for="password") Password - input(type="password", class="form-control", id="password", name="password") + form(method="post", action="/login") + .mb-3 + label.form-label(for="password") Password + input#password.form-control(type="password", name="password") - button.btn.btn-primary(type="submit") - i.fas.fa-sign-in-alt.me-2 - span Login \ No newline at end of file + button.btn.btn-primary(type="submit") + i.fas.fa-sign-in-alt.me-2 + span Login diff --git a/views/includes/menu-node-list.pug b/views/includes/menu-node-list.pug index 4b11e0f..130d091 100644 --- a/views/includes/menu-node-list.pug +++ b/views/includes/menu-node-list.pug @@ -1,59 +1,67 @@ - if (global.adminCredentials && global.adminCredentials.lndNodes) - +modal("nodeSelectModal", "Nodes", "modal-md") - ul.nav.nav-pills.flex-column - each lndNodeInfo, lndNodeIndex in global.adminCredentials.lndNodes - li.nav-item.rounded - if (lndConnections.byIndex[lndNodeIndex] != null) - - let lndConn = lndConnections.byIndex[lndNodeIndex]; - - let node_pubkey = lndConn.internal_pubkey; + +modal("nodeSelectModal", "Nodes", "modal-md") + ul.nav.nav-pills.flex-column + each lndNodeInfo, lndNodeIndex in global.adminCredentials.lndNodes + li.nav-item.rounded + if (lndConnections.byIndex[lndNodeIndex] != null) + - let lndConn = lndConnections.byIndex[lndNodeIndex]; + - let node_pubkey = lndConn.internal_pubkey; + if (fullNetworkDescription) + a.dropdown-item.rounded-0.px-2.py-2.fs-75( + href=`/connect-lnd?index=${lndNodeIndex}`, + onclick="$('#switchNodeModal').show()" + ) + .d-flex.justify-content-between + .d-flex.justify-content-start + .me-1 + +nodeIcon(node_pubkey, "2rem") - if (fullNetworkDescription) - a.dropdown-item.rounded-0.px-2.py-2.fs-75(href=`/connect-lnd?index=${lndNodeIndex}`, onclick=`$('#switchNodeModal').show()`) - .d-flex.justify-content-between - .d-flex.justify-content-start - .me-1 - +nodeIcon(node_pubkey, "2rem") + div + +nodePubkey(node_pubkey) - div - +nodePubkey(node_pubkey) - - div - +nodeAlias(lndConn.internal_alias) + div + +nodeAlias(lndConn.internal_alias) - .mt-1.fs-120 - if (node_pubkey == lndRpc.internal_pubkey) - +pillBadgeSuccess("Active") + .mt-1.fs-120 + if (node_pubkey == lndRpc.internal_pubkey) + +pillBadgeSuccess("Active") - hr.my-4 + hr.my-4 - a(href=`/manage-nodes`) Manage Nodes + a(href="/manage-nodes") Manage Nodes if (global.adminCredentials && global.adminCredentials.lndNodes) - .d-flex.justify-content-start - +menuHeading("Current Node", `The node that LNDash is currently connected to. Click it to select another node.`) - .ms-3 - a(href="/manage-nodes", title="Manage connected nodes", data-bs-toggle="tooltip") - i.fas.fa-pen-to-square.text-body.align-top - - ul.nav.nav-pills.flex-column - each lndNodeInfo, lndNodeIndex in global.adminCredentials.lndNodes - li.nav-item.rounded - if (lndConnections.byIndex[lndNodeIndex] != null) - - let lndConn = lndConnections.byIndex[lndNodeIndex]; - - let node_pubkey = lndConn.internal_pubkey; - - - if (fullNetworkDescription) - if (node_pubkey == lndRpc.internal_pubkey) - a.dropdown-item.rounded-0.px-2.py-2.fs-75(href="javascript:void(0)" data-bs-toggle="modal" data-bs-target="#nodeSelectModal") - .d-flex - .me-1 - +nodeIcon(node_pubkey, "2rem") - - div - +nodePubkey(node_pubkey) - - div - +nodeAlias(lndConn.internal_alias) \ No newline at end of file + .d-flex.justify-content-start + +menuHeading("Current Node", `The node that LNDash is currently connected to. Click it to select another node.`) + .ms-3 + a( + href="/manage-nodes", + title="Manage connected nodes", + data-bs-toggle="tooltip" + ) + i.fas.fa-pen-to-square.text-body.align-top + + ul.nav.nav-pills.flex-column + each lndNodeInfo, lndNodeIndex in global.adminCredentials.lndNodes + li.nav-item.rounded + if (lndConnections.byIndex[lndNodeIndex] != null) + - let lndConn = lndConnections.byIndex[lndNodeIndex]; + - let node_pubkey = lndConn.internal_pubkey; + + if (fullNetworkDescription) + if (node_pubkey == lndRpc.internal_pubkey) + a.dropdown-item.rounded-0.px-2.py-2.fs-75( + href="javascript:void(0)", + data-bs-toggle="modal", + data-bs-target="#nodeSelectModal" + ) + .d-flex + .me-1 + +nodeIcon(node_pubkey, "2rem") + + div + +nodePubkey(node_pubkey) + + div + +nodeAlias(lndConn.internal_alias) diff --git a/views/includes/navbar.pug b/views/includes/navbar.pug index 2189e36..7d538f8 100644 --- a/views/includes/navbar.pug +++ b/views/includes/navbar.pug @@ -1,88 +1,72 @@ - - let menuSections = []; - let menuItems = []; if (!lndRpc) - if (setupNeeded) - - menuSections.push({title:null, items: [{url:"/", text:"Setup", icon:"fa-cog", otherUrls:["/setup", "/manage-nodes"]}]}); + if (setupNeeded) + - menuSections.push({ title: null, items: [{ url: "/", text: "Setup", icon: "fa-cog", otherUrls: ["/setup", "/manage-nodes"] }] }); - else - - menuSections.push({title:null, items: [{url:"/login", text:"Login", icon:"fa-sign-in-alt"}]}); + else + - menuSections.push({ title: null, items: [{ url: "/login", text: "Login", icon: "fa-sign-in-alt" }] }); else if (fullNetworkDescription == null) - - menuSections.push({title:null, items: [{url:"javascript:void(0)", text:"Loading...", spinner:true}]}); + - menuSections.push({ title: null, items: [{ url: "javascript:void(0)", text: "Loading...", spinner: true }] }); else - - - - - menuItems.push({url:"/", text:"Home", icon:"fas fa-home"}); - - menuItems.push({url:"/local-channels", text:"My Channels", icon:"fas fa-exchange-alt"}); - - menuItems.push({url:"/wallet", text:"My Wallet", icon:"fas fa-wallet"}); - - menuItems.push({url:"/peers", text:"My Peers", icon:"fas fa-users"}); - - - menuSections.push({title:"Dashboard", items: menuItems}); - - menuItems = []; - - - - - - menuItems.push({url:"/invoices", text:"Invoices", icon:"fas fa-sign-in-alt"}); - - menuItems.push({url:"/payment-history", text:"Payments Sent", icon:"fas fa-sign-out-alt"}); - - menuItems.push({url:"/forwarding-history", text:"Forwarding History", icon:"fas fa-angle-double-right"}); - - - menuSections.push({title:"Lightning Payments", items: menuItems}); - - menuItems = []; + - menuItems.push({ url: "/", text: "Home", icon: "fas fa-home" }); + - menuItems.push({ url: "/local-channels", text: "My Channels", icon: "fas fa-exchange-alt" }); + - menuItems.push({ url: "/wallet", text: "My Wallet", icon: "fas fa-wallet" }); + - menuItems.push({ url: "/peers", text: "My Peers", icon: "fas fa-users" }); + - menuSections.push({ title: "Dashboard", items: menuItems }); + - menuItems = []; + - menuItems.push({ url: "/invoices", text: "Invoices", icon: "fas fa-sign-in-alt" }); + - menuItems.push({ url: "/payment-history", text: "Payments Sent", icon: "fas fa-sign-out-alt" }); + - menuItems.push({ url: "/forwarding-history", text: "Forwarding History", icon: "fas fa-angle-double-right" }); + - menuSections.push({ title: "Lightning Payments", items: menuItems }); + - menuItems = []; - - menuItems.push({url:"/nodes", text:"All Nodes", icon:"fas fa-network-wired"}); - - menuItems.push({url:"/channels", text:"All Channels", icon:"fas fa-circle-nodes"}); - - if (false) - - menuItems.push({url:"/search", text:"Search", icon:"fas fa-search"}); - - - menuSections.push({title:"Public Network", items: menuItems}); - - menuItems = []; - + - menuItems.push({ url: "/nodes", text: "All Nodes", icon: "fas fa-network-wired" }); + - menuItems.push({ url: "/channels", text: "All Channels", icon: "fas fa-circle-nodes" }); + if (false) + - menuItems.push({ url: "/search", text: "Search", icon: "fas fa-search" }); - - menuItems.push({url:"/create-invoice", text:"Create Invoice", icon:"fas fa-asterisk"}) - - menuItems.push({url:"/pay-invoice", text:"Pay Invoice", icon:"fas fa-receipt"}) - if (false) - - menuItems.push({url:"/send-payment", text:"Send Payment", icon:"fas fa-money-bill-wave"}) - - menuItems.push({url:"/openchannel", text:"Open Channel", icon:"fas fa-plus-square"}) - - menuItems.push({url:"/edit-multi-channel-policies", text:"Bulk Edit Channels", icon:"fas fa-pen"}) - - menuItems.push({url:"/sign-verify", text:"Sign or Verify", icon:"fas fa-pen-nib"}) - - menuItems.push({url:"/query-route", text:"Query Route", icon:"fas fa-route"}) - - menuItems.push({url:"/lndconnect", text:"LND Connect", icon:"fas fa-mobile-alt"}) - - - menuSections.push({title:"Tools", items: menuItems}); - - menuItems = []; + - menuSections.push({ title: "Public Network", items: menuItems }); + - menuItems = []; + - menuItems.push({ url: "/create-invoice", text: "Create Invoice", icon: "fas fa-asterisk" }); + - menuItems.push({ url: "/pay-invoice", text: "Pay Invoice", icon: "fas fa-receipt" }); + if (false) + - menuItems.push({ url: "/send-payment", text: "Send Payment", icon: "fas fa-money-bill-wave" }); + - menuItems.push({ url: "/openchannel", text: "Open Channel", icon: "fas fa-plus-square" }); + - menuItems.push({ url: "/edit-multi-channel-policies", text: "Bulk Edit Channels", icon: "fas fa-pen" }); + - menuItems.push({ url: "/sign-verify", text: "Sign or Verify", icon: "fas fa-pen-nib" }); + - menuItems.push({ url: "/query-route", text: "Query Route", icon: "fas fa-route" }); + - menuItems.push({ url: "/lndconnect", text: "LND Connect", icon: "fas fa-mobile-alt" }); + - menuSections.push({ title: "Tools", items: menuItems }); + - menuItems = []; + - menuItems.push({ url: "/error-log", text: "Error Log", icon: "fas fa-triangle-exclamation" }); - - menuItems.push({url:"/error-log", text:"Error Log", icon:"fas fa-triangle-exclamation"}) - - - menuSections.push({title:"Technical", items: menuItems}); - - menuItems = []; - + - menuSections.push({ title: "Technical", items: menuItems }); + - menuItems = []; each menuSection in menuSections - if (menuSection.title) - +menuHeading(menuSection.title) - - - ul.nav.nav-pills.flex-column.mb-3 - each menuItem in menuSection.items - if (menuItem.url && menuItem.text) - li.nav-item.rounded - a.nav-link.p-2.ps-3.py-2(href=menuItem.url, class=((req.path == menuItem.url || (menuItem.otherUrls && menuItem.otherUrls.includes(req.path))) ? "active text-white" : "text-body")) - if (menuItem.icon) - i.me-2(class=menuItem.icon) - - | #{menuItem.text} - - + if (menuSection.title) + +menuHeading(menuSection.title) + + ul.nav.nav-pills.flex-column.mb-3 + each menuItem in menuSection.items + if (menuItem.url && menuItem.text) + li.nav-item.rounded + a.nav-link.p-2.ps-3.py-2( + href=menuItem.url, + class=req.path == menuItem.url || (menuItem.otherUrls && menuItem.otherUrls.includes(req.path)) ? "active text-white" : "text-body" + ) + if (menuItem.icon) + i.me-2(class=menuItem.icon) + + | #{ menuItem.text } diff --git a/views/includes/new-deposit-address-modal.pug b/views/includes/new-deposit-address-modal.pug index 0a610ca..285d9fb 100644 --- a/views/includes/new-deposit-address-modal.pug +++ b/views/includes/new-deposit-address-modal.pug @@ -1,48 +1,74 @@ +modal("newDepositAddressModal", "New Deposit Address") - script. - function newAddress(addressType) { - $.ajax({url: `/new-deposit-address?addressType=${addressType}`, success: function(result) { - - if (result.address) { - //alert(JSON.stringify(result)); - - $("#newAddressResult_text").text(result.address); - $("#newAddressResult_image").attr("src", `/qrcode?data=${result.address}`); - - $("#newAddressResult").show(); - $("#newAddressInstructions").hide(); - } - }}); - } - - .d-flex.mb-3 - .me-3 - .mb-2 - span.border-dotted(title="Pay to witness key hash, i.e. Native SegWit address. Preferred, if your wallet supports it. Begins with 'bc1...'" data-bs-toggle="tooltip") Pay to Witness Key Hash - - a.btn.btn-primary(href="javascript:void(0)" onclick="javascript:newAddress('p2wkh')") - i.fas.fa-qrcode.me-2 - span New Deposit Address (p2wkh) - - div - .mb-2 - span.border-dotted(title="Nested pay to witness key hash. Begins with '3...'" data-bs-toggle="tooltip") Nested Pay to Witness Key Hash - - a.btn.btn-primary(href="javascript:void(0)" onclick="javascript:newAddress('np2wkh')") - i.fas.fa-qrcode.me-2 - span New Deposit Address (np2wkh) - - .alert.alert-warning(id="newAddressInstructions") - | Select an address type above to generate a new deposit address. - - - div(id="newAddressResult" style="display: none;") - hr - - h4.h6 Deposit Address - .mb-3 - span(id="newAddressResult_text") - - div - img(id="newAddressResult_image" style="width: 250px; height: 250px;") + script. + function newAddress(addressType) { + $.ajax({ + url: `/new-deposit-address?addressType=${addressType}`, + success: function (result) { + if (result.address) { + //alert(JSON.stringify(result)); + $("#newAddressResult_text").text(result.address); + $("#newAddressResult_image").attr("src", `/qrcode?data=${result.address}`); + + $("#newAddressResult").show(); + $("#newAddressInstructions").hide(); + } + }, + }); + } + + .d-flex.mb-3 + .me-3 + .mb-2 + span.border-dotted( + title="Pay to witness key hash, i.e. Native SegWit address. Preferred, if your wallet supports it. Begins with 'bc1...'", + data-bs-toggle="tooltip" + ) Pay to Witness Key Hash + + a.btn.btn-primary( + href="javascript:void(0)", + onclick="javascript:newAddress('p2wkh')" + ) + i.fas.fa-qrcode.me-2 + span New Deposit Address (p2wkh) + + div + .me-3 + .mb-2 + span.border-dotted( + title="Pay to Taproot. Begins with 'bc1q...'", + data-bs-toggle="tooltip" + ) Pay to Taproot + + a.btn.btn-primary( + href="javascript:void(0)", + onclick="javascript:newAddress('p2tr')" + ) + i.fas.fa-qrcode.me-2 + span New Deposit Address (p2tr) + div + .mb-2 + span.border-dotted( + title="Nested pay to witness key hash. Begins with '3...'", + data-bs-toggle="tooltip" + ) Nested Pay to Witness Key Hash + + a.btn.btn-primary( + href="javascript:void(0)", + onclick="javascript:newAddress('np2wkh')" + ) + i.fas.fa-qrcode.me-2 + span New Deposit Address (np2wkh) + + #newAddressInstructions.alert.alert-warning + | Select an address type above to generate a new deposit address. + + #newAddressResult(style="display: none") + hr + + h4.h6 Deposit Address + .mb-3 + span#newAddressResult_text + + div + img#newAddressResult_image(style="width: 250px; height: 250px") diff --git a/views/includes/node-connection-details-modal.pug b/views/includes/node-connection-details-modal.pug index 6d9abbc..db3238e 100644 --- a/views/includes/node-connection-details-modal.pug +++ b/views/includes/node-connection-details-modal.pug @@ -1,51 +1,44 @@ +modal(`lndNodeDetailsModal-${lndNodeIndex}`, `LND Node #${(lndNodeIndex + 1).toLocaleString()}`) - +pageTabs(["Details", "JSON"], false) + +pageTabs(["Details", "JSON"], false) + mixin connItem(label, content, copyButton=false) + .mb-4 + label.form-label.text-muted #{ label } + div + if (content.length > 40) + span.lead #{ utils.ellipsizeMiddle(content, 40) } - mixin connItem(label, content, copyButton=false) - .mb-4 - label.form-label.text-muted #{label} - div - if (content.length > 40) - span.lead #{utils.ellipsizeMiddle(content, 40)} + else + span.lead #{ content } - else - span.lead #{content} + if (copyButton) + +copyTextButton(content) - if (copyButton) - +copyTextButton(content) + .tab-content + +pageTab("Details", true) + if (lndNodeDetails.type) + +connItem("Connection Type", lndNodeDetails.type) + if (lndNodeDetails.host) + +connItem("Host", lndNodeDetails.host) - .tab-content - +pageTab("Details", true) - if (lndNodeDetails.type) - +connItem("Connection Type", lndNodeDetails.type) + if (lndNodeDetails.port) + +connItem("Port", lndNodeDetails.port) - if (lndNodeDetails.host) - +connItem("Host", lndNodeDetails.host) + if (lndNodeDetails.adminMacaroonHex) + +connItem("Admin Macaroon (hex)", lndNodeDetails.adminMacaroonHex, true) - if (lndNodeDetails.port) - +connItem("Port", lndNodeDetails.port) + if (lndNodeDetails.adminMacaroonFilepath) + +connItem("Admin Macaroon Filepath", lndNodeDetails.adminMacaroonFilepath, true) + if (lndNodeDetails.tlsCertAscii) + label.form-label.text-muted TLS Certificate (ascii) - if (lndNodeDetails.adminMacaroonHex) - +connItem("Admin Macaroon (hex)", lndNodeDetails.adminMacaroonHex, true) + textarea.form-control.font-monospace.fs-80(rows="18") #{ lndNodeDetails.tlsCertAscii } + if (lndNodeDetails.tlsCertFilepath) + +connItem("TLS Certificate Filepath", lndNodeDetails.tlsCertFilepath, true) - if (lndNodeDetails.adminMacaroonFilepath) - +connItem("Admin Macaroon Filepath", lndNodeDetails.adminMacaroonFilepath, true) - - - if (lndNodeDetails.tlsCertAscii) - label.form-label.text-muted TLS Certificate (ascii) - - textarea.form-control.font-monospace.fs-80(rows="18") #{lndNodeDetails.tlsCertAscii} - - - if (lndNodeDetails.tlsCertFilepath) - +connItem("TLS Certificate Filepath", lndNodeDetails.tlsCertFilepath, true) - - - +pageTab("JSON") - pre - code.json #{JSON.stringify(lndNodeDetails, null, 4)} \ No newline at end of file + +pageTab("JSON") + pre + code.json #{ JSON.stringify(lndNodeDetails, null, 4) } diff --git a/views/includes/node-details-table-row.pug b/views/includes/node-details-table-row.pug index bf1d065..1e58949 100644 --- a/views/includes/node-details-table-row.pug +++ b/views/includes/node-details-table-row.pug @@ -1,45 +1,44 @@ tr - if (showTableNumbers) - th.text-end.fw-light #{(index + 1).toLocaleString()} + if (showTableNumbers) + th.text-end.fw-light #{ (index + 1).toLocaleString() } - td - if (nodePubkeys) - +nodeCard(nodePubkeys[index]) - + td + if (nodePubkeys) + +nodeCard(nodePubkeys[index]) - else - span - + else + span - - td - if (node && node.node && node.node.addresses && node.node.addresses.length > 0) - +netAddress(node.node.addresses[0].addr) + td + if (node && node.node && node.node.addresses && node.node.addresses.length > 0) + +netAddress(node.node.addresses[0].addr) - else - span - + else + span - - td - if (node && node.node) - if (node.node.last_update == 0) - span - + td + if (node && node.node) + if (node.node.last_update == 0) + span - - else - +date(node.node.last_update) + else + +date(node.node.last_update) - else - span - + else + span - - td.text-end - if (node) - span #{parseInt(node.num_channels).toLocaleString()} + td.text-end + if (node) + span #{ parseInt(node.num_channels).toLocaleString() } - else - span - + else + span - - td.text-end - if (node && node.total_capacity) - +btcValue(node.total_capacity) + td.text-end + if (node && node.total_capacity) + +btcValue(node.total_capacity) - //span #{parseInt(node.total_capacity).toLocaleString()} + //span #{parseInt(node.total_capacity).toLocaleString()} - else - span - \ No newline at end of file + else + span - diff --git a/views/includes/node-details-table.pug b/views/includes/node-details-table.pug index 1a7d711..b166908 100644 --- a/views/includes/node-details-table.pug +++ b/views/includes/node-details-table.pug @@ -1,17 +1,16 @@ .table-responsive - table.table.table-striped.mb-0 - thead - tr - if (showTableNumbers) - th.text-end.fw-light # - - th Node - th Address - th Last Update - th.text-end Channels - th.text-end Total Capacity - - - tbody - each node, index in nodes - include ./node-details-table-row.pug \ No newline at end of file + table.table.table-striped.mb-0 + thead + tr + if (showTableNumbers) + th.text-end.fw-light # + + th Node + th Address + th Last Update + th.text-end Channels + th.text-end Total Capacity + + tbody + each node, index in nodes + include ./node-details-table-row.pug diff --git a/views/includes/node-table-row.pug b/views/includes/node-table-row.pug index eb47a4a..27948bc 100644 --- a/views/includes/node-table-row.pug +++ b/views/includes/node-table-row.pug @@ -1,30 +1,25 @@ tr.word-wrap - th.text-end.fw-light #{nodeTableIndex.toLocaleString()} + th.text-end.fw-light #{ nodeTableIndex.toLocaleString() } + td + +nodeCard(nodeInfo.node.pub_key) - td - +nodeCard(nodeInfo.node.pub_key) - + td + if (nodeInfo.node.addresses && nodeInfo.node.addresses.length > 0) + +netAddress(nodeInfo.node.addresses[0].addr) - td - if (nodeInfo.node.addresses && nodeInfo.node.addresses.length > 0) - +netAddress(nodeInfo.node.addresses[0].addr) + else + span - - else - span - + td.text-end + span #{ parseInt(nodeInfo.num_channels).toLocaleString() } - - td.text-end - span #{parseInt(nodeInfo.num_channels).toLocaleString()} + td.text-end + +btcValue(nodeInfo.total_capacity) + td.text-end + if (nodeInfo.node.last_update == 0) + span - - td.text-end - +btcValue(nodeInfo.total_capacity) - - - td.text-end - if (nodeInfo.node.last_update == 0) - span - - - else - +date(nodeInfo.node.last_update, "human") \ No newline at end of file + else + +date(nodeInfo.node.last_update, "human") diff --git a/views/includes/node-table.pug b/views/includes/node-table.pug index 4d720bd..29b57d3 100644 --- a/views/includes/node-table.pug +++ b/views/includes/node-table.pug @@ -1,18 +1,18 @@ .table-responsive - table.table.table-striped.mb-0 - thead - tr - th.text-end.fw-light # - th Node - th Address - - th.text-end Channels - th.text-end Capacity + table.table.table-striped.mb-0 + thead + tr + th.text-end.fw-light # + th Node + th Address - th.text-end Last Update - - tbody - each nodeInfo, index in nodeInfos - if (nodeInfo) - - var nodeTableIndex = (nodeTableIndexOffset + index + 1); - include ./node-table-row.pug \ No newline at end of file + th.text-end Channels + th.text-end Capacity + + th.text-end Last Update + + tbody + each nodeInfo, index in nodeInfos + if (nodeInfo) + - var nodeTableIndex = nodeTableIndexOffset + index + 1; + include ./node-table-row.pug diff --git a/views/includes/options-menu.pug b/views/includes/options-menu.pug index 081c649..34d5096 100644 --- a/views/includes/options-menu.pug +++ b/views/includes/options-menu.pug @@ -1,94 +1,100 @@ - .mb-3 - .d-flex.justify-content-between - div - div Current user - - if (session.admin) - span.badge.text-bg-primary - i.fas.fa-user.me-2 - span Admin - - else - span.badge.text-bg-primary - i.fas.fa-ban.me-2 - span None - - div - if (session.admin) - a.btn.btn-block.btn-danger.mt-2(href="/logout") - i.fas.fa-xmark.me-2 - span Logout - else - a.btn.btn-block.btn-primary.mt-2(href="/login") - i.fas.fa-sign-in-alt.me-2 - span Login - + .d-flex.justify-content-between + div + div Current user + + if (session.admin) + span.badge.text-bg-primary + i.fas.fa-user.me-2 + span Admin + + else + span.badge.text-bg-primary + i.fas.fa-ban.me-2 + span None + + div + if (session.admin) + a.btn.btn-block.btn-danger.mt-2(href="/logout") + i.fas.fa-xmark.me-2 + span Logout + else + a.btn.btn-block.btn-primary.mt-2(href="/login") + i.fas.fa-sign-in-alt.me-2 + span Login hr - .mb-3.d-flex - .me-3 - label.form-label Display Currency - br - .btn-group.me-2(role="group") - each currencyId in ["BTC", "sat", "local"] - if (displayCurrency.toLowerCase() == currencyId.toLowerCase()) - span.btn.btn-sm.btn-primary #{currencyId} - - else - a.btn.btn-sm.btn-light.border(href=`/changeSetting?name=displayCurrency&value=${currencyId}`) #{currencyId} - - - .me-3 - label.form-label Local Currency - br - .btn-group.me-2(role="group") - each currencyId in ["USD", "EUR", "GBP"] - if (localCurrency.toLowerCase() == currencyId.toLowerCase()) - span.btn.btn-sm.btn-primary #{currencyId} - - else - a.btn.btn-sm.btn-light.border(href=`/changeSetting?name=localCurrency&value=${currencyId}`) #{currencyId} - - - - div - label.form-label Theme - br - .btn-group.me-2(role="group") - each item in [{name:"Light", vals:["light",""]}, {name:"Dark", vals:["dark"]}] - - var itemSelected = item.vals.includes(session.uiTheme); - - if (itemSelected) - span.btn.btn-sm.btn-primary #{item.name} - else - a.btn.btn-sm.btn-light.border(href=`/changeSetting?name=uiTheme&value=${item.vals[0]}`) #{item.name} - + .me-3 + label.form-label Display Currency + br + .btn-group.me-2(role="group") + each currency, currencyId in global.currencyTypes + if (displayCurrency.toLowerCase() == currencyId.toLowerCase()) + span.btn.btn-sm.btn-primary #{ currency.name } + + else if (currency.type === "native") + if (process.env.LNDASH_PRIVACY_MODE && currency.name.toLowerCase() == "local") + + else + a.btn.btn-sm.btn-light.border( + href=`/changeSetting?name=displayCurrency&value=${currencyId}` + ) #{ currency.name } + + if (!process.env.LNDASH_PRIVACY_MODE) + .me-3 + label.form-label Local Currency + br + .btn-group.me-2(role="group") + each currency, currencyId in global.currencyTypes + if (localCurrency.toLowerCase() == currencyId.toLowerCase()) + span.btn.btn-sm.btn-primary #{ currency.name } + + else if (currency.type === "fiat") + a.btn.btn-sm.btn-light.border( + href=`/changeSetting?name=localCurrency&value=${currencyId}` + ) #{ currency.name } + + div + label.form-label Theme + br + .btn-group.me-2(role="group") + each item in [{name:"Light", vals:["light",""]}, {name:"Dark", vals:["dark"]}] + - var itemSelected = item.vals.includes(session.uiTheme); + + if (itemSelected) + span.btn.btn-sm.btn-primary #{ item.name } + else + a.btn.btn-sm.btn-light.border( + href=`/changeSetting?name=uiTheme&value=${item.vals[0]}` + ) #{ item.name } hr - .mb-3 - h5.h6 App Version - - if (global.sourcecodeVersion) - .mb-2 - span.me-2 Commit - span - a(href=`https://github.com/janoside/lndash/commit/${sourcecodeVersion}`) ##{sourcecodeVersion.substring(0, 8)} - - if (global.sourcecodeDate) - - var timeAgo = moment.duration(moment.utc(new Date()).diff(global.sourcecodeDate)); - - var dateTimeUtc = moment.utc(global.sourcecodeDate).format("Y-MM-DD"); - - .mb-2 - span.me-2 Date - span.border-dotted(title=`${timeAgo.humanize()} ago` data-bs-toggle="tooltip") #{dateTimeUtc} - - if (global.appVersion) - .mb-2 - span.me-2 Version - span v#{global.appVersion} - + h5.h6 App Version + + if (global.sourcecodeVersion) + .mb-2 + span.me-2 Commit + span + a( + href=`https://github.com/janoside/lndash/commit/${sourcecodeVersion}` + ) ##{ sourcecodeVersion.substring(0, 8) } + + if (global.sourcecodeDate) + - var timeAgo = moment.duration(moment.utc(new Date()).diff(global.sourcecodeDate)); + - var dateTimeUtc = moment.utc(global.sourcecodeDate).format("Y-MM-DD"); + + .mb-2 + span.me-2 Date + span.border-dotted( + title=`${timeAgo.humanize()} ago`, + data-bs-toggle="tooltip" + ) #{ dateTimeUtc } + + if (global.appVersion) + .mb-2 + span.me-2 Version + span v#{ global.appVersion } diff --git a/views/includes/page-errors-modal.pug b/views/includes/page-errors-modal.pug index 4aaf886..1fc433a 100644 --- a/views/includes/page-errors-modal.pug +++ b/views/includes/page-errors-modal.pug @@ -1,22 +1,22 @@ +modal(`pageErrorsModal`, "Page Errors") - each item, itemIndex in pageErrors - .card.shadow-sm(class=(itemIndex < (pageErrors.length - 1) ? "mb-3" : false)) - .card-header - h6.mb-0 Error ##{(itemIndex + 1).toLocaleString()} - .card-body - h6 Error Details - pre - code.json #{JSON.stringify(item.error, null, 4)} + each item, itemIndex in pageErrors + .card.shadow-sm(class=itemIndex < pageErrors.length - 1 ? "mb-3" : false) + .card-header + h6.mb-0 Error ##{ (itemIndex + 1).toLocaleString() } + .card-body + h6 Error Details + pre + code.json #{ JSON.stringify(item.error, null, 4) } - if (item.error.stack) - hr - h6 Stacktrace - pre - code.json #{item.error.stack} + if (item.error.stack) + hr + h6 Stacktrace + pre + code.json #{ item.error.stack } - if (item.error.userData) - hr + if (item.error.userData) + hr - h4.h6 User Data - pre - code.json #{JSON.stringify(error.userData, null, 4)} \ No newline at end of file + h4.h6 User Data + pre + code.json #{ JSON.stringify(error.userData, null, 4) } diff --git a/views/includes/payment-details-modal.pug b/views/includes/payment-details-modal.pug index 0707360..23fd9f6 100644 --- a/views/includes/payment-details-modal.pug +++ b/views/includes/payment-details-modal.pug @@ -1,16 +1,16 @@ +modal(`paymentModal-${paymentIndex}`, `Payment #${(paymentIndex + 1).toLocaleString()}`) - if (payment.htlcs) - each htlc in payment.htlcs - - htlc.preimage_base64 = utils.formatBuffer(htlc.preimage); - - htlc.preimage_hex = utils.formatBuffer(htlc.preimage, "hex"); - - delete htlc.preimage; + if (payment.htlcs) + each htlc in payment.htlcs + - htlc.preimage_base64 = utils.formatBuffer(htlc.preimage); + - htlc.preimage_hex = utils.formatBuffer(htlc.preimage, "hex"); + - delete htlc.preimage; - if (htlc.route && htlc.route.hops) - each hop in htlc.route.hops - if (hop.mpp_record && hop.mpp_record.payment_addr) - - hop.mpp_record.payment_addr_base64 = utils.formatBuffer(hop.mpp_record.payment_addr); - - hop.mpp_record.payment_addr_hex = utils.formatBuffer(hop.mpp_record.payment_addr, "hex"); - - delete hop.mpp_record.payment_addr; + if (htlc.route && htlc.route.hops) + each hop in htlc.route.hops + if (hop.mpp_record && hop.mpp_record.payment_addr) + - hop.mpp_record.payment_addr_base64 = utils.formatBuffer(hop.mpp_record.payment_addr); + - hop.mpp_record.payment_addr_hex = utils.formatBuffer(hop.mpp_record.payment_addr, "hex"); + - delete hop.mpp_record.payment_addr; - pre - code.json #{JSON.stringify(payment, null, 4)} \ No newline at end of file + pre + code.json #{ JSON.stringify(payment, null, 4) } diff --git a/views/includes/setup-directions-alert.pug b/views/includes/setup-directions-alert.pug index c83e7b0..7faadee 100644 --- a/views/includes/setup-directions-alert.pug +++ b/views/includes/setup-directions-alert.pug @@ -1,15 +1,15 @@ .mb-4.alert.alert-primary - p LNDash setup - 2 easy steps: + p LNDash setup - 2 easy steps: - ol.mb-0 - li - span(class=(setupStep == 1 ? "text-success" : null)) Set admin password - if (setupStep == 2) - i.fas.fa-check.text-success.ms-2 - br - small This will be used to authenticate your browser sessions, as well as encrypt LND credentials. + ol.mb-0 + li + span(class=setupStep == 1 ? "text-success" : null) Set admin password + if (setupStep == 2) + i.fas.fa-check.text-success.ms-2 + br + small This will be used to authenticate your browser sessions, as well as encrypt LND credentials. - li - span(class=(setupStep == 2 ? "text-success" : null)) Connect to LND - br - small Connect to your first LND node. You can add more later and switch among them easily. \ No newline at end of file + li + span(class=setupStep == 2 ? "text-success" : null) Connect to LND + br + small Connect to your first LND node. You can add more later and switch among them easily. diff --git a/views/includes/shared-channel-table-row.pug b/views/includes/shared-channel-table-row.pug deleted file mode 100644 index d3c3319..0000000 --- a/views/includes/shared-channel-table-row.pug +++ /dev/null @@ -1,169 +0,0 @@ -if (localChannels && localChannels.byId && localChannels.byId[channel.channel_id]) - - var localChannel = localChannels.byId[channel.channel_id]; - -tr.word-wrap - th.text-end.fw-light #{channelTableIndex.toLocaleString()} - - - td - if (localChannel.chan_id) - span.me-2 - if (localChannel.active) - span(title="Active", data-bs-toggle="tooltip") - i.fas.fa-circle.fa-sm.text-success - - else if (localChannel.chan_id) - if (localChannel.close_type) - span(title=`Closed (${localChannel.close_type})`, data-bs-toggle="tooltip") - i.fas.fa-circle.fa-sm.text-danger - - - else - span(title="Inactive", data-bs-toggle="tooltip") - i.fas.fa-circle.fa-sm.text-warning - - else - if (pendingOpenChannels.includes(localChannel)) - span(title="Opening", data-bs-toggle="tooltip") - i.fas.fa-circle.fa-sm.text-orange - - if (pendingCloseChannels.includes(localChannel)) - span(title="Opening", data-bs-toggle="tooltip") - i.fas.fa-circle.fa-sm.text-danger - - if (pendingForceCloseChannels.includes(localChannel)) - span(title="Force Closing", data-bs-toggle="tooltip") - i.fas.fa-circle.fa-sm.text-danger - - if (waitingCloseChannels.includes(localChannel)) - span(title="Waiting to Close", data-bs-toggle="tooltip") - i.fas.fa-circle.fa-sm.text-orange - - - +channelId(localChannel.chan_id, localChannel.active || (localChannel.chan_id && !localChannel.close_type)) - - if (pendingOpenChannels && pendingOpenChannels.includes(localChannel)) - span.me-2(title="Opening", data-bs-toggle="tooltip") - i.fas.fa-circle.fa-sm.text-info - - - var btc_txid = localChannel.channel.channel_point.substring(0, localChannel.channel.channel_point.indexOf(":")); - - var outpoint_output_index = localChannel.channel.channel_point.substring(localChannel.channel.channel_point.indexOf(":") + 1); - - +pillBadgeInfo("TX", "Opening Bitcoin transaction (with output index)") - +btcTxid(btc_txid, 12) - span.ms-1 [#{outpoint_output_index}] - - - - - - td - if (localChannel.private) - +pillBadgeSuccess - span.me-1 Private - i.fas.fa-lock - - else - +pillBadgeWarning - span.me-1 Public - i.fas.fa-eye - - - - if (localChannel.initiator) - +pillBadgeInfo - span(title="You created this channel", data-bs-toggle="tooltip") - i.fas.fa-arrow-up.me-1 - | Outbound - else - +pillBadgeSuccess - span(title="Your channel partner created this channel", data-bs-toggle="tooltip") - i.fas.fa-arrow-down.me-1 - | Inbound - - - - td - - let localBalance = null; - - let remoteBalance = null; - - if (localChannel.active) - - localBalance = new Decimal(localChannel.local_balance); - - remoteBalance = new Decimal(localChannel.remote_balance); - - else if (localChannel.channel != null) - - localBalance = new Decimal(localChannel.channel.local_balance); - - remoteBalance = new Decimal(localChannel.channel.remote_balance); - - - if (localBalance != null) - +progressBar([localBalance, remoteBalance], ["text-bg-primary", "text-bg-info"], "6px", false) - - .d-flex.justify-content-between - .text-start - span.fs-90 - +btcValue(localBalance) - - .text-end - span.fs-90 - +btcValue(remoteBalance) - - else - .text-end - - - - - td - - let valueReceived = null; - - let valueSent = null; - - if (localChannel.active) - - valueReceived = new Decimal(localChannel.total_satoshis_received || 0); - - valueSent = new Decimal(localChannel.total_satoshis_sent || 0); - - else if (localChannel.channel != null) - - valueReceived = new Decimal(localChannel.channel.total_satoshis_received || 0); - - valueSent = new Decimal(localChannel.channel.total_satoshis_sent || 0); - - - if (valueReceived != null && (valueReceived > 0 || valueSent > 0)) - .text-end.fs-90 - if (valueReceived && valueReceived > 0) - .text-success - | + - +btcValue(valueReceived) - - if (valueSent && valueSent > 0) - .text-danger - | - - +btcValue(valueSent) - - - - - else - .text-end - - - - td.text-end - +btcValue(channel.capacity) - - - - td.text-end - if (config.blockExplorerUrl) - a(href=`${config.blockExplorerUrl}/block-height/${fullNetworkDescription.parsedChannelIds[channel.channel_id].blockHeight}` target="_blank") #{fullNetworkDescription.parsedChannelIds[channel.channel_id].blockHeight.toLocaleString()} - - else - span #{fullNetworkDescription.parsedChannelIds[channel.channel_id].blockHeight.toLocaleString()} - - br - - +date(channel.last_update) - - - td.text-end - a.btn.btn-sm.btn-primary(href="javascript:void(0)" data-bs-toggle="modal" data-bs-target=("#sharedChannelModal-" + channelTableIndex)) - i.fas.fa-file-lines - - \ No newline at end of file diff --git a/views/includes/shared-channel-table.pug b/views/includes/shared-channel-table.pug index 792d101..f5bc0ee 100644 --- a/views/includes/shared-channel-table.pug +++ b/views/includes/shared-channel-table.pug @@ -1,41 +1,44 @@ .table-responsive - table.table.table-striped - thead - tr - th.text-end.fw-light # - th ID - th Flags - - th.text-end - span.border-dotted(title="Local and Remote Balances", data-bs-toggle="tooltip") Balances - span.text-muted.ms-1 - | ( - span.fw-bold - span.text-primary L - span.mx-1 / - span.text-info R - | ) - - th.text-end Transfer - - th.text-end Capacity - - th.text-end - span.border-dotted(title="The height of the block that confirmed each channel's opening transaction" data-bs-toggle="tooltip") Opened - span.ms-1 / Updated - - th.text-end Raw - - - tbody - each channel, index in channels - - - var channelTableIndex = (channelTableIndexOffset + index + 1); - - +modal(`sharedChannelModal-${channelTableIndex}`, `Channel - ${channel.channel_id}`) - pre - code.json #{JSON.stringify(channel, null, 4)} - - - - include ./shared-channel-table-row.pug \ No newline at end of file + table.table.table-striped + thead + tr + th.text-end.fw-light # + th ID + th Flags + + th.text-end + span.border-dotted( + title="Local and Remote Balances", + data-bs-toggle="tooltip" + ) Balances + span.text-muted.ms-1 + | ( + span.fw-bold + span.text-primary L + span.mx-1 / + span.text-info R + | ) + + th.text-end Transfer + + th.text-end Capacity + + th.text-end + span.border-dotted( + title="The height of the block that confirmed each channel's opening transaction", + data-bs-toggle="tooltip" + ) Opened + span.ms-1 / Updated + + th.text-end Raw + + tbody + each channel, index in channels + - var channelTableIndex = channelTableIndexOffset + index + 1; + - const sharedChannel = true; + + +modal(`sharedChannelModal-${channelTableIndex}`, `Channel - ${channel.channel_id}`) + pre + code.json #{ JSON.stringify(channel, null, 4) } + + include ./channel-table-row.pug diff --git a/views/includes/shared-mixins.pug b/views/includes/shared-mixins.pug index 50d9afb..aaa2d88 100644 --- a/views/includes/shared-mixins.pug +++ b/views/includes/shared-mixins.pug @@ -1,743 +1,864 @@ mixin themeCss - link(id="light-theme-link-tag", rel=(session.uiTheme != "dark" ? "stylesheet" : false), href=assetUrl(`./style/light.css`), integrity=assetIntegrity("light.css"), crossorigin="anonymous") - link(id="dark-theme-link-tag", rel=(session.uiTheme == "dark" ? "stylesheet" : false), href=assetUrl(`./style/dark.css`), integrity=assetIntegrity("dark.css"), crossorigin="anonymous") - - + link#light-theme-link-tag( + rel=session.uiTheme != "dark" ? "stylesheet" : false, + href=assetUrl(`./style/light.css`), + integrity=assetIntegrity("light.css"), + crossorigin="anonymous" + ) + link#dark-theme-link-tag( + rel=session.uiTheme == "dark" ? "stylesheet" : false, + href=assetUrl(`./style/dark.css`), + integrity=assetIntegrity("dark.css"), + crossorigin="anonymous" + ) mixin sharedScriptTags - script(src=assetUrl(`/js/jquery.min.js`), integrity=assetIntegrity("jquery.min.js"), crossorigin="anonymous") - script(src=assetUrl(`/js/bootstrap.bundle.min.js`), integrity=assetIntegrity("bootstrap.bundle.min.js"), crossorigin="anonymous") - - script(src=assetUrl(`/js/fontawesome.min.js`), integrity=assetIntegrity("fontawesome.min.js"), crossorigin="anonymous") - script(src=assetUrl(`/js/site.js`), integrity=assetIntegrity("site.js"), crossorigin="anonymous") - - + script(type="text/javascript", src="/js/highlight.min.js") + script( + src=assetUrl(`/js/jquery.min.js`), + integrity=assetIntegrity("jquery.min.js"), + crossorigin="anonymous" + ) + script( + src=assetUrl(`/js/bootstrap.bundle.min.js`), + integrity=assetIntegrity("bootstrap.bundle.min.js"), + crossorigin="anonymous" + ) + + script(type="text/javascript", src="/js/jdenticon.min.js") + script( + src=assetUrl(`/js/fontawesome.min.js`), + integrity=assetIntegrity("fontawesome.min.js"), + crossorigin="anonymous" + ) + script( + src=assetUrl(`/js/site.js`), + integrity=assetIntegrity("site.js"), + crossorigin="anonymous" + ) mixin pageTitle(text, subtext, copyableSubtext=false, subtextEllipsizeLength=-1) - .mb-4 - .d-flex.justify-content-between - h1.fw-light.word-wrap.mb-1 - if (typeof text === "string") - | #{text} - - else - span.me-2 #{text[0]} - span.fst-italic #{text[1]} - - - if (block) - block - - if (subtext) - h4.fw-light.word-wrap - if (subtextEllipsizeLength > 0) - | #{utils.ellipsizeMiddle(subtext, subtextEllipsizeLength)} - else - | #{subtext} - - if (copyableSubtext) - small - +copyTextButton(subtext) - - //hr.mb-3 + .mb-4 + .d-flex.justify-content-between + h1.fw-light.word-wrap.mb-1 + if (typeof text === "string") + | #{ text } + else + span.me-2 #{ text[0] } + span.fst-italic #{ text[1] } -mixin sectionTitleBlock - h3.h5.mb-1.fw-light - block + if (block) + block - -mixin sectionTitle(text, toggle=false, toggleUniqueClass, toggleUserSettingName, toggleOpen, tooltipText) - if (false) - pre - code.json #{JSON.stringify(session.userSettings)} + if (subtext) + h4.fw-light.word-wrap + if (subtextEllipsizeLength > 0) + | #{ utils.ellipsizeMiddle(subtext, subtextEllipsizeLength) } + else + | #{ subtext } - h3.h5.mb-1.fw-light(class=(toggle && !toggleOpen ? "mb-section" : false), class=(!toggle || toggleOpen ? "d-block" : "d-none")) - if (tooltipText) - span.border-dotted(title=tooltipText, data-bs-toggle="tooltip") - | #{text} + if (copyableSubtext) + small + +copyTextButton(subtext) - else - | #{text} + //hr.mb-3 - if (toggle) - small(title=`Toggle ${text}`, data-bs-toggle="tooltip") - a.text-card-highlight.fs-6(href=`./changeSetting?name=${toggleUserSettingName}&value=false`) - i.toggle-plus-minus.ms-2(class=(toggleOpen ? "bi-dash-square" : "bi-plus-square")) +mixin sectionTitleBlock + h3.h5.mb-1.fw-light + block +mixin sectionTitle(text, toggle=false, toggleUniqueClass, toggleUserSettingName, toggleOpen, tooltipText) + if (false) + pre + code.json #{ JSON.stringify(session.userSettings) } + + h3.h5.mb-1.fw-light( + class=toggle && !toggleOpen ? "mb-section" : false, + class=!toggle || toggleOpen ? "d-block" : "d-none" + ) + if (tooltipText) + span.border-dotted(title=tooltipText, data-bs-toggle="tooltip") + | #{ text } + + else + | #{ text } + + if (toggle) + small(title=`Toggle ${text}`, data-bs-toggle="tooltip") + a.text-card-highlight.fs-6( + href=`./changeSetting?name=${toggleUserSettingName}&value=false` + ) + i.toggle-plus-minus.ms-2( + class=toggleOpen ? "bi-dash-square" : "bi-plus-square" + ) mixin contentSection(title, toggleable=false, toggleUserSettingName, defaultOpen=true, cardUi=true) - if (toggleable) - - var toggleUniqueClass = `section-${utils.getRandomString(10, "aA#")}`; - - var toggleOpen = userSettings[toggleUserSettingName] == null ? defaultOpen : (userSettings[toggleUserSettingName] == "true" || userSettings[toggleUserSettingName] == true); - - if (title) - +sectionTitle(title, toggleable, toggleUniqueClass, toggleUserSettingName, toggleOpen) + if (toggleable) + - var toggleUniqueClass = `section-${utils.getRandomString(10, "aA#")}`; + - var toggleOpen = userSettings[toggleUserSettingName] == null ? defaultOpen : userSettings[toggleUserSettingName] == "true" || userSettings[toggleUserSettingName] == true; - .mb-section(class=toggleUniqueClass, style=(toggleable && !toggleOpen ? "display: none;" : false)) - if (cardUi) - .card.mb-section.shadow-sm - .card-body - block + if (title) + +sectionTitle(title, toggleable, toggleUniqueClass, toggleUserSettingName, toggleOpen) - else - block + .mb-section( + class=toggleUniqueClass, + style=toggleable && !toggleOpen ? "display: none;" : false + ) + if (cardUi) + .card.mb-section.shadow-sm + .card-body + block + else + block mixin summaryRow(itemCount) - - locals.summaryItemCount = itemCount; - - locals.summaryItemIndex = 0; - - - locals.colCounts = {"sm": 1, "md": Math.min(itemCount, 3), "lg": Math.min(itemCount, 4), "xl": Math.min(itemCount, 5)}; - - locals.rowCountsArray = utils.objectProperties(locals.colCounts).map(x => [x, locals.colCounts[x]]).map(x => [x[0], (Math.floor(itemCount / x[1]) + ((itemCount % x[1] > 0) ? 1 : 0))]); - - locals.rowCounts = {}; - - locals.rowCountsArray.forEach(x => locals.rowCounts[x[0]] = x[1]); + - locals.summaryItemCount = itemCount; + - locals.summaryItemIndex = 0; - //h1 #{itemCount} #{JSON.stringify(locals.rowCounts)} + - locals.colCounts = { sm: 1, md: Math.min(itemCount, 3), lg: Math.min(itemCount, 4), xl: Math.min(itemCount, 5) }; + - locals.rowCountsArray = utils.objectProperties(locals.colCounts).map(x => [x, locals.colCounts[x]]).map(x => [x[0], (Math.floor(itemCount / x[1]) + ((itemCount % x[1] > 0) ? 1 : 0))]); + - locals.rowCounts = {}; + - locals.rowCountsArray.forEach((x) => (locals.rowCounts[x[0]] = x[1])); - .row.row-cols-1.summary-row(class=utils.objectProperties(locals.colCounts).map(x => `row-cols-${x}-${locals.colCounts[x]}`).join(" ")) - block + //h1 #{itemCount} #{JSON.stringify(locals.rowCounts)} + .row.row-cols-1.summary-row( + class=utils + .objectProperties(locals.colCounts) + .map((x) => `row-cols-${x}-${locals.colCounts[x]}`) + .join(" ") + ) + block mixin summaryTitle(title, titleDesc, subtitle, subtitleDesc, linkText, linkUrl, linkDesc) - span.fs-6.text-uppercase.fw-light.text-card-highlight(class=(titleDesc ? "border-dotted" : false), class=(subtitle ? "me-2" : false), title=titleDesc, data-bs-toggle="tooltip", data-bs-html="true") #{title} - if (subtitle) - small.text-card-highlight.fw-light - | ( - span(class=(subtitleDesc ? "border-dotted" : false), title=subtitleDesc, data-bs-toggle="tooltip", data-bs-html="true") #{subtitle} - | ) - - if (linkText && linkUrl) - if (linkText.startsWith("text:")) - a.ms-2.fs-75(href=linkUrl, data-bs-toggle="tooltip", title=linkDesc) #{linkText.substring("text:".length)} - - else if (linkText.startsWith("icon:")) - small - a.ms-2(href=linkUrl, data-bs-toggle="tooltip", title=linkDesc) - i(class=linkText.substring("icon:".length)) - + span.fs-6.text-uppercase.fw-light.text-card-highlight( + class=titleDesc ? "border-dotted" : false, + class=subtitle ? "me-2" : false, + title=titleDesc, + data-bs-toggle="tooltip", + data-bs-html="true" + ) #{ title } + if (subtitle) + small.text-card-highlight.fw-light + | ( + span( + class=subtitleDesc ? "border-dotted" : false, + title=subtitleDesc, + data-bs-toggle="tooltip", + data-bs-html="true" + ) #{ subtitle } + | ) + + if (linkText && linkUrl) + if (linkText.startsWith("text:")) + a.ms-2.fs-75(href=linkUrl, data-bs-toggle="tooltip", title=linkDesc) #{ linkText.substring("text:".length) } + + else if (linkText.startsWith("icon:")) + small + a.ms-2(href=linkUrl, data-bs-toggle="tooltip", title=linkDesc) + i(class=linkText.substring("icon:".length)) mixin summaryItem(title, titleDesc, subtitle, subtitleDesc, linkText, linkUrl, linkDesc) - - var rowIndexes = utils.objectProperties(locals.colCounts).map(x => [x, locals.colCounts[x]]).map(x => [x[0], Math.floor(locals.summaryItemIndex / x[1])]); - - .col(class=(locals.summaryItemIndex == (locals.summaryItemCount - 1) ? "mb-0" : "mb-3"), class=rowIndexes.map(x => `mb-${x[0]}-${(x[1] < (locals.rowCounts[x[0]] - 1) ? "4" : "0")}`)) - //span.text-danger (#{JSON.stringify(locals.rowCounts)}) - .text-start.text-md-center - +summaryTitle(title, titleDesc, subtitle, subtitleDesc, linkText, linkUrl, linkDesc) - + - var rowIndexes = utils.objectProperties(locals.colCounts).map(x => [x, locals.colCounts[x]]).map(x => [x[0], Math.floor(locals.summaryItemIndex / x[1])]); - .lead.text-start.text-md-center - block + .col( + class=locals.summaryItemIndex == locals.summaryItemCount - 1 ? "mb-0" : "mb-3", + class=rowIndexes.map((x) => `mb-${x[0]}-${x[1] < locals.rowCounts[x[0]] - 1 ? "4" : "0"}`) + ) + //span.text-danger (#{JSON.stringify(locals.rowCounts)}) + .text-start.text-md-center + +summaryTitle(title, titleDesc, subtitle, subtitleDesc, linkText, linkUrl, linkDesc) - - locals.summaryItemIndex++; + .lead.text-start.text-md-center + block + - locals.summaryItemIndex++; mixin copyTextButton(text) - small.ms-2 - if (false) - a(href="javascript:void(0)", title="Copy", data-clipboard-text=text, data-bs-toggle="tooltip", onclick=`copyTextToClipboard("${text}"); $(".icon-copy").toggle(); $(this).find(".icon-copied").toggle(); setTimeout(() => { $(this).find(".icon-copy").toggle(); $(this).find(".icon-copied").toggle(); }, 2000); return false;`) - i.bi-clipboard2.text-info.icon-copy - i.bi-clipboard2-check.text-success.icon-copied(style="display: none;") - - a(href="javascript:void(0)", title="Copy", data-clipboard-text=text, data-bs-toggle="tooltip", onclick=`copyTextToClipboard("${text}"); $(this).attr("title", "Copied!").tooltip("_fixTitle").tooltip("show"); $(this).mouseleave(function() { $(this).tooltip("hide"); $(this).attr("data-bs-original-title", "Copy"); });`) - i.fas.fa-clipboard.text-info - + small.ms-2 + if (false) + a( + href="javascript:void(0)", + title="Copy", + data-clipboard-text=text, + data-bs-toggle="tooltip", + onclick=`copyTextToClipboard("${text}"); $(".icon-copy").toggle(); $(this).find(".icon-copied").toggle(); setTimeout(() => { $(this).find(".icon-copy").toggle(); $(this).find(".icon-copied").toggle(); }, 2000); return false;` + ) + i.bi-clipboard2.text-info.icon-copy + i.bi-clipboard2-check.text-success.icon-copied(style="display: none") + + a( + href="javascript:void(0)", + title="Copy", + data-clipboard-text=text, + data-bs-toggle="tooltip", + onclick=`copyTextToClipboard("${text}"); $(this).attr("title", "Copied!").tooltip("_fixTitle").tooltip("show"); $(this).mouseleave(function() { $(this).tooltip("hide"); $(this).attr("data-bs-original-title", "Copy"); });` + ) + i.fas.fa-clipboard.text-info mixin card - .card.mb-3.shadow-sm - .card-body - block - + .card.mb-3.shadow-sm + .card-body + block mixin modal(modalId, title, modalSizeClass="modal-xl") - .modal.fade.mt-6(id=modalId role="dialog" aria-hidden="true") - .modal-dialog(role="document", class=modalSizeClass) - .modal-content - .modal-header - h5.modal-title.fw-light #{title} - - button.btn-close(type="button" data-bs-dismiss="modal" aria-label="Close") + .modal.fade.mt-6(id=modalId, role="dialog", aria-hidden="true") + .modal-dialog(role="document", class=modalSizeClass) + .modal-content + .modal-header + h5.modal-title.fw-light #{ title } - .modal-body - block - - .modal-footer - button.btn.btn-dark(type="button" data-bs-dismiss="modal") Close + button.btn-close( + type="button", + data-bs-dismiss="modal", + aria-label="Close" + ) + .modal-body + block + .modal-footer + button.btn.btn-dark(type="button", data-bs-dismiss="modal") Close mixin filterList - .d-flex.flex-wrap.mb-n3 - block - + .d-flex.flex-wrap.mb-n3 + block mixin filterItem(lastInList=false) - if (lastInList) - .mb-3 - block - else - .mb-3.me-3 - block - + if (lastInList) + .mb-3 + block + else + .mb-3.me-3 + block mixin filterBtnGroup(label, labelSubtext, options, baseUrl, varName, varVal) - div - if (labelSubtext) - label.form-label.border-dotted(title=labelSubtext, data-bs-toggle="tooltip") #{label} - else - label.form-label #{label} - - .btn-group.me-2(role="group") - each opt in options - if (varVal != null && varVal == opt[1]) - span.btn.btn-sm.btn-primary #{opt[0]} - else - a.btn.btn-sm.btn-light.border(href=`${baseUrl}&${varName}=${opt[1]}`) #{opt[0]} - + div + if (labelSubtext) + label.form-label.border-dotted( + title=labelSubtext, + data-bs-toggle="tooltip" + ) #{ label } + else + label.form-label #{ label } + + .btn-group.me-2(role="group") + each opt in options + if (varVal != null && varVal == opt[1]) + span.btn.btn-sm.btn-primary #{ opt[0] } + else + a.btn.btn-sm.btn-light.border(href=`${baseUrl}&${varName}=${opt[1]}`) #{ opt[0] } mixin menuHeading(text, hoverText) - if (hoverText) - h6.text-uppercase.text-primary.fs-90 - span.border-dotted(title=hoverText, data-bs-toggle="tooltip") #{text} - else - h6.text-uppercase.text-primary.fs-90 #{text} + if (hoverText) + h6.text-uppercase.text-primary.fs-90 + span.border-dotted(title=hoverText, data-bs-toggle="tooltip") #{ text } + else + h6.text-uppercase.text-primary.fs-90 #{ text } mixin pillBadge(text, colorClass, hoverText) - span.badge.rounded-pill.me-2(class=colorClass) - if (hoverText) - span.border-dotted(title=hoverText, data-bs-toggle="tooltip") #{text} - else - | #{text} + span.badge.rounded-pill.me-2(class=colorClass) + if (hoverText) + span.border-dotted(title=hoverText, data-bs-toggle="tooltip") #{ text } + else + | #{ text } - block + block mixin pillBadgeSuccess(text, hoverText) - +pillBadge(text, "text-bg-success", hoverText) - block + +pillBadge(text, "text-bg-success", hoverText) + block mixin pillBadgeInfo(text, hoverText) - +pillBadge(text, "text-bg-info", hoverText) - block + +pillBadge(text, "text-bg-info", hoverText) + block mixin pillBadgeWarning(text, hoverText) - +pillBadge(text, "text-bg-warning", hoverText) - block + +pillBadge(text, "text-bg-warning", hoverText) + block mixin pillBadgeDanger(text, hoverText) - +pillBadge(text, "text-bg-danger", hoverText) - block + +pillBadge(text, "text-bg-danger", hoverText) + block mixin pillBadgeLight(text, hoverText) - +pillBadge(text, "text-bg-light", hoverText) - block - + +pillBadge(text, "text-bg-light", hoverText) + block mixin btcAddress(btc_address) - if (config.blockExplorerUrl) - a(href=`${config.blockExplorerUrl}/address/${btc_address}`, title=btc_address, data-bs-toggle="tooltip") - +btcAddressInternal(btc_address) - else - span(title=btc_address, data-bs-toggle="tooltip") - +btcAddressInternal(btc_address) + if (config.blockExplorerUrl) + a( + href=`${config.blockExplorerUrl}/address/${btc_address}`, + title=btc_address, + data-bs-toggle="tooltip" + ) + +btcAddressInternal(btc_address) + else + span(title=btc_address, data-bs-toggle="tooltip") + +btcAddressInternal(btc_address) mixin btcAddressInternal(btc_address) - span.d-inline.d-xl-none #{utils.ellipsizeMiddle(btc_address, 12)} - span.d-none.d-xl-inline #{utils.ellipsizeMiddle(btc_address, config.site.addressMaxDisplayLength)} - + span.d-inline.d-xl-none #{ utils.ellipsizeMiddle(btc_address, 12) } + span.d-none.d-xl-inline #{ utils.ellipsizeMiddle(btc_address, config.site.addressMaxDisplayLength) } mixin btcTxid(btc_txid, length=-1) - if (config.blockExplorerUrl) - a(href=`${config.blockExplorerUrl}/tx/${btc_txid}`, title=btc_txid, data-bs-toggle="tooltip") - +btcTxidInternal(btc_txid, length) - - else - span(title=btc_txid, data-bs-toggle="tooltip") - +btcTxidInternal(btc_txid, length) + if (config.blockExplorerUrl) + a( + href=`${config.blockExplorerUrl}/tx/${btc_txid}`, + title=btc_txid, + data-bs-toggle="tooltip" + ) + +btcTxidInternal(btc_txid, length) + + else + span(title=btc_txid, data-bs-toggle="tooltip") + +btcTxidInternal(btc_txid, length) mixin btcTxidInternal(btc_txid, length=-1) - span.d-inline.d-xl-none #{utils.ellipsizeMiddle(btc_txid, length == -1 ? 12 : length)} - span.d-none.d-xl-inline #{utils.ellipsizeMiddle(btc_txid, length == -1 ? config.site.txidMaxDisplayLength : length)} - + span.d-inline.d-xl-none #{ utils.ellipsizeMiddle(btc_txid, length == -1 ? 12 : length) } + span.d-none.d-xl-inline #{ utils.ellipsizeMiddle(btc_txid, length == -1 ? config.site.txidMaxDisplayLength : length) } mixin channelId(channel_id, isOpen=false) - if (isOpen) - a(href=`/channel/${channel_id}`) - +channelIdInternal(channel_id) - - else - span.border-dotted(title=channel_id, data-bs-toggle="tooltip") - +channelIdInternal(channel_id) - +copyTextButton(channel_id) - - span(title="Closed", data-bs-toggle="tooltip") - i.fas.fa-xmark.text-danger.ms-2 - - - if (utils.isObjectStarred(`channel:${channel_id}`)) - i.fas.fa-star.text-warning.ms-1(title="This is one of your favorite channels" data-bs-toggle="tooltip") + if (isOpen) + a(href=`/channel/${channel_id}`) + +channelIdInternal(channel_id) + +copyTextButton(channel_id) + + else + span.border-dotted(title=channel_id, data-bs-toggle="tooltip") + +channelIdInternal(channel_id) + +copyTextButton(channel_id) + + if (utils.isObjectStarred(`channel:${channel_id}`)) + i.fas.fa-star.text-warning.ms-1( + title="This is one of your favorite channels", + data-bs-toggle="tooltip" + ) mixin channelIdInternal(channel_id) - span.d-inline.d-lg-none #{utils.ellipsizeMiddle(channel_id, 10)} - span.d-none.d-lg-inline #{utils.ellipsizeMiddle(channel_id, 12)} - + span.d-inline.d-lg-none #{ utils.ellipsizeMiddle(channel_id, 10) } + span.d-none.d-lg-inline #{ utils.ellipsizeMiddle(channel_id, 12) } mixin channelPoint(txid, outputIndex, blockHeight) - +btcTxid(channelPointTxid, 8) - span.ms-1 [#{channelPointIndex}] - - - span.fs-80.text-muted.ms-2(title="Block height of this transaction", data-bs-toggle="tooltip") ( - +blockHeight(blockHeight) - | ) - + +btcTxid(txid, 8) + span.ms-1 [#{ outputIndex }] + span.fs-80.text-muted.ms-2( + title="Block height of this transaction", + data-bs-toggle="tooltip" + ) ( + +blockHeight(blockHeight) + | ) mixin blockHeight(blockHeight) - if (config.blockExplorerUrl) - a(href=`${config.blockExplorerUrl}/block-height/${blockHeight}` target="_blank") #{blockHeight.toLocaleString()} - else - span #{blockHeight.toLocaleString()} - + if (config.blockExplorerUrl) + a( + href=`${config.blockExplorerUrl}/block-height/${blockHeight}`, + target="_blank" + ) #{ blockHeight.toLocaleString() } + else + span #{ blockHeight.toLocaleString() } mixin netAddress(address, network, copyButton=false) - - let addr = address; - - let port = ""; + - let addr = address; + - let port = ""; - if (addr.includes(":")) - - port = addr.substring(addr.lastIndexOf(":") + 1); - - addr = addr.substring(0, addr.lastIndexOf(":")); - - if (addr.includes(".onion")) - span.border-dotted(title=`${network != null ? (network + " ") : ""}${address}`, data-bs-toggle="tooltip") #{utils.ellipsizeMiddle(addr.substring(0, addr.indexOf(".onion")), 10)}#{addr.substring(addr.indexOf(".onion"))} + if (addr.includes(":")) + - port = addr.substring(addr.lastIndexOf(":") + 1); + - addr = addr.substring(0, addr.lastIndexOf(":")); - else if (address.length > config.site.addressMaxDisplayLength) - span.border-dotted(title=`${network != null ? (network + " ") : ""}${address}`, data-bs-toggle="tooltip") #{utils.ellipsizeMiddle(addr, config.site.addressMaxDisplayLength)} + if (addr.includes(".onion")) + span.border-dotted( + title=`${network != null ? (network + " ") : ""}${address}`, + data-bs-toggle="tooltip" + ) #{ utils.ellipsizeMiddle(addr.substring(0, addr.indexOf(".onion")), 10) }#{ addr.substring(addr.indexOf(".onion")) } - else - if (network) - span.border-dotted(title=`${network} ${address}`, data-bs-toggle="tooltip") #{addr} + else if (address.length > config.site.addressMaxDisplayLength) + span.border-dotted( + title=`${network != null ? (network + " ") : ""}${address}`, + data-bs-toggle="tooltip" + ) #{ utils.ellipsizeMiddle(addr, config.site.addressMaxDisplayLength) } - else - | #{addr} + else + if (network) + span.border-dotted( + title=`${network} ${address}`, + data-bs-toggle="tooltip" + ) #{ addr } - if (port && port.length > 0) - span.text-tiny :#{port} + else + | #{ addr } - if (copyButton) - +copyTextButton(address) + if (port && port.length > 0) + span.text-tiny :#{ port } + if (copyButton) + +copyTextButton(address) mixin date(timestamp, formatType="human", includeAgo=false) - - var d1 = new Date(); - - var d2 = new Date(parseInt(timestamp) * 1000); - - var timeAgo = moment.duration(moment.utc(d1).diff(moment.utc(d2))); - - var dateTimeUtc = moment.utc(new Date(parseInt(timestamp) * 1000)).format("Y-MM-DD HH:mm:ss"); - - span.border-dotted(title=`${dateTimeUtc} utc`, data-bs-toggle="tooltip") - if (d1.getTime() < d2.getTime()) - | + + - var d1 = new Date(); + - var d2 = new Date(parseInt(timestamp) * 1000); + - var timeAgo = moment.duration(moment.utc(d1).diff(moment.utc(d2))); + - var dateTimeUtc = moment.utc(new Date(parseInt(timestamp) * 1000)).format("Y-MM-DD HH:mm:ss"); - if (formatType == "human") - | #{timeAgo.humanize()} + span.border-dotted(title=`${dateTimeUtc} utc`, data-bs-toggle="tooltip") + if (d1.getTime() < d2.getTime()) + | + - else if (formatType == "detail") - | #{timeAgo.format()} + if (formatType == "human") + | #{ timeAgo.humanize() } - if (includeAgo) - span.ms-1 ago + else if (formatType == "detail") + | #{ timeAgo.format() } + if (includeAgo) + span.ms-1 ago mixin btcValue(value, currencyUnit="sat", formatType=null) - - let currencyValue = 0; - if (currencyUnit == "sat") - - currencyValue = new Decimal(value).dividedBy(coinConfig.baseCurrencyUnit.multiplier); - else if (currencyUnit == "btc") - - currencyValue = new Decimal(value); - else if (currencyUnit == "msat") - - currencyValue = new Decimal(value).dividedBy(coinConfig.currencyUnitsByName.msat.multiplier); - - - +valueDisplay(currencyValue, {displayCurrency:(formatType || displayCurrency), localCurrency:localCurrency}) - + - let currencyValue = 0; + if (currencyUnit == "sat") + - currencyValue = new Decimal(value).dividedBy(coinConfig.baseCurrencyUnit.multiplier); + else if (currencyUnit == "btc") + - currencyValue = new Decimal(value); + else if (currencyUnit == "msat") + - currencyValue = new Decimal(value).dividedBy(coinConfig.currencyUnitsByName.msat.multiplier); + +valueDisplay(currencyValue, {displayCurrency:(formatType || displayCurrency), localCurrency:localCurrency}) mixin valueDisplay(val, options={}) - - let displayCurrency = (options.displayCurrency || "btc").toLowerCase(); + - let displayCurrency = (options.displayCurrency || "btc").toLowerCase(); - if (val > 0) - if (displayCurrency == "btc") - +_valueDisplayBtc(val, options) + if (displayCurrency == "btc") + +_valueDisplayBtc(val, options) - else if (displayCurrency == "sat") - - let o2 = options; - - o2.summarizeMin = 1000000; + else if (displayCurrency == "sat") + - let o2 = options; + - o2.summarizeMin = 1000000; - +_valueDisplaySat(val, o2) + +_valueDisplaySat(val, o2) - else if (displayCurrency == "local") - - let o2 = options; - - o2.summarizeMin = 1000000; + else if (displayCurrency == "local") + - let o2 = options; + - o2.summarizeMin = 1000000; - +_valueDisplayLocal(val, o2) + +_valueDisplayLocal(val, o2) - else - if (val > 0) - - let parts = utils.formatCurrencyAmount(val, displayCurrency); - - span #{parts.val} - if (parts.lessSignificantDigits && !options.hideLessSignificantDigits) - span.text-small.text-darken.ms-1 #{parts.lessSignificantDigits} + else + - let parts = utils.formatCurrencyAmount(val, displayCurrency); - if (exchangeRates) - - let localCurFormatData = utils.getExchangedCurrencyFormatData(val, localCurrency); + span #{ parts.val } + if (parts.lessSignificantDigits && !options.hideLessSignificantDigits) + span.text-small.text-darken.ms-1 #{ parts.lessSignificantDigits } - span.xs-hidden.d-none.d-sm-inline.text-tiny.text-tight-spacing.border-dotted.fw-light.ms-1(data-bs-toggle="tooltip", title=`${localCurFormatData.symbol}${localCurFormatData.value}`, data-bs-html="true") #{parts.currencyUnit} - - else - span.xs-hidden.d-none.d-sm-inline.fs-80.text-tight-spacing.fw-light.ms-1 #{parts.currencyUnit} - - - else - span 0 + if (exchangeRates) + - let localCurFormatData = utils.getExchangedCurrencyFormatData(val, localCurrency); + span.xs-hidden.d-none.d-sm-inline.text-tiny.text-tight-spacing.border-dotted.fw-light.ms-1( + data-bs-toggle="tooltip", + title=`${localCurFormatData.symbol}${localCurFormatData.value}`, + data-bs-html="true" + ) #{ parts.currencyUnit } -mixin _valueDisplayBtc(val, options={}) - - let displayCurrency = (options.displayCurrency || "btc").toLowerCase(); - - let localCurrency = (options.localCurrency || "usd").toLowerCase(); - - - let parts = utils.formatCurrencyAmount(val, displayCurrency); + else + span.xs-hidden.d-none.d-sm-inline.fs-80.text-tight-spacing.fw-light.ms-1 #{ parts.currencyUnit } - //span #{JSON.stringify(parts)} +mixin _valueDisplayBtc(val, options={}) + - let displayCurrency = (options.displayCurrency || "btc").toLowerCase(); + - let localCurrency = (options.localCurrency || "usd").toLowerCase(); - //span.d-inline.d-sm-none.fw-light.me-tiny ₿ - - span #{parts.val} - if (parts.lessSignificantDigits && !options.hideLessSignificantDigits) - span.text-small.text-darken.ms-1 #{parts.lessSignificantDigits} + - let parts = utils.formatCurrencyAmount(val, displayCurrency); - if (exchangeRates) - - let localCurFormatData = utils.getExchangedCurrencyFormatData(val, localCurrency); + //span #{JSON.stringify(parts)} - span.xs-hidden.d-none.d-sm-inline.text-tiny.text-tight-spacing.border-dotted.fw-light.ms-1(data-bs-toggle="tooltip", title=`${localCurFormatData.symbol}${localCurFormatData.value}`, data-bs-html="true") #{parts.currencyUnit} - - else - span.xs-hidden.d-none.d-sm-inline.fs-80.text-tight-spacing.fw-light.ms-1 #{parts.currencyUnit} + //span.d-inline.d-sm-none.fw-light.me-tiny ₿ + span #{ parts.val } + if (parts.lessSignificantDigits && !options.hideLessSignificantDigits) + span.text-small.text-darken.ms-1 #{ parts.lessSignificantDigits } -mixin _valueDisplaySat(val, options={}) - - let summarizeMin = (options.summarizeMin || Infinity); - - let summarizeDecimals = (options.summarizeDecimals || 3); - - let displayCurrency = (options.displayCurrency || "btc").toLowerCase(); - - let localCurrency = (options.localCurrency || "usd").toLowerCase(); + if (exchangeRates) + - let localCurFormatData = utils.getExchangedCurrencyFormatData(val, localCurrency); - - let parts = utils.formatCurrencyAmount(val, localCurrencyDisplay ? localCurrency : displayCurrency); + span.xs-hidden.d-none.d-sm-inline.text-tiny.text-tight-spacing.border-dotted.fw-light.ms-1( + data-bs-toggle="tooltip", + title=`${localCurFormatData.symbol}${localCurFormatData.value}`, + data-bs-html="true" + ) #{ parts.currencyUnit } - //span #{JSON.stringify(parts)} - - if (parts.intVal >= summarizeMin) - //span #{JSON.stringify(parts)} - - let largeNumberData = utils.formatLargeNumberSignificant(parts.intVal, summarizeDecimals >= 0 ? summarizeDecimals : 3); - //span #{JSON.stringify(largeNumberData)} #{parts.intVal} - span(title=parts.intVal.toLocaleString(), data-bs-toggle="tooltip") #{largeNumberData[0]} - span.ms-1 #{largeNumberData[1].textDesc} - - else - span(class=(localCurrencyDisplay ? "border-dotted" : false), title=(localCurrencyDisplay ? `${utils.formatCurrencyAmount(val, coinConfig.defaultCurrencyUnit.name.toLowerCase()).simpleVal} BTC` : false), data-bs-toggle=(localCurrencyDisplay ? "tooltip" : false)) #{parts.intVal.toLocaleString()} + else + span.xs-hidden.d-none.d-sm-inline.fs-80.text-tight-spacing.fw-light.ms-1 #{ parts.currencyUnit } +mixin _valueDisplaySat(val, options={}) + - let summarizeMin = options.summarizeMin || Infinity; + - let summarizeDecimals = options.summarizeDecimals || 3; + - let displayCurrency = (options.displayCurrency || "btc").toLowerCase(); + - let localCurrency = (options.localCurrency || "usd").toLowerCase(); - if (exchangeRates) - - let localCurFormatData = utils.getExchangedCurrencyFormatData(val, localCurrency); + - let parts = utils.formatCurrencyAmount(val, localCurrencyDisplay ? localCurrency : displayCurrency); - span.xs-hidden.d-none.d-sm-inline.text-tiny.text-tight-spacing.border-dotted.fw-light.ms-1(data-bs-toggle="tooltip", title=`${localCurFormatData.symbol}${localCurFormatData.value}`, data-bs-html="true") #{parts.currencyUnit} - - else - span.xs-hidden.d-none.d-sm-inline.text-tiny.text-tight-spacing.fw-light.ms-1 #{parts.currencyUnit} + //span #{JSON.stringify(parts)} + if (parts.intVal >= summarizeMin) + //span #{JSON.stringify(parts)} + - let largeNumberData = utils.formatLargeNumberSignificant(parts.intVal, summarizeDecimals >= 0 ? summarizeDecimals : 3); + //span #{JSON.stringify(largeNumberData)} #{parts.intVal} + span(title=parts.intVal.toLocaleString(), data-bs-toggle="tooltip") #{ largeNumberData[0] } + span.ms-1 #{ largeNumberData[1].textDesc } -mixin _valueDisplayLocal(val, options={}) - - let summarizeMin = (options.summarizeMin || Infinity); - - let summarizeDecimals = (options.summarizeDecimals || 3); - - let displayCurrency = (options.displayCurrency || "BTC").toLowerCase(); - - let localCurrency = (options.localCurrency || "USD").toLowerCase(); + else + span( + class=localCurrencyDisplay ? "border-dotted" : false, + title=localCurrencyDisplay ? `${utils.formatCurrencyAmount(val, coinConfig.defaultCurrencyUnit.name.toLowerCase()).simpleVal} BTC` : false, + data-bs-toggle=localCurrencyDisplay ? "tooltip" : false + ) #{ parts.val.toLocaleString() } - - let localCurrencyDisplay = (displayCurrency == "local"); + if (exchangeRates) + - let localCurFormatData = utils.getExchangedCurrencyFormatData(val, localCurrency); - - let parts = utils.formatCurrencyAmount(val, localCurrency); + span.xs-hidden.d-none.d-sm-inline.text-tiny.text-tight-spacing.border-dotted.fw-light.ms-1( + data-bs-toggle="tooltip", + title=`${localCurFormatData.symbol}${localCurFormatData.value}`, + data-bs-html="true" + ) #{ parts.currencyUnit } - //span #{JSON.stringify(parts)} - span.fw-light.me-tiny #{global.currencySymbols[localCurrency]} + else + span.xs-hidden.d-none.d-sm-inline.text-tiny.text-tight-spacing.fw-light.ms-1 #{ parts.currencyUnit } - if (parts.intVal >= summarizeMin) - - let largeNumberData = utils.formatLargeNumberSignificant(parts.intVal, summarizeDecimals >= 0 ? summarizeDecimals : 3); - //span #{JSON.stringify(largeNumberData)} #{parts.intVal} - span.border-dotted(title=`${global.currencySymbols[localCurrency]}${parts.intVal.toLocaleString()}
${utils.formatCurrencyAmount(val, coinConfig.defaultCurrencyUnit.name.toLowerCase()).simpleVal} BTC`, data-bs-toggle="tooltip", data-bs-html="true") - span #{largeNumberData[0]} - span.ms-1 #{largeNumberData[1].textDesc} - - else - span.border-dotted(title=`${utils.formatCurrencyAmount(val, coinConfig.defaultCurrencyUnit.name.toLowerCase()).simpleVal} BTC`, data-bs-toggle="tooltip") #{parts.val} - +mixin _valueDisplayLocal(val, options={}) + - let summarizeMin = options.summarizeMin || Infinity; + - let summarizeDecimals = options.summarizeDecimals || 3; + - let displayCurrency = (options.displayCurrency || "BTC").toLowerCase(); + - let localCurrency = (options.localCurrency || "USD").toLowerCase(); + + - let localCurrencyDisplay = displayCurrency == "local"; + + - let parts = utils.formatCurrencyAmount(val, localCurrency); + + //span #{JSON.stringify(parts)} + span.fw-light.me-tiny #{ global.currencySymbols[localCurrency] } + + if (parts.intVal >= summarizeMin) + - let largeNumberData = utils.formatLargeNumberSignificant(parts.intVal, summarizeDecimals >= 0 ? summarizeDecimals : 3); + //span #{JSON.stringify(largeNumberData)} #{parts.intVal} + span.border-dotted( + title=`${global.currencySymbols[localCurrency]}${parts.intVal.toLocaleString()}
${utils.formatCurrencyAmount(val, coinConfig.defaultCurrencyUnit.name.toLowerCase()).simpleVal} BTC`, + data-bs-toggle="tooltip", + data-bs-html="true" + ) + span #{ largeNumberData[0] } + span.ms-1 #{ largeNumberData[1].textDesc } + + else + span.border-dotted( + title=`${utils.formatCurrencyAmount(val, coinConfig.defaultCurrencyUnit.name.toLowerCase()).simpleVal} BTC`, + data-bs-toggle="tooltip" + ) #{ parts.val.toLocaleString() } mixin valueDisplaySpecial(val, maxDecimals=-1, summarizeAlways=false, summarizeMin=Infinity, summarizeDecimals=-1) - if (maxDecimals == -1 && summarizeAlways == false && summarizeMin == undefined) - +valueDisplay(val) - - else - if (val > 0) - - var localCurrencyDisplay = userSettings.displayCurrency == "local"; - - if (maxDecimals > 0) - - var parts = utils.formatCurrencyAmountWithForcedDecimalPlaces(val, localCurrencyDisplay ? userSettings.localCurrency : userSettings.displayCurrency, maxDecimals); - - else - - var parts = utils.formatCurrencyAmount(val, localCurrencyDisplay ? userSettings.localCurrency : userSettings.displayCurrency); - - //span #{JSON.stringify(parts)} - if (localCurrencyDisplay) - span.me-1 #{global.currencySymbols[userSettings.localCurrency]} - //| #{JSON.stringify(parts)} - - if (summarizeAlways || parts.intVal >= summarizeMin) - //span #{JSON.stringify(parts)} - - var largeNumberData = utils.formatLargeNumberSignificant(parts.intVal, summarizeDecimals >= 0 ? summarizeDecimals : 2); - //span #{JSON.stringify(largeNumberData)} #{parts.intVal} - span(class=(localCurrencyDisplay ? "border-dotted" : false), title=(localCurrencyDisplay ? `${utils.formatCurrencyAmount(val, coinConfig.defaultCurrencyUnit.name.toLowerCase()).simpleVal} BTC` : false), data-bs-toggle=(localCurrencyDisplay ? "tooltip" : false)) #{largeNumberData[0]} #{largeNumberData[1].textDesc} - - else if (maxDecimals == 0) - span(class=(localCurrencyDisplay ? "border-dotted" : false), title=(localCurrencyDisplay ? `${utils.formatCurrencyAmount(val, coinConfig.defaultCurrencyUnit.name.toLowerCase()).simpleVal} BTC` : false), data-bs-toggle=(localCurrencyDisplay ? "tooltip" : false)) #{parts.intVal.toLocaleString()} - - else if (maxDecimals > 0) - span(class=(localCurrencyDisplay ? "border-dotted" : false), title=(localCurrencyDisplay ? `${utils.formatCurrencyAmount(val, coinConfig.defaultCurrencyUnit.name.toLowerCase()).simpleVal} BTC` : false), data-bs-toggle=(localCurrencyDisplay ? "tooltip" : false)) #{parts.val} - - else - span(class=(localCurrencyDisplay ? "border-dotted" : false), title=(localCurrencyDisplay ? `${utils.formatCurrencyAmount(val, coinConfig.defaultCurrencyUnit.name.toLowerCase()).simpleVal} BTC` : false), data-bs-toggle=(localCurrencyDisplay ? "tooltip" : false)) #{parts.val} - if (parts.lessSignificantDigits) - span.text-small.text-muted.ms-1 #{parts.lessSignificantDigits} - - if (userSettings.displayCurrency != "local") - if (exchangeRates) - - var localCurFormatData = utils.getExchangedCurrencyFormatData(val, userSettings.localCurrency); - - span.text-tiny.text-tight-spacing.border-dotted.fw-light.ms-1(data-bs-toggle="tooltip", title=`${localCurFormatData.symbol}${localCurFormatData.value}`, data-bs-html="true") #{parts.currencyUnit} - - else - span.text-tiny.text-tight-spacing.fw-light.ms-1 #{parts.currencyUnit} - - else if (userSettings.displayCurrency == "local") - - else - span 0 - - + if (maxDecimals == -1 && summarizeAlways == false && summarizeMin == undefined) + +valueDisplay(val) + + else + if (val > 0) + - var localCurrencyDisplay = userSettings.displayCurrency == "local"; + + if (maxDecimals > 0) + - var parts = utils.formatCurrencyAmountWithForcedDecimalPlaces(val, localCurrencyDisplay ? userSettings.localCurrency : userSettings.displayCurrency, maxDecimals); + + else + - var parts = utils.formatCurrencyAmount(val, localCurrencyDisplay ? userSettings.localCurrency : userSettings.displayCurrency); + + //span #{JSON.stringify(parts)} + if (localCurrencyDisplay) + span.me-1 #{ global.currencySymbols[userSettings.localCurrency] } + //| #{JSON.stringify(parts)} + + if (summarizeAlways || parts.intVal >= summarizeMin) + //span #{JSON.stringify(parts)} + - var largeNumberData = utils.formatLargeNumberSignificant(parts.intVal, summarizeDecimals >= 0 ? summarizeDecimals : 2); + //span #{JSON.stringify(largeNumberData)} #{parts.intVal} + span( + class=localCurrencyDisplay ? "border-dotted" : false, + title=localCurrencyDisplay ? `${utils.formatCurrencyAmount(val, coinConfig.defaultCurrencyUnit.name.toLowerCase()).simpleVal} BTC` : false, + data-bs-toggle=localCurrencyDisplay ? "tooltip" : false + ) #{ largeNumberData[0] } #{ largeNumberData[1].textDesc } + + else if (maxDecimals == 0) + span( + class=localCurrencyDisplay ? "border-dotted" : false, + title=localCurrencyDisplay ? `${utils.formatCurrencyAmount(val, coinConfig.defaultCurrencyUnit.name.toLowerCase()).simpleVal} BTC` : false, + data-bs-toggle=localCurrencyDisplay ? "tooltip" : false + ) #{ parts.intVal.toLocaleString() } + + else if (maxDecimals > 0) + span( + class=localCurrencyDisplay ? "border-dotted" : false, + title=localCurrencyDisplay ? `${utils.formatCurrencyAmount(val, coinConfig.defaultCurrencyUnit.name.toLowerCase()).simpleVal} BTC` : false, + data-bs-toggle=localCurrencyDisplay ? "tooltip" : false + ) #{ parts.val } + + else + span( + class=localCurrencyDisplay ? "border-dotted" : false, + title=localCurrencyDisplay ? `${utils.formatCurrencyAmount(val, coinConfig.defaultCurrencyUnit.name.toLowerCase()).simpleVal} BTC` : false, + data-bs-toggle=localCurrencyDisplay ? "tooltip" : false + ) #{ parts.val } + if (parts.lessSignificantDigits) + span.text-small.text-muted.ms-1 #{ parts.lessSignificantDigits } + + if (userSettings.displayCurrency != "local") + if (exchangeRates) + - var localCurFormatData = utils.getExchangedCurrencyFormatData(val, userSettings.localCurrency); + + span.text-tiny.text-tight-spacing.border-dotted.fw-light.ms-1( + data-bs-toggle="tooltip", + title=`${localCurFormatData.symbol}${localCurFormatData.value}`, + data-bs-html="true" + ) #{ parts.currencyUnit } + + else + span.text-tiny.text-tight-spacing.fw-light.ms-1 #{ parts.currencyUnit } + + else if (userSettings.displayCurrency == "local") + + else + span 0 mixin progressBar(rawValues, colorClasses, height="15px", textInBar=true) - - let ratioValues = []; - - - let total = new Decimal(0); - each rawValue in rawValues - - total = total.plus(rawValue); - - each rawValue in rawValues - - ratioValues.push(rawValue.dividedBy(total)); - - .progress.mb-2(style=`height: ${height};`) - each ratioValue, valueIndex in ratioValues - .progress-bar.fs-90(class=colorClasses[valueIndex], role="progressbar", style=`width: ${ratioValue.times(100).toDP(0)}%;`, aria-valuenow=`${ratioValue.times(100).toDP(0)}`, aria-valuemin="0", aria-valuemax="100") - if (textInBar) - | #{ratioValue.times(100).toDP(1)}% - - + - let ratioValues = []; + + - let total = new Decimal(0); + each rawValue in rawValues + - total = total.plus(rawValue); + + each rawValue in rawValues + if (rawValue == 0) + - ratioValues.push(rawValue); + else + - ratioValues.push(rawValue.dividedBy(total)); + + .progress.mb-2(style=`height: ${height};`) + each ratioValue, valueIndex in ratioValues + .progress-bar.fs-90( + class=colorClasses[valueIndex], + role="progressbar", + style=`width: ${ratioValue.times(100).toDP(0)}%;`, + aria-valuenow=`${ratioValue.times(100).toDP(0)}`, + aria-valuemin="0", + aria-valuemax="100" + ) + if (textInBar) + | #{ ratioValue.times(100).toDP(1) }% mixin pageTabs(names, bottomGradient=true) - ul.nav.nav-tabs#page-tabs - each name, nameIndex in names - - let normalizedName = name.replaceAll(" ", "-").replaceAll(/[^a-zA-Z\d\s]/g, ""); + ul#page-tabs.nav.nav-tabs + each name, nameIndex in names + - let normalizedName = name.replaceAll(" ", "-").replaceAll(/[^a-zA-Z\d\s]/g, ""); - li.nav-item.page-tab(class=(nameIndex == 0 ? "ms-3" : false)) - a.nav-link(class=(nameIndex == 0 ? "active" : false), data-bs-toggle="tab", data-default-tab=(nameIndex == 0 ? "true" : false) href=`#${normalizedName}`, role="tab") #{name} + li.nav-item.page-tab(class=nameIndex == 0 ? "ms-3" : false) + a.nav-link( + class=nameIndex == 0 ? "active" : false, + data-bs-toggle="tab", + data-default-tab=nameIndex == 0 ? "true" : false, + href=`#${normalizedName}`, + role="tab" + ) #{ name } - if (bottomGradient) - .bg-gradient-body-to-main.pb-4.mb-2 + if (bottomGradient) + .bg-gradient-body-to-main.pb-4.mb-2 - else - .pb-4.mb-2 + else + .pb-4.mb-2 mixin pillTabs(names) - ul.nav.nav-pills.mb-3 - each name, nameIndex in names - li.nav-item - a.nav-link(class=(nameIndex == 0 ? "active" : false), data-bs-toggle="tab", href=`#${name.replaceAll(" ", "-")}`, role="tab") #{name} - + ul.nav.nav-pills.mb-3 + each name, nameIndex in names + li.nav-item + a.nav-link( + class=nameIndex == 0 ? "active" : false, + data-bs-toggle="tab", + href=`#${name.replaceAll(" ", "-")}`, + role="tab" + ) #{ name } mixin pageTab(name, defaultActive=false) - - let normalizedName = name.replaceAll(" ", "-").replaceAll(/[^a-zA-Z\d\s]/g, ""); - - .tab-pane(id=`${normalizedName}`, class=(defaultActive ? "active" : false), role="tabpanel") - block - + - let normalizedName = name.replaceAll(" ", "-").replaceAll(/[^a-zA-Z\d\s]/g, ""); + .tab-pane(id=`${normalizedName}`, class=defaultActive ? "active" : false, role="tabpanel") + block mixin nodePubkey(node_pubkey, style="normal") - - let cutoffs = (style == "compact") ? [8, 10, 16] : [10, 12, config.site.pubkeyMaxDisplayLength]; - - span.d-inline.d-md-none #{utils.ellipsizeMiddle(node_pubkey, cutoffs[0])} - span.d-none.d-lg-inline.d-xxl-none #{utils.ellipsizeMiddle(node_pubkey, cutoffs[1])} - span.d-none.d-xxl-inline #{utils.ellipsizeMiddle(node_pubkey, cutoffs[2])} - + - let cutoffs = style == "compact" ? [8, 10, 16] : [10, 12, config.site.pubkeyMaxDisplayLength]; + span.d-inline.d-md-none #{ utils.ellipsizeMiddle(node_pubkey, cutoffs[0]) } + span.d-none.d-lg-inline.d-xxl-none #{ utils.ellipsizeMiddle(node_pubkey, cutoffs[1]) } + span.d-none.d-xxl-inline #{ utils.ellipsizeMiddle(node_pubkey, cutoffs[2]) } mixin nodeIcon(node_pubkey, node_icon_size) - - let icon_size = "2.75rem"; - - if (node_icon_size == "normal") - - icon_size = "2.75rem"; - - else if (node_icon_size == "compact") - - icon_size = "2rem"; + - let icon_size = "2.75rem"; - else - - icon_size = node_icon_size; + if (node_icon_size == "normal") + - icon_size = "2.75rem"; - //- var hsl = utils.colorHexToHsl(fullNetworkDescription.nodeInfoByPubkey[node_pubkey].node.color); + else if (node_icon_size == "compact") + - icon_size = "2rem"; - - var node_icon_color = "#000000"; - if (fullNetworkDescription && fullNetworkDescription.nodeInfoByPubkey[node_pubkey]) - - var node_icon_color = fullNetworkDescription.nodeInfoByPubkey[node_pubkey].node.color; + else + - icon_size = node_icon_size; - .node-color-circle-wrapper - .node-color-circle-outer(style=("background-color: " + node_icon_color + "; width: " + icon_size + "; height: " + icon_size + ";")) - .node-color-circle-inner(style="background-color: white;") - svg.node-icon(data-jdenticon-value=node_pubkey) + //- var hsl = utils.colorHexToHsl(fullNetworkDescription.nodeInfoByPubkey[node_pubkey].node.color); + - var node_icon_color = "#000000"; + if (fullNetworkDescription && fullNetworkDescription.nodeInfoByPubkey[node_pubkey]) + - var node_icon_color = fullNetworkDescription.nodeInfoByPubkey[node_pubkey].node.color; + .node-color-circle-wrapper + .node-color-circle-outer( + style="background-color: " + node_icon_color + "; width: " + icon_size + "; height: " + icon_size + ";" + ) + .node-color-circle-inner(style="background-color: white") + svg.node-icon(data-jdenticon-value=node_pubkey) mixin nodeColorSwatch(node_color) - - var hsl = utils.colorHexToHsl(node_color); - - if (hsl.s < 0.1) - div(style=("display: inline-block; width: 2em; height: 1.25em; margin-bottom: -4px !important; margin-right: 5px !important; padding: 0; margin: 0; border-radius: 0.2em; border: solid 1px #aaa; background: " + node_color), title=node_color, data-bs-toggle="tooltip") - - else - div(style=("display: inline-block; width: 2em; height: 1.25em; margin-bottom: -4px !important; margin-right: 5px !important; padding: 0; margin: 0; border-radius: 0.2em; background: " + node_color), title=node_color, data-bs-toggle="tooltip") - - + - var hsl = utils.colorHexToHsl(node_color); + - const style = `display: inline-block; width: min-content; height: min-content; margin-right: 5px !important; padding: 0; padding-inline: 0.1em; margin: 0; border-radius: 0.2em; background: ${node_color};`; + + if (hsl.l <= 0.1) + div( + style=style + "border: solid 1px #aaa;", + title=node_color, + data-bs-toggle="tooltip" + ) #{ node_color } + else if (hsl.l >= 0.5) + div(style=style + "color: #000;") #{ node_color } + else + div(style=style, title=node_color, data-bs-toggle="tooltip") #{ node_color } mixin nodeAlias(node_alias, style="normal") - - var cutoffs = (style == "normal") ? [12, 16] : [10, 14]; - - var aliasChars = runes(node_alias); - - span.fst-italic - if (aliasChars.length > 0) - if (aliasChars.length > cutoffs[0]) - if (aliasChars.length > cutoffs[1]) - if (aliasChars.length > config.site.aliasMaxDisplayLength) - span.border-dotted(title=node_alias, data-bs-toggle="tooltip") - span #{aliasChars.slice(0, cutoffs[0]).join("")} - span.d-none.d-lg-inline #{aliasChars.slice(cutoffs[0], cutoffs[1]).join("")} - span.d-none.d-xl-inline #{aliasChars.slice(cutoffs[1], config.site.aliasMaxDisplayLength).join("")} - span … - - else - span #{aliasChars.slice(0, cutoffs[0]).join("")} - span.d-none.d-lg-inline #{aliasChars.slice(cutoffs[0], cutoffs[1]).join("")} - span.d-none.d-xl-inline #{aliasChars.slice(cutoffs[1]).join("")} - else - span #{aliasChars.slice(0, cutoffs[0]).join("")} - span.d-none.d-lg-inline #{aliasChars.slice(cutoffs[0]).join("")} - else - span #{node_alias} - - else - span - - - + - var cutoffs = style == "normal" ? [12, 16] : [10, 14]; + - var aliasChars = runes(node_alias); + + span.fst-italic + if (aliasChars.length > 0) + if (aliasChars.length > cutoffs[0]) + if (aliasChars.length > cutoffs[1]) + if (aliasChars.length > config.site.aliasMaxDisplayLength) + span.border-dotted(title=node_alias, data-bs-toggle="tooltip") + span #{ aliasChars.slice(0, cutoffs[0]).join("") } + span.d-none.d-lg-inline #{ aliasChars.slice(cutoffs[0], cutoffs[1]).join("") } + span.d-none.d-xl-inline #{ aliasChars.slice(cutoffs[1], config.site.aliasMaxDisplayLength).join("") } + span … + + else + span #{ aliasChars.slice(0, cutoffs[0]).join("") } + span.d-none.d-lg-inline #{ aliasChars.slice(cutoffs[0], cutoffs[1]).join("") } + span.d-none.d-xl-inline #{ aliasChars.slice(cutoffs[1]).join("") } + else + span #{ aliasChars.slice(0, cutoffs[0]).join("") } + span.d-none.d-lg-inline #{ aliasChars.slice(cutoffs[0]).join("") } + else + span #{ node_alias } + + else + span - mixin nodeCard(card_node_pubkey, options={}) - - let showIcons = options.icons || true; - - let style = options.style || "normal"; - - if (fullNetworkDescription && fullNetworkDescription.nodeInfoByPubkey[card_node_pubkey]) - - var card_node = {pubkey:card_node_pubkey, alias:fullNetworkDescription.nodeInfoByPubkey[card_node_pubkey].node.alias, color:fullNetworkDescription.nodeInfoByPubkey[card_node_pubkey].node.color}; + - let showIcons = options.icons || true; + - let style = options.style || "normal"; + if (fullNetworkDescription && fullNetworkDescription.nodeInfoByPubkey[card_node_pubkey]) + - var card_node = { pubkey: card_node_pubkey, alias: fullNetworkDescription.nodeInfoByPubkey[card_node_pubkey].node.alias, color: fullNetworkDescription.nodeInfoByPubkey[card_node_pubkey].node.color }; - .d-flex.flex-row - .me-2 - +nodeIcon(card_node_pubkey, style) + .d-flex.flex-row + .me-2 + +nodeIcon(card_node_pubkey, style) - div - if (card_node) - a(href=`/node/${card_node.pubkey}`) - +nodePubkey(card_node.pubkey, style) + div + if (card_node) + a(href=`/node/${card_node.pubkey}`) + +nodePubkey(card_node.pubkey, style) - if (showIcons && utils.isObjectStarred(`node:${card_node.pubkey}`)) - i.fas.fa-star.text-warning.ms-1(title="This is one of your favorite nodes" data-bs-toggle="tooltip") - - br + if (showIcons && utils.isObjectStarred(`node:${card_node.pubkey}`)) + i.fas.fa-star.text-warning.ms-1( + title="This is one of your favorite nodes", + data-bs-toggle="tooltip" + ) - +nodeAlias(card_node.alias, style) + br - if (global.localChannelPeerPubkeys.includes(card_node_pubkey)) - span(title="You have at least one channel with this node", data-bs-toggle="tooltip") - i.fas.fa-exchange-alt.text-success.ms-2 + +nodeAlias(card_node.alias, style) - if (showIcons && card_node.pubkey == lndRpc.internal_pubkey) - span(title="This is your LND Node" data-bs-toggle="tooltip") - i.fa.fa-certificate.ms-2.text-primary + if (global.localChannelPeerPubkeys.includes(card_node_pubkey)) + span( + title="You have at least one channel with this node", + data-bs-toggle="tooltip" + ) + i.fas.fa-exchange-alt.text-success.ms-2 - else - a(href=`/node/${card_node_pubkey}`, title=card_node_pubkey, data-bs-toggle="tooltip") - +nodePubkey(card_node_pubkey, style) + if (showIcons && card_node.pubkey == lndRpc.internal_pubkey) + span(title="This is your LND Node", data-bs-toggle="tooltip") + i.fas.fa-home.fa-sm.text-primary.ms-3 - br + else + span(title=card_node_pubkey, data-bs-toggle="tooltip") + +nodePubkey(card_node_pubkey, style) - span.text-danger.border-dotted(title="Details for this node's public key seem to be unavailable." data-bs-toggle="tooltip") Unknown Node - - - card_node_pubkey = null; - - card_node = null; + br + span.text-danger.border-dotted( + title="Details for this node's public key seem to be unavailable.", + data-bs-toggle="tooltip" + ) Unknown Node + - card_node_pubkey = null; + - card_node = null; mixin pagination(itemCount, limit, offset, baseUrl) - if (itemCount > limit) - - let pageNumber = offset / limit + 1; - - let pageCount = Math.floor(itemCount / limit); - - - if (pageCount * limit < itemCount) { - - pageCount++; - - } - - - let paginationUrlFunction = function(x) { - - return baseUrl + `&limit=${limit}&offset=${((x - 1) * limit)}`; - - } - - .mt-2.mb-0 - - var pageNumbers = []; - - for (var x = 1; x <= pageCount; x++) { - - pageNumbers.push(x); - - } - - nav(aria-label="Page navigation") - ul.pagination.mb-0 - li.page-item(class=(pageNumber == 1 ? "disabled" : false)) - a.page-link(href=(pageNumber == 1 ? "javascript:void(0)" : paginationUrlFunction(pageNumber - 1)), aria-label="Previous") - span(aria-hidden="true") « - - each x, xIndex in pageNumbers - if (x >= (pageNumber - 4) && x <= (pageNumber + 4) || xIndex == 0 || xIndex == (pageNumbers.length - 1)) - li.page-item(class=(x == pageNumber ? "active" : false)) - a.page-link(href=(paginationUrlFunction(x))) #{x} - - if (x == 1 && pageNumber > 6) - li.page-item.disabled - a.page-link(href="javascript:void(0)") ... - - else if (x == (pageCount - 1) && pageNumber < (pageCount - 5)) - li.page-item.disabled - a.page-link(href="javascript:void(0)") ... - - li.page-item(class=(pageNumber == pageCount ? "disabled" : false)) - a.page-link(href=(pageNumber == pageCount ? "javascript:void(0)" : paginationUrlFunction(pageNumber + 1)), aria-label="Next") - span(aria-hidden="true") » - - - + if (itemCount > limit) + - let pageNumber = offset / limit + 1; + - let pageCount = Math.floor(itemCount / limit); + + - if (pageCount * limit < itemCount) { + - pageCount++; + - } + + - let paginationUrlFunction = function(x) { + - return baseUrl + `&limit=${limit}&offset=${(x - 1) * limit}`; + - } + + .mt-2.mb-0 + - var pageNumbers = []; + - for (var x = 1; x <= pageCount; x++) { + - pageNumbers.push(x); + - } + + nav(aria-label="Page navigation") + ul.pagination.mb-0 + li.page-item(class=pageNumber == 1 ? "disabled" : false) + a.page-link( + href=pageNumber == 1 ? "javascript:void(0)" : paginationUrlFunction(pageNumber - 1), + aria-label="Previous" + ) + span(aria-hidden="true") « + + each x, xIndex in pageNumbers + if (x >= (pageNumber - 4) && x <= (pageNumber + 4) || xIndex == 0 || xIndex == (pageNumbers.length - 1)) + li.page-item(class=x == pageNumber ? "active" : false) + a.page-link(href=paginationUrlFunction(x)) #{ x } + + if (x == 1 && pageNumber > 6) + li.page-item.disabled + a.page-link(href="javascript:void(0)") ... + + else if (x == (pageCount - 1) && pageNumber < (pageCount - 5)) + li.page-item.disabled + a.page-link(href="javascript:void(0)") ... + + li.page-item(class=pageNumber == pageCount ? "disabled" : false) + a.page-link( + href=pageNumber == pageCount ? "javascript:void(0)" : paginationUrlFunction(pageNumber + 1), + aria-label="Next" + ) + span(aria-hidden="true") » diff --git a/views/includes/user-message.pug b/views/includes/user-message.pug index 2102a22..6c15be6 100644 --- a/views/includes/user-message.pug +++ b/views/includes/user-message.pug @@ -1,16 +1,25 @@ if (userMessage || userMessageMarkdown) - .position-fixed.top-0.start-50.translate-middle-x.p-3(style="z-index: 1200;") - .toast.align-items-center.text-white.border-0(id="userMessageToast", class=(userMessageType ? `bg-${userMessageType}` : "bg-primary") role="alert", aria-live="assertive", aria-atomic="true") - .d-flex - .toast-body - if (userMessage) - if (userMessage.length > 64) - span.border-dotted(title=userMessage, data-bs-toggle="tooltip") #{utils.ellipsizeMiddle(userMessage, 64)} - else - span #{userMessage} + .position-fixed.top-0.start-50.translate-middle-x.p-3(style="z-index: 1200") + #userMessageToast.toast.align-items-center.text-white.border-0( + class=userMessageType ? `bg-${userMessageType}` : "bg-primary", + role="alert", + aria-live="assertive", + aria-atomic="true" + ) + .d-flex + .toast-body + if (userMessage) + if (userMessage.length > 64) + span.border-dotted(title=userMessage, data-bs-toggle="tooltip") #{ utils.ellipsizeMiddle(userMessage, 64) } + else + span #{ userMessage } - if (userMessageMarkdown) - .user-message-markdown - | !{marked.parse(userMessageMarkdown)} + if (userMessageMarkdown) + .user-message-markdown + | !{ marked.parse(userMessageMarkdown) } - button.btn-close.btn-close-white.me-2.m-auto(type="button", data-bs-dismiss="toast", aria-label="Close") + button.btn-close.btn-close-white.me-2.m-auto( + type="button", + data-bs-dismiss="toast", + aria-label="Close" + ) diff --git a/views/includes/withdraw-funds-modal.pug b/views/includes/withdraw-funds-modal.pug index 7381233..88d305a 100644 --- a/views/includes/withdraw-funds-modal.pug +++ b/views/includes/withdraw-funds-modal.pug @@ -1,118 +1,129 @@ +modal("withdrawFundsModal", "Withdraw Funds") - script. - function withdrawToSingleAddress() { - $("#responseAlertSingle").hide(); - - var data = {}; - data.withdrawType = "single"; - data.address = $("#withdrawAddress").val(); - data.sendAll = $("#sendAllCheckbox").is(':checked'); - data.amountSat = $("#amountSat").val(); - data.speedType = $("#speedTypeValue").val(); - data.speedValue = $("#speedValue").val(); - - console.log("data: " + JSON.stringify(data)); - - $.ajax({ - type: "POST", - url: `/withdraw-funds`, - data: data, - success: function(response) { - if (response.code && response.details) { - $("#responseAlertSingle").removeClass("alert-success").addClass("alert-danger"); - $("#responseAlertSingle").text(response.details); - $("#responseAlertSingle").show(); - - } else { - $("#responseAlertSingle").removeClass("alert-danger").addClass("alert-success"); - $("#responseAlertSingle").text("Success"); - $("#responseAlertSingle").show(); - } - - console.log("response: " + JSON.stringify(response)); - } - }); - - return false; - } - - - +pageTabs(["Single Address", "Multiple Addresses"], false) - - .tab-content - +pageTab("Single Address", true) - - .alert(id="responseAlertSingle" style="display: none;") - - form(onsubmit="return withdrawToSingleAddress();") - .mb-3 - label.form-label(for="withdrawAddress") Withdraw Address - input.form-control(id="withdrawAddress" name="withdrawAddress") - - .input-group.mb-3 - label.form-label(for="amountSat") Amount - .input-group - input.form-control(id="amountSat" name="amountSat") - - .input-group-text sat - - .mb-3 - .form-check - input.form-check-input(type="checkbox", id="sendAllCheckbox") - label.form-check-label(for="sendAllCheckbox") Send all available funds - - .mb-3 - label.form-label(for="speedValue") Speed - - input(id="speedTypeValue" type="hidden" name="speedType" value="target_conf") - - .mb-3 - .form-check - input#customRadioInline1.form-check-input(type='radio' name='speedTypeRadio' value="target_conf" checked="checked") - label.form-check-label(for='customRadioInline1') Try to confirm in - span.border-dotted(for='customRadioInline1' title="LND will compute a fee rate for your on-chain transaction based on the current state of the network. Note that there is no guarantee that your transaction will be confirmed by the network based on what you set here." data-bs-toggle="tooltip") N or fewer blocks - .form-check - input#customRadioInline2.form-check-input(type='radio' name='speedTypeRadio' value="sat_per_byte") - label.form-check-label(for='customRadioInline2') Manual fee (sat/byte) - - input.form-control(id="speedValue" name="speedValue") - small#singleAddressSpeedNote.text-muted Number of blocks to try to confirm within - - - - .alert.alert-danger.my-3 - span Please use caution when withdrawing! Both LNDash and LND itself are beta software. - - button.btn.btn-primary(type="submit") - i.fas.fa-external-link-alt.me-2 - span Withdraw Funds - - +pageTab("Multiple Addresses") - .alert.alert-primary.shadow-sm - span TODO - a(href="https://github.com/janoside/lndash/issues/13" target="_blank") #13 + script. + function withdrawToSingleAddress() { + $("#responseAlertSingle").hide(); + + var data = {}; + data.withdrawType = "single"; + data.address = $("#withdrawAddress").val(); + data.sendAll = $("#sendAllCheckbox").is(":checked"); + data.amountSat = $("#amountSat").val(); + data.speedType = $("#speedTypeValue").val(); + data.speedValue = $("#speedValue").val(); + + console.log("data: " + JSON.stringify(data)); + + $.ajax({ + type: "POST", + url: `/withdraw-funds`, + data: data, + success: function (response) { + if (response.code && response.details) { + $("#responseAlertSingle").removeClass("alert-success").addClass("alert-danger"); + $("#responseAlertSingle").text(response.details); + $("#responseAlertSingle").show(); + } else { + $("#responseAlertSingle").removeClass("alert-danger").addClass("alert-success"); + $("#responseAlertSingle").text("Success"); + $("#responseAlertSingle").show(); + } + + console.log("response: " + JSON.stringify(response)); + }, + }); + + return false; + } + + +pageTabs(["Single Address", "Multiple Addresses"], false) + + .tab-content + +pageTab("Single Address", true) + #responseAlertSingle.alert(style="display: none") + + form(onsubmit="return withdrawToSingleAddress();") + .mb-3 + label.form-label(for="withdrawAddress") Withdraw Address + input#withdrawAddress.form-control(name="withdrawAddress") + + .input-group.mb-3 + label.form-label(for="amountSat") Amount + .input-group + input#amountSat.form-control(name="amountSat") + + .input-group-text sat + + .mb-3 + .form-check + input#sendAllCheckbox.form-check-input(type="checkbox") + label.form-check-label(for="sendAllCheckbox") Send all available funds + + .mb-3 + label.form-label(for="speedValue") Speed + + input#speedTypeValue( + type="hidden", + name="speedType", + value="target_conf" + ) + + .mb-3 + .form-check + input#customRadioInline1.form-check-input( + type="radio", + name="speedTypeRadio", + value="target_conf", + checked="checked" + ) + label.form-check-label(for="customRadioInline1") Try to confirm in + | + span.border-dotted( + for="customRadioInline1", + title="LND will compute a fee rate for your on-chain transaction based on the current state of the network. Note that there is no guarantee that your transaction will be confirmed by the network based on what you set here.", + data-bs-toggle="tooltip" + ) N or fewer blocks + .form-check + input#customRadioInline2.form-check-input( + type="radio", + name="speedTypeRadio", + value="sat_per_byte" + ) + label.form-check-label(for="customRadioInline2") Manual fee (sat/byte) + + input#speedValue.form-control(name="speedValue") + small#singleAddressSpeedNote.text-muted Number of blocks to try to confirm within + + .alert.alert-danger.my-3 + span Please use caution when withdrawing! Both LNDash and LND itself are beta software. + + button.btn.btn-primary(type="submit") + i.fas.fa-external-link-alt.me-2 + span Withdraw Funds + + +pageTab("Multiple Addresses") + .alert.alert-primary.shadow-sm + span TODO + a(href="https://github.com/janoside/lndash/issues/13", target="_blank") #13 block endOfBody - script. - $(document).ready(function() { - $('#sendAllCheckbox').on('change', event => { - if ($(event.target).is(':checked')) { - $("#amountSat").prop("disabled", true); - $("#amountSat").val(""); - - } else { - $("#amountSat").prop("disabled", false); - } - }); - - $(document).on('change', 'input:radio[name="speedTypeRadio"]', function(event) { - $("#speedTypeValue").val($(event.target).val()); - - if ($(event.target).val() == "target_conf") { - $("#singleAddressSpeedNote").text("Number of blocks to try to confirm within"); - - } else if ($(event.target).val() == "sat_per_byte") { - $("#singleAddressSpeedNote").text("Fee rate, sat / byte"); - } - }); - }); + script. + $(document).ready(function () { + $("#sendAllCheckbox").on("change", (event) => { + if ($(event.target).is(":checked")) { + $("#amountSat").prop("disabled", true); + $("#amountSat").val(""); + } else { + $("#amountSat").prop("disabled", false); + } + }); + + $(document).on("change", 'input:radio[name="speedTypeRadio"]', function (event) { + $("#speedTypeValue").val($(event.target).val()); + + if ($(event.target).val() == "target_conf") { + $("#singleAddressSpeedNote").text("Number of blocks to try to confirm within"); + } else if ($(event.target).val() == "sat_per_byte") { + $("#singleAddressSpeedNote").text("Fee rate, sat / byte"); + } + }); + }); diff --git a/views/index.pug b/views/index.pug index 8b8711a..f629f96 100644 --- a/views/index.pug +++ b/views/index.pug @@ -1,361 +1,373 @@ extends layout block headContent - title Home - LNDash + title Home - LNDash block breadcrumb - li.breadcrumb-item Home + li.breadcrumb-item Home block content - if (fullNetworkDescription) - - +pageTitle("Home") - - - if (session.hideHomepageBanner != "true") - if (global.newAppVersion) - .alert.alert-primary.alert-dismissible.shadow-sm.mb-3 - span You're running LNDash v#{global.appVersion}. A newer version is available: - a(href="https://www.npmjs.com/package/lndash") LNDash v#{global.newAppVersion} - - .alert.alert-primary.alert-dismissible.shadow-sm.mb-3(role="alert") - p - span.fw-bold LNDash - span is - a(href="https://github.com/janoside/lndash" target="_blank") open-source - span and easy to set up. It communicates with your - a(href="https://github.com/lightningnetwork/lnd" target="_blank") LND - span node via gRPC. See the - a(href="https://github.com/janoside/lndash" target="_blank") project description - span for a list of features and instructions for running. - - if (global.sourcecodeProjectMetadata) - .mt-2.mb-2 - a.btn.btn-primary.me-3.mb-1(href="https://github.com/janoside/lndash") - i.fas.fa-star.me-2 - span.me-2 Star - span.badge.bg-white.text-dark #{global.sourcecodeProjectMetadata.stargazers_count} - - a.btn.btn-primary.me-3.mb-1(href="https://github.com/janoside/lndash/fork") - i.fas.fa-code-branch.me-2 - span.me-2 Fork - span.badge.bg-white.text-dark #{global.sourcecodeProjectMetadata.forks_count} - - a.btn.btn-primary.btn.btn-primary.mb-1(href=config.donations.btcpayserver.host target="_blank") - i(class="fas fa-heart me-2") - span Donate - - div - a.me-2(href="https://www.npmjs.com/package/lndash" rel="nofollow" target="_blank") - img(src="https://camo.githubusercontent.com/dca2e8f947987c994c021fedf0da14f740220773/68747470733a2f2f696d672e736869656c64732e696f2f6e706d2f762f6c6e642d61646d696e2e7376673f7374796c653d666c6174" alt="npm version" data-canonical-src="https://img.shields.io/npm/v/lndash.svg?style=flat" style="max-width:100%;") - - a(href="https://npmcharts.com/compare/lndash?minimal=true" rel="nofollow" target="_blank") - img(src="https://camo.githubusercontent.com/015986f601eae0e28a983728259ccb96ce042511/687474703a2f2f696d672e736869656c64732e696f2f6e706d2f646d2f6c6e642d61646d696e2e7376673f7374796c653d666c6174" alt="NPM downloads" data-canonical-src="http://img.shields.io/npm/dm/lndash.svg?style=flat" style="max-width:100%;") - - - a.btn-close(href="/changeSetting?name=hideHomepageBanner&value=true" aria-label="Close" style="text-decoration: none;") - - - - var totalCapacity = 0; - each item in fullNetworkDescription.channels.sortedByLastUpdate - - totalCapacity = totalCapacity + parseInt(item.capacity); - - - var networkSummaryItemCount = 3; - - var networkSummaryColumnClass = "col-md-4"; - if (networkSummaryItemCount > 6) - - networkSummaryColumnClass = "col-md-3"; - - - +sectionTitle("My Node", false, null, null, null, "This card shows the basic details of your node, and the format is used throughout this app. The image is derived from the node's public key and the color for the outer ring is the node's 'color' property. The the public key and the alias are also displayed.") - - .d-flex.mt-3.lead.mb-2 - +card - +nodeCard(lndRpc.internal_pubkey) - - +contentSection("Node Summary") - if (false) - div(class="row") - .summary-split-table-label Public Key - .summary-split-table-content - a(href=`/node/${lndRpc.internal_pubkey}`) #{lndRpc.internal_pubkey} - - - - - +summaryRow(2) - +summaryItem("On-Chain vs Lightning") - if (walletBalance) - - - if (totalLocalBalance != null) - .d-flex.justify-content-between.fs-90.mb-3 - .text-start - .mb-2 - i.fas.fa-circle.text-success.me-2 - span.border-dotted(title="Confirmed, on-chain wallet balance.", data-bs-toggle="tooltip") On-Chain - - if (walletBalance.unconfirmed_balance > 0) - span.text-muted.fs-80.ms-1 - | ( - span.text-info.border-dotted(title="Unconfirmed wallet balance", data-bs-toggle="tooltip") unconfirmed - | ) - - span.badge.text-bg-success.fs-80 - +btcValue(walletBalance.confirmed_balance) - - if (walletBalance.unconfirmed_balance > 0) - span.badge.text-bg-info.fs-80.ms-2 - +btcValue(walletBalance.unconfirmed_balance) - - .text-end - .mb-2 - i.fas.fa-circle.text-warning.me-2 - span.border-dotted(title="Total (spendable/local) balance of all of your channels.", data-bs-toggle="tooltip") Lightning - - span.badge.text-bg-warning.fs-80 - +btcValue(totalLocalBalance) - - - - +progressBar([new Decimal(walletBalance.confirmed_balance), new Decimal(walletBalance.unconfirmed_balance), new Decimal(totalLocalBalance)], ["text-bg-success", "text-bg-info", "text-bg-warning"]) - - else - span - - - - if (false) - span.badge.text-bg-success(title="Confirmed balance", data-bs-toggle="tooltip") - i.fas.fa-check.me-2 - +btcValue(walletBalance.confirmed_balance) - span.text-muted (none) - - - if (walletBalance.unconfirmed_balance > 0) - div - span.badge.text-bg-warning(title="Unconfirmed balance", data-bs-toggle="tooltip") - i.fas.fa-clock.me-2 - +btcValue(walletBalance.unconfirmed_balance) - - else - span.text-warning.border-dotted(title="Error loading wallet balance. See Error Log for details." data-bs-toggle="tooltip") Unknown - - - +summaryItem("Lightning: Spendable vs Receivable") - if (totalLocalBalance != null) - .d-flex.justify-content-between.fs-90.mb-2 - .text-start - i.fas.fa-circle.text-primary.me-2 - span.border-dotted(title="Local, spendable balance across all of your channels.", data-bs-toggle="tooltip") Spendable - - .text-end - i.fas.fa-circle.text-info.me-2 - span.border-dotted(title="Total receivable balance on the remote side of all of your channels.", data-bs-toggle="tooltip") Receivable - - - .d-flex.justify-content-between.mb-3 - .text-start - span.badge.text-bg-primary.fs-80 - +btcValue(totalLocalBalance) - - .text-end - span.badge.text-bg-info.fs-80 - +btcValue(totalRemoteBalance) - - - +progressBar([totalLocalBalance, totalRemoteBalance], ["text-bg-primary", "text-bg-info"]) - - - else - span - - - - - hr.mt-4.mb-3 - - +summaryRow("Channel Details") - - +summaryItem("Channels") - if (getInfo) - .d-flex.justify-content-center - .d-flex - .me-4 - +pillBadgeSuccess("Active") - span.ms-1 #{parseInt(getInfo.num_active_channels).toLocaleString()} - - if (parseInt(getInfo.num_pending_channels) > 0) - div(class=(parseInt(getInfo.num_inactive_channels) > 0 ? "me-4" : false)) - +pillBadgeWarning("Pending") - span.ms-1 #{parseInt(getInfo.num_pending_channels).toLocaleString()} - - if (parseInt(getInfo.num_inactive_channels) > 0) - div - +pillBadgeWarning("Inactive") - span.ms-1 #{parseInt(getInfo.num_inactive_channels).toLocaleString()} - - - - - else - span.text-warning.border-dotted(title="Error loading channel info. See Error Log for details." data-bs-toggle="tooltip") Unknown - - - - hr.my-4 - - - - +summaryRow(3) - +summaryItem("LND Version") - if (getInfo) - - var versionParts = getInfo.version.split(" "); - if (versionParts.length == 2 && versionParts[1].endsWith(versionParts[0])) - | #{versionParts[0]} - - else - each versionPart in versionParts - span #{versionPart} - br - else - | Unknown - - +summaryItem(`Chain${getInfo.chains.length > 1 ? "s" : ""}`) - each chain in getInfo.chains - span #{chain.chain} (#{chain.network}) - br - - - +summaryItem("Current Block", "This is the latest Bitcoin block that your node is aware of.") - if (config.blockExplorerUrl) - a(href=(config.blockExplorerUrl + "/block/" + getInfo.block_hash), target="_blank") ##{getInfo.block_height.toLocaleString()} - - span.ms-2 - if (getInfo.synced_to_chain) - span(title="Synchronized", data-bs-toggle="tooltip") - i.fas.fa-circle-check.text-success - - else - span(title="Not synchronized", data-bs-toggle="tooltip") - i.fas.fa-clock.text-warning - - else - span #{getInfo.block_hash} - br - span(class="text-muted") (#{getInfo.block_height.toLocaleString()}) - - - - - if (false) - div(class="col-md-6") - div(class="row") - .summary-split-table-label URIs - .summary-split-table-content - each uri, index in getInfo.uris - if (getInfo.uris.length > 1) - span #{index + 1}: #{uri} - else - span #{uri} - - - - - - - - - - - - - // "This summary is for the public network from the point of view of your current node." - +contentSection("Public Network Summary") - +summaryRow(4) - +summaryItem("Total Capacity") - +btcValue(totalCapacity) - - +summaryItem("Nodes") - span #{fullNetworkDescription.nodes.sortedByLastUpdate.length.toLocaleString()} - - +summaryItem("Channels") - span #{fullNetworkDescription.channels.sortedByLastUpdate.length.toLocaleString()} - - +summaryItem("Avg Channel Capacity") - - var currencyValue = new Decimal(totalCapacity).dividedBy(fullNetworkDescription.channels.sortedByLastUpdate.length); - +btcValue(currencyValue) - - hr.my-4 - - - +summaryRow(2) - +summaryItem("Out Degree Stats") - span #{new Decimal(networkInfo.avg_out_degree).toDP(2)} - span.text-muted.fs-75.ms-1 (avg) - span.text-muted.mx-2 / - span #{new Decimal(networkInfo.max_out_degree).toDP(2)} - span.text-muted.fs-75.ms-1 (max) - - +summaryItem("Channel Sizes", "Min / max allowed channel size.", "sat") - +btcValue(networkInfo.min_channel_size) - - span.text-muted.fs-75.ms-1 (min) - span.text-muted.mx-2 / - - +btcValue(networkInfo.max_channel_size) - - span.text-muted.fs-75.ms-1 (max) - - - - - if (false) - hr - - pre - code.json #{JSON.stringify(networkInfo, null, 4)} - - - if (false) - div(class="card mb-4 shadow-sm") - .card-header - div(class="row") - div(class="col") - h2.h6.mb-0 #{fullNetworkDescription.nodes.sortedByLastUpdate.length.toLocaleString()} - if (fullNetworkDescription.nodes.sortedByLastUpdate.length == 1) - span Node - else - span Nodes - - div(class="col") - span(style="float: right;") - a(href="/nodes") - span Browse Nodes » - - .card-body - .row - .col-md-4 - h3.h4 Recently Updated - - var nodeInfos = fullNetworkDescription.nodes.sortedByLastUpdate.slice(0, 5); - each nodeInfo in nodeInfos - .mb-3 - +nodeCard(nodeInfo.node.pub_key) - - .col-md-4 - h3.h4 Top Channel Count - - var nodeInfos = fullNetworkDescription.nodes.sortedByChannelCount.slice(0, 5); - each nodeInfo in nodeInfos - .mb-3 - +nodeCard(nodeInfo.node.pub_key) - - .col-md-4 - h3.h4 Top Capacity - - var nodeInfos = fullNetworkDescription.nodes.sortedByTotalCapacity.slice(0, 5); - each nodeInfo in nodeInfos - .mb-3 - +nodeCard(nodeInfo.node.pub_key) - - - - else - .alert.alert-primary No active LND connection. If your app was just started, it may still be connecting. Otherwise, check your RPC connection and your logs for errors. - .mt-2 - a(href="/manage-nodes") Manage LND Nodes... + if (fullNetworkDescription) + +pageTitle("Home") + + if (session.hideHomepageBanner != "true") + if (global.newAppVersion) + .alert.alert-primary.alert-dismissible.shadow-sm.mb-3 + span. + You're running LNDash v#{ global.appVersion }. A newer version is available: + #[a(href="https://www.npmjs.com/package/ln-dash") LNDash v#{ global.newAppVersion }] + + .alert.alert-primary.alert-dismissible.shadow-sm.mb-3(role="alert") + p. + #[span.fw-bold LNDash] + is + #[a(href="https://github.com/janoside/lndash", target="_blank") open-source] + and easy to set up. It communicates with your + #[a(href="https://github.com/lightningnetwork/lnd", target="_blank") LND] + node via gRPC. See the + #[a(href="https://github.com/janoside/lndash", target="_blank") project description] + for a list of features and instructions for running. + + if (global.sourcecodeProjectMetadata) + .mt-2.mb-2 + a.btn.btn-primary.me-3.mb-1( + href="https://github.com/janoside/lndash" + ) + i.fas.fa-star.me-2 + span.me-2 Star + span.badge.bg-white.text-dark #{ global.sourcecodeProjectMetadata.stargazers_count } + + a.btn.btn-primary.me-3.mb-1( + href="https://github.com/janoside/lndash/fork" + ) + i.fas.fa-code-branch.me-2 + span.me-2 Fork + span.badge.bg-white.text-dark #{ global.sourcecodeProjectMetadata.forks_count } + + a.btn.btn-primary.btn.btn-primary.mb-1( + href=config.donations.btcpayserver.host, + target="_blank" + ) + i.fas.fa-heart.me-2 + span Donate + + div + a.me-2( + href="https://www.npmjs.com/package/ln-dash", + rel="nofollow", + target="_blank" + ) + img( + src="https://img.shields.io/npm/v/ln-dash.svg?style=flat", + alt="npm version", + data-canonical-src="https://img.shields.io/npm/v/ln-dash.svg?style=flat", + style="max-width: 100%" + ) + + a( + href="https://npmcharts.com/compare/ln-dash?minimal=true", + rel="nofollow", + target="_blank" + ) + img( + src="https://img.shields.io/npm/dm/ln-dash.svg?style=flat", + alt="NPM downloads", + data-canonical-src="https://img.shields.io/npm/dm/ln-dash.svg?style=flat", + style="max-width: 100%" + ) + + a.btn-close( + href="/changeSetting?name=hideHomepageBanner&value=true", + aria-label="Close", + style="text-decoration: none" + ) + + - var totalCapacity = 0; + each item in fullNetworkDescription.channels.sortedByLastUpdate + - totalCapacity = totalCapacity + parseInt(item.capacity); + + - var networkSummaryItemCount = 3; + - var networkSummaryColumnClass = "col-md-4"; + if (networkSummaryItemCount > 6) + - networkSummaryColumnClass = "col-md-3"; + + +sectionTitle("My Node", false, null, null, null, "This card shows the basic details of your node, and the format is used throughout this app. The image is derived from the node's public key and the color for the outer ring is the node's 'color' property. the public key and the alias are also displayed.") + + .d-flex.mt-3.lead.mb-2 + +card + +nodeCard(lndRpc.internal_pubkey) + + +contentSection("Node Summary") + if (false) + .row + .summary-split-table-label Public Key + .summary-split-table-content + a(href=`/node/${lndRpc.internal_pubkey}`) #{ lndRpc.internal_pubkey } + + +summaryRow(2) + +summaryItem("On-Chain vs Lightning") + if (walletBalance) + if (totalLocalBalance != null) + .d-flex.justify-content-between.fs-90.mb-3 + .text-start + .mb-2 + i.fas.fa-circle.text-success.me-2 + span.border-dotted( + title="Confirmed, on-chain wallet balance.", + data-bs-toggle="tooltip" + ) On-Chain + + if (walletBalance.unconfirmed_balance > 0) + span.text-muted.fs-80.ms-1 + | ( + span.text-info.border-dotted( + title="Unconfirmed wallet balance", + data-bs-toggle="tooltip" + ) unconfirmed + | ) + + span.badge.text-bg-success.fs-80 + +btcValue(walletBalance.confirmed_balance) + + if (walletBalance.unconfirmed_balance > 0) + span.badge.text-bg-info.fs-80.ms-2 + +btcValue(walletBalance.unconfirmed_balance) + + .text-end + .mb-2 + i.fas.fa-circle.text-warning.me-2 + span.border-dotted( + title="Total (spendable/local) balance of all of your channels.", + data-bs-toggle="tooltip" + ) Lightning + + span.badge.text-bg-warning.fs-80 + +btcValue(totalLocalBalance) + + +progressBar([new Decimal(walletBalance.confirmed_balance), new Decimal(walletBalance.unconfirmed_balance), new Decimal(totalLocalBalance)], ["text-bg-success", "text-bg-info", "text-bg-warning"]) + + else + span - + + if (false) + span.badge.text-bg-success( + title="Confirmed balance", + data-bs-toggle="tooltip" + ) + i.fas.fa-check.me-2 + +btcValue(walletBalance.confirmed_balance) + span.text-muted (none) + + if (walletBalance.unconfirmed_balance > 0) + div + span.badge.text-bg-warning( + title="Unconfirmed balance", + data-bs-toggle="tooltip" + ) + i.fas.fa-clock.me-2 + +btcValue(walletBalance.unconfirmed_balance) + + else + span.text-warning.border-dotted( + title="Error loading wallet balance. See Error Log for details.", + data-bs-toggle="tooltip" + ) Unknown + + +summaryItem("Lightning: Spendable vs Receivable") + if (totalLocalBalance != null) + .d-flex.justify-content-between.fs-90.mb-2 + .text-start + i.fas.fa-circle.text-primary.me-2 + span.border-dotted( + title="Local, spendable balance across all of your channels.", + data-bs-toggle="tooltip" + ) Spendable + + .text-end + i.fas.fa-circle.text-info.me-2 + span.border-dotted( + title="Total receivable balance on the remote side of all of your channels.", + data-bs-toggle="tooltip" + ) Receivable + + .d-flex.justify-content-between.mb-3 + .text-start + span.badge.text-bg-primary.fs-80 + +btcValue(totalLocalBalance) + + .text-end + span.badge.text-bg-info.fs-80 + +btcValue(totalRemoteBalance) + + +progressBar([totalLocalBalance, totalRemoteBalance], ["text-bg-primary", "text-bg-info"]) + + else + span - + + hr.mt-4.mb-3 + + +summaryRow("Channel Details") + +summaryItem("Channels") + if (getInfo) + .d-flex.justify-content-center + .d-flex + .me-4 + +pillBadgeSuccess("Active") + span.ms-1 #{ parseInt(getInfo.num_active_channels).toLocaleString() } + + if (parseInt(getInfo.num_pending_channels) > 0) + div(class=parseInt(getInfo.num_inactive_channels) > 0 ? "me-4" : false) + +pillBadgeWarning("Pending") + span.ms-1 #{ parseInt(getInfo.num_pending_channels).toLocaleString() } + + if (parseInt(getInfo.num_inactive_channels) > 0) + div + +pillBadgeWarning("Inactive") + span.ms-1 #{ parseInt(getInfo.num_inactive_channels).toLocaleString() } + + else + span.text-warning.border-dotted( + title="Error loading channel info. See Error Log for details.", + data-bs-toggle="tooltip" + ) Unknown + + hr.my-4 + + +summaryRow(3) + +summaryItem("LND Version") + if (getInfo) + - var versionParts = getInfo.version.split(" "); + if (versionParts.length == 2 && versionParts[1].endsWith(versionParts[0])) + | #{ versionParts[0] } + + else + each versionPart in versionParts + span #{ versionPart } + br + else + | Unknown + + +summaryItem(`Chain${getInfo.chains.length > 1 ? "s" : ""}`) + each chain in getInfo.chains + span #{ chain.chain } (#{ chain.network }) + br + + +summaryItem("Current Block", "This is the latest Bitcoin block that your node is aware of.") + if (config.blockExplorerUrl) + a( + href=config.blockExplorerUrl + "/block/" + getInfo.block_hash, + target="_blank" + ) ##{ getInfo.block_height.toLocaleString() } + + span.ms-2 + if (getInfo.synced_to_chain) + span(title="Synchronized", data-bs-toggle="tooltip") + i.fas.fa-circle-check.text-success + + else + span(title="Not synchronized", data-bs-toggle="tooltip") + i.fas.fa-clock.text-warning + + else + span #{ getInfo.block_hash } + br + span.text-muted (#{ getInfo.block_height.toLocaleString() }) + + if (false) + .col-md-6 + .row + .summary-split-table-label URIs + .summary-split-table-content + each uri, index in getInfo.uris + if (getInfo.uris.length > 1) + span #{ index + 1 }: #{ uri } + else + span #{ uri } + + // "This summary is for the public network from the point of view of your current node." + +contentSection("Public Network Summary") + +summaryRow(4) + +summaryItem("Total Capacity") + +btcValue(totalCapacity) + + +summaryItem("Nodes") + span #{ fullNetworkDescription.nodes.sortedByLastUpdate.length.toLocaleString() } + + +summaryItem("Channels") + span #{ fullNetworkDescription.channels.sortedByLastUpdate.length.toLocaleString() } + + +summaryItem("Avg Channel Capacity") + - let currencyValue = 0; + if (fullNetworkDescription.channels.sortedByLastUpdate.length) + - currencyValue = new Decimal(totalCapacity).dividedBy(fullNetworkDescription.channels.sortedByLastUpdate.length); + +btcValue(currencyValue) + + hr.my-4 + + +summaryRow(2) + +summaryItem("Out Degree Stats") + span #{ new Decimal(networkInfo.avg_out_degree).toDP(2) } + span.text-muted.fs-75.ms-1 (avg) + span.text-muted.mx-2 / + span #{ new Decimal(networkInfo.max_out_degree).toDP(2) } + span.text-muted.fs-75.ms-1 (max) + + +summaryItem("Channel Sizes", "Min / max allowed channel size.", "sat") + +btcValue(networkInfo.min_channel_size) + + span.text-muted.fs-75.ms-1 (min) + span.text-muted.mx-2 / + + +btcValue(networkInfo.max_channel_size) + + span.text-muted.fs-75.ms-1 (max) + + if (false) + hr + + pre + code.json #{ JSON.stringify(networkInfo, null, 4) } + + if (false) + .card.mb-4.shadow-sm + .card-header + .row + .col + h2.h6.mb-0 #{ fullNetworkDescription.nodes.sortedByLastUpdate.length.toLocaleString() } + if (fullNetworkDescription.nodes.sortedByLastUpdate.length == 1) + span Node + else + span Nodes + + .col + span(style="float: right") + a(href="/nodes") + span Browse Nodes » + + .card-body + .row + .col-md-4 + h3.h4 Recently Updated + - var nodeInfos = fullNetworkDescription.nodes.sortedByLastUpdate.slice(0, 5); + each nodeInfo in nodeInfos + .mb-3 + +nodeCard(nodeInfo.node.pub_key) + + .col-md-4 + h3.h4 Top Channel Count + - var nodeInfos = fullNetworkDescription.nodes.sortedByChannelCount.slice(0, 5); + each nodeInfo in nodeInfos + .mb-3 + +nodeCard(nodeInfo.node.pub_key) + + .col-md-4 + h3.h4 Top Capacity + - var nodeInfos = fullNetworkDescription.nodes.sortedByTotalCapacity.slice(0, 5); + each nodeInfo in nodeInfos + .mb-3 + +nodeCard(nodeInfo.node.pub_key) + + else + .alert.alert-primary No active LND connection. If your app was just started, it may still be connecting. Otherwise, check your RPC connection and your logs for errors. + .mt-2 + a(href="/manage-nodes") Manage LND Nodes... diff --git a/views/invoices.pug b/views/invoices.pug index 2837f76..0b92bf6 100644 --- a/views/invoices.pug +++ b/views/invoices.pug @@ -1,184 +1,189 @@ extends layout block headContent - title Invoices + title Invoices block breadcrumb - li.breadcrumb-item - a(href='/') Home - li.breadcrumb-item Lightning Payments - li.breadcrumb-item Invoices + li.breadcrumb-item + a(href="/") Home + li.breadcrumb-item Lightning Payments + li.breadcrumb-item Invoices block content + if (!session.admin) + +pageTitle("Invoices") - if (!session.admin) - +pageTitle("Invoices") + - var loginRequiredNote = "display details about this node's invoices."; + include includes/login-required-alert.pug + else + +pageTitle(`${invoiceCount.toLocaleString()} Invoice${(invoiceCount == 1) ? "" : "s"}`) - - var loginRequiredNote = "display details about this node's invoices."; - include includes/login-required-alert.pug + .text-start.mb-2 + a.btn.btn-sm.btn-primary(href="/create-invoice") + i.fas.fa-asterisk.me-2 + span Create Invoice - else + +card + +filterList + +filterItem + - var sortOptions = [["Date", "created-desc"], ["Value", "value-desc"]]; - +pageTitle(`${invoiceCount.toLocaleString()} Invoice${(invoiceCount == 1) ? "" : "s"}`) - - .text-start.mb-2 - a.btn.btn-sm.btn-primary(href="/create-invoice") - i.fas.fa-asterisk.me-2 - span Create Invoice - + +filterBtnGroup("Sort", null, sortOptions, `/invoices?settled=${settled}&created=${created}&limit=${limit}`, "sort", sort) - + +filterItem + - var statusFilterOptions = [["Settled", "settled"], ["Unsettled", "unsettled"], ["All", "all"]]; - +card - +filterList - +filterItem - - var sortOptions = [["Date", "created-desc"], ["Value", "value-desc"]]; + +filterBtnGroup("Status", null, statusFilterOptions, `/invoices?sort=${sort}&created=${created}&limit=${limit}`, "settled", settled) - +filterBtnGroup("Sort", null, sortOptions, `/invoices?settled=${settled}&created=${created}&limit=${limit}`, "sort", sort) + +filterItem + - var createdFilterOptions = [["1h", "60-min"], ["24h", "24-hr"], ["7d", "7-day"], ["30d", "30-day"], ["All", "all"]]; + +filterBtnGroup("Time", null, createdFilterOptions, `/invoices?sort=${sort}&settled=${settled}&limit=${limit}`, "created", created) - +filterItem - - var statusFilterOptions = [["Settled", "settled"], ["Unsettled", "unsettled"], ["All", "all"]]; + +filterItem(true) + - var pageSizeOptions = [["20", "20"], ["50", "50"], ["100", "100"]]; - +filterBtnGroup("Status", null, statusFilterOptions, `/invoices?sort=${sort}&created=${created}&limit=${limit}`, "settled", settled) + +filterBtnGroup("Page Size", null, pageSizeOptions, `/invoices?sort=${sort}&settled=${settled}&created=${created}`, "limit", limit) - +filterItem - - var createdFilterOptions = [["1h", "60-min"], ["24h", "24-hr"], ["7d", "7-day"], ["30d", "30-day"], ["All", "all"]]; + hr.my-3 - +filterBtnGroup("Time", null, createdFilterOptions, `/invoices?sort=${sort}&settled=${settled}&limit=${limit}`, "created", created) + div + if (allFilteredInvoices.length > limit) + span. + Showing + #[span.fw-bold ##{ (offset + 1).toLocaleString() } - #{ Math.min(offset + limit, allFilteredInvoices.length).toLocaleString() }] + of + #[span.fw-bold #{ allFilteredInvoices.length.toLocaleString() }] - +filterItem(true) - - var pageSizeOptions = [["20", "20"], ["50", "50"], ["100", "100"]]; + if (allInvoices.length > allFilteredInvoices.length) + | filtered - +filterBtnGroup("Page Size", null, pageSizeOptions, `/invoices?sort=${sort}&settled=${settled}&created=${created}`, "limit", limit) + | + | invoice + if (allFilteredInvoices.length != 1) + | s - hr.my-3 + else if (allFilteredInvoices.length > 0) + span. + Showing + #[span.fw-bold #{ allFilteredInvoices.length.toLocaleString() }] - div - if (allFilteredInvoices.length > limit) - span Showing - span.fw-bold ##{(offset + 1).toLocaleString()} - #{Math.min(offset + limit, allFilteredInvoices.length).toLocaleString()} - span of - span.fw-bold #{allFilteredInvoices.length.toLocaleString()} - if (allInvoices.length > allFilteredInvoices.length) - span filtered - span invoice - if (allFilteredInvoices.length != 1) - span s + if (allInvoices.length > allFilteredInvoices.length) + | filtered - else if (allFilteredInvoices.length > 0) - span Showing - span.fw-bold #{allFilteredInvoices.length.toLocaleString()} - if (allInvoices.length > allFilteredInvoices.length) - span filtered + | invoice + if (allFilteredInvoices.length > 1) + | s + else + .alert.alert-warning.shadow-sm.mb-0 No matching invoices - span invoice - if (allFilteredInvoices.length > 1) - span s - else - .alert.alert-warning.shadow-sm.mb-0 No matching invoices + +pagination(allFilteredInvoices.length, limit, offset, paginationBaseUrl) + if (true) + if (allFilteredInvoices.length > 0) + each invoice, invoice_index in pagedFilteredInvoices + include includes/invoice-details-modal.pug - +pagination(allFilteredInvoices.length, limit, offset, paginationBaseUrl) + .table-responsive + table.table.table-striped + thead + tr + th.text-end.fw-light # + th.fit Status + th.text-end.fit Value + th Description - if (true) - if (allFilteredInvoices.length > 0) - each invoice, invoice_index in pagedFilteredInvoices - include includes/invoice-details-modal.pug - - .table-responsive - table.table.table-striped - thead - tr - th.text-end.fw-light # - th.fit Status + th Features - th.text-end.fit Value + th Date - th Description + if (false) + th + span.border-dotted( + title="Whether a payment has been recieved for the invoice", + data-bs-toggle="tooltip" + ) Settled - th Features - - th Date - - if (false) - th - span.border-dotted(title="Whether a payment has been recieved for the invoice" data-bs-toggle="tooltip") Settled + th.text-end Raw - th.text-end Raw - - tbody - each invoice, invoice_index in pagedFilteredInvoices - tr.word-wrap - th.text-end.fw-light #{(sort == "desc" ? (invoiceCount - invoice_index) : (offset + invoice_index + 1)).toLocaleString()} + tbody + each invoice, invoice_index in pagedFilteredInvoices + tr.word-wrap + th.text-end.fw-light #{ (sort == "desc" ? (invoiceCount - invoice_index) : (offset + invoice_index + 1)).toLocaleString() } - td.fit - if (invoice.state == "CANCELED") - +pillBadgeDanger("Cancelled") + td.fit + if (invoice.state == "CANCELED") + +pillBadgeDanger("Cancelled") - else if (invoice.state == "SETTLED") - +pillBadgeSuccess("Settled") + else if (invoice.state == "SETTLED") + +pillBadgeSuccess("Settled") - else - span.text-capitalize - +pillBadgeWarning(invoice.state.toLowerCase()) + else + span.text-capitalize + +pillBadgeWarning(invoice.state.toLowerCase()) - td.text-end.fit - - var valueColorClass = "text-muted"; - - var settled = false; - if (invoice.state == "CANCELED") - // keep default muted - - else if (invoice.state == "SETTLED") - - valueColorClass = "text-success fw-bold"; - - settled = true; - - else - - valueColorClass = "text-warning"; - - span(class=valueColorClass) - if (settled) - span + - - if (settled) - +btcValue(invoice.amt_paid_sat) - - else - +btcValue(invoice.value) - - td - - if (invoice.memo) - if (invoice.memo.length > 40) - span.border-dotted(title=`${invoice.memo}`, data-bs-toggle="tooltip") #{utils.ellipsizeMiddle(invoice.memo, 40)} - - else - span #{invoice.memo} - - else - span.text-muted (no description) - - td - - let featureAbbrevMap = { "tlv-onion": "TLV_O", "payment-addr":"PA", "multi-path-payments":"MPP" }; - if (invoice.features) - each feature in invoice.features - span.badge.text-bg-primary.me-1(title=`${JSON.stringify(feature)}`, data-bs-toggle="tooltip") - | #{featureAbbrevMap[feature.name]} - if (feature.is_required) - i.fas.fa-asterisk.mx-1 - - if (feature.is_known) - i.fas.fa-check.ms-1 - - td - +date(invoice.creation_date) - - - - td.text-end - a.btn.btn-primary.btn-sm(href="javascript:void(0)" data-bs-toggle="modal" data-bs-target=("#invoiceModal-" + invoice_index)) - i.fas.fa-file-lines + td.text-end.fit + - var valueColorClass = "text-muted"; + - var settled = false; + if (invoice.state == "CANCELED") + // keep default muted + else if (invoice.state == "SETTLED") + - valueColorClass = "text-success fw-bold"; + - settled = true; + + else + - valueColorClass = "text-warning"; + + span(class=valueColorClass) + if (settled) + span + + + if (settled) + +btcValue(invoice.amt_paid_sat) + + else + +btcValue(invoice.value) + + td + if (invoice.memo) + if (invoice.memo.length > 40) + span.border-dotted( + title=`${invoice.memo}`, + data-bs-toggle="tooltip" + ) #{ utils.ellipsizeMiddle(invoice.memo, 40) } + + else + span #{ invoice.memo } + + else + span.text-muted (no description) + + td + - let featureAbbrevMap = { "tlv-onion": "TLV_O", "payment-addr": "PA", "multi-path-payments": "MPP", "route-blinding": "RB" }; + if (invoice.features) + each feature in invoice.features + span.badge.text-bg-primary.me-1( + title=`${JSON.stringify(feature)}`, + data-bs-toggle="tooltip" + ) + | #{ featureAbbrevMap[feature.name] } + if (feature.is_required) + i.fas.fa-asterisk.mx-1 + + if (feature.is_known) + i.fas.fa-check.ms-1 + + td + +date(invoice.creation_date) + + td.text-end + a.btn.btn-primary.btn-sm( + href="javascript:void(0)", + data-bs-toggle="modal", + data-bs-target="#invoiceModal-" + invoice_index + ) + i.fas.fa-file-lines diff --git a/views/layout.pug b/views/layout.pug index 8f60a3f..670cf6f 100644 --- a/views/layout.pug +++ b/views/layout.pug @@ -2,151 +2,159 @@ include ./includes/shared-mixins.pug doctype html html - head - meta(charset="utf-8") - meta(name="viewport", content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=0, shrink-to-fit=no") - - if (session.uiTheme && session.uiTheme == "dark") - link(rel="stylesheet", href="/style/dark.css") - - else - link(rel="stylesheet", href="/style/light.css", integrity="") - - - link(rel="icon", type="image/png", href="/img/logo/lightning.png") - - block headContent - title #{config.siteInfo.title} - - +sharedScriptTags - - body.bg-background - script. - var documentReadyFunctions = []; - - - - +modal("global-search", "Search") - if (session.hideSearchNote) - // show nothing - else - .alert.alert-primary.alert-dismissible.shadow-sm(role="alert") - .mb-2 - .mb-2 Searching here will find all public nodes and/or channels visible to your node. It will match on public keys, aliases, addresses, colors, and channel ids. - span.fw-bold Important: - span Please be aware that the - span.fw-bold alias - span property can be set to any value by node owners - even to impersonate a person or company you might be familiar with. Use caution when evaluating nodes. - - div - a(href="/changeSetting?name=hideSearchNote&value=true") Don't show this note again - - - a.btn-close(href="/changeSetting?name=hideSearchNote&value=true", aria-label="Close", style="text-decoration: none;") - - form.mb-4(method="get", action="/search") - .input-group - label.input-group-text(for="query") - i.fas.fa-search - - input.form-control.form-control-lg(id="query" type="text" name="query" value=query placeholder="public key, channel id, alias, color, or address") - - button.btn.btn-primary.btn-lg(type="submit") - span Search - - - - .modal(id="switchNodeModal" tabindex="-1" role="dialog" aria-hidden="true") - .modal-dialog.modal-dialog-centered.modal-sm - .modal-content - .modal-body - h5 Connecting to Node... - span Refreshing the full public network often takes ~5-15 seconds... - .text-center.mb-4.mt-5 - .spinner-border.text-primary(role="status" style="width: 3rem; height: 3rem;") - - - script. - $('#global-search').on('shown.bs.modal', function() { - $('#query').focus(); - }); - - - .container.bg-main.px-0.min-vh-100.position-relative - if (global.adminPassword) - .position-absolute.top-0.end-0.rounded-circle.mt-2(style="margin-right: -40px !important;") - a.btn.btn-primary.btn-sm(href="javascript:void(0)", data-bs-toggle="modal", data-bs-target="#global-search") - span(title="Global search", data-bs-toggle="tooltip") - i.fas.fa-search - - .d-flex.flex-row - .d-flex.flex-column.border-end.me-2.bg-menu.min-vh-100(style="width: 215px;") - .p-3.d-flex.justify-content-between.border-bottom - div - a.navbar-brand.me-0(href="/") - img.header-image(src="/img/logo/lightning.svg") - span #{config.siteInfo.title} - - div - +modal("optionsMenuModal", "Options", "modal-md") - include ./includes/options-menu.pug - - a(href="javascript:void(0)", data-bs-toggle="modal", data-bs-target="#optionsMenuModal") - span(title="Options menu", data-bs-toggle="tooltip") - i.fas.fa-gear.text-body - - if (global.adminPassword && global.adminCredentials && global.adminCredentials.lndNodes) - .border-bottom.p-3 - include ./includes/menu-node-list.pug - - .p-3 - include ./includes/navbar.pug - - .flex-grow-1 - .container.p-0 - main(role="main") - include ./includes/user-message.pug - - - if (false) - .px-3.py-3.mb-4.ms-n2 - nav(aria-label="breadcrumb") - ol.breadcrumb.mb-0 - li.me-2 » - block breadcrumb - - .p-3 - block content - - - - - - script(type="text/javascript", src="https://cdn.jsdelivr.net/npm/jdenticon@3.2.0") - - script(src="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/highlight.min.js") - - script. - $(document).ready(function() { - $('[data-bs-toggle="tooltip"]').tooltip(); - $('[data-bs-toggle="popover"]').popover({html:true}); - - for (var i = 0; i < documentReadyFunctions.length; i++) { - documentReadyFunctions[i](); - } - }); - - hljs.initHighlightingOnLoad(); - - if (userMessage || userMessageMarkdown) - script. - var toastElementList = [].slice.call(document.querySelectorAll('.toast')) - var toastList = toastElementList.map(function (toastElement) { - return new bootstrap.Toast(toastElement, {}); - }); - - var userMessageToastElement = document.getElementById('userMessageToast'); - var userMessageToast = bootstrap.Toast.getOrCreateInstance(userMessageToastElement); - userMessageToast.show(); - - block endOfBody + head + meta(charset="utf-8") + meta( + name="viewport", + content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=0, shrink-to-fit=no" + ) + + if (session.uiTheme && session.uiTheme == "dark") + link(rel="stylesheet", href="/style/dark.css") + + else + link(rel="stylesheet", href="/style/light.css", integrity="") + + link(rel="icon", type="image/png", href="/img/logo/lightning.png") + + block headContent + title #{ config.siteInfo.title } + + +sharedScriptTags + + body.bg-background + script. + var documentReadyFunctions = []; + + +modal("global-search", "Search") + if (session.hideSearchNote) + // show nothing + else + .alert.alert-primary.alert-dismissible.shadow-sm(role="alert") + .mb-2 + .mb-2 Searching here will find all public nodes and/or channels visible to your node. It will match on public keys, aliases, addresses, colors, and channel ids. + p. + #[span.fw-bold Important:] + Please be aware that the + #[span.fw-bold alias] + property can be set to any value by node owners - even to impersonate a person or company you might be familiar with. Use caution when evaluating nodes. + + div + a(href="/changeSetting?name=hideSearchNote&value=true") Don't show this note again + + a.btn-close( + href="/changeSetting?name=hideSearchNote&value=true", + aria-label="Close", + style="text-decoration: none" + ) + + form.mb-4(method="get", action="/search") + .input-group + label.input-group-text(for="query") + i.fas.fa-search + + input#query.form-control.form-control-lg( + type="text", + name="query", + value=query, + placeholder="public key, channel id, alias, color, or address" + ) + + button.btn.btn-primary.btn-lg(type="submit") + span Search + + #switchNodeModal.modal(tabindex="-1", role="dialog", aria-hidden="true") + .modal-dialog.modal-dialog-centered.modal-sm + .modal-content + .modal-body + h5 Connecting to Node... + span Refreshing the full public network often takes ~5-15 seconds... + .text-center.mb-4.mt-5 + .spinner-border.text-primary( + role="status", + style="width: 3rem; height: 3rem" + ) + + script. + $("#global-search").on("shown.bs.modal", function () { + $("#query").focus(); + }); + + .container.bg-main.px-0.min-vh-100.position-relative + .d-flex.flex-row + .d-flex.flex-column.border-end.me-2.bg-menu.min-vh-100( + style="width: 215px" + ) + .p-3.d-flex.justify-content-between.border-bottom + div + a.navbar-brand.me-0(href="/") + img.header-image(src="/img/logo/lightning.svg") + span #{ config.siteInfo.title } + + div + +modal("optionsMenuModal", "Options", "modal-md") + include ./includes/options-menu.pug + + a( + href="javascript:void(0)", + data-bs-toggle="modal", + data-bs-target="#optionsMenuModal" + ) + span(title="Options menu", data-bs-toggle="tooltip") + i.fas.fa-gear.text-body + + if (global.adminPassword && global.adminCredentials && global.adminCredentials.lndNodes) + .border-bottom.p-3 + include ./includes/menu-node-list.pug + + .p-3 + include ./includes/navbar.pug + + .flex-grow-1 + .container.p-0 + main(role="main") + include ./includes/user-message.pug + + if (false) + .px-3.py-3.mb-4.ms-n2 + nav(aria-label="breadcrumb") + ol.breadcrumb.mb-0 + li.me-2 » + block breadcrumb + + .p-3 + block content + + if (global.adminPassword) + .rounded-circle.mt-2(style="margin-right: 0.45rem !important") + a.btn.btn-primary.btn-sm( + href="javascript:void(0)", + data-bs-toggle="modal", + data-bs-target="#global-search" + ) + span(title="Global search", data-bs-toggle="tooltip") + i.fas.fa-search + + script. + $(document).ready(function () { + $('[data-bs-toggle="tooltip"]').tooltip(); + $('[data-bs-toggle="popover"]').popover({ html: true }); + + for (var i = 0; i < documentReadyFunctions.length; i++) { + documentReadyFunctions[i](); + } + hljs.highlightAll(); + }); + + if (userMessage || userMessageMarkdown) + script. + var toastElementList = [].slice.call(document.querySelectorAll(".toast")); + var toastList = toastElementList.map(function (toastElement) { + return new bootstrap.Toast(toastElement, {}); + }); + + var userMessageToastElement = document.getElementById("userMessageToast"); + var userMessageToast = bootstrap.Toast.getOrCreateInstance(userMessageToastElement); + userMessageToast.show(); + + block endOfBody diff --git a/views/lndconnect.pug b/views/lndconnect.pug index 9363b75..5c67e86 100644 --- a/views/lndconnect.pug +++ b/views/lndconnect.pug @@ -1,105 +1,113 @@ extends layout block headContent - title LND Connect + title LND Connect block breadcrumb - li.breadcrumb-item - a(href='/') Home - li.breadcrumb-item Tools - li.breadcrumb-item LND Connect + li.breadcrumb-item + a(href="/") Home + li.breadcrumb-item Tools + li.breadcrumb-item LND Connect block content - +pageTitle("LND Connect") - - - if (!session.admin) - - var loginRequiredNote = "help you connect to a mobile Zap wallet."; - include includes/login-required-alert.pug - - else - - if (!securityNoteAccepted) - .alert.alert-danger.alert-dismissible.shadow-sm(role="alert") - h3.h5 Important - .mb-2 - a(href="https://github.com/LN-Zap/lndconnect" target="_blank") LND Connect - span is a protocol for connecting to LND Nodes, often from mobile wallets. - - .mb-2 - span It is convenient, but - span.fw-bold dangerous - span ! This page will display a QR code that embeds the - span.fw-bold admin credentials - span of your LND Node. - - hr - - .mb-3 - h4.h6.fw-bold Anyone who sees or captures this QR code can control your LND Node, including stealing funds from its internal wallet. - - div - a.btn.btn-danger(href="/lndconnect?securityNoteAccepted=true") - i.fas.fa-exclamation-triangle.me-2 - | I Understand - Continue - - - else - - .alert.alert-primary.shadow-sm(id="hiddenAlert" style="display: none;") The sensitive data on this page has been hidden. Simply refresh the page to see it again. - - #secureContent - .alert.alert-primary.shadow-sm The sensitive data below will be hidden in - span(id="hideTimer") - - .mb-3 - label.form-label QR Code - .d-flex - .bg-white - img.text-bg-white(src=`/qrcode?data=${encodeURIComponent(lndconnectString)}` style="width: 300px; height: 300px;") - - if (localHost) - .mb-3 - .alert.alert-warning - p - span.fw-bold.me-1 Warning - | The host/IP for this node is local, which means that, as configured, you'll be unable to connect to this node externally. If you want to connect externally, you'll need to use a publicly accessible host/IP. - - | Since the configured host is a local one, you can modify the host below (if you have a publicly accessible one), to build another LNDConnect string. Note that your TLS certificate may not include the given host/IP unless you explicitly configured it (e.g. by setting 'tlsextraip' for LND), in which case the connection will fail for security reasons. - - form(method="get") - input(type="hidden", name="securityNoteAccepted", value="true") - .mb-3 - label.form-label(for="host") Host / IP - input.form-control(id="host", name="host", value=host) - - .mb-3 - label.form-label(for="port") Port - input.form-control(id="port", name="port", value=port) - - button(type="submit") Update - - .mb-3 - label.form-label(for="lndconnectString") LND Connect String - textarea.form-control.fs-90.font-monospace(id="lndconnectString" name="lndconnectString" rows="8") #{lndconnectString} + +pageTitle("LND Connect") + + if (!session.admin) + - var loginRequiredNote = "help you connect to a mobile Zap wallet."; + include includes/login-required-alert.pug + + else + if (!securityNoteAccepted) + .alert.alert-danger.alert-dismissible.shadow-sm(role="alert") + h3.h5 Important + .mb-2 + span. + #[a(href="https://github.com/LN-Zap/lndconnect", target="_blank") LND Connect] + is a protocol for connecting to LND Nodes, often from mobile wallets. + + .mb-2 + span. + It is convenient, but + #[span.fw-bold dangerous!] + This page will display a QR code that embeds the + #[span.fw-bold admin credentials] + of your LND Node. + + hr + + .mb-3 + h4.h6.fw-bold Anyone who sees or captures this QR code can control your LND Node, including stealing funds from its internal wallet. + + div + a.btn.btn-danger(href="/lndconnect?securityNoteAccepted=true") + i.fas.fa-exclamation-triangle.me-2 + | I Understand - Continue + + else + #hiddenAlert.alert.alert-primary.shadow-sm(style="display: none") The sensitive data on this page has been hidden. Simply refresh the page to see it again. + + #secureContent + .alert.alert-primary.shadow-sm. + The sensitive data below will be hidden in + #[span#hideTimer] + + .mb-3 + label.form-label QR Code + .d-flex + .bg-white + img.text-bg-white( + src=`/qrcode?data=${encodeURIComponent(lndconnectString)}`, + style="width: 300px; height: 300px" + ) + + if (localHost) + .mb-3 + .alert.alert-warning + p. + #[span.fw-bold.me-1 Warning:] + The host/IP for this node is local, which means that, + as configured, you'll be unable to connect to this node externally. + If you want to connect externally, you'll need to use a publicly accessible host/IP. + p. + Since the configured host is a local one, you can modify the host below + (if you have a publicly accessible one), to build another LND Connect string. + Note that your TLS certificate may not include the given host/IP unless you explicitly + configured it (e.g. by setting 'tlsextraip' for LND), + in which case the connection will fail for security reasons. + + form(method="get") + input(type="hidden", name="securityNoteAccepted", value="true") + .mb-3 + label.form-label(for="host") Host / IP + input#host.form-control(name="host", value=host) + + .mb-3 + label.form-label(for="port") Port + input#port.form-control(name="port", value=port) + + button(type="submit") Update + + .mb-3 + label.form-label(for="lndconnectString") LND Connect String + textarea#lndconnectString.form-control.fs-90.font-monospace( + name="lndconnectString", + rows="8" + ) #{ lndconnectString } block endOfBody - if (securityNoteAccepted) - script. - function securePage() { - - } - $(document).ready(function() { - var hideSeconds = 60; - var endTime = new Date(new Date().getTime() + hideSeconds * 1000); - - setTimeout(function() { - $("#hiddenAlert").show(); - $("#secureContent").hide(); - - }, hideSeconds * 1000); - - setInterval(function() { - $("#hideTimer").text(parseInt((endTime.getTime() - new Date().getTime()) / 1000) + " sec"); - }, 200); - }); + if (securityNoteAccepted) + script. + function securePage() {} + $(document).ready(function () { + var hideSeconds = 60; + var endTime = new Date(new Date().getTime() + hideSeconds * 1000); + + setTimeout(function () { + $("#hiddenAlert").show(); + $("#secureContent").hide(); + }, hideSeconds * 1000); + + setInterval(function () { + $("#hideTimer").text(parseInt((endTime.getTime() - new Date().getTime()) / 1000) + " sec"); + }, 200); + }); diff --git a/views/local-channels.pug b/views/local-channels.pug index 44e4d1c..5a67990 100644 --- a/views/local-channels.pug +++ b/views/local-channels.pug @@ -1,156 +1,163 @@ extends layout block headContent - title Local Channels + title Local Channels block breadcrumb - li.breadcrumb-item - a(href='/') Home - li.breadcrumb-item My Node - li.breadcrumb-item My Channels - -block content - if (!session.admin) - +pageTitle("My Channels") - - - - var loginRequiredNote = "display details about this node's channels."; - include includes/login-required-alert.pug - - else - - +pageTitle(`${allFilteredChannels.length.toLocaleString()} Channel${(allFilteredChannels.length == 1) ? "" : "s"}`) - if (allFilteredChannels.length < allChannels.length) - small.text-muted.fs-75 (+#{(allChannels.length - allFilteredChannels.length).toLocaleString()} hidden) - - +card - +filterList - +filterItem - - var sortOptions = [["Capacity", "capacity-desc"], ["Local Balance", "localbalance-desc"], ["Remote Balance", "remotebalance-desc"], ["Σ Transferred", "valuetransfer-desc"], ["Last Update", "updated-desc"], ["Open Block", "openblockheight-desc"]]; - - +filterBtnGroup("Sort", null, sortOptions, `/local-channels?open=${open}&status=${status}&localbalance=${localbalance}&remotebalance=${remotebalance}&limit=${limit}`, "sort", sort) - - - - +filterItem - - var openFilterOptions = [["Open", "open"], ["Closed", "closed"], ["All", "all"]]; - - +filterBtnGroup("Open?", "Includes both open and pending channels", openFilterOptions, `/local-channels?sort=${sort}&status=${status}&localbalance=${localbalance}&remotebalance=${remotebalance}&limit=${limit}`, "open", open) - - - - - if (open != "closed") - +filterItem - - var statusOptions = [["Active", "active"], ["Inactive", "inactive"], ["Pending", "pending"], ["All", "all"]]; - - +filterBtnGroup("Status", null, statusOptions, `/local-channels?sort=${sort}&open=${open}&localbalance=${localbalance}&remotebalance=${remotebalance}&limit=${limit}`, "status", status) - - - +filterItem - - var localbalanceOptions = [["Yes", "yes"], ["No", "no"], ["All", "all"]]; - - +filterBtnGroup("Has Local Balance", null, localbalanceOptions, `/local-channels?sort=${sort}&open=${open}&status=${status}&remotebalance=${remotebalance}&limit=${limit}`, "localbalance", localbalance) - - - +filterItem - - var remotebalanceOptions = [["Yes", "yes"], ["No", "no"], ["All", "all"]]; + li.breadcrumb-item + a(href="/") Home + li.breadcrumb-item My Node + li.breadcrumb-item My Channels - +filterBtnGroup("Has Remote Balance", null, remotebalanceOptions, `/local-channels?sort=${sort}&open=${open}&status=${status}&localbalance=${localbalance}&limit=${limit}`, "remotebalance", remotebalance) - - - +filterItem - - var pageSizeOptions = [["20", "20"], ["50", "50"], ["100", "100"]]; - - +filterBtnGroup("Page Size", null, pageSizeOptions, `/local-channels?sort=${sort}&open=${open}&status=${status}&localbalance=${localbalance}&remotebalance=${remotebalance}`, "limit", limit) - - - hr.my-3 - - div - if (allFilteredChannels.length > limit) - span Showing - span.fw-bold ##{(offset + 1).toLocaleString()} - #{Math.min(offset + limit, allFilteredChannels.length).toLocaleString()} - span of - span.fw-bold #{allFilteredChannels.length.toLocaleString()} - if (allChannels.length > allFilteredChannels.length) - span filtered - span channel - if (allFilteredChannels.length != 1) - span s - - else if (allFilteredChannels.length > 0) - span Showing - span.fw-bold #{allFilteredChannels.length.toLocaleString()} - if (allChannels.length > allFilteredChannels.length) - span filtered - - span channel - if (allFilteredChannels.length > 1) - span s - else - .alert.alert-warning.shadow-sm.mb-0 No matching channels - - - +pagination(allFilteredChannels.length, limit, offset, paginationBaseUrl) - - - - if (false) - pre - code.json #{JSON.stringify(allChannels, null, 4)} - - if (pagedFilteredChannels.length > 0) - .table-responsive - table.table.table-striped - thead - tr - th.text-end.fw-light # - th Channel - th Flags - //th.text-center - // span.border-dotted(title="Whether channel was created by the local node", data-bs-toggle="tooltip") Initiator - th Partner Node - - if (false) - th.text-end - if (sort == "openblockheight-desc") - span.border-dotted.me-2(title="The height of the block that confirmed each channel's opening transaction" data-bs-toggle="tooltip") Open Block Height - i.fas.fa-arrow-down - else - a.border-dotted(href=`/local-channels?sort=openblockheight-desc&status=${status}&localbalance=${localbalance}&remotebalance=${remotebalance}` title="Sort by the height of the block that confirmed each channel's opening transaction" data-bs-toggle="tooltip") - span Open Block Height - - - - th.text-end - span.border-dotted(title="Local and Remote Balances", data-bs-toggle="tooltip") Balances - span.text-muted.ms-1 - | ( - span.fw-bold - span.text-primary L - span.mx-1 / - span.text-info R - | ) - - th.text-end - span.border-dotted(title="Total Inbound and Outbound Value Transfers", data-bs-toggle="tooltip") Transfer - - th.text-end - span.border-dotted(title="The block height at which this channel was opened", data-bs-toggle="tooltip") - | Opened - span.ms-1 / Updated - - th.text-end Raw - - tbody - each channel, channel_index in pagedFilteredChannels - - var localChannel_index = channel_index; - - var localChannel = channel; - - +modal(`localChannelModal-${localChannel_index}`, `Channel ${localChannel.chan_id ? localChannel.chan_id : '- Pending Open'}`) - pre - code.json #{JSON.stringify(localChannel, null, 4)} - - include ./includes/local-channel-table-row.pug +block content + if (!session.admin) + +pageTitle("My Channels") + - var loginRequiredNote = "display details about this node's channels."; + include includes/login-required-alert.pug + + else + +pageTitle(`${allFilteredChannels.length.toLocaleString()} Channel${(allFilteredChannels.length == 1) ? "" : "s"} `) + if (allFilteredChannels.length < allChannels.length) + small.text-muted.fs-75 (+#{ (allChannels.length - allFilteredChannels.length).toLocaleString() } hidden) + + +card + +filterList + +filterItem + - var sortOptions = [["Capacity", "capacity-desc"], ["Local Balance", "localbalance-desc"], ["Remote Balance", "remotebalance-desc"], ["Σ Transferred", "valuetransfer-desc"], ["Last Update", "updated-desc"], ["Open Block", "openblockheight-desc"]]; + + +filterBtnGroup("Sort", null, sortOptions, `/local-channels?open=${open}&status=${status}&localbalance=${localbalance}&remotebalance=${remotebalance}&limit=${limit}`, "sort", sort) + + +filterItem + - var openFilterOptions = [["Open", "open"], ["Closed", "closed"], ["All", "all"]]; + + +filterBtnGroup("Open?", "Includes both open and pending channels", openFilterOptions, `/local-channels?sort=${sort}&status=${status}&localbalance=${localbalance}&remotebalance=${remotebalance}&limit=${limit}`, "open", open) + + if (open != "closed") + +filterItem + - var statusOptions = [["Active", "active"], ["Inactive", "inactive"], ["Pending", "pending"], ["All", "all"]]; + + +filterBtnGroup("Status", null, statusOptions, `/local-channels?sort=${sort}&open=${open}&localbalance=${localbalance}&remotebalance=${remotebalance}&limit=${limit}`, "status", status) + + +filterItem + - var localbalanceOptions = [["Yes", "yes"], ["No", "no"], ["All", "all"]]; + + +filterBtnGroup("Has Local Balance", null, localbalanceOptions, `/local-channels?sort=${sort}&open=${open}&status=${status}&remotebalance=${remotebalance}&limit=${limit}`, "localbalance", localbalance) + + +filterItem + - var remotebalanceOptions = [["Yes", "yes"], ["No", "no"], ["All", "all"]]; + + +filterBtnGroup("Has Remote Balance", null, remotebalanceOptions, `/local-channels?sort=${sort}&open=${open}&status=${status}&localbalance=${localbalance}&limit=${limit}`, "remotebalance", remotebalance) + + +filterItem + - var pageSizeOptions = [["20", "20"], ["50", "50"], ["100", "100"]]; + + +filterBtnGroup("Page Size", null, pageSizeOptions, `/local-channels?sort=${sort}&open=${open}&status=${status}&localbalance=${localbalance}&remotebalance=${remotebalance}`, "limit", limit) + + hr.my-3 + + div + if (allFilteredChannels.length > limit) + span. + Showing + #[span.fw-bold ##{ (offset + 1).toLocaleString() } - #{ Math.min(offset + limit, allFilteredChannels.length).toLocaleString() }] + of + #[span.fw-bold #{ allFilteredChannels.length.toLocaleString() }] + + if (allChannels.length > allFilteredChannels.length) + | filtered + + | + | channel + if (allFilteredChannels.length != 1) + | s + + else if (allFilteredChannels.length > 0) + span. + Showing + #[span.fw-bold #{ allFilteredChannels.length.toLocaleString() }] + + if (allChannels.length > allFilteredChannels.length) + | filtered + + | + | channel + if (allFilteredChannels.length > 1) + | s + else + .alert.alert-warning.shadow-sm.mb-0 No matching channels + + +pagination(allFilteredChannels.length, limit, offset, paginationBaseUrl) + + if (false) + pre + code.json #{ JSON.stringify(allChannels, null, 4) } + + if (pagedFilteredChannels.length > 0) + .table-responsive + table.table.table-striped + thead + tr + th.text-end.fw-light # + th Channel + th Flags + //th.text-center + // span.border-dotted(title="Whether channel was created by the local node", data-bs-toggle="tooltip") Initiator + th Partner Node + + if (false) + th.text-end + if (sort == "openblockheight-desc") + span.border-dotted.me-2( + title="The height of the block that confirmed each channel's opening transaction", + data-bs-toggle="tooltip" + ) Open Block Height + i.fas.fa-arrow-down + else + a.border-dotted( + href=`/local-channels?sort=openblockheight-desc&status=${status}&localbalance=${localbalance}&remotebalance=${remotebalance}`, + title="Sort by the height of the block that confirmed each channel's opening transaction", + data-bs-toggle="tooltip" + ) + span Open Block Height + + th.text-end + span.border-dotted( + title="Local and Remote Balances", + data-bs-toggle="tooltip" + ) Balances + span.text-muted.ms-1 + | ( + span.fw-bold + span.text-primary L + span.mx-1 / + span.text-info R + | ) + + th.text-end + span.border-dotted( + title="Total Inbound and Outbound Value Transfers", + data-bs-toggle="tooltip" + ) Transfer + + th.text-end + span.border-dotted( + title="The block height at which this channel was opened", + data-bs-toggle="tooltip" + ) + | Opened + span.ms-1 / Updated + + th.text-end Raw + + tbody + each channel, channel_index in pagedFilteredChannels + - var localChannel_index = channel_index; + - var localChannel = channel; + - var channelTableIndex = offset + channel_index + 1; + + +modal(`localChannelModal-${localChannel_index}`, `Channel ${localChannel.chan_id ? localChannel.chan_id : '- Pending Open'}`) + pre + code.json #{ JSON.stringify(localChannel, null, 4) } + + include ./includes/channel-table-row.pug diff --git a/views/login.pug b/views/login.pug index a350ed6..93d39b5 100644 --- a/views/login.pug +++ b/views/login.pug @@ -1,40 +1,46 @@ extends layout block headContent - title Login + title Login block breadcrumb - li.breadcrumb-item - a(href='/') Home - li.breadcrumb-item Login + li.breadcrumb-item + a(href="/") Home + li.breadcrumb-item Login block content - +pageTitle("Login") - - - if (!global.adminPassword) - .alert.alert-primary.shadow-sm.mb-3 - span Enter your admin password to unlock LNDash - - form(method="post", action="/login") - .mb-3 - label.form-label(for="password") Password - input.form-control(type="password" id="password" name="password") - - - var onclick = false; - if (!global.adminPassword) - - onclick = "$('#unlockModal').show()"; - - button.btn.btn-primary(type="submit" onclick=onclick) - i.fas.fa-key.me-2 - span Login - - if (!global.adminPassword) - .modal(id="unlockModal" tabindex="-1" role="dialog" aria-hidden="true") - .modal-dialog.modal-dialog-centered.modal-sm - .modal-content - .modal-body - h5 Unlocking LNDash... - span Refreshing the full public network often takes ~5-15 seconds... - .text-center.mb-4.mt-5 - .spinner-border.text-primary(role="status" style="width: 3rem; height: 3rem;") + +pageTitle("Login") + + if (!global.adminPassword) + .alert.alert-primary.shadow-sm.mb-3 + span Enter your admin password to unlock LNDash + + form(method="post", action="/login") + .mb-3 + label.form-label(for="password") Password + input#password.form-control( + type="password", + name="password", + autocomplete="off" + ) + + - var onclick = false; + if (!global.adminPassword) + - onclick = "$('#unlockModal').show()"; + + button.btn.btn-primary(type="submit", onclick=onclick) + i.fas.fa-key.me-2 + span Login + + if (!global.adminPassword) + #unlockModal.modal(tabindex="-1", role="dialog", aria-hidden="true") + .modal-dialog.modal-dialog-centered.modal-sm + .modal-content + .modal-body + h5 Unlocking LNDash... + span Refreshing the full public network often takes ~5-15 seconds... + .text-center.mb-4.mt-5 + .spinner-border.text-primary( + role="status", + style="width: 3rem; height: 3rem" + ) diff --git a/views/manage-nodes.pug b/views/manage-nodes.pug index dc4bb6b..6bdcc99 100644 --- a/views/manage-nodes.pug +++ b/views/manage-nodes.pug @@ -1,196 +1,256 @@ extends layout block headContent - title Manage Nodes + title Manage Nodes block breadcrumb - li.breadcrumb-item Setup - if (setupActive) - li.breadcrumb-item Connect to Node - else - li.breadcrumb-item Manage Nodes - -block content - - if (setupActive) - +pageTitle("Setup » Connect to Node") - - else - +pageTitle("Manage Nodes") - - - if (!setupActive && !session.admin) - - var loginRequiredNote = "allow you to add and remove nodes."; - include includes/login-required-alert.pug - - else - - if (lndConnectError) - .alert.alert-danger.shadow-sm.mb-3 - h5.h6 Error - p Error while connecting to LND. Check your RPC connection credentials and see below for details about the error. - pre.mb-2 - code.json #{JSON.stringify(lndConnectError, null, 4)} - - if (lndConnectError.stack) - pre - code.json #{lndConnectError.stack} - - if (setupActive) - - var setupStep = 2; - include includes/setup-directions-alert.pug - - if (global.adminCredentials.lndNodes && global.adminCredentials.lndNodes.length > 0) - if (true) - +contentSection(`${global.adminCredentials.lndNodes.length} Node${global.adminCredentials.lndNodes.length == 1 ? "" : "s"}`) - each lndNodeConfig, lndNodeIndex in global.adminCredentials.lndNodes - - var lndNodeDetails = lndNodeConfig; - - include includes/node-connection-details-modal.pug - - - .table-responsive - table.table.table-striped - thead - tr - th.text-end.fw-light # - th Node - th Status - th Configuration - th.text-end Actions - - tbody - each lndNodeConfig, lndNodeIndex in global.adminCredentials.lndNodes - - var lndNode = lndConnections.byIndex[lndNodeIndex]; - tr - th.text-end.fw-light #{(lndNodeIndex + 1).toLocaleString()} - td - if (lndNode) - - var card_node_pubkey = lndNode.internal_pubkey; - - else - - var card_node_pubkey = "Unknown"; - - +nodeCard(card_node_pubkey) - - td - if (lndNode == lndRpc) - +pillBadgeSuccess("Active") - else - +pillBadgeWarning("Inactive") - - td - a.btn.btn-primary.btn-sm(href="javascript:void(0)" data-bs-toggle="modal" data-bs-target=("#lndNodeDetailsModal-" + lndNodeIndex)) - i.fas.fa-file-lines - - td.text-end - if (lndNode != lndRpc) - a.btn.btn-sm.btn-primary.me-2(href=`/connect-lnd?index=${lndNodeIndex}` onclick="$('#switchLndModal').modal()") - i.fas.fa-check.me-2 - | Set Active - - a.btn.btn-danger.btn-sm(href=`/delete-lnd-node?index=${lndNodeIndex}` onclick="$('#refreshLndModal').modal()") - i.fas.fa-times.me-2 - | Delete - - - +contentSection("Add New Node") - +pageTabs(["File Input", "Raw Text Input", "LND Connect"], false) - - .tab-content - +pageTab("File Input", true) - - form(method="post") - input(type="hidden" name="inputType" value="fileInput") - - .mb-3 - label.form-label(for="host") Host - input.form-control(id="host" name="host" value=host placeholder="127.0.0.1") - - .mb-3 - label.form-label(for="port") Port - input.form-control(id="port" name="port" value=port placeholder="10009") - - .mb-3 - label.form-label(for="adminMacaroonFilepath") - span.me-2 Admin Macaroon Filepath - i.fas.fa-asterisk.text-danger(title="Required if using File Input" data-bs-toggle="tooltip") - - input.form-control(id="adminMacaroonFilepath" name="adminMacaroonFilepath" value=adminMacaroonFilepath) - - .mb-3 - label.form-label(for="tlsCertFilepath") - span.me-2 TLS Certificate Filepath - i.fas.fa-asterisk.text-danger(title="Required if using File Input" data-bs-toggle="tooltip") - - input.form-control(id="tlsCertFilepath" name="tlsCertFilepath" value=tlsCertFilepath) - - button.btn.btn-primary(type="submit" onclick="$('#connectLndModal').modal()") Add Node - - - +pageTab("Raw Text Input") - - form(method="post") - input(type="hidden" name="inputType" value="rawTextInput") - - .mb-3 - label.form-label(for="hostRaw") Host - input.form-control(id="hostRaw" name="host" value=host placeholder="127.0.0.1") - - .mb-3 - label.form-label(for="portRaw") Port - input.form-control(id="portRaw" name="port" value=port placeholder="10009") - - .mb-3 - label.form-label(for="adminMacaroonHex") - span.me-2 Admin Macaroon (hex) - i.fas.fa-asterisk.text-danger(title="Required if using Raw Text Input" data-bs-toggle="tooltip") - - textarea.form-control.fs-80.font-monospace(id="adminMacaroonHex" name="adminMacaroonHex", rows="4") #{adminMacaroonHex} - - .mb-3 - label.form-label(for="tlsCertAscii") - span.me-2 TLS Certificate (ascii) - i.fas.fa-asterisk.text-danger(title="Required if using Raw Text Input" data-bs-toggle="tooltip") - - textarea.form-control.fs-80.font-monospace(id="tlsCertAscii" name="tlsCertAscii", rows="12") #{tlsCertAscii} - - button.btn.btn-primary(type="submit" onclick="$('#connectLndModal').modal()") Add Node - - +pageTab("LND Connect") - - form(method="post") - input(type="hidden" name="inputType" value="lndconnectString") - - .mb-3 - label.form-label(for="lndconnectString") - span.me-2 LND Connect String - i.fas.fa-asterisk.text-danger(title="Required if using LND Connect...obviously" data-bs-toggle="tooltip") - - textarea.form-control(id="lndconnectString" name="lndconnectString" rows="6") #{lndconnectString} - - .mb-3 - span More info about - a(href="https://github.com/LN-Zap/lndconnect" target="_blank") LND Connect - - button.btn.btn-primary(type="submit" onclick="$('#connectLndModal').modal()") Add Node + li.breadcrumb-item Setup + if (setupActive) + li.breadcrumb-item Connect to Node + else + li.breadcrumb-item Manage Nodes - - .modal(id="connectLndModal" tabindex="-1" role="dialog" aria-hidden="true") - .modal-dialog.modal-dialog-centered.modal-sm - .modal-content - .modal-body - h5 Connecting... - span Refreshing the full public network often takes ~5-15 seconds... - .text-center.mb-4.mt-5 - .spinner-border.text-primary(role="status" style="width: 3rem; height: 3rem;") - - - .modal(id="refreshLndModal" tabindex="-1" role="dialog" aria-hidden="true") - .modal-dialog.modal-dialog-centered.modal-sm - .modal-content - .modal-body - h5 Refreshing... - span Refreshing the full public network often takes ~5-15 seconds... - .text-center.mb-4.mt-5 - .spinner-border.text-primary(role="status" style="width: 3rem; height: 3rem;") +block content + if (setupActive) + +pageTitle("Setup » Connect to Node") + + else + +pageTitle("Manage Nodes") + + if (!setupActive && !session.admin) + - var loginRequiredNote = "allow you to add and remove nodes."; + include includes/login-required-alert.pug + + else + if (lndConnectError) + .alert.alert-danger.shadow-sm.mb-3 + h5.h6 Error + p Error while connecting to LND. Check your RPC connection credentials and see below for details about the error. + pre.mb-2 + code.json #{ JSON.stringify(lndConnectError, null, 4) } + + if (lndConnectError.stack) + pre + code.json #{ lndConnectError.stack } + + if (setupActive) + - var setupStep = 2; + include includes/setup-directions-alert.pug + + if (global.adminCredentials.lndNodes && global.adminCredentials.lndNodes.length > 0) + if (true) + +contentSection(`${global.adminCredentials.lndNodes.length} Node${global.adminCredentials.lndNodes.length == 1 ? "" : "s"}`) + each lndNodeConfig, lndNodeIndex in global.adminCredentials.lndNodes + - var lndNodeDetails = lndNodeConfig; + + include includes/node-connection-details-modal.pug + + .table-responsive + table.table.table-striped + thead + tr + th.text-end.fw-light # + th Node + th Status + th Configuration + th.text-end Actions + + tbody + each lndNodeConfig, lndNodeIndex in global.adminCredentials.lndNodes + - var lndNode = lndConnections.byIndex[lndNodeIndex]; + tr + th.text-end.fw-light #{ (lndNodeIndex + 1).toLocaleString() } + td + if (lndNode) + - var card_node_pubkey = lndNode.internal_pubkey; + + else + - var card_node_pubkey = "Unknown"; + + +nodeCard(card_node_pubkey) + + td + if (lndNode == lndRpc) + +pillBadgeSuccess("Active") + else + +pillBadgeWarning("Inactive") + + td + a.btn.btn-primary.btn-sm( + href="javascript:void(0)", + data-bs-toggle="modal", + data-bs-target="#lndNodeDetailsModal-" + lndNodeIndex + ) + i.fas.fa-file-lines + + td.text-end + if (lndNode != lndRpc) + a.btn.btn-sm.btn-primary.me-2( + href=`/connect-lnd?index=${lndNodeIndex}`, + onclick="$('#switchLndModal').modal()" + ) + i.fas.fa-check.me-2 + | Set Active + + a.btn.btn-danger.btn-sm( + href=`/delete-lnd-node?index=${lndNodeIndex}`, + onclick="$('#refreshLndModal').modal()" + ) + i.fas.fa-times.me-2 + | Delete + + +contentSection("Add New Node") + +pageTabs(["File Input", "Raw Text Input", "LND Connect"], false) + + .tab-content + +pageTab("File Input", true) + form(method="post") + input(type="hidden", name="inputType", value="fileInput") + + .mb-3 + label.form-label(for="host") Host + input#host.form-control( + name="host", + value=host, + placeholder="127.0.0.1" + ) + + .mb-3 + label.form-label(for="port") Port + input#port.form-control( + name="port", + value=port, + placeholder="10009" + ) + + .mb-3 + label.form-label(for="adminMacaroonFilepath") + span.me-2 Admin Macaroon Filepath + i.fas.fa-asterisk.text-danger( + title="Required if using File Input", + data-bs-toggle="tooltip" + ) + + input#adminMacaroonFilepath.form-control( + name="adminMacaroonFilepath", + value=adminMacaroonFilepath + ) + + .mb-3 + label.form-label(for="tlsCertFilepath") + span.me-2 TLS Certificate Filepath + i.fas.fa-asterisk.text-danger( + title="Required if using File Input", + data-bs-toggle="tooltip" + ) + + input#tlsCertFilepath.form-control( + name="tlsCertFilepath", + value=tlsCertFilepath + ) + + button.btn.btn-primary( + type="submit", + onclick="$('#connectLndModal').modal()" + ) Add Node + + +pageTab("Raw Text Input") + form(method="post") + input(type="hidden", name="inputType", value="rawTextInput") + + .mb-3 + label.form-label(for="hostRaw") Host + input#hostRaw.form-control( + name="host", + value=host, + placeholder="127.0.0.1" + ) + + .mb-3 + label.form-label(for="portRaw") Port + input#portRaw.form-control( + name="port", + value=port, + placeholder="10009" + ) + + .mb-3 + label.form-label(for="adminMacaroonHex") + span.me-2 Admin Macaroon (hex) + i.fas.fa-asterisk.text-danger( + title="Required if using Raw Text Input", + data-bs-toggle="tooltip" + ) + + textarea#adminMacaroonHex.form-control.fs-80.font-monospace( + name="adminMacaroonHex", + rows="4" + ) #{ adminMacaroonHex } + + .mb-3 + label.form-label(for="tlsCertAscii") + span.me-2 TLS Certificate (ascii) + i.fas.fa-asterisk.text-danger( + title="Required if using Raw Text Input", + data-bs-toggle="tooltip" + ) + + textarea#tlsCertAscii.form-control.fs-80.font-monospace( + name="tlsCertAscii", + rows="12" + ) #{ tlsCertAscii } + + button.btn.btn-primary( + type="submit", + onclick="$('#connectLndModal').modal()" + ) Add Node + + +pageTab("LND Connect") + form(method="post") + input(type="hidden", name="inputType", value="lndconnectString") + + .mb-3 + label.form-label(for="lndconnectString") + span.me-2 LND Connect String + i.fas.fa-asterisk.text-danger( + title="Required if using LND Connect...obviously", + data-bs-toggle="tooltip" + ) + + textarea#lndconnectString.form-control( + name="lndconnectString", + rows="6" + ) #{ lndconnectString } + + .mb-3 + span More info about + a(href="https://github.com/LN-Zap/lndconnect", target="_blank") LND Connect + + button.btn.btn-primary( + type="submit", + onclick="$('#connectLndModal').modal()" + ) Add Node + + #connectLndModal.modal(tabindex="-1", role="dialog", aria-hidden="true") + .modal-dialog.modal-dialog-centered.modal-sm + .modal-content + .modal-body + h5 Connecting... + span Refreshing the full public network often takes ~5-15 seconds... + .text-center.mb-4.mt-5 + .spinner-border.text-primary( + role="status", + style="width: 3rem; height: 3rem" + ) + + #refreshLndModal.modal(tabindex="-1", role="dialog", aria-hidden="true") + .modal-dialog.modal-dialog-centered.modal-sm + .modal-content + .modal-body + h5 Refreshing... + span Refreshing the full public network often takes ~5-15 seconds... + .text-center.mb-4.mt-5 + .spinner-border.text-primary( + role="status", + style="width: 3rem; height: 3rem" + ) diff --git a/views/node-status.pug b/views/node-status.pug index e0dfd9c..986b440 100644 --- a/views/node-status.pug +++ b/views/node-status.pug @@ -1,182 +1,189 @@ -extends layout4 +extends layout block headContent - title Node Status + title Node Status block breadcrumb - li.breadcrumb-item - a(href='/') Home - li.breadcrumb-item My Node - li.breadcrumb-item Node Details - + li.breadcrumb-item + a(href="/") Home + li.breadcrumb-item My Node + li.breadcrumb-item Node Details + block content - h1(class="h2") Node Details - hr - - if (!getInfo && !listPeers) - .alert.alert-danger No data available. Check your RPC connection. - - else - - ul(class='nav nav-tabs mb-3') - li(class="nav-item") - a(data-bs-toggle="tab", href="#tab-details", class="nav-link active", role="tab") Details - li(class="nav-item") - a(data-bs-toggle="tab", href="#tab-json", class="nav-link", role="tab") JSON - - div(class="tab-content") - div(id="tab-details", class="tab-pane active", role="tabpanel") - - .card.mb-3.shadow-sm - .card-header - h2.h6.mb-0 Summary - .card-body - div(class="row") - div(class="col-md-8") - div(class="row") - .summary-split-table-label Version - .summary-split-table-content #{getInfo.version} - - div(class="col-md-6") - div(class="row") - .summary-split-table-label URIs - .summary-split-table-content - each uri, index in getInfo.uris - if (getInfo.uris.length > 1) - span #{index + 1}: #{uri} - else - span #{uri} - - div(class="row") - .summary-split-table-label Public Key - .summary-split-table-content - a(href=("/node/" + getInfo.identity_pubkey)) #{getInfo.identity_pubkey} - - div(class="row") - .summary-split-table-label Alias - .summary-split-table-content #{getInfo.alias} - - div(class="row") - .summary-split-table-label Color - .summary-split-table-content - - var node_color = fullNetworkDescription.nodeInfoByPubkey[getInfo.identity_pubkey].node.color; - +nodeColorSwatch(node_color) - span #{node_color} - - div(class="row") - .summary-split-table-label Chains - .summary-split-table-content - each chain in getInfo.chains - span #{chain.chain}_#{chain.network} - br - - div(class="row") - .summary-split-table-label Block Hash - .summary-split-table-content - if (config.blockExplorerUrl) - a(href=(config.blockExplorerUrl + "/block/" + getInfo.block_hash), target="_blank") #{getInfo.block_hash} - br - span(class="text-muted") (#{getInfo.block_height.toLocaleString()}) - else - span #{getInfo.block_hash} - br - span(class="text-muted") (#{getInfo.block_height.toLocaleString()}) - - div(class="row") - .summary-split-table-label Channels - .summary-split-table-content #{parseInt(getInfo.num_active_channels).toLocaleString()} - - if (getInfo.num_pending_channels > 0) - div(class="row") - .summary-split-table-label Pending Channels - .summary-split-table-content #{parseInt(getInfo.num_pending_channels).toLocaleString()} - - div(class="col-md-4") - if (qrcodeUrls[getInfo.identity_pubkey]) - div(style="display: inline-block; margin-right: 15px;") - img(src=qrcodeUrls[getInfo.identity_pubkey], alt=getInfo.identity_pubkey, style="border: solid 1px #ccc;") - br - span(class="text-center monospace") Public Key - - if (getInfo.uris && getInfo.uris.length > 0 && qrcodeUrls[getInfo.uris[0]]) - div(style="display: inline-block;") - img(src=qrcodeUrls[getInfo.uris[0]], alt=getInfo.uris[0], style="border: solid 1px #ccc;") - br - span(class="text-center monospace") URI - - - .card.mb-3.shadow-sm - .card-header - h2(class="h6 mb-0") - span #{listPeers.peers.length.toLocaleString()} - if (listPeers.peers.length == 1) - span Peer - else - span Peers - - .card-body - table(class="table table-responsive-sm") - thead - tr - th Node - th Address - th Value Transfer (received / sent) - th Data Transfer - - th(class="text-center") Inbound? - th(class="text-end") Ping - - tbody - each item in listPeers.peers - tr - td - +nodeCard(item.pub_key) - - td #{item.address} - - td - if (item.sat_recv == 0 && item.sat_sent == 0) - span - - else - i.fas.fa-sign-in-alt.me-2 - span #{parseInt(item.sat_recv).toLocaleString()} sat - - br - - i.fas.fa-sign-out-alt.me-2 - span #{parseInt(item.sat_sent).toLocaleString()} - - - - var bytesSentData = utils.formatLargeNumber(item.bytes_sent, 2); - - var bytesRecvData = utils.formatLargeNumber(item.bytes_recv, 2); - - td - i.fas.fa-arrow-up.me-2 - span #{bytesSentData[0]} #{bytesSentData[1].abbreviation}B - - br - - i.fas.fa-arrow-down.me-2 - span #{bytesRecvData[0]} #{bytesRecvData[1].abbreviation}B - - - - - td(class="text-center") - if (item.inbound) - i(class="fas fa-check text-success") - else - i(class="fas fa-times") - - td(class="text-end") #{parseInt(item.ping_time).toLocaleString()} - - div(id="tab-json", class="tab-pane", role="tabpanel") - if (getInfo) - h4 getinfo - pre - code #{JSON.stringify(getInfo, null, 4)} - - if (listPeers) - h4 listpeers - pre - code #{JSON.stringify(listPeers, null, 4)} \ No newline at end of file + h1.h2 Node Details + hr + + if (!getInfo && !listPeers) + .alert.alert-danger No data available. Check your RPC connection. + + else + ul.nav.nav-tabs.mb-3 + li.nav-item + a.nav-link.active( + data-bs-toggle="tab", + href="#tab-details", + role="tab" + ) Details + li.nav-item + a.nav-link(data-bs-toggle="tab", href="#tab-json", role="tab") JSON + + .tab-content + #tab-details.tab-pane.active(role="tabpanel") + .card.mb-3.shadow-sm + .card-header + h2.h6.mb-0 Summary + .card-body + .row + .col-md-8 + .row + .summary-split-table-label Version + .summary-split-table-content #{ getInfo.version } + + .col-md-6 + .row + .summary-split-table-label URIs + .summary-split-table-content + each uri, index in getInfo.uris + if (getInfo.uris.length > 1) + span #{ index + 1 }: #{ uri } + else + span #{ uri } + + .row + .summary-split-table-label Public Key + .summary-split-table-content + a(href="/node/" + getInfo.identity_pubkey) #{ getInfo.identity_pubkey } + + .row + .summary-split-table-label Alias + .summary-split-table-content #{ getInfo.alias } + + .row + .summary-split-table-label Color + .summary-split-table-content + - var node_color = fullNetworkDescription.nodeInfoByPubkey[getInfo.identity_pubkey].node.color; + +nodeColorSwatch(node_color) + + .row + .summary-split-table-label Chains + .summary-split-table-content + each chain in getInfo.chains + span #{ chain.chain }_#{ chain.network } + br + + .row + .summary-split-table-label Block Hash + .summary-split-table-content + if (config.blockExplorerUrl) + a( + href=config.blockExplorerUrl + "/block/" + getInfo.block_hash, + target="_blank" + ) #{ getInfo.block_hash } + br + span.text-muted (#{ getInfo.block_height.toLocaleString() }) + else + span #{ getInfo.block_hash } + br + span.text-muted (#{ getInfo.block_height.toLocaleString() }) + + .row + .summary-split-table-label Channels + .summary-split-table-content #{ parseInt(getInfo.num_active_channels).toLocaleString() } + + if (getInfo.num_pending_channels > 0) + .row + .summary-split-table-label Pending Channels + .summary-split-table-content #{ parseInt(getInfo.num_pending_channels).toLocaleString() } + + .col-md-4 + if (qrcodeUrls[getInfo.identity_pubkey]) + div(style="display: inline-block; margin-right: 15px") + img( + src=qrcodeUrls[getInfo.identity_pubkey], + alt=getInfo.identity_pubkey, + style="border: solid 1px #ccc" + ) + br + span.text-center.monospace Public Key + + if (getInfo.uris && getInfo.uris.length > 0 && qrcodeUrls[getInfo.uris[0]]) + div(style="display: inline-block") + img( + src=qrcodeUrls[getInfo.uris[0]], + alt=getInfo.uris[0], + style="border: solid 1px #ccc" + ) + br + span.text-center.monospace URI + + .card.mb-3.shadow-sm + .card-header + h2.h6.mb-0 + span #{ listPeers.peers.length.toLocaleString() } + if (listPeers.peers.length == 1) + span Peer + else + span Peers + + .card-body + table.table.table-responsive-sm + thead + tr + th Node + th Address + th Value Transfer (received / sent) + th Data Transfer + + th.text-center Inbound? + th.text-end Ping + + tbody + each item in listPeers.peers + tr + td + +nodeCard(item.pub_key) + + td #{ item.address } + + td + if (item.sat_recv == 0 && item.sat_sent == 0) + span - + else + i.fas.fa-sign-in-alt.me-2 + span #{ parseInt(item.sat_recv).toLocaleString() } sat + + br + + i.fas.fa-sign-out-alt.me-2 + span #{ parseInt(item.sat_sent).toLocaleString() } + + - var bytesSentData = utils.formatLargeNumber(item.bytes_sent, 2); + - var bytesRecvData = utils.formatLargeNumber(item.bytes_recv, 2); + + td + i.fas.fa-arrow-up.me-2 + span #{ bytesSentData[0] } #{ bytesSentData[1].abbreviation }B + + br + + i.fas.fa-arrow-down.me-2 + span #{ bytesRecvData[0] } #{ bytesRecvData[1].abbreviation }B + + td.text-center + if (item.inbound) + i.fas.fa-check.text-success + else + i.fas.fa-times + + td.text-end #{ parseInt(item.ping_time).toLocaleString() } + + #tab-json.tab-pane(role="tabpanel") + if (getInfo) + h4 getinfo + pre + code #{ JSON.stringify(getInfo, null, 4) } + + if (listPeers) + h4 listpeers + pre + code #{ JSON.stringify(listPeers, null, 4) } diff --git a/views/node.pug b/views/node.pug index a946dce..7b4d111 100644 --- a/views/node.pug +++ b/views/node.pug @@ -1,213 +1,237 @@ extends layout block headContent - title Node Details - #{nodePubkey} + title Node Details - #{ nodePubkey } block breadcrumb - li.breadcrumb-item - a(href='/') Home - li.breadcrumb-item Network - li.breadcrumb-item - a(href="/nodes") Nodes - li.breadcrumb-item #{nodePubkey} - -block content - - .d-flex.flex-row - .me-3 - +nodeIcon(nodePubkey, "5em") - - .w-100 - - var nodeAlias = null; - if (nodeInfo && nodeInfo.node) - - nodeAlias = nodeInfo.node.alias; - - +pageTitle(["Node", nodeAlias], nodePubkey, true, 24) - span.h3 - if (nodePubkey == lndRpc.internal_pubkey) - span(title="These are the public node details for your active node", data-bs-toggle="tooltip") - i.fas.fa-home.fa-sm.text-primary.ms-3 - - if (utils.isObjectStarred(`node:${nodePubkey}`)) - span(title="This is one of your favorite nodes" data-bs-toggle="tooltip") - i.fas.fa-star.text-warning.fa-sm.ms-3 - - if (qrcodeUrls && qrcodeUrls[nodePubkey]) - .me-2.ms-2 - img(src=qrcodeUrls[nodeInfo.node.pub_key], alt=Pubkey QR Code, style="border: solid 1px #ccc; width: 8rem; height: 8rem;") - .text-center.fs-75.text-muted Public Key - - if (nodeUri && qrcodeUrls[nodeUri]) - div - img(src=qrcodeUrls[nodeUri], alt=URI QR Code, style="border: solid 1px #ccc; width: 8rem; height: 8rem;") - .text-center.fs-75.text-muted URI - - - - if (!nodeInfo || !nodeInfo.node) - .alert.alert-warning.shadow-sm Node #{nodePubkey} not found - - - +pageTabs(["Details", "JSON"]) - - - .tab-content - +pageTab("Details", true) - if (nodeInfo && nodeInfo.node) - +contentSection("Summary") - +summaryRow(4) - +summaryItem("Alias", "The public name for this node, set by its owner. This can be set to any value, so should not be trusted as an identity unless otherwise verified.") - if (nodeInfo.node.alias.length > 0) - span #{nodeInfo.node.alias} - else - span - - - - +summaryItem("Color") - +nodeColorSwatch(nodeInfo.node.color) - span #{nodeInfo.node.color} - - - +summaryItem(nodeInfo.node.addresses.length == 1 ? "Address" : "Addresses") - if (nodeInfo.node.addresses && nodeInfo.node.addresses.length > 0) - each addressItem in nodeInfo.node.addresses - +netAddress(addressItem.addr, addressItem.network, true) - - br - else - span - - - - +summaryItem("Last Update") - +date(nodeInfo.node.last_update) - - - - hr.my-4 - - +summaryRow(2 + ((nodeChannels.length > 1) ? 1 : 0)) - +summaryItem("Channels") - | #{parseInt(nodeInfo.num_channels).toLocaleString()} - - +summaryItem("Total Capacity") - +btcValue(nodeInfo.total_capacity) - - if (nodeChannels.length > 1) - +summaryItem("Avg Capacity") - +btcValue(new Decimal(nodeInfo.total_capacity).dividedBy(nodeChannels.length)) - - - - hr.my-4 + li.breadcrumb-item + a(href="/") Home + li.breadcrumb-item Network + li.breadcrumb-item + a(href="/nodes") Nodes + li.breadcrumb-item #{ nodePubkey } - - +summaryRow(1) - +summaryItem("Node Features") - - .fs-120.mt-3.mb-n2 - each feature in nodeInfo.node.features - span.badge.text-bg-primary.me-2.mb-2 - | #{feature.name} - - if (feature.is_required) - i.fas.fa-asterisk.ms-1 - - if (feature.is_known) - i.fas.fa-check.ms-1 - - if (false) - pre - code.json #{JSON.stringify(feature)} - - - - - - - - +contentSection("Tools") - if (session.admin) - if (nodePubkey != lndRpc.internal_pubkey) - if (peerPubkeys.includes(nodePubkey)) - a.btn.btn-primary.me-0.me-lg-2.mb-2.mb-lg-0.d-block.d-lg-inline-block(href=`/disconnectPeer?pubkey=${nodePubkey}`) - i.fas.fa-unlink.me-2 - span Disconnect from Peer - - a.btn.btn-primary.me-0.me-lg-2.mb-2.mb-lg-0.d-block.d-lg-inline-block(href=`/openchannel?pubkey=${nodePubkey}`) - i.fas.fa-exchange-alt.me-2 - span Open Channel - - else - if (nodeInfo && nodeInfo.node && nodeInfo.node.addresses && nodeInfo.node.addresses.length > 0) - a.btn.btn-primary.me-0.me-lg-2.mb-2.mb-lg-0.d-block.d-lg-inline-block(href=`/connectToPeer?pubkey=${nodePubkey}&address=${nodeInfo.node.addresses[0].addr}`) - i.fas.fa-link.me-2 - span Connect as Peer - else - a.btn.btn-primary.me-0.me-lg-2.mb-2.mb-lg-0.d-block.d-lg-inline-block(href="javascript:void(0)" title="Unable to connect. No addresses found." data-bs-toggle="tooltip" disabled) - i.fas.fa-link.me-2 - span Connect as Peer - - a.btn.btn-secondary.me-0.me-lg-2.mb-2.mb-lg-0.d-block.d-lg-inline-block(href=`javascript:void(0)` title="Your LND Node must be connected to this node as a peer before you can open a channel to it." data-bs-toggle="tooltip" disabled) - i.fas.fa-exchange-alt.me-2 - span Open Channel - - a.btn.btn-primary.me-0.me-lg-2.mb-2.mb-lg-0.d-block.d-lg-inline-block(href=`/query-route?pubkey=${nodePubkey}`) - i.fas.fa-route.me-2 - span Query Route Here - - if (false) - a.btn.btn-primary.me-0.me-lg-2.mb-2.mb-lg-0.d-block.d-lg-inline-block(href=`/send-payment?destPubkey=${nodePubkey}`) - i.fas.fa-money-bill-wave.me-2 - span Send Payment - - - if (utils.isObjectStarred(`node:${nodePubkey}`)) - a.btn.btn-primary.me-0.me-lg-2.mb-2.mb-lg-0.d-block.d-lg-inline-block(href=`/tag?action=remove&tagType=star&objectId=node:${nodePubkey}` title="Remove this node from your list of favorites" data-bs-toggle="tooltip") - i.far.fa-star.me-2 - span Unstar Node - - else - a.btn.btn-primary.me-0.me-lg-2.mb-2.mb-lg-0.d-block.d-lg-inline-block(href=`/tag?action=add&tagType=star&objectId=node:${nodePubkey}` title="Add this node to your list of favorites" data-bs-toggle="tooltip") - i.fas.fa-star.me-2 - span Star Node - - if (!session.admin) - a.btn.btn-primary.me-0.me-lg-2.mb-2.mb-lg-0.d-block.d-lg-inline-block(href=`/login`) - i.fas.fa-sign-in-alt.me-2 - span Login for more tools - - - - - var sharedLocalChannels = []; - - var unsharedChannels = []; - - if (nodeChannels) - each channel in nodeChannels - if (channel.node1_pub == lndRpc.internal_pubkey || channel.node2_pub == lndRpc.internal_pubkey) - - sharedLocalChannels.push(channel); - else - - unsharedChannels.push(channel); - - - if (sharedLocalChannels.length > 0) - +sectionTitle(`${sharedLocalChannels.length.toLocaleString()} Shared Channel${(sharedLocalChannels.length == 1) ? "" : "s"}`, false, null, null, true, "These are the channels shared between your current node and this node") - - +contentSection - - var channels = sharedLocalChannels; - - var channelTableIndexOffset = 0; - include includes/shared-channel-table.pug - - - if (nodeChannels && nodeChannels.length > sharedLocalChannels.length) - +contentSection(`${unsharedChannels.length.toLocaleString()} Channel${(unsharedChannels.length == 1) ? "" : "s"}`) - - var channels = unsharedChannels; - - var channelTableIndexOffset = 0; - include includes/channel-table.pug - - - - +pageTab("JSON") - - +contentSection("nodeInfo") - pre - code.json #{JSON.stringify(nodeInfo, null, 4)} +block content + .d-flex.flex-row + .me-3 + +nodeIcon(nodePubkey, "5em") + + .w-100 + - var nodeAlias = null; + if (nodeInfo && nodeInfo.node) + - nodeAlias = nodeInfo.node.alias; + + +pageTitle(nodeAlias, nodePubkey, true, 24) + span.h3 + if (nodePubkey == lndRpc.internal_pubkey) + span( + title="These are the public node details for your active node", + data-bs-toggle="tooltip" + ) + i.fas.fa-home.fa-sm.text-primary.ms-3 + + if (utils.isObjectStarred(`node:${nodePubkey}`)) + span( + title="This is one of your favorite nodes", + data-bs-toggle="tooltip" + ) + i.fas.fa-star.text-warning.fa-sm.ms-3 + + if (qrcodeUrls && qrcodeUrls[nodePubkey]) + .me-2.ms-2 + img( + src=qrcodeUrls[nodeInfo.node.pub_key], + alt=Pubkey, + QR, + Code, + style="border: solid 1px #ccc; width: 8rem; height: 8rem" + ) + .text-center.fs-75.text-muted Public Key + + if (nodeUri && qrcodeUrls[nodeUri]) + div + img( + src=qrcodeUrls[nodeUri], + alt=URI, + QR, + Code, + style="border: solid 1px #ccc; width: 8rem; height: 8rem" + ) + .text-center.fs-75.text-muted URI + + if (!nodeInfo || !nodeInfo.node) + .alert.alert-warning.shadow-sm Node #{ nodePubkey } not found + + +pageTabs(["Details", "JSON"]) + + .tab-content + +pageTab("Details", true) + if (nodeInfo && nodeInfo.node) + +contentSection("Summary") + +summaryRow(4) + +summaryItem("Alias", "The public name for this node, set by its owner. This can be set to any value, so should not be trusted as an identity unless otherwise verified.") + if (nodeInfo.node.alias.length > 0) + span #{ nodeInfo.node.alias } + else + span - + + +summaryItem("Color") + +nodeColorSwatch(nodeInfo.node.color) + + +summaryItem(nodeInfo.node.addresses.length == 1 ? "Address" : "Addresses") + if (nodeInfo.node.addresses && nodeInfo.node.addresses.length > 0) + each addressItem in nodeInfo.node.addresses + +netAddress(addressItem.addr, addressItem.network, true) + + br + else + span - + + +summaryItem("Last Update") + +date(nodeInfo.node.last_update) + + hr.my-4 + + +summaryRow(2 + ((nodeChannels.length > 1) ? 1 : 0)) + +summaryItem("Channels") + | #{ parseInt(nodeInfo.num_channels).toLocaleString() } + + +summaryItem("Total Capacity") + +btcValue(nodeInfo.total_capacity) + + if (nodeChannels.length > 1) + +summaryItem("Avg Capacity") + +btcValue(new Decimal(nodeInfo.total_capacity).dividedBy(nodeChannels.length)) + + hr.my-4 + + +summaryRow(1) + +summaryItem("Node Features") + + .fs-120.mt-3.mb-n2 + each feature in nodeInfo.node.features + span.badge.text-bg-primary.me-2.mb-2 + | #{ feature.name } + + if (feature.is_required) + i.fas.fa-asterisk.ms-1 + + if (feature.is_known) + i.fas.fa-check.ms-1 + + if (false) + pre + code.json #{ JSON.stringify(feature) } + + +contentSection("Tools") + if (session.admin) + if (nodePubkey != lndRpc.internal_pubkey) + if (peerPubkeys.includes(nodePubkey)) + a.btn.btn-primary.me-0.me-lg-2.mb-2.mb-lg-0.d-block.d-lg-inline-block( + href=`/disconnectPeer?pubkey=${nodePubkey}` + ) + i.fas.fa-unlink.me-2 + span Disconnect from Peer + + a.btn.btn-primary.me-0.me-lg-2.mb-2.mb-lg-0.d-block.d-lg-inline-block( + href=`/openchannel?pubkey=${nodePubkey}` + ) + i.fas.fa-exchange-alt.me-2 + span Open Channel + + else + if (nodeInfo && nodeInfo.node && nodeInfo.node.addresses && nodeInfo.node.addresses.length > 0) + a.btn.btn-primary.me-0.me-lg-2.mb-2.mb-lg-0.d-block.d-lg-inline-block( + href=`/connectToPeer?pubkey=${nodePubkey}&address=${nodeInfo.node.addresses[0].addr}` + ) + i.fas.fa-link.me-2 + span Connect as Peer + else + a.btn.btn-primary.me-0.me-lg-2.mb-2.mb-lg-0.d-block.d-lg-inline-block( + href="javascript:void(0)", + title="Unable to connect. No addresses found.", + data-bs-toggle="tooltip", + disabled + ) + i.fas.fa-link.me-2 + span Connect as Peer + + a.btn.btn-secondary.me-0.me-lg-2.mb-2.mb-lg-0.d-block.d-lg-inline-block( + href="javascript:void(0)", + title="Your LND Node must be connected to this node as a peer before you can open a channel to it.", + data-bs-toggle="tooltip", + disabled + ) + i.fas.fa-exchange-alt.me-2 + span Open Channel + + a.btn.btn-primary.me-0.me-lg-2.mb-2.mb-lg-0.d-block.d-lg-inline-block( + href=`/query-route?pubkey=${nodePubkey}` + ) + i.fas.fa-route.me-2 + span Query Route Here + + if (false) + a.btn.btn-primary.me-0.me-lg-2.mb-2.mb-lg-0.d-block.d-lg-inline-block( + href=`/send-payment?destPubkey=${nodePubkey}` + ) + i.fas.fa-money-bill-wave.me-2 + span Send Payment + + if (utils.isObjectStarred(`node:${nodePubkey}`)) + a.btn.btn-primary.me-0.me-lg-2.mb-2.mb-lg-0.d-block.d-lg-inline-block( + href=`/tag?action=remove&tagType=star&objectId=node:${nodePubkey}`, + title="Remove this node from your list of favorites", + data-bs-toggle="tooltip" + ) + i.far.fa-star.me-2 + span Unstar Node + + else + a.btn.btn-primary.me-0.me-lg-2.mb-2.mb-lg-0.d-block.d-lg-inline-block( + href=`/tag?action=add&tagType=star&objectId=node:${nodePubkey}`, + title="Add this node to your list of favorites", + data-bs-toggle="tooltip" + ) + i.fas.fa-star.me-2 + span Star Node + + if (!session.admin) + a.btn.btn-primary.me-0.me-lg-2.mb-2.mb-lg-0.d-block.d-lg-inline-block( + href="/login" + ) + i.fas.fa-sign-in-alt.me-2 + span Login for more tools + + - var sharedLocalChannels = []; + - var unsharedChannels = []; + + if (nodeChannels) + if (nodePubkey == lndRpc.internal_pubkey) + // if we wanted to see our channel details, we'd go to /local-channels + - unsharedChannels = nodeChannels; + else + each channel in nodeChannels + if (channel.node1_pub == lndRpc.internal_pubkey || channel.node2_pub == lndRpc.internal_pubkey) + - sharedLocalChannels.push(channel); + else + - unsharedChannels.push(channel); + + if (sharedLocalChannels.length > 0) + +sectionTitle(`${sharedLocalChannels.length.toLocaleString()} Shared Channel${(sharedLocalChannels.length == 1) ? "" : "s"}`, false, null, null, true, "These are the channels shared between your current node and this node") + + +contentSection + - var channels = sharedLocalChannels; + - var channelTableIndexOffset = 0; + include includes/shared-channel-table.pug + + if (nodeChannels && nodeChannels.length > sharedLocalChannels.length) + +contentSection(`${unsharedChannels.length.toLocaleString()} Channel${(unsharedChannels.length == 1) ? "" : "s"}`) + - var channels = unsharedChannels; + - var channelTableIndexOffset = 0; + include includes/channel-table.pug + + +pageTab("JSON") + +contentSection("nodeInfo") + pre + code.json #{ JSON.stringify(nodeInfo, null, 4) } diff --git a/views/nodes.pug b/views/nodes.pug index 7fa5f97..64b8900 100644 --- a/views/nodes.pug +++ b/views/nodes.pug @@ -1,85 +1,87 @@ extends layout block headContent - title Browse Nodes + title Browse Nodes block breadcrumb - li.breadcrumb-item - a(href='/') Home - li.breadcrumb-item Network - li.breadcrumb-item All Nodes - -block content - - +pageTitle(`${fullNetworkDescription.nodes.sortedByLastUpdate.length.toLocaleString()} Node${(fullNetworkDescription.nodes.sortedByLastUpdate.length == 1) ? "" : "s"}`) - - - if (!session.hideNodesNetworkNote) - .alert.alert-primary.alert-dismissible.shadow-sm(role="alert") - .mb-2 - span This shows all public nodes on that network, - span.fw-bold from the perspective of your node - span . If your node has been recently started/configured, it may take time before it has a good view of the rest of the public network. - - div - a(href="/changeSetting?name=hideNodesNetworkNote&value=true") Don't show this note again - - - a.btn-close(href="/changeSetting?name=hideNodesNetworkNote&value=true", aria-label="Close", style="text-decoration: none;") - - - +card - +filterList - +filterItem - - var sortOptions = [["Last Update", "last_update-desc"], ["Channels", "num_channels-desc"], ["Capacity", "channel_capacity-desc"]]; - - +filterBtnGroup("Sort", null, sortOptions, `/nodes?starred=${starred}&limit=${limit}`, "sort", sort) - - - +filterItem - - var starredFilterOptions = [["Yes", "yes"], ["All", "all"]]; - - +filterBtnGroup("Starred", "Option to only show nodes that you have 'starred' (favorited) in the app", starredFilterOptions, `/nodes?sort=${sort}&limit=${limit}`, "starred", starred) - - - +filterItem(true) - - var pageSizeOptions = [["20", "20"], ["50", "50"], ["100", "100"]]; + li.breadcrumb-item + a(href="/") Home + li.breadcrumb-item Network + li.breadcrumb-item All Nodes - +filterBtnGroup("Page Size", null, pageSizeOptions, `/nodes?sort=${sort}&starred=${starred}`, "limit", limit) - - hr.my-3 - - div - if (allFilteredNodes.length > limit) - span Showing - span.fw-bold ##{(offset + 1).toLocaleString()} - #{Math.min(offset + limit, allFilteredNodes.length).toLocaleString()} - span of - span.fw-bold #{allFilteredNodes.length.toLocaleString()} - if (allNodes.length > allFilteredNodes.length) - span filtered - span node - if (allFilteredNodes.length != 1) - span s - - else if (allFilteredNodes.length > 0) - span Showing - span.fw-bold #{allFilteredNodes.length.toLocaleString()} - if (allNodes.length > allFilteredNodes.length) - span filtered - - span node - if (allFilteredNodes.length > 1) - span s - else - .alert.alert-warning.shadow-sm.mb-0 No matching nodes - - - +pagination(allFilteredNodes.length, limit, offset, paginationBaseUrl) - - - - - if (pagedFilteredNodes.length > 0) - - var nodeTableIndexOffset = offset; - - var nodeInfos = pagedFilteredNodes; - include includes/node-table.pug +block content + +pageTitle(`${fullNetworkDescription.nodes.sortedByLastUpdate.length.toLocaleString()} Node${(fullNetworkDescription.nodes.sortedByLastUpdate.length == 1) ? "" : "s"}`) + + if (!session.hideNodesNetworkNote) + .alert.alert-primary.alert-dismissible.shadow-sm(role="alert") + .mb-2 + span. + This shows all public nodes on the network, + #[span.fw-bold from the perspective of your node.] + If your node has been recently started/configured, it may take time before it has a good view of the rest of the public network. + + div + a(href="/changeSetting?name=hideNodesNetworkNote&value=true") Don't show this note again + + a.btn-close( + href="/changeSetting?name=hideNodesNetworkNote&value=true", + aria-label="Close", + style="text-decoration: none" + ) + + +card + +filterList + +filterItem + - var sortOptions = [["Last Update", "last_update-desc"], ["Channels", "num_channels-desc"], ["Capacity", "channel_capacity-desc"]]; + + +filterBtnGroup("Sort", null, sortOptions, `/nodes?starred=${starred}&limit=${limit}`, "sort", sort) + + +filterItem + - var starredFilterOptions = [["Yes", "yes"], ["All", "all"]]; + + +filterBtnGroup("Starred", "Option to only show nodes that you have 'starred' (favorited) in the app", starredFilterOptions, `/nodes?sort=${sort}&limit=${limit}`, "starred", starred) + + +filterItem(true) + - var pageSizeOptions = [["20", "20"], ["50", "50"], ["100", "100"]]; + + +filterBtnGroup("Page Size", null, pageSizeOptions, `/nodes?sort=${sort}&starred=${starred}`, "limit", limit) + + hr.my-3 + + div + if (allFilteredNodes.length > limit) + span. + Showing + #[span.fw-bold ##{ (offset + 1).toLocaleString() } - #{ Math.min(offset + limit, allFilteredNodes.length).toLocaleString() }] + of + #[span.fw-bold #{ allFilteredNodes.length.toLocaleString() }] + + if (allNodes.length > allFilteredNodes.length) + | filtered + + | + | node + if (allFilteredNodes.length != 1) + | s + + else if (allFilteredNodes.length > 0) + span. + Showing + #[span.fw-bold #{ allFilteredNodes.length.toLocaleString() }] + + if (allNodes.length > allFilteredNodes.length) + | filtered + + | + | node + if (allFilteredNodes.length > 1) + | s + else + .alert.alert-warning.shadow-sm.mb-0 No matching nodes + + +pagination(allFilteredNodes.length, limit, offset, paginationBaseUrl) + + if (pagedFilteredNodes.length > 0) + - var nodeTableIndexOffset = offset; + - var nodeInfos = pagedFilteredNodes; + include includes/node-table.pug diff --git a/views/openchannel.pug b/views/openchannel.pug index 4976398..59383f6 100644 --- a/views/openchannel.pug +++ b/views/openchannel.pug @@ -1,153 +1,189 @@ extends layout block headContent - title Open Channel + title Open Channel block breadcrumb - li.breadcrumb-item - a(href='/') Home - li.breadcrumb-item Tools - li.breadcrumb-item Open Channel + li.breadcrumb-item + a(href="/") Home + li.breadcrumb-item Tools + li.breadcrumb-item Open Channel block content - +pageTitle("Open Channel") - - - if (!session.admin) - - var loginRequiredNote = "allow you to open a payment channel."; - include includes/login-required-alert.pug - - else - - if (openChannelError) - .alert.alert-danger.shadow-sm - h4.h5 Error - - if (openChannelError.details) - .mb-2 #{openChannelError.details.substring(0, 1).toUpperCase()}#{openChannelError.details.substring(1)} - - if (openChannelError.code) - div Error code: #{openChannelError.code} - - else - pre - code.json #{JSON.stringify(openChannelError)} - - if (openChannelResponse) - .alert.alert-success.shadow-sm - h4.h6 Success - - if (openChannelResponse.funding_txid_hex) - span New channel opening via transaction output: - span - +btcTxid(openChannelResponse.funding_txid_hex) - - if (openChannelResponse.hasOwnProperty("output_index")) - span.ms-1 [#{openChannelResponse.output_index.toLocaleString()}] - - .mt-2 - span See your - a(href="/local-channels?sort=capacity-desc&status=Pending&localbalance=all&remotebalance=all&limit=20") pending channels - span for details. - - else - span New channel opening. See your - a(href="/local-channels?sort=capacity-desc&status=Pending&localbalance=all&remotebalance=all&limit=20") pending channels - span for details. - - if (false) - pre - code.json #{JSON.stringify(openChannelResponse)} - - form(method="post" action="/openchannel" onsubmit="formSubmitted()") - .mb-3 - label.form-label(for="pubkey") Remote Node Public Key - i.fas.fa-asterisk.text-danger.ms-1.fa-sm(title="Required" data-bs-toggle="tooltip") - input.form-control.form-control-lg(type="text" id="pubkey" name="pubkey" value=pubkey) - - if (pubkey) - .d-flex - div - label.form-label(for="pubkey") Remote Node - +card - +nodeCard(pubkey) - - .row - .col-sm-6.col-md-4.col-lg-3.col-xl-2 - .mb-3 - label.form-label(for="local_balance") Local Balance - i.fas.fa-asterisk.text-danger.ms-1.fa-sm(title="Required" data-bs-toggle="tooltip") - .input-group - input.form-control.form-control-lg(id="local_balance" name="local_balance" value=local_balance) - - .input-group-text sat - - span.form-text.text-muted ~ - span(id="local_balance_note") #{new Decimal(local_balance || 0).dividedBy(coinConfig.baseCurrencyUnit.multiplier).times(global.exchangeRates.usd).toDP(2)} - small USD - - .col-sm-6.col-md-4.col-lg-3.col-xl-2 - .mb-3 - label.form-label(for="remote_balance") - span.border-dotted(title="This value should only be used if you intend to make a payment to the remote node as part of the channel-opening process." data-bs-toggle="tooltip") Remote Balance - .input-group - input.form-control.form-control-lg(id="remote_balance" name="remote_balance" value=remote_balance placeholder="0") - - .input-group-text sat - - .form-text.text-muted ~ - span(id="remote_balance_note") #{new Decimal(remote_balance || 0).dividedBy(coinConfig.baseCurrencyUnit.multiplier).times(global.exchangeRates.usd).toDP(2)} - small USD - - .mt-2.mb-4 - label.form-label(for="visibility") Visibility - .form-check - input#visibilityPublic.form-check-input(type='radio' name='visibility' value="public" checked=(visibility == "public" ? "checked" : false)) - label.form-check-label(for='visibilityPublic') Public - .form-check - input#visibilityPrivate.form-check-input(type='radio' name='visibility' value="private" checked=(visibility == "private" ? "checked" : false)) - label.form-check-label(for='visibilityPrivate') Private - - button.btn.btn-primary(id="openchannelButton" type="submit") - i.fas.fa-plus-square.me-2 - span Open Channel - - #channelOpenStatus.mt-3(style="display: none;") - span.spinner-border.spinner-border-sm.me-2.text-primary(role="status" aria-hidden="true") - span Channel open request submitted... - + +pageTitle("Open Channel") + + if (!session.admin) + - var loginRequiredNote = "allow you to open a payment channel."; + include includes/login-required-alert.pug + + else + if (openChannelError) + .alert.alert-danger.shadow-sm + h4.h5 Error + + if (openChannelError.details) + .mb-2 #{ openChannelError.details.substring(0, 1).toUpperCase() }#{ openChannelError.details.substring(1) } + + if (openChannelError.code) + div Error code: #{ openChannelError.code } + + else + pre + code.json #{ JSON.stringify(openChannelError) } + + if (openChannelResponse) + .alert.alert-success.shadow-sm + h4.h6 Success + + if (openChannelResponse.funding_txid_hex) + span New channel opening via transaction output: + | + span + +btcTxid(openChannelResponse.funding_txid_hex) + + if (openChannelResponse.hasOwnProperty("output_index")) + span.ms-1 [#{ openChannelResponse.output_index.toLocaleString() }] + + .mt-2 + span. + See your + #[a(href="/local-channels?status=Pending") pending channels] + span for details. + + else + span. + New channel opening. See your + #[a(href="/local-channels?status=Pending") pending channels] + span for details. + + if (false) + pre + code.json #{ JSON.stringify(openChannelResponse) } + + form(method="post", action="/openchannel", onsubmit="formSubmitted()") + .mb-3 + label.form-label(for="pubkey") Remote Node Public Key + i.fas.fa-asterisk.text-danger.ms-1.fa-sm( + title="Required", + data-bs-toggle="tooltip" + ) + input#pubkey.form-control.form-control-lg( + type="text", + name="pubkey", + value=pubkey + ) + + if (pubkey) + .d-flex + div + label.form-label(for="pubkey") Remote Node + +card + +nodeCard(pubkey) + + .row + .col-sm-6.col-md-4.col-lg-3.col-xl-4 + .mb-3 + label.form-label(for="local_balance") Local Balance + i.fas.fa-asterisk.text-danger.ms-1.fa-sm( + title="Required", + data-bs-toggle="tooltip" + ) + .input-group + input#local_balance.form-control.form-control-lg( + name="local_balance", + value=local_balance + ) + + .input-group-text sat + if (!process.env.LNDASH_PRIVACY_MODE) + span.form-text.text-muted ~ + | + span#local_balance_note #{ new Decimal(local_balance || 0).dividedBy(coinConfig.baseCurrencyUnit.multiplier).times(global.exchangeRates.usd).toDP(2) } + small USD + + .col-sm-6.col-md-4.col-lg-3.col-xl-4 + .mb-3 + label.form-label(for="remote_balance") + span.border-dotted( + title="This value should only be used if you intend to make a payment to the remote node as part of the channel-opening process.", + data-bs-toggle="tooltip" + ) Remote Balance + .input-group + input#remote_balance.form-control.form-control-lg( + name="remote_balance", + value=remote_balance, + placeholder="0" + ) + + .input-group-text sat + if (!process.env.LNDASH_PRIVACY_MODE) + .form-text.text-muted ~ + | + span#remote_balance_note #{ new Decimal(remote_balance || 0).dividedBy(coinConfig.baseCurrencyUnit.multiplier).times(global.exchangeRates.usd).toDP(2) } + small USD + + .mt-2.mb-4 + label.form-label(for="visibility") Visibility + .form-check + input#visibilityPublic.form-check-input( + type="radio", + name="visibility", + value="public", + checked=visibility == "public" ? "checked" : false + ) + label.form-check-label(for="visibilityPublic") Public + .form-check + input#visibilityPrivate.form-check-input( + type="radio", + name="visibility", + value="private", + checked=visibility == "private" ? "checked" : false + ) + label.form-check-label(for="visibilityPrivate") Private + + button#openchannelButton.btn.btn-primary(type="submit") + i.fas.fa-plus-square.me-2 + span Open Channel + + #channelOpenStatus.mt-3(style="display: none") + span.spinner-border.spinner-border-sm.me-2.text-primary( + role="status", + aria-hidden="true" + ) + span Channel open request submitted... block endOfBody - script. - var satPerUsd = #{coinConfig.baseCurrencyUnit.multiplier} / #{global.exchangeRates.usd}; - - function refreshExchangeRate(inputId, noteId) { - var val = $('#' + inputId).val(); - if (val == "") { - val = "0"; - } - - var usd = parseInt(val) / satPerUsd; - usd = parseFloat(Math.round(usd * 100) / 100).toFixed(2); - - $("#" + noteId).text(usd); - } - - function formSubmitted() { - $("#openchannelButton").prop("disabled", true).toggleClass("btn-primary").toggleClass("btn-secondary"); - $("#channelOpenStatus").show(); - } - - $(document).ready(function() { - $('#local_balance').on('input', function(e) { - refreshExchangeRate("local_balance", "local_balance_note"); - }); - - $('#remote_balance').on('input', function(e) { - refreshExchangeRate("remote_balance", "remote_balance_note"); - }); - - // refresh in case the UI has existing value that server didn't send - refreshExchangeRate("local_balance", "local_balance_note"); - refreshExchangeRate("remote_balance", "remote_balance_note"); - }); + if (!process.env.LNDASH_PRIVACY_MODE) + script. + var satPerUsd = #{coinConfig.baseCurrencyUnit.multiplier} / #{global.exchangeRates.usd}; + + function refreshExchangeRate(inputId, noteId) { + var val = $('#' + inputId).val(); + if (val == "") { + val = "0"; + } + + var usd = parseInt(val) / satPerUsd; + usd = parseFloat(Math.round(usd * 100) / 100).toFixed(2); + + $("#" + noteId).text(usd); + } + + function formSubmitted() { + $("#openchannelButton").prop("disabled", true).toggleClass("btn-primary").toggleClass("btn-secondary"); + $("#channelOpenStatus").show(); + } + + $(document).ready(function() { + $('#local_balance').on('input', function(e) { + refreshExchangeRate("local_balance", "local_balance_note"); + }); + + $('#remote_balance').on('input', function(e) { + refreshExchangeRate("remote_balance", "remote_balance_note"); + }); + + // refresh in case the UI has existing value that server didn't send + refreshExchangeRate("local_balance", "local_balance_note"); + refreshExchangeRate("remote_balance", "remote_balance_note"); + }); diff --git a/views/pay-invoice.pug b/views/pay-invoice.pug index 0d8c1c5..2bc7992 100644 --- a/views/pay-invoice.pug +++ b/views/pay-invoice.pug @@ -1,225 +1,213 @@ extends layout block breadcrumb - li.breadcrumb-item - a(href='/') Home - li.breadcrumb-item Tools - li.breadcrumb-item Pay Invoice + li.breadcrumb-item + a(href="/") Home + li.breadcrumb-item Tools + li.breadcrumb-item Pay Invoice block headContent - title Pay Invoice - - if (decodedInvoice) - script. - var countDownDate = new Date(#{parseInt(decodedInvoice.timestamp)} * 1000 + #{decodedInvoice.expiry} * 1000).getTime(); - - // Update the count down every 1 second - var x = setInterval(function() { - // Get todays date and time - var now = new Date().getTime(); - - // Find the distance between now and the count down date - var distance = countDownDate - now; - - // Time calculations for days, hours, minutes and seconds - var days = Math.floor(distance / (1000 * 60 * 60 * 24)); - var hours = Math.floor((distance % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60)); - var minutes = Math.floor((distance % (1000 * 60 * 60)) / (1000 * 60)); - var seconds = Math.floor((distance % (1000 * 60)) / 1000); - - // Display the result in the element with id="demo" - var str = ""; - if (days > 0) { - str += (days + "d "); - } - if (hours > 0) { - str += (hours + "h "); - } - - str += minutes + "m "; - str += seconds + "s"; - - document.getElementById("expiry-text").innerHTML = str; - - // If the count down is finished, write some text - if (distance < 0) { - clearInterval(x); - document.getElementById("expiry-text").innerHTML = "Expired"; - document.getElementById("expiry-text").className += "text-danger"; - } - }, 1000); - -block content - +pageTitle("Pay Invoice") - - - if (!session.admin) - - var loginRequiredNote = "allow you to pay an invoice from your LND node."; - include includes/login-required-alert.pug - - else - - if (payInvoiceResponse) - if (payInvoiceResponse.payment_error != "") - .alert.alert-danger - h3.h5 Failed to Pay Invoice - - .mb-3 Error: #{payInvoiceResponse.payment_error} - - span Details - pre - code.json #{JSON.stringify(payInvoiceResponse, null, 4)} - else - .alert.alert-success - h3.h6 Payment Sent - - .mb-3 - - var dest_pubkey = payInvoiceResponse.payment_route.hops[payInvoiceResponse.payment_route.hops.length - 1].pub_key; - span Your payment of - span - +btcValue(payInvoiceResponse.payment_route.total_amt) - - span was sent to - span #{dest_pubkey.substring(0, config.site.pubkeyMaxDisplayLength)} - span in - span #{parseInt(payInvoiceResponse.payment_route.hops.length).toLocaleString()} hop - if (payInvoiceResponse.payment_route.hops.length != 1) - span s - span . You paid - span - +btcValue(payInvoiceResponse.payment_route.total_fees_msat, "msat", "msat") - - span in fees. - - .d-flex - .card.text-body.shadow-sm.me-3 - .card-header - h3.h6.mb-0.fw-light - i.fas.fa-play-circle.me-2.fa-lg - span Origin - - .card-body - .fw-bold.mb-2 Node - - +nodeCard(lndRpc.internal_pubkey) - - each hop, hopIndex in payInvoiceResponse.payment_route.hops - - .card.text-body.shadow-sm.me-3 - .card-header - h3.h6.fw-light.mb-0 - if (hopIndex == (payInvoiceResponse.payment_route.hops.length - 1)) - i.fas.fa-check-circle.me-2.fa-lg - else - i.fas.fa-arrow-circle-right.me-2.fa-lg - - span Hop ##{(hopIndex + 1).toLocaleString()} - - if (hopIndex == (payInvoiceResponse.payment_route.hops.length - 1)) - span (Destination) - - .card-body - .mb-3.border-bottom.pb-3 - .fw-bold.mb-2 Node - - +nodeCard(hop.pub_key) - - - .mb-2 - .fw-bold Channel - - +channelId(hop.chan_id, true) - - div - .fw-bold Fees - - if (parseInt(hop.fee_msat) > 0) - span.text-danger + - +btcValue(hop.fee_msat, "msat", "msat") - - else - span.text-success 0 - - if (false) - pre - code.json #{JSON.stringify(payInvoiceResponse, null, 4)} - - if (decodedInvoice) - +pageTabs(["Summary", "JSON"]) - - .tab-content - +pageTab("Summary", true) - +contentSection("Invoice Details") - +summaryRow(2) - +summaryItem("Destination") - .d-flex.justify-content-center - .text-start - +card - +nodeCard(decodedInvoice.destination) - - +summaryItem("Description") - if (decodedInvoice.description) - span #{decodedInvoice.description} - else - span - - - - hr.my-4 - - +summaryRow(3 + (decodedInvoice.payment_addr ? 1 : 0)) - +summaryItem("Amount") - +btcValue(decodedInvoice.num_satoshis) - - - +summaryItem("Date") - +date(decodedInvoice.timestamp, "detail", true) - - - +summaryItem("Payment Hash") - | #{utils.ellipsizeMiddle(decodedInvoice.payment_hash, 14)} - +copyTextButton(decodedInvoice.payment_hash) - - - if (decodedInvoice.payment_addr) - +summaryItem("Payment Address", null, "hex") - - let payment_addr_hex = utils.formatBuffer(decodedInvoice.payment_addr, "hex"); - - | #{utils.ellipsizeMiddle(payment_addr_hex, 14)} - +copyTextButton(payment_addr_hex) - - - hr.my-4 - - - form(method="post") - input(type="hidden", name="invoice", value=invoice) - - button.btn.btn-primary(type="submit") - i.fas.fa-receipt.me-2 - span Pay Invoice + title Pay Invoice + + if (decodedInvoice) + script. + var countDownDate = new Date(#{parseInt(decodedInvoice.timestamp)} * 1000 + #{decodedInvoice.expiry} * 1000).getTime(); + + // Update the count down every 1 second + var x = setInterval(function() { + // Get todays date and time + var now = new Date().getTime(); + + // Find the distance between now and the count down date + var distance = countDownDate - now; + + // Time calculations for days, hours, minutes and seconds + var days = Math.floor(distance / (1000 * 60 * 60 * 24)); + var hours = Math.floor((distance % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60)); + var minutes = Math.floor((distance % (1000 * 60 * 60)) / (1000 * 60)); + var seconds = Math.floor((distance % (1000 * 60)) / 1000); + + // Display the result in the element with id="demo" + var str = ""; + if (days > 0) { + str += (days + "d "); + } + if (hours > 0) { + str += (hours + "h "); + } + + str += minutes + "m "; + str += seconds + "s"; + + document.getElementById("expiry-text").innerHTML = str; + + // If the count down is finished, write some text + if (distance < 0) { + clearInterval(x); + document.getElementById("expiry-text").innerHTML = "Expired"; + document.getElementById("expiry-text").className += "text-danger"; + } + }, 1000); +block content + +pageTitle("Pay Invoice") + + if (!session.admin) + - var loginRequiredNote = "allow you to pay an invoice from your LND node."; + include includes/login-required-alert.pug + + else + if (payInvoiceResponse) + if (payInvoiceResponse.payment_error != "") + .alert.alert-danger + h3.h5 Failed to Pay Invoice + + .mb-3 Error: #{ payInvoiceResponse.payment_error } + + span Details + pre + code.json #{ JSON.stringify(payInvoiceResponse, null, 4) } + else + .alert.alert-success + h3.h6 Payment Sent + + .mb-3 + - var dest_pubkey = payInvoiceResponse.payment_route.hops[payInvoiceResponse.payment_route.hops.length - 1].pub_key; + span Your payment of + span + +btcValue(payInvoiceResponse.payment_route.total_amt) + + span was sent to + span #{ dest_pubkey.substring(0, config.site.pubkeyMaxDisplayLength) } + span in + span #{ parseInt(payInvoiceResponse.payment_route.hops.length).toLocaleString() } hop + if (payInvoiceResponse.payment_route.hops.length != 1) + span s + span . You paid + span + +btcValue(payInvoiceResponse.payment_route.total_fees_msat, "msat", "msat") + + span in fees. - - +pageTab("JSON") - - let obj = decodedInvoice; - if (obj.payment_addr) - - obj.payment_addr_hex = utils.formatBuffer(obj.payment_addr, "hex"); - - obj.payment_addr_base64 = utils.formatBuffer(obj.payment_addr, "base64"); - - delete obj.payment_addr; - - +contentSection("decodedInvoice") - pre - code.json #{JSON.stringify(decodedInvoice, null, 4)} + .d-flex + .card.text-body.shadow-sm.me-3 + .card-header + h3.h6.mb-0.fw-light + i.fas.fa-play-circle.me-2.fa-lg + span Origin + + .card-body + .fw-bold.mb-2 Node + + +nodeCard(lndRpc.internal_pubkey) + + each hop, hopIndex in payInvoiceResponse.payment_route.hops + .card.text-body.shadow-sm.me-3 + .card-header + h3.h6.fw-light.mb-0 + if (hopIndex == (payInvoiceResponse.payment_route.hops.length - 1)) + i.fas.fa-check-circle.me-2.fa-lg + else + i.fas.fa-arrow-circle-right.me-2.fa-lg + + span Hop ##{ (hopIndex + 1).toLocaleString() } + + if (hopIndex == (payInvoiceResponse.payment_route.hops.length - 1)) + span (Destination) + + .card-body + .mb-3.border-bottom.pb-3 + .fw-bold.mb-2 Node + + +nodeCard(hop.pub_key) + + .mb-2 + .fw-bold Channel + + +channelId(hop.chan_id, true) + + div + .fw-bold Fees + + if (parseInt(hop.fee_msat) > 0) + span.text-danger + + +btcValue(hop.fee_msat, "msat", "msat") + + else + span.text-success 0 + + if (false) + pre + code.json #{ JSON.stringify(payInvoiceResponse, null, 4) } + + if (decodedInvoice) + +pageTabs(["Summary", "JSON"]) + + .tab-content + +pageTab("Summary", true) + +contentSection("Invoice Details") + +summaryRow(2) + +summaryItem("Destination") + .d-flex.justify-content-center + .text-start + +card + +nodeCard(decodedInvoice.destination) + + +summaryItem("Description") + if (decodedInvoice.description) + span #{ decodedInvoice.description } + else + span - + + hr.my-4 + + +summaryRow(3 + (decodedInvoice.payment_addr ? 1 : 0)) + +summaryItem("Amount") + +btcValue(decodedInvoice.num_satoshis) + + +summaryItem("Date") + +date(decodedInvoice.timestamp, "detail", true) + + +summaryItem("Payment Hash") + | #{ utils.ellipsizeMiddle(decodedInvoice.payment_hash, 14) } + +copyTextButton(decodedInvoice.payment_hash) + + if (decodedInvoice.payment_addr) + +summaryItem("Payment Address", null, "hex") + - let payment_addr_hex = utils.formatBuffer(decodedInvoice.payment_addr, "hex"); + + | #{ utils.ellipsizeMiddle(payment_addr_hex, 14) } + +copyTextButton(payment_addr_hex) + + hr.my-4 + + form(method="post") + input(type="hidden", name="invoice", value=invoice) + + button.btn.btn-primary(type="submit") + i.fas.fa-receipt.me-2 + span Pay Invoice + + +pageTab("JSON") + - let obj = decodedInvoice; + if (obj.payment_addr) + - obj.payment_addr_hex = utils.formatBuffer(obj.payment_addr, "hex"); + - obj.payment_addr_base64 = utils.formatBuffer(obj.payment_addr, "base64"); + - delete obj.payment_addr; - - + +contentSection("decodedInvoice") + pre + code.json #{ JSON.stringify(decodedInvoice, null, 4) } - else - form(method="get") - .mb-3 - label.form-label(for="invoice") Encoded Payment Request / Invoice - textarea.form-control.form-control-lg(rows="4" id="invoice" name="invoice") + else + form(method="get") + .mb-3 + label.form-label(for="invoice") Encoded Payment Request / Invoice + textarea#invoice.form-control.form-control-lg( + rows="4", + name="invoice" + ) - button.btn.btn-primary(type="submit") - i.fas.fa-file-alt.me-2 - span Decode + button.btn.btn-primary(type="submit") + i.fas.fa-file-alt.me-2 + span Decode diff --git a/views/payment-history.pug b/views/payment-history.pug index d9d257c..c4dbb37 100644 --- a/views/payment-history.pug +++ b/views/payment-history.pug @@ -1,133 +1,137 @@ extends layout block headContent - title Payment History + title Payment History block breadcrumb - li.breadcrumb-item - a(href='/') Home - li.breadcrumb-item Lightning Payments - li.breadcrumb-item Payments Sent - -block content - if (!session.admin) - +pageTitle("Payments Sent") - - - var loginRequiredNote = "display details about this node's outgoing payments."; - include includes/login-required-alert.pug - - else - - +pageTitle(`${allPayments.length.toLocaleString()} Payment${(allPayments.length == 1) ? "" : "s"}`) - if (allFilteredPayments.length < allPayments.length) - small.text-muted (showing #{allFilteredPayments.length.toLocaleString()}) - - - +card - +filterList - +filterItem - - var sortOptions = [["Date", "date-desc"], ["Value", "value-desc"], ["Destination", "dest-desc"]]; - - +filterBtnGroup("Sort", null, sortOptions, `/payment-history?date=${date}&limit=${limit}`, "sort", sort) - - - +filterItem - - var createdFilterOptions = [["1h", "60-min"], ["24h", "24-hr"], ["7d", "7-day"], ["30d", "30-day"], ["All", "all"]]; - - +filterBtnGroup("Time", null, createdFilterOptions, `/payment-history?sort=${sort}&limit=${limit}`, "date", date) - - - +filterItem(true) - - var pageSizeOptions = [["20", "20"], ["50", "50"], ["100", "100"]]; - - +filterBtnGroup("Page Size", null, pageSizeOptions, `/payment-history?sort=${sort}&date=${date}`, "limit", limit) + li.breadcrumb-item + a(href="/") Home + li.breadcrumb-item Lightning Payments + li.breadcrumb-item Payments Sent +block content + if (!session.admin) + +pageTitle("Payments Sent") - hr.my-3 - - div - if (allFilteredPayments.length > limit) - span Showing - span.fw-bold ##{(offset + 1).toLocaleString()} - #{Math.min(offset + limit, allFilteredPayments.length).toLocaleString()} - span of - span.fw-bold #{allFilteredPayments.length.toLocaleString()} - if (allPayments.length > allFilteredPayments.length) - span filtered - span payment - if (allFilteredPayments.length != 1) - span s - - else if (allFilteredPayments.length > 0) - span Showing - span.fw-bold #{allFilteredPayments.length.toLocaleString()} - if (allPayments.length > allFilteredPayments.length) - span filtered - span payment - if (allFilteredPayments.length != 1) - span s - - else - .alert.alert-warning.shadow-sm.mb-0 No matching payments - - - +pagination(allFilteredPayments.length, limit, offset, paginationBaseUrl) - - - - if (true) - if (allFilteredPayments.length > 0) - each payment, paymentIndex in pagedFilteredPayments - include includes/payment-details-modal.pug - - .table-responsive - table.table.table-striped - thead - tr - th.text-end.fw-light # - th.text-end Value - th.text-end Fee - th Destination - - th Date - th Hash - - th.text-end Raw - - tbody - each payment, paymentIndex in pagedFilteredPayments - tr.word-wrap - th.text-end.fw-light #{(paymentIndex + offset + 1).toLocaleString()} - - if (false) - td - span(title=payment.payment_preimage, data-bs-toggle="tooltip") #{payment.payment_preimage.substring(0, 15)} - - td.text-end - +btcValue(new Decimal(payment.value_msat).dividedBy(1000)) + - var loginRequiredNote = "display details about this node's outgoing payments."; + include includes/login-required-alert.pug - td.text-end - +btcValue(payment.fee) + else + +pageTitle(`${allPayments.length.toLocaleString()} Payment${(allPayments.length == 1) ? "" : "s"}`) + if (allFilteredPayments.length < allPayments.length) + small.text-muted (showing #{ allFilteredPayments.length.toLocaleString() }) - td - //pre - // code.json #{JSON.stringify(payment.htlcs[0], null, 4)} - - var destinationNodePubkey = payment.htlcs[0].route.hops[payment.htlcs[0].route.hops.length - 1].pub_key; - - +nodeCard(destinationNodePubkey) + +card + +filterList + +filterItem + - var sortOptions = [["Date", "date-desc"], ["Value", "value-desc"], ["Destination", "dest-desc"]]; - + +filterBtnGroup("Sort", null, sortOptions, `/payment-history?date=${date}&limit=${limit}`, "sort", sort) - td - +date(payment.creation_date) + +filterItem + - var createdFilterOptions = [["1h", "60-min"], ["24h", "24-hr"], ["7d", "7-day"], ["30d", "30-day"], ["All", "all"]]; - - td - span.border-dotted(title=payment.payment_hash, data-bs-toggle="tooltip") #{utils.ellipsizeMiddle(payment.payment_hash, 10)} - +copyTextButton(payment.payment_hash) + +filterBtnGroup("Time", null, createdFilterOptions, `/payment-history?sort=${sort}&limit=${limit}`, "date", date) - - + +filterItem(true) + - var pageSizeOptions = [["20", "20"], ["50", "50"], ["100", "100"]]; + + +filterBtnGroup("Page Size", null, pageSizeOptions, `/payment-history?sort=${sort}&date=${date}`, "limit", limit) + + hr.my-3 + + div + if (allFilteredPayments.length > limit) + span. + Showing + #[span.fw-bold ##{ (offset + 1).toLocaleString() } - #{ Math.min(offset + limit, allFilteredPayments.length).toLocaleString() }] + of + #[span.fw-bold #{ allFilteredPayments.length.toLocaleString() }] + + if (allPayments.length > allFilteredPayments.length) + | filtered + + | + | payment + if (allFilteredPayments.length != 1) + | s + + else if (allFilteredPayments.length > 0) + span. + Showing + #[span.fw-bold #{ allFilteredPayments.length.toLocaleString() }] + + if (allPayments.length > allFilteredPayments.length) + | filtered + + | + | payment + if (allFilteredPayments.length != 1) + | s + + else + .alert.alert-warning.shadow-sm.mb-0 No matching payments + + +pagination(allFilteredPayments.length, limit, offset, paginationBaseUrl) + + if (true) + if (allFilteredPayments.length > 0) + each payment, paymentIndex in pagedFilteredPayments + include includes/payment-details-modal.pug + + .table-responsive + table.table.table-striped + thead + tr + th.text-end.fw-light # + th.text-end Value + th.text-end Fee + th Destination + + th Date + th Hash + + th.text-end Raw + + tbody + each payment, paymentIndex in pagedFilteredPayments + tr.word-wrap + th.text-end.fw-light #{ (paymentIndex + offset + 1).toLocaleString() } + + if (false) + td + span( + title=payment.payment_preimage, + data-bs-toggle="tooltip" + ) #{ payment.payment_preimage.substring(0, 15) } + + td.text-end + +btcValue(new Decimal(payment.value_msat).dividedBy(1000)) + + td.text-end + +btcValue(payment.fee) + + td + //pre + // code.json #{JSON.stringify(payment.htlcs[0], null, 4)} + - var destinationNodePubkey = payment.htlcs[0].route.hops[payment.htlcs[0].route.hops.length - 1].pub_key; + + +nodeCard(destinationNodePubkey) + + td + +date(payment.creation_date) - td.text-end - a.btn.btn-sm.btn-primary(href="javascript:void(0)" data-bs-toggle="modal" data-bs-target=("#paymentModal-" + paymentIndex)) - i.fas.fa-file-lines + td + span.border-dotted( + title=payment.payment_hash, + data-bs-toggle="tooltip" + ) #{ utils.ellipsizeMiddle(payment.payment_hash, 10) } + +copyTextButton(payment.payment_hash) + + td.text-end + a.btn.btn-sm.btn-primary( + href="javascript:void(0)", + data-bs-toggle="modal", + data-bs-target="#paymentModal-" + paymentIndex + ) + i.fas.fa-file-lines diff --git a/views/peers.pug b/views/peers.pug index d5bbbb1..bec2e87 100644 --- a/views/peers.pug +++ b/views/peers.pug @@ -1,154 +1,152 @@ extends layout block headContent - title My Peers + title My Peers block breadcrumb - li.breadcrumb-item - a(href='/') Home - li.breadcrumb-item My Node - li.breadcrumb-item My Peers - -block content - if (!session.admin) - +pageTitle("My Peers") - - - - var loginRequiredNote = "display details about this node's peers."; - include includes/login-required-alert.pug - - else - - +pageTitle(`${listPeers.peers.length.toLocaleString()} Peer${(listPeers.peers.length == 1) ? "" : "s"}`) - - - +card - +filterList - +filterItem - - var sortOptions = [["Public Key", "pubkey-asc"], ["Alias", "alias-asc"], ["IP Addr", "ip-asc"], ["Value Transferred", "valuetransfer-desc"], ["Data Transferred", "datatransfer-desc"]]; - - +filterBtnGroup("Sort", null, sortOptions, `/peers?limit=${limit}`, "sort", sort) - - - +filterItem(true) - - var pageSizeOptions = [["20", "20"], ["50", "50"], ["100", "100"]]; - - +filterBtnGroup("Page Size", null, pageSizeOptions, `/peers?sort=${sort}`, "limit", limit) - - - - hr.my-3 - - div - if (allFilteredPeers.length > limit) - span Showing - span.fw-bold ##{(offset + 1).toLocaleString()} - #{Math.min(offset + limit, allFilteredPeers.length).toLocaleString()} - span of - span.fw-bold #{allFilteredPeers.length.toLocaleString()} - if (allPeers.length > allFilteredPeers.length) - span filtered - span peer - if (allFilteredPeers.length != 1) - span s - - else if (allFilteredPeers.length > 0) - span Showing - span.fw-bold #{allFilteredPeers.length.toLocaleString()} - if (allPeers.length > allFilteredPeers.length) - span filtered - - span peer - if (allFilteredPeers.length > 1) - span s - else - .alert.alert-warning.shadow-sm.mb-0 No matching peers - - - +pagination(allFilteredPeers.length, limit, offset, paginationBaseUrl) - + li.breadcrumb-item + a(href="/") Home + li.breadcrumb-item My Node + li.breadcrumb-item My Peers +block content + if (!session.admin) + +pageTitle("My Peers") + - var loginRequiredNote = "display details about this node's peers."; + include includes/login-required-alert.pug - if (listPeers.peers.length > 0) - each item, item_index in pagedFilteredPeers - +modal(`peerModal-${item_index}`, `Peer ${item.pub_key}`) - pre - code.json #{JSON.stringify(item, null, 4)} + else + +pageTitle(`${listPeers.peers.length.toLocaleString()} Peer${(listPeers.peers.length == 1) ? "" : "s"}`) + + +card + +filterList + +filterItem + - var sortOptions = [["Public Key", "pubkey-asc"], ["Alias", "alias-asc"], ["IP Addr", "ip-asc"], ["Value Transferred", "valuetransfer-desc"], ["Data Transferred", "datatransfer-desc"]]; - .table-responsive - table.table.table-striped - thead.table-head-with-nav - tr - th.text-end.fw-light # - th Node - th Address + +filterBtnGroup("Sort", null, sortOptions, `/peers?limit=${limit}`, "sort", sort) - th.text-end - span.border-dotted(title="Total Inbound and Outbound Value Transfers", data-bs-toggle="tooltip") Transfer + +filterItem(true) + - var pageSizeOptions = [["20", "20"], ["50", "50"], ["100", "100"]]; - th.text-end Data Transfer - - th.text-center Inbound? - th.text-end Ping - th.text-end Raw + +filterBtnGroup("Page Size", null, pageSizeOptions, `/peers?sort=${sort}`, "limit", limit) - tbody - each item, item_index in pagedFilteredPeers - tr - th.text-end.fw-light #{(item_index + offset + 1).toLocaleString()} + hr.my-3 - td - +nodeCard(item.pub_key) + div + if (allFilteredPeers.length > limit) + span. + Showing + #[span.fw-bold ##{ (offset + 1).toLocaleString() } - #{ Math.min(offset + limit, allFilteredPeers.length).toLocaleString() }] + of + #[span.fw-bold #{ allFilteredPeers.length.toLocaleString() }] - td - +netAddress(item.address) - + if (allPeers.length > allFilteredPeers.length) + | filtered - td - - let valueReceived = new Decimal(item.sat_recv || 0); - - let valueSent = new Decimal(item.sat_sent || 0); + | + | peer + if (allFilteredPeers.length != 1) + | s - if (valueReceived != null && (valueReceived > 0 || valueSent > 0)) - .text-end.fs-90 - if (valueReceived && valueReceived > 0) - .text-success - | + - +btcValue(valueReceived) - - if (valueSent && valueSent > 0) - .text-danger - | - - +btcValue(valueSent) - - else - .text-end - - - - - - - var bytesSentData = utils.formatLargeNumber(item.bytes_sent, 1); - - var bytesRecvData = utils.formatLargeNumber(item.bytes_recv, 1); - - td.text-end - span #{bytesSentData[0]} #{bytesSentData[1].abbreviation}B - i.fas.fa-arrow-up.ms-2 - - br - - span #{bytesRecvData[0]} #{bytesRecvData[1].abbreviation}B - i.fas.fa-arrow-down.ms-2 - - - - - td.text-center.align-middle - if (item.inbound) - i.fas.fa-circle-check.text-success - else - i.fas.fa-circle-xmark.text-danger - - td.text-end #{parseInt(item.ping_time).toLocaleString()} - - td.text-end - a.btn.btn-sm.btn-primary(href="javascript:void(0)" data-bs-toggle="modal" data-bs-target=("#peerModal-" + item_index)) - i.fas.fa-file-lines \ No newline at end of file + else if (allFilteredPeers.length > 0) + span. + Showing + #[span.fw-bold #{ allFilteredPeers.length.toLocaleString() }] + + if (allPeers.length > allFilteredPeers.length) + | filtered + + | + | peer + if (allFilteredPeers.length > 1) + | s + + else + .alert.alert-warning.shadow-sm.mb-0 No matching peers + + +pagination(allFilteredPeers.length, limit, offset, paginationBaseUrl) + + if (listPeers.peers.length > 0) + each item, item_index in pagedFilteredPeers + +modal(`peerModal-${item_index}`, `Peer ${item.pub_key}`) + pre + code.json #{ JSON.stringify(item, null, 4) } + + .table-responsive + table.table.table-striped + thead.table-head-with-nav + tr + th.text-end.fw-light # + th Node + th Address + + th.text-end + span.border-dotted( + title="Total Inbound and Outbound Value Transfers", + data-bs-toggle="tooltip" + ) Transfer + + th.text-end Data Transfer + + th.text-center Inbound? + th.text-end Ping + th.text-end Raw + + tbody + each item, item_index in pagedFilteredPeers + tr + th.text-end.fw-light #{ (item_index + offset + 1).toLocaleString() } + + td + +nodeCard(item.pub_key) + + td + +netAddress(item.address) + + td + - let valueReceived = new Decimal(item.sat_recv || 0); + - let valueSent = new Decimal(item.sat_sent || 0); + + if (valueReceived != null && (valueReceived > 0 || valueSent > 0)) + .text-end.fs-90 + if (valueReceived && valueReceived > 0) + .text-success + | + + +btcValue(valueReceived) + + if (valueSent && valueSent > 0) + .text-danger + | - + +btcValue(valueSent) + + else + .text-end - + + - var bytesSentData = utils.formatLargeNumber(item.bytes_sent, 1); + - var bytesRecvData = utils.formatLargeNumber(item.bytes_recv, 1); + + td.text-end + span #{ bytesSentData[0] } #{ bytesSentData[1].abbreviation }B + i.fas.fa-arrow-up.ms-2 + + br + + span #{ bytesRecvData[0] } #{ bytesRecvData[1].abbreviation }B + i.fas.fa-arrow-down.ms-2 + + td.text-center.align-middle + if (item.inbound) + i.fas.fa-circle-check.text-success + else + i.fas.fa-circle-xmark.text-danger + + td.text-end #{ parseInt(item.ping_time).toLocaleString() } + + td.text-end + a.btn.btn-sm.btn-primary( + href="javascript:void(0)", + data-bs-toggle="modal", + data-bs-target="#peerModal-" + item_index + ) + i.fas.fa-file-lines diff --git a/views/query-route.pug b/views/query-route.pug index 02bd95f..778cf0e 100644 --- a/views/query-route.pug +++ b/views/query-route.pug @@ -1,156 +1,148 @@ extends layout block headContent - title Query Route + title Query Route block breadcrumb - li.breadcrumb-item - a(href='/') Home - li.breadcrumb-item Tools - li.breadcrumb-item Query Route - -block content - +pageTitle("Query Route") - - - if (!session.admin) - - var loginRequiredNote = "allow you to query lightning payment routes through the network."; - include includes/login-required-alert.pug - - else - - form(method="post") - .mb-3 - label.form-label(for="pubkey") Target Node Public Key - input.form-control.form-control-lg(id="pubkey" name="pubkey" type="text" value=pubkey) - - if (pubkey) - .d-flex - div - label.form-label(for="pubkey") Remote Node - +card - +nodeCard(pubkey) - - .d-flex - .mb-3 - label.form-label(for="amount") Amount - .input-group - input.form-control.form-control-lg(type="number" id="amount" name="amountSat" value=amountSat) - - .input-group-text sat - - button.btn.btn-primary(type="submit") - i.fas.fa-route.me-2 - span Query Route - - - - if (queryRouteError) - hr.my-3 - - .alert.alert-warning.shadow-sm - h3.h6 No Route Found - - if (queryRouteError != null && queryRouteError.details) - span.text-capitalize #{queryRouteError.details} - - if (false) - pre - code.json #{JSON.stringify(queryRouteError, null, 4)} - - else if (queryRouteResponse) - hr.my-3 - - if (false) - pre - code.json #{JSON.stringify(queryRouteResponse, null, 4)} - - .alert.alert-success.shadow-sm Route Found - - - var route = queryRouteResponse.routes[0]; - - +contentSection("Summary") - +summaryRow(4) - +summaryItem("Total Cost", "The total amount to be transferred in milli-satoshis (the native unit on the lightning network), followed by the amount in your chosen unit") - +btcValue(route.total_amt_msat, "msat", "msat") + li.breadcrumb-item + a(href="/") Home + li.breadcrumb-item Tools + li.breadcrumb-item Query Route - br - span.text-muted.fs-75 - | ( - +btcValue(new Decimal(route.total_amt_msat).dividedBy(1000)) - | ) - - - +summaryItem("Total Fees") - if (parseInt(route.total_fees_msat) > 0) - span.text-danger - +btcValue(route.total_fees_msat, "msat", "msat") - - else - span.text-success 0 - - - +summaryItem("Total Timelock") - | #{route.total_time_lock.toLocaleString()} - - - +summaryItem("Hops") - | #{route.hops.length.toLocaleString()} - - - - - +sectionTitle("Details") - .d-flex.flex-wrap.mb-n3 - .card.text-body.shadow-sm.me-3.mb-3 - .card-header - h3.h6.mb-0 - i.fas.fa-play-circle.me-2.fa-lg.text-primary - span Origin - .card-body - .fw-bold.mb-2 Node - - +nodeCard(lndRpc.internal_pubkey) - - - each hop, hopIndex in route.hops - - .card.text-body.shadow-sm.me-3.mb-3 - .card-header - h3.h6.mb-0 - if (hopIndex == (route.hops.length - 1)) - i.fas.fa-check-circle.me-2.fa-lg.text-success - else - i.fas.fa-arrow-circle-right.me-2.fa-lg.text-info - - if (hopIndex == (route.hops.length - 1)) - span Destination - span.text-muted.fs-80.ms-1 (Hop ##{(hopIndex + 1).toLocaleString()}) - - else - span Hop ##{(hopIndex + 1).toLocaleString()} - - - - .card-body - .mb-3.border-bottom.pb-3 - .fw-bold.mb-2 Node +block content + +pageTitle("Query Route") + + if (!session.admin) + - var loginRequiredNote = "allow you to query lightning payment routes through the network."; + include includes/login-required-alert.pug + + else + form(method="post") + .mb-3 + label.form-label(for="pubkey") Target Node Public Key + input#pubkey.form-control.form-control-lg( + name="pubkey", + type="text", + value=pubkey + ) + + if (pubkey) + .d-flex + div + label.form-label(for="pubkey") Remote Node + +card + +nodeCard(pubkey) + + .d-flex + .mb-3 + label.form-label(for="amount") Amount + .input-group + input#amount.form-control.form-control-lg( + type="number", + name="amountSat", + value=amountSat + ) + + .input-group-text sat + + button.btn.btn-primary(type="submit") + i.fas.fa-route.me-2 + span Query Route + + if (queryRouteError) + hr.my-3 + + .alert.alert-warning.shadow-sm + h3.h6 No Route Found + + if (queryRouteError != null && queryRouteError.details) + span.text-capitalize #{ queryRouteError.details } + + if (false) + pre + code.json #{ JSON.stringify(queryRouteError, null, 4) } + + else if (queryRouteResponse) + hr.my-3 + + if (false) + pre + code.json #{ JSON.stringify(queryRouteResponse, null, 4) } + + .alert.alert-success.shadow-sm Route Found + + - var route = queryRouteResponse.routes[0]; + + +contentSection("Summary") + +summaryRow(4) + +summaryItem("Total Cost", "The total amount to be transferred in milli-satoshis (the native unit on the lightning network), followed by the amount in your chosen unit") + +btcValue(route.total_amt_msat, "msat", "msat") + + br + span.text-muted.fs-75 + | ( + +btcValue(new Decimal(route.total_amt_msat).dividedBy(1000)) + | ) + + +summaryItem("Total Fees") + if (parseInt(route.total_fees_msat) > 0) + span.text-danger + +btcValue(route.total_fees_msat, "msat", "msat") + + else + span.text-success 0 + + +summaryItem("Total Timelock") + | #{ route.total_time_lock.toLocaleString() } + + +summaryItem("Hops") + | #{ route.hops.length.toLocaleString() } + + +sectionTitle("Details") + .d-flex.flex-wrap.mb-n3 + .card.text-body.shadow-sm.me-3.mb-3 + .card-header + h3.h6.mb-0 + i.fas.fa-play-circle.me-2.fa-lg.text-primary + span Origin + .card-body + .fw-bold.mb-2 Node + + +nodeCard(lndRpc.internal_pubkey) + + each hop, hopIndex in route.hops + .card.text-body.shadow-sm.me-3.mb-3 + .card-header + h3.h6.mb-0 + if (hopIndex == (route.hops.length - 1)) + i.fas.fa-check-circle.me-2.fa-lg.text-success + else + i.fas.fa-arrow-circle-right.me-2.fa-lg.text-info + + if (hopIndex == (route.hops.length - 1)) + span Destination + span.text-muted.fs-80.ms-1 (Hop ##{ (hopIndex + 1).toLocaleString() }) + + else + span Hop ##{ (hopIndex + 1).toLocaleString() } - +nodeCard(hop.pub_key) + .card-body + .mb-3.border-bottom.pb-3 + .fw-bold.mb-2 Node + +nodeCard(hop.pub_key) - .mb-2 - .fw-bold Channel + .mb-2 + .fw-bold Channel - +channelId(hop.chan_id, true) + +channelId(hop.chan_id, true) - div - .fw-bold Fees - - if (parseInt(hop.fee_msat) > 0) - span.text-danger + - +btcValue(hop.fee_msat, "msat", "msat") + div + .fw-bold Fees - else - span.text-success 0 + if (parseInt(hop.fee_msat) > 0) + span.text-danger + + +btcValue(hop.fee_msat, "msat", "msat") + else + span.text-success 0 diff --git a/views/search.pug b/views/search.pug index f29cd06..a120dd4 100644 --- a/views/search.pug +++ b/views/search.pug @@ -1,117 +1,110 @@ extends layout block headContent - title Search - #{query} + title Search - #{ query } block breadcrumb - li.breadcrumb-item - a(href='/') Home - - if (query) - li.breadcrumb-item - a(href='/search') Search - li.breadcrumb-item #{query} - else - li.breadcrumb-item Search - -block content - - +pageTitle("Search") - - - if (session.hideSearchNote) - // show nothing - else - .alert.alert-primary.alert-dismissible.shadow-sm(role="alert") - .mb-2 - .mb-2 Searching here will find all public nodes and/or channels visible to your node. It will match on public keys, aliases, addresses, colors, and channel ids. - span.fw-bold Important: - span Please be aware that the - span.fw-bold alias - span property can be set to any value by node owners - even to impersonate a person or company you might be familiar with. Use caution when evaluating nodes. - - div - a(href="/changeSetting?name=hideSearchNote&value=true") Don't show this note again - - - a.btn-close(href="/changeSetting?name=hideSearchNote&value=true", aria-label="Close", style="text-decoration: none;") - - - +contentSection("Query") - form(method="get") - .input-group - label.input-group-text(for="query") - i.fas.fa-search - - input.form-control.form-control-lg(id="query" type="text" name="query" value=query placeholder="public key, channel id, alias, color, or address") - - button.btn.btn-primary.btn-lg(type="submit") - span Search - - if (query) - hr.my-3 - - div - span Found - - span.fw-bold #{searchResults.nodes.length.toLocaleString()} - span.ms-1 node - if (searchResults.nodes.length != 1) - | s - - span.ms-1 and - - span.fw-bold #{searchResults.channels.length.toLocaleString()} - span.ms-1 channel - if (searchResults.channels.length != 1) - | s - - - - if (query) - - var hasNodes = false; - - var hasChannels = false; - - if (searchResults && searchResults.nodes && searchResults.nodes.length > 0) - - hasNodes = true; - - if (searchResults && searchResults.channels && searchResults.channels.length > 0) - - hasChannels = true; - - - - - let tabs = []; - - if (hasNodes) - - tabs.push(`Nodes (${searchResults.nodes.length.toLocaleString()})`) - - if (hasChannels) - - tabs.push(`Channels (${searchResults.channels.length.toLocaleString()})`) - - - if (tabs.length > 0) - - +pageTabs(tabs) - - - .tab-content - if (hasNodes) - +pageTab(tabs[0], true) - - - var nodeInfos = searchResults.nodes; - - var nodeTableIndexOffset = 0; - include includes/node-table.pug - - - if (hasChannels) - +pageTab(hasNodes ? tabs[1] : tabs[0], !hasNodes) - - - var channels = searchResults.channels; - - var channelTableIndexOffset = 0; - include includes/channel-table.pug - - - else - .alert.alert-warning.shadow-sm No results found for query: #{query} + li.breadcrumb-item + a(href="/") Home + if (query) + li.breadcrumb-item + a(href="/search") Search + li.breadcrumb-item #{ query } + else + li.breadcrumb-item Search +block content + +pageTitle("Search") + + if (session.hideSearchNote) + // show nothing + else + .alert.alert-primary.alert-dismissible.shadow-sm(role="alert") + .mb-2 + .mb-2 Searching here will find all public nodes and/or channels visible to your node. It will match on public keys, aliases, addresses, colors, and channel ids. + p. + #[span.fw-bold Important:] + Please be aware that the + #[span.fw-bold alias] + property can be set to any value by node owners - even to impersonate a person or company you might be familiar with. Use caution when evaluating nodes. + + div + a(href="/changeSetting?name=hideSearchNote&value=true") Don't show this note again + + a.btn-close( + href="/changeSetting?name=hideSearchNote&value=true", + aria-label="Close", + style="text-decoration: none" + ) + + +contentSection("Query") + form(method="get") + .input-group + label.input-group-text(for="query") + i.fas.fa-search + + input#query.form-control.form-control-lg( + type="text", + name="query", + value=query, + placeholder="public key, channel id, alias, color, or address" + ) + + button.btn.btn-primary.btn-lg(type="submit") + span Search + + if (query) + hr.my-3 + + div + span. + Found + #[span.fw-bold #{ searchResults.nodes.length.toLocaleString() }] + node + if (searchResults.nodes.length != 1) + | s + + span.ms-1. + and + #[span.fw-bold #{ searchResults.channels.length.toLocaleString() }] + channel + if (searchResults.channels.length != 1) + | s + + if (query) + - var hasNodes = false; + - var hasChannels = false; + + if (searchResults && searchResults.nodes && searchResults.nodes.length > 0) + - hasNodes = true; + + if (searchResults && searchResults.channels && searchResults.channels.length > 0) + - hasChannels = true; + + - let tabs = []; + + if (hasNodes) + - tabs.push(`Nodes (${searchResults.nodes.length.toLocaleString()})`); + + if (hasChannels) + - tabs.push(`Channels (${searchResults.channels.length.toLocaleString()})`); + + if (tabs.length > 0) + +pageTabs(tabs) + + .tab-content + if (hasNodes) + +pageTab(tabs[0], true) + - var nodeInfos = searchResults.nodes; + - var nodeTableIndexOffset = 0; + include includes/node-table.pug + + if (hasChannels) + +pageTab(hasNodes ? tabs[1] : tabs[0], !hasNodes) + - var channels = searchResults.channels; + - var channelTableIndexOffset = 0; + include includes/channel-table.pug + + else + .alert.alert-warning.shadow-sm No results found for query: #{ query } diff --git a/views/send-payment.pug b/views/send-payment.pug index f89c08e..8b2f34c 100644 --- a/views/send-payment.pug +++ b/views/send-payment.pug @@ -1,63 +1,68 @@ extends layout4 block headContent - title Send Payment + title Send Payment block breadcrumb - li.breadcrumb-item - a(href='/') Home - li.breadcrumb-item Tools - li.breadcrumb-item Send Payment - + li.breadcrumb-item + a(href="/") Home + li.breadcrumb-item Tools + li.breadcrumb-item Send Payment + block content - h1.h3 Send Payment - hr - - if (!session.admin) - - var loginRequiredNote = "allow you to create a new invoice."; - include includes/login-required-alert.pug - - else - - if (sendPaymentResponse != null) - .alert.alert-success - h3.h5 Success - - .mb-3 Payment sent successfully - - if (true) - pre - code.json #{JSON.stringify(sendPaymentResponse, null, 4)} - - if (sendPaymentError != null) - .alert.alert-danger - h3.h5 Error - - .mb-3 Error sending payment - - if (true) - pre - code.json #{JSON.stringify(sendPaymentError, null, 4)} - - form(method="post") - .mb-3 - label.form-label(for="memo") Target Node Public Key - input.form-control.form-control-lg(type="text" id="destPubkey" name="destPubkey" value=destPubkey) - - if (destPubkey) - .card.mb-3.bg-light - .card-body - +nodeCard(destPubkey) - - .row - .col-md-2 - .mb-3 - label.form-label(for="amount") Amount - .input-group - input.form-control.form-control-lg(type="number" id="amount" name="amountSat" value=amountSat) - - .input-group-text sat - - button(type="submit", class="btn btn-primary") Send Payment - - \ No newline at end of file + h1.h3 Send Payment + hr + + if (!session.admin) + - var loginRequiredNote = "allow you to create a new invoice."; + include includes/login-required-alert.pug + + else + if (sendPaymentResponse != null) + .alert.alert-success + h3.h5 Success + + .mb-3 Payment sent successfully + + if (true) + pre + code.json #{ JSON.stringify(sendPaymentResponse, null, 4) } + + if (sendPaymentError != null) + .alert.alert-danger + h3.h5 Error + + .mb-3 Error sending payment + + if (true) + pre + code.json #{ JSON.stringify(sendPaymentError, null, 4) } + + form(method="post") + .mb-3 + label.form-label(for="memo") Target Node Public Key + input#destPubkey.form-control.form-control-lg( + type="text", + name="destPubkey", + value=destPubkey + ) + + if (destPubkey) + .card.mb-3.bg-light + .card-body + +nodeCard(destPubkey) + + .row + .col-md-2 + .mb-3 + label.form-label(for="amount") Amount + .input-group + input#amount.form-control.form-control-lg( + type="number", + name="amountSat", + value=amountSat + ) + + .input-group-text sat + + button.btn.btn-primary(type="submit") Send Payment diff --git a/views/setup.pug b/views/setup.pug index a1a91e0..5b170fc 100644 --- a/views/setup.pug +++ b/views/setup.pug @@ -1,30 +1,30 @@ extends layout block headContent - title Setup + title Setup block breadcrumb - li.breadcrumb-item Setup - li.breadcrumb-item Set Admin Password - -block content + li.breadcrumb-item Setup + li.breadcrumb-item Set Admin Password - +pageTitle("Setup » Set Admin Password") - - - - var setupStep = 1; - include includes/setup-directions-alert.pug +block content + +pageTitle("Setup » Set Admin Password") + - var setupStep = 1; + include includes/setup-directions-alert.pug - form(method="post" action="/setup") - .mb-3 - label.form-label(for="password") Admin Password - input.form-control(id="password" name="password" type="password") + form(method="post", action="/setup", autocomplete="off") + .mb-3 + label.form-label(for="password") Admin Password + input#password.form-control(name="password", type="password") - .mb-3 - label.form-label(for="passwordConfirmation") Repeat Password - input.form-control(id="passwordConfirmation" name="passwordConfirmation" type="password") + .mb-3 + label.form-label(for="passwordConfirmation") Repeat Password + input#passwordConfirmation.form-control( + name="passwordConfirmation", + type="password" + ) - button.btn.btn-primary(type="submit") - i.fas.fa-key.me-2 - span Set Password + button.btn.btn-primary(type="submit") + i.fas.fa-key.me-2 + span Set Password diff --git a/views/sign-verify.pug b/views/sign-verify.pug index ee2e042..cf1fd1f 100644 --- a/views/sign-verify.pug +++ b/views/sign-verify.pug @@ -1,78 +1,81 @@ extends layout block headContent - title Sign or Verify + title Sign or Verify block breadcrumb - li.breadcrumb-item - a(href='/') Home - li.breadcrumb-item Tools - li.breadcrumb-item Sign or Verify - -block content - +pageTitle("Sign or Verify") - - - if (!session.admin) - - var loginRequiredNote = "allow you to sign and verify messages."; - include includes/login-required-alert.pug - - else - - if (signMessageResponse) - if (signMessageResponse.signature) - .alert.alert-success - h3.h6 Success - - span Message signed successfully - - else - .alert.alert-danger - h3.h6 Message Signing Failed - - if (false) - pre - code.json #{JSON.stringify(signMessageResponse, null, 4)} - - if (verifyMessageResponse) - if (verifyMessageResponse.valid) - .alert.alert-success - h3.h6 Signature Verified - - span Message signature verified, using public key - span.fw-bold #{verifyMessageResponse.pubkey} - span . + li.breadcrumb-item + a(href="/") Home + li.breadcrumb-item Tools + li.breadcrumb-item Sign or Verify - else - .alert.alert-danger - h3.h6 Signature Verification Failed - - span Invalid signature - - if (false) - pre - code.json #{JSON.stringify(verifyMessageResponse, null, 4)} - - form(method="post") - .mb-3 - label.form-label(for="msg") Message - input.form-control.form-control-lg(id="msg" name="msg" type="text" value=msg) - - .mb-3 - label.form-label(for="signature") Signature - - .d-flex - input.form-control.form-control-lg(id="signature" name="signature" type="text" value=signature) - - if (signature) - .fs-4.ms-3 - +copyTextButton(signature) - - small.text-muted Signature to verify, or leave blank to generate a new signature - - - - button.btn.btn-primary(type="submit") - i.fas.fa-pen-nib.me-2 - span Sign / Verify - \ No newline at end of file +block content + +pageTitle("Sign or Verify") + + if (!session.admin) + - var loginRequiredNote = "allow you to sign and verify messages."; + include includes/login-required-alert.pug + + else + if (signMessageResponse) + if (signMessageResponse.signature) + .alert.alert-success + h3.h6 Success + + span Message signed successfully + + else + .alert.alert-danger + h3.h6 Message Signing Failed + + if (false) + pre + code.json #{ JSON.stringify(signMessageResponse, null, 4) } + + if (verifyMessageResponse) + if (verifyMessageResponse.valid) + .alert.alert-success + h3.h6 Signature Verified + + span Message signature verified, using public key + span.fw-bold #{ verifyMessageResponse.pubkey } + span . + + else + .alert.alert-danger + h3.h6 Signature Verification Failed + + span Invalid signature + + if (false) + pre + code.json #{ JSON.stringify(verifyMessageResponse, null, 4) } + + form(method="post", autocomplete="off") + .mb-3 + label.form-label(for="msg") Message + input#msg.form-control.form-control-lg( + name="msg", + type="text", + value=msg + ) + + .mb-3 + label.form-label(for="signature") Signature + + .d-flex + input#signature.form-control.form-control-lg( + name="signature", + type="text", + value=signature + ) + + if (signature) + .fs-4.ms-3 + +copyTextButton(signature) + + small.text-muted Signature to verify, or leave blank to generate a new signature + + button.btn.btn-primary(type="submit") + i.fas.fa-pen-nib.me-2 + span Sign / Verify diff --git a/views/wallet.pug b/views/wallet.pug index 7440e52..b447213 100644 --- a/views/wallet.pug +++ b/views/wallet.pug @@ -1,254 +1,261 @@ extends layout block headContent - title My Wallet + title My Wallet block breadcrumb - li.breadcrumb-item - a(href='/') Home - li.breadcrumb-item My Node - li.breadcrumb-item My Wallet - -block content - if (!session.admin) - +pageTitle("My Wallet") - - - - var loginRequiredNote = "display details about this node's wallet."; - include includes/login-required-alert.pug - - else - - +pageTitle("My Wallet") - + li.breadcrumb-item + a(href="/") Home + li.breadcrumb-item My Node + li.breadcrumb-item My Wallet - - var unconfirmedTxCount = 0; - each tx, index in onChainTransactions.transactions - if (tx.num_confirmations == 0) - - unconfirmedTxCount++; - - - var confirmedTxCount = (onChainTransactions.transactions.length - unconfirmedTxCount); - - +contentSection("Summary") - +summaryRow(3 + ((walletBalance && walletBalance.unconfirmed_balance > 0) ? 1 : 0)) - - +summaryItem("Balance", "The value in your wallet that's not currently committed to any payment channels.") - if (walletBalance) - +btcValue(walletBalance.confirmed_balance) +block content + if (!session.admin) + +pageTitle("My Wallet") + + - var loginRequiredNote = "display details about this node's wallet."; + include includes/login-required-alert.pug + + else + +pageTitle("My Wallet") + + - var unconfirmedTxCount = 0; + each tx, index in onChainTransactions.transactions + if (tx.num_confirmations == 0) + - unconfirmedTxCount++; + + - var confirmedTxCount = onChainTransactions.transactions.length - unconfirmedTxCount; + + +contentSection("Summary") + +summaryRow(3 + ((walletBalance && walletBalance.unconfirmed_balance > 0) ? 1 : 0)) + +summaryItem("Balance", "The value in your wallet that's not currently committed to any payment channels.") + if (walletBalance) + +btcValue(walletBalance.confirmed_balance) + + else + span.border-dotted.text-warning( + title="Failed to get wallet balance. See the Error Log for possible details.", + data-bs-toggle="tooltip" + ) Unknown + + if (walletBalance && walletBalance.unconfirmed_balance > 0) + +summaryItem("Unconfirmed Balance", "The value in your wallet that's unconfirmed on the blockchain.") + +btcValue(walletBalance.unconfirmed_balance) + + +summaryItem("UTXOs", "Number of unspent transaction outputs.") + if (walletUtxosResponse) + span #{ walletUtxosResponse.utxos.length.toLocaleString() } + + else + span.border-dotted.text-warning( + title="Failed to get wallet UTXOs. See the Error Log for possible details.", + data-bs-toggle="tooltip" + ) Unknown + + +summaryItem("Transactions") + | #{ confirmedTxCount.toLocaleString() } + + +contentSection("Tools") + a.btn.btn-primary.me-0.me-lg-2.mb-2.mb-lg-0.d-block.d-lg-inline-block( + href="javascript:void(0)", + data-bs-toggle="modal", + data-bs-target="#newDepositAddressModal" + ) + i.fas.fa-qrcode.me-2 + span New Deposit Address... + a.btn.btn-primary.me-0.me-lg-2.mb-2.mb-lg-0.d-block.d-lg-inline-block( + href="javascript:void(0)", + data-bs-toggle="modal", + data-bs-target="#withdrawFundsModal" + ) + i.fas.fa-external-link-alt.me-2 + span Withdraw Funds... + + if (false) + pre + code.json.bg-light #{ JSON.stringify(walletUtxosResponse, null, 4) } + + if (walletUtxosResponse && walletUtxosResponse.utxos && walletUtxosResponse.utxos.length > 0) + +contentSection(`${walletUtxosResponse.utxos.length.toLocaleString()} UTXO${walletUtxosResponse.utxos.length == 1 ? "" : "s"}`) + each utxo, utxoIndex in walletUtxosResponse.utxos + - delete utxo.outpoint.txid_bytes; + + +modal("utxoModal-" + utxoIndex, `UTXO #${(utxoIndex + 1).toLocaleString()}`) + pre + code.json #{ JSON.stringify(utxo, null, 4) } + + .table-responsive + table.table.table-striped + thead + tr + th.text-end.fw-light # + + if (false) + th Type + + th + span.border-dotted( + title="The transaction ID [output index] for this UTXO.", + data-bs-toggle="tooltip" + ) Outpoint + + th Address + + if (false) + th Pubkey Script + + th.text-end Amount + + th.text-end Confirmations + + th.text-end Raw + + tbody + each utxo, utxoIndex in walletUtxosResponse.utxos + tr + th.text-end.fw-light #{ (utxoIndex + 1).toLocaleString() } + + if (false) + td #{ utxo.type } + + td + +btcTxid(utxo.outpoint.txid_str, 12) + + span [#{ utxo.outpoint.output_index }] + + td + +btcAddress(utxo.address) + + if (false) + td + +btcAddress(utxo.pk_script) + + td.text-end + +btcValue(utxo.amount_sat) + + td.text-end #{ parseInt(utxo.confirmations).toLocaleString() } + + td.text-end + a.btn.btn-sm.btn-primary( + href="javascript:void(0)", + data-bs-toggle="modal", + data-bs-target="#utxoModal-" + utxoIndex + ) + i.fas.fa-file-lines + + each tx, txIndex in onChainTransactions.transactions + +modal("txModal-" + tx.tx_hash, `Transaction ${tx.tx_hash}`) + pre + code.json #{ JSON.stringify(tx, null, 4) } + + - var totalTxCount = confirmedTxCount + unconfirmedTxCount; + if (totalTxCount > 0) + +contentSection(`${totalTxCount.toLocaleString()} Transaction${totalTxCount == 1 ? "" : "s"}`) + .table-responsive + table.table.table-striped + thead + tr + th.text-end.fw-light # + th Txid + + th + span.border-dotted( + title="If applicable, show the channel actions associated with the transaction.", + data-bs-toggle="tooltip" + ) Channel Actions + + th.text-end + if (false) + span Block / + br + span Confirmations - else - span.border-dotted.text-warning(title="Failed to get wallet balance. See the Error Log for possible details." data-bs-toggle="tooltip") Unknown + th Date + th.text-end Amount - if (walletBalance && walletBalance.unconfirmed_balance > 0) - +summaryItem("Unconfirmed Balance", "The value in your wallet that's unconfirmed on the blockchain.") - +btcValue(walletBalance.unconfirmed_balance) + th Addresses + th.text-end Raw - +summaryItem("UTXOs", "Number of unspent transaction outputs.") - if (walletUtxosResponse) - span #{walletUtxosResponse.utxos.length.toLocaleString()} + tbody + //- onChainTransactions.transactions.reverse(); + each tx, txIndex in onChainTransactions.transactions + tr + th.text-end.fw-light #{ (txIndex + 1).toLocaleString() } - else - span.border-dotted.text-warning(title="Failed to get wallet UTXOs. See the Error Log for possible details." data-bs-toggle="tooltip") Unknown + td + +btcTxid(tx.tx_hash, 12) + td + if (localChannels.byTxid[tx.tx_hash] != null) + .mb-1 + +pillBadgeSuccess("Opened Channel") - +summaryItem("Transactions") - | #{confirmedTxCount.toLocaleString()} + +channelId(localChannels.byTxid[tx.tx_hash].chan_id, true) - + else if (closedChannels.byTxid[tx.tx_hash] != null) + .mb-1 + +pillBadgeSuccess("Opened Channel") - +contentSection("Tools") - a.btn.btn-primary.me-0.me-lg-2.mb-2.mb-lg-0.d-block.d-lg-inline-block(href="javascript:void(0)" data-bs-toggle="modal" data-bs-target="#newDepositAddressModal") - i.fas.fa-qrcode.me-2 - span New Deposit Address... - a.btn.btn-primary.me-0.me-lg-2.mb-2.mb-lg-0.d-block.d-lg-inline-block(href="javascript:void(0)" data-bs-toggle="modal" data-bs-target="#withdrawFundsModal") - i.fas.fa-external-link-alt.me-2 - span Withdraw Funds... - + +channelId(closedChannels.byTxid[tx.tx_hash].chan_id, false) - if (false) - pre - code.json.bg-light #{JSON.stringify(walletUtxosResponse, null, 4)} - - if (walletUtxosResponse && walletUtxosResponse.utxos && walletUtxosResponse.utxos.length > 0) - +contentSection(`${walletUtxosResponse.utxos.length.toLocaleString()} UTXO${walletUtxosResponse.utxos.length == 1 ? "" : "s"}`) - each utxo, utxoIndex in walletUtxosResponse.utxos - - delete utxo.outpoint.txid_bytes; - - +modal("utxoModal-" + utxoIndex, `UTXO #${(utxoIndex + 1).toLocaleString()}`) - pre - code.json #{JSON.stringify(utxo, null, 4)} + else + - var channelClosedByTx = false; + each chan in closedChannels.channels + if (chan.closing_tx_hash == tx.tx_hash) + - channelClosedByTx = true; + .mb-1 + +pillBadgeDanger("Closed Channel") - .table-responsive - table.table.table-striped - thead - tr - th.text-end.fw-light # - - if (false) - th Type - - th - span.border-dotted(title="The transaction ID [output index] for this UTXO." data-bs-toggle="tooltip") Outpoint - - th Address - - if (false) - th Pubkey Script - - th.text-end Amount - - th.text-end Confirmations - - th.text-end Raw - - tbody - each utxo, utxoIndex in walletUtxosResponse.utxos - tr - th.text-end.fw-light #{(utxoIndex + 1).toLocaleString()} - - if (false) - td #{utxo.type} - - td - - +btcTxid(utxo.outpoint.txid_str, 12) - - span [#{utxo.outpoint.output_index}] + +channelId(chan.chan_id, false) - td - +btcAddress(utxo.address) - - if (false) - td - +btcAddress(utxo.pk_script) - - td.text-end - +btcValue(utxo.amount_sat) - - td.text-end #{parseInt(utxo.confirmations).toLocaleString()} - - - td.text-end - a.btn.btn-sm.btn-primary(href="javascript:void(0)" data-bs-toggle="modal" data-bs-target=("#utxoModal-" + utxoIndex)) - i.fas.fa-file-lines - - - - each tx, txIndex in onChainTransactions.transactions - +modal("txModal-" + tx.tx_hash, `Transaction ${tx.tx_hash}`) - pre - code.json #{JSON.stringify(tx, null, 4)} - - - - var totalTxCount = confirmedTxCount + unconfirmedTxCount; - if (totalTxCount > 0) - +contentSection(`${totalTxCount.toLocaleString()} Transaction${totalTxCount == 1 ? "" : "s"}`) - .table-responsive - table.table.table-striped - thead - tr - th.text-end.fw-light # - th Txid - - th - span.border-dotted(title="If applicable, show the channel actions associated with the transaction.", data-bs-toggle="tooltip") Channel Actions - - - th.text-end - if (false) - span Block / - br - span Confirmations - - th Date - - th.text-end Amount - - th Addresses - - th.text-end Raw - - - tbody - //- onChainTransactions.transactions.reverse(); - each tx, txIndex in onChainTransactions.transactions - tr - th.text-end.fw-light #{(txIndex + 1).toLocaleString()} - - td - +btcTxid(tx.tx_hash, 12) - - td - if (localChannels.byTxid[tx.tx_hash] != null) - .mb-1 - +pillBadgeSuccess("Opened Channel") - - +channelId(localChannels.byTxid[tx.tx_hash].chan_id, true) - - else if (closedChannels.byTxid[tx.tx_hash] != null) - .mb-1 - +pillBadgeSuccess("Opened Channel") - - +channelId(closedChannels.byTxid[tx.tx_hash].chan_id, false) - - else - - var channelClosedByTx = false; - each chan in closedChannels.channels - if (chan.closing_tx_hash == tx.tx_hash) - - channelClosedByTx = true; - .mb-1 - +pillBadgeDanger("Closed Channel") - - +channelId(chan.chan_id, false) + if (!channelClosedByTx) + span - - if (!channelClosedByTx) - span - + td.text-end + if (tx.num_confirmations > 0) + span #{ tx.num_confirmations.toLocaleString() } - td.text-end - if (tx.num_confirmations > 0) - span #{tx.num_confirmations.toLocaleString()} + else + span.text-warning Unconfirmed + + td + +date(tx.time_stamp) + + td.text-end + if (parseInt(tx.amount) > 0) + .text-success + span + + +btcValue(Math.abs(parseInt(tx.amount))) + + else if (parseInt(tx.amount) < 0) + .text-danger + span - + +btcValue(Math.abs(parseInt(tx.amount))) + else + span - + + td + each addr, addrIndex in tx.dest_addresses + div + +btcAddress(addr) + + td.text-end + a.btn.btn-sm.btn-primary( + href="javascript:void(0)", + data-bs-toggle="modal", + data-bs-target="#txModal-" + tx.tx_hash + ) + i.fas.fa-file-lines + + include includes/new-deposit-address-modal.pug + + include includes/withdraw-funds-modal.pug - else - span.text-warning Unconfirmed - - td - +date(tx.time_stamp) - - - td.text-end - if (parseInt(tx.amount) > 0) - .text-success - span + - +btcValue(Math.abs(parseInt(tx.amount))) - - else if (parseInt(tx.amount) < 0) - .text-danger - span - - +btcValue(Math.abs(parseInt(tx.amount))) - else - span - - - td - each addr, addrIndex in tx.dest_addresses - div - +btcAddress(addr) - - - td.text-end - a.btn.btn-sm.btn-primary(href="javascript:void(0)" data-bs-toggle="modal" data-bs-target=("#txModal-" + tx.tx_hash)) - i.fas.fa-file-lines - - - - include includes/new-deposit-address-modal.pug - - include includes/withdraw-funds-modal.pug - - if (false) - pre - code.json.bg-light #{JSON.stringify(walletBalance, null, 4)} + if (false) + pre + code.json.bg-light #{ JSON.stringify(walletBalance, null, 4) } - pre - code.json.bg-light #{JSON.stringify(channelBalance, null, 4)} \ No newline at end of file + pre + code.json.bg-light #{ JSON.stringify(channelBalance, null, 4) }