[
  {
    "path": ".dockerignore",
    "content": ".git\n__pycache__\n*.pyc\n*.pyo\n*.pyd"
  },
  {
    "path": ".gitignore",
    "content": "# byte-compiled / optimized / DLL files\n__pycache__/\n*.py[cod]\n\n# tests and coverage\n*.pytest_cache\n.coverage\n\n# database & logs\n*.db\n*.sqlite3\n*.log\n\n# venv\nenv\nvenv\n\n# other\n.DS_Store\n\n# sphinx docs \n_build\n_static\n_templates\n\n# javascript\npackage-lock.json\n.vscode/symbols.json\n\napps/static/assets/node_modules\napps/static/assets/yarn.lock\napps/static/assets/.temp\n\nmigrations\n\nREADME_bk.md\n"
  },
  {
    "path": "CHANGELOG.md",
    "content": "# Change Log\n\n## [1.0.17] 2025-04-01\n### Changes\n\n- Update RM (minor)\n\n## [1.0.16] 2024-05-18\n### Changes\n\n- Updated DOCS (readme)\n  - [Custom Development](https://appseed.us/custom-development/) Section\n  - [CI/CD Assistance for AWS, DO](https://appseed.us/terms/#section-ci-cd)\n\n## [1.0.15] 2024-03-06\n### Changes\n\n- Update [Custom Development](https://appseed.us/custom-development/) Section\n  - New Pricing: `$3,999`\n\n## [1.0.14] 2023-10-07\n### Changes\n\n- Update Dependencies\n- Silent fallback to SQLite\n\n## [1.0.13] 2023-06-22\n### Changes\n\n- Print UserID on `index`\n  - Via export in controller\n  - Via `current_user` in view\n\n## [1.0.12] 2023-03-15\n### Changes\n\n- DOCS Update\n  - [Volt Dashboard Flask](https://docs.appseed.us/products/flask-dashboards/volt/) - `official help` \n- Links Curation (minor)\n\n## [1.0.11] 2022-12-31\n### Changes\n\n- Added page compression for PRODUCTION env\n  - `DEBUG=False`\n\n## [1.0.10] 2022-12-31\n### Changes\n\n- Deployment-ready for Render (CI/CD)\n  - `render.yaml`\n  - `build.sh`\n\n## [1.0.9] 2022-12-31\n### Changes\n\n- `DB Management` Improvement\n  - `Silent fallback` to **SQLite**\n\n## [1.0.8] 2022-09-07\n### Improvements\n\n- Added OAuth via Github\n- Improved Auth Pages\n\n## [1.0.7] 2022-05-25\n### Improvements\n\n- Built with [Volt Dashboard Generator](https://appseed.us/generator/volt-dashboard/)\n  - Timestamp: `2022-05-25 22:26`\n- Codebase refactoring\n- Added CDN Support\n  - via `.env` **ASSETS_ROOT**  \n\n## [1.0.6] 2022-01-16\n### Improvements\n\n- Bump Flask Codebase to [v2stable.0.1](https://github.com/app-generator/boilerplate-code-flask-dashboard/releases)\n- Dependencies update (all packages) \n  - Flask==2.0.2 (latest stable version)\n  - flask_wtf==1.0.0\n  - jinja2==3.0.3\n  - flask-restx==0.5.1\n- Forms Update:\n  - Replace `TextField` (deprecated) with `StringField`\n\n## Unreleased\n### Fixes\n\n- 2021-11-08 - `v1.0.6-rc1`\n  - ImportError: cannot import name 'TextField' from 'wtforms'\n    - Problem caused by `WTForms-3.0.0`\n    - Fix: use **WTForms==2.3.3**\n    \n## [1.0.5] 2021-09-16\n### Improvements & Fixes\n\n- Bump Flask Codebase to [v2.0.0](https://github.com/app-generator/boilerplate-code-flask-dashboard/releases)\n  - Dependencies update (all packages)\n    - Use Flask==2.0.1 (latest stable version)\n  - Better Code formatting\n  - Improved Files organization\n  - Optimize imports\n  - Docker Scripts Update \n\n## [1.0.4] 2021-08-27\n### Improvements\n\n- Bump UI - [Volt Dashboard v1.4.1](https://github.com/themesberg/volt-bootstrap-5-dashboard/releases) \n  \n## Unreleased 2021-05-26\n### Tooling\n\n- Added scripts to recompile the SCSS files\n    - `app/base/static/assets/` - gulpfile.js\n    - `app/base/static/assets/` - package.json\n- `Update README` - [Recompile SCSS](https://github.com/app-generator/flask-dashboard-volt#recompile-css) (new section)\n\n## [1.0.3] 2021-05-16\n### Dependencies Update\n\n- Bump Codebase: [Flask Dashboard](https://github.com/app-generator/boilerplate-code-flask-dashboard) v1.0.6\n- Freeze used versions in `requirements.txt`\n    - jinja2 = 2.11.3\n\n## [1.0.2] 2021-03-30\n### Improvements\n\n- Bump UI: [Jinja Volt](https://github.com/app-generator/jinja-volt-dashboard/releases) v1.0.1\n- [Volt Dashboard](https://github.com/themesberg/volt-bootstrap-5-dashboard/releases) v1.3.2\n\n## [1.0.1] 2021-03-18\n### Improvements\n\n- Bump Codebase: [Flask Dashboard](https://github.com/app-generator/boilerplate-code-flask-dashboard) v1.0.5\n- Freeze used versions in `requirements.txt`\n    - flask_sqlalchemy = 2.4.4\n    - sqlalchemy = 1.3.23\n\n## [1.0.0] 2021-01-17\n\n- Bump UI: [Jinja Volt](https://github.com/app-generator/jinja-volt-dashboard/releases) v1.0.0\n- [Volt Dashboard](https://github.com/themesberg/volt-bootstrap-5-dashboard/releases/tag) v1.2.0 \n- Codebase: [Flask Dashboard](https://github.com/app-generator/boilerplate-code-flask-dashboard/releases) v1.0.3\n\n"
  },
  {
    "path": "Dockerfile",
    "content": "FROM python:3.10\n\n# set environment variables\nENV PYTHONDONTWRITEBYTECODE 1\nENV PYTHONUNBUFFERED 1\nENV FLASK_APP run.py\nENV DEBUG True\n\nCOPY requirements.txt .\n\n# install python dependencies\nRUN pip install --upgrade pip\nRUN pip install --no-cache-dir -r requirements.txt\n\nCOPY env.sample .env\n\nCOPY . .\n\nRUN flask db init\nRUN flask db migrate\nRUN flask db upgrade\n\n# gunicorn\nCMD [\"gunicorn\", \"--config\", \"gunicorn-cfg.py\", \"run:app\"]\n"
  },
  {
    "path": "LICENSE.md",
    "content": "# MIT License\n\nCopyright (c) 2019 - present [AppSeed](http://appseed.us/)\n\n<br />\n\n## Licensing Information\n\n<br />\n\n| Item | - |\n| ---------------------------------- | --- |\n| License Type | MIT  |\n| Use for print | **YES** |\n| Create single personal website/app | **YES** |\n| Create single website/app for client | **YES** |\n| Create multiple website/apps for clients | **YES** |\n| Create multiple SaaS applications | **YES** |\n| End-product paying users | **YES** |\n| Product sale | **YES** |\n| Remove footer credits | **YES** |\n| --- | --- |\n| Remove copyright mentions from source code | NO |\n| Production deployment assistance | NO |\n| Create HTML/CSS template for sale | NO |\n| Create Theme/Template for CMS for sale | NO |\n| Separate sale of our UI Elements | NO |\n\n<br />\n\n---\nFor more information regarding licensing, please contact the AppSeed Service < *support@appseed.us* >\n"
  },
  {
    "path": "README.md",
    "content": "# [Flask Volt Dashboard](https://app-generator.dev/product/volt-dashboard/flask/)\n\nOpen-source **Flask Starter with Volt Dashboard Design**, an open-source iconic `Bootstrap` design.\nThe product is designed to deliver the best possible user experience with highly customizable feature-rich pages. \n\n- 👉 [Flask Volt Dashboard](https://app-generator.dev/product/volt-dashboard/flask/) - `Product Page`\n- 👉 [Flask Volt Dashboard](https://flask-volt-dashboard.appseed-srv1.com/) - `LIVE Demo` \n- 👉 [Flask Volt Dashboard](https://app-generator.dev/docs/products/flask/volt-dashboard/index.html) - `Complete Information` and Support Links\n  - [Getting Started with Flask](https://app-generator.dev/docs/technologies/flask/index.html) - a `comprehensive tutorial`\n  - `Configuration`: Install Tailwind/Flowbite, Prepare Environment, Setting up the Database \n  - `Start with Docker`\n  - `Manual Build`\n  - `Start the project`\n  - `Deploy on Render`\n\n<br />\n\n## `PROMO` Domains for sale\n\n- 👉 **[AppSeed.us - $49k](https://appseed.us/)**\n- 👉 **[Admin-Dashboards.com - $15k](https://www.admin-dashboards.com/)**\n- 👉 **[UI-Themes.com - $5k](https://ui-themes.com/)**\n- 👉 **[Simpllo.com - $10k](https://www.simpllo.com/)**\n- 👉 **[123SiteBuilder.net - $5k](https://www.123sitebuilder.net/)**\n\n<br />\n\n## Features\n\n- Simple, Easy-to-Extend codebase, [Blueprint Pattern](https://app-generator.dev/blog/flask-blueprints-a-developers-guide/)\n- Up-to-date Dependencies\n- [Volt Dashboard](https://app-generator.dev/docs/templates/bootstrap/volt-dashboard.html) Full Integration\n- [Bootstrap](https://app-generator.dev/docs/templates/bootstrap/index.html) 5 Styling\n- Auth: Session Based, GitHub, Google\n- Celery Beat \n- DB Persistence: SQLite (default), \n  - Easy switch to MySql/MariaDB, PgSql\n- Dynamic DataTables - manage data without coding\n- CI/CD integration for [Render](https://app-generator.dev/docs/deployment/render/index.html)\n- Deployment: Docker, Flask-Minify\n\n![Volt Dashboard - Full-Stack Starter generated by AppSeed.](https://user-images.githubusercontent.com/51070104/168843604-b026fd94-5969-4be7-81ac-5887cf0958e5.png)\n\n<br />\n\n## Deploy LIVE\n\n> One-click deploy (requires already having an account).\n\n[![Deploy to Render](https://render.com/images/deploy-to-render-button.svg)](https://render.com/deploy)\n\n<br /> \n\n## [Volt Dashboard PRO Version](https://app-generator.dev/product/volt-dashboard-pro/flask/)\n\n> The premium version provides more features, priority on support, and is more often updated - [Live Demo](https://flask-volt-dashboard-enh.appseed-srv1.com/).\n\n- **Simple, Easy-to-Extend** Codebase\n- **Volt Dashboard** Design - PRO Version\n- Bootstrap 4 CSS\n- **Deployment-Ready** for Render \n\n![Volt Dashboard PRO - Starter generated by AppSeed.](https://user-images.githubusercontent.com/51070104/172672843-8c40a801-3438-4e9c-86db-38a34191fbdf.png)\n\n<br />\n\n## `Customize` with [Flask Generator](https://app-generator.dev/tools/flask-generator/)\n\n- Access the [Flask Generator](https://app-generator.dev/tools/flask-generator/)\n- Select the preferred design\n- (Optional) Design Database: edit models and fields\n- (Optional) Edit the fields for the extended user model\n- (Optional) Enable OAuth for GitHub\n- (Optional) Add Celery (async tasks)\n- (Optional) Enable Dynamic Tables Module\n- Docker Scripts\n- Render CI/Cd Scripts\n\n**The generated Flask project is available as a ZIP Archive and also uploaded to GitHub.**\n\n![Flask Generator - Flask App Generator - User Interface for choosing the Design](https://github.com/user-attachments/assets/fbf73fc0-e9a1-4f01-86a8-aa8be55413b5) \n\n![Flask App Generator - User Interface for Edit the Extended User Model](https://github.com/user-attachments/assets/138b9816-4f2e-454f-84f2-7409969b8548) \n\n<br /> \n\n---\n[Flask Volt Dashboard](https://app-generator.dev/product/volt-dashboard/flask/) - Open-Source **Flask** Starter provided by [App Generator](https://app-generator.dev)\n"
  },
  {
    "path": "apps/__init__.py",
    "content": "# -*- encoding: utf-8 -*-\n\"\"\"\nCopyright (c) 2019 - present AppSeed.us\n\"\"\"\n\nimport os\nfrom flask import Flask\nfrom flask_login import LoginManager\nfrom flask_sqlalchemy import SQLAlchemy\nfrom importlib import import_module\n\ndb = SQLAlchemy()\nlogin_manager = LoginManager()\n\ndef register_extensions(app):\n    db.init_app(app)\n    login_manager.init_app(app)\n\ndef register_blueprints(app):\n    for module_name in ('authentication', 'home', 'dyn_dt', 'charts', ):\n        module = import_module('apps.{}.routes'.format(module_name))\n        app.register_blueprint(module.blueprint)\n\nfrom apps.authentication.oauth import github_blueprint, google_blueprint\n\ndef create_app(config):\n\n    # Contextual\n    static_prefix = '/static'\n    templates_dir = os.path.dirname(config.BASE_DIR)\n\n    TEMPLATES_FOLDER = os.path.join(templates_dir,'templates')\n    STATIC_FOLDER = os.path.join(templates_dir,'static')\n\n    print(' > TEMPLATES_FOLDER: ' + TEMPLATES_FOLDER)\n    print(' > STATIC_FOLDER:    ' + STATIC_FOLDER)\n\n    app = Flask(__name__, static_url_path=static_prefix, template_folder=TEMPLATES_FOLDER, static_folder=STATIC_FOLDER)\n\n    app.config.from_object(config)\n    register_extensions(app)\n    register_blueprints(app)\n    app.register_blueprint(github_blueprint, url_prefix=\"/login\")    \n    app.register_blueprint(google_blueprint, url_prefix=\"/login\")    \n    return app\n"
  },
  {
    "path": "apps/authentication/__init__.py",
    "content": "# -*- encoding: utf-8 -*-\n\"\"\"\nCopyright (c) 2019 - present AppSeed.us\n\"\"\"\n\nfrom flask import Blueprint\n\nblueprint = Blueprint(\n    'authentication_blueprint',\n    __name__,\n    url_prefix=''\n)\n"
  },
  {
    "path": "apps/authentication/forms.py",
    "content": "# -*- encoding: utf-8 -*-\n\"\"\"\nCopyright (c) 2019 - present AppSeed.us\n\"\"\"\n\nfrom flask_wtf import FlaskForm\nfrom wtforms import StringField, PasswordField\nfrom wtforms.validators import Email, DataRequired\n\n# login and registration\n\n\nclass LoginForm(FlaskForm):\n    username = StringField('Username',\n                         id='username_login',\n                         validators=[DataRequired()])\n    password = PasswordField('Password',\n                             id='pwd_login',\n                             validators=[DataRequired()])\n\n\nclass CreateAccountForm(FlaskForm):\n    username = StringField('Username',\n                         id='username_create',\n                         validators=[DataRequired()])\n    email = StringField('Email',\n                      id='email_create',\n                      validators=[DataRequired(), Email()])\n    password = PasswordField('Password',\n                             id='pwd_create',\n                             validators=[DataRequired()])\n"
  },
  {
    "path": "apps/authentication/models.py",
    "content": "# -*- encoding: utf-8 -*-\n\"\"\"\nCopyright (c) 2019 - present AppSeed.us\n\"\"\"\n\nfrom flask_login import UserMixin\n\nfrom sqlalchemy.exc import SQLAlchemyError, IntegrityError\nfrom flask_dance.consumer.storage.sqla import OAuthConsumerMixin\n\nfrom apps import db, login_manager\nfrom apps.authentication.util import hash_pass\n\nclass Users(db.Model, UserMixin):\n\n    __tablename__ = 'users'\n\n    id            = db.Column(db.Integer, primary_key=True)\n    username      = db.Column(db.String(64), unique=True)\n    email         = db.Column(db.String(64), unique=True)\n    password      = db.Column(db.LargeBinary)\n    bio           = db.Column(db.Text(), nullable=True)\n\n    oauth_github  = db.Column(db.String(100), nullable=True)\n    oauth_google  = db.Column(db.String(100), nullable=True)\n\n    readonly_fields = [\"id\", \"username\", \"email\", \"oauth_github\", \"oauth_google\"]\n\n    def __init__(self, **kwargs):\n        for property, value in kwargs.items():\n            # depending on whether value is an iterable or not, we must\n            # unpack it's value (when **kwargs is request.form, some values\n            # will be a 1-element list)\n            if hasattr(value, '__iter__') and not isinstance(value, str):\n                # the ,= unpack of a singleton fails PEP8 (travis flake8 test)\n                value = value[0]\n\n            if property == 'password':\n                value = hash_pass(value)  # we need bytes here (not plain str)\n\n            setattr(self, property, value)\n\n    def __repr__(self):\n        return str(self.username)\n\n    @classmethod\n    def find_by_email(cls, email: str) -> \"Users\":\n        return cls.query.filter_by(email=email).first()\n\n    @classmethod\n    def find_by_username(cls, username: str) -> \"Users\":\n        return cls.query.filter_by(username=username).first()\n    \n    @classmethod\n    def find_by_id(cls, _id: int) -> \"Users\":\n        return cls.query.filter_by(id=_id).first()\n   \n    def save(self) -> None:\n        try:\n            db.session.add(self)\n            db.session.commit()\n          \n        except SQLAlchemyError as e:\n            db.session.rollback()\n            db.session.close()\n            error = str(e.__dict__['orig'])\n            raise IntegrityError(error, 422)\n    \n    def delete_from_db(self) -> None:\n        try:\n            db.session.delete(self)\n            db.session.commit()\n        except SQLAlchemyError as e:\n            db.session.rollback()\n            db.session.close()\n            error = str(e.__dict__['orig'])\n            raise IntegrityError(error, 422)\n        return\n\n@login_manager.user_loader\ndef user_loader(id):\n    return Users.query.filter_by(id=id).first()\n\n@login_manager.request_loader\ndef request_loader(request):\n    username = request.form.get('username')\n    user = Users.query.filter_by(username=username).first()\n    return user if user else None\n\nclass OAuth(OAuthConsumerMixin, db.Model):\n    user_id = db.Column(db.Integer, db.ForeignKey(\"users.id\", ondelete=\"cascade\"), nullable=False)\n    user = db.relationship(Users)\n"
  },
  {
    "path": "apps/authentication/oauth.py",
    "content": "# -*- encoding: utf-8 -*-\n\"\"\"\nCopyright (c) 2019 - present AppSeed.us\n\"\"\"\n\nimport os\nfrom flask import current_app as app \nfrom flask_login import current_user, login_user\nfrom flask_dance.consumer import oauth_authorized\nfrom flask_dance.contrib.github import github, make_github_blueprint\nfrom flask_dance.contrib.google import google, make_google_blueprint\nfrom flask_dance.consumer.storage.sqla import SQLAlchemyStorage\nfrom sqlalchemy.orm.exc import NoResultFound\nfrom apps.config import Config\nfrom .models import Users, db, OAuth\nfrom flask import redirect, url_for\nfrom flask import flash\n\ngithub_blueprint = make_github_blueprint(\n    client_id=Config.GITHUB_ID,\n    client_secret=Config.GITHUB_SECRET,\n    scope = 'user',\n    storage=SQLAlchemyStorage(\n        OAuth,\n        db.session,\n        user=current_user,\n        user_required=False,        \n    ),   \n)\n\n@oauth_authorized.connect_via(github_blueprint)\ndef github_logged_in(blueprint, token):\n    info = github.get(\"/user\")\n\n    if info.ok:\n\n        account_info = info.json()\n        username     = account_info[\"login\"]\n\n        query = Users.query.filter_by(oauth_github=username)\n        try:\n\n            user = query.one()\n            login_user(user)\n\n        except NoResultFound:\n\n            # Save to db\n            user              = Users()\n            user.username     = '(gh)' + username\n            user.oauth_github = username\n\n            # Save current user\n            db.session.add(user)\n            db.session.commit()\n\n            login_user(user)\n\n# Google\n\ngoogle_blueprint = make_google_blueprint(\n    client_id=Config.GOOGLE_ID,\n    client_secret=Config.GOOGLE_SECRET,\n    scope=[\n        \"openid\",\n        \"https://www.googleapis.com/auth/userinfo.email\",\n        \"https://www.googleapis.com/auth/userinfo.profile\",\n    ],\n    storage=SQLAlchemyStorage(\n        OAuth,\n        db.session,\n        user=current_user,\n        user_required=False,        \n    ),   \n)\n\n@oauth_authorized.connect_via(google_blueprint)\ndef google_logged_in(blueprint, token):\n    info = google.get(\"/oauth2/v1/userinfo\")\n\n    if info.ok:\n        account_info = info.json()\n        username     = account_info[\"given_name\"]\n        email        = account_info[\"email\"]\n\n        query = Users.query.filter_by(oauth_google=username)\n        try:\n\n            user = query.one()\n            login_user(user)\n\n        except NoResultFound:\n            # Save to db\n            user              = Users()\n            user.username     = '(google)' + username\n            user.oauth_google = username\n            user.email        = email\n\n            # Save current user\n            db.session.add(user)\n            db.session.commit()\n\n            login_user(user)\n"
  },
  {
    "path": "apps/authentication/routes.py",
    "content": "# -*- encoding: utf-8 -*-\n\"\"\"\nCopyright (c) 2019 - present AppSeed.us\n\"\"\"\n\nfrom flask import render_template, redirect, request, url_for\nfrom flask_login import (\n    current_user,\n    login_user,\n    logout_user\n)\n\nfrom flask_dance.contrib.github import github\nfrom flask_dance.contrib.google import google\n\nfrom apps import db, login_manager\nfrom apps.authentication import blueprint\nfrom apps.authentication.forms import LoginForm, CreateAccountForm\nfrom apps.authentication.models import Users\nfrom apps.config import Config\nfrom apps.authentication.util import verify_pass\n\n@blueprint.route('/')\ndef route_default():\n    return redirect(url_for('authentication_blueprint.login'))\n\n# Login & Registration\n\n@blueprint.route(\"/github\")\ndef login_github():\n    \"\"\" Github login \"\"\"\n    if not github.authorized:\n        return redirect(url_for(\"github.login\"))\n\n    res = github.get(\"/user\")\n    return redirect(url_for('home_blueprint.index'))\n\n\n@blueprint.route(\"/google\")\ndef login_google():\n    \"\"\" Google login \"\"\"\n    if not google.authorized:\n        return redirect(url_for(\"google.login\"))\n\n    res = google.get(\"/oauth2/v1/userinfo\")\n    return redirect(url_for('home_blueprint.index'))\n\n\n@blueprint.route('/login', methods=['GET', 'POST'])\ndef login():\n    login_form = LoginForm(request.form)\n    if 'login' in request.form:\n\n        # read form data\n        username = request.form['username']\n        password = request.form['password']\n\n        # Locate user\n        user = Users.query.filter_by(username=username).first()\n\n        # Check the password\n        if user and verify_pass(password, user.password):\n\n            login_user(user)\n            return redirect(url_for('authentication_blueprint.route_default'))\n\n        # Something (user or pass) is not ok\n        return render_template('accounts/login.html',\n                               msg='Wrong user or password',\n                               form=login_form)\n\n    if not current_user.is_authenticated:\n        return render_template('accounts/login.html',\n                               form=login_form)\n    return redirect(url_for('home_blueprint.index'))\n\n\n@blueprint.route('/register', methods=['GET', 'POST'])\ndef register():\n    create_account_form = CreateAccountForm(request.form)\n    if 'register' in request.form:\n\n        username = request.form['username']\n        email = request.form['email']\n\n        # Check usename exists\n        user = Users.query.filter_by(username=username).first()\n        if user:\n            return render_template('accounts/register.html',\n                                   msg='Username already registered',\n                                   success=False,\n                                   form=create_account_form)\n\n        # Check email exists\n        user = Users.query.filter_by(email=email).first()\n        if user:\n            return render_template('accounts/register.html',\n                                   msg='Email already registered',\n                                   success=False,\n                                   form=create_account_form)\n\n        # else we can create the user\n        user = Users(**request.form)\n        db.session.add(user)\n        db.session.commit()\n\n        # Delete user from session\n        logout_user()\n        \n        return render_template('accounts/register.html',\n                               msg='Account created successfully.',\n                               success=True,\n                               form=create_account_form)\n\n    else:\n        return render_template('accounts/register.html', form=create_account_form)\n\n\n@blueprint.route('/logout')\ndef logout():\n    logout_user()\n    return redirect(url_for('authentication_blueprint.login'))\n\n\n# Errors\n\n@login_manager.unauthorized_handler\ndef unauthorized_handler():\n    return render_template('home/page-403.html'), 403\n\n\n@blueprint.errorhandler(403)\ndef access_forbidden(error):\n    return render_template('home/page-403.html'), 403\n\n\n@blueprint.errorhandler(404)\ndef not_found_error(error):\n    return render_template('home/page-404.html'), 404\n\n\n@blueprint.errorhandler(500)\ndef internal_error(error):\n    return render_template('home/page-500.html'), 500\n\n\n@blueprint.context_processor\ndef has_github():\n    return {'has_github': bool(Config.GITHUB_ID) and bool(Config.GITHUB_SECRET)}\n\n@blueprint.context_processor\ndef has_google():\n    return {'has_google': bool(Config.GOOGLE_ID) and bool(Config.GOOGLE_SECRET)}"
  },
  {
    "path": "apps/authentication/util.py",
    "content": "# -*- encoding: utf-8 -*-\n\"\"\"\nCopyright (c) 2019 - present AppSeed.us\n\"\"\"\n\nimport os\nimport hashlib\nimport binascii\n\n# Inspiration -> https://www.vitoshacademy.com/hashing-passwords-in-python/\n\n\ndef hash_pass(password):\n    \"\"\"Hash a password for storing.\"\"\"\n\n    salt = hashlib.sha256(os.urandom(60)).hexdigest().encode('ascii')\n    pwdhash = hashlib.pbkdf2_hmac('sha512', password.encode('utf-8'),\n                                  salt, 100000)\n    pwdhash = binascii.hexlify(pwdhash)\n    return (salt + pwdhash)  # return bytes\n\n\ndef verify_pass(provided_password, stored_password):\n    \"\"\"Verify a stored password against one provided by user\"\"\"\n\n    stored_password = stored_password.decode('ascii')\n    salt = stored_password[:64]\n    stored_password = stored_password[64:]\n    pwdhash = hashlib.pbkdf2_hmac('sha512',\n                                  provided_password.encode('utf-8'),\n                                  salt.encode('ascii'),\n                                  100000)\n    pwdhash = binascii.hexlify(pwdhash).decode('ascii')\n    return pwdhash == stored_password\n"
  },
  {
    "path": "apps/charts/__init__.py",
    "content": "# -*- encoding: utf-8 -*-\n\"\"\"\nCopyright (c) 2019 - present AppSeed.us\n\"\"\"\n\nfrom flask import Blueprint\n\nblueprint = Blueprint(\n    'charts_blueprint',\n    __name__,\n    url_prefix=''\n)\n"
  },
  {
    "path": "apps/charts/routes.py",
    "content": "# -*- encoding: utf-8 -*-\n\"\"\"\nCopyright (c) 2019 - present AppSeed.us\n\"\"\"\n\nfrom apps.charts import blueprint\nfrom flask import render_template\nfrom apps.models import Product\n\n@blueprint.route('/charts')\ndef charts():\n    products = [{'name': product.name, 'price': product.price} for product in Product.get_list()]\n    return render_template('charts/index.html', segment='charts', products=products)"
  },
  {
    "path": "apps/config.py",
    "content": "# -*- encoding: utf-8 -*-\n\"\"\"\nCopyright (c) 2019 - present AppSeed.us\n\"\"\"\n\nimport os\nfrom pathlib import Path\n\nclass Config(object):\n\n    BASE_DIR = Path(__file__).resolve().parent\n    \n    USERS_ROLES  = { 'ADMIN'  :1 , 'USER'      : 2 }\n    USERS_STATUS = { 'ACTIVE' :1 , 'SUSPENDED' : 2 }\n    \n    # celery \n    CELERY_BROKER_URL     = \"redis://localhost:6379\"\n    CELERY_RESULT_BACKEND = \"redis://localhost:6379\"\n    CELERY_HOSTMACHINE    = \"celery@app-generator\"\n\n    # Set up the App SECRET_KEY\n    SECRET_KEY  = os.getenv('SECRET_KEY', 'S3cret_999')\n\n    # Social AUTH context\n    SOCIAL_AUTH_GITHUB  = False\n\n    GITHUB_ID      = os.getenv('GITHUB_ID'    , None)\n    GITHUB_SECRET  = os.getenv('GITHUB_SECRET', None)\n\n    # Enable/Disable Github Social Login    \n    if GITHUB_ID and GITHUB_SECRET:\n         SOCIAL_AUTH_GITHUB  = True    \n\n    GOOGLE_ID      = os.getenv('GOOGLE_ID'    , None)\n    GOOGLE_SECRET  = os.getenv('GOOGLE_SECRET', None)\n\n    # Enable/Disable Google Social Login    \n    if GOOGLE_ID and GOOGLE_SECRET:\n         SOCIAL_AUTH_GOOGLE  = True    \n\n    SQLALCHEMY_TRACK_MODIFICATIONS = False\n\n    DB_ENGINE   = os.getenv('DB_ENGINE'   , None)\n    DB_USERNAME = os.getenv('DB_USERNAME' , None)\n    DB_PASS     = os.getenv('DB_PASS'     , None)\n    DB_HOST     = os.getenv('DB_HOST'     , None)\n    DB_PORT     = os.getenv('DB_PORT'     , None)\n    DB_NAME     = os.getenv('DB_NAME'     , None)\n\n    USE_SQLITE  = True \n\n    # try to set up a Relational DBMS\n    if DB_ENGINE and DB_NAME and DB_USERNAME:\n\n        try:\n            \n            # Relational DBMS: PSQL, MySql\n            SQLALCHEMY_DATABASE_URI = '{}://{}:{}@{}:{}/{}'.format(\n                DB_ENGINE,\n                DB_USERNAME,\n                DB_PASS,\n                DB_HOST,\n                DB_PORT,\n                DB_NAME\n            ) \n\n            USE_SQLITE  = False\n\n        except Exception as e:\n\n            print('> Error: DBMS Exception: ' + str(e) )\n            print('> Fallback to SQLite ')    \n\n    if USE_SQLITE:\n\n        # This will create a file in <app> FOLDER\n        SQLALCHEMY_DATABASE_URI = 'sqlite:///' + os.path.join(BASE_DIR, 'db.sqlite3')\n\n    DYNAMIC_DATATB = {\n        \"products\": \"apps.models.Product\"\n    }\n\n    CDN_DOMAIN = os.getenv('CDN_DOMAIN')\n    CDN_HTTPS = os.getenv('CDN_HTTPS', True)\n\nclass ProductionConfig(Config):\n    DEBUG = False\n\n    # Security\n    SESSION_COOKIE_HTTPONLY = True\n    REMEMBER_COOKIE_HTTPONLY = True\n    REMEMBER_COOKIE_DURATION = 3600\n\nclass DebugConfig(Config):\n    DEBUG = True\n\n# Load all possible configurations\nconfig_dict = {\n    'Production': ProductionConfig,\n    'Debug'     : DebugConfig\n}\n"
  },
  {
    "path": "apps/dyn_dt/__init__.py",
    "content": "# -*- encoding: utf-8 -*-\n\"\"\"\nCopyright (c) 2019 - present AppSeed.us\n\"\"\"\n\nfrom flask import Blueprint\n\nblueprint = Blueprint(\n    'table_blueprint',\n    __name__,\n    url_prefix=''\n)\n"
  },
  {
    "path": "apps/dyn_dt/routes.py",
    "content": "# -*- encoding: utf-8 -*-\n\"\"\"\nCopyright (c) 2019 - present AppSeed.us\n\"\"\"\n\nimport json, csv, io\nfrom flask_login import login_required\nfrom apps.dyn_dt import blueprint\nfrom flask import render_template, request, redirect, url_for, jsonify, make_response\nfrom apps.dyn_dt.utils import get_model_field_names, get_model_fk_values, name_to_class, user_filter, exclude_auto_gen_fields\nfrom apps import db, config\nfrom apps.dyn_dt.utils import *\nfrom sqlalchemy import and_\nfrom sqlalchemy import Integer, DateTime, String, Text\nfrom datetime import datetime\n\n@blueprint.route('/dynamic-dt')\ndef dynamic_dt():\n    context = {\n        'routes': config.Config.DYNAMIC_DATATB.keys(),\n        'segment': 'dynamic_dt'\n    }\n    return render_template('dyn_dt/index.html', **context)\n\n@blueprint.route('/create_filter/<model_name>', methods=[\"POST\"])\ndef create_filter(model_name):\n    model_name = model_name.lower()\n    if request.method == \"POST\":\n        keys = request.form.getlist('key')\n        values = request.form.getlist('value')\n        \n        for key, value in zip(keys, values):\n            filter_instance = ModelFilter.query.filter_by(parent=model_name, key=key).first()\n            if filter_instance:\n                filter_instance.value = value\n            else:\n                filter_instance = ModelFilter(parent=model_name, key=key, value=value)\n            db.session.add(filter_instance)\n        \n        db.session.commit()\n        return redirect(url_for('table_blueprint.model_dt', aPath=model_name))\n\n\n@blueprint.route('/create_page_items/<model_name>', methods=[\"POST\"])\ndef create_page_items(model_name):\n    model_name = model_name.lower()\n    if request.method == 'POST':\n        items = request.form.get('items')\n        page_items = PageItems.query.filter_by(parent=model_name).first()\n        if page_items:\n            page_items.items_per_page = items\n        else:\n            page_items = PageItems(parent=model_name, items_per_page=items)\n        db.session.add(page_items)\n        db.session.commit()\n        return redirect(url_for('table_blueprint.model_dt', aPath=model_name))\n\n\n@blueprint.route('/create_hide_show_filter/<model_name>', methods=[\"POST\"])\ndef create_hide_show_filter(model_name):\n    model_name = model_name.lower()\n    if request.method == \"POST\":\n        data_str = list(request.form.keys())[0]\n        data = json.loads(data_str)\n\n        filter_instance = HideShowFilter.query.filter_by(parent=model_name, key=data.get('key')).first()\n        if filter_instance:\n            filter_instance.value = data.get('value')\n        else:\n            filter_instance = HideShowFilter(parent=model_name, key=data.get('key'), value=data.get('value'))\n        \n        db.session.add(filter_instance)\n        db.session.commit()\n\n        return jsonify({'message': 'Model updated successfully'})\n\n\n@blueprint.route('/delete_filter/<model_name>/<int:id>', methods=[\"GET\"])\ndef delete_filter(model_name, id):\n    model_name = model_name.lower()\n    filter_instance = ModelFilter.query.filter_by(id=id, parent=model_name).first()\n    if filter_instance:\n        db.session.delete(filter_instance)\n        db.session.commit()\n        return redirect(url_for('table_blueprint.model_dt', aPath=model_name))\n    return jsonify({'error': 'Filter not found'}), 404\n\n\n@blueprint.route('/dynamic-dt/<aPath>', methods=['GET', 'POST'])\ndef model_dt(aPath):\n    aModelName = None\n    aModelClass = None\n\n    if aPath in config.Config.DYNAMIC_DATATB.keys():\n        aModelName = config.Config.DYNAMIC_DATATB[aPath]\n        aModelClass = name_to_class(aModelName)\n\n    if not aModelClass:\n        return f'ERR: Getting ModelClass for path: {aPath}', 404\n\n    # db_fields = [field.name for field in aModelClass.__table__.columns]\n    db_fields = [field.name for field in aModelClass.__table__.columns if not field.foreign_keys]\n    fk_fields = get_model_fk_values(aModelClass)\n    db_filters = []\n    for f in db_fields:\n        if f not in fk_fields.keys():\n            db_filters.append( f )\n\n    choices_dict = {}\n    for column in aModelClass.__table__.columns:\n        if isinstance(column.type, db.Enum):\n            choices_dict[column.name] = [(choice.name, choice.value) for choice in column.type.enum_class]\n\n    field_names = []\n    for field_name in db_fields:\n        field = HideShowFilter.query.filter_by(parent=aPath.lower(), key=field_name).first()\n        if field:\n            field_names.append(field)\n        else:\n            field = HideShowFilter(parent=aPath.lower(), key=field_name)\n            db.session.add(field)\n            db.session.commit()\n\n            field_names.append(field)\n\n    filter_string = []\n    filter_instance = ModelFilter.query.filter_by(parent=aPath.lower()).all()\n    for filter_data in filter_instance:\n        if filter_data.key in db_fields:\n            filter_string.append(getattr(aModelClass, filter_data.key).like(f\"%{filter_data.value}%\"))\n\n    order_by = request.args.get('order_by', 'id')\n    if order_by not in db_fields:\n        order_by = 'id'\n\n    queryset = aModelClass.query.filter(and_(*filter_string)).order_by(order_by)\n\n    # Pagination\n    page_items = PageItems.query.filter_by(parent=aPath.lower()).order_by(PageItems.id.desc()).first()\n    p_items = 25\n    if page_items:\n        p_items = page_items.items_per_page\n\n    page = request.args.get('page', 1, type=int)\n    queryset = user_filter(request, queryset, db_fields, fk_fields.keys())\n    pagination = queryset.paginate(page=page, per_page=p_items, error_out=False)\n    items = pagination.items\n\n    # Read-only and field types\n    read_only_fields = ('id', 'user_id', 'date_created', 'date_modified', )\n    integer_fields = get_model_field_names(aModelClass, Integer)\n    date_time_fields = get_model_field_names(aModelClass, DateTime)\n    text_fields = get_model_field_names(aModelClass, Text)\n    email_fields = []\n\n    # Context\n    context = {\n        'page_title': f'Dynamic DataTable - {aPath.lower().title()}',\n        'link': aPath,\n        'field_names': field_names,\n        'db_field_names': db_fields,\n        'db_filters': db_filters,\n        'items': items,\n        'pagination': pagination,\n        'page_items': p_items,\n        'filter_instance': filter_instance,\n        'read_only_fields': read_only_fields,\n        'integer_fields': integer_fields,\n        'date_time_fields': date_time_fields,\n        'email_fields': email_fields,\n        'text_fields': text_fields,\n        'fk_fields_keys': fk_fields.keys(),\n        'fk_fields': fk_fields,\n        'segment': 'dynamic_dt',\n        'choices_dict': choices_dict,\n        'exclude_auto_gen_fields': exclude_auto_gen_fields(aModelClass)\n    }\n    return render_template('dyn_dt/model.html', **context)\n\n\n@blueprint.route('/create/<aPath>', methods=[\"POST\"])\n@login_required\ndef create(aPath):\n    aModelClass = None\n\n    if aPath in config.Config.DYNAMIC_DATATB:\n        aModelName = config.Config.DYNAMIC_DATATB[aPath]\n        aModelClass = name_to_class(aModelName)\n\n    if not aModelClass:\n        return ' > ERR: Getting ModelClass for path: ' + aPath\n\n    if request.method == 'POST':\n        data = {}\n        fk_fields = get_model_fk_values(aModelClass)\n\n        for attribute, value in request.form.items():\n            if attribute in fk_fields.keys():\n                table_name = None\n                for product in fk_fields[attribute]:\n                    table_name = product.__class__.__tablename__\n                if table_name:\n                    model_name = config.Config.DYNAMIC_DATATB[table_name]\n                    value = name_to_class(model_name).query.filter_by(id=value).first()\n\n            data[attribute] = value if value else ''\n\n        new_item = aModelClass(**data)\n        db.session.add(new_item)\n        db.session.commit()\n\n    return redirect(request.referrer) \n\n\n@blueprint.route('/delete/<aPath>/<id>', methods=[\"GET\"])\n@login_required\ndef delete(aPath, id):\n    aModelClass = None\n\n    if aPath in config.Config.DYNAMIC_DATATB:\n        aModelName = config.Config.DYNAMIC_DATATB[aPath]\n        aModelClass = name_to_class(aModelName)\n\n    if not aModelClass:\n        return ' > ERR: Getting ModelClass for path: ' + aPath\n    \n    item = aModelClass.query.get(id)\n    if item:\n        db.session.delete(item)\n        db.session.commit()\n\n    return redirect(request.referrer)\n\n\n@blueprint.route('/update/<aPath>/<int:id>', methods=[\"POST\"])\n@login_required\ndef update(aPath, id):\n    aModelClass = None\n\n    if aPath in config.Config.DYNAMIC_DATATB:\n        aModelName = config.Config.DYNAMIC_DATATB[aPath]\n        aModelClass = name_to_class(aModelName)\n\n    if not aModelClass:\n        return ' > ERR: Getting ModelClass for path: ' + aPath\n\n    item = aModelClass.query.get(id)\n    if not item:\n        return 'Item not found', 404\n\n    fk_fields = get_model_fk_values(aModelClass)\n\n    if request.method == 'POST':\n        for attribute, value in request.form.items():\n            if hasattr(item, attribute) and getattr(item, attribute, value) is not None:\n                if attribute in fk_fields.keys():\n                    table_name = None\n                    for product in fk_fields[attribute]:\n                        table_name = product.__class__.__tablename__\n                    if table_name:\n                        model_name = config.Config.DYNAMIC_DATATB[table_name]\n                        value = name_to_class(model_name).query.filter_by(id=value).first()\n\n                setattr(item, attribute, value)\n        \n        db.session.commit()\n\n    return redirect(request.referrer)\n\n\n@blueprint.route('/export/<aPath>', methods=['GET'])\ndef export_csv(aPath):\n    aModelName = None\n    aModelClass = None\n\n    if aPath in config.Config.DYNAMIC_DATATB:\n        aModelName = config.Config.DYNAMIC_DATATB[aPath]\n        aModelClass = name_to_class(aModelName)\n\n    if not aModelClass:\n        return ' > ERR: Getting ModelClass for path: ' + aPath, 400\n\n    db_field_names = [column.name for column in aModelClass.__table__.columns]\n    fk_fields = get_model_fk_values(aModelClass)\n\n    fields = []\n    show_fields = HideShowFilter.query.filter_by(value=False, parent=aPath.lower()).all()\n    for field in show_fields:\n        if field.key in db_field_names:\n            fields.append(field.key)\n        else:\n            print(f\"Field {field.key} does not exist in {aModelClass} model.\")\n\n\n    output = io.StringIO()\n    writer = csv.writer(output)\n    writer.writerow(fields)\n\n    # Filtering\n    filter_string = {}\n    filter_instance = ModelFilter.query.filter_by(parent=aPath.lower()).all()\n    for filter_data in filter_instance:\n        filter_string[f'{filter_data.key}__icontains'] = filter_data.value\n\n    # Ordering\n    order_by = request.args.get('order_by', 'id')\n    query = aModelClass.query.filter_by(**filter_string).order_by(order_by)\n    items = user_filter(request, query, db_field_names, fk_fields)\n\n    # Write rows to CSV\n    for item in items:\n        row_data = []\n        for field in fields:\n            try:\n                row_data.append(getattr(item, field))\n            except AttributeError:\n                row_data.append('')\n        writer.writerow(row_data)\n\n    # Prepare response with CSV content\n    response = make_response(output.getvalue())\n    response.headers['Content-Type'] = 'text/csv'\n    response.headers['Content-Disposition'] = f'attachment; filename=\"{aPath.lower()}.csv\"'\n\n    return response\n\n\n# Template filter\n\n@blueprint.app_template_filter('getattribute')\ndef getattribute(value, arg):\n    try:\n        attr_value = getattr(value, arg)\n        \n        if isinstance(attr_value, datetime):\n            return attr_value.strftime(\"%Y-%m-%d %H:%M:%S\")\n        \n        return attr_value\n    except AttributeError:\n        return ''\n    \n\n@blueprint.app_template_filter('getenumattribute')\ndef getenumattribute(value, arg):\n    try:\n        attr_value = getattr(value, arg)\n        return attr_value.value\n    except AttributeError:\n        return ''\n\n\n@blueprint.app_template_filter('get')\ndef get(dict_data, key):\n    return dict_data.get(key, [])\n"
  },
  {
    "path": "apps/dyn_dt/utils.py",
    "content": "# -*- encoding: utf-8 -*-\n\"\"\"\nCopyright (c) 2019 - present AppSeed.us\n\"\"\"\n\nimport importlib\nfrom sqlalchemy import or_\nfrom sqlalchemy import DateTime, func\nfrom apps import db \n\nclass PageItems(db.Model):\n    __tablename__ = 'page_items'\n    id = db.Column(db.Integer, primary_key=True)\n    parent = db.Column(db.String(255), nullable=True)\n    items_per_page = db.Column(db.Integer, default=25)\n\n\nclass HideShowFilter(db.Model):\n    __tablename__ = 'hide_show_filter'\n    id = db.Column(db.Integer, primary_key=True)\n    parent = db.Column(db.String(255), nullable=True)\n    key = db.Column(db.String(255), nullable=False)\n    value = db.Column(db.Boolean, default=False)\n\n\nclass ModelFilter(db.Model):\n    __tablename__ = 'model_filter'\n    id = db.Column(db.Integer, primary_key=True)\n    parent = db.Column(db.String(255), nullable=True)\n    key = db.Column(db.String(255), nullable=False)\n    value = db.Column(db.String(255), nullable=False)\n\n\ndef get_model_fk_values(aModelClass):\n    fk_values = {}\n\n    current_table_name = aModelClass.__tablename__\n\n    for relationship in aModelClass.__mapper__.relationships:\n        if relationship.direction.name == 'MANYTOONE':\n            related_model = relationship.mapper.class_\n            foreign_key_column = list(relationship.local_columns)[0]\n            referenced_table_name = list(foreign_key_column.foreign_keys)[0].column.table.name\n\n            if referenced_table_name != current_table_name:\n                field_name = relationship.key\n                related_instances = related_model.query.all()\n                fk_values[field_name] = related_instances\n\n    return fk_values\n\n\ndef get_model_field_names(model, field_type):\n    \"\"\"Returns a list of field names based on the given field type in SQLAlchemy.\"\"\"\n    return [\n        column.name for column in model.__table__.columns\n        if isinstance(column.type, field_type)\n    ]\n\n\ndef name_to_class(name: str):\n    try:\n        module_name = '.'.join(name.split('.')[:-1])\n        class_name = name.split('.')[-1]\n\n        module = importlib.import_module(module_name)\n        return getattr(module, class_name)\n    except Exception as e:\n        print(f\"Error importing {name}: {e}\")\n        return None\n\n\ndef user_filter(request, query, fields, fk_fields=[]):\n    value = request.args.get('search')\n\n    if value:\n        dynamic_filter = []\n\n        for field in fields:\n            if field not in fk_fields:\n                dynamic_filter.append(getattr(query.column_descriptions[0]['entity'], field).ilike(f\"%{value}%\"))\n\n        query = query.filter(or_(*dynamic_filter))\n\n    return query\n\n\ndef exclude_auto_gen_fields(aModelClass):\n    exclude_fields = [\n        field.name for field in aModelClass.__table__.columns \n        if isinstance(field.type, DateTime) and (\n            field.default is not None or\n            field.server_default is not None or\n            field.onupdate is not None or\n            isinstance(field.default, func) or\n            isinstance(field.onupdate, func)\n        )\n    ]\n    return exclude_fields\n"
  },
  {
    "path": "apps/exceptions/exception.py",
    "content": "# -*- encoding: utf-8 -*-\n\"\"\"\nCopyright (c) 2019 - present AppSeed.us\n\"\"\"\n\nclass InvalidUsage(Exception):\n    status_code = 400\n\n    def __init__(self, message, status_code=None, payload=None):\n        Exception.__init__(self)\n        self.message = message\n        if status_code is not None:\n            self.status_code = status_code\n        self.payload = payload\n\n    def to_dict(self):\n        rv = dict(self.payload or ())\n        rv['message'] = self.message\n\n        return rv"
  },
  {
    "path": "apps/helpers.py",
    "content": "# -*- encoding: utf-8 -*-\n\"\"\"\nCopyright (c) 2019 - present AppSeed.us\n\"\"\"\n\nimport os, re, uuid\nfrom colorama import Fore, Style\nfrom apps.authentication.models import Users\nfrom apps.config import Config\nfrom marshmallow import ValidationError\nfrom apps.messages import Messages\nfrom functools import wraps\nfrom flask import request\nfrom uuid import uuid4\nimport datetime, time\nmessage = Messages.message\n\nCurrency = Config.CURRENCY\nPAYMENT_TYPE = Config.PAYMENT_TYPE\nSTATE = Config.STATE\n\n\nregex = re.compile(r'([A-Za-z0-9]+[.-_])*[A-Za-z0-9]+@[A-Za-z0-9-]+(\\.[A-Z|a-z]{2,})+')\n\ndef get_ts():\n    return int(time.time())\n\ndef password_validate(password):\n    \"\"\" password validate \"\"\"\n    msg = ''\n    while True:\n        if len(password) < 6:\n           msg = \"Make sure your password is at lest 6 letters\"\n           return msg\n        elif re.search('[0-9]',password) is None:\n            msg = \"Make sure your password has a number in it\"\n            return msg\n        elif re.search('[A-Z]',password) is None: \n            msg = \"Make sure your password has a capital letter in it\"\n            return msg\n        else:\n            msg = True\n            break\n        \n    return True\n\ndef emailValidate(email):\n    \"\"\" validate email  \"\"\"\n    if re.fullmatch(regex, email):\n        return True\n    else:\n        return False\n\n# santise file name\ndef sanitise_fille_name(value):\n    \"\"\" remove special char  \"\"\"\n    return value.strip().lower().replace(' ', '_').replace('(', '').replace(')', '').replace(',', '').replace('=','_').replace('-', '_').replace('#', '')\n\ndef createFolder(folder_name):\n    \"\"\" create folder for save csv \"\"\"\n    if not os.path.exists(f'{folder_name}'):\n        os.makedirs(f'{folder_name}')\n\n    return folder_name\n\n\ndef uniqueFileName(file_name):\n    \"\"\" for Unique file name\"\"\"\n    file_uuid = uuid.uuid4()\n    IMAGE_NAME = f'{file_uuid}-{file_name}'\n    return IMAGE_NAME\n\ndef serverImageUrl(file_name):\n    \"\"\" for Unique file name\"\"\"\n    url = f'{FTP_IMAGE_URL}{file_name}'\n    return url\n\ndef errorColor(error):\n    \"\"\" for terminal input error color \"\"\"\n    print(Fore.RED + f'{error}')\n    print(Style.RESET_ALL)\n    return True\n\ndef splitUrlGetFilename(url):\n    \"\"\" image url split and get file name  \"\"\"\n    return url.split('/')[-1]\n\ndef validateCurrency(currency):\n    \"\"\" check currency  \"\"\"\n    # if check currency validate or not\n    if currency not in list(Currency.keys()):\n        raise ValidationError(\n            f\"{message['invalid_currency']}, expected {','.join(Currency.keys())}\", 422)\n\ndef validatePaymentMethod(payment):\n    \"\"\" check valid payment methods  \"\"\"\n    # if check PAYMENT_TYPE validate or not\n    if payment not in list(PAYMENT_TYPE.keys()):\n        raise ValidationError(\n            f\"{message['invalid_payment_method']}, expected {expectedValue(PAYMENT_TYPE)}\", 422)\n        \n    else:\n        value = 0\n        if payment == \"cc\":\n            value =  1\n        elif payment == \"paypal\":\n            value = 2\n        else:\n            value = 3\n\n    return value \n\ndef validateState(state):\n    \"\"\" check valid state methods  \"\"\"\n    # if check state  validate or not\n    if state not in list(STATE.keys()):\n        raise ValidationError(\n            f\"{message['invalid_state']}, expected {expectedValue(STATE)}\", 422)\n        \n    else:\n        value = 0\n        if state == \"completed\":\n            value =  1\n        elif state == \"pending\":\n            value = 2\n        else:\n            value = 3\n\n    return value \n\n \ndef expectedValue(data):\n    \"\"\" key get values \"\"\"\n    values = []\n    for k,v in data.items():\n        values.append(f'{v}.({k})')\n\n    return \",\".join(values)\n\n\ndef createAccessToken():\n    \"\"\" create access token w\"\"\"\n    rand_token = uuid4()\n\n    return f\"{str(rand_token)}\"\n\n\n# token validate\ndef token_required(f):\n    \"\"\" check token \"\"\"\n    @wraps(f)\n    def decorated(*args, **kwargs):\n        token = None\n        if \"Authorization\" in request.headers:\n            token = request.headers[\"Authorization\"]\n        if not token:\n            return {\n                \"message\": \"Authentication Token is missing!\",\n                \"error\": \"Unauthorized\"\n            }, 401\n        try:\n            current_user = Users.find_by_api_token(token)\n            if current_user is None:\n                return {\n                \"message\": \"Invalid Authentication token!\",\n                \"error\": \"Unauthorized\"\n            }, 401\n            # if not current_user[\"active\"]:\n            #     abort(403)\n        except Exception as e:\n            return {\n                \"message\": \"Something went wrong\",\n                \"error\": str(e)\n            }, 500\n\n        return f(current_user, **kwargs)\n\n    return decorated\n"
  },
  {
    "path": "apps/home/__init__.py",
    "content": "# -*- encoding: utf-8 -*-\n\"\"\"\nCopyright (c) 2019 - present AppSeed.us\n\"\"\"\n\nfrom flask import Blueprint\n\nblueprint = Blueprint(\n    'home_blueprint',\n    __name__,\n    url_prefix=''\n)\n"
  },
  {
    "path": "apps/home/routes.py",
    "content": "# -*- encoding: utf-8 -*-\n\"\"\"\nCopyright (c) 2019 - present AppSeed.us\n\"\"\"\n\nfrom apps.home import blueprint\nfrom flask import render_template, request\nfrom flask_login import login_required, current_user\nfrom jinja2 import TemplateNotFound\n\n\n@blueprint.route('/index')\n@login_required\ndef index():\n\n    return render_template('home/index.html', \n                           segment='index', \n                           user_id=current_user.id)\n\n@blueprint.route('/<template>')\n@login_required\ndef route_template(template):\n\n    try:\n\n        if not template.endswith('.html'):\n            template += '.html'\n\n        # Detect the current page\n        segment = get_segment(request)\n\n        # Serve the file (if exists) from app/templates/home/FILE.html\n        return render_template(\"home/\" + template, segment=segment)\n\n    except TemplateNotFound:\n        return render_template('home/page-404.html'), 404\n\n    except:\n        return render_template('home/page-500.html'), 500\n\n\n# Helper - Extract current page name from request\ndef get_segment(request):\n\n    try:\n\n        segment = request.path.split('/')[-1]\n\n        if segment == '':\n            segment = 'index'\n\n        return segment\n\n    except:\n        return None\n"
  },
  {
    "path": "apps/models.py",
    "content": "# -*- encoding: utf-8 -*-\n\"\"\"\nCopyright (c) 2019 - present AppSeed.us\n\"\"\"\n\nfrom email.policy import default\nfrom apps import db\nfrom sqlalchemy.exc import SQLAlchemyError\nfrom apps.exceptions.exception import InvalidUsage\nimport datetime as dt\nfrom sqlalchemy.orm import relationship\nfrom enum import Enum\n\nclass CURRENCY_TYPE(Enum):\n    usd = 'usd'\n    eur = 'eur'\n\nclass Product(db.Model):\n\n    __tablename__ = 'products'\n\n    id            = db.Column(db.Integer,      primary_key=True)\n    name          = db.Column(db.String(128),  nullable=False)\n    info          = db.Column(db.Text,         nullable=True)\n    price         = db.Column(db.Integer,      nullable=False)\n    currency      = db.Column(db.Enum(CURRENCY_TYPE), default=CURRENCY_TYPE.usd, nullable=False)\n\n    date_created  = db.Column(db.DateTime,     default=dt.datetime.utcnow())\n    date_modified = db.Column(db.DateTime,     default=db.func.current_timestamp(),\n                                               onupdate=db.func.current_timestamp())\n    \n    def __init__(self, **kwargs):\n        super(Product, self).__init__(**kwargs)\n\n    def __repr__(self):\n        return f\"{self.name} / ${self.price}\"\n\n    @classmethod\n    def find_by_id(cls, _id: int) -> \"Product\":\n        return cls.query.filter_by(id=_id).first() \n\n    @classmethod\n    def get_list(cls):\n        return cls.query.all()\n\n    def save(self) -> None:\n        try:\n            db.session.add(self)\n            db.session.commit()\n        except SQLAlchemyError as e:\n            db.session.rollback()\n            db.session.close()\n            error = str(e.__dict__['orig'])\n            raise InvalidUsage(error, 422)\n\n    def delete(self) -> None:\n        try:\n            db.session.delete(self)\n            db.session.commit()\n        except SQLAlchemyError as e:\n            db.session.rollback()\n            db.session.close()\n            error = str(e.__dict__['orig'])\n            raise InvalidUsage(error, 422)\n        return\n"
  },
  {
    "path": "build.sh",
    "content": "#!/usr/bin/env bash\n# exit on error\nset -o errexit\n\npython -m pip install --upgrade pip\n\npip install -r requirements.txt\n"
  },
  {
    "path": "docker-compose.yml",
    "content": "version: '3.8'\nservices:\n  appseed-app:\n    container_name: appseed_app\n    restart: always\n    build: .\n    networks:\n      - db_network\n      - web_network\n  nginx:\n    container_name: nginx\n    restart: always\n    image: \"nginx:latest\"\n    ports:\n      - \"5085:5085\"\n    volumes:\n      - ./nginx:/etc/nginx/conf.d\n    networks:\n      - web_network\n    depends_on: \n      - appseed-app\nnetworks:\n  db_network:\n    driver: bridge\n  web_network:\n    driver: bridge\n "
  },
  {
    "path": "env.sample",
    "content": "# True in development, False in production\nDEBUG=True\n\nFLASK_APP=run.py\nFLASK_ENV=development\n\n# If not provided, a random one is generated \n# SECRET_KEY=<YOUR_SUPER_KEY_HERE>\n\n# If DB credentials (if NOT provided, or wrong values SQLite is used) \n# DB_ENGINE=mysql\n# DB_HOST=localhost\n# DB_NAME=appseed_db\n# DB_USERNAME=appseed_db_usr\n# DB_PASS=pass\n# DB_PORT=3306\n\n# Used for CDN (in production)\n# No Slash at the end\nASSETS_ROOT=/static/assets\n\n# SOCIAL AUTH Github\n# GITHUB_ID=YOUR_GITHUB_ID\n# GITHUB_SECRET=YOUR_GITHUB_SECRET\n"
  },
  {
    "path": "gunicorn-cfg.py",
    "content": "# -*- encoding: utf-8 -*-\n\"\"\"\nCopyright (c) 2019 - present AppSeed.us\n\"\"\"\n\nbind = '0.0.0.0:5005'\nworkers = 1\naccesslog = '-'\nloglevel = 'debug'\ncapture_output = True\nenable_stdio_inheritance = True\n"
  },
  {
    "path": "nginx/appseed-app.conf",
    "content": "upstream webapp {\n    server appseed_app:5005;\n}\n\nserver {\n    listen 5085;\n    server_name localhost;\n\n    location / {\n        proxy_pass http://webapp;\n        proxy_set_header Host $host:$server_port;\n        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;\n    }\n\n}\n"
  },
  {
    "path": "package.json",
    "content": "{\n  \"name\": \"flask-datta-able\",\n  \"version\": \"1.0.0\",\n  \"description\": \"\",\n  \"main\": \"index.js\",\n  \"scripts\": {\n    \"dev\": \"vite build --watch --mode development\",\n    \"build\": \"vite build --mode production && npm run minify-css\",\n    \"minify-css\": \"postcss static/assets/css/*.css --dir static/assets/css --no-map --ext .min.css\"\n  },\n  \"keywords\": [],\n  \"author\": \"\",\n  \"license\": \"ISC\",\n  \"devDependencies\": {\n    \"autoprefixer\": \"^10.4.20\",\n    \"cssnano\": \"^7.0.6\",\n    \"postcss\": \"^8.5.3\",\n    \"postcss-cli\": \"^11.0.0\",\n    \"sass\": \"^1.85.1\",\n    \"vite\": \"^6.2.0\"\n  }\n}"
  },
  {
    "path": "postcss.config.js",
    "content": "module.exports = {\n    plugins: [\n        require('cssnano')({\n            preset: 'default',\n        }),\n    ],\n};\n"
  },
  {
    "path": "render.yaml",
    "content": "services:\n  - type: web\n    name: flask-volt\n    plan: starter\n    env: python\n    region: frankfurt  # region should be same as your database region.\n    buildCommand: \"./build.sh\"\n    startCommand: \"gunicorn run:app\"\n    envVars:\n      - key: SECRET_KEY\n        generateValue: true\n      - key: WEB_CONCURRENCY\n        value: 4\n"
  },
  {
    "path": "requirements.txt",
    "content": "# core\nflask==3.1.0\nWerkzeug==3.1.3\njinja2==3.1.6\nWTForms==3.2.1\nflask_wtf==1.2.2\n\n# DB\nflask_migrate==4.1.0\nflask_sqlalchemy==3.1.1\nsqlalchemy==2.0.38\n\n# tools\nflask_login==0.6.3\nflask-dance==7.1.0\ncelery==5.4.0\nredis==5.2.1\ncolorama==0.4.6\nPyJWT~=2.10.1\nWTForms-Alchemy==0.19.0\n\n# utils\nemail_validator==2.2.0\nblinker==1.9.0\n\n# env\npython-dotenv==1.0.1\n\n# deployment\ngunicorn==23.0.0\nFlask-Minify==0.49\nFlask-CDN==1.5.3\n\n# flask_mysqldb\n# psycopg2-binary\n"
  },
  {
    "path": "run.py",
    "content": "# -*- encoding: utf-8 -*-\n\"\"\"\nCopyright (c) 2019 - present AppSeed.us\n\"\"\"\n\nimport os\nfrom   flask_migrate import Migrate\nfrom   flask_minify  import Minify\nfrom   sys import exit\n\nfrom apps.config import config_dict\nfrom apps import create_app, db\n\n# WARNING: Don't run with debug turned on in production!\nDEBUG = (os.getenv('DEBUG', 'False') == 'True')\n\n# The configuration\nget_config_mode = 'Debug' if DEBUG else 'Production'\n\ntry:\n\n    # Load the configuration using the default values\n    app_config = config_dict[get_config_mode.capitalize()]\n\nexcept KeyError:\n    exit('Error: Invalid <config_mode>. Expected values [Debug, Production] ')\n\napp = create_app(app_config)\n\n# Create tables & Fallback to SQLite\nwith app.app_context():\n    \n    try:\n        db.create_all()\n    except Exception as e:\n\n        print('> Error: DBMS Exception: ' + str(e) )\n\n        # fallback to SQLite\n        basedir = os.path.abspath(os.path.dirname(__file__))\n        app.config['SQLALCHEMY_DATABASE_URI'] = SQLALCHEMY_DATABASE_URI = 'sqlite:///' + os.path.join(basedir, 'db.sqlite3')\n\n        print('> Fallback to SQLite ')\n        db.create_all()\n\n# Apply all changes\nMigrate(app, db)\n\nif not DEBUG:\n    Minify(app=app, html=True, js=False, cssless=False)\n    \nif DEBUG:\n    app.logger.info('DEBUG            = ' + str(DEBUG)             )\n    app.logger.info('Page Compression = ' + 'FALSE' if DEBUG else 'TRUE' )\n    app.logger.info('DBMS             = ' + app_config.SQLALCHEMY_DATABASE_URI)\n\nif __name__ == \"__main__\":\n    app.run()\n"
  },
  {
    "path": "static/assets/.gitkeep",
    "content": ""
  },
  {
    "path": "static/assets/css/volt.css",
    "content": "/*\n\n=========================================================\n* Volt - Free Bootstrap 5 Dashboard\n=========================================================\n\n* Product Page: https://themesberg.com/product/admin-dashboard/volt-bootstrap-5-dashboard\n* Copyright 2021 Themesberg (https://www.themesberg.com)\n\n* Designed and coded by https://themesberg.com\n\n=========================================================\n\n* The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. Please contact us to request a removal. Contact us if you want to remove it.\n\n*/\n@import url(\"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap\");\n.datepicker {\n  display: none; }\n  .datepicker.active {\n    display: block; }\n\n.datepicker-dropdown {\n  position: absolute;\n  top: 0;\n  left: 0;\n  z-index: 20;\n  padding-top: 4px; }\n  .datepicker-dropdown.datepicker-orient-top {\n    padding-top: 0;\n    padding-bottom: 4px; }\n\n.datepicker-picker {\n  display: inline-block;\n  border-radius: 4px;\n  background-color: #ffffff; }\n  .datepicker-dropdown .datepicker-picker {\n    box-shadow: 0 2px 3px rgba(17, 24, 39, 0.1), 0 0 0 1px rgba(17, 24, 39, 0.1); }\n  .datepicker-picker span {\n    display: block;\n    flex: 1;\n    border: 0;\n    border-radius: 4px;\n    cursor: default;\n    text-align: center;\n    -webkit-touch-callout: none;\n    -webkit-user-select: none;\n            user-select: none; }\n\n.datepicker-main {\n  padding: 2px; }\n\n.datepicker-footer {\n  box-shadow: inset 0 1px 1px rgba(17, 24, 39, 0.1);\n  background-color: #9CA3AF; }\n\n.datepicker-controls, .datepicker-view, .datepicker-view .days-of-week, .datepicker-grid {\n  display: flex; }\n\n.datepicker-grid {\n  flex-wrap: wrap; }\n\n.datepicker-view .dow, .datepicker-view .days .datepicker-cell {\n  flex-basis: 14.28571%; }\n\n.datepicker-view.datepicker-grid .datepicker-cell {\n  flex-basis: 25%; }\n\n.datepicker-view .week, .datepicker-cell {\n  height: 2.25rem;\n  line-height: 2.25rem; }\n\n.datepicker-title {\n  box-shadow: inset 0 -1px 1px rgba(17, 24, 39, 0.1);\n  background-color: #9CA3AF;\n  padding: 0.375rem 0.75rem;\n  text-align: center;\n  font-weight: 700; }\n\n.datepicker-header .datepicker-controls {\n  padding: 2px 2px 0; }\n\n.datepicker-controls .button {\n  display: inline-flex;\n  position: relative;\n  align-items: center;\n  justify-content: center;\n  margin: 0;\n  border: 1px solid #808998;\n  border-radius: 4px;\n  box-shadow: none;\n  background-color: #ffffff;\n  cursor: pointer;\n  padding: calc(0.375em - 1px) 0.75em;\n  height: 2.25em;\n  vertical-align: top;\n  text-align: center;\n  line-height: 1.5;\n  white-space: nowrap;\n  color: #1F2937;\n  font-size: 1rem; }\n  .datepicker-controls .button:focus, .datepicker-controls .button:active {\n    outline: none; }\n  .datepicker-controls .button:hover {\n    border-color: #5b6371;\n    color: #1F2937; }\n  .datepicker-controls .button:focus {\n    border-color: #3273dc;\n    color: #1F2937; }\n    .datepicker-controls .button:focus:not(:active) {\n      box-shadow: 0 0 0 0.125em rgba(50, 115, 220, 0.25); }\n  .datepicker-controls .button:active {\n    border-color: #384f80;\n    color: #1F2937; }\n  .datepicker-controls .button[disabled] {\n    cursor: not-allowed; }\n  .datepicker-header .datepicker-controls .button {\n    border-color: transparent;\n    font-weight: bold; }\n    .datepicker-header .datepicker-controls .button:hover {\n      background-color: #f9f9f9; }\n    .datepicker-header .datepicker-controls .button:focus:not(:active) {\n      box-shadow: 0 0 0 0.125em rgba(255, 255, 255, 0.25); }\n    .datepicker-header .datepicker-controls .button:active {\n      background-color: #f2f2f2; }\n    .datepicker-header .datepicker-controls .button[disabled] {\n      box-shadow: none; }\n  .datepicker-footer .datepicker-controls .button {\n    margin: calc(0.375rem - 1px) 0.375rem;\n    border-radius: 2px;\n    width: 100%;\n    font-size: 0.75rem; }\n\n.datepicker-controls .view-switch {\n  flex: auto; }\n\n.datepicker-controls .prev-btn,\n.datepicker-controls .next-btn {\n  padding-right: 0.375rem;\n  padding-left: 0.375rem;\n  width: 2.25rem; }\n  .datepicker-controls .prev-btn.disabled,\n  .datepicker-controls .next-btn.disabled {\n    visibility: hidden; }\n\n.datepicker-view .dow {\n  height: 1.5rem;\n  line-height: 1.5rem;\n  font-size: 0.875rem;\n  font-weight: 700; }\n\n.datepicker-view .week {\n  width: 2.25rem;\n  color: #5b6371;\n  font-size: 0.75rem; }\n  @media (max-width: 22.5rem) {\n    .datepicker-view .week {\n      width: 1.96875rem; } }\n\n.datepicker-grid {\n  width: 15.75rem; }\n  @media (max-width: 22.5rem) {\n    .calendar-weeks + .days .datepicker-grid {\n      width: 13.78125rem; } }\n\n.datepicker-cell:not(.disabled):hover {\n  background-color: #f9f9f9;\n  cursor: pointer; }\n\n.datepicker-cell.focused:not(.selected) {\n  background-color: #8e96a4; }\n\n.datepicker-cell.selected, .datepicker-cell.selected:hover {\n  background-color: #3273dc;\n  color: #fff;\n  font-weight: 600; }\n\n.datepicker-cell.disabled {\n  color: #808998; }\n\n.datepicker-cell.prev:not(.disabled), .datepicker-cell.next:not(.disabled) {\n  color: #7a7a7a; }\n\n.datepicker-cell.prev.selected, .datepicker-cell.next.selected {\n  color: #e6e6e6; }\n\n.datepicker-cell.highlighted:not(.selected):not(.range):not(.today) {\n  border-radius: 0;\n  background-color: #9CA3AF; }\n  .datepicker-cell.highlighted:not(.selected):not(.range):not(.today):not(.disabled):hover {\n    background-color: #959ca9; }\n  .datepicker-cell.highlighted:not(.selected):not(.range):not(.today).focused {\n    background-color: #8e96a4; }\n\n.datepicker-cell.today:not(.selected) {\n  background-color: #00d1b2; }\n  .datepicker-cell.today:not(.selected):not(.disabled) {\n    color: #fff; }\n\n.datepicker-cell.today.focused:not(.selected) {\n  background-color: #00c4a7; }\n\n.datepicker-cell.range-start:not(.selected), .datepicker-cell.range-end:not(.selected) {\n  background-color: #5b6371;\n  color: #fff; }\n\n.datepicker-cell.range-start.focused:not(.selected), .datepicker-cell.range-end.focused:not(.selected) {\n  background-color: #555d69; }\n\n.datepicker-cell.range-start {\n  border-radius: 4px 0 0 4px; }\n\n.datepicker-cell.range-end {\n  border-radius: 0 4px 4px 0; }\n\n.datepicker-cell.range {\n  border-radius: 0;\n  background-color: #808998; }\n  .datepicker-cell.range:not(.disabled):not(.focused):not(.today):hover {\n    background-color: #798293; }\n  .datepicker-cell.range.disabled {\n    color: #666f7f; }\n  .datepicker-cell.range.focused {\n    background-color: #727c8d; }\n\n.datepicker-view.datepicker-grid .datepicker-cell {\n  height: 4.5rem;\n  line-height: 4.5rem; }\n\n.datepicker-input.in-edit {\n  border-color: #2366d1; }\n  .datepicker-input.in-edit:focus, .datepicker-input.in-edit:active {\n    box-shadow: 0 0 0.25em 0.25em rgba(35, 102, 209, 0.2); }\n\n.ct-label {\n  fill: rgba(0, 0, 0, 0.4);\n  color: rgba(0, 0, 0, 0.4);\n  font-size: 0.75rem;\n  line-height: 1; }\n\n.ct-chart-line .ct-label,\n.ct-chart-bar .ct-label {\n  display: block;\n  display: flex; }\n\n.ct-chart-pie .ct-label,\n.ct-chart-donut .ct-label {\n  dominant-baseline: central; }\n\n.ct-label.ct-horizontal.ct-start {\n  align-items: flex-end;\n  justify-content: flex-start;\n  text-align: left;\n  text-anchor: start; }\n\n.ct-label.ct-horizontal.ct-end {\n  align-items: flex-start;\n  justify-content: flex-start;\n  text-align: left;\n  text-anchor: start; }\n\n.ct-label.ct-vertical.ct-start {\n  align-items: flex-end;\n  justify-content: flex-end;\n  text-align: right;\n  text-anchor: end; }\n\n.ct-label.ct-vertical.ct-end {\n  align-items: flex-end;\n  justify-content: flex-start;\n  text-align: left;\n  text-anchor: start; }\n\n.ct-chart-bar .ct-label.ct-horizontal.ct-start {\n  align-items: flex-end;\n  justify-content: center;\n  text-align: center;\n  text-anchor: start; }\n\n.ct-chart-bar .ct-label.ct-horizontal.ct-end {\n  align-items: flex-start;\n  justify-content: center;\n  text-align: center;\n  text-anchor: start; }\n\n.ct-chart-bar.ct-horizontal-bars .ct-label.ct-horizontal.ct-start {\n  align-items: flex-end;\n  justify-content: flex-start;\n  text-align: left;\n  text-anchor: start; }\n\n.ct-chart-bar.ct-horizontal-bars .ct-label.ct-horizontal.ct-end {\n  align-items: flex-start;\n  justify-content: flex-start;\n  text-align: left;\n  text-anchor: start; }\n\n.ct-chart-bar.ct-horizontal-bars .ct-label.ct-vertical.ct-start {\n  align-items: center;\n  justify-content: flex-end;\n  text-align: right;\n  text-anchor: end; }\n\n.ct-chart-bar.ct-horizontal-bars .ct-label.ct-vertical.ct-end {\n  align-items: center;\n  justify-content: flex-start;\n  text-align: left;\n  text-anchor: end; }\n\n.ct-grid {\n  stroke: rgba(0, 0, 0, 0.2);\n  stroke-width: 1px;\n  stroke-dasharray: 2px; }\n\n.ct-grid-background {\n  fill: none; }\n\n.ct-point {\n  stroke-width: 10px;\n  stroke-linecap: round; }\n\n.ct-line {\n  fill: none;\n  stroke-width: 4px; }\n\n.ct-area {\n  stroke: none;\n  fill-opacity: 0.1; }\n\n.ct-bar {\n  fill: none;\n  stroke-width: 10px; }\n\n.ct-slice-donut {\n  fill: none;\n  stroke-width: 60px; }\n\n.ct-series-a .ct-point, .ct-series-a .ct-line, .ct-series-a .ct-bar, .ct-series-a .ct-slice-donut {\n  stroke: #262B40; }\n\n.ct-series-a .ct-slice-pie, .ct-series-a .ct-slice-donut-solid, .ct-series-a .ct-area {\n  fill: #262B40; }\n\n.ct-series-b .ct-point, .ct-series-b .ct-line, .ct-series-b .ct-bar, .ct-series-b .ct-slice-donut {\n  stroke: #F8BD7A; }\n\n.ct-series-b .ct-slice-pie, .ct-series-b .ct-slice-donut-solid, .ct-series-b .ct-area {\n  fill: #F8BD7A; }\n\n.ct-series-c .ct-point, .ct-series-c .ct-line, .ct-series-c .ct-bar, .ct-series-c .ct-slice-donut {\n  stroke: #2CA58D; }\n\n.ct-series-c .ct-slice-pie, .ct-series-c .ct-slice-donut-solid, .ct-series-c .ct-area {\n  fill: #2CA58D; }\n\n.ct-series-d .ct-point, .ct-series-d .ct-line, .ct-series-d .ct-bar, .ct-series-d .ct-slice-donut {\n  stroke: #31316A; }\n\n.ct-series-d .ct-slice-pie, .ct-series-d .ct-slice-donut-solid, .ct-series-d .ct-area {\n  fill: #31316A; }\n\n.ct-series-e .ct-point, .ct-series-e .ct-line, .ct-series-e .ct-bar, .ct-series-e .ct-slice-donut {\n  stroke: #C96480; }\n\n.ct-series-e .ct-slice-pie, .ct-series-e .ct-slice-donut-solid, .ct-series-e .ct-area {\n  fill: #C96480; }\n\n.ct-series-f .ct-point, .ct-series-f .ct-line, .ct-series-f .ct-bar, .ct-series-f .ct-slice-donut {\n  stroke: #ffffff; }\n\n.ct-series-f .ct-slice-pie, .ct-series-f .ct-slice-donut-solid, .ct-series-f .ct-area {\n  fill: #ffffff; }\n\n.ct-series-g .ct-point, .ct-series-g .ct-line, .ct-series-g .ct-bar, .ct-series-g .ct-slice-donut {\n  stroke: #F8BD7A; }\n\n.ct-series-g .ct-slice-pie, .ct-series-g .ct-slice-donut-solid, .ct-series-g .ct-area {\n  fill: #F8BD7A; }\n\n.ct-square {\n  display: block;\n  position: relative;\n  width: 100%; }\n  .ct-square:before {\n    display: block;\n    float: left;\n    content: \"\";\n    width: 0;\n    height: 0;\n    padding-bottom: 100%; }\n  .ct-square:after {\n    content: \"\";\n    display: table;\n    clear: both; }\n  .ct-square > svg {\n    display: block;\n    position: absolute;\n    top: 0;\n    left: 0; }\n\n.ct-minor-second {\n  display: block;\n  position: relative;\n  width: 100%; }\n  .ct-minor-second:before {\n    display: block;\n    float: left;\n    content: \"\";\n    width: 0;\n    height: 0;\n    padding-bottom: 93.75%; }\n  .ct-minor-second:after {\n    content: \"\";\n    display: table;\n    clear: both; }\n  .ct-minor-second > svg {\n    display: block;\n    position: absolute;\n    top: 0;\n    left: 0; }\n\n.ct-major-second {\n  display: block;\n  position: relative;\n  width: 100%; }\n  .ct-major-second:before {\n    display: block;\n    float: left;\n    content: \"\";\n    width: 0;\n    height: 0;\n    padding-bottom: 88.88889%; }\n  .ct-major-second:after {\n    content: \"\";\n    display: table;\n    clear: both; }\n  .ct-major-second > svg {\n    display: block;\n    position: absolute;\n    top: 0;\n    left: 0; }\n\n.ct-minor-third {\n  display: block;\n  position: relative;\n  width: 100%; }\n  .ct-minor-third:before {\n    display: block;\n    float: left;\n    content: \"\";\n    width: 0;\n    height: 0;\n    padding-bottom: 83.33333%; }\n  .ct-minor-third:after {\n    content: \"\";\n    display: table;\n    clear: both; }\n  .ct-minor-third > svg {\n    display: block;\n    position: absolute;\n    top: 0;\n    left: 0; }\n\n.ct-major-third {\n  display: block;\n  position: relative;\n  width: 100%; }\n  .ct-major-third:before {\n    display: block;\n    float: left;\n    content: \"\";\n    width: 0;\n    height: 0;\n    padding-bottom: 80%; }\n  .ct-major-third:after {\n    content: \"\";\n    display: table;\n    clear: both; }\n  .ct-major-third > svg {\n    display: block;\n    position: absolute;\n    top: 0;\n    left: 0; }\n\n.ct-perfect-fourth {\n  display: block;\n  position: relative;\n  width: 100%; }\n  .ct-perfect-fourth:before {\n    display: block;\n    float: left;\n    content: \"\";\n    width: 0;\n    height: 0;\n    padding-bottom: 75%; }\n  .ct-perfect-fourth:after {\n    content: \"\";\n    display: table;\n    clear: both; }\n  .ct-perfect-fourth > svg {\n    display: block;\n    position: absolute;\n    top: 0;\n    left: 0; }\n\n.ct-perfect-fifth {\n  display: block;\n  position: relative;\n  width: 100%; }\n  .ct-perfect-fifth:before {\n    display: block;\n    float: left;\n    content: \"\";\n    width: 0;\n    height: 0;\n    padding-bottom: 66.66667%; }\n  .ct-perfect-fifth:after {\n    content: \"\";\n    display: table;\n    clear: both; }\n  .ct-perfect-fifth > svg {\n    display: block;\n    position: absolute;\n    top: 0;\n    left: 0; }\n\n.ct-minor-sixth {\n  display: block;\n  position: relative;\n  width: 100%; }\n  .ct-minor-sixth:before {\n    display: block;\n    float: left;\n    content: \"\";\n    width: 0;\n    height: 0;\n    padding-bottom: 62.5%; }\n  .ct-minor-sixth:after {\n    content: \"\";\n    display: table;\n    clear: both; }\n  .ct-minor-sixth > svg {\n    display: block;\n    position: absolute;\n    top: 0;\n    left: 0; }\n\n.ct-golden-section {\n  display: block;\n  position: relative;\n  width: 100%; }\n  .ct-golden-section:before {\n    display: block;\n    float: left;\n    content: \"\";\n    width: 0;\n    height: 0;\n    padding-bottom: 61.8047%; }\n  .ct-golden-section:after {\n    content: \"\";\n    display: table;\n    clear: both; }\n  .ct-golden-section > svg {\n    display: block;\n    position: absolute;\n    top: 0;\n    left: 0; }\n\n.ct-major-sixth {\n  display: block;\n  position: relative;\n  width: 100%; }\n  .ct-major-sixth:before {\n    display: block;\n    float: left;\n    content: \"\";\n    width: 0;\n    height: 0;\n    padding-bottom: 60%; }\n  .ct-major-sixth:after {\n    content: \"\";\n    display: table;\n    clear: both; }\n  .ct-major-sixth > svg {\n    display: block;\n    position: absolute;\n    top: 0;\n    left: 0; }\n\n.ct-minor-seventh {\n  display: block;\n  position: relative;\n  width: 100%; }\n  .ct-minor-seventh:before {\n    display: block;\n    float: left;\n    content: \"\";\n    width: 0;\n    height: 0;\n    padding-bottom: 56.25%; }\n  .ct-minor-seventh:after {\n    content: \"\";\n    display: table;\n    clear: both; }\n  .ct-minor-seventh > svg {\n    display: block;\n    position: absolute;\n    top: 0;\n    left: 0; }\n\n.ct-major-seventh {\n  display: block;\n  position: relative;\n  width: 100%; }\n  .ct-major-seventh:before {\n    display: block;\n    float: left;\n    content: \"\";\n    width: 0;\n    height: 0;\n    padding-bottom: 53.33333%; }\n  .ct-major-seventh:after {\n    content: \"\";\n    display: table;\n    clear: both; }\n  .ct-major-seventh > svg {\n    display: block;\n    position: absolute;\n    top: 0;\n    left: 0; }\n\n.ct-octave {\n  display: block;\n  position: relative;\n  width: 100%; }\n  .ct-octave:before {\n    display: block;\n    float: left;\n    content: \"\";\n    width: 0;\n    height: 0;\n    padding-bottom: 50%; }\n  .ct-octave:after {\n    content: \"\";\n    display: table;\n    clear: both; }\n  .ct-octave > svg {\n    display: block;\n    position: absolute;\n    top: 0;\n    left: 0; }\n\n.ct-major-tenth {\n  display: block;\n  position: relative;\n  width: 100%; }\n  .ct-major-tenth:before {\n    display: block;\n    float: left;\n    content: \"\";\n    width: 0;\n    height: 0;\n    padding-bottom: 40%; }\n  .ct-major-tenth:after {\n    content: \"\";\n    display: table;\n    clear: both; }\n  .ct-major-tenth > svg {\n    display: block;\n    position: absolute;\n    top: 0;\n    left: 0; }\n\n.ct-major-eleventh {\n  display: block;\n  position: relative;\n  width: 100%; }\n  .ct-major-eleventh:before {\n    display: block;\n    float: left;\n    content: \"\";\n    width: 0;\n    height: 0;\n    padding-bottom: 37.5%; }\n  .ct-major-eleventh:after {\n    content: \"\";\n    display: table;\n    clear: both; }\n  .ct-major-eleventh > svg {\n    display: block;\n    position: absolute;\n    top: 0;\n    left: 0; }\n\n.ct-major-twelfth {\n  display: block;\n  position: relative;\n  width: 100%; }\n  .ct-major-twelfth:before {\n    display: block;\n    float: left;\n    content: \"\";\n    width: 0;\n    height: 0;\n    padding-bottom: 33.33333%; }\n  .ct-major-twelfth:after {\n    content: \"\";\n    display: table;\n    clear: both; }\n  .ct-major-twelfth > svg {\n    display: block;\n    position: absolute;\n    top: 0;\n    left: 0; }\n\n.ct-double-octave {\n  display: block;\n  position: relative;\n  width: 100%; }\n  .ct-double-octave:before {\n    display: block;\n    float: left;\n    content: \"\";\n    width: 0;\n    height: 0;\n    padding-bottom: 25%; }\n  .ct-double-octave:after {\n    content: \"\";\n    display: table;\n    clear: both; }\n  .ct-double-octave > svg {\n    display: block;\n    position: absolute;\n    top: 0;\n    left: 0; }\n\n:root {\n  --bs-blue: #2361ce;\n  --bs-indigo: #4F46E5;\n  --bs-purple: #7C3AED;\n  --bs-pink: #EF4683;\n  --bs-red: #E11D48;\n  --bs-orange: #FBA918;\n  --bs-yellow: #f3c78e;\n  --bs-green: #10B981;\n  --bs-teal: #1E90FF;\n  --bs-cyan: #63b1bd;\n  --bs-white: #ffffff;\n  --bs-gray: #4B5563;\n  --bs-gray-dark: #1F2937;\n  --bs-gray-100: #F2F4F6;\n  --bs-gray-200: #E5E7EB;\n  --bs-gray-300: #D1D5DB;\n  --bs-gray-400: #9CA3AF;\n  --bs-gray-500: #6B7280;\n  --bs-gray-600: #4B5563;\n  --bs-gray-700: #374151;\n  --bs-gray-800: #1F2937;\n  --bs-gray-900: #111827;\n  --bs-primary: #1F2937;\n  --bs-secondary: #f0bc74;\n  --bs-tertiary: #31316A;\n  --bs-success: #10B981;\n  --bs-info: #2361ce;\n  --bs-warning: #f3c78e;\n  --bs-danger: #E11D48;\n  --bs-white: #ffffff;\n  --bs-indigo: #4F46E5;\n  --bs-purple: #7C3AED;\n  --bs-yellow-100: #ffeed6;\n  --bs-yellow-200: #f5dbb8;\n  --bs-gray-50: #F9FAFB;\n  --bs-gray-100: #F2F4F6;\n  --bs-gray-200: #E5E7EB;\n  --bs-gray-300: #D1D5DB;\n  --bs-gray-400: #9CA3AF;\n  --bs-gray-500: #6B7280;\n  --bs-gray-600: #4B5563;\n  --bs-gray-700: #374151;\n  --bs-gray-800: #1F2937;\n  --bs-gray-900: #111827;\n  --bs-primary-rgb: 31, 41, 55;\n  --bs-secondary-rgb: 240, 188, 116;\n  --bs-tertiary-rgb: 49, 49, 106;\n  --bs-success-rgb: 16, 185, 129;\n  --bs-info-rgb: 35, 97, 206;\n  --bs-warning-rgb: 243, 199, 142;\n  --bs-danger-rgb: 225, 29, 72;\n  --bs-white-rgb: 255, 255, 255;\n  --bs-indigo-rgb: 79, 70, 229;\n  --bs-purple-rgb: 124, 58, 237;\n  --bs-yellow-100-rgb: 255, 238, 214;\n  --bs-yellow-200-rgb: 245, 219, 184;\n  --bs-gray-50-rgb: 249, 250, 251;\n  --bs-gray-100-rgb: 242, 244, 246;\n  --bs-gray-200-rgb: 229, 231, 235;\n  --bs-gray-300-rgb: 209, 213, 219;\n  --bs-gray-400-rgb: 156, 163, 175;\n  --bs-gray-500-rgb: 107, 114, 128;\n  --bs-gray-600-rgb: 75, 85, 99;\n  --bs-gray-700-rgb: 55, 65, 81;\n  --bs-gray-800-rgb: 31, 41, 55;\n  --bs-gray-900-rgb: 17, 24, 39;\n  --bs-white-rgb: 255, 255, 255;\n  --bs-black-rgb: 17, 24, 39;\n  --bs-body-color-rgb: 55, 65, 81;\n  --bs-body-bg-rgb: 242, 244, 246;\n  --bs-font-sans-serif: \"Inter\", sans-serif;\n  --bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace;\n  --bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));\n  --bs-body-font-family: var(--bs-font-sans-serif);\n  --bs-body-font-size: 1rem;\n  --bs-body-font-weight: 400;\n  --bs-body-line-height: 1.5;\n  --bs-body-color: #374151;\n  --bs-body-bg: #F2F4F6; }\n\n*,\n*::before,\n*::after {\n  box-sizing: border-box; }\n\n@media (prefers-reduced-motion: no-preference) {\n  :root {\n    scroll-behavior: smooth; } }\n\nbody {\n  margin: 0;\n  font-family: var(--bs-body-font-family);\n  font-size: var(--bs-body-font-size);\n  font-weight: var(--bs-body-font-weight);\n  line-height: var(--bs-body-line-height);\n  color: var(--bs-body-color);\n  text-align: var(--bs-body-text-align);\n  background-color: var(--bs-body-bg);\n  -webkit-text-size-adjust: 100%;\n  -webkit-tap-highlight-color: rgba(17, 24, 39, 0); }\n\nhr {\n  margin: 1rem 0;\n  color: inherit;\n  background-color: currentColor;\n  border: 0;\n  opacity: 0.25; }\n\nhr:not([size]) {\n  height: 0.0625rem; }\n\nh1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6 {\n  margin-top: 0;\n  margin-bottom: 0.5rem;\n  font-weight: 500;\n  line-height: 1.3;\n  color: #1F2937; }\n\nh1, .h1 {\n  font-size: calc(1.375rem + 1.5vw); }\n  @media (min-width: 1200px) {\n    h1, .h1 {\n      font-size: 2.5rem; } }\n\nh2, .h2 {\n  font-size: calc(1.325rem + 0.9vw); }\n  @media (min-width: 1200px) {\n    h2, .h2 {\n      font-size: 2rem; } }\n\nh3, .h3 {\n  font-size: calc(1.3rem + 0.6vw); }\n  @media (min-width: 1200px) {\n    h3, .h3 {\n      font-size: 1.75rem; } }\n\nh4, .h4 {\n  font-size: calc(1.275rem + 0.3vw); }\n  @media (min-width: 1200px) {\n    h4, .h4 {\n      font-size: 1.5rem; } }\n\nh5, .h5 {\n  font-size: 1.25rem; }\n\nh6, .h6 {\n  font-size: 1rem; }\n\np {\n  margin-top: 0;\n  margin-bottom: 1rem; }\n\nabbr[title],\nabbr[data-bs-original-title] {\n  -webkit-text-decoration: underline dotted;\n          text-decoration: underline dotted;\n  cursor: help;\n  -webkit-text-decoration-skip-ink: none;\n          text-decoration-skip-ink: none; }\n\naddress {\n  margin-bottom: 1rem;\n  font-style: normal;\n  line-height: inherit; }\n\nol,\nul {\n  padding-left: 2rem; }\n\nol,\nul,\ndl {\n  margin-top: 0;\n  margin-bottom: 1rem; }\n\nol ol,\nul ul,\nol ul,\nul ol {\n  margin-bottom: 0; }\n\ndt {\n  font-weight: 500; }\n\ndd {\n  margin-bottom: .5rem;\n  margin-left: 0; }\n\nblockquote {\n  margin: 0 0 1rem; }\n\nb,\nstrong {\n  font-weight: 600; }\n\nsmall, .small {\n  font-size: 0.875em; }\n\nmark, .mark {\n  padding: 0.2em;\n  background-color: #fcf8e3; }\n\nsub,\nsup {\n  position: relative;\n  font-size: 0.75em;\n  line-height: 0;\n  vertical-align: baseline; }\n\nsub {\n  bottom: -.25em; }\n\nsup {\n  top: -.5em; }\n\na {\n  color: #1F2937;\n  text-decoration: none; }\n  a:hover {\n    color: black;\n    text-decoration: none; }\n\na:not([href]):not([class]), a:not([href]):not([class]):hover {\n  color: inherit;\n  text-decoration: none; }\n\npre,\ncode,\nkbd,\nsamp {\n  font-family: var(--bs-font-monospace);\n  font-size: 1em;\n  direction: ltr /* rtl:ignore */;\n  unicode-bidi: bidi-override; }\n\npre {\n  display: block;\n  margin-top: 0;\n  margin-bottom: 1rem;\n  overflow: auto;\n  font-size: 0.875em; }\n  pre code {\n    font-size: inherit;\n    color: inherit;\n    word-break: normal; }\n\ncode {\n  font-size: 0.875em;\n  color: #EF4683;\n  word-wrap: break-word; }\n  a > code {\n    color: inherit; }\n\nkbd {\n  padding: 0.2rem 0.4rem;\n  font-size: 0.875em;\n  color: #ffffff;\n  background-color: #111827;\n  border-radius: 0.35rem; }\n  kbd kbd {\n    padding: 0;\n    font-size: 1em;\n    font-weight: 500; }\n\nfigure {\n  margin: 0 0 1rem; }\n\nimg,\nsvg {\n  vertical-align: middle; }\n\ntable {\n  caption-side: bottom;\n  border-collapse: collapse; }\n\ncaption {\n  padding-top: 0.75rem;\n  padding-bottom: 0.75rem;\n  color: #58677d;\n  text-align: left; }\n\nth {\n  text-align: inherit;\n  text-align: -webkit-match-parent; }\n\nthead,\ntbody,\ntfoot,\ntr,\ntd,\nth {\n  border-color: inherit;\n  border-style: solid;\n  border-width: 0; }\n\nlabel {\n  display: inline-block; }\n\nbutton {\n  border-radius: 0; }\n\nbutton:focus:not(:focus-visible) {\n  outline: 0; }\n\ninput,\nbutton,\nselect,\noptgroup,\ntextarea {\n  margin: 0;\n  font-family: inherit;\n  font-size: inherit;\n  line-height: inherit; }\n\nbutton,\nselect {\n  text-transform: none; }\n\n[role=\"button\"] {\n  cursor: pointer; }\n\nselect {\n  word-wrap: normal; }\n  select:disabled {\n    opacity: 1; }\n\n[list]::-webkit-calendar-picker-indicator {\n  display: none; }\n\nbutton,\n[type=\"button\"],\n[type=\"reset\"],\n[type=\"submit\"] {\n  -webkit-appearance: button; }\n  button:not(:disabled),\n  [type=\"button\"]:not(:disabled),\n  [type=\"reset\"]:not(:disabled),\n  [type=\"submit\"]:not(:disabled) {\n    cursor: pointer; }\n\n::-moz-focus-inner {\n  padding: 0;\n  border-style: none; }\n\ntextarea {\n  resize: vertical; }\n\nfieldset {\n  min-width: 0;\n  padding: 0;\n  margin: 0;\n  border: 0; }\n\nlegend {\n  float: left;\n  width: 100%;\n  padding: 0;\n  margin-bottom: 0.5rem;\n  font-size: calc(1.275rem + 0.3vw);\n  line-height: inherit; }\n  @media (min-width: 1200px) {\n    legend {\n      font-size: 1.5rem; } }\n  legend + * {\n    clear: left; }\n\n::-webkit-datetime-edit-fields-wrapper,\n::-webkit-datetime-edit-text,\n::-webkit-datetime-edit-minute,\n::-webkit-datetime-edit-hour-field,\n::-webkit-datetime-edit-day-field,\n::-webkit-datetime-edit-month-field,\n::-webkit-datetime-edit-year-field {\n  padding: 0; }\n\n::-webkit-inner-spin-button {\n  height: auto; }\n\n[type=\"search\"] {\n  outline-offset: -2px;\n  -webkit-appearance: textfield; }\n\n/* rtl:raw:\n[type=\"tel\"],\n[type=\"url\"],\n[type=\"email\"],\n[type=\"number\"] {\n  direction: ltr;\n}\n*/\n::-webkit-search-decoration {\n  -webkit-appearance: none; }\n\n::-webkit-color-swatch-wrapper {\n  padding: 0; }\n\n::-webkit-file-upload-button {\n  font: inherit; }\n\n::file-selector-button {\n  font: inherit; }\n\n::-webkit-file-upload-button {\n  font: inherit;\n  -webkit-appearance: button; }\n\noutput {\n  display: inline-block; }\n\niframe {\n  border: 0; }\n\nsummary {\n  display: list-item;\n  cursor: pointer; }\n\nprogress {\n  vertical-align: baseline; }\n\n[hidden] {\n  display: none !important; }\n\n.lead {\n  font-size: 1.25rem;\n  font-weight: 300; }\n\n.display-1 {\n  font-size: calc(1.625rem + 4.5vw);\n  font-weight: 500;\n  line-height: 1.3; }\n  @media (min-width: 1200px) {\n    .display-1 {\n      font-size: 5rem; } }\n\n.display-2 {\n  font-size: calc(1.475rem + 2.7vw);\n  font-weight: 500;\n  line-height: 1.3; }\n  @media (min-width: 1200px) {\n    .display-2 {\n      font-size: 3.5rem; } }\n\n.display-3 {\n  font-size: calc(1.375rem + 1.5vw);\n  font-weight: 500;\n  line-height: 1.3; }\n  @media (min-width: 1200px) {\n    .display-3 {\n      font-size: 2.5rem; } }\n\n.display-4 {\n  font-size: calc(1.3125rem + 0.75vw);\n  font-weight: 500;\n  line-height: 1.3; }\n  @media (min-width: 1200px) {\n    .display-4 {\n      font-size: 1.875rem; } }\n\n.display-5 {\n  font-size: 1.2rem;\n  font-weight: 500;\n  line-height: 1.3; }\n\n.display-6 {\n  font-size: 1rem;\n  font-weight: 500;\n  line-height: 1.3; }\n\n.list-unstyled {\n  padding-left: 0;\n  list-style: none; }\n\n.list-inline {\n  padding-left: 0;\n  list-style: none; }\n\n.list-inline-item {\n  display: inline-block; }\n  .list-inline-item:not(:last-child) {\n    margin-right: 0.5rem; }\n\n.initialism {\n  font-size: 0.875em;\n  text-transform: uppercase; }\n\n.blockquote {\n  margin-bottom: 1rem;\n  font-size: 1.25rem; }\n  .blockquote > :last-child {\n    margin-bottom: 0; }\n\n.blockquote-footer {\n  margin-top: -1rem;\n  margin-bottom: 1rem;\n  font-size: 0.875em;\n  color: #4B5563; }\n  .blockquote-footer::before {\n    content: \"\\2014\\00A0\"; }\n\n.img-fluid {\n  max-width: 100%;\n  height: auto; }\n\n.img-thumbnail {\n  padding: 0.25rem;\n  background-color: #F2F4F6;\n  border: 0.0625rem solid #D1D5DB;\n  border-radius: 0.5rem;\n  box-shadow: 0 2px 5px rgba(140, 152, 164, 0.2);\n  max-width: 100%;\n  height: auto; }\n\n.figure {\n  display: inline-block; }\n\n.figure-img {\n  margin-bottom: 0.5rem;\n  line-height: 1; }\n\n.figure-caption {\n  font-size: 0.875em;\n  color: #4B5563; }\n\n.container,\n.container-fluid,\n.container-sm,\n.container-md,\n.container-lg,\n.container-xl {\n  width: 100%;\n  padding-right: var(--bs-gutter-x, 1rem);\n  padding-left: var(--bs-gutter-x, 1rem);\n  margin-right: auto;\n  margin-left: auto; }\n\n@media (min-width: 576px) {\n  .container, .container-sm {\n    max-width: 540px; } }\n\n@media (min-width: 768px) {\n  .container, .container-sm, .container-md {\n    max-width: 720px; } }\n\n@media (min-width: 992px) {\n  .container, .container-sm, .container-md, .container-lg {\n    max-width: 960px; } }\n\n@media (min-width: 1200px) {\n  .container, .container-sm, .container-md, .container-lg, .container-xl {\n    max-width: 1140px; } }\n\n.row {\n  --bs-gutter-x: 1.5rem;\n  --bs-gutter-y: 0;\n  display: flex;\n  flex-wrap: wrap;\n  margin-top: calc(var(--bs-gutter-y) * -1);\n  margin-right: calc(var(--bs-gutter-x) * -.5);\n  margin-left: calc(var(--bs-gutter-x) * -.5); }\n  .row > * {\n    flex-shrink: 0;\n    width: 100%;\n    max-width: 100%;\n    padding-right: calc(var(--bs-gutter-x) * .5);\n    padding-left: calc(var(--bs-gutter-x) * .5);\n    margin-top: var(--bs-gutter-y); }\n\n.col {\n  flex: 1 0 0%; }\n\n.row-cols-auto > * {\n  flex: 0 0 auto;\n  width: auto; }\n\n.row-cols-1 > * {\n  flex: 0 0 auto;\n  width: 100%; }\n\n.row-cols-2 > * {\n  flex: 0 0 auto;\n  width: 50%; }\n\n.row-cols-3 > * {\n  flex: 0 0 auto;\n  width: 33.33333%; }\n\n.row-cols-4 > * {\n  flex: 0 0 auto;\n  width: 25%; }\n\n.row-cols-5 > * {\n  flex: 0 0 auto;\n  width: 20%; }\n\n.row-cols-6 > * {\n  flex: 0 0 auto;\n  width: 16.66667%; }\n\n.col-auto {\n  flex: 0 0 auto;\n  width: auto; }\n\n.col-1 {\n  flex: 0 0 auto;\n  width: 8.33333%; }\n\n.col-2 {\n  flex: 0 0 auto;\n  width: 16.66667%; }\n\n.col-3 {\n  flex: 0 0 auto;\n  width: 25%; }\n\n.col-4 {\n  flex: 0 0 auto;\n  width: 33.33333%; }\n\n.col-5 {\n  flex: 0 0 auto;\n  width: 41.66667%; }\n\n.col-6 {\n  flex: 0 0 auto;\n  width: 50%; }\n\n.col-7 {\n  flex: 0 0 auto;\n  width: 58.33333%; }\n\n.col-8 {\n  flex: 0 0 auto;\n  width: 66.66667%; }\n\n.col-9 {\n  flex: 0 0 auto;\n  width: 75%; }\n\n.col-10 {\n  flex: 0 0 auto;\n  width: 83.33333%; }\n\n.col-11 {\n  flex: 0 0 auto;\n  width: 91.66667%; }\n\n.col-12 {\n  flex: 0 0 auto;\n  width: 100%; }\n\n.offset-1 {\n  margin-left: 8.33333%; }\n\n.offset-2 {\n  margin-left: 16.66667%; }\n\n.offset-3 {\n  margin-left: 25%; }\n\n.offset-4 {\n  margin-left: 33.33333%; }\n\n.offset-5 {\n  margin-left: 41.66667%; }\n\n.offset-6 {\n  margin-left: 50%; }\n\n.offset-7 {\n  margin-left: 58.33333%; }\n\n.offset-8 {\n  margin-left: 66.66667%; }\n\n.offset-9 {\n  margin-left: 75%; }\n\n.offset-10 {\n  margin-left: 83.33333%; }\n\n.offset-11 {\n  margin-left: 91.66667%; }\n\n.g-0,\n.gx-0 {\n  --bs-gutter-x: 0; }\n\n.g-0,\n.gy-0 {\n  --bs-gutter-y: 0; }\n\n.g-1,\n.gx-1 {\n  --bs-gutter-x: 0.25rem; }\n\n.g-1,\n.gy-1 {\n  --bs-gutter-y: 0.25rem; }\n\n.g-2,\n.gx-2 {\n  --bs-gutter-x: 0.5rem; }\n\n.g-2,\n.gy-2 {\n  --bs-gutter-y: 0.5rem; }\n\n.g-3,\n.gx-3 {\n  --bs-gutter-x: 1rem; }\n\n.g-3,\n.gy-3 {\n  --bs-gutter-y: 1rem; }\n\n.g-4,\n.gx-4 {\n  --bs-gutter-x: 1.5rem; }\n\n.g-4,\n.gy-4 {\n  --bs-gutter-y: 1.5rem; }\n\n.g-5,\n.gx-5 {\n  --bs-gutter-x: 3rem; }\n\n.g-5,\n.gy-5 {\n  --bs-gutter-y: 3rem; }\n\n.g-6,\n.gx-6 {\n  --bs-gutter-x: 5rem; }\n\n.g-6,\n.gy-6 {\n  --bs-gutter-y: 5rem; }\n\n.g-7,\n.gx-7 {\n  --bs-gutter-x: 8rem; }\n\n.g-7,\n.gy-7 {\n  --bs-gutter-y: 8rem; }\n\n.g-8,\n.gx-8 {\n  --bs-gutter-x: 10rem; }\n\n.g-8,\n.gy-8 {\n  --bs-gutter-y: 10rem; }\n\n.g-9,\n.gx-9 {\n  --bs-gutter-x: 11rem; }\n\n.g-9,\n.gy-9 {\n  --bs-gutter-y: 11rem; }\n\n.g-10,\n.gx-10 {\n  --bs-gutter-x: 14rem; }\n\n.g-10,\n.gy-10 {\n  --bs-gutter-y: 14rem; }\n\n.g-11,\n.gx-11 {\n  --bs-gutter-x: 16rem; }\n\n.g-11,\n.gy-11 {\n  --bs-gutter-y: 16rem; }\n\n.g-12,\n.gx-12 {\n  --bs-gutter-x: 20rem; }\n\n.g-12,\n.gy-12 {\n  --bs-gutter-y: 20rem; }\n\n.g-sm,\n.gx-sm {\n  --bs-gutter-x: 1rem; }\n\n.g-sm,\n.gy-sm {\n  --bs-gutter-y: 1rem; }\n\n.g-md,\n.gx-md {\n  --bs-gutter-x: 2rem; }\n\n.g-md,\n.gy-md {\n  --bs-gutter-y: 2rem; }\n\n.g-lg,\n.gx-lg {\n  --bs-gutter-x: 4rem; }\n\n.g-lg,\n.gy-lg {\n  --bs-gutter-y: 4rem; }\n\n.g-xl,\n.gx-xl {\n  --bs-gutter-x: 8rem; }\n\n.g-xl,\n.gy-xl {\n  --bs-gutter-y: 8rem; }\n\n@media (min-width: 576px) {\n  .col-sm {\n    flex: 1 0 0%; }\n  .row-cols-sm-auto > * {\n    flex: 0 0 auto;\n    width: auto; }\n  .row-cols-sm-1 > * {\n    flex: 0 0 auto;\n    width: 100%; }\n  .row-cols-sm-2 > * {\n    flex: 0 0 auto;\n    width: 50%; }\n  .row-cols-sm-3 > * {\n    flex: 0 0 auto;\n    width: 33.33333%; }\n  .row-cols-sm-4 > * {\n    flex: 0 0 auto;\n    width: 25%; }\n  .row-cols-sm-5 > * {\n    flex: 0 0 auto;\n    width: 20%; }\n  .row-cols-sm-6 > * {\n    flex: 0 0 auto;\n    width: 16.66667%; }\n  .col-sm-auto {\n    flex: 0 0 auto;\n    width: auto; }\n  .col-sm-1 {\n    flex: 0 0 auto;\n    width: 8.33333%; }\n  .col-sm-2 {\n    flex: 0 0 auto;\n    width: 16.66667%; }\n  .col-sm-3 {\n    flex: 0 0 auto;\n    width: 25%; }\n  .col-sm-4 {\n    flex: 0 0 auto;\n    width: 33.33333%; }\n  .col-sm-5 {\n    flex: 0 0 auto;\n    width: 41.66667%; }\n  .col-sm-6 {\n    flex: 0 0 auto;\n    width: 50%; }\n  .col-sm-7 {\n    flex: 0 0 auto;\n    width: 58.33333%; }\n  .col-sm-8 {\n    flex: 0 0 auto;\n    width: 66.66667%; }\n  .col-sm-9 {\n    flex: 0 0 auto;\n    width: 75%; }\n  .col-sm-10 {\n    flex: 0 0 auto;\n    width: 83.33333%; }\n  .col-sm-11 {\n    flex: 0 0 auto;\n    width: 91.66667%; }\n  .col-sm-12 {\n    flex: 0 0 auto;\n    width: 100%; }\n  .offset-sm-0 {\n    margin-left: 0; }\n  .offset-sm-1 {\n    margin-left: 8.33333%; }\n  .offset-sm-2 {\n    margin-left: 16.66667%; }\n  .offset-sm-3 {\n    margin-left: 25%; }\n  .offset-sm-4 {\n    margin-left: 33.33333%; }\n  .offset-sm-5 {\n    margin-left: 41.66667%; }\n  .offset-sm-6 {\n    margin-left: 50%; }\n  .offset-sm-7 {\n    margin-left: 58.33333%; }\n  .offset-sm-8 {\n    margin-left: 66.66667%; }\n  .offset-sm-9 {\n    margin-left: 75%; }\n  .offset-sm-10 {\n    margin-left: 83.33333%; }\n  .offset-sm-11 {\n    margin-left: 91.66667%; }\n  .g-sm-0,\n  .gx-sm-0 {\n    --bs-gutter-x: 0; }\n  .g-sm-0,\n  .gy-sm-0 {\n    --bs-gutter-y: 0; }\n  .g-sm-1,\n  .gx-sm-1 {\n    --bs-gutter-x: 0.25rem; }\n  .g-sm-1,\n  .gy-sm-1 {\n    --bs-gutter-y: 0.25rem; }\n  .g-sm-2,\n  .gx-sm-2 {\n    --bs-gutter-x: 0.5rem; }\n  .g-sm-2,\n  .gy-sm-2 {\n    --bs-gutter-y: 0.5rem; }\n  .g-sm-3,\n  .gx-sm-3 {\n    --bs-gutter-x: 1rem; }\n  .g-sm-3,\n  .gy-sm-3 {\n    --bs-gutter-y: 1rem; }\n  .g-sm-4,\n  .gx-sm-4 {\n    --bs-gutter-x: 1.5rem; }\n  .g-sm-4,\n  .gy-sm-4 {\n    --bs-gutter-y: 1.5rem; }\n  .g-sm-5,\n  .gx-sm-5 {\n    --bs-gutter-x: 3rem; }\n  .g-sm-5,\n  .gy-sm-5 {\n    --bs-gutter-y: 3rem; }\n  .g-sm-6,\n  .gx-sm-6 {\n    --bs-gutter-x: 5rem; }\n  .g-sm-6,\n  .gy-sm-6 {\n    --bs-gutter-y: 5rem; }\n  .g-sm-7,\n  .gx-sm-7 {\n    --bs-gutter-x: 8rem; }\n  .g-sm-7,\n  .gy-sm-7 {\n    --bs-gutter-y: 8rem; }\n  .g-sm-8,\n  .gx-sm-8 {\n    --bs-gutter-x: 10rem; }\n  .g-sm-8,\n  .gy-sm-8 {\n    --bs-gutter-y: 10rem; }\n  .g-sm-9,\n  .gx-sm-9 {\n    --bs-gutter-x: 11rem; }\n  .g-sm-9,\n  .gy-sm-9 {\n    --bs-gutter-y: 11rem; }\n  .g-sm-10,\n  .gx-sm-10 {\n    --bs-gutter-x: 14rem; }\n  .g-sm-10,\n  .gy-sm-10 {\n    --bs-gutter-y: 14rem; }\n  .g-sm-11,\n  .gx-sm-11 {\n    --bs-gutter-x: 16rem; }\n  .g-sm-11,\n  .gy-sm-11 {\n    --bs-gutter-y: 16rem; }\n  .g-sm-12,\n  .gx-sm-12 {\n    --bs-gutter-x: 20rem; }\n  .g-sm-12,\n  .gy-sm-12 {\n    --bs-gutter-y: 20rem; }\n  .g-sm-sm,\n  .gx-sm-sm {\n    --bs-gutter-x: 1rem; }\n  .g-sm-sm,\n  .gy-sm-sm {\n    --bs-gutter-y: 1rem; }\n  .g-sm-md,\n  .gx-sm-md {\n    --bs-gutter-x: 2rem; }\n  .g-sm-md,\n  .gy-sm-md {\n    --bs-gutter-y: 2rem; }\n  .g-sm-lg,\n  .gx-sm-lg {\n    --bs-gutter-x: 4rem; }\n  .g-sm-lg,\n  .gy-sm-lg {\n    --bs-gutter-y: 4rem; }\n  .g-sm-xl,\n  .gx-sm-xl {\n    --bs-gutter-x: 8rem; }\n  .g-sm-xl,\n  .gy-sm-xl {\n    --bs-gutter-y: 8rem; } }\n\n@media (min-width: 768px) {\n  .col-md {\n    flex: 1 0 0%; }\n  .row-cols-md-auto > * {\n    flex: 0 0 auto;\n    width: auto; }\n  .row-cols-md-1 > * {\n    flex: 0 0 auto;\n    width: 100%; }\n  .row-cols-md-2 > * {\n    flex: 0 0 auto;\n    width: 50%; }\n  .row-cols-md-3 > * {\n    flex: 0 0 auto;\n    width: 33.33333%; }\n  .row-cols-md-4 > * {\n    flex: 0 0 auto;\n    width: 25%; }\n  .row-cols-md-5 > * {\n    flex: 0 0 auto;\n    width: 20%; }\n  .row-cols-md-6 > * {\n    flex: 0 0 auto;\n    width: 16.66667%; }\n  .col-md-auto {\n    flex: 0 0 auto;\n    width: auto; }\n  .col-md-1 {\n    flex: 0 0 auto;\n    width: 8.33333%; }\n  .col-md-2 {\n    flex: 0 0 auto;\n    width: 16.66667%; }\n  .col-md-3 {\n    flex: 0 0 auto;\n    width: 25%; }\n  .col-md-4 {\n    flex: 0 0 auto;\n    width: 33.33333%; }\n  .col-md-5 {\n    flex: 0 0 auto;\n    width: 41.66667%; }\n  .col-md-6 {\n    flex: 0 0 auto;\n    width: 50%; }\n  .col-md-7 {\n    flex: 0 0 auto;\n    width: 58.33333%; }\n  .col-md-8 {\n    flex: 0 0 auto;\n    width: 66.66667%; }\n  .col-md-9 {\n    flex: 0 0 auto;\n    width: 75%; }\n  .col-md-10 {\n    flex: 0 0 auto;\n    width: 83.33333%; }\n  .col-md-11 {\n    flex: 0 0 auto;\n    width: 91.66667%; }\n  .col-md-12 {\n    flex: 0 0 auto;\n    width: 100%; }\n  .offset-md-0 {\n    margin-left: 0; }\n  .offset-md-1 {\n    margin-left: 8.33333%; }\n  .offset-md-2 {\n    margin-left: 16.66667%; }\n  .offset-md-3 {\n    margin-left: 25%; }\n  .offset-md-4 {\n    margin-left: 33.33333%; }\n  .offset-md-5 {\n    margin-left: 41.66667%; }\n  .offset-md-6 {\n    margin-left: 50%; }\n  .offset-md-7 {\n    margin-left: 58.33333%; }\n  .offset-md-8 {\n    margin-left: 66.66667%; }\n  .offset-md-9 {\n    margin-left: 75%; }\n  .offset-md-10 {\n    margin-left: 83.33333%; }\n  .offset-md-11 {\n    margin-left: 91.66667%; }\n  .g-md-0,\n  .gx-md-0 {\n    --bs-gutter-x: 0; }\n  .g-md-0,\n  .gy-md-0 {\n    --bs-gutter-y: 0; }\n  .g-md-1,\n  .gx-md-1 {\n    --bs-gutter-x: 0.25rem; }\n  .g-md-1,\n  .gy-md-1 {\n    --bs-gutter-y: 0.25rem; }\n  .g-md-2,\n  .gx-md-2 {\n    --bs-gutter-x: 0.5rem; }\n  .g-md-2,\n  .gy-md-2 {\n    --bs-gutter-y: 0.5rem; }\n  .g-md-3,\n  .gx-md-3 {\n    --bs-gutter-x: 1rem; }\n  .g-md-3,\n  .gy-md-3 {\n    --bs-gutter-y: 1rem; }\n  .g-md-4,\n  .gx-md-4 {\n    --bs-gutter-x: 1.5rem; }\n  .g-md-4,\n  .gy-md-4 {\n    --bs-gutter-y: 1.5rem; }\n  .g-md-5,\n  .gx-md-5 {\n    --bs-gutter-x: 3rem; }\n  .g-md-5,\n  .gy-md-5 {\n    --bs-gutter-y: 3rem; }\n  .g-md-6,\n  .gx-md-6 {\n    --bs-gutter-x: 5rem; }\n  .g-md-6,\n  .gy-md-6 {\n    --bs-gutter-y: 5rem; }\n  .g-md-7,\n  .gx-md-7 {\n    --bs-gutter-x: 8rem; }\n  .g-md-7,\n  .gy-md-7 {\n    --bs-gutter-y: 8rem; }\n  .g-md-8,\n  .gx-md-8 {\n    --bs-gutter-x: 10rem; }\n  .g-md-8,\n  .gy-md-8 {\n    --bs-gutter-y: 10rem; }\n  .g-md-9,\n  .gx-md-9 {\n    --bs-gutter-x: 11rem; }\n  .g-md-9,\n  .gy-md-9 {\n    --bs-gutter-y: 11rem; }\n  .g-md-10,\n  .gx-md-10 {\n    --bs-gutter-x: 14rem; }\n  .g-md-10,\n  .gy-md-10 {\n    --bs-gutter-y: 14rem; }\n  .g-md-11,\n  .gx-md-11 {\n    --bs-gutter-x: 16rem; }\n  .g-md-11,\n  .gy-md-11 {\n    --bs-gutter-y: 16rem; }\n  .g-md-12,\n  .gx-md-12 {\n    --bs-gutter-x: 20rem; }\n  .g-md-12,\n  .gy-md-12 {\n    --bs-gutter-y: 20rem; }\n  .g-md-sm,\n  .gx-md-sm {\n    --bs-gutter-x: 1rem; }\n  .g-md-sm,\n  .gy-md-sm {\n    --bs-gutter-y: 1rem; }\n  .g-md-md,\n  .gx-md-md {\n    --bs-gutter-x: 2rem; }\n  .g-md-md,\n  .gy-md-md {\n    --bs-gutter-y: 2rem; }\n  .g-md-lg,\n  .gx-md-lg {\n    --bs-gutter-x: 4rem; }\n  .g-md-lg,\n  .gy-md-lg {\n    --bs-gutter-y: 4rem; }\n  .g-md-xl,\n  .gx-md-xl {\n    --bs-gutter-x: 8rem; }\n  .g-md-xl,\n  .gy-md-xl {\n    --bs-gutter-y: 8rem; } }\n\n@media (min-width: 992px) {\n  .col-lg {\n    flex: 1 0 0%; }\n  .row-cols-lg-auto > * {\n    flex: 0 0 auto;\n    width: auto; }\n  .row-cols-lg-1 > * {\n    flex: 0 0 auto;\n    width: 100%; }\n  .row-cols-lg-2 > * {\n    flex: 0 0 auto;\n    width: 50%; }\n  .row-cols-lg-3 > * {\n    flex: 0 0 auto;\n    width: 33.33333%; }\n  .row-cols-lg-4 > * {\n    flex: 0 0 auto;\n    width: 25%; }\n  .row-cols-lg-5 > * {\n    flex: 0 0 auto;\n    width: 20%; }\n  .row-cols-lg-6 > * {\n    flex: 0 0 auto;\n    width: 16.66667%; }\n  .col-lg-auto {\n    flex: 0 0 auto;\n    width: auto; }\n  .col-lg-1 {\n    flex: 0 0 auto;\n    width: 8.33333%; }\n  .col-lg-2 {\n    flex: 0 0 auto;\n    width: 16.66667%; }\n  .col-lg-3 {\n    flex: 0 0 auto;\n    width: 25%; }\n  .col-lg-4 {\n    flex: 0 0 auto;\n    width: 33.33333%; }\n  .col-lg-5 {\n    flex: 0 0 auto;\n    width: 41.66667%; }\n  .col-lg-6 {\n    flex: 0 0 auto;\n    width: 50%; }\n  .col-lg-7 {\n    flex: 0 0 auto;\n    width: 58.33333%; }\n  .col-lg-8 {\n    flex: 0 0 auto;\n    width: 66.66667%; }\n  .col-lg-9 {\n    flex: 0 0 auto;\n    width: 75%; }\n  .col-lg-10 {\n    flex: 0 0 auto;\n    width: 83.33333%; }\n  .col-lg-11 {\n    flex: 0 0 auto;\n    width: 91.66667%; }\n  .col-lg-12 {\n    flex: 0 0 auto;\n    width: 100%; }\n  .offset-lg-0 {\n    margin-left: 0; }\n  .offset-lg-1 {\n    margin-left: 8.33333%; }\n  .offset-lg-2 {\n    margin-left: 16.66667%; }\n  .offset-lg-3 {\n    margin-left: 25%; }\n  .offset-lg-4 {\n    margin-left: 33.33333%; }\n  .offset-lg-5 {\n    margin-left: 41.66667%; }\n  .offset-lg-6 {\n    margin-left: 50%; }\n  .offset-lg-7 {\n    margin-left: 58.33333%; }\n  .offset-lg-8 {\n    margin-left: 66.66667%; }\n  .offset-lg-9 {\n    margin-left: 75%; }\n  .offset-lg-10 {\n    margin-left: 83.33333%; }\n  .offset-lg-11 {\n    margin-left: 91.66667%; }\n  .g-lg-0,\n  .gx-lg-0 {\n    --bs-gutter-x: 0; }\n  .g-lg-0,\n  .gy-lg-0 {\n    --bs-gutter-y: 0; }\n  .g-lg-1,\n  .gx-lg-1 {\n    --bs-gutter-x: 0.25rem; }\n  .g-lg-1,\n  .gy-lg-1 {\n    --bs-gutter-y: 0.25rem; }\n  .g-lg-2,\n  .gx-lg-2 {\n    --bs-gutter-x: 0.5rem; }\n  .g-lg-2,\n  .gy-lg-2 {\n    --bs-gutter-y: 0.5rem; }\n  .g-lg-3,\n  .gx-lg-3 {\n    --bs-gutter-x: 1rem; }\n  .g-lg-3,\n  .gy-lg-3 {\n    --bs-gutter-y: 1rem; }\n  .g-lg-4,\n  .gx-lg-4 {\n    --bs-gutter-x: 1.5rem; }\n  .g-lg-4,\n  .gy-lg-4 {\n    --bs-gutter-y: 1.5rem; }\n  .g-lg-5,\n  .gx-lg-5 {\n    --bs-gutter-x: 3rem; }\n  .g-lg-5,\n  .gy-lg-5 {\n    --bs-gutter-y: 3rem; }\n  .g-lg-6,\n  .gx-lg-6 {\n    --bs-gutter-x: 5rem; }\n  .g-lg-6,\n  .gy-lg-6 {\n    --bs-gutter-y: 5rem; }\n  .g-lg-7,\n  .gx-lg-7 {\n    --bs-gutter-x: 8rem; }\n  .g-lg-7,\n  .gy-lg-7 {\n    --bs-gutter-y: 8rem; }\n  .g-lg-8,\n  .gx-lg-8 {\n    --bs-gutter-x: 10rem; }\n  .g-lg-8,\n  .gy-lg-8 {\n    --bs-gutter-y: 10rem; }\n  .g-lg-9,\n  .gx-lg-9 {\n    --bs-gutter-x: 11rem; }\n  .g-lg-9,\n  .gy-lg-9 {\n    --bs-gutter-y: 11rem; }\n  .g-lg-10,\n  .gx-lg-10 {\n    --bs-gutter-x: 14rem; }\n  .g-lg-10,\n  .gy-lg-10 {\n    --bs-gutter-y: 14rem; }\n  .g-lg-11,\n  .gx-lg-11 {\n    --bs-gutter-x: 16rem; }\n  .g-lg-11,\n  .gy-lg-11 {\n    --bs-gutter-y: 16rem; }\n  .g-lg-12,\n  .gx-lg-12 {\n    --bs-gutter-x: 20rem; }\n  .g-lg-12,\n  .gy-lg-12 {\n    --bs-gutter-y: 20rem; }\n  .g-lg-sm,\n  .gx-lg-sm {\n    --bs-gutter-x: 1rem; }\n  .g-lg-sm,\n  .gy-lg-sm {\n    --bs-gutter-y: 1rem; }\n  .g-lg-md,\n  .gx-lg-md {\n    --bs-gutter-x: 2rem; }\n  .g-lg-md,\n  .gy-lg-md {\n    --bs-gutter-y: 2rem; }\n  .g-lg-lg,\n  .gx-lg-lg {\n    --bs-gutter-x: 4rem; }\n  .g-lg-lg,\n  .gy-lg-lg {\n    --bs-gutter-y: 4rem; }\n  .g-lg-xl,\n  .gx-lg-xl {\n    --bs-gutter-x: 8rem; }\n  .g-lg-xl,\n  .gy-lg-xl {\n    --bs-gutter-y: 8rem; } }\n\n@media (min-width: 1200px) {\n  .col-xl {\n    flex: 1 0 0%; }\n  .row-cols-xl-auto > * {\n    flex: 0 0 auto;\n    width: auto; }\n  .row-cols-xl-1 > * {\n    flex: 0 0 auto;\n    width: 100%; }\n  .row-cols-xl-2 > * {\n    flex: 0 0 auto;\n    width: 50%; }\n  .row-cols-xl-3 > * {\n    flex: 0 0 auto;\n    width: 33.33333%; }\n  .row-cols-xl-4 > * {\n    flex: 0 0 auto;\n    width: 25%; }\n  .row-cols-xl-5 > * {\n    flex: 0 0 auto;\n    width: 20%; }\n  .row-cols-xl-6 > * {\n    flex: 0 0 auto;\n    width: 16.66667%; }\n  .col-xl-auto {\n    flex: 0 0 auto;\n    width: auto; }\n  .col-xl-1 {\n    flex: 0 0 auto;\n    width: 8.33333%; }\n  .col-xl-2 {\n    flex: 0 0 auto;\n    width: 16.66667%; }\n  .col-xl-3 {\n    flex: 0 0 auto;\n    width: 25%; }\n  .col-xl-4 {\n    flex: 0 0 auto;\n    width: 33.33333%; }\n  .col-xl-5 {\n    flex: 0 0 auto;\n    width: 41.66667%; }\n  .col-xl-6 {\n    flex: 0 0 auto;\n    width: 50%; }\n  .col-xl-7 {\n    flex: 0 0 auto;\n    width: 58.33333%; }\n  .col-xl-8 {\n    flex: 0 0 auto;\n    width: 66.66667%; }\n  .col-xl-9 {\n    flex: 0 0 auto;\n    width: 75%; }\n  .col-xl-10 {\n    flex: 0 0 auto;\n    width: 83.33333%; }\n  .col-xl-11 {\n    flex: 0 0 auto;\n    width: 91.66667%; }\n  .col-xl-12 {\n    flex: 0 0 auto;\n    width: 100%; }\n  .offset-xl-0 {\n    margin-left: 0; }\n  .offset-xl-1 {\n    margin-left: 8.33333%; }\n  .offset-xl-2 {\n    margin-left: 16.66667%; }\n  .offset-xl-3 {\n    margin-left: 25%; }\n  .offset-xl-4 {\n    margin-left: 33.33333%; }\n  .offset-xl-5 {\n    margin-left: 41.66667%; }\n  .offset-xl-6 {\n    margin-left: 50%; }\n  .offset-xl-7 {\n    margin-left: 58.33333%; }\n  .offset-xl-8 {\n    margin-left: 66.66667%; }\n  .offset-xl-9 {\n    margin-left: 75%; }\n  .offset-xl-10 {\n    margin-left: 83.33333%; }\n  .offset-xl-11 {\n    margin-left: 91.66667%; }\n  .g-xl-0,\n  .gx-xl-0 {\n    --bs-gutter-x: 0; }\n  .g-xl-0,\n  .gy-xl-0 {\n    --bs-gutter-y: 0; }\n  .g-xl-1,\n  .gx-xl-1 {\n    --bs-gutter-x: 0.25rem; }\n  .g-xl-1,\n  .gy-xl-1 {\n    --bs-gutter-y: 0.25rem; }\n  .g-xl-2,\n  .gx-xl-2 {\n    --bs-gutter-x: 0.5rem; }\n  .g-xl-2,\n  .gy-xl-2 {\n    --bs-gutter-y: 0.5rem; }\n  .g-xl-3,\n  .gx-xl-3 {\n    --bs-gutter-x: 1rem; }\n  .g-xl-3,\n  .gy-xl-3 {\n    --bs-gutter-y: 1rem; }\n  .g-xl-4,\n  .gx-xl-4 {\n    --bs-gutter-x: 1.5rem; }\n  .g-xl-4,\n  .gy-xl-4 {\n    --bs-gutter-y: 1.5rem; }\n  .g-xl-5,\n  .gx-xl-5 {\n    --bs-gutter-x: 3rem; }\n  .g-xl-5,\n  .gy-xl-5 {\n    --bs-gutter-y: 3rem; }\n  .g-xl-6,\n  .gx-xl-6 {\n    --bs-gutter-x: 5rem; }\n  .g-xl-6,\n  .gy-xl-6 {\n    --bs-gutter-y: 5rem; }\n  .g-xl-7,\n  .gx-xl-7 {\n    --bs-gutter-x: 8rem; }\n  .g-xl-7,\n  .gy-xl-7 {\n    --bs-gutter-y: 8rem; }\n  .g-xl-8,\n  .gx-xl-8 {\n    --bs-gutter-x: 10rem; }\n  .g-xl-8,\n  .gy-xl-8 {\n    --bs-gutter-y: 10rem; }\n  .g-xl-9,\n  .gx-xl-9 {\n    --bs-gutter-x: 11rem; }\n  .g-xl-9,\n  .gy-xl-9 {\n    --bs-gutter-y: 11rem; }\n  .g-xl-10,\n  .gx-xl-10 {\n    --bs-gutter-x: 14rem; }\n  .g-xl-10,\n  .gy-xl-10 {\n    --bs-gutter-y: 14rem; }\n  .g-xl-11,\n  .gx-xl-11 {\n    --bs-gutter-x: 16rem; }\n  .g-xl-11,\n  .gy-xl-11 {\n    --bs-gutter-y: 16rem; }\n  .g-xl-12,\n  .gx-xl-12 {\n    --bs-gutter-x: 20rem; }\n  .g-xl-12,\n  .gy-xl-12 {\n    --bs-gutter-y: 20rem; }\n  .g-xl-sm,\n  .gx-xl-sm {\n    --bs-gutter-x: 1rem; }\n  .g-xl-sm,\n  .gy-xl-sm {\n    --bs-gutter-y: 1rem; }\n  .g-xl-md,\n  .gx-xl-md {\n    --bs-gutter-x: 2rem; }\n  .g-xl-md,\n  .gy-xl-md {\n    --bs-gutter-y: 2rem; }\n  .g-xl-lg,\n  .gx-xl-lg {\n    --bs-gutter-x: 4rem; }\n  .g-xl-lg,\n  .gy-xl-lg {\n    --bs-gutter-y: 4rem; }\n  .g-xl-xl,\n  .gx-xl-xl {\n    --bs-gutter-x: 8rem; }\n  .g-xl-xl,\n  .gy-xl-xl {\n    --bs-gutter-y: 8rem; } }\n\n@media (min-width: 1400px) {\n  .col-xxl {\n    flex: 1 0 0%; }\n  .row-cols-xxl-auto > * {\n    flex: 0 0 auto;\n    width: auto; }\n  .row-cols-xxl-1 > * {\n    flex: 0 0 auto;\n    width: 100%; }\n  .row-cols-xxl-2 > * {\n    flex: 0 0 auto;\n    width: 50%; }\n  .row-cols-xxl-3 > * {\n    flex: 0 0 auto;\n    width: 33.33333%; }\n  .row-cols-xxl-4 > * {\n    flex: 0 0 auto;\n    width: 25%; }\n  .row-cols-xxl-5 > * {\n    flex: 0 0 auto;\n    width: 20%; }\n  .row-cols-xxl-6 > * {\n    flex: 0 0 auto;\n    width: 16.66667%; }\n  .col-xxl-auto {\n    flex: 0 0 auto;\n    width: auto; }\n  .col-xxl-1 {\n    flex: 0 0 auto;\n    width: 8.33333%; }\n  .col-xxl-2 {\n    flex: 0 0 auto;\n    width: 16.66667%; }\n  .col-xxl-3 {\n    flex: 0 0 auto;\n    width: 25%; }\n  .col-xxl-4 {\n    flex: 0 0 auto;\n    width: 33.33333%; }\n  .col-xxl-5 {\n    flex: 0 0 auto;\n    width: 41.66667%; }\n  .col-xxl-6 {\n    flex: 0 0 auto;\n    width: 50%; }\n  .col-xxl-7 {\n    flex: 0 0 auto;\n    width: 58.33333%; }\n  .col-xxl-8 {\n    flex: 0 0 auto;\n    width: 66.66667%; }\n  .col-xxl-9 {\n    flex: 0 0 auto;\n    width: 75%; }\n  .col-xxl-10 {\n    flex: 0 0 auto;\n    width: 83.33333%; }\n  .col-xxl-11 {\n    flex: 0 0 auto;\n    width: 91.66667%; }\n  .col-xxl-12 {\n    flex: 0 0 auto;\n    width: 100%; }\n  .offset-xxl-0 {\n    margin-left: 0; }\n  .offset-xxl-1 {\n    margin-left: 8.33333%; }\n  .offset-xxl-2 {\n    margin-left: 16.66667%; }\n  .offset-xxl-3 {\n    margin-left: 25%; }\n  .offset-xxl-4 {\n    margin-left: 33.33333%; }\n  .offset-xxl-5 {\n    margin-left: 41.66667%; }\n  .offset-xxl-6 {\n    margin-left: 50%; }\n  .offset-xxl-7 {\n    margin-left: 58.33333%; }\n  .offset-xxl-8 {\n    margin-left: 66.66667%; }\n  .offset-xxl-9 {\n    margin-left: 75%; }\n  .offset-xxl-10 {\n    margin-left: 83.33333%; }\n  .offset-xxl-11 {\n    margin-left: 91.66667%; }\n  .g-xxl-0,\n  .gx-xxl-0 {\n    --bs-gutter-x: 0; }\n  .g-xxl-0,\n  .gy-xxl-0 {\n    --bs-gutter-y: 0; }\n  .g-xxl-1,\n  .gx-xxl-1 {\n    --bs-gutter-x: 0.25rem; }\n  .g-xxl-1,\n  .gy-xxl-1 {\n    --bs-gutter-y: 0.25rem; }\n  .g-xxl-2,\n  .gx-xxl-2 {\n    --bs-gutter-x: 0.5rem; }\n  .g-xxl-2,\n  .gy-xxl-2 {\n    --bs-gutter-y: 0.5rem; }\n  .g-xxl-3,\n  .gx-xxl-3 {\n    --bs-gutter-x: 1rem; }\n  .g-xxl-3,\n  .gy-xxl-3 {\n    --bs-gutter-y: 1rem; }\n  .g-xxl-4,\n  .gx-xxl-4 {\n    --bs-gutter-x: 1.5rem; }\n  .g-xxl-4,\n  .gy-xxl-4 {\n    --bs-gutter-y: 1.5rem; }\n  .g-xxl-5,\n  .gx-xxl-5 {\n    --bs-gutter-x: 3rem; }\n  .g-xxl-5,\n  .gy-xxl-5 {\n    --bs-gutter-y: 3rem; }\n  .g-xxl-6,\n  .gx-xxl-6 {\n    --bs-gutter-x: 5rem; }\n  .g-xxl-6,\n  .gy-xxl-6 {\n    --bs-gutter-y: 5rem; }\n  .g-xxl-7,\n  .gx-xxl-7 {\n    --bs-gutter-x: 8rem; }\n  .g-xxl-7,\n  .gy-xxl-7 {\n    --bs-gutter-y: 8rem; }\n  .g-xxl-8,\n  .gx-xxl-8 {\n    --bs-gutter-x: 10rem; }\n  .g-xxl-8,\n  .gy-xxl-8 {\n    --bs-gutter-y: 10rem; }\n  .g-xxl-9,\n  .gx-xxl-9 {\n    --bs-gutter-x: 11rem; }\n  .g-xxl-9,\n  .gy-xxl-9 {\n    --bs-gutter-y: 11rem; }\n  .g-xxl-10,\n  .gx-xxl-10 {\n    --bs-gutter-x: 14rem; }\n  .g-xxl-10,\n  .gy-xxl-10 {\n    --bs-gutter-y: 14rem; }\n  .g-xxl-11,\n  .gx-xxl-11 {\n    --bs-gutter-x: 16rem; }\n  .g-xxl-11,\n  .gy-xxl-11 {\n    --bs-gutter-y: 16rem; }\n  .g-xxl-12,\n  .gx-xxl-12 {\n    --bs-gutter-x: 20rem; }\n  .g-xxl-12,\n  .gy-xxl-12 {\n    --bs-gutter-y: 20rem; }\n  .g-xxl-sm,\n  .gx-xxl-sm {\n    --bs-gutter-x: 1rem; }\n  .g-xxl-sm,\n  .gy-xxl-sm {\n    --bs-gutter-y: 1rem; }\n  .g-xxl-md,\n  .gx-xxl-md {\n    --bs-gutter-x: 2rem; }\n  .g-xxl-md,\n  .gy-xxl-md {\n    --bs-gutter-y: 2rem; }\n  .g-xxl-lg,\n  .gx-xxl-lg {\n    --bs-gutter-x: 4rem; }\n  .g-xxl-lg,\n  .gy-xxl-lg {\n    --bs-gutter-y: 4rem; }\n  .g-xxl-xl,\n  .gx-xxl-xl {\n    --bs-gutter-x: 8rem; }\n  .g-xxl-xl,\n  .gy-xxl-xl {\n    --bs-gutter-y: 8rem; } }\n\n.table {\n  --bs-table-bg: transparent;\n  --bs-table-accent-bg: transparent;\n  --bs-table-striped-color: #374151;\n  --bs-table-striped-bg: rgba(17, 24, 39, 0.05);\n  --bs-table-active-color: #374151;\n  --bs-table-active-bg: rgba(17, 24, 39, 0.1);\n  --bs-table-hover-color: #374151;\n  --bs-table-hover-bg: rgba(17, 24, 39, 0.075);\n  width: 100%;\n  margin-bottom: 1rem;\n  color: #374151;\n  vertical-align: top;\n  border-color: #E5E7EB; }\n  .table > :not(caption) > * > * {\n    padding: 0.75rem 0.5rem;\n    background-color: var(--bs-table-bg);\n    border-bottom-width: 0.0625rem;\n    box-shadow: inset 0 0 0 9999px var(--bs-table-accent-bg); }\n  .table > tbody {\n    vertical-align: inherit; }\n  .table > thead {\n    vertical-align: bottom; }\n  .table > :not(:last-child) > :last-child > * {\n    border-bottom-color: currentColor; }\n\n.caption-top {\n  caption-side: top; }\n\n.table-sm > :not(caption) > * > * {\n  padding: 0.25rem 0.25rem; }\n\n.table-bordered > :not(caption) > * {\n  border-width: 0.0625rem 0; }\n  .table-bordered > :not(caption) > * > * {\n    border-width: 0 0.0625rem; }\n\n.table-borderless > :not(caption) > * > * {\n  border-bottom-width: 0; }\n\n.table-striped > tbody > tr:nth-of-type(odd) {\n  --bs-table-accent-bg: var(--bs-table-striped-bg);\n  color: var(--bs-table-striped-color); }\n\n.table-active {\n  --bs-table-accent-bg: var(--bs-table-active-bg);\n  color: var(--bs-table-active-color); }\n\n.table-hover > tbody > tr:hover {\n  --bs-table-accent-bg: var(--bs-table-hover-bg);\n  color: var(--bs-table-hover-color); }\n\n.table-primary {\n  --bs-table-bg: #d2d4d7;\n  --bs-table-striped-bg: #c9cbcf;\n  --bs-table-striped-color: #1F2937;\n  --bs-table-active-bg: #c0c3c7;\n  --bs-table-active-color: #1F2937;\n  --bs-table-hover-bg: #c5c7cb;\n  --bs-table-hover-color: #1F2937;\n  color: #1F2937;\n  border-color: #c0c3c7; }\n\n.table-secondary {\n  --bs-table-bg: #fcf2e3;\n  --bs-table-striped-bg: #f1e8da;\n  --bs-table-striped-color: #1F2937;\n  --bs-table-active-bg: #e6ded2;\n  --bs-table-active-color: #1F2937;\n  --bs-table-hover-bg: #ebe3d6;\n  --bs-table-hover-color: #1F2937;\n  color: #1F2937;\n  border-color: #e6ded2; }\n\n.table-success {\n  --bs-table-bg: #cff1e6;\n  --bs-table-striped-bg: #c6e7dd;\n  --bs-table-striped-color: #1F2937;\n  --bs-table-active-bg: #bdddd5;\n  --bs-table-active-color: #1F2937;\n  --bs-table-hover-bg: #c2e2d9;\n  --bs-table-hover-color: #1F2937;\n  color: #1F2937;\n  border-color: #bdddd5; }\n\n.table-info {\n  --bs-table-bg: #d3dff5;\n  --bs-table-striped-bg: #cad6ec;\n  --bs-table-striped-color: #1F2937;\n  --bs-table-active-bg: #c1cde2;\n  --bs-table-active-color: #1F2937;\n  --bs-table-hover-bg: #c6d1e7;\n  --bs-table-hover-color: #1F2937;\n  color: #1F2937;\n  border-color: #c1cde2; }\n\n.table-warning {\n  --bs-table-bg: #fdf4e8;\n  --bs-table-striped-bg: #f2eadf;\n  --bs-table-striped-color: #1F2937;\n  --bs-table-active-bg: #e7e0d6;\n  --bs-table-active-color: #1F2937;\n  --bs-table-hover-bg: #ece5db;\n  --bs-table-hover-color: #1F2937;\n  color: #1F2937;\n  border-color: #e7e0d6; }\n\n.table-danger {\n  --bs-table-bg: #f9d2da;\n  --bs-table-striped-bg: #eecad2;\n  --bs-table-striped-color: #1F2937;\n  --bs-table-active-bg: #e3c1ca;\n  --bs-table-active-color: #1F2937;\n  --bs-table-hover-bg: #e9c5ce;\n  --bs-table-hover-color: #1F2937;\n  color: #1F2937;\n  border-color: #e3c1ca; }\n\n.table-light {\n  --bs-table-bg: #9CA3AF;\n  --bs-table-striped-bg: #969da9;\n  --bs-table-striped-color: #1F2937;\n  --bs-table-active-bg: #9097a3;\n  --bs-table-active-color: #1F2937;\n  --bs-table-hover-bg: #939aa6;\n  --bs-table-hover-color: #1F2937;\n  color: #1F2937;\n  border-color: #9097a3; }\n\n.table-dark {\n  --bs-table-bg: #1F2937;\n  --bs-table-striped-bg: #2a3441;\n  --bs-table-striped-color: #ffffff;\n  --bs-table-active-bg: #353e4b;\n  --bs-table-active-color: #ffffff;\n  --bs-table-hover-bg: #303946;\n  --bs-table-hover-color: #ffffff;\n  color: #ffffff;\n  border-color: #353e4b; }\n\n.table-responsive {\n  overflow-x: auto;\n  -webkit-overflow-scrolling: touch; }\n\n@media (max-width: 575.98px) {\n  .table-responsive-sm {\n    overflow-x: auto;\n    -webkit-overflow-scrolling: touch; } }\n\n@media (max-width: 767.98px) {\n  .table-responsive-md {\n    overflow-x: auto;\n    -webkit-overflow-scrolling: touch; } }\n\n@media (max-width: 991.98px) {\n  .table-responsive-lg {\n    overflow-x: auto;\n    -webkit-overflow-scrolling: touch; } }\n\n@media (max-width: 1199.98px) {\n  .table-responsive-xl {\n    overflow-x: auto;\n    -webkit-overflow-scrolling: touch; } }\n\n@media (max-width: 1399.98px) {\n  .table-responsive-xxl {\n    overflow-x: auto;\n    -webkit-overflow-scrolling: touch; } }\n\n.form-label {\n  margin-bottom: 0.5rem; }\n\n.col-form-label {\n  padding-top: 0.5625rem;\n  padding-bottom: 0.5625rem;\n  margin-bottom: 0;\n  font-size: inherit;\n  line-height: 1.5; }\n\n.col-form-label-lg {\n  padding-top: 0.5625rem;\n  padding-bottom: 0.5625rem;\n  font-size: 1.25rem; }\n\n.col-form-label-sm {\n  padding-top: 0.4375rem;\n  padding-bottom: 0.4375rem;\n  font-size: 0.875rem; }\n\n.form-text {\n  margin-top: 0.25rem;\n  font-size: 0.875em;\n  color: #58677d; }\n\n.form-control {\n  display: block;\n  width: 100%;\n  padding: 0.5rem 1rem;\n  font-size: 0.875rem;\n  font-weight: 400;\n  line-height: 1.5;\n  color: #6B7280;\n  background-color: #ffffff;\n  background-clip: padding-box;\n  border: 0.0625rem solid #D1D5DB;\n  -webkit-appearance: none;\n          appearance: none;\n  border-radius: 0.5rem;\n  box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.07);\n  transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; }\n  @media (prefers-reduced-motion: reduce) {\n    .form-control {\n      transition: none; } }\n  .form-control[type=\"file\"] {\n    overflow: hidden; }\n    .form-control[type=\"file\"]:not(:disabled):not([readonly]) {\n      cursor: pointer; }\n  .form-control:focus {\n    color: #6B7280;\n    background-color: #ffffff;\n    border-color: #4d6689;\n    outline: 0;\n    box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.07), 0 0 0 0.18rem rgba(31, 41, 55, 0.25); }\n  .form-control::-webkit-date-and-time-value {\n    height: 1.5em; }\n  .form-control::placeholder {\n    color: #4B5563;\n    opacity: 1; }\n  .form-control:disabled, .form-control[readonly] {\n    background-color: #E5E7EB;\n    opacity: 1; }\n  .form-control::-webkit-file-upload-button {\n    padding: 0.5rem 1rem;\n    margin: -0.5rem -1rem;\n    -webkit-margin-end: 1rem;\n            margin-inline-end: 1rem;\n    color: #6B7280;\n    background-color: #ffffff;\n    pointer-events: none;\n    border-color: inherit;\n    border-style: solid;\n    border-width: 0;\n    border-inline-end-width: 0.0625rem;\n    border-radius: 0;\n    -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;\n    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; }\n  .form-control::file-selector-button {\n    padding: 0.5rem 1rem;\n    margin: -0.5rem -1rem;\n    -webkit-margin-end: 1rem;\n            margin-inline-end: 1rem;\n    color: #6B7280;\n    background-color: #ffffff;\n    pointer-events: none;\n    border-color: inherit;\n    border-style: solid;\n    border-width: 0;\n    border-inline-end-width: 0.0625rem;\n    border-radius: 0;\n    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; }\n    @media (prefers-reduced-motion: reduce) {\n      .form-control::-webkit-file-upload-button {\n        -webkit-transition: none;\n        transition: none; }\n      .form-control::file-selector-button {\n        transition: none; } }\n  .form-control:hover:not(:disabled):not([readonly])::-webkit-file-upload-button {\n    background-color: #f2f2f2; }\n  .form-control:hover:not(:disabled):not([readonly])::file-selector-button {\n    background-color: #f2f2f2; }\n  .form-control::-webkit-file-upload-button {\n    padding: 0.5rem 1rem;\n    margin: -0.5rem -1rem;\n    -webkit-margin-end: 1rem;\n            margin-inline-end: 1rem;\n    color: #6B7280;\n    background-color: #ffffff;\n    pointer-events: none;\n    border-color: inherit;\n    border-style: solid;\n    border-width: 0;\n    border-inline-end-width: 0.0625rem;\n    border-radius: 0;\n    -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;\n    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; }\n    @media (prefers-reduced-motion: reduce) {\n      .form-control::-webkit-file-upload-button {\n        -webkit-transition: none;\n        transition: none; } }\n  .form-control:hover:not(:disabled):not([readonly])::-webkit-file-upload-button {\n    background-color: #f2f2f2; }\n\n.form-control-plaintext {\n  display: block;\n  width: 100%;\n  padding: 0.5rem 0;\n  margin-bottom: 0;\n  line-height: 1.5;\n  color: #374151;\n  background-color: transparent;\n  border: solid transparent;\n  border-width: 0.0625rem 0; }\n  .form-control-plaintext.form-control-sm, .form-control-plaintext.form-control-lg {\n    padding-right: 0;\n    padding-left: 0; }\n\n.form-control-sm {\n  min-height: calc(1.5em + 0.875rem);\n  padding: 0.375rem 0.625rem;\n  font-size: 0.875rem;\n  border-radius: 0.5rem; }\n  .form-control-sm::-webkit-file-upload-button {\n    padding: 0.375rem 0.625rem;\n    margin: -0.375rem -0.625rem;\n    -webkit-margin-end: 0.625rem;\n            margin-inline-end: 0.625rem; }\n  .form-control-sm::file-selector-button {\n    padding: 0.375rem 0.625rem;\n    margin: -0.375rem -0.625rem;\n    -webkit-margin-end: 0.625rem;\n            margin-inline-end: 0.625rem; }\n  .form-control-sm::-webkit-file-upload-button {\n    padding: 0.375rem 0.625rem;\n    margin: -0.375rem -0.625rem;\n    -webkit-margin-end: 0.625rem;\n            margin-inline-end: 0.625rem; }\n\n.form-control-lg {\n  min-height: calc(1.5em + 1.125rem);\n  padding: 0.5rem 1rem;\n  font-size: 1.25rem;\n  border-radius: 0.5rem; }\n  .form-control-lg::-webkit-file-upload-button {\n    padding: 0.5rem 1rem;\n    margin: -0.5rem -1rem;\n    -webkit-margin-end: 1rem;\n            margin-inline-end: 1rem; }\n  .form-control-lg::file-selector-button {\n    padding: 0.5rem 1rem;\n    margin: -0.5rem -1rem;\n    -webkit-margin-end: 1rem;\n            margin-inline-end: 1rem; }\n  .form-control-lg::-webkit-file-upload-button {\n    padding: 0.5rem 1rem;\n    margin: -0.5rem -1rem;\n    -webkit-margin-end: 1rem;\n            margin-inline-end: 1rem; }\n\ntextarea.form-control {\n  min-height: calc(1.5em + 1.125rem); }\n\ntextarea.form-control-sm {\n  min-height: calc(1.5em + 0.875rem); }\n\ntextarea.form-control-lg {\n  min-height: calc(1.5em + 1.125rem); }\n\n.form-control-color {\n  width: 3rem;\n  height: auto;\n  padding: 0.5rem; }\n  .form-control-color:not(:disabled):not([readonly]) {\n    cursor: pointer; }\n  .form-control-color::-moz-color-swatch {\n    height: 1.5em;\n    border-radius: 0.5rem; }\n  .form-control-color::-webkit-color-swatch {\n    height: 1.5em;\n    border-radius: 0.5rem; }\n\n.form-select {\n  display: block;\n  width: 100%;\n  padding: 0.5rem 1rem 0.5rem 1rem;\n  -moz-padding-start: calc(1rem - 3px);\n  font-size: 0.875rem;\n  font-weight: 400;\n  line-height: 1.5;\n  color: #6B7280;\n  background-color: #ffffff;\n  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='%231F2937' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e\");\n  background-repeat: no-repeat;\n  background-position: right 1rem center;\n  background-size: 16px 12px;\n  border: 0.0625rem solid #D1D5DB;\n  border-radius: 0.5rem;\n  box-shadow: inset 0 1px 2px rgba(17, 24, 39, 0.0125);\n  transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n  -webkit-appearance: none;\n          appearance: none; }\n  @media (prefers-reduced-motion: reduce) {\n    .form-select {\n      transition: none; } }\n  .form-select:focus {\n    border-color: #4d6689;\n    outline: 0;\n    box-shadow: inset 0 1px 2px rgba(17, 24, 39, 0.0125), 0 0 0 0.18rem rgba(31, 41, 55, 0.25); }\n  .form-select[multiple], .form-select[size]:not([size=\"1\"]) {\n    padding-right: 1rem;\n    background-image: none; }\n  .form-select:disabled {\n    color: #4B5563;\n    background-color: #E5E7EB; }\n  .form-select:-moz-focusring {\n    color: transparent;\n    text-shadow: 0 0 0 #6B7280; }\n\n.form-select-sm {\n  padding-top: 0.375rem;\n  padding-bottom: 0.375rem;\n  padding-left: 0.625rem;\n  font-size: 0.875rem; }\n\n.form-select-lg {\n  padding-top: 0.5rem;\n  padding-bottom: 0.5rem;\n  padding-left: 1rem;\n  font-size: 1.25rem; }\n\n.form-check {\n  display: block;\n  min-height: 1.5rem;\n  padding-left: 1.625em;\n  margin-bottom: 0.125rem; }\n  .form-check .form-check-input {\n    float: left;\n    margin-left: -1.625em; }\n\n.form-check-input {\n  width: 1.125em;\n  height: 1.125em;\n  margin-top: 0.1875em;\n  vertical-align: top;\n  background-color: #F2F4F6;\n  background-repeat: no-repeat;\n  background-position: center;\n  background-size: contain;\n  border: 1px solid #D1D5DB;\n  -webkit-appearance: none;\n          appearance: none;\n  -webkit-print-color-adjust: exact;\n          color-adjust: exact;\n  transition: background-color 0.2s ease-in-out, background-position 0.2s ease-in-out, border-color 0.2s ease-in-out, box-shadow 0.2s ease-in-out; }\n  @media (prefers-reduced-motion: reduce) {\n    .form-check-input {\n      transition: none; } }\n  .form-check-input[type=\"checkbox\"] {\n    border-radius: 0.25em; }\n  .form-check-input[type=\"radio\"] {\n    border-radius: 50%; }\n  .form-check-input:active {\n    filter: brightness(90%); }\n  .form-check-input:focus {\n    border-color: #4d6689;\n    outline: 0;\n    box-shadow: 0 0 0 0.18rem rgba(31, 41, 55, 0.25); }\n  .form-check-input:checked {\n    background-color: #1F2937;\n    border-color: #1F2937; }\n    .form-check-input:checked[type=\"checkbox\"] {\n      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='%23ffffff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10l3 3l6-6'/%3e%3c/svg%3e\"); }\n    .form-check-input:checked[type=\"radio\"] {\n      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='%23ffffff'/%3e%3c/svg%3e\"); }\n  .form-check-input[type=\"checkbox\"]:indeterminate {\n    background-color: #1F2937;\n    border-color: #1F2937;\n    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='%23ffffff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10h8'/%3e%3c/svg%3e\"); }\n  .form-check-input:disabled {\n    pointer-events: none;\n    filter: none;\n    opacity: 0.5; }\n  .form-check-input[disabled] ~ .form-check-label, .form-check-input:disabled ~ .form-check-label {\n    opacity: 0.5; }\n\n.form-switch {\n  padding-left: 2.75em; }\n  .form-switch .form-check-input {\n    width: 2.25em;\n    margin-left: -2.75em;\n    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='%234B5563'/%3e%3c/svg%3e\");\n    background-position: left center;\n    border-radius: 2.25em;\n    transition: background-position 0.15s ease-in-out; }\n    @media (prefers-reduced-motion: reduce) {\n      .form-switch .form-check-input {\n        transition: none; } }\n    .form-switch .form-check-input:focus {\n      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='%234d6689'/%3e%3c/svg%3e\"); }\n    .form-switch .form-check-input:checked {\n      background-position: right center;\n      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='%23ffffff'/%3e%3c/svg%3e\"); }\n\n.form-check-inline {\n  display: inline-block;\n  margin-right: 1rem; }\n\n.btn-check {\n  position: absolute;\n  clip: rect(0, 0, 0, 0);\n  pointer-events: none; }\n  .btn-check[disabled] + .btn, .btn-check:disabled + .btn {\n    pointer-events: none;\n    filter: none;\n    opacity: 0.65; }\n\n.form-range {\n  width: 100%;\n  height: 1.36rem;\n  padding: 0;\n  background-color: transparent;\n  -webkit-appearance: none;\n          appearance: none; }\n  .form-range:focus {\n    outline: 0; }\n    .form-range:focus::-webkit-slider-thumb {\n      box-shadow: 0 0 0 1px #F2F4F6, 0 0 0 0.18rem rgba(31, 41, 55, 0.25); }\n    .form-range:focus::-moz-range-thumb {\n      box-shadow: 0 0 0 1px #F2F4F6, 0 0 0 0.18rem rgba(31, 41, 55, 0.25); }\n  .form-range::-moz-focus-outer {\n    border: 0; }\n  .form-range::-webkit-slider-thumb {\n    width: 1rem;\n    height: 1rem;\n    margin-top: -0.25rem;\n    background-color: #1F2937;\n    border: 0;\n    border-radius: 1rem;\n    box-shadow: 0 0.1rem 0.25rem rgba(17, 24, 39, 0.1);\n    -webkit-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n    transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n    -webkit-appearance: none;\n            appearance: none; }\n    @media (prefers-reduced-motion: reduce) {\n      .form-range::-webkit-slider-thumb {\n        -webkit-transition: none;\n        transition: none; } }\n    .form-range::-webkit-slider-thumb:active {\n      background-color: #627fa7; }\n  .form-range::-webkit-slider-runnable-track {\n    width: 100%;\n    height: 0.5rem;\n    color: transparent;\n    cursor: pointer;\n    background-color: #D1D5DB;\n    border-color: transparent;\n    border-radius: 1rem;\n    box-shadow: inset 0 1px 2px rgba(17, 24, 39, 0.0125); }\n  .form-range::-moz-range-thumb {\n    width: 1rem;\n    height: 1rem;\n    background-color: #1F2937;\n    border: 0;\n    border-radius: 1rem;\n    box-shadow: 0 0.1rem 0.25rem rgba(17, 24, 39, 0.1);\n    -moz-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n    transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n    appearance: none; }\n    @media (prefers-reduced-motion: reduce) {\n      .form-range::-moz-range-thumb {\n        -moz-transition: none;\n        transition: none; } }\n    .form-range::-moz-range-thumb:active {\n      background-color: #627fa7; }\n  .form-range::-moz-range-track {\n    width: 100%;\n    height: 0.5rem;\n    color: transparent;\n    cursor: pointer;\n    background-color: #D1D5DB;\n    border-color: transparent;\n    border-radius: 1rem;\n    box-shadow: inset 0 1px 2px rgba(17, 24, 39, 0.0125); }\n  .form-range:disabled {\n    pointer-events: none; }\n    .form-range:disabled::-webkit-slider-thumb {\n      background-color: #6B7280; }\n    .form-range:disabled::-moz-range-thumb {\n      background-color: #6B7280; }\n\n.form-floating {\n  position: relative; }\n  .form-floating > .form-control,\n  .form-floating > .form-select {\n    height: 3.625rem;\n    line-height: 1.25; }\n  .form-floating > label {\n    position: absolute;\n    top: 0;\n    left: 0;\n    height: 100%;\n    padding: 1rem 1rem;\n    pointer-events: none;\n    border: 0.0625rem solid transparent;\n    transform-origin: 0 0;\n    transition: opacity 0.1s ease-in-out, transform 0.1s ease-in-out; }\n    @media (prefers-reduced-motion: reduce) {\n      .form-floating > label {\n        transition: none; } }\n  .form-floating > .form-control {\n    padding: 1rem 1rem; }\n    .form-floating > .form-control::placeholder {\n      color: transparent; }\n    .form-floating > .form-control:focus, .form-floating > .form-control:not(:placeholder-shown) {\n      padding-top: 1.625rem;\n      padding-bottom: 0.625rem; }\n    .form-floating > .form-control:-webkit-autofill {\n      padding-top: 1.625rem;\n      padding-bottom: 0.625rem; }\n  .form-floating > .form-select {\n    padding-top: 1.625rem;\n    padding-bottom: 0.625rem; }\n  .form-floating > .form-control:focus ~ label,\n  .form-floating > .form-control:not(:placeholder-shown) ~ label,\n  .form-floating > .form-select ~ label {\n    opacity: 0.65;\n    transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem); }\n  .form-floating > .form-control:-webkit-autofill ~ label {\n    opacity: 0.65;\n    transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem); }\n\n.input-group {\n  position: relative;\n  display: flex;\n  flex-wrap: wrap;\n  align-items: stretch;\n  width: 100%; }\n  .input-group > .form-control,\n  .input-group > .form-select {\n    position: relative;\n    flex: 1 1 auto;\n    width: 1%;\n    min-width: 0; }\n  .input-group > .form-control:focus,\n  .input-group > .form-select:focus {\n    z-index: 3; }\n  .input-group .btn {\n    position: relative;\n    z-index: 2; }\n    .input-group .btn:focus {\n      z-index: 3; }\n\n.input-group-text {\n  display: flex;\n  align-items: center;\n  padding: 0.5rem 0.625rem;\n  font-size: 0.875rem;\n  font-weight: 400;\n  line-height: 1.5;\n  color: #6B7280;\n  text-align: center;\n  white-space: nowrap;\n  background-color: #ffffff;\n  border: 0.0625rem solid #D1D5DB;\n  border-radius: 0.5rem; }\n\n.input-group-lg > .form-control,\n.input-group-lg > .form-select,\n.input-group-lg > .input-group-text,\n.input-group-lg > .btn {\n  padding: 0.5rem 1rem;\n  font-size: 1.25rem;\n  border-radius: 0.5rem; }\n\n.input-group-sm > .form-control,\n.input-group-sm > .form-select,\n.input-group-sm > .input-group-text,\n.input-group-sm > .btn {\n  padding: 0.375rem 0.625rem;\n  font-size: 0.875rem;\n  border-radius: 0.5rem; }\n\n.input-group-lg > .form-select,\n.input-group-sm > .form-select {\n  padding-right: 2rem; }\n\n.input-group:not(.has-validation) > :not(:last-child):not(.dropdown-toggle):not(.dropdown-menu),\n.input-group:not(.has-validation) > .dropdown-toggle:nth-last-child(n + 3) {\n  border-top-right-radius: 0;\n  border-bottom-right-radius: 0; }\n\n.input-group.has-validation > :nth-last-child(n + 3):not(.dropdown-toggle):not(.dropdown-menu),\n.input-group.has-validation > .dropdown-toggle:nth-last-child(n + 4) {\n  border-top-right-radius: 0;\n  border-bottom-right-radius: 0; }\n\n.input-group > :not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback) {\n  margin-left: -0.0625rem;\n  border-top-left-radius: 0;\n  border-bottom-left-radius: 0; }\n\n.valid-feedback {\n  display: none;\n  width: 100%;\n  margin-top: 0.25rem;\n  font-size: 0.875em;\n  color: #10B981; }\n\n.valid-tooltip {\n  position: absolute;\n  top: 100%;\n  z-index: 5;\n  display: none;\n  max-width: 100%;\n  padding: 0.5rem 0.55rem;\n  margin-top: .1rem;\n  font-size: 0.875rem;\n  color: #1F2937;\n  background-color: rgba(16, 185, 129, 0.99);\n  border-radius: 0.5rem; }\n\n.was-validated :valid ~ .valid-feedback,\n.was-validated :valid ~ .valid-tooltip,\n.is-valid ~ .valid-feedback,\n.is-valid ~ .valid-tooltip {\n  display: block; }\n\n.was-validated .form-control:valid, .form-control.is-valid {\n  border-color: #10B981;\n  padding-right: calc(1.5em + 1rem);\n  background-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%2310B981' 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\");\n  background-repeat: no-repeat;\n  background-position: right calc(0.375em + 0.25rem) center;\n  background-size: calc(0.75em + 0.5rem) calc(0.75em + 0.5rem); }\n  .was-validated .form-control:valid:focus, .form-control.is-valid:focus {\n    border-color: #10B981;\n    box-shadow: 0 0 0 0.18rem rgba(16, 185, 129, 0.25); }\n\n.was-validated textarea.form-control:valid, textarea.form-control.is-valid {\n  padding-right: calc(1.5em + 1rem);\n  background-position: top calc(0.375em + 0.25rem) right calc(0.375em + 0.25rem); }\n\n.was-validated .form-select:valid, .form-select.is-valid {\n  border-color: #10B981; }\n  .was-validated .form-select:valid:not([multiple]):not([size]), .was-validated .form-select:valid:not([multiple])[size=\"1\"], .form-select.is-valid:not([multiple]):not([size]), .form-select.is-valid:not([multiple])[size=\"1\"] {\n    padding-right: 3.5rem;\n    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='%231F2937' 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='%2310B981' 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\");\n    background-position: right 1rem center, center right 2rem;\n    background-size: 16px 12px, calc(0.75em + 0.5rem) calc(0.75em + 0.5rem); }\n  .was-validated .form-select:valid:focus, .form-select.is-valid:focus {\n    border-color: #10B981;\n    box-shadow: 0 0 0 0.18rem rgba(16, 185, 129, 0.25); }\n\n.was-validated .form-check-input:valid, .form-check-input.is-valid {\n  border-color: #10B981; }\n  .was-validated .form-check-input:valid:checked, .form-check-input.is-valid:checked {\n    background-color: #10B981; }\n  .was-validated .form-check-input:valid:focus, .form-check-input.is-valid:focus {\n    box-shadow: 0 0 0 0.18rem rgba(16, 185, 129, 0.25); }\n  .was-validated .form-check-input:valid ~ .form-check-label, .form-check-input.is-valid ~ .form-check-label {\n    color: #10B981; }\n\n.form-check-inline .form-check-input ~ .valid-feedback {\n  margin-left: .5em; }\n\n.was-validated .input-group .form-control:valid, .input-group .form-control.is-valid, .was-validated\n.input-group .form-select:valid,\n.input-group .form-select.is-valid {\n  z-index: 1; }\n  .was-validated .input-group .form-control:valid:focus, .input-group .form-control.is-valid:focus, .was-validated\n  .input-group .form-select:valid:focus,\n  .input-group .form-select.is-valid:focus {\n    z-index: 3; }\n\n.invalid-feedback {\n  display: none;\n  width: 100%;\n  margin-top: 0.25rem;\n  font-size: 0.875em;\n  color: #E11D48; }\n\n.invalid-tooltip {\n  position: absolute;\n  top: 100%;\n  z-index: 5;\n  display: none;\n  max-width: 100%;\n  padding: 0.5rem 0.55rem;\n  margin-top: .1rem;\n  font-size: 0.875rem;\n  color: #ffffff;\n  background-color: rgba(225, 29, 72, 0.99);\n  border-radius: 0.5rem; }\n\n.was-validated :invalid ~ .invalid-feedback,\n.was-validated :invalid ~ .invalid-tooltip,\n.is-invalid ~ .invalid-feedback,\n.is-invalid ~ .invalid-tooltip {\n  display: block; }\n\n.was-validated .form-control:invalid, .form-control.is-invalid {\n  border-color: #E11D48;\n  padding-right: calc(1.5em + 1rem);\n  background-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23E11D48' 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='%23E11D48' stroke='none'/%3e%3c/svg%3e\");\n  background-repeat: no-repeat;\n  background-position: right calc(0.375em + 0.25rem) center;\n  background-size: calc(0.75em + 0.5rem) calc(0.75em + 0.5rem); }\n  .was-validated .form-control:invalid:focus, .form-control.is-invalid:focus {\n    border-color: #E11D48;\n    box-shadow: 0 0 0 0.18rem rgba(225, 29, 72, 0.25); }\n\n.was-validated textarea.form-control:invalid, textarea.form-control.is-invalid {\n  padding-right: calc(1.5em + 1rem);\n  background-position: top calc(0.375em + 0.25rem) right calc(0.375em + 0.25rem); }\n\n.was-validated .form-select:invalid, .form-select.is-invalid {\n  border-color: #E11D48; }\n  .was-validated .form-select:invalid:not([multiple]):not([size]), .was-validated .form-select:invalid:not([multiple])[size=\"1\"], .form-select.is-invalid:not([multiple]):not([size]), .form-select.is-invalid:not([multiple])[size=\"1\"] {\n    padding-right: 3.5rem;\n    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='%231F2937' 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' width='12' height='12' fill='none' stroke='%23E11D48' 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='%23E11D48' stroke='none'/%3e%3c/svg%3e\");\n    background-position: right 1rem center, center right 2rem;\n    background-size: 16px 12px, calc(0.75em + 0.5rem) calc(0.75em + 0.5rem); }\n  .was-validated .form-select:invalid:focus, .form-select.is-invalid:focus {\n    border-color: #E11D48;\n    box-shadow: 0 0 0 0.18rem rgba(225, 29, 72, 0.25); }\n\n.was-validated .form-check-input:invalid, .form-check-input.is-invalid {\n  border-color: #E11D48; }\n  .was-validated .form-check-input:invalid:checked, .form-check-input.is-invalid:checked {\n    background-color: #E11D48; }\n  .was-validated .form-check-input:invalid:focus, .form-check-input.is-invalid:focus {\n    box-shadow: 0 0 0 0.18rem rgba(225, 29, 72, 0.25); }\n  .was-validated .form-check-input:invalid ~ .form-check-label, .form-check-input.is-invalid ~ .form-check-label {\n    color: #E11D48; }\n\n.form-check-inline .form-check-input ~ .invalid-feedback {\n  margin-left: .5em; }\n\n.was-validated .input-group .form-control:invalid, .input-group .form-control.is-invalid, .was-validated\n.input-group .form-select:invalid,\n.input-group .form-select.is-invalid {\n  z-index: 2; }\n  .was-validated .input-group .form-control:invalid:focus, .input-group .form-control.is-invalid:focus, .was-validated\n  .input-group .form-select:invalid:focus,\n  .input-group .form-select.is-invalid:focus {\n    z-index: 3; }\n\n.btn {\n  display: inline-block;\n  font-weight: 500;\n  line-height: 1.5;\n  color: #374151;\n  text-align: center;\n  vertical-align: middle;\n  cursor: pointer;\n  -webkit-user-select: none;\n          user-select: none;\n  background-color: transparent;\n  border: 0.0625rem solid transparent;\n  padding: 0.5rem 1rem;\n  font-size: 0.875rem;\n  border-radius: 0.5rem;\n  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; }\n  @media (prefers-reduced-motion: reduce) {\n    .btn {\n      transition: none; } }\n  .btn:hover {\n    color: #374151; }\n  .btn-check:focus + .btn, .btn:focus {\n    outline: 0;\n    box-shadow: 0 0 0 0.18rem rgba(31, 41, 55, 0.25); }\n  .btn-check:checked + .btn,\n  .btn-check:active + .btn, .btn:active, .btn.active {\n    box-shadow: inset 0 3px 5px rgba(17, 24, 39, 0.125); }\n    .btn-check:checked + .btn:focus,\n    .btn-check:active + .btn:focus, .btn:active:focus, .btn.active:focus {\n      box-shadow: 0 0 0 0.18rem rgba(31, 41, 55, 0.25), inset 0 3px 5px rgba(17, 24, 39, 0.125); }\n  .btn:disabled, .btn.disabled,\n  fieldset:disabled .btn {\n    pointer-events: none;\n    opacity: 0.65;\n    box-shadow: none; }\n\n.btn-primary {\n  color: #ffffff;\n  background-color: #1F2937;\n  border-color: #1F2937;\n  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(17, 24, 39, 0.075); }\n  .btn-primary:hover {\n    color: #ffffff;\n    background-color: #1a232f;\n    border-color: #19212c; }\n  .btn-check:focus + .btn-primary, .btn-primary:focus {\n    color: #ffffff;\n    background-color: #1a232f;\n    border-color: #19212c;\n    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(17, 24, 39, 0.075), 0 0 0 0.18rem rgba(65, 73, 85, 0.5); }\n  .btn-check:checked + .btn-primary,\n  .btn-check:active + .btn-primary, .btn-primary:active, .btn-primary.active,\n  .show > .btn-primary.dropdown-toggle {\n    color: #ffffff;\n    background-color: #19212c;\n    border-color: #171f29; }\n    .btn-check:checked + .btn-primary:focus,\n    .btn-check:active + .btn-primary:focus, .btn-primary:active:focus, .btn-primary.active:focus,\n    .show > .btn-primary.dropdown-toggle:focus {\n      box-shadow: inset 0 3px 5px rgba(17, 24, 39, 0.125), 0 0 0 0.18rem rgba(65, 73, 85, 0.5); }\n  .btn-primary:disabled, .btn-primary.disabled {\n    color: #ffffff;\n    background-color: #1F2937;\n    border-color: #1F2937; }\n\n.btn-secondary {\n  color: #1F2937;\n  background-color: #f0bc74;\n  border-color: #f0bc74;\n  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(17, 24, 39, 0.075); }\n  .btn-secondary:hover {\n    color: #1F2937;\n    background-color: #f2c689;\n    border-color: #f2c382; }\n  .btn-check:focus + .btn-secondary, .btn-secondary:focus {\n    color: #1F2937;\n    background-color: #f2c689;\n    border-color: #f2c382;\n    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(17, 24, 39, 0.075), 0 0 0 0.18rem rgba(209, 166, 107, 0.5); }\n  .btn-check:checked + .btn-secondary,\n  .btn-check:active + .btn-secondary, .btn-secondary:active, .btn-secondary.active,\n  .show > .btn-secondary.dropdown-toggle {\n    color: #1F2937;\n    background-color: #f3c990;\n    border-color: #f2c382; }\n    .btn-check:checked + .btn-secondary:focus,\n    .btn-check:active + .btn-secondary:focus, .btn-secondary:active:focus, .btn-secondary.active:focus,\n    .show > .btn-secondary.dropdown-toggle:focus {\n      box-shadow: inset 0 3px 5px rgba(17, 24, 39, 0.125), 0 0 0 0.18rem rgba(209, 166, 107, 0.5); }\n  .btn-secondary:disabled, .btn-secondary.disabled {\n    color: #1F2937;\n    background-color: #f0bc74;\n    border-color: #f0bc74; }\n\n.btn-tertiary {\n  color: #ffffff;\n  background-color: #31316A;\n  border-color: #31316A;\n  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(17, 24, 39, 0.075); }\n  .btn-tertiary:hover {\n    color: #ffffff;\n    background-color: #2a2a5a;\n    border-color: #272755; }\n  .btn-check:focus + .btn-tertiary, .btn-tertiary:focus {\n    color: #ffffff;\n    background-color: #2a2a5a;\n    border-color: #272755;\n    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(17, 24, 39, 0.075), 0 0 0 0.18rem rgba(80, 80, 128, 0.5); }\n  .btn-check:checked + .btn-tertiary,\n  .btn-check:active + .btn-tertiary, .btn-tertiary:active, .btn-tertiary.active,\n  .show > .btn-tertiary.dropdown-toggle {\n    color: #ffffff;\n    background-color: #272755;\n    border-color: #252550; }\n    .btn-check:checked + .btn-tertiary:focus,\n    .btn-check:active + .btn-tertiary:focus, .btn-tertiary:active:focus, .btn-tertiary.active:focus,\n    .show > .btn-tertiary.dropdown-toggle:focus {\n      box-shadow: inset 0 3px 5px rgba(17, 24, 39, 0.125), 0 0 0 0.18rem rgba(80, 80, 128, 0.5); }\n  .btn-tertiary:disabled, .btn-tertiary.disabled {\n    color: #ffffff;\n    background-color: #31316A;\n    border-color: #31316A; }\n\n.btn-success {\n  color: #1F2937;\n  background-color: #10B981;\n  border-color: #10B981;\n  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(17, 24, 39, 0.075); }\n  .btn-success:hover {\n    color: #1F2937;\n    background-color: #34c494;\n    border-color: #28c08e; }\n  .btn-check:focus + .btn-success, .btn-success:focus {\n    color: #1F2937;\n    background-color: #34c494;\n    border-color: #28c08e;\n    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(17, 24, 39, 0.075), 0 0 0 0.18rem rgba(18, 163, 118, 0.5); }\n  .btn-check:checked + .btn-success,\n  .btn-check:active + .btn-success, .btn-success:active, .btn-success.active,\n  .show > .btn-success.dropdown-toggle {\n    color: #1F2937;\n    background-color: #40c79a;\n    border-color: #28c08e; }\n    .btn-check:checked + .btn-success:focus,\n    .btn-check:active + .btn-success:focus, .btn-success:active:focus, .btn-success.active:focus,\n    .show > .btn-success.dropdown-toggle:focus {\n      box-shadow: inset 0 3px 5px rgba(17, 24, 39, 0.125), 0 0 0 0.18rem rgba(18, 163, 118, 0.5); }\n  .btn-success:disabled, .btn-success.disabled {\n    color: #1F2937;\n    background-color: #10B981;\n    border-color: #10B981; }\n\n.btn-info {\n  color: #ffffff;\n  background-color: #2361ce;\n  border-color: #2361ce;\n  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(17, 24, 39, 0.075); }\n  .btn-info:hover {\n    color: #ffffff;\n    background-color: #1e52af;\n    border-color: #1c4ea5; }\n  .btn-check:focus + .btn-info, .btn-info:focus {\n    color: #ffffff;\n    background-color: #1e52af;\n    border-color: #1c4ea5;\n    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(17, 24, 39, 0.075), 0 0 0 0.18rem rgba(68, 121, 213, 0.5); }\n  .btn-check:checked + .btn-info,\n  .btn-check:active + .btn-info, .btn-info:active, .btn-info.active,\n  .show > .btn-info.dropdown-toggle {\n    color: #ffffff;\n    background-color: #1c4ea5;\n    border-color: #1a499b; }\n    .btn-check:checked + .btn-info:focus,\n    .btn-check:active + .btn-info:focus, .btn-info:active:focus, .btn-info.active:focus,\n    .show > .btn-info.dropdown-toggle:focus {\n      box-shadow: inset 0 3px 5px rgba(17, 24, 39, 0.125), 0 0 0 0.18rem rgba(68, 121, 213, 0.5); }\n  .btn-info:disabled, .btn-info.disabled {\n    color: #ffffff;\n    background-color: #2361ce;\n    border-color: #2361ce; }\n\n.btn-warning {\n  color: #1F2937;\n  background-color: #f3c78e;\n  border-color: #f3c78e;\n  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(17, 24, 39, 0.075); }\n  .btn-warning:hover {\n    color: #1F2937;\n    background-color: #f5cf9f;\n    border-color: #f4cd99; }\n  .btn-check:focus + .btn-warning, .btn-warning:focus {\n    color: #1F2937;\n    background-color: #f5cf9f;\n    border-color: #f4cd99;\n    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(17, 24, 39, 0.075), 0 0 0 0.18rem rgba(211, 175, 129, 0.5); }\n  .btn-check:checked + .btn-warning,\n  .btn-check:active + .btn-warning, .btn-warning:active, .btn-warning.active,\n  .show > .btn-warning.dropdown-toggle {\n    color: #1F2937;\n    background-color: #f5d2a5;\n    border-color: #f4cd99; }\n    .btn-check:checked + .btn-warning:focus,\n    .btn-check:active + .btn-warning:focus, .btn-warning:active:focus, .btn-warning.active:focus,\n    .show > .btn-warning.dropdown-toggle:focus {\n      box-shadow: inset 0 3px 5px rgba(17, 24, 39, 0.125), 0 0 0 0.18rem rgba(211, 175, 129, 0.5); }\n  .btn-warning:disabled, .btn-warning.disabled {\n    color: #1F2937;\n    background-color: #f3c78e;\n    border-color: #f3c78e; }\n\n.btn-danger {\n  color: #ffffff;\n  background-color: #E11D48;\n  border-color: #E11D48;\n  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(17, 24, 39, 0.075); }\n  .btn-danger:hover {\n    color: #ffffff;\n    background-color: #bf193d;\n    border-color: #b4173a; }\n  .btn-check:focus + .btn-danger, .btn-danger:focus {\n    color: #ffffff;\n    background-color: #bf193d;\n    border-color: #b4173a;\n    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(17, 24, 39, 0.075), 0 0 0 0.18rem rgba(230, 63, 99, 0.5); }\n  .btn-check:checked + .btn-danger,\n  .btn-check:active + .btn-danger, .btn-danger:active, .btn-danger.active,\n  .show > .btn-danger.dropdown-toggle {\n    color: #ffffff;\n    background-color: #b4173a;\n    border-color: #a91636; }\n    .btn-check:checked + .btn-danger:focus,\n    .btn-check:active + .btn-danger:focus, .btn-danger:active:focus, .btn-danger.active:focus,\n    .show > .btn-danger.dropdown-toggle:focus {\n      box-shadow: inset 0 3px 5px rgba(17, 24, 39, 0.125), 0 0 0 0.18rem rgba(230, 63, 99, 0.5); }\n  .btn-danger:disabled, .btn-danger.disabled {\n    color: #ffffff;\n    background-color: #E11D48;\n    border-color: #E11D48; }\n\n.btn-white {\n  color: #1F2937;\n  background-color: #ffffff;\n  border-color: #ffffff;\n  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(17, 24, 39, 0.075); }\n  .btn-white:hover {\n    color: #1F2937;\n    background-color: white;\n    border-color: white; }\n  .btn-check:focus + .btn-white, .btn-white:focus {\n    color: #1F2937;\n    background-color: white;\n    border-color: white;\n    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(17, 24, 39, 0.075), 0 0 0 0.18rem rgba(221, 223, 225, 0.5); }\n  .btn-check:checked + .btn-white,\n  .btn-check:active + .btn-white, .btn-white:active, .btn-white.active,\n  .show > .btn-white.dropdown-toggle {\n    color: #1F2937;\n    background-color: white;\n    border-color: white; }\n    .btn-check:checked + .btn-white:focus,\n    .btn-check:active + .btn-white:focus, .btn-white:active:focus, .btn-white.active:focus,\n    .show > .btn-white.dropdown-toggle:focus {\n      box-shadow: inset 0 3px 5px rgba(17, 24, 39, 0.125), 0 0 0 0.18rem rgba(221, 223, 225, 0.5); }\n  .btn-white:disabled, .btn-white.disabled {\n    color: #1F2937;\n    background-color: #ffffff;\n    border-color: #ffffff; }\n\n.btn-indigo {\n  color: #ffffff;\n  background-color: #4F46E5;\n  border-color: #4F46E5;\n  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(17, 24, 39, 0.075); }\n  .btn-indigo:hover {\n    color: #ffffff;\n    background-color: #433cc3;\n    border-color: #3f38b7; }\n  .btn-check:focus + .btn-indigo, .btn-indigo:focus {\n    color: #ffffff;\n    background-color: #433cc3;\n    border-color: #3f38b7;\n    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(17, 24, 39, 0.075), 0 0 0 0.18rem rgba(105, 98, 233, 0.5); }\n  .btn-check:checked + .btn-indigo,\n  .btn-check:active + .btn-indigo, .btn-indigo:active, .btn-indigo.active,\n  .show > .btn-indigo.dropdown-toggle {\n    color: #ffffff;\n    background-color: #3f38b7;\n    border-color: #3b35ac; }\n    .btn-check:checked + .btn-indigo:focus,\n    .btn-check:active + .btn-indigo:focus, .btn-indigo:active:focus, .btn-indigo.active:focus,\n    .show > .btn-indigo.dropdown-toggle:focus {\n      box-shadow: inset 0 3px 5px rgba(17, 24, 39, 0.125), 0 0 0 0.18rem rgba(105, 98, 233, 0.5); }\n  .btn-indigo:disabled, .btn-indigo.disabled {\n    color: #ffffff;\n    background-color: #4F46E5;\n    border-color: #4F46E5; }\n\n.btn-purple {\n  color: #ffffff;\n  background-color: #7C3AED;\n  border-color: #7C3AED;\n  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(17, 24, 39, 0.075); }\n  .btn-purple:hover {\n    color: #ffffff;\n    background-color: #6931c9;\n    border-color: #632ebe; }\n  .btn-check:focus + .btn-purple, .btn-purple:focus {\n    color: #ffffff;\n    background-color: #6931c9;\n    border-color: #632ebe;\n    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(17, 24, 39, 0.075), 0 0 0 0.18rem rgba(144, 88, 240, 0.5); }\n  .btn-check:checked + .btn-purple,\n  .btn-check:active + .btn-purple, .btn-purple:active, .btn-purple.active,\n  .show > .btn-purple.dropdown-toggle {\n    color: #ffffff;\n    background-color: #632ebe;\n    border-color: #5d2cb2; }\n    .btn-check:checked + .btn-purple:focus,\n    .btn-check:active + .btn-purple:focus, .btn-purple:active:focus, .btn-purple.active:focus,\n    .show > .btn-purple.dropdown-toggle:focus {\n      box-shadow: inset 0 3px 5px rgba(17, 24, 39, 0.125), 0 0 0 0.18rem rgba(144, 88, 240, 0.5); }\n  .btn-purple:disabled, .btn-purple.disabled {\n    color: #ffffff;\n    background-color: #7C3AED;\n    border-color: #7C3AED; }\n\n.btn-yellow-100 {\n  color: #1F2937;\n  background-color: #ffeed6;\n  border-color: #ffeed6;\n  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(17, 24, 39, 0.075); }\n  .btn-yellow-100:hover {\n    color: #1F2937;\n    background-color: #fff1dc;\n    border-color: #fff0da; }\n  .btn-check:focus + .btn-yellow-100, .btn-yellow-100:focus {\n    color: #1F2937;\n    background-color: #fff1dc;\n    border-color: #fff0da;\n    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(17, 24, 39, 0.075), 0 0 0 0.18rem rgba(221, 208, 190, 0.5); }\n  .btn-check:checked + .btn-yellow-100,\n  .btn-check:active + .btn-yellow-100, .btn-yellow-100:active, .btn-yellow-100.active,\n  .show > .btn-yellow-100.dropdown-toggle {\n    color: #1F2937;\n    background-color: #fff1de;\n    border-color: #fff0da; }\n    .btn-check:checked + .btn-yellow-100:focus,\n    .btn-check:active + .btn-yellow-100:focus, .btn-yellow-100:active:focus, .btn-yellow-100.active:focus,\n    .show > .btn-yellow-100.dropdown-toggle:focus {\n      box-shadow: inset 0 3px 5px rgba(17, 24, 39, 0.125), 0 0 0 0.18rem rgba(221, 208, 190, 0.5); }\n  .btn-yellow-100:disabled, .btn-yellow-100.disabled {\n    color: #1F2937;\n    background-color: #ffeed6;\n    border-color: #ffeed6; }\n\n.btn-yellow-200 {\n  color: #1F2937;\n  background-color: #f5dbb8;\n  border-color: #f5dbb8;\n  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(17, 24, 39, 0.075); }\n  .btn-yellow-200:hover {\n    color: #1F2937;\n    background-color: #f7e0c3;\n    border-color: #f6dfbf; }\n  .btn-check:focus + .btn-yellow-200, .btn-yellow-200:focus {\n    color: #1F2937;\n    background-color: #f7e0c3;\n    border-color: #f6dfbf;\n    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(17, 24, 39, 0.075), 0 0 0 0.18rem rgba(213, 192, 165, 0.5); }\n  .btn-check:checked + .btn-yellow-200,\n  .btn-check:active + .btn-yellow-200, .btn-yellow-200:active, .btn-yellow-200.active,\n  .show > .btn-yellow-200.dropdown-toggle {\n    color: #1F2937;\n    background-color: #f7e2c6;\n    border-color: #f6dfbf; }\n    .btn-check:checked + .btn-yellow-200:focus,\n    .btn-check:active + .btn-yellow-200:focus, .btn-yellow-200:active:focus, .btn-yellow-200.active:focus,\n    .show > .btn-yellow-200.dropdown-toggle:focus {\n      box-shadow: inset 0 3px 5px rgba(17, 24, 39, 0.125), 0 0 0 0.18rem rgba(213, 192, 165, 0.5); }\n  .btn-yellow-200:disabled, .btn-yellow-200.disabled {\n    color: #1F2937;\n    background-color: #f5dbb8;\n    border-color: #f5dbb8; }\n\n.btn-gray-50 {\n  color: #1F2937;\n  background-color: #F9FAFB;\n  border-color: #F9FAFB;\n  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(17, 24, 39, 0.075); }\n  .btn-gray-50:hover {\n    color: #1F2937;\n    background-color: #fafbfc;\n    border-color: #fafbfb; }\n  .btn-check:focus + .btn-gray-50, .btn-gray-50:focus {\n    color: #1F2937;\n    background-color: #fafbfc;\n    border-color: #fafbfb;\n    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(17, 24, 39, 0.075), 0 0 0 0.18rem rgba(216, 219, 222, 0.5); }\n  .btn-check:checked + .btn-gray-50,\n  .btn-check:active + .btn-gray-50, .btn-gray-50:active, .btn-gray-50.active,\n  .show > .btn-gray-50.dropdown-toggle {\n    color: #1F2937;\n    background-color: #fafbfc;\n    border-color: #fafbfb; }\n    .btn-check:checked + .btn-gray-50:focus,\n    .btn-check:active + .btn-gray-50:focus, .btn-gray-50:active:focus, .btn-gray-50.active:focus,\n    .show > .btn-gray-50.dropdown-toggle:focus {\n      box-shadow: inset 0 3px 5px rgba(17, 24, 39, 0.125), 0 0 0 0.18rem rgba(216, 219, 222, 0.5); }\n  .btn-gray-50:disabled, .btn-gray-50.disabled {\n    color: #1F2937;\n    background-color: #F9FAFB;\n    border-color: #F9FAFB; }\n\n.btn-gray-100 {\n  color: #1F2937;\n  background-color: #F2F4F6;\n  border-color: #F2F4F6;\n  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(17, 24, 39, 0.075); }\n  .btn-gray-100:hover {\n    color: #1F2937;\n    background-color: #f4f6f7;\n    border-color: #f3f5f7; }\n  .btn-check:focus + .btn-gray-100, .btn-gray-100:focus {\n    color: #1F2937;\n    background-color: #f4f6f7;\n    border-color: #f3f5f7;\n    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(17, 24, 39, 0.075), 0 0 0 0.18rem rgba(210, 214, 217, 0.5); }\n  .btn-check:checked + .btn-gray-100,\n  .btn-check:active + .btn-gray-100, .btn-gray-100:active, .btn-gray-100.active,\n  .show > .btn-gray-100.dropdown-toggle {\n    color: #1F2937;\n    background-color: #f5f6f8;\n    border-color: #f3f5f7; }\n    .btn-check:checked + .btn-gray-100:focus,\n    .btn-check:active + .btn-gray-100:focus, .btn-gray-100:active:focus, .btn-gray-100.active:focus,\n    .show > .btn-gray-100.dropdown-toggle:focus {\n      box-shadow: inset 0 3px 5px rgba(17, 24, 39, 0.125), 0 0 0 0.18rem rgba(210, 214, 217, 0.5); }\n  .btn-gray-100:disabled, .btn-gray-100.disabled {\n    color: #1F2937;\n    background-color: #F2F4F6;\n    border-color: #F2F4F6; }\n\n.btn-gray-200 {\n  color: #1F2937;\n  background-color: #E5E7EB;\n  border-color: #E5E7EB;\n  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(17, 24, 39, 0.075); }\n  .btn-gray-200:hover {\n    color: #1F2937;\n    background-color: #e9ebee;\n    border-color: #e8e9ed; }\n  .btn-check:focus + .btn-gray-200, .btn-gray-200:focus {\n    color: #1F2937;\n    background-color: #e9ebee;\n    border-color: #e8e9ed;\n    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(17, 24, 39, 0.075), 0 0 0 0.18rem rgba(199, 203, 208, 0.5); }\n  .btn-check:checked + .btn-gray-200,\n  .btn-check:active + .btn-gray-200, .btn-gray-200:active, .btn-gray-200.active,\n  .show > .btn-gray-200.dropdown-toggle {\n    color: #1F2937;\n    background-color: #eaecef;\n    border-color: #e8e9ed; }\n    .btn-check:checked + .btn-gray-200:focus,\n    .btn-check:active + .btn-gray-200:focus, .btn-gray-200:active:focus, .btn-gray-200.active:focus,\n    .show > .btn-gray-200.dropdown-toggle:focus {\n      box-shadow: inset 0 3px 5px rgba(17, 24, 39, 0.125), 0 0 0 0.18rem rgba(199, 203, 208, 0.5); }\n  .btn-gray-200:disabled, .btn-gray-200.disabled {\n    color: #1F2937;\n    background-color: #E5E7EB;\n    border-color: #E5E7EB; }\n\n.btn-gray-300 {\n  color: #1F2937;\n  background-color: #D1D5DB;\n  border-color: #D1D5DB;\n  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(17, 24, 39, 0.075); }\n  .btn-gray-300:hover {\n    color: #1F2937;\n    background-color: #d8dbe0;\n    border-color: #d6d9df; }\n  .btn-check:focus + .btn-gray-300, .btn-gray-300:focus {\n    color: #1F2937;\n    background-color: #d8dbe0;\n    border-color: #d6d9df;\n    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(17, 24, 39, 0.075), 0 0 0 0.18rem rgba(182, 187, 194, 0.5); }\n  .btn-check:checked + .btn-gray-300,\n  .btn-check:active + .btn-gray-300, .btn-gray-300:active, .btn-gray-300.active,\n  .show > .btn-gray-300.dropdown-toggle {\n    color: #1F2937;\n    background-color: #dadde2;\n    border-color: #d6d9df; }\n    .btn-check:checked + .btn-gray-300:focus,\n    .btn-check:active + .btn-gray-300:focus, .btn-gray-300:active:focus, .btn-gray-300.active:focus,\n    .show > .btn-gray-300.dropdown-toggle:focus {\n      box-shadow: inset 0 3px 5px rgba(17, 24, 39, 0.125), 0 0 0 0.18rem rgba(182, 187, 194, 0.5); }\n  .btn-gray-300:disabled, .btn-gray-300.disabled {\n    color: #1F2937;\n    background-color: #D1D5DB;\n    border-color: #D1D5DB; }\n\n.btn-gray-400 {\n  color: #1F2937;\n  background-color: #9CA3AF;\n  border-color: #9CA3AF;\n  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(17, 24, 39, 0.075); }\n  .btn-gray-400:hover {\n    color: #1F2937;\n    background-color: #abb1bb;\n    border-color: #a6acb7; }\n  .btn-check:focus + .btn-gray-400, .btn-gray-400:focus {\n    color: #1F2937;\n    background-color: #abb1bb;\n    border-color: #a6acb7;\n    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(17, 24, 39, 0.075), 0 0 0 0.18rem rgba(137, 145, 157, 0.5); }\n  .btn-check:checked + .btn-gray-400,\n  .btn-check:active + .btn-gray-400, .btn-gray-400:active, .btn-gray-400.active,\n  .show > .btn-gray-400.dropdown-toggle {\n    color: #1F2937;\n    background-color: #b0b5bf;\n    border-color: #a6acb7; }\n    .btn-check:checked + .btn-gray-400:focus,\n    .btn-check:active + .btn-gray-400:focus, .btn-gray-400:active:focus, .btn-gray-400.active:focus,\n    .show > .btn-gray-400.dropdown-toggle:focus {\n      box-shadow: inset 0 3px 5px rgba(17, 24, 39, 0.125), 0 0 0 0.18rem rgba(137, 145, 157, 0.5); }\n  .btn-gray-400:disabled, .btn-gray-400.disabled {\n    color: #1F2937;\n    background-color: #9CA3AF;\n    border-color: #9CA3AF; }\n\n.btn-gray-500 {\n  color: #ffffff;\n  background-color: #6B7280;\n  border-color: #6B7280;\n  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(17, 24, 39, 0.075); }\n  .btn-gray-500:hover {\n    color: #ffffff;\n    background-color: #5b616d;\n    border-color: #565b66; }\n  .btn-check:focus + .btn-gray-500, .btn-gray-500:focus {\n    color: #ffffff;\n    background-color: #5b616d;\n    border-color: #565b66;\n    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(17, 24, 39, 0.075), 0 0 0 0.18rem rgba(129, 135, 147, 0.5); }\n  .btn-check:checked + .btn-gray-500,\n  .btn-check:active + .btn-gray-500, .btn-gray-500:active, .btn-gray-500.active,\n  .show > .btn-gray-500.dropdown-toggle {\n    color: #ffffff;\n    background-color: #565b66;\n    border-color: #505660; }\n    .btn-check:checked + .btn-gray-500:focus,\n    .btn-check:active + .btn-gray-500:focus, .btn-gray-500:active:focus, .btn-gray-500.active:focus,\n    .show > .btn-gray-500.dropdown-toggle:focus {\n      box-shadow: inset 0 3px 5px rgba(17, 24, 39, 0.125), 0 0 0 0.18rem rgba(129, 135, 147, 0.5); }\n  .btn-gray-500:disabled, .btn-gray-500.disabled {\n    color: #ffffff;\n    background-color: #6B7280;\n    border-color: #6B7280; }\n\n.btn-gray-600 {\n  color: #ffffff;\n  background-color: #4B5563;\n  border-color: #4B5563;\n  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(17, 24, 39, 0.075); }\n  .btn-gray-600:hover {\n    color: #ffffff;\n    background-color: #404854;\n    border-color: #3c444f; }\n  .btn-check:focus + .btn-gray-600, .btn-gray-600:focus {\n    color: #ffffff;\n    background-color: #404854;\n    border-color: #3c444f;\n    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(17, 24, 39, 0.075), 0 0 0 0.18rem rgba(102, 111, 122, 0.5); }\n  .btn-check:checked + .btn-gray-600,\n  .btn-check:active + .btn-gray-600, .btn-gray-600:active, .btn-gray-600.active,\n  .show > .btn-gray-600.dropdown-toggle {\n    color: #ffffff;\n    background-color: #3c444f;\n    border-color: #38404a; }\n    .btn-check:checked + .btn-gray-600:focus,\n    .btn-check:active + .btn-gray-600:focus, .btn-gray-600:active:focus, .btn-gray-600.active:focus,\n    .show > .btn-gray-600.dropdown-toggle:focus {\n      box-shadow: inset 0 3px 5px rgba(17, 24, 39, 0.125), 0 0 0 0.18rem rgba(102, 111, 122, 0.5); }\n  .btn-gray-600:disabled, .btn-gray-600.disabled {\n    color: #ffffff;\n    background-color: #4B5563;\n    border-color: #4B5563; }\n\n.btn-gray-700 {\n  color: #ffffff;\n  background-color: #374151;\n  border-color: #374151;\n  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(17, 24, 39, 0.075); }\n  .btn-gray-700:hover {\n    color: #ffffff;\n    background-color: #2f3745;\n    border-color: #2c3441; }\n  .btn-check:focus + .btn-gray-700, .btn-gray-700:focus {\n    color: #ffffff;\n    background-color: #2f3745;\n    border-color: #2c3441;\n    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(17, 24, 39, 0.075), 0 0 0 0.18rem rgba(85, 94, 107, 0.5); }\n  .btn-check:checked + .btn-gray-700,\n  .btn-check:active + .btn-gray-700, .btn-gray-700:active, .btn-gray-700.active,\n  .show > .btn-gray-700.dropdown-toggle {\n    color: #ffffff;\n    background-color: #2c3441;\n    border-color: #29313d; }\n    .btn-check:checked + .btn-gray-700:focus,\n    .btn-check:active + .btn-gray-700:focus, .btn-gray-700:active:focus, .btn-gray-700.active:focus,\n    .show > .btn-gray-700.dropdown-toggle:focus {\n      box-shadow: inset 0 3px 5px rgba(17, 24, 39, 0.125), 0 0 0 0.18rem rgba(85, 94, 107, 0.5); }\n  .btn-gray-700:disabled, .btn-gray-700.disabled {\n    color: #ffffff;\n    background-color: #374151;\n    border-color: #374151; }\n\n.btn-gray-800 {\n  color: #ffffff;\n  background-color: #1F2937;\n  border-color: #1F2937;\n  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(17, 24, 39, 0.075); }\n  .btn-gray-800:hover {\n    color: #ffffff;\n    background-color: #1a232f;\n    border-color: #19212c; }\n  .btn-check:focus + .btn-gray-800, .btn-gray-800:focus {\n    color: #ffffff;\n    background-color: #1a232f;\n    border-color: #19212c;\n    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(17, 24, 39, 0.075), 0 0 0 0.18rem rgba(65, 73, 85, 0.5); }\n  .btn-check:checked + .btn-gray-800,\n  .btn-check:active + .btn-gray-800, .btn-gray-800:active, .btn-gray-800.active,\n  .show > .btn-gray-800.dropdown-toggle {\n    color: #ffffff;\n    background-color: #19212c;\n    border-color: #171f29; }\n    .btn-check:checked + .btn-gray-800:focus,\n    .btn-check:active + .btn-gray-800:focus, .btn-gray-800:active:focus, .btn-gray-800.active:focus,\n    .show > .btn-gray-800.dropdown-toggle:focus {\n      box-shadow: inset 0 3px 5px rgba(17, 24, 39, 0.125), 0 0 0 0.18rem rgba(65, 73, 85, 0.5); }\n  .btn-gray-800:disabled, .btn-gray-800.disabled {\n    color: #ffffff;\n    background-color: #1F2937;\n    border-color: #1F2937; }\n\n.btn-gray-900 {\n  color: #ffffff;\n  background-color: #111827;\n  border-color: #111827;\n  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(17, 24, 39, 0.075); }\n  .btn-gray-900:hover {\n    color: #ffffff;\n    background-color: #0e1421;\n    border-color: #0e131f; }\n  .btn-check:focus + .btn-gray-900, .btn-gray-900:focus {\n    color: #ffffff;\n    background-color: #0e1421;\n    border-color: #0e131f;\n    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(17, 24, 39, 0.075), 0 0 0 0.18rem rgba(53, 59, 71, 0.5); }\n  .btn-check:checked + .btn-gray-900,\n  .btn-check:active + .btn-gray-900, .btn-gray-900:active, .btn-gray-900.active,\n  .show > .btn-gray-900.dropdown-toggle {\n    color: #ffffff;\n    background-color: #0e131f;\n    border-color: #0d121d; }\n    .btn-check:checked + .btn-gray-900:focus,\n    .btn-check:active + .btn-gray-900:focus, .btn-gray-900:active:focus, .btn-gray-900.active:focus,\n    .show > .btn-gray-900.dropdown-toggle:focus {\n      box-shadow: inset 0 3px 5px rgba(17, 24, 39, 0.125), 0 0 0 0.18rem rgba(53, 59, 71, 0.5); }\n  .btn-gray-900:disabled, .btn-gray-900.disabled {\n    color: #ffffff;\n    background-color: #111827;\n    border-color: #111827; }\n\n.btn-outline-primary {\n  color: #1F2937;\n  border-color: #1F2937; }\n  .btn-outline-primary:hover {\n    color: #ffffff;\n    background-color: #1F2937;\n    border-color: #1F2937; }\n  .btn-check:focus + .btn-outline-primary, .btn-outline-primary:focus {\n    box-shadow: 0 0 0 0.18rem rgba(31, 41, 55, 0.5); }\n  .btn-check:checked + .btn-outline-primary,\n  .btn-check:active + .btn-outline-primary, .btn-outline-primary:active, .btn-outline-primary.active, .btn-outline-primary.dropdown-toggle.show {\n    color: #ffffff;\n    background-color: #1F2937;\n    border-color: #1F2937; }\n    .btn-check:checked + .btn-outline-primary:focus,\n    .btn-check:active + .btn-outline-primary:focus, .btn-outline-primary:active:focus, .btn-outline-primary.active:focus, .btn-outline-primary.dropdown-toggle.show:focus {\n      box-shadow: inset 0 3px 5px rgba(17, 24, 39, 0.125), 0 0 0 0.18rem rgba(31, 41, 55, 0.5); }\n  .btn-outline-primary:disabled, .btn-outline-primary.disabled {\n    color: #1F2937;\n    background-color: transparent; }\n\n.btn-outline-secondary {\n  color: #f0bc74;\n  border-color: #f0bc74; }\n  .btn-outline-secondary:hover {\n    color: #1F2937;\n    background-color: #f0bc74;\n    border-color: #f0bc74; }\n  .btn-check:focus + .btn-outline-secondary, .btn-outline-secondary:focus {\n    box-shadow: 0 0 0 0.18rem rgba(240, 188, 116, 0.5); }\n  .btn-check:checked + .btn-outline-secondary,\n  .btn-check:active + .btn-outline-secondary, .btn-outline-secondary:active, .btn-outline-secondary.active, .btn-outline-secondary.dropdown-toggle.show {\n    color: #1F2937;\n    background-color: #f0bc74;\n    border-color: #f0bc74; }\n    .btn-check:checked + .btn-outline-secondary:focus,\n    .btn-check:active + .btn-outline-secondary:focus, .btn-outline-secondary:active:focus, .btn-outline-secondary.active:focus, .btn-outline-secondary.dropdown-toggle.show:focus {\n      box-shadow: inset 0 3px 5px rgba(17, 24, 39, 0.125), 0 0 0 0.18rem rgba(240, 188, 116, 0.5); }\n  .btn-outline-secondary:disabled, .btn-outline-secondary.disabled {\n    color: #f0bc74;\n    background-color: transparent; }\n\n.btn-outline-tertiary {\n  color: #31316A;\n  border-color: #31316A; }\n  .btn-outline-tertiary:hover {\n    color: #ffffff;\n    background-color: #31316A;\n    border-color: #31316A; }\n  .btn-check:focus + .btn-outline-tertiary, .btn-outline-tertiary:focus {\n    box-shadow: 0 0 0 0.18rem rgba(49, 49, 106, 0.5); }\n  .btn-check:checked + .btn-outline-tertiary,\n  .btn-check:active + .btn-outline-tertiary, .btn-outline-tertiary:active, .btn-outline-tertiary.active, .btn-outline-tertiary.dropdown-toggle.show {\n    color: #ffffff;\n    background-color: #31316A;\n    border-color: #31316A; }\n    .btn-check:checked + .btn-outline-tertiary:focus,\n    .btn-check:active + .btn-outline-tertiary:focus, .btn-outline-tertiary:active:focus, .btn-outline-tertiary.active:focus, .btn-outline-tertiary.dropdown-toggle.show:focus {\n      box-shadow: inset 0 3px 5px rgba(17, 24, 39, 0.125), 0 0 0 0.18rem rgba(49, 49, 106, 0.5); }\n  .btn-outline-tertiary:disabled, .btn-outline-tertiary.disabled {\n    color: #31316A;\n    background-color: transparent; }\n\n.btn-outline-success {\n  color: #10B981;\n  border-color: #10B981; }\n  .btn-outline-success:hover {\n    color: #1F2937;\n    background-color: #10B981;\n    border-color: #10B981; }\n  .btn-check:focus + .btn-outline-success, .btn-outline-success:focus {\n    box-shadow: 0 0 0 0.18rem rgba(16, 185, 129, 0.5); }\n  .btn-check:checked + .btn-outline-success,\n  .btn-check:active + .btn-outline-success, .btn-outline-success:active, .btn-outline-success.active, .btn-outline-success.dropdown-toggle.show {\n    color: #1F2937;\n    background-color: #10B981;\n    border-color: #10B981; }\n    .btn-check:checked + .btn-outline-success:focus,\n    .btn-check:active + .btn-outline-success:focus, .btn-outline-success:active:focus, .btn-outline-success.active:focus, .btn-outline-success.dropdown-toggle.show:focus {\n      box-shadow: inset 0 3px 5px rgba(17, 24, 39, 0.125), 0 0 0 0.18rem rgba(16, 185, 129, 0.5); }\n  .btn-outline-success:disabled, .btn-outline-success.disabled {\n    color: #10B981;\n    background-color: transparent; }\n\n.btn-outline-info {\n  color: #2361ce;\n  border-color: #2361ce; }\n  .btn-outline-info:hover {\n    color: #ffffff;\n    background-color: #2361ce;\n    border-color: #2361ce; }\n  .btn-check:focus + .btn-outline-info, .btn-outline-info:focus {\n    box-shadow: 0 0 0 0.18rem rgba(35, 97, 206, 0.5); }\n  .btn-check:checked + .btn-outline-info,\n  .btn-check:active + .btn-outline-info, .btn-outline-info:active, .btn-outline-info.active, .btn-outline-info.dropdown-toggle.show {\n    color: #ffffff;\n    background-color: #2361ce;\n    border-color: #2361ce; }\n    .btn-check:checked + .btn-outline-info:focus,\n    .btn-check:active + .btn-outline-info:focus, .btn-outline-info:active:focus, .btn-outline-info.active:focus, .btn-outline-info.dropdown-toggle.show:focus {\n      box-shadow: inset 0 3px 5px rgba(17, 24, 39, 0.125), 0 0 0 0.18rem rgba(35, 97, 206, 0.5); }\n  .btn-outline-info:disabled, .btn-outline-info.disabled {\n    color: #2361ce;\n    background-color: transparent; }\n\n.btn-outline-warning {\n  color: #f3c78e;\n  border-color: #f3c78e; }\n  .btn-outline-warning:hover {\n    color: #1F2937;\n    background-color: #f3c78e;\n    border-color: #f3c78e; }\n  .btn-check:focus + .btn-outline-warning, .btn-outline-warning:focus {\n    box-shadow: 0 0 0 0.18rem rgba(243, 199, 142, 0.5); }\n  .btn-check:checked + .btn-outline-warning,\n  .btn-check:active + .btn-outline-warning, .btn-outline-warning:active, .btn-outline-warning.active, .btn-outline-warning.dropdown-toggle.show {\n    color: #1F2937;\n    background-color: #f3c78e;\n    border-color: #f3c78e; }\n    .btn-check:checked + .btn-outline-warning:focus,\n    .btn-check:active + .btn-outline-warning:focus, .btn-outline-warning:active:focus, .btn-outline-warning.active:focus, .btn-outline-warning.dropdown-toggle.show:focus {\n      box-shadow: inset 0 3px 5px rgba(17, 24, 39, 0.125), 0 0 0 0.18rem rgba(243, 199, 142, 0.5); }\n  .btn-outline-warning:disabled, .btn-outline-warning.disabled {\n    color: #f3c78e;\n    background-color: transparent; }\n\n.btn-outline-danger {\n  color: #E11D48;\n  border-color: #E11D48; }\n  .btn-outline-danger:hover {\n    color: #ffffff;\n    background-color: #E11D48;\n    border-color: #E11D48; }\n  .btn-check:focus + .btn-outline-danger, .btn-outline-danger:focus {\n    box-shadow: 0 0 0 0.18rem rgba(225, 29, 72, 0.5); }\n  .btn-check:checked + .btn-outline-danger,\n  .btn-check:active + .btn-outline-danger, .btn-outline-danger:active, .btn-outline-danger.active, .btn-outline-danger.dropdown-toggle.show {\n    color: #ffffff;\n    background-color: #E11D48;\n    border-color: #E11D48; }\n    .btn-check:checked + .btn-outline-danger:focus,\n    .btn-check:active + .btn-outline-danger:focus, .btn-outline-danger:active:focus, .btn-outline-danger.active:focus, .btn-outline-danger.dropdown-toggle.show:focus {\n      box-shadow: inset 0 3px 5px rgba(17, 24, 39, 0.125), 0 0 0 0.18rem rgba(225, 29, 72, 0.5); }\n  .btn-outline-danger:disabled, .btn-outline-danger.disabled {\n    color: #E11D48;\n    background-color: transparent; }\n\n.btn-outline-white {\n  color: #ffffff;\n  border-color: #ffffff; }\n  .btn-outline-white:hover {\n    color: #1F2937;\n    background-color: #ffffff;\n    border-color: #ffffff; }\n  .btn-check:focus + .btn-outline-white, .btn-outline-white:focus {\n    box-shadow: 0 0 0 0.18rem rgba(255, 255, 255, 0.5); }\n  .btn-check:checked + .btn-outline-white,\n  .btn-check:active + .btn-outline-white, .btn-outline-white:active, .btn-outline-white.active, .btn-outline-white.dropdown-toggle.show {\n    color: #1F2937;\n    background-color: #ffffff;\n    border-color: #ffffff; }\n    .btn-check:checked + .btn-outline-white:focus,\n    .btn-check:active + .btn-outline-white:focus, .btn-outline-white:active:focus, .btn-outline-white.active:focus, .btn-outline-white.dropdown-toggle.show:focus {\n      box-shadow: inset 0 3px 5px rgba(17, 24, 39, 0.125), 0 0 0 0.18rem rgba(255, 255, 255, 0.5); }\n  .btn-outline-white:disabled, .btn-outline-white.disabled {\n    color: #ffffff;\n    background-color: transparent; }\n\n.btn-outline-indigo {\n  color: #4F46E5;\n  border-color: #4F46E5; }\n  .btn-outline-indigo:hover {\n    color: #ffffff;\n    background-color: #4F46E5;\n    border-color: #4F46E5; }\n  .btn-check:focus + .btn-outline-indigo, .btn-outline-indigo:focus {\n    box-shadow: 0 0 0 0.18rem rgba(79, 70, 229, 0.5); }\n  .btn-check:checked + .btn-outline-indigo,\n  .btn-check:active + .btn-outline-indigo, .btn-outline-indigo:active, .btn-outline-indigo.active, .btn-outline-indigo.dropdown-toggle.show {\n    color: #ffffff;\n    background-color: #4F46E5;\n    border-color: #4F46E5; }\n    .btn-check:checked + .btn-outline-indigo:focus,\n    .btn-check:active + .btn-outline-indigo:focus, .btn-outline-indigo:active:focus, .btn-outline-indigo.active:focus, .btn-outline-indigo.dropdown-toggle.show:focus {\n      box-shadow: inset 0 3px 5px rgba(17, 24, 39, 0.125), 0 0 0 0.18rem rgba(79, 70, 229, 0.5); }\n  .btn-outline-indigo:disabled, .btn-outline-indigo.disabled {\n    color: #4F46E5;\n    background-color: transparent; }\n\n.btn-outline-purple {\n  color: #7C3AED;\n  border-color: #7C3AED; }\n  .btn-outline-purple:hover {\n    color: #ffffff;\n    background-color: #7C3AED;\n    border-color: #7C3AED; }\n  .btn-check:focus + .btn-outline-purple, .btn-outline-purple:focus {\n    box-shadow: 0 0 0 0.18rem rgba(124, 58, 237, 0.5); }\n  .btn-check:checked + .btn-outline-purple,\n  .btn-check:active + .btn-outline-purple, .btn-outline-purple:active, .btn-outline-purple.active, .btn-outline-purple.dropdown-toggle.show {\n    color: #ffffff;\n    background-color: #7C3AED;\n    border-color: #7C3AED; }\n    .btn-check:checked + .btn-outline-purple:focus,\n    .btn-check:active + .btn-outline-purple:focus, .btn-outline-purple:active:focus, .btn-outline-purple.active:focus, .btn-outline-purple.dropdown-toggle.show:focus {\n      box-shadow: inset 0 3px 5px rgba(17, 24, 39, 0.125), 0 0 0 0.18rem rgba(124, 58, 237, 0.5); }\n  .btn-outline-purple:disabled, .btn-outline-purple.disabled {\n    color: #7C3AED;\n    background-color: transparent; }\n\n.btn-outline-yellow-100 {\n  color: #ffeed6;\n  border-color: #ffeed6; }\n  .btn-outline-yellow-100:hover {\n    color: #1F2937;\n    background-color: #ffeed6;\n    border-color: #ffeed6; }\n  .btn-check:focus + .btn-outline-yellow-100, .btn-outline-yellow-100:focus {\n    box-shadow: 0 0 0 0.18rem rgba(255, 238, 214, 0.5); }\n  .btn-check:checked + .btn-outline-yellow-100,\n  .btn-check:active + .btn-outline-yellow-100, .btn-outline-yellow-100:active, .btn-outline-yellow-100.active, .btn-outline-yellow-100.dropdown-toggle.show {\n    color: #1F2937;\n    background-color: #ffeed6;\n    border-color: #ffeed6; }\n    .btn-check:checked + .btn-outline-yellow-100:focus,\n    .btn-check:active + .btn-outline-yellow-100:focus, .btn-outline-yellow-100:active:focus, .btn-outline-yellow-100.active:focus, .btn-outline-yellow-100.dropdown-toggle.show:focus {\n      box-shadow: inset 0 3px 5px rgba(17, 24, 39, 0.125), 0 0 0 0.18rem rgba(255, 238, 214, 0.5); }\n  .btn-outline-yellow-100:disabled, .btn-outline-yellow-100.disabled {\n    color: #ffeed6;\n    background-color: transparent; }\n\n.btn-outline-yellow-200 {\n  color: #f5dbb8;\n  border-color: #f5dbb8; }\n  .btn-outline-yellow-200:hover {\n    color: #1F2937;\n    background-color: #f5dbb8;\n    border-color: #f5dbb8; }\n  .btn-check:focus + .btn-outline-yellow-200, .btn-outline-yellow-200:focus {\n    box-shadow: 0 0 0 0.18rem rgba(245, 219, 184, 0.5); }\n  .btn-check:checked + .btn-outline-yellow-200,\n  .btn-check:active + .btn-outline-yellow-200, .btn-outline-yellow-200:active, .btn-outline-yellow-200.active, .btn-outline-yellow-200.dropdown-toggle.show {\n    color: #1F2937;\n    background-color: #f5dbb8;\n    border-color: #f5dbb8; }\n    .btn-check:checked + .btn-outline-yellow-200:focus,\n    .btn-check:active + .btn-outline-yellow-200:focus, .btn-outline-yellow-200:active:focus, .btn-outline-yellow-200.active:focus, .btn-outline-yellow-200.dropdown-toggle.show:focus {\n      box-shadow: inset 0 3px 5px rgba(17, 24, 39, 0.125), 0 0 0 0.18rem rgba(245, 219, 184, 0.5); }\n  .btn-outline-yellow-200:disabled, .btn-outline-yellow-200.disabled {\n    color: #f5dbb8;\n    background-color: transparent; }\n\n.btn-outline-gray-50 {\n  color: #F9FAFB;\n  border-color: #F9FAFB; }\n  .btn-outline-gray-50:hover {\n    color: #1F2937;\n    background-color: #F9FAFB;\n    border-color: #F9FAFB; }\n  .btn-check:focus + .btn-outline-gray-50, .btn-outline-gray-50:focus {\n    box-shadow: 0 0 0 0.18rem rgba(249, 250, 251, 0.5); }\n  .btn-check:checked + .btn-outline-gray-50,\n  .btn-check:active + .btn-outline-gray-50, .btn-outline-gray-50:active, .btn-outline-gray-50.active, .btn-outline-gray-50.dropdown-toggle.show {\n    color: #1F2937;\n    background-color: #F9FAFB;\n    border-color: #F9FAFB; }\n    .btn-check:checked + .btn-outline-gray-50:focus,\n    .btn-check:active + .btn-outline-gray-50:focus, .btn-outline-gray-50:active:focus, .btn-outline-gray-50.active:focus, .btn-outline-gray-50.dropdown-toggle.show:focus {\n      box-shadow: inset 0 3px 5px rgba(17, 24, 39, 0.125), 0 0 0 0.18rem rgba(249, 250, 251, 0.5); }\n  .btn-outline-gray-50:disabled, .btn-outline-gray-50.disabled {\n    color: #F9FAFB;\n    background-color: transparent; }\n\n.btn-outline-gray-100 {\n  color: #F2F4F6;\n  border-color: #F2F4F6; }\n  .btn-outline-gray-100:hover {\n    color: #1F2937;\n    background-color: #F2F4F6;\n    border-color: #F2F4F6; }\n  .btn-check:focus + .btn-outline-gray-100, .btn-outline-gray-100:focus {\n    box-shadow: 0 0 0 0.18rem rgba(242, 244, 246, 0.5); }\n  .btn-check:checked + .btn-outline-gray-100,\n  .btn-check:active + .btn-outline-gray-100, .btn-outline-gray-100:active, .btn-outline-gray-100.active, .btn-outline-gray-100.dropdown-toggle.show {\n    color: #1F2937;\n    background-color: #F2F4F6;\n    border-color: #F2F4F6; }\n    .btn-check:checked + .btn-outline-gray-100:focus,\n    .btn-check:active + .btn-outline-gray-100:focus, .btn-outline-gray-100:active:focus, .btn-outline-gray-100.active:focus, .btn-outline-gray-100.dropdown-toggle.show:focus {\n      box-shadow: inset 0 3px 5px rgba(17, 24, 39, 0.125), 0 0 0 0.18rem rgba(242, 244, 246, 0.5); }\n  .btn-outline-gray-100:disabled, .btn-outline-gray-100.disabled {\n    color: #F2F4F6;\n    background-color: transparent; }\n\n.btn-outline-gray-200 {\n  color: #E5E7EB;\n  border-color: #E5E7EB; }\n  .btn-outline-gray-200:hover {\n    color: #1F2937;\n    background-color: #E5E7EB;\n    border-color: #E5E7EB; }\n  .btn-check:focus + .btn-outline-gray-200, .btn-outline-gray-200:focus {\n    box-shadow: 0 0 0 0.18rem rgba(229, 231, 235, 0.5); }\n  .btn-check:checked + .btn-outline-gray-200,\n  .btn-check:active + .btn-outline-gray-200, .btn-outline-gray-200:active, .btn-outline-gray-200.active, .btn-outline-gray-200.dropdown-toggle.show {\n    color: #1F2937;\n    background-color: #E5E7EB;\n    border-color: #E5E7EB; }\n    .btn-check:checked + .btn-outline-gray-200:focus,\n    .btn-check:active + .btn-outline-gray-200:focus, .btn-outline-gray-200:active:focus, .btn-outline-gray-200.active:focus, .btn-outline-gray-200.dropdown-toggle.show:focus {\n      box-shadow: inset 0 3px 5px rgba(17, 24, 39, 0.125), 0 0 0 0.18rem rgba(229, 231, 235, 0.5); }\n  .btn-outline-gray-200:disabled, .btn-outline-gray-200.disabled {\n    color: #E5E7EB;\n    background-color: transparent; }\n\n.btn-outline-gray-300 {\n  color: #D1D5DB;\n  border-color: #D1D5DB; }\n  .btn-outline-gray-300:hover {\n    color: #1F2937;\n    background-color: #D1D5DB;\n    border-color: #D1D5DB; }\n  .btn-check:focus + .btn-outline-gray-300, .btn-outline-gray-300:focus {\n    box-shadow: 0 0 0 0.18rem rgba(209, 213, 219, 0.5); }\n  .btn-check:checked + .btn-outline-gray-300,\n  .btn-check:active + .btn-outline-gray-300, .btn-outline-gray-300:active, .btn-outline-gray-300.active, .btn-outline-gray-300.dropdown-toggle.show {\n    color: #1F2937;\n    background-color: #D1D5DB;\n    border-color: #D1D5DB; }\n    .btn-check:checked + .btn-outline-gray-300:focus,\n    .btn-check:active + .btn-outline-gray-300:focus, .btn-outline-gray-300:active:focus, .btn-outline-gray-300.active:focus, .btn-outline-gray-300.dropdown-toggle.show:focus {\n      box-shadow: inset 0 3px 5px rgba(17, 24, 39, 0.125), 0 0 0 0.18rem rgba(209, 213, 219, 0.5); }\n  .btn-outline-gray-300:disabled, .btn-outline-gray-300.disabled {\n    color: #D1D5DB;\n    background-color: transparent; }\n\n.btn-outline-gray-400 {\n  color: #9CA3AF;\n  border-color: #9CA3AF; }\n  .btn-outline-gray-400:hover {\n    color: #1F2937;\n    background-color: #9CA3AF;\n    border-color: #9CA3AF; }\n  .btn-check:focus + .btn-outline-gray-400, .btn-outline-gray-400:focus {\n    box-shadow: 0 0 0 0.18rem rgba(156, 163, 175, 0.5); }\n  .btn-check:checked + .btn-outline-gray-400,\n  .btn-check:active + .btn-outline-gray-400, .btn-outline-gray-400:active, .btn-outline-gray-400.active, .btn-outline-gray-400.dropdown-toggle.show {\n    color: #1F2937;\n    background-color: #9CA3AF;\n    border-color: #9CA3AF; }\n    .btn-check:checked + .btn-outline-gray-400:focus,\n    .btn-check:active + .btn-outline-gray-400:focus, .btn-outline-gray-400:active:focus, .btn-outline-gray-400.active:focus, .btn-outline-gray-400.dropdown-toggle.show:focus {\n      box-shadow: inset 0 3px 5px rgba(17, 24, 39, 0.125), 0 0 0 0.18rem rgba(156, 163, 175, 0.5); }\n  .btn-outline-gray-400:disabled, .btn-outline-gray-400.disabled {\n    color: #9CA3AF;\n    background-color: transparent; }\n\n.btn-outline-gray-500 {\n  color: #6B7280;\n  border-color: #6B7280; }\n  .btn-outline-gray-500:hover {\n    color: #ffffff;\n    background-color: #6B7280;\n    border-color: #6B7280; }\n  .btn-check:focus + .btn-outline-gray-500, .btn-outline-gray-500:focus {\n    box-shadow: 0 0 0 0.18rem rgba(107, 114, 128, 0.5); }\n  .btn-check:checked + .btn-outline-gray-500,\n  .btn-check:active + .btn-outline-gray-500, .btn-outline-gray-500:active, .btn-outline-gray-500.active, .btn-outline-gray-500.dropdown-toggle.show {\n    color: #ffffff;\n    background-color: #6B7280;\n    border-color: #6B7280; }\n    .btn-check:checked + .btn-outline-gray-500:focus,\n    .btn-check:active + .btn-outline-gray-500:focus, .btn-outline-gray-500:active:focus, .btn-outline-gray-500.active:focus, .btn-outline-gray-500.dropdown-toggle.show:focus {\n      box-shadow: inset 0 3px 5px rgba(17, 24, 39, 0.125), 0 0 0 0.18rem rgba(107, 114, 128, 0.5); }\n  .btn-outline-gray-500:disabled, .btn-outline-gray-500.disabled {\n    color: #6B7280;\n    background-color: transparent; }\n\n.btn-outline-gray-600 {\n  color: #4B5563;\n  border-color: #4B5563; }\n  .btn-outline-gray-600:hover {\n    color: #ffffff;\n    background-color: #4B5563;\n    border-color: #4B5563; }\n  .btn-check:focus + .btn-outline-gray-600, .btn-outline-gray-600:focus {\n    box-shadow: 0 0 0 0.18rem rgba(75, 85, 99, 0.5); }\n  .btn-check:checked + .btn-outline-gray-600,\n  .btn-check:active + .btn-outline-gray-600, .btn-outline-gray-600:active, .btn-outline-gray-600.active, .btn-outline-gray-600.dropdown-toggle.show {\n    color: #ffffff;\n    background-color: #4B5563;\n    border-color: #4B5563; }\n    .btn-check:checked + .btn-outline-gray-600:focus,\n    .btn-check:active + .btn-outline-gray-600:focus, .btn-outline-gray-600:active:focus, .btn-outline-gray-600.active:focus, .btn-outline-gray-600.dropdown-toggle.show:focus {\n      box-shadow: inset 0 3px 5px rgba(17, 24, 39, 0.125), 0 0 0 0.18rem rgba(75, 85, 99, 0.5); }\n  .btn-outline-gray-600:disabled, .btn-outline-gray-600.disabled {\n    color: #4B5563;\n    background-color: transparent; }\n\n.btn-outline-gray-700 {\n  color: #374151;\n  border-color: #374151; }\n  .btn-outline-gray-700:hover {\n    color: #ffffff;\n    background-color: #374151;\n    border-color: #374151; }\n  .btn-check:focus + .btn-outline-gray-700, .btn-outline-gray-700:focus {\n    box-shadow: 0 0 0 0.18rem rgba(55, 65, 81, 0.5); }\n  .btn-check:checked + .btn-outline-gray-700,\n  .btn-check:active + .btn-outline-gray-700, .btn-outline-gray-700:active, .btn-outline-gray-700.active, .btn-outline-gray-700.dropdown-toggle.show {\n    color: #ffffff;\n    background-color: #374151;\n    border-color: #374151; }\n    .btn-check:checked + .btn-outline-gray-700:focus,\n    .btn-check:active + .btn-outline-gray-700:focus, .btn-outline-gray-700:active:focus, .btn-outline-gray-700.active:focus, .btn-outline-gray-700.dropdown-toggle.show:focus {\n      box-shadow: inset 0 3px 5px rgba(17, 24, 39, 0.125), 0 0 0 0.18rem rgba(55, 65, 81, 0.5); }\n  .btn-outline-gray-700:disabled, .btn-outline-gray-700.disabled {\n    color: #374151;\n    background-color: transparent; }\n\n.btn-outline-gray-800 {\n  color: #1F2937;\n  border-color: #1F2937; }\n  .btn-outline-gray-800:hover {\n    color: #ffffff;\n    background-color: #1F2937;\n    border-color: #1F2937; }\n  .btn-check:focus + .btn-outline-gray-800, .btn-outline-gray-800:focus {\n    box-shadow: 0 0 0 0.18rem rgba(31, 41, 55, 0.5); }\n  .btn-check:checked + .btn-outline-gray-800,\n  .btn-check:active + .btn-outline-gray-800, .btn-outline-gray-800:active, .btn-outline-gray-800.active, .btn-outline-gray-800.dropdown-toggle.show {\n    color: #ffffff;\n    background-color: #1F2937;\n    border-color: #1F2937; }\n    .btn-check:checked + .btn-outline-gray-800:focus,\n    .btn-check:active + .btn-outline-gray-800:focus, .btn-outline-gray-800:active:focus, .btn-outline-gray-800.active:focus, .btn-outline-gray-800.dropdown-toggle.show:focus {\n      box-shadow: inset 0 3px 5px rgba(17, 24, 39, 0.125), 0 0 0 0.18rem rgba(31, 41, 55, 0.5); }\n  .btn-outline-gray-800:disabled, .btn-outline-gray-800.disabled {\n    color: #1F2937;\n    background-color: transparent; }\n\n.btn-outline-gray-900 {\n  color: #111827;\n  border-color: #111827; }\n  .btn-outline-gray-900:hover {\n    color: #ffffff;\n    background-color: #111827;\n    border-color: #111827; }\n  .btn-check:focus + .btn-outline-gray-900, .btn-outline-gray-900:focus {\n    box-shadow: 0 0 0 0.18rem rgba(17, 24, 39, 0.5); }\n  .btn-check:checked + .btn-outline-gray-900,\n  .btn-check:active + .btn-outline-gray-900, .btn-outline-gray-900:active, .btn-outline-gray-900.active, .btn-outline-gray-900.dropdown-toggle.show {\n    color: #ffffff;\n    background-color: #111827;\n    border-color: #111827; }\n    .btn-check:checked + .btn-outline-gray-900:focus,\n    .btn-check:active + .btn-outline-gray-900:focus, .btn-outline-gray-900:active:focus, .btn-outline-gray-900.active:focus, .btn-outline-gray-900.dropdown-toggle.show:focus {\n      box-shadow: inset 0 3px 5px rgba(17, 24, 39, 0.125), 0 0 0 0.18rem rgba(17, 24, 39, 0.5); }\n  .btn-outline-gray-900:disabled, .btn-outline-gray-900.disabled {\n    color: #111827;\n    background-color: transparent; }\n\n.btn-link {\n  font-weight: 400;\n  color: #1F2937;\n  text-decoration: none; }\n  .btn-link:hover {\n    color: black;\n    text-decoration: none; }\n  .btn-link:focus {\n    text-decoration: none; }\n  .btn-link:disabled, .btn-link.disabled {\n    color: #4B5563; }\n\n.btn-lg, .btn-group-lg > .btn {\n  padding: 0.5rem 1rem;\n  font-size: 1.25rem;\n  border-radius: 0.5rem; }\n\n.btn-sm, .btn-group-sm > .btn {\n  padding: 0.375rem 0.625rem;\n  font-size: 0.875rem;\n  border-radius: 0.5rem; }\n\n.fade {\n  transition: opacity 0.15s linear; }\n  @media (prefers-reduced-motion: reduce) {\n    .fade {\n      transition: none; } }\n  .fade:not(.show) {\n    opacity: 0; }\n\n.collapse:not(.show) {\n  display: none; }\n\n.collapsing {\n  height: 0;\n  overflow: hidden;\n  transition: height 0.35s ease; }\n  @media (prefers-reduced-motion: reduce) {\n    .collapsing {\n      transition: none; } }\n  .collapsing.collapse-horizontal {\n    width: 0;\n    height: auto;\n    transition: width 0.35s ease; }\n    @media (prefers-reduced-motion: reduce) {\n      .collapsing.collapse-horizontal {\n        transition: none; } }\n\n.dropup,\n.dropend,\n.dropdown,\n.dropstart {\n  position: relative; }\n\n.dropdown-toggle {\n  white-space: nowrap; }\n  .dropdown-toggle::after {\n    display: inline-block;\n    margin-left: 0.255em;\n    vertical-align: 0.255em;\n    content: \"\";\n    border-top: 0.3em solid;\n    border-right: 0.3em solid transparent;\n    border-bottom: 0;\n    border-left: 0.3em solid transparent; }\n  .dropdown-toggle:empty::after {\n    margin-left: 0; }\n\n.dropdown-menu {\n  position: absolute;\n  z-index: 1000;\n  display: none;\n  min-width: 12rem;\n  padding: 0.5rem 0;\n  margin: 0;\n  font-size: 0.875rem;\n  color: #374151;\n  text-align: left;\n  list-style: none;\n  background-color: #ffffff;\n  background-clip: padding-box;\n  border: 0.0625rem solid #E5E7EB;\n  border-radius: 0.35rem;\n  box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05); }\n  .dropdown-menu[data-bs-popper] {\n    top: 100%;\n    left: 0;\n    margin-top: 0.125rem; }\n\n.dropdown-menu-start {\n  --bs-position: start; }\n  .dropdown-menu-start[data-bs-popper] {\n    right: auto;\n    left: 0; }\n\n.dropdown-menu-end {\n  --bs-position: end; }\n  .dropdown-menu-end[data-bs-popper] {\n    right: 0;\n    left: auto; }\n\n@media (min-width: 576px) {\n  .dropdown-menu-sm-start {\n    --bs-position: start; }\n    .dropdown-menu-sm-start[data-bs-popper] {\n      right: auto;\n      left: 0; }\n  .dropdown-menu-sm-end {\n    --bs-position: end; }\n    .dropdown-menu-sm-end[data-bs-popper] {\n      right: 0;\n      left: auto; } }\n\n@media (min-width: 768px) {\n  .dropdown-menu-md-start {\n    --bs-position: start; }\n    .dropdown-menu-md-start[data-bs-popper] {\n      right: auto;\n      left: 0; }\n  .dropdown-menu-md-end {\n    --bs-position: end; }\n    .dropdown-menu-md-end[data-bs-popper] {\n      right: 0;\n      left: auto; } }\n\n@media (min-width: 992px) {\n  .dropdown-menu-lg-start {\n    --bs-position: start; }\n    .dropdown-menu-lg-start[data-bs-popper] {\n      right: auto;\n      left: 0; }\n  .dropdown-menu-lg-end {\n    --bs-position: end; }\n    .dropdown-menu-lg-end[data-bs-popper] {\n      right: 0;\n      left: auto; } }\n\n@media (min-width: 1200px) {\n  .dropdown-menu-xl-start {\n    --bs-position: start; }\n    .dropdown-menu-xl-start[data-bs-popper] {\n      right: auto;\n      left: 0; }\n  .dropdown-menu-xl-end {\n    --bs-position: end; }\n    .dropdown-menu-xl-end[data-bs-popper] {\n      right: 0;\n      left: auto; } }\n\n@media (min-width: 1400px) {\n  .dropdown-menu-xxl-start {\n    --bs-position: start; }\n    .dropdown-menu-xxl-start[data-bs-popper] {\n      right: auto;\n      left: 0; }\n  .dropdown-menu-xxl-end {\n    --bs-position: end; }\n    .dropdown-menu-xxl-end[data-bs-popper] {\n      right: 0;\n      left: auto; } }\n\n.dropup .dropdown-menu[data-bs-popper] {\n  top: auto;\n  bottom: 100%;\n  margin-top: 0;\n  margin-bottom: 0.125rem; }\n\n.dropup .dropdown-toggle::after {\n  display: inline-block;\n  margin-left: 0.255em;\n  vertical-align: 0.255em;\n  content: \"\";\n  border-top: 0;\n  border-right: 0.3em solid transparent;\n  border-bottom: 0.3em solid;\n  border-left: 0.3em solid transparent; }\n\n.dropup .dropdown-toggle:empty::after {\n  margin-left: 0; }\n\n.dropend .dropdown-menu[data-bs-popper] {\n  top: 0;\n  right: auto;\n  left: 100%;\n  margin-top: 0;\n  margin-left: 0.125rem; }\n\n.dropend .dropdown-toggle::after {\n  display: inline-block;\n  margin-left: 0.255em;\n  vertical-align: 0.255em;\n  content: \"\";\n  border-top: 0.3em solid transparent;\n  border-right: 0;\n  border-bottom: 0.3em solid transparent;\n  border-left: 0.3em solid; }\n\n.dropend .dropdown-toggle:empty::after {\n  margin-left: 0; }\n\n.dropend .dropdown-toggle::after {\n  vertical-align: 0; }\n\n.dropstart .dropdown-menu[data-bs-popper] {\n  top: 0;\n  right: 100%;\n  left: auto;\n  margin-top: 0;\n  margin-right: 0.125rem; }\n\n.dropstart .dropdown-toggle::after {\n  display: inline-block;\n  margin-left: 0.255em;\n  vertical-align: 0.255em;\n  content: \"\"; }\n\n.dropstart .dropdown-toggle::after {\n  display: none; }\n\n.dropstart .dropdown-toggle::before {\n  display: inline-block;\n  margin-right: 0.255em;\n  vertical-align: 0.255em;\n  content: \"\";\n  border-top: 0.3em solid transparent;\n  border-right: 0.3em solid;\n  border-bottom: 0.3em solid transparent; }\n\n.dropstart .dropdown-toggle:empty::after {\n  margin-left: 0; }\n\n.dropstart .dropdown-toggle::before {\n  vertical-align: 0; }\n\n.dropdown-divider {\n  height: 0;\n  margin: 0.5rem 0;\n  overflow: hidden;\n  border-top: 1px solid #E5E7EB; }\n\n.dropdown-item {\n  display: block;\n  width: 100%;\n  padding: 0.25rem 1rem;\n  clear: both;\n  font-weight: 400;\n  color: #111827;\n  text-align: inherit;\n  white-space: nowrap;\n  background-color: transparent;\n  border: 0; }\n  .dropdown-item:hover, .dropdown-item:focus {\n    color: #090d15;\n    background-color: #F2F4F6; }\n  .dropdown-item.active, .dropdown-item:active {\n    color: #111827;\n    text-decoration: none;\n    background-color: #E5E7EB; }\n  .dropdown-item.disabled, .dropdown-item:disabled {\n    color: #4B5563;\n    pointer-events: none;\n    background-color: transparent; }\n\n.dropdown-menu.show {\n  display: block; }\n\n.dropdown-header {\n  display: block;\n  padding: 0.5rem 1rem;\n  margin-bottom: 0;\n  font-size: 0.875rem;\n  color: #111827;\n  white-space: nowrap; }\n\n.dropdown-item-text {\n  display: block;\n  padding: 0.25rem 1rem;\n  color: #111827; }\n\n.dropdown-menu-dark {\n  color: #D1D5DB;\n  background-color: #1F2937;\n  border-color: #E5E7EB; }\n  .dropdown-menu-dark .dropdown-item {\n    color: #D1D5DB; }\n    .dropdown-menu-dark .dropdown-item:hover, .dropdown-menu-dark .dropdown-item:focus {\n      color: #ffffff;\n      background-color: rgba(255, 255, 255, 0.15); }\n    .dropdown-menu-dark .dropdown-item.active, .dropdown-menu-dark .dropdown-item:active {\n      color: #111827;\n      background-color: #E5E7EB; }\n    .dropdown-menu-dark .dropdown-item.disabled, .dropdown-menu-dark .dropdown-item:disabled {\n      color: #6B7280; }\n  .dropdown-menu-dark .dropdown-divider {\n    border-color: #E5E7EB; }\n  .dropdown-menu-dark .dropdown-item-text {\n    color: #D1D5DB; }\n  .dropdown-menu-dark .dropdown-header {\n    color: #6B7280; }\n\n.btn-group,\n.btn-group-vertical {\n  position: relative;\n  display: inline-flex;\n  vertical-align: middle; }\n  .btn-group > .btn,\n  .btn-group-vertical > .btn {\n    position: relative;\n    flex: 1 1 auto; }\n  .btn-group > .btn-check:checked + .btn,\n  .btn-group > .btn-check:focus + .btn,\n  .btn-group > .btn:hover,\n  .btn-group > .btn:focus,\n  .btn-group > .btn:active,\n  .btn-group > .btn.active,\n  .btn-group-vertical > .btn-check:checked + .btn,\n  .btn-group-vertical > .btn-check:focus + .btn,\n  .btn-group-vertical > .btn:hover,\n  .btn-group-vertical > .btn:focus,\n  .btn-group-vertical > .btn:active,\n  .btn-group-vertical > .btn.active {\n    z-index: 1; }\n\n.btn-toolbar {\n  display: flex;\n  flex-wrap: wrap;\n  justify-content: flex-start; }\n  .btn-toolbar .input-group {\n    width: auto; }\n\n.btn-group > .btn:not(:first-child),\n.btn-group > .btn-group:not(:first-child) {\n  margin-left: -0.0625rem; }\n\n.btn-group > .btn:not(:last-child):not(.dropdown-toggle),\n.btn-group > .btn-group:not(:last-child) > .btn {\n  border-top-right-radius: 0;\n  border-bottom-right-radius: 0; }\n\n.btn-group > .btn:nth-child(n + 3),\n.btn-group > :not(.btn-check) + .btn,\n.btn-group > .btn-group:not(:first-child) > .btn {\n  border-top-left-radius: 0;\n  border-bottom-left-radius: 0; }\n\n.dropdown-toggle-split {\n  padding-right: 0.75rem;\n  padding-left: 0.75rem; }\n  .dropdown-toggle-split::after,\n  .dropup .dropdown-toggle-split::after,\n  .dropend .dropdown-toggle-split::after {\n    margin-left: 0; }\n  .dropstart .dropdown-toggle-split::before {\n    margin-right: 0; }\n\n.btn-sm + .dropdown-toggle-split, .btn-group-sm > .btn + .dropdown-toggle-split {\n  padding-right: 0.46875rem;\n  padding-left: 0.46875rem; }\n\n.btn-lg + .dropdown-toggle-split, .btn-group-lg > .btn + .dropdown-toggle-split {\n  padding-right: 0.75rem;\n  padding-left: 0.75rem; }\n\n.btn-group.show .dropdown-toggle {\n  box-shadow: inset 0 3px 5px rgba(17, 24, 39, 0.125); }\n  .btn-group.show .dropdown-toggle.btn-link {\n    box-shadow: none; }\n\n.btn-group-vertical {\n  flex-direction: column;\n  align-items: flex-start;\n  justify-content: center; }\n  .btn-group-vertical > .btn,\n  .btn-group-vertical > .btn-group {\n    width: 100%; }\n  .btn-group-vertical > .btn:not(:first-child),\n  .btn-group-vertical > .btn-group:not(:first-child) {\n    margin-top: -0.0625rem; }\n  .btn-group-vertical > .btn:not(:last-child):not(.dropdown-toggle),\n  .btn-group-vertical > .btn-group:not(:last-child) > .btn {\n    border-bottom-right-radius: 0;\n    border-bottom-left-radius: 0; }\n  .btn-group-vertical > .btn ~ .btn,\n  .btn-group-vertical > .btn-group:not(:first-child) > .btn {\n    border-top-left-radius: 0;\n    border-top-right-radius: 0; }\n\n.nav {\n  display: flex;\n  flex-wrap: wrap;\n  padding-left: 0;\n  margin-bottom: 0;\n  list-style: none; }\n\n.nav-link {\n  display: block;\n  padding: 0.5rem 1rem;\n  color: #1F2937;\n  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out; }\n  @media (prefers-reduced-motion: reduce) {\n    .nav-link {\n      transition: none; } }\n  .nav-link:hover, .nav-link:focus {\n    color: #1F2937; }\n  .nav-link.disabled {\n    color: #4B5563;\n    pointer-events: none;\n    cursor: default; }\n\n.nav-tabs {\n  border-bottom: 0.0625rem solid #9CA3AF; }\n  .nav-tabs .nav-link {\n    margin-bottom: -0.0625rem;\n    background: none;\n    border: 0.0625rem solid transparent;\n    border-top-left-radius: 0.5rem;\n    border-top-right-radius: 0.5rem; }\n    .nav-tabs .nav-link:hover, .nav-tabs .nav-link:focus {\n      border-color: #E5E7EB #E5E7EB #9CA3AF;\n      isolation: isolate; }\n    .nav-tabs .nav-link.disabled {\n      color: #4B5563;\n      background-color: transparent;\n      border-color: transparent; }\n  .nav-tabs .nav-link.active,\n  .nav-tabs .nav-item.show .nav-link {\n    color: #374151;\n    background-color: #9CA3AF;\n    border-color: #9CA3AF; }\n  .nav-tabs .dropdown-menu {\n    margin-top: -0.0625rem;\n    border-top-left-radius: 0;\n    border-top-right-radius: 0; }\n\n.nav-pills .nav-link {\n  background: none;\n  border: 0;\n  border-radius: 0.5rem; }\n\n.nav-pills .nav-link.active,\n.nav-pills .show > .nav-link {\n  color: #1F2937;\n  background-color: #f8f8f8; }\n\n.nav-fill > .nav-link,\n.nav-fill .nav-item {\n  flex: 1 1 auto;\n  text-align: center; }\n\n.nav-justified > .nav-link,\n.nav-justified .nav-item {\n  flex-basis: 0;\n  flex-grow: 1;\n  text-align: center; }\n\n.nav-fill .nav-item .nav-link,\n.nav-justified .nav-item .nav-link {\n  width: 100%; }\n\n.tab-content > .tab-pane {\n  display: none; }\n\n.tab-content > .active {\n  display: block; }\n\n.navbar {\n  position: relative;\n  display: flex;\n  flex-wrap: wrap;\n  align-items: center;\n  justify-content: space-between;\n  padding-top: 1rem;\n  padding-bottom: 1rem; }\n  .navbar > .container,\n  .navbar > .container-fluid, .navbar > .container-sm, .navbar > .container-md, .navbar > .container-lg, .navbar > .container-xl {\n    display: flex;\n    flex-wrap: inherit;\n    align-items: center;\n    justify-content: space-between; }\n\n.navbar-brand {\n  padding-top: 0;\n  padding-bottom: 0;\n  margin-right: 1rem;\n  font-size: 1.25rem;\n  white-space: nowrap; }\n\n.navbar-nav {\n  display: flex;\n  flex-direction: column;\n  padding-left: 0;\n  margin-bottom: 0;\n  list-style: none; }\n  .navbar-nav .nav-link {\n    padding-right: 0;\n    padding-left: 0; }\n  .navbar-nav .dropdown-menu {\n    position: static; }\n\n.navbar-text {\n  padding-top: 0.5rem;\n  padding-bottom: 0.5rem; }\n\n.navbar-collapse {\n  flex-basis: 100%;\n  flex-grow: 1;\n  align-items: center; }\n\n.navbar-toggler {\n  padding: 0.4rem 0.6rem;\n  font-size: 1.25rem;\n  line-height: 1;\n  background-color: transparent;\n  border: 0.0625rem solid transparent;\n  border-radius: 0.5rem;\n  transition: box-shadow 0.15s ease-in-out; }\n  @media (prefers-reduced-motion: reduce) {\n    .navbar-toggler {\n      transition: none; } }\n  .navbar-toggler:hover {\n    text-decoration: none; }\n  .navbar-toggler:focus {\n    text-decoration: none;\n    outline: 0;\n    box-shadow: 0 0 0 0.18rem; }\n\n.navbar-toggler-icon {\n  display: inline-block;\n  width: 1.5em;\n  height: 1.5em;\n  vertical-align: middle;\n  background-repeat: no-repeat;\n  background-position: center;\n  background-size: 100%; }\n\n.navbar-nav-scroll {\n  max-height: var(--bs-scroll-height, 75vh);\n  overflow-y: auto; }\n\n@media (min-width: 576px) {\n  .navbar-expand-sm {\n    flex-wrap: nowrap;\n    justify-content: flex-start; }\n    .navbar-expand-sm .navbar-nav {\n      flex-direction: row; }\n      .navbar-expand-sm .navbar-nav .dropdown-menu {\n        position: absolute; }\n      .navbar-expand-sm .navbar-nav .nav-link {\n        padding-right: 0.8rem;\n        padding-left: 0.8rem; }\n    .navbar-expand-sm .navbar-nav-scroll {\n      overflow: visible; }\n    .navbar-expand-sm .navbar-collapse {\n      display: flex !important;\n      flex-basis: auto; }\n    .navbar-expand-sm .navbar-toggler {\n      display: none; }\n    .navbar-expand-sm .offcanvas-header {\n      display: none; }\n    .navbar-expand-sm .offcanvas {\n      position: inherit;\n      bottom: 0;\n      z-index: 1000;\n      flex-grow: 1;\n      visibility: visible !important;\n      background-color: transparent;\n      border-right: 0;\n      border-left: 0;\n      transition: none;\n      transform: none; }\n    .navbar-expand-sm .offcanvas-top,\n    .navbar-expand-sm .offcanvas-bottom {\n      height: auto;\n      border-top: 0;\n      border-bottom: 0; }\n    .navbar-expand-sm .offcanvas-body {\n      display: flex;\n      flex-grow: 0;\n      padding: 0;\n      overflow-y: visible; } }\n\n@media (min-width: 768px) {\n  .navbar-expand-md {\n    flex-wrap: nowrap;\n    justify-content: flex-start; }\n    .navbar-expand-md .navbar-nav {\n      flex-direction: row; }\n      .navbar-expand-md .navbar-nav .dropdown-menu {\n        position: absolute; }\n      .navbar-expand-md .navbar-nav .nav-link {\n        padding-right: 0.8rem;\n        padding-left: 0.8rem; }\n    .navbar-expand-md .navbar-nav-scroll {\n      overflow: visible; }\n    .navbar-expand-md .navbar-collapse {\n      display: flex !important;\n      flex-basis: auto; }\n    .navbar-expand-md .navbar-toggler {\n      display: none; }\n    .navbar-expand-md .offcanvas-header {\n      display: none; }\n    .navbar-expand-md .offcanvas {\n      position: inherit;\n      bottom: 0;\n      z-index: 1000;\n      flex-grow: 1;\n      visibility: visible !important;\n      background-color: transparent;\n      border-right: 0;\n      border-left: 0;\n      transition: none;\n      transform: none; }\n    .navbar-expand-md .offcanvas-top,\n    .navbar-expand-md .offcanvas-bottom {\n      height: auto;\n      border-top: 0;\n      border-bottom: 0; }\n    .navbar-expand-md .offcanvas-body {\n      display: flex;\n      flex-grow: 0;\n      padding: 0;\n      overflow-y: visible; } }\n\n@media (min-width: 992px) {\n  .navbar-expand-lg {\n    flex-wrap: nowrap;\n    justify-content: flex-start; }\n    .navbar-expand-lg .navbar-nav {\n      flex-direction: row; }\n      .navbar-expand-lg .navbar-nav .dropdown-menu {\n        position: absolute; }\n      .navbar-expand-lg .navbar-nav .nav-link {\n        padding-right: 0.8rem;\n        padding-left: 0.8rem; }\n    .navbar-expand-lg .navbar-nav-scroll {\n      overflow: visible; }\n    .navbar-expand-lg .navbar-collapse {\n      display: flex !important;\n      flex-basis: auto; }\n    .navbar-expand-lg .navbar-toggler {\n      display: none; }\n    .navbar-expand-lg .offcanvas-header {\n      display: none; }\n    .navbar-expand-lg .offcanvas {\n      position: inherit;\n      bottom: 0;\n      z-index: 1000;\n      flex-grow: 1;\n      visibility: visible !important;\n      background-color: transparent;\n      border-right: 0;\n      border-left: 0;\n      transition: none;\n      transform: none; }\n    .navbar-expand-lg .offcanvas-top,\n    .navbar-expand-lg .offcanvas-bottom {\n      height: auto;\n      border-top: 0;\n      border-bottom: 0; }\n    .navbar-expand-lg .offcanvas-body {\n      display: flex;\n      flex-grow: 0;\n      padding: 0;\n      overflow-y: visible; } }\n\n@media (min-width: 1200px) {\n  .navbar-expand-xl {\n    flex-wrap: nowrap;\n    justify-content: flex-start; }\n    .navbar-expand-xl .navbar-nav {\n      flex-direction: row; }\n      .navbar-expand-xl .navbar-nav .dropdown-menu {\n        position: absolute; }\n      .navbar-expand-xl .navbar-nav .nav-link {\n        padding-right: 0.8rem;\n        padding-left: 0.8rem; }\n    .navbar-expand-xl .navbar-nav-scroll {\n      overflow: visible; }\n    .navbar-expand-xl .navbar-collapse {\n      display: flex !important;\n      flex-basis: auto; }\n    .navbar-expand-xl .navbar-toggler {\n      display: none; }\n    .navbar-expand-xl .offcanvas-header {\n      display: none; }\n    .navbar-expand-xl .offcanvas {\n      position: inherit;\n      bottom: 0;\n      z-index: 1000;\n      flex-grow: 1;\n      visibility: visible !important;\n      background-color: transparent;\n      border-right: 0;\n      border-left: 0;\n      transition: none;\n      transform: none; }\n    .navbar-expand-xl .offcanvas-top,\n    .navbar-expand-xl .offcanvas-bottom {\n      height: auto;\n      border-top: 0;\n      border-bottom: 0; }\n    .navbar-expand-xl .offcanvas-body {\n      display: flex;\n      flex-grow: 0;\n      padding: 0;\n      overflow-y: visible; } }\n\n@media (min-width: 1400px) {\n  .navbar-expand-xxl {\n    flex-wrap: nowrap;\n    justify-content: flex-start; }\n    .navbar-expand-xxl .navbar-nav {\n      flex-direction: row; }\n      .navbar-expand-xxl .navbar-nav .dropdown-menu {\n        position: absolute; }\n      .navbar-expand-xxl .navbar-nav .nav-link {\n        padding-right: 0.8rem;\n        padding-left: 0.8rem; }\n    .navbar-expand-xxl .navbar-nav-scroll {\n      overflow: visible; }\n    .navbar-expand-xxl .navbar-collapse {\n      display: flex !important;\n      flex-basis: auto; }\n    .navbar-expand-xxl .navbar-toggler {\n      display: none; }\n    .navbar-expand-xxl .offcanvas-header {\n      display: none; }\n    .navbar-expand-xxl .offcanvas {\n      position: inherit;\n      bottom: 0;\n      z-index: 1000;\n      flex-grow: 1;\n      visibility: visible !important;\n      background-color: transparent;\n      border-right: 0;\n      border-left: 0;\n      transition: none;\n      transform: none; }\n    .navbar-expand-xxl .offcanvas-top,\n    .navbar-expand-xxl .offcanvas-bottom {\n      height: auto;\n      border-top: 0;\n      border-bottom: 0; }\n    .navbar-expand-xxl .offcanvas-body {\n      display: flex;\n      flex-grow: 0;\n      padding: 0;\n      overflow-y: visible; } }\n\n.navbar-expand {\n  flex-wrap: nowrap;\n  justify-content: flex-start; }\n  .navbar-expand .navbar-nav {\n    flex-direction: row; }\n    .navbar-expand .navbar-nav .dropdown-menu {\n      position: absolute; }\n    .navbar-expand .navbar-nav .nav-link {\n      padding-right: 0.8rem;\n      padding-left: 0.8rem; }\n  .navbar-expand .navbar-nav-scroll {\n    overflow: visible; }\n  .navbar-expand .navbar-collapse {\n    display: flex !important;\n    flex-basis: auto; }\n  .navbar-expand .navbar-toggler {\n    display: none; }\n  .navbar-expand .offcanvas-header {\n    display: none; }\n  .navbar-expand .offcanvas {\n    position: inherit;\n    bottom: 0;\n    z-index: 1000;\n    flex-grow: 1;\n    visibility: visible !important;\n    background-color: transparent;\n    border-right: 0;\n    border-left: 0;\n    transition: none;\n    transform: none; }\n  .navbar-expand .offcanvas-top,\n  .navbar-expand .offcanvas-bottom {\n    height: auto;\n    border-top: 0;\n    border-bottom: 0; }\n  .navbar-expand .offcanvas-body {\n    display: flex;\n    flex-grow: 0;\n    padding: 0;\n    overflow-y: visible; }\n\n.navbar-light .navbar-brand {\n  color: #111827; }\n  .navbar-light .navbar-brand:hover, .navbar-light .navbar-brand:focus {\n    color: #111827; }\n\n.navbar-light .navbar-nav .nav-link {\n  color: rgba(17, 24, 39, 0.9); }\n  .navbar-light .navbar-nav .nav-link:hover, .navbar-light .navbar-nav .nav-link:focus {\n    color: #111827; }\n  .navbar-light .navbar-nav .nav-link.disabled {\n    color: rgba(17, 24, 39, 0.9); }\n\n.navbar-light .navbar-nav .show > .nav-link,\n.navbar-light .navbar-nav .nav-link.active {\n  color: #111827; }\n\n.navbar-light .navbar-toggler {\n  color: rgba(17, 24, 39, 0.9);\n  border-color: rgba(17, 24, 39, 0.1); }\n\n.navbar-light .navbar-toggler-icon {\n  background-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%2817, 24, 39, 0.9%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e\"); }\n\n.navbar-light .navbar-text {\n  color: rgba(17, 24, 39, 0.9); }\n  .navbar-light .navbar-text a,\n  .navbar-light .navbar-text a:hover,\n  .navbar-light .navbar-text a:focus {\n    color: #111827; }\n\n.navbar-dark .navbar-brand {\n  color: #ffffff; }\n  .navbar-dark .navbar-brand:hover, .navbar-dark .navbar-brand:focus {\n    color: #ffffff; }\n\n.navbar-dark .navbar-nav .nav-link {\n  color: rgba(255, 255, 255, 0.9); }\n  .navbar-dark .navbar-nav .nav-link:hover, .navbar-dark .navbar-nav .nav-link:focus {\n    color: white; }\n  .navbar-dark .navbar-nav .nav-link.disabled {\n    color: rgba(255, 255, 255, 0.9); }\n\n.navbar-dark .navbar-nav .show > .nav-link,\n.navbar-dark .navbar-nav .nav-link.active {\n  color: #ffffff; }\n\n.navbar-dark .navbar-toggler {\n  color: rgba(255, 255, 255, 0.9);\n  border-color: rgba(255, 255, 255, 0.1); }\n\n.navbar-dark .navbar-toggler-icon {\n  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.9%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e\"); }\n\n.navbar-dark .navbar-text {\n  color: rgba(255, 255, 255, 0.9); }\n  .navbar-dark .navbar-text a,\n  .navbar-dark .navbar-text a:hover,\n  .navbar-dark .navbar-text a:focus {\n    color: #ffffff; }\n\n.card {\n  position: relative;\n  display: flex;\n  flex-direction: column;\n  min-width: 0;\n  word-wrap: break-word;\n  background-color: #ffffff;\n  background-clip: border-box;\n  border: 0.0625rem solid rgba(17, 24, 39, 0.125);\n  border-radius: 0.5rem; }\n  .card > hr {\n    margin-right: 0;\n    margin-left: 0; }\n  .card > .list-group {\n    border-top: inherit;\n    border-bottom: inherit; }\n    .card > .list-group:first-child {\n      border-top-width: 0;\n      border-top-left-radius: 0.4375rem;\n      border-top-right-radius: 0.4375rem; }\n    .card > .list-group:last-child {\n      border-bottom-width: 0;\n      border-bottom-right-radius: 0.4375rem;\n      border-bottom-left-radius: 0.4375rem; }\n  .card > .card-header + .list-group,\n  .card > .list-group + .card-footer {\n    border-top: 0; }\n\n.card-body {\n  flex: 1 1 auto;\n  padding: 1.25rem 1.5rem; }\n\n.card-title {\n  margin-bottom: 0.875rem; }\n\n.card-subtitle {\n  margin-top: -0.4375rem;\n  margin-bottom: 0; }\n\n.card-text:last-child {\n  margin-bottom: 0; }\n\n.card-link + .card-link {\n  margin-left: 1.5rem; }\n\n.card-header {\n  padding: 1.25rem 1.5rem;\n  margin-bottom: 0;\n  background-color: rgba(17, 24, 39, 0.03);\n  border-bottom: 0.0625rem solid rgba(17, 24, 39, 0.125); }\n  .card-header:first-child {\n    border-radius: 0.4375rem 0.4375rem 0 0; }\n\n.card-footer {\n  padding: 1.25rem 1.5rem;\n  background-color: rgba(17, 24, 39, 0.03);\n  border-top: 0.0625rem solid rgba(17, 24, 39, 0.125); }\n  .card-footer:last-child {\n    border-radius: 0 0 0.4375rem 0.4375rem; }\n\n.card-header-tabs {\n  margin-right: -0.75rem;\n  margin-bottom: -1.25rem;\n  margin-left: -0.75rem;\n  border-bottom: 0; }\n  .card-header-tabs .nav-link.active {\n    background-color: #ffffff;\n    border-bottom-color: #ffffff; }\n\n.card-header-pills {\n  margin-right: -0.75rem;\n  margin-left: -0.75rem; }\n\n.card-img-overlay {\n  position: absolute;\n  top: 0;\n  right: 0;\n  bottom: 0;\n  left: 0;\n  padding: 1rem;\n  border-radius: 0.4375rem; }\n\n.card-img,\n.card-img-top,\n.card-img-bottom {\n  width: 100%; }\n\n.card-img,\n.card-img-top {\n  border-top-left-radius: 0.4375rem;\n  border-top-right-radius: 0.4375rem; }\n\n.card-img,\n.card-img-bottom {\n  border-bottom-right-radius: 0.4375rem;\n  border-bottom-left-radius: 0.4375rem; }\n\n.card-group > .card {\n  margin-bottom: 0.75rem; }\n\n@media (min-width: 576px) {\n  .card-group {\n    display: flex;\n    flex-flow: row wrap; }\n    .card-group > .card {\n      flex: 1 0 0%;\n      margin-bottom: 0; }\n      .card-group > .card + .card {\n        margin-left: 0;\n        border-left: 0; }\n      .card-group > .card:not(:last-child) {\n        border-top-right-radius: 0;\n        border-bottom-right-radius: 0; }\n        .card-group > .card:not(:last-child) .card-img-top,\n        .card-group > .card:not(:last-child) .card-header {\n          border-top-right-radius: 0; }\n        .card-group > .card:not(:last-child) .card-img-bottom,\n        .card-group > .card:not(:last-child) .card-footer {\n          border-bottom-right-radius: 0; }\n      .card-group > .card:not(:first-child) {\n        border-top-left-radius: 0;\n        border-bottom-left-radius: 0; }\n        .card-group > .card:not(:first-child) .card-img-top,\n        .card-group > .card:not(:first-child) .card-header {\n          border-top-left-radius: 0; }\n        .card-group > .card:not(:first-child) .card-img-bottom,\n        .card-group > .card:not(:first-child) .card-footer {\n          border-bottom-left-radius: 0; } }\n\n.accordion-button {\n  position: relative;\n  display: flex;\n  align-items: center;\n  width: 100%;\n  padding: 1rem 1.25rem;\n  font-size: 1rem;\n  color: #374151;\n  text-align: left;\n  background-color: transparent;\n  border: 0;\n  border-radius: 0;\n  overflow-anchor: none;\n  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; }\n  @media (prefers-reduced-motion: reduce) {\n    .accordion-button {\n      transition: none; } }\n  .accordion-button:not(.collapsed) {\n    color: #1c2532;\n    background-color: #9CA3AF;\n    box-shadow: inset 0 -0.0625rem 0 #9CA3AF; }\n    .accordion-button:not(.collapsed)::after {\n      background-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%231c2532'%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\");\n      transform: rotate(180deg); }\n  .accordion-button::after {\n    flex-shrink: 0;\n    width: 1.25rem;\n    height: 1.25rem;\n    margin-left: auto;\n    content: \"\";\n    background-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23374151'%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\");\n    background-repeat: no-repeat;\n    background-size: 1.25rem;\n    transition: transform 0.2s ease-in-out; }\n    @media (prefers-reduced-motion: reduce) {\n      .accordion-button::after {\n        transition: none; } }\n  .accordion-button:hover {\n    z-index: 2; }\n  .accordion-button:focus {\n    z-index: 3;\n    border-color: #4d6689;\n    outline: 0;\n    box-shadow: 0 0 0 0.18rem rgba(31, 41, 55, 0.25); }\n\n.accordion-header {\n  margin-bottom: 0; }\n\n.accordion-item {\n  background-color: transparent;\n  border: 0.0625rem solid #9CA3AF; }\n  .accordion-item:first-of-type {\n    border-top-left-radius: 0.5rem;\n    border-top-right-radius: 0.5rem; }\n    .accordion-item:first-of-type .accordion-button {\n      border-top-left-radius: 0.4375rem;\n      border-top-right-radius: 0.4375rem; }\n  .accordion-item:not(:first-of-type) {\n    border-top: 0; }\n  .accordion-item:last-of-type {\n    border-bottom-right-radius: 0.5rem;\n    border-bottom-left-radius: 0.5rem; }\n    .accordion-item:last-of-type .accordion-button.collapsed {\n      border-bottom-right-radius: 0.4375rem;\n      border-bottom-left-radius: 0.4375rem; }\n    .accordion-item:last-of-type .accordion-collapse {\n      border-bottom-right-radius: 0.5rem;\n      border-bottom-left-radius: 0.5rem; }\n\n.accordion-body {\n  padding: 1rem 1.25rem; }\n\n.accordion-flush .accordion-collapse {\n  border-width: 0; }\n\n.accordion-flush .accordion-item {\n  border-right: 0;\n  border-left: 0;\n  border-radius: 0; }\n  .accordion-flush .accordion-item:first-child {\n    border-top: 0; }\n  .accordion-flush .accordion-item:last-child {\n    border-bottom: 0; }\n  .accordion-flush .accordion-item .accordion-button {\n    border-radius: 0; }\n\n.breadcrumb {\n  display: flex;\n  flex-wrap: wrap;\n  padding: 0.5rem 1rem;\n  margin-bottom: 1rem;\n  list-style: none;\n  background-color: #E5E7EB;\n  border-radius: 0.5rem; }\n\n.breadcrumb-item + .breadcrumb-item {\n  padding-left: 0.5rem; }\n  .breadcrumb-item + .breadcrumb-item::before {\n    float: left;\n    padding-right: 0.5rem;\n    color: #4B5563;\n    content: var(--bs-breadcrumb-divider, \"/\") /* rtl: var(--bs-breadcrumb-divider, \"/\") */; }\n\n.breadcrumb-item.active {\n  color: #4B5563; }\n\n.pagination {\n  display: flex;\n  padding-left: 0;\n  list-style: none; }\n\n.page-link {\n  position: relative;\n  display: block;\n  color: #1F2937;\n  background-color: #ffffff;\n  border: 0.0625rem solid #9CA3AF;\n  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; }\n  @media (prefers-reduced-motion: reduce) {\n    .page-link {\n      transition: none; } }\n  .page-link:hover {\n    z-index: 2;\n    color: black;\n    background-color: #E5E7EB;\n    border-color: #D1D5DB; }\n  .page-link:focus {\n    z-index: 3;\n    color: black;\n    background-color: #E5E7EB;\n    outline: 0;\n    box-shadow: 0 0 0 0.18rem rgba(31, 41, 55, 0.25); }\n\n.page-item:not(:first-child) .page-link {\n  margin-left: -0.0625rem; }\n\n.page-item.active .page-link {\n  z-index: 3;\n  color: #ffffff;\n  background-color: #1F2937;\n  border-color: #1F2937; }\n\n.page-item.disabled .page-link {\n  color: #4B5563;\n  pointer-events: none;\n  background-color: #ffffff;\n  border-color: #D1D5DB; }\n\n.page-link {\n  padding: 0.375rem 0.75rem; }\n\n.page-item:first-child .page-link {\n  border-top-left-radius: 0.5rem;\n  border-bottom-left-radius: 0.5rem; }\n\n.page-item:last-child .page-link {\n  border-top-right-radius: 0.5rem;\n  border-bottom-right-radius: 0.5rem; }\n\n.pagination-lg .page-link {\n  padding: 0.75rem 1.5rem;\n  font-size: 1.25rem; }\n\n.pagination-lg .page-item:first-child .page-link {\n  border-top-left-radius: 1rem;\n  border-bottom-left-radius: 1rem; }\n\n.pagination-lg .page-item:last-child .page-link {\n  border-top-right-radius: 1rem;\n  border-bottom-right-radius: 1rem; }\n\n.pagination-sm .page-link {\n  padding: 0.25rem 0.5rem;\n  font-size: 0.875rem; }\n\n.pagination-sm .page-item:first-child .page-link {\n  border-top-left-radius: 0.35rem;\n  border-bottom-left-radius: 0.35rem; }\n\n.pagination-sm .page-item:last-child .page-link {\n  border-top-right-radius: 0.35rem;\n  border-bottom-right-radius: 0.35rem; }\n\n.badge {\n  display: inline-block;\n  padding: 0.2rem 0.4rem;\n  font-size: 0.75em;\n  font-weight: 600;\n  line-height: 1;\n  color: #ffffff;\n  text-align: center;\n  white-space: nowrap;\n  vertical-align: baseline;\n  border-radius: 0.5rem; }\n  .badge:empty {\n    display: none; }\n\n.btn .badge {\n  position: relative;\n  top: -1px; }\n\n.alert {\n  position: relative;\n  padding: 1rem 1rem;\n  margin-bottom: 1rem;\n  border: 0.0625rem solid transparent;\n  border-radius: 0.5rem; }\n\n.alert-heading {\n  color: inherit; }\n\n.alert-link {\n  font-weight: 500; }\n\n.alert-dismissible {\n  padding-right: 3rem; }\n  .alert-dismissible .btn-close {\n    position: absolute;\n    top: 0;\n    right: 0;\n    z-index: 2;\n    padding: 1.25rem 1rem; }\n\n.alert-primary {\n  color: #131921;\n  background-color: #d2d4d7;\n  border-color: #bcbfc3; }\n  .alert-primary .alert-link {\n    color: #0f141a; }\n\n.alert-secondary {\n  color: #907146;\n  background-color: #fcf2e3;\n  border-color: #fbebd5; }\n  .alert-secondary .alert-link {\n    color: #735a38; }\n\n.alert-tertiary {\n  color: #1d1d40;\n  background-color: #d6d6e1;\n  border-color: #c1c1d2; }\n  .alert-tertiary .alert-link {\n    color: #171733; }\n\n.alert-success {\n  color: #0a6f4d;\n  background-color: #cff1e6;\n  border-color: #b7ead9; }\n  .alert-success .alert-link {\n    color: #08593e; }\n\n.alert-info {\n  color: #153a7c;\n  background-color: #d3dff5;\n  border-color: #bdd0f0; }\n  .alert-info .alert-link {\n    color: #112e63; }\n\n.alert-warning {\n  color: #927755;\n  background-color: #fdf4e8;\n  border-color: #fbeedd; }\n  .alert-warning .alert-link {\n    color: #755f44; }\n\n.alert-danger {\n  color: #87112b;\n  background-color: #f9d2da;\n  border-color: #f6bbc8; }\n  .alert-danger .alert-link {\n    color: #6c0e22; }\n\n.alert-white {\n  color: #797f87;\n  background-color: white;\n  border-color: white; }\n  .alert-white .alert-link {\n    color: #61666c; }\n\n.alert-indigo {\n  color: #2f2a89;\n  background-color: #dcdafa;\n  border-color: #cac8f7; }\n  .alert-indigo .alert-link {\n    color: #26226e; }\n\n.alert-purple {\n  color: #4a238e;\n  background-color: #e5d8fb;\n  border-color: #d8c4fa; }\n  .alert-purple .alert-link {\n    color: #3b1c72; }\n\n.alert-yellow-100 {\n  color: #998f80;\n  background-color: #fffcf7;\n  border-color: #fffaf3; }\n  .alert-yellow-100 .alert-link {\n    color: #7a7266; }\n\n.alert-yellow-200 {\n  color: #93836e;\n  background-color: #fdf8f1;\n  border-color: #fcf4ea; }\n  .alert-yellow-200 .alert-link {\n    color: #766958; }\n\n.alert-gray-50 {\n  color: #767d85;\n  background-color: #fefefe;\n  border-color: #fdfefe; }\n  .alert-gray-50 .alert-link {\n    color: #5e646a; }\n\n.alert-gray-100 {\n  color: #919294;\n  background-color: #fcfdfd;\n  border-color: #fbfcfc; }\n  .alert-gray-100 .alert-link {\n    color: #747576; }\n\n.alert-gray-200 {\n  color: #898b8d;\n  background-color: #fafafb;\n  border-color: #f7f8f9; }\n  .alert-gray-200 .alert-link {\n    color: #6e6f71; }\n\n.alert-gray-300 {\n  color: #7d8083;\n  background-color: #f6f7f8;\n  border-color: #f1f2f4; }\n  .alert-gray-300 .alert-link {\n    color: #646669; }\n\n.alert-gray-400 {\n  color: #5e6269;\n  background-color: #ebedef;\n  border-color: #e1e3e7; }\n  .alert-gray-400 .alert-link {\n    color: #4b4e54; }\n\n.alert-gray-500 {\n  color: #40444d;\n  background-color: #e1e3e6;\n  border-color: #d3d5d9; }\n  .alert-gray-500 .alert-link {\n    color: #33363e; }\n\n.alert-gray-600 {\n  color: #2d333b;\n  background-color: #dbdde0;\n  border-color: #c9ccd0; }\n  .alert-gray-600 .alert-link {\n    color: #24292f; }\n\n.alert-gray-700 {\n  color: #212731;\n  background-color: #d7d9dc;\n  border-color: #c3c6cb; }\n  .alert-gray-700 .alert-link {\n    color: #1a1f27; }\n\n.alert-gray-800 {\n  color: #131921;\n  background-color: #d2d4d7;\n  border-color: #bcbfc3; }\n  .alert-gray-800 .alert-link {\n    color: #0f141a; }\n\n.alert-gray-900 {\n  color: #0a0e17;\n  background-color: #cfd1d4;\n  border-color: #b8babe; }\n  .alert-gray-900 .alert-link {\n    color: #080b12; }\n\n@keyframes progress-bar-stripes {\n  0% {\n    background-position-x: 1rem; } }\n\n.progress {\n  display: flex;\n  height: 1rem;\n  overflow: hidden;\n  font-size: 0.75rem;\n  background-color: #E5E7EB;\n  border-radius: 0.5rem;\n  box-shadow: inset 0 1px 2px rgba(17, 24, 39, 0.0125); }\n\n.progress-bar {\n  display: flex;\n  flex-direction: column;\n  justify-content: center;\n  overflow: hidden;\n  color: #ffffff;\n  text-align: center;\n  white-space: nowrap;\n  background-color: #1F2937;\n  transition: width 0.6s ease; }\n  @media (prefers-reduced-motion: reduce) {\n    .progress-bar {\n      transition: none; } }\n\n.progress-bar-striped {\n  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);\n  background-size: 1rem 1rem; }\n\n.progress-bar-animated {\n  animation: 1s linear infinite progress-bar-stripes; }\n  @media (prefers-reduced-motion: reduce) {\n    .progress-bar-animated {\n      animation: none; } }\n\n.list-group {\n  display: flex;\n  flex-direction: column;\n  padding-left: 0;\n  margin-bottom: 0;\n  border-radius: 0.5rem; }\n\n.list-group-numbered {\n  list-style-type: none;\n  counter-reset: section; }\n  .list-group-numbered > li::before {\n    content: counters(section, \".\") \". \";\n    counter-increment: section; }\n\n.list-group-item-action {\n  width: 100%;\n  color: #374151;\n  text-align: inherit; }\n  .list-group-item-action:hover, .list-group-item-action:focus {\n    z-index: 1;\n    color: #374151;\n    text-decoration: none;\n    background-color: #F2F4F6; }\n  .list-group-item-action:active {\n    color: #374151;\n    background-color: #E5E7EB; }\n\n.list-group-item {\n  position: relative;\n  display: block;\n  padding: 0.5rem 1rem;\n  color: #111827;\n  background-color: #ffffff;\n  border: 0.0625rem solid rgba(17, 24, 39, 0.125); }\n  .list-group-item:first-child {\n    border-top-left-radius: inherit;\n    border-top-right-radius: inherit; }\n  .list-group-item:last-child {\n    border-bottom-right-radius: inherit;\n    border-bottom-left-radius: inherit; }\n  .list-group-item.disabled, .list-group-item:disabled {\n    color: #4B5563;\n    pointer-events: none;\n    background-color: #ffffff; }\n  .list-group-item.active {\n    z-index: 2;\n    color: #ffffff;\n    background-color: #1F2937;\n    border-color: #1F2937; }\n  .list-group-item + .list-group-item {\n    border-top-width: 0; }\n    .list-group-item + .list-group-item.active {\n      margin-top: -0.0625rem;\n      border-top-width: 0.0625rem; }\n\n.list-group-horizontal {\n  flex-direction: row; }\n  .list-group-horizontal > .list-group-item:first-child {\n    border-bottom-left-radius: 0.5rem;\n    border-top-right-radius: 0; }\n  .list-group-horizontal > .list-group-item:last-child {\n    border-top-right-radius: 0.5rem;\n    border-bottom-left-radius: 0; }\n  .list-group-horizontal > .list-group-item.active {\n    margin-top: 0; }\n  .list-group-horizontal > .list-group-item + .list-group-item {\n    border-top-width: 0.0625rem;\n    border-left-width: 0; }\n    .list-group-horizontal > .list-group-item + .list-group-item.active {\n      margin-left: -0.0625rem;\n      border-left-width: 0.0625rem; }\n\n@media (min-width: 576px) {\n  .list-group-horizontal-sm {\n    flex-direction: row; }\n    .list-group-horizontal-sm > .list-group-item:first-child {\n      border-bottom-left-radius: 0.5rem;\n      border-top-right-radius: 0; }\n    .list-group-horizontal-sm > .list-group-item:last-child {\n      border-top-right-radius: 0.5rem;\n      border-bottom-left-radius: 0; }\n    .list-group-horizontal-sm > .list-group-item.active {\n      margin-top: 0; }\n    .list-group-horizontal-sm > .list-group-item + .list-group-item {\n      border-top-width: 0.0625rem;\n      border-left-width: 0; }\n      .list-group-horizontal-sm > .list-group-item + .list-group-item.active {\n        margin-left: -0.0625rem;\n        border-left-width: 0.0625rem; } }\n\n@media (min-width: 768px) {\n  .list-group-horizontal-md {\n    flex-direction: row; }\n    .list-group-horizontal-md > .list-group-item:first-child {\n      border-bottom-left-radius: 0.5rem;\n      border-top-right-radius: 0; }\n    .list-group-horizontal-md > .list-group-item:last-child {\n      border-top-right-radius: 0.5rem;\n      border-bottom-left-radius: 0; }\n    .list-group-horizontal-md > .list-group-item.active {\n      margin-top: 0; }\n    .list-group-horizontal-md > .list-group-item + .list-group-item {\n      border-top-width: 0.0625rem;\n      border-left-width: 0; }\n      .list-group-horizontal-md > .list-group-item + .list-group-item.active {\n        margin-left: -0.0625rem;\n        border-left-width: 0.0625rem; } }\n\n@media (min-width: 992px) {\n  .list-group-horizontal-lg {\n    flex-direction: row; }\n    .list-group-horizontal-lg > .list-group-item:first-child {\n      border-bottom-left-radius: 0.5rem;\n      border-top-right-radius: 0; }\n    .list-group-horizontal-lg > .list-group-item:last-child {\n      border-top-right-radius: 0.5rem;\n      border-bottom-left-radius: 0; }\n    .list-group-horizontal-lg > .list-group-item.active {\n      margin-top: 0; }\n    .list-group-horizontal-lg > .list-group-item + .list-group-item {\n      border-top-width: 0.0625rem;\n      border-left-width: 0; }\n      .list-group-horizontal-lg > .list-group-item + .list-group-item.active {\n        margin-left: -0.0625rem;\n        border-left-width: 0.0625rem; } }\n\n@media (min-width: 1200px) {\n  .list-group-horizontal-xl {\n    flex-direction: row; }\n    .list-group-horizontal-xl > .list-group-item:first-child {\n      border-bottom-left-radius: 0.5rem;\n      border-top-right-radius: 0; }\n    .list-group-horizontal-xl > .list-group-item:last-child {\n      border-top-right-radius: 0.5rem;\n      border-bottom-left-radius: 0; }\n    .list-group-horizontal-xl > .list-group-item.active {\n      margin-top: 0; }\n    .list-group-horizontal-xl > .list-group-item + .list-group-item {\n      border-top-width: 0.0625rem;\n      border-left-width: 0; }\n      .list-group-horizontal-xl > .list-group-item + .list-group-item.active {\n        margin-left: -0.0625rem;\n        border-left-width: 0.0625rem; } }\n\n@media (min-width: 1400px) {\n  .list-group-horizontal-xxl {\n    flex-direction: row; }\n    .list-group-horizontal-xxl > .list-group-item:first-child {\n      border-bottom-left-radius: 0.5rem;\n      border-top-right-radius: 0; }\n    .list-group-horizontal-xxl > .list-group-item:last-child {\n      border-top-right-radius: 0.5rem;\n      border-bottom-left-radius: 0; }\n    .list-group-horizontal-xxl > .list-group-item.active {\n      margin-top: 0; }\n    .list-group-horizontal-xxl > .list-group-item + .list-group-item {\n      border-top-width: 0.0625rem;\n      border-left-width: 0; }\n      .list-group-horizontal-xxl > .list-group-item + .list-group-item.active {\n        margin-left: -0.0625rem;\n        border-left-width: 0.0625rem; } }\n\n.list-group-flush {\n  border-radius: 0; }\n  .list-group-flush > .list-group-item {\n    border-width: 0 0 0.0625rem; }\n    .list-group-flush > .list-group-item:last-child {\n      border-bottom-width: 0; }\n\n.list-group-item-primary {\n  color: #131921;\n  background-color: #d2d4d7; }\n  .list-group-item-primary.list-group-item-action:hover, .list-group-item-primary.list-group-item-action:focus {\n    color: #131921;\n    background-color: #bdbfc2; }\n  .list-group-item-primary.list-group-item-action.active {\n    color: #ffffff;\n    background-color: #131921;\n    border-color: #131921; }\n\n.list-group-item-secondary {\n  color: #907146;\n  background-color: #fcf2e3; }\n  .list-group-item-secondary.list-group-item-action:hover, .list-group-item-secondary.list-group-item-action:focus {\n    color: #907146;\n    background-color: #e3dacc; }\n  .list-group-item-secondary.list-group-item-action.active {\n    color: #ffffff;\n    background-color: #907146;\n    border-color: #907146; }\n\n.list-group-item-tertiary {\n  color: #1d1d40;\n  background-color: #d6d6e1; }\n  .list-group-item-tertiary.list-group-item-action:hover, .list-group-item-tertiary.list-group-item-action:focus {\n    color: #1d1d40;\n    background-color: #c1c1cb; }\n  .list-group-item-tertiary.list-group-item-action.active {\n    color: #ffffff;\n    background-color: #1d1d40;\n    border-color: #1d1d40; }\n\n.list-group-item-success {\n  color: #0a6f4d;\n  background-color: #cff1e6; }\n  .list-group-item-success.list-group-item-action:hover, .list-group-item-success.list-group-item-action:focus {\n    color: #0a6f4d;\n    background-color: #bad9cf; }\n  .list-group-item-success.list-group-item-action.active {\n    color: #ffffff;\n    background-color: #0a6f4d;\n    border-color: #0a6f4d; }\n\n.list-group-item-info {\n  color: #153a7c;\n  background-color: #d3dff5; }\n  .list-group-item-info.list-group-item-action:hover, .list-group-item-info.list-group-item-action:focus {\n    color: #153a7c;\n    background-color: #bec9dd; }\n  .list-group-item-info.list-group-item-action.active {\n    color: #ffffff;\n    background-color: #153a7c;\n    border-color: #153a7c; }\n\n.list-group-item-warning {\n  color: #927755;\n  background-color: #fdf4e8; }\n  .list-group-item-warning.list-group-item-action:hover, .list-group-item-warning.list-group-item-action:focus {\n    color: #927755;\n    background-color: #e4dcd1; }\n  .list-group-item-warning.list-group-item-action.active {\n    color: #ffffff;\n    background-color: #927755;\n    border-color: #927755; }\n\n.list-group-item-danger {\n  color: #87112b;\n  background-color: #f9d2da; }\n  .list-group-item-danger.list-group-item-action:hover, .list-group-item-danger.list-group-item-action:focus {\n    color: #87112b;\n    background-color: #e0bdc4; }\n  .list-group-item-danger.list-group-item-action.active {\n    color: #ffffff;\n    background-color: #87112b;\n    border-color: #87112b; }\n\n.list-group-item-white {\n  color: #797f87;\n  background-color: white; }\n  .list-group-item-white.list-group-item-action:hover, .list-group-item-white.list-group-item-action:focus {\n    color: #797f87;\n    background-color: #e6e6e6; }\n  .list-group-item-white.list-group-item-action.active {\n    color: #ffffff;\n    background-color: #797f87;\n    border-color: #797f87; }\n\n.list-group-item-indigo {\n  color: #2f2a89;\n  background-color: #dcdafa; }\n  .list-group-item-indigo.list-group-item-action:hover, .list-group-item-indigo.list-group-item-action:focus {\n    color: #2f2a89;\n    background-color: #c6c4e1; }\n  .list-group-item-indigo.list-group-item-action.active {\n    color: #ffffff;\n    background-color: #2f2a89;\n    border-color: #2f2a89; }\n\n.list-group-item-purple {\n  color: #4a238e;\n  background-color: #e5d8fb; }\n  .list-group-item-purple.list-group-item-action:hover, .list-group-item-purple.list-group-item-action:focus {\n    color: #4a238e;\n    background-color: #cec2e2; }\n  .list-group-item-purple.list-group-item-action.active {\n    color: #ffffff;\n    background-color: #4a238e;\n    border-color: #4a238e; }\n\n.list-group-item-yellow-100 {\n  color: #998f80;\n  background-color: #fffcf7; }\n  .list-group-item-yellow-100.list-group-item-action:hover, .list-group-item-yellow-100.list-group-item-action:focus {\n    color: #998f80;\n    background-color: #e6e3de; }\n  .list-group-item-yellow-100.list-group-item-action.active {\n    color: #ffffff;\n    background-color: #998f80;\n    border-color: #998f80; }\n\n.list-group-item-yellow-200 {\n  color: #93836e;\n  background-color: #fdf8f1; }\n  .list-group-item-yellow-200.list-group-item-action:hover, .list-group-item-yellow-200.list-group-item-action:focus {\n    color: #93836e;\n    background-color: #e4dfd9; }\n  .list-group-item-yellow-200.list-group-item-action.active {\n    color: #ffffff;\n    background-color: #93836e;\n    border-color: #93836e; }\n\n.list-group-item-gray-50 {\n  color: #767d85;\n  background-color: #fefefe; }\n  .list-group-item-gray-50.list-group-item-action:hover, .list-group-item-gray-50.list-group-item-action:focus {\n    color: #767d85;\n    background-color: #e5e5e5; }\n  .list-group-item-gray-50.list-group-item-action.active {\n    color: #ffffff;\n    background-color: #767d85;\n    border-color: #767d85; }\n\n.list-group-item-gray-100 {\n  color: #919294;\n  background-color: #fcfdfd; }\n  .list-group-item-gray-100.list-group-item-action:hover, .list-group-item-gray-100.list-group-item-action:focus {\n    color: #919294;\n    background-color: #e3e4e4; }\n  .list-group-item-gray-100.list-group-item-action.active {\n    color: #ffffff;\n    background-color: #919294;\n    border-color: #919294; }\n\n.list-group-item-gray-200 {\n  color: #898b8d;\n  background-color: #fafafb; }\n  .list-group-item-gray-200.list-group-item-action:hover, .list-group-item-gray-200.list-group-item-action:focus {\n    color: #898b8d;\n    background-color: #e1e1e2; }\n  .list-group-item-gray-200.list-group-item-action.active {\n    color: #ffffff;\n    background-color: #898b8d;\n    border-color: #898b8d; }\n\n.list-group-item-gray-300 {\n  color: #7d8083;\n  background-color: #f6f7f8; }\n  .list-group-item-gray-300.list-group-item-action:hover, .list-group-item-gray-300.list-group-item-action:focus {\n    color: #7d8083;\n    background-color: #dddedf; }\n  .list-group-item-gray-300.list-group-item-action.active {\n    color: #ffffff;\n    background-color: #7d8083;\n    border-color: #7d8083; }\n\n.list-group-item-gray-400 {\n  color: #5e6269;\n  background-color: #ebedef; }\n  .list-group-item-gray-400.list-group-item-action:hover, .list-group-item-gray-400.list-group-item-action:focus {\n    color: #5e6269;\n    background-color: #d4d5d7; }\n  .list-group-item-gray-400.list-group-item-action.active {\n    color: #ffffff;\n    background-color: #5e6269;\n    border-color: #5e6269; }\n\n.list-group-item-gray-500 {\n  color: #40444d;\n  background-color: #e1e3e6; }\n  .list-group-item-gray-500.list-group-item-action:hover, .list-group-item-gray-500.list-group-item-action:focus {\n    color: #40444d;\n    background-color: #cbcccf; }\n  .list-group-item-gray-500.list-group-item-action.active {\n    color: #ffffff;\n    background-color: #40444d;\n    border-color: #40444d; }\n\n.list-group-item-gray-600 {\n  color: #2d333b;\n  background-color: #dbdde0; }\n  .list-group-item-gray-600.list-group-item-action:hover, .list-group-item-gray-600.list-group-item-action:focus {\n    color: #2d333b;\n    background-color: #c5c7ca; }\n  .list-group-item-gray-600.list-group-item-action.active {\n    color: #ffffff;\n    background-color: #2d333b;\n    border-color: #2d333b; }\n\n.list-group-item-gray-700 {\n  color: #212731;\n  background-color: #d7d9dc; }\n  .list-group-item-gray-700.list-group-item-action:hover, .list-group-item-gray-700.list-group-item-action:focus {\n    color: #212731;\n    background-color: #c2c3c6; }\n  .list-group-item-gray-700.list-group-item-action.active {\n    color: #ffffff;\n    background-color: #212731;\n    border-color: #212731; }\n\n.list-group-item-gray-800 {\n  color: #131921;\n  background-color: #d2d4d7; }\n  .list-group-item-gray-800.list-group-item-action:hover, .list-group-item-gray-800.list-group-item-action:focus {\n    color: #131921;\n    background-color: #bdbfc2; }\n  .list-group-item-gray-800.list-group-item-action.active {\n    color: #ffffff;\n    background-color: #131921;\n    border-color: #131921; }\n\n.list-group-item-gray-900 {\n  color: #0a0e17;\n  background-color: #cfd1d4; }\n  .list-group-item-gray-900.list-group-item-action:hover, .list-group-item-gray-900.list-group-item-action:focus {\n    color: #0a0e17;\n    background-color: #babcbf; }\n  .list-group-item-gray-900.list-group-item-action.active {\n    color: #ffffff;\n    background-color: #0a0e17;\n    border-color: #0a0e17; }\n\n.btn-close {\n  box-sizing: content-box;\n  width: 1em;\n  height: 1em;\n  padding: 0.25em 0.25em;\n  color: #111827;\n  background: transparent url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23111827'%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;\n  border: 0;\n  border-radius: 0.5rem;\n  opacity: 0.5; }\n  .btn-close:hover {\n    color: #111827;\n    text-decoration: none;\n    opacity: 0.75; }\n  .btn-close:focus {\n    outline: 0;\n    box-shadow: 0 0 0 0.18rem rgba(31, 41, 55, 0.25);\n    opacity: 1; }\n  .btn-close:disabled, .btn-close.disabled {\n    pointer-events: none;\n    -webkit-user-select: none;\n            user-select: none;\n    opacity: 0.25; }\n\n.btn-close-white {\n  filter: invert(1) grayscale(100%) brightness(200%); }\n\n.toast {\n  width: 350px;\n  max-width: 100%;\n  font-size: 0.875rem;\n  pointer-events: auto;\n  background-color: rgba(255, 255, 255, 0.85);\n  background-clip: padding-box;\n  border: 1px solid rgba(0, 0, 0, 0.1);\n  box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px 0 rgba(0, 0, 0, 0.06);\n  border-radius: 0.5rem; }\n  .toast.showing {\n    opacity: 0; }\n  .toast:not(.show) {\n    display: none; }\n\n.toast-container {\n  width: max-content;\n  max-width: 100%;\n  pointer-events: none; }\n  .toast-container > :not(:last-child) {\n    margin-bottom: 1rem; }\n\n.toast-header {\n  display: flex;\n  align-items: center;\n  padding: 0.25rem 0.75rem;\n  color: #4B5563;\n  background-color: rgba(255, 255, 255, 0.85);\n  background-clip: padding-box;\n  border-bottom: 1px solid rgba(0, 0, 0, 0.05);\n  border-top-left-radius: calc(0.5rem - 1px);\n  border-top-right-radius: calc(0.5rem - 1px); }\n  .toast-header .btn-close {\n    margin-right: -0.375rem;\n    margin-left: 0.75rem; }\n\n.toast-body {\n  padding: 0.75rem;\n  word-wrap: break-word; }\n\n.modal {\n  position: fixed;\n  top: 0;\n  left: 0;\n  z-index: 1050;\n  display: none;\n  width: 100%;\n  height: 100%;\n  overflow-x: hidden;\n  overflow-y: auto;\n  outline: 0; }\n\n.modal-dialog {\n  position: relative;\n  width: auto;\n  margin: 0.5rem;\n  pointer-events: none; }\n  .modal.fade .modal-dialog {\n    transition: transform 0.3s ease-out;\n    transform: translate(0, -50px); }\n    @media (prefers-reduced-motion: reduce) {\n      .modal.fade .modal-dialog {\n        transition: none; } }\n  .modal.show .modal-dialog {\n    transform: none; }\n  .modal.modal-static .modal-dialog {\n    transform: scale(1.02); }\n\n.modal-dialog-scrollable {\n  height: calc(100% - 1rem); }\n  .modal-dialog-scrollable .modal-content {\n    max-height: 100%;\n    overflow: hidden; }\n  .modal-dialog-scrollable .modal-body {\n    overflow-y: auto; }\n\n.modal-dialog-centered {\n  display: flex;\n  align-items: center;\n  min-height: calc(100% - 1rem); }\n\n.modal-content {\n  position: relative;\n  display: flex;\n  flex-direction: column;\n  width: 100%;\n  pointer-events: auto;\n  background-color: #ffffff;\n  background-clip: padding-box;\n  border: 0.0625rem solid rgba(17, 24, 39, 0.2);\n  border-radius: 0.5rem;\n  box-shadow: 0 2px 5px rgba(140, 152, 164, 0.2);\n  outline: 0; }\n\n.modal-backdrop {\n  position: fixed;\n  top: 0;\n  left: 0;\n  z-index: 1040;\n  width: 100vw;\n  height: 100vh;\n  background-color: #111827; }\n  .modal-backdrop.fade {\n    opacity: 0; }\n  .modal-backdrop.show {\n    opacity: 0.5; }\n\n.modal-header {\n  display: flex;\n  flex-shrink: 0;\n  align-items: center;\n  justify-content: space-between;\n  padding: 1rem 1rem;\n  border-bottom: 0.0625rem solid #E5E7EB;\n  border-top-left-radius: 0.4375rem;\n  border-top-right-radius: 0.4375rem; }\n  .modal-header .btn-close {\n    padding: 0.5rem 0.5rem;\n    margin: -0.5rem -0.5rem -0.5rem auto; }\n\n.modal-title {\n  margin-bottom: 0;\n  line-height: 1.5; }\n\n.modal-body {\n  position: relative;\n  flex: 1 1 auto;\n  padding: 1rem; }\n\n.modal-footer {\n  display: flex;\n  flex-wrap: wrap;\n  flex-shrink: 0;\n  align-items: center;\n  justify-content: flex-end;\n  padding: 0.75rem;\n  border-top: 0.0625rem solid #E5E7EB;\n  border-bottom-right-radius: 0.4375rem;\n  border-bottom-left-radius: 0.4375rem; }\n  .modal-footer > * {\n    margin: 0.25rem; }\n\n@media (min-width: 576px) {\n  .modal-dialog {\n    max-width: 500px;\n    margin: 1.75rem auto; }\n  .modal-dialog-scrollable {\n    height: calc(100% - 3.5rem); }\n  .modal-dialog-centered {\n    min-height: calc(100% - 3.5rem); }\n  .modal-content {\n    box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px 0 rgba(0, 0, 0, 0.06); }\n  .modal-sm {\n    max-width: 300px; } }\n\n@media (min-width: 992px) {\n  .modal-lg,\n  .modal-xl {\n    max-width: 800px; } }\n\n@media (min-width: 1200px) {\n  .modal-xl {\n    max-width: 1140px; } }\n\n.modal-fullscreen {\n  width: 100vw;\n  max-width: none;\n  height: 100%;\n  margin: 0; }\n  .modal-fullscreen .modal-content {\n    height: 100%;\n    border: 0;\n    border-radius: 0; }\n  .modal-fullscreen .modal-header {\n    border-radius: 0; }\n  .modal-fullscreen .modal-body {\n    overflow-y: auto; }\n  .modal-fullscreen .modal-footer {\n    border-radius: 0; }\n\n@media (max-width: 575.98px) {\n  .modal-fullscreen-sm-down {\n    width: 100vw;\n    max-width: none;\n    height: 100%;\n    margin: 0; }\n    .modal-fullscreen-sm-down .modal-content {\n      height: 100%;\n      border: 0;\n      border-radius: 0; }\n    .modal-fullscreen-sm-down .modal-header {\n      border-radius: 0; }\n    .modal-fullscreen-sm-down .modal-body {\n      overflow-y: auto; }\n    .modal-fullscreen-sm-down .modal-footer {\n      border-radius: 0; } }\n\n@media (max-width: 767.98px) {\n  .modal-fullscreen-md-down {\n    width: 100vw;\n    max-width: none;\n    height: 100%;\n    margin: 0; }\n    .modal-fullscreen-md-down .modal-content {\n      height: 100%;\n      border: 0;\n      border-radius: 0; }\n    .modal-fullscreen-md-down .modal-header {\n      border-radius: 0; }\n    .modal-fullscreen-md-down .modal-body {\n      overflow-y: auto; }\n    .modal-fullscreen-md-down .modal-footer {\n      border-radius: 0; } }\n\n@media (max-width: 991.98px) {\n  .modal-fullscreen-lg-down {\n    width: 100vw;\n    max-width: none;\n    height: 100%;\n    margin: 0; }\n    .modal-fullscreen-lg-down .modal-content {\n      height: 100%;\n      border: 0;\n      border-radius: 0; }\n    .modal-fullscreen-lg-down .modal-header {\n      border-radius: 0; }\n    .modal-fullscreen-lg-down .modal-body {\n      overflow-y: auto; }\n    .modal-fullscreen-lg-down .modal-footer {\n      border-radius: 0; } }\n\n@media (max-width: 1199.98px) {\n  .modal-fullscreen-xl-down {\n    width: 100vw;\n    max-width: none;\n    height: 100%;\n    margin: 0; }\n    .modal-fullscreen-xl-down .modal-content {\n      height: 100%;\n      border: 0;\n      border-radius: 0; }\n    .modal-fullscreen-xl-down .modal-header {\n      border-radius: 0; }\n    .modal-fullscreen-xl-down .modal-body {\n      overflow-y: auto; }\n    .modal-fullscreen-xl-down .modal-footer {\n      border-radius: 0; } }\n\n@media (max-width: 1399.98px) {\n  .modal-fullscreen-xxl-down {\n    width: 100vw;\n    max-width: none;\n    height: 100%;\n    margin: 0; }\n    .modal-fullscreen-xxl-down .modal-content {\n      height: 100%;\n      border: 0;\n      border-radius: 0; }\n    .modal-fullscreen-xxl-down .modal-header {\n      border-radius: 0; }\n    .modal-fullscreen-xxl-down .modal-body {\n      overflow-y: auto; }\n    .modal-fullscreen-xxl-down .modal-footer {\n      border-radius: 0; } }\n\n.tooltip {\n  position: absolute;\n  z-index: 1070;\n  display: block;\n  margin: 2rem;\n  font-family: var(--bs-font-sans-serif);\n  font-style: normal;\n  font-weight: 400;\n  line-height: 1.5;\n  text-align: left;\n  text-align: start;\n  text-decoration: none;\n  text-shadow: none;\n  text-transform: none;\n  letter-spacing: normal;\n  word-break: normal;\n  word-spacing: normal;\n  white-space: normal;\n  line-break: auto;\n  font-size: 0.875rem;\n  word-wrap: break-word;\n  opacity: 0; }\n  .tooltip.show {\n    opacity: 0.99; }\n  .tooltip .tooltip-arrow {\n    position: absolute;\n    display: block;\n    width: 0.8rem;\n    height: 0.4rem; }\n    .tooltip .tooltip-arrow::before {\n      position: absolute;\n      content: \"\";\n      border-color: transparent;\n      border-style: solid; }\n\n.bs-tooltip-top, .bs-tooltip-auto[data-popper-placement^=\"top\"] {\n  padding: 0.4rem 0; }\n  .bs-tooltip-top .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=\"top\"] .tooltip-arrow {\n    bottom: 0; }\n    .bs-tooltip-top .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=\"top\"] .tooltip-arrow::before {\n      top: -1px;\n      border-width: 0.4rem 0.4rem 0;\n      border-top-color: #1F2937; }\n\n.bs-tooltip-end, .bs-tooltip-auto[data-popper-placement^=\"right\"] {\n  padding: 0 0.4rem; }\n  .bs-tooltip-end .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=\"right\"] .tooltip-arrow {\n    left: 0;\n    width: 0.4rem;\n    height: 0.8rem; }\n    .bs-tooltip-end .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=\"right\"] .tooltip-arrow::before {\n      right: -1px;\n      border-width: 0.4rem 0.4rem 0.4rem 0;\n      border-right-color: #1F2937; }\n\n.bs-tooltip-bottom, .bs-tooltip-auto[data-popper-placement^=\"bottom\"] {\n  padding: 0.4rem 0; }\n  .bs-tooltip-bottom .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=\"bottom\"] .tooltip-arrow {\n    top: 0; }\n    .bs-tooltip-bottom .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=\"bottom\"] .tooltip-arrow::before {\n      bottom: -1px;\n      border-width: 0 0.4rem 0.4rem;\n      border-bottom-color: #1F2937; }\n\n.bs-tooltip-start, .bs-tooltip-auto[data-popper-placement^=\"left\"] {\n  padding: 0 0.4rem; }\n  .bs-tooltip-start .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=\"left\"] .tooltip-arrow {\n    right: 0;\n    width: 0.4rem;\n    height: 0.8rem; }\n    .bs-tooltip-start .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=\"left\"] .tooltip-arrow::before {\n      left: -1px;\n      border-width: 0.4rem 0 0.4rem 0.4rem;\n      border-left-color: #1F2937; }\n\n.tooltip-inner {\n  max-width: 200px;\n  padding: 0.5rem 0.55rem;\n  color: #ffffff;\n  text-align: center;\n  background-color: #1F2937;\n  border-radius: 0.5rem; }\n\n.popover {\n  position: absolute;\n  top: 0;\n  left: 0 /* rtl:ignore */;\n  z-index: 1060;\n  display: block;\n  max-width: 276px;\n  font-family: var(--bs-font-sans-serif);\n  font-style: normal;\n  font-weight: 400;\n  line-height: 1.5;\n  text-align: left;\n  text-align: start;\n  text-decoration: none;\n  text-shadow: none;\n  text-transform: none;\n  letter-spacing: normal;\n  word-break: normal;\n  word-spacing: normal;\n  white-space: normal;\n  line-break: auto;\n  font-size: 0.875rem;\n  word-wrap: break-word;\n  background-color: #1F2937;\n  background-clip: padding-box;\n  border: 0.0625rem solid rgba(17, 24, 39, 0.2);\n  border-radius: 1rem;\n  box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px 0 rgba(0, 0, 0, 0.06); }\n  .popover .popover-arrow {\n    position: absolute;\n    display: block;\n    width: 1rem;\n    height: 0.5rem; }\n    .popover .popover-arrow::before, .popover .popover-arrow::after {\n      position: absolute;\n      display: block;\n      content: \"\";\n      border-color: transparent;\n      border-style: solid; }\n\n.bs-popover-top > .popover-arrow, .bs-popover-auto[data-popper-placement^=\"top\"] > .popover-arrow {\n  bottom: -0.5625rem; }\n  .bs-popover-top > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=\"top\"] > .popover-arrow::before {\n    bottom: 0;\n    border-width: 0.5rem 0.5rem 0;\n    border-top-color: rgba(17, 24, 39, 0.25); }\n  .bs-popover-top > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=\"top\"] > .popover-arrow::after {\n    bottom: 0.0625rem;\n    border-width: 0.5rem 0.5rem 0;\n    border-top-color: #1F2937; }\n\n.bs-popover-end > .popover-arrow, .bs-popover-auto[data-popper-placement^=\"right\"] > .popover-arrow {\n  left: -0.5625rem;\n  width: 0.5rem;\n  height: 1rem; }\n  .bs-popover-end > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=\"right\"] > .popover-arrow::before {\n    left: 0;\n    border-width: 0.5rem 0.5rem 0.5rem 0;\n    border-right-color: rgba(17, 24, 39, 0.25); }\n  .bs-popover-end > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=\"right\"] > .popover-arrow::after {\n    left: 0.0625rem;\n    border-width: 0.5rem 0.5rem 0.5rem 0;\n    border-right-color: #1F2937; }\n\n.bs-popover-bottom > .popover-arrow, .bs-popover-auto[data-popper-placement^=\"bottom\"] > .popover-arrow {\n  top: -0.5625rem; }\n  .bs-popover-bottom > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=\"bottom\"] > .popover-arrow::before {\n    top: 0;\n    border-width: 0 0.5rem 0.5rem 0.5rem;\n    border-bottom-color: rgba(17, 24, 39, 0.25); }\n  .bs-popover-bottom > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=\"bottom\"] > .popover-arrow::after {\n    top: 0.0625rem;\n    border-width: 0 0.5rem 0.5rem 0.5rem;\n    border-bottom-color: #1F2937; }\n\n.bs-popover-bottom .popover-header::before, .bs-popover-auto[data-popper-placement^=\"bottom\"] .popover-header::before {\n  position: absolute;\n  top: 0;\n  left: 50%;\n  display: block;\n  width: 1rem;\n  margin-left: -0.5rem;\n  content: \"\";\n  border-bottom: 0.0625rem solid #19222d; }\n\n.bs-popover-start > .popover-arrow, .bs-popover-auto[data-popper-placement^=\"left\"] > .popover-arrow {\n  right: -0.5625rem;\n  width: 0.5rem;\n  height: 1rem; }\n  .bs-popover-start > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=\"left\"] > .popover-arrow::before {\n    right: 0;\n    border-width: 0.5rem 0 0.5rem 0.5rem;\n    border-left-color: rgba(17, 24, 39, 0.25); }\n  .bs-popover-start > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=\"left\"] > .popover-arrow::after {\n    right: 0.0625rem;\n    border-width: 0.5rem 0 0.5rem 0.5rem;\n    border-left-color: #1F2937; }\n\n.popover-header {\n  padding: 0.5rem 1rem;\n  margin-bottom: 0;\n  font-size: 1rem;\n  color: #1F2937;\n  background-color: #19222d;\n  border-bottom: 0.0625rem solid rgba(17, 24, 39, 0.2);\n  border-top-left-radius: 0.9375rem;\n  border-top-right-radius: 0.9375rem; }\n  .popover-header:empty {\n    display: none; }\n\n.popover-body {\n  padding: 1rem 1rem;\n  color: #ffffff; }\n\n.carousel {\n  position: relative; }\n\n.carousel.pointer-event {\n  touch-action: pan-y; }\n\n.carousel-inner {\n  position: relative;\n  width: 100%;\n  overflow: hidden; }\n  .carousel-inner::after {\n    display: block;\n    clear: both;\n    content: \"\"; }\n\n.carousel-item {\n  position: relative;\n  display: none;\n  float: left;\n  width: 100%;\n  margin-right: -100%;\n  -webkit-backface-visibility: hidden;\n          backface-visibility: hidden;\n  transition: transform 0.6s ease-in-out; }\n  @media (prefers-reduced-motion: reduce) {\n    .carousel-item {\n      transition: none; } }\n\n.carousel-item.active,\n.carousel-item-next,\n.carousel-item-prev {\n  display: block; }\n\n/* rtl:begin:ignore */\n.carousel-item-next:not(.carousel-item-start),\n.active.carousel-item-end {\n  transform: translateX(100%); }\n\n.carousel-item-prev:not(.carousel-item-end),\n.active.carousel-item-start {\n  transform: translateX(-100%); }\n\n/* rtl:end:ignore */\n.carousel-fade .carousel-item {\n  opacity: 0;\n  transition-property: opacity;\n  transform: none; }\n\n.carousel-fade .carousel-item.active,\n.carousel-fade .carousel-item-next.carousel-item-start,\n.carousel-fade .carousel-item-prev.carousel-item-end {\n  z-index: 1;\n  opacity: 1; }\n\n.carousel-fade .active.carousel-item-start,\n.carousel-fade .active.carousel-item-end {\n  z-index: 0;\n  opacity: 0;\n  transition: opacity 0s 0.6s; }\n  @media (prefers-reduced-motion: reduce) {\n    .carousel-fade .active.carousel-item-start,\n    .carousel-fade .active.carousel-item-end {\n      transition: none; } }\n\n.carousel-control-prev,\n.carousel-control-next {\n  position: absolute;\n  top: 0;\n  bottom: 0;\n  z-index: 1;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  width: 15%;\n  padding: 0;\n  color: #ffffff;\n  text-align: center;\n  background: none;\n  border: 0;\n  opacity: 0.5;\n  transition: opacity 0.15s ease; }\n  @media (prefers-reduced-motion: reduce) {\n    .carousel-control-prev,\n    .carousel-control-next {\n      transition: none; } }\n  .carousel-control-prev:hover, .carousel-control-prev:focus,\n  .carousel-control-next:hover,\n  .carousel-control-next:focus {\n    color: #ffffff;\n    text-decoration: none;\n    outline: 0;\n    opacity: 0.9; }\n\n.carousel-control-prev {\n  left: 0; }\n\n.carousel-control-next {\n  right: 0; }\n\n.carousel-control-prev-icon,\n.carousel-control-next-icon {\n  display: inline-block;\n  width: 20px;\n  height: 20px;\n  background-repeat: no-repeat;\n  background-position: 50%;\n  background-size: 100% 100%; }\n\n/* rtl:options: {\n  \"autoRename\": true,\n  \"stringMap\":[ {\n    \"name\"    : \"prev-next\",\n    \"search\"  : \"prev\",\n    \"replace\" : \"next\"\n  } ]\n} */\n.carousel-control-prev-icon {\n  background-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23ffffff' 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\"); }\n\n.carousel-control-next-icon {\n  background-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23ffffff' 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\"); }\n\n.carousel-indicators {\n  position: absolute;\n  right: 0;\n  bottom: 0;\n  left: 0;\n  z-index: 2;\n  display: flex;\n  justify-content: center;\n  padding: 0;\n  margin-right: 15%;\n  margin-bottom: 1rem;\n  margin-left: 15%;\n  list-style: none; }\n  .carousel-indicators [data-bs-target] {\n    box-sizing: content-box;\n    flex: 0 1 auto;\n    width: 30px;\n    height: 3px;\n    padding: 0;\n    margin-right: 3px;\n    margin-left: 3px;\n    text-indent: -999px;\n    cursor: pointer;\n    background-color: #ffffff;\n    background-clip: padding-box;\n    border: 0;\n    border-top: 10px solid transparent;\n    border-bottom: 10px solid transparent;\n    opacity: 0.5;\n    transition: opacity 0.6s ease; }\n    @media (prefers-reduced-motion: reduce) {\n      .carousel-indicators [data-bs-target] {\n        transition: none; } }\n  .carousel-indicators .active {\n    opacity: 1; }\n\n.carousel-caption {\n  position: absolute;\n  right: 15%;\n  bottom: 1.25rem;\n  left: 15%;\n  padding-top: 1.25rem;\n  padding-bottom: 1.25rem;\n  color: #ffffff;\n  text-align: center; }\n\n.carousel-dark .carousel-control-prev-icon,\n.carousel-dark .carousel-control-next-icon {\n  filter: invert(1) grayscale(100); }\n\n.carousel-dark .carousel-indicators [data-bs-target] {\n  background-color: #111827; }\n\n.carousel-dark .carousel-caption {\n  color: #111827; }\n\n@keyframes spinner-border {\n  to {\n    transform: rotate(360deg) /* rtl:ignore */; } }\n\n.spinner-border {\n  display: inline-block;\n  width: 2rem;\n  height: 2rem;\n  vertical-align: -0.125em;\n  border: 0.25em solid currentColor;\n  border-right-color: transparent;\n  border-radius: 50%;\n  animation: 0.75s linear infinite spinner-border; }\n\n.spinner-border-sm {\n  width: 1.2rem;\n  height: 1.2rem;\n  border-width: 0.2em; }\n\n@keyframes spinner-grow {\n  0% {\n    transform: scale(0); }\n  50% {\n    opacity: 1;\n    transform: none; } }\n\n.spinner-grow {\n  display: inline-block;\n  width: 2rem;\n  height: 2rem;\n  vertical-align: -0.125em;\n  background-color: currentColor;\n  border-radius: 50%;\n  opacity: 0;\n  animation: 0.75s linear infinite spinner-grow; }\n\n.spinner-grow-sm {\n  width: 1.2rem;\n  height: 1.2rem; }\n\n@media (prefers-reduced-motion: reduce) {\n  .spinner-border,\n  .spinner-grow {\n    animation-duration: 1.5s; } }\n\n.clearfix::after {\n  display: block;\n  clear: both;\n  content: \"\"; }\n\n.link-primary {\n  color: #1F2937; }\n  .link-primary:hover, .link-primary:focus {\n    color: #19212c; }\n\n.link-secondary {\n  color: #f0bc74; }\n  .link-secondary:hover, .link-secondary:focus {\n    color: #f3c990; }\n\n.link-tertiary {\n  color: #31316A; }\n  .link-tertiary:hover, .link-tertiary:focus {\n    color: #272755; }\n\n.link-success {\n  color: #10B981; }\n  .link-success:hover, .link-success:focus {\n    color: #40c79a; }\n\n.link-info {\n  color: #2361ce; }\n  .link-info:hover, .link-info:focus {\n    color: #1c4ea5; }\n\n.link-warning {\n  color: #f3c78e; }\n  .link-warning:hover, .link-warning:focus {\n    color: #f5d2a5; }\n\n.link-danger {\n  color: #E11D48; }\n  .link-danger:hover, .link-danger:focus {\n    color: #b4173a; }\n\n.link-white {\n  color: #ffffff; }\n  .link-white:hover, .link-white:focus {\n    color: white; }\n\n.link-indigo {\n  color: #4F46E5; }\n  .link-indigo:hover, .link-indigo:focus {\n    color: #3f38b7; }\n\n.link-purple {\n  color: #7C3AED; }\n  .link-purple:hover, .link-purple:focus {\n    color: #632ebe; }\n\n.link-yellow-100 {\n  color: #ffeed6; }\n  .link-yellow-100:hover, .link-yellow-100:focus {\n    color: #fff1de; }\n\n.link-yellow-200 {\n  color: #f5dbb8; }\n  .link-yellow-200:hover, .link-yellow-200:focus {\n    color: #f7e2c6; }\n\n.link-gray-50 {\n  color: #F9FAFB; }\n  .link-gray-50:hover, .link-gray-50:focus {\n    color: #fafbfc; }\n\n.link-gray-100 {\n  color: #F2F4F6; }\n  .link-gray-100:hover, .link-gray-100:focus {\n    color: #f5f6f8; }\n\n.link-gray-200 {\n  color: #E5E7EB; }\n  .link-gray-200:hover, .link-gray-200:focus {\n    color: #eaecef; }\n\n.link-gray-300 {\n  color: #D1D5DB; }\n  .link-gray-300:hover, .link-gray-300:focus {\n    color: #dadde2; }\n\n.link-gray-400 {\n  color: #9CA3AF; }\n  .link-gray-400:hover, .link-gray-400:focus {\n    color: #b0b5bf; }\n\n.link-gray-500 {\n  color: #6B7280; }\n  .link-gray-500:hover, .link-gray-500:focus {\n    color: #565b66; }\n\n.link-gray-600 {\n  color: #4B5563; }\n  .link-gray-600:hover, .link-gray-600:focus {\n    color: #3c444f; }\n\n.link-gray-700 {\n  color: #374151; }\n  .link-gray-700:hover, .link-gray-700:focus {\n    color: #2c3441; }\n\n.link-gray-800 {\n  color: #1F2937; }\n  .link-gray-800:hover, .link-gray-800:focus {\n    color: #19212c; }\n\n.link-gray-900 {\n  color: #111827; }\n  .link-gray-900:hover, .link-gray-900:focus {\n    color: #0e131f; }\n\n.ratio {\n  position: relative;\n  width: 100%; }\n  .ratio::before {\n    display: block;\n    padding-top: var(--bs-aspect-ratio);\n    content: \"\"; }\n  .ratio > * {\n    position: absolute;\n    top: 0;\n    left: 0;\n    width: 100%;\n    height: 100%; }\n\n.ratio-1x1 {\n  --bs-aspect-ratio: 100%; }\n\n.ratio-4x3 {\n  --bs-aspect-ratio: calc(3 / 4 * 100%); }\n\n.ratio-16x9 {\n  --bs-aspect-ratio: calc(9 / 16 * 100%); }\n\n.ratio-21x9 {\n  --bs-aspect-ratio: calc(9 / 21 * 100%); }\n\n.fixed-top {\n  position: fixed;\n  top: 0;\n  right: 0;\n  left: 0;\n  z-index: 1030; }\n\n.fixed-bottom {\n  position: fixed;\n  right: 0;\n  bottom: 0;\n  left: 0;\n  z-index: 1030; }\n\n.sticky-top {\n  position: sticky;\n  top: 0;\n  z-index: 1020; }\n\n@media (min-width: 576px) {\n  .sticky-sm-top {\n    position: sticky;\n    top: 0;\n    z-index: 1020; } }\n\n@media (min-width: 768px) {\n  .sticky-md-top {\n    position: sticky;\n    top: 0;\n    z-index: 1020; } }\n\n@media (min-width: 992px) {\n  .sticky-lg-top {\n    position: sticky;\n    top: 0;\n    z-index: 1020; } }\n\n@media (min-width: 1200px) {\n  .sticky-xl-top {\n    position: sticky;\n    top: 0;\n    z-index: 1020; } }\n\n@media (min-width: 1400px) {\n  .sticky-xxl-top {\n    position: sticky;\n    top: 0;\n    z-index: 1020; } }\n\n.hstack {\n  display: flex;\n  flex-direction: row;\n  align-items: center;\n  align-self: stretch; }\n\n.vstack {\n  display: flex;\n  flex: 1 1 auto;\n  flex-direction: column;\n  align-self: stretch; }\n\n.visually-hidden,\n.visually-hidden-focusable:not(:focus):not(:focus-within) {\n  position: absolute !important;\n  width: 1px !important;\n  height: 1px !important;\n  padding: 0 !important;\n  margin: -1px !important;\n  overflow: hidden !important;\n  clip: rect(0, 0, 0, 0) !important;\n  white-space: nowrap !important;\n  border: 0 !important; }\n\n.stretched-link::after {\n  position: absolute;\n  top: 0;\n  right: 0;\n  bottom: 0;\n  left: 0;\n  z-index: 1;\n  content: \"\"; }\n\n.text-truncate {\n  overflow: hidden;\n  text-overflow: ellipsis;\n  white-space: nowrap; }\n\n.vr {\n  display: inline-block;\n  align-self: stretch;\n  width: 1px;\n  min-height: 1em;\n  background-color: currentColor;\n  opacity: 0.25; }\n\n.align-baseline {\n  vertical-align: baseline !important; }\n\n.align-top {\n  vertical-align: top !important; }\n\n.align-middle {\n  vertical-align: middle !important; }\n\n.align-bottom {\n  vertical-align: bottom !important; }\n\n.align-text-bottom {\n  vertical-align: text-bottom !important; }\n\n.align-text-top {\n  vertical-align: text-top !important; }\n\n.float-start {\n  float: left !important; }\n\n.float-end {\n  float: right !important; }\n\n.float-none {\n  float: none !important; }\n\n.o-0 {\n  opacity: 0 !important; }\n\n.o-25 {\n  opacity: 0.25 !important; }\n\n.o-50 {\n  opacity: 0.5 !important; }\n\n.o-75 {\n  opacity: 0.75 !important; }\n\n.o-100 {\n  opacity: 1 !important; }\n\n.overflow-auto {\n  overflow: auto !important; }\n\n.overflow-hidden {\n  overflow: hidden !important; }\n\n.overflow-visible {\n  overflow: visible !important; }\n\n.overflow-scroll {\n  overflow: scroll !important; }\n\n.d-inline {\n  display: inline !important; }\n\n.d-inline-block {\n  display: inline-block !important; }\n\n.d-block {\n  display: block !important; }\n\n.d-grid {\n  display: grid !important; }\n\n.d-table {\n  display: table !important; }\n\n.d-table-row {\n  display: table-row !important; }\n\n.d-table-cell {\n  display: table-cell !important; }\n\n.d-flex {\n  display: flex !important; }\n\n.d-inline-flex {\n  display: inline-flex !important; }\n\n.d-none {\n  display: none !important; }\n\n.shadow {\n  box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px 0 rgba(0, 0, 0, 0.06) !important; }\n\n.shadow-sm {\n  box-shadow: 0 2px 5px rgba(140, 152, 164, 0.2) !important; }\n\n.shadow-lg {\n  box-shadow: 0 1rem 3rem rgba(17, 24, 39, 0.175) !important; }\n\n.shadow-none {\n  box-shadow: none !important; }\n\n.position-static {\n  position: static !important; }\n\n.position-relative {\n  position: relative !important; }\n\n.position-absolute {\n  position: absolute !important; }\n\n.position-fixed {\n  position: fixed !important; }\n\n.position-sticky {\n  position: sticky !important; }\n\n.top-0 {\n  top: 0 !important; }\n\n.top-50 {\n  top: 50% !important; }\n\n.top-100 {\n  top: 100% !important; }\n\n.bottom-0 {\n  bottom: 0 !important; }\n\n.bottom-50 {\n  bottom: 50% !important; }\n\n.bottom-100 {\n  bottom: 100% !important; }\n\n.start-0 {\n  left: 0 !important; }\n\n.start-50 {\n  left: 50% !important; }\n\n.start-100 {\n  left: 100% !important; }\n\n.end-0 {\n  right: 0 !important; }\n\n.end-50 {\n  right: 50% !important; }\n\n.end-100 {\n  right: 100% !important; }\n\n.translate-middle {\n  transform: translate(-50%, -50%) !important; }\n\n.translate-middle-x {\n  transform: translateX(-50%) !important; }\n\n.translate-middle-y {\n  transform: translateY(-50%) !important; }\n\n.border {\n  border: 0.0625rem solid #E5E7EB !important; }\n\n.border-0 {\n  border: 0 !important; }\n\n.border-top {\n  border-top: 0.0625rem solid #E5E7EB !important; }\n\n.border-top-0 {\n  border-top: 0 !important; }\n\n.border-end {\n  border-right: 0.0625rem solid #E5E7EB !important; }\n\n.border-end-0 {\n  border-right: 0 !important; }\n\n.border-bottom {\n  border-bottom: 0.0625rem solid #E5E7EB !important; }\n\n.border-bottom-0 {\n  border-bottom: 0 !important; }\n\n.border-start {\n  border-left: 0.0625rem solid #E5E7EB !important; }\n\n.border-start-0 {\n  border-left: 0 !important; }\n\n.border-primary {\n  border-color: #1F2937 !important; }\n\n.border-secondary {\n  border-color: #f0bc74 !important; }\n\n.border-tertiary {\n  border-color: #31316A !important; }\n\n.border-success {\n  border-color: #10B981 !important; }\n\n.border-info {\n  border-color: #2361ce !important; }\n\n.border-warning {\n  border-color: #f3c78e !important; }\n\n.border-danger {\n  border-color: #E11D48 !important; }\n\n.border-white {\n  border-color: #ffffff !important; }\n\n.border-indigo {\n  border-color: #4F46E5 !important; }\n\n.border-purple {\n  border-color: #7C3AED !important; }\n\n.border-yellow-100 {\n  border-color: #ffeed6 !important; }\n\n.border-yellow-200 {\n  border-color: #f5dbb8 !important; }\n\n.border-gray-50 {\n  border-color: #F9FAFB !important; }\n\n.border-gray-100 {\n  border-color: #F2F4F6 !important; }\n\n.border-gray-200 {\n  border-color: #E5E7EB !important; }\n\n.border-gray-300 {\n  border-color: #D1D5DB !important; }\n\n.border-gray-400 {\n  border-color: #9CA3AF !important; }\n\n.border-gray-500 {\n  border-color: #6B7280 !important; }\n\n.border-gray-600 {\n  border-color: #4B5563 !important; }\n\n.border-gray-700 {\n  border-color: #374151 !important; }\n\n.border-gray-800 {\n  border-color: #1F2937 !important; }\n\n.border-gray-900 {\n  border-color: #111827 !important; }\n\n.border-1 {\n  border-width: 1px !important; }\n\n.border-2 {\n  border-width: 2px !important; }\n\n.border-3 {\n  border-width: 3px !important; }\n\n.border-4 {\n  border-width: 4px !important; }\n\n.border-5 {\n  border-width: 5px !important; }\n\n.w-25 {\n  width: 25% !important; }\n\n.w-50 {\n  width: 50% !important; }\n\n.w-75 {\n  width: 75% !important; }\n\n.w-100 {\n  width: 100% !important; }\n\n.w-auto {\n  width: auto !important; }\n\n.fmxw-100 {\n  max-width: 100px !important; }\n\n.fmxw-200 {\n  max-width: 200px !important; }\n\n.fmxw-300 {\n  max-width: 300px !important; }\n\n.fmxw-400 {\n  max-width: 400px !important; }\n\n.fmxw-500 {\n  max-width: 500px !important; }\n\n.fmxw-999 {\n  max-width: 999px !important; }\n\n.vw-100 {\n  width: 100vw !important; }\n\n.min-vw-100 {\n  min-width: 100vw !important; }\n\n.h-25 {\n  height: 25% !important; }\n\n.h-50 {\n  height: 50% !important; }\n\n.h-75 {\n  height: 75% !important; }\n\n.h-100 {\n  height: 100% !important; }\n\n.h-auto {\n  height: auto !important; }\n\n.mh-100 {\n  max-height: 100% !important; }\n\n.vh-100 {\n  height: 100vh !important; }\n\n.min-vh-100 {\n  min-height: 100vh !important; }\n\n.flex-fill {\n  flex: 1 1 auto !important; }\n\n.flex-row {\n  flex-direction: row !important; }\n\n.flex-column {\n  flex-direction: column !important; }\n\n.flex-row-reverse {\n  flex-direction: row-reverse !important; }\n\n.flex-column-reverse {\n  flex-direction: column-reverse !important; }\n\n.flex-grow-0 {\n  flex-grow: 0 !important; }\n\n.flex-grow-1 {\n  flex-grow: 1 !important; }\n\n.flex-shrink-0 {\n  flex-shrink: 0 !important; }\n\n.flex-shrink-1 {\n  flex-shrink: 1 !important; }\n\n.flex-wrap {\n  flex-wrap: wrap !important; }\n\n.flex-nowrap {\n  flex-wrap: nowrap !important; }\n\n.flex-wrap-reverse {\n  flex-wrap: wrap-reverse !important; }\n\n.gap-0 {\n  gap: 0 !important; }\n\n.gap-1 {\n  gap: 0.25rem !important; }\n\n.gap-2 {\n  gap: 0.5rem !important; }\n\n.gap-3 {\n  gap: 1rem !important; }\n\n.gap-4 {\n  gap: 1.5rem !important; }\n\n.gap-5 {\n  gap: 3rem !important; }\n\n.gap-6 {\n  gap: 5rem !important; }\n\n.gap-7 {\n  gap: 8rem !important; }\n\n.gap-8 {\n  gap: 10rem !important; }\n\n.gap-9 {\n  gap: 11rem !important; }\n\n.gap-10 {\n  gap: 14rem !important; }\n\n.gap-11 {\n  gap: 16rem !important; }\n\n.gap-12 {\n  gap: 20rem !important; }\n\n.gap-sm {\n  gap: 1rem !important; }\n\n.gap-md {\n  gap: 2rem !important; }\n\n.gap-lg {\n  gap: 4rem !important; }\n\n.gap-xl {\n  gap: 8rem !important; }\n\n.justify-content-start {\n  justify-content: flex-start !important; }\n\n.justify-content-end {\n  justify-content: flex-end !important; }\n\n.justify-content-center {\n  justify-content: center !important; }\n\n.justify-content-between {\n  justify-content: space-between !important; }\n\n.justify-content-around {\n  justify-content: space-around !important; }\n\n.justify-content-evenly {\n  justify-content: space-evenly !important; }\n\n.align-items-start {\n  align-items: flex-start !important; }\n\n.align-items-end {\n  align-items: flex-end !important; }\n\n.align-items-center {\n  align-items: center !important; }\n\n.align-items-baseline {\n  align-items: baseline !important; }\n\n.align-items-stretch {\n  align-items: stretch !important; }\n\n.align-content-start {\n  align-content: flex-start !important; }\n\n.align-content-end {\n  align-content: flex-end !important; }\n\n.align-content-center {\n  align-content: center !important; }\n\n.align-content-between {\n  align-content: space-between !important; }\n\n.align-content-around {\n  align-content: space-around !important; }\n\n.align-content-stretch {\n  align-content: stretch !important; }\n\n.align-self-auto {\n  align-self: auto !important; }\n\n.align-self-start {\n  align-self: flex-start !important; }\n\n.align-self-end {\n  align-self: flex-end !important; }\n\n.align-self-center {\n  align-self: center !important; }\n\n.align-self-baseline {\n  align-self: baseline !important; }\n\n.align-self-stretch {\n  align-self: stretch !important; }\n\n.order-first {\n  order: -1 !important; }\n\n.order-0 {\n  order: 0 !important; }\n\n.order-1 {\n  order: 1 !important; }\n\n.order-2 {\n  order: 2 !important; }\n\n.order-3 {\n  order: 3 !important; }\n\n.order-4 {\n  order: 4 !important; }\n\n.order-5 {\n  order: 5 !important; }\n\n.order-last {\n  order: 6 !important; }\n\n.m-0 {\n  margin: 0 !important; }\n\n.m-1 {\n  margin: 0.25rem !important; }\n\n.m-2 {\n  margin: 0.5rem !important; }\n\n.m-3 {\n  margin: 1rem !important; }\n\n.m-4 {\n  margin: 1.5rem !important; }\n\n.m-5 {\n  margin: 3rem !important; }\n\n.m-6 {\n  margin: 5rem !important; }\n\n.m-7 {\n  margin: 8rem !important; }\n\n.m-8 {\n  margin: 10rem !important; }\n\n.m-9 {\n  margin: 11rem !important; }\n\n.m-10 {\n  margin: 14rem !important; }\n\n.m-11 {\n  margin: 16rem !important; }\n\n.m-12 {\n  margin: 20rem !important; }\n\n.m-sm {\n  margin: 1rem !important; }\n\n.m-md {\n  margin: 2rem !important; }\n\n.m-lg {\n  margin: 4rem !important; }\n\n.m-xl {\n  margin: 8rem !important; }\n\n.m-auto {\n  margin: auto !important; }\n\n.mx-0 {\n  margin-right: 0 !important;\n  margin-left: 0 !important; }\n\n.mx-1 {\n  margin-right: 0.25rem !important;\n  margin-left: 0.25rem !important; }\n\n.mx-2 {\n  margin-right: 0.5rem !important;\n  margin-left: 0.5rem !important; }\n\n.mx-3 {\n  margin-right: 1rem !important;\n  margin-left: 1rem !important; }\n\n.mx-4 {\n  margin-right: 1.5rem !important;\n  margin-left: 1.5rem !important; }\n\n.mx-5 {\n  margin-right: 3rem !important;\n  margin-left: 3rem !important; }\n\n.mx-6 {\n  margin-right: 5rem !important;\n  margin-left: 5rem !important; }\n\n.mx-7 {\n  margin-right: 8rem !important;\n  margin-left: 8rem !important; }\n\n.mx-8 {\n  margin-right: 10rem !important;\n  margin-left: 10rem !important; }\n\n.mx-9 {\n  margin-right: 11rem !important;\n  margin-left: 11rem !important; }\n\n.mx-10 {\n  margin-right: 14rem !important;\n  margin-left: 14rem !important; }\n\n.mx-11 {\n  margin-right: 16rem !important;\n  margin-left: 16rem !important; }\n\n.mx-12 {\n  margin-right: 20rem !important;\n  margin-left: 20rem !important; }\n\n.mx-sm {\n  margin-right: 1rem !important;\n  margin-left: 1rem !important; }\n\n.mx-md {\n  margin-right: 2rem !important;\n  margin-left: 2rem !important; }\n\n.mx-lg {\n  margin-right: 4rem !important;\n  margin-left: 4rem !important; }\n\n.mx-xl {\n  margin-right: 8rem !important;\n  margin-left: 8rem !important; }\n\n.mx-auto {\n  margin-right: auto !important;\n  margin-left: auto !important; }\n\n.my-0 {\n  margin-top: 0 !important;\n  margin-bottom: 0 !important; }\n\n.my-1 {\n  margin-top: 0.25rem !important;\n  margin-bottom: 0.25rem !important; }\n\n.my-2 {\n  margin-top: 0.5rem !important;\n  margin-bottom: 0.5rem !important; }\n\n.my-3 {\n  margin-top: 1rem !important;\n  margin-bottom: 1rem !important; }\n\n.my-4 {\n  margin-top: 1.5rem !important;\n  margin-bottom: 1.5rem !important; }\n\n.my-5 {\n  margin-top: 3rem !important;\n  margin-bottom: 3rem !important; }\n\n.my-6 {\n  margin-top: 5rem !important;\n  margin-bottom: 5rem !important; }\n\n.my-7 {\n  margin-top: 8rem !important;\n  margin-bottom: 8rem !important; }\n\n.my-8 {\n  margin-top: 10rem !important;\n  margin-bottom: 10rem !important; }\n\n.my-9 {\n  margin-top: 11rem !important;\n  margin-bottom: 11rem !important; }\n\n.my-10 {\n  margin-top: 14rem !important;\n  margin-bottom: 14rem !important; }\n\n.my-11 {\n  margin-top: 16rem !important;\n  margin-bottom: 16rem !important; }\n\n.my-12 {\n  margin-top: 20rem !important;\n  margin-bottom: 20rem !important; }\n\n.my-sm {\n  margin-top: 1rem !important;\n  margin-bottom: 1rem !important; }\n\n.my-md {\n  margin-top: 2rem !important;\n  margin-bottom: 2rem !important; }\n\n.my-lg {\n  margin-top: 4rem !important;\n  margin-bottom: 4rem !important; }\n\n.my-xl {\n  margin-top: 8rem !important;\n  margin-bottom: 8rem !important; }\n\n.my-auto {\n  margin-top: auto !important;\n  margin-bottom: auto !important; }\n\n.mt-0 {\n  margin-top: 0 !important; }\n\n.mt-1 {\n  margin-top: 0.25rem !important; }\n\n.mt-2 {\n  margin-top: 0.5rem !important; }\n\n.mt-3 {\n  margin-top: 1rem !important; }\n\n.mt-4 {\n  margin-top: 1.5rem !important; }\n\n.mt-5 {\n  margin-top: 3rem !important; }\n\n.mt-6 {\n  margin-top: 5rem !important; }\n\n.mt-7 {\n  margin-top: 8rem !important; }\n\n.mt-8 {\n  margin-top: 10rem !important; }\n\n.mt-9 {\n  margin-top: 11rem !important; }\n\n.mt-10 {\n  margin-top: 14rem !important; }\n\n.mt-11 {\n  margin-top: 16rem !important; }\n\n.mt-12 {\n  margin-top: 20rem !important; }\n\n.mt-sm {\n  margin-top: 1rem !important; }\n\n.mt-md {\n  margin-top: 2rem !important; }\n\n.mt-lg {\n  margin-top: 4rem !important; }\n\n.mt-xl {\n  margin-top: 8rem !important; }\n\n.mt-auto {\n  margin-top: auto !important; }\n\n.me-0 {\n  margin-right: 0 !important; }\n\n.me-1 {\n  margin-right: 0.25rem !important; }\n\n.me-2 {\n  margin-right: 0.5rem !important; }\n\n.me-3 {\n  margin-right: 1rem !important; }\n\n.me-4 {\n  margin-right: 1.5rem !important; }\n\n.me-5 {\n  margin-right: 3rem !important; }\n\n.me-6 {\n  margin-right: 5rem !important; }\n\n.me-7 {\n  margin-right: 8rem !important; }\n\n.me-8 {\n  margin-right: 10rem !important; }\n\n.me-9 {\n  margin-right: 11rem !important; }\n\n.me-10 {\n  margin-right: 14rem !important; }\n\n.me-11 {\n  margin-right: 16rem !important; }\n\n.me-12 {\n  margin-right: 20rem !important; }\n\n.me-sm {\n  margin-right: 1rem !important; }\n\n.me-md {\n  margin-right: 2rem !important; }\n\n.me-lg {\n  margin-right: 4rem !important; }\n\n.me-xl {\n  margin-right: 8rem !important; }\n\n.me-auto {\n  margin-right: auto !important; }\n\n.mb-0 {\n  margin-bottom: 0 !important; }\n\n.mb-1 {\n  margin-bottom: 0.25rem !important; }\n\n.mb-2 {\n  margin-bottom: 0.5rem !important; }\n\n.mb-3 {\n  margin-bottom: 1rem !important; }\n\n.mb-4 {\n  margin-bottom: 1.5rem !important; }\n\n.mb-5 {\n  margin-bottom: 3rem !important; }\n\n.mb-6 {\n  margin-bottom: 5rem !important; }\n\n.mb-7 {\n  margin-bottom: 8rem !important; }\n\n.mb-8 {\n  margin-bottom: 10rem !important; }\n\n.mb-9 {\n  margin-bottom: 11rem !important; }\n\n.mb-10 {\n  margin-bottom: 14rem !important; }\n\n.mb-11 {\n  margin-bottom: 16rem !important; }\n\n.mb-12 {\n  margin-bottom: 20rem !important; }\n\n.mb-sm {\n  margin-bottom: 1rem !important; }\n\n.mb-md {\n  margin-bottom: 2rem !important; }\n\n.mb-lg {\n  margin-bottom: 4rem !important; }\n\n.mb-xl {\n  margin-bottom: 8rem !important; }\n\n.mb-auto {\n  margin-bottom: auto !important; }\n\n.ms-0 {\n  margin-left: 0 !important; }\n\n.ms-1 {\n  margin-left: 0.25rem !important; }\n\n.ms-2 {\n  margin-left: 0.5rem !important; }\n\n.ms-3 {\n  margin-left: 1rem !important; }\n\n.ms-4 {\n  margin-left: 1.5rem !important; }\n\n.ms-5 {\n  margin-left: 3rem !important; }\n\n.ms-6 {\n  margin-left: 5rem !important; }\n\n.ms-7 {\n  margin-left: 8rem !important; }\n\n.ms-8 {\n  margin-left: 10rem !important; }\n\n.ms-9 {\n  margin-left: 11rem !important; }\n\n.ms-10 {\n  margin-left: 14rem !important; }\n\n.ms-11 {\n  margin-left: 16rem !important; }\n\n.ms-12 {\n  margin-left: 20rem !important; }\n\n.ms-sm {\n  margin-left: 1rem !important; }\n\n.ms-md {\n  margin-left: 2rem !important; }\n\n.ms-lg {\n  margin-left: 4rem !important; }\n\n.ms-xl {\n  margin-left: 8rem !important; }\n\n.ms-auto {\n  margin-left: auto !important; }\n\n.m-n1 {\n  margin: -0.25rem !important; }\n\n.m-n2 {\n  margin: -0.5rem !important; }\n\n.m-n3 {\n  margin: -1rem !important; }\n\n.m-n4 {\n  margin: -1.5rem !important; }\n\n.m-n5 {\n  margin: -3rem !important; }\n\n.m-n6 {\n  margin: -5rem !important; }\n\n.m-n7 {\n  margin: -8rem !important; }\n\n.m-n8 {\n  margin: -10rem !important; }\n\n.m-n9 {\n  margin: -11rem !important; }\n\n.m-n10 {\n  margin: -14rem !important; }\n\n.m-n11 {\n  margin: -16rem !important; }\n\n.m-n12 {\n  margin: -20rem !important; }\n\n.m-nsm {\n  margin: -1rem !important; }\n\n.m-nmd {\n  margin: -2rem !important; }\n\n.m-nlg {\n  margin: -4rem !important; }\n\n.m-nxl {\n  margin: -8rem !important; }\n\n.mx-n1 {\n  margin-right: -0.25rem !important;\n  margin-left: -0.25rem !important; }\n\n.mx-n2 {\n  margin-right: -0.5rem !important;\n  margin-left: -0.5rem !important; }\n\n.mx-n3 {\n  margin-right: -1rem !important;\n  margin-left: -1rem !important; }\n\n.mx-n4 {\n  margin-right: -1.5rem !important;\n  margin-left: -1.5rem !important; }\n\n.mx-n5 {\n  margin-right: -3rem !important;\n  margin-left: -3rem !important; }\n\n.mx-n6 {\n  margin-right: -5rem !important;\n  margin-left: -5rem !important; }\n\n.mx-n7 {\n  margin-right: -8rem !important;\n  margin-left: -8rem !important; }\n\n.mx-n8 {\n  margin-right: -10rem !important;\n  margin-left: -10rem !important; }\n\n.mx-n9 {\n  margin-right: -11rem !important;\n  margin-left: -11rem !important; }\n\n.mx-n10 {\n  margin-right: -14rem !important;\n  margin-left: -14rem !important; }\n\n.mx-n11 {\n  margin-right: -16rem !important;\n  margin-left: -16rem !important; }\n\n.mx-n12 {\n  margin-right: -20rem !important;\n  margin-left: -20rem !important; }\n\n.mx-nsm {\n  margin-right: -1rem !important;\n  margin-left: -1rem !important; }\n\n.mx-nmd {\n  margin-right: -2rem !important;\n  margin-left: -2rem !important; }\n\n.mx-nlg {\n  margin-right: -4rem !important;\n  margin-left: -4rem !important; }\n\n.mx-nxl {\n  margin-right: -8rem !important;\n  margin-left: -8rem !important; }\n\n.my-n1 {\n  margin-top: -0.25rem !important;\n  margin-bottom: -0.25rem !important; }\n\n.my-n2 {\n  margin-top: -0.5rem !important;\n  margin-bottom: -0.5rem !important; }\n\n.my-n3 {\n  margin-top: -1rem !important;\n  margin-bottom: -1rem !important; }\n\n.my-n4 {\n  margin-top: -1.5rem !important;\n  margin-bottom: -1.5rem !important; }\n\n.my-n5 {\n  margin-top: -3rem !important;\n  margin-bottom: -3rem !important; }\n\n.my-n6 {\n  margin-top: -5rem !important;\n  margin-bottom: -5rem !important; }\n\n.my-n7 {\n  margin-top: -8rem !important;\n  margin-bottom: -8rem !important; }\n\n.my-n8 {\n  margin-top: -10rem !important;\n  margin-bottom: -10rem !important; }\n\n.my-n9 {\n  margin-top: -11rem !important;\n  margin-bottom: -11rem !important; }\n\n.my-n10 {\n  margin-top: -14rem !important;\n  margin-bottom: -14rem !important; }\n\n.my-n11 {\n  margin-top: -16rem !important;\n  margin-bottom: -16rem !important; }\n\n.my-n12 {\n  margin-top: -20rem !important;\n  margin-bottom: -20rem !important; }\n\n.my-nsm {\n  margin-top: -1rem !important;\n  margin-bottom: -1rem !important; }\n\n.my-nmd {\n  margin-top: -2rem !important;\n  margin-bottom: -2rem !important; }\n\n.my-nlg {\n  margin-top: -4rem !important;\n  margin-bottom: -4rem !important; }\n\n.my-nxl {\n  margin-top: -8rem !important;\n  margin-bottom: -8rem !important; }\n\n.mt-n1 {\n  margin-top: -0.25rem !important; }\n\n.mt-n2 {\n  margin-top: -0.5rem !important; }\n\n.mt-n3 {\n  margin-top: -1rem !important; }\n\n.mt-n4 {\n  margin-top: -1.5rem !important; }\n\n.mt-n5 {\n  margin-top: -3rem !important; }\n\n.mt-n6 {\n  margin-top: -5rem !important; }\n\n.mt-n7 {\n  margin-top: -8rem !important; }\n\n.mt-n8 {\n  margin-top: -10rem !important; }\n\n.mt-n9 {\n  margin-top: -11rem !important; }\n\n.mt-n10 {\n  margin-top: -14rem !important; }\n\n.mt-n11 {\n  margin-top: -16rem !important; }\n\n.mt-n12 {\n  margin-top: -20rem !important; }\n\n.mt-nsm {\n  margin-top: -1rem !important; }\n\n.mt-nmd {\n  margin-top: -2rem !important; }\n\n.mt-nlg {\n  margin-top: -4rem !important; }\n\n.mt-nxl {\n  margin-top: -8rem !important; }\n\n.me-n1 {\n  margin-right: -0.25rem !important; }\n\n.me-n2 {\n  margin-right: -0.5rem !important; }\n\n.me-n3 {\n  margin-right: -1rem !important; }\n\n.me-n4 {\n  margin-right: -1.5rem !important; }\n\n.me-n5 {\n  margin-right: -3rem !important; }\n\n.me-n6 {\n  margin-right: -5rem !important; }\n\n.me-n7 {\n  margin-right: -8rem !important; }\n\n.me-n8 {\n  margin-right: -10rem !important; }\n\n.me-n9 {\n  margin-right: -11rem !important; }\n\n.me-n10 {\n  margin-right: -14rem !important; }\n\n.me-n11 {\n  margin-right: -16rem !important; }\n\n.me-n12 {\n  margin-right: -20rem !important; }\n\n.me-nsm {\n  margin-right: -1rem !important; }\n\n.me-nmd {\n  margin-right: -2rem !important; }\n\n.me-nlg {\n  margin-right: -4rem !important; }\n\n.me-nxl {\n  margin-right: -8rem !important; }\n\n.mb-n1 {\n  margin-bottom: -0.25rem !important; }\n\n.mb-n2 {\n  margin-bottom: -0.5rem !important; }\n\n.mb-n3 {\n  margin-bottom: -1rem !important; }\n\n.mb-n4 {\n  margin-bottom: -1.5rem !important; }\n\n.mb-n5 {\n  margin-bottom: -3rem !important; }\n\n.mb-n6 {\n  margin-bottom: -5rem !important; }\n\n.mb-n7 {\n  margin-bottom: -8rem !important; }\n\n.mb-n8 {\n  margin-bottom: -10rem !important; }\n\n.mb-n9 {\n  margin-bottom: -11rem !important; }\n\n.mb-n10 {\n  margin-bottom: -14rem !important; }\n\n.mb-n11 {\n  margin-bottom: -16rem !important; }\n\n.mb-n12 {\n  margin-bottom: -20rem !important; }\n\n.mb-nsm {\n  margin-bottom: -1rem !important; }\n\n.mb-nmd {\n  margin-bottom: -2rem !important; }\n\n.mb-nlg {\n  margin-bottom: -4rem !important; }\n\n.mb-nxl {\n  margin-bottom: -8rem !important; }\n\n.ms-n1 {\n  margin-left: -0.25rem !important; }\n\n.ms-n2 {\n  margin-left: -0.5rem !important; }\n\n.ms-n3 {\n  margin-left: -1rem !important; }\n\n.ms-n4 {\n  margin-left: -1.5rem !important; }\n\n.ms-n5 {\n  margin-left: -3rem !important; }\n\n.ms-n6 {\n  margin-left: -5rem !important; }\n\n.ms-n7 {\n  margin-left: -8rem !important; }\n\n.ms-n8 {\n  margin-left: -10rem !important; }\n\n.ms-n9 {\n  margin-left: -11rem !important; }\n\n.ms-n10 {\n  margin-left: -14rem !important; }\n\n.ms-n11 {\n  margin-left: -16rem !important; }\n\n.ms-n12 {\n  margin-left: -20rem !important; }\n\n.ms-nsm {\n  margin-left: -1rem !important; }\n\n.ms-nmd {\n  margin-left: -2rem !important; }\n\n.ms-nlg {\n  margin-left: -4rem !important; }\n\n.ms-nxl {\n  margin-left: -8rem !important; }\n\n.p-0 {\n  padding: 0 !important; }\n\n.p-1 {\n  padding: 0.25rem !important; }\n\n.p-2 {\n  padding: 0.5rem !important; }\n\n.p-3 {\n  padding: 1rem !important; }\n\n.p-4 {\n  padding: 1.5rem !important; }\n\n.p-5 {\n  padding: 3rem !important; }\n\n.p-6 {\n  padding: 5rem !important; }\n\n.p-7 {\n  padding: 8rem !important; }\n\n.p-8 {\n  padding: 10rem !important; }\n\n.p-9 {\n  padding: 11rem !important; }\n\n.p-10 {\n  padding: 14rem !important; }\n\n.p-11 {\n  padding: 16rem !important; }\n\n.p-12 {\n  padding: 20rem !important; }\n\n.p-sm {\n  padding: 1rem !important; }\n\n.p-md {\n  padding: 2rem !important; }\n\n.p-lg {\n  padding: 4rem !important; }\n\n.p-xl {\n  padding: 8rem !important; }\n\n.px-0 {\n  padding-right: 0 !important;\n  padding-left: 0 !important; }\n\n.px-1 {\n  padding-right: 0.25rem !important;\n  padding-left: 0.25rem !important; }\n\n.px-2 {\n  padding-right: 0.5rem !important;\n  padding-left: 0.5rem !important; }\n\n.px-3 {\n  padding-right: 1rem !important;\n  padding-left: 1rem !important; }\n\n.px-4 {\n  padding-right: 1.5rem !important;\n  padding-left: 1.5rem !important; }\n\n.px-5 {\n  padding-right: 3rem !important;\n  padding-left: 3rem !important; }\n\n.px-6 {\n  padding-right: 5rem !important;\n  padding-left: 5rem !important; }\n\n.px-7 {\n  padding-right: 8rem !important;\n  padding-left: 8rem !important; }\n\n.px-8 {\n  padding-right: 10rem !important;\n  padding-left: 10rem !important; }\n\n.px-9 {\n  padding-right: 11rem !important;\n  padding-left: 11rem !important; }\n\n.px-10 {\n  padding-right: 14rem !important;\n  padding-left: 14rem !important; }\n\n.px-11 {\n  padding-right: 16rem !important;\n  padding-left: 16rem !important; }\n\n.px-12 {\n  padding-right: 20rem !important;\n  padding-left: 20rem !important; }\n\n.px-sm {\n  padding-right: 1rem !important;\n  padding-left: 1rem !important; }\n\n.px-md {\n  padding-right: 2rem !important;\n  padding-left: 2rem !important; }\n\n.px-lg {\n  padding-right: 4rem !important;\n  padding-left: 4rem !important; }\n\n.px-xl {\n  padding-right: 8rem !important;\n  padding-left: 8rem !important; }\n\n.py-0 {\n  padding-top: 0 !important;\n  padding-bottom: 0 !important; }\n\n.py-1 {\n  padding-top: 0.25rem !important;\n  padding-bottom: 0.25rem !important; }\n\n.py-2 {\n  padding-top: 0.5rem !important;\n  padding-bottom: 0.5rem !important; }\n\n.py-3 {\n  padding-top: 1rem !important;\n  padding-bottom: 1rem !important; }\n\n.py-4 {\n  padding-top: 1.5rem !important;\n  padding-bottom: 1.5rem !important; }\n\n.py-5 {\n  padding-top: 3rem !important;\n  padding-bottom: 3rem !important; }\n\n.py-6 {\n  padding-top: 5rem !important;\n  padding-bottom: 5rem !important; }\n\n.py-7 {\n  padding-top: 8rem !important;\n  padding-bottom: 8rem !important; }\n\n.py-8 {\n  padding-top: 10rem !important;\n  padding-bottom: 10rem !important; }\n\n.py-9 {\n  padding-top: 11rem !important;\n  padding-bottom: 11rem !important; }\n\n.py-10 {\n  padding-top: 14rem !important;\n  padding-bottom: 14rem !important; }\n\n.py-11 {\n  padding-top: 16rem !important;\n  padding-bottom: 16rem !important; }\n\n.py-12 {\n  padding-top: 20rem !important;\n  padding-bottom: 20rem !important; }\n\n.py-sm {\n  padding-top: 1rem !important;\n  padding-bottom: 1rem !important; }\n\n.py-md {\n  padding-top: 2rem !important;\n  padding-bottom: 2rem !important; }\n\n.py-lg {\n  padding-top: 4rem !important;\n  padding-bottom: 4rem !important; }\n\n.py-xl {\n  padding-top: 8rem !important;\n  padding-bottom: 8rem !important; }\n\n.pt-0 {\n  padding-top: 0 !important; }\n\n.pt-1 {\n  padding-top: 0.25rem !important; }\n\n.pt-2 {\n  padding-top: 0.5rem !important; }\n\n.pt-3 {\n  padding-top: 1rem !important; }\n\n.pt-4 {\n  padding-top: 1.5rem !important; }\n\n.pt-5 {\n  padding-top: 3rem !important; }\n\n.pt-6 {\n  padding-top: 5rem !important; }\n\n.pt-7 {\n  padding-top: 8rem !important; }\n\n.pt-8 {\n  padding-top: 10rem !important; }\n\n.pt-9 {\n  padding-top: 11rem !important; }\n\n.pt-10 {\n  padding-top: 14rem !important; }\n\n.pt-11 {\n  padding-top: 16rem !important; }\n\n.pt-12 {\n  padding-top: 20rem !important; }\n\n.pt-sm {\n  padding-top: 1rem !important; }\n\n.pt-md {\n  padding-top: 2rem !important; }\n\n.pt-lg {\n  padding-top: 4rem !important; }\n\n.pt-xl {\n  padding-top: 8rem !important; }\n\n.pe-0 {\n  padding-right: 0 !important; }\n\n.pe-1 {\n  padding-right: 0.25rem !important; }\n\n.pe-2 {\n  padding-right: 0.5rem !important; }\n\n.pe-3 {\n  padding-right: 1rem !important; }\n\n.pe-4 {\n  padding-right: 1.5rem !important; }\n\n.pe-5 {\n  padding-right: 3rem !important; }\n\n.pe-6 {\n  padding-right: 5rem !important; }\n\n.pe-7 {\n  padding-right: 8rem !important; }\n\n.pe-8 {\n  padding-right: 10rem !important; }\n\n.pe-9 {\n  padding-right: 11rem !important; }\n\n.pe-10 {\n  padding-right: 14rem !important; }\n\n.pe-11 {\n  padding-right: 16rem !important; }\n\n.pe-12 {\n  padding-right: 20rem !important; }\n\n.pe-sm {\n  padding-right: 1rem !important; }\n\n.pe-md {\n  padding-right: 2rem !important; }\n\n.pe-lg {\n  padding-right: 4rem !important; }\n\n.pe-xl {\n  padding-right: 8rem !important; }\n\n.pb-0 {\n  padding-bottom: 0 !important; }\n\n.pb-1 {\n  padding-bottom: 0.25rem !important; }\n\n.pb-2 {\n  padding-bottom: 0.5rem !important; }\n\n.pb-3 {\n  padding-bottom: 1rem !important; }\n\n.pb-4 {\n  padding-bottom: 1.5rem !important; }\n\n.pb-5 {\n  padding-bottom: 3rem !important; }\n\n.pb-6 {\n  padding-bottom: 5rem !important; }\n\n.pb-7 {\n  padding-bottom: 8rem !important; }\n\n.pb-8 {\n  padding-bottom: 10rem !important; }\n\n.pb-9 {\n  padding-bottom: 11rem !important; }\n\n.pb-10 {\n  padding-bottom: 14rem !important; }\n\n.pb-11 {\n  padding-bottom: 16rem !important; }\n\n.pb-12 {\n  padding-bottom: 20rem !important; }\n\n.pb-sm {\n  padding-bottom: 1rem !important; }\n\n.pb-md {\n  padding-bottom: 2rem !important; }\n\n.pb-lg {\n  padding-bottom: 4rem !important; }\n\n.pb-xl {\n  padding-bottom: 8rem !important; }\n\n.ps-0 {\n  padding-left: 0 !important; }\n\n.ps-1 {\n  padding-left: 0.25rem !important; }\n\n.ps-2 {\n  padding-left: 0.5rem !important; }\n\n.ps-3 {\n  padding-left: 1rem !important; }\n\n.ps-4 {\n  padding-left: 1.5rem !important; }\n\n.ps-5 {\n  padding-left: 3rem !important; }\n\n.ps-6 {\n  padding-left: 5rem !important; }\n\n.ps-7 {\n  padding-left: 8rem !important; }\n\n.ps-8 {\n  padding-left: 10rem !important; }\n\n.ps-9 {\n  padding-left: 11rem !important; }\n\n.ps-10 {\n  padding-left: 14rem !important; }\n\n.ps-11 {\n  padding-left: 16rem !important; }\n\n.ps-12 {\n  padding-left: 20rem !important; }\n\n.ps-sm {\n  padding-left: 1rem !important; }\n\n.ps-md {\n  padding-left: 2rem !important; }\n\n.ps-lg {\n  padding-left: 4rem !important; }\n\n.ps-xl {\n  padding-left: 8rem !important; }\n\n.font-monospace {\n  font-family: var(--bs-font-monospace) !important; }\n\n.fs-1 {\n  font-size: calc(1.375rem + 1.5vw) !important; }\n\n.fs-2 {\n  font-size: calc(1.325rem + 0.9vw) !important; }\n\n.fs-3 {\n  font-size: calc(1.3rem + 0.6vw) !important; }\n\n.fs-4 {\n  font-size: calc(1.275rem + 0.3vw) !important; }\n\n.fs-5 {\n  font-size: 1.25rem !important; }\n\n.fs-6 {\n  font-size: 1rem !important; }\n\n.fst-italic {\n  font-style: italic !important; }\n\n.fst-normal {\n  font-style: normal !important; }\n\n.fw-light {\n  font-weight: 300 !important; }\n\n.fw-lighter {\n  font-weight: lighter !important; }\n\n.fw-normal {\n  font-weight: 400 !important; }\n\n.fw-bold {\n  font-weight: 500 !important; }\n\n.fw-bolder {\n  font-weight: 600 !important; }\n\n.fw-extrabold {\n  font-weight: 700 !important; }\n\n.fw-black {\n  font-weight: 800 !important; }\n\n.lh-1 {\n  line-height: 1 !important; }\n\n.lh-sm {\n  line-height: 1.25 !important; }\n\n.lh-base {\n  line-height: 1.5 !important; }\n\n.lh-lg {\n  line-height: 2 !important; }\n\n.text-start {\n  text-align: left !important; }\n\n.text-end {\n  text-align: right !important; }\n\n.text-center {\n  text-align: center !important; }\n\n.text-decoration-none {\n  text-decoration: none !important; }\n\n.text-decoration-underline {\n  text-decoration: underline !important; }\n\n.text-decoration-line-through {\n  text-decoration: line-through !important; }\n\n.text-lowercase {\n  text-transform: lowercase !important; }\n\n.text-uppercase {\n  text-transform: uppercase !important; }\n\n.text-capitalize {\n  text-transform: capitalize !important; }\n\n.text-wrap {\n  white-space: normal !important; }\n\n.text-nowrap {\n  white-space: nowrap !important; }\n\n/* rtl:begin:remove */\n.text-break {\n  word-wrap: break-word !important;\n  word-break: break-word !important; }\n\n/* rtl:end:remove */\n.text-primary {\n  --bs-text-opacity: 1;\n  color: rgba(var(--bs-primary-rgb), var(--bs-text-opacity)) !important; }\n\n.text-secondary {\n  --bs-text-opacity: 1;\n  color: rgba(var(--bs-secondary-rgb), var(--bs-text-opacity)) !important; }\n\n.text-tertiary {\n  --bs-text-opacity: 1;\n  color: rgba(var(--bs-tertiary-rgb), var(--bs-text-opacity)) !important; }\n\n.text-success {\n  --bs-text-opacity: 1;\n  color: rgba(var(--bs-success-rgb), var(--bs-text-opacity)) !important; }\n\n.text-info {\n  --bs-text-opacity: 1;\n  color: rgba(var(--bs-info-rgb), var(--bs-text-opacity)) !important; }\n\n.text-warning {\n  --bs-text-opacity: 1;\n  color: rgba(var(--bs-warning-rgb), var(--bs-text-opacity)) !important; }\n\n.text-danger {\n  --bs-text-opacity: 1;\n  color: rgba(var(--bs-danger-rgb), var(--bs-text-opacity)) !important; }\n\n.text-white {\n  --bs-text-opacity: 1;\n  color: rgba(var(--bs-white-rgb), var(--bs-text-opacity)) !important; }\n\n.text-indigo {\n  --bs-text-opacity: 1;\n  color: rgba(var(--bs-indigo-rgb), var(--bs-text-opacity)) !important; }\n\n.text-purple {\n  --bs-text-opacity: 1;\n  color: rgba(var(--bs-purple-rgb), var(--bs-text-opacity)) !important; }\n\n.text-yellow-100 {\n  --bs-text-opacity: 1;\n  color: rgba(var(--bs-yellow-100-rgb), var(--bs-text-opacity)) !important; }\n\n.text-yellow-200 {\n  --bs-text-opacity: 1;\n  color: rgba(var(--bs-yellow-200-rgb), var(--bs-text-opacity)) !important; }\n\n.text-gray-50 {\n  --bs-text-opacity: 1;\n  color: rgba(var(--bs-gray-50-rgb), var(--bs-text-opacity)) !important; }\n\n.text-gray-100 {\n  --bs-text-opacity: 1;\n  color: rgba(var(--bs-gray-100-rgb), var(--bs-text-opacity)) !important; }\n\n.text-gray-200 {\n  --bs-text-opacity: 1;\n  color: rgba(var(--bs-gray-200-rgb), var(--bs-text-opacity)) !important; }\n\n.text-gray-300 {\n  --bs-text-opacity: 1;\n  color: rgba(var(--bs-gray-300-rgb), var(--bs-text-opacity)) !important; }\n\n.text-gray-400 {\n  --bs-text-opacity: 1;\n  color: rgba(var(--bs-gray-400-rgb), var(--bs-text-opacity)) !important; }\n\n.text-gray-500 {\n  --bs-text-opacity: 1;\n  color: rgba(var(--bs-gray-500-rgb), var(--bs-text-opacity)) !important; }\n\n.text-gray-600 {\n  --bs-text-opacity: 1;\n  color: rgba(var(--bs-gray-600-rgb), var(--bs-text-opacity)) !important; }\n\n.text-gray-700 {\n  --bs-text-opacity: 1;\n  color: rgba(var(--bs-gray-700-rgb), var(--bs-text-opacity)) !important; }\n\n.text-gray-800 {\n  --bs-text-opacity: 1;\n  color: rgba(var(--bs-gray-800-rgb), var(--bs-text-opacity)) !important; }\n\n.text-gray-900 {\n  --bs-text-opacity: 1;\n  color: rgba(var(--bs-gray-900-rgb), var(--bs-text-opacity)) !important; }\n\n.text-black {\n  --bs-text-opacity: 1;\n  color: rgba(var(--bs-black-rgb), var(--bs-text-opacity)) !important; }\n\n.text-body {\n  --bs-text-opacity: 1;\n  color: rgba(var(--bs-body-color-rgb), var(--bs-text-opacity)) !important; }\n\n.text-muted {\n  --bs-text-opacity: 1;\n  color: #58677d !important; }\n\n.text-black-50 {\n  --bs-text-opacity: 1;\n  color: rgba(17, 24, 39, 0.5) !important; }\n\n.text-white-50 {\n  --bs-text-opacity: 1;\n  color: rgba(255, 255, 255, 0.5) !important; }\n\n.text-reset {\n  --bs-text-opacity: 1;\n  color: inherit !important; }\n\n.text-opacity-25 {\n  --bs-text-opacity: 0.25; }\n\n.text-opacity-50 {\n  --bs-text-opacity: 0.5; }\n\n.text-opacity-75 {\n  --bs-text-opacity: 0.75; }\n\n.text-opacity-100 {\n  --bs-text-opacity: 1; }\n\n.bg-primary {\n  --bs-bg-opacity: 1;\n  background-color: rgba(var(--bs-primary-rgb), var(--bs-bg-opacity)) !important; }\n\n.bg-secondary {\n  --bs-bg-opacity: 1;\n  background-color: rgba(var(--bs-secondary-rgb), var(--bs-bg-opacity)) !important; }\n\n.bg-tertiary {\n  --bs-bg-opacity: 1;\n  background-color: rgba(var(--bs-tertiary-rgb), var(--bs-bg-opacity)) !important; }\n\n.bg-success {\n  --bs-bg-opacity: 1;\n  background-color: rgba(var(--bs-success-rgb), var(--bs-bg-opacity)) !important; }\n\n.bg-info {\n  --bs-bg-opacity: 1;\n  background-color: rgba(var(--bs-info-rgb), var(--bs-bg-opacity)) !important; }\n\n.bg-warning {\n  --bs-bg-opacity: 1;\n  background-color: rgba(var(--bs-warning-rgb), var(--bs-bg-opacity)) !important; }\n\n.bg-danger {\n  --bs-bg-opacity: 1;\n  background-color: rgba(var(--bs-danger-rgb), var(--bs-bg-opacity)) !important; }\n\n.bg-white {\n  --bs-bg-opacity: 1;\n  background-color: rgba(var(--bs-white-rgb), var(--bs-bg-opacity)) !important; }\n\n.bg-indigo {\n  --bs-bg-opacity: 1;\n  background-color: rgba(var(--bs-indigo-rgb), var(--bs-bg-opacity)) !important; }\n\n.bg-purple {\n  --bs-bg-opacity: 1;\n  background-color: rgba(var(--bs-purple-rgb), var(--bs-bg-opacity)) !important; }\n\n.bg-yellow-100 {\n  --bs-bg-opacity: 1;\n  background-color: rgba(var(--bs-yellow-100-rgb), var(--bs-bg-opacity)) !important; }\n\n.bg-yellow-200 {\n  --bs-bg-opacity: 1;\n  background-color: rgba(var(--bs-yellow-200-rgb), var(--bs-bg-opacity)) !important; }\n\n.bg-gray-50 {\n  --bs-bg-opacity: 1;\n  background-color: rgba(var(--bs-gray-50-rgb), var(--bs-bg-opacity)) !important; }\n\n.bg-gray-100 {\n  --bs-bg-opacity: 1;\n  background-color: rgba(var(--bs-gray-100-rgb), var(--bs-bg-opacity)) !important; }\n\n.bg-gray-200 {\n  --bs-bg-opacity: 1;\n  background-color: rgba(var(--bs-gray-200-rgb), var(--bs-bg-opacity)) !important; }\n\n.bg-gray-300 {\n  --bs-bg-opacity: 1;\n  background-color: rgba(var(--bs-gray-300-rgb), var(--bs-bg-opacity)) !important; }\n\n.bg-gray-400 {\n  --bs-bg-opacity: 1;\n  background-color: rgba(var(--bs-gray-400-rgb), var(--bs-bg-opacity)) !important; }\n\n.bg-gray-500 {\n  --bs-bg-opacity: 1;\n  background-color: rgba(var(--bs-gray-500-rgb), var(--bs-bg-opacity)) !important; }\n\n.bg-gray-600 {\n  --bs-bg-opacity: 1;\n  background-color: rgba(var(--bs-gray-600-rgb), var(--bs-bg-opacity)) !important; }\n\n.bg-gray-700 {\n  --bs-bg-opacity: 1;\n  background-color: rgba(var(--bs-gray-700-rgb), var(--bs-bg-opacity)) !important; }\n\n.bg-gray-800 {\n  --bs-bg-opacity: 1;\n  background-color: rgba(var(--bs-gray-800-rgb), var(--bs-bg-opacity)) !important; }\n\n.bg-gray-900 {\n  --bs-bg-opacity: 1;\n  background-color: rgba(var(--bs-gray-900-rgb), var(--bs-bg-opacity)) !important; }\n\n.bg-black {\n  --bs-bg-opacity: 1;\n  background-color: rgba(var(--bs-black-rgb), var(--bs-bg-opacity)) !important; }\n\n.bg-body {\n  --bs-bg-opacity: 1;\n  background-color: rgba(var(--bs-body-bg-rgb), var(--bs-bg-opacity)) !important; }\n\n.bg-transparent {\n  --bs-bg-opacity: 1;\n  background-color: transparent !important; }\n\n.bg-opacity-10 {\n  --bs-bg-opacity: 0.1; }\n\n.bg-opacity-25 {\n  --bs-bg-opacity: 0.25; }\n\n.bg-opacity-50 {\n  --bs-bg-opacity: 0.5; }\n\n.bg-opacity-75 {\n  --bs-bg-opacity: 0.75; }\n\n.bg-opacity-100 {\n  --bs-bg-opacity: 1; }\n\n.bg-gradient {\n  background-image: var(--bs-gradient) !important; }\n\n.user-select-all {\n  -webkit-user-select: all !important;\n          user-select: all !important; }\n\n.user-select-auto {\n  -webkit-user-select: auto !important;\n          user-select: auto !important; }\n\n.user-select-none {\n  -webkit-user-select: none !important;\n          user-select: none !important; }\n\n.pe-none {\n  pointer-events: none !important; }\n\n.pe-auto {\n  pointer-events: auto !important; }\n\n.rounded {\n  border-radius: 0.5rem !important; }\n\n.rounded-0 {\n  border-radius: 0 !important; }\n\n.rounded-1 {\n  border-radius: 0.35rem !important; }\n\n.rounded-2 {\n  border-radius: 0.5rem !important; }\n\n.rounded-3 {\n  border-radius: 1rem !important; }\n\n.rounded-circle {\n  border-radius: 50% !important; }\n\n.rounded-pill {\n  border-radius: 50rem !important; }\n\n.rounded-top {\n  border-top-left-radius: 0.5rem !important;\n  border-top-right-radius: 0.5rem !important; }\n\n.rounded-end {\n  border-top-right-radius: 0.5rem !important;\n  border-bottom-right-radius: 0.5rem !important; }\n\n.rounded-bottom {\n  border-bottom-right-radius: 0.5rem !important;\n  border-bottom-left-radius: 0.5rem !important; }\n\n.rounded-start {\n  border-bottom-left-radius: 0.5rem !important;\n  border-top-left-radius: 0.5rem !important; }\n\n.visible {\n  visibility: visible !important; }\n\n.invisible {\n  visibility: hidden !important; }\n\n.blur-0 {\n  -webkit-backdrop-filter: blur(0) !important;\n          backdrop-filter: blur(0) !important; }\n\n.blur-1 {\n  -webkit-backdrop-filter: blur(1px) !important;\n          backdrop-filter: blur(1px) !important; }\n\n.blur-2 {\n  -webkit-backdrop-filter: blur(2px) !important;\n          backdrop-filter: blur(2px) !important; }\n\n.blur-3 {\n  -webkit-backdrop-filter: blur(3px) !important;\n          backdrop-filter: blur(3px) !important; }\n\n.blur-4 {\n  -webkit-backdrop-filter: blur(4px) !important;\n          backdrop-filter: blur(4px) !important; }\n\n.blur-5 {\n  -webkit-backdrop-filter: blur(5px) !important;\n          backdrop-filter: blur(5px) !important; }\n\n.blur-6 {\n  -webkit-backdrop-filter: blur(6px) !important;\n          backdrop-filter: blur(6px) !important; }\n\n.blur-7 {\n  -webkit-backdrop-filter: blur(7px) !important;\n          backdrop-filter: blur(7px) !important; }\n\n.blur-8 {\n  -webkit-backdrop-filter: blur(8px) !important;\n          backdrop-filter: blur(8px) !important; }\n\n.blur-9 {\n  -webkit-backdrop-filter: blur(91px) !important;\n          backdrop-filter: blur(91px) !important; }\n\n.blur-10 {\n  -webkit-backdrop-filter: blur(10px) !important;\n          backdrop-filter: blur(10px) !important; }\n\n.blur-11 {\n  -webkit-backdrop-filter: blur(11px) !important;\n          backdrop-filter: blur(11px) !important; }\n\n.blur-12 {\n  -webkit-backdrop-filter: blur(12px) !important;\n          backdrop-filter: blur(12px) !important; }\n\n.blur-13 {\n  -webkit-backdrop-filter: blur(13px) !important;\n          backdrop-filter: blur(13px) !important; }\n\n.blur-14 {\n  -webkit-backdrop-filter: blur(14px) !important;\n          backdrop-filter: blur(14px) !important; }\n\n.z-0 {\n  z-index: 0 !important; }\n\n.z-1 {\n  z-index: 1 !important; }\n\n.z-2 {\n  z-index: 2 !important; }\n\n.z-3 {\n  z-index: 3 !important; }\n\n.z-999 {\n  z-index: 999 !important; }\n\n.fmxh-100 {\n  min-height: 100px !important; }\n\n.fmxh-200 {\n  min-height: 200px !important; }\n\n.fmxh-300 {\n  min-height: 300px !important; }\n\n.fmxh-400 {\n  min-height: 400px !important; }\n\n.fmxh-500 {\n  min-height: 500px !important; }\n\n.fmxh-999 {\n  min-height: 999px !important; }\n\n@media (min-width: 576px) {\n  .float-sm-start {\n    float: left !important; }\n  .float-sm-end {\n    float: right !important; }\n  .float-sm-none {\n    float: none !important; }\n  .d-sm-inline {\n    display: inline !important; }\n  .d-sm-inline-block {\n    display: inline-block !important; }\n  .d-sm-block {\n    display: block !important; }\n  .d-sm-grid {\n    display: grid !important; }\n  .d-sm-table {\n    display: table !important; }\n  .d-sm-table-row {\n    display: table-row !important; }\n  .d-sm-table-cell {\n    display: table-cell !important; }\n  .d-sm-flex {\n    display: flex !important; }\n  .d-sm-inline-flex {\n    display: inline-flex !important; }\n  .d-sm-none {\n    display: none !important; }\n  .vh-sm-100 {\n    height: 100vh !important; }\n  .flex-sm-fill {\n    flex: 1 1 auto !important; }\n  .flex-sm-row {\n    flex-direction: row !important; }\n  .flex-sm-column {\n    flex-direction: column !important; }\n  .flex-sm-row-reverse {\n    flex-direction: row-reverse !important; }\n  .flex-sm-column-reverse {\n    flex-direction: column-reverse !important; }\n  .flex-sm-grow-0 {\n    flex-grow: 0 !important; }\n  .flex-sm-grow-1 {\n    flex-grow: 1 !important; }\n  .flex-sm-shrink-0 {\n    flex-shrink: 0 !important; }\n  .flex-sm-shrink-1 {\n    flex-shrink: 1 !important; }\n  .flex-sm-wrap {\n    flex-wrap: wrap !important; }\n  .flex-sm-nowrap {\n    flex-wrap: nowrap !important; }\n  .flex-sm-wrap-reverse {\n    flex-wrap: wrap-reverse !important; }\n  .gap-sm-0 {\n    gap: 0 !important; }\n  .gap-sm-1 {\n    gap: 0.25rem !important; }\n  .gap-sm-2 {\n    gap: 0.5rem !important; }\n  .gap-sm-3 {\n    gap: 1rem !important; }\n  .gap-sm-4 {\n    gap: 1.5rem !important; }\n  .gap-sm-5 {\n    gap: 3rem !important; }\n  .gap-sm-6 {\n    gap: 5rem !important; }\n  .gap-sm-7 {\n    gap: 8rem !important; }\n  .gap-sm-8 {\n    gap: 10rem !important; }\n  .gap-sm-9 {\n    gap: 11rem !important; }\n  .gap-sm-10 {\n    gap: 14rem !important; }\n  .gap-sm-11 {\n    gap: 16rem !important; }\n  .gap-sm-12 {\n    gap: 20rem !important; }\n  .gap-sm-sm {\n    gap: 1rem !important; }\n  .gap-sm-md {\n    gap: 2rem !important; }\n  .gap-sm-lg {\n    gap: 4rem !important; }\n  .gap-sm-xl {\n    gap: 8rem !important; }\n  .justify-content-sm-start {\n    justify-content: flex-start !important; }\n  .justify-content-sm-end {\n    justify-content: flex-end !important; }\n  .justify-content-sm-center {\n    justify-content: center !important; }\n  .justify-content-sm-between {\n    justify-content: space-between !important; }\n  .justify-content-sm-around {\n    justify-content: space-around !important; }\n  .justify-content-sm-evenly {\n    justify-content: space-evenly !important; }\n  .align-items-sm-start {\n    align-items: flex-start !important; }\n  .align-items-sm-end {\n    align-items: flex-end !important; }\n  .align-items-sm-center {\n    align-items: center !important; }\n  .align-items-sm-baseline {\n    align-items: baseline !important; }\n  .align-items-sm-stretch {\n    align-items: stretch !important; }\n  .align-content-sm-start {\n    align-content: flex-start !important; }\n  .align-content-sm-end {\n    align-content: flex-end !important; }\n  .align-content-sm-center {\n    align-content: center !important; }\n  .align-content-sm-between {\n    align-content: space-between !important; }\n  .align-content-sm-around {\n    align-content: space-around !important; }\n  .align-content-sm-stretch {\n    align-content: stretch !important; }\n  .align-self-sm-auto {\n    align-self: auto !important; }\n  .align-self-sm-start {\n    align-self: flex-start !important; }\n  .align-self-sm-end {\n    align-self: flex-end !important; }\n  .align-self-sm-center {\n    align-self: center !important; }\n  .align-self-sm-baseline {\n    align-self: baseline !important; }\n  .align-self-sm-stretch {\n    align-self: stretch !important; }\n  .order-sm-first {\n    order: -1 !important; }\n  .order-sm-0 {\n    order: 0 !important; }\n  .order-sm-1 {\n    order: 1 !important; }\n  .order-sm-2 {\n    order: 2 !important; }\n  .order-sm-3 {\n    order: 3 !important; }\n  .order-sm-4 {\n    order: 4 !important; }\n  .order-sm-5 {\n    order: 5 !important; }\n  .order-sm-last {\n    order: 6 !important; }\n  .m-sm-0 {\n    margin: 0 !important; }\n  .m-sm-1 {\n    margin: 0.25rem !important; }\n  .m-sm-2 {\n    margin: 0.5rem !important; }\n  .m-sm-3 {\n    margin: 1rem !important; }\n  .m-sm-4 {\n    margin: 1.5rem !important; }\n  .m-sm-5 {\n    margin: 3rem !important; }\n  .m-sm-6 {\n    margin: 5rem !important; }\n  .m-sm-7 {\n    margin: 8rem !important; }\n  .m-sm-8 {\n    margin: 10rem !important; }\n  .m-sm-9 {\n    margin: 11rem !important; }\n  .m-sm-10 {\n    margin: 14rem !important; }\n  .m-sm-11 {\n    margin: 16rem !important; }\n  .m-sm-12 {\n    margin: 20rem !important; }\n  .m-sm-sm {\n    margin: 1rem !important; }\n  .m-sm-md {\n    margin: 2rem !important; }\n  .m-sm-lg {\n    margin: 4rem !important; }\n  .m-sm-xl {\n    margin: 8rem !important; }\n  .m-sm-auto {\n    margin: auto !important; }\n  .mx-sm-0 {\n    margin-right: 0 !important;\n    margin-left: 0 !important; }\n  .mx-sm-1 {\n    margin-right: 0.25rem !important;\n    margin-left: 0.25rem !important; }\n  .mx-sm-2 {\n    margin-right: 0.5rem !important;\n    margin-left: 0.5rem !important; }\n  .mx-sm-3 {\n    margin-right: 1rem !important;\n    margin-left: 1rem !important; }\n  .mx-sm-4 {\n    margin-right: 1.5rem !important;\n    margin-left: 1.5rem !important; }\n  .mx-sm-5 {\n    margin-right: 3rem !important;\n    margin-left: 3rem !important; }\n  .mx-sm-6 {\n    margin-right: 5rem !important;\n    margin-left: 5rem !important; }\n  .mx-sm-7 {\n    margin-right: 8rem !important;\n    margin-left: 8rem !important; }\n  .mx-sm-8 {\n    margin-right: 10rem !important;\n    margin-left: 10rem !important; }\n  .mx-sm-9 {\n    margin-right: 11rem !important;\n    margin-left: 11rem !important; }\n  .mx-sm-10 {\n    margin-right: 14rem !important;\n    margin-left: 14rem !important; }\n  .mx-sm-11 {\n    margin-right: 16rem !important;\n    margin-left: 16rem !important; }\n  .mx-sm-12 {\n    margin-right: 20rem !important;\n    margin-left: 20rem !important; }\n  .mx-sm-sm {\n    margin-right: 1rem !important;\n    margin-left: 1rem !important; }\n  .mx-sm-md {\n    margin-right: 2rem !important;\n    margin-left: 2rem !important; }\n  .mx-sm-lg {\n    margin-right: 4rem !important;\n    margin-left: 4rem !important; }\n  .mx-sm-xl {\n    margin-right: 8rem !important;\n    margin-left: 8rem !important; }\n  .mx-sm-auto {\n    margin-right: auto !important;\n    margin-left: auto !important; }\n  .my-sm-0 {\n    margin-top: 0 !important;\n    margin-bottom: 0 !important; }\n  .my-sm-1 {\n    margin-top: 0.25rem !important;\n    margin-bottom: 0.25rem !important; }\n  .my-sm-2 {\n    margin-top: 0.5rem !important;\n    margin-bottom: 0.5rem !important; }\n  .my-sm-3 {\n    margin-top: 1rem !important;\n    margin-bottom: 1rem !important; }\n  .my-sm-4 {\n    margin-top: 1.5rem !important;\n    margin-bottom: 1.5rem !important; }\n  .my-sm-5 {\n    margin-top: 3rem !important;\n    margin-bottom: 3rem !important; }\n  .my-sm-6 {\n    margin-top: 5rem !important;\n    margin-bottom: 5rem !important; }\n  .my-sm-7 {\n    margin-top: 8rem !important;\n    margin-bottom: 8rem !important; }\n  .my-sm-8 {\n    margin-top: 10rem !important;\n    margin-bottom: 10rem !important; }\n  .my-sm-9 {\n    margin-top: 11rem !important;\n    margin-bottom: 11rem !important; }\n  .my-sm-10 {\n    margin-top: 14rem !important;\n    margin-bottom: 14rem !important; }\n  .my-sm-11 {\n    margin-top: 16rem !important;\n    margin-bottom: 16rem !important; }\n  .my-sm-12 {\n    margin-top: 20rem !important;\n    margin-bottom: 20rem !important; }\n  .my-sm-sm {\n    margin-top: 1rem !important;\n    margin-bottom: 1rem !important; }\n  .my-sm-md {\n    margin-top: 2rem !important;\n    margin-bottom: 2rem !important; }\n  .my-sm-lg {\n    margin-top: 4rem !important;\n    margin-bottom: 4rem !important; }\n  .my-sm-xl {\n    margin-top: 8rem !important;\n    margin-bottom: 8rem !important; }\n  .my-sm-auto {\n    margin-top: auto !important;\n    margin-bottom: auto !important; }\n  .mt-sm-0 {\n    margin-top: 0 !important; }\n  .mt-sm-1 {\n    margin-top: 0.25rem !important; }\n  .mt-sm-2 {\n    margin-top: 0.5rem !important; }\n  .mt-sm-3 {\n    margin-top: 1rem !important; }\n  .mt-sm-4 {\n    margin-top: 1.5rem !important; }\n  .mt-sm-5 {\n    margin-top: 3rem !important; }\n  .mt-sm-6 {\n    margin-top: 5rem !important; }\n  .mt-sm-7 {\n    margin-top: 8rem !important; }\n  .mt-sm-8 {\n    margin-top: 10rem !important; }\n  .mt-sm-9 {\n    margin-top: 11rem !important; }\n  .mt-sm-10 {\n    margin-top: 14rem !important; }\n  .mt-sm-11 {\n    margin-top: 16rem !important; }\n  .mt-sm-12 {\n    margin-top: 20rem !important; }\n  .mt-sm-sm {\n    margin-top: 1rem !important; }\n  .mt-sm-md {\n    margin-top: 2rem !important; }\n  .mt-sm-lg {\n    margin-top: 4rem !important; }\n  .mt-sm-xl {\n    margin-top: 8rem !important; }\n  .mt-sm-auto {\n    margin-top: auto !important; }\n  .me-sm-0 {\n    margin-right: 0 !important; }\n  .me-sm-1 {\n    margin-right: 0.25rem !important; }\n  .me-sm-2 {\n    margin-right: 0.5rem !important; }\n  .me-sm-3 {\n    margin-right: 1rem !important; }\n  .me-sm-4 {\n    margin-right: 1.5rem !important; }\n  .me-sm-5 {\n    margin-right: 3rem !important; }\n  .me-sm-6 {\n    margin-right: 5rem !important; }\n  .me-sm-7 {\n    margin-right: 8rem !important; }\n  .me-sm-8 {\n    margin-right: 10rem !important; }\n  .me-sm-9 {\n    margin-right: 11rem !important; }\n  .me-sm-10 {\n    margin-right: 14rem !important; }\n  .me-sm-11 {\n    margin-right: 16rem !important; }\n  .me-sm-12 {\n    margin-right: 20rem !important; }\n  .me-sm-sm {\n    margin-right: 1rem !important; }\n  .me-sm-md {\n    margin-right: 2rem !important; }\n  .me-sm-lg {\n    margin-right: 4rem !important; }\n  .me-sm-xl {\n    margin-right: 8rem !important; }\n  .me-sm-auto {\n    margin-right: auto !important; }\n  .mb-sm-0 {\n    margin-bottom: 0 !important; }\n  .mb-sm-1 {\n    margin-bottom: 0.25rem !important; }\n  .mb-sm-2 {\n    margin-bottom: 0.5rem !important; }\n  .mb-sm-3 {\n    margin-bottom: 1rem !important; }\n  .mb-sm-4 {\n    margin-bottom: 1.5rem !important; }\n  .mb-sm-5 {\n    margin-bottom: 3rem !important; }\n  .mb-sm-6 {\n    margin-bottom: 5rem !important; }\n  .mb-sm-7 {\n    margin-bottom: 8rem !important; }\n  .mb-sm-8 {\n    margin-bottom: 10rem !important; }\n  .mb-sm-9 {\n    margin-bottom: 11rem !important; }\n  .mb-sm-10 {\n    margin-bottom: 14rem !important; }\n  .mb-sm-11 {\n    margin-bottom: 16rem !important; }\n  .mb-sm-12 {\n    margin-bottom: 20rem !important; }\n  .mb-sm-sm {\n    margin-bottom: 1rem !important; }\n  .mb-sm-md {\n    margin-bottom: 2rem !important; }\n  .mb-sm-lg {\n    margin-bottom: 4rem !important; }\n  .mb-sm-xl {\n    margin-bottom: 8rem !important; }\n  .mb-sm-auto {\n    margin-bottom: auto !important; }\n  .ms-sm-0 {\n    margin-left: 0 !important; }\n  .ms-sm-1 {\n    margin-left: 0.25rem !important; }\n  .ms-sm-2 {\n    margin-left: 0.5rem !important; }\n  .ms-sm-3 {\n    margin-left: 1rem !important; }\n  .ms-sm-4 {\n    margin-left: 1.5rem !important; }\n  .ms-sm-5 {\n    margin-left: 3rem !important; }\n  .ms-sm-6 {\n    margin-left: 5rem !important; }\n  .ms-sm-7 {\n    margin-left: 8rem !important; }\n  .ms-sm-8 {\n    margin-left: 10rem !important; }\n  .ms-sm-9 {\n    margin-left: 11rem !important; }\n  .ms-sm-10 {\n    margin-left: 14rem !important; }\n  .ms-sm-11 {\n    margin-left: 16rem !important; }\n  .ms-sm-12 {\n    margin-left: 20rem !important; }\n  .ms-sm-sm {\n    margin-left: 1rem !important; }\n  .ms-sm-md {\n    margin-left: 2rem !important; }\n  .ms-sm-lg {\n    margin-left: 4rem !important; }\n  .ms-sm-xl {\n    margin-left: 8rem !important; }\n  .ms-sm-auto {\n    margin-left: auto !important; }\n  .m-sm-n1 {\n    margin: -0.25rem !important; }\n  .m-sm-n2 {\n    margin: -0.5rem !important; }\n  .m-sm-n3 {\n    margin: -1rem !important; }\n  .m-sm-n4 {\n    margin: -1.5rem !important; }\n  .m-sm-n5 {\n    margin: -3rem !important; }\n  .m-sm-n6 {\n    margin: -5rem !important; }\n  .m-sm-n7 {\n    margin: -8rem !important; }\n  .m-sm-n8 {\n    margin: -10rem !important; }\n  .m-sm-n9 {\n    margin: -11rem !important; }\n  .m-sm-n10 {\n    margin: -14rem !important; }\n  .m-sm-n11 {\n    margin: -16rem !important; }\n  .m-sm-n12 {\n    margin: -20rem !important; }\n  .m-sm-nsm {\n    margin: -1rem !important; }\n  .m-sm-nmd {\n    margin: -2rem !important; }\n  .m-sm-nlg {\n    margin: -4rem !important; }\n  .m-sm-nxl {\n    margin: -8rem !important; }\n  .mx-sm-n1 {\n    margin-right: -0.25rem !important;\n    margin-left: -0.25rem !important; }\n  .mx-sm-n2 {\n    margin-right: -0.5rem !important;\n    margin-left: -0.5rem !important; }\n  .mx-sm-n3 {\n    margin-right: -1rem !important;\n    margin-left: -1rem !important; }\n  .mx-sm-n4 {\n    margin-right: -1.5rem !important;\n    margin-left: -1.5rem !important; }\n  .mx-sm-n5 {\n    margin-right: -3rem !important;\n    margin-left: -3rem !important; }\n  .mx-sm-n6 {\n    margin-right: -5rem !important;\n    margin-left: -5rem !important; }\n  .mx-sm-n7 {\n    margin-right: -8rem !important;\n    margin-left: -8rem !important; }\n  .mx-sm-n8 {\n    margin-right: -10rem !important;\n    margin-left: -10rem !important; }\n  .mx-sm-n9 {\n    margin-right: -11rem !important;\n    margin-left: -11rem !important; }\n  .mx-sm-n10 {\n    margin-right: -14rem !important;\n    margin-left: -14rem !important; }\n  .mx-sm-n11 {\n    margin-right: -16rem !important;\n    margin-left: -16rem !important; }\n  .mx-sm-n12 {\n    margin-right: -20rem !important;\n    margin-left: -20rem !important; }\n  .mx-sm-nsm {\n    margin-right: -1rem !important;\n    margin-left: -1rem !important; }\n  .mx-sm-nmd {\n    margin-right: -2rem !important;\n    margin-left: -2rem !important; }\n  .mx-sm-nlg {\n    margin-right: -4rem !important;\n    margin-left: -4rem !important; }\n  .mx-sm-nxl {\n    margin-right: -8rem !important;\n    margin-left: -8rem !important; }\n  .my-sm-n1 {\n    margin-top: -0.25rem !important;\n    margin-bottom: -0.25rem !important; }\n  .my-sm-n2 {\n    margin-top: -0.5rem !important;\n    margin-bottom: -0.5rem !important; }\n  .my-sm-n3 {\n    margin-top: -1rem !important;\n    margin-bottom: -1rem !important; }\n  .my-sm-n4 {\n    margin-top: -1.5rem !important;\n    margin-bottom: -1.5rem !important; }\n  .my-sm-n5 {\n    margin-top: -3rem !important;\n    margin-bottom: -3rem !important; }\n  .my-sm-n6 {\n    margin-top: -5rem !important;\n    margin-bottom: -5rem !important; }\n  .my-sm-n7 {\n    margin-top: -8rem !important;\n    margin-bottom: -8rem !important; }\n  .my-sm-n8 {\n    margin-top: -10rem !important;\n    margin-bottom: -10rem !important; }\n  .my-sm-n9 {\n    margin-top: -11rem !important;\n    margin-bottom: -11rem !important; }\n  .my-sm-n10 {\n    margin-top: -14rem !important;\n    margin-bottom: -14rem !important; }\n  .my-sm-n11 {\n    margin-top: -16rem !important;\n    margin-bottom: -16rem !important; }\n  .my-sm-n12 {\n    margin-top: -20rem !important;\n    margin-bottom: -20rem !important; }\n  .my-sm-nsm {\n    margin-top: -1rem !important;\n    margin-bottom: -1rem !important; }\n  .my-sm-nmd {\n    margin-top: -2rem !important;\n    margin-bottom: -2rem !important; }\n  .my-sm-nlg {\n    margin-top: -4rem !important;\n    margin-bottom: -4rem !important; }\n  .my-sm-nxl {\n    margin-top: -8rem !important;\n    margin-bottom: -8rem !important; }\n  .mt-sm-n1 {\n    margin-top: -0.25rem !important; }\n  .mt-sm-n2 {\n    margin-top: -0.5rem !important; }\n  .mt-sm-n3 {\n    margin-top: -1rem !important; }\n  .mt-sm-n4 {\n    margin-top: -1.5rem !important; }\n  .mt-sm-n5 {\n    margin-top: -3rem !important; }\n  .mt-sm-n6 {\n    margin-top: -5rem !important; }\n  .mt-sm-n7 {\n    margin-top: -8rem !important; }\n  .mt-sm-n8 {\n    margin-top: -10rem !important; }\n  .mt-sm-n9 {\n    margin-top: -11rem !important; }\n  .mt-sm-n10 {\n    margin-top: -14rem !important; }\n  .mt-sm-n11 {\n    margin-top: -16rem !important; }\n  .mt-sm-n12 {\n    margin-top: -20rem !important; }\n  .mt-sm-nsm {\n    margin-top: -1rem !important; }\n  .mt-sm-nmd {\n    margin-top: -2rem !important; }\n  .mt-sm-nlg {\n    margin-top: -4rem !important; }\n  .mt-sm-nxl {\n    margin-top: -8rem !important; }\n  .me-sm-n1 {\n    margin-right: -0.25rem !important; }\n  .me-sm-n2 {\n    margin-right: -0.5rem !important; }\n  .me-sm-n3 {\n    margin-right: -1rem !important; }\n  .me-sm-n4 {\n    margin-right: -1.5rem !important; }\n  .me-sm-n5 {\n    margin-right: -3rem !important; }\n  .me-sm-n6 {\n    margin-right: -5rem !important; }\n  .me-sm-n7 {\n    margin-right: -8rem !important; }\n  .me-sm-n8 {\n    margin-right: -10rem !important; }\n  .me-sm-n9 {\n    margin-right: -11rem !important; }\n  .me-sm-n10 {\n    margin-right: -14rem !important; }\n  .me-sm-n11 {\n    margin-right: -16rem !important; }\n  .me-sm-n12 {\n    margin-right: -20rem !important; }\n  .me-sm-nsm {\n    margin-right: -1rem !important; }\n  .me-sm-nmd {\n    margin-right: -2rem !important; }\n  .me-sm-nlg {\n    margin-right: -4rem !important; }\n  .me-sm-nxl {\n    margin-right: -8rem !important; }\n  .mb-sm-n1 {\n    margin-bottom: -0.25rem !important; }\n  .mb-sm-n2 {\n    margin-bottom: -0.5rem !important; }\n  .mb-sm-n3 {\n    margin-bottom: -1rem !important; }\n  .mb-sm-n4 {\n    margin-bottom: -1.5rem !important; }\n  .mb-sm-n5 {\n    margin-bottom: -3rem !important; }\n  .mb-sm-n6 {\n    margin-bottom: -5rem !important; }\n  .mb-sm-n7 {\n    margin-bottom: -8rem !important; }\n  .mb-sm-n8 {\n    margin-bottom: -10rem !important; }\n  .mb-sm-n9 {\n    margin-bottom: -11rem !important; }\n  .mb-sm-n10 {\n    margin-bottom: -14rem !important; }\n  .mb-sm-n11 {\n    margin-bottom: -16rem !important; }\n  .mb-sm-n12 {\n    margin-bottom: -20rem !important; }\n  .mb-sm-nsm {\n    margin-bottom: -1rem !important; }\n  .mb-sm-nmd {\n    margin-bottom: -2rem !important; }\n  .mb-sm-nlg {\n    margin-bottom: -4rem !important; }\n  .mb-sm-nxl {\n    margin-bottom: -8rem !important; }\n  .ms-sm-n1 {\n    margin-left: -0.25rem !important; }\n  .ms-sm-n2 {\n    margin-left: -0.5rem !important; }\n  .ms-sm-n3 {\n    margin-left: -1rem !important; }\n  .ms-sm-n4 {\n    margin-left: -1.5rem !important; }\n  .ms-sm-n5 {\n    margin-left: -3rem !important; }\n  .ms-sm-n6 {\n    margin-left: -5rem !important; }\n  .ms-sm-n7 {\n    margin-left: -8rem !important; }\n  .ms-sm-n8 {\n    margin-left: -10rem !important; }\n  .ms-sm-n9 {\n    margin-left: -11rem !important; }\n  .ms-sm-n10 {\n    margin-left: -14rem !important; }\n  .ms-sm-n11 {\n    margin-left: -16rem !important; }\n  .ms-sm-n12 {\n    margin-left: -20rem !important; }\n  .ms-sm-nsm {\n    margin-left: -1rem !important; }\n  .ms-sm-nmd {\n    margin-left: -2rem !important; }\n  .ms-sm-nlg {\n    margin-left: -4rem !important; }\n  .ms-sm-nxl {\n    margin-left: -8rem !important; }\n  .p-sm-0 {\n    padding: 0 !important; }\n  .p-sm-1 {\n    padding: 0.25rem !important; }\n  .p-sm-2 {\n    padding: 0.5rem !important; }\n  .p-sm-3 {\n    padding: 1rem !important; }\n  .p-sm-4 {\n    padding: 1.5rem !important; }\n  .p-sm-5 {\n    padding: 3rem !important; }\n  .p-sm-6 {\n    padding: 5rem !important; }\n  .p-sm-7 {\n    padding: 8rem !important; }\n  .p-sm-8 {\n    padding: 10rem !important; }\n  .p-sm-9 {\n    padding: 11rem !important; }\n  .p-sm-10 {\n    padding: 14rem !important; }\n  .p-sm-11 {\n    padding: 16rem !important; }\n  .p-sm-12 {\n    padding: 20rem !important; }\n  .p-sm-sm {\n    padding: 1rem !important; }\n  .p-sm-md {\n    padding: 2rem !important; }\n  .p-sm-lg {\n    padding: 4rem !important; }\n  .p-sm-xl {\n    padding: 8rem !important; }\n  .px-sm-0 {\n    padding-right: 0 !important;\n    padding-left: 0 !important; }\n  .px-sm-1 {\n    padding-right: 0.25rem !important;\n    padding-left: 0.25rem !important; }\n  .px-sm-2 {\n    padding-right: 0.5rem !important;\n    padding-left: 0.5rem !important; }\n  .px-sm-3 {\n    padding-right: 1rem !important;\n    padding-left: 1rem !important; }\n  .px-sm-4 {\n    padding-right: 1.5rem !important;\n    padding-left: 1.5rem !important; }\n  .px-sm-5 {\n    padding-right: 3rem !important;\n    padding-left: 3rem !important; }\n  .px-sm-6 {\n    padding-right: 5rem !important;\n    padding-left: 5rem !important; }\n  .px-sm-7 {\n    padding-right: 8rem !important;\n    padding-left: 8rem !important; }\n  .px-sm-8 {\n    padding-right: 10rem !important;\n    padding-left: 10rem !important; }\n  .px-sm-9 {\n    padding-right: 11rem !important;\n    padding-left: 11rem !important; }\n  .px-sm-10 {\n    padding-right: 14rem !important;\n    padding-left: 14rem !important; }\n  .px-sm-11 {\n    padding-right: 16rem !important;\n    padding-left: 16rem !important; }\n  .px-sm-12 {\n    padding-right: 20rem !important;\n    padding-left: 20rem !important; }\n  .px-sm-sm {\n    padding-right: 1rem !important;\n    padding-left: 1rem !important; }\n  .px-sm-md {\n    padding-right: 2rem !important;\n    padding-left: 2rem !important; }\n  .px-sm-lg {\n    padding-right: 4rem !important;\n    padding-left: 4rem !important; }\n  .px-sm-xl {\n    padding-right: 8rem !important;\n    padding-left: 8rem !important; }\n  .py-sm-0 {\n    padding-top: 0 !important;\n    padding-bottom: 0 !important; }\n  .py-sm-1 {\n    padding-top: 0.25rem !important;\n    padding-bottom: 0.25rem !important; }\n  .py-sm-2 {\n    padding-top: 0.5rem !important;\n    padding-bottom: 0.5rem !important; }\n  .py-sm-3 {\n    padding-top: 1rem !important;\n    padding-bottom: 1rem !important; }\n  .py-sm-4 {\n    padding-top: 1.5rem !important;\n    padding-bottom: 1.5rem !important; }\n  .py-sm-5 {\n    padding-top: 3rem !important;\n    padding-bottom: 3rem !important; }\n  .py-sm-6 {\n    padding-top: 5rem !important;\n    padding-bottom: 5rem !important; }\n  .py-sm-7 {\n    padding-top: 8rem !important;\n    padding-bottom: 8rem !important; }\n  .py-sm-8 {\n    padding-top: 10rem !important;\n    padding-bottom: 10rem !important; }\n  .py-sm-9 {\n    padding-top: 11rem !important;\n    padding-bottom: 11rem !important; }\n  .py-sm-10 {\n    padding-top: 14rem !important;\n    padding-bottom: 14rem !important; }\n  .py-sm-11 {\n    padding-top: 16rem !important;\n    padding-bottom: 16rem !important; }\n  .py-sm-12 {\n    padding-top: 20rem !important;\n    padding-bottom: 20rem !important; }\n  .py-sm-sm {\n    padding-top: 1rem !important;\n    padding-bottom: 1rem !important; }\n  .py-sm-md {\n    padding-top: 2rem !important;\n    padding-bottom: 2rem !important; }\n  .py-sm-lg {\n    padding-top: 4rem !important;\n    padding-bottom: 4rem !important; }\n  .py-sm-xl {\n    padding-top: 8rem !important;\n    padding-bottom: 8rem !important; }\n  .pt-sm-0 {\n    padding-top: 0 !important; }\n  .pt-sm-1 {\n    padding-top: 0.25rem !important; }\n  .pt-sm-2 {\n    padding-top: 0.5rem !important; }\n  .pt-sm-3 {\n    padding-top: 1rem !important; }\n  .pt-sm-4 {\n    padding-top: 1.5rem !important; }\n  .pt-sm-5 {\n    padding-top: 3rem !important; }\n  .pt-sm-6 {\n    padding-top: 5rem !important; }\n  .pt-sm-7 {\n    padding-top: 8rem !important; }\n  .pt-sm-8 {\n    padding-top: 10rem !important; }\n  .pt-sm-9 {\n    padding-top: 11rem !important; }\n  .pt-sm-10 {\n    padding-top: 14rem !important; }\n  .pt-sm-11 {\n    padding-top: 16rem !important; }\n  .pt-sm-12 {\n    padding-top: 20rem !important; }\n  .pt-sm-sm {\n    padding-top: 1rem !important; }\n  .pt-sm-md {\n    padding-top: 2rem !important; }\n  .pt-sm-lg {\n    padding-top: 4rem !important; }\n  .pt-sm-xl {\n    padding-top: 8rem !important; }\n  .pe-sm-0 {\n    padding-right: 0 !important; }\n  .pe-sm-1 {\n    padding-right: 0.25rem !important; }\n  .pe-sm-2 {\n    padding-right: 0.5rem !important; }\n  .pe-sm-3 {\n    padding-right: 1rem !important; }\n  .pe-sm-4 {\n    padding-right: 1.5rem !important; }\n  .pe-sm-5 {\n    padding-right: 3rem !important; }\n  .pe-sm-6 {\n    padding-right: 5rem !important; }\n  .pe-sm-7 {\n    padding-right: 8rem !important; }\n  .pe-sm-8 {\n    padding-right: 10rem !important; }\n  .pe-sm-9 {\n    padding-right: 11rem !important; }\n  .pe-sm-10 {\n    padding-right: 14rem !important; }\n  .pe-sm-11 {\n    padding-right: 16rem !important; }\n  .pe-sm-12 {\n    padding-right: 20rem !important; }\n  .pe-sm-sm {\n    padding-right: 1rem !important; }\n  .pe-sm-md {\n    padding-right: 2rem !important; }\n  .pe-sm-lg {\n    padding-right: 4rem !important; }\n  .pe-sm-xl {\n    padding-right: 8rem !important; }\n  .pb-sm-0 {\n    padding-bottom: 0 !important; }\n  .pb-sm-1 {\n    padding-bottom: 0.25rem !important; }\n  .pb-sm-2 {\n    padding-bottom: 0.5rem !important; }\n  .pb-sm-3 {\n    padding-bottom: 1rem !important; }\n  .pb-sm-4 {\n    padding-bottom: 1.5rem !important; }\n  .pb-sm-5 {\n    padding-bottom: 3rem !important; }\n  .pb-sm-6 {\n    padding-bottom: 5rem !important; }\n  .pb-sm-7 {\n    padding-bottom: 8rem !important; }\n  .pb-sm-8 {\n    padding-bottom: 10rem !important; }\n  .pb-sm-9 {\n    padding-bottom: 11rem !important; }\n  .pb-sm-10 {\n    padding-bottom: 14rem !important; }\n  .pb-sm-11 {\n    padding-bottom: 16rem !important; }\n  .pb-sm-12 {\n    padding-bottom: 20rem !important; }\n  .pb-sm-sm {\n    padding-bottom: 1rem !important; }\n  .pb-sm-md {\n    padding-bottom: 2rem !important; }\n  .pb-sm-lg {\n    padding-bottom: 4rem !important; }\n  .pb-sm-xl {\n    padding-bottom: 8rem !important; }\n  .ps-sm-0 {\n    padding-left: 0 !important; }\n  .ps-sm-1 {\n    padding-left: 0.25rem !important; }\n  .ps-sm-2 {\n    padding-left: 0.5rem !important; }\n  .ps-sm-3 {\n    padding-left: 1rem !important; }\n  .ps-sm-4 {\n    padding-left: 1.5rem !important; }\n  .ps-sm-5 {\n    padding-left: 3rem !important; }\n  .ps-sm-6 {\n    padding-left: 5rem !important; }\n  .ps-sm-7 {\n    padding-left: 8rem !important; }\n  .ps-sm-8 {\n    padding-left: 10rem !important; }\n  .ps-sm-9 {\n    padding-left: 11rem !important; }\n  .ps-sm-10 {\n    padding-left: 14rem !important; }\n  .ps-sm-11 {\n    padding-left: 16rem !important; }\n  .ps-sm-12 {\n    padding-left: 20rem !important; }\n  .ps-sm-sm {\n    padding-left: 1rem !important; }\n  .ps-sm-md {\n    padding-left: 2rem !important; }\n  .ps-sm-lg {\n    padding-left: 4rem !important; }\n  .ps-sm-xl {\n    padding-left: 8rem !important; }\n  .text-sm-start {\n    text-align: left !important; }\n  .text-sm-end {\n    text-align: right !important; }\n  .text-sm-center {\n    text-align: center !important; } }\n\n@media (min-width: 768px) {\n  .float-md-start {\n    float: left !important; }\n  .float-md-end {\n    float: right !important; }\n  .float-md-none {\n    float: none !important; }\n  .d-md-inline {\n    display: inline !important; }\n  .d-md-inline-block {\n    display: inline-block !important; }\n  .d-md-block {\n    display: block !important; }\n  .d-md-grid {\n    display: grid !important; }\n  .d-md-table {\n    display: table !important; }\n  .d-md-table-row {\n    display: table-row !important; }\n  .d-md-table-cell {\n    display: table-cell !important; }\n  .d-md-flex {\n    display: flex !important; }\n  .d-md-inline-flex {\n    display: inline-flex !important; }\n  .d-md-none {\n    display: none !important; }\n  .vh-md-100 {\n    height: 100vh !important; }\n  .flex-md-fill {\n    flex: 1 1 auto !important; }\n  .flex-md-row {\n    flex-direction: row !important; }\n  .flex-md-column {\n    flex-direction: column !important; }\n  .flex-md-row-reverse {\n    flex-direction: row-reverse !important; }\n  .flex-md-column-reverse {\n    flex-direction: column-reverse !important; }\n  .flex-md-grow-0 {\n    flex-grow: 0 !important; }\n  .flex-md-grow-1 {\n    flex-grow: 1 !important; }\n  .flex-md-shrink-0 {\n    flex-shrink: 0 !important; }\n  .flex-md-shrink-1 {\n    flex-shrink: 1 !important; }\n  .flex-md-wrap {\n    flex-wrap: wrap !important; }\n  .flex-md-nowrap {\n    flex-wrap: nowrap !important; }\n  .flex-md-wrap-reverse {\n    flex-wrap: wrap-reverse !important; }\n  .gap-md-0 {\n    gap: 0 !important; }\n  .gap-md-1 {\n    gap: 0.25rem !important; }\n  .gap-md-2 {\n    gap: 0.5rem !important; }\n  .gap-md-3 {\n    gap: 1rem !important; }\n  .gap-md-4 {\n    gap: 1.5rem !important; }\n  .gap-md-5 {\n    gap: 3rem !important; }\n  .gap-md-6 {\n    gap: 5rem !important; }\n  .gap-md-7 {\n    gap: 8rem !important; }\n  .gap-md-8 {\n    gap: 10rem !important; }\n  .gap-md-9 {\n    gap: 11rem !important; }\n  .gap-md-10 {\n    gap: 14rem !important; }\n  .gap-md-11 {\n    gap: 16rem !important; }\n  .gap-md-12 {\n    gap: 20rem !important; }\n  .gap-md-sm {\n    gap: 1rem !important; }\n  .gap-md-md {\n    gap: 2rem !important; }\n  .gap-md-lg {\n    gap: 4rem !important; }\n  .gap-md-xl {\n    gap: 8rem !important; }\n  .justify-content-md-start {\n    justify-content: flex-start !important; }\n  .justify-content-md-end {\n    justify-content: flex-end !important; }\n  .justify-content-md-center {\n    justify-content: center !important; }\n  .justify-content-md-between {\n    justify-content: space-between !important; }\n  .justify-content-md-around {\n    justify-content: space-around !important; }\n  .justify-content-md-evenly {\n    justify-content: space-evenly !important; }\n  .align-items-md-start {\n    align-items: flex-start !important; }\n  .align-items-md-end {\n    align-items: flex-end !important; }\n  .align-items-md-center {\n    align-items: center !important; }\n  .align-items-md-baseline {\n    align-items: baseline !important; }\n  .align-items-md-stretch {\n    align-items: stretch !important; }\n  .align-content-md-start {\n    align-content: flex-start !important; }\n  .align-content-md-end {\n    align-content: flex-end !important; }\n  .align-content-md-center {\n    align-content: center !important; }\n  .align-content-md-between {\n    align-content: space-between !important; }\n  .align-content-md-around {\n    align-content: space-around !important; }\n  .align-content-md-stretch {\n    align-content: stretch !important; }\n  .align-self-md-auto {\n    align-self: auto !important; }\n  .align-self-md-start {\n    align-self: flex-start !important; }\n  .align-self-md-end {\n    align-self: flex-end !important; }\n  .align-self-md-center {\n    align-self: center !important; }\n  .align-self-md-baseline {\n    align-self: baseline !important; }\n  .align-self-md-stretch {\n    align-self: stretch !important; }\n  .order-md-first {\n    order: -1 !important; }\n  .order-md-0 {\n    order: 0 !important; }\n  .order-md-1 {\n    order: 1 !important; }\n  .order-md-2 {\n    order: 2 !important; }\n  .order-md-3 {\n    order: 3 !important; }\n  .order-md-4 {\n    order: 4 !important; }\n  .order-md-5 {\n    order: 5 !important; }\n  .order-md-last {\n    order: 6 !important; }\n  .m-md-0 {\n    margin: 0 !important; }\n  .m-md-1 {\n    margin: 0.25rem !important; }\n  .m-md-2 {\n    margin: 0.5rem !important; }\n  .m-md-3 {\n    margin: 1rem !important; }\n  .m-md-4 {\n    margin: 1.5rem !important; }\n  .m-md-5 {\n    margin: 3rem !important; }\n  .m-md-6 {\n    margin: 5rem !important; }\n  .m-md-7 {\n    margin: 8rem !important; }\n  .m-md-8 {\n    margin: 10rem !important; }\n  .m-md-9 {\n    margin: 11rem !important; }\n  .m-md-10 {\n    margin: 14rem !important; }\n  .m-md-11 {\n    margin: 16rem !important; }\n  .m-md-12 {\n    margin: 20rem !important; }\n  .m-md-sm {\n    margin: 1rem !important; }\n  .m-md-md {\n    margin: 2rem !important; }\n  .m-md-lg {\n    margin: 4rem !important; }\n  .m-md-xl {\n    margin: 8rem !important; }\n  .m-md-auto {\n    margin: auto !important; }\n  .mx-md-0 {\n    margin-right: 0 !important;\n    margin-left: 0 !important; }\n  .mx-md-1 {\n    margin-right: 0.25rem !important;\n    margin-left: 0.25rem !important; }\n  .mx-md-2 {\n    margin-right: 0.5rem !important;\n    margin-left: 0.5rem !important; }\n  .mx-md-3 {\n    margin-right: 1rem !important;\n    margin-left: 1rem !important; }\n  .mx-md-4 {\n    margin-right: 1.5rem !important;\n    margin-left: 1.5rem !important; }\n  .mx-md-5 {\n    margin-right: 3rem !important;\n    margin-left: 3rem !important; }\n  .mx-md-6 {\n    margin-right: 5rem !important;\n    margin-left: 5rem !important; }\n  .mx-md-7 {\n    margin-right: 8rem !important;\n    margin-left: 8rem !important; }\n  .mx-md-8 {\n    margin-right: 10rem !important;\n    margin-left: 10rem !important; }\n  .mx-md-9 {\n    margin-right: 11rem !important;\n    margin-left: 11rem !important; }\n  .mx-md-10 {\n    margin-right: 14rem !important;\n    margin-left: 14rem !important; }\n  .mx-md-11 {\n    margin-right: 16rem !important;\n    margin-left: 16rem !important; }\n  .mx-md-12 {\n    margin-right: 20rem !important;\n    margin-left: 20rem !important; }\n  .mx-md-sm {\n    margin-right: 1rem !important;\n    margin-left: 1rem !important; }\n  .mx-md-md {\n    margin-right: 2rem !important;\n    margin-left: 2rem !important; }\n  .mx-md-lg {\n    margin-right: 4rem !important;\n    margin-left: 4rem !important; }\n  .mx-md-xl {\n    margin-right: 8rem !important;\n    margin-left: 8rem !important; }\n  .mx-md-auto {\n    margin-right: auto !important;\n    margin-left: auto !important; }\n  .my-md-0 {\n    margin-top: 0 !important;\n    margin-bottom: 0 !important; }\n  .my-md-1 {\n    margin-top: 0.25rem !important;\n    margin-bottom: 0.25rem !important; }\n  .my-md-2 {\n    margin-top: 0.5rem !important;\n    margin-bottom: 0.5rem !important; }\n  .my-md-3 {\n    margin-top: 1rem !important;\n    margin-bottom: 1rem !important; }\n  .my-md-4 {\n    margin-top: 1.5rem !important;\n    margin-bottom: 1.5rem !important; }\n  .my-md-5 {\n    margin-top: 3rem !important;\n    margin-bottom: 3rem !important; }\n  .my-md-6 {\n    margin-top: 5rem !important;\n    margin-bottom: 5rem !important; }\n  .my-md-7 {\n    margin-top: 8rem !important;\n    margin-bottom: 8rem !important; }\n  .my-md-8 {\n    margin-top: 10rem !important;\n    margin-bottom: 10rem !important; }\n  .my-md-9 {\n    margin-top: 11rem !important;\n    margin-bottom: 11rem !important; }\n  .my-md-10 {\n    margin-top: 14rem !important;\n    margin-bottom: 14rem !important; }\n  .my-md-11 {\n    margin-top: 16rem !important;\n    margin-bottom: 16rem !important; }\n  .my-md-12 {\n    margin-top: 20rem !important;\n    margin-bottom: 20rem !important; }\n  .my-md-sm {\n    margin-top: 1rem !important;\n    margin-bottom: 1rem !important; }\n  .my-md-md {\n    margin-top: 2rem !important;\n    margin-bottom: 2rem !important; }\n  .my-md-lg {\n    margin-top: 4rem !important;\n    margin-bottom: 4rem !important; }\n  .my-md-xl {\n    margin-top: 8rem !important;\n    margin-bottom: 8rem !important; }\n  .my-md-auto {\n    margin-top: auto !important;\n    margin-bottom: auto !important; }\n  .mt-md-0 {\n    margin-top: 0 !important; }\n  .mt-md-1 {\n    margin-top: 0.25rem !important; }\n  .mt-md-2 {\n    margin-top: 0.5rem !important; }\n  .mt-md-3 {\n    margin-top: 1rem !important; }\n  .mt-md-4 {\n    margin-top: 1.5rem !important; }\n  .mt-md-5 {\n    margin-top: 3rem !important; }\n  .mt-md-6 {\n    margin-top: 5rem !important; }\n  .mt-md-7 {\n    margin-top: 8rem !important; }\n  .mt-md-8 {\n    margin-top: 10rem !important; }\n  .mt-md-9 {\n    margin-top: 11rem !important; }\n  .mt-md-10 {\n    margin-top: 14rem !important; }\n  .mt-md-11 {\n    margin-top: 16rem !important; }\n  .mt-md-12 {\n    margin-top: 20rem !important; }\n  .mt-md-sm {\n    margin-top: 1rem !important; }\n  .mt-md-md {\n    margin-top: 2rem !important; }\n  .mt-md-lg {\n    margin-top: 4rem !important; }\n  .mt-md-xl {\n    margin-top: 8rem !important; }\n  .mt-md-auto {\n    margin-top: auto !important; }\n  .me-md-0 {\n    margin-right: 0 !important; }\n  .me-md-1 {\n    margin-right: 0.25rem !important; }\n  .me-md-2 {\n    margin-right: 0.5rem !important; }\n  .me-md-3 {\n    margin-right: 1rem !important; }\n  .me-md-4 {\n    margin-right: 1.5rem !important; }\n  .me-md-5 {\n    margin-right: 3rem !important; }\n  .me-md-6 {\n    margin-right: 5rem !important; }\n  .me-md-7 {\n    margin-right: 8rem !important; }\n  .me-md-8 {\n    margin-right: 10rem !important; }\n  .me-md-9 {\n    margin-right: 11rem !important; }\n  .me-md-10 {\n    margin-right: 14rem !important; }\n  .me-md-11 {\n    margin-right: 16rem !important; }\n  .me-md-12 {\n    margin-right: 20rem !important; }\n  .me-md-sm {\n    margin-right: 1rem !important; }\n  .me-md-md {\n    margin-right: 2rem !important; }\n  .me-md-lg {\n    margin-right: 4rem !important; }\n  .me-md-xl {\n    margin-right: 8rem !important; }\n  .me-md-auto {\n    margin-right: auto !important; }\n  .mb-md-0 {\n    margin-bottom: 0 !important; }\n  .mb-md-1 {\n    margin-bottom: 0.25rem !important; }\n  .mb-md-2 {\n    margin-bottom: 0.5rem !important; }\n  .mb-md-3 {\n    margin-bottom: 1rem !important; }\n  .mb-md-4 {\n    margin-bottom: 1.5rem !important; }\n  .mb-md-5 {\n    margin-bottom: 3rem !important; }\n  .mb-md-6 {\n    margin-bottom: 5rem !important; }\n  .mb-md-7 {\n    margin-bottom: 8rem !important; }\n  .mb-md-8 {\n    margin-bottom: 10rem !important; }\n  .mb-md-9 {\n    margin-bottom: 11rem !important; }\n  .mb-md-10 {\n    margin-bottom: 14rem !important; }\n  .mb-md-11 {\n    margin-bottom: 16rem !important; }\n  .mb-md-12 {\n    margin-bottom: 20rem !important; }\n  .mb-md-sm {\n    margin-bottom: 1rem !important; }\n  .mb-md-md {\n    margin-bottom: 2rem !important; }\n  .mb-md-lg {\n    margin-bottom: 4rem !important; }\n  .mb-md-xl {\n    margin-bottom: 8rem !important; }\n  .mb-md-auto {\n    margin-bottom: auto !important; }\n  .ms-md-0 {\n    margin-left: 0 !important; }\n  .ms-md-1 {\n    margin-left: 0.25rem !important; }\n  .ms-md-2 {\n    margin-left: 0.5rem !important; }\n  .ms-md-3 {\n    margin-left: 1rem !important; }\n  .ms-md-4 {\n    margin-left: 1.5rem !important; }\n  .ms-md-5 {\n    margin-left: 3rem !important; }\n  .ms-md-6 {\n    margin-left: 5rem !important; }\n  .ms-md-7 {\n    margin-left: 8rem !important; }\n  .ms-md-8 {\n    margin-left: 10rem !important; }\n  .ms-md-9 {\n    margin-left: 11rem !important; }\n  .ms-md-10 {\n    margin-left: 14rem !important; }\n  .ms-md-11 {\n    margin-left: 16rem !important; }\n  .ms-md-12 {\n    margin-left: 20rem !important; }\n  .ms-md-sm {\n    margin-left: 1rem !important; }\n  .ms-md-md {\n    margin-left: 2rem !important; }\n  .ms-md-lg {\n    margin-left: 4rem !important; }\n  .ms-md-xl {\n    margin-left: 8rem !important; }\n  .ms-md-auto {\n    margin-left: auto !important; }\n  .m-md-n1 {\n    margin: -0.25rem !important; }\n  .m-md-n2 {\n    margin: -0.5rem !important; }\n  .m-md-n3 {\n    margin: -1rem !important; }\n  .m-md-n4 {\n    margin: -1.5rem !important; }\n  .m-md-n5 {\n    margin: -3rem !important; }\n  .m-md-n6 {\n    margin: -5rem !important; }\n  .m-md-n7 {\n    margin: -8rem !important; }\n  .m-md-n8 {\n    margin: -10rem !important; }\n  .m-md-n9 {\n    margin: -11rem !important; }\n  .m-md-n10 {\n    margin: -14rem !important; }\n  .m-md-n11 {\n    margin: -16rem !important; }\n  .m-md-n12 {\n    margin: -20rem !important; }\n  .m-md-nsm {\n    margin: -1rem !important; }\n  .m-md-nmd {\n    margin: -2rem !important; }\n  .m-md-nlg {\n    margin: -4rem !important; }\n  .m-md-nxl {\n    margin: -8rem !important; }\n  .mx-md-n1 {\n    margin-right: -0.25rem !important;\n    margin-left: -0.25rem !important; }\n  .mx-md-n2 {\n    margin-right: -0.5rem !important;\n    margin-left: -0.5rem !important; }\n  .mx-md-n3 {\n    margin-right: -1rem !important;\n    margin-left: -1rem !important; }\n  .mx-md-n4 {\n    margin-right: -1.5rem !important;\n    margin-left: -1.5rem !important; }\n  .mx-md-n5 {\n    margin-right: -3rem !important;\n    margin-left: -3rem !important; }\n  .mx-md-n6 {\n    margin-right: -5rem !important;\n    margin-left: -5rem !important; }\n  .mx-md-n7 {\n    margin-right: -8rem !important;\n    margin-left: -8rem !important; }\n  .mx-md-n8 {\n    margin-right: -10rem !important;\n    margin-left: -10rem !important; }\n  .mx-md-n9 {\n    margin-right: -11rem !important;\n    margin-left: -11rem !important; }\n  .mx-md-n10 {\n    margin-right: -14rem !important;\n    margin-left: -14rem !important; }\n  .mx-md-n11 {\n    margin-right: -16rem !important;\n    margin-left: -16rem !important; }\n  .mx-md-n12 {\n    margin-right: -20rem !important;\n    margin-left: -20rem !important; }\n  .mx-md-nsm {\n    margin-right: -1rem !important;\n    margin-left: -1rem !important; }\n  .mx-md-nmd {\n    margin-right: -2rem !important;\n    margin-left: -2rem !important; }\n  .mx-md-nlg {\n    margin-right: -4rem !important;\n    margin-left: -4rem !important; }\n  .mx-md-nxl {\n    margin-right: -8rem !important;\n    margin-left: -8rem !important; }\n  .my-md-n1 {\n    margin-top: -0.25rem !important;\n    margin-bottom: -0.25rem !important; }\n  .my-md-n2 {\n    margin-top: -0.5rem !important;\n    margin-bottom: -0.5rem !important; }\n  .my-md-n3 {\n    margin-top: -1rem !important;\n    margin-bottom: -1rem !important; }\n  .my-md-n4 {\n    margin-top: -1.5rem !important;\n    margin-bottom: -1.5rem !important; }\n  .my-md-n5 {\n    margin-top: -3rem !important;\n    margin-bottom: -3rem !important; }\n  .my-md-n6 {\n    margin-top: -5rem !important;\n    margin-bottom: -5rem !important; }\n  .my-md-n7 {\n    margin-top: -8rem !important;\n    margin-bottom: -8rem !important; }\n  .my-md-n8 {\n    margin-top: -10rem !important;\n    margin-bottom: -10rem !important; }\n  .my-md-n9 {\n    margin-top: -11rem !important;\n    margin-bottom: -11rem !important; }\n  .my-md-n10 {\n    margin-top: -14rem !important;\n    margin-bottom: -14rem !important; }\n  .my-md-n11 {\n    margin-top: -16rem !important;\n    margin-bottom: -16rem !important; }\n  .my-md-n12 {\n    margin-top: -20rem !important;\n    margin-bottom: -20rem !important; }\n  .my-md-nsm {\n    margin-top: -1rem !important;\n    margin-bottom: -1rem !important; }\n  .my-md-nmd {\n    margin-top: -2rem !important;\n    margin-bottom: -2rem !important; }\n  .my-md-nlg {\n    margin-top: -4rem !important;\n    margin-bottom: -4rem !important; }\n  .my-md-nxl {\n    margin-top: -8rem !important;\n    margin-bottom: -8rem !important; }\n  .mt-md-n1 {\n    margin-top: -0.25rem !important; }\n  .mt-md-n2 {\n    margin-top: -0.5rem !important; }\n  .mt-md-n3 {\n    margin-top: -1rem !important; }\n  .mt-md-n4 {\n    margin-top: -1.5rem !important; }\n  .mt-md-n5 {\n    margin-top: -3rem !important; }\n  .mt-md-n6 {\n    margin-top: -5rem !important; }\n  .mt-md-n7 {\n    margin-top: -8rem !important; }\n  .mt-md-n8 {\n    margin-top: -10rem !important; }\n  .mt-md-n9 {\n    margin-top: -11rem !important; }\n  .mt-md-n10 {\n    margin-top: -14rem !important; }\n  .mt-md-n11 {\n    margin-top: -16rem !important; }\n  .mt-md-n12 {\n    margin-top: -20rem !important; }\n  .mt-md-nsm {\n    margin-top: -1rem !important; }\n  .mt-md-nmd {\n    margin-top: -2rem !important; }\n  .mt-md-nlg {\n    margin-top: -4rem !important; }\n  .mt-md-nxl {\n    margin-top: -8rem !important; }\n  .me-md-n1 {\n    margin-right: -0.25rem !important; }\n  .me-md-n2 {\n    margin-right: -0.5rem !important; }\n  .me-md-n3 {\n    margin-right: -1rem !important; }\n  .me-md-n4 {\n    margin-right: -1.5rem !important; }\n  .me-md-n5 {\n    margin-right: -3rem !important; }\n  .me-md-n6 {\n    margin-right: -5rem !important; }\n  .me-md-n7 {\n    margin-right: -8rem !important; }\n  .me-md-n8 {\n    margin-right: -10rem !important; }\n  .me-md-n9 {\n    margin-right: -11rem !important; }\n  .me-md-n10 {\n    margin-right: -14rem !important; }\n  .me-md-n11 {\n    margin-right: -16rem !important; }\n  .me-md-n12 {\n    margin-right: -20rem !important; }\n  .me-md-nsm {\n    margin-right: -1rem !important; }\n  .me-md-nmd {\n    margin-right: -2rem !important; }\n  .me-md-nlg {\n    margin-right: -4rem !important; }\n  .me-md-nxl {\n    margin-right: -8rem !important; }\n  .mb-md-n1 {\n    margin-bottom: -0.25rem !important; }\n  .mb-md-n2 {\n    margin-bottom: -0.5rem !important; }\n  .mb-md-n3 {\n    margin-bottom: -1rem !important; }\n  .mb-md-n4 {\n    margin-bottom: -1.5rem !important; }\n  .mb-md-n5 {\n    margin-bottom: -3rem !important; }\n  .mb-md-n6 {\n    margin-bottom: -5rem !important; }\n  .mb-md-n7 {\n    margin-bottom: -8rem !important; }\n  .mb-md-n8 {\n    margin-bottom: -10rem !important; }\n  .mb-md-n9 {\n    margin-bottom: -11rem !important; }\n  .mb-md-n10 {\n    margin-bottom: -14rem !important; }\n  .mb-md-n11 {\n    margin-bottom: -16rem !important; }\n  .mb-md-n12 {\n    margin-bottom: -20rem !important; }\n  .mb-md-nsm {\n    margin-bottom: -1rem !important; }\n  .mb-md-nmd {\n    margin-bottom: -2rem !important; }\n  .mb-md-nlg {\n    margin-bottom: -4rem !important; }\n  .mb-md-nxl {\n    margin-bottom: -8rem !important; }\n  .ms-md-n1 {\n    margin-left: -0.25rem !important; }\n  .ms-md-n2 {\n    margin-left: -0.5rem !important; }\n  .ms-md-n3 {\n    margin-left: -1rem !important; }\n  .ms-md-n4 {\n    margin-left: -1.5rem !important; }\n  .ms-md-n5 {\n    margin-left: -3rem !important; }\n  .ms-md-n6 {\n    margin-left: -5rem !important; }\n  .ms-md-n7 {\n    margin-left: -8rem !important; }\n  .ms-md-n8 {\n    margin-left: -10rem !important; }\n  .ms-md-n9 {\n    margin-left: -11rem !important; }\n  .ms-md-n10 {\n    margin-left: -14rem !important; }\n  .ms-md-n11 {\n    margin-left: -16rem !important; }\n  .ms-md-n12 {\n    margin-left: -20rem !important; }\n  .ms-md-nsm {\n    margin-left: -1rem !important; }\n  .ms-md-nmd {\n    margin-left: -2rem !important; }\n  .ms-md-nlg {\n    margin-left: -4rem !important; }\n  .ms-md-nxl {\n    margin-left: -8rem !important; }\n  .p-md-0 {\n    padding: 0 !important; }\n  .p-md-1 {\n    padding: 0.25rem !important; }\n  .p-md-2 {\n    padding: 0.5rem !important; }\n  .p-md-3 {\n    padding: 1rem !important; }\n  .p-md-4 {\n    padding: 1.5rem !important; }\n  .p-md-5 {\n    padding: 3rem !important; }\n  .p-md-6 {\n    padding: 5rem !important; }\n  .p-md-7 {\n    padding: 8rem !important; }\n  .p-md-8 {\n    padding: 10rem !important; }\n  .p-md-9 {\n    padding: 11rem !important; }\n  .p-md-10 {\n    padding: 14rem !important; }\n  .p-md-11 {\n    padding: 16rem !important; }\n  .p-md-12 {\n    padding: 20rem !important; }\n  .p-md-sm {\n    padding: 1rem !important; }\n  .p-md-md {\n    padding: 2rem !important; }\n  .p-md-lg {\n    padding: 4rem !important; }\n  .p-md-xl {\n    padding: 8rem !important; }\n  .px-md-0 {\n    padding-right: 0 !important;\n    padding-left: 0 !important; }\n  .px-md-1 {\n    padding-right: 0.25rem !important;\n    padding-left: 0.25rem !important; }\n  .px-md-2 {\n    padding-right: 0.5rem !important;\n    padding-left: 0.5rem !important; }\n  .px-md-3 {\n    padding-right: 1rem !important;\n    padding-left: 1rem !important; }\n  .px-md-4 {\n    padding-right: 1.5rem !important;\n    padding-left: 1.5rem !important; }\n  .px-md-5 {\n    padding-right: 3rem !important;\n    padding-left: 3rem !important; }\n  .px-md-6 {\n    padding-right: 5rem !important;\n    padding-left: 5rem !important; }\n  .px-md-7 {\n    padding-right: 8rem !important;\n    padding-left: 8rem !important; }\n  .px-md-8 {\n    padding-right: 10rem !important;\n    padding-left: 10rem !important; }\n  .px-md-9 {\n    padding-right: 11rem !important;\n    padding-left: 11rem !important; }\n  .px-md-10 {\n    padding-right: 14rem !important;\n    padding-left: 14rem !important; }\n  .px-md-11 {\n    padding-right: 16rem !important;\n    padding-left: 16rem !important; }\n  .px-md-12 {\n    padding-right: 20rem !important;\n    padding-left: 20rem !important; }\n  .px-md-sm {\n    padding-right: 1rem !important;\n    padding-left: 1rem !important; }\n  .px-md-md {\n    padding-right: 2rem !important;\n    padding-left: 2rem !important; }\n  .px-md-lg {\n    padding-right: 4rem !important;\n    padding-left: 4rem !important; }\n  .px-md-xl {\n    padding-right: 8rem !important;\n    padding-left: 8rem !important; }\n  .py-md-0 {\n    padding-top: 0 !important;\n    padding-bottom: 0 !important; }\n  .py-md-1 {\n    padding-top: 0.25rem !important;\n    padding-bottom: 0.25rem !important; }\n  .py-md-2 {\n    padding-top: 0.5rem !important;\n    padding-bottom: 0.5rem !important; }\n  .py-md-3 {\n    padding-top: 1rem !important;\n    padding-bottom: 1rem !important; }\n  .py-md-4 {\n    padding-top: 1.5rem !important;\n    padding-bottom: 1.5rem !important; }\n  .py-md-5 {\n    padding-top: 3rem !important;\n    padding-bottom: 3rem !important; }\n  .py-md-6 {\n    padding-top: 5rem !important;\n    padding-bottom: 5rem !important; }\n  .py-md-7 {\n    padding-top: 8rem !important;\n    padding-bottom: 8rem !important; }\n  .py-md-8 {\n    padding-top: 10rem !important;\n    padding-bottom: 10rem !important; }\n  .py-md-9 {\n    padding-top: 11rem !important;\n    padding-bottom: 11rem !important; }\n  .py-md-10 {\n    padding-top: 14rem !important;\n    padding-bottom: 14rem !important; }\n  .py-md-11 {\n    padding-top: 16rem !important;\n    padding-bottom: 16rem !important; }\n  .py-md-12 {\n    padding-top: 20rem !important;\n    padding-bottom: 20rem !important; }\n  .py-md-sm {\n    padding-top: 1rem !important;\n    padding-bottom: 1rem !important; }\n  .py-md-md {\n    padding-top: 2rem !important;\n    padding-bottom: 2rem !important; }\n  .py-md-lg {\n    padding-top: 4rem !important;\n    padding-bottom: 4rem !important; }\n  .py-md-xl {\n    padding-top: 8rem !important;\n    padding-bottom: 8rem !important; }\n  .pt-md-0 {\n    padding-top: 0 !important; }\n  .pt-md-1 {\n    padding-top: 0.25rem !important; }\n  .pt-md-2 {\n    padding-top: 0.5rem !important; }\n  .pt-md-3 {\n    padding-top: 1rem !important; }\n  .pt-md-4 {\n    padding-top: 1.5rem !important; }\n  .pt-md-5 {\n    padding-top: 3rem !important; }\n  .pt-md-6 {\n    padding-top: 5rem !important; }\n  .pt-md-7 {\n    padding-top: 8rem !important; }\n  .pt-md-8 {\n    padding-top: 10rem !important; }\n  .pt-md-9 {\n    padding-top: 11rem !important; }\n  .pt-md-10 {\n    padding-top: 14rem !important; }\n  .pt-md-11 {\n    padding-top: 16rem !important; }\n  .pt-md-12 {\n    padding-top: 20rem !important; }\n  .pt-md-sm {\n    padding-top: 1rem !important; }\n  .pt-md-md {\n    padding-top: 2rem !important; }\n  .pt-md-lg {\n    padding-top: 4rem !important; }\n  .pt-md-xl {\n    padding-top: 8rem !important; }\n  .pe-md-0 {\n    padding-right: 0 !important; }\n  .pe-md-1 {\n    padding-right: 0.25rem !important; }\n  .pe-md-2 {\n    padding-right: 0.5rem !important; }\n  .pe-md-3 {\n    padding-right: 1rem !important; }\n  .pe-md-4 {\n    padding-right: 1.5rem !important; }\n  .pe-md-5 {\n    padding-right: 3rem !important; }\n  .pe-md-6 {\n    padding-right: 5rem !important; }\n  .pe-md-7 {\n    padding-right: 8rem !important; }\n  .pe-md-8 {\n    padding-right: 10rem !important; }\n  .pe-md-9 {\n    padding-right: 11rem !important; }\n  .pe-md-10 {\n    padding-right: 14rem !important; }\n  .pe-md-11 {\n    padding-right: 16rem !important; }\n  .pe-md-12 {\n    padding-right: 20rem !important; }\n  .pe-md-sm {\n    padding-right: 1rem !important; }\n  .pe-md-md {\n    padding-right: 2rem !important; }\n  .pe-md-lg {\n    padding-right: 4rem !important; }\n  .pe-md-xl {\n    padding-right: 8rem !important; }\n  .pb-md-0 {\n    padding-bottom: 0 !important; }\n  .pb-md-1 {\n    padding-bottom: 0.25rem !important; }\n  .pb-md-2 {\n    padding-bottom: 0.5rem !important; }\n  .pb-md-3 {\n    padding-bottom: 1rem !important; }\n  .pb-md-4 {\n    padding-bottom: 1.5rem !important; }\n  .pb-md-5 {\n    padding-bottom: 3rem !important; }\n  .pb-md-6 {\n    padding-bottom: 5rem !important; }\n  .pb-md-7 {\n    padding-bottom: 8rem !important; }\n  .pb-md-8 {\n    padding-bottom: 10rem !important; }\n  .pb-md-9 {\n    padding-bottom: 11rem !important; }\n  .pb-md-10 {\n    padding-bottom: 14rem !important; }\n  .pb-md-11 {\n    padding-bottom: 16rem !important; }\n  .pb-md-12 {\n    padding-bottom: 20rem !important; }\n  .pb-md-sm {\n    padding-bottom: 1rem !important; }\n  .pb-md-md {\n    padding-bottom: 2rem !important; }\n  .pb-md-lg {\n    padding-bottom: 4rem !important; }\n  .pb-md-xl {\n    padding-bottom: 8rem !important; }\n  .ps-md-0 {\n    padding-left: 0 !important; }\n  .ps-md-1 {\n    padding-left: 0.25rem !important; }\n  .ps-md-2 {\n    padding-left: 0.5rem !important; }\n  .ps-md-3 {\n    padding-left: 1rem !important; }\n  .ps-md-4 {\n    padding-left: 1.5rem !important; }\n  .ps-md-5 {\n    padding-left: 3rem !important; }\n  .ps-md-6 {\n    padding-left: 5rem !important; }\n  .ps-md-7 {\n    padding-left: 8rem !important; }\n  .ps-md-8 {\n    padding-left: 10rem !important; }\n  .ps-md-9 {\n    padding-left: 11rem !important; }\n  .ps-md-10 {\n    padding-left: 14rem !important; }\n  .ps-md-11 {\n    padding-left: 16rem !important; }\n  .ps-md-12 {\n    padding-left: 20rem !important; }\n  .ps-md-sm {\n    padding-left: 1rem !important; }\n  .ps-md-md {\n    padding-left: 2rem !important; }\n  .ps-md-lg {\n    padding-left: 4rem !important; }\n  .ps-md-xl {\n    padding-left: 8rem !important; }\n  .text-md-start {\n    text-align: left !important; }\n  .text-md-end {\n    text-align: right !important; }\n  .text-md-center {\n    text-align: center !important; } }\n\n@media (min-width: 992px) {\n  .float-lg-start {\n    float: left !important; }\n  .float-lg-end {\n    float: right !important; }\n  .float-lg-none {\n    float: none !important; }\n  .d-lg-inline {\n    display: inline !important; }\n  .d-lg-inline-block {\n    display: inline-block !important; }\n  .d-lg-block {\n    display: block !important; }\n  .d-lg-grid {\n    display: grid !important; }\n  .d-lg-table {\n    display: table !important; }\n  .d-lg-table-row {\n    display: table-row !important; }\n  .d-lg-table-cell {\n    display: table-cell !important; }\n  .d-lg-flex {\n    display: flex !important; }\n  .d-lg-inline-flex {\n    display: inline-flex !important; }\n  .d-lg-none {\n    display: none !important; }\n  .vh-lg-100 {\n    height: 100vh !important; }\n  .flex-lg-fill {\n    flex: 1 1 auto !important; }\n  .flex-lg-row {\n    flex-direction: row !important; }\n  .flex-lg-column {\n    flex-direction: column !important; }\n  .flex-lg-row-reverse {\n    flex-direction: row-reverse !important; }\n  .flex-lg-column-reverse {\n    flex-direction: column-reverse !important; }\n  .flex-lg-grow-0 {\n    flex-grow: 0 !important; }\n  .flex-lg-grow-1 {\n    flex-grow: 1 !important; }\n  .flex-lg-shrink-0 {\n    flex-shrink: 0 !important; }\n  .flex-lg-shrink-1 {\n    flex-shrink: 1 !important; }\n  .flex-lg-wrap {\n    flex-wrap: wrap !important; }\n  .flex-lg-nowrap {\n    flex-wrap: nowrap !important; }\n  .flex-lg-wrap-reverse {\n    flex-wrap: wrap-reverse !important; }\n  .gap-lg-0 {\n    gap: 0 !important; }\n  .gap-lg-1 {\n    gap: 0.25rem !important; }\n  .gap-lg-2 {\n    gap: 0.5rem !important; }\n  .gap-lg-3 {\n    gap: 1rem !important; }\n  .gap-lg-4 {\n    gap: 1.5rem !important; }\n  .gap-lg-5 {\n    gap: 3rem !important; }\n  .gap-lg-6 {\n    gap: 5rem !important; }\n  .gap-lg-7 {\n    gap: 8rem !important; }\n  .gap-lg-8 {\n    gap: 10rem !important; }\n  .gap-lg-9 {\n    gap: 11rem !important; }\n  .gap-lg-10 {\n    gap: 14rem !important; }\n  .gap-lg-11 {\n    gap: 16rem !important; }\n  .gap-lg-12 {\n    gap: 20rem !important; }\n  .gap-lg-sm {\n    gap: 1rem !important; }\n  .gap-lg-md {\n    gap: 2rem !important; }\n  .gap-lg-lg {\n    gap: 4rem !important; }\n  .gap-lg-xl {\n    gap: 8rem !important; }\n  .justify-content-lg-start {\n    justify-content: flex-start !important; }\n  .justify-content-lg-end {\n    justify-content: flex-end !important; }\n  .justify-content-lg-center {\n    justify-content: center !important; }\n  .justify-content-lg-between {\n    justify-content: space-between !important; }\n  .justify-content-lg-around {\n    justify-content: space-around !important; }\n  .justify-content-lg-evenly {\n    justify-content: space-evenly !important; }\n  .align-items-lg-start {\n    align-items: flex-start !important; }\n  .align-items-lg-end {\n    align-items: flex-end !important; }\n  .align-items-lg-center {\n    align-items: center !important; }\n  .align-items-lg-baseline {\n    align-items: baseline !important; }\n  .align-items-lg-stretch {\n    align-items: stretch !important; }\n  .align-content-lg-start {\n    align-content: flex-start !important; }\n  .align-content-lg-end {\n    align-content: flex-end !important; }\n  .align-content-lg-center {\n    align-content: center !important; }\n  .align-content-lg-between {\n    align-content: space-between !important; }\n  .align-content-lg-around {\n    align-content: space-around !important; }\n  .align-content-lg-stretch {\n    align-content: stretch !important; }\n  .align-self-lg-auto {\n    align-self: auto !important; }\n  .align-self-lg-start {\n    align-self: flex-start !important; }\n  .align-self-lg-end {\n    align-self: flex-end !important; }\n  .align-self-lg-center {\n    align-self: center !important; }\n  .align-self-lg-baseline {\n    align-self: baseline !important; }\n  .align-self-lg-stretch {\n    align-self: stretch !important; }\n  .order-lg-first {\n    order: -1 !important; }\n  .order-lg-0 {\n    order: 0 !important; }\n  .order-lg-1 {\n    order: 1 !important; }\n  .order-lg-2 {\n    order: 2 !important; }\n  .order-lg-3 {\n    order: 3 !important; }\n  .order-lg-4 {\n    order: 4 !important; }\n  .order-lg-5 {\n    order: 5 !important; }\n  .order-lg-last {\n    order: 6 !important; }\n  .m-lg-0 {\n    margin: 0 !important; }\n  .m-lg-1 {\n    margin: 0.25rem !important; }\n  .m-lg-2 {\n    margin: 0.5rem !important; }\n  .m-lg-3 {\n    margin: 1rem !important; }\n  .m-lg-4 {\n    margin: 1.5rem !important; }\n  .m-lg-5 {\n    margin: 3rem !important; }\n  .m-lg-6 {\n    margin: 5rem !important; }\n  .m-lg-7 {\n    margin: 8rem !important; }\n  .m-lg-8 {\n    margin: 10rem !important; }\n  .m-lg-9 {\n    margin: 11rem !important; }\n  .m-lg-10 {\n    margin: 14rem !important; }\n  .m-lg-11 {\n    margin: 16rem !important; }\n  .m-lg-12 {\n    margin: 20rem !important; }\n  .m-lg-sm {\n    margin: 1rem !important; }\n  .m-lg-md {\n    margin: 2rem !important; }\n  .m-lg-lg {\n    margin: 4rem !important; }\n  .m-lg-xl {\n    margin: 8rem !important; }\n  .m-lg-auto {\n    margin: auto !important; }\n  .mx-lg-0 {\n    margin-right: 0 !important;\n    margin-left: 0 !important; }\n  .mx-lg-1 {\n    margin-right: 0.25rem !important;\n    margin-left: 0.25rem !important; }\n  .mx-lg-2 {\n    margin-right: 0.5rem !important;\n    margin-left: 0.5rem !important; }\n  .mx-lg-3 {\n    margin-right: 1rem !important;\n    margin-left: 1rem !important; }\n  .mx-lg-4 {\n    margin-right: 1.5rem !important;\n    margin-left: 1.5rem !important; }\n  .mx-lg-5 {\n    margin-right: 3rem !important;\n    margin-left: 3rem !important; }\n  .mx-lg-6 {\n    margin-right: 5rem !important;\n    margin-left: 5rem !important; }\n  .mx-lg-7 {\n    margin-right: 8rem !important;\n    margin-left: 8rem !important; }\n  .mx-lg-8 {\n    margin-right: 10rem !important;\n    margin-left: 10rem !important; }\n  .mx-lg-9 {\n    margin-right: 11rem !important;\n    margin-left: 11rem !important; }\n  .mx-lg-10 {\n    margin-right: 14rem !important;\n    margin-left: 14rem !important; }\n  .mx-lg-11 {\n    margin-right: 16rem !important;\n    margin-left: 16rem !important; }\n  .mx-lg-12 {\n    margin-right: 20rem !important;\n    margin-left: 20rem !important; }\n  .mx-lg-sm {\n    margin-right: 1rem !important;\n    margin-left: 1rem !important; }\n  .mx-lg-md {\n    margin-right: 2rem !important;\n    margin-left: 2rem !important; }\n  .mx-lg-lg {\n    margin-right: 4rem !important;\n    margin-left: 4rem !important; }\n  .mx-lg-xl {\n    margin-right: 8rem !important;\n    margin-left: 8rem !important; }\n  .mx-lg-auto {\n    margin-right: auto !important;\n    margin-left: auto !important; }\n  .my-lg-0 {\n    margin-top: 0 !important;\n    margin-bottom: 0 !important; }\n  .my-lg-1 {\n    margin-top: 0.25rem !important;\n    margin-bottom: 0.25rem !important; }\n  .my-lg-2 {\n    margin-top: 0.5rem !important;\n    margin-bottom: 0.5rem !important; }\n  .my-lg-3 {\n    margin-top: 1rem !important;\n    margin-bottom: 1rem !important; }\n  .my-lg-4 {\n    margin-top: 1.5rem !important;\n    margin-bottom: 1.5rem !important; }\n  .my-lg-5 {\n    margin-top: 3rem !important;\n    margin-bottom: 3rem !important; }\n  .my-lg-6 {\n    margin-top: 5rem !important;\n    margin-bottom: 5rem !important; }\n  .my-lg-7 {\n    margin-top: 8rem !important;\n    margin-bottom: 8rem !important; }\n  .my-lg-8 {\n    margin-top: 10rem !important;\n    margin-bottom: 10rem !important; }\n  .my-lg-9 {\n    margin-top: 11rem !important;\n    margin-bottom: 11rem !important; }\n  .my-lg-10 {\n    margin-top: 14rem !important;\n    margin-bottom: 14rem !important; }\n  .my-lg-11 {\n    margin-top: 16rem !important;\n    margin-bottom: 16rem !important; }\n  .my-lg-12 {\n    margin-top: 20rem !important;\n    margin-bottom: 20rem !important; }\n  .my-lg-sm {\n    margin-top: 1rem !important;\n    margin-bottom: 1rem !important; }\n  .my-lg-md {\n    margin-top: 2rem !important;\n    margin-bottom: 2rem !important; }\n  .my-lg-lg {\n    margin-top: 4rem !important;\n    margin-bottom: 4rem !important; }\n  .my-lg-xl {\n    margin-top: 8rem !important;\n    margin-bottom: 8rem !important; }\n  .my-lg-auto {\n    margin-top: auto !important;\n    margin-bottom: auto !important; }\n  .mt-lg-0 {\n    margin-top: 0 !important; }\n  .mt-lg-1 {\n    margin-top: 0.25rem !important; }\n  .mt-lg-2 {\n    margin-top: 0.5rem !important; }\n  .mt-lg-3 {\n    margin-top: 1rem !important; }\n  .mt-lg-4 {\n    margin-top: 1.5rem !important; }\n  .mt-lg-5 {\n    margin-top: 3rem !important; }\n  .mt-lg-6 {\n    margin-top: 5rem !important; }\n  .mt-lg-7 {\n    margin-top: 8rem !important; }\n  .mt-lg-8 {\n    margin-top: 10rem !important; }\n  .mt-lg-9 {\n    margin-top: 11rem !important; }\n  .mt-lg-10 {\n    margin-top: 14rem !important; }\n  .mt-lg-11 {\n    margin-top: 16rem !important; }\n  .mt-lg-12 {\n    margin-top: 20rem !important; }\n  .mt-lg-sm {\n    margin-top: 1rem !important; }\n  .mt-lg-md {\n    margin-top: 2rem !important; }\n  .mt-lg-lg {\n    margin-top: 4rem !important; }\n  .mt-lg-xl {\n    margin-top: 8rem !important; }\n  .mt-lg-auto {\n    margin-top: auto !important; }\n  .me-lg-0 {\n    margin-right: 0 !important; }\n  .me-lg-1 {\n    margin-right: 0.25rem !important; }\n  .me-lg-2 {\n    margin-right: 0.5rem !important; }\n  .me-lg-3 {\n    margin-right: 1rem !important; }\n  .me-lg-4 {\n    margin-right: 1.5rem !important; }\n  .me-lg-5 {\n    margin-right: 3rem !important; }\n  .me-lg-6 {\n    margin-right: 5rem !important; }\n  .me-lg-7 {\n    margin-right: 8rem !important; }\n  .me-lg-8 {\n    margin-right: 10rem !important; }\n  .me-lg-9 {\n    margin-right: 11rem !important; }\n  .me-lg-10 {\n    margin-right: 14rem !important; }\n  .me-lg-11 {\n    margin-right: 16rem !important; }\n  .me-lg-12 {\n    margin-right: 20rem !important; }\n  .me-lg-sm {\n    margin-right: 1rem !important; }\n  .me-lg-md {\n    margin-right: 2rem !important; }\n  .me-lg-lg {\n    margin-right: 4rem !important; }\n  .me-lg-xl {\n    margin-right: 8rem !important; }\n  .me-lg-auto {\n    margin-right: auto !important; }\n  .mb-lg-0 {\n    margin-bottom: 0 !important; }\n  .mb-lg-1 {\n    margin-bottom: 0.25rem !important; }\n  .mb-lg-2 {\n    margin-bottom: 0.5rem !important; }\n  .mb-lg-3 {\n    margin-bottom: 1rem !important; }\n  .mb-lg-4 {\n    margin-bottom: 1.5rem !important; }\n  .mb-lg-5 {\n    margin-bottom: 3rem !important; }\n  .mb-lg-6 {\n    margin-bottom: 5rem !important; }\n  .mb-lg-7 {\n    margin-bottom: 8rem !important; }\n  .mb-lg-8 {\n    margin-bottom: 10rem !important; }\n  .mb-lg-9 {\n    margin-bottom: 11rem !important; }\n  .mb-lg-10 {\n    margin-bottom: 14rem !important; }\n  .mb-lg-11 {\n    margin-bottom: 16rem !important; }\n  .mb-lg-12 {\n    margin-bottom: 20rem !important; }\n  .mb-lg-sm {\n    margin-bottom: 1rem !important; }\n  .mb-lg-md {\n    margin-bottom: 2rem !important; }\n  .mb-lg-lg {\n    margin-bottom: 4rem !important; }\n  .mb-lg-xl {\n    margin-bottom: 8rem !important; }\n  .mb-lg-auto {\n    margin-bottom: auto !important; }\n  .ms-lg-0 {\n    margin-left: 0 !important; }\n  .ms-lg-1 {\n    margin-left: 0.25rem !important; }\n  .ms-lg-2 {\n    margin-left: 0.5rem !important; }\n  .ms-lg-3 {\n    margin-left: 1rem !important; }\n  .ms-lg-4 {\n    margin-left: 1.5rem !important; }\n  .ms-lg-5 {\n    margin-left: 3rem !important; }\n  .ms-lg-6 {\n    margin-left: 5rem !important; }\n  .ms-lg-7 {\n    margin-left: 8rem !important; }\n  .ms-lg-8 {\n    margin-left: 10rem !important; }\n  .ms-lg-9 {\n    margin-left: 11rem !important; }\n  .ms-lg-10 {\n    margin-left: 14rem !important; }\n  .ms-lg-11 {\n    margin-left: 16rem !important; }\n  .ms-lg-12 {\n    margin-left: 20rem !important; }\n  .ms-lg-sm {\n    margin-left: 1rem !important; }\n  .ms-lg-md {\n    margin-left: 2rem !important; }\n  .ms-lg-lg {\n    margin-left: 4rem !important; }\n  .ms-lg-xl {\n    margin-left: 8rem !important; }\n  .ms-lg-auto {\n    margin-left: auto !important; }\n  .m-lg-n1 {\n    margin: -0.25rem !important; }\n  .m-lg-n2 {\n    margin: -0.5rem !important; }\n  .m-lg-n3 {\n    margin: -1rem !important; }\n  .m-lg-n4 {\n    margin: -1.5rem !important; }\n  .m-lg-n5 {\n    margin: -3rem !important; }\n  .m-lg-n6 {\n    margin: -5rem !important; }\n  .m-lg-n7 {\n    margin: -8rem !important; }\n  .m-lg-n8 {\n    margin: -10rem !important; }\n  .m-lg-n9 {\n    margin: -11rem !important; }\n  .m-lg-n10 {\n    margin: -14rem !important; }\n  .m-lg-n11 {\n    margin: -16rem !important; }\n  .m-lg-n12 {\n    margin: -20rem !important; }\n  .m-lg-nsm {\n    margin: -1rem !important; }\n  .m-lg-nmd {\n    margin: -2rem !important; }\n  .m-lg-nlg {\n    margin: -4rem !important; }\n  .m-lg-nxl {\n    margin: -8rem !important; }\n  .mx-lg-n1 {\n    margin-right: -0.25rem !important;\n    margin-left: -0.25rem !important; }\n  .mx-lg-n2 {\n    margin-right: -0.5rem !important;\n    margin-left: -0.5rem !important; }\n  .mx-lg-n3 {\n    margin-right: -1rem !important;\n    margin-left: -1rem !important; }\n  .mx-lg-n4 {\n    margin-right: -1.5rem !important;\n    margin-left: -1.5rem !important; }\n  .mx-lg-n5 {\n    margin-right: -3rem !important;\n    margin-left: -3rem !important; }\n  .mx-lg-n6 {\n    margin-right: -5rem !important;\n    margin-left: -5rem !important; }\n  .mx-lg-n7 {\n    margin-right: -8rem !important;\n    margin-left: -8rem !important; }\n  .mx-lg-n8 {\n    margin-right: -10rem !important;\n    margin-left: -10rem !important; }\n  .mx-lg-n9 {\n    margin-right: -11rem !important;\n    margin-left: -11rem !important; }\n  .mx-lg-n10 {\n    margin-right: -14rem !important;\n    margin-left: -14rem !important; }\n  .mx-lg-n11 {\n    margin-right: -16rem !important;\n    margin-left: -16rem !important; }\n  .mx-lg-n12 {\n    margin-right: -20rem !important;\n    margin-left: -20rem !important; }\n  .mx-lg-nsm {\n    margin-right: -1rem !important;\n    margin-left: -1rem !important; }\n  .mx-lg-nmd {\n    margin-right: -2rem !important;\n    margin-left: -2rem !important; }\n  .mx-lg-nlg {\n    margin-right: -4rem !important;\n    margin-left: -4rem !important; }\n  .mx-lg-nxl {\n    margin-right: -8rem !important;\n    margin-left: -8rem !important; }\n  .my-lg-n1 {\n    margin-top: -0.25rem !important;\n    margin-bottom: -0.25rem !important; }\n  .my-lg-n2 {\n    margin-top: -0.5rem !important;\n    margin-bottom: -0.5rem !important; }\n  .my-lg-n3 {\n    margin-top: -1rem !important;\n    margin-bottom: -1rem !important; }\n  .my-lg-n4 {\n    margin-top: -1.5rem !important;\n    margin-bottom: -1.5rem !important; }\n  .my-lg-n5 {\n    margin-top: -3rem !important;\n    margin-bottom: -3rem !important; }\n  .my-lg-n6 {\n    margin-top: -5rem !important;\n    margin-bottom: -5rem !important; }\n  .my-lg-n7 {\n    margin-top: -8rem !important;\n    margin-bottom: -8rem !important; }\n  .my-lg-n8 {\n    margin-top: -10rem !important;\n    margin-bottom: -10rem !important; }\n  .my-lg-n9 {\n    margin-top: -11rem !important;\n    margin-bottom: -11rem !important; }\n  .my-lg-n10 {\n    margin-top: -14rem !important;\n    margin-bottom: -14rem !important; }\n  .my-lg-n11 {\n    margin-top: -16rem !important;\n    margin-bottom: -16rem !important; }\n  .my-lg-n12 {\n    margin-top: -20rem !important;\n    margin-bottom: -20rem !important; }\n  .my-lg-nsm {\n    margin-top: -1rem !important;\n    margin-bottom: -1rem !important; }\n  .my-lg-nmd {\n    margin-top: -2rem !important;\n    margin-bottom: -2rem !important; }\n  .my-lg-nlg {\n    margin-top: -4rem !important;\n    margin-bottom: -4rem !important; }\n  .my-lg-nxl {\n    margin-top: -8rem !important;\n    margin-bottom: -8rem !important; }\n  .mt-lg-n1 {\n    margin-top: -0.25rem !important; }\n  .mt-lg-n2 {\n    margin-top: -0.5rem !important; }\n  .mt-lg-n3 {\n    margin-top: -1rem !important; }\n  .mt-lg-n4 {\n    margin-top: -1.5rem !important; }\n  .mt-lg-n5 {\n    margin-top: -3rem !important; }\n  .mt-lg-n6 {\n    margin-top: -5rem !important; }\n  .mt-lg-n7 {\n    margin-top: -8rem !important; }\n  .mt-lg-n8 {\n    margin-top: -10rem !important; }\n  .mt-lg-n9 {\n    margin-top: -11rem !important; }\n  .mt-lg-n10 {\n    margin-top: -14rem !important; }\n  .mt-lg-n11 {\n    margin-top: -16rem !important; }\n  .mt-lg-n12 {\n    margin-top: -20rem !important; }\n  .mt-lg-nsm {\n    margin-top: -1rem !important; }\n  .mt-lg-nmd {\n    margin-top: -2rem !important; }\n  .mt-lg-nlg {\n    margin-top: -4rem !important; }\n  .mt-lg-nxl {\n    margin-top: -8rem !important; }\n  .me-lg-n1 {\n    margin-right: -0.25rem !important; }\n  .me-lg-n2 {\n    margin-right: -0.5rem !important; }\n  .me-lg-n3 {\n    margin-right: -1rem !important; }\n  .me-lg-n4 {\n    margin-right: -1.5rem !important; }\n  .me-lg-n5 {\n    margin-right: -3rem !important; }\n  .me-lg-n6 {\n    margin-right: -5rem !important; }\n  .me-lg-n7 {\n    margin-right: -8rem !important; }\n  .me-lg-n8 {\n    margin-right: -10rem !important; }\n  .me-lg-n9 {\n    margin-right: -11rem !important; }\n  .me-lg-n10 {\n    margin-right: -14rem !important; }\n  .me-lg-n11 {\n    margin-right: -16rem !important; }\n  .me-lg-n12 {\n    margin-right: -20rem !important; }\n  .me-lg-nsm {\n    margin-right: -1rem !important; }\n  .me-lg-nmd {\n    margin-right: -2rem !important; }\n  .me-lg-nlg {\n    margin-right: -4rem !important; }\n  .me-lg-nxl {\n    margin-right: -8rem !important; }\n  .mb-lg-n1 {\n    margin-bottom: -0.25rem !important; }\n  .mb-lg-n2 {\n    margin-bottom: -0.5rem !important; }\n  .mb-lg-n3 {\n    margin-bottom: -1rem !important; }\n  .mb-lg-n4 {\n    margin-bottom: -1.5rem !important; }\n  .mb-lg-n5 {\n    margin-bottom: -3rem !important; }\n  .mb-lg-n6 {\n    margin-bottom: -5rem !important; }\n  .mb-lg-n7 {\n    margin-bottom: -8rem !important; }\n  .mb-lg-n8 {\n    margin-bottom: -10rem !important; }\n  .mb-lg-n9 {\n    margin-bottom: -11rem !important; }\n  .mb-lg-n10 {\n    margin-bottom: -14rem !important; }\n  .mb-lg-n11 {\n    margin-bottom: -16rem !important; }\n  .mb-lg-n12 {\n    margin-bottom: -20rem !important; }\n  .mb-lg-nsm {\n    margin-bottom: -1rem !important; }\n  .mb-lg-nmd {\n    margin-bottom: -2rem !important; }\n  .mb-lg-nlg {\n    margin-bottom: -4rem !important; }\n  .mb-lg-nxl {\n    margin-bottom: -8rem !important; }\n  .ms-lg-n1 {\n    margin-left: -0.25rem !important; }\n  .ms-lg-n2 {\n    margin-left: -0.5rem !important; }\n  .ms-lg-n3 {\n    margin-left: -1rem !important; }\n  .ms-lg-n4 {\n    margin-left: -1.5rem !important; }\n  .ms-lg-n5 {\n    margin-left: -3rem !important; }\n  .ms-lg-n6 {\n    margin-left: -5rem !important; }\n  .ms-lg-n7 {\n    margin-left: -8rem !important; }\n  .ms-lg-n8 {\n    margin-left: -10rem !important; }\n  .ms-lg-n9 {\n    margin-left: -11rem !important; }\n  .ms-lg-n10 {\n    margin-left: -14rem !important; }\n  .ms-lg-n11 {\n    margin-left: -16rem !important; }\n  .ms-lg-n12 {\n    margin-left: -20rem !important; }\n  .ms-lg-nsm {\n    margin-left: -1rem !important; }\n  .ms-lg-nmd {\n    margin-left: -2rem !important; }\n  .ms-lg-nlg {\n    margin-left: -4rem !important; }\n  .ms-lg-nxl {\n    margin-left: -8rem !important; }\n  .p-lg-0 {\n    padding: 0 !important; }\n  .p-lg-1 {\n    padding: 0.25rem !important; }\n  .p-lg-2 {\n    padding: 0.5rem !important; }\n  .p-lg-3 {\n    padding: 1rem !important; }\n  .p-lg-4 {\n    padding: 1.5rem !important; }\n  .p-lg-5 {\n    padding: 3rem !important; }\n  .p-lg-6 {\n    padding: 5rem !important; }\n  .p-lg-7 {\n    padding: 8rem !important; }\n  .p-lg-8 {\n    padding: 10rem !important; }\n  .p-lg-9 {\n    padding: 11rem !important; }\n  .p-lg-10 {\n    padding: 14rem !important; }\n  .p-lg-11 {\n    padding: 16rem !important; }\n  .p-lg-12 {\n    padding: 20rem !important; }\n  .p-lg-sm {\n    padding: 1rem !important; }\n  .p-lg-md {\n    padding: 2rem !important; }\n  .p-lg-lg {\n    padding: 4rem !important; }\n  .p-lg-xl {\n    padding: 8rem !important; }\n  .px-lg-0 {\n    padding-right: 0 !important;\n    padding-left: 0 !important; }\n  .px-lg-1 {\n    padding-right: 0.25rem !important;\n    padding-left: 0.25rem !important; }\n  .px-lg-2 {\n    padding-right: 0.5rem !important;\n    padding-left: 0.5rem !important; }\n  .px-lg-3 {\n    padding-right: 1rem !important;\n    padding-left: 1rem !important; }\n  .px-lg-4 {\n    padding-right: 1.5rem !important;\n    padding-left: 1.5rem !important; }\n  .px-lg-5 {\n    padding-right: 3rem !important;\n    padding-left: 3rem !important; }\n  .px-lg-6 {\n    padding-right: 5rem !important;\n    padding-left: 5rem !important; }\n  .px-lg-7 {\n    padding-right: 8rem !important;\n    padding-left: 8rem !important; }\n  .px-lg-8 {\n    padding-right: 10rem !important;\n    padding-left: 10rem !important; }\n  .px-lg-9 {\n    padding-right: 11rem !important;\n    padding-left: 11rem !important; }\n  .px-lg-10 {\n    padding-right: 14rem !important;\n    padding-left: 14rem !important; }\n  .px-lg-11 {\n    padding-right: 16rem !important;\n    padding-left: 16rem !important; }\n  .px-lg-12 {\n    padding-right: 20rem !important;\n    padding-left: 20rem !important; }\n  .px-lg-sm {\n    padding-right: 1rem !important;\n    padding-left: 1rem !important; }\n  .px-lg-md {\n    padding-right: 2rem !important;\n    padding-left: 2rem !important; }\n  .px-lg-lg {\n    padding-right: 4rem !important;\n    padding-left: 4rem !important; }\n  .px-lg-xl {\n    padding-right: 8rem !important;\n    padding-left: 8rem !important; }\n  .py-lg-0 {\n    padding-top: 0 !important;\n    padding-bottom: 0 !important; }\n  .py-lg-1 {\n    padding-top: 0.25rem !important;\n    padding-bottom: 0.25rem !important; }\n  .py-lg-2 {\n    padding-top: 0.5rem !important;\n    padding-bottom: 0.5rem !important; }\n  .py-lg-3 {\n    padding-top: 1rem !important;\n    padding-bottom: 1rem !important; }\n  .py-lg-4 {\n    padding-top: 1.5rem !important;\n    padding-bottom: 1.5rem !important; }\n  .py-lg-5 {\n    padding-top: 3rem !important;\n    padding-bottom: 3rem !important; }\n  .py-lg-6 {\n    padding-top: 5rem !important;\n    padding-bottom: 5rem !important; }\n  .py-lg-7 {\n    padding-top: 8rem !important;\n    padding-bottom: 8rem !important; }\n  .py-lg-8 {\n    padding-top: 10rem !important;\n    padding-bottom: 10rem !important; }\n  .py-lg-9 {\n    padding-top: 11rem !important;\n    padding-bottom: 11rem !important; }\n  .py-lg-10 {\n    padding-top: 14rem !important;\n    padding-bottom: 14rem !important; }\n  .py-lg-11 {\n    padding-top: 16rem !important;\n    padding-bottom: 16rem !important; }\n  .py-lg-12 {\n    padding-top: 20rem !important;\n    padding-bottom: 20rem !important; }\n  .py-lg-sm {\n    padding-top: 1rem !important;\n    padding-bottom: 1rem !important; }\n  .py-lg-md {\n    padding-top: 2rem !important;\n    padding-bottom: 2rem !important; }\n  .py-lg-lg {\n    padding-top: 4rem !important;\n    padding-bottom: 4rem !important; }\n  .py-lg-xl {\n    padding-top: 8rem !important;\n    padding-bottom: 8rem !important; }\n  .pt-lg-0 {\n    padding-top: 0 !important; }\n  .pt-lg-1 {\n    padding-top: 0.25rem !important; }\n  .pt-lg-2 {\n    padding-top: 0.5rem !important; }\n  .pt-lg-3 {\n    padding-top: 1rem !important; }\n  .pt-lg-4 {\n    padding-top: 1.5rem !important; }\n  .pt-lg-5 {\n    padding-top: 3rem !important; }\n  .pt-lg-6 {\n    padding-top: 5rem !important; }\n  .pt-lg-7 {\n    padding-top: 8rem !important; }\n  .pt-lg-8 {\n    padding-top: 10rem !important; }\n  .pt-lg-9 {\n    padding-top: 11rem !important; }\n  .pt-lg-10 {\n    padding-top: 14rem !important; }\n  .pt-lg-11 {\n    padding-top: 16rem !important; }\n  .pt-lg-12 {\n    padding-top: 20rem !important; }\n  .pt-lg-sm {\n    padding-top: 1rem !important; }\n  .pt-lg-md {\n    padding-top: 2rem !important; }\n  .pt-lg-lg {\n    padding-top: 4rem !important; }\n  .pt-lg-xl {\n    padding-top: 8rem !important; }\n  .pe-lg-0 {\n    padding-right: 0 !important; }\n  .pe-lg-1 {\n    padding-right: 0.25rem !important; }\n  .pe-lg-2 {\n    padding-right: 0.5rem !important; }\n  .pe-lg-3 {\n    padding-right: 1rem !important; }\n  .pe-lg-4 {\n    padding-right: 1.5rem !important; }\n  .pe-lg-5 {\n    padding-right: 3rem !important; }\n  .pe-lg-6 {\n    padding-right: 5rem !important; }\n  .pe-lg-7 {\n    padding-right: 8rem !important; }\n  .pe-lg-8 {\n    padding-right: 10rem !important; }\n  .pe-lg-9 {\n    padding-right: 11rem !important; }\n  .pe-lg-10 {\n    padding-right: 14rem !important; }\n  .pe-lg-11 {\n    padding-right: 16rem !important; }\n  .pe-lg-12 {\n    padding-right: 20rem !important; }\n  .pe-lg-sm {\n    padding-right: 1rem !important; }\n  .pe-lg-md {\n    padding-right: 2rem !important; }\n  .pe-lg-lg {\n    padding-right: 4rem !important; }\n  .pe-lg-xl {\n    padding-right: 8rem !important; }\n  .pb-lg-0 {\n    padding-bottom: 0 !important; }\n  .pb-lg-1 {\n    padding-bottom: 0.25rem !important; }\n  .pb-lg-2 {\n    padding-bottom: 0.5rem !important; }\n  .pb-lg-3 {\n    padding-bottom: 1rem !important; }\n  .pb-lg-4 {\n    padding-bottom: 1.5rem !important; }\n  .pb-lg-5 {\n    padding-bottom: 3rem !important; }\n  .pb-lg-6 {\n    padding-bottom: 5rem !important; }\n  .pb-lg-7 {\n    padding-bottom: 8rem !important; }\n  .pb-lg-8 {\n    padding-bottom: 10rem !important; }\n  .pb-lg-9 {\n    padding-bottom: 11rem !important; }\n  .pb-lg-10 {\n    padding-bottom: 14rem !important; }\n  .pb-lg-11 {\n    padding-bottom: 16rem !important; }\n  .pb-lg-12 {\n    padding-bottom: 20rem !important; }\n  .pb-lg-sm {\n    padding-bottom: 1rem !important; }\n  .pb-lg-md {\n    padding-bottom: 2rem !important; }\n  .pb-lg-lg {\n    padding-bottom: 4rem !important; }\n  .pb-lg-xl {\n    padding-bottom: 8rem !important; }\n  .ps-lg-0 {\n    padding-left: 0 !important; }\n  .ps-lg-1 {\n    padding-left: 0.25rem !important; }\n  .ps-lg-2 {\n    padding-left: 0.5rem !important; }\n  .ps-lg-3 {\n    padding-left: 1rem !important; }\n  .ps-lg-4 {\n    padding-left: 1.5rem !important; }\n  .ps-lg-5 {\n    padding-left: 3rem !important; }\n  .ps-lg-6 {\n    padding-left: 5rem !important; }\n  .ps-lg-7 {\n    padding-left: 8rem !important; }\n  .ps-lg-8 {\n    padding-left: 10rem !important; }\n  .ps-lg-9 {\n    padding-left: 11rem !important; }\n  .ps-lg-10 {\n    padding-left: 14rem !important; }\n  .ps-lg-11 {\n    padding-left: 16rem !important; }\n  .ps-lg-12 {\n    padding-left: 20rem !important; }\n  .ps-lg-sm {\n    padding-left: 1rem !important; }\n  .ps-lg-md {\n    padding-left: 2rem !important; }\n  .ps-lg-lg {\n    padding-left: 4rem !important; }\n  .ps-lg-xl {\n    padding-left: 8rem !important; }\n  .text-lg-start {\n    text-align: left !important; }\n  .text-lg-end {\n    text-align: right !important; }\n  .text-lg-center {\n    text-align: center !important; } }\n\n@media (min-width: 1200px) {\n  .float-xl-start {\n    float: left !important; }\n  .float-xl-end {\n    float: right !important; }\n  .float-xl-none {\n    float: none !important; }\n  .d-xl-inline {\n    display: inline !important; }\n  .d-xl-inline-block {\n    display: inline-block !important; }\n  .d-xl-block {\n    display: block !important; }\n  .d-xl-grid {\n    display: grid !important; }\n  .d-xl-table {\n    display: table !important; }\n  .d-xl-table-row {\n    display: table-row !important; }\n  .d-xl-table-cell {\n    display: table-cell !important; }\n  .d-xl-flex {\n    display: flex !important; }\n  .d-xl-inline-flex {\n    display: inline-flex !important; }\n  .d-xl-none {\n    display: none !important; }\n  .vh-xl-100 {\n    height: 100vh !important; }\n  .flex-xl-fill {\n    flex: 1 1 auto !important; }\n  .flex-xl-row {\n    flex-direction: row !important; }\n  .flex-xl-column {\n    flex-direction: column !important; }\n  .flex-xl-row-reverse {\n    flex-direction: row-reverse !important; }\n  .flex-xl-column-reverse {\n    flex-direction: column-reverse !important; }\n  .flex-xl-grow-0 {\n    flex-grow: 0 !important; }\n  .flex-xl-grow-1 {\n    flex-grow: 1 !important; }\n  .flex-xl-shrink-0 {\n    flex-shrink: 0 !important; }\n  .flex-xl-shrink-1 {\n    flex-shrink: 1 !important; }\n  .flex-xl-wrap {\n    flex-wrap: wrap !important; }\n  .flex-xl-nowrap {\n    flex-wrap: nowrap !important; }\n  .flex-xl-wrap-reverse {\n    flex-wrap: wrap-reverse !important; }\n  .gap-xl-0 {\n    gap: 0 !important; }\n  .gap-xl-1 {\n    gap: 0.25rem !important; }\n  .gap-xl-2 {\n    gap: 0.5rem !important; }\n  .gap-xl-3 {\n    gap: 1rem !important; }\n  .gap-xl-4 {\n    gap: 1.5rem !important; }\n  .gap-xl-5 {\n    gap: 3rem !important; }\n  .gap-xl-6 {\n    gap: 5rem !important; }\n  .gap-xl-7 {\n    gap: 8rem !important; }\n  .gap-xl-8 {\n    gap: 10rem !important; }\n  .gap-xl-9 {\n    gap: 11rem !important; }\n  .gap-xl-10 {\n    gap: 14rem !important; }\n  .gap-xl-11 {\n    gap: 16rem !important; }\n  .gap-xl-12 {\n    gap: 20rem !important; }\n  .gap-xl-sm {\n    gap: 1rem !important; }\n  .gap-xl-md {\n    gap: 2rem !important; }\n  .gap-xl-lg {\n    gap: 4rem !important; }\n  .gap-xl-xl {\n    gap: 8rem !important; }\n  .justify-content-xl-start {\n    justify-content: flex-start !important; }\n  .justify-content-xl-end {\n    justify-content: flex-end !important; }\n  .justify-content-xl-center {\n    justify-content: center !important; }\n  .justify-content-xl-between {\n    justify-content: space-between !important; }\n  .justify-content-xl-around {\n    justify-content: space-around !important; }\n  .justify-content-xl-evenly {\n    justify-content: space-evenly !important; }\n  .align-items-xl-start {\n    align-items: flex-start !important; }\n  .align-items-xl-end {\n    align-items: flex-end !important; }\n  .align-items-xl-center {\n    align-items: center !important; }\n  .align-items-xl-baseline {\n    align-items: baseline !important; }\n  .align-items-xl-stretch {\n    align-items: stretch !important; }\n  .align-content-xl-start {\n    align-content: flex-start !important; }\n  .align-content-xl-end {\n    align-content: flex-end !important; }\n  .align-content-xl-center {\n    align-content: center !important; }\n  .align-content-xl-between {\n    align-content: space-between !important; }\n  .align-content-xl-around {\n    align-content: space-around !important; }\n  .align-content-xl-stretch {\n    align-content: stretch !important; }\n  .align-self-xl-auto {\n    align-self: auto !important; }\n  .align-self-xl-start {\n    align-self: flex-start !important; }\n  .align-self-xl-end {\n    align-self: flex-end !important; }\n  .align-self-xl-center {\n    align-self: center !important; }\n  .align-self-xl-baseline {\n    align-self: baseline !important; }\n  .align-self-xl-stretch {\n    align-self: stretch !important; }\n  .order-xl-first {\n    order: -1 !important; }\n  .order-xl-0 {\n    order: 0 !important; }\n  .order-xl-1 {\n    order: 1 !important; }\n  .order-xl-2 {\n    order: 2 !important; }\n  .order-xl-3 {\n    order: 3 !important; }\n  .order-xl-4 {\n    order: 4 !important; }\n  .order-xl-5 {\n    order: 5 !important; }\n  .order-xl-last {\n    order: 6 !important; }\n  .m-xl-0 {\n    margin: 0 !important; }\n  .m-xl-1 {\n    margin: 0.25rem !important; }\n  .m-xl-2 {\n    margin: 0.5rem !important; }\n  .m-xl-3 {\n    margin: 1rem !important; }\n  .m-xl-4 {\n    margin: 1.5rem !important; }\n  .m-xl-5 {\n    margin: 3rem !important; }\n  .m-xl-6 {\n    margin: 5rem !important; }\n  .m-xl-7 {\n    margin: 8rem !important; }\n  .m-xl-8 {\n    margin: 10rem !important; }\n  .m-xl-9 {\n    margin: 11rem !important; }\n  .m-xl-10 {\n    margin: 14rem !important; }\n  .m-xl-11 {\n    margin: 16rem !important; }\n  .m-xl-12 {\n    margin: 20rem !important; }\n  .m-xl-sm {\n    margin: 1rem !important; }\n  .m-xl-md {\n    margin: 2rem !important; }\n  .m-xl-lg {\n    margin: 4rem !important; }\n  .m-xl-xl {\n    margin: 8rem !important; }\n  .m-xl-auto {\n    margin: auto !important; }\n  .mx-xl-0 {\n    margin-right: 0 !important;\n    margin-left: 0 !important; }\n  .mx-xl-1 {\n    margin-right: 0.25rem !important;\n    margin-left: 0.25rem !important; }\n  .mx-xl-2 {\n    margin-right: 0.5rem !important;\n    margin-left: 0.5rem !important; }\n  .mx-xl-3 {\n    margin-right: 1rem !important;\n    margin-left: 1rem !important; }\n  .mx-xl-4 {\n    margin-right: 1.5rem !important;\n    margin-left: 1.5rem !important; }\n  .mx-xl-5 {\n    margin-right: 3rem !important;\n    margin-left: 3rem !important; }\n  .mx-xl-6 {\n    margin-right: 5rem !important;\n    margin-left: 5rem !important; }\n  .mx-xl-7 {\n    margin-right: 8rem !important;\n    margin-left: 8rem !important; }\n  .mx-xl-8 {\n    margin-right: 10rem !important;\n    margin-left: 10rem !important; }\n  .mx-xl-9 {\n    margin-right: 11rem !important;\n    margin-left: 11rem !important; }\n  .mx-xl-10 {\n    margin-right: 14rem !important;\n    margin-left: 14rem !important; }\n  .mx-xl-11 {\n    margin-right: 16rem !important;\n    margin-left: 16rem !important; }\n  .mx-xl-12 {\n    margin-right: 20rem !important;\n    margin-left: 20rem !important; }\n  .mx-xl-sm {\n    margin-right: 1rem !important;\n    margin-left: 1rem !important; }\n  .mx-xl-md {\n    margin-right: 2rem !important;\n    margin-left: 2rem !important; }\n  .mx-xl-lg {\n    margin-right: 4rem !important;\n    margin-left: 4rem !important; }\n  .mx-xl-xl {\n    margin-right: 8rem !important;\n    margin-left: 8rem !important; }\n  .mx-xl-auto {\n    margin-right: auto !important;\n    margin-left: auto !important; }\n  .my-xl-0 {\n    margin-top: 0 !important;\n    margin-bottom: 0 !important; }\n  .my-xl-1 {\n    margin-top: 0.25rem !important;\n    margin-bottom: 0.25rem !important; }\n  .my-xl-2 {\n    margin-top: 0.5rem !important;\n    margin-bottom: 0.5rem !important; }\n  .my-xl-3 {\n    margin-top: 1rem !important;\n    margin-bottom: 1rem !important; }\n  .my-xl-4 {\n    margin-top: 1.5rem !important;\n    margin-bottom: 1.5rem !important; }\n  .my-xl-5 {\n    margin-top: 3rem !important;\n    margin-bottom: 3rem !important; }\n  .my-xl-6 {\n    margin-top: 5rem !important;\n    margin-bottom: 5rem !important; }\n  .my-xl-7 {\n    margin-top: 8rem !important;\n    margin-bottom: 8rem !important; }\n  .my-xl-8 {\n    margin-top: 10rem !important;\n    margin-bottom: 10rem !important; }\n  .my-xl-9 {\n    margin-top: 11rem !important;\n    margin-bottom: 11rem !important; }\n  .my-xl-10 {\n    margin-top: 14rem !important;\n    margin-bottom: 14rem !important; }\n  .my-xl-11 {\n    margin-top: 16rem !important;\n    margin-bottom: 16rem !important; }\n  .my-xl-12 {\n    margin-top: 20rem !important;\n    margin-bottom: 20rem !important; }\n  .my-xl-sm {\n    margin-top: 1rem !important;\n    margin-bottom: 1rem !important; }\n  .my-xl-md {\n    margin-top: 2rem !important;\n    margin-bottom: 2rem !important; }\n  .my-xl-lg {\n    margin-top: 4rem !important;\n    margin-bottom: 4rem !important; }\n  .my-xl-xl {\n    margin-top: 8rem !important;\n    margin-bottom: 8rem !important; }\n  .my-xl-auto {\n    margin-top: auto !important;\n    margin-bottom: auto !important; }\n  .mt-xl-0 {\n    margin-top: 0 !important; }\n  .mt-xl-1 {\n    margin-top: 0.25rem !important; }\n  .mt-xl-2 {\n    margin-top: 0.5rem !important; }\n  .mt-xl-3 {\n    margin-top: 1rem !important; }\n  .mt-xl-4 {\n    margin-top: 1.5rem !important; }\n  .mt-xl-5 {\n    margin-top: 3rem !important; }\n  .mt-xl-6 {\n    margin-top: 5rem !important; }\n  .mt-xl-7 {\n    margin-top: 8rem !important; }\n  .mt-xl-8 {\n    margin-top: 10rem !important; }\n  .mt-xl-9 {\n    margin-top: 11rem !important; }\n  .mt-xl-10 {\n    margin-top: 14rem !important; }\n  .mt-xl-11 {\n    margin-top: 16rem !important; }\n  .mt-xl-12 {\n    margin-top: 20rem !important; }\n  .mt-xl-sm {\n    margin-top: 1rem !important; }\n  .mt-xl-md {\n    margin-top: 2rem !important; }\n  .mt-xl-lg {\n    margin-top: 4rem !important; }\n  .mt-xl-xl {\n    margin-top: 8rem !important; }\n  .mt-xl-auto {\n    margin-top: auto !important; }\n  .me-xl-0 {\n    margin-right: 0 !important; }\n  .me-xl-1 {\n    margin-right: 0.25rem !important; }\n  .me-xl-2 {\n    margin-right: 0.5rem !important; }\n  .me-xl-3 {\n    margin-right: 1rem !important; }\n  .me-xl-4 {\n    margin-right: 1.5rem !important; }\n  .me-xl-5 {\n    margin-right: 3rem !important; }\n  .me-xl-6 {\n    margin-right: 5rem !important; }\n  .me-xl-7 {\n    margin-right: 8rem !important; }\n  .me-xl-8 {\n    margin-right: 10rem !important; }\n  .me-xl-9 {\n    margin-right: 11rem !important; }\n  .me-xl-10 {\n    margin-right: 14rem !important; }\n  .me-xl-11 {\n    margin-right: 16rem !important; }\n  .me-xl-12 {\n    margin-right: 20rem !important; }\n  .me-xl-sm {\n    margin-right: 1rem !important; }\n  .me-xl-md {\n    margin-right: 2rem !important; }\n  .me-xl-lg {\n    margin-right: 4rem !important; }\n  .me-xl-xl {\n    margin-right: 8rem !important; }\n  .me-xl-auto {\n    margin-right: auto !important; }\n  .mb-xl-0 {\n    margin-bottom: 0 !important; }\n  .mb-xl-1 {\n    margin-bottom: 0.25rem !important; }\n  .mb-xl-2 {\n    margin-bottom: 0.5rem !important; }\n  .mb-xl-3 {\n    margin-bottom: 1rem !important; }\n  .mb-xl-4 {\n    margin-bottom: 1.5rem !important; }\n  .mb-xl-5 {\n    margin-bottom: 3rem !important; }\n  .mb-xl-6 {\n    margin-bottom: 5rem !important; }\n  .mb-xl-7 {\n    margin-bottom: 8rem !important; }\n  .mb-xl-8 {\n    margin-bottom: 10rem !important; }\n  .mb-xl-9 {\n    margin-bottom: 11rem !important; }\n  .mb-xl-10 {\n    margin-bottom: 14rem !important; }\n  .mb-xl-11 {\n    margin-bottom: 16rem !important; }\n  .mb-xl-12 {\n    margin-bottom: 20rem !important; }\n  .mb-xl-sm {\n    margin-bottom: 1rem !important; }\n  .mb-xl-md {\n    margin-bottom: 2rem !important; }\n  .mb-xl-lg {\n    margin-bottom: 4rem !important; }\n  .mb-xl-xl {\n    margin-bottom: 8rem !important; }\n  .mb-xl-auto {\n    margin-bottom: auto !important; }\n  .ms-xl-0 {\n    margin-left: 0 !important; }\n  .ms-xl-1 {\n    margin-left: 0.25rem !important; }\n  .ms-xl-2 {\n    margin-left: 0.5rem !important; }\n  .ms-xl-3 {\n    margin-left: 1rem !important; }\n  .ms-xl-4 {\n    margin-left: 1.5rem !important; }\n  .ms-xl-5 {\n    margin-left: 3rem !important; }\n  .ms-xl-6 {\n    margin-left: 5rem !important; }\n  .ms-xl-7 {\n    margin-left: 8rem !important; }\n  .ms-xl-8 {\n    margin-left: 10rem !important; }\n  .ms-xl-9 {\n    margin-left: 11rem !important; }\n  .ms-xl-10 {\n    margin-left: 14rem !important; }\n  .ms-xl-11 {\n    margin-left: 16rem !important; }\n  .ms-xl-12 {\n    margin-left: 20rem !important; }\n  .ms-xl-sm {\n    margin-left: 1rem !important; }\n  .ms-xl-md {\n    margin-left: 2rem !important; }\n  .ms-xl-lg {\n    margin-left: 4rem !important; }\n  .ms-xl-xl {\n    margin-left: 8rem !important; }\n  .ms-xl-auto {\n    margin-left: auto !important; }\n  .m-xl-n1 {\n    margin: -0.25rem !important; }\n  .m-xl-n2 {\n    margin: -0.5rem !important; }\n  .m-xl-n3 {\n    margin: -1rem !important; }\n  .m-xl-n4 {\n    margin: -1.5rem !important; }\n  .m-xl-n5 {\n    margin: -3rem !important; }\n  .m-xl-n6 {\n    margin: -5rem !important; }\n  .m-xl-n7 {\n    margin: -8rem !important; }\n  .m-xl-n8 {\n    margin: -10rem !important; }\n  .m-xl-n9 {\n    margin: -11rem !important; }\n  .m-xl-n10 {\n    margin: -14rem !important; }\n  .m-xl-n11 {\n    margin: -16rem !important; }\n  .m-xl-n12 {\n    margin: -20rem !important; }\n  .m-xl-nsm {\n    margin: -1rem !important; }\n  .m-xl-nmd {\n    margin: -2rem !important; }\n  .m-xl-nlg {\n    margin: -4rem !important; }\n  .m-xl-nxl {\n    margin: -8rem !important; }\n  .mx-xl-n1 {\n    margin-right: -0.25rem !important;\n    margin-left: -0.25rem !important; }\n  .mx-xl-n2 {\n    margin-right: -0.5rem !important;\n    margin-left: -0.5rem !important; }\n  .mx-xl-n3 {\n    margin-right: -1rem !important;\n    margin-left: -1rem !important; }\n  .mx-xl-n4 {\n    margin-right: -1.5rem !important;\n    margin-left: -1.5rem !important; }\n  .mx-xl-n5 {\n    margin-right: -3rem !important;\n    margin-left: -3rem !important; }\n  .mx-xl-n6 {\n    margin-right: -5rem !important;\n    margin-left: -5rem !important; }\n  .mx-xl-n7 {\n    margin-right: -8rem !important;\n    margin-left: -8rem !important; }\n  .mx-xl-n8 {\n    margin-right: -10rem !important;\n    margin-left: -10rem !important; }\n  .mx-xl-n9 {\n    margin-right: -11rem !important;\n    margin-left: -11rem !important; }\n  .mx-xl-n10 {\n    margin-right: -14rem !important;\n    margin-left: -14rem !important; }\n  .mx-xl-n11 {\n    margin-right: -16rem !important;\n    margin-left: -16rem !important; }\n  .mx-xl-n12 {\n    margin-right: -20rem !important;\n    margin-left: -20rem !important; }\n  .mx-xl-nsm {\n    margin-right: -1rem !important;\n    margin-left: -1rem !important; }\n  .mx-xl-nmd {\n    margin-right: -2rem !important;\n    margin-left: -2rem !important; }\n  .mx-xl-nlg {\n    margin-right: -4rem !important;\n    margin-left: -4rem !important; }\n  .mx-xl-nxl {\n    margin-right: -8rem !important;\n    margin-left: -8rem !important; }\n  .my-xl-n1 {\n    margin-top: -0.25rem !important;\n    margin-bottom: -0.25rem !important; }\n  .my-xl-n2 {\n    margin-top: -0.5rem !important;\n    margin-bottom: -0.5rem !important; }\n  .my-xl-n3 {\n    margin-top: -1rem !important;\n    margin-bottom: -1rem !important; }\n  .my-xl-n4 {\n    margin-top: -1.5rem !important;\n    margin-bottom: -1.5rem !important; }\n  .my-xl-n5 {\n    margin-top: -3rem !important;\n    margin-bottom: -3rem !important; }\n  .my-xl-n6 {\n    margin-top: -5rem !important;\n    margin-bottom: -5rem !important; }\n  .my-xl-n7 {\n    margin-top: -8rem !important;\n    margin-bottom: -8rem !important; }\n  .my-xl-n8 {\n    margin-top: -10rem !important;\n    margin-bottom: -10rem !important; }\n  .my-xl-n9 {\n    margin-top: -11rem !important;\n    margin-bottom: -11rem !important; }\n  .my-xl-n10 {\n    margin-top: -14rem !important;\n    margin-bottom: -14rem !important; }\n  .my-xl-n11 {\n    margin-top: -16rem !important;\n    margin-bottom: -16rem !important; }\n  .my-xl-n12 {\n    margin-top: -20rem !important;\n    margin-bottom: -20rem !important; }\n  .my-xl-nsm {\n    margin-top: -1rem !important;\n    margin-bottom: -1rem !important; }\n  .my-xl-nmd {\n    margin-top: -2rem !important;\n    margin-bottom: -2rem !important; }\n  .my-xl-nlg {\n    margin-top: -4rem !important;\n    margin-bottom: -4rem !important; }\n  .my-xl-nxl {\n    margin-top: -8rem !important;\n    margin-bottom: -8rem !important; }\n  .mt-xl-n1 {\n    margin-top: -0.25rem !important; }\n  .mt-xl-n2 {\n    margin-top: -0.5rem !important; }\n  .mt-xl-n3 {\n    margin-top: -1rem !important; }\n  .mt-xl-n4 {\n    margin-top: -1.5rem !important; }\n  .mt-xl-n5 {\n    margin-top: -3rem !important; }\n  .mt-xl-n6 {\n    margin-top: -5rem !important; }\n  .mt-xl-n7 {\n    margin-top: -8rem !important; }\n  .mt-xl-n8 {\n    margin-top: -10rem !important; }\n  .mt-xl-n9 {\n    margin-top: -11rem !important; }\n  .mt-xl-n10 {\n    margin-top: -14rem !important; }\n  .mt-xl-n11 {\n    margin-top: -16rem !important; }\n  .mt-xl-n12 {\n    margin-top: -20rem !important; }\n  .mt-xl-nsm {\n    margin-top: -1rem !important; }\n  .mt-xl-nmd {\n    margin-top: -2rem !important; }\n  .mt-xl-nlg {\n    margin-top: -4rem !important; }\n  .mt-xl-nxl {\n    margin-top: -8rem !important; }\n  .me-xl-n1 {\n    margin-right: -0.25rem !important; }\n  .me-xl-n2 {\n    margin-right: -0.5rem !important; }\n  .me-xl-n3 {\n    margin-right: -1rem !important; }\n  .me-xl-n4 {\n    margin-right: -1.5rem !important; }\n  .me-xl-n5 {\n    margin-right: -3rem !important; }\n  .me-xl-n6 {\n    margin-right: -5rem !important; }\n  .me-xl-n7 {\n    margin-right: -8rem !important; }\n  .me-xl-n8 {\n    margin-right: -10rem !important; }\n  .me-xl-n9 {\n    margin-right: -11rem !important; }\n  .me-xl-n10 {\n    margin-right: -14rem !important; }\n  .me-xl-n11 {\n    margin-right: -16rem !important; }\n  .me-xl-n12 {\n    margin-right: -20rem !important; }\n  .me-xl-nsm {\n    margin-right: -1rem !important; }\n  .me-xl-nmd {\n    margin-right: -2rem !important; }\n  .me-xl-nlg {\n    margin-right: -4rem !important; }\n  .me-xl-nxl {\n    margin-right: -8rem !important; }\n  .mb-xl-n1 {\n    margin-bottom: -0.25rem !important; }\n  .mb-xl-n2 {\n    margin-bottom: -0.5rem !important; }\n  .mb-xl-n3 {\n    margin-bottom: -1rem !important; }\n  .mb-xl-n4 {\n    margin-bottom: -1.5rem !important; }\n  .mb-xl-n5 {\n    margin-bottom: -3rem !important; }\n  .mb-xl-n6 {\n    margin-bottom: -5rem !important; }\n  .mb-xl-n7 {\n    margin-bottom: -8rem !important; }\n  .mb-xl-n8 {\n    margin-bottom: -10rem !important; }\n  .mb-xl-n9 {\n    margin-bottom: -11rem !important; }\n  .mb-xl-n10 {\n    margin-bottom: -14rem !important; }\n  .mb-xl-n11 {\n    margin-bottom: -16rem !important; }\n  .mb-xl-n12 {\n    margin-bottom: -20rem !important; }\n  .mb-xl-nsm {\n    margin-bottom: -1rem !important; }\n  .mb-xl-nmd {\n    margin-bottom: -2rem !important; }\n  .mb-xl-nlg {\n    margin-bottom: -4rem !important; }\n  .mb-xl-nxl {\n    margin-bottom: -8rem !important; }\n  .ms-xl-n1 {\n    margin-left: -0.25rem !important; }\n  .ms-xl-n2 {\n    margin-left: -0.5rem !important; }\n  .ms-xl-n3 {\n    margin-left: -1rem !important; }\n  .ms-xl-n4 {\n    margin-left: -1.5rem !important; }\n  .ms-xl-n5 {\n    margin-left: -3rem !important; }\n  .ms-xl-n6 {\n    margin-left: -5rem !important; }\n  .ms-xl-n7 {\n    margin-left: -8rem !important; }\n  .ms-xl-n8 {\n    margin-left: -10rem !important; }\n  .ms-xl-n9 {\n    margin-left: -11rem !important; }\n  .ms-xl-n10 {\n    margin-left: -14rem !important; }\n  .ms-xl-n11 {\n    margin-left: -16rem !important; }\n  .ms-xl-n12 {\n    margin-left: -20rem !important; }\n  .ms-xl-nsm {\n    margin-left: -1rem !important; }\n  .ms-xl-nmd {\n    margin-left: -2rem !important; }\n  .ms-xl-nlg {\n    margin-left: -4rem !important; }\n  .ms-xl-nxl {\n    margin-left: -8rem !important; }\n  .p-xl-0 {\n    padding: 0 !important; }\n  .p-xl-1 {\n    padding: 0.25rem !important; }\n  .p-xl-2 {\n    padding: 0.5rem !important; }\n  .p-xl-3 {\n    padding: 1rem !important; }\n  .p-xl-4 {\n    padding: 1.5rem !important; }\n  .p-xl-5 {\n    padding: 3rem !important; }\n  .p-xl-6 {\n    padding: 5rem !important; }\n  .p-xl-7 {\n    padding: 8rem !important; }\n  .p-xl-8 {\n    padding: 10rem !important; }\n  .p-xl-9 {\n    padding: 11rem !important; }\n  .p-xl-10 {\n    padding: 14rem !important; }\n  .p-xl-11 {\n    padding: 16rem !important; }\n  .p-xl-12 {\n    padding: 20rem !important; }\n  .p-xl-sm {\n    padding: 1rem !important; }\n  .p-xl-md {\n    padding: 2rem !important; }\n  .p-xl-lg {\n    padding: 4rem !important; }\n  .p-xl-xl {\n    padding: 8rem !important; }\n  .px-xl-0 {\n    padding-right: 0 !important;\n    padding-left: 0 !important; }\n  .px-xl-1 {\n    padding-right: 0.25rem !important;\n    padding-left: 0.25rem !important; }\n  .px-xl-2 {\n    padding-right: 0.5rem !important;\n    padding-left: 0.5rem !important; }\n  .px-xl-3 {\n    padding-right: 1rem !important;\n    padding-left: 1rem !important; }\n  .px-xl-4 {\n    padding-right: 1.5rem !important;\n    padding-left: 1.5rem !important; }\n  .px-xl-5 {\n    padding-right: 3rem !important;\n    padding-left: 3rem !important; }\n  .px-xl-6 {\n    padding-right: 5rem !important;\n    padding-left: 5rem !important; }\n  .px-xl-7 {\n    padding-right: 8rem !important;\n    padding-left: 8rem !important; }\n  .px-xl-8 {\n    padding-right: 10rem !important;\n    padding-left: 10rem !important; }\n  .px-xl-9 {\n    padding-right: 11rem !important;\n    padding-left: 11rem !important; }\n  .px-xl-10 {\n    padding-right: 14rem !important;\n    padding-left: 14rem !important; }\n  .px-xl-11 {\n    padding-right: 16rem !important;\n    padding-left: 16rem !important; }\n  .px-xl-12 {\n    padding-right: 20rem !important;\n    padding-left: 20rem !important; }\n  .px-xl-sm {\n    padding-right: 1rem !important;\n    padding-left: 1rem !important; }\n  .px-xl-md {\n    padding-right: 2rem !important;\n    padding-left: 2rem !important; }\n  .px-xl-lg {\n    padding-right: 4rem !important;\n    padding-left: 4rem !important; }\n  .px-xl-xl {\n    padding-right: 8rem !important;\n    padding-left: 8rem !important; }\n  .py-xl-0 {\n    padding-top: 0 !important;\n    padding-bottom: 0 !important; }\n  .py-xl-1 {\n    padding-top: 0.25rem !important;\n    padding-bottom: 0.25rem !important; }\n  .py-xl-2 {\n    padding-top: 0.5rem !important;\n    padding-bottom: 0.5rem !important; }\n  .py-xl-3 {\n    padding-top: 1rem !important;\n    padding-bottom: 1rem !important; }\n  .py-xl-4 {\n    padding-top: 1.5rem !important;\n    padding-bottom: 1.5rem !important; }\n  .py-xl-5 {\n    padding-top: 3rem !important;\n    padding-bottom: 3rem !important; }\n  .py-xl-6 {\n    padding-top: 5rem !important;\n    padding-bottom: 5rem !important; }\n  .py-xl-7 {\n    padding-top: 8rem !important;\n    padding-bottom: 8rem !important; }\n  .py-xl-8 {\n    padding-top: 10rem !important;\n    padding-bottom: 10rem !important; }\n  .py-xl-9 {\n    padding-top: 11rem !important;\n    padding-bottom: 11rem !important; }\n  .py-xl-10 {\n    padding-top: 14rem !important;\n    padding-bottom: 14rem !important; }\n  .py-xl-11 {\n    padding-top: 16rem !important;\n    padding-bottom: 16rem !important; }\n  .py-xl-12 {\n    padding-top: 20rem !important;\n    padding-bottom: 20rem !important; }\n  .py-xl-sm {\n    padding-top: 1rem !important;\n    padding-bottom: 1rem !important; }\n  .py-xl-md {\n    padding-top: 2rem !important;\n    padding-bottom: 2rem !important; }\n  .py-xl-lg {\n    padding-top: 4rem !important;\n    padding-bottom: 4rem !important; }\n  .py-xl-xl {\n    padding-top: 8rem !important;\n    padding-bottom: 8rem !important; }\n  .pt-xl-0 {\n    padding-top: 0 !important; }\n  .pt-xl-1 {\n    padding-top: 0.25rem !important; }\n  .pt-xl-2 {\n    padding-top: 0.5rem !important; }\n  .pt-xl-3 {\n    padding-top: 1rem !important; }\n  .pt-xl-4 {\n    padding-top: 1.5rem !important; }\n  .pt-xl-5 {\n    padding-top: 3rem !important; }\n  .pt-xl-6 {\n    padding-top: 5rem !important; }\n  .pt-xl-7 {\n    padding-top: 8rem !important; }\n  .pt-xl-8 {\n    padding-top: 10rem !important; }\n  .pt-xl-9 {\n    padding-top: 11rem !important; }\n  .pt-xl-10 {\n    padding-top: 14rem !important; }\n  .pt-xl-11 {\n    padding-top: 16rem !important; }\n  .pt-xl-12 {\n    padding-top: 20rem !important; }\n  .pt-xl-sm {\n    padding-top: 1rem !important; }\n  .pt-xl-md {\n    padding-top: 2rem !important; }\n  .pt-xl-lg {\n    padding-top: 4rem !important; }\n  .pt-xl-xl {\n    padding-top: 8rem !important; }\n  .pe-xl-0 {\n    padding-right: 0 !important; }\n  .pe-xl-1 {\n    padding-right: 0.25rem !important; }\n  .pe-xl-2 {\n    padding-right: 0.5rem !important; }\n  .pe-xl-3 {\n    padding-right: 1rem !important; }\n  .pe-xl-4 {\n    padding-right: 1.5rem !important; }\n  .pe-xl-5 {\n    padding-right: 3rem !important; }\n  .pe-xl-6 {\n    padding-right: 5rem !important; }\n  .pe-xl-7 {\n    padding-right: 8rem !important; }\n  .pe-xl-8 {\n    padding-right: 10rem !important; }\n  .pe-xl-9 {\n    padding-right: 11rem !important; }\n  .pe-xl-10 {\n    padding-right: 14rem !important; }\n  .pe-xl-11 {\n    padding-right: 16rem !important; }\n  .pe-xl-12 {\n    padding-right: 20rem !important; }\n  .pe-xl-sm {\n    padding-right: 1rem !important; }\n  .pe-xl-md {\n    padding-right: 2rem !important; }\n  .pe-xl-lg {\n    padding-right: 4rem !important; }\n  .pe-xl-xl {\n    padding-right: 8rem !important; }\n  .pb-xl-0 {\n    padding-bottom: 0 !important; }\n  .pb-xl-1 {\n    padding-bottom: 0.25rem !important; }\n  .pb-xl-2 {\n    padding-bottom: 0.5rem !important; }\n  .pb-xl-3 {\n    padding-bottom: 1rem !important; }\n  .pb-xl-4 {\n    padding-bottom: 1.5rem !important; }\n  .pb-xl-5 {\n    padding-bottom: 3rem !important; }\n  .pb-xl-6 {\n    padding-bottom: 5rem !important; }\n  .pb-xl-7 {\n    padding-bottom: 8rem !important; }\n  .pb-xl-8 {\n    padding-bottom: 10rem !important; }\n  .pb-xl-9 {\n    padding-bottom: 11rem !important; }\n  .pb-xl-10 {\n    padding-bottom: 14rem !important; }\n  .pb-xl-11 {\n    padding-bottom: 16rem !important; }\n  .pb-xl-12 {\n    padding-bottom: 20rem !important; }\n  .pb-xl-sm {\n    padding-bottom: 1rem !important; }\n  .pb-xl-md {\n    padding-bottom: 2rem !important; }\n  .pb-xl-lg {\n    padding-bottom: 4rem !important; }\n  .pb-xl-xl {\n    padding-bottom: 8rem !important; }\n  .ps-xl-0 {\n    padding-left: 0 !important; }\n  .ps-xl-1 {\n    padding-left: 0.25rem !important; }\n  .ps-xl-2 {\n    padding-left: 0.5rem !important; }\n  .ps-xl-3 {\n    padding-left: 1rem !important; }\n  .ps-xl-4 {\n    padding-left: 1.5rem !important; }\n  .ps-xl-5 {\n    padding-left: 3rem !important; }\n  .ps-xl-6 {\n    padding-left: 5rem !important; }\n  .ps-xl-7 {\n    padding-left: 8rem !important; }\n  .ps-xl-8 {\n    padding-left: 10rem !important; }\n  .ps-xl-9 {\n    padding-left: 11rem !important; }\n  .ps-xl-10 {\n    padding-left: 14rem !important; }\n  .ps-xl-11 {\n    padding-left: 16rem !important; }\n  .ps-xl-12 {\n    padding-left: 20rem !important; }\n  .ps-xl-sm {\n    padding-left: 1rem !important; }\n  .ps-xl-md {\n    padding-left: 2rem !important; }\n  .ps-xl-lg {\n    padding-left: 4rem !important; }\n  .ps-xl-xl {\n    padding-left: 8rem !important; }\n  .text-xl-start {\n    text-align: left !important; }\n  .text-xl-end {\n    text-align: right !important; }\n  .text-xl-center {\n    text-align: center !important; } }\n\n@media (min-width: 1400px) {\n  .float-xxl-start {\n    float: left !important; }\n  .float-xxl-end {\n    float: right !important; }\n  .float-xxl-none {\n    float: none !important; }\n  .d-xxl-inline {\n    display: inline !important; }\n  .d-xxl-inline-block {\n    display: inline-block !important; }\n  .d-xxl-block {\n    display: block !important; }\n  .d-xxl-grid {\n    display: grid !important; }\n  .d-xxl-table {\n    display: table !important; }\n  .d-xxl-table-row {\n    display: table-row !important; }\n  .d-xxl-table-cell {\n    display: table-cell !important; }\n  .d-xxl-flex {\n    display: flex !important; }\n  .d-xxl-inline-flex {\n    display: inline-flex !important; }\n  .d-xxl-none {\n    display: none !important; }\n  .vh-xxl-100 {\n    height: 100vh !important; }\n  .flex-xxl-fill {\n    flex: 1 1 auto !important; }\n  .flex-xxl-row {\n    flex-direction: row !important; }\n  .flex-xxl-column {\n    flex-direction: column !important; }\n  .flex-xxl-row-reverse {\n    flex-direction: row-reverse !important; }\n  .flex-xxl-column-reverse {\n    flex-direction: column-reverse !important; }\n  .flex-xxl-grow-0 {\n    flex-grow: 0 !important; }\n  .flex-xxl-grow-1 {\n    flex-grow: 1 !important; }\n  .flex-xxl-shrink-0 {\n    flex-shrink: 0 !important; }\n  .flex-xxl-shrink-1 {\n    flex-shrink: 1 !important; }\n  .flex-xxl-wrap {\n    flex-wrap: wrap !important; }\n  .flex-xxl-nowrap {\n    flex-wrap: nowrap !important; }\n  .flex-xxl-wrap-reverse {\n    flex-wrap: wrap-reverse !important; }\n  .gap-xxl-0 {\n    gap: 0 !important; }\n  .gap-xxl-1 {\n    gap: 0.25rem !important; }\n  .gap-xxl-2 {\n    gap: 0.5rem !important; }\n  .gap-xxl-3 {\n    gap: 1rem !important; }\n  .gap-xxl-4 {\n    gap: 1.5rem !important; }\n  .gap-xxl-5 {\n    gap: 3rem !important; }\n  .gap-xxl-6 {\n    gap: 5rem !important; }\n  .gap-xxl-7 {\n    gap: 8rem !important; }\n  .gap-xxl-8 {\n    gap: 10rem !important; }\n  .gap-xxl-9 {\n    gap: 11rem !important; }\n  .gap-xxl-10 {\n    gap: 14rem !important; }\n  .gap-xxl-11 {\n    gap: 16rem !important; }\n  .gap-xxl-12 {\n    gap: 20rem !important; }\n  .gap-xxl-sm {\n    gap: 1rem !important; }\n  .gap-xxl-md {\n    gap: 2rem !important; }\n  .gap-xxl-lg {\n    gap: 4rem !important; }\n  .gap-xxl-xl {\n    gap: 8rem !important; }\n  .justify-content-xxl-start {\n    justify-content: flex-start !important; }\n  .justify-content-xxl-end {\n    justify-content: flex-end !important; }\n  .justify-content-xxl-center {\n    justify-content: center !important; }\n  .justify-content-xxl-between {\n    justify-content: space-between !important; }\n  .justify-content-xxl-around {\n    justify-content: space-around !important; }\n  .justify-content-xxl-evenly {\n    justify-content: space-evenly !important; }\n  .align-items-xxl-start {\n    align-items: flex-start !important; }\n  .align-items-xxl-end {\n    align-items: flex-end !important; }\n  .align-items-xxl-center {\n    align-items: center !important; }\n  .align-items-xxl-baseline {\n    align-items: baseline !important; }\n  .align-items-xxl-stretch {\n    align-items: stretch !important; }\n  .align-content-xxl-start {\n    align-content: flex-start !important; }\n  .align-content-xxl-end {\n    align-content: flex-end !important; }\n  .align-content-xxl-center {\n    align-content: center !important; }\n  .align-content-xxl-between {\n    align-content: space-between !important; }\n  .align-content-xxl-around {\n    align-content: space-around !important; }\n  .align-content-xxl-stretch {\n    align-content: stretch !important; }\n  .align-self-xxl-auto {\n    align-self: auto !important; }\n  .align-self-xxl-start {\n    align-self: flex-start !important; }\n  .align-self-xxl-end {\n    align-self: flex-end !important; }\n  .align-self-xxl-center {\n    align-self: center !important; }\n  .align-self-xxl-baseline {\n    align-self: baseline !important; }\n  .align-self-xxl-stretch {\n    align-self: stretch !important; }\n  .order-xxl-first {\n    order: -1 !important; }\n  .order-xxl-0 {\n    order: 0 !important; }\n  .order-xxl-1 {\n    order: 1 !important; }\n  .order-xxl-2 {\n    order: 2 !important; }\n  .order-xxl-3 {\n    order: 3 !important; }\n  .order-xxl-4 {\n    order: 4 !important; }\n  .order-xxl-5 {\n    order: 5 !important; }\n  .order-xxl-last {\n    order: 6 !important; }\n  .m-xxl-0 {\n    margin: 0 !important; }\n  .m-xxl-1 {\n    margin: 0.25rem !important; }\n  .m-xxl-2 {\n    margin: 0.5rem !important; }\n  .m-xxl-3 {\n    margin: 1rem !important; }\n  .m-xxl-4 {\n    margin: 1.5rem !important; }\n  .m-xxl-5 {\n    margin: 3rem !important; }\n  .m-xxl-6 {\n    margin: 5rem !important; }\n  .m-xxl-7 {\n    margin: 8rem !important; }\n  .m-xxl-8 {\n    margin: 10rem !important; }\n  .m-xxl-9 {\n    margin: 11rem !important; }\n  .m-xxl-10 {\n    margin: 14rem !important; }\n  .m-xxl-11 {\n    margin: 16rem !important; }\n  .m-xxl-12 {\n    margin: 20rem !important; }\n  .m-xxl-sm {\n    margin: 1rem !important; }\n  .m-xxl-md {\n    margin: 2rem !important; }\n  .m-xxl-lg {\n    margin: 4rem !important; }\n  .m-xxl-xl {\n    margin: 8rem !important; }\n  .m-xxl-auto {\n    margin: auto !important; }\n  .mx-xxl-0 {\n    margin-right: 0 !important;\n    margin-left: 0 !important; }\n  .mx-xxl-1 {\n    margin-right: 0.25rem !important;\n    margin-left: 0.25rem !important; }\n  .mx-xxl-2 {\n    margin-right: 0.5rem !important;\n    margin-left: 0.5rem !important; }\n  .mx-xxl-3 {\n    margin-right: 1rem !important;\n    margin-left: 1rem !important; }\n  .mx-xxl-4 {\n    margin-right: 1.5rem !important;\n    margin-left: 1.5rem !important; }\n  .mx-xxl-5 {\n    margin-right: 3rem !important;\n    margin-left: 3rem !important; }\n  .mx-xxl-6 {\n    margin-right: 5rem !important;\n    margin-left: 5rem !important; }\n  .mx-xxl-7 {\n    margin-right: 8rem !important;\n    margin-left: 8rem !important; }\n  .mx-xxl-8 {\n    margin-right: 10rem !important;\n    margin-left: 10rem !important; }\n  .mx-xxl-9 {\n    margin-right: 11rem !important;\n    margin-left: 11rem !important; }\n  .mx-xxl-10 {\n    margin-right: 14rem !important;\n    margin-left: 14rem !important; }\n  .mx-xxl-11 {\n    margin-right: 16rem !important;\n    margin-left: 16rem !important; }\n  .mx-xxl-12 {\n    margin-right: 20rem !important;\n    margin-left: 20rem !important; }\n  .mx-xxl-sm {\n    margin-right: 1rem !important;\n    margin-left: 1rem !important; }\n  .mx-xxl-md {\n    margin-right: 2rem !important;\n    margin-left: 2rem !important; }\n  .mx-xxl-lg {\n    margin-right: 4rem !important;\n    margin-left: 4rem !important; }\n  .mx-xxl-xl {\n    margin-right: 8rem !important;\n    margin-left: 8rem !important; }\n  .mx-xxl-auto {\n    margin-right: auto !important;\n    margin-left: auto !important; }\n  .my-xxl-0 {\n    margin-top: 0 !important;\n    margin-bottom: 0 !important; }\n  .my-xxl-1 {\n    margin-top: 0.25rem !important;\n    margin-bottom: 0.25rem !important; }\n  .my-xxl-2 {\n    margin-top: 0.5rem !important;\n    margin-bottom: 0.5rem !important; }\n  .my-xxl-3 {\n    margin-top: 1rem !important;\n    margin-bottom: 1rem !important; }\n  .my-xxl-4 {\n    margin-top: 1.5rem !important;\n    margin-bottom: 1.5rem !important; }\n  .my-xxl-5 {\n    margin-top: 3rem !important;\n    margin-bottom: 3rem !important; }\n  .my-xxl-6 {\n    margin-top: 5rem !important;\n    margin-bottom: 5rem !important; }\n  .my-xxl-7 {\n    margin-top: 8rem !important;\n    margin-bottom: 8rem !important; }\n  .my-xxl-8 {\n    margin-top: 10rem !important;\n    margin-bottom: 10rem !important; }\n  .my-xxl-9 {\n    margin-top: 11rem !important;\n    margin-bottom: 11rem !important; }\n  .my-xxl-10 {\n    margin-top: 14rem !important;\n    margin-bottom: 14rem !important; }\n  .my-xxl-11 {\n    margin-top: 16rem !important;\n    margin-bottom: 16rem !important; }\n  .my-xxl-12 {\n    margin-top: 20rem !important;\n    margin-bottom: 20rem !important; }\n  .my-xxl-sm {\n    margin-top: 1rem !important;\n    margin-bottom: 1rem !important; }\n  .my-xxl-md {\n    margin-top: 2rem !important;\n    margin-bottom: 2rem !important; }\n  .my-xxl-lg {\n    margin-top: 4rem !important;\n    margin-bottom: 4rem !important; }\n  .my-xxl-xl {\n    margin-top: 8rem !important;\n    margin-bottom: 8rem !important; }\n  .my-xxl-auto {\n    margin-top: auto !important;\n    margin-bottom: auto !important; }\n  .mt-xxl-0 {\n    margin-top: 0 !important; }\n  .mt-xxl-1 {\n    margin-top: 0.25rem !important; }\n  .mt-xxl-2 {\n    margin-top: 0.5rem !important; }\n  .mt-xxl-3 {\n    margin-top: 1rem !important; }\n  .mt-xxl-4 {\n    margin-top: 1.5rem !important; }\n  .mt-xxl-5 {\n    margin-top: 3rem !important; }\n  .mt-xxl-6 {\n    margin-top: 5rem !important; }\n  .mt-xxl-7 {\n    margin-top: 8rem !important; }\n  .mt-xxl-8 {\n    margin-top: 10rem !important; }\n  .mt-xxl-9 {\n    margin-top: 11rem !important; }\n  .mt-xxl-10 {\n    margin-top: 14rem !important; }\n  .mt-xxl-11 {\n    margin-top: 16rem !important; }\n  .mt-xxl-12 {\n    margin-top: 20rem !important; }\n  .mt-xxl-sm {\n    margin-top: 1rem !important; }\n  .mt-xxl-md {\n    margin-top: 2rem !important; }\n  .mt-xxl-lg {\n    margin-top: 4rem !important; }\n  .mt-xxl-xl {\n    margin-top: 8rem !important; }\n  .mt-xxl-auto {\n    margin-top: auto !important; }\n  .me-xxl-0 {\n    margin-right: 0 !important; }\n  .me-xxl-1 {\n    margin-right: 0.25rem !important; }\n  .me-xxl-2 {\n    margin-right: 0.5rem !important; }\n  .me-xxl-3 {\n    margin-right: 1rem !important; }\n  .me-xxl-4 {\n    margin-right: 1.5rem !important; }\n  .me-xxl-5 {\n    margin-right: 3rem !important; }\n  .me-xxl-6 {\n    margin-right: 5rem !important; }\n  .me-xxl-7 {\n    margin-right: 8rem !important; }\n  .me-xxl-8 {\n    margin-right: 10rem !important; }\n  .me-xxl-9 {\n    margin-right: 11rem !important; }\n  .me-xxl-10 {\n    margin-right: 14rem !important; }\n  .me-xxl-11 {\n    margin-right: 16rem !important; }\n  .me-xxl-12 {\n    margin-right: 20rem !important; }\n  .me-xxl-sm {\n    margin-right: 1rem !important; }\n  .me-xxl-md {\n    margin-right: 2rem !important; }\n  .me-xxl-lg {\n    margin-right: 4rem !important; }\n  .me-xxl-xl {\n    margin-right: 8rem !important; }\n  .me-xxl-auto {\n    margin-right: auto !important; }\n  .mb-xxl-0 {\n    margin-bottom: 0 !important; }\n  .mb-xxl-1 {\n    margin-bottom: 0.25rem !important; }\n  .mb-xxl-2 {\n    margin-bottom: 0.5rem !important; }\n  .mb-xxl-3 {\n    margin-bottom: 1rem !important; }\n  .mb-xxl-4 {\n    margin-bottom: 1.5rem !important; }\n  .mb-xxl-5 {\n    margin-bottom: 3rem !important; }\n  .mb-xxl-6 {\n    margin-bottom: 5rem !important; }\n  .mb-xxl-7 {\n    margin-bottom: 8rem !important; }\n  .mb-xxl-8 {\n    margin-bottom: 10rem !important; }\n  .mb-xxl-9 {\n    margin-bottom: 11rem !important; }\n  .mb-xxl-10 {\n    margin-bottom: 14rem !important; }\n  .mb-xxl-11 {\n    margin-bottom: 16rem !important; }\n  .mb-xxl-12 {\n    margin-bottom: 20rem !important; }\n  .mb-xxl-sm {\n    margin-bottom: 1rem !important; }\n  .mb-xxl-md {\n    margin-bottom: 2rem !important; }\n  .mb-xxl-lg {\n    margin-bottom: 4rem !important; }\n  .mb-xxl-xl {\n    margin-bottom: 8rem !important; }\n  .mb-xxl-auto {\n    margin-bottom: auto !important; }\n  .ms-xxl-0 {\n    margin-left: 0 !important; }\n  .ms-xxl-1 {\n    margin-left: 0.25rem !important; }\n  .ms-xxl-2 {\n    margin-left: 0.5rem !important; }\n  .ms-xxl-3 {\n    margin-left: 1rem !important; }\n  .ms-xxl-4 {\n    margin-left: 1.5rem !important; }\n  .ms-xxl-5 {\n    margin-left: 3rem !important; }\n  .ms-xxl-6 {\n    margin-left: 5rem !important; }\n  .ms-xxl-7 {\n    margin-left: 8rem !important; }\n  .ms-xxl-8 {\n    margin-left: 10rem !important; }\n  .ms-xxl-9 {\n    margin-left: 11rem !important; }\n  .ms-xxl-10 {\n    margin-left: 14rem !important; }\n  .ms-xxl-11 {\n    margin-left: 16rem !important; }\n  .ms-xxl-12 {\n    margin-left: 20rem !important; }\n  .ms-xxl-sm {\n    margin-left: 1rem !important; }\n  .ms-xxl-md {\n    margin-left: 2rem !important; }\n  .ms-xxl-lg {\n    margin-left: 4rem !important; }\n  .ms-xxl-xl {\n    margin-left: 8rem !important; }\n  .ms-xxl-auto {\n    margin-left: auto !important; }\n  .m-xxl-n1 {\n    margin: -0.25rem !important; }\n  .m-xxl-n2 {\n    margin: -0.5rem !important; }\n  .m-xxl-n3 {\n    margin: -1rem !important; }\n  .m-xxl-n4 {\n    margin: -1.5rem !important; }\n  .m-xxl-n5 {\n    margin: -3rem !important; }\n  .m-xxl-n6 {\n    margin: -5rem !important; }\n  .m-xxl-n7 {\n    margin: -8rem !important; }\n  .m-xxl-n8 {\n    margin: -10rem !important; }\n  .m-xxl-n9 {\n    margin: -11rem !important; }\n  .m-xxl-n10 {\n    margin: -14rem !important; }\n  .m-xxl-n11 {\n    margin: -16rem !important; }\n  .m-xxl-n12 {\n    margin: -20rem !important; }\n  .m-xxl-nsm {\n    margin: -1rem !important; }\n  .m-xxl-nmd {\n    margin: -2rem !important; }\n  .m-xxl-nlg {\n    margin: -4rem !important; }\n  .m-xxl-nxl {\n    margin: -8rem !important; }\n  .mx-xxl-n1 {\n    margin-right: -0.25rem !important;\n    margin-left: -0.25rem !important; }\n  .mx-xxl-n2 {\n    margin-right: -0.5rem !important;\n    margin-left: -0.5rem !important; }\n  .mx-xxl-n3 {\n    margin-right: -1rem !important;\n    margin-left: -1rem !important; }\n  .mx-xxl-n4 {\n    margin-right: -1.5rem !important;\n    margin-left: -1.5rem !important; }\n  .mx-xxl-n5 {\n    margin-right: -3rem !important;\n    margin-left: -3rem !important; }\n  .mx-xxl-n6 {\n    margin-right: -5rem !important;\n    margin-left: -5rem !important; }\n  .mx-xxl-n7 {\n    margin-right: -8rem !important;\n    margin-left: -8rem !important; }\n  .mx-xxl-n8 {\n    margin-right: -10rem !important;\n    margin-left: -10rem !important; }\n  .mx-xxl-n9 {\n    margin-right: -11rem !important;\n    margin-left: -11rem !important; }\n  .mx-xxl-n10 {\n    margin-right: -14rem !important;\n    margin-left: -14rem !important; }\n  .mx-xxl-n11 {\n    margin-right: -16rem !important;\n    margin-left: -16rem !important; }\n  .mx-xxl-n12 {\n    margin-right: -20rem !important;\n    margin-left: -20rem !important; }\n  .mx-xxl-nsm {\n    margin-right: -1rem !important;\n    margin-left: -1rem !important; }\n  .mx-xxl-nmd {\n    margin-right: -2rem !important;\n    margin-left: -2rem !important; }\n  .mx-xxl-nlg {\n    margin-right: -4rem !important;\n    margin-left: -4rem !important; }\n  .mx-xxl-nxl {\n    margin-right: -8rem !important;\n    margin-left: -8rem !important; }\n  .my-xxl-n1 {\n    margin-top: -0.25rem !important;\n    margin-bottom: -0.25rem !important; }\n  .my-xxl-n2 {\n    margin-top: -0.5rem !important;\n    margin-bottom: -0.5rem !important; }\n  .my-xxl-n3 {\n    margin-top: -1rem !important;\n    margin-bottom: -1rem !important; }\n  .my-xxl-n4 {\n    margin-top: -1.5rem !important;\n    margin-bottom: -1.5rem !important; }\n  .my-xxl-n5 {\n    margin-top: -3rem !important;\n    margin-bottom: -3rem !important; }\n  .my-xxl-n6 {\n    margin-top: -5rem !important;\n    margin-bottom: -5rem !important; }\n  .my-xxl-n7 {\n    margin-top: -8rem !important;\n    margin-bottom: -8rem !important; }\n  .my-xxl-n8 {\n    margin-top: -10rem !important;\n    margin-bottom: -10rem !important; }\n  .my-xxl-n9 {\n    margin-top: -11rem !important;\n    margin-bottom: -11rem !important; }\n  .my-xxl-n10 {\n    margin-top: -14rem !important;\n    margin-bottom: -14rem !important; }\n  .my-xxl-n11 {\n    margin-top: -16rem !important;\n    margin-bottom: -16rem !important; }\n  .my-xxl-n12 {\n    margin-top: -20rem !important;\n    margin-bottom: -20rem !important; }\n  .my-xxl-nsm {\n    margin-top: -1rem !important;\n    margin-bottom: -1rem !important; }\n  .my-xxl-nmd {\n    margin-top: -2rem !important;\n    margin-bottom: -2rem !important; }\n  .my-xxl-nlg {\n    margin-top: -4rem !important;\n    margin-bottom: -4rem !important; }\n  .my-xxl-nxl {\n    margin-top: -8rem !important;\n    margin-bottom: -8rem !important; }\n  .mt-xxl-n1 {\n    margin-top: -0.25rem !important; }\n  .mt-xxl-n2 {\n    margin-top: -0.5rem !important; }\n  .mt-xxl-n3 {\n    margin-top: -1rem !important; }\n  .mt-xxl-n4 {\n    margin-top: -1.5rem !important; }\n  .mt-xxl-n5 {\n    margin-top: -3rem !important; }\n  .mt-xxl-n6 {\n    margin-top: -5rem !important; }\n  .mt-xxl-n7 {\n    margin-top: -8rem !important; }\n  .mt-xxl-n8 {\n    margin-top: -10rem !important; }\n  .mt-xxl-n9 {\n    margin-top: -11rem !important; }\n  .mt-xxl-n10 {\n    margin-top: -14rem !important; }\n  .mt-xxl-n11 {\n    margin-top: -16rem !important; }\n  .mt-xxl-n12 {\n    margin-top: -20rem !important; }\n  .mt-xxl-nsm {\n    margin-top: -1rem !important; }\n  .mt-xxl-nmd {\n    margin-top: -2rem !important; }\n  .mt-xxl-nlg {\n    margin-top: -4rem !important; }\n  .mt-xxl-nxl {\n    margin-top: -8rem !important; }\n  .me-xxl-n1 {\n    margin-right: -0.25rem !important; }\n  .me-xxl-n2 {\n    margin-right: -0.5rem !important; }\n  .me-xxl-n3 {\n    margin-right: -1rem !important; }\n  .me-xxl-n4 {\n    margin-right: -1.5rem !important; }\n  .me-xxl-n5 {\n    margin-right: -3rem !important; }\n  .me-xxl-n6 {\n    margin-right: -5rem !important; }\n  .me-xxl-n7 {\n    margin-right: -8rem !important; }\n  .me-xxl-n8 {\n    margin-right: -10rem !important; }\n  .me-xxl-n9 {\n    margin-right: -11rem !important; }\n  .me-xxl-n10 {\n    margin-right: -14rem !important; }\n  .me-xxl-n11 {\n    margin-right: -16rem !important; }\n  .me-xxl-n12 {\n    margin-right: -20rem !important; }\n  .me-xxl-nsm {\n    margin-right: -1rem !important; }\n  .me-xxl-nmd {\n    margin-right: -2rem !important; }\n  .me-xxl-nlg {\n    margin-right: -4rem !important; }\n  .me-xxl-nxl {\n    margin-right: -8rem !important; }\n  .mb-xxl-n1 {\n    margin-bottom: -0.25rem !important; }\n  .mb-xxl-n2 {\n    margin-bottom: -0.5rem !important; }\n  .mb-xxl-n3 {\n    margin-bottom: -1rem !important; }\n  .mb-xxl-n4 {\n    margin-bottom: -1.5rem !important; }\n  .mb-xxl-n5 {\n    margin-bottom: -3rem !important; }\n  .mb-xxl-n6 {\n    margin-bottom: -5rem !important; }\n  .mb-xxl-n7 {\n    margin-bottom: -8rem !important; }\n  .mb-xxl-n8 {\n    margin-bottom: -10rem !important; }\n  .mb-xxl-n9 {\n    margin-bottom: -11rem !important; }\n  .mb-xxl-n10 {\n    margin-bottom: -14rem !important; }\n  .mb-xxl-n11 {\n    margin-bottom: -16rem !important; }\n  .mb-xxl-n12 {\n    margin-bottom: -20rem !important; }\n  .mb-xxl-nsm {\n    margin-bottom: -1rem !important; }\n  .mb-xxl-nmd {\n    margin-bottom: -2rem !important; }\n  .mb-xxl-nlg {\n    margin-bottom: -4rem !important; }\n  .mb-xxl-nxl {\n    margin-bottom: -8rem !important; }\n  .ms-xxl-n1 {\n    margin-left: -0.25rem !important; }\n  .ms-xxl-n2 {\n    margin-left: -0.5rem !important; }\n  .ms-xxl-n3 {\n    margin-left: -1rem !important; }\n  .ms-xxl-n4 {\n    margin-left: -1.5rem !important; }\n  .ms-xxl-n5 {\n    margin-left: -3rem !important; }\n  .ms-xxl-n6 {\n    margin-left: -5rem !important; }\n  .ms-xxl-n7 {\n    margin-left: -8rem !important; }\n  .ms-xxl-n8 {\n    margin-left: -10rem !important; }\n  .ms-xxl-n9 {\n    margin-left: -11rem !important; }\n  .ms-xxl-n10 {\n    margin-left: -14rem !important; }\n  .ms-xxl-n11 {\n    margin-left: -16rem !important; }\n  .ms-xxl-n12 {\n    margin-left: -20rem !important; }\n  .ms-xxl-nsm {\n    margin-left: -1rem !important; }\n  .ms-xxl-nmd {\n    margin-left: -2rem !important; }\n  .ms-xxl-nlg {\n    margin-left: -4rem !important; }\n  .ms-xxl-nxl {\n    margin-left: -8rem !important; }\n  .p-xxl-0 {\n    padding: 0 !important; }\n  .p-xxl-1 {\n    padding: 0.25rem !important; }\n  .p-xxl-2 {\n    padding: 0.5rem !important; }\n  .p-xxl-3 {\n    padding: 1rem !important; }\n  .p-xxl-4 {\n    padding: 1.5rem !important; }\n  .p-xxl-5 {\n    padding: 3rem !important; }\n  .p-xxl-6 {\n    padding: 5rem !important; }\n  .p-xxl-7 {\n    padding: 8rem !important; }\n  .p-xxl-8 {\n    padding: 10rem !important; }\n  .p-xxl-9 {\n    padding: 11rem !important; }\n  .p-xxl-10 {\n    padding: 14rem !important; }\n  .p-xxl-11 {\n    padding: 16rem !important; }\n  .p-xxl-12 {\n    padding: 20rem !important; }\n  .p-xxl-sm {\n    padding: 1rem !important; }\n  .p-xxl-md {\n    padding: 2rem !important; }\n  .p-xxl-lg {\n    padding: 4rem !important; }\n  .p-xxl-xl {\n    padding: 8rem !important; }\n  .px-xxl-0 {\n    padding-right: 0 !important;\n    padding-left: 0 !important; }\n  .px-xxl-1 {\n    padding-right: 0.25rem !important;\n    padding-left: 0.25rem !important; }\n  .px-xxl-2 {\n    padding-right: 0.5rem !important;\n    padding-left: 0.5rem !important; }\n  .px-xxl-3 {\n    padding-right: 1rem !important;\n    padding-left: 1rem !important; }\n  .px-xxl-4 {\n    padding-right: 1.5rem !important;\n    padding-left: 1.5rem !important; }\n  .px-xxl-5 {\n    padding-right: 3rem !important;\n    padding-left: 3rem !important; }\n  .px-xxl-6 {\n    padding-right: 5rem !important;\n    padding-left: 5rem !important; }\n  .px-xxl-7 {\n    padding-right: 8rem !important;\n    padding-left: 8rem !important; }\n  .px-xxl-8 {\n    padding-right: 10rem !important;\n    padding-left: 10rem !important; }\n  .px-xxl-9 {\n    padding-right: 11rem !important;\n    padding-left: 11rem !important; }\n  .px-xxl-10 {\n    padding-right: 14rem !important;\n    padding-left: 14rem !important; }\n  .px-xxl-11 {\n    padding-right: 16rem !important;\n    padding-left: 16rem !important; }\n  .px-xxl-12 {\n    padding-right: 20rem !important;\n    padding-left: 20rem !important; }\n  .px-xxl-sm {\n    padding-right: 1rem !important;\n    padding-left: 1rem !important; }\n  .px-xxl-md {\n    padding-right: 2rem !important;\n    padding-left: 2rem !important; }\n  .px-xxl-lg {\n    padding-right: 4rem !important;\n    padding-left: 4rem !important; }\n  .px-xxl-xl {\n    padding-right: 8rem !important;\n    padding-left: 8rem !important; }\n  .py-xxl-0 {\n    padding-top: 0 !important;\n    padding-bottom: 0 !important; }\n  .py-xxl-1 {\n    padding-top: 0.25rem !important;\n    padding-bottom: 0.25rem !important; }\n  .py-xxl-2 {\n    padding-top: 0.5rem !important;\n    padding-bottom: 0.5rem !important; }\n  .py-xxl-3 {\n    padding-top: 1rem !important;\n    padding-bottom: 1rem !important; }\n  .py-xxl-4 {\n    padding-top: 1.5rem !important;\n    padding-bottom: 1.5rem !important; }\n  .py-xxl-5 {\n    padding-top: 3rem !important;\n    padding-bottom: 3rem !important; }\n  .py-xxl-6 {\n    padding-top: 5rem !important;\n    padding-bottom: 5rem !important; }\n  .py-xxl-7 {\n    padding-top: 8rem !important;\n    padding-bottom: 8rem !important; }\n  .py-xxl-8 {\n    padding-top: 10rem !important;\n    padding-bottom: 10rem !important; }\n  .py-xxl-9 {\n    padding-top: 11rem !important;\n    padding-bottom: 11rem !important; }\n  .py-xxl-10 {\n    padding-top: 14rem !important;\n    padding-bottom: 14rem !important; }\n  .py-xxl-11 {\n    padding-top: 16rem !important;\n    padding-bottom: 16rem !important; }\n  .py-xxl-12 {\n    padding-top: 20rem !important;\n    padding-bottom: 20rem !important; }\n  .py-xxl-sm {\n    padding-top: 1rem !important;\n    padding-bottom: 1rem !important; }\n  .py-xxl-md {\n    padding-top: 2rem !important;\n    padding-bottom: 2rem !important; }\n  .py-xxl-lg {\n    padding-top: 4rem !important;\n    padding-bottom: 4rem !important; }\n  .py-xxl-xl {\n    padding-top: 8rem !important;\n    padding-bottom: 8rem !important; }\n  .pt-xxl-0 {\n    padding-top: 0 !important; }\n  .pt-xxl-1 {\n    padding-top: 0.25rem !important; }\n  .pt-xxl-2 {\n    padding-top: 0.5rem !important; }\n  .pt-xxl-3 {\n    padding-top: 1rem !important; }\n  .pt-xxl-4 {\n    padding-top: 1.5rem !important; }\n  .pt-xxl-5 {\n    padding-top: 3rem !important; }\n  .pt-xxl-6 {\n    padding-top: 5rem !important; }\n  .pt-xxl-7 {\n    padding-top: 8rem !important; }\n  .pt-xxl-8 {\n    padding-top: 10rem !important; }\n  .pt-xxl-9 {\n    padding-top: 11rem !important; }\n  .pt-xxl-10 {\n    padding-top: 14rem !important; }\n  .pt-xxl-11 {\n    padding-top: 16rem !important; }\n  .pt-xxl-12 {\n    padding-top: 20rem !important; }\n  .pt-xxl-sm {\n    padding-top: 1rem !important; }\n  .pt-xxl-md {\n    padding-top: 2rem !important; }\n  .pt-xxl-lg {\n    padding-top: 4rem !important; }\n  .pt-xxl-xl {\n    padding-top: 8rem !important; }\n  .pe-xxl-0 {\n    padding-right: 0 !important; }\n  .pe-xxl-1 {\n    padding-right: 0.25rem !important; }\n  .pe-xxl-2 {\n    padding-right: 0.5rem !important; }\n  .pe-xxl-3 {\n    padding-right: 1rem !important; }\n  .pe-xxl-4 {\n    padding-right: 1.5rem !important; }\n  .pe-xxl-5 {\n    padding-right: 3rem !important; }\n  .pe-xxl-6 {\n    padding-right: 5rem !important; }\n  .pe-xxl-7 {\n    padding-right: 8rem !important; }\n  .pe-xxl-8 {\n    padding-right: 10rem !important; }\n  .pe-xxl-9 {\n    padding-right: 11rem !important; }\n  .pe-xxl-10 {\n    padding-right: 14rem !important; }\n  .pe-xxl-11 {\n    padding-right: 16rem !important; }\n  .pe-xxl-12 {\n    padding-right: 20rem !important; }\n  .pe-xxl-sm {\n    padding-right: 1rem !important; }\n  .pe-xxl-md {\n    padding-right: 2rem !important; }\n  .pe-xxl-lg {\n    padding-right: 4rem !important; }\n  .pe-xxl-xl {\n    padding-right: 8rem !important; }\n  .pb-xxl-0 {\n    padding-bottom: 0 !important; }\n  .pb-xxl-1 {\n    padding-bottom: 0.25rem !important; }\n  .pb-xxl-2 {\n    padding-bottom: 0.5rem !important; }\n  .pb-xxl-3 {\n    padding-bottom: 1rem !important; }\n  .pb-xxl-4 {\n    padding-bottom: 1.5rem !important; }\n  .pb-xxl-5 {\n    padding-bottom: 3rem !important; }\n  .pb-xxl-6 {\n    padding-bottom: 5rem !important; }\n  .pb-xxl-7 {\n    padding-bottom: 8rem !important; }\n  .pb-xxl-8 {\n    padding-bottom: 10rem !important; }\n  .pb-xxl-9 {\n    padding-bottom: 11rem !important; }\n  .pb-xxl-10 {\n    padding-bottom: 14rem !important; }\n  .pb-xxl-11 {\n    padding-bottom: 16rem !important; }\n  .pb-xxl-12 {\n    padding-bottom: 20rem !important; }\n  .pb-xxl-sm {\n    padding-bottom: 1rem !important; }\n  .pb-xxl-md {\n    padding-bottom: 2rem !important; }\n  .pb-xxl-lg {\n    padding-bottom: 4rem !important; }\n  .pb-xxl-xl {\n    padding-bottom: 8rem !important; }\n  .ps-xxl-0 {\n    padding-left: 0 !important; }\n  .ps-xxl-1 {\n    padding-left: 0.25rem !important; }\n  .ps-xxl-2 {\n    padding-left: 0.5rem !important; }\n  .ps-xxl-3 {\n    padding-left: 1rem !important; }\n  .ps-xxl-4 {\n    padding-left: 1.5rem !important; }\n  .ps-xxl-5 {\n    padding-left: 3rem !important; }\n  .ps-xxl-6 {\n    padding-left: 5rem !important; }\n  .ps-xxl-7 {\n    padding-left: 8rem !important; }\n  .ps-xxl-8 {\n    padding-left: 10rem !important; }\n  .ps-xxl-9 {\n    padding-left: 11rem !important; }\n  .ps-xxl-10 {\n    padding-left: 14rem !important; }\n  .ps-xxl-11 {\n    padding-left: 16rem !important; }\n  .ps-xxl-12 {\n    padding-left: 20rem !important; }\n  .ps-xxl-sm {\n    padding-left: 1rem !important; }\n  .ps-xxl-md {\n    padding-left: 2rem !important; }\n  .ps-xxl-lg {\n    padding-left: 4rem !important; }\n  .ps-xxl-xl {\n    padding-left: 8rem !important; }\n  .text-xxl-start {\n    text-align: left !important; }\n  .text-xxl-end {\n    text-align: right !important; }\n  .text-xxl-center {\n    text-align: center !important; } }\n\n@media (min-width: 1200px) {\n  .fs-1 {\n    font-size: 2.5rem !important; }\n  .fs-2 {\n    font-size: 2rem !important; }\n  .fs-3 {\n    font-size: 1.75rem !important; }\n  .fs-4 {\n    font-size: 1.5rem !important; } }\n\n@media print {\n  .d-print-inline {\n    display: inline !important; }\n  .d-print-inline-block {\n    display: inline-block !important; }\n  .d-print-block {\n    display: block !important; }\n  .d-print-grid {\n    display: grid !important; }\n  .d-print-table {\n    display: table !important; }\n  .d-print-table-row {\n    display: table-row !important; }\n  .d-print-table-cell {\n    display: table-cell !important; }\n  .d-print-flex {\n    display: flex !important; }\n  .d-print-inline-flex {\n    display: inline-flex !important; }\n  .d-print-none {\n    display: none !important; } }\n\n/**\n * = Navigation bars\n */\n.navbar-main {\n  position: absolute;\n  top: 0;\n  width: 100%;\n  z-index: 100; }\n  .navbar-main .navbar-toggler-icon {\n    background-image: url(\"data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'><path stroke='rgba(255, 255, 255, 0.9)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/></svg>\"); }\n\n.navbar .navbar-nav .nav-link {\n  transition: all 0.8s all 0.2s ease; }\n  @media (max-width: 767.98px) {\n    .navbar .navbar-nav .nav-link {\n      font-size: 1.2rem;\n      display: flex;\n      -moz-justify-content: space-between;\n      -ms-justify-content: space-between;\n      justify-content: space-between;\n      -ms-flex-pack: space-between;\n      -moz-align-items: center;\n      -ms-align-items: center;\n      align-items: center; } }\n\n.navbar .navbar-nav .nav-item .media:not(:last-child) {\n  margin-bottom: 1.5rem; }\n\n.navbar .navbar-nav .nav-item:focus,\n.navbar .navbar-nav .nav-item .nav-link:focus {\n  outline: none !important; }\n\n.navbar .navbar-nav .dropdown .dropdown-menu {\n  top: 100%; }\n  .navbar .navbar-nav .dropdown .dropdown-menu span {\n    width: 30px; }\n\n.navbar .navbar-nav .dropdown .dropdown-item {\n  font-size: 0.875rem; }\n\n@media (min-width: 992px) {\n  .navbar .navbar-nav .dropdown-megamenu,\n  .navbar .navbar-nav .dropdown-megamenu-sm,\n  .navbar .navbar-nav .dropdown-megamenu-md {\n    min-width: 580px; } }\n\n.navbar .navbar-nav .dropdown-megamenu .megamenu-link,\n.navbar .navbar-nav .dropdown-megamenu-sm .megamenu-link,\n.navbar .navbar-nav .dropdown-megamenu-md .megamenu-link {\n  color: #111827;\n  font-weight: 400;\n  font-size: 0.875rem; }\n\n.navbar .navbar-nav .dropdown-megamenu .megamenu-item,\n.navbar .navbar-nav .dropdown-megamenu-sm .megamenu-item,\n.navbar .navbar-nav .dropdown-megamenu-md .megamenu-item {\n  position: relative; }\n  .navbar .navbar-nav .dropdown-megamenu .megamenu-item:hover .megamenu-link,\n  .navbar .navbar-nav .dropdown-megamenu-sm .megamenu-item:hover .megamenu-link,\n  .navbar .navbar-nav .dropdown-megamenu-md .megamenu-item:hover .megamenu-link {\n    color: #1F2937; }\n\n@media (min-width: 992px) {\n  .navbar .navbar-nav .dropdown-megamenu-sm {\n    min-width: 320px; } }\n\n@media (min-width: 992px) {\n  .navbar .navbar-nav .dropdown-megamenu-md {\n    min-width: 960px; } }\n\n@media (min-width: 992px) {\n  .navbar .navbar-nav .dropdown-menu .dropdown-toggle .nav-link-arrow {\n    transform: rotate(-90deg); }\n  .navbar .navbar-nav .dropdown.show > .dropdown-toggle .nav-link-arrow {\n    transform: rotate(180deg); }\n  .navbar .navbar-nav .dropdown-toggle:hover .nav-link-arrow {\n    transform: rotate(0deg); } }\n\n.navbar .navbar-nav .dropdown-submenu {\n  position: relative; }\n  .navbar .navbar-nav .dropdown-submenu .dropdown-menu {\n    top: 0;\n    left: calc(100% - 2px);\n    margin-left: .1rem;\n    margin-right: .1rem;\n    opacity: 0;\n    display: none; }\n    .navbar .navbar-nav .dropdown-submenu .dropdown-menu.show {\n      opacity: 1;\n      pointer-events: all;\n      display: block; }\n\n.navbar .navbar-nav .nav-link-arrow {\n  transition: transform 0.2s ease; }\n\n.navbar-brand {\n  font-size: 0.875rem;\n  font-weight: 500;\n  text-transform: uppercase; }\n  .navbar-brand img {\n    height: 40px; }\n\n.navbar-dark .navbar-brand-light {\n  display: none; }\n\n.navbar-dark .navbar-brand {\n  color: #ffffff; }\n\n.navbar-dark > .nav-item:hover > .nav-link {\n  color: #1F2937; }\n\n.navbar-light:not(.headroom--not-top) .btn-outline-soft {\n  border-color: #1F2937;\n  color: #1F2937; }\n  .navbar-light:not(.headroom--not-top) .btn-outline-soft:hover {\n    background: #1F2937;\n    color: #ffffff; }\n\n.navbar-light .navbar-toggler-icon {\n  background-image: url(\"data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'><path stroke='rgba(17, 24, 39, 0.9)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/></svg>\"); }\n\n.navbar-light .navbar-brand-dark {\n  display: none; }\n\n.navbar-light .navbar-brand {\n  color: #1F2937; }\n\n.dropdown-menu {\n  top: 100%; }\n  .dropdown-menu span {\n    width: 30px; }\n\n.navbar-transparent {\n  background-color: transparent;\n  border: 0;\n  box-shadow: none; }\n\n@media (min-width: 992px) {\n  .navbar-nav .nav-item [data-toggle=\"dropdown\"]::after {\n    transition: all 0.2s ease; }\n  .navbar-nav .nav-item.show [data-toggle=\"dropdown\"]::after {\n    transform: rotate(180deg); }\n  .navbar-nav .nav-link i {\n    margin-right: .3rem;\n    font-size: 0.75rem; }\n  .navbar-nav .nav-link-icon {\n    padding-left: .5rem;\n    padding-right: .5rem;\n    font-size: 1rem; }\n    .navbar-nav .nav-link-icon i {\n      margin-right: 0; }\n  .navbar-nav .dropdown-menu {\n    opacity: 0;\n    pointer-events: none;\n    margin: 0;\n    border-radius: 0.35rem; }\n  .navbar-nav .dropdown-menu-end:before {\n    right: 20px;\n    left: auto; }\n  .navbar-nav .dropdown-menu-center {\n    left: 50%;\n    transform: translateX(-50%); }\n  .navbar-nav .dropdown-menu.show,\n  .navbar-nav .dropdown-megamenu.show,\n  .navbar-nav .dropdown-megamenu-md.show {\n    opacity: 1;\n    pointer-events: auto; }\n  .navbar-nav .dropdown-menu.close,\n  .navbar-nav .dropdown-megamenu.close,\n  .navbar-nav .dropdown-megamenu-md.close {\n    display: block; }\n  .navbar-nav .dropdown-submenu .dropdown-menu {\n    transform: none; }\n  .navbar-nav .dropdown-menu {\n    position: relative;\n    display: block;\n    opacity: 0;\n    pointer-events: none;\n    transition: all 0.2s ease; }\n  .navbar-nav .dropdown.show > .dropdown-menu,\n  .navbar-nav .dropdown-submenu.show > .dropdown-menu {\n    display: block;\n    opacity: 1;\n    pointer-events: auto; }\n  .navbar-nav .dropdown-menu-inner {\n    position: relative;\n    padding: 1rem; }\n  .navbar-transparent .navbar-nav .nav-link.disabled {\n    color: rgba(255, 255, 255, 0.9); }\n  .navbar-transparent .navbar-brand {\n    color: rgba(255, 255, 255, 0.9); } }\n\n.navbar-collapse-header {\n  display: none; }\n\n.navbar-collapse {\n  width: auto; }\n\n@media (max-width: 991.98px) {\n  .navbar-nav .nav-link {\n    padding: .625rem 0; }\n  .navbar-nav .dropdown-menu {\n    box-shadow: none;\n    width: 100%; }\n    .navbar-nav .dropdown-menu .media svg {\n      width: 30px; }\n  .dropdown-menu-center {\n    right: 0;\n    left: auto;\n    transform: translate(0, 0); } }\n  @media (max-width: 991.98px) and (max-width: 991.98px) {\n    .dropdown-menu-center {\n      transform: translateX(-75%); } }\n\n@media (max-width: 991.98px) {\n  .navbar-collapse {\n    width: calc(100% - 30px);\n    position: absolute;\n    top: 0;\n    right: 15px;\n    z-index: 1050;\n    overflow-y: auto;\n    height: calc(100vh - 30px) !important;\n    opacity: 0; }\n    .navbar-collapse .navbar-toggler {\n      position: relative;\n      display: inline-block;\n      width: 20px;\n      height: 20px;\n      padding: 0; }\n      .navbar-collapse .navbar-toggler span {\n        display: block;\n        position: absolute;\n        width: 100%;\n        height: 2px;\n        border-radius: 2px;\n        opacity: 1;\n        background: #283448; }\n    .navbar-collapse .navbar-collapse-header {\n      display: block;\n      padding-bottom: 1rem;\n      margin-bottom: 1rem; }\n    .navbar-collapse .collapse-brand img {\n      height: 35px; }\n    .navbar-collapse .collapse-close {\n      text-align: right; }\n  .navbar-collapse.collapsing,\n  .navbar-collapse.show {\n    padding: 1.5rem;\n    border-radius: 0.35rem;\n    background: #ffffff;\n    animation: show-navbar-collapse .2s ease forwards;\n    box-shadow: 0 0 20px rgba(0, 0, 0, 0.1); }\n  .navbar-collapse.collapsing-out {\n    animation: hide-navbar-collapse .2s ease forwards; } }\n\n.navbar-dashboard {\n  border-radius: 0.5rem; }\n\n.navbar-theme-primary:not(.headroom) {\n  background-color: #1F2937; }\n\n/**\n * = Sections\n */\n.section {\n  position: relative;\n  padding-top: 3rem;\n  padding-bottom: 3rem; }\n\n.section-header {\n  position: relative;\n  padding-top: 9rem;\n  padding-bottom: 3rem; }\n\n@media (min-width: 576px) {\n  .section {\n    position: relative;\n    padding-top: 5rem;\n    padding-bottom: 5rem; }\n  .section-header {\n    position: relative;\n    padding-top: 8rem;\n    padding-bottom: 8rem; }\n    .section-header.section-sm {\n      padding-top: 4rem;\n      padding-bottom: 3rem; }\n  .section-xl {\n    padding-top: 8rem;\n    padding-bottom: 8rem; }\n  .section-lg {\n    padding-top: 6rem;\n    padding-bottom: 6rem; }\n  .section-sm {\n    padding-top: 3rem;\n    padding-bottom: 3rem; } }\n\n@media (min-width: 992px) {\n  .section {\n    position: relative;\n    padding-top: 6rem;\n    padding-bottom: 6rem; }\n  .section-header {\n    position: relative;\n    padding-top: 10rem;\n    padding-bottom: 10rem; }\n    .section-header.section-sm {\n      padding-top: 4rem;\n      padding-bottom: 3rem; }\n  .section-xl {\n    padding-top: 10rem;\n    padding-bottom: 10rem; }\n  .section-lg {\n    padding-top: 8rem;\n    padding-bottom: 8rem; }\n  .section-sm {\n    padding-top: 4rem;\n    padding-bottom: 4rem; } }\n\n@media (min-width: 768px) {\n  .section-hero {\n    height: 100vh; } }\n\n.line-bottom::after {\n  content: '';\n  display: block;\n  width: 80%;\n  position: absolute;\n  bottom: 0;\n  left: 50%;\n  margin-left: -40%;\n  height: 1px;\n  background: radial-gradient(ellipse at center, #9CA3AF 0, rgba(255, 255, 255, 0) 80%); }\n\n.section-profile-cover {\n  height: 580px;\n  background-size: cover;\n  background-position: center center; }\n  @media (max-width: 767.98px) {\n    .section-profile-cover {\n      height: 400px; } }\n\n.components-section > .form-control + .form-control {\n  margin-top: .5rem; }\n\n.components-section > .nav + .nav,\n.components-section > .alert + .alert,\n.components-section > .navbar + .navbar,\n.components-section > .progress + .progress,\n.components-section > .progress + .btn,\n.components-section .badge,\n.components-section .btn {\n  margin-top: .5rem;\n  margin-bottom: .5rem; }\n\n.components-section .btn-group {\n  margin-top: .5rem;\n  margin-bottom: .5rem; }\n  .components-section .btn-group .btn {\n    margin: 0; }\n\n.components-section .alert {\n  margin: 0; }\n  .components-section .alert + .alert {\n    margin-top: 1.25rem; }\n\n.components-section .badge {\n  margin-right: .5rem; }\n\n.components-section .modal-footer .btn {\n  margin: 0; }\n\n.copy-docs {\n  position: absolute;\n  top: 5px;\n  right: 5px;\n  transition: all 0.2s ease; }\n  .copy-docs.copied {\n    background: #10B981; }\n  .copy-docs:hover {\n    cursor: pointer; }\n\n.kanban-container {\n  overflow-x: scroll;\n  -webkit-overflow-scrolling: touch; }\n\n/**\n * = Footers\n */\n.footer ul {\n  margin-bottom: 0;\n  padding: 0;\n  list-style: none; }\n  .footer ul li {\n    display: inline-block; }\n    .footer ul li a {\n      text-decoration: none;\n      position: relative;\n      display: block;\n      color: #374151; }\n      .footer ul li a:hover {\n        color: #1F2937; }\n    .footer ul li .btn {\n      margin: 0; }\n  .footer ul.links-horizontal:first-child a {\n    padding-left: 0; }\n  .footer ul.links-horizontal:last-child a {\n    padding-right: 0; }\n  .footer ul.links-vertical li {\n    display: block;\n    margin-left: -5px;\n    margin-right: -5px; }\n    .footer ul.links-vertical li a {\n      padding: 5px; }\n      .footer ul.links-vertical li a:hover {\n        color: inherit !important; }\n  .footer ul.icon-box i {\n    line-height: 1.7; }\n\n.footer .social-buttons a,\n.footer .social-buttons .btn {\n  margin-top: 5px;\n  margin-bottom: 5px;\n  padding: 0.125rem 0.375rem; }\n\n.footer .footer-brand {\n  font-size: 1.25rem;\n  font-weight: 500; }\n  .footer .footer-brand img.common {\n    height: 40px; }\n  .footer .footer-brand img {\n    height: 40px;\n    width: 40px; }\n  .footer .footer-brand:hover, .footer .footer-brand:focus {\n    color: #111827; }\n\n.footer .footer-language-link {\n  font-size: 0.875rem; }\n  .footer .footer-language-link i {\n    font-size: 0.75rem; }\n\n.footer .copyright {\n  font-size: 0.875rem; }\n\n.footer .pull-center {\n  display: inline-block;\n  float: none; }\n\n/**\n * = Sidebars\n */\n#doc-index:not(.collapse.show), .doc-sidebar {\n  display: none; }\n\n@media (min-width: 992px) {\n  #doc-index {\n    display: block; }\n  .doc-sidebar {\n    display: block;\n    height: calc(100vh - 2rem);\n    overflow-y: scroll;\n    position: sticky;\n    top: 2rem; }\n    .doc-sidebar .nav-link[data-toggle=\"collapse\"] > .icon {\n      transform: rotateZ(-90deg);\n      position: relative;\n      right: .25rem; }\n    .doc-sidebar .nav .nav-item {\n      font-size: 0.875rem; } }\n\n/*\n * Sidebar\n*/\n.sidebar {\n  display: block;\n  position: fixed;\n  top: 0;\n  bottom: 0;\n  left: 0;\n  z-index: 100;\n  max-height: 100%;\n  overflow-y: auto;\n  width: 100%;\n  transition: max-width 0.1s; }\n  @media (prefers-reduced-motion: reduce) {\n    .sidebar {\n      transition: none; } }\n  @media (min-width: 768px) {\n    .sidebar {\n      width: 100%;\n      max-width: 260px; } }\n  .sidebar .nav {\n    white-space: nowrap; }\n  .sidebar .nav-item {\n    margin-bottom: .2rem; }\n    .sidebar .nav-item.active > .nav-link {\n      color: #F2F4F6;\n      background-color: #374151; }\n    .sidebar .nav-item .nav-link {\n      color: #ffffff;\n      cursor: pointer; }\n      .sidebar .nav-item .nav-link:hover {\n        color: #F2F4F6;\n        background-color: #374151; }\n  .sidebar .nav-link + .multi-level {\n    margin-top: .2rem; }\n  .sidebar .nav-link {\n    font-size: 1rem;\n    vertical-align: middle;\n    padding: 0.55rem 0.75rem;\n    border-radius: 0.5rem; }\n    .sidebar .nav-link .sidebar-icon {\n      margin-right: .5rem;\n      color: #9CA3AF; }\n    .sidebar .nav-link .link-arrow {\n      font-size: 0.875rem; }\n    .sidebar .nav-link[data-bs-toggle=collapse][aria-expanded=true] .link-arrow {\n      transform: rotate(90deg);\n      transition: all 0.2s ease; }\n  .sidebar .nav-link.active {\n    color: #F2F4F6; }\n  .sidebar .multi-level .nav-link {\n    padding-left: 53px; }\n  .sidebar .sidebar-text,\n  .sidebar .link-arrow,\n  .sidebar .badge,\n  .sidebar .notification-count {\n    opacity: 1; }\n  .sidebar .sidebar-text-contracted {\n    display: none; }\n  .sidebar.contracted {\n    max-width: 95px; }\n    .sidebar.contracted .sidebar-text,\n    .sidebar.contracted .link-arrow,\n    .sidebar.contracted .badge {\n      opacity: 0; }\n    .sidebar.contracted .notification-count {\n      opacity: 1;\n      position: absolute;\n      top: 0;\n      left: 40px;\n      width: 18px;\n      height: 18px;\n      border-radius: 50%;\n      font-size: .7rem;\n      padding: .2rem; }\n    .sidebar.contracted .nav-item {\n      position: relative; }\n      .sidebar.contracted .nav-item.active > .nav-link {\n        background-color: #363c54;\n        width: 44px; }\n      .sidebar.contracted .nav-item .nav-link:hover {\n        background-color: #1F2937; }\n    .sidebar.contracted .sidebar-text-contracted {\n      display: inline; }\n    .sidebar.contracted .multi-level .nav-link {\n      padding-left: 17px; }\n    .sidebar.contracted .nav-item {\n      white-space: nowrap; }\n    .sidebar.contracted .sidebar-icon {\n      text-align: center; }\n    @media (min-width: 768px) {\n      .sidebar.contracted + .content {\n        margin-left: 95px; } }\n\n.sidebar-inner {\n  position: relative;\n  overflow-y: hidden; }\n\n.sidebar-heading {\n  font-size: .75rem;\n  text-transform: uppercase; }\n\n.user-card {\n  border-bottom: 0.0625rem solid #2e3650; }\n\n@media (max-width: 575.98px) {\n  .sidebar {\n    width: 100%; } }\n\n.content {\n  overflow: hidden;\n  padding: 0 1rem 0 1rem;\n  transition: all 0.3s; }\n  @media (prefers-reduced-motion: reduce) {\n    .content {\n      transition: none; } }\n  @media (min-width: 992px) {\n    .content {\n      margin-left: 260px; } }\n\n.sidebar-toggle {\n  font-size: 1.3rem; }\n  .sidebar-toggle:hover, .sidebar-toggle:focus {\n    outline: none;\n    box-shadow: none;\n    background: #D1D5DB; }\n\niframe {\n  border: 0; }\n\nfigcaption,\nfigure,\nmain {\n  display: block;\n  margin: 0; }\n\nmain {\n  overflow: hidden; }\n\nimg {\n  max-width: 100%; }\n\nstrong {\n  font-weight: 500; }\n\nbutton:focus {\n  outline: 0; }\n\nlabel {\n  font-weight: 500;\n  margin-bottom: .5rem; }\n\n/**\n * = Accordions\n*/\n.accordion-button {\n  text-align: left; }\n  .accordion-button:not(.collapsed)::after {\n    background-image: none;\n    transform: rotateZ(45deg); }\n  .accordion-button::after {\n    background-image: none;\n    content: '\\f067';\n    font-family: \"Font Awesome 5 Free\";\n    font-size: 1rem;\n    font-weight: 900; }\n  .accordion-button:hover {\n    background-color: #E5E7EB; }\n\n.accordion-flush .accordion-button {\n  background-color: transparent; }\n  .accordion-flush .accordion-button:not(.collapsed) {\n    color: #31316A; }\n  .accordion-flush .accordion-button:focus {\n    border-color: #D1D5DB;\n    box-shadow: none; }\n\n.accordion-flush .accordion-collapse {\n  border: 0; }\n\n/**\n * = Animations\n */\n.animate-up-1,\n.animate-right-1,\n.animate-down-1,\n.animate-left-1,\n.scale-up-1,\n.scale-down-1 {\n  transition: all 0.2s ease; }\n\n.scale-up-1:hover {\n  transform: scale(0.55556); }\n\n.scale-up-hover-1:hover .scale {\n  transform: scale(0.55556); }\n\n.scale-down-1:hover {\n  transform: scale(0.4); }\n\n.animate-up-1:hover,\n.animate-hover:hover .animate-up-1 {\n  transform: translate(0, -1px); }\n\n.animate-right-1:hover,\n.animate-hover:hover .animate-right-1 {\n  transform: translate(1px, 0); }\n\n.animate-down-1:hover,\n.animate-hover:hover .animate-down-1 {\n  transform: translate(0, 1px); }\n\n.animate-left-1:hover,\n.animate-hover:hover .animate-left-1 {\n  transform: translate(-1px, 0); }\n\n.animate-up-2,\n.animate-right-2,\n.animate-down-2,\n.animate-left-2,\n.scale-up-2,\n.scale-down-2 {\n  transition: all 0.2s ease; }\n\n.scale-up-2:hover {\n  transform: scale(1.11111); }\n\n.scale-up-hover-2:hover .scale {\n  transform: scale(1.11111); }\n\n.scale-down-2:hover {\n  transform: scale(0.8); }\n\n.animate-up-2:hover,\n.animate-hover:hover .animate-up-2 {\n  transform: translate(0, -2px); }\n\n.animate-right-2:hover,\n.animate-hover:hover .animate-right-2 {\n  transform: translate(2px, 0); }\n\n.animate-down-2:hover,\n.animate-hover:hover .animate-down-2 {\n  transform: translate(0, 2px); }\n\n.animate-left-2:hover,\n.animate-hover:hover .animate-left-2 {\n  transform: translate(-2px, 0); }\n\n.animate-up-3,\n.animate-right-3,\n.animate-down-3,\n.animate-left-3,\n.scale-up-3,\n.scale-down-3 {\n  transition: all 0.2s ease; }\n\n.scale-up-3:hover {\n  transform: scale(1.66667); }\n\n.scale-up-hover-3:hover .scale {\n  transform: scale(1.66667); }\n\n.scale-down-3:hover {\n  transform: scale(1.2); }\n\n.animate-up-3:hover,\n.animate-hover:hover .animate-up-3 {\n  transform: translate(0, -3px); }\n\n.animate-right-3:hover,\n.animate-hover:hover .animate-right-3 {\n  transform: translate(3px, 0); }\n\n.animate-down-3:hover,\n.animate-hover:hover .animate-down-3 {\n  transform: translate(0, 3px); }\n\n.animate-left-3:hover,\n.animate-hover:hover .animate-left-3 {\n  transform: translate(-3px, 0); }\n\n.animate-up-4,\n.animate-right-4,\n.animate-down-4,\n.animate-left-4,\n.scale-up-4,\n.scale-down-4 {\n  transition: all 0.2s ease; }\n\n.scale-up-4:hover {\n  transform: scale(2.22222); }\n\n.scale-up-hover-4:hover .scale {\n  transform: scale(2.22222); }\n\n.scale-down-4:hover {\n  transform: scale(1.6); }\n\n.animate-up-4:hover,\n.animate-hover:hover .animate-up-4 {\n  transform: translate(0, -4px); }\n\n.animate-right-4:hover,\n.animate-hover:hover .animate-right-4 {\n  transform: translate(4px, 0); }\n\n.animate-down-4:hover,\n.animate-hover:hover .animate-down-4 {\n  transform: translate(0, 4px); }\n\n.animate-left-4:hover,\n.animate-hover:hover .animate-left-4 {\n  transform: translate(-4px, 0); }\n\n.animate-up-5,\n.animate-right-5,\n.animate-down-5,\n.animate-left-5,\n.scale-up-5,\n.scale-down-5 {\n  transition: all 0.2s ease; }\n\n.scale-up-5:hover {\n  transform: scale(2.77778); }\n\n.scale-up-hover-5:hover .scale {\n  transform: scale(2.77778); }\n\n.scale-down-5:hover {\n  transform: scale(2); }\n\n.animate-up-5:hover,\n.animate-hover:hover .animate-up-5 {\n  transform: translate(0, -5px); }\n\n.animate-right-5:hover,\n.animate-hover:hover .animate-right-5 {\n  transform: translate(5px, 0); }\n\n.animate-down-5:hover,\n.animate-hover:hover .animate-down-5 {\n  transform: translate(0, 5px); }\n\n.animate-left-5:hover,\n.animate-hover:hover .animate-left-5 {\n  transform: translate(-5px, 0); }\n\n.animate-up-6,\n.animate-right-6,\n.animate-down-6,\n.animate-left-6,\n.scale-up-6,\n.scale-down-6 {\n  transition: all 0.2s ease; }\n\n.scale-up-6:hover {\n  transform: scale(3.33333); }\n\n.scale-up-hover-6:hover .scale {\n  transform: scale(3.33333); }\n\n.scale-down-6:hover {\n  transform: scale(2.4); }\n\n.animate-up-6:hover,\n.animate-hover:hover .animate-up-6 {\n  transform: translate(0, -6px); }\n\n.animate-right-6:hover,\n.animate-hover:hover .animate-right-6 {\n  transform: translate(6px, 0); }\n\n.animate-down-6:hover,\n.animate-hover:hover .animate-down-6 {\n  transform: translate(0, 6px); }\n\n.animate-left-6:hover,\n.animate-hover:hover .animate-left-6 {\n  transform: translate(-6px, 0); }\n\n.animate-up-7,\n.animate-right-7,\n.animate-down-7,\n.animate-left-7,\n.scale-up-7,\n.scale-down-7 {\n  transition: all 0.2s ease; }\n\n.scale-up-7:hover {\n  transform: scale(3.88889); }\n\n.scale-up-hover-7:hover .scale {\n  transform: scale(3.88889); }\n\n.scale-down-7:hover {\n  transform: scale(2.8); }\n\n.animate-up-7:hover,\n.animate-hover:hover .animate-up-7 {\n  transform: translate(0, -7px); }\n\n.animate-right-7:hover,\n.animate-hover:hover .animate-right-7 {\n  transform: translate(7px, 0); }\n\n.animate-down-7:hover,\n.animate-hover:hover .animate-down-7 {\n  transform: translate(0, 7px); }\n\n.animate-left-7:hover,\n.animate-hover:hover .animate-left-7 {\n  transform: translate(-7px, 0); }\n\n.animate-up-8,\n.animate-right-8,\n.animate-down-8,\n.animate-left-8,\n.scale-up-8,\n.scale-down-8 {\n  transition: all 0.2s ease; }\n\n.scale-up-8:hover {\n  transform: scale(4.44444); }\n\n.scale-up-hover-8:hover .scale {\n  transform: scale(4.44444); }\n\n.scale-down-8:hover {\n  transform: scale(3.2); }\n\n.animate-up-8:hover,\n.animate-hover:hover .animate-up-8 {\n  transform: translate(0, -8px); }\n\n.animate-right-8:hover,\n.animate-hover:hover .animate-right-8 {\n  transform: translate(8px, 0); }\n\n.animate-down-8:hover,\n.animate-hover:hover .animate-down-8 {\n  transform: translate(0, 8px); }\n\n.animate-left-8:hover,\n.animate-hover:hover .animate-left-8 {\n  transform: translate(-8px, 0); }\n\n.animate-up-9,\n.animate-right-9,\n.animate-down-9,\n.animate-left-9,\n.scale-up-9,\n.scale-down-9 {\n  transition: all 0.2s ease; }\n\n.scale-up-9:hover {\n  transform: scale(5); }\n\n.scale-up-hover-9:hover .scale {\n  transform: scale(5); }\n\n.scale-down-9:hover {\n  transform: scale(3.6); }\n\n.animate-up-9:hover,\n.animate-hover:hover .animate-up-9 {\n  transform: translate(0, -9px); }\n\n.animate-right-9:hover,\n.animate-hover:hover .animate-right-9 {\n  transform: translate(9px, 0); }\n\n.animate-down-9:hover,\n.animate-hover:hover .animate-down-9 {\n  transform: translate(0, 9px); }\n\n.animate-left-9:hover,\n.animate-hover:hover .animate-left-9 {\n  transform: translate(-9px, 0); }\n\n@keyframes show-navbar-collapse {\n  0% {\n    opacity: 0;\n    transform: scale(0.95);\n    transform-origin: 100% 0; }\n  100% {\n    opacity: 1;\n    transform: scale(1); } }\n\n@keyframes hide-navbar-collapse {\n  from {\n    opacity: 1;\n    transform: scale(1);\n    transform-origin: 100% 0; }\n  to {\n    opacity: 0;\n    transform: scale(0.95); } }\n\n@keyframes show-navbar-dropdown {\n  0% {\n    opacity: 0;\n    transform: translate(0, 10px) perspective(200px) rotateX(-2deg);\n    transition: visibility 0.45s, opacity 0.45s, transform 0.45s; }\n  100% {\n    transform: translate(0, 0);\n    opacity: 1; } }\n\n@keyframes hide-navbar-dropdown {\n  from {\n    opacity: 1; }\n  to {\n    opacity: 0;\n    transform: translate(0, 10px); } }\n\n@keyframes show-dropdown {\n  0% {\n    opacity: 0;\n    transform-origin: perspective(200px) rotateX(-2deg);\n    transition: visibility 0.45s, opacity .5s; }\n  100% {\n    opacity: 1; } }\n\n@keyframes hide-dropdown {\n  from {\n    opacity: 1; }\n  to {\n    opacity: 0;\n    transform: translate(0, 10px); } }\n\n.bell-shake.shaking {\n  animation: bellshake 0.5s cubic-bezier(0.36, 0.07, 0.19, 0.97) both;\n  -webkit-backface-visibility: hidden;\n          backface-visibility: hidden;\n  transform-origin: top right; }\n\n:root {\n  --animate-duration: 1s;\n  --animate-delay: 1s;\n  --animate-repeat: 1; }\n\n.animate__animated {\n  animation-duration: 1s;\n  animation-duration: var(--animate-duration);\n  animation-fill-mode: both; }\n\n.animate__jackInTheBox {\n  animation-name: jackInTheBox; }\n\n@keyframes bellshake {\n  0% {\n    transform: rotate(0); }\n  15% {\n    transform: rotate(5deg); }\n  30% {\n    transform: rotate(-5deg); }\n  45% {\n    transform: rotate(4deg); }\n  60% {\n    transform: rotate(-4deg); }\n  75% {\n    transform: rotate(2deg); }\n  85% {\n    transform: rotate(-2deg); }\n  92% {\n    transform: rotate(1deg); }\n  100% {\n    transform: rotate(0); } }\n\n@keyframes jackInTheBox {\n  from {\n    opacity: 0;\n    transform: scale(0.1) rotate(30deg);\n    transform-origin: center bottom; }\n  50% {\n    transform: rotate(-10deg); }\n  70% {\n    transform: rotate(3deg); }\n  to {\n    opacity: 1;\n    transform: scale(1); } }\n\n.animate__jackInTheBox {\n  animation-name: jackInTheBox; }\n\n[class*=shadow] {\n  transition: all .2s ease; }\n\n.alert-heading {\n  font-weight: 500; }\n\n.alert-icon {\n  margin-bottom: .5rem; }\n  .alert-icon span {\n    font-size: 2rem; }\n\n/**\n * = Avatars\n */\n.avatar + .avatar-content {\n  display: inline-block;\n  margin-left: 0.75rem; }\n\n.avatar-sm {\n  width: 1.5rem;\n  height: 1.5rem; }\n  .avatar-sm img {\n    width: 1.5rem;\n    height: 1.5rem; }\n\n.avatar {\n  width: 2rem;\n  height: 2rem; }\n  .avatar img {\n    width: 2rem;\n    height: 2rem; }\n\n.avatar-md {\n  width: 3rem;\n  height: 3rem; }\n  .avatar-md img {\n    width: 3rem;\n    height: 3rem; }\n\n.avatar-lg {\n  width: 4.5rem;\n  height: 4.5rem; }\n  .avatar-lg img {\n    width: 4.5rem;\n    height: 4.5rem; }\n\n.avatar-xl {\n  width: 8rem;\n  height: 8rem; }\n  @media (max-width: 991.98px) {\n    .avatar-xl {\n      width: 4.5rem;\n      height: 4.5rem; } }\n\n.avatar-offline::before,\n.avatar-online::before {\n  position: absolute;\n  border: 2px solid #ffffff;\n  background-color: #10B981;\n  display: block;\n  top: 2px;\n  left: 39px;\n  content: \"\";\n  border-radius: 50%;\n  height: 10px;\n  width: 10px; }\n\n.avatar-offline::before {\n  background-color: #E11D48; }\n\n.avatar-group .avatar {\n  position: relative;\n  z-index: 0; }\n  .avatar-group .avatar img {\n    border: 2px solid #ffffff; }\n  .avatar-group .avatar:hover {\n    z-index: 3; }\n\n.avatar-group .avatar + .avatar {\n  margin-left: -1rem; }\n\n/**\n * = Badges\n */\n.badge {\n  font-size: 0.75em;\n  font-weight: 600; }\n  .badge a {\n    color: #ffffff; }\n  .badge.super-badge {\n    vertical-align: super; }\n\n.badge-pill {\n  padding-right: 0.875em;\n  padding-left: 0.875em; }\n\n.badge-inline {\n  margin-right: .625rem; }\n  .badge-inline + span {\n    top: 2px;\n    position: relative; }\n    .badge-inline + span > a {\n      text-decoration: underline; }\n\n.badge-sm {\n  padding: .2rem .6rem; }\n\n.badge-lg {\n  font-size: 1.25rem;\n  padding: .35rem .85rem; }\n\n.btn .badge-corner {\n  position: absolute;\n  top: -50%;\n  right: .5rem;\n  transform: translate(50%, 50%);\n  margin: 0;\n  border: 3px solid;\n  padding-left: .5rem;\n  padding-right: .5rem; }\n\n.wi-tags a {\n  display: inline-block;\n  padding: 0.125rem 0.875rem;\n  margin: 0.25rem;\n  line-height: 2;\n  font-size: 0.875rem;\n  box-shadow: 0 2px 5px rgba(140, 152, 164, 0.2);\n  background-color: #ffffff; }\n\n.pixel-pro-badge {\n  position: relative;\n  font-size: 0.875rem;\n  text-transform: uppercase;\n  font-weight: 500;\n  right: -11px;\n  padding: 4px 12px;\n  top: -30px;\n  background: #ffffff;\n  border-radius: 0.35rem;\n  box-shadow: 0 2px 5px rgba(140, 152, 164, 0.2); }\n  @media (max-width: 575.98px) {\n    .pixel-pro-badge {\n      font-size: 1rem;\n      right: -13px;\n      padding: 5px 10px;\n      top: -23px; } }\n\n.subscription-badge {\n  top: -19px;\n  right: -12px;\n  font-size: .75rem; }\n\n/*\n* = Buttons\n*/\n.btn.btn-circle {\n  border-radius: 50%; }\n\n.btn.btn-md {\n  padding: 0.65rem 1.25rem; }\n\n.btn.btn-xs {\n  padding: .2rem 0.35rem;\n  font-size: 0.55rem;\n  box-shadow: none; }\n\n.btn.large-form-btn {\n  padding: 1.2rem 1rem; }\n\n.btn.dashed-outline {\n  border-style: dashed; }\n\n.btn-icon-only {\n  width: 2.575rem;\n  height: 2.575rem;\n  padding: 0;\n  display: flex;\n  -moz-justify-content: center;\n  -ms-justify-content: center;\n  justify-content: center;\n  -ms-flex-pack: center;\n  -moz-align-items: center;\n  -ms-align-items: center;\n  align-items: center; }\n  .btn-icon-only.btn-xs {\n    width: 1.7rem;\n    height: 1.7rem; }\n  .btn-icon-only.btn-sm, .btn-group-sm > .btn-icon-only.btn {\n    width: 2rem;\n    height: 2rem; }\n\n.btn-upgrade-pro {\n  position: fixed;\n  bottom: 15px;\n  right: 15px;\n  width: 190px; }\n  @media (min-width: 768px) {\n    .btn-upgrade-pro {\n      left: 35px; } }\n\n.btn-primary:hover {\n  background-color: #161d27;\n  border-color: #161d27; }\n\n.btn-secondary:hover {\n  background-color: #eeb15d;\n  border-color: #eeb15d; }\n\n.btn-tertiary:hover {\n  background-color: #292959;\n  border-color: #292959; }\n\n.btn-success:hover {\n  background-color: #0ea271;\n  border-color: #0ea271; }\n\n.btn-info:hover {\n  background-color: #1f57b8;\n  border-color: #1f57b8; }\n\n.btn-warning:hover {\n  background-color: #f1bc77;\n  border-color: #f1bc77; }\n\n.btn-danger:hover {\n  background-color: #ca1a41;\n  border-color: #ca1a41; }\n\n.btn-white:hover {\n  background-color: #f2f2f2;\n  border-color: #f2f2f2; }\n\n.btn-indigo:hover {\n  background-color: #3a30e2;\n  border-color: #3a30e2; }\n\n.btn-purple:hover {\n  background-color: #6c23eb;\n  border-color: #6c23eb; }\n\n.btn-yellow-100:hover {\n  background-color: #ffe3bd;\n  border-color: #ffe3bd; }\n\n.btn-yellow-200:hover {\n  background-color: #f2d0a2;\n  border-color: #f2d0a2; }\n\n.btn-gray-50:hover {\n  background-color: #eaedf1;\n  border-color: #eaedf1; }\n\n.btn-gray-100:hover {\n  background-color: #e3e7ec;\n  border-color: #e3e7ec; }\n\n.btn-gray-200:hover {\n  background-color: #d7dae0;\n  border-color: #d7dae0; }\n\n.btn-gray-300:hover {\n  background-color: #c3c8d0;\n  border-color: #c3c8d0; }\n\n.btn-gray-400:hover {\n  background-color: #8e96a4;\n  border-color: #8e96a4; }\n\n.btn-gray-500:hover {\n  background-color: #5f6672;\n  border-color: #5f6672; }\n\n.btn-gray-600:hover {\n  background-color: #404954;\n  border-color: #404954; }\n\n.btn-gray-700:hover {\n  background-color: #2d3542;\n  border-color: #2d3542; }\n\n.btn-gray-800:hover {\n  background-color: #161d27;\n  border-color: #161d27; }\n\n.btn-gray-900:hover {\n  background-color: #090d15;\n  border-color: #090d15; }\n\n.btn-facebook {\n  color: #ffffff;\n  background-color: #3b5999;\n  border-color: #3b5999;\n  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(17, 24, 39, 0.075); }\n  .btn-facebook:hover {\n    color: #ffffff;\n    background-color: #324c82;\n    border-color: #2f477a; }\n  .btn-check:focus + .btn-facebook, .btn-facebook:focus {\n    color: #ffffff;\n    background-color: #324c82;\n    border-color: #2f477a;\n    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(17, 24, 39, 0.075), 0 0 0 0.18rem rgba(88, 114, 168, 0.5); }\n  .btn-check:checked + .btn-facebook,\n  .btn-check:active + .btn-facebook, .btn-facebook:active, .btn-facebook.active,\n  .show > .btn-facebook.dropdown-toggle {\n    color: #ffffff;\n    background-color: #2f477a;\n    border-color: #2c4373; }\n    .btn-check:checked + .btn-facebook:focus,\n    .btn-check:active + .btn-facebook:focus, .btn-facebook:active:focus, .btn-facebook.active:focus,\n    .show > .btn-facebook.dropdown-toggle:focus {\n      box-shadow: inset 0 3px 5px rgba(17, 24, 39, 0.125), 0 0 0 0.18rem rgba(88, 114, 168, 0.5); }\n  .btn-facebook:disabled, .btn-facebook.disabled {\n    color: #ffffff;\n    background-color: #3b5999;\n    border-color: #3b5999; }\n  .btn-facebook.btn-link {\n    color: #3b5999;\n    background: transparent;\n    box-shadow: none;\n    border: 0;\n    border-style: none; }\n    .btn-facebook.btn-link:hover, .btn-facebook.btn-link:focus, .btn-facebook.btn-link.active {\n      background-color: transparent !important;\n      box-shadow: none;\n      border: 0;\n      color: #3b5999; }\n\n.btn-twitter {\n  color: #1F2937;\n  background-color: #1da1f2;\n  border-color: #1da1f2;\n  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(17, 24, 39, 0.075); }\n  .btn-twitter:hover {\n    color: #1F2937;\n    background-color: #3faff4;\n    border-color: #34aaf3; }\n  .btn-check:focus + .btn-twitter, .btn-twitter:focus {\n    color: #1F2937;\n    background-color: #3faff4;\n    border-color: #34aaf3;\n    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(17, 24, 39, 0.075), 0 0 0 0.18rem rgba(29, 143, 214, 0.5); }\n  .btn-check:checked + .btn-twitter,\n  .btn-check:active + .btn-twitter, .btn-twitter:active, .btn-twitter.active,\n  .show > .btn-twitter.dropdown-toggle {\n    color: #1F2937;\n    background-color: #4ab4f5;\n    border-color: #34aaf3; }\n    .btn-check:checked + .btn-twitter:focus,\n    .btn-check:active + .btn-twitter:focus, .btn-twitter:active:focus, .btn-twitter.active:focus,\n    .show > .btn-twitter.dropdown-toggle:focus {\n      box-shadow: inset 0 3px 5px rgba(17, 24, 39, 0.125), 0 0 0 0.18rem rgba(29, 143, 214, 0.5); }\n  .btn-twitter:disabled, .btn-twitter.disabled {\n    color: #1F2937;\n    background-color: #1da1f2;\n    border-color: #1da1f2; }\n  .btn-twitter.btn-link {\n    color: #1da1f2;\n    background: transparent;\n    box-shadow: none;\n    border: 0;\n    border-style: none; }\n    .btn-twitter.btn-link:hover, .btn-twitter.btn-link:focus, .btn-twitter.btn-link.active {\n      background-color: transparent !important;\n      box-shadow: none;\n      border: 0;\n      color: #1da1f2; }\n\n.btn-google {\n  color: #ffffff;\n  background-color: #DB4337;\n  border-color: #DB4337;\n  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(17, 24, 39, 0.075); }\n  .btn-google:hover {\n    color: #ffffff;\n    background-color: #ba392f;\n    border-color: #af362c; }\n  .btn-check:focus + .btn-google, .btn-google:focus {\n    color: #ffffff;\n    background-color: #ba392f;\n    border-color: #af362c;\n    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(17, 24, 39, 0.075), 0 0 0 0.18rem rgba(224, 95, 85, 0.5); }\n  .btn-check:checked + .btn-google,\n  .btn-check:active + .btn-google, .btn-google:active, .btn-google.active,\n  .show > .btn-google.dropdown-toggle {\n    color: #ffffff;\n    background-color: #af362c;\n    border-color: #a43229; }\n    .btn-check:checked + .btn-google:focus,\n    .btn-check:active + .btn-google:focus, .btn-google:active:focus, .btn-google.active:focus,\n    .show > .btn-google.dropdown-toggle:focus {\n      box-shadow: inset 0 3px 5px rgba(17, 24, 39, 0.125), 0 0 0 0.18rem rgba(224, 95, 85, 0.5); }\n  .btn-google:disabled, .btn-google.disabled {\n    color: #ffffff;\n    background-color: #DB4337;\n    border-color: #DB4337; }\n  .btn-google.btn-link {\n    color: #DB4337;\n    background: transparent;\n    box-shadow: none;\n    border: 0;\n    border-style: none; }\n    .btn-google.btn-link:hover, .btn-google.btn-link:focus, .btn-google.btn-link.active {\n      background-color: transparent !important;\n      box-shadow: none;\n      border: 0;\n      color: #DB4337; }\n\n.btn-instagram {\n  color: #ffffff;\n  background-color: #e4405f;\n  border-color: #e4405f;\n  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(17, 24, 39, 0.075); }\n  .btn-instagram:hover {\n    color: #ffffff;\n    background-color: #c23651;\n    border-color: #b6334c; }\n  .btn-check:focus + .btn-instagram, .btn-instagram:focus {\n    color: #ffffff;\n    background-color: #c23651;\n    border-color: #b6334c;\n    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(17, 24, 39, 0.075), 0 0 0 0.18rem rgba(232, 93, 119, 0.5); }\n  .btn-check:checked + .btn-instagram,\n  .btn-check:active + .btn-instagram, .btn-instagram:active, .btn-instagram.active,\n  .show > .btn-instagram.dropdown-toggle {\n    color: #ffffff;\n    background-color: #b6334c;\n    border-color: #ab3047; }\n    .btn-check:checked + .btn-instagram:focus,\n    .btn-check:active + .btn-instagram:focus, .btn-instagram:active:focus, .btn-instagram.active:focus,\n    .show > .btn-instagram.dropdown-toggle:focus {\n      box-shadow: inset 0 3px 5px rgba(17, 24, 39, 0.125), 0 0 0 0.18rem rgba(232, 93, 119, 0.5); }\n  .btn-instagram:disabled, .btn-instagram.disabled {\n    color: #ffffff;\n    background-color: #e4405f;\n    border-color: #e4405f; }\n  .btn-instagram.btn-link {\n    color: #e4405f;\n    background: transparent;\n    box-shadow: none;\n    border: 0;\n    border-style: none; }\n    .btn-instagram.btn-link:hover, .btn-instagram.btn-link:focus, .btn-instagram.btn-link.active {\n      background-color: transparent !important;\n      box-shadow: none;\n      border: 0;\n      color: #e4405f; }\n\n.btn-pinterest {\n  color: #ffffff;\n  background-color: #bd081c;\n  border-color: #bd081c;\n  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(17, 24, 39, 0.075); }\n  .btn-pinterest:hover {\n    color: #ffffff;\n    background-color: #a10718;\n    border-color: #970616; }\n  .btn-check:focus + .btn-pinterest, .btn-pinterest:focus {\n    color: #ffffff;\n    background-color: #a10718;\n    border-color: #970616;\n    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(17, 24, 39, 0.075), 0 0 0 0.18rem rgba(199, 45, 62, 0.5); }\n  .btn-check:checked + .btn-pinterest,\n  .btn-check:active + .btn-pinterest, .btn-pinterest:active, .btn-pinterest.active,\n  .show > .btn-pinterest.dropdown-toggle {\n    color: #ffffff;\n    background-color: #970616;\n    border-color: #8e0615; }\n    .btn-check:checked + .btn-pinterest:focus,\n    .btn-check:active + .btn-pinterest:focus, .btn-pinterest:active:focus, .btn-pinterest.active:focus,\n    .show > .btn-pinterest.dropdown-toggle:focus {\n      box-shadow: inset 0 3px 5px rgba(17, 24, 39, 0.125), 0 0 0 0.18rem rgba(199, 45, 62, 0.5); }\n  .btn-pinterest:disabled, .btn-pinterest.disabled {\n    color: #ffffff;\n    background-color: #bd081c;\n    border-color: #bd081c; }\n  .btn-pinterest.btn-link {\n    color: #bd081c;\n    background: transparent;\n    box-shadow: none;\n    border: 0;\n    border-style: none; }\n    .btn-pinterest.btn-link:hover, .btn-pinterest.btn-link:focus, .btn-pinterest.btn-link.active {\n      background-color: transparent !important;\n      box-shadow: none;\n      border: 0;\n      color: #bd081c; }\n\n.btn-youtube {\n  color: #ffffff;\n  background-color: #cd201f;\n  border-color: #cd201f;\n  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(17, 24, 39, 0.075); }\n  .btn-youtube:hover {\n    color: #ffffff;\n    background-color: #ae1b1a;\n    border-color: #a41a19; }\n  .btn-check:focus + .btn-youtube, .btn-youtube:focus {\n    color: #ffffff;\n    background-color: #ae1b1a;\n    border-color: #a41a19;\n    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(17, 24, 39, 0.075), 0 0 0 0.18rem rgba(213, 65, 65, 0.5); }\n  .btn-check:checked + .btn-youtube,\n  .btn-check:active + .btn-youtube, .btn-youtube:active, .btn-youtube.active,\n  .show > .btn-youtube.dropdown-toggle {\n    color: #ffffff;\n    background-color: #a41a19;\n    border-color: #9a1817; }\n    .btn-check:checked + .btn-youtube:focus,\n    .btn-check:active + .btn-youtube:focus, .btn-youtube:active:focus, .btn-youtube.active:focus,\n    .show > .btn-youtube.dropdown-toggle:focus {\n      box-shadow: inset 0 3px 5px rgba(17, 24, 39, 0.125), 0 0 0 0.18rem rgba(213, 65, 65, 0.5); }\n  .btn-youtube:disabled, .btn-youtube.disabled {\n    color: #ffffff;\n    background-color: #cd201f;\n    border-color: #cd201f; }\n  .btn-youtube.btn-link {\n    color: #cd201f;\n    background: transparent;\n    box-shadow: none;\n    border: 0;\n    border-style: none; }\n    .btn-youtube.btn-link:hover, .btn-youtube.btn-link:focus, .btn-youtube.btn-link.active {\n      background-color: transparent !important;\n      box-shadow: none;\n      border: 0;\n      color: #cd201f; }\n\n.btn-slack {\n  color: #1F2937;\n  background-color: #3aaf85;\n  border-color: #3aaf85;\n  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(17, 24, 39, 0.075); }\n  .btn-slack:hover {\n    color: #1F2937;\n    background-color: #58bb97;\n    border-color: #4eb791; }\n  .btn-check:focus + .btn-slack, .btn-slack:focus {\n    color: #1F2937;\n    background-color: #58bb97;\n    border-color: #4eb791;\n    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(17, 24, 39, 0.075), 0 0 0 0.18rem rgba(54, 155, 121, 0.5); }\n  .btn-check:checked + .btn-slack,\n  .btn-check:active + .btn-slack, .btn-slack:active, .btn-slack.active,\n  .show > .btn-slack.dropdown-toggle {\n    color: #1F2937;\n    background-color: #61bf9d;\n    border-color: #4eb791; }\n    .btn-check:checked + .btn-slack:focus,\n    .btn-check:active + .btn-slack:focus, .btn-slack:active:focus, .btn-slack.active:focus,\n    .show > .btn-slack.dropdown-toggle:focus {\n      box-shadow: inset 0 3px 5px rgba(17, 24, 39, 0.125), 0 0 0 0.18rem rgba(54, 155, 121, 0.5); }\n  .btn-slack:disabled, .btn-slack.disabled {\n    color: #1F2937;\n    background-color: #3aaf85;\n    border-color: #3aaf85; }\n  .btn-slack.btn-link {\n    color: #3aaf85;\n    background: transparent;\n    box-shadow: none;\n    border: 0;\n    border-style: none; }\n    .btn-slack.btn-link:hover, .btn-slack.btn-link:focus, .btn-slack.btn-link.active {\n      background-color: transparent !important;\n      box-shadow: none;\n      border: 0;\n      color: #3aaf85; }\n\n.btn-dribbble {\n  color: #ffffff;\n  background-color: #ea4c89;\n  border-color: #ea4c89;\n  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(17, 24, 39, 0.075); }\n  .btn-dribbble:hover {\n    color: #ffffff;\n    background-color: #c74174;\n    border-color: #bb3d6e; }\n  .btn-check:focus + .btn-dribbble, .btn-dribbble:focus {\n    color: #ffffff;\n    background-color: #c74174;\n    border-color: #bb3d6e;\n    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(17, 24, 39, 0.075), 0 0 0 0.18rem rgba(237, 103, 155, 0.5); }\n  .btn-check:checked + .btn-dribbble,\n  .btn-check:active + .btn-dribbble, .btn-dribbble:active, .btn-dribbble.active,\n  .show > .btn-dribbble.dropdown-toggle {\n    color: #ffffff;\n    background-color: #bb3d6e;\n    border-color: #b03967; }\n    .btn-check:checked + .btn-dribbble:focus,\n    .btn-check:active + .btn-dribbble:focus, .btn-dribbble:active:focus, .btn-dribbble.active:focus,\n    .show > .btn-dribbble.dropdown-toggle:focus {\n      box-shadow: inset 0 3px 5px rgba(17, 24, 39, 0.125), 0 0 0 0.18rem rgba(237, 103, 155, 0.5); }\n  .btn-dribbble:disabled, .btn-dribbble.disabled {\n    color: #ffffff;\n    background-color: #ea4c89;\n    border-color: #ea4c89; }\n  .btn-dribbble.btn-link {\n    color: #ea4c89;\n    background: transparent;\n    box-shadow: none;\n    border: 0;\n    border-style: none; }\n    .btn-dribbble.btn-link:hover, .btn-dribbble.btn-link:focus, .btn-dribbble.btn-link.active {\n      background-color: transparent !important;\n      box-shadow: none;\n      border: 0;\n      color: #ea4c89; }\n\n.btn-dropbox {\n  color: #ffffff;\n  background-color: #1E90FF;\n  border-color: #1E90FF;\n  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(17, 24, 39, 0.075); }\n  .btn-dropbox:hover {\n    color: #ffffff;\n    background-color: #1a7ad9;\n    border-color: #1873cc; }\n  .btn-check:focus + .btn-dropbox, .btn-dropbox:focus {\n    color: #ffffff;\n    background-color: #1a7ad9;\n    border-color: #1873cc;\n    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(17, 24, 39, 0.075), 0 0 0 0.18rem rgba(64, 161, 255, 0.5); }\n  .btn-check:checked + .btn-dropbox,\n  .btn-check:active + .btn-dropbox, .btn-dropbox:active, .btn-dropbox.active,\n  .show > .btn-dropbox.dropdown-toggle {\n    color: #ffffff;\n    background-color: #1873cc;\n    border-color: #176cbf; }\n    .btn-check:checked + .btn-dropbox:focus,\n    .btn-check:active + .btn-dropbox:focus, .btn-dropbox:active:focus, .btn-dropbox.active:focus,\n    .show > .btn-dropbox.dropdown-toggle:focus {\n      box-shadow: inset 0 3px 5px rgba(17, 24, 39, 0.125), 0 0 0 0.18rem rgba(64, 161, 255, 0.5); }\n  .btn-dropbox:disabled, .btn-dropbox.disabled {\n    color: #ffffff;\n    background-color: #1E90FF;\n    border-color: #1E90FF; }\n  .btn-dropbox.btn-link {\n    color: #1E90FF;\n    background: transparent;\n    box-shadow: none;\n    border: 0;\n    border-style: none; }\n    .btn-dropbox.btn-link:hover, .btn-dropbox.btn-link:focus, .btn-dropbox.btn-link.active {\n      background-color: transparent !important;\n      box-shadow: none;\n      border: 0;\n      color: #1E90FF; }\n\n.btn-twitch {\n  color: #ffffff;\n  background-color: #4B367C;\n  border-color: #4B367C;\n  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(17, 24, 39, 0.075); }\n  .btn-twitch:hover {\n    color: #ffffff;\n    background-color: #402e69;\n    border-color: #3c2b63; }\n  .btn-check:focus + .btn-twitch, .btn-twitch:focus {\n    color: #ffffff;\n    background-color: #402e69;\n    border-color: #3c2b63;\n    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(17, 24, 39, 0.075), 0 0 0 0.18rem rgba(102, 84, 144, 0.5); }\n  .btn-check:checked + .btn-twitch,\n  .btn-check:active + .btn-twitch, .btn-twitch:active, .btn-twitch.active,\n  .show > .btn-twitch.dropdown-toggle {\n    color: #ffffff;\n    background-color: #3c2b63;\n    border-color: #38295d; }\n    .btn-check:checked + .btn-twitch:focus,\n    .btn-check:active + .btn-twitch:focus, .btn-twitch:active:focus, .btn-twitch.active:focus,\n    .show > .btn-twitch.dropdown-toggle:focus {\n      box-shadow: inset 0 3px 5px rgba(17, 24, 39, 0.125), 0 0 0 0.18rem rgba(102, 84, 144, 0.5); }\n  .btn-twitch:disabled, .btn-twitch.disabled {\n    color: #ffffff;\n    background-color: #4B367C;\n    border-color: #4B367C; }\n  .btn-twitch.btn-link {\n    color: #4B367C;\n    background: transparent;\n    box-shadow: none;\n    border: 0;\n    border-style: none; }\n    .btn-twitch.btn-link:hover, .btn-twitch.btn-link:focus, .btn-twitch.btn-link.active {\n      background-color: transparent !important;\n      box-shadow: none;\n      border: 0;\n      color: #4B367C; }\n\n.btn-paypal {\n  color: #1F2937;\n  background-color: #ecb32c;\n  border-color: #ecb32c;\n  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(17, 24, 39, 0.075); }\n  .btn-paypal:hover {\n    color: #1F2937;\n    background-color: #efbe4c;\n    border-color: #eebb41; }\n  .btn-check:focus + .btn-paypal, .btn-paypal:focus {\n    color: #1F2937;\n    background-color: #efbe4c;\n    border-color: #eebb41;\n    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(17, 24, 39, 0.075), 0 0 0 0.18rem rgba(205, 158, 46, 0.5); }\n  .btn-check:checked + .btn-paypal,\n  .btn-check:active + .btn-paypal, .btn-paypal:active, .btn-paypal.active,\n  .show > .btn-paypal.dropdown-toggle {\n    color: #1F2937;\n    background-color: #f0c256;\n    border-color: #eebb41; }\n    .btn-check:checked + .btn-paypal:focus,\n    .btn-check:active + .btn-paypal:focus, .btn-paypal:active:focus, .btn-paypal.active:focus,\n    .show > .btn-paypal.dropdown-toggle:focus {\n      box-shadow: inset 0 3px 5px rgba(17, 24, 39, 0.125), 0 0 0 0.18rem rgba(205, 158, 46, 0.5); }\n  .btn-paypal:disabled, .btn-paypal.disabled {\n    color: #1F2937;\n    background-color: #ecb32c;\n    border-color: #ecb32c; }\n  .btn-paypal.btn-link {\n    color: #ecb32c;\n    background: transparent;\n    box-shadow: none;\n    border: 0;\n    border-style: none; }\n    .btn-paypal.btn-link:hover, .btn-paypal.btn-link:focus, .btn-paypal.btn-link.active {\n      background-color: transparent !important;\n      box-shadow: none;\n      border: 0;\n      color: #ecb32c; }\n\n.btn-behance {\n  color: #ffffff;\n  background-color: #0057ff;\n  border-color: #0057ff;\n  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(17, 24, 39, 0.075); }\n  .btn-behance:hover {\n    color: #ffffff;\n    background-color: #004ad9;\n    border-color: #0046cc; }\n  .btn-check:focus + .btn-behance, .btn-behance:focus {\n    color: #ffffff;\n    background-color: #004ad9;\n    border-color: #0046cc;\n    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(17, 24, 39, 0.075), 0 0 0 0.18rem rgba(38, 112, 255, 0.5); }\n  .btn-check:checked + .btn-behance,\n  .btn-check:active + .btn-behance, .btn-behance:active, .btn-behance.active,\n  .show > .btn-behance.dropdown-toggle {\n    color: #ffffff;\n    background-color: #0046cc;\n    border-color: #0041bf; }\n    .btn-check:checked + .btn-behance:focus,\n    .btn-check:active + .btn-behance:focus, .btn-behance:active:focus, .btn-behance.active:focus,\n    .show > .btn-behance.dropdown-toggle:focus {\n      box-shadow: inset 0 3px 5px rgba(17, 24, 39, 0.125), 0 0 0 0.18rem rgba(38, 112, 255, 0.5); }\n  .btn-behance:disabled, .btn-behance.disabled {\n    color: #ffffff;\n    background-color: #0057ff;\n    border-color: #0057ff; }\n  .btn-behance.btn-link {\n    color: #0057ff;\n    background: transparent;\n    box-shadow: none;\n    border: 0;\n    border-style: none; }\n    .btn-behance.btn-link:hover, .btn-behance.btn-link:focus, .btn-behance.btn-link.active {\n      background-color: transparent !important;\n      box-shadow: none;\n      border: 0;\n      color: #0057ff; }\n\n.btn-reddit {\n  color: #ffffff;\n  background-color: #E84422;\n  border-color: #E84422;\n  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(17, 24, 39, 0.075); }\n  .btn-reddit:hover {\n    color: #ffffff;\n    background-color: #c53a1d;\n    border-color: #ba361b; }\n  .btn-check:focus + .btn-reddit, .btn-reddit:focus {\n    color: #ffffff;\n    background-color: #c53a1d;\n    border-color: #ba361b;\n    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(17, 24, 39, 0.075), 0 0 0 0.18rem rgba(235, 96, 67, 0.5); }\n  .btn-check:checked + .btn-reddit,\n  .btn-check:active + .btn-reddit, .btn-reddit:active, .btn-reddit.active,\n  .show > .btn-reddit.dropdown-toggle {\n    color: #ffffff;\n    background-color: #ba361b;\n    border-color: #ae331a; }\n    .btn-check:checked + .btn-reddit:focus,\n    .btn-check:active + .btn-reddit:focus, .btn-reddit:active:focus, .btn-reddit.active:focus,\n    .show > .btn-reddit.dropdown-toggle:focus {\n      box-shadow: inset 0 3px 5px rgba(17, 24, 39, 0.125), 0 0 0 0.18rem rgba(235, 96, 67, 0.5); }\n  .btn-reddit:disabled, .btn-reddit.disabled {\n    color: #ffffff;\n    background-color: #E84422;\n    border-color: #E84422; }\n  .btn-reddit.btn-link {\n    color: #E84422;\n    background: transparent;\n    box-shadow: none;\n    border: 0;\n    border-style: none; }\n    .btn-reddit.btn-link:hover, .btn-reddit.btn-link:focus, .btn-reddit.btn-link.active {\n      background-color: transparent !important;\n      box-shadow: none;\n      border: 0;\n      color: #E84422; }\n\n.btn-github {\n  color: #ffffff;\n  background-color: #222222;\n  border-color: #222222;\n  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(17, 24, 39, 0.075); }\n  .btn-github:hover {\n    color: #ffffff;\n    background-color: #1d1d1d;\n    border-color: #1b1b1b; }\n  .btn-check:focus + .btn-github, .btn-github:focus {\n    color: #ffffff;\n    background-color: #1d1d1d;\n    border-color: #1b1b1b;\n    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(17, 24, 39, 0.075), 0 0 0 0.18rem rgba(67, 67, 67, 0.5); }\n  .btn-check:checked + .btn-github,\n  .btn-check:active + .btn-github, .btn-github:active, .btn-github.active,\n  .show > .btn-github.dropdown-toggle {\n    color: #ffffff;\n    background-color: #1b1b1b;\n    border-color: #1a1a1a; }\n    .btn-check:checked + .btn-github:focus,\n    .btn-check:active + .btn-github:focus, .btn-github:active:focus, .btn-github.active:focus,\n    .show > .btn-github.dropdown-toggle:focus {\n      box-shadow: inset 0 3px 5px rgba(17, 24, 39, 0.125), 0 0 0 0.18rem rgba(67, 67, 67, 0.5); }\n  .btn-github:disabled, .btn-github.disabled {\n    color: #ffffff;\n    background-color: #222222;\n    border-color: #222222; }\n  .btn-github.btn-link {\n    color: #222222;\n    background: transparent;\n    box-shadow: none;\n    border: 0;\n    border-style: none; }\n    .btn-github.btn-link:hover, .btn-github.btn-link:focus, .btn-github.btn-link.active {\n      background-color: transparent !important;\n      box-shadow: none;\n      border: 0;\n      color: #222222; }\n\n/**\n * = Breadcrumbs\n */\n.breadcrumb-item {\n  font-size: 0.75rem; }\n  .breadcrumb-item, .breadcrumb-item a {\n    color: #374151;\n    font-weight: 400;\n    font-size: 0.75rem; }\n    @media (min-width: 576px) {\n      .breadcrumb-item, .breadcrumb-item a {\n        font-size: 0.875rem; } }\n  .breadcrumb-item.active {\n    font-weight: 400; }\n\n.breadcrumb-transparent {\n  background: transparent;\n  padding: 0; }\n\n.breadcrumb-primary {\n  background: #1F2937; }\n  .breadcrumb-primary .breadcrumb-item.active {\n    color: #ffffff; }\n  .breadcrumb-primary.breadcrumb-transparent {\n    background: transparent; }\n    .breadcrumb-primary.breadcrumb-transparent .breadcrumb-item.active {\n      color: #1F2937; }\n\n.breadcrumb-secondary {\n  background: #f0bc74; }\n  .breadcrumb-secondary .breadcrumb-item.active {\n    color: #ffffff; }\n  .breadcrumb-secondary.breadcrumb-transparent {\n    background: transparent; }\n    .breadcrumb-secondary.breadcrumb-transparent .breadcrumb-item.active {\n      color: #f0bc74; }\n\n.breadcrumb-tertiary {\n  background: #31316A; }\n  .breadcrumb-tertiary .breadcrumb-item.active {\n    color: #ffffff; }\n  .breadcrumb-tertiary.breadcrumb-transparent {\n    background: transparent; }\n    .breadcrumb-tertiary.breadcrumb-transparent .breadcrumb-item.active {\n      color: #31316A; }\n\n.breadcrumb-success {\n  background: #10B981; }\n  .breadcrumb-success .breadcrumb-item.active {\n    color: #ffffff; }\n  .breadcrumb-success.breadcrumb-transparent {\n    background: transparent; }\n    .breadcrumb-success.breadcrumb-transparent .breadcrumb-item.active {\n      color: #10B981; }\n\n.breadcrumb-info {\n  background: #2361ce; }\n  .breadcrumb-info .breadcrumb-item.active {\n    color: #ffffff; }\n  .breadcrumb-info.breadcrumb-transparent {\n    background: transparent; }\n    .breadcrumb-info.breadcrumb-transparent .breadcrumb-item.active {\n      color: #2361ce; }\n\n.breadcrumb-warning {\n  background: #f3c78e; }\n  .breadcrumb-warning .breadcrumb-item.active {\n    color: #ffffff; }\n  .breadcrumb-warning.breadcrumb-transparent {\n    background: transparent; }\n    .breadcrumb-warning.breadcrumb-transparent .breadcrumb-item.active {\n      color: #f3c78e; }\n\n.breadcrumb-danger {\n  background: #E11D48; }\n  .breadcrumb-danger .breadcrumb-item.active {\n    color: #ffffff; }\n  .breadcrumb-danger.breadcrumb-transparent {\n    background: transparent; }\n    .breadcrumb-danger.breadcrumb-transparent .breadcrumb-item.active {\n      color: #E11D48; }\n\n.breadcrumb-white {\n  background: #ffffff; }\n  .breadcrumb-white .breadcrumb-item.active {\n    color: #ffffff; }\n  .breadcrumb-white.breadcrumb-transparent {\n    background: transparent; }\n    .breadcrumb-white.breadcrumb-transparent .breadcrumb-item.active {\n      color: #ffffff; }\n\n.breadcrumb-indigo {\n  background: #4F46E5; }\n  .breadcrumb-indigo .breadcrumb-item.active {\n    color: #ffffff; }\n  .breadcrumb-indigo.breadcrumb-transparent {\n    background: transparent; }\n    .breadcrumb-indigo.breadcrumb-transparent .breadcrumb-item.active {\n      color: #4F46E5; }\n\n.breadcrumb-purple {\n  background: #7C3AED; }\n  .breadcrumb-purple .breadcrumb-item.active {\n    color: #ffffff; }\n  .breadcrumb-purple.breadcrumb-transparent {\n    background: transparent; }\n    .breadcrumb-purple.breadcrumb-transparent .breadcrumb-item.active {\n      color: #7C3AED; }\n\n.breadcrumb-yellow-100 {\n  background: #ffeed6; }\n  .breadcrumb-yellow-100 .breadcrumb-item.active {\n    color: #ffffff; }\n  .breadcrumb-yellow-100.breadcrumb-transparent {\n    background: transparent; }\n    .breadcrumb-yellow-100.breadcrumb-transparent .breadcrumb-item.active {\n      color: #ffeed6; }\n\n.breadcrumb-yellow-200 {\n  background: #f5dbb8; }\n  .breadcrumb-yellow-200 .breadcrumb-item.active {\n    color: #ffffff; }\n  .breadcrumb-yellow-200.breadcrumb-transparent {\n    background: transparent; }\n    .breadcrumb-yellow-200.breadcrumb-transparent .breadcrumb-item.active {\n      color: #f5dbb8; }\n\n.breadcrumb-gray-50 {\n  background: #F9FAFB; }\n  .breadcrumb-gray-50 .breadcrumb-item.active {\n    color: #ffffff; }\n  .breadcrumb-gray-50.breadcrumb-transparent {\n    background: transparent; }\n    .breadcrumb-gray-50.breadcrumb-transparent .breadcrumb-item.active {\n      color: #F9FAFB; }\n\n.breadcrumb-gray-100 {\n  background: #F2F4F6; }\n  .breadcrumb-gray-100 .breadcrumb-item.active {\n    color: #ffffff; }\n  .breadcrumb-gray-100.breadcrumb-transparent {\n    background: transparent; }\n    .breadcrumb-gray-100.breadcrumb-transparent .breadcrumb-item.active {\n      color: #F2F4F6; }\n\n.breadcrumb-gray-200 {\n  background: #E5E7EB; }\n  .breadcrumb-gray-200 .breadcrumb-item.active {\n    color: #ffffff; }\n  .breadcrumb-gray-200.breadcrumb-transparent {\n    background: transparent; }\n    .breadcrumb-gray-200.breadcrumb-transparent .breadcrumb-item.active {\n      color: #E5E7EB; }\n\n.breadcrumb-gray-300 {\n  background: #D1D5DB; }\n  .breadcrumb-gray-300 .breadcrumb-item.active {\n    color: #ffffff; }\n  .breadcrumb-gray-300.breadcrumb-transparent {\n    background: transparent; }\n    .breadcrumb-gray-300.breadcrumb-transparent .breadcrumb-item.active {\n      color: #D1D5DB; }\n\n.breadcrumb-gray-400 {\n  background: #9CA3AF; }\n  .breadcrumb-gray-400 .breadcrumb-item.active {\n    color: #ffffff; }\n  .breadcrumb-gray-400.breadcrumb-transparent {\n    background: transparent; }\n    .breadcrumb-gray-400.breadcrumb-transparent .breadcrumb-item.active {\n      color: #9CA3AF; }\n\n.breadcrumb-gray-500 {\n  background: #6B7280; }\n  .breadcrumb-gray-500 .breadcrumb-item.active {\n    color: #ffffff; }\n  .breadcrumb-gray-500.breadcrumb-transparent {\n    background: transparent; }\n    .breadcrumb-gray-500.breadcrumb-transparent .breadcrumb-item.active {\n      color: #6B7280; }\n\n.breadcrumb-gray-600 {\n  background: #4B5563; }\n  .breadcrumb-gray-600 .breadcrumb-item.active {\n    color: #ffffff; }\n  .breadcrumb-gray-600.breadcrumb-transparent {\n    background: transparent; }\n    .breadcrumb-gray-600.breadcrumb-transparent .breadcrumb-item.active {\n      color: #4B5563; }\n\n.breadcrumb-gray-700 {\n  background: #374151; }\n  .breadcrumb-gray-700 .breadcrumb-item.active {\n    color: #ffffff; }\n  .breadcrumb-gray-700.breadcrumb-transparent {\n    background: transparent; }\n    .breadcrumb-gray-700.breadcrumb-transparent .breadcrumb-item.active {\n      color: #374151; }\n\n.breadcrumb-gray-800 {\n  background: #1F2937; }\n  .breadcrumb-gray-800 .breadcrumb-item.active {\n    color: #ffffff; }\n  .breadcrumb-gray-800.breadcrumb-transparent {\n    background: transparent; }\n    .breadcrumb-gray-800.breadcrumb-transparent .breadcrumb-item.active {\n      color: #1F2937; }\n\n.breadcrumb-gray-900 {\n  background: #111827; }\n  .breadcrumb-gray-900 .breadcrumb-item.active {\n    color: #ffffff; }\n  .breadcrumb-gray-900.breadcrumb-transparent {\n    background: transparent; }\n    .breadcrumb-gray-900.breadcrumb-transparent .breadcrumb-item.active {\n      color: #111827; }\n\n.breadcrumb-text-light .breadcrumb-item, .breadcrumb-text-light .breadcrumb-item a {\n  color: #ffffff; }\n\n.breadcrumb-text-light .breadcrumb-item:before {\n  color: #ffffff; }\n\n/**\n * = Cards\n */\n.card {\n  position: relative; }\n  .card .card-header {\n    background: transparent; }\n  .card.hover-state:hover {\n    background-color: #E5E7EB; }\n  .card .profile-cover {\n    background-repeat: no-repeat;\n    background-position: top center;\n    background-size: cover;\n    height: 200px; }\n\n.message-wrapper .card,\n.task-wrapper .card {\n  border: 0; }\n\n.customer-testimonial .content-wrapper:before {\n  content: \"\";\n  position: absolute;\n  top: 25px;\n  left: -1px;\n  margin-left: .75rem;\n  border: 8px solid #111827;\n  border-color: transparent #e0e6ec #e0e6ec transparent;\n  box-sizing: border-box;\n  transform-origin: 0 0;\n  transform: rotate(135deg);\n  box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px 0 rgba(0, 0, 0, 0.06); }\n\n.card-footer {\n  background-color: transparent; }\n\n.card-stats {\n  padding-left: 1.9rem; }\n\n.card .card-blockquote {\n  position: relative;\n  padding: 2rem; }\n  .card .card-blockquote .svg-bg {\n    display: block;\n    position: absolute;\n    width: 100%;\n    height: 95px;\n    top: -94px;\n    left: 0; }\n\n.page-preview {\n  display: block;\n  position: relative; }\n  .page-preview .show-on-hover {\n    position: absolute;\n    bottom: -0;\n    background: rgba(31, 41, 55, 0.85);\n    padding: 10px 0;\n    width: 100%;\n    left: 0;\n    opacity: 0;\n    transition: 0.2s; }\n    @media (prefers-reduced-motion: reduce) {\n      .page-preview .show-on-hover {\n        transition: none; } }\n  .page-preview:hover {\n    z-index: 1; }\n    .page-preview:hover .show-on-hover {\n      opacity: 1; }\n\n.theme-settings {\n  z-index: 99;\n  position: fixed;\n  right: 15px;\n  bottom: 0; }\n  .theme-settings, .theme-settings .card-body {\n    border-bottom-right-radius: 0;\n    border-bottom-left-radius: 0; }\n\n.theme-settings-close {\n  position: absolute;\n  top: 8px;\n  right: 8px;\n  font-size: .65rem; }\n\n.btn-close.theme-settings-close {\n  background: transparent url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23ffffff'%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;\n  border: 0;\n  border-radius: 0.5rem;\n  opacity: 0.5; }\n\n.theme-settings-expand {\n  right: 15px;\n  bottom: 0;\n  height: 0;\n  transition: 0.3s height; }\n  @media (prefers-reduced-motion: reduce) {\n    .theme-settings-expand {\n      transition: none; } }\n  .theme-settings-expand.show {\n    height: 40px; }\n  .theme-settings-expand:hover {\n    background: #4B5563;\n    cursor: pointer; }\n\n/**\n * = Bootstrap carousels\n */\n.carousel-caption, .carousel-caption h5, .carousel-caption .h5 {\n  color: #ffffff; }\n\n.carousel-indicators li {\n  height: 10px;\n  width: 10px;\n  border-radius: 50%;\n  background: transparent;\n  border: 2px solid #ffffff; }\n\n.carousel-indicators .active {\n  opacity: 1;\n  background: #ffffff; }\n\n.carousel-control-prev-icon,\n.carousel-control-next-icon {\n  width: auto;\n  height: auto;\n  font-weight: 900; }\n\n.carousel-control-prev-icon {\n  background-image: none; }\n  .carousel-control-prev-icon::before {\n    content: '\\f060';\n    font-family: \"Font Awesome 5 Free\";\n    font-size: 2rem; }\n\n.carousel-control-next-icon {\n  background-image: none; }\n  .carousel-control-next-icon:before {\n    font-family: \"Font Awesome 5 Free\";\n    content: \"\\f061\";\n    font-size: 2rem; }\n\n/**\n * = Close\n */\n.close {\n  transition: all 0.2s ease; }\n  .close > span:not(.sr-only) {\n    display: block;\n    height: 1.25rem;\n    width: 1.25rem;\n    background-color: transparent;\n    color: rgba(0, 0, 0, 0.6);\n    line-height: 17px;\n    border-radius: 50%;\n    font-size: 1.25rem;\n    transition: all 0.2s ease; }\n  .close:hover, .close:focus {\n    background-color: transparent;\n    color: rgba(0, 0, 0, 0.9);\n    outline: none; }\n    .close:hover span:not(.sr-only), .close:focus span:not(.sr-only) {\n      background-color: transparent; }\n\n/**\n * = Custom forms\n */\n.custom-control-label:before {\n  box-shadow: none;\n  transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; }\n\n.custom-control-label span {\n  position: relative;\n  top: 2px; }\n\n.custom-control-label {\n  margin-bottom: 0; }\n\n.custom-control-input:active ~ .custom-control-label::before {\n  border-color: #1F2937; }\n\n.custom-file-label {\n  background-color: #f3f3f5; }\n  .custom-file-label::after {\n    background-color: #f3f3f5; }\n\n.custom-select {\n  font-size: 0.875rem;\n  box-shadow: none; }\n  .custom-select.custom-select-shadow {\n    box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.07);\n    transition: box-shadow .15s ease; }\n    .custom-select.custom-select-shadow:focus {\n      box-shadow: 0.1rem 0.1rem 0 rgba(229, 231, 235, 0.5); }\n  .custom-select:hover {\n    cursor: pointer; }\n\n.rating-star.star-lg label {\n  margin-bottom: .5rem; }\n  .rating-star.star-lg label::before {\n    font-size: 1.5rem; }\n\n.rating-star label {\n  position: relative;\n  margin-bottom: 0;\n  cursor: pointer;\n  color: #9CA3AF; }\n  .rating-star label:before {\n    content: \"\\f005\";\n    font-family: \"Font Awesome 5 Free\";\n    font-weight: 900;\n    transition: all .2s ease;\n    font-size: 1.0625rem; }\n\n.rating-star input {\n  position: absolute;\n  z-index: -1;\n  opacity: 0; }\n\n.rating-star > input:checked ~ label {\n  color: #f3c78e; }\n\n.rating-star > label:hover {\n  color: #f3c78e; }\n\n.rating-star > label:hover ~ label {\n  color: #f3c78e; }\n\n.ct-bar {\n  stroke-linecap: round;\n  stroke-width: 10px; }\n\n.ct-label {\n  fill: #374151;\n  color: #374151;\n  font-size: 0.75rem;\n  margin-top: 6px;\n  font-weight: 500; }\n\n.ct-slice-pie {\n  stroke: #ffffff;\n  stroke-width: 3px; }\n\n.ct-chart-donut .ct-series {\n  stroke: #ffffff;\n  stroke-width: 3px; }\n\n.ct-chart-pie .ct-label,\n.ct-chart-donut .ct-label {\n  font-size: 0.75rem;\n  font-weight: 500; }\n\n.small-chart {\n  margin-left: -1rem; }\n\n.ct-chart-pie .ct-label,\n.ct-chart-donut .ct-label {\n  color: #ffffff;\n  fill: #ffffff;\n  font-size: 1rem;\n  font-weight: 500; }\n\n.ct-series-g .ct-grid {\n  stroke: #F8BD7A;\n  stroke-width: 2px;\n  stroke-dasharray: 2px; }\n\n.ct-series-g .ct-label.ct-horizontal.ct-end {\n  margin-left: -9px;\n  margin-top: 10px;\n  color: #1F2937; }\n\n.dropdown-menu .dropdown-header,\n.dropdown-menu .dropdown-item {\n  padding: .5rem 1rem;\n  font-size: 0.875rem; }\n  .dropdown-menu .dropdown-header .dropdown-icon,\n  .dropdown-menu .dropdown-item .dropdown-icon {\n    height: 1.25rem;\n    width: 1.25rem; }\n\n.dropdown-menu .dropdown-header {\n  color: #111827;\n  font-weight: 500; }\n\n.dropdown-menu .dropdown-item {\n  transition: all 0.2s ease;\n  font-weight: 400; }\n\n.show .dropdown-menu {\n  animation: show-dropdown .2s ease forwards; }\n\n.dropdown-menu.dropdown-menu-xs {\n  min-width: 120px;\n  max-width: 120px;\n  box-shadow: 0 2px 5px rgba(140, 152, 164, 0.2); }\n\n.dropdown-menu-sm {\n  min-width: 100px;\n  border: 1rem; }\n\n.dropdown-menu-md {\n  min-width: 180px;\n  border: 1rem; }\n\n.dropdown-menu-lg {\n  min-width: 350px;\n  border-radius: 1rem; }\n  @media (max-width: 575.98px) {\n    .dropdown-menu-lg {\n      min-width: 300px; } }\n\n[data-toggle]:hover {\n  cursor: pointer; }\n\n.dropdown-toggle:after, .dropend .dropdown-toggle:after, .dropstart .dropdown-toggle:before, .dropup .dropdown-toggle:after {\n  display: none; }\n\n/**\n * = Icon boxes\n */\n.icon {\n  height: 2rem; }\n  .icon.icon-xxs {\n    height: 1rem; }\n  .icon.icon-xs {\n    height: 1.25rem; }\n  .icon.icon-sm {\n    height: 1.5rem; }\n  .icon.icon-lg {\n    height: 3.5rem; }\n  .icon.icon-xl {\n    height: 4.5rem; }\n  .icon.icon-xxl {\n    height: 6rem; }\n  .icon.active-dot svg {\n    height: 0.7rem; }\n\n.icon-shape {\n  width: 4rem;\n  height: 4rem;\n  display: inline-flex;\n  align-items: center;\n  justify-content: center; }\n  .icon-shape svg {\n    height: 2rem; }\n  .icon-shape.icon-xxs {\n    width: 1.5rem;\n    height: 1.5rem; }\n    .icon-shape.icon-xxs svg {\n      height: 1rem; }\n  .icon-shape.icon-xs {\n    width: 2.5rem;\n    height: 2.5rem; }\n    .icon-shape.icon-xs svg {\n      height: 1.25rem; }\n  .icon-shape.icon-sm {\n    width: 3.275rem;\n    height: 3.275rem; }\n    .icon-shape.icon-sm svg {\n      height: 1.5rem; }\n  .icon-shape.icon-lg {\n    width: 5rem;\n    height: 5rem; }\n    .icon-shape.icon-lg svg {\n      height: 3.5rem; }\n  .icon-shape.icon-xl {\n    width: 6rem;\n    height: 6rem; }\n    .icon-shape.icon-xl svg {\n      height: 4.5rem; }\n  .icon-shape.icon-xxl {\n    width: 7.5rem;\n    height: 7.5rem; }\n    .icon-shape.icon-xxl svg {\n      height: 6rem; }\n\n.rating-star:hover {\n  cursor: pointer;\n  color: #f3c78e; }\n\n.toggle-icon {\n  height: 1.875rem; }\n\n.w--20 {\n  width: 20px; }\n\n.calendar {\n  width: 3.125rem;\n  line-height: 1;\n  flex-direction: column;\n  text-align: center;\n  border-radius: 0.5rem; }\n  .calendar .calendar-month {\n    background-color: #E11D48;\n    color: #ffffff;\n    border-radius: 0.5rem 0.5rem 0 0;\n    padding: 0.275rem;\n    font-weight: 500; }\n  .calendar .calendar-day {\n    font-size: 1.5rem;\n    padding: 0.25rem;\n    background-color: #F2F4F6;\n    border-top: 0;\n    border-radius: 0 0 0.5rem 0.5rem;\n    color: #1F2937;\n    font-weight: 500; }\n\n.dot {\n  width: 12px;\n  height: 12px; }\n\n.bell-dot {\n  display: inline-block;\n  position: absolute;\n  top: -11px;\n  right: 6px;\n  height: 10px;\n  width: 10px;\n  border: 2px solid #F2F4F6; }\n\n.notification-bell.unread::before {\n  position: absolute;\n  content: \"\";\n  background-color: #E11D48;\n  right: 12px;\n  top: 7px;\n  height: 0.75rem;\n  width: 0.75rem;\n  border-radius: 50%;\n  border: 2px solid #F2F4F6; }\n\n.bootstrap-big-icon {\n  position: absolute;\n  opacity: 0.05;\n  transform: rotate(17deg); }\n  @media (min-width: 992px) {\n    .bootstrap-big-icon {\n      right: -20%;\n      bottom: 6%; } }\n  @media (min-width: 1200px) {\n    .bootstrap-big-icon {\n      right: -10%;\n      bottom: 6%; } }\n\n.github-big-icon {\n  position: absolute;\n  right: 80px; }\n  .github-big-icon svg {\n    color: #9CA3AF;\n    height: 800px;\n    opacity: 0.2; }\n\n.icon-shape-primary {\n  color: #1F2937;\n  background-color: rgba(31, 41, 55, 0.3); }\n\n.icon-shape-secondary {\n  color: #f0bc74;\n  background-color: rgba(240, 188, 116, 0.3); }\n\n.icon-shape-tertiary {\n  color: #31316A;\n  background-color: rgba(49, 49, 106, 0.3); }\n\n.icon-shape-success {\n  color: #10B981;\n  background-color: rgba(16, 185, 129, 0.3); }\n\n.icon-shape-info {\n  color: #2361ce;\n  background-color: rgba(35, 97, 206, 0.3); }\n\n.icon-shape-warning {\n  color: #f3c78e;\n  background-color: rgba(243, 199, 142, 0.3); }\n\n.icon-shape-danger {\n  color: #E11D48;\n  background-color: rgba(225, 29, 72, 0.3); }\n\n.icon-shape-white {\n  color: #ffffff;\n  background-color: rgba(255, 255, 255, 0.3); }\n\n.icon-shape-indigo {\n  color: #4F46E5;\n  background-color: rgba(79, 70, 229, 0.3); }\n\n.icon-shape-purple {\n  color: #7C3AED;\n  background-color: rgba(124, 58, 237, 0.3); }\n\n.icon-shape-yellow-100 {\n  color: #ffeed6;\n  background-color: rgba(255, 238, 214, 0.3); }\n\n.icon-shape-yellow-200 {\n  color: #f5dbb8;\n  background-color: rgba(245, 219, 184, 0.3); }\n\n.icon-shape-gray-50 {\n  color: #F9FAFB;\n  background-color: rgba(249, 250, 251, 0.3); }\n\n.icon-shape-gray-100 {\n  color: #F2F4F6;\n  background-color: rgba(242, 244, 246, 0.3); }\n\n.icon-shape-gray-200 {\n  color: #E5E7EB;\n  background-color: rgba(229, 231, 235, 0.3); }\n\n.icon-shape-gray-300 {\n  color: #D1D5DB;\n  background-color: rgba(209, 213, 219, 0.3); }\n\n.icon-shape-gray-400 {\n  color: #9CA3AF;\n  background-color: rgba(156, 163, 175, 0.3); }\n\n.icon-shape-gray-500 {\n  color: #6B7280;\n  background-color: rgba(107, 114, 128, 0.3); }\n\n.icon-shape-gray-600 {\n  color: #4B5563;\n  background-color: rgba(75, 85, 99, 0.3); }\n\n.icon-shape-gray-700 {\n  color: #374151;\n  background-color: rgba(55, 65, 81, 0.3); }\n\n.icon-shape-gray-800 {\n  color: #1F2937;\n  background-color: rgba(31, 41, 55, 0.3); }\n\n.icon-shape-gray-900 {\n  color: #111827;\n  background-color: rgba(17, 24, 39, 0.3); }\n\n/**\n * = Images\n */\n.image-xl {\n  height: 20rem; }\n  .image-xl img {\n    height: 20rem; }\n\n.image-lg {\n  height: 12rem; }\n  .image-lg img {\n    height: 12rem; }\n\n.image-md {\n  height: 5.5rem; }\n  .image-md img {\n    height: 5.5rem; }\n\n.image-sm {\n  height: 3rem; }\n  .image-sm img {\n    height: 3rem; }\n\n.image-xs {\n  height: 1.5rem; }\n  .image-xs img {\n    height: 1.5rem; }\n\n.image-small {\n  height: 1rem; }\n  .image-small img {\n    height: 1rem; }\n\n.full-image {\n  height: 100%; }\n\n.language-flag {\n  width: auto;\n  height: 1rem;\n  margin-right: 0.4rem;\n  position: relative;\n  top: -2px; }\n\n.home-pattern {\n  fill: #F2F4F6; }\n\n.form-bg-image {\n  background-repeat: no-repeat !important;\n  background-position: top center !important; }\n\n/**\n * = List groups\n */\n.list-group-space .list-group-item {\n  margin-bottom: 1.5rem;\n  border-radius: 0.5rem; }\n\n.list-group-item {\n  border: 0; }\n  .list-group-item.active {\n    z-index: 2;\n    color: #ffffff;\n    background-color: #1F2937;\n    border-color: #1F2937; }\n  .list-group-item i {\n    width: 1rem; }\n\n.list-group-img {\n  width: 3rem;\n  height: 3rem;\n  border-radius: 50%;\n  vertical-align: top;\n  margin: -.1rem 1.2rem 0 -.2rem; }\n\n.list-group-content {\n  flex: 1;\n  min-width: 0; }\n  .list-group-content > p {\n    color: #6B7280;\n    line-height: 1.5;\n    margin: .2rem 0 0; }\n\n.list-group-heading {\n  font-size: 1rem;\n  color: #1F2937; }\n  .list-group-heading > small, .list-group-heading > .small {\n    float: right;\n    color: #6B7280;\n    font-weight: 500; }\n\n.list-group.simple-list .list-group-item {\n  background: transparent;\n  border: none;\n  padding: 0.375rem 0.125rem; }\n  .list-group.simple-list .list-group-item i {\n    vertical-align: middle;\n    width: 35px;\n    display: inline-block; }\n\n.news-list .row > [class*='col'] {\n  padding: 0 0.25rem; }\n\n.news-list > li:not(:last-child) {\n  margin-bottom: .75rem; }\n\n.news-list img {\n  min-height: 100%;\n  -o-object-fit: cover;\n     object-fit: cover; }\n\n/**\n * = Modals\n */\n.modal.static-example {\n  position: relative;\n  display: block; }\n\n.modal-content {\n  border: 0;\n  border-radius: 0.5rem; }\n\n.modal-fluid .modal-dialog {\n  margin-top: 0;\n  margin-bottom: 0; }\n\n.modal-fluid .modal-content {\n  border-radius: 0; }\n\n.modal-primary .modal-title {\n  color: color-yiq(#1F2937); }\n\n.modal-primary .modal-header,\n.modal-primary .modal-footer {\n  border-color: rgba(31, 41, 55, 0.075); }\n\n.modal-primary .modal-content {\n  background-color: #1F2937;\n  color: color-yiq(#1F2937); }\n  .modal-primary .modal-content .heading {\n    color: color-yiq(#1F2937); }\n\n.modal-primary .close > span:not(.sr-only) {\n  color: #ffffff; }\n\n.modal-secondary .modal-title {\n  color: color-yiq(#f0bc74); }\n\n.modal-secondary .modal-header,\n.modal-secondary .modal-footer {\n  border-color: rgba(240, 188, 116, 0.075); }\n\n.modal-secondary .modal-content {\n  background-color: #f0bc74;\n  color: color-yiq(#f0bc74); }\n  .modal-secondary .modal-content .heading {\n    color: color-yiq(#f0bc74); }\n\n.modal-secondary .close > span:not(.sr-only) {\n  color: #ffffff; }\n\n.modal-tertiary .modal-title {\n  color: color-yiq(#31316A); }\n\n.modal-tertiary .modal-header,\n.modal-tertiary .modal-footer {\n  border-color: rgba(49, 49, 106, 0.075); }\n\n.modal-tertiary .modal-content {\n  background-color: #31316A;\n  color: color-yiq(#31316A); }\n  .modal-tertiary .modal-content .heading {\n    color: color-yiq(#31316A); }\n\n.modal-tertiary .close > span:not(.sr-only) {\n  color: #ffffff; }\n\n.modal-success .modal-title {\n  color: color-yiq(#10B981); }\n\n.modal-success .modal-header,\n.modal-success .modal-footer {\n  border-color: rgba(16, 185, 129, 0.075); }\n\n.modal-success .modal-content {\n  background-color: #10B981;\n  color: color-yiq(#10B981); }\n  .modal-success .modal-content .heading {\n    color: color-yiq(#10B981); }\n\n.modal-success .close > span:not(.sr-only) {\n  color: #ffffff; }\n\n.modal-info .modal-title {\n  color: color-yiq(#2361ce); }\n\n.modal-info .modal-header,\n.modal-info .modal-footer {\n  border-color: rgba(35, 97, 206, 0.075); }\n\n.modal-info .modal-content {\n  background-color: #2361ce;\n  color: color-yiq(#2361ce); }\n  .modal-info .modal-content .heading {\n    color: color-yiq(#2361ce); }\n\n.modal-info .close > span:not(.sr-only) {\n  color: #ffffff; }\n\n.modal-warning .modal-title {\n  color: color-yiq(#f3c78e); }\n\n.modal-warning .modal-header,\n.modal-warning .modal-footer {\n  border-color: rgba(243, 199, 142, 0.075); }\n\n.modal-warning .modal-content {\n  background-color: #f3c78e;\n  color: color-yiq(#f3c78e); }\n  .modal-warning .modal-content .heading {\n    color: color-yiq(#f3c78e); }\n\n.modal-warning .close > span:not(.sr-only) {\n  color: #ffffff; }\n\n.modal-danger .modal-title {\n  color: color-yiq(#E11D48); }\n\n.modal-danger .modal-header,\n.modal-danger .modal-footer {\n  border-color: rgba(225, 29, 72, 0.075); }\n\n.modal-danger .modal-content {\n  background-color: #E11D48;\n  color: color-yiq(#E11D48); }\n  .modal-danger .modal-content .heading {\n    color: color-yiq(#E11D48); }\n\n.modal-danger .close > span:not(.sr-only) {\n  color: #ffffff; }\n\n.modal-white .modal-title {\n  color: color-yiq(#ffffff); }\n\n.modal-white .modal-header,\n.modal-white .modal-footer {\n  border-color: rgba(255, 255, 255, 0.075); }\n\n.modal-white .modal-content {\n  background-color: #ffffff;\n  color: color-yiq(#ffffff); }\n  .modal-white .modal-content .heading {\n    color: color-yiq(#ffffff); }\n\n.modal-white .close > span:not(.sr-only) {\n  color: #ffffff; }\n\n.modal-indigo .modal-title {\n  color: color-yiq(#4F46E5); }\n\n.modal-indigo .modal-header,\n.modal-indigo .modal-footer {\n  border-color: rgba(79, 70, 229, 0.075); }\n\n.modal-indigo .modal-content {\n  background-color: #4F46E5;\n  color: color-yiq(#4F46E5); }\n  .modal-indigo .modal-content .heading {\n    color: color-yiq(#4F46E5); }\n\n.modal-indigo .close > span:not(.sr-only) {\n  color: #ffffff; }\n\n.modal-purple .modal-title {\n  color: color-yiq(#7C3AED); }\n\n.modal-purple .modal-header,\n.modal-purple .modal-footer {\n  border-color: rgba(124, 58, 237, 0.075); }\n\n.modal-purple .modal-content {\n  background-color: #7C3AED;\n  color: color-yiq(#7C3AED); }\n  .modal-purple .modal-content .heading {\n    color: color-yiq(#7C3AED); }\n\n.modal-purple .close > span:not(.sr-only) {\n  color: #ffffff; }\n\n.modal-yellow-100 .modal-title {\n  color: color-yiq(#ffeed6); }\n\n.modal-yellow-100 .modal-header,\n.modal-yellow-100 .modal-footer {\n  border-color: rgba(255, 238, 214, 0.075); }\n\n.modal-yellow-100 .modal-content {\n  background-color: #ffeed6;\n  color: color-yiq(#ffeed6); }\n  .modal-yellow-100 .modal-content .heading {\n    color: color-yiq(#ffeed6); }\n\n.modal-yellow-100 .close > span:not(.sr-only) {\n  color: #ffffff; }\n\n.modal-yellow-200 .modal-title {\n  color: color-yiq(#f5dbb8); }\n\n.modal-yellow-200 .modal-header,\n.modal-yellow-200 .modal-footer {\n  border-color: rgba(245, 219, 184, 0.075); }\n\n.modal-yellow-200 .modal-content {\n  background-color: #f5dbb8;\n  color: color-yiq(#f5dbb8); }\n  .modal-yellow-200 .modal-content .heading {\n    color: color-yiq(#f5dbb8); }\n\n.modal-yellow-200 .close > span:not(.sr-only) {\n  color: #ffffff; }\n\n.modal-gray-50 .modal-title {\n  color: color-yiq(#F9FAFB); }\n\n.modal-gray-50 .modal-header,\n.modal-gray-50 .modal-footer {\n  border-color: rgba(249, 250, 251, 0.075); }\n\n.modal-gray-50 .modal-content {\n  background-color: #F9FAFB;\n  color: color-yiq(#F9FAFB); }\n  .modal-gray-50 .modal-content .heading {\n    color: color-yiq(#F9FAFB); }\n\n.modal-gray-50 .close > span:not(.sr-only) {\n  color: #ffffff; }\n\n.modal-gray-100 .modal-title {\n  color: color-yiq(#F2F4F6); }\n\n.modal-gray-100 .modal-header,\n.modal-gray-100 .modal-footer {\n  border-color: rgba(242, 244, 246, 0.075); }\n\n.modal-gray-100 .modal-content {\n  background-color: #F2F4F6;\n  color: color-yiq(#F2F4F6); }\n  .modal-gray-100 .modal-content .heading {\n    color: color-yiq(#F2F4F6); }\n\n.modal-gray-100 .close > span:not(.sr-only) {\n  color: #ffffff; }\n\n.modal-gray-200 .modal-title {\n  color: color-yiq(#E5E7EB); }\n\n.modal-gray-200 .modal-header,\n.modal-gray-200 .modal-footer {\n  border-color: rgba(229, 231, 235, 0.075); }\n\n.modal-gray-200 .modal-content {\n  background-color: #E5E7EB;\n  color: color-yiq(#E5E7EB); }\n  .modal-gray-200 .modal-content .heading {\n    color: color-yiq(#E5E7EB); }\n\n.modal-gray-200 .close > span:not(.sr-only) {\n  color: #ffffff; }\n\n.modal-gray-300 .modal-title {\n  color: color-yiq(#D1D5DB); }\n\n.modal-gray-300 .modal-header,\n.modal-gray-300 .modal-footer {\n  border-color: rgba(209, 213, 219, 0.075); }\n\n.modal-gray-300 .modal-content {\n  background-color: #D1D5DB;\n  color: color-yiq(#D1D5DB); }\n  .modal-gray-300 .modal-content .heading {\n    color: color-yiq(#D1D5DB); }\n\n.modal-gray-300 .close > span:not(.sr-only) {\n  color: #ffffff; }\n\n.modal-gray-400 .modal-title {\n  color: color-yiq(#9CA3AF); }\n\n.modal-gray-400 .modal-header,\n.modal-gray-400 .modal-footer {\n  border-color: rgba(156, 163, 175, 0.075); }\n\n.modal-gray-400 .modal-content {\n  background-color: #9CA3AF;\n  color: color-yiq(#9CA3AF); }\n  .modal-gray-400 .modal-content .heading {\n    color: color-yiq(#9CA3AF); }\n\n.modal-gray-400 .close > span:not(.sr-only) {\n  color: #ffffff; }\n\n.modal-gray-500 .modal-title {\n  color: color-yiq(#6B7280); }\n\n.modal-gray-500 .modal-header,\n.modal-gray-500 .modal-footer {\n  border-color: rgba(107, 114, 128, 0.075); }\n\n.modal-gray-500 .modal-content {\n  background-color: #6B7280;\n  color: color-yiq(#6B7280); }\n  .modal-gray-500 .modal-content .heading {\n    color: color-yiq(#6B7280); }\n\n.modal-gray-500 .close > span:not(.sr-only) {\n  color: #ffffff; }\n\n.modal-gray-600 .modal-title {\n  color: color-yiq(#4B5563); }\n\n.modal-gray-600 .modal-header,\n.modal-gray-600 .modal-footer {\n  border-color: rgba(75, 85, 99, 0.075); }\n\n.modal-gray-600 .modal-content {\n  background-color: #4B5563;\n  color: color-yiq(#4B5563); }\n  .modal-gray-600 .modal-content .heading {\n    color: color-yiq(#4B5563); }\n\n.modal-gray-600 .close > span:not(.sr-only) {\n  color: #ffffff; }\n\n.modal-gray-700 .modal-title {\n  color: color-yiq(#374151); }\n\n.modal-gray-700 .modal-header,\n.modal-gray-700 .modal-footer {\n  border-color: rgba(55, 65, 81, 0.075); }\n\n.modal-gray-700 .modal-content {\n  background-color: #374151;\n  color: color-yiq(#374151); }\n  .modal-gray-700 .modal-content .heading {\n    color: color-yiq(#374151); }\n\n.modal-gray-700 .close > span:not(.sr-only) {\n  color: #ffffff; }\n\n.modal-gray-800 .modal-title {\n  color: color-yiq(#1F2937); }\n\n.modal-gray-800 .modal-header,\n.modal-gray-800 .modal-footer {\n  border-color: rgba(31, 41, 55, 0.075); }\n\n.modal-gray-800 .modal-content {\n  background-color: #1F2937;\n  color: color-yiq(#1F2937); }\n  .modal-gray-800 .modal-content .heading {\n    color: color-yiq(#1F2937); }\n\n.modal-gray-800 .close > span:not(.sr-only) {\n  color: #ffffff; }\n\n.modal-gray-900 .modal-title {\n  color: color-yiq(#111827); }\n\n.modal-gray-900 .modal-header,\n.modal-gray-900 .modal-footer {\n  border-color: rgba(17, 24, 39, 0.075); }\n\n.modal-gray-900 .modal-content {\n  background-color: #111827;\n  color: color-yiq(#111827); }\n  .modal-gray-900 .modal-content .heading {\n    color: color-yiq(#111827); }\n\n.modal-gray-900 .close > span:not(.sr-only) {\n  color: #ffffff; }\n\n/**\n * = Navs\n */\n.nav-link {\n  color: #1F2937; }\n  .nav-link:hover, .nav-link.active {\n    color: #1F2937; }\n    .nav-link:hover img, .nav-link.active img {\n      opacity: inherit;\n      transition: all 0.2s ease; }\n  .nav-link span {\n    position: relative; }\n\n.nav-tabs .nav-item {\n  margin-bottom: 0; }\n\n.nav-tabs .nav-link {\n  border: 0;\n  padding: 1rem 1rem;\n  background-color: #ffffff; }\n  .nav-tabs .nav-link.active {\n    color: #ffffff;\n    background-color: #1F2937; }\n\n.nav-tabs.nav-dark .nav-link.active {\n  color: #ffffff;\n  background-color: #12358a; }\n\n.nav-tabs.nav-light .nav-link.active {\n  color: #111827;\n  background-color: #9CA3AF; }\n\n.nav-tabs.nav-light .nav-link:hover {\n  color: #111827; }\n\n.nav-pills .nav-item:not(:last-child) {\n  padding-right: 1rem; }\n\n.nav-pills .nav-link {\n  padding: 0.75rem 0.85rem;\n  transition: all 0.2s ease;\n  box-shadow: none;\n  border: 1px solid #9CA3AF; }\n  .nav-pills .nav-link.avatar-link {\n    border: 0; }\n  .nav-pills .nav-link:hover {\n    color: #1F2937; }\n\n.nav-pills .nav-link.active,\n.nav-pills .show > .nav-link {\n  color: #1F2937;\n  background-color: #f8f8f8;\n  border-color: #1F2937; }\n\n.nav-pills.rounded .nav-link {\n  border-radius: 30px; }\n\n.nav-pills.rounded.vertical-tab .nav-link {\n  margin-bottom: .625rem;\n  min-width: 100px; }\n\n.nav-pills.rounded.vertical-tab .nav-item:not(:last-child) {\n  padding-right: 0; }\n\n.nav-pills.bordered-pill-md .nav-link {\n  border: 0.125rem solid #E5E7EB;\n  font-weight: 500; }\n\n.nav-pills.vertical-tab .nav-link {\n  margin-bottom: .625rem; }\n\n.nav-pills.vertical-tab .nav-item:not(:last-child) {\n  padding-right: 0; }\n\n.nav-pills .nav-item {\n  margin-bottom: 1rem; }\n\n@media (max-width: 575.98px) {\n  .nav-pills:not(.nav-pills-circle) .nav-item {\n    padding-right: 0; } }\n\n.nav-pill-circle .nav-link {\n  display: flex;\n  text-align: center;\n  height: 80px;\n  width: 80px;\n  padding: 0;\n  box-shadow: none;\n  border-radius: 50%;\n  align-items: center;\n  justify-content: center; }\n  .nav-pill-circle .nav-link.avatar-link {\n    box-shadow: none; }\n\n.nav-pill-circle.vertical-tab .nav-link-icon i,\n.nav-pill-circle.vertical-tab .nav-link-icon svg {\n  font-size: 1.5rem; }\n\n.nav-pill-circle.vertical-tab .nav-item:not(:last-child) {\n  padding-right: 0; }\n\n.nav-pill-circle .nav-link-icon i,\n.nav-pill-circle .nav-link-icon svg {\n  font-size: 1.25rem;\n  margin: 0;\n  display: block; }\n\n.nav-pill-square .nav-link {\n  text-align: center;\n  min-width: 80px;\n  box-shadow: none;\n  display: flex;\n  align-items: center;\n  justify-content: center; }\n\n.nav-pill-square.vertical-tab .nav-link {\n  margin-bottom: .625rem;\n  min-width: 100px; }\n\n.nav-pill-square.vertical-tab .nav-item:not(:last-child) {\n  padding-right: 0; }\n\n.nav-pill-square .nav-link-icon i,\n.nav-pill-square .nav-link-icon svg {\n  font-size: 1.25rem;\n  margin: 0;\n  display: block;\n  line-height: 50px; }\n\n.nav-wrapper {\n  padding: 1rem 0;\n  border-top-left-radius: 0.5rem;\n  border-top-right-radius: 0.5rem; }\n  .nav-wrapper + .card {\n    border-top-left-radius: 0;\n    border-top-right-radius: 0;\n    border-bottom-right-radius: 0.5rem;\n    border-bottom-left-radius: 0.5rem; }\n\n.tab-content > .tab-pane {\n  display: none; }\n  .tab-content > .tab-pane pre {\n    padding: 0;\n    margin: 0; }\n\n.tab-content > .active {\n  display: block; }\n\n@media (min-width: 992px) {\n  .nav-pills .nav-item {\n    margin-bottom: 0; } }\n\n/**\n * = Paginations\n */\n.circle-pagination .page-link,\n.circle-pagination span {\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  width: 34px;\n  height: 34px;\n  padding: 0;\n  border-radius: 50%; }\n\n/**\n * = Popovers\n */\n.popover {\n  border: 0; }\n\n.popover-header {\n  font-weight: 500; }\n\n.popover-primary {\n  background-color: #1F2937; }\n  .popover-primary .popover-header {\n    background-color: #1F2937;\n    color: color-yiq(#1F2937); }\n  .popover-primary .popover-body {\n    color: color-yiq(#1F2937); }\n  .popover-primary .popover-header {\n    border-color: rgba(31, 41, 55, 0.2); }\n  .popover-primary.bs-popover-top .arrow::after, .popover-primary.bs-popover-auto[data-popper-placement^=\"top\"] .arrow::after {\n    border-top-color: #1F2937; }\n  .popover-primary.bs-popover-end .arrow::after, .popover-primary.bs-popover-auto[data-popper-placement^=\"right\"] .arrow::after {\n    border-right-color: #1F2937; }\n  .popover-primary.bs-popover-bottom .arrow::after, .popover-primary.bs-popover-auto[data-popper-placement^=\"bottom\"] .arrow::after {\n    border-bottom-color: #1F2937; }\n  .popover-primary.bs-popover-start .arrow::after, .popover-primary.bs-popover-auto[data-popper-placement^=\"left\"] .arrow::after {\n    border-left-color: #1F2937; }\n\n.popover-secondary {\n  background-color: #f0bc74; }\n  .popover-secondary .popover-header {\n    background-color: #f0bc74;\n    color: color-yiq(#f0bc74); }\n  .popover-secondary .popover-body {\n    color: color-yiq(#f0bc74); }\n  .popover-secondary .popover-header {\n    border-color: rgba(240, 188, 116, 0.2); }\n  .popover-secondary.bs-popover-top .arrow::after, .popover-secondary.bs-popover-auto[data-popper-placement^=\"top\"] .arrow::after {\n    border-top-color: #f0bc74; }\n  .popover-secondary.bs-popover-end .arrow::after, .popover-secondary.bs-popover-auto[data-popper-placement^=\"right\"] .arrow::after {\n    border-right-color: #f0bc74; }\n  .popover-secondary.bs-popover-bottom .arrow::after, .popover-secondary.bs-popover-auto[data-popper-placement^=\"bottom\"] .arrow::after {\n    border-bottom-color: #f0bc74; }\n  .popover-secondary.bs-popover-start .arrow::after, .popover-secondary.bs-popover-auto[data-popper-placement^=\"left\"] .arrow::after {\n    border-left-color: #f0bc74; }\n\n.popover-tertiary {\n  background-color: #31316A; }\n  .popover-tertiary .popover-header {\n    background-color: #31316A;\n    color: color-yiq(#31316A); }\n  .popover-tertiary .popover-body {\n    color: color-yiq(#31316A); }\n  .popover-tertiary .popover-header {\n    border-color: rgba(49, 49, 106, 0.2); }\n  .popover-tertiary.bs-popover-top .arrow::after, .popover-tertiary.bs-popover-auto[data-popper-placement^=\"top\"] .arrow::after {\n    border-top-color: #31316A; }\n  .popover-tertiary.bs-popover-end .arrow::after, .popover-tertiary.bs-popover-auto[data-popper-placement^=\"right\"] .arrow::after {\n    border-right-color: #31316A; }\n  .popover-tertiary.bs-popover-bottom .arrow::after, .popover-tertiary.bs-popover-auto[data-popper-placement^=\"bottom\"] .arrow::after {\n    border-bottom-color: #31316A; }\n  .popover-tertiary.bs-popover-start .arrow::after, .popover-tertiary.bs-popover-auto[data-popper-placement^=\"left\"] .arrow::after {\n    border-left-color: #31316A; }\n\n.popover-success {\n  background-color: #10B981; }\n  .popover-success .popover-header {\n    background-color: #10B981;\n    color: color-yiq(#10B981); }\n  .popover-success .popover-body {\n    color: color-yiq(#10B981); }\n  .popover-success .popover-header {\n    border-color: rgba(16, 185, 129, 0.2); }\n  .popover-success.bs-popover-top .arrow::after, .popover-success.bs-popover-auto[data-popper-placement^=\"top\"] .arrow::after {\n    border-top-color: #10B981; }\n  .popover-success.bs-popover-end .arrow::after, .popover-success.bs-popover-auto[data-popper-placement^=\"right\"] .arrow::after {\n    border-right-color: #10B981; }\n  .popover-success.bs-popover-bottom .arrow::after, .popover-success.bs-popover-auto[data-popper-placement^=\"bottom\"] .arrow::after {\n    border-bottom-color: #10B981; }\n  .popover-success.bs-popover-start .arrow::after, .popover-success.bs-popover-auto[data-popper-placement^=\"left\"] .arrow::after {\n    border-left-color: #10B981; }\n\n.popover-info {\n  background-color: #2361ce; }\n  .popover-info .popover-header {\n    background-color: #2361ce;\n    color: color-yiq(#2361ce); }\n  .popover-info .popover-body {\n    color: color-yiq(#2361ce); }\n  .popover-info .popover-header {\n    border-color: rgba(35, 97, 206, 0.2); }\n  .popover-info.bs-popover-top .arrow::after, .popover-info.bs-popover-auto[data-popper-placement^=\"top\"] .arrow::after {\n    border-top-color: #2361ce; }\n  .popover-info.bs-popover-end .arrow::after, .popover-info.bs-popover-auto[data-popper-placement^=\"right\"] .arrow::after {\n    border-right-color: #2361ce; }\n  .popover-info.bs-popover-bottom .arrow::after, .popover-info.bs-popover-auto[data-popper-placement^=\"bottom\"] .arrow::after {\n    border-bottom-color: #2361ce; }\n  .popover-info.bs-popover-start .arrow::after, .popover-info.bs-popover-auto[data-popper-placement^=\"left\"] .arrow::after {\n    border-left-color: #2361ce; }\n\n.popover-warning {\n  background-color: #f3c78e; }\n  .popover-warning .popover-header {\n    background-color: #f3c78e;\n    color: color-yiq(#f3c78e); }\n  .popover-warning .popover-body {\n    color: color-yiq(#f3c78e); }\n  .popover-warning .popover-header {\n    border-color: rgba(243, 199, 142, 0.2); }\n  .popover-warning.bs-popover-top .arrow::after, .popover-warning.bs-popover-auto[data-popper-placement^=\"top\"] .arrow::after {\n    border-top-color: #f3c78e; }\n  .popover-warning.bs-popover-end .arrow::after, .popover-warning.bs-popover-auto[data-popper-placement^=\"right\"] .arrow::after {\n    border-right-color: #f3c78e; }\n  .popover-warning.bs-popover-bottom .arrow::after, .popover-warning.bs-popover-auto[data-popper-placement^=\"bottom\"] .arrow::after {\n    border-bottom-color: #f3c78e; }\n  .popover-warning.bs-popover-start .arrow::after, .popover-warning.bs-popover-auto[data-popper-placement^=\"left\"] .arrow::after {\n    border-left-color: #f3c78e; }\n\n.popover-danger {\n  background-color: #E11D48; }\n  .popover-danger .popover-header {\n    background-color: #E11D48;\n    color: color-yiq(#E11D48); }\n  .popover-danger .popover-body {\n    color: color-yiq(#E11D48); }\n  .popover-danger .popover-header {\n    border-color: rgba(225, 29, 72, 0.2); }\n  .popover-danger.bs-popover-top .arrow::after, .popover-danger.bs-popover-auto[data-popper-placement^=\"top\"] .arrow::after {\n    border-top-color: #E11D48; }\n  .popover-danger.bs-popover-end .arrow::after, .popover-danger.bs-popover-auto[data-popper-placement^=\"right\"] .arrow::after {\n    border-right-color: #E11D48; }\n  .popover-danger.bs-popover-bottom .arrow::after, .popover-danger.bs-popover-auto[data-popper-placement^=\"bottom\"] .arrow::after {\n    border-bottom-color: #E11D48; }\n  .popover-danger.bs-popover-start .arrow::after, .popover-danger.bs-popover-auto[data-popper-placement^=\"left\"] .arrow::after {\n    border-left-color: #E11D48; }\n\n.popover-white {\n  background-color: #ffffff; }\n  .popover-white .popover-header {\n    background-color: #ffffff;\n    color: color-yiq(#ffffff); }\n  .popover-white .popover-body {\n    color: color-yiq(#ffffff); }\n  .popover-white .popover-header {\n    border-color: rgba(255, 255, 255, 0.2); }\n  .popover-white.bs-popover-top .arrow::after, .popover-white.bs-popover-auto[data-popper-placement^=\"top\"] .arrow::after {\n    border-top-color: #ffffff; }\n  .popover-white.bs-popover-end .arrow::after, .popover-white.bs-popover-auto[data-popper-placement^=\"right\"] .arrow::after {\n    border-right-color: #ffffff; }\n  .popover-white.bs-popover-bottom .arrow::after, .popover-white.bs-popover-auto[data-popper-placement^=\"bottom\"] .arrow::after {\n    border-bottom-color: #ffffff; }\n  .popover-white.bs-popover-start .arrow::after, .popover-white.bs-popover-auto[data-popper-placement^=\"left\"] .arrow::after {\n    border-left-color: #ffffff; }\n\n.popover-indigo {\n  background-color: #4F46E5; }\n  .popover-indigo .popover-header {\n    background-color: #4F46E5;\n    color: color-yiq(#4F46E5); }\n  .popover-indigo .popover-body {\n    color: color-yiq(#4F46E5); }\n  .popover-indigo .popover-header {\n    border-color: rgba(79, 70, 229, 0.2); }\n  .popover-indigo.bs-popover-top .arrow::after, .popover-indigo.bs-popover-auto[data-popper-placement^=\"top\"] .arrow::after {\n    border-top-color: #4F46E5; }\n  .popover-indigo.bs-popover-end .arrow::after, .popover-indigo.bs-popover-auto[data-popper-placement^=\"right\"] .arrow::after {\n    border-right-color: #4F46E5; }\n  .popover-indigo.bs-popover-bottom .arrow::after, .popover-indigo.bs-popover-auto[data-popper-placement^=\"bottom\"] .arrow::after {\n    border-bottom-color: #4F46E5; }\n  .popover-indigo.bs-popover-start .arrow::after, .popover-indigo.bs-popover-auto[data-popper-placement^=\"left\"] .arrow::after {\n    border-left-color: #4F46E5; }\n\n.popover-purple {\n  background-color: #7C3AED; }\n  .popover-purple .popover-header {\n    background-color: #7C3AED;\n    color: color-yiq(#7C3AED); }\n  .popover-purple .popover-body {\n    color: color-yiq(#7C3AED); }\n  .popover-purple .popover-header {\n    border-color: rgba(124, 58, 237, 0.2); }\n  .popover-purple.bs-popover-top .arrow::after, .popover-purple.bs-popover-auto[data-popper-placement^=\"top\"] .arrow::after {\n    border-top-color: #7C3AED; }\n  .popover-purple.bs-popover-end .arrow::after, .popover-purple.bs-popover-auto[data-popper-placement^=\"right\"] .arrow::after {\n    border-right-color: #7C3AED; }\n  .popover-purple.bs-popover-bottom .arrow::after, .popover-purple.bs-popover-auto[data-popper-placement^=\"bottom\"] .arrow::after {\n    border-bottom-color: #7C3AED; }\n  .popover-purple.bs-popover-start .arrow::after, .popover-purple.bs-popover-auto[data-popper-placement^=\"left\"] .arrow::after {\n    border-left-color: #7C3AED; }\n\n.popover-yellow-100 {\n  background-color: #ffeed6; }\n  .popover-yellow-100 .popover-header {\n    background-color: #ffeed6;\n    color: color-yiq(#ffeed6); }\n  .popover-yellow-100 .popover-body {\n    color: color-yiq(#ffeed6); }\n  .popover-yellow-100 .popover-header {\n    border-color: rgba(255, 238, 214, 0.2); }\n  .popover-yellow-100.bs-popover-top .arrow::after, .popover-yellow-100.bs-popover-auto[data-popper-placement^=\"top\"] .arrow::after {\n    border-top-color: #ffeed6; }\n  .popover-yellow-100.bs-popover-end .arrow::after, .popover-yellow-100.bs-popover-auto[data-popper-placement^=\"right\"] .arrow::after {\n    border-right-color: #ffeed6; }\n  .popover-yellow-100.bs-popover-bottom .arrow::after, .popover-yellow-100.bs-popover-auto[data-popper-placement^=\"bottom\"] .arrow::after {\n    border-bottom-color: #ffeed6; }\n  .popover-yellow-100.bs-popover-start .arrow::after, .popover-yellow-100.bs-popover-auto[data-popper-placement^=\"left\"] .arrow::after {\n    border-left-color: #ffeed6; }\n\n.popover-yellow-200 {\n  background-color: #f5dbb8; }\n  .popover-yellow-200 .popover-header {\n    background-color: #f5dbb8;\n    color: color-yiq(#f5dbb8); }\n  .popover-yellow-200 .popover-body {\n    color: color-yiq(#f5dbb8); }\n  .popover-yellow-200 .popover-header {\n    border-color: rgba(245, 219, 184, 0.2); }\n  .popover-yellow-200.bs-popover-top .arrow::after, .popover-yellow-200.bs-popover-auto[data-popper-placement^=\"top\"] .arrow::after {\n    border-top-color: #f5dbb8; }\n  .popover-yellow-200.bs-popover-end .arrow::after, .popover-yellow-200.bs-popover-auto[data-popper-placement^=\"right\"] .arrow::after {\n    border-right-color: #f5dbb8; }\n  .popover-yellow-200.bs-popover-bottom .arrow::after, .popover-yellow-200.bs-popover-auto[data-popper-placement^=\"bottom\"] .arrow::after {\n    border-bottom-color: #f5dbb8; }\n  .popover-yellow-200.bs-popover-start .arrow::after, .popover-yellow-200.bs-popover-auto[data-popper-placement^=\"left\"] .arrow::after {\n    border-left-color: #f5dbb8; }\n\n.popover-gray-50 {\n  background-color: #F9FAFB; }\n  .popover-gray-50 .popover-header {\n    background-color: #F9FAFB;\n    color: color-yiq(#F9FAFB); }\n  .popover-gray-50 .popover-body {\n    color: color-yiq(#F9FAFB); }\n  .popover-gray-50 .popover-header {\n    border-color: rgba(249, 250, 251, 0.2); }\n  .popover-gray-50.bs-popover-top .arrow::after, .popover-gray-50.bs-popover-auto[data-popper-placement^=\"top\"] .arrow::after {\n    border-top-color: #F9FAFB; }\n  .popover-gray-50.bs-popover-end .arrow::after, .popover-gray-50.bs-popover-auto[data-popper-placement^=\"right\"] .arrow::after {\n    border-right-color: #F9FAFB; }\n  .popover-gray-50.bs-popover-bottom .arrow::after, .popover-gray-50.bs-popover-auto[data-popper-placement^=\"bottom\"] .arrow::after {\n    border-bottom-color: #F9FAFB; }\n  .popover-gray-50.bs-popover-start .arrow::after, .popover-gray-50.bs-popover-auto[data-popper-placement^=\"left\"] .arrow::after {\n    border-left-color: #F9FAFB; }\n\n.popover-gray-100 {\n  background-color: #F2F4F6; }\n  .popover-gray-100 .popover-header {\n    background-color: #F2F4F6;\n    color: color-yiq(#F2F4F6); }\n  .popover-gray-100 .popover-body {\n    color: color-yiq(#F2F4F6); }\n  .popover-gray-100 .popover-header {\n    border-color: rgba(242, 244, 246, 0.2); }\n  .popover-gray-100.bs-popover-top .arrow::after, .popover-gray-100.bs-popover-auto[data-popper-placement^=\"top\"] .arrow::after {\n    border-top-color: #F2F4F6; }\n  .popover-gray-100.bs-popover-end .arrow::after, .popover-gray-100.bs-popover-auto[data-popper-placement^=\"right\"] .arrow::after {\n    border-right-color: #F2F4F6; }\n  .popover-gray-100.bs-popover-bottom .arrow::after, .popover-gray-100.bs-popover-auto[data-popper-placement^=\"bottom\"] .arrow::after {\n    border-bottom-color: #F2F4F6; }\n  .popover-gray-100.bs-popover-start .arrow::after, .popover-gray-100.bs-popover-auto[data-popper-placement^=\"left\"] .arrow::after {\n    border-left-color: #F2F4F6; }\n\n.popover-gray-200 {\n  background-color: #E5E7EB; }\n  .popover-gray-200 .popover-header {\n    background-color: #E5E7EB;\n    color: color-yiq(#E5E7EB); }\n  .popover-gray-200 .popover-body {\n    color: color-yiq(#E5E7EB); }\n  .popover-gray-200 .popover-header {\n    border-color: rgba(229, 231, 235, 0.2); }\n  .popover-gray-200.bs-popover-top .arrow::after, .popover-gray-200.bs-popover-auto[data-popper-placement^=\"top\"] .arrow::after {\n    border-top-color: #E5E7EB; }\n  .popover-gray-200.bs-popover-end .arrow::after, .popover-gray-200.bs-popover-auto[data-popper-placement^=\"right\"] .arrow::after {\n    border-right-color: #E5E7EB; }\n  .popover-gray-200.bs-popover-bottom .arrow::after, .popover-gray-200.bs-popover-auto[data-popper-placement^=\"bottom\"] .arrow::after {\n    border-bottom-color: #E5E7EB; }\n  .popover-gray-200.bs-popover-start .arrow::after, .popover-gray-200.bs-popover-auto[data-popper-placement^=\"left\"] .arrow::after {\n    border-left-color: #E5E7EB; }\n\n.popover-gray-300 {\n  background-color: #D1D5DB; }\n  .popover-gray-300 .popover-header {\n    background-color: #D1D5DB;\n    color: color-yiq(#D1D5DB); }\n  .popover-gray-300 .popover-body {\n    color: color-yiq(#D1D5DB); }\n  .popover-gray-300 .popover-header {\n    border-color: rgba(209, 213, 219, 0.2); }\n  .popover-gray-300.bs-popover-top .arrow::after, .popover-gray-300.bs-popover-auto[data-popper-placement^=\"top\"] .arrow::after {\n    border-top-color: #D1D5DB; }\n  .popover-gray-300.bs-popover-end .arrow::after, .popover-gray-300.bs-popover-auto[data-popper-placement^=\"right\"] .arrow::after {\n    border-right-color: #D1D5DB; }\n  .popover-gray-300.bs-popover-bottom .arrow::after, .popover-gray-300.bs-popover-auto[data-popper-placement^=\"bottom\"] .arrow::after {\n    border-bottom-color: #D1D5DB; }\n  .popover-gray-300.bs-popover-start .arrow::after, .popover-gray-300.bs-popover-auto[data-popper-placement^=\"left\"] .arrow::after {\n    border-left-color: #D1D5DB; }\n\n.popover-gray-400 {\n  background-color: #9CA3AF; }\n  .popover-gray-400 .popover-header {\n    background-color: #9CA3AF;\n    color: color-yiq(#9CA3AF); }\n  .popover-gray-400 .popover-body {\n    color: color-yiq(#9CA3AF); }\n  .popover-gray-400 .popover-header {\n    border-color: rgba(156, 163, 175, 0.2); }\n  .popover-gray-400.bs-popover-top .arrow::after, .popover-gray-400.bs-popover-auto[data-popper-placement^=\"top\"] .arrow::after {\n    border-top-color: #9CA3AF; }\n  .popover-gray-400.bs-popover-end .arrow::after, .popover-gray-400.bs-popover-auto[data-popper-placement^=\"right\"] .arrow::after {\n    border-right-color: #9CA3AF; }\n  .popover-gray-400.bs-popover-bottom .arrow::after, .popover-gray-400.bs-popover-auto[data-popper-placement^=\"bottom\"] .arrow::after {\n    border-bottom-color: #9CA3AF; }\n  .popover-gray-400.bs-popover-start .arrow::after, .popover-gray-400.bs-popover-auto[data-popper-placement^=\"left\"] .arrow::after {\n    border-left-color: #9CA3AF; }\n\n.popover-gray-500 {\n  background-color: #6B7280; }\n  .popover-gray-500 .popover-header {\n    background-color: #6B7280;\n    color: color-yiq(#6B7280); }\n  .popover-gray-500 .popover-body {\n    color: color-yiq(#6B7280); }\n  .popover-gray-500 .popover-header {\n    border-color: rgba(107, 114, 128, 0.2); }\n  .popover-gray-500.bs-popover-top .arrow::after, .popover-gray-500.bs-popover-auto[data-popper-placement^=\"top\"] .arrow::after {\n    border-top-color: #6B7280; }\n  .popover-gray-500.bs-popover-end .arrow::after, .popover-gray-500.bs-popover-auto[data-popper-placement^=\"right\"] .arrow::after {\n    border-right-color: #6B7280; }\n  .popover-gray-500.bs-popover-bottom .arrow::after, .popover-gray-500.bs-popover-auto[data-popper-placement^=\"bottom\"] .arrow::after {\n    border-bottom-color: #6B7280; }\n  .popover-gray-500.bs-popover-start .arrow::after, .popover-gray-500.bs-popover-auto[data-popper-placement^=\"left\"] .arrow::after {\n    border-left-color: #6B7280; }\n\n.popover-gray-600 {\n  background-color: #4B5563; }\n  .popover-gray-600 .popover-header {\n    background-color: #4B5563;\n    color: color-yiq(#4B5563); }\n  .popover-gray-600 .popover-body {\n    color: color-yiq(#4B5563); }\n  .popover-gray-600 .popover-header {\n    border-color: rgba(75, 85, 99, 0.2); }\n  .popover-gray-600.bs-popover-top .arrow::after, .popover-gray-600.bs-popover-auto[data-popper-placement^=\"top\"] .arrow::after {\n    border-top-color: #4B5563; }\n  .popover-gray-600.bs-popover-end .arrow::after, .popover-gray-600.bs-popover-auto[data-popper-placement^=\"right\"] .arrow::after {\n    border-right-color: #4B5563; }\n  .popover-gray-600.bs-popover-bottom .arrow::after, .popover-gray-600.bs-popover-auto[data-popper-placement^=\"bottom\"] .arrow::after {\n    border-bottom-color: #4B5563; }\n  .popover-gray-600.bs-popover-start .arrow::after, .popover-gray-600.bs-popover-auto[data-popper-placement^=\"left\"] .arrow::after {\n    border-left-color: #4B5563; }\n\n.popover-gray-700 {\n  background-color: #374151; }\n  .popover-gray-700 .popover-header {\n    background-color: #374151;\n    color: color-yiq(#374151); }\n  .popover-gray-700 .popover-body {\n    color: color-yiq(#374151); }\n  .popover-gray-700 .popover-header {\n    border-color: rgba(55, 65, 81, 0.2); }\n  .popover-gray-700.bs-popover-top .arrow::after, .popover-gray-700.bs-popover-auto[data-popper-placement^=\"top\"] .arrow::after {\n    border-top-color: #374151; }\n  .popover-gray-700.bs-popover-end .arrow::after, .popover-gray-700.bs-popover-auto[data-popper-placement^=\"right\"] .arrow::after {\n    border-right-color: #374151; }\n  .popover-gray-700.bs-popover-bottom .arrow::after, .popover-gray-700.bs-popover-auto[data-popper-placement^=\"bottom\"] .arrow::after {\n    border-bottom-color: #374151; }\n  .popover-gray-700.bs-popover-start .arrow::after, .popover-gray-700.bs-popover-auto[data-popper-placement^=\"left\"] .arrow::after {\n    border-left-color: #374151; }\n\n.popover-gray-800 {\n  background-color: #1F2937; }\n  .popover-gray-800 .popover-header {\n    background-color: #1F2937;\n    color: color-yiq(#1F2937); }\n  .popover-gray-800 .popover-body {\n    color: color-yiq(#1F2937); }\n  .popover-gray-800 .popover-header {\n    border-color: rgba(31, 41, 55, 0.2); }\n  .popover-gray-800.bs-popover-top .arrow::after, .popover-gray-800.bs-popover-auto[data-popper-placement^=\"top\"] .arrow::after {\n    border-top-color: #1F2937; }\n  .popover-gray-800.bs-popover-end .arrow::after, .popover-gray-800.bs-popover-auto[data-popper-placement^=\"right\"] .arrow::after {\n    border-right-color: #1F2937; }\n  .popover-gray-800.bs-popover-bottom .arrow::after, .popover-gray-800.bs-popover-auto[data-popper-placement^=\"bottom\"] .arrow::after {\n    border-bottom-color: #1F2937; }\n  .popover-gray-800.bs-popover-start .arrow::after, .popover-gray-800.bs-popover-auto[data-popper-placement^=\"left\"] .arrow::after {\n    border-left-color: #1F2937; }\n\n.popover-gray-900 {\n  background-color: #111827; }\n  .popover-gray-900 .popover-header {\n    background-color: #111827;\n    color: color-yiq(#111827); }\n  .popover-gray-900 .popover-body {\n    color: color-yiq(#111827); }\n  .popover-gray-900 .popover-header {\n    border-color: rgba(17, 24, 39, 0.2); }\n  .popover-gray-900.bs-popover-top .arrow::after, .popover-gray-900.bs-popover-auto[data-popper-placement^=\"top\"] .arrow::after {\n    border-top-color: #111827; }\n  .popover-gray-900.bs-popover-end .arrow::after, .popover-gray-900.bs-popover-auto[data-popper-placement^=\"right\"] .arrow::after {\n    border-right-color: #111827; }\n  .popover-gray-900.bs-popover-bottom .arrow::after, .popover-gray-900.bs-popover-auto[data-popper-placement^=\"bottom\"] .arrow::after {\n    border-bottom-color: #111827; }\n  .popover-gray-900.bs-popover-start .arrow::after, .popover-gray-900.bs-popover-auto[data-popper-placement^=\"left\"] .arrow::after {\n    border-left-color: #111827; }\n\n/**\n * = Progress bars\n */\n.progress-wrapper {\n  position: relative; }\n\n.progress-bar {\n  box-shadow: none;\n  border-radius: 0;\n  height: auto; }\n\n.progress {\n  height: 6px;\n  margin-bottom: 1rem;\n  overflow: hidden;\n  background-color: #E5E7EB;\n  font-size: 0.75rem;\n  font-weight: 500;\n  box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1); }\n\n.progress-xl {\n  height: 0.8rem; }\n\n.progress-lg {\n  height: 0.6rem; }\n\n.progress-sm {\n  height: 0.2rem; }\n\n.progress-info {\n  display: flex;\n  -moz-align-items: center;\n  -ms-align-items: center;\n  align-items: center;\n  -moz-justify-content: space-between;\n  -ms-justify-content: space-between;\n  justify-content: space-between;\n  -ms-flex-pack: space-between;\n  margin-bottom: .5rem; }\n  .progress-info .progress-label span {\n    display: inline-block;\n    color: #1F2937;\n    font-size: 0.875rem;\n    font-weight: 500; }\n  .progress-info .progress-percentage {\n    text-align: right; }\n    .progress-info .progress-percentage span {\n      display: inline-block;\n      color: #6B7280;\n      font-size: 0.75rem;\n      font-weight: 500; }\n\n.info-xl .progress-label span,\n.info-xl .progress-percentage span {\n  font-size: 0.875rem; }\n\n.info-xl .progress-percentage {\n  text-align: right; }\n\n.progress-tooltip {\n  background: #1F2937;\n  color: #ffffff;\n  font-weight: 500;\n  padding: .25rem .375rem;\n  line-height: 1;\n  font-size: 0.75rem;\n  position: relative;\n  border-radius: 0.35rem; }\n  .progress-tooltip:after {\n    content: \" \";\n    position: absolute;\n    top: 100%;\n    left: 10px;\n    border: solid transparent;\n    height: 0;\n    width: 0;\n    pointer-events: none;\n    border-top-color: #111827;\n    border-width: 6px; }\n\n@keyframes animate-positive {\n  0% {\n    width: 0%; } }\n\n.progress-info .bg-primary::after {\n  border-top-color: #1F2937; }\n\n.progress-info .bg-secondary::after {\n  border-top-color: #f0bc74; }\n\n.progress-info .bg-tertiary::after {\n  border-top-color: #31316A; }\n\n.progress-info .bg-success::after {\n  border-top-color: #10B981; }\n\n.progress-info .bg-info::after {\n  border-top-color: #2361ce; }\n\n.progress-info .bg-warning::after {\n  border-top-color: #f3c78e; }\n\n.progress-info .bg-danger::after {\n  border-top-color: #E11D48; }\n\n.progress-info .bg-white::after {\n  border-top-color: #ffffff; }\n\n.progress-info .bg-indigo::after {\n  border-top-color: #4F46E5; }\n\n.progress-info .bg-purple::after {\n  border-top-color: #7C3AED; }\n\n.progress-info .bg-yellow-100::after {\n  border-top-color: #ffeed6; }\n\n.progress-info .bg-yellow-200::after {\n  border-top-color: #f5dbb8; }\n\n.progress-info .bg-gray-50::after {\n  border-top-color: #F9FAFB; }\n\n.progress-info .bg-gray-100::after {\n  border-top-color: #F2F4F6; }\n\n.progress-info .bg-gray-200::after {\n  border-top-color: #E5E7EB; }\n\n.progress-info .bg-gray-300::after {\n  border-top-color: #D1D5DB; }\n\n.progress-info .bg-gray-400::after {\n  border-top-color: #9CA3AF; }\n\n.progress-info .bg-gray-500::after {\n  border-top-color: #6B7280; }\n\n.progress-info .bg-gray-600::after {\n  border-top-color: #4B5563; }\n\n.progress-info .bg-gray-700::after {\n  border-top-color: #374151; }\n\n.progress-info .bg-gray-800::after {\n  border-top-color: #1F2937; }\n\n.progress-info .bg-gray-900::after {\n  border-top-color: #111827; }\n\n/**\n * = Shapes\n */\n.avatar-sm {\n  width: 1.5rem;\n  height: 1.5rem; }\n\n.avatar-md {\n  width: 3rem;\n  height: 3rem; }\n\n.avatar-lg {\n  width: 4.5rem;\n  height: 4.5rem; }\n\n/**\n * = Datepickers\n */\n.datepicker .datepicker-cell.selected,\n.datepicker .datepicker-cell.selected:hover {\n  background: #1F2937; }\n\n/**steps\n * = Accordions\n */\n.step {\n  position: relative;\n  margin-bottom: 4rem;\n  border-radius: 6px; }\n  .step .step-shape {\n    display: inline-flex;\n    width: 7rem;\n    height: 7rem;\n    text-align: center;\n    -moz-align-items: center;\n    -ms-align-items: center;\n    align-items: center;\n    -moz-justify-content: center;\n    -ms-justify-content: center;\n    justify-content: center;\n    -ms-flex-pack: center; }\n    .step .step-shape i, .step .step-shape svg {\n      font-size: 2rem; }\n    .step .step-shape .step-number {\n      position: absolute;\n      font-weight: 500;\n      top: -10px;\n      width: 32px;\n      height: 32px;\n      border-width: 0.125rem;\n      border-style: solid;\n      line-height: 1.7; }\n    .step .step-shape.bordered {\n      border-width: 0.125rem;\n      border-style: solid; }\n      .step .step-shape.bordered .step-number {\n        background-color: #ffffff;\n        top: -12px; }\n    .step .step-shape.rounded-circle .step-number {\n      margin-right: 1.275rem; }\n  .step .icon-lg {\n    font-size: 4.5rem; }\n  .step .back-layer {\n    display: flex;\n    position: absolute;\n    font-size: 12rem;\n    z-index: 0;\n    top: 0; }\n\n.table thead th {\n  padding-top: 0.75rem;\n  padding-bottom: 0.75rem;\n  font-size: 0.75rem;\n  text-transform: uppercase;\n  font-weight: 600;\n  border-top: 0; }\n\n.table th {\n  font-weight: 500;\n  padding: 1rem; }\n\n.table td .progress {\n  height: 3px;\n  width: 120px;\n  margin: 0; }\n\n.table td,\n.table th {\n  font-size: 0.875rem;\n  white-space: nowrap; }\n\n.table.user-table thead th {\n  border-top: 0; }\n\n.table.align-items-center td,\n.table.align-items-center th {\n  vertical-align: middle; }\n\n.table .thead-dark th {\n  background-color: #1F2937;\n  color: #ffffff; }\n  .table .thead-dark th a {\n    color: #1F2937; }\n\n.table .thead-light th {\n  background-color: #F2F4F6;\n  color: #1F2937; }\n  .table .thead-light th a {\n    color: #1F2937; }\n\n.table-hover tr {\n  transition: all 0.2s ease; }\n  @media (prefers-reduced-motion: reduce) {\n    .table-hover tr {\n      transition: none; } }\n\n.table-flush td,\n.table-flush th {\n  border-left: 0;\n  border-right: 0; }\n\n.table-flush tbody tr:first-child td,\n.table-flush tbody tr:first-child th {\n  border-top: 0; }\n\n.table-flush tbody tr:last-child td,\n.table-flush tbody tr:last-child th {\n  border-bottom: 0; }\n\n.card .table {\n  margin-bottom: 0; }\n  .card .table td,\n  .card .table th {\n    padding-left: 1.5rem;\n    padding-right: 1.5rem; }\n\n.table [data-sort] {\n  cursor: pointer; }\n\n.table .custom-toggle {\n  display: block; }\n\n.table .thead-dark [data-sort]::after {\n  content: url(\"data:image/svg+xml;utf8,<svg width='6' height='10' viewBox='0 0 6 10' fill='none' xmlns='http://www.w3.org/2000/svg'><path fill-rule='evenodd' clip-rule='evenodd' d='M3 0L6 4H0L3 0ZM3 10L0 6H6L3 10Z' fill='%231F2937'/></svg>\");\n  margin-left: .25rem; }\n\n.table .thead-light [data-sort]::after {\n  content: url(\"data:image/svg+xml;utf8,<svg width='6' height='10' viewBox='0 0 6 10' fill='none' xmlns='http://www.w3.org/2000/svg'><path fill-rule='evenodd' clip-rule='evenodd' d='M3 0L6 4H0L3 0ZM3 10L0 6H6L3 10Z' fill='%231F2937'/></svg>\");\n  margin-left: .25rem; }\n\n.dataTables_wrapper .dataTables_info {\n  padding-left: 1.5rem; }\n\n.dataTables_wrapper .dataTables_paginate {\n  padding-right: 1.5rem; }\n\n.dataTables_wrapper .dataTables_length label {\n  padding-left: 1.5rem; }\n\n.dataTables_wrapper .dataTables_filter {\n  padding-right: 1.5rem; }\n\n.dataTable-top,\n.dataTable-bottom {\n  display: flex;\n  width: 100%;\n  justify-content: space-between; }\n  @media (max-width: 767.98px) {\n    .dataTable-top,\n    .dataTable-bottom {\n      flex-direction: column; }\n      .dataTable-top .dataTable-info,\n      .dataTable-bottom .dataTable-info {\n        margin-bottom: 1rem; } }\n\n.dataTable-top {\n  padding: 0 0 1rem 0; }\n\n.dataTable-bottom {\n  padding: 1.5rem 0 0 0; }\n\n.dataTable-pagination {\n  display: flex;\n  padding-left: 0;\n  list-style: none; }\n  .dataTable-pagination a {\n    padding: 0.375rem 0.75rem; }\n  .dataTable-pagination li:first-child a {\n    border-top-left-radius: 0.5rem;\n    border-bottom-left-radius: 0.5rem; }\n  .dataTable-pagination li:last-child a {\n    border-top-right-radius: 0.5rem;\n    border-bottom-right-radius: 0.5rem; }\n  .dataTable-pagination > li:not(:first-child) a {\n    margin-left: -0.0625rem; }\n  .dataTable-pagination > li.active a {\n    z-index: 3;\n    color: #ffffff;\n    background-color: #1F2937;\n    border-color: #1F2937; }\n  .dataTable-pagination > li.disabled a {\n    color: #4B5563;\n    pointer-events: none;\n    background-color: #ffffff;\n    border-color: #D1D5DB; }\n  .dataTable-pagination > li a {\n    position: relative;\n    display: block;\n    color: #1F2937;\n    background-color: #ffffff;\n    border: 0.0625rem solid #9CA3AF; }\n    .dataTable-pagination > li a:hover {\n      z-index: 2;\n      color: black;\n      background-color: #E5E7EB;\n      border-color: #D1D5DB; }\n    .dataTable-pagination > li a:focus {\n      z-index: 3;\n      outline: 0;\n      box-shadow: 0 0 0 0.18rem rgba(31, 41, 55, 0.25); }\n\n.dataTable-selector {\n  display: inline-block;\n  width: auto;\n  height: calc(1.5em + 1.125rem);\n  padding: 0.5rem 2rem 0.5rem 1rem;\n  font-size: 0.875rem;\n  font-weight: 400;\n  line-height: 1.5;\n  color: #6B7280;\n  vertical-align: middle;\n  background-color: #ffffff;\n  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='%231F2937' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e\");\n  background-repeat: no-repeat;\n  background-position: right 1rem center;\n  background-size: 16px 12px;\n  border: 0.0625rem solid #D1D5DB;\n  border-radius: 0.5rem;\n  box-shadow: inset 0 1px 2px rgba(17, 24, 39, 0.0125);\n  -webkit-appearance: none;\n          appearance: none; }\n  .dataTable-selector:focus {\n    border-color: #4d6689;\n    outline: 0;\n    box-shadow: inset 0 1px 2px rgba(17, 24, 39, 0.0125), 0 0 0 0.18rem rgba(31, 41, 55, 0.25); }\n    .dataTable-selector:focus::-ms-value {\n      color: #6B7280;\n      background-color: #ffffff; }\n  .dataTable-selector[multiple], .dataTable-selector[size]:not([size=\"1\"]) {\n    height: auto;\n    padding-right: 1rem;\n    background-image: none; }\n  .dataTable-selector:disabled {\n    color: #4B5563;\n    background-color: #E5E7EB; }\n  .dataTable-selector:-moz-focusring {\n    color: transparent;\n    text-shadow: 0 0 0 #6B7280; }\n\n.dataTable-input {\n  display: block;\n  width: 100%;\n  min-height: calc(1.5em + 1.125rem);\n  padding: 0.5rem 1rem;\n  font-size: 0.875rem;\n  font-weight: 400;\n  line-height: 1.5;\n  color: #6B7280;\n  background-color: #ffffff;\n  background-clip: padding-box;\n  border: 0.0625rem solid #D1D5DB;\n  -webkit-appearance: none;\n          appearance: none;\n  border-radius: 0.5rem;\n  box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.07);\n  transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; }\n  @media (prefers-reduced-motion: reduce) {\n    .dataTable-input {\n      transition: none; } }\n  .dataTable-input:focus {\n    color: #6B7280;\n    background-color: #ffffff;\n    border-color: #4d6689;\n    outline: 0;\n    box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.07), 0 0 0 0.18rem rgba(31, 41, 55, 0.25); }\n  .dataTable-input::placeholder {\n    color: #4B5563;\n    opacity: 1; }\n  .dataTable-input:disabled, .dataTable-input[readonly] {\n    background-color: #E5E7EB;\n    opacity: 1; }\n\n/**\n * = Typography\n */\nh1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6,\n.h1, .h2, .h3, .h4, .h5, .h6 {\n  font-family: \"Inter\", sans-serif;\n  font-weight: 500; }\n\np, ol li, ul li, .p {\n  font-family: var(--bs-font-sans-serif);\n  font-size: 1rem;\n  font-weight: 400;\n  line-height: 1.6; }\n\na, .text-action {\n  color: #1F2937;\n  transition: all 0.2s ease; }\n  a:hover, .text-action:hover {\n    color: black;\n    cursor: pointer; }\n\n.lead + .btn-wrapper {\n  margin-top: 3rem; }\n\n@media (max-width: 767.98px) {\n  .lead {\n    font-size: 1rem; } }\n\n.line-through {\n  -webkit-text-decoration: line-through;\n  text-decoration: line-through; }\n\n.text-italic {\n  font-style: italic !important; }\n\n.description {\n  font-size: 0.875rem; }\n\n.hover\\:underline:hover {\n  text-decoration: underline; }\n\n.heading {\n  font-size: 2rem;\n  font-weight: 500; }\n\n@media (max-width: 767.98px) {\n  .display-2 {\n    font-size: 1.875rem; } }\n\n@media (max-width: 991.98px) {\n  .display-3 {\n    font-size: 1.875rem; } }\n\n@media (max-width: 575.98px) {\n  .display-4 {\n    font-size: 1.5rem; } }\n\n.blockquote {\n  font-style: italic; }\n  @media (max-width: 767.98px) {\n    .blockquote.blockquote-large {\n      font-size: 1.25rem; } }\n  .blockquote .blockquote-footer {\n    font-size: 0.875rem;\n    font-weight: 600; }\n    @media (max-width: 767.98px) {\n      .blockquote .blockquote-footer {\n        font-size: 1.25rem; } }\n\n.font-small {\n  font-size: 0.875rem;\n  font-weight: 300; }\n\n.font-base {\n  font-size: 1rem;\n  font-weight: 300; }\n\n.font-medium {\n  font-size: 1.25rem;\n  font-weight: 300; }\n\ncode[class*=\"language-\"], pre[class*=\"language-\"] {\n  text-shadow: none;\n  font-family: var(--bs-font-sans-serif);\n  font-weight: 500; }\n\n.text-primary, .text-primary:hover {\n  color: #1F2937 !important; }\n\n.text-primary a:not(.btn), .text-primary h1, .text-primary .h1, .text-primary h2, .text-primary .h2, .text-primary h3, .text-primary .h3, .text-primary h4, .text-primary .h4, .text-primary h5, .text-primary .h5, .text-primary h6, .text-primary .h6, .text-primary .h1, .text-primary .h2, .text-primary .h3, .text-primary .h4, .text-primary .h5, .text-primary .h6, .text-primary .display-1, .text-primary .display-2, .text-primary .display-3, .text-primary .display-4 {\n  color: #1F2937; }\n\n.text-primary .text-muted {\n  color: rgba(31, 41, 55, 0.7) !important; }\n\n.text-secondary, .text-secondary:hover {\n  color: #f0bc74 !important; }\n\n.text-secondary a:not(.btn), .text-secondary h1, .text-secondary .h1, .text-secondary h2, .text-secondary .h2, .text-secondary h3, .text-secondary .h3, .text-secondary h4, .text-secondary .h4, .text-secondary h5, .text-secondary .h5, .text-secondary h6, .text-secondary .h6, .text-secondary .h1, .text-secondary .h2, .text-secondary .h3, .text-secondary .h4, .text-secondary .h5, .text-secondary .h6, .text-secondary .display-1, .text-secondary .display-2, .text-secondary .display-3, .text-secondary .display-4 {\n  color: #f0bc74; }\n\n.text-secondary .text-muted {\n  color: rgba(240, 188, 116, 0.7) !important; }\n\n.text-tertiary, .text-tertiary:hover {\n  color: #31316A !important; }\n\n.text-tertiary a:not(.btn), .text-tertiary h1, .text-tertiary .h1, .text-tertiary h2, .text-tertiary .h2, .text-tertiary h3, .text-tertiary .h3, .text-tertiary h4, .text-tertiary .h4, .text-tertiary h5, .text-tertiary .h5, .text-tertiary h6, .text-tertiary .h6, .text-tertiary .h1, .text-tertiary .h2, .text-tertiary .h3, .text-tertiary .h4, .text-tertiary .h5, .text-tertiary .h6, .text-tertiary .display-1, .text-tertiary .display-2, .text-tertiary .display-3, .text-tertiary .display-4 {\n  color: #31316A; }\n\n.text-tertiary .text-muted {\n  color: rgba(49, 49, 106, 0.7) !important; }\n\n.text-success, .text-success:hover {\n  color: #10B981 !important; }\n\n.text-success a:not(.btn), .text-success h1, .text-success .h1, .text-success h2, .text-success .h2, .text-success h3, .text-success .h3, .text-success h4, .text-success .h4, .text-success h5, .text-success .h5, .text-success h6, .text-success .h6, .text-success .h1, .text-success .h2, .text-success .h3, .text-success .h4, .text-success .h5, .text-success .h6, .text-success .display-1, .text-success .display-2, .text-success .display-3, .text-success .display-4 {\n  color: #10B981; }\n\n.text-success .text-muted {\n  color: rgba(16, 185, 129, 0.7) !important; }\n\n.text-info, .text-info:hover {\n  color: #2361ce !important; }\n\n.text-info a:not(.btn), .text-info h1, .text-info .h1, .text-info h2, .text-info .h2, .text-info h3, .text-info .h3, .text-info h4, .text-info .h4, .text-info h5, .text-info .h5, .text-info h6, .text-info .h6, .text-info .h1, .text-info .h2, .text-info .h3, .text-info .h4, .text-info .h5, .text-info .h6, .text-info .display-1, .text-info .display-2, .text-info .display-3, .text-info .display-4 {\n  color: #2361ce; }\n\n.text-info .text-muted {\n  color: rgba(35, 97, 206, 0.7) !important; }\n\n.text-warning, .text-warning:hover {\n  color: #f3c78e !important; }\n\n.text-warning a:not(.btn), .text-warning h1, .text-warning .h1, .text-warning h2, .text-warning .h2, .text-warning h3, .text-warning .h3, .text-warning h4, .text-warning .h4, .text-warning h5, .text-warning .h5, .text-warning h6, .text-warning .h6, .text-warning .h1, .text-warning .h2, .text-warning .h3, .text-warning .h4, .text-warning .h5, .text-warning .h6, .text-warning .display-1, .text-warning .display-2, .text-warning .display-3, .text-warning .display-4 {\n  color: #f3c78e; }\n\n.text-warning .text-muted {\n  color: rgba(243, 199, 142, 0.7) !important; }\n\n.text-danger, .text-danger:hover {\n  color: #E11D48 !important; }\n\n.text-danger a:not(.btn), .text-danger h1, .text-danger .h1, .text-danger h2, .text-danger .h2, .text-danger h3, .text-danger .h3, .text-danger h4, .text-danger .h4, .text-danger h5, .text-danger .h5, .text-danger h6, .text-danger .h6, .text-danger .h1, .text-danger .h2, .text-danger .h3, .text-danger .h4, .text-danger .h5, .text-danger .h6, .text-danger .display-1, .text-danger .display-2, .text-danger .display-3, .text-danger .display-4 {\n  color: #E11D48; }\n\n.text-danger .text-muted {\n  color: rgba(225, 29, 72, 0.7) !important; }\n\n.text-white, .text-white:hover {\n  color: #ffffff !important; }\n\n.text-white a:not(.btn), .text-white h1, .text-white .h1, .text-white h2, .text-white .h2, .text-white h3, .text-white .h3, .text-white h4, .text-white .h4, .text-white h5, .text-white .h5, .text-white h6, .text-white .h6, .text-white .h1, .text-white .h2, .text-white .h3, .text-white .h4, .text-white .h5, .text-white .h6, .text-white .display-1, .text-white .display-2, .text-white .display-3, .text-white .display-4 {\n  color: #ffffff; }\n\n.text-white .text-muted {\n  color: rgba(255, 255, 255, 0.7) !important; }\n\n.text-indigo, .text-indigo:hover {\n  color: #4F46E5 !important; }\n\n.text-indigo a:not(.btn), .text-indigo h1, .text-indigo .h1, .text-indigo h2, .text-indigo .h2, .text-indigo h3, .text-indigo .h3, .text-indigo h4, .text-indigo .h4, .text-indigo h5, .text-indigo .h5, .text-indigo h6, .text-indigo .h6, .text-indigo .h1, .text-indigo .h2, .text-indigo .h3, .text-indigo .h4, .text-indigo .h5, .text-indigo .h6, .text-indigo .display-1, .text-indigo .display-2, .text-indigo .display-3, .text-indigo .display-4 {\n  color: #4F46E5; }\n\n.text-indigo .text-muted {\n  color: rgba(79, 70, 229, 0.7) !important; }\n\n.text-purple, .text-purple:hover {\n  color: #7C3AED !important; }\n\n.text-purple a:not(.btn), .text-purple h1, .text-purple .h1, .text-purple h2, .text-purple .h2, .text-purple h3, .text-purple .h3, .text-purple h4, .text-purple .h4, .text-purple h5, .text-purple .h5, .text-purple h6, .text-purple .h6, .text-purple .h1, .text-purple .h2, .text-purple .h3, .text-purple .h4, .text-purple .h5, .text-purple .h6, .text-purple .display-1, .text-purple .display-2, .text-purple .display-3, .text-purple .display-4 {\n  color: #7C3AED; }\n\n.text-purple .text-muted {\n  color: rgba(124, 58, 237, 0.7) !important; }\n\n.text-yellow-100, .text-yellow-100:hover {\n  color: #ffeed6 !important; }\n\n.text-yellow-100 a:not(.btn), .text-yellow-100 h1, .text-yellow-100 .h1, .text-yellow-100 h2, .text-yellow-100 .h2, .text-yellow-100 h3, .text-yellow-100 .h3, .text-yellow-100 h4, .text-yellow-100 .h4, .text-yellow-100 h5, .text-yellow-100 .h5, .text-yellow-100 h6, .text-yellow-100 .h6, .text-yellow-100 .h1, .text-yellow-100 .h2, .text-yellow-100 .h3, .text-yellow-100 .h4, .text-yellow-100 .h5, .text-yellow-100 .h6, .text-yellow-100 .display-1, .text-yellow-100 .display-2, .text-yellow-100 .display-3, .text-yellow-100 .display-4 {\n  color: #ffeed6; }\n\n.text-yellow-100 .text-muted {\n  color: rgba(255, 238, 214, 0.7) !important; }\n\n.text-yellow-200, .text-yellow-200:hover {\n  color: #f5dbb8 !important; }\n\n.text-yellow-200 a:not(.btn), .text-yellow-200 h1, .text-yellow-200 .h1, .text-yellow-200 h2, .text-yellow-200 .h2, .text-yellow-200 h3, .text-yellow-200 .h3, .text-yellow-200 h4, .text-yellow-200 .h4, .text-yellow-200 h5, .text-yellow-200 .h5, .text-yellow-200 h6, .text-yellow-200 .h6, .text-yellow-200 .h1, .text-yellow-200 .h2, .text-yellow-200 .h3, .text-yellow-200 .h4, .text-yellow-200 .h5, .text-yellow-200 .h6, .text-yellow-200 .display-1, .text-yellow-200 .display-2, .text-yellow-200 .display-3, .text-yellow-200 .display-4 {\n  color: #f5dbb8; }\n\n.text-yellow-200 .text-muted {\n  color: rgba(245, 219, 184, 0.7) !important; }\n\n.text-gray-50, .text-gray-50:hover {\n  color: #F9FAFB !important; }\n\n.text-gray-50 a:not(.btn), .text-gray-50 h1, .text-gray-50 .h1, .text-gray-50 h2, .text-gray-50 .h2, .text-gray-50 h3, .text-gray-50 .h3, .text-gray-50 h4, .text-gray-50 .h4, .text-gray-50 h5, .text-gray-50 .h5, .text-gray-50 h6, .text-gray-50 .h6, .text-gray-50 .h1, .text-gray-50 .h2, .text-gray-50 .h3, .text-gray-50 .h4, .text-gray-50 .h5, .text-gray-50 .h6, .text-gray-50 .display-1, .text-gray-50 .display-2, .text-gray-50 .display-3, .text-gray-50 .display-4 {\n  color: #F9FAFB; }\n\n.text-gray-50 .text-muted {\n  color: rgba(249, 250, 251, 0.7) !important; }\n\n.text-gray-100, .text-gray-100:hover {\n  color: #F2F4F6 !important; }\n\n.text-gray-100 a:not(.btn), .text-gray-100 h1, .text-gray-100 .h1, .text-gray-100 h2, .text-gray-100 .h2, .text-gray-100 h3, .text-gray-100 .h3, .text-gray-100 h4, .text-gray-100 .h4, .text-gray-100 h5, .text-gray-100 .h5, .text-gray-100 h6, .text-gray-100 .h6, .text-gray-100 .h1, .text-gray-100 .h2, .text-gray-100 .h3, .text-gray-100 .h4, .text-gray-100 .h5, .text-gray-100 .h6, .text-gray-100 .display-1, .text-gray-100 .display-2, .text-gray-100 .display-3, .text-gray-100 .display-4 {\n  color: #F2F4F6; }\n\n.text-gray-100 .text-muted {\n  color: rgba(242, 244, 246, 0.7) !important; }\n\n.text-gray-200, .text-gray-200:hover {\n  color: #E5E7EB !important; }\n\n.text-gray-200 a:not(.btn), .text-gray-200 h1, .text-gray-200 .h1, .text-gray-200 h2, .text-gray-200 .h2, .text-gray-200 h3, .text-gray-200 .h3, .text-gray-200 h4, .text-gray-200 .h4, .text-gray-200 h5, .text-gray-200 .h5, .text-gray-200 h6, .text-gray-200 .h6, .text-gray-200 .h1, .text-gray-200 .h2, .text-gray-200 .h3, .text-gray-200 .h4, .text-gray-200 .h5, .text-gray-200 .h6, .text-gray-200 .display-1, .text-gray-200 .display-2, .text-gray-200 .display-3, .text-gray-200 .display-4 {\n  color: #E5E7EB; }\n\n.text-gray-200 .text-muted {\n  color: rgba(229, 231, 235, 0.7) !important; }\n\n.text-gray-300, .text-gray-300:hover {\n  color: #D1D5DB !important; }\n\n.text-gray-300 a:not(.btn), .text-gray-300 h1, .text-gray-300 .h1, .text-gray-300 h2, .text-gray-300 .h2, .text-gray-300 h3, .text-gray-300 .h3, .text-gray-300 h4, .text-gray-300 .h4, .text-gray-300 h5, .text-gray-300 .h5, .text-gray-300 h6, .text-gray-300 .h6, .text-gray-300 .h1, .text-gray-300 .h2, .text-gray-300 .h3, .text-gray-300 .h4, .text-gray-300 .h5, .text-gray-300 .h6, .text-gray-300 .display-1, .text-gray-300 .display-2, .text-gray-300 .display-3, .text-gray-300 .display-4 {\n  color: #D1D5DB; }\n\n.text-gray-300 .text-muted {\n  color: rgba(209, 213, 219, 0.7) !important; }\n\n.text-gray-400, .text-gray-400:hover {\n  color: #9CA3AF !important; }\n\n.text-gray-400 a:not(.btn), .text-gray-400 h1, .text-gray-400 .h1, .text-gray-400 h2, .text-gray-400 .h2, .text-gray-400 h3, .text-gray-400 .h3, .text-gray-400 h4, .text-gray-400 .h4, .text-gray-400 h5, .text-gray-400 .h5, .text-gray-400 h6, .text-gray-400 .h6, .text-gray-400 .h1, .text-gray-400 .h2, .text-gray-400 .h3, .text-gray-400 .h4, .text-gray-400 .h5, .text-gray-400 .h6, .text-gray-400 .display-1, .text-gray-400 .display-2, .text-gray-400 .display-3, .text-gray-400 .display-4 {\n  color: #9CA3AF; }\n\n.text-gray-400 .text-muted {\n  color: rgba(156, 163, 175, 0.7) !important; }\n\n.text-gray-500, .text-gray-500:hover {\n  color: #6B7280 !important; }\n\n.text-gray-500 a:not(.btn), .text-gray-500 h1, .text-gray-500 .h1, .text-gray-500 h2, .text-gray-500 .h2, .text-gray-500 h3, .text-gray-500 .h3, .text-gray-500 h4, .text-gray-500 .h4, .text-gray-500 h5, .text-gray-500 .h5, .text-gray-500 h6, .text-gray-500 .h6, .text-gray-500 .h1, .text-gray-500 .h2, .text-gray-500 .h3, .text-gray-500 .h4, .text-gray-500 .h5, .text-gray-500 .h6, .text-gray-500 .display-1, .text-gray-500 .display-2, .text-gray-500 .display-3, .text-gray-500 .display-4 {\n  color: #6B7280; }\n\n.text-gray-500 .text-muted {\n  color: rgba(107, 114, 128, 0.7) !important; }\n\n.text-gray-600, .text-gray-600:hover {\n  color: #4B5563 !important; }\n\n.text-gray-600 a:not(.btn), .text-gray-600 h1, .text-gray-600 .h1, .text-gray-600 h2, .text-gray-600 .h2, .text-gray-600 h3, .text-gray-600 .h3, .text-gray-600 h4, .text-gray-600 .h4, .text-gray-600 h5, .text-gray-600 .h5, .text-gray-600 h6, .text-gray-600 .h6, .text-gray-600 .h1, .text-gray-600 .h2, .text-gray-600 .h3, .text-gray-600 .h4, .text-gray-600 .h5, .text-gray-600 .h6, .text-gray-600 .display-1, .text-gray-600 .display-2, .text-gray-600 .display-3, .text-gray-600 .display-4 {\n  color: #4B5563; }\n\n.text-gray-600 .text-muted {\n  color: rgba(75, 85, 99, 0.7) !important; }\n\n.text-gray-700, .text-gray-700:hover {\n  color: #374151 !important; }\n\n.text-gray-700 a:not(.btn), .text-gray-700 h1, .text-gray-700 .h1, .text-gray-700 h2, .text-gray-700 .h2, .text-gray-700 h3, .text-gray-700 .h3, .text-gray-700 h4, .text-gray-700 .h4, .text-gray-700 h5, .text-gray-700 .h5, .text-gray-700 h6, .text-gray-700 .h6, .text-gray-700 .h1, .text-gray-700 .h2, .text-gray-700 .h3, .text-gray-700 .h4, .text-gray-700 .h5, .text-gray-700 .h6, .text-gray-700 .display-1, .text-gray-700 .display-2, .text-gray-700 .display-3, .text-gray-700 .display-4 {\n  color: #374151; }\n\n.text-gray-700 .text-muted {\n  color: rgba(55, 65, 81, 0.7) !important; }\n\n.text-gray-800, .text-gray-800:hover {\n  color: #1F2937 !important; }\n\n.text-gray-800 a:not(.btn), .text-gray-800 h1, .text-gray-800 .h1, .text-gray-800 h2, .text-gray-800 .h2, .text-gray-800 h3, .text-gray-800 .h3, .text-gray-800 h4, .text-gray-800 .h4, .text-gray-800 h5, .text-gray-800 .h5, .text-gray-800 h6, .text-gray-800 .h6, .text-gray-800 .h1, .text-gray-800 .h2, .text-gray-800 .h3, .text-gray-800 .h4, .text-gray-800 .h5, .text-gray-800 .h6, .text-gray-800 .display-1, .text-gray-800 .display-2, .text-gray-800 .display-3, .text-gray-800 .display-4 {\n  color: #1F2937; }\n\n.text-gray-800 .text-muted {\n  color: rgba(31, 41, 55, 0.7) !important; }\n\n.text-gray-900, .text-gray-900:hover {\n  color: #111827 !important; }\n\n.text-gray-900 a:not(.btn), .text-gray-900 h1, .text-gray-900 .h1, .text-gray-900 h2, .text-gray-900 .h2, .text-gray-900 h3, .text-gray-900 .h3, .text-gray-900 h4, .text-gray-900 .h4, .text-gray-900 h5, .text-gray-900 .h5, .text-gray-900 h6, .text-gray-900 .h6, .text-gray-900 .h1, .text-gray-900 .h2, .text-gray-900 .h3, .text-gray-900 .h4, .text-gray-900 .h5, .text-gray-900 .h6, .text-gray-900 .display-1, .text-gray-900 .display-2, .text-gray-900 .display-3, .text-gray-900 .display-4 {\n  color: #111827; }\n\n.text-gray-900 .text-muted {\n  color: rgba(17, 24, 39, 0.7) !important; }\n\narticle img {\n  margin: 40px 0; }\n\narticle p, article ul, article ol, article blockquote {\n  margin-bottom: 20px; }\n\narticle p, article ul li, article ol li {\n  font-size: 1.2rem; }\n\narticle h1, article .h1, article h2, article .h2, article h3, article .h3, article h4, article .h4, article h5, article .h5, article h6, article .h6,\narticle .h1, article .h2, article .h3, article .h4, article .h5, article .h6 {\n  margin-bottom: 30px; }\n\n.folder-structure li {\n  font-size: 1.2rem; }\n\n.truncate-text {\n  white-space: nowrap;\n  overflow: hidden;\n  text-overflow: ellipsis; }\n\n/**\n * = Timelines\n */\n.list-group-timeline .list-group-item {\n  position: relative; }\n  .list-group-timeline .list-group-item .col-auto {\n    z-index: 999; }\n  .list-group-timeline .list-group-item:not(:last-child)::before {\n    content: '';\n    position: absolute;\n    top: 1rem;\n    left: 2.5rem;\n    height: 100%;\n    border-left: 1px solid #9CA3AF; }\n\n.tooltip-inner {\n  box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px 0 rgba(0, 0, 0, 0.06); }\n\n.chartist-tooltip {\n  position: absolute;\n  display: inline-block;\n  opacity: 0;\n  min-width: 5em;\n  padding: .5em;\n  background: #F2F4F6;\n  border: 1px solid #F2F4F6;\n  border-radius: 0.5rem;\n  color: #1F2937;\n  font-weight: 500;\n  text-align: center;\n  pointer-events: none;\n  z-index: 1;\n  transition: all 0.2s ease; }\n\n.chartist-tooltip:before {\n  content: \"\";\n  position: absolute;\n  top: 100%;\n  left: 50%;\n  width: 0;\n  height: 0;\n  margin-left: -15px;\n  border: 15px solid transparent;\n  border-top-color: #F2F4F6; }\n\n.chartist-tooltip.tooltip-show {\n  opacity: 1; }\n\n.ct-area, .ct-line {\n  pointer-events: none; }\n\n[data-simplebar] {\n  position: fixed;\n  flex-direction: column;\n  flex-wrap: wrap;\n  justify-content: flex-start;\n  align-content: flex-start;\n  align-items: flex-start; }\n\n.simplebar-wrapper {\n  overflow: hidden;\n  width: inherit;\n  height: inherit;\n  max-width: inherit;\n  max-height: inherit; }\n\n.simplebar-mask {\n  direction: inherit;\n  position: absolute;\n  overflow: hidden;\n  padding: 0;\n  margin: 0;\n  left: 0;\n  top: 0;\n  bottom: 0;\n  right: 0;\n  width: auto !important;\n  height: auto !important;\n  z-index: 0; }\n\n.simplebar-offset {\n  direction: inherit !important;\n  box-sizing: inherit !important;\n  resize: none !important;\n  position: absolute;\n  top: 0;\n  left: 0;\n  bottom: 0;\n  right: 0;\n  padding: 0;\n  margin: 0;\n  -webkit-overflow-scrolling: touch; }\n\n.simplebar-content-wrapper {\n  direction: inherit;\n  box-sizing: border-box !important;\n  position: relative;\n  display: block;\n  height: 100%;\n  /* Required for horizontal native scrollbar to not appear if parent is taller than natural height */\n  width: auto;\n  max-width: 100%;\n  /* Not required for horizontal scroll to trigger */\n  max-height: 100%;\n  /* Needed for vertical scroll to trigger */\n  scrollbar-width: none;\n  -ms-overflow-style: none; }\n\n.simplebar-content-wrapper::-webkit-scrollbar,\n.simplebar-hide-scrollbar::-webkit-scrollbar {\n  width: 0;\n  height: 0; }\n\n.simplebar-content:before,\n.simplebar-content:after {\n  content: ' ';\n  display: table; }\n\n.simplebar-placeholder {\n  max-height: 100%;\n  max-width: 100%;\n  width: 100%;\n  pointer-events: none; }\n\n.simplebar-height-auto-observer-wrapper {\n  box-sizing: inherit !important;\n  height: 100%;\n  width: 100%;\n  max-width: 1px;\n  position: relative;\n  float: left;\n  max-height: 1px;\n  overflow: hidden;\n  z-index: -1;\n  padding: 0;\n  margin: 0;\n  pointer-events: none;\n  flex-grow: inherit;\n  flex-shrink: 0;\n  flex-basis: 0; }\n\n.simplebar-height-auto-observer {\n  box-sizing: inherit;\n  display: block;\n  opacity: 0;\n  position: absolute;\n  top: 0;\n  left: 0;\n  height: 1000%;\n  width: 1000%;\n  min-height: 1px;\n  min-width: 1px;\n  overflow: hidden;\n  pointer-events: none;\n  z-index: -1; }\n\n.simplebar-track {\n  z-index: 1;\n  position: absolute;\n  right: 0;\n  bottom: 0;\n  pointer-events: none;\n  overflow: hidden; }\n\n[data-simplebar].simplebar-dragging .simplebar-content {\n  pointer-events: none;\n  user-select: none;\n  -webkit-user-select: none; }\n\n[data-simplebar].simplebar-dragging .simplebar-track {\n  pointer-events: all; }\n\n.simplebar-scrollbar {\n  position: absolute;\n  left: 0;\n  right: 0;\n  min-height: 10px; }\n\n.simplebar-scrollbar:before {\n  position: absolute;\n  content: '';\n  background: black;\n  border-radius: 7px;\n  left: 2px;\n  right: 2px;\n  opacity: 0;\n  transition: opacity 0.2s 0.5s linear; }\n\n.simplebar-scrolling .simplebar-scrollbar:before,\n.simplebar-hover .simplebar-scrollbar:before,\n.simplebar-mouse-entered .simplebar-scrollbar:before {\n  opacity: 0.5;\n  transition-delay: 0s;\n  transition-duration: 0s; }\n\n.simplebar-scrollbar.simplebar-visible:before {\n  /* When hovered, remove all transitions from drag handle */\n  opacity: 0.5;\n  transition-delay: 0s;\n  transition-duration: 0s; }\n\n.simplebar-track.simplebar-vertical {\n  top: 0;\n  width: 11px; }\n\n.simplebar-scrollbar:before {\n  top: 2px;\n  bottom: 2px;\n  left: 2px;\n  right: 2px; }\n\n.simplebar-track.simplebar-horizontal {\n  left: 0;\n  height: 11px; }\n\n.simplebar-track.simplebar-horizontal .simplebar-scrollbar {\n  right: auto;\n  left: 0;\n  top: 0;\n  bottom: 0;\n  min-height: 0;\n  min-width: 10px;\n  width: auto; }\n\n/* Rtl support */\n[data-simplebar-direction='rtl'] .simplebar-track.simplebar-vertical {\n  right: auto;\n  left: 0; }\n\n.simplebar-dummy-scrollbar-size {\n  direction: rtl;\n  position: fixed;\n  opacity: 0;\n  visibility: hidden;\n  height: 500px;\n  width: 500px;\n  overflow-y: hidden;\n  overflow-x: scroll;\n  -ms-overflow-style: scrollbar !important; }\n\n.simplebar-dummy-scrollbar-size > div {\n  width: 200%;\n  height: 200%;\n  margin: 10px 0; }\n\n.simplebar-hide-scrollbar {\n  position: fixed;\n  left: 0;\n  visibility: hidden;\n  overflow-y: scroll;\n  scrollbar-width: none;\n  -ms-overflow-style: none; }\n\n.simplebar-scrollbar::before {\n  background-color: #0d1116; }\n\n@media (min-width: 992px) {\n  .form-control.form-control-lg {\n    padding: 1rem 1rem; } }\n\n.search-bar .form-control {\n  width: 280px;\n  transition: width .2s ease-in-out; }\n  @media (max-width: 575.98px) {\n    .search-bar .form-control {\n      width: 120px; }\n      .search-bar .form-control:focus {\n        width: 150px; } }\n\n.form-check-input.round-check[type=\"checkbox\"] {\n  border-radius: 50%; }\n\n.form-switch {\n  padding-left: 2.75em; }\n  .form-switch .form-check-input {\n    height: 1.275em; }\n\n.input-group .form-control:focus {\n  border-color: #D1D5DB; }\n  .input-group .form-control:focus + .input-group-text {\n    border-color: #D1D5DB; }\n\n.input-group-text {\n  box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.07); }\n\n.form-select .form-select-lg {\n  padding: 0.5rem 2rem 0.5rem 1rem; }\n\n.file-field input[type=\"file\"] {\n  max-width: 230px;\n  position: absolute;\n  cursor: pointer;\n  filter: alpha(opacity=0);\n  opacity: 0;\n  padding-bottom: 30px; }\n\n.file-field svg {\n  cursor: pointer; }\n\n.datepicker-dropdown {\n  z-index: 9999; }\n\n/*# sourceMappingURL=volt.css.map */\n"
  },
  {
    "path": "static/assets/gulpfile.js",
    "content": "/*\n\n=========================================================\n* Volt Free - Bootstrap 5 Dashboard\n=========================================================\n\n* Product Page: https://themesberg.com/product/admin-dashboard/volt-premium-bootstrap-5-dashboard\n* Copyright 2020 Themesberg (https://www.themesberg.com)\n* License (https://themesberg.com/licensing)\n\n* Designed and coded by https://themesberg.com\n\n=========================================================\n\n* The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. Please contact us to request a removal.\n\n*/\n\nvar autoprefixer = require('gulp-autoprefixer');\nvar browserSync = require('browser-sync').create();\nvar cleanCss = require('gulp-clean-css');\nvar del = require('del');\nconst htmlmin = require('gulp-htmlmin');\nconst cssbeautify = require('gulp-cssbeautify');\nvar gulp = require('gulp');\nconst npmDist = require('gulp-npm-dist');\nvar sass = require('gulp-sass')(require('node-sass'));\nvar wait = require('gulp-wait');\nvar sourcemaps = require('gulp-sourcemaps');\nvar fileinclude = require('gulp-file-include');\nvar rename = require(\"gulp-rename\");\n\n// Define paths\n\nconst paths = {\n    dist: {\n        base: './dist/',\n        css: './dist/css',\n        html: './dist/pages',\n        assets: './dist/assets',\n        img: './dist/assets/img',\n        vendor: './dist/vendor'\n    },\n    dev: {\n        base: './html&css/',\n        css: './html&css/css',\n        html: './html&css/pages',\n        assets: './html&css/assets',\n        img: './html&css/assets/img',\n        vendor: './html&css/vendor'\n    },\n    base: {\n        base: './',\n        node: './node_modules'\n    },\n    src: {\n        base: './',\n        css: './css',\n        html: './src/pages/**/*.html',\n        assets: './src/assets/**/*.*',\n        partials: './src/partials/**/*.html',\n        scss: './scss',\n        node_modules: './node_modules/',\n        vendor: './vendor'\n    },\n    temp: {\n        base: './.temp/',\n        css: './.temp/css',\n        html: './.temp/pages',\n        assets: './.temp/assets',\n        vendor: './.temp/vendor'\n    }\n};\n\n// Compile SCSS\ngulp.task('scss', function() {\n    return gulp.src([paths.src.scss + '/custom/**/*.scss', paths.src.scss + '/volt/**/*.scss', paths.src.scss + '/volt.scss'])\n        .pipe(wait(500))\n        .pipe(sourcemaps.init())\n        .pipe(sass().on('error', sass.logError))\n        .pipe(autoprefixer({\n            overrideBrowserslist: ['> 1%']\n        }))\n        .pipe(sourcemaps.write('.'))\n        .pipe(gulp.dest(paths.src.css))\n        .pipe(browserSync.stream());\n});\n\n// Minify CSS\ngulp.task('minify:css', function() {\n    return gulp.src([\n            paths.src.css + '/volt.css'\n        ])\n        .pipe(cleanCss())\n        .pipe(rename(function(path) {\n            // Updates the object in-place\n            path.extname = \".min.css\";\n        }))\n        .pipe(gulp.dest(paths.src.css))\n});\n\n// Default\ngulp.task('default', gulp.series('scss', 'minify:css'));\n"
  },
  {
    "path": "static/assets/img/favicon/browserconfig.xml",
    "content": "<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<browserconfig>\n    <msapplication>\n        <tile>\n            <square150x150logo src=\"/mstile-150x150.png\"/>\n            <TileColor>#ffffff</TileColor>\n        </tile>\n    </msapplication>\n</browserconfig>\n"
  },
  {
    "path": "static/assets/img/favicon/manifest.json",
    "content": "{\n  \"name\": \"Bootstrap\",\n  \"short_name\": \"Bootstrap\",\n  \"icons\": [\n    {\n      \"src\": \"/docs/4.3/assets/img/favicons/android-chrome-192x192.png\",\n      \"sizes\": \"192x192\",\n      \"type\": \"image/png\"\n    },\n    {\n      \"src\": \"/docs/4.3/assets/img/favicons/android-chrome-512x512.png\",\n      \"sizes\": \"512x512\",\n      \"type\": \"image/png\"\n    }\n  ],\n  \"start_url\": \"/?utm_source=a2hs\",\n  \"theme_color\": \"#563d7c\",\n  \"background_color\": \"#563d7c\",\n  \"display\": \"standalone\"\n}\n"
  },
  {
    "path": "static/assets/img/favicon/site.webmanifest",
    "content": "{\n    \"name\": \"Themesberg\",\n    \"short_name\": \"Themesberg\",\n    \"icons\": [\n        {\n            \"src\": \"/android-chrome-192x192.png\",\n            \"sizes\": \"192x192\",\n            \"type\": \"image/png\"\n        },\n        {\n            \"src\": \"/android-chrome-512x512.png\",\n            \"sizes\": \"512x512\",\n            \"type\": \"image/png\"\n        }\n    ],\n    \"theme_color\": \"#ffffff\",\n    \"background_color\": \"#ffffff\",\n    \"display\": \"standalone\"\n}\n"
  },
  {
    "path": "static/assets/js/volt.js",
    "content": "/*\n\n=========================================================\n* Volt Pro - Premium Bootstrap 5 Dashboard\n=========================================================\n\n* Product Page: https://themesberg.com/product/admin-dashboard/volt-bootstrap-5-dashboard\n* Copyright 2021 Themesberg (https://www.themesberg.com)\n\n* Designed and coded by https://themesberg.com\n\n=========================================================\n\n* The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. Please contact us to request a removal. Contact us if you want to remove it.\n\n*/\n\n\"use strict\";\nconst d = document;\nd.addEventListener(\"DOMContentLoaded\", function(event) {\n\n    const swalWithBootstrapButtons = Swal.mixin({\n        customClass: {\n            confirmButton: 'btn btn-primary me-3',\n            cancelButton: 'btn btn-gray'\n        },\n        buttonsStyling: false\n    });\n\n    var themeSettingsEl = document.getElementById('theme-settings');\n    var themeSettingsExpandEl = document.getElementById('theme-settings-expand');\n\n    if(themeSettingsEl) {\n\n        var themeSettingsCollapse = new bootstrap.Collapse(themeSettingsEl, {\n            show: true,\n            toggle: false\n        });\n\n        if (window.localStorage.getItem('settings_expanded') === 'true') {\n            themeSettingsCollapse.show();\n            themeSettingsExpandEl.classList.remove('show');\n        } else {\n            themeSettingsCollapse.hide();\n            themeSettingsExpandEl.classList.add('show');\n        }\n        \n        themeSettingsEl.addEventListener('hidden.bs.collapse', function () {\n            themeSettingsExpandEl.classList.add('show');\n            window.localStorage.setItem('settings_expanded', false);\n        });\n\n        themeSettingsExpandEl.addEventListener('click', function () {\n            themeSettingsExpandEl.classList.remove('show');\n            window.localStorage.setItem('settings_expanded', true);\n            setTimeout(function() {\n                themeSettingsCollapse.show();\n            }, 300);\n        });\n    }\n\n    // options\n    const breakpoints = {\n        sm: 540,\n        md: 720,\n        lg: 960,\n        xl: 1140\n    };\n\n    var sidebar = document.getElementById('sidebarMenu')\n    if(sidebar && d.body.clientWidth < breakpoints.lg) {\n        sidebar.addEventListener('shown.bs.collapse', function () {\n            document.querySelector('body').style.position = 'fixed';\n        });\n        sidebar.addEventListener('hidden.bs.collapse', function () {\n            document.querySelector('body').style.position = 'relative';\n        });\n    }\n\n    var iconNotifications = d.querySelector('.notification-bell');\n    if (iconNotifications) {\n        iconNotifications.addEventListener('shown.bs.dropdown', function () {\n            iconNotifications.classList.remove('unread');\n        });\n    }\n\n    [].slice.call(d.querySelectorAll('[data-background]')).map(function(el) {\n        el.style.background = 'url(' + el.getAttribute('data-background') + ')';\n    });\n\n    [].slice.call(d.querySelectorAll('[data-background-lg]')).map(function(el) {\n        if(document.body.clientWidth > breakpoints.lg) {\n            el.style.background = 'url(' + el.getAttribute('data-background-lg') + ')';\n        }\n    });\n\n    [].slice.call(d.querySelectorAll('[data-background-color]')).map(function(el) {\n        el.style.background = 'url(' + el.getAttribute('data-background-color') + ')';\n    });\n\n    [].slice.call(d.querySelectorAll('[data-color]')).map(function(el) {\n        el.style.color = 'url(' + el.getAttribute('data-color') + ')';\n    });\n\n    //Tooltips\n    var tooltipTriggerList = [].slice.call(document.querySelectorAll('[data-bs-toggle=\"tooltip\"]'))\n    var tooltipList = tooltipTriggerList.map(function (tooltipTriggerEl) {\n    return new bootstrap.Tooltip(tooltipTriggerEl)\n    })\n\n\n    // Popovers\n    var popoverTriggerList = [].slice.call(document.querySelectorAll('[data-bs-toggle=\"popover\"]'))\n    var popoverList = popoverTriggerList.map(function (popoverTriggerEl) {\n      return new bootstrap.Popover(popoverTriggerEl)\n    })\n    \n\n    // Datepicker\n    var datepickers = [].slice.call(d.querySelectorAll('[data-datepicker]'))\n    var datepickersList = datepickers.map(function (el) {\n        return new Datepicker(el, {\n            buttonClass: 'btn'\n          });\n    })\n\n    if(d.querySelector('.input-slider-container')) {\n        [].slice.call(d.querySelectorAll('.input-slider-container')).map(function(el) {\n            var slider = el.querySelector(':scope .input-slider');\n            var sliderId = slider.getAttribute('id');\n            var minValue = slider.getAttribute('data-range-value-min');\n            var maxValue = slider.getAttribute('data-range-value-max');\n\n            var sliderValue = el.querySelector(':scope .range-slider-value');\n            var sliderValueId = sliderValue.getAttribute('id');\n            var startValue = sliderValue.getAttribute('data-range-value-low');\n\n            var c = d.getElementById(sliderId),\n                id = d.getElementById(sliderValueId);\n\n            noUiSlider.create(c, {\n                start: [parseInt(startValue)],\n                connect: [true, false],\n                //step: 1000,\n                range: {\n                    'min': [parseInt(minValue)],\n                    'max': [parseInt(maxValue)]\n                }\n            });\n        });\n    }\n\n    if (d.getElementById('input-slider-range')) {\n        var c = d.getElementById(\"input-slider-range\"),\n            low = d.getElementById(\"input-slider-range-value-low\"),\n            e = d.getElementById(\"input-slider-range-value-high\"),\n            f = [d, e];\n\n        noUiSlider.create(c, {\n            start: [parseInt(low.getAttribute('data-range-value-low')), parseInt(e.getAttribute('data-range-value-high'))],\n            connect: !0,\n            tooltips: true,\n            range: {\n                min: parseInt(c.getAttribute('data-range-value-min')),\n                max: parseInt(c.getAttribute('data-range-value-max'))\n            }\n        }), c.noUiSlider.on(\"update\", function (a, b) {\n            f[b].textContent = a[b]\n        });\n    }\n\n    //Chartist\n\n    if(d.querySelector('.ct-chart-sales-value')) {\n        //Chart 5\n          new Chartist.Line('.ct-chart-sales-value', {\n            labels: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun'],\n            series: [\n                [0, 10, 30, 40, 80, 60, 100]\n            ]\n          }, {\n            low: 0,\n            showArea: true,\n            fullWidth: true,\n            plugins: [\n              Chartist.plugins.tooltip()\n            ],\n            axisX: {\n                // On the x-axis start means top and end means bottom\n                position: 'end',\n                showGrid: true\n            },\n            axisY: {\n                // On the y-axis start means left and end means right\n                showGrid: false,\n                showLabel: false,\n                labelInterpolationFnc: function(value) {\n                    return '$' + (value / 1) + 'k';\n                }\n            }\n        });\n    }\n\n    if(d.querySelector('.ct-chart-ranking')) {\n        var chart = new Chartist.Bar('.ct-chart-ranking', {\n            labels: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'],\n            series: [\n              [1, 5, 2, 5, 4, 3],\n              [2, 3, 4, 8, 1, 2],\n            ]\n          }, {\n            low: 0,\n            showArea: true,\n            plugins: [\n              Chartist.plugins.tooltip()\n            ],\n            axisX: {\n                // On the x-axis start means top and end means bottom\n                position: 'end'\n            },\n            axisY: {\n                // On the y-axis start means left and end means right\n                showGrid: false,\n                showLabel: false,\n                offset: 0\n            }\n            });\n          \n          chart.on('draw', function(data) {\n            if(data.type === 'line' || data.type === 'area') {\n              data.element.animate({\n                d: {\n                  begin: 2000 * data.index,\n                  dur: 2000,\n                  from: data.path.clone().scale(1, 0).translate(0, data.chartRect.height()).stringify(),\n                  to: data.path.clone().stringify(),\n                  easing: Chartist.Svg.Easing.easeOutQuint\n                }\n              });\n            }\n        });\n    }\n\n    if(d.querySelector('.ct-chart-traffic-share')) {\n        var data = {\n            series: [70, 20, 10]\n          };\n          \n          var sum = function(a, b) { return a + b };\n          \n          new Chartist.Pie('.ct-chart-traffic-share', data, {\n            labelInterpolationFnc: function(value) {\n              return Math.round(value / data.series.reduce(sum) * 100) + '%';\n            },            \n            low: 0,\n            high: 8,\n            donut: true,\n            donutWidth: 20,\n            donutSolid: true,\n            fullWidth: false,\n            showLabel: false,\n            plugins: [\n              Chartist.plugins.tooltip()\n            ],\n        });         \n    }\n\n    if (d.getElementById('loadOnClick')) {\n        d.getElementById('loadOnClick').addEventListener('click', function () {\n            var button = this;\n            var loadContent = d.getElementById('extraContent');\n            var allLoaded = d.getElementById('allLoadedText');\n    \n            button.classList.add('btn-loading');\n            button.setAttribute('disabled', 'true');\n    \n            setTimeout(function () {\n                loadContent.style.display = 'block';\n                button.style.display = 'none';\n                allLoaded.style.display = 'block';\n            }, 1500);\n        });\n    }\n\n    var scroll = new SmoothScroll('a[href*=\"#\"]', {\n        speed: 500,\n        speedAsDuration: true\n    });\n\n    if(d.querySelector('.current-year')){\n        d.querySelector('.current-year').textContent = new Date().getFullYear();\n    }\n\n    // Glide JS\n\n    if (d.querySelector('.glide')) {\n        new Glide('.glide', {\n            type: 'carousel',\n            startAt: 0,\n            perView: 3\n          }).mount();\n    }\n\n    if (d.querySelector('.glide-testimonials')) {\n        new Glide('.glide-testimonials', {\n            type: 'carousel',\n            startAt: 0,\n            perView: 1,\n            autoplay: 2000\n          }).mount();\n    }\n\n    if (d.querySelector('.glide-clients')) {\n        new Glide('.glide-clients', {\n            type: 'carousel',\n            startAt: 0,\n            perView: 5,\n            autoplay: 2000\n          }).mount();\n    }\n\n    if (d.querySelector('.glide-news-widget')) {\n        new Glide('.glide-news-widget', {\n            type: 'carousel',\n            startAt: 0,\n            perView: 1,\n            autoplay: 2000\n          }).mount();\n    }\n\n    if (d.querySelector('.glide-autoplay')) {\n        new Glide('.glide-autoplay', {\n            type: 'carousel',\n            startAt: 0,\n            perView: 3,\n            autoplay: 2000\n          }).mount();\n    }\n\n    // Pricing countup\n    var billingSwitchEl = d.getElementById('billingSwitch');\n    if(billingSwitchEl) {\n        const countUpStandard = new countUp.CountUp('priceStandard', 99, { startVal: 199 });\n        const countUpPremium = new countUp.CountUp('pricePremium', 199, { startVal: 299 });\n        \n        billingSwitchEl.addEventListener('change', function() {\n            if(billingSwitch.checked) {\n                countUpStandard.start();\n                countUpPremium.start();\n            } else {\n                countUpStandard.reset();\n                countUpPremium.reset();\n            }\n        });\n    }\n\n});"
  },
  {
    "path": "static/assets/package.json",
    "content": "{\n    \"name\": \"@themesberg/volt-bootstrap-5-dashboard\",\n    \"version\": \"1.4.1\",\n    \"description\": \"Volt - Bootstrap 5 Dashboard\",\n    \"main\": \"gulpfile.js\",\n    \"author\": \"Themesberg\",\n    \"keywords\": [\n        \"bootstrap\",\n        \"bootstrap5\",\n        \"bootstrap-5\",\n        \"bootstrap 5\",\n        \"bootstrap 5 dashboard\",\n        \"bootstrap 5 admin dashboard\",\n        \"dashboard vanilla js\",\n        \"admin dashboard vanilla js\",\n        \"bootstrap template vanilla js\",\n        \"bootstrap 5 chart\",\n        \"bootstrap 5 datepicker\",\n        \"bootstrap 5 beta 1\"\n    ],\n    \"homepage\": \"https://themesberg.com/product/admin-dashboard/volt-bootstrap-5-dashboard\",\n    \"bugs\": {\n        \"url\": \"https://github.com/themesberg/volt-bootstrap-5-dashboard/issues\"\n    },\n    \"repository\": {\n        \"type\": \"git\",\n        \"url\": \"https://github.com/themesberg/volt-bootstrap-5-dashboard\"\n    },\n    \"license\": \"https://github.com/themesberg/volt-bootstrap-5-dashboard/blob/master/LICENSE.md\",\n    \"dependencies\": {\n        \"@popperjs/core\": \"^2.9.2\",\n        \"bootstrap\": \"^5.0.2\",\n        \"chartist\": \"^0.11.4\",\n        \"chartist-plugin-tooltips\": \"^0.0.17\",\n        \"notyf\": \"^3.10.0\",\n        \"nouislider\": \"^15.2.0\",\n        \"onscreen\": \"^1.4.0\",\n        \"simplebar\": \"^5.3.4\",\n        \"smooth-scroll\": \"^16.1.3\",\n        \"sweetalert2\": \"^11.0.18\",\n        \"vanillajs-datepicker\": \"^1.1.4\",\n        \"waypoints\": \"^4.0.1\"\n    },\n    \"devDependencies\": {\n        \"browser-sync\": \"^2.27.4\",\n        \"del\": \"^6.0.0\",\n        \"gulp\": \"^4.0.2\",\n        \"gulp-autoprefixer\": \"^8.0.0\",\n        \"gulp-clean-css\": \"^4.3.0\",\n        \"gulp-cssbeautify\": \"^3.0.0\",\n        \"node-sass\": \"^6.0.1\",\n        \"gulp-file-include\": \"^2.3.0\",\n        \"gulp-header\": \"^2.0.9\",\n        \"gulp-htmlmin\": \"^5.0.1\",\n        \"gulp-npm-dist\": \"^1.0.3\",\n        \"gulp-plumber\": \"^1.2.1\",\n        \"gulp-rename\": \"^2.0.0\",\n        \"gulp-sass\": \"^5.0.0\",\n        \"gulp-sourcemaps\": \"^3.0.0\",\n        \"gulp-uglify\": \"^3.0.2\",\n        \"gulp-wait\": \"^0.0.2\",\n        \"merge-stream\": \"^2.0.0\"\n    }\n}\n"
  },
  {
    "path": "static/assets/scss/custom/_variables.scss",
    "content": "// $primary: blue;\n"
  },
  {
    "path": "static/assets/scss/volt/_components.scss",
    "content": "@import \"components/body\";\n@import \"components/accordions\";\n@import \"components/animations\";\n@import \"components/alerts\";\n@import \"components/avatars\";\n@import \"components/badge\";\n@import \"components/buttons\";\n@import \"components/breadcrumb\";\n@import \"components/card\";\n@import \"components/carousel\";\n@import \"components/close\";\n@import \"components/custom-forms\";\n@import \"components/charts\";\n@import \"components/dropdown\";\n@import \"components/icons\";\n@import \"components/images\";\n@import \"components/list-group\";\n@import \"components/modal\";\n@import \"components/nav\";\n@import \"components/pagination\";\n@import \"components/popover\";\n@import \"components/progress\";\n@import \"components/shapes\";\n@import \"components/datepicker\";\n@import \"components/steps\";\n@import \"components/tables\";\n@import \"components/type\";\n@import \"components/timelines\";\n@import \"components/tooltip\";\n@import \"components/scrollbar\";\n"
  },
  {
    "path": "static/assets/scss/volt/_forms.scss",
    "content": "@import \"forms/form-control\";\n@import \"forms/form-check\";\n@import \"forms/input-group\";\n@import \"forms/form-select\";"
  },
  {
    "path": "static/assets/scss/volt/_functions.scss",
    "content": "// Retrieve color Sass maps\n\n@function section-color($key: \"primary\") {\n\t@return map-get($section-colors, $key);\n}\n\n// Lines colors\n\n@function shapes-primary-color($key: \"step-1-gradient-bg\") {\n\t@return map-get($shapes-primary-colors, $key);\n}\n\n@function shapes-default-color($key: \"step-1-gradient-bg\") {\n\t@return map-get($shapes-default-colors, $key);\n}\n\n@function lines-light-color($key: \"step-1-gradient-bg\") {\n\t@return map-get($shapes-light-colors, $key);\n}\n\n@function shapes-dark-color($key: \"step-1-gradient-bg\") {\n\t@return map-get($shapes-dark-colors, $key);\n}"
  },
  {
    "path": "static/assets/scss/volt/_layout.scss",
    "content": "@import \"layout/navbar\";\n@import \"layout/section\";\n@import \"layout/footer\";\n@import \"layout/sidebar\";\n@import \"layout/sidenav\";\n"
  },
  {
    "path": "static/assets/scss/volt/_mixins.scss",
    "content": "@import \"mixins/animations\"; \n@import \"mixins/background-variant\";\n@import \"mixins/icon\"; \n@import \"mixins/modals\";\n@import \"mixins/popover\";\n@import \"mixins/transform\"; \n@import \"mixins/utilities\";\n"
  },
  {
    "path": "static/assets/scss/volt/_utilities.scss",
    "content": "// check docs https://v5.getbootstrap.com/docs/5.0/utilities/api/\n\n$utilities: map-merge(\n  $utilities,\n  (\n    \"blur\": (\n      property: backdrop-filter,\n      class: blur,\n      values: (\n        0: blur(0),\n        1: blur(1px),\n        2: blur(2px),\n        3: blur(3px),\n        4: blur(4px),\n        5: blur(5px),\n        6: blur(6px),\n        7: blur(7px),\n        8: blur(8px),\n        9: blur(91px),\n        10: blur(10px),\n        11: blur(11px),\n        12: blur(12px),\n        13: blur(13px),\n        14: blur(14px),\n      ),\n    ),\n    \"opacity\": (\n      property: opacity,\n      class: o,\n      values: (\n        0: 0,\n        25: 0.25,\n        50: 0.5,\n        75: 0.75,\n        100: 1,\n      ),\n    ),\n    \"z-index\": (\n      property: z-index,\n      class: z,\n      values: (\n        0: 0,\n        1: 1,\n        2: 2,\n        3: 3,\n        999: 999,\n      ),\n    ),\n    \"viewport-height\": (\n      property: height,\n      class: vh,\n      responsive: true,\n      values: (\n        100: 100vh,\n      ),\n    ),\n    \"font-weight\": (\n      property: font-weight,\n      class: fw,\n      values: (\n        light: $font-weight-light,\n        lighter: $font-weight-lighter,\n        normal: $font-weight-normal,\n        bold: $font-weight-bold,\n        bolder: $font-weight-bolder,\n        extrabold: $font-weight-extrabold,\n        black: $font-weight-black,\n      ),\n    ),\n    \"max-width\": (\n      property: max-width,\n      class: fmxw,\n      values: (\n        100: 100px,\n        200: 200px,\n        300: 300px,\n        400: 400px,\n        500: 500px,\n        999: 999px,\n      ),\n    ),\n    \"min-height\": (\n      property: min-height,\n      class: fmxh,\n      values: (\n        100: 100px,\n        200: 200px,\n        300: 300px,\n        400: 400px,\n        500: 500px,\n        999: 999px,\n      ),\n    ),\n  )\n);\n"
  },
  {
    "path": "static/assets/scss/volt/_variables.scss",
    "content": "// Variables\n//\n// Variables should follow the `$component-state-property-size` formula for\n// consistent naming. Ex: $nav-link-disabled-color and $modal-content-box-shadow-xs.\n\n// Color system\n\n// Shades of grey\n$white   : #ffffff !default;\n$gray-50:  #F9FAFB !default;\n$gray-100: #F2F4F6 !default;\n$gray-200: #E5E7EB !default;\n$gray-300: #D1D5DB !default;\n$gray-400: #9CA3AF !default;\n$gray-500: #6B7280 !default;\n$gray-600: #4B5563 !default;\n$gray-700: #374151 !default;\n$gray-800: #1F2937 !default;\n$gray-900: #111827 !default;\n$dark    : $gray-800 !default;\n$black   : $gray-900 !default;\n\n// fusv-disable\n$grays: (\"100\": $gray-100,\n    \"200\": $gray-200,\n    \"300\": $gray-300,\n    \"400\": $gray-400,\n    \"500\": $gray-500,\n    \"600\": $gray-600,\n    \"700\": $gray-700,\n    \"800\": $gray-800,\n    \"900\": $gray-900) !default;\n// fusv-enable\n\n// Generic colors\n$blue       : #2361ce !default;\n$indigo     : #4F46E5 !default;\n$purple     : #7C3AED !default;\n$pink       : #EF4683 !default;\n$red        : #E11D48 !default;\n$orange     : #FBA918 !default;\n$brown      : #b9a084 !default;\n$yellow     : #f3c78e !default;\n$yellow-100 : #ffeed6 !default;\n$yellow-200 : #f5dbb8 !default;\n$green      : #10B981 !default;\n$teal       : #1E90FF !default;\n$cyan       : #63b1bd !default;\n$soft-indigo: #f5e8ff !default;\n$soft-green : #2CA58D !default;\n\n// scss-docs-start colors-map\n$colors: (\"blue\": $blue,\n    \"indigo\": $indigo,\n    \"purple\": $purple,\n    \"pink\": $pink,\n    \"red\": $red,\n    \"orange\": $orange,\n    \"yellow\": $yellow,\n    \"green\": $green,\n    \"teal\": $teal,\n    \"cyan\": $cyan,\n    \"white\": $white,\n    \"gray\": $gray-600,\n    \"gray-dark\": $gray-800) !default;\n// scss-docs-end colors-map\n\n// Color scheme\n$primary  : #1F2937 !default;\n$secondary: #f0bc74 !default;\n$tertiary : #31316A !default;\n\n// Series names and colors. This can be extended or customized as desired. Just add more series and colors.\n$ct-series-names: (a, b, c, d, e, f, g) !default !default;\n$ct-series-colors: (#262B40,\n    #F8BD7A,\n    #2CA58D,\n    #31316A,\n    #C96480,\n    #ffffff,\n    #F8BD7A,\n\n) !default;\n\n\n$success: $green !default;\n$info   : $blue !default;\n$warning: $yellow !default;\n$danger : $red !default;\n$gray   : $gray-900 !default;\n$light  : $gray-400 !default;\n$lighten: $gray-300 !default;\n$soft   : $gray-200 !default;\n$dark   : $dark !default;\n\n// Brands colors\n$facebook : #3b5999 !default;\n$twitter  : #1da1f2 !default;\n$google   : #DB4337 !default;\n$instagram: #e4405f !default;\n$pinterest: #bd081c !default;\n$youtube  : #cd201f !default;\n$slack    : #3aaf85 !default;\n$dribbble : #ea4c89 !default;\n$github   : #222222 !default;\n$dropbox  : #1E90FF !default;\n$twitch   : #4B367C !default;\n$paypal   : #ecb32c !default;\n$behance  : #0057ff !default;\n$reddit   : #E84422 !default;\n\n// Brand colors\n$brand-colors: (\"facebook\": $facebook,\n    \"twitter\": $twitter,\n    \"google\": $google,\n    \"instagram\": $instagram,\n    \"pinterest\": $pinterest,\n    \"youtube\": $youtube,\n    \"slack\": $slack,\n    \"dribbble\": $dribbble,\n    \"dropbox\": $dropbox,\n    \"twitch\": $twitch,\n    \"paypal\": $paypal,\n    \"behance\": $behance,\n    \"reddit\" : $reddit,\n    \"github\": $github) !default;\n\n// Theme colors\n$theme-colors: (\n    \"primary\": $primary,\n    \"secondary\": $secondary,\n    \"tertiary\": $tertiary,\n    \"success\": $success,\n    \"info\": $info,\n    \"warning\": $warning,\n    \"danger\": $danger,\n    \"white\": $white,\n    \"indigo\": $indigo,\n    \"purple\": $purple,\n    \"yellow-100\": $yellow-100,\n    \"yellow-200\": $yellow-200,\n    \"gray-50\": $gray-50,\n    \"gray-100\": $gray-100,\n    \"gray-200\": $gray-200,\n    \"gray-300\": $gray-300,\n    \"gray-400\": $gray-400,\n    \"gray-500\": $gray-500,\n    \"gray-600\": $gray-600,\n    \"gray-700\": $gray-700,\n    \"gray-800\": $gray-800,\n    \"gray-900\": $gray-900\n    ) !default;\n\n    // Navbar colors\n    $navbar-colors: (\"primary\": $primary,\n) !default;\n\n// Set a specific jump point for requesting color jumps\n$theme-color-interval: 8% !default;\n\n// The contrast ratio to reach against white, to determine if color changes from \"light\" to \"dark\". Acceptable values for WCAG 2.0 are 3, 4.5 and 7.\n// See https://www.w3.org/TR/WCAG20/#visual-audio-contrast-contrast\n$min-contrast-ratio: 3 !default;\n\n// Customize the light and dark text colors for use in our color contrast function.\n$color-contrast-dark : $dark !default;\n$color-contrast-light: $white !default;\n\n// fusv-disable\n$blue-100: tint-color($blue, 8) !default;\n$blue-200: tint-color($blue, 6) !default;\n$blue-300: tint-color($blue, 4) !default;\n$blue-400: tint-color($blue, 2) !default;\n$blue-500: $blue !default;\n$blue-600: shade-color($blue, 2) !default;\n$blue-700: shade-color($blue, 4) !default;\n$blue-800: shade-color($blue, 6) !default;\n$blue-900: shade-color($blue, 8) !default;\n\n$indigo-100: tint-color($indigo, 8) !default;\n$indigo-200: tint-color($indigo, 6) !default;\n$indigo-300: tint-color($indigo, 4) !default;\n$indigo-400: tint-color($indigo, 2) !default;\n$indigo-500: $indigo !default;\n$indigo-600: shade-color($indigo, 2) !default;\n$indigo-700: shade-color($indigo, 4) !default;\n$indigo-800: shade-color($indigo, 6) !default;\n$indigo-900: shade-color($indigo, 8) !default;\n\n$purple-100: tint-color($purple, 8) !default;\n$purple-200: tint-color($purple, 6) !default;\n$purple-300: tint-color($purple, 4) !default;\n$purple-400: tint-color($purple, 2) !default;\n$purple-500: $purple !default;\n$purple-600: shade-color($purple, 2) !default;\n$purple-700: shade-color($purple, 4) !default;\n$purple-800: shade-color($purple, 6) !default;\n$purple-900: shade-color($purple, 8) !default;\n\n$pink-100: tint-color($pink, 8) !default;\n$pink-200: tint-color($pink, 6) !default;\n$pink-300: tint-color($pink, 4) !default;\n$pink-400: tint-color($pink, 2) !default;\n$pink-500: $pink !default;\n$pink-600: shade-color($pink, 2) !default;\n$pink-700: shade-color($pink, 4) !default;\n$pink-800: shade-color($pink, 6) !default;\n$pink-900: shade-color($pink, 8) !default;\n\n$red-100: tint-color($red, 8) !default;\n$red-200: tint-color($red, 6) !default;\n$red-300: tint-color($red, 4) !default;\n$red-400: tint-color($red, 2) !default;\n$red-500: $red !default;\n$red-600: shade-color($red, 2) !default;\n$red-700: shade-color($red, 4) !default;\n$red-800: shade-color($red, 6) !default;\n$red-900: shade-color($red, 8) !default;\n\n$orange-100: tint-color($orange, 8) !default;\n$orange-200: tint-color($orange, 6) !default;\n$orange-300: tint-color($orange, 4) !default;\n$orange-400: tint-color($orange, 2) !default;\n$orange-500: $orange !default;\n$orange-600: shade-color($orange, 2) !default;\n$orange-700: shade-color($orange, 4) !default;\n$orange-800: shade-color($orange, 6) !default;\n$orange-900: shade-color($orange, 8) !default;\n\n$yellow-100: tint-color($yellow, 8) !default;\n$yellow-200: tint-color($yellow, 6) !default;\n$yellow-300: tint-color($yellow, 4) !default;\n$yellow-400: tint-color($yellow, 2) !default;\n$yellow-500: $yellow !default;\n$yellow-600: shade-color($yellow, 2) !default;\n$yellow-700: shade-color($yellow, 4) !default;\n$yellow-800: shade-color($yellow, 6) !default;\n$yellow-900: shade-color($yellow, 8) !default;\n\n$green-100: tint-color($green, 8) !default;\n$green-200: tint-color($green, 6) !default;\n$green-300: tint-color($green, 4) !default;\n$green-400: tint-color($green, 2) !default;\n$green-500: $green !default;\n$green-600: shade-color($green, 2) !default;\n$green-700: shade-color($green, 4) !default;\n$green-800: shade-color($green, 6) !default;\n$green-900: shade-color($green, 8) !default;\n\n$teal-100: tint-color($teal, 8) !default;\n$teal-200: tint-color($teal, 6) !default;\n$teal-300: tint-color($teal, 4) !default;\n$teal-400: tint-color($teal, 2) !default;\n$teal-500: $teal !default;\n$teal-600: shade-color($teal, 2) !default;\n$teal-700: shade-color($teal, 4) !default;\n$teal-800: shade-color($teal, 6) !default;\n$teal-900: shade-color($teal, 8) !default;\n\n$cyan-100: tint-color($cyan, 8) !default;\n$cyan-200: tint-color($cyan, 6) !default;\n$cyan-300: tint-color($cyan, 4) !default;\n$cyan-400: tint-color($cyan, 2) !default;\n$cyan-500: $cyan !default;\n$cyan-600: shade-color($cyan, 2) !default;\n$cyan-700: shade-color($cyan, 4) !default;\n$cyan-800: shade-color($cyan, 6) !default;\n$cyan-900: shade-color($cyan, 8) !default;\n// fusv-enable\n\n// Characters which are escaped by the escape-svg function\n$escaped-characters: ((\"<\", \"%3c\"),\n    (\">\", \"%3e\"),\n    (\"#\", \"%23\"),\n    (\"(\", \"%28\"),\n    (\")\", \"%29\"),\n) !default;\n\n// Options\n//\n// Quickly modify global styling by enabling or disabling optional features.\n\n$enable-caret               : true !default;\n$enable-rounded             : true !default;\n$enable-shadows             : true !default;\n$enable-gradients           : false !default;\n$enable-transitions         : true !default;\n$enable-reduced-motion      : true !default;\n$enable-grid-classes        : true !default;\n$enable-button-pointers     : true !default;\n$enable-rfs                 : true !default;\n$enable-validation-icons    : true !default;\n$enable-negative-margins    : true !default;\n$enable-deprecation-messages: true !default;\n$enable-important-utilities : true !default;\n\n// Gradient\n//\n// The gradient which is added to components if `$enable-gradients` is `true`\n// This gradient is also added to elements with `.bg-gradient`\n$gradient: linear-gradient(180deg, rgba($white, .15), rgba($white, 0)) !default;\n\n// Spacing\n//\n// Control the default styling of most Bootstrap elements by modifying these\n// variables. Mostly focused on spacing.\n// You can add more entries to the $spacers map, should you need more variation.\n\n$spacer: 1rem !default;\n$spacers: (0: 0,\n    1: $spacer / 4,\n    2: $spacer / 2,\n    3: $spacer,\n    4: $spacer * 1.5,\n    5: $spacer * 3,\n    6: ($spacer * 5),\n    7: ($spacer * 8),\n    8: ($spacer * 10),\n    9: ($spacer * 11),\n    10: ($spacer * 14),\n    11: ($spacer * 16),\n    12: ($spacer * 20),\n    'sm': ($spacer * 1),\n    'md': ($spacer * 2),\n    'lg': ($spacer * 4),\n    'xl': ($spacer * 8)) !default;\n\n$negative-spacers: if($enable-negative-margins, negativify-map($spacers), null) !default;\n\n// Body\n//\n// Settings for the `<body>` element.\n\n$body-bg        : $gray-100 !default;\n$body-color     : $gray-700 !default;\n$body-text-align: null !default;\n\n\n// Links\n//\n// Style anchor elements.\n\n$link-color                             : $primary !default;\n$link-decoration                        : none !default;\n$link-hover-color                       : darken($link-color, 50%) !default;\n$link-hover-decoration                  : none !default;\n// Darken percentage for links with `.text-*` class (e.g. `.text-success`)\n$emphasized-link-hover-darken-percentage: 10% !default;\n\n$stretched-link-pseudo-element: after !default;\n$stretched-link-z-index       : 1 !default;\n\n// Paragraphs\n//\n// Style p element.\n\n$paragraph-margin-bottom: 1rem !default;\n\n\n// Grid breakpoints\n//\n// Define the minimum dimensions at which your layout will change,\n// adapting to different screen sizes, for use in media queries.\n\n// scss-docs-start grid-breakpoints\n$grid-breakpoints: (xs: 0,\n    sm: 576px,\n    md: 768px,\n    lg: 992px,\n    xl: 1200px,\n    xxl: 1400px) !default;\n// scss-docs-end grid-breakpoints\n\n// Grid containers\n//\n// Define the maximum width of `.container` for different screen sizes.\n\n// scss-docs-start container-max-widths\n$container-max-widths: (sm: 540px,\n    md: 720px,\n    lg: 960px,\n    xl: 1140px) !default;\n// scss-docs-end container-max-widths\n\n// Grid columns\n//\n// Set the number of columns and specify the width of the gutters.\n\n$grid-columns     : 12 !default;\n$grid-gutter-width: 1.5rem !default;\n$grid-row-columns : 6 !default;\n\n$gutters: $spacers !default;\n\n// Container padding\n\n$container-padding-x: 1rem !default;\n\n\n// Components\n//\n// Define common padding and border radius sizes and more.\n\n$border-width      : .0625rem !default;\n$border-width-md   : 0.125rem !default;\n$border-width-lg   : 0.25rem !default;\n$border-width-xl   : 0.375rem !default;\n$border-color-white: $white !default;\n$border-color      : $gray-200 !default;\n\n\n$border-radius     : .5rem !default;\n$border-radius-sm  : .35rem !default;\n$border-radius-lg  : 1rem !default;\n$border-radius-xl  : 3rem !default;\n$border-radius-pill: 50rem !default;\n$circle-radius     : 50% !default;\n\n$component-active-color       : $white !default;\n$component-active-bg          : $primary !default;\n$component-active-border-color: $primary !default;\n\n$component-hover-color       : $gray-300 !default;\n$component-hover-bg          : $gray-300 !default;\n$component-hover-border-color: $gray-300 !default;\n\n$rounded-pill: 50rem !default;\n\n$box-shadow      : 0 1px 3px 0 rgba(0, 0, 0, 0.1),0 1px 2px 0 rgba(0, 0, 0, 0.06) !default;\n$box-shadow-sm   : 0 2px 5px rgba(140, 152, 164, .2) !default;\n$box-shadow-lg   : 0 1rem 3rem rgba($black, .175) !default;\n$box-shadow-inset: inset 0 1px 2px rgba($black, .0125) !default;\n\n$component-active-color: $white !default;\n$component-active-bg   : $primary !default;\n\n$caret-width         : .3em !default;\n$caret-vertical-align: $caret-width * .85 !default;\n$caret-spacing       : $caret-width * .85 !default;\n\n$transition-base     : all .2s ease !default;\n$transition-transform: transform .2s ease !default;\n$transition-fade     : opacity .15s linear !default;\n$transition-collapse : height .35s ease !default;\n$transition-tabs     : all 0.2s !default;\n\n// scss-docs-start embed-responsive-aspect-ratios\n$embed-responsive-aspect-ratios: (\"21by9\": (x: 21,\n        y: 9),\n    \"16by9\": (x: 16,\n        y: 9),\n    \"4by3\": (x: 4,\n        y: 3),\n    \"1by1\": (x: 1,\n        y: 1)) !default;\n// scss-docs-end embed-responsive-aspect-ratios\n\n// Typography\n//\n// Font, line-height, and color for body text, headings, and more.\n\n// font awesome\n$fontawesome-webfonts-path: '../vendor/font-awesome/webfonts' !default;\n$font-awesome-5           : 'Font Awesome 5 Free' !default;\n\n// stylelint-disable value-keyword-case\n$font-family-sans-serif: 'Inter', sans-serif !default;\n// stylelint-enable value-keyword-case\n$font-family-base: var(--bs-font-sans-serif) !default;\n$font-family-code: var(--bs-font-monospace) !default;\n\n// $font-size-root effects the value of `rem`, which is used for as well font sizes, paddings and margins\n// $font-size-base effects the font size of the body text\n$font-size-root: null !default;\n$font-size-base: 1rem !default; // Assumes the browser default, typically `16px`\n$font-size-xs  : ($font-size-base * .75) !default;\n$font-size-sm  : ($font-size-base * .875) !default;\n$font-size-md  : ($font-size-base * 1) !default;\n$font-size-lg  : ($font-size-base * 1.25) !default;\n$font-size-xl  : ($font-size-base * 1.5) !default;\n$font-size-xxl : ($font-size-base * 2) !default;\n\n$font-weight-lighter:         lighter !default;\n$font-weight-light:           300 !default;\n$font-weight-normal:          400 !default;\n$font-weight-bold:            500 !default;\n$font-weight-bolder:          600 !default;\n$font-weight-extrabold:       700 !default;\n$font-weight-black:           800 !default;\n\n$font-weight-base: $font-weight-normal !default;\n\n$line-height-base: 1.5 !default;\n$line-height-sm  : 1.25 !default;\n$line-height-lg  : 2 !default;\n\n$h1-font-size: $font-size-base * 2.5 !default;\n$h2-font-size: $font-size-base * 2 !default;\n$h3-font-size: $font-size-base * 1.75 !default;\n$h4-font-size: $font-size-base * 1.5 !default;\n$h5-font-size: $font-size-base * 1.25 !default;\n$h6-font-size: $font-size-base !default;\n\n$headings-margin-bottom: $spacer / 2 !default;\n$headings-font-family  : null !default;\n$headings-font-style   : null !default;\n$headings-font-weight  : $font-weight-bold !default;\n$headings-line-height  : 1.3 !default;\n$headings-color        : $dark !default;\n\n// Display headings\n$display1-size: 5rem !default;\n$display2-size: 3.5rem !default;\n$display3-size: 2.5rem !default;\n$display4-size: 1.875rem !default;\n\n// scss-docs-start display-headings\n$display-font-sizes: (1: 5rem,\n    2: 3.5rem,\n    3: 2.5rem,\n    4: 1.875rem,\n    5: 1.2rem,\n    6: 1rem) !default;\n\n$display-font-weight: $font-weight-bold !default;\n$display-line-height: $headings-line-height !default;\n// scss-docs-end display-headings\n\n$paragraph-font-size  : 1rem !default;\n$paragraph-font-weight: 300 !default;\n$paragraph-line-height: 1.6 !default;\n\n$lead-font-size  : $font-size-base * 1.25 !default;\n$lead-font-weight: 300 !default;\n\n$small-font-size: .875em !default;\n\n$sub-sup-font-size: .75em !default;\n\n$text-muted: #58677d !default;\n\n$initialism-font-size: $small-font-size !default;\n\n$blockquote-margin-y        : $spacer !default;\n$blockquote-font-size       : $font-size-base * 1.25 !default;\n$blockquote-footer-color    : $gray-600 !default;\n$blockquote-footer-font-size: $small-font-size !default;\n\n$hr-margin-y: $spacer !default;\n$hr-color   : inherit !default;\n$hr-height  : $border-width !default;\n$hr-opacity : .25 !default;\n\n$legend-margin-bottom: .5rem !default;\n$legend-font-size    : 1.5rem !default;\n$legend-font-weight  : null !default;\n\n$mark-padding: .2em !default;\n\n$dt-font-weight: $font-weight-bold !default;\n\n$nested-kbd-font-weight: $font-weight-bold !default;\n\n$list-inline-padding: .5rem !default;\n\n$mark-bg: #fcf8e3 !default;\n\n\n// Tables\n//\n// Customizes the `.table` component with basic values, each used across all table variations.\n\n// scss-docs-start table-variables\n$table-cell-padding-y   : .75rem !default;\n$table-cell-padding-x   : .5rem !default;\n$table-cell-padding-y-sm: .25rem !default;\n$table-cell-padding-x-sm: .25rem !default;\n\n$table-cell-vertical-align: top !default;\n\n$table-color: $body-color !default;\n$table-bg   : transparent !default;\n\n$table-striped-color    : $table-color !default;\n$table-striped-bg-factor: .05 !default;\n$table-striped-bg       : rgba($black, $table-striped-bg-factor) !default;\n\n$table-active-color    : $table-color !default;\n$table-active-bg-factor: .1 !default;\n$table-active-bg       : rgba($black, $table-active-bg-factor) !default;\n\n$table-hover-color    : $table-color !default;\n$table-hover-bg-factor: .075 !default;\n$table-hover-bg       : rgba($black, $table-hover-bg-factor) !default;\n\n$table-border-factor: .1 !default;\n$table-border-width : $border-width !default;\n$table-border-color : $border-color !default;\n\n$table-striped-order: odd !default;\n\n$table-group-seperator-color: $light !default;\n\n$table-caption-color: $text-muted !default;\n\n$table-bg-scale: -80% !default;\n\n$table-head-spacer-y      : .75rem !default;\n$table-head-spacer-x      : 1rem !default;\n$table-head-font-size     : .75rem !default;\n$table-head-text-transform: uppercase !default;\n$table-body-font-size     : $font-size-sm !default;\n\n$table-variants: (\"primary\": shift-color($primary, $table-bg-scale),\n    \"secondary\": shift-color($secondary, $table-bg-scale),\n    \"success\": shift-color($success, $table-bg-scale),\n    \"info\": shift-color($info, $table-bg-scale),\n    \"warning\": shift-color($warning, $table-bg-scale),\n    \"danger\": shift-color($danger, $table-bg-scale),\n    \"light\": $light,\n    \"dark\": $dark,\n) !default;\n\n// Accordion\n$accordion-padding-y    : 1rem !default;\n$accordion-padding-x    : 1.25rem !default;\n$accordion-color        : $body-color !default;\n$accordion-bg           : transparent !default;\n$accordion-border-width : $border-width !default;\n$accordion-border-color : $gray-400 !default;\n$accordion-border-radius: $border-radius !default;\n\n$accordion-body-padding-y: $accordion-padding-y !default;\n$accordion-body-padding-x: $accordion-padding-x !default;\n\n$accordion-button-padding-y   : $accordion-padding-y !default;\n$accordion-button-padding-x   : $accordion-padding-x !default;\n$accordion-button-color       : $accordion-color !default;\n$accordion-button-bg          : $accordion-bg !default;\n$accordion-button-active-bg   : $light !default;\n$accordion-button-active-color: shade-color($primary, 10%) !default;\n\n\n$accordion-icon-width       : 1.25rem !default !default;\n$accordion-icon-color       : $accordion-color !default !default;\n$accordion-icon-active-color: $accordion-button-active-color !default !default;\n$accordion-icon-transition  : transform .2s ease-in-out !default !default;\n$accordion-icon-transform   : rotate(180deg) !default !default;\n\n$accordion-button-icon       : url(\"data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='#{$accordion-icon-color}'><path 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'/></svg>\") !default !default;\n$accordion-button-active-icon: url(\"data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='#{$accordion-icon-active-color}'><path 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'/></svg>\") !default !default;\n\n// Buttons + Forms\n//\n// Shared variables that are reassigned to `$input-` and `$btn-` specific variables.\n\n$input-btn-padding-y  : .5rem !default;\n$input-btn-padding-x  :  1rem !default;\n$input-btn-font-family: null !default;\n$input-btn-font-size  : $font-size-sm !default;\n$input-btn-line-height: $line-height-base !default;\n\n$input-btn-focus-width        : .18rem !default;\n$input-btn-focus-color-opacity: .25 !default;\n$input-btn-focus-color        : rgba($component-active-bg, $input-btn-focus-color-opacity) !default;\n$input-btn-focus-box-shadow   : 0 0 0 $input-btn-focus-width $input-btn-focus-color !default;\n\n$input-btn-padding-y-sm: .375rem !default;\n$input-btn-padding-x-sm: .625rem !default;\n$input-btn-font-size-sm: $font-size-sm !default;\n\n$input-btn-padding-y-lg: .5rem !default;\n$input-btn-padding-x-lg: 1rem !default;\n$input-btn-font-size-lg: $font-size-lg !default;\n\n$input-btn-border-width: $border-width !default;\n\n$shadow-input      : $box-shadow !default;\n$shadow-input-focus: .1rem .1rem 0 rgba($gray-200, .5) !default;\n\n\n// Buttons\n//\n// For each of Bootstrap's buttons, define text, background, and border color.\n\n$btn-padding-y  : $input-btn-padding-y !default;\n$btn-padding-x  : $input-btn-padding-x !default;\n$btn-font-family: $input-btn-font-family !default;\n$btn-font-size  : $input-btn-font-size !default;\n$btn-line-height: $input-btn-line-height !default;\n$btn-white-space: null !default; // Set to `nowrap` to prevent text wrapping\n\n$btn-padding-y-sm: $input-btn-padding-y-sm !default;\n$btn-padding-x-sm: $input-btn-padding-x-sm !default;\n$btn-font-size-sm: $input-btn-font-size-sm !default;\n\n$btn-padding-y-lg: $input-btn-padding-y-lg !default;\n$btn-padding-x-lg: $input-btn-padding-x-lg !default;\n$btn-font-size-lg: $input-btn-font-size-lg !default;\n\n$btn-border-width: $input-btn-border-width !default;\n\n$btn-font-weight: $font-weight-bold !default;\n$btn-box-shadow : inset 0 1px 0 rgba($white, .15),\n0 1px 1px rgba($black, .075) !default;\n$btn-focus-width      : $input-btn-focus-width !default;\n$btn-focus-box-shadow : $input-btn-focus-box-shadow !default;\n$btn-disabled-opacity : .65 !default;\n$btn-active-box-shadow: inset 0 3px 5px rgba($black, .125) !default;\n\n$btn-link-color         : $link-color !default;\n$btn-link-hover-color   : $link-hover-color !default;\n$btn-link-disabled-color: $gray-600 !default;\n\n$btn-block-spacing-y: .5rem !default;\n\n// Allows for customizing button radius independently from global border radius\n$btn-border-radius   : $border-radius !default;\n$btn-border-radius-sm: $border-radius !default;\n$btn-border-radius-lg: $border-radius !default;\n\n$btn-transition: color .15s ease-in-out,\nbackground-color .15s ease-in-out,\nborder-color .15s ease-in-out,\nbox-shadow .15s ease-in-out !default;\n\n\n$btn-close-width:            1em !default;\n$btn-close-height:           $btn-close-width !default;\n$btn-close-padding-x:        .25em !default;\n$btn-close-padding-y:        $btn-close-padding-x !default;\n$btn-close-color:            $black !default;\n$btn-close-bg:               url(\"data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='#{$btn-close-color}'><path 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'/></svg>\") !default;\n$btn-close-color-white:      $white !default;\n$btn-close-bg-white:         url(\"data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='#{$btn-close-color-white}'><path 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'/></svg>\") !default;\n$btn-close-focus-shadow:     $input-btn-focus-box-shadow !default;\n$btn-close-opacity:          .5 !default;\n$btn-close-hover-opacity:    .75 !default;\n$btn-close-focus-opacity:    1 !default;\n$btn-close-disabled-opacity: .25 !default;\n$btn-close-white-filter:     invert(1) grayscale(100%) brightness(200%) !default;\n\n// Forms\n\n$form-text-margin-top : .25rem !default;\n$form-text-font-size  : $small-font-size !default;\n$form-text-font-style : null !default;\n$form-text-font-weight: null !default;\n$form-text-color      : $text-muted !default;\n\n$form-label-margin-bottom: .5rem !default;\n$form-label-font-size    : null !default;\n$form-label-font-style   : null !default;\n$form-label-font-weight  : null !default;\n$form-label-color        : null !default;\n\n$input-padding-y  : $input-btn-padding-y !default;\n$input-padding-x  : $input-btn-padding-x !default;\n$inpu-lg-padding-y: 1rem !default;\n$input-font-family: $input-btn-font-family !default;\n$input-font-size  : $input-btn-font-size !default;\n$input-font-weight: $font-weight-base !default;\n$input-line-height: $input-btn-line-height !default;\n\n$input-padding-y-sm: $input-btn-padding-y-sm !default;\n$input-padding-x-sm: $input-btn-padding-x-sm !default;\n$input-font-size-sm: $input-btn-font-size-sm !default;\n\n$input-padding-y-lg: $input-btn-padding-y-lg !default;\n$input-padding-x-lg: $input-btn-padding-x-lg !default;\n$input-font-size-lg: $input-btn-font-size-lg !default;\n\n$input-bg                   : $white !default;\n$input-disabled-bg          : $gray-200 !default;\n$input-disabled-border-color: null !default;\n\n$input-color       : $gray-500 !default;\n$input-border-color: $gray-300 !default;\n$input-border-width: $input-btn-border-width !default;\n$input-box-shadow  : 0 1px 2px 0 rgba(0, 0, 0, 0.07) !default;\n\n$input-border-radius   : $border-radius !default;\n$input-border-radius-sm: $border-radius !default;\n$input-border-radius-lg: $border-radius !default;\n\n$input-focus-bg          : $input-bg !default;\n$input-focus-border-color: lighten($component-active-bg, 25%) !default;\n$input-focus-color       : $input-color !default;\n$input-focus-width       : $input-btn-focus-width !default;\n$input-focus-box-shadow  : $input-btn-focus-box-shadow !default;\n\n$input-placeholder-color: $gray-600 !default;\n$input-plaintext-color  : $body-color !default;\n\n$input-height-border: $input-border-width * 2 !default;\n\n$input-height-inner        : add($input-line-height * 1em, $input-padding-y * 2) !default;\n$input-height-inner-half   : add($input-line-height * .5em, $input-padding-y) !default;\n$input-height-inner-quarter: add($input-line-height * .25em, $input-padding-y / 2) !default;\n\n$input-height   : add($input-line-height * 1em, add($input-padding-y * 2, $input-height-border, false)) !default;\n$input-height-sm: add($input-line-height * 1em, add($input-padding-y-sm * 2, $input-height-border, false)) !default;\n$input-height-lg: add($input-line-height * 1em, add($input-padding-y-lg * 2, $input-height-border, false)) !default;\n$input-height-xl: calc(#{$input-line-height * 1.5em} + #{$input-btn-padding-y-lg * 2} + #{$input-height-border}) !default;\n\n$input-transition: border-color .15s ease-in-out,\nbox-shadow .15s ease-in-out !default;\n\n// Custom forms\n\n$custom-control-gutter        : 1.75rem !default;\n$custom-control-spacer-x      : 1rem !default;\n$custom-control-line-height   : 1 !default;\n$custom-control-indicator-size: 1.25rem !default;\n\n$custom-control-bg          : $gray-400 !default;\n$custom-control-indicator-bg: $white !default;\n$custom-control-border-width: $border-width !default;\n$custom-control-border-color: $input-border-color !default;\n$custom-control-box-shadow  : none !default;\n\n\n\n$custom-control-indicator-hover-color       : $component-hover-color !default;\n$custom-control-indicator-hover-bg          : $primary !default;\n$custom-control-indicator-hover-border-color: $component-hover-border-color !default;\n\n$custom-control-indicator-active-color       : $component-active-color !default;\n$custom-control-indicator-active-border-color: $component-active-border-color !default;\n\n\n$custom-control-indicator-checked-color       : $component-active-color !default;\n$custom-control-indicator-checked-bg          : $primary !default;\n$custom-control-indicator-checked-border-color: $primary !default;\n$custom-control-indicator-checked-disabled-bg : rgba($primary, .7) !default;\n$custom-control-indicator-border-width        : 1px !default;\n\n$custom-control-indicator-disabled-bg: $gray-200 !default;\n$custom-control-label-disabled-color : $gray-800 !default;\n\n$custom-checkbox-bg                     : $gray-400 !default;\n$custom-checkbox-checked-bg             : $primary !default;\n$custom-checkbox-disabled-checked-bg    : rgba($primary, .7) !default;\n$custom-checkbox-indicator-border-radius: $border-radius-xl !default;\n$custom-checkbox-indicator-border-width : $border-width-md !default;\n$custom-checkbox-indicator-icon-checked : $font-awesome-5 !default;\n$square-checkbox-indicator-border-radius: 3px !default;\n\n$custom-toggle-slider-bg          : $gray-400 !default;\n$custom-toggle-slider-indicator-bg: $white !default;\n$custom-toggle-checked-bg         : $primary !default;\n$custom-toggle-disabled-bg        : $gray-200 !default;\n$custom-toggle-disabled-checked-bg: rgba($primary, .7) !default;\n$custom-toggle-border-radius      : .8rem !default;\n\n$custom-switch-indicator-size: calc(#{$custom-control-indicator-size} - #{$custom-control-indicator-border-width * 4}) !default;\n\n$custom-checkbox-disabled-checked-color: $gray-800 !default;\n\n\n$form-check-input-width  : 1.125em !default;\n$form-check-min-height   : $font-size-base * $line-height-base !default;\n$form-check-padding-left : $form-check-input-width+.5em !default;\n$form-check-margin-bottom: .125rem !default;\n$form-check-label-color  : null !default;\n$form-check-label-cursor : null !default;\n$form-check-transition   : background-color .2s ease-in-out,\nbackground-position .2s ease-in-out,\nborder-color .2s ease-in-out,\nbox-shadow .2s ease-in-out !default;\n\n$form-check-input-active-filter: brightness(90%) !default;\n\n$form-check-input-bg              : $body-bg !default;\n$form-check-input-border          : 1px solid $input-border-color !default;\n$form-check-input-border-radius   : .25em !default;\n$form-check-radio-border-radius   : 50% !default;\n$form-check-input-focus-border    : $input-focus-border-color !default;\n$form-check-input-focus-box-shadow: $input-btn-focus-box-shadow !default;\n\n$form-check-input-checked-color       : $component-active-color !default;\n$form-check-input-checked-bg-color    : $component-active-bg !default;\n$form-check-input-checked-border-color: $form-check-input-checked-bg-color !default;\n$form-check-input-checked-bg-image    : url(\"data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'><path fill='none' stroke='#{$form-check-input-checked-color}' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10l3 3l6-6'/></svg>\") !default;\n$form-check-radio-checked-bg-image    : url(\"data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'><circle r='2' fill='#{$form-check-input-checked-color}'/></svg>\") !default;\n\n$form-check-input-indeterminate-color       : $component-active-color !default;\n$form-check-input-indeterminate-bg-color    : $component-active-bg !default;\n$form-check-input-indeterminate-border-color: $form-check-input-indeterminate-bg-color !default;\n$form-check-input-indeterminate-bg-image    : url(\"data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'><path fill='none' stroke='#{$form-check-input-indeterminate-color}' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10h8'/></svg>\") !default;\n\n$form-switch-color        : $gray-600 !default;\n$form-switch-width        : 2.25em !default;\n$form-switch-padding-left : $form-switch-width+.5em !default;\n$form-switch-bg-image     : url(\"data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'><circle r='3' fill='#{$form-switch-color}'/></svg>\") !default;\n$form-switch-border-radius: $form-switch-width !default;\n\n$form-switch-focus-color   : $input-focus-border-color !default;\n$form-switch-focus-bg-image: url(\"data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'><circle r='3' fill='#{$form-switch-focus-color}'/></svg>\") !default;\n\n$form-switch-checked-color      : $component-active-color !default;\n$form-switch-checked-bg-image   : url(\"data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'><circle r='3' fill='#{$form-switch-checked-color}'/></svg>\") !default;\n$form-switch-checked-bg-position: right center !default;\n\n$form-check-inline-margin-right: 1rem !default;\n\n$input-group-addon-color       : $input-color !default;\n$input-group-addon-border-color: $input-border-color !default;\n\n// Input groups\n\n// scss-docs-start input-group-variables\n$input-group-addon-padding-y:           .5rem !default;\n$input-group-addon-padding-x:           .625rem !default;\n$input-group-addon-font-weight:         $input-font-weight !default;\n$input-group-addon-color:               $gray-400 !default;\n$input-group-addon-bg:                  $white !default;\n$input-group-addon-border-color:        $input-border-color !default;\n// scss-docs-end input-group-variables\n\n$form-select-padding-y            : $input-padding-y !default;\n$form-select-padding-x            : $input-padding-x !default;\n$form-select-font-family          : $input-font-family !default;\n$form-select-font-size            : $input-font-size !default;\n$form-select-height               : $input-height !default;\n$form-select-indicator-padding    : 1rem !default; // Extra padding to account for the presence of the background-image based indicator\n$form-select-font-weight          : $input-font-weight !default;\n$form-select-line-height          : $input-line-height !default;\n$form-select-color                : $input-color !default;\n$form-select-disabled-color       : $gray-600 !default;\n$form-select-bg                   : $input-bg !default;\n$form-select-disabled-bg          : $gray-200 !default;\n$form-select-disabled-border-color: $input-disabled-border-color !default;\n$form-select-bg-position          : right $form-select-padding-x center !default;\n$form-select-bg-size              : 16px 12px !default; // In pixels because image dimensions\n$form-select-indicator-color      : $gray-800 !default;\n$form-select-indicator            : url(\"data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'><path fill='none' stroke='#{$form-select-indicator-color}' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/></svg>\") !default;\n\n$form-select-feedback-icon-padding-right: add(1em * .75, (2 * $form-select-padding-y * .75) + $form-select-padding-x + $form-select-indicator-padding) !default;\n$form-select-feedback-icon-position     : center right ($form-select-padding-x + $form-select-indicator-padding) !default;\n$form-select-feedback-icon-size         : $input-height-inner-half $input-height-inner-half !default;\n\n$form-select-border-width : $input-border-width !default;\n$form-select-border-color : $input-border-color !default;\n$form-select-border-radius: $border-radius !default;\n$form-select-box-shadow   : $box-shadow-inset !default;\n\n$form-select-focus-border-color: $input-focus-border-color !default;\n$form-select-focus-width       : $input-focus-width !default;\n$form-select-focus-box-shadow  : 0 0 0 $form-select-focus-width $input-btn-focus-color !default;\n\n$form-select-padding-y-sm: $input-padding-y-sm !default;\n$form-select-padding-x-sm: $input-padding-x-sm !default;\n$form-select-font-size-sm: $input-font-size-sm !default;\n$form-select-height-sm   : $input-height-sm !default;\n\n$form-select-padding-y-lg: $input-padding-y-lg !default;\n$form-select-padding-x-lg: $input-padding-x-lg !default;\n$form-select-font-size-lg: $input-font-size-lg !default;\n$form-select-height-lg   : $input-height-lg !default;\n\n$form-range-track-width        : 100% !default;\n$form-range-track-height       : .5rem !default;\n$form-range-track-cursor       : pointer !default;\n$form-range-track-bg           : $gray-300 !default;\n$form-range-track-border-radius: 1rem !default;\n$form-range-track-box-shadow   : $box-shadow-inset !default;\n\n$form-range-thumb-width        : 1rem !default;\n$form-range-thumb-height       : $form-range-thumb-width !default;\n$form-range-thumb-bg           : $component-active-bg !default;\n$form-range-thumb-border       : 0 !default;\n$form-range-thumb-border-radius: 1rem !default;\n$form-range-thumb-box-shadow   : 0 .1rem .25rem rgba($black, .1) !default;\n$form-range-thumb-focus-box-shadow: 0 0 0 1px $body-bg,\n$input-focus-box-shadow !default;\n$form-range-thumb-focus-box-shadow-width: $input-focus-width !default; // For focus box shadow issue in Edge\n$form-range-thumb-active-bg             : lighten($component-active-bg, 35%) !default;\n$form-range-thumb-disabled-bg           : $gray-500 !default;\n$form-range-thumb-transition            : background-color .15s ease-in-out,\nborder-color .15s ease-in-out,\nbox-shadow .15s ease-in-out !default;\n\n$form-file-height               : $input-height !default;\n$form-file-focus-border-color   : $input-focus-border-color !default;\n$form-file-focus-box-shadow     : $input-focus-box-shadow !default;\n$form-file-disabled-bg          : $input-disabled-bg !default;\n$form-file-disabled-border-color: $input-disabled-border-color !default;\n\n$form-file-padding-y    : $input-padding-y !default;\n$form-file-padding-x    : $input-padding-x !default;\n$form-file-line-height  : $input-line-height !default;\n$form-file-font-family  : $input-font-family !default;\n$form-file-font-weight  : $input-font-weight !default;\n$form-file-color        : $input-color !default;\n$form-file-bg           : $input-bg !default;\n$form-file-border-width : $input-border-width !default;\n$form-file-border-color : $input-border-color !default;\n$form-file-border-radius: $input-border-radius !default;\n$form-file-box-shadow   : $input-box-shadow !default;\n$form-file-button-color : $form-file-color !default;\n$form-file-button-bg    : $input-group-addon-bg !default;\n\n$form-file-padding-y-sm: $input-padding-y-sm !default;\n$form-file-padding-x-sm: $input-padding-x-sm !default;\n$form-file-font-size-sm: $input-font-size-sm !default;\n$form-file-height-sm   : $input-height-sm !default;\n\n$form-file-padding-y-lg: $input-padding-y-lg !default;\n$form-file-padding-x-lg: $input-padding-x-lg !default;\n$form-file-font-size-lg: $input-font-size-lg !default;\n$form-file-height-lg   : $input-height-lg !default;\n\n$input-muted-bg               : $gray-100 !default;\n$input-placeholder-color      : $gray-800 !default;\n$input-focus-placeholder-color: $gray-800 !default;\n\n// Form validation\n\n$form-feedback-margin-top   : $form-text-margin-top !default;\n$form-feedback-font-size    : $form-text-font-size !default;\n$form-feedback-font-style   : $form-text-font-style !default;\n$form-feedback-valid-color  : $success !default;\n$form-feedback-invalid-color: $danger !default;\n\n$form-feedback-icon-valid-color  : $form-feedback-valid-color !default;\n$form-feedback-icon-valid        : url(\"data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'><path fill='#{$form-feedback-icon-valid-color}' 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'/></svg>\") !default;\n$form-feedback-icon-invalid-color: $form-feedback-invalid-color !default;\n$form-feedback-icon-invalid      : url(\"data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='#{$form-feedback-icon-invalid-color}' viewBox='0 0 12 12'><circle cx='6' cy='6' r='4.5'/><path stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/><circle cx='6' cy='8.2' r='.6' fill='#{$form-feedback-icon-invalid-color}' stroke='none'/></svg>\") !default;\n\n// scss-docs-start form-validation-states\n$form-validation-states: (\"valid\": (\"color\": $form-feedback-valid-color,\n        \"icon\": $form-feedback-icon-valid),\n    \"invalid\": (\"color\": $form-feedback-invalid-color,\n        \"icon\": $form-feedback-icon-invalid)) !default;\n// scss-docs-end form-validation-states\n\n// Z-index master list\n//\n// Warning: Avoid customizing these values. They're used for a bird's eye view\n// of components dependent on the z-axis and are designed to all work together.\n\n// scss-docs-start zindex-stack\n$zindex-dropdown      : 1000 !default;\n$zindex-sticky        : 1020 !default;\n$zindex-fixed         : 1030 !default;\n$zindex-modal-backdrop: 1040 !default;\n$zindex-modal         : 1050 !default;\n$zindex-popover       : 1060 !default;\n$zindex-tooltip       : 1070 !default;\n// scss-docs-end zindex-stack\n\n// No UI Slider\n\n$noui-target-bg                 : $gray-400 !default;\n$noui-target-thickness          : 5px !default;\n$noui-target-border-radius      : 5px !default;\n$noui-target-border-color       : 0 !default;\n$noui-target-box-shadow         : inset $box-shadow-sm !default;\n$noui-box-shadow                : $box-shadow-sm !default;\n$noui-slider-connect-bg         : $primary !default;\n$noui-slider-connect-disabled-bg: $gray-200 !default;\n$noui-handle-active-shadow      : 0 0 0 0.2rem rgba(69, 77, 103, 0.5) !default;\n$noui-handle-width              : 15px !default;\n$noui-handle-bg                 : $primary !default;\n$noui-handle-border             : 0 !default;\n$noui-handle-border-radius      : $border-radius !default;\n$noui-origin-border-radius      : $circle-radius !default;\n\n\n// Navs\n\n$nav-link-padding-y   : .5rem !default;\n$nav-link-padding-x   : 1rem !default;\n$nav-link-color       : $gray-800 !default;\n$nav-link-hover-color : $dark !default;\n$nav-link-active-color: $gray-800 !default;\n$nav-link-shadow      : none !default;\n$nav-link-transition  : color .15s ease-in-out,\nbackground-color .15s ease-in-out,\nborder-color .15s ease-in-out !default;\n$nav-link-disabled-color: $gray-600 !default;\n\n$nav-tabs-border-color            : $light !default;\n$nav-tabs-border-width            : $border-width !default;\n$nav-tabs-border-radius           : $border-radius !default;\n$nav-tabs-link-hover-border-color : $gray-200 $gray-200 $nav-tabs-border-color !default;\n$nav-tabs-link-active-color       : $gray-700 !default;\n$nav-tabs-link-active-bg          : $light !default;\n$nav-tabs-link-active-border-color: $light !default;\n\n$nav-pills-padding-y: .75rem !default;\n$nav-pills-padding-x: .85rem !default;\n\n$nav-pills-space-x      : 1rem !default;\n$nav-pills-border-circle: 50% !default;\n\n$nav-pills-bg           : $white !default;\n$nav-pills-border-width : 1px !default;\n$nav-pills-border-color : $light !default;\n$nav-pills-border-radius: $border-radius !default;\n\n$nav-pills-link-hover-color   : $primary !default;\n$nav-pills-link-active-color  : $primary !default;\n$nav-pills-active-border-color: $gray-300 !default;\n$nav-pills-link-active-bg     : #f8f8f8 !default;\n\n// Owl navs\n\n$owl-nav-color           : $gray-600 !default;\n$owl-nav-color-hover     : $gray-900 !default;\n$owl-nav-font-size       : $font-size-xxl !default;\n$owl-nav-rounded         : 3px !default;\n$owl-nav-margin          : 5px !default;\n$owl-nav-padding         : 4px 7px !default;\n$owl-nav-background      : $gray-400 !default;\n$owl-nav-background-hover: $gray-800 !default;\n$owl-nav-disabled-opacity: 0.5 !default;\n\n// Owl dots\n\n$owl-dot-width            : 10px !default;\n$owl-dot-height           : 10px !default;\n$owl-dot-rounded          : $circle-radius !default;\n$owl-dot-margin           : 5px 5px !default;\n$owl-dot-border-width     : 2px !default;\n$owl-dot-background       : $gray-400 !default;\n$owl-dot-background-active: $gray-800 !default;\n\n\n// Navbar\n\n$navbar-padding-y: 1rem !default;\n$navbar-padding-x: null !default;\n\n$navbar-nav-link-padding-x: .8rem !default;\n\n$navbar-brand-font-size   : $font-size-lg !default;\n// Compute the navbar-brand padding-y so the navbar-brand will have the same height as navbar-text and nav-link\n$nav-link-height          : $font-size-base * $line-height-base+$nav-link-padding-y * 4 !default;\n$navbar-brand-height      : $navbar-brand-font-size * $line-height-base !default;\n$navbar-brand-padding-y   : 0 !default;\n$navbar-brand-margin-right: 1rem !default;\n\n$navbar-toggler-padding-y    : .4rem !default;\n$navbar-toggler-padding-x    : .6rem !default;\n$navbar-toggler-font-size    : $font-size-lg !default;\n$navbar-toggler-border-radius: $btn-border-radius !default;\n$navbar-toggler-focus-width  : $btn-focus-width !default;\n$navbar-toggler-transition   : box-shadow .15s ease-in-out !default;\n\n$navbar-dark-color               : rgba($white, 0.9) !default;\n$navbar-dark-hover-color         : rgba($white, 1) !default;\n$navbar-dark-active-color        : $white !default;\n$navbar-dark-disabled-color      : rgba($white, .9) !default;\n$navbar-dark-toggler-icon-bg     : url(\"data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'><path stroke='#{$navbar-dark-color}' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/></svg>\") !default;\n$navbar-dark-toggler-border-color: rgba($white, .1) !default;\n\n$navbar-light-color               : rgba($black, .9) !default;\n$navbar-light-hover-color         : rgba($black, 1) !default;\n$navbar-light-active-color        : rgba($black, 1) !default;\n$navbar-light-disabled-color      : rgba($black, .9) !default;\n$navbar-light-toggler-icon-bg     : url(\"data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'><path stroke='#{$navbar-light-color}' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/></svg>\") !default;\n$navbar-light-toggler-border-color: rgba($black, .1) !default;\n\n$navbar-light-brand-color      : $navbar-light-active-color !default;\n$navbar-light-brand-hover-color: $navbar-light-active-color !default;\n$navbar-dark-brand-color       : $navbar-dark-active-color !default;\n$navbar-dark-brand-hover-color : $navbar-dark-active-color !default;\n\n\n// Dropdowns\n//\n// Dropdown menu container and contents.\n\n$dropdown-min-width       : 12rem !default;\n$dropdown-padding-y       : .5rem !default;\n$dropdown-spacer          : .125rem !default;\n$dropdown-font-size       : .875rem !default;\n$dropdown-item-font-weight: $font-weight-normal !default;\n$dropdown-item-hover-color: $gray-900 !default;\n\n$dropdown-color              : $body-color !default;\n$dropdown-bg                 : $white !default;\n$dropdown-border-color       : $border-color !default;\n$dropdown-border-radius      : $border-radius-sm !default;\n$dropdown-border-width       : $border-width !default;\n$dropdown-inner-border-radius: subtract($dropdown-border-radius, $dropdown-border-width) !default;\n$dropdown-divider-bg         : $gray-200 !default;\n$dropdown-divider-margin-y   : $spacer / 2 !default;\n$dropdown-box-shadow         : 0 10px 15px -3px rgba(0, 0, 0, 0.1),0 4px 6px -2px rgba(0, 0, 0, 0.05) !default;\n\n$dropdown-link-color      : $gray-900 !default;\n$dropdown-link-hover-color: darken($gray-900, 5%) !default;\n$dropdown-link-hover-bg   : $gray-100 !default;\n\n$dropdown-link-active-color: $gray-900 !default;\n$dropdown-link-active-bg   : $gray-200 !default;\n\n$dropdown-link-disabled-color: $gray-600 !default;\n\n$dropdown-item-padding-y: $spacer / 4 !default;\n$dropdown-item-padding-x: $spacer !default;\n\n$dropdown-header-color      : $gray-900 !default;\n$dropdown-header-font-weight: $font-weight-bold !default;\n$dropdown-header-padding    : $dropdown-padding-y $dropdown-item-padding-x !default;\n\n\n// Pagination\n\n$pagination-padding-y   : .375rem !default;\n$pagination-padding-x   : .75rem !default;\n$pagination-padding-y-sm: .25rem !default;\n$pagination-padding-x-sm: .5rem !default;\n$pagination-padding-y-lg: .75rem !default;\n$pagination-padding-x-lg: 1.5rem !default;\n\n$pagination-color        : $link-color !default;\n$pagination-bg           : $white !default;\n$pagination-border-width : $border-width !default;\n$pagination-border-radius: $border-radius !default;\n$pagination-margin-left  : -$pagination-border-width !default;\n$pagination-border-color : $light !default;\n\n$pagination-focus-box-shadow: $input-btn-focus-box-shadow !default;\n$pagination-focus-outline   : 0 !default;\n\n$pagination-hover-color       : $link-hover-color !default;\n$pagination-hover-bg          : $gray-200 !default;\n$pagination-hover-border-color: $gray-300 !default;\n\n$pagination-active-color       : $component-active-color !default;\n$pagination-active-bg          : $component-active-bg !default;\n$pagination-active-border-color: $pagination-active-bg !default;\n\n$pagination-disabled-color       : $gray-600 !default;\n$pagination-disabled-bg          : $white !default;\n$pagination-disabled-border-color: $gray-300 !default;\n\n\n// Cards\n\n$card-spacer-y           : 1.25rem !default;\n$card-spacer-x           : 1.5rem !default;\n$card-social-padding     : .25rem .375rem !default;\n$card-title-spacer-y     : .875rem !default;\n$card-border-width       : $border-width !default;\n$card-border-radius      : $border-radius !default;\n$card-border-color       : rgba($black, .125) !default;\n$card-inner-border-radius: subtract($card-border-radius, $card-border-width) !default;\n$card-cap-padding-y      : 1.25rem !default;\n$card-cap-padding-x      : $card-spacer-x !default;\n$card-cap-bg             : rgba($black, .03) !default;\n$card-cap-color          : null !default;\n$card-height             : null !default;\n$card-color              : null !default;\n$card-bg                 : $white !default;\n\n$card-img-overlay-padding: $spacer !default;\n\n$card-group-margin     : $grid-gutter-width / 2 !default;\n$transition-bezier-card: cubic-bezier(0.34, 1.45, 0.7, 1) !default;\n\n//Timelines\n$timeline-font-size        : $font-size-xxl !default;\n$timeline-font-color       : $body-color !default;\n$timeline-border-color     : $light !default;\n$timeline-border-color-dark: $gray-500 !default;\n$timeline-background-color : $white !default;\n$timeline-line-height      : 3 !default;\n$timeline-border-width     : $border-width !default;\n$timeline-circle-radius    : 50% !default;\n$timeline-spacer-y         : 1.25rem !default;\n$timeline-spacer-x         : 2.75rem !default;\n\n// Icons & Shapes sizes\n\n$icon-size-xxs:         1rem !default; \n$icon-size-xs:          1.25rem !default; \n$icon-size-sm:          1.5rem !default; \n$icon-size:             2rem !default;  \n$icon-size-lg:          3.5rem !default;\n$icon-size-xl:          4.5rem !default;\n$icon-size-xxl:         6rem !default;\n\n$icon-shape-xxs:        1.5rem !default;\n$icon-shape-xs:         2.5rem !default;\n$icon-shape-sm:         3.275rem !default;\n$icon-shape:            4rem !default;\n$icon-shape-lg:         5rem !default;\n$icon-shape-xl:         6rem !default;\n$icon-shape-xxl:        7.5rem !default;\n\n\n// Steps\n$step-number-size : 12rem !default;\n$step-shape-size  : 7rem !default;\n$step-border-width: $border-width-md !default;\n$step-icon-size   : $icon-size-xl !default;\n\n// Tooltips\n\n$tooltip-font-size    : $font-size-sm !default;\n$tooltip-max-width    : 200px !default;\n$tooltip-color        : $white !default;\n$tooltip-bg           : $dark !default;\n$tooltip-border-radius: $border-radius !default;\n$tooltip-opacity      : .99 !default;\n$tooltip-padding-y    : .5rem !default;\n$tooltip-padding-x    : .55rem !default;\n$tooltip-margin       : 2rem !default;\n\n$tooltip-arrow-width : .8rem !default;\n$tooltip-arrow-height: .4rem !default;\n$tooltip-arrow-color : $tooltip-bg !default;\n\n// Form tooltips must come after regular tooltips\n$form-feedback-tooltip-padding-y    : $tooltip-padding-y !default;\n$form-feedback-tooltip-padding-x    : $tooltip-padding-x !default;\n$form-feedback-tooltip-font-size    : $tooltip-font-size !default;\n$form-feedback-tooltip-line-height  : null !default;\n$form-feedback-tooltip-opacity      : $tooltip-opacity !default;\n$form-feedback-tooltip-border-radius: $tooltip-border-radius !default;\n\n\n// Popovers\n\n$popover-font-size          : $font-size-sm !default;\n$popover-bg                 : $dark !default;\n$popover-max-width          : 276px !default;\n$popover-border-width       : $border-width !default;\n$popover-border-color       : rgba($black, .2) !default;\n$popover-border-radius      : $border-radius-lg !default;\n$popover-inner-border-radius: subtract($popover-border-radius, $popover-border-width) !default;\n$popover-box-shadow         : $box-shadow !default;\n\n$popover-header-bg       : darken($popover-bg, 3%) !default;\n$popover-header-color    : $headings-color !default;\n$popover-header-padding-y: .5rem !default;\n$popover-header-padding-x: $spacer !default;\n\n$popover-body-color    : $white !default;\n$popover-body-padding-y: $spacer !default;\n$popover-body-padding-x: $spacer !default;\n\n$popover-arrow-width : 1rem !default;\n$popover-arrow-height: .5rem !default;\n$popover-arrow-color : $popover-bg !default;\n\n$popover-arrow-outer-color: fade-in($popover-border-color, .05) !default;\n\n\n// Toasts\n\n$toast-max-width       : 350px !default;\n$toast-padding-x       : .75rem !default;\n$toast-padding-y       : .25rem !default;\n$toast-font-size       : .875rem !default;\n$toast-color           : null !default;\n$toast-background-color: rgba($white, .85) !default;\n$toast-border-width    : 1px !default;\n$toast-border-color    : rgba(0, 0, 0, .1) !default;\n$toast-border-radius   : $border-radius !default;\n$toast-box-shadow      : $box-shadow !default;\n\n$toast-header-color           : $gray-600 !default;\n$toast-header-background-color: rgba($white, .85) !default;\n$toast-header-border-color    : rgba(0, 0, 0, .05) !default;\n\n\n// Badges\n\n$badge-font-size    : .75em !default;\n$badge-font-weight  : $font-weight-bolder !default;\n$badge-padding-y    : .2rem !default;\n$badge-padding-x    : .4rem !default;\n$badge-color        : $white !default;\n$badge-border-radius: $border-radius !default;\n\n$badge-pill-padding-x    : .875em !default;\n$badge-pill-border-radius: 10rem !default;\n\n$badge-circle-size: 2rem !default;\n\n\n// Modals\n\n// Padding applied to the modal body\n$modal-inner-padding: $spacer !default;\n\n// Margin between elements in footer, must be lower than or equal to 2 * $modal-inner-padding\n$modal-footer-margin-between: .5rem !default;\n\n$modal-dialog-margin        : .5rem !default;\n$modal-dialog-margin-y-sm-up: 1.75rem !default;\n\n$modal-title-line-height: $line-height-base !default;\n\n$modal-content-color              : null !default;\n$modal-content-bg                 : $white !default;\n$modal-content-border-color       : rgba($black, .2) !default;\n$modal-content-border-width       : $border-width !default;\n$modal-content-border-radius      : $border-radius !default;\n$modal-content-inner-border-radius: subtract($modal-content-border-radius, $modal-content-border-width) !default;\n$modal-content-box-shadow-xs      : $box-shadow-sm !default;\n$modal-content-box-shadow-sm-up   : $box-shadow !default;\n\n$modal-backdrop-bg        : $black !default;\n$modal-backdrop-opacity   : .5 !default;\n$modal-header-border-color: $border-color !default;\n$modal-footer-border-color: $modal-header-border-color !default;\n$modal-header-border-width: $modal-content-border-width !default;\n$modal-footer-border-width: $modal-header-border-width !default;\n$modal-header-padding-y   : $modal-inner-padding !default;\n$modal-header-padding-x   : $modal-inner-padding !default;\n$modal-header-padding     : $modal-header-padding-y $modal-header-padding-x !default; // Keep this for backwards compatibility\n\n$modal-sm: 300px !default;\n$modal-md: 500px !default;\n$modal-lg: 800px !default;\n$modal-xl: 1140px !default;\n\n$modal-fade-transform : translate(0, -50px) !default;\n$modal-show-transform : none !default;\n$modal-transition     : transform .3s ease-out !default;\n$modal-scale-transform: scale(1.02) !default;\n\n\n// Alerts\n//\n// Define alert colors, border radius, and padding.\n\n$alert-padding-y       : $spacer !default;\n$alert-padding-x       : $spacer !default;\n$alert-margin-bottom   : 1rem !default;\n$alert-border-radius   : $border-radius !default;\n$alert-link-font-weight: $font-weight-bold !default;\n$alert-border-width    : $border-width !default;\n$alert-icon-font-size  : 2rem !default;\n$alert-link-color      : $white !default;\n\n$alert-bg-level    : -10 !default !default;\n$alert-border-level: -9 !default !default;\n$alert-color-level : 10 !default !default;\n\n\n// Progress bars\n\n$progress-height              : 1rem !default;\n$progress-font-size           : $font-size-base * .75 !default;\n$progress-bg                  : $gray-200 !default;\n$progress-border-radius       : $border-radius !default;\n$progress-box-shadow          : $box-shadow-inset !default;\n$progress-bar-color           : $white !default;\n$progress-bar-bg              : $dark !default;\n$progress-bar-animation-timing: 1s linear infinite !default;\n$progress-bar-transition      : width .6s ease !default;\n\n$progress-xl-size: .8rem !default;\n$progress-lg-size: .6rem !default;\n$progress-sm-size: .2rem !default;\n\n\n// List group\n\n$list-group-color        : null !default;\n$list-group-bg           : $white !default;\n$list-group-border-color : rgba($black, .125) !default;\n$list-group-border-width : $border-width !default;\n$list-group-border-radius: $border-radius !default;\n\n$list-group-sm-item-padding-y: .625rem !default;\n$list-group-sm-item-padding-x: .875rem !default;\n\n$list-group-item-padding-y    : $spacer / 2 !default;\n$list-group-item-padding-x    : $spacer !default;\n$list-group-item-bg-level     : -9 !default;\n$list-group-item-color-level  : 6 !default;\n$list-group-item-border-radius: $border-radius !default;\n\n$list-group-hover-bg           : $gray-100 !default;\n$list-group-active-color       : $component-active-color !default;\n$list-group-active-bg          : $component-active-bg !default;\n$list-group-active-border-color: $list-group-active-bg !default;\n\n$list-group-disabled-color: $gray-600 !default;\n$list-group-disabled-bg   : $list-group-bg !default;\n\n$list-group-action-color      : $gray-700 !default;\n$list-group-action-hover-color: $list-group-action-color !default;\n\n$list-group-action-active-color: $body-color !default;\n$list-group-action-active-bg   : $gray-200 !default;\n\n// Image thumbnails\n\n$thumbnail-padding      : .25rem !default;\n$thumbnail-bg           : $body-bg !default;\n$thumbnail-border-width : $border-width !default;\n$thumbnail-border-color : $gray-300 !default;\n$thumbnail-border-radius: $border-radius !default;\n$thumbnail-box-shadow   : $box-shadow-sm !default;\n\n\n// Figures\n\n$figure-caption-font-size: $small-font-size !default;\n$figure-caption-color    : $gray-600 !default;\n\n\n// Breadcrumbs\n\n$breadcrumb-font-size     : null !default;\n$breadcrumb-padding-y     : $spacer / 2 !default;\n$breadcrumb-padding-x     : $spacer !default;\n$breadcrumb-item-padding-x: .5rem !default;\n$breadcrumb-margin-bottom : 1rem !default;\n$breadcrumb-bg            : $gray-200 !default;\n$breadcrumb-divider-color : $gray-600 !default;\n$breadcrumb-active-color  : $gray-600 !default;\n$breadcrumb-divider       : quote(\"/\") !default;\n$breadcrumb-border-radius : $border-radius !default;\n\n$breadcrumb-active-color       : $white !default;\n$breadcrumb-divider-color      : $gray-700 !default;\n$breadcrumb-item-color         : $gray-700 !default;\n$breadcrumb-font-weight        : $font-weight-normal !default;\n$breadcrumb-active-font-weight : $font-weight-normal !default;\n$breadcrumb-item-light-color   : $white !default;\n$breadcrumb-divider-light-color: $white !default;\n\n// Carousel\n\n$carousel-control-color        : $white !default;\n$carousel-control-width        : 15% !default;\n$carousel-control-opacity      : .5 !default;\n$carousel-control-hover-opacity: .9 !default;\n$carousel-control-transition   : opacity .15s ease !default;\n\n$carousel-indicator-width          : 30px !default;\n$carousel-indicator-height         : 3px !default;\n$carousel-indicator-hit-area-height: 10px !default;\n$carousel-indicator-spacer         : 3px !default;\n$carousel-indicator-opacity        : .5 !default;\n$carousel-indicator-active-bg      : $white !default;\n$carousel-indicator-active-opacity : 1 !default;\n$carousel-indicator-transition     : opacity .6s ease !default;\n\n$carousel-caption-width    : 70% !default;\n$carousel-caption-color    : $white !default;\n$carousel-caption-padding-y: 1.25rem !default;\n$carousel-caption-spacer   : 1.25rem !default;\n\n$carousel-control-icon-width: 20px !default;\n\n$carousel-control-prev-icon-bg: url(\"data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' fill='#{$carousel-control-color}' viewBox='0 0 8 8'><path d='M5.25 0l-4 4 4 4 1.5-1.5L4.25 4l2.5-2.5L5.25 0z'/></svg>\") !default;\n$carousel-control-next-icon-bg: url(\"data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' fill='#{$carousel-control-color}' viewBox='0 0 8 8'><path d='M2.75 0l-1.5 1.5L3.75 4l-2.5 2.5L2.75 8l4-4-4-4z'/></svg>\") !default;\n\n$carousel-transition-duration: .6s !default;\n$carousel-transition         : transform $carousel-transition-duration ease-in-out !default; // Define transform transition first if using multiple transitions (e.g., `transform 2s ease, opacity .5s ease-out`)\n\n\n// Spinners\n\n$spinner-width          : 2rem !default;\n$spinner-height         : $spinner-width !default;\n$spinner-border-width   : .25em !default;\n$spinner-animation-speed: .75s !default;\n\n$spinner-width-sm       : 1.2rem !default;\n$spinner-height-sm      : $spinner-width-sm !default;\n$spinner-border-width-sm: .2em !default;\n\n// Datepicker\n\n$datepicker-border-radius   : $border-radius-sm !default;\n$datepicker-dropdown-padding: 20px 22px !default;\n\n$datepicker-cell-transition      : $transition-base !default;\n$datepicker-cell-hover-background: lighten($gray-400, 55%) !default;\n$datepicker-cell-border-radius   : 50% !default;\n$datepicker-cell-width           : 36px !default;\n$datepicker-cell-height          : 36px !default;\n\n$datepicker-disabled-cell-color   : $gray-300 !default;\n$datepicker-disabled-old-new-color: $gray-500 !default;\n\n$datepicker-header-cell-border-radius: $border-radius-sm !default;\n\n$datepicker-active-color     : $white !default;\n$datepicker-active-background: $secondary !default;\n$datepicker-active-box-shadow: none !default;\n\n$datepicker-range-background             : $secondary !default;\n$datepicker-range-cell-focused-background: darken($datepicker-range-background, 5%) !default;\n$datepicker-range-color                  : $white !default;\n$datepicker-range-highlighted-bg         : $gray-200 !default;\n\n$datepicker-dropdown-border: lighten($gray-400, 40%) !default;\n$datepicker-dropdown-bg    : $white !default;\n$datepicker-highlighted-bg : $datepicker-active-background !default;\n\n\n// Close\n\n$close-bg         : transparent !default;\n$close-hover-bg   : transparent !default;\n$close-color      : rgba(0, 0, 0, .6) !default;\n$close-hover-color: rgba(0, 0, 0, .9) !default;\n$close-font-size  : $font-size-base * 1.5 !default;\n$close-font-weight: $font-weight-bold !default;\n$close-color      : $black !default;\n$close-text-shadow: 0 1px 0 $white !default;\n\n\n\n// Code\n\n$code-font-size: $small-font-size !default;\n$code-color    : $pink !default;\n\n$kbd-padding-y: .2rem !default;\n$kbd-padding-x: .4rem !default;\n$kbd-font-size: $code-font-size !default;\n$kbd-color    : $white !default;\n$kbd-bg       : $gray-900 !default;\n\n$pre-color: null !default;\n\n// Avatars\n$avatar-sm-y: 1.5rem !default;\n$avatar-sm-x: 1.5rem !default;\n\n$avatar-y: 2rem !default;\n$avatar-x: 2rem !default;\n\n$avatar-md-y: 3rem !default;\n$avatar-md-x: 3rem !default;\n\n$avatar-lg-y: 4.5rem !default;\n$avatar-lg-x: 4.5rem !default;\n\n$avatar-xl-y: 8rem !default;\n$avatar-xl-x: 8rem !default;\n\n// Footer\n\n$footer-link-font-size   : .85rem !default;\n$footer-bg               : theme-color(\"secondary\") !default;\n$footer-color            : $gray-600 !default;\n$footer-link-color       : $gray-600 !default;\n$footer-link-hover-color : $gray-700 !default;\n$footer-heading-color    : $gray-600 !default;\n$footer-heading-font-size: $font-size-sm !default;\n$padding-footer-sm       : .125rem !default;\n$padding-footer          : .375rem !default;\n$padding-footer-md       : .625rem !default;\n$padding-footer-general  : .9375rem !default;\n$padding-footer-big      : 1.5rem !default;\n"
  },
  {
    "path": "static/assets/scss/volt/_vendor.scss",
    "content": "// Vendor\n@import \"vendor/headroom\";\n@import \"vendor/nouislider\";\n@import \"vendor/prism\";\n@import \"vendor/chartist/chartist\";\n@import \"vendor/datepicker\";\n"
  },
  {
    "path": "static/assets/scss/volt/components/_accordions.scss",
    "content": "/**\n * = Accordions\n*/\n\n\n.accordion-button {\n    text-align: left;\n    &:not(.collapsed) {\n        &::after {\n          background-image: none;\n          @include transform(rotateZ(45deg));\n        }\n    }\n\n    // Accordion icon\n    &::after {\n        background-image: none;\n        content: '\\f067';\n        font-family: $font-awesome-5;\n        font-size: $font-size-base;\n        font-weight: 900;\n    }\n\n    &:hover{\n        background-color: $gray-200;\n    }\n}\n  \n  \n// Flush accordion items\n//\n// Remove borders and border-radius to keep accordion items edge-to-edge.\n\n.accordion-flush {\n    .accordion-button {\n        background-color: transparent;\n        &:not(.collapsed) {\n            color: $tertiary;\n        }\n        &:focus {\n            border-color: $gray-300;\n            box-shadow: none;\n        }\n    }\n    .accordion-collapse {\n        border: 0;\n    }\n}\n\n\n\n\n"
  },
  {
    "path": "static/assets/scss/volt/components/_alerts.scss",
    "content": ".alert-heading{\n    font-weight: $font-weight-bold;\n}\n\n.alert-icon{\n    margin-bottom: .5rem;\n    span{\n        font-size: $alert-icon-font-size;\n    }\n}"
  },
  {
    "path": "static/assets/scss/volt/components/_animations.scss",
    "content": "\n/**\n * = Animations\n */\n\n @for $size from 1 to 10 {\n    .animate-up-#{$size},\n    .animate-right-#{$size},\n    .animate-down-#{$size},\n    .animate-left-#{$size},\n    .scale-up-#{$size},\n    .scale-down-#{$size} {\n        transition: $transition-base;\n    }\n\n    .scale-up-#{$size} {\n        &:hover {\n            transform: scale($size / 1.8);\n        }\n    }\n\n    .scale-up-hover-#{$size} {\n        &:hover {\n            & .scale {\n                transform: scale($size / 1.8);\n            }\n        }\n    }\n\n    .scale-down-#{$size} {\n        &:hover {\n            transform: scale($size / 2.5);\n        }\n    }\n\n    .animate-up-#{$size} {\n        &:hover,\n        .animate-hover:hover & {\n            @include translate(0, -#{$size}px);\n        }\n    }\n    .animate-right-#{$size} {\n        &:hover,\n        .animate-hover:hover & {\n            @include translate(#{$size}px, 0);\n        }\n    }\n    .animate-down-#{$size} {\n        &:hover,\n        .animate-hover:hover & {\n            @include translate(0, #{$size}px);\n        }\n    }\n    .animate-left-#{$size} {\n        &:hover,\n        .animate-hover:hover & {\n            @include translate(-#{$size}px, 0);\n        }\n    }\n}\n\n// Keyframes\n@keyframes show-navbar-collapse {\n    0% {\n        opacity: 0;\n        transform: scale(.95);\n        transform-origin: 100% 0;\n    }\n\n    100% {\n        opacity: 1;\n        transform: scale(1);\n    } \n}\n\n@keyframes hide-navbar-collapse {\n    from {\n        opacity: 1;\n        transform: scale(1);\n        transform-origin: 100% 0;\n    }\n\n    to {\n        opacity: 0;\n        transform: scale(.95);\n    } \n}\n\n@keyframes show-navbar-dropdown {\n    0% {\n        opacity: 0;\n        transform: translate(0, 10px) perspective(200px) rotateX(-2deg);\n        transition: visibility 0.45s, opacity 0.45s, transform 0.45s;\n    }\n\n    100% {\n        transform: translate(0, 0);\n        opacity: 1;\n    } \n}\n\n@keyframes hide-navbar-dropdown {\n    from {\n        opacity: 1;\n    }\n\n    to {\n        opacity: 0;\n        transform: translate(0, 10px);\n    } \n}\n\n@keyframes show-dropdown {\n    0% {\n        opacity: 0;\n        transform-origin: perspective(200px) rotateX(-2deg);\n        transition: visibility 0.45s, opacity .5s;\n    }\n\n    100% {\n        opacity: 1;\n    } \n}\n\n\n@keyframes hide-dropdown {\n    from {\n        opacity: 1;\n    }\n\n    to {\n        opacity: 0;\n        transform: translate(0, 10px);\n    } \n}\n\n.bell-shake {\n    &.shaking {\n        animation: bellshake .5s cubic-bezier(.36,.07,.19,.97) both;\n        backface-visibility: hidden;\n        transform-origin: top right;\n    }\n}\n\n:root {\n    --animate-duration: 1s;\n    --animate-delay: 1s;\n    --animate-repeat: 1;\n  }\n\n.animate__animated {\n    -webkit-animation-duration: 1s;\n    animation-duration: 1s;\n    -webkit-animation-duration: var(--animate-duration);\n    animation-duration: var(--animate-duration);\n    -webkit-animation-fill-mode: both;\n    animation-fill-mode: both;\n  }\n\n.animate__jackInTheBox {\n    -webkit-animation-name: jackInTheBox;\n    animation-name: jackInTheBox;\n}\n\n@keyframes bellshake {\n    0% { transform: rotate(0); }\n    15% { transform: rotate(5deg); }\n    30% { transform: rotate(-5deg); }\n    45% { transform: rotate(4deg); }\n    60% { transform: rotate(-4deg); }\n    75% { transform: rotate(2deg); }\n    85% { transform: rotate(-2deg); }\n    92% { transform: rotate(1deg); }\n    100% { transform: rotate(0); }\n}\n\n@-webkit-keyframes jackInTheBox {\n    from {\n      opacity: 0;\n      -webkit-transform: scale(0.1) rotate(30deg);\n      transform: scale(0.1) rotate(30deg);\n      -webkit-transform-origin: center bottom;\n      transform-origin: center bottom;\n    }\n  \n    50% {\n      -webkit-transform: rotate(-10deg);\n      transform: rotate(-10deg);\n    }\n  \n    70% {\n      -webkit-transform: rotate(3deg);\n      transform: rotate(3deg);\n    }\n  \n    to {\n      opacity: 1;\n      -webkit-transform: scale(1);\n      transform: scale(1);\n    }\n  }\n  @keyframes jackInTheBox {\n    from {\n      opacity: 0;\n      -webkit-transform: scale(0.1) rotate(30deg);\n      transform: scale(0.1) rotate(30deg);\n      -webkit-transform-origin: center bottom;\n      transform-origin: center bottom;\n    }\n  \n    50% {\n      -webkit-transform: rotate(-10deg);\n      transform: rotate(-10deg);\n    }\n  \n    70% {\n      -webkit-transform: rotate(3deg);\n      transform: rotate(3deg);\n    }\n  \n    to {\n      opacity: 1;\n      -webkit-transform: scale(1);\n      transform: scale(1);\n    }\n  }\n  .animate__jackInTheBox {\n    -webkit-animation-name: jackInTheBox;\n    animation-name: jackInTheBox;\n  }\n\n[class*=shadow] {\n    transition: all .2s ease;\n}"
  },
  {
    "path": "static/assets/scss/volt/components/_avatars.scss",
    "content": "/**\n * = Avatars\n */\n\n .avatar + .avatar-content {\n    display: inline-block;\n    margin-left: 0.75rem;\n}\n\n.avatar-sm {\n    width: $avatar-sm-y;\n    height: $avatar-sm-x;\n\n    img {\n        width: $avatar-sm-y;\n        height: $avatar-sm-x;\n    }\n}\n\n.avatar {\n    width: $avatar-y;\n    height: $avatar-x;\n\n    img {\n        width: $avatar-y;\n        height: $avatar-x;\n    }\n}\n\n.avatar-md {\n    width: $avatar-md-y;\n    height: $avatar-md-x;\n\n    img {\n        width: $avatar-md-y;\n        height: $avatar-md-x;\n    }\n}\n\n.avatar-lg {\n    width: $avatar-lg-y;\n    height: $avatar-lg-x;\n\n    img {\n        width: $avatar-lg-y;\n        height: $avatar-lg-x;\n    }\n}\n\n.avatar-xl {\n    width: $avatar-xl-y;\n    height: $avatar-xl-x;\n\n    @include media-breakpoint-down(lg) {\n        width: $avatar-lg-y;\n        height: $avatar-lg-x;\n    }\n\n}\n\n\n.avatar-offline,\n.avatar-online {\n    &::before {\n        position: absolute;\n        border: 2px solid $white;\n        background-color: $success;\n        display: block;\n        top: 2px;\n        left: 39px;\n        content: \"\";\n        border-radius: 50%;\n        height: 10px;\n        width: 10px;\n    }\n}\n\n.avatar-offline {\n    &::before {\n        background-color: $danger;\n    }\n}\n\n// Overlapped avatars\n.avatar-group {\n    .avatar {\n        position: relative;\n        z-index: 0;\n\n        img {\n            border: 2px solid $white;\n        }\n\n        &:hover {\n            z-index: 3;\n        }\n    }\n\n    .avatar + .avatar {\n        margin-left: -1rem;\n    }\n}\n"
  },
  {
    "path": "static/assets/scss/volt/components/_badge.scss",
    "content": "/**\n * = Badges\n */\n\n.badge {\n    font-size:$badge-font-size;\n    font-weight: $badge-font-weight;\n\n    a {\n        color: $white;\n    }\n\n    &.super-badge{\n        vertical-align: super;\n    }\n}\n\n// Variations\n.badge-pill {\n    padding-right: $badge-pill-padding-x;\n    padding-left: $badge-pill-padding-x;\n}\n\n// Multiple inline badges\n.badge-inline {\n    margin-right: .625rem;\n\n    & + span {\n        top: 2px;\n        position: relative;\n\n        & > a {\n            text-decoration: underline;\n        }\n    }\n}\n\n// Sizes\n.badge-sm {\n    padding: .2rem .6rem;\n}\n\n.badge-lg {\n    font-size: $font-size-lg;\n    padding: .35rem .85rem;\n}\n\n//button badges\n\n.btn{\n    .badge-corner{\n        position: absolute;\n        top: -50%;\n        right: .5rem;\n        transform: translate(50%,50%);\n        margin: 0;\n        border: 3px solid;\n        padding-left: .5rem;\n        padding-right: .5rem;\n    }\n}\n//Tags \n.wi-tags{\n    a {\n        display: inline-block;\n        padding: 0.125rem 0.875rem;\n        margin: 0.25rem;\n        line-height: 2;\n        font-size: $font-size-sm;\n        box-shadow: $box-shadow-sm;\n        background-color: $white;\n    }\n}\n\n.pixel-pro-badge{\n    position: relative;\n    font-size: $font-size-sm;\n    text-transform: uppercase;\n    font-weight: $font-weight-bold;\n    right: -11px;\n    padding: 4px 12px;\n    top: -30px;\n    background: $white;\n    @include border-radius($border-radius-sm);\n    @include box-shadow($box-shadow-sm);\n    @include media-breakpoint-down(sm){\n        font-size: $font-size-base;\n        right: -13px;\n        padding: 5px 10px;\n        top: -23px;\n    }\n}\n\n.subscription-badge {\n    top: -19px;\n    right: -12px;\n    font-size: .75rem;\n}\n"
  },
  {
    "path": "static/assets/scss/volt/components/_body.scss",
    "content": "iframe {\n    border: 0;\n}\n\nfigcaption,\nfigure,\nmain {\n    display: block;\n    margin: 0;\n}\n\nmain {\n\toverflow: hidden;\n}\n\nimg {\n    max-width: 100%;\n}\n\nstrong{\n    font-weight: $font-weight-bold;\n}\n\nbutton:focus {\n    outline: 0;\n}\n\nlabel {\n    font-weight: $font-weight-bold;\n    margin-bottom:.5rem;\n}"
  },
  {
    "path": "static/assets/scss/volt/components/_breadcrumb.scss",
    "content": "/**\n * = Breadcrumbs\n */\n\n.breadcrumb-item {\n  font-size: $font-size-xs;\n  &, a {\n    color: $breadcrumb-item-color;\n    font-weight: $breadcrumb-font-weight;\n    font-size: $font-size-xs;\n    @include media-breakpoint-up(sm){\n      font-size: $font-size-sm;\n    }\n  }\n\n  &.active {\n    font-weight: $breadcrumb-active-font-weight;\n  }\n\n}\n\n.breadcrumb-transparent {\n  background: transparent;\n  padding: 0;\n}\n\n@each $color, $value in $theme-colors {\n  .breadcrumb-#{$color}  {\n      background: $value;\n      .breadcrumb-item{\n          &.active {\n              color: $white;\n          }\n      }\n      &.breadcrumb-transparent {\n        background: transparent;\n        .breadcrumb-item {\n          &.active {\n            color: $value;\n          }\n        }\n      }\n  }\n}\n\n.breadcrumb-text-light {\n  .breadcrumb-item {\n    &, a {\n      color: $breadcrumb-item-light-color;\n    }\n\n    &:before {\n      color: $breadcrumb-divider-light-color;\n    }\n  }\n}\n"
  },
  {
    "path": "static/assets/scss/volt/components/_buttons.scss",
    "content": "/*\n* = Buttons\n*/\n\n.btn {\n    &.btn-circle {\n        border-radius: $circle-radius;\n    }\n\t&.btn-md{\n        padding: 0.65rem 1.25rem;\n    }\n    &.btn-xs{\n        padding: .2rem 0.35rem;\n        font-size: 0.55rem;\n        box-shadow: none;\n    }\n    &.large-form-btn{\n        padding: 1.2rem 1rem;\n    }\n    &.dashed-outline {\n        border-style: dashed;\n    }\n}\n\n\n.btn-icon-only {\n    width: 2.575rem;\n    height: 2.575rem;\n    padding: 0;\n    @include display-flex();\n    @include justify-content(center);\n    @include align-items(center);\n\n    &.btn-xs {\n        width: 1.7rem;\n        height: 1.7rem;\n    }\n    &.btn-sm {\n        width: 2rem;\n        height: 2rem;\n    }\n}\n\n.btn-upgrade-pro {\n    position: fixed;\n    bottom: 15px;\n    right: 15px;\n    width: 190px;\n\n    @include media-breakpoint-up(md) {\n        left: 35px;\n    }\n}\n\n// Fix for darken background color\n@each $color, $value in $theme-colors {\n    .btn-#{$color} {\n        &:hover{\n           background-color:  darken( $value, 5% );\n           border-color: darken( $value, 5% );\n        }\n    }   \n}\n\n// Brand (social) buttons \n@each $color, $value in $brand-colors {\n    .btn-#{$color} {\n        @include button-variant($value, $value);\n\n\t\t&.btn-link {\n\t\t\tcolor: $value;\n\t\t\tbackground: transparent;\n\t\t\tbox-shadow: none;\n            border:0;\n            border-style: none;\n\t\t\t&:hover,\n\t\t\t&:focus,\n\t\t\t&.active {\n                background-color: transparent !important;\n                box-shadow: none;\n                border: 0;\n\t\t\t\tcolor: $value;\n\t\t\t}\n\t\t}\n    }\n}\n"
  },
  {
    "path": "static/assets/scss/volt/components/_card.scss",
    "content": "/**\n * = Cards\n */\n\n.card {\n    position: relative;\n    .card-header{\n        background: transparent;\n    }\n\n    &.hover-state{\n        &:hover {\n            background-color: $soft;\n        }\n    }\n\n    .profile-cover{\n        @include background-image(no-repeat, cover); \n        height: 200px;\n    }\n\n}\n\n.message-wrapper,\n.task-wrapper{\n    .card{\n        border:0;\n    }\n}\n\n.customer-testimonial {\n    .content-wrapper{\n        &:before {\n            content: \"\";\n            position: absolute;\n            top: 25px;\n            left: -1px;\n            margin-left: .75rem;\n            border: 8px solid $black;\n            border-color: transparent #e0e6ec #e0e6ec transparent;\n            -webkit-box-sizing: border-box;\n            box-sizing: border-box;\n            -webkit-transform-origin: 0 0;\n            transform-origin: 0 0;\n            @include transform(rotate(135deg));\n            @include box-shadow($box-shadow);\n        }\n    }\n}\n\n.card-footer{\n    background-color:transparent;\n}\n\n.card-stats{\n    padding-left:1.9rem;\n}\n\n\n// Card with blockquotes\n\n.card {\n    .card-blockquote {\n        position: relative;\n        padding: 2rem;\n\n        .svg-bg {\n            display: block;\n            position: absolute;\n            width: 100%;\n            height: 95px;\n            top: -94px;\n            left: 0;\n        }\n    }\n}\n\n// Animated cards\n\n\n.page-preview {\n\n    display: block;\n    position: relative;\n\n    .show-on-hover {\n        position: absolute;\n        bottom: -0;\n        background: rgba($dark, .85);\n        padding: 10px 0;\n        width: 100%;\n        left: 0;\n        opacity: 0;\n        @include transition(.2s);\n    }\n\n    &:hover {\n        z-index: 1;\n        \n        .show-on-hover {\n            opacity: 1;\n        }\n    }\n}\n\n.theme-settings {\n    z-index: 99;\n    position: fixed;\n    right: 15px;\n    bottom: 0;\n    \n    &, .card-body {\n        border-bottom-right-radius: 0;\n        border-bottom-left-radius: 0;\n    }\n}\n\n.theme-settings-close {\n    position: absolute;\n    top: 8px;\n    right: 8px;\n    font-size: .65rem;\n}\n\n.btn-close {\n\n    &.theme-settings-close{\n        background: transparent escape-svg($btn-close-bg-white) center / $btn-close-width auto no-repeat; // include transparent for button elements\n        border: 0; // for button elements\n        @include border-radius();\n        opacity: $btn-close-opacity;\n    }\n}\n\n.theme-settings-expand {\n    right: 15px;\n    bottom: 0;\n    height: 0;\n    @include transition(.3s height);\n\n    &.show {\n        height: 40px;\n    }\n\n    &:hover {\n        background: $gray-600;\n        cursor: pointer;\n    }\n}"
  },
  {
    "path": "static/assets/scss/volt/components/_carousel.scss",
    "content": "/**\n * = Bootstrap carousels\n */\n\n.carousel-caption {\n    &, h5 {\n        color: $white;\n    }\n}\n\n//Indicators\n\n.carousel-indicators {\n    li {\n        height: 10px;\n        width:10px;\n        border-radius:$circle-radius;\n        background:transparent;\n        border:2px solid $white;\n    }\n    .active {\n        opacity: 1;\n        background: $white;\n    }\n}\n\n//Carousel Controls \n\n.carousel-control-prev-icon,\n.carousel-control-next-icon {\n  width: auto;\n  height: auto;\n  font-weight: 900;\n}\n\n.carousel-control-prev-icon {\n    background-image: none;\n    &::before{\n        content: '\\f060';\n        font-family: $font-awesome-5;\n        font-size: $font-size-xxl;\n    }\n}\n\n.carousel-control-next-icon {\n    background-image: none;\n    &:before{\n        font-family: $font-awesome-5;\n        content: \"\\f061\";\n        font-size: $font-size-xxl;\n    }\n}"
  },
  {
    "path": "static/assets/scss/volt/components/_charts.scss",
    "content": ".ct-bar {\n    stroke-linecap: round;\n    stroke-width: 10px;\n}\n.ct-label {\n    fill: $body-color;\n    color: $body-color;\n    font-size: 0.75rem;\n    margin-top: 6px;\n    font-weight: $font-weight-bold;\n}\n\n.ct-slice-pie {\n    stroke: $white;\n    stroke-width: 3px;\n}\n\n.ct-chart-donut .ct-series {\n    stroke: $white;\n    stroke-width: 3px;\n}\n\n.ct-chart-pie .ct-label, .ct-chart-donut .ct-label {\n    font-size: 0.75rem;\n    font-weight: $font-weight-bold;\n}\n\n.small-chart{\n    margin-left:-1rem;\n}\n\n//Label color Fix for pie chart\n\n.ct-chart-pie .ct-label, .ct-chart-donut .ct-label {\n    color: #ffffff;\n    fill: #ffffff;\n    font-size: $font-size-base;\n    font-weight: $font-weight-bold;\n}\n\n.ct-series-g{\n    .ct-grid {\n        stroke: #F8BD7A;\n        stroke-width: 2px;\n        stroke-dasharray: 2px;\n    }\n    .ct-label.ct-horizontal.ct-end {\n        margin-left:-9px;\n        margin-top:10px;\n        color: $primary;      \n    }\n}\n"
  },
  {
    "path": "static/assets/scss/volt/components/_close.scss",
    "content": "/**\n * = Close\n */\n\n.close { \n    @if $enable-transitions {\n        transition: $transition-base;\n    } \n    &>span:not(.sr-only) {\n        display: block;\n        height: 1.25rem;\n        width: 1.25rem; \n        background-color: $close-bg;\n        color: $close-color;\n        line-height: 17px;\n        border-radius: 50%;\n        font-size: 1.25rem;\n        @if $enable-transitions {\n            transition: $transition-base;\n        } \n    } \n\n    &:hover,\n    &:focus {\n        background-color: $close-hover-bg;\n        color: $close-hover-color;\n        outline: none;\n        \n        span:not(.sr-only) {\n            background-color: $close-hover-bg;\n        }\n    }\n}\n"
  },
  {
    "path": "static/assets/scss/volt/components/_custom-forms.scss",
    "content": "/**\n * = Custom forms\n */\n\n .custom-control-label {\n    // Background-color and (when enabled) gradient\n    &:before {\n        box-shadow: $custom-control-box-shadow;\n        @if $enable-transitions {\n            transition: $input-transition;\n        } \n    }\n\n    span {\n        position: relative;\n        top: 2px;\n    }\n} \n\n.custom-control-label {\n    margin-bottom: 0;\n}\n\n.custom-control-input {\n    &:active~.custom-control-label::before {\n        border-color: $custom-control-indicator-active-border-color;\n    }\n}\n\n// Custom File Input\n\n.custom-file-label {\n    background-color: #f3f3f5;\n  \n    &::after {\n\n      background-color: #f3f3f5;\n    }\n}\n\n\n//Select\n.custom-select{\n    font-size: $input-btn-font-size;\n    box-shadow:none;\n\n    &.custom-select-shadow {\n        box-shadow: $input-box-shadow;\n        transition: box-shadow .15s ease;\n    \n        &:focus {\n            box-shadow: $shadow-input-focus;\n        }\n    }\n\n    &:hover {\n        cursor: pointer;\n    }\n}\n\n// Inbox star\n.rating-star {\n    &.star-lg{\n        label{\n            margin-bottom: .5rem;\n            &::before{\n                font-size: $font-size-xl;\n            }\n        }\n    }\n\tlabel {\n\t\tposition: relative;\n\t\tmargin-bottom: 0;\n\t\tcursor: pointer;\n        color: $light;\n        &:before {\n\t\t\tcontent: \"\\f005\";\n\t\t\tfont-family: \"Font Awesome 5 Free\";\n\t\t\tfont-weight: 900;\n\t\t\ttransition: all .2s ease;\n\t\t\tfont-size: 1.0625rem;\n\t\t}\n\t}\n\tinput {\n\t\tposition: absolute;\n\t\tz-index: -1;\n\t\topacity: 0;\n    }\n\n    >input:checked~label {\n        color: $warning;\n    }\n\n\t>label {\n\t\t&:hover {\n\t\t\tcolor: $warning;\n\t\t}\n\t\t&:hover~label {\n\t\t\tcolor: $warning;\n\t\t}\n\t}\n}\n\n"
  },
  {
    "path": "static/assets/scss/volt/components/_datepicker.scss",
    "content": "/**\n * = Datepickers\n */\n\n .datepicker {\n\n    .datepicker-cell.selected,\n    .datepicker-cell.selected:hover {\n      background: $primary;\n    }\n  \n  }\n  "
  },
  {
    "path": "static/assets/scss/volt/components/_dropdown.scss",
    "content": ".dropdown-menu {\n    .dropdown-header,\n    .dropdown-item {\n        padding: .5rem 1rem;\n        font-size: $dropdown-font-size;\n        .dropdown-icon{\n            height: 1.25rem;\n            width:  1.25rem;\n        }\n    }\n\n    .dropdown-header {\n        color: $dropdown-header-color;\n        font-weight: $dropdown-header-font-weight;\n    }\n\n    .dropdown-item {\n        transition: $transition-base;\n        font-weight: $dropdown-item-font-weight;\n\n    }\n\n    .show & {\n        animation: show-dropdown .2s ease forwards;\n    }\n\n    &.dropdown-menu-xs {\n        min-width: 120px;\n        max-width: 120px;\n        @include box-shadow($box-shadow-sm);\n    }\n\n}\n\n// Dropown sizes\n.dropdown-menu-sm {\n    min-width: 100px;\n    border: $border-radius-lg;\n}\n\n.dropdown-menu-md {\n    min-width: 180px;\n    border: $border-radius-lg;\n}\n\n.dropdown-menu-lg {\n    min-width: 350px;\n    border-radius: $border-radius-lg;\n    @include media-breakpoint-down(sm) {\n        min-width: 300px;\n    }\n}\n\n\n\n// this helps when not only the button should toggle a dropdown\n[data-toggle]:hover {\n    cursor: pointer;\n}\n\n// remove the caret from Bootstrap by default\n.dropdown-toggle {\n    &:after, .dropend &:after, .dropstart &:before, .dropup &:after {\n        display: none;\n    }\n}\n\n\n"
  },
  {
    "path": "static/assets/scss/volt/components/_icons.scss",
    "content": "/**\n * = Icon boxes\n */\n\n .icon {\n\theight: $icon-size;\n\n\t&.icon-xxs {\n\t\theight: $icon-size-xxs;\n\t}\n\n\t&.icon-xs {\n\t\theight: $icon-size-xs;\n\t}\n\t&.icon-sm {\n\t\theight: $icon-size-sm;\n\t}\n\t&.icon-lg {\n\t\theight: $icon-size-lg;\n\t}\n\t&.icon-xl {\n\t\theight: $icon-size-xl;\n\t}\n\t&.icon-xxl {\n\t\theight: $icon-size-xxl;\n\t}\n\n\t&.active-dot {\n\t\tsvg {\n\t\t\theight: 0.7rem;\n\t\t}\n\t}\n}\n\n// Icons included in shapes\n.icon-shape {\n\twidth: $icon-shape;\n\theight: $icon-shape;\n\tdisplay: inline-flex;\n\talign-items: center;\n\tjustify-content: center;\n\n\tsvg {\n\t\theight: $icon-size;\n\t}\n\n\t&.icon-xxs {\n\t\twidth: $icon-shape-xxs;\n\t\theight: $icon-shape-xxs;\n\t\tsvg {\n\t\t\theight: $icon-size-xxs;\n\t\t}\n\t}\n\n\t&.icon-xs {\n\t\twidth: $icon-shape-xs;\n\t\theight: $icon-shape-xs;\n\t\tsvg {\n\t\t\theight: $icon-size-xs;\n\t\t}\n\t}\n\n\t&.icon-sm {\n\t\twidth: $icon-shape-sm;\n\t\theight: $icon-shape-sm;\n\t\tsvg {\n\t\t\theight: $icon-size-sm;\n\t\t}\n\t}\n\n\t&.icon-lg {\n\t\twidth: $icon-shape-lg;\n\t\theight: $icon-shape-lg;\n\t\tsvg {\n\t\t\theight: $icon-size-lg;\n\t\t}\n\t}\n\n\t&.icon-xl {\n\t\twidth: $icon-shape-xl;\n\t\theight: $icon-shape-xl;\n\t\tsvg {\n\t\t\theight: $icon-size-xl;\n\t\t}\n\t}\n\n\t&.icon-xxl {\n\t\twidth: $icon-shape-xxl;\n\t\theight: $icon-shape-xxl;\n\t\tsvg {\n\t\t\theight: $icon-size-xxl;\n\t\t}\n\t}\n}\n\n// Inbox star Icons\n.rating-star {\n\t&:hover {\n\t\tcursor: pointer;\n\t\tcolor: $warning;\n\t}\n}\n\n.toggle-icon {\n\theight: 1.875rem;\n}\n\n//Icons inside table fixed width\n.w--20 {\n\twidth: 20px;\n}\n\n//Calendar Icon\n\n.calendar {\n\twidth: 3.125rem;\n\tline-height: 1;\n\tflex-direction: column;\n\ttext-align: center;\n\tborder-radius: $border-radius;\n\t.calendar-month {\n\t\tbackground-color: $danger;\n\t\tcolor: $white;\n\t\tborder-radius: $border-radius $border-radius 0 0;\n\t\tpadding: 0.275rem;\n\t\tfont-weight: $font-weight-bold;\n\t}\n\t.calendar-day {\n\t\tfont-size: $font-size-xl;\n\t\tpadding: 0.25rem;\n\t\tbackground-color: $gray-100;\n\t\tborder-top: 0;\n\t\tborder-radius: 0 0 $border-radius $border-radius;\n\t\tcolor: $dark;\n\t\tfont-weight: $font-weight-bold;\n\t}\n}\n\n//Legend dot\n\n.dot {\n\twidth: 12px;\n\theight: 12px;\n}\n\n//Bell notification dot\n.bell-dot {\n\tdisplay: inline-block;\n\tposition: absolute;\n\ttop: -11px;\n\tright: 6px;\n\theight: 10px;\n\twidth: 10px;\n\tborder: 2px solid $gray-100;\n}\n\n.notification-bell.unread {\n\t&::before {\n\t\tposition: absolute;\n\t\tcontent: \"\";\n\t\tbackground-color: $danger;\n\t\tright: 12px;\n\t\ttop: 7px;\n\t\theight: 0.75rem;\n\t\twidth: 0.75rem;\n\t\tborder-radius: 50%;\n\t\tborder: 2px solid $gray-100;\n\t}\n}\n\n//Index Big Icon\n.bootstrap-big-icon {\n\tposition: absolute;\n\topacity: 0.05;\n\ttransform: rotate(17deg);\n\t@include media-breakpoint-up(lg) {\n\t\tright: -20%;\n\t\tbottom: 6%;\n\t}\n\n\t@include media-breakpoint-up(xl) {\n\t\tright: -10%;\n\t\tbottom: 6%;\n\t}\n}\n\n.github-big-icon {\n\tposition: absolute;\n\tright: 80px;\n\tsvg {\n\t\tcolor: $gray-400;\n\t\theight:800px;\n\t\topacity: 0.2;\n\t}\n}\n\n//Colors for icons, shapes and svg's\n@each $color, $value in $theme-colors {\n\t.icon-shape-#{$color} {\n\t\t@include icon-shape-variant($value);\n\t}\n}\n"
  },
  {
    "path": "static/assets/scss/volt/components/_images.scss",
    "content": "/**\n * = Images\n */\n .image-xl {\n    height: 20rem;\n    img{\n        height: 20rem;\n    }\n}\n\n.image-lg {\n    height: 12rem;\n    img{\n        height: 12rem;\n    }\n}\n\n.image-md{\n    height: 5.5rem;\n    img{\n        height: 5.5rem;\n    }\n}\n\n.image-sm {\n    height: 3rem;\n    img{\n        height: 3rem;\n    }\n}\n\n.image-xs {\n    height: 1.5rem;\n    img{\n        height: 1.5rem;\n    }\n}\n\n.image-small {\n    height: 1rem;\n    img{\n        height: 1rem;\n    }\n}\n\n.full-image{\n    height:100%;\n}\n\n\n.language-flag{\n    width: auto;\n    height: 1rem;\n    margin-right: 0.4rem;\n    position: relative;\n    top: -2px;\n}\n\n.home-pattern{\n    fill: $gray-100;\n}\n\n.form-bg-image {\n    background-repeat: no-repeat!important;\n    background-position: top center!important;\n}\n\n"
  },
  {
    "path": "static/assets/scss/volt/components/_list-group.scss",
    "content": "/**\n * = List groups\n */\n\n// Space list items\n.list-group-space {\n    .list-group-item {\n        margin-bottom: 1.5rem;\n        @include border-radius($list-group-border-radius);\n    }\n}\n\n\n// List group components\n.list-group-item{\n    border:0;\n    &.active {\n        z-index: 2; // Place active items above their siblings for proper border styling\n        color: $list-group-active-color;\n        background-color: $list-group-active-bg;\n        border-color: $list-group-active-border-color;\n    }\n\n    i{\n        width: 1rem;\n    }\n}\n\n.list-group-img {\n    width: 3rem;\n    height: 3rem;\n    border-radius: 50%;\n    vertical-align: top;\n    margin: -.1rem 1.2rem 0 -.2rem;\n}\n.list-group-content {\n    -webkit-box-flex: 1;\n    -ms-flex: 1;\n    flex: 1;\n    min-width: 0;\n\n    > p {\n        color: $gray-500;\n        line-height: 1.5;\n        margin: .2rem 0 0;\n    }\n}\n.list-group-heading {\n    font-size: $font-size-base;\n    color: $gray-800;\n\n    > small {\n        float: right;\n        color: $gray-500;\n        font-weight: 500;\n    }\n}\n\n\n.list-group{\n    &.simple-list{\n        .list-group-item{\n            background: transparent;\n            border: none;\n            padding: 0.375rem 0.125rem;\n            i{\n                vertical-align: middle;\n                width: 35px;\n                display: inline-block;\n            }\n        }\n    }\n\n}\n\n\n//News list for widgets\n\n.news-list{\n\t.row{\n\t\t> [class*='col']{\n\t  \t\tpadding: 0 $spacer/4;\n\t\t}\n\t}\n\n\t> li{\n\t\t&:not(:last-child){\n\t\t  margin-bottom: .75rem;\n\t\t}\n\t}\n\n\timg{\n\t\tmin-height: 100%;\n\t\tobject-fit: cover;\n\t}\n}\n"
  },
  {
    "path": "static/assets/scss/volt/components/_modal.scss",
    "content": "/**\n * = Modals\n */\n\n.modal{\n    &.static-example{\n        position: relative;\n        display: block;\n    }\n}\n\n.modal-content {\n    border: 0;\n    @if $enable-rounded {\n        border-radius: $modal-content-border-radius;\n    } @else {\n        border-radius: 0;\n    }\n}\n\n.modal-fluid {\n    .modal-dialog {\n        margin-top: 0;\n        margin-bottom: 0;\n    }\n    .modal-content {\n        border-radius: 0;\n    }\n}\n\n@each $color, $value in $theme-colors {\n    .modal-#{$color} {\n        @include modal-variant($value);\n    }\n}\n\n"
  },
  {
    "path": "static/assets/scss/volt/components/_nav.scss",
    "content": "/**\n * = Navs\n */\n\n.nav-link {\n    color: $nav-link-color;\n\n    &:hover,\n    &.active {\n        color: $nav-link-hover-color;\n\n        img {\n            opacity   : inherit;\n            transition: $transition-base;\n        }\n    }\n\n    span {\n        position: relative;\n    }\n}\n\n//Tabs \n\n.nav-tabs {\n    .nav-item {\n        margin-bottom: 0;\n    }\n\n    .nav-link {\n        border          : 0;\n        padding         : 1rem 1rem;\n        background-color: $white;\n\n        &.active {\n            color           : $white;\n            background-color: $primary;\n        }\n    }\n\n    &.nav-dark {\n        .nav-link {\n            &.active {\n                color           : $white;\n                background-color: #12358a;\n            }\n        }\n    }\n\n    &.nav-light {\n        .nav-link {\n            &.active {\n                color           : $black;\n                background-color: $light;\n            }\n\n            &:hover {\n                color: $black;\n            }\n        }\n    }\n}\n\n// Pills \n\n.nav-pills {\n    .nav-item:not(:last-child) {\n        padding-right: $nav-pills-space-x;\n    }\n\n    .nav-link {\n        padding   : $nav-pills-padding-y $nav-pills-padding-x;\n        transition: $transition-base;\n        box-shadow: $nav-link-shadow;\n        border    : $nav-pills-border-width solid $nav-pills-border-color;\n\n        &.avatar-link {\n            border: 0;\n        }\n\n        &:hover {\n            color: $nav-pills-link-hover-color;\n        }\n    }\n\n    .nav-link.active,\n    .show>.nav-link {\n        color           : $nav-pills-link-active-color;\n        background-color: $nav-pills-link-active-bg;\n        border-color    : $nav-pills-link-active-color;\n    }\n\n    &.rounded {\n        .nav-link {\n            border-radius: 30px;\n        }\n\n        &.vertical-tab {\n            .nav-link {\n                margin-bottom: .625rem;\n                min-width    : 100px;\n            }\n\n            .nav-item:not(:last-child) {\n                padding-right: 0;\n            }\n        }\n    }\n\n    &.bordered-pill-md {\n        .nav-link {\n            border     : $border-width-md solid $gray-200;\n            font-weight: $font-weight-bold;\n        }\n    }\n\n    &.vertical-tab {\n        .nav-link {\n            margin-bottom: .625rem;\n        }\n\n        .nav-item:not(:last-child) {\n            padding-right: 0;\n        }\n    }\n\n    @include media-breakpoint-down(xs) {\n        .nav-item {\n            margin-bottom: $spacer;\n        }\n    }\n}\n\n@include media-breakpoint-down(sm) {\n    .nav-pills:not(.nav-pills-circle) {\n        .nav-item {\n            padding-right: 0;\n        }\n    }\n}\n\n\n// Navs circle\n\n.nav-pill-circle {\n    .nav-link {\n        @include display-flex();\n        text-align     : center;\n        height         : 80px;\n        width          : 80px;\n        padding        : 0;\n        box-shadow     : $nav-link-shadow;\n        border-radius  : $nav-pills-border-circle;\n        align-items    : center;\n        justify-content: center;\n\n        &.avatar-link {\n            box-shadow: none;\n        }\n    }\n\n    &.vertical-tab {\n        .nav-link-icon {\n\n            i,\n            svg {\n                font-size: 1.5rem;\n            }\n        }\n\n        .nav-item:not(:last-child) {\n            padding-right: 0;\n        }\n    }\n\n    .nav-link-icon {\n\n        i,\n        svg {\n            font-size: 1.25rem;\n            margin   : 0;\n            display  : block;\n        }\n    }\n}\n\n// Navs square\n\n.nav-pill-square {\n    .nav-link {\n        text-align: center;\n        min-width : 80px;\n        box-shadow: $nav-link-shadow;\n        @include display-flex();\n        align-items    : center;\n        justify-content: center;\n    }\n\n    &.vertical-tab {\n        .nav-link {\n            margin-bottom: .625rem;\n            min-width    : 100px;\n        }\n\n        .nav-item:not(:last-child) {\n            padding-right: 0;\n        }\n    }\n\n    .nav-link-icon {\n\n        i,\n        svg {\n            font-size  : 1.25rem;\n            margin     : 0;\n            display    : block;\n            line-height: 50px;\n        }\n    }\n}\n\n// Nav wrapper \n.nav-wrapper {\n    padding: 1rem 0;\n    @include border-top-radius($card-border-radius);\n\n    +.card {\n        @include border-top-radius(0);\n        @include border-bottom-radius($card-border-radius);\n    }\n}\n\n// Tabbable tabs\n//\n// Hide tabbable panes to start, show them when `.active`\n\n.tab-content {\n    >.tab-pane {\n        display: none;\n\n        pre {\n            padding: 0;\n            margin : 0;\n        }\n    }\n\n    >.active {\n        display: block;\n    }\n}\n\n.nav-pills .nav-item {\n    @include media-breakpoint-up(lg) {\n        margin-bottom: 0;\n    }\n}"
  },
  {
    "path": "static/assets/scss/volt/components/_pagination.scss",
    "content": "/**\n * = Paginations\n */\n .circle-pagination{\n    .page-link,\n    span{\n        @include display-flex();\n        align-items: center;\n        justify-content: center;\n        width: 34px;\n        height: 34px;\n        padding: 0;\n        @include border-radius($circle-radius);\n    }\n}\n\n"
  },
  {
    "path": "static/assets/scss/volt/components/_popover.scss",
    "content": "/**\n * = Popovers\n */\n\n.popover {\n    border: 0;\n}\n\n\n.popover-header {\n\tfont-weight: $font-weight-bold;\n}\n\n// Alternative colors\n@each $color, $value in $theme-colors {\n    .popover-#{$color} {\n        @include popover-variant($value);\n    }\n}"
  },
  {
    "path": "static/assets/scss/volt/components/_progress.scss",
    "content": "/**\n * = Progress bars\n */\n\n.progress-wrapper {\n    position: relative;\n}\n\n.progress-bar {\n    box-shadow: none;\n    border-radius: 0;\n    height: auto;\n}\n\n.progress {\n    height: 6px;\n    margin-bottom: $spacer;\n    overflow: hidden;\n    background-color: $progress-bg;\n    font-size: $font-size-xs;\n    font-weight: $font-weight-bold;\n    @include box-shadow(inset 0 1px 2px rgba(0, 0, 0, .1))\n}\n\n.progress-xl {\n    height: $progress-xl-size;\n}\n.progress-lg {\n    height: $progress-lg-size;\n}\n.progress-sm {\n    height: $progress-sm-size;\n}\n\n.progress-info{\n    @include display-flex();\n    @include align-items(center);\n    @include justify-content(space-between);\n    margin-bottom: .5rem;\n\n    .progress-label {\n        span {\n            display: inline-block;\n            color: $primary;\n            font-size: $font-size-sm;\n            font-weight: $font-weight-bold;\n        }\n    }\n    \n    .progress-percentage {\n        text-align: right;\n        span {\n            display: inline-block;\n            color: $gray-500;\n            font-size: $font-size-xs;\n            font-weight: $font-weight-bold;\n        }\n    }\n}\n\n.info-xl{\n    .progress-label,\n    .progress-percentage {\n        span {\n            font-size: $font-size-sm;\n        }\n    }\n\n    .progress-percentage {\n        text-align: right;\n    }\n\n}\n\n.progress-tooltip {\n    background: $primary;\n    color: $white;\n    font-weight: $font-weight-bold;\n    padding: .25rem .375rem;\n    line-height: 1;\n    font-size: $font-size-xs;\n    position: relative;\n    border-radius: $border-radius-sm;\n\n    &:after {\n        content: \" \";\n        position: absolute;\n        top: 100%;\n        left: 10px;\n        border: solid transparent;\n        height: 0;\n        width: 0;\n        pointer-events: none;\n        border-top-color: $gray;\n        border-width: 6px;\n    }\n}\n\n@-webkit-keyframes animate-positive{\n    0% { width: 0%; }\n}\n@keyframes animate-positive{\n    0% { width: 0%; }\n}\n\n//Tooltip arrow color\n@each $color,\n$value in $theme-colors {\n    .progress-info{\n        .bg-#{$color} {\n            &::after{\n                border-top-color: $value;\n            }\n        }\n    }\n}\n"
  },
  {
    "path": "static/assets/scss/volt/components/_scrollbar.scss",
    "content": "[data-simplebar] {\n    position: fixed;\n    flex-direction: column;\n    flex-wrap: wrap;\n    justify-content: flex-start;\n    align-content: flex-start;\n    align-items: flex-start;\n  }\n  \n  .simplebar-wrapper {\n    overflow: hidden;\n    width: inherit;\n    height: inherit;\n    max-width: inherit;\n    max-height: inherit;\n  }\n  \n  .simplebar-mask {\n    direction: inherit;\n    position: absolute;\n    overflow: hidden;\n    padding: 0;\n    margin: 0;\n    left: 0;\n    top: 0;\n    bottom: 0;\n    right: 0;\n    width: auto !important;\n    height: auto !important;\n    z-index: 0;\n  }\n  \n  .simplebar-offset {\n    direction: inherit !important;\n    box-sizing: inherit !important;\n    resize: none !important;\n    position: absolute;\n    top: 0;\n    left: 0;\n    bottom: 0;\n    right: 0;\n    padding: 0;\n    margin: 0;\n    -webkit-overflow-scrolling: touch;\n  }\n  \n  .simplebar-content-wrapper {\n    direction: inherit;\n    box-sizing: border-box !important;\n    position: relative;\n    display: block;\n    height: 100%; /* Required for horizontal native scrollbar to not appear if parent is taller than natural height */\n    width: auto;\n    max-width: 100%; /* Not required for horizontal scroll to trigger */\n    max-height: 100%; /* Needed for vertical scroll to trigger */\n    scrollbar-width: none;\n    -ms-overflow-style: none;\n  }\n  \n  .simplebar-content-wrapper::-webkit-scrollbar,\n  .simplebar-hide-scrollbar::-webkit-scrollbar {\n    width: 0;\n    height: 0;\n  }\n  \n  .simplebar-content:before,\n  .simplebar-content:after {\n    content: ' ';\n    display: table;\n  }\n  \n  .simplebar-placeholder {\n    max-height: 100%;\n    max-width: 100%;\n    width: 100%;\n    pointer-events: none;\n  }\n  \n  .simplebar-height-auto-observer-wrapper {\n    box-sizing: inherit !important;\n    height: 100%;\n    width: 100%;\n    max-width: 1px;\n    position: relative;\n    float: left;\n    max-height: 1px;\n    overflow: hidden;\n    z-index: -1;\n    padding: 0;\n    margin: 0;\n    pointer-events: none;\n    flex-grow: inherit;\n    flex-shrink: 0;\n    flex-basis: 0;\n  }\n  \n  .simplebar-height-auto-observer {\n    box-sizing: inherit;\n    display: block;\n    opacity: 0;\n    position: absolute;\n    top: 0;\n    left: 0;\n    height: 1000%;\n    width: 1000%;\n    min-height: 1px;\n    min-width: 1px;\n    overflow: hidden;\n    pointer-events: none;\n    z-index: -1;\n  }\n  \n  .simplebar-track {\n    z-index: 1;\n    position: absolute;\n    right: 0;\n    bottom: 0;\n    pointer-events: none;\n    overflow: hidden;\n  }\n  \n  [data-simplebar].simplebar-dragging .simplebar-content {\n    pointer-events: none;\n    user-select: none;\n    -webkit-user-select: none;\n  }\n  \n  [data-simplebar].simplebar-dragging .simplebar-track {\n    pointer-events: all;\n  }\n  \n  .simplebar-scrollbar {\n    position: absolute;\n    left: 0;\n    right: 0;\n    min-height: 10px;\n  }\n  \n  .simplebar-scrollbar:before {\n    position: absolute;\n    content: '';\n    background: black;\n    border-radius: 7px;\n    left: 2px;\n    right: 2px;\n    opacity: 0;\n    transition: opacity 0.2s 0.5s linear;\n  }\n  \n  .simplebar-scrolling .simplebar-scrollbar:before,\n  .simplebar-hover .simplebar-scrollbar:before,\n  .simplebar-mouse-entered .simplebar-scrollbar:before {\n    opacity: 0.5;\n    transition-delay: 0s;\n    transition-duration: 0s;\n  }\n  \n  .simplebar-scrollbar.simplebar-visible:before {\n    /* When hovered, remove all transitions from drag handle */\n    opacity: 0.5;\n    transition-delay: 0s;\n    transition-duration: 0s;\n  }\n  \n  .simplebar-track.simplebar-vertical {\n    top: 0;\n    width: 11px;\n  }\n  \n  .simplebar-scrollbar:before {\n    top: 2px;\n    bottom: 2px;\n    left: 2px;\n    right: 2px;\n  }\n  \n  .simplebar-track.simplebar-horizontal {\n    left: 0;\n    height: 11px;\n  }\n  \n  .simplebar-track.simplebar-horizontal .simplebar-scrollbar {\n    right: auto;\n    left: 0;\n    top: 0;\n    bottom: 0;\n    min-height: 0;\n    min-width: 10px;\n    width: auto;\n  }\n  \n  /* Rtl support */\n  [data-simplebar-direction='rtl'] .simplebar-track.simplebar-vertical {\n    right: auto;\n    left: 0;\n  }\n  \n  .simplebar-dummy-scrollbar-size {\n    direction: rtl;\n    position: fixed;\n    opacity: 0;\n    visibility: hidden;\n    height: 500px;\n    width: 500px;\n    overflow-y: hidden;\n    overflow-x: scroll;\n    -ms-overflow-style: scrollbar !important;\n  }\n  \n  .simplebar-dummy-scrollbar-size > div {\n    width: 200%;\n    height: 200%;\n    margin: 10px 0;\n  }\n  \n  .simplebar-hide-scrollbar {\n    position: fixed;\n    left: 0;\n    visibility: hidden;\n    overflow-y: scroll;\n    scrollbar-width: none;\n    -ms-overflow-style: none;\n  }\n  \n  .simplebar-scrollbar::before {\n    background-color: darken($dark, 10%);\n  }\n  "
  },
  {
    "path": "static/assets/scss/volt/components/_shapes.scss",
    "content": "/**\n * = Shapes\n */\n\n.avatar-sm {\n    width: $avatar-sm-y;\n    height: $avatar-sm-x;\n}\n\n.avatar-md {\n    width: $avatar-md-y;\n    height: $avatar-md-x;\n}\n\n.avatar-lg {\n    width: $avatar-lg-y;\n    height: $avatar-lg-x;\n}\n"
  },
  {
    "path": "static/assets/scss/volt/components/_steps.scss",
    "content": "/**steps\n * = Accordions\n */\n\n.step{\n    position: relative;\n    margin-bottom: 4rem;\n    border-radius: 6px;\n\n    .step-shape{\n        display: inline-flex;\n        width: $step-shape-size;\n        height: $step-shape-size;\n        text-align: center;\n        @include align-items(center);\n        @include justify-content(center);\n\n        i, svg {\n            font-size: $icon-size;\n        }\n\n        .step-number{\n            position: absolute;\n            font-weight: $font-weight-bold;\n            top: -10px;\n            width: 32px;\n            height: 32px;\n            border-width: $step-border-width;\n            border-style: solid;\n            line-height: 1.7;\n        }\n\n        &.bordered {\n            border-width: $step-border-width;\n            border-style: solid;\n\n            .step-number {\n                background-color: $white;\n                top:-12px;\n            }\n        }\n\n        &.rounded-circle{\n            .step-number{\n                margin-right:1.275rem;\n            }\n        }\n    }\n\n    .icon-lg{\n        font-size: $step-icon-size;\n    }\n\n    .back-layer{\n        @include display-flex();\n        position: absolute;\n        font-size: $step-number-size;\n        z-index: 0;\n        top: 0;\n    }\n}\n"
  },
  {
    "path": "static/assets/scss/volt/components/_tables.scss",
    "content": "// General styles\n\n.table {\n\n  thead th {\n      padding-top: $table-head-spacer-y;\n      padding-bottom: $table-head-spacer-y;\n      font-size: $table-head-font-size;\n      text-transform: $table-head-text-transform;\n      font-weight: $font-weight-bolder;\n      border-top: 0;\n  }\n\n  th {\n      font-weight: $font-weight-bold;\n      padding:1rem;\n  }\n\n  td {\n      .progress {\n          height: 3px;\n          width: 120px;\n          margin: 0;\n      }\n  }\n\n  td,\n  th {\n      font-size: $table-body-font-size;\n      white-space: nowrap;\n  }\n\n  // User Table\n\n  &.user-table{\n    thead th{\n        border-top:0;\n    }\n  }\n\n  // Vetical align table content\n\n  &.align-items-center {\n      td,\n      th {\n          vertical-align: middle;\n      }\n  }\n\n\n // Styles for dark table\n\n .thead-dark {\n      th {\n          background-color: $gray-800;\n          color: $white;\n\n          a {\n              color: $dark;\n          }\n      }\n  }\n\n\n  // Styles for light table\n\n  .thead-light {\n      th {\n          background-color: $gray-100;\n          color: $dark;\n\n          a {\n              color: $dark;\n          }\n      }\n  }\n}\n\n\n// Add transition for hover state\n\n.table-hover {\n  tr {\n      @include transition($transition-base);\n  }\n}\n\n\n// Flush tables\n\n.table-flush {\n  td,\n  th {\n      border-left: 0;\n      border-right: 0;\n  }\n\n  tbody {\n      tr {\n          &:first-child {\n              td,\n              th {\n                  border-top: 0;\n              }\n          }\n\n          &:last-child {\n              td,\n              th {\n                  border-bottom: 0;\n              }\n          }\n      }\n  }\n}\n\n\n// Tables inside cards\n\n.card {\n  .table {\n      margin-bottom: 0;\n\n      td,\n      th {\n          padding-left: $card-spacer-x;\n          padding-right: $card-spacer-x;\n      }\n  }\n}\n  \n.table  {\n    [data-sort] {\n        cursor: pointer;\n    }\n\n    .custom-toggle {\n        display: block;\n    }\n  \n    .thead-dark {\n        [data-sort] {\n            &::after {\n                content: str-replace(url(\"data:image/svg+xml;utf8,<svg width='6' height='10' viewBox='0 0 6 10' fill='none' xmlns='http://www.w3.org/2000/svg'><path fill-rule='evenodd' clip-rule='evenodd' d='M3 0L6 4H0L3 0ZM3 10L0 6H6L3 10Z' fill='#{$dark}'/></svg>\"), \"#\", \"%23\");\n                margin-left: .25rem;\n            }\n        }\n    }\n\n    .thead-light {\n        [data-sort] {\n            &::after {\n                content: str-replace(url(\"data:image/svg+xml;utf8,<svg width='6' height='10' viewBox='0 0 6 10' fill='none' xmlns='http://www.w3.org/2000/svg'><path fill-rule='evenodd' clip-rule='evenodd' d='M3 0L6 4H0L3 0ZM3 10L0 6H6L3 10Z' fill='#{$dark}'/></svg>\"), \"#\", \"%23\");\n                margin-left: .25rem;\n            }\n        }\n    } \n}\n\n.dataTables_wrapper {\n\n    .dataTables_info{\n        padding-left: 1.5rem;\n    }\n\n    .dataTables_paginate{\n        padding-right: 1.5rem;\n    }\n    \n    .dataTables_length {\n        label{\n            padding-left:1.5rem;\n        }\n    }\n\n    .dataTables_filter {\n        padding-right: 1.5rem;\n    }\n}\n\n.dataTable-top,\n.dataTable-bottom {\n    display: flex;\n    width: 100%;\n    justify-content: space-between;\n\n    @include media-breakpoint-down(md) {\n        flex-direction: column;\n\n        .dataTable-info {\n            margin-bottom: 1rem;\n        }\n    }\n}\n\n.dataTable-top {\n    padding: 0 0 1rem 0;\n}\n\n.dataTable-bottom {\n    padding: 1.5rem 0 0 0;\n}\n\n.dataTable-pagination {\n    display: flex;\n    @include list-unstyled();\n\n    a {\n        padding: $pagination-padding-y $pagination-padding-x;\n        @include font-size(null);\n    }\n    \n    li {\n    @if $pagination-margin-left == (-$pagination-border-width) {\n        &:first-child {\n        a {\n            @include border-start-radius($pagination-border-radius);\n        }\n        }\n\n        &:last-child {\n        a {\n            @include border-end-radius($pagination-border-radius);\n        }\n        }\n    } @else {\n        //Add border-radius to all pageLinks in case they have left margin\n        a {\n        @include border-radius($pagination-border-radius);\n        }\n    }\n    }\n\n    > li {\n        &:not(:first-child) a {\n            margin-left: $pagination-margin-left;\n          }\n        \n          &.active a {\n            z-index: 3;\n            color: $pagination-active-color;\n            @include gradient-bg($pagination-active-bg);\n            border-color: $pagination-active-border-color;\n          }\n        \n          &.disabled a {\n            color: $pagination-disabled-color;\n            pointer-events: none;\n            background-color: $pagination-disabled-bg;\n            border-color: $pagination-disabled-border-color;\n          }\n\n          a {\n            position: relative;\n            display: block;\n            color: $pagination-color;\n            text-decoration: if($link-decoration == none, null, none);\n            background-color: $pagination-bg;\n            border: $pagination-border-width solid $pagination-border-color;\n          \n            &:hover {\n              z-index: 2;\n              color: $pagination-hover-color;\n              text-decoration: if($link-hover-decoration == underline, none, null);\n              background-color: $pagination-hover-bg;\n              border-color: $pagination-hover-border-color;\n            }\n          \n            &:focus {\n              z-index: 3;\n              outline: $pagination-focus-outline;\n              box-shadow: $pagination-focus-box-shadow;\n            }\n          }\n    }\n}\n\n.dataTable-selector {\n    display: inline-block;\n    width: auto;\n    height: $form-select-height;\n    padding: $form-select-padding-y ($form-select-padding-x + $form-select-indicator-padding) $form-select-padding-y $form-select-padding-x;\n    font-family: $form-select-font-family;\n    @include font-size($form-select-font-size);\n    font-weight: $form-select-font-weight;\n    line-height: $form-select-line-height;\n    color: $form-select-color;\n    vertical-align: middle;\n    background-color: $form-select-bg;\n    background-image: escape-svg($form-select-indicator);\n    background-repeat: no-repeat;\n    background-position: $form-select-bg-position;\n    background-size: $form-select-bg-size;\n    border: $form-select-border-width solid $form-select-border-color;\n    @include border-radius($form-select-border-radius, 0);\n    @include box-shadow($form-select-box-shadow);\n    appearance: none;\n\n    &:focus {\n        border-color: $form-select-focus-border-color;\n        outline: 0;\n        @if $enable-shadows {\n        @include box-shadow($form-select-box-shadow, $form-select-focus-box-shadow);\n        } @else {\n        // Avoid using mixin so we can pass custom focus shadow properly\n        box-shadow: $form-select-focus-box-shadow;\n        }\n\n        &::-ms-value {\n        // For visual consistency with other platforms/browsers,\n        // suppress the default white text on blue background highlight given to\n        // the selected option text when the (still closed) <select> receives focus\n        // in Edge.\n        // See https://github.com/twbs/bootstrap/issues/19398.\n        color: $input-color;\n        background-color: $input-bg;\n        }\n    }\n\n    &[multiple],\n    &[size]:not([size=\"1\"]) {\n        height: auto;\n        padding-right: $form-select-padding-x;\n        background-image: none;\n    }\n\n    &:disabled {\n        color: $form-select-disabled-color;\n        background-color: $form-select-disabled-bg;\n        border-color: $form-select-disabled-border-color;\n    }\n\n    // Remove outline from select box in FF\n    &:-moz-focusring {\n        color: transparent;\n        text-shadow: 0 0 0 $form-select-color;\n    }\n}\n\n.dataTable-input {\n    display: block;\n    width: 100%;\n    min-height: $input-height;\n    padding: $input-padding-y $input-padding-x;\n    font-family: $input-font-family;\n    @include font-size($input-font-size);\n    font-weight: $input-font-weight;\n    line-height: $input-line-height;\n    color: $input-color;\n    background-color: $input-bg;\n    background-clip: padding-box;\n    border: $input-border-width solid $input-border-color;\n    appearance: none; // Fix appearance for date inputs in Safari\n\n    // Note: This has no effect on <select>s in some browsers, due to the limited stylability of `<select>`s in CSS.\n    @include border-radius($input-border-radius, 0);\n\n    @include box-shadow($input-box-shadow);\n    @include transition($input-transition);\n\n    // Customize the `:focus` state to imitate native WebKit styles.\n    &:focus {\n        color: $input-focus-color;\n        background-color: $input-focus-bg;\n        border-color: $input-focus-border-color;\n        outline: 0;\n        @if $enable-shadows {\n        @include box-shadow($input-box-shadow, $input-focus-box-shadow);\n        } @else {\n        // Avoid using mixin so we can pass custom focus shadow properly\n        box-shadow: $input-focus-box-shadow;\n        }\n    }\n\n    // Placeholder\n    &::placeholder {\n        color: $input-placeholder-color;\n        // Override Firefox's unusual default opacity; see https://github.com/twbs/bootstrap/pull/11526.\n        opacity: 1;\n    }\n\n    // Disabled and read-only inputs\n    //\n    // HTML5 says that controls under a fieldset > legend:first-child won't be\n    // disabled if the fieldset is disabled. Due to implementation difficulty, we\n    // don't honor that edge case; we style them as disabled anyway.\n    &:disabled,\n    &[readonly] {\n        background-color: $input-disabled-bg;\n        border-color: $input-disabled-border-color;\n        // iOS fix for unreadable disabled content; see https://github.com/twbs/bootstrap/issues/11655.\n        opacity: 1;\n    }\n}"
  },
  {
    "path": "static/assets/scss/volt/components/_timelines.scss",
    "content": "/**\n * = Timelines\n */\n\n.list-group-timeline {\n    .list-group-item {\n        position: relative;\n        .col-auto{\n            z-index: 999;\n        }\n        &:not(:last-child){\n            &::before {\n                content: '';\n                position: absolute;\n                top: 1rem;\n                left: 2.5rem;\n                height: 100%;\n                border-left: 1px solid $light;\n            }\n        }\n    }\n}\n"
  },
  {
    "path": "static/assets/scss/volt/components/_tooltip.scss",
    "content": "// Wrapper for the tooltip content\n\n.tooltip-inner {\n    @include box-shadow($box-shadow);\n}\n\n.chartist-tooltip {\n    position: absolute;\n    display: inline-block;\n    opacity: 0;\n    min-width: 5em;\n    padding: .5em;\n    background: $gray-100;\n    border: 1px solid $gray-100;\n    border-radius: $border-radius;\n    color: $dark;\n    font-weight: $font-weight-bold;\n    text-align: center;\n    pointer-events: none;\n    z-index: 1;\n    transition: $transition-base;\n}\n\n.chartist-tooltip:before {\n    content: \"\";\n    position: absolute;\n    top: 100%;\n    left: 50%;\n    width: 0;\n    height: 0;\n    margin-left: -15px;\n    border: 15px solid transparent;\n    border-top-color: $gray-100;\n}\n\n.chartist-tooltip.tooltip-show {\n    opacity: 1;\n}\n  \n.ct-area, .ct-line {\n    pointer-events: none;\n}\n  "
  },
  {
    "path": "static/assets/scss/volt/components/_type.scss",
    "content": "/**\n * = Typography\n */\n\nh1,h2,h3,h4,h5,h6,\n.h1, .h2, .h3, .h4, .h5, .h6 {\n\tfont-family: $font-family-sans-serif;\n\tfont-weight: $headings-font-weight;\n}\n\np, ol li, ul li, .p {\n\tfont-family: $font-family-base;\n\tfont-size: $paragraph-font-size;\n\tfont-weight: $font-weight-normal;\n\tline-height: $paragraph-line-height;\n}\n\na, .text-action {\n\tcolor: $link-color;\n\ttransition: $transition-base;\n\t&:hover{\n\t\tcolor: $link-hover-color;\n\t\tcursor: pointer;\n\t}\n}\n\n.lead {\n\t+ .btn-wrapper {\n\t\tmargin-top: 3rem;\n\t}\n\t@include media-breakpoint-down(md){\n\t\tfont-size: $font-size-base;\n\t}\n}\n\n.line-through{\n\t-webkit-text-decoration: line-through;\n    text-decoration: line-through;\n}\n\n.text-italic{\n\tfont-style: italic !important;\n}\n\n.description {\n\tfont-size: $font-size-sm;\n}\n\n// underline on hover\n\n.hover\\:underline{\n\t&:hover{\n\t\ttext-decoration: underline;\n\t}\n}\n// Headings\n\n.heading {\n\tfont-size: $h2-font-size;\n\tfont-weight: $font-weight-bold;\n}\n\n\n\n@include media-breakpoint-down(md){\n\t.display-2{\n\t  font-size: $display4-size;\n\t}\n}\n\n@include media-breakpoint-down(lg){\n\t.display-3{\n\t  font-size: $display4-size;\n\n\t}\n}\n  \n@include media-breakpoint-down(sm){\n\t.display-4{\n\t\tfont-size: $h4-font-size;\n\t}\n}\n\n// Blockquotes\n.blockquote {\n\tfont-style: italic;\n\t&.blockquote-large{\n\n\t\t@include media-breakpoint-down(md) {\n\t\t\tfont-size: $font-size-lg;\n\t\t}\n\t}\n \t.blockquote-footer{\n\t\tfont-size: $font-size-sm;\n\t\tfont-weight: $font-weight-bolder;\n\n\t\t@include media-breakpoint-down(md) {\n\t\t\tfont-size: $font-size-lg;\n\t\t}\n\t}\n}\n\n// Font Sizes\n\n.font-small {\n  @include font-size($font-size-sm);\n  font-weight: $font-weight-light;\n}\n\n.font-base{\n\t@include font-size($font-size-base);\n\tfont-weight: $font-weight-light;\n}\n\n.font-medium {\n\t@include font-size($font-size-lg);\n\tfont-weight: $font-weight-light;\n}\n\n\n//PrismJs text\t\n\ncode[class*=\"language-\"], pre[class*=\"language-\"]{\n\ttext-shadow: none;\n\tfont-family: $font-family-base;\n\tfont-weight: $font-weight-bold;\n}\n\n// Set color of theme buttons\n@each $color, $value in $theme-colors {\n\t.text-#{$color} {\n        &, &:hover {\n\t\t\tcolor: $value !important;\n\t\t}\n\n\t\ta:not(.btn),h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6,.display-1, .display-2, .display-3, .display-4{\n\t\t\tcolor: $value;\n\t\t  }\n\t\t  .text-muted{\n\t\t\tcolor: rgba($value,.7) !important;\n\t\t  }\n    }\n}\n\n\narticle {\n\timg {\n\t\tmargin: 40px 0;\n\t}\n\tp, ul, ol, blockquote {\n\t\tmargin-bottom: 20px;\n\t}\n\tp, ul li, ol li {\n\t\tfont-size: 1.2rem;\n\t}\n\th1, h2, h3, h4, h5, h6,\n\t.h1, .h2, .h3, .h4, .h5, .h6 {\n\t\tmargin-bottom: 30px;\n\t}\n}\n\n.folder-structure li {\n\tfont-size: 1.2rem;\n}\n\n.truncate-text {\n\twhite-space: nowrap;\n\toverflow: hidden;\n\ttext-overflow: ellipsis;\n}"
  },
  {
    "path": "static/assets/scss/volt/forms/_form-check.scss",
    "content": ".form-check-input {\n    &.round-check{\n        &[type=\"checkbox\"] {\n            @include border-radius($form-check-radio-border-radius);\n          }\n    }\n}\n\n.form-switch {\n    padding-left: $form-switch-padding-left;\n  \n    .form-check-input {\n        height: 1.275em;\n    }\n}\n"
  },
  {
    "path": "static/assets/scss/volt/forms/_form-control.scss",
    "content": ".form-control{\n\n    @include media-breakpoint-up(lg) {\n        &.form-control-lg{\n            padding: $inpu-lg-padding-y $input-padding-x;\n        }\n    }\n\n}\n\n.search-bar {\n    .form-control {\n        width: 280px;\n        transition: width .2s ease-in-out;\n\n        @include media-breakpoint-down(sm) {\n            width: 120px;\n\n            &:focus {\n                width: 150px;\n            }\n        }\n    }\n}\n\n"
  },
  {
    "path": "static/assets/scss/volt/forms/_form-select.scss",
    "content": ".form-select {\n    .form-select-lg{\n        padding: $form-select-padding-y ($form-select-padding-x + $form-select-indicator-padding) $form-select-padding-y $form-select-padding-x;\n    }\n}\n\n//Add File Alternative Style\n\n.file-field input[type=\"file\"] {\n    max-width: 230px;\n    position: absolute;\n    cursor: pointer;\n    filter: alpha(opacity=0);\n    opacity: 0;\n    padding-bottom: 30px;\n}\n.file-field svg {\n    cursor: pointer;\n}\n\n.datepicker-dropdown {\n    z-index: 9999;\n}"
  },
  {
    "path": "static/assets/scss/volt/forms/_input-group.scss",
    "content": ".input-group {\n    .form-control:focus {\n        border-color: $input-border-color;\n\n        & + .input-group-text {\n            border-color: $input-border-color; \n        }\n    }\n}\n\n.input-group-text{\n    @include box-shadow($input-box-shadow);\n}"
  },
  {
    "path": "static/assets/scss/volt/layout/_footer.scss",
    "content": "/**\n * = Footers\n */\n\n .footer{\n\n    ul{\n        margin-bottom: 0;\n        padding: 0;\n        list-style: none;\n\n        li{\n            display: inline-block;\n\n            a {\n                text-decoration: none;\n                position: relative;\n                display: block;\n                color: $gray-700;\n\n                &:hover {\n                    color: $primary;\n                }\n            }\n\n            .btn {\n                margin: 0;\n            }\n        }\n\n        &.links-horizontal{\n            &:first-child a{\n                padding-left: 0;\n            }\n\n            &:last-child a{\n                padding-right: 0;\n            }\n\n        }\n\n        &.links-vertical{\n            li{\n                display: block;\n                margin-left: -5px;\n                margin-right: -5px;\n\n                a{\n                    padding: 5px;\n\n                    &:hover{\n                        color: inherit !important;\n                    }\n                }\n            }\n        }\n\n        &.icon-box{\n            i{\n                line-height: 1.7\n            }\n        }\n    }\n\n    .social-buttons{\n        a,\n        .btn{\n            margin-top: 5px;\n            margin-bottom: 5px;\n            padding: $padding-footer-sm $padding-footer;\n        }\n    }\n\n    .footer-brand{\n        font-size: $font-size-lg;\n        font-weight: $font-weight-bold;\n        \n        img.common {\n            height: 40px;\n        }\n    \n        img {\n            height: 40px;\n            width: 40px;\n        }\n        &:hover,\n        &:focus{\n            color: $black;\n        }\n    }\n    .footer-language-link{\n        font-size:$font-size-sm;\n        i{\n            font-size: 0.75rem;\n        }\n    }\n    .copyright{\n        font-size: $font-size-sm;\n    }\n\n    .pull-center{\n        display: inline-block;\n        float: none;\n    }\n}"
  },
  {
    "path": "static/assets/scss/volt/layout/_navbar.scss",
    "content": "/**\n * = Navigation bars\n */\n\n .navbar-main {\n    position: absolute;\n    top: 0;\n    width: 100%;\n    z-index: 100;\n\n    .navbar-toggler-icon {\n        background-image: $navbar-dark-toggler-icon-bg;\n    }\n}\n\n.navbar .navbar-nav {\n\n    .nav-link {\n        @include transitions(.8s, $transition-base);\n\n        @include media-breakpoint-down(md) {\n            font-size: 1.2rem;\n            @include display-flex();\n            @include justify-content(space-between);\n            @include align-items(center);\n        }\n\n    }\n\n    .nav-item {\n        .media:not(:last-child){\n            margin-bottom: 1.5rem;\n        }\n        &:focus,\n        .nav-link:focus {\n            outline: none !important;\n        }\n    }\n\n    .dropdown {\n\n        .dropdown-menu {\n            top: 100%;\n            span{\n                width: 30px;\n            }\n        }\n\n        .dropdown-item {\n            font-size: 0.875rem;\n        }\n\n    }\n\n    .dropdown-megamenu,\n    .dropdown-megamenu-sm,\n    .dropdown-megamenu-md {\n        @include media-breakpoint-up(lg) {\n            min-width: 580px;\n        }\n\n        .megamenu-link {\n            color: $gray;\n            font-weight: 400;\n            font-size: $font-size-sm;\n        }\n\n        .megamenu-item {\n            position: relative;\n\n            &:hover {\n                \n                .megamenu-link {\n                    color: $primary;\n                }\n                \n            }\n            \n        }\n    }\n\n    .dropdown-megamenu-sm {\n        @include media-breakpoint-up(lg) {\n            min-width: 320px;\n        }\n    }\n\n    .dropdown-megamenu-md {\n        @include media-breakpoint-up(lg) {\n            min-width: 960px;\n        }\n    }\n\n    @include media-breakpoint-up(lg) {\n        .dropdown-menu {\n            .dropdown-toggle .nav-link-arrow {\n                @include transform(rotate(-90deg));\n            }\n        }\n\n        .dropdown.show > .dropdown-toggle .nav-link-arrow {\n            @include transform(rotate(180deg));\n        }\n\n        .dropdown-toggle:hover .nav-link-arrow {\n            @include transform(rotate(0deg));\n        }\n\n    }\n\n    .dropdown-submenu {\n        position: relative;\n\n        .dropdown-menu {\n            top: 0;\n            left: calc(100% - 2px);\n            margin-left: .1rem;\n            margin-right: .1rem;\n            opacity: 0;\n            display: none;\n\n            &.show {\n                opacity: 1;\n                pointer-events: all;\n                display: block;\n            }\n\n        }\n\n    }\n\n    .nav-link-arrow {\n        transition: $transition-transform;\n    }\n\n}\n\n.navbar-brand {\n    font-size: $font-size-sm;\n    font-weight: $font-weight-bold;\n    text-transform: uppercase;\n\n    img {\n        height: 40px;\n    }\n}\n\n// Navbar text and logo dark & light\n.navbar-dark {\n\n    .navbar-brand-light {\n        display: none;\n    }\n\n    .navbar-brand {\n        color: $white;\n    }\n\n    & > .nav-item:hover > .nav-link {\n        color: $primary;\n    }\n}\n\n.navbar-light {\n\n    &:not(.headroom--not-top) {\n        .btn-outline-soft {\n            border-color: $dark;\n            color: $dark;\n    \n            &:hover {\n                background: $dark;\n                color: $white;\n            }\n        }\n    }\n\n    .navbar-toggler-icon {\n        background-image: $navbar-light-toggler-icon-bg;\n    }\n\n    .navbar-brand-dark {\n        display: none;\n    }\n\n    .navbar-brand {\n        color: $gray-800;\n    }\n\n}\n\n.dropdown-menu {\n    top: 100%;\n    span{\n        width: 30px;\n    }\n}\n\n.navbar-transparent {\n    background-color: transparent;\n    border: 0;\n    box-shadow: none;\n}\n\n@include media-breakpoint-up(lg) {\n    .navbar-nav {\n        .nav-item {\n            [data-toggle=\"dropdown\"]::after {\n                transition: $transition-base;\n            }\n\n            &.show {\n                [data-toggle=\"dropdown\"]::after {\n                    @include transform(rotate(180deg));\n                }\n            }\n        }\n        .nav-link {\n\n            i {\n                margin-right: .3rem;\n                font-size: $font-size-xs;\n            }\n        }\n\n        .nav-link-icon {\n            padding-left: .5rem;\n            padding-right: .5rem;\n            font-size: 1rem;\n\n            i {\n                margin-right: 0;\n            }\n        }\n\n        .dropdown-menu {\n            opacity: 0;\n            pointer-events: none;\n            margin: 0;\n            border-radius: $dropdown-border-radius;\n        }\n\n        .dropdown-menu-end {\n            &:before {\n                right: 20px;\n                left: auto;\n            }\n        }\n\n        .dropdown-menu-center {\n            left: 50%;\n            transform: translateX(-50%);\n        }\n\n        .dropdown-menu,\n        .dropdown-megamenu,\n        .dropdown-megamenu-md {\n            &.show {\n                opacity: 1;\n                pointer-events: auto;\n            }\n\n            &.close {\n                display: block;\n            }\n        }\n\n        .dropdown-submenu .dropdown-menu {\n            transform: none;\n        }\n\n        .dropdown-menu {\n            position: relative;\n            display: block;\n            opacity: 0; \n            pointer-events: none;\n            transition: $transition-base;\n        }\n\n        .dropdown.show,\n        .dropdown-submenu.show {\n            & > .dropdown-menu {\n                display: block;\n                opacity: 1;\n                pointer-events: auto;\n            }\n        }\n\n        .dropdown-menu-inner {\n            position: relative;\n            padding: 1rem;\n        }\n    }\n\n    .navbar-transparent {\n        .navbar-nav {\n            .nav-link {\n                &.disabled {\n                    color: $navbar-dark-disabled-color;\n                }\n            }\n        }\n\n        .navbar-brand {\n            color: $navbar-dark-color; \n        }\n\n    }\n\n}\n\n// Collapse\n.navbar-collapse-header {\n    display: none;\n}\n\n.navbar-collapse {\n    width: auto;\n}\n\n@include media-breakpoint-down(lg) {\n    .navbar-nav {\n        .nav-link {\n            padding: .625rem 0;\n        }\n\n        .dropdown-menu {\n            box-shadow: none;\n            width: 100%;\n\n            .media svg {\n                width: 30px;\n            }\n        }\n    }\n\n    .dropdown-menu-center {\n        right: 0;\n        left: auto;\n        transform: translate(0, 0);\n        @include media-breakpoint-down(lg) {\n            transform: translateX(-75%);\n        }\n    }\n\n    .navbar-collapse {     \n        width: calc(100% - 30px);\n        position: absolute;\n        top: 0;\n        right: 15px;\n        z-index: 1050;\n        overflow-y: auto;\n        // using !important to overwrite Bootstrap's inline styles\n        height: calc(100vh - 30px) !important;\n        opacity: 0;\n\n        .navbar-toggler {\n            position: relative;\n            display: inline-block;\n            width: 20px;\n            height: 20px;\n            padding: 0;\n\n            span {\n                display: block;\n                position: absolute;\n                width: 100%;\n                height: 2px;\n                border-radius: 2px;\n                opacity: 1;\n                background: #283448;\n            }\n        }\n\n        .navbar-collapse-header {\n            display: block;\n            padding-bottom: 1rem;\n            margin-bottom: 1rem;\n        }\n\n        .collapse-brand img {\n            height: 35px;\n        }\n\n        .collapse-close { \n            text-align: right;\n        }\n    }\n\n    .navbar-collapse.collapsing,\n    .navbar-collapse.show {\n        padding: 1.5rem;\n        border-radius: $dropdown-border-radius;\n        background: $white;\n        animation: show-navbar-collapse .2s ease forwards;\n        @include box-shadow(0 0 20px rgba(0, 0, 0, .1));\n    }\n\n    .navbar-collapse.collapsing-out {\n        animation: hide-navbar-collapse .2s ease forwards;\n    }\n}\n\n.navbar-dashboard {\n    border-radius: $border-radius;\n}\n\n// Theme color variants\n// eg. navbar-theme-primary, navbar-theme-secondary\n@each $color, $value in $navbar-colors {\n    .navbar-theme-#{$color}:not(.headroom) {\n        background-color: $value;\n    }\n}"
  },
  {
    "path": "static/assets/scss/volt/layout/_section.scss",
    "content": "/**\n * = Sections\n */\n\n.section {\n    position: relative;\n    padding-top: $spacer * 3;\n    padding-bottom: $spacer * 3;\n}\n\n.section-header {\n    position: relative;\n    padding-top: $spacer * 9;\n    padding-bottom: $spacer * 3;\n}\n\n@include media-breakpoint-up(sm) {\n    .section {\n        position: relative;\n        padding-top: $spacer * 5;\n        padding-bottom: $spacer * 5;\n    }\n    .section-header {\n        position: relative;\n        padding-top: $spacer * 8;\n        padding-bottom: $spacer * 8;\n        &.section-sm{\n            padding-top: $spacer * 4;\n            padding-bottom: $spacer * 3;\n        }\n    }\n    .section-xl {\n        padding-top: $spacer * 8;\n        padding-bottom: $spacer * 8;\n    }\n    .section-lg {\n        padding-top: $spacer * 6;\n        padding-bottom: $spacer * 6;\n    }\n    .section-sm {\n        padding-top: $spacer * 3;\n        padding-bottom: $spacer * 3;\n    }\n}\n\n@include media-breakpoint-up(lg) {\n    .section {\n        position: relative;\n        padding-top: $spacer * 6;\n        padding-bottom: $spacer * 6;\n    }\n    .section-header {\n        position: relative;\n        padding-top: $spacer * 10;\n        padding-bottom: $spacer * 10;\n        &.section-sm{\n            padding-top: $spacer * 4;\n            padding-bottom: $spacer * 3;\n        }\n    }\n    .section-xl {\n        padding-top: $spacer * 10;\n        padding-bottom: $spacer * 10;\n    }\n    .section-lg {\n        padding-top: $spacer * 8;\n        padding-bottom: $spacer * 8;\n    }\n    .section-sm {\n        padding-top: $spacer * 4;\n        padding-bottom: $spacer * 4;\n    }\n}\n\n// Hero sections\n.section-hero {\n    @include media-breakpoint-up(md) {\n        height: 100vh;\n    }\n}\n\n//Section delimiter\n.line-bottom{\n    &::after{\n        content: '';\n        display: block;\n        width: 80%;\n        position: absolute;\n        bottom: 0;\n        left: 50%;\n        margin-left: -40%;\n        height: 1px;\n        background: radial-gradient(ellipse at center,$light 0,rgba(255,255,255,0) 80%);\n    }\n}\n\n// Profile cover\n.section-profile-cover {\n    height: 580px;\n    background-size: cover;\n    background-position: center center;\n    @include media-breakpoint-down(md) {\n        height: 400px;\n    }\n}\n\n// Components section\n.components-section {\n    >.form-control {\n        +.form-control {\n            margin-top: .5rem;\n        }\n    }\n    >.nav+.nav,\n    >.alert+.alert,\n    >.navbar+.navbar,\n    >.progress+.progress,\n    >.progress+.btn,\n    .badge,\n    .btn {\n        margin-top: .5rem;\n        margin-bottom: .5rem;\n    }\n    .btn-group {\n        margin-top: .5rem;\n        margin-bottom: .5rem;\n        .btn {\n            margin: 0;\n        }\n    }\n    .alert {\n        margin: 0;\n        +.alert {\n            margin-top: 1.25rem;\n        }\n    }\n    .badge {\n        margin-right: .5rem;\n    }\n    .modal-footer {\n        .btn {\n            margin: 0;\n        }\n    }\n}\n\n.copy-docs {\n    position: absolute;\n    top: 5px;\n    right: 5px;\n    transition: $transition-base;\n    &.copied {\n        background: $success;\n    }\n    &:hover {\n        cursor: pointer;\n    }\n}\n\n.kanban-container{\n\toverflow-x: scroll;\n    -webkit-overflow-scrolling: touch;\n\n}"
  },
  {
    "path": "static/assets/scss/volt/layout/_sidebar.scss",
    "content": "/**\n * = Sidebars\n */\n\n #doc-index:not(.collapse.show), .doc-sidebar {\n    display: none;\n}\n\n@include media-breakpoint-up(lg){\n    #doc-index{\n        display: block;\n    }\n    \n    .doc-sidebar {\n        display: block;\n        height: calc(100vh - 2rem);\n        overflow-y: scroll;\n        position: -webkit-sticky;\n        position: sticky;\n        top: 2rem;\n\n        .nav-link[data-toggle=\"collapse\"] > .icon {\n            transform: rotateZ(-90deg);\n            position: relative;\n            right: .25rem;\n        }\n\n        .nav{\n            .nav-item{\n                font-size:$font-size-sm;\n            }\n        }\n    } \n}  \n"
  },
  {
    "path": "static/assets/scss/volt/layout/_sidenav.scss",
    "content": "/*\n * Sidebar\n*/\n.sidebar {\n\tdisplay: block;\n\tposition: fixed;\n\ttop: 0;\n\tbottom: 0;\n\tleft: 0;\n\tz-index: 100;\n\tmax-height: 100%;\n\toverflow-y: auto;\n\twidth: 100%;\n\t@include transition(max-width .1s);\n\t\n\t@include media-breakpoint-up(md) {\n\t\twidth: 100%;\n\t\tmax-width: 260px;\n\t}\n\n\t.nav {\n\t\twhite-space: nowrap;\n\t}\n\n\t.nav-item {\n\t\t&.active {\n\t\t\t& > .nav-link {\n\t\t\t\tcolor: $gray-100;\n\t\t\t\tbackground-color: $gray-700;\n\t\t\t}\n\t\t}\n\t\t.nav-link {\n\t\t\tcolor: $white;\n\t\t\tcursor: pointer;\n\t\t\t&:hover {\n\t\t\t\tcolor: $gray-100;\n\t\t\t\tbackground-color: $gray-700;\n\t\t\t}\n\t\t}\n\t\tmargin-bottom: .2rem;\n\t}\n\n\t.nav-link + .multi-level {\n\t\tmargin-top: .2rem;\n\t}\n\n\t.nav-link {\n\t\tfont-size: $font-size-base;\n\t\tvertical-align: middle;\n\t\tpadding: 0.55rem 0.75rem;\n\t\t@include border-radius($border-radius);\n\n\t\t.sidebar-icon {\n\t\t\tmargin-right: .5rem;\n\t\t\tcolor: $gray-400;\n\t\t}\n\n\t\t.link-arrow{\n\t\t\tfont-size: $font-size-sm;\n\t\t}\n\n\t\t&[data-bs-toggle=collapse][aria-expanded=true] .link-arrow{\n\t\t\t@include transform(rotate(90deg));\n\t\t\ttransition: $transition-base;\n\t\t}\n\t}\n\t.nav-link.active {\n\t\tcolor: $gray-100;\n\t}\n\n\t.multi-level{\n\t\t.nav-link{\n\t\t\tpadding-left: 53px;\n\t\t}\n\t}\n\n\t.sidebar-text,\n\t.link-arrow,\n\t.badge,\n\t.notification-count {\n\t\topacity: 1;\n\t}\n\n\t.sidebar-text-contracted {\n\t\tdisplay: none;\n\t}\n\n\t&.contracted {\n\t\t.sidebar-text,\n\t\t.link-arrow,\n\t\t.badge {\n\t\t\topacity: 0;\n\t\t}\n\n\t\t.notification-count {\n\t\t\topacity: 1;\n\t\t\tposition: absolute;\n\t\t\ttop: 0;\n\t\t\tleft: 40px;\n\t\t\twidth: 18px;\n\t\t\theight: 18px;\n\t\t\tborder-radius: 50%;\n\t\t\tfont-size: .7rem;\n\t\t\tpadding: .2rem;\n\t\t}\n\n\t\t.nav-item {\n\t\t\tposition: relative;\n\t\t\t&.active {\n\t\t\t\t& > .nav-link {\n\t\t\t\t\tbackground-color: #363c54;\n\t\t\t\t\twidth: 44px;\n\t\t\t\t}\n\t\t\t}\n\t\t\t.nav-link {\n\t\t\t\t&:hover {\n\t\t\t\t\tbackground-color: $primary;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t.sidebar-text-contracted {\n\t\t\tdisplay: inline;\n\t\t}\n\n\t\t.multi-level .nav-link {\n\t\t\tpadding-left: 17px;\n\t\t}\n\n\t\t.nav-item {\n\t\t\twhite-space: nowrap;\n\t\t}\n\n\t\t.sidebar-icon {\n\t\t\ttext-align: center;\n\t\t}\n\n\n\t\t@include media-breakpoint-up(md) {\n\t\t\t& + .content {\n\t\t\t\tmargin-left: 95px;\n\t\t\t\t\n\t\t\t}\n\t\t}\n\n\t\tmax-width: 95px;\n\t}\n}\n\n.sidebar-inner {\n\tposition: relative;\n\toverflow-y: hidden;\n}\n\n.sidebar-heading {\n\tfont-size: .75rem;\n\ttext-transform: uppercase;\n}\n\n.user-card{\n\tborder-bottom: 0.0625rem solid #2e3650;\n}\n\n@include media-breakpoint-down(sm) {\n\t.sidebar {\n\t\twidth: 100%;\n\t}\n}\n\n.content {\n\n\toverflow: hidden;\n\tpadding: 0 $spacer 0 $spacer;\n\t@include transition(all .3s);\n\n\t@include media-breakpoint-up(lg) {\n\t\tmargin-left: 260px;\n\t}\n}\n\n.sidebar-toggle {\n\tfont-size: 1.3rem;\n\n\t&:hover,\n\t&:focus {\n\t\toutline: none;\n\t\tbox-shadow: none;\n\t\tbackground: $gray-300;\n\t}\n\n}"
  },
  {
    "path": "static/assets/scss/volt/mixins/_animations.scss",
    "content": "@mixin perspective($value){\n    -webkit-perspective: $value;\n    -moz-perspective: $value;\n    -o-perspective: $value;\n    -ms-perspective: $value;\n    perspective: $value;\n}\n@mixin transitions($time, $type){\n    -webkit-transition: all $time $type;\n    -moz-transition: all $time $type;\n    -o-transition: all $time $type;\n    -ms-transition: all $time $type;\n    transition: all $time $type;\n}\n\n@mixin transitions-property($property, $time, $type){\n    -webkit-transition: $property $time $type;\n    -moz-transition: $property $time $type;\n    -o-transition: $property $time $type;\n    -ms-transition: $property $time $type;\n    transition: $property $time $type;\n}\n@mixin transform-style($type){\n    -webkit-transform-style: $type;\n    -moz-transform-style: $type;\n    -o-transform-style: $type;\n    -ms-transform-style: $type;\n    transform-style: $type;\n}\n\n@mixin backface-visibility($type){\n    -webkit-backface-visibility: $type;\n    -moz-backface-visibility: $type;\n    -o-backface-visibility: $type;\n    -ms-backface-visibility: $type;\n        backface-visibility: $type;\n}\n\n@mixin rotateY-180() {\n    -webkit-transform: rotateY( 180deg );\n    -moz-transform: rotateY( 180deg );\n    -o-transform: rotateY( 180deg );\n    -ms-transform: rotateY(180deg);\n    transform: rotateY( 180deg );\n}"
  },
  {
    "path": "static/assets/scss/volt/mixins/_background-variant.scss",
    "content": "// Contextual backgrounds\n@mixin bg-variant($parent, $color) {\n    #{$parent} {\n        background-color: $color !important;\n    }\n    a#{$parent},\n    button#{$parent} {\n        @include hover-focus {\n            background-color: darken($color, 10%) !important;\n        }\n    }\n}\n\n@mixin bg-gradient-variant($parent, $color) {\n    #{$parent} {\n        background: linear-gradient(87deg, $color 0, saturate($color, 10%) 100%) !important;\n    }\n}\n\n@mixin background-image($background-repeat,$background-size) {\n    background-repeat: $background-repeat;\n    background-position: top center;\n    background-size: $background-size;\n}\n\n"
  },
  {
    "path": "static/assets/scss/volt/mixins/_icon.scss",
    "content": "@mixin icon-shape-variant($color) {\n    color: $color;\n    background-color: rgba( $color, .3 );\n}\n\n@mixin icon-parallax-background($background-position,$background-size,$background-attachment,$background-repeat) {\n    background-position: $background-position;\n    background-size: $background-size;\n    background-attachment: $background-attachment;\n    background-repeat: $background-repeat; \n} \n\n@mixin icon-image-background($background-position,$background-size,$background-repeat) {\n    background-position: $background-position;\n    background-size: $background-size;\n    background-repeat: $background-repeat; \n}"
  },
  {
    "path": "static/assets/scss/volt/mixins/_modals.scss",
    "content": "@mixin modal-variant($background) {\n\t.modal-title {\n\t\tcolor: color-yiq($background);\n\t}\n\t.modal-header,\n\t.modal-footer {\n\t\tborder-color: rgba($background, .075);\n\t}\n\t.modal-content {\n\t\tbackground-color: $background;\n\t\tcolor: color-yiq($background);\n\n\t\t.heading {\n\t\t\tcolor: color-yiq($background);\n\t\t}\n\t}\n\n\t.close { \n    \t&>span:not(.sr-only) {\n    \t\tcolor: $white;\n    \t}\n    }\n}"
  },
  {
    "path": "static/assets/scss/volt/mixins/_popover.scss",
    "content": "@mixin popover-variant($background) {\n\n\tbackground-color: $background;\n\n\t.popover-header {\n\t\tbackground-color: $background;\n\t\tcolor: color-yiq($background);\n\t}\n\n\t.popover-body {\n\t\tcolor: color-yiq($background);\n\t}\n\t.popover-header{\n\t\tborder-color: rgba($background, .2);\n\t}\n\t&.bs-popover-top {\n\t\t.arrow::after {\n\t\t\tborder-top-color: $background;\n\t\t}\n\t}\n\t&.bs-popover-end {\n\t\t.arrow::after {\n\t\t\tborder-right-color: $background;\n\t\t}\n\t}\n\t&.bs-popover-bottom {\n\t\t.arrow::after {\n\t\t\tborder-bottom-color: $background;\n\t\t}\n\t}\n\t&.bs-popover-start {\n\t\t.arrow::after {\n\t\t\tborder-left-color: $background;\n\t\t}\n\t}\n}\n"
  },
  {
    "path": "static/assets/scss/volt/mixins/_transform.scss",
    "content": "\n@mixin transform($transforms) {\n\t-moz-transform: $transforms;\n\t-o-transform: $transforms;\n\t-ms-transform: $transforms;\n\t-webkit-transform: $transforms;\n\ttransform: $transforms;\n}\n  \n\n// translate\n@mixin translate ($x, $y) {\n\t@include transform(translate($x, $y));\n}\n\n// rotate\n@mixin rotate ($deg) {\n\t@include transform(rotate(#{$deg}deg));\n}"
  },
  {
    "path": "static/assets/scss/volt/mixins/_utilities.scss",
    "content": "@mixin filter($filter) {\n    -webkit-filter: #{$filter};\n\t-moz-filter: #{$filter};\n\t-ms-filter: #{$filter};\n\t-o-filter: #{$filter};\n\tfilter: #{$filter};\n}\n\n@mixin backface-visibility($value) {\n\t-webkit-backface-visibility: $value;\n\t-moz-backface-visibility: $value;\n\t-o-backface-visibility: $value;\n\tbackface-visibility: $value;\n}\n\n@mixin transform-style($value) {\n\t-webkit-transform-style: $value;\n\t-moz-transform-style: $value;\n\t-o-transform-style: $value;\n\ttransform-style: $value;\n}\n\n@mixin perspective($value) {\n\t-webkit-perspective: $value;\n    -moz-perspective: $value;\n    -o-perspective: $value;\n    perspective: $value;\n}\n\n@mixin display-flex() {\n\tdisplay: -webkit-box;\n\tdisplay: -moz-box;\n\tdisplay: -ms-flexbox;\n\tdisplay: -webkit-flex;\n\tdisplay: flex;\n}\n\n@mixin flex($values) {\n\t-webkit-box-flex: $values;\n\t   -moz-box-flex: $values;\n\t\t-webkit-flex: $values;\n\t\t  -ms-flex: $values;\n\t\t\t  flex: $values;\n  }\n  \n  @mixin flex-direction($direction) {\n\t-webkit-flex-direction: $direction;\n\t   -moz-flex-direction: $direction;\n\t\t-ms-flex-direction: $direction;\n\t\t\tflex-direction: $direction;\n  }\n  \n  @mixin flex-wrap($wrap) {\n\t-webkit-flex-wrap: $wrap;\n\t   -moz-flex-wrap: $wrap;\n\t\t-ms-flex-wrap: $wrap;\n\t\t\tflex-wrap: $wrap;\n  }\n  \n  @mixin flex-flow($flow) {\n\t-webkit-flex-flow: $flow;\n\t   -moz-flex-flow: $flow;\n\t\t-ms-flex-flow: $flow;\n\t\t\tflex-flow: $flow;\n  }\n  \n  @mixin order($val) {\n\t-webkit-box-ordinal-group: $val;  \n\t   -moz-box-ordinal-group: $val;     \n\t\t\t -ms-flex-order: $val;     \n\t\t\t  -webkit-order: $val;  \n\t\t\t\t  order: $val;\n  }\n  \n  @mixin flex-grow($grow) {\n\t-webkit-flex-grow: $grow;\n\t   -moz-flex-grow: $grow;\n\t\t-ms-flex-grow: $grow;\n\t\t\tflex-grow: $grow;\n  }\n  \n  @mixin flex-shrink($shrink) {\n\t-webkit-flex-shrink: $shrink;\n\t   -moz-flex-shrink: $shrink;\n\t\t-ms-flex-shrink: $shrink;\n\t\t\tflex-shrink: $shrink;\n  }\n  \n  @mixin flex-basis($width) {\n\t-webkit-flex-basis: $width;\n\t   -moz-flex-basis: $width;\n\t\t-ms-flex-basis: $width;\n\t\t\tflex-basis: $width;\n  }\n  \n  @mixin justify-content($justify) {\n\t-webkit-justify-content: $justify;\n\t   -moz-justify-content: $justify;\n\t\t-ms-justify-content: $justify;\n\t\t\tjustify-content: $justify;\n\t\t\t  -ms-flex-pack: $justify;\n  }\n  \n  @mixin align-content($align) {\n\t-webkit-align-content: $align;\n\t   -moz-align-content: $align;\n\t\t-ms-align-content: $align;\n\t\t\talign-content: $align;\n  }\n  \n  @mixin align-items($align) {\n\t-webkit-align-items: $align;\n\t   -moz-align-items: $align;\n\t\t-ms-align-items: $align;\n\t\t\talign-items: $align;\n  }\n  \n  @mixin align-self($align) {\n\t-webkit-align-self: $align;\n\t   -moz-align-self: $align;\n\t\t-ms-align-self: $align;\n\t\t\talign-self: $align;\n  }"
  },
  {
    "path": "static/assets/scss/volt.scss",
    "content": "/*\n\n=========================================================\n* Volt - Free Bootstrap 5 Dashboard\n=========================================================\n\n* Product Page: https://themesberg.com/product/admin-dashboard/volt-bootstrap-5-dashboard\n* Copyright 2021 Themesberg (https://www.themesberg.com)\n\n* Designed and coded by https://themesberg.com\n\n=========================================================\n\n* The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. Please contact us to request a removal. Contact us if you want to remove it.\n\n*/\n\n@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap');\n// update variables here\n@import \"custom/variables\";\n@import \"../node_modules/bootstrap/scss/functions\";\n@import \"volt/variables\";\n// Third party\n@import '../node_modules/vanillajs-datepicker/sass/datepicker.scss';\n@import \"../node_modules/chartist/dist/scss/chartist.scss\";\n// Bootstrap\n@import \"../node_modules/bootstrap/scss/variables\";\n@import \"../node_modules/bootstrap/scss/mixins\";\n@import \"../node_modules/bootstrap/scss/utilities\";\n// Modify utilities here\n@import \"volt/utilities\";\n// Bootstrap Layout & components\n@import \"../node_modules/bootstrap/scss/root\";\n@import \"../node_modules/bootstrap/scss/reboot\";\n@import \"../node_modules/bootstrap/scss/type\";\n@import \"../node_modules/bootstrap/scss/images\";\n@import \"../node_modules/bootstrap/scss/containers\";\n@import \"../node_modules/bootstrap/scss/grid\";\n@import \"../node_modules/bootstrap/scss/tables\";\n@import \"../node_modules/bootstrap/scss/forms\";\n@import \"../node_modules/bootstrap/scss/buttons\";\n@import \"../node_modules/bootstrap/scss/transitions\";\n@import \"../node_modules/bootstrap/scss/dropdown\";\n@import \"../node_modules/bootstrap/scss/button-group\";\n@import \"../node_modules/bootstrap/scss/nav\";\n@import \"../node_modules/bootstrap/scss/navbar\";\n@import \"../node_modules/bootstrap/scss/card\";\n@import \"../node_modules/bootstrap/scss/accordion\";\n@import \"../node_modules/bootstrap/scss/breadcrumb\";\n@import \"../node_modules/bootstrap/scss/pagination\";\n@import \"../node_modules/bootstrap/scss/badge\";\n@import \"../node_modules/bootstrap/scss/alert\";\n@import \"../node_modules/bootstrap/scss/progress\";\n@import \"../node_modules/bootstrap/scss/list-group\";\n@import \"../node_modules/bootstrap/scss/close\";\n@import \"../node_modules/bootstrap/scss/toasts\";\n@import \"../node_modules/bootstrap/scss/modal\";\n@import \"../node_modules/bootstrap/scss/tooltip\";\n@import \"../node_modules/bootstrap/scss/popover\";\n@import \"../node_modules/bootstrap/scss/carousel\";\n@import \"../node_modules/bootstrap/scss/spinners\";\n// Helpers\n@import \"../node_modules/bootstrap/scss/helpers\";\n// Utilities\n@import \"../node_modules/bootstrap/scss/utilities/api\";\n// scss-docs-end import-stack\n// volt mixins & functions\n@import \"volt/mixins\";\n@import \"volt/functions\";\n// Layout\n@import \"volt/layout\";\n// Components\n@import \"volt/components\";\n// Forms\n@import \"volt/forms\";\n// write your custom styles here!"
  },
  {
    "path": "static/assets/vendor/@popperjs/core/dist/cjs/popper-base.js",
    "content": "/**\n * @popperjs/core v2.9.3 - MIT License\n */\n\n'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nfunction getWindow(node) {\n  if (node == null) {\n    return window;\n  }\n\n  if (node.toString() !== '[object Window]') {\n    var ownerDocument = node.ownerDocument;\n    return ownerDocument ? ownerDocument.defaultView || window : window;\n  }\n\n  return node;\n}\n\nfunction isElement(node) {\n  var OwnElement = getWindow(node).Element;\n  return node instanceof OwnElement || node instanceof Element;\n}\n\nfunction isHTMLElement(node) {\n  var OwnElement = getWindow(node).HTMLElement;\n  return node instanceof OwnElement || node instanceof HTMLElement;\n}\n\nfunction isShadowRoot(node) {\n  // IE 11 has no ShadowRoot\n  if (typeof ShadowRoot === 'undefined') {\n    return false;\n  }\n\n  var OwnElement = getWindow(node).ShadowRoot;\n  return node instanceof OwnElement || node instanceof ShadowRoot;\n}\n\nvar round = Math.round;\nfunction getBoundingClientRect(element, includeScale) {\n  if (includeScale === void 0) {\n    includeScale = false;\n  }\n\n  var rect = element.getBoundingClientRect();\n  var scaleX = 1;\n  var scaleY = 1;\n\n  if (isHTMLElement(element) && includeScale) {\n    // Fallback to 1 in case both values are `0`\n    scaleX = rect.width / element.offsetWidth || 1;\n    scaleY = rect.height / element.offsetHeight || 1;\n  }\n\n  return {\n    width: round(rect.width / scaleX),\n    height: round(rect.height / scaleY),\n    top: round(rect.top / scaleY),\n    right: round(rect.right / scaleX),\n    bottom: round(rect.bottom / scaleY),\n    left: round(rect.left / scaleX),\n    x: round(rect.left / scaleX),\n    y: round(rect.top / scaleY)\n  };\n}\n\nfunction getWindowScroll(node) {\n  var win = getWindow(node);\n  var scrollLeft = win.pageXOffset;\n  var scrollTop = win.pageYOffset;\n  return {\n    scrollLeft: scrollLeft,\n    scrollTop: scrollTop\n  };\n}\n\nfunction getHTMLElementScroll(element) {\n  return {\n    scrollLeft: element.scrollLeft,\n    scrollTop: element.scrollTop\n  };\n}\n\nfunction getNodeScroll(node) {\n  if (node === getWindow(node) || !isHTMLElement(node)) {\n    return getWindowScroll(node);\n  } else {\n    return getHTMLElementScroll(node);\n  }\n}\n\nfunction getNodeName(element) {\n  return element ? (element.nodeName || '').toLowerCase() : null;\n}\n\nfunction getDocumentElement(element) {\n  // $FlowFixMe[incompatible-return]: assume body is always available\n  return ((isElement(element) ? element.ownerDocument : // $FlowFixMe[prop-missing]\n  element.document) || window.document).documentElement;\n}\n\nfunction getWindowScrollBarX(element) {\n  // If <html> has a CSS width greater than the viewport, then this will be\n  // incorrect for RTL.\n  // Popper 1 is broken in this case and never had a bug report so let's assume\n  // it's not an issue. I don't think anyone ever specifies width on <html>\n  // anyway.\n  // Browsers where the left scrollbar doesn't cause an issue report `0` for\n  // this (e.g. Edge 2019, IE11, Safari)\n  return getBoundingClientRect(getDocumentElement(element)).left + getWindowScroll(element).scrollLeft;\n}\n\nfunction getComputedStyle(element) {\n  return getWindow(element).getComputedStyle(element);\n}\n\nfunction isScrollParent(element) {\n  // Firefox wants us to check `-x` and `-y` variations as well\n  var _getComputedStyle = getComputedStyle(element),\n      overflow = _getComputedStyle.overflow,\n      overflowX = _getComputedStyle.overflowX,\n      overflowY = _getComputedStyle.overflowY;\n\n  return /auto|scroll|overlay|hidden/.test(overflow + overflowY + overflowX);\n}\n\nfunction isElementScaled(element) {\n  var rect = element.getBoundingClientRect();\n  var scaleX = rect.width / element.offsetWidth || 1;\n  var scaleY = rect.height / element.offsetHeight || 1;\n  return scaleX !== 1 || scaleY !== 1;\n} // Returns the composite rect of an element relative to its offsetParent.\n// Composite means it takes into account transforms as well as layout.\n\n\nfunction getCompositeRect(elementOrVirtualElement, offsetParent, isFixed) {\n  if (isFixed === void 0) {\n    isFixed = false;\n  }\n\n  var isOffsetParentAnElement = isHTMLElement(offsetParent);\n  var offsetParentIsScaled = isHTMLElement(offsetParent) && isElementScaled(offsetParent);\n  var documentElement = getDocumentElement(offsetParent);\n  var rect = getBoundingClientRect(elementOrVirtualElement, offsetParentIsScaled);\n  var scroll = {\n    scrollLeft: 0,\n    scrollTop: 0\n  };\n  var offsets = {\n    x: 0,\n    y: 0\n  };\n\n  if (isOffsetParentAnElement || !isOffsetParentAnElement && !isFixed) {\n    if (getNodeName(offsetParent) !== 'body' || // https://github.com/popperjs/popper-core/issues/1078\n    isScrollParent(documentElement)) {\n      scroll = getNodeScroll(offsetParent);\n    }\n\n    if (isHTMLElement(offsetParent)) {\n      offsets = getBoundingClientRect(offsetParent, true);\n      offsets.x += offsetParent.clientLeft;\n      offsets.y += offsetParent.clientTop;\n    } else if (documentElement) {\n      offsets.x = getWindowScrollBarX(documentElement);\n    }\n  }\n\n  return {\n    x: rect.left + scroll.scrollLeft - offsets.x,\n    y: rect.top + scroll.scrollTop - offsets.y,\n    width: rect.width,\n    height: rect.height\n  };\n}\n\n// means it doesn't take into account transforms.\n\nfunction getLayoutRect(element) {\n  var clientRect = getBoundingClientRect(element); // Use the clientRect sizes if it's not been transformed.\n  // Fixes https://github.com/popperjs/popper-core/issues/1223\n\n  var width = element.offsetWidth;\n  var height = element.offsetHeight;\n\n  if (Math.abs(clientRect.width - width) <= 1) {\n    width = clientRect.width;\n  }\n\n  if (Math.abs(clientRect.height - height) <= 1) {\n    height = clientRect.height;\n  }\n\n  return {\n    x: element.offsetLeft,\n    y: element.offsetTop,\n    width: width,\n    height: height\n  };\n}\n\nfunction getParentNode(element) {\n  if (getNodeName(element) === 'html') {\n    return element;\n  }\n\n  return (// this is a quicker (but less type safe) way to save quite some bytes from the bundle\n    // $FlowFixMe[incompatible-return]\n    // $FlowFixMe[prop-missing]\n    element.assignedSlot || // step into the shadow DOM of the parent of a slotted node\n    element.parentNode || ( // DOM Element detected\n    isShadowRoot(element) ? element.host : null) || // ShadowRoot detected\n    // $FlowFixMe[incompatible-call]: HTMLElement is a Node\n    getDocumentElement(element) // fallback\n\n  );\n}\n\nfunction getScrollParent(node) {\n  if (['html', 'body', '#document'].indexOf(getNodeName(node)) >= 0) {\n    // $FlowFixMe[incompatible-return]: assume body is always available\n    return node.ownerDocument.body;\n  }\n\n  if (isHTMLElement(node) && isScrollParent(node)) {\n    return node;\n  }\n\n  return getScrollParent(getParentNode(node));\n}\n\n/*\ngiven a DOM element, return the list of all scroll parents, up the list of ancesors\nuntil we get to the top window object. This list is what we attach scroll listeners\nto, because if any of these parent elements scroll, we'll need to re-calculate the\nreference element's position.\n*/\n\nfunction listScrollParents(element, list) {\n  var _element$ownerDocumen;\n\n  if (list === void 0) {\n    list = [];\n  }\n\n  var scrollParent = getScrollParent(element);\n  var isBody = scrollParent === ((_element$ownerDocumen = element.ownerDocument) == null ? void 0 : _element$ownerDocumen.body);\n  var win = getWindow(scrollParent);\n  var target = isBody ? [win].concat(win.visualViewport || [], isScrollParent(scrollParent) ? scrollParent : []) : scrollParent;\n  var updatedList = list.concat(target);\n  return isBody ? updatedList : // $FlowFixMe[incompatible-call]: isBody tells us target will be an HTMLElement here\n  updatedList.concat(listScrollParents(getParentNode(target)));\n}\n\nfunction isTableElement(element) {\n  return ['table', 'td', 'th'].indexOf(getNodeName(element)) >= 0;\n}\n\nfunction getTrueOffsetParent(element) {\n  if (!isHTMLElement(element) || // https://github.com/popperjs/popper-core/issues/837\n  getComputedStyle(element).position === 'fixed') {\n    return null;\n  }\n\n  return element.offsetParent;\n} // `.offsetParent` reports `null` for fixed elements, while absolute elements\n// return the containing block\n\n\nfunction getContainingBlock(element) {\n  var isFirefox = navigator.userAgent.toLowerCase().indexOf('firefox') !== -1;\n  var isIE = navigator.userAgent.indexOf('Trident') !== -1;\n\n  if (isIE && isHTMLElement(element)) {\n    // In IE 9, 10 and 11 fixed elements containing block is always established by the viewport\n    var elementCss = getComputedStyle(element);\n\n    if (elementCss.position === 'fixed') {\n      return null;\n    }\n  }\n\n  var currentNode = getParentNode(element);\n\n  while (isHTMLElement(currentNode) && ['html', 'body'].indexOf(getNodeName(currentNode)) < 0) {\n    var css = getComputedStyle(currentNode); // This is non-exhaustive but covers the most common CSS properties that\n    // create a containing block.\n    // https://developer.mozilla.org/en-US/docs/Web/CSS/Containing_block#identifying_the_containing_block\n\n    if (css.transform !== 'none' || css.perspective !== 'none' || css.contain === 'paint' || ['transform', 'perspective'].indexOf(css.willChange) !== -1 || isFirefox && css.willChange === 'filter' || isFirefox && css.filter && css.filter !== 'none') {\n      return currentNode;\n    } else {\n      currentNode = currentNode.parentNode;\n    }\n  }\n\n  return null;\n} // Gets the closest ancestor positioned element. Handles some edge cases,\n// such as table ancestors and cross browser bugs.\n\n\nfunction getOffsetParent(element) {\n  var window = getWindow(element);\n  var offsetParent = getTrueOffsetParent(element);\n\n  while (offsetParent && isTableElement(offsetParent) && getComputedStyle(offsetParent).position === 'static') {\n    offsetParent = getTrueOffsetParent(offsetParent);\n  }\n\n  if (offsetParent && (getNodeName(offsetParent) === 'html' || getNodeName(offsetParent) === 'body' && getComputedStyle(offsetParent).position === 'static')) {\n    return window;\n  }\n\n  return offsetParent || getContainingBlock(element) || window;\n}\n\nvar top = 'top';\nvar bottom = 'bottom';\nvar right = 'right';\nvar left = 'left';\nvar auto = 'auto';\nvar basePlacements = [top, bottom, right, left];\nvar start = 'start';\nvar end = 'end';\nvar clippingParents = 'clippingParents';\nvar viewport = 'viewport';\nvar popper = 'popper';\nvar reference = 'reference';\n\nvar beforeRead = 'beforeRead';\nvar read = 'read';\nvar afterRead = 'afterRead'; // pure-logic modifiers\n\nvar beforeMain = 'beforeMain';\nvar main = 'main';\nvar afterMain = 'afterMain'; // modifier with the purpose to write to the DOM (or write into a framework state)\n\nvar beforeWrite = 'beforeWrite';\nvar write = 'write';\nvar afterWrite = 'afterWrite';\nvar modifierPhases = [beforeRead, read, afterRead, beforeMain, main, afterMain, beforeWrite, write, afterWrite];\n\nfunction order(modifiers) {\n  var map = new Map();\n  var visited = new Set();\n  var result = [];\n  modifiers.forEach(function (modifier) {\n    map.set(modifier.name, modifier);\n  }); // On visiting object, check for its dependencies and visit them recursively\n\n  function sort(modifier) {\n    visited.add(modifier.name);\n    var requires = [].concat(modifier.requires || [], modifier.requiresIfExists || []);\n    requires.forEach(function (dep) {\n      if (!visited.has(dep)) {\n        var depModifier = map.get(dep);\n\n        if (depModifier) {\n          sort(depModifier);\n        }\n      }\n    });\n    result.push(modifier);\n  }\n\n  modifiers.forEach(function (modifier) {\n    if (!visited.has(modifier.name)) {\n      // check for visited object\n      sort(modifier);\n    }\n  });\n  return result;\n}\n\nfunction orderModifiers(modifiers) {\n  // order based on dependencies\n  var orderedModifiers = order(modifiers); // order based on phase\n\n  return modifierPhases.reduce(function (acc, phase) {\n    return acc.concat(orderedModifiers.filter(function (modifier) {\n      return modifier.phase === phase;\n    }));\n  }, []);\n}\n\nfunction debounce(fn) {\n  var pending;\n  return function () {\n    if (!pending) {\n      pending = new Promise(function (resolve) {\n        Promise.resolve().then(function () {\n          pending = undefined;\n          resolve(fn());\n        });\n      });\n    }\n\n    return pending;\n  };\n}\n\nfunction format(str) {\n  for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n    args[_key - 1] = arguments[_key];\n  }\n\n  return [].concat(args).reduce(function (p, c) {\n    return p.replace(/%s/, c);\n  }, str);\n}\n\nvar INVALID_MODIFIER_ERROR = 'Popper: modifier \"%s\" provided an invalid %s property, expected %s but got %s';\nvar MISSING_DEPENDENCY_ERROR = 'Popper: modifier \"%s\" requires \"%s\", but \"%s\" modifier is not available';\nvar VALID_PROPERTIES = ['name', 'enabled', 'phase', 'fn', 'effect', 'requires', 'options'];\nfunction validateModifiers(modifiers) {\n  modifiers.forEach(function (modifier) {\n    Object.keys(modifier).forEach(function (key) {\n      switch (key) {\n        case 'name':\n          if (typeof modifier.name !== 'string') {\n            console.error(format(INVALID_MODIFIER_ERROR, String(modifier.name), '\"name\"', '\"string\"', \"\\\"\" + String(modifier.name) + \"\\\"\"));\n          }\n\n          break;\n\n        case 'enabled':\n          if (typeof modifier.enabled !== 'boolean') {\n            console.error(format(INVALID_MODIFIER_ERROR, modifier.name, '\"enabled\"', '\"boolean\"', \"\\\"\" + String(modifier.enabled) + \"\\\"\"));\n          }\n\n        case 'phase':\n          if (modifierPhases.indexOf(modifier.phase) < 0) {\n            console.error(format(INVALID_MODIFIER_ERROR, modifier.name, '\"phase\"', \"either \" + modifierPhases.join(', '), \"\\\"\" + String(modifier.phase) + \"\\\"\"));\n          }\n\n          break;\n\n        case 'fn':\n          if (typeof modifier.fn !== 'function') {\n            console.error(format(INVALID_MODIFIER_ERROR, modifier.name, '\"fn\"', '\"function\"', \"\\\"\" + String(modifier.fn) + \"\\\"\"));\n          }\n\n          break;\n\n        case 'effect':\n          if (typeof modifier.effect !== 'function') {\n            console.error(format(INVALID_MODIFIER_ERROR, modifier.name, '\"effect\"', '\"function\"', \"\\\"\" + String(modifier.fn) + \"\\\"\"));\n          }\n\n          break;\n\n        case 'requires':\n          if (!Array.isArray(modifier.requires)) {\n            console.error(format(INVALID_MODIFIER_ERROR, modifier.name, '\"requires\"', '\"array\"', \"\\\"\" + String(modifier.requires) + \"\\\"\"));\n          }\n\n          break;\n\n        case 'requiresIfExists':\n          if (!Array.isArray(modifier.requiresIfExists)) {\n            console.error(format(INVALID_MODIFIER_ERROR, modifier.name, '\"requiresIfExists\"', '\"array\"', \"\\\"\" + String(modifier.requiresIfExists) + \"\\\"\"));\n          }\n\n          break;\n\n        case 'options':\n        case 'data':\n          break;\n\n        default:\n          console.error(\"PopperJS: an invalid property has been provided to the \\\"\" + modifier.name + \"\\\" modifier, valid properties are \" + VALID_PROPERTIES.map(function (s) {\n            return \"\\\"\" + s + \"\\\"\";\n          }).join(', ') + \"; but \\\"\" + key + \"\\\" was provided.\");\n      }\n\n      modifier.requires && modifier.requires.forEach(function (requirement) {\n        if (modifiers.find(function (mod) {\n          return mod.name === requirement;\n        }) == null) {\n          console.error(format(MISSING_DEPENDENCY_ERROR, String(modifier.name), requirement, requirement));\n        }\n      });\n    });\n  });\n}\n\nfunction uniqueBy(arr, fn) {\n  var identifiers = new Set();\n  return arr.filter(function (item) {\n    var identifier = fn(item);\n\n    if (!identifiers.has(identifier)) {\n      identifiers.add(identifier);\n      return true;\n    }\n  });\n}\n\nfunction getBasePlacement(placement) {\n  return placement.split('-')[0];\n}\n\nfunction mergeByName(modifiers) {\n  var merged = modifiers.reduce(function (merged, current) {\n    var existing = merged[current.name];\n    merged[current.name] = existing ? Object.assign({}, existing, current, {\n      options: Object.assign({}, existing.options, current.options),\n      data: Object.assign({}, existing.data, current.data)\n    }) : current;\n    return merged;\n  }, {}); // IE11 does not support Object.values\n\n  return Object.keys(merged).map(function (key) {\n    return merged[key];\n  });\n}\n\nfunction getViewportRect(element) {\n  var win = getWindow(element);\n  var html = getDocumentElement(element);\n  var visualViewport = win.visualViewport;\n  var width = html.clientWidth;\n  var height = html.clientHeight;\n  var x = 0;\n  var y = 0; // NB: This isn't supported on iOS <= 12. If the keyboard is open, the popper\n  // can be obscured underneath it.\n  // Also, `html.clientHeight` adds the bottom bar height in Safari iOS, even\n  // if it isn't open, so if this isn't available, the popper will be detected\n  // to overflow the bottom of the screen too early.\n\n  if (visualViewport) {\n    width = visualViewport.width;\n    height = visualViewport.height; // Uses Layout Viewport (like Chrome; Safari does not currently)\n    // In Chrome, it returns a value very close to 0 (+/-) but contains rounding\n    // errors due to floating point numbers, so we need to check precision.\n    // Safari returns a number <= 0, usually < -1 when pinch-zoomed\n    // Feature detection fails in mobile emulation mode in Chrome.\n    // Math.abs(win.innerWidth / visualViewport.scale - visualViewport.width) <\n    // 0.001\n    // Fallback here: \"Not Safari\" userAgent\n\n    if (!/^((?!chrome|android).)*safari/i.test(navigator.userAgent)) {\n      x = visualViewport.offsetLeft;\n      y = visualViewport.offsetTop;\n    }\n  }\n\n  return {\n    width: width,\n    height: height,\n    x: x + getWindowScrollBarX(element),\n    y: y\n  };\n}\n\nvar max = Math.max;\nvar min = Math.min;\n\n// of the `<html>` and `<body>` rect bounds if horizontally scrollable\n\nfunction getDocumentRect(element) {\n  var _element$ownerDocumen;\n\n  var html = getDocumentElement(element);\n  var winScroll = getWindowScroll(element);\n  var body = (_element$ownerDocumen = element.ownerDocument) == null ? void 0 : _element$ownerDocumen.body;\n  var width = max(html.scrollWidth, html.clientWidth, body ? body.scrollWidth : 0, body ? body.clientWidth : 0);\n  var height = max(html.scrollHeight, html.clientHeight, body ? body.scrollHeight : 0, body ? body.clientHeight : 0);\n  var x = -winScroll.scrollLeft + getWindowScrollBarX(element);\n  var y = -winScroll.scrollTop;\n\n  if (getComputedStyle(body || html).direction === 'rtl') {\n    x += max(html.clientWidth, body ? body.clientWidth : 0) - width;\n  }\n\n  return {\n    width: width,\n    height: height,\n    x: x,\n    y: y\n  };\n}\n\nfunction contains(parent, child) {\n  var rootNode = child.getRootNode && child.getRootNode(); // First, attempt with faster native method\n\n  if (parent.contains(child)) {\n    return true;\n  } // then fallback to custom implementation with Shadow DOM support\n  else if (rootNode && isShadowRoot(rootNode)) {\n      var next = child;\n\n      do {\n        if (next && parent.isSameNode(next)) {\n          return true;\n        } // $FlowFixMe[prop-missing]: need a better way to handle this...\n\n\n        next = next.parentNode || next.host;\n      } while (next);\n    } // Give up, the result is false\n\n\n  return false;\n}\n\nfunction rectToClientRect(rect) {\n  return Object.assign({}, rect, {\n    left: rect.x,\n    top: rect.y,\n    right: rect.x + rect.width,\n    bottom: rect.y + rect.height\n  });\n}\n\nfunction getInnerBoundingClientRect(element) {\n  var rect = getBoundingClientRect(element);\n  rect.top = rect.top + element.clientTop;\n  rect.left = rect.left + element.clientLeft;\n  rect.bottom = rect.top + element.clientHeight;\n  rect.right = rect.left + element.clientWidth;\n  rect.width = element.clientWidth;\n  rect.height = element.clientHeight;\n  rect.x = rect.left;\n  rect.y = rect.top;\n  return rect;\n}\n\nfunction getClientRectFromMixedType(element, clippingParent) {\n  return clippingParent === viewport ? rectToClientRect(getViewportRect(element)) : isHTMLElement(clippingParent) ? getInnerBoundingClientRect(clippingParent) : rectToClientRect(getDocumentRect(getDocumentElement(element)));\n} // A \"clipping parent\" is an overflowable container with the characteristic of\n// clipping (or hiding) overflowing elements with a position different from\n// `initial`\n\n\nfunction getClippingParents(element) {\n  var clippingParents = listScrollParents(getParentNode(element));\n  var canEscapeClipping = ['absolute', 'fixed'].indexOf(getComputedStyle(element).position) >= 0;\n  var clipperElement = canEscapeClipping && isHTMLElement(element) ? getOffsetParent(element) : element;\n\n  if (!isElement(clipperElement)) {\n    return [];\n  } // $FlowFixMe[incompatible-return]: https://github.com/facebook/flow/issues/1414\n\n\n  return clippingParents.filter(function (clippingParent) {\n    return isElement(clippingParent) && contains(clippingParent, clipperElement) && getNodeName(clippingParent) !== 'body';\n  });\n} // Gets the maximum area that the element is visible in due to any number of\n// clipping parents\n\n\nfunction getClippingRect(element, boundary, rootBoundary) {\n  var mainClippingParents = boundary === 'clippingParents' ? getClippingParents(element) : [].concat(boundary);\n  var clippingParents = [].concat(mainClippingParents, [rootBoundary]);\n  var firstClippingParent = clippingParents[0];\n  var clippingRect = clippingParents.reduce(function (accRect, clippingParent) {\n    var rect = getClientRectFromMixedType(element, clippingParent);\n    accRect.top = max(rect.top, accRect.top);\n    accRect.right = min(rect.right, accRect.right);\n    accRect.bottom = min(rect.bottom, accRect.bottom);\n    accRect.left = max(rect.left, accRect.left);\n    return accRect;\n  }, getClientRectFromMixedType(element, firstClippingParent));\n  clippingRect.width = clippingRect.right - clippingRect.left;\n  clippingRect.height = clippingRect.bottom - clippingRect.top;\n  clippingRect.x = clippingRect.left;\n  clippingRect.y = clippingRect.top;\n  return clippingRect;\n}\n\nfunction getVariation(placement) {\n  return placement.split('-')[1];\n}\n\nfunction getMainAxisFromPlacement(placement) {\n  return ['top', 'bottom'].indexOf(placement) >= 0 ? 'x' : 'y';\n}\n\nfunction computeOffsets(_ref) {\n  var reference = _ref.reference,\n      element = _ref.element,\n      placement = _ref.placement;\n  var basePlacement = placement ? getBasePlacement(placement) : null;\n  var variation = placement ? getVariation(placement) : null;\n  var commonX = reference.x + reference.width / 2 - element.width / 2;\n  var commonY = reference.y + reference.height / 2 - element.height / 2;\n  var offsets;\n\n  switch (basePlacement) {\n    case top:\n      offsets = {\n        x: commonX,\n        y: reference.y - element.height\n      };\n      break;\n\n    case bottom:\n      offsets = {\n        x: commonX,\n        y: reference.y + reference.height\n      };\n      break;\n\n    case right:\n      offsets = {\n        x: reference.x + reference.width,\n        y: commonY\n      };\n      break;\n\n    case left:\n      offsets = {\n        x: reference.x - element.width,\n        y: commonY\n      };\n      break;\n\n    default:\n      offsets = {\n        x: reference.x,\n        y: reference.y\n      };\n  }\n\n  var mainAxis = basePlacement ? getMainAxisFromPlacement(basePlacement) : null;\n\n  if (mainAxis != null) {\n    var len = mainAxis === 'y' ? 'height' : 'width';\n\n    switch (variation) {\n      case start:\n        offsets[mainAxis] = offsets[mainAxis] - (reference[len] / 2 - element[len] / 2);\n        break;\n\n      case end:\n        offsets[mainAxis] = offsets[mainAxis] + (reference[len] / 2 - element[len] / 2);\n        break;\n    }\n  }\n\n  return offsets;\n}\n\nfunction getFreshSideObject() {\n  return {\n    top: 0,\n    right: 0,\n    bottom: 0,\n    left: 0\n  };\n}\n\nfunction mergePaddingObject(paddingObject) {\n  return Object.assign({}, getFreshSideObject(), paddingObject);\n}\n\nfunction expandToHashMap(value, keys) {\n  return keys.reduce(function (hashMap, key) {\n    hashMap[key] = value;\n    return hashMap;\n  }, {});\n}\n\nfunction detectOverflow(state, options) {\n  if (options === void 0) {\n    options = {};\n  }\n\n  var _options = options,\n      _options$placement = _options.placement,\n      placement = _options$placement === void 0 ? state.placement : _options$placement,\n      _options$boundary = _options.boundary,\n      boundary = _options$boundary === void 0 ? clippingParents : _options$boundary,\n      _options$rootBoundary = _options.rootBoundary,\n      rootBoundary = _options$rootBoundary === void 0 ? viewport : _options$rootBoundary,\n      _options$elementConte = _options.elementContext,\n      elementContext = _options$elementConte === void 0 ? popper : _options$elementConte,\n      _options$altBoundary = _options.altBoundary,\n      altBoundary = _options$altBoundary === void 0 ? false : _options$altBoundary,\n      _options$padding = _options.padding,\n      padding = _options$padding === void 0 ? 0 : _options$padding;\n  var paddingObject = mergePaddingObject(typeof padding !== 'number' ? padding : expandToHashMap(padding, basePlacements));\n  var altContext = elementContext === popper ? reference : popper;\n  var referenceElement = state.elements.reference;\n  var popperRect = state.rects.popper;\n  var element = state.elements[altBoundary ? altContext : elementContext];\n  var clippingClientRect = getClippingRect(isElement(element) ? element : element.contextElement || getDocumentElement(state.elements.popper), boundary, rootBoundary);\n  var referenceClientRect = getBoundingClientRect(referenceElement);\n  var popperOffsets = computeOffsets({\n    reference: referenceClientRect,\n    element: popperRect,\n    strategy: 'absolute',\n    placement: placement\n  });\n  var popperClientRect = rectToClientRect(Object.assign({}, popperRect, popperOffsets));\n  var elementClientRect = elementContext === popper ? popperClientRect : referenceClientRect; // positive = overflowing the clipping rect\n  // 0 or negative = within the clipping rect\n\n  var overflowOffsets = {\n    top: clippingClientRect.top - elementClientRect.top + paddingObject.top,\n    bottom: elementClientRect.bottom - clippingClientRect.bottom + paddingObject.bottom,\n    left: clippingClientRect.left - elementClientRect.left + paddingObject.left,\n    right: elementClientRect.right - clippingClientRect.right + paddingObject.right\n  };\n  var offsetData = state.modifiersData.offset; // Offsets can be applied only to the popper element\n\n  if (elementContext === popper && offsetData) {\n    var offset = offsetData[placement];\n    Object.keys(overflowOffsets).forEach(function (key) {\n      var multiply = [right, bottom].indexOf(key) >= 0 ? 1 : -1;\n      var axis = [top, bottom].indexOf(key) >= 0 ? 'y' : 'x';\n      overflowOffsets[key] += offset[axis] * multiply;\n    });\n  }\n\n  return overflowOffsets;\n}\n\nvar INVALID_ELEMENT_ERROR = 'Popper: Invalid reference or popper argument provided. They must be either a DOM element or virtual element.';\nvar INFINITE_LOOP_ERROR = 'Popper: An infinite loop in the modifiers cycle has been detected! The cycle has been interrupted to prevent a browser crash.';\nvar DEFAULT_OPTIONS = {\n  placement: 'bottom',\n  modifiers: [],\n  strategy: 'absolute'\n};\n\nfunction areValidElements() {\n  for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n    args[_key] = arguments[_key];\n  }\n\n  return !args.some(function (element) {\n    return !(element && typeof element.getBoundingClientRect === 'function');\n  });\n}\n\nfunction popperGenerator(generatorOptions) {\n  if (generatorOptions === void 0) {\n    generatorOptions = {};\n  }\n\n  var _generatorOptions = generatorOptions,\n      _generatorOptions$def = _generatorOptions.defaultModifiers,\n      defaultModifiers = _generatorOptions$def === void 0 ? [] : _generatorOptions$def,\n      _generatorOptions$def2 = _generatorOptions.defaultOptions,\n      defaultOptions = _generatorOptions$def2 === void 0 ? DEFAULT_OPTIONS : _generatorOptions$def2;\n  return function createPopper(reference, popper, options) {\n    if (options === void 0) {\n      options = defaultOptions;\n    }\n\n    var state = {\n      placement: 'bottom',\n      orderedModifiers: [],\n      options: Object.assign({}, DEFAULT_OPTIONS, defaultOptions),\n      modifiersData: {},\n      elements: {\n        reference: reference,\n        popper: popper\n      },\n      attributes: {},\n      styles: {}\n    };\n    var effectCleanupFns = [];\n    var isDestroyed = false;\n    var instance = {\n      state: state,\n      setOptions: function setOptions(options) {\n        cleanupModifierEffects();\n        state.options = Object.assign({}, defaultOptions, state.options, options);\n        state.scrollParents = {\n          reference: isElement(reference) ? listScrollParents(reference) : reference.contextElement ? listScrollParents(reference.contextElement) : [],\n          popper: listScrollParents(popper)\n        }; // Orders the modifiers based on their dependencies and `phase`\n        // properties\n\n        var orderedModifiers = orderModifiers(mergeByName([].concat(defaultModifiers, state.options.modifiers))); // Strip out disabled modifiers\n\n        state.orderedModifiers = orderedModifiers.filter(function (m) {\n          return m.enabled;\n        }); // Validate the provided modifiers so that the consumer will get warned\n        // if one of the modifiers is invalid for any reason\n\n        if (process.env.NODE_ENV !== \"production\") {\n          var modifiers = uniqueBy([].concat(orderedModifiers, state.options.modifiers), function (_ref) {\n            var name = _ref.name;\n            return name;\n          });\n          validateModifiers(modifiers);\n\n          if (getBasePlacement(state.options.placement) === auto) {\n            var flipModifier = state.orderedModifiers.find(function (_ref2) {\n              var name = _ref2.name;\n              return name === 'flip';\n            });\n\n            if (!flipModifier) {\n              console.error(['Popper: \"auto\" placements require the \"flip\" modifier be', 'present and enabled to work.'].join(' '));\n            }\n          }\n\n          var _getComputedStyle = getComputedStyle(popper),\n              marginTop = _getComputedStyle.marginTop,\n              marginRight = _getComputedStyle.marginRight,\n              marginBottom = _getComputedStyle.marginBottom,\n              marginLeft = _getComputedStyle.marginLeft; // We no longer take into account `margins` on the popper, and it can\n          // cause bugs with positioning, so we'll warn the consumer\n\n\n          if ([marginTop, marginRight, marginBottom, marginLeft].some(function (margin) {\n            return parseFloat(margin);\n          })) {\n            console.warn(['Popper: CSS \"margin\" styles cannot be used to apply padding', 'between the popper and its reference element or boundary.', 'To replicate margin, use the `offset` modifier, as well as', 'the `padding` option in the `preventOverflow` and `flip`', 'modifiers.'].join(' '));\n          }\n        }\n\n        runModifierEffects();\n        return instance.update();\n      },\n      // Sync update – it will always be executed, even if not necessary. This\n      // is useful for low frequency updates where sync behavior simplifies the\n      // logic.\n      // For high frequency updates (e.g. `resize` and `scroll` events), always\n      // prefer the async Popper#update method\n      forceUpdate: function forceUpdate() {\n        if (isDestroyed) {\n          return;\n        }\n\n        var _state$elements = state.elements,\n            reference = _state$elements.reference,\n            popper = _state$elements.popper; // Don't proceed if `reference` or `popper` are not valid elements\n        // anymore\n\n        if (!areValidElements(reference, popper)) {\n          if (process.env.NODE_ENV !== \"production\") {\n            console.error(INVALID_ELEMENT_ERROR);\n          }\n\n          return;\n        } // Store the reference and popper rects to be read by modifiers\n\n\n        state.rects = {\n          reference: getCompositeRect(reference, getOffsetParent(popper), state.options.strategy === 'fixed'),\n          popper: getLayoutRect(popper)\n        }; // Modifiers have the ability to reset the current update cycle. The\n        // most common use case for this is the `flip` modifier changing the\n        // placement, which then needs to re-run all the modifiers, because the\n        // logic was previously ran for the previous placement and is therefore\n        // stale/incorrect\n\n        state.reset = false;\n        state.placement = state.options.placement; // On each update cycle, the `modifiersData` property for each modifier\n        // is filled with the initial data specified by the modifier. This means\n        // it doesn't persist and is fresh on each update.\n        // To ensure persistent data, use `${name}#persistent`\n\n        state.orderedModifiers.forEach(function (modifier) {\n          return state.modifiersData[modifier.name] = Object.assign({}, modifier.data);\n        });\n        var __debug_loops__ = 0;\n\n        for (var index = 0; index < state.orderedModifiers.length; index++) {\n          if (process.env.NODE_ENV !== \"production\") {\n            __debug_loops__ += 1;\n\n            if (__debug_loops__ > 100) {\n              console.error(INFINITE_LOOP_ERROR);\n              break;\n            }\n          }\n\n          if (state.reset === true) {\n            state.reset = false;\n            index = -1;\n            continue;\n          }\n\n          var _state$orderedModifie = state.orderedModifiers[index],\n              fn = _state$orderedModifie.fn,\n              _state$orderedModifie2 = _state$orderedModifie.options,\n              _options = _state$orderedModifie2 === void 0 ? {} : _state$orderedModifie2,\n              name = _state$orderedModifie.name;\n\n          if (typeof fn === 'function') {\n            state = fn({\n              state: state,\n              options: _options,\n              name: name,\n              instance: instance\n            }) || state;\n          }\n        }\n      },\n      // Async and optimistically optimized update – it will not be executed if\n      // not necessary (debounced to run at most once-per-tick)\n      update: debounce(function () {\n        return new Promise(function (resolve) {\n          instance.forceUpdate();\n          resolve(state);\n        });\n      }),\n      destroy: function destroy() {\n        cleanupModifierEffects();\n        isDestroyed = true;\n      }\n    };\n\n    if (!areValidElements(reference, popper)) {\n      if (process.env.NODE_ENV !== \"production\") {\n        console.error(INVALID_ELEMENT_ERROR);\n      }\n\n      return instance;\n    }\n\n    instance.setOptions(options).then(function (state) {\n      if (!isDestroyed && options.onFirstUpdate) {\n        options.onFirstUpdate(state);\n      }\n    }); // Modifiers have the ability to execute arbitrary code before the first\n    // update cycle runs. They will be executed in the same order as the update\n    // cycle. This is useful when a modifier adds some persistent data that\n    // other modifiers need to use, but the modifier is run after the dependent\n    // one.\n\n    function runModifierEffects() {\n      state.orderedModifiers.forEach(function (_ref3) {\n        var name = _ref3.name,\n            _ref3$options = _ref3.options,\n            options = _ref3$options === void 0 ? {} : _ref3$options,\n            effect = _ref3.effect;\n\n        if (typeof effect === 'function') {\n          var cleanupFn = effect({\n            state: state,\n            name: name,\n            instance: instance,\n            options: options\n          });\n\n          var noopFn = function noopFn() {};\n\n          effectCleanupFns.push(cleanupFn || noopFn);\n        }\n      });\n    }\n\n    function cleanupModifierEffects() {\n      effectCleanupFns.forEach(function (fn) {\n        return fn();\n      });\n      effectCleanupFns = [];\n    }\n\n    return instance;\n  };\n}\nvar createPopper = /*#__PURE__*/popperGenerator(); // eslint-disable-next-line import/no-unused-modules\n\nexports.createPopper = createPopper;\nexports.detectOverflow = detectOverflow;\nexports.popperGenerator = popperGenerator;\n//# sourceMappingURL=popper-base.js.map\n"
  },
  {
    "path": "static/assets/vendor/@popperjs/core/dist/cjs/popper-base.js.flow",
    "content": "// @flow\n\nexport * from '../../lib/popper-base.js'\n"
  },
  {
    "path": "static/assets/vendor/@popperjs/core/dist/cjs/popper-lite.js",
    "content": "/**\n * @popperjs/core v2.9.3 - MIT License\n */\n\n'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nfunction getWindow(node) {\n  if (node == null) {\n    return window;\n  }\n\n  if (node.toString() !== '[object Window]') {\n    var ownerDocument = node.ownerDocument;\n    return ownerDocument ? ownerDocument.defaultView || window : window;\n  }\n\n  return node;\n}\n\nfunction isElement(node) {\n  var OwnElement = getWindow(node).Element;\n  return node instanceof OwnElement || node instanceof Element;\n}\n\nfunction isHTMLElement(node) {\n  var OwnElement = getWindow(node).HTMLElement;\n  return node instanceof OwnElement || node instanceof HTMLElement;\n}\n\nfunction isShadowRoot(node) {\n  // IE 11 has no ShadowRoot\n  if (typeof ShadowRoot === 'undefined') {\n    return false;\n  }\n\n  var OwnElement = getWindow(node).ShadowRoot;\n  return node instanceof OwnElement || node instanceof ShadowRoot;\n}\n\nvar round$1 = Math.round;\nfunction getBoundingClientRect(element, includeScale) {\n  if (includeScale === void 0) {\n    includeScale = false;\n  }\n\n  var rect = element.getBoundingClientRect();\n  var scaleX = 1;\n  var scaleY = 1;\n\n  if (isHTMLElement(element) && includeScale) {\n    // Fallback to 1 in case both values are `0`\n    scaleX = rect.width / element.offsetWidth || 1;\n    scaleY = rect.height / element.offsetHeight || 1;\n  }\n\n  return {\n    width: round$1(rect.width / scaleX),\n    height: round$1(rect.height / scaleY),\n    top: round$1(rect.top / scaleY),\n    right: round$1(rect.right / scaleX),\n    bottom: round$1(rect.bottom / scaleY),\n    left: round$1(rect.left / scaleX),\n    x: round$1(rect.left / scaleX),\n    y: round$1(rect.top / scaleY)\n  };\n}\n\nfunction getWindowScroll(node) {\n  var win = getWindow(node);\n  var scrollLeft = win.pageXOffset;\n  var scrollTop = win.pageYOffset;\n  return {\n    scrollLeft: scrollLeft,\n    scrollTop: scrollTop\n  };\n}\n\nfunction getHTMLElementScroll(element) {\n  return {\n    scrollLeft: element.scrollLeft,\n    scrollTop: element.scrollTop\n  };\n}\n\nfunction getNodeScroll(node) {\n  if (node === getWindow(node) || !isHTMLElement(node)) {\n    return getWindowScroll(node);\n  } else {\n    return getHTMLElementScroll(node);\n  }\n}\n\nfunction getNodeName(element) {\n  return element ? (element.nodeName || '').toLowerCase() : null;\n}\n\nfunction getDocumentElement(element) {\n  // $FlowFixMe[incompatible-return]: assume body is always available\n  return ((isElement(element) ? element.ownerDocument : // $FlowFixMe[prop-missing]\n  element.document) || window.document).documentElement;\n}\n\nfunction getWindowScrollBarX(element) {\n  // If <html> has a CSS width greater than the viewport, then this will be\n  // incorrect for RTL.\n  // Popper 1 is broken in this case and never had a bug report so let's assume\n  // it's not an issue. I don't think anyone ever specifies width on <html>\n  // anyway.\n  // Browsers where the left scrollbar doesn't cause an issue report `0` for\n  // this (e.g. Edge 2019, IE11, Safari)\n  return getBoundingClientRect(getDocumentElement(element)).left + getWindowScroll(element).scrollLeft;\n}\n\nfunction getComputedStyle(element) {\n  return getWindow(element).getComputedStyle(element);\n}\n\nfunction isScrollParent(element) {\n  // Firefox wants us to check `-x` and `-y` variations as well\n  var _getComputedStyle = getComputedStyle(element),\n      overflow = _getComputedStyle.overflow,\n      overflowX = _getComputedStyle.overflowX,\n      overflowY = _getComputedStyle.overflowY;\n\n  return /auto|scroll|overlay|hidden/.test(overflow + overflowY + overflowX);\n}\n\nfunction isElementScaled(element) {\n  var rect = element.getBoundingClientRect();\n  var scaleX = rect.width / element.offsetWidth || 1;\n  var scaleY = rect.height / element.offsetHeight || 1;\n  return scaleX !== 1 || scaleY !== 1;\n} // Returns the composite rect of an element relative to its offsetParent.\n// Composite means it takes into account transforms as well as layout.\n\n\nfunction getCompositeRect(elementOrVirtualElement, offsetParent, isFixed) {\n  if (isFixed === void 0) {\n    isFixed = false;\n  }\n\n  var isOffsetParentAnElement = isHTMLElement(offsetParent);\n  var offsetParentIsScaled = isHTMLElement(offsetParent) && isElementScaled(offsetParent);\n  var documentElement = getDocumentElement(offsetParent);\n  var rect = getBoundingClientRect(elementOrVirtualElement, offsetParentIsScaled);\n  var scroll = {\n    scrollLeft: 0,\n    scrollTop: 0\n  };\n  var offsets = {\n    x: 0,\n    y: 0\n  };\n\n  if (isOffsetParentAnElement || !isOffsetParentAnElement && !isFixed) {\n    if (getNodeName(offsetParent) !== 'body' || // https://github.com/popperjs/popper-core/issues/1078\n    isScrollParent(documentElement)) {\n      scroll = getNodeScroll(offsetParent);\n    }\n\n    if (isHTMLElement(offsetParent)) {\n      offsets = getBoundingClientRect(offsetParent, true);\n      offsets.x += offsetParent.clientLeft;\n      offsets.y += offsetParent.clientTop;\n    } else if (documentElement) {\n      offsets.x = getWindowScrollBarX(documentElement);\n    }\n  }\n\n  return {\n    x: rect.left + scroll.scrollLeft - offsets.x,\n    y: rect.top + scroll.scrollTop - offsets.y,\n    width: rect.width,\n    height: rect.height\n  };\n}\n\n// means it doesn't take into account transforms.\n\nfunction getLayoutRect(element) {\n  var clientRect = getBoundingClientRect(element); // Use the clientRect sizes if it's not been transformed.\n  // Fixes https://github.com/popperjs/popper-core/issues/1223\n\n  var width = element.offsetWidth;\n  var height = element.offsetHeight;\n\n  if (Math.abs(clientRect.width - width) <= 1) {\n    width = clientRect.width;\n  }\n\n  if (Math.abs(clientRect.height - height) <= 1) {\n    height = clientRect.height;\n  }\n\n  return {\n    x: element.offsetLeft,\n    y: element.offsetTop,\n    width: width,\n    height: height\n  };\n}\n\nfunction getParentNode(element) {\n  if (getNodeName(element) === 'html') {\n    return element;\n  }\n\n  return (// this is a quicker (but less type safe) way to save quite some bytes from the bundle\n    // $FlowFixMe[incompatible-return]\n    // $FlowFixMe[prop-missing]\n    element.assignedSlot || // step into the shadow DOM of the parent of a slotted node\n    element.parentNode || ( // DOM Element detected\n    isShadowRoot(element) ? element.host : null) || // ShadowRoot detected\n    // $FlowFixMe[incompatible-call]: HTMLElement is a Node\n    getDocumentElement(element) // fallback\n\n  );\n}\n\nfunction getScrollParent(node) {\n  if (['html', 'body', '#document'].indexOf(getNodeName(node)) >= 0) {\n    // $FlowFixMe[incompatible-return]: assume body is always available\n    return node.ownerDocument.body;\n  }\n\n  if (isHTMLElement(node) && isScrollParent(node)) {\n    return node;\n  }\n\n  return getScrollParent(getParentNode(node));\n}\n\n/*\ngiven a DOM element, return the list of all scroll parents, up the list of ancesors\nuntil we get to the top window object. This list is what we attach scroll listeners\nto, because if any of these parent elements scroll, we'll need to re-calculate the\nreference element's position.\n*/\n\nfunction listScrollParents(element, list) {\n  var _element$ownerDocumen;\n\n  if (list === void 0) {\n    list = [];\n  }\n\n  var scrollParent = getScrollParent(element);\n  var isBody = scrollParent === ((_element$ownerDocumen = element.ownerDocument) == null ? void 0 : _element$ownerDocumen.body);\n  var win = getWindow(scrollParent);\n  var target = isBody ? [win].concat(win.visualViewport || [], isScrollParent(scrollParent) ? scrollParent : []) : scrollParent;\n  var updatedList = list.concat(target);\n  return isBody ? updatedList : // $FlowFixMe[incompatible-call]: isBody tells us target will be an HTMLElement here\n  updatedList.concat(listScrollParents(getParentNode(target)));\n}\n\nfunction isTableElement(element) {\n  return ['table', 'td', 'th'].indexOf(getNodeName(element)) >= 0;\n}\n\nfunction getTrueOffsetParent(element) {\n  if (!isHTMLElement(element) || // https://github.com/popperjs/popper-core/issues/837\n  getComputedStyle(element).position === 'fixed') {\n    return null;\n  }\n\n  return element.offsetParent;\n} // `.offsetParent` reports `null` for fixed elements, while absolute elements\n// return the containing block\n\n\nfunction getContainingBlock(element) {\n  var isFirefox = navigator.userAgent.toLowerCase().indexOf('firefox') !== -1;\n  var isIE = navigator.userAgent.indexOf('Trident') !== -1;\n\n  if (isIE && isHTMLElement(element)) {\n    // In IE 9, 10 and 11 fixed elements containing block is always established by the viewport\n    var elementCss = getComputedStyle(element);\n\n    if (elementCss.position === 'fixed') {\n      return null;\n    }\n  }\n\n  var currentNode = getParentNode(element);\n\n  while (isHTMLElement(currentNode) && ['html', 'body'].indexOf(getNodeName(currentNode)) < 0) {\n    var css = getComputedStyle(currentNode); // This is non-exhaustive but covers the most common CSS properties that\n    // create a containing block.\n    // https://developer.mozilla.org/en-US/docs/Web/CSS/Containing_block#identifying_the_containing_block\n\n    if (css.transform !== 'none' || css.perspective !== 'none' || css.contain === 'paint' || ['transform', 'perspective'].indexOf(css.willChange) !== -1 || isFirefox && css.willChange === 'filter' || isFirefox && css.filter && css.filter !== 'none') {\n      return currentNode;\n    } else {\n      currentNode = currentNode.parentNode;\n    }\n  }\n\n  return null;\n} // Gets the closest ancestor positioned element. Handles some edge cases,\n// such as table ancestors and cross browser bugs.\n\n\nfunction getOffsetParent(element) {\n  var window = getWindow(element);\n  var offsetParent = getTrueOffsetParent(element);\n\n  while (offsetParent && isTableElement(offsetParent) && getComputedStyle(offsetParent).position === 'static') {\n    offsetParent = getTrueOffsetParent(offsetParent);\n  }\n\n  if (offsetParent && (getNodeName(offsetParent) === 'html' || getNodeName(offsetParent) === 'body' && getComputedStyle(offsetParent).position === 'static')) {\n    return window;\n  }\n\n  return offsetParent || getContainingBlock(element) || window;\n}\n\nvar top = 'top';\nvar bottom = 'bottom';\nvar right = 'right';\nvar left = 'left';\nvar auto = 'auto';\nvar basePlacements = [top, bottom, right, left];\nvar start = 'start';\nvar end = 'end';\nvar clippingParents = 'clippingParents';\nvar viewport = 'viewport';\nvar popper = 'popper';\nvar reference = 'reference';\n\nvar beforeRead = 'beforeRead';\nvar read = 'read';\nvar afterRead = 'afterRead'; // pure-logic modifiers\n\nvar beforeMain = 'beforeMain';\nvar main = 'main';\nvar afterMain = 'afterMain'; // modifier with the purpose to write to the DOM (or write into a framework state)\n\nvar beforeWrite = 'beforeWrite';\nvar write = 'write';\nvar afterWrite = 'afterWrite';\nvar modifierPhases = [beforeRead, read, afterRead, beforeMain, main, afterMain, beforeWrite, write, afterWrite];\n\nfunction order(modifiers) {\n  var map = new Map();\n  var visited = new Set();\n  var result = [];\n  modifiers.forEach(function (modifier) {\n    map.set(modifier.name, modifier);\n  }); // On visiting object, check for its dependencies and visit them recursively\n\n  function sort(modifier) {\n    visited.add(modifier.name);\n    var requires = [].concat(modifier.requires || [], modifier.requiresIfExists || []);\n    requires.forEach(function (dep) {\n      if (!visited.has(dep)) {\n        var depModifier = map.get(dep);\n\n        if (depModifier) {\n          sort(depModifier);\n        }\n      }\n    });\n    result.push(modifier);\n  }\n\n  modifiers.forEach(function (modifier) {\n    if (!visited.has(modifier.name)) {\n      // check for visited object\n      sort(modifier);\n    }\n  });\n  return result;\n}\n\nfunction orderModifiers(modifiers) {\n  // order based on dependencies\n  var orderedModifiers = order(modifiers); // order based on phase\n\n  return modifierPhases.reduce(function (acc, phase) {\n    return acc.concat(orderedModifiers.filter(function (modifier) {\n      return modifier.phase === phase;\n    }));\n  }, []);\n}\n\nfunction debounce(fn) {\n  var pending;\n  return function () {\n    if (!pending) {\n      pending = new Promise(function (resolve) {\n        Promise.resolve().then(function () {\n          pending = undefined;\n          resolve(fn());\n        });\n      });\n    }\n\n    return pending;\n  };\n}\n\nfunction format(str) {\n  for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n    args[_key - 1] = arguments[_key];\n  }\n\n  return [].concat(args).reduce(function (p, c) {\n    return p.replace(/%s/, c);\n  }, str);\n}\n\nvar INVALID_MODIFIER_ERROR = 'Popper: modifier \"%s\" provided an invalid %s property, expected %s but got %s';\nvar MISSING_DEPENDENCY_ERROR = 'Popper: modifier \"%s\" requires \"%s\", but \"%s\" modifier is not available';\nvar VALID_PROPERTIES = ['name', 'enabled', 'phase', 'fn', 'effect', 'requires', 'options'];\nfunction validateModifiers(modifiers) {\n  modifiers.forEach(function (modifier) {\n    Object.keys(modifier).forEach(function (key) {\n      switch (key) {\n        case 'name':\n          if (typeof modifier.name !== 'string') {\n            console.error(format(INVALID_MODIFIER_ERROR, String(modifier.name), '\"name\"', '\"string\"', \"\\\"\" + String(modifier.name) + \"\\\"\"));\n          }\n\n          break;\n\n        case 'enabled':\n          if (typeof modifier.enabled !== 'boolean') {\n            console.error(format(INVALID_MODIFIER_ERROR, modifier.name, '\"enabled\"', '\"boolean\"', \"\\\"\" + String(modifier.enabled) + \"\\\"\"));\n          }\n\n        case 'phase':\n          if (modifierPhases.indexOf(modifier.phase) < 0) {\n            console.error(format(INVALID_MODIFIER_ERROR, modifier.name, '\"phase\"', \"either \" + modifierPhases.join(', '), \"\\\"\" + String(modifier.phase) + \"\\\"\"));\n          }\n\n          break;\n\n        case 'fn':\n          if (typeof modifier.fn !== 'function') {\n            console.error(format(INVALID_MODIFIER_ERROR, modifier.name, '\"fn\"', '\"function\"', \"\\\"\" + String(modifier.fn) + \"\\\"\"));\n          }\n\n          break;\n\n        case 'effect':\n          if (typeof modifier.effect !== 'function') {\n            console.error(format(INVALID_MODIFIER_ERROR, modifier.name, '\"effect\"', '\"function\"', \"\\\"\" + String(modifier.fn) + \"\\\"\"));\n          }\n\n          break;\n\n        case 'requires':\n          if (!Array.isArray(modifier.requires)) {\n            console.error(format(INVALID_MODIFIER_ERROR, modifier.name, '\"requires\"', '\"array\"', \"\\\"\" + String(modifier.requires) + \"\\\"\"));\n          }\n\n          break;\n\n        case 'requiresIfExists':\n          if (!Array.isArray(modifier.requiresIfExists)) {\n            console.error(format(INVALID_MODIFIER_ERROR, modifier.name, '\"requiresIfExists\"', '\"array\"', \"\\\"\" + String(modifier.requiresIfExists) + \"\\\"\"));\n          }\n\n          break;\n\n        case 'options':\n        case 'data':\n          break;\n\n        default:\n          console.error(\"PopperJS: an invalid property has been provided to the \\\"\" + modifier.name + \"\\\" modifier, valid properties are \" + VALID_PROPERTIES.map(function (s) {\n            return \"\\\"\" + s + \"\\\"\";\n          }).join(', ') + \"; but \\\"\" + key + \"\\\" was provided.\");\n      }\n\n      modifier.requires && modifier.requires.forEach(function (requirement) {\n        if (modifiers.find(function (mod) {\n          return mod.name === requirement;\n        }) == null) {\n          console.error(format(MISSING_DEPENDENCY_ERROR, String(modifier.name), requirement, requirement));\n        }\n      });\n    });\n  });\n}\n\nfunction uniqueBy(arr, fn) {\n  var identifiers = new Set();\n  return arr.filter(function (item) {\n    var identifier = fn(item);\n\n    if (!identifiers.has(identifier)) {\n      identifiers.add(identifier);\n      return true;\n    }\n  });\n}\n\nfunction getBasePlacement(placement) {\n  return placement.split('-')[0];\n}\n\nfunction mergeByName(modifiers) {\n  var merged = modifiers.reduce(function (merged, current) {\n    var existing = merged[current.name];\n    merged[current.name] = existing ? Object.assign({}, existing, current, {\n      options: Object.assign({}, existing.options, current.options),\n      data: Object.assign({}, existing.data, current.data)\n    }) : current;\n    return merged;\n  }, {}); // IE11 does not support Object.values\n\n  return Object.keys(merged).map(function (key) {\n    return merged[key];\n  });\n}\n\nfunction getViewportRect(element) {\n  var win = getWindow(element);\n  var html = getDocumentElement(element);\n  var visualViewport = win.visualViewport;\n  var width = html.clientWidth;\n  var height = html.clientHeight;\n  var x = 0;\n  var y = 0; // NB: This isn't supported on iOS <= 12. If the keyboard is open, the popper\n  // can be obscured underneath it.\n  // Also, `html.clientHeight` adds the bottom bar height in Safari iOS, even\n  // if it isn't open, so if this isn't available, the popper will be detected\n  // to overflow the bottom of the screen too early.\n\n  if (visualViewport) {\n    width = visualViewport.width;\n    height = visualViewport.height; // Uses Layout Viewport (like Chrome; Safari does not currently)\n    // In Chrome, it returns a value very close to 0 (+/-) but contains rounding\n    // errors due to floating point numbers, so we need to check precision.\n    // Safari returns a number <= 0, usually < -1 when pinch-zoomed\n    // Feature detection fails in mobile emulation mode in Chrome.\n    // Math.abs(win.innerWidth / visualViewport.scale - visualViewport.width) <\n    // 0.001\n    // Fallback here: \"Not Safari\" userAgent\n\n    if (!/^((?!chrome|android).)*safari/i.test(navigator.userAgent)) {\n      x = visualViewport.offsetLeft;\n      y = visualViewport.offsetTop;\n    }\n  }\n\n  return {\n    width: width,\n    height: height,\n    x: x + getWindowScrollBarX(element),\n    y: y\n  };\n}\n\nvar max = Math.max;\nvar min = Math.min;\nvar round = Math.round;\n\n// of the `<html>` and `<body>` rect bounds if horizontally scrollable\n\nfunction getDocumentRect(element) {\n  var _element$ownerDocumen;\n\n  var html = getDocumentElement(element);\n  var winScroll = getWindowScroll(element);\n  var body = (_element$ownerDocumen = element.ownerDocument) == null ? void 0 : _element$ownerDocumen.body;\n  var width = max(html.scrollWidth, html.clientWidth, body ? body.scrollWidth : 0, body ? body.clientWidth : 0);\n  var height = max(html.scrollHeight, html.clientHeight, body ? body.scrollHeight : 0, body ? body.clientHeight : 0);\n  var x = -winScroll.scrollLeft + getWindowScrollBarX(element);\n  var y = -winScroll.scrollTop;\n\n  if (getComputedStyle(body || html).direction === 'rtl') {\n    x += max(html.clientWidth, body ? body.clientWidth : 0) - width;\n  }\n\n  return {\n    width: width,\n    height: height,\n    x: x,\n    y: y\n  };\n}\n\nfunction contains(parent, child) {\n  var rootNode = child.getRootNode && child.getRootNode(); // First, attempt with faster native method\n\n  if (parent.contains(child)) {\n    return true;\n  } // then fallback to custom implementation with Shadow DOM support\n  else if (rootNode && isShadowRoot(rootNode)) {\n      var next = child;\n\n      do {\n        if (next && parent.isSameNode(next)) {\n          return true;\n        } // $FlowFixMe[prop-missing]: need a better way to handle this...\n\n\n        next = next.parentNode || next.host;\n      } while (next);\n    } // Give up, the result is false\n\n\n  return false;\n}\n\nfunction rectToClientRect(rect) {\n  return Object.assign({}, rect, {\n    left: rect.x,\n    top: rect.y,\n    right: rect.x + rect.width,\n    bottom: rect.y + rect.height\n  });\n}\n\nfunction getInnerBoundingClientRect(element) {\n  var rect = getBoundingClientRect(element);\n  rect.top = rect.top + element.clientTop;\n  rect.left = rect.left + element.clientLeft;\n  rect.bottom = rect.top + element.clientHeight;\n  rect.right = rect.left + element.clientWidth;\n  rect.width = element.clientWidth;\n  rect.height = element.clientHeight;\n  rect.x = rect.left;\n  rect.y = rect.top;\n  return rect;\n}\n\nfunction getClientRectFromMixedType(element, clippingParent) {\n  return clippingParent === viewport ? rectToClientRect(getViewportRect(element)) : isHTMLElement(clippingParent) ? getInnerBoundingClientRect(clippingParent) : rectToClientRect(getDocumentRect(getDocumentElement(element)));\n} // A \"clipping parent\" is an overflowable container with the characteristic of\n// clipping (or hiding) overflowing elements with a position different from\n// `initial`\n\n\nfunction getClippingParents(element) {\n  var clippingParents = listScrollParents(getParentNode(element));\n  var canEscapeClipping = ['absolute', 'fixed'].indexOf(getComputedStyle(element).position) >= 0;\n  var clipperElement = canEscapeClipping && isHTMLElement(element) ? getOffsetParent(element) : element;\n\n  if (!isElement(clipperElement)) {\n    return [];\n  } // $FlowFixMe[incompatible-return]: https://github.com/facebook/flow/issues/1414\n\n\n  return clippingParents.filter(function (clippingParent) {\n    return isElement(clippingParent) && contains(clippingParent, clipperElement) && getNodeName(clippingParent) !== 'body';\n  });\n} // Gets the maximum area that the element is visible in due to any number of\n// clipping parents\n\n\nfunction getClippingRect(element, boundary, rootBoundary) {\n  var mainClippingParents = boundary === 'clippingParents' ? getClippingParents(element) : [].concat(boundary);\n  var clippingParents = [].concat(mainClippingParents, [rootBoundary]);\n  var firstClippingParent = clippingParents[0];\n  var clippingRect = clippingParents.reduce(function (accRect, clippingParent) {\n    var rect = getClientRectFromMixedType(element, clippingParent);\n    accRect.top = max(rect.top, accRect.top);\n    accRect.right = min(rect.right, accRect.right);\n    accRect.bottom = min(rect.bottom, accRect.bottom);\n    accRect.left = max(rect.left, accRect.left);\n    return accRect;\n  }, getClientRectFromMixedType(element, firstClippingParent));\n  clippingRect.width = clippingRect.right - clippingRect.left;\n  clippingRect.height = clippingRect.bottom - clippingRect.top;\n  clippingRect.x = clippingRect.left;\n  clippingRect.y = clippingRect.top;\n  return clippingRect;\n}\n\nfunction getVariation(placement) {\n  return placement.split('-')[1];\n}\n\nfunction getMainAxisFromPlacement(placement) {\n  return ['top', 'bottom'].indexOf(placement) >= 0 ? 'x' : 'y';\n}\n\nfunction computeOffsets(_ref) {\n  var reference = _ref.reference,\n      element = _ref.element,\n      placement = _ref.placement;\n  var basePlacement = placement ? getBasePlacement(placement) : null;\n  var variation = placement ? getVariation(placement) : null;\n  var commonX = reference.x + reference.width / 2 - element.width / 2;\n  var commonY = reference.y + reference.height / 2 - element.height / 2;\n  var offsets;\n\n  switch (basePlacement) {\n    case top:\n      offsets = {\n        x: commonX,\n        y: reference.y - element.height\n      };\n      break;\n\n    case bottom:\n      offsets = {\n        x: commonX,\n        y: reference.y + reference.height\n      };\n      break;\n\n    case right:\n      offsets = {\n        x: reference.x + reference.width,\n        y: commonY\n      };\n      break;\n\n    case left:\n      offsets = {\n        x: reference.x - element.width,\n        y: commonY\n      };\n      break;\n\n    default:\n      offsets = {\n        x: reference.x,\n        y: reference.y\n      };\n  }\n\n  var mainAxis = basePlacement ? getMainAxisFromPlacement(basePlacement) : null;\n\n  if (mainAxis != null) {\n    var len = mainAxis === 'y' ? 'height' : 'width';\n\n    switch (variation) {\n      case start:\n        offsets[mainAxis] = offsets[mainAxis] - (reference[len] / 2 - element[len] / 2);\n        break;\n\n      case end:\n        offsets[mainAxis] = offsets[mainAxis] + (reference[len] / 2 - element[len] / 2);\n        break;\n    }\n  }\n\n  return offsets;\n}\n\nfunction getFreshSideObject() {\n  return {\n    top: 0,\n    right: 0,\n    bottom: 0,\n    left: 0\n  };\n}\n\nfunction mergePaddingObject(paddingObject) {\n  return Object.assign({}, getFreshSideObject(), paddingObject);\n}\n\nfunction expandToHashMap(value, keys) {\n  return keys.reduce(function (hashMap, key) {\n    hashMap[key] = value;\n    return hashMap;\n  }, {});\n}\n\nfunction detectOverflow(state, options) {\n  if (options === void 0) {\n    options = {};\n  }\n\n  var _options = options,\n      _options$placement = _options.placement,\n      placement = _options$placement === void 0 ? state.placement : _options$placement,\n      _options$boundary = _options.boundary,\n      boundary = _options$boundary === void 0 ? clippingParents : _options$boundary,\n      _options$rootBoundary = _options.rootBoundary,\n      rootBoundary = _options$rootBoundary === void 0 ? viewport : _options$rootBoundary,\n      _options$elementConte = _options.elementContext,\n      elementContext = _options$elementConte === void 0 ? popper : _options$elementConte,\n      _options$altBoundary = _options.altBoundary,\n      altBoundary = _options$altBoundary === void 0 ? false : _options$altBoundary,\n      _options$padding = _options.padding,\n      padding = _options$padding === void 0 ? 0 : _options$padding;\n  var paddingObject = mergePaddingObject(typeof padding !== 'number' ? padding : expandToHashMap(padding, basePlacements));\n  var altContext = elementContext === popper ? reference : popper;\n  var referenceElement = state.elements.reference;\n  var popperRect = state.rects.popper;\n  var element = state.elements[altBoundary ? altContext : elementContext];\n  var clippingClientRect = getClippingRect(isElement(element) ? element : element.contextElement || getDocumentElement(state.elements.popper), boundary, rootBoundary);\n  var referenceClientRect = getBoundingClientRect(referenceElement);\n  var popperOffsets = computeOffsets({\n    reference: referenceClientRect,\n    element: popperRect,\n    strategy: 'absolute',\n    placement: placement\n  });\n  var popperClientRect = rectToClientRect(Object.assign({}, popperRect, popperOffsets));\n  var elementClientRect = elementContext === popper ? popperClientRect : referenceClientRect; // positive = overflowing the clipping rect\n  // 0 or negative = within the clipping rect\n\n  var overflowOffsets = {\n    top: clippingClientRect.top - elementClientRect.top + paddingObject.top,\n    bottom: elementClientRect.bottom - clippingClientRect.bottom + paddingObject.bottom,\n    left: clippingClientRect.left - elementClientRect.left + paddingObject.left,\n    right: elementClientRect.right - clippingClientRect.right + paddingObject.right\n  };\n  var offsetData = state.modifiersData.offset; // Offsets can be applied only to the popper element\n\n  if (elementContext === popper && offsetData) {\n    var offset = offsetData[placement];\n    Object.keys(overflowOffsets).forEach(function (key) {\n      var multiply = [right, bottom].indexOf(key) >= 0 ? 1 : -1;\n      var axis = [top, bottom].indexOf(key) >= 0 ? 'y' : 'x';\n      overflowOffsets[key] += offset[axis] * multiply;\n    });\n  }\n\n  return overflowOffsets;\n}\n\nvar INVALID_ELEMENT_ERROR = 'Popper: Invalid reference or popper argument provided. They must be either a DOM element or virtual element.';\nvar INFINITE_LOOP_ERROR = 'Popper: An infinite loop in the modifiers cycle has been detected! The cycle has been interrupted to prevent a browser crash.';\nvar DEFAULT_OPTIONS = {\n  placement: 'bottom',\n  modifiers: [],\n  strategy: 'absolute'\n};\n\nfunction areValidElements() {\n  for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n    args[_key] = arguments[_key];\n  }\n\n  return !args.some(function (element) {\n    return !(element && typeof element.getBoundingClientRect === 'function');\n  });\n}\n\nfunction popperGenerator(generatorOptions) {\n  if (generatorOptions === void 0) {\n    generatorOptions = {};\n  }\n\n  var _generatorOptions = generatorOptions,\n      _generatorOptions$def = _generatorOptions.defaultModifiers,\n      defaultModifiers = _generatorOptions$def === void 0 ? [] : _generatorOptions$def,\n      _generatorOptions$def2 = _generatorOptions.defaultOptions,\n      defaultOptions = _generatorOptions$def2 === void 0 ? DEFAULT_OPTIONS : _generatorOptions$def2;\n  return function createPopper(reference, popper, options) {\n    if (options === void 0) {\n      options = defaultOptions;\n    }\n\n    var state = {\n      placement: 'bottom',\n      orderedModifiers: [],\n      options: Object.assign({}, DEFAULT_OPTIONS, defaultOptions),\n      modifiersData: {},\n      elements: {\n        reference: reference,\n        popper: popper\n      },\n      attributes: {},\n      styles: {}\n    };\n    var effectCleanupFns = [];\n    var isDestroyed = false;\n    var instance = {\n      state: state,\n      setOptions: function setOptions(options) {\n        cleanupModifierEffects();\n        state.options = Object.assign({}, defaultOptions, state.options, options);\n        state.scrollParents = {\n          reference: isElement(reference) ? listScrollParents(reference) : reference.contextElement ? listScrollParents(reference.contextElement) : [],\n          popper: listScrollParents(popper)\n        }; // Orders the modifiers based on their dependencies and `phase`\n        // properties\n\n        var orderedModifiers = orderModifiers(mergeByName([].concat(defaultModifiers, state.options.modifiers))); // Strip out disabled modifiers\n\n        state.orderedModifiers = orderedModifiers.filter(function (m) {\n          return m.enabled;\n        }); // Validate the provided modifiers so that the consumer will get warned\n        // if one of the modifiers is invalid for any reason\n\n        if (process.env.NODE_ENV !== \"production\") {\n          var modifiers = uniqueBy([].concat(orderedModifiers, state.options.modifiers), function (_ref) {\n            var name = _ref.name;\n            return name;\n          });\n          validateModifiers(modifiers);\n\n          if (getBasePlacement(state.options.placement) === auto) {\n            var flipModifier = state.orderedModifiers.find(function (_ref2) {\n              var name = _ref2.name;\n              return name === 'flip';\n            });\n\n            if (!flipModifier) {\n              console.error(['Popper: \"auto\" placements require the \"flip\" modifier be', 'present and enabled to work.'].join(' '));\n            }\n          }\n\n          var _getComputedStyle = getComputedStyle(popper),\n              marginTop = _getComputedStyle.marginTop,\n              marginRight = _getComputedStyle.marginRight,\n              marginBottom = _getComputedStyle.marginBottom,\n              marginLeft = _getComputedStyle.marginLeft; // We no longer take into account `margins` on the popper, and it can\n          // cause bugs with positioning, so we'll warn the consumer\n\n\n          if ([marginTop, marginRight, marginBottom, marginLeft].some(function (margin) {\n            return parseFloat(margin);\n          })) {\n            console.warn(['Popper: CSS \"margin\" styles cannot be used to apply padding', 'between the popper and its reference element or boundary.', 'To replicate margin, use the `offset` modifier, as well as', 'the `padding` option in the `preventOverflow` and `flip`', 'modifiers.'].join(' '));\n          }\n        }\n\n        runModifierEffects();\n        return instance.update();\n      },\n      // Sync update – it will always be executed, even if not necessary. This\n      // is useful for low frequency updates where sync behavior simplifies the\n      // logic.\n      // For high frequency updates (e.g. `resize` and `scroll` events), always\n      // prefer the async Popper#update method\n      forceUpdate: function forceUpdate() {\n        if (isDestroyed) {\n          return;\n        }\n\n        var _state$elements = state.elements,\n            reference = _state$elements.reference,\n            popper = _state$elements.popper; // Don't proceed if `reference` or `popper` are not valid elements\n        // anymore\n\n        if (!areValidElements(reference, popper)) {\n          if (process.env.NODE_ENV !== \"production\") {\n            console.error(INVALID_ELEMENT_ERROR);\n          }\n\n          return;\n        } // Store the reference and popper rects to be read by modifiers\n\n\n        state.rects = {\n          reference: getCompositeRect(reference, getOffsetParent(popper), state.options.strategy === 'fixed'),\n          popper: getLayoutRect(popper)\n        }; // Modifiers have the ability to reset the current update cycle. The\n        // most common use case for this is the `flip` modifier changing the\n        // placement, which then needs to re-run all the modifiers, because the\n        // logic was previously ran for the previous placement and is therefore\n        // stale/incorrect\n\n        state.reset = false;\n        state.placement = state.options.placement; // On each update cycle, the `modifiersData` property for each modifier\n        // is filled with the initial data specified by the modifier. This means\n        // it doesn't persist and is fresh on each update.\n        // To ensure persistent data, use `${name}#persistent`\n\n        state.orderedModifiers.forEach(function (modifier) {\n          return state.modifiersData[modifier.name] = Object.assign({}, modifier.data);\n        });\n        var __debug_loops__ = 0;\n\n        for (var index = 0; index < state.orderedModifiers.length; index++) {\n          if (process.env.NODE_ENV !== \"production\") {\n            __debug_loops__ += 1;\n\n            if (__debug_loops__ > 100) {\n              console.error(INFINITE_LOOP_ERROR);\n              break;\n            }\n          }\n\n          if (state.reset === true) {\n            state.reset = false;\n            index = -1;\n            continue;\n          }\n\n          var _state$orderedModifie = state.orderedModifiers[index],\n              fn = _state$orderedModifie.fn,\n              _state$orderedModifie2 = _state$orderedModifie.options,\n              _options = _state$orderedModifie2 === void 0 ? {} : _state$orderedModifie2,\n              name = _state$orderedModifie.name;\n\n          if (typeof fn === 'function') {\n            state = fn({\n              state: state,\n              options: _options,\n              name: name,\n              instance: instance\n            }) || state;\n          }\n        }\n      },\n      // Async and optimistically optimized update – it will not be executed if\n      // not necessary (debounced to run at most once-per-tick)\n      update: debounce(function () {\n        return new Promise(function (resolve) {\n          instance.forceUpdate();\n          resolve(state);\n        });\n      }),\n      destroy: function destroy() {\n        cleanupModifierEffects();\n        isDestroyed = true;\n      }\n    };\n\n    if (!areValidElements(reference, popper)) {\n      if (process.env.NODE_ENV !== \"production\") {\n        console.error(INVALID_ELEMENT_ERROR);\n      }\n\n      return instance;\n    }\n\n    instance.setOptions(options).then(function (state) {\n      if (!isDestroyed && options.onFirstUpdate) {\n        options.onFirstUpdate(state);\n      }\n    }); // Modifiers have the ability to execute arbitrary code before the first\n    // update cycle runs. They will be executed in the same order as the update\n    // cycle. This is useful when a modifier adds some persistent data that\n    // other modifiers need to use, but the modifier is run after the dependent\n    // one.\n\n    function runModifierEffects() {\n      state.orderedModifiers.forEach(function (_ref3) {\n        var name = _ref3.name,\n            _ref3$options = _ref3.options,\n            options = _ref3$options === void 0 ? {} : _ref3$options,\n            effect = _ref3.effect;\n\n        if (typeof effect === 'function') {\n          var cleanupFn = effect({\n            state: state,\n            name: name,\n            instance: instance,\n            options: options\n          });\n\n          var noopFn = function noopFn() {};\n\n          effectCleanupFns.push(cleanupFn || noopFn);\n        }\n      });\n    }\n\n    function cleanupModifierEffects() {\n      effectCleanupFns.forEach(function (fn) {\n        return fn();\n      });\n      effectCleanupFns = [];\n    }\n\n    return instance;\n  };\n}\n\nvar passive = {\n  passive: true\n};\n\nfunction effect$1(_ref) {\n  var state = _ref.state,\n      instance = _ref.instance,\n      options = _ref.options;\n  var _options$scroll = options.scroll,\n      scroll = _options$scroll === void 0 ? true : _options$scroll,\n      _options$resize = options.resize,\n      resize = _options$resize === void 0 ? true : _options$resize;\n  var window = getWindow(state.elements.popper);\n  var scrollParents = [].concat(state.scrollParents.reference, state.scrollParents.popper);\n\n  if (scroll) {\n    scrollParents.forEach(function (scrollParent) {\n      scrollParent.addEventListener('scroll', instance.update, passive);\n    });\n  }\n\n  if (resize) {\n    window.addEventListener('resize', instance.update, passive);\n  }\n\n  return function () {\n    if (scroll) {\n      scrollParents.forEach(function (scrollParent) {\n        scrollParent.removeEventListener('scroll', instance.update, passive);\n      });\n    }\n\n    if (resize) {\n      window.removeEventListener('resize', instance.update, passive);\n    }\n  };\n} // eslint-disable-next-line import/no-unused-modules\n\n\nvar eventListeners = {\n  name: 'eventListeners',\n  enabled: true,\n  phase: 'write',\n  fn: function fn() {},\n  effect: effect$1,\n  data: {}\n};\n\nfunction popperOffsets(_ref) {\n  var state = _ref.state,\n      name = _ref.name;\n  // Offsets are the actual position the popper needs to have to be\n  // properly positioned near its reference element\n  // This is the most basic placement, and will be adjusted by\n  // the modifiers in the next step\n  state.modifiersData[name] = computeOffsets({\n    reference: state.rects.reference,\n    element: state.rects.popper,\n    strategy: 'absolute',\n    placement: state.placement\n  });\n} // eslint-disable-next-line import/no-unused-modules\n\n\nvar popperOffsets$1 = {\n  name: 'popperOffsets',\n  enabled: true,\n  phase: 'read',\n  fn: popperOffsets,\n  data: {}\n};\n\nvar unsetSides = {\n  top: 'auto',\n  right: 'auto',\n  bottom: 'auto',\n  left: 'auto'\n}; // Round the offsets to the nearest suitable subpixel based on the DPR.\n// Zooming can change the DPR, but it seems to report a value that will\n// cleanly divide the values into the appropriate subpixels.\n\nfunction roundOffsetsByDPR(_ref) {\n  var x = _ref.x,\n      y = _ref.y;\n  var win = window;\n  var dpr = win.devicePixelRatio || 1;\n  return {\n    x: round(round(x * dpr) / dpr) || 0,\n    y: round(round(y * dpr) / dpr) || 0\n  };\n}\n\nfunction mapToStyles(_ref2) {\n  var _Object$assign2;\n\n  var popper = _ref2.popper,\n      popperRect = _ref2.popperRect,\n      placement = _ref2.placement,\n      offsets = _ref2.offsets,\n      position = _ref2.position,\n      gpuAcceleration = _ref2.gpuAcceleration,\n      adaptive = _ref2.adaptive,\n      roundOffsets = _ref2.roundOffsets;\n\n  var _ref3 = roundOffsets === true ? roundOffsetsByDPR(offsets) : typeof roundOffsets === 'function' ? roundOffsets(offsets) : offsets,\n      _ref3$x = _ref3.x,\n      x = _ref3$x === void 0 ? 0 : _ref3$x,\n      _ref3$y = _ref3.y,\n      y = _ref3$y === void 0 ? 0 : _ref3$y;\n\n  var hasX = offsets.hasOwnProperty('x');\n  var hasY = offsets.hasOwnProperty('y');\n  var sideX = left;\n  var sideY = top;\n  var win = window;\n\n  if (adaptive) {\n    var offsetParent = getOffsetParent(popper);\n    var heightProp = 'clientHeight';\n    var widthProp = 'clientWidth';\n\n    if (offsetParent === getWindow(popper)) {\n      offsetParent = getDocumentElement(popper);\n\n      if (getComputedStyle(offsetParent).position !== 'static') {\n        heightProp = 'scrollHeight';\n        widthProp = 'scrollWidth';\n      }\n    } // $FlowFixMe[incompatible-cast]: force type refinement, we compare offsetParent with window above, but Flow doesn't detect it\n\n\n    offsetParent = offsetParent;\n\n    if (placement === top) {\n      sideY = bottom; // $FlowFixMe[prop-missing]\n\n      y -= offsetParent[heightProp] - popperRect.height;\n      y *= gpuAcceleration ? 1 : -1;\n    }\n\n    if (placement === left) {\n      sideX = right; // $FlowFixMe[prop-missing]\n\n      x -= offsetParent[widthProp] - popperRect.width;\n      x *= gpuAcceleration ? 1 : -1;\n    }\n  }\n\n  var commonStyles = Object.assign({\n    position: position\n  }, adaptive && unsetSides);\n\n  if (gpuAcceleration) {\n    var _Object$assign;\n\n    return Object.assign({}, commonStyles, (_Object$assign = {}, _Object$assign[sideY] = hasY ? '0' : '', _Object$assign[sideX] = hasX ? '0' : '', _Object$assign.transform = (win.devicePixelRatio || 1) < 2 ? \"translate(\" + x + \"px, \" + y + \"px)\" : \"translate3d(\" + x + \"px, \" + y + \"px, 0)\", _Object$assign));\n  }\n\n  return Object.assign({}, commonStyles, (_Object$assign2 = {}, _Object$assign2[sideY] = hasY ? y + \"px\" : '', _Object$assign2[sideX] = hasX ? x + \"px\" : '', _Object$assign2.transform = '', _Object$assign2));\n}\n\nfunction computeStyles(_ref4) {\n  var state = _ref4.state,\n      options = _ref4.options;\n  var _options$gpuAccelerat = options.gpuAcceleration,\n      gpuAcceleration = _options$gpuAccelerat === void 0 ? true : _options$gpuAccelerat,\n      _options$adaptive = options.adaptive,\n      adaptive = _options$adaptive === void 0 ? true : _options$adaptive,\n      _options$roundOffsets = options.roundOffsets,\n      roundOffsets = _options$roundOffsets === void 0 ? true : _options$roundOffsets;\n\n  if (process.env.NODE_ENV !== \"production\") {\n    var transitionProperty = getComputedStyle(state.elements.popper).transitionProperty || '';\n\n    if (adaptive && ['transform', 'top', 'right', 'bottom', 'left'].some(function (property) {\n      return transitionProperty.indexOf(property) >= 0;\n    })) {\n      console.warn(['Popper: Detected CSS transitions on at least one of the following', 'CSS properties: \"transform\", \"top\", \"right\", \"bottom\", \"left\".', '\\n\\n', 'Disable the \"computeStyles\" modifier\\'s `adaptive` option to allow', 'for smooth transitions, or remove these properties from the CSS', 'transition declaration on the popper element if only transitioning', 'opacity or background-color for example.', '\\n\\n', 'We recommend using the popper element as a wrapper around an inner', 'element that can have any CSS property transitioned for animations.'].join(' '));\n    }\n  }\n\n  var commonStyles = {\n    placement: getBasePlacement(state.placement),\n    popper: state.elements.popper,\n    popperRect: state.rects.popper,\n    gpuAcceleration: gpuAcceleration\n  };\n\n  if (state.modifiersData.popperOffsets != null) {\n    state.styles.popper = Object.assign({}, state.styles.popper, mapToStyles(Object.assign({}, commonStyles, {\n      offsets: state.modifiersData.popperOffsets,\n      position: state.options.strategy,\n      adaptive: adaptive,\n      roundOffsets: roundOffsets\n    })));\n  }\n\n  if (state.modifiersData.arrow != null) {\n    state.styles.arrow = Object.assign({}, state.styles.arrow, mapToStyles(Object.assign({}, commonStyles, {\n      offsets: state.modifiersData.arrow,\n      position: 'absolute',\n      adaptive: false,\n      roundOffsets: roundOffsets\n    })));\n  }\n\n  state.attributes.popper = Object.assign({}, state.attributes.popper, {\n    'data-popper-placement': state.placement\n  });\n} // eslint-disable-next-line import/no-unused-modules\n\n\nvar computeStyles$1 = {\n  name: 'computeStyles',\n  enabled: true,\n  phase: 'beforeWrite',\n  fn: computeStyles,\n  data: {}\n};\n\n// and applies them to the HTMLElements such as popper and arrow\n\nfunction applyStyles(_ref) {\n  var state = _ref.state;\n  Object.keys(state.elements).forEach(function (name) {\n    var style = state.styles[name] || {};\n    var attributes = state.attributes[name] || {};\n    var element = state.elements[name]; // arrow is optional + virtual elements\n\n    if (!isHTMLElement(element) || !getNodeName(element)) {\n      return;\n    } // Flow doesn't support to extend this property, but it's the most\n    // effective way to apply styles to an HTMLElement\n    // $FlowFixMe[cannot-write]\n\n\n    Object.assign(element.style, style);\n    Object.keys(attributes).forEach(function (name) {\n      var value = attributes[name];\n\n      if (value === false) {\n        element.removeAttribute(name);\n      } else {\n        element.setAttribute(name, value === true ? '' : value);\n      }\n    });\n  });\n}\n\nfunction effect(_ref2) {\n  var state = _ref2.state;\n  var initialStyles = {\n    popper: {\n      position: state.options.strategy,\n      left: '0',\n      top: '0',\n      margin: '0'\n    },\n    arrow: {\n      position: 'absolute'\n    },\n    reference: {}\n  };\n  Object.assign(state.elements.popper.style, initialStyles.popper);\n  state.styles = initialStyles;\n\n  if (state.elements.arrow) {\n    Object.assign(state.elements.arrow.style, initialStyles.arrow);\n  }\n\n  return function () {\n    Object.keys(state.elements).forEach(function (name) {\n      var element = state.elements[name];\n      var attributes = state.attributes[name] || {};\n      var styleProperties = Object.keys(state.styles.hasOwnProperty(name) ? state.styles[name] : initialStyles[name]); // Set all values to an empty string to unset them\n\n      var style = styleProperties.reduce(function (style, property) {\n        style[property] = '';\n        return style;\n      }, {}); // arrow is optional + virtual elements\n\n      if (!isHTMLElement(element) || !getNodeName(element)) {\n        return;\n      }\n\n      Object.assign(element.style, style);\n      Object.keys(attributes).forEach(function (attribute) {\n        element.removeAttribute(attribute);\n      });\n    });\n  };\n} // eslint-disable-next-line import/no-unused-modules\n\n\nvar applyStyles$1 = {\n  name: 'applyStyles',\n  enabled: true,\n  phase: 'write',\n  fn: applyStyles,\n  effect: effect,\n  requires: ['computeStyles']\n};\n\nvar defaultModifiers = [eventListeners, popperOffsets$1, computeStyles$1, applyStyles$1];\nvar createPopper = /*#__PURE__*/popperGenerator({\n  defaultModifiers: defaultModifiers\n}); // eslint-disable-next-line import/no-unused-modules\n\nexports.createPopper = createPopper;\nexports.defaultModifiers = defaultModifiers;\nexports.detectOverflow = detectOverflow;\nexports.popperGenerator = popperGenerator;\n//# sourceMappingURL=popper-lite.js.map\n"
  },
  {
    "path": "static/assets/vendor/@popperjs/core/dist/cjs/popper-lite.js.flow",
    "content": "// @flow\n\nexport * from '../../lib/popper-lite.js'\n"
  },
  {
    "path": "static/assets/vendor/@popperjs/core/dist/cjs/popper.js",
    "content": "/**\n * @popperjs/core v2.9.3 - MIT License\n */\n\n'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nfunction getWindow(node) {\n  if (node == null) {\n    return window;\n  }\n\n  if (node.toString() !== '[object Window]') {\n    var ownerDocument = node.ownerDocument;\n    return ownerDocument ? ownerDocument.defaultView || window : window;\n  }\n\n  return node;\n}\n\nfunction isElement(node) {\n  var OwnElement = getWindow(node).Element;\n  return node instanceof OwnElement || node instanceof Element;\n}\n\nfunction isHTMLElement(node) {\n  var OwnElement = getWindow(node).HTMLElement;\n  return node instanceof OwnElement || node instanceof HTMLElement;\n}\n\nfunction isShadowRoot(node) {\n  // IE 11 has no ShadowRoot\n  if (typeof ShadowRoot === 'undefined') {\n    return false;\n  }\n\n  var OwnElement = getWindow(node).ShadowRoot;\n  return node instanceof OwnElement || node instanceof ShadowRoot;\n}\n\nvar round$1 = Math.round;\nfunction getBoundingClientRect(element, includeScale) {\n  if (includeScale === void 0) {\n    includeScale = false;\n  }\n\n  var rect = element.getBoundingClientRect();\n  var scaleX = 1;\n  var scaleY = 1;\n\n  if (isHTMLElement(element) && includeScale) {\n    // Fallback to 1 in case both values are `0`\n    scaleX = rect.width / element.offsetWidth || 1;\n    scaleY = rect.height / element.offsetHeight || 1;\n  }\n\n  return {\n    width: round$1(rect.width / scaleX),\n    height: round$1(rect.height / scaleY),\n    top: round$1(rect.top / scaleY),\n    right: round$1(rect.right / scaleX),\n    bottom: round$1(rect.bottom / scaleY),\n    left: round$1(rect.left / scaleX),\n    x: round$1(rect.left / scaleX),\n    y: round$1(rect.top / scaleY)\n  };\n}\n\nfunction getWindowScroll(node) {\n  var win = getWindow(node);\n  var scrollLeft = win.pageXOffset;\n  var scrollTop = win.pageYOffset;\n  return {\n    scrollLeft: scrollLeft,\n    scrollTop: scrollTop\n  };\n}\n\nfunction getHTMLElementScroll(element) {\n  return {\n    scrollLeft: element.scrollLeft,\n    scrollTop: element.scrollTop\n  };\n}\n\nfunction getNodeScroll(node) {\n  if (node === getWindow(node) || !isHTMLElement(node)) {\n    return getWindowScroll(node);\n  } else {\n    return getHTMLElementScroll(node);\n  }\n}\n\nfunction getNodeName(element) {\n  return element ? (element.nodeName || '').toLowerCase() : null;\n}\n\nfunction getDocumentElement(element) {\n  // $FlowFixMe[incompatible-return]: assume body is always available\n  return ((isElement(element) ? element.ownerDocument : // $FlowFixMe[prop-missing]\n  element.document) || window.document).documentElement;\n}\n\nfunction getWindowScrollBarX(element) {\n  // If <html> has a CSS width greater than the viewport, then this will be\n  // incorrect for RTL.\n  // Popper 1 is broken in this case and never had a bug report so let's assume\n  // it's not an issue. I don't think anyone ever specifies width on <html>\n  // anyway.\n  // Browsers where the left scrollbar doesn't cause an issue report `0` for\n  // this (e.g. Edge 2019, IE11, Safari)\n  return getBoundingClientRect(getDocumentElement(element)).left + getWindowScroll(element).scrollLeft;\n}\n\nfunction getComputedStyle(element) {\n  return getWindow(element).getComputedStyle(element);\n}\n\nfunction isScrollParent(element) {\n  // Firefox wants us to check `-x` and `-y` variations as well\n  var _getComputedStyle = getComputedStyle(element),\n      overflow = _getComputedStyle.overflow,\n      overflowX = _getComputedStyle.overflowX,\n      overflowY = _getComputedStyle.overflowY;\n\n  return /auto|scroll|overlay|hidden/.test(overflow + overflowY + overflowX);\n}\n\nfunction isElementScaled(element) {\n  var rect = element.getBoundingClientRect();\n  var scaleX = rect.width / element.offsetWidth || 1;\n  var scaleY = rect.height / element.offsetHeight || 1;\n  return scaleX !== 1 || scaleY !== 1;\n} // Returns the composite rect of an element relative to its offsetParent.\n// Composite means it takes into account transforms as well as layout.\n\n\nfunction getCompositeRect(elementOrVirtualElement, offsetParent, isFixed) {\n  if (isFixed === void 0) {\n    isFixed = false;\n  }\n\n  var isOffsetParentAnElement = isHTMLElement(offsetParent);\n  var offsetParentIsScaled = isHTMLElement(offsetParent) && isElementScaled(offsetParent);\n  var documentElement = getDocumentElement(offsetParent);\n  var rect = getBoundingClientRect(elementOrVirtualElement, offsetParentIsScaled);\n  var scroll = {\n    scrollLeft: 0,\n    scrollTop: 0\n  };\n  var offsets = {\n    x: 0,\n    y: 0\n  };\n\n  if (isOffsetParentAnElement || !isOffsetParentAnElement && !isFixed) {\n    if (getNodeName(offsetParent) !== 'body' || // https://github.com/popperjs/popper-core/issues/1078\n    isScrollParent(documentElement)) {\n      scroll = getNodeScroll(offsetParent);\n    }\n\n    if (isHTMLElement(offsetParent)) {\n      offsets = getBoundingClientRect(offsetParent, true);\n      offsets.x += offsetParent.clientLeft;\n      offsets.y += offsetParent.clientTop;\n    } else if (documentElement) {\n      offsets.x = getWindowScrollBarX(documentElement);\n    }\n  }\n\n  return {\n    x: rect.left + scroll.scrollLeft - offsets.x,\n    y: rect.top + scroll.scrollTop - offsets.y,\n    width: rect.width,\n    height: rect.height\n  };\n}\n\n// means it doesn't take into account transforms.\n\nfunction getLayoutRect(element) {\n  var clientRect = getBoundingClientRect(element); // Use the clientRect sizes if it's not been transformed.\n  // Fixes https://github.com/popperjs/popper-core/issues/1223\n\n  var width = element.offsetWidth;\n  var height = element.offsetHeight;\n\n  if (Math.abs(clientRect.width - width) <= 1) {\n    width = clientRect.width;\n  }\n\n  if (Math.abs(clientRect.height - height) <= 1) {\n    height = clientRect.height;\n  }\n\n  return {\n    x: element.offsetLeft,\n    y: element.offsetTop,\n    width: width,\n    height: height\n  };\n}\n\nfunction getParentNode(element) {\n  if (getNodeName(element) === 'html') {\n    return element;\n  }\n\n  return (// this is a quicker (but less type safe) way to save quite some bytes from the bundle\n    // $FlowFixMe[incompatible-return]\n    // $FlowFixMe[prop-missing]\n    element.assignedSlot || // step into the shadow DOM of the parent of a slotted node\n    element.parentNode || ( // DOM Element detected\n    isShadowRoot(element) ? element.host : null) || // ShadowRoot detected\n    // $FlowFixMe[incompatible-call]: HTMLElement is a Node\n    getDocumentElement(element) // fallback\n\n  );\n}\n\nfunction getScrollParent(node) {\n  if (['html', 'body', '#document'].indexOf(getNodeName(node)) >= 0) {\n    // $FlowFixMe[incompatible-return]: assume body is always available\n    return node.ownerDocument.body;\n  }\n\n  if (isHTMLElement(node) && isScrollParent(node)) {\n    return node;\n  }\n\n  return getScrollParent(getParentNode(node));\n}\n\n/*\ngiven a DOM element, return the list of all scroll parents, up the list of ancesors\nuntil we get to the top window object. This list is what we attach scroll listeners\nto, because if any of these parent elements scroll, we'll need to re-calculate the\nreference element's position.\n*/\n\nfunction listScrollParents(element, list) {\n  var _element$ownerDocumen;\n\n  if (list === void 0) {\n    list = [];\n  }\n\n  var scrollParent = getScrollParent(element);\n  var isBody = scrollParent === ((_element$ownerDocumen = element.ownerDocument) == null ? void 0 : _element$ownerDocumen.body);\n  var win = getWindow(scrollParent);\n  var target = isBody ? [win].concat(win.visualViewport || [], isScrollParent(scrollParent) ? scrollParent : []) : scrollParent;\n  var updatedList = list.concat(target);\n  return isBody ? updatedList : // $FlowFixMe[incompatible-call]: isBody tells us target will be an HTMLElement here\n  updatedList.concat(listScrollParents(getParentNode(target)));\n}\n\nfunction isTableElement(element) {\n  return ['table', 'td', 'th'].indexOf(getNodeName(element)) >= 0;\n}\n\nfunction getTrueOffsetParent(element) {\n  if (!isHTMLElement(element) || // https://github.com/popperjs/popper-core/issues/837\n  getComputedStyle(element).position === 'fixed') {\n    return null;\n  }\n\n  return element.offsetParent;\n} // `.offsetParent` reports `null` for fixed elements, while absolute elements\n// return the containing block\n\n\nfunction getContainingBlock(element) {\n  var isFirefox = navigator.userAgent.toLowerCase().indexOf('firefox') !== -1;\n  var isIE = navigator.userAgent.indexOf('Trident') !== -1;\n\n  if (isIE && isHTMLElement(element)) {\n    // In IE 9, 10 and 11 fixed elements containing block is always established by the viewport\n    var elementCss = getComputedStyle(element);\n\n    if (elementCss.position === 'fixed') {\n      return null;\n    }\n  }\n\n  var currentNode = getParentNode(element);\n\n  while (isHTMLElement(currentNode) && ['html', 'body'].indexOf(getNodeName(currentNode)) < 0) {\n    var css = getComputedStyle(currentNode); // This is non-exhaustive but covers the most common CSS properties that\n    // create a containing block.\n    // https://developer.mozilla.org/en-US/docs/Web/CSS/Containing_block#identifying_the_containing_block\n\n    if (css.transform !== 'none' || css.perspective !== 'none' || css.contain === 'paint' || ['transform', 'perspective'].indexOf(css.willChange) !== -1 || isFirefox && css.willChange === 'filter' || isFirefox && css.filter && css.filter !== 'none') {\n      return currentNode;\n    } else {\n      currentNode = currentNode.parentNode;\n    }\n  }\n\n  return null;\n} // Gets the closest ancestor positioned element. Handles some edge cases,\n// such as table ancestors and cross browser bugs.\n\n\nfunction getOffsetParent(element) {\n  var window = getWindow(element);\n  var offsetParent = getTrueOffsetParent(element);\n\n  while (offsetParent && isTableElement(offsetParent) && getComputedStyle(offsetParent).position === 'static') {\n    offsetParent = getTrueOffsetParent(offsetParent);\n  }\n\n  if (offsetParent && (getNodeName(offsetParent) === 'html' || getNodeName(offsetParent) === 'body' && getComputedStyle(offsetParent).position === 'static')) {\n    return window;\n  }\n\n  return offsetParent || getContainingBlock(element) || window;\n}\n\nvar top = 'top';\nvar bottom = 'bottom';\nvar right = 'right';\nvar left = 'left';\nvar auto = 'auto';\nvar basePlacements = [top, bottom, right, left];\nvar start = 'start';\nvar end = 'end';\nvar clippingParents = 'clippingParents';\nvar viewport = 'viewport';\nvar popper = 'popper';\nvar reference = 'reference';\nvar variationPlacements = /*#__PURE__*/basePlacements.reduce(function (acc, placement) {\n  return acc.concat([placement + \"-\" + start, placement + \"-\" + end]);\n}, []);\nvar placements = /*#__PURE__*/[].concat(basePlacements, [auto]).reduce(function (acc, placement) {\n  return acc.concat([placement, placement + \"-\" + start, placement + \"-\" + end]);\n}, []); // modifiers that need to read the DOM\n\nvar beforeRead = 'beforeRead';\nvar read = 'read';\nvar afterRead = 'afterRead'; // pure-logic modifiers\n\nvar beforeMain = 'beforeMain';\nvar main = 'main';\nvar afterMain = 'afterMain'; // modifier with the purpose to write to the DOM (or write into a framework state)\n\nvar beforeWrite = 'beforeWrite';\nvar write = 'write';\nvar afterWrite = 'afterWrite';\nvar modifierPhases = [beforeRead, read, afterRead, beforeMain, main, afterMain, beforeWrite, write, afterWrite];\n\nfunction order(modifiers) {\n  var map = new Map();\n  var visited = new Set();\n  var result = [];\n  modifiers.forEach(function (modifier) {\n    map.set(modifier.name, modifier);\n  }); // On visiting object, check for its dependencies and visit them recursively\n\n  function sort(modifier) {\n    visited.add(modifier.name);\n    var requires = [].concat(modifier.requires || [], modifier.requiresIfExists || []);\n    requires.forEach(function (dep) {\n      if (!visited.has(dep)) {\n        var depModifier = map.get(dep);\n\n        if (depModifier) {\n          sort(depModifier);\n        }\n      }\n    });\n    result.push(modifier);\n  }\n\n  modifiers.forEach(function (modifier) {\n    if (!visited.has(modifier.name)) {\n      // check for visited object\n      sort(modifier);\n    }\n  });\n  return result;\n}\n\nfunction orderModifiers(modifiers) {\n  // order based on dependencies\n  var orderedModifiers = order(modifiers); // order based on phase\n\n  return modifierPhases.reduce(function (acc, phase) {\n    return acc.concat(orderedModifiers.filter(function (modifier) {\n      return modifier.phase === phase;\n    }));\n  }, []);\n}\n\nfunction debounce(fn) {\n  var pending;\n  return function () {\n    if (!pending) {\n      pending = new Promise(function (resolve) {\n        Promise.resolve().then(function () {\n          pending = undefined;\n          resolve(fn());\n        });\n      });\n    }\n\n    return pending;\n  };\n}\n\nfunction format(str) {\n  for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n    args[_key - 1] = arguments[_key];\n  }\n\n  return [].concat(args).reduce(function (p, c) {\n    return p.replace(/%s/, c);\n  }, str);\n}\n\nvar INVALID_MODIFIER_ERROR = 'Popper: modifier \"%s\" provided an invalid %s property, expected %s but got %s';\nvar MISSING_DEPENDENCY_ERROR = 'Popper: modifier \"%s\" requires \"%s\", but \"%s\" modifier is not available';\nvar VALID_PROPERTIES = ['name', 'enabled', 'phase', 'fn', 'effect', 'requires', 'options'];\nfunction validateModifiers(modifiers) {\n  modifiers.forEach(function (modifier) {\n    Object.keys(modifier).forEach(function (key) {\n      switch (key) {\n        case 'name':\n          if (typeof modifier.name !== 'string') {\n            console.error(format(INVALID_MODIFIER_ERROR, String(modifier.name), '\"name\"', '\"string\"', \"\\\"\" + String(modifier.name) + \"\\\"\"));\n          }\n\n          break;\n\n        case 'enabled':\n          if (typeof modifier.enabled !== 'boolean') {\n            console.error(format(INVALID_MODIFIER_ERROR, modifier.name, '\"enabled\"', '\"boolean\"', \"\\\"\" + String(modifier.enabled) + \"\\\"\"));\n          }\n\n        case 'phase':\n          if (modifierPhases.indexOf(modifier.phase) < 0) {\n            console.error(format(INVALID_MODIFIER_ERROR, modifier.name, '\"phase\"', \"either \" + modifierPhases.join(', '), \"\\\"\" + String(modifier.phase) + \"\\\"\"));\n          }\n\n          break;\n\n        case 'fn':\n          if (typeof modifier.fn !== 'function') {\n            console.error(format(INVALID_MODIFIER_ERROR, modifier.name, '\"fn\"', '\"function\"', \"\\\"\" + String(modifier.fn) + \"\\\"\"));\n          }\n\n          break;\n\n        case 'effect':\n          if (typeof modifier.effect !== 'function') {\n            console.error(format(INVALID_MODIFIER_ERROR, modifier.name, '\"effect\"', '\"function\"', \"\\\"\" + String(modifier.fn) + \"\\\"\"));\n          }\n\n          break;\n\n        case 'requires':\n          if (!Array.isArray(modifier.requires)) {\n            console.error(format(INVALID_MODIFIER_ERROR, modifier.name, '\"requires\"', '\"array\"', \"\\\"\" + String(modifier.requires) + \"\\\"\"));\n          }\n\n          break;\n\n        case 'requiresIfExists':\n          if (!Array.isArray(modifier.requiresIfExists)) {\n            console.error(format(INVALID_MODIFIER_ERROR, modifier.name, '\"requiresIfExists\"', '\"array\"', \"\\\"\" + String(modifier.requiresIfExists) + \"\\\"\"));\n          }\n\n          break;\n\n        case 'options':\n        case 'data':\n          break;\n\n        default:\n          console.error(\"PopperJS: an invalid property has been provided to the \\\"\" + modifier.name + \"\\\" modifier, valid properties are \" + VALID_PROPERTIES.map(function (s) {\n            return \"\\\"\" + s + \"\\\"\";\n          }).join(', ') + \"; but \\\"\" + key + \"\\\" was provided.\");\n      }\n\n      modifier.requires && modifier.requires.forEach(function (requirement) {\n        if (modifiers.find(function (mod) {\n          return mod.name === requirement;\n        }) == null) {\n          console.error(format(MISSING_DEPENDENCY_ERROR, String(modifier.name), requirement, requirement));\n        }\n      });\n    });\n  });\n}\n\nfunction uniqueBy(arr, fn) {\n  var identifiers = new Set();\n  return arr.filter(function (item) {\n    var identifier = fn(item);\n\n    if (!identifiers.has(identifier)) {\n      identifiers.add(identifier);\n      return true;\n    }\n  });\n}\n\nfunction getBasePlacement(placement) {\n  return placement.split('-')[0];\n}\n\nfunction mergeByName(modifiers) {\n  var merged = modifiers.reduce(function (merged, current) {\n    var existing = merged[current.name];\n    merged[current.name] = existing ? Object.assign({}, existing, current, {\n      options: Object.assign({}, existing.options, current.options),\n      data: Object.assign({}, existing.data, current.data)\n    }) : current;\n    return merged;\n  }, {}); // IE11 does not support Object.values\n\n  return Object.keys(merged).map(function (key) {\n    return merged[key];\n  });\n}\n\nfunction getViewportRect(element) {\n  var win = getWindow(element);\n  var html = getDocumentElement(element);\n  var visualViewport = win.visualViewport;\n  var width = html.clientWidth;\n  var height = html.clientHeight;\n  var x = 0;\n  var y = 0; // NB: This isn't supported on iOS <= 12. If the keyboard is open, the popper\n  // can be obscured underneath it.\n  // Also, `html.clientHeight` adds the bottom bar height in Safari iOS, even\n  // if it isn't open, so if this isn't available, the popper will be detected\n  // to overflow the bottom of the screen too early.\n\n  if (visualViewport) {\n    width = visualViewport.width;\n    height = visualViewport.height; // Uses Layout Viewport (like Chrome; Safari does not currently)\n    // In Chrome, it returns a value very close to 0 (+/-) but contains rounding\n    // errors due to floating point numbers, so we need to check precision.\n    // Safari returns a number <= 0, usually < -1 when pinch-zoomed\n    // Feature detection fails in mobile emulation mode in Chrome.\n    // Math.abs(win.innerWidth / visualViewport.scale - visualViewport.width) <\n    // 0.001\n    // Fallback here: \"Not Safari\" userAgent\n\n    if (!/^((?!chrome|android).)*safari/i.test(navigator.userAgent)) {\n      x = visualViewport.offsetLeft;\n      y = visualViewport.offsetTop;\n    }\n  }\n\n  return {\n    width: width,\n    height: height,\n    x: x + getWindowScrollBarX(element),\n    y: y\n  };\n}\n\nvar max = Math.max;\nvar min = Math.min;\nvar round = Math.round;\n\n// of the `<html>` and `<body>` rect bounds if horizontally scrollable\n\nfunction getDocumentRect(element) {\n  var _element$ownerDocumen;\n\n  var html = getDocumentElement(element);\n  var winScroll = getWindowScroll(element);\n  var body = (_element$ownerDocumen = element.ownerDocument) == null ? void 0 : _element$ownerDocumen.body;\n  var width = max(html.scrollWidth, html.clientWidth, body ? body.scrollWidth : 0, body ? body.clientWidth : 0);\n  var height = max(html.scrollHeight, html.clientHeight, body ? body.scrollHeight : 0, body ? body.clientHeight : 0);\n  var x = -winScroll.scrollLeft + getWindowScrollBarX(element);\n  var y = -winScroll.scrollTop;\n\n  if (getComputedStyle(body || html).direction === 'rtl') {\n    x += max(html.clientWidth, body ? body.clientWidth : 0) - width;\n  }\n\n  return {\n    width: width,\n    height: height,\n    x: x,\n    y: y\n  };\n}\n\nfunction contains(parent, child) {\n  var rootNode = child.getRootNode && child.getRootNode(); // First, attempt with faster native method\n\n  if (parent.contains(child)) {\n    return true;\n  } // then fallback to custom implementation with Shadow DOM support\n  else if (rootNode && isShadowRoot(rootNode)) {\n      var next = child;\n\n      do {\n        if (next && parent.isSameNode(next)) {\n          return true;\n        } // $FlowFixMe[prop-missing]: need a better way to handle this...\n\n\n        next = next.parentNode || next.host;\n      } while (next);\n    } // Give up, the result is false\n\n\n  return false;\n}\n\nfunction rectToClientRect(rect) {\n  return Object.assign({}, rect, {\n    left: rect.x,\n    top: rect.y,\n    right: rect.x + rect.width,\n    bottom: rect.y + rect.height\n  });\n}\n\nfunction getInnerBoundingClientRect(element) {\n  var rect = getBoundingClientRect(element);\n  rect.top = rect.top + element.clientTop;\n  rect.left = rect.left + element.clientLeft;\n  rect.bottom = rect.top + element.clientHeight;\n  rect.right = rect.left + element.clientWidth;\n  rect.width = element.clientWidth;\n  rect.height = element.clientHeight;\n  rect.x = rect.left;\n  rect.y = rect.top;\n  return rect;\n}\n\nfunction getClientRectFromMixedType(element, clippingParent) {\n  return clippingParent === viewport ? rectToClientRect(getViewportRect(element)) : isHTMLElement(clippingParent) ? getInnerBoundingClientRect(clippingParent) : rectToClientRect(getDocumentRect(getDocumentElement(element)));\n} // A \"clipping parent\" is an overflowable container with the characteristic of\n// clipping (or hiding) overflowing elements with a position different from\n// `initial`\n\n\nfunction getClippingParents(element) {\n  var clippingParents = listScrollParents(getParentNode(element));\n  var canEscapeClipping = ['absolute', 'fixed'].indexOf(getComputedStyle(element).position) >= 0;\n  var clipperElement = canEscapeClipping && isHTMLElement(element) ? getOffsetParent(element) : element;\n\n  if (!isElement(clipperElement)) {\n    return [];\n  } // $FlowFixMe[incompatible-return]: https://github.com/facebook/flow/issues/1414\n\n\n  return clippingParents.filter(function (clippingParent) {\n    return isElement(clippingParent) && contains(clippingParent, clipperElement) && getNodeName(clippingParent) !== 'body';\n  });\n} // Gets the maximum area that the element is visible in due to any number of\n// clipping parents\n\n\nfunction getClippingRect(element, boundary, rootBoundary) {\n  var mainClippingParents = boundary === 'clippingParents' ? getClippingParents(element) : [].concat(boundary);\n  var clippingParents = [].concat(mainClippingParents, [rootBoundary]);\n  var firstClippingParent = clippingParents[0];\n  var clippingRect = clippingParents.reduce(function (accRect, clippingParent) {\n    var rect = getClientRectFromMixedType(element, clippingParent);\n    accRect.top = max(rect.top, accRect.top);\n    accRect.right = min(rect.right, accRect.right);\n    accRect.bottom = min(rect.bottom, accRect.bottom);\n    accRect.left = max(rect.left, accRect.left);\n    return accRect;\n  }, getClientRectFromMixedType(element, firstClippingParent));\n  clippingRect.width = clippingRect.right - clippingRect.left;\n  clippingRect.height = clippingRect.bottom - clippingRect.top;\n  clippingRect.x = clippingRect.left;\n  clippingRect.y = clippingRect.top;\n  return clippingRect;\n}\n\nfunction getVariation(placement) {\n  return placement.split('-')[1];\n}\n\nfunction getMainAxisFromPlacement(placement) {\n  return ['top', 'bottom'].indexOf(placement) >= 0 ? 'x' : 'y';\n}\n\nfunction computeOffsets(_ref) {\n  var reference = _ref.reference,\n      element = _ref.element,\n      placement = _ref.placement;\n  var basePlacement = placement ? getBasePlacement(placement) : null;\n  var variation = placement ? getVariation(placement) : null;\n  var commonX = reference.x + reference.width / 2 - element.width / 2;\n  var commonY = reference.y + reference.height / 2 - element.height / 2;\n  var offsets;\n\n  switch (basePlacement) {\n    case top:\n      offsets = {\n        x: commonX,\n        y: reference.y - element.height\n      };\n      break;\n\n    case bottom:\n      offsets = {\n        x: commonX,\n        y: reference.y + reference.height\n      };\n      break;\n\n    case right:\n      offsets = {\n        x: reference.x + reference.width,\n        y: commonY\n      };\n      break;\n\n    case left:\n      offsets = {\n        x: reference.x - element.width,\n        y: commonY\n      };\n      break;\n\n    default:\n      offsets = {\n        x: reference.x,\n        y: reference.y\n      };\n  }\n\n  var mainAxis = basePlacement ? getMainAxisFromPlacement(basePlacement) : null;\n\n  if (mainAxis != null) {\n    var len = mainAxis === 'y' ? 'height' : 'width';\n\n    switch (variation) {\n      case start:\n        offsets[mainAxis] = offsets[mainAxis] - (reference[len] / 2 - element[len] / 2);\n        break;\n\n      case end:\n        offsets[mainAxis] = offsets[mainAxis] + (reference[len] / 2 - element[len] / 2);\n        break;\n    }\n  }\n\n  return offsets;\n}\n\nfunction getFreshSideObject() {\n  return {\n    top: 0,\n    right: 0,\n    bottom: 0,\n    left: 0\n  };\n}\n\nfunction mergePaddingObject(paddingObject) {\n  return Object.assign({}, getFreshSideObject(), paddingObject);\n}\n\nfunction expandToHashMap(value, keys) {\n  return keys.reduce(function (hashMap, key) {\n    hashMap[key] = value;\n    return hashMap;\n  }, {});\n}\n\nfunction detectOverflow(state, options) {\n  if (options === void 0) {\n    options = {};\n  }\n\n  var _options = options,\n      _options$placement = _options.placement,\n      placement = _options$placement === void 0 ? state.placement : _options$placement,\n      _options$boundary = _options.boundary,\n      boundary = _options$boundary === void 0 ? clippingParents : _options$boundary,\n      _options$rootBoundary = _options.rootBoundary,\n      rootBoundary = _options$rootBoundary === void 0 ? viewport : _options$rootBoundary,\n      _options$elementConte = _options.elementContext,\n      elementContext = _options$elementConte === void 0 ? popper : _options$elementConte,\n      _options$altBoundary = _options.altBoundary,\n      altBoundary = _options$altBoundary === void 0 ? false : _options$altBoundary,\n      _options$padding = _options.padding,\n      padding = _options$padding === void 0 ? 0 : _options$padding;\n  var paddingObject = mergePaddingObject(typeof padding !== 'number' ? padding : expandToHashMap(padding, basePlacements));\n  var altContext = elementContext === popper ? reference : popper;\n  var referenceElement = state.elements.reference;\n  var popperRect = state.rects.popper;\n  var element = state.elements[altBoundary ? altContext : elementContext];\n  var clippingClientRect = getClippingRect(isElement(element) ? element : element.contextElement || getDocumentElement(state.elements.popper), boundary, rootBoundary);\n  var referenceClientRect = getBoundingClientRect(referenceElement);\n  var popperOffsets = computeOffsets({\n    reference: referenceClientRect,\n    element: popperRect,\n    strategy: 'absolute',\n    placement: placement\n  });\n  var popperClientRect = rectToClientRect(Object.assign({}, popperRect, popperOffsets));\n  var elementClientRect = elementContext === popper ? popperClientRect : referenceClientRect; // positive = overflowing the clipping rect\n  // 0 or negative = within the clipping rect\n\n  var overflowOffsets = {\n    top: clippingClientRect.top - elementClientRect.top + paddingObject.top,\n    bottom: elementClientRect.bottom - clippingClientRect.bottom + paddingObject.bottom,\n    left: clippingClientRect.left - elementClientRect.left + paddingObject.left,\n    right: elementClientRect.right - clippingClientRect.right + paddingObject.right\n  };\n  var offsetData = state.modifiersData.offset; // Offsets can be applied only to the popper element\n\n  if (elementContext === popper && offsetData) {\n    var offset = offsetData[placement];\n    Object.keys(overflowOffsets).forEach(function (key) {\n      var multiply = [right, bottom].indexOf(key) >= 0 ? 1 : -1;\n      var axis = [top, bottom].indexOf(key) >= 0 ? 'y' : 'x';\n      overflowOffsets[key] += offset[axis] * multiply;\n    });\n  }\n\n  return overflowOffsets;\n}\n\nvar INVALID_ELEMENT_ERROR = 'Popper: Invalid reference or popper argument provided. They must be either a DOM element or virtual element.';\nvar INFINITE_LOOP_ERROR = 'Popper: An infinite loop in the modifiers cycle has been detected! The cycle has been interrupted to prevent a browser crash.';\nvar DEFAULT_OPTIONS = {\n  placement: 'bottom',\n  modifiers: [],\n  strategy: 'absolute'\n};\n\nfunction areValidElements() {\n  for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n    args[_key] = arguments[_key];\n  }\n\n  return !args.some(function (element) {\n    return !(element && typeof element.getBoundingClientRect === 'function');\n  });\n}\n\nfunction popperGenerator(generatorOptions) {\n  if (generatorOptions === void 0) {\n    generatorOptions = {};\n  }\n\n  var _generatorOptions = generatorOptions,\n      _generatorOptions$def = _generatorOptions.defaultModifiers,\n      defaultModifiers = _generatorOptions$def === void 0 ? [] : _generatorOptions$def,\n      _generatorOptions$def2 = _generatorOptions.defaultOptions,\n      defaultOptions = _generatorOptions$def2 === void 0 ? DEFAULT_OPTIONS : _generatorOptions$def2;\n  return function createPopper(reference, popper, options) {\n    if (options === void 0) {\n      options = defaultOptions;\n    }\n\n    var state = {\n      placement: 'bottom',\n      orderedModifiers: [],\n      options: Object.assign({}, DEFAULT_OPTIONS, defaultOptions),\n      modifiersData: {},\n      elements: {\n        reference: reference,\n        popper: popper\n      },\n      attributes: {},\n      styles: {}\n    };\n    var effectCleanupFns = [];\n    var isDestroyed = false;\n    var instance = {\n      state: state,\n      setOptions: function setOptions(options) {\n        cleanupModifierEffects();\n        state.options = Object.assign({}, defaultOptions, state.options, options);\n        state.scrollParents = {\n          reference: isElement(reference) ? listScrollParents(reference) : reference.contextElement ? listScrollParents(reference.contextElement) : [],\n          popper: listScrollParents(popper)\n        }; // Orders the modifiers based on their dependencies and `phase`\n        // properties\n\n        var orderedModifiers = orderModifiers(mergeByName([].concat(defaultModifiers, state.options.modifiers))); // Strip out disabled modifiers\n\n        state.orderedModifiers = orderedModifiers.filter(function (m) {\n          return m.enabled;\n        }); // Validate the provided modifiers so that the consumer will get warned\n        // if one of the modifiers is invalid for any reason\n\n        if (process.env.NODE_ENV !== \"production\") {\n          var modifiers = uniqueBy([].concat(orderedModifiers, state.options.modifiers), function (_ref) {\n            var name = _ref.name;\n            return name;\n          });\n          validateModifiers(modifiers);\n\n          if (getBasePlacement(state.options.placement) === auto) {\n            var flipModifier = state.orderedModifiers.find(function (_ref2) {\n              var name = _ref2.name;\n              return name === 'flip';\n            });\n\n            if (!flipModifier) {\n              console.error(['Popper: \"auto\" placements require the \"flip\" modifier be', 'present and enabled to work.'].join(' '));\n            }\n          }\n\n          var _getComputedStyle = getComputedStyle(popper),\n              marginTop = _getComputedStyle.marginTop,\n              marginRight = _getComputedStyle.marginRight,\n              marginBottom = _getComputedStyle.marginBottom,\n              marginLeft = _getComputedStyle.marginLeft; // We no longer take into account `margins` on the popper, and it can\n          // cause bugs with positioning, so we'll warn the consumer\n\n\n          if ([marginTop, marginRight, marginBottom, marginLeft].some(function (margin) {\n            return parseFloat(margin);\n          })) {\n            console.warn(['Popper: CSS \"margin\" styles cannot be used to apply padding', 'between the popper and its reference element or boundary.', 'To replicate margin, use the `offset` modifier, as well as', 'the `padding` option in the `preventOverflow` and `flip`', 'modifiers.'].join(' '));\n          }\n        }\n\n        runModifierEffects();\n        return instance.update();\n      },\n      // Sync update – it will always be executed, even if not necessary. This\n      // is useful for low frequency updates where sync behavior simplifies the\n      // logic.\n      // For high frequency updates (e.g. `resize` and `scroll` events), always\n      // prefer the async Popper#update method\n      forceUpdate: function forceUpdate() {\n        if (isDestroyed) {\n          return;\n        }\n\n        var _state$elements = state.elements,\n            reference = _state$elements.reference,\n            popper = _state$elements.popper; // Don't proceed if `reference` or `popper` are not valid elements\n        // anymore\n\n        if (!areValidElements(reference, popper)) {\n          if (process.env.NODE_ENV !== \"production\") {\n            console.error(INVALID_ELEMENT_ERROR);\n          }\n\n          return;\n        } // Store the reference and popper rects to be read by modifiers\n\n\n        state.rects = {\n          reference: getCompositeRect(reference, getOffsetParent(popper), state.options.strategy === 'fixed'),\n          popper: getLayoutRect(popper)\n        }; // Modifiers have the ability to reset the current update cycle. The\n        // most common use case for this is the `flip` modifier changing the\n        // placement, which then needs to re-run all the modifiers, because the\n        // logic was previously ran for the previous placement and is therefore\n        // stale/incorrect\n\n        state.reset = false;\n        state.placement = state.options.placement; // On each update cycle, the `modifiersData` property for each modifier\n        // is filled with the initial data specified by the modifier. This means\n        // it doesn't persist and is fresh on each update.\n        // To ensure persistent data, use `${name}#persistent`\n\n        state.orderedModifiers.forEach(function (modifier) {\n          return state.modifiersData[modifier.name] = Object.assign({}, modifier.data);\n        });\n        var __debug_loops__ = 0;\n\n        for (var index = 0; index < state.orderedModifiers.length; index++) {\n          if (process.env.NODE_ENV !== \"production\") {\n            __debug_loops__ += 1;\n\n            if (__debug_loops__ > 100) {\n              console.error(INFINITE_LOOP_ERROR);\n              break;\n            }\n          }\n\n          if (state.reset === true) {\n            state.reset = false;\n            index = -1;\n            continue;\n          }\n\n          var _state$orderedModifie = state.orderedModifiers[index],\n              fn = _state$orderedModifie.fn,\n              _state$orderedModifie2 = _state$orderedModifie.options,\n              _options = _state$orderedModifie2 === void 0 ? {} : _state$orderedModifie2,\n              name = _state$orderedModifie.name;\n\n          if (typeof fn === 'function') {\n            state = fn({\n              state: state,\n              options: _options,\n              name: name,\n              instance: instance\n            }) || state;\n          }\n        }\n      },\n      // Async and optimistically optimized update – it will not be executed if\n      // not necessary (debounced to run at most once-per-tick)\n      update: debounce(function () {\n        return new Promise(function (resolve) {\n          instance.forceUpdate();\n          resolve(state);\n        });\n      }),\n      destroy: function destroy() {\n        cleanupModifierEffects();\n        isDestroyed = true;\n      }\n    };\n\n    if (!areValidElements(reference, popper)) {\n      if (process.env.NODE_ENV !== \"production\") {\n        console.error(INVALID_ELEMENT_ERROR);\n      }\n\n      return instance;\n    }\n\n    instance.setOptions(options).then(function (state) {\n      if (!isDestroyed && options.onFirstUpdate) {\n        options.onFirstUpdate(state);\n      }\n    }); // Modifiers have the ability to execute arbitrary code before the first\n    // update cycle runs. They will be executed in the same order as the update\n    // cycle. This is useful when a modifier adds some persistent data that\n    // other modifiers need to use, but the modifier is run after the dependent\n    // one.\n\n    function runModifierEffects() {\n      state.orderedModifiers.forEach(function (_ref3) {\n        var name = _ref3.name,\n            _ref3$options = _ref3.options,\n            options = _ref3$options === void 0 ? {} : _ref3$options,\n            effect = _ref3.effect;\n\n        if (typeof effect === 'function') {\n          var cleanupFn = effect({\n            state: state,\n            name: name,\n            instance: instance,\n            options: options\n          });\n\n          var noopFn = function noopFn() {};\n\n          effectCleanupFns.push(cleanupFn || noopFn);\n        }\n      });\n    }\n\n    function cleanupModifierEffects() {\n      effectCleanupFns.forEach(function (fn) {\n        return fn();\n      });\n      effectCleanupFns = [];\n    }\n\n    return instance;\n  };\n}\n\nvar passive = {\n  passive: true\n};\n\nfunction effect$2(_ref) {\n  var state = _ref.state,\n      instance = _ref.instance,\n      options = _ref.options;\n  var _options$scroll = options.scroll,\n      scroll = _options$scroll === void 0 ? true : _options$scroll,\n      _options$resize = options.resize,\n      resize = _options$resize === void 0 ? true : _options$resize;\n  var window = getWindow(state.elements.popper);\n  var scrollParents = [].concat(state.scrollParents.reference, state.scrollParents.popper);\n\n  if (scroll) {\n    scrollParents.forEach(function (scrollParent) {\n      scrollParent.addEventListener('scroll', instance.update, passive);\n    });\n  }\n\n  if (resize) {\n    window.addEventListener('resize', instance.update, passive);\n  }\n\n  return function () {\n    if (scroll) {\n      scrollParents.forEach(function (scrollParent) {\n        scrollParent.removeEventListener('scroll', instance.update, passive);\n      });\n    }\n\n    if (resize) {\n      window.removeEventListener('resize', instance.update, passive);\n    }\n  };\n} // eslint-disable-next-line import/no-unused-modules\n\n\nvar eventListeners = {\n  name: 'eventListeners',\n  enabled: true,\n  phase: 'write',\n  fn: function fn() {},\n  effect: effect$2,\n  data: {}\n};\n\nfunction popperOffsets(_ref) {\n  var state = _ref.state,\n      name = _ref.name;\n  // Offsets are the actual position the popper needs to have to be\n  // properly positioned near its reference element\n  // This is the most basic placement, and will be adjusted by\n  // the modifiers in the next step\n  state.modifiersData[name] = computeOffsets({\n    reference: state.rects.reference,\n    element: state.rects.popper,\n    strategy: 'absolute',\n    placement: state.placement\n  });\n} // eslint-disable-next-line import/no-unused-modules\n\n\nvar popperOffsets$1 = {\n  name: 'popperOffsets',\n  enabled: true,\n  phase: 'read',\n  fn: popperOffsets,\n  data: {}\n};\n\nvar unsetSides = {\n  top: 'auto',\n  right: 'auto',\n  bottom: 'auto',\n  left: 'auto'\n}; // Round the offsets to the nearest suitable subpixel based on the DPR.\n// Zooming can change the DPR, but it seems to report a value that will\n// cleanly divide the values into the appropriate subpixels.\n\nfunction roundOffsetsByDPR(_ref) {\n  var x = _ref.x,\n      y = _ref.y;\n  var win = window;\n  var dpr = win.devicePixelRatio || 1;\n  return {\n    x: round(round(x * dpr) / dpr) || 0,\n    y: round(round(y * dpr) / dpr) || 0\n  };\n}\n\nfunction mapToStyles(_ref2) {\n  var _Object$assign2;\n\n  var popper = _ref2.popper,\n      popperRect = _ref2.popperRect,\n      placement = _ref2.placement,\n      offsets = _ref2.offsets,\n      position = _ref2.position,\n      gpuAcceleration = _ref2.gpuAcceleration,\n      adaptive = _ref2.adaptive,\n      roundOffsets = _ref2.roundOffsets;\n\n  var _ref3 = roundOffsets === true ? roundOffsetsByDPR(offsets) : typeof roundOffsets === 'function' ? roundOffsets(offsets) : offsets,\n      _ref3$x = _ref3.x,\n      x = _ref3$x === void 0 ? 0 : _ref3$x,\n      _ref3$y = _ref3.y,\n      y = _ref3$y === void 0 ? 0 : _ref3$y;\n\n  var hasX = offsets.hasOwnProperty('x');\n  var hasY = offsets.hasOwnProperty('y');\n  var sideX = left;\n  var sideY = top;\n  var win = window;\n\n  if (adaptive) {\n    var offsetParent = getOffsetParent(popper);\n    var heightProp = 'clientHeight';\n    var widthProp = 'clientWidth';\n\n    if (offsetParent === getWindow(popper)) {\n      offsetParent = getDocumentElement(popper);\n\n      if (getComputedStyle(offsetParent).position !== 'static') {\n        heightProp = 'scrollHeight';\n        widthProp = 'scrollWidth';\n      }\n    } // $FlowFixMe[incompatible-cast]: force type refinement, we compare offsetParent with window above, but Flow doesn't detect it\n\n\n    offsetParent = offsetParent;\n\n    if (placement === top) {\n      sideY = bottom; // $FlowFixMe[prop-missing]\n\n      y -= offsetParent[heightProp] - popperRect.height;\n      y *= gpuAcceleration ? 1 : -1;\n    }\n\n    if (placement === left) {\n      sideX = right; // $FlowFixMe[prop-missing]\n\n      x -= offsetParent[widthProp] - popperRect.width;\n      x *= gpuAcceleration ? 1 : -1;\n    }\n  }\n\n  var commonStyles = Object.assign({\n    position: position\n  }, adaptive && unsetSides);\n\n  if (gpuAcceleration) {\n    var _Object$assign;\n\n    return Object.assign({}, commonStyles, (_Object$assign = {}, _Object$assign[sideY] = hasY ? '0' : '', _Object$assign[sideX] = hasX ? '0' : '', _Object$assign.transform = (win.devicePixelRatio || 1) < 2 ? \"translate(\" + x + \"px, \" + y + \"px)\" : \"translate3d(\" + x + \"px, \" + y + \"px, 0)\", _Object$assign));\n  }\n\n  return Object.assign({}, commonStyles, (_Object$assign2 = {}, _Object$assign2[sideY] = hasY ? y + \"px\" : '', _Object$assign2[sideX] = hasX ? x + \"px\" : '', _Object$assign2.transform = '', _Object$assign2));\n}\n\nfunction computeStyles(_ref4) {\n  var state = _ref4.state,\n      options = _ref4.options;\n  var _options$gpuAccelerat = options.gpuAcceleration,\n      gpuAcceleration = _options$gpuAccelerat === void 0 ? true : _options$gpuAccelerat,\n      _options$adaptive = options.adaptive,\n      adaptive = _options$adaptive === void 0 ? true : _options$adaptive,\n      _options$roundOffsets = options.roundOffsets,\n      roundOffsets = _options$roundOffsets === void 0 ? true : _options$roundOffsets;\n\n  if (process.env.NODE_ENV !== \"production\") {\n    var transitionProperty = getComputedStyle(state.elements.popper).transitionProperty || '';\n\n    if (adaptive && ['transform', 'top', 'right', 'bottom', 'left'].some(function (property) {\n      return transitionProperty.indexOf(property) >= 0;\n    })) {\n      console.warn(['Popper: Detected CSS transitions on at least one of the following', 'CSS properties: \"transform\", \"top\", \"right\", \"bottom\", \"left\".', '\\n\\n', 'Disable the \"computeStyles\" modifier\\'s `adaptive` option to allow', 'for smooth transitions, or remove these properties from the CSS', 'transition declaration on the popper element if only transitioning', 'opacity or background-color for example.', '\\n\\n', 'We recommend using the popper element as a wrapper around an inner', 'element that can have any CSS property transitioned for animations.'].join(' '));\n    }\n  }\n\n  var commonStyles = {\n    placement: getBasePlacement(state.placement),\n    popper: state.elements.popper,\n    popperRect: state.rects.popper,\n    gpuAcceleration: gpuAcceleration\n  };\n\n  if (state.modifiersData.popperOffsets != null) {\n    state.styles.popper = Object.assign({}, state.styles.popper, mapToStyles(Object.assign({}, commonStyles, {\n      offsets: state.modifiersData.popperOffsets,\n      position: state.options.strategy,\n      adaptive: adaptive,\n      roundOffsets: roundOffsets\n    })));\n  }\n\n  if (state.modifiersData.arrow != null) {\n    state.styles.arrow = Object.assign({}, state.styles.arrow, mapToStyles(Object.assign({}, commonStyles, {\n      offsets: state.modifiersData.arrow,\n      position: 'absolute',\n      adaptive: false,\n      roundOffsets: roundOffsets\n    })));\n  }\n\n  state.attributes.popper = Object.assign({}, state.attributes.popper, {\n    'data-popper-placement': state.placement\n  });\n} // eslint-disable-next-line import/no-unused-modules\n\n\nvar computeStyles$1 = {\n  name: 'computeStyles',\n  enabled: true,\n  phase: 'beforeWrite',\n  fn: computeStyles,\n  data: {}\n};\n\n// and applies them to the HTMLElements such as popper and arrow\n\nfunction applyStyles(_ref) {\n  var state = _ref.state;\n  Object.keys(state.elements).forEach(function (name) {\n    var style = state.styles[name] || {};\n    var attributes = state.attributes[name] || {};\n    var element = state.elements[name]; // arrow is optional + virtual elements\n\n    if (!isHTMLElement(element) || !getNodeName(element)) {\n      return;\n    } // Flow doesn't support to extend this property, but it's the most\n    // effective way to apply styles to an HTMLElement\n    // $FlowFixMe[cannot-write]\n\n\n    Object.assign(element.style, style);\n    Object.keys(attributes).forEach(function (name) {\n      var value = attributes[name];\n\n      if (value === false) {\n        element.removeAttribute(name);\n      } else {\n        element.setAttribute(name, value === true ? '' : value);\n      }\n    });\n  });\n}\n\nfunction effect$1(_ref2) {\n  var state = _ref2.state;\n  var initialStyles = {\n    popper: {\n      position: state.options.strategy,\n      left: '0',\n      top: '0',\n      margin: '0'\n    },\n    arrow: {\n      position: 'absolute'\n    },\n    reference: {}\n  };\n  Object.assign(state.elements.popper.style, initialStyles.popper);\n  state.styles = initialStyles;\n\n  if (state.elements.arrow) {\n    Object.assign(state.elements.arrow.style, initialStyles.arrow);\n  }\n\n  return function () {\n    Object.keys(state.elements).forEach(function (name) {\n      var element = state.elements[name];\n      var attributes = state.attributes[name] || {};\n      var styleProperties = Object.keys(state.styles.hasOwnProperty(name) ? state.styles[name] : initialStyles[name]); // Set all values to an empty string to unset them\n\n      var style = styleProperties.reduce(function (style, property) {\n        style[property] = '';\n        return style;\n      }, {}); // arrow is optional + virtual elements\n\n      if (!isHTMLElement(element) || !getNodeName(element)) {\n        return;\n      }\n\n      Object.assign(element.style, style);\n      Object.keys(attributes).forEach(function (attribute) {\n        element.removeAttribute(attribute);\n      });\n    });\n  };\n} // eslint-disable-next-line import/no-unused-modules\n\n\nvar applyStyles$1 = {\n  name: 'applyStyles',\n  enabled: true,\n  phase: 'write',\n  fn: applyStyles,\n  effect: effect$1,\n  requires: ['computeStyles']\n};\n\nfunction distanceAndSkiddingToXY(placement, rects, offset) {\n  var basePlacement = getBasePlacement(placement);\n  var invertDistance = [left, top].indexOf(basePlacement) >= 0 ? -1 : 1;\n\n  var _ref = typeof offset === 'function' ? offset(Object.assign({}, rects, {\n    placement: placement\n  })) : offset,\n      skidding = _ref[0],\n      distance = _ref[1];\n\n  skidding = skidding || 0;\n  distance = (distance || 0) * invertDistance;\n  return [left, right].indexOf(basePlacement) >= 0 ? {\n    x: distance,\n    y: skidding\n  } : {\n    x: skidding,\n    y: distance\n  };\n}\n\nfunction offset(_ref2) {\n  var state = _ref2.state,\n      options = _ref2.options,\n      name = _ref2.name;\n  var _options$offset = options.offset,\n      offset = _options$offset === void 0 ? [0, 0] : _options$offset;\n  var data = placements.reduce(function (acc, placement) {\n    acc[placement] = distanceAndSkiddingToXY(placement, state.rects, offset);\n    return acc;\n  }, {});\n  var _data$state$placement = data[state.placement],\n      x = _data$state$placement.x,\n      y = _data$state$placement.y;\n\n  if (state.modifiersData.popperOffsets != null) {\n    state.modifiersData.popperOffsets.x += x;\n    state.modifiersData.popperOffsets.y += y;\n  }\n\n  state.modifiersData[name] = data;\n} // eslint-disable-next-line import/no-unused-modules\n\n\nvar offset$1 = {\n  name: 'offset',\n  enabled: true,\n  phase: 'main',\n  requires: ['popperOffsets'],\n  fn: offset\n};\n\nvar hash$1 = {\n  left: 'right',\n  right: 'left',\n  bottom: 'top',\n  top: 'bottom'\n};\nfunction getOppositePlacement(placement) {\n  return placement.replace(/left|right|bottom|top/g, function (matched) {\n    return hash$1[matched];\n  });\n}\n\nvar hash = {\n  start: 'end',\n  end: 'start'\n};\nfunction getOppositeVariationPlacement(placement) {\n  return placement.replace(/start|end/g, function (matched) {\n    return hash[matched];\n  });\n}\n\nfunction computeAutoPlacement(state, options) {\n  if (options === void 0) {\n    options = {};\n  }\n\n  var _options = options,\n      placement = _options.placement,\n      boundary = _options.boundary,\n      rootBoundary = _options.rootBoundary,\n      padding = _options.padding,\n      flipVariations = _options.flipVariations,\n      _options$allowedAutoP = _options.allowedAutoPlacements,\n      allowedAutoPlacements = _options$allowedAutoP === void 0 ? placements : _options$allowedAutoP;\n  var variation = getVariation(placement);\n  var placements$1 = variation ? flipVariations ? variationPlacements : variationPlacements.filter(function (placement) {\n    return getVariation(placement) === variation;\n  }) : basePlacements;\n  var allowedPlacements = placements$1.filter(function (placement) {\n    return allowedAutoPlacements.indexOf(placement) >= 0;\n  });\n\n  if (allowedPlacements.length === 0) {\n    allowedPlacements = placements$1;\n\n    if (process.env.NODE_ENV !== \"production\") {\n      console.error(['Popper: The `allowedAutoPlacements` option did not allow any', 'placements. Ensure the `placement` option matches the variation', 'of the allowed placements.', 'For example, \"auto\" cannot be used to allow \"bottom-start\".', 'Use \"auto-start\" instead.'].join(' '));\n    }\n  } // $FlowFixMe[incompatible-type]: Flow seems to have problems with two array unions...\n\n\n  var overflows = allowedPlacements.reduce(function (acc, placement) {\n    acc[placement] = detectOverflow(state, {\n      placement: placement,\n      boundary: boundary,\n      rootBoundary: rootBoundary,\n      padding: padding\n    })[getBasePlacement(placement)];\n    return acc;\n  }, {});\n  return Object.keys(overflows).sort(function (a, b) {\n    return overflows[a] - overflows[b];\n  });\n}\n\nfunction getExpandedFallbackPlacements(placement) {\n  if (getBasePlacement(placement) === auto) {\n    return [];\n  }\n\n  var oppositePlacement = getOppositePlacement(placement);\n  return [getOppositeVariationPlacement(placement), oppositePlacement, getOppositeVariationPlacement(oppositePlacement)];\n}\n\nfunction flip(_ref) {\n  var state = _ref.state,\n      options = _ref.options,\n      name = _ref.name;\n\n  if (state.modifiersData[name]._skip) {\n    return;\n  }\n\n  var _options$mainAxis = options.mainAxis,\n      checkMainAxis = _options$mainAxis === void 0 ? true : _options$mainAxis,\n      _options$altAxis = options.altAxis,\n      checkAltAxis = _options$altAxis === void 0 ? true : _options$altAxis,\n      specifiedFallbackPlacements = options.fallbackPlacements,\n      padding = options.padding,\n      boundary = options.boundary,\n      rootBoundary = options.rootBoundary,\n      altBoundary = options.altBoundary,\n      _options$flipVariatio = options.flipVariations,\n      flipVariations = _options$flipVariatio === void 0 ? true : _options$flipVariatio,\n      allowedAutoPlacements = options.allowedAutoPlacements;\n  var preferredPlacement = state.options.placement;\n  var basePlacement = getBasePlacement(preferredPlacement);\n  var isBasePlacement = basePlacement === preferredPlacement;\n  var fallbackPlacements = specifiedFallbackPlacements || (isBasePlacement || !flipVariations ? [getOppositePlacement(preferredPlacement)] : getExpandedFallbackPlacements(preferredPlacement));\n  var placements = [preferredPlacement].concat(fallbackPlacements).reduce(function (acc, placement) {\n    return acc.concat(getBasePlacement(placement) === auto ? computeAutoPlacement(state, {\n      placement: placement,\n      boundary: boundary,\n      rootBoundary: rootBoundary,\n      padding: padding,\n      flipVariations: flipVariations,\n      allowedAutoPlacements: allowedAutoPlacements\n    }) : placement);\n  }, []);\n  var referenceRect = state.rects.reference;\n  var popperRect = state.rects.popper;\n  var checksMap = new Map();\n  var makeFallbackChecks = true;\n  var firstFittingPlacement = placements[0];\n\n  for (var i = 0; i < placements.length; i++) {\n    var placement = placements[i];\n\n    var _basePlacement = getBasePlacement(placement);\n\n    var isStartVariation = getVariation(placement) === start;\n    var isVertical = [top, bottom].indexOf(_basePlacement) >= 0;\n    var len = isVertical ? 'width' : 'height';\n    var overflow = detectOverflow(state, {\n      placement: placement,\n      boundary: boundary,\n      rootBoundary: rootBoundary,\n      altBoundary: altBoundary,\n      padding: padding\n    });\n    var mainVariationSide = isVertical ? isStartVariation ? right : left : isStartVariation ? bottom : top;\n\n    if (referenceRect[len] > popperRect[len]) {\n      mainVariationSide = getOppositePlacement(mainVariationSide);\n    }\n\n    var altVariationSide = getOppositePlacement(mainVariationSide);\n    var checks = [];\n\n    if (checkMainAxis) {\n      checks.push(overflow[_basePlacement] <= 0);\n    }\n\n    if (checkAltAxis) {\n      checks.push(overflow[mainVariationSide] <= 0, overflow[altVariationSide] <= 0);\n    }\n\n    if (checks.every(function (check) {\n      return check;\n    })) {\n      firstFittingPlacement = placement;\n      makeFallbackChecks = false;\n      break;\n    }\n\n    checksMap.set(placement, checks);\n  }\n\n  if (makeFallbackChecks) {\n    // `2` may be desired in some cases – research later\n    var numberOfChecks = flipVariations ? 3 : 1;\n\n    var _loop = function _loop(_i) {\n      var fittingPlacement = placements.find(function (placement) {\n        var checks = checksMap.get(placement);\n\n        if (checks) {\n          return checks.slice(0, _i).every(function (check) {\n            return check;\n          });\n        }\n      });\n\n      if (fittingPlacement) {\n        firstFittingPlacement = fittingPlacement;\n        return \"break\";\n      }\n    };\n\n    for (var _i = numberOfChecks; _i > 0; _i--) {\n      var _ret = _loop(_i);\n\n      if (_ret === \"break\") break;\n    }\n  }\n\n  if (state.placement !== firstFittingPlacement) {\n    state.modifiersData[name]._skip = true;\n    state.placement = firstFittingPlacement;\n    state.reset = true;\n  }\n} // eslint-disable-next-line import/no-unused-modules\n\n\nvar flip$1 = {\n  name: 'flip',\n  enabled: true,\n  phase: 'main',\n  fn: flip,\n  requiresIfExists: ['offset'],\n  data: {\n    _skip: false\n  }\n};\n\nfunction getAltAxis(axis) {\n  return axis === 'x' ? 'y' : 'x';\n}\n\nfunction within(min$1, value, max$1) {\n  return max(min$1, min(value, max$1));\n}\n\nfunction preventOverflow(_ref) {\n  var state = _ref.state,\n      options = _ref.options,\n      name = _ref.name;\n  var _options$mainAxis = options.mainAxis,\n      checkMainAxis = _options$mainAxis === void 0 ? true : _options$mainAxis,\n      _options$altAxis = options.altAxis,\n      checkAltAxis = _options$altAxis === void 0 ? false : _options$altAxis,\n      boundary = options.boundary,\n      rootBoundary = options.rootBoundary,\n      altBoundary = options.altBoundary,\n      padding = options.padding,\n      _options$tether = options.tether,\n      tether = _options$tether === void 0 ? true : _options$tether,\n      _options$tetherOffset = options.tetherOffset,\n      tetherOffset = _options$tetherOffset === void 0 ? 0 : _options$tetherOffset;\n  var overflow = detectOverflow(state, {\n    boundary: boundary,\n    rootBoundary: rootBoundary,\n    padding: padding,\n    altBoundary: altBoundary\n  });\n  var basePlacement = getBasePlacement(state.placement);\n  var variation = getVariation(state.placement);\n  var isBasePlacement = !variation;\n  var mainAxis = getMainAxisFromPlacement(basePlacement);\n  var altAxis = getAltAxis(mainAxis);\n  var popperOffsets = state.modifiersData.popperOffsets;\n  var referenceRect = state.rects.reference;\n  var popperRect = state.rects.popper;\n  var tetherOffsetValue = typeof tetherOffset === 'function' ? tetherOffset(Object.assign({}, state.rects, {\n    placement: state.placement\n  })) : tetherOffset;\n  var data = {\n    x: 0,\n    y: 0\n  };\n\n  if (!popperOffsets) {\n    return;\n  }\n\n  if (checkMainAxis || checkAltAxis) {\n    var mainSide = mainAxis === 'y' ? top : left;\n    var altSide = mainAxis === 'y' ? bottom : right;\n    var len = mainAxis === 'y' ? 'height' : 'width';\n    var offset = popperOffsets[mainAxis];\n    var min$1 = popperOffsets[mainAxis] + overflow[mainSide];\n    var max$1 = popperOffsets[mainAxis] - overflow[altSide];\n    var additive = tether ? -popperRect[len] / 2 : 0;\n    var minLen = variation === start ? referenceRect[len] : popperRect[len];\n    var maxLen = variation === start ? -popperRect[len] : -referenceRect[len]; // We need to include the arrow in the calculation so the arrow doesn't go\n    // outside the reference bounds\n\n    var arrowElement = state.elements.arrow;\n    var arrowRect = tether && arrowElement ? getLayoutRect(arrowElement) : {\n      width: 0,\n      height: 0\n    };\n    var arrowPaddingObject = state.modifiersData['arrow#persistent'] ? state.modifiersData['arrow#persistent'].padding : getFreshSideObject();\n    var arrowPaddingMin = arrowPaddingObject[mainSide];\n    var arrowPaddingMax = arrowPaddingObject[altSide]; // If the reference length is smaller than the arrow length, we don't want\n    // to include its full size in the calculation. If the reference is small\n    // and near the edge of a boundary, the popper can overflow even if the\n    // reference is not overflowing as well (e.g. virtual elements with no\n    // width or height)\n\n    var arrowLen = within(0, referenceRect[len], arrowRect[len]);\n    var minOffset = isBasePlacement ? referenceRect[len] / 2 - additive - arrowLen - arrowPaddingMin - tetherOffsetValue : minLen - arrowLen - arrowPaddingMin - tetherOffsetValue;\n    var maxOffset = isBasePlacement ? -referenceRect[len] / 2 + additive + arrowLen + arrowPaddingMax + tetherOffsetValue : maxLen + arrowLen + arrowPaddingMax + tetherOffsetValue;\n    var arrowOffsetParent = state.elements.arrow && getOffsetParent(state.elements.arrow);\n    var clientOffset = arrowOffsetParent ? mainAxis === 'y' ? arrowOffsetParent.clientTop || 0 : arrowOffsetParent.clientLeft || 0 : 0;\n    var offsetModifierValue = state.modifiersData.offset ? state.modifiersData.offset[state.placement][mainAxis] : 0;\n    var tetherMin = popperOffsets[mainAxis] + minOffset - offsetModifierValue - clientOffset;\n    var tetherMax = popperOffsets[mainAxis] + maxOffset - offsetModifierValue;\n\n    if (checkMainAxis) {\n      var preventedOffset = within(tether ? min(min$1, tetherMin) : min$1, offset, tether ? max(max$1, tetherMax) : max$1);\n      popperOffsets[mainAxis] = preventedOffset;\n      data[mainAxis] = preventedOffset - offset;\n    }\n\n    if (checkAltAxis) {\n      var _mainSide = mainAxis === 'x' ? top : left;\n\n      var _altSide = mainAxis === 'x' ? bottom : right;\n\n      var _offset = popperOffsets[altAxis];\n\n      var _min = _offset + overflow[_mainSide];\n\n      var _max = _offset - overflow[_altSide];\n\n      var _preventedOffset = within(tether ? min(_min, tetherMin) : _min, _offset, tether ? max(_max, tetherMax) : _max);\n\n      popperOffsets[altAxis] = _preventedOffset;\n      data[altAxis] = _preventedOffset - _offset;\n    }\n  }\n\n  state.modifiersData[name] = data;\n} // eslint-disable-next-line import/no-unused-modules\n\n\nvar preventOverflow$1 = {\n  name: 'preventOverflow',\n  enabled: true,\n  phase: 'main',\n  fn: preventOverflow,\n  requiresIfExists: ['offset']\n};\n\nvar toPaddingObject = function toPaddingObject(padding, state) {\n  padding = typeof padding === 'function' ? padding(Object.assign({}, state.rects, {\n    placement: state.placement\n  })) : padding;\n  return mergePaddingObject(typeof padding !== 'number' ? padding : expandToHashMap(padding, basePlacements));\n};\n\nfunction arrow(_ref) {\n  var _state$modifiersData$;\n\n  var state = _ref.state,\n      name = _ref.name,\n      options = _ref.options;\n  var arrowElement = state.elements.arrow;\n  var popperOffsets = state.modifiersData.popperOffsets;\n  var basePlacement = getBasePlacement(state.placement);\n  var axis = getMainAxisFromPlacement(basePlacement);\n  var isVertical = [left, right].indexOf(basePlacement) >= 0;\n  var len = isVertical ? 'height' : 'width';\n\n  if (!arrowElement || !popperOffsets) {\n    return;\n  }\n\n  var paddingObject = toPaddingObject(options.padding, state);\n  var arrowRect = getLayoutRect(arrowElement);\n  var minProp = axis === 'y' ? top : left;\n  var maxProp = axis === 'y' ? bottom : right;\n  var endDiff = state.rects.reference[len] + state.rects.reference[axis] - popperOffsets[axis] - state.rects.popper[len];\n  var startDiff = popperOffsets[axis] - state.rects.reference[axis];\n  var arrowOffsetParent = getOffsetParent(arrowElement);\n  var clientSize = arrowOffsetParent ? axis === 'y' ? arrowOffsetParent.clientHeight || 0 : arrowOffsetParent.clientWidth || 0 : 0;\n  var centerToReference = endDiff / 2 - startDiff / 2; // Make sure the arrow doesn't overflow the popper if the center point is\n  // outside of the popper bounds\n\n  var min = paddingObject[minProp];\n  var max = clientSize - arrowRect[len] - paddingObject[maxProp];\n  var center = clientSize / 2 - arrowRect[len] / 2 + centerToReference;\n  var offset = within(min, center, max); // Prevents breaking syntax highlighting...\n\n  var axisProp = axis;\n  state.modifiersData[name] = (_state$modifiersData$ = {}, _state$modifiersData$[axisProp] = offset, _state$modifiersData$.centerOffset = offset - center, _state$modifiersData$);\n}\n\nfunction effect(_ref2) {\n  var state = _ref2.state,\n      options = _ref2.options;\n  var _options$element = options.element,\n      arrowElement = _options$element === void 0 ? '[data-popper-arrow]' : _options$element;\n\n  if (arrowElement == null) {\n    return;\n  } // CSS selector\n\n\n  if (typeof arrowElement === 'string') {\n    arrowElement = state.elements.popper.querySelector(arrowElement);\n\n    if (!arrowElement) {\n      return;\n    }\n  }\n\n  if (process.env.NODE_ENV !== \"production\") {\n    if (!isHTMLElement(arrowElement)) {\n      console.error(['Popper: \"arrow\" element must be an HTMLElement (not an SVGElement).', 'To use an SVG arrow, wrap it in an HTMLElement that will be used as', 'the arrow.'].join(' '));\n    }\n  }\n\n  if (!contains(state.elements.popper, arrowElement)) {\n    if (process.env.NODE_ENV !== \"production\") {\n      console.error(['Popper: \"arrow\" modifier\\'s `element` must be a child of the popper', 'element.'].join(' '));\n    }\n\n    return;\n  }\n\n  state.elements.arrow = arrowElement;\n} // eslint-disable-next-line import/no-unused-modules\n\n\nvar arrow$1 = {\n  name: 'arrow',\n  enabled: true,\n  phase: 'main',\n  fn: arrow,\n  effect: effect,\n  requires: ['popperOffsets'],\n  requiresIfExists: ['preventOverflow']\n};\n\nfunction getSideOffsets(overflow, rect, preventedOffsets) {\n  if (preventedOffsets === void 0) {\n    preventedOffsets = {\n      x: 0,\n      y: 0\n    };\n  }\n\n  return {\n    top: overflow.top - rect.height - preventedOffsets.y,\n    right: overflow.right - rect.width + preventedOffsets.x,\n    bottom: overflow.bottom - rect.height + preventedOffsets.y,\n    left: overflow.left - rect.width - preventedOffsets.x\n  };\n}\n\nfunction isAnySideFullyClipped(overflow) {\n  return [top, right, bottom, left].some(function (side) {\n    return overflow[side] >= 0;\n  });\n}\n\nfunction hide(_ref) {\n  var state = _ref.state,\n      name = _ref.name;\n  var referenceRect = state.rects.reference;\n  var popperRect = state.rects.popper;\n  var preventedOffsets = state.modifiersData.preventOverflow;\n  var referenceOverflow = detectOverflow(state, {\n    elementContext: 'reference'\n  });\n  var popperAltOverflow = detectOverflow(state, {\n    altBoundary: true\n  });\n  var referenceClippingOffsets = getSideOffsets(referenceOverflow, referenceRect);\n  var popperEscapeOffsets = getSideOffsets(popperAltOverflow, popperRect, preventedOffsets);\n  var isReferenceHidden = isAnySideFullyClipped(referenceClippingOffsets);\n  var hasPopperEscaped = isAnySideFullyClipped(popperEscapeOffsets);\n  state.modifiersData[name] = {\n    referenceClippingOffsets: referenceClippingOffsets,\n    popperEscapeOffsets: popperEscapeOffsets,\n    isReferenceHidden: isReferenceHidden,\n    hasPopperEscaped: hasPopperEscaped\n  };\n  state.attributes.popper = Object.assign({}, state.attributes.popper, {\n    'data-popper-reference-hidden': isReferenceHidden,\n    'data-popper-escaped': hasPopperEscaped\n  });\n} // eslint-disable-next-line import/no-unused-modules\n\n\nvar hide$1 = {\n  name: 'hide',\n  enabled: true,\n  phase: 'main',\n  requiresIfExists: ['preventOverflow'],\n  fn: hide\n};\n\nvar defaultModifiers$1 = [eventListeners, popperOffsets$1, computeStyles$1, applyStyles$1];\nvar createPopper$1 = /*#__PURE__*/popperGenerator({\n  defaultModifiers: defaultModifiers$1\n}); // eslint-disable-next-line import/no-unused-modules\n\nvar defaultModifiers = [eventListeners, popperOffsets$1, computeStyles$1, applyStyles$1, offset$1, flip$1, preventOverflow$1, arrow$1, hide$1];\nvar createPopper = /*#__PURE__*/popperGenerator({\n  defaultModifiers: defaultModifiers\n}); // eslint-disable-next-line import/no-unused-modules\n\nexports.applyStyles = applyStyles$1;\nexports.arrow = arrow$1;\nexports.computeStyles = computeStyles$1;\nexports.createPopper = createPopper;\nexports.createPopperLite = createPopper$1;\nexports.defaultModifiers = defaultModifiers;\nexports.detectOverflow = detectOverflow;\nexports.eventListeners = eventListeners;\nexports.flip = flip$1;\nexports.hide = hide$1;\nexports.offset = offset$1;\nexports.popperGenerator = popperGenerator;\nexports.popperOffsets = popperOffsets$1;\nexports.preventOverflow = preventOverflow$1;\n//# sourceMappingURL=popper.js.map\n"
  },
  {
    "path": "static/assets/vendor/@popperjs/core/dist/cjs/popper.js.flow",
    "content": "// @flow\n\nexport * from '../../lib/popper.js'\n"
  },
  {
    "path": "static/assets/vendor/@popperjs/core/dist/esm/createPopper.js",
    "content": "import getCompositeRect from \"./dom-utils/getCompositeRect.js\";\nimport getLayoutRect from \"./dom-utils/getLayoutRect.js\";\nimport listScrollParents from \"./dom-utils/listScrollParents.js\";\nimport getOffsetParent from \"./dom-utils/getOffsetParent.js\";\nimport getComputedStyle from \"./dom-utils/getComputedStyle.js\";\nimport orderModifiers from \"./utils/orderModifiers.js\";\nimport debounce from \"./utils/debounce.js\";\nimport validateModifiers from \"./utils/validateModifiers.js\";\nimport uniqueBy from \"./utils/uniqueBy.js\";\nimport getBasePlacement from \"./utils/getBasePlacement.js\";\nimport mergeByName from \"./utils/mergeByName.js\";\nimport detectOverflow from \"./utils/detectOverflow.js\";\nimport { isElement } from \"./dom-utils/instanceOf.js\";\nimport { auto } from \"./enums.js\";\nvar INVALID_ELEMENT_ERROR = 'Popper: Invalid reference or popper argument provided. They must be either a DOM element or virtual element.';\nvar INFINITE_LOOP_ERROR = 'Popper: An infinite loop in the modifiers cycle has been detected! The cycle has been interrupted to prevent a browser crash.';\nvar DEFAULT_OPTIONS = {\n  placement: 'bottom',\n  modifiers: [],\n  strategy: 'absolute'\n};\n\nfunction areValidElements() {\n  for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n    args[_key] = arguments[_key];\n  }\n\n  return !args.some(function (element) {\n    return !(element && typeof element.getBoundingClientRect === 'function');\n  });\n}\n\nexport function popperGenerator(generatorOptions) {\n  if (generatorOptions === void 0) {\n    generatorOptions = {};\n  }\n\n  var _generatorOptions = generatorOptions,\n      _generatorOptions$def = _generatorOptions.defaultModifiers,\n      defaultModifiers = _generatorOptions$def === void 0 ? [] : _generatorOptions$def,\n      _generatorOptions$def2 = _generatorOptions.defaultOptions,\n      defaultOptions = _generatorOptions$def2 === void 0 ? DEFAULT_OPTIONS : _generatorOptions$def2;\n  return function createPopper(reference, popper, options) {\n    if (options === void 0) {\n      options = defaultOptions;\n    }\n\n    var state = {\n      placement: 'bottom',\n      orderedModifiers: [],\n      options: Object.assign({}, DEFAULT_OPTIONS, defaultOptions),\n      modifiersData: {},\n      elements: {\n        reference: reference,\n        popper: popper\n      },\n      attributes: {},\n      styles: {}\n    };\n    var effectCleanupFns = [];\n    var isDestroyed = false;\n    var instance = {\n      state: state,\n      setOptions: function setOptions(options) {\n        cleanupModifierEffects();\n        state.options = Object.assign({}, defaultOptions, state.options, options);\n        state.scrollParents = {\n          reference: isElement(reference) ? listScrollParents(reference) : reference.contextElement ? listScrollParents(reference.contextElement) : [],\n          popper: listScrollParents(popper)\n        }; // Orders the modifiers based on their dependencies and `phase`\n        // properties\n\n        var orderedModifiers = orderModifiers(mergeByName([].concat(defaultModifiers, state.options.modifiers))); // Strip out disabled modifiers\n\n        state.orderedModifiers = orderedModifiers.filter(function (m) {\n          return m.enabled;\n        }); // Validate the provided modifiers so that the consumer will get warned\n        // if one of the modifiers is invalid for any reason\n\n        if (false) {\n          var modifiers = uniqueBy([].concat(orderedModifiers, state.options.modifiers), function (_ref) {\n            var name = _ref.name;\n            return name;\n          });\n          validateModifiers(modifiers);\n\n          if (getBasePlacement(state.options.placement) === auto) {\n            var flipModifier = state.orderedModifiers.find(function (_ref2) {\n              var name = _ref2.name;\n              return name === 'flip';\n            });\n\n            if (!flipModifier) {\n              console.error(['Popper: \"auto\" placements require the \"flip\" modifier be', 'present and enabled to work.'].join(' '));\n            }\n          }\n\n          var _getComputedStyle = getComputedStyle(popper),\n              marginTop = _getComputedStyle.marginTop,\n              marginRight = _getComputedStyle.marginRight,\n              marginBottom = _getComputedStyle.marginBottom,\n              marginLeft = _getComputedStyle.marginLeft; // We no longer take into account `margins` on the popper, and it can\n          // cause bugs with positioning, so we'll warn the consumer\n\n\n          if ([marginTop, marginRight, marginBottom, marginLeft].some(function (margin) {\n            return parseFloat(margin);\n          })) {\n            console.warn(['Popper: CSS \"margin\" styles cannot be used to apply padding', 'between the popper and its reference element or boundary.', 'To replicate margin, use the `offset` modifier, as well as', 'the `padding` option in the `preventOverflow` and `flip`', 'modifiers.'].join(' '));\n          }\n        }\n\n        runModifierEffects();\n        return instance.update();\n      },\n      // Sync update – it will always be executed, even if not necessary. This\n      // is useful for low frequency updates where sync behavior simplifies the\n      // logic.\n      // For high frequency updates (e.g. `resize` and `scroll` events), always\n      // prefer the async Popper#update method\n      forceUpdate: function forceUpdate() {\n        if (isDestroyed) {\n          return;\n        }\n\n        var _state$elements = state.elements,\n            reference = _state$elements.reference,\n            popper = _state$elements.popper; // Don't proceed if `reference` or `popper` are not valid elements\n        // anymore\n\n        if (!areValidElements(reference, popper)) {\n          if (false) {\n            console.error(INVALID_ELEMENT_ERROR);\n          }\n\n          return;\n        } // Store the reference and popper rects to be read by modifiers\n\n\n        state.rects = {\n          reference: getCompositeRect(reference, getOffsetParent(popper), state.options.strategy === 'fixed'),\n          popper: getLayoutRect(popper)\n        }; // Modifiers have the ability to reset the current update cycle. The\n        // most common use case for this is the `flip` modifier changing the\n        // placement, which then needs to re-run all the modifiers, because the\n        // logic was previously ran for the previous placement and is therefore\n        // stale/incorrect\n\n        state.reset = false;\n        state.placement = state.options.placement; // On each update cycle, the `modifiersData` property for each modifier\n        // is filled with the initial data specified by the modifier. This means\n        // it doesn't persist and is fresh on each update.\n        // To ensure persistent data, use `${name}#persistent`\n\n        state.orderedModifiers.forEach(function (modifier) {\n          return state.modifiersData[modifier.name] = Object.assign({}, modifier.data);\n        });\n        var __debug_loops__ = 0;\n\n        for (var index = 0; index < state.orderedModifiers.length; index++) {\n          if (false) {\n            __debug_loops__ += 1;\n\n            if (__debug_loops__ > 100) {\n              console.error(INFINITE_LOOP_ERROR);\n              break;\n            }\n          }\n\n          if (state.reset === true) {\n            state.reset = false;\n            index = -1;\n            continue;\n          }\n\n          var _state$orderedModifie = state.orderedModifiers[index],\n              fn = _state$orderedModifie.fn,\n              _state$orderedModifie2 = _state$orderedModifie.options,\n              _options = _state$orderedModifie2 === void 0 ? {} : _state$orderedModifie2,\n              name = _state$orderedModifie.name;\n\n          if (typeof fn === 'function') {\n            state = fn({\n              state: state,\n              options: _options,\n              name: name,\n              instance: instance\n            }) || state;\n          }\n        }\n      },\n      // Async and optimistically optimized update – it will not be executed if\n      // not necessary (debounced to run at most once-per-tick)\n      update: debounce(function () {\n        return new Promise(function (resolve) {\n          instance.forceUpdate();\n          resolve(state);\n        });\n      }),\n      destroy: function destroy() {\n        cleanupModifierEffects();\n        isDestroyed = true;\n      }\n    };\n\n    if (!areValidElements(reference, popper)) {\n      if (false) {\n        console.error(INVALID_ELEMENT_ERROR);\n      }\n\n      return instance;\n    }\n\n    instance.setOptions(options).then(function (state) {\n      if (!isDestroyed && options.onFirstUpdate) {\n        options.onFirstUpdate(state);\n      }\n    }); // Modifiers have the ability to execute arbitrary code before the first\n    // update cycle runs. They will be executed in the same order as the update\n    // cycle. This is useful when a modifier adds some persistent data that\n    // other modifiers need to use, but the modifier is run after the dependent\n    // one.\n\n    function runModifierEffects() {\n      state.orderedModifiers.forEach(function (_ref3) {\n        var name = _ref3.name,\n            _ref3$options = _ref3.options,\n            options = _ref3$options === void 0 ? {} : _ref3$options,\n            effect = _ref3.effect;\n\n        if (typeof effect === 'function') {\n          var cleanupFn = effect({\n            state: state,\n            name: name,\n            instance: instance,\n            options: options\n          });\n\n          var noopFn = function noopFn() {};\n\n          effectCleanupFns.push(cleanupFn || noopFn);\n        }\n      });\n    }\n\n    function cleanupModifierEffects() {\n      effectCleanupFns.forEach(function (fn) {\n        return fn();\n      });\n      effectCleanupFns = [];\n    }\n\n    return instance;\n  };\n}\nexport var createPopper = /*#__PURE__*/popperGenerator(); // eslint-disable-next-line import/no-unused-modules\n\nexport { detectOverflow };"
  },
  {
    "path": "static/assets/vendor/@popperjs/core/dist/esm/dom-utils/contains.js",
    "content": "import { isShadowRoot } from \"./instanceOf.js\";\nexport default function contains(parent, child) {\n  var rootNode = child.getRootNode && child.getRootNode(); // First, attempt with faster native method\n\n  if (parent.contains(child)) {\n    return true;\n  } // then fallback to custom implementation with Shadow DOM support\n  else if (rootNode && isShadowRoot(rootNode)) {\n      var next = child;\n\n      do {\n        if (next && parent.isSameNode(next)) {\n          return true;\n        } // $FlowFixMe[prop-missing]: need a better way to handle this...\n\n\n        next = next.parentNode || next.host;\n      } while (next);\n    } // Give up, the result is false\n\n\n  return false;\n}"
  },
  {
    "path": "static/assets/vendor/@popperjs/core/dist/esm/dom-utils/getBoundingClientRect.js",
    "content": "import { isHTMLElement } from \"./instanceOf.js\";\nvar round = Math.round;\nexport default function getBoundingClientRect(element, includeScale) {\n  if (includeScale === void 0) {\n    includeScale = false;\n  }\n\n  var rect = element.getBoundingClientRect();\n  var scaleX = 1;\n  var scaleY = 1;\n\n  if (isHTMLElement(element) && includeScale) {\n    // Fallback to 1 in case both values are `0`\n    scaleX = rect.width / element.offsetWidth || 1;\n    scaleY = rect.height / element.offsetHeight || 1;\n  }\n\n  return {\n    width: round(rect.width / scaleX),\n    height: round(rect.height / scaleY),\n    top: round(rect.top / scaleY),\n    right: round(rect.right / scaleX),\n    bottom: round(rect.bottom / scaleY),\n    left: round(rect.left / scaleX),\n    x: round(rect.left / scaleX),\n    y: round(rect.top / scaleY)\n  };\n}"
  },
  {
    "path": "static/assets/vendor/@popperjs/core/dist/esm/dom-utils/getClippingRect.js",
    "content": "import { viewport } from \"../enums.js\";\nimport getViewportRect from \"./getViewportRect.js\";\nimport getDocumentRect from \"./getDocumentRect.js\";\nimport listScrollParents from \"./listScrollParents.js\";\nimport getOffsetParent from \"./getOffsetParent.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport getComputedStyle from \"./getComputedStyle.js\";\nimport { isElement, isHTMLElement } from \"./instanceOf.js\";\nimport getBoundingClientRect from \"./getBoundingClientRect.js\";\nimport getParentNode from \"./getParentNode.js\";\nimport contains from \"./contains.js\";\nimport getNodeName from \"./getNodeName.js\";\nimport rectToClientRect from \"../utils/rectToClientRect.js\";\nimport { max, min } from \"../utils/math.js\";\n\nfunction getInnerBoundingClientRect(element) {\n  var rect = getBoundingClientRect(element);\n  rect.top = rect.top + element.clientTop;\n  rect.left = rect.left + element.clientLeft;\n  rect.bottom = rect.top + element.clientHeight;\n  rect.right = rect.left + element.clientWidth;\n  rect.width = element.clientWidth;\n  rect.height = element.clientHeight;\n  rect.x = rect.left;\n  rect.y = rect.top;\n  return rect;\n}\n\nfunction getClientRectFromMixedType(element, clippingParent) {\n  return clippingParent === viewport ? rectToClientRect(getViewportRect(element)) : isHTMLElement(clippingParent) ? getInnerBoundingClientRect(clippingParent) : rectToClientRect(getDocumentRect(getDocumentElement(element)));\n} // A \"clipping parent\" is an overflowable container with the characteristic of\n// clipping (or hiding) overflowing elements with a position different from\n// `initial`\n\n\nfunction getClippingParents(element) {\n  var clippingParents = listScrollParents(getParentNode(element));\n  var canEscapeClipping = ['absolute', 'fixed'].indexOf(getComputedStyle(element).position) >= 0;\n  var clipperElement = canEscapeClipping && isHTMLElement(element) ? getOffsetParent(element) : element;\n\n  if (!isElement(clipperElement)) {\n    return [];\n  } // $FlowFixMe[incompatible-return]: https://github.com/facebook/flow/issues/1414\n\n\n  return clippingParents.filter(function (clippingParent) {\n    return isElement(clippingParent) && contains(clippingParent, clipperElement) && getNodeName(clippingParent) !== 'body';\n  });\n} // Gets the maximum area that the element is visible in due to any number of\n// clipping parents\n\n\nexport default function getClippingRect(element, boundary, rootBoundary) {\n  var mainClippingParents = boundary === 'clippingParents' ? getClippingParents(element) : [].concat(boundary);\n  var clippingParents = [].concat(mainClippingParents, [rootBoundary]);\n  var firstClippingParent = clippingParents[0];\n  var clippingRect = clippingParents.reduce(function (accRect, clippingParent) {\n    var rect = getClientRectFromMixedType(element, clippingParent);\n    accRect.top = max(rect.top, accRect.top);\n    accRect.right = min(rect.right, accRect.right);\n    accRect.bottom = min(rect.bottom, accRect.bottom);\n    accRect.left = max(rect.left, accRect.left);\n    return accRect;\n  }, getClientRectFromMixedType(element, firstClippingParent));\n  clippingRect.width = clippingRect.right - clippingRect.left;\n  clippingRect.height = clippingRect.bottom - clippingRect.top;\n  clippingRect.x = clippingRect.left;\n  clippingRect.y = clippingRect.top;\n  return clippingRect;\n}"
  },
  {
    "path": "static/assets/vendor/@popperjs/core/dist/esm/dom-utils/getCompositeRect.js",
    "content": "import getBoundingClientRect from \"./getBoundingClientRect.js\";\nimport getNodeScroll from \"./getNodeScroll.js\";\nimport getNodeName from \"./getNodeName.js\";\nimport { isHTMLElement } from \"./instanceOf.js\";\nimport getWindowScrollBarX from \"./getWindowScrollBarX.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport isScrollParent from \"./isScrollParent.js\";\n\nfunction isElementScaled(element) {\n  var rect = element.getBoundingClientRect();\n  var scaleX = rect.width / element.offsetWidth || 1;\n  var scaleY = rect.height / element.offsetHeight || 1;\n  return scaleX !== 1 || scaleY !== 1;\n} // Returns the composite rect of an element relative to its offsetParent.\n// Composite means it takes into account transforms as well as layout.\n\n\nexport default function getCompositeRect(elementOrVirtualElement, offsetParent, isFixed) {\n  if (isFixed === void 0) {\n    isFixed = false;\n  }\n\n  var isOffsetParentAnElement = isHTMLElement(offsetParent);\n  var offsetParentIsScaled = isHTMLElement(offsetParent) && isElementScaled(offsetParent);\n  var documentElement = getDocumentElement(offsetParent);\n  var rect = getBoundingClientRect(elementOrVirtualElement, offsetParentIsScaled);\n  var scroll = {\n    scrollLeft: 0,\n    scrollTop: 0\n  };\n  var offsets = {\n    x: 0,\n    y: 0\n  };\n\n  if (isOffsetParentAnElement || !isOffsetParentAnElement && !isFixed) {\n    if (getNodeName(offsetParent) !== 'body' || // https://github.com/popperjs/popper-core/issues/1078\n    isScrollParent(documentElement)) {\n      scroll = getNodeScroll(offsetParent);\n    }\n\n    if (isHTMLElement(offsetParent)) {\n      offsets = getBoundingClientRect(offsetParent, true);\n      offsets.x += offsetParent.clientLeft;\n      offsets.y += offsetParent.clientTop;\n    } else if (documentElement) {\n      offsets.x = getWindowScrollBarX(documentElement);\n    }\n  }\n\n  return {\n    x: rect.left + scroll.scrollLeft - offsets.x,\n    y: rect.top + scroll.scrollTop - offsets.y,\n    width: rect.width,\n    height: rect.height\n  };\n}"
  },
  {
    "path": "static/assets/vendor/@popperjs/core/dist/esm/dom-utils/getComputedStyle.js",
    "content": "import getWindow from \"./getWindow.js\";\nexport default function getComputedStyle(element) {\n  return getWindow(element).getComputedStyle(element);\n}"
  },
  {
    "path": "static/assets/vendor/@popperjs/core/dist/esm/dom-utils/getDocumentElement.js",
    "content": "import { isElement } from \"./instanceOf.js\";\nexport default function getDocumentElement(element) {\n  // $FlowFixMe[incompatible-return]: assume body is always available\n  return ((isElement(element) ? element.ownerDocument : // $FlowFixMe[prop-missing]\n  element.document) || window.document).documentElement;\n}"
  },
  {
    "path": "static/assets/vendor/@popperjs/core/dist/esm/dom-utils/getDocumentRect.js",
    "content": "import getDocumentElement from \"./getDocumentElement.js\";\nimport getComputedStyle from \"./getComputedStyle.js\";\nimport getWindowScrollBarX from \"./getWindowScrollBarX.js\";\nimport getWindowScroll from \"./getWindowScroll.js\";\nimport { max } from \"../utils/math.js\"; // Gets the entire size of the scrollable document area, even extending outside\n// of the `<html>` and `<body>` rect bounds if horizontally scrollable\n\nexport default function getDocumentRect(element) {\n  var _element$ownerDocumen;\n\n  var html = getDocumentElement(element);\n  var winScroll = getWindowScroll(element);\n  var body = (_element$ownerDocumen = element.ownerDocument) == null ? void 0 : _element$ownerDocumen.body;\n  var width = max(html.scrollWidth, html.clientWidth, body ? body.scrollWidth : 0, body ? body.clientWidth : 0);\n  var height = max(html.scrollHeight, html.clientHeight, body ? body.scrollHeight : 0, body ? body.clientHeight : 0);\n  var x = -winScroll.scrollLeft + getWindowScrollBarX(element);\n  var y = -winScroll.scrollTop;\n\n  if (getComputedStyle(body || html).direction === 'rtl') {\n    x += max(html.clientWidth, body ? body.clientWidth : 0) - width;\n  }\n\n  return {\n    width: width,\n    height: height,\n    x: x,\n    y: y\n  };\n}"
  },
  {
    "path": "static/assets/vendor/@popperjs/core/dist/esm/dom-utils/getHTMLElementScroll.js",
    "content": "export default function getHTMLElementScroll(element) {\n  return {\n    scrollLeft: element.scrollLeft,\n    scrollTop: element.scrollTop\n  };\n}"
  },
  {
    "path": "static/assets/vendor/@popperjs/core/dist/esm/dom-utils/getLayoutRect.js",
    "content": "import getBoundingClientRect from \"./getBoundingClientRect.js\"; // Returns the layout rect of an element relative to its offsetParent. Layout\n// means it doesn't take into account transforms.\n\nexport default function getLayoutRect(element) {\n  var clientRect = getBoundingClientRect(element); // Use the clientRect sizes if it's not been transformed.\n  // Fixes https://github.com/popperjs/popper-core/issues/1223\n\n  var width = element.offsetWidth;\n  var height = element.offsetHeight;\n\n  if (Math.abs(clientRect.width - width) <= 1) {\n    width = clientRect.width;\n  }\n\n  if (Math.abs(clientRect.height - height) <= 1) {\n    height = clientRect.height;\n  }\n\n  return {\n    x: element.offsetLeft,\n    y: element.offsetTop,\n    width: width,\n    height: height\n  };\n}"
  },
  {
    "path": "static/assets/vendor/@popperjs/core/dist/esm/dom-utils/getNodeName.js",
    "content": "export default function getNodeName(element) {\n  return element ? (element.nodeName || '').toLowerCase() : null;\n}"
  },
  {
    "path": "static/assets/vendor/@popperjs/core/dist/esm/dom-utils/getNodeScroll.js",
    "content": "import getWindowScroll from \"./getWindowScroll.js\";\nimport getWindow from \"./getWindow.js\";\nimport { isHTMLElement } from \"./instanceOf.js\";\nimport getHTMLElementScroll from \"./getHTMLElementScroll.js\";\nexport default function getNodeScroll(node) {\n  if (node === getWindow(node) || !isHTMLElement(node)) {\n    return getWindowScroll(node);\n  } else {\n    return getHTMLElementScroll(node);\n  }\n}"
  },
  {
    "path": "static/assets/vendor/@popperjs/core/dist/esm/dom-utils/getOffsetParent.js",
    "content": "import getWindow from \"./getWindow.js\";\nimport getNodeName from \"./getNodeName.js\";\nimport getComputedStyle from \"./getComputedStyle.js\";\nimport { isHTMLElement } from \"./instanceOf.js\";\nimport isTableElement from \"./isTableElement.js\";\nimport getParentNode from \"./getParentNode.js\";\n\nfunction getTrueOffsetParent(element) {\n  if (!isHTMLElement(element) || // https://github.com/popperjs/popper-core/issues/837\n  getComputedStyle(element).position === 'fixed') {\n    return null;\n  }\n\n  return element.offsetParent;\n} // `.offsetParent` reports `null` for fixed elements, while absolute elements\n// return the containing block\n\n\nfunction getContainingBlock(element) {\n  var isFirefox = navigator.userAgent.toLowerCase().indexOf('firefox') !== -1;\n  var isIE = navigator.userAgent.indexOf('Trident') !== -1;\n\n  if (isIE && isHTMLElement(element)) {\n    // In IE 9, 10 and 11 fixed elements containing block is always established by the viewport\n    var elementCss = getComputedStyle(element);\n\n    if (elementCss.position === 'fixed') {\n      return null;\n    }\n  }\n\n  var currentNode = getParentNode(element);\n\n  while (isHTMLElement(currentNode) && ['html', 'body'].indexOf(getNodeName(currentNode)) < 0) {\n    var css = getComputedStyle(currentNode); // This is non-exhaustive but covers the most common CSS properties that\n    // create a containing block.\n    // https://developer.mozilla.org/en-US/docs/Web/CSS/Containing_block#identifying_the_containing_block\n\n    if (css.transform !== 'none' || css.perspective !== 'none' || css.contain === 'paint' || ['transform', 'perspective'].indexOf(css.willChange) !== -1 || isFirefox && css.willChange === 'filter' || isFirefox && css.filter && css.filter !== 'none') {\n      return currentNode;\n    } else {\n      currentNode = currentNode.parentNode;\n    }\n  }\n\n  return null;\n} // Gets the closest ancestor positioned element. Handles some edge cases,\n// such as table ancestors and cross browser bugs.\n\n\nexport default function getOffsetParent(element) {\n  var window = getWindow(element);\n  var offsetParent = getTrueOffsetParent(element);\n\n  while (offsetParent && isTableElement(offsetParent) && getComputedStyle(offsetParent).position === 'static') {\n    offsetParent = getTrueOffsetParent(offsetParent);\n  }\n\n  if (offsetParent && (getNodeName(offsetParent) === 'html' || getNodeName(offsetParent) === 'body' && getComputedStyle(offsetParent).position === 'static')) {\n    return window;\n  }\n\n  return offsetParent || getContainingBlock(element) || window;\n}"
  },
  {
    "path": "static/assets/vendor/@popperjs/core/dist/esm/dom-utils/getParentNode.js",
    "content": "import getNodeName from \"./getNodeName.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport { isShadowRoot } from \"./instanceOf.js\";\nexport default function getParentNode(element) {\n  if (getNodeName(element) === 'html') {\n    return element;\n  }\n\n  return (// this is a quicker (but less type safe) way to save quite some bytes from the bundle\n    // $FlowFixMe[incompatible-return]\n    // $FlowFixMe[prop-missing]\n    element.assignedSlot || // step into the shadow DOM of the parent of a slotted node\n    element.parentNode || ( // DOM Element detected\n    isShadowRoot(element) ? element.host : null) || // ShadowRoot detected\n    // $FlowFixMe[incompatible-call]: HTMLElement is a Node\n    getDocumentElement(element) // fallback\n\n  );\n}"
  },
  {
    "path": "static/assets/vendor/@popperjs/core/dist/esm/dom-utils/getScrollParent.js",
    "content": "import getParentNode from \"./getParentNode.js\";\nimport isScrollParent from \"./isScrollParent.js\";\nimport getNodeName from \"./getNodeName.js\";\nimport { isHTMLElement } from \"./instanceOf.js\";\nexport default function getScrollParent(node) {\n  if (['html', 'body', '#document'].indexOf(getNodeName(node)) >= 0) {\n    // $FlowFixMe[incompatible-return]: assume body is always available\n    return node.ownerDocument.body;\n  }\n\n  if (isHTMLElement(node) && isScrollParent(node)) {\n    return node;\n  }\n\n  return getScrollParent(getParentNode(node));\n}"
  },
  {
    "path": "static/assets/vendor/@popperjs/core/dist/esm/dom-utils/getViewportRect.js",
    "content": "import getWindow from \"./getWindow.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport getWindowScrollBarX from \"./getWindowScrollBarX.js\";\nexport default function getViewportRect(element) {\n  var win = getWindow(element);\n  var html = getDocumentElement(element);\n  var visualViewport = win.visualViewport;\n  var width = html.clientWidth;\n  var height = html.clientHeight;\n  var x = 0;\n  var y = 0; // NB: This isn't supported on iOS <= 12. If the keyboard is open, the popper\n  // can be obscured underneath it.\n  // Also, `html.clientHeight` adds the bottom bar height in Safari iOS, even\n  // if it isn't open, so if this isn't available, the popper will be detected\n  // to overflow the bottom of the screen too early.\n\n  if (visualViewport) {\n    width = visualViewport.width;\n    height = visualViewport.height; // Uses Layout Viewport (like Chrome; Safari does not currently)\n    // In Chrome, it returns a value very close to 0 (+/-) but contains rounding\n    // errors due to floating point numbers, so we need to check precision.\n    // Safari returns a number <= 0, usually < -1 when pinch-zoomed\n    // Feature detection fails in mobile emulation mode in Chrome.\n    // Math.abs(win.innerWidth / visualViewport.scale - visualViewport.width) <\n    // 0.001\n    // Fallback here: \"Not Safari\" userAgent\n\n    if (!/^((?!chrome|android).)*safari/i.test(navigator.userAgent)) {\n      x = visualViewport.offsetLeft;\n      y = visualViewport.offsetTop;\n    }\n  }\n\n  return {\n    width: width,\n    height: height,\n    x: x + getWindowScrollBarX(element),\n    y: y\n  };\n}"
  },
  {
    "path": "static/assets/vendor/@popperjs/core/dist/esm/dom-utils/getWindow.js",
    "content": "export default function getWindow(node) {\n  if (node == null) {\n    return window;\n  }\n\n  if (node.toString() !== '[object Window]') {\n    var ownerDocument = node.ownerDocument;\n    return ownerDocument ? ownerDocument.defaultView || window : window;\n  }\n\n  return node;\n}"
  },
  {
    "path": "static/assets/vendor/@popperjs/core/dist/esm/dom-utils/getWindowScroll.js",
    "content": "import getWindow from \"./getWindow.js\";\nexport default function getWindowScroll(node) {\n  var win = getWindow(node);\n  var scrollLeft = win.pageXOffset;\n  var scrollTop = win.pageYOffset;\n  return {\n    scrollLeft: scrollLeft,\n    scrollTop: scrollTop\n  };\n}"
  },
  {
    "path": "static/assets/vendor/@popperjs/core/dist/esm/dom-utils/getWindowScrollBarX.js",
    "content": "import getBoundingClientRect from \"./getBoundingClientRect.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport getWindowScroll from \"./getWindowScroll.js\";\nexport default function getWindowScrollBarX(element) {\n  // If <html> has a CSS width greater than the viewport, then this will be\n  // incorrect for RTL.\n  // Popper 1 is broken in this case and never had a bug report so let's assume\n  // it's not an issue. I don't think anyone ever specifies width on <html>\n  // anyway.\n  // Browsers where the left scrollbar doesn't cause an issue report `0` for\n  // this (e.g. Edge 2019, IE11, Safari)\n  return getBoundingClientRect(getDocumentElement(element)).left + getWindowScroll(element).scrollLeft;\n}"
  },
  {
    "path": "static/assets/vendor/@popperjs/core/dist/esm/dom-utils/instanceOf.js",
    "content": "import getWindow from \"./getWindow.js\";\n\nfunction isElement(node) {\n  var OwnElement = getWindow(node).Element;\n  return node instanceof OwnElement || node instanceof Element;\n}\n\nfunction isHTMLElement(node) {\n  var OwnElement = getWindow(node).HTMLElement;\n  return node instanceof OwnElement || node instanceof HTMLElement;\n}\n\nfunction isShadowRoot(node) {\n  // IE 11 has no ShadowRoot\n  if (typeof ShadowRoot === 'undefined') {\n    return false;\n  }\n\n  var OwnElement = getWindow(node).ShadowRoot;\n  return node instanceof OwnElement || node instanceof ShadowRoot;\n}\n\nexport { isElement, isHTMLElement, isShadowRoot };"
  },
  {
    "path": "static/assets/vendor/@popperjs/core/dist/esm/dom-utils/isScrollParent.js",
    "content": "import getComputedStyle from \"./getComputedStyle.js\";\nexport default function isScrollParent(element) {\n  // Firefox wants us to check `-x` and `-y` variations as well\n  var _getComputedStyle = getComputedStyle(element),\n      overflow = _getComputedStyle.overflow,\n      overflowX = _getComputedStyle.overflowX,\n      overflowY = _getComputedStyle.overflowY;\n\n  return /auto|scroll|overlay|hidden/.test(overflow + overflowY + overflowX);\n}"
  },
  {
    "path": "static/assets/vendor/@popperjs/core/dist/esm/dom-utils/isTableElement.js",
    "content": "import getNodeName from \"./getNodeName.js\";\nexport default function isTableElement(element) {\n  return ['table', 'td', 'th'].indexOf(getNodeName(element)) >= 0;\n}"
  },
  {
    "path": "static/assets/vendor/@popperjs/core/dist/esm/dom-utils/listScrollParents.js",
    "content": "import getScrollParent from \"./getScrollParent.js\";\nimport getParentNode from \"./getParentNode.js\";\nimport getWindow from \"./getWindow.js\";\nimport isScrollParent from \"./isScrollParent.js\";\n/*\ngiven a DOM element, return the list of all scroll parents, up the list of ancesors\nuntil we get to the top window object. This list is what we attach scroll listeners\nto, because if any of these parent elements scroll, we'll need to re-calculate the\nreference element's position.\n*/\n\nexport default function listScrollParents(element, list) {\n  var _element$ownerDocumen;\n\n  if (list === void 0) {\n    list = [];\n  }\n\n  var scrollParent = getScrollParent(element);\n  var isBody = scrollParent === ((_element$ownerDocumen = element.ownerDocument) == null ? void 0 : _element$ownerDocumen.body);\n  var win = getWindow(scrollParent);\n  var target = isBody ? [win].concat(win.visualViewport || [], isScrollParent(scrollParent) ? scrollParent : []) : scrollParent;\n  var updatedList = list.concat(target);\n  return isBody ? updatedList : // $FlowFixMe[incompatible-call]: isBody tells us target will be an HTMLElement here\n  updatedList.concat(listScrollParents(getParentNode(target)));\n}"
  },
  {
    "path": "static/assets/vendor/@popperjs/core/dist/esm/enums.js",
    "content": "export var top = 'top';\nexport var bottom = 'bottom';\nexport var right = 'right';\nexport var left = 'left';\nexport var auto = 'auto';\nexport var basePlacements = [top, bottom, right, left];\nexport var start = 'start';\nexport var end = 'end';\nexport var clippingParents = 'clippingParents';\nexport var viewport = 'viewport';\nexport var popper = 'popper';\nexport var reference = 'reference';\nexport var variationPlacements = /*#__PURE__*/basePlacements.reduce(function (acc, placement) {\n  return acc.concat([placement + \"-\" + start, placement + \"-\" + end]);\n}, []);\nexport var placements = /*#__PURE__*/[].concat(basePlacements, [auto]).reduce(function (acc, placement) {\n  return acc.concat([placement, placement + \"-\" + start, placement + \"-\" + end]);\n}, []); // modifiers that need to read the DOM\n\nexport var beforeRead = 'beforeRead';\nexport var read = 'read';\nexport var afterRead = 'afterRead'; // pure-logic modifiers\n\nexport var beforeMain = 'beforeMain';\nexport var main = 'main';\nexport var afterMain = 'afterMain'; // modifier with the purpose to write to the DOM (or write into a framework state)\n\nexport var beforeWrite = 'beforeWrite';\nexport var write = 'write';\nexport var afterWrite = 'afterWrite';\nexport var modifierPhases = [beforeRead, read, afterRead, beforeMain, main, afterMain, beforeWrite, write, afterWrite];"
  },
  {
    "path": "static/assets/vendor/@popperjs/core/dist/esm/index.js",
    "content": "export * from \"./enums.js\";\nexport * from \"./modifiers/index.js\"; // eslint-disable-next-line import/no-unused-modules\n\nexport { popperGenerator, detectOverflow, createPopper as createPopperBase } from \"./createPopper.js\"; // eslint-disable-next-line import/no-unused-modules\n\nexport { createPopper } from \"./popper.js\"; // eslint-disable-next-line import/no-unused-modules\n\nexport { createPopper as createPopperLite } from \"./popper-lite.js\";"
  },
  {
    "path": "static/assets/vendor/@popperjs/core/dist/esm/modifiers/applyStyles.js",
    "content": "import getNodeName from \"../dom-utils/getNodeName.js\";\nimport { isHTMLElement } from \"../dom-utils/instanceOf.js\"; // This modifier takes the styles prepared by the `computeStyles` modifier\n// and applies them to the HTMLElements such as popper and arrow\n\nfunction applyStyles(_ref) {\n  var state = _ref.state;\n  Object.keys(state.elements).forEach(function (name) {\n    var style = state.styles[name] || {};\n    var attributes = state.attributes[name] || {};\n    var element = state.elements[name]; // arrow is optional + virtual elements\n\n    if (!isHTMLElement(element) || !getNodeName(element)) {\n      return;\n    } // Flow doesn't support to extend this property, but it's the most\n    // effective way to apply styles to an HTMLElement\n    // $FlowFixMe[cannot-write]\n\n\n    Object.assign(element.style, style);\n    Object.keys(attributes).forEach(function (name) {\n      var value = attributes[name];\n\n      if (value === false) {\n        element.removeAttribute(name);\n      } else {\n        element.setAttribute(name, value === true ? '' : value);\n      }\n    });\n  });\n}\n\nfunction effect(_ref2) {\n  var state = _ref2.state;\n  var initialStyles = {\n    popper: {\n      position: state.options.strategy,\n      left: '0',\n      top: '0',\n      margin: '0'\n    },\n    arrow: {\n      position: 'absolute'\n    },\n    reference: {}\n  };\n  Object.assign(state.elements.popper.style, initialStyles.popper);\n  state.styles = initialStyles;\n\n  if (state.elements.arrow) {\n    Object.assign(state.elements.arrow.style, initialStyles.arrow);\n  }\n\n  return function () {\n    Object.keys(state.elements).forEach(function (name) {\n      var element = state.elements[name];\n      var attributes = state.attributes[name] || {};\n      var styleProperties = Object.keys(state.styles.hasOwnProperty(name) ? state.styles[name] : initialStyles[name]); // Set all values to an empty string to unset them\n\n      var style = styleProperties.reduce(function (style, property) {\n        style[property] = '';\n        return style;\n      }, {}); // arrow is optional + virtual elements\n\n      if (!isHTMLElement(element) || !getNodeName(element)) {\n        return;\n      }\n\n      Object.assign(element.style, style);\n      Object.keys(attributes).forEach(function (attribute) {\n        element.removeAttribute(attribute);\n      });\n    });\n  };\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n  name: 'applyStyles',\n  enabled: true,\n  phase: 'write',\n  fn: applyStyles,\n  effect: effect,\n  requires: ['computeStyles']\n};"
  },
  {
    "path": "static/assets/vendor/@popperjs/core/dist/esm/modifiers/arrow.js",
    "content": "import getBasePlacement from \"../utils/getBasePlacement.js\";\nimport getLayoutRect from \"../dom-utils/getLayoutRect.js\";\nimport contains from \"../dom-utils/contains.js\";\nimport getOffsetParent from \"../dom-utils/getOffsetParent.js\";\nimport getMainAxisFromPlacement from \"../utils/getMainAxisFromPlacement.js\";\nimport within from \"../utils/within.js\";\nimport mergePaddingObject from \"../utils/mergePaddingObject.js\";\nimport expandToHashMap from \"../utils/expandToHashMap.js\";\nimport { left, right, basePlacements, top, bottom } from \"../enums.js\";\nimport { isHTMLElement } from \"../dom-utils/instanceOf.js\"; // eslint-disable-next-line import/no-unused-modules\n\nvar toPaddingObject = function toPaddingObject(padding, state) {\n  padding = typeof padding === 'function' ? padding(Object.assign({}, state.rects, {\n    placement: state.placement\n  })) : padding;\n  return mergePaddingObject(typeof padding !== 'number' ? padding : expandToHashMap(padding, basePlacements));\n};\n\nfunction arrow(_ref) {\n  var _state$modifiersData$;\n\n  var state = _ref.state,\n      name = _ref.name,\n      options = _ref.options;\n  var arrowElement = state.elements.arrow;\n  var popperOffsets = state.modifiersData.popperOffsets;\n  var basePlacement = getBasePlacement(state.placement);\n  var axis = getMainAxisFromPlacement(basePlacement);\n  var isVertical = [left, right].indexOf(basePlacement) >= 0;\n  var len = isVertical ? 'height' : 'width';\n\n  if (!arrowElement || !popperOffsets) {\n    return;\n  }\n\n  var paddingObject = toPaddingObject(options.padding, state);\n  var arrowRect = getLayoutRect(arrowElement);\n  var minProp = axis === 'y' ? top : left;\n  var maxProp = axis === 'y' ? bottom : right;\n  var endDiff = state.rects.reference[len] + state.rects.reference[axis] - popperOffsets[axis] - state.rects.popper[len];\n  var startDiff = popperOffsets[axis] - state.rects.reference[axis];\n  var arrowOffsetParent = getOffsetParent(arrowElement);\n  var clientSize = arrowOffsetParent ? axis === 'y' ? arrowOffsetParent.clientHeight || 0 : arrowOffsetParent.clientWidth || 0 : 0;\n  var centerToReference = endDiff / 2 - startDiff / 2; // Make sure the arrow doesn't overflow the popper if the center point is\n  // outside of the popper bounds\n\n  var min = paddingObject[minProp];\n  var max = clientSize - arrowRect[len] - paddingObject[maxProp];\n  var center = clientSize / 2 - arrowRect[len] / 2 + centerToReference;\n  var offset = within(min, center, max); // Prevents breaking syntax highlighting...\n\n  var axisProp = axis;\n  state.modifiersData[name] = (_state$modifiersData$ = {}, _state$modifiersData$[axisProp] = offset, _state$modifiersData$.centerOffset = offset - center, _state$modifiersData$);\n}\n\nfunction effect(_ref2) {\n  var state = _ref2.state,\n      options = _ref2.options;\n  var _options$element = options.element,\n      arrowElement = _options$element === void 0 ? '[data-popper-arrow]' : _options$element;\n\n  if (arrowElement == null) {\n    return;\n  } // CSS selector\n\n\n  if (typeof arrowElement === 'string') {\n    arrowElement = state.elements.popper.querySelector(arrowElement);\n\n    if (!arrowElement) {\n      return;\n    }\n  }\n\n  if (false) {\n    if (!isHTMLElement(arrowElement)) {\n      console.error(['Popper: \"arrow\" element must be an HTMLElement (not an SVGElement).', 'To use an SVG arrow, wrap it in an HTMLElement that will be used as', 'the arrow.'].join(' '));\n    }\n  }\n\n  if (!contains(state.elements.popper, arrowElement)) {\n    if (false) {\n      console.error(['Popper: \"arrow\" modifier\\'s `element` must be a child of the popper', 'element.'].join(' '));\n    }\n\n    return;\n  }\n\n  state.elements.arrow = arrowElement;\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n  name: 'arrow',\n  enabled: true,\n  phase: 'main',\n  fn: arrow,\n  effect: effect,\n  requires: ['popperOffsets'],\n  requiresIfExists: ['preventOverflow']\n};"
  },
  {
    "path": "static/assets/vendor/@popperjs/core/dist/esm/modifiers/computeStyles.js",
    "content": "import { top, left, right, bottom } from \"../enums.js\";\nimport getOffsetParent from \"../dom-utils/getOffsetParent.js\";\nimport getWindow from \"../dom-utils/getWindow.js\";\nimport getDocumentElement from \"../dom-utils/getDocumentElement.js\";\nimport getComputedStyle from \"../dom-utils/getComputedStyle.js\";\nimport getBasePlacement from \"../utils/getBasePlacement.js\";\nimport { round } from \"../utils/math.js\"; // eslint-disable-next-line import/no-unused-modules\n\nvar unsetSides = {\n  top: 'auto',\n  right: 'auto',\n  bottom: 'auto',\n  left: 'auto'\n}; // Round the offsets to the nearest suitable subpixel based on the DPR.\n// Zooming can change the DPR, but it seems to report a value that will\n// cleanly divide the values into the appropriate subpixels.\n\nfunction roundOffsetsByDPR(_ref) {\n  var x = _ref.x,\n      y = _ref.y;\n  var win = window;\n  var dpr = win.devicePixelRatio || 1;\n  return {\n    x: round(round(x * dpr) / dpr) || 0,\n    y: round(round(y * dpr) / dpr) || 0\n  };\n}\n\nexport function mapToStyles(_ref2) {\n  var _Object$assign2;\n\n  var popper = _ref2.popper,\n      popperRect = _ref2.popperRect,\n      placement = _ref2.placement,\n      offsets = _ref2.offsets,\n      position = _ref2.position,\n      gpuAcceleration = _ref2.gpuAcceleration,\n      adaptive = _ref2.adaptive,\n      roundOffsets = _ref2.roundOffsets;\n\n  var _ref3 = roundOffsets === true ? roundOffsetsByDPR(offsets) : typeof roundOffsets === 'function' ? roundOffsets(offsets) : offsets,\n      _ref3$x = _ref3.x,\n      x = _ref3$x === void 0 ? 0 : _ref3$x,\n      _ref3$y = _ref3.y,\n      y = _ref3$y === void 0 ? 0 : _ref3$y;\n\n  var hasX = offsets.hasOwnProperty('x');\n  var hasY = offsets.hasOwnProperty('y');\n  var sideX = left;\n  var sideY = top;\n  var win = window;\n\n  if (adaptive) {\n    var offsetParent = getOffsetParent(popper);\n    var heightProp = 'clientHeight';\n    var widthProp = 'clientWidth';\n\n    if (offsetParent === getWindow(popper)) {\n      offsetParent = getDocumentElement(popper);\n\n      if (getComputedStyle(offsetParent).position !== 'static') {\n        heightProp = 'scrollHeight';\n        widthProp = 'scrollWidth';\n      }\n    } // $FlowFixMe[incompatible-cast]: force type refinement, we compare offsetParent with window above, but Flow doesn't detect it\n\n\n    offsetParent = offsetParent;\n\n    if (placement === top) {\n      sideY = bottom; // $FlowFixMe[prop-missing]\n\n      y -= offsetParent[heightProp] - popperRect.height;\n      y *= gpuAcceleration ? 1 : -1;\n    }\n\n    if (placement === left) {\n      sideX = right; // $FlowFixMe[prop-missing]\n\n      x -= offsetParent[widthProp] - popperRect.width;\n      x *= gpuAcceleration ? 1 : -1;\n    }\n  }\n\n  var commonStyles = Object.assign({\n    position: position\n  }, adaptive && unsetSides);\n\n  if (gpuAcceleration) {\n    var _Object$assign;\n\n    return Object.assign({}, commonStyles, (_Object$assign = {}, _Object$assign[sideY] = hasY ? '0' : '', _Object$assign[sideX] = hasX ? '0' : '', _Object$assign.transform = (win.devicePixelRatio || 1) < 2 ? \"translate(\" + x + \"px, \" + y + \"px)\" : \"translate3d(\" + x + \"px, \" + y + \"px, 0)\", _Object$assign));\n  }\n\n  return Object.assign({}, commonStyles, (_Object$assign2 = {}, _Object$assign2[sideY] = hasY ? y + \"px\" : '', _Object$assign2[sideX] = hasX ? x + \"px\" : '', _Object$assign2.transform = '', _Object$assign2));\n}\n\nfunction computeStyles(_ref4) {\n  var state = _ref4.state,\n      options = _ref4.options;\n  var _options$gpuAccelerat = options.gpuAcceleration,\n      gpuAcceleration = _options$gpuAccelerat === void 0 ? true : _options$gpuAccelerat,\n      _options$adaptive = options.adaptive,\n      adaptive = _options$adaptive === void 0 ? true : _options$adaptive,\n      _options$roundOffsets = options.roundOffsets,\n      roundOffsets = _options$roundOffsets === void 0 ? true : _options$roundOffsets;\n\n  if (false) {\n    var transitionProperty = getComputedStyle(state.elements.popper).transitionProperty || '';\n\n    if (adaptive && ['transform', 'top', 'right', 'bottom', 'left'].some(function (property) {\n      return transitionProperty.indexOf(property) >= 0;\n    })) {\n      console.warn(['Popper: Detected CSS transitions on at least one of the following', 'CSS properties: \"transform\", \"top\", \"right\", \"bottom\", \"left\".', '\\n\\n', 'Disable the \"computeStyles\" modifier\\'s `adaptive` option to allow', 'for smooth transitions, or remove these properties from the CSS', 'transition declaration on the popper element if only transitioning', 'opacity or background-color for example.', '\\n\\n', 'We recommend using the popper element as a wrapper around an inner', 'element that can have any CSS property transitioned for animations.'].join(' '));\n    }\n  }\n\n  var commonStyles = {\n    placement: getBasePlacement(state.placement),\n    popper: state.elements.popper,\n    popperRect: state.rects.popper,\n    gpuAcceleration: gpuAcceleration\n  };\n\n  if (state.modifiersData.popperOffsets != null) {\n    state.styles.popper = Object.assign({}, state.styles.popper, mapToStyles(Object.assign({}, commonStyles, {\n      offsets: state.modifiersData.popperOffsets,\n      position: state.options.strategy,\n      adaptive: adaptive,\n      roundOffsets: roundOffsets\n    })));\n  }\n\n  if (state.modifiersData.arrow != null) {\n    state.styles.arrow = Object.assign({}, state.styles.arrow, mapToStyles(Object.assign({}, commonStyles, {\n      offsets: state.modifiersData.arrow,\n      position: 'absolute',\n      adaptive: false,\n      roundOffsets: roundOffsets\n    })));\n  }\n\n  state.attributes.popper = Object.assign({}, state.attributes.popper, {\n    'data-popper-placement': state.placement\n  });\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n  name: 'computeStyles',\n  enabled: true,\n  phase: 'beforeWrite',\n  fn: computeStyles,\n  data: {}\n};"
  },
  {
    "path": "static/assets/vendor/@popperjs/core/dist/esm/modifiers/eventListeners.js",
    "content": "import getWindow from \"../dom-utils/getWindow.js\"; // eslint-disable-next-line import/no-unused-modules\n\nvar passive = {\n  passive: true\n};\n\nfunction effect(_ref) {\n  var state = _ref.state,\n      instance = _ref.instance,\n      options = _ref.options;\n  var _options$scroll = options.scroll,\n      scroll = _options$scroll === void 0 ? true : _options$scroll,\n      _options$resize = options.resize,\n      resize = _options$resize === void 0 ? true : _options$resize;\n  var window = getWindow(state.elements.popper);\n  var scrollParents = [].concat(state.scrollParents.reference, state.scrollParents.popper);\n\n  if (scroll) {\n    scrollParents.forEach(function (scrollParent) {\n      scrollParent.addEventListener('scroll', instance.update, passive);\n    });\n  }\n\n  if (resize) {\n    window.addEventListener('resize', instance.update, passive);\n  }\n\n  return function () {\n    if (scroll) {\n      scrollParents.forEach(function (scrollParent) {\n        scrollParent.removeEventListener('scroll', instance.update, passive);\n      });\n    }\n\n    if (resize) {\n      window.removeEventListener('resize', instance.update, passive);\n    }\n  };\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n  name: 'eventListeners',\n  enabled: true,\n  phase: 'write',\n  fn: function fn() {},\n  effect: effect,\n  data: {}\n};"
  },
  {
    "path": "static/assets/vendor/@popperjs/core/dist/esm/modifiers/flip.js",
    "content": "import getOppositePlacement from \"../utils/getOppositePlacement.js\";\nimport getBasePlacement from \"../utils/getBasePlacement.js\";\nimport getOppositeVariationPlacement from \"../utils/getOppositeVariationPlacement.js\";\nimport detectOverflow from \"../utils/detectOverflow.js\";\nimport computeAutoPlacement from \"../utils/computeAutoPlacement.js\";\nimport { bottom, top, start, right, left, auto } from \"../enums.js\";\nimport getVariation from \"../utils/getVariation.js\"; // eslint-disable-next-line import/no-unused-modules\n\nfunction getExpandedFallbackPlacements(placement) {\n  if (getBasePlacement(placement) === auto) {\n    return [];\n  }\n\n  var oppositePlacement = getOppositePlacement(placement);\n  return [getOppositeVariationPlacement(placement), oppositePlacement, getOppositeVariationPlacement(oppositePlacement)];\n}\n\nfunction flip(_ref) {\n  var state = _ref.state,\n      options = _ref.options,\n      name = _ref.name;\n\n  if (state.modifiersData[name]._skip) {\n    return;\n  }\n\n  var _options$mainAxis = options.mainAxis,\n      checkMainAxis = _options$mainAxis === void 0 ? true : _options$mainAxis,\n      _options$altAxis = options.altAxis,\n      checkAltAxis = _options$altAxis === void 0 ? true : _options$altAxis,\n      specifiedFallbackPlacements = options.fallbackPlacements,\n      padding = options.padding,\n      boundary = options.boundary,\n      rootBoundary = options.rootBoundary,\n      altBoundary = options.altBoundary,\n      _options$flipVariatio = options.flipVariations,\n      flipVariations = _options$flipVariatio === void 0 ? true : _options$flipVariatio,\n      allowedAutoPlacements = options.allowedAutoPlacements;\n  var preferredPlacement = state.options.placement;\n  var basePlacement = getBasePlacement(preferredPlacement);\n  var isBasePlacement = basePlacement === preferredPlacement;\n  var fallbackPlacements = specifiedFallbackPlacements || (isBasePlacement || !flipVariations ? [getOppositePlacement(preferredPlacement)] : getExpandedFallbackPlacements(preferredPlacement));\n  var placements = [preferredPlacement].concat(fallbackPlacements).reduce(function (acc, placement) {\n    return acc.concat(getBasePlacement(placement) === auto ? computeAutoPlacement(state, {\n      placement: placement,\n      boundary: boundary,\n      rootBoundary: rootBoundary,\n      padding: padding,\n      flipVariations: flipVariations,\n      allowedAutoPlacements: allowedAutoPlacements\n    }) : placement);\n  }, []);\n  var referenceRect = state.rects.reference;\n  var popperRect = state.rects.popper;\n  var checksMap = new Map();\n  var makeFallbackChecks = true;\n  var firstFittingPlacement = placements[0];\n\n  for (var i = 0; i < placements.length; i++) {\n    var placement = placements[i];\n\n    var _basePlacement = getBasePlacement(placement);\n\n    var isStartVariation = getVariation(placement) === start;\n    var isVertical = [top, bottom].indexOf(_basePlacement) >= 0;\n    var len = isVertical ? 'width' : 'height';\n    var overflow = detectOverflow(state, {\n      placement: placement,\n      boundary: boundary,\n      rootBoundary: rootBoundary,\n      altBoundary: altBoundary,\n      padding: padding\n    });\n    var mainVariationSide = isVertical ? isStartVariation ? right : left : isStartVariation ? bottom : top;\n\n    if (referenceRect[len] > popperRect[len]) {\n      mainVariationSide = getOppositePlacement(mainVariationSide);\n    }\n\n    var altVariationSide = getOppositePlacement(mainVariationSide);\n    var checks = [];\n\n    if (checkMainAxis) {\n      checks.push(overflow[_basePlacement] <= 0);\n    }\n\n    if (checkAltAxis) {\n      checks.push(overflow[mainVariationSide] <= 0, overflow[altVariationSide] <= 0);\n    }\n\n    if (checks.every(function (check) {\n      return check;\n    })) {\n      firstFittingPlacement = placement;\n      makeFallbackChecks = false;\n      break;\n    }\n\n    checksMap.set(placement, checks);\n  }\n\n  if (makeFallbackChecks) {\n    // `2` may be desired in some cases – research later\n    var numberOfChecks = flipVariations ? 3 : 1;\n\n    var _loop = function _loop(_i) {\n      var fittingPlacement = placements.find(function (placement) {\n        var checks = checksMap.get(placement);\n\n        if (checks) {\n          return checks.slice(0, _i).every(function (check) {\n            return check;\n          });\n        }\n      });\n\n      if (fittingPlacement) {\n        firstFittingPlacement = fittingPlacement;\n        return \"break\";\n      }\n    };\n\n    for (var _i = numberOfChecks; _i > 0; _i--) {\n      var _ret = _loop(_i);\n\n      if (_ret === \"break\") break;\n    }\n  }\n\n  if (state.placement !== firstFittingPlacement) {\n    state.modifiersData[name]._skip = true;\n    state.placement = firstFittingPlacement;\n    state.reset = true;\n  }\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n  name: 'flip',\n  enabled: true,\n  phase: 'main',\n  fn: flip,\n  requiresIfExists: ['offset'],\n  data: {\n    _skip: false\n  }\n};"
  },
  {
    "path": "static/assets/vendor/@popperjs/core/dist/esm/modifiers/hide.js",
    "content": "import { top, bottom, left, right } from \"../enums.js\";\nimport detectOverflow from \"../utils/detectOverflow.js\";\n\nfunction getSideOffsets(overflow, rect, preventedOffsets) {\n  if (preventedOffsets === void 0) {\n    preventedOffsets = {\n      x: 0,\n      y: 0\n    };\n  }\n\n  return {\n    top: overflow.top - rect.height - preventedOffsets.y,\n    right: overflow.right - rect.width + preventedOffsets.x,\n    bottom: overflow.bottom - rect.height + preventedOffsets.y,\n    left: overflow.left - rect.width - preventedOffsets.x\n  };\n}\n\nfunction isAnySideFullyClipped(overflow) {\n  return [top, right, bottom, left].some(function (side) {\n    return overflow[side] >= 0;\n  });\n}\n\nfunction hide(_ref) {\n  var state = _ref.state,\n      name = _ref.name;\n  var referenceRect = state.rects.reference;\n  var popperRect = state.rects.popper;\n  var preventedOffsets = state.modifiersData.preventOverflow;\n  var referenceOverflow = detectOverflow(state, {\n    elementContext: 'reference'\n  });\n  var popperAltOverflow = detectOverflow(state, {\n    altBoundary: true\n  });\n  var referenceClippingOffsets = getSideOffsets(referenceOverflow, referenceRect);\n  var popperEscapeOffsets = getSideOffsets(popperAltOverflow, popperRect, preventedOffsets);\n  var isReferenceHidden = isAnySideFullyClipped(referenceClippingOffsets);\n  var hasPopperEscaped = isAnySideFullyClipped(popperEscapeOffsets);\n  state.modifiersData[name] = {\n    referenceClippingOffsets: referenceClippingOffsets,\n    popperEscapeOffsets: popperEscapeOffsets,\n    isReferenceHidden: isReferenceHidden,\n    hasPopperEscaped: hasPopperEscaped\n  };\n  state.attributes.popper = Object.assign({}, state.attributes.popper, {\n    'data-popper-reference-hidden': isReferenceHidden,\n    'data-popper-escaped': hasPopperEscaped\n  });\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n  name: 'hide',\n  enabled: true,\n  phase: 'main',\n  requiresIfExists: ['preventOverflow'],\n  fn: hide\n};"
  },
  {
    "path": "static/assets/vendor/@popperjs/core/dist/esm/modifiers/index.js",
    "content": "export { default as applyStyles } from \"./applyStyles.js\";\nexport { default as arrow } from \"./arrow.js\";\nexport { default as computeStyles } from \"./computeStyles.js\";\nexport { default as eventListeners } from \"./eventListeners.js\";\nexport { default as flip } from \"./flip.js\";\nexport { default as hide } from \"./hide.js\";\nexport { default as offset } from \"./offset.js\";\nexport { default as popperOffsets } from \"./popperOffsets.js\";\nexport { default as preventOverflow } from \"./preventOverflow.js\";"
  },
  {
    "path": "static/assets/vendor/@popperjs/core/dist/esm/modifiers/offset.js",
    "content": "import getBasePlacement from \"../utils/getBasePlacement.js\";\nimport { top, left, right, placements } from \"../enums.js\";\nexport function distanceAndSkiddingToXY(placement, rects, offset) {\n  var basePlacement = getBasePlacement(placement);\n  var invertDistance = [left, top].indexOf(basePlacement) >= 0 ? -1 : 1;\n\n  var _ref = typeof offset === 'function' ? offset(Object.assign({}, rects, {\n    placement: placement\n  })) : offset,\n      skidding = _ref[0],\n      distance = _ref[1];\n\n  skidding = skidding || 0;\n  distance = (distance || 0) * invertDistance;\n  return [left, right].indexOf(basePlacement) >= 0 ? {\n    x: distance,\n    y: skidding\n  } : {\n    x: skidding,\n    y: distance\n  };\n}\n\nfunction offset(_ref2) {\n  var state = _ref2.state,\n      options = _ref2.options,\n      name = _ref2.name;\n  var _options$offset = options.offset,\n      offset = _options$offset === void 0 ? [0, 0] : _options$offset;\n  var data = placements.reduce(function (acc, placement) {\n    acc[placement] = distanceAndSkiddingToXY(placement, state.rects, offset);\n    return acc;\n  }, {});\n  var _data$state$placement = data[state.placement],\n      x = _data$state$placement.x,\n      y = _data$state$placement.y;\n\n  if (state.modifiersData.popperOffsets != null) {\n    state.modifiersData.popperOffsets.x += x;\n    state.modifiersData.popperOffsets.y += y;\n  }\n\n  state.modifiersData[name] = data;\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n  name: 'offset',\n  enabled: true,\n  phase: 'main',\n  requires: ['popperOffsets'],\n  fn: offset\n};"
  },
  {
    "path": "static/assets/vendor/@popperjs/core/dist/esm/modifiers/popperOffsets.js",
    "content": "import computeOffsets from \"../utils/computeOffsets.js\";\n\nfunction popperOffsets(_ref) {\n  var state = _ref.state,\n      name = _ref.name;\n  // Offsets are the actual position the popper needs to have to be\n  // properly positioned near its reference element\n  // This is the most basic placement, and will be adjusted by\n  // the modifiers in the next step\n  state.modifiersData[name] = computeOffsets({\n    reference: state.rects.reference,\n    element: state.rects.popper,\n    strategy: 'absolute',\n    placement: state.placement\n  });\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n  name: 'popperOffsets',\n  enabled: true,\n  phase: 'read',\n  fn: popperOffsets,\n  data: {}\n};"
  },
  {
    "path": "static/assets/vendor/@popperjs/core/dist/esm/modifiers/preventOverflow.js",
    "content": "import { top, left, right, bottom, start } from \"../enums.js\";\nimport getBasePlacement from \"../utils/getBasePlacement.js\";\nimport getMainAxisFromPlacement from \"../utils/getMainAxisFromPlacement.js\";\nimport getAltAxis from \"../utils/getAltAxis.js\";\nimport within from \"../utils/within.js\";\nimport getLayoutRect from \"../dom-utils/getLayoutRect.js\";\nimport getOffsetParent from \"../dom-utils/getOffsetParent.js\";\nimport detectOverflow from \"../utils/detectOverflow.js\";\nimport getVariation from \"../utils/getVariation.js\";\nimport getFreshSideObject from \"../utils/getFreshSideObject.js\";\nimport { max as mathMax, min as mathMin } from \"../utils/math.js\";\n\nfunction preventOverflow(_ref) {\n  var state = _ref.state,\n      options = _ref.options,\n      name = _ref.name;\n  var _options$mainAxis = options.mainAxis,\n      checkMainAxis = _options$mainAxis === void 0 ? true : _options$mainAxis,\n      _options$altAxis = options.altAxis,\n      checkAltAxis = _options$altAxis === void 0 ? false : _options$altAxis,\n      boundary = options.boundary,\n      rootBoundary = options.rootBoundary,\n      altBoundary = options.altBoundary,\n      padding = options.padding,\n      _options$tether = options.tether,\n      tether = _options$tether === void 0 ? true : _options$tether,\n      _options$tetherOffset = options.tetherOffset,\n      tetherOffset = _options$tetherOffset === void 0 ? 0 : _options$tetherOffset;\n  var overflow = detectOverflow(state, {\n    boundary: boundary,\n    rootBoundary: rootBoundary,\n    padding: padding,\n    altBoundary: altBoundary\n  });\n  var basePlacement = getBasePlacement(state.placement);\n  var variation = getVariation(state.placement);\n  var isBasePlacement = !variation;\n  var mainAxis = getMainAxisFromPlacement(basePlacement);\n  var altAxis = getAltAxis(mainAxis);\n  var popperOffsets = state.modifiersData.popperOffsets;\n  var referenceRect = state.rects.reference;\n  var popperRect = state.rects.popper;\n  var tetherOffsetValue = typeof tetherOffset === 'function' ? tetherOffset(Object.assign({}, state.rects, {\n    placement: state.placement\n  })) : tetherOffset;\n  var data = {\n    x: 0,\n    y: 0\n  };\n\n  if (!popperOffsets) {\n    return;\n  }\n\n  if (checkMainAxis || checkAltAxis) {\n    var mainSide = mainAxis === 'y' ? top : left;\n    var altSide = mainAxis === 'y' ? bottom : right;\n    var len = mainAxis === 'y' ? 'height' : 'width';\n    var offset = popperOffsets[mainAxis];\n    var min = popperOffsets[mainAxis] + overflow[mainSide];\n    var max = popperOffsets[mainAxis] - overflow[altSide];\n    var additive = tether ? -popperRect[len] / 2 : 0;\n    var minLen = variation === start ? referenceRect[len] : popperRect[len];\n    var maxLen = variation === start ? -popperRect[len] : -referenceRect[len]; // We need to include the arrow in the calculation so the arrow doesn't go\n    // outside the reference bounds\n\n    var arrowElement = state.elements.arrow;\n    var arrowRect = tether && arrowElement ? getLayoutRect(arrowElement) : {\n      width: 0,\n      height: 0\n    };\n    var arrowPaddingObject = state.modifiersData['arrow#persistent'] ? state.modifiersData['arrow#persistent'].padding : getFreshSideObject();\n    var arrowPaddingMin = arrowPaddingObject[mainSide];\n    var arrowPaddingMax = arrowPaddingObject[altSide]; // If the reference length is smaller than the arrow length, we don't want\n    // to include its full size in the calculation. If the reference is small\n    // and near the edge of a boundary, the popper can overflow even if the\n    // reference is not overflowing as well (e.g. virtual elements with no\n    // width or height)\n\n    var arrowLen = within(0, referenceRect[len], arrowRect[len]);\n    var minOffset = isBasePlacement ? referenceRect[len] / 2 - additive - arrowLen - arrowPaddingMin - tetherOffsetValue : minLen - arrowLen - arrowPaddingMin - tetherOffsetValue;\n    var maxOffset = isBasePlacement ? -referenceRect[len] / 2 + additive + arrowLen + arrowPaddingMax + tetherOffsetValue : maxLen + arrowLen + arrowPaddingMax + tetherOffsetValue;\n    var arrowOffsetParent = state.elements.arrow && getOffsetParent(state.elements.arrow);\n    var clientOffset = arrowOffsetParent ? mainAxis === 'y' ? arrowOffsetParent.clientTop || 0 : arrowOffsetParent.clientLeft || 0 : 0;\n    var offsetModifierValue = state.modifiersData.offset ? state.modifiersData.offset[state.placement][mainAxis] : 0;\n    var tetherMin = popperOffsets[mainAxis] + minOffset - offsetModifierValue - clientOffset;\n    var tetherMax = popperOffsets[mainAxis] + maxOffset - offsetModifierValue;\n\n    if (checkMainAxis) {\n      var preventedOffset = within(tether ? mathMin(min, tetherMin) : min, offset, tether ? mathMax(max, tetherMax) : max);\n      popperOffsets[mainAxis] = preventedOffset;\n      data[mainAxis] = preventedOffset - offset;\n    }\n\n    if (checkAltAxis) {\n      var _mainSide = mainAxis === 'x' ? top : left;\n\n      var _altSide = mainAxis === 'x' ? bottom : right;\n\n      var _offset = popperOffsets[altAxis];\n\n      var _min = _offset + overflow[_mainSide];\n\n      var _max = _offset - overflow[_altSide];\n\n      var _preventedOffset = within(tether ? mathMin(_min, tetherMin) : _min, _offset, tether ? mathMax(_max, tetherMax) : _max);\n\n      popperOffsets[altAxis] = _preventedOffset;\n      data[altAxis] = _preventedOffset - _offset;\n    }\n  }\n\n  state.modifiersData[name] = data;\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n  name: 'preventOverflow',\n  enabled: true,\n  phase: 'main',\n  fn: preventOverflow,\n  requiresIfExists: ['offset']\n};"
  },
  {
    "path": "static/assets/vendor/@popperjs/core/dist/esm/popper-base.js",
    "content": "import { createPopper, popperGenerator, detectOverflow } from \"./createPopper.js\";\n// eslint-disable-next-line import/no-unused-modules\nexport { createPopper, popperGenerator, detectOverflow };"
  },
  {
    "path": "static/assets/vendor/@popperjs/core/dist/esm/popper-lite.js",
    "content": "import { popperGenerator, detectOverflow } from \"./createPopper.js\";\nimport eventListeners from \"./modifiers/eventListeners.js\";\nimport popperOffsets from \"./modifiers/popperOffsets.js\";\nimport computeStyles from \"./modifiers/computeStyles.js\";\nimport applyStyles from \"./modifiers/applyStyles.js\";\nvar defaultModifiers = [eventListeners, popperOffsets, computeStyles, applyStyles];\nvar createPopper = /*#__PURE__*/popperGenerator({\n  defaultModifiers: defaultModifiers\n}); // eslint-disable-next-line import/no-unused-modules\n\nexport { createPopper, popperGenerator, defaultModifiers, detectOverflow };"
  },
  {
    "path": "static/assets/vendor/@popperjs/core/dist/esm/popper.js",
    "content": "import { popperGenerator, detectOverflow } from \"./createPopper.js\";\nimport eventListeners from \"./modifiers/eventListeners.js\";\nimport popperOffsets from \"./modifiers/popperOffsets.js\";\nimport computeStyles from \"./modifiers/computeStyles.js\";\nimport applyStyles from \"./modifiers/applyStyles.js\";\nimport offset from \"./modifiers/offset.js\";\nimport flip from \"./modifiers/flip.js\";\nimport preventOverflow from \"./modifiers/preventOverflow.js\";\nimport arrow from \"./modifiers/arrow.js\";\nimport hide from \"./modifiers/hide.js\";\nvar defaultModifiers = [eventListeners, popperOffsets, computeStyles, applyStyles, offset, flip, preventOverflow, arrow, hide];\nvar createPopper = /*#__PURE__*/popperGenerator({\n  defaultModifiers: defaultModifiers\n}); // eslint-disable-next-line import/no-unused-modules\n\nexport { createPopper, popperGenerator, defaultModifiers, detectOverflow }; // eslint-disable-next-line import/no-unused-modules\n\nexport { createPopper as createPopperLite } from \"./popper-lite.js\"; // eslint-disable-next-line import/no-unused-modules\n\nexport * from \"./modifiers/index.js\";"
  },
  {
    "path": "static/assets/vendor/@popperjs/core/dist/esm/types.js",
    "content": ""
  },
  {
    "path": "static/assets/vendor/@popperjs/core/dist/esm/utils/computeAutoPlacement.js",
    "content": "import getVariation from \"./getVariation.js\";\nimport { variationPlacements, basePlacements, placements as allPlacements } from \"../enums.js\";\nimport detectOverflow from \"./detectOverflow.js\";\nimport getBasePlacement from \"./getBasePlacement.js\";\nexport default function computeAutoPlacement(state, options) {\n  if (options === void 0) {\n    options = {};\n  }\n\n  var _options = options,\n      placement = _options.placement,\n      boundary = _options.boundary,\n      rootBoundary = _options.rootBoundary,\n      padding = _options.padding,\n      flipVariations = _options.flipVariations,\n      _options$allowedAutoP = _options.allowedAutoPlacements,\n      allowedAutoPlacements = _options$allowedAutoP === void 0 ? allPlacements : _options$allowedAutoP;\n  var variation = getVariation(placement);\n  var placements = variation ? flipVariations ? variationPlacements : variationPlacements.filter(function (placement) {\n    return getVariation(placement) === variation;\n  }) : basePlacements;\n  var allowedPlacements = placements.filter(function (placement) {\n    return allowedAutoPlacements.indexOf(placement) >= 0;\n  });\n\n  if (allowedPlacements.length === 0) {\n    allowedPlacements = placements;\n\n    if (false) {\n      console.error(['Popper: The `allowedAutoPlacements` option did not allow any', 'placements. Ensure the `placement` option matches the variation', 'of the allowed placements.', 'For example, \"auto\" cannot be used to allow \"bottom-start\".', 'Use \"auto-start\" instead.'].join(' '));\n    }\n  } // $FlowFixMe[incompatible-type]: Flow seems to have problems with two array unions...\n\n\n  var overflows = allowedPlacements.reduce(function (acc, placement) {\n    acc[placement] = detectOverflow(state, {\n      placement: placement,\n      boundary: boundary,\n      rootBoundary: rootBoundary,\n      padding: padding\n    })[getBasePlacement(placement)];\n    return acc;\n  }, {});\n  return Object.keys(overflows).sort(function (a, b) {\n    return overflows[a] - overflows[b];\n  });\n}"
  },
  {
    "path": "static/assets/vendor/@popperjs/core/dist/esm/utils/computeOffsets.js",
    "content": "import getBasePlacement from \"./getBasePlacement.js\";\nimport getVariation from \"./getVariation.js\";\nimport getMainAxisFromPlacement from \"./getMainAxisFromPlacement.js\";\nimport { top, right, bottom, left, start, end } from \"../enums.js\";\nexport default function computeOffsets(_ref) {\n  var reference = _ref.reference,\n      element = _ref.element,\n      placement = _ref.placement;\n  var basePlacement = placement ? getBasePlacement(placement) : null;\n  var variation = placement ? getVariation(placement) : null;\n  var commonX = reference.x + reference.width / 2 - element.width / 2;\n  var commonY = reference.y + reference.height / 2 - element.height / 2;\n  var offsets;\n\n  switch (basePlacement) {\n    case top:\n      offsets = {\n        x: commonX,\n        y: reference.y - element.height\n      };\n      break;\n\n    case bottom:\n      offsets = {\n        x: commonX,\n        y: reference.y + reference.height\n      };\n      break;\n\n    case right:\n      offsets = {\n        x: reference.x + reference.width,\n        y: commonY\n      };\n      break;\n\n    case left:\n      offsets = {\n        x: reference.x - element.width,\n        y: commonY\n      };\n      break;\n\n    default:\n      offsets = {\n        x: reference.x,\n        y: reference.y\n      };\n  }\n\n  var mainAxis = basePlacement ? getMainAxisFromPlacement(basePlacement) : null;\n\n  if (mainAxis != null) {\n    var len = mainAxis === 'y' ? 'height' : 'width';\n\n    switch (variation) {\n      case start:\n        offsets[mainAxis] = offsets[mainAxis] - (reference[len] / 2 - element[len] / 2);\n        break;\n\n      case end:\n        offsets[mainAxis] = offsets[mainAxis] + (reference[len] / 2 - element[len] / 2);\n        break;\n\n      default:\n    }\n  }\n\n  return offsets;\n}"
  },
  {
    "path": "static/assets/vendor/@popperjs/core/dist/esm/utils/debounce.js",
    "content": "export default function debounce(fn) {\n  var pending;\n  return function () {\n    if (!pending) {\n      pending = new Promise(function (resolve) {\n        Promise.resolve().then(function () {\n          pending = undefined;\n          resolve(fn());\n        });\n      });\n    }\n\n    return pending;\n  };\n}"
  },
  {
    "path": "static/assets/vendor/@popperjs/core/dist/esm/utils/detectOverflow.js",
    "content": "import getBoundingClientRect from \"../dom-utils/getBoundingClientRect.js\";\nimport getClippingRect from \"../dom-utils/getClippingRect.js\";\nimport getDocumentElement from \"../dom-utils/getDocumentElement.js\";\nimport computeOffsets from \"./computeOffsets.js\";\nimport rectToClientRect from \"./rectToClientRect.js\";\nimport { clippingParents, reference, popper, bottom, top, right, basePlacements, viewport } from \"../enums.js\";\nimport { isElement } from \"../dom-utils/instanceOf.js\";\nimport mergePaddingObject from \"./mergePaddingObject.js\";\nimport expandToHashMap from \"./expandToHashMap.js\"; // eslint-disable-next-line import/no-unused-modules\n\nexport default function detectOverflow(state, options) {\n  if (options === void 0) {\n    options = {};\n  }\n\n  var _options = options,\n      _options$placement = _options.placement,\n      placement = _options$placement === void 0 ? state.placement : _options$placement,\n      _options$boundary = _options.boundary,\n      boundary = _options$boundary === void 0 ? clippingParents : _options$boundary,\n      _options$rootBoundary = _options.rootBoundary,\n      rootBoundary = _options$rootBoundary === void 0 ? viewport : _options$rootBoundary,\n      _options$elementConte = _options.elementContext,\n      elementContext = _options$elementConte === void 0 ? popper : _options$elementConte,\n      _options$altBoundary = _options.altBoundary,\n      altBoundary = _options$altBoundary === void 0 ? false : _options$altBoundary,\n      _options$padding = _options.padding,\n      padding = _options$padding === void 0 ? 0 : _options$padding;\n  var paddingObject = mergePaddingObject(typeof padding !== 'number' ? padding : expandToHashMap(padding, basePlacements));\n  var altContext = elementContext === popper ? reference : popper;\n  var referenceElement = state.elements.reference;\n  var popperRect = state.rects.popper;\n  var element = state.elements[altBoundary ? altContext : elementContext];\n  var clippingClientRect = getClippingRect(isElement(element) ? element : element.contextElement || getDocumentElement(state.elements.popper), boundary, rootBoundary);\n  var referenceClientRect = getBoundingClientRect(referenceElement);\n  var popperOffsets = computeOffsets({\n    reference: referenceClientRect,\n    element: popperRect,\n    strategy: 'absolute',\n    placement: placement\n  });\n  var popperClientRect = rectToClientRect(Object.assign({}, popperRect, popperOffsets));\n  var elementClientRect = elementContext === popper ? popperClientRect : referenceClientRect; // positive = overflowing the clipping rect\n  // 0 or negative = within the clipping rect\n\n  var overflowOffsets = {\n    top: clippingClientRect.top - elementClientRect.top + paddingObject.top,\n    bottom: elementClientRect.bottom - clippingClientRect.bottom + paddingObject.bottom,\n    left: clippingClientRect.left - elementClientRect.left + paddingObject.left,\n    right: elementClientRect.right - clippingClientRect.right + paddingObject.right\n  };\n  var offsetData = state.modifiersData.offset; // Offsets can be applied only to the popper element\n\n  if (elementContext === popper && offsetData) {\n    var offset = offsetData[placement];\n    Object.keys(overflowOffsets).forEach(function (key) {\n      var multiply = [right, bottom].indexOf(key) >= 0 ? 1 : -1;\n      var axis = [top, bottom].indexOf(key) >= 0 ? 'y' : 'x';\n      overflowOffsets[key] += offset[axis] * multiply;\n    });\n  }\n\n  return overflowOffsets;\n}"
  },
  {
    "path": "static/assets/vendor/@popperjs/core/dist/esm/utils/expandToHashMap.js",
    "content": "export default function expandToHashMap(value, keys) {\n  return keys.reduce(function (hashMap, key) {\n    hashMap[key] = value;\n    return hashMap;\n  }, {});\n}"
  },
  {
    "path": "static/assets/vendor/@popperjs/core/dist/esm/utils/format.js",
    "content": "export default function format(str) {\n  for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n    args[_key - 1] = arguments[_key];\n  }\n\n  return [].concat(args).reduce(function (p, c) {\n    return p.replace(/%s/, c);\n  }, str);\n}"
  },
  {
    "path": "static/assets/vendor/@popperjs/core/dist/esm/utils/getAltAxis.js",
    "content": "export default function getAltAxis(axis) {\n  return axis === 'x' ? 'y' : 'x';\n}"
  },
  {
    "path": "static/assets/vendor/@popperjs/core/dist/esm/utils/getAltLen.js",
    "content": "export default function getAltLen(len) {\n  return len === 'width' ? 'height' : 'width';\n}"
  },
  {
    "path": "static/assets/vendor/@popperjs/core/dist/esm/utils/getBasePlacement.js",
    "content": "import { auto } from \"../enums.js\";\nexport default function getBasePlacement(placement) {\n  return placement.split('-')[0];\n}"
  },
  {
    "path": "static/assets/vendor/@popperjs/core/dist/esm/utils/getFreshSideObject.js",
    "content": "export default function getFreshSideObject() {\n  return {\n    top: 0,\n    right: 0,\n    bottom: 0,\n    left: 0\n  };\n}"
  },
  {
    "path": "static/assets/vendor/@popperjs/core/dist/esm/utils/getMainAxisFromPlacement.js",
    "content": "export default function getMainAxisFromPlacement(placement) {\n  return ['top', 'bottom'].indexOf(placement) >= 0 ? 'x' : 'y';\n}"
  },
  {
    "path": "static/assets/vendor/@popperjs/core/dist/esm/utils/getOppositePlacement.js",
    "content": "var hash = {\n  left: 'right',\n  right: 'left',\n  bottom: 'top',\n  top: 'bottom'\n};\nexport default function getOppositePlacement(placement) {\n  return placement.replace(/left|right|bottom|top/g, function (matched) {\n    return hash[matched];\n  });\n}"
  },
  {
    "path": "static/assets/vendor/@popperjs/core/dist/esm/utils/getOppositeVariationPlacement.js",
    "content": "var hash = {\n  start: 'end',\n  end: 'start'\n};\nexport default function getOppositeVariationPlacement(placement) {\n  return placement.replace(/start|end/g, function (matched) {\n    return hash[matched];\n  });\n}"
  },
  {
    "path": "static/assets/vendor/@popperjs/core/dist/esm/utils/getVariation.js",
    "content": "export default function getVariation(placement) {\n  return placement.split('-')[1];\n}"
  },
  {
    "path": "static/assets/vendor/@popperjs/core/dist/esm/utils/math.js",
    "content": "export var max = Math.max;\nexport var min = Math.min;\nexport var round = Math.round;"
  },
  {
    "path": "static/assets/vendor/@popperjs/core/dist/esm/utils/mergeByName.js",
    "content": "export default function mergeByName(modifiers) {\n  var merged = modifiers.reduce(function (merged, current) {\n    var existing = merged[current.name];\n    merged[current.name] = existing ? Object.assign({}, existing, current, {\n      options: Object.assign({}, existing.options, current.options),\n      data: Object.assign({}, existing.data, current.data)\n    }) : current;\n    return merged;\n  }, {}); // IE11 does not support Object.values\n\n  return Object.keys(merged).map(function (key) {\n    return merged[key];\n  });\n}"
  },
  {
    "path": "static/assets/vendor/@popperjs/core/dist/esm/utils/mergePaddingObject.js",
    "content": "import getFreshSideObject from \"./getFreshSideObject.js\";\nexport default function mergePaddingObject(paddingObject) {\n  return Object.assign({}, getFreshSideObject(), paddingObject);\n}"
  },
  {
    "path": "static/assets/vendor/@popperjs/core/dist/esm/utils/orderModifiers.js",
    "content": "import { modifierPhases } from \"../enums.js\"; // source: https://stackoverflow.com/questions/49875255\n\nfunction order(modifiers) {\n  var map = new Map();\n  var visited = new Set();\n  var result = [];\n  modifiers.forEach(function (modifier) {\n    map.set(modifier.name, modifier);\n  }); // On visiting object, check for its dependencies and visit them recursively\n\n  function sort(modifier) {\n    visited.add(modifier.name);\n    var requires = [].concat(modifier.requires || [], modifier.requiresIfExists || []);\n    requires.forEach(function (dep) {\n      if (!visited.has(dep)) {\n        var depModifier = map.get(dep);\n\n        if (depModifier) {\n          sort(depModifier);\n        }\n      }\n    });\n    result.push(modifier);\n  }\n\n  modifiers.forEach(function (modifier) {\n    if (!visited.has(modifier.name)) {\n      // check for visited object\n      sort(modifier);\n    }\n  });\n  return result;\n}\n\nexport default function orderModifiers(modifiers) {\n  // order based on dependencies\n  var orderedModifiers = order(modifiers); // order based on phase\n\n  return modifierPhases.reduce(function (acc, phase) {\n    return acc.concat(orderedModifiers.filter(function (modifier) {\n      return modifier.phase === phase;\n    }));\n  }, []);\n}"
  },
  {
    "path": "static/assets/vendor/@popperjs/core/dist/esm/utils/rectToClientRect.js",
    "content": "export default function rectToClientRect(rect) {\n  return Object.assign({}, rect, {\n    left: rect.x,\n    top: rect.y,\n    right: rect.x + rect.width,\n    bottom: rect.y + rect.height\n  });\n}"
  },
  {
    "path": "static/assets/vendor/@popperjs/core/dist/esm/utils/uniqueBy.js",
    "content": "export default function uniqueBy(arr, fn) {\n  var identifiers = new Set();\n  return arr.filter(function (item) {\n    var identifier = fn(item);\n\n    if (!identifiers.has(identifier)) {\n      identifiers.add(identifier);\n      return true;\n    }\n  });\n}"
  },
  {
    "path": "static/assets/vendor/@popperjs/core/dist/esm/utils/validateModifiers.js",
    "content": "import format from \"./format.js\";\nimport { modifierPhases } from \"../enums.js\";\nvar INVALID_MODIFIER_ERROR = 'Popper: modifier \"%s\" provided an invalid %s property, expected %s but got %s';\nvar MISSING_DEPENDENCY_ERROR = 'Popper: modifier \"%s\" requires \"%s\", but \"%s\" modifier is not available';\nvar VALID_PROPERTIES = ['name', 'enabled', 'phase', 'fn', 'effect', 'requires', 'options'];\nexport default function validateModifiers(modifiers) {\n  modifiers.forEach(function (modifier) {\n    Object.keys(modifier).forEach(function (key) {\n      switch (key) {\n        case 'name':\n          if (typeof modifier.name !== 'string') {\n            console.error(format(INVALID_MODIFIER_ERROR, String(modifier.name), '\"name\"', '\"string\"', \"\\\"\" + String(modifier.name) + \"\\\"\"));\n          }\n\n          break;\n\n        case 'enabled':\n          if (typeof modifier.enabled !== 'boolean') {\n            console.error(format(INVALID_MODIFIER_ERROR, modifier.name, '\"enabled\"', '\"boolean\"', \"\\\"\" + String(modifier.enabled) + \"\\\"\"));\n          }\n\n        case 'phase':\n          if (modifierPhases.indexOf(modifier.phase) < 0) {\n            console.error(format(INVALID_MODIFIER_ERROR, modifier.name, '\"phase\"', \"either \" + modifierPhases.join(', '), \"\\\"\" + String(modifier.phase) + \"\\\"\"));\n          }\n\n          break;\n\n        case 'fn':\n          if (typeof modifier.fn !== 'function') {\n            console.error(format(INVALID_MODIFIER_ERROR, modifier.name, '\"fn\"', '\"function\"', \"\\\"\" + String(modifier.fn) + \"\\\"\"));\n          }\n\n          break;\n\n        case 'effect':\n          if (typeof modifier.effect !== 'function') {\n            console.error(format(INVALID_MODIFIER_ERROR, modifier.name, '\"effect\"', '\"function\"', \"\\\"\" + String(modifier.fn) + \"\\\"\"));\n          }\n\n          break;\n\n        case 'requires':\n          if (!Array.isArray(modifier.requires)) {\n            console.error(format(INVALID_MODIFIER_ERROR, modifier.name, '\"requires\"', '\"array\"', \"\\\"\" + String(modifier.requires) + \"\\\"\"));\n          }\n\n          break;\n\n        case 'requiresIfExists':\n          if (!Array.isArray(modifier.requiresIfExists)) {\n            console.error(format(INVALID_MODIFIER_ERROR, modifier.name, '\"requiresIfExists\"', '\"array\"', \"\\\"\" + String(modifier.requiresIfExists) + \"\\\"\"));\n          }\n\n          break;\n\n        case 'options':\n        case 'data':\n          break;\n\n        default:\n          console.error(\"PopperJS: an invalid property has been provided to the \\\"\" + modifier.name + \"\\\" modifier, valid properties are \" + VALID_PROPERTIES.map(function (s) {\n            return \"\\\"\" + s + \"\\\"\";\n          }).join(', ') + \"; but \\\"\" + key + \"\\\" was provided.\");\n      }\n\n      modifier.requires && modifier.requires.forEach(function (requirement) {\n        if (modifiers.find(function (mod) {\n          return mod.name === requirement;\n        }) == null) {\n          console.error(format(MISSING_DEPENDENCY_ERROR, String(modifier.name), requirement, requirement));\n        }\n      });\n    });\n  });\n}"
  },
  {
    "path": "static/assets/vendor/@popperjs/core/dist/esm/utils/within.js",
    "content": "import { max as mathMax, min as mathMin } from \"./math.js\";\nexport default function within(min, value, max) {\n  return mathMax(min, mathMin(value, max));\n}"
  },
  {
    "path": "static/assets/vendor/@popperjs/core/dist/umd/popper-base.min.js.flow",
    "content": "// @flow\n\nexport * from '../../lib/popper-base.js'\n"
  },
  {
    "path": "static/assets/vendor/@popperjs/core/dist/umd/popper-lite.min.js.flow",
    "content": "// @flow\n\nexport * from '../../lib/popper-lite.js'\n"
  },
  {
    "path": "static/assets/vendor/@popperjs/core/dist/umd/popper.min.js.flow",
    "content": "// @flow\n\nexport * from '../../lib/popper.js'\n"
  },
  {
    "path": "static/assets/vendor/chartist-plugin-tooltips/dist/chartist-plugin-tooltip.css",
    "content": ".chartist-tooltip {\n  position: absolute;\n  display: inline-block;\n  opacity: 0;\n  min-width: 5em;\n  padding: .5em;\n  background: #F4C63D;\n  color: #453D3F;\n  font-family: Oxygen,Helvetica,Arial,sans-serif;\n  font-weight: 700;\n  text-align: center;\n  pointer-events: none;\n  z-index: 1;\n  -webkit-transition: opacity .2s linear;\n  -moz-transition: opacity .2s linear;\n  -o-transition: opacity .2s linear;\n  transition: opacity .2s linear; }\n  .chartist-tooltip:before {\n    content: \"\";\n    position: absolute;\n    top: 100%;\n    left: 50%;\n    width: 0;\n    height: 0;\n    margin-left: -15px;\n    border: 15px solid transparent;\n    border-top-color: #F4C63D; }\n  .chartist-tooltip.tooltip-show {\n    opacity: 1; }\n\n.ct-area, .ct-line {\n  pointer-events: none; }\n\n/*# sourceMappingURL=chartist-plugin-tooltip.css.map */\n"
  },
  {
    "path": "static/assets/vendor/notyf/notyf.es.js",
    "content": "/*! *****************************************************************************\nCopyright (c) Microsoft Corporation.\n\nPermission to use, copy, modify, and/or distribute this software for any\npurpose with or without fee is hereby granted.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\nPERFORMANCE OF THIS SOFTWARE.\n***************************************************************************** */\n\nvar __assign = function() {\n    __assign = Object.assign || function __assign(t) {\n        for (var s, i = 1, n = arguments.length; i < n; i++) {\n            s = arguments[i];\n            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\n        }\n        return t;\n    };\n    return __assign.apply(this, arguments);\n};\n\nvar NotyfNotification = /** @class */ (function () {\n    function NotyfNotification(options) {\n        this.options = options;\n        this.listeners = {};\n    }\n    NotyfNotification.prototype.on = function (eventType, cb) {\n        var callbacks = this.listeners[eventType] || [];\n        this.listeners[eventType] = callbacks.concat([cb]);\n    };\n    NotyfNotification.prototype.triggerEvent = function (eventType, event) {\n        var _this = this;\n        var callbacks = this.listeners[eventType] || [];\n        callbacks.forEach(function (cb) { return cb({ target: _this, event: event }); });\n    };\n    return NotyfNotification;\n}());\nvar NotyfArrayEvent;\n(function (NotyfArrayEvent) {\n    NotyfArrayEvent[NotyfArrayEvent[\"Add\"] = 0] = \"Add\";\n    NotyfArrayEvent[NotyfArrayEvent[\"Remove\"] = 1] = \"Remove\";\n})(NotyfArrayEvent || (NotyfArrayEvent = {}));\nvar NotyfArray = /** @class */ (function () {\n    function NotyfArray() {\n        this.notifications = [];\n    }\n    NotyfArray.prototype.push = function (elem) {\n        this.notifications.push(elem);\n        this.updateFn(elem, NotyfArrayEvent.Add, this.notifications);\n    };\n    NotyfArray.prototype.splice = function (index, num) {\n        var elem = this.notifications.splice(index, num)[0];\n        this.updateFn(elem, NotyfArrayEvent.Remove, this.notifications);\n        return elem;\n    };\n    NotyfArray.prototype.indexOf = function (elem) {\n        return this.notifications.indexOf(elem);\n    };\n    NotyfArray.prototype.onUpdate = function (fn) {\n        this.updateFn = fn;\n    };\n    return NotyfArray;\n}());\n\nvar NotyfEvent;\n(function (NotyfEvent) {\n    NotyfEvent[\"Dismiss\"] = \"dismiss\";\n    NotyfEvent[\"Click\"] = \"click\";\n})(NotyfEvent || (NotyfEvent = {}));\nvar DEFAULT_OPTIONS = {\n    types: [\n        {\n            type: 'success',\n            className: 'notyf__toast--success',\n            backgroundColor: '#3dc763',\n            icon: {\n                className: 'notyf__icon--success',\n                tagName: 'i',\n            },\n        },\n        {\n            type: 'error',\n            className: 'notyf__toast--error',\n            backgroundColor: '#ed3d3d',\n            icon: {\n                className: 'notyf__icon--error',\n                tagName: 'i',\n            },\n        },\n    ],\n    duration: 2000,\n    ripple: true,\n    position: {\n        x: 'right',\n        y: 'bottom',\n    },\n    dismissible: false,\n};\n\nvar NotyfView = /** @class */ (function () {\n    function NotyfView() {\n        this.notifications = [];\n        this.events = {};\n        this.X_POSITION_FLEX_MAP = {\n            left: 'flex-start',\n            center: 'center',\n            right: 'flex-end',\n        };\n        this.Y_POSITION_FLEX_MAP = {\n            top: 'flex-start',\n            center: 'center',\n            bottom: 'flex-end',\n        };\n        // Creates the main notifications container\n        var docFrag = document.createDocumentFragment();\n        var notyfContainer = this._createHTMLElement({ tagName: 'div', className: 'notyf' });\n        docFrag.appendChild(notyfContainer);\n        document.body.appendChild(docFrag);\n        this.container = notyfContainer;\n        // Identifies the main animation end event\n        this.animationEndEventName = this._getAnimationEndEventName();\n        this._createA11yContainer();\n    }\n    NotyfView.prototype.on = function (event, cb) {\n        var _a;\n        this.events = __assign(__assign({}, this.events), (_a = {}, _a[event] = cb, _a));\n    };\n    NotyfView.prototype.update = function (notification, type) {\n        if (type === NotyfArrayEvent.Add) {\n            this.addNotification(notification);\n        }\n        else if (type === NotyfArrayEvent.Remove) {\n            this.removeNotification(notification);\n        }\n    };\n    NotyfView.prototype.removeNotification = function (notification) {\n        var _this = this;\n        var renderedNotification = this._popRenderedNotification(notification);\n        var node;\n        if (!renderedNotification) {\n            return;\n        }\n        node = renderedNotification.node;\n        node.classList.add('notyf__toast--disappear');\n        var handleEvent;\n        node.addEventListener(this.animationEndEventName, (handleEvent = function (event) {\n            if (event.target === node) {\n                node.removeEventListener(_this.animationEndEventName, handleEvent);\n                _this.container.removeChild(node);\n            }\n        }));\n    };\n    NotyfView.prototype.addNotification = function (notification) {\n        var node = this._renderNotification(notification);\n        this.notifications.push({ notification: notification, node: node });\n        // For a11y purposes, we still want to announce that there's a notification in the screen\n        // even if it comes with no message.\n        this._announce(notification.options.message || 'Notification');\n    };\n    NotyfView.prototype._renderNotification = function (notification) {\n        var _a;\n        var card = this._buildNotificationCard(notification);\n        var className = notification.options.className;\n        if (className) {\n            (_a = card.classList).add.apply(_a, className.split(' '));\n        }\n        this.container.appendChild(card);\n        return card;\n    };\n    NotyfView.prototype._popRenderedNotification = function (notification) {\n        var idx = -1;\n        for (var i = 0; i < this.notifications.length && idx < 0; i++) {\n            if (this.notifications[i].notification === notification) {\n                idx = i;\n            }\n        }\n        if (idx !== -1) {\n            return this.notifications.splice(idx, 1)[0];\n        }\n        return;\n    };\n    NotyfView.prototype.getXPosition = function (options) {\n        var _a;\n        return ((_a = options === null || options === void 0 ? void 0 : options.position) === null || _a === void 0 ? void 0 : _a.x) || 'right';\n    };\n    NotyfView.prototype.getYPosition = function (options) {\n        var _a;\n        return ((_a = options === null || options === void 0 ? void 0 : options.position) === null || _a === void 0 ? void 0 : _a.y) || 'bottom';\n    };\n    NotyfView.prototype.adjustContainerAlignment = function (options) {\n        var align = this.X_POSITION_FLEX_MAP[this.getXPosition(options)];\n        var justify = this.Y_POSITION_FLEX_MAP[this.getYPosition(options)];\n        var style = this.container.style;\n        style.setProperty('justify-content', justify);\n        style.setProperty('align-items', align);\n    };\n    NotyfView.prototype._buildNotificationCard = function (notification) {\n        var _this = this;\n        var options = notification.options;\n        var iconOpts = options.icon;\n        // Adjust container according to position (e.g. top-left, bottom-center, etc)\n        this.adjustContainerAlignment(options);\n        // Create elements\n        var notificationElem = this._createHTMLElement({ tagName: 'div', className: 'notyf__toast' });\n        var ripple = this._createHTMLElement({ tagName: 'div', className: 'notyf__ripple' });\n        var wrapper = this._createHTMLElement({ tagName: 'div', className: 'notyf__wrapper' });\n        var message = this._createHTMLElement({ tagName: 'div', className: 'notyf__message' });\n        message.innerHTML = options.message || '';\n        var mainColor = options.background || options.backgroundColor;\n        // Build the icon and append it to the card\n        if (iconOpts) {\n            var iconContainer = this._createHTMLElement({ tagName: 'div', className: 'notyf__icon' });\n            if (typeof iconOpts === 'string' || iconOpts instanceof String)\n                iconContainer.innerHTML = new String(iconOpts).valueOf();\n            if (typeof iconOpts === 'object') {\n                var _a = iconOpts.tagName, tagName = _a === void 0 ? 'i' : _a, className_1 = iconOpts.className, text = iconOpts.text, _b = iconOpts.color, color = _b === void 0 ? mainColor : _b;\n                var iconElement = this._createHTMLElement({ tagName: tagName, className: className_1, text: text });\n                if (color)\n                    iconElement.style.color = color;\n                iconContainer.appendChild(iconElement);\n            }\n            wrapper.appendChild(iconContainer);\n        }\n        wrapper.appendChild(message);\n        notificationElem.appendChild(wrapper);\n        // Add ripple if applicable, else just paint the full toast\n        if (mainColor) {\n            if (options.ripple) {\n                ripple.style.background = mainColor;\n                notificationElem.appendChild(ripple);\n            }\n            else {\n                notificationElem.style.background = mainColor;\n            }\n        }\n        // Add dismiss button\n        if (options.dismissible) {\n            var dismissWrapper = this._createHTMLElement({ tagName: 'div', className: 'notyf__dismiss' });\n            var dismissButton = this._createHTMLElement({\n                tagName: 'button',\n                className: 'notyf__dismiss-btn',\n            });\n            dismissWrapper.appendChild(dismissButton);\n            wrapper.appendChild(dismissWrapper);\n            notificationElem.classList.add(\"notyf__toast--dismissible\");\n            dismissButton.addEventListener('click', function (event) {\n                var _a, _b;\n                (_b = (_a = _this.events)[NotyfEvent.Dismiss]) === null || _b === void 0 ? void 0 : _b.call(_a, { target: notification, event: event });\n                event.stopPropagation();\n            });\n        }\n        notificationElem.addEventListener('click', function (event) { var _a, _b; return (_b = (_a = _this.events)[NotyfEvent.Click]) === null || _b === void 0 ? void 0 : _b.call(_a, { target: notification, event: event }); });\n        // Adjust margins depending on whether its an upper or lower notification\n        var className = this.getYPosition(options) === 'top' ? 'upper' : 'lower';\n        notificationElem.classList.add(\"notyf__toast--\" + className);\n        return notificationElem;\n    };\n    NotyfView.prototype._createHTMLElement = function (_a) {\n        var tagName = _a.tagName, className = _a.className, text = _a.text;\n        var elem = document.createElement(tagName);\n        if (className) {\n            elem.className = className;\n        }\n        elem.textContent = text || null;\n        return elem;\n    };\n    /**\n     * Creates an invisible container which will announce the notyfs to\n     * screen readers\n     */\n    NotyfView.prototype._createA11yContainer = function () {\n        var a11yContainer = this._createHTMLElement({ tagName: 'div', className: 'notyf-announcer' });\n        a11yContainer.setAttribute('aria-atomic', 'true');\n        a11yContainer.setAttribute('aria-live', 'polite');\n        // Set the a11y container to be visible hidden. Can't use display: none as\n        // screen readers won't read it.\n        a11yContainer.style.border = '0';\n        a11yContainer.style.clip = 'rect(0 0 0 0)';\n        a11yContainer.style.height = '1px';\n        a11yContainer.style.margin = '-1px';\n        a11yContainer.style.overflow = 'hidden';\n        a11yContainer.style.padding = '0';\n        a11yContainer.style.position = 'absolute';\n        a11yContainer.style.width = '1px';\n        a11yContainer.style.outline = '0';\n        document.body.appendChild(a11yContainer);\n        this.a11yContainer = a11yContainer;\n    };\n    /**\n     * Announces a message to screenreaders.\n     */\n    NotyfView.prototype._announce = function (message) {\n        var _this = this;\n        this.a11yContainer.textContent = '';\n        // This 100ms timeout is necessary for some browser + screen-reader combinations:\n        // - Both JAWS and NVDA over IE11 will not announce anything without a non-zero timeout.\n        // - With Chrome and IE11 with NVDA or JAWS, a repeated (identical) message won't be read a\n        //   second time without clearing and then using a non-zero delay.\n        // (using JAWS 17 at time of this writing).\n        // https://github.com/angular/material2/blob/master/src/cdk/a11y/live-announcer/live-announcer.ts\n        setTimeout(function () {\n            _this.a11yContainer.textContent = message;\n        }, 100);\n    };\n    /**\n     * Determine which animationend event is supported\n     */\n    NotyfView.prototype._getAnimationEndEventName = function () {\n        var el = document.createElement('_fake');\n        var transitions = {\n            MozTransition: 'animationend',\n            OTransition: 'oAnimationEnd',\n            WebkitTransition: 'webkitAnimationEnd',\n            transition: 'animationend',\n        };\n        var t;\n        for (t in transitions) {\n            if (el.style[t] !== undefined) {\n                return transitions[t];\n            }\n        }\n        // No supported animation end event. Using \"animationend\" as a fallback\n        return 'animationend';\n    };\n    return NotyfView;\n}());\n\n/**\n * Main controller class. Defines the main Notyf API.\n */\nvar Notyf = /** @class */ (function () {\n    function Notyf(opts) {\n        var _this = this;\n        this.dismiss = this._removeNotification;\n        this.notifications = new NotyfArray();\n        this.view = new NotyfView();\n        var types = this.registerTypes(opts);\n        this.options = __assign(__assign({}, DEFAULT_OPTIONS), opts);\n        this.options.types = types;\n        this.notifications.onUpdate(function (elem, type) { return _this.view.update(elem, type); });\n        this.view.on(NotyfEvent.Dismiss, function (_a) {\n            var target = _a.target, event = _a.event;\n            _this._removeNotification(target);\n            // tslint:disable-next-line: no-string-literal\n            target['triggerEvent'](NotyfEvent.Dismiss, event);\n        });\n        // tslint:disable-next-line: no-string-literal\n        this.view.on(NotyfEvent.Click, function (_a) {\n            var target = _a.target, event = _a.event;\n            return target['triggerEvent'](NotyfEvent.Click, event);\n        });\n    }\n    Notyf.prototype.error = function (payload) {\n        var options = this.normalizeOptions('error', payload);\n        return this.open(options);\n    };\n    Notyf.prototype.success = function (payload) {\n        var options = this.normalizeOptions('success', payload);\n        return this.open(options);\n    };\n    Notyf.prototype.open = function (options) {\n        var defaultOpts = this.options.types.find(function (_a) {\n            var type = _a.type;\n            return type === options.type;\n        }) || {};\n        var config = __assign(__assign({}, defaultOpts), options);\n        this.assignProps(['ripple', 'position', 'dismissible'], config);\n        var notification = new NotyfNotification(config);\n        this._pushNotification(notification);\n        return notification;\n    };\n    Notyf.prototype.dismissAll = function () {\n        while (this.notifications.splice(0, 1))\n            ;\n    };\n    /**\n     * Assigns properties to a config object based on two rules:\n     * 1. If the config object already sets that prop, leave it as so\n     * 2. Otherwise, use the default prop from the global options\n     *\n     * It's intended to build the final config object to open a notification. e.g. if\n     * 'dismissible' is not set, then use the value from the global config.\n     *\n     * @param props - properties to be assigned to the config object\n     * @param config - object whose properties need to be set\n     */\n    Notyf.prototype.assignProps = function (props, config) {\n        var _this = this;\n        props.forEach(function (prop) {\n            // intentional double equality to check for both null and undefined\n            config[prop] = config[prop] == null ? _this.options[prop] : config[prop];\n        });\n    };\n    Notyf.prototype._pushNotification = function (notification) {\n        var _this = this;\n        this.notifications.push(notification);\n        var duration = notification.options.duration !== undefined ? notification.options.duration : this.options.duration;\n        if (duration) {\n            setTimeout(function () { return _this._removeNotification(notification); }, duration);\n        }\n    };\n    Notyf.prototype._removeNotification = function (notification) {\n        var index = this.notifications.indexOf(notification);\n        if (index !== -1) {\n            this.notifications.splice(index, 1);\n        }\n    };\n    Notyf.prototype.normalizeOptions = function (type, payload) {\n        var options = { type: type };\n        if (typeof payload === 'string') {\n            options.message = payload;\n        }\n        else if (typeof payload === 'object') {\n            options = __assign(__assign({}, options), payload);\n        }\n        return options;\n    };\n    Notyf.prototype.registerTypes = function (opts) {\n        var incomingTypes = ((opts && opts.types) || []).slice();\n        var finalDefaultTypes = DEFAULT_OPTIONS.types.map(function (defaultType) {\n            // find if there's a default type within the user input's types, if so, it means the user\n            // wants to change some of the default settings\n            var userTypeIdx = -1;\n            incomingTypes.forEach(function (t, idx) {\n                if (t.type === defaultType.type)\n                    userTypeIdx = idx;\n            });\n            var userType = userTypeIdx !== -1 ? incomingTypes.splice(userTypeIdx, 1)[0] : {};\n            return __assign(__assign({}, defaultType), userType);\n        });\n        return finalDefaultTypes.concat(incomingTypes);\n    };\n    return Notyf;\n}());\n\nexport { DEFAULT_OPTIONS, Notyf, NotyfArray, NotyfArrayEvent, NotyfEvent, NotyfNotification, NotyfView };\n"
  },
  {
    "path": "static/assets/vendor/notyf/notyf.umd.js",
    "content": "(function (global, factory) {\n    typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :\n    typeof define === 'function' && define.amd ? define(factory) :\n    (global = global || self, global.Notyf = factory());\n}(this, (function () { 'use strict';\n\n    /*! *****************************************************************************\n    Copyright (c) Microsoft Corporation.\n\n    Permission to use, copy, modify, and/or distribute this software for any\n    purpose with or without fee is hereby granted.\n\n    THE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\n    REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\n    AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\n    INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\n    LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\n    OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\n    PERFORMANCE OF THIS SOFTWARE.\n    ***************************************************************************** */\n\n    var __assign = function() {\n        __assign = Object.assign || function __assign(t) {\n            for (var s, i = 1, n = arguments.length; i < n; i++) {\n                s = arguments[i];\n                for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\n            }\n            return t;\n        };\n        return __assign.apply(this, arguments);\n    };\n\n    var NotyfNotification = /** @class */ (function () {\n        function NotyfNotification(options) {\n            this.options = options;\n            this.listeners = {};\n        }\n        NotyfNotification.prototype.on = function (eventType, cb) {\n            var callbacks = this.listeners[eventType] || [];\n            this.listeners[eventType] = callbacks.concat([cb]);\n        };\n        NotyfNotification.prototype.triggerEvent = function (eventType, event) {\n            var _this = this;\n            var callbacks = this.listeners[eventType] || [];\n            callbacks.forEach(function (cb) { return cb({ target: _this, event: event }); });\n        };\n        return NotyfNotification;\n    }());\n    var NotyfArrayEvent;\n    (function (NotyfArrayEvent) {\n        NotyfArrayEvent[NotyfArrayEvent[\"Add\"] = 0] = \"Add\";\n        NotyfArrayEvent[NotyfArrayEvent[\"Remove\"] = 1] = \"Remove\";\n    })(NotyfArrayEvent || (NotyfArrayEvent = {}));\n    var NotyfArray = /** @class */ (function () {\n        function NotyfArray() {\n            this.notifications = [];\n        }\n        NotyfArray.prototype.push = function (elem) {\n            this.notifications.push(elem);\n            this.updateFn(elem, NotyfArrayEvent.Add, this.notifications);\n        };\n        NotyfArray.prototype.splice = function (index, num) {\n            var elem = this.notifications.splice(index, num)[0];\n            this.updateFn(elem, NotyfArrayEvent.Remove, this.notifications);\n            return elem;\n        };\n        NotyfArray.prototype.indexOf = function (elem) {\n            return this.notifications.indexOf(elem);\n        };\n        NotyfArray.prototype.onUpdate = function (fn) {\n            this.updateFn = fn;\n        };\n        return NotyfArray;\n    }());\n\n    var NotyfEvent;\n    (function (NotyfEvent) {\n        NotyfEvent[\"Dismiss\"] = \"dismiss\";\n        NotyfEvent[\"Click\"] = \"click\";\n    })(NotyfEvent || (NotyfEvent = {}));\n    var DEFAULT_OPTIONS = {\n        types: [\n            {\n                type: 'success',\n                className: 'notyf__toast--success',\n                backgroundColor: '#3dc763',\n                icon: {\n                    className: 'notyf__icon--success',\n                    tagName: 'i',\n                },\n            },\n            {\n                type: 'error',\n                className: 'notyf__toast--error',\n                backgroundColor: '#ed3d3d',\n                icon: {\n                    className: 'notyf__icon--error',\n                    tagName: 'i',\n                },\n            },\n        ],\n        duration: 2000,\n        ripple: true,\n        position: {\n            x: 'right',\n            y: 'bottom',\n        },\n        dismissible: false,\n    };\n\n    var NotyfView = /** @class */ (function () {\n        function NotyfView() {\n            this.notifications = [];\n            this.events = {};\n            this.X_POSITION_FLEX_MAP = {\n                left: 'flex-start',\n                center: 'center',\n                right: 'flex-end',\n            };\n            this.Y_POSITION_FLEX_MAP = {\n                top: 'flex-start',\n                center: 'center',\n                bottom: 'flex-end',\n            };\n            // Creates the main notifications container\n            var docFrag = document.createDocumentFragment();\n            var notyfContainer = this._createHTMLElement({ tagName: 'div', className: 'notyf' });\n            docFrag.appendChild(notyfContainer);\n            document.body.appendChild(docFrag);\n            this.container = notyfContainer;\n            // Identifies the main animation end event\n            this.animationEndEventName = this._getAnimationEndEventName();\n            this._createA11yContainer();\n        }\n        NotyfView.prototype.on = function (event, cb) {\n            var _a;\n            this.events = __assign(__assign({}, this.events), (_a = {}, _a[event] = cb, _a));\n        };\n        NotyfView.prototype.update = function (notification, type) {\n            if (type === NotyfArrayEvent.Add) {\n                this.addNotification(notification);\n            }\n            else if (type === NotyfArrayEvent.Remove) {\n                this.removeNotification(notification);\n            }\n        };\n        NotyfView.prototype.removeNotification = function (notification) {\n            var _this = this;\n            var renderedNotification = this._popRenderedNotification(notification);\n            var node;\n            if (!renderedNotification) {\n                return;\n            }\n            node = renderedNotification.node;\n            node.classList.add('notyf__toast--disappear');\n            var handleEvent;\n            node.addEventListener(this.animationEndEventName, (handleEvent = function (event) {\n                if (event.target === node) {\n                    node.removeEventListener(_this.animationEndEventName, handleEvent);\n                    _this.container.removeChild(node);\n                }\n            }));\n        };\n        NotyfView.prototype.addNotification = function (notification) {\n            var node = this._renderNotification(notification);\n            this.notifications.push({ notification: notification, node: node });\n            // For a11y purposes, we still want to announce that there's a notification in the screen\n            // even if it comes with no message.\n            this._announce(notification.options.message || 'Notification');\n        };\n        NotyfView.prototype._renderNotification = function (notification) {\n            var _a;\n            var card = this._buildNotificationCard(notification);\n            var className = notification.options.className;\n            if (className) {\n                (_a = card.classList).add.apply(_a, className.split(' '));\n            }\n            this.container.appendChild(card);\n            return card;\n        };\n        NotyfView.prototype._popRenderedNotification = function (notification) {\n            var idx = -1;\n            for (var i = 0; i < this.notifications.length && idx < 0; i++) {\n                if (this.notifications[i].notification === notification) {\n                    idx = i;\n                }\n            }\n            if (idx !== -1) {\n                return this.notifications.splice(idx, 1)[0];\n            }\n            return;\n        };\n        NotyfView.prototype.getXPosition = function (options) {\n            var _a;\n            return ((_a = options === null || options === void 0 ? void 0 : options.position) === null || _a === void 0 ? void 0 : _a.x) || 'right';\n        };\n        NotyfView.prototype.getYPosition = function (options) {\n            var _a;\n            return ((_a = options === null || options === void 0 ? void 0 : options.position) === null || _a === void 0 ? void 0 : _a.y) || 'bottom';\n        };\n        NotyfView.prototype.adjustContainerAlignment = function (options) {\n            var align = this.X_POSITION_FLEX_MAP[this.getXPosition(options)];\n            var justify = this.Y_POSITION_FLEX_MAP[this.getYPosition(options)];\n            var style = this.container.style;\n            style.setProperty('justify-content', justify);\n            style.setProperty('align-items', align);\n        };\n        NotyfView.prototype._buildNotificationCard = function (notification) {\n            var _this = this;\n            var options = notification.options;\n            var iconOpts = options.icon;\n            // Adjust container according to position (e.g. top-left, bottom-center, etc)\n            this.adjustContainerAlignment(options);\n            // Create elements\n            var notificationElem = this._createHTMLElement({ tagName: 'div', className: 'notyf__toast' });\n            var ripple = this._createHTMLElement({ tagName: 'div', className: 'notyf__ripple' });\n            var wrapper = this._createHTMLElement({ tagName: 'div', className: 'notyf__wrapper' });\n            var message = this._createHTMLElement({ tagName: 'div', className: 'notyf__message' });\n            message.innerHTML = options.message || '';\n            var mainColor = options.background || options.backgroundColor;\n            // Build the icon and append it to the card\n            if (iconOpts) {\n                var iconContainer = this._createHTMLElement({ tagName: 'div', className: 'notyf__icon' });\n                if (typeof iconOpts === 'string' || iconOpts instanceof String)\n                    iconContainer.innerHTML = new String(iconOpts).valueOf();\n                if (typeof iconOpts === 'object') {\n                    var _a = iconOpts.tagName, tagName = _a === void 0 ? 'i' : _a, className_1 = iconOpts.className, text = iconOpts.text, _b = iconOpts.color, color = _b === void 0 ? mainColor : _b;\n                    var iconElement = this._createHTMLElement({ tagName: tagName, className: className_1, text: text });\n                    if (color)\n                        iconElement.style.color = color;\n                    iconContainer.appendChild(iconElement);\n                }\n                wrapper.appendChild(iconContainer);\n            }\n            wrapper.appendChild(message);\n            notificationElem.appendChild(wrapper);\n            // Add ripple if applicable, else just paint the full toast\n            if (mainColor) {\n                if (options.ripple) {\n                    ripple.style.background = mainColor;\n                    notificationElem.appendChild(ripple);\n                }\n                else {\n                    notificationElem.style.background = mainColor;\n                }\n            }\n            // Add dismiss button\n            if (options.dismissible) {\n                var dismissWrapper = this._createHTMLElement({ tagName: 'div', className: 'notyf__dismiss' });\n                var dismissButton = this._createHTMLElement({\n                    tagName: 'button',\n                    className: 'notyf__dismiss-btn',\n                });\n                dismissWrapper.appendChild(dismissButton);\n                wrapper.appendChild(dismissWrapper);\n                notificationElem.classList.add(\"notyf__toast--dismissible\");\n                dismissButton.addEventListener('click', function (event) {\n                    var _a, _b;\n                    (_b = (_a = _this.events)[NotyfEvent.Dismiss]) === null || _b === void 0 ? void 0 : _b.call(_a, { target: notification, event: event });\n                    event.stopPropagation();\n                });\n            }\n            notificationElem.addEventListener('click', function (event) { var _a, _b; return (_b = (_a = _this.events)[NotyfEvent.Click]) === null || _b === void 0 ? void 0 : _b.call(_a, { target: notification, event: event }); });\n            // Adjust margins depending on whether its an upper or lower notification\n            var className = this.getYPosition(options) === 'top' ? 'upper' : 'lower';\n            notificationElem.classList.add(\"notyf__toast--\" + className);\n            return notificationElem;\n        };\n        NotyfView.prototype._createHTMLElement = function (_a) {\n            var tagName = _a.tagName, className = _a.className, text = _a.text;\n            var elem = document.createElement(tagName);\n            if (className) {\n                elem.className = className;\n            }\n            elem.textContent = text || null;\n            return elem;\n        };\n        /**\n         * Creates an invisible container which will announce the notyfs to\n         * screen readers\n         */\n        NotyfView.prototype._createA11yContainer = function () {\n            var a11yContainer = this._createHTMLElement({ tagName: 'div', className: 'notyf-announcer' });\n            a11yContainer.setAttribute('aria-atomic', 'true');\n            a11yContainer.setAttribute('aria-live', 'polite');\n            // Set the a11y container to be visible hidden. Can't use display: none as\n            // screen readers won't read it.\n            a11yContainer.style.border = '0';\n            a11yContainer.style.clip = 'rect(0 0 0 0)';\n            a11yContainer.style.height = '1px';\n            a11yContainer.style.margin = '-1px';\n            a11yContainer.style.overflow = 'hidden';\n            a11yContainer.style.padding = '0';\n            a11yContainer.style.position = 'absolute';\n            a11yContainer.style.width = '1px';\n            a11yContainer.style.outline = '0';\n            document.body.appendChild(a11yContainer);\n            this.a11yContainer = a11yContainer;\n        };\n        /**\n         * Announces a message to screenreaders.\n         */\n        NotyfView.prototype._announce = function (message) {\n            var _this = this;\n            this.a11yContainer.textContent = '';\n            // This 100ms timeout is necessary for some browser + screen-reader combinations:\n            // - Both JAWS and NVDA over IE11 will not announce anything without a non-zero timeout.\n            // - With Chrome and IE11 with NVDA or JAWS, a repeated (identical) message won't be read a\n            //   second time without clearing and then using a non-zero delay.\n            // (using JAWS 17 at time of this writing).\n            // https://github.com/angular/material2/blob/master/src/cdk/a11y/live-announcer/live-announcer.ts\n            setTimeout(function () {\n                _this.a11yContainer.textContent = message;\n            }, 100);\n        };\n        /**\n         * Determine which animationend event is supported\n         */\n        NotyfView.prototype._getAnimationEndEventName = function () {\n            var el = document.createElement('_fake');\n            var transitions = {\n                MozTransition: 'animationend',\n                OTransition: 'oAnimationEnd',\n                WebkitTransition: 'webkitAnimationEnd',\n                transition: 'animationend',\n            };\n            var t;\n            for (t in transitions) {\n                if (el.style[t] !== undefined) {\n                    return transitions[t];\n                }\n            }\n            // No supported animation end event. Using \"animationend\" as a fallback\n            return 'animationend';\n        };\n        return NotyfView;\n    }());\n\n    /**\n     * Main controller class. Defines the main Notyf API.\n     */\n    var Notyf = /** @class */ (function () {\n        function Notyf(opts) {\n            var _this = this;\n            this.dismiss = this._removeNotification;\n            this.notifications = new NotyfArray();\n            this.view = new NotyfView();\n            var types = this.registerTypes(opts);\n            this.options = __assign(__assign({}, DEFAULT_OPTIONS), opts);\n            this.options.types = types;\n            this.notifications.onUpdate(function (elem, type) { return _this.view.update(elem, type); });\n            this.view.on(NotyfEvent.Dismiss, function (_a) {\n                var target = _a.target, event = _a.event;\n                _this._removeNotification(target);\n                // tslint:disable-next-line: no-string-literal\n                target['triggerEvent'](NotyfEvent.Dismiss, event);\n            });\n            // tslint:disable-next-line: no-string-literal\n            this.view.on(NotyfEvent.Click, function (_a) {\n                var target = _a.target, event = _a.event;\n                return target['triggerEvent'](NotyfEvent.Click, event);\n            });\n        }\n        Notyf.prototype.error = function (payload) {\n            var options = this.normalizeOptions('error', payload);\n            return this.open(options);\n        };\n        Notyf.prototype.success = function (payload) {\n            var options = this.normalizeOptions('success', payload);\n            return this.open(options);\n        };\n        Notyf.prototype.open = function (options) {\n            var defaultOpts = this.options.types.find(function (_a) {\n                var type = _a.type;\n                return type === options.type;\n            }) || {};\n            var config = __assign(__assign({}, defaultOpts), options);\n            this.assignProps(['ripple', 'position', 'dismissible'], config);\n            var notification = new NotyfNotification(config);\n            this._pushNotification(notification);\n            return notification;\n        };\n        Notyf.prototype.dismissAll = function () {\n            while (this.notifications.splice(0, 1))\n                ;\n        };\n        /**\n         * Assigns properties to a config object based on two rules:\n         * 1. If the config object already sets that prop, leave it as so\n         * 2. Otherwise, use the default prop from the global options\n         *\n         * It's intended to build the final config object to open a notification. e.g. if\n         * 'dismissible' is not set, then use the value from the global config.\n         *\n         * @param props - properties to be assigned to the config object\n         * @param config - object whose properties need to be set\n         */\n        Notyf.prototype.assignProps = function (props, config) {\n            var _this = this;\n            props.forEach(function (prop) {\n                // intentional double equality to check for both null and undefined\n                config[prop] = config[prop] == null ? _this.options[prop] : config[prop];\n            });\n        };\n        Notyf.prototype._pushNotification = function (notification) {\n            var _this = this;\n            this.notifications.push(notification);\n            var duration = notification.options.duration !== undefined ? notification.options.duration : this.options.duration;\n            if (duration) {\n                setTimeout(function () { return _this._removeNotification(notification); }, duration);\n            }\n        };\n        Notyf.prototype._removeNotification = function (notification) {\n            var index = this.notifications.indexOf(notification);\n            if (index !== -1) {\n                this.notifications.splice(index, 1);\n            }\n        };\n        Notyf.prototype.normalizeOptions = function (type, payload) {\n            var options = { type: type };\n            if (typeof payload === 'string') {\n                options.message = payload;\n            }\n            else if (typeof payload === 'object') {\n                options = __assign(__assign({}, options), payload);\n            }\n            return options;\n        };\n        Notyf.prototype.registerTypes = function (opts) {\n            var incomingTypes = ((opts && opts.types) || []).slice();\n            var finalDefaultTypes = DEFAULT_OPTIONS.types.map(function (defaultType) {\n                // find if there's a default type within the user input's types, if so, it means the user\n                // wants to change some of the default settings\n                var userTypeIdx = -1;\n                incomingTypes.forEach(function (t, idx) {\n                    if (t.type === defaultType.type)\n                        userTypeIdx = idx;\n                });\n                var userType = userTypeIdx !== -1 ? incomingTypes.splice(userTypeIdx, 1)[0] : {};\n                return __assign(__assign({}, defaultType), userType);\n            });\n            return finalDefaultTypes.concat(incomingTypes);\n        };\n        return Notyf;\n    }());\n\n    return Notyf;\n\n})));\n"
  },
  {
    "path": "static/assets/vendor/nouislider/distribute/nouislider.min.mjs",
    "content": "\"use strict\";var PipsMode,PipsType;function isValidFormatter(t){return isValidPartialFormatter(t)&&\"function\"==typeof t.from}function isValidPartialFormatter(t){return\"object\"==typeof t&&\"function\"==typeof t.to}function removeElement(t){t.parentElement.removeChild(t)}function isSet(t){return null!=t}function preventDefault(t){t.preventDefault()}function unique(t){return t.filter(function(t){return!this[t]&&(this[t]=!0)},{})}function closest(t,e){return Math.round(t/e)*e}function offset(t,e){var r=t.getBoundingClientRect(),n=t.ownerDocument,t=n.documentElement,n=getPageOffset(n);return/webkit.*Chrome.*Mobile/i.test(navigator.userAgent)&&(n.x=0),e?r.top+n.y-t.clientTop:r.left+n.x-t.clientLeft}function isNumeric(t){return\"number\"==typeof t&&!isNaN(t)&&isFinite(t)}function addClassFor(t,e,r){0<r&&(addClass(t,e),setTimeout(function(){removeClass(t,e)},r))}function limit(t){return Math.max(Math.min(t,100),0)}function asArray(t){return Array.isArray(t)?t:[t]}function countDecimals(t){t=(t=String(t)).split(\".\");return 1<t.length?t[1].length:0}function addClass(t,e){t.classList&&!/\\s/.test(e)?t.classList.add(e):t.className+=\" \"+e}function removeClass(t,e){t.classList&&!/\\s/.test(e)?t.classList.remove(e):t.className=t.className.replace(new RegExp(\"(^|\\\\b)\"+e.split(\" \").join(\"|\")+\"(\\\\b|$)\",\"gi\"),\" \")}function hasClass(t,e){return t.classList?t.classList.contains(e):new RegExp(\"\\\\b\"+e+\"\\\\b\").test(t.className)}function getPageOffset(t){var e=void 0!==window.pageXOffset,r=\"CSS1Compat\"===(t.compatMode||\"\");return{x:e?window.pageXOffset:(r?t.documentElement:t.body).scrollLeft,y:e?window.pageYOffset:(r?t.documentElement:t.body).scrollTop}}function getActions(){return window.navigator.pointerEnabled?{start:\"pointerdown\",move:\"pointermove\",end:\"pointerup\"}:window.navigator.msPointerEnabled?{start:\"MSPointerDown\",move:\"MSPointerMove\",end:\"MSPointerUp\"}:{start:\"mousedown touchstart\",move:\"mousemove touchmove\",end:\"mouseup touchend\"}}function getSupportsPassive(){var t=!1;try{var e=Object.defineProperty({},\"passive\",{get:function(){t=!0}});window.addEventListener(\"test\",null,e)}catch(t){}return t}function getSupportsTouchActionNone(){return window.CSS&&CSS.supports&&CSS.supports(\"touch-action\",\"none\")}function subRangeRatio(t,e){return 100/(e-t)}function fromPercentage(t,e,r){return 100*e/(t[r+1]-t[r])}function toPercentage(t,e){return fromPercentage(t,t[0]<0?e+Math.abs(t[0]):e-t[0],0)}function isPercentage(t,e){return e*(t[1]-t[0])/100+t[0]}function getJ(t,e){for(var r=1;t>=e[r];)r+=1;return r}function toStepping(t,e,r){if(r>=t.slice(-1)[0])return 100;var n=getJ(r,t),i=t[n-1],s=t[n],t=e[n-1],n=e[n];return t+toPercentage([i,s],r)/subRangeRatio(t,n)}function fromStepping(t,e,r){if(100<=r)return t.slice(-1)[0];var n=getJ(r,e),i=t[n-1],s=t[n],t=e[n-1];return isPercentage([i,s],(r-t)*subRangeRatio(t,e[n]))}function getStep(t,e,r,n){if(100===n)return n;var i=getJ(n,t),s=t[i-1],o=t[i];return r?(o-s)/2<n-s?o:s:e[i-1]?t[i-1]+closest(n-t[i-1],e[i-1]):n}!function(t){t.Range=\"range\",t.Steps=\"steps\",t.Positions=\"positions\",t.Count=\"count\",t.Values=\"values\"}(PipsMode=PipsMode||{}),function(t){t[t.None=-1]=\"None\",t[t.NoValue=0]=\"NoValue\",t[t.LargeValue=1]=\"LargeValue\",t[t.SmallValue=2]=\"SmallValue\"}(PipsType=PipsType||{});var Spectrum=function(){function t(e,t,r){var n;this.xPct=[],this.xVal=[],this.xSteps=[],this.xNumSteps=[],this.xHighestCompleteStep=[],this.xSteps=[r||!1],this.xNumSteps=[!1],this.snap=t;var i=[];for(Object.keys(e).forEach(function(t){i.push([asArray(e[t]),t])}),i.sort(function(t,e){return t[0][0]-e[0][0]}),n=0;n<i.length;n++)this.handleEntryPoint(i[n][1],i[n][0]);for(this.xNumSteps=this.xSteps.slice(0),n=0;n<this.xNumSteps.length;n++)this.handleStepPoint(n,this.xNumSteps[n])}return t.prototype.getDistance=function(t){for(var e=[],r=0;r<this.xNumSteps.length-1;r++){var n=this.xNumSteps[r];if(n&&t/n%1!=0)throw new Error(\"noUiSlider: 'limit', 'margin' and 'padding' of \"+this.xPct[r]+\"% range must be divisible by step.\");e[r]=fromPercentage(this.xVal,t,r)}return e},t.prototype.getAbsoluteDistance=function(t,e,r){var n=0;if(t<this.xPct[this.xPct.length-1])for(;t>this.xPct[n+1];)n++;else t===this.xPct[this.xPct.length-1]&&(n=this.xPct.length-2);r||t!==this.xPct[n+1]||n++;for(var i,s=1,o=(e=null===e?[]:e)[n],a=0,l=0,u=0,c=r?(t-this.xPct[n])/(this.xPct[n+1]-this.xPct[n]):(this.xPct[n+1]-t)/(this.xPct[n+1]-this.xPct[n]);0<o;)i=this.xPct[n+1+u]-this.xPct[n+u],100<e[n+u]*s+100-100*c?(a=i*c,s=(o-100*c)/e[n+u],c=1):(a=e[n+u]*i/100*s,s=0),r?(l-=a,1<=this.xPct.length+u&&u--):(l+=a,1<=this.xPct.length-u&&u++),o=e[n+u]*s;return t+l},t.prototype.toStepping=function(t){return t=toStepping(this.xVal,this.xPct,t)},t.prototype.fromStepping=function(t){return fromStepping(this.xVal,this.xPct,t)},t.prototype.getStep=function(t){return t=getStep(this.xPct,this.xSteps,this.snap,t)},t.prototype.getDefaultStep=function(t,e,r){var n=getJ(t,this.xPct);return(100===t||e&&t===this.xPct[n-1])&&(n=Math.max(n-1,1)),(this.xVal[n]-this.xVal[n-1])/r},t.prototype.getNearbySteps=function(t){t=getJ(t,this.xPct);return{stepBefore:{startValue:this.xVal[t-2],step:this.xNumSteps[t-2],highestStep:this.xHighestCompleteStep[t-2]},thisStep:{startValue:this.xVal[t-1],step:this.xNumSteps[t-1],highestStep:this.xHighestCompleteStep[t-1]},stepAfter:{startValue:this.xVal[t],step:this.xNumSteps[t],highestStep:this.xHighestCompleteStep[t]}}},t.prototype.countStepDecimals=function(){var t=this.xNumSteps.map(countDecimals);return Math.max.apply(null,t)},t.prototype.hasNoSize=function(){return this.xVal[0]===this.xVal[this.xVal.length-1]},t.prototype.convert=function(t){return this.getStep(this.toStepping(t))},t.prototype.handleEntryPoint=function(t,e){t=\"min\"===t?0:\"max\"===t?100:parseFloat(t);if(!isNumeric(t)||!isNumeric(e[0]))throw new Error(\"noUiSlider: 'range' value isn't numeric.\");this.xPct.push(t),this.xVal.push(e[0]);e=Number(e[1]);t?this.xSteps.push(!isNaN(e)&&e):isNaN(e)||(this.xSteps[0]=e),this.xHighestCompleteStep.push(0)},t.prototype.handleStepPoint=function(t,e){e&&(this.xVal[t]!==this.xVal[t+1]?(this.xSteps[t]=fromPercentage([this.xVal[t],this.xVal[t+1]],e,0)/subRangeRatio(this.xPct[t],this.xPct[t+1]),e=(this.xVal[t+1]-this.xVal[t])/this.xNumSteps[t],e=Math.ceil(Number(e.toFixed(3))-1),e=this.xVal[t]+this.xNumSteps[t]*e,this.xHighestCompleteStep[t]=e):this.xSteps[t]=this.xHighestCompleteStep[t]=this.xVal[t])},t}(),defaultFormatter={to:function(t){return void 0===t?\"\":t.toFixed(2)},from:Number},cssClasses={target:\"target\",base:\"base\",origin:\"origin\",handle:\"handle\",handleLower:\"handle-lower\",handleUpper:\"handle-upper\",touchArea:\"touch-area\",horizontal:\"horizontal\",vertical:\"vertical\",background:\"background\",connect:\"connect\",connects:\"connects\",ltr:\"ltr\",rtl:\"rtl\",textDirectionLtr:\"txt-dir-ltr\",textDirectionRtl:\"txt-dir-rtl\",draggable:\"draggable\",drag:\"state-drag\",tap:\"state-tap\",active:\"active\",tooltip:\"tooltip\",pips:\"pips\",pipsHorizontal:\"pips-horizontal\",pipsVertical:\"pips-vertical\",marker:\"marker\",markerHorizontal:\"marker-horizontal\",markerVertical:\"marker-vertical\",markerNormal:\"marker-normal\",markerLarge:\"marker-large\",markerSub:\"marker-sub\",value:\"value\",valueHorizontal:\"value-horizontal\",valueVertical:\"value-vertical\",valueNormal:\"value-normal\",valueLarge:\"value-large\",valueSub:\"value-sub\"},INTERNAL_EVENT_NS={tooltips:\".__tooltips\",aria:\".__aria\"};function testStep(t,e){if(!isNumeric(e))throw new Error(\"noUiSlider: 'step' is not numeric.\");t.singleStep=e}function testKeyboardPageMultiplier(t,e){if(!isNumeric(e))throw new Error(\"noUiSlider: 'keyboardPageMultiplier' is not numeric.\");t.keyboardPageMultiplier=e}function testKeyboardMultiplier(t,e){if(!isNumeric(e))throw new Error(\"noUiSlider: 'keyboardMultiplier' is not numeric.\");t.keyboardMultiplier=e}function testKeyboardDefaultStep(t,e){if(!isNumeric(e))throw new Error(\"noUiSlider: 'keyboardDefaultStep' is not numeric.\");t.keyboardDefaultStep=e}function testRange(t,e){if(\"object\"!=typeof e||Array.isArray(e))throw new Error(\"noUiSlider: 'range' is not an object.\");if(void 0===e.min||void 0===e.max)throw new Error(\"noUiSlider: Missing 'min' or 'max' in 'range'.\");t.spectrum=new Spectrum(e,t.snap||!1,t.singleStep)}function testStart(t,e){if(e=asArray(e),!Array.isArray(e)||!e.length)throw new Error(\"noUiSlider: 'start' option is incorrect.\");t.handles=e.length,t.start=e}function testSnap(t,e){if(\"boolean\"!=typeof e)throw new Error(\"noUiSlider: 'snap' option must be a boolean.\");t.snap=e}function testAnimate(t,e){if(\"boolean\"!=typeof e)throw new Error(\"noUiSlider: 'animate' option must be a boolean.\");t.animate=e}function testAnimationDuration(t,e){if(\"number\"!=typeof e)throw new Error(\"noUiSlider: 'animationDuration' option must be a number.\");t.animationDuration=e}function testConnect(t,e){var r,n=[!1];if(\"lower\"===e?e=[!0,!1]:\"upper\"===e&&(e=[!1,!0]),!0===e||!1===e){for(r=1;r<t.handles;r++)n.push(e);n.push(!1)}else{if(!Array.isArray(e)||!e.length||e.length!==t.handles+1)throw new Error(\"noUiSlider: 'connect' option doesn't match handle count.\");n=e}t.connect=n}function testOrientation(t,e){switch(e){case\"horizontal\":t.ort=0;break;case\"vertical\":t.ort=1;break;default:throw new Error(\"noUiSlider: 'orientation' option is invalid.\")}}function testMargin(t,e){if(!isNumeric(e))throw new Error(\"noUiSlider: 'margin' option must be numeric.\");0!==e&&(t.margin=t.spectrum.getDistance(e))}function testLimit(t,e){if(!isNumeric(e))throw new Error(\"noUiSlider: 'limit' option must be numeric.\");if(t.limit=t.spectrum.getDistance(e),!t.limit||t.handles<2)throw new Error(\"noUiSlider: 'limit' option is only supported on linear sliders with 2 or more handles.\")}function testPadding(t,e){var r;if(!isNumeric(e)&&!Array.isArray(e))throw new Error(\"noUiSlider: 'padding' option must be numeric or array of exactly 2 numbers.\");if(Array.isArray(e)&&2!==e.length&&!isNumeric(e[0])&&!isNumeric(e[1]))throw new Error(\"noUiSlider: 'padding' option must be numeric or array of exactly 2 numbers.\");if(0!==e){for(Array.isArray(e)||(e=[e,e]),t.padding=[t.spectrum.getDistance(e[0]),t.spectrum.getDistance(e[1])],r=0;r<t.spectrum.xNumSteps.length-1;r++)if(t.padding[0][r]<0||t.padding[1][r]<0)throw new Error(\"noUiSlider: 'padding' option must be a positive number(s).\");var n=e[0]+e[1],e=t.spectrum.xVal[0];if(1<n/(t.spectrum.xVal[t.spectrum.xVal.length-1]-e))throw new Error(\"noUiSlider: 'padding' option must not exceed 100% of the range.\")}}function testDirection(t,e){switch(e){case\"ltr\":t.dir=0;break;case\"rtl\":t.dir=1;break;default:throw new Error(\"noUiSlider: 'direction' option was not recognized.\")}}function testBehaviour(t,e){if(\"string\"!=typeof e)throw new Error(\"noUiSlider: 'behaviour' must be a string containing options.\");var r=0<=e.indexOf(\"tap\"),n=0<=e.indexOf(\"drag\"),i=0<=e.indexOf(\"fixed\"),s=0<=e.indexOf(\"snap\"),o=0<=e.indexOf(\"hover\"),a=0<=e.indexOf(\"unconstrained\"),e=0<=e.indexOf(\"drag-all\");if(i){if(2!==t.handles)throw new Error(\"noUiSlider: 'fixed' behaviour must be used with 2 handles\");testMargin(t,t.start[1]-t.start[0])}if(a&&(t.margin||t.limit))throw new Error(\"noUiSlider: 'unconstrained' behaviour cannot be used with margin or limit\");t.events={tap:r||s,drag:n,dragAll:e,fixed:i,snap:s,hover:o,unconstrained:a}}function testTooltips(t,e){if(!1!==e)if(!0===e||isValidPartialFormatter(e)){t.tooltips=[];for(var r=0;r<t.handles;r++)t.tooltips.push(e)}else{if((e=asArray(e)).length!==t.handles)throw new Error(\"noUiSlider: must pass a formatter for all handles.\");e.forEach(function(t){if(\"boolean\"!=typeof t&&!isValidPartialFormatter(t))throw new Error(\"noUiSlider: 'tooltips' must be passed a formatter or 'false'.\")}),t.tooltips=e}}function testHandleAttributes(t,e){if(e.length!==t.handles)throw new Error(\"noUiSlider: must pass a attributes for all handles.\");t.handleAttributes=e}function testAriaFormat(t,e){if(!isValidPartialFormatter(e))throw new Error(\"noUiSlider: 'ariaFormat' requires 'to' method.\");t.ariaFormat=e}function testFormat(t,e){if(!isValidFormatter(e))throw new Error(\"noUiSlider: 'format' requires 'to' and 'from' methods.\");t.format=e}function testKeyboardSupport(t,e){if(\"boolean\"!=typeof e)throw new Error(\"noUiSlider: 'keyboardSupport' option must be a boolean.\");t.keyboardSupport=e}function testDocumentElement(t,e){t.documentElement=e}function testCssPrefix(t,e){if(\"string\"!=typeof e&&!1!==e)throw new Error(\"noUiSlider: 'cssPrefix' must be a string or `false`.\");t.cssPrefix=e}function testCssClasses(e,r){if(\"object\"!=typeof r)throw new Error(\"noUiSlider: 'cssClasses' must be an object.\");\"string\"==typeof e.cssPrefix?(e.cssClasses={},Object.keys(r).forEach(function(t){e.cssClasses[t]=e.cssPrefix+r[t]})):e.cssClasses=r}function testOptions(e){var r={margin:null,limit:null,padding:null,animate:!0,animationDuration:300,ariaFormat:defaultFormatter,format:defaultFormatter},n={step:{r:!1,t:testStep},keyboardPageMultiplier:{r:!1,t:testKeyboardPageMultiplier},keyboardMultiplier:{r:!1,t:testKeyboardMultiplier},keyboardDefaultStep:{r:!1,t:testKeyboardDefaultStep},start:{r:!0,t:testStart},connect:{r:!0,t:testConnect},direction:{r:!0,t:testDirection},snap:{r:!1,t:testSnap},animate:{r:!1,t:testAnimate},animationDuration:{r:!1,t:testAnimationDuration},range:{r:!0,t:testRange},orientation:{r:!1,t:testOrientation},margin:{r:!1,t:testMargin},limit:{r:!1,t:testLimit},padding:{r:!1,t:testPadding},behaviour:{r:!0,t:testBehaviour},ariaFormat:{r:!1,t:testAriaFormat},format:{r:!1,t:testFormat},tooltips:{r:!1,t:testTooltips},keyboardSupport:{r:!0,t:testKeyboardSupport},documentElement:{r:!1,t:testDocumentElement},cssPrefix:{r:!0,t:testCssPrefix},cssClasses:{r:!0,t:testCssClasses},handleAttributes:{r:!1,t:testHandleAttributes}},i={connect:!1,direction:\"ltr\",behaviour:\"tap\",orientation:\"horizontal\",keyboardSupport:!0,cssPrefix:\"noUi-\",cssClasses:cssClasses,keyboardPageMultiplier:5,keyboardMultiplier:1,keyboardDefaultStep:10};e.format&&!e.ariaFormat&&(e.ariaFormat=e.format),Object.keys(n).forEach(function(t){if(isSet(e[t])||void 0!==i[t])n[t].t(r,(isSet(e[t])?e:i)[t]);else if(n[t].r)throw new Error(\"noUiSlider: '\"+t+\"' is required.\")}),r.pips=e.pips;var t=document.createElement(\"div\"),s=void 0!==t.style.msTransform,t=void 0!==t.style.transform;r.transformRule=t?\"transform\":s?\"msTransform\":\"webkitTransform\";return r.style=[[\"left\",\"top\"],[\"right\",\"bottom\"]][r.dir][r.ort],r}function scope(t,d,s){var r,a,l,n,i,e,u,c=getActions(),p=getSupportsTouchActionNone()&&getSupportsPassive(),f=t,b=d.spectrum,h=[],m=[],g=[],o=0,v={},S=t.ownerDocument,x=d.documentElement||S.documentElement,y=S.body,E=\"rtl\"===S.dir||1===d.ort?0:100;function N(t,e){var r=S.createElement(\"div\");return e&&addClass(r,e),t.appendChild(r),r}function w(t,e){var r,t=N(t,d.cssClasses.origin),n=N(t,d.cssClasses.handle);return N(n,d.cssClasses.touchArea),n.setAttribute(\"data-handle\",String(e)),d.keyboardSupport&&(n.setAttribute(\"tabindex\",\"0\"),n.addEventListener(\"keydown\",function(t){return function(t,e){if(V()||A(e))return!1;var r=[\"Left\",\"Right\"],n=[\"Down\",\"Up\"],i=[\"PageDown\",\"PageUp\"],s=[\"Home\",\"End\"];d.dir&&!d.ort?r.reverse():d.ort&&!d.dir&&(n.reverse(),i.reverse());var o=t.key.replace(\"Arrow\",\"\"),a=o===i[0],l=o===i[1],i=o===n[0]||o===r[0]||a,n=o===n[1]||o===r[1]||l,r=o===s[0],s=o===s[1];if(!(i||n||r||s))return!0;if(t.preventDefault(),n||i){var u=i?0:1,u=it(e)[u];if(null===u)return!1;!1===u&&(u=b.getDefaultStep(m[e],i,d.keyboardDefaultStep)),u*=l||a?d.keyboardPageMultiplier:d.keyboardMultiplier,u=Math.max(u,1e-7),u*=i?-1:1,u=h[e]+u}else u=s?d.spectrum.xVal[d.spectrum.xVal.length-1]:d.spectrum.xVal[0];return Z(e,b.toStepping(u),!0,!0),X(\"slide\",e),X(\"update\",e),X(\"change\",e),X(\"set\",e),!1}(t,e)})),void 0!==d.handleAttributes&&(r=d.handleAttributes[e],Object.keys(r).forEach(function(t){n.setAttribute(t,r[t])})),n.setAttribute(\"role\",\"slider\"),n.setAttribute(\"aria-orientation\",d.ort?\"vertical\":\"horizontal\"),0===e?addClass(n,d.cssClasses.handleLower):e===d.handles-1&&addClass(n,d.cssClasses.handleUpper),t}function P(t,e){return!!e&&N(t,d.cssClasses.connect)}function C(t,e){return!(!d.tooltips||!d.tooltips[e])&&N(t.firstChild,d.cssClasses.tooltip)}function V(){return f.hasAttribute(\"disabled\")}function A(t){return a[t].hasAttribute(\"disabled\")}function k(){i&&(J(\"update\"+INTERNAL_EVENT_NS.tooltips),i.forEach(function(t){t&&removeElement(t)}),i=null)}function M(){k(),i=a.map(C),q(\"update\"+INTERNAL_EVENT_NS.tooltips,function(t,e,r){i&&d.tooltips&&!1!==i[e]&&(t=t[e],!0!==d.tooltips[e]&&(t=d.tooltips[e].to(r[e])),i[e].innerHTML=t)})}function D(t,e){return t.map(function(t){return b.fromStepping(e?b.getStep(t):t)})}function T(f){var h=function(t){if(t.mode===PipsMode.Range||t.mode===PipsMode.Steps)return b.xVal;if(t.mode!==PipsMode.Count)return t.mode===PipsMode.Positions?D(t.values,t.stepped):t.mode===PipsMode.Values?t.stepped?t.values.map(function(t){return b.fromStepping(b.getStep(b.toStepping(t)))}):t.values:[];if(t.values<2)throw new Error(\"noUiSlider: 'values' (>= 2) required for mode 'count'.\");for(var e=t.values-1,r=100/e,n=[];e--;)n[e]=e*r;return n.push(100),D(n,t.stepped)}(f),m={},t=b.xVal[0],e=b.xVal[b.xVal.length-1],g=!1,v=!1,S=0;return(h=unique(h.slice().sort(function(t,e){return t-e})))[0]!==t&&(h.unshift(t),g=!0),h[h.length-1]!==e&&(h.push(e),v=!0),h.forEach(function(t,e){var r,n,i,s,o,a,l,u,t=t,c=h[e+1],p=f.mode===PipsMode.Steps,d=(d=p?b.xNumSteps[e]:d)||c-t;for(void 0===c&&(c=t),d=Math.max(d,1e-7),r=t;r<=c;r=Number((r+d).toFixed(7))){for(a=(s=(i=b.toStepping(r))-S)/(f.density||1),u=s/(l=Math.round(a)),n=1;n<=l;n+=1)m[(o=S+n*u).toFixed(5)]=[b.fromStepping(o),0];a=-1<h.indexOf(r)?PipsType.LargeValue:p?PipsType.SmallValue:PipsType.NoValue,!e&&g&&r!==c&&(a=0),r===c&&v||(m[i.toFixed(5)]=[r,a]),S=i}}),m}function U(i,s,o){var t,a=S.createElement(\"div\"),n=((t={})[PipsType.None]=\"\",t[PipsType.NoValue]=d.cssClasses.valueNormal,t[PipsType.LargeValue]=d.cssClasses.valueLarge,t[PipsType.SmallValue]=d.cssClasses.valueSub,t),l=((t={})[PipsType.None]=\"\",t[PipsType.NoValue]=d.cssClasses.markerNormal,t[PipsType.LargeValue]=d.cssClasses.markerLarge,t[PipsType.SmallValue]=d.cssClasses.markerSub,t),u=[d.cssClasses.valueHorizontal,d.cssClasses.valueVertical],c=[d.cssClasses.markerHorizontal,d.cssClasses.markerVertical];function p(t,e){var r=e===d.cssClasses.value;return e+\" \"+(r?u:c)[d.ort]+\" \"+(r?n:l)[t]}return addClass(a,d.cssClasses.pips),addClass(a,0===d.ort?d.cssClasses.pipsHorizontal:d.cssClasses.pipsVertical),Object.keys(i).forEach(function(t){var e,r,n;r=i[e=t][0],n=i[t][1],(n=s?s(r,n):n)!==PipsType.None&&((t=N(a,!1)).className=p(n,d.cssClasses.marker),t.style[d.style]=e+\"%\",n>PipsType.NoValue&&((t=N(a,!1)).className=p(n,d.cssClasses.value),t.setAttribute(\"data-value\",String(r)),t.style[d.style]=e+\"%\",t.innerHTML=String(o.to(r))))}),a}function L(){n&&(removeElement(n),n=null)}function O(t){L();var e=T(t),r=t.filter,t=t.format||{to:function(t){return String(Math.round(t))}};return n=f.appendChild(U(e,r,t))}function F(){var t=r.getBoundingClientRect(),e=\"offset\"+[\"Width\",\"Height\"][d.ort];return 0===d.ort?t.width||r[e]:t.height||r[e]}function R(e,r,n,i){function s(t){return!!(t=function(e,t,r){var n=0===e.type.indexOf(\"touch\"),i=0===e.type.indexOf(\"mouse\"),s=0===e.type.indexOf(\"pointer\"),o=0,a=0;0===e.type.indexOf(\"MSPointer\")&&(s=!0);if(\"mousedown\"===e.type&&!e.buttons&&!e.touches)return!1;if(n){var l=function(t){t=t.target;return t===r||r.contains(t)||e.composed&&e.composedPath().shift()===r};if(\"touchstart\"===e.type){n=Array.prototype.filter.call(e.touches,l);if(1<n.length)return!1;o=n[0].pageX,a=n[0].pageY}else{l=Array.prototype.find.call(e.changedTouches,l);if(!l)return!1;o=l.pageX,a=l.pageY}}t=t||getPageOffset(S),(i||s)&&(o=e.clientX+t.x,a=e.clientY+t.y);return e.pageOffset=t,e.points=[o,a],e.cursor=i||s,e}(t,i.pageOffset,i.target||r))&&(!(V()&&!i.doNotReject)&&(!(hasClass(f,d.cssClasses.tap)&&!i.doNotReject)&&(!(e===c.start&&void 0!==t.buttons&&1<t.buttons)&&((!i.hover||!t.buttons)&&(p||t.preventDefault(),t.calcPoint=t.points[d.ort],void n(t,i))))))}var o=[];return e.split(\" \").forEach(function(t){r.addEventListener(t,s,!!p&&{passive:!0}),o.push([t,s])}),o}function _(t){t=limit(t=100*(t-offset(r,d.ort))/F());return d.dir?100-t:t}function z(t,e){\"mouseout\"===t.type&&\"HTML\"===t.target.nodeName&&null===t.relatedTarget&&j(t,e)}function H(t,e){if(-1===navigator.appVersion.indexOf(\"MSIE 9\")&&0===t.buttons&&0!==e.buttonsProperty)return j(t,e);t=(d.dir?-1:1)*(t.calcPoint-e.startCalcPoint);$(0<t,100*t/e.baseSize,e.locations,e.handleNumbers,e.connect)}function j(t,e){e.handle&&(removeClass(e.handle,d.cssClasses.active),--o),e.listeners.forEach(function(t){x.removeEventListener(t[0],t[1])}),0===o&&(removeClass(f,d.cssClasses.drag),Q(),t.cursor&&(y.style.cursor=\"\",y.removeEventListener(\"selectstart\",preventDefault))),e.handleNumbers.forEach(function(t){X(\"change\",t),X(\"set\",t),X(\"end\",t)})}function I(t,e){var r,n,i,s;e.handleNumbers.some(A)||(1===e.handleNumbers.length&&(s=a[e.handleNumbers[0]].children[0],o+=1,addClass(s,d.cssClasses.active)),t.stopPropagation(),n=R(c.move,x,H,{target:t.target,handle:s,connect:e.connect,listeners:r=[],startCalcPoint:t.calcPoint,baseSize:F(),pageOffset:t.pageOffset,handleNumbers:e.handleNumbers,buttonsProperty:t.buttons,locations:m.slice()}),i=R(c.end,x,j,{target:t.target,handle:s,listeners:r,doNotReject:!0,handleNumbers:e.handleNumbers}),s=R(\"mouseout\",x,z,{target:t.target,handle:s,listeners:r,doNotReject:!0,handleNumbers:e.handleNumbers}),r.push.apply(r,n.concat(i,s)),t.cursor&&(y.style.cursor=getComputedStyle(t.target).cursor,1<a.length&&addClass(f,d.cssClasses.drag),y.addEventListener(\"selectstart\",preventDefault,!1)),e.handleNumbers.forEach(function(t){X(\"start\",t)}))}function B(t){t.stopPropagation();var i,s,o,e=_(t.calcPoint),r=(i=e,o=!(s=100),a.forEach(function(t,e){var r,n;A(e)||(r=m[e],((n=Math.abs(r-i))<s||n<=s&&r<i||100===n&&100===s)&&(o=e,s=n))}),o);!1!==r&&(d.events.snap||addClassFor(f,d.cssClasses.tap,d.animationDuration),Z(r,e,!0,!0),Q(),X(\"slide\",r,!0),X(\"update\",r,!0),d.events.snap?I(t,{handleNumbers:[r]}):(X(\"change\",r,!0),X(\"set\",r,!0)))}function K(t){var t=_(t.calcPoint),t=b.getStep(t),e=b.fromStepping(t);Object.keys(v).forEach(function(t){\"hover\"===t.split(\".\")[0]&&v[t].forEach(function(t){t.call(st,e)})})}function q(t,e){v[t]=v[t]||[],v[t].push(e),\"update\"===t.split(\".\")[0]&&a.forEach(function(t,e){X(\"update\",e)})}function J(t){var n=t&&t.split(\".\")[0],i=n?t.substring(n.length):t;Object.keys(v).forEach(function(t){var e=t.split(\".\")[0],r=t.substring(e.length);n&&n!==e||i&&i!==r||((e=r)!==INTERNAL_EVENT_NS.aria&&e!==INTERNAL_EVENT_NS.tooltips||i===r)&&delete v[t]})}function X(r,n,i){Object.keys(v).forEach(function(t){var e=t.split(\".\")[0];r===e&&v[t].forEach(function(t){t.call(st,h.map(d.format.to),n,h.slice(),i||!1,m.slice(),st)})})}function Y(t,e,r,n,i,s){var o;return 1<a.length&&!d.events.unconstrained&&(n&&0<e&&(o=b.getAbsoluteDistance(t[e-1],d.margin,!1),r=Math.max(r,o)),i&&e<a.length-1&&(o=b.getAbsoluteDistance(t[e+1],d.margin,!0),r=Math.min(r,o))),1<a.length&&d.limit&&(n&&0<e&&(o=b.getAbsoluteDistance(t[e-1],d.limit,!1),r=Math.min(r,o)),i&&e<a.length-1&&(o=b.getAbsoluteDistance(t[e+1],d.limit,!0),r=Math.max(r,o))),d.padding&&(0===e&&(o=b.getAbsoluteDistance(0,d.padding[0],!1),r=Math.max(r,o)),e===a.length-1&&(o=b.getAbsoluteDistance(100,d.padding[1],!0),r=Math.min(r,o))),!((r=limit(r=b.getStep(r)))===t[e]&&!s)&&r}function W(t,e){var r=d.ort;return(r?e:t)+\", \"+(r?t:e)}function $(t,r,n,e,i){var s=n.slice(),o=e[0],a=[!t,t],l=[t,!t];e=e.slice(),t&&e.reverse(),1<e.length?e.forEach(function(t,e){e=Y(s,t,s[t]+r,a[e],l[e],!1);!1===e?r=0:(r=e-s[t],s[t]=e)}):a=l=[!0];var u=!1;e.forEach(function(t,e){u=Z(t,n[t]+r,a[e],l[e])||u}),u&&(e.forEach(function(t){X(\"update\",t),X(\"slide\",t)}),null!=i&&X(\"drag\",o))}function G(t,e){return d.dir?100-t-e:t}function Q(){g.forEach(function(t){var e=50<m[t]?-1:1,e=3+(a.length+e*t);a[t].style.zIndex=String(e)})}function Z(t,e,r,n,i){return!1!==(e=i?e:Y(m,t,e,r,n,!1))&&(e=e,m[t=t]=e,h[t]=b.fromStepping(e),e=\"translate(\"+W(10*(G(e,0)-E)+\"%\",\"0\")+\")\",a[t].style[d.transformRule]=e,tt(t),tt(t+1),!0)}function tt(t){var e,r;l[t]&&(r=100,e=\"translate(\"+W(G(e=(e=0)!==t?m[t-1]:e,r=(r=t!==l.length-1?m[t]:r)-e)+\"%\",\"0\")+\")\",r=\"scale(\"+W(r/100,\"1\")+\")\",l[t].style[d.transformRule]=e+\" \"+r)}function et(t,e){return null===t||!1===t||void 0===t?m[e]:(\"number\"==typeof t&&(t=String(t)),!1===(t=!1!==(t=d.format.from(t))?b.toStepping(t):t)||isNaN(t)?m[e]:t)}function rt(t,e,r){var n=asArray(t),t=void 0===m[0];e=void 0===e||e,d.animate&&!t&&addClassFor(f,d.cssClasses.tap,d.animationDuration),g.forEach(function(t){Z(t,et(n[t],t),!0,!1,r)});var i,s=1===g.length?0:1;for(t&&b.hasNoSize()&&(r=!0,m[0]=0,1<g.length&&(i=100/(g.length-1),g.forEach(function(t){m[t]=t*i})));s<g.length;++s)g.forEach(function(t){Z(t,m[t],!0,!0,r)});Q(),g.forEach(function(t){X(\"update\",t),null!==n[t]&&e&&X(\"set\",t)})}function nt(t){if(t=void 0===t?!1:t)return 1===h.length?h[0]:h.slice(0);t=h.map(d.format.to);return 1===t.length?t[0]:t}function it(t){var e=m[t],r=b.getNearbySteps(e),n=h[t],i=r.thisStep.step,t=null;if(d.snap)return[n-r.stepBefore.startValue||null,r.stepAfter.startValue-n||null];!1!==i&&n+i>r.stepAfter.startValue&&(i=r.stepAfter.startValue-n),t=n>r.thisStep.startValue?r.thisStep.step:!1!==r.stepBefore.step&&n-r.stepBefore.highestStep,100===e?i=null:0===e&&(t=null);e=b.countStepDecimals();return null!==i&&!1!==i&&(i=Number(i.toFixed(e))),[t=null!==t&&!1!==t?Number(t.toFixed(e)):t,i]}addClass(e=f,d.cssClasses.target),0===d.dir?addClass(e,d.cssClasses.ltr):addClass(e,d.cssClasses.rtl),0===d.ort?addClass(e,d.cssClasses.horizontal):addClass(e,d.cssClasses.vertical),addClass(e,\"rtl\"===getComputedStyle(e).direction?d.cssClasses.textDirectionRtl:d.cssClasses.textDirectionLtr),r=N(e,d.cssClasses.base),function(t,e){var r=N(e,d.cssClasses.connects);a=[],(l=[]).push(P(r,t[0]));for(var n=0;n<d.handles;n++)a.push(w(e,n)),g[n]=n,l.push(P(r,t[n+1]))}(d.connect,r),(u=d.events).fixed||a.forEach(function(t,e){R(c.start,t.children[0],I,{handleNumbers:[e]})}),u.tap&&R(c.start,r,B,{}),u.hover&&R(c.move,r,K,{hover:!0}),u.drag&&l.forEach(function(e,t){var r,n,i,s,o;!1!==e&&0!==t&&t!==l.length-1&&(r=a[t-1],n=a[t],i=[e],s=[r,n],o=[t-1,t],addClass(e,d.cssClasses.draggable),u.fixed&&(i.push(r.children[0]),i.push(n.children[0])),u.dragAll&&(s=a,o=g),i.forEach(function(t){R(c.start,t,I,{handles:s,handleNumbers:o,connect:e})}))}),rt(d.start),d.pips&&O(d.pips),d.tooltips&&M(),J(\"update\"+INTERNAL_EVENT_NS.aria),q(\"update\"+INTERNAL_EVENT_NS.aria,function(t,e,s,r,o){g.forEach(function(t){var e=a[t],r=Y(m,t,0,!0,!0,!0),n=Y(m,t,100,!0,!0,!0),i=o[t],t=String(d.ariaFormat.to(s[t])),r=b.fromStepping(r).toFixed(1),n=b.fromStepping(n).toFixed(1),i=b.fromStepping(i).toFixed(1);e.children[0].setAttribute(\"aria-valuemin\",r),e.children[0].setAttribute(\"aria-valuemax\",n),e.children[0].setAttribute(\"aria-valuenow\",i),e.children[0].setAttribute(\"aria-valuetext\",t)})});var st={destroy:function(){for(J(INTERNAL_EVENT_NS.aria),J(INTERNAL_EVENT_NS.tooltips),Object.keys(d.cssClasses).forEach(function(t){removeClass(f,d.cssClasses[t])});f.firstChild;)f.removeChild(f.firstChild);delete f.noUiSlider},steps:function(){return g.map(it)},on:q,off:J,get:nt,set:rt,setHandle:function(t,e,r,n){if(!(0<=(t=Number(t))&&t<g.length))throw new Error(\"noUiSlider: invalid handle number, got: \"+t);Z(t,et(e,t),!0,!0,n),X(\"update\",t),r&&X(\"set\",t)},reset:function(t){rt(d.start,t)},__moveHandles:function(t,e,r){$(t,e,m,r)},options:s,updateOptions:function(e,t){var r=nt(),n=[\"margin\",\"limit\",\"padding\",\"range\",\"animate\",\"snap\",\"step\",\"format\",\"pips\",\"tooltips\"];n.forEach(function(t){void 0!==e[t]&&(s[t]=e[t])});var i=testOptions(s);n.forEach(function(t){void 0!==e[t]&&(d[t]=i[t])}),b=i.spectrum,d.margin=i.margin,d.limit=i.limit,d.padding=i.padding,d.pips?O(d.pips):L(),(d.tooltips?M:k)(),m=[],rt(isSet(e.start)?e.start:r,t)},target:f,removePips:L,removeTooltips:k,getPositions:function(){return m.slice()},getTooltips:function(){return i},getOrigins:function(){return a},pips:O};return st}function initialize(t,e){if(!t||!t.nodeName)throw new Error(\"noUiSlider: create requires a single element, got: \"+t);if(t.noUiSlider)throw new Error(\"noUiSlider: Slider was already initialized.\");e=scope(t,testOptions(e),e);return t.noUiSlider=e}export default{__spectrum:Spectrum,cssClasses:cssClasses,create:initialize};export{PipsMode,PipsType,initialize as create,cssClasses};"
  },
  {
    "path": "static/assets/vendor/nouislider/distribute/nouislider.mjs",
    "content": "\"use strict\";\nexport var PipsMode;\n(function (PipsMode) {\n    PipsMode[\"Range\"] = \"range\";\n    PipsMode[\"Steps\"] = \"steps\";\n    PipsMode[\"Positions\"] = \"positions\";\n    PipsMode[\"Count\"] = \"count\";\n    PipsMode[\"Values\"] = \"values\";\n})(PipsMode || (PipsMode = {}));\nexport var PipsType;\n(function (PipsType) {\n    PipsType[PipsType[\"None\"] = -1] = \"None\";\n    PipsType[PipsType[\"NoValue\"] = 0] = \"NoValue\";\n    PipsType[PipsType[\"LargeValue\"] = 1] = \"LargeValue\";\n    PipsType[PipsType[\"SmallValue\"] = 2] = \"SmallValue\";\n})(PipsType || (PipsType = {}));\n//region Helper Methods\nfunction isValidFormatter(entry) {\n    return isValidPartialFormatter(entry) && typeof entry.from === \"function\";\n}\nfunction isValidPartialFormatter(entry) {\n    // partial formatters only need a to function and not a from function\n    return typeof entry === \"object\" && typeof entry.to === \"function\";\n}\nfunction removeElement(el) {\n    el.parentElement.removeChild(el);\n}\nfunction isSet(value) {\n    return value !== null && value !== undefined;\n}\n// Bindable version\nfunction preventDefault(e) {\n    e.preventDefault();\n}\n// Removes duplicates from an array.\nfunction unique(array) {\n    return array.filter(function (a) {\n        return !this[a] ? (this[a] = true) : false;\n    }, {});\n}\n// Round a value to the closest 'to'.\nfunction closest(value, to) {\n    return Math.round(value / to) * to;\n}\n// Current position of an element relative to the document.\nfunction offset(elem, orientation) {\n    var rect = elem.getBoundingClientRect();\n    var doc = elem.ownerDocument;\n    var docElem = doc.documentElement;\n    var pageOffset = getPageOffset(doc);\n    // getBoundingClientRect contains left scroll in Chrome on Android.\n    // I haven't found a feature detection that proves this. Worst case\n    // scenario on mis-match: the 'tap' feature on horizontal sliders breaks.\n    if (/webkit.*Chrome.*Mobile/i.test(navigator.userAgent)) {\n        pageOffset.x = 0;\n    }\n    return orientation ? rect.top + pageOffset.y - docElem.clientTop : rect.left + pageOffset.x - docElem.clientLeft;\n}\n// Checks whether a value is numerical.\nfunction isNumeric(a) {\n    return typeof a === \"number\" && !isNaN(a) && isFinite(a);\n}\n// Sets a class and removes it after [duration] ms.\nfunction addClassFor(element, className, duration) {\n    if (duration > 0) {\n        addClass(element, className);\n        setTimeout(function () {\n            removeClass(element, className);\n        }, duration);\n    }\n}\n// Limits a value to 0 - 100\nfunction limit(a) {\n    return Math.max(Math.min(a, 100), 0);\n}\n// Wraps a variable as an array, if it isn't one yet.\n// Note that an input array is returned by reference!\nfunction asArray(a) {\n    return Array.isArray(a) ? a : [a];\n}\n// Counts decimals\nfunction countDecimals(numStr) {\n    numStr = String(numStr);\n    var pieces = numStr.split(\".\");\n    return pieces.length > 1 ? pieces[1].length : 0;\n}\n// http://youmightnotneedjquery.com/#add_class\nfunction addClass(el, className) {\n    if (el.classList && !/\\s/.test(className)) {\n        el.classList.add(className);\n    }\n    else {\n        el.className += \" \" + className;\n    }\n}\n// http://youmightnotneedjquery.com/#remove_class\nfunction removeClass(el, className) {\n    if (el.classList && !/\\s/.test(className)) {\n        el.classList.remove(className);\n    }\n    else {\n        el.className = el.className.replace(new RegExp(\"(^|\\\\b)\" + className.split(\" \").join(\"|\") + \"(\\\\b|$)\", \"gi\"), \" \");\n    }\n}\n// https://plainjs.com/javascript/attributes/adding-removing-and-testing-for-classes-9/\nfunction hasClass(el, className) {\n    return el.classList ? el.classList.contains(className) : new RegExp(\"\\\\b\" + className + \"\\\\b\").test(el.className);\n}\n// https://developer.mozilla.org/en-US/docs/Web/API/Window/scrollY#Notes\nfunction getPageOffset(doc) {\n    var supportPageOffset = window.pageXOffset !== undefined;\n    var isCSS1Compat = (doc.compatMode || \"\") === \"CSS1Compat\";\n    var x = supportPageOffset\n        ? window.pageXOffset\n        : isCSS1Compat\n            ? doc.documentElement.scrollLeft\n            : doc.body.scrollLeft;\n    var y = supportPageOffset\n        ? window.pageYOffset\n        : isCSS1Compat\n            ? doc.documentElement.scrollTop\n            : doc.body.scrollTop;\n    return {\n        x: x,\n        y: y\n    };\n}\n// we provide a function to compute constants instead\n// of accessing window.* as soon as the module needs it\n// so that we do not compute anything if not needed\nfunction getActions() {\n    // Determine the events to bind. IE11 implements pointerEvents without\n    // a prefix, which breaks compatibility with the IE10 implementation.\n    return window.navigator.pointerEnabled\n        ? {\n            start: \"pointerdown\",\n            move: \"pointermove\",\n            end: \"pointerup\"\n        }\n        : window.navigator.msPointerEnabled\n            ? {\n                start: \"MSPointerDown\",\n                move: \"MSPointerMove\",\n                end: \"MSPointerUp\"\n            }\n            : {\n                start: \"mousedown touchstart\",\n                move: \"mousemove touchmove\",\n                end: \"mouseup touchend\"\n            };\n}\n// https://github.com/WICG/EventListenerOptions/blob/gh-pages/explainer.md\n// Issue #785\nfunction getSupportsPassive() {\n    var supportsPassive = false;\n    /* eslint-disable */\n    try {\n        var opts = Object.defineProperty({}, \"passive\", {\n            get: function () {\n                supportsPassive = true;\n            }\n        });\n        // @ts-ignore\n        window.addEventListener(\"test\", null, opts);\n    }\n    catch (e) { }\n    /* eslint-enable */\n    return supportsPassive;\n}\nfunction getSupportsTouchActionNone() {\n    return window.CSS && CSS.supports && CSS.supports(\"touch-action\", \"none\");\n}\n//endregion\n//region Range Calculation\n// Determine the size of a sub-range in relation to a full range.\nfunction subRangeRatio(pa, pb) {\n    return 100 / (pb - pa);\n}\n// (percentage) How many percent is this value of this range?\nfunction fromPercentage(range, value, startRange) {\n    return (value * 100) / (range[startRange + 1] - range[startRange]);\n}\n// (percentage) Where is this value on this range?\nfunction toPercentage(range, value) {\n    return fromPercentage(range, range[0] < 0 ? value + Math.abs(range[0]) : value - range[0], 0);\n}\n// (value) How much is this percentage on this range?\nfunction isPercentage(range, value) {\n    return (value * (range[1] - range[0])) / 100 + range[0];\n}\nfunction getJ(value, arr) {\n    var j = 1;\n    while (value >= arr[j]) {\n        j += 1;\n    }\n    return j;\n}\n// (percentage) Input a value, find where, on a scale of 0-100, it applies.\nfunction toStepping(xVal, xPct, value) {\n    if (value >= xVal.slice(-1)[0]) {\n        return 100;\n    }\n    var j = getJ(value, xVal);\n    var va = xVal[j - 1];\n    var vb = xVal[j];\n    var pa = xPct[j - 1];\n    var pb = xPct[j];\n    return pa + toPercentage([va, vb], value) / subRangeRatio(pa, pb);\n}\n// (value) Input a percentage, find where it is on the specified range.\nfunction fromStepping(xVal, xPct, value) {\n    // There is no range group that fits 100\n    if (value >= 100) {\n        return xVal.slice(-1)[0];\n    }\n    var j = getJ(value, xPct);\n    var va = xVal[j - 1];\n    var vb = xVal[j];\n    var pa = xPct[j - 1];\n    var pb = xPct[j];\n    return isPercentage([va, vb], (value - pa) * subRangeRatio(pa, pb));\n}\n// (percentage) Get the step that applies at a certain value.\nfunction getStep(xPct, xSteps, snap, value) {\n    if (value === 100) {\n        return value;\n    }\n    var j = getJ(value, xPct);\n    var a = xPct[j - 1];\n    var b = xPct[j];\n    // If 'snap' is set, steps are used as fixed points on the slider.\n    if (snap) {\n        // Find the closest position, a or b.\n        if (value - a > (b - a) / 2) {\n            return b;\n        }\n        return a;\n    }\n    if (!xSteps[j - 1]) {\n        return value;\n    }\n    return xPct[j - 1] + closest(value - xPct[j - 1], xSteps[j - 1]);\n}\n//endregion\n//region Spectrum\nvar Spectrum = /** @class */ (function () {\n    function Spectrum(entry, snap, singleStep) {\n        this.xPct = [];\n        this.xVal = [];\n        this.xSteps = [];\n        this.xNumSteps = [];\n        this.xHighestCompleteStep = [];\n        this.xSteps = [singleStep || false];\n        this.xNumSteps = [false];\n        this.snap = snap;\n        var index;\n        var ordered = [];\n        // Map the object keys to an array.\n        Object.keys(entry).forEach(function (index) {\n            ordered.push([asArray(entry[index]), index]);\n        });\n        // Sort all entries by value (numeric sort).\n        ordered.sort(function (a, b) {\n            return a[0][0] - b[0][0];\n        });\n        // Convert all entries to subranges.\n        for (index = 0; index < ordered.length; index++) {\n            this.handleEntryPoint(ordered[index][1], ordered[index][0]);\n        }\n        // Store the actual step values.\n        // xSteps is sorted in the same order as xPct and xVal.\n        this.xNumSteps = this.xSteps.slice(0);\n        // Convert all numeric steps to the percentage of the subrange they represent.\n        for (index = 0; index < this.xNumSteps.length; index++) {\n            this.handleStepPoint(index, this.xNumSteps[index]);\n        }\n    }\n    Spectrum.prototype.getDistance = function (value) {\n        var index;\n        var distances = [];\n        for (index = 0; index < this.xNumSteps.length - 1; index++) {\n            // last \"range\" can't contain step size as it is purely an endpoint.\n            var step = this.xNumSteps[index];\n            if (step && (value / step) % 1 !== 0) {\n                throw new Error(\"noUiSlider: 'limit', 'margin' and 'padding' of \" +\n                    this.xPct[index] +\n                    \"% range must be divisible by step.\");\n            }\n            // Calculate percentual distance in current range of limit, margin or padding\n            distances[index] = fromPercentage(this.xVal, value, index);\n        }\n        return distances;\n    };\n    // Calculate the percentual distance over the whole scale of ranges.\n    // direction: 0 = backwards / 1 = forwards\n    Spectrum.prototype.getAbsoluteDistance = function (value, distances, direction) {\n        var xPct_index = 0;\n        // Calculate range where to start calculation\n        if (value < this.xPct[this.xPct.length - 1]) {\n            while (value > this.xPct[xPct_index + 1]) {\n                xPct_index++;\n            }\n        }\n        else if (value === this.xPct[this.xPct.length - 1]) {\n            xPct_index = this.xPct.length - 2;\n        }\n        // If looking backwards and the value is exactly at a range separator then look one range further\n        if (!direction && value === this.xPct[xPct_index + 1]) {\n            xPct_index++;\n        }\n        if (distances === null) {\n            distances = [];\n        }\n        var start_factor;\n        var rest_factor = 1;\n        var rest_rel_distance = distances[xPct_index];\n        var range_pct = 0;\n        var rel_range_distance = 0;\n        var abs_distance_counter = 0;\n        var range_counter = 0;\n        // Calculate what part of the start range the value is\n        if (direction) {\n            start_factor = (value - this.xPct[xPct_index]) / (this.xPct[xPct_index + 1] - this.xPct[xPct_index]);\n        }\n        else {\n            start_factor = (this.xPct[xPct_index + 1] - value) / (this.xPct[xPct_index + 1] - this.xPct[xPct_index]);\n        }\n        // Do until the complete distance across ranges is calculated\n        while (rest_rel_distance > 0) {\n            // Calculate the percentage of total range\n            range_pct = this.xPct[xPct_index + 1 + range_counter] - this.xPct[xPct_index + range_counter];\n            // Detect if the margin, padding or limit is larger then the current range and calculate\n            if (distances[xPct_index + range_counter] * rest_factor + 100 - start_factor * 100 > 100) {\n                // If larger then take the percentual distance of the whole range\n                rel_range_distance = range_pct * start_factor;\n                // Rest factor of relative percentual distance still to be calculated\n                rest_factor = (rest_rel_distance - 100 * start_factor) / distances[xPct_index + range_counter];\n                // Set start factor to 1 as for next range it does not apply.\n                start_factor = 1;\n            }\n            else {\n                // If smaller or equal then take the percentual distance of the calculate percentual part of that range\n                rel_range_distance = ((distances[xPct_index + range_counter] * range_pct) / 100) * rest_factor;\n                // No rest left as the rest fits in current range\n                rest_factor = 0;\n            }\n            if (direction) {\n                abs_distance_counter = abs_distance_counter - rel_range_distance;\n                // Limit range to first range when distance becomes outside of minimum range\n                if (this.xPct.length + range_counter >= 1) {\n                    range_counter--;\n                }\n            }\n            else {\n                abs_distance_counter = abs_distance_counter + rel_range_distance;\n                // Limit range to last range when distance becomes outside of maximum range\n                if (this.xPct.length - range_counter >= 1) {\n                    range_counter++;\n                }\n            }\n            // Rest of relative percentual distance still to be calculated\n            rest_rel_distance = distances[xPct_index + range_counter] * rest_factor;\n        }\n        return value + abs_distance_counter;\n    };\n    Spectrum.prototype.toStepping = function (value) {\n        value = toStepping(this.xVal, this.xPct, value);\n        return value;\n    };\n    Spectrum.prototype.fromStepping = function (value) {\n        return fromStepping(this.xVal, this.xPct, value);\n    };\n    Spectrum.prototype.getStep = function (value) {\n        value = getStep(this.xPct, this.xSteps, this.snap, value);\n        return value;\n    };\n    Spectrum.prototype.getDefaultStep = function (value, isDown, size) {\n        var j = getJ(value, this.xPct);\n        // When at the top or stepping down, look at the previous sub-range\n        if (value === 100 || (isDown && value === this.xPct[j - 1])) {\n            j = Math.max(j - 1, 1);\n        }\n        return (this.xVal[j] - this.xVal[j - 1]) / size;\n    };\n    Spectrum.prototype.getNearbySteps = function (value) {\n        var j = getJ(value, this.xPct);\n        return {\n            stepBefore: {\n                startValue: this.xVal[j - 2],\n                step: this.xNumSteps[j - 2],\n                highestStep: this.xHighestCompleteStep[j - 2]\n            },\n            thisStep: {\n                startValue: this.xVal[j - 1],\n                step: this.xNumSteps[j - 1],\n                highestStep: this.xHighestCompleteStep[j - 1]\n            },\n            stepAfter: {\n                startValue: this.xVal[j],\n                step: this.xNumSteps[j],\n                highestStep: this.xHighestCompleteStep[j]\n            }\n        };\n    };\n    Spectrum.prototype.countStepDecimals = function () {\n        var stepDecimals = this.xNumSteps.map(countDecimals);\n        return Math.max.apply(null, stepDecimals);\n    };\n    Spectrum.prototype.hasNoSize = function () {\n        return this.xVal[0] === this.xVal[this.xVal.length - 1];\n    };\n    // Outside testing\n    Spectrum.prototype.convert = function (value) {\n        return this.getStep(this.toStepping(value));\n    };\n    Spectrum.prototype.handleEntryPoint = function (index, value) {\n        var percentage;\n        // Covert min/max syntax to 0 and 100.\n        if (index === \"min\") {\n            percentage = 0;\n        }\n        else if (index === \"max\") {\n            percentage = 100;\n        }\n        else {\n            percentage = parseFloat(index);\n        }\n        // Check for correct input.\n        if (!isNumeric(percentage) || !isNumeric(value[0])) {\n            throw new Error(\"noUiSlider: 'range' value isn't numeric.\");\n        }\n        // Store values.\n        this.xPct.push(percentage);\n        this.xVal.push(value[0]);\n        var value1 = Number(value[1]);\n        // NaN will evaluate to false too, but to keep\n        // logging clear, set step explicitly. Make sure\n        // not to override the 'step' setting with false.\n        if (!percentage) {\n            if (!isNaN(value1)) {\n                this.xSteps[0] = value1;\n            }\n        }\n        else {\n            this.xSteps.push(isNaN(value1) ? false : value1);\n        }\n        this.xHighestCompleteStep.push(0);\n    };\n    Spectrum.prototype.handleStepPoint = function (i, n) {\n        // Ignore 'false' stepping.\n        if (!n) {\n            return;\n        }\n        // Step over zero-length ranges (#948);\n        if (this.xVal[i] === this.xVal[i + 1]) {\n            this.xSteps[i] = this.xHighestCompleteStep[i] = this.xVal[i];\n            return;\n        }\n        // Factor to range ratio\n        this.xSteps[i] =\n            fromPercentage([this.xVal[i], this.xVal[i + 1]], n, 0) / subRangeRatio(this.xPct[i], this.xPct[i + 1]);\n        var totalSteps = (this.xVal[i + 1] - this.xVal[i]) / this.xNumSteps[i];\n        var highestStep = Math.ceil(Number(totalSteps.toFixed(3)) - 1);\n        var step = this.xVal[i] + this.xNumSteps[i] * highestStep;\n        this.xHighestCompleteStep[i] = step;\n    };\n    return Spectrum;\n}());\n//endregion\n//region Options\n/*\tEvery input option is tested and parsed. This will prevent\n    endless validation in internal methods. These tests are\n    structured with an item for every option available. An\n    option can be marked as required by setting the 'r' flag.\n    The testing function is provided with three arguments:\n        - The provided value for the option;\n        - A reference to the options object;\n        - The name for the option;\n\n    The testing function returns false when an error is detected,\n    or true when everything is OK. It can also modify the option\n    object, to make sure all values can be correctly looped elsewhere. */\n//region Defaults\nvar defaultFormatter = {\n    to: function (value) {\n        return value === undefined ? \"\" : value.toFixed(2);\n    },\n    from: Number\n};\nvar cssClasses = {\n    target: \"target\",\n    base: \"base\",\n    origin: \"origin\",\n    handle: \"handle\",\n    handleLower: \"handle-lower\",\n    handleUpper: \"handle-upper\",\n    touchArea: \"touch-area\",\n    horizontal: \"horizontal\",\n    vertical: \"vertical\",\n    background: \"background\",\n    connect: \"connect\",\n    connects: \"connects\",\n    ltr: \"ltr\",\n    rtl: \"rtl\",\n    textDirectionLtr: \"txt-dir-ltr\",\n    textDirectionRtl: \"txt-dir-rtl\",\n    draggable: \"draggable\",\n    drag: \"state-drag\",\n    tap: \"state-tap\",\n    active: \"active\",\n    tooltip: \"tooltip\",\n    pips: \"pips\",\n    pipsHorizontal: \"pips-horizontal\",\n    pipsVertical: \"pips-vertical\",\n    marker: \"marker\",\n    markerHorizontal: \"marker-horizontal\",\n    markerVertical: \"marker-vertical\",\n    markerNormal: \"marker-normal\",\n    markerLarge: \"marker-large\",\n    markerSub: \"marker-sub\",\n    value: \"value\",\n    valueHorizontal: \"value-horizontal\",\n    valueVertical: \"value-vertical\",\n    valueNormal: \"value-normal\",\n    valueLarge: \"value-large\",\n    valueSub: \"value-sub\"\n};\n// Namespaces of internal event listeners\nvar INTERNAL_EVENT_NS = {\n    tooltips: \".__tooltips\",\n    aria: \".__aria\"\n};\n//endregion\nfunction testStep(parsed, entry) {\n    if (!isNumeric(entry)) {\n        throw new Error(\"noUiSlider: 'step' is not numeric.\");\n    }\n    // The step option can still be used to set stepping\n    // for linear sliders. Overwritten if set in 'range'.\n    parsed.singleStep = entry;\n}\nfunction testKeyboardPageMultiplier(parsed, entry) {\n    if (!isNumeric(entry)) {\n        throw new Error(\"noUiSlider: 'keyboardPageMultiplier' is not numeric.\");\n    }\n    parsed.keyboardPageMultiplier = entry;\n}\nfunction testKeyboardMultiplier(parsed, entry) {\n    if (!isNumeric(entry)) {\n        throw new Error(\"noUiSlider: 'keyboardMultiplier' is not numeric.\");\n    }\n    parsed.keyboardMultiplier = entry;\n}\nfunction testKeyboardDefaultStep(parsed, entry) {\n    if (!isNumeric(entry)) {\n        throw new Error(\"noUiSlider: 'keyboardDefaultStep' is not numeric.\");\n    }\n    parsed.keyboardDefaultStep = entry;\n}\nfunction testRange(parsed, entry) {\n    // Filter incorrect input.\n    if (typeof entry !== \"object\" || Array.isArray(entry)) {\n        throw new Error(\"noUiSlider: 'range' is not an object.\");\n    }\n    // Catch missing start or end.\n    if (entry.min === undefined || entry.max === undefined) {\n        throw new Error(\"noUiSlider: Missing 'min' or 'max' in 'range'.\");\n    }\n    parsed.spectrum = new Spectrum(entry, parsed.snap || false, parsed.singleStep);\n}\nfunction testStart(parsed, entry) {\n    entry = asArray(entry);\n    // Validate input. Values aren't tested, as the public .val method\n    // will always provide a valid location.\n    if (!Array.isArray(entry) || !entry.length) {\n        throw new Error(\"noUiSlider: 'start' option is incorrect.\");\n    }\n    // Store the number of handles.\n    parsed.handles = entry.length;\n    // When the slider is initialized, the .val method will\n    // be called with the start options.\n    parsed.start = entry;\n}\nfunction testSnap(parsed, entry) {\n    if (typeof entry !== \"boolean\") {\n        throw new Error(\"noUiSlider: 'snap' option must be a boolean.\");\n    }\n    // Enforce 100% stepping within subranges.\n    parsed.snap = entry;\n}\nfunction testAnimate(parsed, entry) {\n    if (typeof entry !== \"boolean\") {\n        throw new Error(\"noUiSlider: 'animate' option must be a boolean.\");\n    }\n    // Enforce 100% stepping within subranges.\n    parsed.animate = entry;\n}\nfunction testAnimationDuration(parsed, entry) {\n    if (typeof entry !== \"number\") {\n        throw new Error(\"noUiSlider: 'animationDuration' option must be a number.\");\n    }\n    parsed.animationDuration = entry;\n}\nfunction testConnect(parsed, entry) {\n    var connect = [false];\n    var i;\n    // Map legacy options\n    if (entry === \"lower\") {\n        entry = [true, false];\n    }\n    else if (entry === \"upper\") {\n        entry = [false, true];\n    }\n    // Handle boolean options\n    if (entry === true || entry === false) {\n        for (i = 1; i < parsed.handles; i++) {\n            connect.push(entry);\n        }\n        connect.push(false);\n    }\n    // Reject invalid input\n    else if (!Array.isArray(entry) || !entry.length || entry.length !== parsed.handles + 1) {\n        throw new Error(\"noUiSlider: 'connect' option doesn't match handle count.\");\n    }\n    else {\n        connect = entry;\n    }\n    parsed.connect = connect;\n}\nfunction testOrientation(parsed, entry) {\n    // Set orientation to an a numerical value for easy\n    // array selection.\n    switch (entry) {\n        case \"horizontal\":\n            parsed.ort = 0;\n            break;\n        case \"vertical\":\n            parsed.ort = 1;\n            break;\n        default:\n            throw new Error(\"noUiSlider: 'orientation' option is invalid.\");\n    }\n}\nfunction testMargin(parsed, entry) {\n    if (!isNumeric(entry)) {\n        throw new Error(\"noUiSlider: 'margin' option must be numeric.\");\n    }\n    // Issue #582\n    if (entry === 0) {\n        return;\n    }\n    parsed.margin = parsed.spectrum.getDistance(entry);\n}\nfunction testLimit(parsed, entry) {\n    if (!isNumeric(entry)) {\n        throw new Error(\"noUiSlider: 'limit' option must be numeric.\");\n    }\n    parsed.limit = parsed.spectrum.getDistance(entry);\n    if (!parsed.limit || parsed.handles < 2) {\n        throw new Error(\"noUiSlider: 'limit' option is only supported on linear sliders with 2 or more handles.\");\n    }\n}\nfunction testPadding(parsed, entry) {\n    var index;\n    if (!isNumeric(entry) && !Array.isArray(entry)) {\n        throw new Error(\"noUiSlider: 'padding' option must be numeric or array of exactly 2 numbers.\");\n    }\n    if (Array.isArray(entry) && !(entry.length === 2 || isNumeric(entry[0]) || isNumeric(entry[1]))) {\n        throw new Error(\"noUiSlider: 'padding' option must be numeric or array of exactly 2 numbers.\");\n    }\n    if (entry === 0) {\n        return;\n    }\n    if (!Array.isArray(entry)) {\n        entry = [entry, entry];\n    }\n    // 'getDistance' returns false for invalid values.\n    parsed.padding = [parsed.spectrum.getDistance(entry[0]), parsed.spectrum.getDistance(entry[1])];\n    for (index = 0; index < parsed.spectrum.xNumSteps.length - 1; index++) {\n        // last \"range\" can't contain step size as it is purely an endpoint.\n        if (parsed.padding[0][index] < 0 || parsed.padding[1][index] < 0) {\n            throw new Error(\"noUiSlider: 'padding' option must be a positive number(s).\");\n        }\n    }\n    var totalPadding = entry[0] + entry[1];\n    var firstValue = parsed.spectrum.xVal[0];\n    var lastValue = parsed.spectrum.xVal[parsed.spectrum.xVal.length - 1];\n    if (totalPadding / (lastValue - firstValue) > 1) {\n        throw new Error(\"noUiSlider: 'padding' option must not exceed 100% of the range.\");\n    }\n}\nfunction testDirection(parsed, entry) {\n    // Set direction as a numerical value for easy parsing.\n    // Invert connection for RTL sliders, so that the proper\n    // handles get the connect/background classes.\n    switch (entry) {\n        case \"ltr\":\n            parsed.dir = 0;\n            break;\n        case \"rtl\":\n            parsed.dir = 1;\n            break;\n        default:\n            throw new Error(\"noUiSlider: 'direction' option was not recognized.\");\n    }\n}\nfunction testBehaviour(parsed, entry) {\n    // Make sure the input is a string.\n    if (typeof entry !== \"string\") {\n        throw new Error(\"noUiSlider: 'behaviour' must be a string containing options.\");\n    }\n    // Check if the string contains any keywords.\n    // None are required.\n    var tap = entry.indexOf(\"tap\") >= 0;\n    var drag = entry.indexOf(\"drag\") >= 0;\n    var fixed = entry.indexOf(\"fixed\") >= 0;\n    var snap = entry.indexOf(\"snap\") >= 0;\n    var hover = entry.indexOf(\"hover\") >= 0;\n    var unconstrained = entry.indexOf(\"unconstrained\") >= 0;\n    var dragAll = entry.indexOf(\"drag-all\") >= 0;\n    if (fixed) {\n        if (parsed.handles !== 2) {\n            throw new Error(\"noUiSlider: 'fixed' behaviour must be used with 2 handles\");\n        }\n        // Use margin to enforce fixed state\n        testMargin(parsed, parsed.start[1] - parsed.start[0]);\n    }\n    if (unconstrained && (parsed.margin || parsed.limit)) {\n        throw new Error(\"noUiSlider: 'unconstrained' behaviour cannot be used with margin or limit\");\n    }\n    parsed.events = {\n        tap: tap || snap,\n        drag: drag,\n        dragAll: dragAll,\n        fixed: fixed,\n        snap: snap,\n        hover: hover,\n        unconstrained: unconstrained\n    };\n}\nfunction testTooltips(parsed, entry) {\n    if (entry === false) {\n        return;\n    }\n    if (entry === true || isValidPartialFormatter(entry)) {\n        parsed.tooltips = [];\n        for (var i = 0; i < parsed.handles; i++) {\n            parsed.tooltips.push(entry);\n        }\n    }\n    else {\n        entry = asArray(entry);\n        if (entry.length !== parsed.handles) {\n            throw new Error(\"noUiSlider: must pass a formatter for all handles.\");\n        }\n        entry.forEach(function (formatter) {\n            if (typeof formatter !== \"boolean\" && !isValidPartialFormatter(formatter)) {\n                throw new Error(\"noUiSlider: 'tooltips' must be passed a formatter or 'false'.\");\n            }\n        });\n        parsed.tooltips = entry;\n    }\n}\nfunction testHandleAttributes(parsed, entry) {\n    if (entry.length !== parsed.handles) {\n        throw new Error(\"noUiSlider: must pass a attributes for all handles.\");\n    }\n    parsed.handleAttributes = entry;\n}\nfunction testAriaFormat(parsed, entry) {\n    if (!isValidPartialFormatter(entry)) {\n        throw new Error(\"noUiSlider: 'ariaFormat' requires 'to' method.\");\n    }\n    parsed.ariaFormat = entry;\n}\nfunction testFormat(parsed, entry) {\n    if (!isValidFormatter(entry)) {\n        throw new Error(\"noUiSlider: 'format' requires 'to' and 'from' methods.\");\n    }\n    parsed.format = entry;\n}\nfunction testKeyboardSupport(parsed, entry) {\n    if (typeof entry !== \"boolean\") {\n        throw new Error(\"noUiSlider: 'keyboardSupport' option must be a boolean.\");\n    }\n    parsed.keyboardSupport = entry;\n}\nfunction testDocumentElement(parsed, entry) {\n    // This is an advanced option. Passed values are used without validation.\n    parsed.documentElement = entry;\n}\nfunction testCssPrefix(parsed, entry) {\n    if (typeof entry !== \"string\" && entry !== false) {\n        throw new Error(\"noUiSlider: 'cssPrefix' must be a string or `false`.\");\n    }\n    parsed.cssPrefix = entry;\n}\nfunction testCssClasses(parsed, entry) {\n    if (typeof entry !== \"object\") {\n        throw new Error(\"noUiSlider: 'cssClasses' must be an object.\");\n    }\n    if (typeof parsed.cssPrefix === \"string\") {\n        parsed.cssClasses = {};\n        Object.keys(entry).forEach(function (key) {\n            parsed.cssClasses[key] = parsed.cssPrefix + entry[key];\n        });\n    }\n    else {\n        parsed.cssClasses = entry;\n    }\n}\n// Test all developer settings and parse to assumption-safe values.\nfunction testOptions(options) {\n    // To prove a fix for #537, freeze options here.\n    // If the object is modified, an error will be thrown.\n    // Object.freeze(options);\n    var parsed = {\n        margin: null,\n        limit: null,\n        padding: null,\n        animate: true,\n        animationDuration: 300,\n        ariaFormat: defaultFormatter,\n        format: defaultFormatter\n    };\n    // Tests are executed in the order they are presented here.\n    var tests = {\n        step: { r: false, t: testStep },\n        keyboardPageMultiplier: { r: false, t: testKeyboardPageMultiplier },\n        keyboardMultiplier: { r: false, t: testKeyboardMultiplier },\n        keyboardDefaultStep: { r: false, t: testKeyboardDefaultStep },\n        start: { r: true, t: testStart },\n        connect: { r: true, t: testConnect },\n        direction: { r: true, t: testDirection },\n        snap: { r: false, t: testSnap },\n        animate: { r: false, t: testAnimate },\n        animationDuration: { r: false, t: testAnimationDuration },\n        range: { r: true, t: testRange },\n        orientation: { r: false, t: testOrientation },\n        margin: { r: false, t: testMargin },\n        limit: { r: false, t: testLimit },\n        padding: { r: false, t: testPadding },\n        behaviour: { r: true, t: testBehaviour },\n        ariaFormat: { r: false, t: testAriaFormat },\n        format: { r: false, t: testFormat },\n        tooltips: { r: false, t: testTooltips },\n        keyboardSupport: { r: true, t: testKeyboardSupport },\n        documentElement: { r: false, t: testDocumentElement },\n        cssPrefix: { r: true, t: testCssPrefix },\n        cssClasses: { r: true, t: testCssClasses },\n        handleAttributes: { r: false, t: testHandleAttributes }\n    };\n    var defaults = {\n        connect: false,\n        direction: \"ltr\",\n        behaviour: \"tap\",\n        orientation: \"horizontal\",\n        keyboardSupport: true,\n        cssPrefix: \"noUi-\",\n        cssClasses: cssClasses,\n        keyboardPageMultiplier: 5,\n        keyboardMultiplier: 1,\n        keyboardDefaultStep: 10\n    };\n    // AriaFormat defaults to regular format, if any.\n    if (options.format && !options.ariaFormat) {\n        options.ariaFormat = options.format;\n    }\n    // Run all options through a testing mechanism to ensure correct\n    // input. It should be noted that options might get modified to\n    // be handled properly. E.g. wrapping integers in arrays.\n    Object.keys(tests).forEach(function (name) {\n        // If the option isn't set, but it is required, throw an error.\n        if (!isSet(options[name]) && defaults[name] === undefined) {\n            if (tests[name].r) {\n                throw new Error(\"noUiSlider: '\" + name + \"' is required.\");\n            }\n            return;\n        }\n        tests[name].t(parsed, !isSet(options[name]) ? defaults[name] : options[name]);\n    });\n    // Forward pips options\n    parsed.pips = options.pips;\n    // All recent browsers accept unprefixed transform.\n    // We need -ms- for IE9 and -webkit- for older Android;\n    // Assume use of -webkit- if unprefixed and -ms- are not supported.\n    // https://caniuse.com/#feat=transforms2d\n    var d = document.createElement(\"div\");\n    var msPrefix = d.style.msTransform !== undefined;\n    var noPrefix = d.style.transform !== undefined;\n    parsed.transformRule = noPrefix ? \"transform\" : msPrefix ? \"msTransform\" : \"webkitTransform\";\n    // Pips don't move, so we can place them using left/top.\n    var styles = [\n        [\"left\", \"top\"],\n        [\"right\", \"bottom\"]\n    ];\n    parsed.style = styles[parsed.dir][parsed.ort];\n    return parsed;\n}\n//endregion\nfunction scope(target, options, originalOptions) {\n    var actions = getActions();\n    var supportsTouchActionNone = getSupportsTouchActionNone();\n    var supportsPassive = supportsTouchActionNone && getSupportsPassive();\n    // All variables local to 'scope' are prefixed with 'scope_'\n    // Slider DOM Nodes\n    var scope_Target = target;\n    var scope_Base;\n    var scope_Handles;\n    var scope_Connects;\n    var scope_Pips;\n    var scope_Tooltips;\n    // Slider state values\n    var scope_Spectrum = options.spectrum;\n    var scope_Values = [];\n    var scope_Locations = [];\n    var scope_HandleNumbers = [];\n    var scope_ActiveHandlesCount = 0;\n    var scope_Events = {};\n    // Document Nodes\n    var scope_Document = target.ownerDocument;\n    var scope_DocumentElement = options.documentElement || scope_Document.documentElement;\n    var scope_Body = scope_Document.body;\n    // For horizontal sliders in standard ltr documents,\n    // make .noUi-origin overflow to the left so the document doesn't scroll.\n    var scope_DirOffset = scope_Document.dir === \"rtl\" || options.ort === 1 ? 0 : 100;\n    // Creates a node, adds it to target, returns the new node.\n    function addNodeTo(addTarget, className) {\n        var div = scope_Document.createElement(\"div\");\n        if (className) {\n            addClass(div, className);\n        }\n        addTarget.appendChild(div);\n        return div;\n    }\n    // Append a origin to the base\n    function addOrigin(base, handleNumber) {\n        var origin = addNodeTo(base, options.cssClasses.origin);\n        var handle = addNodeTo(origin, options.cssClasses.handle);\n        addNodeTo(handle, options.cssClasses.touchArea);\n        handle.setAttribute(\"data-handle\", String(handleNumber));\n        if (options.keyboardSupport) {\n            // https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/tabindex\n            // 0 = focusable and reachable\n            handle.setAttribute(\"tabindex\", \"0\");\n            handle.addEventListener(\"keydown\", function (event) {\n                return eventKeydown(event, handleNumber);\n            });\n        }\n        if (options.handleAttributes !== undefined) {\n            var attributes_1 = options.handleAttributes[handleNumber];\n            Object.keys(attributes_1).forEach(function (attribute) {\n                handle.setAttribute(attribute, attributes_1[attribute]);\n            });\n        }\n        handle.setAttribute(\"role\", \"slider\");\n        handle.setAttribute(\"aria-orientation\", options.ort ? \"vertical\" : \"horizontal\");\n        if (handleNumber === 0) {\n            addClass(handle, options.cssClasses.handleLower);\n        }\n        else if (handleNumber === options.handles - 1) {\n            addClass(handle, options.cssClasses.handleUpper);\n        }\n        return origin;\n    }\n    // Insert nodes for connect elements\n    function addConnect(base, add) {\n        if (!add) {\n            return false;\n        }\n        return addNodeTo(base, options.cssClasses.connect);\n    }\n    // Add handles to the slider base.\n    function addElements(connectOptions, base) {\n        var connectBase = addNodeTo(base, options.cssClasses.connects);\n        scope_Handles = [];\n        scope_Connects = [];\n        scope_Connects.push(addConnect(connectBase, connectOptions[0]));\n        // [::::O====O====O====]\n        // connectOptions = [0, 1, 1, 1]\n        for (var i = 0; i < options.handles; i++) {\n            // Keep a list of all added handles.\n            scope_Handles.push(addOrigin(base, i));\n            scope_HandleNumbers[i] = i;\n            scope_Connects.push(addConnect(connectBase, connectOptions[i + 1]));\n        }\n    }\n    // Initialize a single slider.\n    function addSlider(addTarget) {\n        // Apply classes and data to the target.\n        addClass(addTarget, options.cssClasses.target);\n        if (options.dir === 0) {\n            addClass(addTarget, options.cssClasses.ltr);\n        }\n        else {\n            addClass(addTarget, options.cssClasses.rtl);\n        }\n        if (options.ort === 0) {\n            addClass(addTarget, options.cssClasses.horizontal);\n        }\n        else {\n            addClass(addTarget, options.cssClasses.vertical);\n        }\n        var textDirection = getComputedStyle(addTarget).direction;\n        if (textDirection === \"rtl\") {\n            addClass(addTarget, options.cssClasses.textDirectionRtl);\n        }\n        else {\n            addClass(addTarget, options.cssClasses.textDirectionLtr);\n        }\n        return addNodeTo(addTarget, options.cssClasses.base);\n    }\n    function addTooltip(handle, handleNumber) {\n        if (!options.tooltips || !options.tooltips[handleNumber]) {\n            return false;\n        }\n        return addNodeTo(handle.firstChild, options.cssClasses.tooltip);\n    }\n    function isSliderDisabled() {\n        return scope_Target.hasAttribute(\"disabled\");\n    }\n    // Disable the slider dragging if any handle is disabled\n    function isHandleDisabled(handleNumber) {\n        var handleOrigin = scope_Handles[handleNumber];\n        return handleOrigin.hasAttribute(\"disabled\");\n    }\n    function removeTooltips() {\n        if (scope_Tooltips) {\n            removeEvent(\"update\" + INTERNAL_EVENT_NS.tooltips);\n            scope_Tooltips.forEach(function (tooltip) {\n                if (tooltip) {\n                    removeElement(tooltip);\n                }\n            });\n            scope_Tooltips = null;\n        }\n    }\n    // The tooltips option is a shorthand for using the 'update' event.\n    function tooltips() {\n        removeTooltips();\n        // Tooltips are added with options.tooltips in original order.\n        scope_Tooltips = scope_Handles.map(addTooltip);\n        bindEvent(\"update\" + INTERNAL_EVENT_NS.tooltips, function (values, handleNumber, unencoded) {\n            if (!scope_Tooltips || !options.tooltips) {\n                return;\n            }\n            if (scope_Tooltips[handleNumber] === false) {\n                return;\n            }\n            var formattedValue = values[handleNumber];\n            if (options.tooltips[handleNumber] !== true) {\n                formattedValue = options.tooltips[handleNumber].to(unencoded[handleNumber]);\n            }\n            scope_Tooltips[handleNumber].innerHTML = formattedValue;\n        });\n    }\n    function aria() {\n        removeEvent(\"update\" + INTERNAL_EVENT_NS.aria);\n        bindEvent(\"update\" + INTERNAL_EVENT_NS.aria, function (values, handleNumber, unencoded, tap, positions) {\n            // Update Aria Values for all handles, as a change in one changes min and max values for the next.\n            scope_HandleNumbers.forEach(function (index) {\n                var handle = scope_Handles[index];\n                var min = checkHandlePosition(scope_Locations, index, 0, true, true, true);\n                var max = checkHandlePosition(scope_Locations, index, 100, true, true, true);\n                var now = positions[index];\n                // Formatted value for display\n                var text = String(options.ariaFormat.to(unencoded[index]));\n                // Map to slider range values\n                min = scope_Spectrum.fromStepping(min).toFixed(1);\n                max = scope_Spectrum.fromStepping(max).toFixed(1);\n                now = scope_Spectrum.fromStepping(now).toFixed(1);\n                handle.children[0].setAttribute(\"aria-valuemin\", min);\n                handle.children[0].setAttribute(\"aria-valuemax\", max);\n                handle.children[0].setAttribute(\"aria-valuenow\", now);\n                handle.children[0].setAttribute(\"aria-valuetext\", text);\n            });\n        });\n    }\n    function getGroup(pips) {\n        // Use the range.\n        if (pips.mode === PipsMode.Range || pips.mode === PipsMode.Steps) {\n            return scope_Spectrum.xVal;\n        }\n        if (pips.mode === PipsMode.Count) {\n            if (pips.values < 2) {\n                throw new Error(\"noUiSlider: 'values' (>= 2) required for mode 'count'.\");\n            }\n            // Divide 0 - 100 in 'count' parts.\n            var interval = pips.values - 1;\n            var spread = 100 / interval;\n            var values = [];\n            // List these parts and have them handled as 'positions'.\n            while (interval--) {\n                values[interval] = interval * spread;\n            }\n            values.push(100);\n            return mapToRange(values, pips.stepped);\n        }\n        if (pips.mode === PipsMode.Positions) {\n            // Map all percentages to on-range values.\n            return mapToRange(pips.values, pips.stepped);\n        }\n        if (pips.mode === PipsMode.Values) {\n            // If the value must be stepped, it needs to be converted to a percentage first.\n            if (pips.stepped) {\n                return pips.values.map(function (value) {\n                    // Convert to percentage, apply step, return to value.\n                    return scope_Spectrum.fromStepping(scope_Spectrum.getStep(scope_Spectrum.toStepping(value)));\n                });\n            }\n            // Otherwise, we can simply use the values.\n            return pips.values;\n        }\n        return []; // pips.mode = never\n    }\n    function mapToRange(values, stepped) {\n        return values.map(function (value) {\n            return scope_Spectrum.fromStepping(stepped ? scope_Spectrum.getStep(value) : value);\n        });\n    }\n    function generateSpread(pips) {\n        function safeIncrement(value, increment) {\n            // Avoid floating point variance by dropping the smallest decimal places.\n            return Number((value + increment).toFixed(7));\n        }\n        var group = getGroup(pips);\n        var indexes = {};\n        var firstInRange = scope_Spectrum.xVal[0];\n        var lastInRange = scope_Spectrum.xVal[scope_Spectrum.xVal.length - 1];\n        var ignoreFirst = false;\n        var ignoreLast = false;\n        var prevPct = 0;\n        // Create a copy of the group, sort it and filter away all duplicates.\n        group = unique(group.slice().sort(function (a, b) {\n            return a - b;\n        }));\n        // Make sure the range starts with the first element.\n        if (group[0] !== firstInRange) {\n            group.unshift(firstInRange);\n            ignoreFirst = true;\n        }\n        // Likewise for the last one.\n        if (group[group.length - 1] !== lastInRange) {\n            group.push(lastInRange);\n            ignoreLast = true;\n        }\n        group.forEach(function (current, index) {\n            // Get the current step and the lower + upper positions.\n            var step;\n            var i;\n            var q;\n            var low = current;\n            var high = group[index + 1];\n            var newPct;\n            var pctDifference;\n            var pctPos;\n            var type;\n            var steps;\n            var realSteps;\n            var stepSize;\n            var isSteps = pips.mode === PipsMode.Steps;\n            // When using 'steps' mode, use the provided steps.\n            // Otherwise, we'll step on to the next subrange.\n            if (isSteps) {\n                step = scope_Spectrum.xNumSteps[index];\n            }\n            // Default to a 'full' step.\n            if (!step) {\n                step = high - low;\n            }\n            // If high is undefined we are at the last subrange. Make sure it iterates once (#1088)\n            if (high === undefined) {\n                high = low;\n            }\n            // Make sure step isn't 0, which would cause an infinite loop (#654)\n            step = Math.max(step, 0.0000001);\n            // Find all steps in the subrange.\n            for (i = low; i <= high; i = safeIncrement(i, step)) {\n                // Get the percentage value for the current step,\n                // calculate the size for the subrange.\n                newPct = scope_Spectrum.toStepping(i);\n                pctDifference = newPct - prevPct;\n                steps = pctDifference / (pips.density || 1);\n                realSteps = Math.round(steps);\n                // This ratio represents the amount of percentage-space a point indicates.\n                // For a density 1 the points/percentage = 1. For density 2, that percentage needs to be re-divided.\n                // Round the percentage offset to an even number, then divide by two\n                // to spread the offset on both sides of the range.\n                stepSize = pctDifference / realSteps;\n                // Divide all points evenly, adding the correct number to this subrange.\n                // Run up to <= so that 100% gets a point, event if ignoreLast is set.\n                for (q = 1; q <= realSteps; q += 1) {\n                    // The ratio between the rounded value and the actual size might be ~1% off.\n                    // Correct the percentage offset by the number of points\n                    // per subrange. density = 1 will result in 100 points on the\n                    // full range, 2 for 50, 4 for 25, etc.\n                    pctPos = prevPct + q * stepSize;\n                    indexes[pctPos.toFixed(5)] = [scope_Spectrum.fromStepping(pctPos), 0];\n                }\n                // Determine the point type.\n                type = group.indexOf(i) > -1 ? PipsType.LargeValue : isSteps ? PipsType.SmallValue : PipsType.NoValue;\n                // Enforce the 'ignoreFirst' option by overwriting the type for 0.\n                if (!index && ignoreFirst && i !== high) {\n                    type = 0;\n                }\n                if (!(i === high && ignoreLast)) {\n                    // Mark the 'type' of this point. 0 = plain, 1 = real value, 2 = step value.\n                    indexes[newPct.toFixed(5)] = [i, type];\n                }\n                // Update the percentage count.\n                prevPct = newPct;\n            }\n        });\n        return indexes;\n    }\n    function addMarking(spread, filterFunc, formatter) {\n        var _a, _b;\n        var element = scope_Document.createElement(\"div\");\n        var valueSizeClasses = (_a = {},\n            _a[PipsType.None] = \"\",\n            _a[PipsType.NoValue] = options.cssClasses.valueNormal,\n            _a[PipsType.LargeValue] = options.cssClasses.valueLarge,\n            _a[PipsType.SmallValue] = options.cssClasses.valueSub,\n            _a);\n        var markerSizeClasses = (_b = {},\n            _b[PipsType.None] = \"\",\n            _b[PipsType.NoValue] = options.cssClasses.markerNormal,\n            _b[PipsType.LargeValue] = options.cssClasses.markerLarge,\n            _b[PipsType.SmallValue] = options.cssClasses.markerSub,\n            _b);\n        var valueOrientationClasses = [options.cssClasses.valueHorizontal, options.cssClasses.valueVertical];\n        var markerOrientationClasses = [options.cssClasses.markerHorizontal, options.cssClasses.markerVertical];\n        addClass(element, options.cssClasses.pips);\n        addClass(element, options.ort === 0 ? options.cssClasses.pipsHorizontal : options.cssClasses.pipsVertical);\n        function getClasses(type, source) {\n            var a = source === options.cssClasses.value;\n            var orientationClasses = a ? valueOrientationClasses : markerOrientationClasses;\n            var sizeClasses = a ? valueSizeClasses : markerSizeClasses;\n            return source + \" \" + orientationClasses[options.ort] + \" \" + sizeClasses[type];\n        }\n        function addSpread(offset, value, type) {\n            // Apply the filter function, if it is set.\n            type = filterFunc ? filterFunc(value, type) : type;\n            if (type === PipsType.None) {\n                return;\n            }\n            // Add a marker for every point\n            var node = addNodeTo(element, false);\n            node.className = getClasses(type, options.cssClasses.marker);\n            node.style[options.style] = offset + \"%\";\n            // Values are only appended for points marked '1' or '2'.\n            if (type > PipsType.NoValue) {\n                node = addNodeTo(element, false);\n                node.className = getClasses(type, options.cssClasses.value);\n                node.setAttribute(\"data-value\", String(value));\n                node.style[options.style] = offset + \"%\";\n                node.innerHTML = String(formatter.to(value));\n            }\n        }\n        // Append all points.\n        Object.keys(spread).forEach(function (offset) {\n            addSpread(offset, spread[offset][0], spread[offset][1]);\n        });\n        return element;\n    }\n    function removePips() {\n        if (scope_Pips) {\n            removeElement(scope_Pips);\n            scope_Pips = null;\n        }\n    }\n    function pips(pips) {\n        // Fix #669\n        removePips();\n        var spread = generateSpread(pips);\n        var filter = pips.filter;\n        var format = pips.format || {\n            to: function (value) {\n                return String(Math.round(value));\n            }\n        };\n        scope_Pips = scope_Target.appendChild(addMarking(spread, filter, format));\n        return scope_Pips;\n    }\n    // Shorthand for base dimensions.\n    function baseSize() {\n        var rect = scope_Base.getBoundingClientRect();\n        var alt = (\"offset\" + [\"Width\", \"Height\"][options.ort]);\n        return options.ort === 0 ? rect.width || scope_Base[alt] : rect.height || scope_Base[alt];\n    }\n    // Handler for attaching events trough a proxy.\n    function attachEvent(events, element, callback, data) {\n        // This function can be used to 'filter' events to the slider.\n        // element is a node, not a nodeList\n        var method = function (event) {\n            var e = fixEvent(event, data.pageOffset, data.target || element);\n            // fixEvent returns false if this event has a different target\n            // when handling (multi-) touch events;\n            if (!e) {\n                return false;\n            }\n            // doNotReject is passed by all end events to make sure released touches\n            // are not rejected, leaving the slider \"stuck\" to the cursor;\n            if (isSliderDisabled() && !data.doNotReject) {\n                return false;\n            }\n            // Stop if an active 'tap' transition is taking place.\n            if (hasClass(scope_Target, options.cssClasses.tap) && !data.doNotReject) {\n                return false;\n            }\n            // Ignore right or middle clicks on start #454\n            if (events === actions.start && e.buttons !== undefined && e.buttons > 1) {\n                return false;\n            }\n            // Ignore right or middle clicks on start #454\n            if (data.hover && e.buttons) {\n                return false;\n            }\n            // 'supportsPassive' is only true if a browser also supports touch-action: none in CSS.\n            // iOS safari does not, so it doesn't get to benefit from passive scrolling. iOS does support\n            // touch-action: manipulation, but that allows panning, which breaks\n            // sliders after zooming/on non-responsive pages.\n            // See: https://bugs.webkit.org/show_bug.cgi?id=133112\n            if (!supportsPassive) {\n                e.preventDefault();\n            }\n            e.calcPoint = e.points[options.ort];\n            // Call the event handler with the event [ and additional data ].\n            callback(e, data);\n            return;\n        };\n        var methods = [];\n        // Bind a closure on the target for every event type.\n        events.split(\" \").forEach(function (eventName) {\n            element.addEventListener(eventName, method, supportsPassive ? { passive: true } : false);\n            methods.push([eventName, method]);\n        });\n        return methods;\n    }\n    // Provide a clean event with standardized offset values.\n    function fixEvent(e, pageOffset, eventTarget) {\n        // Filter the event to register the type, which can be\n        // touch, mouse or pointer. Offset changes need to be\n        // made on an event specific basis.\n        var touch = e.type.indexOf(\"touch\") === 0;\n        var mouse = e.type.indexOf(\"mouse\") === 0;\n        var pointer = e.type.indexOf(\"pointer\") === 0;\n        var x = 0;\n        var y = 0;\n        // IE10 implemented pointer events with a prefix;\n        if (e.type.indexOf(\"MSPointer\") === 0) {\n            pointer = true;\n        }\n        // Erroneous events seem to be passed in occasionally on iOS/iPadOS after user finishes interacting with\n        // the slider. They appear to be of type MouseEvent, yet they don't have usual properties set. Ignore\n        // events that have no touches or buttons associated with them. (#1057, #1079, #1095)\n        if (e.type === \"mousedown\" && !e.buttons && !e.touches) {\n            return false;\n        }\n        // The only thing one handle should be concerned about is the touches that originated on top of it.\n        if (touch) {\n            // Returns true if a touch originated on the target.\n            var isTouchOnTarget = function (checkTouch) {\n                var target = checkTouch.target;\n                return (target === eventTarget ||\n                    eventTarget.contains(target) ||\n                    (e.composed && e.composedPath().shift() === eventTarget));\n            };\n            // In the case of touchstart events, we need to make sure there is still no more than one\n            // touch on the target so we look amongst all touches.\n            if (e.type === \"touchstart\") {\n                var targetTouches = Array.prototype.filter.call(e.touches, isTouchOnTarget);\n                // Do not support more than one touch per handle.\n                if (targetTouches.length > 1) {\n                    return false;\n                }\n                x = targetTouches[0].pageX;\n                y = targetTouches[0].pageY;\n            }\n            else {\n                // In the other cases, find on changedTouches is enough.\n                var targetTouch = Array.prototype.find.call(e.changedTouches, isTouchOnTarget);\n                // Cancel if the target touch has not moved.\n                if (!targetTouch) {\n                    return false;\n                }\n                x = targetTouch.pageX;\n                y = targetTouch.pageY;\n            }\n        }\n        pageOffset = pageOffset || getPageOffset(scope_Document);\n        if (mouse || pointer) {\n            x = e.clientX + pageOffset.x;\n            y = e.clientY + pageOffset.y;\n        }\n        e.pageOffset = pageOffset;\n        e.points = [x, y];\n        e.cursor = mouse || pointer; // Fix #435\n        return e;\n    }\n    // Translate a coordinate in the document to a percentage on the slider\n    function calcPointToPercentage(calcPoint) {\n        var location = calcPoint - offset(scope_Base, options.ort);\n        var proposal = (location * 100) / baseSize();\n        // Clamp proposal between 0% and 100%\n        // Out-of-bound coordinates may occur when .noUi-base pseudo-elements\n        // are used (e.g. contained handles feature)\n        proposal = limit(proposal);\n        return options.dir ? 100 - proposal : proposal;\n    }\n    // Find handle closest to a certain percentage on the slider\n    function getClosestHandle(clickedPosition) {\n        var smallestDifference = 100;\n        var handleNumber = false;\n        scope_Handles.forEach(function (handle, index) {\n            // Disabled handles are ignored\n            if (isHandleDisabled(index)) {\n                return;\n            }\n            var handlePosition = scope_Locations[index];\n            var differenceWithThisHandle = Math.abs(handlePosition - clickedPosition);\n            // Initial state\n            var clickAtEdge = differenceWithThisHandle === 100 && smallestDifference === 100;\n            // Difference with this handle is smaller than the previously checked handle\n            var isCloser = differenceWithThisHandle < smallestDifference;\n            var isCloserAfter = differenceWithThisHandle <= smallestDifference && clickedPosition > handlePosition;\n            if (isCloser || isCloserAfter || clickAtEdge) {\n                handleNumber = index;\n                smallestDifference = differenceWithThisHandle;\n            }\n        });\n        return handleNumber;\n    }\n    // Fire 'end' when a mouse or pen leaves the document.\n    function documentLeave(event, data) {\n        if (event.type === \"mouseout\" &&\n            event.target.nodeName === \"HTML\" &&\n            event.relatedTarget === null) {\n            eventEnd(event, data);\n        }\n    }\n    // Handle movement on document for handle and range drag.\n    function eventMove(event, data) {\n        // Fix #498\n        // Check value of .buttons in 'start' to work around a bug in IE10 mobile (data.buttonsProperty).\n        // https://connect.microsoft.com/IE/feedback/details/927005/mobile-ie10-windows-phone-buttons-property-of-pointermove-event-always-zero\n        // IE9 has .buttons and .which zero on mousemove.\n        // Firefox breaks the spec MDN defines.\n        if (navigator.appVersion.indexOf(\"MSIE 9\") === -1 && event.buttons === 0 && data.buttonsProperty !== 0) {\n            return eventEnd(event, data);\n        }\n        // Check if we are moving up or down\n        var movement = (options.dir ? -1 : 1) * (event.calcPoint - data.startCalcPoint);\n        // Convert the movement into a percentage of the slider width/height\n        var proposal = (movement * 100) / data.baseSize;\n        moveHandles(movement > 0, proposal, data.locations, data.handleNumbers, data.connect);\n    }\n    // Unbind move events on document, call callbacks.\n    function eventEnd(event, data) {\n        // The handle is no longer active, so remove the class.\n        if (data.handle) {\n            removeClass(data.handle, options.cssClasses.active);\n            scope_ActiveHandlesCount -= 1;\n        }\n        // Unbind the move and end events, which are added on 'start'.\n        data.listeners.forEach(function (c) {\n            scope_DocumentElement.removeEventListener(c[0], c[1]);\n        });\n        if (scope_ActiveHandlesCount === 0) {\n            // Remove dragging class.\n            removeClass(scope_Target, options.cssClasses.drag);\n            setZindex();\n            // Remove cursor styles and text-selection events bound to the body.\n            if (event.cursor) {\n                scope_Body.style.cursor = \"\";\n                scope_Body.removeEventListener(\"selectstart\", preventDefault);\n            }\n        }\n        data.handleNumbers.forEach(function (handleNumber) {\n            fireEvent(\"change\", handleNumber);\n            fireEvent(\"set\", handleNumber);\n            fireEvent(\"end\", handleNumber);\n        });\n    }\n    // Bind move events on document.\n    function eventStart(event, data) {\n        // Ignore event if any handle is disabled\n        if (data.handleNumbers.some(isHandleDisabled)) {\n            return;\n        }\n        var handle;\n        if (data.handleNumbers.length === 1) {\n            var handleOrigin = scope_Handles[data.handleNumbers[0]];\n            handle = handleOrigin.children[0];\n            scope_ActiveHandlesCount += 1;\n            // Mark the handle as 'active' so it can be styled.\n            addClass(handle, options.cssClasses.active);\n        }\n        // A drag should never propagate up to the 'tap' event.\n        event.stopPropagation();\n        // Record the event listeners.\n        var listeners = [];\n        // Attach the move and end events.\n        var moveEvent = attachEvent(actions.move, scope_DocumentElement, eventMove, {\n            // The event target has changed so we need to propagate the original one so that we keep\n            // relying on it to extract target touches.\n            target: event.target,\n            handle: handle,\n            connect: data.connect,\n            listeners: listeners,\n            startCalcPoint: event.calcPoint,\n            baseSize: baseSize(),\n            pageOffset: event.pageOffset,\n            handleNumbers: data.handleNumbers,\n            buttonsProperty: event.buttons,\n            locations: scope_Locations.slice()\n        });\n        var endEvent = attachEvent(actions.end, scope_DocumentElement, eventEnd, {\n            target: event.target,\n            handle: handle,\n            listeners: listeners,\n            doNotReject: true,\n            handleNumbers: data.handleNumbers\n        });\n        var outEvent = attachEvent(\"mouseout\", scope_DocumentElement, documentLeave, {\n            target: event.target,\n            handle: handle,\n            listeners: listeners,\n            doNotReject: true,\n            handleNumbers: data.handleNumbers\n        });\n        // We want to make sure we pushed the listeners in the listener list rather than creating\n        // a new one as it has already been passed to the event handlers.\n        listeners.push.apply(listeners, moveEvent.concat(endEvent, outEvent));\n        // Text selection isn't an issue on touch devices,\n        // so adding cursor styles can be skipped.\n        if (event.cursor) {\n            // Prevent the 'I' cursor and extend the range-drag cursor.\n            scope_Body.style.cursor = getComputedStyle(event.target).cursor;\n            // Mark the target with a dragging state.\n            if (scope_Handles.length > 1) {\n                addClass(scope_Target, options.cssClasses.drag);\n            }\n            // Prevent text selection when dragging the handles.\n            // In noUiSlider <= 9.2.0, this was handled by calling preventDefault on mouse/touch start/move,\n            // which is scroll blocking. The selectstart event is supported by FireFox starting from version 52,\n            // meaning the only holdout is iOS Safari. This doesn't matter: text selection isn't triggered there.\n            // The 'cursor' flag is false.\n            // See: http://caniuse.com/#search=selectstart\n            scope_Body.addEventListener(\"selectstart\", preventDefault, false);\n        }\n        data.handleNumbers.forEach(function (handleNumber) {\n            fireEvent(\"start\", handleNumber);\n        });\n    }\n    // Move closest handle to tapped location.\n    function eventTap(event) {\n        // The tap event shouldn't propagate up\n        event.stopPropagation();\n        var proposal = calcPointToPercentage(event.calcPoint);\n        var handleNumber = getClosestHandle(proposal);\n        // Tackle the case that all handles are 'disabled'.\n        if (handleNumber === false) {\n            return;\n        }\n        // Flag the slider as it is now in a transitional state.\n        // Transition takes a configurable amount of ms (default 300). Re-enable the slider after that.\n        if (!options.events.snap) {\n            addClassFor(scope_Target, options.cssClasses.tap, options.animationDuration);\n        }\n        setHandle(handleNumber, proposal, true, true);\n        setZindex();\n        fireEvent(\"slide\", handleNumber, true);\n        fireEvent(\"update\", handleNumber, true);\n        if (!options.events.snap) {\n            fireEvent(\"change\", handleNumber, true);\n            fireEvent(\"set\", handleNumber, true);\n        }\n        else {\n            eventStart(event, { handleNumbers: [handleNumber] });\n        }\n    }\n    // Fires a 'hover' event for a hovered mouse/pen position.\n    function eventHover(event) {\n        var proposal = calcPointToPercentage(event.calcPoint);\n        var to = scope_Spectrum.getStep(proposal);\n        var value = scope_Spectrum.fromStepping(to);\n        Object.keys(scope_Events).forEach(function (targetEvent) {\n            if (\"hover\" === targetEvent.split(\".\")[0]) {\n                scope_Events[targetEvent].forEach(function (callback) {\n                    callback.call(scope_Self, value);\n                });\n            }\n        });\n    }\n    // Handles keydown on focused handles\n    // Don't move the document when pressing arrow keys on focused handles\n    function eventKeydown(event, handleNumber) {\n        if (isSliderDisabled() || isHandleDisabled(handleNumber)) {\n            return false;\n        }\n        var horizontalKeys = [\"Left\", \"Right\"];\n        var verticalKeys = [\"Down\", \"Up\"];\n        var largeStepKeys = [\"PageDown\", \"PageUp\"];\n        var edgeKeys = [\"Home\", \"End\"];\n        if (options.dir && !options.ort) {\n            // On an right-to-left slider, the left and right keys act inverted\n            horizontalKeys.reverse();\n        }\n        else if (options.ort && !options.dir) {\n            // On a top-to-bottom slider, the up and down keys act inverted\n            verticalKeys.reverse();\n            largeStepKeys.reverse();\n        }\n        // Strip \"Arrow\" for IE compatibility. https://developer.mozilla.org/en-US/docs/Web/API/KeyboardEvent/key\n        var key = event.key.replace(\"Arrow\", \"\");\n        var isLargeDown = key === largeStepKeys[0];\n        var isLargeUp = key === largeStepKeys[1];\n        var isDown = key === verticalKeys[0] || key === horizontalKeys[0] || isLargeDown;\n        var isUp = key === verticalKeys[1] || key === horizontalKeys[1] || isLargeUp;\n        var isMin = key === edgeKeys[0];\n        var isMax = key === edgeKeys[1];\n        if (!isDown && !isUp && !isMin && !isMax) {\n            return true;\n        }\n        event.preventDefault();\n        var to;\n        if (isUp || isDown) {\n            var direction = isDown ? 0 : 1;\n            var steps = getNextStepsForHandle(handleNumber);\n            var step = steps[direction];\n            // At the edge of a slider, do nothing\n            if (step === null) {\n                return false;\n            }\n            // No step set, use the default of 10% of the sub-range\n            if (step === false) {\n                step = scope_Spectrum.getDefaultStep(scope_Locations[handleNumber], isDown, options.keyboardDefaultStep);\n            }\n            if (isLargeUp || isLargeDown) {\n                step *= options.keyboardPageMultiplier;\n            }\n            else {\n                step *= options.keyboardMultiplier;\n            }\n            // Step over zero-length ranges (#948);\n            step = Math.max(step, 0.0000001);\n            // Decrement for down steps\n            step = (isDown ? -1 : 1) * step;\n            to = scope_Values[handleNumber] + step;\n        }\n        else if (isMax) {\n            // End key\n            to = options.spectrum.xVal[options.spectrum.xVal.length - 1];\n        }\n        else {\n            // Home key\n            to = options.spectrum.xVal[0];\n        }\n        setHandle(handleNumber, scope_Spectrum.toStepping(to), true, true);\n        fireEvent(\"slide\", handleNumber);\n        fireEvent(\"update\", handleNumber);\n        fireEvent(\"change\", handleNumber);\n        fireEvent(\"set\", handleNumber);\n        return false;\n    }\n    // Attach events to several slider parts.\n    function bindSliderEvents(behaviour) {\n        // Attach the standard drag event to the handles.\n        if (!behaviour.fixed) {\n            scope_Handles.forEach(function (handle, index) {\n                // These events are only bound to the visual handle\n                // element, not the 'real' origin element.\n                attachEvent(actions.start, handle.children[0], eventStart, {\n                    handleNumbers: [index]\n                });\n            });\n        }\n        // Attach the tap event to the slider base.\n        if (behaviour.tap) {\n            attachEvent(actions.start, scope_Base, eventTap, {});\n        }\n        // Fire hover events\n        if (behaviour.hover) {\n            attachEvent(actions.move, scope_Base, eventHover, {\n                hover: true\n            });\n        }\n        // Make the range draggable.\n        if (behaviour.drag) {\n            scope_Connects.forEach(function (connect, index) {\n                if (connect === false || index === 0 || index === scope_Connects.length - 1) {\n                    return;\n                }\n                var handleBefore = scope_Handles[index - 1];\n                var handleAfter = scope_Handles[index];\n                var eventHolders = [connect];\n                var handlesToDrag = [handleBefore, handleAfter];\n                var handleNumbersToDrag = [index - 1, index];\n                addClass(connect, options.cssClasses.draggable);\n                // When the range is fixed, the entire range can\n                // be dragged by the handles. The handle in the first\n                // origin will propagate the start event upward,\n                // but it needs to be bound manually on the other.\n                if (behaviour.fixed) {\n                    eventHolders.push(handleBefore.children[0]);\n                    eventHolders.push(handleAfter.children[0]);\n                }\n                if (behaviour.dragAll) {\n                    handlesToDrag = scope_Handles;\n                    handleNumbersToDrag = scope_HandleNumbers;\n                }\n                eventHolders.forEach(function (eventHolder) {\n                    attachEvent(actions.start, eventHolder, eventStart, {\n                        handles: handlesToDrag,\n                        handleNumbers: handleNumbersToDrag,\n                        connect: connect\n                    });\n                });\n            });\n        }\n    }\n    // Attach an event to this slider, possibly including a namespace\n    function bindEvent(namespacedEvent, callback) {\n        scope_Events[namespacedEvent] = scope_Events[namespacedEvent] || [];\n        scope_Events[namespacedEvent].push(callback);\n        // If the event bound is 'update,' fire it immediately for all handles.\n        if (namespacedEvent.split(\".\")[0] === \"update\") {\n            scope_Handles.forEach(function (a, index) {\n                fireEvent(\"update\", index);\n            });\n        }\n    }\n    function isInternalNamespace(namespace) {\n        return namespace === INTERNAL_EVENT_NS.aria || namespace === INTERNAL_EVENT_NS.tooltips;\n    }\n    // Undo attachment of event\n    function removeEvent(namespacedEvent) {\n        var event = namespacedEvent && namespacedEvent.split(\".\")[0];\n        var namespace = event ? namespacedEvent.substring(event.length) : namespacedEvent;\n        Object.keys(scope_Events).forEach(function (bind) {\n            var tEvent = bind.split(\".\")[0];\n            var tNamespace = bind.substring(tEvent.length);\n            if ((!event || event === tEvent) && (!namespace || namespace === tNamespace)) {\n                // only delete protected internal event if intentional\n                if (!isInternalNamespace(tNamespace) || namespace === tNamespace) {\n                    delete scope_Events[bind];\n                }\n            }\n        });\n    }\n    // External event handling\n    function fireEvent(eventName, handleNumber, tap) {\n        Object.keys(scope_Events).forEach(function (targetEvent) {\n            var eventType = targetEvent.split(\".\")[0];\n            if (eventName === eventType) {\n                scope_Events[targetEvent].forEach(function (callback) {\n                    callback.call(\n                    // Use the slider public API as the scope ('this')\n                    scope_Self, \n                    // Return values as array, so arg_1[arg_2] is always valid.\n                    scope_Values.map(options.format.to), \n                    // Handle index, 0 or 1\n                    handleNumber, \n                    // Un-formatted slider values\n                    scope_Values.slice(), \n                    // Event is fired by tap, true or false\n                    tap || false, \n                    // Left offset of the handle, in relation to the slider\n                    scope_Locations.slice(), \n                    // add the slider public API to an accessible parameter when this is unavailable\n                    scope_Self);\n                });\n            }\n        });\n    }\n    // Split out the handle positioning logic so the Move event can use it, too\n    function checkHandlePosition(reference, handleNumber, to, lookBackward, lookForward, getValue) {\n        var distance;\n        // For sliders with multiple handles, limit movement to the other handle.\n        // Apply the margin option by adding it to the handle positions.\n        if (scope_Handles.length > 1 && !options.events.unconstrained) {\n            if (lookBackward && handleNumber > 0) {\n                distance = scope_Spectrum.getAbsoluteDistance(reference[handleNumber - 1], options.margin, false);\n                to = Math.max(to, distance);\n            }\n            if (lookForward && handleNumber < scope_Handles.length - 1) {\n                distance = scope_Spectrum.getAbsoluteDistance(reference[handleNumber + 1], options.margin, true);\n                to = Math.min(to, distance);\n            }\n        }\n        // The limit option has the opposite effect, limiting handles to a\n        // maximum distance from another. Limit must be > 0, as otherwise\n        // handles would be unmovable.\n        if (scope_Handles.length > 1 && options.limit) {\n            if (lookBackward && handleNumber > 0) {\n                distance = scope_Spectrum.getAbsoluteDistance(reference[handleNumber - 1], options.limit, false);\n                to = Math.min(to, distance);\n            }\n            if (lookForward && handleNumber < scope_Handles.length - 1) {\n                distance = scope_Spectrum.getAbsoluteDistance(reference[handleNumber + 1], options.limit, true);\n                to = Math.max(to, distance);\n            }\n        }\n        // The padding option keeps the handles a certain distance from the\n        // edges of the slider. Padding must be > 0.\n        if (options.padding) {\n            if (handleNumber === 0) {\n                distance = scope_Spectrum.getAbsoluteDistance(0, options.padding[0], false);\n                to = Math.max(to, distance);\n            }\n            if (handleNumber === scope_Handles.length - 1) {\n                distance = scope_Spectrum.getAbsoluteDistance(100, options.padding[1], true);\n                to = Math.min(to, distance);\n            }\n        }\n        to = scope_Spectrum.getStep(to);\n        // Limit percentage to the 0 - 100 range\n        to = limit(to);\n        // Return false if handle can't move\n        if (to === reference[handleNumber] && !getValue) {\n            return false;\n        }\n        return to;\n    }\n    // Uses slider orientation to create CSS rules. a = base value;\n    function inRuleOrder(v, a) {\n        var o = options.ort;\n        return (o ? a : v) + \", \" + (o ? v : a);\n    }\n    // Moves handle(s) by a percentage\n    // (bool, % to move, [% where handle started, ...], [index in scope_Handles, ...])\n    function moveHandles(upward, proposal, locations, handleNumbers, connect) {\n        var proposals = locations.slice();\n        // Store first handle now, so we still have it in case handleNumbers is reversed\n        var firstHandle = handleNumbers[0];\n        var b = [!upward, upward];\n        var f = [upward, !upward];\n        // Copy handleNumbers so we don't change the dataset\n        handleNumbers = handleNumbers.slice();\n        // Check to see which handle is 'leading'.\n        // If that one can't move the second can't either.\n        if (upward) {\n            handleNumbers.reverse();\n        }\n        // Step 1: get the maximum percentage that any of the handles can move\n        if (handleNumbers.length > 1) {\n            handleNumbers.forEach(function (handleNumber, o) {\n                var to = checkHandlePosition(proposals, handleNumber, proposals[handleNumber] + proposal, b[o], f[o], false);\n                // Stop if one of the handles can't move.\n                if (to === false) {\n                    proposal = 0;\n                }\n                else {\n                    proposal = to - proposals[handleNumber];\n                    proposals[handleNumber] = to;\n                }\n            });\n        }\n        // If using one handle, check backward AND forward\n        else {\n            b = f = [true];\n        }\n        var state = false;\n        // Step 2: Try to set the handles with the found percentage\n        handleNumbers.forEach(function (handleNumber, o) {\n            state = setHandle(handleNumber, locations[handleNumber] + proposal, b[o], f[o]) || state;\n        });\n        // Step 3: If a handle moved, fire events\n        if (state) {\n            handleNumbers.forEach(function (handleNumber) {\n                fireEvent(\"update\", handleNumber);\n                fireEvent(\"slide\", handleNumber);\n            });\n            // If target is a connect, then fire drag event\n            if (connect != undefined) {\n                fireEvent(\"drag\", firstHandle);\n            }\n        }\n    }\n    // Takes a base value and an offset. This offset is used for the connect bar size.\n    // In the initial design for this feature, the origin element was 1% wide.\n    // Unfortunately, a rounding bug in Chrome makes it impossible to implement this feature\n    // in this manner: https://bugs.chromium.org/p/chromium/issues/detail?id=798223\n    function transformDirection(a, b) {\n        return options.dir ? 100 - a - b : a;\n    }\n    // Updates scope_Locations and scope_Values, updates visual state\n    function updateHandlePosition(handleNumber, to) {\n        // Update locations.\n        scope_Locations[handleNumber] = to;\n        // Convert the value to the slider stepping/range.\n        scope_Values[handleNumber] = scope_Spectrum.fromStepping(to);\n        var translation = 10 * (transformDirection(to, 0) - scope_DirOffset);\n        var translateRule = \"translate(\" + inRuleOrder(translation + \"%\", \"0\") + \")\";\n        scope_Handles[handleNumber].style[options.transformRule] = translateRule;\n        updateConnect(handleNumber);\n        updateConnect(handleNumber + 1);\n    }\n    // Handles before the slider middle are stacked later = higher,\n    // Handles after the middle later is lower\n    // [[7] [8] .......... | .......... [5] [4]\n    function setZindex() {\n        scope_HandleNumbers.forEach(function (handleNumber) {\n            var dir = scope_Locations[handleNumber] > 50 ? -1 : 1;\n            var zIndex = 3 + (scope_Handles.length + dir * handleNumber);\n            scope_Handles[handleNumber].style.zIndex = String(zIndex);\n        });\n    }\n    // Test suggested values and apply margin, step.\n    // if exactInput is true, don't run checkHandlePosition, then the handle can be placed in between steps (#436)\n    function setHandle(handleNumber, to, lookBackward, lookForward, exactInput) {\n        if (!exactInput) {\n            to = checkHandlePosition(scope_Locations, handleNumber, to, lookBackward, lookForward, false);\n        }\n        if (to === false) {\n            return false;\n        }\n        updateHandlePosition(handleNumber, to);\n        return true;\n    }\n    // Updates style attribute for connect nodes\n    function updateConnect(index) {\n        // Skip connects set to false\n        if (!scope_Connects[index]) {\n            return;\n        }\n        var l = 0;\n        var h = 100;\n        if (index !== 0) {\n            l = scope_Locations[index - 1];\n        }\n        if (index !== scope_Connects.length - 1) {\n            h = scope_Locations[index];\n        }\n        // We use two rules:\n        // 'translate' to change the left/top offset;\n        // 'scale' to change the width of the element;\n        // As the element has a width of 100%, a translation of 100% is equal to 100% of the parent (.noUi-base)\n        var connectWidth = h - l;\n        var translateRule = \"translate(\" + inRuleOrder(transformDirection(l, connectWidth) + \"%\", \"0\") + \")\";\n        var scaleRule = \"scale(\" + inRuleOrder(connectWidth / 100, \"1\") + \")\";\n        scope_Connects[index].style[options.transformRule] =\n            translateRule + \" \" + scaleRule;\n    }\n    // Parses value passed to .set method. Returns current value if not parse-able.\n    function resolveToValue(to, handleNumber) {\n        // Setting with null indicates an 'ignore'.\n        // Inputting 'false' is invalid.\n        if (to === null || to === false || to === undefined) {\n            return scope_Locations[handleNumber];\n        }\n        // If a formatted number was passed, attempt to decode it.\n        if (typeof to === \"number\") {\n            to = String(to);\n        }\n        to = options.format.from(to);\n        if (to !== false) {\n            to = scope_Spectrum.toStepping(to);\n        }\n        // If parsing the number failed, use the current value.\n        if (to === false || isNaN(to)) {\n            return scope_Locations[handleNumber];\n        }\n        return to;\n    }\n    // Set the slider value.\n    function valueSet(input, fireSetEvent, exactInput) {\n        var values = asArray(input);\n        var isInit = scope_Locations[0] === undefined;\n        // Event fires by default\n        fireSetEvent = fireSetEvent === undefined ? true : fireSetEvent;\n        // Animation is optional.\n        // Make sure the initial values were set before using animated placement.\n        if (options.animate && !isInit) {\n            addClassFor(scope_Target, options.cssClasses.tap, options.animationDuration);\n        }\n        // First pass, without lookAhead but with lookBackward. Values are set from left to right.\n        scope_HandleNumbers.forEach(function (handleNumber) {\n            setHandle(handleNumber, resolveToValue(values[handleNumber], handleNumber), true, false, exactInput);\n        });\n        var i = scope_HandleNumbers.length === 1 ? 0 : 1;\n        // Spread handles evenly across the slider if the range has no size (min=max)\n        if (isInit && scope_Spectrum.hasNoSize()) {\n            exactInput = true;\n            scope_Locations[0] = 0;\n            if (scope_HandleNumbers.length > 1) {\n                var space_1 = 100 / (scope_HandleNumbers.length - 1);\n                scope_HandleNumbers.forEach(function (handleNumber) {\n                    scope_Locations[handleNumber] = handleNumber * space_1;\n                });\n            }\n        }\n        // Secondary passes. Now that all base values are set, apply constraints.\n        // Iterate all handles to ensure constraints are applied for the entire slider (Issue #1009)\n        for (; i < scope_HandleNumbers.length; ++i) {\n            scope_HandleNumbers.forEach(function (handleNumber) {\n                setHandle(handleNumber, scope_Locations[handleNumber], true, true, exactInput);\n            });\n        }\n        setZindex();\n        scope_HandleNumbers.forEach(function (handleNumber) {\n            fireEvent(\"update\", handleNumber);\n            // Fire the event only for handles that received a new value, as per #579\n            if (values[handleNumber] !== null && fireSetEvent) {\n                fireEvent(\"set\", handleNumber);\n            }\n        });\n    }\n    // Reset slider to initial values\n    function valueReset(fireSetEvent) {\n        valueSet(options.start, fireSetEvent);\n    }\n    // Set value for a single handle\n    function valueSetHandle(handleNumber, value, fireSetEvent, exactInput) {\n        // Ensure numeric input\n        handleNumber = Number(handleNumber);\n        if (!(handleNumber >= 0 && handleNumber < scope_HandleNumbers.length)) {\n            throw new Error(\"noUiSlider: invalid handle number, got: \" + handleNumber);\n        }\n        // Look both backward and forward, since we don't want this handle to \"push\" other handles (#960);\n        // The exactInput argument can be used to ignore slider stepping (#436)\n        setHandle(handleNumber, resolveToValue(value, handleNumber), true, true, exactInput);\n        fireEvent(\"update\", handleNumber);\n        if (fireSetEvent) {\n            fireEvent(\"set\", handleNumber);\n        }\n    }\n    // Get the slider value.\n    function valueGet(unencoded) {\n        if (unencoded === void 0) { unencoded = false; }\n        if (unencoded) {\n            // return a copy of the raw values\n            return scope_Values.length === 1 ? scope_Values[0] : scope_Values.slice(0);\n        }\n        var values = scope_Values.map(options.format.to);\n        // If only one handle is used, return a single value.\n        if (values.length === 1) {\n            return values[0];\n        }\n        return values;\n    }\n    // Removes classes from the root and empties it.\n    function destroy() {\n        // remove protected internal listeners\n        removeEvent(INTERNAL_EVENT_NS.aria);\n        removeEvent(INTERNAL_EVENT_NS.tooltips);\n        Object.keys(options.cssClasses).forEach(function (key) {\n            removeClass(scope_Target, options.cssClasses[key]);\n        });\n        while (scope_Target.firstChild) {\n            scope_Target.removeChild(scope_Target.firstChild);\n        }\n        delete scope_Target.noUiSlider;\n    }\n    function getNextStepsForHandle(handleNumber) {\n        var location = scope_Locations[handleNumber];\n        var nearbySteps = scope_Spectrum.getNearbySteps(location);\n        var value = scope_Values[handleNumber];\n        var increment = nearbySteps.thisStep.step;\n        var decrement = null;\n        // If snapped, directly use defined step value\n        if (options.snap) {\n            return [\n                value - nearbySteps.stepBefore.startValue || null,\n                nearbySteps.stepAfter.startValue - value || null\n            ];\n        }\n        // If the next value in this step moves into the next step,\n        // the increment is the start of the next step - the current value\n        if (increment !== false) {\n            if (value + increment > nearbySteps.stepAfter.startValue) {\n                increment = nearbySteps.stepAfter.startValue - value;\n            }\n        }\n        // If the value is beyond the starting point\n        if (value > nearbySteps.thisStep.startValue) {\n            decrement = nearbySteps.thisStep.step;\n        }\n        else if (nearbySteps.stepBefore.step === false) {\n            decrement = false;\n        }\n        // If a handle is at the start of a step, it always steps back into the previous step first\n        else {\n            decrement = value - nearbySteps.stepBefore.highestStep;\n        }\n        // Now, if at the slider edges, there is no in/decrement\n        if (location === 100) {\n            increment = null;\n        }\n        else if (location === 0) {\n            decrement = null;\n        }\n        // As per #391, the comparison for the decrement step can have some rounding issues.\n        var stepDecimals = scope_Spectrum.countStepDecimals();\n        // Round per #391\n        if (increment !== null && increment !== false) {\n            increment = Number(increment.toFixed(stepDecimals));\n        }\n        if (decrement !== null && decrement !== false) {\n            decrement = Number(decrement.toFixed(stepDecimals));\n        }\n        return [decrement, increment];\n    }\n    // Get the current step size for the slider.\n    function getNextSteps() {\n        return scope_HandleNumbers.map(getNextStepsForHandle);\n    }\n    // Updatable: margin, limit, padding, step, range, animate, snap\n    function updateOptions(optionsToUpdate, fireSetEvent) {\n        // Spectrum is created using the range, snap, direction and step options.\n        // 'snap' and 'step' can be updated.\n        // If 'snap' and 'step' are not passed, they should remain unchanged.\n        var v = valueGet();\n        var updateAble = [\n            \"margin\",\n            \"limit\",\n            \"padding\",\n            \"range\",\n            \"animate\",\n            \"snap\",\n            \"step\",\n            \"format\",\n            \"pips\",\n            \"tooltips\"\n        ];\n        // Only change options that we're actually passed to update.\n        updateAble.forEach(function (name) {\n            // Check for undefined. null removes the value.\n            if (optionsToUpdate[name] !== undefined) {\n                originalOptions[name] = optionsToUpdate[name];\n            }\n        });\n        var newOptions = testOptions(originalOptions);\n        // Load new options into the slider state\n        updateAble.forEach(function (name) {\n            if (optionsToUpdate[name] !== undefined) {\n                options[name] = newOptions[name];\n            }\n        });\n        scope_Spectrum = newOptions.spectrum;\n        // Limit, margin and padding depend on the spectrum but are stored outside of it. (#677)\n        options.margin = newOptions.margin;\n        options.limit = newOptions.limit;\n        options.padding = newOptions.padding;\n        // Update pips, removes existing.\n        if (options.pips) {\n            pips(options.pips);\n        }\n        else {\n            removePips();\n        }\n        // Update tooltips, removes existing.\n        if (options.tooltips) {\n            tooltips();\n        }\n        else {\n            removeTooltips();\n        }\n        // Invalidate the current positioning so valueSet forces an update.\n        scope_Locations = [];\n        valueSet(isSet(optionsToUpdate.start) ? optionsToUpdate.start : v, fireSetEvent);\n    }\n    // Initialization steps\n    function setupSlider() {\n        // Create the base element, initialize HTML and set classes.\n        // Add handles and connect elements.\n        scope_Base = addSlider(scope_Target);\n        addElements(options.connect, scope_Base);\n        // Attach user events.\n        bindSliderEvents(options.events);\n        // Use the public value method to set the start values.\n        valueSet(options.start);\n        if (options.pips) {\n            pips(options.pips);\n        }\n        if (options.tooltips) {\n            tooltips();\n        }\n        aria();\n    }\n    setupSlider();\n    var scope_Self = {\n        destroy: destroy,\n        steps: getNextSteps,\n        on: bindEvent,\n        off: removeEvent,\n        get: valueGet,\n        set: valueSet,\n        setHandle: valueSetHandle,\n        reset: valueReset,\n        // Exposed for unit testing, don't use this in your application.\n        __moveHandles: function (upward, proposal, handleNumbers) {\n            moveHandles(upward, proposal, scope_Locations, handleNumbers);\n        },\n        options: originalOptions,\n        updateOptions: updateOptions,\n        target: scope_Target,\n        removePips: removePips,\n        removeTooltips: removeTooltips,\n        getPositions: function () {\n            return scope_Locations.slice();\n        },\n        getTooltips: function () {\n            return scope_Tooltips;\n        },\n        getOrigins: function () {\n            return scope_Handles;\n        },\n        pips: pips // Issue #594\n    };\n    return scope_Self;\n}\n// Run the standard initializer\nfunction initialize(target, originalOptions) {\n    if (!target || !target.nodeName) {\n        throw new Error(\"noUiSlider: create requires a single element, got: \" + target);\n    }\n    // Throw an error if the slider was already initialized.\n    if (target.noUiSlider) {\n        throw new Error(\"noUiSlider: Slider was already initialized.\");\n    }\n    // Test the options and create the slider environment;\n    var options = testOptions(originalOptions);\n    var api = scope(target, options, originalOptions);\n    target.noUiSlider = api;\n    return api;\n}\nexport { initialize as create };\nexport { cssClasses };\nexport default {\n    // Exposed for unit testing, don't use this in your application.\n    __spectrum: Spectrum,\n    // A reference to the default classes, allows global changes.\n    // Use the cssClasses option for changes to one slider.\n    cssClasses: cssClasses,\n    create: initialize\n};\n"
  },
  {
    "path": "static/assets/vendor/onscreen/dist/index.js",
    "content": "parcelRequire=function(e,r,t,n){var i,o=\"function\"==typeof parcelRequire&&parcelRequire,u=\"function\"==typeof require&&require;function f(t,n){if(!r[t]){if(!e[t]){var i=\"function\"==typeof parcelRequire&&parcelRequire;if(!n&&i)return i(t,!0);if(o)return o(t,!0);if(u&&\"string\"==typeof t)return u(t);var c=new Error(\"Cannot find module '\"+t+\"'\");throw c.code=\"MODULE_NOT_FOUND\",c}p.resolve=function(r){return e[t][1][r]||r},p.cache={};var l=r[t]=new f.Module(t);e[t][0].call(l.exports,p,l,l.exports,this)}return r[t].exports;function p(e){return f(p.resolve(e))}}f.isParcelRequire=!0,f.Module=function(e){this.id=e,this.bundle=f,this.exports={}},f.modules=e,f.cache=r,f.parent=o,f.register=function(r,t){e[r]=[function(e,r){r.exports=t},{}]};for(var c=0;c<t.length;c++)try{f(t[c])}catch(e){i||(i=e)}if(t.length){var l=f(t[t.length-1]);\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=l:\"function\"==typeof define&&define.amd?define(function(){return l}):n&&(this[n]=l)}if(parcelRequire=f,i)throw i;return f}({\"Omyb\":[function(require,module,exports) {\n\"use strict\";function e(e,t){var r=window.MutationObserver;if(r){var n=new r(t);return n.observe(e,{childList:!0,subtree:!0}),n}return e.addEventListener(\"DOMNodeInserted\",t,!1),e.addEventListener(\"DOMNodeRemoved\",t,!1),null}Object.defineProperty(exports,\"__esModule\",{value:!0}),exports.default=e;\n},{}],\"A8OV\":[function(require,module,exports) {\n\"use strict\";var e=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,\"__esModule\",{value:!0});var t=e(require(\"../helpers/observe-dom\"));function s(){var e=this,s=this.options.container;s instanceof HTMLElement&&(\"static\"===window.getComputedStyle(s).position&&(s.style.position=\"relative\"));this._observer=t.default(document.querySelector(\"body\"),function(){Object.keys(e.trackedElements).forEach(function(t){e.on(\"enter\",t),e.on(\"leave\",t)})}),s.addEventListener(\"scroll\",this._scroll,{passive:!0}),window.addEventListener(\"resize\",this._scroll,{passive:!0}),this._scroll(),this.attached=!0}exports.default=s;\n},{\"../helpers/observe-dom\":\"Omyb\"}],\"OJn0\":[function(require,module,exports) {\n\"use strict\";function e(e,t){if(!e)throw new Error(\"You should specify the element you want to test\");\"string\"==typeof e&&(e=document.querySelector(e));var n=e.getBoundingClientRect();return n.bottom-t.tolerance>0&&n.right-t.tolerance>0&&n.left+t.tolerance<(window.innerWidth||document.documentElement.clientWidth)&&n.top+t.tolerance<(window.innerHeight||document.documentElement.clientHeight)}Object.defineProperty(exports,\"__esModule\",{value:!0}),exports.default=e;\n},{}],\"m6QN\":[function(require,module,exports) {\n\"use strict\";function e(e,t){if(!e)throw new Error(\"You should specify the element you want to test\");if(\"string\"==typeof e&&(e=document.querySelector(e)),\"string\"==typeof t&&(t={tolerance:0,container:document.querySelector(t)}),\"string\"==typeof t.container&&(t.container=document.querySelector(t.container)),t instanceof HTMLElement&&(t={tolerance:0,container:t}),!t.container)throw new Error(\"You should specify a container element\");var o=t.container.getBoundingClientRect();return e.offsetTop+e.clientHeight-t.tolerance>t.container.scrollTop&&e.offsetLeft+e.clientWidth-t.tolerance>t.container.scrollLeft&&e.offsetLeft+t.tolerance<o.width+t.container.scrollLeft&&e.offsetTop+t.tolerance<o.height+t.container.scrollTop}Object.defineProperty(exports,\"__esModule\",{value:!0}),exports.default=e;\n},{}],\"VqMh\":[function(require,module,exports) {\n\"use strict\";var e=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,\"__esModule\",{value:!0});var i=e(require(\"./in-viewport\")),n=e(require(\"./in-container\"));function t(e,t){void 0===e&&(e={}),void 0===t&&(t={container:window,tolerance:0});var o,r=Object.keys(e);r.length&&(o=t.container===window?i.default:n.default,r.forEach(function(i){e[i].nodes.forEach(function(n){if(o(n.node,t)?(n.wasVisible=n.isVisible,n.isVisible=!0):(n.wasVisible=n.isVisible,n.isVisible=!1),!0===n.isVisible&&!1===n.wasVisible){if(!e[i].enter)return;Object.keys(e[i].enter).forEach(function(t){\"function\"==typeof e[i].enter[t]&&e[i].enter[t](n.node,\"enter\")})}if(!1===n.isVisible&&!0===n.wasVisible){if(!e[i].leave)return;Object.keys(e[i].leave).forEach(function(t){\"function\"==typeof e[i].leave[t]&&e[i].leave[t](n.node,\"leave\")})}})}))}exports.default=t;\n},{\"./in-viewport\":\"OJn0\",\"./in-container\":\"m6QN\"}],\"GRp5\":[function(require,module,exports) {\n\"use strict\";var e=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,\"__esModule\",{value:!0});var t=e(require(\"../helpers/scroll-handler\"));function r(){var e,r=this;return function(){clearTimeout(e),e=setTimeout(function(){t.default(r.trackedElements,r.options)},r.options.debounce)}}exports.default=r;\n},{\"../helpers/scroll-handler\":\"VqMh\"}],\"FO0g\":[function(require,module,exports) {\n\"use strict\";function e(){this._observer instanceof MutationObserver&&this._observer.disconnect(),this.options.container.removeEventListener(\"scroll\",this._scroll),window.removeEventListener(\"resize\",this._scroll),this.attached=!1}Object.defineProperty(exports,\"__esModule\",{value:!0}),exports.default=e;\n},{}],\"nGOL\":[function(require,module,exports) {\n\"use strict\";function e(e,t,s){var l=Object.keys(this.trackedElements[t].enter||{}),n=Object.keys(this.trackedElements[t].leave||{});if({}.hasOwnProperty.call(this.trackedElements,t))if(s){if(this.trackedElements[t][e]){var r=\"function\"==typeof s?s.name:s;delete this.trackedElements[t][e][r]}}else delete this.trackedElements[t][e];l.length||n.length||delete this.trackedElements[t]}Object.defineProperty(exports,\"__esModule\",{value:!0}),exports.default=e;\n},{}],\"NKIH\":[function(require,module,exports) {\n\"use strict\";function e(e,t,r){if(!e)throw new Error(\"No event given. Choose either enter or leave\");if(!t)throw new Error(\"No selector to track\");if([\"enter\",\"leave\"].indexOf(e)<0)throw new Error(e+\" event is not supported\");({}).hasOwnProperty.call(this.trackedElements,t)||(this.trackedElements[t]={}),this.trackedElements[t].nodes=[];for(var s=0,n=document.querySelectorAll(t);s<n.length;s++){var o={isVisible:!1,wasVisible:!1,node:n[s]};this.trackedElements[t].nodes.push(o)}\"function\"==typeof r&&(this.trackedElements[t][e]||(this.trackedElements[t][e]={}),this.trackedElements[t][e][r.name||\"anonymous\"]=r)}Object.defineProperty(exports,\"__esModule\",{value:!0}),exports.default=e;\n},{}],\"QCba\":[function(require,module,exports) {\n\"use strict\";var e=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(exports,\"__esModule\",{value:!0});var t=e(require(\"./methods/attach\")),r=e(require(\"./methods/debounced-scroll\")),n=e(require(\"./methods/destroy\")),o=e(require(\"./methods/off\")),i=e(require(\"./methods/on\")),u=e(require(\"./helpers/in-viewport\"));function a(e){void 0===e&&(e={tolerance:0,debounce:100,container:window}),this.options={},this.trackedElements={},Object.defineProperties(this.options,{container:{configurable:!1,enumerable:!1,get:function(){var t;return\"string\"==typeof e.container?t=document.querySelector(e.container):e.container instanceof HTMLElement&&(t=e.container),t||window},set:function(t){e.container=t}},debounce:{get:function(){return e.debounce||100},set:function(t){e.debounce=t}},tolerance:{get:function(){return e.tolerance||0},set:function(t){e.tolerance=t}}}),Object.defineProperty(this,\"_scroll\",{enumerable:!1,configurable:!1,writable:!1,value:this._debouncedScroll.call(this)}),this.attach()}Object.defineProperties(a.prototype,{_debouncedScroll:{configurable:!1,writable:!1,enumerable:!1,value:r.default},attach:{configurable:!1,writable:!1,enumerable:!1,value:t.default},destroy:{configurable:!1,writable:!1,enumerable:!1,value:n.default},off:{configurable:!1,writable:!1,enumerable:!1,value:o.default},on:{configurable:!1,writable:!1,enumerable:!1,value:i.default}}),a.check=u.default,exports.default=a;\n},{\"./methods/attach\":\"A8OV\",\"./methods/debounced-scroll\":\"GRp5\",\"./methods/destroy\":\"FO0g\",\"./methods/off\":\"nGOL\",\"./methods/on\":\"NKIH\",\"./helpers/in-viewport\":\"OJn0\"}]},{},[\"QCba\"], null)\n"
  },
  {
    "path": "static/assets/vendor/onscreen/dist/on-screen.es6.js",
    "content": "/**\n * Observes DOM mutations and runs a callback function when\n * detecting one.\n *\n * @param {node} obj The DOM node you want to observe\n * @param {function} callback The callback function you want to call\n * @return {MutationObserver} obs The mutation observer instance used to track DOM mutations\n */\nfunction observeDOM(obj, callback) {\n    var MutationObserver = window.MutationObserver || window.WebKitMutationObserver;\n\n    /* istanbul ignore else */\n    if (MutationObserver) {\n        var obs = new MutationObserver(callback);\n\n        obs.observe(obj, {\n            childList: true,\n            subtree: true\n        });\n\n        return obs;\n    }\n\n    obj.addEventListener('DOMNodeInserted', callback, false);\n    obj.addEventListener('DOMNodeRemoved', callback, false);\n\n    return null;\n}\n\n/**\n * Attaches the scroll event handler\n *\n * @return {void}\n */\nfunction attach() {\n    var _this = this;\n\n    var container = this.options.container;\n\n    if (container instanceof HTMLElement) {\n        var style = window.getComputedStyle(container);\n\n        if (style.position === 'static') {\n            container.style.position = 'relative';\n        }\n    }\n\n    this._observer = observeDOM(document.querySelector('body'), function () {\n        Object.keys(_this.trackedElements).forEach(function (element) {\n            _this.on('enter', element);\n            _this.on('leave', element);\n        });\n    });\n\n    container.addEventListener('scroll', this._scroll, { passive: true });\n    window.addEventListener('resize', this._scroll, { passive: true });\n    this._scroll();\n    this.attached = true;\n}\n\n/**\n * Checks an element's position in respect to the viewport\n * and determines wether it's inside the viewport.\n *\n * @param {node} element The DOM node you want to check\n * @return {boolean} A boolean value that indicates wether is on or off the viewport.\n */\nfunction inViewport(el) {\n    var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : { tolerance: 0 };\n\n    if (!el) {\n        throw new Error('You should specify the element you want to test');\n    }\n\n    if (typeof el === 'string') {\n        el = document.querySelector(el);\n    }\n\n    var elRect = el.getBoundingClientRect();\n\n    return (\n        // Check bottom boundary\n        elRect.bottom - options.tolerance > 0 &&\n\n        // Check right boundary\n        elRect.right - options.tolerance > 0 &&\n\n        // Check left boundary\n        elRect.left + options.tolerance < (window.innerWidth || document.documentElement.clientWidth) &&\n\n        // Check top boundary\n        elRect.top + options.tolerance < (window.innerHeight || document.documentElement.clientHeight)\n    );\n}\n\n/**\n * Checks an element's position in respect to a HTMLElement\n * and determines wether it's within its boundaries.\n *\n * @param {node} element The DOM node you want to check\n * @return {boolean} A boolean value that indicates wether is on or off the container.\n */\nfunction inContainer(el) {\n    var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : { tolerance: 0, container: '' };\n\n    if (!el) {\n        throw new Error('You should specify the element you want to test');\n    }\n\n    if (typeof el === 'string') {\n        el = document.querySelector(el);\n    }\n    if (typeof options === 'string') {\n        options = {\n            tolerance: 0,\n            container: document.querySelector(options)\n        };\n    }\n    if (typeof options.container === 'string') {\n        options.container = document.querySelector(options.container);\n    }\n    if (options instanceof HTMLElement) {\n        options = {\n            tolerance: 0,\n            container: options\n        };\n    }\n    if (!options.container) {\n        throw new Error('You should specify a container element');\n    }\n\n    var containerRect = options.container.getBoundingClientRect();\n\n    return (\n        // // Check bottom boundary\n        el.offsetTop + el.clientHeight - options.tolerance > options.container.scrollTop &&\n\n        // Check right boundary\n        el.offsetLeft + el.clientWidth - options.tolerance > options.container.scrollLeft &&\n\n        // Check left boundary\n        el.offsetLeft + options.tolerance < containerRect.width + options.container.scrollLeft &&\n\n        // // Check top boundary\n        el.offsetTop + options.tolerance < containerRect.height + options.container.scrollTop\n    );\n}\n\n// TODO: Refactor this so it can be easily tested\n/* istanbul ignore next */\nfunction eventHandler() {\n    var trackedElements = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n    var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : { tolerance: 0 };\n\n    var selectors = Object.keys(trackedElements);\n    var testVisibility = void 0;\n\n    if (!selectors.length) return;\n\n    if (options.container === window) {\n        testVisibility = inViewport;\n    } else {\n        testVisibility = inContainer;\n    }\n\n    selectors.forEach(function (selector) {\n        trackedElements[selector].nodes.forEach(function (item) {\n            if (testVisibility(item.node, options)) {\n                item.wasVisible = item.isVisible;\n                item.isVisible = true;\n            } else {\n                item.wasVisible = item.isVisible;\n                item.isVisible = false;\n            }\n            if (item.isVisible === true && item.wasVisible === false) {\n                if (!trackedElements[selector].enter) return;\n\n                Object.keys(trackedElements[selector].enter).forEach(function (callback) {\n                    if (typeof trackedElements[selector].enter[callback] === 'function') {\n                        trackedElements[selector].enter[callback](item.node, 'enter');\n                    }\n                });\n            }\n            if (item.isVisible === false && item.wasVisible === true) {\n                if (!trackedElements[selector].leave) return;\n\n                Object.keys(trackedElements[selector].leave).forEach(function (callback) {\n                    if (typeof trackedElements[selector].leave[callback] === 'function') {\n                        trackedElements[selector].leave[callback](item.node, 'leave');\n                    }\n                });\n            }\n        });\n    });\n}\n\n/**\n * Debounces the scroll event to avoid performance issues\n *\n * @return {void}\n */\nfunction debouncedScroll() {\n    var _this = this;\n\n    var timeout = void 0;\n\n    if (this.options.debounce === false) {\n        return function () {\n            return eventHandler(_this.trackedElements, _this.options);\n        };\n    }\n\n    return function () {\n        clearTimeout(timeout);\n\n        timeout = setTimeout(function () {\n            eventHandler(_this.trackedElements, _this.options);\n        }, _this.options.debounce);\n    };\n}\n\n/**\n * Removes the scroll event handler\n *\n * @return {void}\n */\nfunction destroy() {\n    if (this._observer instanceof MutationObserver) {\n        this._observer.disconnect();\n    }\n\n    this.options.container.removeEventListener('scroll', this._scroll);\n    window.removeEventListener('resize', this._scroll);\n    this.attached = false;\n}\n\n/**\n * Stops tracking elements matching a CSS selector. If a selector has no\n * callbacks it gets removed.\n *\n * @param {string} event The event you want to stop tracking (enter or leave)\n * @param {string} selector The CSS selector you want to stop tracking\n * @return {void}\n */\nfunction off(event, selector, handler) {\n    var enterCallbacks = Object.keys(this.trackedElements[selector].enter || {});\n    var leaveCallbacks = Object.keys(this.trackedElements[selector].leave || {});\n\n    if ({}.hasOwnProperty.call(this.trackedElements, selector)) {\n        if (handler) {\n            if (this.trackedElements[selector][event]) {\n                var callbackName = typeof handler === 'function' ? handler.name : handler;\n                delete this.trackedElements[selector][event][callbackName];\n            }\n        } else {\n            delete this.trackedElements[selector][event];\n        }\n    }\n\n    if (!enterCallbacks.length && !leaveCallbacks.length) {\n        delete this.trackedElements[selector];\n    }\n}\n\n/**\n * Starts tracking elements matching a CSS selector\n *\n * @param {string} event The event you want to track (enter or leave)\n * @param {string} selector The element you want to track\n * @param {function} callback The callback function to handle the event\n * @return {void}\n */\nfunction on(event, selector, callback) {\n    var allowed = ['enter', 'leave'];\n\n    if (!event) throw new Error('No event given. Choose either enter or leave');\n    if (!selector) throw new Error('No selector to track');\n    if (allowed.indexOf(event) < 0) throw new Error(event + ' event is not supported');\n\n    if (!{}.hasOwnProperty.call(this.trackedElements, selector)) {\n        this.trackedElements[selector] = {};\n    }\n\n    this.trackedElements[selector].nodes = [];\n\n    for (var i = 0, elems = document.querySelectorAll(selector); i < elems.length; i++) {\n        var item = {\n            isVisible: false,\n            wasVisible: false,\n            node: elems[i]\n        };\n\n        this.trackedElements[selector].nodes.push(item);\n    }\n\n    if (typeof callback === 'function') {\n        if (!this.trackedElements[selector][event]) {\n            this.trackedElements[selector][event] = {};\n        }\n\n        this.trackedElements[selector][event][callback.name || 'anonymous'] = callback;\n    }\n}\n\n/**\n * Detects wether DOM nodes enter or leave the viewport\n *\n * @constructor\n * @param {object} options The configuration object\n */\nfunction OnScreen() {\n    var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : { tolerance: 0, debounce: 100, container: window };\n\n    this.options = {};\n    this.trackedElements = {};\n\n    Object.defineProperties(this.options, {\n        container: {\n            configurable: false,\n            enumerable: false,\n            get: function get() {\n                var container = void 0;\n\n                if (typeof options.container === 'string') {\n                    container = document.querySelector(options.container);\n                } else if (options.container instanceof HTMLElement) {\n                    container = options.container;\n                }\n\n                return container || window;\n            },\n            set: function set(value) {\n                options.container = value;\n            }\n        },\n        debounce: {\n            get: function get() {\n                if (options.debounce === false) {\n                    return false;\n                }\n\n                return parseInt(options.debounce, 10) || 100;\n            },\n            set: function set(value) {\n                options.debounce = value;\n            }\n        },\n        tolerance: {\n            get: function get() {\n                return parseInt(options.tolerance, 10) || 0;\n            },\n            set: function set(value) {\n                options.tolerance = value;\n            }\n        }\n    });\n\n    Object.defineProperty(this, '_scroll', {\n        enumerable: false,\n        configurable: false,\n        writable: false,\n        value: this._debouncedScroll.call(this)\n    });\n\n    this.attach();\n}\n\nObject.defineProperties(OnScreen.prototype, {\n    _debouncedScroll: {\n        configurable: false,\n        writable: false,\n        enumerable: false,\n        value: debouncedScroll\n    },\n    attach: {\n        configurable: false,\n        writable: false,\n        enumerable: false,\n        value: attach\n    },\n    destroy: {\n        configurable: false,\n        writable: false,\n        enumerable: false,\n        value: destroy\n    },\n    off: {\n        configurable: false,\n        writable: false,\n        enumerable: false,\n        value: off\n    },\n    on: {\n        configurable: false,\n        writable: false,\n        enumerable: false,\n        value: on\n    }\n});\n\nOnScreen.check = inViewport;\n\nexport default OnScreen;\n\n"
  },
  {
    "path": "static/assets/vendor/simplebar/dist/simplebar-core.esm.js",
    "content": "/**\n * SimpleBar.js - v5.3.5\n * Scrollbars, simpler.\n * https://grsmto.github.io/simplebar/\n *\n * Made by Adrien Denat from a fork by Jonathan Nicol\n * Under MIT License\n */\n\nimport 'core-js/modules/es.array.filter';\nimport 'core-js/modules/es.array.for-each';\nimport 'core-js/modules/es.array.iterator';\nimport 'core-js/modules/es.object.assign';\nimport 'core-js/modules/es.object.to-string';\nimport 'core-js/modules/es.parse-int';\nimport 'core-js/modules/es.string.iterator';\nimport 'core-js/modules/es.weak-map';\nimport 'core-js/modules/web.dom-collections.iterator';\nimport throttle from 'lodash.throttle';\nimport debounce from 'lodash.debounce';\nimport memoize from 'lodash.memoize';\nimport { ResizeObserver } from '@juggle/resize-observer';\nimport canUseDOM from 'can-use-dom';\nimport 'core-js/modules/es.array.reduce';\nimport 'core-js/modules/es.function.name';\nimport 'core-js/modules/es.regexp.exec';\nimport 'core-js/modules/es.string.match';\nimport 'core-js/modules/es.string.replace';\n\nfunction getElementWindow(element) {\n  if (!element || !element.ownerDocument || !element.ownerDocument.defaultView) {\n    return window;\n  }\n\n  return element.ownerDocument.defaultView;\n}\nfunction getElementDocument(element) {\n  if (!element || !element.ownerDocument) {\n    return document;\n  }\n\n  return element.ownerDocument;\n}\n\nvar cachedScrollbarWidth = null;\nvar cachedDevicePixelRatio = null;\n\nif (canUseDOM) {\n  window.addEventListener('resize', function () {\n    if (cachedDevicePixelRatio !== window.devicePixelRatio) {\n      cachedDevicePixelRatio = window.devicePixelRatio;\n      cachedScrollbarWidth = null;\n    }\n  });\n}\n\nfunction scrollbarWidth(el) {\n  if (cachedScrollbarWidth === null) {\n    var document = getElementDocument(el);\n\n    if (typeof document === 'undefined') {\n      cachedScrollbarWidth = 0;\n      return cachedScrollbarWidth;\n    }\n\n    var body = document.body;\n    var box = document.createElement('div');\n    box.classList.add('simplebar-hide-scrollbar');\n    body.appendChild(box);\n    var width = box.getBoundingClientRect().right;\n    body.removeChild(box);\n    cachedScrollbarWidth = width;\n  }\n\n  return cachedScrollbarWidth;\n}\n\nvar SimpleBar =\n/*#__PURE__*/\nfunction () {\n  function SimpleBar(element, options) {\n    var _this = this;\n\n    this.onScroll = function () {\n      var elWindow = getElementWindow(_this.el);\n\n      if (!_this.scrollXTicking) {\n        elWindow.requestAnimationFrame(_this.scrollX);\n        _this.scrollXTicking = true;\n      }\n\n      if (!_this.scrollYTicking) {\n        elWindow.requestAnimationFrame(_this.scrollY);\n        _this.scrollYTicking = true;\n      }\n    };\n\n    this.scrollX = function () {\n      if (_this.axis.x.isOverflowing) {\n        _this.showScrollbar('x');\n\n        _this.positionScrollbar('x');\n      }\n\n      _this.scrollXTicking = false;\n    };\n\n    this.scrollY = function () {\n      if (_this.axis.y.isOverflowing) {\n        _this.showScrollbar('y');\n\n        _this.positionScrollbar('y');\n      }\n\n      _this.scrollYTicking = false;\n    };\n\n    this.onMouseEnter = function () {\n      _this.showScrollbar('x');\n\n      _this.showScrollbar('y');\n    };\n\n    this.onMouseMove = function (e) {\n      _this.mouseX = e.clientX;\n      _this.mouseY = e.clientY;\n\n      if (_this.axis.x.isOverflowing || _this.axis.x.forceVisible) {\n        _this.onMouseMoveForAxis('x');\n      }\n\n      if (_this.axis.y.isOverflowing || _this.axis.y.forceVisible) {\n        _this.onMouseMoveForAxis('y');\n      }\n    };\n\n    this.onMouseLeave = function () {\n      _this.onMouseMove.cancel();\n\n      if (_this.axis.x.isOverflowing || _this.axis.x.forceVisible) {\n        _this.onMouseLeaveForAxis('x');\n      }\n\n      if (_this.axis.y.isOverflowing || _this.axis.y.forceVisible) {\n        _this.onMouseLeaveForAxis('y');\n      }\n\n      _this.mouseX = -1;\n      _this.mouseY = -1;\n    };\n\n    this.onWindowResize = function () {\n      // Recalculate scrollbarWidth in case it's a zoom\n      _this.scrollbarWidth = _this.getScrollbarWidth();\n\n      _this.hideNativeScrollbar();\n    };\n\n    this.hideScrollbars = function () {\n      _this.axis.x.track.rect = _this.axis.x.track.el.getBoundingClientRect();\n      _this.axis.y.track.rect = _this.axis.y.track.el.getBoundingClientRect();\n\n      if (!_this.isWithinBounds(_this.axis.y.track.rect)) {\n        _this.axis.y.scrollbar.el.classList.remove(_this.classNames.visible);\n\n        _this.axis.y.isVisible = false;\n      }\n\n      if (!_this.isWithinBounds(_this.axis.x.track.rect)) {\n        _this.axis.x.scrollbar.el.classList.remove(_this.classNames.visible);\n\n        _this.axis.x.isVisible = false;\n      }\n    };\n\n    this.onPointerEvent = function (e) {\n      var isWithinTrackXBounds, isWithinTrackYBounds;\n      _this.axis.x.track.rect = _this.axis.x.track.el.getBoundingClientRect();\n      _this.axis.y.track.rect = _this.axis.y.track.el.getBoundingClientRect();\n\n      if (_this.axis.x.isOverflowing || _this.axis.x.forceVisible) {\n        isWithinTrackXBounds = _this.isWithinBounds(_this.axis.x.track.rect);\n      }\n\n      if (_this.axis.y.isOverflowing || _this.axis.y.forceVisible) {\n        isWithinTrackYBounds = _this.isWithinBounds(_this.axis.y.track.rect);\n      } // If any pointer event is called on the scrollbar\n\n\n      if (isWithinTrackXBounds || isWithinTrackYBounds) {\n        // Preventing the event's default action stops text being\n        // selectable during the drag.\n        e.preventDefault(); // Prevent event leaking\n\n        e.stopPropagation();\n\n        if (e.type === 'mousedown') {\n          if (isWithinTrackXBounds) {\n            _this.axis.x.scrollbar.rect = _this.axis.x.scrollbar.el.getBoundingClientRect();\n\n            if (_this.isWithinBounds(_this.axis.x.scrollbar.rect)) {\n              _this.onDragStart(e, 'x');\n            } else {\n              _this.onTrackClick(e, 'x');\n            }\n          }\n\n          if (isWithinTrackYBounds) {\n            _this.axis.y.scrollbar.rect = _this.axis.y.scrollbar.el.getBoundingClientRect();\n\n            if (_this.isWithinBounds(_this.axis.y.scrollbar.rect)) {\n              _this.onDragStart(e, 'y');\n            } else {\n              _this.onTrackClick(e, 'y');\n            }\n          }\n        }\n      }\n    };\n\n    this.drag = function (e) {\n      var eventOffset;\n      var track = _this.axis[_this.draggedAxis].track;\n      var trackSize = track.rect[_this.axis[_this.draggedAxis].sizeAttr];\n      var scrollbar = _this.axis[_this.draggedAxis].scrollbar;\n      var contentSize = _this.contentWrapperEl[_this.axis[_this.draggedAxis].scrollSizeAttr];\n      var hostSize = parseInt(_this.elStyles[_this.axis[_this.draggedAxis].sizeAttr], 10);\n      e.preventDefault();\n      e.stopPropagation();\n\n      if (_this.draggedAxis === 'y') {\n        eventOffset = e.pageY;\n      } else {\n        eventOffset = e.pageX;\n      } // Calculate how far the user's mouse is from the top/left of the scrollbar (minus the dragOffset).\n\n\n      var dragPos = eventOffset - track.rect[_this.axis[_this.draggedAxis].offsetAttr] - _this.axis[_this.draggedAxis].dragOffset; // Convert the mouse position into a percentage of the scrollbar height/width.\n\n      var dragPerc = dragPos / (trackSize - scrollbar.size); // Scroll the content by the same percentage.\n\n      var scrollPos = dragPerc * (contentSize - hostSize); // Fix browsers inconsistency on RTL\n\n      if (_this.draggedAxis === 'x') {\n        scrollPos = _this.isRtl && SimpleBar.getRtlHelpers().isRtlScrollbarInverted ? scrollPos - (trackSize + scrollbar.size) : scrollPos;\n        scrollPos = _this.isRtl && SimpleBar.getRtlHelpers().isRtlScrollingInverted ? -scrollPos : scrollPos;\n      }\n\n      _this.contentWrapperEl[_this.axis[_this.draggedAxis].scrollOffsetAttr] = scrollPos;\n    };\n\n    this.onEndDrag = function (e) {\n      var elDocument = getElementDocument(_this.el);\n      var elWindow = getElementWindow(_this.el);\n      e.preventDefault();\n      e.stopPropagation();\n\n      _this.el.classList.remove(_this.classNames.dragging);\n\n      elDocument.removeEventListener('mousemove', _this.drag, true);\n      elDocument.removeEventListener('mouseup', _this.onEndDrag, true);\n      _this.removePreventClickId = elWindow.setTimeout(function () {\n        // Remove these asynchronously so we still suppress click events\n        // generated simultaneously with mouseup.\n        elDocument.removeEventListener('click', _this.preventClick, true);\n        elDocument.removeEventListener('dblclick', _this.preventClick, true);\n        _this.removePreventClickId = null;\n      });\n    };\n\n    this.preventClick = function (e) {\n      e.preventDefault();\n      e.stopPropagation();\n    };\n\n    this.el = element;\n    this.minScrollbarWidth = 20;\n    this.options = Object.assign({}, SimpleBar.defaultOptions, {}, options);\n    this.classNames = Object.assign({}, SimpleBar.defaultOptions.classNames, {}, this.options.classNames);\n    this.axis = {\n      x: {\n        scrollOffsetAttr: 'scrollLeft',\n        sizeAttr: 'width',\n        scrollSizeAttr: 'scrollWidth',\n        offsetSizeAttr: 'offsetWidth',\n        offsetAttr: 'left',\n        overflowAttr: 'overflowX',\n        dragOffset: 0,\n        isOverflowing: true,\n        isVisible: false,\n        forceVisible: false,\n        track: {},\n        scrollbar: {}\n      },\n      y: {\n        scrollOffsetAttr: 'scrollTop',\n        sizeAttr: 'height',\n        scrollSizeAttr: 'scrollHeight',\n        offsetSizeAttr: 'offsetHeight',\n        offsetAttr: 'top',\n        overflowAttr: 'overflowY',\n        dragOffset: 0,\n        isOverflowing: true,\n        isVisible: false,\n        forceVisible: false,\n        track: {},\n        scrollbar: {}\n      }\n    };\n    this.removePreventClickId = null; // Don't re-instantiate over an existing one\n\n    if (SimpleBar.instances.has(this.el)) {\n      return;\n    }\n\n    this.recalculate = throttle(this.recalculate.bind(this), 64);\n    this.onMouseMove = throttle(this.onMouseMove.bind(this), 64);\n    this.hideScrollbars = debounce(this.hideScrollbars.bind(this), this.options.timeout);\n    this.onWindowResize = debounce(this.onWindowResize.bind(this), 64, {\n      leading: true\n    });\n    SimpleBar.getRtlHelpers = memoize(SimpleBar.getRtlHelpers);\n    this.init();\n  }\n  /**\n   * Static properties\n   */\n\n  /**\n   * Helper to fix browsers inconsistency on RTL:\n   *  - Firefox inverts the scrollbar initial position\n   *  - IE11 inverts both scrollbar position and scrolling offset\n   * Directly inspired by @KingSora's OverlayScrollbars https://github.com/KingSora/OverlayScrollbars/blob/master/js/OverlayScrollbars.js#L1634\n   */\n\n\n  SimpleBar.getRtlHelpers = function getRtlHelpers() {\n    var dummyDiv = document.createElement('div');\n    dummyDiv.innerHTML = '<div class=\"hs-dummy-scrollbar-size\"><div style=\"height: 200%; width: 200%; margin: 10px 0;\"></div></div>';\n    var scrollbarDummyEl = dummyDiv.firstElementChild;\n    document.body.appendChild(scrollbarDummyEl);\n    var dummyContainerChild = scrollbarDummyEl.firstElementChild;\n    scrollbarDummyEl.scrollLeft = 0;\n    var dummyContainerOffset = SimpleBar.getOffset(scrollbarDummyEl);\n    var dummyContainerChildOffset = SimpleBar.getOffset(dummyContainerChild);\n    scrollbarDummyEl.scrollLeft = 999;\n    var dummyContainerScrollOffsetAfterScroll = SimpleBar.getOffset(dummyContainerChild);\n    return {\n      // determines if the scrolling is responding with negative values\n      isRtlScrollingInverted: dummyContainerOffset.left !== dummyContainerChildOffset.left && dummyContainerChildOffset.left - dummyContainerScrollOffsetAfterScroll.left !== 0,\n      // determines if the origin scrollbar position is inverted or not (positioned on left or right)\n      isRtlScrollbarInverted: dummyContainerOffset.left !== dummyContainerChildOffset.left\n    };\n  };\n\n  SimpleBar.getOffset = function getOffset(el) {\n    var rect = el.getBoundingClientRect();\n    var elDocument = getElementDocument(el);\n    var elWindow = getElementWindow(el);\n    return {\n      top: rect.top + (elWindow.pageYOffset || elDocument.documentElement.scrollTop),\n      left: rect.left + (elWindow.pageXOffset || elDocument.documentElement.scrollLeft)\n    };\n  };\n\n  var _proto = SimpleBar.prototype;\n\n  _proto.init = function init() {\n    // Save a reference to the instance, so we know this DOM node has already been instancied\n    SimpleBar.instances.set(this.el, this); // We stop here on server-side\n\n    if (canUseDOM) {\n      this.initDOM();\n      this.scrollbarWidth = this.getScrollbarWidth();\n      this.recalculate();\n      this.initListeners();\n    }\n  };\n\n  _proto.initDOM = function initDOM() {\n    var _this2 = this;\n\n    // make sure this element doesn't have the elements yet\n    if (Array.prototype.filter.call(this.el.children, function (child) {\n      return child.classList.contains(_this2.classNames.wrapper);\n    }).length) {\n      // assume that element has his DOM already initiated\n      this.wrapperEl = this.el.querySelector(\".\" + this.classNames.wrapper);\n      this.contentWrapperEl = this.options.scrollableNode || this.el.querySelector(\".\" + this.classNames.contentWrapper);\n      this.contentEl = this.options.contentNode || this.el.querySelector(\".\" + this.classNames.contentEl);\n      this.offsetEl = this.el.querySelector(\".\" + this.classNames.offset);\n      this.maskEl = this.el.querySelector(\".\" + this.classNames.mask);\n      this.placeholderEl = this.findChild(this.wrapperEl, \".\" + this.classNames.placeholder);\n      this.heightAutoObserverWrapperEl = this.el.querySelector(\".\" + this.classNames.heightAutoObserverWrapperEl);\n      this.heightAutoObserverEl = this.el.querySelector(\".\" + this.classNames.heightAutoObserverEl);\n      this.axis.x.track.el = this.findChild(this.el, \".\" + this.classNames.track + \".\" + this.classNames.horizontal);\n      this.axis.y.track.el = this.findChild(this.el, \".\" + this.classNames.track + \".\" + this.classNames.vertical);\n    } else {\n      // Prepare DOM\n      this.wrapperEl = document.createElement('div');\n      this.contentWrapperEl = document.createElement('div');\n      this.offsetEl = document.createElement('div');\n      this.maskEl = document.createElement('div');\n      this.contentEl = document.createElement('div');\n      this.placeholderEl = document.createElement('div');\n      this.heightAutoObserverWrapperEl = document.createElement('div');\n      this.heightAutoObserverEl = document.createElement('div');\n      this.wrapperEl.classList.add(this.classNames.wrapper);\n      this.contentWrapperEl.classList.add(this.classNames.contentWrapper);\n      this.offsetEl.classList.add(this.classNames.offset);\n      this.maskEl.classList.add(this.classNames.mask);\n      this.contentEl.classList.add(this.classNames.contentEl);\n      this.placeholderEl.classList.add(this.classNames.placeholder);\n      this.heightAutoObserverWrapperEl.classList.add(this.classNames.heightAutoObserverWrapperEl);\n      this.heightAutoObserverEl.classList.add(this.classNames.heightAutoObserverEl);\n\n      while (this.el.firstChild) {\n        this.contentEl.appendChild(this.el.firstChild);\n      }\n\n      this.contentWrapperEl.appendChild(this.contentEl);\n      this.offsetEl.appendChild(this.contentWrapperEl);\n      this.maskEl.appendChild(this.offsetEl);\n      this.heightAutoObserverWrapperEl.appendChild(this.heightAutoObserverEl);\n      this.wrapperEl.appendChild(this.heightAutoObserverWrapperEl);\n      this.wrapperEl.appendChild(this.maskEl);\n      this.wrapperEl.appendChild(this.placeholderEl);\n      this.el.appendChild(this.wrapperEl);\n    }\n\n    if (!this.axis.x.track.el || !this.axis.y.track.el) {\n      var track = document.createElement('div');\n      var scrollbar = document.createElement('div');\n      track.classList.add(this.classNames.track);\n      scrollbar.classList.add(this.classNames.scrollbar);\n      track.appendChild(scrollbar);\n      this.axis.x.track.el = track.cloneNode(true);\n      this.axis.x.track.el.classList.add(this.classNames.horizontal);\n      this.axis.y.track.el = track.cloneNode(true);\n      this.axis.y.track.el.classList.add(this.classNames.vertical);\n      this.el.appendChild(this.axis.x.track.el);\n      this.el.appendChild(this.axis.y.track.el);\n    }\n\n    this.axis.x.scrollbar.el = this.axis.x.track.el.querySelector(\".\" + this.classNames.scrollbar);\n    this.axis.y.scrollbar.el = this.axis.y.track.el.querySelector(\".\" + this.classNames.scrollbar);\n\n    if (!this.options.autoHide) {\n      this.axis.x.scrollbar.el.classList.add(this.classNames.visible);\n      this.axis.y.scrollbar.el.classList.add(this.classNames.visible);\n    }\n\n    this.el.setAttribute('data-simplebar', 'init');\n  };\n\n  _proto.initListeners = function initListeners() {\n    var _this3 = this;\n\n    var elWindow = getElementWindow(this.el); // Event listeners\n\n    if (this.options.autoHide) {\n      this.el.addEventListener('mouseenter', this.onMouseEnter);\n    }\n\n    ['mousedown', 'click', 'dblclick'].forEach(function (e) {\n      _this3.el.addEventListener(e, _this3.onPointerEvent, true);\n    });\n    ['touchstart', 'touchend', 'touchmove'].forEach(function (e) {\n      _this3.el.addEventListener(e, _this3.onPointerEvent, {\n        capture: true,\n        passive: true\n      });\n    });\n    this.el.addEventListener('mousemove', this.onMouseMove);\n    this.el.addEventListener('mouseleave', this.onMouseLeave);\n    this.contentWrapperEl.addEventListener('scroll', this.onScroll); // Browser zoom triggers a window resize\n\n    elWindow.addEventListener('resize', this.onWindowResize); // Hack for https://github.com/WICG/ResizeObserver/issues/38\n\n    var resizeObserverStarted = false;\n    var resizeObserver = elWindow.ResizeObserver || ResizeObserver;\n    this.resizeObserver = new resizeObserver(function () {\n      if (!resizeObserverStarted) return;\n\n      _this3.recalculate();\n    });\n    this.resizeObserver.observe(this.el);\n    this.resizeObserver.observe(this.contentEl);\n    elWindow.requestAnimationFrame(function () {\n      resizeObserverStarted = true;\n    }); // This is required to detect horizontal scroll. Vertical scroll only needs the resizeObserver.\n\n    this.mutationObserver = new elWindow.MutationObserver(this.recalculate);\n    this.mutationObserver.observe(this.contentEl, {\n      childList: true,\n      subtree: true,\n      characterData: true\n    });\n  };\n\n  _proto.recalculate = function recalculate() {\n    var elWindow = getElementWindow(this.el);\n    this.elStyles = elWindow.getComputedStyle(this.el);\n    this.isRtl = this.elStyles.direction === 'rtl';\n    var isHeightAuto = this.heightAutoObserverEl.offsetHeight <= 1;\n    var isWidthAuto = this.heightAutoObserverEl.offsetWidth <= 1;\n    var contentElOffsetWidth = this.contentEl.offsetWidth;\n    var contentWrapperElOffsetWidth = this.contentWrapperEl.offsetWidth;\n    var elOverflowX = this.elStyles.overflowX;\n    var elOverflowY = this.elStyles.overflowY;\n    this.contentEl.style.padding = this.elStyles.paddingTop + \" \" + this.elStyles.paddingRight + \" \" + this.elStyles.paddingBottom + \" \" + this.elStyles.paddingLeft;\n    this.wrapperEl.style.margin = \"-\" + this.elStyles.paddingTop + \" -\" + this.elStyles.paddingRight + \" -\" + this.elStyles.paddingBottom + \" -\" + this.elStyles.paddingLeft;\n    var contentElScrollHeight = this.contentEl.scrollHeight;\n    var contentElScrollWidth = this.contentEl.scrollWidth;\n    this.contentWrapperEl.style.height = isHeightAuto ? 'auto' : '100%'; // Determine placeholder size\n\n    this.placeholderEl.style.width = isWidthAuto ? contentElOffsetWidth + \"px\" : 'auto';\n    this.placeholderEl.style.height = contentElScrollHeight + \"px\";\n    var contentWrapperElOffsetHeight = this.contentWrapperEl.offsetHeight;\n    this.axis.x.isOverflowing = contentElScrollWidth > contentElOffsetWidth;\n    this.axis.y.isOverflowing = contentElScrollHeight > contentWrapperElOffsetHeight; // Set isOverflowing to false if user explicitely set hidden overflow\n\n    this.axis.x.isOverflowing = elOverflowX === 'hidden' ? false : this.axis.x.isOverflowing;\n    this.axis.y.isOverflowing = elOverflowY === 'hidden' ? false : this.axis.y.isOverflowing;\n    this.axis.x.forceVisible = this.options.forceVisible === 'x' || this.options.forceVisible === true;\n    this.axis.y.forceVisible = this.options.forceVisible === 'y' || this.options.forceVisible === true;\n    this.hideNativeScrollbar(); // Set isOverflowing to false if scrollbar is not necessary (content is shorter than offset)\n\n    var offsetForXScrollbar = this.axis.x.isOverflowing ? this.scrollbarWidth : 0;\n    var offsetForYScrollbar = this.axis.y.isOverflowing ? this.scrollbarWidth : 0;\n    this.axis.x.isOverflowing = this.axis.x.isOverflowing && contentElScrollWidth > contentWrapperElOffsetWidth - offsetForYScrollbar;\n    this.axis.y.isOverflowing = this.axis.y.isOverflowing && contentElScrollHeight > contentWrapperElOffsetHeight - offsetForXScrollbar;\n    this.axis.x.scrollbar.size = this.getScrollbarSize('x');\n    this.axis.y.scrollbar.size = this.getScrollbarSize('y');\n    this.axis.x.scrollbar.el.style.width = this.axis.x.scrollbar.size + \"px\";\n    this.axis.y.scrollbar.el.style.height = this.axis.y.scrollbar.size + \"px\";\n    this.positionScrollbar('x');\n    this.positionScrollbar('y');\n    this.toggleTrackVisibility('x');\n    this.toggleTrackVisibility('y');\n  }\n  /**\n   * Calculate scrollbar size\n   */\n  ;\n\n  _proto.getScrollbarSize = function getScrollbarSize(axis) {\n    if (axis === void 0) {\n      axis = 'y';\n    }\n\n    if (!this.axis[axis].isOverflowing) {\n      return 0;\n    }\n\n    var contentSize = this.contentEl[this.axis[axis].scrollSizeAttr];\n    var trackSize = this.axis[axis].track.el[this.axis[axis].offsetSizeAttr];\n    var scrollbarSize;\n    var scrollbarRatio = trackSize / contentSize; // Calculate new height/position of drag handle.\n\n    scrollbarSize = Math.max(~~(scrollbarRatio * trackSize), this.options.scrollbarMinSize);\n\n    if (this.options.scrollbarMaxSize) {\n      scrollbarSize = Math.min(scrollbarSize, this.options.scrollbarMaxSize);\n    }\n\n    return scrollbarSize;\n  };\n\n  _proto.positionScrollbar = function positionScrollbar(axis) {\n    if (axis === void 0) {\n      axis = 'y';\n    }\n\n    if (!this.axis[axis].isOverflowing) {\n      return;\n    }\n\n    var contentSize = this.contentWrapperEl[this.axis[axis].scrollSizeAttr];\n    var trackSize = this.axis[axis].track.el[this.axis[axis].offsetSizeAttr];\n    var hostSize = parseInt(this.elStyles[this.axis[axis].sizeAttr], 10);\n    var scrollbar = this.axis[axis].scrollbar;\n    var scrollOffset = this.contentWrapperEl[this.axis[axis].scrollOffsetAttr];\n    scrollOffset = axis === 'x' && this.isRtl && SimpleBar.getRtlHelpers().isRtlScrollingInverted ? -scrollOffset : scrollOffset;\n    var scrollPourcent = scrollOffset / (contentSize - hostSize);\n    var handleOffset = ~~((trackSize - scrollbar.size) * scrollPourcent);\n    handleOffset = axis === 'x' && this.isRtl && SimpleBar.getRtlHelpers().isRtlScrollbarInverted ? handleOffset + (trackSize - scrollbar.size) : handleOffset;\n    scrollbar.el.style.transform = axis === 'x' ? \"translate3d(\" + handleOffset + \"px, 0, 0)\" : \"translate3d(0, \" + handleOffset + \"px, 0)\";\n  };\n\n  _proto.toggleTrackVisibility = function toggleTrackVisibility(axis) {\n    if (axis === void 0) {\n      axis = 'y';\n    }\n\n    var track = this.axis[axis].track.el;\n    var scrollbar = this.axis[axis].scrollbar.el;\n\n    if (this.axis[axis].isOverflowing || this.axis[axis].forceVisible) {\n      track.style.visibility = 'visible';\n      this.contentWrapperEl.style[this.axis[axis].overflowAttr] = 'scroll';\n    } else {\n      track.style.visibility = 'hidden';\n      this.contentWrapperEl.style[this.axis[axis].overflowAttr] = 'hidden';\n    } // Even if forceVisible is enabled, scrollbar itself should be hidden\n\n\n    if (this.axis[axis].isOverflowing) {\n      scrollbar.style.display = 'block';\n    } else {\n      scrollbar.style.display = 'none';\n    }\n  };\n\n  _proto.hideNativeScrollbar = function hideNativeScrollbar() {\n    this.offsetEl.style[this.isRtl ? 'left' : 'right'] = this.axis.y.isOverflowing || this.axis.y.forceVisible ? \"-\" + this.scrollbarWidth + \"px\" : 0;\n    this.offsetEl.style.bottom = this.axis.x.isOverflowing || this.axis.x.forceVisible ? \"-\" + this.scrollbarWidth + \"px\" : 0;\n  }\n  /**\n   * On scroll event handling\n   */\n  ;\n\n  _proto.onMouseMoveForAxis = function onMouseMoveForAxis(axis) {\n    if (axis === void 0) {\n      axis = 'y';\n    }\n\n    this.axis[axis].track.rect = this.axis[axis].track.el.getBoundingClientRect();\n    this.axis[axis].scrollbar.rect = this.axis[axis].scrollbar.el.getBoundingClientRect();\n    var isWithinScrollbarBoundsX = this.isWithinBounds(this.axis[axis].scrollbar.rect);\n\n    if (isWithinScrollbarBoundsX) {\n      this.axis[axis].scrollbar.el.classList.add(this.classNames.hover);\n    } else {\n      this.axis[axis].scrollbar.el.classList.remove(this.classNames.hover);\n    }\n\n    if (this.isWithinBounds(this.axis[axis].track.rect)) {\n      this.showScrollbar(axis);\n      this.axis[axis].track.el.classList.add(this.classNames.hover);\n    } else {\n      this.axis[axis].track.el.classList.remove(this.classNames.hover);\n    }\n  };\n\n  _proto.onMouseLeaveForAxis = function onMouseLeaveForAxis(axis) {\n    if (axis === void 0) {\n      axis = 'y';\n    }\n\n    this.axis[axis].track.el.classList.remove(this.classNames.hover);\n    this.axis[axis].scrollbar.el.classList.remove(this.classNames.hover);\n  };\n\n  /**\n   * Show scrollbar\n   */\n  _proto.showScrollbar = function showScrollbar(axis) {\n    if (axis === void 0) {\n      axis = 'y';\n    }\n\n    var scrollbar = this.axis[axis].scrollbar.el;\n\n    if (!this.axis[axis].isVisible) {\n      scrollbar.classList.add(this.classNames.visible);\n      this.axis[axis].isVisible = true;\n    }\n\n    if (this.options.autoHide) {\n      this.hideScrollbars();\n    }\n  }\n  /**\n   * Hide Scrollbar\n   */\n  ;\n\n  /**\n   * on scrollbar handle drag movement starts\n   */\n  _proto.onDragStart = function onDragStart(e, axis) {\n    if (axis === void 0) {\n      axis = 'y';\n    }\n\n    var elDocument = getElementDocument(this.el);\n    var elWindow = getElementWindow(this.el);\n    var scrollbar = this.axis[axis].scrollbar; // Measure how far the user's mouse is from the top of the scrollbar drag handle.\n\n    var eventOffset = axis === 'y' ? e.pageY : e.pageX;\n    this.axis[axis].dragOffset = eventOffset - scrollbar.rect[this.axis[axis].offsetAttr];\n    this.draggedAxis = axis;\n    this.el.classList.add(this.classNames.dragging);\n    elDocument.addEventListener('mousemove', this.drag, true);\n    elDocument.addEventListener('mouseup', this.onEndDrag, true);\n\n    if (this.removePreventClickId === null) {\n      elDocument.addEventListener('click', this.preventClick, true);\n      elDocument.addEventListener('dblclick', this.preventClick, true);\n    } else {\n      elWindow.clearTimeout(this.removePreventClickId);\n      this.removePreventClickId = null;\n    }\n  }\n  /**\n   * Drag scrollbar handle\n   */\n  ;\n\n  _proto.onTrackClick = function onTrackClick(e, axis) {\n    var _this4 = this;\n\n    if (axis === void 0) {\n      axis = 'y';\n    }\n\n    if (!this.options.clickOnTrack) return;\n    var elWindow = getElementWindow(this.el);\n    this.axis[axis].scrollbar.rect = this.axis[axis].scrollbar.el.getBoundingClientRect();\n    var scrollbar = this.axis[axis].scrollbar;\n    var scrollbarOffset = scrollbar.rect[this.axis[axis].offsetAttr];\n    var hostSize = parseInt(this.elStyles[this.axis[axis].sizeAttr], 10);\n    var scrolled = this.contentWrapperEl[this.axis[axis].scrollOffsetAttr];\n    var t = axis === 'y' ? this.mouseY - scrollbarOffset : this.mouseX - scrollbarOffset;\n    var dir = t < 0 ? -1 : 1;\n    var scrollSize = dir === -1 ? scrolled - hostSize : scrolled + hostSize;\n\n    var scrollTo = function scrollTo() {\n      if (dir === -1) {\n        if (scrolled > scrollSize) {\n          var _this4$contentWrapper;\n\n          scrolled -= _this4.options.clickOnTrackSpeed;\n\n          _this4.contentWrapperEl.scrollTo((_this4$contentWrapper = {}, _this4$contentWrapper[_this4.axis[axis].offsetAttr] = scrolled, _this4$contentWrapper));\n\n          elWindow.requestAnimationFrame(scrollTo);\n        }\n      } else {\n        if (scrolled < scrollSize) {\n          var _this4$contentWrapper2;\n\n          scrolled += _this4.options.clickOnTrackSpeed;\n\n          _this4.contentWrapperEl.scrollTo((_this4$contentWrapper2 = {}, _this4$contentWrapper2[_this4.axis[axis].offsetAttr] = scrolled, _this4$contentWrapper2));\n\n          elWindow.requestAnimationFrame(scrollTo);\n        }\n      }\n    };\n\n    scrollTo();\n  }\n  /**\n   * Getter for content element\n   */\n  ;\n\n  _proto.getContentElement = function getContentElement() {\n    return this.contentEl;\n  }\n  /**\n   * Getter for original scrolling element\n   */\n  ;\n\n  _proto.getScrollElement = function getScrollElement() {\n    return this.contentWrapperEl;\n  };\n\n  _proto.getScrollbarWidth = function getScrollbarWidth() {\n    // Try/catch for FF 56 throwing on undefined computedStyles\n    try {\n      // Detect browsers supporting CSS scrollbar styling and do not calculate\n      if (getComputedStyle(this.contentWrapperEl, '::-webkit-scrollbar').display === 'none' || 'scrollbarWidth' in document.documentElement.style || '-ms-overflow-style' in document.documentElement.style) {\n        return 0;\n      } else {\n        return scrollbarWidth(this.el);\n      }\n    } catch (e) {\n      return scrollbarWidth(this.el);\n    }\n  };\n\n  _proto.removeListeners = function removeListeners() {\n    var _this5 = this;\n\n    var elWindow = getElementWindow(this.el); // Event listeners\n\n    if (this.options.autoHide) {\n      this.el.removeEventListener('mouseenter', this.onMouseEnter);\n    }\n\n    ['mousedown', 'click', 'dblclick'].forEach(function (e) {\n      _this5.el.removeEventListener(e, _this5.onPointerEvent, true);\n    });\n    ['touchstart', 'touchend', 'touchmove'].forEach(function (e) {\n      _this5.el.removeEventListener(e, _this5.onPointerEvent, {\n        capture: true,\n        passive: true\n      });\n    });\n    this.el.removeEventListener('mousemove', this.onMouseMove);\n    this.el.removeEventListener('mouseleave', this.onMouseLeave);\n\n    if (this.contentWrapperEl) {\n      this.contentWrapperEl.removeEventListener('scroll', this.onScroll);\n    }\n\n    elWindow.removeEventListener('resize', this.onWindowResize);\n\n    if (this.mutationObserver) {\n      this.mutationObserver.disconnect();\n    }\n\n    if (this.resizeObserver) {\n      this.resizeObserver.disconnect();\n    } // Cancel all debounced functions\n\n\n    this.recalculate.cancel();\n    this.onMouseMove.cancel();\n    this.hideScrollbars.cancel();\n    this.onWindowResize.cancel();\n  }\n  /**\n   * UnMount mutation observer and delete SimpleBar instance from DOM element\n   */\n  ;\n\n  _proto.unMount = function unMount() {\n    this.removeListeners();\n    SimpleBar.instances.delete(this.el);\n  }\n  /**\n   * Check if mouse is within bounds\n   */\n  ;\n\n  _proto.isWithinBounds = function isWithinBounds(bbox) {\n    return this.mouseX >= bbox.left && this.mouseX <= bbox.left + bbox.width && this.mouseY >= bbox.top && this.mouseY <= bbox.top + bbox.height;\n  }\n  /**\n   * Find element children matches query\n   */\n  ;\n\n  _proto.findChild = function findChild(el, query) {\n    var matches = el.matches || el.webkitMatchesSelector || el.mozMatchesSelector || el.msMatchesSelector;\n    return Array.prototype.filter.call(el.children, function (child) {\n      return matches.call(child, query);\n    })[0];\n  };\n\n  return SimpleBar;\n}();\n\nSimpleBar.defaultOptions = {\n  autoHide: true,\n  forceVisible: false,\n  clickOnTrack: true,\n  clickOnTrackSpeed: 40,\n  classNames: {\n    contentEl: 'simplebar-content',\n    contentWrapper: 'simplebar-content-wrapper',\n    offset: 'simplebar-offset',\n    mask: 'simplebar-mask',\n    wrapper: 'simplebar-wrapper',\n    placeholder: 'simplebar-placeholder',\n    scrollbar: 'simplebar-scrollbar',\n    track: 'simplebar-track',\n    heightAutoObserverWrapperEl: 'simplebar-height-auto-observer-wrapper',\n    heightAutoObserverEl: 'simplebar-height-auto-observer',\n    visible: 'simplebar-visible',\n    horizontal: 'simplebar-horizontal',\n    vertical: 'simplebar-vertical',\n    hover: 'simplebar-hover',\n    dragging: 'simplebar-dragging'\n  },\n  scrollbarMinSize: 25,\n  scrollbarMaxSize: 0,\n  timeout: 1000\n};\nSimpleBar.instances = new WeakMap();\n\nexport default SimpleBar;\n//# sourceMappingURL=simplebar-core.esm.js.map\n"
  },
  {
    "path": "static/assets/vendor/simplebar/dist/simplebar.esm.js",
    "content": "/**\n * SimpleBar.js - v5.3.5\n * Scrollbars, simpler.\n * https://grsmto.github.io/simplebar/\n *\n * Made by Adrien Denat from a fork by Jonathan Nicol\n * Under MIT License\n */\n\nimport 'core-js/modules/es.array.for-each';\nimport 'core-js/modules/web.dom-collections.for-each';\nimport canUseDOM from 'can-use-dom';\nimport 'core-js/modules/es.array.filter';\nimport 'core-js/modules/es.array.iterator';\nimport 'core-js/modules/es.object.assign';\nimport 'core-js/modules/es.object.to-string';\nimport 'core-js/modules/es.parse-int';\nimport 'core-js/modules/es.string.iterator';\nimport 'core-js/modules/es.weak-map';\nimport 'core-js/modules/web.dom-collections.iterator';\nimport throttle from 'lodash.throttle';\nimport debounce from 'lodash.debounce';\nimport memoize from 'lodash.memoize';\nimport { ResizeObserver } from '@juggle/resize-observer';\nimport 'core-js/modules/es.array.reduce';\nimport 'core-js/modules/es.function.name';\nimport 'core-js/modules/es.regexp.exec';\nimport 'core-js/modules/es.string.match';\nimport 'core-js/modules/es.string.replace';\n\n// Helper function to retrieve options from element attributes\nvar getOptions = function getOptions(obj) {\n  var options = Array.prototype.reduce.call(obj, function (acc, attribute) {\n    var option = attribute.name.match(/data-simplebar-(.+)/);\n\n    if (option) {\n      var key = option[1].replace(/\\W+(.)/g, function (x, chr) {\n        return chr.toUpperCase();\n      });\n\n      switch (attribute.value) {\n        case 'true':\n          acc[key] = true;\n          break;\n\n        case 'false':\n          acc[key] = false;\n          break;\n\n        case undefined:\n          acc[key] = true;\n          break;\n\n        default:\n          acc[key] = attribute.value;\n      }\n    }\n\n    return acc;\n  }, {});\n  return options;\n};\nfunction getElementWindow(element) {\n  if (!element || !element.ownerDocument || !element.ownerDocument.defaultView) {\n    return window;\n  }\n\n  return element.ownerDocument.defaultView;\n}\nfunction getElementDocument(element) {\n  if (!element || !element.ownerDocument) {\n    return document;\n  }\n\n  return element.ownerDocument;\n}\n\nvar cachedScrollbarWidth = null;\nvar cachedDevicePixelRatio = null;\n\nif (canUseDOM) {\n  window.addEventListener('resize', function () {\n    if (cachedDevicePixelRatio !== window.devicePixelRatio) {\n      cachedDevicePixelRatio = window.devicePixelRatio;\n      cachedScrollbarWidth = null;\n    }\n  });\n}\n\nfunction scrollbarWidth(el) {\n  if (cachedScrollbarWidth === null) {\n    var document = getElementDocument(el);\n\n    if (typeof document === 'undefined') {\n      cachedScrollbarWidth = 0;\n      return cachedScrollbarWidth;\n    }\n\n    var body = document.body;\n    var box = document.createElement('div');\n    box.classList.add('simplebar-hide-scrollbar');\n    body.appendChild(box);\n    var width = box.getBoundingClientRect().right;\n    body.removeChild(box);\n    cachedScrollbarWidth = width;\n  }\n\n  return cachedScrollbarWidth;\n}\n\nvar SimpleBar =\n/*#__PURE__*/\nfunction () {\n  function SimpleBar(element, options) {\n    var _this = this;\n\n    this.onScroll = function () {\n      var elWindow = getElementWindow(_this.el);\n\n      if (!_this.scrollXTicking) {\n        elWindow.requestAnimationFrame(_this.scrollX);\n        _this.scrollXTicking = true;\n      }\n\n      if (!_this.scrollYTicking) {\n        elWindow.requestAnimationFrame(_this.scrollY);\n        _this.scrollYTicking = true;\n      }\n    };\n\n    this.scrollX = function () {\n      if (_this.axis.x.isOverflowing) {\n        _this.showScrollbar('x');\n\n        _this.positionScrollbar('x');\n      }\n\n      _this.scrollXTicking = false;\n    };\n\n    this.scrollY = function () {\n      if (_this.axis.y.isOverflowing) {\n        _this.showScrollbar('y');\n\n        _this.positionScrollbar('y');\n      }\n\n      _this.scrollYTicking = false;\n    };\n\n    this.onMouseEnter = function () {\n      _this.showScrollbar('x');\n\n      _this.showScrollbar('y');\n    };\n\n    this.onMouseMove = function (e) {\n      _this.mouseX = e.clientX;\n      _this.mouseY = e.clientY;\n\n      if (_this.axis.x.isOverflowing || _this.axis.x.forceVisible) {\n        _this.onMouseMoveForAxis('x');\n      }\n\n      if (_this.axis.y.isOverflowing || _this.axis.y.forceVisible) {\n        _this.onMouseMoveForAxis('y');\n      }\n    };\n\n    this.onMouseLeave = function () {\n      _this.onMouseMove.cancel();\n\n      if (_this.axis.x.isOverflowing || _this.axis.x.forceVisible) {\n        _this.onMouseLeaveForAxis('x');\n      }\n\n      if (_this.axis.y.isOverflowing || _this.axis.y.forceVisible) {\n        _this.onMouseLeaveForAxis('y');\n      }\n\n      _this.mouseX = -1;\n      _this.mouseY = -1;\n    };\n\n    this.onWindowResize = function () {\n      // Recalculate scrollbarWidth in case it's a zoom\n      _this.scrollbarWidth = _this.getScrollbarWidth();\n\n      _this.hideNativeScrollbar();\n    };\n\n    this.hideScrollbars = function () {\n      _this.axis.x.track.rect = _this.axis.x.track.el.getBoundingClientRect();\n      _this.axis.y.track.rect = _this.axis.y.track.el.getBoundingClientRect();\n\n      if (!_this.isWithinBounds(_this.axis.y.track.rect)) {\n        _this.axis.y.scrollbar.el.classList.remove(_this.classNames.visible);\n\n        _this.axis.y.isVisible = false;\n      }\n\n      if (!_this.isWithinBounds(_this.axis.x.track.rect)) {\n        _this.axis.x.scrollbar.el.classList.remove(_this.classNames.visible);\n\n        _this.axis.x.isVisible = false;\n      }\n    };\n\n    this.onPointerEvent = function (e) {\n      var isWithinTrackXBounds, isWithinTrackYBounds;\n      _this.axis.x.track.rect = _this.axis.x.track.el.getBoundingClientRect();\n      _this.axis.y.track.rect = _this.axis.y.track.el.getBoundingClientRect();\n\n      if (_this.axis.x.isOverflowing || _this.axis.x.forceVisible) {\n        isWithinTrackXBounds = _this.isWithinBounds(_this.axis.x.track.rect);\n      }\n\n      if (_this.axis.y.isOverflowing || _this.axis.y.forceVisible) {\n        isWithinTrackYBounds = _this.isWithinBounds(_this.axis.y.track.rect);\n      } // If any pointer event is called on the scrollbar\n\n\n      if (isWithinTrackXBounds || isWithinTrackYBounds) {\n        // Preventing the event's default action stops text being\n        // selectable during the drag.\n        e.preventDefault(); // Prevent event leaking\n\n        e.stopPropagation();\n\n        if (e.type === 'mousedown') {\n          if (isWithinTrackXBounds) {\n            _this.axis.x.scrollbar.rect = _this.axis.x.scrollbar.el.getBoundingClientRect();\n\n            if (_this.isWithinBounds(_this.axis.x.scrollbar.rect)) {\n              _this.onDragStart(e, 'x');\n            } else {\n              _this.onTrackClick(e, 'x');\n            }\n          }\n\n          if (isWithinTrackYBounds) {\n            _this.axis.y.scrollbar.rect = _this.axis.y.scrollbar.el.getBoundingClientRect();\n\n            if (_this.isWithinBounds(_this.axis.y.scrollbar.rect)) {\n              _this.onDragStart(e, 'y');\n            } else {\n              _this.onTrackClick(e, 'y');\n            }\n          }\n        }\n      }\n    };\n\n    this.drag = function (e) {\n      var eventOffset;\n      var track = _this.axis[_this.draggedAxis].track;\n      var trackSize = track.rect[_this.axis[_this.draggedAxis].sizeAttr];\n      var scrollbar = _this.axis[_this.draggedAxis].scrollbar;\n      var contentSize = _this.contentWrapperEl[_this.axis[_this.draggedAxis].scrollSizeAttr];\n      var hostSize = parseInt(_this.elStyles[_this.axis[_this.draggedAxis].sizeAttr], 10);\n      e.preventDefault();\n      e.stopPropagation();\n\n      if (_this.draggedAxis === 'y') {\n        eventOffset = e.pageY;\n      } else {\n        eventOffset = e.pageX;\n      } // Calculate how far the user's mouse is from the top/left of the scrollbar (minus the dragOffset).\n\n\n      var dragPos = eventOffset - track.rect[_this.axis[_this.draggedAxis].offsetAttr] - _this.axis[_this.draggedAxis].dragOffset; // Convert the mouse position into a percentage of the scrollbar height/width.\n\n      var dragPerc = dragPos / (trackSize - scrollbar.size); // Scroll the content by the same percentage.\n\n      var scrollPos = dragPerc * (contentSize - hostSize); // Fix browsers inconsistency on RTL\n\n      if (_this.draggedAxis === 'x') {\n        scrollPos = _this.isRtl && SimpleBar.getRtlHelpers().isRtlScrollbarInverted ? scrollPos - (trackSize + scrollbar.size) : scrollPos;\n        scrollPos = _this.isRtl && SimpleBar.getRtlHelpers().isRtlScrollingInverted ? -scrollPos : scrollPos;\n      }\n\n      _this.contentWrapperEl[_this.axis[_this.draggedAxis].scrollOffsetAttr] = scrollPos;\n    };\n\n    this.onEndDrag = function (e) {\n      var elDocument = getElementDocument(_this.el);\n      var elWindow = getElementWindow(_this.el);\n      e.preventDefault();\n      e.stopPropagation();\n\n      _this.el.classList.remove(_this.classNames.dragging);\n\n      elDocument.removeEventListener('mousemove', _this.drag, true);\n      elDocument.removeEventListener('mouseup', _this.onEndDrag, true);\n      _this.removePreventClickId = elWindow.setTimeout(function () {\n        // Remove these asynchronously so we still suppress click events\n        // generated simultaneously with mouseup.\n        elDocument.removeEventListener('click', _this.preventClick, true);\n        elDocument.removeEventListener('dblclick', _this.preventClick, true);\n        _this.removePreventClickId = null;\n      });\n    };\n\n    this.preventClick = function (e) {\n      e.preventDefault();\n      e.stopPropagation();\n    };\n\n    this.el = element;\n    this.minScrollbarWidth = 20;\n    this.options = Object.assign({}, SimpleBar.defaultOptions, {}, options);\n    this.classNames = Object.assign({}, SimpleBar.defaultOptions.classNames, {}, this.options.classNames);\n    this.axis = {\n      x: {\n        scrollOffsetAttr: 'scrollLeft',\n        sizeAttr: 'width',\n        scrollSizeAttr: 'scrollWidth',\n        offsetSizeAttr: 'offsetWidth',\n        offsetAttr: 'left',\n        overflowAttr: 'overflowX',\n        dragOffset: 0,\n        isOverflowing: true,\n        isVisible: false,\n        forceVisible: false,\n        track: {},\n        scrollbar: {}\n      },\n      y: {\n        scrollOffsetAttr: 'scrollTop',\n        sizeAttr: 'height',\n        scrollSizeAttr: 'scrollHeight',\n        offsetSizeAttr: 'offsetHeight',\n        offsetAttr: 'top',\n        overflowAttr: 'overflowY',\n        dragOffset: 0,\n        isOverflowing: true,\n        isVisible: false,\n        forceVisible: false,\n        track: {},\n        scrollbar: {}\n      }\n    };\n    this.removePreventClickId = null; // Don't re-instantiate over an existing one\n\n    if (SimpleBar.instances.has(this.el)) {\n      return;\n    }\n\n    this.recalculate = throttle(this.recalculate.bind(this), 64);\n    this.onMouseMove = throttle(this.onMouseMove.bind(this), 64);\n    this.hideScrollbars = debounce(this.hideScrollbars.bind(this), this.options.timeout);\n    this.onWindowResize = debounce(this.onWindowResize.bind(this), 64, {\n      leading: true\n    });\n    SimpleBar.getRtlHelpers = memoize(SimpleBar.getRtlHelpers);\n    this.init();\n  }\n  /**\n   * Static properties\n   */\n\n  /**\n   * Helper to fix browsers inconsistency on RTL:\n   *  - Firefox inverts the scrollbar initial position\n   *  - IE11 inverts both scrollbar position and scrolling offset\n   * Directly inspired by @KingSora's OverlayScrollbars https://github.com/KingSora/OverlayScrollbars/blob/master/js/OverlayScrollbars.js#L1634\n   */\n\n\n  SimpleBar.getRtlHelpers = function getRtlHelpers() {\n    var dummyDiv = document.createElement('div');\n    dummyDiv.innerHTML = '<div class=\"hs-dummy-scrollbar-size\"><div style=\"height: 200%; width: 200%; margin: 10px 0;\"></div></div>';\n    var scrollbarDummyEl = dummyDiv.firstElementChild;\n    document.body.appendChild(scrollbarDummyEl);\n    var dummyContainerChild = scrollbarDummyEl.firstElementChild;\n    scrollbarDummyEl.scrollLeft = 0;\n    var dummyContainerOffset = SimpleBar.getOffset(scrollbarDummyEl);\n    var dummyContainerChildOffset = SimpleBar.getOffset(dummyContainerChild);\n    scrollbarDummyEl.scrollLeft = 999;\n    var dummyContainerScrollOffsetAfterScroll = SimpleBar.getOffset(dummyContainerChild);\n    return {\n      // determines if the scrolling is responding with negative values\n      isRtlScrollingInverted: dummyContainerOffset.left !== dummyContainerChildOffset.left && dummyContainerChildOffset.left - dummyContainerScrollOffsetAfterScroll.left !== 0,\n      // determines if the origin scrollbar position is inverted or not (positioned on left or right)\n      isRtlScrollbarInverted: dummyContainerOffset.left !== dummyContainerChildOffset.left\n    };\n  };\n\n  SimpleBar.getOffset = function getOffset(el) {\n    var rect = el.getBoundingClientRect();\n    var elDocument = getElementDocument(el);\n    var elWindow = getElementWindow(el);\n    return {\n      top: rect.top + (elWindow.pageYOffset || elDocument.documentElement.scrollTop),\n      left: rect.left + (elWindow.pageXOffset || elDocument.documentElement.scrollLeft)\n    };\n  };\n\n  var _proto = SimpleBar.prototype;\n\n  _proto.init = function init() {\n    // Save a reference to the instance, so we know this DOM node has already been instancied\n    SimpleBar.instances.set(this.el, this); // We stop here on server-side\n\n    if (canUseDOM) {\n      this.initDOM();\n      this.scrollbarWidth = this.getScrollbarWidth();\n      this.recalculate();\n      this.initListeners();\n    }\n  };\n\n  _proto.initDOM = function initDOM() {\n    var _this2 = this;\n\n    // make sure this element doesn't have the elements yet\n    if (Array.prototype.filter.call(this.el.children, function (child) {\n      return child.classList.contains(_this2.classNames.wrapper);\n    }).length) {\n      // assume that element has his DOM already initiated\n      this.wrapperEl = this.el.querySelector(\".\" + this.classNames.wrapper);\n      this.contentWrapperEl = this.options.scrollableNode || this.el.querySelector(\".\" + this.classNames.contentWrapper);\n      this.contentEl = this.options.contentNode || this.el.querySelector(\".\" + this.classNames.contentEl);\n      this.offsetEl = this.el.querySelector(\".\" + this.classNames.offset);\n      this.maskEl = this.el.querySelector(\".\" + this.classNames.mask);\n      this.placeholderEl = this.findChild(this.wrapperEl, \".\" + this.classNames.placeholder);\n      this.heightAutoObserverWrapperEl = this.el.querySelector(\".\" + this.classNames.heightAutoObserverWrapperEl);\n      this.heightAutoObserverEl = this.el.querySelector(\".\" + this.classNames.heightAutoObserverEl);\n      this.axis.x.track.el = this.findChild(this.el, \".\" + this.classNames.track + \".\" + this.classNames.horizontal);\n      this.axis.y.track.el = this.findChild(this.el, \".\" + this.classNames.track + \".\" + this.classNames.vertical);\n    } else {\n      // Prepare DOM\n      this.wrapperEl = document.createElement('div');\n      this.contentWrapperEl = document.createElement('div');\n      this.offsetEl = document.createElement('div');\n      this.maskEl = document.createElement('div');\n      this.contentEl = document.createElement('div');\n      this.placeholderEl = document.createElement('div');\n      this.heightAutoObserverWrapperEl = document.createElement('div');\n      this.heightAutoObserverEl = document.createElement('div');\n      this.wrapperEl.classList.add(this.classNames.wrapper);\n      this.contentWrapperEl.classList.add(this.classNames.contentWrapper);\n      this.offsetEl.classList.add(this.classNames.offset);\n      this.maskEl.classList.add(this.classNames.mask);\n      this.contentEl.classList.add(this.classNames.contentEl);\n      this.placeholderEl.classList.add(this.classNames.placeholder);\n      this.heightAutoObserverWrapperEl.classList.add(this.classNames.heightAutoObserverWrapperEl);\n      this.heightAutoObserverEl.classList.add(this.classNames.heightAutoObserverEl);\n\n      while (this.el.firstChild) {\n        this.contentEl.appendChild(this.el.firstChild);\n      }\n\n      this.contentWrapperEl.appendChild(this.contentEl);\n      this.offsetEl.appendChild(this.contentWrapperEl);\n      this.maskEl.appendChild(this.offsetEl);\n      this.heightAutoObserverWrapperEl.appendChild(this.heightAutoObserverEl);\n      this.wrapperEl.appendChild(this.heightAutoObserverWrapperEl);\n      this.wrapperEl.appendChild(this.maskEl);\n      this.wrapperEl.appendChild(this.placeholderEl);\n      this.el.appendChild(this.wrapperEl);\n    }\n\n    if (!this.axis.x.track.el || !this.axis.y.track.el) {\n      var track = document.createElement('div');\n      var scrollbar = document.createElement('div');\n      track.classList.add(this.classNames.track);\n      scrollbar.classList.add(this.classNames.scrollbar);\n      track.appendChild(scrollbar);\n      this.axis.x.track.el = track.cloneNode(true);\n      this.axis.x.track.el.classList.add(this.classNames.horizontal);\n      this.axis.y.track.el = track.cloneNode(true);\n      this.axis.y.track.el.classList.add(this.classNames.vertical);\n      this.el.appendChild(this.axis.x.track.el);\n      this.el.appendChild(this.axis.y.track.el);\n    }\n\n    this.axis.x.scrollbar.el = this.axis.x.track.el.querySelector(\".\" + this.classNames.scrollbar);\n    this.axis.y.scrollbar.el = this.axis.y.track.el.querySelector(\".\" + this.classNames.scrollbar);\n\n    if (!this.options.autoHide) {\n      this.axis.x.scrollbar.el.classList.add(this.classNames.visible);\n      this.axis.y.scrollbar.el.classList.add(this.classNames.visible);\n    }\n\n    this.el.setAttribute('data-simplebar', 'init');\n  };\n\n  _proto.initListeners = function initListeners() {\n    var _this3 = this;\n\n    var elWindow = getElementWindow(this.el); // Event listeners\n\n    if (this.options.autoHide) {\n      this.el.addEventListener('mouseenter', this.onMouseEnter);\n    }\n\n    ['mousedown', 'click', 'dblclick'].forEach(function (e) {\n      _this3.el.addEventListener(e, _this3.onPointerEvent, true);\n    });\n    ['touchstart', 'touchend', 'touchmove'].forEach(function (e) {\n      _this3.el.addEventListener(e, _this3.onPointerEvent, {\n        capture: true,\n        passive: true\n      });\n    });\n    this.el.addEventListener('mousemove', this.onMouseMove);\n    this.el.addEventListener('mouseleave', this.onMouseLeave);\n    this.contentWrapperEl.addEventListener('scroll', this.onScroll); // Browser zoom triggers a window resize\n\n    elWindow.addEventListener('resize', this.onWindowResize); // Hack for https://github.com/WICG/ResizeObserver/issues/38\n\n    var resizeObserverStarted = false;\n    var resizeObserver = elWindow.ResizeObserver || ResizeObserver;\n    this.resizeObserver = new resizeObserver(function () {\n      if (!resizeObserverStarted) return;\n\n      _this3.recalculate();\n    });\n    this.resizeObserver.observe(this.el);\n    this.resizeObserver.observe(this.contentEl);\n    elWindow.requestAnimationFrame(function () {\n      resizeObserverStarted = true;\n    }); // This is required to detect horizontal scroll. Vertical scroll only needs the resizeObserver.\n\n    this.mutationObserver = new elWindow.MutationObserver(this.recalculate);\n    this.mutationObserver.observe(this.contentEl, {\n      childList: true,\n      subtree: true,\n      characterData: true\n    });\n  };\n\n  _proto.recalculate = function recalculate() {\n    var elWindow = getElementWindow(this.el);\n    this.elStyles = elWindow.getComputedStyle(this.el);\n    this.isRtl = this.elStyles.direction === 'rtl';\n    var isHeightAuto = this.heightAutoObserverEl.offsetHeight <= 1;\n    var isWidthAuto = this.heightAutoObserverEl.offsetWidth <= 1;\n    var contentElOffsetWidth = this.contentEl.offsetWidth;\n    var contentWrapperElOffsetWidth = this.contentWrapperEl.offsetWidth;\n    var elOverflowX = this.elStyles.overflowX;\n    var elOverflowY = this.elStyles.overflowY;\n    this.contentEl.style.padding = this.elStyles.paddingTop + \" \" + this.elStyles.paddingRight + \" \" + this.elStyles.paddingBottom + \" \" + this.elStyles.paddingLeft;\n    this.wrapperEl.style.margin = \"-\" + this.elStyles.paddingTop + \" -\" + this.elStyles.paddingRight + \" -\" + this.elStyles.paddingBottom + \" -\" + this.elStyles.paddingLeft;\n    var contentElScrollHeight = this.contentEl.scrollHeight;\n    var contentElScrollWidth = this.contentEl.scrollWidth;\n    this.contentWrapperEl.style.height = isHeightAuto ? 'auto' : '100%'; // Determine placeholder size\n\n    this.placeholderEl.style.width = isWidthAuto ? contentElOffsetWidth + \"px\" : 'auto';\n    this.placeholderEl.style.height = contentElScrollHeight + \"px\";\n    var contentWrapperElOffsetHeight = this.contentWrapperEl.offsetHeight;\n    this.axis.x.isOverflowing = contentElScrollWidth > contentElOffsetWidth;\n    this.axis.y.isOverflowing = contentElScrollHeight > contentWrapperElOffsetHeight; // Set isOverflowing to false if user explicitely set hidden overflow\n\n    this.axis.x.isOverflowing = elOverflowX === 'hidden' ? false : this.axis.x.isOverflowing;\n    this.axis.y.isOverflowing = elOverflowY === 'hidden' ? false : this.axis.y.isOverflowing;\n    this.axis.x.forceVisible = this.options.forceVisible === 'x' || this.options.forceVisible === true;\n    this.axis.y.forceVisible = this.options.forceVisible === 'y' || this.options.forceVisible === true;\n    this.hideNativeScrollbar(); // Set isOverflowing to false if scrollbar is not necessary (content is shorter than offset)\n\n    var offsetForXScrollbar = this.axis.x.isOverflowing ? this.scrollbarWidth : 0;\n    var offsetForYScrollbar = this.axis.y.isOverflowing ? this.scrollbarWidth : 0;\n    this.axis.x.isOverflowing = this.axis.x.isOverflowing && contentElScrollWidth > contentWrapperElOffsetWidth - offsetForYScrollbar;\n    this.axis.y.isOverflowing = this.axis.y.isOverflowing && contentElScrollHeight > contentWrapperElOffsetHeight - offsetForXScrollbar;\n    this.axis.x.scrollbar.size = this.getScrollbarSize('x');\n    this.axis.y.scrollbar.size = this.getScrollbarSize('y');\n    this.axis.x.scrollbar.el.style.width = this.axis.x.scrollbar.size + \"px\";\n    this.axis.y.scrollbar.el.style.height = this.axis.y.scrollbar.size + \"px\";\n    this.positionScrollbar('x');\n    this.positionScrollbar('y');\n    this.toggleTrackVisibility('x');\n    this.toggleTrackVisibility('y');\n  }\n  /**\n   * Calculate scrollbar size\n   */\n  ;\n\n  _proto.getScrollbarSize = function getScrollbarSize(axis) {\n    if (axis === void 0) {\n      axis = 'y';\n    }\n\n    if (!this.axis[axis].isOverflowing) {\n      return 0;\n    }\n\n    var contentSize = this.contentEl[this.axis[axis].scrollSizeAttr];\n    var trackSize = this.axis[axis].track.el[this.axis[axis].offsetSizeAttr];\n    var scrollbarSize;\n    var scrollbarRatio = trackSize / contentSize; // Calculate new height/position of drag handle.\n\n    scrollbarSize = Math.max(~~(scrollbarRatio * trackSize), this.options.scrollbarMinSize);\n\n    if (this.options.scrollbarMaxSize) {\n      scrollbarSize = Math.min(scrollbarSize, this.options.scrollbarMaxSize);\n    }\n\n    return scrollbarSize;\n  };\n\n  _proto.positionScrollbar = function positionScrollbar(axis) {\n    if (axis === void 0) {\n      axis = 'y';\n    }\n\n    if (!this.axis[axis].isOverflowing) {\n      return;\n    }\n\n    var contentSize = this.contentWrapperEl[this.axis[axis].scrollSizeAttr];\n    var trackSize = this.axis[axis].track.el[this.axis[axis].offsetSizeAttr];\n    var hostSize = parseInt(this.elStyles[this.axis[axis].sizeAttr], 10);\n    var scrollbar = this.axis[axis].scrollbar;\n    var scrollOffset = this.contentWrapperEl[this.axis[axis].scrollOffsetAttr];\n    scrollOffset = axis === 'x' && this.isRtl && SimpleBar.getRtlHelpers().isRtlScrollingInverted ? -scrollOffset : scrollOffset;\n    var scrollPourcent = scrollOffset / (contentSize - hostSize);\n    var handleOffset = ~~((trackSize - scrollbar.size) * scrollPourcent);\n    handleOffset = axis === 'x' && this.isRtl && SimpleBar.getRtlHelpers().isRtlScrollbarInverted ? handleOffset + (trackSize - scrollbar.size) : handleOffset;\n    scrollbar.el.style.transform = axis === 'x' ? \"translate3d(\" + handleOffset + \"px, 0, 0)\" : \"translate3d(0, \" + handleOffset + \"px, 0)\";\n  };\n\n  _proto.toggleTrackVisibility = function toggleTrackVisibility(axis) {\n    if (axis === void 0) {\n      axis = 'y';\n    }\n\n    var track = this.axis[axis].track.el;\n    var scrollbar = this.axis[axis].scrollbar.el;\n\n    if (this.axis[axis].isOverflowing || this.axis[axis].forceVisible) {\n      track.style.visibility = 'visible';\n      this.contentWrapperEl.style[this.axis[axis].overflowAttr] = 'scroll';\n    } else {\n      track.style.visibility = 'hidden';\n      this.contentWrapperEl.style[this.axis[axis].overflowAttr] = 'hidden';\n    } // Even if forceVisible is enabled, scrollbar itself should be hidden\n\n\n    if (this.axis[axis].isOverflowing) {\n      scrollbar.style.display = 'block';\n    } else {\n      scrollbar.style.display = 'none';\n    }\n  };\n\n  _proto.hideNativeScrollbar = function hideNativeScrollbar() {\n    this.offsetEl.style[this.isRtl ? 'left' : 'right'] = this.axis.y.isOverflowing || this.axis.y.forceVisible ? \"-\" + this.scrollbarWidth + \"px\" : 0;\n    this.offsetEl.style.bottom = this.axis.x.isOverflowing || this.axis.x.forceVisible ? \"-\" + this.scrollbarWidth + \"px\" : 0;\n  }\n  /**\n   * On scroll event handling\n   */\n  ;\n\n  _proto.onMouseMoveForAxis = function onMouseMoveForAxis(axis) {\n    if (axis === void 0) {\n      axis = 'y';\n    }\n\n    this.axis[axis].track.rect = this.axis[axis].track.el.getBoundingClientRect();\n    this.axis[axis].scrollbar.rect = this.axis[axis].scrollbar.el.getBoundingClientRect();\n    var isWithinScrollbarBoundsX = this.isWithinBounds(this.axis[axis].scrollbar.rect);\n\n    if (isWithinScrollbarBoundsX) {\n      this.axis[axis].scrollbar.el.classList.add(this.classNames.hover);\n    } else {\n      this.axis[axis].scrollbar.el.classList.remove(this.classNames.hover);\n    }\n\n    if (this.isWithinBounds(this.axis[axis].track.rect)) {\n      this.showScrollbar(axis);\n      this.axis[axis].track.el.classList.add(this.classNames.hover);\n    } else {\n      this.axis[axis].track.el.classList.remove(this.classNames.hover);\n    }\n  };\n\n  _proto.onMouseLeaveForAxis = function onMouseLeaveForAxis(axis) {\n    if (axis === void 0) {\n      axis = 'y';\n    }\n\n    this.axis[axis].track.el.classList.remove(this.classNames.hover);\n    this.axis[axis].scrollbar.el.classList.remove(this.classNames.hover);\n  };\n\n  /**\n   * Show scrollbar\n   */\n  _proto.showScrollbar = function showScrollbar(axis) {\n    if (axis === void 0) {\n      axis = 'y';\n    }\n\n    var scrollbar = this.axis[axis].scrollbar.el;\n\n    if (!this.axis[axis].isVisible) {\n      scrollbar.classList.add(this.classNames.visible);\n      this.axis[axis].isVisible = true;\n    }\n\n    if (this.options.autoHide) {\n      this.hideScrollbars();\n    }\n  }\n  /**\n   * Hide Scrollbar\n   */\n  ;\n\n  /**\n   * on scrollbar handle drag movement starts\n   */\n  _proto.onDragStart = function onDragStart(e, axis) {\n    if (axis === void 0) {\n      axis = 'y';\n    }\n\n    var elDocument = getElementDocument(this.el);\n    var elWindow = getElementWindow(this.el);\n    var scrollbar = this.axis[axis].scrollbar; // Measure how far the user's mouse is from the top of the scrollbar drag handle.\n\n    var eventOffset = axis === 'y' ? e.pageY : e.pageX;\n    this.axis[axis].dragOffset = eventOffset - scrollbar.rect[this.axis[axis].offsetAttr];\n    this.draggedAxis = axis;\n    this.el.classList.add(this.classNames.dragging);\n    elDocument.addEventListener('mousemove', this.drag, true);\n    elDocument.addEventListener('mouseup', this.onEndDrag, true);\n\n    if (this.removePreventClickId === null) {\n      elDocument.addEventListener('click', this.preventClick, true);\n      elDocument.addEventListener('dblclick', this.preventClick, true);\n    } else {\n      elWindow.clearTimeout(this.removePreventClickId);\n      this.removePreventClickId = null;\n    }\n  }\n  /**\n   * Drag scrollbar handle\n   */\n  ;\n\n  _proto.onTrackClick = function onTrackClick(e, axis) {\n    var _this4 = this;\n\n    if (axis === void 0) {\n      axis = 'y';\n    }\n\n    if (!this.options.clickOnTrack) return;\n    var elWindow = getElementWindow(this.el);\n    this.axis[axis].scrollbar.rect = this.axis[axis].scrollbar.el.getBoundingClientRect();\n    var scrollbar = this.axis[axis].scrollbar;\n    var scrollbarOffset = scrollbar.rect[this.axis[axis].offsetAttr];\n    var hostSize = parseInt(this.elStyles[this.axis[axis].sizeAttr], 10);\n    var scrolled = this.contentWrapperEl[this.axis[axis].scrollOffsetAttr];\n    var t = axis === 'y' ? this.mouseY - scrollbarOffset : this.mouseX - scrollbarOffset;\n    var dir = t < 0 ? -1 : 1;\n    var scrollSize = dir === -1 ? scrolled - hostSize : scrolled + hostSize;\n\n    var scrollTo = function scrollTo() {\n      if (dir === -1) {\n        if (scrolled > scrollSize) {\n          var _this4$contentWrapper;\n\n          scrolled -= _this4.options.clickOnTrackSpeed;\n\n          _this4.contentWrapperEl.scrollTo((_this4$contentWrapper = {}, _this4$contentWrapper[_this4.axis[axis].offsetAttr] = scrolled, _this4$contentWrapper));\n\n          elWindow.requestAnimationFrame(scrollTo);\n        }\n      } else {\n        if (scrolled < scrollSize) {\n          var _this4$contentWrapper2;\n\n          scrolled += _this4.options.clickOnTrackSpeed;\n\n          _this4.contentWrapperEl.scrollTo((_this4$contentWrapper2 = {}, _this4$contentWrapper2[_this4.axis[axis].offsetAttr] = scrolled, _this4$contentWrapper2));\n\n          elWindow.requestAnimationFrame(scrollTo);\n        }\n      }\n    };\n\n    scrollTo();\n  }\n  /**\n   * Getter for content element\n   */\n  ;\n\n  _proto.getContentElement = function getContentElement() {\n    return this.contentEl;\n  }\n  /**\n   * Getter for original scrolling element\n   */\n  ;\n\n  _proto.getScrollElement = function getScrollElement() {\n    return this.contentWrapperEl;\n  };\n\n  _proto.getScrollbarWidth = function getScrollbarWidth() {\n    // Try/catch for FF 56 throwing on undefined computedStyles\n    try {\n      // Detect browsers supporting CSS scrollbar styling and do not calculate\n      if (getComputedStyle(this.contentWrapperEl, '::-webkit-scrollbar').display === 'none' || 'scrollbarWidth' in document.documentElement.style || '-ms-overflow-style' in document.documentElement.style) {\n        return 0;\n      } else {\n        return scrollbarWidth(this.el);\n      }\n    } catch (e) {\n      return scrollbarWidth(this.el);\n    }\n  };\n\n  _proto.removeListeners = function removeListeners() {\n    var _this5 = this;\n\n    var elWindow = getElementWindow(this.el); // Event listeners\n\n    if (this.options.autoHide) {\n      this.el.removeEventListener('mouseenter', this.onMouseEnter);\n    }\n\n    ['mousedown', 'click', 'dblclick'].forEach(function (e) {\n      _this5.el.removeEventListener(e, _this5.onPointerEvent, true);\n    });\n    ['touchstart', 'touchend', 'touchmove'].forEach(function (e) {\n      _this5.el.removeEventListener(e, _this5.onPointerEvent, {\n        capture: true,\n        passive: true\n      });\n    });\n    this.el.removeEventListener('mousemove', this.onMouseMove);\n    this.el.removeEventListener('mouseleave', this.onMouseLeave);\n\n    if (this.contentWrapperEl) {\n      this.contentWrapperEl.removeEventListener('scroll', this.onScroll);\n    }\n\n    elWindow.removeEventListener('resize', this.onWindowResize);\n\n    if (this.mutationObserver) {\n      this.mutationObserver.disconnect();\n    }\n\n    if (this.resizeObserver) {\n      this.resizeObserver.disconnect();\n    } // Cancel all debounced functions\n\n\n    this.recalculate.cancel();\n    this.onMouseMove.cancel();\n    this.hideScrollbars.cancel();\n    this.onWindowResize.cancel();\n  }\n  /**\n   * UnMount mutation observer and delete SimpleBar instance from DOM element\n   */\n  ;\n\n  _proto.unMount = function unMount() {\n    this.removeListeners();\n    SimpleBar.instances.delete(this.el);\n  }\n  /**\n   * Check if mouse is within bounds\n   */\n  ;\n\n  _proto.isWithinBounds = function isWithinBounds(bbox) {\n    return this.mouseX >= bbox.left && this.mouseX <= bbox.left + bbox.width && this.mouseY >= bbox.top && this.mouseY <= bbox.top + bbox.height;\n  }\n  /**\n   * Find element children matches query\n   */\n  ;\n\n  _proto.findChild = function findChild(el, query) {\n    var matches = el.matches || el.webkitMatchesSelector || el.mozMatchesSelector || el.msMatchesSelector;\n    return Array.prototype.filter.call(el.children, function (child) {\n      return matches.call(child, query);\n    })[0];\n  };\n\n  return SimpleBar;\n}();\n\nSimpleBar.defaultOptions = {\n  autoHide: true,\n  forceVisible: false,\n  clickOnTrack: true,\n  clickOnTrackSpeed: 40,\n  classNames: {\n    contentEl: 'simplebar-content',\n    contentWrapper: 'simplebar-content-wrapper',\n    offset: 'simplebar-offset',\n    mask: 'simplebar-mask',\n    wrapper: 'simplebar-wrapper',\n    placeholder: 'simplebar-placeholder',\n    scrollbar: 'simplebar-scrollbar',\n    track: 'simplebar-track',\n    heightAutoObserverWrapperEl: 'simplebar-height-auto-observer-wrapper',\n    heightAutoObserverEl: 'simplebar-height-auto-observer',\n    visible: 'simplebar-visible',\n    horizontal: 'simplebar-horizontal',\n    vertical: 'simplebar-vertical',\n    hover: 'simplebar-hover',\n    dragging: 'simplebar-dragging'\n  },\n  scrollbarMinSize: 25,\n  scrollbarMaxSize: 0,\n  timeout: 1000\n};\nSimpleBar.instances = new WeakMap();\n\nSimpleBar.initDOMLoadedElements = function () {\n  document.removeEventListener('DOMContentLoaded', this.initDOMLoadedElements);\n  window.removeEventListener('load', this.initDOMLoadedElements);\n  Array.prototype.forEach.call(document.querySelectorAll('[data-simplebar]'), function (el) {\n    if (el.getAttribute('data-simplebar') !== 'init' && !SimpleBar.instances.has(el)) new SimpleBar(el, getOptions(el.attributes));\n  });\n};\n\nSimpleBar.removeObserver = function () {\n  this.globalObserver.disconnect();\n};\n\nSimpleBar.initHtmlApi = function () {\n  this.initDOMLoadedElements = this.initDOMLoadedElements.bind(this); // MutationObserver is IE11+\n\n  if (typeof MutationObserver !== 'undefined') {\n    // Mutation observer to observe dynamically added elements\n    this.globalObserver = new MutationObserver(SimpleBar.handleMutations);\n    this.globalObserver.observe(document, {\n      childList: true,\n      subtree: true\n    });\n  } // Taken from jQuery `ready` function\n  // Instantiate elements already present on the page\n\n\n  if (document.readyState === 'complete' || document.readyState !== 'loading' && !document.documentElement.doScroll) {\n    // Handle it asynchronously to allow scripts the opportunity to delay init\n    window.setTimeout(this.initDOMLoadedElements);\n  } else {\n    document.addEventListener('DOMContentLoaded', this.initDOMLoadedElements);\n    window.addEventListener('load', this.initDOMLoadedElements);\n  }\n};\n\nSimpleBar.handleMutations = function (mutations) {\n  mutations.forEach(function (mutation) {\n    Array.prototype.forEach.call(mutation.addedNodes, function (addedNode) {\n      if (addedNode.nodeType === 1) {\n        if (addedNode.hasAttribute('data-simplebar')) {\n          !SimpleBar.instances.has(addedNode) && document.documentElement.contains(addedNode) && new SimpleBar(addedNode, getOptions(addedNode.attributes));\n        } else {\n          Array.prototype.forEach.call(addedNode.querySelectorAll('[data-simplebar]'), function (el) {\n            if (el.getAttribute('data-simplebar') !== 'init' && !SimpleBar.instances.has(el) && document.documentElement.contains(el)) new SimpleBar(el, getOptions(el.attributes));\n          });\n        }\n      }\n    });\n    Array.prototype.forEach.call(mutation.removedNodes, function (removedNode) {\n      if (removedNode.nodeType === 1) {\n        if (removedNode.getAttribute('data-simplebar') === 'init') {\n          SimpleBar.instances.has(removedNode) && !document.documentElement.contains(removedNode) && SimpleBar.instances.get(removedNode).unMount();\n        } else {\n          Array.prototype.forEach.call(removedNode.querySelectorAll('[data-simplebar=\"init\"]'), function (el) {\n            SimpleBar.instances.has(el) && !document.documentElement.contains(el) && SimpleBar.instances.get(el).unMount();\n          });\n        }\n      }\n    });\n  });\n};\n\nSimpleBar.getOptions = getOptions;\n/**\n * HTML API\n * Called only in a browser env.\n */\n\nif (canUseDOM) {\n  SimpleBar.initHtmlApi();\n}\n\nexport default SimpleBar;\n//# sourceMappingURL=simplebar.esm.js.map\n"
  },
  {
    "path": "static/assets/vendor/simplebar/dist/simplebar.umd.js",
    "content": "/**\n * simplebar - v6.0.0-beta.10\n * Scrollbars, simpler.\n * https://grsmto.github.io/simplebar/\n *\n * Made by Adrien Denat from a fork by Jonathan Nicol\n * Under MIT License\n */\n\n(function (global, factory) {\n  typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('can-use-dom'), require('simplebar-core')) :\n  typeof define === 'function' && define.amd ? define(['can-use-dom', 'simplebar-core'], factory) :\n  (global = global || self, global.SimpleBar = factory(global.canUseDOM, global.SimpleBar));\n}(this, (function (canUseDOM, SimpleBar) { 'use strict';\n\n  canUseDOM = canUseDOM && Object.prototype.hasOwnProperty.call(canUseDOM, 'default') ? canUseDOM['default'] : canUseDOM;\n  SimpleBar = SimpleBar && Object.prototype.hasOwnProperty.call(SimpleBar, 'default') ? SimpleBar['default'] : SimpleBar;\n\n  // Helper function to retrieve options from element attributes\n  var getOptions = function getOptions(obj) {\n    var options = Array.prototype.reduce.call(obj, function (acc, attribute) {\n      var option = attribute.name.match(/data-simplebar-(.+)/);\n\n      if (option) {\n        var key = option[1].replace(/\\W+(.)/g, function (x, chr) {\n          return chr.toUpperCase();\n        });\n\n        switch (attribute.value) {\n          case 'true':\n            acc[key] = true;\n            break;\n\n          case 'false':\n            acc[key] = false;\n            break;\n\n          case undefined:\n            acc[key] = true;\n            break;\n\n          default:\n            acc[key] = attribute.value;\n        }\n      }\n\n      return acc;\n    }, {});\n    return options;\n  };\n\n  SimpleBar.initDOMLoadedElements = function () {\n    document.removeEventListener('DOMContentLoaded', this.initDOMLoadedElements);\n    window.removeEventListener('load', this.initDOMLoadedElements);\n    Array.prototype.forEach.call(document.querySelectorAll('[data-simplebar]'), function (el) {\n      if (el.getAttribute('data-simplebar') !== 'init' && !SimpleBar.instances.has(el)) new SimpleBar(el, getOptions(el.attributes));\n    });\n  };\n\n  SimpleBar.removeObserver = function () {\n    this.globalObserver.disconnect();\n  };\n\n  SimpleBar.initHtmlApi = function () {\n    this.initDOMLoadedElements = this.initDOMLoadedElements.bind(this); // MutationObserver is IE11+\n\n    if (typeof MutationObserver !== 'undefined') {\n      // Mutation observer to observe dynamically added elements\n      this.globalObserver = new MutationObserver(SimpleBar.handleMutations);\n      this.globalObserver.observe(document, {\n        childList: true,\n        subtree: true\n      });\n    } // Taken from jQuery `ready` function\n    // Instantiate elements already present on the page\n\n\n    if (document.readyState === 'complete' || document.readyState !== 'loading' && !document.documentElement.doScroll) {\n      // Handle it asynchronously to allow scripts the opportunity to delay init\n      window.setTimeout(this.initDOMLoadedElements);\n    } else {\n      document.addEventListener('DOMContentLoaded', this.initDOMLoadedElements);\n      window.addEventListener('load', this.initDOMLoadedElements);\n    }\n  };\n\n  SimpleBar.handleMutations = function (mutations) {\n    mutations.forEach(function (mutation) {\n      Array.prototype.forEach.call(mutation.addedNodes, function (addedNode) {\n        if (addedNode.nodeType === 1) {\n          if (addedNode.hasAttribute('data-simplebar')) {\n            !SimpleBar.instances.has(addedNode) && new SimpleBar(addedNode, getOptions(addedNode.attributes));\n          } else {\n            Array.prototype.forEach.call(addedNode.querySelectorAll('[data-simplebar]'), function (el) {\n              if (el.getAttribute('data-simplebar') !== 'init' && !SimpleBar.instances.has(el)) new SimpleBar(el, getOptions(el.attributes));\n            });\n          }\n        }\n      });\n      Array.prototype.forEach.call(mutation.removedNodes, function (removedNode) {\n        if (removedNode.nodeType === 1) {\n          if (removedNode.hasAttribute('data-simplebar')) {\n            SimpleBar.instances.has(removedNode) && SimpleBar.instances.get(removedNode).unMount();\n          } else {\n            Array.prototype.forEach.call(removedNode.querySelectorAll('[data-simplebar=\"init\"]'), function (el) {\n              SimpleBar.instances.has(el) && SimpleBar.instances.get(el).unMount();\n            });\n          }\n        }\n      });\n    });\n  };\n\n  SimpleBar.getOptions = getOptions;\n  SimpleBar.default = SimpleBar;\n  /**\n   * HTML API\n   * Called only in a browser env.\n   */\n\n  if (canUseDOM) {\n    SimpleBar.initHtmlApi();\n  }\n\n  return SimpleBar;\n\n})));\n"
  },
  {
    "path": "static/assets/vendor/vanillajs-datepicker/dist/js/locales/ar-tn.js",
    "content": "/**\n * Arabic-Tunisia translation for bootstrap-datepicker\n * Souhaieb Besbes <besbes.souhaieb@gmail.com>\n */\n(function () {\n  Datepicker.locales['ar-tn'] = {\n    days: [\"الأحد\", \"الاثنين\", \"الثلاثاء\", \"الأربعاء\", \"الخميس\", \"الجمعة\", \"السبت\", \"الأحد\"],\n    daysShort: [\"أحد\", \"اثنين\", \"ثلاثاء\", \"أربعاء\", \"خميس\", \"جمعة\", \"سبت\", \"أحد\"],\n    daysMin: [\"ح\", \"ن\", \"ث\", \"ع\", \"خ\", \"ج\", \"س\", \"ح\"],\n    months: [\"جانفي\",\"فيفري\",\"مارس\",\"أفريل\",\"ماي\",\"جوان\",\"جويليه\",\"أوت\",\"سبتمبر\",\"أكتوبر\",\"نوفمبر\",\"ديسمبر\"],\n    monthsShort: [\"جانفي\",\"فيفري\",\"مارس\",\"أفريل\",\"ماي\",\"جوان\",\"جويليه\",\"أوت\",\"سبتمبر\",\"أكتوبر\",\"نوفمبر\",\"ديسمبر\"],\n    today: \"هذا اليوم\",\n    rtl: true\n  };\n}());\n"
  },
  {
    "path": "static/assets/vendor/vanillajs-datepicker/dist/js/locales/ar.js",
    "content": "/**\n * Arabic translation for bootstrap-datepicker\n * Mohammed Alshehri <alshehri866@gmail.com>\n */\n(function () {\n  Datepicker.locales.ar = {\n    days: [\"الأحد\", \"الاثنين\", \"الثلاثاء\", \"الأربعاء\", \"الخميس\", \"الجمعة\", \"السبت\", \"الأحد\"],\n    daysShort: [\"أحد\", \"اثنين\", \"ثلاثاء\", \"أربعاء\", \"خميس\", \"جمعة\", \"سبت\", \"أحد\"],\n    daysMin: [\"ح\", \"ن\", \"ث\", \"ع\", \"خ\", \"ج\", \"س\", \"ح\"],\n    months: [\"يناير\", \"فبراير\", \"مارس\", \"أبريل\", \"مايو\", \"يونيو\", \"يوليو\", \"أغسطس\", \"سبتمبر\", \"أكتوبر\", \"نوفمبر\", \"ديسمبر\"],\n    monthsShort: [\"يناير\", \"فبراير\", \"مارس\", \"أبريل\", \"مايو\", \"يونيو\", \"يوليو\", \"أغسطس\", \"سبتمبر\", \"أكتوبر\", \"نوفمبر\", \"ديسمبر\"],\n    today: \"هذا اليوم\",\n    rtl: true\n  };\n}());\n"
  },
  {
    "path": "static/assets/vendor/vanillajs-datepicker/dist/js/locales/az.js",
    "content": "// Azerbaijani\n(function () {\n  Datepicker.locales.az = {\n    days: [\"Bazar\", \"Bazar ertəsi\", \"Çərşənbə axşamı\", \"Çərşənbə\", \"Cümə axşamı\", \"Cümə\", \"Şənbə\"],\n    daysShort: [\"B.\", \"B.e\", \"Ç.a\", \"Ç.\", \"C.a\", \"C.\", \"Ş.\"],\n    daysMin: [\"B.\", \"B.e\", \"Ç.a\", \"Ç.\", \"C.a\", \"C.\", \"Ş.\"],\n    months: [\"Yanvar\", \"Fevral\", \"Mart\", \"Aprel\", \"May\", \"İyun\", \"İyul\", \"Avqust\", \"Sentyabr\", \"Oktyabr\", \"Noyabr\", \"Dekabr\"],\n    monthsShort: [\"Yan\", \"Fev\", \"Mar\", \"Apr\", \"May\", \"İyun\", \"İyul\", \"Avq\", \"Sen\", \"Okt\", \"Noy\", \"Dek\"],\n    today: \"Bu gün\",\n    weekStart: 1,\n    clear: \"Təmizlə\",\n    monthsTitle: 'Aylar'\n  };\n}());\n"
  },
  {
    "path": "static/assets/vendor/vanillajs-datepicker/dist/js/locales/bg.js",
    "content": "/**\n * Bulgarian translation for bootstrap-datepicker\n * Apostol Apostolov <apostol.s.apostolov@gmail.com>\n */\n(function () {\n  Datepicker.locales.bg = {\n    days: [\"Неделя\", \"Понеделник\", \"Вторник\", \"Сряда\", \"Четвъртък\", \"Петък\", \"Събота\"],\n    daysShort: [\"Нед\", \"Пон\", \"Вто\", \"Сря\", \"Чет\", \"Пет\", \"Съб\"],\n    daysMin: [\"Н\", \"П\", \"В\", \"С\", \"Ч\", \"П\", \"С\"],\n    months: [\"Януари\", \"Февруари\", \"Март\", \"Април\", \"Май\", \"Юни\", \"Юли\", \"Август\", \"Септември\", \"Октомври\", \"Ноември\", \"Декември\"],\n    monthsShort: [\"Ян\", \"Фев\", \"Мар\", \"Апр\", \"Май\", \"Юни\", \"Юли\", \"Авг\", \"Сеп\", \"Окт\", \"Ное\", \"Дек\"],\n    today: \"днес\"\n  };\n}());\n"
  },
  {
    "path": "static/assets/vendor/vanillajs-datepicker/dist/js/locales/bm.js",
    "content": "/**\n * Bamanankan (bm) translation for bootstrap-datepicker\n * Fatou Fall <fatou@medicmobile.org>\n */\n(function () {\n  Datepicker.locales.bm = {\n    days: [\"Kari\",\"Ntɛnɛn\",\"Tarata\",\"Araba\",\"Alamisa\",\"Juma\",\"Sibiri\"],\n    daysShort: [\"Kar\",\"Ntɛ\",\"Tar\",\"Ara\",\"Ala\",\"Jum\",\"Sib\"],\n    daysMin: [\"Ka\",\"Nt\",\"Ta\",\"Ar\",\"Al\",\"Ju\",\"Si\"],\n    months: [\"Zanwuyekalo\",\"Fewuruyekalo\",\"Marisikalo\",\"Awirilikalo\",\"Mɛkalo\",\"Zuwɛnkalo\",\"Zuluyekalo\",\"Utikalo\",\"Sɛtanburukalo\",\"ɔkutɔburukalo\",\"Nowanburukalo\",\"Desanburukalo\"],\n    monthsShort: [\"Zan\",\"Few\",\"Mar\",\"Awi\",\"Mɛ\",\"Zuw\",\"Zul\",\"Uti\",\"Sɛt\",\"ɔku\",\"Now\",\"Des\"],\n    today: \"Bi\",\n    monthsTitle: \"Kalo\",\n    clear: \"Ka jɔsi\",\n    weekStart: 1,\n    format: \"dd/mm/yyyy\"\n  };\n}());\n"
  },
  {
    "path": "static/assets/vendor/vanillajs-datepicker/dist/js/locales/bn.js",
    "content": "/**\n * Bengali (Bangla) translation for bootstrap-datepicker\n * Karim Khan <kkhancse91@gmail.com>\n * Orif N. Jr. <orif.zade@gmail.com>\n */\n(function () {\n  Datepicker.locales.bn = {\n    days: [\"রবিবার\",\"সোমবার\",\"মঙ্গলবার\",\"বুধবার\",\"বৃহস্পতিবার\",\"শুক্রবার\",\"শনিবার\"],\n    daysShort: [\"রবিবার\",\"সোমবার\",\"মঙ্গলবার\",\"বুধবার\",\"বৃহস্পতিবার\",\"শুক্রবার\",\"শনিবার\"],\n    daysMin: [\"রবি\",\"সোম\",\"মঙ্গল\",\"বুধ\",\"বৃহস্পতি\",\"শুক্র\",\"শনি\"],\n    months: [\"জানুয়ারী\",\"ফেব্রুয়ারি\",\"মার্চ\",\"এপ্রিল\",\"মে\",\"জুন\",\"জুলাই\",\"অগাস্ট\",\"সেপ্টেম্বর\",\"অক্টোবর\",\"নভেম্বর\",\"ডিসেম্বর\"],\n    monthsShort: [\"জানুয়ারী\",\"ফেব্রুয়ারি\",\"মার্চ\",\"এপ্রিল\",\"মে\",\"জুন\",\"জুলাই\",\"অগাস্ট\",\"সেপ্টেম্বর\",\"অক্টোবর\",\"নভেম্বর\",\"ডিসেম্বর\"],\n    today: \"আজ\",\n    monthsTitle: \"মাস\",\n    clear: \"পরিষ্কার\",\n    weekStart: 0,\n    format: \"mm/dd/yyyy\"\n  };\n}());\n"
  },
  {
    "path": "static/assets/vendor/vanillajs-datepicker/dist/js/locales/br.js",
    "content": "/**\n * Breton translation for bootstrap-datepicker\n * Gwenn Meynier <tornoz@laposte.net>\n */\n(function () {\n  Datepicker.locales.br = {\n    days: [\"Sul\", \"Lun\", \"Meurzh\", \"Merc'her\", \"Yaou\", \"Gwener\", \"Sadorn\"],\n    daysShort: [\"Sul\", \"Lun\", \"Meu.\", \"Mer.\", \"Yao.\", \"Gwe.\", \"Sad.\"],\n    daysMin: [\"Su\", \"L\", \"Meu\", \"Mer\", \"Y\", \"G\", \"Sa\"],\n    months: [\"Genver\", \"C'hwevrer\", \"Meurzh\", \"Ebrel\", \"Mae\", \"Mezheven\", \"Gouere\", \"Eost\", \"Gwengolo\", \"Here\", \"Du\", \"Kerzu\"],\n    monthsShort: [\"Genv.\", \"C'hw.\", \"Meur.\", \"Ebre.\", \"Mae\", \"Mezh.\", \"Goue.\", \"Eost\", \"Gwen.\", \"Here\", \"Du\", \"Kerz.\"],\n    today: \"Hiziv\",\n    monthsTitle: \"Miz\",\n    clear: \"Dilemel\",\n    weekStart: 1,\n    format: \"dd/mm/yyyy\"\n  };\n}());\n"
  },
  {
    "path": "static/assets/vendor/vanillajs-datepicker/dist/js/locales/bs.js",
    "content": "/**\n * Bosnian translation for bootstrap-datepicker\n */\n(function () {\n  Datepicker.locales.bs = {\n    days: [\"Nedjelja\",\"Ponedjeljak\", \"Utorak\", \"Srijeda\", \"Četvrtak\", \"Petak\", \"Subota\"],\n    daysShort: [\"Ned\", \"Pon\", \"Uto\", \"Sri\", \"Čet\", \"Pet\", \"Sub\"],\n    daysMin: [\"N\", \"Po\", \"U\", \"Sr\", \"Č\", \"Pe\", \"Su\"],\n    months: [\"Januar\", \"Februar\", \"Mart\", \"April\", \"Maj\", \"Juni\", \"Juli\", \"August\", \"Septembar\", \"Oktobar\", \"Novembar\", \"Decembar\"],\n    monthsShort: [\"Jan\", \"Feb\", \"Mar\", \"Apr\", \"Maj\", \"Jun\", \"Jul\", \"Aug\", \"Sep\", \"Okt\", \"Nov\", \"Dec\"],\n    today: \"Danas\",\n    weekStart: 1,\n    format: \"dd.mm.yyyy\"\n  };\n}());\n"
  },
  {
    "path": "static/assets/vendor/vanillajs-datepicker/dist/js/locales/ca.js",
    "content": "/**\n * Catalan translation for bootstrap-datepicker\n * J. Garcia <jogaco.en@gmail.com>\n */\n(function () {\n  Datepicker.locales.ca = {\n    days: [\"Diumenge\", \"Dilluns\", \"Dimarts\", \"Dimecres\", \"Dijous\", \"Divendres\", \"Dissabte\"],\n    daysShort: [\"Diu\",  \"Dil\", \"Dmt\", \"Dmc\", \"Dij\", \"Div\", \"Dis\"],\n    daysMin: [\"dg\", \"dl\", \"dt\", \"dc\", \"dj\", \"dv\", \"ds\"],\n    months: [\"Gener\", \"Febrer\", \"Març\", \"Abril\", \"Maig\", \"Juny\", \"Juliol\", \"Agost\", \"Setembre\", \"Octubre\", \"Novembre\", \"Desembre\"],\n    monthsShort: [\"Gen\", \"Feb\", \"Mar\", \"Abr\", \"Mai\", \"Jun\", \"Jul\", \"Ago\", \"Set\", \"Oct\", \"Nov\", \"Des\"],\n    today: \"Avui\",\n    monthsTitle: \"Mesos\",\n    clear: \"Esborrar\",\n    weekStart: 1,\n    format: \"dd/mm/yyyy\"\n  };\n}());\n"
  },
  {
    "path": "static/assets/vendor/vanillajs-datepicker/dist/js/locales/cs.js",
    "content": "/**\n * Czech translation for bootstrap-datepicker\n * Matěj Koubík <matej@koubik.name>\n * Fixes by Michal Remiš <michal.remis@gmail.com>\n */\n(function () {\n  Datepicker.locales.cs = {\n    days: [\"Neděle\", \"Pondělí\", \"Úterý\", \"Středa\", \"Čtvrtek\", \"Pátek\", \"Sobota\"],\n    daysShort: [\"Ned\", \"Pon\", \"Úte\", \"Stř\", \"Čtv\", \"Pát\", \"Sob\"],\n    daysMin: [\"Ne\", \"Po\", \"Út\", \"St\", \"Čt\", \"Pá\", \"So\"],\n    months: [\"Leden\", \"Únor\", \"Březen\", \"Duben\", \"Květen\", \"Červen\", \"Červenec\", \"Srpen\", \"Září\", \"Říjen\", \"Listopad\", \"Prosinec\"],\n    monthsShort: [\"Led\", \"Úno\", \"Bře\", \"Dub\", \"Kvě\", \"Čer\", \"Čnc\", \"Srp\", \"Zář\", \"Říj\", \"Lis\", \"Pro\"],\n    today: \"Dnes\",\n    clear: \"Vymazat\",\n    monthsTitle: \"Měsíc\",\n    weekStart: 1,\n    format: \"dd.mm.yyyy\"\n  };\n}());\n"
  },
  {
    "path": "static/assets/vendor/vanillajs-datepicker/dist/js/locales/cy.js",
    "content": "/**\n * Welsh translation for bootstrap-datepicker\n * S. Morris <s.morris@bangor.ac.uk>\n */\n(function () {\n  Datepicker.locales.cy = {\n    days: [\"Sul\", \"Llun\", \"Mawrth\", \"Mercher\", \"Iau\", \"Gwener\", \"Sadwrn\"],\n    daysShort: [\"Sul\", \"Llu\", \"Maw\", \"Mer\", \"Iau\", \"Gwe\", \"Sad\"],\n    daysMin: [\"Su\", \"Ll\", \"Ma\", \"Me\", \"Ia\", \"Gwe\", \"Sa\"],\n    months: [\"Ionawr\", \"Chewfror\", \"Mawrth\", \"Ebrill\", \"Mai\", \"Mehefin\", \"Gorfennaf\", \"Awst\", \"Medi\", \"Hydref\", \"Tachwedd\", \"Rhagfyr\"],\n    monthsShort: [\"Ion\", \"Chw\", \"Maw\", \"Ebr\", \"Mai\", \"Meh\", \"Gor\", \"Aws\", \"Med\", \"Hyd\", \"Tach\", \"Rha\"],\n    today: \"Heddiw\"\n  };\n}());\n"
  },
  {
    "path": "static/assets/vendor/vanillajs-datepicker/dist/js/locales/da.js",
    "content": "/**\n * Danish translation for bootstrap-datepicker\n * Christian Pedersen <https: //github.com/chripede>\n * Ivan Mylyanyk <https: //github.com/imylyanyk>\n */\n(function () {\n  Datepicker.locales.da = {\n    days: [\"Søndag\", \"Mandag\", \"Tirsdag\", \"Onsdag\", \"Torsdag\", \"Fredag\", \"Lørdag\"],\n    daysShort: [\"Søn\", \"Man\", \"Tir\", \"Ons\", \"Tor\", \"Fre\", \"Lør\"],\n    daysMin: [\"Sø\", \"Ma\", \"Ti\", \"On\", \"To\", \"Fr\", \"Lø\"],\n    months: [\"Januar\", \"Februar\", \"Marts\", \"April\", \"Maj\", \"Juni\", \"Juli\", \"August\", \"September\", \"Oktober\", \"November\", \"December\"],\n    monthsShort: [\"Jan\", \"Feb\", \"Mar\", \"Apr\", \"Maj\", \"Jun\", \"Jul\", \"Aug\", \"Sep\", \"Okt\", \"Nov\", \"Dec\"],\n    today: \"I Dag\",\n    weekStart: 1,\n    clear: \"Nulstil\",\n    format: \"dd/mm/yyyy\",\n    monthsTitle: \"Måneder\"\n  };\n}());\n"
  },
  {
    "path": "static/assets/vendor/vanillajs-datepicker/dist/js/locales/de.js",
    "content": "/**\n * German translation for bootstrap-datepicker\n * Sam Zurcher <sam@orelias.ch>\n */\n(function () {\n  Datepicker.locales.de = {\n    days: [\"Sonntag\", \"Montag\", \"Dienstag\", \"Mittwoch\", \"Donnerstag\", \"Freitag\", \"Samstag\"],\n    daysShort: [\"So\", \"Mo\", \"Di\", \"Mi\", \"Do\", \"Fr\", \"Sa\"],\n    daysMin: [\"So\", \"Mo\", \"Di\", \"Mi\", \"Do\", \"Fr\", \"Sa\"],\n    months: [\"Januar\", \"Februar\", \"März\", \"April\", \"Mai\", \"Juni\", \"Juli\", \"August\", \"September\", \"Oktober\", \"November\", \"Dezember\"],\n    monthsShort: [\"Jan\", \"Feb\", \"Mär\", \"Apr\", \"Mai\", \"Jun\", \"Jul\", \"Aug\", \"Sep\", \"Okt\", \"Nov\", \"Dez\"],\n    today: \"Heute\",\n    monthsTitle: \"Monate\",\n    clear: \"Löschen\",\n    weekStart: 1,\n    format: \"dd.mm.yyyy\"\n  };\n}());\n"
  },
  {
    "path": "static/assets/vendor/vanillajs-datepicker/dist/js/locales/el.js",
    "content": "/**\n * Greek translation for bootstrap-datepicker\n */\n(function () {\n  Datepicker.locales.el = {\n    days: [\"Κυριακή\", \"Δευτέρα\", \"Τρίτη\", \"Τετάρτη\", \"Πέμπτη\", \"Παρασκευή\", \"Σάββατο\"],\n    daysShort: [\"Κυρ\", \"Δευ\", \"Τρι\", \"Τετ\", \"Πεμ\", \"Παρ\", \"Σαβ\"],\n    daysMin: [\"Κυ\", \"Δε\", \"Τρ\", \"Τε\", \"Πε\", \"Πα\", \"Σα\"],\n    months: [\"Ιανουάριος\", \"Φεβρουάριος\", \"Μάρτιος\", \"Απρίλιος\", \"Μάιος\", \"Ιούνιος\", \"Ιούλιος\", \"Αύγουστος\", \"Σεπτέμβριος\", \"Οκτώβριος\", \"Νοέμβριος\", \"Δεκέμβριος\"],\n    monthsShort: [\"Ιαν\", \"Φεβ\", \"Μαρ\", \"Απρ\", \"Μάι\", \"Ιουν\", \"Ιουλ\", \"Αυγ\", \"Σεπ\", \"Οκτ\", \"Νοε\", \"Δεκ\"],\n    today: \"Σήμερα\",\n    clear: \"Καθαρισμός\",\n    weekStart: 1,\n    format: \"d/m/yyyy\"\n  };\n}());\n"
  },
  {
    "path": "static/assets/vendor/vanillajs-datepicker/dist/js/locales/en-AU.js",
    "content": "/**\n * Australian English translation for bootstrap-datepicker\n * Steve Chapman <steven.p.chapman@gmail.com>\n */\n(function () {\n  Datepicker.locales['en-AU'] = {\n    days: [\"Sunday\", \"Monday\", \"Tuesday\", \"Wednesday\", \"Thursday\", \"Friday\", \"Saturday\"],\n    daysShort: [\"Sun\", \"Mon\", \"Tue\", \"Wed\", \"Thu\", \"Fri\", \"Sat\"],\n    daysMin: [\"Su\", \"Mo\", \"Tu\", \"We\", \"Th\", \"Fr\", \"Sa\"],\n    months: [\"January\", \"February\", \"March\", \"April\", \"May\", \"June\", \"July\", \"August\", \"September\", \"October\", \"November\", \"December\"],\n    monthsShort: [\"Jan\", \"Feb\", \"Mar\", \"Apr\", \"May\", \"Jun\", \"Jul\", \"Aug\", \"Sep\", \"Oct\", \"Nov\", \"Dec\"],\n    today: \"Today\",\n    monthsTitle: \"Months\",\n    clear: \"Clear\",\n    weekStart: 1,\n    format: \"d/mm/yyyy\"\n  };\n}());\n"
  },
  {
    "path": "static/assets/vendor/vanillajs-datepicker/dist/js/locales/en-CA.js",
    "content": "/**\n * Canadian English translation for bootstrap-datepicker\n * Mike Nacey <mnacey@gmail.com>\n */\n(function () {\n  Datepicker.locales['en-CA'] = {\n    days: [\"Sunday\", \"Monday\", \"Tuesday\", \"Wednesday\", \"Thursday\", \"Friday\", \"Saturday\"],\n    daysShort: [\"Sun\", \"Mon\", \"Tue\", \"Wed\", \"Thu\", \"Fri\", \"Sat\"],\n    daysMin: [\"Su\", \"Mo\", \"Tu\", \"We\", \"Th\", \"Fr\", \"Sa\"],\n    months: [\"January\", \"February\", \"March\", \"April\", \"May\", \"June\", \"July\", \"August\", \"September\", \"October\", \"November\", \"December\"],\n    monthsShort: [\"Jan\", \"Feb\", \"Mar\", \"Apr\", \"May\", \"Jun\", \"Jul\", \"Aug\", \"Sep\", \"Oct\", \"Nov\", \"Dec\"],\n    today: \"Today\",\n    monthsTitle: \"Months\",\n    clear: \"Clear\",\n    weekStart: 0,\n    format: \"yyyy-mm-dd\"\n  };\n}());\n"
  },
  {
    "path": "static/assets/vendor/vanillajs-datepicker/dist/js/locales/en-GB.js",
    "content": "/**\n * British English translation for bootstrap-datepicker\n * Xavier Dutreilh <xavier@dutreilh.com>\n */\n(function () {\n  Datepicker.locales['en-GB'] = {\n    days: [\"Sunday\", \"Monday\", \"Tuesday\", \"Wednesday\", \"Thursday\", \"Friday\", \"Saturday\"],\n    daysShort: [\"Sun\", \"Mon\", \"Tue\", \"Wed\", \"Thu\", \"Fri\", \"Sat\"],\n    daysMin: [\"Su\", \"Mo\", \"Tu\", \"We\", \"Th\", \"Fr\", \"Sa\"],\n    months: [\"January\", \"February\", \"March\", \"April\", \"May\", \"June\", \"July\", \"August\", \"September\", \"October\", \"November\", \"December\"],\n    monthsShort: [\"Jan\", \"Feb\", \"Mar\", \"Apr\", \"May\", \"Jun\", \"Jul\", \"Aug\", \"Sep\", \"Oct\", \"Nov\", \"Dec\"],\n    today: \"Today\",\n    monthsTitle: \"Months\",\n    clear: \"Clear\",\n    weekStart: 1,\n    format: \"dd/mm/yyyy\"\n  };\n}());\n"
  },
  {
    "path": "static/assets/vendor/vanillajs-datepicker/dist/js/locales/en-IE.js",
    "content": "/**\n * Irish English translation for bootstrap-datepicker\n */\n(function () {\n  Datepicker.locales['en-IE'] = {\n    days: [\"Sunday\", \"Monday\", \"Tuesday\", \"Wednesday\", \"Thursday\", \"Friday\", \"Saturday\"],\n    daysShort: [\"Sun\", \"Mon\", \"Tue\", \"Wed\", \"Thu\", \"Fri\", \"Sat\"],\n    daysMin: [\"Su\", \"Mo\", \"Tu\", \"We\", \"Th\", \"Fr\", \"Sa\"],\n    months: [\"January\", \"February\", \"March\", \"April\", \"May\", \"June\", \"July\", \"August\", \"September\", \"October\", \"November\", \"December\"],\n    monthsShort: [\"Jan\", \"Feb\", \"Mar\", \"Apr\", \"May\", \"Jun\", \"Jul\", \"Aug\", \"Sep\", \"Oct\", \"Nov\", \"Dec\"],\n    today: \"Today\",\n    monthsTitle: \"Months\",\n    clear: \"Clear\",\n    weekStart: 1,\n    format: \"dd/mm/yyyy\"\n  };\n}());\n"
  },
  {
    "path": "static/assets/vendor/vanillajs-datepicker/dist/js/locales/en-NZ.js",
    "content": "/**\n * New Zealand English translation for bootstrap-datepicker\n */\n(function () {\n  Datepicker.locales['en-NZ'] = {\n    days: [\"Sunday\", \"Monday\", \"Tuesday\", \"Wednesday\", \"Thursday\", \"Friday\", \"Saturday\"],\n    daysShort: [\"Sun\", \"Mon\", \"Tue\", \"Wed\", \"Thu\", \"Fri\", \"Sat\"],\n    daysMin: [\"Su\", \"Mo\", \"Tu\", \"We\", \"Th\", \"Fr\", \"Sa\"],\n    months: [\"January\", \"February\", \"March\", \"April\", \"May\", \"June\", \"July\", \"August\", \"September\", \"October\", \"November\", \"December\"],\n    monthsShort: [\"Jan\", \"Feb\", \"Mar\", \"Apr\", \"May\", \"Jun\", \"Jul\", \"Aug\", \"Sep\", \"Oct\", \"Nov\", \"Dec\"],\n    today: \"Today\",\n    monthsTitle: \"Months\",\n    clear: \"Clear\",\n    weekStart: 1,\n    format: \"d/mm/yyyy\"\n  };\n}());\n"
  },
  {
    "path": "static/assets/vendor/vanillajs-datepicker/dist/js/locales/en-ZA.js",
    "content": "/**\n * South African English translation for bootstrap-datepicker\n */\n(function () {\n  Datepicker.locales['en-ZA'] = {\n    days: [\"Sunday\", \"Monday\", \"Tuesday\", \"Wednesday\", \"Thursday\", \"Friday\", \"Saturday\"],\n    daysShort: [\"Sun\", \"Mon\", \"Tue\", \"Wed\", \"Thu\", \"Fri\", \"Sat\"],\n    daysMin: [\"Su\", \"Mo\", \"Tu\", \"We\", \"Th\", \"Fr\", \"Sa\"],\n    months: [\"January\", \"February\", \"March\", \"April\", \"May\", \"June\", \"July\", \"August\", \"September\", \"October\", \"November\", \"December\"],\n    monthsShort: [\"Jan\", \"Feb\", \"Mar\", \"Apr\", \"May\", \"Jun\", \"Jul\", \"Aug\", \"Sep\", \"Oct\", \"Nov\", \"Dec\"],\n    today: \"Today\",\n    monthsTitle: \"Months\",\n    clear: \"Clear\",\n    weekStart: 1,\n    format: \"yyyy/mm/d\"\n  };\n}());\n"
  },
  {
    "path": "static/assets/vendor/vanillajs-datepicker/dist/js/locales/eo.js",
    "content": "/**\n * Esperanto translation for bootstrap-datepicker\n * Emmanuel Debanne <https: //github.com/debanne>\n */\n(function () {\n  Datepicker.locales.eo = {\n    days: [\"dimanĉo\", \"lundo\", \"mardo\", \"merkredo\", \"ĵaŭdo\", \"vendredo\", \"sabato\"],\n    daysShort: [\"dim.\", \"lun.\", \"mar.\", \"mer.\", \"ĵaŭ.\", \"ven.\", \"sam.\"],\n    daysMin: [\"d\", \"l\", \"ma\", \"me\", \"ĵ\", \"v\", \"s\"],\n    months: [\"januaro\", \"februaro\", \"marto\", \"aprilo\", \"majo\", \"junio\", \"julio\", \"aŭgusto\", \"septembro\", \"oktobro\", \"novembro\", \"decembro\"],\n    monthsShort: [\"jan.\", \"feb.\", \"mar.\", \"apr.\", \"majo\", \"jun.\", \"jul.\", \"aŭg.\", \"sep.\", \"okt.\", \"nov.\", \"dec.\"],\n    today: \"Hodiaŭ\",\n    clear: \"Nuligi\",\n    weekStart: 1,\n    format: \"yyyy-mm-dd\"\n  };\n}());\n"
  },
  {
    "path": "static/assets/vendor/vanillajs-datepicker/dist/js/locales/es.js",
    "content": "/**\n * Spanish translation for bootstrap-datepicker\n * Bruno Bonamin <bruno.bonamin@gmail.com>\n */\n(function () {\n  Datepicker.locales.es = {\n    days: [\"Domingo\", \"Lunes\", \"Martes\", \"Miércoles\", \"Jueves\", \"Viernes\", \"Sábado\"],\n    daysShort: [\"Dom\", \"Lun\", \"Mar\", \"Mié\", \"Jue\", \"Vie\", \"Sáb\"],\n    daysMin: [\"Do\", \"Lu\", \"Ma\", \"Mi\", \"Ju\", \"Vi\", \"Sa\"],\n    months: [\"Enero\", \"Febrero\", \"Marzo\", \"Abril\", \"Mayo\", \"Junio\", \"Julio\", \"Agosto\", \"Septiembre\", \"Octubre\", \"Noviembre\", \"Diciembre\"],\n    monthsShort: [\"Ene\", \"Feb\", \"Mar\", \"Abr\", \"May\", \"Jun\", \"Jul\", \"Ago\", \"Sep\", \"Oct\", \"Nov\", \"Dic\"],\n    today: \"Hoy\",\n    monthsTitle: \"Meses\",\n    clear: \"Borrar\",\n    weekStart: 1,\n    format: \"dd/mm/yyyy\"\n  };\n}());\n"
  },
  {
    "path": "static/assets/vendor/vanillajs-datepicker/dist/js/locales/et.js",
    "content": "/**\n * Estonian translation for bootstrap-datepicker\n * Ando Roots <https: //github.com/anroots>\n * Fixes by Illimar Tambek <<https: //github.com/ragulka>\n */\n(function () {\n  Datepicker.locales.et = {\n    days: [\"Pühapäev\", \"Esmaspäev\", \"Teisipäev\", \"Kolmapäev\", \"Neljapäev\", \"Reede\", \"Laupäev\"],\n    daysShort: [\"Pühap\", \"Esmasp\", \"Teisip\", \"Kolmap\", \"Neljap\", \"Reede\", \"Laup\"],\n    daysMin: [\"P\", \"E\", \"T\", \"K\", \"N\", \"R\", \"L\"],\n    months: [\"Jaanuar\", \"Veebruar\", \"Märts\", \"Aprill\", \"Mai\", \"Juuni\", \"Juuli\", \"August\", \"September\", \"Oktoober\", \"November\", \"Detsember\"],\n    monthsShort: [\"Jaan\", \"Veebr\", \"Märts\", \"Apr\", \"Mai\", \"Juuni\", \"Juuli\", \"Aug\", \"Sept\", \"Okt\", \"Nov\", \"Dets\"],\n    today: \"Täna\",\n    clear: \"Tühjenda\",\n    weekStart: 1,\n    format: \"dd.mm.yyyy\"\n  };\n}());\n"
  },
  {
    "path": "static/assets/vendor/vanillajs-datepicker/dist/js/locales/eu.js",
    "content": "/**\n * Basque translation for bootstrap-datepicker\n * Arkaitz Etxeberria <kondi80@gmail.com>\n */\n(function () {\n  Datepicker.locales.eu = {\n    days: ['Igandea', 'Astelehena', 'Asteartea', 'Asteazkena', 'Osteguna', 'Ostirala', 'Larunbata'],\n    daysShort: ['Ig', 'Al', 'Ar', 'Az', 'Og', 'Ol', 'Lr'],\n    daysMin: ['Ig', 'Al', 'Ar', 'Az', 'Og', 'Ol', 'Lr'],\n    months: ['Urtarrila', 'Otsaila', 'Martxoa', 'Apirila', 'Maiatza', 'Ekaina', 'Uztaila', 'Abuztua', 'Iraila', 'Urria', 'Azaroa', 'Abendua'],\n    monthsShort: ['Urt', 'Ots', 'Mar', 'Api', 'Mai', 'Eka', 'Uzt', 'Abu', 'Ira', 'Urr', 'Aza', 'Abe'],\n    today: \"Gaur\",\n    monthsTitle: \"Hilabeteak\",\n    clear: \"Ezabatu\",\n    weekStart: 1,\n    format: \"yyyy/mm/dd\"\n  };\n}());\n"
  },
  {
    "path": "static/assets/vendor/vanillajs-datepicker/dist/js/locales/fa.js",
    "content": "/**\n * Persian translation for bootstrap-datepicker\n * Mostafa Rokooie <mostafa.rokooie@gmail.com>\n */\n(function () {\n  Datepicker.locales.fa = {\n    days: [\"یک‌شنبه\", \"دوشنبه\", \"سه‌شنبه\", \"چهارشنبه\", \"پنج‌شنبه\", \"جمعه\", \"شنبه\", \"یک‌شنبه\"],\n    daysShort: [\"یک\", \"دو\", \"سه\", \"چهار\", \"پنج\", \"جمعه\", \"شنبه\", \"یک\"],\n    daysMin: [\"ی\", \"د\", \"س\", \"چ\", \"پ\", \"ج\", \"ش\", \"ی\"],\n    months: [\"ژانویه\", \"فوریه\", \"مارس\", \"آوریل\", \"مه\", \"ژوئن\", \"ژوئیه\", \"اوت\", \"سپتامبر\", \"اکتبر\", \"نوامبر\", \"دسامبر\"],\n    monthsShort: [\"ژان\", \"فور\", \"مار\", \"آور\", \"مه\", \"ژون\", \"ژوی\", \"اوت\", \"سپت\", \"اکت\", \"نوا\", \"دسا\"],\n    today: \"امروز\",\n    clear: \"پاک کن\",\n    weekStart: 1,\n    format: \"yyyy/mm/dd\"\n  };\n}());\n"
  },
  {
    "path": "static/assets/vendor/vanillajs-datepicker/dist/js/locales/fi.js",
    "content": "/**\n * Finnish translation for bootstrap-datepicker\n * Jaakko Salonen <https: //github.com/jsalonen>\n */\n(function () {\n  Datepicker.locales.fi = {\n    days: [\"sunnuntai\", \"maanantai\", \"tiistai\", \"keskiviikko\", \"torstai\", \"perjantai\", \"lauantai\"],\n    daysShort: [\"sun\", \"maa\", \"tii\", \"kes\", \"tor\", \"per\", \"lau\"],\n    daysMin: [\"su\", \"ma\", \"ti\", \"ke\", \"to\", \"pe\", \"la\"],\n    months: [\"tammikuu\", \"helmikuu\", \"maaliskuu\", \"huhtikuu\", \"toukokuu\", \"kesäkuu\", \"heinäkuu\", \"elokuu\", \"syyskuu\", \"lokakuu\", \"marraskuu\", \"joulukuu\"],\n    monthsShort: [\"tam\", \"hel\", \"maa\", \"huh\", \"tou\", \"kes\", \"hei\", \"elo\", \"syy\", \"lok\", \"mar\", \"jou\"],\n    today: \"tänään\",\n    clear: \"Tyhjennä\",\n    weekStart: 1,\n    format: \"d.m.yyyy\"\n  };\n}());\n"
  },
  {
    "path": "static/assets/vendor/vanillajs-datepicker/dist/js/locales/fo.js",
    "content": "/**\n * Faroese translation for bootstrap-datepicker\n * Theodor Johannesen <https: //github.com/theodorjohannesen>\n */\n(function () {\n  Datepicker.locales.fo = {\n    days: [\"Sunnudagur\", \"Mánadagur\", \"Týsdagur\", \"Mikudagur\", \"Hósdagur\", \"Fríggjadagur\", \"Leygardagur\"],\n    daysShort: [\"Sun\", \"Mán\", \"Týs\", \"Mik\", \"Hós\", \"Frí\", \"Ley\"],\n    daysMin: [\"Su\", \"Má\", \"Tý\", \"Mi\", \"Hó\", \"Fr\", \"Le\"],\n    months: [\"Januar\", \"Februar\", \"Marts\", \"Apríl\", \"Mei\", \"Juni\", \"Juli\", \"August\", \"Septembur\", \"Oktobur\", \"Novembur\", \"Desembur\"],\n    monthsShort: [\"Jan\", \"Feb\", \"Mar\", \"Apr\", \"Mei\", \"Jun\", \"Jul\", \"Aug\", \"Sep\", \"Okt\", \"Nov\", \"Des\"],\n    today: \"Í Dag\",\n    clear: \"Reinsa\"\n  };\n}());\n"
  },
  {
    "path": "static/assets/vendor/vanillajs-datepicker/dist/js/locales/fr-CH.js",
    "content": "/**\n * French (Switzerland) translation for bootstrap-datepicker\n * Christoph Jossi <c.jossi@ascami.ch>\n * Based on\n * French translation for bootstrap-datepicker\n * Nico Mollet <nico.mollet@gmail.com>\n */\n(function () {\n  Datepicker.locales['fr-CH'] = {\n    days: [\"Dimanche\", \"Lundi\", \"Mardi\", \"Mercredi\", \"Jeudi\", \"Vendredi\", \"Samedi\"],\n    daysShort: [\"Dim\", \"Lun\", \"Mar\", \"Mer\", \"Jeu\", \"Ven\", \"Sam\"],\n    daysMin: [\"D\", \"L\", \"Ma\", \"Me\", \"J\", \"V\", \"S\"],\n    months: [\"Janvier\", \"Février\", \"Mars\", \"Avril\", \"Mai\", \"Juin\", \"Juillet\", \"Août\", \"Septembre\", \"Octobre\", \"Novembre\", \"Décembre\"],\n    monthsShort: [\"Jan\", \"Fév\", \"Mar\", \"Avr\", \"Mai\", \"Jui\", \"Jul\", \"Aou\", \"Sep\", \"Oct\", \"Nov\", \"Déc\"],\n    today: \"Aujourd'hui\",\n    monthsTitle: \"Mois\",\n    clear: \"Effacer\",\n    weekStart: 1,\n    format: \"dd.mm.yyyy\"\n  };\n}());\n"
  },
  {
    "path": "static/assets/vendor/vanillajs-datepicker/dist/js/locales/fr.js",
    "content": "/**\n * French translation for bootstrap-datepicker\n * Nico Mollet <nico.mollet@gmail.com>\n */\n(function () {\n  Datepicker.locales.fr = {\n    days: [\"dimanche\", \"lundi\", \"mardi\", \"mercredi\", \"jeudi\", \"vendredi\", \"samedi\"],\n    daysShort: [\"dim.\", \"lun.\", \"mar.\", \"mer.\", \"jeu.\", \"ven.\", \"sam.\"],\n    daysMin: [\"d\", \"l\", \"ma\", \"me\", \"j\", \"v\", \"s\"],\n    months: [\"janvier\", \"février\", \"mars\", \"avril\", \"mai\", \"juin\", \"juillet\", \"août\", \"septembre\", \"octobre\", \"novembre\", \"décembre\"],\n    monthsShort: [\"janv.\", \"févr.\", \"mars\", \"avril\", \"mai\", \"juin\", \"juil.\", \"août\", \"sept.\", \"oct.\", \"nov.\", \"déc.\"],\n    today: \"Aujourd'hui\",\n    monthsTitle: \"Mois\",\n    clear: \"Effacer\",\n    weekStart: 1,\n    format: \"dd/mm/yyyy\"\n  };\n}());\n"
  },
  {
    "path": "static/assets/vendor/vanillajs-datepicker/dist/js/locales/gl.js",
    "content": "/**\n * Galician translation\n */\n(function () {\n  Datepicker.locales.gl = {\n    days: [\"Domingo\", \"Luns\", \"Martes\", \"Mércores\", \"Xoves\", \"Venres\", \"Sábado\"],\n    daysShort: [\"Dom\", \"Lun\", \"Mar\", \"Mér\", \"Xov\", \"Ven\", \"Sáb\"],\n    daysMin: [\"Do\", \"Lu\", \"Ma\", \"Me\", \"Xo\", \"Ve\", \"Sa\"],\n    months: [\"Xaneiro\", \"Febreiro\", \"Marzo\", \"Abril\", \"Maio\", \"Xuño\", \"Xullo\", \"Agosto\", \"Setembro\", \"Outubro\", \"Novembro\", \"Decembro\"],\n    monthsShort: [\"Xan\", \"Feb\", \"Mar\", \"Abr\", \"Mai\", \"Xun\", \"Xul\", \"Ago\", \"Sep\", \"Out\", \"Nov\", \"Dec\"],\n    today: \"Hoxe\",\n    clear: \"Limpar\",\n    weekStart: 1,\n    format: \"dd/mm/yyyy\"\n  };\n}());\n"
  },
  {
    "path": "static/assets/vendor/vanillajs-datepicker/dist/js/locales/he.js",
    "content": "/**\n * Hebrew translation for bootstrap-datepicker\n * Sagie Maoz <sagie@maoz.info>\n */\n(function () {\n  Datepicker.locales.he = {\n    days: [\"ראשון\", \"שני\", \"שלישי\", \"רביעי\", \"חמישי\", \"שישי\", \"שבת\", \"ראשון\"],\n    daysShort: [\"א\", \"ב\", \"ג\", \"ד\", \"ה\", \"ו\", \"ש\", \"א\"],\n    daysMin: [\"א\", \"ב\", \"ג\", \"ד\", \"ה\", \"ו\", \"ש\", \"א\"],\n    months: [\"ינואר\", \"פברואר\", \"מרץ\", \"אפריל\", \"מאי\", \"יוני\", \"יולי\", \"אוגוסט\", \"ספטמבר\", \"אוקטובר\", \"נובמבר\", \"דצמבר\"],\n    monthsShort: [\"ינו\", \"פבר\", \"מרץ\", \"אפר\", \"מאי\", \"יונ\", \"יול\", \"אוג\", \"ספט\", \"אוק\", \"נוב\", \"דצמ\"],\n    today: \"היום\",\n    rtl: true\n  };\n}());\n"
  },
  {
    "path": "static/assets/vendor/vanillajs-datepicker/dist/js/locales/hi.js",
    "content": "/**\n * Hindi translation for bootstrap-datepicker\n * Visar Uruqi <visar.uruqi@gmail.com>\n */\n(function () {\n  Datepicker.locales.hi = {\n    days: [\"रविवार\", \"सोमवार\", \"मंगलवार\", \"बुधवार\", \"गुरुवार\", \"शुक्रवार\", \"शनिवार\"],\n    daysShort: [\"सूर्य\", \"सोम\", \"मंगल\", \"बुध\", \"गुरु\", \"शुक्र\", \"शनि\"],\n    daysMin: [\"र\", \"सो\", \"मं\", \"बु\", \"गु\", \"शु\", \"श\"],\n    months: [\"जनवरी\", \"फ़रवरी\", \"मार्च\", \"अप्रैल\", \"मई\", \"जून\", \"जुलाई\", \"अगस्त\", \"सितम्बर\", \"अक्टूबर\", \"नवंबर\", \"दिसम्बर\"],\n    monthsShort: [\"जन\", \"फ़रवरी\", \"मार्च\", \"अप्रैल\", \"मई\", \"जून\", \"जुलाई\", \"अगस्त\", \"सितं\", \"अक्टूबर\", \"नवं\", \"दिसम्बर\"],\n    today: \"आज\",\n    monthsTitle: \"महीने\",\n    clear: \"साफ\",\n    weekStart: 1,\n    format: \"dd / mm / yyyy\"\n  };\n}());\n"
  },
  {
    "path": "static/assets/vendor/vanillajs-datepicker/dist/js/locales/hr.js",
    "content": "/**\n * Croatian localisation\n */\n(function () {\n  Datepicker.locales.hr = {\n    days: [\"Nedjelja\", \"Ponedjeljak\", \"Utorak\", \"Srijeda\", \"Četvrtak\", \"Petak\", \"Subota\"],\n    daysShort: [\"Ned\", \"Pon\", \"Uto\", \"Sri\", \"Čet\", \"Pet\", \"Sub\"],\n    daysMin: [\"Ne\", \"Po\", \"Ut\", \"Sr\", \"Če\", \"Pe\", \"Su\"],\n    months: [\"Siječanj\", \"Veljača\", \"Ožujak\", \"Travanj\", \"Svibanj\", \"Lipanj\", \"Srpanj\", \"Kolovoz\", \"Rujan\", \"Listopad\", \"Studeni\", \"Prosinac\"],\n    monthsShort: [\"Sij\", \"Velj\", \"Ožu\", \"Tra\", \"Svi\", \"Lip\", \"Srp\", \"Kol\", \"Ruj\", \"Lis\", \"Stu\", \"Pro\"],\n    today: \"Danas\"\n  };\n}());\n"
  },
  {
    "path": "static/assets/vendor/vanillajs-datepicker/dist/js/locales/hu.js",
    "content": "/**\n * Hungarian translation for bootstrap-datepicker\n * Sotus László <lacisan@gmail.com>\n */\n(function () {\n  Datepicker.locales.hu = {\n    days: [\"vasárnap\", \"hétfő\", \"kedd\", \"szerda\", \"csütörtök\", \"péntek\", \"szombat\"],\n    daysShort: [\"vas\", \"hét\", \"ked\", \"sze\", \"csü\", \"pén\", \"szo\"],\n    daysMin: [\"V\", \"H\", \"K\", \"Sze\", \"Cs\", \"P\", \"Szo\"],\n    months: [\"január\", \"február\", \"március\", \"április\", \"május\", \"június\", \"július\", \"augusztus\", \"szeptember\", \"október\", \"november\", \"december\"],\n    monthsShort: [\"jan\", \"feb\", \"már\", \"ápr\", \"máj\", \"jún\", \"júl\", \"aug\", \"sze\", \"okt\", \"nov\", \"dec\"],\n    today: \"ma\",\n    weekStart: 1,\n    clear: \"töröl\",\n    titleFormat: \"y. MM\",\n    format: \"yyyy.mm.dd\"\n  };\n}());\n"
  },
  {
    "path": "static/assets/vendor/vanillajs-datepicker/dist/js/locales/hy.js",
    "content": "/**\n * Armenian translation for bootstrap-datepicker\n * Hayk Chamyan <hamshen@gmail.com>\n */\n(function () {\n  Datepicker.locales.hy = {\n    days: [\"Կիրակի\", \"Երկուշաբթի\", \"Երեքշաբթի\", \"Չորեքշաբթի\", \"Հինգշաբթի\", \"Ուրբաթ\", \"Շաբաթ\"],\n    daysShort: [\"Կիր\", \"Երկ\", \"Երե\", \"Չոր\", \"Հին\", \"Ուրբ\", \"Շաբ\"],\n    daysMin: [\"Կի\", \"Եկ\", \"Եք\", \"Չո\", \"Հի\", \"Ու\", \"Շա\"],\n    months: [\"Հունվար\", \"Փետրվար\", \"Մարտ\", \"Ապրիլ\", \"Մայիս\", \"Հունիս\", \"Հուլիս\", \"Օգոստոս\", \"Սեպտեմբեր\", \"Հոկտեմբեր\", \"Նոյեմբեր\", \"Դեկտեմբեր\"],\n    monthsShort: [\"Հնվ\", \"Փետ\", \"Մար\", \"Ապր\", \"Մայ\", \"Հուն\", \"Հուլ\", \"Օգս\", \"Սեպ\", \"Հոկ\", \"Նոյ\", \"Դեկ\"],\n    today: \"Այսօր\",\n    clear: \"Ջնջել\",\n    format: \"dd.mm.yyyy\",\n    weekStart: 1,\n    monthsTitle: 'Ամիսնէր'\n  };\n}());\n"
  },
  {
    "path": "static/assets/vendor/vanillajs-datepicker/dist/js/locales/id.js",
    "content": "/**\n * Bahasa translation for bootstrap-datepicker\n * Azwar Akbar <azwar.akbar@gmail.com>\n */\n(function () {\n  Datepicker.locales.id = {\n    days: [\"Minggu\", \"Senin\", \"Selasa\", \"Rabu\", \"Kamis\", \"Jumat\", \"Sabtu\"],\n    daysShort: [\"Mgu\", \"Sen\", \"Sel\", \"Rab\", \"Kam\", \"Jum\", \"Sab\"],\n    daysMin: [\"Mg\", \"Sn\", \"Sl\", \"Ra\", \"Ka\", \"Ju\", \"Sa\"],\n    months: [\"Januari\", \"Februari\", \"Maret\", \"April\", \"Mei\", \"Juni\", \"Juli\", \"Agustus\", \"September\", \"Oktober\", \"November\", \"Desember\"],\n    monthsShort: [\"Jan\", \"Feb\", \"Mar\", \"Apr\", \"Mei\", \"Jun\", \"Jul\", \"Ags\", \"Sep\", \"Okt\", \"Nov\", \"Des\"],\n    today: \"Hari Ini\",\n    clear: \"Kosongkan\"\n  };\n}());\n"
  },
  {
    "path": "static/assets/vendor/vanillajs-datepicker/dist/js/locales/is.js",
    "content": "/**\n * Icelandic translation for bootstrap-datepicker\n * Hinrik Örn Sigurðsson <hinrik.sig@gmail.com>\n */\n(function () {\n  Datepicker.locales.is = {\n    days: [\"Sunnudagur\", \"Mánudagur\", \"Þriðjudagur\", \"Miðvikudagur\", \"Fimmtudagur\", \"Föstudagur\", \"Laugardagur\"],\n    daysShort: [\"Sun\", \"Mán\", \"Þri\", \"Mið\", \"Fim\", \"Fös\", \"Lau\"],\n    daysMin: [\"Su\", \"Má\", \"Þr\", \"Mi\", \"Fi\", \"Fö\", \"La\"],\n    months: [\"Janúar\", \"Febrúar\", \"Mars\", \"Apríl\", \"Maí\", \"Júní\", \"Júlí\", \"Ágúst\", \"September\", \"Október\", \"Nóvember\", \"Desember\"],\n    monthsShort: [\"Jan\", \"Feb\", \"Mar\", \"Apr\", \"Maí\", \"Jún\", \"Júl\", \"Ágú\", \"Sep\", \"Okt\", \"Nóv\", \"Des\"],\n    today: \"Í Dag\"\n  };\n}());\n"
  },
  {
    "path": "static/assets/vendor/vanillajs-datepicker/dist/js/locales/it-CH.js",
    "content": "/**\n * Italian (Switzerland) translation for bootstrap-datepicker\n * Christoph Jossi <c.jossi@ascami.ch>\n * Based on\n * Italian translation for bootstrap-datepicker\n * Enrico Rubboli <rubboli@gmail.com>\n */\n(function () {\n  Datepicker.locales['it-CH'] = {\n    days: [\"Domenica\", \"Lunedì\", \"Martedì\", \"Mercoledì\", \"Giovedì\", \"Venerdì\", \"Sabato\"],\n    daysShort: [\"Dom\", \"Lun\", \"Mar\", \"Mer\", \"Gio\", \"Ven\", \"Sab\"],\n    daysMin: [\"Do\", \"Lu\", \"Ma\", \"Me\", \"Gi\", \"Ve\", \"Sa\"],\n    months: [\"Gennaio\", \"Febbraio\", \"Marzo\", \"Aprile\", \"Maggio\", \"Giugno\", \"Luglio\", \"Agosto\", \"Settembre\", \"Ottobre\", \"Novembre\", \"Dicembre\"],\n    monthsShort: [\"Gen\", \"Feb\", \"Mar\", \"Apr\", \"Mag\", \"Giu\", \"Lug\", \"Ago\", \"Set\", \"Ott\", \"Nov\", \"Dic\"],\n    today: \"Oggi\",\n    clear: \"Cancella\",\n    weekStart: 1,\n    format: \"dd.mm.yyyy\"\n  };\n}());\n"
  },
  {
    "path": "static/assets/vendor/vanillajs-datepicker/dist/js/locales/it.js",
    "content": "/**\n * Italian translation for bootstrap-datepicker\n * Enrico Rubboli <rubboli@gmail.com>\n */\n(function () {\n  Datepicker.locales.it = {\n    days: [\"Domenica\", \"Lunedì\", \"Martedì\", \"Mercoledì\", \"Giovedì\", \"Venerdì\", \"Sabato\"],\n    daysShort: [\"Dom\", \"Lun\", \"Mar\", \"Mer\", \"Gio\", \"Ven\", \"Sab\"],\n    daysMin: [\"Do\", \"Lu\", \"Ma\", \"Me\", \"Gi\", \"Ve\", \"Sa\"],\n    months: [\"Gennaio\", \"Febbraio\", \"Marzo\", \"Aprile\", \"Maggio\", \"Giugno\", \"Luglio\", \"Agosto\", \"Settembre\", \"Ottobre\", \"Novembre\", \"Dicembre\"],\n    monthsShort: [\"Gen\", \"Feb\", \"Mar\", \"Apr\", \"Mag\", \"Giu\", \"Lug\", \"Ago\", \"Set\", \"Ott\", \"Nov\", \"Dic\"],\n    today: \"Oggi\",\n    monthsTitle: \"Mesi\",\n    clear: \"Cancella\",\n    weekStart: 1,\n    format: \"dd/mm/yyyy\"\n  };\n}());\n"
  },
  {
    "path": "static/assets/vendor/vanillajs-datepicker/dist/js/locales/ja.js",
    "content": "/**\n * Japanese translation for bootstrap-datepicker\n * Norio Suzuki <https: //github.com/suzuki/>\n */\n(function () {\n  Datepicker.locales.ja = {\n    days: [\"日曜\", \"月曜\", \"火曜\", \"水曜\", \"木曜\", \"金曜\", \"土曜\"],\n    daysShort: [\"日\", \"月\", \"火\", \"水\", \"木\", \"金\", \"土\"],\n    daysMin: [\"日\", \"月\", \"火\", \"水\", \"木\", \"金\", \"土\"],\n    months: [\"1月\", \"2月\", \"3月\", \"4月\", \"5月\", \"6月\", \"7月\", \"8月\", \"9月\", \"10月\", \"11月\", \"12月\"],\n    monthsShort: [\"1月\", \"2月\", \"3月\", \"4月\", \"5月\", \"6月\", \"7月\", \"8月\", \"9月\", \"10月\", \"11月\", \"12月\"],\n    today: \"今日\",\n    format: \"yyyy/mm/dd\",\n    titleFormat: \"y年mm月\",\n    clear: \"クリア\"\n  };\n}());\n"
  },
  {
    "path": "static/assets/vendor/vanillajs-datepicker/dist/js/locales/ka.js",
    "content": "/**\n * Georgian translation for bootstrap-datepicker\n * Levan Melikishvili <levani0101@yahoo.com>\n */\n(function () {\n  Datepicker.locales.ka = {\n    days: [\"კვირა\", \"ორშაბათი\", \"სამშაბათი\", \"ოთხშაბათი\", \"ხუთშაბათი\", \"პარასკევი\", \"შაბათი\"],\n    daysShort: [\"კვი\", \"ორშ\", \"სამ\", \"ოთხ\", \"ხუთ\", \"პარ\", \"შაბ\"],\n    daysMin: [\"კვ\", \"ორ\", \"სა\", \"ოთ\", \"ხუ\", \"პა\", \"შა\"],\n    months: [\"იანვარი\", \"თებერვალი\", \"მარტი\", \"აპრილი\", \"მაისი\", \"ივნისი\", \"ივლისი\", \"აგვისტო\", \"სექტემბერი\", \"ოქტომბერი\", \"ნოემბერი\", \"დეკემბერი\"],\n    monthsShort: [\"იან\", \"თებ\", \"მარ\", \"აპრ\", \"მაი\", \"ივნ\", \"ივლ\", \"აგვ\", \"სექ\", \"ოქტ\", \"ნოე\", \"დეკ\"],\n    today: \"დღეს\",\n    clear: \"გასუფთავება\",\n    weekStart: 1,\n    format: \"dd.mm.yyyy\"\n  };\n}());\n"
  },
  {
    "path": "static/assets/vendor/vanillajs-datepicker/dist/js/locales/kk.js",
    "content": "/**\n * Kazakh translation for bootstrap-datepicker\n * Yerzhan Tolekov <era.tolekov@gmail.com>\n */\n(function () {\n  Datepicker.locales.kk = {\n    days: [\"Жексенбі\", \"Дүйсенбі\", \"Сейсенбі\", \"Сәрсенбі\", \"Бейсенбі\", \"Жұма\", \"Сенбі\"],\n    daysShort: [\"Жек\", \"Дүй\", \"Сей\", \"Сәр\", \"Бей\", \"Жұм\", \"Сен\"],\n    daysMin: [\"Жк\", \"Дс\", \"Сс\", \"Ср\", \"Бс\", \"Жм\", \"Сн\"],\n    months: [\"Қаңтар\", \"Ақпан\", \"Наурыз\", \"Сәуір\", \"Мамыр\", \"Маусым\", \"Шілде\", \"Тамыз\", \"Қыркүйек\", \"Қазан\", \"Қараша\", \"Желтоқсан\"],\n    monthsShort: [\"Қаң\", \"Ақп\", \"Нау\", \"Сәу\", \"Мам\", \"Мау\", \"Шіл\", \"Там\", \"Қыр\", \"Қаз\", \"Қар\", \"Жел\"],\n    today: \"Бүгін\",\n    weekStart: 1\n  };\n}());\n"
  },
  {
    "path": "static/assets/vendor/vanillajs-datepicker/dist/js/locales/km.js",
    "content": "/**\n * Khmer translation for bootstrap-datepicker\n * This is the Updated Version of: https: //github.com/uxsolutions/bootstrap-datepicker/blob/71308d42cce9524284c50c6fac50422d1790ac0f/js/locales/bootstrap-datepicker.kh.js\n */\n(function () {\n  Datepicker.locales.km = {\n    days: [\"អាទិត្យ\", \"ចន្ទ\", \"អង្គារ\", \"ពុធ\", \"ព្រហស្បតិ៍\", \"សុក្រ\", \"សៅរ៍\"],\n    daysShort: [\"អា.ទិ\", \"ចន្ទ\", \"អង្គារ\", \"ពុធ\", \"ព្រ.ហ\", \"សុក្រ\", \"សៅរ៍\"],\n    daysMin: [\"អា.ទិ\", \"ចន្ទ\", \"អង្គារ\", \"ពុធ\", \"ព្រ.ហ\", \"សុក្រ\", \"សៅរ៍\"],\n    months: [\"មករា\", \"កុម្ភះ\", \"មិនា\", \"មេសា\", \"ឧសភា\", \"មិថុនា\", \"កក្កដា\", \"សីហា\", \"កញ្ញា\", \"តុលា\", \"វិច្ឆិកា\", \"ធ្នូ\"],\n    monthsShort: [\"មករា\", \"កុម្ភះ\", \"មិនា\", \"មេសា\", \"ឧសភា\", \"មិថុនា\", \"កក្កដា\", \"សីហា\", \"កញ្ញា\", \"តុលា\", \"វិច្ឆិកា\", \"ធ្នូ\"],\n    today: \"ថ្ងៃនេះ\",\n    clear: \"សំអាត\"\n  };\n}());\n"
  },
  {
    "path": "static/assets/vendor/vanillajs-datepicker/dist/js/locales/ko.js",
    "content": "/**\n * Korean translation for bootstrap-datepicker\n * This is a port from https: //github.com/moment/moment/blob/develop/src/locale/ko.js\n */\n(function () {\n  Datepicker.locales.ko = {\n    days: [\"일요일\", \"월요일\", \"화요일\", \"수요일\", \"목요일\", \"금요일\", \"토요일\"],\n    daysShort: [\"일\", \"월\", \"화\", \"수\", \"목\", \"금\", \"토\"],\n    daysMin: [\"일\", \"월\", \"화\", \"수\", \"목\", \"금\", \"토\"],\n    months: [\"1월\", \"2월\", \"3월\", \"4월\", \"5월\", \"6월\", \"7월\", \"8월\", \"9월\", \"10월\", \"11월\", \"12월\"],\n    monthsShort: [\"1월\", \"2월\", \"3월\", \"4월\", \"5월\", \"6월\", \"7월\", \"8월\", \"9월\", \"10월\", \"11월\", \"12월\"],\n    today: \"오늘\",\n    clear: \"삭제\",\n    format: \"yyyy-mm-dd\",\n    titleFormat: \"y년mm월\",\n    weekStart: 0\n  };\n}());\n"
  },
  {
    "path": "static/assets/vendor/vanillajs-datepicker/dist/js/locales/lt.js",
    "content": "/**\n * Lithuanian translation for bootstrap-datepicker\n * Šarūnas Gliebus <ssharunas@yahoo.co.uk>\n */\n\n(function () {\n  Datepicker.locales.lt = {\n    days: [\"Sekmadienis\", \"Pirmadienis\", \"Antradienis\", \"Trečiadienis\", \"Ketvirtadienis\", \"Penktadienis\", \"Šeštadienis\"],\n    daysShort: [\"S\", \"Pr\", \"A\", \"T\", \"K\", \"Pn\", \"Š\"],\n    daysMin: [\"Sk\", \"Pr\", \"An\", \"Tr\", \"Ke\", \"Pn\", \"Št\"],\n    months: [\"Sausis\", \"Vasaris\", \"Kovas\", \"Balandis\", \"Gegužė\", \"Birželis\", \"Liepa\", \"Rugpjūtis\", \"Rugsėjis\", \"Spalis\", \"Lapkritis\", \"Gruodis\"],\n    monthsShort: [\"Sau\", \"Vas\", \"Kov\", \"Bal\", \"Geg\", \"Bir\", \"Lie\", \"Rugp\", \"Rugs\", \"Spa\", \"Lap\", \"Gru\"],\n    today: \"Šiandien\",\n    monthsTitle: \"Mėnesiai\",\n    clear: \"Išvalyti\",\n    weekStart: 1,\n    format: \"yyyy-mm-dd\"\n  };\n}());\n"
  },
  {
    "path": "static/assets/vendor/vanillajs-datepicker/dist/js/locales/lv.js",
    "content": "/**\n * Latvian translation for bootstrap-datepicker\n * Artis Avotins <artis@apit.lv>\n */\n\n(function () {\n  Datepicker.locales.lv = {\n    days: [\"Svētdiena\", \"Pirmdiena\", \"Otrdiena\", \"Trešdiena\", \"Ceturtdiena\", \"Piektdiena\", \"Sestdiena\"],\n    daysShort: [\"Sv\", \"P\", \"O\", \"T\", \"C\", \"Pk\", \"S\"],\n    daysMin: [\"Sv\", \"Pr\", \"Ot\", \"Tr\", \"Ce\", \"Pk\", \"Se\"],\n    months: [\"Janvāris\", \"Februāris\", \"Marts\", \"Aprīlis\", \"Maijs\", \"Jūnijs\", \"Jūlijs\", \"Augusts\", \"Septembris\", \"Oktobris\", \"Novembris\", \"Decembris\"],\n    monthsShort: [\"Jan\", \"Feb\", \"Mar\", \"Apr\", \"Mai\", \"Jūn\", \"Jūl\", \"Aug\", \"Sep\", \"Okt\", \"Nov\", \"Dec\"],\n    monthsTitle: \"Mēneši\",\n    today: \"Šodien\",\n    clear: \"Nodzēst\",\n    weekStart: 1\n  };\n}());\n"
  },
  {
    "path": "static/assets/vendor/vanillajs-datepicker/dist/js/locales/me.js",
    "content": "/**\n * Montenegrin translation for bootstrap-datepicker\n * Miodrag Nikač <miodrag@restartit.me>\n */\n(function () {\n  Datepicker.locales.me = {\n    days: [\"Nedjelja\",\"Ponedjeljak\", \"Utorak\", \"Srijeda\", \"Četvrtak\", \"Petak\", \"Subota\"],\n    daysShort: [\"Ned\", \"Pon\", \"Uto\", \"Sri\", \"Čet\", \"Pet\", \"Sub\"],\n    daysMin: [\"Ne\", \"Po\", \"Ut\", \"Sr\", \"Če\", \"Pe\", \"Su\"],\n    months: [\"Januar\", \"Februar\", \"Mart\", \"April\", \"Maj\", \"Jun\", \"Jul\", \"Avgust\", \"Septembar\", \"Oktobar\", \"Novembar\", \"Decembar\"],\n    monthsShort: [\"Jan\", \"Feb\", \"Mar\", \"Apr\", \"Maj\", \"Jun\", \"Jul\", \"Avg\", \"Sep\", \"Okt\", \"Nov\", \"Dec\"],\n    today: \"Danas\",\n    weekStart: 1,\n    clear: \"Izbriši\",\n    format: \"dd.mm.yyyy\"\n  };\n}());\n"
  },
  {
    "path": "static/assets/vendor/vanillajs-datepicker/dist/js/locales/mk.js",
    "content": "/**\n * Macedonian translation for bootstrap-datepicker\n * Marko Aleksic <psybaron@gmail.com>\n */\n(function () {\n  Datepicker.locales.mk = {\n    days: [\"Недела\", \"Понеделник\", \"Вторник\", \"Среда\", \"Четврток\", \"Петок\", \"Сабота\"],\n    daysShort: [\"Нед\", \"Пон\", \"Вто\", \"Сре\", \"Чет\", \"Пет\", \"Саб\"],\n    daysMin: [\"Не\", \"По\", \"Вт\", \"Ср\", \"Че\", \"Пе\", \"Са\"],\n    months: [\"Јануари\", \"Февруари\", \"Март\", \"Април\", \"Мај\", \"Јуни\", \"Јули\", \"Август\", \"Септември\", \"Октомври\", \"Ноември\", \"Декември\"],\n    monthsShort: [\"Јан\", \"Фев\", \"Мар\", \"Апр\", \"Мај\", \"Јун\", \"Јул\", \"Авг\", \"Сеп\", \"Окт\", \"Ное\", \"Дек\"],\n    today: \"Денес\",\n    format: \"dd.mm.yyyy\"\n  };\n}());\n"
  },
  {
    "path": "static/assets/vendor/vanillajs-datepicker/dist/js/locales/mn.js",
    "content": "/**\n * Mongolian translation for bootstrap-datepicker\n * Andrey Torsunov <andrey.torsunov@gmail.com>\n */\n(function () {\n  Datepicker.locales.mn = {\n    days: [\"Ням\", \"Даваа\", \"Мягмар\", \"Лхагва\", \"Пүрэв\", \"Баасан\", \"Бямба\"],\n    daysShort: [\"Ням\", \"Дав\", \"Мяг\", \"Лха\", \"Пүр\", \"Баа\", \"Бям\"],\n    daysMin: [\"Ня\", \"Да\", \"Мя\", \"Лх\", \"Пү\", \"Ба\", \"Бя\"],\n    months: [\"Хулгана\", \"Үхэр\", \"Бар\", \"Туулай\", \"Луу\", \"Могой\", \"Морь\", \"Хонь\", \"Бич\", \"Тахиа\", \"Нохой\", \"Гахай\"],\n    monthsShort: [\"Хул\", \"Үхэ\", \"Бар\", \"Туу\", \"Луу\", \"Мог\", \"Мор\", \"Хон\", \"Бич\", \"Тах\", \"Нох\", \"Гах\"],\n    today: \"Өнөөдөр\",\n    clear: \"Тодорхой\",\n    format: \"yyyy.mm.dd\",\n    weekStart: 1\n  };\n}());\n"
  },
  {
    "path": "static/assets/vendor/vanillajs-datepicker/dist/js/locales/mr.js",
    "content": "/**\n * Marathi translation for bootstrap-datepicker\n * Sushant Pimple <pimplesushant@gmail.com>\n */\n(function () {\n  Datepicker.locales.mr = {\n    days: [\"रविवार\", \"सोमवार\", \"मंगळवार\", \"बुधवार\", \"गुरुवार\", \"शुक्रवार\", \"शनिवार\"],\n    daysShort: [\"रवि\", \"सोम\", \"मंगळ\", \"बुध\", \"गुरु\", \"शुक्र\", \"शनि\"],\n    daysMin: [\"र\", \"सो\", \"मं\", \"बु\", \"गु\", \"शु\", \"श\"],\n    months: [\"जानेवारी\", \"फेब्रुवारी\", \"मार्च\", \"एप्रिल\", \"मे\", \"जून\", \"जुलै\", \"ऑगस्ट\", \"सप्टेंबर\", \"ऑक्टोबर\", \"नोव्हेंबर\", \"डिसेंबर\"],\n    monthsShort: [\"जाने.\", \"फेब्रु.\", \"मार्च\", \"एप्रिल\", \"मे\", \"जून\", \"जुलै\", \"ऑगस्ट\", \"सप्टें.\", \"ऑक्टो.\", \"नोव्हें.\", \"डिसें.\"],\n    today: \"आज\",\n    monthsTitle: \"महीने\",\n    clear: \"हटवा\",\n    weekStart: 1,\n    format: \"dd / mm / yyyy\"\n  };\n}());\n"
  },
  {
    "path": "static/assets/vendor/vanillajs-datepicker/dist/js/locales/ms.js",
    "content": "/**\n * Malay translation for bootstrap-datepicker\n * Ateman Faiz <noorulfaiz@gmail.com>\n */\n(function () {\n  Datepicker.locales.ms = {\n    days: [\"Ahad\", \"Isnin\", \"Selasa\", \"Rabu\", \"Khamis\", \"Jumaat\", \"Sabtu\"],\n    daysShort: [\"Aha\", \"Isn\", \"Sel\", \"Rab\", \"Kha\", \"Jum\", \"Sab\"],\n    daysMin: [\"Ah\", \"Is\", \"Se\", \"Ra\", \"Kh\", \"Ju\", \"Sa\"],\n    months: [\"Januari\", \"Februari\", \"Mac\", \"April\", \"Mei\", \"Jun\", \"Julai\", \"Ogos\", \"September\", \"Oktober\", \"November\", \"Disember\"],\n    monthsShort: [\"Jan\", \"Feb\", \"Mar\", \"Apr\", \"Mei\", \"Jun\", \"Jul\", \"Ogo\", \"Sep\", \"Okt\", \"Nov\", \"Dis\"],\n    today: \"Hari Ini\",\n    clear: \"Bersihkan\"\n  };\n}());\n"
  },
  {
    "path": "static/assets/vendor/vanillajs-datepicker/dist/js/locales/nl-BE.js",
    "content": "/**\n * Belgium-Dutch translation for bootstrap-datepicker\n * Julien Poulin <poulin_julien@hotmail.com>\n */\n(function () {\n  Datepicker.locales['nl-BE'] = {\n    days: [\"zondag\", \"maandag\", \"dinsdag\", \"woensdag\", \"donderdag\", \"vrijdag\", \"zaterdag\"],\n    daysShort: [\"zo\", \"ma\", \"di\", \"wo\", \"do\", \"vr\", \"za\"],\n    daysMin: [\"zo\", \"ma\", \"di\", \"wo\", \"do\", \"vr\", \"za\"],\n    months: [\"januari\", \"februari\", \"maart\", \"april\", \"mei\", \"juni\", \"juli\", \"augustus\", \"september\", \"oktober\", \"november\", \"december\"],\n    monthsShort: [\"jan\", \"feb\", \"mrt\", \"apr\", \"mei\", \"jun\", \"jul\", \"aug\", \"sep\", \"okt\", \"nov\", \"dec\"],\n    today: \"Vandaag\",\n    monthsTitle: \"Maanden\",\n    clear: \"Leegmaken\",\n    weekStart: 1,\n    format: \"dd/mm/yyyy\"\n  };\n}());\n"
  },
  {
    "path": "static/assets/vendor/vanillajs-datepicker/dist/js/locales/nl.js",
    "content": "/**\n * Dutch translation for bootstrap-datepicker\n * Reinier Goltstein <mrgoltstein@gmail.com>\n */\n(function () {\n  Datepicker.locales.nl = {\n    days: [\"zondag\", \"maandag\", \"dinsdag\", \"woensdag\", \"donderdag\", \"vrijdag\", \"zaterdag\"],\n    daysShort: [\"zo\", \"ma\", \"di\", \"wo\", \"do\", \"vr\", \"za\"],\n    daysMin: [\"zo\", \"ma\", \"di\", \"wo\", \"do\", \"vr\", \"za\"],\n    months: [\"januari\", \"februari\", \"maart\", \"april\", \"mei\", \"juni\", \"juli\", \"augustus\", \"september\", \"oktober\", \"november\", \"december\"],\n    monthsShort: [\"jan\", \"feb\", \"mrt\", \"apr\", \"mei\", \"jun\", \"jul\", \"aug\", \"sep\", \"okt\", \"nov\", \"dec\"],\n    today: \"Vandaag\",\n    monthsTitle: \"Maanden\",\n    clear: \"Wissen\",\n    weekStart: 1,\n    format: \"dd-mm-yyyy\"\n  };\n}());\n"
  },
  {
    "path": "static/assets/vendor/vanillajs-datepicker/dist/js/locales/no.js",
    "content": "/**\n * Norwegian translation for bootstrap-datepicker\n * George Gooding <george@nettsentrisk.no>\n */\n(function () {\n  Datepicker.locales.no = {\n    days: ['søndag', 'mandag', 'tirsdag', 'onsdag', 'torsdag', 'fredag', 'lørdag'],\n    daysShort: ['søn', 'man', 'tir', 'ons', 'tor', 'fre', 'lør'],\n    daysMin: ['sø', 'ma', 'ti', 'on', 'to', 'fr', 'lø'],\n    months: ['januar', 'februar', 'mars', 'april', 'mai', 'juni', 'juli', 'august', 'september', 'oktober', 'november', 'desember'],\n    monthsShort: ['jan', 'feb', 'mar', 'apr', 'mai', 'jun', 'jul', 'aug', 'sep', 'okt', 'nov', 'des'],\n    today: 'i dag',\n    monthsTitle: 'Måneder',\n    clear: 'Nullstill',\n    weekStart: 1,\n    format: 'dd.mm.yyyy'\n  };\n}());\n"
  },
  {
    "path": "static/assets/vendor/vanillajs-datepicker/dist/js/locales/oc.js",
    "content": "/**\n * Occitan translation for bootstrap-datepicker\n */\n(function () {\n  Datepicker.locales.oc = {\n    days: [\"Dimenge\", \"Diluns\", \"Dimars\", \"Dimècres\", \"Dijòus\", \"Divendres\", \"Dissabte\"],\n    daysShort: [\"Dim\",  \"Dil\", \"Dmr\", \"Dmc\", \"Dij\", \"Div\", \"Dis\"],\n    daysMin: [\"dg\", \"dl\", \"dr\", \"dc\", \"dj\", \"dv\", \"ds\"],\n    months: [\"Genièr\", \"Febrièr\", \"Març\", \"Abrial\", \"Mai\", \"Junh\", \"Julhet\", \"Agost\", \"Setembre\", \"Octobre\", \"Novembre\", \"Decembre\"],\n    monthsShort: [\"Gen\", \"Feb\", \"Mar\", \"Abr\", \"Mai\", \"Jun\", \"Jul\", \"Ago\", \"Set\", \"Oct\", \"Nov\", \"Dec\"],\n    today: \"Uèi\",\n    monthsTitle: \"Meses\",\n    clear: \"Escafar\",\n    weekStart: 1,\n    format: \"dd/mm/yyyy\"\n  };\n}());\n"
  },
  {
    "path": "static/assets/vendor/vanillajs-datepicker/dist/js/locales/pl.js",
    "content": "/**\n * Polish translation for bootstrap-datepicker\n * Robert <rtpm@gazeta.pl>\n */\n(function () {\n  Datepicker.locales.pl = {\n    days: [\"Niedziela\", \"Poniedziałek\", \"Wtorek\", \"Środa\", \"Czwartek\", \"Piątek\", \"Sobota\"],\n    daysShort: [\"Niedz.\", \"Pon.\", \"Wt.\", \"Śr.\", \"Czw.\", \"Piąt.\", \"Sob.\"],\n    daysMin: [\"Ndz.\", \"Pn.\", \"Wt.\", \"Śr.\", \"Czw.\", \"Pt.\", \"Sob.\"],\n    months: [\"Styczeń\", \"Luty\", \"Marzec\", \"Kwiecień\", \"Maj\", \"Czerwiec\", \"Lipiec\", \"Sierpień\", \"Wrzesień\", \"Październik\", \"Listopad\", \"Grudzień\"],\n    monthsShort: [\"Sty.\", \"Lut.\", \"Mar.\", \"Kwi.\", \"Maj\", \"Cze.\", \"Lip.\", \"Sie.\", \"Wrz.\", \"Paź.\", \"Lis.\", \"Gru.\"],\n    today: \"Dzisiaj\",\n    weekStart: 1,\n    clear: \"Wyczyść\",\n    format: \"dd.mm.yyyy\"\n  };\n}());\n"
  },
  {
    "path": "static/assets/vendor/vanillajs-datepicker/dist/js/locales/pt-BR.js",
    "content": "/**\n * Brazilian translation for bootstrap-datepicker\n * Cauan Cabral <cauan@radig.com.br>\n */\n(function () {\n  Datepicker.locales['pt-BR'] = {\n    days: [\"Domingo\", \"Segunda\", \"Terça\", \"Quarta\", \"Quinta\", \"Sexta\", \"Sábado\"],\n    daysShort: [\"Dom\", \"Seg\", \"Ter\", \"Qua\", \"Qui\", \"Sex\", \"Sáb\"],\n    daysMin: [\"Do\", \"Se\", \"Te\", \"Qu\", \"Qu\", \"Se\", \"Sa\"],\n    months: [\"Janeiro\", \"Fevereiro\", \"Março\", \"Abril\", \"Maio\", \"Junho\", \"Julho\", \"Agosto\", \"Setembro\", \"Outubro\", \"Novembro\", \"Dezembro\"],\n    monthsShort: [\"Jan\", \"Fev\", \"Mar\", \"Abr\", \"Mai\", \"Jun\", \"Jul\", \"Ago\", \"Set\", \"Out\", \"Nov\", \"Dez\"],\n    today: \"Hoje\",\n    monthsTitle: \"Meses\",\n    clear: \"Limpar\",\n    format: \"dd/mm/yyyy\"\n  };\n}());\n"
  },
  {
    "path": "static/assets/vendor/vanillajs-datepicker/dist/js/locales/pt.js",
    "content": "/**\n * Portuguese translation for bootstrap-datepicker\n * Original code: Cauan Cabral <cauan@radig.com.br>\n * Tiago Melo <tiago.blackcode@gmail.com>\n */\n(function () {\n  Datepicker.locales.pt = {\n    days: [\"Domingo\", \"Segunda\", \"Terça\", \"Quarta\", \"Quinta\", \"Sexta\", \"Sábado\"],\n    daysShort: [\"Dom\", \"Seg\", \"Ter\", \"Qua\", \"Qui\", \"Sex\", \"Sáb\"],\n    daysMin: [\"Do\", \"Se\", \"Te\", \"Qu\", \"Qu\", \"Se\", \"Sa\"],\n    months: [\"Janeiro\", \"Fevereiro\", \"Março\", \"Abril\", \"Maio\", \"Junho\", \"Julho\", \"Agosto\", \"Setembro\", \"Outubro\", \"Novembro\", \"Dezembro\"],\n    monthsShort: [\"Jan\", \"Fev\", \"Mar\", \"Abr\", \"Mai\", \"Jun\", \"Jul\", \"Ago\", \"Set\", \"Out\", \"Nov\", \"Dez\"],\n    today: \"Hoje\",\n    monthsTitle: \"Meses\",\n    clear: \"Limpar\",\n    format: \"dd/mm/yyyy\"\n  };\n}());\n"
  },
  {
    "path": "static/assets/vendor/vanillajs-datepicker/dist/js/locales/ro.js",
    "content": "/**\n * Romanian translation for bootstrap-datepicker\n * Cristian Vasile <cristi.mie@gmail.com>\n */\n(function () {\n  Datepicker.locales.ro = {\n    days: [\"Duminică\", \"Luni\", \"Marţi\", \"Miercuri\", \"Joi\", \"Vineri\", \"Sâmbătă\"],\n    daysShort: [\"Dum\", \"Lun\", \"Mar\", \"Mie\", \"Joi\", \"Vin\", \"Sâm\"],\n    daysMin: [\"Du\", \"Lu\", \"Ma\", \"Mi\", \"Jo\", \"Vi\", \"Sâ\"],\n    months: [\"Ianuarie\", \"Februarie\", \"Martie\", \"Aprilie\", \"Mai\", \"Iunie\", \"Iulie\", \"August\", \"Septembrie\", \"Octombrie\", \"Noiembrie\", \"Decembrie\"],\n    monthsShort: [\"Ian\", \"Feb\", \"Mar\", \"Apr\", \"Mai\", \"Iun\", \"Iul\", \"Aug\", \"Sep\", \"Oct\", \"Nov\", \"Dec\"],\n    today: \"Astăzi\",\n    clear: \"Șterge\",\n    weekStart: 1,\n    format: \"dd/mm/yyyy\"\n  };\n}());\n"
  },
  {
    "path": "static/assets/vendor/vanillajs-datepicker/dist/js/locales/ru.js",
    "content": "/**\n * Russian translation for bootstrap-datepicker\n * Victor Taranenko <darwin@snowdale.com>\n */\n(function () {\n  Datepicker.locales.ru = {\n    days: [\"Воскресенье\", \"Понедельник\", \"Вторник\", \"Среда\", \"Четверг\", \"Пятница\", \"Суббота\"],\n    daysShort: [\"Вск\", \"Пнд\", \"Втр\", \"Срд\", \"Чтв\", \"Птн\", \"Суб\"],\n    daysMin: [\"Вс\", \"Пн\", \"Вт\", \"Ср\", \"Чт\", \"Пт\", \"Сб\"],\n    months: [\"Январь\", \"Февраль\", \"Март\", \"Апрель\", \"Май\", \"Июнь\", \"Июль\", \"Август\", \"Сентябрь\", \"Октябрь\", \"Ноябрь\", \"Декабрь\"],\n    monthsShort: [\"Янв\", \"Фев\", \"Мар\", \"Апр\", \"Май\", \"Июн\", \"Июл\", \"Авг\", \"Сен\", \"Окт\", \"Ноя\", \"Дек\"],\n    today: \"Сегодня\",\n    clear: \"Очистить\",\n    format: \"dd.mm.yyyy\",\n    weekStart: 1,\n    monthsTitle: 'Месяцы'\n  };\n}());\n"
  },
  {
    "path": "static/assets/vendor/vanillajs-datepicker/dist/js/locales/si.js",
    "content": "/**\n * Sinhala translation for bootstrap-datepicker\n * Chanaka Fernando <chanaka.fernando@hotmail.com>\n */\n(function () {\n  Datepicker.locales.si = {\n    days: [\"ඉරිදා\", \"සඳුදා\", \"අඟහරුවාදා\", \"බදාදා\", \"බ්‍රහස්පතින්දා\", \"සිකුරාදා\", \"සෙනසුරාදා\"],\n    daysShort: [\"ඉරි\", \"සඳු\", \"අඟ\", \"බදා\", \"බ්‍රහ\", \"සිකු\", \"සෙන\"],\n    daysMin: [\"ඉ\", \"ස\", \"අ\", \"බ\", \"බ්‍ර\", \"සි\", \"සෙ\"],\n    months: [\"ජනවාරි\", \"පෙබරවාරි\", \"මාර්තු\", \"අප්‍රේල්\", \"මැයි\", \"ජුනි\", \"ජූලි\", \"අගෝස්තු\", \"සැප්තැම්බර්\", \"ඔක්තෝබර්\", \"නොවැම්බර්\", \"දෙසැම්බර්\"],\n    monthsShort: [\"ජන\", \"පෙබ\", \"මාර්\", \"අප්‍රේ\", \"මැයි\", \"ජුනි\", \"ජූලි\", \"අගෝ\", \"සැප්\", \"ඔක්\", \"නොවැ\", \"දෙසැ\"],\n    today: \"අද\",\n    monthsTitle: \"මාස\",\n    clear: \"මකන්න\",\n    weekStart: 0,\n    format: \"yyyy-mm-dd\"\n  };\n}());\n"
  },
  {
    "path": "static/assets/vendor/vanillajs-datepicker/dist/js/locales/sk.js",
    "content": "/**\n * Slovak translation for bootstrap-datepicker\n * Marek Lichtner <marek@licht.sk>\n * Fixes by Michal Remiš <michal.remis@gmail.com>\n */\n(function () {\n  Datepicker.locales.sk = {\n    days: [\"Nedeľa\", \"Pondelok\", \"Utorok\", \"Streda\", \"Štvrtok\", \"Piatok\", \"Sobota\"],\n    daysShort: [\"Ned\", \"Pon\", \"Uto\", \"Str\", \"Štv\", \"Pia\", \"Sob\"],\n    daysMin: [\"Ne\", \"Po\", \"Ut\", \"St\", \"Št\", \"Pia\", \"So\"],\n    months: [\"Január\", \"Február\", \"Marec\", \"Apríl\", \"Máj\", \"Jún\", \"Júl\", \"August\", \"September\", \"Október\", \"November\", \"December\"],\n    monthsShort: [\"Jan\", \"Feb\", \"Mar\", \"Apr\", \"Máj\", \"Jún\", \"Júl\", \"Aug\", \"Sep\", \"Okt\", \"Nov\", \"Dec\"],\n    today: \"Dnes\",\n    clear: \"Vymazať\",\n    weekStart: 1,\n    format: \"d.m.yyyy\"\n  };\n}());\n"
  },
  {
    "path": "static/assets/vendor/vanillajs-datepicker/dist/js/locales/sl.js",
    "content": "/**\n * Slovene translation for bootstrap-datepicker\n * Gregor Rudolf <gregor.rudolf@gmail.com>\n */\n(function () {\n  Datepicker.locales.sl = {\n    days: [\"Nedelja\", \"Ponedeljek\", \"Torek\", \"Sreda\", \"Četrtek\", \"Petek\", \"Sobota\"],\n    daysShort: [\"Ned\", \"Pon\", \"Tor\", \"Sre\", \"Čet\", \"Pet\", \"Sob\"],\n    daysMin: [\"Ne\", \"Po\", \"To\", \"Sr\", \"Če\", \"Pe\", \"So\"],\n    months: [\"Januar\", \"Februar\", \"Marec\", \"April\", \"Maj\", \"Junij\", \"Julij\", \"Avgust\", \"September\", \"Oktober\", \"November\", \"December\"],\n    monthsShort: [\"Jan\", \"Feb\", \"Mar\", \"Apr\", \"Maj\", \"Jun\", \"Jul\", \"Avg\", \"Sep\", \"Okt\", \"Nov\", \"Dec\"],\n    today: \"Danes\",\n    weekStart: 1\n  };\n}());\n"
  },
  {
    "path": "static/assets/vendor/vanillajs-datepicker/dist/js/locales/sq.js",
    "content": "/**\n * Albanian translation for bootstrap-datepicker\n * Tomor Pupovci <https: //www.github.com/ttomor>\n */\n(function () {\n  Datepicker.locales.sq = {\n    days: [\"E Diel\", \"E Hënë\", \"E Martē\", \"E Mërkurë\", \"E Enjte\", \"E Premte\", \"E Shtunë\"],\n    daysShort: [\"Die\", \"Hën\", \"Mar\", \"Mër\", \"Enj\", \"Pre\", \"Shtu\"],\n    daysMin: [\"Di\", \"Hë\", \"Ma\", \"Më\", \"En\", \"Pr\", \"Sht\"],\n    months: [\"Janar\", \"Shkurt\", \"Mars\", \"Prill\", \"Maj\", \"Qershor\", \"Korrik\", \"Gusht\", \"Shtator\", \"Tetor\", \"Nëntor\", \"Dhjetor\"],\n    monthsShort: [\"Jan\", \"Shk\", \"Mar\", \"Pri\", \"Maj\", \"Qer\", \"Korr\", \"Gu\", \"Sht\", \"Tet\", \"Nën\", \"Dhjet\"],\n    monthsTitle: \"Muaj\",\n    today: \"Sot\",\n    weekStart: 1,\n    format: \"dd/mm/yyyy\",\n    clear: \"Pastro\"\n  };\n}());\n"
  },
  {
    "path": "static/assets/vendor/vanillajs-datepicker/dist/js/locales/sr-latn.js",
    "content": "/**\n * Serbian latin translation for bootstrap-datepicker\n * Bojan Milosavlević <milboj@gmail.com>\n */\n(function () {\n  Datepicker.locales['sr-latn'] = {\n    days: [\"Nedelja\",\"Ponedeljak\", \"Utorak\", \"Sreda\", \"Četvrtak\", \"Petak\", \"Subota\"],\n    daysShort: [\"Ned\", \"Pon\", \"Uto\", \"Sre\", \"Čet\", \"Pet\", \"Sub\"],\n    daysMin: [\"N\", \"Po\", \"U\", \"Sr\", \"Č\", \"Pe\", \"Su\"],\n    months: [\"Januar\", \"Februar\", \"Mart\", \"April\", \"Maj\", \"Jun\", \"Jul\", \"Avgust\", \"Septembar\", \"Oktobar\", \"Novembar\", \"Decembar\"],\n    monthsShort: [\"Jan\", \"Feb\", \"Mar\", \"Apr\", \"Maj\", \"Jun\", \"Jul\", \"Avg\", \"Sep\", \"Okt\", \"Nov\", \"Dec\"],\n    today: \"Danas\",\n    weekStart: 1,\n    format: \"dd.mm.yyyy\"\n  };\n}());\n"
  },
  {
    "path": "static/assets/vendor/vanillajs-datepicker/dist/js/locales/sr.js",
    "content": "/**\n * Serbian cyrillic translation for bootstrap-datepicker\n * Bojan Milosavlević <milboj@gmail.com>\n */\n(function () {\n  Datepicker.locales.sr = {\n    days: [\"Недеља\",\"Понедељак\", \"Уторак\", \"Среда\", \"Четвртак\", \"Петак\", \"Субота\"],\n    daysShort: [\"Нед\", \"Пон\", \"Уто\", \"Сре\", \"Чет\", \"Пет\", \"Суб\"],\n    daysMin: [\"Н\", \"По\", \"У\", \"Ср\", \"Ч\", \"Пе\", \"Су\"],\n    months: [\"Јануар\", \"Фебруар\", \"Март\", \"Април\", \"Мај\", \"Јун\", \"Јул\", \"Август\", \"Септембар\", \"Октобар\", \"Новембар\", \"Децембар\"],\n    monthsShort: [\"Јан\", \"Феб\", \"Мар\", \"Апр\", \"Мај\", \"Јун\", \"Јул\", \"Авг\", \"Сеп\", \"Окт\", \"Нов\", \"Дец\"],\n    today: \"Данас\",\n    weekStart: 1,\n    format: \"dd.mm.yyyy\"\n  };\n}());\n"
  },
  {
    "path": "static/assets/vendor/vanillajs-datepicker/dist/js/locales/sv.js",
    "content": "/**\n * Swedish translation for bootstrap-datepicker\n * Patrik Ragnarsson <patrik@starkast.net>\n */\n(function () {\n  Datepicker.locales.sv = {\n    days: [\"söndag\", \"måndag\", \"tisdag\", \"onsdag\", \"torsdag\", \"fredag\", \"lördag\"],\n    daysShort: [\"sön\", \"mån\", \"tis\", \"ons\", \"tor\", \"fre\", \"lör\"],\n    daysMin: [\"sö\", \"må\", \"ti\", \"on\", \"to\", \"fr\", \"lö\"],\n    months: [\"januari\", \"februari\", \"mars\", \"april\", \"maj\", \"juni\", \"juli\", \"augusti\", \"september\", \"oktober\", \"november\", \"december\"],\n    monthsShort: [\"jan\", \"feb\", \"mar\", \"apr\", \"maj\", \"jun\", \"jul\", \"aug\", \"sep\", \"okt\", \"nov\", \"dec\"],\n    today: \"Idag\",\n    format: \"yyyy-mm-dd\",\n    weekStart: 1,\n    clear: \"Rensa\"\n  };\n}());\n"
  },
  {
    "path": "static/assets/vendor/vanillajs-datepicker/dist/js/locales/sw.js",
    "content": "/**\n * Swahili translation for bootstrap-datepicker\n * Edwin Mugendi <https: //github.com/edwinmugendi>\n * Source: http: //scriptsource.org/cms/scripts/page.php?item_id=entry_detail&uid=xnfaqyzcku\n */\n(function () {\n  Datepicker.locales.sw = {\n    days: [\"Jumapili\", \"Jumatatu\", \"Jumanne\", \"Jumatano\", \"Alhamisi\", \"Ijumaa\", \"Jumamosi\"],\n    daysShort: [\"J2\", \"J3\", \"J4\", \"J5\", \"Alh\", \"Ij\", \"J1\"],\n    daysMin: [\"2\", \"3\", \"4\", \"5\", \"A\", \"I\", \"1\"],\n    months: [\"Januari\", \"Februari\", \"Machi\", \"Aprili\", \"Mei\", \"Juni\", \"Julai\", \"Agosti\", \"Septemba\", \"Oktoba\", \"Novemba\", \"Desemba\"],\n    monthsShort: [\"Jan\", \"Feb\", \"Mac\", \"Apr\", \"Mei\", \"Jun\", \"Jul\", \"Ago\", \"Sep\", \"Okt\", \"Nov\", \"Des\"],\n    today: \"Leo\"\n  };\n}());\n"
  },
  {
    "path": "static/assets/vendor/vanillajs-datepicker/dist/js/locales/ta.js",
    "content": "/**\n * Tamil translation for bootstrap-datepicker\n * Abubacker Siddik A <abuabdul86@hotmail.com>\n */\n(function () {\n  Datepicker.locales.ta = {\n    days: [\"ஞாயிறு\", \"திங்கள்\", \"செவ்வாய்\", \"புதன்\", \"வியாழன்\", \"வெள்ளி\", \"சனி\"],\n    daysShort: [\"ஞாயி\", \"திங்\", \"செவ்\", \"புத\", \"வியா\", \"வெள்\", \"சனி\"],\n    daysMin: [\"ஞா\", \"தி\", \"செ\", \"பு\", \"வி\", \"வெ\", \"ச\"],\n    months: [\"ஜனவரி\", \"பிப்ரவரி\", \"மார்ச்\", \"ஏப்ரல்\", \"மே\", \"ஜூன்\", \"ஜூலை\", \"ஆகஸ்டு\", \"செப்டம்பர்\", \"அக்டோபர்\", \"நவம்பர்\", \"டிசம்பர்\"],\n    monthsShort: [\"ஜன\", \"பிப்\", \"மார்\", \"ஏப்\", \"மே\", \"ஜூன்\", \"ஜூலை\", \"ஆக\", \"செப்\", \"அக்\", \"நவ\", \"டிச\"],\n    today: \"இன்று\",\n    monthsTitle: \"மாதங்கள்\",\n    clear: \"நீக்கு\",\n    weekStart: 1,\n    format: \"dd/mm/yyyy\"\n  };\n}());\n"
  },
  {
    "path": "static/assets/vendor/vanillajs-datepicker/dist/js/locales/tg.js",
    "content": "/**\n * Tajik (cyrillic) translation for bootstrap-datepicker\n * Bakhtiyor Bahritidinov <i@bakhtiyor.tj>\n * Orif N. Jr. <orif.zade@gmail.com>\n */\n(function () {\n  Datepicker.locales.tg = {\n    days: [\"Якшанбе\", \"Душанбе\", \"Сешанбе\", \"Чоршанбе\", \"Панҷшанбе\", \"Ҷумъа\", \"Шанбе\"],\n    daysShort: [\"Яшб\", \"Дшб\", \"Сшб\", \"Чшб\", \"Пшб\", \"Ҷум\", \"Шнб\"],\n    daysMin: [\"Яш\", \"Дш\", \"Сш\", \"Чш\", \"Пш\", \"Ҷм\", \"Шб\"],\n    months: [\"Январ\", \"Феврал\", \"Март\", \"Апрел\", \"Май\", \"Июн\", \"Июл\", \"Август\", \"Сентябр\", \"Октябр\", \"Ноябр\", \"Декабр\"],\n    monthsShort: [\"Янв\", \"Фев\", \"Мар\", \"Апр\", \"Май\", \"Июн\", \"Июл\", \"Авг\", \"Сен\", \"Окт\", \"Ноя\", \"Дек\"],\n    today: \"Имрӯз\",\n    monthsTitle: \"Моҳҳо\",\n    clear: \"Тоза намудан\",\n    weekStart: 1,\n    format: \"dd.mm.yyyy\"\n  };\n}());\n"
  },
  {
    "path": "static/assets/vendor/vanillajs-datepicker/dist/js/locales/th.js",
    "content": "/**\n * Thai translation for bootstrap-datepicker\n * Suchau Jiraprapot <seroz24@gmail.com>\n */\n(function () {\n  Datepicker.locales.th = {\n    days: [\"อาทิตย์\", \"จันทร์\", \"อังคาร\", \"พุธ\", \"พฤหัส\", \"ศุกร์\", \"เสาร์\", \"อาทิตย์\"],\n    daysShort: [\"อา\", \"จ\", \"อ\", \"พ\", \"พฤ\", \"ศ\", \"ส\", \"อา\"],\n    daysMin: [\"อา\", \"จ\", \"อ\", \"พ\", \"พฤ\", \"ศ\", \"ส\", \"อา\"],\n    months: [\"มกราคม\", \"กุมภาพันธ์\", \"มีนาคม\", \"เมษายน\", \"พฤษภาคม\", \"มิถุนายน\", \"กรกฎาคม\", \"สิงหาคม\", \"กันยายน\", \"ตุลาคม\", \"พฤศจิกายน\", \"ธันวาคม\"],\n    monthsShort: [\"ม.ค.\", \"ก.พ.\", \"มี.ค.\", \"เม.ย.\", \"พ.ค.\", \"มิ.ย.\", \"ก.ค.\", \"ส.ค.\", \"ก.ย.\", \"ต.ค.\", \"พ.ย.\", \"ธ.ค.\"],\n    today: \"วันนี้\"\n  };\n}());\n"
  },
  {
    "path": "static/assets/vendor/vanillajs-datepicker/dist/js/locales/tk.js",
    "content": "/**\n * Turkmen translation for bootstrap-datepicker\n * N'Bayramberdiyev <nbayramberdiyev@outlook.com>\n */\n(function () {\n  Datepicker.locales.tk = {\n    days: [\"Ýekşenbe\", \"Duşenbe\", \"Sişenbe\", \"Çarşenbe\", \"Penşenbe\", \"Anna\", \"Şenbe\"],\n    daysShort: [\"Ýek\", \"Duş\", \"Siş\", \"Çar\", \"Pen\", \"Ann\", \"Şen\"],\n    daysMin: [\"Ýe\", \"Du\", \"Si\", \"Ça\", \"Pe\", \"An\", \"Şe\"],\n    months: [\"Ýanwar\", \"Fewral\", \"Mart\", \"Aprel\", \"Maý\", \"Iýun\", \"Iýul\", \"Awgust\", \"Sentýabr\", \"Oktýabr\", \"Noýabr\", \"Dekabr\"],\n    monthsShort: [\"Ýan\", \"Few\", \"Mar\", \"Apr\", \"Maý\", \"Iýn\", \"Iýl\", \"Awg\", \"Sen\", \"Okt\", \"Noý\", \"Dek\"],\n    today: \"Bu gün\",\n    monthsTitle: \"Aýlar\",\n    clear: \"Aýyr\",\n    weekStart: 1,\n    format: \"dd.mm.yyyy\"\n  };\n}());\n"
  },
  {
    "path": "static/assets/vendor/vanillajs-datepicker/dist/js/locales/tr.js",
    "content": "/**\n * Turkish translation for bootstrap-datepicker\n * Serkan Algur <kaisercrazy_2@hotmail.com>\n */\n(function () {\n  Datepicker.locales.tr = {\n    days: [\"Pazar\", \"Pazartesi\", \"Salı\", \"Çarşamba\", \"Perşembe\", \"Cuma\", \"Cumartesi\"],\n    daysShort: [\"Pz\", \"Pzt\", \"Sal\", \"Çrş\", \"Prş\", \"Cu\", \"Cts\"],\n    daysMin: [\"Pz\", \"Pzt\", \"Sa\", \"Çr\", \"Pr\", \"Cu\", \"Ct\"],\n    months: [\"Ocak\", \"Şubat\", \"Mart\", \"Nisan\", \"Mayıs\", \"Haziran\", \"Temmuz\", \"Ağustos\", \"Eylül\", \"Ekim\", \"Kasım\", \"Aralık\"],\n    monthsShort: [\"Oca\", \"Şub\", \"Mar\", \"Nis\", \"May\", \"Haz\", \"Tem\", \"Ağu\", \"Eyl\", \"Eki\", \"Kas\", \"Ara\"],\n    today: \"Bugün\",\n    clear: \"Temizle\",\n    weekStart: 1,\n    format: \"dd.mm.yyyy\"\n  };\n}());\n"
  },
  {
    "path": "static/assets/vendor/vanillajs-datepicker/dist/js/locales/uk.js",
    "content": "/**\n * Ukrainian translation for bootstrap-datepicker\n * Igor Polynets\n */\n(function () {\n  Datepicker.locales.uk = {\n    days: [\"Неділя\", \"Понеділок\", \"Вівторок\", \"Середа\", \"Четвер\", \"П'ятниця\", \"Субота\"],\n    daysShort: [\"Нед\", \"Пнд\", \"Втр\", \"Срд\", \"Чтв\", \"Птн\", \"Суб\"],\n    daysMin: [\"Нд\", \"Пн\", \"Вт\", \"Ср\", \"Чт\", \"Пт\", \"Сб\"],\n    months: [\"Cічень\", \"Лютий\", \"Березень\", \"Квітень\", \"Травень\", \"Червень\", \"Липень\", \"Серпень\", \"Вересень\", \"Жовтень\", \"Листопад\", \"Грудень\"],\n    monthsShort: [\"Січ\", \"Лют\", \"Бер\", \"Кві\", \"Тра\", \"Чер\", \"Лип\", \"Сер\", \"Вер\", \"Жов\", \"Лис\", \"Гру\"],\n    today: \"Сьогодні\",\n    clear: \"Очистити\",\n    format: \"dd.mm.yyyy\",\n    weekStart: 1\n  };\n}());\n"
  },
  {
    "path": "static/assets/vendor/vanillajs-datepicker/dist/js/locales/uz-cyrl.js",
    "content": "/**\n * Uzbek cyrillic translation for bootstrap-datepicker\n * Kakhramonov Javlonbek <kakjavlon@gmail.com>\n */\n(function () {\n  Datepicker.locales['uz-cyrl'] = {\n    days: [\"Якшанба\", \"Душанба\", \"Сешанба\", \"Чоршанба\", \"Пайшанба\", \"Жума\", \"Шанба\"],\n    daysShort: [\"Якш\", \"Ду\", \"Се\", \"Чор\", \"Пай\", \"Жу\", \"Ша\"],\n    daysMin: [\"Як\", \"Ду\", \"Се\", \"Чо\", \"Па\", \"Жу\", \"Ша\"],\n    months: [\"Январь\",\"Февраль\",\"Март\",\"Апрель\",\"Май\",\"Июнь\",\"Июль\",\"Август\",\"Сентябрь\",\"Октябрь\",\"Ноябрь\",\"Декабрь\"],\n    monthsShort: [\"Янв\",\"Фев\",\"Мар\",\"Апр\",\"Май\",\"Июн\",\"Июл\",\"Авг\",\"Сен\",\"Окт\",\"Ноя\",\"Дек\"],\n    today: \"Бугун\",\n    clear: \"Ўчириш\",\n    format: \"dd.mm.yyyy\",\n    weekStart: 1,\n    monthsTitle: 'Ойлар'\n  };\n}());\n"
  },
  {
    "path": "static/assets/vendor/vanillajs-datepicker/dist/js/locales/uz-latn.js",
    "content": "/**\n * Uzbek latin translation for bootstrap-datepicker\n * Kakhramonov Javlonbek <kakjavlon@gmail.com>\n */\n(function () {\n  Datepicker.locales['uz-latn'] = {\n    days: [\"Yakshanba\", \"Dushanba\", \"Seshanba\", \"Chorshanba\", \"Payshanba\", \"Juma\", \"Shanba\"],\n    daysShort: [\"Yak\", \"Du\", \"Se\", \"Chor\", \"Pay\", \"Ju\", \"Sha\"],\n    daysMin: [\"Ya\", \"Du\", \"Se\", \"Cho\", \"Pa\", \"Ju\", \"Sha\"],\n    months: [\"Yanvar\", \"Fevral\", \"Mart\", \"Aprel\", \"May\", \"Iyun\", \"Iyul\", \"Avgust\", \"Sentabr\", \"Oktabr\", \"Noyabr\", \"Dekabr\"],\n    monthsShort: [\"Yan\", \"Fev\", \"Mar\", \"Apr\", \"May\", \"Iyn\", \"Iyl\", \"Avg\", \"Sen\", \"Okt\", \"Noy\", \"Dek\"],\n    today: \"Bugun\",\n    clear: \"O'chirish\",\n    format: \"dd.mm.yyyy\",\n    weekStart: 1,\n    monthsTitle: 'Oylar'\n  };\n}());\n"
  },
  {
    "path": "static/assets/vendor/vanillajs-datepicker/dist/js/locales/vi.js",
    "content": "/**\n * Vietnamese translation for bootstrap-datepicker\n * An Vo <https: //github.com/anvoz/>\n */\n(function () {\n  Datepicker.locales.vi = {\n    days: [\"Chủ nhật\", \"Thứ hai\", \"Thứ ba\", \"Thứ tư\", \"Thứ năm\", \"Thứ sáu\", \"Thứ bảy\"],\n    daysShort: [\"CN\", \"Thứ 2\", \"Thứ 3\", \"Thứ 4\", \"Thứ 5\", \"Thứ 6\", \"Thứ 7\"],\n    daysMin: [\"CN\", \"T2\", \"T3\", \"T4\", \"T5\", \"T6\", \"T7\"],\n    months: [\"Tháng 1\", \"Tháng 2\", \"Tháng 3\", \"Tháng 4\", \"Tháng 5\", \"Tháng 6\", \"Tháng 7\", \"Tháng 8\", \"Tháng 9\", \"Tháng 10\", \"Tháng 11\", \"Tháng 12\"],\n    monthsShort: [\"Th1\", \"Th2\", \"Th3\", \"Th4\", \"Th5\", \"Th6\", \"Th7\", \"Th8\", \"Th9\", \"Th10\", \"Th11\", \"Th12\"],\n    today: \"Hôm nay\",\n    clear: \"Xóa\",\n    format: \"dd/mm/yyyy\"\n  };\n}());\n"
  },
  {
    "path": "static/assets/vendor/vanillajs-datepicker/dist/js/locales/zh-CN.js",
    "content": "/**\n * Simplified Chinese translation for bootstrap-datepicker\n * Yuan Cheung <advanimal@gmail.com>\n */\n(function () {\n  Datepicker.locales['zh-CN'] = {\n    days: [\"星期日\", \"星期一\", \"星期二\", \"星期三\", \"星期四\", \"星期五\", \"星期六\"],\n    daysShort: [\"周日\", \"周一\", \"周二\", \"周三\", \"周四\", \"周五\", \"周六\"],\n    daysMin: [\"日\", \"一\", \"二\", \"三\", \"四\", \"五\", \"六\"],\n    months: [\"一月\", \"二月\", \"三月\", \"四月\", \"五月\", \"六月\", \"七月\", \"八月\", \"九月\", \"十月\", \"十一月\", \"十二月\"],\n    monthsShort: [\"1月\", \"2月\", \"3月\", \"4月\", \"5月\", \"6月\", \"7月\", \"8月\", \"9月\", \"10月\", \"11月\", \"12月\"],\n    today: \"今天\",\n    monthsTitle: \"选择月份\",\n    clear: \"清除\",\n    format: \"yyyy-mm-dd\",\n    titleFormat: \"y年mm月\",\n    weekStart: 1\n  };\n}());\n"
  },
  {
    "path": "static/assets/vendor/vanillajs-datepicker/dist/js/locales/zh-TW.js",
    "content": "/**\n * Traditional Chinese translation for bootstrap-datepicker\n * Rung-Sheng Jang <daniel@i-trend.co.cc>\n * FrankWu  <frankwu100@gmail.com> Fix more appropriate use of Traditional Chinese habit\n */\n(function () {\n  Datepicker.locales['zh-TW'] = {\n    days: [\"星期日\", \"星期一\", \"星期二\", \"星期三\", \"星期四\", \"星期五\", \"星期六\"],\n    daysShort: [\"週日\", \"週一\", \"週二\", \"週三\", \"週四\", \"週五\", \"週六\"],\n    daysMin: [\"日\", \"一\", \"二\", \"三\", \"四\", \"五\", \"六\"],\n    months: [\"一月\", \"二月\", \"三月\", \"四月\", \"五月\", \"六月\", \"七月\", \"八月\", \"九月\", \"十月\", \"十一月\", \"十二月\"],\n    monthsShort: [\"1月\", \"2月\", \"3月\", \"4月\", \"5月\", \"6月\", \"7月\", \"8月\", \"9月\", \"10月\", \"11月\", \"12月\"],\n    today: \"今天\",\n    format: \"yyyy年mm月dd日\",\n    weekStart: 1,\n    clear: \"清除\"\n  };\n}());\n"
  },
  {
    "path": "static/assets/vendor/waypoints/lib/waypoints.debug.js",
    "content": "/*!\nWaypoints Debug - 4.0.1\nCopyright © 2011-2016 Caleb Troughton\nLicensed under the MIT license.\nhttps://github.com/imakewebthings/waypoints/blob/master/licenses.txt\n*/\n(function() {\n  'use strict'\n\n  var displayNoneMessage = [\n    'You have a Waypoint element with display none. For more information on ',\n    'why this is a bad idea read ',\n    'http://imakewebthings.com/waypoints/guides/debugging/#display-none'\n  ].join('')\n  var fixedMessage = [\n    'You have a Waypoint element with fixed positioning. For more ',\n    'information on why this is a bad idea read ',\n    'http://imakewebthings.com/waypoints/guides/debugging/#fixed-position'\n  ].join('')\n\n  function checkWaypointStyles() {\n    var originalRefresh = window.Waypoint.Context.prototype.refresh\n\n    window.Waypoint.Context.prototype.refresh = function() {\n      for (var axis in this.waypoints) {\n        for (var key in this.waypoints[axis]) {\n          var waypoint = this.waypoints[axis][key]\n          var style = window.getComputedStyle(waypoint.element)\n          if (!waypoint.enabled) {\n            continue\n          }\n          if (style && style.display === 'none') {\n            console.error(displayNoneMessage)\n          }\n          if (style && style.position === 'fixed') {\n            console.error(fixedMessage)\n          }\n        }\n      }\n      return originalRefresh.call(this)\n    }\n  }\n\n  checkWaypointStyles()\n}())\n;"
  },
  {
    "path": "static/assets/vendor/waypoints/licenses.txt",
    "content": "Copyright (c) 2011-2012 Caleb Troughton\n\n-----------------------------------------------------------------------\n\nThe MIT License\n\nPermission is hereby granted, free of charge, to any person obtaining a copy\nof this software and associated documentation files (the \"Software\"), to deal\nin the Software without restriction, including without limitation the rights\nto use, copy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the Software is\nfurnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in\nall copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\nIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\nFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\nAUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\nLIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\nOUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\nTHE SOFTWARE."
  },
  {
    "path": "static/assets/vendor/waypoints/testem.json",
    "content": "{\n  \"framework\": \"jasmine\",\n  \"launch_in_dev\": [\n    \"PhantomJS\"\n  ],\n  \"launch_in_ci\": [\n    \"PhantomJS\"\n  ],\n  \"src_files\": [\n    \"bower_components/jquery/dist/jquery.js\",\n    \"bower_components/jasmine-jquery/lib/jasmine-jquery.js\",\n    \"bower_components/zepto/zepto.js\",\n\n    \"src/waypoint.js\",\n    \"src/context.js\",\n    \"src/group.js\",\n    \"src/debug.js\",\n    \"src/adapters/*.js\",\n    \"src/shortcuts/*.js\",\n\n    \"test/settings.js\",\n    \"test/*-spec.js\"\n  ]\n}\n"
  },
  {
    "path": "templates/.gitkeep",
    "content": ""
  },
  {
    "path": "templates/accounts/login.html",
    "content": "{% extends \"layouts/base-fullscreen.html\" %}\n\n{% block title %} Sign IN {% endblock %} \n\n<!-- Specific Page CSS goes HERE  -->\n{% block stylesheets %}{% endblock stylesheets %}\n\n{% block content %}\n\n    <main>\n        <section class=\"vh-lg-100 mt-5 mt-lg-0 bg-soft d-flex align-items-center\">\n            <div class=\"container\">\n                <p class=\"text-center\">\n                    Open-source Flask Dashboard\n                </p>\n                <div class=\"row justify-content-center form-bg-image\" data-background-lg=\"{{ url_for('static', filename='assets/img/illustrations/signin.svg') }}\">\n                    <div class=\"col-12 d-flex align-items-center justify-content-center\">\n                        <div class=\"bg-white shadow border-0 rounded border-light p-4 p-lg-5 w-100 fmxw-500\">\n                            <div class=\"text-center text-md-center mb-4 mt-md-0\">\n                                <h1 class=\"mb-0 h3\">\n                                    Flask Volt - Sign IN\n                                </h1>\n                                <br />\n                                <p>\n                                    {% if msg %}\n                                        <span class=\"text-danger\">{{ msg | safe }}</span>\n                                    {% else %}\n                                        Add your credentials\n                                    {% endif %}                                     \n                                </p> \n                            </div>\n                            <form method=\"post\" action=\"\" class=\"mt-4\">\n                                \n                                {{ form.hidden_tag() }}\n\n                                <!-- Form -->\n                                <div class=\"form-group mb-4\">\n                                    <label for=\"email\">Username</label>\n                                    <div class=\"input-group\">\n                                        <span class=\"input-group-text\" id=\"basic-addon1\">\n                                            <span class=\"fas fa-user-circle\"></span>\n                                        </span>\n                                        {{ form.username(placeholder=\"Username\", class=\"form-control\") }}\n                                    </div>  \n                                </div>\n                                <!-- End of Form -->\n                                <div class=\"form-group\">\n                                    <!-- Form -->\n                                    <div class=\"form-group mb-4\">\n                                        <label for=\"password\">Your Password</label>\n                                        <div class=\"input-group\">\n                                            <span class=\"input-group-text\" id=\"basic-addon2\">\n                                                <span class=\"fas fa-unlock-alt\"></span>\n                                            </span>\n                                            {{ form.password(placeholder=\"Password\", class=\"form-control\", type=\"password\") }}\n                                        </div>  \n                                    </div>\n                                    <!-- End of Form -->\n                                    <div class=\"d-flex justify-content-between align-items-top mb-4\">\n                                        <div class=\"form-check\">\n                                            <input class=\"form-check-input\" type=\"checkbox\" value=\"\" id=\"remember\">\n                                            <label class=\"form-check-label mb-0\" for=\"remember\">\n                                              Remember me\n                                            </label>\n                                        </div>\n                                        <div>\n                                            <a href=\"{{ url_for('authentication_blueprint.register') }}\" class=\"fw-bold text-right\">Register</a>\n                                        </div>\n                                    </div>\n                                </div>\n                                <div class=\"d-grid\">\n                                    <button type=\"submit\" name=\"login\" class=\"btn btn-gray-800\">Sign IN</button>\n                                </div>\n                            </form>\n                            <br />\n                            \n                            {% if has_github or has_google %}\n                                <div class=\"mt-3 mb-4 text-center\">\n                                    <span class=\"fw-normal\">\n                                        Or login with\n                                    </span>\n                                </div>\n                                <div class=\"d-flex justify-content-center my-4 gap-2\">\n                                    {% if has_github %}\n                                    <a href=\"{{url_for('authentication_blueprint.login_github')}}\" \n                                        class=\"btn btn-pill btn-outline-gray-500\" aria-label=\"github button\" title=\"github button\">\n                                        <svg class=\"icon icon-xxs\" aria-hidden=\"true\" focusable=\"false\" data-prefix=\"fab\" data-icon=\"github\" role=\"img\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 496 512\"><path fill=\"currentColor\" d=\"M165.9 397.4c0 2-2.3 3.6-5.2 3.6-3.3.3-5.6-1.3-5.6-3.6 0-2 2.3-3.6 5.2-3.6 3-.3 5.6 1.3 5.6 3.6zm-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9 2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5.3-6.2 2.3zm44.2-1.7c-2.9.7-4.9 2.6-4.6 4.9.3 2 2.9 3.3 5.9 2.6 2.9-.7 4.9-2.6 4.6-4.6-.3-1.9-3-3.2-5.9-2.9zM244.8 8C106.1 8 0 113.3 0 252c0 110.9 69.8 205.8 169.5 239.2 12.8 2.3 17.3-5.6 17.3-12.1 0-6.2-.3-40.4-.3-61.4 0 0-70 15-84.7-29.8 0 0-11.4-29.1-27.8-36.6 0 0-22.9-15.7 1.6-15.4 0 0 24.9 2 38.6 25.8 21.9 38.6 58.6 27.5 72.9 20.9 2.3-16 8.8-27.1 16-33.7-55.9-6.2-112.3-14.3-112.3-110.5 0-27.5 7.6-41.3 23.6-58.9-2.6-6.5-11.1-33.3 2.6-67.9 20.9-6.5 69 27 69 27 20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27 13.7 34.7 5.2 61.4 2.6 67.9 16 17.7 25.8 31.5 25.8 58.9 0 96.5-58.9 104.2-114.8 110.5 9.2 7.9 17 22.9 17 46.4 0 33.7-.3 75.4-.3 83.6 0 6.5 4.6 14.4 17.3 12.1C428.2 457.8 496 362.9 496 252 496 113.3 383.5 8 244.8 8zM97.2 352.9c-1.3 1-1 3.3.7 5.2 1.6 1.6 3.9 2.3 5.2 1 1.3-1 1-3.3-.7-5.2-1.6-1.6-3.9-2.3-5.2-1zm-10.8-8.1c-.7 1.3.3 2.9 2.3 3.9 1.6 1 3.6.7 4.3-.7.7-1.3-.3-2.9-2.3-3.9-2-.6-3.6-.3-4.3.7zm32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2 2.3 2.3 5.2 2.6 6.5 1 1.3-1.3.7-4.3-1.3-6.2-2.2-2.3-5.2-2.6-6.5-1zm-11.4-14.7c-1.6 1-1.6 3.6 0 5.9 1.6 2.3 4.3 3.3 5.6 2.3 1.6-1.3 1.6-3.9 0-6.2-1.4-2.3-4-3.3-5.6-2z\"></path></svg>\n                                    </a>\n                                    {% endif %}\n                                    {% if has_google %}\n                                    <a href=\"{{url_for('authentication_blueprint.login_google')}}\" \n                                        class=\"btn btn-pill btn-outline-gray-500\" aria-label=\"github button\" title=\"github button\">\n                                        <svg class=\"icon icon-xxs\" aria-hidden=\"true\" xmlns=\"http://www.w3.org/2000/svg\" fill=\"currentColor\" viewBox=\"0 0 24 24\">\n                                            <path fill-rule=\"evenodd\" d=\"M12.037 21.998a10.313 10.313 0 0 1-7.168-3.049 9.888 9.888 0 0 1-2.868-7.118 9.947 9.947 0 0 1 3.064-6.949A10.37 10.37 0 0 1 12.212 2h.176a9.935 9.935 0 0 1 6.614 2.564L16.457 6.88a6.187 6.187 0 0 0-4.131-1.566 6.9 6.9 0 0 0-4.794 1.913 6.618 6.618 0 0 0-2.045 4.657 6.608 6.608 0 0 0 1.882 4.723 6.891 6.891 0 0 0 4.725 2.07h.143c1.41.072 2.8-.354 3.917-1.2a5.77 5.77 0 0 0 2.172-3.41l.043-.117H12.22v-3.41h9.678c.075.617.109 1.238.1 1.859-.099 5.741-4.017 9.6-9.746 9.6l-.215-.002Z\" clip-rule=\"evenodd\"/>\n                                        </svg>                                          \n                                    </a>\n                                    {% endif %}\n                                </div>\n                            {% endif %}    \n\n                        </div>\n                    </div>\n                </div>\n            </div>\n        </section>\n    </main>\n\n{% endblock content %}\n\n<!-- Specific Page JS goes HERE  -->\n{% block javascripts %}{% endblock javascripts %}\n"
  },
  {
    "path": "templates/accounts/register.html",
    "content": "{% extends \"layouts/base-fullscreen.html\" %}\n\n{% block title %} Sign UP {% endblock %} \n\n<!-- Specific Page CSS goes HERE  -->\n{% block stylesheets %}{% endblock stylesheets %}\n\n{% block content %}\n\n    <main>\n        <section class=\"vh-lg-100 mt-5 mt-lg-0 bg-soft d-flex align-items-center\">\n            <div class=\"container\">\n                <p class=\"text-center\">\n                    Open-source Flask Dashboard\n                </p>\n                <div class=\"row justify-content-center form-bg-image\" data-background-lg=\"{{ url_for('static', filename='assets/img/illustrations/signin.svg') }}\">\n                    <div class=\"col-12 d-flex align-items-center justify-content-center\">\n                        <div class=\"bg-white shadow border-0 rounded border-light p-4 p-lg-5 w-100 fmxw-500\">\n                            <div class=\"text-center text-md-center mb-4 mt-md-0\">\n                                <h1 class=\"mb-0 h3\">\n                                    Flask Volt - Sign UP\n                                </h1>\n                                <br />\n                                <p>\n                                    {% if msg %}\n                                        {{ msg | safe }}\n                                    {% else %}\n                                        Add your credentials\n                                    {% endif %}                                     \n                                </p> \n                            </div>\n                            \n                            {% if success %}\n\n                                <div class=\"d-grid\">\n                                    <a href=\"{{ url_for('authentication_blueprint.login') }}\" \n                                       class=\"btn btn-gray-800\">Sign IN</a>\n                                </div>\n\n                            {% else %}\n\n                                <form method=\"post\" action=\"\" class=\"mt-4\">\n                                    \n                                    {{ form.hidden_tag() }}\n\n                                    <div class=\"form-group mb-4\">\n                                        <label for=\"email\">Username</label>\n                                        <div class=\"input-group\">\n                                            <span class=\"input-group-text\" id=\"basic-addon1\">\n                                                <span class=\"fas fa-user-circle\"></span>\n                                            </span>\n                                            {{ form.username(placeholder=\"Username\", class=\"form-control\") }}\n                                        </div>  \n                                    </div>\n\n                                    <!-- Form -->\n                                    <div class=\"form-group mb-4\">\n                                        <label for=\"email\">Your Email</label>\n                                        <div class=\"input-group\">\n                                            <span class=\"input-group-text\" id=\"basic-addon1\">\n                                                <span class=\"fas fa-envelope\"></span>\n                                            </span>\n                                            {{ form.email(placeholder=\"Email\", class=\"input form-control\", type=\"email\") }}\n                                        </div>  \n                                    </div>\n                                    <!-- End of Form -->\n                                    <div class=\"form-group\">\n                                        <!-- Form -->\n                                        <div class=\"form-group mb-4\">\n                                            <label for=\"password\">Your Password</label>\n                                            <div class=\"input-group\">\n                                                <span class=\"input-group-text\" id=\"basic-addon2\">\n                                                    <span class=\"fas fa-unlock-alt\"></span>\n                                                </span>\n                                                {{ form.password(placeholder=\"Password\", class=\"form-control\", type=\"password\") }}\n                                            </div>  \n                                        </div>\n                                        <!-- End of Form -->\n                                        <div class=\"mb-4\">\n                                            <div class=\"form-check\">\n                                                <input class=\"form-check-input\" type=\"checkbox\" value=\"\" id=\"remember\">\n                                                <label class=\"form-check-label fw-normal mb-0\" for=\"remember\">\n                                                    I agree to the <a href=\"#\" class=\"fw-bold\">terms and conditions</a>\n                                                </label>\n                                            </div>\n                                        </div>\n                                    </div>\n                                    <div class=\"d-grid\">\n                                        <button type=\"submit\" name=\"register\" class=\"btn btn-gray-800\">Sign UP</button>\n                                    </div>\n                                </form>\n                                <br />\n                                <div class=\"d-flex justify-content-center align-items-center mt-4\">\n                                    <span class=\"fw-normal\">\n                                        Already have an account? \n                                        <a href=\"{{ url_for('authentication_blueprint.login') }}\" class=\"fw-bold\">Sign IN</a>\n                                    </span>\n                                </div>\n                            \n                            {% endif %}\n\n                        </div>\n                    </div>\n                </div>\n            </div>\n        </section>\n    </main>\n\n{% endblock content %}\n\n<!-- Specific Page JS goes HERE  -->\n{% block javascripts %}{% endblock javascripts %}\n"
  },
  {
    "path": "templates/charts/index.html",
    "content": "{% extends \"layouts/base.html\" %}\n\n{% block title %}Charts{% endblock title %}\n\n{% block content %}\n    <!-- [ Main Content ] start -->\n    <div class=\"pc-container\">\n      <div class=\"pc-content\">\n        <div class=\"d-block my-4 mb-md-0\">\n          <nav aria-label=\"breadcrumb\" class=\"d-none d-md-inline-block\">\n            <ol class=\"breadcrumb breadcrumb-dark breadcrumb-transparent\">\n              <li class=\"breadcrumb-item\">\n                <a href=\"{{ url_for('home_blueprint.index') }}\">\n                  <svg class=\"icon icon-xxs\" fill=\"none\" stroke=\"currentColor\" viewBox=\"0 0 24 24\"\n                    xmlns=\"http://www.w3.org/2000/svg\">\n                    <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\"\n                      d=\"M3 12l2-2m0 0l7-7 7 7M5 10v10a1 1 0 001 1h3m10-11l2 2m-2-2v10a1 1 0 01-1 1h-3m-6 0a1 1 0 001-1v-4a1 1 0 011-1h2a1 1 0 011 1v4a1 1 0 001 1m-6 0h6\">\n                    </path>\n                  </svg>\n                </a>\n              </li>\n              <li class=\"breadcrumb-item\">\n                  <a href=\"{{ url_for('charts_blueprint.charts') }}\">Charts</a>\n              </li>\n            </ol>\n          </nav>\n        </div>\n\n        <!-- [ Main Content ] start -->\n        <div class=\"row\">\n          <!-- [ Bar Chart ] start -->\n          <div class=\"col-sm-12 col-md-6\">\n            <div class=\"card\">\n              <div class=\"card-header\">\n                <h5>Bar Chart</h5>\n              </div>\n              <div class=\"card-body text-center\">\n                <div id=\"bar-chart\"></div>\n              </div>\n            </div>\n          </div>\n          <!-- [ Bar Chart ] end -->\n\n          <!-- [ Pie Chart ] start -->\n          <div class=\"col-sm-12 col-md-6\">\n            <div class=\"card\">\n              <div class=\"card-header\">\n                <h5>Pie Chart</h5>\n              </div>\n              <div class=\"card-body text-center\">\n                <div id=\"pie-chart\"></div>\n              </div>\n            </div>\n          </div>\n          <!-- [ Pie Chart ] end -->\n        </div>\n        <!-- [ Main Content ] end -->\n      </div>\n    </div>\n{% endblock content %}\n\n{% block javascripts %}\n<script src=\"https://cdn.jsdelivr.net/npm/apexcharts\"></script>\n<script>\n  document.addEventListener(\"DOMContentLoaded\", function() {\n    var products = JSON.parse('{{ products | tojson | safe }}');\n    var names = products.map(p => p.name);\n    var prices = products.map(p => p.price);\n\n    var barOptions = {\n      chart: { type: 'bar', height: 350 },\n      series: [{ name: 'Price', data: prices }],\n      xaxis: { categories: names }\n    };\n    var barChart = new ApexCharts(document.querySelector(\"#bar-chart\"), barOptions);\n    barChart.render();\n\n    var pieOptions = {\n      chart: { type: 'pie', height: 350 },\n      series: prices,\n      labels: names\n    };\n    var pieChart = new ApexCharts(document.querySelector(\"#pie-chart\"), pieOptions);\n    pieChart.render();\n  });\n</script>\n{% endblock javascripts %}\n"
  },
  {
    "path": "templates/dyn_dt/index.html",
    "content": "{% extends \"layouts/base.html\" %}\n\n{% block title %} Profile {% endblock %} \n\n<!-- Specific CSS goes HERE -->\n{% block stylesheets %}{% endblock stylesheets %}\n\n{% block content %}\n\n<div class=\"pc-container\">\n    <div class=\"pc-content\">\n        <div class=\"d-block my-4 mb-md-0\">\n            <nav aria-label=\"breadcrumb\" class=\"d-none d-md-inline-block\">\n              <ol class=\"breadcrumb breadcrumb-dark breadcrumb-transparent\">\n                <li class=\"breadcrumb-item\">\n                  <a href=\"{{ url_for('home_blueprint.index') }}\">\n                    <svg class=\"icon icon-xxs\" fill=\"none\" stroke=\"currentColor\" viewBox=\"0 0 24 24\"\n                      xmlns=\"http://www.w3.org/2000/svg\">\n                      <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\"\n                        d=\"M3 12l2-2m0 0l7-7 7 7M5 10v10a1 1 0 001 1h3m10-11l2 2m-2-2v10a1 1 0 01-1 1h-3m-6 0a1 1 0 001-1v-4a1 1 0 011-1h2a1 1 0 011 1v4a1 1 0 001 1m-6 0h6\">\n                      </path>\n                    </svg>\n                  </a>\n                </li>\n                <li class=\"breadcrumb-item\">\n                    <a href=\"{{ url_for('table_blueprint.dynamic_dt') }}\">Dynamic DT</a>\n                </li>\n              </ol>\n            </nav>\n        </div>\n\n        <div class=\"row\">\n            <div class=\"col-sm-12\">\n                <div class=\"card\">\n                    <div class=\"card-header\">\n                        <h5>Available Routes (defined in config.DYNAMIC_DATATB)</h5>\n                    </div>\n                    <div class=\"card-block px-4\">\n                        <ul class=\"pc-submenu mt-3\">\n                            {% for link in routes %}\n                                <li class=\"pc-item\">\n                                    <a class=\"pc-link\" href=\"{{ url_for('table_blueprint.model_dt', aPath=link) }}\">{{ link }}</a>\n                                </li>\n                            {% endfor %}\n                        </ul>\n                        \n                    </div>\n                </div>\n            </div>\n        </div>\n    </div>\n</div>\n{% endblock content %}\n\n<!-- Specific Page JS goes HERE  -->\n{% block javascripts %}{% endblock javascripts %}"
  },
  {
    "path": "templates/dyn_dt/model.html",
    "content": "{% extends \"layouts/base.html\" %}\n\n{% block title %} {% if page_title %} {{page_title}} {% else %} Dynamic DataTables {% endif %} {% endblock title %} \n\n{% block stylesheets %}\n\n<style>\n    .hide-show-dropdown {\n        max-height: 350px;\n        overflow-y: scroll;\n    }\n    .page-size .export-csv-img {\n        width: 35px;\n        cursor: pointer;\n    }\n    .export-img {\n        width: 30px;\n    }\n    .modal-header {\n        display: block !important;\n    }\n    .height{\n        height: 40px !important;\n    }\n    .table-row {\n        position: relative;\n    }\n    .action-td {\n        position: absolute;\n        left: 50%;\n        right: 50%;\n        bottom: -10px;\n    }\n    .table-row:hover .data-td {\n        opacity: 0.1;\n    }\n    .table-row:hover .action-td {\n        display: flex !important;\n        gap:3px !important;\n        \n    }\n</style>\n\n{% endblock stylesheets %}\n\n{% block content %}\n<!-- [ Main Content ] start -->\n<div class=\"pc-container\">\n    <div class=\"pc-content\">\n\n        <div class=\"d-block my-4 mb-md-0\">\n            <nav aria-label=\"breadcrumb\" class=\"d-none d-md-inline-block\">\n              <ol class=\"breadcrumb breadcrumb-dark breadcrumb-transparent\">\n                <li class=\"breadcrumb-item\">\n                  <a href=\"/\">\n                    <svg class=\"icon icon-xxs\" fill=\"none\" stroke=\"currentColor\" viewBox=\"0 0 24 24\"\n                      xmlns=\"http://www.w3.org/2000/svg\">\n                      <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\"\n                        d=\"M3 12l2-2m0 0l7-7 7 7M5 10v10a1 1 0 001 1h3m10-11l2 2m-2-2v10a1 1 0 01-1 1h-3m-6 0a1 1 0 001-1v-4a1 1 0 011-1h2a1 1 0 011 1v4a1 1 0 001 1m-6 0h6\">\n                      </path>\n                    </svg>\n                  </a>\n                </li>\n                <li class=\"breadcrumb-item\"><a href=\"{{ url_for('table_blueprint.dynamic_dt') }}\">Dynamic DT</a></li>\n                <li class=\"breadcrumb-item active\" aria-current=\"page\">\n                    <a href=\"{{ url_for('table_blueprint.model_dt', aPath=link) }}\">{{ link|upper }}</a>\n                </li>\n              </ol>\n            </nav>\n        </div>\n\n        <div class=\"row\">\n            <!-- [ Typography ] start -->\n            <div class=\"col-sm-12\">\n                <div class=\"card\">\n                    <div class=\"card-body\">\n\n\n                        <div class=\"d-flex justify-content-between my-4\">\n                            <form class=\"search\">\n                                <div class=\"d-flex gap-2 align-items-center\">\n                                    <div class=\"mr-3\">\n                                        <input type=\"text\" placeholder=\"Search for items\" name=\"search\" id=\"\" class=\"form-control\">\n                                    </div>\n                                    <button type=\"submit\" class=\"btn btn-primary\">\n                                        <svg class=\"icon icon-xs\" x-description=\"Heroicon name: solid/search\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 20 20\" fill=\"currentColor\" aria-hidden=\"true\">\n                                            <path fill-rule=\"evenodd\" d=\"M8 4a4 4 0 100 8 4 4 0 000-8zM2 8a6 6 0 1110.89 3.476l4.817 4.817a1 1 0 01-1.414 1.414l-4.816-4.816A6 6 0 012 8z\" clip-rule=\"evenodd\"></path>\n                                        </svg>\n                                    </button>\n                                </div>\n                            </form>\n                            <div class=\"\">\n                                <form method=\"post\">\n                                    <div class=\"dropdown\">\n                                        <button class=\"btn btn-secondary dropdown-toggle\" type=\"button\" data-bs-toggle=\"dropdown\" aria-expanded=\"false\">\n                                            Hide / Show Column\n                                        </button>\n                                        <ul id=\"dropdownDefaultCheckbox\" class=\"dropdown-menu hide-show-dropdown px-3\">\n                                            {% for field_name in field_names %}\n                                                <li>\n                                                    <div class=\"form-check mb-2\">\n                                                        <input class=\"form-check-input\"\n                                                               {% if field_name.value %} checked {% endif %}\n                                                               type=\"checkbox\"\n                                                               data-bs-target=\"{{ field_name.key }}\"\n                                                               value=\"\"\n                                                               id=\"checkbox-item-{{ field_name.id }}\">\n                                                        <label class=\"form-check-label\" for=\"checkbox-item-{{ field_name.id }}\">\n                                                            {{ field_name.key }}\n                                                        </label>\n                                                    </div>\n                                                </li>\n                                            {% endfor %}\n                                        </ul>\n                                    </div>    \n                                </form>\n                            </div>\n                            <div class=\"page-size form-group\">\n                                <div class=\"d-flex gap-2\">\n                                    <form method=\"post\" class=\"\">\n                                        <select onchange=\"getPageItems(this)\" name=\"\" id=\"\" class=\"form-select\">\n                                            <option {% if page_items == 5 %} selected {% endif %} value=\"5\">5 Items</option>\n                                            <option {% if page_items == 10 %} selected {% endif %} value=\"10\">10 Items</option>\n                                            <option {% if page_items == 15 %} selected {% endif %} value=\"15\">15 Items</option>\n                                            <option {% if page_items == 25 %} selected {% endif %} value=\"25\">25 Items</option>\n                                            <option {% if page_items == 50 %} selected {% endif %} value=\"50\">50 Items</option>\n                                            <option {% if page_items == 100 %} selected {% endif %} value=\"100\">100 Items</option>\n                                        </select>\n                                    </form>\n                                    <div class=\"d-flex \">\n                                        <a data-bs-toggle=\"modal\" data-bs-target=\"#exportCSV\">\n                                            <img class=\"export-csv-img\" style=\"width: 40px\" src=\"{{ url_for('static', filename=\"assets/img/csv.png\") }}\" alt=\"img\">\n                                        </a>\n                                    </div>\n                                    {% if current_user.is_authenticated %}\n                                    <div>\n                                        <button data-bs-toggle=\"modal\" data-bs-target=\"#addSales\" type=\"button\" class=\"btn btn-primary p-0 px-3 py-2 \">\n                                            Add\n                                        </button>\n                                    </div>\n                                    {% endif %}\n                                </div>\n                            </div>\n                        </div>\n\n                        <div>\n                            <form action=\"{{ url_for('table_blueprint.create_filter', model_name=link) }}\" method=\"post\">\n                    \n                                <div class=\"d-flex align-items-center gap-3 mb-3\">\n                                    <h3 class=\"\">Filters</h3>\n                                    <button id=\"addButton\" type=\"button\" class=\"btn btn-primary\">Add</button>\n                                </div>\n\n                                <div class=\"mb-3\" id=\"inputContainer\">\n                                    {% if filter_instance %}\n                                        {% for filter_data in filter_instance %}\n                                        <div class=\"d-flex gap-3 mb-3\">\n                                            <div class=\"d-flex gap-2\">\n                                                <select name=\"key\" id=\"\" class=\"form-select w-50\">\n\n                                                    {% for field in db_field_names %}\n                                                        <option {% if filter_data.key == field %}selected{% endif %} value=\"{{ field }}\">{{ field }}</option>\n                                                    {% endfor %}\n                                                </select>\n                                                <input type=\"text\" value=\"{{ filter_data.value }}\" placeholder=\"Enter value\" name=\"value\" id=\"\" class=\"form-control\">\n                                            </div>\n                                            <a href=\"{{ url_for('table_blueprint.delete_filter', model_name=link, id=filter_data.id) }}\" class=\"remove-button btn btn-danger\">X</a>\n                                        </div>\n                                        {% endfor %}\n                                    {% endif %}\n                                </div>\n                                <button id=\"submitButton\" type=\"submit\" {% if not filter_instance %} style=\"display: none;\" {% endif %} class=\"btn btn-success\">Submit</button>\n                            </form>\n\n\n\n                            <div class=\"card-body\">\n                                <div class=\"dt-responsive table-responsive\">\n                                    <table class=\"table\">\n                                        <thead>\n                                        <tr>\n                                            {% for field in db_field_names %}\n                                                <th id=\"th_{{ field }}\" scope=\"col\">{{ field }}</th>\n                                            {% endfor %}\n                                        </tr>\n                                        </thead>\n                                        <tbody>\n                                            {% for item in items %}\n                                            <tr class=\"align-middle table-row\">\n                                                {% for field_name in db_field_names %}\n                                                    {% if field_name in choices_dict %}\n                                                    <td class=\"td_{{ field_name }} data-td\">{{ item|getenumattribute(field_name) }}</td>\n                                                    {% else %}\n                                                    <td class=\"td_{{ field_name }} data-td\">{{ item|getattribute(field_name) }}</td>\n                                                    {% endif %}\n                                                {% endfor %}\n                    \n                                                {% if current_user.is_authenticated %}\n                                                <td class=\"d-none action-td\" >\n                                                    <a data-bs-toggle=\"modal\" data-bs-target=\"#editSales-{{item.id}}\" class=\"btn btn-primary btn-sm p-2\" href=\"#\">\n                                                        <svg class=\"icon icon-xs\" aria-hidden=\"true\" xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\">\n                                                            <path stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"m14.304 4.844 2.852 2.852M7 7H4a1 1 0 0 0-1 1v10a1 1 0 0 0 1 1h11a1 1 0 0 0 1-1v-4.5m2.409-9.91a2.017 2.017 0 0 1 0 2.853l-6.844 6.844L8 14l.713-3.565 6.844-6.844a2.015 2.015 0 0 1 2.852 0Z\"/>\n                                                        </svg>                                                          \n                                                    </a>\n                                                    <a data-bs-toggle=\"modal\" data-bs-target=\"#deleteSales-{{item.id}}\" class=\"btn btn-danger btn-sm p-2\" href=\"#\">\n                                                        <svg class=\"icon icon-xs\" aria-hidden=\"true\" xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\">\n                                                            <path stroke=\"currentColor\" stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M5 7h14m-9 3v8m4-8v8M10 3h4a1 1 0 0 1 1 1v3H9V4a1 1 0 0 1 1-1ZM6 7h12v13a1 1 0 0 1-1 1H7a1 1 0 0 1-1-1V7Z\"/>\n                                                        </svg>                                                          \n                                                    </a>\n                                                </td>\n                                                {% else %}\n                                                <td class=\"d-none action-td\">\n                                                    <a data-bs-toggle=\"modal\" data-bs-target=\"#viewSales-{{item.id}}\" class=\"btn btn-primary btn-sm p-2\" href=\"#\">\n                                                        <svg class=\"icon icon-xs\" aria-hidden=\"true\" xmlns=\"http://www.w3.org/2000/svg\" fill=\"none\" viewBox=\"0 0 24 24\">\n                                                            <path stroke=\"currentColor\" stroke-width=\"2\" d=\"M21 12c0 1.2-4.03 6-9 6s-9-4.8-9-6c0-1.2 4.03-6 9-6s9 4.8 9 6Z\"/>\n                                                            <path stroke=\"currentColor\" stroke-width=\"2\" d=\"M15 12a3 3 0 1 1-6 0 3 3 0 0 1 6 0Z\"/>\n                                                        </svg>                                                          \n                                                    </a>\n                                                </td>\n                                                {% endif %}\n                                            </tr>\n                    \n                                            <!-- Edit Sales -->\n                                            <div class=\"modal fade\" id=\"editSales-{{item.id}}\" tabindex=\"-1\" aria-labelledby=\"editSalesLabel\" aria-hidden=\"true\">\n                                                <div class=\"modal-dialog modal-dialog-centered modal-xl\">\n                                                    <div class=\"modal-content\">\n                                                        <div class=\"modal-header\">\n                                                            <div class=\"d-flex justify-content-between\">\n                                                                <div>\n                                                                    <h1 class=\"modal-title fs-5\" id=\"editSalesLabel\">Edit {{ link }}</h1>\n                                                                </div>\n                                                                <div>\n                                                                    <button type=\"button\" class=\"btn-close\" data-bs-dismiss=\"modal\" aria-label=\"Close\"></button>\n                                                                </div>\n                                                            </div>\n                                                        </div>\n                                                        <div class=\"modal-body\">\n                                                            <form action=\"{{ url_for('table_blueprint.update', aPath=link, id=item.id ) }}\" method=\"post\" class=\"\">\n                                                                \n                                                                <div class=\"row\">\n                                                                    <!-- FKs -->\n                                                                    {% for key, values in fk_fields.items() %}\n                                                                    <div class=\"col-md-6\">\n                                                                        <div class=\"form-group mb-3\">\n                                                                            <label for=\"id_{{ key }}\" class=\"form-label\">{{ key }}</label>\n                                                                            <select class=\"form-control\" name=\"{{ key }}\" id=\"id_{{ key }}\">\n                                                                                {% for i in values %}\n                                                                                    <option value=\"{{ i.id }}\">{{ i }}</option>\n                                                                                {% endfor %}\n                                                                            </select>                                                    \n                                                                        </div>\n                                                                    </div>\n                                                                    {% endfor %}\n    \n                                                                    {% for field_name in db_field_names %}\n                                                                        {% if field_name not in read_only_fields and field_name not in fk_fields_keys and field_name not in exclude_auto_gen_fields %}\n                                                                        <div class=\"col-md-6\">\n                                                                            <div class=\"form-group mb-3\">                                                                    \n                                                                                <label for=\"id_{{ field_name }}\" class=\"form-label\">{{ field_name|title }}</label>\n                                                                                {% if field_name in choices_dict %}\n                                                                                    <select name=\"{{ field_name }}\" id=\"id_{{ field_name }}\" class=\"form-select\">\n                                                                                        <option value=\"\">Select {{ field_name }}</option>\n                                                                                        {% for key, value in choices_dict|get(field_name) %}\n                                                                                            <option {% if item|getenumattribute(field_name) == value %}selected{% endif %} value=\"{{ value }}\">{{ key }}</option>\n                                                                                        {% endfor %}\n                                                                                    </select>\n                                                                                {% else %}\n                                                                                    {% if field_name in integer_fields %}\n                                                                                    <input type=\"number\" name=\"{{ field_name }}\" value=\"{{ item|getattribute(field_name) }}\" class=\"form-control\" placeholder=\"{{ field_name }}\" id=\"id_{{ field_name }}\">\n                                                                                    {% elif field_name in date_time_fields %}\n                                                                                    <input type=\"datetime-local\" name=\"{{ field_name }}\" value=\"{{ item|getattribute(field_name) }}\" class=\"form-control\" placeholder=\"{{ field_name }}\" id=\"id_{{ field_name }}\">\n                                                                                    {% elif field_name in email_fields %}\n                                                                                    <input type=\"email\" name=\"{{ field_name }}\" value=\"{{ item|getattribute(field_name) }}\" class=\"form-control\" placeholder=\"{{ field_name }}\" id=\"id_{{ field_name }}\">\n                                                                                    {% elif field_name in text_fields %}\n                                                                                    <input type=\"text\" name=\"{{ field_name }}\" value=\"{{ item|getattribute(field_name) }}\" class=\"form-control\" placeholder=\"{{ field_name }}\" id=\"id_{{ field_name }}\">\n                                                                                    {% else %}\n                                                                                    <input type=\"text\" name=\"{{ field_name }}\" value=\"{{ item|getattribute(field_name) }}\" class=\"form-control\" placeholder=\"{{ field_name }}\" id=\"id_{{ field_name }}\">\n                                                                                    {% endif %}\n                                                                                {% endif %}\n                                                                            </div>\n                                                                        </div>\n                                                                        {% endif %}\n                                                                    {% endfor %}\n                                                                </div>\n\n                                                                <div>\n                                                                    <button type=\"submit\" class=\"btn btn-primary\">Save</button>\n                                                                </div>\n                                                            </form>\n                                                        </div>\n                                                    </div>\n                                                </div>\n                                            </div>\n                    \n                                            <!-- Delete Sales -->\n                                            <div class=\"modal fade\" id=\"deleteSales-{{item.id}}\" tabindex=\"-1\" aria-labelledby=\"deleteSalesLabel\" aria-hidden=\"true\">\n                                                <div class=\"modal-dialog\">\n                                                <div class=\"modal-content\">\n                                                    <div class=\"modal-header\">\n                                                    <div class=\"d-flex justify-content-between\">\n                                                        <div>\n                                                            <h1 class=\"modal-title fs-5\" id=\"deleteSalesLabel\">Delete Item</h1>\n                                                        </div>\n                                                        <div>\n                                                            <button type=\"button\" class=\"btn-close\" data-bs-dismiss=\"modal\" aria-label=\"Close\"></button>\n                                                        </div>\n                                                    </div>\n                                                    </div>\n                                                    <div class=\"modal-body\">\n                                                        <h5>Are you sure you want to delete this item?</h5>\n                                                    </div>\n                                                    <div class=\"modal-footer\">\n                                                        <button type=\"button\" class=\"btn btn-secondary\" data-bs-dismiss=\"modal\">Close</button>\n                                                        <a href=\"{{ url_for('table_blueprint.delete', aPath=link, id=item.id ) }}\" class=\"btn btn-danger\">Delete</a>\n                                                    </div>\n                                                </div>\n                                                </div>\n                                            </div>\n    \n                                            <!-- View Sales -->\n                                            <div class=\"modal fade\" id=\"viewSales-{{item.id}}\" tabindex=\"-1\" aria-labelledby=\"viweSalesLabel\" aria-hidden=\"true\">\n                                                <div class=\"modal-dialog modal-dialog-centered modal-xl\">\n                                                    <div class=\"modal-content\">\n                                                        <div class=\"modal-header\">\n                                                            <div class=\"d-flex justify-content-between\">\n                                                                <div>\n                                                                    <h1 class=\"modal-title fs-5\" id=\"viewSalesLabel\">View {{ link }}</h1>\n                                                                </div>\n                                                                <div>\n                                                                    <button type=\"button\" class=\"btn-close\" data-bs-dismiss=\"modal\" aria-label=\"Close\"></button>\n                                                                </div>\n                                                            </div>\n                                                        </div>\n                                                        <div class=\"modal-body\">\n                                                            <form action=\"#\" method=\"post\">\n                                                                \n                                                                <div class=\"row\">\n                                                                    {% for field_name in db_field_names %}\n                                                                    <div class=\"col-md-6\">\n                                                                        <div class=\"form-group mb-3\">\n                                                                            <label for=\"{{ field_name }}\" class=\"form-label\">{{ field_name|title }}</label>\n                                                                            <input readonly type=\"text\" value=\"{{ item|getattribute(field_name) }}\" name=\"{{ field_name }}\" id=\"{{ field_name }}\" class=\"form-control\">\n                                                                        </div>\n                                                                    </div>\n                                                                    {% endfor %}\n                                                                </div>\n                                                            </form>\n                                                        </div>\n                                                    </div>\n                                                </div>\n                                            </div>\n                    \n                                            {% endfor %}\n                                        </tbody>\n                                    </table>\n                                </div>\n                            </div>\n\n\n                            {% if pagination.has_prev or pagination.has_next %}\n                                <nav aria-label=\"Page navigation example\">\n                                    <ul class=\"pagination justify-content-center\">\n                                        {% if pagination.has_prev %}\n                                            <li class=\"page-item\">\n                                                <a class=\"page-link\" href=\"?page={{ pagination.prev_num }}\" aria-label=\"Previous\">\n                                                    <span aria-hidden=\"true\">&laquo;</span>\n                                                    <span class=\"sr-only\">Previous</span>\n                                                </a>\n                                            </li>\n                                        {% endif %}\n                                        {% for n in range(1, pagination.pages + 1) %}\n                                            {% if pagination.page == n %}\n                                                <li class=\"page-item active\"><a class=\"page-link\">{{ n }}</a></li>\n                                            {% elif n > pagination.page - 3 and n < pagination.page + 3 %}\n                                                <li class=\"page-item\"><a class=\"page-link\" href=\"?page={{ n }}\">{{ n }}</a></li>\n                                            {% endif %}\n                                        {% endfor %}\n                                        {% if pagination.has_next %}\n                                            <li class=\"page-item\">\n                                                <a class=\"page-link\" href=\"?page={{ pagination.next_num }}\" aria-label=\"Next\">\n                                                    <span aria-hidden=\"true\">&raquo;</span>\n                                                    <span class=\"sr-only\">Next</span>\n                                                </a>\n                                            </li>\n                                        {% endif %}\n                                    </ul>\n                                </nav>\n                            {% endif %}\n\n\n                        </div>\n\n                    </div>\n\n\n                    <!-- Export as CSV -->\n                    <div class=\"modal fade\" id=\"exportCSV\" tabindex=\"-1\" aria-labelledby=\"exportCSVLabel\" aria-hidden=\"true\">\n                        <div class=\"modal-dialog modal-dialog-centered modal-xl\">\n                            <div class=\"modal-content\">\n                                <div class=\"modal-header\">\n                                    <div class=\"d-flex justify-content-between\">\n                                        <div>\n                                            <h1 class=\"modal-title fs-5\" id=\"exportCSVLabel\">Export as CSV</h1>\n                                        </div>\n                                        <div>\n                                            <a href=\"{{ url_for('table_blueprint.export_csv', aPath=link) }}\">\n                                                <img style=\"width: 30px\" class=\"export-img\" src=\"{{ url_for('static', filename='assets/img/export.png') }}\" alt=\"\">\n                                            </a>\n                                        </div>\n                                        <div>\n                                            <button type=\"button\" class=\"btn-close\" data-bs-dismiss=\"modal\" aria-label=\"Close\"></button>\n                                        </div>\n                                    </div>\n                                </div>\n                                <div class=\"modal-body\">\n                                {% include \"includes/items-table.html\" %}\n                                </div>\n                            </div>\n                        </div>\n                    </div>\n\n                    <!-- Add Sales -->\n                    <div class=\"modal fade\" id=\"addSales\" tabindex=\"-1\" aria-labelledby=\"addSalesLabel\" aria-hidden=\"true\">\n                        <div class=\"modal-dialog modal-dialog-centered modal-xl\">\n                            <div class=\"modal-content\">\n                                <div class=\"modal-header\">\n                                    <h2 class=\"h6 modal-title\">Add {{ link }}</h2>\n                                    <button type=\"button\" class=\"btn-close\" data-bs-dismiss=\"modal\" aria-label=\"Close\"></button>\n                                </div>\n                                <div class=\"modal-body\">\n                                    <form method=\"post\" action=\"{{ url_for('table_blueprint.create', aPath=link) }}\" class=\"row\">\n\n                                        <!-- FKs -->\n                                        {% for field, values in fk_fields.items() %}\n                                        <div class=\"col-md-6\">\n                                            <div class=\"form-group mb-3\">\n                                                <label for=\"id_{{ field }}\" class=\"form-label\">{{ field|title }}</label>\n                                                <select class=\"form-control\" name=\"{{ field }}\" id=\"id_{{ field }}\">\n                                                    {% for i in values %}\n                                                        <option value=\"{{ i.id }}\">{{ i }}</option>\n                                                    {% endfor %}\n                                                </select>                                                    \n                                            </div>\n                                        </div>\n                                        {% endfor %}\n\n                                        {% for field_name in db_field_names %}\n                                            {% if field_name not in read_only_fields and field_name not in fk_fields_keys and field_name not in exclude_auto_gen_fields %}\n                                            <div class=\"col-md-6\">\n                                                <div class=\"form-group mb-3\">\n                                                    <label for=\"id_{{ field_name }}\" class=\"form-label\">{{ field_name|title }}</label>\n                                                    {% if field_name in choices_dict %}\n                                                        <select name=\"{{ field_name }}\" id=\"id_{{ field_name }}\" class=\"form-select\">\n                                                            <option value=\"\">Select {{ field_name }}</option>\n                                                            {% for key, value in choices_dict|get(field_name) %}\n                                                                <option value=\"{{ key }}\">{{ key }}</option>\n                                                            {% endfor %}\n                                                        </select>\n                                                    {% else %}\n                                                        {% if field_name in integer_fields %}\n                                                        <input type=\"number\" name=\"{{ field_name }}\" class=\"form-control\" placeholder=\"{{ field_name|title }}\" id=\"id_{{ field_name }}\">\n                                                        {% elif field_name in date_time_fields %}\n                                                        <input type=\"datetime-local\" name=\"{{ field_name }}\" class=\"form-control\" placeholder=\"{{ field_name|title }}\" id=\"id_{{ field_name }}\">\n                                                        {% elif field_name in email_fields %}\n                                                        <input type=\"email\" name=\"{{ field_name }}\" class=\"form-control\" placeholder=\"{{ field_name|title }}\" id=\"id_{{ field_name }}\">\n                                                        {% else %}\n                                                        <input type=\"text\" name=\"{{ field_name }}\" class=\"form-control\" placeholder=\"{{ field_name|title }}\" id=\"id_{{ field_name }}\">\n                                                        {% endif %}\n                                                    {% endif %}\n                                                </div>\n                                            </div>\n                                            {% endif %}\n                                        {% endfor %}\n                                        \n                                        <div>\n                                            <button type=\"submit\" class=\"btn btn-primary\">Add</button>\n                                        </div>\n                                    </form>\n                                </div>\n                            </div>\n                        </div>\n                    </div>\n\n                </div>\n            </div>\n        </div>\n        \n    </div>\n</div>\n\n{% endblock %}\n\n\n{% block javascripts %}\n\n<script>\n    const link = '{{ link }}';\n    const hideShowLink = \"{{ url_for('table_blueprint.create_hide_show_filter', model_name=link) }}\"\n    const pageItemsLink = \"{{ url_for('table_blueprint.create_page_items', model_name=link) }}\"\n\n    document.addEventListener('DOMContentLoaded', function () {\n      var checkboxes = document.querySelectorAll('#dropdownDefaultCheckbox input[type=\"checkbox\"]');\n      \n      checkboxes.forEach(function (checkbox) {\n\n  \n        var targetColumnId = checkbox.getAttribute('data-bs-target');\n        var targetColumn = document.getElementById('th_' + targetColumnId);\n        var exportTargetColumn = document.getElementById('th_' + targetColumnId + '_export');\n        var targetDataCells = document.querySelectorAll('.td_' + targetColumnId);\n  \n        if (checkbox.checked) {\n          targetColumn.style.display = 'none';\n          exportTargetColumn.style.display = 'none';\n          targetDataCells.forEach(function (dataCell) {\n            dataCell.style.display = 'none';\n          });\n        }\n  \n        checkbox.addEventListener('change', function () {\n          var targetColumnId = this.getAttribute('data-bs-target');\n          var targetColumn = document.getElementById('th_' + targetColumnId);\n          var exportTargetColumn = document.getElementById('th_' + targetColumnId + '_export');\n          var targetDataCells = document.querySelectorAll('.td_' + targetColumnId);\n          \n          if (this.checked) {\n            targetColumn.style.display = 'none';\n            exportTargetColumn.style.display = 'none';\n            targetDataCells.forEach(function (dataCell) {\n              dataCell.style.display = 'none';\n            });\n          } else {\n            targetColumn.style.display = '';\n            exportTargetColumn.style.display = '';\n            targetDataCells.forEach(function (dataCell) {\n              dataCell.style.display = '';\n            });\n          }\n  \n          fetch(hideShowLink, {\n            method: 'POST',\n            headers: {\n              'Content-Type': 'application/x-www-form-urlencoded',\n            },\n            body: JSON.stringify({\n              key: targetColumnId,\n              value: this.checked\n            })\n          })\n  \n        });\n      });\n    });\n</script>\n\n<script>\n    function getPageItems(selectObject) {\n      var value = selectObject.value;\n    \n      fetch(pageItemsLink, {\n        method: 'POST',\n        headers: {\n          'Content-Type': 'application/x-www-form-urlencoded',\n        },\n        body: `items=${value}`\n      })\n      .then(response => {\n        location.reload()\n      })\n    }\n</script>\n\n<script>\n    document.getElementById('addButton').addEventListener('click', function() {\n      var fieldNames = {{ db_filters|safe }};\n  \n      var template = `\n        <div class=\"input-container d-flex align-items-center gap-3 mb-3\">\n          <div class=\"d-flex gap-2\">\n            <select name=\"key\" class=\"form-select w-50\">\n              ${fieldNames.map(option => `<option value=\"${option}\">${option}</option>`).join('')}\n            </select>\n            <input name=\"value\" class=\"form-control\" type=\"text\" placeholder=\"Enter value\">\n          </div>\n          <button class=\"remove-button btn btn-danger\" onclick=\"removeInputContainer(this)\">X</button>\n        </div>\n      `;\n  \n      var tempDiv = document.createElement('div');\n      tempDiv.innerHTML = template;\n  \n      document.getElementById('inputContainer').appendChild(tempDiv);\n  \n      document.getElementById('submitButton').style.display = 'inline-block';\n    });\n  \n    function removeInputContainer(element) {\n      var inputContainer = element.closest('.input-container');\n  \n      inputContainer.remove();\n      \n      var inputContainers = document.getElementsByClassName('input-container');\n      if (inputContainers.length === 0) {\n        document.getElementById('submitButton').style.display = 'none';\n      }\n    }\n  \n  </script>\n\n{% endblock javascripts %}"
  },
  {
    "path": "templates/home/components-buttons.html",
    "content": "{% extends \"layouts/base.html\" %}\n\n{% block title %} UI Buttons {% endblock %} \n\n<!-- Specific Page CSS goes HERE  -->\n{% block stylesheets %}{% endblock stylesheets %}\n\n{% block content %}\n\n  <div class=\"py-4\">\n      <nav aria-label=\"breadcrumb\" class=\"d-none d-md-inline-block\">\n          <ol class=\"breadcrumb breadcrumb-dark breadcrumb-transparent\">\n              <li class=\"breadcrumb-item\">\n                  <a href=\"#\">\n                      <svg class=\"icon icon-xxs\" fill=\"none\" stroke=\"currentColor\" viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M3 12l2-2m0 0l7-7 7 7M5 10v10a1 1 0 001 1h3m10-11l2 2m-2-2v10a1 1 0 01-1 1h-3m-6 0a1 1 0 001-1v-4a1 1 0 011-1h2a1 1 0 011 1v4a1 1 0 001 1m-6 0h6\"></path></svg>\n                  </a>\n              </li>\n              <li class=\"breadcrumb-item\"><a href=\"#\">Components</a></li>\n              <li class=\"breadcrumb-item active\" aria-current=\"page\">Buttons</li>\n          </ol>\n      </nav>\n      <div class=\"d-flex justify-content-between w-100 flex-wrap\">\n          <div class=\"mb-3 mb-lg-0\">\n              <h1 class=\"h4\">Buttons</h1>\n              <p class=\"mb-0\">Dozens of reusable components built to provide buttons, alerts, popovers, and more.</p>\n          </div>\n          <div>\n              <a href=\"https://themesberg.com/docs/volt-bootstrap-5-dashboard/components-buttons/\" class=\"btn btn-outline-gray\"><i class=\"far fa-question-circle me-1\"></i> Buttons Docs</a>\n          </div>\n      </div>\n  </div>\n\n  <div class=\"row\">\n      <div class=\"col-12 mb-4\">\n          <div class=\"card border-light shadow-sm components-section\">\n              <div class=\"card-body\">\n                      <div class=\"mb-3\">\n                          <h2 class=\"h5\">Sizes</h2>\n                      </div>\n                      <!--Buttons-->\n                      <button class=\"btn btn-sm btn-primary\" type=\"button\">Small</button>\n                      <button class=\"btn btn-primary\" type=\"button\">Regular</button>\n                      <button class=\"btn btn-lg btn-primary\" type=\"button\">Large Button</button>\n\n                      <h2 class=\"h5 fw-bold mt-4 mb-3\">With Icons</h2>\n                      <button type=\"button\" class=\"btn btn-primary d-inline-flex align-items-center\">\n                          Download\n                          <svg class=\"icon icon-xxs ms-2\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 20 20\" fill=\"currentColor\"><path fill-rule=\"evenodd\" d=\"M2 9.5A3.5 3.5 0 005.5 13H9v2.586l-1.293-1.293a1 1 0 00-1.414 1.414l3 3a1 1 0 001.414 0l3-3a1 1 0 00-1.414-1.414L11 15.586V13h2.5a4.5 4.5 0 10-.616-8.958 4.002 4.002 0 10-7.753 1.977A3.5 3.5 0 002 9.5zm9 3.5H9V8a1 1 0 012 0v5z\" clip-rule=\"evenodd\" /></svg>\n                      </button>\n                      <button type=\"button\" class=\"btn btn-primary d-inline-flex align-items-center\">\n                          <svg class=\"icon icon-xxs me-2\" fill=\"none\" stroke=\"currentColor\" viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M8 12h.01M12 12h.01M16 12h.01M21 12c0 4.418-4.03 8-9 8a9.863 9.863 0 01-4.255-.949L3 20l1.395-3.72C3.512 15.042 3 13.574 3 12c0-4.418 4.03-8 9-8s9 3.582 9 8z\"></path></svg>\n                          Contact Us\n                      </button>\n\n                      <h2 class=\"h5 fw-bold mt-4 mb-3\">Dropdown buttons</h2>\n                      <div class=\"d-flex\">\n                          <div class=\"dropdown me-1\">\n                              <button type=\"button\" class=\"btn btn-secondary dropdown-toggle\" id=\"dropdownMenuOffset\" data-bs-toggle=\"dropdown\" aria-expanded=\"false\" data-bs-offset=\"10,20\">\n                              Offset\n                              </button>\n                              <ul class=\"dropdown-menu py-0\" aria-labelledby=\"dropdownMenuOffset\">\n                                  <li><a class=\"dropdown-item rounded-top\" href=\"#\">Action</a></li>\n                                  <li><a class=\"dropdown-item\" href=\"#\">Another action</a></li>\n                                  <li><a class=\"dropdown-item rounded-bottom\" href=\"#\">Something else here</a></li>\n                              </ul>\n                          </div>\n                          <div class=\"btn-group\">\n                              <button type=\"button\" class=\"btn btn-secondary\">Reference</button>\n                              <button type=\"button\" class=\"btn btn-secondary dropdown-toggle dropdown-toggle-split\" id=\"dropdownMenuReference\" data-bs-toggle=\"dropdown\" aria-expanded=\"false\" data-bs-reference=\"parent\">\n                                  <svg class=\"icon icon-xs\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M5.293 7.293a1 1 0 011.414 0L10 10.586l3.293-3.293a1 1 0 111.414 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414z\" clip-rule=\"evenodd\"></path></svg>\n                                  <span class=\"visually-hidden\">Toggle Dropdown</span>\n                              </button>\n                              <ul class=\"dropdown-menu py-0\" aria-labelledby=\"dropdownMenuReference\">\n                                  <li><a class=\"dropdown-item rounded-top\" href=\"#\">Action</a></li>\n                                  <li><a class=\"dropdown-item\" href=\"#\">Another action</a></li>\n                                  <li><a class=\"dropdown-item\" href=\"#\">Something else here</a></li>\n                                  <li><hr class=\"dropdown-divider\"></li>\n                                  <li><a class=\"dropdown-item rounded-bottom\" href=\"#\">Separated link</a></li>\n                              </ul>\n                          </div>\n                      </div>\n                      <div class=\"mb-3 mt-5\">\n                          <h2 class=\"h5\">Link Buttons</h2>\n                      </div>\n                      <!--Buttons-->\n                      <a href=\"#\" class=\"text-default fw-bold me-3\">Primary</a>\n                      <a href=\"#\" class=\"text-primary d-inline-flex align-items-center me-3\">\n                          <svg class=\"icon icon-xxs me-2\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 20 20\" fill=\"currentColor\"><path fill-rule=\"evenodd\" d=\"M2 9.5A3.5 3.5 0 005.5 13H9v2.586l-1.293-1.293a1 1 0 00-1.414 1.414l3 3a1 1 0 001.414 0l3-3a1 1 0 00-1.414-1.414L11 15.586V13h2.5a4.5 4.5 0 10-.616-8.958 4.002 4.002 0 10-7.753 1.977A3.5 3.5 0 002 9.5zm9 3.5H9V8a1 1 0 012 0v5z\" clip-rule=\"evenodd\" /></svg>\n                          Icon Left\n                      </a>\n                      <a href=\"#\" class=\"text-primary d-inline-flex align-items-center\">\n                          Icon Right\n                          <svg class=\"icon icon-xxs ms-2\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 20 20\" fill=\"currentColor\"><path fill-rule=\"evenodd\" d=\"M2 9.5A3.5 3.5 0 005.5 13H9v2.586l-1.293-1.293a1 1 0 00-1.414 1.414l3 3a1 1 0 001.414 0l3-3a1 1 0 00-1.414-1.414L11 15.586V13h2.5a4.5 4.5 0 10-.616-8.958 4.002 4.002 0 10-7.753 1.977A3.5 3.5 0 002 9.5zm9 3.5H9V8a1 1 0 012 0v5z\" clip-rule=\"evenodd\" /></svg>\n                      </a>\n                      <!--End of Buttons-->\n                      <!-- Tooltips -->\n                      <div class=\"mb-3 mt-5\">\n                          <h2 class=\"h5\">Tooltips</h2>\n                      </div>\n                      <button type=\"button\" class=\"btn btn-secondary\" data-bs-toggle=\"tooltip\" data-bs-placement=\"top\" title=\"Tooltip on top\">\n                          Tooltip on top\n                      </button>\n                      <button type=\"button\" class=\"btn btn-secondary\" data-bs-toggle=\"tooltip\" data-bs-placement=\"right\" title=\"Tooltip on right\">\n                          Tooltip on right\n                      </button>\n                      <button type=\"button\" class=\"btn btn-secondary\" data-bs-toggle=\"tooltip\" data-bs-placement=\"bottom\" title=\"Tooltip on bottom\">\n                          Tooltip on bottom\n                      </button>\n                      <button type=\"button\" class=\"btn btn-secondary\" data-bs-toggle=\"tooltip\" data-bs-placement=\"left\" title=\"Tooltip on left\">\n                          Tooltip on left\n                      </button>\n                      <!-- Tooltips -->\n                      <div class=\"mb-3 mt-5\">\n                          <h2 class=\"h5\">Popovers</h2>\n                      </div>\n                      <button type=\"button\" class=\"btn btn-secondary\" data-bs-container=\"body\" data-bs-toggle=\"popover\" data-bs-placement=\"top\" data-bs-content=\"Top popover\">\n                          Popover on top\n                      </button>\n                      <button type=\"button\" class=\"btn btn-secondary\" data-bs-container=\"body\" data-bs-toggle=\"popover\" data-bs-placement=\"right\" data-bs-content=\"Right popover\">\n                          Popover on right\n                      </button>\n                      <button type=\"button\" class=\"btn btn-secondary\" data-bs-container=\"body\" data-bs-toggle=\"popover\" data-bs-placement=\"bottom\" data-bs-content=\"Bottom popover\">\n                          Popover on bottom\n                      </button>\n                      <button type=\"button\" class=\"btn btn-secondary\" data-bs-container=\"body\" data-bs-toggle=\"popover\" data-bs-placement=\"left\" data-bs-content=\"Left popover\">\n                          Popover on left\n                      </button>\n                      <!-- Button colors -->\n                      <div class=\"mb-3 mt-5\">\n                          <h2 class=\"h5\">Choose your color</h2>\n                      </div>\n                      <div class=\"mb-3 mt-5\">\n                          <small class=\"text-uppercase fw-bold\">Main</small>\n                      </div>\n                      <!--Buttons-->\n                      <button class=\"btn btn-primary\" type=\"button\">Primary</button>\n                      <button class=\"btn btn-secondary\" type=\"button\">Secondary</button>\n                      <button class=\"btn btn-tertiary\" type=\"button\">Tertiary</button>\n                      <button class=\"btn btn-info\" type=\"button\">Info</button>\n                      <button class=\"btn btn-success\" type=\"button\">Success</button>\n                      <button class=\"btn btn-warning\" type=\"button\">Warning</button>\n                      <button class=\"btn btn-danger\" type=\"button\">Danger</button>\n                      <button class=\"btn btn-gray-800\" type=\"button\">Dark</button>\n                      <button class=\"btn btn-gray-200\" type=\"button\">Gray</button>\n                      <button class=\"btn btn-gray-50\" type=\"button\">Light</button>\n                      <button class=\"btn btn-white\" type=\"button\">White</button>\n                      <!--End Of Buttons-->\n                      <div class=\"mb-3 mt-5\">\n                          <small class=\"text-uppercase fw-bold\">Outline</small>\n                      </div>\n                      <!--Buttons-->\n                      <button class=\"btn btn-outline-primary\" type=\"button\">Primary</button>\n                      <button class=\"btn btn-outline-secondary\" type=\"button\">Secondary</button>\n                      <button class=\"btn btn-outline-tertiary\" type=\"button\">Tertiary</button>\n                      <button class=\"btn btn-outline-info\" type=\"button\">Info</button>\n                      <button class=\"btn btn-outline-success\" type=\"button\">Success</button>\n                      <button class=\"btn btn-outline-danger\" type=\"button\">Danger</button>\n                      <button class=\"btn btn-outline-gray-800\" type=\"button\">Dark</button>\n                      <button class=\"btn btn-outline-gray-500\" type=\"button\">Gray</button>\n                      <!--End Of Buttons-->\n                      <div class=\"mb-3 mt-5\">\n                          <small class=\"text-uppercase fw-bold\">Round Outline</small>\n                      </div>\n                      <!--Buttons-->\n                      <button class=\"btn btn-pill btn-outline-primary\" type=\"button\">Primary</button>\n                      <button class=\"btn btn-pill btn-outline-secondary\" type=\"button\">Secondary</button>\n                      <button class=\"btn btn-pill btn-outline-tertiary\" type=\"button\">Tertiary</button>\n                      <button class=\"btn btn-pill btn-outline-info\" type=\"button\">Info</button>\n                      <button class=\"btn btn-pill btn-outline-success\" type=\"button\">Success</button>\n                      <button class=\"btn btn-pill btn-outline-danger\" type=\"button\">Danger</button>\n                      <button class=\"btn btn-pill btn-outline-gray-800\" type=\"button\">Dark</button>\n                      <button class=\"btn btn-pill btn-outline-gray-500\" type=\"button\">Gray</button>\n                      <!--End Of Buttons-->\n                      <!-- Button links -->\n                      <div class=\"mb-3 mt-5\">\n                          <small class=\"text-uppercase fw-bold\">Links</small>\n                      </div>\n                      <!--Buttons-->\n                      <a href=\"#\" class=\"text-default me-3\">Default</a>\n                      <a href=\"#\" class=\"text-primary me-3\">Primary</a>\n                      <a href=\"#\" class=\"text-secondary me-3\">Secondary</a>\n                      <a href=\"#\" class=\"text-tertiary me-3\">Tertiary</a>\n                      <a href=\"#\" class=\"text-info me-3\">Info</a>\n                      <a href=\"#\" class=\"text-success me-3\">Success</a>\n                      <a href=\"#\" class=\"text-danger me-3\">Danger</a>\n                      <a href=\"#\" class=\"text-dark me-3\">Dark</a>\n                      <a href=\"#\" class=\"text-gray\">Gray</a>\n                      <!--End Of Buttons-->\n                  \n                  <div class=\"row\">\n                      <div class=\"col-lg-4 col-md-6\">\n                          <!-- Button Social -->\n                          <div class=\"mb-4 mt-5\">\n                              <h2 class=\"h5 fw-bold\">Social Buttons</h2>\n                          </div>\n                          <button class=\"btn btn-facebook d-inline-flex align-items-center\" type=\"button\">\n                              <svg class=\"icon icon-xxs me-2\" aria-hidden=\"true\" focusable=\"false\" data-prefix=\"fab\" data-icon=\"facebook-f\" role=\"img\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 320 512\"><path fill=\"currentColor\" d=\"M279.14 288l14.22-92.66h-88.91v-60.13c0-25.35 12.42-50.06 52.24-50.06h40.42V6.26S260.43 0 225.36 0c-73.22 0-121.08 44.38-121.08 124.72v70.62H22.89V288h81.39v224h100.17V288z\"></path></svg>\n                              Login with Facebook\n                          </button>\n                          <br>\n                          <button class=\"btn btn-twitter text-white d-inline-flex align-items-center\" type=\"button\">\n                              <svg class=\"icon icon-xxs me-2\" aria-hidden=\"true\" focusable=\"false\" data-prefix=\"fab\" data-icon=\"twitter\" role=\"img\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\"><path fill=\"currentColor\" d=\"M459.37 151.716c.325 4.548.325 9.097.325 13.645 0 138.72-105.583 298.558-298.558 298.558-59.452 0-114.68-17.219-161.137-47.106 8.447.974 16.568 1.299 25.34 1.299 49.055 0 94.213-16.568 130.274-44.832-46.132-.975-84.792-31.188-98.112-72.772 6.498.974 12.995 1.624 19.818 1.624 9.421 0 18.843-1.3 27.614-3.573-48.081-9.747-84.143-51.98-84.143-102.985v-1.299c13.969 7.797 30.214 12.67 47.431 13.319-28.264-18.843-46.781-51.005-46.781-87.391 0-19.492 5.197-37.36 14.294-52.954 51.655 63.675 129.3 105.258 216.365 109.807-1.624-7.797-2.599-15.918-2.599-24.04 0-57.828 46.782-104.934 104.934-104.934 30.213 0 57.502 12.67 76.67 33.137 23.715-4.548 46.456-13.32 66.599-25.34-7.798 24.366-24.366 44.833-46.132 57.827 21.117-2.273 41.584-8.122 60.426-16.243-14.292 20.791-32.161 39.308-52.628 54.253z\"></path></svg>\n                              Share on Twitter\n                          </button>\n                          <br>\n                          <button class=\"btn btn-youtube d-inline-flex align-items-center\" type=\"button\">\n                              <svg class=\"icon icon-xxs me-2\" aria-hidden=\"true\" focusable=\"false\" data-prefix=\"fab\" data-icon=\"youtube\" role=\"img\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 576 512\"><path fill=\"currentColor\" d=\"M549.655 124.083c-6.281-23.65-24.787-42.276-48.284-48.597C458.781 64 288 64 288 64S117.22 64 74.629 75.486c-23.497 6.322-42.003 24.947-48.284 48.597-11.412 42.867-11.412 132.305-11.412 132.305s0 89.438 11.412 132.305c6.281 23.65 24.787 41.5 48.284 47.821C117.22 448 288 448 288 448s170.78 0 213.371-11.486c23.497-6.321 42.003-24.171 48.284-47.821 11.412-42.867 11.412-132.305 11.412-132.305s0-89.438-11.412-132.305zm-317.51 213.508V175.185l142.739 81.205-142.739 81.201z\"></path></svg>\n                              Watch on YouTube\n                          </button>\n                          <br>\n                          <button class=\"btn btn-github d-inline-flex align-items-center\" type=\"button\">\n                              <svg class=\"icon icon-xxs me-2\" aria-hidden=\"true\" focusable=\"false\" data-prefix=\"fab\" data-icon=\"github\" role=\"img\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 496 512\"><path fill=\"currentColor\" d=\"M165.9 397.4c0 2-2.3 3.6-5.2 3.6-3.3.3-5.6-1.3-5.6-3.6 0-2 2.3-3.6 5.2-3.6 3-.3 5.6 1.3 5.6 3.6zm-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9 2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5.3-6.2 2.3zm44.2-1.7c-2.9.7-4.9 2.6-4.6 4.9.3 2 2.9 3.3 5.9 2.6 2.9-.7 4.9-2.6 4.6-4.6-.3-1.9-3-3.2-5.9-2.9zM244.8 8C106.1 8 0 113.3 0 252c0 110.9 69.8 205.8 169.5 239.2 12.8 2.3 17.3-5.6 17.3-12.1 0-6.2-.3-40.4-.3-61.4 0 0-70 15-84.7-29.8 0 0-11.4-29.1-27.8-36.6 0 0-22.9-15.7 1.6-15.4 0 0 24.9 2 38.6 25.8 21.9 38.6 58.6 27.5 72.9 20.9 2.3-16 8.8-27.1 16-33.7-55.9-6.2-112.3-14.3-112.3-110.5 0-27.5 7.6-41.3 23.6-58.9-2.6-6.5-11.1-33.3 2.6-67.9 20.9-6.5 69 27 69 27 20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27 13.7 34.7 5.2 61.4 2.6 67.9 16 17.7 25.8 31.5 25.8 58.9 0 96.5-58.9 104.2-114.8 110.5 9.2 7.9 17 22.9 17 46.4 0 33.7-.3 75.4-.3 83.6 0 6.5 4.6 14.4 17.3 12.1C428.2 457.8 496 362.9 496 252 496 113.3 383.5 8 244.8 8zM97.2 352.9c-1.3 1-1 3.3.7 5.2 1.6 1.6 3.9 2.3 5.2 1 1.3-1 1-3.3-.7-5.2-1.6-1.6-3.9-2.3-5.2-1zm-10.8-8.1c-.7 1.3.3 2.9 2.3 3.9 1.6 1 3.6.7 4.3-.7.7-1.3-.3-2.9-2.3-3.9-2-.6-3.6-.3-4.3.7zm32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2 2.3 2.3 5.2 2.6 6.5 1 1.3-1.3.7-4.3-1.3-6.2-2.2-2.3-5.2-2.6-6.5-1zm-11.4-14.7c-1.6 1-1.6 3.6 0 5.9 1.6 2.3 4.3 3.3 5.6 2.3 1.6-1.3 1.6-3.9 0-6.2-1.4-2.3-4-3.3-5.6-2z\"></path></svg>\n                              Login with GitHub\n                          </button>\n                          <br>\n                          <button class=\"btn btn-paypal d-inline-flex align-items-center\" type=\"button\">\n                              <svg class=\"icon icon-xxs me-2\" aria-hidden=\"true\" focusable=\"false\" data-prefix=\"fab\" data-icon=\"paypal\" role=\"img\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 384 512\"><path fill=\"currentColor\" d=\"M111.4 295.9c-3.5 19.2-17.4 108.7-21.5 134-.3 1.8-1 2.5-3 2.5H12.3c-7.6 0-13.1-6.6-12.1-13.9L58.8 46.6c1.5-9.6 10.1-16.9 20-16.9 152.3 0 165.1-3.7 204 11.4 60.1 23.3 65.6 79.5 44 140.3-21.5 62.6-72.5 89.5-140.1 90.3-43.4.7-69.5-7-75.3 24.2zM357.1 152c-1.8-1.3-2.5-1.8-3 1.3-2 11.4-5.1 22.5-8.8 33.6-39.9 113.8-150.5 103.9-204.5 103.9-6.1 0-10.1 3.3-10.9 9.4-22.6 140.4-27.1 169.7-27.1 169.7-1 7.1 3.5 12.9 10.6 12.9h63.5c8.6 0 15.7-6.3 17.4-14.9.7-5.4-1.1 6.1 14.4-91.3 4.6-22 14.3-19.7 29.3-19.7 71 0 126.4-28.8 142.9-112.3 6.5-34.8 4.6-71.4-23.8-92.6z\"></path></svg>\n                              Donate with PayPal\n                          </button>\n                          <br>\n                          <button class=\"btn btn-behance d-inline-flex align-items-center\" type=\"button\">\n                              <svg class=\"icon icon-xxs me-2\" aria-hidden=\"true\" focusable=\"false\" data-prefix=\"fab\" data-icon=\"behance\" role=\"img\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 576 512\"><path fill=\"currentColor\" d=\"M232 237.2c31.8-15.2 48.4-38.2 48.4-74 0-70.6-52.6-87.8-113.3-87.8H0v354.4h171.8c64.4 0 124.9-30.9 124.9-102.9 0-44.5-21.1-77.4-64.7-89.7zM77.9 135.9H151c28.1 0 53.4 7.9 53.4 40.5 0 30.1-19.7 42.2-47.5 42.2h-79v-82.7zm83.3 233.7H77.9V272h84.9c34.3 0 56 14.3 56 50.6 0 35.8-25.9 47-57.6 47zm358.5-240.7H376V94h143.7v34.9zM576 305.2c0-75.9-44.4-139.2-124.9-139.2-78.2 0-131.3 58.8-131.3 135.8 0 79.9 50.3 134.7 131.3 134.7 61.3 0 101-27.6 120.1-86.3H509c-6.7 21.9-34.3 33.5-55.7 33.5-41.3 0-63-24.2-63-65.3h185.1c.3-4.2.6-8.7.6-13.2zM390.4 274c2.3-33.7 24.7-54.8 58.5-54.8 35.4 0 53.2 20.8 56.2 54.8H390.4z\"></path></svg>\n                              Follow us\n                          </button>\n                      </div>\n                      <div class=\"col-12 col-lg-6\">\n                          <!-- Square -->\n                          <div class=\"mb-4 mt-5\">\n                              <h2 class=\"h5\">Only Icon</h2>\n                          </div>\n                          <button class=\"btn btn-icon-only btn-facebook d-inline-flex align-items-center\" type=\"button\">\n                              <svg class=\"icon icon-xxs\" aria-hidden=\"true\" focusable=\"false\" data-prefix=\"fab\" data-icon=\"facebook-f\" role=\"img\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 320 512\"><path fill=\"currentColor\" d=\"M279.14 288l14.22-92.66h-88.91v-60.13c0-25.35 12.42-50.06 52.24-50.06h40.42V6.26S260.43 0 225.36 0c-73.22 0-121.08 44.38-121.08 124.72v70.62H22.89V288h81.39v224h100.17V288z\"></path></svg>\n                          </button>\n                          <br>\n                          <button class=\"btn btn-icon-only btn-twitter text-white d-inline-flex align-items-center\" type=\"button\">\n                              <svg class=\"icon icon-xxs\" aria-hidden=\"true\" focusable=\"false\" data-prefix=\"fab\" data-icon=\"twitter\" role=\"img\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\"><path fill=\"currentColor\" d=\"M459.37 151.716c.325 4.548.325 9.097.325 13.645 0 138.72-105.583 298.558-298.558 298.558-59.452 0-114.68-17.219-161.137-47.106 8.447.974 16.568 1.299 25.34 1.299 49.055 0 94.213-16.568 130.274-44.832-46.132-.975-84.792-31.188-98.112-72.772 6.498.974 12.995 1.624 19.818 1.624 9.421 0 18.843-1.3 27.614-3.573-48.081-9.747-84.143-51.98-84.143-102.985v-1.299c13.969 7.797 30.214 12.67 47.431 13.319-28.264-18.843-46.781-51.005-46.781-87.391 0-19.492 5.197-37.36 14.294-52.954 51.655 63.675 129.3 105.258 216.365 109.807-1.624-7.797-2.599-15.918-2.599-24.04 0-57.828 46.782-104.934 104.934-104.934 30.213 0 57.502 12.67 76.67 33.137 23.715-4.548 46.456-13.32 66.599-25.34-7.798 24.366-24.366 44.833-46.132 57.827 21.117-2.273 41.584-8.122 60.426-16.243-14.292 20.791-32.161 39.308-52.628 54.253z\"></path></svg>\n                          </button>\n                          <br>\n                          <button class=\"btn btn-icon-only btn-youtube d-inline-flex align-items-center\" type=\"button\">\n                              <svg class=\"icon icon-xxs\" aria-hidden=\"true\" focusable=\"false\" data-prefix=\"fab\" data-icon=\"youtube\" role=\"img\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 576 512\"><path fill=\"currentColor\" d=\"M549.655 124.083c-6.281-23.65-24.787-42.276-48.284-48.597C458.781 64 288 64 288 64S117.22 64 74.629 75.486c-23.497 6.322-42.003 24.947-48.284 48.597-11.412 42.867-11.412 132.305-11.412 132.305s0 89.438 11.412 132.305c6.281 23.65 24.787 41.5 48.284 47.821C117.22 448 288 448 288 448s170.78 0 213.371-11.486c23.497-6.321 42.003-24.171 48.284-47.821 11.412-42.867 11.412-132.305 11.412-132.305s0-89.438-11.412-132.305zm-317.51 213.508V175.185l142.739 81.205-142.739 81.201z\"></path></svg>\n                          </button>\n                          <br>\n                          <button class=\"btn btn-icon-only btn-github d-inline-flex align-items-center\" type=\"button\">\n                              <svg class=\"icon icon-xxs\" aria-hidden=\"true\" focusable=\"false\" data-prefix=\"fab\" data-icon=\"github\" role=\"img\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 496 512\"><path fill=\"currentColor\" d=\"M165.9 397.4c0 2-2.3 3.6-5.2 3.6-3.3.3-5.6-1.3-5.6-3.6 0-2 2.3-3.6 5.2-3.6 3-.3 5.6 1.3 5.6 3.6zm-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9 2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5.3-6.2 2.3zm44.2-1.7c-2.9.7-4.9 2.6-4.6 4.9.3 2 2.9 3.3 5.9 2.6 2.9-.7 4.9-2.6 4.6-4.6-.3-1.9-3-3.2-5.9-2.9zM244.8 8C106.1 8 0 113.3 0 252c0 110.9 69.8 205.8 169.5 239.2 12.8 2.3 17.3-5.6 17.3-12.1 0-6.2-.3-40.4-.3-61.4 0 0-70 15-84.7-29.8 0 0-11.4-29.1-27.8-36.6 0 0-22.9-15.7 1.6-15.4 0 0 24.9 2 38.6 25.8 21.9 38.6 58.6 27.5 72.9 20.9 2.3-16 8.8-27.1 16-33.7-55.9-6.2-112.3-14.3-112.3-110.5 0-27.5 7.6-41.3 23.6-58.9-2.6-6.5-11.1-33.3 2.6-67.9 20.9-6.5 69 27 69 27 20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27 13.7 34.7 5.2 61.4 2.6 67.9 16 17.7 25.8 31.5 25.8 58.9 0 96.5-58.9 104.2-114.8 110.5 9.2 7.9 17 22.9 17 46.4 0 33.7-.3 75.4-.3 83.6 0 6.5 4.6 14.4 17.3 12.1C428.2 457.8 496 362.9 496 252 496 113.3 383.5 8 244.8 8zM97.2 352.9c-1.3 1-1 3.3.7 5.2 1.6 1.6 3.9 2.3 5.2 1 1.3-1 1-3.3-.7-5.2-1.6-1.6-3.9-2.3-5.2-1zm-10.8-8.1c-.7 1.3.3 2.9 2.3 3.9 1.6 1 3.6.7 4.3-.7.7-1.3-.3-2.9-2.3-3.9-2-.6-3.6-.3-4.3.7zm32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2 2.3 2.3 5.2 2.6 6.5 1 1.3-1.3.7-4.3-1.3-6.2-2.2-2.3-5.2-2.6-6.5-1zm-11.4-14.7c-1.6 1-1.6 3.6 0 5.9 1.6 2.3 4.3 3.3 5.6 2.3 1.6-1.3 1.6-3.9 0-6.2-1.4-2.3-4-3.3-5.6-2z\"></path></svg>\n                          </button>\n                          <br>\n                          <button class=\"btn btn-icon-only btn-paypal d-inline-flex align-items-center\" type=\"button\">\n                              <svg class=\"icon icon-xxs\" aria-hidden=\"true\" focusable=\"false\" data-prefix=\"fab\" data-icon=\"paypal\" role=\"img\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 384 512\"><path fill=\"currentColor\" d=\"M111.4 295.9c-3.5 19.2-17.4 108.7-21.5 134-.3 1.8-1 2.5-3 2.5H12.3c-7.6 0-13.1-6.6-12.1-13.9L58.8 46.6c1.5-9.6 10.1-16.9 20-16.9 152.3 0 165.1-3.7 204 11.4 60.1 23.3 65.6 79.5 44 140.3-21.5 62.6-72.5 89.5-140.1 90.3-43.4.7-69.5-7-75.3 24.2zM357.1 152c-1.8-1.3-2.5-1.8-3 1.3-2 11.4-5.1 22.5-8.8 33.6-39.9 113.8-150.5 103.9-204.5 103.9-6.1 0-10.1 3.3-10.9 9.4-22.6 140.4-27.1 169.7-27.1 169.7-1 7.1 3.5 12.9 10.6 12.9h63.5c8.6 0 15.7-6.3 17.4-14.9.7-5.4-1.1 6.1 14.4-91.3 4.6-22 14.3-19.7 29.3-19.7 71 0 126.4-28.8 142.9-112.3 6.5-34.8 4.6-71.4-23.8-92.6z\"></path></svg>\n                          </button>\n                          <br>\n                          <button class=\"btn btn-icon-only btn-behance d-inline-flex align-items-center\" type=\"button\">\n                              <svg class=\"icon icon-xxs\" aria-hidden=\"true\" focusable=\"false\" data-prefix=\"fab\" data-icon=\"behance\" role=\"img\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 576 512\"><path fill=\"currentColor\" d=\"M232 237.2c31.8-15.2 48.4-38.2 48.4-74 0-70.6-52.6-87.8-113.3-87.8H0v354.4h171.8c64.4 0 124.9-30.9 124.9-102.9 0-44.5-21.1-77.4-64.7-89.7zM77.9 135.9H151c28.1 0 53.4 7.9 53.4 40.5 0 30.1-19.7 42.2-47.5 42.2h-79v-82.7zm83.3 233.7H77.9V272h84.9c34.3 0 56 14.3 56 50.6 0 35.8-25.9 47-57.6 47zm358.5-240.7H376V94h143.7v34.9zM576 305.2c0-75.9-44.4-139.2-124.9-139.2-78.2 0-131.3 58.8-131.3 135.8 0 79.9 50.3 134.7 131.3 134.7 61.3 0 101-27.6 120.1-86.3H509c-6.7 21.9-34.3 33.5-55.7 33.5-41.3 0-63-24.2-63-65.3h185.1c.3-4.2.6-8.7.6-13.2zM390.4 274c2.3-33.7 24.7-54.8 58.5-54.8 35.4 0 53.2 20.8 56.2 54.8H390.4z\"></path></svg>\n                          </button>\n                      </div>\n                  </div>\n              </div>\n          </div>\n      </div>\n  </div>\n\n{% endblock content %}\n\n<!-- Specific Page JS goes HERE  -->\n{% block javascripts %}{% endblock javascripts %}\n"
  },
  {
    "path": "templates/home/components-forms.html",
    "content": "{% extends \"layouts/base.html\" %}\n\n{% block title %} UI Forms {% endblock %} \n\n<!-- Specific Page CSS goes HERE  -->\n{% block stylesheets %}{% endblock stylesheets %}\n\n{% block content %}\n\n  <div class=\"py-4\">\n      <nav aria-label=\"breadcrumb\" class=\"d-none d-md-inline-block\">\n          <ol class=\"breadcrumb breadcrumb-dark breadcrumb-transparent\">\n              <li class=\"breadcrumb-item\">\n                  <a href=\"#\">\n                      <svg class=\"icon icon-xxs\" fill=\"none\" stroke=\"currentColor\" viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M3 12l2-2m0 0l7-7 7 7M5 10v10a1 1 0 001 1h3m10-11l2 2m-2-2v10a1 1 0 01-1 1h-3m-6 0a1 1 0 001-1v-4a1 1 0 011-1h2a1 1 0 011 1v4a1 1 0 001 1m-6 0h6\"></path></svg>\n                  </a>\n              </li>\n              <li class=\"breadcrumb-item\"><a href=\"#\">Volt</a></li>\n              <li class=\"breadcrumb-item active\" aria-current=\"page\">Forms</li>\n          </ol>\n      </nav>\n      <div class=\"d-flex justify-content-between w-100 flex-wrap\">\n          <div class=\"mb-3 mb-lg-0\">\n              <h1 class=\"h4\">Forms</h1>\n              <p class=\"mb-0\">Dozens of reusable components built to provide buttons, alerts, popovers, and more.</p>\n          </div>\n          <div>\n              <a href=\"https://themesberg.com/docs/volt-bootstrap-5-dashboard/components-forms/\" class=\"btn btn-outline-gray\"><i class=\"far fa-question-circle me-1\"></i> Forms Docs</a>\n          </div>\n      </div>\n  </div>\n\n  <div class=\"row\">\n      <div class=\"col-12 mb-4\">\n          <div class=\"card border-0 shadow components-section\">\n              <div class=\"card-body\">     \n                  <div class=\"row mb-4\">\n                      <div class=\"col-lg-4 col-sm-6\">\n                          <!-- Form -->\n                          <div class=\"mb-4\">\n                              <label for=\"email\">Email address</label>\n                              <input type=\"email\" class=\"form-control\" id=\"email\" aria-describedby=\"emailHelp\">\n                              <small id=\"emailHelp\" class=\"form-text text-muted\">We'll never share your email with anyone else.</small>\n                          </div>\n                          <!-- End of Form -->\n                          <!-- Form -->\n                          <div class=\"mb-3\">\n                              <label for=\"exampleInputIconLeft\">Icon Left</label>\n                              <div class=\"input-group\">\n                                  <span class=\"input-group-text\" id=\"basic-addon1\">\n                                      <svg class=\"icon icon-xs text-gray-600\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M8 4a4 4 0 100 8 4 4 0 000-8zM2 8a6 6 0 1110.89 3.476l4.817 4.817a1 1 0 01-1.414 1.414l-4.816-4.816A6 6 0 012 8z\" clip-rule=\"evenodd\"></path></svg>  \n                                  </span>\n                                  <input type=\"text\" class=\"form-control\" id=\"exampleInputIconLeft\" placeholder=\"Search\" aria-label=\"Search\">\n                              </div>\n                          </div>\n                          <!-- End of Form -->\n                          <!-- Form -->\n                          <div class=\"mb-3\">\n                              <label for=\"exampleInputIconRight\">Icon Right</label>\n                              <div class=\"input-group\">\n                                  <input type=\"text\" class=\"form-control\" id=\"exampleInputIconRight\" placeholder=\"Search\" aria-label=\"Search\">\n                                  <span class=\"input-group-text\" id=\"basic-addon2\">\n                                      <svg class=\"icon icon-xs text-gray-600\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M8 4a4 4 0 100 8 4 4 0 000-8zM2 8a6 6 0 1110.89 3.476l4.817 4.817a1 1 0 01-1.414 1.414l-4.816-4.816A6 6 0 012 8z\" clip-rule=\"evenodd\"></path></svg>  \n                                  </span>\n                              </div>\n                          </div>\n                          <!-- End of Form -->\n                          <!-- Form -->\n                          <div class=\"mb-3\">\n                              <label for=\"exampleInputIconPassword\">Password</label>\n                              <div class=\"input-group\">\n                                  <input type=\"password\" class=\"form-control\" id=\"exampleInputIconPassword\" placeholder=\"Password\" aria-label=\"Password\">\n                                  <span class=\"input-group-text\" id=\"basic-addon3\">\n                                      <svg class=\"icon icon-xs text-gray-600\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M5 9V7a5 5 0 0110 0v2a2 2 0 012 2v5a2 2 0 01-2 2H5a2 2 0 01-2-2v-5a2 2 0 012-2zm8-2v2H7V7a3 3 0 016 0z\" clip-rule=\"evenodd\"></path></svg>\n                                  </span>\n                              </div>\n                          </div>\n                          <!-- End of Form -->\n                          <!-- Form -->\n                          <div class=\"mb-3\">\n                              <label for=\"firstName\">First name</label>\n                              <input type=\"text\" class=\"form-control is-valid\" id=\"firstName\" value=\"Mark\" required>\n                              <div class=\"valid-feedback\">\n                                  Looks good!\n                              </div>                \n                          </div>\n                          <!-- End of Form -->\n                      </div>\n                      <div class=\"col-lg-4 col-sm-6\">\n\n                          <!-- Form -->\n                          <div class=\"my-4\">\n                              <label for=\"textarea\">Example textarea</label>\n                              <textarea class=\"form-control\" placeholder=\"Enter your message...\" id=\"textarea\" rows=\"4\"></textarea>\n                          </div>\n                          <!-- End of Form -->\n                          <!-- Form -->\n                          <div class=\"mb-4\">\n                              <label for=\"usernameValidate\">Username</label>\n                              <input type=\"text\" class=\"form-control is-invalid\" id=\"usernameValidate\" required>\n                              <div class=\"invalid-feedback\">\n                                  Please choose a username.\n                              </div>               \n                          </div>\n                          <!-- End of Form -->\n                      </div>\n                      <div class=\"col-lg-4 col-sm-6\">\n                          <div class=\"mb-3\">\n                              <label for=\"birthday\">Birthday</label>\n                              <div class=\"input-group\">\n                                  <span class=\"input-group-text\">\n                                      <svg class=\"icon icon-xs text-gray-600\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M6 2a1 1 0 00-1 1v1H4a2 2 0 00-2 2v10a2 2 0 002 2h12a2 2 0 002-2V6a2 2 0 00-2-2h-1V3a1 1 0 10-2 0v1H7V3a1 1 0 00-1-1zm0 5a1 1 0 000 2h8a1 1 0 100-2H6z\" clip-rule=\"evenodd\"></path></svg>\n                                  </span>\n                                  <input data-datepicker=\"\" class=\"form-control\" id=\"birthday\" type=\"text\" placeholder=\"dd/mm/yyyy\" required>                                               \n                              </div>\n                          </div>\n                          <!-- Form -->\n                          <div class=\"mb-3\">\n                              <label for=\"disabledTextInput\">Name</label>\n                              <input type=\"text\" id=\"disabledTextInput\" class=\"form-control\" placeholder=\"Disabled input\" disabled>\n                          </div>\n                          <div class=\"mb-3\">\n                              <label for=\"disabledSelect\">Disabled select menu</label>\n                              <select id=\"disabledSelect\" class=\"form-control\" disabled>\n                              <option>Disabled select</option>\n                              </select>\n                          </div>\n                          <!-- End of Form -->\n                          <!-- Form -->\n                          <div class=\"mb-4\">\n                              <label class=\"my-1 me-2\" for=\"country\">Country</label>\n                              <select class=\"form-select\" id=\"country\" aria-label=\"Default select example\">\n                                  <option selected>Open this select menu</option>\n                                  <option value=\"1\">One</option>\n                                  <option value=\"2\">Two</option>\n                                  <option value=\"3\">Three</option>\n                              </select>\n                          </div>\n                          <!-- End of Form -->\n                          <!-- Form -->\n                          <div class=\"mb-3\">\n                              <label for=\"formFile\" class=\"form-label\">Default file input example</label>\n                              <input class=\"form-control\" type=\"file\" id=\"formFile\">\n                          </div>\n                          <!-- End of Form -->\n                      </div>\n                  </div>\n                  <div class=\"row mb-5 mb-lg-5\">\n                      <div class=\"col-lg-3 col-md-6\">\n                          <!-- Checkboxes -->\n                          <div class=\"mb-3\">\n                              <span class=\"h6 fw-bold\">Checkboxes Round</span>\n                          </div>\n                          <div class=\"form-check\">\n                              <input class=\"form-check-input\" type=\"checkbox\" value=\"\" id=\"defaultCheck10\">\n                              <label class=\"form-check-label\" for=\"defaultCheck10\">\n                                Default checkbox\n                              </label>\n                          </div>\n                          <div class=\"form-check\">\n                              <input class=\"form-check-input\" type=\"checkbox\" value=\"\" id=\"defaultCheck20\" disabled>\n                              <label class=\"form-check-label\" for=\"defaultCheck20\">\n                                Disabled checkbox\n                              </label>\n                          </div>\n                      </div>\n                      <div class=\"col-lg-3 col-sm-6 mt-4 mt-md-0\">\n                          <!-- Radio -->\n                          <fieldset>\n                              <legend class=\"h6\">Radios</legend>\n                              <div class=\"form-check\">\n                                  <input class=\"form-check-input\" type=\"radio\" name=\"exampleRadios\" id=\"exampleRadios1\" value=\"option1\" checked>\n                                  <label class=\"form-check-label\" for=\"exampleRadios1\">\n                                    Default radio\n                                  </label>\n                                </div>\n                                <div class=\"form-check\">\n                                  <input class=\"form-check-input\" type=\"radio\" name=\"exampleRadios\" id=\"exampleRadios2\" value=\"option2\">\n                                  <label class=\"form-check-label\" for=\"exampleRadios2\">\n                                    Second default radio\n                                  </label>\n                                </div>\n                                <div class=\"form-check\">\n                                  <input class=\"form-check-input\" type=\"radio\" name=\"exampleRadios\" id=\"exampleRadios3\" value=\"option3\" disabled>\n                                  <label class=\"form-check-label\" for=\"exampleRadios3\">\n                                    Disabled radio\n                                  </label>\n                                </div>\n                              <!-- End of Radio -->\n                          </fieldset>\n                      </div>\n                      <div class=\"col-lg-3 col-sm-6 mt-4 mt-md-0\">\n                          <div class=\"mb-3\">\n                              <span class=\"h6 fw-bold\">Switches</span>\n                          </div>\n                          <div class=\"form-check form-switch\">\n                              <input class=\"form-check-input\" type=\"checkbox\" id=\"flexSwitchCheckDefault\">\n                              <label class=\"form-check-label\" for=\"flexSwitchCheckDefault\">Default switch input</label>\n                          </div>\n                          <div class=\"form-check form-switch\">\n                              <input class=\"form-check-input\" type=\"checkbox\" id=\"flexSwitchCheckChecked\" checked>\n                              <label class=\"form-check-label\" for=\"flexSwitchCheckChecked\">Checked switch input</label>\n                          </div>\n                          <div class=\"form-check form-switch\">\n                              <input class=\"form-check-input\" type=\"checkbox\" id=\"flexSwitchCheckDisabled\" disabled>\n                              <label class=\"form-check-label\" for=\"flexSwitchCheckDisabled\">Disabled switch input</label>\n                          </div>\n                          <div class=\"form-check form-switch\">\n                              <input class=\"form-check-input\" type=\"checkbox\" id=\"flexSwitchCheckCheckedDisabled\" checked disabled>\n                              <label class=\"form-check-label\" for=\"flexSwitchCheckCheckedDisabled\">Disabled checked switch input</label>\n                          </div>\n                      </div>\n                  </div>\n              </div>\n          </div>\n      </div>\n  </div>\n\n{% endblock content %}\n\n<!-- Specific Page JS goes HERE  -->\n{% block javascripts %}{% endblock javascripts %}\n"
  },
  {
    "path": "templates/home/components-modals.html",
    "content": "{% extends \"layouts/base.html\" %}\n\n{% block title %} UI Modals {% endblock %} \n\n<!-- Specific Page CSS goes HERE  -->\n{% block stylesheets %}{% endblock stylesheets %}\n\n{% block content %}\n\n  <div class=\"py-4\">\n      <nav aria-label=\"breadcrumb\" class=\"d-none d-md-inline-block\">\n          <ol class=\"breadcrumb breadcrumb-dark breadcrumb-transparent\">\n              <li class=\"breadcrumb-item\">\n                  <a href=\"#\">\n                      <svg class=\"icon icon-xxs\" fill=\"none\" stroke=\"currentColor\" viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M3 12l2-2m0 0l7-7 7 7M5 10v10a1 1 0 001 1h3m10-11l2 2m-2-2v10a1 1 0 01-1 1h-3m-6 0a1 1 0 001-1v-4a1 1 0 011-1h2a1 1 0 011 1v4a1 1 0 001 1m-6 0h6\"></path></svg>\n                  </a>\n              </li>\n              <li class=\"breadcrumb-item\"><a href=\"#\">Volt</a></li>\n              <li class=\"breadcrumb-item active\" aria-current=\"page\">Modals</li>\n          </ol>\n      </nav>\n      <div class=\"d-flex justify-content-between w-100 flex-wrap\">\n          <div class=\"mb-3 mb-lg-0\">\n              <h1 class=\"h4\">Modals</h1>\n              <p class=\"mb-0\">Dozens of reusable components built to provide buttons, alerts, popovers, and more.</p>\n          </div>\n          <div>\n              <a href=\"https://themesberg.com/docs/volt-bootstrap-5-dashboard/components-modals/\" class=\"btn btn-outline-gray\"><i class=\"far fa-question-circle me-1\"></i> Modals Docs</a>\n          </div>\n      </div>\n  </div>\n\n  <div class=\"row\">\n      <div class=\"col-12 mb-4\">\n          <div class=\"card border-0 shadow\">\n              <div class=\"card-body\">     \n                  <div class=\"row d-block mt-4\">\n                      <div class=\"col-lg-4\">\n                          <!-- Button Modal -->\n                          <button type=\"button\" class=\"btn btn-block btn-gray-800 mb-3\" data-bs-toggle=\"modal\" data-bs-target=\"#modal-default\">Default</button>\n                          <!-- Modal Content -->\n                          <div class=\"modal fade\" id=\"modal-default\" tabindex=\"-1\" role=\"dialog\" aria-labelledby=\"modal-default\" aria-hidden=\"true\">\n                              <div class=\"modal-dialog modal-dialog-centered\" role=\"document\">\n                                  <div class=\"modal-content\">\n                                      <div class=\"modal-header\">\n                                          <h2 class=\"h6 modal-title\">Terms of Service</h2>\n                                          <button type=\"button\" class=\"btn-close\" data-bs-dismiss=\"modal\" aria-label=\"Close\"></button>\n                                      </div>\n                                      <div class=\"modal-body\">\n                                          <p>With less than a month to go before the European Union enacts new consumer privacy laws for its citizens, companies around the world are updating their terms of service agreements to comply.</p>\n                                          <p>The European Union’s General Data Protection Regulation (G.D.P.R.) goes into effect on May 25 and is meant to ensure a common set of data rights in the European Union. It requires organizations to notify users as\n                                              soon as possible of high-risk data breaches that could personally affect them.</p>\n                                      </div>\n                                      <div class=\"modal-footer\">\n                                          <button type=\"button\" class=\"btn btn-secondary\">Accept</button>\n                                          <button type=\"button\" class=\"btn btn-link text-gray-600 ms-auto\" data-bs-dismiss=\"modal\">Close</button>\n                                      </div>\n                                  </div>\n                              </div>\n                          </div>\n                          <!-- End of Modal Content -->\n                      </div>\n                      <div class=\"col-lg-4\">\n                          <!-- Button Modal -->\n                          <button type=\"button\" class=\"btn btn-block btn-gray-800 mb-3\" data-bs-toggle=\"modal\" data-bs-target=\"#modal-notification\">Notification</button>\n                          <!-- Modal Content -->\n                          <div class=\"modal fade\" id=\"modal-notification\" tabindex=\"-1\" role=\"dialog\" aria-labelledby=\"modal-notification\" aria-hidden=\"true\">\n                              <div class=\"modal-dialog modal-info modal-dialog-centered\" role=\"document\">\n                                  <div class=\"modal-content bg-gradient-secondary\">\n                                      <button type=\"button\" class=\"btn-close theme-settings-close fs-6 ms-auto\" data-bs-dismiss=\"modal\" aria-label=\"Close\"></button>\n                                      <div class=\"modal-header\">\n                                          <p class=\"modal-title text-gray-200\" id=\"modal-title-notification\">A new experience, personalized for you.</p>\n                                      </div>\n                                      <div class=\"modal-body text-white\">\n                                          <div class=\"py-3 text-center\">\n                                              <span class=\"modal-icon\">\n                                                  <svg class=\"icon icon-xl text-gray-200\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M8.707 7.293a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l2-2a1 1 0 00-1.414-1.414L11 7.586V3a1 1 0 10-2 0v4.586l-.293-.293z\"></path><path d=\"M3 5a2 2 0 012-2h1a1 1 0 010 2H5v7h2l1 2h4l1-2h2V5h-1a1 1 0 110-2h1a2 2 0 012 2v10a2 2 0 01-2 2H5a2 2 0 01-2-2V5z\"></path></svg>\n                                              </span>\n                                              <h2 class=\"h4 modal-title my-3\">Important message!</h2>\n                                              <p>Do you know that you can assign status and relation to a company right in the visit list?</p>\n                                          </div>\n                                      </div>\n                                      <div class=\"modal-footer\">\n                                          <button type=\"button\" class=\"btn btn-sm btn-white\">Go to Inbox</button>\n                                      </div>\n                                  </div>\n                              </div>\n                          </div>\n                          <!-- End of Modal Content -->\n                      </div>\n                      <div class=\"col-lg-4\">\n                          <!-- Button Modal -->\n                          <button type=\"button\" class=\"btn btn-block btn-gray-800 mb-3\" data-bs-toggle=\"modal\" data-bs-target=\"#modal-form\">Sign\n                              In</button>\n                          <!-- Modal Content -->\n                          <div class=\"modal fade\" id=\"modal-form\" tabindex=\"-1\" role=\"dialog\" aria-labelledby=\"modal-form\" aria-hidden=\"true\">\n                              <div class=\"modal-dialog modal-dialog-centered\" role=\"document\">\n                                  <div class=\"modal-content\">\n                                      <div class=\"modal-body p-0\">\n                                          <div class=\"card p-3 p-lg-4\">\n                                              <button type=\"button\" class=\"btn-close ms-auto\" data-bs-dismiss=\"modal\" aria-label=\"Close\"></button>\n                                              <div class=\"text-center text-md-center mb-4 mt-md-0\">\n                                                  <h1 class=\"mb-0 h4\">Sign in to our platform</h1>\n                                              </div>\n                                              <form action=\"#\" class=\"mt-4\">\n                                                  <!-- Form -->\n                                                  <div class=\"form-group mb-4\">\n                                                      <label for=\"email\">Your Email</label>\n                                                      <div class=\"input-group\">\n                                                          <span class=\"input-group-text\" id=\"basic-addon1\">\n                                                              <svg class=\"icon icon-xs text-gray-600\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M2.003 5.884L10 9.882l7.997-3.998A2 2 0 0016 4H4a2 2 0 00-1.997 1.884z\"></path><path d=\"M18 8.118l-8 4-8-4V14a2 2 0 002 2h12a2 2 0 002-2V8.118z\"></path></svg>\n                                                          </span>\n                                                          <input type=\"email\" class=\"form-control\" placeholder=\"example@company.com\" id=\"email\" autofocus required>\n                                                      </div>  \n                                                  </div>\n                                                  <!-- End of Form -->\n                                                  <div class=\"form-group\">\n                                                      <!-- Form -->\n                                                      <div class=\"form-group mb-4\">\n                                                          <label for=\"password\">Your Password</label>\n                                                          <div class=\"input-group\">\n                                                              <span class=\"input-group-text\" id=\"basic-addon2\">\n                                                                  <svg class=\"icon icon-xs text-gray-600\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M5 9V7a5 5 0 0110 0v2a2 2 0 012 2v5a2 2 0 01-2 2H5a2 2 0 01-2-2v-5a2 2 0 012-2zm8-2v2H7V7a3 3 0 016 0z\" clip-rule=\"evenodd\"></path></svg>\n                                                              </span>\n                                                              <input type=\"password\" placeholder=\"Password\" class=\"form-control\" id=\"password\" required>\n                                                          </div>  \n                                                      </div>\n                                                      <!-- End of Form -->\n                                                      <div class=\"d-flex justify-content-between align-items-top mb-4\">\n                                                          <div class=\"form-check\">\n                                                              <input class=\"form-check-input\" type=\"checkbox\" value=\"\" id=\"remember\">\n                                                              <label class=\"form-check-label mb-0\" for=\"remember\">\n                                                                Remember me\n                                                              </label>\n                                                          </div>\n                                                          <div><a href=\"./forgot-password.html\" class=\"small text-right\">Lost password?</a></div>\n                                                      </div>\n                                                  </div>\n                                                  <div class=\"d-grid\">\n                                                      <button type=\"submit\" class=\"btn btn-gray-800\">Sign in</button>\n                                                  </div>\n                                              </form>\n                                              <div class=\"mt-3 mb-4 text-center\">\n                                                  <span class=\"fw-normal\">or login with</span>\n                                              </div>\n                                              <div class=\"d-flex justify-content-center my-4\">\n                                                  <a href=\"#\" class=\"btn btn-icon-only btn-pill btn-outline-gray-500 me-2\" type=\"button\" aria-label=\"facebook button\" title=\"facebook button\">\n                                                      <svg class=\"icon icon-xxs\" aria-hidden=\"true\" focusable=\"false\" data-prefix=\"fab\" data-icon=\"facebook-f\" role=\"img\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 320 512\"><path fill=\"currentColor\" d=\"M279.14 288l14.22-92.66h-88.91v-60.13c0-25.35 12.42-50.06 52.24-50.06h40.42V6.26S260.43 0 225.36 0c-73.22 0-121.08 44.38-121.08 124.72v70.62H22.89V288h81.39v224h100.17V288z\"></path></svg>\n                                                  </a>\n                                                  <a href=\"#\" class=\"btn btn-icon-only btn-pill btn-outline-gray-500 me-2\" type=\"button\" aria-label=\"twitter button\" title=\"twitter button\">\n                                                      <svg class=\"icon icon-xxs\" aria-hidden=\"true\" focusable=\"false\" data-prefix=\"fab\" data-icon=\"twitter\" role=\"img\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\"><path fill=\"currentColor\" d=\"M459.37 151.716c.325 4.548.325 9.097.325 13.645 0 138.72-105.583 298.558-298.558 298.558-59.452 0-114.68-17.219-161.137-47.106 8.447.974 16.568 1.299 25.34 1.299 49.055 0 94.213-16.568 130.274-44.832-46.132-.975-84.792-31.188-98.112-72.772 6.498.974 12.995 1.624 19.818 1.624 9.421 0 18.843-1.3 27.614-3.573-48.081-9.747-84.143-51.98-84.143-102.985v-1.299c13.969 7.797 30.214 12.67 47.431 13.319-28.264-18.843-46.781-51.005-46.781-87.391 0-19.492 5.197-37.36 14.294-52.954 51.655 63.675 129.3 105.258 216.365 109.807-1.624-7.797-2.599-15.918-2.599-24.04 0-57.828 46.782-104.934 104.934-104.934 30.213 0 57.502 12.67 76.67 33.137 23.715-4.548 46.456-13.32 66.599-25.34-7.798 24.366-24.366 44.833-46.132 57.827 21.117-2.273 41.584-8.122 60.426-16.243-14.292 20.791-32.161 39.308-52.628 54.253z\"></path></svg>\n                                                  </a>\n                                                  <a href=\"#\" class=\"btn btn-icon-only btn-pill btn-outline-gray-500\" type=\"button\" aria-label=\"github button\" title=\"github button\">\n                                                      <svg class=\"icon icon-xxs\" aria-hidden=\"true\" focusable=\"false\" data-prefix=\"fab\" data-icon=\"github\" role=\"img\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 496 512\"><path fill=\"currentColor\" d=\"M165.9 397.4c0 2-2.3 3.6-5.2 3.6-3.3.3-5.6-1.3-5.6-3.6 0-2 2.3-3.6 5.2-3.6 3-.3 5.6 1.3 5.6 3.6zm-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9 2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5.3-6.2 2.3zm44.2-1.7c-2.9.7-4.9 2.6-4.6 4.9.3 2 2.9 3.3 5.9 2.6 2.9-.7 4.9-2.6 4.6-4.6-.3-1.9-3-3.2-5.9-2.9zM244.8 8C106.1 8 0 113.3 0 252c0 110.9 69.8 205.8 169.5 239.2 12.8 2.3 17.3-5.6 17.3-12.1 0-6.2-.3-40.4-.3-61.4 0 0-70 15-84.7-29.8 0 0-11.4-29.1-27.8-36.6 0 0-22.9-15.7 1.6-15.4 0 0 24.9 2 38.6 25.8 21.9 38.6 58.6 27.5 72.9 20.9 2.3-16 8.8-27.1 16-33.7-55.9-6.2-112.3-14.3-112.3-110.5 0-27.5 7.6-41.3 23.6-58.9-2.6-6.5-11.1-33.3 2.6-67.9 20.9-6.5 69 27 69 27 20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27 13.7 34.7 5.2 61.4 2.6 67.9 16 17.7 25.8 31.5 25.8 58.9 0 96.5-58.9 104.2-114.8 110.5 9.2 7.9 17 22.9 17 46.4 0 33.7-.3 75.4-.3 83.6 0 6.5 4.6 14.4 17.3 12.1C428.2 457.8 496 362.9 496 252 496 113.3 383.5 8 244.8 8zM97.2 352.9c-1.3 1-1 3.3.7 5.2 1.6 1.6 3.9 2.3 5.2 1 1.3-1 1-3.3-.7-5.2-1.6-1.6-3.9-2.3-5.2-1zm-10.8-8.1c-.7 1.3.3 2.9 2.3 3.9 1.6 1 3.6.7 4.3-.7.7-1.3-.3-2.9-2.3-3.9-2-.6-3.6-.3-4.3.7zm32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2 2.3 2.3 5.2 2.6 6.5 1 1.3-1.3.7-4.3-1.3-6.2-2.2-2.3-5.2-2.6-6.5-1zm-11.4-14.7c-1.6 1-1.6 3.6 0 5.9 1.6 2.3 4.3 3.3 5.6 2.3 1.6-1.3 1.6-3.9 0-6.2-1.4-2.3-4-3.3-5.6-2z\"></path></svg>\n                                                  </a>\n                                              </div>\n                                              <div class=\"d-flex justify-content-center align-items-center mt-4\">\n                                                  <span class=\"fw-normal\">\n                                                      Not registered?\n                                                      <a href=\"./sign-up.html\" class=\"fw-bold\">Create account</a>\n                                                  </span>\n                                              </div>\n                                          </div>\n                                      </div>\n                                  </div>\n                              </div>\n                          </div>\n                          <!-- End of Modal Content -->\n                      </div>\n                      <div class=\"col-lg-4\">\n                          <!-- Button Modal -->\n                          <button type=\"button\" class=\"btn btn-block btn-gray-800 mb-3\" data-bs-toggle=\"modal\" data-bs-target=\"#modal-form-signup\">Sign Up</button>\n                          <!-- Modal Content -->\n                          <div class=\"modal fade\" id=\"modal-form-signup\" tabindex=\"-1\" role=\"dialog\" aria-labelledby=\"modal-form-signup\" aria-hidden=\"true\">\n                              <div class=\"modal-dialog modal-dialog-centered\" role=\"document\">\n                                  <div class=\"modal-content\">\n                                      <div class=\"modal-body p-0\">\n                                          <div class=\"card p-3 p-lg-4\">\n                                              <button type=\"button\" class=\"btn-close ms-auto\" data-bs-dismiss=\"modal\" aria-label=\"Close\"></button>\n                                              <div class=\"text-center text-md-center mb-4 mt-md-0\">\n                                                  <h1 class=\"mb-0 h4\">Create Account </h1>\n                                              </div>\n                                              <form action=\"#\" class=\"mt-4\">\n                                                  <!-- Form -->\n                                                  <div class=\"form-group mb-4\">\n                                                      <label for=\"email\">Your Email</label>\n                                                      <div class=\"input-group\">\n                                                          <span class=\"input-group-text\" id=\"basic-addon1\">\n                                                              <svg class=\"icon icon-xs text-gray-600\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M2.003 5.884L10 9.882l7.997-3.998A2 2 0 0016 4H4a2 2 0 00-1.997 1.884z\"></path><path d=\"M18 8.118l-8 4-8-4V14a2 2 0 002 2h12a2 2 0 002-2V8.118z\"></path></svg>\n                                                          </span>\n                                                          <input type=\"email\" class=\"form-control\" placeholder=\"example@company.com\" id=\"email\" autofocus required>\n                                                      </div>  \n                                                  </div>\n                                                  <!-- End of Form -->\n                                                  <div class=\"form-group\">\n                                                      <!-- Form -->\n                                                      <div class=\"form-group mb-4\">\n                                                          <label for=\"password\">Your Password</label>\n                                                          <div class=\"input-group\">\n                                                              <span class=\"input-group-text\" id=\"basic-addon2\">\n                                                                  <svg class=\"icon icon-xs text-gray-600\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M5 9V7a5 5 0 0110 0v2a2 2 0 012 2v5a2 2 0 01-2 2H5a2 2 0 01-2-2v-5a2 2 0 012-2zm8-2v2H7V7a3 3 0 016 0z\" clip-rule=\"evenodd\"></path></svg>\n                                                              </span>\n                                                              <input type=\"password\" placeholder=\"Password\" class=\"form-control\" id=\"password\" required>\n                                                          </div>  \n                                                      </div>\n                                                      <!-- End of Form -->\n                                                      <!-- Form -->\n                                                      <div class=\"form-group mb-4\">\n                                                          <label for=\"confirm_password\">Confirm Password</label>\n                                                          <div class=\"input-group\">\n                                                              <span class=\"input-group-text\" id=\"basic-addon2\">\n                                                                  <svg class=\"icon icon-xs text-gray-600\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M5 9V7a5 5 0 0110 0v2a2 2 0 012 2v5a2 2 0 01-2 2H5a2 2 0 01-2-2v-5a2 2 0 012-2zm8-2v2H7V7a3 3 0 016 0z\" clip-rule=\"evenodd\"></path></svg>\n                                                              </span>\n                                                              <input type=\"password\" placeholder=\"Confirm Password\" class=\"form-control\" id=\"confirm_password\" required>\n                                                          </div>  \n                                                      </div>\n                                                      <!-- End of Form -->\n                                                      <div class=\"mb-4\">\n                                                          <div class=\"form-check\">\n                                                              <input class=\"form-check-input\" type=\"checkbox\" value=\"\" id=\"remember\">\n                                                              <label class=\"form-check-label fw-normal mb-0\" for=\"remember\">\n                                                                  I agree to the <a href=\"#\" class=\"fw-bold\">terms and conditions</a>\n                                                              </label>\n                                                          </div>\n                                                      </div>\n                                                  </div>\n                                                  <div class=\"d-grid\">\n                                                      <button type=\"submit\" class=\"btn btn-gray-800\">Sign up</button>\n                                                  </div>\n                                              </form>\n                                              <div class=\"mt-3 mb-4 text-center\">\n                                                  <span class=\"fw-normal\">or login with</span>\n                                              </div>\n                                              <div class=\"d-flex justify-content-center my-3\">\n                                                  <a href=\"#\" class=\"btn btn-icon-only btn-pill btn-outline-gray-500 me-2\" type=\"button\" aria-label=\"facebook button\" title=\"facebook button\">\n                                                      <svg class=\"icon icon-xxs\" aria-hidden=\"true\" focusable=\"false\" data-prefix=\"fab\" data-icon=\"facebook-f\" role=\"img\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 320 512\"><path fill=\"currentColor\" d=\"M279.14 288l14.22-92.66h-88.91v-60.13c0-25.35 12.42-50.06 52.24-50.06h40.42V6.26S260.43 0 225.36 0c-73.22 0-121.08 44.38-121.08 124.72v70.62H22.89V288h81.39v224h100.17V288z\"></path></svg>\n                                                  </a>\n                                                  <a href=\"#\" class=\"btn btn-icon-only btn-pill btn-outline-gray-500 me-2\" type=\"button\" aria-label=\"twitter button\" title=\"twitter button\">\n                                                      <svg class=\"icon icon-xxs\" aria-hidden=\"true\" focusable=\"false\" data-prefix=\"fab\" data-icon=\"twitter\" role=\"img\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\"><path fill=\"currentColor\" d=\"M459.37 151.716c.325 4.548.325 9.097.325 13.645 0 138.72-105.583 298.558-298.558 298.558-59.452 0-114.68-17.219-161.137-47.106 8.447.974 16.568 1.299 25.34 1.299 49.055 0 94.213-16.568 130.274-44.832-46.132-.975-84.792-31.188-98.112-72.772 6.498.974 12.995 1.624 19.818 1.624 9.421 0 18.843-1.3 27.614-3.573-48.081-9.747-84.143-51.98-84.143-102.985v-1.299c13.969 7.797 30.214 12.67 47.431 13.319-28.264-18.843-46.781-51.005-46.781-87.391 0-19.492 5.197-37.36 14.294-52.954 51.655 63.675 129.3 105.258 216.365 109.807-1.624-7.797-2.599-15.918-2.599-24.04 0-57.828 46.782-104.934 104.934-104.934 30.213 0 57.502 12.67 76.67 33.137 23.715-4.548 46.456-13.32 66.599-25.34-7.798 24.366-24.366 44.833-46.132 57.827 21.117-2.273 41.584-8.122 60.426-16.243-14.292 20.791-32.161 39.308-52.628 54.253z\"></path></svg>\n                                                  </a>\n                                                  <a href=\"#\" class=\"btn btn-icon-only btn-pill btn-outline-gray-500\" type=\"button\" aria-label=\"github button\" title=\"github button\">\n                                                      <svg class=\"icon icon-xxs\" aria-hidden=\"true\" focusable=\"false\" data-prefix=\"fab\" data-icon=\"github\" role=\"img\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 496 512\"><path fill=\"currentColor\" d=\"M165.9 397.4c0 2-2.3 3.6-5.2 3.6-3.3.3-5.6-1.3-5.6-3.6 0-2 2.3-3.6 5.2-3.6 3-.3 5.6 1.3 5.6 3.6zm-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9 2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5.3-6.2 2.3zm44.2-1.7c-2.9.7-4.9 2.6-4.6 4.9.3 2 2.9 3.3 5.9 2.6 2.9-.7 4.9-2.6 4.6-4.6-.3-1.9-3-3.2-5.9-2.9zM244.8 8C106.1 8 0 113.3 0 252c0 110.9 69.8 205.8 169.5 239.2 12.8 2.3 17.3-5.6 17.3-12.1 0-6.2-.3-40.4-.3-61.4 0 0-70 15-84.7-29.8 0 0-11.4-29.1-27.8-36.6 0 0-22.9-15.7 1.6-15.4 0 0 24.9 2 38.6 25.8 21.9 38.6 58.6 27.5 72.9 20.9 2.3-16 8.8-27.1 16-33.7-55.9-6.2-112.3-14.3-112.3-110.5 0-27.5 7.6-41.3 23.6-58.9-2.6-6.5-11.1-33.3 2.6-67.9 20.9-6.5 69 27 69 27 20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27 13.7 34.7 5.2 61.4 2.6 67.9 16 17.7 25.8 31.5 25.8 58.9 0 96.5-58.9 104.2-114.8 110.5 9.2 7.9 17 22.9 17 46.4 0 33.7-.3 75.4-.3 83.6 0 6.5 4.6 14.4 17.3 12.1C428.2 457.8 496 362.9 496 252 496 113.3 383.5 8 244.8 8zM97.2 352.9c-1.3 1-1 3.3.7 5.2 1.6 1.6 3.9 2.3 5.2 1 1.3-1 1-3.3-.7-5.2-1.6-1.6-3.9-2.3-5.2-1zm-10.8-8.1c-.7 1.3.3 2.9 2.3 3.9 1.6 1 3.6.7 4.3-.7.7-1.3-.3-2.9-2.3-3.9-2-.6-3.6-.3-4.3.7zm32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2 2.3 2.3 5.2 2.6 6.5 1 1.3-1.3.7-4.3-1.3-6.2-2.2-2.3-5.2-2.6-6.5-1zm-11.4-14.7c-1.6 1-1.6 3.6 0 5.9 1.6 2.3 4.3 3.3 5.6 2.3 1.6-1.3 1.6-3.9 0-6.2-1.4-2.3-4-3.3-5.6-2z\"></path></svg>\n                                                  </a>\n                                              </div>\n                                              <div class=\"d-flex justify-content-center align-items-center mt-4\">\n                                                  <span class=\"fw-normal\">\n                                                      Already have an account? \n                                                      <a href=\"./sign-in.html\" class=\"fw-bold\">Login here</a>\n                                                  </span>\n                                              </div>\n                                          </div>\n                                      </div>\n                                  </div>\n                              </div>\n                          </div>\n                          <!-- End of Modal Content -->\n                      </div>\n                      <div class=\"col-lg-4\">\n                          <!-- Button Modal -->\n                          <button type=\"button\" class=\"btn btn-block btn-gray-800 mb-3\" data-bs-toggle=\"modal\" data-bs-target=\"#modal-achievement\">Achievement</button>\n                          <!-- Modal Content -->\n                          <div class=\"modal fade\" id=\"modal-achievement\" tabindex=\"-1\" role=\"dialog\" aria-labelledby=\"modal-achievement\" aria-hidden=\"true\">\n                              <div class=\"modal-dialog modal-tertiary modal-dialog-centered\" role=\"document\">\n                                  <div class=\"modal-content\">\n                                      <button type=\"button\" class=\"btn-close theme-settings-close fs-6 ms-auto\" data-bs-dismiss=\"modal\" aria-label=\"Close\"></button>\n                                      <div class=\"modal-header mx-auto\">\n                                          <p class=\"lead mb-0 text-white\">You just unlocked a new badge</p>\n                                      </div>\n                                      <div class=\"modal-body pt-0\">\n                                          <div class=\"py-3 px-5 text-center\">\n                                              <span class=\"modal-icon display-1 text-white\">\n                                                  <svg class=\"icon icon-lg text-gray-200\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M12.395 2.553a1 1 0 00-1.45-.385c-.345.23-.614.558-.822.88-.214.33-.403.713-.57 1.116-.334.804-.614 1.768-.84 2.734a31.365 31.365 0 00-.613 3.58 2.64 2.64 0 01-.945-1.067c-.328-.68-.398-1.534-.398-2.654A1 1 0 005.05 6.05 6.981 6.981 0 003 11a7 7 0 1011.95-4.95c-.592-.591-.98-.985-1.348-1.467-.363-.476-.724-1.063-1.207-2.03zM12.12 15.12A3 3 0 017 13s.879.5 2.5.5c0-1 .5-4 1.25-4.5.5 1 .786 1.293 1.371 1.879A2.99 2.99 0 0113 13a2.99 2.99 0 01-.879 2.121z\" clip-rule=\"evenodd\"></path></svg>\n                                              </span>\n                                              <h2 class=\"h3 modal-title mb-3 text-white\">Author Level 5</h2>\n                                              <p class=\"mb-4 text-white\">One Thousand Dollars! Well done mate - heads are turning your way.</p>\n                                              <div class=\"progress mb-0\">\n                                                  <div class=\"progress-bar bg-secondary\" role=\"progressbar\" style=\"width: 50%\" aria-valuenow=\"50\" aria-valuemin=\"0\" aria-valuemax=\"100\"></div>\n                                              </div>\n                                          </div>\n                                      </div>\n                                      <div class=\"modal-footer d-flex justify-content-center pt-0 pb-3\">\n                                          <button type=\"button\" class=\"btn btn-sm btn-white text-tertiary\" data-bs-dismiss=\"modal\">Awesome!</button>\n                                      </div>\n                                  </div>\n                              </div>\n                          </div>\n                          <!-- End of Modal Content -->\n                      </div>\n                      <div class=\"col-lg-4\">\n                          <!-- Button Modal -->\n                          <button type=\"button\" class=\"btn btn-block btn-gray-800 mb-3\" data-bs-toggle=\"modal\" data-bs-target=\"#modal-subscribe\">Subscribe</button>\n                          <!-- Modal Content -->\n                          <div class=\"modal fade\" id=\"modal-subscribe\" tabindex=\"-1\" role=\"dialog\" aria-labelledby=\"modal-subscribe\" aria-hidden=\"true\">\n                              <div class=\"modal-dialog modal-tertiary modal-dialog-centered modal-lg\" role=\"document\">\n                                  <div class=\"modal-content bg-dark text-white\">\n                                      <div class=\"modal-header\">\n                                          <button type=\"button\" class=\"btn-close btn-close-white text-white\" data-bs-dismiss=\"modal\" aria-label=\"Close\"></button>\n                                      </div>\n                                      <div class=\"modal-body text-center py-3\">\n                                          <span class=\"modal-icon\">\n                                              <svg class=\"icon icon-xl text-gray-200 mb-4\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M2.94 6.412A2 2 0 002 8.108V16a2 2 0 002 2h12a2 2 0 002-2V8.108a2 2 0 00-.94-1.696l-6-3.75a2 2 0 00-2.12 0l-6 3.75zm2.615 2.423a1 1 0 10-1.11 1.664l5 3.333a1 1 0 001.11 0l5-3.333a1 1 0 00-1.11-1.664L10 11.798 5.555 8.835z\" clip-rule=\"evenodd\"></path></svg>\n                                          </span>\n                                          <h3 class=\"modal-title mb-3\">Join our 1,360,462 subscribers</h3>\n                                          <p class=\"mb-4 lead\">Get exclusive access to freebies, premium products and news.</p>\n                                          <div class=\"form-group px-lg-5\">\n                                              <div class=\"d-flex mb-3 justify-content-center\">\n                                                  <input type=\"text\" id=\"subscribe\" class=\"me-sm-1 mb-sm-0 form-control form-control-lg\" placeholder=\"example@company.com\">\n                                                  <div>\n                                                      <button type=\"submit\" class=\"ms-2 btn large-form-btn btn-secondary\">Subscribe</button>\n                                                  </div>\n                                              </div>\n                                          </div>\n                                      </div>\n                                      <div class=\"modal-footer z-2 mx-auto text-center\">\n                                          <p class=\"text-white font-small\">\n                                              We’ll never share your details with third parties.\n                                              <br class=\"visible-md\">View our <a href=\"#\">Privacy Policy</a> for more info.\n                                          </p>\n                                      </div>\n                                  </div>\n                              </div>\n                          </div>\n                          <!-- End of Modal Content -->\n                      </div>\n                  </div>\n              </div>\n          </div>\n      </div>\n  </div>\n\n{% endblock content %}\n\n<!-- Specific Page JS goes HERE  -->\n{% block javascripts %}{% endblock javascripts %}\n"
  },
  {
    "path": "templates/home/components-notifications.html",
    "content": "{% extends \"layouts/base.html\" %}\n\n{% block title %} UI Notifications {% endblock %} \n\n<!-- Specific Page CSS goes HERE  -->\n{% block stylesheets %}{% endblock stylesheets %}\n\n{% block content %}\n\n    <div class=\"py-4\">\n        <nav aria-label=\"breadcrumb\" class=\"d-none d-md-inline-block\">\n            <ol class=\"breadcrumb breadcrumb-dark breadcrumb-transparent\">\n                <li class=\"breadcrumb-item\">\n                    <a href=\"#\">\n                        <svg class=\"icon icon-xxs\" fill=\"none\" stroke=\"currentColor\" viewBox=\"0 0 24 24\"\n                            xmlns=\"http://www.w3.org/2000/svg\">\n                            <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\"\n                                d=\"M3 12l2-2m0 0l7-7 7 7M5 10v10a1 1 0 001 1h3m10-11l2 2m-2-2v10a1 1 0 01-1 1h-3m-6 0a1 1 0 001-1v-4a1 1 0 011-1h2a1 1 0 011 1v4a1 1 0 001 1m-6 0h6\">\n                            </path>\n                        </svg>\n                    </a>\n                </li>\n                <li class=\"breadcrumb-item\"><a href=\"#\">Volt</a></li>\n                <li class=\"breadcrumb-item active\" aria-current=\"page\">Notifications</li>\n            </ol>\n        </nav>\n        <div class=\"d-flex justify-content-between w-100 flex-wrap\">\n            <div class=\"mb-3 mb-lg-0\">\n                <h1 class=\"h4\">Notifications</h1>\n                <p class=\"mb-0\">Dozens of reusable components built to provide buttons, alerts, popovers, and more.\n                </p>\n            </div>\n        </div>\n    </div>\n\n    <div class=\"row\">\n        <div class=\"col-12 col-lg-6\">\n            <div class=\"card border-0 shadow\">\n                <div class=\"card-header border-gray-100 d-flex justify-content-between align-items-center\">\n                    <h2 class=\"h4 mb-0\">Sweet alerts</h2>\n                    <a href=\"https://themesberg.com/docs/volt-bootstrap-5-dashboard/plugins/sweet-alerts/\"\n                        class=\"btn btn-outline-gray-500 d-inline-flex align-items-center\">\n                        <svg class=\"icon icon-xxs me-2\" fill=\"currentColor\" viewBox=\"0 0 20 20\"\n                            xmlns=\"http://www.w3.org/2000/svg\">\n                            <path fill-rule=\"evenodd\"\n                                d=\"M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-8-3a1 1 0 00-.867.5 1 1 0 11-1.731-1A3 3 0 0113 8a3.001 3.001 0 01-2 2.83V11a1 1 0 11-2 0v-1a1 1 0 011-1 1 1 0 100-2zm0 8a1 1 0 100-2 1 1 0 000 2z\"\n                                clip-rule=\"evenodd\"></path>\n                        </svg>\n                        Documentation\n                    </a>\n                </div>\n                <div class=\"card-body\">\n                    <button class=\"btn btn-gray-800\" id=\"basicAlert\">Basic alert</button>\n                    <button class=\"btn btn-info\" id=\"infoAlert\">Info alert</button>\n                    <button class=\"btn btn-success\" id=\"successAlert\">Success alert</button>\n                    <button class=\"btn btn-danger\" id=\"dangerAlert\">Danger alert</button>\n                    <button class=\"btn btn-warning\" id=\"warningAlert\">Warning alert</button>\n                    <button class=\"btn btn-gray-200\" id=\"questionAlert\">Question</button>\n                </div>\n            </div>\n        </div>\n        <div class=\"col-12 col-lg-6\">\n            <div class=\"card border-0 shadow\">\n                <div class=\"card-header border-gray-100 d-flex justify-content-between align-items-center\">\n                    <h2 class=\"h4 mb-0\">Notyf</h2>\n                    <a href=\"https://themesberg.com/docs/volt-bootstrap-5-dashboard/plugins/notifications/\"\n                        class=\"btn btn-outline-gray-500 d-inline-flex align-items-center\">\n                        <svg class=\"icon icon-xxs me-2\" fill=\"currentColor\" viewBox=\"0 0 20 20\"\n                            xmlns=\"http://www.w3.org/2000/svg\">\n                            <path fill-rule=\"evenodd\"\n                                d=\"M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-8-3a1 1 0 00-.867.5 1 1 0 11-1.731-1A3 3 0 0113 8a3.001 3.001 0 01-2 2.83V11a1 1 0 11-2 0v-1a1 1 0 011-1 1 1 0 100-2zm0 8a1 1 0 100-2 1 1 0 000 2z\"\n                                clip-rule=\"evenodd\"></path>\n                        </svg>\n                        Documentation\n                    </a>\n                </div>\n                <div class=\"card-body\">\n                    <button class=\"btn btn-info\" id=\"notifyTopLeft\">Top left info</button>\n                    <button class=\"btn btn-danger\" id=\"notifyTopRight\">Top right danger</button>\n                    <button class=\"btn btn-warning\" id=\"notifyBottomLeft\">Bottom left warning</button>\n                    <button class=\"btn btn-gray-800\" id=\"notifyBottomRight\">Primary bottom right</button>\n                </div>\n            </div>\n        </div>\n    </div>\n\n{% endblock content %}\n\n<!-- Specific Page JS goes HERE  -->\n{% block javascripts %}\n\n    <script>\n\n        const swalWithBootstrapButtons = Swal.mixin({\n            customClass: {\n                confirmButton: 'btn btn-primary',\n                cancelButton: 'btn btn-gray'\n            },\n            buttonsStyling: false\n        });\n\n        // SweetAlert 2\n        document.getElementById('basicAlert').addEventListener('click', function () {\n            swalWithBootstrapButtons.fire(\n                'Basic alert',\n                'You clicked the button!'\n            )\n        });\n\n        document.getElementById('infoAlert').addEventListener('click', function () {\n            swalWithBootstrapButtons.fire(\n                'Info alert',\n                'You clicked the button!',\n                'info'\n            )\n        });\n\n        document.getElementById('successAlert').addEventListener('click', function () {\n            swalWithBootstrapButtons.fire({\n                icon: 'success',\n                title: 'Success alert',\n                text: 'Your work has been saved',\n                showConfirmButton: true,\n                timer: 1500\n            })\n        });\n\n        document.getElementById('warningAlert').addEventListener('click', function () {\n            swalWithBootstrapButtons.fire(\n                'Warning alert',\n                'You clicked the button!',\n                'warning'\n            )\n        });\n\n        document.getElementById('dangerAlert').addEventListener('click', function () {\n            swalWithBootstrapButtons.fire({\n                icon: 'error',\n                title: 'Oops...',\n                text: 'Something went wrong!',\n                footer: '<a href>Why do I have this issue?</a>'\n            })\n        });\n\n        document.getElementById('questionAlert').addEventListener('click', function () {\n            swalWithBootstrapButtons.fire(\n                'The Internet?',\n                'That thing is still around?',\n                'question'\n            );\n        });\n\n        document.getElementById('notifyTopLeft').addEventListener('click', function () {\n            const notyf = new Notyf({\n                position: {\n                    x: 'left',\n                    y: 'top',\n                },\n                types: [\n                    {\n                        type: 'info',\n                        background: '#0948B3',\n                        icon: {\n                            className: 'fas fa-info-circle',\n                            tagName: 'span',\n                            color: '#fff'\n                        },\n                        dismissible: false\n                    }\n                ]\n            });\n            notyf.open({\n                type: 'info',\n                message: 'Send us <b>an email</b> to get support'\n            });\n        });\n\n        document.getElementById('notifyTopRight').addEventListener('click', function () {\n            const notyf = new Notyf({\n                position: {\n                    x: 'right',\n                    y: 'top',\n                },\n                types: [\n                    {\n                        type: 'error',\n                        background: '#FA5252',\n                        icon: {\n                            className: 'fas fa-times',\n                            tagName: 'span',\n                            color: '#fff'\n                        },\n                        dismissible: false\n                    }\n                ]\n            });\n            notyf.open({\n                type: 'error',\n                message: 'This action is not allowed.'\n            });\n        });\n\n        document.getElementById('notifyBottomLeft').addEventListener('click', function () {\n            const notyf = new Notyf({\n                position: {\n                    x: 'left',\n                    y: 'bottom',\n                },\n                types: [\n                    {\n                        type: 'warning',\n                        background: '#F5B759',\n                        icon: {\n                            className: 'fas fa-exclamation-triangle',\n                            tagName: 'span',\n                            color: '#fff'\n                        },\n                        dismissible: false\n                    }\n                ]\n            });\n            notyf.open({\n                type: 'warning',\n                message: 'This might be dangerous.'\n            });\n        });\n\n        document.getElementById('notifyBottomRight').addEventListener('click', function () {\n            const notyf = new Notyf({\n                position: {\n                    x: 'right',\n                    y: 'bottom',\n                },\n                types: [\n                    {\n                        type: 'info',\n                        background: '#262B40',\n                        icon: {\n                            className: 'fas fa-comment-dots',\n                            tagName: 'span',\n                            color: '#fff'\n                        },\n                        dismissible: false\n                    }\n                ]\n            });\n            notyf.open({\n                type: 'info',\n                message: 'John Garreth: Are you ready for the presentation?'\n            });\n        });\n\n    </script>\n    \n{% endblock javascripts %}\n"
  },
  {
    "path": "templates/home/components-typography.html",
    "content": "{% extends \"layouts/base.html\" %}\n\n{% block title %} UI Typography {% endblock %} \n\n<!-- Specific Page CSS goes HERE  -->\n{% block stylesheets %}{% endblock stylesheets %}\n\n{% block content %}\n\n  <div class=\"py-4\">\n      <nav aria-label=\"breadcrumb\" class=\"d-none d-md-inline-block\">\n          <ol class=\"breadcrumb breadcrumb-dark breadcrumb-transparent\">\n              <li class=\"breadcrumb-item\">\n                  <a href=\"#\">\n                      <svg class=\"icon icon-xxs\" fill=\"none\" stroke=\"currentColor\" viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M3 12l2-2m0 0l7-7 7 7M5 10v10a1 1 0 001 1h3m10-11l2 2m-2-2v10a1 1 0 01-1 1h-3m-6 0a1 1 0 001-1v-4a1 1 0 011-1h2a1 1 0 011 1v4a1 1 0 001 1m-6 0h6\"></path></svg>\n                  </a>\n              </li>\n              <li class=\"breadcrumb-item\"><a href=\"#\">Volt</a></li>\n              <li class=\"breadcrumb-item active\" aria-current=\"page\">Typography</li>\n          </ol>\n      </nav>\n      <div class=\"d-flex justify-content-between w-100 flex-wrap\">\n          <div class=\"mb-3 mb-lg-0\">\n              <h1 class=\"h4\">Typography</h1>\n              <p class=\"mb-0\">Dozens of reusable components built to provide buttons, alerts, popovers, and more.</p>\n          </div>\n          <div>\n              <a href=\"https://themesberg.com/docs/volt-bootstrap-5-dashboard/foundation/typography/\" class=\"btn btn-outline-gray-600 d-inline-flex align-items-center\">\n                  <svg class=\"icon icon-xs me-1\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-8-3a1 1 0 00-.867.5 1 1 0 11-1.731-1A3 3 0 0113 8a3.001 3.001 0 01-2 2.83V11a1 1 0 11-2 0v-1a1 1 0 011-1 1 1 0 100-2zm0 8a1 1 0 100-2 1 1 0 000 2z\" clip-rule=\"evenodd\"></path></svg>\n                  Typography Docs\n              </a>\n          </div>\n      </div>\n  </div>\n\n  <div class=\"row\">\n      <div class=\"col-12 mb-4\">\n          <div class=\"card border-0 shadow components-section\">\n              <div class=\"card-body\">     \n                  <div class=\"row mb-4 mb-lg-5\">                                           \n                      <div class=\"col-12 col-md-6\">\n                          <h2 class=\"h5 mb-3\">Headings</h2>\n                          <h1>h1. Themesberg heading</h1>\n                          <h2>h2. Themesberg heading</h2>\n                          <h3>h3. Themesberg heading</h3>\n                          <h4>h4. Themesberg heading</h4>\n                          <h5>h5. Themesberg heading</h5>\n                          <h6>h6. Themesberg heading</h6>\n                      </div>\n                      <div class=\"col-12 col-md-6\">\n                          <h2 class=\"h5 mb-3\">Display Headings</h2>\n                          <h1 class=\"display-1\">Display 1</h1>\n                          <h1 class=\"display-2\">Display 2</h1>\n                          <h1 class=\"display-3\">Display 3</h1>\n                          <h1 class=\"display-4\">Display 4</h1>\n                      </div>\n                  </div>\n                  <!-- Title  -->\n                  <div class=\"row\">\n                      <div class=\"col-md-4\">\n                          <div class=\"mb-5\">\n                              <h2 class=\"h5 mb-3\">Paragraphs</h2>\n                          </div>\n                      </div>\n                  </div>\n                  <!-- End of Title -->\n                  <div class=\"row mb-4 mb-lg-5\">\n                      <div class=\"col-md-6\">\n                          <div class=\"mb-3\">\n                              <span class=\"h6 fw-bold\">Simple paragraph</span>\n                          </div>\n                          <p>Start your development with a Pixel Design System for Bootstrap 4. Themesberg makes beautiful products to help people with creative ideas succeed.Our company empowers millions of people.\n                          </p>\n                      </div>\n                      <div class=\"col-md-6\">\n                          <div class=\"mt-5 mb-3 mt-sm-0\">\n                              <span class=\"h6 fw-bold\">Lead paragraph</span>\n                          </div>\n                          <p class=\"lead\">Start your development with a Pixel Design System for Bootstrap 4.Themesberg makes beautiful products to help people with creative ideas succeed.Our company empowers millions of people.</p>\n                      </div>\n                  </div>\n                  <div class=\"row mt-4 mb-3 align-items-center\">\n                      <div class=\"col-sm-2\">\n                          <small class=\"text-uppercase text-muted\">Dark text</small>\n                      </div>\n                      <div class=\"col-sm-10\">\n                          <p class=\"text-dark mb-0\">Design is not just what it looks like and feels like. Design is how it works.</p>\n                      </div>\n                  </div>\n                  <div class=\"row py-3 align-items-center\">\n                      <div class=\"col-sm-2\">\n                          <small class=\"text-uppercase text-muted\">Primary text</small>\n                      </div>\n                      <div class=\"col-sm-10\">\n                          <p class=\"text-primary mb-0\">Design is not just what it looks like and feels like. Design is how it works.</p>\n                      </div>\n                  </div>\n                  <div class=\"row py-3 align-items-center\">\n                      <div class=\"col-sm-2\">\n                          <small class=\"text-uppercase text-muted\">Secondary text</small>\n                      </div>\n                      <div class=\"col-sm-10\">\n                          <p class=\"text-secondary mb-0\">Design is not just what it looks like and feels like. Design is how it works.</p>\n                      </div>\n                  </div>\n                  <div class=\"row py-3 align-items-center\">\n                      <div class=\"col-sm-2\">\n                          <small class=\"text-uppercase text-muted\">Tertiary text</small>\n                      </div>\n                      <div class=\"col-sm-10\">\n                          <p class=\"text-tertiary mb-0\">Design is not just what it looks like and feels like. Design is how it works.</p>\n                      </div>\n                  </div>\n                  <div class=\"row py-3 align-items-center\">\n                      <div class=\"col-sm-2\">\n                          <small class=\"text-uppercase text-muted\">Info text</small>\n                      </div>\n                      <div class=\"col-sm-10\">\n                          <p class=\"text-info mb-0\">Design is not just what it looks like and feels like. Design is how it works.</p>\n                      </div>\n                  </div>\n                  <div class=\"row py-3 align-items-center\">\n                      <div class=\"col-sm-2\">\n                          <small class=\"text-uppercase text-muted\">Danger text</small>\n                      </div>\n                      <div class=\"col-sm-10\">\n                          <p class=\"text-danger mb-0\">Design is not just what it looks like and feels like. Design is how it works.</p>\n                      </div>\n                  </div>\n                  <div class=\"row py-3 align-items-center\">\n                      <div class=\"col-sm-2\">\n                          <small class=\"text-uppercase text-muted\">Success text</small>\n                      </div>\n                      <div class=\"col-sm-10\">\n                          <p class=\"text-success mb-0\">Design is not just what it looks like and feels like. Design is how it works.</p>\n                      </div>\n                  </div>\n                  <!-- Title  -->\n                  <div class=\"row\">\n                      <div class=\"col-md-4\">\n                          <div class=\"mt-6 mb-5\">\n                              <span class=\"h6\">Blockquote</span>\n                          </div>\n                      </div>\n                  </div>\n                  <!-- End of Title -->\n                  <div class=\"row\">\n                      <div class=\"col-md-8\">\n                          <blockquote class=\"blockquote text-center\">\n                              Themesberg makes beautiful products to help people with creative ideas succeed. Our company empowers millions of people.\n                              <footer class=\"blockquote-footer mt-3 text-primary\">Zoltan Szőgyényi</footer>\n                          </blockquote>\n                      </div>\n                  </div>\n                  <!-- Title  -->\n                  <div class=\"row\">\n                      <div class=\"col-md-4\">\n                          <div class=\"mt-6 mb-5\">\n                              <span class=\"h6\">Lists</span>\n                          </div>\n                      </div>\n                  </div>\n                  <!-- End of Title -->\n                  <div class=\"row\">\n                      <div class=\"col-md-6\">\n                          <div class=\"mb-3\">\n                              <span class=\"h6\">Unordered</span>\n                          </div>\n                          <ul>\n                              <li>Minutes of the last meeting</li>\n                              <li>Do we need yet more meetings?</li>\n                              <li>Any other business\n                                  <ul>\n                                      <li>Programming</li>\n                                      <li>Web Design</li>\n                                      <li>Database</li>\n                                  </ul>\n                              </li>\n                              <li>Something funny</li>\n                          </ul>\n                      </div>\n                      <div class=\"col-md-6\">\n                          <div class=\"mt-5 mb-3 mt-sm-0\">\n                              <span class=\"h6 fw-bold\">Ordered</span>\n                          </div>\n                          <ol>\n                              <li>Minutes of the last meeting</li>\n                              <li>Do we need yet more meetings?</li>\n                              <li>Any other business\n                                  <ol>\n                                      <li>Programming</li>\n                                      <li>Web Design</li>\n                                      <li>Database</li>\n                                  </ol>\n                              </li>\n                              <li>Something funny</li>\n                          </ol>\n                      </div>\n                  </div>\n              </div>\n          </div>\n      </div>\n  </div>\n\n{% endblock content %}\n\n<!-- Specific Page JS goes HERE  -->\n{% block javascripts %}{% endblock javascripts %}\n"
  },
  {
    "path": "templates/home/dashboard.html",
    "content": "{% extends \"layouts/base.html\" %}\n\n{% block title %} Dashboard {% endblock %} \n\n<!-- Specific Page CSS goes HERE  -->\n{% block stylesheets %}{% endblock stylesheets %}\n\n{% block content %}\n\n    <div class=\"py-4\">\n        <div class=\"dropdown\">\n            <button class=\"btn btn-gray-800 d-inline-flex align-items-center me-2 dropdown-toggle\" data-bs-toggle=\"dropdown\" aria-haspopup=\"true\" aria-expanded=\"false\">\n                <svg class=\"icon icon-xs me-2\" fill=\"none\" stroke=\"currentColor\" viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M12 6v6m0 0v6m0-6h6m-6 0H6\"></path></svg>\n                New Task\n            </button>\n            <div class=\"dropdown-menu dashboard-dropdown dropdown-menu-start mt-2 py-1\">\n                <a class=\"dropdown-item d-flex align-items-center\" href=\"#\">\n                    <svg class=\"dropdown-icon text-gray-400 me-2\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M8 9a3 3 0 100-6 3 3 0 000 6zM8 11a6 6 0 016 6H2a6 6 0 016-6zM16 7a1 1 0 10-2 0v1h-1a1 1 0 100 2h1v1a1 1 0 102 0v-1h1a1 1 0 100-2h-1V7z\"></path></svg>\n                    Add User\n                </a>\n                <a class=\"dropdown-item d-flex align-items-center\" href=\"#\">\n                    <svg class=\"dropdown-icon text-gray-400 me-2\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M7 3a1 1 0 000 2h6a1 1 0 100-2H7zM4 7a1 1 0 011-1h10a1 1 0 110 2H5a1 1 0 01-1-1zM2 11a2 2 0 012-2h12a2 2 0 012 2v4a2 2 0 01-2 2H4a2 2 0 01-2-2v-4z\"></path></svg>                            \n                    Add Widget\n                </a>\n                <a class=\"dropdown-item d-flex align-items-center\" href=\"#\">\n                    <svg class=\"dropdown-icon text-gray-400 me-2\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M5.5 13a3.5 3.5 0 01-.369-6.98 4 4 0 117.753-1.977A4.5 4.5 0 1113.5 13H11V9.413l1.293 1.293a1 1 0 001.414-1.414l-3-3a1 1 0 00-1.414 0l-3 3a1 1 0 001.414 1.414L9 9.414V13H5.5z\"></path><path d=\"M9 13h2v5a1 1 0 11-2 0v-5z\"></path></svg>                            \n                    Upload Files\n                </a>\n                <a class=\"dropdown-item d-flex align-items-center\" href=\"#\">\n                    <svg class=\"dropdown-icon text-gray-400 me-2\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M2.166 4.999A11.954 11.954 0 0010 1.944 11.954 11.954 0 0017.834 5c.11.65.166 1.32.166 2.001 0 5.225-3.34 9.67-8 11.317C5.34 16.67 2 12.225 2 7c0-.682.057-1.35.166-2.001zm11.541 3.708a1 1 0 00-1.414-1.414L9 10.586 7.707 9.293a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l4-4z\" clip-rule=\"evenodd\"></path></svg>\n                    Preview Security\n                </a>\n                <div role=\"separator\" class=\"dropdown-divider my-1\"></div>\n                <a class=\"dropdown-item d-flex align-items-center\" href=\"#\">\n                    <svg class=\"dropdown-icon text-danger me-2\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M12.395 2.553a1 1 0 00-1.45-.385c-.345.23-.614.558-.822.88-.214.33-.403.713-.57 1.116-.334.804-.614 1.768-.84 2.734a31.365 31.365 0 00-.613 3.58 2.64 2.64 0 01-.945-1.067c-.328-.68-.398-1.534-.398-2.654A1 1 0 005.05 6.05 6.981 6.981 0 003 11a7 7 0 1011.95-4.95c-.592-.591-.98-.985-1.348-1.467-.363-.476-.724-1.063-1.207-2.03zM12.12 15.12A3 3 0 017 13s.879.5 2.5.5c0-1 .5-4 1.25-4.5.5 1 .786 1.293 1.371 1.879A2.99 2.99 0 0113 13a2.99 2.99 0 01-.879 2.121z\" clip-rule=\"evenodd\"></path></svg>\n                    Upgrade to Pro\n                </a>\n            </div>\n        </div>\n    </div>\n    <div class=\"row\">\n        <div class=\"col-12 mb-4\">\n            <div class=\"card bg-yellow-100 border-0 shadow\">\n                <div class=\"card-header d-sm-flex flex-row align-items-center flex-0\">\n                    <div class=\"d-block mb-3 mb-sm-0\">\n                        <div class=\"fs-5 fw-normal mb-2\">Sales Value</div>\n                        <h2 class=\"fs-3 fw-extrabold\">$10,567</h2>\n                        <div class=\"small mt-2\"> \n                            <span class=\"fw-normal me-2\">Yesterday</span>                              \n                            <span class=\"fas fa-angle-up text-success\"></span>                                   \n                            <span class=\"text-success fw-bold\">10.57%</span>\n                        </div>\n                    </div>\n                    <div class=\"d-flex ms-auto\">\n                        <a href=\"#\" class=\"btn btn-secondary text-dark btn-sm me-2\">Month</a>\n                        <a href=\"#\" class=\"btn btn-dark btn-sm me-3\">Week</a>\n                    </div>\n                </div>\n                <div class=\"card-body p-2\">\n                    <div class=\"ct-chart-sales-value ct-double-octave ct-series-g\"></div>\n                </div>\n            </div>\n        </div>\n        <div class=\"col-12 col-sm-6 col-xl-4 mb-4\">\n            <div class=\"card border-0 shadow\">\n                <div class=\"card-body\">\n                    <div class=\"row d-block d-xl-flex align-items-center\">\n                        <div class=\"col-12 col-xl-5 text-xl-center mb-3 mb-xl-0 d-flex align-items-center justify-content-xl-center\">\n                            <div class=\"icon-shape icon-shape-primary rounded me-4 me-sm-0\">\n                                <svg class=\"icon\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M13 6a3 3 0 11-6 0 3 3 0 016 0zM18 8a2 2 0 11-4 0 2 2 0 014 0zM14 15a4 4 0 00-8 0v3h8v-3zM6 8a2 2 0 11-4 0 2 2 0 014 0zM16 18v-3a5.972 5.972 0 00-.75-2.906A3.005 3.005 0 0119 15v3h-3zM4.75 12.094A5.973 5.973 0 004 15v3H1v-3a3 3 0 013.75-2.906z\"></path></svg>\n                            </div>\n                            <div class=\"d-sm-none\">\n                                <h2 class=\"h5\">Customers</h2>\n                                <h3 class=\"fw-extrabold mb-1\">345,678</h3>\n                            </div>\n                        </div>\n                        <div class=\"col-12 col-xl-7 px-xl-0\">\n                            <div class=\"d-none d-sm-block\">\n                                <h2 class=\"h6 text-gray-400 mb-0\">Customers</h2>\n                                <h3 class=\"fw-extrabold mb-2\">345k</h3>\n                            </div>\n                            <small class=\"d-flex align-items-center text-gray-500\">\n                                Feb 1 - Apr 1,  \n                                <svg class=\"icon icon-xxs text-gray-500 ms-2 me-1\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M10 18a8 8 0 100-16 8 8 0 000 16zM4.332 8.027a6.012 6.012 0 011.912-2.706C6.512 5.73 6.974 6 7.5 6A1.5 1.5 0 019 7.5V8a2 2 0 004 0 2 2 0 011.523-1.943A5.977 5.977 0 0116 10c0 .34-.028.675-.083 1H15a2 2 0 00-2 2v2.197A5.973 5.973 0 0110 16v-2a2 2 0 00-2-2 2 2 0 01-2-2 2 2 0 00-1.668-1.973z\" clip-rule=\"evenodd\"></path></svg>\n                                USA\n                            </small> \n                            <div class=\"small d-flex mt-1\">                               \n                                <div>Since last month <svg class=\"icon icon-xs text-success\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M14.707 12.707a1 1 0 01-1.414 0L10 9.414l-3.293 3.293a1 1 0 01-1.414-1.414l4-4a1 1 0 011.414 0l4 4a1 1 0 010 1.414z\" clip-rule=\"evenodd\"></path></svg><span class=\"text-success fw-bolder\">22%</span></div>\n                            </div>\n                        </div>\n                    </div>\n                </div>\n            </div>\n        </div>\n        <div class=\"col-12 col-sm-6 col-xl-4 mb-4\">\n            <div class=\"card border-0 shadow\">\n                <div class=\"card-body\">\n                    <div class=\"row d-block d-xl-flex align-items-center\">\n                        <div class=\"col-12 col-xl-5 text-xl-center mb-3 mb-xl-0 d-flex align-items-center justify-content-xl-center\">\n                            <div class=\"icon-shape icon-shape-secondary rounded me-4 me-sm-0\">\n                                <svg class=\"icon\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M10 2a4 4 0 00-4 4v1H5a1 1 0 00-.994.89l-1 9A1 1 0 004 18h12a1 1 0 00.994-1.11l-1-9A1 1 0 0015 7h-1V6a4 4 0 00-4-4zm2 5V6a2 2 0 10-4 0v1h4zm-6 3a1 1 0 112 0 1 1 0 01-2 0zm7-1a1 1 0 100 2 1 1 0 000-2z\" clip-rule=\"evenodd\"></path></svg>\n                            </div>\n                            <div class=\"d-sm-none\">\n                                <h2 class=\"fw-extrabold h5\">Revenue</h2>\n                                <h3 class=\"mb-1\">$43,594</h3>\n                            </div>\n                        </div>\n                        <div class=\"col-12 col-xl-7 px-xl-0\">\n                            <div class=\"d-none d-sm-block\">\n                                <h2 class=\"h6 text-gray-400 mb-0\">Revenue</h2>\n                                <h3 class=\"fw-extrabold mb-2\">$43,594</h3>\n                            </div>\n                            <small class=\"d-flex align-items-center text-gray-500\">\n                                Feb 1 - Apr 1,  \n                                <svg class=\"icon icon-xxs text-gray-500 ms-2 me-1\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M10 18a8 8 0 100-16 8 8 0 000 16zM4.332 8.027a6.012 6.012 0 011.912-2.706C6.512 5.73 6.974 6 7.5 6A1.5 1.5 0 019 7.5V8a2 2 0 004 0 2 2 0 011.523-1.943A5.977 5.977 0 0116 10c0 .34-.028.675-.083 1H15a2 2 0 00-2 2v2.197A5.973 5.973 0 0110 16v-2a2 2 0 00-2-2 2 2 0 01-2-2 2 2 0 00-1.668-1.973z\" clip-rule=\"evenodd\"></path></svg>\n                                GER\n                            </small> \n                            <div class=\"small d-flex mt-1\">                               \n                                <div>Since last month <svg class=\"icon icon-xs text-danger\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M5.293 7.293a1 1 0 011.414 0L10 10.586l3.293-3.293a1 1 0 111.414 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414z\" clip-rule=\"evenodd\"></path></svg><span class=\"text-danger fw-bolder\">2%</span></div>\n                            </div>\n                        </div>\n                    </div>\n                </div>\n            </div>\n        </div>\n        <div class=\"col-12 col-sm-6 col-xl-4 mb-4\">\n            <div class=\"card border-0 shadow\">\n                <div class=\"card-body\">\n                    <div class=\"row d-block d-xl-flex align-items-center\">\n                        <div class=\"col-12 col-xl-5 text-xl-center mb-3 mb-xl-0 d-flex align-items-center justify-content-xl-center\">\n                            <div class=\"icon-shape icon-shape-tertiary rounded me-4 me-sm-0\">\n                                <svg class=\"icon\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M3 3a1 1 0 000 2v8a2 2 0 002 2h2.586l-1.293 1.293a1 1 0 101.414 1.414L10 15.414l2.293 2.293a1 1 0 001.414-1.414L12.414 15H15a2 2 0 002-2V5a1 1 0 100-2H3zm11.707 4.707a1 1 0 00-1.414-1.414L10 9.586 8.707 8.293a1 1 0 00-1.414 0l-2 2a1 1 0 101.414 1.414L8 10.414l1.293 1.293a1 1 0 001.414 0l4-4z\" clip-rule=\"evenodd\"></path></svg>\n                            </div>\n                            <div class=\"d-sm-none\">\n                                <h2 class=\"fw-extrabold h5\"> Bounce Rate</h2>\n                                <h3 class=\"mb-1\">50.88%</h3>\n                            </div>\n                        </div>\n                        <div class=\"col-12 col-xl-7 px-xl-0\">\n                            <div class=\"d-none d-sm-block\">\n                                <h2 class=\"h6 text-gray-400 mb-0\"> Bounce Rate</h2>\n                                <h3 class=\"fw-extrabold mb-2\">50.88%</h3>\n                            </div>\n                            <small class=\"text-gray-500\">\n                                Feb 1 - Apr 1\n                            </small> \n                            <div class=\"small d-flex mt-1\">                               \n                                <div>Since last month <svg class=\"icon icon-xs text-success\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M14.707 12.707a1 1 0 01-1.414 0L10 9.414l-3.293 3.293a1 1 0 01-1.414-1.414l4-4a1 1 0 011.414 0l4 4a1 1 0 010 1.414z\" clip-rule=\"evenodd\"></path></svg><span class=\"text-success fw-bolder\">4%</span></div>\n                            </div>\n                        </div>\n                    </div>\n                </div>\n            </div>\n        </div>\n    </div>\n    <div class=\"row\">\n        <div class=\"col-12 col-xl-8\">\n            <div class=\"row\">\n                <div class=\"col-12 mb-4\">\n                    <div class=\"card border-0 shadow\">\n                        <div class=\"card-header\">\n                            <div class=\"row align-items-center\">\n                                <div class=\"col\">\n                                    <h2 class=\"fs-5 fw-bold mb-0\">Page visits</h2>\n                                </div>\n                                <div class=\"col text-end\">\n                                    <a href=\"#\" class=\"btn btn-sm btn-primary\">See all</a>\n                                </div>\n                            </div>\n                        </div>\n                        <div class=\"table-responsive\">\n                            <table class=\"table align-items-center table-flush\">\n                                <thead class=\"thead-light\">\n                                <tr>\n                                    <th class=\"border-bottom\" scope=\"col\">Page name</th>\n                                    <th class=\"border-bottom\" scope=\"col\">Page Views</th>\n                                    <th class=\"border-bottom\" scope=\"col\">Page Value</th>\n                                    <th class=\"border-bottom\" scope=\"col\">Bounce rate</th>\n                                </tr>\n                                </thead>\n                                <tbody>\n                                <tr>\n                                    <th class=\"text-gray-900\" scope=\"row\">\n                                        /demo/admin/index.html\n                                    </th>\n                                    <td class=\"fw-bolder text-gray-500\">\n                                        3,225\n                                    </td>\n                                    <td class=\"fw-bolder text-gray-500\">\n                                        $20\n                                    </td>\n                                    <td class=\"fw-bolder text-gray-500\">\n                                        <div class=\"d-flex\">\n                                            <svg class=\"icon icon-xs text-danger me-2\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M5.293 7.707a1 1 0 010-1.414l4-4a1 1 0 011.414 0l4 4a1 1 0 01-1.414 1.414L11 5.414V17a1 1 0 11-2 0V5.414L6.707 7.707a1 1 0 01-1.414 0z\" clip-rule=\"evenodd\"></path></svg>\n                                            42,55%\n                                        </div>\n                                    </td>\n                                </tr>\n                                <tr>\n                                    <th class=\"text-gray-900\" scope=\"row\">\n                                        /demo/admin/forms.html\n                                    </th>\n                                    <td class=\"fw-bolder text-gray-500\">\n                                        2,987\n                                    </td>\n                                    <td class=\"fw-bolder text-gray-500\">\n                                        0\n                                    </td>\n                                    <td class=\"fw-bolder text-gray-500\">\n                                        <div class=\"d-flex\">\n                                            <svg class=\"icon icon-xs text-success me-2\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M14.707 12.293a1 1 0 010 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 111.414-1.414L9 14.586V3a1 1 0 012 0v11.586l2.293-2.293a1 1 0 011.414 0z\" clip-rule=\"evenodd\"></path></svg>\n                                            43,24%\n                                        </div>\n                                    </td>\n                                </tr>\n                                <tr>\n                                    <th class=\"text-gray-900\" scope=\"row\">\n                                        /demo/admin/util.html\n                                    </th>\n                                    <td class=\"fw-bolder text-gray-500\">\n                                        2,844\n                                    </td>\n                                    <td class=\"fw-bolder text-gray-500\">\n                                    294\n                                    </td>\n                                    <td class=\"fw-bolder text-gray-500\">\n                                        <div class=\"d-flex\">\n                                            <svg class=\"icon icon-xs text-success me-2\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M14.707 12.293a1 1 0 010 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 111.414-1.414L9 14.586V3a1 1 0 012 0v11.586l2.293-2.293a1 1 0 011.414 0z\" clip-rule=\"evenodd\"></path></svg>\n                                            32,35%\n                                        </div>\n                                    </td>\n                                </tr>\n                                <tr>\n                                    <th class=\"text-gray-900\" scope=\"row\">\n                                        /demo/admin/validation.html\n                                    </th>\n                                    <td class=\"fw-bolder text-gray-500\">\n                                        2,050\n                                    </td>\n                                    <td class=\"fw-bolder text-gray-500\">\n                                        $147\n                                    </td>\n                                    <td class=\"fw-bolder text-gray-500\">\n                                        <div class=\"d-flex\">\n                                            <svg class=\"icon icon-xs text-danger me-2\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M5.293 7.707a1 1 0 010-1.414l4-4a1 1 0 011.414 0l4 4a1 1 0 01-1.414 1.414L11 5.414V17a1 1 0 11-2 0V5.414L6.707 7.707a1 1 0 01-1.414 0z\" clip-rule=\"evenodd\"></path></svg>\n                                            50,87%\n                                        </div>\n                                    </td>\n                                </tr>\n                                <tr>\n                                    <th class=\"text-gray-900\" scope=\"row\">\n                                        /demo/admin/modals.html\n                                    </th>\n                                    <td class=\"fw-bolder text-gray-500\">\n                                        1,483\n                                    </td>\n                                    <td class=\"fw-bolder text-gray-500\">\n                                        $19\n                                    </td>\n                                    <td class=\"fw-bolder text-gray-500\">\n                                        <div class=\"d-flex\">\n                                            <svg class=\"icon icon-xs text-success me-2\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M14.707 12.293a1 1 0 010 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 111.414-1.414L9 14.586V3a1 1 0 012 0v11.586l2.293-2.293a1 1 0 011.414 0z\" clip-rule=\"evenodd\"></path></svg>\n                                            26,12%\n                                        </div>\n                                    </td>\n                                </tr>\n                                </tbody>\n                            </table>\n                        </div>\n                    </div>\n                </div>\n                <div class=\"col-12 col-xxl-6 mb-4\">\n                    <div class=\"card border-0 shadow\">\n                        <div class=\"card-header border-bottom d-flex align-items-center justify-content-between\">\n                            <h2 class=\"fs-5 fw-bold mb-0\">Team members</h2>\n                            <a href=\"#\" class=\"btn btn-sm btn-primary\">See all</a>\n                        </div>\n                        <div class=\"card-body\">\n                            <ul class=\"list-group list-group-flush list my--3\">\n                                <li class=\"list-group-item px-0\">\n                                    <div class=\"row align-items-center\">\n                                    <div class=\"col-auto\">\n                                        <!-- Avatar -->\n                                        <a href=\"#\" class=\"avatar\">\n                                            <img class=\"rounded\" alt=\"Image placeholder\" src=\"{{ url_for('static', filename='assets/img/team/profile-picture-1.jpg') }}\">\n                                        </a>\n                                    </div>\n                                    <div class=\"col-auto ms--2\">\n                                        <h4 class=\"h6 mb-0\">\n                                            <a href=\"#\">Chris Wood</a>\n                                        </h4>\n                                        <div class=\"d-flex align-items-center\">\n                                            <div class=\"bg-success dot rounded-circle me-1\"></div>\n                                            <small>Online</small>\n                                        </div>\n                                    </div>\n                                    <div class=\"col text-end\">\n                                        <a href=\"#\" class=\"btn btn-sm btn-secondary d-inline-flex align-items-center\">\n                                            <svg class=\"icon icon-xxs me-2\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M6 2a1 1 0 00-1 1v1H4a2 2 0 00-2 2v10a2 2 0 002 2h12a2 2 0 002-2V6a2 2 0 00-2-2h-1V3a1 1 0 10-2 0v1H7V3a1 1 0 00-1-1zm0 5a1 1 0 000 2h8a1 1 0 100-2H6z\" clip-rule=\"evenodd\"></path></svg>\n                                            Invite\n                                        </a>\n                                    </div>\n                                    </div>\n                                </li>\n                                <li class=\"list-group-item px-0\">\n                                    <div class=\"row align-items-center\">\n                                        <div class=\"col-auto\">\n                                            <!-- Avatar -->\n                                            <a href=\"#\" class=\"avatar\">\n                                                <img class=\"rounded\" alt=\"Image placeholder\" src=\"{{ url_for('static', filename='assets/img/team/profile-picture-2.jpg') }}\">\n                                            </a>\n                                        </div>\n                                        <div class=\"col-auto ms--2\">\n                                            <h4 class=\"h6 mb-0\">\n                                                <a href=\"#\">Jose Leos</a>\n                                            </h4>\n                                            <div class=\"d-flex align-items-center\">\n                                                <div class=\"bg-warning dot rounded-circle me-1\"></div>\n                                                <small>In a meeting</small>\n                                            </div>\n                                        </div>\n                                        <div class=\"col text-end\">\n                                            <a href=\"#\" class=\"btn btn-sm btn-secondary d-inline-flex align-items-center\">\n                                                <svg class=\"icon icon-xxs me-2\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M18 5v8a2 2 0 01-2 2h-5l-5 4v-4H4a2 2 0 01-2-2V5a2 2 0 012-2h12a2 2 0 012 2zM7 8H5v2h2V8zm2 0h2v2H9V8zm6 0h-2v2h2V8z\" clip-rule=\"evenodd\"></path></svg>\n                                                Message\n                                            </a>\n                                        </div>\n                                    </div>\n                                </li>\n                                <li class=\"list-group-item px-0\">\n                                    <div class=\"row align-items-center\">\n                                        <div class=\"col-auto\">\n                                            <!-- Avatar -->\n                                            <a href=\"#\" class=\"avatar\">\n                                                <img class=\"rounded\" alt=\"Image placeholder\" src=\"{{ url_for('static', filename='assets/img/team/profile-picture-3.jpg') }}\">\n                                            </a>\n                                        </div>\n                                        <div class=\"col-auto ms--2\">\n                                            <h4 class=\"h6 mb-0\">\n                                                <a href=\"#\">Bonnie Green</a>\n                                            </h4>\n                                            <div class=\"d-flex align-items-center\">\n                                                <div class=\"bg-danger dot rounded-circle me-1\"></div>\n                                                <small>Offline</small>\n                                            </div>\n                                        </div>\n                                        <div class=\"col text-end\">\n                                            <a href=\"#\" class=\"btn btn-sm btn-secondary d-inline-flex align-items-center\">\n                                                <svg class=\"icon icon-xxs me-2\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M18 5v8a2 2 0 01-2 2h-5l-5 4v-4H4a2 2 0 01-2-2V5a2 2 0 012-2h12a2 2 0 012 2zM7 8H5v2h2V8zm2 0h2v2H9V8zm6 0h-2v2h2V8z\" clip-rule=\"evenodd\"></path></svg>\n                                                Message\n                                            </a>\n                                        </div>\n                                    </div>\n                                </li>\n                                <li class=\"list-group-item px-0\">\n                                    <div class=\"row align-items-center\">\n                                        <div class=\"col-auto\">\n                                            <!-- Avatar -->\n                                            <a href=\"#\" class=\"avatar\">\n                                                <img class=\"rounded\" alt=\"Image placeholder\" src=\"{{ url_for('static', filename='assets/img/team/profile-picture-4.jpg') }}\">\n                                            </a>\n                                        </div>\n                                        <div class=\"col-auto ms--2\">\n                                        <h4 class=\"h6 mb-0\">\n                                                <a href=\"#\">Neil Sims</a>\n                                        </h4>\n                                        <div class=\"d-flex align-items-center\">\n                                            <div class=\"bg-danger dot rounded-circle me-1\"></div>\n                                            <small>Offline</small>\n                                        </div>\n                                        </div>\n                                        <div class=\"col text-end\">\n                                            <a href=\"#\" class=\"btn btn-sm btn-secondary d-inline-flex align-items-center\">\n                                                <svg class=\"icon icon-xxs me-2\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M18 5v8a2 2 0 01-2 2h-5l-5 4v-4H4a2 2 0 01-2-2V5a2 2 0 012-2h12a2 2 0 012 2zM7 8H5v2h2V8zm2 0h2v2H9V8zm6 0h-2v2h2V8z\" clip-rule=\"evenodd\"></path></svg>\n                                                Message\n                                            </a>\n                                        </div>\n                                    </div>\n                                </li>\n                            </ul>\n                        </div>\n                    </div>\n                </div>\n                <div class=\"col-12 col-xxl-6 mb-4\">\n                    <div class=\"card border-0 shadow\">\n                        <div class=\"card-header border-bottom d-flex align-items-center justify-content-between\">\n                            <h2 class=\"fs-5 fw-bold mb-0\">Progress track</h2>\n                              <a href=\"#\" class=\"btn btn-sm btn-primary\">See tasks</a>\n                          </div>\n                        <div class=\"card-body\">\n                            <!-- Project 1 -->\n                            <div class=\"row mb-4\">\n                                <div class=\"col-auto\">\n                                    <svg class=\"icon icon-sm text-gray-500\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M9 2a1 1 0 000 2h2a1 1 0 100-2H9z\"></path><path fill-rule=\"evenodd\" d=\"M4 5a2 2 0 012-2 3 3 0 003 3h2a3 3 0 003-3 2 2 0 012 2v11a2 2 0 01-2 2H6a2 2 0 01-2-2V5zm3 4a1 1 0 000 2h.01a1 1 0 100-2H7zm3 0a1 1 0 000 2h3a1 1 0 100-2h-3zm-3 4a1 1 0 100 2h.01a1 1 0 100-2H7zm3 0a1 1 0 100 2h3a1 1 0 100-2h-3z\" clip-rule=\"evenodd\"></path></svg>\n                                </div>\n                                <div class=\"col\">\n                                    <div class=\"progress-wrapper\">\n                                        <div class=\"progress-info\">\n                                            <div class=\"h6 mb-0\">Rocket - SaaS Template</div>\n                                            <div class=\"small fw-bold text-gray-500\"><span>75 %</span></div>\n                                        </div>\n                                        <div class=\"progress mb-0\">\n                                            <div class=\"progress-bar bg-success\" role=\"progressbar\" aria-valuenow=\"75\" aria-valuemin=\"0\" aria-valuemax=\"100\" style=\"width: 75%;\"></div>\n                                        </div>\n                                    </div>\n                                </div>\n                            </div>\n                            <!-- Project 2 -->\n                            <div class=\"row align-items-center mb-4\">\n                                <div class=\"col-auto\">\n                                    <svg class=\"icon icon-sm text-gray-500\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M9 2a1 1 0 000 2h2a1 1 0 100-2H9z\"></path><path fill-rule=\"evenodd\" d=\"M4 5a2 2 0 012-2 3 3 0 003 3h2a3 3 0 003-3 2 2 0 012 2v11a2 2 0 01-2 2H6a2 2 0 01-2-2V5zm3 4a1 1 0 000 2h.01a1 1 0 100-2H7zm3 0a1 1 0 000 2h3a1 1 0 100-2h-3zm-3 4a1 1 0 100 2h.01a1 1 0 100-2H7zm3 0a1 1 0 100 2h3a1 1 0 100-2h-3z\" clip-rule=\"evenodd\"></path></svg>\n                                </div>\n                                <div class=\"col\">\n                                    <div class=\"progress-wrapper\">\n                                        <div class=\"progress-info\">\n                                            <div class=\"h6 mb-0\">Themesberg - Design System</div>\n                                            <div class=\"small fw-bold text-gray-500\"><span>60 %</span></div>\n                                        </div>\n                                        <div class=\"progress mb-0\">\n                                            <div class=\"progress-bar bg-success\" role=\"progressbar\" aria-valuenow=\"60\" aria-valuemin=\"0\" aria-valuemax=\"100\" style=\"width: 60%;\"></div>\n                                        </div>\n                                    </div>\n                                </div>\n                            </div>\n                            <!-- Project 3 -->\n                            <div class=\"row align-items-center mb-4\">\n                                <div class=\"col-auto\">\n                                    <svg class=\"icon icon-sm text-gray-500\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M9 2a1 1 0 000 2h2a1 1 0 100-2H9z\"></path><path fill-rule=\"evenodd\" d=\"M4 5a2 2 0 012-2 3 3 0 003 3h2a3 3 0 003-3 2 2 0 012 2v11a2 2 0 01-2 2H6a2 2 0 01-2-2V5zm3 4a1 1 0 000 2h.01a1 1 0 100-2H7zm3 0a1 1 0 000 2h3a1 1 0 100-2h-3zm-3 4a1 1 0 100 2h.01a1 1 0 100-2H7zm3 0a1 1 0 100 2h3a1 1 0 100-2h-3z\" clip-rule=\"evenodd\"></path></svg>\n                                </div>\n                                <div class=\"col\">\n                                    <div class=\"progress-wrapper\">\n                                        <div class=\"progress-info\">\n                                            <div class=\"h6 mb-0\">Homepage Design in Figma</div>\n                                            <div class=\"small fw-bold text-gray-500\"><span>45 %</span></div>\n                                        </div>\n                                        <div class=\"progress mb-0\">\n                                            <div class=\"progress-bar bg-warning\" role=\"progressbar\" aria-valuenow=\"45\" aria-valuemin=\"0\" aria-valuemax=\"100\" style=\"width: 45%;\"></div>\n                                        </div>\n                                    </div>\n                                </div>\n                            </div>\n                            <!-- Project 4 -->\n                            <div class=\"row align-items-center mb-3\">\n                                <div class=\"col-auto\">\n                                    <svg class=\"icon icon-sm text-gray-500\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M9 2a1 1 0 000 2h2a1 1 0 100-2H9z\"></path><path fill-rule=\"evenodd\" d=\"M4 5a2 2 0 012-2 3 3 0 003 3h2a3 3 0 003-3 2 2 0 012 2v11a2 2 0 01-2 2H6a2 2 0 01-2-2V5zm3 4a1 1 0 000 2h.01a1 1 0 100-2H7zm3 0a1 1 0 000 2h3a1 1 0 100-2h-3zm-3 4a1 1 0 100 2h.01a1 1 0 100-2H7zm3 0a1 1 0 100 2h3a1 1 0 100-2h-3z\" clip-rule=\"evenodd\"></path></svg>\n                                </div>\n                                <div class=\"col\">\n                                    <div class=\"progress-wrapper\">\n                                        <div class=\"progress-info\">\n                                            <div class=\"h6 mb-0\">Backend for Themesberg v2</div>\n                                            <div class=\"small fw-bold text-gray-500\"><span>34 %</span></div>\n                                        </div>\n                                        <div class=\"progress mb-0\">\n                                            <div class=\"progress-bar bg-danger\" role=\"progressbar\" aria-valuenow=\"34\" aria-valuemin=\"0\" aria-valuemax=\"100\" style=\"width: 34%;\"></div>\n                                        </div>\n                                    </div>\n                                </div>\n                            </div>\n                        </div>\n                    </div>\n                </div>\n            </div>\n        </div>\n        <div class=\"col-12 col-xl-4\">\n            <div class=\"col-12 px-0 mb-4\">\n                <div class=\"card border-0 shadow\">\n                    <div class=\"card-header d-flex flex-row align-items-center flex-0 border-bottom\">\n                        <div class=\"d-block\">\n                            <div class=\"h6 fw-normal text-gray mb-2\">Total orders</div>\n                            <h2 class=\"h3 fw-extrabold\">452</h2>\n                            <div class=\"small mt-2\">                               \n                                <span class=\"fas fa-angle-up text-success\"></span>                                   \n                                <span class=\"text-success fw-bold\">18.2%</span>\n                            </div>\n                        </div>\n                        <div class=\"d-block ms-auto\">\n                            <div class=\"d-flex align-items-center text-end mb-2\">\n                                <span class=\"dot rounded-circle bg-gray-800 me-2\"></span>\n                                <span class=\"fw-normal small\">July</span>\n                            </div>\n                            <div class=\"d-flex align-items-center text-end\">\n                                <span class=\"dot rounded-circle bg-secondary me-2\"></span>\n                                <span class=\"fw-normal small\">August</span>\n                            </div>\n                        </div>\n                    </div>\n                    <div class=\"card-body p-2\">\n                        <div class=\"ct-chart-ranking ct-golden-section ct-series-a\"></div>\n                    </div>\n                </div>\n            </div>\n            <div class=\"col-12 px-0 mb-4\">\n                <div class=\"card border-0 shadow\">\n                    <div class=\"card-body\">\n                        <div class=\"d-flex align-items-center justify-content-between border-bottom pb-3\">\n                            <div>\n                                <div class=\"h6 mb-0 d-flex align-items-center\">\n                                    <svg class=\"icon icon-xs text-gray-500 me-2\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M10 18a8 8 0 100-16 8 8 0 000 16zM4.332 8.027a6.012 6.012 0 011.912-2.706C6.512 5.73 6.974 6 7.5 6A1.5 1.5 0 019 7.5V8a2 2 0 004 0 2 2 0 011.523-1.943A5.977 5.977 0 0116 10c0 .34-.028.675-.083 1H15a2 2 0 00-2 2v2.197A5.973 5.973 0 0110 16v-2a2 2 0 00-2-2 2 2 0 01-2-2 2 2 0 00-1.668-1.973z\" clip-rule=\"evenodd\"></path></svg>\n                                    Global Rank\n                                </div>\n                            </div>\n                            <div>\n                                <a href=\"#\" class=\"d-flex align-items-center fw-bold\">\n                                    #755\n                                    <svg class=\"icon icon-xs text-gray-500 ms-1\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M3 3a1 1 0 000 2v8a2 2 0 002 2h2.586l-1.293 1.293a1 1 0 101.414 1.414L10 15.414l2.293 2.293a1 1 0 001.414-1.414L12.414 15H15a2 2 0 002-2V5a1 1 0 100-2H3zm11.707 4.707a1 1 0 00-1.414-1.414L10 9.586 8.707 8.293a1 1 0 00-1.414 0l-2 2a1 1 0 101.414 1.414L8 10.414l1.293 1.293a1 1 0 001.414 0l4-4z\" clip-rule=\"evenodd\"></path></svg>\n                                </a>\n                            </div>\n                        </div>\n                        <div class=\"d-flex align-items-center justify-content-between border-bottom py-3\">\n                            <div>\n                                <div class=\"h6 mb-0 d-flex align-items-center\">\n                                    <svg class=\"icon icon-xs text-gray-500 me-2\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M3 6a3 3 0 013-3h10a1 1 0 01.8 1.6L14.25 8l2.55 3.4A1 1 0 0116 13H6a1 1 0 00-1 1v3a1 1 0 11-2 0V6z\" clip-rule=\"evenodd\"></path></svg>\n                                    Country Rank\n                                </div>\n                                <div class=\"small card-stats\">\n                                    United States\n                                    <svg class=\"icon icon-xs text-success\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M14.707 12.707a1 1 0 01-1.414 0L10 9.414l-3.293 3.293a1 1 0 01-1.414-1.414l4-4a1 1 0 011.414 0l4 4a1 1 0 010 1.414z\" clip-rule=\"evenodd\"></path></svg>\n                                </div>\n                            </div>\n                            <div>\n                                <a href=\"#\" class=\"d-flex align-items-center fw-bold\">\n                                    #32\n                                    <svg class=\"icon icon-xs text-gray-500 ms-1\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M3 3a1 1 0 000 2v8a2 2 0 002 2h2.586l-1.293 1.293a1 1 0 101.414 1.414L10 15.414l2.293 2.293a1 1 0 001.414-1.414L12.414 15H15a2 2 0 002-2V5a1 1 0 100-2H3zm11.707 4.707a1 1 0 00-1.414-1.414L10 9.586 8.707 8.293a1 1 0 00-1.414 0l-2 2a1 1 0 101.414 1.414L8 10.414l1.293 1.293a1 1 0 001.414 0l4-4z\" clip-rule=\"evenodd\"></path></svg>\n                                </a>\n                            </div>\n                        </div>\n                        <div class=\"d-flex align-items-center justify-content-between pt-3\">\n                            <div>\n                                <div class=\"h6 mb-0 d-flex align-items-center\">\n                                    <svg class=\"icon icon-xs text-gray-500 me-2\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M2 6a2 2 0 012-2h4l2 2h4a2 2 0 012 2v1H8a3 3 0 00-3 3v1.5a1.5 1.5 0 01-3 0V6z\" clip-rule=\"evenodd\"></path><path d=\"M6 12a2 2 0 012-2h8a2 2 0 012 2v2a2 2 0 01-2 2H2h2a2 2 0 002-2v-2z\"></path></svg>\n                                    Category Rank\n                                </div>\n                                <div class=\"small card-stats\">\n                                    Computers Electronics > Technology\n                                    <svg class=\"icon icon-xs text-success\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M14.707 12.707a1 1 0 01-1.414 0L10 9.414l-3.293 3.293a1 1 0 01-1.414-1.414l4-4a1 1 0 011.414 0l4 4a1 1 0 010 1.414z\" clip-rule=\"evenodd\"></path></svg>\n                                </div>\n                            </div>\n                            <div>\n                                <a href=\"#\" class=\"d-flex align-items-center fw-bold\">\n                                    #11\n                                    <svg class=\"icon icon-xs text-gray-500 ms-1\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M3 3a1 1 0 000 2v8a2 2 0 002 2h2.586l-1.293 1.293a1 1 0 101.414 1.414L10 15.414l2.293 2.293a1 1 0 001.414-1.414L12.414 15H15a2 2 0 002-2V5a1 1 0 100-2H3zm11.707 4.707a1 1 0 00-1.414-1.414L10 9.586 8.707 8.293a1 1 0 00-1.414 0l-2 2a1 1 0 101.414 1.414L8 10.414l1.293 1.293a1 1 0 001.414 0l4-4z\" clip-rule=\"evenodd\"></path></svg>\n                                </a>\n                            </div>\n                        </div>\n                    </div>\n                </div>\n            </div>\n            <div class=\"col-12 px-0\">\n                <div class=\"card border-0 shadow\">\n                    <div class=\"card-body\">\n                        <h2 class=\"fs-5 fw-bold mb-1\">Acquisition</h2>\n                        <p>Tells you where your visitors originated from, such as search engines, social networks or website referrals.</p>\n                        <div class=\"d-block\">\n                            <div class=\"d-flex align-items-center me-5\">\n                                <div class=\"icon-shape icon-sm icon-shape-danger rounded me-3\">\n                                    <svg fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M3 3a1 1 0 000 2v8a2 2 0 002 2h2.586l-1.293 1.293a1 1 0 101.414 1.414L10 15.414l2.293 2.293a1 1 0 001.414-1.414L12.414 15H15a2 2 0 002-2V5a1 1 0 100-2H3zm11 4a1 1 0 10-2 0v4a1 1 0 102 0V7zm-3 1a1 1 0 10-2 0v3a1 1 0 102 0V8zM8 9a1 1 0 00-2 0v2a1 1 0 102 0V9z\" clip-rule=\"evenodd\"></path></svg>\n                                </div>\n                                <div class=\"d-block\">\n                                    <label class=\"mb-0\">Bounce Rate</label>\n                                    <h4 class=\"mb-0\">33.50%</h4>\n                                </div>\n                            </div>\n                            <div class=\"d-flex align-items-center pt-3\">\n                                <div class=\"icon-shape icon-sm icon-shape-purple rounded me-3\">\n                                    <svg fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M2 11a1 1 0 011-1h2a1 1 0 011 1v5a1 1 0 01-1 1H3a1 1 0 01-1-1v-5zM8 7a1 1 0 011-1h2a1 1 0 011 1v9a1 1 0 01-1 1H9a1 1 0 01-1-1V7zM14 4a1 1 0 011-1h2a1 1 0 011 1v12a1 1 0 01-1 1h-2a1 1 0 01-1-1V4z\"></path></svg>                                        </div>\n                                <div class=\"d-block\">\n                                    <label class=\"mb-0\">Sessions</label>\n                                    <h4 class=\"mb-0\">9,567</h4>\n                                </div>\n                            </div>\n                        </div>\n                    </div>\n                </div>\n            </div>\n        </div>\n    </div>\n\n{% endblock content %}\n\n<!-- Specific Page JS goes HERE  -->\n{% block javascripts %}{% endblock javascripts %}\n"
  },
  {
    "path": "templates/home/index.html",
    "content": "<!--\n\n=========================================================\n* Volt Free - Bootstrap 5 Dashboard\n=========================================================\n\n* Product Page: https://themesberg.com/product/admin-dashboard/volt-bootstrap-5-dashboard\n* Copyright 2021 Themesberg (https://www.themesberg.com)\n\n* Designed and coded by https://themesberg.com\n\n=========================================================\n\n* The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. Please contact us to request a removal. Contact us if you want to remove it.\n\n-->\n<!DOCTYPE html>\n<html lang=\"en\">\n\n<head> \n    <meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\" />\n<!-- Primary Meta Tags -->\n<title>\n    Flask Volt Dashboard - Presentation | AppSeed    \n</title>\n\n<meta name=\"viewport\" content=\"width=device-width, initial-scale=1, shrink-to-fit=no\">\n<meta name=\"title\" content=\"Volt - Free Bootstrap 5 Admin Dashboard\">\n<meta name=\"author\" content=\"Themesberg\">\n<meta name=\"description\" content=\"Volt Pro is a Premium Bootstrap 5 Admin Dashboard featuring over 800 components, 10+ plugins and 20 example pages using Vanilla JS.\">\n<meta name=\"keywords\" content=\"bootstrap 5, bootstrap, bootstrap 5 admin dashboard, bootstrap 5 dashboard, bootstrap 5 charts, bootstrap 5 calendar, bootstrap 5 datepicker, bootstrap 5 tables, bootstrap 5 datatable, vanilla js datatable, themesberg, themesberg dashboard, themesberg admin dashboard\" />\n<link rel=\"canonical\" href=\"https://themesberg.com/product/admin-dashboard/volt-premium-bootstrap-5-dashboard\">\n\n<!-- Open Graph / Facebook -->\n<meta property=\"og:type\" content=\"website\">\n<meta property=\"og:url\" content=\"https://demo.themesberg.com/volt-pro\">\n<meta property=\"og:title\" content=\"Volt - Free Bootstrap 5 Admin Dashboard\">\n<meta property=\"og:description\" content=\"Volt Pro is a Premium Bootstrap 5 Admin Dashboard featuring over 800 components, 10+ plugins and 20 example pages using Vanilla JS.\">\n<meta property=\"og:image\" content=\"https://themesberg.s3.us-east-2.amazonaws.com/public/products/volt-pro-bootstrap-5-dashboard/volt-pro-preview.jpg\">\n\n<!-- Twitter -->\n<meta property=\"twitter:card\" content=\"summary_large_image\">\n<meta property=\"twitter:url\" content=\"https://demo.themesberg.com/volt-pro\">\n<meta property=\"twitter:title\" content=\"Volt - Free Bootstrap 5 Admin Dashboard\">\n<meta property=\"twitter:description\" content=\"Volt Pro is a Premium Bootstrap 5 Admin Dashboard featuring over 800 components, 10+ plugins and 20 example pages using Vanilla JS.\">\n<meta property=\"twitter:image\" content=\"https://themesberg.s3.us-east-2.amazonaws.com/public/products/volt-pro-bootstrap-5-dashboard/volt-pro-preview.jpg\">\n\n<!-- Favicon -->\n<link rel=\"apple-touch-icon\" sizes=\"120x120\" href=\"{{ url_for('static', filename='assets/img/favicon/apple-touch-icon.png') }}\">\n<link rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"{{ url_for('static', filename='assets/img/favicon/favicon-32x32.png') }}\">\n<link rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"{{ url_for('static', filename='assets/img/favicon/favicon-16x16.png') }}\">\n<link rel=\"manifest\" href=\"{{ url_for('static', filename='assets/img/favicon/site.webmanifest') }}\">\n<link rel=\"mask-icon\" href=\"{{ url_for('static', filename='assets/img/favicon/safari-pinned-tab.svg') }}\" color=\"#ffffff\">\n<meta name=\"msapplication-TileColor\" content=\"#ffffff\">\n<meta name=\"theme-color\" content=\"#ffffff\">\n\n<!-- Sweet Alert -->\n<link type=\"text/css\" href=\"{{ url_for('static', filename='assets/vendor/sweetalert2/dist/sweetalert2.min.css') }}\" rel=\"stylesheet\">\n\n<!-- Notyf -->\n<link type=\"text/css\" href=\"{{ url_for('static', filename='assets/vendor/notyf/notyf.min.css') }}\" rel=\"stylesheet\">\n\n<!-- Volt CSS -->\n<link type=\"text/css\" href=\"{{ url_for('static', filename='assets/css/volt.css') }}\" rel=\"stylesheet\">\n\n<!-- NOTICE: You can use the _analytics.html partial to include production code specific code & trackers -->\n\n</head>\n<body>\n\n    <header class=\"header-global\">\n        <nav id=\"navbar-main\" aria-label=\"Primary navigation\" class=\"navbar navbar-main navbar-expand-lg navbar-theme-primary pt-4 navbar-dark\">\n            <div class=\"container position-relative\">\n                <div class=\"navbar-collapse collapse me-auto\" id=\"navbar_global\">\n                    <div class=\"navbar-collapse-header\">\n                        <div class=\"row\">\n                            <div class=\"col-6 collapse-brand\">\n                                <a href=\"/\">\n                                    <img src=\"{{ url_for('static', filename='assets/img/brand/light.svg') }}\" alt=\"Volt logo\">\n                                </a>\n                            </div>\n                            <div class=\"col-6 collapse-close\">\n                                <a href=\"#navbar_global\" class=\"fas fa-times\" data-toggle=\"collapse\" data-target=\"#navbar_global\" aria-controls=\"navbar_global\" aria-expanded=\"false\" title=\"close\" aria-label=\"Toggle navigation\"></a>\n                            </div>\n                        </div>\n                    </div>\n                    <ul class=\"navbar-nav navbar-nav-hover align-items-lg-center\">\n                        <li class=\"nav-item mr-2\">\n                            <a href=\"/dashboard.html\" class=\"nav-link\">Dashboard</a>\n                        </li>\n                        <li class=\"nav-item me-2\">\n                            <a href=\"/settings.html\" class=\"nav-link\">Settings</a>\n                        </li>                        \n                    </ul>\n                </div>\n                <div class=\"d-flex align-items-center ms-auto\">\n                    <a href=\"https://appseed.us/product/volt-dashboard/flask/\" \n                       target=\"_blank\" \n                       class=\"btn btn-outline-white d-inline-flex align-items-center me-md-3\">\n                        <svg class=\"icon icon-xxs me-2\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M2 9.5A3.5 3.5 0 005.5 13H9v2.586l-1.293-1.293a1 1 0 00-1.414 1.414l3 3a1 1 0 001.414 0l3-3a1 1 0 00-1.414-1.414L11 15.586V13h2.5a4.5 4.5 0 10-.616-8.958 4.002 4.002 0 10-7.753 1.977A3.5 3.5 0 002 9.5zm9 3.5H9V8a1 1 0 012 0v5z\" clip-rule=\"evenodd\"></path></svg>\n                        Download\n                    </a>\n                    <button class=\"navbar-toggler ml-2\" type=\"button\" data-toggle=\"collapse\" data-target=\"#navbar_global\" aria-controls=\"navbar_global\" aria-expanded=\"false\" aria-label=\"Toggle navigation\">\n                        <span class=\"navbar-toggler-icon\"></span>\n                    </button>                    \n                </div>\n            </div>\n        </nav>\n    </header>\n\n    <main>\n\n        <!-- Hero -->\n        <section class=\"section-header overflow-hidden pt-7 pt-lg-8 pb-9 pb-lg-12 bg-primary text-white\">\n            <div class=\"container\">\n                <div class=\"row\">\n                    <div class=\"col-12 text-center\">\n                        <div class=\"bootstrap-big-icon d-none d-lg-block\">\n                            <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"700\" height=\"622\" class=\"d-block my-1\" viewBox=\"0 0 118 94\" role=\"img\"><title>Bootstrap</title><path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M24.509 0c-6.733 0-11.715 5.893-11.492 12.284.214 6.14-.064 14.092-2.066 20.577C8.943 39.365 5.547 43.485 0 44.014v5.972c5.547.529 8.943 4.649 10.951 11.153 2.002 6.485 2.28 14.437 2.066 20.577C12.794 88.106 17.776 94 24.51 94H93.5c6.733 0 11.714-5.893 11.491-12.284-.214-6.14.064-14.092 2.066-20.577 2.009-6.504 5.396-10.624 10.943-11.153v-5.972c-5.547-.529-8.934-4.649-10.943-11.153-2.002-6.484-2.28-14.437-2.066-20.577C105.214 5.894 100.233 0 93.5 0H24.508zM80 57.863C80 66.663 73.436 72 62.543 72H44a2 2 0 01-2-2V24a2 2 0 012-2h18.437c9.083 0 15.044 4.92 15.044 12.474 0 5.302-4.01 10.049-9.119 10.88v.277C75.317 46.394 80 51.21 80 57.863zM60.521 28.34H49.948v14.934h8.905c6.884 0 10.68-2.772 10.68-7.727 0-4.643-3.264-7.207-9.012-7.207zM49.948 49.2v16.458H60.91c7.167 0 10.964-2.876 10.964-8.281 0-5.406-3.903-8.178-11.425-8.178H49.948z\" fill=\"currentColor\"></path></svg>\n                        </div>\n                        <h1 class=\"fw-bolder\">Volt Bootstrap 5 Dashboard</h1>\n                        <h2 class=\"lead fw-normal text-muted mb-5\">\n                            Open-source Project\n                        </h2>\n                        <p> \n                            UserID: [{{ user_id }}] - {{ current_user.email }} \n                        </p>\n                        <!-- Button Modal -->\n                        <div class=\"d-flex align-items-center justify-content-center mb-5\">\n                            <a href=\"/dashboard.html\" class=\"btn btn-secondary d-inline-flex align-items-center me-4\">\n                                <svg class=\"icon icon-xs me-2\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M3 3a1 1 0 000 2v8a2 2 0 002 2h2.586l-1.293 1.293a1 1 0 101.414 1.414L10 15.414l2.293 2.293a1 1 0 001.414-1.414L12.414 15H15a2 2 0 002-2V5a1 1 0 100-2H3zm11 4a1 1 0 10-2 0v4a1 1 0 102 0V7zm-3 1a1 1 0 10-2 0v3a1 1 0 102 0V8zM8 9a1 1 0 00-2 0v2a1 1 0 102 0V9z\" clip-rule=\"evenodd\"></path></svg>\n                                Dashboard Demo\n                            </a>                            \n                        </div>\n                        <div class=\"d-flex justify-content-center flex-column mb-6 mb-lg-5\">\n                            <a href=\"https://themesberg.com\" target=\"_blank\">\n                                <img src=\"{{ url_for('static', filename='assets/img/themesberg.svg') }}\" class=\"d-block mx-auto mb-3\" height=\"25\" width=\"25\" alt=\"Themesberg Logo\">\n                                <span class=\"text-muted font-small\">\n                                    &copy; Themesberg\n                                </span>\n                                <a target=\"_blank\" href=\"https://appseed.us\">Coded by AppSeed</a>\n                            </a>\n                        </div>\n                    </div>\n                </div>\n            </div>\n            <figure class=\"position-absolute bottom-0 left-0 w-100 d-none d-md-block mb-n2\"><svg class=\"home-pattern\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 3000 185.4\"><path d=\"M3000,0v185.4H0V0c496.4,115.6,996.4,173.4,1500,173.4S2503.6,115.6,3000,0z\"></path></svg></figure>       \n        </section>\n        <div class=\"section pt-0\">\n            <div class=\"container mt-n10 mt-lg-n12 z-2\">\n                <div class=\"row justify-content-center\">\n                    <div class=\"col-12\">\n                        <img src=\"{{ url_for('static', filename='assets/img/mockup-presentation.png') }}\" alt=\"Mockup presentation\">\n                    </div>\n                </div>\n            </div>\n        </div>\n\n        <section class=\"section section-lg bg-soft pt-0\">\n            <div class=\"container\">\n                <div class=\"row justify-content-center mb-5 mb-lg-6\">\n                    <div class=\"col-6 col-md-3 text-center mb-4\">\n                        <div class=\"icon icon-shape bg-white shadow-lg rounded mb-4\">\n                            <svg class=\"icon icon-md text-secondary\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M9 4.804A7.968 7.968 0 005.5 4c-1.255 0-2.443.29-3.5.804v10A7.969 7.969 0 015.5 14c1.669 0 3.218.51 4.5 1.385A7.962 7.962 0 0114.5 14c1.255 0 2.443.29 3.5.804v-10A7.968 7.968 0 0014.5 4c-1.255 0-2.443.29-3.5.804V12a1 1 0 11-2 0V4.804z\"></path></svg>\n                        </div>\n                        <h3 class=\"fw-bolder\">21</h3>\n                        <p class=\"text-gray\">Dashboard Pages</p>\n                    </div>\n                    <div class=\"col-6 col-md-3 text-center mb-4\">\n                        <div class=\"icon icon-shape bg-white shadow-lg rounded mb-4\">\n                            <svg class=\"icon icon-md text-secondary\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M10 3.5a1.5 1.5 0 013 0V4a1 1 0 001 1h3a1 1 0 011 1v3a1 1 0 01-1 1h-.5a1.5 1.5 0 000 3h.5a1 1 0 011 1v3a1 1 0 01-1 1h-3a1 1 0 01-1-1v-.5a1.5 1.5 0 00-3 0v.5a1 1 0 01-1 1H6a1 1 0 01-1-1v-3a1 1 0 00-1-1h-.5a1.5 1.5 0 010-3H4a1 1 0 001-1V6a1 1 0 011-1h3a1 1 0 001-1v-.5z\"></path></svg>\n                        </div>\n                        <h3 class=\"fw-bolder\">800+</h3>\n                        <p class=\"text-gray\">Premium Components</p>\n                    </div>\n                    <div class=\"col-6 col-md-3 text-center\">\n                        <div class=\"icon icon-shape bg-white shadow-lg rounded mb-4\">\n                            <svg class=\"icon icon-md text-secondary\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M11 3a1 1 0 10-2 0v1a1 1 0 102 0V3zM15.657 5.757a1 1 0 00-1.414-1.414l-.707.707a1 1 0 001.414 1.414l.707-.707zM18 10a1 1 0 01-1 1h-1a1 1 0 110-2h1a1 1 0 011 1zM5.05 6.464A1 1 0 106.464 5.05l-.707-.707a1 1 0 00-1.414 1.414l.707.707zM5 10a1 1 0 01-1 1H3a1 1 0 110-2h1a1 1 0 011 1zM8 16v-1h4v1a2 2 0 11-4 0zM12 14c.015-.34.208-.646.477-.859a4 4 0 10-4.954 0c.27.213.462.519.476.859h4.002z\"></path></svg>\n                        </div>\n                        <h3 class=\"fw-bolder\">Workflow</h3>\n                        <p class=\"text-gray\">Sass & Gulp</p>\n                    </div>\n                    <div class=\"col-6 col-md-3 text-center\">\n                        <div class=\"icon icon-shape bg-white shadow-lg rounded mb-4\">\n                            <svg class=\"icon icon-md text-secondary\" aria-hidden=\"true\" focusable=\"false\" data-prefix=\"fab\" data-icon=\"js-square\" role=\"img\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 448 512\"><path fill=\"currentColor\" d=\"M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zM243.8 381.4c0 43.6-25.6 63.5-62.9 63.5-33.7 0-53.2-17.4-63.2-38.5l34.3-20.7c6.6 11.7 12.6 21.6 27.1 21.6 13.8 0 22.6-5.4 22.6-26.5V237.7h42.1v143.7zm99.6 63.5c-39.1 0-64.4-18.6-76.7-43l34.3-19.8c9 14.7 20.8 25.6 41.5 25.6 17.4 0 28.6-8.7 28.6-20.8 0-14.4-11.4-19.5-30.7-28l-10.5-4.5c-30.4-12.9-50.5-29.2-50.5-63.5 0-31.6 24.1-55.6 61.6-55.6 26.8 0 46 9.3 59.8 33.7L368 290c-7.2-12.9-15-18-27.1-18-12.3 0-20.1 7.8-20.1 18 0 12.6 7.8 17.7 25.9 25.6l10.5 4.5c35.8 15.3 55.9 31 55.9 66.2 0 37.8-29.8 58.6-69.7 58.6z\"></path></svg>\n                        </div>\n                        <h3 class=\"fw-bolder\">Vanilla</h3>\n                        <p class=\"text-gray\">Javascript</p>\n                    </div>\n                </div>\n                <div class=\"row justify-content-between align-items-center mb-5 mb-lg-7\">\n                    <div class=\"row justify-content-between align-items-center\">\n                        <div class=\"col-lg-5 order-lg-2 mb-5 mb-lg-0\">\n                            <h2 class=\"h1\">Bootstrap 5</h2>\n                            <p class=\"mb-4 lead fw-bold\">Latest version of Bootstrap without jQuery</p>\n                            <p class=\"mb-4\">Volt is built using the latest version of Bootstrap 5 and we only used Vanilla Javascript for everything including the plugins</p>\n                        </div>\n                        <div class=\"col-lg-6 order-lg-1\">\n                            <img src=\"{{ url_for('static', filename='assets/img/illustrations/bs5-illustrations.svg') }}\" alt=\"Front pages overview\">\n                        </div>\n                    </div>\n                    <div class=\"col-lg-5 mb-5 mb-lg-0\">\n                        <h2 class=\"h1 d-flex align-items-center\">Kanban Board <span class=\"ms-3 mb-0 fs-6 badge badge-lg rounded-pill text-gray-800 bg-secondary\">Pro</span></h2>\n                        <p class=\"mb-4 lead fw-bold\">Advanced FullCalendar.js integration</p>\n                        <p class=\"mb-4\">We created a fully editable calendar where you can add, edit and delete events for your admin dashboard.</p>\n                        <a href=\"https://jinja-volt-pro.appseed-srv1.com/kanban.html\" target=\"_blank\" class=\"btn btn-secondary d-inline-flex align-items-center me-3\">\n                            <svg class=\"icon icon-xs me-2\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M5 3a2 2 0 00-2 2v2a2 2 0 002 2h2a2 2 0 002-2V5a2 2 0 00-2-2H5zM5 11a2 2 0 00-2 2v2a2 2 0 002 2h2a2 2 0 002-2v-2a2 2 0 00-2-2H5zM11 5a2 2 0 012-2h2a2 2 0 012 2v2a2 2 0 01-2 2h-2a2 2 0 01-2-2V5zM11 13a2 2 0 012-2h2a2 2 0 012 2v2a2 2 0 01-2 2h-2a2 2 0 01-2-2v-2z\"></path></svg>\n                            Demo\n                        </a>\n                        <!-- <a href=\"https://themesberg.com/docs/volt-bootstrap-5-dashboard/plugins/kanban/\" target=\"_blank\" class=\"btn btn-outline-primary\"><span class=\"fas fa-book me-2\"></span> Guide</a> -->\n                    </div>\n                    <div class=\"col-lg-6\">\n                        <img src=\"{{ url_for('static', filename='assets/img/mockup-kanban-presentation.png') }}\" alt=\"Kanban Preview\">\n                    </div>\n                </div>\n                <div class=\"row justify-content-between align-items-center mb-5 mb-lg-7\">\n                    <div class=\"col-lg-5 order-lg-2 mb-5 mb-lg-0\">\n                        <h2 class=\"h1 d-flex align-items-center\">Mapbox <span class=\"ms-3 mb-0 fs-6 badge badge-lg rounded-pill text-gray-800 bg-secondary\">Pro</span></h2>\n                        <p class=\"mb-4 lead fw-bold\">Markers and cards integration with Leaflet.js</p>\n                        <p class=\"mb-4\">You can use this map to add markers with custom cards and show them on a map using our custom MapBox integration with Leaflet.js</p>\n                        <a href=\"https://jinja-volt-pro.appseed-srv1.com/map.html\" target=\"_blank\" class=\"btn btn-secondary d-inline-flex align-items-center me-3\">\n                            <svg class=\"icon icon-xs me-2\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M12 1.586l-4 4v12.828l4-4V1.586zM3.707 3.293A1 1 0 002 4v10a1 1 0 00.293.707L6 18.414V5.586L3.707 3.293zM17.707 5.293L14 1.586v12.828l2.293 2.293A1 1 0 0018 16V6a1 1 0 00-.293-.707z\" clip-rule=\"evenodd\"></path></svg>\n                            Demo\n                        </a>\n                    </div>\n                    <div class=\"col-lg-6 order-lg-1\">\n                        <img src=\"{{ url_for('static', filename='assets/img/mockup-map-presentation.png') }}\" alt=\"MapBox Leaflet.js Custom Integration Mockup\">\n                    </div>\n                </div>\n                <div class=\"row justify-content-between align-items-center mb-5 mb-lg-7\">\n                    <div class=\"col-lg-5 mb-5 mb-lg-0\">\n                        <h2 class=\"h1 d-flex align-items-center\">Calendar <span class=\"ms-3 mb-0 fs-6 badge badge-lg rounded-pill text-gray-800 bg-secondary\">Pro</span></h2>\n                        <p class=\"mb-4 lead fw-bold\">Advanced FullCalendar.js integration</p>\n                        <p class=\"mb-4\">We created a fully editable calendar where you can add, edit and delete events for your admin dashboard.</p>\n                        <a href=\"https://jinja-volt-pro.appseed-srv1.com/calendar.html\" target=\"_blank\" class=\"btn btn-secondary d-inline-flex align-items-center me-3\">\n                            <svg class=\"icon icon-xs me-2\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M6 2a1 1 0 00-1 1v1H4a2 2 0 00-2 2v10a2 2 0 002 2h12a2 2 0 002-2V6a2 2 0 00-2-2h-1V3a1 1 0 10-2 0v1H7V3a1 1 0 00-1-1zm0 5a1 1 0 000 2h8a1 1 0 100-2H6z\" clip-rule=\"evenodd\"></path></svg>\n                            Demo\n                        </a>                        \n                    </div>\n                    <div class=\"col-lg-6\">\n                        <img src=\"{{ url_for('static', filename='assets/img/mockup-calendar-presentation.png') }}\" alt=\"Calendar Preview\">\n                    </div>\n                </div>\n            </div>\n        </section>\n\n        <section class=\"section section-sm pt-0\">\n            <div class=\"container\">\n                <div class=\"row justify-content-center mb-5 mb-lg-6\">\n                    <div class=\"col-12 text-center\">\n                        <h2 class=\"h1 px-lg-5\">10 hand-crafted pages</h2>\n                        <p class=\"lead px-lg-10\">Every page from Volt has been carefully built to provide all the necessary pages your startup will require</p>\n                    </div>\n                </div>\n                <div class=\"row mb-5\">\n                    <div class=\"col-6 mb-5\">\n                        <a href=\"/dashboard.html\" class=\"page-preview scale-up-2\">\n                            <img class=\"shadow-lg rounded scale\" src=\"{{ url_for('static', filename='assets/img/pages/overview.jpg') }}\" alt=\"Dashboard page preview\">\n                            <div class=\"text-center show-on-hover rounded-bottom\">\n                                <h6 class=\"m-0 text-center d-inline-flex align-items-center text-white\">Overview <svg class=\"icon icon-xs ms-1\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M11 3a1 1 0 100 2h2.586l-6.293 6.293a1 1 0 101.414 1.414L15 6.414V9a1 1 0 102 0V4a1 1 0 00-1-1h-5z\"></path><path d=\"M5 5a2 2 0 00-2 2v8a2 2 0 002 2h8a2 2 0 002-2v-3a1 1 0 10-2 0v3H5V7h3a1 1 0 000-2H5z\"></path></svg></h6>\n                            </div>\n                        </a>\n                    </div>\n                    <div class=\"col-6 mb-5\">\n                        <a href=\"/transactions.html\" class=\"page-preview scale-up-2\">\n                            <img class=\"shadow-lg rounded scale\" src=\"{{ url_for('static', filename='assets/img/pages/transactions.jpg') }}\" alt=\"Transactions page preview\">\n                            <div class=\"text-center show-on-hover rounded-bottom\">\n                                <h6 class=\"m-0 text-center d-inline-flex align-items-center text-white\">Transactions <svg class=\"icon icon-xs ms-1\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M11 3a1 1 0 100 2h2.586l-6.293 6.293a1 1 0 101.414 1.414L15 6.414V9a1 1 0 102 0V4a1 1 0 00-1-1h-5z\"></path><path d=\"M5 5a2 2 0 00-2 2v8a2 2 0 002 2h8a2 2 0 002-2v-3a1 1 0 10-2 0v3H5V7h3a1 1 0 000-2H5z\"></path></svg></h6>\n                            </div>\n                        </a>\n                    </div>\n                    <div class=\"col-6 mb-5\">\n                        <a href=\"/settings.html\" class=\"page-preview scale-up-2\">\n                            <img class=\"shadow-lg rounded scale\" src=\"{{ url_for('static', filename='assets/img/pages/settings.jpg') }}\" alt=\"Settings page preview\">\n                            <div class=\"text-center show-on-hover rounded-bottom\">\n                                <h6 class=\"m-0 text-center d-inline-flex align-items-center text-white\">Settings <svg class=\"icon icon-xs ms-1\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M11 3a1 1 0 100 2h2.586l-6.293 6.293a1 1 0 101.414 1.414L15 6.414V9a1 1 0 102 0V4a1 1 0 00-1-1h-5z\"></path><path d=\"M5 5a2 2 0 00-2 2v8a2 2 0 002 2h8a2 2 0 002-2v-3a1 1 0 10-2 0v3H5V7h3a1 1 0 000-2H5z\"></path></svg></h6>\n                            </div>\n                        </a>\n                    </div>\n                    <div class=\"col-6 mb-5\">\n                        <a href=\"/page-sign-in.html\" class=\"page-preview scale-up-2\">\n                            <img class=\"shadow-lg rounded scale\" src=\"{{ url_for('static', filename='assets/img/pages/sign-in.jpg') }}\" alt=\"Sign In page preview\">\n                            <div class=\"text-center show-on-hover rounded-bottom\">\n                                <h6 class=\"m-0 text-center d-inline-flex align-items-center text-white\">Sign In <svg class=\"icon icon-xs ms-1\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M11 3a1 1 0 100 2h2.586l-6.293 6.293a1 1 0 101.414 1.414L15 6.414V9a1 1 0 102 0V4a1 1 0 00-1-1h-5z\"></path><path d=\"M5 5a2 2 0 00-2 2v8a2 2 0 002 2h8a2 2 0 002-2v-3a1 1 0 10-2 0v3H5V7h3a1 1 0 000-2H5z\"></path></svg></h6>\n                            </div>\n                        </a>\n                    </div>\n                    <div class=\"col-6 mb-5\">\n                        <a href=\"/page-sign-up.html\" class=\"page-preview scale-up-2\">\n                            <img class=\"shadow-lg rounded scale\" src=\"{{ url_for('static', filename='assets/img/pages/sign-up.jpg') }}\" alt=\"Sign Up page preview\">\n                            <div class=\"text-center show-on-hover rounded-bottom\">\n                                <h6 class=\"m-0 text-center d-inline-flex align-items-center text-white\">Sign Up <svg class=\"icon icon-xs ms-1\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M11 3a1 1 0 100 2h2.586l-6.293 6.293a1 1 0 101.414 1.414L15 6.414V9a1 1 0 102 0V4a1 1 0 00-1-1h-5z\"></path><path d=\"M5 5a2 2 0 00-2 2v8a2 2 0 002 2h8a2 2 0 002-2v-3a1 1 0 10-2 0v3H5V7h3a1 1 0 000-2H5z\"></path></svg></h6>\n                            </div>\n                        </a>\n                    </div>\n                    <div class=\"col-6 mb-5\">\n                        <a href=\"/page-lock.html\" class=\"page-preview scale-up-2\">\n                            <img class=\"shadow-lg rounded scale\" src=\"{{ url_for('static', filename='assets/img/pages/lock.jpg') }}\" alt=\"Lock page preview\">\n                            <div class=\"text-center show-on-hover rounded-bottom\">\n                                <h6 class=\"m-0 text-center d-inline-flex align-items-center text-white\">Lock <svg class=\"icon icon-xs ms-1\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M11 3a1 1 0 100 2h2.586l-6.293 6.293a1 1 0 101.414 1.414L15 6.414V9a1 1 0 102 0V4a1 1 0 00-1-1h-5z\"></path><path d=\"M5 5a2 2 0 00-2 2v8a2 2 0 002 2h8a2 2 0 002-2v-3a1 1 0 10-2 0v3H5V7h3a1 1 0 000-2H5z\"></path></svg></h6>\n                            </div>\n                        </a>\n                    </div>\n                    <div class=\"col-6 mb-5\">\n                        <a href=\"/page-forgot-password.html\" class=\"page-preview scale-up-2\">\n                            <img class=\"shadow-lg rounded scale\" src=\"{{ url_for('static', filename='assets/img/pages/forgot-password.jpg') }}\" alt=\"Forgot password preview\">\n                            <div class=\"text-center show-on-hover rounded-bottom\">\n                                <h6 class=\"m-0 text-center d-inline-flex align-items-center text-white\">Forgot password <svg class=\"icon icon-xs ms-1\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M11 3a1 1 0 100 2h2.586l-6.293 6.293a1 1 0 101.414 1.414L15 6.414V9a1 1 0 102 0V4a1 1 0 00-1-1h-5z\"></path><path d=\"M5 5a2 2 0 00-2 2v8a2 2 0 002 2h8a2 2 0 002-2v-3a1 1 0 10-2 0v3H5V7h3a1 1 0 000-2H5z\"></path></svg></h6>\n                            </div>\n                        </a>\n                    </div>\n                    <div class=\"col-6 mb-5\">\n                        <a href=\"/page-reset-password.html\" class=\"page-preview scale-up-2\">\n                            <img class=\"shadow-lg rounded scale\" src=\"{{ url_for('static', filename='assets/img/pages/reset-password.jpg') }}\" alt=\"Reset password preview\">\n                            <div class=\"text-center show-on-hover rounded-bottom\">\n                                <h6 class=\"m-0 text-center d-inline-flex align-items-center text-white\">Reset password <svg class=\"icon icon-xs ms-1\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M11 3a1 1 0 100 2h2.586l-6.293 6.293a1 1 0 101.414 1.414L15 6.414V9a1 1 0 102 0V4a1 1 0 00-1-1h-5z\"></path><path d=\"M5 5a2 2 0 00-2 2v8a2 2 0 002 2h8a2 2 0 002-2v-3a1 1 0 10-2 0v3H5V7h3a1 1 0 000-2H5z\"></path></svg></h6>\n                            </div>\n                        </a>\n                    </div>\n                    <div class=\"col-6 mb-5\">\n                        <a href=\"/page-404.html\" class=\"page-preview scale-up-2\">\n                            <img class=\"shadow-lg rounded scale\" src=\"{{ url_for('static', filename='assets/img/pages/404.jpg') }}\" alt=\"404 error preview\">\n                            <div class=\"text-center show-on-hover rounded-bottom\">\n                                <h6 class=\"m-0 text-center d-inline-flex align-items-center text-white\">404 <svg class=\"icon icon-xs ms-1\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M11 3a1 1 0 100 2h2.586l-6.293 6.293a1 1 0 101.414 1.414L15 6.414V9a1 1 0 102 0V4a1 1 0 00-1-1h-5z\"></path><path d=\"M5 5a2 2 0 00-2 2v8a2 2 0 002 2h8a2 2 0 002-2v-3a1 1 0 10-2 0v3H5V7h3a1 1 0 000-2H5z\"></path></svg></h6>\n                            </div>\n                        </a>\n                    </div>\n                    <div class=\"col-6 mb-5\">\n                        <a href=\"/page-500.html\" class=\"page-preview scale-up-2\">\n                            <img class=\"shadow-lg rounded scale\" src=\"{{ url_for('static', filename='assets/img/pages/500.jpg') }}\" alt=\"500 error preview\">\n                            <div class=\"text-center show-on-hover rounded-bottom\">\n                                <h6 class=\"m-0 text-center d-inline-flex align-items-center text-white\">500 <svg class=\"icon icon-xs ms-1\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M11 3a1 1 0 100 2h2.586l-6.293 6.293a1 1 0 101.414 1.414L15 6.414V9a1 1 0 102 0V4a1 1 0 00-1-1h-5z\"></path><path d=\"M5 5a2 2 0 00-2 2v8a2 2 0 002 2h8a2 2 0 002-2v-3a1 1 0 10-2 0v3H5V7h3a1 1 0 000-2H5z\"></path></svg></h6>\n                            </div>\n                        </a>\n                    </div>\n                </div>\n            </div>\n        </section>\n\n        <section class=\"section section-lg bg-gray-800 text-white\">\n            <div class=\"container\">\n                <div class=\"row justify-content-center mb-5 mb-lg-6\">\n                    <div class=\"col-12 text-center\">\n                        <h2 class=\"h1 px-lg-5\">Awesome Features</h2>\n                        <p class=\"lead px-lg-8\">You get all Bootstrap components fully customized. Besides, you receive numerous plugins out of the box and ready to use.</p>\n                    </div>\n                </div>\n                <div class=\"row\">\n                    <div class=\"col-12 col-sm-6 col-lg-3\">\n                        <div class=\"card bg-white shadow-soft text-primary rounded mb-4\">\n                            <div class=\"px-3 px-lg-4 py-5 text-center\">\n                                <svg class=\"icon icon-md mb-3\" aria-hidden=\"true\" focusable=\"false\" data-prefix=\"fab\" data-icon=\"bootstrap\" role=\"img\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 448 512\"><path fill=\"currentColor\" d=\"M292.3 311.93c0 42.41-39.72 41.43-43.92 41.43h-80.89v-81.69h80.89c42.56 0 43.92 31.9 43.92 40.26zm-50.15-73.13c.67 0 38.44 1 38.44-36.31 0-15.52-3.51-35.87-38.44-35.87h-74.66v72.18h74.66zM448 106.67v298.66A74.89 74.89 0 0 1 373.33 480H74.67A74.89 74.89 0 0 1 0 405.33V106.67A74.89 74.89 0 0 1 74.67 32h298.66A74.89 74.89 0 0 1 448 106.67zM338.05 317.86c0-21.57-6.65-58.29-49.05-67.35v-.73c22.91-9.78 37.34-28.25 37.34-55.64 0-7 2-64.78-77.6-64.78h-127v261.33c128.23 0 139.87 1.68 163.6-5.71 14.21-4.42 52.71-17.98 52.71-67.12z\"></path></svg>\n                                <h5 class=\"fw-bold text-primary\">Bootstrap 5</h5>\n                                <p class=\"mb-0 text-gray-600\">Built with the most popular CSS Framework</p>\n                            </div>\n                        </div>\n                    </div>\n                    <div class=\"col-12 col-sm-6 col-lg-3\">\n                        <div class=\"card bg-white shadow-soft text-primary rounded mb-4\">\n                            <div class=\"px-3 px-lg-4 py-5 text-center\">\n                                <svg class=\"icon icon-md mb-3\" aria-hidden=\"true\" focusable=\"false\" data-prefix=\"fab\" data-icon=\"sass\" role=\"img\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 640 512\"><path fill=\"currentColor\" d=\"M301.84 378.92c-.3.6-.6 1.08 0 0zm249.13-87a131.16 131.16 0 0 0-58 13.5c-5.9-11.9-12-22.3-13-30.1-1.2-9.1-2.5-14.5-1.1-25.3s7.7-26.1 7.6-27.2-1.4-6.6-14.3-6.7-24 2.5-25.29 5.9a122.83 122.83 0 0 0-5.3 19.1c-2.3 11.7-25.79 53.5-39.09 75.3-4.4-8.5-8.1-16-8.9-22-1.2-9.1-2.5-14.5-1.1-25.3s7.7-26.1 7.6-27.2-1.4-6.6-14.29-6.7-24 2.5-25.3 5.9-2.7 11.4-5.3 19.1-33.89 77.3-42.08 95.4c-4.2 9.2-7.8 16.6-10.4 21.6-.4.8-.7 1.3-.9 1.7.3-.5.5-1 .5-.8-2.2 4.3-3.5 6.7-3.5 6.7v.1c-1.7 3.2-3.6 6.1-4.5 6.1-.6 0-1.9-8.4.3-19.9 4.7-24.2 15.8-61.8 15.7-63.1-.1-.7 2.1-7.2-7.3-10.7-9.1-3.3-12.4 2.2-13.2 2.2s-1.4 2-1.4 2 10.1-42.4-19.39-42.4c-18.4 0-44 20.2-56.58 38.5-7.9 4.3-25 13.6-43 23.5-6.9 3.8-14 7.7-20.7 11.4-.5-.5-.9-1-1.4-1.5-35.79-38.2-101.87-65.2-99.07-116.5 1-18.7 7.5-67.8 127.07-127.4 98-48.8 176.35-35.4 189.84-5.6 19.4 42.5-41.89 121.6-143.66 133-38.79 4.3-59.18-10.7-64.28-16.3-5.3-5.9-6.1-6.2-8.1-5.1-3.3 1.8-1.2 7 0 10.1 3 7.9 15.5 21.9 36.79 28.9 18.7 6.1 64.18 9.5 119.17-11.8 61.78-23.8 109.87-90.1 95.77-145.6C386.52 18.32 293-.18 204.57 31.22c-52.69 18.7-109.67 48.1-150.66 86.4-48.69 45.6-56.48 85.3-53.28 101.9 11.39 58.9 92.57 97.3 125.06 125.7-1.6.9-3.1 1.7-4.5 2.5-16.29 8.1-78.18 40.5-93.67 74.7-17.5 38.8 2.9 66.6 16.29 70.4 41.79 11.6 84.58-9.3 107.57-43.6s20.2-79.1 9.6-99.5c-.1-.3-.3-.5-.4-.8 4.2-2.5 8.5-5 12.8-7.5 8.29-4.9 16.39-9.4 23.49-13.3-4 10.8-6.9 23.8-8.4 42.6-1.8 22 7.3 50.5 19.1 61.7 5.2 4.9 11.49 5 15.39 5 13.8 0 20-11.4 26.89-25 8.5-16.6 16-35.9 16-35.9s-9.4 52.2 16.3 52.2c9.39 0 18.79-12.1 23-18.3v.1s.2-.4.7-1.2c1-1.5 1.5-2.4 1.5-2.4v-.3c3.8-6.5 12.1-21.4 24.59-46 16.2-31.8 31.69-71.5 31.69-71.5a201.24 201.24 0 0 0 6.2 25.8c2.8 9.5 8.7 19.9 13.4 30-3.8 5.2-6.1 8.2-6.1 8.2a.31.31 0 0 0 .1.2c-3 4-6.4 8.3-9.9 12.5-12.79 15.2-28 32.6-30 37.6-2.4 5.9-1.8 10.3 2.8 13.7 3.4 2.6 9.4 3 15.69 2.5 11.5-.8 19.6-3.6 23.5-5.4a82.2 82.2 0 0 0 20.19-10.6c12.5-9.2 20.1-22.4 19.4-39.8-.4-9.6-3.5-19.2-7.3-28.2 1.1-1.6 2.3-3.3 3.4-5C434.8 301.72 450.1 270 450.1 270a201.24 201.24 0 0 0 6.2 25.8c2.4 8.1 7.09 17 11.39 25.7-18.59 15.1-30.09 32.6-34.09 44.1-7.4 21.3-1.6 30.9 9.3 33.1 4.9 1 11.9-1.3 17.1-3.5a79.46 79.46 0 0 0 21.59-11.1c12.5-9.2 24.59-22.1 23.79-39.6-.3-7.9-2.5-15.8-5.4-23.4 15.7-6.6 36.09-10.2 62.09-7.2 55.68 6.5 66.58 41.3 64.48 55.8s-13.8 22.6-17.7 25-5.1 3.3-4.8 5.1c.5 2.6 2.3 2.5 5.6 1.9 4.6-.8 29.19-11.8 30.29-38.7 1.6-34-31.09-71.4-89-71.1zm-429.18 144.7c-18.39 20.1-44.19 27.7-55.28 21.3C54.61 451 59.31 421.42 82 400c13.8-13 31.59-25 43.39-32.4 2.7-1.6 6.6-4 11.4-6.9.8-.5 1.2-.7 1.2-.7.9-.6 1.9-1.1 2.9-1.7 8.29 30.4.3 57.2-19.1 78.3zm134.36-91.4c-6.4 15.7-19.89 55.7-28.09 53.6-7-1.8-11.3-32.3-1.4-62.3 5-15.1 15.6-33.1 21.9-40.1 10.09-11.3 21.19-14.9 23.79-10.4 3.5 5.9-12.2 49.4-16.2 59.2zm111 53c-2.7 1.4-5.2 2.3-6.4 1.6-.9-.5 1.1-2.4 1.1-2.4s13.9-14.9 19.4-21.7c3.2-4 6.9-8.7 10.89-13.9 0 .5.1 1 .1 1.6-.13 17.9-17.32 30-25.12 34.8zm85.58-19.5c-2-1.4-1.7-6.1 5-20.7 2.6-5.7 8.59-15.3 19-24.5a36.18 36.18 0 0 1 1.9 10.8c-.1 22.5-16.2 30.9-25.89 34.4z\"></path></svg>\n                                <h5 class=\"fw-bold text-primary\">Sass</h5>\n                                <p class=\"mb-0 text-gray-600\">Variables and mixins to empower development</p>\n                            </div>\n                        </div>\n                    </div>\n                    <div class=\"col-12 col-sm-6 col-lg-3\">\n                        <div class=\"card bg-white shadow-soft text-primary rounded mb-4\">\n                            <div class=\"px-3 px-lg-4 py-5 text-center\">\n                                <svg class=\"icon icon-md mb-3\" fill=\"none\" stroke=\"currentColor\" viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M12 18h.01M8 21h8a2 2 0 002-2V5a2 2 0 00-2-2H8a2 2 0 00-2 2v14a2 2 0 002 2z\"></path></svg>\n                                <h5 class=\"fw-bold text-primary\">Responsive</h5>\n                                <p class=\"mb-0 text-gray-600\">All pages and components are 100% responsive</p>\n                            </div>\n                        </div>\n                    </div>\n                    <div class=\"col-12 col-sm-6 col-lg-3\">\n                        <div class=\"card bg-white shadow-soft text-primary rounded mb-4\">\n                            <div class=\"px-3 px-lg-4 py-5 text-center\">\n                                <svg class=\"icon icon-md mb-3\" aria-hidden=\"true\" focusable=\"false\" data-prefix=\"fab\" data-icon=\"gulp\" role=\"img\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 256 512\"><path fill=\"currentColor\" d=\"M209.8 391.1l-14.1 24.6-4.6 80.2c0 8.9-28.3 16.1-63.1 16.1s-63.1-7.2-63.1-16.1l-5.8-79.4-14.9-25.4c41.2 17.3 126 16.7 165.6 0zm-196-253.3l13.6 125.5c5.9-20 20.8-47 40-55.2 6.3-2.7 12.7-2.7 18.7.9 5.2 3 9.6 9.3 10.1 11.8 1.2 6.5-2 9.1-4.5 9.1-3 0-5.3-4.6-6.8-7.3-4.1-7.3-10.3-7.6-16.9-2.8-6.9 5-12.9 13.4-17.1 20.7-5.1 8.8-9.4 18.5-12 28.2-1.5 5.6-2.9 14.6-.6 19.9 1 2.2 2.5 3.6 4.9 3.6 5 0 12.3-6.6 15.8-10.1 4.5-4.5 10.3-11.5 12.5-16l5.2-15.5c2.6-6.8 9.9-5.6 9.9 0 0 10.2-3.7 13.6-10 34.7-5.8 19.5-7.6 25.8-7.6 25.8-.7 2.8-3.4 7.5-6.3 7.5-1.2 0-2.1-.4-2.6-1.2-1-1.4-.9-5.3-.8-6.3.2-3.2 6.3-22.2 7.3-25.2-2 2.2-4.1 4.4-6.4 6.6-5.4 5.1-14.1 11.8-21.5 11.8-3.4 0-5.6-.9-7.7-2.4l7.6 79.6c2 5 39.2 17.1 88.2 17.1 49.1 0 86.3-12.2 88.2-17.1l10.9-94.6c-5.7 5.2-12.3 11.6-19.6 14.8-5.4 2.3-17.4 3.8-17.4-5.7 0-5.2 9.1-14.8 14.4-21.5 1.4-1.7 4.7-5.9 4.7-8.1 0-2.9-6-2.2-11.7 2.5-3.2 2.7-6.2 6.3-8.7 9.7-4.3 6-6.6 11.2-8.5 15.5-6.2 14.2-4.1 8.6-9.1 22-5 13.3-4.2 11.8-5.2 14-.9 1.9-2.2 3.5-4 4.5-1.9 1-4.5.9-6.1-.3-.9-.6-1.3-1.9-1.3-3.7 0-.9.1-1.8.3-2.7 1.5-6.1 7.8-18.1 15-34.3 1.6-3.7 1-2.6.8-2.3-6.2 6-10.9 8.9-14.4 10.5-5.8 2.6-13 2.6-14.5-4.1-.1-.4-.1-.8-.2-1.2-11.8 9.2-24.3 11.7-20-8.1-4.6 8.2-12.6 14.9-22.4 14.9-4.1 0-7.1-1.4-8.6-5.1-2.3-5.5 1.3-14.9 4.6-23.8 1.7-4.5 4-9.9 7.1-16.2 1.6-3.4 4.2-5.4 7.6-4.5.6.2 1.1.4 1.6.7 2.6 1.8 1.6 4.5.3 7.2-3.8 7.5-7.1 13-9.3 20.8-.9 3.3-2 9 1.5 9 2.4 0 4.7-.8 6.9-2.4 4.6-3.4 8.3-8.5 11.1-13.5 2-3.6 4.4-8.3 5.6-12.3.5-1.7 1.1-3.3 1.8-4.8 1.1-2.5 2.6-5.1 5.2-5.1 1.3 0 2.4.5 3.2 1.5 1.7 2.2 1.3 4.5.4 6.9-2 5.6-4.7 10.6-6.9 16.7-1.3 3.5-2.7 8-2.7 11.7 0 3.4 3.7 2.6 6.8 1.2 2.4-1.1 4.8-2.8 6.8-4.5 1.2-4.9.9-3.8 26.4-68.2 1.3-3.3 3.7-4.7 6.1-4.7 1.2 0 2.2.4 3.2 1.1 1.7 1.3 1.7 4.1 1 6.2-.7 1.9-.6 1.3-4.5 10.5-5.2 12.1-8.6 20.8-13.2 31.9-1.9 4.6-7.7 18.9-8.7 22.3-.6 2.2-1.3 5.8 1 5.8 5.4 0 19.3-13.1 23.1-17 .2-.3.5-.4.9-.6.6-1.9 1.2-3.7 1.7-5.5 1.4-3.8 2.7-8.2 5.3-11.3.8-1 1.7-1.6 2.7-1.6 2.8 0 4.2 1.2 4.2 4 0 1.1-.7 5.1-1.1 6.2 1.4-1.5 2.9-3 4.5-4.5 15-13.9 25.7-6.8 25.7.2 0 7.4-8.9 17.7-13.8 23.4-1.6 1.9-4.9 5.4-5 6.4 0 1.3.9 1.8 2.2 1.8 2 0 6.4-3.5 8-4.7 5-3.9 11.8-9.9 16.6-14.1l14.8-136.8c-30.5 17.1-197.6 17.2-228.3.2zm229.7-8.5c0 21-231.2 21-231.2 0 0-8.8 51.8-15.9 115.6-15.9 9 0 17.8.1 26.3.4l12.6-48.7L228.1.6c1.4-1.4 5.8-.2 9.9 3.5s6.6 7.9 5.3 9.3l-.1.1L185.9 74l-10 40.7c39.9 2.6 67.6 8.1 67.6 14.6zm-69.4 4.6c0-.8-.9-1.5-2.5-2.1l-.2.8c0 1.3-5 2.4-11.1 2.4s-11.1-1.1-11.1-2.4c0-.1 0-.2.1-.3l.2-.7c-1.8.6-3 1.4-3 2.3 0 2.1 6.2 3.7 13.7 3.7 7.7.1 13.9-1.6 13.9-3.7z\"></path></svg>\n                                <h5 class=\"fw-bold text-primary\">Gulp</h5>\n                                <p class=\"mb-0 text-gray-600\">Gulp & BrowserSync for a flawless workflow</p>\n                            </div>\n                        </div>\n                    </div>\n                    <div class=\"col-12 col-sm-6 col-lg-3\">\n                        <div class=\"card bg-white shadow-soft text-primary rounded mb-4\">\n                            <div class=\"px-3 px-lg-4 py-5 text-center\">\n                                <svg class=\"icon icon-md mb-3\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M4 3a2 2 0 00-2 2v10a2 2 0 002 2h12a2 2 0 002-2V5a2 2 0 00-2-2H4zm12 12H4l4-8 3 6 2-4 3 6z\" clip-rule=\"evenodd\"></path></svg>\n                                <h5 class=\"fw-bold text-primary\">Creative rights</h5>\n                                <p class=\"mb-0 text-gray-600\">All images and fonts are licensed & free to use</p>\n                            </div>\n                        </div>\n                    </div>\n                    <div class=\"col-12 col-sm-6 col-lg-3\">\n                        <div class=\"card bg-white shadow-soft text-primary rounded mb-4\">\n                            <div class=\"px-3 px-lg-4 py-5 text-center\">\n                                <svg class=\"icon icon-md mb-3\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M9 4.804A7.968 7.968 0 005.5 4c-1.255 0-2.443.29-3.5.804v10A7.969 7.969 0 015.5 14c1.669 0 3.218.51 4.5 1.385A7.962 7.962 0 0114.5 14c1.255 0 2.443.29 3.5.804v-10A7.968 7.968 0 0014.5 4c-1.255 0-2.443.29-3.5.804V12a1 1 0 11-2 0V4.804z\"></path></svg>\n                                <h5 class=\"fw-bold text-primary\">Documentation</h5>\n                                <p class=\"mb-0 text-gray-600\">Everything that comes is well documented</p>\n                            </div>\n                        </div>\n                    </div>\n                    <div class=\"col-12 col-sm-6 col-lg-3\">\n                        <div class=\"card bg-white shadow-soft text-primary rounded mb-4\">\n                            <div class=\"px-3 px-lg-4 py-5 text-center\">\n                                <svg class=\"icon icon-md mb-3\" aria-hidden=\"true\" focusable=\"false\" data-prefix=\"fab\" data-icon=\"accessible-icon\" role=\"img\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 448 512\"><path fill=\"currentColor\" d=\"M423.9 255.8L411 413.1c-3.3 40.7-63.9 35.1-60.6-4.9l10-122.5-41.1 2.3c10.1 20.7 15.8 43.9 15.8 68.5 0 41.2-16.1 78.7-42.3 106.5l-39.3-39.3c57.9-63.7 13.1-167.2-74-167.2-25.9 0-49.5 9.9-67.2 26L73 243.2c22-20.7 50.1-35.1 81.4-40.2l75.3-85.7-42.6-24.8-51.6 46c-30 26.8-70.6-18.5-40.5-45.4l68-60.7c9.8-8.8 24.1-10.2 35.5-3.6 0 0 139.3 80.9 139.5 81.1 16.2 10.1 20.7 36 6.1 52.6L285.7 229l106.1-5.9c18.5-1.1 33.6 14.4 32.1 32.7zm-64.9-154c28.1 0 50.9-22.8 50.9-50.9C409.9 22.8 387.1 0 359 0c-28.1 0-50.9 22.8-50.9 50.9 0 28.1 22.8 50.9 50.9 50.9zM179.6 456.5c-80.6 0-127.4-90.6-82.7-156.1l-39.7-39.7C36.4 287 24 320.3 24 356.4c0 130.7 150.7 201.4 251.4 122.5l-39.7-39.7c-16 10.9-35.3 17.3-56.1 17.3z\"></path></svg>\n                                <h5 class=\"fw-bold text-primary\">WCAG Accessibility</h5>\n                                <p class=\"mb-0 text-gray-600\">Accessibility oriented design and functionality</p>\n                            </div>\n                        </div>\n                    </div>\n                    <div class=\"col-12 col-sm-6 col-lg-3\">\n                        <div class=\"card bg-white shadow-soft text-primary rounded mb-4\">\n                            <div class=\"px-3 px-lg-4 py-5 text-center\">\n                                <svg class=\"icon icon-md mb-3\" aria-hidden=\"true\" focusable=\"false\" data-prefix=\"fab\" data-icon=\"html5\" role=\"img\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 384 512\"><path fill=\"currentColor\" d=\"M0 32l34.9 395.8L191.5 480l157.6-52.2L384 32H0zm308.2 127.9H124.4l4.1 49.4h175.6l-13.6 148.4-97.9 27v.3h-1.1l-98.7-27.3-6-75.8h47.7L138 320l53.5 14.5 53.7-14.5 6-62.2H84.3L71.5 112.2h241.1l-4.4 47.7z\"></path></svg>\n                                <h5 class=\"fw-bold text-primary\">W3C Validated</h5>\n                                <p class=\"mb-0 text-gray-600\">HTML pages are all valid by W3C Standards</p>\n                            </div>\n                        </div>\n                    </div>\n                    <div class=\"col-12 col-sm-6 col-lg-3\">\n                        <div class=\"card bg-white shadow-soft text-primary rounded mb-4\">\n                            <div class=\"px-3 px-lg-4 py-5 text-center\">\n                                <svg class=\"icon icon-md mb-3\" aria-hidden=\"true\" focusable=\"false\" data-prefix=\"fab\" data-icon=\"js-square\" role=\"img\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 448 512\"><path fill=\"currentColor\" d=\"M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zM243.8 381.4c0 43.6-25.6 63.5-62.9 63.5-33.7 0-53.2-17.4-63.2-38.5l34.3-20.7c6.6 11.7 12.6 21.6 27.1 21.6 13.8 0 22.6-5.4 22.6-26.5V237.7h42.1v143.7zm99.6 63.5c-39.1 0-64.4-18.6-76.7-43l34.3-19.8c9 14.7 20.8 25.6 41.5 25.6 17.4 0 28.6-8.7 28.6-20.8 0-14.4-11.4-19.5-30.7-28l-10.5-4.5c-30.4-12.9-50.5-29.2-50.5-63.5 0-31.6 24.1-55.6 61.6-55.6 26.8 0 46 9.3 59.8 33.7L368 290c-7.2-12.9-15-18-27.1-18-12.3 0-20.1 7.8-20.1 18 0 12.6 7.8 17.7 25.9 25.6l10.5 4.5c35.8 15.3 55.9 31 55.9 66.2 0 37.8-29.8 58.6-69.7 58.6z\"></path></svg>\n                                <h5 class=\"fw-bold text-primary\">Vanilla JS</h5>\n                                <p class=\"mb-0 text-gray-600\">jQuery is not a required dependency for Volt</p>\n                            </div>\n                        </div>\n                    </div>\n                    <div class=\"col-12 col-sm-6 col-lg-3\">\n                        <div class=\"card bg-white shadow-soft text-primary rounded mb-4\">\n                            <div class=\"px-3 px-lg-4 py-5 text-center\">\n                                <svg class=\"icon icon-md mb-3\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M6 2a1 1 0 00-1 1v1H4a2 2 0 00-2 2v10a2 2 0 002 2h12a2 2 0 002-2V6a2 2 0 00-2-2h-1V3a1 1 0 10-2 0v1H7V3a1 1 0 00-1-1zm0 5a1 1 0 000 2h8a1 1 0 100-2H6z\" clip-rule=\"evenodd\"></path></svg>\n                                <h5 class=\"fw-bold text-primary\">Calendar</h5>\n                                <p class=\"mb-0 text-gray-600\">Advanced integration with FullCalendar.js</p>\n                            </div>\n                        </div>\n                    </div>\n                    <div class=\"col-12 col-sm-6 col-lg-3\">\n                        <div class=\"card bg-white shadow-soft text-primary rounded mb-4\">\n                            <div class=\"px-3 px-lg-4 py-5 text-center\">\n                                <svg class=\"icon icon-md mb-3\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M12 1.586l-4 4v12.828l4-4V1.586zM3.707 3.293A1 1 0 002 4v10a1 1 0 00.293.707L6 18.414V5.586L3.707 3.293zM17.707 5.293L14 1.586v12.828l2.293 2.293A1 1 0 0018 16V6a1 1 0 00-.293-.707z\" clip-rule=\"evenodd\"></path></svg>\n                                <h5 class=\"fw-bold text-primary\">MapBox</h5>\n                                <p class=\"mb-0 text-gray-600\">Custom integration with markers and cards</p>\n                            </div>\n                        </div>\n                    </div>\n                    <div class=\"col-12 col-sm-6 col-lg-3\">\n                        <div class=\"card bg-white shadow-soft text-primary rounded mb-4\">\n                            <div class=\"px-3 px-lg-4 py-5 text-center\">\n                                <svg class=\"icon icon-md mb-3\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M11 3a1 1 0 10-2 0v1a1 1 0 102 0V3zM15.657 5.757a1 1 0 00-1.414-1.414l-.707.707a1 1 0 001.414 1.414l.707-.707zM18 10a1 1 0 01-1 1h-1a1 1 0 110-2h1a1 1 0 011 1zM5.05 6.464A1 1 0 106.464 5.05l-.707-.707a1 1 0 00-1.414 1.414l.707.707zM5 10a1 1 0 01-1 1H3a1 1 0 110-2h1a1 1 0 011 1zM8 16v-1h4v1a2 2 0 11-4 0zM12 14c.015-.34.208-.646.477-.859a4 4 0 10-4.954 0c.27.213.462.519.476.859h4.002z\"></path></svg>\n                                <h5 class=\"fw-bold text-primary\">Design</h5>\n                                <p class=\"mb-0 text-gray-600\">Crafted by professional UI/UX designers</p>\n                            </div>\n                        </div>\n                    </div>\n                </div>\n            </div>\n        </section>\n\n        <section class=\"section section-lg line-bottom-soft\">\n            <div class=\"container\">\n                <div class=\"row justify-content-center mb-5 mb-lg-6\">\n                    <div class=\"col-12 text-center\">\n                        <h2 class=\"h1 px-lg-5\">What's inside?</h2>\n                        <p class=\"lead px-lg-8\">We have carefully crafted the perfect folder structure to ensure that finding the files you're looking for are easily reachable and well organized.</p>\n                    </div>\n                </div>\n                <div class=\"row d-flex align-items-center\">\n                    <div class=\"col-12 col-lg-6 mb-4\">\n                        <div class=\"d-none d-lg-block mt-5\">\n                            <h4>You need only HTML, CSS and Javascript?</h4>\n                            <p class=\"lead mb-4\">Don't worry, we got you covered. We have a folder called <code class=\"text-danger\">html&css</code> which includes only the basic HTML5, CSS3 and Javascript technologies.</p>\n                            <a href=\"https://themesberg.com/docs/volt-bootstrap-5-dashboard/getting-started/file-structure/\" target=\"_blank\" class=\"btn btn-secondary d-inline-flex align-items-center\">\n                                <svg class=\"icon icon-xs me-2\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-8-3a1 1 0 00-.867.5 1 1 0 11-1.731-1A3 3 0 0113 8a3.001 3.001 0 01-2 2.83V11a1 1 0 11-2 0v-1a1 1 0 011-1 1 1 0 100-2zm0 8a1 1 0 100-2 1 1 0 000 2z\" clip-rule=\"evenodd\"></path></svg>\n                                Docs \n                            </a>\n                        </div>\n                    </div>\n                    <div class=\"col-12 col-lg-6 order-lg-first d-flex justify-content-center\">\n                        <ul class=\"d-block fmw-100 list-unstyled folder-structure\">\n                            <li data-bs-toggle=\"tooltip\" data-bs-placement=\"left\" title=\"Main folder that you will be working with\">\n                                <svg class=\"icon icon-sm me-2\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M2 6a2 2 0 012-2h5l2 2h5a2 2 0 012 2v6a2 2 0 01-2 2H4a2 2 0 01-2-2V6z\"></path></svg>\n                                src\n                            </li>\n                            <li>\n                                <ul class=\"list-unstyled ps-4\">\n                                    <li class=\"d-flex align-items-center mb-1\" data-bs-toggle=\"tooltip\" data-bs-placement=\"left\" title=\"CSS, Images, Fonts and Javascript\">\n                                        <svg class=\"icon icon-sm me-2\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M2 6a2 2 0 012-2h5l2 2h5a2 2 0 012 2v6a2 2 0 01-2 2H4a2 2 0 01-2-2V6z\"></path></svg>\n                                        assets\n                                    </li>\n                                    <li class=\"d-flex align-items-center mb-1\" data-bs-toggle=\"tooltip\" data-bs-placement=\"left\" title=\"HTML templates\">\n                                        <svg class=\"icon icon-sm me-2\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M2 6a2 2 0 012-2h5l2 2h5a2 2 0 012 2v6a2 2 0 01-2 2H4a2 2 0 01-2-2V6z\"></path></svg>\n                                        pages\n                                    </li>\n                                    <li class=\"d-flex align-items-center mb-1\" data-bs-toggle=\"tooltip\" data-bs-placement=\"left\" title=\"Partials are HTML snippets that are included in multiple pages, such as the menu or footer\">\n                                        <svg class=\"icon icon-sm me-2\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M2 6a2 2 0 012-2h5l2 2h5a2 2 0 012 2v6a2 2 0 01-2 2H4a2 2 0 01-2-2V6z\"></path></svg>\n                                        partials\n                                    </li>\n                                    <li class=\"d-flex align-items-center mb-1\" data-bs-toggle=\"tooltip\" data-bs-placement=\"left\" title=\"Sass source files\">\n                                        <svg class=\"icon icon-sm me-2\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M2 6a2 2 0 012-2h5l2 2h5a2 2 0 012 2v6a2 2 0 01-2 2H4a2 2 0 01-2-2V6z\"></path></svg>\n                                        scss\n                                    </li>\n                                    <li class=\"d-flex align-items-center mb-1\" data-bs-toggle=\"tooltip\" data-bs-placement=\"left\" title=\"The page you're looking at right now. Call it inception.\">\n                                        <svg class=\"icon icon-sm me-2 text-warning\" aria-hidden=\"true\" focusable=\"false\" data-prefix=\"fab\" data-icon=\"html5\" role=\"img\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 384 512\"><path fill=\"currentColor\" d=\"M0 32l34.9 395.8L191.5 480l157.6-52.2L384 32H0zm308.2 127.9H124.4l4.1 49.4h175.6l-13.6 148.4-97.9 27v.3h-1.1l-98.7-27.3-6-75.8h47.7L138 320l53.5 14.5 53.7-14.5 6-62.2H84.3L71.5 112.2h241.1l-4.4 47.7z\"></path></svg>\n                                        index.html\n                                    </li>\n                                </ul>\n                            </li>\n                            <li class=\"d-flex align-items-center mb-1\" data-bs-toggle=\"tooltip\" data-bs-placement=\"left\" title=\"Rocket with only HTML, CSS and Javascript\">\n                                <svg class=\"icon icon-sm me-2\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M2 6a2 2 0 012-2h5l2 2h5a2 2 0 012 2v6a2 2 0 01-2 2H4a2 2 0 01-2-2V6z\"></path></svg>\n                                html&css\n                            </li>\n                            <li class=\"d-flex align-items-center mb-1\" data-bs-toggle=\"tooltip\" data-bs-placement=\"left\" title=\"Temporary folder that is created when serving files with BrowserSync\">\n                                <svg class=\"icon icon-sm me-2\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M2 6a2 2 0 012-2h5l2 2h5a2 2 0 012 2v6a2 2 0 01-2 2H4a2 2 0 01-2-2V6z\"></path></svg>\n                                .temp\n                            </li>\n                            <li class=\"d-flex align-items-center mb-1\" data-bs-toggle=\"tooltip\" data-bs-placement=\"left\" title=\"Minified version of the project\">\n                                <svg class=\"icon icon-sm me-2\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M2 6a2 2 0 012-2h5l2 2h5a2 2 0 012 2v6a2 2 0 01-2 2H4a2 2 0 01-2-2V6z\"></path></svg>\n                                dist\n                            </li>\n                            <li class=\"d-flex align-items-center mb-1\" data-bs-toggle=\"tooltip\" data-bs-placement=\"left\" title=\"Project dependencies from package.json\">\n                                <svg class=\"icon icon-sm me-2\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M2 6a2 2 0 012-2h5l2 2h5a2 2 0 012 2v6a2 2 0 01-2 2H4a2 2 0 01-2-2V6z\"></path></svg>\n                                node_modules\n                            </li>\n                            <li class=\"d-flex align-items-center mb-1\" data-bs-toggle=\"tooltip\" data-bs-placement=\"left\" title=\"Development workflow commands. We have them well documented.\">\n                                <svg class=\"icon icon-sm me-2 text-warning\" aria-hidden=\"true\" focusable=\"false\" data-prefix=\"fab\" data-icon=\"js-square\" class=\"svg-inline--fa fa-js-square fa-w-14\" role=\"img\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 448 512\"><path fill=\"currentColor\" d=\"M400 32H48C21.5 32 0 53.5 0 80v352c0 26.5 21.5 48 48 48h352c26.5 0 48-21.5 48-48V80c0-26.5-21.5-48-48-48zM243.8 381.4c0 43.6-25.6 63.5-62.9 63.5-33.7 0-53.2-17.4-63.2-38.5l34.3-20.7c6.6 11.7 12.6 21.6 27.1 21.6 13.8 0 22.6-5.4 22.6-26.5V237.7h42.1v143.7zm99.6 63.5c-39.1 0-64.4-18.6-76.7-43l34.3-19.8c9 14.7 20.8 25.6 41.5 25.6 17.4 0 28.6-8.7 28.6-20.8 0-14.4-11.4-19.5-30.7-28l-10.5-4.5c-30.4-12.9-50.5-29.2-50.5-63.5 0-31.6 24.1-55.6 61.6-55.6 26.8 0 46 9.3 59.8 33.7L368 290c-7.2-12.9-15-18-27.1-18-12.3 0-20.1 7.8-20.1 18 0 12.6 7.8 17.7 25.9 25.6l10.5 4.5c35.8 15.3 55.9 31 55.9 66.2 0 37.8-29.8 58.6-69.7 58.6z\"></path></svg>\n                                gulpfile.js\n                            </li>\n                            <li class=\"d-flex align-items-center mb-1\" data-bs-toggle=\"tooltip\" data-bs-placement=\"left\" title=\"Project details and dependencies.\">\n                                <svg class=\"icon icon-sm me-2 text-success\" aria-hidden=\"true\" focusable=\"false\" data-prefix=\"fas\" data-icon=\"file-code\" role=\"img\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 384 512\"><path fill=\"currentColor\" d=\"M384 121.941V128H256V0h6.059c6.365 0 12.47 2.529 16.971 7.029l97.941 97.941A24.005 24.005 0 0 1 384 121.941zM248 160c-13.2 0-24-10.8-24-24V0H24C10.745 0 0 10.745 0 24v464c0 13.255 10.745 24 24 24h336c13.255 0 24-10.745 24-24V160H248zM123.206 400.505a5.4 5.4 0 0 1-7.633.246l-64.866-60.812a5.4 5.4 0 0 1 0-7.879l64.866-60.812a5.4 5.4 0 0 1 7.633.246l19.579 20.885a5.4 5.4 0 0 1-.372 7.747L101.65 336l40.763 35.874a5.4 5.4 0 0 1 .372 7.747l-19.579 20.884zm51.295 50.479l-27.453-7.97a5.402 5.402 0 0 1-3.681-6.692l61.44-211.626a5.402 5.402 0 0 1 6.692-3.681l27.452 7.97a5.4 5.4 0 0 1 3.68 6.692l-61.44 211.626a5.397 5.397 0 0 1-6.69 3.681zm160.792-111.045l-64.866 60.812a5.4 5.4 0 0 1-7.633-.246l-19.58-20.885a5.4 5.4 0 0 1 .372-7.747L284.35 336l-40.763-35.874a5.4 5.4 0 0 1-.372-7.747l19.58-20.885a5.4 5.4 0 0 1 7.633-.246l64.866 60.812a5.4 5.4 0 0 1-.001 7.879z\"></path></svg>\n                                package.json\n                            </li>\n                            <li class=\"d-flex align-items-center mb-1\" data-bs-toggle=\"tooltip\" data-bs-placement=\"left\" title=\"No project can miss a README :)\">\n                                <svg class=\"icon icon-sm me-2 text-success\" aria-hidden=\"true\" focusable=\"false\" data-prefix=\"fas\" data-icon=\"file-code\" role=\"img\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 384 512\"><path fill=\"currentColor\" d=\"M384 121.941V128H256V0h6.059c6.365 0 12.47 2.529 16.971 7.029l97.941 97.941A24.005 24.005 0 0 1 384 121.941zM248 160c-13.2 0-24-10.8-24-24V0H24C10.745 0 0 10.745 0 24v464c0 13.255 10.745 24 24 24h336c13.255 0 24-10.745 24-24V160H248zM123.206 400.505a5.4 5.4 0 0 1-7.633.246l-64.866-60.812a5.4 5.4 0 0 1 0-7.879l64.866-60.812a5.4 5.4 0 0 1 7.633.246l19.579 20.885a5.4 5.4 0 0 1-.372 7.747L101.65 336l40.763 35.874a5.4 5.4 0 0 1 .372 7.747l-19.579 20.884zm51.295 50.479l-27.453-7.97a5.402 5.402 0 0 1-3.681-6.692l61.44-211.626a5.402 5.402 0 0 1 6.692-3.681l27.452 7.97a5.4 5.4 0 0 1 3.68 6.692l-61.44 211.626a5.397 5.397 0 0 1-6.69 3.681zm160.792-111.045l-64.866 60.812a5.4 5.4 0 0 1-7.633-.246l-19.58-20.885a5.4 5.4 0 0 1 .372-7.747L284.35 336l-40.763-35.874a5.4 5.4 0 0 1-.372-7.747l19.58-20.885a5.4 5.4 0 0 1 7.633-.246l64.866 60.812a5.4 5.4 0 0 1-.001 7.879z\"></path></svg>                               \n                                README.md\n                            </li>\n                            <li class=\"d-flex align-items-center mb-1\" data-bs-toggle=\"tooltip\" data-bs-placement=\"left\" title=\"This file ensures that generated files and folder are ignored by Git. (eg. node_modules)\">\n                                <svg class=\"icon icon-sm me-2 text-success\" aria-hidden=\"true\" focusable=\"false\" data-prefix=\"fas\" data-icon=\"file-code\" role=\"img\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 384 512\"><path fill=\"currentColor\" d=\"M384 121.941V128H256V0h6.059c6.365 0 12.47 2.529 16.971 7.029l97.941 97.941A24.005 24.005 0 0 1 384 121.941zM248 160c-13.2 0-24-10.8-24-24V0H24C10.745 0 0 10.745 0 24v464c0 13.255 10.745 24 24 24h336c13.255 0 24-10.745 24-24V160H248zM123.206 400.505a5.4 5.4 0 0 1-7.633.246l-64.866-60.812a5.4 5.4 0 0 1 0-7.879l64.866-60.812a5.4 5.4 0 0 1 7.633.246l19.579 20.885a5.4 5.4 0 0 1-.372 7.747L101.65 336l40.763 35.874a5.4 5.4 0 0 1 .372 7.747l-19.579 20.884zm51.295 50.479l-27.453-7.97a5.402 5.402 0 0 1-3.681-6.692l61.44-211.626a5.402 5.402 0 0 1 6.692-3.681l27.452 7.97a5.4 5.4 0 0 1 3.68 6.692l-61.44 211.626a5.397 5.397 0 0 1-6.69 3.681zm160.792-111.045l-64.866 60.812a5.4 5.4 0 0 1-7.633-.246l-19.58-20.885a5.4 5.4 0 0 1 .372-7.747L284.35 336l-40.763-35.874a5.4 5.4 0 0 1-.372-7.747l19.58-20.885a5.4 5.4 0 0 1 7.633-.246l64.866 60.812a5.4 5.4 0 0 1-.001 7.879z\"></path></svg>\n                                .gitignore\n                            </li>\n                        </ul>\n                    </div>\n                    <div class=\"col-12 mt-5 d-lg-none\">\n                        <h5>You need only HTML, CSS and Javascript?</h5>\n                        <p>Don't worry, we got you covered. We have a folder called <code class=\"text-danger\">html&css</code> which includes only the basic HTML5, CSS3 and Javascript technologies.</p>\n                    </div>\n                </div>\n            </div>\n        </section>\n\n        <section class=\"section section-lg bg-gray-800\">\n            <div class=\"container\">\n                <div class=\"row justify-content-center text-center text-white mb-5\">\n                    <div class=\"col-12\">\n                        <h2 class=\"h1 fw-light mb-3\">Less <span class=\"fw-bold\">work</span>, more <span class=\"fw-bold\">flow</span>.</h2>\n                        <p class=\"lead px-lg-8\">\n                            Boost productivity with BrowserSync. Sass changes are reflected instantly and pages scroll and refresh on devices as you work.\n                        </p>\n                    </div>\n                </div>\n                <div class=\"row justify-content-center mb-6\">\n                    <div class=\"col-md-10 col-xl-9\">\n                        <div class=\"position-relative\">\n                            <div class=\"rounded bg-white p-4 text-dark mb-2\">\n                                <div class=\"mb-3\">\n                                    <div class=\"fw-bold\">&gt; $ npm install</div>\n                                    <div class=\"text-gray\">Everything’s installed!</div>\n                                </div>\n                                <div class=\"mb-3\">\n                                    <div class=\"fw-bold\">&gt; $ gulp</div>\n                                    <div class=\"text-gray\">SCSS watching</div>\n                                    <div class=\"text-gray\">LiveReload started</div>\n                                    <div class=\"text-gray\">Opening localhost:3000</div>\n                                </div>\n                                <div>\n                                    <div class=\"fw-bold\">&gt; $ that's it?</div>\n                                    <div class=\"text-gray\">It's that simple!</div>\n                                </div>\n                            </div>\n                        </div>\n                        <p class=\"mt-4 text-white text-center\">Looks unfamiliar? Don’t worry! Our <a class=\"text-white text-decoration-underline fw-bolder\" href=\"https://themesberg.com/docs/rocket/getting-started/overview/\" target=\"_blank\">documentation</a> has got you covered.</p>\n                    </div>\n                </div>\n            </div>\n        </section>\n\n        <section class=\"section section-lg bg-white\" id=\"pricing\">\n            <div class=\"container\">\n                <div class=\"row\">\n                    <div class=\"col-12 col-lg-8\">\n                        <h2 class=\"h1 fw-bold mb-3\">Open source</h2>\n                        <p class=\"lead mb-4\">Volt is an open source project under the MIT License.</p>\n                        <div class=\"d-flex align-items-center\">\n                            <a href=\"https://appseed.us/product/volt-dashboard/flask/\" target=\"_blank\" class=\"btn btn-gray-800 me-4\">\n                                See Product\n                            </a>\n                        </div>\n                    </div>\n                    <div class=\"col-12 col-lg-4\">\n                        <div class=\"github-big-icon\">\n                            <svg aria-hidden=\"true\" focusable=\"false\" data-prefix=\"fab\" data-icon=\"github\" role=\"img\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 496 512\"><path fill=\"currentColor\" d=\"M165.9 397.4c0 2-2.3 3.6-5.2 3.6-3.3.3-5.6-1.3-5.6-3.6 0-2 2.3-3.6 5.2-3.6 3-.3 5.6 1.3 5.6 3.6zm-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9 2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5.3-6.2 2.3zm44.2-1.7c-2.9.7-4.9 2.6-4.6 4.9.3 2 2.9 3.3 5.9 2.6 2.9-.7 4.9-2.6 4.6-4.6-.3-1.9-3-3.2-5.9-2.9zM244.8 8C106.1 8 0 113.3 0 252c0 110.9 69.8 205.8 169.5 239.2 12.8 2.3 17.3-5.6 17.3-12.1 0-6.2-.3-40.4-.3-61.4 0 0-70 15-84.7-29.8 0 0-11.4-29.1-27.8-36.6 0 0-22.9-15.7 1.6-15.4 0 0 24.9 2 38.6 25.8 21.9 38.6 58.6 27.5 72.9 20.9 2.3-16 8.8-27.1 16-33.7-55.9-6.2-112.3-14.3-112.3-110.5 0-27.5 7.6-41.3 23.6-58.9-2.6-6.5-11.1-33.3 2.6-67.9 20.9-6.5 69 27 69 27 20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27 13.7 34.7 5.2 61.4 2.6 67.9 16 17.7 25.8 31.5 25.8 58.9 0 96.5-58.9 104.2-114.8 110.5 9.2 7.9 17 22.9 17 46.4 0 33.7-.3 75.4-.3 83.6 0 6.5 4.6 14.4 17.3 12.1C428.2 457.8 496 362.9 496 252 496 113.3 383.5 8 244.8 8zM97.2 352.9c-1.3 1-1 3.3.7 5.2 1.6 1.6 3.9 2.3 5.2 1 1.3-1 1-3.3-.7-5.2-1.6-1.6-3.9-2.3-5.2-1zm-10.8-8.1c-.7 1.3.3 2.9 2.3 3.9 1.6 1 3.6.7 4.3-.7.7-1.3-.3-2.9-2.3-3.9-2-.6-3.6-.3-4.3.7zm32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2 2.3 2.3 5.2 2.6 6.5 1 1.3-1.3.7-4.3-1.3-6.2-2.2-2.3-5.2-2.6-6.5-1zm-11.4-14.7c-1.6 1-1.6 3.6 0 5.9 1.6 2.3 4.3 3.3 5.6 2.3 1.6-1.3 1.6-3.9 0-6.2-1.4-2.3-4-3.3-5.6-2z\"></path></svg>\n                        </div>\n                    </div>\n                </div>\n                <div class=\"row mt-6\">\n                    <div class=\"col-12 col-md-6 col-lg-4 mb-5 mb-lg-0\">\n                        <div class=\"card shadow border-0 p-4\">\n                            <!-- Header -->\n                            <div class=\"card-header bg-white border-0 pb-0\">\n                                <span class=\"d-block\">\n                                    <span class=\"h2 text-primary fw-bold align-top\">Free Demo</span>\n                                </span>\n                            </div>\n                            <!-- End Header -->\n                            <!-- Content -->\n                            <div class=\"card-body\">\n                                <ul class=\"list-group list-group-flush price-list\">\n                                    <li class=\"list-group-item border-0 ps-0\"><strong>100</strong> Components</li>\n                                    <li class=\"list-group-item border-0 ps-0\"><strong>11</strong> Example Pages</li>\n                                    <li class=\"list-group-item d-flex align-items-center border-0 ps-0\"><svg class=\"icon icon-xs text-danger me-2\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M10 18a8 8 0 100-16 8 8 0 000 16zM8.707 7.293a1 1 0 00-1.414 1.414L8.586 10l-1.293 1.293a1 1 0 101.414 1.414L10 11.414l1.293 1.293a1 1 0 001.414-1.414L11.414 10l1.293-1.293a1 1 0 00-1.414-1.414L10 8.586 8.707 7.293z\" clip-rule=\"evenodd\"></path></svg> Advanced sidebar</li>\n                                    <li class=\"list-group-item d-flex align-items-center border-0 ps-0\"><svg class=\"icon icon-xs text-danger me-2\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M10 18a8 8 0 100-16 8 8 0 000 16zM8.707 7.293a1 1 0 00-1.414 1.414L8.586 10l-1.293 1.293a1 1 0 101.414 1.414L10 11.414l1.293 1.293a1 1 0 001.414-1.414L11.414 10l1.293-1.293a1 1 0 00-1.414-1.414L10 8.586 8.707 7.293z\" clip-rule=\"evenodd\"></path></svg> Kanban Drag and Drop</li>\n                                    <li class=\"list-group-item d-flex align-items-center border-0 ps-0\"><svg class=\"icon icon-xs text-danger me-2\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M10 18a8 8 0 100-16 8 8 0 000 16zM8.707 7.293a1 1 0 00-1.414 1.414L8.586 10l-1.293 1.293a1 1 0 101.414 1.414L10 11.414l1.293 1.293a1 1 0 001.414-1.414L11.414 10l1.293-1.293a1 1 0 00-1.414-1.414L10 8.586 8.707 7.293z\" clip-rule=\"evenodd\"></path></svg> MapBox</li>\n                                    <li class=\"list-group-item d-flex align-items-center border-0 ps-0\"><svg class=\"icon icon-xs text-danger me-2\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M10 18a8 8 0 100-16 8 8 0 000 16zM8.707 7.293a1 1 0 00-1.414 1.414L8.586 10l-1.293 1.293a1 1 0 101.414 1.414L10 11.414l1.293 1.293a1 1 0 001.414-1.414L11.414 10l1.293-1.293a1 1 0 00-1.414-1.414L10 8.586 8.707 7.293z\" clip-rule=\"evenodd\"></path></svg> Calendar</li>\n                                    <li class=\"list-group-item d-flex align-items-center border-0 ps-0\"><svg class=\"icon icon-xs text-danger me-2\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M10 18a8 8 0 100-16 8 8 0 000 16zM8.707 7.293a1 1 0 00-1.414 1.414L8.586 10l-1.293 1.293a1 1 0 101.414 1.414L10 11.414l1.293 1.293a1 1 0 001.414-1.414L11.414 10l1.293-1.293a1 1 0 00-1.414-1.414L10 8.586 8.707 7.293z\" clip-rule=\"evenodd\"></path></svg> SVG Map</li>\n                                    <li class=\"list-group-item d-flex align-items-center border-0 ps-0\"><svg class=\"icon icon-xs text-danger me-2\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M10 18a8 8 0 100-16 8 8 0 000 16zM8.707 7.293a1 1 0 00-1.414 1.414L8.586 10l-1.293 1.293a1 1 0 101.414 1.414L10 11.414l1.293 1.293a1 1 0 001.414-1.414L11.414 10l1.293-1.293a1 1 0 00-1.414-1.414L10 8.586 8.707 7.293z\" clip-rule=\"evenodd\"></path></svg> Widgets</li>\n                                    <li class=\"list-group-item d-flex align-items-center border-0 ps-0 pb-0\"><svg class=\"icon icon-xs text-danger me-2\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M10 18a8 8 0 100-16 8 8 0 000 16zM8.707 7.293a1 1 0 00-1.414 1.414L8.586 10l-1.293 1.293a1 1 0 101.414 1.414L10 11.414l1.293 1.293a1 1 0 001.414-1.414L11.414 10l1.293-1.293a1 1 0 00-1.414-1.414L10 8.586 8.707 7.293z\" clip-rule=\"evenodd\"></path></svg> Premium Support</li>\n                                </ul>\n                            </div>\n                            <!-- End Content -->\n                        </div>\n                    </div>\n                    <div class=\"col-12 col-md-6 col-lg-4 mb-5 mb-lg-0\">\n                        <div class=\"card shadow border-0 p-4 py-5 mt-lg-n5\">\n                            <!-- Header -->\n                            <div class=\"card-header bg-white border-0 pb-0\">\n                                <span class=\"d-block\">\n                                    <span class=\"h2 text-primary fw-bold align-top\">Pro Version</span>\n                                </span>\n                            </div>\n                            <!-- End Header -->\n                            <!-- Content -->\n                            <div class=\"card-body\">\n                                <ul class=\"list-group list-group-flush price-list\">\n                                    <li class=\"list-group-item bg-white border-0 ps-0\"><strong>1000+</strong> Components</li>\n                                    <li class=\"list-group-item bg-white border-0 ps-0\"><strong>21</strong> Example Pages</li>\n                                    <li class=\"list-group-item d-flex align-items-center border-0 ps-0\"><svg class=\"icon icon-xs text-success me-2\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M10 18a8 8 0 100-16 8 8 0 000 16zm3.707-9.293a1 1 0 00-1.414-1.414L9 10.586 7.707 9.293a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l4-4z\" clip-rule=\"evenodd\"></path></svg> Advanced sidebar</li>\n                                    <li class=\"list-group-item d-flex align-items-center border-0 ps-0\"><svg class=\"icon icon-xs text-success me-2\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M10 18a8 8 0 100-16 8 8 0 000 16zm3.707-9.293a1 1 0 00-1.414-1.414L9 10.586 7.707 9.293a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l4-4z\" clip-rule=\"evenodd\"></path></svg> Kanban Drag and Drop</li>\n                                    <li class=\"list-group-item d-flex align-items-center border-0 ps-0\"><svg class=\"icon icon-xs text-success me-2\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M10 18a8 8 0 100-16 8 8 0 000 16zm3.707-9.293a1 1 0 00-1.414-1.414L9 10.586 7.707 9.293a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l4-4z\" clip-rule=\"evenodd\"></path></svg> MapBox</li>\n                                    <li class=\"list-group-item d-flex align-items-center border-0 ps-0\"><svg class=\"icon icon-xs text-success me-2\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M10 18a8 8 0 100-16 8 8 0 000 16zm3.707-9.293a1 1 0 00-1.414-1.414L9 10.586 7.707 9.293a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l4-4z\" clip-rule=\"evenodd\"></path></svg> Calendar</li>\n                                    <li class=\"list-group-item d-flex align-items-center border-0 ps-0\"><svg class=\"icon icon-xs text-success me-2\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M10 18a8 8 0 100-16 8 8 0 000 16zm3.707-9.293a1 1 0 00-1.414-1.414L9 10.586 7.707 9.293a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l4-4z\" clip-rule=\"evenodd\"></path></svg> SVG Map</li>\n                                    <li class=\"list-group-item d-flex align-items-center border-0 ps-0\"><svg class=\"icon icon-xs text-success me-2\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M10 18a8 8 0 100-16 8 8 0 000 16zm3.707-9.293a1 1 0 00-1.414-1.414L9 10.586 7.707 9.293a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l4-4z\" clip-rule=\"evenodd\"></path></svg> Widgets</li>\n                                    <li class=\"list-group-item d-flex align-items-center border-0 border-0 ps-0 pb-0\"><svg class=\"icon icon-xs text-success me-2\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M10 18a8 8 0 100-16 8 8 0 000 16zm3.707-9.293a1 1 0 00-1.414-1.414L9 10.586 7.707 9.293a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l4-4z\" clip-rule=\"evenodd\"></path></svg> Premium Support</li>\n                                </ul>\n                            </div>\n                            <a href=\"https://appseed.us/product/volt-dashboard-pro/flask/\" target=\"_blank\" \n                               class=\"btn btn-secondary d-flex align-items-center justify-content-center mb-0 mt-2\">Flask Volt Pro <svg class=\"icon icon-xs ms-1\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M11 3a1 1 0 100 2h2.586l-6.293 6.293a1 1 0 101.414 1.414L15 6.414V9a1 1 0 102 0V4a1 1 0 00-1-1h-5z\"></path><path d=\"M5 5a2 2 0 00-2 2v8a2 2 0 002 2h8a2 2 0 002-2v-3a1 1 0 10-2 0v3H5V7h3a1 1 0 000-2H5z\"></path></svg></a>\n                            <!-- End Content -->\n                        </div>\n                    </div>\n                </div>\n                <div class=\"mt-lg-6 row\">\n                    <div class=\"text-center col-12\">\n                       <h2 class=\"h5 text-gray fw-normal mb-4\">Available in the following technologies:</h2>\n                       <div>\n                            <a class=\"me-3 card-link\" href=\"https://themesberg.com/product/admin-dashboard/volt-bootstrap-5-dashboard\" target=\"_blank\">\n                                <img src=\"{{ url_for('static', filename='assets/img/technologies/bootstrap-5-logo.svg') }}\" class=\"image image-sm\">\n                            </a>\n                            <a class=\"me-3 card-link\" href=\"https://demo.themesberg.com/volt-react-dashboard/#/\" target=\"_blank\">\n                                <img src=\"{{ url_for('static', filename='assets/img/technologies/react-logo.svg') }}\" class=\"image image-sm\">\n                            </a>\n                            <a class=\"me-3 card-link\" href=\"https://appseed.us/product/volt-dashboard/flask/\" target=\"_blank\">\n                                <img src=\"{{ url_for('static', filename='assets/img/technologies/flask-logo.svg') }}\" class=\"image image-sm\">\n                            </a>\n                            <a class=\"me-3 card-link\" href=\"https://appseed.us/admin-dashboards/django-dashboard-volt\" target=\"_blank\">\n                                <img src=\"{{ url_for('static', filename='assets/img/technologies/django-logo.svg') }}\" class=\"image image-sm\">\n                            </a>                             \n                        </div>\n                    </div>\n                </div>\n            </div>\n        </section>\n\n    </main>\n\n    <footer class=\"footer py-6 bg-gray-800 text-white\">\n        <div class=\"container\">\n            <div class=\"row\">\n                <div class=\"col-md-4\">\n                    <img class=\"navbar-brand-dark mb-4\" height=\"35\" src=\"{{ url_for('static', filename='assets/img/brand/light.svg') }}\" alt=\"Logo light\">\n                    <p>Volt is a Premium Bootstrap 5 Admin Dashboard bringing together beautiful UI/UX design and functional elements.</p>\n                    <ul class=\"social-buttons mb-5 mb-lg-0\">\n                        <li>\n                            <a href=\"https://twitter.com/themesberg\" aria-label=\"twitter social link\" class=\"icon-white me-2\">\n                                <span class=\"fab fa-twitter\"></span>\n                            </a>\n                        </li>\n                        <li>\n                            <a href=\"https://www.facebook.com/themesberg/\" class=\"icon-white me-2\" aria-label=\"facebook social link\">\n                                <span class=\"fab fa-facebook\"></span>\n                            </a>\n                        </li>\n                        <li>\n                            <a href=\"https://github.com/themesberg\" aria-label=\"github social link\" class=\"icon-white me-2\">\n                                <span class=\"fab fa-github\"></span>\n                            </a>\n                        </li>\n                        <li>\n                            <a href=\"https://dribbble.com/themesberg\" class=\"icon-white\" aria-label=\"dribbble social link\" >\n                                <span class=\"fab fa-dribbble\"></span>\n                            </a>\n                        </li>\n                    </ul>\n                </div>\n                <div class=\"col-6 col-md-2 mb-5 mb-lg-0\">\n                    <span class=\"h5\">Themesberg</span>\n                    <ul class=\"links-vertical mt-2\">\n                        <li><a target=\"_blank\" href=\"https://themesberg.com/blog\">Blog</a></li>\n                        <li><a target=\"_blank\" href=\"https://themesberg.com/products\">Products</a></li>\n                        <li><a target=\"_blank\" href=\"https://themesberg.com/about\">About Us</a></li>\n                        <li><a target=\"_blank\" href=\"https://themesberg.com/contact\">Contact Us</a></li>\n                    </ul>\n                </div>\n                <div class=\"col-6 col-md-2 mb-5 mb-lg-0\">\n                    <span class=\"h5\">Other</span>\n                    <ul class=\"links-vertical mt-2\">\n                        <li><a href=\"https://themesberg.com/docs/volt-bootstrap-5-dashboard/getting-started/quick-start/\" target=\"_blank\">Docs\n                                <span class=\"badge badge-sm bg-secondary text-dark ms-2\">v1.4</span></a></li>\n                        <li><a href=\"https://themesberg.com/docs/volt-bootstrap-5-dashboard/getting-started/changelog/\" target=\"_blank\">Changelog</a></li>\n                        <li><a target=\"_blank\" href=\"https://themesberg.com/licensing\">License</a>\n                        </li>\n                        <li><a target=\"_blank\" href=\"https://themesberg.com/contact\">Support</a></li>\n                    </ul>\n                </div>\n                <div class=\"col-12 col-md-4 mb-5 mb-lg-0\">\n                    <span class=\"h5 mb-3 d-block\">Subscribe</span>\n                    <form action=\"#\">\n                        <div class=\"form-row mb-2\">\n                            <div class=\"col-12\">\n                                <input type=\"email\" class=\"form-control mb-2\" placeholder=\"example@company.com\" name=\"email\" aria-label=\"Subscribe form\" required>\n                            </div>\n                            <div class=\"col-12 d-grid\">\n                                <button type=\"submit\" class=\"btn btn-secondary\" data-loading-text=\"Sending\">\n                                    <span>Subscribe</span>\n                                </button>\n                            </div>\n                        </div>\n                    </form>\n                    <p class=\"text-muted font-small m-0\">We’ll never share your details. See our <a class=\"text-white\" href=\"#\">Privacy Policy</a></p>\n                </div>\n            </div>\n            <hr class=\"bg-gray-700 my-5\">\n            <div class=\"row\">\n                <div class=\"col mb-md-0\">\n                    <a href=\"https://themesberg.com\" target=\"_blank\" class=\"d-flex justify-content-center\">\n                        <img src=\"{{ url_for('static', filename='assets/img/themesberg-logo-alt.svg') }}\" height=\"35\" class=\"mb-4\" alt=\"Themesberg Logo\">\n                    </a>\n                <div class=\"d-flex text-center justify-content-center align-items-center\" role=\"contentinfo\">\n                    <p class=\"fw-normal font-small mb-0\">\n                        &copy; Themesberg 2019-<span class=\"current-year\">2020</span> - coded by <a target=\"_blank\" href=\"https://appseed.us\">AppSeed</a>.</p>\n                    </div>\n                </div>\n            </div>\n        </div>\n    </footer>\n\n    {% include 'includes/scripts.html' %}\n\n</body>\n</html>\n"
  },
  {
    "path": "templates/home/page-403.html",
    "content": "{% extends \"layouts/base-fullscreen.html\" %}\n\n{% block title %} Error 403 {% endblock %} \n\n<!-- Specific Page CSS goes HERE  -->\n{% block stylesheets %}{% endblock stylesheets %}\n\n{% block content %}\n\n    <main>\n        <section class=\"vh-100 d-flex align-items-center justify-content-center\">\n            <div class=\"container\">\n                <div class=\"row\">\n                    <div class=\"col-12 text-center d-flex align-items-center justify-content-center\">\n                        <div>\n                            <img class=\"img-fluid w-75\" src=\"{{ url_for('static', filename='assets/img/illustrations/404.svg') }}\" alt=\"404 not found\">\n                            <h1 class=\"mt-5\">\n                                Access <span class=\"fw-bolder text-primary\">denied</span>\n                            </h1>\n                            <p class=\"lead my-4\">\n                                Please contact support or authenticate\n                            </p>\n                            <a class=\"btn btn-dark animate-hover\" href=\"{{ url_for('authentication_blueprint.login') }}\">\n                               <i class=\"fas fa-chevron-left me-3 ps-2 animate-left-3\"></i>LOGIN</a>\n                        </div>\n                    </div>\n                </div>\n            </div>\n        </section>\n    </main>\n\n{% endblock content %}\n\n<!-- Specific Page JS goes HERE  -->\n{% block javascripts %}{% endblock javascripts %}\n"
  },
  {
    "path": "templates/home/page-404.html",
    "content": "{% extends \"layouts/base-fullscreen.html\" %}\n\n{% block title %} Error 404 {% endblock %} \n\n<!-- Specific Page CSS goes HERE  -->\n{% block stylesheets %}{% endblock stylesheets %}\n\n{% block content %}\n\n    <main>\n        <section class=\"vh-100 d-flex align-items-center justify-content-center\">\n            <div class=\"container\">\n                <div class=\"row\">\n                    <div class=\"col-12 text-center d-flex align-items-center justify-content-center\">\n                        <div>\n                            <img class=\"img-fluid w-75\" src=\"{{ url_for('static', filename='assets/img/illustrations/404.svg') }}\" alt=\"404 not found\">\n                            <h1 class=\"mt-5\">Page not <span class=\"fw-bolder text-primary\">found</span></h1>\n                            <p class=\"lead my-4\">Oops! Looks like you followed a bad link. If you think this is a problem with us, please tell us.</p>\n                            <a href=\"/dashboard.html\" class=\"btn btn-gray-800 d-inline-flex align-items-center justify-content-center mb-4\">\n                                <svg class=\"icon icon-xs me-2\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M7.707 14.707a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414l4-4a1 1 0 011.414 1.414L5.414 9H17a1 1 0 110 2H5.414l2.293 2.293a1 1 0 010 1.414z\" clip-rule=\"evenodd\"></path></svg>\n                                Back to homepage\n                            </a>\n                        </div>\n                    </div>\n                </div>\n            </div>\n        </section>\n    </main>\n\n{% endblock content %}\n\n<!-- Specific Page JS goes HERE  -->\n{% block javascripts %}{% endblock javascripts %}\n"
  },
  {
    "path": "templates/home/page-500.html",
    "content": "{% extends \"layouts/base-fullscreen.html\" %}\n\n{% block title %} Error 500 {% endblock %} \n\n<!-- Specific Page CSS goes HERE  -->\n{% block stylesheets %}{% endblock stylesheets %}\n\n{% block content %}\n\n    <main>\n        <section class=\"vh-100 d-flex align-items-center justify-content-center\">\n            <div class=\"container\">\n                <div class=\"row align-items-center \">\n                    <div class=\"col-12 col-lg-5 order-2 order-lg-1 text-center text-lg-left\">\n                        <h1 class=\"mt-5\">Something has gone <span class=\"text-primary\">seriously</span> wrong</h1>\n                        <p class=\"lead my-4\">It's always time for a coffee break. We should be back by the time you finish your coffee.</p>\n                        <a href=\"/dashboard.html\" class=\"btn btn-gray-800 d-inline-flex align-items-center justify-content-center mb-4\">\n                            <svg class=\"icon icon-xs me-2\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M7.707 14.707a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414l4-4a1 1 0 011.414 1.414L5.414 9H17a1 1 0 110 2H5.414l2.293 2.293a1 1 0 010 1.414z\" clip-rule=\"evenodd\"></path></svg>\n                            Back to homepage\n                        </a>\n                    </div>\n                    <div class=\"col-12 col-lg-7 order-1 order-lg-2 text-center d-flex align-items-center justify-content-center\">\n                        <img class=\"img-fluid w-75\" src=\"{{ url_for('static', filename='assets/img/illustrations/500.svg') }}\" alt=\"500 Server Error\">\n                    </div>\n                </div>\n            </div>\n        </section>\n    </main>\n\n{% endblock content %}\n\n<!-- Specific Page JS goes HERE  -->\n{% block javascripts %}{% endblock javascripts %}\n"
  },
  {
    "path": "templates/home/page-forgot-password.html",
    "content": "{% extends \"layouts/base-fullscreen.html\" %}\n\n{% block title %} Forgot Password {% endblock %} \n\n<!-- Specific Page CSS goes HERE  -->\n{% block stylesheets %}{% endblock stylesheets %}\n\n{% block content %}\n\n    <main>\n        <section class=\"vh-lg-100 mt-5 mt-lg-0 bg-soft d-flex align-items-center\">\n            <div class=\"container\">\n                <div class=\"row justify-content-center form-bg-image\">\n                    <p class=\"text-center\"><a href=\"./sign-in.html\" class=\"d-flex align-items-center justify-content-center\">\n                        <svg class=\"icon icon-xs me-2\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M7.707 14.707a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414l4-4a1 1 0 011.414 1.414L5.414 9H17a1 1 0 110 2H5.414l2.293 2.293a1 1 0 010 1.414z\" clip-rule=\"evenodd\"></path></svg>\n                        Back to log in\n                        </a>\n                    </p>\n                    <div class=\"col-12 d-flex align-items-center justify-content-center\">\n                        <div class=\"signin-inner my-3 my-lg-0 bg-white shadow border-0 rounded p-4 p-lg-5 w-100 fmxw-500\">\n                            <h1 class=\"h3\">Forgot your password?</h1>\n                            <p class=\"mb-4\">Don't fret! Just type in your email and we will send you a code to reset your password!</p>\n                            <form action=\"#\">\n                                <!-- Form -->\n                                <div class=\"mb-4\">\n                                    <label for=\"email\">Your Email</label>\n                                    <div class=\"input-group\">\n                                        <input type=\"email\" class=\"form-control\" id=\"email\" placeholder=\"john@company.com\" required autofocus>\n                                    </div>  \n                                </div>\n                                <!-- End of Form -->\n                                <div class=\"d-grid\">\n                                    <button type=\"submit\" class=\"btn btn-gray-800\">Recover password</button>\n                                </div>\n                            </form>\n                        </div>\n                    </div>\n                </div>\n            </div>\n        </section>\n    </main>\n\n{% endblock content %}\n\n<!-- Specific Page JS goes HERE  -->\n{% block javascripts %}{% endblock javascripts %}\n"
  },
  {
    "path": "templates/home/page-lock.html",
    "content": "{% extends \"layouts/base-fullscreen.html\" %}\n\n{% block title %} Page Lock {% endblock %} \n\n<!-- Specific Page CSS goes HERE  -->\n{% block stylesheets %}{% endblock stylesheets %}\n\n{% block content %}\n\n    <main>\n        <section class=\"vh-lg-100 mt-5 mt-lg-0 bg-soft d-flex align-items-center\">\n            <div class=\"container\">\n                <a href=\"/dashboard.html\" class=\"d-flex align-items-center justify-content-center mb-4\">\n                    <svg class=\"icon icon-xs me-2\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M7.707 14.707a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414l4-4a1 1 0 011.414 1.414L5.414 9H17a1 1 0 110 2H5.414l2.293 2.293a1 1 0 010 1.414z\" clip-rule=\"evenodd\"></path></svg>\n                    Back to homepage\n                </a>\n                <div class=\"row justify-content-center form-bg-image\" data-background-lg=\"{{ url_for('static', filename='assets/img/illustrations/signin.svg') }}\">\n                    <div class=\"col-12 d-flex align-items-center justify-content-center\">\n                        <div class=\"bg-white shadow border-0 rounded p-4 p-lg-5 w-100 fmxw-500\">\n                            <div class=\"text-center text-md-center mb-4 mt-md-0\">\n                                <div class=\"avatar avatar-lg mx-auto mb-3\"><img class=\"rounded-circle\" alt=\"Image placeholder\" src=\"{{ url_for('static', filename='assets/img/team/profile-picture-3.jpg') }}\"></div>\n                                <h1 class=\"h3\">Bonnie Green</h1>\n                                <p class=\"text-gray\">Better to be safe than sorry.</p>\n                            </div>\n                            <form class=\"mt-5\">\n                                <!-- Form -->\n                                <div class=\"form-group mb-4\">\n                                    <label for=\"password\">Your Password</label>\n                                    <div class=\"input-group\">\n                                        <span class=\"input-group-text\" id=\"basic-addon2\">\n                                            <svg class=\"icon icon-xs text-gray-600\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M5 9V7a5 5 0 0110 0v2a2 2 0 012 2v5a2 2 0 01-2 2H5a2 2 0 01-2-2v-5a2 2 0 012-2zm8-2v2H7V7a3 3 0 016 0z\" clip-rule=\"evenodd\"></path></svg>\n                                        </span>\n                                        <input type=\"password\" placeholder=\"Password\" class=\"form-control\" id=\"password\" required>\n                                    </div>  \n                                </div>\n                                <!-- End of Form -->\n                                <div class=\"d-grid mt-3\">\n                                    <button type=\"submit\" class=\"btn btn-gray-800\">Unlock</button>\n                                </div>\n                            </form>\n                        </div>\n                    </div>\n                </div>\n            </div>\n        </section>\n    </main>\n\n{% endblock content %}\n\n<!-- Specific Page JS goes HERE  -->\n{% block javascripts %}{% endblock javascripts %}\n"
  },
  {
    "path": "templates/home/page-reset-password.html",
    "content": "{% extends \"layouts/base-fullscreen.html\" %}\n\n{% block title %} Reset Password {% endblock %} \n\n<!-- Specific Page CSS goes HERE  -->\n{% block stylesheets %}{% endblock stylesheets %}\n\n{% block content %}\n\n    <main>\n        <section class=\"vh-lg-100 mt-5 mt-lg-0 bg-soft d-flex align-items-center\">\n            <div class=\"container\">\n                <div class=\"row justify-content-center form-bg-image\">\n                    <p class=\"text-center\"><a href=\"./sign-in.html\" class=\"d-flex align-items-center justify-content-center\">\n                        <svg class=\"icon icon-xs me-2\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M7.707 14.707a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414l4-4a1 1 0 011.414 1.414L5.414 9H17a1 1 0 110 2H5.414l2.293 2.293a1 1 0 010 1.414z\" clip-rule=\"evenodd\"></path></svg>\n                        Back to log in\n                        </a>\n                    </p>\n                    <div class=\"col-12 d-flex align-items-center justify-content-center\">\n                        <div class=\"bg-white shadow border-0 rounded p-4 p-lg-5 w-100 fmxw-500\">\n                            <h1 class=\"h3 mb-4\">Reset password</h1>\n                            <form action=\"#\">\n                                <!-- Form -->\n                                <div class=\"mb-4\">\n                                    <label for=\"email\">Your Email</label>\n                                    <div class=\"input-group\">\n                                        <input type=\"email\" class=\"form-control\" placeholder=\"example@company.com\" id=\"email\" required disabled>\n                                    </div>  \n                                </div>\n                                <!-- End of Form -->\n                                <!-- Form -->\n                                <div class=\"form-group mb-4\">\n                                    <label for=\"password\">Your Password</label>\n                                    <div class=\"input-group\">\n                                        <span class=\"input-group-text\" id=\"basic-addon2\">\n                                            <svg class=\"icon icon-xs text-gray-600\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M5 9V7a5 5 0 0110 0v2a2 2 0 012 2v5a2 2 0 01-2 2H5a2 2 0 01-2-2v-5a2 2 0 012-2zm8-2v2H7V7a3 3 0 016 0z\" clip-rule=\"evenodd\"></path></svg>\n                                        </span>\n                                        <input type=\"password\" placeholder=\"Password\" class=\"form-control\" id=\"password\" required>\n                                    </div>  \n                                </div>\n                                <!-- End of Form -->\n                                <!-- Form -->\n                                <div class=\"form-group mb-4\">\n                                    <label for=\"confirm_password\">Confirm Password</label>\n                                    <div class=\"input-group\">\n                                        <span class=\"input-group-text\" id=\"basic-addon2\">\n                                            <svg class=\"icon icon-xs text-gray-600\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M5 9V7a5 5 0 0110 0v2a2 2 0 012 2v5a2 2 0 01-2 2H5a2 2 0 01-2-2v-5a2 2 0 012-2zm8-2v2H7V7a3 3 0 016 0z\" clip-rule=\"evenodd\"></path></svg>\n                                        </span>\n                                        <input type=\"password\" placeholder=\"Confirm Password\" class=\"form-control\" id=\"confirm_password\" required>\n                                    </div>  \n                                </div>\n                                <!-- End of Form -->\n                                <div class=\"d-grid\">\n                                    <button type=\"submit\" class=\"btn btn-gray-800\">Reset password</button>\n                                </div>\n                            </form>\n                        </div>\n                    </div>\n                </div>\n            </div>\n        </section>\n    </main>\n\n{% endblock content %}\n\n<!-- Specific Page JS goes HERE  -->\n{% block javascripts %}{% endblock javascripts %}\n"
  },
  {
    "path": "templates/home/page-sign-in.html",
    "content": "{% extends \"layouts/base-fullscreen.html\" %}\n\n{% block title %} Sign IN {% endblock %} \n\n<!-- Specific Page CSS goes HERE  -->\n{% block stylesheets %}{% endblock stylesheets %}\n\n{% block content %}\n\n    <main>\n        <section class=\"vh-lg-100 mt-5 mt-lg-0 bg-soft d-flex align-items-center\">\n            <div class=\"container\">\n                <p class=\"text-center\">\n                    <a href=\"/dashboard.html\" class=\"d-flex align-items-center justify-content-center\">\n                        <svg class=\"icon icon-xs me-2\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M7.707 14.707a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414l4-4a1 1 0 011.414 1.414L5.414 9H17a1 1 0 110 2H5.414l2.293 2.293a1 1 0 010 1.414z\" clip-rule=\"evenodd\"></path></svg>\n                        Back to homepage\n                    </a>\n                </p>\n                <div class=\"row justify-content-center form-bg-image\" data-background-lg=\"{{ url_for('static', filename='assets/img/illustrations/signin.svg') }}\">\n                    <div class=\"col-12 d-flex align-items-center justify-content-center\">\n                        <div class=\"bg-white shadow border-0 rounded border-light p-4 p-lg-5 w-100 fmxw-500\">\n                            <div class=\"text-center text-md-center mb-4 mt-md-0\">\n                                <h1 class=\"mb-0 h3\">Sign in to our platform</h1>\n                            </div>\n                            <form action=\"#\" class=\"mt-4\">\n                                <!-- Form -->\n                                <div class=\"form-group mb-4\">\n                                    <label for=\"email\">Your Email</label>\n                                    <div class=\"input-group\">\n                                        <span class=\"input-group-text\" id=\"basic-addon1\">\n                                            <svg class=\"icon icon-xs text-gray-600\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M2.003 5.884L10 9.882l7.997-3.998A2 2 0 0016 4H4a2 2 0 00-1.997 1.884z\"></path><path d=\"M18 8.118l-8 4-8-4V14a2 2 0 002 2h12a2 2 0 002-2V8.118z\"></path></svg>\n                                        </span>\n                                        <input type=\"email\" class=\"form-control\" placeholder=\"example@company.com\" id=\"email\" autofocus required>\n                                    </div>  \n                                </div>\n                                <!-- End of Form -->\n                                <div class=\"form-group\">\n                                    <!-- Form -->\n                                    <div class=\"form-group mb-4\">\n                                        <label for=\"password\">Your Password</label>\n                                        <div class=\"input-group\">\n                                            <span class=\"input-group-text\" id=\"basic-addon2\">\n                                                <svg class=\"icon icon-xs text-gray-600\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M5 9V7a5 5 0 0110 0v2a2 2 0 012 2v5a2 2 0 01-2 2H5a2 2 0 01-2-2v-5a2 2 0 012-2zm8-2v2H7V7a3 3 0 016 0z\" clip-rule=\"evenodd\"></path></svg>\n                                            </span>\n                                            <input type=\"password\" placeholder=\"Password\" class=\"form-control\" id=\"password\" required>\n                                        </div>  \n                                    </div>\n                                    <!-- End of Form -->\n                                    <div class=\"d-flex justify-content-between align-items-top mb-4\">\n                                        <div class=\"form-check\">\n                                            <input class=\"form-check-input\" type=\"checkbox\" value=\"\" id=\"remember\">\n                                            <label class=\"form-check-label mb-0\" for=\"remember\">\n                                              Remember me\n                                            </label>\n                                        </div>\n                                        <div><a href=\"./forgot-password.html\" class=\"small text-right\">Lost password?</a></div>\n                                    </div>\n                                </div>\n                                <div class=\"d-grid\">\n                                    <button type=\"submit\" class=\"btn btn-gray-800\">Sign in</button>\n                                </div>\n                            </form>\n                            <div class=\"mt-3 mb-4 text-center\">\n                                <span class=\"fw-normal\">or login with</span>\n                            </div>\n                            <div class=\"d-flex justify-content-center my-4\">\n                                <a href=\"#\" class=\"btn btn-icon-only btn-pill btn-outline-gray-500 me-2\" aria-label=\"facebook button\" title=\"facebook button\">\n                                    <svg class=\"icon icon-xxs\" aria-hidden=\"true\" focusable=\"false\" data-prefix=\"fab\" data-icon=\"facebook-f\" role=\"img\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 320 512\"><path fill=\"currentColor\" d=\"M279.14 288l14.22-92.66h-88.91v-60.13c0-25.35 12.42-50.06 52.24-50.06h40.42V6.26S260.43 0 225.36 0c-73.22 0-121.08 44.38-121.08 124.72v70.62H22.89V288h81.39v224h100.17V288z\"></path></svg>\n                                </a>\n                                <a href=\"#\" class=\"btn btn-icon-only btn-pill btn-outline-gray-500 me-2\" aria-label=\"twitter button\" title=\"twitter button\">\n                                    <svg class=\"icon icon-xxs\" aria-hidden=\"true\" focusable=\"false\" data-prefix=\"fab\" data-icon=\"twitter\" role=\"img\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\"><path fill=\"currentColor\" d=\"M459.37 151.716c.325 4.548.325 9.097.325 13.645 0 138.72-105.583 298.558-298.558 298.558-59.452 0-114.68-17.219-161.137-47.106 8.447.974 16.568 1.299 25.34 1.299 49.055 0 94.213-16.568 130.274-44.832-46.132-.975-84.792-31.188-98.112-72.772 6.498.974 12.995 1.624 19.818 1.624 9.421 0 18.843-1.3 27.614-3.573-48.081-9.747-84.143-51.98-84.143-102.985v-1.299c13.969 7.797 30.214 12.67 47.431 13.319-28.264-18.843-46.781-51.005-46.781-87.391 0-19.492 5.197-37.36 14.294-52.954 51.655 63.675 129.3 105.258 216.365 109.807-1.624-7.797-2.599-15.918-2.599-24.04 0-57.828 46.782-104.934 104.934-104.934 30.213 0 57.502 12.67 76.67 33.137 23.715-4.548 46.456-13.32 66.599-25.34-7.798 24.366-24.366 44.833-46.132 57.827 21.117-2.273 41.584-8.122 60.426-16.243-14.292 20.791-32.161 39.308-52.628 54.253z\"></path></svg>\n                                </a>\n                                <a href=\"#\" class=\"btn btn-icon-only btn-pill btn-outline-gray-500\" aria-label=\"github button\" title=\"github button\">\n                                    <svg class=\"icon icon-xxs\" aria-hidden=\"true\" focusable=\"false\" data-prefix=\"fab\" data-icon=\"github\" role=\"img\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 496 512\"><path fill=\"currentColor\" d=\"M165.9 397.4c0 2-2.3 3.6-5.2 3.6-3.3.3-5.6-1.3-5.6-3.6 0-2 2.3-3.6 5.2-3.6 3-.3 5.6 1.3 5.6 3.6zm-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9 2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5.3-6.2 2.3zm44.2-1.7c-2.9.7-4.9 2.6-4.6 4.9.3 2 2.9 3.3 5.9 2.6 2.9-.7 4.9-2.6 4.6-4.6-.3-1.9-3-3.2-5.9-2.9zM244.8 8C106.1 8 0 113.3 0 252c0 110.9 69.8 205.8 169.5 239.2 12.8 2.3 17.3-5.6 17.3-12.1 0-6.2-.3-40.4-.3-61.4 0 0-70 15-84.7-29.8 0 0-11.4-29.1-27.8-36.6 0 0-22.9-15.7 1.6-15.4 0 0 24.9 2 38.6 25.8 21.9 38.6 58.6 27.5 72.9 20.9 2.3-16 8.8-27.1 16-33.7-55.9-6.2-112.3-14.3-112.3-110.5 0-27.5 7.6-41.3 23.6-58.9-2.6-6.5-11.1-33.3 2.6-67.9 20.9-6.5 69 27 69 27 20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27 13.7 34.7 5.2 61.4 2.6 67.9 16 17.7 25.8 31.5 25.8 58.9 0 96.5-58.9 104.2-114.8 110.5 9.2 7.9 17 22.9 17 46.4 0 33.7-.3 75.4-.3 83.6 0 6.5 4.6 14.4 17.3 12.1C428.2 457.8 496 362.9 496 252 496 113.3 383.5 8 244.8 8zM97.2 352.9c-1.3 1-1 3.3.7 5.2 1.6 1.6 3.9 2.3 5.2 1 1.3-1 1-3.3-.7-5.2-1.6-1.6-3.9-2.3-5.2-1zm-10.8-8.1c-.7 1.3.3 2.9 2.3 3.9 1.6 1 3.6.7 4.3-.7.7-1.3-.3-2.9-2.3-3.9-2-.6-3.6-.3-4.3.7zm32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2 2.3 2.3 5.2 2.6 6.5 1 1.3-1.3.7-4.3-1.3-6.2-2.2-2.3-5.2-2.6-6.5-1zm-11.4-14.7c-1.6 1-1.6 3.6 0 5.9 1.6 2.3 4.3 3.3 5.6 2.3 1.6-1.3 1.6-3.9 0-6.2-1.4-2.3-4-3.3-5.6-2z\"></path></svg>\n                                </a>\n                            </div>\n                            <div class=\"d-flex justify-content-center align-items-center mt-4\">\n                                <span class=\"fw-normal\">\n                                    Not registered?\n                                    <a href=\"./sign-up.html\" class=\"fw-bold\">Create account</a>\n                                </span>\n                            </div>\n                        </div>\n                    </div>\n                </div>\n            </div>\n        </section>\n    </main>\n\n{% endblock content %}\n\n<!-- Specific Page JS goes HERE  -->\n{% block javascripts %}{% endblock javascripts %}\n"
  },
  {
    "path": "templates/home/page-sign-up.html",
    "content": "{% extends \"layouts/base-fullscreen.html\" %}\n\n{% block title %} Sign UP {% endblock %} \n\n<!-- Specific Page CSS goes HERE  -->\n{% block stylesheets %}{% endblock stylesheets %}\n\n{% block content %}\n\n    <main>\n        <section class=\"vh-lg-100 mt-5 mt-lg-0 bg-soft d-flex align-items-center\">\n            <div class=\"container\">\n                <p class=\"text-center\">\n                    <a href=\"/dashboard.html\" class=\"d-flex align-items-center justify-content-center\">\n                        <svg class=\"icon icon-xs me-2\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M7.707 14.707a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414l4-4a1 1 0 011.414 1.414L5.414 9H17a1 1 0 110 2H5.414l2.293 2.293a1 1 0 010 1.414z\" clip-rule=\"evenodd\"></path></svg>\n                        Back to homepage\n                    </a>\n                </p>\n                <div class=\"row justify-content-center form-bg-image\" data-background-lg=\"{{ url_for('static', filename='assets/img/illustrations/signin.svg') }}\">\n                    <div class=\"col-12 d-flex align-items-center justify-content-center\">\n                        <div class=\"bg-white shadow border-0 rounded border-light p-4 p-lg-5 w-100 fmxw-500\">\n                            <div class=\"text-center text-md-center mb-4 mt-md-0\">\n                                <h1 class=\"mb-0 h3\">Create Account </h1>\n                            </div>\n                            <form action=\"#\" class=\"mt-4\">\n                                <!-- Form -->\n                                <div class=\"form-group mb-4\">\n                                    <label for=\"email\">Your Email</label>\n                                    <div class=\"input-group\">\n                                        <span class=\"input-group-text\" id=\"basic-addon1\">\n                                            <svg class=\"icon icon-xs text-gray-600\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M2.003 5.884L10 9.882l7.997-3.998A2 2 0 0016 4H4a2 2 0 00-1.997 1.884z\"></path><path d=\"M18 8.118l-8 4-8-4V14a2 2 0 002 2h12a2 2 0 002-2V8.118z\"></path></svg>\n                                        </span>\n                                        <input type=\"email\" class=\"form-control\" placeholder=\"example@company.com\" id=\"email\" autofocus required>\n                                    </div>  \n                                </div>\n                                <!-- End of Form -->\n                                <div class=\"form-group\">\n                                    <!-- Form -->\n                                    <div class=\"form-group mb-4\">\n                                        <label for=\"password\">Your Password</label>\n                                        <div class=\"input-group\">\n                                            <span class=\"input-group-text\" id=\"basic-addon2\">\n                                                <svg class=\"icon icon-xs text-gray-600\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M5 9V7a5 5 0 0110 0v2a2 2 0 012 2v5a2 2 0 01-2 2H5a2 2 0 01-2-2v-5a2 2 0 012-2zm8-2v2H7V7a3 3 0 016 0z\" clip-rule=\"evenodd\"></path></svg>\n                                            </span>\n                                            <input type=\"password\" placeholder=\"Password\" class=\"form-control\" id=\"password\" required>\n                                        </div>  \n                                    </div>\n                                    <!-- End of Form -->\n                                    <!-- Form -->\n                                    <div class=\"form-group mb-4\">\n                                        <label for=\"confirm_password\">Confirm Password</label>\n                                        <div class=\"input-group\">\n                                            <span class=\"input-group-text\" id=\"basic-addon2\">\n                                                <svg class=\"icon icon-xs text-gray-600\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M5 9V7a5 5 0 0110 0v2a2 2 0 012 2v5a2 2 0 01-2 2H5a2 2 0 01-2-2v-5a2 2 0 012-2zm8-2v2H7V7a3 3 0 016 0z\" clip-rule=\"evenodd\"></path></svg>\n                                            </span>\n                                            <input type=\"password\" placeholder=\"Confirm Password\" class=\"form-control\" id=\"confirm_password\" required>\n                                        </div>  \n                                    </div>\n                                    <!-- End of Form -->\n                                    <div class=\"mb-4\">\n                                        <div class=\"form-check\">\n                                            <input class=\"form-check-input\" type=\"checkbox\" value=\"\" id=\"remember\">\n                                            <label class=\"form-check-label fw-normal mb-0\" for=\"remember\">\n                                                I agree to the <a href=\"#\" class=\"fw-bold\">terms and conditions</a>\n                                            </label>\n                                        </div>\n                                    </div>\n                                </div>\n                                <div class=\"d-grid\">\n                                    <button type=\"submit\" class=\"btn btn-gray-800\">Sign up</button>\n                                </div>\n                            </form>\n                            <div class=\"mt-3 mb-4 text-center\">\n                                <span class=\"fw-normal\">or login with</span>\n                            </div>\n                            <div class=\"d-flex justify-content-center my-4\">\n                                <a href=\"#\" class=\"btn btn-icon-only btn-pill btn-outline-gray-500 me-2\" aria-label=\"facebook button\" title=\"facebook button\">\n                                    <svg class=\"icon icon-xxs\" aria-hidden=\"true\" focusable=\"false\" data-prefix=\"fab\" data-icon=\"facebook-f\" role=\"img\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 320 512\"><path fill=\"currentColor\" d=\"M279.14 288l14.22-92.66h-88.91v-60.13c0-25.35 12.42-50.06 52.24-50.06h40.42V6.26S260.43 0 225.36 0c-73.22 0-121.08 44.38-121.08 124.72v70.62H22.89V288h81.39v224h100.17V288z\"></path></svg>\n                                </a>\n                                <a href=\"#\" class=\"btn btn-icon-only btn-pill btn-outline-gray-500 me-2\" aria-label=\"twitter button\" title=\"twitter button\">\n                                    <svg class=\"icon icon-xxs\" aria-hidden=\"true\" focusable=\"false\" data-prefix=\"fab\" data-icon=\"twitter\" role=\"img\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\"><path fill=\"currentColor\" d=\"M459.37 151.716c.325 4.548.325 9.097.325 13.645 0 138.72-105.583 298.558-298.558 298.558-59.452 0-114.68-17.219-161.137-47.106 8.447.974 16.568 1.299 25.34 1.299 49.055 0 94.213-16.568 130.274-44.832-46.132-.975-84.792-31.188-98.112-72.772 6.498.974 12.995 1.624 19.818 1.624 9.421 0 18.843-1.3 27.614-3.573-48.081-9.747-84.143-51.98-84.143-102.985v-1.299c13.969 7.797 30.214 12.67 47.431 13.319-28.264-18.843-46.781-51.005-46.781-87.391 0-19.492 5.197-37.36 14.294-52.954 51.655 63.675 129.3 105.258 216.365 109.807-1.624-7.797-2.599-15.918-2.599-24.04 0-57.828 46.782-104.934 104.934-104.934 30.213 0 57.502 12.67 76.67 33.137 23.715-4.548 46.456-13.32 66.599-25.34-7.798 24.366-24.366 44.833-46.132 57.827 21.117-2.273 41.584-8.122 60.426-16.243-14.292 20.791-32.161 39.308-52.628 54.253z\"></path></svg>\n                                </a>\n                                <a href=\"#\" class=\"btn btn-icon-only btn-pill btn-outline-gray-500\" aria-label=\"github button\" title=\"github button\">\n                                    <svg class=\"icon icon-xxs\" aria-hidden=\"true\" focusable=\"false\" data-prefix=\"fab\" data-icon=\"github\" role=\"img\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 496 512\"><path fill=\"currentColor\" d=\"M165.9 397.4c0 2-2.3 3.6-5.2 3.6-3.3.3-5.6-1.3-5.6-3.6 0-2 2.3-3.6 5.2-3.6 3-.3 5.6 1.3 5.6 3.6zm-31.1-4.5c-.7 2 1.3 4.3 4.3 4.9 2.6 1 5.6 0 6.2-2s-1.3-4.3-4.3-5.2c-2.6-.7-5.5.3-6.2 2.3zm44.2-1.7c-2.9.7-4.9 2.6-4.6 4.9.3 2 2.9 3.3 5.9 2.6 2.9-.7 4.9-2.6 4.6-4.6-.3-1.9-3-3.2-5.9-2.9zM244.8 8C106.1 8 0 113.3 0 252c0 110.9 69.8 205.8 169.5 239.2 12.8 2.3 17.3-5.6 17.3-12.1 0-6.2-.3-40.4-.3-61.4 0 0-70 15-84.7-29.8 0 0-11.4-29.1-27.8-36.6 0 0-22.9-15.7 1.6-15.4 0 0 24.9 2 38.6 25.8 21.9 38.6 58.6 27.5 72.9 20.9 2.3-16 8.8-27.1 16-33.7-55.9-6.2-112.3-14.3-112.3-110.5 0-27.5 7.6-41.3 23.6-58.9-2.6-6.5-11.1-33.3 2.6-67.9 20.9-6.5 69 27 69 27 20-5.6 41.5-8.5 62.8-8.5s42.8 2.9 62.8 8.5c0 0 48.1-33.6 69-27 13.7 34.7 5.2 61.4 2.6 67.9 16 17.7 25.8 31.5 25.8 58.9 0 96.5-58.9 104.2-114.8 110.5 9.2 7.9 17 22.9 17 46.4 0 33.7-.3 75.4-.3 83.6 0 6.5 4.6 14.4 17.3 12.1C428.2 457.8 496 362.9 496 252 496 113.3 383.5 8 244.8 8zM97.2 352.9c-1.3 1-1 3.3.7 5.2 1.6 1.6 3.9 2.3 5.2 1 1.3-1 1-3.3-.7-5.2-1.6-1.6-3.9-2.3-5.2-1zm-10.8-8.1c-.7 1.3.3 2.9 2.3 3.9 1.6 1 3.6.7 4.3-.7.7-1.3-.3-2.9-2.3-3.9-2-.6-3.6-.3-4.3.7zm32.4 35.6c-1.6 1.3-1 4.3 1.3 6.2 2.3 2.3 5.2 2.6 6.5 1 1.3-1.3.7-4.3-1.3-6.2-2.2-2.3-5.2-2.6-6.5-1zm-11.4-14.7c-1.6 1-1.6 3.6 0 5.9 1.6 2.3 4.3 3.3 5.6 2.3 1.6-1.3 1.6-3.9 0-6.2-1.4-2.3-4-3.3-5.6-2z\"></path></svg>\n                                </a>\n                            </div>\n                            <div class=\"d-flex justify-content-center align-items-center mt-4\">\n                                <span class=\"fw-normal\">\n                                    Already have an account? \n                                    <a href=\"./sign-in.html\" class=\"fw-bold\">Login here</a>\n                                </span>\n                            </div>\n                        </div>\n                    </div>\n                </div>\n            </div>\n        </section>\n    </main>\n\n{% endblock content %}\n\n<!-- Specific Page JS goes HERE  -->\n{% block javascripts %}{% endblock javascripts %}\n"
  },
  {
    "path": "templates/home/settings.html",
    "content": "{% extends \"layouts/base.html\" %}\n\n{% block title %} Settings {% endblock %} \n\n<!-- Specific Page CSS goes HERE  -->\n{% block stylesheets %}{% endblock stylesheets %}\n\n{% block content %}\n\n    <div class=\"d-flex justify-content-between flex-wrap flex-md-nowrap align-items-center py-4\">\n        <div>\n            <div class=\"dropdown\">\n                <button class=\"btn btn-secondary d-inline-flex align-items-center me-2 dropdown-toggle\" data-bs-toggle=\"dropdown\" aria-haspopup=\"true\" aria-expanded=\"false\">\n                    <svg class=\"icon icon-xs me-2\" fill=\"none\" stroke=\"currentColor\" viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M12 6v6m0 0v6m0-6h6m-6 0H6\"></path></svg>\n                    New\n                </button>\n                <div class=\"dropdown-menu dashboard-dropdown dropdown-menu-start mt-2 py-1\">\n                    <a class=\"dropdown-item d-flex align-items-center\" href=\"#\">\n                        <svg class=\"dropdown-icon text-gray-400 me-2\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M4 4a2 2 0 012-2h4.586A2 2 0 0112 2.586L15.414 6A2 2 0 0116 7.414V16a2 2 0 01-2 2H6a2 2 0 01-2-2V4zm2 6a1 1 0 011-1h6a1 1 0 110 2H7a1 1 0 01-1-1zm1 3a1 1 0 100 2h6a1 1 0 100-2H7z\" clip-rule=\"evenodd\"></path></svg>\n                        Document\n                    </a>\n                    <a class=\"dropdown-item d-flex align-items-center\" href=\"#\">\n                        <svg class=\"dropdown-icon text-gray-400 me-2\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M18 10c0 3.866-3.582 7-8 7a8.841 8.841 0 01-4.083-.98L2 17l1.338-3.123C2.493 12.767 2 11.434 2 10c0-3.866 3.582-7 8-7s8 3.134 8 7zM7 9H5v2h2V9zm8 0h-2v2h2V9zM9 9h2v2H9V9z\" clip-rule=\"evenodd\"></path></svg>\n                        Message\n                    </a>\n                    <a class=\"dropdown-item d-flex align-items-center\" href=\"#\">\n                        <svg class=\"dropdown-icon text-gray-400 me-2\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M5.5 13a3.5 3.5 0 01-.369-6.98 4 4 0 117.753-1.977A4.5 4.5 0 1113.5 13H11V9.413l1.293 1.293a1 1 0 001.414-1.414l-3-3a1 1 0 00-1.414 0l-3 3a1 1 0 001.414 1.414L9 9.414V13H5.5z\"></path><path d=\"M9 13h2v5a1 1 0 11-2 0v-5z\"></path></svg>                            \n                        Product\n                    </a>\n                    <div role=\"separator\" class=\"dropdown-divider my-1\"></div>\n                    <a class=\"dropdown-item d-flex align-items-center\" href=\"#\">\n                        <svg class=\"dropdown-icon text-danger me-2\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M12.395 2.553a1 1 0 00-1.45-.385c-.345.23-.614.558-.822.88-.214.33-.403.713-.57 1.116-.334.804-.614 1.768-.84 2.734a31.365 31.365 0 00-.613 3.58 2.64 2.64 0 01-.945-1.067c-.328-.68-.398-1.534-.398-2.654A1 1 0 005.05 6.05 6.981 6.981 0 003 11a7 7 0 1011.95-4.95c-.592-.591-.98-.985-1.348-1.467-.363-.476-.724-1.063-1.207-2.03zM12.12 15.12A3 3 0 017 13s.879.5 2.5.5c0-1 .5-4 1.25-4.5.5 1 .786 1.293 1.371 1.879A2.99 2.99 0 0113 13a2.99 2.99 0 01-.879 2.121z\" clip-rule=\"evenodd\"></path></svg>\n                        My Plan\n                    </a>\n                </div>\n            </div>\n        </div>\n        <div>\n            <button type=\"button\" class=\"btn btn-gray-800 d-inline-flex align-items-center me-2\">\n                <svg class=\"icon icon-xs\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M6 2a1 1 0 00-1 1v1H4a2 2 0 00-2 2v10a2 2 0 002 2h12a2 2 0 002-2V6a2 2 0 00-2-2h-1V3a1 1 0 10-2 0v1H7V3a1 1 0 00-1-1zm0 5a1 1 0 000 2h8a1 1 0 100-2H6z\" clip-rule=\"evenodd\"></path></svg>\n            </button>\n            <button class=\"btn btn-gray-800 d-inline-flex align-items-center dropdown-toggle\" data-bs-toggle=\"dropdown\" aria-haspopup=\"true\" aria-expanded=\"false\">\n                <svg class=\"icon icon-xs me-2\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M9 2a1 1 0 000 2h2a1 1 0 100-2H9z\"></path><path fill-rule=\"evenodd\" d=\"M4 5a2 2 0 012-2 3 3 0 003 3h2a3 3 0 003-3 2 2 0 012 2v11a2 2 0 01-2 2H6a2 2 0 01-2-2V5zm3 4a1 1 0 000 2h.01a1 1 0 100-2H7zm3 0a1 1 0 000 2h3a1 1 0 100-2h-3zm-3 4a1 1 0 100 2h.01a1 1 0 100-2H7zm3 0a1 1 0 100 2h3a1 1 0 100-2h-3z\" clip-rule=\"evenodd\"></path></svg>\n                Reports\n                <svg class=\"icon icon-xs ms-1\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M5.293 7.293a1 1 0 011.414 0L10 10.586l3.293-3.293a1 1 0 111.414 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414z\" clip-rule=\"evenodd\"></path></svg>\n            </button>\n            <div class=\"dropdown-menu dashboard-dropdown dropdown-menu-start mt-2 py-1\">\n                <a class=\"dropdown-item d-flex align-items-center\" href=\"#\">\n                    <svg class=\"dropdown-icon text-gray-400 me-2\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M4 3a2 2 0 100 4h12a2 2 0 100-4H4z\"></path><path fill-rule=\"evenodd\" d=\"M3 8h14v7a2 2 0 01-2 2H5a2 2 0 01-2-2V8zm5 3a1 1 0 011-1h2a1 1 0 110 2H9a1 1 0 01-1-1z\" clip-rule=\"evenodd\"></path></svg>\n                    Products\n                </a>\n                <a class=\"dropdown-item d-flex align-items-center\" href=\"#\">\n                    <svg class=\"dropdown-icon text-gray-400 me-2\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M9 6a3 3 0 11-6 0 3 3 0 016 0zM17 6a3 3 0 11-6 0 3 3 0 016 0zM12.93 17c.046-.327.07-.66.07-1a6.97 6.97 0 00-1.5-4.33A5 5 0 0119 16v1h-6.07zM6 11a5 5 0 015 5v1H1v-1a5 5 0 015-5z\"></path></svg>                            \n                    Customers\n                </a>\n                <a class=\"dropdown-item d-flex align-items-center\" href=\"#\">\n                    <svg class=\"dropdown-icon text-gray-400 me-2\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M10 2a4 4 0 00-4 4v1H5a1 1 0 00-.994.89l-1 9A1 1 0 004 18h12a1 1 0 00.994-1.11l-1-9A1 1 0 0015 7h-1V6a4 4 0 00-4-4zm2 5V6a2 2 0 10-4 0v1h4zm-6 3a1 1 0 112 0 1 1 0 01-2 0zm7-1a1 1 0 100 2 1 1 0 000-2z\" clip-rule=\"evenodd\"></path></svg>\n                    Orders\n                </a>\n                <a class=\"dropdown-item d-flex align-items-center\" href=\"#\">\n                    <svg class=\"dropdown-icon text-gray-400 me-2\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M3 3a1 1 0 000 2v8a2 2 0 002 2h2.586l-1.293 1.293a1 1 0 101.414 1.414L10 15.414l2.293 2.293a1 1 0 001.414-1.414L12.414 15H15a2 2 0 002-2V5a1 1 0 100-2H3zm11 4a1 1 0 10-2 0v4a1 1 0 102 0V7zm-3 1a1 1 0 10-2 0v3a1 1 0 102 0V8zM8 9a1 1 0 00-2 0v2a1 1 0 102 0V9z\" clip-rule=\"evenodd\"></path></svg>\n                    Console\n                </a>\n                <div role=\"separator\" class=\"dropdown-divider my-1\"></div>\n                <a class=\"dropdown-item d-flex align-items-center\" href=\"#\">\n                    <svg class=\"dropdown-icon text-gray-800 me-2\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M9 2a1 1 0 000 2h2a1 1 0 100-2H9z\"></path><path fill-rule=\"evenodd\" d=\"M4 5a2 2 0 012-2 3 3 0 003 3h2a3 3 0 003-3 2 2 0 012 2v11a2 2 0 01-2 2H6a2 2 0 01-2-2V5zm3 4a1 1 0 000 2h.01a1 1 0 100-2H7zm3 0a1 1 0 000 2h3a1 1 0 100-2h-3zm-3 4a1 1 0 100 2h.01a1 1 0 100-2H7zm3 0a1 1 0 100 2h3a1 1 0 100-2h-3z\" clip-rule=\"evenodd\"></path></svg>\n                    All Reports\n                </a>\n            </div>\n        </div>\n    </div>\n    <div class=\"row\">\n        <div class=\"col-12 col-xl-8\">\n            <div class=\"card card-body border-0 shadow mb-4\">\n                <h2 class=\"h5 mb-4\">General information</h2>\n                <form>\n                    <div class=\"row\">\n                        <div class=\"col-md-6 mb-3\">\n                            <div>\n                                <label for=\"first_name\">First Name</label>\n                                <input class=\"form-control\" id=\"first_name\" type=\"text\" placeholder=\"Enter your first name\" required>\n                            </div>\n                        </div>\n                        <div class=\"col-md-6 mb-3\">\n                            <div>\n                                <label for=\"last_name\">Last Name</label>\n                                <input class=\"form-control\" id=\"last_name\" type=\"text\" placeholder=\"Also your last name\" required>\n                            </div>\n                        </div>\n                    </div>\n                    <div class=\"row align-items-center\">\n                        <div class=\"col-md-6 mb-3\">\n                            <label for=\"birthday\">Birthday</label>\n                            <div class=\"input-group\">\n                                <span class=\"input-group-text\">\n                                    <svg class=\"icon icon-xs\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M6 2a1 1 0 00-1 1v1H4a2 2 0 00-2 2v10a2 2 0 002 2h12a2 2 0 002-2V6a2 2 0 00-2-2h-1V3a1 1 0 10-2 0v1H7V3a1 1 0 00-1-1zm0 5a1 1 0 000 2h8a1 1 0 100-2H6z\" clip-rule=\"evenodd\"></path></svg>\n                                </span>\n                                <input data-datepicker=\"\" class=\"form-control\" id=\"birthday\" type=\"text\" placeholder=\"dd/mm/yyyy\" required>                                               \n                              </div>\n                        </div>\n                        <div class=\"col-md-6 mb-3\">\n                            <label for=\"gender\">Gender</label>\n                            <select class=\"form-select mb-0\" id=\"gender\" aria-label=\"Gender select example\">\n                                <option selected>Gender</option>\n                                <option value=\"1\">Female</option>\n                                <option value=\"2\">Male</option>\n                            </select>\n                        </div>\n                    </div>\n                    <div class=\"row\">\n                        <div class=\"col-md-6 mb-3\">\n                            <div class=\"form-group\">\n                                <label for=\"email\">Email</label>\n                                <input class=\"form-control\" id=\"email\" type=\"email\" placeholder=\"name@company.com\" value=\"{{ current_user.email }}\" readonly>\n                            </div>\n                        </div>\n                        <div class=\"col-md-6 mb-3\">\n                            <div class=\"form-group\">\n                                <label for=\"phone\">Phone</label>\n                                <input class=\"form-control\" id=\"phone\" type=\"number\" placeholder=\"+12-345 678 910\" required>\n                            </div>\n                        </div>\n                    </div>\n                    <h2 class=\"h5 my-4\">Location</h2>\n                    <div class=\"row\">\n                        <div class=\"col-sm-9 mb-3\">\n                            <div class=\"form-group\">\n                                <label for=\"address\">Address</label>\n                                <input class=\"form-control\" id=\"address\" type=\"text\" placeholder=\"Enter your home address\" required>\n                            </div>\n                        </div>\n                        <div class=\"col-sm-3 mb-3\">\n                            <div class=\"form-group\">\n                                <label for=\"number\">Number</label>\n                                <input class=\"form-control\" id=\"number\" type=\"number\" placeholder=\"No.\" required>\n                            </div>\n                        </div>\n                    </div>\n                    <div class=\"row\">\n                        <div class=\"col-sm-4 mb-3\">\n                            <div class=\"form-group\">\n                                <label for=\"city\">City</label>\n                                <input class=\"form-control\" id=\"city\" type=\"text\" placeholder=\"City\" required>\n                            </div>\n                        </div>\n                        <div class=\"col-sm-4 mb-3\">\n                            <label for=\"state\">State</label>\n                            <select class=\"form-select w-100 mb-0\" id=\"state\" name=\"state\" aria-label=\"State select example\">\n                                <option selected>State</option>\n                                <option value=\"AL\">Alabama</option>\n                                <option value=\"AK\">Alaska</option>\n                                <option value=\"AZ\">Arizona</option>\n                                <option value=\"AR\">Arkansas</option>\n                                <option value=\"CA\">California</option>\n                                <option value=\"CO\">Colorado</option>\n                                <option value=\"CT\">Connecticut</option>\n                                <option value=\"DE\">Delaware</option>\n                                <option value=\"DC\">District Of Columbia</option>\n                                <option value=\"FL\">Florida</option>\n                                <option value=\"GA\">Georgia</option>\n                                <option value=\"HI\">Hawaii</option>\n                                <option value=\"ID\">Idaho</option>\n                                <option value=\"IL\">Illinois</option>\n                                <option value=\"IN\">Indiana</option>\n                                <option value=\"IA\">Iowa</option>\n                                <option value=\"KS\">Kansas</option>\n                                <option value=\"KY\">Kentucky</option>\n                                <option value=\"LA\">Louisiana</option>\n                                <option value=\"ME\">Maine</option>\n                                <option value=\"MD\">Maryland</option>\n                                <option value=\"MA\">Massachusetts</option>\n                                <option value=\"MI\">Michigan</option>\n                                <option value=\"MN\">Minnesota</option>\n                                <option value=\"MS\">Mississippi</option>\n                                <option value=\"MO\">Missouri</option>\n                                <option value=\"MT\">Montana</option>\n                                <option value=\"NE\">Nebraska</option>\n                                <option value=\"NV\">Nevada</option>\n                                <option value=\"NH\">New Hampshire</option>\n                                <option value=\"NJ\">New Jersey</option>\n                                <option value=\"NM\">New Mexico</option>\n                                <option value=\"NY\">New York</option>\n                                <option value=\"NC\">North Carolina</option>\n                                <option value=\"ND\">North Dakota</option>\n                                <option value=\"OH\">Ohio</option>\n                                <option value=\"OK\">Oklahoma</option>\n                                <option value=\"OR\">Oregon</option>\n                                <option value=\"PA\">Pennsylvania</option>\n                                <option value=\"RI\">Rhode Island</option>\n                                <option value=\"SC\">South Carolina</option>\n                                <option value=\"SD\">South Dakota</option>\n                                <option value=\"TN\">Tennessee</option>\n                                <option value=\"TX\">Texas</option>\n                                <option value=\"UT\">Utah</option>\n                                <option value=\"VT\">Vermont</option>\n                                <option value=\"VA\">Virginia</option>\n                                <option value=\"WA\">Washington</option>\n                                <option value=\"WV\">West Virginia</option>\n                                <option value=\"WI\">Wisconsin</option>\n                                <option value=\"WY\">Wyoming</option>\n                            </select>\n                        </div>\n                        <div class=\"col-sm-4\">\n                            <div class=\"form-group\">\n                                <label for=\"zip\">ZIP</label>\n                                <input class=\"form-control\" id=\"zip\" type=\"tel\" placeholder=\"ZIP\" required>\n                            </div>\n                        </div>\n                    </div>\n                    <div class=\"mt-3\">\n                        <button class=\"btn btn-gray-800 mt-2 animate-up-2\" type=\"submit\">Save all</button>\n                    </div>\n                </form>\n            </div>\n            <div class=\"card card-body border-0 shadow mb-4 mb-xl-0\">\n                <h2 class=\"h5 mb-4\">Alerts & Notifications</h2>\n                <ul class=\"list-group list-group-flush\">\n                    <li class=\"list-group-item d-flex align-items-center justify-content-between px-0 border-bottom\">\n                        <div>\n                            <h3 class=\"h6 mb-1\">Company News</h3>\n                            <p class=\"small pe-4\">Get Rocket news, announcements, and product updates</p>\n                        </div>\n                        <div>\n                            <div class=\"form-check form-switch\">\n                                <input class=\"form-check-input\" type=\"checkbox\" id=\"user-notification-1\">\n                                <label class=\"form-check-label\" for=\"user-notification-1\"></label>\n                            </div>\n                        </div>\n                    </li>\n                    <li class=\"list-group-item d-flex align-items-center justify-content-between px-0 border-bottom\">\n                        <div>\n                            <h3 class=\"h6 mb-1\">Account Activity</h3>\n                            <p class=\"small pe-4\">Get important notifications about you or activity you've missed</p>\n                        </div>\n                        <div>\n                            <div class=\"form-check form-switch\">\n                                <input class=\"form-check-input\" type=\"checkbox\" id=\"user-notification-2\" checked>\n                                <label class=\"form-check-label\" for=\"user-notification-2\"></label>\n                            </div>                                            \n                        </div>\n                    </li>\n                    <li class=\"list-group-item d-flex align-items-center justify-content-between px-0\">\n                        <div>\n                            <h3 class=\"h6 mb-1\">Meetups Near You</h3>\n                            <p class=\"small pe-4\">Get an email when a Dribbble Meetup is posted close to my location</p>\n                        </div>\n                        <div>\n                            <div class=\"form-check form-switch\">\n                                <input class=\"form-check-input\" type=\"checkbox\" id=\"user-notification-3\" checked>\n                                <label class=\"form-check-label\" for=\"user-notification-3\"></label>\n                            </div> \n                        </div>\n                    </li>\n                </ul>\n            </div>\n        </div>\n        <div class=\"col-12 col-xl-4\">\n            <div class=\"row\">\n                <div class=\"col-12 mb-4\">\n                    <div class=\"card shadow border-0 text-center p-0\">\n                        <div class=\"profile-cover rounded-top\" data-background=\"{{ config.ASSETS_ROOT }}/img/profile-cover.jpg\"></div>\n                        <div class=\"card-body pb-5\">\n                            <img src=\"{{ url_for('static', filename='assets/img/team/profile-picture-1.jpg') }}\" class=\"avatar-xl rounded-circle mx-auto mt-n7 mb-4\" alt=\"Neil Portrait\">\n                            <h4 class=\"h3\">\n                                Neil Sims\n                            </h4>\n                            <h5 class=\"fw-normal\">\n                                {{ current_user.username }}\n                            </h5>\n                            <p class=\"text-gray mb-4\">\n                                {{ current_user.email }}\n                            </p>\n                            <a class=\"btn btn-sm btn-gray-800 d-inline-flex align-items-center me-2\" href=\"#\">\n                                <svg class=\"icon icon-xs me-1\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M8 9a3 3 0 100-6 3 3 0 000 6zM8 11a6 6 0 016 6H2a6 6 0 016-6zM16 7a1 1 0 10-2 0v1h-1a1 1 0 100 2h1v1a1 1 0 102 0v-1h1a1 1 0 100-2h-1V7z\"></path></svg>\n                                Connect\n                            </a>\n                            <a class=\"btn btn-sm btn-secondary\" href=\"#\">Send Message</a>\n                        </div>\n                      </div>\n                </div>\n                <div class=\"col-12\">\n                    <div class=\"card card-body border-0 shadow mb-4\">\n                        <h2 class=\"h5 mb-4\">Select profile photo</h2>\n                        <div class=\"d-flex align-items-center\">\n                            <div class=\"me-3\">\n                                <!-- Avatar -->\n                                <img class=\"rounded avatar-xl\" src=\"{{ url_for('static', filename='assets/img/team/profile-picture-3.jpg') }}\" alt=\"change avatar\">\n                            </div>\n                            <div class=\"file-field\">\n                                <div class=\"d-flex justify-content-xl-center ms-xl-3\">\n                                    <div class=\"d-flex\">\n                                        <svg class=\"icon text-gray-500 me-2\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M8 4a3 3 0 00-3 3v4a5 5 0 0010 0V7a1 1 0 112 0v4a7 7 0 11-14 0V7a5 5 0 0110 0v4a3 3 0 11-6 0V7a1 1 0 012 0v4a1 1 0 102 0V7a3 3 0 00-3-3z\" clip-rule=\"evenodd\"></path></svg>\n                                        <input type=\"file\">\n                                        <div class=\"d-md-block text-left\">\n                                            <div class=\"fw-normal text-dark mb-1\">Choose Image</div>\n                                            <div class=\"text-gray small\">JPG, GIF or PNG. Max size of 800K</div>\n                                        </div>\n                                    </div>\n                                </div>\n                              </div>                                        \n                        </div>\n                    </div>\n                </div>\n                <div class=\"col-12\">\n                    <div class=\"card card-body border-0 shadow\">\n                        <h2 class=\"h5 mb-4\">Select cover photo</h2>\n                        <div class=\"d-flex align-items-center\">\n                            <div class=\"me-3\">\n                                <!-- Avatar -->\n                                <img class=\"rounded avatar-xl\" src=\"{{ url_for('static', filename='assets/img/profile-cover.jpg') }}\" alt=\"change cover\">\n                            </div>\n                            <div class=\"file-field\">\n                                <div class=\"d-flex justify-content-xl-center ms-xl-3\">\n                                    <div class=\"d-flex\">\n                                        <svg class=\"icon text-gray-500 me-2\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M8 4a3 3 0 00-3 3v4a5 5 0 0010 0V7a1 1 0 112 0v4a7 7 0 11-14 0V7a5 5 0 0110 0v4a3 3 0 11-6 0V7a1 1 0 012 0v4a1 1 0 102 0V7a3 3 0 00-3-3z\" clip-rule=\"evenodd\"></path></svg>\n                                        <input type=\"file\">\n                                        <div class=\"d-md-block text-left\">\n                                            <div class=\"fw-normal text-dark mb-1\">Choose Image</div>\n                                            <div class=\"text-gray small\">JPG, GIF or PNG. Max size of 800K</div>\n                                        </div>\n                                    </div>\n                                </div>\n                              </div>                                        \n                        </div>\n                    </div>\n                </div>\n            </div>\n        </div>\n    </div>\n\n{% endblock content %}\n\n<!-- Specific Page JS goes HERE  -->\n{% block javascripts %}{% endblock javascripts %}\n"
  },
  {
    "path": "templates/home/tables-bootstrap-tables.html",
    "content": "{% extends \"layouts/base.html\" %}\n\n{% block title %} Tables {% endblock %} \n\n<!-- Specific Page CSS goes HERE  -->\n{% block stylesheets %}{% endblock stylesheets %}\n\n{% block content %}\n\n  <div class=\"py-4\">\n      <nav aria-label=\"breadcrumb\" class=\"d-none d-md-inline-block\">\n          <ol class=\"breadcrumb breadcrumb-dark breadcrumb-transparent\">\n              <li class=\"breadcrumb-item\">\n                  <a href=\"#\">\n                      <svg class=\"icon icon-xxs\" fill=\"none\" stroke=\"currentColor\" viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M3 12l2-2m0 0l7-7 7 7M5 10v10a1 1 0 001 1h3m10-11l2 2m-2-2v10a1 1 0 01-1 1h-3m-6 0a1 1 0 001-1v-4a1 1 0 011-1h2a1 1 0 011 1v4a1 1 0 001 1m-6 0h6\"></path></svg>\n                  </a>\n              </li>\n              <li class=\"breadcrumb-item\"><a href=\"#\">Tables</a></li>\n              <li class=\"breadcrumb-item active\" aria-current=\"page\">Bootstrap tables</li>\n          </ol>\n      </nav>\n      <div class=\"d-flex justify-content-between w-100 flex-wrap\">\n          <div class=\"mb-3 mb-lg-0\">\n              <h1 class=\"h4\">Bootstrap tables</h1>\n              <p class=\"mb-0\">Dozens of reusable components built to provide buttons, alerts, popovers, and more.</p>\n          </div>\n          <div>\n              <a href=\"https://themesberg.com/docs/volt-bootstrap-5-dashboard/components-tables-\" class=\"btn btn-outline-gray-600 d-inline-flex align-items-center\">\n                  <svg class=\"icon icon-xs me-1\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-8-3a1 1 0 00-.867.5 1 1 0 11-1.731-1A3 3 0 0113 8a3.001 3.001 0 01-2 2.83V11a1 1 0 11-2 0v-1a1 1 0 011-1 1 1 0 100-2zm0 8a1 1 0 100-2 1 1 0 000 2z\" clip-rule=\"evenodd\"></path></svg>\n                  Bootstrap Tables Docs\n              </a>\n          </div>\n      </div>\n  </div>\n\n  <div class=\"card border-0 shadow mb-4\">\n      <div class=\"card-body\">\n          <div class=\"table-responsive\">\n              <table class=\"table table-centered table-nowrap mb-0 rounded\">\n                  <thead class=\"thead-light\">\n                      <tr>\n                          <th class=\"border-0 rounded-start\">#</th>\n                          <th class=\"border-0\">Traffic Source</th>\n                          <th class=\"border-0\">Source Type</th>\n                          <th class=\"border-0\">Category</th>\n                          <th class=\"border-0\">Global Rank</th>\n                          <th class=\"border-0\">Traffic Share</th>\n                          <th class=\"border-0 rounded-end\">Change</th>\n                      </tr>\n                  </thead>\n                  <tbody>\n                      <!-- Item -->\n                      <tr>\n                          <td><a href=\"#\" class=\"text-primary fw-bold\">1</a> </td>\n                          <td class=\"fw-bold d-flex align-items-center\">\n                              <svg class=\"icon icon-xxs text-gray-500 me-2\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M10 18a8 8 0 100-16 8 8 0 000 16zM4.332 8.027a6.012 6.012 0 011.912-2.706C6.512 5.73 6.974 6 7.5 6A1.5 1.5 0 019 7.5V8a2 2 0 004 0 2 2 0 011.523-1.943A5.977 5.977 0 0116 10c0 .34-.028.675-.083 1H15a2 2 0 00-2 2v2.197A5.973 5.973 0 0110 16v-2a2 2 0 00-2-2 2 2 0 01-2-2 2 2 0 00-1.668-1.973z\" clip-rule=\"evenodd\"></path></svg>\n                              Direct\n                          </td>\n                          <td>\n                              Direct\n                          </td>\n                          <td>\n                              - \n                          </td>\n                          <td>\n                              --\n                          </td>\n                          <td>\n                              <div class=\"row d-flex align-items-center\">\n                                  <div class=\"col-12 col-xl-2 px-0\">\n                                      <div class=\"small fw-bold\">51%</div>\n                                  </div>\n                                  <div class=\"col-12 col-xl-10 px-0 px-xl-1\">\n                                      <div class=\"progress progress-lg mb-0\">\n                                          <div class=\"progress-bar bg-dark\" role=\"progressbar\" aria-valuenow=\"51\" aria-valuemin=\"0\" aria-valuemax=\"100\" style=\"width: 51%;\"></div>\n                                      </div>\n                                  </div>\n                              </div>\n                          </td>\n                          <td class=\"text-success\">\n                              <div class=\"d-flex align-items-center\">\n                                  <svg class=\"icon icon-xs me-1\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M14.707 12.707a1 1 0 01-1.414 0L10 9.414l-3.293 3.293a1 1 0 01-1.414-1.414l4-4a1 1 0 011.414 0l4 4a1 1 0 010 1.414z\" clip-rule=\"evenodd\"></path></svg>                                   \n                                  <span class=\"fw-bold\">2.45%</span>\n                              </div>\n                          </td>\n                      </tr>\n                      <!-- End of Item -->\n\n                      <!-- Item -->\n                      <tr>\n                          <td><a href=\"#\" class=\"text-primary fw-bold\">2</a> </td>\n                          <td class=\"fw-bold d-flex align-items-center\">\n                              <svg class=\"icon icon-xxs text-gray-500 me-2\" aria-hidden=\"true\" focusable=\"false\" data-prefix=\"fab\" data-icon=\"google\"  role=\"img\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 488 512\"><path fill=\"currentColor\" d=\"M488 261.8C488 403.3 391.1 504 248 504 110.8 504 0 393.2 0 256S110.8 8 248 8c66.8 0 123 24.5 166.3 64.9l-67.5 64.9C258.5 52.6 94.3 116.6 94.3 256c0 86.5 69.1 156.6 153.7 156.6 98.2 0 135-70.4 140.8-106.9H248v-85.3h236.1c2.3 12.7 3.9 24.9 3.9 41.4z\"></path></svg>\n                              Google Search\n                          </td>\n                          <td>\n                              Search / Organic\n                          </td>\n                          <td>\n                              -\n                          </td>\n                          <td>\n                              --\n                          </td>\n                          <td>\n                              <div class=\"row d-flex align-items-center\">\n                                  <div class=\"col-12 col-xl-2 px-0\">\n                                      <div class=\"small fw-bold\">18%</div>\n                                  </div>\n                                  <div class=\"col-12 col-xl-10 px-0 px-xl-1\">\n                                      <div class=\"progress progress-lg mb-0\">\n                                          <div class=\"progress-bar bg-dark\" role=\"progressbar\" aria-valuenow=\"18\" aria-valuemin=\"0\" aria-valuemax=\"100\" style=\"width: 18%;\"></div>\n                                      </div>\n                                  </div>\n                              </div>\n                          </td>\n                          <td class=\"text-success\">\n                              <div class=\"d-flex align-items-center\">\n                                  <svg class=\"icon icon-xs me-1\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M14.707 12.707a1 1 0 01-1.414 0L10 9.414l-3.293 3.293a1 1 0 01-1.414-1.414l4-4a1 1 0 011.414 0l4 4a1 1 0 010 1.414z\" clip-rule=\"evenodd\"></path></svg>                                   \n                                  <span class=\"fw-bold\">17.78%</span>\n                              </div>                          \n                          </td>\n                      </tr>\n                      <!-- End of Item -->\n\n                      <!-- Item -->\n                      <tr>\n                          <td><a href=\"#\" class=\"text-primary fw-bold\">3</a> </td>\n                          <td class=\"fw-bold d-flex align-items-center\">\n                              <svg class=\"icon icon-xxs text-gray-500 me-2\" aria-hidden=\"true\" focusable=\"false\" data-prefix=\"fab\" data-icon=\"youtube\" role=\"img\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 576 512\"><path fill=\"currentColor\" d=\"M549.655 124.083c-6.281-23.65-24.787-42.276-48.284-48.597C458.781 64 288 64 288 64S117.22 64 74.629 75.486c-23.497 6.322-42.003 24.947-48.284 48.597-11.412 42.867-11.412 132.305-11.412 132.305s0 89.438 11.412 132.305c6.281 23.65 24.787 41.5 48.284 47.821C117.22 448 288 448 288 448s170.78 0 213.371-11.486c23.497-6.321 42.003-24.171 48.284-47.821 11.412-42.867 11.412-132.305 11.412-132.305s0-89.438-11.412-132.305zm-317.51 213.508V175.185l142.739 81.205-142.739 81.201z\"></path></svg>\n                              youtube.com\n                          </td>\n                          <td>\n                              Social\n                          </td>\n                          <td>\n                              <a class=\"small fw-bold\" href=\"#\">Arts and Entertainment</a>\n                          </td>\n                          <td>\n                              #2\n                          </td>\n                          <td>\n                              <div class=\"row d-flex align-items-center\">\n                                  <div class=\"col-12 col-xl-2 px-0\">\n                                      <div class=\"small fw-bold\">18%</div>\n                                  </div>\n                                  <div class=\"col-12 col-xl-10 px-0 px-xl-1\">\n                                      <div class=\"progress progress-lg mb-0\">\n                                          <div class=\"progress-bar bg-dark\" role=\"progressbar\" aria-valuenow=\"18\" aria-valuemin=\"0\" aria-valuemax=\"100\" style=\"width: 18%;\"></div>\n                                      </div>\n                                  </div>\n                              </div>\n                          </td>\n                          <td>\n                              -                                \n                          </td>\n                      </tr>\n                      <!-- End of Item -->\n\n                      <!-- Item -->\n                      <tr>\n                          <td><a href=\"#\" class=\"text-primary fw-bold\">4</a> </td>\n                          <td class=\"fw-bold d-flex align-items-center\">\n                              <svg class=\"icon icon-xxs text-gray-500 me-2\" aria-hidden=\"true\" focusable=\"false\" data-prefix=\"fab\" data-icon=\"yahoo\" role=\"img\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\"><path fill=\"currentColor\" d=\"M223.69,141.06,167,284.23,111,141.06H14.93L120.76,390.19,82.19,480h94.17L317.27,141.06Zm105.4,135.79a58.22,58.22,0,1,0,58.22,58.22A58.22,58.22,0,0,0,329.09,276.85ZM394.65,32l-93,223.47H406.44L499.07,32Z\"></path></svg>\n                              yahoo.com\n                          </td>\n                          <td>\n                              Referral\n                          </td>\n                          <td>\n                              <a class=\"small fw-bold\" href=\"#\">News and Media</a>\n                          </td>\n                          <td>\n                              #11\n                          </td>\n                          <td>\n                              <div class=\"row d-flex align-items-center\">\n                                  <div class=\"col-12 col-xl-2 px-0\">\n                                      <div class=\"small fw-bold\">8%</div>\n                                  </div>\n                                  <div class=\"col-12 col-xl-10 px-0 px-xl-1\">\n                                      <div class=\"progress progress-lg mb-0\">\n                                          <div class=\"progress-bar bg-dark\" role=\"progressbar\" aria-valuenow=\"8\" aria-valuemin=\"0\" aria-valuemax=\"100\" style=\"width: 8%;\"></div>\n                                      </div>\n                                  </div>\n                              </div>\n                          </td>\n                          <td class=\"text-danger\">\n                              <div class=\"d-flex align-items-center\">\n                                  <svg class=\"icon icon-xs me-1\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M5.293 7.293a1 1 0 011.414 0L10 10.586l3.293-3.293a1 1 0 111.414 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414z\" clip-rule=\"evenodd\"></path></svg>\n                                  <span class=\"fw-bold\">9.45%</span>\n                              </div>                                \n                          </td>\n                      </tr>\n                      <!-- End of Item -->\n\n                      <!-- Item -->\n                      <tr>\n                          <td><a href=\"#\" class=\"text-primary fw-bold\">5</a> </td>\n                          <td class=\"fw-bold d-flex align-items-center\">\n                              <svg class=\"icon icon-xxs text-gray-500 me-2\" aria-hidden=\"true\" focusable=\"false\" data-prefix=\"fab\" data-icon=\"twitter\" role=\"img\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\"><path fill=\"currentColor\" d=\"M459.37 151.716c.325 4.548.325 9.097.325 13.645 0 138.72-105.583 298.558-298.558 298.558-59.452 0-114.68-17.219-161.137-47.106 8.447.974 16.568 1.299 25.34 1.299 49.055 0 94.213-16.568 130.274-44.832-46.132-.975-84.792-31.188-98.112-72.772 6.498.974 12.995 1.624 19.818 1.624 9.421 0 18.843-1.3 27.614-3.573-48.081-9.747-84.143-51.98-84.143-102.985v-1.299c13.969 7.797 30.214 12.67 47.431 13.319-28.264-18.843-46.781-51.005-46.781-87.391 0-19.492 5.197-37.36 14.294-52.954 51.655 63.675 129.3 105.258 216.365 109.807-1.624-7.797-2.599-15.918-2.599-24.04 0-57.828 46.782-104.934 104.934-104.934 30.213 0 57.502 12.67 76.67 33.137 23.715-4.548 46.456-13.32 66.599-25.34-7.798 24.366-24.366 44.833-46.132 57.827 21.117-2.273 41.584-8.122 60.426-16.243-14.292 20.791-32.161 39.308-52.628 54.253z\"></path></svg>\n                              twitter.com\n                          </td>\n                          <td>\n                              Social\n                          </td>\n                          <td>\n                              <a class=\"small fw-bold\" href=\"#\">Social Networks</a>\n                          </td>\n                          <td>\n                          #4\n                          </td>\n                          <td>\n                              <div class=\"row d-flex align-items-center\">\n                                  <div class=\"col-12 col-xl-2 px-0\">\n                                      <div class=\"small fw-bold\">4%</div>\n                                  </div>\n                                  <div class=\"col-12 col-xl-10 px-0 px-xl-1\">\n                                      <div class=\"progress progress-lg mb-0\">\n                                          <div class=\"progress-bar bg-dark\" role=\"progressbar\" aria-valuenow=\"4\" aria-valuemin=\"0\" aria-valuemax=\"100\" style=\"width: 4%;\"></div>\n                                      </div>\n                                  </div>\n                              </div>\n                          </td>\n                          <td>\n                              -                                \n                          </td>\n                      </tr>\n                      <!-- End of Item -->\n                  </tbody>\n              </table>\n          </div>\n      </div>\n  </div>\n\n  <div class=\"card border-0 shadow\">\n      <div class=\"card-body\">\n          <div class=\"table-responsive\">\n              <table class=\"table table-centered table-nowrap mb-0 rounded\">\n                  <thead class=\"thead-light\">\n                      <tr>\n                          <th class=\"border-0 rounded-start\">Country</th>\n                          <th class=\"border-0\">All</th>\n                          <th class=\"border-0\">All Change</th>\n                          <th class=\"border-0\">Travel & Local</th>\n                          <th class=\"border-0\">Travel & Local Change</th>\n                          <th class=\"border-0\">Widgets</th>\n                          <th class=\"border-0 rounded-end\">Widgets Change</th>\n                      </tr>\n                  </thead>\n                  <tbody>\n                      <!-- Item -->\n                      <tr>\n                          <td class=\"border-0\">                                             \n                              <a href=\"#\" class=\"d-flex align-items-center\">\n                                  <img class=\"me-2 image image-small rounded-circle\" alt=\"Image placeholder\" src=\"{{ url_for('static', filename='assets/img/flags/united-states-of-america.svg') }}\">\n                                  <div><span class=\"h6\">United States</span></div>\n                              </a>\n                          </td>\n                          <td class=\"border-0 fw-bold\">106</td>\n                          <td class=\"border-0 text-danger\">\n                              <div class=\"d-flex align-items-center\">\n                                  <svg class=\"icon icon-xs me-1\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M5.293 7.293a1 1 0 011.414 0L10 10.586l3.293-3.293a1 1 0 111.414 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414z\" clip-rule=\"evenodd\"></path></svg>\n                                  <span class=\"fw-bold\">5</span>\n                              </div> \n                          </td>\n                          <td class=\"border-0 fw-bold\">\n                              3 \n                          </td>\n                          <td class=\"border-0\">\n                              =\n                          </td>\n                          <td class=\"border-0 fw-bold\">\n                              32  \n                          </td>\n                          <td class=\"border-0 text-success\">\n                              <div class=\"d-flex align-items-center\">\n                                  <svg class=\"icon icon-xs me-1\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M14.707 12.707a1 1 0 01-1.414 0L10 9.414l-3.293 3.293a1 1 0 01-1.414-1.414l4-4a1 1 0 011.414 0l4 4a1 1 0 010 1.414z\" clip-rule=\"evenodd\"></path></svg>                                   \n                                  <span class=\"fw-bold\">3</span>\n                              </div>\n                          </td>\n                      </tr>\n                      <!-- End of Item -->\n\n                      <!-- Item -->\n                      <tr>\n                          <td class=\"border-0\">                                             \n                              <a href=\"#\" class=\"d-flex align-items-center\">\n                                  <img class=\"me-2 image image-small rounded-circle\" alt=\"Image placeholder\" src=\"{{ url_for('static', filename='assets/img/flags/canada.svg') }}\">\n                                  <div><span class=\"h6\">Canada</span></div>\n                              </a>\n                          </td>\n                          <td class=\"border-0 fw-bold\">76</td>\n                          <td class=\"border-0 text-success\">\n                              <div class=\"d-flex align-items-center\">\n                                  <svg class=\"icon icon-xs me-1\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M14.707 12.707a1 1 0 01-1.414 0L10 9.414l-3.293 3.293a1 1 0 01-1.414-1.414l4-4a1 1 0 011.414 0l4 4a1 1 0 010 1.414z\" clip-rule=\"evenodd\"></path></svg>                                   \n                                  <span class=\"fw-bold\">17</span>\n                              </div>\n                          </td>\n                          <td class=\"border-0 fw-bold\">\n                          4 \n                          </td>\n                          <td class=\"border-0\">\n                          =\n                          </td>\n                          <td class=\"border-0 fw-bold\">\n                          30  \n                          </td>\n                          <td class=\"border-0 text-success\">\n                              <div class=\"d-flex align-items-center\">\n                                  <svg class=\"icon icon-xs me-1\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M14.707 12.707a1 1 0 01-1.414 0L10 9.414l-3.293 3.293a1 1 0 01-1.414-1.414l4-4a1 1 0 011.414 0l4 4a1 1 0 010 1.414z\" clip-rule=\"evenodd\"></path></svg>                                   \n                                  <span class=\"fw-bold\">3</span>\n                              </div>\n                          </td>\n                      </tr>\n                      <!-- End of Item -->\n\n                      <!-- Item -->\n                      <tr>\n                          <td class=\"border-0\">                                             \n                              <a href=\"#\" class=\"d-flex align-items-center\">\n                                  <img class=\"me-2 image image-small rounded-circle\" alt=\"Image placeholder\" src=\"{{ url_for('static', filename='assets/img/flags/united-kingdom.svg') }}\">\n                                  <div><span class=\"h6\">United Kingdom</span></div>\n                              </a>\n                          </td>\n                          <td class=\"border-0 fw-bold\">147</td>\n                          <td class=\"border-0 text-success\">\n                              <div class=\"d-flex align-items-center\">\n                                  <svg class=\"icon icon-xs me-1\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M14.707 12.707a1 1 0 01-1.414 0L10 9.414l-3.293 3.293a1 1 0 01-1.414-1.414l4-4a1 1 0 011.414 0l4 4a1 1 0 010 1.414z\" clip-rule=\"evenodd\"></path></svg>                                   \n                                  <span class=\"fw-bold\">10</span>\n                              </div>\n                          </td>\n                          <td class=\"border-0 fw-bold\">\n                          5 \n                          </td>\n                          <td class=\"border-0\">\n                          =\n                          </td>\n                          <td class=\"border-0 fw-bold\">\n                          34  \n                          </td>\n                          <td class=\"border-0 text-success\">\n                              <div class=\"d-flex align-items-center\">\n                                  <svg class=\"icon icon-xs me-1\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M14.707 12.707a1 1 0 01-1.414 0L10 9.414l-3.293 3.293a1 1 0 01-1.414-1.414l4-4a1 1 0 011.414 0l4 4a1 1 0 010 1.414z\" clip-rule=\"evenodd\"></path></svg>                                   \n                                  <span class=\"fw-bold\">7</span>\n                              </div>\n                          </td>\n                      </tr>\n                      <!-- End of Item -->\n\n                      <!-- Item -->\n                      <tr>\n                          <td class=\"border-0\">                                             \n                              <a href=\"#\" class=\"d-flex align-items-center\">\n                                  <img class=\"me-2 image image-small rounded-circle\" alt=\"Image placeholder\" src=\"{{ url_for('static', filename='assets/img/flags/france.svg') }}\">\n                                  <div><span class=\"h6\">France</span></div>\n                              </a>\n                          </td>\n                          <td class=\"border-0 fw-bold\">112</td>\n                          <td class=\"border-0 text-success\">\n                              <div class=\"d-flex align-items-center\">\n                                  <svg class=\"icon icon-xs me-1\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M14.707 12.707a1 1 0 01-1.414 0L10 9.414l-3.293 3.293a1 1 0 01-1.414-1.414l4-4a1 1 0 011.414 0l4 4a1 1 0 010 1.414z\" clip-rule=\"evenodd\"></path></svg>                                   \n                                  <span class=\"fw-bold\">3</span>\n                              </div>\n                          </td>\n                          <td class=\"border-0 fw-bold\">\n                          5 \n                          </td>\n                          <td class=\"border-0 text-success\">\n                              <div class=\"d-flex align-items-center\">\n                                  <svg class=\"icon icon-xs me-1\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M14.707 12.707a1 1 0 01-1.414 0L10 9.414l-3.293 3.293a1 1 0 01-1.414-1.414l4-4a1 1 0 011.414 0l4 4a1 1 0 010 1.414z\" clip-rule=\"evenodd\"></path></svg>                                   \n                                  <span class=\"fw-bold\">1</span>\n                              </div>\n                          </td>\n                          <td class=\"border-0 fw-bold\">\n                          34  \n                          </td>\n                          <td class=\"border-0 text-danger\">\n                              <div class=\"d-flex align-items-center\">\n                                  <svg class=\"icon icon-xs me-1\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M5.293 7.293a1 1 0 011.414 0L10 10.586l3.293-3.293a1 1 0 111.414 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414z\" clip-rule=\"evenodd\"></path></svg>\n                                  <span class=\"fw-bold\">2</span>\n                              </div> \n                          </td>\n                      </tr>\n                      <!-- End of Item -->\n\n                      <!-- Item -->\n                      <tr>\n                          <td class=\"border-0\">                                             \n                              <a href=\"#\" class=\"d-flex align-items-center\">\n                                  <img class=\"me-2 image image-small rounded-circle\" alt=\"Image placeholder\" src=\"{{ url_for('static', filename='assets/img/flags/japan.svg') }}\">\n                                  <div><span class=\"h6\">Japan</span></div>\n                              </a>\n                          </td>\n                          <td class=\"border-0 fw-bold\">115</td>\n                          <td class=\"border-0 text-danger\">\n                              <div class=\"d-flex align-items-center\">\n                                  <svg class=\"icon icon-xs me-1\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M5.293 7.293a1 1 0 011.414 0L10 10.586l3.293-3.293a1 1 0 111.414 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414z\" clip-rule=\"evenodd\"></path></svg>\n                                  <span class=\"fw-bold\">12</span>\n                              </div> \n                          </td>\n                          <td class=\"border-0 fw-bold\">\n                          6 \n                          </td>\n                          <td class=\"border-0 text-danger\">\n                              <div class=\"d-flex align-items-center\">\n                                  <svg class=\"icon icon-xs me-1\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M5.293 7.293a1 1 0 011.414 0L10 10.586l3.293-3.293a1 1 0 111.414 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414z\" clip-rule=\"evenodd\"></path></svg>\n                                  <span class=\"fw-bold\">1</span>\n                              </div> \n                          </td>\n                          <td class=\"border-0 fw-bold\">\n                          37  \n                          </td>\n                          <td class=\"border-0 text-danger\">\n                              <div class=\"d-flex align-items-center\">\n                                  <svg class=\"icon icon-xs me-1\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M5.293 7.293a1 1 0 011.414 0L10 10.586l3.293-3.293a1 1 0 111.414 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414z\" clip-rule=\"evenodd\"></path></svg>\n                                  <span class=\"fw-bold\">5</span>\n                              </div> \n                          </td>\n                      </tr>\n                      <!-- End of Item -->\n\n                      <!-- Item -->\n                      <tr>\n                          <td class=\"border-0\">                                             \n                              <a href=\"#\" class=\"d-flex align-items-center\">\n                                  <img class=\"me-2 image image-small rounded-circle\" alt=\"Image placeholder\" src=\"{{ url_for('static', filename='assets/img/flags/germany.svg') }}\">\n                                  <div><span class=\"h6\">Germany</span></div>\n                              </a>\n                          </td>\n                          <td class=\"border-0 fw-bold\">220</td>\n                          <td class=\"border-0 text-danger\">\n                              <div class=\"d-flex align-items-center\">\n                                  <svg class=\"icon icon-xs me-1\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M5.293 7.293a1 1 0 011.414 0L10 10.586l3.293-3.293a1 1 0 111.414 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414z\" clip-rule=\"evenodd\"></path></svg>\n                                  <span class=\"fw-bold\">56</span>\n                              </div> \n                          </td>\n                          <td class=\"border-0 fw-bold\">\n                              7 \n                          </td>\n                          <td class=\"border-0 text-danger\">\n                              <div class=\"d-flex align-items-center\">\n                                  <svg class=\"icon icon-xs me-1\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M5.293 7.293a1 1 0 011.414 0L10 10.586l3.293-3.293a1 1 0 111.414 1.414l-4 4a1 1 0 01-1.414 0l-4-4a1 1 0 010-1.414z\" clip-rule=\"evenodd\"></path></svg>\n                                  <span class=\"fw-bold\">3</span>\n                              </div> \n                          </td>\n                          <td class=\"border-0 fw-bold\">\n                              30  \n                          </td>\n                          <td class=\"border-0 text-success\">\n                              <div class=\"d-flex align-items-center\">\n                                  <svg class=\"icon icon-xs me-1\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M14.707 12.707a1 1 0 01-1.414 0L10 9.414l-3.293 3.293a1 1 0 01-1.414-1.414l4-4a1 1 0 011.414 0l4 4a1 1 0 010 1.414z\" clip-rule=\"evenodd\"></path></svg>                                   \n                                  <span class=\"fw-bold\">2</span>\n                              </div>\n                          </td>\n                      </tr>\n                      <!-- End of Item -->\n                  </tbody>\n              </table>\n          </div>\n      </div>\n  </div>\n\n{% endblock content %}\n\n<!-- Specific Page JS goes HERE  -->\n{% block javascripts %}{% endblock javascripts %}\n"
  },
  {
    "path": "templates/home/transactions.html",
    "content": "{% extends \"layouts/base.html\" %}\n\n{% block title %} Transactions {% endblock %} \n\n<!-- Specific Page CSS goes HERE  -->\n{% block stylesheets %}{% endblock stylesheets %}\n\n{% block content %}\n\n\n  <div class=\"d-flex justify-content-between flex-wrap flex-md-nowrap align-items-center py-4\">\n      <div class=\"d-block mb-4 mb-md-0\">\n          <nav aria-label=\"breadcrumb\" class=\"d-none d-md-inline-block\">\n              <ol class=\"breadcrumb breadcrumb-dark breadcrumb-transparent\">\n                  <li class=\"breadcrumb-item\">\n                      <a href=\"#\">\n                          <svg class=\"icon icon-xxs\" fill=\"none\" stroke=\"currentColor\" viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M3 12l2-2m0 0l7-7 7 7M5 10v10a1 1 0 001 1h3m10-11l2 2m-2-2v10a1 1 0 01-1 1h-3m-6 0a1 1 0 001-1v-4a1 1 0 011-1h2a1 1 0 011 1v4a1 1 0 001 1m-6 0h6\"></path></svg>\n                      </a>\n                  </li>\n                  <li class=\"breadcrumb-item\"><a href=\"#\">Volt</a></li>\n                  <li class=\"breadcrumb-item active\" aria-current=\"page\">Transactions</li>\n              </ol>\n          </nav>\n          <h2 class=\"h4\">All Orders</h2>\n          <p class=\"mb-0\">Your web analytics dashboard template.</p>\n      </div>\n      <div class=\"btn-toolbar mb-2 mb-md-0\">\n          <a href=\"#\" class=\"btn btn-sm btn-gray-800 d-inline-flex align-items-center\">\n              <svg class=\"icon icon-xs me-2\" fill=\"none\" stroke=\"currentColor\" viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M12 6v6m0 0v6m0-6h6m-6 0H6\"></path></svg>\n              New Plan\n          </a>\n          <div class=\"btn-group ms-2 ms-lg-3\">\n              <button type=\"button\" class=\"btn btn-sm btn-outline-gray-600\">Share</button>\n              <button type=\"button\" class=\"btn btn-sm btn-outline-gray-600\">Export</button>\n          </div>\n      </div>\n  </div>\n  \n  <div class=\"table-settings mb-4\">\n      <div class=\"row align-items-center justify-content-between\">\n          <div class=\"col col-md-6 col-lg-3 col-xl-4\">\n              <div class=\"input-group me-2 me-lg-3 fmxw-400\">\n                  <span class=\"input-group-text\">\n                      <svg class=\"icon icon-xs\" x-description=\"Heroicon name: solid/search\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 20 20\" fill=\"currentColor\" aria-hidden=\"true\">\n                          <path fill-rule=\"evenodd\" d=\"M8 4a4 4 0 100 8 4 4 0 000-8zM2 8a6 6 0 1110.89 3.476l4.817 4.817a1 1 0 01-1.414 1.414l-4.816-4.816A6 6 0 012 8z\" clip-rule=\"evenodd\"></path>\n                      </svg>\n                  </span>\n                  <input type=\"text\" class=\"form-control\" placeholder=\"Search orders\">\n              </div>\n          </div>\n          <div class=\"col-4 col-md-2 col-xl-1 ps-md-0 text-end\">\n              <div class=\"dropdown\">\n                  <button class=\"btn btn-link text-dark dropdown-toggle dropdown-toggle-split m-0 p-1\" data-bs-toggle=\"dropdown\" aria-haspopup=\"true\" aria-expanded=\"false\">\n                      <svg class=\"icon icon-sm\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M11.49 3.17c-.38-1.56-2.6-1.56-2.98 0a1.532 1.532 0 01-2.286.948c-1.372-.836-2.942.734-2.106 2.106.54.886.061 2.042-.947 2.287-1.561.379-1.561 2.6 0 2.978a1.532 1.532 0 01.947 2.287c-.836 1.372.734 2.942 2.106 2.106a1.532 1.532 0 012.287.947c.379 1.561 2.6 1.561 2.978 0a1.533 1.533 0 012.287-.947c1.372.836 2.942-.734 2.106-2.106a1.533 1.533 0 01.947-2.287c1.561-.379 1.561-2.6 0-2.978a1.532 1.532 0 01-.947-2.287c.836-1.372-.734-2.942-2.106-2.106a1.532 1.532 0 01-2.287-.947zM10 13a3 3 0 100-6 3 3 0 000 6z\" clip-rule=\"evenodd\"></path></svg>\n                      <span class=\"visually-hidden\">Toggle Dropdown</span>\n                  </button>\n                  <div class=\"dropdown-menu dropdown-menu-xs dropdown-menu-end pb-0\">\n                      <span class=\"small ps-3 fw-bold text-dark\">Show</span>\n                      <a class=\"dropdown-item d-flex align-items-center fw-bold\" href=\"#\">10 <svg class=\"icon icon-xxs ms-auto\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M16.707 5.293a1 1 0 010 1.414l-8 8a1 1 0 01-1.414 0l-4-4a1 1 0 011.414-1.414L8 12.586l7.293-7.293a1 1 0 011.414 0z\" clip-rule=\"evenodd\"></path></svg></a>\n                      <a class=\"dropdown-item fw-bold\" href=\"#\">20</a>\n                      <a class=\"dropdown-item fw-bold rounded-bottom\" href=\"#\">30</a>\n                  </div>\n              </div>\n          </div>\n      </div>\n  </div>\n  \n  <div class=\"card card-body border-0 shadow table-wrapper table-responsive\">\n      <table class=\"table table-hover\">\n          <thead>\n              <tr>\n                  <th class=\"border-gray-200\">#</th>\n                  <th class=\"border-gray-200\">Bill For</th>\t\t\t\t\t\t\n                  <th class=\"border-gray-200\">Issue Date</th>\n                  <th class=\"border-gray-200\">Due Date</th>\n                  <th class=\"border-gray-200\">Total</th>\n                  <th class=\"border-gray-200\">Status</th>\n                  <th class=\"border-gray-200\">Action</th>\n              </tr>\n          </thead>\n          <tbody>\n              <!-- Item -->\n              <tr>\n                  <td>\n                      <a href=\"#\" class=\"fw-bold\">\n                          456478\n                      </a>\n                  </td>\n                  <td>\n                      <span class=\"fw-normal\">Platinum Subscription Plan</span>\n                  </td>\n                  <td><span class=\"fw-normal\">1 May 2020</span></td>                        \n                  <td><span class=\"fw-normal\">1 Jun 2020</span></td>\n                  <td><span class=\"fw-bold\">$799,00</span></td>\n                  <td><span class=\"fw-bold text-warning\">Due</span></td>\n                  <td>\n                      <div class=\"btn-group\">\n                          <button class=\"btn btn-link text-dark dropdown-toggle dropdown-toggle-split m-0 p-0\" data-bs-toggle=\"dropdown\" aria-haspopup=\"true\" aria-expanded=\"false\">\n                              <span class=\"icon icon-sm\">\n                                  <span class=\"fas fa-ellipsis-h icon-dark\"></span>\n                              </span>\n                              <span class=\"visually-hidden\">Toggle Dropdown</span>\n                          </button>\n                          <div class=\"dropdown-menu py-0\">\n                              <a class=\"dropdown-item rounded-top\" href=\"#\"><span class=\"fas fa-eye me-2\"></span>View Details</a>\n                              <a class=\"dropdown-item\" href=\"#\"><span class=\"fas fa-edit me-2\"></span>Edit</a>\n                              <a class=\"dropdown-item text-danger rounded-bottom\" href=\"#\"><span class=\"fas fa-trash-alt me-2\"></span>Remove</a>\n                          </div>\n                      </div>\n                  </td>\n              </tr>\n              <!-- Item -->\n              <tr>\n                  <td>\n                      <a href=\"#\" class=\"fw-bold\">\n                          456423\n                      </a>\n                  </td>\n                  <td>\n                      <span class=\"fw-normal\">Platinum Subscription Plan</span>\n                  </td>\n                  <td><span class=\"fw-normal\">1 Apr 2020</span></td>                        \n                  <td><span class=\"fw-normal\">1 May 2020</span></td>\n                  <td><span class=\"fw-bold\">$799,00</span></td>\n                  <td><span class=\"fw-bold text-success\">Paid</span></td>\n                  <td>\n                      <div class=\"btn-group\">\n                          <button class=\"btn btn-link text-dark dropdown-toggle dropdown-toggle-split m-0 p-0\" data-bs-toggle=\"dropdown\" aria-haspopup=\"true\" aria-expanded=\"false\">\n                              <span class=\"icon icon-sm\">\n                                  <span class=\"fas fa-ellipsis-h icon-dark\"></span>\n                              </span>\n                              <span class=\"visually-hidden\">Toggle Dropdown</span>\n                          </button>\n                          <div class=\"dropdown-menu py-0\">\n                              <a class=\"dropdown-item rounded-top\" href=\"#\"><span class=\"fas fa-eye me-2\"></span>View Details</a>\n                              <a class=\"dropdown-item\" href=\"#\"><span class=\"fas fa-edit me-2\"></span>Edit</a>\n                              <a class=\"dropdown-item text-danger rounded-bottom\" href=\"#\"><span class=\"fas fa-trash-alt me-2\"></span>Remove</a>\n                          </div>\n                      </div>\n                  </td>\n              </tr> \n              <!-- Item -->\n              <tr>\n                  <td>\n                      <a href=\"#\" class=\"fw-bold\">\n                          456420\n                      </a>\n                  </td>\n                  <td>\n                      <span class=\"fw-normal\">Platinum Subscription Plan</span>\n                  </td>\n                  <td><span class=\"fw-normal\">1 Mar 2020</span></td>                        \n                  <td><span class=\"fw-normal\">1 Apr 2020</span></td>\n                  <td><span class=\"fw-bold\">$799,00</span></td>\n                  <td><span class=\"fw-bold text-success\">Paid</span></td>\n                  <td>\n                      <div class=\"btn-group\">\n                          <button class=\"btn btn-link text-dark dropdown-toggle dropdown-toggle-split m-0 p-0\" data-bs-toggle=\"dropdown\" aria-haspopup=\"true\" aria-expanded=\"false\">\n                              <span class=\"icon icon-sm\">\n                                  <span class=\"fas fa-ellipsis-h icon-dark\"></span>\n                              </span>\n                              <span class=\"visually-hidden\">Toggle Dropdown</span>\n                          </button>\n                          <div class=\"dropdown-menu py-0\">\n                              <a class=\"dropdown-item rounded-top\" href=\"#\"><span class=\"fas fa-eye me-2\"></span>View Details</a>\n                              <a class=\"dropdown-item\" href=\"#\"><span class=\"fas fa-edit me-2\"></span>Edit</a>\n                              <a class=\"dropdown-item text-danger rounded-bottom\" href=\"#\"><span class=\"fas fa-trash-alt me-2\"></span>Remove</a>\n                          </div>\n                      </div>\n                  </td>\n              </tr> \n              <!-- Item -->\n              <tr>\n                  <td>\n                      <a href=\"#\" class=\"fw-bold\">\n                          456421\n                      </a>\n                  </td>\n                  <td>\n                      <span class=\"fw-normal\">Platinum Subscription Plan</span>\n                  </td>\n                  <td><span class=\"fw-normal\">1 Feb 2020</span></td>                        \n                  <td><span class=\"fw-normal\">1 Mar 2020</span></td>\n                  <td><span class=\"fw-bold\">$799,00</span></td>\n                  <td><span class=\"fw-bold text-success\">Paid</span></td>\n                  <td>\n                      <div class=\"btn-group\">\n                          <button class=\"btn btn-link text-dark dropdown-toggle dropdown-toggle-split m-0 p-0\" data-bs-toggle=\"dropdown\" aria-haspopup=\"true\" aria-expanded=\"false\">\n                              <span class=\"icon icon-sm\">\n                                  <span class=\"fas fa-ellipsis-h icon-dark\"></span>\n                              </span>\n                              <span class=\"visually-hidden\">Toggle Dropdown</span>\n                          </button>\n                          <div class=\"dropdown-menu py-0\">\n                              <a class=\"dropdown-item rounded-top\" href=\"#\"><span class=\"fas fa-eye me-2\"></span>View Details</a>\n                              <a class=\"dropdown-item\" href=\"#\"><span class=\"fas fa-edit me-2\"></span>Edit</a>\n                              <a class=\"dropdown-item text-danger rounded-bottom\" href=\"#\"><span class=\"fas fa-trash-alt me-2\"></span>Remove</a>\n                          </div>\n                      </div>\n                  </td>\n              </tr> \n              <!-- Item -->\n              <tr>\n                  <td>\n                      <a href=\"#\" class=\"fw-bold\">\n                          456420\n                      </a>\n                  </td>\n                  <td>\n                      <span class=\"fw-normal\">Platinum Subscription Plan</span>\n                  </td>\n                  <td><span class=\"fw-normal\">1 Jan 2020</span></td>                        \n                  <td><span class=\"fw-normal\">1 Feb 2020</span></td>\n                  <td><span class=\"fw-bold\">$799,00</span></td>\n                  <td><span class=\"fw-bold text-success\">Paid</span></td>\n                  <td>\n                      <div class=\"btn-group\">\n                          <button class=\"btn btn-link text-dark dropdown-toggle dropdown-toggle-split m-0 p-0\" data-bs-toggle=\"dropdown\" aria-haspopup=\"true\" aria-expanded=\"false\">\n                              <span class=\"icon icon-sm\">\n                                  <span class=\"fas fa-ellipsis-h icon-dark\"></span>\n                              </span>\n                              <span class=\"visually-hidden\">Toggle Dropdown</span>\n                          </button>\n                          <div class=\"dropdown-menu py-0\">\n                              <a class=\"dropdown-item rounded-top\" href=\"#\"><span class=\"fas fa-eye me-2\"></span>View Details</a>\n                              <a class=\"dropdown-item\" href=\"#\"><span class=\"fas fa-edit me-2\"></span>Edit</a>\n                              <a class=\"dropdown-item text-danger rounded-bottom\" href=\"#\"><span class=\"fas fa-trash-alt me-2\"></span>Remove</a>\n                          </div>\n                      </div>\n                  </td>\n              </tr> \n              <!-- Item -->\n              <tr>\n                  <td>\n                      <a href=\"#\" class=\"fw-bold\">\n                          456479\n                      </a>\n                  </td>\n                  <td>\n                      <span class=\"fw-normal\">Platinum Subscription Plan</span>\n                  </td>\n                  <td><span class=\"fw-normal\">1 Dec 2019</span></td>                        \n                  <td><span class=\"fw-normal\">1 Jan 2020</span></td>\n                  <td><span class=\"fw-bold\">$799,00</span></td>\n                  <td><span class=\"fw-bold text-success\">Paid</span></td>\n                  <td>\n                      <div class=\"btn-group\">\n                          <button class=\"btn btn-link text-dark dropdown-toggle dropdown-toggle-split m-0 p-0\" data-bs-toggle=\"dropdown\" aria-haspopup=\"true\" aria-expanded=\"false\">\n                              <span class=\"icon icon-sm\">\n                                  <span class=\"fas fa-ellipsis-h icon-dark\"></span>\n                              </span>\n                              <span class=\"visually-hidden\">Toggle Dropdown</span>\n                          </button>\n                          <div class=\"dropdown-menu py-0\">\n                              <a class=\"dropdown-item rounded-top\" href=\"#\"><span class=\"fas fa-eye me-2\"></span>View Details</a>\n                              <a class=\"dropdown-item\" href=\"#\"><span class=\"fas fa-edit me-2\"></span>Edit</a>\n                              <a class=\"dropdown-item text-danger rounded-bottom\" href=\"#\"><span class=\"fas fa-trash-alt me-2\"></span>Remove</a>\n                          </div>\n                      </div>\n                  </td>\n              </tr> \n              <!-- Item -->\n              <!-- Item -->\n              <tr>\n                  <td>\n                      <a href=\"#\" class=\"fw-bold\">\n                          456478\n                      </a>\n                  </td>\n                  <td>\n                      <span class=\"fw-normal\">Platinum Subscription Plan</span>\n                  </td>\n                  <td><span class=\"fw-normal\">1 Nov 2019</span></td>                        \n                  <td><span class=\"fw-normal\">1 Dec 2019</span></td>\n                  <td><span class=\"fw-bold\">$799,00</span></td>\n                  <td><span class=\"fw-bold text-success\">Paid</span></td>\n                  <td>\n                      <div class=\"btn-group\">\n                          <button class=\"btn btn-link text-dark dropdown-toggle dropdown-toggle-split m-0 p-0\" data-bs-toggle=\"dropdown\" aria-haspopup=\"true\" aria-expanded=\"false\">\n                              <span class=\"icon icon-sm\">\n                                  <span class=\"fas fa-ellipsis-h icon-dark\"></span>\n                              </span>\n                              <span class=\"visually-hidden\">Toggle Dropdown</span>\n                          </button>\n                          <div class=\"dropdown-menu py-0\">\n                              <a class=\"dropdown-item rounded-top\" href=\"#\"><span class=\"fas fa-eye me-2\"></span>View Details</a>\n                              <a class=\"dropdown-item\" href=\"#\"><span class=\"fas fa-edit me-2\"></span>Edit</a>\n                              <a class=\"dropdown-item text-danger rounded-bottom\" href=\"#\"><span class=\"fas fa-trash-alt me-2\"></span>Remove</a>\n                          </div>\n                      </div>\n                  </td>\n              </tr> \n              <!-- Item -->\n              <tr>\n                  <td>\n                      <a href=\"#\" class=\"fw-bold\">\n                          453673\n                      </a>\n                  </td>\n                  <td>\n                      <span class=\"fw-normal\">Gold Subscription Plan</span>\n                  </td>\n                  <td><span class=\"fw-normal\">1 Oct 2019</span></td>                        \n                  <td><span class=\"fw-normal\">1 Nov 2019</span></td>\n                  <td><span class=\"fw-bold\">$533,42</span></td>\n                  <td><span class=\"fw-bold text-danger\">Cancelled</span></td>\n                  <td>\n                      <div class=\"btn-group\">\n                          <button class=\"btn btn-link text-dark dropdown-toggle dropdown-toggle-split m-0 p-0\" data-bs-toggle=\"dropdown\" aria-haspopup=\"true\" aria-expanded=\"false\">\n                              <span class=\"icon icon-sm\">\n                                  <span class=\"fas fa-ellipsis-h icon-dark\"></span>\n                              </span>\n                              <span class=\"visually-hidden\">Toggle Dropdown</span>\n                          </button>\n                          <div class=\"dropdown-menu py-0\">\n                              <a class=\"dropdown-item rounded-top\" href=\"#\"><span class=\"fas fa-eye me-2\"></span>View Details</a>\n                              <a class=\"dropdown-item\" href=\"#\"><span class=\"fas fa-edit me-2\"></span>Edit</a>\n                              <a class=\"dropdown-item text-danger rounded-bottom\" href=\"#\"><span class=\"fas fa-trash-alt me-2\"></span>Remove</a>\n                          </div>\n                      </div>\n                  </td>\n              </tr>\n              <!-- Item -->\n              <tr>\n                  <td>\n                      <a href=\"#\" class=\"fw-bold\">\n                          456468\n                      </a>\n                  </td>\n                  <td>\n                      <span class=\"fw-normal\">Gold Subscription Plan</span>\n                  </td>\n                  <td><span class=\"fw-normal\">1 Sep 2019</span></td>                        \n                  <td><span class=\"fw-normal\">1 Oct 2019</span></td>\n                  <td><span class=\"fw-bold\">$533,42</span></td>\n                  <td><span class=\"fw-bold text-success\">Paid</span></td>\n                  <td>\n                      <div class=\"btn-group\">\n                          <button class=\"btn btn-link text-dark dropdown-toggle dropdown-toggle-split m-0 p-0\" data-bs-toggle=\"dropdown\" aria-haspopup=\"true\" aria-expanded=\"false\">\n                              <span class=\"icon icon-sm\">\n                                  <span class=\"fas fa-ellipsis-h icon-dark\"></span>\n                              </span>\n                              <span class=\"visually-hidden\">Toggle Dropdown</span>\n                          </button>\n                          <div class=\"dropdown-menu py-0\">\n                              <a class=\"dropdown-item rounded-top\" href=\"#\"><span class=\"fas fa-eye me-2\"></span>View Details</a>\n                              <a class=\"dropdown-item\" href=\"#\"><span class=\"fas fa-edit me-2\"></span>Edit</a>\n                              <a class=\"dropdown-item text-danger rounded-bottom\" href=\"#\"><span class=\"fas fa-trash-alt me-2\"></span>Remove</a>\n                          </div>\n                      </div>\n                  </td>\n              </tr>    \n              <!-- Item -->\n              <tr>\n                  <td>\n                      <a href=\"#\" class=\"fw-bold\">\n                          456478\n                      </a>\n                  </td>\n                  <td>\n                      <span class=\"fw-normal\">Flexible Subscription Plan</span>\n                  </td>\n                  <td><span class=\"fw-normal\">1 Aug 2019</span></td>                        \n                  <td><span class=\"fw-normal\">1 Sep 2019</span></td>\n                  <td><span class=\"fw-bold\">$233,42</span></td>\n                  <td><span class=\"fw-bold text-success\">Paid</span></td>\n                  <td>\n                      <div class=\"btn-group\">\n                          <button class=\"btn btn-link text-dark dropdown-toggle dropdown-toggle-split m-0 p-0\" data-bs-toggle=\"dropdown\" aria-haspopup=\"true\" aria-expanded=\"false\">\n                              <span class=\"icon icon-sm\">\n                                  <span class=\"fas fa-ellipsis-h icon-dark\"></span>\n                              </span>\n                              <span class=\"visually-hidden\">Toggle Dropdown</span>\n                          </button>\n                          <div class=\"dropdown-menu py-0\">\n                              <a class=\"dropdown-item rounded-top\" href=\"#\"><span class=\"fas fa-eye me-2\"></span>View Details</a>\n                              <a class=\"dropdown-item\" href=\"#\"><span class=\"fas fa-edit me-2\"></span>Edit</a>\n                              <a class=\"dropdown-item text-danger rounded-bottom\" href=\"#\"><span class=\"fas fa-trash-alt me-2\"></span>Remove</a>\n                          </div>\n                      </div>\n                  </td>\n              </tr>                                \n          </tbody>\n      </table>\n      <div class=\"card-footer px-3 border-0 d-flex flex-column flex-lg-row align-items-center justify-content-between\">\n          <nav aria-label=\"Page navigation example\">\n              <ul class=\"pagination mb-0\">\n                  <li class=\"page-item\">\n                      <a class=\"page-link\" href=\"#\">Previous</a>\n                  </li>\n                  <li class=\"page-item\">\n                      <a class=\"page-link\" href=\"#\">1</a>\n                  </li>\n                  <li class=\"page-item active\">\n                      <a class=\"page-link\" href=\"#\">2</a>\n                  </li>\n                  <li class=\"page-item\">\n                      <a class=\"page-link\" href=\"#\">3</a>\n                  </li>\n                  <li class=\"page-item\">\n                      <a class=\"page-link\" href=\"#\">4</a>\n                  </li>\n                  <li class=\"page-item\">\n                      <a class=\"page-link\" href=\"#\">5</a>\n                  </li>\n                  <li class=\"page-item\">\n                      <a class=\"page-link\" href=\"#\">Next</a>\n                  </li>\n              </ul>\n          </nav>\n          <div class=\"fw-normal small mt-4 mt-lg-0\">Showing <b>5</b> out of <b>25</b> entries</div>\n      </div>\n  </div>\n\n{% endblock content %}\n\n<!-- Specific Page JS goes HERE  -->\n{% block javascripts %}{% endblock javascripts %}\n"
  },
  {
    "path": "templates/includes/footer.html",
    "content": "<footer class=\"bg-white rounded shadow p-5 mb-4 mt-4\">\n    <div class=\"row\">\n        <div class=\"col-12 col-md-4 col-xl-6 mb-4 mb-md-0\">\n            <p class=\"mb-0 text-center text-lg-start\">\n                &copy; <a class=\"text-primary fw-normal\" href=\"https://themesberg.com\" target=\"_blank\">Themesberg</a>\n                - CI/CD Flow Works\n            </p>\n        </div>\n        <div class=\"col-12 col-md-8 col-xl-6 text-center text-lg-start\">\n            <!-- List -->\n            <ul class=\"list-inline list-group-flush list-group-borderless text-md-end mb-0\">\n                <li class=\"list-inline-item px-0 px-sm-2\">\n                    <a target=\"_blank\" \n                       href=\"https://appseed.us/product/volt-dashboard/flask/\">Flask Volt Dashboard</a>\n                </li>\n            </ul>\n        </div>\n    </div>\n</footer>\n"
  },
  {
    "path": "templates/includes/items-table.html",
    "content": "\n<div class=\"dt-responsive table-responsive\">\n    <table class=\"table\">\n        <thead>\n          <tr>\n            {% for field in db_field_names %}\n                <th id=\"th_{{ field }}_export\" scope=\"col\">{{ field }}</th>\n            {% endfor %}\n          </tr>\n        </thead>\n        <tbody>\n            {% for item in items %}\n            <tr>\n                {% for field_name in db_field_names %}\n                    {% if field_name in choices_dict %}\n                    <td class=\"td_{{ field_name }}\">{{ item|getenumattribute(field_name) }}</td>\n                    {% else %}\n                    <td class=\"td_{{ field_name }}\">{{ item|getattribute(field_name) }}</td>\n                    {% endif %}\n                {% endfor %}\n            </tr>\n             {% endfor %}\n        </tbody>\n    </table>\n</div>"
  },
  {
    "path": "templates/includes/navigation.html",
    "content": "<nav class=\"navbar navbar-top navbar-expand navbar-dashboard navbar-dark ps-0 pe-2 pb-0\">\n              <div class=\"container-fluid px-0\">\n                <div class=\"d-flex justify-content-between w-100\" id=\"navbarSupportedContent\">\n                  <div class=\"d-flex align-items-center\">\n                    <!-- Search form -->\n                    <form class=\"navbar-search form-inline\" id=\"navbar-search-main\">\n                      <div class=\"input-group input-group-merge search-bar\">\n                          <span class=\"input-group-text\" id=\"topbar-addon\">\n                            <svg class=\"icon icon-xs\" x-description=\"Heroicon name: solid/search\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 20 20\" fill=\"currentColor\" aria-hidden=\"true\">\n                              <path fill-rule=\"evenodd\" d=\"M8 4a4 4 0 100 8 4 4 0 000-8zM2 8a6 6 0 1110.89 3.476l4.817 4.817a1 1 0 01-1.414 1.414l-4.816-4.816A6 6 0 012 8z\" clip-rule=\"evenodd\"></path>\n                            </svg>\n                          </span>\n                          <input type=\"text\" class=\"form-control\" id=\"topbarInputIconLeft\" placeholder=\"Search\" aria-label=\"Search\" aria-describedby=\"topbar-addon\">\n                      </div>\n                    </form>\n                    <!-- / Search form -->\n                  </div>\n                  <!-- Navbar links -->\n                  <ul class=\"navbar-nav align-items-center\">\n                    <li class=\"nav-item dropdown\">\n                      <a class=\"nav-link text-dark notification-bell unread dropdown-toggle\" data-unread-notifications=\"true\" href=\"#\" role=\"button\" data-bs-toggle=\"dropdown\" data-bs-display=\"static\" aria-expanded=\"false\">\n                        <svg class=\"icon icon-sm text-gray-900\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M10 2a6 6 0 00-6 6v3.586l-.707.707A1 1 0 004 14h12a1 1 0 00.707-1.707L16 11.586V8a6 6 0 00-6-6zM10 18a3 3 0 01-3-3h6a3 3 0 01-3 3z\"></path></svg>\n                      </a>\n                      <div class=\"dropdown-menu dropdown-menu-lg dropdown-menu-center mt-2 py-0\">\n                        <div class=\"list-group list-group-flush\">\n                          <a href=\"#\" class=\"text-center text-primary fw-bold border-bottom border-light py-3\">Notifications</a>\n                          <a href=\"#\" class=\"list-group-item list-group-item-action border-bottom\">\n                            <div class=\"row align-items-center\">\n                                <div class=\"col-auto\">\n                                  <!-- Avatar -->\n                                  <img alt=\"Image placeholder\" src=\"{{ url_for('static', filename='assets/img/team/profile-picture-1.jpg') }}\" class=\"avatar-md rounded\">\n                                </div>\n                                <div class=\"col ps-0 ms-2\">\n                                  <div class=\"d-flex justify-content-between align-items-center\">\n                                      <div>\n                                        <h4 class=\"h6 mb-0 text-small\">Jose Leos</h4>\n                                      </div>\n                                      <div class=\"text-end\">\n                                        <small class=\"text-danger\">a few moments ago</small>\n                                      </div>\n                                  </div>\n                                  <p class=\"font-small mt-1 mb-0\">Added you to an event \"Project stand-up\" tomorrow at 12:30 AM.</p>\n                                </div>\n                            </div>\n                          </a>\n                          <a href=\"#\" class=\"list-group-item list-group-item-action border-bottom\">\n                            <div class=\"row align-items-center\">\n                                <div class=\"col-auto\">\n                                  <!-- Avatar -->\n                                  <img alt=\"Image placeholder\" src=\"{{ url_for('static', filename='assets/img/team/profile-picture-2.jpg') }}\" class=\"avatar-md rounded\">\n                                </div>\n                                <div class=\"col ps-0 ms-2\">\n                                  <div class=\"d-flex justify-content-between align-items-center\">\n                                      <div>\n                                        <h4 class=\"h6 mb-0 text-small\">Neil Sims</h4>\n                                      </div>\n                                      <div class=\"text-end\">\n                                        <small class=\"text-danger\">2 hrs ago</small>\n                                      </div>\n                                  </div>\n                                  <p class=\"font-small mt-1 mb-0\">You've been assigned a task for \"Awesome new project\".</p>\n                                </div>\n                            </div>\n                          </a>\n                          <a href=\"#\" class=\"list-group-item list-group-item-action border-bottom\">\n                            <div class=\"row align-items-center\">\n                                <div class=\"col-auto\">\n                                  <!-- Avatar -->\n                                  <img alt=\"Image placeholder\" src=\"{{ url_for('static', filename='assets/img/team/profile-picture-3.jpg') }}\" class=\"avatar-md rounded\">\n                                </div>\n                                <div class=\"col ps-0 m-2\">\n                                  <div class=\"d-flex justify-content-between align-items-center\">\n                                      <div>\n                                        <h4 class=\"h6 mb-0 text-small\">Roberta Casas</h4>\n                                      </div>\n                                      <div class=\"text-end\">\n                                        <small>5 hrs ago</small>\n                                      </div>\n                                  </div>\n                                  <p class=\"font-small mt-1 mb-0\">Tagged you in a document called \"Financial plans\",</p>\n                                </div>\n                            </div>\n                          </a>\n                          <a href=\"#\" class=\"list-group-item list-group-item-action border-bottom\">\n                            <div class=\"row align-items-center\">\n                                <div class=\"col-auto\">\n                                  <!-- Avatar -->\n                                  <img alt=\"Image placeholder\" src=\"{{ url_for('static', filename='assets/img/team/profile-picture-4.jpg') }}\" class=\"avatar-md rounded\">\n                                </div>\n                                <div class=\"col ps-0 ms-2\">\n                                  <div class=\"d-flex justify-content-between align-items-center\">\n                                      <div>\n                                        <h4 class=\"h6 mb-0 text-small\">Joseph Garth</h4>\n                                      </div>\n                                      <div class=\"text-end\">\n                                        <small>1 d ago</small>\n                                      </div>\n                                  </div>\n                                  <p class=\"font-small mt-1 mb-0\">New message: \"Hey, what's up? All set for the presentation?\"</p>\n                                </div>\n                            </div>\n                          </a>\n                          <a href=\"#\" class=\"list-group-item list-group-item-action border-bottom\">\n                            <div class=\"row align-items-center\">\n                                <div class=\"col-auto\">\n                                  <!-- Avatar -->\n                                  <img alt=\"Image placeholder\" src=\"{{ url_for('static', filename='assets/img/team/profile-picture-5.jpg') }}\" class=\"avatar-md rounded\">\n                                </div>\n                                <div class=\"col ps-0 ms-2\">\n                                  <div class=\"d-flex justify-content-between align-items-center\">\n                                      <div>\n                                        <h4 class=\"h6 mb-0 text-small\">Bonnie Green</h4>\n                                      </div>\n                                      <div class=\"text-end\">\n                                        <small>2 hrs ago</small>\n                                      </div>\n                                  </div>\n                                  <p class=\"font-small mt-1 mb-0\">New message: \"We need to improve the UI/UX for the landing page.\"</p>\n                                </div>\n                            </div>\n                          </a>\n                          <a href=\"#\" class=\"dropdown-item text-center fw-bold rounded-bottom py-3\">\n                            <svg class=\"icon icon-xxs text-gray-400 me-1\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M10 12a2 2 0 100-4 2 2 0 000 4z\"></path><path fill-rule=\"evenodd\" d=\"M.458 10C1.732 5.943 5.522 3 10 3s8.268 2.943 9.542 7c-1.274 4.057-5.064 7-9.542 7S1.732 14.057.458 10zM14 10a4 4 0 11-8 0 4 4 0 018 0z\" clip-rule=\"evenodd\"></path></svg>\n                            View all\n                          </a>\n                        </div>\n                      </div>\n                    </li>\n                    <li class=\"nav-item dropdown ms-lg-3\">\n                      <a class=\"nav-link dropdown-toggle pt-1 px-0\" href=\"#\" role=\"button\" data-bs-toggle=\"dropdown\" aria-expanded=\"false\">\n                        <div class=\"media d-flex align-items-center\">\n                          <img class=\"avatar rounded-circle\" alt=\"Image placeholder\" src=\"{{ url_for('static', filename='assets/img/team/profile-picture-3.jpg') }}\">\n                          <div class=\"media-body ms-2 text-dark align-items-center d-none d-lg-block\">\n                            <span class=\"mb-0 font-small fw-bold text-gray-900\">\n                              Current User: <strong>{{ current_user.username }}</strong>\n                            </span>\n                          </div>\n                        </div>\n                      </a>\n                      <div class=\"dropdown-menu dashboard-dropdown dropdown-menu-end mt-2 py-1\">\n                        <a class=\"dropdown-item d-flex align-items-center\" href=\"/settings.html\">\n                          <svg class=\"dropdown-icon text-gray-400 me-2\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-6-3a2 2 0 11-4 0 2 2 0 014 0zm-2 4a5 5 0 00-4.546 2.916A5.986 5.986 0 0010 16a5.986 5.986 0 004.546-2.084A5 5 0 0010 11z\" clip-rule=\"evenodd\"></path></svg>\n                          My Profile\n                        </a>\n                        <a class=\"dropdown-item d-flex align-items-center\" href=\"/settings.html\">\n                          <svg class=\"dropdown-icon text-gray-400 me-2\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M11.49 3.17c-.38-1.56-2.6-1.56-2.98 0a1.532 1.532 0 01-2.286.948c-1.372-.836-2.942.734-2.106 2.106.54.886.061 2.042-.947 2.287-1.561.379-1.561 2.6 0 2.978a1.532 1.532 0 01.947 2.287c-.836 1.372.734 2.942 2.106 2.106a1.532 1.532 0 012.287.947c.379 1.561 2.6 1.561 2.978 0a1.533 1.533 0 012.287-.947c1.372.836 2.942-.734 2.106-2.106a1.533 1.533 0 01.947-2.287c1.561-.379 1.561-2.6 0-2.978a1.532 1.532 0 01-.947-2.287c.836-1.372-.734-2.942-2.106-2.106a1.532 1.532 0 01-2.287-.947zM10 13a3 3 0 100-6 3 3 0 000 6z\" clip-rule=\"evenodd\"></path></svg>\n                          Settings\n                        </a>\n                        <a class=\"dropdown-item d-flex align-items-center\" href=\"#\">\n                          <svg class=\"dropdown-icon text-gray-400 me-2\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M5 3a2 2 0 00-2 2v10a2 2 0 002 2h10a2 2 0 002-2V5a2 2 0 00-2-2H5zm0 2h10v7h-2l-1 2H8l-1-2H5V5z\" clip-rule=\"evenodd\"></path></svg>\n                          Messages\n                        </a>\n                        <a class=\"dropdown-item d-flex align-items-center\" href=\"#\">\n                          <svg class=\"dropdown-icon text-gray-400 me-2\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M18 10a8 8 0 11-16 0 8 8 0 0116 0zm-2 0c0 .993-.241 1.929-.668 2.754l-1.524-1.525a3.997 3.997 0 00.078-2.183l1.562-1.562C15.802 8.249 16 9.1 16 10zm-5.165 3.913l1.58 1.58A5.98 5.98 0 0110 16a5.976 5.976 0 01-2.516-.552l1.562-1.562a4.006 4.006 0 001.789.027zm-4.677-2.796a4.002 4.002 0 01-.041-2.08l-.08.08-1.53-1.533A5.98 5.98 0 004 10c0 .954.223 1.856.619 2.657l1.54-1.54zm1.088-6.45A5.974 5.974 0 0110 4c.954 0 1.856.223 2.657.619l-1.54 1.54a4.002 4.002 0 00-2.346.033L7.246 4.668zM12 10a2 2 0 11-4 0 2 2 0 014 0z\" clip-rule=\"evenodd\"></path></svg>\n                          Support\n                        </a>\n                        <div role=\"separator\" class=\"dropdown-divider my-1\"></div>\n                        <a class=\"dropdown-item d-flex align-items-center\" href=\"{{ url_for('authentication_blueprint.logout') }}\">\n                          <svg class=\"dropdown-icon text-danger me-2\" fill=\"none\" stroke=\"currentColor\" viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\">\n                            <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M17 16l4-4m0 0l-4-4m4 4H7m6 4v1a3 3 0 01-3 3H6a3 3 0 01-3-3V7a3 3 0 013-3h4a3 3 0 013 3v1\"></path>\n                          </svg>                \n                          Logout\n                        </a>\n                      </div>\n                    </li>\n                  </ul>\n                </div>\n              </div>\n            </nav>"
  },
  {
    "path": "templates/includes/scripts.html",
    "content": "\n<!-- Core -->\n<script src=\"{{ url_for('static', filename='assets/vendor/@popperjs/core/dist/umd/popper.min.js') }}\"></script>\n<script src=\"{{ url_for('static', filename='assets/vendor/bootstrap/dist/js/bootstrap.min.js') }}\"></script>\n\n<!-- Vendor JS -->\n<script src=\"{{ url_for('static', filename='assets/vendor/onscreen/dist/on-screen.umd.min.js') }}\"></script>\n\n<!-- Slider -->\n<script src=\"{{ url_for('static', filename='assets/vendor/nouislider/distribute/nouislider.min.js') }}\"></script>\n\n<!-- Smooth scroll -->\n<script src=\"{{ url_for('static', filename='assets/vendor/smooth-scroll/dist/smooth-scroll.polyfills.min.js') }}\"></script>\n\n<!-- Charts -->\n<script src=\"{{ url_for('static', filename='assets/vendor/chartist/dist/chartist.min.js') }}\"></script>\n<script src=\"{{ url_for('static', filename='assets/vendor/chartist-plugin-tooltips/dist/chartist-plugin-tooltip.min.js') }}\"></script>\n\n<!-- Datepicker -->\n<script src=\"{{ url_for('static', filename='assets/vendor/vanillajs-datepicker/dist/js/datepicker.min.js') }}\"></script>\n\n<!-- Sweet Alerts 2 -->\n<script src=\"{{ url_for('static', filename='assets/vendor/sweetalert2/dist/sweetalert2.all.min.js') }}\"></script>\n\n<!-- Moment JS -->\n<script src=\"https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.27.0/moment.min.js\"></script>\n\n<!-- Vanilla JS Datepicker -->\n<script src=\"{{ url_for('static', filename='assets/vendor/vanillajs-datepicker/dist/js/datepicker.min.js') }}\"></script>\n\n<!-- Notyf -->\n<script src=\"{{ url_for('static', filename='assets/vendor/notyf/notyf.min.js') }}\"></script>\n\n<!-- Simplebar -->\n<script src=\"{{ url_for('static', filename='assets/vendor/simplebar/dist/simplebar.min.js') }}\"></script>\n\n<!-- Github buttons -->\n<script async defer src=\"https://buttons.github.io/buttons.js\"></script>\n\n<!-- Volt JS -->\n<script src=\"{{ url_for('static', filename='assets/js/volt.js') }}\"></script>\n"
  },
  {
    "path": "templates/includes/settings-box.html",
    "content": "\n    <div class=\"theme-settings card bg-gray-800 pt-2 collapse\" id=\"theme-settings\">\n        <div class=\"card-body bg-gray-800 text-white pt-4\">\n            <button type=\"button\" class=\"btn-close theme-settings-close\" aria-label=\"Close\" data-bs-toggle=\"collapse\"\n                href=\"#theme-settings\" role=\"button\" aria-expanded=\"false\" aria-controls=\"theme-settings\"></button>\n            <div class=\"d-flex justify-content-between align-items-center mb-3\">\n                <p class=\"m-0 mb-1 me-4 fs-7\">Open source <span role=\"img\" aria-label=\"gratitude\">💛</span></p>\n                <a class=\"github-button\" href=\"https://github.com/app-generator/flask-volt-dashboard\"\n                    data-color-scheme=\"no-preference: dark; light: light; dark: light;\" data-icon=\"octicon-star\"\n                    data-size=\"large\" data-show-count=\"true\"\n                    aria-label=\"Star themesberg/volt-bootstrap-5-dashboard on GitHub\">Star</a>\n            </div>\n            <a href=\"https://appseed.us/product/volt-dashboard/flask/\" target=\"_blank\"\n                class=\"btn btn-secondary d-inline-flex align-items-center justify-content-center mb-3 w-100\">\n                Download \n                <svg class=\"icon icon-xs ms-2\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M2 9.5A3.5 3.5 0 005.5 13H9v2.586l-1.293-1.293a1 1 0 00-1.414 1.414l3 3a1 1 0 001.414 0l3-3a1 1 0 00-1.414-1.414L11 15.586V13h2.5a4.5 4.5 0 10-.616-8.958 4.002 4.002 0 10-7.753 1.977A3.5 3.5 0 002 9.5zm9 3.5H9V8a1 1 0 012 0v5z\" clip-rule=\"evenodd\"></path></svg>\n            </a>\n        </div>\n    </div>\n\n    <div class=\"card theme-settings bg-gray-800 theme-settings-expand\" id=\"theme-settings-expand\">\n        <div class=\"card-body bg-gray-800 text-white rounded-top p-3 py-2\">\n            <span class=\"fw-bold d-inline-flex align-items-center h6\">\n                <svg class=\"icon icon-xs me-2\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M11.49 3.17c-.38-1.56-2.6-1.56-2.98 0a1.532 1.532 0 01-2.286.948c-1.372-.836-2.942.734-2.106 2.106.54.886.061 2.042-.947 2.287-1.561.379-1.561 2.6 0 2.978a1.532 1.532 0 01.947 2.287c-.836 1.372.734 2.942 2.106 2.106a1.532 1.532 0 012.287.947c.379 1.561 2.6 1.561 2.978 0a1.533 1.533 0 012.287-.947c1.372.836 2.942-.734 2.106-2.106a1.533 1.533 0 01.947-2.287c1.561-.379 1.561-2.6 0-2.978a1.532 1.532 0 01-.947-2.287c.836-1.372-.734-2.942-2.106-2.106a1.532 1.532 0 01-2.287-.947zM10 13a3 3 0 100-6 3 3 0 000 6z\" clip-rule=\"evenodd\"></path></svg>\n                Settings\n            </span>\n        </div>\n    </div>\n"
  },
  {
    "path": "templates/includes/sidebar.html",
    "content": "        <nav class=\"navbar navbar-dark navbar-theme-primary px-4 col-12 d-lg-none\">\n            <a class=\"navbar-brand me-lg-5\" href=\"/\">\n                <img class=\"navbar-brand-dark\" src=\"{{ url_for('static', filename='assets/img/brand/light.svg') }}\" alt=\"Volt logo\" /> <img class=\"navbar-brand-light\" src=\"{{ url_for('static', filename='assets/img/brand/dark.svg') }}\" alt=\"Volt logo\" />\n            </a>\n            <div class=\"d-flex align-items-center\">\n                <button class=\"navbar-toggler d-lg-none collapsed\" type=\"button\" data-bs-toggle=\"collapse\" data-bs-target=\"#sidebarMenu\" aria-controls=\"sidebarMenu\" aria-expanded=\"false\" aria-label=\"Toggle navigation\">\n                  <span class=\"navbar-toggler-icon\"></span>\n                </button>\n            </div>\n        </nav>\n\n        <nav id=\"sidebarMenu\" class=\"sidebar d-lg-block bg-gray-800 text-white collapse\" data-simplebar>\n          <div class=\"sidebar-inner px-4 pt-3\">\n            <div class=\"user-card d-flex d-md-none align-items-center justify-content-between justify-content-md-center pb-4\">\n              <div class=\"d-flex align-items-center\">\n                <div class=\"avatar-lg me-4\">\n                  <img src=\"{{ url_for('static', filename='assets/img/team/profile-picture-3.jpg') }}\" class=\"card-img-top rounded-circle border-white\"\n                    alt=\"Bonnie Green\">\n                </div>\n                <div class=\"d-block\">\n                  <h2 class=\"h5 mb-3\">Hi, Jane</h2>\n                  <a href=\"/page-sign-in.html\" class=\"btn btn-secondary btn-sm d-inline-flex align-items-center\">\n                    <svg class=\"icon icon-xxs me-1\" fill=\"none\" stroke=\"currentColor\" viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\"><path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M17 16l4-4m0 0l-4-4m4 4H7m6 4v1a3 3 0 01-3 3H6a3 3 0 01-3-3V7a3 3 0 013-3h4a3 3 0 013 3v1\"></path></svg>            \n                    Sign Out\n                  </a>\n                </div>\n              </div>\n              <div class=\"collapse-close d-md-none\">\n                <a href=\"#sidebarMenu\" data-bs-toggle=\"collapse\"\n                    data-bs-target=\"#sidebarMenu\" aria-controls=\"sidebarMenu\" aria-expanded=\"true\"\n                    aria-label=\"Toggle navigation\">\n                    <svg class=\"icon icon-xs\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M4.293 4.293a1 1 0 011.414 0L10 8.586l4.293-4.293a1 1 0 111.414 1.414L11.414 10l4.293 4.293a1 1 0 01-1.414 1.414L10 11.414l-4.293 4.293a1 1 0 01-1.414-1.414L8.586 10 4.293 5.707a1 1 0 010-1.414z\" clip-rule=\"evenodd\"></path></svg>\n                  </a>\n              </div>\n            </div>\n            <ul class=\"nav flex-column pt-3 pt-md-0\">\n              <li class=\"nav-item\">\n                <a href=\"/\" class=\"nav-link d-flex align-items-center\">\n                  <span class=\"sidebar-icon\">\n                    <img src=\"{{ url_for('static', filename='assets/img/brand/light.svg') }}\" height=\"20\" width=\"20\" alt=\"Volt Logo\">\n                  </span>\n                  <span class=\"mt-1 ms-1 sidebar-text\">Volt Overview</span>\n                </a>\n              </li>\n              <li class=\"nav-item {% if 'dashboard' in segment %} active {% endif %}\">\n                <a href=\"/dashboard.html\" class=\"nav-link\">\n                  <span class=\"sidebar-icon\">\n                    <svg class=\"icon icon-xs me-2\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M2 10a8 8 0 018-8v8h8a8 8 0 11-16 0z\"></path><path d=\"M12 2.252A8.014 8.014 0 0117.748 8H12V2.252z\"></path></svg>\n                  </span> \n                  <span class=\"sidebar-text\">Dashboard</span>\n                </a>\n              </li>\n\n              <li class=\"nav-item {% if 'dynamic_dt' in segment %}active{% endif %}\">\n                <a href=\"{{ url_for('table_blueprint.dynamic_dt') }}\" class=\"nav-link\">\n                  <span class=\"sidebar-icon\">\n                    <svg class=\"icon icon-xs me-2\" fill=\"currentColor\" viewBox=\"0 0 20 20\"\n                      xmlns=\"http://www.w3.org/2000/svg\">\n                      <path fill-rule=\"evenodd\"\n                        d=\"M5 4a3 3 0 00-3 3v6a3 3 0 003 3h10a3 3 0 003-3V7a3 3 0 00-3-3H5zm-1 9v-1h5v2H5a1 1 0 01-1-1zm7 1h4a1 1 0 001-1v-1h-5v2zm0-4h5V8h-5v2zM9 8H4v2h5V8z\"\n                        clip-rule=\"evenodd\"></path>\n                    </svg>\n                  </span>\n                  <span class=\"sidebar-text\">Dynamic Tables</span>\n                </a>\n              </li>\n              <li class=\"nav-item {% if 'charts' in segment %}active{% endif %}\">\n                <a href=\"{{ url_for('charts_blueprint.charts') }}\" class=\"nav-link\">\n                  <span class=\"sidebar-icon\">\n                    <svg class=\"icon icon-xs me-2\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\">\n                      <path\n                        d=\"M2 11a1 1 0 011-1h2a1 1 0 011 1v5a1 1 0 01-1 1H3a1 1 0 01-1-1v-5zM8 7a1 1 0 011-1h2a1 1 0 011 1v9a1 1 0 01-1 1H9a1 1 0 01-1-1V7zM14 4a1 1 0 011-1h2a1 1 0 011 1v12a1 1 0 01-1 1h-2a1 1 0 01-1-1V4z\">\n                      </path>\n                    </svg>\n                  </span>\n                  <span class=\"sidebar-text\">Charts</span>\n                </a>\n              </li>\n\n              <li class=\"nav-item {% if 'transactions' in segment %} active {% endif %}\">\n                <a href=\"/transactions.html\" class=\"nav-link\">\n                  <span class=\"sidebar-icon\">\n                    <svg class=\"icon icon-xs me-2\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M4 4a2 2 0 00-2 2v1h16V6a2 2 0 00-2-2H4z\"></path><path fill-rule=\"evenodd\" d=\"M18 9H2v5a2 2 0 002 2h12a2 2 0 002-2V9zM4 13a1 1 0 011-1h1a1 1 0 110 2H5a1 1 0 01-1-1zm5-1a1 1 0 100 2h1a1 1 0 100-2H9z\" clip-rule=\"evenodd\"></path></svg>\n                  </span>\n                  <span class=\"sidebar-text\">Transactions</span>\n                </a>\n              </li>\n              <li class=\"nav-item {% if 'settings' in segment %} active {% endif %}\">\n                <a href=\"/settings.html\" class=\"nav-link\">\n                  <span class=\"sidebar-icon\">\n                    <svg class=\"icon icon-xs me-2\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M11.49 3.17c-.38-1.56-2.6-1.56-2.98 0a1.532 1.532 0 01-2.286.948c-1.372-.836-2.942.734-2.106 2.106.54.886.061 2.042-.947 2.287-1.561.379-1.561 2.6 0 2.978a1.532 1.532 0 01.947 2.287c-.836 1.372.734 2.942 2.106 2.106a1.532 1.532 0 012.287.947c.379 1.561 2.6 1.561 2.978 0a1.533 1.533 0 012.287-.947c1.372.836 2.942-.734 2.106-2.106a1.533 1.533 0 01.947-2.287c1.561-.379 1.561-2.6 0-2.978a1.532 1.532 0 01-.947-2.287c.836-1.372-.734-2.942-2.106-2.106a1.532 1.532 0 01-2.287-.947zM10 13a3 3 0 100-6 3 3 0 000 6z\" clip-rule=\"evenodd\"></path></svg>\n                  </span>\n                  <span class=\"sidebar-text\">Settings</span>\n                </a>\n              </li>\n              <li class=\"nav-item {% if 'tables-bootstrap-' in segment %} active {% endif %}\">\n                <span\n                  class=\"nav-link  collapsed  d-flex justify-content-between align-items-center\"\n                  data-bs-toggle=\"collapse\" data-bs-target=\"#submenu-app\">\n                  <span>\n                    <span class=\"sidebar-icon\">\n                      <svg class=\"icon icon-xs me-2\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M5 4a3 3 0 00-3 3v6a3 3 0 003 3h10a3 3 0 003-3V7a3 3 0 00-3-3H5zm-1 9v-1h5v2H5a1 1 0 01-1-1zm7 1h4a1 1 0 001-1v-1h-5v2zm0-4h5V8h-5v2zM9 8H4v2h5V8z\" clip-rule=\"evenodd\"></path></svg>\n                    </span> \n                    <span class=\"sidebar-text\">Tables</span>\n                  </span>\n                  <span class=\"link-arrow\">\n                    <svg class=\"icon icon-sm\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M7.293 14.707a1 1 0 010-1.414L10.586 10 7.293 6.707a1 1 0 011.414-1.414l4 4a1 1 0 010 1.414l-4 4a1 1 0 01-1.414 0z\" clip-rule=\"evenodd\"></path></svg>\n                  </span>\n                </span>\n                <div class=\"multi-level collapse {% if 'tables-bootstrap-' in segment %} show {% endif %}\"\n                  role=\"list\" id=\"submenu-app\" aria-expanded=\"false\">\n                  <ul class=\"flex-column nav\">\n                    <li class=\"nav-item {% if 'bootstrap-tables' in segment %} active {% endif %}\">\n                      <a class=\"nav-link\" href=\"/tables-bootstrap-tables.html\">\n                        <span class=\"sidebar-text\">Bootstrap Tables</span>\n                      </a>\n                    </li>\n                  </ul>\n                </div>\n              </li>\n              <li class=\"nav-item {% if 'page-' in segment %} active {% endif %}\">\n                <span\n                  class=\"nav-link  collapsed  d-flex justify-content-between align-items-center\"\n                  data-bs-toggle=\"collapse\" data-bs-target=\"#submenu-pages\">\n                  <span>\n                    <span class=\"sidebar-icon\">\n                      <svg class=\"icon icon-xs me-2\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M2 5a2 2 0 012-2h8a2 2 0 012 2v10a2 2 0 002 2H4a2 2 0 01-2-2V5zm3 1h6v4H5V6zm6 6H5v2h6v-2z\" clip-rule=\"evenodd\"></path><path d=\"M15 7h1a2 2 0 012 2v5.5a1.5 1.5 0 01-3 0V7z\"></path></svg>\n                    </span> \n                    <span class=\"sidebar-text\">Page examples</span>\n                  </span>\n                  <span class=\"link-arrow\">\n                    <svg class=\"icon icon-sm\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M7.293 14.707a1 1 0 010-1.414L10.586 10 7.293 6.707a1 1 0 011.414-1.414l4 4a1 1 0 010 1.414l-4 4a1 1 0 01-1.414 0z\" clip-rule=\"evenodd\"></path></svg>\n                  </span>\n                </span>\n                <div class=\"multi-level collapse {% if 'page-' in segment %} show {% endif %} \" role=\"list\"\n                  id=\"submenu-pages\" aria-expanded=\"false\">\n                  <ul class=\"flex-column nav\">\n                    <li class=\"nav-item\">\n                      <a class=\"nav-link\" href=\"/page-sign-in.html\">\n                        <span class=\"sidebar-text\">Sign In</span>\n                      </a>\n                    </li>\n                    <li class=\"nav-item\">\n                      <a class=\"nav-link\" href=\"/page-sign-up.html\">\n                        <span class=\"sidebar-text\">Sign Up</span>\n                      </a>\n                    </li>\n                    <li class=\"nav-item\">\n                      <a class=\"nav-link\" href=\"/page-forgot-password.html\">\n                        <span class=\"sidebar-text\">Forgot password</span>\n                      </a>\n                    </li>\n                    <li class=\"nav-item\">\n                      <a class=\"nav-link\" href=\"/page-reset-password.html\">\n                        <span class=\"sidebar-text\">Reset password</span>\n                      </a>\n                    </li>\n                    <li class=\"nav-item\">\n                      <a class=\"nav-link\" href=\"/page-lock.html\">\n                        <span class=\"sidebar-text\">Lock</span>\n                      </a>\n                    </li>\n                    <li class=\"nav-item\">\n                      <a class=\"nav-link\" href=\"/page-404.html\">\n                        <span class=\"sidebar-text\">404 Not Found</span>\n                      </a>\n                    </li>\n                    <li class=\"nav-item\">\n                      <a class=\"nav-link\" href=\"/page-500.html\">\n                        <span class=\"sidebar-text\">500 Not Found</span>\n                      </a>\n                    </li>\n                  </ul>\n                </div>\n              </li>\n              <li class=\"nav-item {% if 'components-' in segment %} active {% endif %}\">\n                <span\n                  class=\"nav-link  collapsed  d-flex justify-content-between align-items-center\"\n                  data-bs-toggle=\"collapse\" data-bs-target=\"#submenu-components\">\n                  <span>\n                    <span class=\"sidebar-icon\">\n                      <svg class=\"icon icon-xs me-2\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M4 3a2 2 0 100 4h12a2 2 0 100-4H4z\"></path><path fill-rule=\"evenodd\" d=\"M3 8h14v7a2 2 0 01-2 2H5a2 2 0 01-2-2V8zm5 3a1 1 0 011-1h2a1 1 0 110 2H9a1 1 0 01-1-1z\" clip-rule=\"evenodd\"></path></svg>\n                    </span> \n                    <span class=\"sidebar-text\">Components</span>\n                  </span>\n                  <span class=\"link-arrow\">\n                    <svg class=\"icon icon-sm\" fill=\"currentColor\" viewBox=\"0 0 20 20\" xmlns=\"http://www.w3.org/2000/svg\"><path fill-rule=\"evenodd\" d=\"M7.293 14.707a1 1 0 010-1.414L10.586 10 7.293 6.707a1 1 0 011.414-1.414l4 4a1 1 0 010 1.414l-4 4a1 1 0 01-1.414 0z\" clip-rule=\"evenodd\"></path></svg>\n                  </span>\n                </span>\n                <div class=\"multi-level collapse {% if 'components-' in segment %} show {% endif %}\" role=\"list\"\n                  id=\"submenu-components\" aria-expanded=\"false\">\n                  <ul class=\"flex-column nav\">\n                    <li class=\"nav-item {% if 'components-buttons' in segment %} active {% endif %}\">\n                      <a class=\"nav-link\" href=\"/components-buttons.html\">\n                        <span class=\"sidebar-text\">Buttons</span>\n                      </a>\n                    </li>\n                    <li class=\"nav-item {% if 'components-notifications' in segment %} active {% endif %}\">\n                      <a class=\"nav-link\" href=\"/components-notifications.html\">\n                        <span class=\"sidebar-text\">Notifications</span>\n                      </a>\n                    </li>\n                    <li class=\"nav-item {% if 'components-forms' in segment %} active {% endif %}\">\n                      <a class=\"nav-link\" href=\"/components-forms.html\">\n                        <span class=\"sidebar-text\">Forms</span>\n                      </a>\n                    </li>\n                    <li class=\"nav-item {% if 'components-modals' in segment %} active {% endif %}\">\n                      <a class=\"nav-link\" href=\"/components-modals.html\">\n                        <span class=\"sidebar-text\">Modals</span>\n                      </a>\n                    </li>\n                    <li class=\"nav-item {% if 'components-typography' in segment %} active {% endif %}\">\n                      <a class=\"nav-link\" href=\"/components-typography.html\">\n                        <span class=\"sidebar-text\">Typography</span>\n                      </a>\n                    </li>\n                  </ul>\n                </div>\n              </li>\n              <li role=\"separator\" class=\"dropdown-divider mt-4 mb-3 border-gray-700\"></li>\n              <li class=\"nav-item\">\n                <a href=\"{{ url_for('authentication_blueprint.logout') }}\" class=\"nav-link\">\n                    <span class=\"sidebar-icon\">\n                        <svg class=\"icon icon-xs text-danger me-2\" fill=\"none\" stroke=\"currentColor\" viewBox=\"0 0 24 24\" xmlns=\"http://www.w3.org/2000/svg\">\n                            <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M17 16l4-4m0 0l-4-4m4 4H7m6 4v1a3 3 0 01-3 3H6a3 3 0 01-3-3V7a3 3 0 013-3h4a3 3 0 013 3v1\"></path>\n                        </svg> \n                    </span>\n                    <span class=\"sidebar-text\">Logout</span>\n                </a>\n              </li>            \n              <li class=\"nav-item\">\n                <a target=\"_blank\" \n                   href=\"https://appseed.us/support/\"\n                   class=\"btn btn-secondary d-flex align-items-center justify-content-center btn-upgrade-pro\"> \n                  <span>Support</span>\n                </a>\n              </li>\n            </ul>\n          </div>\n        </nav>"
  },
  {
    "path": "templates/layouts/base-fullscreen.html",
    "content": "<!--\n\n=========================================================\n* Volt Free - Bootstrap 5 Dashboard\n=========================================================\n\n* Product Page: https://themesberg.com/product/admin-dashboard/volt-premium-bootstrap-5-dashboard\n* Copyright 2020 Themesberg (https://www.themesberg.com)\n* License (https://themesberg.com/licensing)\n\n* Designed and coded by https://themesberg.com\n\n=========================================================\n\n* The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. Please contact us to request a removal.\n\n-->\n<!DOCTYPE html>\n<html lang=\"en\">\n\n<head> \n    <meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\" />\n<!-- Primary Meta Tags -->\n\n<title>\n    Flask Volt Dashboard - {% block title %}{% endblock %} | AppSeed\n</title>\n\n<meta name=\"viewport\" content=\"width=device-width, initial-scale=1, shrink-to-fit=no\">\n<meta name=\"title\" content=\"Volt Free Bootstrap Dashboard - Sign up page\">\n<meta name=\"author\" content=\"Themesberg\">\n<meta name=\"description\" content=\"Volt Pro is a Premium Bootstrap 5 Admin Dashboard featuring over 800 components, 10+ plugins and 20 example pages using Vanilla JS.\">\n<meta name=\"keywords\" content=\"bootstrap 5, bootstrap, bootstrap 5 admin dashboard, bootstrap 5 dashboard, bootstrap 5 charts, bootstrap 5 calendar, bootstrap 5 datepicker, bootstrap 5 tables, bootstrap 5 datatable, vanilla js datatable, themesberg, themesberg dashboard, themesberg admin dashboard\" />\n<link rel=\"canonical\" href=\"https://appseed.us/product/volt-dashboard/flask/\">\n\n<!-- Open Graph / Facebook -->\n<meta property=\"og:type\" content=\"website\">\n<meta property=\"og:url\" content=\"https://demo.themesberg.com/volt-pro\">\n<meta property=\"og:title\" content=\"Volt Free Bootstrap Dashboard - Sign up page\">\n<meta property=\"og:description\" content=\"Volt Pro is a Premium Bootstrap 5 Admin Dashboard featuring over 800 components, 10+ plugins and 20 example pages using Vanilla JS.\">\n<meta property=\"og:image\" content=\"https://themesberg.s3.us-east-2.amazonaws.com/public/products/volt-pro-bootstrap-5-dashboard/volt-pro-preview.jpg\">\n\n<!-- Twitter -->\n<meta property=\"twitter:card\" content=\"summary_large_image\">\n<meta property=\"twitter:url\" content=\"https://demo.themesberg.com/volt-pro\">\n<meta property=\"twitter:title\" content=\"Volt Free Bootstrap Dashboard - Sign up page\">\n<meta property=\"twitter:description\" content=\"Volt Pro is a Premium Bootstrap 5 Admin Dashboard featuring over 800 components, 10+ plugins and 20 example pages using Vanilla JS.\">\n<meta property=\"twitter:image\" content=\"https://themesberg.s3.us-east-2.amazonaws.com/public/products/volt-pro-bootstrap-5-dashboard/volt-pro-preview.jpg\">\n\n<!-- Favicon -->\n<link rel=\"apple-touch-icon\" sizes=\"120x120\" href=\"{{ url_for('static', filename='assets/img/favicon/apple-touch-icon.png') }}\">\n<link rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"{{ url_for('static', filename='assets/img/favicon/favicon-32x32.png') }}\">\n<link rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"{{ url_for('static', filename='assets/img/favicon/favicon-16x16.png') }}\">\n<link rel=\"manifest\" href=\"{{ url_for('static', filename='assets/img/favicon/site.webmanifest') }}\">\n<link rel=\"mask-icon\" href=\"{{ url_for('static', filename='assets/img/favicon/safari-pinned-tab.svg') }}\" color=\"#ffffff\">\n<meta name=\"msapplication-TileColor\" content=\"#ffffff\">\n<meta name=\"theme-color\" content=\"#ffffff\">\n\n<!-- FA Icons -->\n<link rel=\"stylesheet\" href=\"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.4/css/all.min.css\" \n      integrity=\"sha512-1ycn6IcaQQ40/MKBW2W4Rhis/DbILU74C1vSrLJxCq57o941Ym01SwNsOMqvEBFlcgUa6xLiPY/NS5R+E6ztJQ==\" crossorigin=\"anonymous\" referrerpolicy=\"no-referrer\" />\n\n<!-- Sweet Alert -->\n<link type=\"text/css\" href=\"{{ url_for('static', filename='assets/vendor/sweetalert2/dist/sweetalert2.min.css') }}\" rel=\"stylesheet\">\n\n<!-- Notyf -->\n<link type=\"text/css\" href=\"{{ url_for('static', filename='assets/vendor/notyf/notyf.min.css') }}\" rel=\"stylesheet\">\n\n<!-- Volt CSS -->\n<link type=\"text/css\" href=\"{{ url_for('static', filename='assets/css/volt.css') }}\" rel=\"stylesheet\">\n\n<!-- Specific Page JS goes HERE  -->    \n{% block stylesheets %}{% endblock stylesheets %}\n\n</head>\n<body>\n\n    {% block content %}{% endblock content %}\n\n    {% include 'includes/scripts.html' %}\n\n  <!-- Specific Page JS goes HERE  -->\n  {% block javascripts %}{% endblock javascripts %}  \n  \n</body>\n</html>\n"
  },
  {
    "path": "templates/layouts/base.html",
    "content": "<!--\n\n=========================================================\n* Volt Free - Bootstrap 5 Dashboard\n=========================================================\n\n* Product Page: https://themesberg.com/product/admin-dashboard/volt-bootstrap-5-dashboard\n* Copyright 2021 Themesberg (https://www.themesberg.com)\n* License (https://themesberg.com/licensing)\n\n* Designed and coded by https://themesberg.com\n\n=========================================================\n\n* The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. Please contact us to request a removal.\n\n-->\n<!DOCTYPE html>\n<html lang=\"en\">\n\n<head> \n    <meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\" />\n<!-- Primary Meta Tags -->\n\n<title>\n    Flask Volt Dashboard - {% block title %}{% endblock %} | AppSeed\n</title>\n\n<meta name=\"viewport\" content=\"width=device-width, initial-scale=1, shrink-to-fit=no\">\n<meta name=\"title\" content=\"Volt - Free Bootstrap 5 Dashboard\">\n<meta name=\"author\" content=\"Themesberg\">\n<meta name=\"description\" content=\"Volt Pro is a Premium Bootstrap 5 Admin Dashboard featuring over 800 components, 10+ plugins and 20 example pages using Vanilla JS.\">\n<meta name=\"keywords\" content=\"bootstrap 5, bootstrap, bootstrap 5 admin dashboard, bootstrap 5 dashboard, bootstrap 5 charts, bootstrap 5 calendar, bootstrap 5 datepicker, bootstrap 5 tables, bootstrap 5 datatable, vanilla js datatable, themesberg, themesberg dashboard, themesberg admin dashboard\" />\n<link rel=\"canonical\" href=\"https://appseed.us/product/volt-dashboard/flask/\">\n\n<!-- Open Graph / Facebook -->\n<meta property=\"og:type\" content=\"website\">\n<meta property=\"og:url\" content=\"https://appseed.us/product/volt-dashboard/flask/\">\n<meta property=\"og:title\" content=\"Volt - Free Bootstrap 5 Dashboard\">\n<meta property=\"og:description\" content=\"Volt Pro is a Premium Bootstrap 5 Admin Dashboard featuring over 800 components, 10+ plugins and 20 example pages using Vanilla JS.\">\n<meta property=\"og:image\" content=\"https://themesberg.s3.us-east-2.amazonaws.com/public/products/volt-pro-bootstrap-5-dashboard/volt-pro-preview.jpg\">\n\n<!-- Twitter -->\n<meta property=\"twitter:card\" content=\"summary_large_image\">\n<meta property=\"twitter:url\" content=\"https://appseed.us/product/volt-dashboard/flask/\">\n<meta property=\"twitter:title\" content=\"Volt - Free Bootstrap 5 Dashboard\">\n<meta property=\"twitter:description\" content=\"Volt Pro is a Premium Bootstrap 5 Admin Dashboard featuring over 800 components, 10+ plugins and 20 example pages using Vanilla JS.\">\n<meta property=\"twitter:image\" content=\"https://themesberg.s3.us-east-2.amazonaws.com/public/products/volt-pro-bootstrap-5-dashboard/volt-pro-preview.jpg\">\n\n<!-- Favicon -->\n<link rel=\"apple-touch-icon\" sizes=\"120x120\" href=\"{{ url_for('static', filename='assets/img/favicon/apple-touch-icon.png') }}\">\n<link rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"{{ url_for('static', filename='assets/img/favicon/favicon-32x32.png') }}\">\n<link rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"{{ url_for('static', filename='assets/img/favicon/favicon-16x16.png') }}\">\n<link rel=\"manifest\" href=\"{{ url_for('static', filename='assets/img/favicon/site.webmanifest') }}\">\n<link rel=\"mask-icon\" href=\"{{ url_for('static', filename='assets/img/favicon/safari-pinned-tab.svg') }}\" color=\"#ffffff\">\n<meta name=\"msapplication-TileColor\" content=\"#ffffff\">\n<meta name=\"theme-color\" content=\"#ffffff\">\n\n<link type=\"text/css\" href=\"{{ url_for('static', filename='assets/vendor/sweetalert2/dist/sweetalert2.min.css') }}\" rel=\"stylesheet\">\n\n<link type=\"text/css\" href=\"{{ url_for('static', filename='assets/vendor/notyf/notyf.min.css') }}\" rel=\"stylesheet\">\n<link type=\"text/css\" href=\"{{ url_for('static', filename='assets/css/volt.css') }}\" rel=\"stylesheet\">\n\n<!-- Specific Page JS goes HERE  -->    \n{% block stylesheets %}{% endblock stylesheets %}\n\n</head>\n<body>\n\n    {% include 'includes/sidebar.html' %}\n    \n    <main class=\"content\">\n\n      {% include 'includes/navigation.html' %}\n\n      {% block content %}{% endblock content %} \n\n      {% include 'includes/settings-box.html' %}\n\n      {% include 'includes/footer.html' %}\n\n    </main>\n\n  {% include 'includes/scripts.html' %}\n    \n  <!-- Specific Page JS goes HERE  -->\n  {% block javascripts %}{% endblock javascripts %}  \n      \n</body>\n</html>\n"
  },
  {
    "path": "vite.config.js",
    "content": "import { defineConfig } from \"vite\";\nimport autoprefixer from \"autoprefixer\";\nimport cssnano from \"cssnano\";\nimport path from \"path\";\n\nexport default defineConfig(({ mode }) => {\n    const isProduction = mode === \"production\";\n\n    return {\n        css: {\n            postcss: {\n                plugins: [\n                    autoprefixer(),\n                    isProduction && cssnano(),\n                ].filter(Boolean),\n            },\n        },\n        build: {\n            outDir: \"static\",\n            emptyOutDir: false,\n            rollupOptions: {\n                input: path.resolve(__dirname, \"static/assets/scss/custom.scss\"),\n                output: {\n                    assetFileNames: (assetInfo) => {\n                        if (assetInfo.name === \"custom.css\") {\n                            return \"assets/css/custom.css\";\n                        }\n                        return \"assets/css/[name].[ext]\";\n                    },\n                },\n            },\n        },\n    };\n});"
  }
]