From d652a21f613753e7fb16d34a82aada43067cb5e1 Mon Sep 17 00:00:00 2001 From: Yannick Date: Mon, 19 Oct 2020 23:21:07 +0200 Subject: [PATCH 01/74] Let the fun begin --- config/app.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/config/app.php b/config/app.php index 7cde09f..3301c26 100644 --- a/config/app.php +++ b/config/app.php @@ -24,7 +24,7 @@ | */ - 'viv' => env('APP_VIV', '5.3.0'), + 'viv' => env('APP_VIV', '6.0.0-alpha.0'), /* |-------------------------------------------------------------------------- From b1f14070c644390bff374a4e1da9c68e88cf8d61 Mon Sep 17 00:00:00 2001 From: Yannick Date: Wed, 21 Oct 2020 21:02:18 +0200 Subject: [PATCH 02/74] [Core] Update dependencies --- composer.lock | 52 +++++++++++++++++++++++++-------------------------- 1 file changed, 26 insertions(+), 26 deletions(-) diff --git a/composer.lock b/composer.lock index e794e37..a8ae21f 100644 --- a/composer.lock +++ b/composer.lock @@ -437,22 +437,22 @@ }, { "name": "facade/flare-client-php", - "version": "1.3.6", + "version": "1.3.7", "source": { "type": "git", "url": "https://github.com/facade/flare-client-php.git", - "reference": "451fadf38e9f635e7f8e1f5b3cf5c9eb82f11799" + "reference": "fd688d3c06658f2b3b5f7bb19f051ee4ddf02492" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/facade/flare-client-php/zipball/451fadf38e9f635e7f8e1f5b3cf5c9eb82f11799", - "reference": "451fadf38e9f635e7f8e1f5b3cf5c9eb82f11799", + "url": "https://api.github.com/repos/facade/flare-client-php/zipball/fd688d3c06658f2b3b5f7bb19f051ee4ddf02492", + "reference": "fd688d3c06658f2b3b5f7bb19f051ee4ddf02492", "shasum": "" }, "require": { "facade/ignition-contracts": "~1.0", "illuminate/pipeline": "^5.5|^6.0|^7.0|^8.0", - "php": "^7.1", + "php": "^7.1|^8.0", "symfony/http-foundation": "^3.3|^4.1|^5.0", "symfony/mime": "^3.4|^4.0|^5.1", "symfony/var-dumper": "^3.4|^4.0|^5.0" @@ -494,7 +494,7 @@ "type": "github" } ], - "time": "2020-09-18T06:35:11+00:00" + "time": "2020-10-21T16:02:39+00:00" }, { "name": "facade/ignition", @@ -673,16 +673,16 @@ }, { "name": "filp/whoops", - "version": "2.8.0", + "version": "2.9.0", "source": { "type": "git", "url": "https://github.com/filp/whoops.git", - "reference": "fa50d9db1c0c2fae99cf988d27023effda5524a3" + "reference": "2ec31f3adc54c71a59c5e3c2143d7a0e2f8899f8" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/filp/whoops/zipball/fa50d9db1c0c2fae99cf988d27023effda5524a3", - "reference": "fa50d9db1c0c2fae99cf988d27023effda5524a3", + "url": "https://api.github.com/repos/filp/whoops/zipball/2ec31f3adc54c71a59c5e3c2143d7a0e2f8899f8", + "reference": "2ec31f3adc54c71a59c5e3c2143d7a0e2f8899f8", "shasum": "" }, "require": { @@ -730,7 +730,7 @@ "throwable", "whoops" ], - "time": "2020-10-17T09:00:00+00:00" + "time": "2020-10-20T12:00:00+00:00" }, { "name": "graham-campbell/result-type", @@ -1016,30 +1016,30 @@ }, { "name": "laravel/framework", - "version": "v8.10.0", + "version": "v8.11.2", "source": { "type": "git", "url": "https://github.com/laravel/framework.git", - "reference": "0c80950806cd1bc6d9a7068585a12c2bfa23bdf3" + "reference": "8d1f25fb8d124d5a24df9714ed8d481c43f9efe6" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laravel/framework/zipball/0c80950806cd1bc6d9a7068585a12c2bfa23bdf3", - "reference": "0c80950806cd1bc6d9a7068585a12c2bfa23bdf3", + "url": "https://api.github.com/repos/laravel/framework/zipball/8d1f25fb8d124d5a24df9714ed8d481c43f9efe6", + "reference": "8d1f25fb8d124d5a24df9714ed8d481c43f9efe6", "shasum": "" }, "require": { "doctrine/inflector": "^1.4|^2.0", - "dragonmantank/cron-expression": "^3.0", + "dragonmantank/cron-expression": "^3.0.2", "egulias/email-validator": "^2.1.10", "ext-json": "*", "ext-mbstring": "*", "ext-openssl": "*", "league/commonmark": "^1.3", - "league/flysystem": "^1.0.34", + "league/flysystem": "^1.1", "monolog/monolog": "^2.0", - "nesbot/carbon": "^2.17", - "opis/closure": "^3.5.3", + "nesbot/carbon": "^2.31", + "opis/closure": "^3.6", "php": "^7.3", "psr/container": "^1.0", "psr/simple-cache": "^1.0", @@ -1100,13 +1100,13 @@ "require-dev": { "aws/aws-sdk-php": "^3.0", "doctrine/dbal": "^2.6", - "filp/whoops": "^2.4", + "filp/whoops": "^2.8", "guzzlehttp/guzzle": "^6.5.5|^7.0.1", "league/flysystem-cached-adapter": "^1.0", - "mockery/mockery": "^1.3.1", + "mockery/mockery": "^1.4.2", "orchestra/testbench-core": "^6.0", "pda/pheanstalk": "^4.0", - "phpunit/phpunit": "^8.4|^9.0", + "phpunit/phpunit": "^8.5.8|^9.3.3", "predis/predis": "^1.1.1", "symfony/cache": "^5.1" }, @@ -1119,17 +1119,17 @@ "ext-pcntl": "Required to use all features of the queue worker.", "ext-posix": "Required to use all features of the queue worker.", "ext-redis": "Required to use the Redis cache and queue drivers (^4.0|^5.0).", - "filp/whoops": "Required for friendly error pages in development (^2.4).", + "filp/whoops": "Required for friendly error pages in development (^2.8).", "fzaninotto/faker": "Required to use the eloquent factory builder (^1.9.1).", "guzzlehttp/guzzle": "Required to use the HTTP Client, Mailgun mail driver and the ping methods on schedules (^6.5.5|^7.0.1).", "laravel/tinker": "Required to use the tinker console command (^2.0).", "league/flysystem-aws-s3-v3": "Required to use the Flysystem S3 driver (^1.0).", "league/flysystem-cached-adapter": "Required to use the Flysystem cache (^1.0).", "league/flysystem-sftp": "Required to use the Flysystem SFTP driver (^1.0).", - "mockery/mockery": "Required to use mocking (^1.3.1).", + "mockery/mockery": "Required to use mocking (^1.4.2).", "nyholm/psr7": "Required to use PSR-7 bridging features (^1.2).", "pda/pheanstalk": "Required to use the beanstalk queue driver (^4.0).", - "phpunit/phpunit": "Required to use assertions and run tests (^8.4|^9.0).", + "phpunit/phpunit": "Required to use assertions and run tests (^8.5.8|^9.3.3).", "predis/predis": "Required to use the predis connector (^1.1.2).", "psr/http-message": "Required to allow Storage::put to accept a StreamInterface (^1.0).", "pusher/pusher-php-server": "Required to use the Pusher broadcast driver (^4.0).", @@ -1175,7 +1175,7 @@ "framework", "laravel" ], - "time": "2020-10-13T14:20:53+00:00" + "time": "2020-10-20T20:12:53+00:00" }, { "name": "laravel/tinker", From 32837897137efbeb27f28c59505fc9bc1b820e6b Mon Sep 17 00:00:00 2001 From: Yannick Date: Wed, 21 Oct 2020 22:07:36 +0200 Subject: [PATCH 03/74] [Core] Update dependencies --- composer.json | 4 +- composer.lock | 354 +++++++++++++++++++++++++++++++++++++++++++++++++- 2 files changed, 356 insertions(+), 2 deletions(-) diff --git a/composer.json b/composer.json index c6128e8..8fe8e6c 100644 --- a/composer.json +++ b/composer.json @@ -6,6 +6,7 @@ "type": "project", "require": { "php": "^7.2.0", + "barryvdh/laravel-cors": "^2.0", "erusev/parsedown": "^1.7", "facade/ignition": "^2.3.6", "fideloper/proxy": "^4.0", @@ -14,7 +15,8 @@ "laravel/tinker": "^2.0", "laravel/ui": "^3.0", "spatie/laravel-feed": "^3.0", - "thujohn/twitter": "^2.2" + "thujohn/twitter": "^2.2", + "tymon/jwt-auth": "^1.0" }, "require-dev": { "filp/whoops": "^2.0", diff --git a/composer.lock b/composer.lock index a8ae21f..67f29a3 100644 --- a/composer.lock +++ b/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "df602a53835de9bbdfe9a95da0807042", + "content-hash": "57ad153f7f934c0c110e1e69199fa768", "packages": [ { "name": "atymic/tmhoauth", @@ -1295,6 +1295,71 @@ ], "time": "2020-09-11T15:34:08+00:00" }, + { + "name": "lcobucci/jwt", + "version": "3.3.3", + "source": { + "type": "git", + "url": "https://github.com/lcobucci/jwt.git", + "reference": "c1123697f6a2ec29162b82f170dd4a491f524773" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/lcobucci/jwt/zipball/c1123697f6a2ec29162b82f170dd4a491f524773", + "reference": "c1123697f6a2ec29162b82f170dd4a491f524773", + "shasum": "" + }, + "require": { + "ext-mbstring": "*", + "ext-openssl": "*", + "php": "^5.6 || ^7.0" + }, + "require-dev": { + "mikey179/vfsstream": "~1.5", + "phpmd/phpmd": "~2.2", + "phpunit/php-invoker": "~1.1", + "phpunit/phpunit": "^5.7 || ^7.3", + "squizlabs/php_codesniffer": "~2.3" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "3.1-dev" + } + }, + "autoload": { + "psr-4": { + "Lcobucci\\JWT\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "BSD-3-Clause" + ], + "authors": [ + { + "name": "Luís Otávio Cobucci Oblonczyk", + "email": "lcobucci@gmail.com", + "role": "Developer" + } + ], + "description": "A simple library to work with JSON Web Token and JSON Web Signature", + "keywords": [ + "JWS", + "jwt" + ], + "funding": [ + { + "url": "https://github.com/lcobucci", + "type": "github" + }, + { + "url": "https://www.patreon.com/lcobucci", + "type": "patreon" + } + ], + "time": "2020-08-20T13:22:28+00:00" + }, { "name": "league/commonmark", "version": "1.5.6", @@ -1607,6 +1672,69 @@ ], "time": "2020-07-23T08:41:23+00:00" }, + { + "name": "namshi/jose", + "version": "7.2.3", + "source": { + "type": "git", + "url": "https://github.com/namshi/jose.git", + "reference": "89a24d7eb3040e285dd5925fcad992378b82bcff" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/namshi/jose/zipball/89a24d7eb3040e285dd5925fcad992378b82bcff", + "reference": "89a24d7eb3040e285dd5925fcad992378b82bcff", + "shasum": "" + }, + "require": { + "ext-date": "*", + "ext-hash": "*", + "ext-json": "*", + "ext-pcre": "*", + "ext-spl": "*", + "php": ">=5.5", + "symfony/polyfill-php56": "^1.0" + }, + "require-dev": { + "phpseclib/phpseclib": "^2.0", + "phpunit/phpunit": "^4.5|^5.0", + "satooshi/php-coveralls": "^1.0" + }, + "suggest": { + "ext-openssl": "Allows to use OpenSSL as crypto engine.", + "phpseclib/phpseclib": "Allows to use Phpseclib as crypto engine, use version ^2.0." + }, + "type": "library", + "autoload": { + "psr-4": { + "Namshi\\JOSE\\": "src/Namshi/JOSE/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Alessandro Nadalin", + "email": "alessandro.nadalin@gmail.com" + }, + { + "name": "Alessandro Cinelli (cirpo)", + "email": "alessandro.cinelli@gmail.com" + } + ], + "description": "JSON Object Signing and Encryption library for PHP.", + "keywords": [ + "JSON Web Signature", + "JSON Web Token", + "JWS", + "json", + "jwt", + "token" + ], + "time": "2016-12-05T07:27:31+00:00" + }, { "name": "nesbot/carbon", "version": "2.41.3", @@ -3949,6 +4077,80 @@ ], "time": "2020-07-14T12:35:20+00:00" }, + { + "name": "symfony/polyfill-php56", + "version": "v1.18.1", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-php56.git", + "reference": "13df84e91cd168f247c2f2ec82cc0fa24901c011" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/polyfill-php56/zipball/13df84e91cd168f247c2f2ec82cc0fa24901c011", + "reference": "13df84e91cd168f247c2f2ec82cc0fa24901c011", + "shasum": "" + }, + "require": { + "php": ">=5.3.3", + "symfony/polyfill-util": "~1.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.18-dev" + }, + "thanks": { + "name": "symfony/polyfill", + "url": "https://github.com/symfony/polyfill" + } + }, + "autoload": { + "psr-4": { + "Symfony\\Polyfill\\Php56\\": "" + }, + "files": [ + "bootstrap.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony polyfill backporting some PHP 5.6+ features to lower PHP versions", + "homepage": "https://symfony.com", + "keywords": [ + "compatibility", + "polyfill", + "portable", + "shim" + ], + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2020-07-14T12:35:20+00:00" + }, { "name": "symfony/polyfill-php70", "version": "v1.18.1", @@ -4199,6 +4401,76 @@ ], "time": "2020-07-14T12:35:20+00:00" }, + { + "name": "symfony/polyfill-util", + "version": "v1.18.1", + "source": { + "type": "git", + "url": "https://github.com/symfony/polyfill-util.git", + "reference": "46b910c71e9828f8ec2aa7a0314de1130d9b295a" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/symfony/polyfill-util/zipball/46b910c71e9828f8ec2aa7a0314de1130d9b295a", + "reference": "46b910c71e9828f8ec2aa7a0314de1130d9b295a", + "shasum": "" + }, + "require": { + "php": ">=5.3.3" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.18-dev" + }, + "thanks": { + "name": "symfony/polyfill", + "url": "https://github.com/symfony/polyfill" + } + }, + "autoload": { + "psr-4": { + "Symfony\\Polyfill\\Util\\": "" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Nicolas Grekas", + "email": "p@tchwork.com" + }, + { + "name": "Symfony Community", + "homepage": "https://symfony.com/contributors" + } + ], + "description": "Symfony utilities for portability of PHP codes", + "homepage": "https://symfony.com", + "keywords": [ + "compat", + "compatibility", + "polyfill", + "shim" + ], + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2020-07-14T12:35:20+00:00" + }, { "name": "symfony/process", "version": "v5.1.7", @@ -4877,6 +5149,86 @@ "homepage": "https://github.com/tijsverkoyen/CssToInlineStyles", "time": "2020-07-13T06:12:54+00:00" }, + { + "name": "tymon/jwt-auth", + "version": "1.0.1", + "source": { + "type": "git", + "url": "https://github.com/tymondesigns/jwt-auth.git", + "reference": "b927137cd5bd4d2f5d48a1ca71bc85006b99dbae" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/tymondesigns/jwt-auth/zipball/b927137cd5bd4d2f5d48a1ca71bc85006b99dbae", + "reference": "b927137cd5bd4d2f5d48a1ca71bc85006b99dbae", + "shasum": "" + }, + "require": { + "illuminate/auth": "^5.2|^6|^7|^8", + "illuminate/contracts": "^5.2|^6|^7|^8", + "illuminate/http": "^5.2|^6|^7|^8", + "illuminate/support": "^5.2|^6|^7|^8", + "lcobucci/jwt": "^3.2", + "namshi/jose": "^7.0", + "nesbot/carbon": "^1.0|^2.0", + "php": "^5.5.9|^7.0" + }, + "require-dev": { + "illuminate/console": "^5.2|^6|^7|^8", + "illuminate/database": "^5.2|^6|^7|^8", + "illuminate/routing": "^5.2|^6|^7|^8", + "mockery/mockery": ">=0.9.9", + "phpunit/phpunit": "~4.8|~6.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-develop": "1.0-dev" + }, + "laravel": { + "aliases": { + "JWTAuth": "Tymon\\JWTAuth\\Facades\\JWTAuth", + "JWTFactory": "Tymon\\JWTAuth\\Facades\\JWTFactory" + }, + "providers": [ + "Tymon\\JWTAuth\\Providers\\LaravelServiceProvider" + ] + } + }, + "autoload": { + "psr-4": { + "Tymon\\JWTAuth\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Sean Tymon", + "email": "tymon148@gmail.com", + "homepage": "https://tymon.xyz", + "role": "Developer" + } + ], + "description": "JSON Web Token Authentication for Laravel and Lumen", + "homepage": "https://github.com/tymondesigns/jwt-auth", + "keywords": [ + "Authentication", + "JSON Web Token", + "auth", + "jwt", + "laravel" + ], + "funding": [ + { + "url": "https://www.patreon.com/seantymon", + "type": "patreon" + } + ], + "time": "2020-09-08T12:29:20+00:00" + }, { "name": "vlucas/phpdotenv", "version": "v5.2.0", From 983c1a6979ffbd6c7c0867d0687161464449dcb6 Mon Sep 17 00:00:00 2001 From: Yannick Date: Thu, 22 Oct 2020 21:32:11 +0200 Subject: [PATCH 04/74] Start implementing API --- app/Http/Controllers/Api/AuthController.php | 50 +++ .../Controllers/Api/MilestoneController.php | 68 ++++ app/Milestone.php | 4 + app/User.php | 17 +- config/auth.php | 2 +- config/jwt.php | 304 ++++++++++++++++++ routes/api.php | 7 + 7 files changed, 450 insertions(+), 2 deletions(-) create mode 100644 app/Http/Controllers/Api/AuthController.php create mode 100644 app/Http/Controllers/Api/MilestoneController.php create mode 100644 config/jwt.php diff --git a/app/Http/Controllers/Api/AuthController.php b/app/Http/Controllers/Api/AuthController.php new file mode 100644 index 0000000..c73e10d --- /dev/null +++ b/app/Http/Controllers/Api/AuthController.php @@ -0,0 +1,50 @@ + $request->email, + 'password' => $request->password, + ]); + + $token = auth()->login($user); + + return $this->respondWithToken($token); + } + + public function login() + { + $credentials = request(['email', 'password']); + $token = auth('api')->attempt($credentials); + + if (!$token) { + return response()->json(['error' => 'Unauthorized'], 401); + } + + return $this->respondWithToken($token); + } + + public function logout() + { + auth()->logout(); + + return response()->json(['message' => 'Successfully logged out']); + } + + protected function respondWithToken($token) + { + return response()->json([ + 'access_token' => $token, + 'token_type' => 'bearer', + 'expires_in' => auth('api')->factory()->getTTL() * 60 + ]); + } +} diff --git a/app/Http/Controllers/Api/MilestoneController.php b/app/Http/Controllers/Api/MilestoneController.php new file mode 100644 index 0000000..80dc53f --- /dev/null +++ b/app/Http/Controllers/Api/MilestoneController.php @@ -0,0 +1,68 @@ +json($milestones); + } + + /** + * Store a newly created resource in storage. + * + * @param \Illuminate\Http\Request $request + * @return \Illuminate\Http\Response + */ + public function store(Request $request) + { + // + } + + /** + * Display the specified resource. + * + * @param int $id + * @return \Illuminate\Http\Response + */ + public function show(Milestone $milestone) + { + $milestone = Milestone::with('releases')->findOrFail($milestone->id); + return response()->json($milestone); + } + + /** + * Update the specified resource in storage. + * + * @param \Illuminate\Http\Request $request + * @param int $id + * @return \Illuminate\Http\Response + */ + public function update(Request $request, $id) + { + // + } + + /** + * Remove the specified resource from storage. + * + * @param int $id + * @return \Illuminate\Http\Response + */ + public function destroy($id) + { + // + } +} diff --git a/app/Milestone.php b/app/Milestone.php index 81fda3b..3ce054b 100644 --- a/app/Milestone.php +++ b/app/Milestone.php @@ -14,6 +14,10 @@ class Milestone extends Model protected $fillable = ['id', 'osname', 'name', 'codename', 'version', 'color', 'preview', 'public', 'mainEol', 'mainXol', 'ltsEol', 'isLts', 'pcFast', 'pcSlow', 'pcReleasePreview', 'pcTargeted', 'pcBroad', 'pcLTS', 'xboxSkip', 'xboxFast', 'xboxSlow', 'xboxPreview', 'xboxReleasePreview', 'xboxTargeted', 'serverSlow', 'serverTargeted', 'serverLTS', 'iotSlow', 'iotTargeted', 'iotBroad', 'teamTargeted', 'teamBroad', 'holographicFast', 'holographicSlow', 'holographicTargeted', 'holographicBroad', 'holographicLTS', 'tenXSlow', 'sdk', 'iso']; + public function releases() { + return $this->hasMany(Release::class, 'milestone'); + } + public function getSupport() { $now = Carbon::now(); diff --git a/app/User.php b/app/User.php index 4ca33d9..9a5dcc2 100644 --- a/app/User.php +++ b/app/User.php @@ -5,8 +5,9 @@ use Illuminate\Notifications\Notifiable; use Illuminate\Contracts\Auth\MustVerifyEmail; use Illuminate\Foundation\Auth\User as Authenticatable; +use Tymon\JWTAuth\Contracts\JWTSubject; -class User extends Authenticatable +class User extends Authenticatable implements JWTSubject { use Notifiable; @@ -36,4 +37,18 @@ public function hasRole($role) { public function getRoles() { return $this->roles()->firstOrFail(); } + + public function getJWTIdentifier() { + return $this->getKey(); + } + + public function getJWTCustomClaims() { + return []; + } + + public function setPasswordAttribute($password){ + if (!empty($password)) { + $this->attributes['password'] = bcrypt($password); + } + } } diff --git a/config/auth.php b/config/auth.php index 7817501..321aee8 100644 --- a/config/auth.php +++ b/config/auth.php @@ -42,7 +42,7 @@ ], 'api' => [ - 'driver' => 'token', + 'driver' => 'jwt', 'provider' => 'users', ], ], diff --git a/config/jwt.php b/config/jwt.php new file mode 100644 index 0000000..8b7843b --- /dev/null +++ b/config/jwt.php @@ -0,0 +1,304 @@ + + * + * For the full copyright and license information, please view the LICENSE + * file that was distributed with this source code. + */ + +return [ + + /* + |-------------------------------------------------------------------------- + | JWT Authentication Secret + |-------------------------------------------------------------------------- + | + | Don't forget to set this in your .env file, as it will be used to sign + | your tokens. A helper command is provided for this: + | `php artisan jwt:secret` + | + | Note: This will be used for Symmetric algorithms only (HMAC), + | since RSA and ECDSA use a private/public key combo (See below). + | + */ + + 'secret' => env('JWT_SECRET'), + + /* + |-------------------------------------------------------------------------- + | JWT Authentication Keys + |-------------------------------------------------------------------------- + | + | The algorithm you are using, will determine whether your tokens are + | signed with a random string (defined in `JWT_SECRET`) or using the + | following public & private keys. + | + | Symmetric Algorithms: + | HS256, HS384 & HS512 will use `JWT_SECRET`. + | + | Asymmetric Algorithms: + | RS256, RS384 & RS512 / ES256, ES384 & ES512 will use the keys below. + | + */ + + 'keys' => [ + + /* + |-------------------------------------------------------------------------- + | Public Key + |-------------------------------------------------------------------------- + | + | A path or resource to your public key. + | + | E.g. 'file://path/to/public/key' + | + */ + + 'public' => env('JWT_PUBLIC_KEY'), + + /* + |-------------------------------------------------------------------------- + | Private Key + |-------------------------------------------------------------------------- + | + | A path or resource to your private key. + | + | E.g. 'file://path/to/private/key' + | + */ + + 'private' => env('JWT_PRIVATE_KEY'), + + /* + |-------------------------------------------------------------------------- + | Passphrase + |-------------------------------------------------------------------------- + | + | The passphrase for your private key. Can be null if none set. + | + */ + + 'passphrase' => env('JWT_PASSPHRASE'), + + ], + + /* + |-------------------------------------------------------------------------- + | JWT time to live + |-------------------------------------------------------------------------- + | + | Specify the length of time (in minutes) that the token will be valid for. + | Defaults to 1 hour. + | + | You can also set this to null, to yield a never expiring token. + | Some people may want this behaviour for e.g. a mobile app. + | This is not particularly recommended, so make sure you have appropriate + | systems in place to revoke the token if necessary. + | Notice: If you set this to null you should remove 'exp' element from 'required_claims' list. + | + */ + + 'ttl' => env('JWT_TTL', 60), + + /* + |-------------------------------------------------------------------------- + | Refresh time to live + |-------------------------------------------------------------------------- + | + | Specify the length of time (in minutes) that the token can be refreshed + | within. I.E. The user can refresh their token within a 2 week window of + | the original token being created until they must re-authenticate. + | Defaults to 2 weeks. + | + | You can also set this to null, to yield an infinite refresh time. + | Some may want this instead of never expiring tokens for e.g. a mobile app. + | This is not particularly recommended, so make sure you have appropriate + | systems in place to revoke the token if necessary. + | + */ + + 'refresh_ttl' => env('JWT_REFRESH_TTL', 20160), + + /* + |-------------------------------------------------------------------------- + | JWT hashing algorithm + |-------------------------------------------------------------------------- + | + | Specify the hashing algorithm that will be used to sign the token. + | + | See here: https://github.com/namshi/jose/tree/master/src/Namshi/JOSE/Signer/OpenSSL + | for possible values. + | + */ + + 'algo' => env('JWT_ALGO', 'HS256'), + + /* + |-------------------------------------------------------------------------- + | Required Claims + |-------------------------------------------------------------------------- + | + | Specify the required claims that must exist in any token. + | A TokenInvalidException will be thrown if any of these claims are not + | present in the payload. + | + */ + + 'required_claims' => [ + 'iss', + 'iat', + 'exp', + 'nbf', + 'sub', + 'jti', + ], + + /* + |-------------------------------------------------------------------------- + | Persistent Claims + |-------------------------------------------------------------------------- + | + | Specify the claim keys to be persisted when refreshing a token. + | `sub` and `iat` will automatically be persisted, in + | addition to the these claims. + | + | Note: If a claim does not exist then it will be ignored. + | + */ + + 'persistent_claims' => [ + // 'foo', + // 'bar', + ], + + /* + |-------------------------------------------------------------------------- + | Lock Subject + |-------------------------------------------------------------------------- + | + | This will determine whether a `prv` claim is automatically added to + | the token. The purpose of this is to ensure that if you have multiple + | authentication models e.g. `App\User` & `App\OtherPerson`, then we + | should prevent one authentication request from impersonating another, + | if 2 tokens happen to have the same id across the 2 different models. + | + | Under specific circumstances, you may want to disable this behaviour + | e.g. if you only have one authentication model, then you would save + | a little on token size. + | + */ + + 'lock_subject' => true, + + /* + |-------------------------------------------------------------------------- + | Leeway + |-------------------------------------------------------------------------- + | + | This property gives the jwt timestamp claims some "leeway". + | Meaning that if you have any unavoidable slight clock skew on + | any of your servers then this will afford you some level of cushioning. + | + | This applies to the claims `iat`, `nbf` and `exp`. + | + | Specify in seconds - only if you know you need it. + | + */ + + 'leeway' => env('JWT_LEEWAY', 0), + + /* + |-------------------------------------------------------------------------- + | Blacklist Enabled + |-------------------------------------------------------------------------- + | + | In order to invalidate tokens, you must have the blacklist enabled. + | If you do not want or need this functionality, then set this to false. + | + */ + + 'blacklist_enabled' => env('JWT_BLACKLIST_ENABLED', true), + + /* + | ------------------------------------------------------------------------- + | Blacklist Grace Period + | ------------------------------------------------------------------------- + | + | When multiple concurrent requests are made with the same JWT, + | it is possible that some of them fail, due to token regeneration + | on every request. + | + | Set grace period in seconds to prevent parallel request failure. + | + */ + + 'blacklist_grace_period' => env('JWT_BLACKLIST_GRACE_PERIOD', 0), + + /* + |-------------------------------------------------------------------------- + | Cookies encryption + |-------------------------------------------------------------------------- + | + | By default Laravel encrypt cookies for security reason. + | If you decide to not decrypt cookies, you will have to configure Laravel + | to not encrypt your cookie token by adding its name into the $except + | array available in the middleware "EncryptCookies" provided by Laravel. + | see https://laravel.com/docs/master/responses#cookies-and-encryption + | for details. + | + | Set it to true if you want to decrypt cookies. + | + */ + + 'decrypt_cookies' => false, + + /* + |-------------------------------------------------------------------------- + | Providers + |-------------------------------------------------------------------------- + | + | Specify the various providers used throughout the package. + | + */ + + 'providers' => [ + + /* + |-------------------------------------------------------------------------- + | JWT Provider + |-------------------------------------------------------------------------- + | + | Specify the provider that is used to create and decode the tokens. + | + */ + + 'jwt' => Tymon\JWTAuth\Providers\JWT\Lcobucci::class, + + /* + |-------------------------------------------------------------------------- + | Authentication Provider + |-------------------------------------------------------------------------- + | + | Specify the provider that is used to authenticate users. + | + */ + + 'auth' => Tymon\JWTAuth\Providers\Auth\Illuminate::class, + + /* + |-------------------------------------------------------------------------- + | Storage Provider + |-------------------------------------------------------------------------- + | + | Specify the provider that is used to store tokens in the blacklist. + | + */ + + 'storage' => Tymon\JWTAuth\Providers\Storage\Illuminate::class, + + ], + +]; diff --git a/routes/api.php b/routes/api.php index c641ca5..c2c1da0 100644 --- a/routes/api.php +++ b/routes/api.php @@ -16,3 +16,10 @@ Route::middleware('auth:api')->get('/user', function (Request $request) { return $request->user(); }); + +Route::post('/register', 'Api\AuthController@register'); +Route::post('/login', 'Api\AuthController@login'); +Route::post('/logout', 'Api\AuthController@logout'); + +Route::get('/milestones', 'Api\MilestoneController@index')->name('api.milestones'); +Route::get('/milestones/{milestone}', 'Api\MilestoneController@show')->name('api.milestones.get'); \ No newline at end of file From 1b78225f43e7a48faaefdc8f95969b379b20c970 Mon Sep 17 00:00:00 2001 From: Yannick Date: Thu, 12 Nov 2020 19:47:22 +0100 Subject: [PATCH 05/74] Update dependencies --- composer.json | 1 - composer.lock | 1143 +++++++++++++++++++++------------------------ package-lock.json | 457 ++++++++---------- package.json | 8 +- 4 files changed, 740 insertions(+), 869 deletions(-) diff --git a/composer.json b/composer.json index 8fe8e6c..c7c3b59 100644 --- a/composer.json +++ b/composer.json @@ -20,7 +20,6 @@ }, "require-dev": { "filp/whoops": "^2.0", - "fzaninotto/faker": "^1.4", "mockery/mockery": "^1.0", "nunomaduro/collision": "^5.0", "phpunit/phpunit": "^9.0" diff --git a/composer.lock b/composer.lock index 67f29a3..9b391e1 100644 --- a/composer.lock +++ b/composer.lock @@ -4,8 +4,60 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "57ad153f7f934c0c110e1e69199fa768", + "content-hash": "025e6eda4949800017c67b928e6e12e5", "packages": [ + { + "name": "asm89/stack-cors", + "version": "v2.0.2", + "source": { + "type": "git", + "url": "https://github.com/asm89/stack-cors.git", + "reference": "8d8f88b3b3830916be94292c1fbce84433efb1aa" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/asm89/stack-cors/zipball/8d8f88b3b3830916be94292c1fbce84433efb1aa", + "reference": "8d8f88b3b3830916be94292c1fbce84433efb1aa", + "shasum": "" + }, + "require": { + "php": "^7.0|^8.0", + "symfony/http-foundation": "~2.7|~3.0|~4.0|~5.0", + "symfony/http-kernel": "~2.7|~3.0|~4.0|~5.0" + }, + "require-dev": { + "phpunit/phpunit": "^6|^7|^8|^9", + "squizlabs/php_codesniffer": "^3.5" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.0-dev" + } + }, + "autoload": { + "psr-4": { + "Asm89\\Stack\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Alexander", + "email": "iam.asm89@gmail.com" + } + ], + "description": "Cross-origin resource sharing library and stack middleware", + "homepage": "https://github.com/asm89/stack-cors", + "keywords": [ + "cors", + "stack" + ], + "time": "2020-10-29T16:03:21+00:00" + }, { "name": "atymic/tmhoauth", "version": "0.8.6", @@ -53,6 +105,79 @@ ], "time": "2020-06-21T00:50:34+00:00" }, + { + "name": "barryvdh/laravel-cors", + "version": "v2.0.3", + "source": { + "type": "git", + "url": "https://github.com/fruitcake/laravel-cors.git", + "reference": "01de0fe5f71c70d1930ee9a80385f9cc28e0f63a" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/fruitcake/laravel-cors/zipball/01de0fe5f71c70d1930ee9a80385f9cc28e0f63a", + "reference": "01de0fe5f71c70d1930ee9a80385f9cc28e0f63a", + "shasum": "" + }, + "require": { + "asm89/stack-cors": "^2.0.1", + "illuminate/contracts": "^6|^7|^8|^9", + "illuminate/support": "^6|^7|^8|^9", + "php": ">=7.2", + "symfony/http-foundation": "^4|^5", + "symfony/http-kernel": "^4.3.4|^5" + }, + "require-dev": { + "laravel/framework": "^6|^7|^8", + "orchestra/testbench-dusk": "^4|^5|^6", + "phpunit/phpunit": "^6|^7|^8", + "squizlabs/php_codesniffer": "^3.5" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "2.0-dev" + }, + "laravel": { + "providers": [ + "Fruitcake\\Cors\\CorsServiceProvider" + ] + } + }, + "autoload": { + "psr-4": { + "Fruitcake\\Cors\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Fruitcake", + "homepage": "https://fruitcake.nl" + }, + { + "name": "Barry vd. Heuvel", + "email": "barryvdh@gmail.com" + } + ], + "description": "Adds CORS (Cross-Origin Resource Sharing) headers support in your Laravel application", + "keywords": [ + "api", + "cors", + "crossdomain", + "laravel" + ], + "funding": [ + { + "url": "https://github.com/barryvdh", + "type": "github" + } + ], + "time": "2020-10-22T13:57:20+00:00" + }, { "name": "brick/math", "version": "0.9.1", @@ -333,16 +458,16 @@ }, { "name": "egulias/email-validator", - "version": "2.1.22", + "version": "2.1.23", "source": { "type": "git", "url": "https://github.com/egulias/EmailValidator.git", - "reference": "68e418ec08fbfc6f58f6fd2eea70ca8efc8cc7d5" + "reference": "5fa792ad1853ae2bc60528dd3e5cbf4542d3c1df" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/egulias/EmailValidator/zipball/68e418ec08fbfc6f58f6fd2eea70ca8efc8cc7d5", - "reference": "68e418ec08fbfc6f58f6fd2eea70ca8efc8cc7d5", + "url": "https://api.github.com/repos/egulias/EmailValidator/zipball/5fa792ad1853ae2bc60528dd3e5cbf4542d3c1df", + "reference": "5fa792ad1853ae2bc60528dd3e5cbf4542d3c1df", "shasum": "" }, "require": { @@ -387,7 +512,7 @@ "validation", "validator" ], - "time": "2020-09-26T15:48:38+00:00" + "time": "2020-10-31T20:37:35+00:00" }, { "name": "erusev/parsedown", @@ -498,28 +623,27 @@ }, { "name": "facade/ignition", - "version": "2.4.1", + "version": "2.5.0", "source": { "type": "git", "url": "https://github.com/facade/ignition.git", - "reference": "9fc6c3d3de5271a1b94cff19dce2c9295abf0ffa" + "reference": "81698c5e32837c74abf9bb764ff0c1b3e001afb3" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/facade/ignition/zipball/9fc6c3d3de5271a1b94cff19dce2c9295abf0ffa", - "reference": "9fc6c3d3de5271a1b94cff19dce2c9295abf0ffa", + "url": "https://api.github.com/repos/facade/ignition/zipball/81698c5e32837c74abf9bb764ff0c1b3e001afb3", + "reference": "81698c5e32837c74abf9bb764ff0c1b3e001afb3", "shasum": "" }, "require": { "ext-json": "*", "ext-mbstring": "*", - "facade/flare-client-php": "^1.0", - "facade/ignition-contracts": "^1.0", + "facade/flare-client-php": "^1.3.7", + "facade/ignition-contracts": "^1.0.2", "filp/whoops": "^2.4", "illuminate/support": "^7.0|^8.0", "monolog/monolog": "^2.0", - "php": "^7.2.5", - "scrivo/highlight.php": "^9.15", + "php": "^7.2.5|^8.0", "symfony/console": "^5.0", "symfony/var-dumper": "^5.0" }, @@ -566,7 +690,7 @@ "laravel", "page" ], - "time": "2020-10-14T08:59:59+00:00" + "time": "2020-10-27T13:02:22+00:00" }, { "name": "facade/ignition-contracts", @@ -619,24 +743,24 @@ }, { "name": "fideloper/proxy", - "version": "4.4.0", + "version": "4.4.1", "source": { "type": "git", "url": "https://github.com/fideloper/TrustedProxy.git", - "reference": "9beebf48a1c344ed67c1d36bb1b8709db7c3c1a8" + "reference": "c073b2bd04d1c90e04dc1b787662b558dd65ade0" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/fideloper/TrustedProxy/zipball/9beebf48a1c344ed67c1d36bb1b8709db7c3c1a8", - "reference": "9beebf48a1c344ed67c1d36bb1b8709db7c3c1a8", + "url": "https://api.github.com/repos/fideloper/TrustedProxy/zipball/c073b2bd04d1c90e04dc1b787662b558dd65ade0", + "reference": "c073b2bd04d1c90e04dc1b787662b558dd65ade0", "shasum": "" }, "require": { - "illuminate/contracts": "^5.0|^6.0|^7.0|^8.0", + "illuminate/contracts": "^5.0|^6.0|^7.0|^8.0|^9.0", "php": ">=5.4.0" }, "require-dev": { - "illuminate/http": "^5.0|^6.0|^7.0|^8.0", + "illuminate/http": "^5.0|^6.0|^7.0|^8.0|^9.0", "mockery/mockery": "^1.0", "phpunit/phpunit": "^6.0" }, @@ -669,20 +793,20 @@ "proxy", "trusted proxy" ], - "time": "2020-06-23T01:36:47+00:00" + "time": "2020-10-22T13:48:01+00:00" }, { "name": "filp/whoops", - "version": "2.9.0", + "version": "2.9.1", "source": { "type": "git", "url": "https://github.com/filp/whoops.git", - "reference": "2ec31f3adc54c71a59c5e3c2143d7a0e2f8899f8" + "reference": "307fb34a5ab697461ec4c9db865b20ff2fd40771" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/filp/whoops/zipball/2ec31f3adc54c71a59c5e3c2143d7a0e2f8899f8", - "reference": "2ec31f3adc54c71a59c5e3c2143d7a0e2f8899f8", + "url": "https://api.github.com/repos/filp/whoops/zipball/307fb34a5ab697461ec4c9db865b20ff2fd40771", + "reference": "307fb34a5ab697461ec4c9db865b20ff2fd40771", "shasum": "" }, "require": { @@ -730,7 +854,7 @@ "throwable", "whoops" ], - "time": "2020-10-20T12:00:00+00:00" + "time": "2020-11-01T12:00:00+00:00" }, { "name": "graham-campbell/result-type", @@ -1016,16 +1140,16 @@ }, { "name": "laravel/framework", - "version": "v8.11.2", + "version": "v8.14.0", "source": { "type": "git", "url": "https://github.com/laravel/framework.git", - "reference": "8d1f25fb8d124d5a24df9714ed8d481c43f9efe6" + "reference": "b60139c9d3b475d5b5dc261c5dcafe8ca49b4a13" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laravel/framework/zipball/8d1f25fb8d124d5a24df9714ed8d481c43f9efe6", - "reference": "8d1f25fb8d124d5a24df9714ed8d481c43f9efe6", + "url": "https://api.github.com/repos/laravel/framework/zipball/b60139c9d3b475d5b5dc261c5dcafe8ca49b4a13", + "reference": "b60139c9d3b475d5b5dc261c5dcafe8ca49b4a13", "shasum": "" }, "require": { @@ -1040,7 +1164,7 @@ "monolog/monolog": "^2.0", "nesbot/carbon": "^2.31", "opis/closure": "^3.6", - "php": "^7.3", + "php": "^7.3|^8.0", "psr/container": "^1.0", "psr/simple-cache": "^1.0", "ramsey/uuid": "^4.0", @@ -1104,7 +1228,7 @@ "guzzlehttp/guzzle": "^6.5.5|^7.0.1", "league/flysystem-cached-adapter": "^1.0", "mockery/mockery": "^1.4.2", - "orchestra/testbench-core": "^6.0", + "orchestra/testbench-core": "^6.5", "pda/pheanstalk": "^4.0", "phpunit/phpunit": "^8.5.8|^9.3.3", "predis/predis": "^1.1.1", @@ -1119,8 +1243,8 @@ "ext-pcntl": "Required to use all features of the queue worker.", "ext-posix": "Required to use all features of the queue worker.", "ext-redis": "Required to use the Redis cache and queue drivers (^4.0|^5.0).", + "fakerphp/faker": "Required to use the eloquent factory builder (^1.9.1).", "filp/whoops": "Required for friendly error pages in development (^2.8).", - "fzaninotto/faker": "Required to use the eloquent factory builder (^1.9.1).", "guzzlehttp/guzzle": "Required to use the HTTP Client, Mailgun mail driver and the ping methods on schedules (^6.5.5|^7.0.1).", "laravel/tinker": "Required to use the tinker console command (^2.0).", "league/flysystem-aws-s3-v3": "Required to use the Flysystem S3 driver (^1.0).", @@ -1175,33 +1299,33 @@ "framework", "laravel" ], - "time": "2020-10-20T20:12:53+00:00" + "time": "2020-11-10T14:47:10+00:00" }, { "name": "laravel/tinker", - "version": "v2.4.2", + "version": "v2.5.0", "source": { "type": "git", "url": "https://github.com/laravel/tinker.git", - "reference": "58424c24e8aec31c3a3ac54eb3adb15e8a0a067b" + "reference": "45884b526e10a88a1b179fa1a1a24d5468c668c2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laravel/tinker/zipball/58424c24e8aec31c3a3ac54eb3adb15e8a0a067b", - "reference": "58424c24e8aec31c3a3ac54eb3adb15e8a0a067b", + "url": "https://api.github.com/repos/laravel/tinker/zipball/45884b526e10a88a1b179fa1a1a24d5468c668c2", + "reference": "45884b526e10a88a1b179fa1a1a24d5468c668c2", "shasum": "" }, "require": { "illuminate/console": "^6.0|^7.0|^8.0", "illuminate/contracts": "^6.0|^7.0|^8.0", "illuminate/support": "^6.0|^7.0|^8.0", - "php": "^7.2", - "psy/psysh": "^0.10.3", - "symfony/var-dumper": "^4.3|^5.0" + "php": "^7.2.5|^8.0", + "psy/psysh": "^0.10.4", + "symfony/var-dumper": "^4.3.4|^5.0" }, "require-dev": { - "mockery/mockery": "^1.3.1", - "phpunit/phpunit": "^8.4|^9.0" + "mockery/mockery": "~1.3.3|^1.4.2", + "phpunit/phpunit": "^8.5.8|^9.3.3" }, "suggest": { "illuminate/database": "The Illuminate Database package (^6.0|^7.0|^8.0)." @@ -1239,27 +1363,27 @@ "laravel", "psysh" ], - "time": "2020-08-11T19:28:08+00:00" + "time": "2020-10-29T13:07:12+00:00" }, { "name": "laravel/ui", - "version": "v3.0.0", + "version": "v3.1.0", "source": { "type": "git", "url": "https://github.com/laravel/ui.git", - "reference": "ff6af4f0bc5a5bfe73352cdc03dbfffc4ace92d8" + "reference": "444072cb2f8baaa15172c5cde2bd30d188c3b7e7" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/laravel/ui/zipball/ff6af4f0bc5a5bfe73352cdc03dbfffc4ace92d8", - "reference": "ff6af4f0bc5a5bfe73352cdc03dbfffc4ace92d8", + "url": "https://api.github.com/repos/laravel/ui/zipball/444072cb2f8baaa15172c5cde2bd30d188c3b7e7", + "reference": "444072cb2f8baaa15172c5cde2bd30d188c3b7e7", "shasum": "" }, "require": { "illuminate/console": "^8.0", "illuminate/filesystem": "^8.0", "illuminate/support": "^8.0", - "php": "^7.3" + "php": "^7.3|^8.0" }, "type": "library", "extra": { @@ -1293,7 +1417,7 @@ "laravel", "ui" ], - "time": "2020-09-11T15:34:08+00:00" + "time": "2020-11-03T19:51:21+00:00" }, { "name": "lcobucci/jwt", @@ -1362,16 +1486,16 @@ }, { "name": "league/commonmark", - "version": "1.5.6", + "version": "1.5.7", "source": { "type": "git", "url": "https://github.com/thephpleague/commonmark.git", - "reference": "a56e91e0fa1f6d0049153a9c34f63488f6b7ce61" + "reference": "11df9b36fd4f1d2b727a73bf14931d81373b9a54" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/thephpleague/commonmark/zipball/a56e91e0fa1f6d0049153a9c34f63488f6b7ce61", - "reference": "a56e91e0fa1f6d0049153a9c34f63488f6b7ce61", + "url": "https://api.github.com/repos/thephpleague/commonmark/zipball/11df9b36fd4f1d2b727a73bf14931d81373b9a54", + "reference": "11df9b36fd4f1d2b727a73bf14931d81373b9a54", "shasum": "" }, "require": { @@ -1453,7 +1577,7 @@ "type": "tidelift" } ], - "time": "2020-10-17T21:33:03+00:00" + "time": "2020-10-31T13:49:32+00:00" }, { "name": "league/flysystem", @@ -1737,16 +1861,16 @@ }, { "name": "nesbot/carbon", - "version": "2.41.3", + "version": "2.41.5", "source": { "type": "git", "url": "https://github.com/briannesbitt/Carbon.git", - "reference": "e148788eeae9b9b7b87996520358b86faad37b52" + "reference": "c4a9caf97cfc53adfc219043bcecf42bc663acee" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/briannesbitt/Carbon/zipball/e148788eeae9b9b7b87996520358b86faad37b52", - "reference": "e148788eeae9b9b7b87996520358b86faad37b52", + "url": "https://api.github.com/repos/briannesbitt/Carbon/zipball/c4a9caf97cfc53adfc219043bcecf42bc663acee", + "reference": "c4a9caf97cfc53adfc219043bcecf42bc663acee", "shasum": "" }, "require": { @@ -1822,7 +1946,7 @@ "type": "tidelift" } ], - "time": "2020-10-12T20:36:09+00:00" + "time": "2020-10-23T06:02:30+00:00" }, { "name": "nikic/php-parser", @@ -1878,16 +2002,16 @@ }, { "name": "opis/closure", - "version": "3.6.0", + "version": "3.6.1", "source": { "type": "git", "url": "https://github.com/opis/closure.git", - "reference": "c547f8262a5fa9ff507bd06cc394067b83a75085" + "reference": "943b5d70cc5ae7483f6aff6ff43d7e34592ca0f5" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/opis/closure/zipball/c547f8262a5fa9ff507bd06cc394067b83a75085", - "reference": "c547f8262a5fa9ff507bd06cc394067b83a75085", + "url": "https://api.github.com/repos/opis/closure/zipball/943b5d70cc5ae7483f6aff6ff43d7e34592ca0f5", + "reference": "943b5d70cc5ae7483f6aff6ff43d7e34592ca0f5", "shasum": "" }, "require": { @@ -1935,52 +2059,7 @@ "serialization", "serialize" ], - "time": "2020-10-11T21:42:15+00:00" - }, - { - "name": "paragonie/random_compat", - "version": "v9.99.100", - "source": { - "type": "git", - "url": "https://github.com/paragonie/random_compat.git", - "reference": "996434e5492cb4c3edcb9168db6fbb1359ef965a" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/paragonie/random_compat/zipball/996434e5492cb4c3edcb9168db6fbb1359ef965a", - "reference": "996434e5492cb4c3edcb9168db6fbb1359ef965a", - "shasum": "" - }, - "require": { - "php": ">= 7" - }, - "require-dev": { - "phpunit/phpunit": "4.*|5.*", - "vimeo/psalm": "^1" - }, - "suggest": { - "ext-libsodium": "Provides a modern crypto API that can be used to generate random bytes." - }, - "type": "library", - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Paragon Initiative Enterprises", - "email": "security@paragonie.com", - "homepage": "https://paragonie.com" - } - ], - "description": "PHP 5.x polyfill for random_bytes() and random_int() from PHP 7", - "keywords": [ - "csprng", - "polyfill", - "pseudorandom", - "random" - ], - "time": "2020-10-15T08:29:30+00:00" + "time": "2020-11-07T02:01:34+00:00" }, { "name": "phpoption/phpoption", @@ -2594,81 +2673,6 @@ ], "time": "2020-08-18T17:17:46+00:00" }, - { - "name": "scrivo/highlight.php", - "version": "v9.18.1.3", - "source": { - "type": "git", - "url": "https://github.com/scrivo/highlight.php.git", - "reference": "6a1699707b099081f20a488ac1f92d682181018c" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/scrivo/highlight.php/zipball/6a1699707b099081f20a488ac1f92d682181018c", - "reference": "6a1699707b099081f20a488ac1f92d682181018c", - "shasum": "" - }, - "require": { - "ext-json": "*", - "ext-mbstring": "*", - "php": ">=5.4" - }, - "require-dev": { - "phpunit/phpunit": "^4.8|^5.7", - "sabberworm/php-css-parser": "^8.3", - "symfony/finder": "^2.8|^3.4", - "symfony/var-dumper": "^2.8|^3.4" - }, - "suggest": { - "ext-dom": "Needed to make use of the features in the utilities namespace" - }, - "type": "library", - "autoload": { - "psr-0": { - "Highlight\\": "", - "HighlightUtilities\\": "" - }, - "files": [ - "HighlightUtilities/functions.php" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "BSD-3-Clause" - ], - "authors": [ - { - "name": "Geert Bergman", - "homepage": "http://www.scrivo.org/", - "role": "Project Author" - }, - { - "name": "Vladimir Jimenez", - "homepage": "https://allejo.io", - "role": "Maintainer" - }, - { - "name": "Martin Folkers", - "homepage": "https://twobrain.io", - "role": "Contributor" - } - ], - "description": "Server side syntax highlighter that supports 185 languages. It's a PHP port of highlight.js", - "keywords": [ - "code", - "highlight", - "highlight.js", - "highlight.php", - "syntax" - ], - "funding": [ - { - "url": "https://github.com/allejo", - "type": "github" - } - ], - "time": "2020-10-16T07:43:22+00:00" - }, { "name": "spatie/laravel-feed", "version": "3.0.1", @@ -2812,16 +2816,16 @@ }, { "name": "symfony/console", - "version": "v5.1.7", + "version": "v5.1.8", "source": { "type": "git", "url": "https://github.com/symfony/console.git", - "reference": "ae789a8a2ad189ce7e8216942cdb9b77319f5eb8" + "reference": "e0b2c29c0fa6a69089209bbe8fcff4df2a313d0e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/console/zipball/ae789a8a2ad189ce7e8216942cdb9b77319f5eb8", - "reference": "ae789a8a2ad189ce7e8216942cdb9b77319f5eb8", + "url": "https://api.github.com/repos/symfony/console/zipball/e0b2c29c0fa6a69089209bbe8fcff4df2a313d0e", + "reference": "e0b2c29c0fa6a69089209bbe8fcff4df2a313d0e", "shasum": "" }, "require": { @@ -2858,11 +2862,6 @@ "symfony/process": "" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "5.1-dev" - } - }, "autoload": { "psr-4": { "Symfony\\Component\\Console\\": "" @@ -2901,31 +2900,26 @@ "type": "tidelift" } ], - "time": "2020-10-07T15:23:00+00:00" + "time": "2020-10-24T12:01:57+00:00" }, { "name": "symfony/css-selector", - "version": "v5.1.7", + "version": "v5.1.8", "source": { "type": "git", "url": "https://github.com/symfony/css-selector.git", - "reference": "e544e24472d4c97b2d11ade7caacd446727c6bf9" + "reference": "6cbebda22ffc0d4bb8fea0c1311c2ca54c4c8fa0" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/css-selector/zipball/e544e24472d4c97b2d11ade7caacd446727c6bf9", - "reference": "e544e24472d4c97b2d11ade7caacd446727c6bf9", + "url": "https://api.github.com/repos/symfony/css-selector/zipball/6cbebda22ffc0d4bb8fea0c1311c2ca54c4c8fa0", + "reference": "6cbebda22ffc0d4bb8fea0c1311c2ca54c4c8fa0", "shasum": "" }, "require": { "php": ">=7.2.5" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "5.1-dev" - } - }, "autoload": { "psr-4": { "Symfony\\Component\\CssSelector\\": "" @@ -2968,7 +2962,7 @@ "type": "tidelift" } ], - "time": "2020-05-20T17:43:50+00:00" + "time": "2020-10-24T12:01:57+00:00" }, { "name": "symfony/deprecation-contracts", @@ -3036,16 +3030,16 @@ }, { "name": "symfony/error-handler", - "version": "v5.1.7", + "version": "v5.1.8", "source": { "type": "git", "url": "https://github.com/symfony/error-handler.git", - "reference": "5e4d8ef8d71822922d1eebd130219ae3491a5ca9" + "reference": "a154f2b12fd1ec708559ba73ed58bd1304e55718" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/error-handler/zipball/5e4d8ef8d71822922d1eebd130219ae3491a5ca9", - "reference": "5e4d8ef8d71822922d1eebd130219ae3491a5ca9", + "url": "https://api.github.com/repos/symfony/error-handler/zipball/a154f2b12fd1ec708559ba73ed58bd1304e55718", + "reference": "a154f2b12fd1ec708559ba73ed58bd1304e55718", "shasum": "" }, "require": { @@ -3060,11 +3054,6 @@ "symfony/serializer": "^4.4|^5.0" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "5.1-dev" - } - }, "autoload": { "psr-4": { "Symfony\\Component\\ErrorHandler\\": "" @@ -3103,20 +3092,20 @@ "type": "tidelift" } ], - "time": "2020-10-02T08:49:02+00:00" + "time": "2020-10-24T12:01:57+00:00" }, { "name": "symfony/event-dispatcher", - "version": "v5.1.7", + "version": "v5.1.8", "source": { "type": "git", "url": "https://github.com/symfony/event-dispatcher.git", - "reference": "d5de97d6af175a9e8131c546db054ca32842dd0f" + "reference": "26f4edae48c913fc183a3da0553fe63bdfbd361a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/d5de97d6af175a9e8131c546db054ca32842dd0f", - "reference": "d5de97d6af175a9e8131c546db054ca32842dd0f", + "url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/26f4edae48c913fc183a3da0553fe63bdfbd361a", + "reference": "26f4edae48c913fc183a3da0553fe63bdfbd361a", "shasum": "" }, "require": { @@ -3147,11 +3136,6 @@ "symfony/http-kernel": "" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "5.1-dev" - } - }, "autoload": { "psr-4": { "Symfony\\Component\\EventDispatcher\\": "" @@ -3190,7 +3174,7 @@ "type": "tidelift" } ], - "time": "2020-09-18T14:27:32+00:00" + "time": "2020-10-24T12:01:57+00:00" }, { "name": "symfony/event-dispatcher-contracts", @@ -3270,27 +3254,22 @@ }, { "name": "symfony/finder", - "version": "v5.1.7", + "version": "v5.1.8", "source": { "type": "git", "url": "https://github.com/symfony/finder.git", - "reference": "2c3ba7ad6884e6c4451ce2340e2dc23f6fa3e0d8" + "reference": "e70eb5a69c2ff61ea135a13d2266e8914a67b3a0" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/finder/zipball/2c3ba7ad6884e6c4451ce2340e2dc23f6fa3e0d8", - "reference": "2c3ba7ad6884e6c4451ce2340e2dc23f6fa3e0d8", + "url": "https://api.github.com/repos/symfony/finder/zipball/e70eb5a69c2ff61ea135a13d2266e8914a67b3a0", + "reference": "e70eb5a69c2ff61ea135a13d2266e8914a67b3a0", "shasum": "" }, "require": { "php": ">=7.2.5" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "5.1-dev" - } - }, "autoload": { "psr-4": { "Symfony\\Component\\Finder\\": "" @@ -3329,7 +3308,7 @@ "type": "tidelift" } ], - "time": "2020-09-02T16:23:27+00:00" + "time": "2020-10-24T12:01:57+00:00" }, { "name": "symfony/http-client-contracts", @@ -3409,16 +3388,16 @@ }, { "name": "symfony/http-foundation", - "version": "v5.1.7", + "version": "v5.1.8", "source": { "type": "git", "url": "https://github.com/symfony/http-foundation.git", - "reference": "353b42e7b4fd1c898aab09a059466c9cea74039b" + "reference": "a2860ec970404b0233ab1e59e0568d3277d32b6f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/http-foundation/zipball/353b42e7b4fd1c898aab09a059466c9cea74039b", - "reference": "353b42e7b4fd1c898aab09a059466c9cea74039b", + "url": "https://api.github.com/repos/symfony/http-foundation/zipball/a2860ec970404b0233ab1e59e0568d3277d32b6f", + "reference": "a2860ec970404b0233ab1e59e0568d3277d32b6f", "shasum": "" }, "require": { @@ -3437,11 +3416,6 @@ "symfony/mime": "To use the file extension guesser" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "5.1-dev" - } - }, "autoload": { "psr-4": { "Symfony\\Component\\HttpFoundation\\": "" @@ -3480,20 +3454,20 @@ "type": "tidelift" } ], - "time": "2020-09-27T14:14:57+00:00" + "time": "2020-10-24T12:01:57+00:00" }, { "name": "symfony/http-kernel", - "version": "v5.1.7", + "version": "v5.1.8", "source": { "type": "git", "url": "https://github.com/symfony/http-kernel.git", - "reference": "1764b87d2f10d5c9ce6e4850fe27934116d89708" + "reference": "a13b3c4d994a4fd051f4c6800c5e33c9508091dd" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/http-kernel/zipball/1764b87d2f10d5c9ce6e4850fe27934116d89708", - "reference": "1764b87d2f10d5c9ce6e4850fe27934116d89708", + "url": "https://api.github.com/repos/symfony/http-kernel/zipball/a13b3c4d994a4fd051f4c6800c5e33c9508091dd", + "reference": "a13b3c4d994a4fd051f4c6800c5e33c9508091dd", "shasum": "" }, "require": { @@ -3551,11 +3525,6 @@ "symfony/dependency-injection": "" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "5.1-dev" - } - }, "autoload": { "psr-4": { "Symfony\\Component\\HttpKernel\\": "" @@ -3594,20 +3563,20 @@ "type": "tidelift" } ], - "time": "2020-10-04T07:57:28+00:00" + "time": "2020-10-28T05:55:23+00:00" }, { "name": "symfony/mime", - "version": "v5.1.7", + "version": "v5.1.8", "source": { "type": "git", "url": "https://github.com/symfony/mime.git", - "reference": "4404d6545125863561721514ad9388db2661eec5" + "reference": "f5485a92c24d4bcfc2f3fc648744fb398482ff1b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/mime/zipball/4404d6545125863561721514ad9388db2661eec5", - "reference": "4404d6545125863561721514ad9388db2661eec5", + "url": "https://api.github.com/repos/symfony/mime/zipball/f5485a92c24d4bcfc2f3fc648744fb398482ff1b", + "reference": "f5485a92c24d4bcfc2f3fc648744fb398482ff1b", "shasum": "" }, "require": { @@ -3624,11 +3593,6 @@ "symfony/dependency-injection": "^4.4|^5.0" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "5.1-dev" - } - }, "autoload": { "psr-4": { "Symfony\\Component\\Mime\\": "" @@ -3671,24 +3635,24 @@ "type": "tidelift" } ], - "time": "2020-09-02T16:23:27+00:00" + "time": "2020-10-24T12:01:57+00:00" }, { "name": "symfony/polyfill-ctype", - "version": "v1.18.1", + "version": "v1.20.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-ctype.git", - "reference": "1c302646f6efc070cd46856e600e5e0684d6b454" + "reference": "f4ba089a5b6366e453971d3aad5fe8e897b37f41" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/1c302646f6efc070cd46856e600e5e0684d6b454", - "reference": "1c302646f6efc070cd46856e600e5e0684d6b454", + "url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/f4ba089a5b6366e453971d3aad5fe8e897b37f41", + "reference": "f4ba089a5b6366e453971d3aad5fe8e897b37f41", "shasum": "" }, "require": { - "php": ">=5.3.3" + "php": ">=7.1" }, "suggest": { "ext-ctype": "For best performance" @@ -3696,7 +3660,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "1.18-dev" + "dev-main": "1.20-dev" }, "thanks": { "name": "symfony/polyfill", @@ -3733,24 +3697,38 @@ "polyfill", "portable" ], - "time": "2020-07-14T12:35:20+00:00" + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2020-10-23T14:02:19+00:00" }, { "name": "symfony/polyfill-iconv", - "version": "v1.18.1", + "version": "v1.20.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-iconv.git", - "reference": "6c2f78eb8f5ab8eaea98f6d414a5915f2e0fce36" + "reference": "c536646fdb4f29104dd26effc2fdcb9a5b085024" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-iconv/zipball/6c2f78eb8f5ab8eaea98f6d414a5915f2e0fce36", - "reference": "6c2f78eb8f5ab8eaea98f6d414a5915f2e0fce36", + "url": "https://api.github.com/repos/symfony/polyfill-iconv/zipball/c536646fdb4f29104dd26effc2fdcb9a5b085024", + "reference": "c536646fdb4f29104dd26effc2fdcb9a5b085024", "shasum": "" }, "require": { - "php": ">=5.3.3" + "php": ">=7.1" }, "suggest": { "ext-iconv": "For best performance" @@ -3758,7 +3736,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "1.18-dev" + "dev-main": "1.20-dev" }, "thanks": { "name": "symfony/polyfill", @@ -3796,24 +3774,38 @@ "portable", "shim" ], - "time": "2020-07-14T12:35:20+00:00" + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2020-10-23T14:02:19+00:00" }, { "name": "symfony/polyfill-intl-grapheme", - "version": "v1.18.1", + "version": "v1.20.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-intl-grapheme.git", - "reference": "b740103edbdcc39602239ee8860f0f45a8eb9aa5" + "reference": "c7cf3f858ec7d70b89559d6e6eb1f7c2517d479c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-intl-grapheme/zipball/b740103edbdcc39602239ee8860f0f45a8eb9aa5", - "reference": "b740103edbdcc39602239ee8860f0f45a8eb9aa5", + "url": "https://api.github.com/repos/symfony/polyfill-intl-grapheme/zipball/c7cf3f858ec7d70b89559d6e6eb1f7c2517d479c", + "reference": "c7cf3f858ec7d70b89559d6e6eb1f7c2517d479c", "shasum": "" }, "require": { - "php": ">=5.3.3" + "php": ">=7.1" }, "suggest": { "ext-intl": "For best performance" @@ -3821,7 +3813,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "1.18-dev" + "dev-main": "1.20-dev" }, "thanks": { "name": "symfony/polyfill", @@ -3874,26 +3866,25 @@ "type": "tidelift" } ], - "time": "2020-07-14T12:35:20+00:00" + "time": "2020-10-23T14:02:19+00:00" }, { "name": "symfony/polyfill-intl-idn", - "version": "v1.18.1", + "version": "v1.20.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-intl-idn.git", - "reference": "5dcab1bc7146cf8c1beaa4502a3d9be344334251" + "reference": "3b75acd829741c768bc8b1f84eb33265e7cc5117" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-intl-idn/zipball/5dcab1bc7146cf8c1beaa4502a3d9be344334251", - "reference": "5dcab1bc7146cf8c1beaa4502a3d9be344334251", + "url": "https://api.github.com/repos/symfony/polyfill-intl-idn/zipball/3b75acd829741c768bc8b1f84eb33265e7cc5117", + "reference": "3b75acd829741c768bc8b1f84eb33265e7cc5117", "shasum": "" }, "require": { - "php": ">=5.3.3", + "php": ">=7.1", "symfony/polyfill-intl-normalizer": "^1.10", - "symfony/polyfill-php70": "^1.10", "symfony/polyfill-php72": "^1.10" }, "suggest": { @@ -3902,7 +3893,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "1.18-dev" + "dev-main": "1.20-dev" }, "thanks": { "name": "symfony/polyfill", @@ -3945,24 +3936,38 @@ "portable", "shim" ], - "time": "2020-08-04T06:02:08+00:00" + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2020-10-23T14:02:19+00:00" }, { "name": "symfony/polyfill-intl-normalizer", - "version": "v1.18.1", + "version": "v1.20.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-intl-normalizer.git", - "reference": "37078a8dd4a2a1e9ab0231af7c6cb671b2ed5a7e" + "reference": "727d1096295d807c309fb01a851577302394c897" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-intl-normalizer/zipball/37078a8dd4a2a1e9ab0231af7c6cb671b2ed5a7e", - "reference": "37078a8dd4a2a1e9ab0231af7c6cb671b2ed5a7e", + "url": "https://api.github.com/repos/symfony/polyfill-intl-normalizer/zipball/727d1096295d807c309fb01a851577302394c897", + "reference": "727d1096295d807c309fb01a851577302394c897", "shasum": "" }, "require": { - "php": ">=5.3.3" + "php": ">=7.1" }, "suggest": { "ext-intl": "For best performance" @@ -3970,7 +3975,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "1.18-dev" + "dev-main": "1.20-dev" }, "thanks": { "name": "symfony/polyfill", @@ -4012,24 +4017,38 @@ "portable", "shim" ], - "time": "2020-07-14T12:35:20+00:00" + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2020-10-23T14:02:19+00:00" }, { "name": "symfony/polyfill-mbstring", - "version": "v1.18.1", + "version": "v1.20.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-mbstring.git", - "reference": "a6977d63bf9a0ad4c65cd352709e230876f9904a" + "reference": "39d483bdf39be819deabf04ec872eb0b2410b531" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/a6977d63bf9a0ad4c65cd352709e230876f9904a", - "reference": "a6977d63bf9a0ad4c65cd352709e230876f9904a", + "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/39d483bdf39be819deabf04ec872eb0b2410b531", + "reference": "39d483bdf39be819deabf04ec872eb0b2410b531", "shasum": "" }, "require": { - "php": ">=5.3.3" + "php": ">=7.1" }, "suggest": { "ext-mbstring": "For best performance" @@ -4037,7 +4056,7 @@ "type": "library", "extra": { "branch-alias": { - "dev-master": "1.18-dev" + "dev-main": "1.20-dev" }, "thanks": { "name": "symfony/polyfill", @@ -4075,44 +4094,49 @@ "portable", "shim" ], - "time": "2020-07-14T12:35:20+00:00" + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2020-10-23T14:02:19+00:00" }, { "name": "symfony/polyfill-php56", - "version": "v1.18.1", + "version": "v1.20.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-php56.git", - "reference": "13df84e91cd168f247c2f2ec82cc0fa24901c011" + "reference": "54b8cd7e6c1643d78d011f3be89f3ef1f9f4c675" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php56/zipball/13df84e91cd168f247c2f2ec82cc0fa24901c011", - "reference": "13df84e91cd168f247c2f2ec82cc0fa24901c011", + "url": "https://api.github.com/repos/symfony/polyfill-php56/zipball/54b8cd7e6c1643d78d011f3be89f3ef1f9f4c675", + "reference": "54b8cd7e6c1643d78d011f3be89f3ef1f9f4c675", "shasum": "" }, "require": { - "php": ">=5.3.3", - "symfony/polyfill-util": "~1.0" + "php": ">=7.1" }, - "type": "library", + "type": "metapackage", "extra": { "branch-alias": { - "dev-master": "1.18-dev" + "dev-main": "1.20-dev" }, "thanks": { "name": "symfony/polyfill", "url": "https://github.com/symfony/polyfill" } }, - "autoload": { - "psr-4": { - "Symfony\\Polyfill\\Php56\\": "" - }, - "files": [ - "bootstrap.php" - ] - }, "notification-url": "https://packagist.org/downloads/", "license": [ "MIT" @@ -4149,30 +4173,29 @@ "type": "tidelift" } ], - "time": "2020-07-14T12:35:20+00:00" + "time": "2020-10-23T14:02:19+00:00" }, { - "name": "symfony/polyfill-php70", - "version": "v1.18.1", + "name": "symfony/polyfill-php72", + "version": "v1.20.0", "source": { "type": "git", - "url": "https://github.com/symfony/polyfill-php70.git", - "reference": "0dd93f2c578bdc9c72697eaa5f1dd25644e618d3" + "url": "https://github.com/symfony/polyfill-php72.git", + "reference": "cede45fcdfabdd6043b3592e83678e42ec69e930" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php70/zipball/0dd93f2c578bdc9c72697eaa5f1dd25644e618d3", - "reference": "0dd93f2c578bdc9c72697eaa5f1dd25644e618d3", + "url": "https://api.github.com/repos/symfony/polyfill-php72/zipball/cede45fcdfabdd6043b3592e83678e42ec69e930", + "reference": "cede45fcdfabdd6043b3592e83678e42ec69e930", "shasum": "" }, "require": { - "paragonie/random_compat": "~1.0|~2.0|~9.99", - "php": ">=5.3.3" + "php": ">=7.1" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.18-dev" + "dev-main": "1.20-dev" }, "thanks": { "name": "symfony/polyfill", @@ -4181,13 +4204,10 @@ }, "autoload": { "psr-4": { - "Symfony\\Polyfill\\Php70\\": "" + "Symfony\\Polyfill\\Php72\\": "" }, "files": [ "bootstrap.php" - ], - "classmap": [ - "Resources/stubs" ] }, "notification-url": "https://packagist.org/downloads/", @@ -4204,7 +4224,7 @@ "homepage": "https://symfony.com/contributors" } ], - "description": "Symfony polyfill backporting some PHP 7.0+ features to lower PHP versions", + "description": "Symfony polyfill backporting some PHP 7.2+ features to lower PHP versions", "homepage": "https://symfony.com", "keywords": [ "compatibility", @@ -4212,88 +4232,43 @@ "portable", "shim" ], - "time": "2020-07-14T12:35:20+00:00" - }, - { - "name": "symfony/polyfill-php72", - "version": "v1.18.1", - "source": { - "type": "git", - "url": "https://github.com/symfony/polyfill-php72.git", - "reference": "639447d008615574653fb3bc60d1986d7172eaae" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php72/zipball/639447d008615574653fb3bc60d1986d7172eaae", - "reference": "639447d008615574653fb3bc60d1986d7172eaae", - "shasum": "" - }, - "require": { - "php": ">=5.3.3" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.18-dev" - }, - "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" - } - }, - "autoload": { - "psr-4": { - "Symfony\\Polyfill\\Php72\\": "" + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" }, - "files": [ - "bootstrap.php" - ] - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ { - "name": "Nicolas Grekas", - "email": "p@tchwork.com" + "url": "https://github.com/fabpot", + "type": "github" }, { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" } ], - "description": "Symfony polyfill backporting some PHP 7.2+ features to lower PHP versions", - "homepage": "https://symfony.com", - "keywords": [ - "compatibility", - "polyfill", - "portable", - "shim" - ], - "time": "2020-07-14T12:35:20+00:00" + "time": "2020-10-23T14:02:19+00:00" }, { "name": "symfony/polyfill-php73", - "version": "v1.18.1", + "version": "v1.20.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-php73.git", - "reference": "fffa1a52a023e782cdcc221d781fe1ec8f87fcca" + "reference": "8ff431c517be11c78c48a39a66d37431e26a6bed" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php73/zipball/fffa1a52a023e782cdcc221d781fe1ec8f87fcca", - "reference": "fffa1a52a023e782cdcc221d781fe1ec8f87fcca", + "url": "https://api.github.com/repos/symfony/polyfill-php73/zipball/8ff431c517be11c78c48a39a66d37431e26a6bed", + "reference": "8ff431c517be11c78c48a39a66d37431e26a6bed", "shasum": "" }, "require": { - "php": ">=5.3.3" + "php": ">=7.1" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.18-dev" + "dev-main": "1.20-dev" }, "thanks": { "name": "symfony/polyfill", @@ -4333,29 +4308,43 @@ "portable", "shim" ], - "time": "2020-07-14T12:35:20+00:00" + "funding": [ + { + "url": "https://symfony.com/sponsor", + "type": "custom" + }, + { + "url": "https://github.com/fabpot", + "type": "github" + }, + { + "url": "https://tidelift.com/funding/github/packagist/symfony/symfony", + "type": "tidelift" + } + ], + "time": "2020-10-23T14:02:19+00:00" }, { "name": "symfony/polyfill-php80", - "version": "v1.18.1", + "version": "v1.20.0", "source": { "type": "git", "url": "https://github.com/symfony/polyfill-php80.git", - "reference": "d87d5766cbf48d72388a9f6b85f280c8ad51f981" + "reference": "e70aa8b064c5b72d3df2abd5ab1e90464ad009de" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/d87d5766cbf48d72388a9f6b85f280c8ad51f981", - "reference": "d87d5766cbf48d72388a9f6b85f280c8ad51f981", + "url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/e70aa8b064c5b72d3df2abd5ab1e90464ad009de", + "reference": "e70aa8b064c5b72d3df2abd5ab1e90464ad009de", "shasum": "" }, "require": { - "php": ">=7.0.8" + "php": ">=7.1" }, "type": "library", "extra": { "branch-alias": { - "dev-master": "1.18-dev" + "dev-main": "1.20-dev" }, "thanks": { "name": "symfony/polyfill", @@ -4399,62 +4388,6 @@ "portable", "shim" ], - "time": "2020-07-14T12:35:20+00:00" - }, - { - "name": "symfony/polyfill-util", - "version": "v1.18.1", - "source": { - "type": "git", - "url": "https://github.com/symfony/polyfill-util.git", - "reference": "46b910c71e9828f8ec2aa7a0314de1130d9b295a" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/symfony/polyfill-util/zipball/46b910c71e9828f8ec2aa7a0314de1130d9b295a", - "reference": "46b910c71e9828f8ec2aa7a0314de1130d9b295a", - "shasum": "" - }, - "require": { - "php": ">=5.3.3" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.18-dev" - }, - "thanks": { - "name": "symfony/polyfill", - "url": "https://github.com/symfony/polyfill" - } - }, - "autoload": { - "psr-4": { - "Symfony\\Polyfill\\Util\\": "" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "Nicolas Grekas", - "email": "p@tchwork.com" - }, - { - "name": "Symfony Community", - "homepage": "https://symfony.com/contributors" - } - ], - "description": "Symfony utilities for portability of PHP codes", - "homepage": "https://symfony.com", - "keywords": [ - "compat", - "compatibility", - "polyfill", - "shim" - ], "funding": [ { "url": "https://symfony.com/sponsor", @@ -4469,20 +4402,20 @@ "type": "tidelift" } ], - "time": "2020-07-14T12:35:20+00:00" + "time": "2020-10-23T14:02:19+00:00" }, { "name": "symfony/process", - "version": "v5.1.7", + "version": "v5.1.8", "source": { "type": "git", "url": "https://github.com/symfony/process.git", - "reference": "d3a2e64866169586502f0cd9cab69135ad12cee9" + "reference": "f00872c3f6804150d6a0f73b4151daab96248101" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/process/zipball/d3a2e64866169586502f0cd9cab69135ad12cee9", - "reference": "d3a2e64866169586502f0cd9cab69135ad12cee9", + "url": "https://api.github.com/repos/symfony/process/zipball/f00872c3f6804150d6a0f73b4151daab96248101", + "reference": "f00872c3f6804150d6a0f73b4151daab96248101", "shasum": "" }, "require": { @@ -4490,11 +4423,6 @@ "symfony/polyfill-php80": "^1.15" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "5.1-dev" - } - }, "autoload": { "psr-4": { "Symfony\\Component\\Process\\": "" @@ -4533,20 +4461,20 @@ "type": "tidelift" } ], - "time": "2020-09-02T16:23:27+00:00" + "time": "2020-10-24T12:01:57+00:00" }, { "name": "symfony/routing", - "version": "v5.1.7", + "version": "v5.1.8", "source": { "type": "git", "url": "https://github.com/symfony/routing.git", - "reference": "720348c2ae011f8c56964c0fc3e992840cb60ccf" + "reference": "d6ceee2a37b61b41079005207bf37746d1bfe71f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/routing/zipball/720348c2ae011f8c56964c0fc3e992840cb60ccf", - "reference": "720348c2ae011f8c56964c0fc3e992840cb60ccf", + "url": "https://api.github.com/repos/symfony/routing/zipball/d6ceee2a37b61b41079005207bf37746d1bfe71f", + "reference": "d6ceee2a37b61b41079005207bf37746d1bfe71f", "shasum": "" }, "require": { @@ -4576,11 +4504,6 @@ "symfony/yaml": "For using the YAML loader" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "5.1-dev" - } - }, "autoload": { "psr-4": { "Symfony\\Component\\Routing\\": "" @@ -4625,7 +4548,7 @@ "type": "tidelift" } ], - "time": "2020-10-02T13:05:43+00:00" + "time": "2020-10-24T12:01:57+00:00" }, { "name": "symfony/service-contracts", @@ -4691,16 +4614,16 @@ }, { "name": "symfony/string", - "version": "v5.1.7", + "version": "v5.1.8", "source": { "type": "git", "url": "https://github.com/symfony/string.git", - "reference": "4a9afe9d07bac506f75bcee8ed3ce76da5a9343e" + "reference": "a97573e960303db71be0dd8fda9be3bca5e0feea" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/string/zipball/4a9afe9d07bac506f75bcee8ed3ce76da5a9343e", - "reference": "4a9afe9d07bac506f75bcee8ed3ce76da5a9343e", + "url": "https://api.github.com/repos/symfony/string/zipball/a97573e960303db71be0dd8fda9be3bca5e0feea", + "reference": "a97573e960303db71be0dd8fda9be3bca5e0feea", "shasum": "" }, "require": { @@ -4718,11 +4641,6 @@ "symfony/var-exporter": "^4.4|^5.0" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "5.1-dev" - } - }, "autoload": { "psr-4": { "Symfony\\Component\\String\\": "" @@ -4772,20 +4690,20 @@ "type": "tidelift" } ], - "time": "2020-09-15T12:23:47+00:00" + "time": "2020-10-24T12:01:57+00:00" }, { "name": "symfony/translation", - "version": "v5.1.7", + "version": "v5.1.8", "source": { "type": "git", "url": "https://github.com/symfony/translation.git", - "reference": "e3cdd5119b1b5bf0698c351b8ee20fb5a4ea248b" + "reference": "27980838fd261e04379fa91e94e81e662fe5a1b6" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/translation/zipball/e3cdd5119b1b5bf0698c351b8ee20fb5a4ea248b", - "reference": "e3cdd5119b1b5bf0698c351b8ee20fb5a4ea248b", + "url": "https://api.github.com/repos/symfony/translation/zipball/27980838fd261e04379fa91e94e81e662fe5a1b6", + "reference": "27980838fd261e04379fa91e94e81e662fe5a1b6", "shasum": "" }, "require": { @@ -4821,11 +4739,6 @@ "symfony/yaml": "" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "5.1-dev" - } - }, "autoload": { "psr-4": { "Symfony\\Component\\Translation\\": "" @@ -4864,7 +4777,7 @@ "type": "tidelift" } ], - "time": "2020-09-27T03:44:28+00:00" + "time": "2020-10-24T12:01:57+00:00" }, { "name": "symfony/translation-contracts", @@ -4943,16 +4856,16 @@ }, { "name": "symfony/var-dumper", - "version": "v5.1.7", + "version": "v5.1.8", "source": { "type": "git", "url": "https://github.com/symfony/var-dumper.git", - "reference": "c976c115a0d788808f7e71834c8eb0844f678d02" + "reference": "4e13f3fcefb1fcaaa5efb5403581406f4e840b9a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/var-dumper/zipball/c976c115a0d788808f7e71834c8eb0844f678d02", - "reference": "c976c115a0d788808f7e71834c8eb0844f678d02", + "url": "https://api.github.com/repos/symfony/var-dumper/zipball/4e13f3fcefb1fcaaa5efb5403581406f4e840b9a", + "reference": "4e13f3fcefb1fcaaa5efb5403581406f4e840b9a", "shasum": "" }, "require": { @@ -4979,11 +4892,6 @@ "Resources/bin/var-dump-server" ], "type": "library", - "extra": { - "branch-alias": { - "dev-master": "5.1-dev" - } - }, "autoload": { "files": [ "Resources/functions/dump.php" @@ -5029,7 +4937,7 @@ "type": "tidelift" } ], - "time": "2020-09-18T14:27:32+00:00" + "time": "2020-10-27T10:11:13+00:00" }, { "name": "thujohn/twitter", @@ -5307,23 +5215,23 @@ }, { "name": "voku/portable-ascii", - "version": "1.5.3", + "version": "1.5.6", "source": { "type": "git", "url": "https://github.com/voku/portable-ascii.git", - "reference": "25bcbf01678930251fd572891447d9e318a6e2b8" + "reference": "80953678b19901e5165c56752d087fc11526017c" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/voku/portable-ascii/zipball/25bcbf01678930251fd572891447d9e318a6e2b8", - "reference": "25bcbf01678930251fd572891447d9e318a6e2b8", + "url": "https://api.github.com/repos/voku/portable-ascii/zipball/80953678b19901e5165c56752d087fc11526017c", + "reference": "80953678b19901e5165c56752d087fc11526017c", "shasum": "" }, "require": { "php": ">=7.0.0" }, "require-dev": { - "phpunit/phpunit": "~6.0 || ~7.0" + "phpunit/phpunit": "~6.0 || ~7.0 || ~9.0" }, "suggest": { "ext-intl": "Use Intl for transliterator_transliterate() support" @@ -5373,42 +5281,37 @@ "type": "tidelift" } ], - "time": "2020-07-22T23:32:04+00:00" + "time": "2020-11-12T00:07:28+00:00" } ], "packages-dev": [ { "name": "doctrine/instantiator", - "version": "1.3.1", + "version": "1.4.0", "source": { "type": "git", "url": "https://github.com/doctrine/instantiator.git", - "reference": "f350df0268e904597e3bd9c4685c53e0e333feea" + "reference": "d56bf6102915de5702778fe20f2de3b2fe570b5b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/doctrine/instantiator/zipball/f350df0268e904597e3bd9c4685c53e0e333feea", - "reference": "f350df0268e904597e3bd9c4685c53e0e333feea", + "url": "https://api.github.com/repos/doctrine/instantiator/zipball/d56bf6102915de5702778fe20f2de3b2fe570b5b", + "reference": "d56bf6102915de5702778fe20f2de3b2fe570b5b", "shasum": "" }, "require": { "php": "^7.1 || ^8.0" }, "require-dev": { - "doctrine/coding-standard": "^6.0", + "doctrine/coding-standard": "^8.0", "ext-pdo": "*", "ext-phar": "*", - "phpbench/phpbench": "^0.13", - "phpstan/phpstan-phpunit": "^0.11", - "phpstan/phpstan-shim": "^0.11", - "phpunit/phpunit": "^7.0" + "phpbench/phpbench": "^0.13 || 1.0.0-alpha2", + "phpstan/phpstan": "^0.12", + "phpstan/phpstan-phpunit": "^0.12", + "phpunit/phpunit": "^7.0 || ^8.0 || ^9.0" }, "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.2.x-dev" - } - }, "autoload": { "psr-4": { "Doctrine\\Instantiator\\": "src/Doctrine/Instantiator/" @@ -5422,7 +5325,7 @@ { "name": "Marco Pivetta", "email": "ocramius@gmail.com", - "homepage": "http://ocramius.github.com/" + "homepage": "https://ocramius.github.io/" } ], "description": "A small, lightweight utility to instantiate objects in PHP without invoking their constructors", @@ -5431,7 +5334,21 @@ "constructor", "instantiate" ], - "time": "2020-05-29T17:27:14+00:00" + "funding": [ + { + "url": "https://www.doctrine-project.org/sponsorship.html", + "type": "custom" + }, + { + "url": "https://www.patreon.com/phpdoctrine", + "type": "patreon" + }, + { + "url": "https://tidelift.com/funding/github/packagist/doctrine%2Finstantiator", + "type": "tidelift" + } + ], + "time": "2020-11-10T18:47:58+00:00" }, { "name": "fzaninotto/faker", @@ -5648,22 +5565,22 @@ }, { "name": "nunomaduro/collision", - "version": "v5.0.2", + "version": "v5.1.0", "source": { "type": "git", "url": "https://github.com/nunomaduro/collision.git", - "reference": "4a343299054e9368d0db4a982a780cc4ffa12707" + "reference": "7c2b95589bf81e274e61e47f7672a1b2c3e06eaa" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/nunomaduro/collision/zipball/4a343299054e9368d0db4a982a780cc4ffa12707", - "reference": "4a343299054e9368d0db4a982a780cc4ffa12707", + "url": "https://api.github.com/repos/nunomaduro/collision/zipball/7c2b95589bf81e274e61e47f7672a1b2c3e06eaa", + "reference": "7c2b95589bf81e274e61e47f7672a1b2c3e06eaa", "shasum": "" }, "require": { "facade/ignition-contracts": "^1.0", "filp/whoops": "^2.7.2", - "php": "^7.3", + "php": "^7.3 || ^8.0", "symfony/console": "^5.0" }, "require-dev": { @@ -5728,7 +5645,7 @@ "type": "patreon" } ], - "time": "2020-08-27T18:58:22+00:00" + "time": "2020-10-29T14:50:40+00:00" }, { "name": "phar-io/manifest", @@ -6044,23 +5961,23 @@ }, { "name": "phpunit/php-code-coverage", - "version": "9.2.0", + "version": "9.2.3", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/php-code-coverage.git", - "reference": "53a4b737e83be724efd2bc4e7b929b9a30c48972" + "reference": "6b20e2055f7c29b56cb3870b3de7cc463d7add41" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/53a4b737e83be724efd2bc4e7b929b9a30c48972", - "reference": "53a4b737e83be724efd2bc4e7b929b9a30c48972", + "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/6b20e2055f7c29b56cb3870b3de7cc463d7add41", + "reference": "6b20e2055f7c29b56cb3870b3de7cc463d7add41", "shasum": "" }, "require": { "ext-dom": "*", "ext-libxml": "*", "ext-xmlwriter": "*", - "nikic/php-parser": "^4.8", + "nikic/php-parser": "^4.10.2", "php": ">=7.3", "phpunit/php-file-iterator": "^3.0.3", "phpunit/php-text-template": "^2.0.2", @@ -6113,7 +6030,7 @@ "type": "github" } ], - "time": "2020-10-02T03:37:32+00:00" + "time": "2020-10-30T10:46:41+00:00" }, { "name": "phpunit/php-file-iterator", @@ -6232,16 +6149,16 @@ }, { "name": "phpunit/php-text-template", - "version": "2.0.3", + "version": "2.0.4", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/php-text-template.git", - "reference": "18c887016e60e52477e54534956d7b47bc52cd84" + "reference": "5da5f67fc95621df9ff4c4e5a84d6a8a2acf7c28" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-text-template/zipball/18c887016e60e52477e54534956d7b47bc52cd84", - "reference": "18c887016e60e52477e54534956d7b47bc52cd84", + "url": "https://api.github.com/repos/sebastianbergmann/php-text-template/zipball/5da5f67fc95621df9ff4c4e5a84d6a8a2acf7c28", + "reference": "5da5f67fc95621df9ff4c4e5a84d6a8a2acf7c28", "shasum": "" }, "require": { @@ -6283,20 +6200,20 @@ "type": "github" } ], - "time": "2020-09-28T06:03:05+00:00" + "time": "2020-10-26T05:33:50+00:00" }, { "name": "phpunit/php-timer", - "version": "5.0.2", + "version": "5.0.3", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/php-timer.git", - "reference": "c9ff14f493699e2f6adee9fd06a0245b276643b7" + "reference": "5a63ce20ed1b5bf577850e2c4e87f4aa902afbd2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/c9ff14f493699e2f6adee9fd06a0245b276643b7", - "reference": "c9ff14f493699e2f6adee9fd06a0245b276643b7", + "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/5a63ce20ed1b5bf577850e2c4e87f4aa902afbd2", + "reference": "5a63ce20ed1b5bf577850e2c4e87f4aa902afbd2", "shasum": "" }, "require": { @@ -6338,20 +6255,20 @@ "type": "github" } ], - "time": "2020-09-28T06:00:25+00:00" + "time": "2020-10-26T13:16:10+00:00" }, { "name": "phpunit/phpunit", - "version": "9.4.2", + "version": "9.4.3", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/phpunit.git", - "reference": "3866b2eeeed21b1b099c4bc0b7a1690ac6fd5baa" + "reference": "9fa359ff5ddaa5eb2be2bedb08a6a5787a5807ab" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/3866b2eeeed21b1b099c4bc0b7a1690ac6fd5baa", - "reference": "3866b2eeeed21b1b099c4bc0b7a1690ac6fd5baa", + "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/9fa359ff5ddaa5eb2be2bedb08a6a5787a5807ab", + "reference": "9fa359ff5ddaa5eb2be2bedb08a6a5787a5807ab", "shasum": "" }, "require": { @@ -6437,7 +6354,7 @@ "type": "github" } ], - "time": "2020-10-19T09:23:29+00:00" + "time": "2020-11-10T12:53:30+00:00" }, { "name": "sebastian/cli-parser", @@ -6493,16 +6410,16 @@ }, { "name": "sebastian/code-unit", - "version": "1.0.7", + "version": "1.0.8", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/code-unit.git", - "reference": "59236be62b1bb9919e6d7f60b0b832dc05cef9ab" + "reference": "1fc9f64c0927627ef78ba436c9b17d967e68e120" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/code-unit/zipball/59236be62b1bb9919e6d7f60b0b832dc05cef9ab", - "reference": "59236be62b1bb9919e6d7f60b0b832dc05cef9ab", + "url": "https://api.github.com/repos/sebastianbergmann/code-unit/zipball/1fc9f64c0927627ef78ba436c9b17d967e68e120", + "reference": "1fc9f64c0927627ef78ba436c9b17d967e68e120", "shasum": "" }, "require": { @@ -6541,7 +6458,7 @@ "type": "github" } ], - "time": "2020-10-02T14:47:54+00:00" + "time": "2020-10-26T13:08:54+00:00" }, { "name": "sebastian/code-unit-reverse-lookup", @@ -6596,16 +6513,16 @@ }, { "name": "sebastian/comparator", - "version": "4.0.5", + "version": "4.0.6", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/comparator.git", - "reference": "7a8ff306445707539c1a6397372a982a1ec55120" + "reference": "55f4261989e546dc112258c7a75935a81a7ce382" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/7a8ff306445707539c1a6397372a982a1ec55120", - "reference": "7a8ff306445707539c1a6397372a982a1ec55120", + "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/55f4261989e546dc112258c7a75935a81a7ce382", + "reference": "55f4261989e546dc112258c7a75935a81a7ce382", "shasum": "" }, "require": { @@ -6662,20 +6579,20 @@ "type": "github" } ], - "time": "2020-09-30T06:47:25+00:00" + "time": "2020-10-26T15:49:45+00:00" }, { "name": "sebastian/complexity", - "version": "2.0.1", + "version": "2.0.2", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/complexity.git", - "reference": "ba8cc2da0c0bfbc813d03b56406734030c7f1eff" + "reference": "739b35e53379900cc9ac327b2147867b8b6efd88" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/complexity/zipball/ba8cc2da0c0bfbc813d03b56406734030c7f1eff", - "reference": "ba8cc2da0c0bfbc813d03b56406734030c7f1eff", + "url": "https://api.github.com/repos/sebastianbergmann/complexity/zipball/739b35e53379900cc9ac327b2147867b8b6efd88", + "reference": "739b35e53379900cc9ac327b2147867b8b6efd88", "shasum": "" }, "require": { @@ -6715,20 +6632,20 @@ "type": "github" } ], - "time": "2020-09-28T06:05:03+00:00" + "time": "2020-10-26T15:52:27+00:00" }, { "name": "sebastian/diff", - "version": "4.0.3", + "version": "4.0.4", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/diff.git", - "reference": "ffc949a1a2aae270ea064453d7535b82e4c32092" + "reference": "3461e3fccc7cfdfc2720be910d3bd73c69be590d" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/ffc949a1a2aae270ea064453d7535b82e4c32092", - "reference": "ffc949a1a2aae270ea064453d7535b82e4c32092", + "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/3461e3fccc7cfdfc2720be910d3bd73c69be590d", + "reference": "3461e3fccc7cfdfc2720be910d3bd73c69be590d", "shasum": "" }, "require": { @@ -6777,7 +6694,7 @@ "type": "github" } ], - "time": "2020-09-28T05:32:55+00:00" + "time": "2020-10-26T13:10:38+00:00" }, { "name": "sebastian/environment", @@ -6913,16 +6830,16 @@ }, { "name": "sebastian/global-state", - "version": "5.0.1", + "version": "5.0.2", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/global-state.git", - "reference": "ea779cb749a478b22a2564ac41cd7bda79c78dc7" + "reference": "a90ccbddffa067b51f574dea6eb25d5680839455" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/ea779cb749a478b22a2564ac41cd7bda79c78dc7", - "reference": "ea779cb749a478b22a2564ac41cd7bda79c78dc7", + "url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/a90ccbddffa067b51f574dea6eb25d5680839455", + "reference": "a90ccbddffa067b51f574dea6eb25d5680839455", "shasum": "" }, "require": { @@ -6969,20 +6886,20 @@ "type": "github" } ], - "time": "2020-09-28T05:54:06+00:00" + "time": "2020-10-26T15:55:19+00:00" }, { "name": "sebastian/lines-of-code", - "version": "1.0.1", + "version": "1.0.2", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/lines-of-code.git", - "reference": "6514b8f21906b8b46f520d1fbd17a4523fa59a54" + "reference": "acf76492a65401babcf5283296fa510782783a7a" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/lines-of-code/zipball/6514b8f21906b8b46f520d1fbd17a4523fa59a54", - "reference": "6514b8f21906b8b46f520d1fbd17a4523fa59a54", + "url": "https://api.github.com/repos/sebastianbergmann/lines-of-code/zipball/acf76492a65401babcf5283296fa510782783a7a", + "reference": "acf76492a65401babcf5283296fa510782783a7a", "shasum": "" }, "require": { @@ -7022,20 +6939,20 @@ "type": "github" } ], - "time": "2020-09-28T06:07:27+00:00" + "time": "2020-10-26T17:03:56+00:00" }, { "name": "sebastian/object-enumerator", - "version": "4.0.3", + "version": "4.0.4", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/object-enumerator.git", - "reference": "f6f5957013d84725427d361507e13513702888a4" + "reference": "5c9eeac41b290a3712d88851518825ad78f45c71" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/object-enumerator/zipball/f6f5957013d84725427d361507e13513702888a4", - "reference": "f6f5957013d84725427d361507e13513702888a4", + "url": "https://api.github.com/repos/sebastianbergmann/object-enumerator/zipball/5c9eeac41b290a3712d88851518825ad78f45c71", + "reference": "5c9eeac41b290a3712d88851518825ad78f45c71", "shasum": "" }, "require": { @@ -7075,20 +6992,20 @@ "type": "github" } ], - "time": "2020-09-28T05:55:06+00:00" + "time": "2020-10-26T13:12:34+00:00" }, { "name": "sebastian/object-reflector", - "version": "2.0.3", + "version": "2.0.4", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/object-reflector.git", - "reference": "d9d0ab3b12acb1768bc1e0a89b23c90d2043cbe5" + "reference": "b4f479ebdbf63ac605d183ece17d8d7fe49c15c7" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/object-reflector/zipball/d9d0ab3b12acb1768bc1e0a89b23c90d2043cbe5", - "reference": "d9d0ab3b12acb1768bc1e0a89b23c90d2043cbe5", + "url": "https://api.github.com/repos/sebastianbergmann/object-reflector/zipball/b4f479ebdbf63ac605d183ece17d8d7fe49c15c7", + "reference": "b4f479ebdbf63ac605d183ece17d8d7fe49c15c7", "shasum": "" }, "require": { @@ -7126,20 +7043,20 @@ "type": "github" } ], - "time": "2020-09-28T05:56:16+00:00" + "time": "2020-10-26T13:14:26+00:00" }, { "name": "sebastian/recursion-context", - "version": "4.0.3", + "version": "4.0.4", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/recursion-context.git", - "reference": "ed8c9cd355089134bc9cba421b5cfdd58f0eaef7" + "reference": "cd9d8cf3c5804de4341c283ed787f099f5506172" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/ed8c9cd355089134bc9cba421b5cfdd58f0eaef7", - "reference": "ed8c9cd355089134bc9cba421b5cfdd58f0eaef7", + "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/cd9d8cf3c5804de4341c283ed787f099f5506172", + "reference": "cd9d8cf3c5804de4341c283ed787f099f5506172", "shasum": "" }, "require": { @@ -7185,7 +7102,7 @@ "type": "github" } ], - "time": "2020-09-28T05:17:32+00:00" + "time": "2020-10-26T13:17:30+00:00" }, { "name": "sebastian/resource-operations", @@ -7240,16 +7157,16 @@ }, { "name": "sebastian/type", - "version": "2.3.0", + "version": "2.3.1", "source": { "type": "git", "url": "https://github.com/sebastianbergmann/type.git", - "reference": "fa592377f3923946cb90bf1f6a71ba2e5f229909" + "reference": "81cd61ab7bbf2de744aba0ea61fae32f721df3d2" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/sebastianbergmann/type/zipball/fa592377f3923946cb90bf1f6a71ba2e5f229909", - "reference": "fa592377f3923946cb90bf1f6a71ba2e5f229909", + "url": "https://api.github.com/repos/sebastianbergmann/type/zipball/81cd61ab7bbf2de744aba0ea61fae32f721df3d2", + "reference": "81cd61ab7bbf2de744aba0ea61fae32f721df3d2", "shasum": "" }, "require": { @@ -7288,7 +7205,7 @@ "type": "github" } ], - "time": "2020-10-06T08:41:03+00:00" + "time": "2020-10-26T13:18:59+00:00" }, { "name": "sebastian/version", diff --git a/package-lock.json b/package-lock.json index bb945f0..e2d397d 100644 --- a/package-lock.json +++ b/package-lock.json @@ -12,9 +12,9 @@ } }, "@babel/compat-data": { - "version": "7.12.1", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.12.1.tgz", - "integrity": "sha512-725AQupWJZ8ba0jbKceeFblZTY90McUBWMwHhkFQ9q1zKPJ95GUktljFcgcsIVwRnTnRKlcYzfiNImg5G9m6ZQ==", + "version": "7.12.5", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.12.5.tgz", + "integrity": "sha512-DTsS7cxrsH3by8nqQSpFSyjSfSYl57D6Cf4q8dW3LK83tBKBDCkfcay1nYkXq1nIHXnpX8WMMb/O25HOy3h1zg==", "dev": true }, "@babel/core": { @@ -42,12 +42,12 @@ } }, "@babel/generator": { - "version": "7.12.1", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.12.1.tgz", - "integrity": "sha512-DB+6rafIdc9o72Yc3/Ph5h+6hUjeOp66pF0naQBgUFFuPqzQwIlPTm3xZR7YNvduIMtkDIj2t21LSQwnbCrXvg==", + "version": "7.12.5", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.12.5.tgz", + "integrity": "sha512-m16TQQJ8hPt7E+OS/XVQg/7U184MLXtvuGbCdA7na61vha+ImkyyNM/9DDA0unYCVZn3ZOhng+qz48/KBOT96A==", "dev": true, "requires": { - "@babel/types": "^7.12.1", + "@babel/types": "^7.12.5", "jsesc": "^2.5.1", "source-map": "^0.5.0" } @@ -72,14 +72,14 @@ } }, "@babel/helper-compilation-targets": { - "version": "7.12.1", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.12.1.tgz", - "integrity": "sha512-jtBEif7jsPwP27GPHs06v4WBV0KrE8a/P7n0N0sSvHn2hwUCYnolP/CLmz51IzAW4NlN+HuoBtb9QcwnRo9F/g==", + "version": "7.12.5", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.12.5.tgz", + "integrity": "sha512-+qH6NrscMolUlzOYngSBMIOQpKUGPPsc61Bu5W10mg84LxZ7cmvnBHzARKbDoFxVvqqAbj6Tg6N7bSrWSPXMyw==", "dev": true, "requires": { - "@babel/compat-data": "^7.12.1", + "@babel/compat-data": "^7.12.5", "@babel/helper-validator-option": "^7.12.1", - "browserslist": "^4.12.0", + "browserslist": "^4.14.5", "semver": "^5.5.0" } }, @@ -166,12 +166,12 @@ } }, "@babel/helper-module-imports": { - "version": "7.12.1", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.12.1.tgz", - "integrity": "sha512-ZeC1TlMSvikvJNy1v/wPIazCu3NdOwgYZLIkmIyAsGhqkNpiDoQQRmaCK8YP4Pq3GPTLPV9WXaPCJKvx06JxKA==", + "version": "7.12.5", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.12.5.tgz", + "integrity": "sha512-SR713Ogqg6++uexFRORf/+nPXMmWIn80TALu0uaFb+iQIUoR7bOC7zBWyzBs5b3tBBJXuyD0cRu1F15GyzjOWA==", "dev": true, "requires": { - "@babel/types": "^7.12.1" + "@babel/types": "^7.12.5" } }, "@babel/helper-module-transforms": { @@ -227,15 +227,15 @@ } }, "@babel/helper-replace-supers": { - "version": "7.12.1", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.12.1.tgz", - "integrity": "sha512-zJjTvtNJnCFsCXVi5rUInstLd/EIVNmIKA1Q9ynESmMBWPWd+7sdR+G4/wdu+Mppfep0XLyG2m7EBPvjCeFyrw==", + "version": "7.12.5", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.12.5.tgz", + "integrity": "sha512-5YILoed0ZyIpF4gKcpZitEnXEJ9UoDRki1Ey6xz46rxOzfNMAhVIJMoune1hmPVxh40LRv1+oafz7UsWX+vyWA==", "dev": true, "requires": { "@babel/helper-member-expression-to-functions": "^7.12.1", "@babel/helper-optimise-call-expression": "^7.10.4", - "@babel/traverse": "^7.12.1", - "@babel/types": "^7.12.1" + "@babel/traverse": "^7.12.5", + "@babel/types": "^7.12.5" } }, "@babel/helper-simple-access": { @@ -290,14 +290,14 @@ } }, "@babel/helpers": { - "version": "7.12.1", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.12.1.tgz", - "integrity": "sha512-9JoDSBGoWtmbay98efmT2+mySkwjzeFeAL9BuWNoVQpkPFQF8SIIFUfY5os9u8wVzglzoiPRSW7cuJmBDUt43g==", + "version": "7.12.5", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.12.5.tgz", + "integrity": "sha512-lgKGMQlKqA8meJqKsW6rUnc4MdUk35Ln0ATDqdM1a/UpARODdI4j5Y5lVfUScnSNkJcdCRAaWkspykNoFg9sJA==", "dev": true, "requires": { "@babel/template": "^7.10.4", - "@babel/traverse": "^7.12.1", - "@babel/types": "^7.12.1" + "@babel/traverse": "^7.12.5", + "@babel/types": "^7.12.5" } }, "@babel/highlight": { @@ -312,9 +312,9 @@ } }, "@babel/parser": { - "version": "7.12.3", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.12.3.tgz", - "integrity": "sha512-kFsOS0IbsuhO5ojF8Hc8z/8vEIOkylVBrjiZUbLTE3XFe0Qi+uu6HjzQixkFaqr0ZPAMZcBVxEwmsnsLPZ2Xsw==", + "version": "7.12.5", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.12.5.tgz", + "integrity": "sha512-FVM6RZQ0mn2KCf1VUED7KepYeUWoVShczewOCfm3nzoBybaih51h+sYVVGthW9M6lPByEPTQf+xm27PBdlpwmQ==", "dev": true }, "@babel/plugin-proposal-async-generator-functions": { @@ -389,9 +389,9 @@ } }, "@babel/plugin-proposal-numeric-separator": { - "version": "7.12.1", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.12.1.tgz", - "integrity": "sha512-MR7Ok+Af3OhNTCxYVjJZHS0t97ydnJZt/DbR4WISO39iDnhiD8XHrY12xuSJ90FFEGjir0Fzyyn7g/zY6hxbxA==", + "version": "7.12.5", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.12.5.tgz", + "integrity": "sha512-UiAnkKuOrCyjZ3sYNHlRlfuZJbBHknMQ9VMwVeX97Ofwx7RpD6gS2HfqTCh8KNUQgcOm8IKt103oR4KIjh7Q8g==", "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.10.4", @@ -972,9 +972,9 @@ } }, "@babel/runtime": { - "version": "7.12.1", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.12.1.tgz", - "integrity": "sha512-J5AIf3vPj3UwXaAzb5j1xM4WAQDX3EMgemF8rjCP3SoW09LfRKAXQKt6CoVYl230P6iWdRcBbnLDDdnqWxZSCA==", + "version": "7.12.5", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.12.5.tgz", + "integrity": "sha512-plcc+hbExy3McchJCEQG3knOsuh3HH+Prx1P6cLIkET/0dLuQDEnrT+s27Axgc9bqfsmNUNHfscgMUdBpC9xfg==", "dev": true, "requires": { "regenerator-runtime": "^0.13.4" @@ -992,26 +992,26 @@ } }, "@babel/traverse": { - "version": "7.12.1", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.12.1.tgz", - "integrity": "sha512-MA3WPoRt1ZHo2ZmoGKNqi20YnPt0B1S0GTZEPhhd+hw2KGUzBlHuVunj6K4sNuK+reEvyiPwtp0cpaqLzJDmAw==", + "version": "7.12.5", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.12.5.tgz", + "integrity": "sha512-xa15FbQnias7z9a62LwYAA5SZZPkHIXpd42C6uW68o8uTuua96FHZy1y61Va5P/i83FAAcMpW8+A/QayntzuqA==", "dev": true, "requires": { "@babel/code-frame": "^7.10.4", - "@babel/generator": "^7.12.1", + "@babel/generator": "^7.12.5", "@babel/helper-function-name": "^7.10.4", "@babel/helper-split-export-declaration": "^7.11.0", - "@babel/parser": "^7.12.1", - "@babel/types": "^7.12.1", + "@babel/parser": "^7.12.5", + "@babel/types": "^7.12.5", "debug": "^4.1.0", "globals": "^11.1.0", "lodash": "^4.17.19" } }, "@babel/types": { - "version": "7.12.1", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.12.1.tgz", - "integrity": "sha512-BzSY3NJBKM4kyatSOWh3D/JJ2O3CVzBybHWxtgxnggaxEuaSTTDqeiSb/xk9lrkw2Tbqyivw5ZU4rT+EfznQsA==", + "version": "7.12.6", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.12.6.tgz", + "integrity": "sha512-hwyjw6GvjBLiyy3W0YQf0Z5Zf4NpYejUnKFcfcUhZCSffoBBp30w6wP2Wn6pk31jMYZvcOrB/1b7cGXvEoKogA==", "dev": true, "requires": { "@babel/helper-validator-identifier": "^7.10.4", @@ -1064,9 +1064,9 @@ "dev": true }, "@types/node": { - "version": "14.11.10", - "resolved": "https://registry.npmjs.org/@types/node/-/node-14.11.10.tgz", - "integrity": "sha512-yV1nWZPlMFpoXyoknm4S56y2nlTAuFYaJuQtYRAOU7xA/FJ9RY0Xm7QOkaYMMmr8ESdHIuUb6oQgR/0+2NqlyA==", + "version": "14.14.7", + "resolved": "https://registry.npmjs.org/@types/node/-/node-14.14.7.tgz", + "integrity": "sha512-Zw1vhUSQZYw+7u5dAwNbIA9TuTotpzY/OF7sJM9FqPOF3SPjKnxrjoTktXDZgUjybf4cWVBP7O8wvKdSaGHweg==", "dev": true }, "@types/q": { @@ -1575,20 +1575,12 @@ } }, "axios": { - "version": "0.20.0", - "resolved": "https://registry.npmjs.org/axios/-/axios-0.20.0.tgz", - "integrity": "sha512-ANA4rr2BDcmmAQLOKft2fufrtuvlqR+cXNNinUmvfeSNCOF98PZL+7M/v1zIdGo7OLjEA9J2gXJL+j4zGsl0bA==", + "version": "0.21.0", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.21.0.tgz", + "integrity": "sha512-fmkJBknJKoZwem3/IKSSLpkdNXZeBu5Q7GA/aRsr2btgrptmSCxi2oFjZHqGdK9DoTil9PIHlPIZw2EcRJXRvw==", "dev": true, "requires": { "follow-redirects": "^1.10.0" - }, - "dependencies": { - "follow-redirects": { - "version": "1.13.0", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.13.0.tgz", - "integrity": "sha512-aq6gF1BEKje4a9i9+5jimNFIpq4Q1WiwBToeRK5NvZBd/TRsmW8BsJfOEGkr76TbOyPVD3OVDN910EcUNtRYEA==", - "dev": true - } } }, "babel-code-frame": { @@ -1636,14 +1628,14 @@ } }, "babel-loader": { - "version": "8.1.0", - "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.1.0.tgz", - "integrity": "sha512-7q7nC1tYOrqvUrN3LQK4GwSk/TQorZSOlO9C+RZDZpODgyN4ZlCqE5q9cDsyWOliN+aU9B4JX01xK9eJXowJLw==", + "version": "8.2.1", + "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.2.1.tgz", + "integrity": "sha512-dMF8sb2KQ8kJl21GUjkW1HWmcsL39GOV5vnzjqrCzEPNY0S0UfMLnumidiwIajDSBmKhYf5iRW+HXaM4cvCKBw==", "dev": true, "requires": { "find-cache-dir": "^2.1.0", "loader-utils": "^1.4.0", - "mkdirp": "^0.5.3", + "make-dir": "^2.1.0", "pify": "^4.0.1", "schema-utils": "^2.6.5" } @@ -1730,9 +1722,9 @@ } }, "base64-js": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.3.1.tgz", - "integrity": "sha512-mLQ4i2QO1ytvGWFWmcngKO//JXAQueZvwEKtjgQFM4jIK0kU+ytMfplL8j+n5mspOfjHwoAg+9yhb7BwAHm36g==", + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", "dev": true }, "batch": { @@ -1931,21 +1923,13 @@ } }, "browserify-rsa": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.0.1.tgz", - "integrity": "sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ=", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.1.0.tgz", + "integrity": "sha512-AdEER0Hkspgno2aR97SAf6vi0y0k8NuOpGnVH3O99rcA5Q6sh8QxcngtHuJ6uXwnfAXNM4Gn1Gb7/MV1+Ymbog==", "dev": true, "requires": { - "bn.js": "^4.1.0", + "bn.js": "^5.0.0", "randombytes": "^2.0.1" - }, - "dependencies": { - "bn.js": { - "version": "4.11.9", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.9.tgz", - "integrity": "sha512-E6QoYqCKZfgatHTdHzs1RRKP7ip4vvm+EyRUeE2RF0NblwVvb0p6jSVeNTOFxPn26QXN2o6SMfNxKp6kU8zQaw==", - "dev": true - } } }, "browserify-sign": { @@ -1994,15 +1978,16 @@ } }, "browserslist": { - "version": "4.14.5", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.14.5.tgz", - "integrity": "sha512-Z+vsCZIvCBvqLoYkBFTwEYH3v5MCQbsAjp50ERycpOjnPmolg1Gjy4+KaWWpm8QOJt9GHkhdqAl14NpCX73CWA==", + "version": "4.14.7", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.14.7.tgz", + "integrity": "sha512-BSVRLCeG3Xt/j/1cCGj1019Wbty0H+Yvu2AOuZSuoaUWn3RatbL33Cxk+Q4jRMRAbOm0p7SLravLjpnT6s0vzQ==", "dev": true, "requires": { - "caniuse-lite": "^1.0.30001135", - "electron-to-chromium": "^1.3.571", - "escalade": "^3.1.0", - "node-releases": "^1.1.61" + "caniuse-lite": "^1.0.30001157", + "colorette": "^1.2.1", + "electron-to-chromium": "^1.3.591", + "escalade": "^3.1.1", + "node-releases": "^1.1.66" } }, "buffer": { @@ -2089,6 +2074,16 @@ "unset-value": "^1.0.0" } }, + "call-bind": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.0.tgz", + "integrity": "sha512-AEXsYIyyDY3MCzbwdhzG3Jx1R0J2wetQyUynn6dYHAO+bg8l1k7jwZtRv4ryryFs7EP+NDlikJlVe59jr0cM2w==", + "dev": true, + "requires": { + "function-bind": "^1.1.1", + "get-intrinsic": "^1.0.0" + } + }, "call-me-maybe": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/call-me-maybe/-/call-me-maybe-1.0.1.tgz", @@ -2148,9 +2143,9 @@ } }, "caniuse-lite": { - "version": "1.0.30001148", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001148.tgz", - "integrity": "sha512-E66qcd0KMKZHNJQt9hiLZGE3J4zuTqE1OnU53miEVtylFbwOEmeA5OsRu90noZful+XGSQOni1aT2tiqu/9yYw==", + "version": "1.0.30001157", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001157.tgz", + "integrity": "sha512-gOerH9Wz2IRZ2ZPdMfBvyOi3cjaz4O4dgNwPGzx8EhqAs4+2IL/O+fJsbt+znSigujoZG8bVcIAUM/I/E5K3MA==", "dev": true }, "chalk": { @@ -2538,12 +2533,12 @@ "dev": true }, "core-js-compat": { - "version": "3.6.5", - "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.6.5.tgz", - "integrity": "sha512-7ItTKOhOZbznhXAQ2g/slGg1PJV5zDO/WdkTwi7UEOJmkvsE32PWvx6mKtDjiMpjnR2CNf6BAD6sSxIlv7ptng==", + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.7.0.tgz", + "integrity": "sha512-V8yBI3+ZLDVomoWICO6kq/CD28Y4r1M7CWeO4AGpMdMfseu8bkSubBmUPySMGKRTS+su4XQ07zUkAsiu9FCWTg==", "dev": true, "requires": { - "browserslist": "^4.8.5", + "browserslist": "^4.14.6", "semver": "7.0.0" }, "dependencies": { @@ -2860,28 +2855,28 @@ "dev": true }, "csso": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/csso/-/csso-4.0.3.tgz", - "integrity": "sha512-NL3spysxUkcrOgnpsT4Xdl2aiEiBG6bXswAABQVHcMrfjjBisFOKwLDOmf4wf32aPdcJws1zds2B0Rg+jqMyHQ==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/csso/-/csso-4.1.0.tgz", + "integrity": "sha512-h+6w/W1WqXaJA4tb1dk7r5tVbOm97MsKxzwnvOR04UQ6GILroryjMWu3pmCCtL2mLaEStQ0fZgeGiy99mo7iyg==", "dev": true, "requires": { - "css-tree": "1.0.0-alpha.39" + "css-tree": "^1.0.0" }, "dependencies": { "css-tree": { - "version": "1.0.0-alpha.39", - "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.0.0-alpha.39.tgz", - "integrity": "sha512-7UvkEYgBAHRG9Nt980lYxjsTrCyHFN53ky3wVsDkiMdVqylqRt+Zc+jm5qw7/qyOvN2dHSYtX0e4MbCCExSvnA==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.0.1.tgz", + "integrity": "sha512-WroX+2MvsYcRGP8QA0p+rxzOniT/zpAoQ/DTKDSJzh5T3IQKUkFHeIIfgIapm2uaP178GWY3Mime1qbk8GO/tA==", "dev": true, "requires": { - "mdn-data": "2.0.6", + "mdn-data": "2.0.12", "source-map": "^0.6.1" } }, "mdn-data": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.6.tgz", - "integrity": "sha512-rQvjv71olwNHgiTbfPZFkJtjNMciWgswYeciZhtvWLO8bmX3TnhyA62I6sTWOyZssWHJJjY6/KiWwqQsWWsqOA==", + "version": "2.0.12", + "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.12.tgz", + "integrity": "sha512-ULbAlgzVb8IqZ0Hsxm6hHSlQl3Jckst2YEQS7fODu9ilNWy2LvcoSY7TRFIktABP2mdppBioc66va90T+NUs8Q==", "dev": true }, "source-map": { @@ -3217,9 +3212,9 @@ "dev": true }, "electron-to-chromium": { - "version": "1.3.582", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.582.tgz", - "integrity": "sha512-0nCJ7cSqnkMC+kUuPs0YgklFHraWGl/xHqtZWWtOeVtyi+YqkoAOMGuZQad43DscXCQI/yizcTa3u6B5r+BLww==", + "version": "1.3.593", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.593.tgz", + "integrity": "sha512-GvO7G1ZxvffnMvPCr4A7+iQPVuvpyqMrx2VWSERAjG+pHK6tmO9XqYdBfMIq9corRyi4bNImSDEiDvIoDb8HrA==", "dev": true }, "elliptic": { @@ -3329,9 +3324,9 @@ } }, "es-abstract": { - "version": "1.18.0-next.1", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.0-next.1.tgz", - "integrity": "sha512-I4UGspA0wpZXWENrdA0uHbnhte683t3qT/1VFH9aX2dA5PPSf6QW5HHXf5HImaqPmjXaVeVk4RGWnaylmV7uAA==", + "version": "1.17.7", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.7.tgz", + "integrity": "sha512-VBl/gnfcJ7OercKA9MVaegWsBHFjV492syMudcnQZvt/Dw8ezpcOHYZXa/J96O8vx+g4x65YKhxOwDUh63aS5g==", "dev": true, "requires": { "es-to-primitive": "^1.2.1", @@ -3339,7 +3334,6 @@ "has": "^1.0.3", "has-symbols": "^1.0.1", "is-callable": "^1.2.2", - "is-negative-zero": "^2.0.0", "is-regex": "^1.1.1", "object-inspect": "^1.8.0", "object-keys": "^1.1.1", @@ -4083,9 +4077,9 @@ "dev": true }, "gensync": { - "version": "1.0.0-beta.1", - "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.1.tgz", - "integrity": "sha512-r8EC6NO1sngH/zdD9fiRDLdcgnbayXah+mLgManTaIZJqEC1MZstmnox8KpnI2/fxQwrp5OpCOYWLp4rBl4Jcg==", + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", "dev": true }, "get-caller-file": { @@ -4094,6 +4088,17 @@ "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", "dev": true }, + "get-intrinsic": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.0.1.tgz", + "integrity": "sha512-ZnWP+AmS1VUaLgTRy47+zKtjTxz+0xMpx3I52i+aalBK1QP19ggLF3Db89KJX7kjfOfP2eoa01qc++GwPgufPg==", + "dev": true, + "requires": { + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.1" + } + }, "get-stream": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", @@ -4564,9 +4569,9 @@ } }, "ieee754": { - "version": "1.1.13", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.1.13.tgz", - "integrity": "sha512-4vf7I2LYV/HaWerSo3XmlMkp5eZ83i+/CDluXi/IGTs/O1sejBNhTtnxzmRZfvOUqj7lZjqHkeTvpgSFDlWZTg==", + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", "dev": true }, "iferr": { @@ -4814,6 +4819,15 @@ "rgba-regex": "^1.0.0" } }, + "is-core-module": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.1.0.tgz", + "integrity": "sha512-YcV7BgVMRFRua2FqQzKtTDMz8iCuLEyGKjr70q8Zm1yy2qKcurbFEd79PAdHV77oL3NrAaOVQIbMmiHQCHB7ZA==", + "dev": true, + "requires": { + "has": "^1.0.3" + } + }, "is-data-descriptor": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz", @@ -5147,9 +5161,9 @@ "dev": true }, "laravel-mix": { - "version": "5.0.7", - "resolved": "https://registry.npmjs.org/laravel-mix/-/laravel-mix-5.0.7.tgz", - "integrity": "sha512-TL5txnQkzcwM8DYckgzjISSPGyZN6znFYb4NgtTSi9aIvfzOIEC6p0eYM6wDa/BkEKv290Ru6HWmH6Q2XApogQ==", + "version": "5.0.9", + "resolved": "https://registry.npmjs.org/laravel-mix/-/laravel-mix-5.0.9.tgz", + "integrity": "sha512-1WCJiHimTRW3KlxcabRTco0q+bo4uKPaFTkc6cJ/bLEq4JT1aPkojoauUK7+PyiIlDJncw0Nt2MtDrv5C6j5IQ==", "dev": true, "requires": { "@babel/core": "^7.2.0", @@ -5716,9 +5730,9 @@ } }, "node-releases": { - "version": "1.1.63", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.63.tgz", - "integrity": "sha512-ukW3iCfQaoxJkSPN+iK7KznTeqDGVJatAEuXsJERYHa9tn/KaT5lBdIyxQjLEVTzSkyjJEuQ17/vaEjrOauDkg==", + "version": "1.1.66", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.66.tgz", + "integrity": "sha512-JHEQ1iWPGK+38VLB2H9ef2otU4l8s3yAMt9Xf934r6+ojCYDMHPMqvCc9TnzfeFSP1QEOeU6YZEd3+De0LTCgg==", "dev": true }, "normalize-path": { @@ -5822,6 +5836,28 @@ "requires": { "define-properties": "^1.1.3", "es-abstract": "^1.18.0-next.1" + }, + "dependencies": { + "es-abstract": { + "version": "1.18.0-next.1", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.0-next.1.tgz", + "integrity": "sha512-I4UGspA0wpZXWENrdA0uHbnhte683t3qT/1VFH9aX2dA5PPSf6QW5HHXf5HImaqPmjXaVeVk4RGWnaylmV7uAA==", + "dev": true, + "requires": { + "es-to-primitive": "^1.2.1", + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.1", + "is-callable": "^1.2.2", + "is-negative-zero": "^2.0.0", + "is-regex": "^1.1.1", + "object-inspect": "^1.8.0", + "object-keys": "^1.1.1", + "object.assign": "^4.1.1", + "string.prototype.trimend": "^1.0.1", + "string.prototype.trimstart": "^1.0.1" + } + } } }, "object-keys": { @@ -5840,13 +5876,13 @@ } }, "object.assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.1.tgz", - "integrity": "sha512-VT/cxmx5yaoHSOTSyrCygIDFco+RsibY2NM0a4RdEeY/4KgqezwFtK1yr3U67xYhqJSlASm2pKhLVzPj2lr4bA==", + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.2.tgz", + "integrity": "sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ==", "dev": true, "requires": { + "call-bind": "^1.0.0", "define-properties": "^1.1.3", - "es-abstract": "^1.18.0-next.0", "has-symbols": "^1.0.1", "object-keys": "^1.1.1" } @@ -5859,27 +5895,6 @@ "requires": { "define-properties": "^1.1.3", "es-abstract": "^1.17.0-next.1" - }, - "dependencies": { - "es-abstract": { - "version": "1.17.7", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.7.tgz", - "integrity": "sha512-VBl/gnfcJ7OercKA9MVaegWsBHFjV492syMudcnQZvt/Dw8ezpcOHYZXa/J96O8vx+g4x65YKhxOwDUh63aS5g==", - "dev": true, - "requires": { - "es-to-primitive": "^1.2.1", - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.1", - "is-callable": "^1.2.2", - "is-regex": "^1.1.1", - "object-inspect": "^1.8.0", - "object-keys": "^1.1.1", - "object.assign": "^4.1.1", - "string.prototype.trimend": "^1.0.1", - "string.prototype.trimstart": "^1.0.1" - } - } } }, "object.omit": { @@ -5910,27 +5925,6 @@ "es-abstract": "^1.17.0-next.1", "function-bind": "^1.1.1", "has": "^1.0.3" - }, - "dependencies": { - "es-abstract": { - "version": "1.17.7", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.7.tgz", - "integrity": "sha512-VBl/gnfcJ7OercKA9MVaegWsBHFjV492syMudcnQZvt/Dw8ezpcOHYZXa/J96O8vx+g4x65YKhxOwDUh63aS5g==", - "dev": true, - "requires": { - "es-to-primitive": "^1.2.1", - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.1", - "is-callable": "^1.2.2", - "is-regex": "^1.1.1", - "object-inspect": "^1.8.0", - "object-keys": "^1.1.1", - "object.assign": "^4.1.1", - "string.prototype.trimend": "^1.0.1", - "string.prototype.trimstart": "^1.0.1" - } - } } }, "obuf": { @@ -7154,9 +7148,9 @@ } }, "regenerate": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.1.tgz", - "integrity": "sha512-j2+C8+NtXQgEKWk49MMP5P/u2GhnahTtVkRIHr5R5lVRlbKvmQ+oS+A5aLKWp2ma5VkT8sh6v+v4hbH0YHR66A==", + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz", + "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==", "dev": true }, "regenerate-unicode-properties": { @@ -7201,27 +7195,6 @@ "requires": { "define-properties": "^1.1.3", "es-abstract": "^1.17.0-next.1" - }, - "dependencies": { - "es-abstract": { - "version": "1.17.7", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.7.tgz", - "integrity": "sha512-VBl/gnfcJ7OercKA9MVaegWsBHFjV492syMudcnQZvt/Dw8ezpcOHYZXa/J96O8vx+g4x65YKhxOwDUh63aS5g==", - "dev": true, - "requires": { - "es-to-primitive": "^1.2.1", - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.1", - "is-callable": "^1.2.2", - "is-regex": "^1.1.1", - "object-inspect": "^1.8.0", - "object-keys": "^1.1.1", - "object.assign": "^4.1.1", - "string.prototype.trimend": "^1.0.1", - "string.prototype.trimstart": "^1.0.1" - } - } } }, "regexpu-core": { @@ -7310,11 +7283,12 @@ "dev": true }, "resolve": { - "version": "1.17.0", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.17.0.tgz", - "integrity": "sha512-ic+7JYiV8Vi2yzQGFWOkiZD5Z9z7O2Zhm9XMaTxdJExKasieFCr+yXZ/WmXsckHiKl12ar0y6XiXDx3m4RHn1w==", + "version": "1.19.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.19.0.tgz", + "integrity": "sha512-rArEXAgsBG4UgRGcynxWIWKFvh/XZCcS8UJdHhwy91zwAvCZIbcs+vAbflgBnNjYMs/i/i+/Ux6IZhML1yPvxg==", "dev": true, "requires": { + "is-core-module": "^2.1.0", "path-parse": "^1.0.6" } }, @@ -7436,18 +7410,18 @@ "dev": true }, "sass": { - "version": "1.27.0", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.27.0.tgz", - "integrity": "sha512-0gcrER56OkzotK/GGwgg4fPrKuiFlPNitO7eUJ18Bs+/NBlofJfMxmxqpqJxjae9vu0Wq8TZzrSyxZal00WDig==", + "version": "1.29.0", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.29.0.tgz", + "integrity": "sha512-ZpwAUFgnvAUCdkjwPREny+17BpUj8nh5Yr6zKPGtLNTLrmtoRYIjm7njP24COhjJldjwW1dcv52Lpf4tNZVVRA==", "dev": true, "requires": { "chokidar": ">=2.0.0 <4.0.0" } }, "sass-loader": { - "version": "10.0.3", - "resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-10.0.3.tgz", - "integrity": "sha512-W4+FV5oUdYy0PnC11ZoPrcAexODgDCa3ngxoy5X5qBhZYoPz9FPjb6Oox8Aa0ZYEyx34k8AQfOVuvqefOSAAUQ==", + "version": "10.1.0", + "resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-10.1.0.tgz", + "integrity": "sha512-ZCKAlczLBbFd3aGAhowpYEy69Te3Z68cg8bnHHl6WnSCvnKpbM6pQrz957HWMa8LKVuhnD9uMplmMAHwGQtHeg==", "dev": true, "requires": { "klona": "^2.0.4", @@ -8148,19 +8122,19 @@ } }, "string.prototype.trimend": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.1.tgz", - "integrity": "sha512-LRPxFUaTtpqYsTeNKaFOw3R4bxIzWOnbQ837QfBylo8jIxtcbK/A/sMV7Q+OAV/vWo+7s25pOE10KYSjaSO06g==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.2.tgz", + "integrity": "sha512-8oAG/hi14Z4nOVP0z6mdiVZ/wqjDtWSLygMigTzAb+7aPEDTleeFf+WrF+alzecxIRkckkJVn+dTlwzJXORATw==", "dev": true, "requires": { "define-properties": "^1.1.3", - "es-abstract": "^1.17.5" + "es-abstract": "^1.18.0-next.1" }, "dependencies": { "es-abstract": { - "version": "1.17.7", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.7.tgz", - "integrity": "sha512-VBl/gnfcJ7OercKA9MVaegWsBHFjV492syMudcnQZvt/Dw8ezpcOHYZXa/J96O8vx+g4x65YKhxOwDUh63aS5g==", + "version": "1.18.0-next.1", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.0-next.1.tgz", + "integrity": "sha512-I4UGspA0wpZXWENrdA0uHbnhte683t3qT/1VFH9aX2dA5PPSf6QW5HHXf5HImaqPmjXaVeVk4RGWnaylmV7uAA==", "dev": true, "requires": { "es-to-primitive": "^1.2.1", @@ -8168,6 +8142,7 @@ "has": "^1.0.3", "has-symbols": "^1.0.1", "is-callable": "^1.2.2", + "is-negative-zero": "^2.0.0", "is-regex": "^1.1.1", "object-inspect": "^1.8.0", "object-keys": "^1.1.1", @@ -8179,19 +8154,19 @@ } }, "string.prototype.trimstart": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.1.tgz", - "integrity": "sha512-XxZn+QpvrBI1FOcg6dIpxUPgWCPuNXvMD72aaRaUQv1eD4e/Qy8i/hFTe0BUmD60p/QA6bh1avmuPTfNjqVWRw==", + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.2.tgz", + "integrity": "sha512-7F6CdBTl5zyu30BJFdzSTlSlLPwODC23Od+iLoVH8X6+3fvDPPuBVVj9iaB1GOsSTSIgVfsfm27R2FGrAPznWg==", "dev": true, "requires": { "define-properties": "^1.1.3", - "es-abstract": "^1.17.5" + "es-abstract": "^1.18.0-next.1" }, "dependencies": { "es-abstract": { - "version": "1.17.7", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.7.tgz", - "integrity": "sha512-VBl/gnfcJ7OercKA9MVaegWsBHFjV492syMudcnQZvt/Dw8ezpcOHYZXa/J96O8vx+g4x65YKhxOwDUh63aS5g==", + "version": "1.18.0-next.1", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.0-next.1.tgz", + "integrity": "sha512-I4UGspA0wpZXWENrdA0uHbnhte683t3qT/1VFH9aX2dA5PPSf6QW5HHXf5HImaqPmjXaVeVk4RGWnaylmV7uAA==", "dev": true, "requires": { "es-to-primitive": "^1.2.1", @@ -8199,6 +8174,7 @@ "has": "^1.0.3", "has-symbols": "^1.0.1", "is-callable": "^1.2.2", + "is-negative-zero": "^2.0.0", "is-regex": "^1.1.1", "object-inspect": "^1.8.0", "object-keys": "^1.1.1", @@ -8463,9 +8439,9 @@ "dev": true }, "timers-browserify": { - "version": "2.0.11", - "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.11.tgz", - "integrity": "sha512-60aV6sgJ5YEbzUdn9c8kYGIqOubPoUdqQCul3SBAsRCZ40s6Y5cMcrW4dt3/k/EsbLVJNl9n6Vz3fTc+k2GeKQ==", + "version": "2.0.12", + "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.12.tgz", + "integrity": "sha512-9phl76Cqm6FhSX9Xe1ZUAMLtm1BLkKj2Qd5ApyWkXzsMRaA7dgr81kf4wJmQf/hAvg8EEyJxDo3du/0KlhPiKQ==", "dev": true, "requires": { "setimmediate": "^1.0.4" @@ -8819,27 +8795,6 @@ "es-abstract": "^1.17.2", "has-symbols": "^1.0.1", "object.getownpropertydescriptors": "^2.1.0" - }, - "dependencies": { - "es-abstract": { - "version": "1.17.7", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.7.tgz", - "integrity": "sha512-VBl/gnfcJ7OercKA9MVaegWsBHFjV492syMudcnQZvt/Dw8ezpcOHYZXa/J96O8vx+g4x65YKhxOwDUh63aS5g==", - "dev": true, - "requires": { - "es-to-primitive": "^1.2.1", - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.1", - "is-callable": "^1.2.2", - "is-regex": "^1.1.1", - "object-inspect": "^1.8.0", - "object-keys": "^1.1.1", - "object.assign": "^4.1.1", - "string.prototype.trimend": "^1.0.1", - "string.prototype.trimstart": "^1.0.1" - } - } } }, "utils-merge": { @@ -8855,9 +8810,9 @@ "dev": true }, "v8-compile-cache": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.1.1.tgz", - "integrity": "sha512-8OQ9CL+VWyt3JStj7HX7/ciTL2V3Rl1Wf5OL+SNTm0yK1KvtReVulksyeRnCANHHuUxHlQig+JJDlUhBt1NQDQ==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.2.0.tgz", + "integrity": "sha512-gTpR5XQNKFwOd4clxfnhaqvfqMpqEwr4tOtCyz4MtYZX2JYhfr1JvBFKdS+7K/9rfpZR3VLX+YWBbKoxCgS43Q==", "dev": true }, "vary": { @@ -8885,9 +8840,9 @@ "dev": true }, "vue-loader": { - "version": "15.9.3", - "resolved": "https://registry.npmjs.org/vue-loader/-/vue-loader-15.9.3.tgz", - "integrity": "sha512-Y67VnGGgVLH5Voostx8JBZgPQTlDQeOVBLOEsjc2cXbCYBKexSKEpOA56x0YZofoDOTszrLnIShyOX1p9uCEHA==", + "version": "15.9.5", + "resolved": "https://registry.npmjs.org/vue-loader/-/vue-loader-15.9.5.tgz", + "integrity": "sha512-oeMOs2b5o5gRqkxfds10bCx6JeXYTwivRgbb8hzOrcThD2z1+GqEKE3EX9A2SGbsYDf4rXwRg6D5n1w0jO5SwA==", "dev": true, "requires": { "@vue/component-compiler-utils": "^3.1.0", @@ -8924,15 +8879,15 @@ "dev": true }, "watchpack": { - "version": "1.7.4", - "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-1.7.4.tgz", - "integrity": "sha512-aWAgTW4MoSJzZPAicljkO1hsi1oKj/RRq/OJQh2PKI2UKL04c2Bs+MBOB+BBABHTXJpf9mCwHN7ANCvYsvY2sg==", + "version": "1.7.5", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-1.7.5.tgz", + "integrity": "sha512-9P3MWk6SrKjHsGkLT2KHXdQ/9SNkyoJbabxnKOoJepsvJjJG8uYTR3yTPxPQvNDI3w4Nz1xnE0TLHK4RIVe/MQ==", "dev": true, "requires": { "chokidar": "^3.4.1", "graceful-fs": "^4.1.2", "neo-async": "^2.5.0", - "watchpack-chokidar2": "^2.0.0" + "watchpack-chokidar2": "^2.0.1" }, "dependencies": { "anymatch": { @@ -9047,9 +9002,9 @@ } }, "watchpack-chokidar2": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/watchpack-chokidar2/-/watchpack-chokidar2-2.0.0.tgz", - "integrity": "sha512-9TyfOyN/zLUbA288wZ8IsMZ+6cbzvsNyEzSBp6e/zkifi6xxbl8SmQ/CxQq32k8NNqrdVEVUVSEf56L4rQ/ZxA==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/watchpack-chokidar2/-/watchpack-chokidar2-2.0.1.tgz", + "integrity": "sha512-nCFfBIPKr5Sh61s4LPpy1Wtfi0HE8isJ3d2Yb5/Ppw2P2B/3eVSEBjKfN0fmHJSK14+31KwMKmcrzs2GM4P0Ww==", "dev": true, "optional": true, "requires": { diff --git a/package.json b/package.json index 4058b52..b816192 100644 --- a/package.json +++ b/package.json @@ -11,15 +11,15 @@ }, "devDependencies": { "@fortawesome/fontawesome-pro": "5.15.1", - "axios": "0.20.0", + "axios": "0.21.0", "bootstrap": "4.5.3", "cross-env": "7.0.2", "jquery": "3.5.1", - "laravel-mix": "5.0.7", + "laravel-mix": "5.0.9", "lodash": "4.17.20", "popper.js": "1.16.1", - "sass": "1.27.0", - "sass-loader": "10.0.3", + "sass": "1.29.0", + "sass-loader": "10.1.0", "vue-template-compiler": "2.6.12" } } From edc749a4f4c8a86d55746c96016b271c20ec5af1 Mon Sep 17 00:00:00 2001 From: Yannick Date: Thu, 12 Nov 2020 21:18:51 +0100 Subject: [PATCH 06/74] Start implementing the Guide admin panel for Viv --- app/Ability.php | 14 + app/Helpers/GlobalHelper.php | 6 + app/Http/Controllers/Api/AuthController.php | 50 - .../Controllers/Api/MilestoneController.php | 68 - .../Controllers/admin/AbilityController.php | 93 + .../Controllers/admin/AboutController.php | 28 + .../Controllers/admin/AccountController.php | 84 + .../Controllers/admin/DashboardController.php | 26 + app/Http/Controllers/admin/RoleController.php | 134 + .../Controllers/admin/SearchController.php | 22 + .../Controllers/admin/SettingsController.php | 27 + .../Middleware/RedirectIfAuthenticated.php | 2 +- app/Providers/AuthServiceProvider.php | 4 +- app/Providers/HelperServiceProvider.php | 1 + app/Role.php | 16 +- app/User.php | 38 +- composer.json | 4 +- composer.lock | 187 +- .../2020_04_27_213532_create_roles_table.php | 42 + ...20_04_27_213540_create_abilities_table.php | 38 + database/seeds/DatabaseSeeder.php | 2 +- database/seeds/RoleTableSeeder.php | 144 +- package-lock.json | 56 +- package.json | 5 +- public/css/admin.css | 12235 ++++++++++ public/css/app.css | 12394 +++++------ public/css/easymde.min.css | 7 + public/img/models/user.png | Bin 0 -> 29429 bytes public/img/topography.svg | 1 + public/js/alpine.js | 1908 ++ public/js/app.js | 18413 ++++------------ public/js/easymde.min.js | 7 + public/mix-manifest.json | 5 +- readme.md | 12 + resources/js/app.js | 11 +- resources/js/bootstrap.js | 25 +- resources/sass/core/_avatar.scss | 87 + resources/sass/core/_btn.scss | 20 + resources/sass/core/_card.scss | 45 + resources/sass/core/_dark.scss | 202 + resources/sass/core/_header.scss | 49 + resources/sass/core/_modal.scss | 18 + resources/sass/core/_nav.scss | 48 + resources/sass/core/_navbar.scss | 72 + resources/sass/core/_pagebar.scss | 38 + resources/sass/core/_pagination.scss | 58 + resources/sass/core/_variables.scss | 78 + resources/sass/core/admin.scss | 267 + resources/views/core/abilities/edit.blade.php | 56 + .../views/core/abilities/index.blade.php | 92 + resources/views/core/about/index.blade.php | 45 + resources/views/core/accounts/edit.blade.php | 92 + resources/views/core/accounts/index.blade.php | 45 + .../views/core/dashboard/index.blade.php | 44 + resources/views/core/layouts/app.blade.php | 148 + resources/views/core/roles/edit.blade.php | 133 + resources/views/core/roles/index.blade.php | 118 + .../views/core/search/_account.blade.php | 20 + resources/views/core/search/index.blade.php | 29 + resources/views/core/search/results.blade.php | 57 + .../views/core/settings/general.blade.php | 57 + resources/views/layouts/app.blade.php | 6 +- resources/views/timeline.blade.php | 8 +- routes/web.php | 53 + webpack.mix.js | 10 +- 65 files changed, 27168 insertions(+), 20936 deletions(-) create mode 100644 app/Ability.php create mode 100644 app/Helpers/GlobalHelper.php delete mode 100644 app/Http/Controllers/Api/AuthController.php delete mode 100644 app/Http/Controllers/Api/MilestoneController.php create mode 100644 app/Http/Controllers/admin/AbilityController.php create mode 100644 app/Http/Controllers/admin/AboutController.php create mode 100644 app/Http/Controllers/admin/AccountController.php create mode 100644 app/Http/Controllers/admin/DashboardController.php create mode 100644 app/Http/Controllers/admin/RoleController.php create mode 100644 app/Http/Controllers/admin/SearchController.php create mode 100644 app/Http/Controllers/admin/SettingsController.php create mode 100644 database/migrations/2020_04_27_213532_create_roles_table.php create mode 100644 database/migrations/2020_04_27_213540_create_abilities_table.php create mode 100644 public/css/admin.css create mode 100644 public/css/easymde.min.css create mode 100644 public/img/models/user.png create mode 100644 public/img/topography.svg create mode 100644 public/js/alpine.js create mode 100644 public/js/easymde.min.js create mode 100644 resources/sass/core/_avatar.scss create mode 100644 resources/sass/core/_btn.scss create mode 100644 resources/sass/core/_card.scss create mode 100644 resources/sass/core/_dark.scss create mode 100644 resources/sass/core/_header.scss create mode 100644 resources/sass/core/_modal.scss create mode 100644 resources/sass/core/_nav.scss create mode 100644 resources/sass/core/_navbar.scss create mode 100644 resources/sass/core/_pagebar.scss create mode 100644 resources/sass/core/_pagination.scss create mode 100644 resources/sass/core/_variables.scss create mode 100644 resources/sass/core/admin.scss create mode 100644 resources/views/core/abilities/edit.blade.php create mode 100644 resources/views/core/abilities/index.blade.php create mode 100644 resources/views/core/about/index.blade.php create mode 100644 resources/views/core/accounts/edit.blade.php create mode 100644 resources/views/core/accounts/index.blade.php create mode 100644 resources/views/core/dashboard/index.blade.php create mode 100644 resources/views/core/layouts/app.blade.php create mode 100644 resources/views/core/roles/edit.blade.php create mode 100644 resources/views/core/roles/index.blade.php create mode 100644 resources/views/core/search/_account.blade.php create mode 100644 resources/views/core/search/index.blade.php create mode 100644 resources/views/core/search/results.blade.php create mode 100644 resources/views/core/settings/general.blade.php diff --git a/app/Ability.php b/app/Ability.php new file mode 100644 index 0000000..a0f5d1e --- /dev/null +++ b/app/Ability.php @@ -0,0 +1,14 @@ +belongsToMany(Role::class); + } +} diff --git a/app/Helpers/GlobalHelper.php b/app/Helpers/GlobalHelper.php new file mode 100644 index 0000000..111af0f --- /dev/null +++ b/app/Helpers/GlobalHelper.php @@ -0,0 +1,6 @@ +where('name', $name)->first()->value; +} \ No newline at end of file diff --git a/app/Http/Controllers/Api/AuthController.php b/app/Http/Controllers/Api/AuthController.php deleted file mode 100644 index c73e10d..0000000 --- a/app/Http/Controllers/Api/AuthController.php +++ /dev/null @@ -1,50 +0,0 @@ - $request->email, - 'password' => $request->password, - ]); - - $token = auth()->login($user); - - return $this->respondWithToken($token); - } - - public function login() - { - $credentials = request(['email', 'password']); - $token = auth('api')->attempt($credentials); - - if (!$token) { - return response()->json(['error' => 'Unauthorized'], 401); - } - - return $this->respondWithToken($token); - } - - public function logout() - { - auth()->logout(); - - return response()->json(['message' => 'Successfully logged out']); - } - - protected function respondWithToken($token) - { - return response()->json([ - 'access_token' => $token, - 'token_type' => 'bearer', - 'expires_in' => auth('api')->factory()->getTTL() * 60 - ]); - } -} diff --git a/app/Http/Controllers/Api/MilestoneController.php b/app/Http/Controllers/Api/MilestoneController.php deleted file mode 100644 index 80dc53f..0000000 --- a/app/Http/Controllers/Api/MilestoneController.php +++ /dev/null @@ -1,68 +0,0 @@ -json($milestones); - } - - /** - * Store a newly created resource in storage. - * - * @param \Illuminate\Http\Request $request - * @return \Illuminate\Http\Response - */ - public function store(Request $request) - { - // - } - - /** - * Display the specified resource. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function show(Milestone $milestone) - { - $milestone = Milestone::with('releases')->findOrFail($milestone->id); - return response()->json($milestone); - } - - /** - * Update the specified resource in storage. - * - * @param \Illuminate\Http\Request $request - * @param int $id - * @return \Illuminate\Http\Response - */ - public function update(Request $request, $id) - { - // - } - - /** - * Remove the specified resource from storage. - * - * @param int $id - * @return \Illuminate\Http\Response - */ - public function destroy($id) - { - // - } -} diff --git a/app/Http/Controllers/admin/AbilityController.php b/app/Http/Controllers/admin/AbilityController.php new file mode 100644 index 0000000..8ee19a6 --- /dev/null +++ b/app/Http/Controllers/admin/AbilityController.php @@ -0,0 +1,93 @@ +authorize('show_abilities'); + + $abilities = Ability::get(); + + return view('core.abilities.index', compact('abilities')); + } + + /** + * Store a newly created resource in storage. + * + * @param \Illuminate\Http\Request $request + * @return \Illuminate\Http\Response + */ + public function store(Request $request) { + $this->authorize('create_ability'); + + $this->validate(request(), [ + 'name' => ['required'], + 'label' => ['required'] + ], [ + 'name.required' => 'De permissie moet een naam hebben.', + 'label.required' => 'De permissie moet een label hebben.' + ]); + + $ability = Ability::create([ + 'name' => request('name'), + 'label' => request('label') + ]); + + return redirect()->route('admin.abilities.edit', $ability)->with('status', 'De permissie '.$ability->name.' is aangemaakt, je kan het nu bewerken.'); + } + + /** + * Show the form for editing the specified resource. + * + * @param \App\Ability $ability + * @return \Illuminate\Http\Response + */ + public function edit(Ability $ability) { + return view('core.abilities.edit', compact('ability')); + } + + /** + * Update the specified resource in storage. + * + * @param \Illuminate\Http\Request $request + * @param \App\Ability $ability + * @return \Illuminate\Http\Response + */ + public function update(Request $request, Ability $ability) { + $this->authorize('edit_ability'); + + $this->validate(request(), [ + 'name' => ['required'], + 'label' => ['required'] + ], [ + 'name.required' => 'De permissie moet een naam hebben.', + 'label.required' => 'De permissie moet een label hebben.' + ]); + + $ability->update([ + 'name' => request('name'), + 'label' => request('label') + ]); + + return redirect()->route('admin.abilities')->with('status', 'De wijzigingen voor '.$ability->name.' zijn opgeslagen.'); + } + + /** + * Remove the specified resource from storage. + * + * @param \App\Ability $ability + * @return \Illuminate\Http\Response + */ + public function destroy(Ability $ability) { + // + } +} diff --git a/app/Http/Controllers/admin/AboutController.php b/app/Http/Controllers/admin/AboutController.php new file mode 100644 index 0000000..11e1ac9 --- /dev/null +++ b/app/Http/Controllers/admin/AboutController.php @@ -0,0 +1,28 @@ +middleware('auth'); + } + + /** + * Display a listing of the resource. + * + * @return \Illuminate\Http\Response + */ + public function index() { + return view('core.about.index'); + } +} diff --git a/app/Http/Controllers/admin/AccountController.php b/app/Http/Controllers/admin/AccountController.php new file mode 100644 index 0000000..5efd1fe --- /dev/null +++ b/app/Http/Controllers/admin/AccountController.php @@ -0,0 +1,84 @@ +authorize('show_users'); + + $users = User::orderBy('name')->paginate(50); + + return view('core.accounts.index', compact('users')); + } + + /** + * Show the form for editing the specified resource. + * + * @param int $id + * @return \Illuminate\Http\Response + */ + public function edit(User $user) { + $roles = Role::get(); + + return view('core.accounts.edit', compact('user', 'roles')); + } + + /** + * Update the specified resource in storage. + * + * @param \Illuminate\Http\Request $request + * @param int $id + * @return \Illuminate\Http\Response + */ + public function update(User $user) { + $this->authorize('edit_user'); + + $this->validate(request(), [ + 'name' => ['required'], + 'role_id' => ['required'], + 'phone' => ['required'], + 'email' => ['required', 'email'] + ], [ + 'name.required' => 'De achternaam is vereist.', + 'role_id.required' => 'De permissie is vereist.', + 'phone.required' => 'Het telefoonnummer is vereist.', + 'email.required' => 'Het e-mail adres is vereist.', + 'email.email' => 'Het gegeven e-mail adres is niet geldig.', + ]); + + $user->update([ + 'name' => request('name'), + 'role_id' => request('role_id'), + 'email' => request('email'), + 'phone' => request('phone') + ]); + + return redirect()->route('admin.accounts')->with('status', 'De wijzigingen voor '.$user->name.' zijn opgeslagen.'); + } + + /** + * Remove the specified resource from storage. + * + * @param int $id + * @return \Illuminate\Http\Response + */ + public function destroy(User $user) { + $this->authorize('delete_user'); + + $user->delete(); + + return redirect()->route('admin.users')->with('status', 'De gebruiker '.$user->name.' is verwijderd.'); + } +} diff --git a/app/Http/Controllers/admin/DashboardController.php b/app/Http/Controllers/admin/DashboardController.php new file mode 100644 index 0000000..c0f66f1 --- /dev/null +++ b/app/Http/Controllers/admin/DashboardController.php @@ -0,0 +1,26 @@ +update(['onboarding' => config('app.viv')]); + + return redirect()->route('admin.dashboard'); + } +} diff --git a/app/Http/Controllers/admin/RoleController.php b/app/Http/Controllers/admin/RoleController.php new file mode 100644 index 0000000..9664567 --- /dev/null +++ b/app/Http/Controllers/admin/RoleController.php @@ -0,0 +1,134 @@ +authorize('show_roles'); + + $roles = Role::get(); + + return view('core.roles.index', compact('roles')); + } + + /** + * Store a newly created resource in storage. + * + * @param \Illuminate\Http\Request $request + * @return \Illuminate\Http\Response + */ + public function toggle(Role $role, Ability $ability) { + $this->authorize('assign_ability'); + + if ($role->abilities->contains($ability)) { + $role->abilities()->detach($ability); + } else { + $role->allowTo($ability); + } + + return redirect()->route('admin.roles.edit', $role)->with('status', 'De rol '.$role->name.' heeft nu de '.$ability->name.'-permissie.'); + } + + /** + * Store a newly created resource in storage. + * + * @param \Illuminate\Http\Request $request + * @return \Illuminate\Http\Response + */ + public function store(Request $request) { + $this->authorize('create_role'); + + $this->validate(request(), [ + 'name' => ['required'], + 'description' => ['required'] + ], [ + 'name.required' => 'De rol moet een naam hebben.', + 'description.required' => 'De rol moet een beschrijving hebben.' + ]); + + $role = Role::create([ + 'name' => request('name'), + 'description' => request('description') + ]); + + return redirect()->route('admin.roles.edit', $role)->with('status', 'De rol '.$role->name.' is aangemaakt, je kan het nu bewerken.'); + } + + /** + * Show the form for editing the specified resource. + * + * @param \App\Role $role + * @return \Illuminate\Http\Response + */ + public function edit(Role $role) { + $this->authorize('show_roles'); + + $abilities = Ability::get(); + + return view('core.roles.edit', compact('role', 'abilities')); + } + + /** + * Update the specified resource in storage. + * + * @param \Illuminate\Http\Request $request + * @param \App\Role $role + * @return \Illuminate\Http\Response + */ + public function update(Request $request, Role $role) { + $this->authorize('edit_role'); + + $this->validate(request(), [ + 'name' => ['required'], + 'description' => ['required'] + ], [ + 'name.required' => 'De rol moet een naam hebben.', + 'description.required' => 'De rol moet een beschrijving hebben.' + ]); + + $role->update([ + 'name' => request('name'), + 'description' => request('description') + ]); + + return redirect()->route('admin.roles')->with('status', 'De wijzigingen voor '.$role->name.' zijn opgeslagen.'); + } + + /** + * Remove the specified resource from storage. + * + * @param \App\Role $role + * @return \Illuminate\Http\Response + */ + public function destroy(Role $role) { + $this->authorize('delete_role'); + + $role->delete(); + + return redirect()->route('admin.roles')->with('status', 'De rol '.$role->title.' is verwijderd.'); + } + + public function default(Role $role) { + $this->authorize('edit_role'); + + $default_roles = Role::where('is_default', 1)->get(); + + foreach ($default_roles as $default_role) { + $default_role->update([ 'is_default' => 0 ]); + } + + $role->update([ 'is_default' => 1 ]); + + return redirect()->route('admin.roles')->with('status', ''.$role->name.' is nu de standaard rol voor nieuwe gebruikers.'); + } +} diff --git a/app/Http/Controllers/admin/SearchController.php b/app/Http/Controllers/admin/SearchController.php new file mode 100644 index 0000000..85f26e2 --- /dev/null +++ b/app/Http/Controllers/admin/SearchController.php @@ -0,0 +1,22 @@ +registerModel(User::class, 'username') + ->perform($request->input('search')); + + return view('core.search.results', compact('search_results')); + } +} diff --git a/app/Http/Controllers/admin/SettingsController.php b/app/Http/Controllers/admin/SettingsController.php new file mode 100644 index 0000000..d542bcc --- /dev/null +++ b/app/Http/Controllers/admin/SettingsController.php @@ -0,0 +1,27 @@ +authorize('view_settings'); + + return view('core.settings.general'); + } + + public function updateGeneral() { + $this->authorize('edit_settings'); + + Setting::where('name', 'name')->update(['value' => request('name')]); + Setting::where('name', 'short_name')->update(['value' => request('short_name')]); + Setting::where('name', 'slogan')->update(['value' => request('slogan')]); + + return redirect()->route('admin.settings.general')->with('status', 'All changes have been stored.'); + } +} diff --git a/app/Http/Middleware/RedirectIfAuthenticated.php b/app/Http/Middleware/RedirectIfAuthenticated.php index e27860e..3efc976 100644 --- a/app/Http/Middleware/RedirectIfAuthenticated.php +++ b/app/Http/Middleware/RedirectIfAuthenticated.php @@ -18,7 +18,7 @@ class RedirectIfAuthenticated public function handle($request, Closure $next, $guard = null) { if (Auth::guard($guard)->check()) { - return redirect('/'); + return redirect(RouteServiceProvider::HOME); } return $next($request); diff --git a/app/Providers/AuthServiceProvider.php b/app/Providers/AuthServiceProvider.php index 9784b1a..75539b1 100644 --- a/app/Providers/AuthServiceProvider.php +++ b/app/Providers/AuthServiceProvider.php @@ -25,6 +25,8 @@ public function boot() { $this->registerPolicies(); - // + Gate::before(function ($user, $ability) { + return $user->abilities()->contains($ability); + }); } } diff --git a/app/Providers/HelperServiceProvider.php b/app/Providers/HelperServiceProvider.php index 61bd38f..2049f0b 100644 --- a/app/Providers/HelperServiceProvider.php +++ b/app/Providers/HelperServiceProvider.php @@ -22,6 +22,7 @@ public function boot() */ public function register() { + require_once app_path('Helpers/GlobalHelper.php'); require_once app_path('Helpers/PlatformHelper.php'); require_once app_path('Helpers/PatronHelper.php'); require_once app_path('Helpers/RingHelper.php'); diff --git a/app/Role.php b/app/Role.php index e13f183..5b32182 100644 --- a/app/Role.php +++ b/app/Role.php @@ -4,9 +4,19 @@ use Illuminate\Database\Eloquent\Model; -class Role extends Model -{ +class Role extends Model { + protected $table = 'roles'; + protected $fillable = ['name', 'description', 'is_default']; + public function users() { - return $this->belongsToMany(User::class); + return $this->hasMany(User::class); + } + + public function abilities() { + return $this->belongsToMany(Ability::class); + } + + public function allowTo(Ability $ability) { + $this->abilities()->sync($ability, false); } } diff --git a/app/User.php b/app/User.php index 9a5dcc2..df9b684 100644 --- a/app/User.php +++ b/app/User.php @@ -11,31 +11,15 @@ class User extends Authenticatable implements JWTSubject { use Notifiable; - protected $fillable = [ 'name', 'email', 'password', 'theme' ]; - protected $hidden = [ 'password', 'remember_token', ]; + protected $fillable = ['name', 'email', 'password', 'theme']; + protected $hidden = ['password', 'remember_token']; - public function roles() { - return $this->belongsToMany(Role::class); + public function role() { + return $this->belongsTo(Role::class); } - public function authorizeRoles($roles) { - if (is_array($roles)) { - return $this->hasAnyRole($roles) || abort(401, 'This action is unauthorized.'); - } - - return $this->hasRole($roles) || abort(401, 'This action is unauthorized.'); - } - - public function hasAnyRole($roles) { - return null !== $this->roles()->whereIn('name', $roles)->first(); - } - - public function hasRole($role) { - return null !== $this->roles()->where('name', $role)->first(); - } - - public function getRoles() { - return $this->roles()->firstOrFail(); + public function abilities() { + return $this->role->abilities->flatten()->pluck('name')->unique(); } public function getJWTIdentifier() { @@ -46,9 +30,17 @@ public function getJWTCustomClaims() { return []; } - public function setPasswordAttribute($password){ + public function setPasswordAttribute($password) { if (!empty($password)) { $this->attributes['password'] = bcrypt($password); } } + + public function getAvatarAttribute() { + if ($this->media_id) { + return $this->media->path(); + } else { + return asset('img/models/user.png'); + } + } } diff --git a/composer.json b/composer.json index c7c3b59..f23a71a 100644 --- a/composer.json +++ b/composer.json @@ -7,6 +7,7 @@ "require": { "php": "^7.2.0", "barryvdh/laravel-cors": "^2.0", + "blade-ui-kit/blade-ui-kit": "^0.2", "erusev/parsedown": "^1.7", "facade/ignition": "^2.3.6", "fideloper/proxy": "^4.0", @@ -16,7 +17,8 @@ "laravel/ui": "^3.0", "spatie/laravel-feed": "^3.0", "thujohn/twitter": "^2.2", - "tymon/jwt-auth": "^1.0" + "tymon/jwt-auth": "^1.0", + "spatie/laravel-searchable": "^1.7" }, "require-dev": { "filp/whoops": "^2.0", diff --git a/composer.lock b/composer.lock index 9b391e1..19d50f3 100644 --- a/composer.lock +++ b/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies", "This file is @generated automatically" ], - "content-hash": "025e6eda4949800017c67b928e6e12e5", + "content-hash": "7d0d009cc399c74dcb21e29ef53916ab", "packages": [ { "name": "asm89/stack-cors", @@ -178,6 +178,80 @@ ], "time": "2020-10-22T13:57:20+00:00" }, + { + "name": "blade-ui-kit/blade-ui-kit", + "version": "0.2.0", + "source": { + "type": "git", + "url": "https://github.com/blade-ui-kit/blade-ui-kit.git", + "reference": "28f4a43a817f381b1590e30c877655e3bcdd190a" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/blade-ui-kit/blade-ui-kit/zipball/28f4a43a817f381b1590e30c877655e3bcdd190a", + "reference": "28f4a43a817f381b1590e30c877655e3bcdd190a", + "shasum": "" + }, + "require": { + "ext-json": "*", + "illuminate/filesystem": "^7.0|^8.0", + "illuminate/support": "^7.0|^8.0", + "illuminate/view": "^7.0|^8.0", + "nesbot/carbon": "^2.38", + "php": "^7.3|^8.0" + }, + "require-dev": { + "gajus/dindent": "^2.0", + "guzzlehttp/guzzle": "^6.5", + "league/commonmark": "^1.4", + "lorisleiva/cron-translator": "^0.1.1", + "orchestra/testbench": "^5.0|^6.0", + "phpunit/phpunit": "^9.0" + }, + "suggest": { + "league/commonmark": "Required to use the markdown component (^1.4).", + "lorisleiva/cron-translator": "Required to use the cron component (^0.1.1)." + }, + "type": "library", + "extra": { + "laravel": { + "providers": [ + "BladeUIKit\\BladeUIKitServiceProvider" + ] + } + }, + "autoload": { + "psr-4": { + "BladeUIKit\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Dries Vints", + "email": "dries@vints.io", + "homepage": "https://driesvints.com", + "role": "Developer" + } + ], + "description": "A set of renderless components to utilise in your Laravel Blade views.", + "homepage": "https://github.com/blade-ui-kit/blade-ui-kit", + "keywords": [ + "blade", + "laravel", + "ui" + ], + "funding": [ + { + "url": "https://github.com/driesvints", + "type": "github" + } + ], + "time": "2020-10-31T20:40:44+00:00" + }, { "name": "brick/math", "version": "0.9.1", @@ -2752,6 +2826,67 @@ ], "time": "2020-09-09T18:55:58+00:00" }, + { + "name": "spatie/laravel-searchable", + "version": "1.7.1", + "source": { + "type": "git", + "url": "https://github.com/spatie/laravel-searchable.git", + "reference": "6db4b207b99af6eeccd6330330ea5d3e0ef5441d" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/spatie/laravel-searchable/zipball/6db4b207b99af6eeccd6330330ea5d3e0ef5441d", + "reference": "6db4b207b99af6eeccd6330330ea5d3e0ef5441d", + "shasum": "" + }, + "require": { + "laravel/framework": "~5.8.0|^6.0|^7.0|^8.0", + "php": "^7.2" + }, + "require-dev": { + "larapack/dd": "^1.0", + "orchestra/testbench": "~3.8.0|^4.0|^5.0|^6.0", + "phpunit/phpunit": "^7.5|^8.0|^9.3" + }, + "type": "library", + "autoload": { + "psr-4": { + "Spatie\\Searchable\\": "src" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Alex Vanderbist", + "email": "alex@spatie.be", + "homepage": "https://spatie.be", + "role": "Developer" + }, + { + "name": "Freek Van der Herten", + "email": "freek@spatie.be", + "homepage": "https://spatie.be", + "role": "Developer" + } + ], + "description": "Pragmatically search through models and other sources", + "homepage": "https://github.com/spatie/laravel-searchable", + "keywords": [ + "laravel-searchable", + "spatie" + ], + "funding": [ + { + "url": "https://spatie.be/open-source/support-us", + "type": "custom" + } + ], + "time": "2020-11-09T08:47:53+00:00" + }, { "name": "swiftmailer/swiftmailer", "version": "v6.2.3", @@ -5350,56 +5485,6 @@ ], "time": "2020-11-10T18:47:58+00:00" }, - { - "name": "fzaninotto/faker", - "version": "v1.9.1", - "source": { - "type": "git", - "url": "https://github.com/fzaninotto/Faker.git", - "reference": "fc10d778e4b84d5bd315dad194661e091d307c6f" - }, - "dist": { - "type": "zip", - "url": "https://api.github.com/repos/fzaninotto/Faker/zipball/fc10d778e4b84d5bd315dad194661e091d307c6f", - "reference": "fc10d778e4b84d5bd315dad194661e091d307c6f", - "shasum": "" - }, - "require": { - "php": "^5.3.3 || ^7.0" - }, - "require-dev": { - "ext-intl": "*", - "phpunit/phpunit": "^4.8.35 || ^5.7", - "squizlabs/php_codesniffer": "^2.9.2" - }, - "type": "library", - "extra": { - "branch-alias": { - "dev-master": "1.9-dev" - } - }, - "autoload": { - "psr-4": { - "Faker\\": "src/Faker/" - } - }, - "notification-url": "https://packagist.org/downloads/", - "license": [ - "MIT" - ], - "authors": [ - { - "name": "François Zaninotto" - } - ], - "description": "Faker is a PHP library that generates fake data for you.", - "keywords": [ - "data", - "faker", - "fixtures" - ], - "time": "2019-12-12T13:22:17+00:00" - }, { "name": "hamcrest/hamcrest-php", "version": "v2.0.1", diff --git a/database/migrations/2020_04_27_213532_create_roles_table.php b/database/migrations/2020_04_27_213532_create_roles_table.php new file mode 100644 index 0000000..47f2809 --- /dev/null +++ b/database/migrations/2020_04_27_213532_create_roles_table.php @@ -0,0 +1,42 @@ +integer('is_default')->default(0)->after('description'); + }); + + Schema::table('users', function (Blueprint $table) { + $table->string('onboarding')->nullable()->default(null)->after('email'); + $table->foreignId('role_id')->after('email')->references('id')->on('roles'); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() + { + Schema::table('roles', function (Blueprint $table) { + $table->dropForeign('is_default'); + }); + + Schema::table('users', function (Blueprint $table) { + $table->dropForeign('users_role_id_foreign'); + $table->dropColumn('role_id'); + $table->dropColumn('onboarding'); + }); + } +} diff --git a/database/migrations/2020_04_27_213540_create_abilities_table.php b/database/migrations/2020_04_27_213540_create_abilities_table.php new file mode 100644 index 0000000..6447d7b --- /dev/null +++ b/database/migrations/2020_04_27_213540_create_abilities_table.php @@ -0,0 +1,38 @@ +id(); + $table->string('name'); + $table->string('label')->nullable(); + $table->timestamps(); + }); + + Schema::create('ability_role', function (Blueprint $table) { + $table->primary(['role_id', 'ability_id']); + $table->foreignId('role_id')->references('id')->on('roles')->onDelete('cascade'); + $table->foreignId('ability_id')->references('id')->on('abilities')->onDelete('cascade'); + $table->timestamps(); + }); + } + + /** + * Reverse the migrations. + * + * @return void + */ + public function down() { + Schema::dropIfExists('ability_role'); + Schema::dropIfExists('abilities'); + } +} diff --git a/database/seeds/DatabaseSeeder.php b/database/seeds/DatabaseSeeder.php index d540815..5564fc3 100644 --- a/database/seeds/DatabaseSeeder.php +++ b/database/seeds/DatabaseSeeder.php @@ -14,6 +14,6 @@ class DatabaseSeeder extends Seeder public function run() { $this->call(RoleTableSeeder::class); - $this->call(UserTableSeeder::class); + //$this->call(UserTableSeeder::class); } } diff --git a/database/seeds/RoleTableSeeder.php b/database/seeds/RoleTableSeeder.php index 8820930..ca166d0 100644 --- a/database/seeds/RoleTableSeeder.php +++ b/database/seeds/RoleTableSeeder.php @@ -4,29 +4,137 @@ use Illuminate\Database\Seeder; use App\Role; +use App\Ability; -class RoleTableSeeder extends Seeder -{ +class RoleTableSeeder extends Seeder { /** * Run the database seeds. * * @return void */ - public function run() - { - $admin = new Role(); - $admin->name = 'Admin'; - $admin->description = 'Administrates ChangeWindows'; - $admin->save(); - - $insider = new Role(); - $insider->name = 'Insider'; - $insider->description = 'Those who test ChangeWindows'; - $insider->save(); - - $user = new Role(); - $user->name = 'User'; - $user->description = 'User with a user account'; - $user->save(); + public function run() { + $admin = Role::create([ + 'name' => 'Admin', + 'description' => 'Has all rights.', + 'is_default' => 0 + ]); + + $editor = Role::create([ + 'name' => 'Editor', + 'description' => 'Can manage most content.', + 'is_default' => 0 + ]); + + Role::create([ + 'name' => 'Insider', + 'description' => 'Have access to some limited features.', + 'is_default' => 0 + ]); + + Role::create([ + 'name' => 'User', + 'description' => 'Has no access to the Backstage.', + 'is_default' => 1 + ]); + + $view_backstage = Ability::create([ + 'name' => 'view_backstage', + 'label' => 'Can view the Backstage.' + ]); + + $create_flight = Ability::create([ + 'name' => 'create_flight', + 'label' => 'Can create flights.' + ]); + + $show_users = Ability::create([ + 'name' => 'show_users', + 'label' => 'Can view users.' + ]); + + $edit_user = Ability::create([ + 'name' => 'edit_user', + 'label' => 'Can edit user.' + ]); + + $delete_user = Ability::create([ + 'name' => 'delete_user', + 'label' => 'Can remoe user.' + ]); + + $show_abilities = Ability::create([ + 'name' => 'show_abilities', + 'label' => 'Can view permissions.' + ]); + + $create_ability = Ability::create([ + 'name' => 'create_ability', + 'label' => 'Can create permission.' + ]); + + $edit_ability = Ability::create([ + 'name' => 'edit_ability', + 'label' => 'Can edit permission.' + ]); + + $assign_ability = Ability::create([ + 'name' => 'assign_ability', + 'label' => 'Can assign permission to role.' + ]); + + $show_roles = Ability::create([ + 'name' => 'show_roles', + 'label' => 'Can view roles.' + ]); + + $create_role = Ability::create([ + 'name' => 'create_role', + 'label' => 'Can create role.' + ]); + + $edit_role = Ability::create([ + 'name' => 'edit_role', + 'label' => 'Can edit role.' + ]); + + $delete_role = Ability::create([ + 'name' => 'delete_role', + 'label' => 'Can remoe role.' + ]); + + $edit_settings = Ability::create([ + 'name' => 'edit_settings', + 'label' => 'Can edit settings.' + ]); + + $view_settings = Ability::create([ + 'name' => 'view_settings', + 'label' => 'Can edit settings.' + ]); + + $admin->abilities()->attach($view_backstage->id); + $editor->abilities()->attach($view_backstage->id); + $admin->abilities()->attach($create_flight->id); + $editor->abilities()->attach($create_flight->id); + + $admin->abilities()->attach($show_users->id); + $admin->abilities()->attach($edit_user->id); + $admin->abilities()->attach($delete_user->id); + $admin->abilities()->attach($show_abilities->id); + $admin->abilities()->attach($create_ability->id); + $admin->abilities()->attach($edit_ability->id); + $admin->abilities()->attach($assign_ability->id); + $admin->abilities()->attach($show_roles->id); + $admin->abilities()->attach($create_role->id); + $admin->abilities()->attach($edit_role->id); + $admin->abilities()->attach($delete_role->id); + $admin->abilities()->attach($edit_settings->id); + $admin->abilities()->attach($view_settings->id); + + $editor->abilities()->attach($show_users->id); + $editor->abilities()->attach($edit_user->id); + $editor->abilities()->attach($show_abilities->id); + $editor->abilities()->attach($show_roles->id); + $editor->abilities()->attach($view_settings->id); } } diff --git a/package-lock.json b/package-lock.json index e2d397d..d08c4bf 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1359,6 +1359,12 @@ "integrity": "sha1-l6ERlkmyEa0zaR2fn0hqjsn74KM=", "dev": true }, + "alpinejs": { + "version": "2.7.3", + "resolved": "https://registry.npmjs.org/alpinejs/-/alpinejs-2.7.3.tgz", + "integrity": "sha512-IRXnszk68s+FOGFMA1+K3rjLK44NqLShNpSy8aI6J3Ch9gss56FqlU6NVRP+mJes7LeQFCreH410luScVSkdfg==", + "dev": true + }, "ansi-colors": { "version": "3.2.4", "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-3.2.4.tgz", @@ -1829,9 +1835,9 @@ "dev": true }, "bootstrap": { - "version": "4.5.3", - "resolved": "https://registry.npmjs.org/bootstrap/-/bootstrap-4.5.3.tgz", - "integrity": "sha512-o9ppKQioXGqhw8Z7mah6KdTYpNQY//tipnkxppWhPbiSWdD+1raYsnhwEZjkTHYbGee4cVQ0Rx65EhOY/HNLcQ==", + "version": "5.0.0-alpha3", + "resolved": "https://registry.npmjs.org/bootstrap/-/bootstrap-5.0.0-alpha3.tgz", + "integrity": "sha512-ghwrMFNzqOwfB0nJ1iYbkERd+EK1PblUl7rEEynY35jD0TUlSY6yrjG2M42qI++NhAUBEqGcjmmHkMGs3QyNHA==", "dev": true }, "brace-expansion": { @@ -2306,6 +2312,21 @@ "q": "^1.1.2" } }, + "codemirror": { + "version": "5.58.2", + "resolved": "https://registry.npmjs.org/codemirror/-/codemirror-5.58.2.tgz", + "integrity": "sha512-K/hOh24cCwRutd1Mk3uLtjWzNISOkm4fvXiMO7LucCrqbh6aJDdtqUziim3MZUI6wOY0rvY1SlL1Ork01uMy6w==", + "dev": true + }, + "codemirror-spell-checker": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/codemirror-spell-checker/-/codemirror-spell-checker-1.1.2.tgz", + "integrity": "sha1-HGYPkIlIPMtRE7m6nKGcP0mTNx4=", + "dev": true, + "requires": { + "typo-js": "*" + } + }, "collect.js": { "version": "4.28.4", "resolved": "https://registry.npmjs.org/collect.js/-/collect.js-4.28.4.tgz", @@ -3205,6 +3226,17 @@ "stream-shift": "^1.0.0" } }, + "easymde": { + "version": "2.12.1", + "resolved": "https://registry.npmjs.org/easymde/-/easymde-2.12.1.tgz", + "integrity": "sha512-4cYP+tK/vU9/KuiUskKnF9EM+DTvBe77EKduEu+HDa+nfRVVphZM76gfz2BjrWv8vbTJLOFcwlJ/NJ6+SzMApQ==", + "dev": true, + "requires": { + "codemirror": "^5.58.1", + "codemirror-spell-checker": "1.1.2", + "marked": "^1.2.0" + } + }, "ee-first": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", @@ -5070,12 +5102,6 @@ } } }, - "jquery": { - "version": "3.5.1", - "resolved": "https://registry.npmjs.org/jquery/-/jquery-3.5.1.tgz", - "integrity": "sha512-XwIBPqcMn57FxfT+Go5pzySnm4KWkT1Tv7gjrpT1srtf8Weynl6R273VJ5GjkRb51IzMp5nbaPjJXMWeju2MKg==", - "dev": true - }, "js-tokens": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", @@ -5326,6 +5352,12 @@ "object-visit": "^1.0.0" } }, + "marked": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/marked/-/marked-1.2.3.tgz", + "integrity": "sha512-RQuL2i6I6Gn+9n81IDNGbL0VHnta4a+8ZhqvryXEniTb/hQNtf3i26hi1XWUhzb9BgVyWHKR3UO8MaHtKoYibw==", + "dev": true + }, "md5": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/md5/-/md5-2.3.0.tgz", @@ -8541,6 +8573,12 @@ "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=", "dev": true }, + "typo-js": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/typo-js/-/typo-js-1.1.0.tgz", + "integrity": "sha512-W3kLbx+ML9PBl5Bzso/lTvVxk4BCveSNAtQeht59FEtxCdGThmn6wSHA4Xq3eQYAK24NHdisMM4JmsK0GFy/pg==", + "dev": true + }, "uglify-js": { "version": "3.4.10", "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.4.10.tgz", diff --git a/package.json b/package.json index b816192..1cb9b96 100644 --- a/package.json +++ b/package.json @@ -11,10 +11,11 @@ }, "devDependencies": { "@fortawesome/fontawesome-pro": "5.15.1", + "alpinejs": "2.7.3", "axios": "0.21.0", - "bootstrap": "4.5.3", + "bootstrap": "5.0.0-alpha3", "cross-env": "7.0.2", - "jquery": "3.5.1", + "easymde": "2.12.1", "laravel-mix": "5.0.9", "lodash": "4.17.20", "popper.js": "1.16.1", diff --git a/public/css/admin.css b/public/css/admin.css new file mode 100644 index 0000000..a4be23c --- /dev/null +++ b/public/css/admin.css @@ -0,0 +1,12235 @@ +@charset "UTF-8"; +/* + * Scouts & Gidsen Bree (c) 2014-2020 + * Licensed under AGPL + */ +/*! + * Bootstrap v5.0.0-alpha3 (https://getbootstrap.com/) + * Copyright 2011-2020 The Bootstrap Authors + * Copyright 2011-2020 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) + */ +:root { + --bs-blue: #0467c4; + --bs-indigo: #6574cd; + --bs-purple: #9561e2; + --bs-pink: #e52262; + --bs-red: #e74018; + --bs-orange: #fb8009; + --bs-yellow: #ffc000; + --bs-green: #97c800; + --bs-teal: #10b08f; + --bs-cyan: #0098df; + --bs-white: #fff; + --bs-gray: #6c757d; + --bs-gray-dark: #343a40; + --bs-primary: #0076a5; + --bs-secondary: #ffc000; + --bs-success: #97c800; + --bs-info: #0098df; + --bs-warning: #ffc000; + --bs-danger: #e74018; + --bs-light: #f8f9fa; + --bs-dark: #333; + --bs-font-sans-serif: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; + --bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; + --bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0)); +} + +*, +*::before, +*::after { + box-sizing: border-box; +} + +@media (prefers-reduced-motion: no-preference) { + :root { + scroll-behavior: smooth; + } +} + +body { + margin: 0; + font-family: var(--bs-font-sans-serif); + font-size: 1rem; + font-weight: 400; + line-height: 1.5; + color: #212529; + background-color: #fff; + -webkit-text-size-adjust: 100%; + -webkit-tap-highlight-color: rgba(0, 0, 0, 0); +} + +[tabindex="-1"]:focus:not(:focus-visible) { + outline: 0 !important; +} + +hr { + margin: 1rem 0; + color: inherit; + background-color: currentColor; + border: 0; + opacity: 0.25; +} + +hr:not([size]) { + height: 1px; +} + +h6, .h6, h5, .h5, h4, .h4, h3, .h3, h2, .h2, h1, .h1 { + margin-top: 0; + margin-bottom: 0.5rem; + font-weight: 600; + 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], +abbr[data-original-title] { + text-decoration: underline; + -webkit-text-decoration: underline dotted; + text-decoration: underline dotted; + cursor: help; + -webkit-text-decoration-skip-ink: none; + text-decoration-skip-ink: none; +} + +address { + margin-bottom: 1rem; + font-style: normal; + line-height: inherit; +} + +ol, +ul { + padding-left: 2rem; +} + +ol, +ul, +dl { + margin-top: 0; + margin-bottom: 1rem; +} + +ol ol, +ul ul, +ol ul, +ul ol { + margin-bottom: 0; +} + +dt { + font-weight: 700; +} + +dd { + margin-bottom: 0.5rem; + margin-left: 0; +} + +blockquote { + margin: 0 0 1rem; +} + +b, +strong { + font-weight: bolder; +} + +small, .small { + font-size: 0.875em; +} + +mark, .mark { + padding: 0.2em; + background-color: #fcf8e3; +} + +sub, +sup { + position: relative; + font-size: 0.75em; + line-height: 0; + vertical-align: baseline; +} + +sub { + bottom: -0.25em; +} + +sup { + top: -0.5em; +} + +a { + color: #0076a5; + text-decoration: none; +} +a:hover { + color: #005e84; +} + +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: #e52262; + word-wrap: break-word; +} +a > code { + color: inherit; +} + +kbd { + padding: 0.2rem 0.4rem; + font-size: 0.875em; + color: #fff; + background-color: #212529; + border-radius: 0.2rem; +} +kbd kbd { + padding: 0; + font-size: 1em; + font-weight: 700; +} + +figure { + margin: 0 0 1rem; +} + +img, +svg { + vertical-align: middle; +} + +table { + caption-side: bottom; + border-collapse: collapse; +} + +caption { + padding-top: 0.5rem; + padding-bottom: 0.5rem; + color: #6c757d; + text-align: left; +} + +th { + text-align: inherit; + text-align: -webkit-match-parent; +} + +thead, +tbody, +tfoot, +tr, +td, +th { + border-color: inherit; + border-style: solid; + border-width: 0; +} + +label { + display: inline-block; +} + +button { + border-radius: 0; +} + +button:focus { + outline: dotted 1px; + outline: -webkit-focus-ring-color auto 5px; +} + +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; +} + +[list]::-webkit-calendar-picker-indicator { + display: none; +} + +button, +[type=button], +[type=reset], +[type=submit] { + -webkit-appearance: button; +} +button:not(:disabled), +[type=button]:not(:disabled), +[type=reset]:not(:disabled), +[type=submit]:not(:disabled) { + cursor: pointer; +} + +::-moz-focus-inner { + padding: 0; + border-style: none; +} + +textarea { + resize: vertical; +} + +fieldset { + min-width: 0; + padding: 0; + margin: 0; + border: 0; +} + +legend { + float: left; + width: 100%; + padding: 0; + margin-bottom: 0.5rem; + font-size: calc(1.275rem + 0.3vw); + line-height: inherit; +} +@media (min-width: 1200px) { + legend { + font-size: 1.5rem; + } +} +legend + * { + clear: left; +} + +::-webkit-datetime-edit-fields-wrapper, +::-webkit-datetime-edit-text, +::-webkit-datetime-edit-minute, +::-webkit-datetime-edit-hour-field, +::-webkit-datetime-edit-day-field, +::-webkit-datetime-edit-month-field, +::-webkit-datetime-edit-year-field { + padding: 0; +} + +::-webkit-inner-spin-button { + height: auto; +} + +[type=search] { + outline-offset: -2px; + -webkit-appearance: textfield; +} + +::-webkit-search-decoration { + -webkit-appearance: none; +} + +::-webkit-color-swatch-wrapper { + padding: 0; +} + +::file-selector-button { + font: inherit; +} + +::-webkit-file-upload-button { + font: inherit; + -webkit-appearance: button; +} + +output { + display: inline-block; +} + +iframe { + border: 0; +} + +summary { + display: list-item; + cursor: pointer; +} + +progress { + vertical-align: baseline; +} + +[hidden] { + display: none !important; +} + +.lead { + font-size: 1.25rem; + font-weight: 600; +} + +.display-1 { + font-size: calc(1.625rem + 4.5vw); + font-weight: 300; + line-height: 1.2; +} +@media (min-width: 1200px) { + .display-1 { + font-size: 5rem; + } +} + +.display-2 { + font-size: calc(1.575rem + 3.9vw); + font-weight: 300; + line-height: 1.2; +} +@media (min-width: 1200px) { + .display-2 { + font-size: 4.5rem; + } +} + +.display-3 { + font-size: calc(1.525rem + 3.3vw); + font-weight: 300; + line-height: 1.2; +} +@media (min-width: 1200px) { + .display-3 { + font-size: 4rem; + } +} + +.display-4 { + font-size: calc(1.475rem + 2.7vw); + font-weight: 300; + line-height: 1.2; +} +@media (min-width: 1200px) { + .display-4 { + font-size: 3.5rem; + } +} + +.display-5 { + font-size: calc(1.425rem + 2.1vw); + font-weight: 300; + line-height: 1.2; +} +@media (min-width: 1200px) { + .display-5 { + font-size: 3rem; + } +} + +.display-6 { + font-size: calc(1.375rem + 1.5vw); + font-weight: 300; + line-height: 1.2; +} +@media (min-width: 1200px) { + .display-6 { + font-size: 2.5rem; + } +} + +.list-unstyled { + padding-left: 0; + list-style: none; +} + +.list-inline { + padding-left: 0; + list-style: none; +} + +.list-inline-item { + display: inline-block; +} +.list-inline-item:not(:last-child) { + margin-right: 0.5rem; +} + +.initialism { + font-size: 0.875em; + text-transform: uppercase; +} + +.blockquote { + margin-bottom: 1rem; + font-size: 1.25rem; +} +.blockquote > :last-child { + margin-bottom: 0; +} + +.blockquote-footer { + margin-top: -1rem; + margin-bottom: 1rem; + font-size: 0.875em; + color: #6c757d; +} +.blockquote-footer::before { + content: "\2014\A0"; +} + +.img-fluid { + max-width: 100%; + height: auto; +} + +.img-thumbnail { + padding: 0.25rem; + background-color: #fff; + border: 1px solid #dee2e6; + border-radius: 0.25rem; + max-width: 100%; + height: auto; +} + +.figure { + display: inline-block; +} + +.figure-img { + margin-bottom: 0.5rem; + line-height: 1; +} + +.figure-caption { + font-size: 0.875em; + color: #6c757d; +} + +.container, +.container-fluid, +.container-xxl, +.container-xl, +.container-lg, +.container-md, +.container-sm { + --bs-gutter-x: 0; + width: 100%; + padding-right: calc(var(--bs-gutter-x) / 2); + padding-left: calc(var(--bs-gutter-x) / 2); + margin-right: auto; + margin-left: auto; +} + +@media (min-width: 576px) { + .container-sm, .container { + max-width: 540px; + } +} +@media (min-width: 768px) { + .container-md, .container-sm, .container { + max-width: 720px; + } +} +@media (min-width: 992px) { + .container-lg, .container-md, .container-sm, .container { + max-width: 960px; + } +} +@media (min-width: 1200px) { + .container-xl, .container-lg, .container-md, .container-sm, .container { + max-width: 1140px; + } +} +@media (min-width: 1400px) { + .container-xxl, .container-xl, .container-lg, .container-md, .container-sm, .container { + max-width: 1320px; + } +} +.row { + --bs-gutter-x: 1rem; + --bs-gutter-y: 0; + display: flex; + flex-wrap: wrap; + margin-top: calc(var(--bs-gutter-y) * -1); + margin-right: calc(var(--bs-gutter-x) / -2); + margin-left: calc(var(--bs-gutter-x) / -2); +} +.row > * { + flex-shrink: 0; + width: 100%; + max-width: 100%; + padding-right: calc(var(--bs-gutter-x) / 2); + padding-left: calc(var(--bs-gutter-x) / 2); + 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.3333333333%; +} + +.col-2 { + flex: 0 0 auto; + width: 16.6666666667%; +} + +.col-3 { + flex: 0 0 auto; + width: 25%; +} + +.col-4 { + flex: 0 0 auto; + width: 33.3333333333%; +} + +.col-5 { + flex: 0 0 auto; + width: 41.6666666667%; +} + +.col-6 { + flex: 0 0 auto; + width: 50%; +} + +.col-7 { + flex: 0 0 auto; + width: 58.3333333333%; +} + +.col-8 { + flex: 0 0 auto; + width: 66.6666666667%; +} + +.col-9 { + flex: 0 0 auto; + width: 75%; +} + +.col-10 { + flex: 0 0 auto; + width: 83.3333333333%; +} + +.col-11 { + flex: 0 0 auto; + width: 91.6666666667%; +} + +.col-12 { + flex: 0 0 auto; + width: 100%; +} + +.offset-1 { + margin-left: 8.3333333333%; +} + +.offset-2 { + margin-left: 16.6666666667%; +} + +.offset-3 { + margin-left: 25%; +} + +.offset-4 { + margin-left: 33.3333333333%; +} + +.offset-5 { + margin-left: 41.6666666667%; +} + +.offset-6 { + margin-left: 50%; +} + +.offset-7 { + margin-left: 58.3333333333%; +} + +.offset-8 { + margin-left: 66.6666666667%; +} + +.offset-9 { + margin-left: 75%; +} + +.offset-10 { + margin-left: 83.3333333333%; +} + +.offset-11 { + margin-left: 91.6666666667%; +} + +.g-0, +.gx-0 { + --bs-gutter-x: 0; +} + +.g-0, +.gy-0 { + --bs-gutter-y: 0; +} + +.g-1, +.gx-1 { + --bs-gutter-x: 0.25rem; +} + +.g-1, +.gy-1 { + --bs-gutter-y: 0.25rem; +} + +.g-2, +.gx-2 { + --bs-gutter-x: 0.5rem; +} + +.g-2, +.gy-2 { + --bs-gutter-y: 0.5rem; +} + +.g-3, +.gx-3 { + --bs-gutter-x: 1rem; +} + +.g-3, +.gy-3 { + --bs-gutter-y: 1rem; +} + +.g-4, +.gx-4 { + --bs-gutter-x: 1.5rem; +} + +.g-4, +.gy-4 { + --bs-gutter-y: 1.5rem; +} + +.g-5, +.gx-5 { + --bs-gutter-x: 3rem; +} + +.g-5, +.gy-5 { + --bs-gutter-y: 3rem; +} + +@media (min-width: 576px) { + .col-sm { + flex: 1 0 0%; + } + + .row-cols-sm-auto > * { + flex: 0 0 auto; + width: auto; + } + + .row-cols-sm-1 > * { + flex: 0 0 auto; + width: 100%; + } + + .row-cols-sm-2 > * { + flex: 0 0 auto; + width: 50%; + } + + .row-cols-sm-3 > * { + flex: 0 0 auto; + width: 33.3333333333%; + } + + .row-cols-sm-4 > * { + flex: 0 0 auto; + width: 25%; + } + + .row-cols-sm-5 > * { + flex: 0 0 auto; + width: 20%; + } + + .row-cols-sm-6 > * { + flex: 0 0 auto; + width: 16.6666666667%; + } + + .col-sm-auto { + flex: 0 0 auto; + width: auto; + } + + .col-sm-1 { + flex: 0 0 auto; + width: 8.3333333333%; + } + + .col-sm-2 { + flex: 0 0 auto; + width: 16.6666666667%; + } + + .col-sm-3 { + flex: 0 0 auto; + width: 25%; + } + + .col-sm-4 { + flex: 0 0 auto; + width: 33.3333333333%; + } + + .col-sm-5 { + flex: 0 0 auto; + width: 41.6666666667%; + } + + .col-sm-6 { + flex: 0 0 auto; + width: 50%; + } + + .col-sm-7 { + flex: 0 0 auto; + width: 58.3333333333%; + } + + .col-sm-8 { + flex: 0 0 auto; + width: 66.6666666667%; + } + + .col-sm-9 { + flex: 0 0 auto; + width: 75%; + } + + .col-sm-10 { + flex: 0 0 auto; + width: 83.3333333333%; + } + + .col-sm-11 { + flex: 0 0 auto; + width: 91.6666666667%; + } + + .col-sm-12 { + flex: 0 0 auto; + width: 100%; + } + + .offset-sm-0 { + margin-left: 0; + } + + .offset-sm-1 { + margin-left: 8.3333333333%; + } + + .offset-sm-2 { + margin-left: 16.6666666667%; + } + + .offset-sm-3 { + margin-left: 25%; + } + + .offset-sm-4 { + margin-left: 33.3333333333%; + } + + .offset-sm-5 { + margin-left: 41.6666666667%; + } + + .offset-sm-6 { + margin-left: 50%; + } + + .offset-sm-7 { + margin-left: 58.3333333333%; + } + + .offset-sm-8 { + margin-left: 66.6666666667%; + } + + .offset-sm-9 { + margin-left: 75%; + } + + .offset-sm-10 { + margin-left: 83.3333333333%; + } + + .offset-sm-11 { + margin-left: 91.6666666667%; + } + + .g-sm-0, +.gx-sm-0 { + --bs-gutter-x: 0; + } + + .g-sm-0, +.gy-sm-0 { + --bs-gutter-y: 0; + } + + .g-sm-1, +.gx-sm-1 { + --bs-gutter-x: 0.25rem; + } + + .g-sm-1, +.gy-sm-1 { + --bs-gutter-y: 0.25rem; + } + + .g-sm-2, +.gx-sm-2 { + --bs-gutter-x: 0.5rem; + } + + .g-sm-2, +.gy-sm-2 { + --bs-gutter-y: 0.5rem; + } + + .g-sm-3, +.gx-sm-3 { + --bs-gutter-x: 1rem; + } + + .g-sm-3, +.gy-sm-3 { + --bs-gutter-y: 1rem; + } + + .g-sm-4, +.gx-sm-4 { + --bs-gutter-x: 1.5rem; + } + + .g-sm-4, +.gy-sm-4 { + --bs-gutter-y: 1.5rem; + } + + .g-sm-5, +.gx-sm-5 { + --bs-gutter-x: 3rem; + } + + .g-sm-5, +.gy-sm-5 { + --bs-gutter-y: 3rem; + } +} +@media (min-width: 768px) { + .col-md { + flex: 1 0 0%; + } + + .row-cols-md-auto > * { + flex: 0 0 auto; + width: auto; + } + + .row-cols-md-1 > * { + flex: 0 0 auto; + width: 100%; + } + + .row-cols-md-2 > * { + flex: 0 0 auto; + width: 50%; + } + + .row-cols-md-3 > * { + flex: 0 0 auto; + width: 33.3333333333%; + } + + .row-cols-md-4 > * { + flex: 0 0 auto; + width: 25%; + } + + .row-cols-md-5 > * { + flex: 0 0 auto; + width: 20%; + } + + .row-cols-md-6 > * { + flex: 0 0 auto; + width: 16.6666666667%; + } + + .col-md-auto { + flex: 0 0 auto; + width: auto; + } + + .col-md-1 { + flex: 0 0 auto; + width: 8.3333333333%; + } + + .col-md-2 { + flex: 0 0 auto; + width: 16.6666666667%; + } + + .col-md-3 { + flex: 0 0 auto; + width: 25%; + } + + .col-md-4 { + flex: 0 0 auto; + width: 33.3333333333%; + } + + .col-md-5 { + flex: 0 0 auto; + width: 41.6666666667%; + } + + .col-md-6 { + flex: 0 0 auto; + width: 50%; + } + + .col-md-7 { + flex: 0 0 auto; + width: 58.3333333333%; + } + + .col-md-8 { + flex: 0 0 auto; + width: 66.6666666667%; + } + + .col-md-9 { + flex: 0 0 auto; + width: 75%; + } + + .col-md-10 { + flex: 0 0 auto; + width: 83.3333333333%; + } + + .col-md-11 { + flex: 0 0 auto; + width: 91.6666666667%; + } + + .col-md-12 { + flex: 0 0 auto; + width: 100%; + } + + .offset-md-0 { + margin-left: 0; + } + + .offset-md-1 { + margin-left: 8.3333333333%; + } + + .offset-md-2 { + margin-left: 16.6666666667%; + } + + .offset-md-3 { + margin-left: 25%; + } + + .offset-md-4 { + margin-left: 33.3333333333%; + } + + .offset-md-5 { + margin-left: 41.6666666667%; + } + + .offset-md-6 { + margin-left: 50%; + } + + .offset-md-7 { + margin-left: 58.3333333333%; + } + + .offset-md-8 { + margin-left: 66.6666666667%; + } + + .offset-md-9 { + margin-left: 75%; + } + + .offset-md-10 { + margin-left: 83.3333333333%; + } + + .offset-md-11 { + margin-left: 91.6666666667%; + } + + .g-md-0, +.gx-md-0 { + --bs-gutter-x: 0; + } + + .g-md-0, +.gy-md-0 { + --bs-gutter-y: 0; + } + + .g-md-1, +.gx-md-1 { + --bs-gutter-x: 0.25rem; + } + + .g-md-1, +.gy-md-1 { + --bs-gutter-y: 0.25rem; + } + + .g-md-2, +.gx-md-2 { + --bs-gutter-x: 0.5rem; + } + + .g-md-2, +.gy-md-2 { + --bs-gutter-y: 0.5rem; + } + + .g-md-3, +.gx-md-3 { + --bs-gutter-x: 1rem; + } + + .g-md-3, +.gy-md-3 { + --bs-gutter-y: 1rem; + } + + .g-md-4, +.gx-md-4 { + --bs-gutter-x: 1.5rem; + } + + .g-md-4, +.gy-md-4 { + --bs-gutter-y: 1.5rem; + } + + .g-md-5, +.gx-md-5 { + --bs-gutter-x: 3rem; + } + + .g-md-5, +.gy-md-5 { + --bs-gutter-y: 3rem; + } +} +@media (min-width: 992px) { + .col-lg { + flex: 1 0 0%; + } + + .row-cols-lg-auto > * { + flex: 0 0 auto; + width: auto; + } + + .row-cols-lg-1 > * { + flex: 0 0 auto; + width: 100%; + } + + .row-cols-lg-2 > * { + flex: 0 0 auto; + width: 50%; + } + + .row-cols-lg-3 > * { + flex: 0 0 auto; + width: 33.3333333333%; + } + + .row-cols-lg-4 > * { + flex: 0 0 auto; + width: 25%; + } + + .row-cols-lg-5 > * { + flex: 0 0 auto; + width: 20%; + } + + .row-cols-lg-6 > * { + flex: 0 0 auto; + width: 16.6666666667%; + } + + .col-lg-auto { + flex: 0 0 auto; + width: auto; + } + + .col-lg-1 { + flex: 0 0 auto; + width: 8.3333333333%; + } + + .col-lg-2 { + flex: 0 0 auto; + width: 16.6666666667%; + } + + .col-lg-3 { + flex: 0 0 auto; + width: 25%; + } + + .col-lg-4 { + flex: 0 0 auto; + width: 33.3333333333%; + } + + .col-lg-5 { + flex: 0 0 auto; + width: 41.6666666667%; + } + + .col-lg-6 { + flex: 0 0 auto; + width: 50%; + } + + .col-lg-7 { + flex: 0 0 auto; + width: 58.3333333333%; + } + + .col-lg-8 { + flex: 0 0 auto; + width: 66.6666666667%; + } + + .col-lg-9 { + flex: 0 0 auto; + width: 75%; + } + + .col-lg-10 { + flex: 0 0 auto; + width: 83.3333333333%; + } + + .col-lg-11 { + flex: 0 0 auto; + width: 91.6666666667%; + } + + .col-lg-12 { + flex: 0 0 auto; + width: 100%; + } + + .offset-lg-0 { + margin-left: 0; + } + + .offset-lg-1 { + margin-left: 8.3333333333%; + } + + .offset-lg-2 { + margin-left: 16.6666666667%; + } + + .offset-lg-3 { + margin-left: 25%; + } + + .offset-lg-4 { + margin-left: 33.3333333333%; + } + + .offset-lg-5 { + margin-left: 41.6666666667%; + } + + .offset-lg-6 { + margin-left: 50%; + } + + .offset-lg-7 { + margin-left: 58.3333333333%; + } + + .offset-lg-8 { + margin-left: 66.6666666667%; + } + + .offset-lg-9 { + margin-left: 75%; + } + + .offset-lg-10 { + margin-left: 83.3333333333%; + } + + .offset-lg-11 { + margin-left: 91.6666666667%; + } + + .g-lg-0, +.gx-lg-0 { + --bs-gutter-x: 0; + } + + .g-lg-0, +.gy-lg-0 { + --bs-gutter-y: 0; + } + + .g-lg-1, +.gx-lg-1 { + --bs-gutter-x: 0.25rem; + } + + .g-lg-1, +.gy-lg-1 { + --bs-gutter-y: 0.25rem; + } + + .g-lg-2, +.gx-lg-2 { + --bs-gutter-x: 0.5rem; + } + + .g-lg-2, +.gy-lg-2 { + --bs-gutter-y: 0.5rem; + } + + .g-lg-3, +.gx-lg-3 { + --bs-gutter-x: 1rem; + } + + .g-lg-3, +.gy-lg-3 { + --bs-gutter-y: 1rem; + } + + .g-lg-4, +.gx-lg-4 { + --bs-gutter-x: 1.5rem; + } + + .g-lg-4, +.gy-lg-4 { + --bs-gutter-y: 1.5rem; + } + + .g-lg-5, +.gx-lg-5 { + --bs-gutter-x: 3rem; + } + + .g-lg-5, +.gy-lg-5 { + --bs-gutter-y: 3rem; + } +} +@media (min-width: 1200px) { + .col-xl { + flex: 1 0 0%; + } + + .row-cols-xl-auto > * { + flex: 0 0 auto; + width: auto; + } + + .row-cols-xl-1 > * { + flex: 0 0 auto; + width: 100%; + } + + .row-cols-xl-2 > * { + flex: 0 0 auto; + width: 50%; + } + + .row-cols-xl-3 > * { + flex: 0 0 auto; + width: 33.3333333333%; + } + + .row-cols-xl-4 > * { + flex: 0 0 auto; + width: 25%; + } + + .row-cols-xl-5 > * { + flex: 0 0 auto; + width: 20%; + } + + .row-cols-xl-6 > * { + flex: 0 0 auto; + width: 16.6666666667%; + } + + .col-xl-auto { + flex: 0 0 auto; + width: auto; + } + + .col-xl-1 { + flex: 0 0 auto; + width: 8.3333333333%; + } + + .col-xl-2 { + flex: 0 0 auto; + width: 16.6666666667%; + } + + .col-xl-3 { + flex: 0 0 auto; + width: 25%; + } + + .col-xl-4 { + flex: 0 0 auto; + width: 33.3333333333%; + } + + .col-xl-5 { + flex: 0 0 auto; + width: 41.6666666667%; + } + + .col-xl-6 { + flex: 0 0 auto; + width: 50%; + } + + .col-xl-7 { + flex: 0 0 auto; + width: 58.3333333333%; + } + + .col-xl-8 { + flex: 0 0 auto; + width: 66.6666666667%; + } + + .col-xl-9 { + flex: 0 0 auto; + width: 75%; + } + + .col-xl-10 { + flex: 0 0 auto; + width: 83.3333333333%; + } + + .col-xl-11 { + flex: 0 0 auto; + width: 91.6666666667%; + } + + .col-xl-12 { + flex: 0 0 auto; + width: 100%; + } + + .offset-xl-0 { + margin-left: 0; + } + + .offset-xl-1 { + margin-left: 8.3333333333%; + } + + .offset-xl-2 { + margin-left: 16.6666666667%; + } + + .offset-xl-3 { + margin-left: 25%; + } + + .offset-xl-4 { + margin-left: 33.3333333333%; + } + + .offset-xl-5 { + margin-left: 41.6666666667%; + } + + .offset-xl-6 { + margin-left: 50%; + } + + .offset-xl-7 { + margin-left: 58.3333333333%; + } + + .offset-xl-8 { + margin-left: 66.6666666667%; + } + + .offset-xl-9 { + margin-left: 75%; + } + + .offset-xl-10 { + margin-left: 83.3333333333%; + } + + .offset-xl-11 { + margin-left: 91.6666666667%; + } + + .g-xl-0, +.gx-xl-0 { + --bs-gutter-x: 0; + } + + .g-xl-0, +.gy-xl-0 { + --bs-gutter-y: 0; + } + + .g-xl-1, +.gx-xl-1 { + --bs-gutter-x: 0.25rem; + } + + .g-xl-1, +.gy-xl-1 { + --bs-gutter-y: 0.25rem; + } + + .g-xl-2, +.gx-xl-2 { + --bs-gutter-x: 0.5rem; + } + + .g-xl-2, +.gy-xl-2 { + --bs-gutter-y: 0.5rem; + } + + .g-xl-3, +.gx-xl-3 { + --bs-gutter-x: 1rem; + } + + .g-xl-3, +.gy-xl-3 { + --bs-gutter-y: 1rem; + } + + .g-xl-4, +.gx-xl-4 { + --bs-gutter-x: 1.5rem; + } + + .g-xl-4, +.gy-xl-4 { + --bs-gutter-y: 1.5rem; + } + + .g-xl-5, +.gx-xl-5 { + --bs-gutter-x: 3rem; + } + + .g-xl-5, +.gy-xl-5 { + --bs-gutter-y: 3rem; + } +} +@media (min-width: 1400px) { + .col-xxl { + flex: 1 0 0%; + } + + .row-cols-xxl-auto > * { + flex: 0 0 auto; + width: auto; + } + + .row-cols-xxl-1 > * { + flex: 0 0 auto; + width: 100%; + } + + .row-cols-xxl-2 > * { + flex: 0 0 auto; + width: 50%; + } + + .row-cols-xxl-3 > * { + flex: 0 0 auto; + width: 33.3333333333%; + } + + .row-cols-xxl-4 > * { + flex: 0 0 auto; + width: 25%; + } + + .row-cols-xxl-5 > * { + flex: 0 0 auto; + width: 20%; + } + + .row-cols-xxl-6 > * { + flex: 0 0 auto; + width: 16.6666666667%; + } + + .col-xxl-auto { + flex: 0 0 auto; + width: auto; + } + + .col-xxl-1 { + flex: 0 0 auto; + width: 8.3333333333%; + } + + .col-xxl-2 { + flex: 0 0 auto; + width: 16.6666666667%; + } + + .col-xxl-3 { + flex: 0 0 auto; + width: 25%; + } + + .col-xxl-4 { + flex: 0 0 auto; + width: 33.3333333333%; + } + + .col-xxl-5 { + flex: 0 0 auto; + width: 41.6666666667%; + } + + .col-xxl-6 { + flex: 0 0 auto; + width: 50%; + } + + .col-xxl-7 { + flex: 0 0 auto; + width: 58.3333333333%; + } + + .col-xxl-8 { + flex: 0 0 auto; + width: 66.6666666667%; + } + + .col-xxl-9 { + flex: 0 0 auto; + width: 75%; + } + + .col-xxl-10 { + flex: 0 0 auto; + width: 83.3333333333%; + } + + .col-xxl-11 { + flex: 0 0 auto; + width: 91.6666666667%; + } + + .col-xxl-12 { + flex: 0 0 auto; + width: 100%; + } + + .offset-xxl-0 { + margin-left: 0; + } + + .offset-xxl-1 { + margin-left: 8.3333333333%; + } + + .offset-xxl-2 { + margin-left: 16.6666666667%; + } + + .offset-xxl-3 { + margin-left: 25%; + } + + .offset-xxl-4 { + margin-left: 33.3333333333%; + } + + .offset-xxl-5 { + margin-left: 41.6666666667%; + } + + .offset-xxl-6 { + margin-left: 50%; + } + + .offset-xxl-7 { + margin-left: 58.3333333333%; + } + + .offset-xxl-8 { + margin-left: 66.6666666667%; + } + + .offset-xxl-9 { + margin-left: 75%; + } + + .offset-xxl-10 { + margin-left: 83.3333333333%; + } + + .offset-xxl-11 { + margin-left: 91.6666666667%; + } + + .g-xxl-0, +.gx-xxl-0 { + --bs-gutter-x: 0; + } + + .g-xxl-0, +.gy-xxl-0 { + --bs-gutter-y: 0; + } + + .g-xxl-1, +.gx-xxl-1 { + --bs-gutter-x: 0.25rem; + } + + .g-xxl-1, +.gy-xxl-1 { + --bs-gutter-y: 0.25rem; + } + + .g-xxl-2, +.gx-xxl-2 { + --bs-gutter-x: 0.5rem; + } + + .g-xxl-2, +.gy-xxl-2 { + --bs-gutter-y: 0.5rem; + } + + .g-xxl-3, +.gx-xxl-3 { + --bs-gutter-x: 1rem; + } + + .g-xxl-3, +.gy-xxl-3 { + --bs-gutter-y: 1rem; + } + + .g-xxl-4, +.gx-xxl-4 { + --bs-gutter-x: 1.5rem; + } + + .g-xxl-4, +.gy-xxl-4 { + --bs-gutter-y: 1.5rem; + } + + .g-xxl-5, +.gx-xxl-5 { + --bs-gutter-x: 3rem; + } + + .g-xxl-5, +.gy-xxl-5 { + --bs-gutter-y: 3rem; + } +} +.table { + --bs-table-bg: transparent; + --bs-table-accent-bg: transparent; + --bs-table-striped-color: #212529; + --bs-table-striped-bg: rgba(0, 0, 0, 0.05); + --bs-table-active-color: #212529; + --bs-table-active-bg: rgba(0, 0, 0, 0.1); + --bs-table-hover-color: #212529; + --bs-table-hover-bg: rgba(0, 0, 0, 0.075); + width: 100%; + margin-bottom: 1rem; + color: #212529; + vertical-align: top; + border-color: #dee2e6; +} +.table > :not(caption) > * > * { + padding: 0.5rem 0.5rem; + background-color: var(--bs-table-bg); + background-image: linear-gradient(var(--bs-table-accent-bg), var(--bs-table-accent-bg)); + border-bottom-width: 1px; +} +.table > tbody { + vertical-align: inherit; +} +.table > thead { + vertical-align: bottom; +} +.table > :not(:last-child) > :last-child > * { + border-bottom-color: currentColor; +} + +.caption-top { + caption-side: top; +} + +.table-sm > :not(caption) > * > * { + padding: 0.25rem 0.25rem; +} + +.table-bordered > :not(caption) > * { + border-width: 1px 0; +} +.table-bordered > :not(caption) > * > * { + border-width: 0 1px; +} + +.table-borderless > :not(caption) > * > * { + border-bottom-width: 0; +} + +.table-striped > tbody > tr:nth-of-type(odd) { + --bs-table-accent-bg: var(--bs-table-striped-bg); + color: var(--bs-table-striped-color); +} + +.table-active { + --bs-table-accent-bg: var(--bs-table-active-bg); + color: var(--bs-table-active-color); +} + +.table-hover > tbody > tr:hover { + --bs-table-accent-bg: var(--bs-table-hover-bg); + color: var(--bs-table-hover-color); +} + +.table-primary { + --bs-table-bg: #cce4ed; + --bs-table-striped-bg: #c2d9e1; + --bs-table-striped-color: #000; + --bs-table-active-bg: #b8cdd5; + --bs-table-active-color: #000; + --bs-table-hover-bg: #bdd3db; + --bs-table-hover-color: #000; + color: #000; + border-color: #b8cdd5; +} + +.table-secondary { + --bs-table-bg: #fff2cc; + --bs-table-striped-bg: #f2e6c2; + --bs-table-striped-color: #000; + --bs-table-active-bg: #e6dab8; + --bs-table-active-color: #000; + --bs-table-hover-bg: #ece0bd; + --bs-table-hover-color: #000; + color: #000; + border-color: #e6dab8; +} + +.table-success { + --bs-table-bg: #eaf4cc; + --bs-table-striped-bg: #dee8c2; + --bs-table-striped-color: #000; + --bs-table-active-bg: #d3dcb8; + --bs-table-active-color: #000; + --bs-table-hover-bg: #d8e2bd; + --bs-table-hover-color: #000; + color: #000; + border-color: #d3dcb8; +} + +.table-info { + --bs-table-bg: #cceaf9; + --bs-table-striped-bg: #c2deed; + --bs-table-striped-color: #000; + --bs-table-active-bg: #b8d3e0; + --bs-table-active-color: #000; + --bs-table-hover-bg: #bdd8e6; + --bs-table-hover-color: #000; + color: #000; + border-color: #b8d3e0; +} + +.table-warning { + --bs-table-bg: #fff2cc; + --bs-table-striped-bg: #f2e6c2; + --bs-table-striped-color: #000; + --bs-table-active-bg: #e6dab8; + --bs-table-active-color: #000; + --bs-table-hover-bg: #ece0bd; + --bs-table-hover-color: #000; + color: #000; + border-color: #e6dab8; +} + +.table-danger { + --bs-table-bg: #fad9d1; + --bs-table-striped-bg: #eecec7; + --bs-table-striped-color: #000; + --bs-table-active-bg: #e1c3bc; + --bs-table-active-color: #000; + --bs-table-hover-bg: #e7c9c1; + --bs-table-hover-color: #000; + color: #000; + border-color: #e1c3bc; +} + +.table-light { + --bs-table-bg: #f8f9fa; + --bs-table-striped-bg: #ecedee; + --bs-table-striped-color: #000; + --bs-table-active-bg: #dfe0e1; + --bs-table-active-color: #000; + --bs-table-hover-bg: #e5e6e7; + --bs-table-hover-color: #000; + color: #000; + border-color: #dfe0e1; +} + +.table-dark { + --bs-table-bg: #333; + --bs-table-striped-bg: #3d3d3d; + --bs-table-striped-color: #fff; + --bs-table-active-bg: #474747; + --bs-table-active-color: #fff; + --bs-table-hover-bg: #424242; + --bs-table-hover-color: #fff; + color: #fff; + border-color: #474747; +} + +.table-responsive { + overflow-x: auto; + -webkit-overflow-scrolling: touch; +} + +@media (max-width: 575.98px) { + .table-responsive-sm { + overflow-x: auto; + -webkit-overflow-scrolling: touch; + } +} +@media (max-width: 767.98px) { + .table-responsive-md { + overflow-x: auto; + -webkit-overflow-scrolling: touch; + } +} +@media (max-width: 991.98px) { + .table-responsive-lg { + overflow-x: auto; + -webkit-overflow-scrolling: touch; + } +} +@media (max-width: 1199.98px) { + .table-responsive-xl { + overflow-x: auto; + -webkit-overflow-scrolling: touch; + } +} +@media (max-width: 1399.98px) { + .table-responsive-xxl { + overflow-x: auto; + -webkit-overflow-scrolling: touch; + } +} +.form-label { + margin-bottom: 0.5rem; +} + +.col-form-label { + padding-top: calc(0.375rem + 1px); + padding-bottom: calc(0.375rem + 1px); + margin-bottom: 0; + font-size: inherit; + line-height: 1.5; +} + +.col-form-label-lg { + padding-top: calc(0.5rem + 1px); + padding-bottom: calc(0.5rem + 1px); + font-size: 1.25rem; +} + +.col-form-label-sm { + padding-top: calc(0.25rem + 1px); + padding-bottom: calc(0.25rem + 1px); + font-size: 0.875rem; +} + +.form-text { + margin-top: 0.25rem; + font-size: 0.8rem; + color: #6c757d; +} + +.form-control { + display: block; + width: 100%; + padding: 0.375rem 0.75rem; + font-size: 1rem; + font-weight: 400; + line-height: 1.5; + color: #212529; + background-color: #fff; + background-clip: padding-box; + border: 1px solid #ced4da; + -webkit-appearance: none; + -moz-appearance: none; + appearance: none; + border-radius: 0.25rem; + transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; +} +@media (prefers-reduced-motion: reduce) { + .form-control { + transition: none; + } +} +.form-control[type=file] { + overflow: hidden; +} +.form-control[type=file]:not(:disabled):not([readonly]) { + cursor: pointer; +} +.form-control:focus { + color: #212529; + background-color: #fff; + border-color: #80bbd2; + outline: 0; + box-shadow: none; +} +.form-control::-webkit-date-and-time-value { + height: 1.5em; +} +.form-control::-moz-placeholder { + color: #6c757d; + opacity: 1; +} +.form-control:-ms-input-placeholder { + color: #6c757d; + opacity: 1; +} +.form-control::placeholder { + color: #6c757d; + opacity: 1; +} +.form-control:disabled, .form-control[readonly] { + background-color: #e9ecef; + opacity: 1; +} +.form-control::file-selector-button { + padding: 0.375rem 0.75rem; + margin: -0.375rem -0.75rem; + -webkit-margin-end: 0.75rem; + margin-inline-end: 0.75rem; + color: #212529; + background-color: #e9ecef; + pointer-events: none; + border-color: inherit; + border-style: solid; + border-width: 0; + border-inline-end-width: 1px; + border-radius: 0; + transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; +} +@media (prefers-reduced-motion: reduce) { + .form-control::file-selector-button { + transition: none; + } +} +.form-control:hover:not(:disabled):not([readonly])::file-selector-button { + background-color: #dde0e3; +} +.form-control::-webkit-file-upload-button { + padding: 0.375rem 0.75rem; + margin: -0.375rem -0.75rem; + -webkit-margin-end: 0.75rem; + margin-inline-end: 0.75rem; + color: #212529; + background-color: #e9ecef; + pointer-events: none; + border-color: inherit; + border-style: solid; + border-width: 0; + border-inline-end-width: 1px; + border-radius: 0; + -webkit-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; + transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; +} +@media (prefers-reduced-motion: reduce) { + .form-control::-webkit-file-upload-button { + -webkit-transition: none; + transition: none; + } +} +.form-control:hover:not(:disabled):not([readonly])::-webkit-file-upload-button { + background-color: #dde0e3; +} + +.form-control-plaintext { + display: block; + width: 100%; + padding: 0.375rem 0; + margin-bottom: 0; + line-height: 1.5; + color: #212529; + background-color: transparent; + border: solid transparent; + border-width: 1px 0; +} +.form-control-plaintext.form-control-sm, .form-control-plaintext.form-control-lg { + padding-right: 0; + padding-left: 0; +} + +.form-control-sm { + min-height: calc(1.5em + 0.5rem + 2px); + padding: 0.25rem 0.5rem; + font-size: 0.875rem; + border-radius: 0.2rem; +} +.form-control-sm::file-selector-button { + padding: 0.25rem 0.5rem; + margin: -0.25rem -0.5rem; + -webkit-margin-end: 0.5rem; + margin-inline-end: 0.5rem; +} +.form-control-sm::-webkit-file-upload-button { + padding: 0.25rem 0.5rem; + margin: -0.25rem -0.5rem; + -webkit-margin-end: 0.5rem; + margin-inline-end: 0.5rem; +} + +.form-control-lg { + min-height: calc(1.5em + 1rem + 2px); + padding: 0.5rem 1rem; + font-size: 1.25rem; + border-radius: 0.3rem; +} +.form-control-lg::file-selector-button { + padding: 0.5rem 1rem; + margin: -0.5rem -1rem; + -webkit-margin-end: 1rem; + margin-inline-end: 1rem; +} +.form-control-lg::-webkit-file-upload-button { + padding: 0.5rem 1rem; + margin: -0.5rem -1rem; + -webkit-margin-end: 1rem; + margin-inline-end: 1rem; +} + +textarea.form-control { + min-height: calc(1.5em + 0.75rem + 2px); +} +textarea.form-control-sm { + min-height: calc(1.5em + 0.5rem + 2px); +} +textarea.form-control-lg { + min-height: calc(1.5em + 1rem + 2px); +} + +.form-control-color { + max-width: 3rem; + height: auto; + padding: 0.375rem; +} +.form-control-color:not(:disabled):not([readonly]) { + cursor: pointer; +} +.form-control-color::-moz-color-swatch { + height: 1.5em; + border-radius: 0.25rem; +} +.form-control-color::-webkit-color-swatch { + height: 1.5em; + border-radius: 0.25rem; +} + +.form-select { + display: block; + width: 100%; + padding: 0.375rem 1.75rem 0.375rem 0.75rem; + font-size: 1rem; + font-weight: 400; + line-height: 1.5; + color: #212529; + vertical-align: middle; + background-color: #fff; + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e"); + background-repeat: no-repeat; + background-position: right 0.75rem center; + background-size: 16px 12px; + border: 1px solid #ced4da; + border-radius: 0.25rem; + -webkit-appearance: none; + -moz-appearance: none; + appearance: none; +} +.form-select:focus { + border-color: #80bbd2; + outline: 0; + box-shadow: 0 0 0 0.25rem rgba(0, 118, 165, 0.25); +} +.form-select[multiple], .form-select[size]:not([size="1"]) { + padding-right: 0.75rem; + background-image: none; +} +.form-select:disabled { + color: #6c757d; + background-color: #e9ecef; +} +.form-select:-moz-focusring { + color: transparent; + text-shadow: 0 0 0 #212529; +} + +.form-select-sm { + padding-top: 0.25rem; + padding-bottom: 0.25rem; + padding-left: 0.5rem; + font-size: 0.875rem; +} + +.form-select-lg { + padding-top: 0.5rem; + padding-bottom: 0.5rem; + padding-left: 1rem; + font-size: 1.25rem; +} + +.form-check { + display: block; + min-height: 1.5rem; + padding-left: 1.5em; + margin-bottom: 0.125rem; +} +.form-check .form-check-input { + float: left; + margin-left: -1.5em; +} + +.form-check-input { + width: 1em; + height: 1em; + margin-top: 0.25em; + vertical-align: top; + background-color: #fff; + background-repeat: no-repeat; + background-position: center; + background-size: contain; + border: 1px solid rgba(0, 0, 0, 0.25); + -webkit-appearance: none; + -moz-appearance: none; + appearance: none; + -webkit-print-color-adjust: exact; + color-adjust: exact; + transition: background-color 0.15s ease-in-out, background-position 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; +} +@media (prefers-reduced-motion: reduce) { + .form-check-input { + transition: none; + } +} +.form-check-input[type=checkbox] { + border-radius: 0.25em; +} +.form-check-input[type=radio] { + border-radius: 50%; +} +.form-check-input:active { + filter: brightness(90%); +} +.form-check-input:focus { + border-color: #80bbd2; + outline: 0; + box-shadow: 0 0 0 0.25rem rgba(0, 118, 165, 0.25); +} +.form-check-input:checked { + background-color: #0076a5; + border-color: #0076a5; +} +.form-check-input:checked[type=checkbox] { + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10l3 3l6-6'/%3e%3c/svg%3e"); +} +.form-check-input:checked[type=radio] { + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='2' fill='%23fff'/%3e%3c/svg%3e"); +} +.form-check-input[type=checkbox]:indeterminate { + background-color: #0076a5; + border-color: #0076a5; + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10h8'/%3e%3c/svg%3e"); +} +.form-check-input:disabled { + pointer-events: none; + filter: none; + opacity: 0.5; +} +.form-check-input[disabled] ~ .form-check-label, .form-check-input:disabled ~ .form-check-label { + opacity: 0.5; +} + +.form-switch { + padding-left: 2.5em; +} +.form-switch .form-check-input { + width: 2em; + margin-left: -2.5em; + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba%280, 0, 0, 0.25%29'/%3e%3c/svg%3e"); + background-position: left center; + border-radius: 2em; +} +.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='%2380bbd2'/%3e%3c/svg%3e"); +} +.form-switch .form-check-input:checked { + background-position: right center; + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e"); +} + +.form-check-inline { + display: inline-block; + margin-right: 1rem; +} + +.btn-check { + position: absolute; + clip: rect(0, 0, 0, 0); + pointer-events: none; +} +.btn-check[disabled] + .btn, .btn-check:disabled + .btn { + pointer-events: none; + filter: none; + opacity: 0.65; +} + +.form-range { + width: 100%; + height: 1.5rem; + padding: 0; + background-color: transparent; + -webkit-appearance: none; + -moz-appearance: none; + appearance: none; +} +.form-range:focus { + outline: none; +} +.form-range:focus::-webkit-slider-thumb { + box-shadow: 0 0 0 1px #fff, none; +} +.form-range:focus::-moz-range-thumb { + box-shadow: 0 0 0 1px #fff, none; +} +.form-range::-moz-focus-outer { + border: 0; +} +.form-range::-webkit-slider-thumb { + width: 1rem; + height: 1rem; + margin-top: -0.25rem; + background-color: #0076a5; + border: 0; + border-radius: 1rem; + -webkit-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; + transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; + -webkit-appearance: none; + appearance: none; +} +@media (prefers-reduced-motion: reduce) { + .form-range::-webkit-slider-thumb { + -webkit-transition: none; + transition: none; + } +} +.form-range::-webkit-slider-thumb:active { + background-color: #b3d6e4; +} +.form-range::-webkit-slider-runnable-track { + width: 100%; + height: 0.5rem; + color: transparent; + cursor: pointer; + background-color: #dee2e6; + border-color: transparent; + border-radius: 1rem; +} +.form-range::-moz-range-thumb { + width: 1rem; + height: 1rem; + background-color: #0076a5; + border: 0; + border-radius: 1rem; + -moz-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; + transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; + -moz-appearance: none; + appearance: none; +} +@media (prefers-reduced-motion: reduce) { + .form-range::-moz-range-thumb { + -moz-transition: none; + transition: none; + } +} +.form-range::-moz-range-thumb:active { + background-color: #b3d6e4; +} +.form-range::-moz-range-track { + width: 100%; + height: 0.5rem; + color: transparent; + cursor: pointer; + background-color: #dee2e6; + border-color: transparent; + border-radius: 1rem; +} +.form-range:disabled { + pointer-events: none; +} +.form-range:disabled::-webkit-slider-thumb { + background-color: #adb5bd; +} +.form-range:disabled::-moz-range-thumb { + background-color: #adb5bd; +} + +.form-floating { + position: relative; +} +.form-floating > .form-control, +.form-floating > .form-select { + height: calc(3.5rem + 2px); + padding: 1rem 0.75rem; +} +.form-floating > label { + position: absolute; + top: 0; + left: 0; + height: 100%; + padding: 1rem 0.75rem; + pointer-events: none; + border: 1px solid transparent; + transform-origin: 0 0; + transition: opacity 0.1s ease-in-out, transform 0.1s ease-in-out; +} +@media (prefers-reduced-motion: reduce) { + .form-floating > label { + transition: none; + } +} +.form-floating > .form-control::-moz-placeholder { + color: transparent; +} +.form-floating > .form-control:-ms-input-placeholder { + color: transparent; +} +.form-floating > .form-control::placeholder { + color: transparent; +} +.form-floating > .form-control:not(:-moz-placeholder-shown) { + padding-top: 1.625rem; + padding-bottom: 0.625rem; +} +.form-floating > .form-control:not(:-ms-input-placeholder) { + padding-top: 1.625rem; + padding-bottom: 0.625rem; +} +.form-floating > .form-control:focus, .form-floating > .form-control:not(:placeholder-shown) { + padding-top: 1.625rem; + padding-bottom: 0.625rem; +} +.form-floating > .form-control:-webkit-autofill { + padding-top: 1.625rem; + padding-bottom: 0.625rem; +} +.form-floating > .form-select { + padding-top: 1.625rem; + padding-bottom: 0.625rem; +} +.form-floating > .form-control:not(:-moz-placeholder-shown) ~ label { + opacity: 0.65; + transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem); +} +.form-floating > .form-control:not(:-ms-input-placeholder) ~ label { + opacity: 0.65; + transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem); +} +.form-floating > .form-control:focus ~ label, +.form-floating > .form-control:not(:placeholder-shown) ~ label, +.form-floating > .form-select ~ label { + opacity: 0.65; + transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem); +} +.form-floating > .form-control:-webkit-autofill ~ label { + opacity: 0.65; + transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem); +} + +.input-group { + position: relative; + display: flex; + flex-wrap: wrap; + align-items: stretch; + width: 100%; +} +.input-group > .form-control, +.input-group > .form-select { + position: relative; + flex: 1 1 auto; + width: 1%; + min-width: 0; +} +.input-group > .form-control:focus, +.input-group > .form-select:focus { + z-index: 3; +} +.input-group .btn { + position: relative; + z-index: 2; +} +.input-group .btn:focus { + z-index: 3; +} + +.input-group-text { + display: flex; + align-items: center; + padding: 0.375rem 0.75rem; + font-size: 1rem; + font-weight: 400; + line-height: 1.5; + color: #212529; + text-align: center; + white-space: nowrap; + background-color: #e9ecef; + border: 1px solid #ced4da; + border-radius: 0.25rem; +} + +.input-group-lg > .form-control, +.input-group-lg > .form-select, +.input-group-lg > .input-group-text, +.input-group-lg > .btn { + padding: 0.5rem 1rem; + font-size: 1.25rem; + border-radius: 0.3rem; +} + +.input-group-sm > .form-control, +.input-group-sm > .form-select, +.input-group-sm > .input-group-text, +.input-group-sm > .btn { + padding: 0.25rem 0.5rem; + font-size: 0.875rem; + border-radius: 0.2rem; +} + +.input-group-lg > .form-select, +.input-group-sm > .form-select { + padding-right: 1.75rem; +} + +.input-group:not(.has-validation) > :not(:last-child):not(.dropdown-toggle):not(.dropdown-menu), +.input-group:not(.has-validation) > .dropdown-toggle:nth-last-child(n+3) { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} +.input-group.has-validation > :nth-last-child(n+3):not(.dropdown-toggle):not(.dropdown-menu), +.input-group.has-validation > .dropdown-toggle:nth-last-child(n+4) { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} +.input-group > :not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback) { + margin-left: -1px; + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} + +.valid-feedback { + display: none; + width: 100%; + margin-top: 0.25rem; + font-size: 0.8rem; + color: #97c800; +} + +.valid-tooltip { + position: absolute; + top: 100%; + z-index: 5; + display: none; + max-width: 100%; + padding: 0.25rem 0.5rem; + margin-top: 0.1rem; + font-size: 0.875rem; + color: #000; + background-color: rgba(151, 200, 0, 0.9); + border-radius: 0.25rem; +} + +.was-validated :valid ~ .valid-feedback, +.was-validated :valid ~ .valid-tooltip, +.is-valid ~ .valid-feedback, +.is-valid ~ .valid-tooltip { + display: block; +} + +.was-validated .form-control:valid, .form-control.is-valid { + border-color: #97c800; + 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='%2397c800' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e"); + background-repeat: no-repeat; + background-position: right calc(0.375em + 0.1875rem) center; + background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem); +} +.was-validated .form-control:valid:focus, .form-control.is-valid:focus { + border-color: #97c800; + box-shadow: 0 0 0 0.25rem rgba(151, 200, 0, 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: #97c800; + padding-right: calc(0.75em + 2.3125rem); + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e"), url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%2397c800' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e"); + background-position: right 0.75rem center, center right 1.75rem; + 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: #97c800; + box-shadow: 0 0 0 0.25rem rgba(151, 200, 0, 0.25); +} + +.was-validated .form-check-input:valid, .form-check-input.is-valid { + border-color: #97c800; +} +.was-validated .form-check-input:valid:checked, .form-check-input.is-valid:checked { + background-color: #97c800; +} +.was-validated .form-check-input:valid:focus, .form-check-input.is-valid:focus { + box-shadow: 0 0 0 0.25rem rgba(151, 200, 0, 0.25); +} +.was-validated .form-check-input:valid ~ .form-check-label, .form-check-input.is-valid ~ .form-check-label { + color: #97c800; +} + +.form-check-inline .form-check-input ~ .valid-feedback { + margin-left: 0.5em; +} + +.invalid-feedback { + display: none; + width: 100%; + margin-top: 0.25rem; + font-size: 0.8rem; + color: #e74018; +} + +.invalid-tooltip { + position: absolute; + top: 100%; + z-index: 5; + display: none; + max-width: 100%; + padding: 0.25rem 0.5rem; + margin-top: 0.1rem; + font-size: 0.875rem; + color: #000; + background-color: rgba(231, 64, 24, 0.9); + border-radius: 0.25rem; +} + +.was-validated :invalid ~ .invalid-feedback, +.was-validated :invalid ~ .invalid-tooltip, +.is-invalid ~ .invalid-feedback, +.is-invalid ~ .invalid-tooltip { + display: block; +} + +.was-validated .form-control:invalid, .form-control.is-invalid { + border-color: #e74018; + 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='%23e74018'%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='%23e74018' 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: #e74018; + box-shadow: 0 0 0 0.25rem rgba(231, 64, 24, 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: #e74018; + padding-right: calc(0.75em + 2.3125rem); + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e"), url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23e74018'%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='%23e74018' stroke='none'/%3e%3c/svg%3e"); + background-position: right 0.75rem center, center right 1.75rem; + 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: #e74018; + box-shadow: 0 0 0 0.25rem rgba(231, 64, 24, 0.25); +} + +.was-validated .form-check-input:invalid, .form-check-input.is-invalid { + border-color: #e74018; +} +.was-validated .form-check-input:invalid:checked, .form-check-input.is-invalid:checked { + background-color: #e74018; +} +.was-validated .form-check-input:invalid:focus, .form-check-input.is-invalid:focus { + box-shadow: 0 0 0 0.25rem rgba(231, 64, 24, 0.25); +} +.was-validated .form-check-input:invalid ~ .form-check-label, .form-check-input.is-invalid ~ .form-check-label { + color: #e74018; +} + +.form-check-inline .form-check-input ~ .invalid-feedback { + margin-left: 0.5em; +} + +.btn { + display: inline-block; + font-weight: 400; + line-height: 1.5; + color: #212529; + text-align: center; + vertical-align: middle; + cursor: pointer; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + background-color: transparent; + border: 1px solid transparent; + padding: 0.375rem 0.75rem; + font-size: 1rem; + border-radius: 0.25rem; + transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; +} +@media (prefers-reduced-motion: reduce) { + .btn { + transition: none; + } +} +.btn:hover { + color: #212529; +} +.btn-check:focus + .btn, .btn:focus { + outline: 0; + box-shadow: none !important; +} +.btn:disabled, .btn.disabled, fieldset:disabled .btn { + pointer-events: none; + opacity: 0.65; +} + +.btn-primary { + color: #fff; + background-color: #0076a5; + border-color: #0076a5; +} +.btn-primary:hover { + color: #fff; + background-color: #00648c; + border-color: #005e84; +} +.btn-check:focus + .btn-primary, .btn-primary:focus { + color: #fff; + background-color: #00648c; + border-color: #005e84; + box-shadow: 0 0 0 0.25rem rgba(38, 139, 179, 0.5); +} +.btn-check:checked + .btn-primary, .btn-check:active + .btn-primary, .btn-primary:active, .btn-primary.active, .show > .btn-primary.dropdown-toggle { + color: #fff; + background-color: #005e84; + border-color: #00597c; +} +.btn-check:checked + .btn-primary:focus, .btn-check:active + .btn-primary:focus, .btn-primary:active:focus, .btn-primary.active:focus, .show > .btn-primary.dropdown-toggle:focus { + box-shadow: 0 0 0 0.25rem rgba(38, 139, 179, 0.5); +} +.btn-primary:disabled, .btn-primary.disabled { + color: #fff; + background-color: #0076a5; + border-color: #0076a5; +} + +.btn-secondary { + color: #000; + background-color: #ffc000; + border-color: #ffc000; +} +.btn-secondary:hover { + color: #000; + background-color: #ffc926; + border-color: #ffc61a; +} +.btn-check:focus + .btn-secondary, .btn-secondary:focus { + color: #000; + background-color: #ffc926; + border-color: #ffc61a; + box-shadow: 0 0 0 0.25rem rgba(217, 163, 0, 0.5); +} +.btn-check:checked + .btn-secondary, .btn-check:active + .btn-secondary, .btn-secondary:active, .btn-secondary.active, .show > .btn-secondary.dropdown-toggle { + color: #000; + background-color: #ffcd33; + border-color: #ffc61a; +} +.btn-check:checked + .btn-secondary:focus, .btn-check:active + .btn-secondary:focus, .btn-secondary:active:focus, .btn-secondary.active:focus, .show > .btn-secondary.dropdown-toggle:focus { + box-shadow: 0 0 0 0.25rem rgba(217, 163, 0, 0.5); +} +.btn-secondary:disabled, .btn-secondary.disabled { + color: #000; + background-color: #ffc000; + border-color: #ffc000; +} + +.btn-success { + color: #000; + background-color: #97c800; + border-color: #97c800; +} +.btn-success:hover { + color: #000; + background-color: #a7d026; + border-color: #a1ce1a; +} +.btn-check:focus + .btn-success, .btn-success:focus { + color: #000; + background-color: #a7d026; + border-color: #a1ce1a; + box-shadow: 0 0 0 0.25rem rgba(128, 170, 0, 0.5); +} +.btn-check:checked + .btn-success, .btn-check:active + .btn-success, .btn-success:active, .btn-success.active, .show > .btn-success.dropdown-toggle { + color: #000; + background-color: #acd333; + border-color: #a1ce1a; +} +.btn-check:checked + .btn-success:focus, .btn-check:active + .btn-success:focus, .btn-success:active:focus, .btn-success.active:focus, .show > .btn-success.dropdown-toggle:focus { + box-shadow: 0 0 0 0.25rem rgba(128, 170, 0, 0.5); +} +.btn-success:disabled, .btn-success.disabled { + color: #000; + background-color: #97c800; + border-color: #97c800; +} + +.btn-info { + color: #000; + background-color: #0098df; + border-color: #0098df; +} +.btn-info:hover { + color: #000; + background-color: #26a7e4; + border-color: #1aa2e2; +} +.btn-check:focus + .btn-info, .btn-info:focus { + color: #000; + background-color: #26a7e4; + border-color: #1aa2e2; + box-shadow: 0 0 0 0.25rem rgba(0, 129, 190, 0.5); +} +.btn-check:checked + .btn-info, .btn-check:active + .btn-info, .btn-info:active, .btn-info.active, .show > .btn-info.dropdown-toggle { + color: #000; + background-color: #33ade5; + border-color: #1aa2e2; +} +.btn-check:checked + .btn-info:focus, .btn-check:active + .btn-info:focus, .btn-info:active:focus, .btn-info.active:focus, .show > .btn-info.dropdown-toggle:focus { + box-shadow: 0 0 0 0.25rem rgba(0, 129, 190, 0.5); +} +.btn-info:disabled, .btn-info.disabled { + color: #000; + background-color: #0098df; + border-color: #0098df; +} + +.btn-warning { + color: #000; + background-color: #ffc000; + border-color: #ffc000; +} +.btn-warning:hover { + color: #000; + background-color: #ffc926; + border-color: #ffc61a; +} +.btn-check:focus + .btn-warning, .btn-warning:focus { + color: #000; + background-color: #ffc926; + border-color: #ffc61a; + box-shadow: 0 0 0 0.25rem rgba(217, 163, 0, 0.5); +} +.btn-check:checked + .btn-warning, .btn-check:active + .btn-warning, .btn-warning:active, .btn-warning.active, .show > .btn-warning.dropdown-toggle { + color: #000; + background-color: #ffcd33; + border-color: #ffc61a; +} +.btn-check:checked + .btn-warning:focus, .btn-check:active + .btn-warning:focus, .btn-warning:active:focus, .btn-warning.active:focus, .show > .btn-warning.dropdown-toggle:focus { + box-shadow: 0 0 0 0.25rem rgba(217, 163, 0, 0.5); +} +.btn-warning:disabled, .btn-warning.disabled { + color: #000; + background-color: #ffc000; + border-color: #ffc000; +} + +.btn-danger { + color: #000; + background-color: #e74018; + border-color: #e74018; +} +.btn-danger:hover { + color: #000; + background-color: #eb5d3b; + border-color: #e9532f; +} +.btn-check:focus + .btn-danger, .btn-danger:focus { + color: #000; + background-color: #eb5d3b; + border-color: #e9532f; + box-shadow: 0 0 0 0.25rem rgba(196, 54, 20, 0.5); +} +.btn-check:checked + .btn-danger, .btn-check:active + .btn-danger, .btn-danger:active, .btn-danger.active, .show > .btn-danger.dropdown-toggle { + color: #000; + background-color: #ec6646; + border-color: #e9532f; +} +.btn-check:checked + .btn-danger:focus, .btn-check:active + .btn-danger:focus, .btn-danger:active:focus, .btn-danger.active:focus, .show > .btn-danger.dropdown-toggle:focus { + box-shadow: 0 0 0 0.25rem rgba(196, 54, 20, 0.5); +} +.btn-danger:disabled, .btn-danger.disabled { + color: #000; + background-color: #e74018; + border-color: #e74018; +} + +.btn-light { + color: #000; + background-color: #f8f9fa; + border-color: #f8f9fa; +} +.btn-light:hover { + color: #000; + background-color: #f9fafb; + border-color: #f9fafb; +} +.btn-check:focus + .btn-light, .btn-light:focus { + color: #000; + background-color: #f9fafb; + border-color: #f9fafb; + box-shadow: 0 0 0 0.25rem rgba(211, 212, 213, 0.5); +} +.btn-check:checked + .btn-light, .btn-check:active + .btn-light, .btn-light:active, .btn-light.active, .show > .btn-light.dropdown-toggle { + color: #000; + background-color: #f9fafb; + border-color: #f9fafb; +} +.btn-check:checked + .btn-light:focus, .btn-check:active + .btn-light:focus, .btn-light:active:focus, .btn-light.active:focus, .show > .btn-light.dropdown-toggle:focus { + box-shadow: 0 0 0 0.25rem rgba(211, 212, 213, 0.5); +} +.btn-light:disabled, .btn-light.disabled { + color: #000; + background-color: #f8f9fa; + border-color: #f8f9fa; +} + +.btn-dark { + color: #fff; + background-color: #333; + border-color: #333; +} +.btn-dark:hover { + color: #fff; + background-color: #2b2b2b; + border-color: #292929; +} +.btn-check:focus + .btn-dark, .btn-dark:focus { + color: #fff; + background-color: #2b2b2b; + border-color: #292929; + box-shadow: 0 0 0 0.25rem rgba(82, 82, 82, 0.5); +} +.btn-check:checked + .btn-dark, .btn-check:active + .btn-dark, .btn-dark:active, .btn-dark.active, .show > .btn-dark.dropdown-toggle { + color: #fff; + background-color: #292929; + border-color: #262626; +} +.btn-check:checked + .btn-dark:focus, .btn-check:active + .btn-dark:focus, .btn-dark:active:focus, .btn-dark.active:focus, .show > .btn-dark.dropdown-toggle:focus { + box-shadow: 0 0 0 0.25rem rgba(82, 82, 82, 0.5); +} +.btn-dark:disabled, .btn-dark.disabled { + color: #fff; + background-color: #333; + border-color: #333; +} + +.btn-outline-primary { + color: #0076a5; + border-color: #0076a5; +} +.btn-outline-primary:hover { + color: #fff; + background-color: #0076a5; + border-color: #0076a5; +} +.btn-check:focus + .btn-outline-primary, .btn-outline-primary:focus { + box-shadow: 0 0 0 0.25rem rgba(0, 118, 165, 0.5); +} +.btn-check:checked + .btn-outline-primary, .btn-check:active + .btn-outline-primary, .btn-outline-primary:active, .btn-outline-primary.active, .btn-outline-primary.dropdown-toggle.show { + color: #fff; + background-color: #0076a5; + border-color: #0076a5; +} +.btn-check:checked + .btn-outline-primary:focus, .btn-check:active + .btn-outline-primary:focus, .btn-outline-primary:active:focus, .btn-outline-primary.active:focus, .btn-outline-primary.dropdown-toggle.show:focus { + box-shadow: 0 0 0 0.25rem rgba(0, 118, 165, 0.5); +} +.btn-outline-primary:disabled, .btn-outline-primary.disabled { + color: #0076a5; + background-color: transparent; +} + +.btn-outline-secondary { + color: #ffc000; + border-color: #ffc000; +} +.btn-outline-secondary:hover { + color: #000; + background-color: #ffc000; + border-color: #ffc000; +} +.btn-check:focus + .btn-outline-secondary, .btn-outline-secondary:focus { + box-shadow: 0 0 0 0.25rem rgba(255, 192, 0, 0.5); +} +.btn-check:checked + .btn-outline-secondary, .btn-check:active + .btn-outline-secondary, .btn-outline-secondary:active, .btn-outline-secondary.active, .btn-outline-secondary.dropdown-toggle.show { + color: #000; + background-color: #ffc000; + border-color: #ffc000; +} +.btn-check:checked + .btn-outline-secondary:focus, .btn-check:active + .btn-outline-secondary:focus, .btn-outline-secondary:active:focus, .btn-outline-secondary.active:focus, .btn-outline-secondary.dropdown-toggle.show:focus { + box-shadow: 0 0 0 0.25rem rgba(255, 192, 0, 0.5); +} +.btn-outline-secondary:disabled, .btn-outline-secondary.disabled { + color: #ffc000; + background-color: transparent; +} + +.btn-outline-success { + color: #97c800; + border-color: #97c800; +} +.btn-outline-success:hover { + color: #000; + background-color: #97c800; + border-color: #97c800; +} +.btn-check:focus + .btn-outline-success, .btn-outline-success:focus { + box-shadow: 0 0 0 0.25rem rgba(151, 200, 0, 0.5); +} +.btn-check:checked + .btn-outline-success, .btn-check:active + .btn-outline-success, .btn-outline-success:active, .btn-outline-success.active, .btn-outline-success.dropdown-toggle.show { + color: #000; + background-color: #97c800; + border-color: #97c800; +} +.btn-check:checked + .btn-outline-success:focus, .btn-check:active + .btn-outline-success:focus, .btn-outline-success:active:focus, .btn-outline-success.active:focus, .btn-outline-success.dropdown-toggle.show:focus { + box-shadow: 0 0 0 0.25rem rgba(151, 200, 0, 0.5); +} +.btn-outline-success:disabled, .btn-outline-success.disabled { + color: #97c800; + background-color: transparent; +} + +.btn-outline-info { + color: #0098df; + border-color: #0098df; +} +.btn-outline-info:hover { + color: #000; + background-color: #0098df; + border-color: #0098df; +} +.btn-check:focus + .btn-outline-info, .btn-outline-info:focus { + box-shadow: 0 0 0 0.25rem rgba(0, 152, 223, 0.5); +} +.btn-check:checked + .btn-outline-info, .btn-check:active + .btn-outline-info, .btn-outline-info:active, .btn-outline-info.active, .btn-outline-info.dropdown-toggle.show { + color: #000; + background-color: #0098df; + border-color: #0098df; +} +.btn-check:checked + .btn-outline-info:focus, .btn-check:active + .btn-outline-info:focus, .btn-outline-info:active:focus, .btn-outline-info.active:focus, .btn-outline-info.dropdown-toggle.show:focus { + box-shadow: 0 0 0 0.25rem rgba(0, 152, 223, 0.5); +} +.btn-outline-info:disabled, .btn-outline-info.disabled { + color: #0098df; + background-color: transparent; +} + +.btn-outline-warning { + color: #ffc000; + border-color: #ffc000; +} +.btn-outline-warning:hover { + color: #000; + background-color: #ffc000; + border-color: #ffc000; +} +.btn-check:focus + .btn-outline-warning, .btn-outline-warning:focus { + box-shadow: 0 0 0 0.25rem rgba(255, 192, 0, 0.5); +} +.btn-check:checked + .btn-outline-warning, .btn-check:active + .btn-outline-warning, .btn-outline-warning:active, .btn-outline-warning.active, .btn-outline-warning.dropdown-toggle.show { + color: #000; + background-color: #ffc000; + border-color: #ffc000; +} +.btn-check:checked + .btn-outline-warning:focus, .btn-check:active + .btn-outline-warning:focus, .btn-outline-warning:active:focus, .btn-outline-warning.active:focus, .btn-outline-warning.dropdown-toggle.show:focus { + box-shadow: 0 0 0 0.25rem rgba(255, 192, 0, 0.5); +} +.btn-outline-warning:disabled, .btn-outline-warning.disabled { + color: #ffc000; + background-color: transparent; +} + +.btn-outline-danger { + color: #e74018; + border-color: #e74018; +} +.btn-outline-danger:hover { + color: #000; + background-color: #e74018; + border-color: #e74018; +} +.btn-check:focus + .btn-outline-danger, .btn-outline-danger:focus { + box-shadow: 0 0 0 0.25rem rgba(231, 64, 24, 0.5); +} +.btn-check:checked + .btn-outline-danger, .btn-check:active + .btn-outline-danger, .btn-outline-danger:active, .btn-outline-danger.active, .btn-outline-danger.dropdown-toggle.show { + color: #000; + background-color: #e74018; + border-color: #e74018; +} +.btn-check:checked + .btn-outline-danger:focus, .btn-check:active + .btn-outline-danger:focus, .btn-outline-danger:active:focus, .btn-outline-danger.active:focus, .btn-outline-danger.dropdown-toggle.show:focus { + box-shadow: 0 0 0 0.25rem rgba(231, 64, 24, 0.5); +} +.btn-outline-danger:disabled, .btn-outline-danger.disabled { + color: #e74018; + background-color: transparent; +} + +.btn-outline-light { + color: #f8f9fa; + border-color: #f8f9fa; +} +.btn-outline-light:hover { + color: #000; + background-color: #f8f9fa; + border-color: #f8f9fa; +} +.btn-check:focus + .btn-outline-light, .btn-outline-light:focus { + box-shadow: 0 0 0 0.25rem rgba(248, 249, 250, 0.5); +} +.btn-check:checked + .btn-outline-light, .btn-check:active + .btn-outline-light, .btn-outline-light:active, .btn-outline-light.active, .btn-outline-light.dropdown-toggle.show { + color: #000; + background-color: #f8f9fa; + border-color: #f8f9fa; +} +.btn-check:checked + .btn-outline-light:focus, .btn-check:active + .btn-outline-light:focus, .btn-outline-light:active:focus, .btn-outline-light.active:focus, .btn-outline-light.dropdown-toggle.show:focus { + box-shadow: 0 0 0 0.25rem rgba(248, 249, 250, 0.5); +} +.btn-outline-light:disabled, .btn-outline-light.disabled { + color: #f8f9fa; + background-color: transparent; +} + +.btn-outline-dark { + color: #333; + border-color: #333; +} +.btn-outline-dark:hover { + color: #fff; + background-color: #333; + border-color: #333; +} +.btn-check:focus + .btn-outline-dark, .btn-outline-dark:focus { + box-shadow: 0 0 0 0.25rem rgba(51, 51, 51, 0.5); +} +.btn-check:checked + .btn-outline-dark, .btn-check:active + .btn-outline-dark, .btn-outline-dark:active, .btn-outline-dark.active, .btn-outline-dark.dropdown-toggle.show { + color: #fff; + background-color: #333; + border-color: #333; +} +.btn-check:checked + .btn-outline-dark:focus, .btn-check:active + .btn-outline-dark:focus, .btn-outline-dark:active:focus, .btn-outline-dark.active:focus, .btn-outline-dark.dropdown-toggle.show:focus { + box-shadow: 0 0 0 0.25rem rgba(51, 51, 51, 0.5); +} +.btn-outline-dark:disabled, .btn-outline-dark.disabled { + color: #333; + background-color: transparent; +} + +.btn-link { + font-weight: 400; + color: #0076a5; + text-decoration: none; +} +.btn-link:hover { + color: #005e84; +} +.btn-link:disabled, .btn-link.disabled { + color: #6c757d; +} + +.btn-lg, .btn-group-lg > .btn { + padding: 0.5rem 1rem; + font-size: 1.25rem; + border-radius: 0.3rem; +} + +.btn-sm, .btn-group-sm > .btn { + padding: 0.25rem 0.5rem; + font-size: 0.875rem; + border-radius: 0.2rem; +} + +.fade { + transition: opacity 0.15s linear; +} +@media (prefers-reduced-motion: reduce) { + .fade { + transition: none; + } +} +.fade:not(.show) { + opacity: 0; +} + +.collapse:not(.show) { + display: none; +} + +.collapsing { + height: 0; + overflow: hidden; + transition: height 0.35s ease; +} +@media (prefers-reduced-motion: reduce) { + .collapsing { + transition: none; + } +} + +.dropup, +.dropright, +.dropdown, +.dropleft { + position: relative; +} + +.dropdown-toggle { + white-space: nowrap; +} + +.dropdown-menu { + position: absolute; + top: 100%; + left: 0; + z-index: 1000; + display: none; + min-width: 10rem; + padding: 0.5rem 0; + margin: 0.125rem 0 0; + font-size: 1rem; + color: #212529; + text-align: left; + list-style: none; + background-color: #fff; + background-clip: padding-box; + border: 1px solid rgba(0, 0, 0, 0.15); + border-radius: 0.25rem; +} + +.dropdown-menu-left { + right: auto; + left: 0; +} + +.dropdown-menu-right { + right: 0; + left: auto; +} + +@media (min-width: 576px) { + .dropdown-menu-sm-left { + right: auto; + left: 0; + } + + .dropdown-menu-sm-right { + right: 0; + left: auto; + } +} +@media (min-width: 768px) { + .dropdown-menu-md-left { + right: auto; + left: 0; + } + + .dropdown-menu-md-right { + right: 0; + left: auto; + } +} +@media (min-width: 992px) { + .dropdown-menu-lg-left { + right: auto; + left: 0; + } + + .dropdown-menu-lg-right { + right: 0; + left: auto; + } +} +@media (min-width: 1200px) { + .dropdown-menu-xl-left { + right: auto; + left: 0; + } + + .dropdown-menu-xl-right { + right: 0; + left: auto; + } +} +@media (min-width: 1400px) { + .dropdown-menu-xxl-left { + right: auto; + left: 0; + } + + .dropdown-menu-xxl-right { + right: 0; + left: auto; + } +} +.dropup .dropdown-menu { + top: auto; + bottom: 100%; + margin-top: 0; + margin-bottom: 0.125rem; +} +.dropright .dropdown-menu { + top: 0; + right: auto; + left: 100%; + margin-top: 0; + margin-left: 0.125rem; +} +.dropright .dropdown-toggle::after { + vertical-align: 0; +} + +.dropleft .dropdown-menu { + top: 0; + right: 100%; + left: auto; + margin-top: 0; + margin-right: 0.125rem; +} +.dropleft .dropdown-toggle::before { + vertical-align: 0; +} + +.dropdown-menu[x-placement^=top], .dropdown-menu[x-placement^=right], .dropdown-menu[x-placement^=bottom], .dropdown-menu[x-placement^=left] { + right: auto; + bottom: auto; +} + +.dropdown-divider { + height: 0; + margin: 0.5rem 0; + overflow: hidden; + border-top: 1px solid rgba(0, 0, 0, 0.15); +} + +.dropdown-item { + display: block; + width: 100%; + padding: 0.25rem 1rem; + clear: both; + font-weight: 400; + color: #212529; + text-align: inherit; + white-space: nowrap; + background-color: transparent; + border: 0; +} +.dropdown-item:hover, .dropdown-item:focus { + color: #1e2125; + background-color: #f8f9fa; +} +.dropdown-item.active, .dropdown-item:active { + color: #fff; + text-decoration: none; + background-color: #0076a5; +} +.dropdown-item.disabled, .dropdown-item:disabled { + color: #6c757d; + pointer-events: none; + background-color: transparent; +} + +.dropdown-menu.show { + display: block; +} + +.dropdown-header { + display: block; + padding: 0.5rem 1rem; + margin-bottom: 0; + font-size: 0.875rem; + color: #6c757d; + white-space: nowrap; +} + +.dropdown-item-text { + display: block; + padding: 0.25rem 1rem; + color: #212529; +} + +.dropdown-menu-dark { + color: #dee2e6; + background-color: #343a40; + border-color: rgba(0, 0, 0, 0.15); +} +.dropdown-menu-dark .dropdown-item { + color: #dee2e6; +} +.dropdown-menu-dark .dropdown-item:hover, .dropdown-menu-dark .dropdown-item:focus { + color: #fff; + background-color: rgba(255, 255, 255, 0.15); +} +.dropdown-menu-dark .dropdown-item.active, .dropdown-menu-dark .dropdown-item:active { + color: #fff; + background-color: #0076a5; +} +.dropdown-menu-dark .dropdown-item.disabled, .dropdown-menu-dark .dropdown-item:disabled { + color: #adb5bd; +} +.dropdown-menu-dark .dropdown-divider { + border-color: rgba(0, 0, 0, 0.15); +} +.dropdown-menu-dark .dropdown-item-text { + color: #dee2e6; +} +.dropdown-menu-dark .dropdown-header { + color: #adb5bd; +} + +.btn-group, +.btn-group-vertical { + position: relative; + display: inline-flex; + vertical-align: middle; +} +.btn-group > .btn, +.btn-group-vertical > .btn { + position: relative; + flex: 1 1 auto; +} +.btn-group > .btn-check:checked + .btn, +.btn-group > .btn-check:focus + .btn, +.btn-group > .btn:hover, +.btn-group > .btn:focus, +.btn-group > .btn:active, +.btn-group > .btn.active, +.btn-group-vertical > .btn-check:checked + .btn, +.btn-group-vertical > .btn-check:focus + .btn, +.btn-group-vertical > .btn:hover, +.btn-group-vertical > .btn:focus, +.btn-group-vertical > .btn:active, +.btn-group-vertical > .btn.active { + z-index: 1; +} + +.btn-toolbar { + display: flex; + flex-wrap: wrap; + justify-content: flex-start; +} +.btn-toolbar .input-group { + width: auto; +} + +.btn-group > .btn:not(:first-child), +.btn-group > .btn-group:not(:first-child) { + margin-left: -1px; +} +.btn-group > .btn:not(:last-child):not(.dropdown-toggle), +.btn-group > .btn-group:not(:last-child) > .btn { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} +.btn-group > .btn:nth-child(n+3), +.btn-group > :not(.btn-check) + .btn, +.btn-group > .btn-group:not(:first-child) > .btn { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} + +.dropdown-toggle-split { + padding-right: 0.5625rem; + padding-left: 0.5625rem; +} +.dropdown-toggle-split::after, .dropup .dropdown-toggle-split::after, .dropright .dropdown-toggle-split::after { + margin-left: 0; +} +.dropleft .dropdown-toggle-split::before { + margin-right: 0; +} + +.btn-sm + .dropdown-toggle-split, .btn-group-sm > .btn + .dropdown-toggle-split { + padding-right: 0.375rem; + padding-left: 0.375rem; +} + +.btn-lg + .dropdown-toggle-split, .btn-group-lg > .btn + .dropdown-toggle-split { + padding-right: 0.75rem; + padding-left: 0.75rem; +} + +.btn-group-vertical { + flex-direction: column; + align-items: flex-start; + justify-content: center; +} +.btn-group-vertical > .btn, +.btn-group-vertical > .btn-group { + width: 100%; +} +.btn-group-vertical > .btn:not(:first-child), +.btn-group-vertical > .btn-group:not(:first-child) { + margin-top: -1px; +} +.btn-group-vertical > .btn:not(:last-child):not(.dropdown-toggle), +.btn-group-vertical > .btn-group:not(:last-child) > .btn { + border-bottom-right-radius: 0; + border-bottom-left-radius: 0; +} +.btn-group-vertical > .btn:not(:first-child), +.btn-group-vertical > .btn-group:not(:first-child) > .btn { + border-top-left-radius: 0; + border-top-right-radius: 0; +} + +.nav { + display: flex; + flex-wrap: wrap; + padding-left: 0; + margin-bottom: 0; + list-style: none; +} + +.nav-link { + display: block; + padding: 0.5rem 1rem; + transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out; +} +@media (prefers-reduced-motion: reduce) { + .nav-link { + transition: none; + } +} +.nav-link.disabled { + color: #6c757d; + pointer-events: none; + cursor: default; +} + +.nav-tabs { + border-bottom: 1px solid #dee2e6; +} +.nav-tabs .nav-link { + margin-bottom: -1px; + border: 1px solid transparent; + border-top-left-radius: 0.25rem; + border-top-right-radius: 0.25rem; +} +.nav-tabs .nav-link:hover, .nav-tabs .nav-link:focus { + border-color: #e9ecef #e9ecef #dee2e6; +} +.nav-tabs .nav-link.disabled { + color: #6c757d; + background-color: transparent; + border-color: transparent; +} +.nav-tabs .nav-link.active, +.nav-tabs .nav-item.show .nav-link { + color: #495057; + background-color: #fff; + border-color: #dee2e6 #dee2e6 #fff; +} +.nav-tabs .dropdown-menu { + margin-top: -1px; + border-top-left-radius: 0; + border-top-right-radius: 0; +} + +.nav-pills .nav-link { + border-radius: 0.25rem; +} +.nav-pills .nav-link.active, +.nav-pills .show > .nav-link { + color: #fff; + background-color: #ffc000; +} + +.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; +} + +.tab-content > .tab-pane { + display: none; +} +.tab-content > .active { + display: block; +} + +.navbar { + position: relative; + display: flex; + flex-wrap: wrap; + align-items: center; + justify-content: space-between; + padding-top: 0.5rem; + padding-bottom: 0.5rem; +} +.navbar > .container, +.navbar > .container-fluid, +.navbar > .container-sm, +.navbar > .container-md, +.navbar > .container-lg, +.navbar > .container-xl, +.navbar > .container-xxl { + display: flex; + flex-wrap: inherit; + align-items: center; + justify-content: space-between; +} +.navbar-brand { + padding-top: 0.3125rem; + padding-bottom: 0.3125rem; + margin-right: 1rem; + font-size: 1.25rem; + white-space: nowrap; +} +.navbar-nav { + display: flex; + flex-direction: column; + padding-left: 0; + margin-bottom: 0; + list-style: none; +} +.navbar-nav .nav-link { + padding-right: 0; + padding-left: 0; +} +.navbar-nav .dropdown-menu { + position: static; +} + +.navbar-text { + padding-top: 0.5rem; + padding-bottom: 0.5rem; +} + +.navbar-collapse { + align-items: center; + width: 100%; +} + +.navbar-toggler { + padding: 0.25rem 0.75rem; + font-size: 1.25rem; + line-height: 1; + background-color: transparent; + border: 1px solid transparent; + border-radius: 0.25rem; + transition: box-shadow 0.15s ease-in-out; +} +@media (prefers-reduced-motion: reduce) { + .navbar-toggler { + transition: none; + } +} +.navbar-toggler:hover { + text-decoration: none; +} +.navbar-toggler:focus { + text-decoration: none; + outline: 0; + box-shadow: 0 0 0 0.25rem; +} + +.navbar-toggler-icon { + display: inline-block; + width: 1.5em; + height: 1.5em; + vertical-align: middle; + background-repeat: no-repeat; + background-position: center; + background-size: 100%; +} + +@media (min-width: 576px) { + .navbar-expand-sm { + flex-wrap: nowrap; + justify-content: flex-start; + } + .navbar-expand-sm .navbar-nav { + flex-direction: row; + } + .navbar-expand-sm .navbar-nav .dropdown-menu { + position: absolute; + } + .navbar-expand-sm .navbar-nav .nav-link { + padding-right: 0.5rem; + padding-left: 0.5rem; + } + .navbar-expand-sm .navbar-collapse { + display: flex !important; + } + .navbar-expand-sm .navbar-toggler { + display: none; + } +} +@media (min-width: 768px) { + .navbar-expand-md { + flex-wrap: nowrap; + justify-content: flex-start; + } + .navbar-expand-md .navbar-nav { + flex-direction: row; + } + .navbar-expand-md .navbar-nav .dropdown-menu { + position: absolute; + } + .navbar-expand-md .navbar-nav .nav-link { + padding-right: 0.5rem; + padding-left: 0.5rem; + } + .navbar-expand-md .navbar-collapse { + display: flex !important; + } + .navbar-expand-md .navbar-toggler { + display: none; + } +} +@media (min-width: 992px) { + .navbar-expand-lg { + flex-wrap: nowrap; + justify-content: flex-start; + } + .navbar-expand-lg .navbar-nav { + flex-direction: row; + } + .navbar-expand-lg .navbar-nav .dropdown-menu { + position: absolute; + } + .navbar-expand-lg .navbar-nav .nav-link { + padding-right: 0.5rem; + padding-left: 0.5rem; + } + .navbar-expand-lg .navbar-collapse { + display: flex !important; + } + .navbar-expand-lg .navbar-toggler { + display: none; + } +} +@media (min-width: 1200px) { + .navbar-expand-xl { + flex-wrap: nowrap; + justify-content: flex-start; + } + .navbar-expand-xl .navbar-nav { + flex-direction: row; + } + .navbar-expand-xl .navbar-nav .dropdown-menu { + position: absolute; + } + .navbar-expand-xl .navbar-nav .nav-link { + padding-right: 0.5rem; + padding-left: 0.5rem; + } + .navbar-expand-xl .navbar-collapse { + display: flex !important; + } + .navbar-expand-xl .navbar-toggler { + display: none; + } +} +@media (min-width: 1400px) { + .navbar-expand-xxl { + flex-wrap: nowrap; + justify-content: flex-start; + } + .navbar-expand-xxl .navbar-nav { + flex-direction: row; + } + .navbar-expand-xxl .navbar-nav .dropdown-menu { + position: absolute; + } + .navbar-expand-xxl .navbar-nav .nav-link { + padding-right: 0.5rem; + padding-left: 0.5rem; + } + .navbar-expand-xxl .navbar-collapse { + display: flex !important; + } + .navbar-expand-xxl .navbar-toggler { + display: none; + } +} +.navbar-expand { + flex-wrap: nowrap; + justify-content: flex-start; +} +.navbar-expand .navbar-nav { + flex-direction: row; +} +.navbar-expand .navbar-nav .dropdown-menu { + position: absolute; +} +.navbar-expand .navbar-nav .nav-link { + padding-right: 0.5rem; + padding-left: 0.5rem; +} +.navbar-expand .navbar-collapse { + display: flex !important; +} +.navbar-expand .navbar-toggler { + display: none; +} + +.navbar-light .navbar-brand { + color: rgba(0, 0, 0, 0.9); +} +.navbar-light .navbar-brand:hover, .navbar-light .navbar-brand:focus { + color: rgba(0, 0, 0, 0.9); +} +.navbar-light .navbar-nav .nav-link { + color: rgba(0, 0, 0, 0.55); +} +.navbar-light .navbar-nav .nav-link:hover, .navbar-light .navbar-nav .nav-link:focus { + color: rgba(0, 0, 0, 0.7); +} +.navbar-light .navbar-nav .nav-link.disabled { + color: rgba(0, 0, 0, 0.3); +} +.navbar-light .navbar-nav .show > .nav-link, +.navbar-light .navbar-nav .nav-link.active { + color: rgba(0, 0, 0, 0.9); +} +.navbar-light .navbar-toggler { + color: rgba(0, 0, 0, 0.55); + border-color: rgba(0, 0, 0, 0.1); +} +.navbar-light .navbar-toggler-icon { + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%280, 0, 0, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e"); +} +.navbar-light .navbar-text { + color: rgba(0, 0, 0, 0.55); +} +.navbar-light .navbar-text a, +.navbar-light .navbar-text a:hover, +.navbar-light .navbar-text a:focus { + color: rgba(0, 0, 0, 0.9); +} + +.navbar-dark .navbar-brand { + color: #fff; +} +.navbar-dark .navbar-brand:hover, .navbar-dark .navbar-brand:focus { + color: #fff; +} +.navbar-dark .navbar-nav .nav-link { + color: rgba(255, 255, 255, 0.55); +} +.navbar-dark .navbar-nav .nav-link:hover, .navbar-dark .navbar-nav .nav-link:focus { + color: rgba(255, 255, 255, 0.75); +} +.navbar-dark .navbar-nav .nav-link.disabled { + color: rgba(255, 255, 255, 0.25); +} +.navbar-dark .navbar-nav .show > .nav-link, +.navbar-dark .navbar-nav .nav-link.active { + color: #fff; +} +.navbar-dark .navbar-toggler { + color: rgba(255, 255, 255, 0.55); + border-color: rgba(255, 255, 255, 0.1); +} +.navbar-dark .navbar-toggler-icon { + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e"); +} +.navbar-dark .navbar-text { + color: rgba(255, 255, 255, 0.55); +} +.navbar-dark .navbar-text a, +.navbar-dark .navbar-text a:hover, +.navbar-dark .navbar-text a:focus { + color: #fff; +} + +.card { + position: relative; + display: flex; + flex-direction: column; + min-width: 0; + word-wrap: break-word; + background-color: #fff; + background-clip: border-box; + border: 1px solid rgba(0, 0, 0, 0.125); + border-radius: 0.25rem; +} +.card > hr { + margin-right: 0; + margin-left: 0; +} +.card > .list-group { + border-top: inherit; + border-bottom: inherit; +} +.card > .list-group:first-child { + border-top-width: 0; + border-top-left-radius: calc(0.25rem - 1px); + border-top-right-radius: calc(0.25rem - 1px); +} +.card > .list-group:last-child { + border-bottom-width: 0; + border-bottom-right-radius: calc(0.25rem - 1px); + border-bottom-left-radius: calc(0.25rem - 1px); +} +.card > .card-header + .list-group, +.card > .list-group + .card-footer { + border-top: 0; +} + +.card-body { + flex: 1 1 auto; + padding: 1rem 1rem; +} + +.card-title { + margin-bottom: 0.5rem; +} + +.card-subtitle { + margin-top: -0.25rem; + margin-bottom: 0; +} + +.card-text:last-child { + margin-bottom: 0; +} + +.card-link:hover { + text-decoration: none; +} +.card-link + .card-link { + margin-left: 1rem; +} + +.card-header { + padding: 0.5rem 1rem; + margin-bottom: 0; + background-color: rgba(0, 0, 0, 0.03); + border-bottom: 1px solid rgba(0, 0, 0, 0.125); +} +.card-header:first-child { + border-radius: calc(0.25rem - 1px) calc(0.25rem - 1px) 0 0; +} + +.card-footer { + padding: 0.5rem 1rem; + background-color: rgba(0, 0, 0, 0.03); + border-top: 1px solid rgba(0, 0, 0, 0.125); +} +.card-footer:last-child { + border-radius: 0 0 calc(0.25rem - 1px) calc(0.25rem - 1px); +} + +.card-header-tabs { + margin-right: -0.5rem; + margin-bottom: -0.5rem; + margin-left: -0.5rem; + border-bottom: 0; +} + +.card-header-pills { + margin-right: -0.5rem; + margin-left: -0.5rem; +} + +.card-img-overlay { + position: absolute; + top: 0; + right: 0; + bottom: 0; + left: 0; + padding: 1rem; + border-radius: calc(0.25rem - 1px); +} + +.card-img, +.card-img-top, +.card-img-bottom { + width: 100%; +} + +.card-img, +.card-img-top { + border-top-left-radius: calc(0.25rem - 1px); + border-top-right-radius: calc(0.25rem - 1px); +} + +.card-img, +.card-img-bottom { + border-bottom-right-radius: calc(0.25rem - 1px); + border-bottom-left-radius: calc(0.25rem - 1px); +} + +.card-group > .card { + margin-bottom: 0.5rem; +} +@media (min-width: 576px) { + .card-group { + display: flex; + flex-flow: row wrap; + } + .card-group > .card { + flex: 1 0 0%; + margin-bottom: 0; + } + .card-group > .card + .card { + margin-left: 0; + border-left: 0; + } + .card-group > .card:not(:last-child) { + border-top-right-radius: 0; + border-bottom-right-radius: 0; + } + .card-group > .card:not(:last-child) .card-img-top, +.card-group > .card:not(:last-child) .card-header { + border-top-right-radius: 0; + } + .card-group > .card:not(:last-child) .card-img-bottom, +.card-group > .card:not(:last-child) .card-footer { + border-bottom-right-radius: 0; + } + .card-group > .card:not(:first-child) { + border-top-left-radius: 0; + border-bottom-left-radius: 0; + } + .card-group > .card:not(:first-child) .card-img-top, +.card-group > .card:not(:first-child) .card-header { + border-top-left-radius: 0; + } + .card-group > .card:not(:first-child) .card-img-bottom, +.card-group > .card:not(:first-child) .card-footer { + border-bottom-left-radius: 0; + } +} + +.accordion-button { + position: relative; + display: flex; + align-items: center; + width: 100%; + padding: 1rem 1.25rem; + font-size: 1rem; + color: #212529; + background-color: transparent; + border: 1px solid rgba(0, 0, 0, 0.125); + border-radius: 0; + overflow-anchor: none; + transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, border-radius 0.15s ease; +} +@media (prefers-reduced-motion: reduce) { + .accordion-button { + transition: none; + } +} +.accordion-button.collapsed { + border-bottom-width: 0; +} +.accordion-button:not(.collapsed) { + color: #006a95; + background-color: #e6f1f6; +} +.accordion-button:not(.collapsed)::after { + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23006a95'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e"); + transform: rotate(180deg); +} +.accordion-button::after { + flex-shrink: 0; + width: 1.25rem; + height: 1.25rem; + margin-left: auto; + content: ""; + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23212529'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e"); + background-repeat: no-repeat; + background-size: 1.25rem; + transition: transform 0.2s ease-in-out; +} +@media (prefers-reduced-motion: reduce) { + .accordion-button::after { + transition: none; + } +} +.accordion-button:hover { + z-index: 2; +} +.accordion-button:focus { + z-index: 3; + border-color: #80bbd2; + outline: 0; + box-shadow: none !important; +} + +.accordion-header { + margin-bottom: 0; +} + +.accordion-item:first-of-type .accordion-button { + border-top-left-radius: 0.25rem; + border-top-right-radius: 0.25rem; +} +.accordion-item:last-of-type .accordion-button.collapsed { + border-bottom-width: 1px; + border-bottom-right-radius: 0.25rem; + border-bottom-left-radius: 0.25rem; +} +.accordion-item:last-of-type .accordion-collapse { + border-bottom-width: 1px; + border-bottom-right-radius: 0.25rem; + border-bottom-left-radius: 0.25rem; +} + +.accordion-collapse { + border: solid rgba(0, 0, 0, 0.125); + border-width: 0 1px; +} + +.accordion-body { + padding: 1rem 1.25rem; +} + +.accordion-flush .accordion-button { + border-right: 0; + border-left: 0; + border-radius: 0; +} +.accordion-flush .accordion-collapse { + border-width: 0; +} +.accordion-flush .accordion-item:first-of-type .accordion-button { + border-top-width: 0; + border-top-left-radius: 0; + border-top-right-radius: 0; +} +.accordion-flush .accordion-item:last-of-type .accordion-button.collapsed { + border-bottom-width: 0; + border-bottom-right-radius: 0; + border-bottom-left-radius: 0; +} + +.breadcrumb { + display: flex; + flex-wrap: wrap; + padding: 0.5rem 1rem; + margin-bottom: 1rem; + list-style: none; + background-color: #e9ecef; + border-radius: 0.25rem; +} + +.breadcrumb-item + .breadcrumb-item { + padding-left: 0.5rem; +} +.breadcrumb-item + .breadcrumb-item::before { + float: left; + padding-right: 0.5rem; + color: #6c757d; + content: "/"; +} +.breadcrumb-item.active { + color: #6c757d; +} + +.pagination { + display: flex; + padding-left: 0; + list-style: none; +} + +.page-link { + position: relative; + display: block; + color: #0076a5; + background-color: #fff; + border: 1px solid #dee2e6; + transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; +} +@media (prefers-reduced-motion: reduce) { + .page-link { + transition: none; + } +} +.page-link:hover { + z-index: 2; + color: #005e84; + background-color: #e9ecef; + border-color: #dee2e6; +} +.page-link:focus { + z-index: 3; + color: #005e84; + background-color: #e9ecef; + outline: 0; + box-shadow: 0 0 0 0.25rem rgba(0, 118, 165, 0.25); +} + +.page-item:not(:first-child) .page-link { + margin-left: -1px; +} +.page-item.active .page-link { + z-index: 3; + color: #fff; + background-color: #0076a5; + border-color: #0076a5; +} +.page-item.disabled .page-link { + color: #6c757d; + pointer-events: none; + background-color: #fff; + border-color: #dee2e6; +} + +.page-link { + padding: 0.375rem 0.75rem; +} + +.page-item:first-child .page-link { + border-top-left-radius: 0.25rem; + border-bottom-left-radius: 0.25rem; +} +.page-item:last-child .page-link { + border-top-right-radius: 0.25rem; + border-bottom-right-radius: 0.25rem; +} + +.pagination-lg .page-link { + padding: 0.75rem 1.5rem; + font-size: 1.25rem; +} +.pagination-lg .page-item:first-child .page-link { + border-top-left-radius: 0.3rem; + border-bottom-left-radius: 0.3rem; +} +.pagination-lg .page-item:last-child .page-link { + border-top-right-radius: 0.3rem; + border-bottom-right-radius: 0.3rem; +} + +.pagination-sm .page-link { + padding: 0.25rem 0.5rem; + font-size: 0.875rem; +} +.pagination-sm .page-item:first-child .page-link { + border-top-left-radius: 0.2rem; + border-bottom-left-radius: 0.2rem; +} +.pagination-sm .page-item:last-child .page-link { + border-top-right-radius: 0.2rem; + border-bottom-right-radius: 0.2rem; +} + +.badge { + display: inline-block; + padding: 0.35em 0.65em; + font-size: 0.75em; + font-weight: 700; + line-height: 1; + color: #fff; + text-align: center; + white-space: nowrap; + vertical-align: baseline; + border-radius: 0.25rem; +} +.badge:empty { + display: none; +} + +.btn .badge { + position: relative; + top: -1px; +} + +.alert { + position: relative; + padding: 1rem 1rem; + margin-bottom: 1rem; + border: 1px solid transparent; + border-radius: 0.25rem; +} + +.alert-heading { + color: inherit; +} + +.alert-link { + font-weight: 700; +} + +.alert-dismissible { + padding-right: 3rem; +} +.alert-dismissible .btn-close { + position: absolute; + top: 0; + right: 0; + z-index: 2; + padding: 1.25rem 1rem; +} + +.alert-primary { + color: #004763; + background-color: #cce4ed; + border-color: #b3d6e4; +} +.alert-primary .alert-link { + color: #00394f; +} + +.alert-secondary { + color: #664d00; + background-color: #fff2cc; + border-color: #ffecb3; +} +.alert-secondary .alert-link { + color: #523e00; +} + +.alert-success { + color: #3c5000; + background-color: #eaf4cc; + border-color: #e0efb3; +} +.alert-success .alert-link { + color: #304000; +} + +.alert-info { + color: #005b86; + background-color: #cceaf9; + border-color: #b3e0f5; +} +.alert-info .alert-link { + color: #00496b; +} + +.alert-warning { + color: #664d00; + background-color: #fff2cc; + border-color: #ffecb3; +} +.alert-warning .alert-link { + color: #523e00; +} + +.alert-danger { + color: #8b260e; + background-color: #fad9d1; + border-color: #f8c6ba; +} +.alert-danger .alert-link { + color: #6f1e0b; +} + +.alert-light { + color: #636464; + background-color: #fefefe; + border-color: #fdfdfe; +} +.alert-light .alert-link { + color: #4f5050; +} + +.alert-dark { + color: #1f1f1f; + background-color: #d6d6d6; + border-color: #c2c2c2; +} +.alert-dark .alert-link { + color: #191919; +} + +@-webkit-keyframes progress-bar-stripes { + 0% { + background-position-x: 1rem; + } +} + +@keyframes progress-bar-stripes { + 0% { + background-position-x: 1rem; + } +} +.progress { + display: flex; + height: 1rem; + overflow: hidden; + font-size: 0.75rem; + background-color: #e9ecef; + border-radius: 0.25rem; +} + +.progress-bar { + display: flex; + flex-direction: column; + justify-content: center; + overflow: hidden; + color: #fff; + text-align: center; + white-space: nowrap; + background-color: #0076a5; + transition: width 0.6s ease; +} +@media (prefers-reduced-motion: reduce) { + .progress-bar { + transition: none; + } +} + +.progress-bar-striped { + background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-size: 1rem 1rem; +} + +.progress-bar-animated { + -webkit-animation: 1s linear infinite progress-bar-stripes; + animation: 1s linear infinite progress-bar-stripes; +} +@media (prefers-reduced-motion: reduce) { + .progress-bar-animated { + -webkit-animation: none; + animation: none; + } +} + +.list-group { + display: flex; + flex-direction: column; + padding-left: 0; + margin-bottom: 0; + border-radius: 0.25rem; +} + +.list-group-item-action { + width: 100%; + color: #495057; + text-align: inherit; +} +.list-group-item-action:hover, .list-group-item-action:focus { + z-index: 1; + color: #495057; + text-decoration: none; + background-color: #f8f9fa; +} +.list-group-item-action:active { + color: #212529; + background-color: #e9ecef; +} + +.list-group-item { + position: relative; + display: block; + padding: 0.5rem 1rem; + background-color: #fff; + border: 1px solid rgba(0, 0, 0, 0.125); +} +.list-group-item:first-child { + border-top-left-radius: inherit; + border-top-right-radius: inherit; +} +.list-group-item:last-child { + border-bottom-right-radius: inherit; + border-bottom-left-radius: inherit; +} +.list-group-item.disabled, .list-group-item:disabled { + color: #6c757d; + pointer-events: none; + background-color: #fff; +} +.list-group-item.active { + z-index: 2; + color: #fff; + background-color: #0076a5; + border-color: #0076a5; +} +.list-group-item + .list-group-item { + border-top-width: 0; +} +.list-group-item + .list-group-item.active { + margin-top: -1px; + border-top-width: 1px; +} + +.list-group-horizontal { + flex-direction: row; +} +.list-group-horizontal > .list-group-item:first-child { + border-bottom-left-radius: 0.25rem; + border-top-right-radius: 0; +} +.list-group-horizontal > .list-group-item:last-child { + border-top-right-radius: 0.25rem; + border-bottom-left-radius: 0; +} +.list-group-horizontal > .list-group-item.active { + margin-top: 0; +} +.list-group-horizontal > .list-group-item + .list-group-item { + border-top-width: 1px; + border-left-width: 0; +} +.list-group-horizontal > .list-group-item + .list-group-item.active { + margin-left: -1px; + border-left-width: 1px; +} + +@media (min-width: 576px) { + .list-group-horizontal-sm { + flex-direction: row; + } + .list-group-horizontal-sm > .list-group-item:first-child { + border-bottom-left-radius: 0.25rem; + border-top-right-radius: 0; + } + .list-group-horizontal-sm > .list-group-item:last-child { + border-top-right-radius: 0.25rem; + border-bottom-left-radius: 0; + } + .list-group-horizontal-sm > .list-group-item.active { + margin-top: 0; + } + .list-group-horizontal-sm > .list-group-item + .list-group-item { + border-top-width: 1px; + border-left-width: 0; + } + .list-group-horizontal-sm > .list-group-item + .list-group-item.active { + margin-left: -1px; + border-left-width: 1px; + } +} +@media (min-width: 768px) { + .list-group-horizontal-md { + flex-direction: row; + } + .list-group-horizontal-md > .list-group-item:first-child { + border-bottom-left-radius: 0.25rem; + border-top-right-radius: 0; + } + .list-group-horizontal-md > .list-group-item:last-child { + border-top-right-radius: 0.25rem; + border-bottom-left-radius: 0; + } + .list-group-horizontal-md > .list-group-item.active { + margin-top: 0; + } + .list-group-horizontal-md > .list-group-item + .list-group-item { + border-top-width: 1px; + border-left-width: 0; + } + .list-group-horizontal-md > .list-group-item + .list-group-item.active { + margin-left: -1px; + border-left-width: 1px; + } +} +@media (min-width: 992px) { + .list-group-horizontal-lg { + flex-direction: row; + } + .list-group-horizontal-lg > .list-group-item:first-child { + border-bottom-left-radius: 0.25rem; + border-top-right-radius: 0; + } + .list-group-horizontal-lg > .list-group-item:last-child { + border-top-right-radius: 0.25rem; + border-bottom-left-radius: 0; + } + .list-group-horizontal-lg > .list-group-item.active { + margin-top: 0; + } + .list-group-horizontal-lg > .list-group-item + .list-group-item { + border-top-width: 1px; + border-left-width: 0; + } + .list-group-horizontal-lg > .list-group-item + .list-group-item.active { + margin-left: -1px; + border-left-width: 1px; + } +} +@media (min-width: 1200px) { + .list-group-horizontal-xl { + flex-direction: row; + } + .list-group-horizontal-xl > .list-group-item:first-child { + border-bottom-left-radius: 0.25rem; + border-top-right-radius: 0; + } + .list-group-horizontal-xl > .list-group-item:last-child { + border-top-right-radius: 0.25rem; + border-bottom-left-radius: 0; + } + .list-group-horizontal-xl > .list-group-item.active { + margin-top: 0; + } + .list-group-horizontal-xl > .list-group-item + .list-group-item { + border-top-width: 1px; + border-left-width: 0; + } + .list-group-horizontal-xl > .list-group-item + .list-group-item.active { + margin-left: -1px; + border-left-width: 1px; + } +} +@media (min-width: 1400px) { + .list-group-horizontal-xxl { + flex-direction: row; + } + .list-group-horizontal-xxl > .list-group-item:first-child { + border-bottom-left-radius: 0.25rem; + border-top-right-radius: 0; + } + .list-group-horizontal-xxl > .list-group-item:last-child { + border-top-right-radius: 0.25rem; + border-bottom-left-radius: 0; + } + .list-group-horizontal-xxl > .list-group-item.active { + margin-top: 0; + } + .list-group-horizontal-xxl > .list-group-item + .list-group-item { + border-top-width: 1px; + border-left-width: 0; + } + .list-group-horizontal-xxl > .list-group-item + .list-group-item.active { + margin-left: -1px; + border-left-width: 1px; + } +} +.list-group-flush { + border-radius: 0; +} +.list-group-flush > .list-group-item { + border-width: 0 0 1px; +} +.list-group-flush > .list-group-item:last-child { + border-bottom-width: 0; +} + +.list-group-item-primary { + color: #004763; + background-color: #cce4ed; +} +.list-group-item-primary.list-group-item-action:hover, .list-group-item-primary.list-group-item-action:focus { + color: #004763; + background-color: #b8cdd5; +} +.list-group-item-primary.list-group-item-action.active { + color: #fff; + background-color: #004763; + border-color: #004763; +} + +.list-group-item-secondary { + color: #664d00; + background-color: #fff2cc; +} +.list-group-item-secondary.list-group-item-action:hover, .list-group-item-secondary.list-group-item-action:focus { + color: #664d00; + background-color: #e6dab8; +} +.list-group-item-secondary.list-group-item-action.active { + color: #fff; + background-color: #664d00; + border-color: #664d00; +} + +.list-group-item-success { + color: #3c5000; + background-color: #eaf4cc; +} +.list-group-item-success.list-group-item-action:hover, .list-group-item-success.list-group-item-action:focus { + color: #3c5000; + background-color: #d3dcb8; +} +.list-group-item-success.list-group-item-action.active { + color: #fff; + background-color: #3c5000; + border-color: #3c5000; +} + +.list-group-item-info { + color: #005b86; + background-color: #cceaf9; +} +.list-group-item-info.list-group-item-action:hover, .list-group-item-info.list-group-item-action:focus { + color: #005b86; + background-color: #b8d3e0; +} +.list-group-item-info.list-group-item-action.active { + color: #fff; + background-color: #005b86; + border-color: #005b86; +} + +.list-group-item-warning { + color: #664d00; + background-color: #fff2cc; +} +.list-group-item-warning.list-group-item-action:hover, .list-group-item-warning.list-group-item-action:focus { + color: #664d00; + background-color: #e6dab8; +} +.list-group-item-warning.list-group-item-action.active { + color: #fff; + background-color: #664d00; + border-color: #664d00; +} + +.list-group-item-danger { + color: #8b260e; + background-color: #fad9d1; +} +.list-group-item-danger.list-group-item-action:hover, .list-group-item-danger.list-group-item-action:focus { + color: #8b260e; + background-color: #e1c3bc; +} +.list-group-item-danger.list-group-item-action.active { + color: #fff; + background-color: #8b260e; + border-color: #8b260e; +} + +.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: #1f1f1f; + background-color: #d6d6d6; +} +.list-group-item-dark.list-group-item-action:hover, .list-group-item-dark.list-group-item-action:focus { + color: #1f1f1f; + background-color: #c1c1c1; +} +.list-group-item-dark.list-group-item-action.active { + color: #fff; + background-color: #1f1f1f; + border-color: #1f1f1f; +} + +.btn-close { + box-sizing: content-box; + width: 1em; + height: 1em; + padding: 0.25em 0.25em; + color: #000; + background: transparent url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23000'%3e%3cpath d='M.293.293a1 1 0 011.414 0L8 6.586 14.293.293a1 1 0 111.414 1.414L9.414 8l6.293 6.293a1 1 0 01-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 01-1.414-1.414L6.586 8 .293 1.707a1 1 0 010-1.414z'/%3e%3c/svg%3e") center/1em auto no-repeat; + border: 0; + border-radius: 0.25rem; + opacity: 0.5; +} +.btn-close:hover { + color: #000; + text-decoration: none; + opacity: 0.75; +} +.btn-close:focus { + outline: none; + box-shadow: 0 0 0 0.25rem rgba(0, 118, 165, 0.25); + opacity: 1; +} +.btn-close:disabled, .btn-close.disabled { + pointer-events: none; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + opacity: 0.25; +} + +.btn-close-white { + filter: invert(1) grayscale(100%) brightness(200%); +} + +.toast { + max-width: 350px; + font-size: 0.875rem; + background-color: rgba(255, 255, 255, 0.85); + background-clip: padding-box; + border: 1px solid rgba(0, 0, 0, 0.1); + box-shadow: 0 0 0.4px rgba(0, 0, 0, 0.02), 0 0 0.9px rgba(0, 0, 0, 0.028), 0 0 1.8px rgba(0, 0, 0, 0.035), 0 0 3.1px rgba(0, 0, 0, 0.042), 0 0 5.8px rgba(0, 0, 0, 0.05), 0 0 14px rgba(0, 0, 0, 0.07); + opacity: 0; + border-radius: 0.25rem; +} +.toast:not(:last-child) { + margin-bottom: 0.75rem; +} +.toast.showing { + opacity: 1; +} +.toast.show { + display: block; + opacity: 1; +} +.toast.hide { + display: none; +} + +.toast-header { + display: flex; + align-items: center; + padding: 0.5rem 0.75rem; + color: #6c757d; + background-color: rgba(255, 255, 255, 0.85); + background-clip: padding-box; + border-bottom: 1px solid rgba(0, 0, 0, 0.05); + border-top-left-radius: calc(0.25rem - 1px); + border-top-right-radius: calc(0.25rem - 1px); +} +.toast-header .btn-close { + margin-right: -0.375rem; + margin-left: 0.75rem; +} + +.toast-body { + padding: 0.75rem; +} + +.modal-open { + overflow: hidden; +} +.modal-open .modal { + overflow-x: hidden; + overflow-y: auto; +} + +.modal { + position: fixed; + top: 0; + left: 0; + z-index: 1050; + display: none; + width: 100%; + height: 100%; + overflow: hidden; + outline: 0; +} + +.modal-dialog { + position: relative; + width: auto; + margin: 0.5rem; + pointer-events: none; +} +.modal.fade .modal-dialog { + transition: transform 0.3s ease-out; + transform: translate(0, -50px); +} +@media (prefers-reduced-motion: reduce) { + .modal.fade .modal-dialog { + transition: none; + } +} +.modal.show .modal-dialog { + transform: none; +} +.modal.modal-static .modal-dialog { + transform: scale(1.02); +} + +.modal-dialog-scrollable { + height: calc(100% - 1rem); +} +.modal-dialog-scrollable .modal-content { + max-height: 100%; + overflow: hidden; +} +.modal-dialog-scrollable .modal-body { + overflow-y: auto; +} + +.modal-dialog-centered { + display: flex; + align-items: center; + min-height: calc(100% - 1rem); +} + +.modal-content { + position: relative; + display: flex; + flex-direction: column; + width: 100%; + pointer-events: auto; + background-color: #fff; + background-clip: padding-box; + border: 1px solid rgba(0, 0, 0, 0.2); + border-radius: 0.3rem; + outline: 0; +} + +.modal-backdrop { + position: fixed; + top: 0; + left: 0; + z-index: 1040; + width: 100vw; + height: 100vh; + background-color: #000; +} +.modal-backdrop.fade { + opacity: 0; +} +.modal-backdrop.show { + opacity: 0.5; +} + +.modal-header { + display: flex; + flex-shrink: 0; + align-items: center; + justify-content: space-between; + padding: 1rem 1rem; + border-bottom: 1px solid #dee2e6; + border-top-left-radius: calc(0.3rem - 1px); + border-top-right-radius: calc(0.3rem - 1px); +} +.modal-header .btn-close { + padding: 0.5rem 0.5rem; + margin: -0.5rem -0.5rem -0.5rem auto; +} + +.modal-title { + margin-bottom: 0; + line-height: 1.5; +} + +.modal-body { + position: relative; + flex: 1 1 auto; + padding: 1rem; +} + +.modal-footer { + display: flex; + flex-wrap: wrap; + flex-shrink: 0; + align-items: center; + justify-content: flex-end; + padding: 0.75rem; + border-top: 1px solid #dee2e6; + border-bottom-right-radius: calc(0.3rem - 1px); + border-bottom-left-radius: calc(0.3rem - 1px); +} +.modal-footer > * { + margin: 0.25rem; +} + +.modal-scrollbar-measure { + position: absolute; + top: -9999px; + width: 50px; + height: 50px; + overflow: scroll; +} + +@media (min-width: 576px) { + .modal-dialog { + max-width: 500px; + margin: 1.75rem auto; + } + + .modal-dialog-scrollable { + height: calc(100% - 3.5rem); + } + + .modal-dialog-centered { + min-height: calc(100% - 3.5rem); + } + + .modal-sm { + max-width: 300px; + } +} +@media (min-width: 992px) { + .modal-lg, +.modal-xl { + max-width: 800px; + } +} +@media (min-width: 1200px) { + .modal-xl { + max-width: 1140px; + } +} +.modal-fullscreen { + width: 100vw; + max-width: none; + height: 100%; + margin: 0; +} +.modal-fullscreen .modal-content { + height: 100%; + border: 0; + border-radius: 0; +} +.modal-fullscreen .modal-header { + border-radius: 0; +} +.modal-fullscreen .modal-body { + overflow-y: auto; +} +.modal-fullscreen .modal-footer { + border-radius: 0; +} + +@media (max-width: 575.98px) { + .modal-fullscreen-sm-down { + width: 100vw; + max-width: none; + height: 100%; + margin: 0; + } + .modal-fullscreen-sm-down .modal-content { + height: 100%; + border: 0; + border-radius: 0; + } + .modal-fullscreen-sm-down .modal-header { + border-radius: 0; + } + .modal-fullscreen-sm-down .modal-body { + overflow-y: auto; + } + .modal-fullscreen-sm-down .modal-footer { + border-radius: 0; + } +} +@media (max-width: 767.98px) { + .modal-fullscreen-md-down { + width: 100vw; + max-width: none; + height: 100%; + margin: 0; + } + .modal-fullscreen-md-down .modal-content { + height: 100%; + border: 0; + border-radius: 0; + } + .modal-fullscreen-md-down .modal-header { + border-radius: 0; + } + .modal-fullscreen-md-down .modal-body { + overflow-y: auto; + } + .modal-fullscreen-md-down .modal-footer { + border-radius: 0; + } +} +@media (max-width: 991.98px) { + .modal-fullscreen-lg-down { + width: 100vw; + max-width: none; + height: 100%; + margin: 0; + } + .modal-fullscreen-lg-down .modal-content { + height: 100%; + border: 0; + border-radius: 0; + } + .modal-fullscreen-lg-down .modal-header { + border-radius: 0; + } + .modal-fullscreen-lg-down .modal-body { + overflow-y: auto; + } + .modal-fullscreen-lg-down .modal-footer { + border-radius: 0; + } +} +@media (max-width: 1199.98px) { + .modal-fullscreen-xl-down { + width: 100vw; + max-width: none; + height: 100%; + margin: 0; + } + .modal-fullscreen-xl-down .modal-content { + height: 100%; + border: 0; + border-radius: 0; + } + .modal-fullscreen-xl-down .modal-header { + border-radius: 0; + } + .modal-fullscreen-xl-down .modal-body { + overflow-y: auto; + } + .modal-fullscreen-xl-down .modal-footer { + border-radius: 0; + } +} +@media (max-width: 1399.98px) { + .modal-fullscreen-xxl-down { + width: 100vw; + max-width: none; + height: 100%; + margin: 0; + } + .modal-fullscreen-xxl-down .modal-content { + height: 100%; + border: 0; + border-radius: 0; + } + .modal-fullscreen-xxl-down .modal-header { + border-radius: 0; + } + .modal-fullscreen-xxl-down .modal-body { + overflow-y: auto; + } + .modal-fullscreen-xxl-down .modal-footer { + border-radius: 0; + } +} +.tooltip { + position: absolute; + z-index: 1070; + display: block; + margin: 0; + font-family: var(--bs-font-sans-serif); + font-style: normal; + font-weight: 400; + line-height: 1.5; + text-align: left; + text-align: start; + text-decoration: none; + text-shadow: none; + text-transform: none; + letter-spacing: normal; + word-break: normal; + word-spacing: normal; + white-space: normal; + line-break: auto; + font-size: 0.875rem; + word-wrap: break-word; + opacity: 0; +} +.tooltip.show { + opacity: 0.9; +} +.tooltip .tooltip-arrow { + position: absolute; + display: block; + width: 0.8rem; + height: 0.4rem; +} +.tooltip .tooltip-arrow::before { + position: absolute; + content: ""; + border-color: transparent; + border-style: solid; +} + +.bs-tooltip-top, .bs-tooltip-auto[x-placement^=top] { + padding: 0.4rem 0; +} +.bs-tooltip-top .tooltip-arrow, .bs-tooltip-auto[x-placement^=top] .tooltip-arrow { + bottom: 0; +} +.bs-tooltip-top .tooltip-arrow::before, .bs-tooltip-auto[x-placement^=top] .tooltip-arrow::before { + top: 0; + border-width: 0.4rem 0.4rem 0; + border-top-color: #000; +} + +.bs-tooltip-right, .bs-tooltip-auto[x-placement^=right] { + padding: 0 0.4rem; +} +.bs-tooltip-right .tooltip-arrow, .bs-tooltip-auto[x-placement^=right] .tooltip-arrow { + left: 0; + width: 0.4rem; + height: 0.8rem; +} +.bs-tooltip-right .tooltip-arrow::before, .bs-tooltip-auto[x-placement^=right] .tooltip-arrow::before { + right: 0; + border-width: 0.4rem 0.4rem 0.4rem 0; + border-right-color: #000; +} + +.bs-tooltip-bottom, .bs-tooltip-auto[x-placement^=bottom] { + padding: 0.4rem 0; +} +.bs-tooltip-bottom .tooltip-arrow, .bs-tooltip-auto[x-placement^=bottom] .tooltip-arrow { + top: 0; +} +.bs-tooltip-bottom .tooltip-arrow::before, .bs-tooltip-auto[x-placement^=bottom] .tooltip-arrow::before { + bottom: 0; + border-width: 0 0.4rem 0.4rem; + border-bottom-color: #000; +} + +.bs-tooltip-left, .bs-tooltip-auto[x-placement^=left] { + padding: 0 0.4rem; +} +.bs-tooltip-left .tooltip-arrow, .bs-tooltip-auto[x-placement^=left] .tooltip-arrow { + right: 0; + width: 0.4rem; + height: 0.8rem; +} +.bs-tooltip-left .tooltip-arrow::before, .bs-tooltip-auto[x-placement^=left] .tooltip-arrow::before { + left: 0; + border-width: 0.4rem 0 0.4rem 0.4rem; + border-left-color: #000; +} + +.tooltip-inner { + max-width: 200px; + padding: 0.25rem 0.5rem; + color: #fff; + text-align: center; + background-color: #000; + border-radius: 0.25rem; +} + +.popover { + position: absolute; + top: 0; + left: 0; + z-index: 1060; + display: block; + max-width: 276px; + font-family: var(--bs-font-sans-serif); + font-style: normal; + font-weight: 400; + line-height: 1.5; + text-align: left; + text-align: start; + text-decoration: none; + text-shadow: none; + text-transform: none; + letter-spacing: normal; + word-break: normal; + word-spacing: normal; + white-space: normal; + line-break: auto; + font-size: 0.875rem; + word-wrap: break-word; + background-color: #fff; + background-clip: padding-box; + border: 1px solid rgba(0, 0, 0, 0.2); + border-radius: 0.3rem; +} +.popover .popover-arrow { + position: absolute; + display: block; + width: 1rem; + height: 0.5rem; + margin: 0 0.3rem; +} +.popover .popover-arrow::before, .popover .popover-arrow::after { + position: absolute; + display: block; + content: ""; + border-color: transparent; + border-style: solid; +} + +.bs-popover-top, .bs-popover-auto[x-placement^=top] { + margin-bottom: 0.5rem; +} +.bs-popover-top > .popover-arrow, .bs-popover-auto[x-placement^=top] > .popover-arrow { + bottom: calc(-0.5rem - 1px); +} +.bs-popover-top > .popover-arrow::before, .bs-popover-auto[x-placement^=top] > .popover-arrow::before { + bottom: 0; + border-width: 0.5rem 0.5rem 0; + border-top-color: rgba(0, 0, 0, 0.25); +} +.bs-popover-top > .popover-arrow::after, .bs-popover-auto[x-placement^=top] > .popover-arrow::after { + bottom: 1px; + border-width: 0.5rem 0.5rem 0; + border-top-color: #fff; +} + +.bs-popover-right, .bs-popover-auto[x-placement^=right] { + margin-left: 0.5rem; +} +.bs-popover-right > .popover-arrow, .bs-popover-auto[x-placement^=right] > .popover-arrow { + left: calc(-0.5rem - 1px); + width: 0.5rem; + height: 1rem; + margin: 0.3rem 0; +} +.bs-popover-right > .popover-arrow::before, .bs-popover-auto[x-placement^=right] > .popover-arrow::before { + left: 0; + border-width: 0.5rem 0.5rem 0.5rem 0; + border-right-color: rgba(0, 0, 0, 0.25); +} +.bs-popover-right > .popover-arrow::after, .bs-popover-auto[x-placement^=right] > .popover-arrow::after { + left: 1px; + border-width: 0.5rem 0.5rem 0.5rem 0; + border-right-color: #fff; +} + +.bs-popover-bottom, .bs-popover-auto[x-placement^=bottom] { + margin-top: 0.5rem; +} +.bs-popover-bottom > .popover-arrow, .bs-popover-auto[x-placement^=bottom] > .popover-arrow { + top: calc(-0.5rem - 1px); +} +.bs-popover-bottom > .popover-arrow::before, .bs-popover-auto[x-placement^=bottom] > .popover-arrow::before { + top: 0; + border-width: 0 0.5rem 0.5rem 0.5rem; + border-bottom-color: rgba(0, 0, 0, 0.25); +} +.bs-popover-bottom > .popover-arrow::after, .bs-popover-auto[x-placement^=bottom] > .popover-arrow::after { + top: 1px; + border-width: 0 0.5rem 0.5rem 0.5rem; + border-bottom-color: #fff; +} +.bs-popover-bottom .popover-header::before, .bs-popover-auto[x-placement^=bottom] .popover-header::before { + position: absolute; + top: 0; + left: 50%; + display: block; + width: 1rem; + margin-left: -0.5rem; + content: ""; + border-bottom: 1px solid #f0f0f0; +} + +.bs-popover-left, .bs-popover-auto[x-placement^=left] { + margin-right: 0.5rem; +} +.bs-popover-left > .popover-arrow, .bs-popover-auto[x-placement^=left] > .popover-arrow { + right: calc(-0.5rem - 1px); + width: 0.5rem; + height: 1rem; + margin: 0.3rem 0; +} +.bs-popover-left > .popover-arrow::before, .bs-popover-auto[x-placement^=left] > .popover-arrow::before { + right: 0; + border-width: 0.5rem 0 0.5rem 0.5rem; + border-left-color: rgba(0, 0, 0, 0.25); +} +.bs-popover-left > .popover-arrow::after, .bs-popover-auto[x-placement^=left] > .popover-arrow::after { + right: 1px; + border-width: 0.5rem 0 0.5rem 0.5rem; + border-left-color: #fff; +} + +.popover-header { + padding: 0.5rem 1rem; + margin-bottom: 0; + font-size: 1rem; + background-color: #f0f0f0; + border-bottom: 1px solid #d8d8d8; + border-top-left-radius: calc(0.3rem - 1px); + border-top-right-radius: calc(0.3rem - 1px); +} +.popover-header:empty { + display: none; +} + +.popover-body { + padding: 1rem 1rem; + color: #212529; +} + +.carousel { + position: relative; +} + +.carousel.pointer-event { + touch-action: pan-y; +} + +.carousel-inner { + position: relative; + width: 100%; + overflow: hidden; +} +.carousel-inner::after { + display: block; + clear: both; + content: ""; +} + +.carousel-item { + position: relative; + display: none; + float: left; + width: 100%; + margin-right: -100%; + -webkit-backface-visibility: hidden; + backface-visibility: hidden; + transition: transform 0.6s ease-in-out; +} +@media (prefers-reduced-motion: reduce) { + .carousel-item { + transition: none; + } +} + +.carousel-item.active, +.carousel-item-next, +.carousel-item-prev { + display: block; +} + +.carousel-item-next:not(.carousel-item-left), +.active.carousel-item-right { + transform: translateX(100%); +} + +.carousel-item-prev:not(.carousel-item-right), +.active.carousel-item-left { + 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-left, +.carousel-fade .carousel-item-prev.carousel-item-right { + z-index: 1; + opacity: 1; +} +.carousel-fade .active.carousel-item-left, +.carousel-fade .active.carousel-item-right { + z-index: 0; + opacity: 0; + transition: opacity 0s 0.6s; +} +@media (prefers-reduced-motion: reduce) { + .carousel-fade .active.carousel-item-left, +.carousel-fade .active.carousel-item-right { + 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%; + color: #fff; + text-align: center; + opacity: 0.5; + transition: opacity 0.15s ease; +} +@media (prefers-reduced-motion: reduce) { + .carousel-control-prev, +.carousel-control-next { + transition: none; + } +} +.carousel-control-prev:hover, .carousel-control-prev:focus, +.carousel-control-next:hover, +.carousel-control-next:focus { + color: #fff; + text-decoration: none; + outline: 0; + opacity: 0.9; +} + +.carousel-control-prev { + left: 0; +} + +.carousel-control-next { + right: 0; +} + +.carousel-control-prev-icon, +.carousel-control-next-icon { + display: inline-block; + width: 2rem; + height: 2rem; + background-repeat: no-repeat; + background-position: 50%; + background-size: 100% 100%; +} + +.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-left: 0; + margin-right: 15%; + margin-left: 15%; + list-style: none; +} +.carousel-indicators li { + box-sizing: content-box; + flex: 0 1 auto; + width: 30px; + height: 3px; + margin-right: 3px; + margin-left: 3px; + text-indent: -999px; + cursor: pointer; + background-color: #fff; + background-clip: padding-box; + border-top: 10px solid transparent; + border-bottom: 10px solid transparent; + opacity: 0.5; + transition: opacity 0.6s ease; +} +@media (prefers-reduced-motion: reduce) { + .carousel-indicators li { + 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 li { + background-color: #000; +} +.carousel-dark .carousel-caption { + color: #000; +} + +@-webkit-keyframes spinner-border { + to { + transform: rotate(360deg); + } +} + +@keyframes spinner-border { + to { + transform: rotate(360deg); + } +} +.spinner-border { + display: inline-block; + width: 2rem; + height: 2rem; + vertical-align: text-bottom; + border: 0.25em solid currentColor; + border-right-color: transparent; + border-radius: 50%; + -webkit-animation: 0.75s linear infinite spinner-border; + animation: 0.75s linear infinite spinner-border; +} + +.spinner-border-sm { + width: 1rem; + height: 1rem; + border-width: 0.2em; +} + +@-webkit-keyframes spinner-grow { + 0% { + transform: scale(0); + } + 50% { + opacity: 1; + transform: none; + } +} + +@keyframes spinner-grow { + 0% { + transform: scale(0); + } + 50% { + opacity: 1; + transform: none; + } +} +.spinner-grow { + display: inline-block; + width: 2rem; + height: 2rem; + vertical-align: text-bottom; + background-color: currentColor; + border-radius: 50%; + opacity: 0; + -webkit-animation: 0.75s linear infinite spinner-grow; + animation: 0.75s linear infinite spinner-grow; +} + +.spinner-grow-sm { + width: 1rem; + height: 1rem; +} + +@media (prefers-reduced-motion: reduce) { + .spinner-border, +.spinner-grow { + -webkit-animation-duration: 1.5s; + animation-duration: 1.5s; + } +} +.clearfix::after { + display: block; + clear: both; + content: ""; +} + +.link-primary { + color: #0076a5; +} +.link-primary:hover, .link-primary:focus { + color: #005e84; +} + +.link-secondary { + color: #ffc000; +} +.link-secondary:hover, .link-secondary:focus { + color: #ffcd33; +} + +.link-success { + color: #97c800; +} +.link-success:hover, .link-success:focus { + color: #acd333; +} + +.link-info { + color: #0098df; +} +.link-info:hover, .link-info:focus { + color: #33ade5; +} + +.link-warning { + color: #ffc000; +} +.link-warning:hover, .link-warning:focus { + color: #ffcd33; +} + +.link-danger { + color: #e74018; +} +.link-danger:hover, .link-danger:focus { + color: #ec6646; +} + +.link-light { + color: #f8f9fa; +} +.link-light:hover, .link-light:focus { + color: #f9fafb; +} + +.link-dark { + color: #333; +} +.link-dark:hover, .link-dark:focus { + color: #292929; +} + +.ratio { + position: relative; + width: 100%; +} +.ratio::before { + display: block; + padding-top: var(--aspect-ratio); + content: ""; +} +.ratio > * { + position: absolute; + top: 0; + left: 0; + width: 100%; + height: 100%; +} + +.ratio-1x1 { + --aspect-ratio: 100%; +} + +.ratio-4x3 { + --aspect-ratio: calc(3 / 4 * 100%); +} + +.ratio-16x9 { + --aspect-ratio: calc(9 / 16 * 100%); +} + +.ratio-21x9 { + --aspect-ratio: calc(9 / 21 * 100%); +} + +.fixed-top { + position: fixed; + top: 0; + right: 0; + left: 0; + z-index: 1030; +} + +.fixed-bottom { + position: fixed; + right: 0; + bottom: 0; + left: 0; + z-index: 1030; +} + +.sticky-top { + position: -webkit-sticky; + position: sticky; + top: 0; + z-index: 1020; +} + +@media (min-width: 576px) { + .sticky-sm-top { + position: -webkit-sticky; + position: sticky; + top: 0; + z-index: 1020; + } +} +@media (min-width: 768px) { + .sticky-md-top { + position: -webkit-sticky; + position: sticky; + top: 0; + z-index: 1020; + } +} +@media (min-width: 992px) { + .sticky-lg-top { + position: -webkit-sticky; + position: sticky; + top: 0; + z-index: 1020; + } +} +@media (min-width: 1200px) { + .sticky-xl-top { + position: -webkit-sticky; + position: sticky; + top: 0; + z-index: 1020; + } +} +@media (min-width: 1400px) { + .sticky-xxl-top { + position: -webkit-sticky; + position: sticky; + top: 0; + z-index: 1020; + } +} +.visually-hidden, +.visually-hidden-focusable:not(:focus) { + position: absolute !important; + width: 1px !important; + height: 1px !important; + padding: 0 !important; + margin: -1px !important; + overflow: hidden !important; + clip: rect(0, 0, 0, 0) !important; + white-space: nowrap !important; + border: 0 !important; +} + +.stretched-link::after { + position: absolute; + top: 0; + right: 0; + bottom: 0; + left: 0; + z-index: 1; + content: ""; +} + +.text-truncate { + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap; +} + +.align-baseline { + vertical-align: baseline !important; +} + +.align-top { + vertical-align: top !important; +} + +.align-middle { + vertical-align: middle !important; +} + +.align-bottom { + vertical-align: bottom !important; +} + +.align-text-bottom { + vertical-align: text-bottom !important; +} + +.align-text-top { + vertical-align: text-top !important; +} + +.float-left { + float: left !important; +} + +.float-right { + float: right !important; +} + +.float-none { + float: none !important; +} + +.overflow-auto { + overflow: auto !important; +} + +.overflow-hidden { + overflow: hidden !important; +} + +.overflow-visible { + overflow: visible !important; +} + +.overflow-scroll { + overflow: scroll !important; +} + +.d-inline { + display: inline !important; +} + +.d-inline-block { + display: inline-block !important; +} + +.d-block { + display: block !important; +} + +.d-grid { + display: grid !important; +} + +.d-table { + display: table !important; +} + +.d-table-row { + display: table-row !important; +} + +.d-table-cell { + display: table-cell !important; +} + +.d-flex { + display: flex !important; +} + +.d-inline-flex { + display: inline-flex !important; +} + +.d-none { + display: none !important; +} + +.shadow { + box-shadow: 0 0 0.4px rgba(0, 0, 0, 0.02), 0 0 0.9px rgba(0, 0, 0, 0.028), 0 0 1.8px rgba(0, 0, 0, 0.035), 0 0 3.1px rgba(0, 0, 0, 0.042), 0 0 5.8px rgba(0, 0, 0, 0.05), 0 0 14px rgba(0, 0, 0, 0.07) !important; +} + +.shadow-sm { + box-shadow: 0 0 0.2px rgba(0, 0, 0, 0.014), 0 0 0.5px rgba(0, 0, 0, 0.02), 0 0 1px rgba(0, 0, 0, 0.025), 0 0 1.8px rgba(0, 0, 0, 0.03), 0 0 3.3px rgba(0, 0, 0, 0.036), 0 0 8px rgba(0, 0, 0, 0.05) !important; +} + +.shadow-lg { + box-shadow: 0 0 0.7px rgba(0, 0, 0, 0.028), 0 0 1.7px rgba(0, 0, 0, 0.04), 0 0 3.3px rgba(0, 0, 0, 0.05), 0 0 5.8px rgba(0, 0, 0, 0.06), 0 0 10.9px rgba(0, 0, 0, 0.072), 0 0 26px rgba(0, 0, 0, 0.1) !important; +} + +.shadow-none { + box-shadow: none !important; +} + +.position-static { + position: static !important; +} + +.position-relative { + position: relative !important; +} + +.position-absolute { + position: absolute !important; +} + +.position-fixed { + position: fixed !important; +} + +.position-sticky { + position: -webkit-sticky !important; + position: sticky !important; +} + +.top-0 { + top: 0 !important; +} + +.top-50 { + top: 50% !important; +} + +.top-100 { + top: 100% !important; +} + +.bottom-0 { + bottom: 0 !important; +} + +.bottom-50 { + bottom: 50% !important; +} + +.bottom-100 { + bottom: 100% !important; +} + +.left-0 { + left: 0 !important; +} + +.left-50 { + left: 50% !important; +} + +.left-100 { + left: 100% !important; +} + +.right-0 { + right: 0 !important; +} + +.right-50 { + right: 50% !important; +} + +.right-100 { + right: 100% !important; +} + +.translate-middle { + transform: translateX(-50%) translateY(-50%) !important; +} + +.border { + border: 1px solid #dee2e6 !important; +} + +.border-0 { + border: 0 !important; +} + +.border-top { + border-top: 1px solid #dee2e6 !important; +} + +.border-top-0 { + border-top: 0 !important; +} + +.border-right { + border-right: 1px solid #dee2e6 !important; +} + +.border-right-0 { + border-right: 0 !important; +} + +.border-bottom { + border-bottom: 1px solid #dee2e6 !important; +} + +.border-bottom-0 { + border-bottom: 0 !important; +} + +.border-left { + border-left: 1px solid #dee2e6 !important; +} + +.border-left-0 { + border-left: 0 !important; +} + +.border-primary { + border-color: #0076a5 !important; +} + +.border-secondary { + border-color: #ffc000 !important; +} + +.border-success { + border-color: #97c800 !important; +} + +.border-info { + border-color: #0098df !important; +} + +.border-warning { + border-color: #ffc000 !important; +} + +.border-danger { + border-color: #e74018 !important; +} + +.border-light { + border-color: #f8f9fa !important; +} + +.border-dark { + border-color: #333 !important; +} + +.border-white { + border-color: #fff !important; +} + +.border-0 { + border-width: 0 !important; +} + +.border-1 { + border-width: 1px !important; +} + +.border-2 { + border-width: 2px !important; +} + +.border-3 { + border-width: 3px !important; +} + +.border-4 { + border-width: 4px !important; +} + +.border-5 { + border-width: 5px !important; +} + +.w-25 { + width: 25% !important; +} + +.w-50 { + width: 50% !important; +} + +.w-75 { + width: 75% !important; +} + +.w-100 { + width: 100% !important; +} + +.w-auto { + width: auto !important; +} + +.mw-100 { + max-width: 100% !important; +} + +.vw-100 { + width: 100vw !important; +} + +.min-vw-100 { + min-width: 100vw !important; +} + +.h-25 { + height: 25% !important; +} + +.h-50 { + height: 50% !important; +} + +.h-75 { + height: 75% !important; +} + +.h-100 { + height: 100% !important; +} + +.h-auto { + height: auto !important; +} + +.mh-100 { + max-height: 100% !important; +} + +.vh-100 { + height: 100vh !important; +} + +.min-vh-100 { + min-height: 100vh !important; +} + +.flex-fill { + flex: 1 1 auto !important; +} + +.flex-row { + flex-direction: row !important; +} + +.flex-column { + flex-direction: column !important; +} + +.flex-row-reverse { + flex-direction: row-reverse !important; +} + +.flex-column-reverse { + flex-direction: column-reverse !important; +} + +.flex-grow-0 { + flex-grow: 0 !important; +} + +.flex-grow-1 { + flex-grow: 1 !important; +} + +.flex-shrink-0 { + flex-shrink: 0 !important; +} + +.flex-shrink-1 { + flex-shrink: 1 !important; +} + +.flex-wrap { + flex-wrap: wrap !important; +} + +.flex-nowrap { + flex-wrap: nowrap !important; +} + +.flex-wrap-reverse { + flex-wrap: wrap-reverse !important; +} + +.gap-0 { + gap: 0 !important; +} + +.gap-1 { + gap: 0.25rem !important; +} + +.gap-2 { + gap: 0.5rem !important; +} + +.gap-3 { + gap: 1rem !important; +} + +.gap-4 { + gap: 1.5rem !important; +} + +.gap-5 { + gap: 3rem !important; +} + +.justify-content-start { + justify-content: flex-start !important; +} + +.justify-content-end { + justify-content: flex-end !important; +} + +.justify-content-center { + justify-content: center !important; +} + +.justify-content-between { + justify-content: space-between !important; +} + +.justify-content-around { + justify-content: space-around !important; +} + +.justify-content-evenly { + justify-content: space-evenly !important; +} + +.align-items-start { + align-items: flex-start !important; +} + +.align-items-end { + align-items: flex-end !important; +} + +.align-items-center { + align-items: center !important; +} + +.align-items-baseline { + align-items: baseline !important; +} + +.align-items-stretch { + align-items: stretch !important; +} + +.align-content-start { + align-content: flex-start !important; +} + +.align-content-end { + align-content: flex-end !important; +} + +.align-content-center { + align-content: center !important; +} + +.align-content-between { + align-content: space-between !important; +} + +.align-content-around { + align-content: space-around !important; +} + +.align-content-stretch { + align-content: stretch !important; +} + +.align-self-auto { + align-self: auto !important; +} + +.align-self-start { + align-self: flex-start !important; +} + +.align-self-end { + align-self: flex-end !important; +} + +.align-self-center { + align-self: center !important; +} + +.align-self-baseline { + align-self: baseline !important; +} + +.align-self-stretch { + align-self: stretch !important; +} + +.order-first { + order: -1 !important; +} + +.order-0 { + order: 0 !important; +} + +.order-1 { + order: 1 !important; +} + +.order-2 { + order: 2 !important; +} + +.order-3 { + order: 3 !important; +} + +.order-4 { + order: 4 !important; +} + +.order-5 { + order: 5 !important; +} + +.order-last { + order: 6 !important; +} + +.m-0 { + margin: 0 !important; +} + +.m-1 { + margin: 0.25rem !important; +} + +.m-2 { + margin: 0.5rem !important; +} + +.m-3 { + margin: 1rem !important; +} + +.m-4 { + margin: 1.5rem !important; +} + +.m-5 { + margin: 3rem !important; +} + +.m-auto { + margin: auto !important; +} + +.mx-0 { + margin-right: 0 !important; + margin-left: 0 !important; +} + +.mx-1 { + margin-right: 0.25rem !important; + margin-left: 0.25rem !important; +} + +.mx-2 { + margin-right: 0.5rem !important; + margin-left: 0.5rem !important; +} + +.mx-3 { + margin-right: 1rem !important; + margin-left: 1rem !important; +} + +.mx-4 { + margin-right: 1.5rem !important; + margin-left: 1.5rem !important; +} + +.mx-5 { + margin-right: 3rem !important; + margin-left: 3rem !important; +} + +.mx-auto { + margin-right: auto !important; + margin-left: auto !important; +} + +.my-0 { + margin-top: 0 !important; + margin-bottom: 0 !important; +} + +.my-1 { + margin-top: 0.25rem !important; + margin-bottom: 0.25rem !important; +} + +.my-2 { + margin-top: 0.5rem !important; + margin-bottom: 0.5rem !important; +} + +.my-3 { + margin-top: 1rem !important; + margin-bottom: 1rem !important; +} + +.my-4 { + margin-top: 1.5rem !important; + margin-bottom: 1.5rem !important; +} + +.my-5 { + margin-top: 3rem !important; + margin-bottom: 3rem !important; +} + +.my-auto { + margin-top: auto !important; + margin-bottom: auto !important; +} + +.mt-0 { + margin-top: 0 !important; +} + +.mt-1 { + margin-top: 0.25rem !important; +} + +.mt-2 { + margin-top: 0.5rem !important; +} + +.mt-3 { + margin-top: 1rem !important; +} + +.mt-4 { + margin-top: 1.5rem !important; +} + +.mt-5 { + margin-top: 3rem !important; +} + +.mt-auto { + margin-top: auto !important; +} + +.mr-0 { + margin-right: 0 !important; +} + +.mr-1 { + margin-right: 0.25rem !important; +} + +.mr-2 { + margin-right: 0.5rem !important; +} + +.mr-3 { + margin-right: 1rem !important; +} + +.mr-4 { + margin-right: 1.5rem !important; +} + +.mr-5 { + margin-right: 3rem !important; +} + +.mr-auto { + margin-right: auto !important; +} + +.mb-0 { + margin-bottom: 0 !important; +} + +.mb-1 { + margin-bottom: 0.25rem !important; +} + +.mb-2 { + margin-bottom: 0.5rem !important; +} + +.mb-3 { + margin-bottom: 1rem !important; +} + +.mb-4 { + margin-bottom: 1.5rem !important; +} + +.mb-5 { + margin-bottom: 3rem !important; +} + +.mb-auto { + margin-bottom: auto !important; +} + +.ml-0 { + margin-left: 0 !important; +} + +.ml-1 { + margin-left: 0.25rem !important; +} + +.ml-2 { + margin-left: 0.5rem !important; +} + +.ml-3 { + margin-left: 1rem !important; +} + +.ml-4 { + margin-left: 1.5rem !important; +} + +.ml-5 { + margin-left: 3rem !important; +} + +.ml-auto { + margin-left: auto !important; +} + +.m-n1 { + margin: -0.25rem !important; +} + +.m-n2 { + margin: -0.5rem !important; +} + +.m-n3 { + margin: -1rem !important; +} + +.m-n4 { + margin: -1.5rem !important; +} + +.m-n5 { + margin: -3rem !important; +} + +.mx-n1 { + margin-right: -0.25rem !important; + margin-left: -0.25rem !important; +} + +.mx-n2 { + margin-right: -0.5rem !important; + margin-left: -0.5rem !important; +} + +.mx-n3 { + margin-right: -1rem !important; + margin-left: -1rem !important; +} + +.mx-n4 { + margin-right: -1.5rem !important; + margin-left: -1.5rem !important; +} + +.mx-n5 { + margin-right: -3rem !important; + margin-left: -3rem !important; +} + +.my-n1 { + margin-top: -0.25rem !important; + margin-bottom: -0.25rem !important; +} + +.my-n2 { + margin-top: -0.5rem !important; + margin-bottom: -0.5rem !important; +} + +.my-n3 { + margin-top: -1rem !important; + margin-bottom: -1rem !important; +} + +.my-n4 { + margin-top: -1.5rem !important; + margin-bottom: -1.5rem !important; +} + +.my-n5 { + margin-top: -3rem !important; + margin-bottom: -3rem !important; +} + +.mt-n1 { + margin-top: -0.25rem !important; +} + +.mt-n2 { + margin-top: -0.5rem !important; +} + +.mt-n3 { + margin-top: -1rem !important; +} + +.mt-n4 { + margin-top: -1.5rem !important; +} + +.mt-n5 { + margin-top: -3rem !important; +} + +.mr-n1 { + margin-right: -0.25rem !important; +} + +.mr-n2 { + margin-right: -0.5rem !important; +} + +.mr-n3 { + margin-right: -1rem !important; +} + +.mr-n4 { + margin-right: -1.5rem !important; +} + +.mr-n5 { + margin-right: -3rem !important; +} + +.mb-n1 { + margin-bottom: -0.25rem !important; +} + +.mb-n2 { + margin-bottom: -0.5rem !important; +} + +.mb-n3 { + margin-bottom: -1rem !important; +} + +.mb-n4 { + margin-bottom: -1.5rem !important; +} + +.mb-n5 { + margin-bottom: -3rem !important; +} + +.ml-n1 { + margin-left: -0.25rem !important; +} + +.ml-n2 { + margin-left: -0.5rem !important; +} + +.ml-n3 { + margin-left: -1rem !important; +} + +.ml-n4 { + margin-left: -1.5rem !important; +} + +.ml-n5 { + margin-left: -3rem !important; +} + +.p-0 { + padding: 0 !important; +} + +.p-1 { + padding: 0.25rem !important; +} + +.p-2 { + padding: 0.5rem !important; +} + +.p-3 { + padding: 1rem !important; +} + +.p-4 { + padding: 1.5rem !important; +} + +.p-5 { + padding: 3rem !important; +} + +.px-0 { + padding-right: 0 !important; + padding-left: 0 !important; +} + +.px-1 { + padding-right: 0.25rem !important; + padding-left: 0.25rem !important; +} + +.px-2 { + padding-right: 0.5rem !important; + padding-left: 0.5rem !important; +} + +.px-3 { + padding-right: 1rem !important; + padding-left: 1rem !important; +} + +.px-4 { + padding-right: 1.5rem !important; + padding-left: 1.5rem !important; +} + +.px-5 { + padding-right: 3rem !important; + padding-left: 3rem !important; +} + +.py-0 { + padding-top: 0 !important; + padding-bottom: 0 !important; +} + +.py-1 { + padding-top: 0.25rem !important; + padding-bottom: 0.25rem !important; +} + +.py-2 { + padding-top: 0.5rem !important; + padding-bottom: 0.5rem !important; +} + +.py-3 { + padding-top: 1rem !important; + padding-bottom: 1rem !important; +} + +.py-4 { + padding-top: 1.5rem !important; + padding-bottom: 1.5rem !important; +} + +.py-5 { + padding-top: 3rem !important; + padding-bottom: 3rem !important; +} + +.pt-0 { + padding-top: 0 !important; +} + +.pt-1 { + padding-top: 0.25rem !important; +} + +.pt-2 { + padding-top: 0.5rem !important; +} + +.pt-3 { + padding-top: 1rem !important; +} + +.pt-4 { + padding-top: 1.5rem !important; +} + +.pt-5 { + padding-top: 3rem !important; +} + +.pr-0 { + padding-right: 0 !important; +} + +.pr-1 { + padding-right: 0.25rem !important; +} + +.pr-2 { + padding-right: 0.5rem !important; +} + +.pr-3 { + padding-right: 1rem !important; +} + +.pr-4 { + padding-right: 1.5rem !important; +} + +.pr-5 { + padding-right: 3rem !important; +} + +.pb-0 { + padding-bottom: 0 !important; +} + +.pb-1 { + padding-bottom: 0.25rem !important; +} + +.pb-2 { + padding-bottom: 0.5rem !important; +} + +.pb-3 { + padding-bottom: 1rem !important; +} + +.pb-4 { + padding-bottom: 1.5rem !important; +} + +.pb-5 { + padding-bottom: 3rem !important; +} + +.pl-0 { + padding-left: 0 !important; +} + +.pl-1 { + padding-left: 0.25rem !important; +} + +.pl-2 { + padding-left: 0.5rem !important; +} + +.pl-3 { + padding-left: 1rem !important; +} + +.pl-4 { + padding-left: 1.5rem !important; +} + +.pl-5 { + padding-left: 3rem !important; +} + +.fs-1 { + font-size: calc(1.375rem + 1.5vw) !important; +} + +.fs-2 { + font-size: calc(1.325rem + 0.9vw) !important; +} + +.fs-3 { + font-size: calc(1.3rem + 0.6vw) !important; +} + +.fs-4 { + font-size: calc(1.275rem + 0.3vw) !important; +} + +.fs-5 { + font-size: 1.25rem !important; +} + +.fs-6 { + font-size: 1rem !important; +} + +.fst-italic { + font-style: italic !important; +} + +.fst-normal { + font-style: normal !important; +} + +.fw-light { + font-weight: 300 !important; +} + +.fw-lighter { + font-weight: lighter !important; +} + +.fw-normal { + font-weight: 400 !important; +} + +.fw-bold { + font-weight: 700 !important; +} + +.fw-bolder { + font-weight: bolder !important; +} + +.text-lowercase { + text-transform: lowercase !important; +} + +.text-uppercase { + text-transform: uppercase !important; +} + +.text-capitalize { + text-transform: capitalize !important; +} + +.text-left { + text-align: left !important; +} + +.text-right { + text-align: right !important; +} + +.text-center { + text-align: center !important; +} + +.text-primary { + color: #0076a5 !important; +} + +.text-secondary { + color: #ffc000 !important; +} + +.text-success { + color: #97c800 !important; +} + +.text-info { + color: #0098df !important; +} + +.text-warning { + color: #ffc000 !important; +} + +.text-danger { + color: #e74018 !important; +} + +.text-light { + color: #f8f9fa !important; +} + +.text-dark { + color: #333 !important; +} + +.text-white { + color: #fff !important; +} + +.text-body { + color: #212529 !important; +} + +.text-muted { + color: #6c757d !important; +} + +.text-black-50 { + color: rgba(0, 0, 0, 0.5) !important; +} + +.text-white-50 { + color: rgba(255, 255, 255, 0.5) !important; +} + +.text-reset { + color: inherit !important; +} + +.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; +} + +.bg-primary { + background-color: #0076a5 !important; +} + +.bg-secondary { + background-color: #ffc000 !important; +} + +.bg-success { + background-color: #97c800 !important; +} + +.bg-info { + background-color: #0098df !important; +} + +.bg-warning { + background-color: #ffc000 !important; +} + +.bg-danger { + background-color: #e74018 !important; +} + +.bg-light { + background-color: #f8f9fa !important; +} + +.bg-dark { + background-color: #333 !important; +} + +.bg-body { + background-color: #fff !important; +} + +.bg-white { + background-color: #fff !important; +} + +.bg-transparent { + background-color: transparent !important; +} + +.bg-gradient { + background-image: var(--bs-gradient) !important; +} + +.text-wrap { + white-space: normal !important; +} + +.text-nowrap { + white-space: nowrap !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-break { + word-wrap: break-word !important; + word-break: break-word !important; +} + +.font-monospace { + font-family: var(--bs-font-monospace) !important; +} + +.user-select-all { + -webkit-user-select: all !important; + -moz-user-select: all !important; + -ms-user-select: all !important; + user-select: all !important; +} + +.user-select-auto { + -webkit-user-select: auto !important; + -moz-user-select: auto !important; + -ms-user-select: auto !important; + user-select: auto !important; +} + +.user-select-none { + -webkit-user-select: none !important; + -moz-user-select: none !important; + -ms-user-select: none !important; + user-select: none !important; +} + +.pe-none { + pointer-events: none !important; +} + +.pe-auto { + pointer-events: auto !important; +} + +.rounded { + border-radius: 0.25rem !important; +} + +.rounded-0 { + border-radius: 0 !important; +} + +.rounded-1 { + border-radius: 0.2rem !important; +} + +.rounded-2 { + border-radius: 0.25rem !important; +} + +.rounded-3 { + border-radius: 0.3rem !important; +} + +.rounded-circle { + border-radius: 50% !important; +} + +.rounded-pill { + border-radius: 50rem !important; +} + +.rounded-top { + border-top-left-radius: 0.25rem !important; + border-top-right-radius: 0.25rem !important; +} + +.rounded-right { + border-top-right-radius: 0.25rem !important; + border-bottom-right-radius: 0.25rem !important; +} + +.rounded-bottom { + border-bottom-right-radius: 0.25rem !important; + border-bottom-left-radius: 0.25rem !important; +} + +.rounded-left { + border-bottom-left-radius: 0.25rem !important; + border-top-left-radius: 0.25rem !important; +} + +.visible { + visibility: visible !important; +} + +.invisible { + visibility: hidden !important; +} + +@media (min-width: 576px) { + .float-sm-left { + float: left !important; + } + + .float-sm-right { + float: right !important; + } + + .float-sm-none { + float: none !important; + } + + .d-sm-inline { + display: inline !important; + } + + .d-sm-inline-block { + display: inline-block !important; + } + + .d-sm-block { + display: block !important; + } + + .d-sm-grid { + display: grid !important; + } + + .d-sm-table { + display: table !important; + } + + .d-sm-table-row { + display: table-row !important; + } + + .d-sm-table-cell { + display: table-cell !important; + } + + .d-sm-flex { + display: flex !important; + } + + .d-sm-inline-flex { + display: inline-flex !important; + } + + .d-sm-none { + display: none !important; + } + + .flex-sm-fill { + flex: 1 1 auto !important; + } + + .flex-sm-row { + flex-direction: row !important; + } + + .flex-sm-column { + flex-direction: column !important; + } + + .flex-sm-row-reverse { + flex-direction: row-reverse !important; + } + + .flex-sm-column-reverse { + flex-direction: column-reverse !important; + } + + .flex-sm-grow-0 { + flex-grow: 0 !important; + } + + .flex-sm-grow-1 { + flex-grow: 1 !important; + } + + .flex-sm-shrink-0 { + flex-shrink: 0 !important; + } + + .flex-sm-shrink-1 { + flex-shrink: 1 !important; + } + + .flex-sm-wrap { + flex-wrap: wrap !important; + } + + .flex-sm-nowrap { + flex-wrap: nowrap !important; + } + + .flex-sm-wrap-reverse { + flex-wrap: wrap-reverse !important; + } + + .gap-sm-0 { + gap: 0 !important; + } + + .gap-sm-1 { + gap: 0.25rem !important; + } + + .gap-sm-2 { + gap: 0.5rem !important; + } + + .gap-sm-3 { + gap: 1rem !important; + } + + .gap-sm-4 { + gap: 1.5rem !important; + } + + .gap-sm-5 { + gap: 3rem !important; + } + + .justify-content-sm-start { + justify-content: flex-start !important; + } + + .justify-content-sm-end { + justify-content: flex-end !important; + } + + .justify-content-sm-center { + justify-content: center !important; + } + + .justify-content-sm-between { + justify-content: space-between !important; + } + + .justify-content-sm-around { + justify-content: space-around !important; + } + + .justify-content-sm-evenly { + justify-content: space-evenly !important; + } + + .align-items-sm-start { + align-items: flex-start !important; + } + + .align-items-sm-end { + align-items: flex-end !important; + } + + .align-items-sm-center { + align-items: center !important; + } + + .align-items-sm-baseline { + align-items: baseline !important; + } + + .align-items-sm-stretch { + align-items: stretch !important; + } + + .align-content-sm-start { + align-content: flex-start !important; + } + + .align-content-sm-end { + align-content: flex-end !important; + } + + .align-content-sm-center { + align-content: center !important; + } + + .align-content-sm-between { + align-content: space-between !important; + } + + .align-content-sm-around { + align-content: space-around !important; + } + + .align-content-sm-stretch { + align-content: stretch !important; + } + + .align-self-sm-auto { + align-self: auto !important; + } + + .align-self-sm-start { + align-self: flex-start !important; + } + + .align-self-sm-end { + align-self: flex-end !important; + } + + .align-self-sm-center { + align-self: center !important; + } + + .align-self-sm-baseline { + align-self: baseline !important; + } + + .align-self-sm-stretch { + align-self: stretch !important; + } + + .order-sm-first { + order: -1 !important; + } + + .order-sm-0 { + order: 0 !important; + } + + .order-sm-1 { + order: 1 !important; + } + + .order-sm-2 { + order: 2 !important; + } + + .order-sm-3 { + order: 3 !important; + } + + .order-sm-4 { + order: 4 !important; + } + + .order-sm-5 { + order: 5 !important; + } + + .order-sm-last { + order: 6 !important; + } + + .m-sm-0 { + margin: 0 !important; + } + + .m-sm-1 { + margin: 0.25rem !important; + } + + .m-sm-2 { + margin: 0.5rem !important; + } + + .m-sm-3 { + margin: 1rem !important; + } + + .m-sm-4 { + margin: 1.5rem !important; + } + + .m-sm-5 { + margin: 3rem !important; + } + + .m-sm-auto { + margin: auto !important; + } + + .mx-sm-0 { + margin-right: 0 !important; + margin-left: 0 !important; + } + + .mx-sm-1 { + margin-right: 0.25rem !important; + margin-left: 0.25rem !important; + } + + .mx-sm-2 { + margin-right: 0.5rem !important; + margin-left: 0.5rem !important; + } + + .mx-sm-3 { + margin-right: 1rem !important; + margin-left: 1rem !important; + } + + .mx-sm-4 { + margin-right: 1.5rem !important; + margin-left: 1.5rem !important; + } + + .mx-sm-5 { + margin-right: 3rem !important; + margin-left: 3rem !important; + } + + .mx-sm-auto { + margin-right: auto !important; + margin-left: auto !important; + } + + .my-sm-0 { + margin-top: 0 !important; + margin-bottom: 0 !important; + } + + .my-sm-1 { + margin-top: 0.25rem !important; + margin-bottom: 0.25rem !important; + } + + .my-sm-2 { + margin-top: 0.5rem !important; + margin-bottom: 0.5rem !important; + } + + .my-sm-3 { + margin-top: 1rem !important; + margin-bottom: 1rem !important; + } + + .my-sm-4 { + margin-top: 1.5rem !important; + margin-bottom: 1.5rem !important; + } + + .my-sm-5 { + margin-top: 3rem !important; + margin-bottom: 3rem !important; + } + + .my-sm-auto { + margin-top: auto !important; + margin-bottom: auto !important; + } + + .mt-sm-0 { + margin-top: 0 !important; + } + + .mt-sm-1 { + margin-top: 0.25rem !important; + } + + .mt-sm-2 { + margin-top: 0.5rem !important; + } + + .mt-sm-3 { + margin-top: 1rem !important; + } + + .mt-sm-4 { + margin-top: 1.5rem !important; + } + + .mt-sm-5 { + margin-top: 3rem !important; + } + + .mt-sm-auto { + margin-top: auto !important; + } + + .mr-sm-0 { + margin-right: 0 !important; + } + + .mr-sm-1 { + margin-right: 0.25rem !important; + } + + .mr-sm-2 { + margin-right: 0.5rem !important; + } + + .mr-sm-3 { + margin-right: 1rem !important; + } + + .mr-sm-4 { + margin-right: 1.5rem !important; + } + + .mr-sm-5 { + margin-right: 3rem !important; + } + + .mr-sm-auto { + margin-right: auto !important; + } + + .mb-sm-0 { + margin-bottom: 0 !important; + } + + .mb-sm-1 { + margin-bottom: 0.25rem !important; + } + + .mb-sm-2 { + margin-bottom: 0.5rem !important; + } + + .mb-sm-3 { + margin-bottom: 1rem !important; + } + + .mb-sm-4 { + margin-bottom: 1.5rem !important; + } + + .mb-sm-5 { + margin-bottom: 3rem !important; + } + + .mb-sm-auto { + margin-bottom: auto !important; + } + + .ml-sm-0 { + margin-left: 0 !important; + } + + .ml-sm-1 { + margin-left: 0.25rem !important; + } + + .ml-sm-2 { + margin-left: 0.5rem !important; + } + + .ml-sm-3 { + margin-left: 1rem !important; + } + + .ml-sm-4 { + margin-left: 1.5rem !important; + } + + .ml-sm-5 { + margin-left: 3rem !important; + } + + .ml-sm-auto { + margin-left: auto !important; + } + + .m-sm-n1 { + margin: -0.25rem !important; + } + + .m-sm-n2 { + margin: -0.5rem !important; + } + + .m-sm-n3 { + margin: -1rem !important; + } + + .m-sm-n4 { + margin: -1.5rem !important; + } + + .m-sm-n5 { + margin: -3rem !important; + } + + .mx-sm-n1 { + margin-right: -0.25rem !important; + margin-left: -0.25rem !important; + } + + .mx-sm-n2 { + margin-right: -0.5rem !important; + margin-left: -0.5rem !important; + } + + .mx-sm-n3 { + margin-right: -1rem !important; + margin-left: -1rem !important; + } + + .mx-sm-n4 { + margin-right: -1.5rem !important; + margin-left: -1.5rem !important; + } + + .mx-sm-n5 { + margin-right: -3rem !important; + margin-left: -3rem !important; + } + + .my-sm-n1 { + margin-top: -0.25rem !important; + margin-bottom: -0.25rem !important; + } + + .my-sm-n2 { + margin-top: -0.5rem !important; + margin-bottom: -0.5rem !important; + } + + .my-sm-n3 { + margin-top: -1rem !important; + margin-bottom: -1rem !important; + } + + .my-sm-n4 { + margin-top: -1.5rem !important; + margin-bottom: -1.5rem !important; + } + + .my-sm-n5 { + margin-top: -3rem !important; + margin-bottom: -3rem !important; + } + + .mt-sm-n1 { + margin-top: -0.25rem !important; + } + + .mt-sm-n2 { + margin-top: -0.5rem !important; + } + + .mt-sm-n3 { + margin-top: -1rem !important; + } + + .mt-sm-n4 { + margin-top: -1.5rem !important; + } + + .mt-sm-n5 { + margin-top: -3rem !important; + } + + .mr-sm-n1 { + margin-right: -0.25rem !important; + } + + .mr-sm-n2 { + margin-right: -0.5rem !important; + } + + .mr-sm-n3 { + margin-right: -1rem !important; + } + + .mr-sm-n4 { + margin-right: -1.5rem !important; + } + + .mr-sm-n5 { + margin-right: -3rem !important; + } + + .mb-sm-n1 { + margin-bottom: -0.25rem !important; + } + + .mb-sm-n2 { + margin-bottom: -0.5rem !important; + } + + .mb-sm-n3 { + margin-bottom: -1rem !important; + } + + .mb-sm-n4 { + margin-bottom: -1.5rem !important; + } + + .mb-sm-n5 { + margin-bottom: -3rem !important; + } + + .ml-sm-n1 { + margin-left: -0.25rem !important; + } + + .ml-sm-n2 { + margin-left: -0.5rem !important; + } + + .ml-sm-n3 { + margin-left: -1rem !important; + } + + .ml-sm-n4 { + margin-left: -1.5rem !important; + } + + .ml-sm-n5 { + margin-left: -3rem !important; + } + + .p-sm-0 { + padding: 0 !important; + } + + .p-sm-1 { + padding: 0.25rem !important; + } + + .p-sm-2 { + padding: 0.5rem !important; + } + + .p-sm-3 { + padding: 1rem !important; + } + + .p-sm-4 { + padding: 1.5rem !important; + } + + .p-sm-5 { + padding: 3rem !important; + } + + .px-sm-0 { + padding-right: 0 !important; + padding-left: 0 !important; + } + + .px-sm-1 { + padding-right: 0.25rem !important; + padding-left: 0.25rem !important; + } + + .px-sm-2 { + padding-right: 0.5rem !important; + padding-left: 0.5rem !important; + } + + .px-sm-3 { + padding-right: 1rem !important; + padding-left: 1rem !important; + } + + .px-sm-4 { + padding-right: 1.5rem !important; + padding-left: 1.5rem !important; + } + + .px-sm-5 { + padding-right: 3rem !important; + padding-left: 3rem !important; + } + + .py-sm-0 { + padding-top: 0 !important; + padding-bottom: 0 !important; + } + + .py-sm-1 { + padding-top: 0.25rem !important; + padding-bottom: 0.25rem !important; + } + + .py-sm-2 { + padding-top: 0.5rem !important; + padding-bottom: 0.5rem !important; + } + + .py-sm-3 { + padding-top: 1rem !important; + padding-bottom: 1rem !important; + } + + .py-sm-4 { + padding-top: 1.5rem !important; + padding-bottom: 1.5rem !important; + } + + .py-sm-5 { + padding-top: 3rem !important; + padding-bottom: 3rem !important; + } + + .pt-sm-0 { + padding-top: 0 !important; + } + + .pt-sm-1 { + padding-top: 0.25rem !important; + } + + .pt-sm-2 { + padding-top: 0.5rem !important; + } + + .pt-sm-3 { + padding-top: 1rem !important; + } + + .pt-sm-4 { + padding-top: 1.5rem !important; + } + + .pt-sm-5 { + padding-top: 3rem !important; + } + + .pr-sm-0 { + padding-right: 0 !important; + } + + .pr-sm-1 { + padding-right: 0.25rem !important; + } + + .pr-sm-2 { + padding-right: 0.5rem !important; + } + + .pr-sm-3 { + padding-right: 1rem !important; + } + + .pr-sm-4 { + padding-right: 1.5rem !important; + } + + .pr-sm-5 { + padding-right: 3rem !important; + } + + .pb-sm-0 { + padding-bottom: 0 !important; + } + + .pb-sm-1 { + padding-bottom: 0.25rem !important; + } + + .pb-sm-2 { + padding-bottom: 0.5rem !important; + } + + .pb-sm-3 { + padding-bottom: 1rem !important; + } + + .pb-sm-4 { + padding-bottom: 1.5rem !important; + } + + .pb-sm-5 { + padding-bottom: 3rem !important; + } + + .pl-sm-0 { + padding-left: 0 !important; + } + + .pl-sm-1 { + padding-left: 0.25rem !important; + } + + .pl-sm-2 { + padding-left: 0.5rem !important; + } + + .pl-sm-3 { + padding-left: 1rem !important; + } + + .pl-sm-4 { + padding-left: 1.5rem !important; + } + + .pl-sm-5 { + padding-left: 3rem !important; + } + + .text-sm-left { + text-align: left !important; + } + + .text-sm-right { + text-align: right !important; + } + + .text-sm-center { + text-align: center !important; + } +} +@media (min-width: 768px) { + .float-md-left { + float: left !important; + } + + .float-md-right { + float: right !important; + } + + .float-md-none { + float: none !important; + } + + .d-md-inline { + display: inline !important; + } + + .d-md-inline-block { + display: inline-block !important; + } + + .d-md-block { + display: block !important; + } + + .d-md-grid { + display: grid !important; + } + + .d-md-table { + display: table !important; + } + + .d-md-table-row { + display: table-row !important; + } + + .d-md-table-cell { + display: table-cell !important; + } + + .d-md-flex { + display: flex !important; + } + + .d-md-inline-flex { + display: inline-flex !important; + } + + .d-md-none { + display: none !important; + } + + .flex-md-fill { + flex: 1 1 auto !important; + } + + .flex-md-row { + flex-direction: row !important; + } + + .flex-md-column { + flex-direction: column !important; + } + + .flex-md-row-reverse { + flex-direction: row-reverse !important; + } + + .flex-md-column-reverse { + flex-direction: column-reverse !important; + } + + .flex-md-grow-0 { + flex-grow: 0 !important; + } + + .flex-md-grow-1 { + flex-grow: 1 !important; + } + + .flex-md-shrink-0 { + flex-shrink: 0 !important; + } + + .flex-md-shrink-1 { + flex-shrink: 1 !important; + } + + .flex-md-wrap { + flex-wrap: wrap !important; + } + + .flex-md-nowrap { + flex-wrap: nowrap !important; + } + + .flex-md-wrap-reverse { + flex-wrap: wrap-reverse !important; + } + + .gap-md-0 { + gap: 0 !important; + } + + .gap-md-1 { + gap: 0.25rem !important; + } + + .gap-md-2 { + gap: 0.5rem !important; + } + + .gap-md-3 { + gap: 1rem !important; + } + + .gap-md-4 { + gap: 1.5rem !important; + } + + .gap-md-5 { + gap: 3rem !important; + } + + .justify-content-md-start { + justify-content: flex-start !important; + } + + .justify-content-md-end { + justify-content: flex-end !important; + } + + .justify-content-md-center { + justify-content: center !important; + } + + .justify-content-md-between { + justify-content: space-between !important; + } + + .justify-content-md-around { + justify-content: space-around !important; + } + + .justify-content-md-evenly { + justify-content: space-evenly !important; + } + + .align-items-md-start { + align-items: flex-start !important; + } + + .align-items-md-end { + align-items: flex-end !important; + } + + .align-items-md-center { + align-items: center !important; + } + + .align-items-md-baseline { + align-items: baseline !important; + } + + .align-items-md-stretch { + align-items: stretch !important; + } + + .align-content-md-start { + align-content: flex-start !important; + } + + .align-content-md-end { + align-content: flex-end !important; + } + + .align-content-md-center { + align-content: center !important; + } + + .align-content-md-between { + align-content: space-between !important; + } + + .align-content-md-around { + align-content: space-around !important; + } + + .align-content-md-stretch { + align-content: stretch !important; + } + + .align-self-md-auto { + align-self: auto !important; + } + + .align-self-md-start { + align-self: flex-start !important; + } + + .align-self-md-end { + align-self: flex-end !important; + } + + .align-self-md-center { + align-self: center !important; + } + + .align-self-md-baseline { + align-self: baseline !important; + } + + .align-self-md-stretch { + align-self: stretch !important; + } + + .order-md-first { + order: -1 !important; + } + + .order-md-0 { + order: 0 !important; + } + + .order-md-1 { + order: 1 !important; + } + + .order-md-2 { + order: 2 !important; + } + + .order-md-3 { + order: 3 !important; + } + + .order-md-4 { + order: 4 !important; + } + + .order-md-5 { + order: 5 !important; + } + + .order-md-last { + order: 6 !important; + } + + .m-md-0 { + margin: 0 !important; + } + + .m-md-1 { + margin: 0.25rem !important; + } + + .m-md-2 { + margin: 0.5rem !important; + } + + .m-md-3 { + margin: 1rem !important; + } + + .m-md-4 { + margin: 1.5rem !important; + } + + .m-md-5 { + margin: 3rem !important; + } + + .m-md-auto { + margin: auto !important; + } + + .mx-md-0 { + margin-right: 0 !important; + margin-left: 0 !important; + } + + .mx-md-1 { + margin-right: 0.25rem !important; + margin-left: 0.25rem !important; + } + + .mx-md-2 { + margin-right: 0.5rem !important; + margin-left: 0.5rem !important; + } + + .mx-md-3 { + margin-right: 1rem !important; + margin-left: 1rem !important; + } + + .mx-md-4 { + margin-right: 1.5rem !important; + margin-left: 1.5rem !important; + } + + .mx-md-5 { + margin-right: 3rem !important; + margin-left: 3rem !important; + } + + .mx-md-auto { + margin-right: auto !important; + margin-left: auto !important; + } + + .my-md-0 { + margin-top: 0 !important; + margin-bottom: 0 !important; + } + + .my-md-1 { + margin-top: 0.25rem !important; + margin-bottom: 0.25rem !important; + } + + .my-md-2 { + margin-top: 0.5rem !important; + margin-bottom: 0.5rem !important; + } + + .my-md-3 { + margin-top: 1rem !important; + margin-bottom: 1rem !important; + } + + .my-md-4 { + margin-top: 1.5rem !important; + margin-bottom: 1.5rem !important; + } + + .my-md-5 { + margin-top: 3rem !important; + margin-bottom: 3rem !important; + } + + .my-md-auto { + margin-top: auto !important; + margin-bottom: auto !important; + } + + .mt-md-0 { + margin-top: 0 !important; + } + + .mt-md-1 { + margin-top: 0.25rem !important; + } + + .mt-md-2 { + margin-top: 0.5rem !important; + } + + .mt-md-3 { + margin-top: 1rem !important; + } + + .mt-md-4 { + margin-top: 1.5rem !important; + } + + .mt-md-5 { + margin-top: 3rem !important; + } + + .mt-md-auto { + margin-top: auto !important; + } + + .mr-md-0 { + margin-right: 0 !important; + } + + .mr-md-1 { + margin-right: 0.25rem !important; + } + + .mr-md-2 { + margin-right: 0.5rem !important; + } + + .mr-md-3 { + margin-right: 1rem !important; + } + + .mr-md-4 { + margin-right: 1.5rem !important; + } + + .mr-md-5 { + margin-right: 3rem !important; + } + + .mr-md-auto { + margin-right: auto !important; + } + + .mb-md-0 { + margin-bottom: 0 !important; + } + + .mb-md-1 { + margin-bottom: 0.25rem !important; + } + + .mb-md-2 { + margin-bottom: 0.5rem !important; + } + + .mb-md-3 { + margin-bottom: 1rem !important; + } + + .mb-md-4 { + margin-bottom: 1.5rem !important; + } + + .mb-md-5 { + margin-bottom: 3rem !important; + } + + .mb-md-auto { + margin-bottom: auto !important; + } + + .ml-md-0 { + margin-left: 0 !important; + } + + .ml-md-1 { + margin-left: 0.25rem !important; + } + + .ml-md-2 { + margin-left: 0.5rem !important; + } + + .ml-md-3 { + margin-left: 1rem !important; + } + + .ml-md-4 { + margin-left: 1.5rem !important; + } + + .ml-md-5 { + margin-left: 3rem !important; + } + + .ml-md-auto { + margin-left: auto !important; + } + + .m-md-n1 { + margin: -0.25rem !important; + } + + .m-md-n2 { + margin: -0.5rem !important; + } + + .m-md-n3 { + margin: -1rem !important; + } + + .m-md-n4 { + margin: -1.5rem !important; + } + + .m-md-n5 { + margin: -3rem !important; + } + + .mx-md-n1 { + margin-right: -0.25rem !important; + margin-left: -0.25rem !important; + } + + .mx-md-n2 { + margin-right: -0.5rem !important; + margin-left: -0.5rem !important; + } + + .mx-md-n3 { + margin-right: -1rem !important; + margin-left: -1rem !important; + } + + .mx-md-n4 { + margin-right: -1.5rem !important; + margin-left: -1.5rem !important; + } + + .mx-md-n5 { + margin-right: -3rem !important; + margin-left: -3rem !important; + } + + .my-md-n1 { + margin-top: -0.25rem !important; + margin-bottom: -0.25rem !important; + } + + .my-md-n2 { + margin-top: -0.5rem !important; + margin-bottom: -0.5rem !important; + } + + .my-md-n3 { + margin-top: -1rem !important; + margin-bottom: -1rem !important; + } + + .my-md-n4 { + margin-top: -1.5rem !important; + margin-bottom: -1.5rem !important; + } + + .my-md-n5 { + margin-top: -3rem !important; + margin-bottom: -3rem !important; + } + + .mt-md-n1 { + margin-top: -0.25rem !important; + } + + .mt-md-n2 { + margin-top: -0.5rem !important; + } + + .mt-md-n3 { + margin-top: -1rem !important; + } + + .mt-md-n4 { + margin-top: -1.5rem !important; + } + + .mt-md-n5 { + margin-top: -3rem !important; + } + + .mr-md-n1 { + margin-right: -0.25rem !important; + } + + .mr-md-n2 { + margin-right: -0.5rem !important; + } + + .mr-md-n3 { + margin-right: -1rem !important; + } + + .mr-md-n4 { + margin-right: -1.5rem !important; + } + + .mr-md-n5 { + margin-right: -3rem !important; + } + + .mb-md-n1 { + margin-bottom: -0.25rem !important; + } + + .mb-md-n2 { + margin-bottom: -0.5rem !important; + } + + .mb-md-n3 { + margin-bottom: -1rem !important; + } + + .mb-md-n4 { + margin-bottom: -1.5rem !important; + } + + .mb-md-n5 { + margin-bottom: -3rem !important; + } + + .ml-md-n1 { + margin-left: -0.25rem !important; + } + + .ml-md-n2 { + margin-left: -0.5rem !important; + } + + .ml-md-n3 { + margin-left: -1rem !important; + } + + .ml-md-n4 { + margin-left: -1.5rem !important; + } + + .ml-md-n5 { + margin-left: -3rem !important; + } + + .p-md-0 { + padding: 0 !important; + } + + .p-md-1 { + padding: 0.25rem !important; + } + + .p-md-2 { + padding: 0.5rem !important; + } + + .p-md-3 { + padding: 1rem !important; + } + + .p-md-4 { + padding: 1.5rem !important; + } + + .p-md-5 { + padding: 3rem !important; + } + + .px-md-0 { + padding-right: 0 !important; + padding-left: 0 !important; + } + + .px-md-1 { + padding-right: 0.25rem !important; + padding-left: 0.25rem !important; + } + + .px-md-2 { + padding-right: 0.5rem !important; + padding-left: 0.5rem !important; + } + + .px-md-3 { + padding-right: 1rem !important; + padding-left: 1rem !important; + } + + .px-md-4 { + padding-right: 1.5rem !important; + padding-left: 1.5rem !important; + } + + .px-md-5 { + padding-right: 3rem !important; + padding-left: 3rem !important; + } + + .py-md-0 { + padding-top: 0 !important; + padding-bottom: 0 !important; + } + + .py-md-1 { + padding-top: 0.25rem !important; + padding-bottom: 0.25rem !important; + } + + .py-md-2 { + padding-top: 0.5rem !important; + padding-bottom: 0.5rem !important; + } + + .py-md-3 { + padding-top: 1rem !important; + padding-bottom: 1rem !important; + } + + .py-md-4 { + padding-top: 1.5rem !important; + padding-bottom: 1.5rem !important; + } + + .py-md-5 { + padding-top: 3rem !important; + padding-bottom: 3rem !important; + } + + .pt-md-0 { + padding-top: 0 !important; + } + + .pt-md-1 { + padding-top: 0.25rem !important; + } + + .pt-md-2 { + padding-top: 0.5rem !important; + } + + .pt-md-3 { + padding-top: 1rem !important; + } + + .pt-md-4 { + padding-top: 1.5rem !important; + } + + .pt-md-5 { + padding-top: 3rem !important; + } + + .pr-md-0 { + padding-right: 0 !important; + } + + .pr-md-1 { + padding-right: 0.25rem !important; + } + + .pr-md-2 { + padding-right: 0.5rem !important; + } + + .pr-md-3 { + padding-right: 1rem !important; + } + + .pr-md-4 { + padding-right: 1.5rem !important; + } + + .pr-md-5 { + padding-right: 3rem !important; + } + + .pb-md-0 { + padding-bottom: 0 !important; + } + + .pb-md-1 { + padding-bottom: 0.25rem !important; + } + + .pb-md-2 { + padding-bottom: 0.5rem !important; + } + + .pb-md-3 { + padding-bottom: 1rem !important; + } + + .pb-md-4 { + padding-bottom: 1.5rem !important; + } + + .pb-md-5 { + padding-bottom: 3rem !important; + } + + .pl-md-0 { + padding-left: 0 !important; + } + + .pl-md-1 { + padding-left: 0.25rem !important; + } + + .pl-md-2 { + padding-left: 0.5rem !important; + } + + .pl-md-3 { + padding-left: 1rem !important; + } + + .pl-md-4 { + padding-left: 1.5rem !important; + } + + .pl-md-5 { + padding-left: 3rem !important; + } + + .text-md-left { + text-align: left !important; + } + + .text-md-right { + text-align: right !important; + } + + .text-md-center { + text-align: center !important; + } +} +@media (min-width: 992px) { + .float-lg-left { + float: left !important; + } + + .float-lg-right { + float: right !important; + } + + .float-lg-none { + float: none !important; + } + + .d-lg-inline { + display: inline !important; + } + + .d-lg-inline-block { + display: inline-block !important; + } + + .d-lg-block { + display: block !important; + } + + .d-lg-grid { + display: grid !important; + } + + .d-lg-table { + display: table !important; + } + + .d-lg-table-row { + display: table-row !important; + } + + .d-lg-table-cell { + display: table-cell !important; + } + + .d-lg-flex { + display: flex !important; + } + + .d-lg-inline-flex { + display: inline-flex !important; + } + + .d-lg-none { + display: none !important; + } + + .flex-lg-fill { + flex: 1 1 auto !important; + } + + .flex-lg-row { + flex-direction: row !important; + } + + .flex-lg-column { + flex-direction: column !important; + } + + .flex-lg-row-reverse { + flex-direction: row-reverse !important; + } + + .flex-lg-column-reverse { + flex-direction: column-reverse !important; + } + + .flex-lg-grow-0 { + flex-grow: 0 !important; + } + + .flex-lg-grow-1 { + flex-grow: 1 !important; + } + + .flex-lg-shrink-0 { + flex-shrink: 0 !important; + } + + .flex-lg-shrink-1 { + flex-shrink: 1 !important; + } + + .flex-lg-wrap { + flex-wrap: wrap !important; + } + + .flex-lg-nowrap { + flex-wrap: nowrap !important; + } + + .flex-lg-wrap-reverse { + flex-wrap: wrap-reverse !important; + } + + .gap-lg-0 { + gap: 0 !important; + } + + .gap-lg-1 { + gap: 0.25rem !important; + } + + .gap-lg-2 { + gap: 0.5rem !important; + } + + .gap-lg-3 { + gap: 1rem !important; + } + + .gap-lg-4 { + gap: 1.5rem !important; + } + + .gap-lg-5 { + gap: 3rem !important; + } + + .justify-content-lg-start { + justify-content: flex-start !important; + } + + .justify-content-lg-end { + justify-content: flex-end !important; + } + + .justify-content-lg-center { + justify-content: center !important; + } + + .justify-content-lg-between { + justify-content: space-between !important; + } + + .justify-content-lg-around { + justify-content: space-around !important; + } + + .justify-content-lg-evenly { + justify-content: space-evenly !important; + } + + .align-items-lg-start { + align-items: flex-start !important; + } + + .align-items-lg-end { + align-items: flex-end !important; + } + + .align-items-lg-center { + align-items: center !important; + } + + .align-items-lg-baseline { + align-items: baseline !important; + } + + .align-items-lg-stretch { + align-items: stretch !important; + } + + .align-content-lg-start { + align-content: flex-start !important; + } + + .align-content-lg-end { + align-content: flex-end !important; + } + + .align-content-lg-center { + align-content: center !important; + } + + .align-content-lg-between { + align-content: space-between !important; + } + + .align-content-lg-around { + align-content: space-around !important; + } + + .align-content-lg-stretch { + align-content: stretch !important; + } + + .align-self-lg-auto { + align-self: auto !important; + } + + .align-self-lg-start { + align-self: flex-start !important; + } + + .align-self-lg-end { + align-self: flex-end !important; + } + + .align-self-lg-center { + align-self: center !important; + } + + .align-self-lg-baseline { + align-self: baseline !important; + } + + .align-self-lg-stretch { + align-self: stretch !important; + } + + .order-lg-first { + order: -1 !important; + } + + .order-lg-0 { + order: 0 !important; + } + + .order-lg-1 { + order: 1 !important; + } + + .order-lg-2 { + order: 2 !important; + } + + .order-lg-3 { + order: 3 !important; + } + + .order-lg-4 { + order: 4 !important; + } + + .order-lg-5 { + order: 5 !important; + } + + .order-lg-last { + order: 6 !important; + } + + .m-lg-0 { + margin: 0 !important; + } + + .m-lg-1 { + margin: 0.25rem !important; + } + + .m-lg-2 { + margin: 0.5rem !important; + } + + .m-lg-3 { + margin: 1rem !important; + } + + .m-lg-4 { + margin: 1.5rem !important; + } + + .m-lg-5 { + margin: 3rem !important; + } + + .m-lg-auto { + margin: auto !important; + } + + .mx-lg-0 { + margin-right: 0 !important; + margin-left: 0 !important; + } + + .mx-lg-1 { + margin-right: 0.25rem !important; + margin-left: 0.25rem !important; + } + + .mx-lg-2 { + margin-right: 0.5rem !important; + margin-left: 0.5rem !important; + } + + .mx-lg-3 { + margin-right: 1rem !important; + margin-left: 1rem !important; + } + + .mx-lg-4 { + margin-right: 1.5rem !important; + margin-left: 1.5rem !important; + } + + .mx-lg-5 { + margin-right: 3rem !important; + margin-left: 3rem !important; + } + + .mx-lg-auto { + margin-right: auto !important; + margin-left: auto !important; + } + + .my-lg-0 { + margin-top: 0 !important; + margin-bottom: 0 !important; + } + + .my-lg-1 { + margin-top: 0.25rem !important; + margin-bottom: 0.25rem !important; + } + + .my-lg-2 { + margin-top: 0.5rem !important; + margin-bottom: 0.5rem !important; + } + + .my-lg-3 { + margin-top: 1rem !important; + margin-bottom: 1rem !important; + } + + .my-lg-4 { + margin-top: 1.5rem !important; + margin-bottom: 1.5rem !important; + } + + .my-lg-5 { + margin-top: 3rem !important; + margin-bottom: 3rem !important; + } + + .my-lg-auto { + margin-top: auto !important; + margin-bottom: auto !important; + } + + .mt-lg-0 { + margin-top: 0 !important; + } + + .mt-lg-1 { + margin-top: 0.25rem !important; + } + + .mt-lg-2 { + margin-top: 0.5rem !important; + } + + .mt-lg-3 { + margin-top: 1rem !important; + } + + .mt-lg-4 { + margin-top: 1.5rem !important; + } + + .mt-lg-5 { + margin-top: 3rem !important; + } + + .mt-lg-auto { + margin-top: auto !important; + } + + .mr-lg-0 { + margin-right: 0 !important; + } + + .mr-lg-1 { + margin-right: 0.25rem !important; + } + + .mr-lg-2 { + margin-right: 0.5rem !important; + } + + .mr-lg-3 { + margin-right: 1rem !important; + } + + .mr-lg-4 { + margin-right: 1.5rem !important; + } + + .mr-lg-5 { + margin-right: 3rem !important; + } + + .mr-lg-auto { + margin-right: auto !important; + } + + .mb-lg-0 { + margin-bottom: 0 !important; + } + + .mb-lg-1 { + margin-bottom: 0.25rem !important; + } + + .mb-lg-2 { + margin-bottom: 0.5rem !important; + } + + .mb-lg-3 { + margin-bottom: 1rem !important; + } + + .mb-lg-4 { + margin-bottom: 1.5rem !important; + } + + .mb-lg-5 { + margin-bottom: 3rem !important; + } + + .mb-lg-auto { + margin-bottom: auto !important; + } + + .ml-lg-0 { + margin-left: 0 !important; + } + + .ml-lg-1 { + margin-left: 0.25rem !important; + } + + .ml-lg-2 { + margin-left: 0.5rem !important; + } + + .ml-lg-3 { + margin-left: 1rem !important; + } + + .ml-lg-4 { + margin-left: 1.5rem !important; + } + + .ml-lg-5 { + margin-left: 3rem !important; + } + + .ml-lg-auto { + margin-left: auto !important; + } + + .m-lg-n1 { + margin: -0.25rem !important; + } + + .m-lg-n2 { + margin: -0.5rem !important; + } + + .m-lg-n3 { + margin: -1rem !important; + } + + .m-lg-n4 { + margin: -1.5rem !important; + } + + .m-lg-n5 { + margin: -3rem !important; + } + + .mx-lg-n1 { + margin-right: -0.25rem !important; + margin-left: -0.25rem !important; + } + + .mx-lg-n2 { + margin-right: -0.5rem !important; + margin-left: -0.5rem !important; + } + + .mx-lg-n3 { + margin-right: -1rem !important; + margin-left: -1rem !important; + } + + .mx-lg-n4 { + margin-right: -1.5rem !important; + margin-left: -1.5rem !important; + } + + .mx-lg-n5 { + margin-right: -3rem !important; + margin-left: -3rem !important; + } + + .my-lg-n1 { + margin-top: -0.25rem !important; + margin-bottom: -0.25rem !important; + } + + .my-lg-n2 { + margin-top: -0.5rem !important; + margin-bottom: -0.5rem !important; + } + + .my-lg-n3 { + margin-top: -1rem !important; + margin-bottom: -1rem !important; + } + + .my-lg-n4 { + margin-top: -1.5rem !important; + margin-bottom: -1.5rem !important; + } + + .my-lg-n5 { + margin-top: -3rem !important; + margin-bottom: -3rem !important; + } + + .mt-lg-n1 { + margin-top: -0.25rem !important; + } + + .mt-lg-n2 { + margin-top: -0.5rem !important; + } + + .mt-lg-n3 { + margin-top: -1rem !important; + } + + .mt-lg-n4 { + margin-top: -1.5rem !important; + } + + .mt-lg-n5 { + margin-top: -3rem !important; + } + + .mr-lg-n1 { + margin-right: -0.25rem !important; + } + + .mr-lg-n2 { + margin-right: -0.5rem !important; + } + + .mr-lg-n3 { + margin-right: -1rem !important; + } + + .mr-lg-n4 { + margin-right: -1.5rem !important; + } + + .mr-lg-n5 { + margin-right: -3rem !important; + } + + .mb-lg-n1 { + margin-bottom: -0.25rem !important; + } + + .mb-lg-n2 { + margin-bottom: -0.5rem !important; + } + + .mb-lg-n3 { + margin-bottom: -1rem !important; + } + + .mb-lg-n4 { + margin-bottom: -1.5rem !important; + } + + .mb-lg-n5 { + margin-bottom: -3rem !important; + } + + .ml-lg-n1 { + margin-left: -0.25rem !important; + } + + .ml-lg-n2 { + margin-left: -0.5rem !important; + } + + .ml-lg-n3 { + margin-left: -1rem !important; + } + + .ml-lg-n4 { + margin-left: -1.5rem !important; + } + + .ml-lg-n5 { + margin-left: -3rem !important; + } + + .p-lg-0 { + padding: 0 !important; + } + + .p-lg-1 { + padding: 0.25rem !important; + } + + .p-lg-2 { + padding: 0.5rem !important; + } + + .p-lg-3 { + padding: 1rem !important; + } + + .p-lg-4 { + padding: 1.5rem !important; + } + + .p-lg-5 { + padding: 3rem !important; + } + + .px-lg-0 { + padding-right: 0 !important; + padding-left: 0 !important; + } + + .px-lg-1 { + padding-right: 0.25rem !important; + padding-left: 0.25rem !important; + } + + .px-lg-2 { + padding-right: 0.5rem !important; + padding-left: 0.5rem !important; + } + + .px-lg-3 { + padding-right: 1rem !important; + padding-left: 1rem !important; + } + + .px-lg-4 { + padding-right: 1.5rem !important; + padding-left: 1.5rem !important; + } + + .px-lg-5 { + padding-right: 3rem !important; + padding-left: 3rem !important; + } + + .py-lg-0 { + padding-top: 0 !important; + padding-bottom: 0 !important; + } + + .py-lg-1 { + padding-top: 0.25rem !important; + padding-bottom: 0.25rem !important; + } + + .py-lg-2 { + padding-top: 0.5rem !important; + padding-bottom: 0.5rem !important; + } + + .py-lg-3 { + padding-top: 1rem !important; + padding-bottom: 1rem !important; + } + + .py-lg-4 { + padding-top: 1.5rem !important; + padding-bottom: 1.5rem !important; + } + + .py-lg-5 { + padding-top: 3rem !important; + padding-bottom: 3rem !important; + } + + .pt-lg-0 { + padding-top: 0 !important; + } + + .pt-lg-1 { + padding-top: 0.25rem !important; + } + + .pt-lg-2 { + padding-top: 0.5rem !important; + } + + .pt-lg-3 { + padding-top: 1rem !important; + } + + .pt-lg-4 { + padding-top: 1.5rem !important; + } + + .pt-lg-5 { + padding-top: 3rem !important; + } + + .pr-lg-0 { + padding-right: 0 !important; + } + + .pr-lg-1 { + padding-right: 0.25rem !important; + } + + .pr-lg-2 { + padding-right: 0.5rem !important; + } + + .pr-lg-3 { + padding-right: 1rem !important; + } + + .pr-lg-4 { + padding-right: 1.5rem !important; + } + + .pr-lg-5 { + padding-right: 3rem !important; + } + + .pb-lg-0 { + padding-bottom: 0 !important; + } + + .pb-lg-1 { + padding-bottom: 0.25rem !important; + } + + .pb-lg-2 { + padding-bottom: 0.5rem !important; + } + + .pb-lg-3 { + padding-bottom: 1rem !important; + } + + .pb-lg-4 { + padding-bottom: 1.5rem !important; + } + + .pb-lg-5 { + padding-bottom: 3rem !important; + } + + .pl-lg-0 { + padding-left: 0 !important; + } + + .pl-lg-1 { + padding-left: 0.25rem !important; + } + + .pl-lg-2 { + padding-left: 0.5rem !important; + } + + .pl-lg-3 { + padding-left: 1rem !important; + } + + .pl-lg-4 { + padding-left: 1.5rem !important; + } + + .pl-lg-5 { + padding-left: 3rem !important; + } + + .text-lg-left { + text-align: left !important; + } + + .text-lg-right { + text-align: right !important; + } + + .text-lg-center { + text-align: center !important; + } +} +@media (min-width: 1200px) { + .float-xl-left { + float: left !important; + } + + .float-xl-right { + float: right !important; + } + + .float-xl-none { + float: none !important; + } + + .d-xl-inline { + display: inline !important; + } + + .d-xl-inline-block { + display: inline-block !important; + } + + .d-xl-block { + display: block !important; + } + + .d-xl-grid { + display: grid !important; + } + + .d-xl-table { + display: table !important; + } + + .d-xl-table-row { + display: table-row !important; + } + + .d-xl-table-cell { + display: table-cell !important; + } + + .d-xl-flex { + display: flex !important; + } + + .d-xl-inline-flex { + display: inline-flex !important; + } + + .d-xl-none { + display: none !important; + } + + .flex-xl-fill { + flex: 1 1 auto !important; + } + + .flex-xl-row { + flex-direction: row !important; + } + + .flex-xl-column { + flex-direction: column !important; + } + + .flex-xl-row-reverse { + flex-direction: row-reverse !important; + } + + .flex-xl-column-reverse { + flex-direction: column-reverse !important; + } + + .flex-xl-grow-0 { + flex-grow: 0 !important; + } + + .flex-xl-grow-1 { + flex-grow: 1 !important; + } + + .flex-xl-shrink-0 { + flex-shrink: 0 !important; + } + + .flex-xl-shrink-1 { + flex-shrink: 1 !important; + } + + .flex-xl-wrap { + flex-wrap: wrap !important; + } + + .flex-xl-nowrap { + flex-wrap: nowrap !important; + } + + .flex-xl-wrap-reverse { + flex-wrap: wrap-reverse !important; + } + + .gap-xl-0 { + gap: 0 !important; + } + + .gap-xl-1 { + gap: 0.25rem !important; + } + + .gap-xl-2 { + gap: 0.5rem !important; + } + + .gap-xl-3 { + gap: 1rem !important; + } + + .gap-xl-4 { + gap: 1.5rem !important; + } + + .gap-xl-5 { + gap: 3rem !important; + } + + .justify-content-xl-start { + justify-content: flex-start !important; + } + + .justify-content-xl-end { + justify-content: flex-end !important; + } + + .justify-content-xl-center { + justify-content: center !important; + } + + .justify-content-xl-between { + justify-content: space-between !important; + } + + .justify-content-xl-around { + justify-content: space-around !important; + } + + .justify-content-xl-evenly { + justify-content: space-evenly !important; + } + + .align-items-xl-start { + align-items: flex-start !important; + } + + .align-items-xl-end { + align-items: flex-end !important; + } + + .align-items-xl-center { + align-items: center !important; + } + + .align-items-xl-baseline { + align-items: baseline !important; + } + + .align-items-xl-stretch { + align-items: stretch !important; + } + + .align-content-xl-start { + align-content: flex-start !important; + } + + .align-content-xl-end { + align-content: flex-end !important; + } + + .align-content-xl-center { + align-content: center !important; + } + + .align-content-xl-between { + align-content: space-between !important; + } + + .align-content-xl-around { + align-content: space-around !important; + } + + .align-content-xl-stretch { + align-content: stretch !important; + } + + .align-self-xl-auto { + align-self: auto !important; + } + + .align-self-xl-start { + align-self: flex-start !important; + } + + .align-self-xl-end { + align-self: flex-end !important; + } + + .align-self-xl-center { + align-self: center !important; + } + + .align-self-xl-baseline { + align-self: baseline !important; + } + + .align-self-xl-stretch { + align-self: stretch !important; + } + + .order-xl-first { + order: -1 !important; + } + + .order-xl-0 { + order: 0 !important; + } + + .order-xl-1 { + order: 1 !important; + } + + .order-xl-2 { + order: 2 !important; + } + + .order-xl-3 { + order: 3 !important; + } + + .order-xl-4 { + order: 4 !important; + } + + .order-xl-5 { + order: 5 !important; + } + + .order-xl-last { + order: 6 !important; + } + + .m-xl-0 { + margin: 0 !important; + } + + .m-xl-1 { + margin: 0.25rem !important; + } + + .m-xl-2 { + margin: 0.5rem !important; + } + + .m-xl-3 { + margin: 1rem !important; + } + + .m-xl-4 { + margin: 1.5rem !important; + } + + .m-xl-5 { + margin: 3rem !important; + } + + .m-xl-auto { + margin: auto !important; + } + + .mx-xl-0 { + margin-right: 0 !important; + margin-left: 0 !important; + } + + .mx-xl-1 { + margin-right: 0.25rem !important; + margin-left: 0.25rem !important; + } + + .mx-xl-2 { + margin-right: 0.5rem !important; + margin-left: 0.5rem !important; + } + + .mx-xl-3 { + margin-right: 1rem !important; + margin-left: 1rem !important; + } + + .mx-xl-4 { + margin-right: 1.5rem !important; + margin-left: 1.5rem !important; + } + + .mx-xl-5 { + margin-right: 3rem !important; + margin-left: 3rem !important; + } + + .mx-xl-auto { + margin-right: auto !important; + margin-left: auto !important; + } + + .my-xl-0 { + margin-top: 0 !important; + margin-bottom: 0 !important; + } + + .my-xl-1 { + margin-top: 0.25rem !important; + margin-bottom: 0.25rem !important; + } + + .my-xl-2 { + margin-top: 0.5rem !important; + margin-bottom: 0.5rem !important; + } + + .my-xl-3 { + margin-top: 1rem !important; + margin-bottom: 1rem !important; + } + + .my-xl-4 { + margin-top: 1.5rem !important; + margin-bottom: 1.5rem !important; + } + + .my-xl-5 { + margin-top: 3rem !important; + margin-bottom: 3rem !important; + } + + .my-xl-auto { + margin-top: auto !important; + margin-bottom: auto !important; + } + + .mt-xl-0 { + margin-top: 0 !important; + } + + .mt-xl-1 { + margin-top: 0.25rem !important; + } + + .mt-xl-2 { + margin-top: 0.5rem !important; + } + + .mt-xl-3 { + margin-top: 1rem !important; + } + + .mt-xl-4 { + margin-top: 1.5rem !important; + } + + .mt-xl-5 { + margin-top: 3rem !important; + } + + .mt-xl-auto { + margin-top: auto !important; + } + + .mr-xl-0 { + margin-right: 0 !important; + } + + .mr-xl-1 { + margin-right: 0.25rem !important; + } + + .mr-xl-2 { + margin-right: 0.5rem !important; + } + + .mr-xl-3 { + margin-right: 1rem !important; + } + + .mr-xl-4 { + margin-right: 1.5rem !important; + } + + .mr-xl-5 { + margin-right: 3rem !important; + } + + .mr-xl-auto { + margin-right: auto !important; + } + + .mb-xl-0 { + margin-bottom: 0 !important; + } + + .mb-xl-1 { + margin-bottom: 0.25rem !important; + } + + .mb-xl-2 { + margin-bottom: 0.5rem !important; + } + + .mb-xl-3 { + margin-bottom: 1rem !important; + } + + .mb-xl-4 { + margin-bottom: 1.5rem !important; + } + + .mb-xl-5 { + margin-bottom: 3rem !important; + } + + .mb-xl-auto { + margin-bottom: auto !important; + } + + .ml-xl-0 { + margin-left: 0 !important; + } + + .ml-xl-1 { + margin-left: 0.25rem !important; + } + + .ml-xl-2 { + margin-left: 0.5rem !important; + } + + .ml-xl-3 { + margin-left: 1rem !important; + } + + .ml-xl-4 { + margin-left: 1.5rem !important; + } + + .ml-xl-5 { + margin-left: 3rem !important; + } + + .ml-xl-auto { + margin-left: auto !important; + } + + .m-xl-n1 { + margin: -0.25rem !important; + } + + .m-xl-n2 { + margin: -0.5rem !important; + } + + .m-xl-n3 { + margin: -1rem !important; + } + + .m-xl-n4 { + margin: -1.5rem !important; + } + + .m-xl-n5 { + margin: -3rem !important; + } + + .mx-xl-n1 { + margin-right: -0.25rem !important; + margin-left: -0.25rem !important; + } + + .mx-xl-n2 { + margin-right: -0.5rem !important; + margin-left: -0.5rem !important; + } + + .mx-xl-n3 { + margin-right: -1rem !important; + margin-left: -1rem !important; + } + + .mx-xl-n4 { + margin-right: -1.5rem !important; + margin-left: -1.5rem !important; + } + + .mx-xl-n5 { + margin-right: -3rem !important; + margin-left: -3rem !important; + } + + .my-xl-n1 { + margin-top: -0.25rem !important; + margin-bottom: -0.25rem !important; + } + + .my-xl-n2 { + margin-top: -0.5rem !important; + margin-bottom: -0.5rem !important; + } + + .my-xl-n3 { + margin-top: -1rem !important; + margin-bottom: -1rem !important; + } + + .my-xl-n4 { + margin-top: -1.5rem !important; + margin-bottom: -1.5rem !important; + } + + .my-xl-n5 { + margin-top: -3rem !important; + margin-bottom: -3rem !important; + } + + .mt-xl-n1 { + margin-top: -0.25rem !important; + } + + .mt-xl-n2 { + margin-top: -0.5rem !important; + } + + .mt-xl-n3 { + margin-top: -1rem !important; + } + + .mt-xl-n4 { + margin-top: -1.5rem !important; + } + + .mt-xl-n5 { + margin-top: -3rem !important; + } + + .mr-xl-n1 { + margin-right: -0.25rem !important; + } + + .mr-xl-n2 { + margin-right: -0.5rem !important; + } + + .mr-xl-n3 { + margin-right: -1rem !important; + } + + .mr-xl-n4 { + margin-right: -1.5rem !important; + } + + .mr-xl-n5 { + margin-right: -3rem !important; + } + + .mb-xl-n1 { + margin-bottom: -0.25rem !important; + } + + .mb-xl-n2 { + margin-bottom: -0.5rem !important; + } + + .mb-xl-n3 { + margin-bottom: -1rem !important; + } + + .mb-xl-n4 { + margin-bottom: -1.5rem !important; + } + + .mb-xl-n5 { + margin-bottom: -3rem !important; + } + + .ml-xl-n1 { + margin-left: -0.25rem !important; + } + + .ml-xl-n2 { + margin-left: -0.5rem !important; + } + + .ml-xl-n3 { + margin-left: -1rem !important; + } + + .ml-xl-n4 { + margin-left: -1.5rem !important; + } + + .ml-xl-n5 { + margin-left: -3rem !important; + } + + .p-xl-0 { + padding: 0 !important; + } + + .p-xl-1 { + padding: 0.25rem !important; + } + + .p-xl-2 { + padding: 0.5rem !important; + } + + .p-xl-3 { + padding: 1rem !important; + } + + .p-xl-4 { + padding: 1.5rem !important; + } + + .p-xl-5 { + padding: 3rem !important; + } + + .px-xl-0 { + padding-right: 0 !important; + padding-left: 0 !important; + } + + .px-xl-1 { + padding-right: 0.25rem !important; + padding-left: 0.25rem !important; + } + + .px-xl-2 { + padding-right: 0.5rem !important; + padding-left: 0.5rem !important; + } + + .px-xl-3 { + padding-right: 1rem !important; + padding-left: 1rem !important; + } + + .px-xl-4 { + padding-right: 1.5rem !important; + padding-left: 1.5rem !important; + } + + .px-xl-5 { + padding-right: 3rem !important; + padding-left: 3rem !important; + } + + .py-xl-0 { + padding-top: 0 !important; + padding-bottom: 0 !important; + } + + .py-xl-1 { + padding-top: 0.25rem !important; + padding-bottom: 0.25rem !important; + } + + .py-xl-2 { + padding-top: 0.5rem !important; + padding-bottom: 0.5rem !important; + } + + .py-xl-3 { + padding-top: 1rem !important; + padding-bottom: 1rem !important; + } + + .py-xl-4 { + padding-top: 1.5rem !important; + padding-bottom: 1.5rem !important; + } + + .py-xl-5 { + padding-top: 3rem !important; + padding-bottom: 3rem !important; + } + + .pt-xl-0 { + padding-top: 0 !important; + } + + .pt-xl-1 { + padding-top: 0.25rem !important; + } + + .pt-xl-2 { + padding-top: 0.5rem !important; + } + + .pt-xl-3 { + padding-top: 1rem !important; + } + + .pt-xl-4 { + padding-top: 1.5rem !important; + } + + .pt-xl-5 { + padding-top: 3rem !important; + } + + .pr-xl-0 { + padding-right: 0 !important; + } + + .pr-xl-1 { + padding-right: 0.25rem !important; + } + + .pr-xl-2 { + padding-right: 0.5rem !important; + } + + .pr-xl-3 { + padding-right: 1rem !important; + } + + .pr-xl-4 { + padding-right: 1.5rem !important; + } + + .pr-xl-5 { + padding-right: 3rem !important; + } + + .pb-xl-0 { + padding-bottom: 0 !important; + } + + .pb-xl-1 { + padding-bottom: 0.25rem !important; + } + + .pb-xl-2 { + padding-bottom: 0.5rem !important; + } + + .pb-xl-3 { + padding-bottom: 1rem !important; + } + + .pb-xl-4 { + padding-bottom: 1.5rem !important; + } + + .pb-xl-5 { + padding-bottom: 3rem !important; + } + + .pl-xl-0 { + padding-left: 0 !important; + } + + .pl-xl-1 { + padding-left: 0.25rem !important; + } + + .pl-xl-2 { + padding-left: 0.5rem !important; + } + + .pl-xl-3 { + padding-left: 1rem !important; + } + + .pl-xl-4 { + padding-left: 1.5rem !important; + } + + .pl-xl-5 { + padding-left: 3rem !important; + } + + .text-xl-left { + text-align: left !important; + } + + .text-xl-right { + text-align: right !important; + } + + .text-xl-center { + text-align: center !important; + } +} +@media (min-width: 1400px) { + .float-xxl-left { + float: left !important; + } + + .float-xxl-right { + float: right !important; + } + + .float-xxl-none { + float: none !important; + } + + .d-xxl-inline { + display: inline !important; + } + + .d-xxl-inline-block { + display: inline-block !important; + } + + .d-xxl-block { + display: block !important; + } + + .d-xxl-grid { + display: grid !important; + } + + .d-xxl-table { + display: table !important; + } + + .d-xxl-table-row { + display: table-row !important; + } + + .d-xxl-table-cell { + display: table-cell !important; + } + + .d-xxl-flex { + display: flex !important; + } + + .d-xxl-inline-flex { + display: inline-flex !important; + } + + .d-xxl-none { + display: none !important; + } + + .flex-xxl-fill { + flex: 1 1 auto !important; + } + + .flex-xxl-row { + flex-direction: row !important; + } + + .flex-xxl-column { + flex-direction: column !important; + } + + .flex-xxl-row-reverse { + flex-direction: row-reverse !important; + } + + .flex-xxl-column-reverse { + flex-direction: column-reverse !important; + } + + .flex-xxl-grow-0 { + flex-grow: 0 !important; + } + + .flex-xxl-grow-1 { + flex-grow: 1 !important; + } + + .flex-xxl-shrink-0 { + flex-shrink: 0 !important; + } + + .flex-xxl-shrink-1 { + flex-shrink: 1 !important; + } + + .flex-xxl-wrap { + flex-wrap: wrap !important; + } + + .flex-xxl-nowrap { + flex-wrap: nowrap !important; + } + + .flex-xxl-wrap-reverse { + flex-wrap: wrap-reverse !important; + } + + .gap-xxl-0 { + gap: 0 !important; + } + + .gap-xxl-1 { + gap: 0.25rem !important; + } + + .gap-xxl-2 { + gap: 0.5rem !important; + } + + .gap-xxl-3 { + gap: 1rem !important; + } + + .gap-xxl-4 { + gap: 1.5rem !important; + } + + .gap-xxl-5 { + gap: 3rem !important; + } + + .justify-content-xxl-start { + justify-content: flex-start !important; + } + + .justify-content-xxl-end { + justify-content: flex-end !important; + } + + .justify-content-xxl-center { + justify-content: center !important; + } + + .justify-content-xxl-between { + justify-content: space-between !important; + } + + .justify-content-xxl-around { + justify-content: space-around !important; + } + + .justify-content-xxl-evenly { + justify-content: space-evenly !important; + } + + .align-items-xxl-start { + align-items: flex-start !important; + } + + .align-items-xxl-end { + align-items: flex-end !important; + } + + .align-items-xxl-center { + align-items: center !important; + } + + .align-items-xxl-baseline { + align-items: baseline !important; + } + + .align-items-xxl-stretch { + align-items: stretch !important; + } + + .align-content-xxl-start { + align-content: flex-start !important; + } + + .align-content-xxl-end { + align-content: flex-end !important; + } + + .align-content-xxl-center { + align-content: center !important; + } + + .align-content-xxl-between { + align-content: space-between !important; + } + + .align-content-xxl-around { + align-content: space-around !important; + } + + .align-content-xxl-stretch { + align-content: stretch !important; + } + + .align-self-xxl-auto { + align-self: auto !important; + } + + .align-self-xxl-start { + align-self: flex-start !important; + } + + .align-self-xxl-end { + align-self: flex-end !important; + } + + .align-self-xxl-center { + align-self: center !important; + } + + .align-self-xxl-baseline { + align-self: baseline !important; + } + + .align-self-xxl-stretch { + align-self: stretch !important; + } + + .order-xxl-first { + order: -1 !important; + } + + .order-xxl-0 { + order: 0 !important; + } + + .order-xxl-1 { + order: 1 !important; + } + + .order-xxl-2 { + order: 2 !important; + } + + .order-xxl-3 { + order: 3 !important; + } + + .order-xxl-4 { + order: 4 !important; + } + + .order-xxl-5 { + order: 5 !important; + } + + .order-xxl-last { + order: 6 !important; + } + + .m-xxl-0 { + margin: 0 !important; + } + + .m-xxl-1 { + margin: 0.25rem !important; + } + + .m-xxl-2 { + margin: 0.5rem !important; + } + + .m-xxl-3 { + margin: 1rem !important; + } + + .m-xxl-4 { + margin: 1.5rem !important; + } + + .m-xxl-5 { + margin: 3rem !important; + } + + .m-xxl-auto { + margin: auto !important; + } + + .mx-xxl-0 { + margin-right: 0 !important; + margin-left: 0 !important; + } + + .mx-xxl-1 { + margin-right: 0.25rem !important; + margin-left: 0.25rem !important; + } + + .mx-xxl-2 { + margin-right: 0.5rem !important; + margin-left: 0.5rem !important; + } + + .mx-xxl-3 { + margin-right: 1rem !important; + margin-left: 1rem !important; + } + + .mx-xxl-4 { + margin-right: 1.5rem !important; + margin-left: 1.5rem !important; + } + + .mx-xxl-5 { + margin-right: 3rem !important; + margin-left: 3rem !important; + } + + .mx-xxl-auto { + margin-right: auto !important; + margin-left: auto !important; + } + + .my-xxl-0 { + margin-top: 0 !important; + margin-bottom: 0 !important; + } + + .my-xxl-1 { + margin-top: 0.25rem !important; + margin-bottom: 0.25rem !important; + } + + .my-xxl-2 { + margin-top: 0.5rem !important; + margin-bottom: 0.5rem !important; + } + + .my-xxl-3 { + margin-top: 1rem !important; + margin-bottom: 1rem !important; + } + + .my-xxl-4 { + margin-top: 1.5rem !important; + margin-bottom: 1.5rem !important; + } + + .my-xxl-5 { + margin-top: 3rem !important; + margin-bottom: 3rem !important; + } + + .my-xxl-auto { + margin-top: auto !important; + margin-bottom: auto !important; + } + + .mt-xxl-0 { + margin-top: 0 !important; + } + + .mt-xxl-1 { + margin-top: 0.25rem !important; + } + + .mt-xxl-2 { + margin-top: 0.5rem !important; + } + + .mt-xxl-3 { + margin-top: 1rem !important; + } + + .mt-xxl-4 { + margin-top: 1.5rem !important; + } + + .mt-xxl-5 { + margin-top: 3rem !important; + } + + .mt-xxl-auto { + margin-top: auto !important; + } + + .mr-xxl-0 { + margin-right: 0 !important; + } + + .mr-xxl-1 { + margin-right: 0.25rem !important; + } + + .mr-xxl-2 { + margin-right: 0.5rem !important; + } + + .mr-xxl-3 { + margin-right: 1rem !important; + } + + .mr-xxl-4 { + margin-right: 1.5rem !important; + } + + .mr-xxl-5 { + margin-right: 3rem !important; + } + + .mr-xxl-auto { + margin-right: auto !important; + } + + .mb-xxl-0 { + margin-bottom: 0 !important; + } + + .mb-xxl-1 { + margin-bottom: 0.25rem !important; + } + + .mb-xxl-2 { + margin-bottom: 0.5rem !important; + } + + .mb-xxl-3 { + margin-bottom: 1rem !important; + } + + .mb-xxl-4 { + margin-bottom: 1.5rem !important; + } + + .mb-xxl-5 { + margin-bottom: 3rem !important; + } + + .mb-xxl-auto { + margin-bottom: auto !important; + } + + .ml-xxl-0 { + margin-left: 0 !important; + } + + .ml-xxl-1 { + margin-left: 0.25rem !important; + } + + .ml-xxl-2 { + margin-left: 0.5rem !important; + } + + .ml-xxl-3 { + margin-left: 1rem !important; + } + + .ml-xxl-4 { + margin-left: 1.5rem !important; + } + + .ml-xxl-5 { + margin-left: 3rem !important; + } + + .ml-xxl-auto { + margin-left: auto !important; + } + + .m-xxl-n1 { + margin: -0.25rem !important; + } + + .m-xxl-n2 { + margin: -0.5rem !important; + } + + .m-xxl-n3 { + margin: -1rem !important; + } + + .m-xxl-n4 { + margin: -1.5rem !important; + } + + .m-xxl-n5 { + margin: -3rem !important; + } + + .mx-xxl-n1 { + margin-right: -0.25rem !important; + margin-left: -0.25rem !important; + } + + .mx-xxl-n2 { + margin-right: -0.5rem !important; + margin-left: -0.5rem !important; + } + + .mx-xxl-n3 { + margin-right: -1rem !important; + margin-left: -1rem !important; + } + + .mx-xxl-n4 { + margin-right: -1.5rem !important; + margin-left: -1.5rem !important; + } + + .mx-xxl-n5 { + margin-right: -3rem !important; + margin-left: -3rem !important; + } + + .my-xxl-n1 { + margin-top: -0.25rem !important; + margin-bottom: -0.25rem !important; + } + + .my-xxl-n2 { + margin-top: -0.5rem !important; + margin-bottom: -0.5rem !important; + } + + .my-xxl-n3 { + margin-top: -1rem !important; + margin-bottom: -1rem !important; + } + + .my-xxl-n4 { + margin-top: -1.5rem !important; + margin-bottom: -1.5rem !important; + } + + .my-xxl-n5 { + margin-top: -3rem !important; + margin-bottom: -3rem !important; + } + + .mt-xxl-n1 { + margin-top: -0.25rem !important; + } + + .mt-xxl-n2 { + margin-top: -0.5rem !important; + } + + .mt-xxl-n3 { + margin-top: -1rem !important; + } + + .mt-xxl-n4 { + margin-top: -1.5rem !important; + } + + .mt-xxl-n5 { + margin-top: -3rem !important; + } + + .mr-xxl-n1 { + margin-right: -0.25rem !important; + } + + .mr-xxl-n2 { + margin-right: -0.5rem !important; + } + + .mr-xxl-n3 { + margin-right: -1rem !important; + } + + .mr-xxl-n4 { + margin-right: -1.5rem !important; + } + + .mr-xxl-n5 { + margin-right: -3rem !important; + } + + .mb-xxl-n1 { + margin-bottom: -0.25rem !important; + } + + .mb-xxl-n2 { + margin-bottom: -0.5rem !important; + } + + .mb-xxl-n3 { + margin-bottom: -1rem !important; + } + + .mb-xxl-n4 { + margin-bottom: -1.5rem !important; + } + + .mb-xxl-n5 { + margin-bottom: -3rem !important; + } + + .ml-xxl-n1 { + margin-left: -0.25rem !important; + } + + .ml-xxl-n2 { + margin-left: -0.5rem !important; + } + + .ml-xxl-n3 { + margin-left: -1rem !important; + } + + .ml-xxl-n4 { + margin-left: -1.5rem !important; + } + + .ml-xxl-n5 { + margin-left: -3rem !important; + } + + .p-xxl-0 { + padding: 0 !important; + } + + .p-xxl-1 { + padding: 0.25rem !important; + } + + .p-xxl-2 { + padding: 0.5rem !important; + } + + .p-xxl-3 { + padding: 1rem !important; + } + + .p-xxl-4 { + padding: 1.5rem !important; + } + + .p-xxl-5 { + padding: 3rem !important; + } + + .px-xxl-0 { + padding-right: 0 !important; + padding-left: 0 !important; + } + + .px-xxl-1 { + padding-right: 0.25rem !important; + padding-left: 0.25rem !important; + } + + .px-xxl-2 { + padding-right: 0.5rem !important; + padding-left: 0.5rem !important; + } + + .px-xxl-3 { + padding-right: 1rem !important; + padding-left: 1rem !important; + } + + .px-xxl-4 { + padding-right: 1.5rem !important; + padding-left: 1.5rem !important; + } + + .px-xxl-5 { + padding-right: 3rem !important; + padding-left: 3rem !important; + } + + .py-xxl-0 { + padding-top: 0 !important; + padding-bottom: 0 !important; + } + + .py-xxl-1 { + padding-top: 0.25rem !important; + padding-bottom: 0.25rem !important; + } + + .py-xxl-2 { + padding-top: 0.5rem !important; + padding-bottom: 0.5rem !important; + } + + .py-xxl-3 { + padding-top: 1rem !important; + padding-bottom: 1rem !important; + } + + .py-xxl-4 { + padding-top: 1.5rem !important; + padding-bottom: 1.5rem !important; + } + + .py-xxl-5 { + padding-top: 3rem !important; + padding-bottom: 3rem !important; + } + + .pt-xxl-0 { + padding-top: 0 !important; + } + + .pt-xxl-1 { + padding-top: 0.25rem !important; + } + + .pt-xxl-2 { + padding-top: 0.5rem !important; + } + + .pt-xxl-3 { + padding-top: 1rem !important; + } + + .pt-xxl-4 { + padding-top: 1.5rem !important; + } + + .pt-xxl-5 { + padding-top: 3rem !important; + } + + .pr-xxl-0 { + padding-right: 0 !important; + } + + .pr-xxl-1 { + padding-right: 0.25rem !important; + } + + .pr-xxl-2 { + padding-right: 0.5rem !important; + } + + .pr-xxl-3 { + padding-right: 1rem !important; + } + + .pr-xxl-4 { + padding-right: 1.5rem !important; + } + + .pr-xxl-5 { + padding-right: 3rem !important; + } + + .pb-xxl-0 { + padding-bottom: 0 !important; + } + + .pb-xxl-1 { + padding-bottom: 0.25rem !important; + } + + .pb-xxl-2 { + padding-bottom: 0.5rem !important; + } + + .pb-xxl-3 { + padding-bottom: 1rem !important; + } + + .pb-xxl-4 { + padding-bottom: 1.5rem !important; + } + + .pb-xxl-5 { + padding-bottom: 3rem !important; + } + + .pl-xxl-0 { + padding-left: 0 !important; + } + + .pl-xxl-1 { + padding-left: 0.25rem !important; + } + + .pl-xxl-2 { + padding-left: 0.5rem !important; + } + + .pl-xxl-3 { + padding-left: 1rem !important; + } + + .pl-xxl-4 { + padding-left: 1.5rem !important; + } + + .pl-xxl-5 { + padding-left: 3rem !important; + } + + .text-xxl-left { + text-align: left !important; + } + + .text-xxl-right { + text-align: right !important; + } + + .text-xxl-center { + text-align: center !important; + } +} +@media (min-width: 1200px) { + .fs-1 { + font-size: 2.5rem !important; + } + + .fs-2 { + font-size: 2rem !important; + } + + .fs-3 { + font-size: 1.75rem !important; + } + + .fs-4 { + font-size: 1.5rem !important; + } + + .fs-sm-1 { + font-size: 2.5rem !important; + } + + .fs-sm-2 { + font-size: 2rem !important; + } + + .fs-sm-3 { + font-size: 1.75rem !important; + } + + .fs-sm-4 { + font-size: 1.5rem !important; + } + + .fs-md-1 { + font-size: 2.5rem !important; + } + + .fs-md-2 { + font-size: 2rem !important; + } + + .fs-md-3 { + font-size: 1.75rem !important; + } + + .fs-md-4 { + font-size: 1.5rem !important; + } + + .fs-lg-1 { + font-size: 2.5rem !important; + } + + .fs-lg-2 { + font-size: 2rem !important; + } + + .fs-lg-3 { + font-size: 1.75rem !important; + } + + .fs-lg-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; + } +} +.navbar { + padding: 1rem; +} +.navbar .navbar-toggler { + padding: 8px 12px; +} +@media (min-width: 576px) { + .navbar { + border-radius: 0.5rem 0.5rem 0 0; + } +} +.navbar .nav-item { + border-radius: 0.5rem; + font-weight: 600; +} +.navbar .nav-item:not(:last-child) { + margin-right: 0.5rem; +} +.navbar .nav-item.active { + background-color: rgba(0, 118, 165, 0.1); +} +.navbar .nav-item.active .nav-link { + color: #0076a5; +} +.navbar .nav-item .nav-link { + padding: 0.5rem 0.75rem; +} +.navbar .dropdown-toggle { + border-radius: 0.5rem; + transition: all 0.2s ease-in-out; +} +.navbar .dropdown-toggle.show { + background-color: rgba(0, 118, 165, 0.1); +} +.navbar .dropdown-toggle.show.nav-link { + color: #0076a5 !important; +} + +.dropdown .dropdown-menu { + border: none; + box-shadow: 0 0 0.4px rgba(0, 0, 0, 0.02), 0 0 0.9px rgba(0, 0, 0, 0.028), 0 0 1.8px rgba(0, 0, 0, 0.035), 0 0 3.1px rgba(0, 0, 0, 0.042), 0 0 5.8px rgba(0, 0, 0, 0.05), 0 0 14px rgba(0, 0, 0, 0.07); + min-width: 200px; + border-radius: 0.5rem; +} +.dropdown .dropdown-menu .dropdown-item { + padding: 0.35rem 0.75rem; + transition: all 0.1s ease-in-out; +} +.dropdown .dropdown-menu .dropdown-item svg { + margin-right: 0.5rem; +} +.dropdown .dropdown-menu .dropdown-item:hover { + background-color: #0076a5; + color: #fff; +} +.dropdown .dropdown-menu .dropdown-divider { + margin: 0.5rem -0.5rem; +} + +.card-img-top { + background-color: #f8f8f8; + background-repeat: no-repeat; + background-size: cover; + background-position: center; + height: 160px; + width: auto; +} + +.card .card-header + .card-body { + padding: 0 1rem 1rem; +} +.card .card-description-overflow { + overflow: hidden; + text-overflow: ellipsis; + display: -webkit-box; + line-height: 1.2; + -webkit-box-orient: vertical; + -webkit-line-clamp: 3; +} +.card .card-body { + padding: 1rem; +} +.card > .table thead th { + border-top: none; +} +.card > .table thead > tr > th:first-child, +.card > .table tbody > tr > td:first-child { + padding-left: 1rem; +} +.card > .table thead > tr > th:last-child, +.card > .table tbody > tr > td:last-child { + padding-right: 1rem; +} + +.modal .modal-header { + border-bottom: none; +} +.modal .modal-header .modal-title { + font-size: 1rem; +} +.modal .modal-header .close { + font-size: 1rem; + line-height: 1.5; +} +.modal .modal-footer { + border-top: none; +} + +.btn-block + .btn-block { + margin-top: 0; +} + +.btn-notification-badge { + position: relative; +} +.btn-notification-badge::after { + position: absolute; + width: 8px; + height: 8px; + border-radius: 6px; + top: -4px; + right: -4px; + background-color: #ffc000; + content: ""; +} + +.pagination { + margin: 0 auto; + display: inline-flex; + flex-direction: row; + justify-content: center; + padding: 4px; + border-radius: 21px; + box-shadow: 0 0 0.4px rgba(0, 0, 0, 0.02), 0 0 0.9px rgba(0, 0, 0, 0.028), 0 0 1.8px rgba(0, 0, 0, 0.035), 0 0 3.1px rgba(0, 0, 0, 0.042), 0 0 5.8px rgba(0, 0, 0, 0.05), 0 0 14px rgba(0, 0, 0, 0.07); +} +.pagination .page-item { + margin: 0 3px; + border: none; + font-weight: bold; +} +.pagination .page-item:first-child { + margin-left: 0; +} +.pagination .page-item:last-child { + margin-right: 0; +} +.pagination .page-item .page-link { + line-height: 0.7; + border: none; + background-color: transparent; + padding: 0; + width: 34px; + height: 34px; + border-radius: 20px; + display: flex; + justify-content: center; + align-items: center; +} +.pagination .page-item:not(.disabled).active .page-link { + background-color: #0076a5; + color: #fff; +} +.pagination .page-item:not(.disabled):hover:not(.active) .page-link { + border: 1.5px solid #0076a5; + color: #0076a5; +} +.pagination .page-item.disabled .page-link { + color: #aaa; +} + +.page-bar { + position: -webkit-sticky; + position: sticky; + top: 0; + background-color: rgba(255, 255, 255, 0.9); + -webkit-backdrop-filter: blur(20px) saturate(150%); + backdrop-filter: blur(20px) saturate(150%); + transition: all 0.2s ease-in-out; + display: flex; + flex-direction: column; + align-items: baseline; + padding: 1rem; +} +@media (max-width: 767px) { + .page-bar { + padding: 0.25rem 1rem 1rem; + } +} +@media (max-width: 767px) { + .page-bar.page-bar-tabbed { + padding: 0.25rem 1rem 0; + margin-bottom: 1rem; + } +} +.page-bar .h4 { + margin-right: 1rem !important; +} +.page-bar.flowing { + z-index: 1000; + box-shadow: 0 0 0.4px rgba(0, 0, 0, 0.02), 0 0 0.9px rgba(0, 0, 0, 0.028), 0 0 1.8px rgba(0, 0, 0, 0.035), 0 0 3.1px rgba(0, 0, 0, 0.042), 0 0 5.8px rgba(0, 0, 0, 0.05), 0 0 14px rgba(0, 0, 0, 0.07); +} +.page-bar .breadcrumb { + border-radius: 0; + margin: 0; + padding: 0; + background: transparent; +} + +header { + color: #fff; +} +header .header-bar { + transition: all 0.2s ease-in-out; +} +@media (max-width: 575px) { + header .header-bar { + padding-left: 1rem; + padding-right: 1rem; + } +} +header .core-bar > :not(:last-child) { + margin-right: 0.5rem; +} +header .core-bar .core-bar-action { + width: 40px; + height: 40px; + border: 1.5px solid rgba(255, 255, 255, 0.1); + display: flex; + justify-content: center; + align-items: center; + color: #fff; + transition: all 0.2s ease-in-out; + border-radius: 100px; +} +header .core-bar .core-bar-action:hover { + border-color: #ffc000; + color: #fff; +} +header .core-bar .core-bar-action.core-bar-action-account { + width: auto; +} +header .core-bar .core-bar-action.core-bar-action-account p { + display: inline-block; + margin: 0 0.5rem 0 0.75rem; +} +header .core-bar .core-bar-action.core-bar-action-account img { + height: 37px; + width: auto; +} + +.avatar-icon { + display: inline-block; + width: 26px; + height: 26px; + border-radius: 13px; + background-repeat: no-repeat; + background-size: cover; + background-position: center; +} + +.avatar-bar { + background: rgba(255, 255, 255, 0.1); + padding: 4px; + border-radius: 100px; + display: inline-flex; + justify-content: center; +} +.avatar-bar.border { + background-color: transparent; +} +.avatar-bar.default { + padding: 0; + background-color: transparent !important; + justify-content: start; +} +.avatar-bar.default .icon-avatar { + margin-left: -10px; + transition: all 0.2s ease-in-out; + border: 3px solid #fff; +} +.avatar-bar.default .icon-avatar:first-child { + margin-left: -3px; +} +.avatar-bar.default:hover .icon-avatar { + margin-left: -5px; +} +.avatar-bar.default:hover .icon-avatar:first-child { + margin-left: -3px; +} +.avatar-bar.avatar-bar-sm { + padding: 2px; + -webkit-backdrop-filter: blur(15px); + backdrop-filter: blur(15px); +} +.avatar-bar.avatar-bar-sm .icon-avatar { + width: 28px; + height: 28px; +} +.avatar-bar.avatar-bar-sm .icon-avatar small, .avatar-bar.avatar-bar-sm .icon-avatar .small { + font-size: 0.6rem; + font-weight: bold; + margin-top: -1px; +} +@media (max-width: 575px) { + .avatar-bar { + border-radius: 4px; + } +} +.avatar-bar .icon-avatar { + display: inline-flex; + width: 40px; + height: 40px; + background-color: #0076a5; + color: #fff; + border-radius: 100px; + align-items: center; + justify-content: center; + text-align: center; + margin: 2px; +} +.avatar-bar .icon-avatar img { + width: 100%; + height: 100%; + border-radius: 100px; + display: block; +} + +.nav.nav-underline { + margin: 0.5rem 0; +} +.nav.nav-underline .nav-link { + padding: 0; + color: #000; + position: relative; +} +.nav.nav-underline .nav-link:not(:last-child) { + margin-right: 1rem; +} +.nav.nav-underline .nav-link:hover::after { + content: ""; + position: absolute; + width: 100%; + height: 2px; + bottom: -8px; + left: 0; + transition: all 0.2s ease-in-out; + background-color: #0076a5; +} +.nav.nav-underline .nav-link.active::after { + content: ""; + position: absolute; + width: 100%; + height: 2px; + bottom: -8px; + left: 0; + transition: all 0.2s ease-in-out; + background-color: #0076a5; +} +.nav.nav-underline .nav-link.active:hover::after { + width: calc(100% + 10px); + left: -5px; +} + +body { + background-color: #f8f8f8; +} + +hr { + background-color: #bdc6d0; + margin: 0.5rem 0; +} + +.content { + background-color: #fff; + box-shadow: 0 0 0.4px rgba(0, 0, 0, 0.02), 0 0 0.9px rgba(0, 0, 0, 0.028), 0 0 1.8px rgba(0, 0, 0, 0.035), 0 0 3.1px rgba(0, 0, 0, 0.042), 0 0 5.8px rgba(0, 0, 0, 0.05), 0 0 14px rgba(0, 0, 0, 0.07); +} +@media (min-width: 576px) { + .content { + border-radius: 0 0 0.5rem 0.5rem; + } +} +.content .content-box { + padding: 0 1rem 1rem; +} +.content .content-box .col-12.card-set { + margin-bottom: -1rem; +} +.content .content-box > .row > div:not(:first-child) { + margin-top: 1rem; +} +.content .content-box > .row > div.card-set { + margin-bottom: -1rem; +} +.content .content-box > .row:not(:first-child) > div { + margin-top: 1rem; +} +.content .content-box fieldset.row > div:not(:first-child) { + margin-top: 1rem; +} +.content .content-box fieldset.row > div.card-set { + margin-bottom: -1rem; +} + +a:hover { + text-decoration: none; +} + +.table thead th { + border-bottom: 2px solid #dee2e6 !important; +} + +.form-text { + display: block; +} + +.btn-close { + background: none; + width: auto; + height: auto; +} + +.pb-g { + padding-bottom: 1rem; +} + +.bg-image { + background-repeat: no-repeat; + background-size: cover; + background-position: center; +} + +.bg-primary-g { + background-image: linear-gradient(90deg, #009196 0%, #0076a5 100%) !important; +} + +.bg-top { + background-image: url("../img/topography.svg"), linear-gradient(90deg, #009196 0%, #0076a5 100%) !important; +} + +.acrylic-20-light { + background-color: rgba(255, 255, 255, 0.6); + -webkit-backdrop-filter: blur(20px); + backdrop-filter: blur(20px); +} + +.form-group:last-child { + margin-bottom: 0; +} + +.input-group-prepend .input-group-text { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} + +.action-close { + background-color: transparent; + width: 40px; + height: 40px; + border: 1.5px solid rgba(255, 255, 255, 0.1); + display: flex; + justify-content: center; + align-items: center; + color: #fff; + transition: all 0.2s ease-in-out; + border-radius: 100px; + position: absolute; + top: 16px; + right: 24px; +} +.action-close:hover { + border-color: #ffc000; + color: #fff; +} + +.h5.title { + margin-top: 0.25rem; + margin-bottom: 0.25rem; +} + +.stats .count { + font-size: 2rem; + font-weight: 700; + margin: 0 0 -0.5rem 0; +} +@media (max-width: 575px) { + .stats .count { + font-size: 1rem; + } +} +.stats .count small, .stats .count .small { + font-size: 1rem; + color: #6c757d; +} +@media (max-width: 575px) { + .stats .count small, .stats .count .small { + font-weight: 400; + } +} +.stats .description { + font-weight: 600; + font-size: 1.25rem; + margin: 0; +} + +.table .td-btn { + padding: 0.3rem 0.5rem; +} +.table tbody tr:last-child td { + border-bottom: none; +} + +footer { + margin: 1rem; + text-align: center; +} + +.text-guide { + font-weight: 700; +} + +body { + scrollbar-color: #ccc #fff; + scrollbar-width: thin; +} +body::-webkit-scrollbar { + width: 6px; +} +body::-webkit-scrollbar-track { + margin-bottom: 2px; + margin-top: 2px; +} +body::-webkit-scrollbar-thumb { + background-color: #ccc; + border-radius: 10px; +} + +.f-384 { + font-family: "Century Gothic", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; + color: #222; +} +.f-384:hover { + color: #444 !important; +} + +.studio-384 { + background-image: linear-gradient(-45deg, #00b573 0%, #78b500 100%); + -webkit-background-clip: text; + background-clip: text; + -webkit-text-fill-color: transparent; +} + +@media (prefers-color-scheme: dark) { + body { + background-color: #141414; + color: #fff; + } + + .content { + background-color: #242424; + } + + .acrylic-20-light { + background-color: rgba(0, 0, 0, 0.6); + -webkit-backdrop-filter: blur(20px); + backdrop-filter: blur(20px); + } + + .avatar-bar.default .icon-avatar { + border-color: #333; + } + + .card { + background-color: #333; + } + .card .card-img-top { + background-color: #3b3b3b; + } + .card .card-body.bg-light { + background-color: #383838 !important; + } + + .nav.nav-underline .nav-link { + color: #fff; + } + + .navbar.bg-light { + background-color: #1c1c1c !important; + } + .navbar .nav-item .nav-link, +.navbar .nav-item .nav-link:hover { + color: #fff; + } + + .dropdown .dropdown-menu { + background-color: #242424; + } + .dropdown .dropdown-menu .dropdown-item { + color: #fff; + } + .dropdown .dropdown-menu .dropdown-item.disabled { + color: rgba(255, 255, 255, 0.6); + } + .dropdown .dropdown-menu .dropdown-item:focus { + background-color: #242424; + } + + .page-bar { + background-color: rgba(36, 36, 36, 0.9); + } + + .form-control, +.form-select { + color: #fff; + background-color: #3b3b3b; + border-color: #4a4a4a; + } + .form-control:active, .form-control:focus, +.form-select:active, +.form-select:focus { + background-color: #3b3b3b; + border-color: #0076a5; + } + .form-control::file-selector-button, .form-control::-webkit-file-upload-button, +.form-select::file-selector-button, +.form-select::-webkit-file-upload-button { + border-color: #4a4a4a; + background-color: #3b3b3b; + } + + .editor-toolbar { + border-color: #4a4a4a !important; + } + .editor-toolbar button { + color: #fff !important; + } + .editor-toolbar button:hover { + background-color: #2b2b2b !important; + border-color: #242424 !important; + } + .editor-toolbar .separator { + border-left-color: #242424 !important; + border-right: none !important; + } + + .CodeMirror { + background-color: #3b3b3b !important; + border-color: #4a4a4a !important; + color: #fff !important; + } + + .navbar-light .navbar-toggler { + color: rgba(255, 255, 255, 0.55); + border-color: rgba(255, 255, 255, 0.1); + } + + .link-dark { + color: #fff; + } + .link-dark:hover { + color: #d9d9d9; + } + + .text-muted { + color: #ced4da !important; + } + + .stats .count small, .stats .count .small { + color: #ced4da; + } + + .table { + color: #fff !important; + } + .table.table-striped tbody tr:nth-of-type(odd) { + color: #fff !important; + } + .table thead th { + border-bottom: 2px solid #242424 !important; + } + .table td { + border-bottom-color: #242424; + } + + .f-384 { + color: #fff; + } + .f-384:hover { + color: #ddd !important; + } + + .modal-content { + background: #333; + } + + body { + scrollbar-color: #424242 #333; + } + body::-webkit-scrollbar-thumb { + background-color: #424242; + } + + .btn-close { + color: #fff !important; + } + + .input-group-prepend .input-group-text { + color: #f8f9fa; + background-color: #333; + border-color: #4a4a4a; + } +} \ No newline at end of file diff --git a/public/css/app.css b/public/css/app.css index e8dbc67..1a46974 100644 --- a/public/css/app.css +++ b/public/css/app.css @@ -4,40 +4,36 @@ * Licensed under AGPL */ /*! - * Bootstrap v4.5.3 (https://getbootstrap.com/) + * Bootstrap v5.0.0-alpha3 (https://getbootstrap.com/) * Copyright 2011-2020 The Bootstrap Authors * Copyright 2011-2020 Twitter, Inc. * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) */ :root { - --blue: #0f6dec; - --indigo: #6574cd; - --purple: #9561e2; - --pink: #e52262; - --red: #e74018; - --orange: #fb8009; - --yellow: #ffc000; - --green: #97c800; - --teal: #10b08f; - --cyan: #0098df; - --white: #fff; - --gray: #6c757d; - --gray-dark: #343a40; - --primary: #0078d7; - --secondary: #6c757d; - --success: #97c800; - --info: #0098df; - --warning: #ffc000; - --danger: #e74018; - --light: #f8f9fa; - --dark: #343a40; - --breakpoint-xs: 0; - --breakpoint-sm: 576px; - --breakpoint-md: 768px; - --breakpoint-lg: 992px; - --breakpoint-xl: 1200px; - --font-family-sans-serif: -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-family-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; + --bs-blue: #0f6dec; + --bs-indigo: #6574cd; + --bs-purple: #9561e2; + --bs-pink: #e52262; + --bs-red: #e74018; + --bs-orange: #fb8009; + --bs-yellow: #ffc000; + --bs-green: #97c800; + --bs-teal: #10b08f; + --bs-cyan: #0098df; + --bs-white: #fff; + --bs-gray: #6c757d; + --bs-gray-dark: #343a40; + --bs-primary: #0078d7; + --bs-secondary: #6c757d; + --bs-success: #97c800; + --bs-info: #0098df; + --bs-warning: #ffc000; + --bs-danger: #e74018; + --bs-light: #f8f9fa; + --bs-dark: #212529; + --bs-font-sans-serif: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; + --bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; + --bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0)); } *, @@ -46,26 +42,22 @@ box-sizing: border-box; } -html { - font-family: sans-serif; - line-height: 1.15; - -webkit-text-size-adjust: 100%; - -webkit-tap-highlight-color: rgba(0, 0, 0, 0); -} - -article, aside, figcaption, figure, footer, header, hgroup, main, nav, section { - display: block; +@media (prefers-reduced-motion: no-preference) { + :root { + scroll-behavior: smooth; + } } body { margin: 0; - 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-family: var(--bs-font-sans-serif); font-size: 1rem; font-weight: 400; line-height: 1.6; color: #212529; - text-align: left; background-color: #fff; + -webkit-text-size-adjust: 100%; + -webkit-tap-highlight-color: rgba(0, 0, 0, 0); } [tabindex="-1"]:focus:not(:focus-visible) { @@ -73,14 +65,66 @@ body { } hr { - box-sizing: content-box; - height: 0; - overflow: visible; + margin: 1rem 0; + color: inherit; + background-color: currentColor; + border: 0; + opacity: 0.25; +} + +hr:not([size]) { + height: 1px; } -h1, h2, h3, h4, h5, h6 { +h6, .h6, h5, .h5, h4, .h4, h3, .h3, h2, .h2, h1, .h1 { margin-top: 0; margin-bottom: 0.5rem; + font-weight: 500; + line-height: 1.2; +} + +h1, .h1 { + font-size: calc(1.375rem + 1.5vw); +} +@media (min-width: 1200px) { + h1, .h1 { + font-size: 2.5rem; + } +} + +h2, .h2 { + font-size: calc(1.325rem + 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 { @@ -94,7 +138,6 @@ abbr[data-original-title] { -webkit-text-decoration: underline dotted; text-decoration: underline dotted; cursor: help; - border-bottom: 0; -webkit-text-decoration-skip-ink: none; text-decoration-skip-ink: none; } @@ -105,6 +148,11 @@ address { line-height: inherit; } +ol, +ul { + padding-left: 2rem; +} + ol, ul, dl { @@ -137,14 +185,19 @@ strong { font-weight: bolder; } -small { - font-size: 80%; +small, .small { + font-size: 0.875em; +} + +mark, .mark { + padding: 0.2em; + background-color: #fcf8e3; } sub, sup { position: relative; - font-size: 75%; + font-size: 0.75em; line-height: 0; vertical-align: baseline; } @@ -159,19 +212,13 @@ sup { a { color: #0078d7; - text-decoration: none; - background-color: transparent; + text-decoration: underline; } a:hover { - color: #004d8b; - text-decoration: underline; + color: #0060ac; } -a:not([href]):not([class]) { - color: inherit; - text-decoration: none; -} -a:not([href]):not([class]):hover { +a:not([href]):not([class]), a:not([href]):not([class]):hover { color: inherit; text-decoration: none; } @@ -180,41 +227,64 @@ pre, code, kbd, samp { - font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; + font-family: var(--bs-font-monospace); font-size: 1em; } pre { + display: block; margin-top: 0; margin-bottom: 1rem; overflow: auto; - -ms-overflow-style: scrollbar; + font-size: 0.875em; +} +pre code { + font-size: inherit; + color: inherit; + word-break: normal; } -figure { - margin: 0 0 1rem; +code { + font-size: 0.875em; + color: #e52262; + word-wrap: break-word; +} +a > code { + color: inherit; } -img { - vertical-align: middle; - border-style: none; +kbd { + padding: 0.2rem 0.4rem; + font-size: 0.875em; + color: #fff; + background-color: #212529; + border-radius: 0.2rem; +} +kbd kbd { + padding: 0; + font-size: 1em; + font-weight: 700; +} + +figure { + margin: 0 0 1rem; } +img, svg { - overflow: hidden; vertical-align: middle; } table { + caption-side: bottom; border-collapse: collapse; } caption { - padding-top: 0.75rem; - padding-bottom: 0.75rem; + padding-top: 0.5rem; + padding-bottom: 0.5rem; color: #6c757d; text-align: left; - caption-side: bottom; } th { @@ -222,9 +292,19 @@ th { text-align: -webkit-match-parent; } +thead, +tbody, +tfoot, +tr, +td, +th { + border-color: inherit; + border-style: solid; + border-width: 0; +} + label { display: inline-block; - margin-bottom: 0.5rem; } button { @@ -232,8 +312,8 @@ button { } button:focus { - outline: 1px dotted; - outline: 5px auto -webkit-focus-ring-color; + outline: dotted 1px; + outline: -webkit-focus-ring-color auto 5px; } input, @@ -247,11 +327,6 @@ textarea { line-height: inherit; } -button, -input { - overflow: visible; -} - button, select { text-transform: none; @@ -265,13 +340,16 @@ select { word-wrap: normal; } +[list]::-webkit-calendar-picker-indicator { + display: none; +} + button, [type=button], [type=reset], [type=submit] { -webkit-appearance: button; } - button:not(:disabled), [type=button]:not(:disabled), [type=reset]:not(:disabled), @@ -279,22 +357,12 @@ button:not(:disabled), cursor: pointer; } -button::-moz-focus-inner, -[type=button]::-moz-focus-inner, -[type=reset]::-moz-focus-inner, -[type=submit]::-moz-focus-inner { +::-moz-focus-inner { padding: 0; border-style: none; } -input[type=radio], -input[type=checkbox] { - box-sizing: border-box; - padding: 0; -} - textarea { - overflow: auto; resize: vertical; } @@ -306,35 +374,53 @@ fieldset { } legend { - display: block; + float: left; width: 100%; - max-width: 100%; padding: 0; margin-bottom: 0.5rem; - font-size: 1.5rem; + font-size: calc(1.275rem + 0.3vw); line-height: inherit; - color: inherit; - white-space: normal; +} +@media (min-width: 1200px) { + legend { + font-size: 1.5rem; + } +} +legend + * { + clear: left; } -progress { - vertical-align: baseline; +::-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; } -[type=number]::-webkit-inner-spin-button, -[type=number]::-webkit-outer-spin-button { +::-webkit-inner-spin-button { height: auto; } [type=search] { outline-offset: -2px; - -webkit-appearance: none; + -webkit-appearance: textfield; } -[type=search]::-webkit-search-decoration { +::-webkit-search-decoration { -webkit-appearance: none; } +::-webkit-color-swatch-wrapper { + padding: 0; +} + +::file-selector-button { + font: inherit; +} + ::-webkit-file-upload-button { font: inherit; -webkit-appearance: button; @@ -344,96 +430,92 @@ output { display: inline-block; } +iframe { + border: 0; +} + summary { display: list-item; cursor: pointer; } -template { - display: none; +progress { + vertical-align: baseline; } [hidden] { display: none !important; } -h1, h2, h3, h4, h5, h6, -.h1, .h2, .h3, .h4, .h5, .h6 { - margin-bottom: 0.5rem; - font-weight: 500; - line-height: 1.2; -} - -h1, .h1 { - font-size: 2.5rem; -} - -h2, .h2 { - font-size: 2rem; -} - -h3, .h3 { - font-size: 1.75rem; -} - -h4, .h4 { - font-size: 1.5rem; -} - -h5, .h5 { - font-size: 1.25rem; -} - -h6, .h6 { - font-size: 1rem; -} - .lead { font-size: 1.25rem; font-weight: 300; } .display-1 { - font-size: 6rem; + 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: 5.5rem; + 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: 4.5rem; + 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: 3.5rem; + font-size: calc(1.475rem + 2.7vw); font-weight: 300; line-height: 1.2; } - -hr { - margin-top: 1rem; - margin-bottom: 1rem; - border: 0; - border-top: 1px solid rgba(0, 0, 0, 0.1); +@media (min-width: 1200px) { + .display-4 { + font-size: 3.5rem; + } } -small, -.small { - font-size: 80%; - font-weight: 400; +.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; + } } -mark, -.mark { - padding: 0.2em; - background-color: #fcf8e3; +.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 { @@ -454,7 +536,7 @@ mark, } .initialism { - font-size: 90%; + font-size: 0.875em; text-transform: uppercase; } @@ -462,10 +544,14 @@ mark, margin-bottom: 1rem; font-size: 1.25rem; } +.blockquote > :last-child { + margin-bottom: 0; +} .blockquote-footer { - display: block; - font-size: 80%; + margin-top: -1rem; + margin-bottom: 1rem; + font-size: 0.875em; color: #6c757d; } .blockquote-footer::before { @@ -496,57 +582,21 @@ mark, } .figure-caption { - font-size: 90%; + font-size: 0.875em; color: #6c757d; } -code { - font-size: 87.5%; - color: #e52262; - word-wrap: break-word; -} -a > code { - color: inherit; -} - -kbd { - padding: 0.2rem 0.4rem; - font-size: 87.5%; - color: #fff; - background-color: #212529; - border-radius: 0.2rem; -} -kbd kbd { - padding: 0; - font-size: 100%; - font-weight: 700; -} - -pre { - display: block; - font-size: 87.5%; - color: #212529; -} -pre code { - font-size: inherit; - color: inherit; - word-break: normal; -} - -.pre-scrollable { - max-height: 340px; - overflow-y: scroll; -} - .container, .container-fluid, +.container-xxl, .container-xl, .container-lg, .container-md, .container-sm { + --bs-gutter-x: 1.5rem; width: 100%; - padding-right: 15px; - padding-left: 15px; + padding-right: calc(var(--bs-gutter-x) / 2); + padding-left: calc(var(--bs-gutter-x) / 2); margin-right: auto; margin-left: auto; } @@ -571,402 +621,339 @@ pre code { max-width: 1140px; } } +.container-xl, .container-lg, .container-md, .container-sm, .container { + max-width: 1320px; +} + .row { + --bs-gutter-x: 1.5rem; + --bs-gutter-y: 0; display: flex; flex-wrap: wrap; - margin-right: -15px; - margin-left: -15px; + margin-top: calc(var(--bs-gutter-y) * -1); + margin-right: calc(var(--bs-gutter-x) / -2); + margin-left: calc(var(--bs-gutter-x) / -2); +} +.row > * { + flex-shrink: 0; + width: 100%; + max-width: 100%; + padding-right: calc(var(--bs-gutter-x) / 2); + padding-left: calc(var(--bs-gutter-x) / 2); + margin-top: var(--bs-gutter-y); } -.no-gutters { - margin-right: 0; - margin-left: 0; +.col { + flex: 1 0 0%; } -.no-gutters > .col, -.no-gutters > [class*=col-] { - padding-right: 0; - padding-left: 0; + +.row-cols-auto > * { + flex: 0 0 auto; + width: auto; } -.col-xl, -.col-xl-auto, .col-xl-12, .col-xl-11, .col-xl-10, .col-xl-9, .col-xl-8, .col-xl-7, .col-xl-6, .col-xl-5, .col-xl-4, .col-xl-3, .col-xl-2, .col-xl-1, .col-lg, -.col-lg-auto, .col-lg-12, .col-lg-11, .col-lg-10, .col-lg-9, .col-lg-8, .col-lg-7, .col-lg-6, .col-lg-5, .col-lg-4, .col-lg-3, .col-lg-2, .col-lg-1, .col-md, -.col-md-auto, .col-md-12, .col-md-11, .col-md-10, .col-md-9, .col-md-8, .col-md-7, .col-md-6, .col-md-5, .col-md-4, .col-md-3, .col-md-2, .col-md-1, .col-sm, -.col-sm-auto, .col-sm-12, .col-sm-11, .col-sm-10, .col-sm-9, .col-sm-8, .col-sm-7, .col-sm-6, .col-sm-5, .col-sm-4, .col-sm-3, .col-sm-2, .col-sm-1, .col, -.col-auto, .col-12, .col-11, .col-10, .col-9, .col-8, .col-7, .col-6, .col-5, .col-4, .col-3, .col-2, .col-1 { - position: relative; +.row-cols-1 > * { + flex: 0 0 auto; width: 100%; - padding-right: 15px; - padding-left: 15px; -} - -.col { - flex-basis: 0; - flex-grow: 1; - max-width: 100%; -} - -.row-cols-1 > * { - flex: 0 0 100%; - max-width: 100%; } .row-cols-2 > * { - flex: 0 0 50%; - max-width: 50%; + flex: 0 0 auto; + width: 50%; } .row-cols-3 > * { - flex: 0 0 33.3333333333%; - max-width: 33.3333333333%; + flex: 0 0 auto; + width: 33.3333333333%; } .row-cols-4 > * { - flex: 0 0 25%; - max-width: 25%; + flex: 0 0 auto; + width: 25%; } .row-cols-5 > * { - flex: 0 0 20%; - max-width: 20%; + flex: 0 0 auto; + width: 20%; } .row-cols-6 > * { - flex: 0 0 16.6666666667%; - max-width: 16.6666666667%; + flex: 0 0 auto; + width: 16.6666666667%; } .col-auto { flex: 0 0 auto; width: auto; - max-width: 100%; } .col-1 { - flex: 0 0 8.3333333333%; - max-width: 8.3333333333%; + flex: 0 0 auto; + width: 8.3333333333%; } .col-2 { - flex: 0 0 16.6666666667%; - max-width: 16.6666666667%; + flex: 0 0 auto; + width: 16.6666666667%; } .col-3 { - flex: 0 0 25%; - max-width: 25%; + flex: 0 0 auto; + width: 25%; } .col-4 { - flex: 0 0 33.3333333333%; - max-width: 33.3333333333%; + flex: 0 0 auto; + width: 33.3333333333%; } .col-5 { - flex: 0 0 41.6666666667%; - max-width: 41.6666666667%; + flex: 0 0 auto; + width: 41.6666666667%; } .col-6 { - flex: 0 0 50%; - max-width: 50%; + flex: 0 0 auto; + width: 50%; } .col-7 { - flex: 0 0 58.3333333333%; - max-width: 58.3333333333%; + flex: 0 0 auto; + width: 58.3333333333%; } .col-8 { - flex: 0 0 66.6666666667%; - max-width: 66.6666666667%; + flex: 0 0 auto; + width: 66.6666666667%; } .col-9 { - flex: 0 0 75%; - max-width: 75%; + flex: 0 0 auto; + width: 75%; } .col-10 { - flex: 0 0 83.3333333333%; - max-width: 83.3333333333%; + flex: 0 0 auto; + width: 83.3333333333%; } .col-11 { - flex: 0 0 91.6666666667%; - max-width: 91.6666666667%; + flex: 0 0 auto; + width: 91.6666666667%; } .col-12 { - flex: 0 0 100%; - max-width: 100%; -} - -.order-first { - order: -1; -} - -.order-last { - order: 13; -} - -.order-0 { - order: 0; + flex: 0 0 auto; + width: 100%; } -.order-1 { - order: 1; +.offset-1 { + margin-left: 8.3333333333%; } -.order-2 { - order: 2; +.offset-2 { + margin-left: 16.6666666667%; } -.order-3 { - order: 3; +.offset-3 { + margin-left: 25%; } -.order-4 { - order: 4; +.offset-4 { + margin-left: 33.3333333333%; } -.order-5 { - order: 5; +.offset-5 { + margin-left: 41.6666666667%; } -.order-6 { - order: 6; +.offset-6 { + margin-left: 50%; } -.order-7 { - order: 7; +.offset-7 { + margin-left: 58.3333333333%; } -.order-8 { - order: 8; +.offset-8 { + margin-left: 66.6666666667%; } -.order-9 { - order: 9; +.offset-9 { + margin-left: 75%; } -.order-10 { - order: 10; +.offset-10 { + margin-left: 83.3333333333%; } -.order-11 { - order: 11; +.offset-11 { + margin-left: 91.6666666667%; } -.order-12 { - order: 12; +.g-0, +.gx-0 { + --bs-gutter-x: 0; } -.offset-1 { - margin-left: 8.3333333333%; +.g-0, +.gy-0 { + --bs-gutter-y: 0; } -.offset-2 { - margin-left: 16.6666666667%; +.g-1, +.gx-1 { + --bs-gutter-x: 0.25rem; } -.offset-3 { - margin-left: 25%; +.g-1, +.gy-1 { + --bs-gutter-y: 0.25rem; } -.offset-4 { - margin-left: 33.3333333333%; +.g-2, +.gx-2 { + --bs-gutter-x: 0.5rem; } -.offset-5 { - margin-left: 41.6666666667%; +.g-2, +.gy-2 { + --bs-gutter-y: 0.5rem; } -.offset-6 { - margin-left: 50%; +.g-3, +.gx-3 { + --bs-gutter-x: 1rem; } -.offset-7 { - margin-left: 58.3333333333%; +.g-3, +.gy-3 { + --bs-gutter-y: 1rem; } -.offset-8 { - margin-left: 66.6666666667%; +.g-4, +.gx-4 { + --bs-gutter-x: 1.5rem; } -.offset-9 { - margin-left: 75%; +.g-4, +.gy-4 { + --bs-gutter-y: 1.5rem; } -.offset-10 { - margin-left: 83.3333333333%; +.g-5, +.gx-5 { + --bs-gutter-x: 3rem; } -.offset-11 { - margin-left: 91.6666666667%; +.g-5, +.gy-5 { + --bs-gutter-y: 3rem; } @media (min-width: 576px) { .col-sm { - flex-basis: 0; - flex-grow: 1; - max-width: 100%; + flex: 1 0 0%; + } + + .row-cols-sm-auto > * { + flex: 0 0 auto; + width: auto; } .row-cols-sm-1 > * { - flex: 0 0 100%; - max-width: 100%; + flex: 0 0 auto; + width: 100%; } .row-cols-sm-2 > * { - flex: 0 0 50%; - max-width: 50%; + flex: 0 0 auto; + width: 50%; } .row-cols-sm-3 > * { - flex: 0 0 33.3333333333%; - max-width: 33.3333333333%; + flex: 0 0 auto; + width: 33.3333333333%; } .row-cols-sm-4 > * { - flex: 0 0 25%; - max-width: 25%; + flex: 0 0 auto; + width: 25%; } .row-cols-sm-5 > * { - flex: 0 0 20%; - max-width: 20%; + flex: 0 0 auto; + width: 20%; } .row-cols-sm-6 > * { - flex: 0 0 16.6666666667%; - max-width: 16.6666666667%; + flex: 0 0 auto; + width: 16.6666666667%; } .col-sm-auto { flex: 0 0 auto; width: auto; - max-width: 100%; } .col-sm-1 { - flex: 0 0 8.3333333333%; - max-width: 8.3333333333%; + flex: 0 0 auto; + width: 8.3333333333%; } .col-sm-2 { - flex: 0 0 16.6666666667%; - max-width: 16.6666666667%; + flex: 0 0 auto; + width: 16.6666666667%; } .col-sm-3 { - flex: 0 0 25%; - max-width: 25%; + flex: 0 0 auto; + width: 25%; } .col-sm-4 { - flex: 0 0 33.3333333333%; - max-width: 33.3333333333%; + flex: 0 0 auto; + width: 33.3333333333%; } .col-sm-5 { - flex: 0 0 41.6666666667%; - max-width: 41.6666666667%; + flex: 0 0 auto; + width: 41.6666666667%; } .col-sm-6 { - flex: 0 0 50%; - max-width: 50%; + flex: 0 0 auto; + width: 50%; } .col-sm-7 { - flex: 0 0 58.3333333333%; - max-width: 58.3333333333%; + flex: 0 0 auto; + width: 58.3333333333%; } .col-sm-8 { - flex: 0 0 66.6666666667%; - max-width: 66.6666666667%; + flex: 0 0 auto; + width: 66.6666666667%; } .col-sm-9 { - flex: 0 0 75%; - max-width: 75%; + flex: 0 0 auto; + width: 75%; } .col-sm-10 { - flex: 0 0 83.3333333333%; - max-width: 83.3333333333%; + flex: 0 0 auto; + width: 83.3333333333%; } .col-sm-11 { - flex: 0 0 91.6666666667%; - max-width: 91.6666666667%; + flex: 0 0 auto; + width: 91.6666666667%; } .col-sm-12 { - flex: 0 0 100%; - max-width: 100%; - } - - .order-sm-first { - order: -1; - } - - .order-sm-last { - order: 13; - } - - .order-sm-0 { - order: 0; - } - - .order-sm-1 { - order: 1; - } - - .order-sm-2 { - order: 2; - } - - .order-sm-3 { - order: 3; - } - - .order-sm-4 { - order: 4; - } - - .order-sm-5 { - order: 5; - } - - .order-sm-6 { - order: 6; - } - - .order-sm-7 { - order: 7; - } - - .order-sm-8 { - order: 8; - } - - .order-sm-9 { - order: 9; - } - - .order-sm-10 { - order: 10; - } - - .order-sm-11 { - order: 11; - } - - .order-sm-12 { - order: 12; + flex: 0 0 auto; + width: 100%; } .offset-sm-0 { @@ -1016,168 +1003,170 @@ pre code { .offset-sm-11 { margin-left: 91.6666666667%; } -} -@media (min-width: 768px) { - .col-md { - flex-basis: 0; - flex-grow: 1; - max-width: 100%; - } - - .row-cols-md-1 > * { - flex: 0 0 100%; - max-width: 100%; - } - .row-cols-md-2 > * { - flex: 0 0 50%; - max-width: 50%; + .g-sm-0, +.gx-sm-0 { + --bs-gutter-x: 0; } - .row-cols-md-3 > * { - flex: 0 0 33.3333333333%; - max-width: 33.3333333333%; + .g-sm-0, +.gy-sm-0 { + --bs-gutter-y: 0; } - .row-cols-md-4 > * { - flex: 0 0 25%; - max-width: 25%; + .g-sm-1, +.gx-sm-1 { + --bs-gutter-x: 0.25rem; } - .row-cols-md-5 > * { - flex: 0 0 20%; - max-width: 20%; + .g-sm-1, +.gy-sm-1 { + --bs-gutter-y: 0.25rem; } - .row-cols-md-6 > * { - flex: 0 0 16.6666666667%; - max-width: 16.6666666667%; + .g-sm-2, +.gx-sm-2 { + --bs-gutter-x: 0.5rem; } - .col-md-auto { - flex: 0 0 auto; - width: auto; - max-width: 100%; + .g-sm-2, +.gy-sm-2 { + --bs-gutter-y: 0.5rem; } - .col-md-1 { - flex: 0 0 8.3333333333%; - max-width: 8.3333333333%; + .g-sm-3, +.gx-sm-3 { + --bs-gutter-x: 1rem; } - .col-md-2 { - flex: 0 0 16.6666666667%; - max-width: 16.6666666667%; + .g-sm-3, +.gy-sm-3 { + --bs-gutter-y: 1rem; } - .col-md-3 { - flex: 0 0 25%; - max-width: 25%; + .g-sm-4, +.gx-sm-4 { + --bs-gutter-x: 1.5rem; } - .col-md-4 { - flex: 0 0 33.3333333333%; - max-width: 33.3333333333%; + .g-sm-4, +.gy-sm-4 { + --bs-gutter-y: 1.5rem; } - .col-md-5 { - flex: 0 0 41.6666666667%; - max-width: 41.6666666667%; + .g-sm-5, +.gx-sm-5 { + --bs-gutter-x: 3rem; } - .col-md-6 { - flex: 0 0 50%; - max-width: 50%; + .g-sm-5, +.gy-sm-5 { + --bs-gutter-y: 3rem; } - - .col-md-7 { - flex: 0 0 58.3333333333%; - max-width: 58.3333333333%; +} +@media (min-width: 768px) { + .col-md { + flex: 1 0 0%; } - .col-md-8 { - flex: 0 0 66.6666666667%; - max-width: 66.6666666667%; + .row-cols-md-auto > * { + flex: 0 0 auto; + width: auto; } - .col-md-9 { - flex: 0 0 75%; - max-width: 75%; + .row-cols-md-1 > * { + flex: 0 0 auto; + width: 100%; } - .col-md-10 { - flex: 0 0 83.3333333333%; - max-width: 83.3333333333%; + .row-cols-md-2 > * { + flex: 0 0 auto; + width: 50%; } - .col-md-11 { - flex: 0 0 91.6666666667%; - max-width: 91.6666666667%; + .row-cols-md-3 > * { + flex: 0 0 auto; + width: 33.3333333333%; } - .col-md-12 { - flex: 0 0 100%; - max-width: 100%; + .row-cols-md-4 > * { + flex: 0 0 auto; + width: 25%; } - .order-md-first { - order: -1; + .row-cols-md-5 > * { + flex: 0 0 auto; + width: 20%; } - .order-md-last { - order: 13; + .row-cols-md-6 > * { + flex: 0 0 auto; + width: 16.6666666667%; } - .order-md-0 { - order: 0; + .col-md-auto { + flex: 0 0 auto; + width: auto; } - .order-md-1 { - order: 1; + .col-md-1 { + flex: 0 0 auto; + width: 8.3333333333%; } - .order-md-2 { - order: 2; + .col-md-2 { + flex: 0 0 auto; + width: 16.6666666667%; } - .order-md-3 { - order: 3; + .col-md-3 { + flex: 0 0 auto; + width: 25%; } - .order-md-4 { - order: 4; + .col-md-4 { + flex: 0 0 auto; + width: 33.3333333333%; } - .order-md-5 { - order: 5; + .col-md-5 { + flex: 0 0 auto; + width: 41.6666666667%; } - .order-md-6 { - order: 6; + .col-md-6 { + flex: 0 0 auto; + width: 50%; } - .order-md-7 { - order: 7; + .col-md-7 { + flex: 0 0 auto; + width: 58.3333333333%; } - .order-md-8 { - order: 8; + .col-md-8 { + flex: 0 0 auto; + width: 66.6666666667%; } - .order-md-9 { - order: 9; + .col-md-9 { + flex: 0 0 auto; + width: 75%; } - .order-md-10 { - order: 10; + .col-md-10 { + flex: 0 0 auto; + width: 83.3333333333%; } - .order-md-11 { - order: 11; + .col-md-11 { + flex: 0 0 auto; + width: 91.6666666667%; } - .order-md-12 { - order: 12; + .col-md-12 { + flex: 0 0 auto; + width: 100%; } .offset-md-0 { @@ -1227,168 +1216,170 @@ pre code { .offset-md-11 { margin-left: 91.6666666667%; } -} -@media (min-width: 992px) { - .col-lg { - flex-basis: 0; - flex-grow: 1; - max-width: 100%; + + .g-md-0, +.gx-md-0 { + --bs-gutter-x: 0; } - .row-cols-lg-1 > * { - flex: 0 0 100%; - max-width: 100%; + .g-md-0, +.gy-md-0 { + --bs-gutter-y: 0; } - .row-cols-lg-2 > * { - flex: 0 0 50%; - max-width: 50%; + .g-md-1, +.gx-md-1 { + --bs-gutter-x: 0.25rem; } - .row-cols-lg-3 > * { - flex: 0 0 33.3333333333%; - max-width: 33.3333333333%; + .g-md-1, +.gy-md-1 { + --bs-gutter-y: 0.25rem; } - .row-cols-lg-4 > * { - flex: 0 0 25%; - max-width: 25%; + .g-md-2, +.gx-md-2 { + --bs-gutter-x: 0.5rem; } - .row-cols-lg-5 > * { - flex: 0 0 20%; - max-width: 20%; + .g-md-2, +.gy-md-2 { + --bs-gutter-y: 0.5rem; } - .row-cols-lg-6 > * { - flex: 0 0 16.6666666667%; - max-width: 16.6666666667%; + .g-md-3, +.gx-md-3 { + --bs-gutter-x: 1rem; } - .col-lg-auto { - flex: 0 0 auto; - width: auto; - max-width: 100%; - } - - .col-lg-1 { - flex: 0 0 8.3333333333%; - max-width: 8.3333333333%; - } - - .col-lg-2 { - flex: 0 0 16.6666666667%; - max-width: 16.6666666667%; + .g-md-3, +.gy-md-3 { + --bs-gutter-y: 1rem; } - .col-lg-3 { - flex: 0 0 25%; - max-width: 25%; + .g-md-4, +.gx-md-4 { + --bs-gutter-x: 1.5rem; } - .col-lg-4 { - flex: 0 0 33.3333333333%; - max-width: 33.3333333333%; + .g-md-4, +.gy-md-4 { + --bs-gutter-y: 1.5rem; } - .col-lg-5 { - flex: 0 0 41.6666666667%; - max-width: 41.6666666667%; + .g-md-5, +.gx-md-5 { + --bs-gutter-x: 3rem; } - .col-lg-6 { - flex: 0 0 50%; - max-width: 50%; + .g-md-5, +.gy-md-5 { + --bs-gutter-y: 3rem; } - - .col-lg-7 { - flex: 0 0 58.3333333333%; - max-width: 58.3333333333%; +} +@media (min-width: 992px) { + .col-lg { + flex: 1 0 0%; } - .col-lg-8 { - flex: 0 0 66.6666666667%; - max-width: 66.6666666667%; + .row-cols-lg-auto > * { + flex: 0 0 auto; + width: auto; } - .col-lg-9 { - flex: 0 0 75%; - max-width: 75%; + .row-cols-lg-1 > * { + flex: 0 0 auto; + width: 100%; } - .col-lg-10 { - flex: 0 0 83.3333333333%; - max-width: 83.3333333333%; + .row-cols-lg-2 > * { + flex: 0 0 auto; + width: 50%; } - .col-lg-11 { - flex: 0 0 91.6666666667%; - max-width: 91.6666666667%; + .row-cols-lg-3 > * { + flex: 0 0 auto; + width: 33.3333333333%; } - .col-lg-12 { - flex: 0 0 100%; - max-width: 100%; + .row-cols-lg-4 > * { + flex: 0 0 auto; + width: 25%; } - .order-lg-first { - order: -1; + .row-cols-lg-5 > * { + flex: 0 0 auto; + width: 20%; } - .order-lg-last { - order: 13; + .row-cols-lg-6 > * { + flex: 0 0 auto; + width: 16.6666666667%; } - .order-lg-0 { - order: 0; + .col-lg-auto { + flex: 0 0 auto; + width: auto; } - .order-lg-1 { - order: 1; + .col-lg-1 { + flex: 0 0 auto; + width: 8.3333333333%; } - .order-lg-2 { - order: 2; + .col-lg-2 { + flex: 0 0 auto; + width: 16.6666666667%; } - .order-lg-3 { - order: 3; + .col-lg-3 { + flex: 0 0 auto; + width: 25%; } - .order-lg-4 { - order: 4; + .col-lg-4 { + flex: 0 0 auto; + width: 33.3333333333%; } - .order-lg-5 { - order: 5; + .col-lg-5 { + flex: 0 0 auto; + width: 41.6666666667%; } - .order-lg-6 { - order: 6; + .col-lg-6 { + flex: 0 0 auto; + width: 50%; } - .order-lg-7 { - order: 7; + .col-lg-7 { + flex: 0 0 auto; + width: 58.3333333333%; } - .order-lg-8 { - order: 8; + .col-lg-8 { + flex: 0 0 auto; + width: 66.6666666667%; } - .order-lg-9 { - order: 9; + .col-lg-9 { + flex: 0 0 auto; + width: 75%; } - .order-lg-10 { - order: 10; + .col-lg-10 { + flex: 0 0 auto; + width: 83.3333333333%; } - .order-lg-11 { - order: 11; + .col-lg-11 { + flex: 0 0 auto; + width: 91.6666666667%; } - .order-lg-12 { - order: 12; + .col-lg-12 { + flex: 0 0 auto; + width: 100%; } .offset-lg-0 { @@ -1438,168 +1429,170 @@ pre code { .offset-lg-11 { margin-left: 91.6666666667%; } -} -@media (min-width: 1200px) { - .col-xl { - flex-basis: 0; - flex-grow: 1; - max-width: 100%; - } - - .row-cols-xl-1 > * { - flex: 0 0 100%; - max-width: 100%; - } - .row-cols-xl-2 > * { - flex: 0 0 50%; - max-width: 50%; + .g-lg-0, +.gx-lg-0 { + --bs-gutter-x: 0; } - .row-cols-xl-3 > * { - flex: 0 0 33.3333333333%; - max-width: 33.3333333333%; + .g-lg-0, +.gy-lg-0 { + --bs-gutter-y: 0; } - .row-cols-xl-4 > * { - flex: 0 0 25%; - max-width: 25%; + .g-lg-1, +.gx-lg-1 { + --bs-gutter-x: 0.25rem; } - .row-cols-xl-5 > * { - flex: 0 0 20%; - max-width: 20%; + .g-lg-1, +.gy-lg-1 { + --bs-gutter-y: 0.25rem; } - .row-cols-xl-6 > * { - flex: 0 0 16.6666666667%; - max-width: 16.6666666667%; + .g-lg-2, +.gx-lg-2 { + --bs-gutter-x: 0.5rem; } - .col-xl-auto { - flex: 0 0 auto; - width: auto; - max-width: 100%; + .g-lg-2, +.gy-lg-2 { + --bs-gutter-y: 0.5rem; } - .col-xl-1 { - flex: 0 0 8.3333333333%; - max-width: 8.3333333333%; + .g-lg-3, +.gx-lg-3 { + --bs-gutter-x: 1rem; } - .col-xl-2 { - flex: 0 0 16.6666666667%; - max-width: 16.6666666667%; + .g-lg-3, +.gy-lg-3 { + --bs-gutter-y: 1rem; } - .col-xl-3 { - flex: 0 0 25%; - max-width: 25%; + .g-lg-4, +.gx-lg-4 { + --bs-gutter-x: 1.5rem; } - .col-xl-4 { - flex: 0 0 33.3333333333%; - max-width: 33.3333333333%; + .g-lg-4, +.gy-lg-4 { + --bs-gutter-y: 1.5rem; } - .col-xl-5 { - flex: 0 0 41.6666666667%; - max-width: 41.6666666667%; + .g-lg-5, +.gx-lg-5 { + --bs-gutter-x: 3rem; } - .col-xl-6 { - flex: 0 0 50%; - max-width: 50%; + .g-lg-5, +.gy-lg-5 { + --bs-gutter-y: 3rem; } - - .col-xl-7 { - flex: 0 0 58.3333333333%; - max-width: 58.3333333333%; +} +@media (min-width: 1200px) { + .col-xl { + flex: 1 0 0%; } - .col-xl-8 { - flex: 0 0 66.6666666667%; - max-width: 66.6666666667%; + .row-cols-xl-auto > * { + flex: 0 0 auto; + width: auto; } - .col-xl-9 { - flex: 0 0 75%; - max-width: 75%; + .row-cols-xl-1 > * { + flex: 0 0 auto; + width: 100%; } - .col-xl-10 { - flex: 0 0 83.3333333333%; - max-width: 83.3333333333%; + .row-cols-xl-2 > * { + flex: 0 0 auto; + width: 50%; } - .col-xl-11 { - flex: 0 0 91.6666666667%; - max-width: 91.6666666667%; + .row-cols-xl-3 > * { + flex: 0 0 auto; + width: 33.3333333333%; } - .col-xl-12 { - flex: 0 0 100%; - max-width: 100%; + .row-cols-xl-4 > * { + flex: 0 0 auto; + width: 25%; } - .order-xl-first { - order: -1; + .row-cols-xl-5 > * { + flex: 0 0 auto; + width: 20%; } - .order-xl-last { - order: 13; + .row-cols-xl-6 > * { + flex: 0 0 auto; + width: 16.6666666667%; } - .order-xl-0 { - order: 0; + .col-xl-auto { + flex: 0 0 auto; + width: auto; } - .order-xl-1 { - order: 1; + .col-xl-1 { + flex: 0 0 auto; + width: 8.3333333333%; } - .order-xl-2 { - order: 2; + .col-xl-2 { + flex: 0 0 auto; + width: 16.6666666667%; } - .order-xl-3 { - order: 3; + .col-xl-3 { + flex: 0 0 auto; + width: 25%; } - .order-xl-4 { - order: 4; + .col-xl-4 { + flex: 0 0 auto; + width: 33.3333333333%; } - .order-xl-5 { - order: 5; + .col-xl-5 { + flex: 0 0 auto; + width: 41.6666666667%; } - .order-xl-6 { - order: 6; + .col-xl-6 { + flex: 0 0 auto; + width: 50%; } - .order-xl-7 { - order: 7; + .col-xl-7 { + flex: 0 0 auto; + width: 58.3333333333%; } - .order-xl-8 { - order: 8; + .col-xl-8 { + flex: 0 0 auto; + width: 66.6666666667%; } - .order-xl-9 { - order: 9; + .col-xl-9 { + flex: 0 0 auto; + width: 75%; } - .order-xl-10 { - order: 10; + .col-xl-10 { + flex: 0 0 auto; + width: 83.3333333333%; } - .order-xl-11 { - order: 11; + .col-xl-11 { + flex: 0 0 auto; + width: 91.6666666667%; } - .order-xl-12 { - order: 12; + .col-xl-12 { + flex: 0 0 auto; + width: 100%; } .offset-xl-0 { @@ -1649,330 +1642,301 @@ pre code { .offset-xl-11 { margin-left: 91.6666666667%; } -} -.table { - width: 100%; - margin-bottom: 1rem; - color: #212529; -} -.table th, -.table td { - padding: 0.75rem; - vertical-align: top; - border-top: 1px solid #dee2e6; -} -.table thead th { - vertical-align: bottom; - border-bottom: 2px solid #dee2e6; -} -.table tbody + tbody { - border-top: 2px solid #dee2e6; -} -.table-sm th, -.table-sm td { - padding: 0.3rem; -} + .g-xl-0, +.gx-xl-0 { + --bs-gutter-x: 0; + } -.table-bordered { - border: 1px solid #dee2e6; -} -.table-bordered th, -.table-bordered td { - border: 1px solid #dee2e6; -} -.table-bordered thead th, -.table-bordered thead td { - border-bottom-width: 2px; -} + .g-xl-0, +.gy-xl-0 { + --bs-gutter-y: 0; + } -.table-borderless th, -.table-borderless td, -.table-borderless thead th, -.table-borderless tbody + tbody { - border: 0; -} + .g-xl-1, +.gx-xl-1 { + --bs-gutter-x: 0.25rem; + } -.table-striped tbody tr:nth-of-type(odd) { - background-color: rgba(0, 0, 0, 0.05); -} + .g-xl-1, +.gy-xl-1 { + --bs-gutter-y: 0.25rem; + } -.table-hover tbody tr:hover { - color: #212529; - background-color: rgba(0, 0, 0, 0.075); -} + .g-xl-2, +.gx-xl-2 { + --bs-gutter-x: 0.5rem; + } -.table-primary, -.table-primary > th, -.table-primary > td { - background-color: #b8d9f4; -} -.table-primary th, -.table-primary td, -.table-primary thead th, -.table-primary tbody + tbody { - border-color: #7ab9ea; -} + .g-xl-2, +.gy-xl-2 { + --bs-gutter-y: 0.5rem; + } -.table-hover .table-primary:hover { - background-color: #a2cdf1; -} -.table-hover .table-primary:hover > td, -.table-hover .table-primary:hover > th { - background-color: #a2cdf1; -} + .g-xl-3, +.gx-xl-3 { + --bs-gutter-x: 1rem; + } -.table-secondary, -.table-secondary > th, -.table-secondary > td { - background-color: #d6d8db; -} -.table-secondary th, -.table-secondary td, -.table-secondary thead th, -.table-secondary tbody + tbody { - border-color: #b3b7bb; -} + .g-xl-3, +.gy-xl-3 { + --bs-gutter-y: 1rem; + } -.table-hover .table-secondary:hover { - background-color: #c8cbcf; -} -.table-hover .table-secondary:hover > td, -.table-hover .table-secondary:hover > th { - background-color: #c8cbcf; -} + .g-xl-4, +.gx-xl-4 { + --bs-gutter-x: 1.5rem; + } -.table-success, -.table-success > th, -.table-success > td { - background-color: #e2f0b8; -} -.table-success th, -.table-success td, -.table-success thead th, -.table-success tbody + tbody { - border-color: #c9e27a; -} + .g-xl-4, +.gy-xl-4 { + --bs-gutter-y: 1.5rem; + } -.table-hover .table-success:hover { - background-color: #d9eca3; -} -.table-hover .table-success:hover > td, -.table-hover .table-success:hover > th { - background-color: #d9eca3; -} + .g-xl-5, +.gx-xl-5 { + --bs-gutter-x: 3rem; + } -.table-info, -.table-info > th, -.table-info > td { - background-color: #b8e2f6; + .g-xl-5, +.gy-xl-5 { + --bs-gutter-y: 3rem; + } } -.table-info th, -.table-info td, -.table-info thead th, -.table-info tbody + tbody { - border-color: #7ac9ee; +.table { + --bs-table-bg: transparent; + --bs-table-accent-bg: transparent; + --bs-table-striped-color: #212529; + --bs-table-striped-bg: rgba(0, 0, 0, 0.05); + --bs-table-active-color: #212529; + --bs-table-active-bg: rgba(0, 0, 0, 0.1); + --bs-table-hover-color: #212529; + --bs-table-hover-bg: rgba(0, 0, 0, 0.075); + width: 100%; + margin-bottom: 1rem; + color: #212529; + vertical-align: top; + border-color: #dee2e6; } - -.table-hover .table-info:hover { - background-color: #a1d9f3; +.table > :not(caption) > * > * { + padding: 0.5rem 0.5rem; + background-color: var(--bs-table-bg); + background-image: linear-gradient(var(--bs-table-accent-bg), var(--bs-table-accent-bg)); + border-bottom-width: 1px; } -.table-hover .table-info:hover > td, -.table-hover .table-info:hover > th { - background-color: #a1d9f3; +.table > tbody { + vertical-align: inherit; } - -.table-warning, -.table-warning > th, -.table-warning > td { - background-color: #ffedb8; +.table > thead { + vertical-align: bottom; } -.table-warning th, -.table-warning td, -.table-warning thead th, -.table-warning tbody + tbody { - border-color: #ffde7a; +.table > :not(:last-child) > :last-child > * { + border-bottom-color: currentColor; } -.table-hover .table-warning:hover { - background-color: #ffe79f; -} -.table-hover .table-warning:hover > td, -.table-hover .table-warning:hover > th { - background-color: #ffe79f; +.caption-top { + caption-side: top; } -.table-danger, -.table-danger > th, -.table-danger > td { - background-color: #f8cabe; -} -.table-danger th, -.table-danger td, -.table-danger thead th, -.table-danger tbody + tbody { - border-color: #f39c87; +.table-sm > :not(caption) > * > * { + padding: 0.25rem 0.25rem; } -.table-hover .table-danger:hover { - background-color: #f6b7a7; +.table-bordered > :not(caption) > * { + border-width: 1px 0; } -.table-hover .table-danger:hover > td, -.table-hover .table-danger:hover > th { - background-color: #f6b7a7; +.table-bordered > :not(caption) > * > * { + border-width: 0 1px; } -.table-light, -.table-light > th, -.table-light > td { - background-color: #fdfdfe; -} -.table-light th, -.table-light td, -.table-light thead th, -.table-light tbody + tbody { - border-color: #fbfcfc; +.table-borderless > :not(caption) > * > * { + border-bottom-width: 0; } -.table-hover .table-light:hover { - background-color: #ececf6; -} -.table-hover .table-light:hover > td, -.table-hover .table-light:hover > th { - background-color: #ececf6; +.table-striped > tbody > tr:nth-of-type(odd) { + --bs-table-accent-bg: var(--bs-table-striped-bg); + color: var(--bs-table-striped-color); } -.table-dark, -.table-dark > th, -.table-dark > td { - background-color: #c6c8ca; +.table-active { + --bs-table-accent-bg: var(--bs-table-active-bg); + color: var(--bs-table-active-color); } -.table-dark th, -.table-dark td, -.table-dark thead th, -.table-dark tbody + tbody { - border-color: #95999c; + +.table-hover > tbody > tr:hover { + --bs-table-accent-bg: var(--bs-table-hover-bg); + color: var(--bs-table-hover-color); } -.table-hover .table-dark:hover { - background-color: #b9bbbe; +.table-primary { + --bs-table-bg: #cce4f7; + --bs-table-striped-bg: #c2d9eb; + --bs-table-striped-color: #000; + --bs-table-active-bg: #b8cdde; + --bs-table-active-color: #000; + --bs-table-hover-bg: #bdd3e4; + --bs-table-hover-color: #000; + color: #000; + border-color: #b8cdde; } -.table-hover .table-dark:hover > td, -.table-hover .table-dark:hover > th { - background-color: #b9bbbe; + +.table-secondary { + --bs-table-bg: #e2e3e5; + --bs-table-striped-bg: #d7d8da; + --bs-table-striped-color: #000; + --bs-table-active-bg: #cbccce; + --bs-table-active-color: #000; + --bs-table-hover-bg: #d1d2d4; + --bs-table-hover-color: #000; + color: #000; + border-color: #cbccce; } -.table-active, -.table-active > th, -.table-active > td { - background-color: rgba(0, 0, 0, 0.075); +.table-success { + --bs-table-bg: #eaf4cc; + --bs-table-striped-bg: #dee8c2; + --bs-table-striped-color: #000; + --bs-table-active-bg: #d3dcb8; + --bs-table-active-color: #000; + --bs-table-hover-bg: #d8e2bd; + --bs-table-hover-color: #000; + color: #000; + border-color: #d3dcb8; } -.table-hover .table-active:hover { - background-color: rgba(0, 0, 0, 0.075); +.table-info { + --bs-table-bg: #cceaf9; + --bs-table-striped-bg: #c2deed; + --bs-table-striped-color: #000; + --bs-table-active-bg: #b8d3e0; + --bs-table-active-color: #000; + --bs-table-hover-bg: #bdd8e6; + --bs-table-hover-color: #000; + color: #000; + border-color: #b8d3e0; } -.table-hover .table-active:hover > td, -.table-hover .table-active:hover > th { - background-color: rgba(0, 0, 0, 0.075); + +.table-warning { + --bs-table-bg: #fff2cc; + --bs-table-striped-bg: #f2e6c2; + --bs-table-striped-color: #000; + --bs-table-active-bg: #e6dab8; + --bs-table-active-color: #000; + --bs-table-hover-bg: #ece0bd; + --bs-table-hover-color: #000; + color: #000; + border-color: #e6dab8; } -.table .thead-dark th { - color: #fff; - background-color: #343a40; - border-color: #454d55; +.table-danger { + --bs-table-bg: #fad9d1; + --bs-table-striped-bg: #eecec7; + --bs-table-striped-color: #000; + --bs-table-active-bg: #e1c3bc; + --bs-table-active-color: #000; + --bs-table-hover-bg: #e7c9c1; + --bs-table-hover-color: #000; + color: #000; + border-color: #e1c3bc; } -.table .thead-light th { - color: #495057; - background-color: #e9ecef; - border-color: #dee2e6; + +.table-light { + --bs-table-bg: #f8f9fa; + --bs-table-striped-bg: #ecedee; + --bs-table-striped-color: #000; + --bs-table-active-bg: #dfe0e1; + --bs-table-active-color: #000; + --bs-table-hover-bg: #e5e6e7; + --bs-table-hover-color: #000; + color: #000; + border-color: #dfe0e1; } .table-dark { + --bs-table-bg: #212529; + --bs-table-striped-bg: #2c3034; + --bs-table-striped-color: #fff; + --bs-table-active-bg: #373b3e; + --bs-table-active-color: #fff; + --bs-table-hover-bg: #323539; + --bs-table-hover-color: #fff; color: #fff; - background-color: #343a40; -} -.table-dark th, -.table-dark td, -.table-dark thead th { - border-color: #454d55; + border-color: #373b3e; } -.table-dark.table-bordered { - border: 0; -} -.table-dark.table-striped tbody tr:nth-of-type(odd) { - background-color: rgba(255, 255, 255, 0.05); -} -.table-dark.table-hover tbody tr:hover { - color: #fff; - background-color: rgba(255, 255, 255, 0.075); + +.table-responsive { + overflow-x: auto; + -webkit-overflow-scrolling: touch; } @media (max-width: 575.98px) { .table-responsive-sm { - display: block; - width: 100%; overflow-x: auto; -webkit-overflow-scrolling: touch; } - .table-responsive-sm > .table-bordered { - border: 0; - } } @media (max-width: 767.98px) { .table-responsive-md { - display: block; - width: 100%; overflow-x: auto; -webkit-overflow-scrolling: touch; } - .table-responsive-md > .table-bordered { - border: 0; - } } @media (max-width: 991.98px) { .table-responsive-lg { - display: block; - width: 100%; overflow-x: auto; -webkit-overflow-scrolling: touch; } - .table-responsive-lg > .table-bordered { - border: 0; - } } @media (max-width: 1199.98px) { .table-responsive-xl { - display: block; - width: 100%; overflow-x: auto; -webkit-overflow-scrolling: touch; } - .table-responsive-xl > .table-bordered { - border: 0; - } } -.table-responsive { - display: block; - width: 100%; - overflow-x: auto; - -webkit-overflow-scrolling: touch; +.form-label { + margin-bottom: 0.5rem; } -.table-responsive > .table-bordered { - border: 0; + +.col-form-label { + padding-top: calc(0.375rem + 1px); + padding-bottom: calc(0.375rem + 1px); + margin-bottom: 0; + font-size: inherit; + line-height: 1.6; +} + +.col-form-label-lg { + padding-top: calc(0.5rem + 1px); + padding-bottom: calc(0.5rem + 1px); + font-size: 1.25rem; +} + +.col-form-label-sm { + padding-top: calc(0.25rem + 1px); + padding-bottom: calc(0.25rem + 1px); + font-size: 0.875rem; +} + +.form-text { + margin-top: 0.25rem; + font-size: 0.875em; + color: #6c757d; } .form-control { display: block; width: 100%; - height: calc(1.6em + 0.75rem + 2px); padding: 0.375rem 0.75rem; font-size: 1rem; font-weight: 400; line-height: 1.6; - color: #495057; + color: #212529; background-color: #fff; background-clip: padding-box; border: 1px solid #ced4da; + -webkit-appearance: none; + -moz-appearance: none; + appearance: none; border-radius: 0.25rem; transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; } @@ -1981,21 +1945,22 @@ pre code { transition: none; } } -.form-control::-ms-expand { - background-color: transparent; - border: 0; +.form-control[type=file] { + overflow: hidden; } -.form-control:-moz-focusring { - color: transparent; - text-shadow: 0 0 0 #495057; +.form-control[type=file]:not(:disabled):not([readonly]) { + cursor: pointer; } .form-control:focus { - color: #495057; + color: #212529; background-color: #fff; - border-color: #58b5ff; + border-color: #80bceb; outline: 0; box-shadow: none; } +.form-control::-webkit-date-and-time-value { + height: 1.6em; +} .form-control::-moz-placeholder { color: #6c757d; opacity: 1; @@ -2012,47 +1977,53 @@ pre code { background-color: #e9ecef; opacity: 1; } - -input[type=date].form-control, -input[type=time].form-control, -input[type=datetime-local].form-control, -input[type=month].form-control { - -webkit-appearance: none; - -moz-appearance: none; - appearance: none; +.form-control::file-selector-button { + padding: 0.375rem 0.75rem; + margin: -0.375rem -0.75rem; + -webkit-margin-end: 0.75rem; + margin-inline-end: 0.75rem; + color: #212529; + background-color: #e9ecef; + pointer-events: none; + border-color: inherit; + border-style: solid; + border-width: 0; + border-inline-end-width: 1px; + border-radius: 0; + transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; } - -select.form-control:focus::-ms-value { - color: #495057; - background-color: #fff; +@media (prefers-reduced-motion: reduce) { + .form-control::file-selector-button { + transition: none; + } } - -.form-control-file, -.form-control-range { - display: block; - width: 100%; +.form-control:hover:not(:disabled):not([readonly])::file-selector-button { + background-color: #dde0e3; } - -.col-form-label { - padding-top: calc(0.375rem + 1px); - padding-bottom: calc(0.375rem + 1px); - margin-bottom: 0; - font-size: inherit; - line-height: 1.6; +.form-control::-webkit-file-upload-button { + padding: 0.375rem 0.75rem; + margin: -0.375rem -0.75rem; + -webkit-margin-end: 0.75rem; + margin-inline-end: 0.75rem; + color: #212529; + background-color: #e9ecef; + pointer-events: none; + border-color: inherit; + border-style: solid; + border-width: 0; + border-inline-end-width: 1px; + border-radius: 0; + -webkit-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; + transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; } - -.col-form-label-lg { - padding-top: calc(0.5rem + 1px); - padding-bottom: calc(0.5rem + 1px); - font-size: 1.25rem; - line-height: 1.5; +@media (prefers-reduced-motion: reduce) { + .form-control::-webkit-file-upload-button { + -webkit-transition: none; + transition: none; + } } - -.col-form-label-sm { - padding-top: calc(0.25rem + 1px); - padding-bottom: calc(0.25rem + 1px); - font-size: 0.875rem; - line-height: 1.5; +.form-control:hover:not(:disabled):not([readonly])::-webkit-file-upload-button { + background-color: #dde0e3; } .form-control-plaintext { @@ -2060,7 +2031,6 @@ select.form-control:focus::-ms-value { width: 100%; padding: 0.375rem 0; margin-bottom: 0; - font-size: 1rem; line-height: 1.6; color: #212529; background-color: transparent; @@ -2073,730 +2043,1021 @@ select.form-control:focus::-ms-value { } .form-control-sm { - height: calc(1.5em + 0.5rem + 2px); + min-height: calc(1.6em + 0.5rem + 2px); padding: 0.25rem 0.5rem; font-size: 0.875rem; - line-height: 1.5; border-radius: 0.2rem; } +.form-control-sm::file-selector-button { + padding: 0.25rem 0.5rem; + margin: -0.25rem -0.5rem; + -webkit-margin-end: 0.5rem; + margin-inline-end: 0.5rem; +} +.form-control-sm::-webkit-file-upload-button { + padding: 0.25rem 0.5rem; + margin: -0.25rem -0.5rem; + -webkit-margin-end: 0.5rem; + margin-inline-end: 0.5rem; +} .form-control-lg { - height: calc(1.5em + 1rem + 2px); + min-height: calc(1.6em + 1rem + 2px); padding: 0.5rem 1rem; font-size: 1.25rem; - line-height: 1.5; border-radius: 0.3rem; } - -select.form-control[size], select.form-control[multiple] { - height: auto; +.form-control-lg::file-selector-button { + padding: 0.5rem 1rem; + margin: -0.5rem -1rem; + -webkit-margin-end: 1rem; + margin-inline-end: 1rem; +} +.form-control-lg::-webkit-file-upload-button { + padding: 0.5rem 1rem; + margin: -0.5rem -1rem; + -webkit-margin-end: 1rem; + margin-inline-end: 1rem; } textarea.form-control { - height: auto; + min-height: calc(1.6em + 0.75rem + 2px); } - -.form-group { - margin-bottom: 1rem; +textarea.form-control-sm { + min-height: calc(1.6em + 0.5rem + 2px); } - -.form-text { - display: block; - margin-top: 0.25rem; +textarea.form-control-lg { + min-height: calc(1.6em + 1rem + 2px); } -.form-row { - display: flex; - flex-wrap: wrap; - margin-right: -5px; - margin-left: -5px; +.form-control-color { + max-width: 3rem; + height: auto; + padding: 0.375rem; } -.form-row > .col, -.form-row > [class*=col-] { - padding-right: 5px; - padding-left: 5px; +.form-control-color:not(:disabled):not([readonly]) { + cursor: pointer; } - -.form-check { - position: relative; - display: block; - padding-left: 1.25rem; +.form-control-color::-moz-color-swatch { + height: 1.6em; + border-radius: 0.25rem; +} +.form-control-color::-webkit-color-swatch { + height: 1.6em; + border-radius: 0.25rem; } -.form-check-input { - position: absolute; - margin-top: 0.3rem; - margin-left: -1.25rem; +.form-select { + display: block; + width: 100%; + padding: 0.375rem 1.75rem 0.375rem 0.75rem; + font-size: 1rem; + font-weight: 400; + line-height: 1.6; + color: #212529; + vertical-align: middle; + background-color: #fff; + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e"); + background-repeat: no-repeat; + background-position: right 0.75rem center; + background-size: 16px 12px; + border: 1px solid #ced4da; + border-radius: 0.25rem; + -webkit-appearance: none; + -moz-appearance: none; + appearance: none; } -.form-check-input[disabled] ~ .form-check-label, .form-check-input:disabled ~ .form-check-label { - color: #6c757d; +.form-select:focus { + border-color: #80bceb; + outline: 0; + box-shadow: 0 0 0 0.25rem rgba(0, 120, 215, 0.25); } - -.form-check-label { - margin-bottom: 0; +.form-select[multiple], .form-select[size]:not([size="1"]) { + padding-right: 0.75rem; + background-image: none; } - -.form-check-inline { - display: inline-flex; - align-items: center; - padding-left: 0; - margin-right: 0.75rem; +.form-select:disabled { + color: #6c757d; + background-color: #e9ecef; } -.form-check-inline .form-check-input { - position: static; - margin-top: 0; - margin-right: 0.3125rem; - margin-left: 0; +.form-select:-moz-focusring { + color: transparent; + text-shadow: 0 0 0 #212529; } -.valid-feedback { - display: none; - width: 100%; - margin-top: 0.25rem; - font-size: 80%; - color: #97c800; +.form-select-sm { + padding-top: 0.25rem; + padding-bottom: 0.25rem; + padding-left: 0.5rem; + font-size: 0.875rem; } -.valid-tooltip { - position: absolute; - top: 100%; - left: 0; - z-index: 5; - display: none; - max-width: 100%; - padding: 0.25rem 0.5rem; - margin-top: 0.1rem; - font-size: 0.875rem; - line-height: 1.6; - color: #212529; - background-color: rgba(151, 200, 0, 0.9); - border-radius: 0.25rem; +.form-select-lg { + padding-top: 0.5rem; + padding-bottom: 0.5rem; + padding-left: 1rem; + font-size: 1.25rem; } -.was-validated :valid ~ .valid-feedback, -.was-validated :valid ~ .valid-tooltip, -.is-valid ~ .valid-feedback, -.is-valid ~ .valid-tooltip { +.form-check { display: block; + min-height: 1.6rem; + padding-left: 1.5em; + margin-bottom: 0.125rem; +} +.form-check .form-check-input { + float: left; + margin-left: -1.5em; } -.was-validated .form-control:valid, .form-control.is-valid { - border-color: #97c800; - padding-right: calc(1.6em + 0.75rem); - background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%2397c800' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e"); +.form-check-input { + width: 1em; + height: 1em; + margin-top: 0.3em; + vertical-align: top; + background-color: #fff; background-repeat: no-repeat; - background-position: right calc(0.4em + 0.1875rem) center; - background-size: calc(0.8em + 0.375rem) calc(0.8em + 0.375rem); + background-position: center; + background-size: contain; + border: 1px solid rgba(0, 0, 0, 0.25); + -webkit-appearance: none; + -moz-appearance: none; + appearance: none; + -webkit-print-color-adjust: exact; + color-adjust: exact; + transition: background-color 0.15s ease-in-out, background-position 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; } -.was-validated .form-control:valid:focus, .form-control.is-valid:focus { - border-color: #97c800; - box-shadow: 0 0 0 0.2rem rgba(151, 200, 0, 0.25); +@media (prefers-reduced-motion: reduce) { + .form-check-input { + transition: none; + } } - -.was-validated textarea.form-control:valid, textarea.form-control.is-valid { - padding-right: calc(1.6em + 0.75rem); - background-position: top calc(0.4em + 0.1875rem) right calc(0.4em + 0.1875rem); +.form-check-input[type=checkbox] { + border-radius: 0.25em; } - -.was-validated .custom-select:valid, .custom-select.is-valid { - border-color: #97c800; - padding-right: calc(0.75em + 2.3125rem); - background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right 0.75rem center/8px 10px, url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%2397c800' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e") #fff no-repeat center right 1.75rem/calc(0.8em + 0.375rem) calc(0.8em + 0.375rem); +.form-check-input[type=radio] { + border-radius: 50%; } -.was-validated .custom-select:valid:focus, .custom-select.is-valid:focus { - border-color: #97c800; - box-shadow: 0 0 0 0.2rem rgba(151, 200, 0, 0.25); +.form-check-input:active { + filter: brightness(90%); } - -.was-validated .form-check-input:valid ~ .form-check-label, .form-check-input.is-valid ~ .form-check-label { - color: #97c800; +.form-check-input:focus { + border-color: #80bceb; + outline: 0; + box-shadow: 0 0 0 0.25rem rgba(0, 120, 215, 0.25); } -.was-validated .form-check-input:valid ~ .valid-feedback, -.was-validated .form-check-input:valid ~ .valid-tooltip, .form-check-input.is-valid ~ .valid-feedback, -.form-check-input.is-valid ~ .valid-tooltip { - display: block; +.form-check-input:checked { + background-color: #0078d7; + border-color: #0078d7; } - -.was-validated .custom-control-input:valid ~ .custom-control-label, .custom-control-input.is-valid ~ .custom-control-label { - color: #97c800; +.form-check-input:checked[type=checkbox] { + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10l3 3l6-6'/%3e%3c/svg%3e"); } -.was-validated .custom-control-input:valid ~ .custom-control-label::before, .custom-control-input.is-valid ~ .custom-control-label::before { - border-color: #97c800; +.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"); } -.was-validated .custom-control-input:valid:checked ~ .custom-control-label::before, .custom-control-input.is-valid:checked ~ .custom-control-label::before { - border-color: #befb00; - background-color: #befb00; +.form-check-input[type=checkbox]:indeterminate { + background-color: #0078d7; + border-color: #0078d7; + 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"); } -.was-validated .custom-control-input:valid:focus ~ .custom-control-label::before, .custom-control-input.is-valid:focus ~ .custom-control-label::before { - box-shadow: 0 0 0 0.2rem rgba(151, 200, 0, 0.25); +.form-check-input:disabled { + pointer-events: none; + filter: none; + opacity: 0.5; } -.was-validated .custom-control-input:valid:focus:not(:checked) ~ .custom-control-label::before, .custom-control-input.is-valid:focus:not(:checked) ~ .custom-control-label::before { - border-color: #97c800; +.form-check-input[disabled] ~ .form-check-label, .form-check-input:disabled ~ .form-check-label { + opacity: 0.5; } -.was-validated .custom-file-input:valid ~ .custom-file-label, .custom-file-input.is-valid ~ .custom-file-label { - border-color: #97c800; +.form-switch { + padding-left: 2.5em; } -.was-validated .custom-file-input:valid:focus ~ .custom-file-label, .custom-file-input.is-valid:focus ~ .custom-file-label { - border-color: #97c800; - box-shadow: 0 0 0 0.2rem rgba(151, 200, 0, 0.25); +.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; +} +.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='%2380bceb'/%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"); } -.invalid-feedback { - display: none; - width: 100%; - margin-top: 0.25rem; - font-size: 80%; - color: #e74018; +.form-check-inline { + display: inline-block; + margin-right: 1rem; } -.invalid-tooltip { +.btn-check { position: absolute; - top: 100%; - left: 0; - z-index: 5; - display: none; - max-width: 100%; - padding: 0.25rem 0.5rem; - margin-top: 0.1rem; - font-size: 0.875rem; - line-height: 1.6; - color: #fff; - background-color: rgba(231, 64, 24, 0.9); - border-radius: 0.25rem; + clip: rect(0, 0, 0, 0); + pointer-events: none; } - -.was-validated :invalid ~ .invalid-feedback, -.was-validated :invalid ~ .invalid-tooltip, -.is-invalid ~ .invalid-feedback, -.is-invalid ~ .invalid-tooltip { - display: block; +.btn-check[disabled] + .btn, .btn-check:disabled + .btn { + pointer-events: none; + filter: none; + opacity: 0.65; } -.was-validated .form-control:invalid, .form-control.is-invalid { - border-color: #e74018; - padding-right: calc(1.6em + 0.75rem); - background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23e74018' viewBox='0 0 12 12'%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='%23e74018' stroke='none'/%3e%3c/svg%3e"); - background-repeat: no-repeat; - background-position: right calc(0.4em + 0.1875rem) center; - background-size: calc(0.8em + 0.375rem) calc(0.8em + 0.375rem); -} -.was-validated .form-control:invalid:focus, .form-control.is-invalid:focus { - border-color: #e74018; - box-shadow: 0 0 0 0.2rem rgba(231, 64, 24, 0.25); +.form-range { + width: 100%; + height: 1.5rem; + padding: 0; + background-color: transparent; + -webkit-appearance: none; + -moz-appearance: none; + appearance: none; } - -.was-validated textarea.form-control:invalid, textarea.form-control.is-invalid { - padding-right: calc(1.6em + 0.75rem); - background-position: top calc(0.4em + 0.1875rem) right calc(0.4em + 0.1875rem); +.form-range:focus { + outline: none; } - -.was-validated .custom-select:invalid, .custom-select.is-invalid { - border-color: #e74018; - padding-right: calc(0.75em + 2.3125rem); - background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right 0.75rem center/8px 10px, url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23e74018' viewBox='0 0 12 12'%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='%23e74018' stroke='none'/%3e%3c/svg%3e") #fff no-repeat center right 1.75rem/calc(0.8em + 0.375rem) calc(0.8em + 0.375rem); +.form-range:focus::-webkit-slider-thumb { + box-shadow: 0 0 0 1px #fff, none; } -.was-validated .custom-select:invalid:focus, .custom-select.is-invalid:focus { - border-color: #e74018; - box-shadow: 0 0 0 0.2rem rgba(231, 64, 24, 0.25); +.form-range:focus::-moz-range-thumb { + box-shadow: 0 0 0 1px #fff, none; } - -.was-validated .form-check-input:invalid ~ .form-check-label, .form-check-input.is-invalid ~ .form-check-label { - color: #e74018; +.form-range::-moz-focus-outer { + border: 0; } -.was-validated .form-check-input:invalid ~ .invalid-feedback, -.was-validated .form-check-input:invalid ~ .invalid-tooltip, .form-check-input.is-invalid ~ .invalid-feedback, -.form-check-input.is-invalid ~ .invalid-tooltip { - display: block; +.form-range::-webkit-slider-thumb { + width: 1rem; + height: 1rem; + margin-top: -0.25rem; + background-color: #0078d7; + border: 0; + border-radius: 1rem; + -webkit-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; + transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; + -webkit-appearance: none; + appearance: none; } - -.was-validated .custom-control-input:invalid ~ .custom-control-label, .custom-control-input.is-invalid ~ .custom-control-label { - color: #e74018; +@media (prefers-reduced-motion: reduce) { + .form-range::-webkit-slider-thumb { + -webkit-transition: none; + transition: none; + } } -.was-validated .custom-control-input:invalid ~ .custom-control-label::before, .custom-control-input.is-invalid ~ .custom-control-label::before { - border-color: #e74018; +.form-range::-webkit-slider-thumb:active { + background-color: #b3d7f3; } -.was-validated .custom-control-input:invalid:checked ~ .custom-control-label::before, .custom-control-input.is-invalid:checked ~ .custom-control-label::before { - border-color: #ec6646; - background-color: #ec6646; +.form-range::-webkit-slider-runnable-track { + width: 100%; + height: 0.5rem; + color: transparent; + cursor: pointer; + background-color: #dee2e6; + border-color: transparent; + border-radius: 1rem; } -.was-validated .custom-control-input:invalid:focus ~ .custom-control-label::before, .custom-control-input.is-invalid:focus ~ .custom-control-label::before { - box-shadow: 0 0 0 0.2rem rgba(231, 64, 24, 0.25); +.form-range::-moz-range-thumb { + width: 1rem; + height: 1rem; + background-color: #0078d7; + border: 0; + border-radius: 1rem; + -moz-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; + transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; + -moz-appearance: none; + appearance: none; } -.was-validated .custom-control-input:invalid:focus:not(:checked) ~ .custom-control-label::before, .custom-control-input.is-invalid:focus:not(:checked) ~ .custom-control-label::before { - border-color: #e74018; +@media (prefers-reduced-motion: reduce) { + .form-range::-moz-range-thumb { + -moz-transition: none; + transition: none; + } } - -.was-validated .custom-file-input:invalid ~ .custom-file-label, .custom-file-input.is-invalid ~ .custom-file-label { - border-color: #e74018; +.form-range::-moz-range-thumb:active { + background-color: #b3d7f3; } -.was-validated .custom-file-input:invalid:focus ~ .custom-file-label, .custom-file-input.is-invalid:focus ~ .custom-file-label { - border-color: #e74018; - box-shadow: 0 0 0 0.2rem rgba(231, 64, 24, 0.25); +.form-range::-moz-range-track { + width: 100%; + height: 0.5rem; + color: transparent; + cursor: pointer; + background-color: #dee2e6; + border-color: transparent; + border-radius: 1rem; } - -.form-inline { - display: flex; - flex-flow: row wrap; - align-items: center; +.form-range:disabled { + pointer-events: none; } -.form-inline .form-check { - width: 100%; +.form-range:disabled::-webkit-slider-thumb { + background-color: #adb5bd; } -@media (min-width: 576px) { - .form-inline label { - display: flex; - align-items: center; - justify-content: center; - margin-bottom: 0; - } - .form-inline .form-group { - display: flex; - flex: 0 0 auto; - flex-flow: row wrap; - align-items: center; - margin-bottom: 0; - } - .form-inline .form-control { - display: inline-block; - width: auto; - vertical-align: middle; - } - .form-inline .form-control-plaintext { - display: inline-block; - } - .form-inline .input-group, -.form-inline .custom-select { - width: auto; - } - .form-inline .form-check { - display: flex; - align-items: center; - justify-content: center; - width: auto; - padding-left: 0; - } - .form-inline .form-check-input { - position: relative; - flex-shrink: 0; - margin-top: 0; - margin-right: 0.25rem; - margin-left: 0; - } - .form-inline .custom-control { - align-items: center; - justify-content: center; - } - .form-inline .custom-control-label { - margin-bottom: 0; - } +.form-range:disabled::-moz-range-thumb { + background-color: #adb5bd; } -.btn { - display: inline-block; - font-weight: 400; - color: #212529; - text-align: center; - vertical-align: middle; - -webkit-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; - background-color: transparent; +.form-floating { + position: relative; +} +.form-floating > .form-control, +.form-floating > .form-select { + height: calc(3.5rem + 2px); + padding: 1rem 0.75rem; +} +.form-floating > label { + position: absolute; + top: 0; + left: 0; + height: 100%; + padding: 1rem 0.75rem; + pointer-events: none; border: 1px solid transparent; - padding: 0.375rem 0.75rem; - font-size: 1rem; - line-height: 1.6; - border-radius: 0.25rem; - transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; + transform-origin: 0 0; + transition: opacity 0.1s ease-in-out, transform 0.1s ease-in-out; } @media (prefers-reduced-motion: reduce) { - .btn { + .form-floating > label { transition: none; } } -.btn:hover { - color: #212529; - text-decoration: none; +.form-floating > .form-control::-moz-placeholder { + color: transparent; } -.btn:focus, .btn.focus { - outline: 0; - box-shadow: none !important; +.form-floating > .form-control:-ms-input-placeholder { + color: transparent; } -.btn.disabled, .btn:disabled { - opacity: 0.65; +.form-floating > .form-control::placeholder { + color: transparent; } -.btn:not(:disabled):not(.disabled) { - cursor: pointer; +.form-floating > .form-control:not(:-moz-placeholder-shown) { + padding-top: 1.625rem; + padding-bottom: 0.625rem; } -a.btn.disabled, -fieldset:disabled a.btn { - pointer-events: none; +.form-floating > .form-control:not(:-ms-input-placeholder) { + padding-top: 1.625rem; + padding-bottom: 0.625rem; } - -.btn-primary { - color: #fff; - background-color: #0078d7; - border-color: #0078d7; +.form-floating > .form-control:focus, .form-floating > .form-control:not(:placeholder-shown) { + padding-top: 1.625rem; + padding-bottom: 0.625rem; } -.btn-primary:hover { - color: #fff; - background-color: #0063b1; - border-color: #005ca4; +.form-floating > .form-control:-webkit-autofill { + padding-top: 1.625rem; + padding-bottom: 0.625rem; } -.btn-primary:focus, .btn-primary.focus { - color: #fff; - background-color: #0063b1; - border-color: #005ca4; - box-shadow: 0 0 0 0.2rem rgba(38, 140, 221, 0.5); +.form-floating > .form-select { + padding-top: 1.625rem; + padding-bottom: 0.625rem; } -.btn-primary.disabled, .btn-primary:disabled { - color: #fff; - background-color: #0078d7; - border-color: #0078d7; +.form-floating > .form-control:not(:-moz-placeholder-shown) ~ label { + opacity: 0.65; + transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem); } -.btn-primary:not(:disabled):not(.disabled):active, .btn-primary:not(:disabled):not(.disabled).active, .show > .btn-primary.dropdown-toggle { - color: #fff; - background-color: #005ca4; - border-color: #005497; +.form-floating > .form-control:not(:-ms-input-placeholder) ~ label { + opacity: 0.65; + transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem); } -.btn-primary:not(:disabled):not(.disabled):active:focus, .btn-primary:not(:disabled):not(.disabled).active:focus, .show > .btn-primary.dropdown-toggle:focus { - box-shadow: 0 0 0 0.2rem rgba(38, 140, 221, 0.5); +.form-floating > .form-control:focus ~ label, +.form-floating > .form-control:not(:placeholder-shown) ~ label, +.form-floating > .form-select ~ label { + opacity: 0.65; + transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem); } - -.btn-secondary { - color: #fff; - background-color: #6c757d; - border-color: #6c757d; +.form-floating > .form-control:-webkit-autofill ~ label { + opacity: 0.65; + transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem); } -.btn-secondary:hover { - color: #fff; - background-color: #5a6268; - border-color: #545b62; + +.input-group { + position: relative; + display: flex; + flex-wrap: wrap; + align-items: stretch; + width: 100%; } -.btn-secondary:focus, .btn-secondary.focus { - color: #fff; - background-color: #5a6268; - border-color: #545b62; - box-shadow: 0 0 0 0.2rem rgba(130, 138, 145, 0.5); +.input-group > .form-control, +.input-group > .form-select { + position: relative; + flex: 1 1 auto; + width: 1%; + min-width: 0; } -.btn-secondary.disabled, .btn-secondary:disabled { - color: #fff; - background-color: #6c757d; - border-color: #6c757d; +.input-group > .form-control:focus, +.input-group > .form-select:focus { + z-index: 3; } -.btn-secondary:not(:disabled):not(.disabled):active, .btn-secondary:not(:disabled):not(.disabled).active, .show > .btn-secondary.dropdown-toggle { - color: #fff; - background-color: #545b62; - border-color: #4e555b; +.input-group .btn { + position: relative; + z-index: 2; } -.btn-secondary:not(:disabled):not(.disabled):active:focus, .btn-secondary:not(:disabled):not(.disabled).active:focus, .show > .btn-secondary.dropdown-toggle:focus { - box-shadow: 0 0 0 0.2rem rgba(130, 138, 145, 0.5); +.input-group .btn:focus { + z-index: 3; } -.btn-success { +.input-group-text { + display: flex; + align-items: center; + padding: 0.375rem 0.75rem; + font-size: 1rem; + font-weight: 400; + line-height: 1.6; color: #212529; - background-color: #97c800; - border-color: #97c800; -} -.btn-success:hover { - color: #fff; - background-color: #7aa200; - border-color: #709500; -} -.btn-success:focus, .btn-success.focus { - color: #fff; - background-color: #7aa200; - border-color: #709500; - box-shadow: 0 0 0 0.2rem rgba(133, 176, 6, 0.5); + text-align: center; + white-space: nowrap; + background-color: #e9ecef; + border: 1px solid #ced4da; + border-radius: 0.25rem; } -.btn-success.disabled, .btn-success:disabled { - color: #212529; - background-color: #97c800; - border-color: #97c800; + +.input-group-lg > .form-control, +.input-group-lg > .form-select, +.input-group-lg > .input-group-text, +.input-group-lg > .btn { + padding: 0.5rem 1rem; + font-size: 1.25rem; + border-radius: 0.3rem; } -.btn-success:not(:disabled):not(.disabled):active, .btn-success:not(:disabled):not(.disabled).active, .show > .btn-success.dropdown-toggle { - color: #fff; - background-color: #709500; - border-color: #678800; + +.input-group-sm > .form-control, +.input-group-sm > .form-select, +.input-group-sm > .input-group-text, +.input-group-sm > .btn { + padding: 0.25rem 0.5rem; + font-size: 0.875rem; + border-radius: 0.2rem; } -.btn-success:not(:disabled):not(.disabled):active:focus, .btn-success:not(:disabled):not(.disabled).active:focus, .show > .btn-success.dropdown-toggle:focus { - box-shadow: 0 0 0 0.2rem rgba(133, 176, 6, 0.5); + +.input-group-lg > .form-select, +.input-group-sm > .form-select { + padding-right: 1.75rem; } -.btn-info { - color: #fff; - background-color: #0098df; - border-color: #0098df; +.input-group:not(.has-validation) > :not(:last-child):not(.dropdown-toggle):not(.dropdown-menu), +.input-group:not(.has-validation) > .dropdown-toggle:nth-last-child(n+3) { + border-top-right-radius: 0; + border-bottom-right-radius: 0; } -.btn-info:hover { - color: #fff; - background-color: #007eb9; - border-color: #0075ac; +.input-group.has-validation > :nth-last-child(n+3):not(.dropdown-toggle):not(.dropdown-menu), +.input-group.has-validation > .dropdown-toggle:nth-last-child(n+4) { + border-top-right-radius: 0; + border-bottom-right-radius: 0; } -.btn-info:focus, .btn-info.focus { - color: #fff; - background-color: #007eb9; - border-color: #0075ac; - box-shadow: 0 0 0 0.2rem rgba(38, 167, 228, 0.5); +.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; } -.btn-info.disabled, .btn-info:disabled { - color: #fff; - background-color: #0098df; - border-color: #0098df; + +.valid-feedback { + display: none; + width: 100%; + margin-top: 0.25rem; + font-size: 0.875em; + color: #97c800; } -.btn-info:not(:disabled):not(.disabled):active, .btn-info:not(:disabled):not(.disabled).active, .show > .btn-info.dropdown-toggle { - color: #fff; - background-color: #0075ac; - border-color: #006d9f; + +.valid-tooltip { + position: absolute; + top: 100%; + z-index: 5; + display: none; + max-width: 100%; + padding: 0.25rem 0.5rem; + margin-top: 0.1rem; + font-size: 0.875rem; + color: #000; + background-color: rgba(151, 200, 0, 0.9); + border-radius: 0.25rem; } -.btn-info:not(:disabled):not(.disabled):active:focus, .btn-info:not(:disabled):not(.disabled).active:focus, .show > .btn-info.dropdown-toggle:focus { - box-shadow: 0 0 0 0.2rem rgba(38, 167, 228, 0.5); + +.was-validated :valid ~ .valid-feedback, +.was-validated :valid ~ .valid-tooltip, +.is-valid ~ .valid-feedback, +.is-valid ~ .valid-tooltip { + display: block; } -.btn-warning { - color: #212529; - background-color: #ffc000; - border-color: #ffc000; +.was-validated .form-control:valid, .form-control.is-valid { + border-color: #97c800; + padding-right: calc(1.6em + 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='%2397c800' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e"); + background-repeat: no-repeat; + background-position: right calc(0.4em + 0.1875rem) center; + background-size: calc(0.8em + 0.375rem) calc(0.8em + 0.375rem); } -.btn-warning:hover { - color: #212529; - background-color: #d9a300; - border-color: #cc9a00; +.was-validated .form-control:valid:focus, .form-control.is-valid:focus { + border-color: #97c800; + box-shadow: 0 0 0 0.25rem rgba(151, 200, 0, 0.25); } -.btn-warning:focus, .btn-warning.focus { - color: #212529; - background-color: #d9a300; - border-color: #cc9a00; - box-shadow: 0 0 0 0.2rem rgba(222, 169, 6, 0.5); + +.was-validated textarea.form-control:valid, textarea.form-control.is-valid { + padding-right: calc(1.6em + 0.75rem); + background-position: top calc(0.4em + 0.1875rem) right calc(0.4em + 0.1875rem); } -.btn-warning.disabled, .btn-warning:disabled { - color: #212529; - background-color: #ffc000; - border-color: #ffc000; + +.was-validated .form-select:valid, .form-select.is-valid { + border-color: #97c800; + padding-right: calc(0.75em + 2.3125rem); + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e"), url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%2397c800' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e"); + background-position: right 0.75rem center, center right 1.75rem; + background-size: 16px 12px, calc(0.8em + 0.375rem) calc(0.8em + 0.375rem); } -.btn-warning:not(:disabled):not(.disabled):active, .btn-warning:not(:disabled):not(.disabled).active, .show > .btn-warning.dropdown-toggle { - color: #212529; - background-color: #cc9a00; - border-color: #bf9000; +.was-validated .form-select:valid:focus, .form-select.is-valid:focus { + border-color: #97c800; + box-shadow: 0 0 0 0.25rem rgba(151, 200, 0, 0.25); +} + +.was-validated .form-check-input:valid, .form-check-input.is-valid { + border-color: #97c800; +} +.was-validated .form-check-input:valid:checked, .form-check-input.is-valid:checked { + background-color: #97c800; +} +.was-validated .form-check-input:valid:focus, .form-check-input.is-valid:focus { + box-shadow: 0 0 0 0.25rem rgba(151, 200, 0, 0.25); } -.btn-warning:not(:disabled):not(.disabled):active:focus, .btn-warning:not(:disabled):not(.disabled).active:focus, .show > .btn-warning.dropdown-toggle:focus { - box-shadow: 0 0 0 0.2rem rgba(222, 169, 6, 0.5); +.was-validated .form-check-input:valid ~ .form-check-label, .form-check-input.is-valid ~ .form-check-label { + color: #97c800; } -.btn-danger { - color: #fff; - background-color: #e74018; - border-color: #e74018; +.form-check-inline .form-check-input ~ .valid-feedback { + margin-left: 0.5em; } -.btn-danger:hover { - color: #fff; - background-color: #c43614; - border-color: #b93313; + +.invalid-feedback { + display: none; + width: 100%; + margin-top: 0.25rem; + font-size: 0.875em; + color: #e74018; } -.btn-danger:focus, .btn-danger.focus { - color: #fff; - background-color: #c43614; - border-color: #b93313; - box-shadow: 0 0 0 0.2rem rgba(235, 93, 59, 0.5); + +.invalid-tooltip { + position: absolute; + top: 100%; + z-index: 5; + display: none; + max-width: 100%; + padding: 0.25rem 0.5rem; + margin-top: 0.1rem; + font-size: 0.875rem; + color: #000; + background-color: rgba(231, 64, 24, 0.9); + border-radius: 0.25rem; } -.btn-danger.disabled, .btn-danger:disabled { - color: #fff; - background-color: #e74018; + +.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: #e74018; + padding-right: calc(1.6em + 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='%23e74018'%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='%23e74018' stroke='none'/%3e%3c/svg%3e"); + background-repeat: no-repeat; + background-position: right calc(0.4em + 0.1875rem) center; + background-size: calc(0.8em + 0.375rem) calc(0.8em + 0.375rem); } -.btn-danger:not(:disabled):not(.disabled):active, .btn-danger:not(:disabled):not(.disabled).active, .show > .btn-danger.dropdown-toggle { - color: #fff; - background-color: #b93313; - border-color: #ad3012; +.was-validated .form-control:invalid:focus, .form-control.is-invalid:focus { + border-color: #e74018; + box-shadow: 0 0 0 0.25rem rgba(231, 64, 24, 0.25); } -.btn-danger:not(:disabled):not(.disabled):active:focus, .btn-danger:not(:disabled):not(.disabled).active:focus, .show > .btn-danger.dropdown-toggle:focus { - box-shadow: 0 0 0 0.2rem rgba(235, 93, 59, 0.5); + +.was-validated textarea.form-control:invalid, textarea.form-control.is-invalid { + padding-right: calc(1.6em + 0.75rem); + background-position: top calc(0.4em + 0.1875rem) right calc(0.4em + 0.1875rem); } -.btn-light { - color: #212529; - background-color: #f8f9fa; - border-color: #f8f9fa; +.was-validated .form-select:invalid, .form-select.is-invalid { + border-color: #e74018; + padding-right: calc(0.75em + 2.3125rem); + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e"), url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23e74018'%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='%23e74018' stroke='none'/%3e%3c/svg%3e"); + background-position: right 0.75rem center, center right 1.75rem; + background-size: 16px 12px, calc(0.8em + 0.375rem) calc(0.8em + 0.375rem); } -.btn-light:hover { - color: #212529; - background-color: #e2e6ea; - border-color: #dae0e5; +.was-validated .form-select:invalid:focus, .form-select.is-invalid:focus { + border-color: #e74018; + box-shadow: 0 0 0 0.25rem rgba(231, 64, 24, 0.25); } -.btn-light:focus, .btn-light.focus { - color: #212529; - background-color: #e2e6ea; - border-color: #dae0e5; - box-shadow: 0 0 0 0.2rem rgba(216, 217, 219, 0.5); + +.was-validated .form-check-input:invalid, .form-check-input.is-invalid { + border-color: #e74018; } -.btn-light.disabled, .btn-light:disabled { - color: #212529; - background-color: #f8f9fa; - border-color: #f8f9fa; +.was-validated .form-check-input:invalid:checked, .form-check-input.is-invalid:checked { + background-color: #e74018; } -.btn-light:not(:disabled):not(.disabled):active, .btn-light:not(:disabled):not(.disabled).active, .show > .btn-light.dropdown-toggle { - color: #212529; - background-color: #dae0e5; - border-color: #d3d9df; +.was-validated .form-check-input:invalid:focus, .form-check-input.is-invalid:focus { + box-shadow: 0 0 0 0.25rem rgba(231, 64, 24, 0.25); } -.btn-light:not(:disabled):not(.disabled):active:focus, .btn-light:not(:disabled):not(.disabled).active:focus, .show > .btn-light.dropdown-toggle:focus { - box-shadow: 0 0 0 0.2rem rgba(216, 217, 219, 0.5); +.was-validated .form-check-input:invalid ~ .form-check-label, .form-check-input.is-invalid ~ .form-check-label { + color: #e74018; } -.btn-dark { - color: #fff; - background-color: #343a40; - border-color: #343a40; +.form-check-inline .form-check-input ~ .invalid-feedback { + margin-left: 0.5em; } -.btn-dark:hover { - color: #fff; - background-color: #23272b; - border-color: #1d2124; + +.btn { + display: inline-block; + font-weight: 400; + line-height: 1.6; + color: #212529; + text-align: center; + text-decoration: none; + vertical-align: middle; + cursor: pointer; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + background-color: transparent; + border: 1px solid transparent; + padding: 0.375rem 0.75rem; + font-size: 1rem; + border-radius: 0.25rem; + transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; } -.btn-dark:focus, .btn-dark.focus { - color: #fff; - background-color: #23272b; - border-color: #1d2124; - box-shadow: 0 0 0 0.2rem rgba(82, 88, 93, 0.5); +@media (prefers-reduced-motion: reduce) { + .btn { + transition: none; + } } -.btn-dark.disabled, .btn-dark:disabled { - color: #fff; - background-color: #343a40; - border-color: #343a40; +.btn:hover { + color: #212529; } -.btn-dark:not(:disabled):not(.disabled):active, .btn-dark:not(:disabled):not(.disabled).active, .show > .btn-dark.dropdown-toggle { - color: #fff; - background-color: #1d2124; - border-color: #171a1d; +.btn-check:focus + .btn, .btn:focus { + outline: 0; + box-shadow: none !important; } -.btn-dark:not(:disabled):not(.disabled):active:focus, .btn-dark:not(:disabled):not(.disabled).active:focus, .show > .btn-dark.dropdown-toggle:focus { - box-shadow: 0 0 0 0.2rem rgba(82, 88, 93, 0.5); +.btn:disabled, .btn.disabled, fieldset:disabled .btn { + pointer-events: none; + opacity: 0.65; } -.btn-outline-primary { - color: #0078d7; - border-color: #0078d7; -} -.btn-outline-primary:hover { - color: #fff; +.btn-primary { + color: #000; background-color: #0078d7; border-color: #0078d7; } -.btn-outline-primary:focus, .btn-outline-primary.focus { - box-shadow: 0 0 0 0.2rem rgba(0, 120, 215, 0.5); +.btn-primary:hover { + color: #000; + background-color: #268cdd; + border-color: #1a86db; } -.btn-outline-primary.disabled, .btn-outline-primary:disabled { - color: #0078d7; - background-color: transparent; +.btn-check:focus + .btn-primary, .btn-primary:focus { + color: #000; + background-color: #268cdd; + border-color: #1a86db; + box-shadow: 0 0 0 0.25rem rgba(0, 102, 183, 0.5); } -.btn-outline-primary:not(:disabled):not(.disabled):active, .btn-outline-primary:not(:disabled):not(.disabled).active, .show > .btn-outline-primary.dropdown-toggle { - color: #fff; +.btn-check:checked + .btn-primary, .btn-check:active + .btn-primary, .btn-primary:active, .btn-primary.active, .show > .btn-primary.dropdown-toggle { + color: #000; + background-color: #3393df; + border-color: #1a86db; +} +.btn-check:checked + .btn-primary:focus, .btn-check:active + .btn-primary:focus, .btn-primary:active:focus, .btn-primary.active:focus, .show > .btn-primary.dropdown-toggle:focus { + box-shadow: 0 0 0 0.25rem rgba(0, 102, 183, 0.5); +} +.btn-primary:disabled, .btn-primary.disabled { + color: #000; background-color: #0078d7; border-color: #0078d7; } -.btn-outline-primary:not(:disabled):not(.disabled):active:focus, .btn-outline-primary:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-primary.dropdown-toggle:focus { - box-shadow: 0 0 0 0.2rem rgba(0, 120, 215, 0.5); -} -.btn-outline-secondary { - color: #6c757d; - border-color: #6c757d; -} -.btn-outline-secondary:hover { +.btn-secondary { color: #fff; background-color: #6c757d; border-color: #6c757d; } -.btn-outline-secondary:focus, .btn-outline-secondary.focus { - box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 0.5); +.btn-secondary:hover { + color: #fff; + background-color: #5c636a; + border-color: #565e64; } -.btn-outline-secondary.disabled, .btn-outline-secondary:disabled { - color: #6c757d; - background-color: transparent; +.btn-check:focus + .btn-secondary, .btn-secondary:focus { + color: #fff; + background-color: #5c636a; + border-color: #565e64; + box-shadow: 0 0 0 0.25rem rgba(130, 138, 145, 0.5); +} +.btn-check:checked + .btn-secondary, .btn-check:active + .btn-secondary, .btn-secondary:active, .btn-secondary.active, .show > .btn-secondary.dropdown-toggle { + color: #fff; + background-color: #565e64; + border-color: #51585e; } -.btn-outline-secondary:not(:disabled):not(.disabled):active, .btn-outline-secondary:not(:disabled):not(.disabled).active, .show > .btn-outline-secondary.dropdown-toggle { +.btn-check:checked + .btn-secondary:focus, .btn-check:active + .btn-secondary:focus, .btn-secondary:active:focus, .btn-secondary.active:focus, .show > .btn-secondary.dropdown-toggle:focus { + box-shadow: 0 0 0 0.25rem rgba(130, 138, 145, 0.5); +} +.btn-secondary:disabled, .btn-secondary.disabled { color: #fff; background-color: #6c757d; border-color: #6c757d; } -.btn-outline-secondary:not(:disabled):not(.disabled):active:focus, .btn-outline-secondary:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-secondary.dropdown-toggle:focus { - box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 0.5); -} -.btn-outline-success { - color: #97c800; - border-color: #97c800; -} -.btn-outline-success:hover { - color: #212529; +.btn-success { + color: #000; background-color: #97c800; border-color: #97c800; } -.btn-outline-success:focus, .btn-outline-success.focus { - box-shadow: 0 0 0 0.2rem rgba(151, 200, 0, 0.5); +.btn-success:hover { + color: #000; + background-color: #a7d026; + border-color: #a1ce1a; } -.btn-outline-success.disabled, .btn-outline-success:disabled { - color: #97c800; - background-color: transparent; +.btn-check:focus + .btn-success, .btn-success:focus { + color: #000; + background-color: #a7d026; + border-color: #a1ce1a; + box-shadow: 0 0 0 0.25rem rgba(128, 170, 0, 0.5); } -.btn-outline-success:not(:disabled):not(.disabled):active, .btn-outline-success:not(:disabled):not(.disabled).active, .show > .btn-outline-success.dropdown-toggle { - color: #212529; +.btn-check:checked + .btn-success, .btn-check:active + .btn-success, .btn-success:active, .btn-success.active, .show > .btn-success.dropdown-toggle { + color: #000; + background-color: #acd333; + border-color: #a1ce1a; +} +.btn-check:checked + .btn-success:focus, .btn-check:active + .btn-success:focus, .btn-success:active:focus, .btn-success.active:focus, .show > .btn-success.dropdown-toggle:focus { + box-shadow: 0 0 0 0.25rem rgba(128, 170, 0, 0.5); +} +.btn-success:disabled, .btn-success.disabled { + color: #000; background-color: #97c800; border-color: #97c800; } -.btn-outline-success:not(:disabled):not(.disabled):active:focus, .btn-outline-success:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-success.dropdown-toggle:focus { - box-shadow: 0 0 0 0.2rem rgba(151, 200, 0, 0.5); -} -.btn-outline-info { - color: #0098df; - border-color: #0098df; -} -.btn-outline-info:hover { - color: #fff; +.btn-info { + color: #000; background-color: #0098df; border-color: #0098df; } -.btn-outline-info:focus, .btn-outline-info.focus { - box-shadow: 0 0 0 0.2rem rgba(0, 152, 223, 0.5); +.btn-info:hover { + color: #000; + background-color: #26a7e4; + border-color: #1aa2e2; } -.btn-outline-info.disabled, .btn-outline-info:disabled { - color: #0098df; - background-color: transparent; +.btn-check:focus + .btn-info, .btn-info:focus { + color: #000; + background-color: #26a7e4; + border-color: #1aa2e2; + box-shadow: 0 0 0 0.25rem rgba(0, 129, 190, 0.5); } -.btn-outline-info:not(:disabled):not(.disabled):active, .btn-outline-info:not(:disabled):not(.disabled).active, .show > .btn-outline-info.dropdown-toggle { - color: #fff; +.btn-check:checked + .btn-info, .btn-check:active + .btn-info, .btn-info:active, .btn-info.active, .show > .btn-info.dropdown-toggle { + color: #000; + background-color: #33ade5; + border-color: #1aa2e2; +} +.btn-check:checked + .btn-info:focus, .btn-check:active + .btn-info:focus, .btn-info:active:focus, .btn-info.active:focus, .show > .btn-info.dropdown-toggle:focus { + box-shadow: 0 0 0 0.25rem rgba(0, 129, 190, 0.5); +} +.btn-info:disabled, .btn-info.disabled { + color: #000; background-color: #0098df; border-color: #0098df; } -.btn-outline-info:not(:disabled):not(.disabled):active:focus, .btn-outline-info:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-info.dropdown-toggle:focus { - box-shadow: 0 0 0 0.2rem rgba(0, 152, 223, 0.5); -} + +.btn-warning { + color: #000; + background-color: #ffc000; + border-color: #ffc000; +} +.btn-warning:hover { + color: #000; + background-color: #ffc926; + border-color: #ffc61a; +} +.btn-check:focus + .btn-warning, .btn-warning:focus { + color: #000; + background-color: #ffc926; + border-color: #ffc61a; + box-shadow: 0 0 0 0.25rem rgba(217, 163, 0, 0.5); +} +.btn-check:checked + .btn-warning, .btn-check:active + .btn-warning, .btn-warning:active, .btn-warning.active, .show > .btn-warning.dropdown-toggle { + color: #000; + background-color: #ffcd33; + border-color: #ffc61a; +} +.btn-check:checked + .btn-warning:focus, .btn-check:active + .btn-warning:focus, .btn-warning:active:focus, .btn-warning.active:focus, .show > .btn-warning.dropdown-toggle:focus { + box-shadow: 0 0 0 0.25rem rgba(217, 163, 0, 0.5); +} +.btn-warning:disabled, .btn-warning.disabled { + color: #000; + background-color: #ffc000; + border-color: #ffc000; +} + +.btn-danger { + color: #000; + background-color: #e74018; + border-color: #e74018; +} +.btn-danger:hover { + color: #000; + background-color: #eb5d3b; + border-color: #e9532f; +} +.btn-check:focus + .btn-danger, .btn-danger:focus { + color: #000; + background-color: #eb5d3b; + border-color: #e9532f; + box-shadow: 0 0 0 0.25rem rgba(196, 54, 20, 0.5); +} +.btn-check:checked + .btn-danger, .btn-check:active + .btn-danger, .btn-danger:active, .btn-danger.active, .show > .btn-danger.dropdown-toggle { + color: #000; + background-color: #ec6646; + border-color: #e9532f; +} +.btn-check:checked + .btn-danger:focus, .btn-check:active + .btn-danger:focus, .btn-danger:active:focus, .btn-danger.active:focus, .show > .btn-danger.dropdown-toggle:focus { + box-shadow: 0 0 0 0.25rem rgba(196, 54, 20, 0.5); +} +.btn-danger:disabled, .btn-danger.disabled { + color: #000; + background-color: #e74018; + border-color: #e74018; +} + +.btn-light { + color: #000; + background-color: #f8f9fa; + border-color: #f8f9fa; +} +.btn-light:hover { + color: #000; + background-color: #f9fafb; + border-color: #f9fafb; +} +.btn-check:focus + .btn-light, .btn-light:focus { + color: #000; + background-color: #f9fafb; + border-color: #f9fafb; + box-shadow: 0 0 0 0.25rem rgba(211, 212, 213, 0.5); +} +.btn-check:checked + .btn-light, .btn-check:active + .btn-light, .btn-light:active, .btn-light.active, .show > .btn-light.dropdown-toggle { + color: #000; + background-color: #f9fafb; + border-color: #f9fafb; +} +.btn-check:checked + .btn-light:focus, .btn-check:active + .btn-light:focus, .btn-light:active:focus, .btn-light.active:focus, .show > .btn-light.dropdown-toggle:focus { + box-shadow: 0 0 0 0.25rem rgba(211, 212, 213, 0.5); +} +.btn-light:disabled, .btn-light.disabled { + color: #000; + background-color: #f8f9fa; + border-color: #f8f9fa; +} + +.btn-dark { + color: #fff; + background-color: #212529; + border-color: #212529; +} +.btn-dark:hover { + color: #fff; + background-color: #1c1f23; + border-color: #1a1e21; +} +.btn-check:focus + .btn-dark, .btn-dark:focus { + color: #fff; + background-color: #1c1f23; + border-color: #1a1e21; + box-shadow: 0 0 0 0.25rem rgba(66, 70, 73, 0.5); +} +.btn-check:checked + .btn-dark, .btn-check:active + .btn-dark, .btn-dark:active, .btn-dark.active, .show > .btn-dark.dropdown-toggle { + color: #fff; + background-color: #1a1e21; + border-color: #191c1f; +} +.btn-check:checked + .btn-dark:focus, .btn-check:active + .btn-dark:focus, .btn-dark:active:focus, .btn-dark.active:focus, .show > .btn-dark.dropdown-toggle:focus { + box-shadow: 0 0 0 0.25rem rgba(66, 70, 73, 0.5); +} +.btn-dark:disabled, .btn-dark.disabled { + color: #fff; + background-color: #212529; + border-color: #212529; +} + +.btn-outline-primary { + color: #0078d7; + border-color: #0078d7; +} +.btn-outline-primary:hover { + color: #000; + background-color: #0078d7; + border-color: #0078d7; +} +.btn-check:focus + .btn-outline-primary, .btn-outline-primary:focus { + box-shadow: 0 0 0 0.25rem rgba(0, 120, 215, 0.5); +} +.btn-check:checked + .btn-outline-primary, .btn-check:active + .btn-outline-primary, .btn-outline-primary:active, .btn-outline-primary.active, .btn-outline-primary.dropdown-toggle.show { + color: #000; + background-color: #0078d7; + border-color: #0078d7; +} +.btn-check:checked + .btn-outline-primary:focus, .btn-check:active + .btn-outline-primary:focus, .btn-outline-primary:active:focus, .btn-outline-primary.active:focus, .btn-outline-primary.dropdown-toggle.show:focus { + box-shadow: 0 0 0 0.25rem rgba(0, 120, 215, 0.5); +} +.btn-outline-primary:disabled, .btn-outline-primary.disabled { + color: #0078d7; + background-color: transparent; +} + +.btn-outline-secondary { + color: #6c757d; + border-color: #6c757d; +} +.btn-outline-secondary:hover { + color: #fff; + background-color: #6c757d; + border-color: #6c757d; +} +.btn-check:focus + .btn-outline-secondary, .btn-outline-secondary:focus { + box-shadow: 0 0 0 0.25rem rgba(108, 117, 125, 0.5); +} +.btn-check:checked + .btn-outline-secondary, .btn-check:active + .btn-outline-secondary, .btn-outline-secondary:active, .btn-outline-secondary.active, .btn-outline-secondary.dropdown-toggle.show { + color: #fff; + background-color: #6c757d; + border-color: #6c757d; +} +.btn-check:checked + .btn-outline-secondary:focus, .btn-check:active + .btn-outline-secondary:focus, .btn-outline-secondary:active:focus, .btn-outline-secondary.active:focus, .btn-outline-secondary.dropdown-toggle.show:focus { + box-shadow: 0 0 0 0.25rem rgba(108, 117, 125, 0.5); +} +.btn-outline-secondary:disabled, .btn-outline-secondary.disabled { + color: #6c757d; + background-color: transparent; +} + +.btn-outline-success { + color: #97c800; + border-color: #97c800; +} +.btn-outline-success:hover { + color: #000; + background-color: #97c800; + border-color: #97c800; +} +.btn-check:focus + .btn-outline-success, .btn-outline-success:focus { + box-shadow: 0 0 0 0.25rem rgba(151, 200, 0, 0.5); +} +.btn-check:checked + .btn-outline-success, .btn-check:active + .btn-outline-success, .btn-outline-success:active, .btn-outline-success.active, .btn-outline-success.dropdown-toggle.show { + color: #000; + background-color: #97c800; + border-color: #97c800; +} +.btn-check:checked + .btn-outline-success:focus, .btn-check:active + .btn-outline-success:focus, .btn-outline-success:active:focus, .btn-outline-success.active:focus, .btn-outline-success.dropdown-toggle.show:focus { + box-shadow: 0 0 0 0.25rem rgba(151, 200, 0, 0.5); +} +.btn-outline-success:disabled, .btn-outline-success.disabled { + color: #97c800; + background-color: transparent; +} + +.btn-outline-info { + color: #0098df; + border-color: #0098df; +} +.btn-outline-info:hover { + color: #000; + background-color: #0098df; + border-color: #0098df; +} +.btn-check:focus + .btn-outline-info, .btn-outline-info:focus { + box-shadow: 0 0 0 0.25rem rgba(0, 152, 223, 0.5); +} +.btn-check:checked + .btn-outline-info, .btn-check:active + .btn-outline-info, .btn-outline-info:active, .btn-outline-info.active, .btn-outline-info.dropdown-toggle.show { + color: #000; + background-color: #0098df; + border-color: #0098df; +} +.btn-check:checked + .btn-outline-info:focus, .btn-check:active + .btn-outline-info:focus, .btn-outline-info:active:focus, .btn-outline-info.active:focus, .btn-outline-info.dropdown-toggle.show:focus { + box-shadow: 0 0 0 0.25rem rgba(0, 152, 223, 0.5); +} +.btn-outline-info:disabled, .btn-outline-info.disabled { + color: #0098df; + background-color: transparent; +} .btn-outline-warning { color: #ffc000; border-color: #ffc000; } .btn-outline-warning:hover { - color: #212529; + color: #000; background-color: #ffc000; border-color: #ffc000; } -.btn-outline-warning:focus, .btn-outline-warning.focus { - box-shadow: 0 0 0 0.2rem rgba(255, 192, 0, 0.5); -} -.btn-outline-warning.disabled, .btn-outline-warning:disabled { - color: #ffc000; - background-color: transparent; +.btn-check:focus + .btn-outline-warning, .btn-outline-warning:focus { + box-shadow: 0 0 0 0.25rem rgba(255, 192, 0, 0.5); } -.btn-outline-warning:not(:disabled):not(.disabled):active, .btn-outline-warning:not(:disabled):not(.disabled).active, .show > .btn-outline-warning.dropdown-toggle { - color: #212529; +.btn-check:checked + .btn-outline-warning, .btn-check:active + .btn-outline-warning, .btn-outline-warning:active, .btn-outline-warning.active, .btn-outline-warning.dropdown-toggle.show { + color: #000; background-color: #ffc000; border-color: #ffc000; } -.btn-outline-warning:not(:disabled):not(.disabled):active:focus, .btn-outline-warning:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-warning.dropdown-toggle:focus { - box-shadow: 0 0 0 0.2rem rgba(255, 192, 0, 0.5); +.btn-check:checked + .btn-outline-warning:focus, .btn-check:active + .btn-outline-warning:focus, .btn-outline-warning:active:focus, .btn-outline-warning.active:focus, .btn-outline-warning.dropdown-toggle.show:focus { + box-shadow: 0 0 0 0.25rem rgba(255, 192, 0, 0.5); +} +.btn-outline-warning:disabled, .btn-outline-warning.disabled { + color: #ffc000; + background-color: transparent; } .btn-outline-danger { @@ -2804,24 +3065,24 @@ fieldset:disabled a.btn { border-color: #e74018; } .btn-outline-danger:hover { - color: #fff; + color: #000; background-color: #e74018; border-color: #e74018; } -.btn-outline-danger:focus, .btn-outline-danger.focus { - box-shadow: 0 0 0 0.2rem rgba(231, 64, 24, 0.5); -} -.btn-outline-danger.disabled, .btn-outline-danger:disabled { - color: #e74018; - background-color: transparent; +.btn-check:focus + .btn-outline-danger, .btn-outline-danger:focus { + box-shadow: 0 0 0 0.25rem rgba(231, 64, 24, 0.5); } -.btn-outline-danger:not(:disabled):not(.disabled):active, .btn-outline-danger:not(:disabled):not(.disabled).active, .show > .btn-outline-danger.dropdown-toggle { - color: #fff; +.btn-check:checked + .btn-outline-danger, .btn-check:active + .btn-outline-danger, .btn-outline-danger:active, .btn-outline-danger.active, .btn-outline-danger.dropdown-toggle.show { + color: #000; background-color: #e74018; border-color: #e74018; } -.btn-outline-danger:not(:disabled):not(.disabled):active:focus, .btn-outline-danger:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-danger.dropdown-toggle:focus { - box-shadow: 0 0 0 0.2rem rgba(231, 64, 24, 0.5); +.btn-check:checked + .btn-outline-danger:focus, .btn-check:active + .btn-outline-danger:focus, .btn-outline-danger:active:focus, .btn-outline-danger.active:focus, .btn-outline-danger.dropdown-toggle.show:focus { + box-shadow: 0 0 0 0.25rem rgba(231, 64, 24, 0.5); +} +.btn-outline-danger:disabled, .btn-outline-danger.disabled { + color: #e74018; + background-color: transparent; } .btn-outline-light { @@ -2829,96 +3090,75 @@ fieldset:disabled a.btn { border-color: #f8f9fa; } .btn-outline-light:hover { - color: #212529; + color: #000; background-color: #f8f9fa; border-color: #f8f9fa; } -.btn-outline-light:focus, .btn-outline-light.focus { - box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5); -} -.btn-outline-light.disabled, .btn-outline-light:disabled { - color: #f8f9fa; - background-color: transparent; +.btn-check:focus + .btn-outline-light, .btn-outline-light:focus { + box-shadow: 0 0 0 0.25rem rgba(248, 249, 250, 0.5); } -.btn-outline-light:not(:disabled):not(.disabled):active, .btn-outline-light:not(:disabled):not(.disabled).active, .show > .btn-outline-light.dropdown-toggle { - color: #212529; +.btn-check:checked + .btn-outline-light, .btn-check:active + .btn-outline-light, .btn-outline-light:active, .btn-outline-light.active, .btn-outline-light.dropdown-toggle.show { + color: #000; background-color: #f8f9fa; border-color: #f8f9fa; } -.btn-outline-light:not(:disabled):not(.disabled):active:focus, .btn-outline-light:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-light.dropdown-toggle:focus { - box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5); +.btn-check:checked + .btn-outline-light:focus, .btn-check:active + .btn-outline-light:focus, .btn-outline-light:active:focus, .btn-outline-light.active:focus, .btn-outline-light.dropdown-toggle.show:focus { + box-shadow: 0 0 0 0.25rem rgba(248, 249, 250, 0.5); +} +.btn-outline-light:disabled, .btn-outline-light.disabled { + color: #f8f9fa; + background-color: transparent; } .btn-outline-dark { - color: #343a40; - border-color: #343a40; + color: #212529; + border-color: #212529; } .btn-outline-dark:hover { color: #fff; - background-color: #343a40; - border-color: #343a40; -} -.btn-outline-dark:focus, .btn-outline-dark.focus { - box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.5); + background-color: #212529; + border-color: #212529; } -.btn-outline-dark.disabled, .btn-outline-dark:disabled { - color: #343a40; - background-color: transparent; +.btn-check:focus + .btn-outline-dark, .btn-outline-dark:focus { + box-shadow: 0 0 0 0.25rem rgba(33, 37, 41, 0.5); } -.btn-outline-dark:not(:disabled):not(.disabled):active, .btn-outline-dark:not(:disabled):not(.disabled).active, .show > .btn-outline-dark.dropdown-toggle { +.btn-check:checked + .btn-outline-dark, .btn-check:active + .btn-outline-dark, .btn-outline-dark:active, .btn-outline-dark.active, .btn-outline-dark.dropdown-toggle.show { color: #fff; - background-color: #343a40; - border-color: #343a40; + background-color: #212529; + border-color: #212529; } -.btn-outline-dark:not(:disabled):not(.disabled):active:focus, .btn-outline-dark:not(:disabled):not(.disabled).active:focus, .show > .btn-outline-dark.dropdown-toggle:focus { - box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.5); +.btn-check:checked + .btn-outline-dark:focus, .btn-check:active + .btn-outline-dark:focus, .btn-outline-dark:active:focus, .btn-outline-dark.active:focus, .btn-outline-dark.dropdown-toggle.show:focus { + box-shadow: 0 0 0 0.25rem rgba(33, 37, 41, 0.5); +} +.btn-outline-dark:disabled, .btn-outline-dark.disabled { + color: #212529; + background-color: transparent; } .btn-link { font-weight: 400; color: #0078d7; - text-decoration: none; -} -.btn-link:hover { - color: #004d8b; text-decoration: underline; } -.btn-link:focus, .btn-link.focus { - text-decoration: underline; +.btn-link:hover { + color: #0060ac; } .btn-link:disabled, .btn-link.disabled { color: #6c757d; - pointer-events: none; } .btn-lg, .btn-group-lg > .btn { padding: 0.5rem 1rem; font-size: 1.25rem; - line-height: 1.5; border-radius: 0.3rem; } .btn-sm, .btn-group-sm > .btn { padding: 0.25rem 0.5rem; font-size: 0.875rem; - line-height: 1.5; border-radius: 0.2rem; } -.btn-block { - display: block; - width: 100%; -} -.btn-block + .btn-block { - margin-top: 0.5rem; -} - -input[type=submit].btn-block, -input[type=reset].btn-block, -input[type=button].btn-block { - width: 100%; -} - .fade { transition: opacity 0.15s linear; } @@ -2936,7 +3176,6 @@ input[type=button].btn-block { } .collapsing { - position: relative; height: 0; overflow: hidden; transition: height 0.35s ease; @@ -2977,7 +3216,6 @@ input[type=button].btn-block { left: 0; z-index: 1000; display: none; - float: left; min-width: 10rem; padding: 0.5rem 0; margin: 0.125rem 0 0; @@ -3130,24 +3368,24 @@ input[type=button].btn-block { height: 0; margin: 0.5rem 0; overflow: hidden; - border-top: 1px solid #e9ecef; + border-top: 1px solid rgba(0, 0, 0, 0.15); } .dropdown-item { display: block; width: 100%; - padding: 0.25rem 1.5rem; + padding: 0.25rem 1rem; clear: both; font-weight: 400; color: #212529; text-align: inherit; + text-decoration: none; white-space: nowrap; background-color: transparent; border: 0; } .dropdown-item:hover, .dropdown-item:focus { - color: #16181b; - text-decoration: none; + color: #1e2125; background-color: #f8f9fa; } .dropdown-item.active, .dropdown-item:active { @@ -3167,7 +3405,7 @@ input[type=button].btn-block { .dropdown-header { display: block; - padding: 0.5rem 1.5rem; + padding: 0.5rem 1rem; margin-bottom: 0; font-size: 0.875rem; color: #6c757d; @@ -3176,10 +3414,39 @@ input[type=button].btn-block { .dropdown-item-text { display: block; - padding: 0.25rem 1.5rem; + padding: 0.25rem 1rem; color: #212529; } +.dropdown-menu-dark { + color: #dee2e6; + background-color: #343a40; + border-color: rgba(0, 0, 0, 0.15); +} +.dropdown-menu-dark .dropdown-item { + color: #dee2e6; +} +.dropdown-menu-dark .dropdown-item:hover, .dropdown-menu-dark .dropdown-item:focus { + color: #fff; + background-color: rgba(255, 255, 255, 0.15); +} +.dropdown-menu-dark .dropdown-item.active, .dropdown-menu-dark .dropdown-item:active { + color: #fff; + background-color: #0078d7; +} +.dropdown-menu-dark .dropdown-item.disabled, .dropdown-menu-dark .dropdown-item:disabled { + color: #adb5bd; +} +.dropdown-menu-dark .dropdown-divider { + border-color: rgba(0, 0, 0, 0.15); +} +.dropdown-menu-dark .dropdown-item-text { + color: #dee2e6; +} +.dropdown-menu-dark .dropdown-header { + color: #adb5bd; +} + .btn-group, .btn-group-vertical { position: relative; @@ -3191,11 +3458,15 @@ input[type=button].btn-block { position: relative; flex: 1 1 auto; } +.btn-group > .btn-check:checked + .btn, +.btn-group > .btn-check:focus + .btn, .btn-group > .btn:hover, -.btn-group-vertical > .btn:hover { - z-index: 1; -} -.btn-group > .btn:focus, .btn-group > .btn:active, .btn-group > .btn.active, +.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 { @@ -3220,7 +3491,8 @@ input[type=button].btn-block { border-top-right-radius: 0; border-bottom-right-radius: 0; } -.btn-group > .btn:not(:first-child), +.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; @@ -3271,6455 +3543,6076 @@ input[type=button].btn-block { border-top-right-radius: 0; } -.btn-group-toggle > .btn, -.btn-group-toggle > .btn-group > .btn { - margin-bottom: 0; -} -.btn-group-toggle > .btn input[type=radio], -.btn-group-toggle > .btn input[type=checkbox], -.btn-group-toggle > .btn-group > .btn input[type=radio], -.btn-group-toggle > .btn-group > .btn input[type=checkbox] { - position: absolute; - clip: rect(0, 0, 0, 0); - pointer-events: none; -} - -.input-group { - position: relative; +.nav { display: flex; flex-wrap: wrap; - align-items: stretch; - width: 100%; -} -.input-group > .form-control, -.input-group > .form-control-plaintext, -.input-group > .custom-select, -.input-group > .custom-file { - position: relative; - flex: 1 1 auto; - width: 1%; - min-width: 0; + padding-left: 0; margin-bottom: 0; + list-style: none; } -.input-group > .form-control + .form-control, -.input-group > .form-control + .custom-select, -.input-group > .form-control + .custom-file, -.input-group > .form-control-plaintext + .form-control, -.input-group > .form-control-plaintext + .custom-select, -.input-group > .form-control-plaintext + .custom-file, -.input-group > .custom-select + .form-control, -.input-group > .custom-select + .custom-select, -.input-group > .custom-select + .custom-file, -.input-group > .custom-file + .form-control, -.input-group > .custom-file + .custom-select, -.input-group > .custom-file + .custom-file { - margin-left: -1px; + +.nav-link { + display: block; + padding: 0.5rem 1rem; + text-decoration: none; + transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out; } -.input-group > .form-control:focus, -.input-group > .custom-select:focus, -.input-group > .custom-file .custom-file-input:focus ~ .custom-file-label { - z-index: 3; +@media (prefers-reduced-motion: reduce) { + .nav-link { + transition: none; + } } -.input-group > .custom-file .custom-file-input:focus { - z-index: 4; -} -.input-group > .form-control:not(:last-child), -.input-group > .custom-select:not(:last-child) { - border-top-right-radius: 0; - border-bottom-right-radius: 0; -} -.input-group > .form-control:not(:first-child), -.input-group > .custom-select:not(:first-child) { - border-top-left-radius: 0; - border-bottom-left-radius: 0; -} -.input-group > .custom-file { - display: flex; - align-items: center; -} -.input-group > .custom-file:not(:last-child) .custom-file-label, .input-group > .custom-file:not(:last-child) .custom-file-label::after { - border-top-right-radius: 0; - border-bottom-right-radius: 0; -} -.input-group > .custom-file:not(:first-child) .custom-file-label { - border-top-left-radius: 0; - border-bottom-left-radius: 0; +.nav-link.disabled { + color: #6c757d; + pointer-events: none; + cursor: default; } -.input-group-prepend, -.input-group-append { - display: flex; -} -.input-group-prepend .btn, -.input-group-append .btn { - position: relative; - z-index: 2; -} -.input-group-prepend .btn:focus, -.input-group-append .btn:focus { - z-index: 3; +.nav-tabs { + border-bottom: 1px solid #dee2e6; } -.input-group-prepend .btn + .btn, -.input-group-prepend .btn + .input-group-text, -.input-group-prepend .input-group-text + .input-group-text, -.input-group-prepend .input-group-text + .btn, -.input-group-append .btn + .btn, -.input-group-append .btn + .input-group-text, -.input-group-append .input-group-text + .input-group-text, -.input-group-append .input-group-text + .btn { - margin-left: -1px; +.nav-tabs .nav-link { + margin-bottom: -1px; + border: 1px solid transparent; + border-top-left-radius: 0.25rem; + border-top-right-radius: 0.25rem; } - -.input-group-prepend { - margin-right: -1px; +.nav-tabs .nav-link:hover, .nav-tabs .nav-link:focus { + border-color: #e9ecef #e9ecef #dee2e6; } - -.input-group-append { - margin-left: -1px; +.nav-tabs .nav-link.disabled { + color: #6c757d; + background-color: transparent; + border-color: transparent; } - -.input-group-text { - display: flex; - align-items: center; - padding: 0.375rem 0.75rem; - margin-bottom: 0; - font-size: 1rem; - font-weight: 400; - line-height: 1.6; +.nav-tabs .nav-link.active, +.nav-tabs .nav-item.show .nav-link { color: #495057; - text-align: center; - white-space: nowrap; - background-color: #e9ecef; - border: 1px solid #ced4da; - border-radius: 0.25rem; -} -.input-group-text input[type=radio], -.input-group-text input[type=checkbox] { - margin-top: 0; -} - -.input-group-lg > .form-control:not(textarea), -.input-group-lg > .custom-select { - height: calc(1.5em + 1rem + 2px); + background-color: #fff; + border-color: #dee2e6 #dee2e6 #fff; } - -.input-group-lg > .form-control, -.input-group-lg > .custom-select, -.input-group-lg > .input-group-prepend > .input-group-text, -.input-group-lg > .input-group-append > .input-group-text, -.input-group-lg > .input-group-prepend > .btn, -.input-group-lg > .input-group-append > .btn { - padding: 0.5rem 1rem; - font-size: 1.25rem; - line-height: 1.5; - border-radius: 0.3rem; +.nav-tabs .dropdown-menu { + margin-top: -1px; + border-top-left-radius: 0; + border-top-right-radius: 0; } -.input-group-sm > .form-control:not(textarea), -.input-group-sm > .custom-select { - height: calc(1.5em + 0.5rem + 2px); +.nav-pills .nav-link { + border-radius: 0.25rem; } - -.input-group-sm > .form-control, -.input-group-sm > .custom-select, -.input-group-sm > .input-group-prepend > .input-group-text, -.input-group-sm > .input-group-append > .input-group-text, -.input-group-sm > .input-group-prepend > .btn, -.input-group-sm > .input-group-append > .btn { - padding: 0.25rem 0.5rem; - font-size: 0.875rem; - line-height: 1.5; - border-radius: 0.2rem; +.nav-pills .nav-link.active, +.nav-pills .show > .nav-link { + color: #fff; + background-color: #0078d7; } -.input-group-lg > .custom-select, -.input-group-sm > .custom-select { - padding-right: 1.75rem; +.nav-fill > .nav-link, +.nav-fill .nav-item { + flex: 1 1 auto; + text-align: center; } -.input-group > .input-group-prepend > .btn, -.input-group > .input-group-prepend > .input-group-text, -.input-group > .input-group-append:not(:last-child) > .btn, -.input-group > .input-group-append:not(:last-child) > .input-group-text, -.input-group > .input-group-append:last-child > .btn:not(:last-child):not(.dropdown-toggle), -.input-group > .input-group-append:last-child > .input-group-text:not(:last-child) { - border-top-right-radius: 0; - border-bottom-right-radius: 0; +.nav-justified > .nav-link, +.nav-justified .nav-item { + flex-basis: 0; + flex-grow: 1; + text-align: center; } -.input-group > .input-group-append > .btn, -.input-group > .input-group-append > .input-group-text, -.input-group > .input-group-prepend:not(:first-child) > .btn, -.input-group > .input-group-prepend:not(:first-child) > .input-group-text, -.input-group > .input-group-prepend:first-child > .btn:not(:first-child), -.input-group > .input-group-prepend:first-child > .input-group-text:not(:first-child) { - border-top-left-radius: 0; - border-bottom-left-radius: 0; +.tab-content > .tab-pane { + display: none; } - -.custom-control { - position: relative; - z-index: 1; +.tab-content > .active { display: block; - min-height: 1.6rem; - padding-left: 1.5rem; - -webkit-print-color-adjust: exact; - color-adjust: exact; -} - -.custom-control-inline { - display: inline-flex; - margin-right: 1rem; } -.custom-control-input { - position: absolute; - left: 0; - z-index: -1; - width: 1rem; - height: 1.3rem; - opacity: 0; -} -.custom-control-input:checked ~ .custom-control-label::before { - color: #fff; - border-color: #0078d7; - background-color: #0078d7; -} -.custom-control-input:focus ~ .custom-control-label::before { - box-shadow: none; -} -.custom-control-input:focus:not(:checked) ~ .custom-control-label::before { - border-color: #58b5ff; -} -.custom-control-input:not(:disabled):active ~ .custom-control-label::before { - color: #fff; - background-color: #8bccff; - border-color: #8bccff; +.navbar { + position: relative; + display: flex; + flex-wrap: wrap; + align-items: center; + justify-content: space-between; + padding-top: 0.5rem; + padding-bottom: 0.5rem; } -.custom-control-input[disabled] ~ .custom-control-label, .custom-control-input:disabled ~ .custom-control-label { - color: #6c757d; +.navbar > .container, +.navbar > .container-fluid, +.navbar > .container-sm, +.navbar > .container-md, +.navbar > .container-lg, +.navbar > .container-xl, +.navbar > .container-xxl { + display: flex; + flex-wrap: inherit; + align-items: center; + justify-content: space-between; } -.custom-control-input[disabled] ~ .custom-control-label::before, .custom-control-input:disabled ~ .custom-control-label::before { - background-color: #e9ecef; +.navbar-brand { + padding-top: 0.3rem; + padding-bottom: 0.3rem; + margin-right: 1rem; + font-size: 1.25rem; + text-decoration: none; + white-space: nowrap; } - -.custom-control-label { - position: relative; +.navbar-nav { + display: flex; + flex-direction: column; + padding-left: 0; margin-bottom: 0; - vertical-align: top; + list-style: none; } -.custom-control-label::before { - position: absolute; - top: 0.3rem; - left: -1.5rem; - display: block; - width: 1rem; - height: 1rem; - pointer-events: none; - content: ""; - background-color: #fff; - border: #adb5bd solid 1px; +.navbar-nav .nav-link { + padding-right: 0; + padding-left: 0; } -.custom-control-label::after { - position: absolute; - top: 0.3rem; - left: -1.5rem; - display: block; - width: 1rem; - height: 1rem; - content: ""; - background: no-repeat 50%/50% 50%; +.navbar-nav .dropdown-menu { + position: static; } -.custom-checkbox .custom-control-label::before { - border-radius: 0.25rem; -} -.custom-checkbox .custom-control-input:checked ~ .custom-control-label::after { - background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26l2.974 2.99L8 2.193z'/%3e%3c/svg%3e"); -} -.custom-checkbox .custom-control-input:indeterminate ~ .custom-control-label::before { - border-color: #0078d7; - background-color: #0078d7; -} -.custom-checkbox .custom-control-input:indeterminate ~ .custom-control-label::after { - background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='4' viewBox='0 0 4 4'%3e%3cpath stroke='%23fff' d='M0 2h4'/%3e%3c/svg%3e"); -} -.custom-checkbox .custom-control-input:disabled:checked ~ .custom-control-label::before { - background-color: rgba(0, 120, 215, 0.5); -} -.custom-checkbox .custom-control-input:disabled:indeterminate ~ .custom-control-label::before { - background-color: rgba(0, 120, 215, 0.5); +.navbar-text { + padding-top: 0.5rem; + padding-bottom: 0.5rem; } -.custom-radio .custom-control-label::before { - border-radius: 50%; -} -.custom-radio .custom-control-input:checked ~ .custom-control-label::after { - background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e"); -} -.custom-radio .custom-control-input:disabled:checked ~ .custom-control-label::before { - background-color: rgba(0, 120, 215, 0.5); +.navbar-collapse { + align-items: center; + width: 100%; } -.custom-switch { - padding-left: 2.25rem; -} -.custom-switch .custom-control-label::before { - left: -2.25rem; - width: 1.75rem; - pointer-events: all; - border-radius: 0.5rem; -} -.custom-switch .custom-control-label::after { - top: calc(0.3rem + 2px); - left: calc(-2.25rem + 2px); - width: calc(1rem - 4px); - height: calc(1rem - 4px); - background-color: #adb5bd; - border-radius: 0.5rem; - transition: transform 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; +.navbar-toggler { + padding: 0.25rem 0.75rem; + font-size: 1.25rem; + line-height: 1; + background-color: transparent; + border: 1px solid transparent; + border-radius: 0.25rem; + transition: box-shadow 0.15s ease-in-out; } @media (prefers-reduced-motion: reduce) { - .custom-switch .custom-control-label::after { + .navbar-toggler { transition: none; } } -.custom-switch .custom-control-input:checked ~ .custom-control-label::after { - background-color: #fff; - transform: translateX(0.75rem); -} -.custom-switch .custom-control-input:disabled:checked ~ .custom-control-label::before { - background-color: rgba(0, 120, 215, 0.5); -} - -.custom-select { - display: inline-block; - width: 100%; - height: calc(1.6em + 0.75rem + 2px); - padding: 0.375rem 1.75rem 0.375rem 0.75rem; - font-size: 1rem; - font-weight: 400; - line-height: 1.6; - color: #495057; - vertical-align: middle; - background: #fff url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") no-repeat right 0.75rem center/8px 10px; - border: 1px solid #ced4da; - border-radius: 0.25rem; - -webkit-appearance: none; - -moz-appearance: none; - appearance: none; +.navbar-toggler:hover { + text-decoration: none; } -.custom-select:focus { - border-color: #58b5ff; +.navbar-toggler:focus { + text-decoration: none; outline: 0; - box-shadow: 0 0 0 0.2rem rgba(0, 120, 215, 0.25); -} -.custom-select:focus::-ms-value { - color: #495057; - background-color: #fff; -} -.custom-select[multiple], .custom-select[size]:not([size="1"]) { - height: auto; - padding-right: 0.75rem; - background-image: none; -} -.custom-select:disabled { - color: #6c757d; - background-color: #e9ecef; -} -.custom-select::-ms-expand { - display: none; -} -.custom-select:-moz-focusring { - color: transparent; - text-shadow: 0 0 0 #495057; -} - -.custom-select-sm { - height: calc(1.5em + 0.5rem + 2px); - padding-top: 0.25rem; - padding-bottom: 0.25rem; - padding-left: 0.5rem; - font-size: 0.875rem; -} - -.custom-select-lg { - height: calc(1.5em + 1rem + 2px); - padding-top: 0.5rem; - padding-bottom: 0.5rem; - padding-left: 1rem; - font-size: 1.25rem; + box-shadow: 0 0 0 0.25rem; } -.custom-file { - position: relative; +.navbar-toggler-icon { display: inline-block; - width: 100%; - height: calc(1.6em + 0.75rem + 2px); - margin-bottom: 0; + width: 1.5em; + height: 1.5em; + vertical-align: middle; + background-repeat: no-repeat; + background-position: center; + background-size: 100%; } -.custom-file-input { - position: relative; - z-index: 2; - width: 100%; - height: calc(1.6em + 0.75rem + 2px); - margin: 0; - opacity: 0; +@media (min-width: 576px) { + .navbar-expand-sm { + flex-wrap: nowrap; + justify-content: flex-start; + } + .navbar-expand-sm .navbar-nav { + flex-direction: row; + } + .navbar-expand-sm .navbar-nav .dropdown-menu { + position: absolute; + } + .navbar-expand-sm .navbar-nav .nav-link { + padding-right: 0.5rem; + padding-left: 0.5rem; + } + .navbar-expand-sm .navbar-collapse { + display: flex !important; + } + .navbar-expand-sm .navbar-toggler { + display: none; + } +} +@media (min-width: 768px) { + .navbar-expand-md { + flex-wrap: nowrap; + justify-content: flex-start; + } + .navbar-expand-md .navbar-nav { + flex-direction: row; + } + .navbar-expand-md .navbar-nav .dropdown-menu { + position: absolute; + } + .navbar-expand-md .navbar-nav .nav-link { + padding-right: 0.5rem; + padding-left: 0.5rem; + } + .navbar-expand-md .navbar-collapse { + display: flex !important; + } + .navbar-expand-md .navbar-toggler { + display: none; + } +} +@media (min-width: 992px) { + .navbar-expand-lg { + flex-wrap: nowrap; + justify-content: flex-start; + } + .navbar-expand-lg .navbar-nav { + flex-direction: row; + } + .navbar-expand-lg .navbar-nav .dropdown-menu { + position: absolute; + } + .navbar-expand-lg .navbar-nav .nav-link { + padding-right: 0.5rem; + padding-left: 0.5rem; + } + .navbar-expand-lg .navbar-collapse { + display: flex !important; + } + .navbar-expand-lg .navbar-toggler { + display: none; + } +} +@media (min-width: 1200px) { + .navbar-expand-xl { + flex-wrap: nowrap; + justify-content: flex-start; + } + .navbar-expand-xl .navbar-nav { + flex-direction: row; + } + .navbar-expand-xl .navbar-nav .dropdown-menu { + position: absolute; + } + .navbar-expand-xl .navbar-nav .nav-link { + padding-right: 0.5rem; + padding-left: 0.5rem; + } + .navbar-expand-xl .navbar-collapse { + display: flex !important; + } + .navbar-expand-xl .navbar-toggler { + display: none; + } +} +.navbar-expand { + flex-wrap: nowrap; + justify-content: flex-start; +} +.navbar-expand .navbar-nav { + flex-direction: row; +} +.navbar-expand .navbar-nav .dropdown-menu { + position: absolute; +} +.navbar-expand .navbar-nav .nav-link { + padding-right: 0.5rem; + padding-left: 0.5rem; +} +.navbar-expand .navbar-collapse { + display: flex !important; +} +.navbar-expand .navbar-toggler { + display: none; +} + +.navbar-light .navbar-brand { + color: rgba(0, 0, 0, 0.9); +} +.navbar-light .navbar-brand:hover, .navbar-light .navbar-brand:focus { + color: rgba(0, 0, 0, 0.9); +} +.navbar-light .navbar-nav .nav-link { + color: rgba(0, 0, 0, 0.55); +} +.navbar-light .navbar-nav .nav-link:hover, .navbar-light .navbar-nav .nav-link:focus { + color: rgba(0, 0, 0, 0.7); +} +.navbar-light .navbar-nav .nav-link.disabled { + color: rgba(0, 0, 0, 0.3); +} +.navbar-light .navbar-nav .show > .nav-link, +.navbar-light .navbar-nav .nav-link.active { + color: rgba(0, 0, 0, 0.9); +} +.navbar-light .navbar-toggler { + color: rgba(0, 0, 0, 0.55); + border-color: rgba(0, 0, 0, 0.1); +} +.navbar-light .navbar-toggler-icon { + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%280, 0, 0, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e"); +} +.navbar-light .navbar-text { + color: rgba(0, 0, 0, 0.55); +} +.navbar-light .navbar-text a, +.navbar-light .navbar-text a:hover, +.navbar-light .navbar-text a:focus { + color: rgba(0, 0, 0, 0.9); +} + +.navbar-dark .navbar-brand { + color: #fff; +} +.navbar-dark .navbar-brand:hover, .navbar-dark .navbar-brand:focus { + color: #fff; +} +.navbar-dark .navbar-nav .nav-link { + color: rgba(255, 255, 255, 0.55); +} +.navbar-dark .navbar-nav .nav-link:hover, .navbar-dark .navbar-nav .nav-link:focus { + color: rgba(255, 255, 255, 0.75); +} +.navbar-dark .navbar-nav .nav-link.disabled { + color: rgba(255, 255, 255, 0.25); +} +.navbar-dark .navbar-nav .show > .nav-link, +.navbar-dark .navbar-nav .nav-link.active { + color: #fff; +} +.navbar-dark .navbar-toggler { + color: rgba(255, 255, 255, 0.55); + border-color: rgba(255, 255, 255, 0.1); +} +.navbar-dark .navbar-toggler-icon { + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e"); +} +.navbar-dark .navbar-text { + color: rgba(255, 255, 255, 0.55); +} +.navbar-dark .navbar-text a, +.navbar-dark .navbar-text a:hover, +.navbar-dark .navbar-text a:focus { + color: #fff; +} + +.card { + position: relative; + display: flex; + flex-direction: column; + min-width: 0; + word-wrap: break-word; + background-color: #fff; + background-clip: border-box; + border: 1px solid rgba(0, 0, 0, 0.125); + border-radius: 0.25rem; +} +.card > hr { + margin-right: 0; + margin-left: 0; +} +.card > .list-group { + border-top: inherit; + border-bottom: inherit; +} +.card > .list-group:first-child { + border-top-width: 0; + border-top-left-radius: calc(0.25rem - 1px); + border-top-right-radius: calc(0.25rem - 1px); +} +.card > .list-group:last-child { + border-bottom-width: 0; + border-bottom-right-radius: calc(0.25rem - 1px); + border-bottom-left-radius: calc(0.25rem - 1px); +} +.card > .card-header + .list-group, +.card > .list-group + .card-footer { + border-top: 0; +} + +.card-body { + flex: 1 1 auto; + padding: 1rem 1rem; +} + +.card-title { + margin-bottom: 0.5rem; +} + +.card-subtitle { + margin-top: -0.25rem; + margin-bottom: 0; +} + +.card-text:last-child { + margin-bottom: 0; +} + +.card-link:hover { + text-decoration: none; +} +.card-link + .card-link { + margin-left: 1rem; +} + +.card-header { + padding: 0.5rem 1rem; + margin-bottom: 0; + background-color: rgba(0, 0, 0, 0.03); + border-bottom: 1px solid rgba(0, 0, 0, 0.125); +} +.card-header:first-child { + border-radius: calc(0.25rem - 1px) calc(0.25rem - 1px) 0 0; +} + +.card-footer { + padding: 0.5rem 1rem; + background-color: rgba(0, 0, 0, 0.03); + border-top: 1px solid rgba(0, 0, 0, 0.125); +} +.card-footer:last-child { + border-radius: 0 0 calc(0.25rem - 1px) calc(0.25rem - 1px); +} + +.card-header-tabs { + margin-right: -0.5rem; + margin-bottom: -0.5rem; + margin-left: -0.5rem; + border-bottom: 0; +} + +.card-header-pills { + margin-right: -0.5rem; + margin-left: -0.5rem; +} + +.card-img-overlay { + position: absolute; + top: 0; + right: 0; + bottom: 0; + left: 0; + padding: 1rem; + border-radius: calc(0.25rem - 1px); +} + +.card-img, +.card-img-top, +.card-img-bottom { + width: 100%; +} + +.card-img, +.card-img-top { + border-top-left-radius: calc(0.25rem - 1px); + border-top-right-radius: calc(0.25rem - 1px); +} + +.card-img, +.card-img-bottom { + border-bottom-right-radius: calc(0.25rem - 1px); + border-bottom-left-radius: calc(0.25rem - 1px); +} + +.card-group > .card { + margin-bottom: 0.75rem; +} +@media (min-width: 576px) { + .card-group { + display: flex; + flex-flow: row wrap; + } + .card-group > .card { + flex: 1 0 0%; + margin-bottom: 0; + } + .card-group > .card + .card { + margin-left: 0; + border-left: 0; + } + .card-group > .card:not(:last-child) { + border-top-right-radius: 0; + border-bottom-right-radius: 0; + } + .card-group > .card:not(:last-child) .card-img-top, +.card-group > .card:not(:last-child) .card-header { + border-top-right-radius: 0; + } + .card-group > .card:not(:last-child) .card-img-bottom, +.card-group > .card:not(:last-child) .card-footer { + border-bottom-right-radius: 0; + } + .card-group > .card:not(:first-child) { + border-top-left-radius: 0; + border-bottom-left-radius: 0; + } + .card-group > .card:not(:first-child) .card-img-top, +.card-group > .card:not(:first-child) .card-header { + border-top-left-radius: 0; + } + .card-group > .card:not(:first-child) .card-img-bottom, +.card-group > .card:not(:first-child) .card-footer { + border-bottom-left-radius: 0; + } +} + +.accordion-button { + position: relative; + display: flex; + align-items: center; + width: 100%; + padding: 1rem 1.25rem; + font-size: 1rem; + color: #212529; + background-color: transparent; + border: 1px solid rgba(0, 0, 0, 0.125); + border-radius: 0; + overflow-anchor: none; + transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, border-radius 0.15s ease; +} +@media (prefers-reduced-motion: reduce) { + .accordion-button { + transition: none; + } +} +.accordion-button.collapsed { + border-bottom-width: 0; +} +.accordion-button:not(.collapsed) { + color: #006cc2; + background-color: #e6f2fb; +} +.accordion-button:not(.collapsed)::after { + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23006cc2'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e"); + transform: rotate(180deg); +} +.accordion-button::after { + flex-shrink: 0; + width: 1.25rem; + height: 1.25rem; + margin-left: auto; + content: ""; + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23212529'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e"); + background-repeat: no-repeat; + background-size: 1.25rem; + transition: transform 0.2s ease-in-out; +} +@media (prefers-reduced-motion: reduce) { + .accordion-button::after { + transition: none; + } +} +.accordion-button:hover { + z-index: 2; +} +.accordion-button:focus { + z-index: 3; + border-color: #80bceb; + outline: 0; + box-shadow: none !important; +} + +.accordion-header { + margin-bottom: 0; +} + +.accordion-item:first-of-type .accordion-button { + border-top-left-radius: 0.25rem; + border-top-right-radius: 0.25rem; +} +.accordion-item:last-of-type .accordion-button.collapsed { + border-bottom-width: 1px; + border-bottom-right-radius: 0.25rem; + border-bottom-left-radius: 0.25rem; +} +.accordion-item:last-of-type .accordion-collapse { + border-bottom-width: 1px; + border-bottom-right-radius: 0.25rem; + border-bottom-left-radius: 0.25rem; +} + +.accordion-collapse { + border: solid rgba(0, 0, 0, 0.125); + border-width: 0 1px; +} + +.accordion-body { + padding: 1rem 1.25rem; +} + +.accordion-flush .accordion-button { + border-right: 0; + border-left: 0; + border-radius: 0; +} +.accordion-flush .accordion-collapse { + border-width: 0; +} +.accordion-flush .accordion-item:first-of-type .accordion-button { + border-top-width: 0; + border-top-left-radius: 0; + border-top-right-radius: 0; +} +.accordion-flush .accordion-item:last-of-type .accordion-button.collapsed { + border-bottom-width: 0; + border-bottom-right-radius: 0; + border-bottom-left-radius: 0; +} + +.breadcrumb { + display: flex; + flex-wrap: wrap; + padding: 0.5rem 1rem; + margin-bottom: 1rem; + list-style: none; + background-color: #e9ecef; + border-radius: 0.25rem; } -.custom-file-input:focus ~ .custom-file-label { - border-color: #58b5ff; - box-shadow: none; + +.breadcrumb-item + .breadcrumb-item { + padding-left: 0.5rem; +} +.breadcrumb-item + .breadcrumb-item::before { + float: left; + padding-right: 0.5rem; + color: #6c757d; + content: "/"; +} +.breadcrumb-item.active { + color: #6c757d; +} + +.pagination { + display: flex; + padding-left: 0; + list-style: none; +} + +.page-link { + position: relative; + display: block; + color: #0078d7; + text-decoration: none; + background-color: #fff; + border: 1px solid #dee2e6; + transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; +} +@media (prefers-reduced-motion: reduce) { + .page-link { + transition: none; + } +} +.page-link:hover { + z-index: 2; + color: #0060ac; + background-color: #e9ecef; + border-color: #dee2e6; } -.custom-file-input[disabled] ~ .custom-file-label, .custom-file-input:disabled ~ .custom-file-label { +.page-link:focus { + z-index: 3; + color: #0060ac; background-color: #e9ecef; + outline: 0; + box-shadow: 0 0 0 0.25rem rgba(0, 120, 215, 0.25); +} + +.page-item:not(:first-child) .page-link { + margin-left: -1px; } -.custom-file-input:lang(en) ~ .custom-file-label::after { - content: "Browse"; +.page-item.active .page-link { + z-index: 3; + color: #fff; + background-color: #0078d7; + border-color: #0078d7; } -.custom-file-input ~ .custom-file-label[data-browse]::after { - content: attr(data-browse); +.page-item.disabled .page-link { + color: #6c757d; + pointer-events: none; + background-color: #fff; + border-color: #dee2e6; } -.custom-file-label { - position: absolute; - top: 0; - right: 0; - left: 0; - z-index: 1; - height: calc(1.6em + 0.75rem + 2px); +.page-link { padding: 0.375rem 0.75rem; - font-weight: 400; - line-height: 1.6; - color: #495057; - background-color: #fff; - border: 1px solid #ced4da; +} + +.page-item:first-child .page-link { + border-top-left-radius: 0.25rem; + border-bottom-left-radius: 0.25rem; +} +.page-item:last-child .page-link { + border-top-right-radius: 0.25rem; + border-bottom-right-radius: 0.25rem; +} + +.pagination-lg .page-link { + padding: 0.75rem 1.5rem; + font-size: 1.25rem; +} +.pagination-lg .page-item:first-child .page-link { + border-top-left-radius: 0.3rem; + border-bottom-left-radius: 0.3rem; +} +.pagination-lg .page-item:last-child .page-link { + border-top-right-radius: 0.3rem; + border-bottom-right-radius: 0.3rem; +} + +.pagination-sm .page-link { + padding: 0.25rem 0.5rem; + font-size: 0.875rem; +} +.pagination-sm .page-item:first-child .page-link { + border-top-left-radius: 0.2rem; + border-bottom-left-radius: 0.2rem; +} +.pagination-sm .page-item:last-child .page-link { + border-top-right-radius: 0.2rem; + border-bottom-right-radius: 0.2rem; +} + +.badge { + display: inline-block; + padding: 0.35em 0.65em; + font-size: 0.75em; + font-weight: 700; + line-height: 1; + color: #fff; + text-align: center; + white-space: nowrap; + vertical-align: baseline; + border-radius: 0.25rem; +} +.badge:empty { + display: none; +} + +.btn .badge { + position: relative; + top: -1px; +} + +.alert { + position: relative; + padding: 1rem 1rem; + margin-bottom: 1rem; + border: 1px solid transparent; border-radius: 0.25rem; } -.custom-file-label::after { + +.alert-heading { + color: inherit; +} + +.alert-link { + font-weight: 700; +} + +.alert-dismissible { + padding-right: 3rem; +} +.alert-dismissible .btn-close { position: absolute; top: 0; right: 0; - bottom: 0; - z-index: 3; - display: block; - height: calc(1.6em + 0.75rem); - padding: 0.375rem 0.75rem; - line-height: 1.6; - color: #495057; - content: "Browse"; - background-color: #e9ecef; - border-left: inherit; - border-radius: 0 0.25rem 0.25rem 0; + z-index: 2; + padding: 1.25rem 1rem; } -.custom-range { - width: 100%; - height: 1.4rem; - padding: 0; - background-color: transparent; - -webkit-appearance: none; - -moz-appearance: none; - appearance: none; +.alert-primary { + color: #004881; + background-color: #cce4f7; + border-color: #b3d7f3; } -.custom-range:focus { - outline: none; +.alert-primary .alert-link { + color: #003a67; } -.custom-range:focus::-webkit-slider-thumb { - box-shadow: 0 0 0 1px #fff, none; + +.alert-secondary { + color: #41464b; + background-color: #e2e3e5; + border-color: #d3d6d8; } -.custom-range:focus::-moz-range-thumb { - box-shadow: 0 0 0 1px #fff, none; +.alert-secondary .alert-link { + color: #34383c; } -.custom-range:focus::-ms-thumb { - box-shadow: 0 0 0 1px #fff, none; + +.alert-success { + color: #3c5000; + background-color: #eaf4cc; + border-color: #e0efb3; } -.custom-range::-moz-focus-outer { - border: 0; +.alert-success .alert-link { + color: #304000; } -.custom-range::-webkit-slider-thumb { - width: 1rem; - height: 1rem; - margin-top: -0.25rem; - background-color: #0078d7; - border: 0; - border-radius: 1rem; - -webkit-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; - transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; - -webkit-appearance: none; - appearance: none; + +.alert-info { + color: #005b86; + background-color: #cceaf9; + border-color: #b3e0f5; } -@media (prefers-reduced-motion: reduce) { - .custom-range::-webkit-slider-thumb { - -webkit-transition: none; - transition: none; - } +.alert-info .alert-link { + color: #00496b; } -.custom-range::-webkit-slider-thumb:active { - background-color: #8bccff; + +.alert-warning { + color: #664d00; + background-color: #fff2cc; + border-color: #ffecb3; } -.custom-range::-webkit-slider-runnable-track { - width: 100%; - height: 0.5rem; - color: transparent; - cursor: pointer; - background-color: #dee2e6; - border-color: transparent; - border-radius: 1rem; +.alert-warning .alert-link { + color: #523e00; } -.custom-range::-moz-range-thumb { - width: 1rem; - height: 1rem; - background-color: #0078d7; - border: 0; - border-radius: 1rem; - -moz-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; - transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; - -moz-appearance: none; - appearance: none; + +.alert-danger { + color: #8b260e; + background-color: #fad9d1; + border-color: #f8c6ba; } -@media (prefers-reduced-motion: reduce) { - .custom-range::-moz-range-thumb { - -moz-transition: none; - transition: none; - } +.alert-danger .alert-link { + color: #6f1e0b; } -.custom-range::-moz-range-thumb:active { - background-color: #8bccff; + +.alert-light { + color: #636464; + background-color: #fefefe; + border-color: #fdfdfe; } -.custom-range::-moz-range-track { - width: 100%; - height: 0.5rem; - color: transparent; - cursor: pointer; - background-color: #dee2e6; - border-color: transparent; - border-radius: 1rem; +.alert-light .alert-link { + color: #4f5050; } -.custom-range::-ms-thumb { - width: 1rem; + +.alert-dark { + color: #141619; + background-color: #d3d3d4; + border-color: #bcbebf; +} +.alert-dark .alert-link { + color: #101214; +} + +@-webkit-keyframes progress-bar-stripes { + 0% { + background-position-x: 1rem; + } +} + +@keyframes progress-bar-stripes { + 0% { + background-position-x: 1rem; + } +} +.progress { + display: flex; height: 1rem; - margin-top: 0; - margin-right: 0.2rem; - margin-left: 0.2rem; + overflow: hidden; + font-size: 0.75rem; + background-color: #e9ecef; + border-radius: 0.25rem; +} + +.progress-bar { + display: flex; + flex-direction: column; + justify-content: center; + overflow: hidden; + color: #fff; + text-align: center; + white-space: nowrap; background-color: #0078d7; - border: 0; - border-radius: 1rem; - -ms-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; - transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; - appearance: none; + transition: width 0.6s ease; } @media (prefers-reduced-motion: reduce) { - .custom-range::-ms-thumb { - -ms-transition: none; + .progress-bar { transition: none; } } -.custom-range::-ms-thumb:active { - background-color: #8bccff; -} -.custom-range::-ms-track { - width: 100%; - height: 0.5rem; - color: transparent; - cursor: pointer; - background-color: transparent; - border-color: transparent; - border-width: 0.5rem; -} -.custom-range::-ms-fill-lower { - background-color: #dee2e6; - border-radius: 1rem; -} -.custom-range::-ms-fill-upper { - margin-right: 15px; - background-color: #dee2e6; - border-radius: 1rem; -} -.custom-range:disabled::-webkit-slider-thumb { - background-color: #adb5bd; -} -.custom-range:disabled::-webkit-slider-runnable-track { - cursor: default; -} -.custom-range:disabled::-moz-range-thumb { - background-color: #adb5bd; -} -.custom-range:disabled::-moz-range-track { - cursor: default; -} -.custom-range:disabled::-ms-thumb { - background-color: #adb5bd; + +.progress-bar-striped { + background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-size: 1rem 1rem; } -.custom-control-label::before, -.custom-file-label, -.custom-select { - transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; +.progress-bar-animated { + -webkit-animation: 1s linear infinite progress-bar-stripes; + animation: 1s linear infinite progress-bar-stripes; } @media (prefers-reduced-motion: reduce) { - .custom-control-label::before, -.custom-file-label, -.custom-select { - transition: none; + .progress-bar-animated { + -webkit-animation: none; + animation: none; } } -.nav { +.list-group { display: flex; - flex-wrap: wrap; + flex-direction: column; padding-left: 0; margin-bottom: 0; - list-style: none; + border-radius: 0.25rem; } -.nav-link { - display: block; - padding: 0.5rem 1rem; +.list-group-item-action { + width: 100%; + color: #495057; + text-align: inherit; } -.nav-link:hover, .nav-link:focus { +.list-group-item-action:hover, .list-group-item-action:focus { + z-index: 1; + color: #495057; text-decoration: none; + background-color: #f8f9fa; } -.nav-link.disabled { - color: #6c757d; - pointer-events: none; - cursor: default; +.list-group-item-action:active { + color: #212529; + background-color: #e9ecef; } -.nav-tabs { - border-bottom: 1px solid #dee2e6; -} -.nav-tabs .nav-item { - margin-bottom: -1px; +.list-group-item { + position: relative; + display: block; + padding: 0.5rem 1rem; + text-decoration: none; + background-color: #fff; + border: 1px solid rgba(0, 0, 0, 0.125); } -.nav-tabs .nav-link { - border: 1px solid transparent; - border-top-left-radius: 0.25rem; - border-top-right-radius: 0.25rem; +.list-group-item:first-child { + border-top-left-radius: inherit; + border-top-right-radius: inherit; } -.nav-tabs .nav-link:hover, .nav-tabs .nav-link:focus { - border-color: #e9ecef #e9ecef #dee2e6; +.list-group-item:last-child { + border-bottom-right-radius: inherit; + border-bottom-left-radius: inherit; } -.nav-tabs .nav-link.disabled { +.list-group-item.disabled, .list-group-item:disabled { color: #6c757d; - background-color: transparent; - border-color: transparent; -} -.nav-tabs .nav-link.active, -.nav-tabs .nav-item.show .nav-link { - color: #495057; + pointer-events: none; background-color: #fff; - border-color: #dee2e6 #dee2e6 #fff; -} -.nav-tabs .dropdown-menu { - margin-top: -1px; - border-top-left-radius: 0; - border-top-right-radius: 0; } - -.nav-pills .nav-link { - border-radius: 0.25rem; -} -.nav-pills .nav-link.active, -.nav-pills .show > .nav-link { +.list-group-item.active { + z-index: 2; color: #fff; background-color: #0078d7; + border-color: #0078d7; } - -.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; -} - -.tab-content > .tab-pane { - display: none; -} -.tab-content > .active { - display: block; -} - -.navbar { - position: relative; - display: flex; - flex-wrap: wrap; - align-items: center; - justify-content: space-between; - padding: 0.5rem 1rem; -} -.navbar .container, -.navbar .container-fluid, -.navbar .container-sm, -.navbar .container-md, -.navbar .container-lg, -.navbar .container-xl { - display: flex; - flex-wrap: wrap; - align-items: center; - justify-content: space-between; -} -.navbar-brand { - display: inline-block; - padding-top: 0.3rem; - padding-bottom: 0.3rem; - margin-right: 1rem; - font-size: 1.25rem; - line-height: inherit; - white-space: nowrap; +.list-group-item + .list-group-item { + border-top-width: 0; } -.navbar-brand:hover, .navbar-brand:focus { - text-decoration: none; +.list-group-item + .list-group-item.active { + margin-top: -1px; + border-top-width: 1px; } -.navbar-nav { - display: flex; - flex-direction: column; - padding-left: 0; - margin-bottom: 0; - list-style: none; -} -.navbar-nav .nav-link { - padding-right: 0; - padding-left: 0; -} -.navbar-nav .dropdown-menu { - position: static; - float: none; +.list-group-horizontal { + flex-direction: row; } - -.navbar-text { - display: inline-block; - padding-top: 0.5rem; - padding-bottom: 0.5rem; +.list-group-horizontal > .list-group-item:first-child { + border-bottom-left-radius: 0.25rem; + border-top-right-radius: 0; } - -.navbar-collapse { - flex-basis: 100%; - flex-grow: 1; - align-items: center; +.list-group-horizontal > .list-group-item:last-child { + border-top-right-radius: 0.25rem; + border-bottom-left-radius: 0; } - -.navbar-toggler { - padding: 0.25rem 0.75rem; - font-size: 1.25rem; - line-height: 1; - background-color: transparent; - border: 1px solid transparent; - border-radius: 0.25rem; +.list-group-horizontal > .list-group-item.active { + margin-top: 0; } -.navbar-toggler:hover, .navbar-toggler:focus { - text-decoration: none; +.list-group-horizontal > .list-group-item + .list-group-item { + border-top-width: 1px; + border-left-width: 0; } - -.navbar-toggler-icon { - display: inline-block; - width: 1.5em; - height: 1.5em; - vertical-align: middle; - content: ""; - background: no-repeat center center; - background-size: 100% 100%; +.list-group-horizontal > .list-group-item + .list-group-item.active { + margin-left: -1px; + border-left-width: 1px; } -@media (max-width: 575.98px) { - .navbar-expand-sm > .container, -.navbar-expand-sm > .container-fluid, -.navbar-expand-sm > .container-sm, -.navbar-expand-sm > .container-md, -.navbar-expand-sm > .container-lg, -.navbar-expand-sm > .container-xl { - padding-right: 0; - padding-left: 0; - } -} @media (min-width: 576px) { - .navbar-expand-sm { - flex-flow: row nowrap; - justify-content: flex-start; - } - .navbar-expand-sm .navbar-nav { + .list-group-horizontal-sm { flex-direction: row; } - .navbar-expand-sm .navbar-nav .dropdown-menu { - position: absolute; - } - .navbar-expand-sm .navbar-nav .nav-link { - padding-right: 0.5rem; - padding-left: 0.5rem; + .list-group-horizontal-sm > .list-group-item:first-child { + border-bottom-left-radius: 0.25rem; + border-top-right-radius: 0; } - .navbar-expand-sm > .container, -.navbar-expand-sm > .container-fluid, -.navbar-expand-sm > .container-sm, -.navbar-expand-sm > .container-md, -.navbar-expand-sm > .container-lg, -.navbar-expand-sm > .container-xl { - flex-wrap: nowrap; + .list-group-horizontal-sm > .list-group-item:last-child { + border-top-right-radius: 0.25rem; + border-bottom-left-radius: 0; } - .navbar-expand-sm .navbar-collapse { - display: flex !important; - flex-basis: auto; + .list-group-horizontal-sm > .list-group-item.active { + margin-top: 0; } - .navbar-expand-sm .navbar-toggler { - display: none; + .list-group-horizontal-sm > .list-group-item + .list-group-item { + border-top-width: 1px; + border-left-width: 0; } -} -@media (max-width: 767.98px) { - .navbar-expand-md > .container, -.navbar-expand-md > .container-fluid, -.navbar-expand-md > .container-sm, -.navbar-expand-md > .container-md, -.navbar-expand-md > .container-lg, -.navbar-expand-md > .container-xl { - padding-right: 0; - padding-left: 0; + .list-group-horizontal-sm > .list-group-item + .list-group-item.active { + margin-left: -1px; + border-left-width: 1px; } } @media (min-width: 768px) { - .navbar-expand-md { - flex-flow: row nowrap; - justify-content: flex-start; - } - .navbar-expand-md .navbar-nav { + .list-group-horizontal-md { flex-direction: row; } - .navbar-expand-md .navbar-nav .dropdown-menu { - position: absolute; - } - .navbar-expand-md .navbar-nav .nav-link { - padding-right: 0.5rem; - padding-left: 0.5rem; + .list-group-horizontal-md > .list-group-item:first-child { + border-bottom-left-radius: 0.25rem; + border-top-right-radius: 0; } - .navbar-expand-md > .container, -.navbar-expand-md > .container-fluid, -.navbar-expand-md > .container-sm, -.navbar-expand-md > .container-md, -.navbar-expand-md > .container-lg, -.navbar-expand-md > .container-xl { - flex-wrap: nowrap; + .list-group-horizontal-md > .list-group-item:last-child { + border-top-right-radius: 0.25rem; + border-bottom-left-radius: 0; } - .navbar-expand-md .navbar-collapse { - display: flex !important; - flex-basis: auto; + .list-group-horizontal-md > .list-group-item.active { + margin-top: 0; } - .navbar-expand-md .navbar-toggler { - display: none; + .list-group-horizontal-md > .list-group-item + .list-group-item { + border-top-width: 1px; + border-left-width: 0; } -} -@media (max-width: 991.98px) { - .navbar-expand-lg > .container, -.navbar-expand-lg > .container-fluid, -.navbar-expand-lg > .container-sm, -.navbar-expand-lg > .container-md, -.navbar-expand-lg > .container-lg, -.navbar-expand-lg > .container-xl { - padding-right: 0; - padding-left: 0; + .list-group-horizontal-md > .list-group-item + .list-group-item.active { + margin-left: -1px; + border-left-width: 1px; } } @media (min-width: 992px) { - .navbar-expand-lg { - flex-flow: row nowrap; - justify-content: flex-start; - } - .navbar-expand-lg .navbar-nav { + .list-group-horizontal-lg { flex-direction: row; } - .navbar-expand-lg .navbar-nav .dropdown-menu { - position: absolute; - } - .navbar-expand-lg .navbar-nav .nav-link { - padding-right: 0.5rem; - padding-left: 0.5rem; + .list-group-horizontal-lg > .list-group-item:first-child { + border-bottom-left-radius: 0.25rem; + border-top-right-radius: 0; } - .navbar-expand-lg > .container, -.navbar-expand-lg > .container-fluid, -.navbar-expand-lg > .container-sm, -.navbar-expand-lg > .container-md, -.navbar-expand-lg > .container-lg, -.navbar-expand-lg > .container-xl { - flex-wrap: nowrap; + .list-group-horizontal-lg > .list-group-item:last-child { + border-top-right-radius: 0.25rem; + border-bottom-left-radius: 0; } - .navbar-expand-lg .navbar-collapse { - display: flex !important; - flex-basis: auto; + .list-group-horizontal-lg > .list-group-item.active { + margin-top: 0; } - .navbar-expand-lg .navbar-toggler { - display: none; + .list-group-horizontal-lg > .list-group-item + .list-group-item { + border-top-width: 1px; + border-left-width: 0; } -} -@media (max-width: 1199.98px) { - .navbar-expand-xl > .container, -.navbar-expand-xl > .container-fluid, -.navbar-expand-xl > .container-sm, -.navbar-expand-xl > .container-md, -.navbar-expand-xl > .container-lg, -.navbar-expand-xl > .container-xl { - padding-right: 0; - padding-left: 0; + .list-group-horizontal-lg > .list-group-item + .list-group-item.active { + margin-left: -1px; + border-left-width: 1px; } } @media (min-width: 1200px) { - .navbar-expand-xl { - flex-flow: row nowrap; - justify-content: flex-start; - } - .navbar-expand-xl .navbar-nav { + .list-group-horizontal-xl { flex-direction: row; } - .navbar-expand-xl .navbar-nav .dropdown-menu { - position: absolute; + .list-group-horizontal-xl > .list-group-item:first-child { + border-bottom-left-radius: 0.25rem; + border-top-right-radius: 0; } - .navbar-expand-xl .navbar-nav .nav-link { - padding-right: 0.5rem; - padding-left: 0.5rem; + .list-group-horizontal-xl > .list-group-item:last-child { + border-top-right-radius: 0.25rem; + border-bottom-left-radius: 0; } - .navbar-expand-xl > .container, -.navbar-expand-xl > .container-fluid, -.navbar-expand-xl > .container-sm, -.navbar-expand-xl > .container-md, -.navbar-expand-xl > .container-lg, -.navbar-expand-xl > .container-xl { - flex-wrap: nowrap; + .list-group-horizontal-xl > .list-group-item.active { + margin-top: 0; } - .navbar-expand-xl .navbar-collapse { - display: flex !important; - flex-basis: auto; + .list-group-horizontal-xl > .list-group-item + .list-group-item { + border-top-width: 1px; + border-left-width: 0; } - .navbar-expand-xl .navbar-toggler { - display: none; + .list-group-horizontal-xl > .list-group-item + .list-group-item.active { + margin-left: -1px; + border-left-width: 1px; } } -.navbar-expand { - flex-flow: row nowrap; - justify-content: flex-start; +.list-group-flush { + border-radius: 0; } -.navbar-expand > .container, -.navbar-expand > .container-fluid, -.navbar-expand > .container-sm, -.navbar-expand > .container-md, -.navbar-expand > .container-lg, -.navbar-expand > .container-xl { - padding-right: 0; - padding-left: 0; +.list-group-flush > .list-group-item { + border-width: 0 0 1px; } -.navbar-expand .navbar-nav { - flex-direction: row; +.list-group-flush > .list-group-item:last-child { + border-bottom-width: 0; } -.navbar-expand .navbar-nav .dropdown-menu { - position: absolute; + +.list-group-item-primary { + color: #004881; + background-color: #cce4f7; } -.navbar-expand .navbar-nav .nav-link { - padding-right: 0.5rem; - padding-left: 0.5rem; +.list-group-item-primary.list-group-item-action:hover, .list-group-item-primary.list-group-item-action:focus { + color: #004881; + background-color: #b8cdde; } -.navbar-expand > .container, -.navbar-expand > .container-fluid, -.navbar-expand > .container-sm, -.navbar-expand > .container-md, -.navbar-expand > .container-lg, -.navbar-expand > .container-xl { - flex-wrap: nowrap; +.list-group-item-primary.list-group-item-action.active { + color: #fff; + background-color: #004881; + border-color: #004881; } -.navbar-expand .navbar-collapse { - display: flex !important; - flex-basis: auto; + +.list-group-item-secondary { + color: #41464b; + background-color: #e2e3e5; } -.navbar-expand .navbar-toggler { - display: none; +.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; } -.navbar-light .navbar-brand { - color: rgba(0, 0, 0, 0.9); +.list-group-item-success { + color: #3c5000; + background-color: #eaf4cc; } -.navbar-light .navbar-brand:hover, .navbar-light .navbar-brand:focus { - color: rgba(0, 0, 0, 0.9); +.list-group-item-success.list-group-item-action:hover, .list-group-item-success.list-group-item-action:focus { + color: #3c5000; + background-color: #d3dcb8; } -.navbar-light .navbar-nav .nav-link { - color: rgba(0, 0, 0, 0.5); +.list-group-item-success.list-group-item-action.active { + color: #fff; + background-color: #3c5000; + border-color: #3c5000; } -.navbar-light .navbar-nav .nav-link:hover, .navbar-light .navbar-nav .nav-link:focus { - color: rgba(0, 0, 0, 0.7); + +.list-group-item-info { + color: #005b86; + background-color: #cceaf9; } -.navbar-light .navbar-nav .nav-link.disabled { - color: rgba(0, 0, 0, 0.3); +.list-group-item-info.list-group-item-action:hover, .list-group-item-info.list-group-item-action:focus { + color: #005b86; + background-color: #b8d3e0; } -.navbar-light .navbar-nav .show > .nav-link, -.navbar-light .navbar-nav .active > .nav-link, -.navbar-light .navbar-nav .nav-link.show, -.navbar-light .navbar-nav .nav-link.active { - color: rgba(0, 0, 0, 0.9); +.list-group-item-info.list-group-item-action.active { + color: #fff; + background-color: #005b86; + border-color: #005b86; } -.navbar-light .navbar-toggler { - color: rgba(0, 0, 0, 0.5); - border-color: rgba(0, 0, 0, 0.1); + +.list-group-item-warning { + color: #664d00; + background-color: #fff2cc; } -.navbar-light .navbar-toggler-icon { - background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%280, 0, 0, 0.5%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e"); +.list-group-item-warning.list-group-item-action:hover, .list-group-item-warning.list-group-item-action:focus { + color: #664d00; + background-color: #e6dab8; } -.navbar-light .navbar-text { - color: rgba(0, 0, 0, 0.5); +.list-group-item-warning.list-group-item-action.active { + color: #fff; + background-color: #664d00; + border-color: #664d00; } -.navbar-light .navbar-text a { - color: rgba(0, 0, 0, 0.9); + +.list-group-item-danger { + color: #8b260e; + background-color: #fad9d1; } -.navbar-light .navbar-text a:hover, .navbar-light .navbar-text a:focus { - color: rgba(0, 0, 0, 0.9); +.list-group-item-danger.list-group-item-action:hover, .list-group-item-danger.list-group-item-action:focus { + color: #8b260e; + background-color: #e1c3bc; } - -.navbar-dark .navbar-brand { +.list-group-item-danger.list-group-item-action.active { color: #fff; + background-color: #8b260e; + border-color: #8b260e; } -.navbar-dark .navbar-brand:hover, .navbar-dark .navbar-brand:focus { - color: #fff; + +.list-group-item-light { + color: #636464; + background-color: #fefefe; } -.navbar-dark .navbar-nav .nav-link { - color: rgba(255, 255, 255, 0.5); +.list-group-item-light.list-group-item-action:hover, .list-group-item-light.list-group-item-action:focus { + color: #636464; + background-color: #e5e5e5; } -.navbar-dark .navbar-nav .nav-link:hover, .navbar-dark .navbar-nav .nav-link:focus { - color: rgba(255, 255, 255, 0.75); +.list-group-item-light.list-group-item-action.active { + color: #fff; + background-color: #636464; + border-color: #636464; } -.navbar-dark .navbar-nav .nav-link.disabled { - color: rgba(255, 255, 255, 0.25); + +.list-group-item-dark { + color: #141619; + background-color: #d3d3d4; } -.navbar-dark .navbar-nav .show > .nav-link, -.navbar-dark .navbar-nav .active > .nav-link, -.navbar-dark .navbar-nav .nav-link.show, -.navbar-dark .navbar-nav .nav-link.active { +.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; } -.navbar-dark .navbar-toggler { - color: rgba(255, 255, 255, 0.5); - border-color: rgba(255, 255, 255, 0.1); + +.btn-close { + box-sizing: content-box; + width: 1em; + height: 1em; + padding: 0.25em 0.25em; + color: #000; + background: transparent url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23000'%3e%3cpath d='M.293.293a1 1 0 011.414 0L8 6.586 14.293.293a1 1 0 111.414 1.414L9.414 8l6.293 6.293a1 1 0 01-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 01-1.414-1.414L6.586 8 .293 1.707a1 1 0 010-1.414z'/%3e%3c/svg%3e") center/1em auto no-repeat; + border: 0; + border-radius: 0.25rem; + opacity: 0.5; } -.navbar-dark .navbar-toggler-icon { - background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.5%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e"); +.btn-close:hover { + color: #000; + text-decoration: none; + opacity: 0.75; } -.navbar-dark .navbar-text { - color: rgba(255, 255, 255, 0.5); +.btn-close:focus { + outline: none; + box-shadow: 0 0 0 0.25rem rgba(0, 120, 215, 0.25); + opacity: 1; } -.navbar-dark .navbar-text a { - color: #fff; +.btn-close:disabled, .btn-close.disabled { + pointer-events: none; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + opacity: 0.25; } -.navbar-dark .navbar-text a:hover, .navbar-dark .navbar-text a:focus { - color: #fff; + +.btn-close-white { + filter: invert(1) grayscale(100%) brightness(200%); } -.card { - position: relative; - display: flex; - flex-direction: column; - min-width: 0; - word-wrap: break-word; - background-color: #fff; - background-clip: border-box; - border: 1px solid rgba(0, 0, 0, 0.125); +.toast { + max-width: 350px; + font-size: 0.875rem; + background-color: rgba(255, 255, 255, 0.85); + background-clip: padding-box; + border: 1px solid rgba(0, 0, 0, 0.1); + box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15); + opacity: 0; border-radius: 0.25rem; } -.card > hr { - margin-right: 0; - margin-left: 0; +.toast:not(:last-child) { + margin-bottom: 0.75rem; } -.card > .list-group { - border-top: inherit; - border-bottom: inherit; +.toast.showing { + opacity: 1; } -.card > .list-group:first-child { - border-top-width: 0; - border-top-left-radius: calc(0.25rem - 1px); - border-top-right-radius: calc(0.25rem - 1px); +.toast.show { + display: block; + opacity: 1; } -.card > .list-group:last-child { - border-bottom-width: 0; - border-bottom-right-radius: calc(0.25rem - 1px); - border-bottom-left-radius: calc(0.25rem - 1px); +.toast.hide { + display: none; +} + +.toast-header { + display: flex; + align-items: center; + padding: 0.5rem 0.75rem; + color: #6c757d; + background-color: rgba(255, 255, 255, 0.85); + background-clip: padding-box; + border-bottom: 1px solid rgba(0, 0, 0, 0.05); + border-top-left-radius: calc(0.25rem - 1px); + border-top-right-radius: calc(0.25rem - 1px); } -.card > .card-header + .list-group, -.card > .list-group + .card-footer { - border-top: 0; +.toast-header .btn-close { + margin-right: -0.375rem; + margin-left: 0.75rem; } -.card-body { - flex: 1 1 auto; - min-height: 1px; - padding: 1.25rem; +.toast-body { + padding: 0.75rem; } -.card-title { - margin-bottom: 0.75rem; +.modal-open { + overflow: hidden; } - -.card-subtitle { - margin-top: -0.375rem; - margin-bottom: 0; +.modal-open .modal { + overflow-x: hidden; + overflow-y: auto; } -.card-text:last-child { - margin-bottom: 0; +.modal { + position: fixed; + top: 0; + left: 0; + z-index: 1050; + display: none; + width: 100%; + height: 100%; + overflow: hidden; + outline: 0; } -.card-link:hover { - text-decoration: none; +.modal-dialog { + position: relative; + width: auto; + margin: 0.5rem; + pointer-events: none; } -.card-link + .card-link { - margin-left: 1.25rem; +.modal.fade .modal-dialog { + transition: transform 0.3s ease-out; + transform: translate(0, -50px); } - -.card-header { - padding: 0.75rem 1.25rem; - margin-bottom: 0; - background-color: rgba(0, 0, 0, 0.03); - border-bottom: 1px solid rgba(0, 0, 0, 0.125); +@media (prefers-reduced-motion: reduce) { + .modal.fade .modal-dialog { + transition: none; + } } -.card-header:first-child { - border-radius: calc(0.25rem - 1px) calc(0.25rem - 1px) 0 0; +.modal.show .modal-dialog { + transform: none; +} +.modal.modal-static .modal-dialog { + transform: scale(1.02); } -.card-footer { - padding: 0.75rem 1.25rem; - background-color: rgba(0, 0, 0, 0.03); - border-top: 1px solid rgba(0, 0, 0, 0.125); +.modal-dialog-scrollable { + height: calc(100% - 1rem); } -.card-footer:last-child { - border-radius: 0 0 calc(0.25rem - 1px) calc(0.25rem - 1px); +.modal-dialog-scrollable .modal-content { + max-height: 100%; + overflow: hidden; +} +.modal-dialog-scrollable .modal-body { + overflow-y: auto; } -.card-header-tabs { - margin-right: -0.625rem; - margin-bottom: -0.75rem; - margin-left: -0.625rem; - border-bottom: 0; +.modal-dialog-centered { + display: flex; + align-items: center; + min-height: calc(100% - 1rem); } -.card-header-pills { - margin-right: -0.625rem; - margin-left: -0.625rem; +.modal-content { + position: relative; + display: flex; + flex-direction: column; + width: 100%; + pointer-events: auto; + background-color: #fff; + background-clip: padding-box; + border: 1px solid rgba(0, 0, 0, 0.2); + border-radius: 0.3rem; + outline: 0; } -.card-img-overlay { - position: absolute; +.modal-backdrop { + position: fixed; top: 0; - right: 0; - bottom: 0; left: 0; - padding: 1.25rem; - border-radius: calc(0.25rem - 1px); + z-index: 1040; + width: 100vw; + height: 100vh; + background-color: #000; +} +.modal-backdrop.fade { + opacity: 0; +} +.modal-backdrop.show { + opacity: 0.5; } -.card-img, -.card-img-top, -.card-img-bottom { +.modal-header { + display: flex; flex-shrink: 0; - width: 100%; + align-items: center; + justify-content: space-between; + padding: 1rem 1rem; + border-bottom: 1px solid #dee2e6; + border-top-left-radius: calc(0.3rem - 1px); + border-top-right-radius: calc(0.3rem - 1px); } - -.card-img, -.card-img-top { - border-top-left-radius: calc(0.25rem - 1px); - border-top-right-radius: calc(0.25rem - 1px); +.modal-header .btn-close { + padding: 0.5rem 0.5rem; + margin: -0.5rem -0.5rem -0.5rem auto; } -.card-img, -.card-img-bottom { - border-bottom-right-radius: calc(0.25rem - 1px); - border-bottom-left-radius: calc(0.25rem - 1px); +.modal-title { + margin-bottom: 0; + line-height: 1.6; } -.card-deck .card { - margin-bottom: 15px; -} -@media (min-width: 576px) { - .card-deck { - display: flex; - flex-flow: row wrap; - margin-right: -15px; - margin-left: -15px; - } - .card-deck .card { - flex: 1 0 0%; - margin-right: 15px; - margin-bottom: 0; - margin-left: 15px; - } +.modal-body { + position: relative; + flex: 1 1 auto; + padding: 1rem; } -.card-group > .card { - margin-bottom: 15px; +.modal-footer { + display: flex; + flex-wrap: wrap; + flex-shrink: 0; + align-items: center; + justify-content: flex-end; + padding: 0.75rem; + border-top: 1px solid #dee2e6; + border-bottom-right-radius: calc(0.3rem - 1px); + border-bottom-left-radius: calc(0.3rem - 1px); } -@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; - } +.modal-footer > * { + margin: 0.25rem; } -.card-columns .card { - margin-bottom: 0.75rem; +.modal-scrollbar-measure { + position: absolute; + top: -9999px; + width: 50px; + height: 50px; + overflow: scroll; } + @media (min-width: 576px) { - .card-columns { - -moz-column-count: 3; - column-count: 3; - -moz-column-gap: 1.25rem; - column-gap: 1.25rem; - orphans: 1; - widows: 1; - } - .card-columns .card { - display: inline-block; - width: 100%; + .modal-dialog { + max-width: 500px; + margin: 1.75rem auto; } -} -.accordion { - overflow-anchor: none; -} -.accordion > .card { - overflow: hidden; -} -.accordion > .card:not(:last-of-type) { - border-bottom: 0; - border-bottom-right-radius: 0; - border-bottom-left-radius: 0; -} -.accordion > .card:not(:first-of-type) { - border-top-left-radius: 0; - border-top-right-radius: 0; -} -.accordion > .card > .card-header { - border-radius: 0; - margin-bottom: -1px; -} + .modal-dialog-scrollable { + height: calc(100% - 3.5rem); + } -.breadcrumb { - display: flex; - flex-wrap: wrap; - padding: 0.75rem 1rem; - margin-bottom: 1rem; - list-style: none; - background-color: #e9ecef; - border-radius: 0.25rem; -} + .modal-dialog-centered { + min-height: calc(100% - 3.5rem); + } -.breadcrumb-item { - display: flex; -} -.breadcrumb-item + .breadcrumb-item { - padding-left: 0.5rem; -} -.breadcrumb-item + .breadcrumb-item::before { - display: inline-block; - padding-right: 0.5rem; - color: #6c757d; - content: "/"; + .modal-sm { + max-width: 300px; + } } -.breadcrumb-item + .breadcrumb-item:hover::before { - text-decoration: underline; +@media (min-width: 992px) { + .modal-lg, +.modal-xl { + max-width: 800px; + } } -.breadcrumb-item + .breadcrumb-item:hover::before { - text-decoration: none; +@media (min-width: 1200px) { + .modal-xl { + max-width: 1140px; + } } -.breadcrumb-item.active { - color: #6c757d; +.modal-fullscreen { + width: 100vw; + max-width: none; + height: 100%; + margin: 0; } - -.pagination { - display: flex; - padding-left: 0; - list-style: none; - border-radius: 0.25rem; +.modal-fullscreen .modal-content { + height: 100%; + border: 0; + border-radius: 0; } - -.page-link { - position: relative; - display: block; - padding: 0.5rem 0.75rem; - margin-left: -1px; - line-height: 1.25; - color: #0078d7; - background-color: #fff; - border: 1px solid #dee2e6; +.modal-fullscreen .modal-header { + border-radius: 0; } -.page-link:hover { - z-index: 2; - color: #004d8b; - text-decoration: none; - background-color: #e9ecef; - border-color: #dee2e6; +.modal-fullscreen .modal-body { + overflow-y: auto; } -.page-link:focus { - z-index: 3; - outline: 0; - box-shadow: 0 0 0 0.2rem rgba(0, 120, 215, 0.25); +.modal-fullscreen .modal-footer { + border-radius: 0; } -.page-item:first-child .page-link { - margin-left: 0; - border-top-left-radius: 0.25rem; - border-bottom-left-radius: 0.25rem; +@media (max-width: 575.98px) { + .modal-fullscreen-sm-down { + width: 100vw; + max-width: none; + height: 100%; + margin: 0; + } + .modal-fullscreen-sm-down .modal-content { + height: 100%; + border: 0; + border-radius: 0; + } + .modal-fullscreen-sm-down .modal-header { + border-radius: 0; + } + .modal-fullscreen-sm-down .modal-body { + overflow-y: auto; + } + .modal-fullscreen-sm-down .modal-footer { + border-radius: 0; + } } -.page-item:last-child .page-link { - border-top-right-radius: 0.25rem; - border-bottom-right-radius: 0.25rem; +@media (max-width: 767.98px) { + .modal-fullscreen-md-down { + width: 100vw; + max-width: none; + height: 100%; + margin: 0; + } + .modal-fullscreen-md-down .modal-content { + height: 100%; + border: 0; + border-radius: 0; + } + .modal-fullscreen-md-down .modal-header { + border-radius: 0; + } + .modal-fullscreen-md-down .modal-body { + overflow-y: auto; + } + .modal-fullscreen-md-down .modal-footer { + border-radius: 0; + } } -.page-item.active .page-link { - z-index: 3; - color: #fff; - background-color: #0078d7; - border-color: #0078d7; +@media (max-width: 991.98px) { + .modal-fullscreen-lg-down { + width: 100vw; + max-width: none; + height: 100%; + margin: 0; + } + .modal-fullscreen-lg-down .modal-content { + height: 100%; + border: 0; + border-radius: 0; + } + .modal-fullscreen-lg-down .modal-header { + border-radius: 0; + } + .modal-fullscreen-lg-down .modal-body { + overflow-y: auto; + } + .modal-fullscreen-lg-down .modal-footer { + border-radius: 0; + } } -.page-item.disabled .page-link { - color: #6c757d; - pointer-events: none; - cursor: auto; - background-color: #fff; - border-color: #dee2e6; +@media (max-width: 1199.98px) { + .modal-fullscreen-xl-down { + width: 100vw; + max-width: none; + height: 100%; + margin: 0; + } + .modal-fullscreen-xl-down .modal-content { + height: 100%; + border: 0; + border-radius: 0; + } + .modal-fullscreen-xl-down .modal-header { + border-radius: 0; + } + .modal-fullscreen-xl-down .modal-body { + overflow-y: auto; + } + .modal-fullscreen-xl-down .modal-footer { + border-radius: 0; + } } - -.pagination-lg .page-link { - padding: 0.75rem 1.5rem; - font-size: 1.25rem; - line-height: 1.5; +.tooltip { + position: absolute; + z-index: 1070; + display: block; + margin: 0; + font-family: var(--bs-font-sans-serif); + font-style: normal; + font-weight: 400; + line-height: 1.6; + text-align: left; + text-align: start; + text-decoration: none; + text-shadow: none; + text-transform: none; + letter-spacing: normal; + word-break: normal; + word-spacing: normal; + white-space: normal; + line-break: auto; + font-size: 0.875rem; + word-wrap: break-word; + opacity: 0; } -.pagination-lg .page-item:first-child .page-link { - border-top-left-radius: 0.3rem; - border-bottom-left-radius: 0.3rem; +.tooltip.show { + opacity: 0.9; } -.pagination-lg .page-item:last-child .page-link { - border-top-right-radius: 0.3rem; - border-bottom-right-radius: 0.3rem; +.tooltip .tooltip-arrow { + position: absolute; + display: block; + width: 0.8rem; + height: 0.4rem; +} +.tooltip .tooltip-arrow::before { + position: absolute; + content: ""; + border-color: transparent; + border-style: solid; } -.pagination-sm .page-link { - padding: 0.25rem 0.5rem; - font-size: 0.875rem; - line-height: 1.5; +.bs-tooltip-top, .bs-tooltip-auto[x-placement^=top] { + padding: 0.4rem 0; } -.pagination-sm .page-item:first-child .page-link { - border-top-left-radius: 0.2rem; - border-bottom-left-radius: 0.2rem; +.bs-tooltip-top .tooltip-arrow, .bs-tooltip-auto[x-placement^=top] .tooltip-arrow { + bottom: 0; } -.pagination-sm .page-item:last-child .page-link { - border-top-right-radius: 0.2rem; - border-bottom-right-radius: 0.2rem; +.bs-tooltip-top .tooltip-arrow::before, .bs-tooltip-auto[x-placement^=top] .tooltip-arrow::before { + top: 0; + border-width: 0.4rem 0.4rem 0; + border-top-color: #000; } -.badge { - display: inline-block; - padding: 0.25em 0.4em; - font-size: 75%; - font-weight: 700; - line-height: 1; - text-align: center; - white-space: nowrap; - vertical-align: baseline; - border-radius: 0.25rem; - transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; +.bs-tooltip-right, .bs-tooltip-auto[x-placement^=right] { + padding: 0 0.4rem; } -@media (prefers-reduced-motion: reduce) { - .badge { - transition: none; - } +.bs-tooltip-right .tooltip-arrow, .bs-tooltip-auto[x-placement^=right] .tooltip-arrow { + left: 0; + width: 0.4rem; + height: 0.8rem; } -a.badge:hover, a.badge:focus { - text-decoration: none; +.bs-tooltip-right .tooltip-arrow::before, .bs-tooltip-auto[x-placement^=right] .tooltip-arrow::before { + right: 0; + border-width: 0.4rem 0.4rem 0.4rem 0; + border-right-color: #000; } -.badge:empty { - display: none; +.bs-tooltip-bottom, .bs-tooltip-auto[x-placement^=bottom] { + padding: 0.4rem 0; } - -.btn .badge { - position: relative; - top: -1px; +.bs-tooltip-bottom .tooltip-arrow, .bs-tooltip-auto[x-placement^=bottom] .tooltip-arrow { + top: 0; } - -.badge-pill { - padding-right: 0.6em; - padding-left: 0.6em; - border-radius: 10rem; +.bs-tooltip-bottom .tooltip-arrow::before, .bs-tooltip-auto[x-placement^=bottom] .tooltip-arrow::before { + bottom: 0; + border-width: 0 0.4rem 0.4rem; + border-bottom-color: #000; } -.badge-primary { - color: #fff; - background-color: #0078d7; +.bs-tooltip-left, .bs-tooltip-auto[x-placement^=left] { + padding: 0 0.4rem; } -a.badge-primary:hover, a.badge-primary:focus { - color: #fff; - background-color: #005ca4; +.bs-tooltip-left .tooltip-arrow, .bs-tooltip-auto[x-placement^=left] .tooltip-arrow { + right: 0; + width: 0.4rem; + height: 0.8rem; } -a.badge-primary:focus, a.badge-primary.focus { - outline: 0; - box-shadow: 0 0 0 0.2rem rgba(0, 120, 215, 0.5); +.bs-tooltip-left .tooltip-arrow::before, .bs-tooltip-auto[x-placement^=left] .tooltip-arrow::before { + left: 0; + border-width: 0.4rem 0 0.4rem 0.4rem; + border-left-color: #000; } -.badge-secondary { - color: #fff; - background-color: #6c757d; -} -a.badge-secondary:hover, a.badge-secondary:focus { +.tooltip-inner { + max-width: 200px; + padding: 0.25rem 0.5rem; color: #fff; - background-color: #545b62; -} -a.badge-secondary:focus, a.badge-secondary.focus { - outline: 0; - box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 0.5); + text-align: center; + background-color: #000; + border-radius: 0.25rem; } -.badge-success { - color: #212529; - background-color: #97c800; +.popover { + position: absolute; + top: 0; + left: 0; + z-index: 1060; + display: block; + max-width: 276px; + font-family: var(--bs-font-sans-serif); + font-style: normal; + font-weight: 400; + line-height: 1.6; + text-align: left; + text-align: start; + text-decoration: none; + text-shadow: none; + text-transform: none; + letter-spacing: normal; + word-break: normal; + word-spacing: normal; + white-space: normal; + line-break: auto; + font-size: 0.875rem; + word-wrap: break-word; + background-color: #fff; + background-clip: padding-box; + border: 1px solid rgba(0, 0, 0, 0.2); + border-radius: 0.3rem; } -a.badge-success:hover, a.badge-success:focus { - color: #212529; - background-color: #709500; +.popover .popover-arrow { + position: absolute; + display: block; + width: 1rem; + height: 0.5rem; + margin: 0 0.3rem; } -a.badge-success:focus, a.badge-success.focus { - outline: 0; - box-shadow: 0 0 0 0.2rem rgba(151, 200, 0, 0.5); +.popover .popover-arrow::before, .popover .popover-arrow::after { + position: absolute; + display: block; + content: ""; + border-color: transparent; + border-style: solid; } -.badge-info { - color: #fff; - background-color: #0098df; +.bs-popover-top, .bs-popover-auto[x-placement^=top] { + margin-bottom: 0.5rem; } -a.badge-info:hover, a.badge-info:focus { - color: #fff; - background-color: #0075ac; +.bs-popover-top > .popover-arrow, .bs-popover-auto[x-placement^=top] > .popover-arrow { + bottom: calc(-0.5rem - 1px); } -a.badge-info:focus, a.badge-info.focus { - outline: 0; - box-shadow: 0 0 0 0.2rem rgba(0, 152, 223, 0.5); +.bs-popover-top > .popover-arrow::before, .bs-popover-auto[x-placement^=top] > .popover-arrow::before { + bottom: 0; + border-width: 0.5rem 0.5rem 0; + border-top-color: rgba(0, 0, 0, 0.25); +} +.bs-popover-top > .popover-arrow::after, .bs-popover-auto[x-placement^=top] > .popover-arrow::after { + bottom: 1px; + border-width: 0.5rem 0.5rem 0; + border-top-color: #fff; } -.badge-warning { - color: #212529; - background-color: #ffc000; +.bs-popover-right, .bs-popover-auto[x-placement^=right] { + margin-left: 0.5rem; } -a.badge-warning:hover, a.badge-warning:focus { - color: #212529; - background-color: #cc9a00; +.bs-popover-right > .popover-arrow, .bs-popover-auto[x-placement^=right] > .popover-arrow { + left: calc(-0.5rem - 1px); + width: 0.5rem; + height: 1rem; + margin: 0.3rem 0; +} +.bs-popover-right > .popover-arrow::before, .bs-popover-auto[x-placement^=right] > .popover-arrow::before { + left: 0; + border-width: 0.5rem 0.5rem 0.5rem 0; + border-right-color: rgba(0, 0, 0, 0.25); } -a.badge-warning:focus, a.badge-warning.focus { - outline: 0; - box-shadow: 0 0 0 0.2rem rgba(255, 192, 0, 0.5); +.bs-popover-right > .popover-arrow::after, .bs-popover-auto[x-placement^=right] > .popover-arrow::after { + left: 1px; + border-width: 0.5rem 0.5rem 0.5rem 0; + border-right-color: #fff; } -.badge-danger { - color: #fff; - background-color: #e74018; -} -a.badge-danger:hover, a.badge-danger:focus { - color: #fff; - background-color: #b93313; +.bs-popover-bottom, .bs-popover-auto[x-placement^=bottom] { + margin-top: 0.5rem; } -a.badge-danger:focus, a.badge-danger.focus { - outline: 0; - box-shadow: 0 0 0 0.2rem rgba(231, 64, 24, 0.5); +.bs-popover-bottom > .popover-arrow, .bs-popover-auto[x-placement^=bottom] > .popover-arrow { + top: calc(-0.5rem - 1px); } - -.badge-light { - color: #212529; - background-color: #f8f9fa; +.bs-popover-bottom > .popover-arrow::before, .bs-popover-auto[x-placement^=bottom] > .popover-arrow::before { + top: 0; + border-width: 0 0.5rem 0.5rem 0.5rem; + border-bottom-color: rgba(0, 0, 0, 0.25); } -a.badge-light:hover, a.badge-light:focus { - color: #212529; - background-color: #dae0e5; +.bs-popover-bottom > .popover-arrow::after, .bs-popover-auto[x-placement^=bottom] > .popover-arrow::after { + top: 1px; + border-width: 0 0.5rem 0.5rem 0.5rem; + border-bottom-color: #fff; } -a.badge-light:focus, a.badge-light.focus { - outline: 0; - box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5); +.bs-popover-bottom .popover-header::before, .bs-popover-auto[x-placement^=bottom] .popover-header::before { + position: absolute; + top: 0; + left: 50%; + display: block; + width: 1rem; + margin-left: -0.5rem; + content: ""; + border-bottom: 1px solid #f0f0f0; } -.badge-dark { - color: #fff; - background-color: #343a40; +.bs-popover-left, .bs-popover-auto[x-placement^=left] { + margin-right: 0.5rem; } -a.badge-dark:hover, a.badge-dark:focus { - color: #fff; - background-color: #1d2124; +.bs-popover-left > .popover-arrow, .bs-popover-auto[x-placement^=left] > .popover-arrow { + right: calc(-0.5rem - 1px); + width: 0.5rem; + height: 1rem; + margin: 0.3rem 0; } -a.badge-dark:focus, a.badge-dark.focus { - outline: 0; - box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.5); +.bs-popover-left > .popover-arrow::before, .bs-popover-auto[x-placement^=left] > .popover-arrow::before { + right: 0; + border-width: 0.5rem 0 0.5rem 0.5rem; + border-left-color: rgba(0, 0, 0, 0.25); +} +.bs-popover-left > .popover-arrow::after, .bs-popover-auto[x-placement^=left] > .popover-arrow::after { + right: 1px; + border-width: 0.5rem 0 0.5rem 0.5rem; + border-left-color: #fff; } -.jumbotron { - padding: 2rem 1rem; - margin-bottom: 2rem; - background-color: #e9ecef; - border-radius: 0.3rem; +.popover-header { + padding: 0.5rem 1rem; + margin-bottom: 0; + font-size: 1rem; + background-color: #f0f0f0; + border-bottom: 1px solid #d8d8d8; + border-top-left-radius: calc(0.3rem - 1px); + border-top-right-radius: calc(0.3rem - 1px); } -@media (min-width: 576px) { - .jumbotron { - padding: 4rem 2rem; - } +.popover-header:empty { + display: none; } -.jumbotron-fluid { - padding-right: 0; - padding-left: 0; - border-radius: 0; +.popover-body { + padding: 1rem 1rem; + color: #212529; } -.alert { +.carousel { position: relative; - padding: 0.75rem 1.25rem; - margin-bottom: 1rem; - border: 1px solid transparent; - border-radius: 0.25rem; } -.alert-heading { - color: inherit; +.carousel.pointer-event { + touch-action: pan-y; } -.alert-link { - font-weight: 700; +.carousel-inner { + position: relative; + width: 100%; + overflow: hidden; +} +.carousel-inner::after { + display: block; + clear: both; + content: ""; } -.alert-dismissible { - padding-right: 4rem; +.carousel-item { + position: relative; + display: none; + float: left; + width: 100%; + margin-right: -100%; + -webkit-backface-visibility: hidden; + backface-visibility: hidden; + transition: transform 0.6s ease-in-out; } -.alert-dismissible .close { - position: absolute; - top: 0; - right: 0; - z-index: 2; - padding: 0.75rem 1.25rem; - color: inherit; +@media (prefers-reduced-motion: reduce) { + .carousel-item { + transition: none; + } } -.alert-primary { - color: #003e70; - background-color: #cce4f7; - border-color: #b8d9f4; +.carousel-item.active, +.carousel-item-next, +.carousel-item-prev { + display: block; } -.alert-primary hr { - border-top-color: #a2cdf1; + +.carousel-item-next:not(.carousel-item-left), +.active.carousel-item-right { + transform: translateX(100%); } -.alert-primary .alert-link { - color: #00223d; + +.carousel-item-prev:not(.carousel-item-right), +.active.carousel-item-left { + transform: translateX(-100%); } -.alert-secondary { - color: #383d41; - background-color: #e2e3e5; - border-color: #d6d8db; +.carousel-fade .carousel-item { + opacity: 0; + transition-property: opacity; + transform: none; +} +.carousel-fade .carousel-item.active, +.carousel-fade .carousel-item-next.carousel-item-left, +.carousel-fade .carousel-item-prev.carousel-item-right { + z-index: 1; + opacity: 1; } -.alert-secondary hr { - border-top-color: #c8cbcf; +.carousel-fade .active.carousel-item-left, +.carousel-fade .active.carousel-item-right { + z-index: 0; + opacity: 0; + transition: opacity 0s 0.6s; } -.alert-secondary .alert-link { - color: #202326; +@media (prefers-reduced-motion: reduce) { + .carousel-fade .active.carousel-item-left, +.carousel-fade .active.carousel-item-right { + transition: none; + } } -.alert-success { - color: #4f6800; - background-color: #eaf4cc; - border-color: #e2f0b8; +.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%; + color: #fff; + text-align: center; + opacity: 0.5; + transition: opacity 0.15s ease; } -.alert-success hr { - border-top-color: #d9eca3; +@media (prefers-reduced-motion: reduce) { + .carousel-control-prev, +.carousel-control-next { + transition: none; + } } -.alert-success .alert-link { - color: #283500; +.carousel-control-prev:hover, .carousel-control-prev:focus, +.carousel-control-next:hover, +.carousel-control-next:focus { + color: #fff; + text-decoration: none; + outline: 0; + opacity: 0.9; } -.alert-info { - color: #004f74; - background-color: #cceaf9; - border-color: #b8e2f6; -} -.alert-info hr { - border-top-color: #a1d9f3; -} -.alert-info .alert-link { - color: #002c41; +.carousel-control-prev { + left: 0; } -.alert-warning { - color: #856400; - background-color: #fff2cc; - border-color: #ffedb8; +.carousel-control-next { + right: 0; } -.alert-warning hr { - border-top-color: #ffe79f; + +.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%; } -.alert-warning .alert-link { - color: #523e00; + +.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"); } -.alert-danger { - color: #78210c; - background-color: #fad9d1; - border-color: #f8cabe; +.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"); } -.alert-danger hr { - border-top-color: #f6b7a7; + +.carousel-indicators { + position: absolute; + right: 0; + bottom: 0; + left: 0; + z-index: 2; + display: flex; + justify-content: center; + padding-left: 0; + margin-right: 15%; + margin-left: 15%; + list-style: none; } -.alert-danger .alert-link { - color: #4a1407; +.carousel-indicators li { + box-sizing: content-box; + flex: 0 1 auto; + width: 30px; + height: 3px; + margin-right: 3px; + margin-left: 3px; + text-indent: -999px; + cursor: pointer; + background-color: #fff; + background-clip: padding-box; + border-top: 10px solid transparent; + border-bottom: 10px solid transparent; + opacity: 0.5; + transition: opacity 0.6s ease; } - -.alert-light { - color: #818182; - background-color: #fefefe; - border-color: #fdfdfe; +@media (prefers-reduced-motion: reduce) { + .carousel-indicators li { + transition: none; + } } -.alert-light hr { - border-top-color: #ececf6; +.carousel-indicators .active { + opacity: 1; } -.alert-light .alert-link { - color: #686868; + +.carousel-caption { + position: absolute; + right: 15%; + bottom: 1.25rem; + left: 15%; + padding-top: 1.25rem; + padding-bottom: 1.25rem; + color: #fff; + text-align: center; } -.alert-dark { - color: #1b1e21; - background-color: #d6d8d9; - border-color: #c6c8ca; +.carousel-dark .carousel-control-prev-icon, +.carousel-dark .carousel-control-next-icon { + filter: invert(1) grayscale(100); } -.alert-dark hr { - border-top-color: #b9bbbe; +.carousel-dark .carousel-indicators li { + background-color: #000; } -.alert-dark .alert-link { - color: #040505; +.carousel-dark .carousel-caption { + color: #000; } -@-webkit-keyframes progress-bar-stripes { - from { - background-position: 1rem 0; - } +@-webkit-keyframes spinner-border { to { - background-position: 0 0; + transform: rotate(360deg); } } -@keyframes progress-bar-stripes { - from { - background-position: 1rem 0; - } +@keyframes spinner-border { to { - background-position: 0 0; + transform: rotate(360deg); } } -.progress { - display: flex; - height: 1rem; - overflow: hidden; - line-height: 0; - font-size: 0.75rem; - background-color: #e9ecef; - border-radius: 0.25rem; +.spinner-border { + display: inline-block; + width: 2rem; + height: 2rem; + vertical-align: text-bottom; + border: 0.25em solid currentColor; + border-right-color: transparent; + border-radius: 50%; + -webkit-animation: 0.75s linear infinite spinner-border; + animation: 0.75s linear infinite spinner-border; } -.progress-bar { - display: flex; - flex-direction: column; - justify-content: center; - overflow: hidden; - color: #fff; - text-align: center; - white-space: nowrap; - background-color: #0078d7; - transition: width 0.6s ease; +.spinner-border-sm { + width: 1rem; + height: 1rem; + border-width: 0.2em; } -@media (prefers-reduced-motion: reduce) { - .progress-bar { - transition: none; + +@-webkit-keyframes spinner-grow { + 0% { + transform: scale(0); + } + 50% { + opacity: 1; + transform: none; } } -.progress-bar-striped { - background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); - background-size: 1rem 1rem; +@keyframes spinner-grow { + 0% { + transform: scale(0); + } + 50% { + opacity: 1; + transform: none; + } +} +.spinner-grow { + display: inline-block; + width: 2rem; + height: 2rem; + vertical-align: text-bottom; + background-color: currentColor; + border-radius: 50%; + opacity: 0; + -webkit-animation: 0.75s linear infinite spinner-grow; + animation: 0.75s linear infinite spinner-grow; } -.progress-bar-animated { - -webkit-animation: progress-bar-stripes 1s linear infinite; - animation: progress-bar-stripes 1s linear infinite; +.spinner-grow-sm { + width: 1rem; + height: 1rem; } + @media (prefers-reduced-motion: reduce) { - .progress-bar-animated { - -webkit-animation: none; - animation: none; + .spinner-border, +.spinner-grow { + -webkit-animation-duration: 1.5s; + animation-duration: 1.5s; } } - -.media { - display: flex; - align-items: flex-start; +.clearfix::after { + display: block; + clear: both; + content: ""; } -.media-body { - flex: 1; +.link-primary { + color: #0078d7; } - -.list-group { - display: flex; - flex-direction: column; - padding-left: 0; - margin-bottom: 0; - border-radius: 0.25rem; +.link-primary:hover, .link-primary:focus { + color: #3393df; } -.list-group-item-action { - width: 100%; - color: #495057; - text-align: inherit; -} -.list-group-item-action:hover, .list-group-item-action:focus { - z-index: 1; - color: #495057; - text-decoration: none; - background-color: #f8f9fa; +.link-secondary { + color: #6c757d; } -.list-group-item-action:active { - color: #212529; - background-color: #e9ecef; +.link-secondary:hover, .link-secondary:focus { + color: #565e64; } -.list-group-item { - position: relative; - display: block; - padding: 0.75rem 1.25rem; - background-color: #fff; - border: 1px solid rgba(0, 0, 0, 0.125); -} -.list-group-item:first-child { - border-top-left-radius: inherit; - border-top-right-radius: inherit; +.link-success { + color: #97c800; } -.list-group-item:last-child { - border-bottom-right-radius: inherit; - border-bottom-left-radius: inherit; +.link-success:hover, .link-success:focus { + color: #acd333; } -.list-group-item.disabled, .list-group-item:disabled { - color: #6c757d; - pointer-events: none; - background-color: #fff; + +.link-info { + color: #0098df; } -.list-group-item.active { - z-index: 2; - color: #fff; - background-color: #0078d7; - border-color: #0078d7; +.link-info:hover, .link-info:focus { + color: #33ade5; } -.list-group-item + .list-group-item { - border-top-width: 0; + +.link-warning { + color: #ffc000; } -.list-group-item + .list-group-item.active { - margin-top: -1px; - border-top-width: 1px; +.link-warning:hover, .link-warning:focus { + color: #ffcd33; } -.list-group-horizontal { - flex-direction: row; +.link-danger { + color: #e74018; } -.list-group-horizontal > .list-group-item:first-child { - border-bottom-left-radius: 0.25rem; - border-top-right-radius: 0; +.link-danger:hover, .link-danger:focus { + color: #ec6646; } -.list-group-horizontal > .list-group-item:last-child { - border-top-right-radius: 0.25rem; - border-bottom-left-radius: 0; + +.link-light { + color: #f8f9fa; } -.list-group-horizontal > .list-group-item.active { - margin-top: 0; +.link-light:hover, .link-light:focus { + color: #f9fafb; } -.list-group-horizontal > .list-group-item + .list-group-item { - border-top-width: 1px; - border-left-width: 0; + +.link-dark { + color: #212529; } -.list-group-horizontal > .list-group-item + .list-group-item.active { - margin-left: -1px; - border-left-width: 1px; +.link-dark:hover, .link-dark:focus { + color: #1a1e21; } -@media (min-width: 576px) { - .list-group-horizontal-sm { - flex-direction: row; - } - .list-group-horizontal-sm > .list-group-item:first-child { - border-bottom-left-radius: 0.25rem; - border-top-right-radius: 0; - } - .list-group-horizontal-sm > .list-group-item:last-child { - border-top-right-radius: 0.25rem; - border-bottom-left-radius: 0; - } - .list-group-horizontal-sm > .list-group-item.active { - margin-top: 0; - } - .list-group-horizontal-sm > .list-group-item + .list-group-item { - border-top-width: 1px; - border-left-width: 0; - } - .list-group-horizontal-sm > .list-group-item + .list-group-item.active { - margin-left: -1px; - border-left-width: 1px; - } -} -@media (min-width: 768px) { - .list-group-horizontal-md { - flex-direction: row; - } - .list-group-horizontal-md > .list-group-item:first-child { - border-bottom-left-radius: 0.25rem; - border-top-right-radius: 0; - } - .list-group-horizontal-md > .list-group-item:last-child { - border-top-right-radius: 0.25rem; - border-bottom-left-radius: 0; - } - .list-group-horizontal-md > .list-group-item.active { - margin-top: 0; - } - .list-group-horizontal-md > .list-group-item + .list-group-item { - border-top-width: 1px; - border-left-width: 0; - } - .list-group-horizontal-md > .list-group-item + .list-group-item.active { - margin-left: -1px; - border-left-width: 1px; - } +.ratio { + position: relative; + width: 100%; } -@media (min-width: 992px) { - .list-group-horizontal-lg { - flex-direction: row; - } - .list-group-horizontal-lg > .list-group-item:first-child { - border-bottom-left-radius: 0.25rem; - border-top-right-radius: 0; - } - .list-group-horizontal-lg > .list-group-item:last-child { - border-top-right-radius: 0.25rem; - border-bottom-left-radius: 0; - } - .list-group-horizontal-lg > .list-group-item.active { - margin-top: 0; - } - .list-group-horizontal-lg > .list-group-item + .list-group-item { - border-top-width: 1px; - border-left-width: 0; - } - .list-group-horizontal-lg > .list-group-item + .list-group-item.active { - margin-left: -1px; - border-left-width: 1px; - } +.ratio::before { + display: block; + padding-top: var(--aspect-ratio); + content: ""; } -@media (min-width: 1200px) { - .list-group-horizontal-xl { - flex-direction: row; - } - .list-group-horizontal-xl > .list-group-item:first-child { - border-bottom-left-radius: 0.25rem; - border-top-right-radius: 0; - } - .list-group-horizontal-xl > .list-group-item:last-child { - border-top-right-radius: 0.25rem; - border-bottom-left-radius: 0; - } - .list-group-horizontal-xl > .list-group-item.active { - margin-top: 0; - } - .list-group-horizontal-xl > .list-group-item + .list-group-item { - border-top-width: 1px; - border-left-width: 0; - } - .list-group-horizontal-xl > .list-group-item + .list-group-item.active { - margin-left: -1px; - border-left-width: 1px; - } +.ratio > * { + position: absolute; + top: 0; + left: 0; + width: 100%; + height: 100%; } -.list-group-flush { - border-radius: 0; + +.ratio-1x1 { + --aspect-ratio: 100%; } -.list-group-flush > .list-group-item { - border-width: 0 0 1px; + +.ratio-4x3 { + --aspect-ratio: calc(3 / 4 * 100%); } -.list-group-flush > .list-group-item:last-child { - border-bottom-width: 0; + +.ratio-16x9 { + --aspect-ratio: calc(9 / 16 * 100%); } -.list-group-item-primary { - color: #003e70; - background-color: #b8d9f4; +.ratio-21x9 { + --aspect-ratio: calc(9 / 21 * 100%); } -.list-group-item-primary.list-group-item-action:hover, .list-group-item-primary.list-group-item-action:focus { - color: #003e70; - background-color: #a2cdf1; + +.fixed-top { + position: fixed; + top: 0; + right: 0; + left: 0; + z-index: 1030; } -.list-group-item-primary.list-group-item-action.active { - color: #fff; - background-color: #003e70; - border-color: #003e70; + +.fixed-bottom { + position: fixed; + right: 0; + bottom: 0; + left: 0; + z-index: 1030; } -.list-group-item-secondary { - color: #383d41; - background-color: #d6d8db; +.sticky-top { + position: -webkit-sticky; + position: sticky; + top: 0; + z-index: 1020; } -.list-group-item-secondary.list-group-item-action:hover, .list-group-item-secondary.list-group-item-action:focus { - color: #383d41; - background-color: #c8cbcf; + +@media (min-width: 576px) { + .sticky-sm-top { + position: -webkit-sticky; + position: sticky; + top: 0; + z-index: 1020; + } } -.list-group-item-secondary.list-group-item-action.active { - color: #fff; - background-color: #383d41; - border-color: #383d41; +@media (min-width: 768px) { + .sticky-md-top { + position: -webkit-sticky; + position: sticky; + top: 0; + z-index: 1020; + } +} +@media (min-width: 992px) { + .sticky-lg-top { + position: -webkit-sticky; + position: sticky; + top: 0; + z-index: 1020; + } +} +@media (min-width: 1200px) { + .sticky-xl-top { + position: -webkit-sticky; + position: sticky; + top: 0; + z-index: 1020; + } +} +.visually-hidden, +.visually-hidden-focusable:not(:focus) { + 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; } -.list-group-item-success { - color: #4f6800; - background-color: #e2f0b8; +.stretched-link::after { + position: absolute; + top: 0; + right: 0; + bottom: 0; + left: 0; + z-index: 1; + content: ""; } -.list-group-item-success.list-group-item-action:hover, .list-group-item-success.list-group-item-action:focus { - color: #4f6800; - background-color: #d9eca3; + +.text-truncate { + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap; } -.list-group-item-success.list-group-item-action.active { - color: #fff; - background-color: #4f6800; - border-color: #4f6800; + +.align-baseline { + vertical-align: baseline !important; } -.list-group-item-info { - color: #004f74; - background-color: #b8e2f6; +.align-top { + vertical-align: top !important; } -.list-group-item-info.list-group-item-action:hover, .list-group-item-info.list-group-item-action:focus { - color: #004f74; - background-color: #a1d9f3; + +.align-middle { + vertical-align: middle !important; } -.list-group-item-info.list-group-item-action.active { - color: #fff; - background-color: #004f74; - border-color: #004f74; + +.align-bottom { + vertical-align: bottom !important; } -.list-group-item-warning { - color: #856400; - background-color: #ffedb8; +.align-text-bottom { + vertical-align: text-bottom !important; } -.list-group-item-warning.list-group-item-action:hover, .list-group-item-warning.list-group-item-action:focus { - color: #856400; - background-color: #ffe79f; + +.align-text-top { + vertical-align: text-top !important; } -.list-group-item-warning.list-group-item-action.active { - color: #fff; - background-color: #856400; - border-color: #856400; + +.float-left { + float: left !important; } -.list-group-item-danger { - color: #78210c; - background-color: #f8cabe; +.float-right { + float: right !important; } -.list-group-item-danger.list-group-item-action:hover, .list-group-item-danger.list-group-item-action:focus { - color: #78210c; - background-color: #f6b7a7; + +.float-none { + float: none !important; } -.list-group-item-danger.list-group-item-action.active { - color: #fff; - background-color: #78210c; - border-color: #78210c; + +.overflow-auto { + overflow: auto !important; } -.list-group-item-light { - color: #818182; - background-color: #fdfdfe; +.overflow-hidden { + overflow: hidden !important; } -.list-group-item-light.list-group-item-action:hover, .list-group-item-light.list-group-item-action:focus { - color: #818182; - background-color: #ececf6; + +.overflow-visible { + overflow: visible !important; } -.list-group-item-light.list-group-item-action.active { - color: #fff; - background-color: #818182; - border-color: #818182; + +.overflow-scroll { + overflow: scroll !important; } -.list-group-item-dark { - color: #1b1e21; - background-color: #c6c8ca; +.d-inline { + display: inline !important; } -.list-group-item-dark.list-group-item-action:hover, .list-group-item-dark.list-group-item-action:focus { - color: #1b1e21; - background-color: #b9bbbe; + +.d-inline-block { + display: inline-block !important; } -.list-group-item-dark.list-group-item-action.active { - color: #fff; - background-color: #1b1e21; - border-color: #1b1e21; + +.d-block { + display: block !important; } -.close { - float: right; - font-size: 1.5rem; - font-weight: 700; - line-height: 1; - color: #000; - text-shadow: 0 1px 0 #fff; - opacity: 0.5; +.d-grid { + display: grid !important; } -.close:hover { - color: #000; - text-decoration: none; + +.d-table { + display: table !important; } -.close:not(:disabled):not(.disabled):hover, .close:not(:disabled):not(.disabled):focus { - opacity: 0.75; + +.d-table-row { + display: table-row !important; } -button.close { - padding: 0; - background-color: transparent; - border: 0; +.d-table-cell { + display: table-cell !important; } -a.close.disabled { - pointer-events: none; +.d-flex { + display: flex !important; } -.toast { - flex-basis: 350px; - max-width: 350px; - font-size: 0.875rem; - background-color: rgba(255, 255, 255, 0.85); - background-clip: padding-box; - border: 1px solid rgba(0, 0, 0, 0.1); - box-shadow: 0 0.25rem 0.75rem rgba(0, 0, 0, 0.1); - opacity: 0; - border-radius: 0.25rem; +.d-inline-flex { + display: inline-flex !important; } -.toast:not(:last-child) { - margin-bottom: 0.75rem; + +.d-none { + display: none !important; } -.toast.showing { - opacity: 1; + +.shadow { + box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important; } -.toast.show { - display: block; - opacity: 1; + +.shadow-sm { + box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075) !important; } -.toast.hide { - display: none; + +.shadow-lg { + box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.175) !important; } -.toast-header { - display: flex; - align-items: center; - padding: 0.25rem 0.75rem; - color: #6c757d; - background-color: rgba(255, 255, 255, 0.85); - background-clip: padding-box; - border-bottom: 1px solid rgba(0, 0, 0, 0.05); - border-top-left-radius: calc(0.25rem - 1px); - border-top-right-radius: calc(0.25rem - 1px); +.shadow-none { + box-shadow: none !important; } -.toast-body { - padding: 0.75rem; +.position-static { + position: static !important; } -.modal-open { - overflow: hidden; +.position-relative { + position: relative !important; } -.modal-open .modal { - overflow-x: hidden; - overflow-y: auto; + +.position-absolute { + position: absolute !important; } -.modal { - position: fixed; - top: 0; - left: 0; - z-index: 1050; - display: none; - width: 100%; - height: 100%; - overflow: hidden; - outline: 0; +.position-fixed { + position: fixed !important; } -.modal-dialog { - position: relative; - width: auto; - margin: 0.5rem; - pointer-events: none; +.position-sticky { + position: -webkit-sticky !important; + position: sticky !important; } -.modal.fade .modal-dialog { - transition: transform 0.3s ease-out; - transform: translate(0, -50px); + +.top-0 { + top: 0 !important; } -@media (prefers-reduced-motion: reduce) { - .modal.fade .modal-dialog { - transition: none; - } + +.top-50 { + top: 50% !important; +} + +.top-100 { + top: 100% !important; +} + +.bottom-0 { + bottom: 0 !important; } -.modal.show .modal-dialog { - transform: none; + +.bottom-50 { + bottom: 50% !important; } -.modal.modal-static .modal-dialog { - transform: scale(1.02); + +.bottom-100 { + bottom: 100% !important; } -.modal-dialog-scrollable { - display: flex; - max-height: calc(100% - 1rem); +.left-0 { + left: 0 !important; } -.modal-dialog-scrollable .modal-content { - max-height: calc(100vh - 1rem); - overflow: hidden; + +.left-50 { + left: 50% !important; } -.modal-dialog-scrollable .modal-header, -.modal-dialog-scrollable .modal-footer { - flex-shrink: 0; + +.left-100 { + left: 100% !important; } -.modal-dialog-scrollable .modal-body { - overflow-y: auto; + +.right-0 { + right: 0 !important; } -.modal-dialog-centered { - display: flex; - align-items: center; - min-height: calc(100% - 1rem); +.right-50 { + right: 50% !important; } -.modal-dialog-centered::before { - display: block; - height: calc(100vh - 1rem); - height: -webkit-min-content; - height: -moz-min-content; - height: min-content; - content: ""; + +.right-100 { + right: 100% !important; } -.modal-dialog-centered.modal-dialog-scrollable { - flex-direction: column; - justify-content: center; - height: 100%; + +.translate-middle { + transform: translateX(-50%) translateY(-50%) !important; } -.modal-dialog-centered.modal-dialog-scrollable .modal-content { - max-height: none; + +.border { + border: 1px solid #dee2e6 !important; } -.modal-dialog-centered.modal-dialog-scrollable::before { - content: none; + +.border-0 { + border: 0 !important; } -.modal-content { - position: relative; - display: flex; - flex-direction: column; - width: 100%; - pointer-events: auto; - background-color: #fff; - background-clip: padding-box; - border: 1px solid rgba(0, 0, 0, 0.2); - border-radius: 0.3rem; - outline: 0; +.border-top { + border-top: 1px solid #dee2e6 !important; } -.modal-backdrop { - position: fixed; - top: 0; - left: 0; - z-index: 1040; - width: 100vw; - height: 100vh; - background-color: #000; +.border-top-0 { + border-top: 0 !important; } -.modal-backdrop.fade { - opacity: 0; + +.border-right { + border-right: 1px solid #dee2e6 !important; } -.modal-backdrop.show { - opacity: 0.5; + +.border-right-0 { + border-right: 0 !important; } -.modal-header { - display: flex; - align-items: flex-start; - justify-content: space-between; - padding: 1rem 1rem; - border-bottom: 1px solid #dee2e6; - border-top-left-radius: calc(0.3rem - 1px); - border-top-right-radius: calc(0.3rem - 1px); +.border-bottom { + border-bottom: 1px solid #dee2e6 !important; } -.modal-header .close { - padding: 1rem 1rem; - margin: -1rem -1rem -1rem auto; + +.border-bottom-0 { + border-bottom: 0 !important; } -.modal-title { - margin-bottom: 0; - line-height: 1.6; +.border-left { + border-left: 1px solid #dee2e6 !important; } -.modal-body { - position: relative; - flex: 1 1 auto; - padding: 1rem; +.border-left-0 { + border-left: 0 !important; } -.modal-footer { - display: flex; - flex-wrap: wrap; - align-items: center; - justify-content: flex-end; - padding: 0.75rem; - border-top: 1px solid #dee2e6; - border-bottom-right-radius: calc(0.3rem - 1px); - border-bottom-left-radius: calc(0.3rem - 1px); +.border-primary { + border-color: #0078d7 !important; } -.modal-footer > * { - margin: 0.25rem; + +.border-secondary { + border-color: #6c757d !important; } -.modal-scrollbar-measure { - position: absolute; - top: -9999px; - width: 50px; - height: 50px; - overflow: scroll; +.border-success { + border-color: #97c800 !important; } -@media (min-width: 576px) { - .modal-dialog { - max-width: 500px; - margin: 1.75rem auto; - } +.border-info { + border-color: #0098df !important; +} - .modal-dialog-scrollable { - max-height: calc(100% - 3.5rem); - } - .modal-dialog-scrollable .modal-content { - max-height: calc(100vh - 3.5rem); - } +.border-warning { + border-color: #ffc000 !important; +} - .modal-dialog-centered { - min-height: calc(100% - 3.5rem); - } - .modal-dialog-centered::before { - height: calc(100vh - 3.5rem); - height: -webkit-min-content; - height: -moz-min-content; - height: min-content; - } +.border-danger { + border-color: #e74018 !important; +} - .modal-sm { - max-width: 300px; - } +.border-light { + border-color: #f8f9fa !important; } -@media (min-width: 992px) { - .modal-lg, -.modal-xl { - max-width: 800px; - } + +.border-dark { + border-color: #212529 !important; } -@media (min-width: 1200px) { - .modal-xl { - max-width: 1140px; - } + +.border-white { + border-color: #fff !important; } -.tooltip { - position: absolute; - z-index: 1070; - display: block; - margin: 0; - 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-style: normal; - font-weight: 400; - line-height: 1.6; - text-align: left; - text-align: start; - text-decoration: none; - text-shadow: none; - text-transform: none; - letter-spacing: normal; - word-break: normal; - word-spacing: normal; - white-space: normal; - line-break: auto; - font-size: 0.875rem; - word-wrap: break-word; - opacity: 0; + +.border-0 { + border-width: 0 !important; } -.tooltip.show { - opacity: 0.9; + +.border-1 { + border-width: 1px !important; } -.tooltip .arrow { - position: absolute; - display: block; - width: 0.8rem; - height: 0.4rem; + +.border-2 { + border-width: 2px !important; } -.tooltip .arrow::before { - position: absolute; - content: ""; - border-color: transparent; - border-style: solid; + +.border-3 { + border-width: 3px !important; } -.bs-tooltip-top, .bs-tooltip-auto[x-placement^=top] { - padding: 0.4rem 0; +.border-4 { + border-width: 4px !important; } -.bs-tooltip-top .arrow, .bs-tooltip-auto[x-placement^=top] .arrow { - bottom: 0; + +.border-5 { + border-width: 5px !important; } -.bs-tooltip-top .arrow::before, .bs-tooltip-auto[x-placement^=top] .arrow::before { - top: 0; - border-width: 0.4rem 0.4rem 0; - border-top-color: #000; + +.w-25 { + width: 25% !important; } -.bs-tooltip-right, .bs-tooltip-auto[x-placement^=right] { - padding: 0 0.4rem; +.w-50 { + width: 50% !important; } -.bs-tooltip-right .arrow, .bs-tooltip-auto[x-placement^=right] .arrow { - left: 0; - width: 0.4rem; - height: 0.8rem; + +.w-75 { + width: 75% !important; } -.bs-tooltip-right .arrow::before, .bs-tooltip-auto[x-placement^=right] .arrow::before { - right: 0; - border-width: 0.4rem 0.4rem 0.4rem 0; - border-right-color: #000; + +.w-100 { + width: 100% !important; } -.bs-tooltip-bottom, .bs-tooltip-auto[x-placement^=bottom] { - padding: 0.4rem 0; +.w-auto { + width: auto !important; } -.bs-tooltip-bottom .arrow, .bs-tooltip-auto[x-placement^=bottom] .arrow { - top: 0; + +.mw-100 { + max-width: 100% !important; } -.bs-tooltip-bottom .arrow::before, .bs-tooltip-auto[x-placement^=bottom] .arrow::before { - bottom: 0; - border-width: 0 0.4rem 0.4rem; - border-bottom-color: #000; + +.vw-100 { + width: 100vw !important; } -.bs-tooltip-left, .bs-tooltip-auto[x-placement^=left] { - padding: 0 0.4rem; +.min-vw-100 { + min-width: 100vw !important; } -.bs-tooltip-left .arrow, .bs-tooltip-auto[x-placement^=left] .arrow { - right: 0; - width: 0.4rem; - height: 0.8rem; + +.h-25 { + height: 25% !important; } -.bs-tooltip-left .arrow::before, .bs-tooltip-auto[x-placement^=left] .arrow::before { - left: 0; - border-width: 0.4rem 0 0.4rem 0.4rem; - border-left-color: #000; + +.h-50 { + height: 50% !important; } -.tooltip-inner { - max-width: 200px; - padding: 0.25rem 0.5rem; - color: #fff; - text-align: center; - background-color: #000; - border-radius: 0.25rem; +.h-75 { + height: 75% !important; } -.popover { - position: absolute; - top: 0; - left: 0; - z-index: 1060; - display: block; - max-width: 276px; - 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-style: normal; - font-weight: 400; - line-height: 1.6; - text-align: left; - text-align: start; - text-decoration: none; - text-shadow: none; - text-transform: none; - letter-spacing: normal; - word-break: normal; - word-spacing: normal; - white-space: normal; - line-break: auto; - font-size: 0.875rem; - word-wrap: break-word; - background-color: #fff; - background-clip: padding-box; - border: 1px solid rgba(0, 0, 0, 0.2); - border-radius: 0.3rem; +.h-100 { + height: 100% !important; } -.popover .arrow { - position: absolute; - display: block; - width: 1rem; - height: 0.5rem; - margin: 0 0.3rem; + +.h-auto { + height: auto !important; } -.popover .arrow::before, .popover .arrow::after { - position: absolute; - display: block; - content: ""; - border-color: transparent; - border-style: solid; + +.mh-100 { + max-height: 100% !important; } -.bs-popover-top, .bs-popover-auto[x-placement^=top] { - margin-bottom: 0.5rem; +.vh-100 { + height: 100vh !important; } -.bs-popover-top > .arrow, .bs-popover-auto[x-placement^=top] > .arrow { - bottom: calc(-0.5rem - 1px); + +.min-vh-100 { + min-height: 100vh !important; } -.bs-popover-top > .arrow::before, .bs-popover-auto[x-placement^=top] > .arrow::before { - bottom: 0; - border-width: 0.5rem 0.5rem 0; - border-top-color: rgba(0, 0, 0, 0.25); + +.flex-fill { + flex: 1 1 auto !important; } -.bs-popover-top > .arrow::after, .bs-popover-auto[x-placement^=top] > .arrow::after { - bottom: 1px; - border-width: 0.5rem 0.5rem 0; - border-top-color: #fff; + +.flex-row { + flex-direction: row !important; } -.bs-popover-right, .bs-popover-auto[x-placement^=right] { - margin-left: 0.5rem; +.flex-column { + flex-direction: column !important; } -.bs-popover-right > .arrow, .bs-popover-auto[x-placement^=right] > .arrow { - left: calc(-0.5rem - 1px); - width: 0.5rem; - height: 1rem; - margin: 0.3rem 0; + +.flex-row-reverse { + flex-direction: row-reverse !important; } -.bs-popover-right > .arrow::before, .bs-popover-auto[x-placement^=right] > .arrow::before { - left: 0; - border-width: 0.5rem 0.5rem 0.5rem 0; - border-right-color: rgba(0, 0, 0, 0.25); + +.flex-column-reverse { + flex-direction: column-reverse !important; } -.bs-popover-right > .arrow::after, .bs-popover-auto[x-placement^=right] > .arrow::after { - left: 1px; - border-width: 0.5rem 0.5rem 0.5rem 0; - border-right-color: #fff; + +.flex-grow-0 { + flex-grow: 0 !important; } -.bs-popover-bottom, .bs-popover-auto[x-placement^=bottom] { - margin-top: 0.5rem; +.flex-grow-1 { + flex-grow: 1 !important; } -.bs-popover-bottom > .arrow, .bs-popover-auto[x-placement^=bottom] > .arrow { - top: calc(-0.5rem - 1px); + +.flex-shrink-0 { + flex-shrink: 0 !important; } -.bs-popover-bottom > .arrow::before, .bs-popover-auto[x-placement^=bottom] > .arrow::before { - top: 0; - border-width: 0 0.5rem 0.5rem 0.5rem; - border-bottom-color: rgba(0, 0, 0, 0.25); + +.flex-shrink-1 { + flex-shrink: 1 !important; } -.bs-popover-bottom > .arrow::after, .bs-popover-auto[x-placement^=bottom] > .arrow::after { - top: 1px; - border-width: 0 0.5rem 0.5rem 0.5rem; - border-bottom-color: #fff; + +.flex-wrap { + flex-wrap: wrap !important; } -.bs-popover-bottom .popover-header::before, .bs-popover-auto[x-placement^=bottom] .popover-header::before { - position: absolute; - top: 0; - left: 50%; - display: block; - width: 1rem; - margin-left: -0.5rem; - content: ""; - border-bottom: 1px solid #f7f7f7; + +.flex-nowrap { + flex-wrap: nowrap !important; } -.bs-popover-left, .bs-popover-auto[x-placement^=left] { - margin-right: 0.5rem; +.flex-wrap-reverse { + flex-wrap: wrap-reverse !important; } -.bs-popover-left > .arrow, .bs-popover-auto[x-placement^=left] > .arrow { - right: calc(-0.5rem - 1px); - width: 0.5rem; - height: 1rem; - margin: 0.3rem 0; + +.gap-0 { + gap: 0 !important; } -.bs-popover-left > .arrow::before, .bs-popover-auto[x-placement^=left] > .arrow::before { - right: 0; - border-width: 0.5rem 0 0.5rem 0.5rem; - border-left-color: rgba(0, 0, 0, 0.25); + +.gap-1 { + gap: 0.25rem !important; } -.bs-popover-left > .arrow::after, .bs-popover-auto[x-placement^=left] > .arrow::after { - right: 1px; - border-width: 0.5rem 0 0.5rem 0.5rem; - border-left-color: #fff; + +.gap-2 { + gap: 0.5rem !important; } -.popover-header { - padding: 0.5rem 0.75rem; - margin-bottom: 0; - font-size: 1rem; - background-color: #f7f7f7; - border-bottom: 1px solid #ebebeb; - border-top-left-radius: calc(0.3rem - 1px); - border-top-right-radius: calc(0.3rem - 1px); +.gap-3 { + gap: 1rem !important; } -.popover-header:empty { - display: none; + +.gap-4 { + gap: 1.5rem !important; } -.popover-body { - padding: 0.5rem 0.75rem; - color: #212529; +.gap-5 { + gap: 3rem !important; } -.carousel { - position: relative; +.justify-content-start { + justify-content: flex-start !important; } -.carousel.pointer-event { - touch-action: pan-y; +.justify-content-end { + justify-content: flex-end !important; } -.carousel-inner { - position: relative; - width: 100%; - overflow: hidden; +.justify-content-center { + justify-content: center !important; } -.carousel-inner::after { - display: block; - clear: both; - content: ""; + +.justify-content-between { + justify-content: space-between !important; } -.carousel-item { - position: relative; - display: none; - float: left; - width: 100%; - margin-right: -100%; - -webkit-backface-visibility: hidden; - backface-visibility: hidden; - transition: transform 0.6s ease-in-out; +.justify-content-around { + justify-content: space-around !important; } -@media (prefers-reduced-motion: reduce) { - .carousel-item { - transition: none; - } + +.justify-content-evenly { + justify-content: space-evenly !important; } -.carousel-item.active, -.carousel-item-next, -.carousel-item-prev { - display: block; +.align-items-start { + align-items: flex-start !important; } -.carousel-item-next:not(.carousel-item-left), -.active.carousel-item-right { - transform: translateX(100%); +.align-items-end { + align-items: flex-end !important; } -.carousel-item-prev:not(.carousel-item-right), -.active.carousel-item-left { - transform: translateX(-100%); +.align-items-center { + align-items: center !important; } -.carousel-fade .carousel-item { - opacity: 0; - transition-property: opacity; - transform: none; +.align-items-baseline { + align-items: baseline !important; } -.carousel-fade .carousel-item.active, -.carousel-fade .carousel-item-next.carousel-item-left, -.carousel-fade .carousel-item-prev.carousel-item-right { - z-index: 1; - opacity: 1; + +.align-items-stretch { + align-items: stretch !important; } -.carousel-fade .active.carousel-item-left, -.carousel-fade .active.carousel-item-right { - z-index: 0; - opacity: 0; - transition: opacity 0s 0.6s; + +.align-content-start { + align-content: flex-start !important; } -@media (prefers-reduced-motion: reduce) { - .carousel-fade .active.carousel-item-left, -.carousel-fade .active.carousel-item-right { - transition: none; - } + +.align-content-end { + align-content: flex-end !important; } -.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%; - color: #fff; - text-align: center; - opacity: 0.5; - transition: opacity 0.15s ease; +.align-content-center { + align-content: center !important; } -@media (prefers-reduced-motion: reduce) { - .carousel-control-prev, -.carousel-control-next { - transition: none; - } + +.align-content-between { + align-content: space-between !important; } -.carousel-control-prev:hover, .carousel-control-prev:focus, -.carousel-control-next:hover, -.carousel-control-next:focus { - color: #fff; - text-decoration: none; - outline: 0; - opacity: 0.9; + +.align-content-around { + align-content: space-around !important; } -.carousel-control-prev { - left: 0; +.align-content-stretch { + align-content: stretch !important; } -.carousel-control-next { - right: 0; +.align-self-auto { + align-self: auto !important; } -.carousel-control-prev-icon, -.carousel-control-next-icon { - display: inline-block; - width: 20px; - height: 20px; - background: no-repeat 50%/100% 100%; +.align-self-start { + align-self: flex-start !important; } -.carousel-control-prev-icon { - background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath d='M5.25 0l-4 4 4 4 1.5-1.5L4.25 4l2.5-2.5L5.25 0z'/%3e%3c/svg%3e"); +.align-self-end { + align-self: flex-end !important; } -.carousel-control-next-icon { - background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath d='M2.75 0l-1.5 1.5L3.75 4l-2.5 2.5L2.75 8l4-4-4-4z'/%3e%3c/svg%3e"); +.align-self-center { + align-self: center !important; } -.carousel-indicators { - position: absolute; - right: 0; - bottom: 0; - left: 0; - z-index: 15; - display: flex; - justify-content: center; - padding-left: 0; - margin-right: 15%; - margin-left: 15%; - list-style: none; +.align-self-baseline { + align-self: baseline !important; } -.carousel-indicators li { - box-sizing: content-box; - flex: 0 1 auto; - width: 30px; - height: 3px; - margin-right: 3px; - margin-left: 3px; - text-indent: -999px; - cursor: pointer; - background-color: #fff; - background-clip: padding-box; - border-top: 10px solid transparent; - border-bottom: 10px solid transparent; - opacity: 0.5; - transition: opacity 0.6s ease; + +.align-self-stretch { + align-self: stretch !important; } -@media (prefers-reduced-motion: reduce) { - .carousel-indicators li { - transition: none; - } + +.order-first { + order: -1 !important; } -.carousel-indicators .active { - opacity: 1; + +.order-0 { + order: 0 !important; } -.carousel-caption { - position: absolute; - right: 15%; - bottom: 20px; - left: 15%; - z-index: 10; - padding-top: 20px; - padding-bottom: 20px; - color: #fff; - text-align: center; +.order-1 { + order: 1 !important; } -@-webkit-keyframes spinner-border { - to { - transform: rotate(360deg); - } +.order-2 { + order: 2 !important; } -@keyframes spinner-border { - to { - transform: rotate(360deg); - } +.order-3 { + order: 3 !important; } -.spinner-border { - display: inline-block; - width: 2rem; - height: 2rem; - vertical-align: text-bottom; - border: 0.25em solid currentColor; - border-right-color: transparent; - border-radius: 50%; - -webkit-animation: spinner-border 0.75s linear infinite; - animation: spinner-border 0.75s linear infinite; + +.order-4 { + order: 4 !important; } -.spinner-border-sm { - width: 1rem; - height: 1rem; - border-width: 0.2em; +.order-5 { + order: 5 !important; } -@-webkit-keyframes spinner-grow { - 0% { - transform: scale(0); - } - 50% { - opacity: 1; - transform: none; - } +.order-last { + order: 6 !important; } -@keyframes spinner-grow { - 0% { - transform: scale(0); - } - 50% { - opacity: 1; - transform: none; - } +.m-0 { + margin: 0 !important; } -.spinner-grow { - display: inline-block; - width: 2rem; - height: 2rem; - vertical-align: text-bottom; - background-color: currentColor; - border-radius: 50%; - opacity: 0; - -webkit-animation: spinner-grow 0.75s linear infinite; - animation: spinner-grow 0.75s linear infinite; + +.m-1 { + margin: 0.25rem !important; } -.spinner-grow-sm { - width: 1rem; - height: 1rem; +.m-2 { + margin: 0.5rem !important; } -.align-baseline { - vertical-align: baseline !important; +.m-3 { + margin: 1rem !important; } -.align-top { - vertical-align: top !important; +.m-4 { + margin: 1.5rem !important; } -.align-middle { - vertical-align: middle !important; +.m-5 { + margin: 3rem !important; } -.align-bottom { - vertical-align: bottom !important; +.m-auto { + margin: auto !important; } -.align-text-bottom { - vertical-align: text-bottom !important; +.mx-0 { + margin-right: 0 !important; + margin-left: 0 !important; } -.align-text-top { - vertical-align: text-top !important; +.mx-1 { + margin-right: 0.25rem !important; + margin-left: 0.25rem !important; } -.bg-primary { - background-color: #0078d7 !important; +.mx-2 { + margin-right: 0.5rem !important; + margin-left: 0.5rem !important; } -a.bg-primary:hover, a.bg-primary:focus, -button.bg-primary:hover, -button.bg-primary:focus { - background-color: #005ca4 !important; +.mx-3 { + margin-right: 1rem !important; + margin-left: 1rem !important; } -.bg-secondary { - background-color: #6c757d !important; +.mx-4 { + margin-right: 1.5rem !important; + margin-left: 1.5rem !important; } -a.bg-secondary:hover, a.bg-secondary:focus, -button.bg-secondary:hover, -button.bg-secondary:focus { - background-color: #545b62 !important; +.mx-5 { + margin-right: 3rem !important; + margin-left: 3rem !important; } -.bg-success { - background-color: #97c800 !important; +.mx-auto { + margin-right: auto !important; + margin-left: auto !important; } -a.bg-success:hover, a.bg-success:focus, -button.bg-success:hover, -button.bg-success:focus { - background-color: #709500 !important; +.my-0 { + margin-top: 0 !important; + margin-bottom: 0 !important; } -.bg-info { - background-color: #0098df !important; +.my-1 { + margin-top: 0.25rem !important; + margin-bottom: 0.25rem !important; } -a.bg-info:hover, a.bg-info:focus, -button.bg-info:hover, -button.bg-info:focus { - background-color: #0075ac !important; +.my-2 { + margin-top: 0.5rem !important; + margin-bottom: 0.5rem !important; } -.bg-warning { - background-color: #ffc000 !important; +.my-3 { + margin-top: 1rem !important; + margin-bottom: 1rem !important; } -a.bg-warning:hover, a.bg-warning:focus, -button.bg-warning:hover, -button.bg-warning:focus { - background-color: #cc9a00 !important; +.my-4 { + margin-top: 1.5rem !important; + margin-bottom: 1.5rem !important; } -.bg-danger { - background-color: #e74018 !important; +.my-5 { + margin-top: 3rem !important; + margin-bottom: 3rem !important; } -a.bg-danger:hover, a.bg-danger:focus, -button.bg-danger:hover, -button.bg-danger:focus { - background-color: #b93313 !important; +.my-auto { + margin-top: auto !important; + margin-bottom: auto !important; } -.bg-light { - background-color: #f8f9fa !important; +.mt-0 { + margin-top: 0 !important; } -a.bg-light:hover, a.bg-light:focus, -button.bg-light:hover, -button.bg-light:focus { - background-color: #dae0e5 !important; +.mt-1 { + margin-top: 0.25rem !important; } -.bg-dark { - background-color: #343a40 !important; +.mt-2 { + margin-top: 0.5rem !important; } -a.bg-dark:hover, a.bg-dark:focus, -button.bg-dark:hover, -button.bg-dark:focus { - background-color: #1d2124 !important; +.mt-3 { + margin-top: 1rem !important; } -.bg-white { - background-color: #fff !important; +.mt-4 { + margin-top: 1.5rem !important; } -.bg-transparent { - background-color: transparent !important; +.mt-5 { + margin-top: 3rem !important; } -.border { - border: 1px solid #dee2e6 !important; +.mt-auto { + margin-top: auto !important; } -.border-top { - border-top: 1px solid #dee2e6 !important; +.mr-0 { + margin-right: 0 !important; } -.border-right { - border-right: 1px solid #dee2e6 !important; +.mr-1 { + margin-right: 0.25rem !important; } -.border-bottom { - border-bottom: 1px solid #dee2e6 !important; +.mr-2 { + margin-right: 0.5rem !important; } -.border-left { - border-left: 1px solid #dee2e6 !important; +.mr-3 { + margin-right: 1rem !important; } -.border-0 { - border: 0 !important; +.mr-4 { + margin-right: 1.5rem !important; } -.border-top-0 { - border-top: 0 !important; +.mr-5 { + margin-right: 3rem !important; } -.border-right-0 { - border-right: 0 !important; +.mr-auto { + margin-right: auto !important; } -.border-bottom-0 { - border-bottom: 0 !important; +.mb-0 { + margin-bottom: 0 !important; } -.border-left-0 { - border-left: 0 !important; +.mb-1 { + margin-bottom: 0.25rem !important; } -.border-primary { - border-color: #0078d7 !important; +.mb-2 { + margin-bottom: 0.5rem !important; } -.border-secondary { - border-color: #6c757d !important; +.mb-3 { + margin-bottom: 1rem !important; } -.border-success { - border-color: #97c800 !important; +.mb-4 { + margin-bottom: 1.5rem !important; } -.border-info { - border-color: #0098df !important; +.mb-5 { + margin-bottom: 3rem !important; } -.border-warning { - border-color: #ffc000 !important; +.mb-auto { + margin-bottom: auto !important; } -.border-danger { - border-color: #e74018 !important; +.ml-0 { + margin-left: 0 !important; } -.border-light { - border-color: #f8f9fa !important; +.ml-1 { + margin-left: 0.25rem !important; } -.border-dark { - border-color: #343a40 !important; +.ml-2 { + margin-left: 0.5rem !important; } -.border-white { - border-color: #fff !important; +.ml-3 { + margin-left: 1rem !important; } -.rounded-sm { - border-radius: 0.2rem !important; +.ml-4 { + margin-left: 1.5rem !important; } -.rounded { - border-radius: 0.25rem !important; +.ml-5 { + margin-left: 3rem !important; } -.rounded-top { - border-top-left-radius: 0.25rem !important; - border-top-right-radius: 0.25rem !important; +.ml-auto { + margin-left: auto !important; } -.rounded-right { - border-top-right-radius: 0.25rem !important; - border-bottom-right-radius: 0.25rem !important; +.p-0 { + padding: 0 !important; } -.rounded-bottom { - border-bottom-right-radius: 0.25rem !important; - border-bottom-left-radius: 0.25rem !important; +.p-1 { + padding: 0.25rem !important; } -.rounded-left { - border-top-left-radius: 0.25rem !important; - border-bottom-left-radius: 0.25rem !important; +.p-2 { + padding: 0.5rem !important; } -.rounded-lg { - border-radius: 0.3rem !important; +.p-3 { + padding: 1rem !important; } -.rounded-circle { - border-radius: 50% !important; +.p-4 { + padding: 1.5rem !important; } -.rounded-pill { - border-radius: 50rem !important; +.p-5 { + padding: 3rem !important; } -.rounded-0 { - border-radius: 0 !important; +.px-0 { + padding-right: 0 !important; + padding-left: 0 !important; } -.clearfix::after { - display: block; - clear: both; - content: ""; +.px-1 { + padding-right: 0.25rem !important; + padding-left: 0.25rem !important; } -.d-none { - display: none !important; +.px-2 { + padding-right: 0.5rem !important; + padding-left: 0.5rem !important; } -.d-inline { - display: inline !important; +.px-3 { + padding-right: 1rem !important; + padding-left: 1rem !important; } -.d-inline-block { - display: inline-block !important; +.px-4 { + padding-right: 1.5rem !important; + padding-left: 1.5rem !important; } -.d-block { - display: block !important; +.px-5 { + padding-right: 3rem !important; + padding-left: 3rem !important; } -.d-table { - display: table !important; +.py-0 { + padding-top: 0 !important; + padding-bottom: 0 !important; } -.d-table-row { - display: table-row !important; +.py-1 { + padding-top: 0.25rem !important; + padding-bottom: 0.25rem !important; } -.d-table-cell { - display: table-cell !important; +.py-2 { + padding-top: 0.5rem !important; + padding-bottom: 0.5rem !important; } -.d-flex { - display: flex !important; +.py-3 { + padding-top: 1rem !important; + padding-bottom: 1rem !important; } -.d-inline-flex { - display: inline-flex !important; +.py-4 { + padding-top: 1.5rem !important; + padding-bottom: 1.5rem !important; } -@media (min-width: 576px) { - .d-sm-none { - display: none !important; - } +.py-5 { + padding-top: 3rem !important; + padding-bottom: 3rem !important; +} - .d-sm-inline { - display: inline !important; - } +.pt-0 { + padding-top: 0 !important; +} - .d-sm-inline-block { - display: inline-block !important; - } +.pt-1 { + padding-top: 0.25rem !important; +} - .d-sm-block { - display: block !important; - } +.pt-2 { + padding-top: 0.5rem !important; +} - .d-sm-table { - display: table !important; - } +.pt-3 { + padding-top: 1rem !important; +} - .d-sm-table-row { - display: table-row !important; - } +.pt-4 { + padding-top: 1.5rem !important; +} - .d-sm-table-cell { - display: table-cell !important; - } +.pt-5 { + padding-top: 3rem !important; +} - .d-sm-flex { - display: flex !important; - } +.pr-0 { + padding-right: 0 !important; +} - .d-sm-inline-flex { - display: inline-flex !important; - } +.pr-1 { + padding-right: 0.25rem !important; } -@media (min-width: 768px) { - .d-md-none { - display: none !important; - } - .d-md-inline { - display: inline !important; - } +.pr-2 { + padding-right: 0.5rem !important; +} - .d-md-inline-block { - display: inline-block !important; - } +.pr-3 { + padding-right: 1rem !important; +} - .d-md-block { - display: block !important; - } +.pr-4 { + padding-right: 1.5rem !important; +} - .d-md-table { - display: table !important; - } +.pr-5 { + padding-right: 3rem !important; +} - .d-md-table-row { - display: table-row !important; - } +.pb-0 { + padding-bottom: 0 !important; +} - .d-md-table-cell { - display: table-cell !important; - } +.pb-1 { + padding-bottom: 0.25rem !important; +} - .d-md-flex { - display: flex !important; - } +.pb-2 { + padding-bottom: 0.5rem !important; +} - .d-md-inline-flex { - display: inline-flex !important; - } +.pb-3 { + padding-bottom: 1rem !important; } -@media (min-width: 992px) { - .d-lg-none { - display: none !important; - } - .d-lg-inline { - display: inline !important; - } +.pb-4 { + padding-bottom: 1.5rem !important; +} - .d-lg-inline-block { - display: inline-block !important; - } +.pb-5 { + padding-bottom: 3rem !important; +} - .d-lg-block { - display: block !important; - } +.pl-0 { + padding-left: 0 !important; +} - .d-lg-table { - display: table !important; - } +.pl-1 { + padding-left: 0.25rem !important; +} - .d-lg-table-row { - display: table-row !important; - } +.pl-2 { + padding-left: 0.5rem !important; +} - .d-lg-table-cell { - display: table-cell !important; - } +.pl-3 { + padding-left: 1rem !important; +} - .d-lg-flex { - display: flex !important; - } +.pl-4 { + padding-left: 1.5rem !important; +} - .d-lg-inline-flex { - display: inline-flex !important; - } +.pl-5 { + padding-left: 3rem !important; +} + +.fs-1 { + font-size: calc(1.375rem + 1.5vw) !important; } -@media (min-width: 1200px) { - .d-xl-none { - display: none !important; - } - .d-xl-inline { - display: inline !important; - } +.fs-2 { + font-size: calc(1.325rem + 0.9vw) !important; +} - .d-xl-inline-block { - display: inline-block !important; - } +.fs-3 { + font-size: calc(1.3rem + 0.6vw) !important; +} - .d-xl-block { - display: block !important; - } +.fs-4 { + font-size: calc(1.275rem + 0.3vw) !important; +} - .d-xl-table { - display: table !important; - } +.fs-5 { + font-size: 1.25rem !important; +} - .d-xl-table-row { - display: table-row !important; - } +.fs-6 { + font-size: 1rem !important; +} - .d-xl-table-cell { - display: table-cell !important; - } +.fst-italic { + font-style: italic !important; +} - .d-xl-flex { - display: flex !important; - } +.fst-normal { + font-style: normal !important; +} - .d-xl-inline-flex { - display: inline-flex !important; - } +.fw-light { + font-weight: 300 !important; } -@media print { - .d-print-none { - display: none !important; - } - .d-print-inline { - display: inline !important; - } +.fw-lighter { + font-weight: lighter !important; +} - .d-print-inline-block { - display: inline-block !important; - } +.fw-normal { + font-weight: 400 !important; +} - .d-print-block { - display: block !important; - } +.fw-bold { + font-weight: 700 !important; +} - .d-print-table { - display: table !important; - } +.fw-bolder { + font-weight: bolder !important; +} - .d-print-table-row { - display: table-row !important; - } +.text-lowercase { + text-transform: lowercase !important; +} - .d-print-table-cell { - display: table-cell !important; - } +.text-uppercase { + text-transform: uppercase !important; +} - .d-print-flex { - display: flex !important; - } +.text-capitalize { + text-transform: capitalize !important; +} - .d-print-inline-flex { - display: inline-flex !important; - } +.text-left { + text-align: left !important; } -.embed-responsive { - position: relative; - display: block; - width: 100%; - padding: 0; - overflow: hidden; + +.text-right { + text-align: right !important; } -.embed-responsive::before { - display: block; - content: ""; + +.text-center { + text-align: center !important; } -.embed-responsive .embed-responsive-item, -.embed-responsive iframe, -.embed-responsive embed, -.embed-responsive object, -.embed-responsive video { - position: absolute; - top: 0; - bottom: 0; - left: 0; - width: 100%; - height: 100%; - border: 0; + +.text-primary { + color: #0078d7 !important; } -.embed-responsive-21by9::before { - padding-top: 42.8571428571%; +.text-secondary { + color: #6c757d !important; } -.embed-responsive-16by9::before { - padding-top: 56.25%; +.text-success { + color: #97c800 !important; } -.embed-responsive-4by3::before { - padding-top: 75%; +.text-info { + color: #0098df !important; } -.embed-responsive-1by1::before { - padding-top: 100%; +.text-warning { + color: #ffc000 !important; } -.flex-row { - flex-direction: row !important; +.text-danger { + color: #e74018 !important; } -.flex-column { - flex-direction: column !important; +.text-light { + color: #f8f9fa !important; } -.flex-row-reverse { - flex-direction: row-reverse !important; +.text-dark { + color: #212529 !important; } -.flex-column-reverse { - flex-direction: column-reverse !important; +.text-white { + color: #fff !important; } -.flex-wrap { - flex-wrap: wrap !important; +.text-body { + color: #212529 !important; } -.flex-nowrap { - flex-wrap: nowrap !important; +.text-muted { + color: #6c757d !important; } -.flex-wrap-reverse { - flex-wrap: wrap-reverse !important; +.text-black-50 { + color: rgba(0, 0, 0, 0.5) !important; } -.flex-fill { - flex: 1 1 auto !important; +.text-white-50 { + color: rgba(255, 255, 255, 0.5) !important; } -.flex-grow-0 { - flex-grow: 0 !important; +.text-reset { + color: inherit !important; } -.flex-grow-1 { - flex-grow: 1 !important; +.lh-1 { + line-height: 1 !important; } -.flex-shrink-0 { - flex-shrink: 0 !important; +.lh-sm { + line-height: 1.25 !important; } -.flex-shrink-1 { - flex-shrink: 1 !important; +.lh-base { + line-height: 1.6 !important; } -.justify-content-start { - justify-content: flex-start !important; +.lh-lg { + line-height: 2 !important; } -.justify-content-end { - justify-content: flex-end !important; +.bg-primary { + background-color: #0078d7 !important; } -.justify-content-center { - justify-content: center !important; +.bg-secondary { + background-color: #6c757d !important; } -.justify-content-between { - justify-content: space-between !important; +.bg-success { + background-color: #97c800 !important; } -.justify-content-around { - justify-content: space-around !important; +.bg-info { + background-color: #0098df !important; } -.align-items-start { - align-items: flex-start !important; +.bg-warning { + background-color: #ffc000 !important; } -.align-items-end { - align-items: flex-end !important; +.bg-danger { + background-color: #e74018 !important; } -.align-items-center { - align-items: center !important; +.bg-light { + background-color: #f8f9fa !important; } -.align-items-baseline { - align-items: baseline !important; +.bg-dark { + background-color: #212529 !important; } -.align-items-stretch { - align-items: stretch !important; +.bg-body { + background-color: #fff !important; } -.align-content-start { - align-content: flex-start !important; +.bg-white { + background-color: #fff !important; } -.align-content-end { - align-content: flex-end !important; +.bg-transparent { + background-color: transparent !important; } -.align-content-center { - align-content: center !important; +.bg-gradient { + background-image: var(--bs-gradient) !important; } -.align-content-between { - align-content: space-between !important; +.text-wrap { + white-space: normal !important; } -.align-content-around { - align-content: space-around !important; +.text-nowrap { + white-space: nowrap !important; } -.align-content-stretch { - align-content: stretch !important; +.text-decoration-none { + text-decoration: none !important; } -.align-self-auto { - align-self: auto !important; +.text-decoration-underline { + text-decoration: underline !important; } -.align-self-start { - align-self: flex-start !important; +.text-decoration-line-through { + text-decoration: line-through !important; } -.align-self-end { - align-self: flex-end !important; +.text-break { + word-wrap: break-word !important; + word-break: break-word !important; } -.align-self-center { - align-self: center !important; +.font-monospace { + font-family: var(--bs-font-monospace) !important; } -.align-self-baseline { - align-self: baseline !important; +.user-select-all { + -webkit-user-select: all !important; + -moz-user-select: all !important; + -ms-user-select: all !important; + user-select: all !important; } -.align-self-stretch { - align-self: stretch !important; +.user-select-auto { + -webkit-user-select: auto !important; + -moz-user-select: auto !important; + -ms-user-select: auto !important; + user-select: auto !important; } -@media (min-width: 576px) { - .flex-sm-row { - flex-direction: row !important; - } +.user-select-none { + -webkit-user-select: none !important; + -moz-user-select: none !important; + -ms-user-select: none !important; + user-select: none !important; +} - .flex-sm-column { - flex-direction: column !important; - } +.pe-none { + pointer-events: none !important; +} - .flex-sm-row-reverse { - flex-direction: row-reverse !important; - } +.pe-auto { + pointer-events: auto !important; +} + +.rounded { + border-radius: 0.25rem !important; +} - .flex-sm-column-reverse { - flex-direction: column-reverse !important; - } +.rounded-0 { + border-radius: 0 !important; +} - .flex-sm-wrap { - flex-wrap: wrap !important; - } +.rounded-1 { + border-radius: 0.2rem !important; +} - .flex-sm-nowrap { - flex-wrap: nowrap !important; - } +.rounded-2 { + border-radius: 0.25rem !important; +} - .flex-sm-wrap-reverse { - flex-wrap: wrap-reverse !important; - } +.rounded-3 { + border-radius: 0.3rem !important; +} - .flex-sm-fill { - flex: 1 1 auto !important; - } +.rounded-circle { + border-radius: 50% !important; +} - .flex-sm-grow-0 { - flex-grow: 0 !important; - } +.rounded-pill { + border-radius: 50rem !important; +} - .flex-sm-grow-1 { - flex-grow: 1 !important; - } +.rounded-top { + border-top-left-radius: 0.25rem !important; + border-top-right-radius: 0.25rem !important; +} - .flex-sm-shrink-0 { - flex-shrink: 0 !important; - } +.rounded-right { + border-top-right-radius: 0.25rem !important; + border-bottom-right-radius: 0.25rem !important; +} - .flex-sm-shrink-1 { - flex-shrink: 1 !important; - } +.rounded-bottom { + border-bottom-right-radius: 0.25rem !important; + border-bottom-left-radius: 0.25rem !important; +} - .justify-content-sm-start { - justify-content: flex-start !important; - } +.rounded-left { + border-bottom-left-radius: 0.25rem !important; + border-top-left-radius: 0.25rem !important; +} - .justify-content-sm-end { - justify-content: flex-end !important; - } +.visible { + visibility: visible !important; +} - .justify-content-sm-center { - justify-content: center !important; - } +.invisible { + visibility: hidden !important; +} - .justify-content-sm-between { - justify-content: space-between !important; +@media (min-width: 576px) { + .float-sm-left { + float: left !important; } - .justify-content-sm-around { - justify-content: space-around !important; + .float-sm-right { + float: right !important; } - .align-items-sm-start { - align-items: flex-start !important; + .float-sm-none { + float: none !important; } - .align-items-sm-end { - align-items: flex-end !important; + .d-sm-inline { + display: inline !important; } - .align-items-sm-center { - align-items: center !important; + .d-sm-inline-block { + display: inline-block !important; } - .align-items-sm-baseline { - align-items: baseline !important; + .d-sm-block { + display: block !important; } - .align-items-sm-stretch { - align-items: stretch !important; + .d-sm-grid { + display: grid !important; } - .align-content-sm-start { - align-content: flex-start !important; + .d-sm-table { + display: table !important; } - .align-content-sm-end { - align-content: flex-end !important; + .d-sm-table-row { + display: table-row !important; } - .align-content-sm-center { - align-content: center !important; + .d-sm-table-cell { + display: table-cell !important; } - .align-content-sm-between { - align-content: space-between !important; + .d-sm-flex { + display: flex !important; } - .align-content-sm-around { - align-content: space-around !important; + .d-sm-inline-flex { + display: inline-flex !important; } - .align-content-sm-stretch { - align-content: stretch !important; + .d-sm-none { + display: none !important; } - .align-self-sm-auto { - align-self: auto !important; + .flex-sm-fill { + flex: 1 1 auto !important; } - .align-self-sm-start { - align-self: flex-start !important; + .flex-sm-row { + flex-direction: row !important; } - .align-self-sm-end { - align-self: flex-end !important; + .flex-sm-column { + flex-direction: column !important; } - .align-self-sm-center { - align-self: center !important; + .flex-sm-row-reverse { + flex-direction: row-reverse !important; } - .align-self-sm-baseline { - align-self: baseline !important; + .flex-sm-column-reverse { + flex-direction: column-reverse !important; } - .align-self-sm-stretch { - align-self: stretch !important; - } -} -@media (min-width: 768px) { - .flex-md-row { - flex-direction: row !important; + .flex-sm-grow-0 { + flex-grow: 0 !important; } - .flex-md-column { - flex-direction: column !important; + .flex-sm-grow-1 { + flex-grow: 1 !important; } - .flex-md-row-reverse { - flex-direction: row-reverse !important; + .flex-sm-shrink-0 { + flex-shrink: 0 !important; } - .flex-md-column-reverse { - flex-direction: column-reverse !important; + .flex-sm-shrink-1 { + flex-shrink: 1 !important; } - .flex-md-wrap { + .flex-sm-wrap { flex-wrap: wrap !important; } - .flex-md-nowrap { + .flex-sm-nowrap { flex-wrap: nowrap !important; } - .flex-md-wrap-reverse { + .flex-sm-wrap-reverse { flex-wrap: wrap-reverse !important; } - .flex-md-fill { - flex: 1 1 auto !important; + .gap-sm-0 { + gap: 0 !important; } - .flex-md-grow-0 { - flex-grow: 0 !important; + .gap-sm-1 { + gap: 0.25rem !important; } - .flex-md-grow-1 { - flex-grow: 1 !important; + .gap-sm-2 { + gap: 0.5rem !important; } - .flex-md-shrink-0 { - flex-shrink: 0 !important; + .gap-sm-3 { + gap: 1rem !important; } - .flex-md-shrink-1 { - flex-shrink: 1 !important; + .gap-sm-4 { + gap: 1.5rem !important; } - .justify-content-md-start { + .gap-sm-5 { + gap: 3rem !important; + } + + .justify-content-sm-start { justify-content: flex-start !important; } - .justify-content-md-end { + .justify-content-sm-end { justify-content: flex-end !important; } - .justify-content-md-center { + .justify-content-sm-center { justify-content: center !important; } - .justify-content-md-between { + .justify-content-sm-between { justify-content: space-between !important; } - .justify-content-md-around { + .justify-content-sm-around { justify-content: space-around !important; } - .align-items-md-start { + .justify-content-sm-evenly { + justify-content: space-evenly !important; + } + + .align-items-sm-start { align-items: flex-start !important; } - .align-items-md-end { + .align-items-sm-end { align-items: flex-end !important; } - .align-items-md-center { + .align-items-sm-center { align-items: center !important; } - .align-items-md-baseline { + .align-items-sm-baseline { align-items: baseline !important; } - .align-items-md-stretch { + .align-items-sm-stretch { align-items: stretch !important; } - .align-content-md-start { + .align-content-sm-start { align-content: flex-start !important; } - .align-content-md-end { + .align-content-sm-end { align-content: flex-end !important; } - .align-content-md-center { + .align-content-sm-center { align-content: center !important; } - .align-content-md-between { + .align-content-sm-between { align-content: space-between !important; } - .align-content-md-around { + .align-content-sm-around { align-content: space-around !important; } - .align-content-md-stretch { + .align-content-sm-stretch { align-content: stretch !important; } - .align-self-md-auto { + .align-self-sm-auto { align-self: auto !important; } - .align-self-md-start { + .align-self-sm-start { align-self: flex-start !important; } - .align-self-md-end { + .align-self-sm-end { align-self: flex-end !important; } - .align-self-md-center { + .align-self-sm-center { align-self: center !important; } - .align-self-md-baseline { - align-self: baseline !important; - } - - .align-self-md-stretch { - align-self: stretch !important; - } -} -@media (min-width: 992px) { - .flex-lg-row { - flex-direction: row !important; - } - - .flex-lg-column { - flex-direction: column !important; - } - - .flex-lg-row-reverse { - flex-direction: row-reverse !important; - } - - .flex-lg-column-reverse { - flex-direction: column-reverse !important; - } - - .flex-lg-wrap { - flex-wrap: wrap !important; + .align-self-sm-baseline { + align-self: baseline !important; } - .flex-lg-nowrap { - flex-wrap: nowrap !important; + .align-self-sm-stretch { + align-self: stretch !important; } - .flex-lg-wrap-reverse { - flex-wrap: wrap-reverse !important; + .order-sm-first { + order: -1 !important; } - .flex-lg-fill { - flex: 1 1 auto !important; + .order-sm-0 { + order: 0 !important; } - .flex-lg-grow-0 { - flex-grow: 0 !important; + .order-sm-1 { + order: 1 !important; } - .flex-lg-grow-1 { - flex-grow: 1 !important; + .order-sm-2 { + order: 2 !important; } - .flex-lg-shrink-0 { - flex-shrink: 0 !important; + .order-sm-3 { + order: 3 !important; } - .flex-lg-shrink-1 { - flex-shrink: 1 !important; + .order-sm-4 { + order: 4 !important; } - .justify-content-lg-start { - justify-content: flex-start !important; + .order-sm-5 { + order: 5 !important; } - .justify-content-lg-end { - justify-content: flex-end !important; + .order-sm-last { + order: 6 !important; } - .justify-content-lg-center { - justify-content: center !important; + .m-sm-0 { + margin: 0 !important; } - .justify-content-lg-between { - justify-content: space-between !important; + .m-sm-1 { + margin: 0.25rem !important; } - .justify-content-lg-around { - justify-content: space-around !important; + .m-sm-2 { + margin: 0.5rem !important; } - .align-items-lg-start { - align-items: flex-start !important; + .m-sm-3 { + margin: 1rem !important; } - .align-items-lg-end { - align-items: flex-end !important; + .m-sm-4 { + margin: 1.5rem !important; } - .align-items-lg-center { - align-items: center !important; + .m-sm-5 { + margin: 3rem !important; } - .align-items-lg-baseline { - align-items: baseline !important; + .m-sm-auto { + margin: auto !important; } - .align-items-lg-stretch { - align-items: stretch !important; + .mx-sm-0 { + margin-right: 0 !important; + margin-left: 0 !important; } - .align-content-lg-start { - align-content: flex-start !important; + .mx-sm-1 { + margin-right: 0.25rem !important; + margin-left: 0.25rem !important; } - .align-content-lg-end { - align-content: flex-end !important; + .mx-sm-2 { + margin-right: 0.5rem !important; + margin-left: 0.5rem !important; } - .align-content-lg-center { - align-content: center !important; + .mx-sm-3 { + margin-right: 1rem !important; + margin-left: 1rem !important; } - .align-content-lg-between { - align-content: space-between !important; + .mx-sm-4 { + margin-right: 1.5rem !important; + margin-left: 1.5rem !important; } - .align-content-lg-around { - align-content: space-around !important; + .mx-sm-5 { + margin-right: 3rem !important; + margin-left: 3rem !important; } - .align-content-lg-stretch { - align-content: stretch !important; + .mx-sm-auto { + margin-right: auto !important; + margin-left: auto !important; } - .align-self-lg-auto { - align-self: auto !important; + .my-sm-0 { + margin-top: 0 !important; + margin-bottom: 0 !important; } - .align-self-lg-start { - align-self: flex-start !important; + .my-sm-1 { + margin-top: 0.25rem !important; + margin-bottom: 0.25rem !important; } - .align-self-lg-end { - align-self: flex-end !important; + .my-sm-2 { + margin-top: 0.5rem !important; + margin-bottom: 0.5rem !important; } - .align-self-lg-center { - align-self: center !important; + .my-sm-3 { + margin-top: 1rem !important; + margin-bottom: 1rem !important; } - .align-self-lg-baseline { - align-self: baseline !important; + .my-sm-4 { + margin-top: 1.5rem !important; + margin-bottom: 1.5rem !important; } - .align-self-lg-stretch { - align-self: stretch !important; + .my-sm-5 { + margin-top: 3rem !important; + margin-bottom: 3rem !important; } -} -@media (min-width: 1200px) { - .flex-xl-row { - flex-direction: row !important; + + .my-sm-auto { + margin-top: auto !important; + margin-bottom: auto !important; } - .flex-xl-column { - flex-direction: column !important; + .mt-sm-0 { + margin-top: 0 !important; } - .flex-xl-row-reverse { - flex-direction: row-reverse !important; + .mt-sm-1 { + margin-top: 0.25rem !important; } - .flex-xl-column-reverse { - flex-direction: column-reverse !important; + .mt-sm-2 { + margin-top: 0.5rem !important; } - .flex-xl-wrap { - flex-wrap: wrap !important; + .mt-sm-3 { + margin-top: 1rem !important; } - .flex-xl-nowrap { - flex-wrap: nowrap !important; + .mt-sm-4 { + margin-top: 1.5rem !important; } - .flex-xl-wrap-reverse { - flex-wrap: wrap-reverse !important; + .mt-sm-5 { + margin-top: 3rem !important; } - .flex-xl-fill { - flex: 1 1 auto !important; + .mt-sm-auto { + margin-top: auto !important; } - .flex-xl-grow-0 { - flex-grow: 0 !important; + .mr-sm-0 { + margin-right: 0 !important; } - .flex-xl-grow-1 { - flex-grow: 1 !important; + .mr-sm-1 { + margin-right: 0.25rem !important; } - .flex-xl-shrink-0 { - flex-shrink: 0 !important; + .mr-sm-2 { + margin-right: 0.5rem !important; } - .flex-xl-shrink-1 { - flex-shrink: 1 !important; + .mr-sm-3 { + margin-right: 1rem !important; } - .justify-content-xl-start { - justify-content: flex-start !important; + .mr-sm-4 { + margin-right: 1.5rem !important; } - .justify-content-xl-end { - justify-content: flex-end !important; + .mr-sm-5 { + margin-right: 3rem !important; } - .justify-content-xl-center { - justify-content: center !important; + .mr-sm-auto { + margin-right: auto !important; } - .justify-content-xl-between { - justify-content: space-between !important; + .mb-sm-0 { + margin-bottom: 0 !important; } - .justify-content-xl-around { - justify-content: space-around !important; + .mb-sm-1 { + margin-bottom: 0.25rem !important; } - .align-items-xl-start { - align-items: flex-start !important; + .mb-sm-2 { + margin-bottom: 0.5rem !important; } - .align-items-xl-end { - align-items: flex-end !important; + .mb-sm-3 { + margin-bottom: 1rem !important; } - .align-items-xl-center { - align-items: center !important; + .mb-sm-4 { + margin-bottom: 1.5rem !important; } - .align-items-xl-baseline { - align-items: baseline !important; + .mb-sm-5 { + margin-bottom: 3rem !important; } - .align-items-xl-stretch { - align-items: stretch !important; + .mb-sm-auto { + margin-bottom: auto !important; } - .align-content-xl-start { - align-content: flex-start !important; + .ml-sm-0 { + margin-left: 0 !important; } - .align-content-xl-end { - align-content: flex-end !important; + .ml-sm-1 { + margin-left: 0.25rem !important; } - .align-content-xl-center { - align-content: center !important; + .ml-sm-2 { + margin-left: 0.5rem !important; } - .align-content-xl-between { - align-content: space-between !important; + .ml-sm-3 { + margin-left: 1rem !important; } - .align-content-xl-around { - align-content: space-around !important; + .ml-sm-4 { + margin-left: 1.5rem !important; } - .align-content-xl-stretch { - align-content: stretch !important; + .ml-sm-5 { + margin-left: 3rem !important; } - .align-self-xl-auto { - align-self: auto !important; + .ml-sm-auto { + margin-left: auto !important; } - .align-self-xl-start { - align-self: flex-start !important; + .p-sm-0 { + padding: 0 !important; } - .align-self-xl-end { - align-self: flex-end !important; + .p-sm-1 { + padding: 0.25rem !important; } - .align-self-xl-center { - align-self: center !important; + .p-sm-2 { + padding: 0.5rem !important; } - .align-self-xl-baseline { - align-self: baseline !important; + .p-sm-3 { + padding: 1rem !important; } - .align-self-xl-stretch { - align-self: stretch !important; + .p-sm-4 { + padding: 1.5rem !important; } -} -.float-left { - float: left !important; -} -.float-right { - float: right !important; -} + .p-sm-5 { + padding: 3rem !important; + } -.float-none { - float: none !important; -} + .px-sm-0 { + padding-right: 0 !important; + padding-left: 0 !important; + } -@media (min-width: 576px) { - .float-sm-left { - float: left !important; + .px-sm-1 { + padding-right: 0.25rem !important; + padding-left: 0.25rem !important; } - .float-sm-right { - float: right !important; + .px-sm-2 { + padding-right: 0.5rem !important; + padding-left: 0.5rem !important; } - .float-sm-none { - float: none !important; + .px-sm-3 { + padding-right: 1rem !important; + padding-left: 1rem !important; } -} -@media (min-width: 768px) { - .float-md-left { - float: left !important; + + .px-sm-4 { + padding-right: 1.5rem !important; + padding-left: 1.5rem !important; } - .float-md-right { - float: right !important; + .px-sm-5 { + padding-right: 3rem !important; + padding-left: 3rem !important; } - .float-md-none { - float: none !important; + .py-sm-0 { + padding-top: 0 !important; + padding-bottom: 0 !important; } -} -@media (min-width: 992px) { - .float-lg-left { - float: left !important; + + .py-sm-1 { + padding-top: 0.25rem !important; + padding-bottom: 0.25rem !important; } - .float-lg-right { - float: right !important; + .py-sm-2 { + padding-top: 0.5rem !important; + padding-bottom: 0.5rem !important; } - .float-lg-none { - float: none !important; + .py-sm-3 { + padding-top: 1rem !important; + padding-bottom: 1rem !important; } -} -@media (min-width: 1200px) { - .float-xl-left { - float: left !important; + + .py-sm-4 { + padding-top: 1.5rem !important; + padding-bottom: 1.5rem !important; } - .float-xl-right { - float: right !important; + .py-sm-5 { + padding-top: 3rem !important; + padding-bottom: 3rem !important; } - .float-xl-none { - float: none !important; + .pt-sm-0 { + padding-top: 0 !important; } -} -.user-select-all { - -webkit-user-select: all !important; - -moz-user-select: all !important; - -ms-user-select: all !important; - user-select: all !important; -} -.user-select-auto { - -webkit-user-select: auto !important; - -moz-user-select: auto !important; - -ms-user-select: auto !important; - user-select: auto !important; -} + .pt-sm-1 { + padding-top: 0.25rem !important; + } -.user-select-none { - -webkit-user-select: none !important; - -moz-user-select: none !important; - -ms-user-select: none !important; - user-select: none !important; -} + .pt-sm-2 { + padding-top: 0.5rem !important; + } -.overflow-auto { - overflow: auto !important; -} + .pt-sm-3 { + padding-top: 1rem !important; + } -.overflow-hidden { - overflow: hidden !important; -} + .pt-sm-4 { + padding-top: 1.5rem !important; + } -.position-static { - position: static !important; -} + .pt-sm-5 { + padding-top: 3rem !important; + } -.position-relative { - position: relative !important; -} + .pr-sm-0 { + padding-right: 0 !important; + } -.position-absolute { - position: absolute !important; -} + .pr-sm-1 { + padding-right: 0.25rem !important; + } -.position-fixed { - position: fixed !important; -} + .pr-sm-2 { + padding-right: 0.5rem !important; + } -.position-sticky { - position: -webkit-sticky !important; - position: sticky !important; -} + .pr-sm-3 { + padding-right: 1rem !important; + } -.fixed-top { - position: fixed; - top: 0; - right: 0; - left: 0; - z-index: 1030; -} + .pr-sm-4 { + padding-right: 1.5rem !important; + } -.fixed-bottom { - position: fixed; - right: 0; - bottom: 0; - left: 0; - z-index: 1030; -} + .pr-sm-5 { + padding-right: 3rem !important; + } -@supports ((position: -webkit-sticky) or (position: sticky)) { - .sticky-top { - position: -webkit-sticky; - position: sticky; - top: 0; - z-index: 1020; + .pb-sm-0 { + padding-bottom: 0 !important; } -} -.sr-only { - position: absolute; - width: 1px; - height: 1px; - padding: 0; - margin: -1px; - overflow: hidden; - clip: rect(0, 0, 0, 0); - white-space: nowrap; - border: 0; -} + .pb-sm-1 { + padding-bottom: 0.25rem !important; + } -.sr-only-focusable:active, .sr-only-focusable:focus { - position: static; - width: auto; - height: auto; - overflow: visible; - clip: auto; - white-space: normal; -} + .pb-sm-2 { + padding-bottom: 0.5rem !important; + } -.shadow-sm { - box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075) !important; -} + .pb-sm-3 { + padding-bottom: 1rem !important; + } -.shadow { - box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important; -} + .pb-sm-4 { + padding-bottom: 1.5rem !important; + } -.shadow-lg { - box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.175) !important; -} + .pb-sm-5 { + padding-bottom: 3rem !important; + } -.shadow-none { - box-shadow: none !important; -} + .pl-sm-0 { + padding-left: 0 !important; + } -.w-25 { - width: 25% !important; -} + .pl-sm-1 { + padding-left: 0.25rem !important; + } -.w-50 { - width: 50% !important; -} + .pl-sm-2 { + padding-left: 0.5rem !important; + } -.w-75 { - width: 75% !important; -} + .pl-sm-3 { + padding-left: 1rem !important; + } -.w-100 { - width: 100% !important; -} + .pl-sm-4 { + padding-left: 1.5rem !important; + } -.w-auto { - width: auto !important; -} + .pl-sm-5 { + padding-left: 3rem !important; + } -.h-25 { - height: 25% !important; -} + .text-sm-left { + text-align: left !important; + } -.h-50 { - height: 50% !important; -} + .text-sm-right { + text-align: right !important; + } -.h-75 { - height: 75% !important; + .text-sm-center { + text-align: center !important; + } } +@media (min-width: 768px) { + .float-md-left { + float: left !important; + } -.h-100 { - height: 100% !important; -} + .float-md-right { + float: right !important; + } -.h-auto { - height: auto !important; -} + .float-md-none { + float: none !important; + } -.mw-100 { - max-width: 100% !important; -} + .d-md-inline { + display: inline !important; + } -.mh-100 { - max-height: 100% !important; -} + .d-md-inline-block { + display: inline-block !important; + } -.min-vw-100 { - min-width: 100vw !important; -} + .d-md-block { + display: block !important; + } -.min-vh-100 { - min-height: 100vh !important; -} + .d-md-grid { + display: grid !important; + } -.vw-100 { - width: 100vw !important; -} + .d-md-table { + display: table !important; + } -.vh-100 { - height: 100vh !important; -} + .d-md-table-row { + display: table-row !important; + } -.m-0 { - margin: 0 !important; -} + .d-md-table-cell { + display: table-cell !important; + } -.mt-0, -.my-0 { - margin-top: 0 !important; -} + .d-md-flex { + display: flex !important; + } -.mr-0, -.mx-0 { - margin-right: 0 !important; -} + .d-md-inline-flex { + display: inline-flex !important; + } -.mb-0, -.my-0 { - margin-bottom: 0 !important; -} + .d-md-none { + display: none !important; + } -.ml-0, -.mx-0 { - margin-left: 0 !important; -} + .flex-md-fill { + flex: 1 1 auto !important; + } -.m-1 { - margin: 0.25rem !important; -} + .flex-md-row { + flex-direction: row !important; + } -.mt-1, -.my-1 { - margin-top: 0.25rem !important; -} + .flex-md-column { + flex-direction: column !important; + } -.mr-1, -.mx-1 { - margin-right: 0.25rem !important; -} + .flex-md-row-reverse { + flex-direction: row-reverse !important; + } -.mb-1, -.my-1 { - margin-bottom: 0.25rem !important; -} + .flex-md-column-reverse { + flex-direction: column-reverse !important; + } -.ml-1, -.mx-1 { - margin-left: 0.25rem !important; -} + .flex-md-grow-0 { + flex-grow: 0 !important; + } -.m-2 { - margin: 0.5rem !important; -} + .flex-md-grow-1 { + flex-grow: 1 !important; + } -.mt-2, -.my-2 { - margin-top: 0.5rem !important; -} + .flex-md-shrink-0 { + flex-shrink: 0 !important; + } -.mr-2, -.mx-2 { - margin-right: 0.5rem !important; -} + .flex-md-shrink-1 { + flex-shrink: 1 !important; + } -.mb-2, -.my-2 { - margin-bottom: 0.5rem !important; -} + .flex-md-wrap { + flex-wrap: wrap !important; + } -.ml-2, -.mx-2 { - margin-left: 0.5rem !important; -} + .flex-md-nowrap { + flex-wrap: nowrap !important; + } -.m-3 { - margin: 1rem !important; -} + .flex-md-wrap-reverse { + flex-wrap: wrap-reverse !important; + } -.mt-3, -.my-3 { - margin-top: 1rem !important; -} + .gap-md-0 { + gap: 0 !important; + } -.mr-3, -.mx-3 { - margin-right: 1rem !important; -} + .gap-md-1 { + gap: 0.25rem !important; + } -.mb-3, -.my-3 { - margin-bottom: 1rem !important; -} + .gap-md-2 { + gap: 0.5rem !important; + } -.ml-3, -.mx-3 { - margin-left: 1rem !important; -} + .gap-md-3 { + gap: 1rem !important; + } -.m-4 { - margin: 1.5rem !important; -} + .gap-md-4 { + gap: 1.5rem !important; + } -.mt-4, -.my-4 { - margin-top: 1.5rem !important; -} + .gap-md-5 { + gap: 3rem !important; + } -.mr-4, -.mx-4 { - margin-right: 1.5rem !important; -} + .justify-content-md-start { + justify-content: flex-start !important; + } -.mb-4, -.my-4 { - margin-bottom: 1.5rem !important; -} + .justify-content-md-end { + justify-content: flex-end !important; + } -.ml-4, -.mx-4 { - margin-left: 1.5rem !important; -} + .justify-content-md-center { + justify-content: center !important; + } -.m-5 { - margin: 3rem !important; -} + .justify-content-md-between { + justify-content: space-between !important; + } -.mt-5, -.my-5 { - margin-top: 3rem !important; -} + .justify-content-md-around { + justify-content: space-around !important; + } -.mr-5, -.mx-5 { - margin-right: 3rem !important; -} + .justify-content-md-evenly { + justify-content: space-evenly !important; + } -.mb-5, -.my-5 { - margin-bottom: 3rem !important; -} + .align-items-md-start { + align-items: flex-start !important; + } -.ml-5, -.mx-5 { - margin-left: 3rem !important; -} + .align-items-md-end { + align-items: flex-end !important; + } -.p-0 { - padding: 0 !important; -} + .align-items-md-center { + align-items: center !important; + } -.pt-0, -.py-0 { - padding-top: 0 !important; -} + .align-items-md-baseline { + align-items: baseline !important; + } -.pr-0, -.px-0 { - padding-right: 0 !important; -} + .align-items-md-stretch { + align-items: stretch !important; + } -.pb-0, -.py-0 { - padding-bottom: 0 !important; -} + .align-content-md-start { + align-content: flex-start !important; + } -.pl-0, -.px-0 { - padding-left: 0 !important; -} + .align-content-md-end { + align-content: flex-end !important; + } -.p-1 { - padding: 0.25rem !important; -} + .align-content-md-center { + align-content: center !important; + } -.pt-1, -.py-1 { - padding-top: 0.25rem !important; -} + .align-content-md-between { + align-content: space-between !important; + } -.pr-1, -.px-1 { - padding-right: 0.25rem !important; -} + .align-content-md-around { + align-content: space-around !important; + } -.pb-1, -.py-1 { - padding-bottom: 0.25rem !important; -} + .align-content-md-stretch { + align-content: stretch !important; + } -.pl-1, -.px-1 { - padding-left: 0.25rem !important; -} + .align-self-md-auto { + align-self: auto !important; + } -.p-2 { - padding: 0.5rem !important; -} + .align-self-md-start { + align-self: flex-start !important; + } -.pt-2, -.py-2 { - padding-top: 0.5rem !important; -} + .align-self-md-end { + align-self: flex-end !important; + } -.pr-2, -.px-2 { - padding-right: 0.5rem !important; -} + .align-self-md-center { + align-self: center !important; + } -.pb-2, -.py-2 { - padding-bottom: 0.5rem !important; -} + .align-self-md-baseline { + align-self: baseline !important; + } -.pl-2, -.px-2 { - padding-left: 0.5rem !important; -} + .align-self-md-stretch { + align-self: stretch !important; + } -.p-3 { - padding: 1rem !important; -} + .order-md-first { + order: -1 !important; + } + + .order-md-0 { + order: 0 !important; + } -.pt-3, -.py-3 { - padding-top: 1rem !important; -} + .order-md-1 { + order: 1 !important; + } -.pr-3, -.px-3 { - padding-right: 1rem !important; -} + .order-md-2 { + order: 2 !important; + } -.pb-3, -.py-3 { - padding-bottom: 1rem !important; -} + .order-md-3 { + order: 3 !important; + } -.pl-3, -.px-3 { - padding-left: 1rem !important; -} + .order-md-4 { + order: 4 !important; + } -.p-4 { - padding: 1.5rem !important; -} + .order-md-5 { + order: 5 !important; + } -.pt-4, -.py-4 { - padding-top: 1.5rem !important; -} + .order-md-last { + order: 6 !important; + } -.pr-4, -.px-4 { - padding-right: 1.5rem !important; -} + .m-md-0 { + margin: 0 !important; + } -.pb-4, -.py-4 { - padding-bottom: 1.5rem !important; -} + .m-md-1 { + margin: 0.25rem !important; + } -.pl-4, -.px-4 { - padding-left: 1.5rem !important; -} + .m-md-2 { + margin: 0.5rem !important; + } -.p-5 { - padding: 3rem !important; -} + .m-md-3 { + margin: 1rem !important; + } -.pt-5, -.py-5 { - padding-top: 3rem !important; -} + .m-md-4 { + margin: 1.5rem !important; + } -.pr-5, -.px-5 { - padding-right: 3rem !important; -} + .m-md-5 { + margin: 3rem !important; + } -.pb-5, -.py-5 { - padding-bottom: 3rem !important; -} + .m-md-auto { + margin: auto !important; + } -.pl-5, -.px-5 { - padding-left: 3rem !important; -} + .mx-md-0 { + margin-right: 0 !important; + margin-left: 0 !important; + } -.m-n1 { - margin: -0.25rem !important; -} + .mx-md-1 { + margin-right: 0.25rem !important; + margin-left: 0.25rem !important; + } -.mt-n1, -.my-n1 { - margin-top: -0.25rem !important; -} + .mx-md-2 { + margin-right: 0.5rem !important; + margin-left: 0.5rem !important; + } -.mr-n1, -.mx-n1 { - margin-right: -0.25rem !important; -} + .mx-md-3 { + margin-right: 1rem !important; + margin-left: 1rem !important; + } -.mb-n1, -.my-n1 { - margin-bottom: -0.25rem !important; -} + .mx-md-4 { + margin-right: 1.5rem !important; + margin-left: 1.5rem !important; + } -.ml-n1, -.mx-n1 { - margin-left: -0.25rem !important; -} + .mx-md-5 { + margin-right: 3rem !important; + margin-left: 3rem !important; + } -.m-n2 { - margin: -0.5rem !important; -} + .mx-md-auto { + margin-right: auto !important; + margin-left: auto !important; + } -.mt-n2, -.my-n2 { - margin-top: -0.5rem !important; -} + .my-md-0 { + margin-top: 0 !important; + margin-bottom: 0 !important; + } -.mr-n2, -.mx-n2 { - margin-right: -0.5rem !important; -} + .my-md-1 { + margin-top: 0.25rem !important; + margin-bottom: 0.25rem !important; + } -.mb-n2, -.my-n2 { - margin-bottom: -0.5rem !important; -} + .my-md-2 { + margin-top: 0.5rem !important; + margin-bottom: 0.5rem !important; + } -.ml-n2, -.mx-n2 { - margin-left: -0.5rem !important; -} + .my-md-3 { + margin-top: 1rem !important; + margin-bottom: 1rem !important; + } -.m-n3 { - margin: -1rem !important; -} + .my-md-4 { + margin-top: 1.5rem !important; + margin-bottom: 1.5rem !important; + } -.mt-n3, -.my-n3 { - margin-top: -1rem !important; -} + .my-md-5 { + margin-top: 3rem !important; + margin-bottom: 3rem !important; + } -.mr-n3, -.mx-n3 { - margin-right: -1rem !important; -} + .my-md-auto { + margin-top: auto !important; + margin-bottom: auto !important; + } -.mb-n3, -.my-n3 { - margin-bottom: -1rem !important; -} + .mt-md-0 { + margin-top: 0 !important; + } -.ml-n3, -.mx-n3 { - margin-left: -1rem !important; -} + .mt-md-1 { + margin-top: 0.25rem !important; + } -.m-n4 { - margin: -1.5rem !important; -} + .mt-md-2 { + margin-top: 0.5rem !important; + } -.mt-n4, -.my-n4 { - margin-top: -1.5rem !important; -} + .mt-md-3 { + margin-top: 1rem !important; + } -.mr-n4, -.mx-n4 { - margin-right: -1.5rem !important; -} + .mt-md-4 { + margin-top: 1.5rem !important; + } -.mb-n4, -.my-n4 { - margin-bottom: -1.5rem !important; -} + .mt-md-5 { + margin-top: 3rem !important; + } -.ml-n4, -.mx-n4 { - margin-left: -1.5rem !important; -} + .mt-md-auto { + margin-top: auto !important; + } -.m-n5 { - margin: -3rem !important; -} + .mr-md-0 { + margin-right: 0 !important; + } -.mt-n5, -.my-n5 { - margin-top: -3rem !important; -} + .mr-md-1 { + margin-right: 0.25rem !important; + } -.mr-n5, -.mx-n5 { - margin-right: -3rem !important; -} + .mr-md-2 { + margin-right: 0.5rem !important; + } -.mb-n5, -.my-n5 { - margin-bottom: -3rem !important; -} + .mr-md-3 { + margin-right: 1rem !important; + } -.ml-n5, -.mx-n5 { - margin-left: -3rem !important; -} + .mr-md-4 { + margin-right: 1.5rem !important; + } -.m-auto { - margin: auto !important; -} + .mr-md-5 { + margin-right: 3rem !important; + } -.mt-auto, -.my-auto { - margin-top: auto !important; -} + .mr-md-auto { + margin-right: auto !important; + } -.mr-auto, -.mx-auto { - margin-right: auto !important; -} + .mb-md-0 { + margin-bottom: 0 !important; + } -.mb-auto, -.my-auto { - margin-bottom: auto !important; -} + .mb-md-1 { + margin-bottom: 0.25rem !important; + } -.ml-auto, -.mx-auto { - margin-left: auto !important; -} + .mb-md-2 { + margin-bottom: 0.5rem !important; + } -@media (min-width: 576px) { - .m-sm-0 { - margin: 0 !important; + .mb-md-3 { + margin-bottom: 1rem !important; } - .mt-sm-0, -.my-sm-0 { - margin-top: 0 !important; + .mb-md-4 { + margin-bottom: 1.5rem !important; } - .mr-sm-0, -.mx-sm-0 { - margin-right: 0 !important; + .mb-md-5 { + margin-bottom: 3rem !important; } - .mb-sm-0, -.my-sm-0 { - margin-bottom: 0 !important; + .mb-md-auto { + margin-bottom: auto !important; } - .ml-sm-0, -.mx-sm-0 { + .ml-md-0 { margin-left: 0 !important; } - .m-sm-1 { - margin: 0.25rem !important; + .ml-md-1 { + margin-left: 0.25rem !important; } - .mt-sm-1, -.my-sm-1 { - margin-top: 0.25rem !important; + .ml-md-2 { + margin-left: 0.5rem !important; } - .mr-sm-1, -.mx-sm-1 { - margin-right: 0.25rem !important; + .ml-md-3 { + margin-left: 1rem !important; } - .mb-sm-1, -.my-sm-1 { - margin-bottom: 0.25rem !important; + .ml-md-4 { + margin-left: 1.5rem !important; } - .ml-sm-1, -.mx-sm-1 { - margin-left: 0.25rem !important; + .ml-md-5 { + margin-left: 3rem !important; } - .m-sm-2 { - margin: 0.5rem !important; + .ml-md-auto { + margin-left: auto !important; } - .mt-sm-2, -.my-sm-2 { - margin-top: 0.5rem !important; + .p-md-0 { + padding: 0 !important; } - .mr-sm-2, -.mx-sm-2 { - margin-right: 0.5rem !important; + .p-md-1 { + padding: 0.25rem !important; } - .mb-sm-2, -.my-sm-2 { - margin-bottom: 0.5rem !important; + .p-md-2 { + padding: 0.5rem !important; } - .ml-sm-2, -.mx-sm-2 { - margin-left: 0.5rem !important; + .p-md-3 { + padding: 1rem !important; } - .m-sm-3 { - margin: 1rem !important; + .p-md-4 { + padding: 1.5rem !important; } - .mt-sm-3, -.my-sm-3 { - margin-top: 1rem !important; + .p-md-5 { + padding: 3rem !important; } - .mr-sm-3, -.mx-sm-3 { - margin-right: 1rem !important; + .px-md-0 { + padding-right: 0 !important; + padding-left: 0 !important; } - .mb-sm-3, -.my-sm-3 { - margin-bottom: 1rem !important; + .px-md-1 { + padding-right: 0.25rem !important; + padding-left: 0.25rem !important; } - .ml-sm-3, -.mx-sm-3 { - margin-left: 1rem !important; + .px-md-2 { + padding-right: 0.5rem !important; + padding-left: 0.5rem !important; } - .m-sm-4 { - margin: 1.5rem !important; + .px-md-3 { + padding-right: 1rem !important; + padding-left: 1rem !important; } - .mt-sm-4, -.my-sm-4 { - margin-top: 1.5rem !important; + .px-md-4 { + padding-right: 1.5rem !important; + padding-left: 1.5rem !important; + } + + .px-md-5 { + padding-right: 3rem !important; + padding-left: 3rem !important; } - .mr-sm-4, -.mx-sm-4 { - margin-right: 1.5rem !important; + .py-md-0 { + padding-top: 0 !important; + padding-bottom: 0 !important; } - .mb-sm-4, -.my-sm-4 { - margin-bottom: 1.5rem !important; + .py-md-1 { + padding-top: 0.25rem !important; + padding-bottom: 0.25rem !important; } - .ml-sm-4, -.mx-sm-4 { - margin-left: 1.5rem !important; + .py-md-2 { + padding-top: 0.5rem !important; + padding-bottom: 0.5rem !important; } - .m-sm-5 { - margin: 3rem !important; + .py-md-3 { + padding-top: 1rem !important; + padding-bottom: 1rem !important; } - .mt-sm-5, -.my-sm-5 { - margin-top: 3rem !important; + .py-md-4 { + padding-top: 1.5rem !important; + padding-bottom: 1.5rem !important; } - .mr-sm-5, -.mx-sm-5 { - margin-right: 3rem !important; + .py-md-5 { + padding-top: 3rem !important; + padding-bottom: 3rem !important; } - .mb-sm-5, -.my-sm-5 { - margin-bottom: 3rem !important; + .pt-md-0 { + padding-top: 0 !important; } - .ml-sm-5, -.mx-sm-5 { - margin-left: 3rem !important; + .pt-md-1 { + padding-top: 0.25rem !important; } - .p-sm-0 { - padding: 0 !important; + .pt-md-2 { + padding-top: 0.5rem !important; } - .pt-sm-0, -.py-sm-0 { - padding-top: 0 !important; + .pt-md-3 { + padding-top: 1rem !important; } - .pr-sm-0, -.px-sm-0 { - padding-right: 0 !important; + .pt-md-4 { + padding-top: 1.5rem !important; } - .pb-sm-0, -.py-sm-0 { - padding-bottom: 0 !important; + .pt-md-5 { + padding-top: 3rem !important; } - .pl-sm-0, -.px-sm-0 { - padding-left: 0 !important; + .pr-md-0 { + padding-right: 0 !important; } - .p-sm-1 { - padding: 0.25rem !important; + .pr-md-1 { + padding-right: 0.25rem !important; } - .pt-sm-1, -.py-sm-1 { - padding-top: 0.25rem !important; + .pr-md-2 { + padding-right: 0.5rem !important; } - .pr-sm-1, -.px-sm-1 { - padding-right: 0.25rem !important; + .pr-md-3 { + padding-right: 1rem !important; } - .pb-sm-1, -.py-sm-1 { - padding-bottom: 0.25rem !important; + .pr-md-4 { + padding-right: 1.5rem !important; } - .pl-sm-1, -.px-sm-1 { - padding-left: 0.25rem !important; + .pr-md-5 { + padding-right: 3rem !important; } - .p-sm-2 { - padding: 0.5rem !important; + .pb-md-0 { + padding-bottom: 0 !important; } - .pt-sm-2, -.py-sm-2 { - padding-top: 0.5rem !important; + .pb-md-1 { + padding-bottom: 0.25rem !important; } - .pr-sm-2, -.px-sm-2 { - padding-right: 0.5rem !important; + .pb-md-2 { + padding-bottom: 0.5rem !important; } - .pb-sm-2, -.py-sm-2 { - padding-bottom: 0.5rem !important; + .pb-md-3 { + padding-bottom: 1rem !important; } - .pl-sm-2, -.px-sm-2 { - padding-left: 0.5rem !important; + .pb-md-4 { + padding-bottom: 1.5rem !important; } - .p-sm-3 { - padding: 1rem !important; + .pb-md-5 { + padding-bottom: 3rem !important; } - .pt-sm-3, -.py-sm-3 { - padding-top: 1rem !important; + .pl-md-0 { + padding-left: 0 !important; } - .pr-sm-3, -.px-sm-3 { - padding-right: 1rem !important; + .pl-md-1 { + padding-left: 0.25rem !important; } - .pb-sm-3, -.py-sm-3 { - padding-bottom: 1rem !important; + .pl-md-2 { + padding-left: 0.5rem !important; } - .pl-sm-3, -.px-sm-3 { + .pl-md-3 { padding-left: 1rem !important; } - .p-sm-4 { - padding: 1.5rem !important; + .pl-md-4 { + padding-left: 1.5rem !important; } - .pt-sm-4, -.py-sm-4 { - padding-top: 1.5rem !important; + .pl-md-5 { + padding-left: 3rem !important; } - .pr-sm-4, -.px-sm-4 { - padding-right: 1.5rem !important; + .text-md-left { + text-align: left !important; } - .pb-sm-4, -.py-sm-4 { - padding-bottom: 1.5rem !important; + .text-md-right { + text-align: right !important; } - .pl-sm-4, -.px-sm-4 { - padding-left: 1.5rem !important; + .text-md-center { + text-align: center !important; } - - .p-sm-5 { - padding: 3rem !important; +} +@media (min-width: 992px) { + .float-lg-left { + float: left !important; } - .pt-sm-5, -.py-sm-5 { - padding-top: 3rem !important; + .float-lg-right { + float: right !important; } - .pr-sm-5, -.px-sm-5 { - padding-right: 3rem !important; + .float-lg-none { + float: none !important; } - .pb-sm-5, -.py-sm-5 { - padding-bottom: 3rem !important; + .d-lg-inline { + display: inline !important; } - .pl-sm-5, -.px-sm-5 { - padding-left: 3rem !important; + .d-lg-inline-block { + display: inline-block !important; } - .m-sm-n1 { - margin: -0.25rem !important; + .d-lg-block { + display: block !important; } - .mt-sm-n1, -.my-sm-n1 { - margin-top: -0.25rem !important; + .d-lg-grid { + display: grid !important; } - .mr-sm-n1, -.mx-sm-n1 { - margin-right: -0.25rem !important; + .d-lg-table { + display: table !important; } - .mb-sm-n1, -.my-sm-n1 { - margin-bottom: -0.25rem !important; + .d-lg-table-row { + display: table-row !important; } - .ml-sm-n1, -.mx-sm-n1 { - margin-left: -0.25rem !important; + .d-lg-table-cell { + display: table-cell !important; } - .m-sm-n2 { - margin: -0.5rem !important; + .d-lg-flex { + display: flex !important; } - .mt-sm-n2, -.my-sm-n2 { - margin-top: -0.5rem !important; + .d-lg-inline-flex { + display: inline-flex !important; } - .mr-sm-n2, -.mx-sm-n2 { - margin-right: -0.5rem !important; + .d-lg-none { + display: none !important; } - .mb-sm-n2, -.my-sm-n2 { - margin-bottom: -0.5rem !important; + .flex-lg-fill { + flex: 1 1 auto !important; } - .ml-sm-n2, -.mx-sm-n2 { - margin-left: -0.5rem !important; + .flex-lg-row { + flex-direction: row !important; } - .m-sm-n3 { - margin: -1rem !important; + .flex-lg-column { + flex-direction: column !important; } - .mt-sm-n3, -.my-sm-n3 { - margin-top: -1rem !important; + .flex-lg-row-reverse { + flex-direction: row-reverse !important; } - .mr-sm-n3, -.mx-sm-n3 { - margin-right: -1rem !important; + .flex-lg-column-reverse { + flex-direction: column-reverse !important; } - .mb-sm-n3, -.my-sm-n3 { - margin-bottom: -1rem !important; + .flex-lg-grow-0 { + flex-grow: 0 !important; } - .ml-sm-n3, -.mx-sm-n3 { - margin-left: -1rem !important; + .flex-lg-grow-1 { + flex-grow: 1 !important; } - .m-sm-n4 { - margin: -1.5rem !important; + .flex-lg-shrink-0 { + flex-shrink: 0 !important; } - .mt-sm-n4, -.my-sm-n4 { - margin-top: -1.5rem !important; + .flex-lg-shrink-1 { + flex-shrink: 1 !important; } - .mr-sm-n4, -.mx-sm-n4 { - margin-right: -1.5rem !important; + .flex-lg-wrap { + flex-wrap: wrap !important; } - .mb-sm-n4, -.my-sm-n4 { - margin-bottom: -1.5rem !important; + .flex-lg-nowrap { + flex-wrap: nowrap !important; } - .ml-sm-n4, -.mx-sm-n4 { - margin-left: -1.5rem !important; + .flex-lg-wrap-reverse { + flex-wrap: wrap-reverse !important; } - .m-sm-n5 { - margin: -3rem !important; + .gap-lg-0 { + gap: 0 !important; } - .mt-sm-n5, -.my-sm-n5 { - margin-top: -3rem !important; + .gap-lg-1 { + gap: 0.25rem !important; } - .mr-sm-n5, -.mx-sm-n5 { - margin-right: -3rem !important; + .gap-lg-2 { + gap: 0.5rem !important; } - .mb-sm-n5, -.my-sm-n5 { - margin-bottom: -3rem !important; + .gap-lg-3 { + gap: 1rem !important; } - .ml-sm-n5, -.mx-sm-n5 { - margin-left: -3rem !important; + .gap-lg-4 { + gap: 1.5rem !important; } - .m-sm-auto { - margin: auto !important; + .gap-lg-5 { + gap: 3rem !important; } - .mt-sm-auto, -.my-sm-auto { - margin-top: auto !important; + .justify-content-lg-start { + justify-content: flex-start !important; } - .mr-sm-auto, -.mx-sm-auto { - margin-right: auto !important; + .justify-content-lg-end { + justify-content: flex-end !important; } - .mb-sm-auto, -.my-sm-auto { - margin-bottom: auto !important; + .justify-content-lg-center { + justify-content: center !important; } - .ml-sm-auto, -.mx-sm-auto { - margin-left: auto !important; - } -} -@media (min-width: 768px) { - .m-md-0 { - margin: 0 !important; + .justify-content-lg-between { + justify-content: space-between !important; } - .mt-md-0, -.my-md-0 { - margin-top: 0 !important; + .justify-content-lg-around { + justify-content: space-around !important; } - .mr-md-0, -.mx-md-0 { - margin-right: 0 !important; + .justify-content-lg-evenly { + justify-content: space-evenly !important; } - .mb-md-0, -.my-md-0 { - margin-bottom: 0 !important; + .align-items-lg-start { + align-items: flex-start !important; } - .ml-md-0, -.mx-md-0 { - margin-left: 0 !important; + .align-items-lg-end { + align-items: flex-end !important; } - .m-md-1 { - margin: 0.25rem !important; + .align-items-lg-center { + align-items: center !important; } - .mt-md-1, -.my-md-1 { - margin-top: 0.25rem !important; + .align-items-lg-baseline { + align-items: baseline !important; } - .mr-md-1, -.mx-md-1 { - margin-right: 0.25rem !important; + .align-items-lg-stretch { + align-items: stretch !important; } - .mb-md-1, -.my-md-1 { - margin-bottom: 0.25rem !important; + .align-content-lg-start { + align-content: flex-start !important; } - .ml-md-1, -.mx-md-1 { - margin-left: 0.25rem !important; + .align-content-lg-end { + align-content: flex-end !important; } - .m-md-2 { - margin: 0.5rem !important; + .align-content-lg-center { + align-content: center !important; } - .mt-md-2, -.my-md-2 { - margin-top: 0.5rem !important; + .align-content-lg-between { + align-content: space-between !important; } - .mr-md-2, -.mx-md-2 { - margin-right: 0.5rem !important; + .align-content-lg-around { + align-content: space-around !important; } - .mb-md-2, -.my-md-2 { - margin-bottom: 0.5rem !important; + .align-content-lg-stretch { + align-content: stretch !important; } - .ml-md-2, -.mx-md-2 { - margin-left: 0.5rem !important; + .align-self-lg-auto { + align-self: auto !important; } - .m-md-3 { - margin: 1rem !important; + .align-self-lg-start { + align-self: flex-start !important; } - .mt-md-3, -.my-md-3 { - margin-top: 1rem !important; + .align-self-lg-end { + align-self: flex-end !important; } - .mr-md-3, -.mx-md-3 { - margin-right: 1rem !important; + .align-self-lg-center { + align-self: center !important; } - .mb-md-3, -.my-md-3 { - margin-bottom: 1rem !important; + .align-self-lg-baseline { + align-self: baseline !important; } - .ml-md-3, -.mx-md-3 { - margin-left: 1rem !important; + .align-self-lg-stretch { + align-self: stretch !important; } - .m-md-4 { - margin: 1.5rem !important; + .order-lg-first { + order: -1 !important; } - .mt-md-4, -.my-md-4 { - margin-top: 1.5rem !important; + .order-lg-0 { + order: 0 !important; } - .mr-md-4, -.mx-md-4 { - margin-right: 1.5rem !important; + .order-lg-1 { + order: 1 !important; } - .mb-md-4, -.my-md-4 { - margin-bottom: 1.5rem !important; + .order-lg-2 { + order: 2 !important; } - .ml-md-4, -.mx-md-4 { - margin-left: 1.5rem !important; + .order-lg-3 { + order: 3 !important; } - .m-md-5 { - margin: 3rem !important; + .order-lg-4 { + order: 4 !important; } - .mt-md-5, -.my-md-5 { - margin-top: 3rem !important; + .order-lg-5 { + order: 5 !important; } - .mr-md-5, -.mx-md-5 { - margin-right: 3rem !important; + .order-lg-last { + order: 6 !important; } - .mb-md-5, -.my-md-5 { - margin-bottom: 3rem !important; + .m-lg-0 { + margin: 0 !important; } - .ml-md-5, -.mx-md-5 { - margin-left: 3rem !important; + .m-lg-1 { + margin: 0.25rem !important; } - .p-md-0 { - padding: 0 !important; + .m-lg-2 { + margin: 0.5rem !important; } - .pt-md-0, -.py-md-0 { - padding-top: 0 !important; + .m-lg-3 { + margin: 1rem !important; } - .pr-md-0, -.px-md-0 { - padding-right: 0 !important; + .m-lg-4 { + margin: 1.5rem !important; } - .pb-md-0, -.py-md-0 { - padding-bottom: 0 !important; + .m-lg-5 { + margin: 3rem !important; } - .pl-md-0, -.px-md-0 { - padding-left: 0 !important; + .m-lg-auto { + margin: auto !important; } - .p-md-1 { - padding: 0.25rem !important; + .mx-lg-0 { + margin-right: 0 !important; + margin-left: 0 !important; } - .pt-md-1, -.py-md-1 { - padding-top: 0.25rem !important; + .mx-lg-1 { + margin-right: 0.25rem !important; + margin-left: 0.25rem !important; } - .pr-md-1, -.px-md-1 { - padding-right: 0.25rem !important; + .mx-lg-2 { + margin-right: 0.5rem !important; + margin-left: 0.5rem !important; } - .pb-md-1, -.py-md-1 { - padding-bottom: 0.25rem !important; + .mx-lg-3 { + margin-right: 1rem !important; + margin-left: 1rem !important; } - .pl-md-1, -.px-md-1 { - padding-left: 0.25rem !important; + .mx-lg-4 { + margin-right: 1.5rem !important; + margin-left: 1.5rem !important; } - .p-md-2 { - padding: 0.5rem !important; + .mx-lg-5 { + margin-right: 3rem !important; + margin-left: 3rem !important; } - .pt-md-2, -.py-md-2 { - padding-top: 0.5rem !important; + .mx-lg-auto { + margin-right: auto !important; + margin-left: auto !important; } - .pr-md-2, -.px-md-2 { - padding-right: 0.5rem !important; + .my-lg-0 { + margin-top: 0 !important; + margin-bottom: 0 !important; } - .pb-md-2, -.py-md-2 { - padding-bottom: 0.5rem !important; + .my-lg-1 { + margin-top: 0.25rem !important; + margin-bottom: 0.25rem !important; } - .pl-md-2, -.px-md-2 { - padding-left: 0.5rem !important; + .my-lg-2 { + margin-top: 0.5rem !important; + margin-bottom: 0.5rem !important; } - .p-md-3 { - padding: 1rem !important; + .my-lg-3 { + margin-top: 1rem !important; + margin-bottom: 1rem !important; } - .pt-md-3, -.py-md-3 { - padding-top: 1rem !important; + .my-lg-4 { + margin-top: 1.5rem !important; + margin-bottom: 1.5rem !important; } - .pr-md-3, -.px-md-3 { - padding-right: 1rem !important; + .my-lg-5 { + margin-top: 3rem !important; + margin-bottom: 3rem !important; } - .pb-md-3, -.py-md-3 { - padding-bottom: 1rem !important; + .my-lg-auto { + margin-top: auto !important; + margin-bottom: auto !important; } - .pl-md-3, -.px-md-3 { - padding-left: 1rem !important; + .mt-lg-0 { + margin-top: 0 !important; } - .p-md-4 { - padding: 1.5rem !important; + .mt-lg-1 { + margin-top: 0.25rem !important; } - .pt-md-4, -.py-md-4 { - padding-top: 1.5rem !important; + .mt-lg-2 { + margin-top: 0.5rem !important; } - .pr-md-4, -.px-md-4 { - padding-right: 1.5rem !important; + .mt-lg-3 { + margin-top: 1rem !important; } - .pb-md-4, -.py-md-4 { - padding-bottom: 1.5rem !important; + .mt-lg-4 { + margin-top: 1.5rem !important; } - .pl-md-4, -.px-md-4 { - padding-left: 1.5rem !important; + .mt-lg-5 { + margin-top: 3rem !important; } - .p-md-5 { - padding: 3rem !important; + .mt-lg-auto { + margin-top: auto !important; } - .pt-md-5, -.py-md-5 { - padding-top: 3rem !important; + .mr-lg-0 { + margin-right: 0 !important; } - .pr-md-5, -.px-md-5 { - padding-right: 3rem !important; + .mr-lg-1 { + margin-right: 0.25rem !important; } - .pb-md-5, -.py-md-5 { - padding-bottom: 3rem !important; + .mr-lg-2 { + margin-right: 0.5rem !important; } - .pl-md-5, -.px-md-5 { - padding-left: 3rem !important; + .mr-lg-3 { + margin-right: 1rem !important; } - .m-md-n1 { - margin: -0.25rem !important; + .mr-lg-4 { + margin-right: 1.5rem !important; } - .mt-md-n1, -.my-md-n1 { - margin-top: -0.25rem !important; + .mr-lg-5 { + margin-right: 3rem !important; } - .mr-md-n1, -.mx-md-n1 { - margin-right: -0.25rem !important; + .mr-lg-auto { + margin-right: auto !important; } - .mb-md-n1, -.my-md-n1 { - margin-bottom: -0.25rem !important; + .mb-lg-0 { + margin-bottom: 0 !important; } - .ml-md-n1, -.mx-md-n1 { - margin-left: -0.25rem !important; + .mb-lg-1 { + margin-bottom: 0.25rem !important; } - .m-md-n2 { - margin: -0.5rem !important; + .mb-lg-2 { + margin-bottom: 0.5rem !important; } - .mt-md-n2, -.my-md-n2 { - margin-top: -0.5rem !important; + .mb-lg-3 { + margin-bottom: 1rem !important; } - .mr-md-n2, -.mx-md-n2 { - margin-right: -0.5rem !important; + .mb-lg-4 { + margin-bottom: 1.5rem !important; } - .mb-md-n2, -.my-md-n2 { - margin-bottom: -0.5rem !important; + .mb-lg-5 { + margin-bottom: 3rem !important; } - .ml-md-n2, -.mx-md-n2 { - margin-left: -0.5rem !important; + .mb-lg-auto { + margin-bottom: auto !important; } - .m-md-n3 { - margin: -1rem !important; + .ml-lg-0 { + margin-left: 0 !important; } - .mt-md-n3, -.my-md-n3 { - margin-top: -1rem !important; + .ml-lg-1 { + margin-left: 0.25rem !important; } - .mr-md-n3, -.mx-md-n3 { - margin-right: -1rem !important; + .ml-lg-2 { + margin-left: 0.5rem !important; } - .mb-md-n3, -.my-md-n3 { - margin-bottom: -1rem !important; + .ml-lg-3 { + margin-left: 1rem !important; } - .ml-md-n3, -.mx-md-n3 { - margin-left: -1rem !important; + .ml-lg-4 { + margin-left: 1.5rem !important; } - .m-md-n4 { - margin: -1.5rem !important; + .ml-lg-5 { + margin-left: 3rem !important; } - .mt-md-n4, -.my-md-n4 { - margin-top: -1.5rem !important; + .ml-lg-auto { + margin-left: auto !important; } - .mr-md-n4, -.mx-md-n4 { - margin-right: -1.5rem !important; + .p-lg-0 { + padding: 0 !important; } - .mb-md-n4, -.my-md-n4 { - margin-bottom: -1.5rem !important; + .p-lg-1 { + padding: 0.25rem !important; } - .ml-md-n4, -.mx-md-n4 { - margin-left: -1.5rem !important; + .p-lg-2 { + padding: 0.5rem !important; } - .m-md-n5 { - margin: -3rem !important; + .p-lg-3 { + padding: 1rem !important; } - .mt-md-n5, -.my-md-n5 { - margin-top: -3rem !important; + .p-lg-4 { + padding: 1.5rem !important; } - .mr-md-n5, -.mx-md-n5 { - margin-right: -3rem !important; + .p-lg-5 { + padding: 3rem !important; } - .mb-md-n5, -.my-md-n5 { - margin-bottom: -3rem !important; + .px-lg-0 { + padding-right: 0 !important; + padding-left: 0 !important; } - .ml-md-n5, -.mx-md-n5 { - margin-left: -3rem !important; + .px-lg-1 { + padding-right: 0.25rem !important; + padding-left: 0.25rem !important; } - .m-md-auto { - margin: auto !important; + .px-lg-2 { + padding-right: 0.5rem !important; + padding-left: 0.5rem !important; } - .mt-md-auto, -.my-md-auto { - margin-top: auto !important; + .px-lg-3 { + padding-right: 1rem !important; + padding-left: 1rem !important; } - .mr-md-auto, -.mx-md-auto { - margin-right: auto !important; + .px-lg-4 { + padding-right: 1.5rem !important; + padding-left: 1.5rem !important; } - .mb-md-auto, -.my-md-auto { - margin-bottom: auto !important; + .px-lg-5 { + padding-right: 3rem !important; + padding-left: 3rem !important; } - .ml-md-auto, -.mx-md-auto { - margin-left: auto !important; + .py-lg-0 { + padding-top: 0 !important; + padding-bottom: 0 !important; } -} -@media (min-width: 992px) { - .m-lg-0 { - margin: 0 !important; + + .py-lg-1 { + padding-top: 0.25rem !important; + padding-bottom: 0.25rem !important; } - .mt-lg-0, -.my-lg-0 { - margin-top: 0 !important; + .py-lg-2 { + padding-top: 0.5rem !important; + padding-bottom: 0.5rem !important; } - .mr-lg-0, -.mx-lg-0 { - margin-right: 0 !important; + .py-lg-3 { + padding-top: 1rem !important; + padding-bottom: 1rem !important; } - .mb-lg-0, -.my-lg-0 { - margin-bottom: 0 !important; + .py-lg-4 { + padding-top: 1.5rem !important; + padding-bottom: 1.5rem !important; } - .ml-lg-0, -.mx-lg-0 { - margin-left: 0 !important; + .py-lg-5 { + padding-top: 3rem !important; + padding-bottom: 3rem !important; } - .m-lg-1 { - margin: 0.25rem !important; + .pt-lg-0 { + padding-top: 0 !important; } - .mt-lg-1, -.my-lg-1 { - margin-top: 0.25rem !important; + .pt-lg-1 { + padding-top: 0.25rem !important; } - .mr-lg-1, -.mx-lg-1 { - margin-right: 0.25rem !important; + .pt-lg-2 { + padding-top: 0.5rem !important; } - .mb-lg-1, -.my-lg-1 { - margin-bottom: 0.25rem !important; + .pt-lg-3 { + padding-top: 1rem !important; } - .ml-lg-1, -.mx-lg-1 { - margin-left: 0.25rem !important; + .pt-lg-4 { + padding-top: 1.5rem !important; } - .m-lg-2 { - margin: 0.5rem !important; + .pt-lg-5 { + padding-top: 3rem !important; } - .mt-lg-2, -.my-lg-2 { - margin-top: 0.5rem !important; + .pr-lg-0 { + padding-right: 0 !important; } - .mr-lg-2, -.mx-lg-2 { - margin-right: 0.5rem !important; + .pr-lg-1 { + padding-right: 0.25rem !important; } - .mb-lg-2, -.my-lg-2 { - margin-bottom: 0.5rem !important; + .pr-lg-2 { + padding-right: 0.5rem !important; } - .ml-lg-2, -.mx-lg-2 { - margin-left: 0.5rem !important; + .pr-lg-3 { + padding-right: 1rem !important; } - .m-lg-3 { - margin: 1rem !important; + .pr-lg-4 { + padding-right: 1.5rem !important; } - .mt-lg-3, -.my-lg-3 { - margin-top: 1rem !important; + .pr-lg-5 { + padding-right: 3rem !important; } - .mr-lg-3, -.mx-lg-3 { - margin-right: 1rem !important; + .pb-lg-0 { + padding-bottom: 0 !important; } - .mb-lg-3, -.my-lg-3 { - margin-bottom: 1rem !important; + .pb-lg-1 { + padding-bottom: 0.25rem !important; } - .ml-lg-3, -.mx-lg-3 { - margin-left: 1rem !important; + .pb-lg-2 { + padding-bottom: 0.5rem !important; } - .m-lg-4 { - margin: 1.5rem !important; + .pb-lg-3 { + padding-bottom: 1rem !important; } - .mt-lg-4, -.my-lg-4 { - margin-top: 1.5rem !important; + .pb-lg-4 { + padding-bottom: 1.5rem !important; } - .mr-lg-4, -.mx-lg-4 { - margin-right: 1.5rem !important; + .pb-lg-5 { + padding-bottom: 3rem !important; } - .mb-lg-4, -.my-lg-4 { - margin-bottom: 1.5rem !important; + .pl-lg-0 { + padding-left: 0 !important; } - .ml-lg-4, -.mx-lg-4 { - margin-left: 1.5rem !important; + .pl-lg-1 { + padding-left: 0.25rem !important; } - .m-lg-5 { - margin: 3rem !important; + .pl-lg-2 { + padding-left: 0.5rem !important; } - .mt-lg-5, -.my-lg-5 { - margin-top: 3rem !important; + .pl-lg-3 { + padding-left: 1rem !important; } - .mr-lg-5, -.mx-lg-5 { - margin-right: 3rem !important; + .pl-lg-4 { + padding-left: 1.5rem !important; } - .mb-lg-5, -.my-lg-5 { - margin-bottom: 3rem !important; + .pl-lg-5 { + padding-left: 3rem !important; } - .ml-lg-5, -.mx-lg-5 { - margin-left: 3rem !important; + .text-lg-left { + text-align: left !important; } - .p-lg-0 { - padding: 0 !important; + .text-lg-right { + text-align: right !important; } - .pt-lg-0, -.py-lg-0 { - padding-top: 0 !important; + .text-lg-center { + text-align: center !important; + } +} +@media (min-width: 1200px) { + .float-xl-left { + float: left !important; } - .pr-lg-0, -.px-lg-0 { - padding-right: 0 !important; + .float-xl-right { + float: right !important; } - .pb-lg-0, -.py-lg-0 { - padding-bottom: 0 !important; + .float-xl-none { + float: none !important; } - .pl-lg-0, -.px-lg-0 { - padding-left: 0 !important; + .d-xl-inline { + display: inline !important; } - .p-lg-1 { - padding: 0.25rem !important; + .d-xl-inline-block { + display: inline-block !important; } - .pt-lg-1, -.py-lg-1 { - padding-top: 0.25rem !important; + .d-xl-block { + display: block !important; } - .pr-lg-1, -.px-lg-1 { - padding-right: 0.25rem !important; + .d-xl-grid { + display: grid !important; } - .pb-lg-1, -.py-lg-1 { - padding-bottom: 0.25rem !important; + .d-xl-table { + display: table !important; } - .pl-lg-1, -.px-lg-1 { - padding-left: 0.25rem !important; + .d-xl-table-row { + display: table-row !important; } - .p-lg-2 { - padding: 0.5rem !important; + .d-xl-table-cell { + display: table-cell !important; } - .pt-lg-2, -.py-lg-2 { - padding-top: 0.5rem !important; + .d-xl-flex { + display: flex !important; } - .pr-lg-2, -.px-lg-2 { - padding-right: 0.5rem !important; + .d-xl-inline-flex { + display: inline-flex !important; } - .pb-lg-2, -.py-lg-2 { - padding-bottom: 0.5rem !important; + .d-xl-none { + display: none !important; } - .pl-lg-2, -.px-lg-2 { - padding-left: 0.5rem !important; + .flex-xl-fill { + flex: 1 1 auto !important; } - .p-lg-3 { - padding: 1rem !important; + .flex-xl-row { + flex-direction: row !important; } - .pt-lg-3, -.py-lg-3 { - padding-top: 1rem !important; + .flex-xl-column { + flex-direction: column !important; } - .pr-lg-3, -.px-lg-3 { - padding-right: 1rem !important; + .flex-xl-row-reverse { + flex-direction: row-reverse !important; } - .pb-lg-3, -.py-lg-3 { - padding-bottom: 1rem !important; + .flex-xl-column-reverse { + flex-direction: column-reverse !important; } - .pl-lg-3, -.px-lg-3 { - padding-left: 1rem !important; + .flex-xl-grow-0 { + flex-grow: 0 !important; } - .p-lg-4 { - padding: 1.5rem !important; + .flex-xl-grow-1 { + flex-grow: 1 !important; } - .pt-lg-4, -.py-lg-4 { - padding-top: 1.5rem !important; + .flex-xl-shrink-0 { + flex-shrink: 0 !important; } - .pr-lg-4, -.px-lg-4 { - padding-right: 1.5rem !important; + .flex-xl-shrink-1 { + flex-shrink: 1 !important; } - .pb-lg-4, -.py-lg-4 { - padding-bottom: 1.5rem !important; + .flex-xl-wrap { + flex-wrap: wrap !important; } - .pl-lg-4, -.px-lg-4 { - padding-left: 1.5rem !important; + .flex-xl-nowrap { + flex-wrap: nowrap !important; } - .p-lg-5 { - padding: 3rem !important; + .flex-xl-wrap-reverse { + flex-wrap: wrap-reverse !important; } - .pt-lg-5, -.py-lg-5 { - padding-top: 3rem !important; + .gap-xl-0 { + gap: 0 !important; } - .pr-lg-5, -.px-lg-5 { - padding-right: 3rem !important; + .gap-xl-1 { + gap: 0.25rem !important; } - .pb-lg-5, -.py-lg-5 { - padding-bottom: 3rem !important; + .gap-xl-2 { + gap: 0.5rem !important; } - .pl-lg-5, -.px-lg-5 { - padding-left: 3rem !important; + .gap-xl-3 { + gap: 1rem !important; } - .m-lg-n1 { - margin: -0.25rem !important; + .gap-xl-4 { + gap: 1.5rem !important; } - .mt-lg-n1, -.my-lg-n1 { - margin-top: -0.25rem !important; + .gap-xl-5 { + gap: 3rem !important; } - .mr-lg-n1, -.mx-lg-n1 { - margin-right: -0.25rem !important; + .justify-content-xl-start { + justify-content: flex-start !important; } - .mb-lg-n1, -.my-lg-n1 { - margin-bottom: -0.25rem !important; + .justify-content-xl-end { + justify-content: flex-end !important; } - .ml-lg-n1, -.mx-lg-n1 { - margin-left: -0.25rem !important; + .justify-content-xl-center { + justify-content: center !important; } - .m-lg-n2 { - margin: -0.5rem !important; + .justify-content-xl-between { + justify-content: space-between !important; } - .mt-lg-n2, -.my-lg-n2 { - margin-top: -0.5rem !important; + .justify-content-xl-around { + justify-content: space-around !important; } - .mr-lg-n2, -.mx-lg-n2 { - margin-right: -0.5rem !important; + .justify-content-xl-evenly { + justify-content: space-evenly !important; } - .mb-lg-n2, -.my-lg-n2 { - margin-bottom: -0.5rem !important; + .align-items-xl-start { + align-items: flex-start !important; } - .ml-lg-n2, -.mx-lg-n2 { - margin-left: -0.5rem !important; + .align-items-xl-end { + align-items: flex-end !important; } - .m-lg-n3 { - margin: -1rem !important; + .align-items-xl-center { + align-items: center !important; } - .mt-lg-n3, -.my-lg-n3 { - margin-top: -1rem !important; + .align-items-xl-baseline { + align-items: baseline !important; } - .mr-lg-n3, -.mx-lg-n3 { - margin-right: -1rem !important; + .align-items-xl-stretch { + align-items: stretch !important; } - .mb-lg-n3, -.my-lg-n3 { - margin-bottom: -1rem !important; + .align-content-xl-start { + align-content: flex-start !important; } - .ml-lg-n3, -.mx-lg-n3 { - margin-left: -1rem !important; + .align-content-xl-end { + align-content: flex-end !important; } - .m-lg-n4 { - margin: -1.5rem !important; + .align-content-xl-center { + align-content: center !important; } - .mt-lg-n4, -.my-lg-n4 { - margin-top: -1.5rem !important; + .align-content-xl-between { + align-content: space-between !important; } - .mr-lg-n4, -.mx-lg-n4 { - margin-right: -1.5rem !important; + .align-content-xl-around { + align-content: space-around !important; } - .mb-lg-n4, -.my-lg-n4 { - margin-bottom: -1.5rem !important; + .align-content-xl-stretch { + align-content: stretch !important; } - .ml-lg-n4, -.mx-lg-n4 { - margin-left: -1.5rem !important; + .align-self-xl-auto { + align-self: auto !important; } - .m-lg-n5 { - margin: -3rem !important; + .align-self-xl-start { + align-self: flex-start !important; } - .mt-lg-n5, -.my-lg-n5 { - margin-top: -3rem !important; + .align-self-xl-end { + align-self: flex-end !important; } - .mr-lg-n5, -.mx-lg-n5 { - margin-right: -3rem !important; + .align-self-xl-center { + align-self: center !important; } - .mb-lg-n5, -.my-lg-n5 { - margin-bottom: -3rem !important; + .align-self-xl-baseline { + align-self: baseline !important; } - .ml-lg-n5, -.mx-lg-n5 { - margin-left: -3rem !important; + .align-self-xl-stretch { + align-self: stretch !important; } - .m-lg-auto { - margin: auto !important; + .order-xl-first { + order: -1 !important; } - .mt-lg-auto, -.my-lg-auto { - margin-top: auto !important; + .order-xl-0 { + order: 0 !important; } - .mr-lg-auto, -.mx-lg-auto { - margin-right: auto !important; + .order-xl-1 { + order: 1 !important; } - .mb-lg-auto, -.my-lg-auto { - margin-bottom: auto !important; + .order-xl-2 { + order: 2 !important; } - .ml-lg-auto, -.mx-lg-auto { - margin-left: auto !important; - } -} -@media (min-width: 1200px) { - .m-xl-0 { - margin: 0 !important; + .order-xl-3 { + order: 3 !important; } - .mt-xl-0, -.my-xl-0 { - margin-top: 0 !important; + .order-xl-4 { + order: 4 !important; } - .mr-xl-0, -.mx-xl-0 { - margin-right: 0 !important; + .order-xl-5 { + order: 5 !important; } - .mb-xl-0, -.my-xl-0 { - margin-bottom: 0 !important; + .order-xl-last { + order: 6 !important; } - .ml-xl-0, -.mx-xl-0 { - margin-left: 0 !important; + .m-xl-0 { + margin: 0 !important; } .m-xl-1 { margin: 0.25rem !important; } - .mt-xl-1, -.my-xl-1 { - margin-top: 0.25rem !important; - } - - .mr-xl-1, -.mx-xl-1 { - margin-right: 0.25rem !important; + .m-xl-2 { + margin: 0.5rem !important; } - .mb-xl-1, -.my-xl-1 { - margin-bottom: 0.25rem !important; + .m-xl-3 { + margin: 1rem !important; } - .ml-xl-1, -.mx-xl-1 { - margin-left: 0.25rem !important; + .m-xl-4 { + margin: 1.5rem !important; } - .m-xl-2 { - margin: 0.5rem !important; + .m-xl-5 { + margin: 3rem !important; } - .mt-xl-2, -.my-xl-2 { - margin-top: 0.5rem !important; + .m-xl-auto { + margin: auto !important; } - .mr-xl-2, -.mx-xl-2 { - margin-right: 0.5rem !important; + .mx-xl-0 { + margin-right: 0 !important; + margin-left: 0 !important; } - .mb-xl-2, -.my-xl-2 { - margin-bottom: 0.5rem !important; + .mx-xl-1 { + margin-right: 0.25rem !important; + margin-left: 0.25rem !important; } - .ml-xl-2, -.mx-xl-2 { + .mx-xl-2 { + margin-right: 0.5rem !important; margin-left: 0.5rem !important; } - .m-xl-3 { - margin: 1rem !important; + .mx-xl-3 { + margin-right: 1rem !important; + margin-left: 1rem !important; } - .mt-xl-3, -.my-xl-3 { - margin-top: 1rem !important; + .mx-xl-4 { + margin-right: 1.5rem !important; + margin-left: 1.5rem !important; } - .mr-xl-3, -.mx-xl-3 { - margin-right: 1rem !important; + .mx-xl-5 { + margin-right: 3rem !important; + margin-left: 3rem !important; } - .mb-xl-3, -.my-xl-3 { - margin-bottom: 1rem !important; + .mx-xl-auto { + margin-right: auto !important; + margin-left: auto !important; } - .ml-xl-3, -.mx-xl-3 { - margin-left: 1rem !important; + .my-xl-0 { + margin-top: 0 !important; + margin-bottom: 0 !important; } - .m-xl-4 { - margin: 1.5rem !important; + .my-xl-1 { + margin-top: 0.25rem !important; + margin-bottom: 0.25rem !important; } - .mt-xl-4, -.my-xl-4 { - margin-top: 1.5rem !important; + .my-xl-2 { + margin-top: 0.5rem !important; + margin-bottom: 0.5rem !important; } - .mr-xl-4, -.mx-xl-4 { - margin-right: 1.5rem !important; + .my-xl-3 { + margin-top: 1rem !important; + margin-bottom: 1rem !important; } - .mb-xl-4, -.my-xl-4 { + .my-xl-4 { + margin-top: 1.5rem !important; margin-bottom: 1.5rem !important; } - .ml-xl-4, -.mx-xl-4 { - margin-left: 1.5rem !important; + .my-xl-5 { + margin-top: 3rem !important; + margin-bottom: 3rem !important; } - .m-xl-5 { - margin: 3rem !important; + .my-xl-auto { + margin-top: auto !important; + margin-bottom: auto !important; } - .mt-xl-5, -.my-xl-5 { - margin-top: 3rem !important; + .mt-xl-0 { + margin-top: 0 !important; } - .mr-xl-5, -.mx-xl-5 { - margin-right: 3rem !important; + .mt-xl-1 { + margin-top: 0.25rem !important; } - .mb-xl-5, -.my-xl-5 { - margin-bottom: 3rem !important; + .mt-xl-2 { + margin-top: 0.5rem !important; } - .ml-xl-5, -.mx-xl-5 { - margin-left: 3rem !important; + .mt-xl-3 { + margin-top: 1rem !important; } - .p-xl-0 { - padding: 0 !important; + .mt-xl-4 { + margin-top: 1.5rem !important; } - .pt-xl-0, -.py-xl-0 { - padding-top: 0 !important; + .mt-xl-5 { + margin-top: 3rem !important; } - .pr-xl-0, -.px-xl-0 { - padding-right: 0 !important; + .mt-xl-auto { + margin-top: auto !important; } - .pb-xl-0, -.py-xl-0 { - padding-bottom: 0 !important; + .mr-xl-0 { + margin-right: 0 !important; } - .pl-xl-0, -.px-xl-0 { - padding-left: 0 !important; + .mr-xl-1 { + margin-right: 0.25rem !important; } - .p-xl-1 { - padding: 0.25rem !important; + .mr-xl-2 { + margin-right: 0.5rem !important; } - .pt-xl-1, -.py-xl-1 { - padding-top: 0.25rem !important; + .mr-xl-3 { + margin-right: 1rem !important; } - .pr-xl-1, -.px-xl-1 { - padding-right: 0.25rem !important; + .mr-xl-4 { + margin-right: 1.5rem !important; } - .pb-xl-1, -.py-xl-1 { - padding-bottom: 0.25rem !important; + .mr-xl-5 { + margin-right: 3rem !important; } - .pl-xl-1, -.px-xl-1 { - padding-left: 0.25rem !important; + .mr-xl-auto { + margin-right: auto !important; } - .p-xl-2 { - padding: 0.5rem !important; + .mb-xl-0 { + margin-bottom: 0 !important; } - .pt-xl-2, -.py-xl-2 { - padding-top: 0.5rem !important; + .mb-xl-1 { + margin-bottom: 0.25rem !important; } - .pr-xl-2, -.px-xl-2 { - padding-right: 0.5rem !important; + .mb-xl-2 { + margin-bottom: 0.5rem !important; } - .pb-xl-2, -.py-xl-2 { - padding-bottom: 0.5rem !important; + .mb-xl-3 { + margin-bottom: 1rem !important; } - .pl-xl-2, -.px-xl-2 { - padding-left: 0.5rem !important; + .mb-xl-4 { + margin-bottom: 1.5rem !important; } - .p-xl-3 { - padding: 1rem !important; + .mb-xl-5 { + margin-bottom: 3rem !important; } - .pt-xl-3, -.py-xl-3 { - padding-top: 1rem !important; + .mb-xl-auto { + margin-bottom: auto !important; } - .pr-xl-3, -.px-xl-3 { - padding-right: 1rem !important; + .ml-xl-0 { + margin-left: 0 !important; } - .pb-xl-3, -.py-xl-3 { - padding-bottom: 1rem !important; + .ml-xl-1 { + margin-left: 0.25rem !important; } - .pl-xl-3, -.px-xl-3 { - padding-left: 1rem !important; + .ml-xl-2 { + margin-left: 0.5rem !important; } - .p-xl-4 { - padding: 1.5rem !important; + .ml-xl-3 { + margin-left: 1rem !important; } - .pt-xl-4, -.py-xl-4 { - padding-top: 1.5rem !important; + .ml-xl-4 { + margin-left: 1.5rem !important; } - .pr-xl-4, -.px-xl-4 { - padding-right: 1.5rem !important; + .ml-xl-5 { + margin-left: 3rem !important; } - .pb-xl-4, -.py-xl-4 { - padding-bottom: 1.5rem !important; + .ml-xl-auto { + margin-left: auto !important; } - .pl-xl-4, -.px-xl-4 { - padding-left: 1.5rem !important; + .p-xl-0 { + padding: 0 !important; } - .p-xl-5 { - padding: 3rem !important; + .p-xl-1 { + padding: 0.25rem !important; } - .pt-xl-5, -.py-xl-5 { - padding-top: 3rem !important; + .p-xl-2 { + padding: 0.5rem !important; } - .pr-xl-5, -.px-xl-5 { - padding-right: 3rem !important; + .p-xl-3 { + padding: 1rem !important; } - .pb-xl-5, -.py-xl-5 { - padding-bottom: 3rem !important; + .p-xl-4 { + padding: 1.5rem !important; } - .pl-xl-5, -.px-xl-5 { - padding-left: 3rem !important; + .p-xl-5 { + padding: 3rem !important; } - .m-xl-n1 { - margin: -0.25rem !important; + .px-xl-0 { + padding-right: 0 !important; + padding-left: 0 !important; } - .mt-xl-n1, -.my-xl-n1 { - margin-top: -0.25rem !important; + .px-xl-1 { + padding-right: 0.25rem !important; + padding-left: 0.25rem !important; } - .mr-xl-n1, -.mx-xl-n1 { - margin-right: -0.25rem !important; + .px-xl-2 { + padding-right: 0.5rem !important; + padding-left: 0.5rem !important; } - .mb-xl-n1, -.my-xl-n1 { - margin-bottom: -0.25rem !important; + .px-xl-3 { + padding-right: 1rem !important; + padding-left: 1rem !important; } - .ml-xl-n1, -.mx-xl-n1 { - margin-left: -0.25rem !important; + .px-xl-4 { + padding-right: 1.5rem !important; + padding-left: 1.5rem !important; } - .m-xl-n2 { - margin: -0.5rem !important; + .px-xl-5 { + padding-right: 3rem !important; + padding-left: 3rem !important; } - .mt-xl-n2, -.my-xl-n2 { - margin-top: -0.5rem !important; + .py-xl-0 { + padding-top: 0 !important; + padding-bottom: 0 !important; } - .mr-xl-n2, -.mx-xl-n2 { - margin-right: -0.5rem !important; + .py-xl-1 { + padding-top: 0.25rem !important; + padding-bottom: 0.25rem !important; } - .mb-xl-n2, -.my-xl-n2 { - margin-bottom: -0.5rem !important; + .py-xl-2 { + padding-top: 0.5rem !important; + padding-bottom: 0.5rem !important; } - .ml-xl-n2, -.mx-xl-n2 { - margin-left: -0.5rem !important; + .py-xl-3 { + padding-top: 1rem !important; + padding-bottom: 1rem !important; } - .m-xl-n3 { - margin: -1rem !important; + .py-xl-4 { + padding-top: 1.5rem !important; + padding-bottom: 1.5rem !important; } - .mt-xl-n3, -.my-xl-n3 { - margin-top: -1rem !important; + .py-xl-5 { + padding-top: 3rem !important; + padding-bottom: 3rem !important; } - .mr-xl-n3, -.mx-xl-n3 { - margin-right: -1rem !important; + .pt-xl-0 { + padding-top: 0 !important; } - .mb-xl-n3, -.my-xl-n3 { - margin-bottom: -1rem !important; + .pt-xl-1 { + padding-top: 0.25rem !important; } - .ml-xl-n3, -.mx-xl-n3 { - margin-left: -1rem !important; + .pt-xl-2 { + padding-top: 0.5rem !important; } - .m-xl-n4 { - margin: -1.5rem !important; + .pt-xl-3 { + padding-top: 1rem !important; } - .mt-xl-n4, -.my-xl-n4 { - margin-top: -1.5rem !important; + .pt-xl-4 { + padding-top: 1.5rem !important; } - .mr-xl-n4, -.mx-xl-n4 { - margin-right: -1.5rem !important; + .pt-xl-5 { + padding-top: 3rem !important; } - .mb-xl-n4, -.my-xl-n4 { - margin-bottom: -1.5rem !important; + .pr-xl-0 { + padding-right: 0 !important; } - .ml-xl-n4, -.mx-xl-n4 { - margin-left: -1.5rem !important; + .pr-xl-1 { + padding-right: 0.25rem !important; } - .m-xl-n5 { - margin: -3rem !important; + .pr-xl-2 { + padding-right: 0.5rem !important; } - .mt-xl-n5, -.my-xl-n5 { - margin-top: -3rem !important; + .pr-xl-3 { + padding-right: 1rem !important; } - .mr-xl-n5, -.mx-xl-n5 { - margin-right: -3rem !important; + .pr-xl-4 { + padding-right: 1.5rem !important; } - .mb-xl-n5, -.my-xl-n5 { - margin-bottom: -3rem !important; + .pr-xl-5 { + padding-right: 3rem !important; } - .ml-xl-n5, -.mx-xl-n5 { - margin-left: -3rem !important; + .pb-xl-0 { + padding-bottom: 0 !important; } - .m-xl-auto { - margin: auto !important; + .pb-xl-1 { + padding-bottom: 0.25rem !important; } - .mt-xl-auto, -.my-xl-auto { - margin-top: auto !important; + .pb-xl-2 { + padding-bottom: 0.5rem !important; } - .mr-xl-auto, -.mx-xl-auto { - margin-right: auto !important; + .pb-xl-3 { + padding-bottom: 1rem !important; } - .mb-xl-auto, -.my-xl-auto { - margin-bottom: auto !important; + .pb-xl-4 { + padding-bottom: 1.5rem !important; } - .ml-xl-auto, -.mx-xl-auto { - margin-left: auto !important; + .pb-xl-5 { + padding-bottom: 3rem !important; } -} -.stretched-link::after { - position: absolute; - top: 0; - right: 0; - bottom: 0; - left: 0; - z-index: 1; - pointer-events: auto; - content: ""; - background-color: rgba(0, 0, 0, 0); -} - -.text-monospace { - font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace !important; -} - -.text-justify { - text-align: justify !important; -} - -.text-wrap { - white-space: normal !important; -} - -.text-nowrap { - white-space: nowrap !important; -} - -.text-truncate { - overflow: hidden; - text-overflow: ellipsis; - white-space: nowrap; -} - -.text-left { - text-align: left !important; -} - -.text-right { - text-align: right !important; -} - -.text-center { - text-align: center !important; -} -@media (min-width: 576px) { - .text-sm-left { - text-align: left !important; + .pl-xl-0 { + padding-left: 0 !important; } - .text-sm-right { - text-align: right !important; + .pl-xl-1 { + padding-left: 0.25rem !important; } - .text-sm-center { - text-align: center !important; - } -} -@media (min-width: 768px) { - .text-md-left { - text-align: left !important; + .pl-xl-2 { + padding-left: 0.5rem !important; } - .text-md-right { - text-align: right !important; + .pl-xl-3 { + padding-left: 1rem !important; } - .text-md-center { - text-align: center !important; - } -} -@media (min-width: 992px) { - .text-lg-left { - text-align: left !important; + .pl-xl-4 { + padding-left: 1.5rem !important; } - .text-lg-right { - text-align: right !important; + .pl-xl-5 { + padding-left: 3rem !important; } - .text-lg-center { - text-align: center !important; - } -} -@media (min-width: 1200px) { .text-xl-left { text-align: left !important; } @@ -9732,247 +9625,110 @@ button.bg-dark:focus { text-align: center !important; } } -.text-lowercase { - text-transform: lowercase !important; -} - -.text-uppercase { - text-transform: uppercase !important; -} - -.text-capitalize { - text-transform: capitalize !important; -} - -.font-weight-light { - font-weight: 300 !important; -} - -.font-weight-lighter { - font-weight: lighter !important; -} - -.font-weight-normal { - font-weight: 400 !important; -} - -.font-weight-bold { - font-weight: 700 !important; -} - -.font-weight-bolder { - font-weight: bolder !important; -} - -.font-italic { - font-style: italic !important; -} - -.text-white { - color: #fff !important; -} - -.text-primary { - color: #0078d7 !important; -} - -a.text-primary:hover, a.text-primary:focus { - color: #004d8b !important; -} - -.text-secondary { - color: #6c757d !important; -} - -a.text-secondary:hover, a.text-secondary:focus { - color: #494f54 !important; -} - -.text-success { - color: #97c800 !important; -} - -a.text-success:hover, a.text-success:focus { - color: #5d7c00 !important; -} - -.text-info { - color: #0098df !important; -} - -a.text-info:hover, a.text-info:focus { - color: #006493 !important; -} - -.text-warning { - color: #ffc000 !important; -} - -a.text-warning:hover, a.text-warning:focus { - color: #b38600 !important; -} - -.text-danger { - color: #e74018 !important; -} - -a.text-danger:hover, a.text-danger:focus { - color: #a22d11 !important; -} - -.text-light { - color: #f8f9fa !important; -} - -a.text-light:hover, a.text-light:focus { - color: #cbd3da !important; -} - -.text-dark { - color: #343a40 !important; -} - -a.text-dark:hover, a.text-dark:focus { - color: #121416 !important; -} - -.text-body { - color: #212529 !important; -} - -.text-muted { - color: #6c757d !important; -} - -.text-black-50 { - color: rgba(0, 0, 0, 0.5) !important; -} - -.text-white-50 { - color: rgba(255, 255, 255, 0.5) !important; -} - -.text-hide { - font: 0/0 a; - color: transparent; - text-shadow: none; - background-color: transparent; - border: 0; -} +@media (min-width: 1200px) { + .fs-1 { + font-size: 2.5rem !important; + } -.text-decoration-none { - text-decoration: none !important; -} + .fs-2 { + font-size: 2rem !important; + } -.text-break { - word-break: break-word !important; - word-wrap: break-word !important; -} + .fs-3 { + font-size: 1.75rem !important; + } -.text-reset { - color: inherit !important; -} + .fs-4 { + font-size: 1.5rem !important; + } -.visible { - visibility: visible !important; -} + .fs-sm-1 { + font-size: 2.5rem !important; + } -.invisible { - visibility: hidden !important; -} + .fs-sm-2 { + font-size: 2rem !important; + } -@media print { - *, -*::before, -*::after { - text-shadow: none !important; - box-shadow: none !important; + .fs-sm-3 { + font-size: 1.75rem !important; } - a:not(.btn) { - text-decoration: underline; + .fs-sm-4 { + font-size: 1.5rem !important; } - abbr[title]::after { - content: " (" attr(title) ")"; + .fs-md-1 { + font-size: 2.5rem !important; } - pre { - white-space: pre-wrap !important; + .fs-md-2 { + font-size: 2rem !important; } - pre, -blockquote { - border: 1px solid #adb5bd; - page-break-inside: avoid; + .fs-md-3 { + font-size: 1.75rem !important; } - thead { - display: table-header-group; + .fs-md-4 { + font-size: 1.5rem !important; } - tr, -img { - page-break-inside: avoid; + .fs-lg-1 { + font-size: 2.5rem !important; } - p, -h2, -h3 { - orphans: 3; - widows: 3; + .fs-lg-2 { + font-size: 2rem !important; } - h2, -h3 { - page-break-after: avoid; + .fs-lg-3 { + font-size: 1.75rem !important; } - @page { - size: a3; + .fs-lg-4 { + font-size: 1.5rem !important; } - body { - min-width: 992px !important; +} +@media print { + .d-print-inline { + display: inline !important; } - .container { - min-width: 992px !important; + .d-print-inline-block { + display: inline-block !important; } - .navbar { - display: none; + .d-print-block { + display: block !important; } - .badge { - border: 1px solid #000; + .d-print-grid { + display: grid !important; } - .table { - border-collapse: collapse !important; + .d-print-table { + display: table !important; } - .table td, -.table th { - background-color: #fff !important; + + .d-print-table-row { + display: table-row !important; } - .table-bordered th, -.table-bordered td { - border: 1px solid #dee2e6 !important; + .d-print-table-cell { + display: table-cell !important; } - .table-dark { - color: inherit; + .d-print-flex { + display: flex !important; } - .table-dark th, -.table-dark td, -.table-dark thead th, -.table-dark tbody + tbody { - border-color: #dee2e6; + + .d-print-inline-flex { + display: inline-flex !important; } - .table .thead-dark th { - color: inherit; - border-color: #dee2e6; + .d-print-none { + display: none !important; } } .label { @@ -10317,48 +10073,48 @@ h3 { padding-bottom: 0; padding-top: 0; } -.jumbotron h1 { +.jumbotron h1, .jumbotron .h1 { font-weight: 700; } -.jumbotron h2 { +.jumbotron h2, .jumbotron .h2 { font-weight: 700; margin: 0; } -.jumbotron h2 .fab { +.jumbotron h2 .fab, .jumbotron .h2 .fab { font-weight: 400 !important; } -.jumbotron h2 small { +.jumbotron h2 small, .jumbotron .h2 small, .jumbotron h2 .small, .jumbotron .h2 .small { font-size: 60%; margin-left: 10px; } -.jumbotron h2 small .fa-angle-right { +.jumbotron h2 small .fa-angle-right, .jumbotron .h2 small .fa-angle-right, .jumbotron h2 .small .fa-angle-right, .jumbotron .h2 .small .fa-angle-right { opacity: 0.5; } -.jumbotron h2 small a { +.jumbotron h2 small a, .jumbotron .h2 small a, .jumbotron h2 .small a, .jumbotron .h2 .small a { opacity: 0.8; text-decoration: none; font-weight: 700; } -.jumbotron h2 small a:hover, .jumbotron h2 small a:active, .jumbotron h2 small a:focus { +.jumbotron h2 small a:hover, .jumbotron .h2 small a:hover, .jumbotron h2 .small a:hover, .jumbotron .h2 .small a:hover, .jumbotron h2 small a:active, .jumbotron .h2 small a:active, .jumbotron h2 .small a:active, .jumbotron .h2 .small a:active, .jumbotron h2 small a:focus, .jumbotron .h2 small a:focus, .jumbotron h2 .small a:focus, .jumbotron .h2 .small a:focus { opacity: 1; } -.jumbotron h2 small .text { +.jumbotron h2 small .text, .jumbotron .h2 small .text, .jumbotron h2 .small .text, .jumbotron .h2 .small .text { opacity: 0.8; font-weight: 700; } -.jumbotron h5 { +.jumbotron h5, .jumbotron .h5 { font-weight: 700; text-transform: uppercase; margin: 0; } -.jumbotron h6 { +.jumbotron h6, .jumbotron .h6 { font-weight: 700; text-transform: uppercase; } -.jumbotron.build-header h2 { +.jumbotron.build-header h2, .jumbotron.build-header .h2 { margin-bottom: 0 !important; } -.jumbotron.build-header h6 { +.jumbotron.build-header h6, .jumbotron.build-header .h6 { margin-left: 48px; } .jumbotron .lead { @@ -10373,7 +10129,7 @@ h3 { margin-top: 10px; border-radius: 3px; } -.jumbotron.insider h1 { +.jumbotron.insider h1, .jumbotron.insider .h1 { margin-top: 20px; } .jumbotron.insider .row { @@ -10503,11 +10259,11 @@ h3 { font-weight: 600; } -h1, h2, h3, h4, h5, h6 { +h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6 { font-weight: 700; } -h1 { +h1, .h1 { line-height: 1; } @@ -10588,11 +10344,11 @@ h1 { text-decoration: none; } -.changelog-content h2 { +.changelog-content h2, .changelog-content .h2 { padding-bottom: 0.2rem; margin-bottom: 0.75rem; } -.changelog-content h3 { +.changelog-content h3, .changelog-content .h3 { margin-bottom: 0.75rem; } @@ -10826,18 +10582,18 @@ h1 { background: rgba(170, 170, 170, 0.2); } -.changelog a + h3 { +.changelog a + h3, .changelog a + .h3 { margin-top: 10px; } -.changelog h2 { +.changelog h2, .changelog .h2 { font-size: 1.6rem; font-weight: 700; } -.changelog h3 { +.changelog h3, .changelog .h3 { font-size: 1.2rem; font-weight: 700; } -.changelog h4 { +.changelog h4, .changelog .h4 { font-size: 20px; font-weight: 700; } @@ -10855,7 +10611,7 @@ h1 { font-size: 18px; font-weight: 600; } -.changelog .alert.alert-warning h4 { +.changelog .alert.alert-warning h4, .changelog .alert.alert-warning .h4 { font-size: 24px; font-weight: 700; margin: 0; @@ -10868,7 +10624,7 @@ h1 { font-weight: 600; padding-bottom: 0; } -.changelog .date-heading small { +.changelog .date-heading small, .changelog .date-heading .small { font-size: 19px; font-weight: 600; text-transform: uppercase; @@ -11000,16 +10756,16 @@ h1 { .release-notes { margin-bottom: 2rem; } -.release-notes h3 { +.release-notes h3, .release-notes .h3 { font-weight: 600; padding-bottom: 8px; border-bottom: 1px solid transparent; } -.release-notes h3 small { +.release-notes h3 small, .release-notes .h3 small, .release-notes h3 .small, .release-notes .h3 .small { opacity: 0.6; font-weight: 600; } -.release-notes h4 { +.release-notes h4, .release-notes .h4 { font-weight: 600; margin-top: 5px; margin-bottom: 5px; @@ -11089,10 +10845,10 @@ h1 { color: #fff; text-decoration: none; } -.milestone h3 { +.milestone h3, .milestone .h3 { margin: 0; } -.milestone h4 { +.milestone h4, .milestone .h4 { margin: 0; } @@ -11116,21 +10872,21 @@ h1 { margin-bottom: 10px; } } -.lifecycle-stats h5 { +.lifecycle-stats h5, .lifecycle-stats .h5 { font-weight: 600; text-transform: uppercase; margin: 0; font-size: 1rem; } -.lifecycle-stats h4 { +.lifecycle-stats h4, .lifecycle-stats .h4 { font-weight: 700; } -.platform-card h4 { +.platform-card h4, .platform-card .h4 { font-weight: 600; margin-bottom: 0; } -.platform-card h6 { +.platform-card h6, .platform-card .h6 { font-weight: 700; text-transform: uppercase; margin-top: 0; @@ -11163,15 +10919,15 @@ h1 { .buildfeed .build-detail p { margin-bottom: 0; } -.buildfeed .build-detail h4 { +.buildfeed .build-detail h4, .buildfeed .build-detail .h4 { margin-top: 0; font-weight: 600; } -.buildfeed .build-title h2 { +.buildfeed .build-title h2, .buildfeed .build-title .h2 { margin-bottom: 0; font-weight: 600; } -.buildfeed .build-title h5 { +.buildfeed .build-title h5, .buildfeed .build-title .h5 { margin-top: 0; font-weight: 600; } @@ -11907,10 +11663,10 @@ span.CodeMirror-selectedtext { background-color: #eaeaea !important; color: #222; } -.white .jumbotron h2 small a { +.white .jumbotron h2 small a, .white .jumbotron .h2 small a, .white .jumbotron h2 .small a, .white .jumbotron .h2 .small a { color: #222; } -.white .jumbotron h2 small .text { +.white .jumbotron h2 small .text, .white .jumbotron .h2 small .text, .white .jumbotron h2 .small .text, .white .jumbotron .h2 .small .text { color: #222; } .white .tile, .white .btn-vnext { @@ -11984,7 +11740,7 @@ span.CodeMirror-selectedtext { .white .milestone-navigation:hover { box-shadow: 0 4px 10px 0 rgba(0, 0, 0, 0.1); } -.white .release-notes h3 { +.white .release-notes h3, .white .release-notes .h3 { border-bottom-color: #eaeaea; } .white .release-notes p { @@ -12033,10 +11789,10 @@ span.CodeMirror-selectedtext { .white .modal .modal-content .modal-body { background: #fff; } -.white .lifecycle-stats h5 { +.white .lifecycle-stats h5, .white .lifecycle-stats .h5 { color: #888; } -.white .lifecycle-stats h4 { +.white .lifecycle-stats h4, .white .lifecycle-stats .h4 { color: #222; } .white .form-control { @@ -12069,7 +11825,7 @@ span.CodeMirror-selectedtext { .white hr { border-color: #ddd; } -.white .changelog-content h2 { +.white .changelog-content h2, .white .changelog-content .h2 { border-bottom: 1px solid #eee; } @@ -12094,10 +11850,10 @@ span.CodeMirror-selectedtext { background-color: #d2d2d2 !important; color: #000; } -.light .jumbotron h2 small a { +.light .jumbotron h2 small a, .light .jumbotron .h2 small a, .light .jumbotron h2 .small a, .light .jumbotron .h2 .small a { color: #000; } -.light .jumbotron h2 small .text { +.light .jumbotron h2 small .text, .light .jumbotron .h2 small .text, .light .jumbotron h2 .small .text, .light .jumbotron .h2 .small .text { color: #000; } .light .tile, .light .btn-vnext { @@ -12171,7 +11927,7 @@ span.CodeMirror-selectedtext { .light .milestone-navigation:hover { box-shadow: 0 4px 10px 0 rgba(0, 0, 0, 0.1); } -.light .release-notes h3 { +.light .release-notes h3, .light .release-notes .h3 { border-bottom-color: #d2d2d2; } .light .release-notes p { @@ -12220,10 +11976,10 @@ span.CodeMirror-selectedtext { .light .modal .modal-content .modal-body { background: #e6e6e6; } -.light .lifecycle-stats h5 { +.light .lifecycle-stats h5, .light .lifecycle-stats .h5 { color: #666; } -.light .lifecycle-stats h4 { +.light .lifecycle-stats h4, .light .lifecycle-stats .h4 { color: #000; } .light .form-control { @@ -12256,7 +12012,7 @@ span.CodeMirror-selectedtext { .light hr { border-color: #ccc; } -.light .changelog-content h2 { +.light .changelog-content h2, .light .changelog-content .h2 { border-bottom: 1px solid #ddd; } @@ -12281,10 +12037,10 @@ span.CodeMirror-selectedtext { background-color: #1d1d1d !important; color: #fff; } -.dark .jumbotron h2 small a { +.dark .jumbotron h2 small a, .dark .jumbotron .h2 small a, .dark .jumbotron h2 .small a, .dark .jumbotron .h2 .small a { color: #fff; } -.dark .jumbotron h2 small .text { +.dark .jumbotron h2 small .text, .dark .jumbotron .h2 small .text, .dark .jumbotron h2 .small .text, .dark .jumbotron .h2 .small .text { color: #fff; } .dark .tile, .dark .btn-vnext { @@ -12358,7 +12114,7 @@ span.CodeMirror-selectedtext { .dark .milestone-navigation:hover { box-shadow: 0 4px 10px 0 rgba(0, 0, 0, 0.3); } -.dark .release-notes h3 { +.dark .release-notes h3, .dark .release-notes .h3 { border-bottom-color: #1d1d1d; } .dark .release-notes p { @@ -12407,10 +12163,10 @@ span.CodeMirror-selectedtext { .dark .modal .modal-content .modal-body { background: #292929; } -.dark .lifecycle-stats h5 { +.dark .lifecycle-stats h5, .dark .lifecycle-stats .h5 { color: #888; } -.dark .lifecycle-stats h4 { +.dark .lifecycle-stats h4, .dark .lifecycle-stats .h4 { color: #fff; } .dark .form-control { @@ -12443,7 +12199,7 @@ span.CodeMirror-selectedtext { .dark hr { border-color: #363636; } -.dark .changelog-content h2 { +.dark .changelog-content h2, .dark .changelog-content .h2 { border-bottom: 1px solid #444; } @@ -12468,10 +12224,10 @@ span.CodeMirror-selectedtext { background-color: #151515 !important; color: #fff; } -.black .jumbotron h2 small a { +.black .jumbotron h2 small a, .black .jumbotron .h2 small a, .black .jumbotron h2 .small a, .black .jumbotron .h2 .small a { color: #fff; } -.black .jumbotron h2 small .text { +.black .jumbotron h2 small .text, .black .jumbotron .h2 small .text, .black .jumbotron h2 .small .text, .black .jumbotron .h2 .small .text { color: #fff; } .black .tile, .black .btn-vnext { @@ -12545,7 +12301,7 @@ span.CodeMirror-selectedtext { .black .milestone-navigation:hover { box-shadow: 0 4px 10px 0 rgba(0, 0, 0, 0.3); } -.black .release-notes h3 { +.black .release-notes h3, .black .release-notes .h3 { border-bottom-color: #151515; } .black .release-notes p { @@ -12594,10 +12350,10 @@ span.CodeMirror-selectedtext { .black .modal .modal-content .modal-body { background: #000; } -.black .lifecycle-stats h5 { +.black .lifecycle-stats h5, .black .lifecycle-stats .h5 { color: #777; } -.black .lifecycle-stats h4 { +.black .lifecycle-stats h4, .black .lifecycle-stats .h4 { color: #fff; } .black .form-control { @@ -12630,7 +12386,7 @@ span.CodeMirror-selectedtext { .black hr { border-color: #222; } -.black .changelog-content h2 { +.black .changelog-content h2, .black .changelog-content .h2 { border-bottom: 1px solid #333; } @@ -12694,7 +12450,7 @@ body { background-color: #0078d7; color: #fff; } -.profile-header h1 { +.profile-header h1, .profile-header .h1 { margin-bottom: 0; } diff --git a/public/css/easymde.min.css b/public/css/easymde.min.css new file mode 100644 index 0000000..65d8a3f --- /dev/null +++ b/public/css/easymde.min.css @@ -0,0 +1,7 @@ +/** + * easymde v2.12.1 + * Copyright Jeroen Akkerman + * @link https://github.com/ionaru/easy-markdown-editor + * @license MIT + */ +.CodeMirror{font-family:monospace;height:300px;color:#000;direction:ltr}.CodeMirror-lines{padding:4px 0}.CodeMirror pre.CodeMirror-line,.CodeMirror pre.CodeMirror-line-like{padding:0 4px}.CodeMirror-gutter-filler,.CodeMirror-scrollbar-filler{background-color:#fff}.CodeMirror-gutters{border-right:1px solid #ddd;background-color:#f7f7f7;white-space:nowrap}.CodeMirror-linenumber{padding:0 3px 0 5px;min-width:20px;text-align:right;color:#999;white-space:nowrap}.CodeMirror-guttermarker{color:#000}.CodeMirror-guttermarker-subtle{color:#999}.CodeMirror-cursor{border-left:1px solid #000;border-right:none;width:0}.CodeMirror div.CodeMirror-secondarycursor{border-left:1px solid silver}.cm-fat-cursor .CodeMirror-cursor{width:auto;border:0!important;background:#7e7}.cm-fat-cursor div.CodeMirror-cursors{z-index:1}.cm-fat-cursor-mark{background-color:rgba(20,255,20,.5);-webkit-animation:blink 1.06s steps(1) infinite;-moz-animation:blink 1.06s steps(1) infinite;animation:blink 1.06s steps(1) infinite}.cm-animate-fat-cursor{width:auto;border:0;-webkit-animation:blink 1.06s steps(1) infinite;-moz-animation:blink 1.06s steps(1) infinite;animation:blink 1.06s steps(1) infinite;background-color:#7e7}@-moz-keyframes blink{50%{background-color:transparent}}@-webkit-keyframes blink{50%{background-color:transparent}}@keyframes blink{50%{background-color:transparent}}.cm-tab{display:inline-block;text-decoration:inherit}.CodeMirror-rulers{position:absolute;left:0;right:0;top:-50px;bottom:0;overflow:hidden}.CodeMirror-ruler{border-left:1px solid #ccc;top:0;bottom:0;position:absolute}.cm-s-default .cm-header{color:#00f}.cm-s-default .cm-quote{color:#090}.cm-negative{color:#d44}.cm-positive{color:#292}.cm-header,.cm-strong{font-weight:700}.cm-em{font-style:italic}.cm-link{text-decoration:underline}.cm-strikethrough{text-decoration:line-through}.cm-s-default .cm-keyword{color:#708}.cm-s-default .cm-atom{color:#219}.cm-s-default .cm-number{color:#164}.cm-s-default .cm-def{color:#00f}.cm-s-default .cm-variable-2{color:#05a}.cm-s-default .cm-type,.cm-s-default .cm-variable-3{color:#085}.cm-s-default .cm-comment{color:#a50}.cm-s-default .cm-string{color:#a11}.cm-s-default .cm-string-2{color:#f50}.cm-s-default .cm-meta{color:#555}.cm-s-default .cm-qualifier{color:#555}.cm-s-default .cm-builtin{color:#30a}.cm-s-default .cm-bracket{color:#997}.cm-s-default .cm-tag{color:#170}.cm-s-default .cm-attribute{color:#00c}.cm-s-default .cm-hr{color:#999}.cm-s-default .cm-link{color:#00c}.cm-s-default .cm-error{color:red}.cm-invalidchar{color:red}.CodeMirror-composing{border-bottom:2px solid}div.CodeMirror span.CodeMirror-matchingbracket{color:#0b0}div.CodeMirror span.CodeMirror-nonmatchingbracket{color:#a22}.CodeMirror-matchingtag{background:rgba(255,150,0,.3)}.CodeMirror-activeline-background{background:#e8f2ff}.CodeMirror{position:relative;overflow:hidden;background:#fff}.CodeMirror-scroll{overflow:scroll!important;margin-bottom:-50px;margin-right:-50px;padding-bottom:50px;height:100%;outline:0;position:relative}.CodeMirror-sizer{position:relative;border-right:50px solid transparent}.CodeMirror-gutter-filler,.CodeMirror-hscrollbar,.CodeMirror-scrollbar-filler,.CodeMirror-vscrollbar{position:absolute;z-index:6;display:none;outline:0}.CodeMirror-vscrollbar{right:0;top:0;overflow-x:hidden;overflow-y:scroll}.CodeMirror-hscrollbar{bottom:0;left:0;overflow-y:hidden;overflow-x:scroll}.CodeMirror-scrollbar-filler{right:0;bottom:0}.CodeMirror-gutter-filler{left:0;bottom:0}.CodeMirror-gutters{position:absolute;left:0;top:0;min-height:100%;z-index:3}.CodeMirror-gutter{white-space:normal;height:100%;display:inline-block;vertical-align:top;margin-bottom:-50px}.CodeMirror-gutter-wrapper{position:absolute;z-index:4;background:0 0!important;border:none!important}.CodeMirror-gutter-background{position:absolute;top:0;bottom:0;z-index:4}.CodeMirror-gutter-elt{position:absolute;cursor:default;z-index:4}.CodeMirror-gutter-wrapper ::selection{background-color:transparent}.CodeMirror-gutter-wrapper ::-moz-selection{background-color:transparent}.CodeMirror-lines{cursor:text;min-height:1px}.CodeMirror pre.CodeMirror-line,.CodeMirror pre.CodeMirror-line-like{-moz-border-radius:0;-webkit-border-radius:0;border-radius:0;border-width:0;background:0 0;font-family:inherit;font-size:inherit;margin:0;white-space:pre;word-wrap:normal;line-height:inherit;color:inherit;z-index:2;position:relative;overflow:visible;-webkit-tap-highlight-color:transparent;-webkit-font-variant-ligatures:contextual;font-variant-ligatures:contextual}.CodeMirror-wrap pre.CodeMirror-line,.CodeMirror-wrap pre.CodeMirror-line-like{word-wrap:break-word;white-space:pre-wrap;word-break:normal}.CodeMirror-linebackground{position:absolute;left:0;right:0;top:0;bottom:0;z-index:0}.CodeMirror-linewidget{position:relative;z-index:2;padding:.1px}.CodeMirror-rtl pre{direction:rtl}.CodeMirror-code{outline:0}.CodeMirror-gutter,.CodeMirror-gutters,.CodeMirror-linenumber,.CodeMirror-scroll,.CodeMirror-sizer{-moz-box-sizing:content-box;box-sizing:content-box}.CodeMirror-measure{position:absolute;width:100%;height:0;overflow:hidden;visibility:hidden}.CodeMirror-cursor{position:absolute;pointer-events:none}.CodeMirror-measure pre{position:static}div.CodeMirror-cursors{visibility:hidden;position:relative;z-index:3}div.CodeMirror-dragcursors{visibility:visible}.CodeMirror-focused div.CodeMirror-cursors{visibility:visible}.CodeMirror-selected{background:#d9d9d9}.CodeMirror-focused .CodeMirror-selected{background:#d7d4f0}.CodeMirror-crosshair{cursor:crosshair}.CodeMirror-line::selection,.CodeMirror-line>span::selection,.CodeMirror-line>span>span::selection{background:#d7d4f0}.CodeMirror-line::-moz-selection,.CodeMirror-line>span::-moz-selection,.CodeMirror-line>span>span::-moz-selection{background:#d7d4f0}.cm-searching{background-color:#ffa;background-color:rgba(255,255,0,.4)}.cm-force-border{padding-right:.1px}@media print{.CodeMirror div.CodeMirror-cursors{visibility:hidden}}.cm-tab-wrap-hack:after{content:''}span.CodeMirror-selectedtext{background:0 0}.EasyMDEContainer{display:block}.EasyMDEContainer.sided--no-fullscreen{display:flex;flex-direction:row;flex-wrap:wrap}.CodeMirror{box-sizing:border-box;height:auto;border:1px solid #ddd;border-bottom-left-radius:4px;border-bottom-right-radius:4px;padding:10px;font:inherit;z-index:0;word-wrap:break-word}.CodeMirror-scroll{cursor:text}.CodeMirror-fullscreen{background:#fff;position:fixed!important;top:50px;left:0;right:0;bottom:0;height:auto;z-index:8;border-right:none!important;border-bottom-right-radius:0!important}.CodeMirror-sided{width:50%!important}.CodeMirror-sided.sided--no-fullscreen{border-right:none!important;border-bottom-right-radius:0;position:relative;flex:1 1 auto}.CodeMirror-placeholder{opacity:.5}.CodeMirror-focused .CodeMirror-selected{background:#d9d9d9}.editor-toolbar{position:relative;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;-o-user-select:none;user-select:none;padding:0 10px;border-top:1px solid #bbb;border-left:1px solid #bbb;border-right:1px solid #bbb;border-top-left-radius:4px;border-top-right-radius:4px}.editor-toolbar:after,.editor-toolbar:before{display:block;content:' ';height:1px}.editor-toolbar:before{margin-bottom:8px}.editor-toolbar:after{margin-top:8px}.editor-toolbar.fullscreen{width:100%;height:50px;padding-top:10px;padding-bottom:10px;box-sizing:border-box;background:#fff;border:0;position:fixed;top:0;left:0;opacity:1;z-index:9}.editor-toolbar.fullscreen::before{width:20px;height:50px;background:-moz-linear-gradient(left,#fff 0,rgba(255,255,255,0) 100%);background:-webkit-gradient(linear,left top,right top,color-stop(0,#fff),color-stop(100%,rgba(255,255,255,0)));background:-webkit-linear-gradient(left,#fff 0,rgba(255,255,255,0) 100%);background:-o-linear-gradient(left,#fff 0,rgba(255,255,255,0) 100%);background:-ms-linear-gradient(left,#fff 0,rgba(255,255,255,0) 100%);background:linear-gradient(to right,#fff 0,rgba(255,255,255,0) 100%);position:fixed;top:0;left:0;margin:0;padding:0}.editor-toolbar.fullscreen::after{width:20px;height:50px;background:-moz-linear-gradient(left,rgba(255,255,255,0) 0,#fff 100%);background:-webkit-gradient(linear,left top,right top,color-stop(0,rgba(255,255,255,0)),color-stop(100%,#fff));background:-webkit-linear-gradient(left,rgba(255,255,255,0) 0,#fff 100%);background:-o-linear-gradient(left,rgba(255,255,255,0) 0,#fff 100%);background:-ms-linear-gradient(left,rgba(255,255,255,0) 0,#fff 100%);background:linear-gradient(to right,rgba(255,255,255,0) 0,#fff 100%);position:fixed;top:0;right:0;margin:0;padding:0}.editor-toolbar.sided--no-fullscreen{width:100%}.editor-toolbar .easymde-dropdown,.editor-toolbar button{background:0 0;display:inline-block;text-align:center;text-decoration:none!important;height:30px;margin:0;padding:0;border:1px solid transparent;border-radius:3px;cursor:pointer}.editor-toolbar button{width:30px}.editor-toolbar button.active,.editor-toolbar button:hover{background:#fcfcfc;border-color:#95a5a6}.editor-toolbar i.separator{display:inline-block;width:0;border-left:1px solid #d9d9d9;border-right:1px solid #fff;color:transparent;text-indent:-10px;margin:0 6px}.editor-toolbar button:after{font-family:Arial,"Helvetica Neue",Helvetica,sans-serif;font-size:65%;vertical-align:text-bottom;position:relative;top:2px}.editor-toolbar button.heading-1:after{content:"1"}.editor-toolbar button.heading-2:after{content:"2"}.editor-toolbar button.heading-3:after{content:"3"}.editor-toolbar button.heading-bigger:after{content:"▲"}.editor-toolbar button.heading-smaller:after{content:"▼"}.editor-toolbar.disabled-for-preview button:not(.no-disable){opacity:.6;pointer-events:none}@media only screen and (max-width:700px){.editor-toolbar i.no-mobile{display:none}}.editor-statusbar{padding:8px 10px;font-size:12px;color:#959694;text-align:right}.editor-statusbar.sided--no-fullscreen{width:100%}.editor-statusbar span{display:inline-block;min-width:4em;margin-left:1em}.editor-statusbar .lines:before{content:'lines: '}.editor-statusbar .words:before{content:'words: '}.editor-statusbar .characters:before{content:'characters: '}.editor-preview-full{position:absolute;width:100%;height:100%;top:0;left:0;z-index:7;overflow:auto;display:none;box-sizing:border-box}.editor-preview-side{position:fixed;bottom:0;width:50%;top:50px;right:0;z-index:9;overflow:auto;display:none;box-sizing:border-box;border:1px solid #ddd;word-wrap:break-word}.editor-preview-active-side{display:block}.editor-preview-active-side.sided--no-fullscreen{flex:1 1 auto;height:auto;position:static}.editor-preview-active{display:block}.editor-preview{padding:10px;background:#fafafa}.editor-preview>p{margin-top:0}.editor-preview pre{background:#eee;margin-bottom:10px}.editor-preview table td,.editor-preview table th{border:1px solid #ddd;padding:5px}.cm-s-easymde .cm-tag{color:#63a35c}.cm-s-easymde .cm-attribute{color:#795da3}.cm-s-easymde .cm-string{color:#183691}.cm-s-easymde .cm-header-1{font-size:200%;line-height:200%}.cm-s-easymde .cm-header-2{font-size:160%;line-height:160%}.cm-s-easymde .cm-header-3{font-size:125%;line-height:125%}.cm-s-easymde .cm-header-4{font-size:110%;line-height:110%}.cm-s-easymde .cm-comment{background:rgba(0,0,0,.05);border-radius:2px}.cm-s-easymde .cm-link{color:#7f8c8d}.cm-s-easymde .cm-url{color:#aab2b3}.cm-s-easymde .cm-quote{color:#7f8c8d;font-style:italic}.editor-toolbar .easymde-dropdown{position:relative;background:linear-gradient(to bottom right,#fff 0,#fff 84%,#333 50%,#333 100%);border-radius:0;border:1px solid #fff}.editor-toolbar .easymde-dropdown:hover{background:linear-gradient(to bottom right,#fff 0,#fff 84%,#333 50%,#333 100%)}.easymde-dropdown-content{display:none;position:absolute;background-color:#f9f9f9;box-shadow:0 8px 16px 0 rgba(0,0,0,.2);padding:8px;z-index:2;top:30px}.easymde-dropdown:active .easymde-dropdown-content,.easymde-dropdown:focus .easymde-dropdown-content{display:block}span[data-img-src]::before{content:'';background-image:var(--bg-image);display:block;max-height:100%;max-width:100%;background-size:contain;height:0;padding-top:var(--height);width:var(--width);background-repeat:no-repeat}.CodeMirror .cm-spell-error:not(.cm-url):not(.cm-comment):not(.cm-tag):not(.cm-word){background:rgba(255,0,0,.15)} \ No newline at end of file diff --git a/public/img/models/user.png b/public/img/models/user.png new file mode 100644 index 0000000000000000000000000000000000000000..8fc9218edf0b1660ea7843302c65c3dfe0b0f870 GIT binary patch literal 29429 zcmeHv3pmti`~Ns39qELQL@gEOV1^kqB8OB&E2m1v7>t+^at^z8S0$9rDcTg3O2{II z(LpN7N|H1v$=V?#a`wNUQ4_89^}fITzyII=y6B?E_xl{~=kwf$&wW30*=J^IG-K+5 zsTd4qhVeT6%@~Y`9Qqa)gD2GiR zcrv~ZFtwlu?4(m1<#ni2wf!_<0(XWtP0r8Vjpe23w_2V*uO_t7W30R!zl-R22Fizlk!@R~S^CJrz6=}VqE z6dZ>8$v%G13 zDl9LB;YmKvqtEc7don$|nQWFEnwRFl-tE0wULGwZ`1-UjcMlU2!BQ-*Pv`-TSU;Kv z7O#rKy1Qe?8tLV2-~*F>5^~IuUKaiy4D4ox7kjrSonhd^V0kNyJ=JE$m;H`oD(F7u zM2>WUKpwk2-T0U}(y3=oxfc%?wl~|$h3z32K1v9|Yd#)h?EsWz?4h4Q z9BYs_)9D+#MsL2k7Q>JEjbZ4`@G!nk4Ii~O$Yx@qsn4eGMj#mLQ->AVkxgehY6`Zd zsX-x;hy(^v#ZiMqSHa^MG!+^FPf&3pIgm6cG&LfTp{9-f%Vb}4>eE8TEH7^wi_UuV4R`s#Rfbv1n=1!ssOQ;2KT^)<+NydH`4dD=0C{$=`gOfPS?r~e4-071TC ze$Uu7`swEvZcM&`dC)w)7)aSy%YW8(fkg@o4vpa(jV6tbOq1$G^IacS(`)puxYu6%YNKz%q zDOoXDj%;7A6`w^MJ@DHL&|PROXNDsc`+4B!2VW1-#vRHvw`;Z=wX3SNZYNiNpWnQSSepryP!aqiM@$D)d*H^O+(JyAVU<<51xI*Q^Gp2~cs( z5!~W4Ek&YxSAV3@>jgMVCy`)hFo_$m;rfx&%Cqu$H`5PnV*ufg`CI>g#D^|7P%* zORQzPu{}-LjtnX=|1X2TJRWnD@!GX!o@^(k8v{FXk6*@HF#NnX()>|8{W8I4My*G4 z9{u$5i+`7De_4;emMMgAYHMit$c=n?F-neM=B@qJ1W4*JC*Z&MdV;a3=kU|fTO29S zn8=I}Z$3Hbt!mIE<72pYoJd8E=y3;H`M)?6HxGY68xhW>fsG3x;R}Do~(=0Ad&Gn zHG-aj9`RpJU_d6RQ*Z`&13e9OHIn*T_=Swq$Eg$ahbz8T#=3DL+zE!K+!|DVmTX5y-1hQD-=X9oh4XQt;;hOJX|tf0|>Mr;ibR&}t)k zemw`&o*Zf3v~kTcvhP>(@b|;^v|zK{zLBDh3SI&TJ`EW$8>&@k8Y4<<#dP#`q2dV$ ziLalIIbb7$-_I3YZ z5D}baOh1Mja_@YZzJC7oIBQhhaNEt7QUlHzhr{C0&ricgzW#cs&EF3l`TFajUq)_W zF}sv&IUF)}zg1IG+9U zKfi40pPySW`YR(jr|I{;|3$NP zXvnHZ%Gtv$tVBsNKPCKO(ySECz9 zQvQ=sjekIP!EQ#&F4)Z|+4+6`G1-5CouVC#hFI`q6vY1pF$JKHf>;3hKY;Z&ApUP) z4N#+PjoL&g1`m$}$o{qQ4SD~ssl#=43XZ0GePEjC&m(PQ~XYu zFf(jJx=SO@?Nu&z$li9(Gy6b=>pcHBEpt$T(7gW8P33?14JrE!z{&g;O&q;i0n#r5z_sliItxU6yLW6m_HuUZ>1-F}%$5m6?h3<8<7jnRN1^dk(34 zA2`mAD7=lGjCx%FQDkO@m$iP}@nKeW-?j24{iO1Juv@~(yKd@Ufl_MpM~6BsK|@v2C?+40=>v{{5?VEG(LJ^XC2r&-w5N!BTCnPDkff_c0*P?(~^6EpFlO z>A$lw>j(Ni;?J1YzkB!Cl!x#pn$-9AYv1HvyXCihQ>pHytgy|b7j?f!1!7@riol%ncPHq5dusM#9!In>{%v&+-d z0f$*{FD7bV1V^*Y&TeY-?B&L@rKP3eU|&Q3R4!` zS&<>syf>v5<8v0K&+%=&Yc%Nsb3toOp4SGcf@@UY8A1g-*Uai&yLZp)4B*;ZJS|tT zY4OoQ!Wo#$%!L4UJ*0Oa7%+Qo;Sv4V>QrKTL$NeZ4`a7)>vfFXgQg}X2(>?Yb;k|= zUuP^85*06~$;!&w3vkPIStOM0{n%P-lw3iO0U*xaj9IoXIeFEzQxXN`b}I6s0KJ7K zH6SnU7Ws%yOonZ4;73)>Gf}sY%2z~0vod$$X12Y|_wO+L2|{J)pOUggvzE5_RNJG# z*?#Mt{M}QMp&><9O}*N#>$jtc?P01Ld|(VsLJ2;ve=6imup z)MG=sDM!TpJKmZE^?qndDiRCbizvp=G)y-I)W0UzKfQ8jW_63YRD=OombL2fl)=d0 zm}Ok4paX>t=9gpwpixv*bg_~L z3Nss&YeD3_ngi~f+Gy|y5)u+Mi;x~RY`3#BJoT=~sL>}UGCVxo&(H5-zwOW3rF88j zMSj{*rb%<|yz*c>89aXcSiU&ziSrS#%KFK0WY~lX*FqQKj40poaY~3f~kK8Z<<$D(&d* z@9}!chDh7+~s216*xnZg>)3A`bDog-7(Dil{GfeRZg21Q-#xKsu%Gg_!+&{HQkC1i2M_km zLGlmQJa}NdTuMTxFud?BN8M)!C-~~dpH9cc8OAI#oeoyfodD2$_+SyV$m}Nz+VpZ_ zr?nlz-YV>t99UCR(Jn791*#qH4QO;z5n<8Hk{^+M4jo-)JU#r*lj!=v!J1RiR(lVo z$(C(Rsr>Y|qV?m3_yGt5_$AS24oDws^bhKJf8j&P)X8B#*znJG2ct9?qF!zO9xwTs zenI8LNV}9qM~v`YNlekT>K4OITmp9$`FktcW7ZknLbCh!P@>KRj z-cHTR$%*I;*#3f-X?xWr!`4(3UPo;?l?d)~ec(Wqn^bwz(|ykmB^7lXqf|ReiGto5 zU3s+qGE56Tg&NY-Q6iQeqI90U;*&R|6fmzBAp)>jNp zve^t=LyOM_{}vD^x#FSm#n7CboF{hG?)-uBj9`&HAt9}z7Iy>kR9h^`nKU8LlD$Vr zeGqdtaKnG(EQl_;kjqN0@LVXx7m&BIqdlcRuQOnAdexO9m8xD63y|+th%{7qLge=F zRHY*Br#+f-@od`d>sKVjVAom}&oUo7>0I8KVSDtwJw{Cqi7edW6WExNUFGJGYAw@0 zH83dX<$&xf#8?t-w_O-dyML*L$0IdLaN&;}1CHa*@^KK*|1i{0d7?KxA>@HTmDF+l{oCio9u zHRIVL5)ep)-t)leuh80=9{D#r-S>oWpZ@do0HE?{R)5?c7(XUc3_qkW@ zBwU#XmK+}#(fb?+XP#iFhrLi5Z<@AHT4RWuueL}`W411wU%^t4+3r-L z*q-Q?-u|kr*#OgIr%Gu*VaMnp@-tT_&~@>G;O%v!1vA3(lOB?N;fav2hrN1iB<58( zkk&Jtw*h(TZE)_AavW8Y?*o4jKPbC-?$1C5gus~(=2<2)>L#sQ9-@IDTD7WP>bOsi zd)>#4G0U_hjD!Fbz+3)NXmh+%dUnV5=BqV z4Xs1g&&mINL(E-w>%he7mZ>ma_&P^AfU)iO_Yom;cV=v6#m?dDu32)$`p~xRd3GsB zx|R0dMmo4AH1`0}g!{|#HTgTUw=M8Pns!;cbc6qEGfu5W_dKhV$_+N5c7}6B&|z`v zc%1=pziinRcI)hsO49HNW?C!z4AHhGpPY0li}1MADLr+{Qobhhlz0n$2HAObSiXTh zZuANRZ3+HbmP(~RIkZ_P8Cy9Sl^>xH7n z)<<^pHso;Cr)|bF3|={;ULTqa(?=CTv}xFtJ8M=#+5IUO_p&m#zF4A?UiD}Sf(yTb zCw#ra)nDFn(lX=Cw$r5yXhNENq23)ZROtKhNb{RF%OLoyNXfHScF5ssPC+<+XLHQp z7~?{&RK;YxE5e0RUBtn3*?!xkkFu%h92Xw2FI*&Lu!7b_n2%sJ7RU7doC|4L#x z^U@~yo4L8(tDZ$cK>DLIz-WFRh=10xy5+a08FD2~jwB*-eI#JIFyF1R2q%y9 z_TG8*dySlyr@z0=i>p?%hPWY4=~d)eNFXPhV@LB9Ix8x+oM-;&n0pTB!IQ53i|d>D z;Y_LT_H`g^6%|K2j5Pz3w_1yjfABOK{mSEC4-(Y0&WP9Lz6 zsVpuoPKe$HLYv|1+p|8UEg$R^KO|fAzX+fml(BK}%YdSUl z_~2e=B;PKZV_RG^|9s`~$E-Y^v*k^9`#!d=N`0#!e@AzHSgoZ+pRB+IE5iWw0;!-(1f7@Zp1t)7m(v)j%Rw z_O#|!xhZQ;?$$XE#}#k#-QhpHH6aqO^mT)b3*ZUn$Rfg*^J@E5%ZM_UxnOxuiu}F2 zzP}VMjj?#I#+Af05B&==Szk_sEco>4(-y9qqK8(Qa)7j6vO;#-z^z4z&E+=% z2RY@#EI+Oh5?q<`CL*A5AqsCCgOtzHGfktuHxM{hq;_c@1rz+iYX~xj{4}BNDNqVP zXSJ?;pns-faT=tf`1n!Mmr-+NF?}hiq#!OQ}q-Og1=`cqowx*)J+gxT$~i`R$KD;4MJX3S%*K($*rvZ4rp| z_I0VKVzCl$YgZV@0K*#UR;ty}i6R@vBvgsxUvoC)_Cnq{oL%JsQGiW?21dWF^{-`X z^=YIjcideS8q((rq^@5Ja+6)YzRq$pUxGNL@j8L8=YirY)jAUP_4Ngc>?&w)Zz@-8 z7itrJ`QxNEy*QuSOCk-$>O-$o@(@jTQ(qVc?;yv|_4vt;$a{4^O_{oRzgJ7w4wHkQT@y?=@YH@c<)==l8(ZEzh?y_d}UT-9R>OG+Y> zwhQG7hs+bQdjQo49&cx6Yx7AcO27fmlZAt~AA+?Ji3bLPTX{`se^z#O`#J`~x)vxo z5Pdi;yv)3eDmO&o6U#5%!uT>EJU7sCV^F8E1(J^ertJ?D233v>kgPXXVLEs0yZ%w&(_(ESsUMRcAve|m6p zD1QYFfk^bronN=6=c^eWesK4|aOp=iEvcLd2LvS~{Gyo&)h$apPe5XhhJ=St&N%@Q z8)H`t8vFHh-#Q=oH;6*GX5Nvk(p}l%8RiGPJ8c zKS|O!W?9U#o?`cH2Ikt6VK2aZxztG@Yh9&V=2kT+Ozw$OOQAps2Z&?73|TOd z_cv&@@fztjY(gYkL3hii#yleB zxZchH6;lwdfb)HF#kmSsgB)%Yzr@MI)*j*9pWHqq3TNN5_6TJ2jj~#YhO(eMdB#*x z^Ni_@>Xsc*k*$+lph{wy+Xp2NG}xvnUqCQ&dze<8^k)YvwzH zdkvz73?3UeSh*A&YGa*W)7IpNdk=xKL(F_J3o)+d$#yaNP@y?|`0#qJUFT*nEf6uH z@UeNtx)lpYL|wq_)90Mw@-F`@`YHrjEprO*;M7dyz|mLMuwij`pwF5QALB zD-R`YvJ40SC6DN?ea;21+DUUgB%#uXYOI}euGY0e0TXd1D2kz!zQl=c20qs87|=LW z`~){CHo1kFatf7kH-0CE2xra_e*FRF-<>nhs53Bx@7J(EXWo|O71&*#FKk~6r!mZW z6xwf@2i#NvzVg%_6Ie7|{JNE?sp)H|zWRB5fWjY;5zsdli*;p&P}eW>CGB;nS6nkt zVK^dUTDuU6`SqE#!4arP34*oFUJz*r)jWPRGqhE-H&%n~KwL0?`q}poxh!l`DkI>l zG4fq#s}}4Z)CE|IR_&`Lbw)iAGcBG$^%*Lo?Ls=gR=3=PI&Cu98%?V zLg@<>6I@CW7%uWN)JmL1buL*Pp)3_?%se z5wJy~NkWwyb*MS;^rvb*aErbRXafbZn#=_dXag57g1QXy{Kt!T^mh5>aH&JS+S}jw zfXCq9nmjs~`y<3;@EK5=g_sZ9UA13+_=1Mh-wNp!$b!1EGCvaJwa%CVlg{FBK5h_h z-uV92o$%W@j8;#9aSW&%w?-v&drBq5L9nJl@G2<*H!rrpP#0qV>;4}BFxZ2UQCwrn zU=A025QFcWz)2`No`<% zfgKiSlStxVF}7EqnTr}9W0Xb|NkW76$mt$jN6F7x$R)_}QZB=;lF}4+5%1J;FA1d{EHrQTUhzKMkMz1`q zFVVqM3^c9&9@N$hT>uUQb2b;jVWMjv)q^21S$^EqJn)T$4zp1CylOjKW0AGABB0t% zHZF)ro-bTS8ZImY%=JL!RL@>I51l~`t~@<(r(7W(Qb#j?n3nJ{LmKMFoZ#I$T1OG@ z1Lg`;pAps6-0YSTe_l*nvQ8YrIUMBdqBJh6zW6v6wE475*KM$Ku&tsXYRcVqknJIN z{S@R`{`lB;D6s*H4ZL}9tFn~o)W8dn)&AVk)O5)P=|IJY8ywv&s&#IO_o#iK<;$J) zpcr`g@Ek>OC( z?aI@7xIKj%q&eWc&T0m*~rVS301J_Dn!IS zCr3;1$1q5WQPut_9T;2JB!tEcD3}6?W2VG6`Zq~CUyrz-&*5M@Wt0t}d}cNU^3$i4 zob2os16^~U{|t%epCVGQ=u_TqMPU%!KW5pA-3e($MMe>iDJ#Llo6jvY{5|)Hp zBG(L0>iYNEneW09(yQFo=gr%IDnLqGPDa0l>UCs`4{w==_jiYlnbB{D85X}ZvpgvD zsq1jD82AB{fQ;*0pc;Lw>qVC+l6XI=4ZXY1%6t7><#;h%z@p+y!LCW`<|Dslxk@oK z!RnbUlt0XS?xnVFgL$2uoLkvvqP!Zl;Pe{Y3Ds*-!Viba_t zVMW94micwzu9 zzz#KL-wJP4s%KgQtA<0rF1^@ib@-nK0brj*lNnTywQ|cnF-JyA_w>H=2f~TOSQAvp zt-G#D=HK2e6p@%WeK(r2ZVOai&S2MI>Cqz3jTpIB4^PYjF65#AFspWJD8Fg~H-Q*{ z(S!Uj>$&w+OR*&@dxKNOQ9#n&?l#vTwS(^IjDipvpF{3`(k(C zJ!K%op_P5VUu@~3-ziV2YdnIdXYoqWowD$ov#N>q@keL1z`be#)FR0TrbTXVZJyo- zIpby@eYh|y(B0-DE_rdV?;a`(hlZi6Tw%Xj1knqL8ESHJYt|2L1LNm^b|aK-F}Kik zN2%dYfIBJ~gBKtE0MXwxK#t))qZ{F>B+)fTAzy>y5>N|0IK(F2JOkSAps2YuKf^VU zR$v|wo8NzZ9b}B@pPp$iq_bEKLzPC61B%^ZLT%Y_;bX4>;OSz5R6*kBk-*SUZ5BPY zOg^fM8I+Wj`W5!=M}qr&IZWxX;tRU4nYMuU+P*oH+8!OB4I8oJx~Z#)ubFGG6zwM$ zE*4xRLxC+m3xPTP_5h>bQ@ci+N?m}8lsVv#X9zD!t#ECK5J$hKTPthFNJpK(E=7XD zo!uGTP=y;nd#UjY`5iLg;|(G+jUcbd%F823!h#Q>+#n6t?rRDTL9ou02BQsq@0M8& zSv+3SLlm;s`e|k9!9OF7%Hpav>6At~bK?ZsfuDK(Y?%iIVlJPUq%zl|h0T z8@n)bJ6!ENmq@Qt2Fe4~OQ@)biFWCm&)o$VKujwTxvLc723+-_&r2+beDuqjLKUe9 z*iS|&REk3fP>lmd|8j>06ij^9#S=hU_;rEoTNu0TpO{F_=H!akP!tA&jjTm@`HKDM zQyqXTd~Ad$SMd0RkdTin&^9Q%K!Oix8+f&0u61bHKA|72Za~opN=@K73ms@bP+;Nu z;S81|yN(IbTLHcyKxEjKwAi*ygIosa2LECNRh#ncrp*Mf`fDH=E^(Rz`e2VK_~Ctp z{OAh~44^#X2_*Q#PewIhp0QL~SoDAVxjD!nFaY;(s{Gf6+!|Q;uj%wCk@L1v|CvWl9CcYuNU^oB3CjJ50Ck|l30{-V_991$Ti^<@s+b$w{nSse-j15fn Kuj$$U_ diff --git a/public/js/alpine.js b/public/js/alpine.js new file mode 100644 index 0000000..321b46c --- /dev/null +++ b/public/js/alpine.js @@ -0,0 +1,1908 @@ +(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() : + typeof define === 'function' && define.amd ? define(factory) : + (global = global || self, global.Alpine = factory()); +}(this, (function () { 'use strict'; + + function _defineProperty(obj, key, value) { + if (key in obj) { + Object.defineProperty(obj, key, { + value: value, + enumerable: true, + configurable: true, + writable: true + }); + } else { + obj[key] = value; + } + + return obj; + } + + function ownKeys(object, enumerableOnly) { + var keys = Object.keys(object); + + if (Object.getOwnPropertySymbols) { + var symbols = Object.getOwnPropertySymbols(object); + if (enumerableOnly) symbols = symbols.filter(function (sym) { + return Object.getOwnPropertyDescriptor(object, sym).enumerable; + }); + keys.push.apply(keys, symbols); + } + + return keys; + } + + function _objectSpread2(target) { + for (var i = 1; i < arguments.length; i++) { + var source = arguments[i] != null ? arguments[i] : {}; + + if (i % 2) { + ownKeys(Object(source), true).forEach(function (key) { + _defineProperty(target, key, source[key]); + }); + } else if (Object.getOwnPropertyDescriptors) { + Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); + } else { + ownKeys(Object(source)).forEach(function (key) { + Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); + }); + } + } + + return target; + } + + // Thanks @stimulus: + // https://github.com/stimulusjs/stimulus/blob/master/packages/%40stimulus/core/src/application.ts + function domReady() { + return new Promise(resolve => { + if (document.readyState == "loading") { + document.addEventListener("DOMContentLoaded", resolve); + } else { + resolve(); + } + }); + } + function arrayUnique(array) { + return Array.from(new Set(array)); + } + function isTesting() { + return navigator.userAgent.includes("Node.js") || navigator.userAgent.includes("jsdom"); + } + function checkedAttrLooseCompare(valueA, valueB) { + return valueA == valueB; + } + function warnIfMalformedTemplate(el, directive) { + if (el.tagName.toLowerCase() !== 'template') { + console.warn(`Alpine: [${directive}] directive should only be added to