diff --git a/.drone.yml b/.drone.yml index ff9e0fa..1435bc4 100644 --- a/.drone.yml +++ b/.drone.yml @@ -1,21 +1,20 @@ kind: pipeline type: docker -name: default +name: deploy-polisplexity clone: depth: 1 - submodules: true # Ensure submodules like pxy_city_digital_twins are cloned + submodules: true steps: - - name: install dependencies and check Django project + - name: install dependencies and run Django checks image: python:3.10 environment: DATABASE_URL: from_secret: DATABASE_URL SECRET_KEY: from_secret: SECRET_KEY - DEBUG: - from_secret: DEBUG + DEBUG: "False" NEO4J_URI: from_secret: NEO4J_URI NEO4J_USERNAME: @@ -31,10 +30,10 @@ steps: commands: - python -m pip install --upgrade pip - pip install -r requirements.txt - - python manage.py check - - echo "✅ Django check completed" + - python manage.py check --deploy --fail-level WARNING + - echo "✅ Django deploy checks passed" - - name: deploy to production + - name: deploy to production server image: appleboy/ssh settings: host: @@ -49,4 +48,7 @@ steps: - git pull origin main - docker compose down - docker compose up -d --build - - echo "🚀 Deployment complete" + - docker compose exec web python manage.py migrate --noinput + - docker compose exec web python manage.py collectstatic --noinput + - echo "🚀 Production deployment complete" + \ No newline at end of file diff --git a/Dockerfile b/Dockerfile index 4ebdd0e..4424af2 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,14 +1,12 @@ -# Use official Python image -FROM python:3.10 +# Etapa base: Python oficial +FROM python:3.10-slim as base -# Set working directory -WORKDIR /app +# Variables de entorno para producción +ENV PYTHONDONTWRITEBYTECODE 1 +ENV PYTHONUNBUFFERED 1 -# Copy application code -COPY . . - -# Add before pip install step -RUN apt-get update && apt-get install -y \ +# Instala dependencias del sistema +RUN apt-get update && apt-get install -y --no-install-recommends \ build-essential \ libgeos-dev \ libspatialindex-dev \ @@ -20,11 +18,20 @@ RUN apt-get update && apt-get install -y \ python3-dev \ && rm -rf /var/lib/apt/lists/* -# Install dependencies +# Crea directorio de trabajo +WORKDIR /app + +# Copia requirements primero (mejor cacheo) +COPY requirements.txt . + +# Instala dependencias Python RUN pip install --no-cache-dir -r requirements.txt -# Expose the application port +# Copia el resto del proyecto +COPY . . + +# Expone el puerto del contenedor EXPOSE 8000 -# Run Gunicorn server -CMD ["gunicorn", "--bind", "0.0.0.0:8000", "polisplexity.wsgi:application"] +# Comando por defecto para producción con Gunicorn +CMD ["gunicorn", "polisplexity.wsgi:application", "--bind", "0.0.0.0:8000", "--workers=3", "--timeout=120"] diff --git a/core/__pycache__/__init__.cpython-310.pyc b/core/__pycache__/__init__.cpython-310.pyc index 6e47715..b939ba2 100644 Binary files a/core/__pycache__/__init__.cpython-310.pyc and b/core/__pycache__/__init__.cpython-310.pyc differ diff --git a/core/__pycache__/admin.cpython-310.pyc b/core/__pycache__/admin.cpython-310.pyc index dd3b4cb..8e672a2 100644 Binary files a/core/__pycache__/admin.cpython-310.pyc and b/core/__pycache__/admin.cpython-310.pyc differ diff --git a/core/__pycache__/apps.cpython-310.pyc b/core/__pycache__/apps.cpython-310.pyc index 526b192..8e5743f 100644 Binary files a/core/__pycache__/apps.cpython-310.pyc and b/core/__pycache__/apps.cpython-310.pyc differ diff --git a/core/__pycache__/models.cpython-310.pyc b/core/__pycache__/models.cpython-310.pyc index 6f7b5f2..c8c7b06 100644 Binary files a/core/__pycache__/models.cpython-310.pyc and b/core/__pycache__/models.cpython-310.pyc differ diff --git a/core/__pycache__/urls.cpython-310.pyc b/core/__pycache__/urls.cpython-310.pyc index 8d73aef..26f16eb 100644 Binary files a/core/__pycache__/urls.cpython-310.pyc and b/core/__pycache__/urls.cpython-310.pyc differ diff --git a/core/__pycache__/views.cpython-310.pyc b/core/__pycache__/views.cpython-310.pyc index 4c45c88..8685d9c 100644 Binary files a/core/__pycache__/views.cpython-310.pyc and b/core/__pycache__/views.cpython-310.pyc differ diff --git a/core/migrations/__pycache__/0001_initial.cpython-310.pyc b/core/migrations/__pycache__/0001_initial.cpython-310.pyc index a048bf9..130fb97 100644 Binary files a/core/migrations/__pycache__/0001_initial.cpython-310.pyc and b/core/migrations/__pycache__/0001_initial.cpython-310.pyc differ diff --git a/core/migrations/__pycache__/0002_usermenu.cpython-310.pyc b/core/migrations/__pycache__/0002_usermenu.cpython-310.pyc index 0de369e..d0bf10a 100644 Binary files a/core/migrations/__pycache__/0002_usermenu.cpython-310.pyc and b/core/migrations/__pycache__/0002_usermenu.cpython-310.pyc differ diff --git a/core/migrations/__pycache__/__init__.cpython-310.pyc b/core/migrations/__pycache__/__init__.cpython-310.pyc index d78e305..08786bb 100644 Binary files a/core/migrations/__pycache__/__init__.cpython-310.pyc and b/core/migrations/__pycache__/__init__.cpython-310.pyc differ diff --git a/docker-compose.yml b/docker-compose.yml index b936a83..a506298 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -5,12 +5,12 @@ services: image: postgres:15 container_name: polisplexity_postgres restart: always + ports: + - "5434:5432" volumes: - pgdata:/var/lib/postgresql/data env_file: - .env - ports: - - "5434:5432" healthcheck: test: ["CMD-SHELL", "pg_isready -U ${POSTGRES_USER} -d ${POSTGRES_DB}"] interval: 10s @@ -24,14 +24,20 @@ services: depends_on: db: condition: service_healthy - volumes: - - .:/app # Sync local code into container for live reload ports: - "8001:8001" env_file: - .env - command: python manage.py runserver 0.0.0.0:8001 + command: > + sh -c "python manage.py migrate && + python manage.py collectstatic --noinput && + gunicorn polisplexity.wsgi:application --bind 0.0.0.0:8001" + volumes: + - static_data:/app/static + - media_data:/app/media + # - .:/app # ←❌ No lo uses en producción: desactiva para evitar sobrescribir volumes: pgdata: - \ No newline at end of file + static_data: + media_data: diff --git a/polisplexity/__pycache__/__init__.cpython-310.pyc b/polisplexity/__pycache__/__init__.cpython-310.pyc index 6918b8c..610dc32 100644 Binary files a/polisplexity/__pycache__/__init__.cpython-310.pyc and b/polisplexity/__pycache__/__init__.cpython-310.pyc differ diff --git a/polisplexity/__pycache__/settings.cpython-310.pyc b/polisplexity/__pycache__/settings.cpython-310.pyc index 2d499ce..95dc7d2 100644 Binary files a/polisplexity/__pycache__/settings.cpython-310.pyc and b/polisplexity/__pycache__/settings.cpython-310.pyc differ diff --git a/polisplexity/__pycache__/urls.cpython-310.pyc b/polisplexity/__pycache__/urls.cpython-310.pyc index 8039dc1..76e8f24 100644 Binary files a/polisplexity/__pycache__/urls.cpython-310.pyc and b/polisplexity/__pycache__/urls.cpython-310.pyc differ diff --git a/polisplexity/__pycache__/wsgi.cpython-310.pyc b/polisplexity/__pycache__/wsgi.cpython-310.pyc index a860eb8..1dfbaec 100644 Binary files a/polisplexity/__pycache__/wsgi.cpython-310.pyc and b/polisplexity/__pycache__/wsgi.cpython-310.pyc differ diff --git a/polisplexity/settings.py b/polisplexity/settings.py index a29080f..89b566f 100644 --- a/polisplexity/settings.py +++ b/polisplexity/settings.py @@ -1,33 +1,16 @@ -""" -Django settings for polisplexity project. - -Generated by 'django-admin startproject' using Django 5.0.3. - -For more information on this file, see -https://docs.djangoproject.com/en/5.0/topics/settings/ - -For the full list of settings and their values, see -https://docs.djangoproject.com/en/5.0/ref/settings/ -""" - from pathlib import Path import os import dj_database_url from dotenv import load_dotenv -# Load environment variables from .env file load_dotenv() -# Build paths inside the project like this: BASE_DIR / 'subdir'. BASE_DIR = Path(__file__).resolve().parent.parent BASE_URL = "https://app.polisplexity.tech" -# SECURITY WARNING: keep the secret key used in production secret! +# Core security settings SECRET_KEY = os.getenv("SECRET_KEY") - -# SECURITY WARNING: don't run with debug turned on in production! -DEBUG = os.getenv("DEBUG") == "True" - +DEBUG = os.getenv("DEBUG", "False") == "True" ALLOWED_HOSTS = os.getenv("ALLOWED_HOSTS", "").split(",") # Application definition @@ -38,6 +21,8 @@ INSTALLED_APPS = [ "django.contrib.sessions", "django.contrib.messages", "django.contrib.staticfiles", + + # App modules "core", "pxy_de", "pxy_cr", @@ -48,6 +33,11 @@ INSTALLED_APPS = [ "pxy_meta_pages", "pxy_langchain", "pxy_neo4j", + "pxy_dashboard", + "pxy_dashboard.custom", + "pxy_dashboard.apps", + "pxy_dashboard.components", + "pxy_dashboard.layouts", ] MIDDLEWARE = [ @@ -80,7 +70,7 @@ TEMPLATES = [ WSGI_APPLICATION = "polisplexity.wsgi.application" -# Database Configuration +# Database DATABASES = { "default": dj_database_url.config(default=os.getenv("DATABASE_URL")) } @@ -99,26 +89,31 @@ TIME_ZONE = "UTC" USE_I18N = True USE_TZ = True -# Static and Media Files +# Static & Media Files STATIC_URL = "/static/" -STATIC_ROOT = os.getenv("STATIC_ROOT", os.path.join(BASE_DIR, "static")) +STATIC_ROOT = os.path.join(BASE_DIR, "staticfiles") + +STATICFILES_DIRS = [ + os.path.join(BASE_DIR, "polisplexity/pxy_dashboard/static/dashboard"), # Jidox assets +] MEDIA_URL = "/media/" -MEDIA_ROOT = os.getenv("MEDIA_ROOT", os.path.join(BASE_DIR, "media")) +MEDIA_ROOT = os.path.join(BASE_DIR, "mediafiles") # Default primary key field type DEFAULT_AUTO_FIELD = "django.db.models.BigAutoField" -# Facebook API Tokens +# External services PAGE_ACCESS_TOKEN = os.getenv("PAGE_ACCESS_TOKEN") VERIFY_TOKEN = os.getenv("VERIFY_TOKEN") +# Async-safe for Neo4j or Celery os.environ["DJANGO_ALLOW_ASYNC_UNSAFE"] = "true" -# Neo4j Database Configuration +# Neo4j NEO4J_URI = os.getenv("NEO4J_URI") NEO4J_USERNAME = os.getenv("NEO4J_USERNAME") NEO4J_PASSWORD = os.getenv("NEO4J_PASSWORD") -# OpenAI API Key +# OpenAI OPENAI_API_KEY = os.getenv("OPENAI_API_KEY") diff --git a/polisplexity/urls.py b/polisplexity/urls.py index 015caef..cff3058 100644 --- a/polisplexity/urls.py +++ b/polisplexity/urls.py @@ -25,11 +25,13 @@ admin.site.index_title = "Welcome to Polisplexity City Technologies Portal" urlpatterns = [ path("admin/", admin.site.urls), + path('', include('pxy_dashboard.urls')), path('', include('core.urls')), path('', include('pxy_city_digital_twins.urls')), path('pxy_whatsapp/', include('pxy_whatsapp.urls')), path('bots/', include('pxy_bots.urls')), # Webhook URL: /bots/webhook// path('pxy_meta_pages/', include('pxy_meta_pages.urls', namespace='pxy_meta_pages')), + ] if settings.DEBUG: diff --git a/pxy_bots/__pycache__/__init__.cpython-310.pyc b/pxy_bots/__pycache__/__init__.cpython-310.pyc index 22613ba..e63281c 100644 Binary files a/pxy_bots/__pycache__/__init__.cpython-310.pyc and b/pxy_bots/__pycache__/__init__.cpython-310.pyc differ diff --git a/pxy_bots/__pycache__/admin.cpython-310.pyc b/pxy_bots/__pycache__/admin.cpython-310.pyc index daaf50e..8eb7b9c 100644 Binary files a/pxy_bots/__pycache__/admin.cpython-310.pyc and b/pxy_bots/__pycache__/admin.cpython-310.pyc differ diff --git a/pxy_bots/__pycache__/apps.cpython-310.pyc b/pxy_bots/__pycache__/apps.cpython-310.pyc index 708322c..7368ad6 100644 Binary files a/pxy_bots/__pycache__/apps.cpython-310.pyc and b/pxy_bots/__pycache__/apps.cpython-310.pyc differ diff --git a/pxy_bots/__pycache__/handlers.cpython-310.pyc b/pxy_bots/__pycache__/handlers.cpython-310.pyc index e297ee2..2aaa476 100644 Binary files a/pxy_bots/__pycache__/handlers.cpython-310.pyc and b/pxy_bots/__pycache__/handlers.cpython-310.pyc differ diff --git a/pxy_bots/__pycache__/models.cpython-310.pyc b/pxy_bots/__pycache__/models.cpython-310.pyc index 4b0ca40..957dea1 100644 Binary files a/pxy_bots/__pycache__/models.cpython-310.pyc and b/pxy_bots/__pycache__/models.cpython-310.pyc differ diff --git a/pxy_bots/__pycache__/urls.cpython-310.pyc b/pxy_bots/__pycache__/urls.cpython-310.pyc index 2044c62..0923c50 100644 Binary files a/pxy_bots/__pycache__/urls.cpython-310.pyc and b/pxy_bots/__pycache__/urls.cpython-310.pyc differ diff --git a/pxy_bots/__pycache__/utils.cpython-310.pyc b/pxy_bots/__pycache__/utils.cpython-310.pyc deleted file mode 100644 index d6efd91..0000000 Binary files a/pxy_bots/__pycache__/utils.cpython-310.pyc and /dev/null differ diff --git a/pxy_bots/__pycache__/views.cpython-310.pyc b/pxy_bots/__pycache__/views.cpython-310.pyc index 7637473..ea10a99 100644 Binary files a/pxy_bots/__pycache__/views.cpython-310.pyc and b/pxy_bots/__pycache__/views.cpython-310.pyc differ diff --git a/pxy_bots/migrations/__pycache__/0001_initial.cpython-310.pyc b/pxy_bots/migrations/__pycache__/0001_initial.cpython-310.pyc index 896b780..03c0d36 100644 Binary files a/pxy_bots/migrations/__pycache__/0001_initial.cpython-310.pyc and b/pxy_bots/migrations/__pycache__/0001_initial.cpython-310.pyc differ diff --git a/pxy_bots/migrations/__pycache__/0002_alter_telegrambot_is_active_alter_telegrambot_name_and_more.cpython-310.pyc b/pxy_bots/migrations/__pycache__/0002_alter_telegrambot_is_active_alter_telegrambot_name_and_more.cpython-310.pyc index 501adf1..89b77e8 100644 Binary files a/pxy_bots/migrations/__pycache__/0002_alter_telegrambot_is_active_alter_telegrambot_name_and_more.cpython-310.pyc and b/pxy_bots/migrations/__pycache__/0002_alter_telegrambot_is_active_alter_telegrambot_name_and_more.cpython-310.pyc differ diff --git a/pxy_bots/migrations/__pycache__/0003_telegrambot_assistant.cpython-310.pyc b/pxy_bots/migrations/__pycache__/0003_telegrambot_assistant.cpython-310.pyc index 28c07eb..7781b04 100644 Binary files a/pxy_bots/migrations/__pycache__/0003_telegrambot_assistant.cpython-310.pyc and b/pxy_bots/migrations/__pycache__/0003_telegrambot_assistant.cpython-310.pyc differ diff --git a/pxy_bots/migrations/__pycache__/0004_remove_telegrambot_assistant_and_more.cpython-310.pyc b/pxy_bots/migrations/__pycache__/0004_remove_telegrambot_assistant_and_more.cpython-310.pyc index f810772..5e47a1d 100644 Binary files a/pxy_bots/migrations/__pycache__/0004_remove_telegrambot_assistant_and_more.cpython-310.pyc and b/pxy_bots/migrations/__pycache__/0004_remove_telegrambot_assistant_and_more.cpython-310.pyc differ diff --git a/pxy_bots/migrations/__pycache__/0005_remove_telegrambot_assistant_id_and_more.cpython-310.pyc b/pxy_bots/migrations/__pycache__/0005_remove_telegrambot_assistant_id_and_more.cpython-310.pyc index 832ec17..dc5d7dc 100644 Binary files a/pxy_bots/migrations/__pycache__/0005_remove_telegrambot_assistant_id_and_more.cpython-310.pyc and b/pxy_bots/migrations/__pycache__/0005_remove_telegrambot_assistant_id_and_more.cpython-310.pyc differ diff --git a/pxy_bots/migrations/__pycache__/__init__.cpython-310.pyc b/pxy_bots/migrations/__pycache__/__init__.cpython-310.pyc index c171602..43c2963 100644 Binary files a/pxy_bots/migrations/__pycache__/__init__.cpython-310.pyc and b/pxy_bots/migrations/__pycache__/__init__.cpython-310.pyc differ diff --git a/pxy_cr/__pycache__/__init__.cpython-310.pyc b/pxy_cr/__pycache__/__init__.cpython-310.pyc index 435fa69..2546de3 100644 Binary files a/pxy_cr/__pycache__/__init__.cpython-310.pyc and b/pxy_cr/__pycache__/__init__.cpython-310.pyc differ diff --git a/pxy_cr/__pycache__/admin.cpython-310.pyc b/pxy_cr/__pycache__/admin.cpython-310.pyc index 038301a..3306357 100644 Binary files a/pxy_cr/__pycache__/admin.cpython-310.pyc and b/pxy_cr/__pycache__/admin.cpython-310.pyc differ diff --git a/pxy_cr/__pycache__/apps.cpython-310.pyc b/pxy_cr/__pycache__/apps.cpython-310.pyc index 2af3b70..e9bcbca 100644 Binary files a/pxy_cr/__pycache__/apps.cpython-310.pyc and b/pxy_cr/__pycache__/apps.cpython-310.pyc differ diff --git a/pxy_cr/__pycache__/models.cpython-310.pyc b/pxy_cr/__pycache__/models.cpython-310.pyc index 4ca7d4f..b6328b4 100644 Binary files a/pxy_cr/__pycache__/models.cpython-310.pyc and b/pxy_cr/__pycache__/models.cpython-310.pyc differ diff --git a/pxy_cr/migrations/__pycache__/__init__.cpython-310.pyc b/pxy_cr/migrations/__pycache__/__init__.cpython-310.pyc index 535f742..a6086de 100644 Binary files a/pxy_cr/migrations/__pycache__/__init__.cpython-310.pyc and b/pxy_cr/migrations/__pycache__/__init__.cpython-310.pyc differ diff --git a/pxy_dashboard/__init__.py b/pxy_dashboard/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/pxy_dashboard/admin.py b/pxy_dashboard/admin.py new file mode 100644 index 0000000..8c38f3f --- /dev/null +++ b/pxy_dashboard/admin.py @@ -0,0 +1,3 @@ +from django.contrib import admin + +# Register your models here. diff --git a/pxy_dashboard/apps.py b/pxy_dashboard/apps.py new file mode 100644 index 0000000..c114de2 --- /dev/null +++ b/pxy_dashboard/apps.py @@ -0,0 +1,6 @@ +from django.apps import AppConfig + + +class PxyDashboardConfig(AppConfig): + default_auto_field = 'django.db.models.BigAutoField' + name = 'pxy_dashboard' diff --git a/pxy_dashboard/apps/__init__.py b/pxy_dashboard/apps/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/pxy_dashboard/apps/admin.py b/pxy_dashboard/apps/admin.py new file mode 100644 index 0000000..ea5d68b --- /dev/null +++ b/pxy_dashboard/apps/admin.py @@ -0,0 +1,3 @@ +from django.contrib import admin + +# Register your models here. diff --git a/pxy_dashboard/apps/apps.py b/pxy_dashboard/apps/apps.py new file mode 100644 index 0000000..552e27c --- /dev/null +++ b/pxy_dashboard/apps/apps.py @@ -0,0 +1,5 @@ +from django.apps import AppConfig + +class AppsConfig(AppConfig): + default_auto_field = 'django.db.models.BigAutoField' + name = 'pxy_dashboard.apps' diff --git a/pxy_dashboard/apps/models.py b/pxy_dashboard/apps/models.py new file mode 100644 index 0000000..fd18c6e --- /dev/null +++ b/pxy_dashboard/apps/models.py @@ -0,0 +1,3 @@ +from django.db import models + +# Create your models here. diff --git a/pxy_dashboard/apps/tests.py b/pxy_dashboard/apps/tests.py new file mode 100644 index 0000000..de8bdc0 --- /dev/null +++ b/pxy_dashboard/apps/tests.py @@ -0,0 +1,3 @@ +from django.test import TestCase + +# Create your tests here. diff --git a/pxy_dashboard/apps/urls.py b/pxy_dashboard/apps/urls.py new file mode 100644 index 0000000..d300cf2 --- /dev/null +++ b/pxy_dashboard/apps/urls.py @@ -0,0 +1,31 @@ +from django.urls import path +from pxy_dashboard.apps.views import ( + apps_calendar_view, + apps_chat_view, + apps_email_inbox_view, + apps_email_read, + apps_tasks, + apps_tasks_details, + apps_kanban_board, + apps_file_manager, +) +app_name = "apps" + + +urlpatterns = [ + # Calaendar + path("calendar", view=apps_calendar_view, name="calendar"), + # Chat + path("chat", view=apps_chat_view, name="chat"), + # Email + path("email-inbox", view=apps_email_inbox_view, name="email-inbox"), + path("email-read", view=apps_email_read, name="email-read"), + # Tasks + path("tasks", view=apps_tasks, name="tasks"), + path("tasks-details", view=apps_tasks_details, name="tasks-details"), + # Kanban + path("kanban-board", view=apps_kanban_board, name="kanban"), + # File Manager + path("file-manager", view=apps_file_manager, name="file-manager"), + +] diff --git a/pxy_dashboard/apps/views.py b/pxy_dashboard/apps/views.py new file mode 100644 index 0000000..6e6680f --- /dev/null +++ b/pxy_dashboard/apps/views.py @@ -0,0 +1,22 @@ +from django.views.generic.base import TemplateView +from django.contrib.auth.mixins import LoginRequiredMixin + + +class AppsView(LoginRequiredMixin,TemplateView): + pass + + +# Calendar +apps_calendar_view = AppsView.as_view(template_name="apps/apps-calendar.html") +# Chat +apps_chat_view = AppsView.as_view(template_name="apps/apps-chat.html") +# Mail Box +apps_email_inbox_view = AppsView.as_view(template_name="apps/apps-email-inbox.html") +apps_email_read = AppsView.as_view(template_name="apps/apps-email-read.html") +# Tasks +apps_tasks = AppsView.as_view(template_name="apps/apps-tasks.html") +apps_tasks_details = AppsView.as_view(template_name="apps/apps-tasks-details.html") +# Kanban +apps_kanban_board = AppsView.as_view(template_name="apps/apps-kanban.html") +# File Manager +apps_file_manager = AppsView.as_view(template_name="apps/apps-file-manager.html") \ No newline at end of file diff --git a/pxy_dashboard/components/__init__.py b/pxy_dashboard/components/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/pxy_dashboard/components/admin.py b/pxy_dashboard/components/admin.py new file mode 100644 index 0000000..ea5d68b --- /dev/null +++ b/pxy_dashboard/components/admin.py @@ -0,0 +1,3 @@ +from django.contrib import admin + +# Register your models here. diff --git a/pxy_dashboard/components/apps.py b/pxy_dashboard/components/apps.py new file mode 100644 index 0000000..12dcb83 --- /dev/null +++ b/pxy_dashboard/components/apps.py @@ -0,0 +1,5 @@ +from django.apps import AppConfig + +class ComponentsConfig(AppConfig): + default_auto_field = 'django.db.models.BigAutoField' + name = 'pxy_dashboard.components' diff --git a/pxy_dashboard/components/models.py b/pxy_dashboard/components/models.py new file mode 100644 index 0000000..fd18c6e --- /dev/null +++ b/pxy_dashboard/components/models.py @@ -0,0 +1,3 @@ +from django.db import models + +# Create your models here. diff --git a/pxy_dashboard/components/tests.py b/pxy_dashboard/components/tests.py new file mode 100644 index 0000000..de8bdc0 --- /dev/null +++ b/pxy_dashboard/components/tests.py @@ -0,0 +1,3 @@ +from django.test import TestCase + +# Create your tests here. diff --git a/pxy_dashboard/components/urls.py b/pxy_dashboard/components/urls.py new file mode 100644 index 0000000..6252631 --- /dev/null +++ b/pxy_dashboard/components/urls.py @@ -0,0 +1,166 @@ +from django.urls import path +from pxy_dashboard.components.views import ( + accordions_view, + alerts_view, + avatars_view, + badges_view, + breadcrumb_view, + buttons_view, + cards_view, + carousel_view, + collapse_view, + dropdowns_view, + embed_video_view, + grid_view, + links_view, + list_group_view, + modals_view, + notifications_view, + offcanvas_view, + placeholders_view, + pagination_view, + popovers_view, + progress_view, + spinners_view, + tabs_view, + tooltips_view, + typography_view, + utilities_view, + extended_dragula_view, + extended_range_slider_view, + extended_ratings_view, + extended_scrollbar_view, + extended_scrollspy_view, + widgets_view, + icons_remixicons_view, + icons_bootstrap_view, + icons_material_view, + apex_area_view, + apex_bar_view, + apex_bubble_view, + apex_candlestick_view, + apex_column_view, + apex_heatmap_view, + apex_line_view, + apex_mixed_view, + apex_timeline_view, + apex_boxplot_view, + apex_treemap_view, + apex_pie_view, + apex_radar_view, + apex_radialbar_view, + apex_scatter_view, + apex_polar_area_view, + apex_sparklines_view, + chartjs_area_view, + chartjs_bar_view, + chartjs_line_view, + chartjs_other_view, + form_elements_view, + form_advanced_view, + form_wizard_view, + form_fileuploads_view, + form_editors_view, + tables_basic_view, + tables_datatable_view, + google_map_view, + vector_map_view, + form_validation_view, +) + +urlpatterns = [ + # Base Ui + path("accordions", view=accordions_view, name="accordions"), + path("alerts", view=alerts_view, name="alerts"), + path("avatars", view=avatars_view, name="avatars"), + path("badges", view=badges_view, name="badges"), + path("breadcrumb", view=breadcrumb_view, name="breadcrumb"), + path("buttons", view=buttons_view, name="buttons"), + path("cards", view=cards_view, name="cards"), + path("carousel", view=carousel_view, name="carousel"), + path("collapse", view=collapse_view, name="collapse"), + path("dropdowns", view=dropdowns_view, name="dropdowns"), + path("embed-video", view=embed_video_view, name="embed-video"), + path("grid", view=grid_view, name="grid"), + path("links", view=links_view, name="links"), + path("list-group", view=list_group_view, name="list-group"), + path("modals", view=modals_view, name="modals"), + path("notifications", view=notifications_view, name="notifications"), + path("offcanvas", view=offcanvas_view, name="offcanvas"), + path("placeholders", view=placeholders_view, name="placeholders"), + path("pagination", view=pagination_view, name="pagination"), + path("popovers", view=popovers_view, name="popovers"), + path("progress", view=progress_view, name="progress"), + path("spinners", view=spinners_view, name="spinners"), + path("tabs", view=tabs_view, name="tabs"), + path("tooltips", view=tooltips_view, name="tooltips"), + path("typography", view=typography_view, name="typography"), + path("utilities", view=utilities_view, name="utilities"), + + + # Extended Ui + path("extended-dragula", view=extended_dragula_view, name="extended-dragula"), + path( + "extended-range-slider", + view=extended_range_slider_view, + name="extended-range-slider", + ), + path("extended-ratings", view=extended_ratings_view, name="extended-ratings"), + path("extended-scrollbar", view=extended_scrollbar_view, name="extended-scrollbar"), + path("extended-scrollspy", view=extended_scrollspy_view, name="extended-scrollspy"), + + + # Widgets + path("widgets", view=widgets_view, name="widgets"), + + + # Icons + path("icons-remixicons", view=icons_remixicons_view, name="icons-remixicons"), + path("icons-bootstrap", view=icons_bootstrap_view, name="icons-bootstrap"), + path("icons-material-symbol", view=icons_material_view, name="icons-material"), + + + # Charts + # Apex + path("apex-area", view=apex_area_view, name="apex-area"), + path("apex-bar", view=apex_bar_view, name="apex-bar"), + path("apex-bubble", view=apex_bubble_view, name="apex-bubble"), + path("apex-candlestick", view=apex_candlestick_view, name="apex-candlestick"), + path("apex-column", view=apex_column_view, name="apex-column"), + path("apex-heatmap", view=apex_heatmap_view, name="apex-heatmap"), + path("apex-line", view=apex_line_view, name="apex-line"), + path("apex-mixed", view=apex_mixed_view, name="apex-mixed"), + path("apex-timeline", view=apex_timeline_view, name="apex-timeline"), + path("apex-boxplot", view=apex_boxplot_view, name="apex-boxplot"), + path("apex-treemap", view=apex_treemap_view, name="apex-treemap"), + path("apex-pie", view=apex_pie_view, name="apex-pie"), + path("apex-radar", view=apex_radar_view, name="apex-radar"), + path("apex-radialbar", view=apex_radialbar_view, name="apex-radialbar"), + path("apex-scatter", view=apex_scatter_view, name="apex-scatter"), + path("apex-polar-area", view=apex_polar_area_view, name="apex-polar-area"), + path("apex-sparklines", view=apex_sparklines_view, name="apex-sparklines"), + # ChartJs + path("chartjs-area", view=chartjs_area_view, name="chartjs-area"), + path("chartjs-bar", view=chartjs_bar_view, name="chartjs-bar"), + path("chartjs-line", view=chartjs_line_view, name="chartjs-line"), + path("chartjs-other", view=chartjs_other_view, name="chartjs-other"), + + + # Forms + path("form-elements", view=form_elements_view, name="form-elements"), + path("form-advanced", view=form_advanced_view, name="form-advanced"), + path("form-validation", view=form_validation_view, name="form-validation"), + path("form-wizard", view=form_wizard_view, name="form-wizard"), + path("form-fileuploads", view=form_fileuploads_view, name="form-fileuploads"), + path("form-editors", view=form_editors_view, name="form-editors"), + + + # Tables + path("tables-basic", view=tables_basic_view, name="tables-basic"), + path("tables-datatable", view=tables_datatable_view, name="tables-datatable"), + + + # Maps + path("google-map", view=google_map_view, name="google-map"), + path("vector-map", view=vector_map_view, name="vector-map"), +] diff --git a/pxy_dashboard/components/views.py b/pxy_dashboard/components/views.py new file mode 100644 index 0000000..c54864d --- /dev/null +++ b/pxy_dashboard/components/views.py @@ -0,0 +1,193 @@ +from django.views.generic.base import TemplateView +from django.contrib.auth.mixins import LoginRequiredMixin + +class ComponentView(LoginRequiredMixin,TemplateView): + pass + + +# Base Ui +accordions_view = ComponentView.as_view( + template_name="components/base-ui/accordions.html" +) +alerts_view = ComponentView.as_view(template_name="components/base-ui/alerts.html") +avatars_view = ComponentView.as_view(template_name="components/base-ui/avatars.html") +badges_view = ComponentView.as_view(template_name="components/base-ui/badges.html") +breadcrumb_view = ComponentView.as_view( + template_name="components/base-ui/breadcrumb.html" +) +buttons_view = ComponentView.as_view(template_name="components/base-ui/buttons.html") +cards_view = ComponentView.as_view(template_name="components/base-ui/cards.html") +carousel_view = ComponentView.as_view(template_name="components/base-ui/carousel.html") +collapse_view = ComponentView.as_view(template_name="components/base-ui/collapse.html") +dropdowns_view = ComponentView.as_view( + template_name="components/base-ui/dropdowns.html" +) +embed_video_view = ComponentView.as_view( + template_name="components/base-ui/embed-video.html" +) +grid_view = ComponentView.as_view(template_name="components/base-ui/grid.html") +links_view = ComponentView.as_view(template_name="components/base-ui/links.html") +list_group_view = ComponentView.as_view( + template_name="components/base-ui/list-group.html" +) +modals_view = ComponentView.as_view(template_name="components/base-ui/modals.html") +notifications_view = ComponentView.as_view( + template_name="components/base-ui/notifications.html" +) +offcanvas_view = ComponentView.as_view( + template_name="components/base-ui/offcanvas.html" +) +placeholders_view = ComponentView.as_view( + template_name="components/base-ui/placeholders.html" +) +pagination_view = ComponentView.as_view( + template_name="components/base-ui/pagination.html" +) +popovers_view = ComponentView.as_view(template_name="components/base-ui/popovers.html") +progress_view = ComponentView.as_view(template_name="components/base-ui/progress.html") +spinners_view = ComponentView.as_view(template_name="components/base-ui/spinners.html") +tabs_view = ComponentView.as_view(template_name="components/base-ui/tabs.html") +tooltips_view = ComponentView.as_view(template_name="components/base-ui/tooltips.html") +typography_view = ComponentView.as_view( + template_name="components/base-ui/typography.html" +) +utilities_view = ComponentView.as_view( + template_name="components/base-ui/utilities.html" +) + +# Extended Ui +extended_dragula_view = ComponentView.as_view( + template_name="components/extended-ui/extended-dragula.html" +) +extended_range_slider_view = ComponentView.as_view( + template_name="components/extended-ui/extended-range-slider.html" +) +extended_ratings_view = ComponentView.as_view( + template_name="components/extended-ui/extended-ratings.html" +) +extended_scrollbar_view = ComponentView.as_view( + template_name="components/extended-ui/extended-scrollbar.html" +) +extended_scrollspy_view = ComponentView.as_view( + template_name="components/extended-ui/extended-scrollspy.html" +) + +# Widgets +widgets_view = ComponentView.as_view(template_name="components/widgets/widgets.html") + +# Icons +icons_remixicons_view = ComponentView.as_view( + template_name="components/icons/icons-remixicons.html" +) +icons_bootstrap_view = ComponentView.as_view( + template_name="components/icons/icons-bootstrap.html" +) +icons_material_view = ComponentView.as_view( + template_name="components/icons/icons-material-symbol.html" +) + +# Charts +# Apex +apex_area_view = ComponentView.as_view( + template_name="components/charts/apex-charts/apex-area.html" +) +apex_bar_view = ComponentView.as_view( + template_name="components/charts/apex-charts/apex-bar.html" +) +apex_bubble_view = ComponentView.as_view( + template_name="components/charts/apex-charts/apex-bubble.html" +) +apex_candlestick_view = ComponentView.as_view( + template_name="components/charts/apex-charts/apex-candlestick.html" +) +apex_column_view = ComponentView.as_view( + template_name="components/charts/apex-charts/apex-column.html" +) +apex_heatmap_view = ComponentView.as_view( + template_name="components/charts/apex-charts/apex-heatmap.html" +) +apex_line_view = ComponentView.as_view( + template_name="components/charts/apex-charts/apex-line.html" +) +apex_mixed_view = ComponentView.as_view( + template_name="components/charts/apex-charts/apex-mixed.html" +) +apex_timeline_view = ComponentView.as_view( + template_name="components/charts/apex-charts/apex-timeline.html" +) +apex_boxplot_view = ComponentView.as_view( + template_name="components/charts/apex-charts/apex-boxplot.html" +) +apex_treemap_view = ComponentView.as_view( + template_name="components/charts/apex-charts/apex-treemap.html" +) +apex_pie_view = ComponentView.as_view( + template_name="components/charts/apex-charts/apex-pie.html" +) +apex_radar_view = ComponentView.as_view( + template_name="components/charts/apex-charts/apex-radar.html" +) +apex_radialbar_view = ComponentView.as_view( + template_name="components/charts/apex-charts/apex-radialbar.html" +) +apex_scatter_view = ComponentView.as_view( + template_name="components/charts/apex-charts/apex-scatter.html" +) +apex_polar_area_view = ComponentView.as_view( + template_name="components/charts/apex-charts/apex-polar-area.html" +) +apex_sparklines_view = ComponentView.as_view( + template_name="components/charts/apex-charts/apex-sparklines.html" +) +# ChartJs +chartjs_area_view = ComponentView.as_view( + template_name="components/charts/chartjs/chartjs-area.html" +) +chartjs_bar_view = ComponentView.as_view( + template_name="components/charts/chartjs/chartjs-bar.html" +) +chartjs_line_view = ComponentView.as_view( + template_name="components/charts/chartjs/chartjs-line.html" +) +chartjs_other_view = ComponentView.as_view( + template_name="components/charts/chartjs/chartjs-other.html" +) + + +# Forms +form_elements_view = ComponentView.as_view( + template_name="components/forms/form-elements.html" +) +form_advanced_view = ComponentView.as_view( + template_name="components/forms/form-advanced.html" +) +form_validation_view = ComponentView.as_view( + template_name="components/forms/form-validation.html" +) +form_wizard_view = ComponentView.as_view( + template_name="components/forms/form-wizard.html" +) +form_fileuploads_view = ComponentView.as_view( + template_name="components/forms/form-fileuploads.html" +) +form_editors_view = ComponentView.as_view( + template_name="components/forms/form-editors.html" +) + + +# Tables +tables_basic_view = ComponentView.as_view( + template_name="components/tables/tables-basic.html" +) +tables_datatable_view = ComponentView.as_view( + template_name="components/tables/tables-datatable.html" +) + + +# Maps +google_map_view = ComponentView.as_view( + template_name="components/maps/maps-google.html" +) +vector_map_view = ComponentView.as_view( + template_name="components/maps/maps-vector.html" +) diff --git a/pxy_dashboard/custom/__init__.py b/pxy_dashboard/custom/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/pxy_dashboard/custom/admin.py b/pxy_dashboard/custom/admin.py new file mode 100644 index 0000000..ea5d68b --- /dev/null +++ b/pxy_dashboard/custom/admin.py @@ -0,0 +1,3 @@ +from django.contrib import admin + +# Register your models here. diff --git a/pxy_dashboard/custom/apps.py b/pxy_dashboard/custom/apps.py new file mode 100644 index 0000000..bf2a99e --- /dev/null +++ b/pxy_dashboard/custom/apps.py @@ -0,0 +1,6 @@ +from django.apps import AppConfig + +class CustomConfig(AppConfig): + default_auto_field = 'django.db.models.BigAutoField' + name = 'pxy_dashboard.custom' + diff --git a/pxy_dashboard/custom/models.py b/pxy_dashboard/custom/models.py new file mode 100644 index 0000000..fd18c6e --- /dev/null +++ b/pxy_dashboard/custom/models.py @@ -0,0 +1,3 @@ +from django.db import models + +# Create your models here. diff --git a/pxy_dashboard/custom/tests.py b/pxy_dashboard/custom/tests.py new file mode 100644 index 0000000..de8bdc0 --- /dev/null +++ b/pxy_dashboard/custom/tests.py @@ -0,0 +1,3 @@ +from django.test import TestCase + +# Create your tests here. diff --git a/pxy_dashboard/custom/urls.py b/pxy_dashboard/custom/urls.py new file mode 100644 index 0000000..3df7f05 --- /dev/null +++ b/pxy_dashboard/custom/urls.py @@ -0,0 +1,34 @@ +from django.urls import path +from pxy_dashboard.custom.views import pages_profile_view,pages_invoice_view,pages_faq_view,pages_pricing_view,pages_maintenance_view,pages_starter_view,pages_preloader_view,pages_timeline_view,auth_login_view,auth_login2_view,auth_register_view,auth_register2_view,auth_logout_view,auth_logout2_view,auth_recoverpw_view,auth_recoverpw2_view,auth_lock_screen_view,auth_lock_screen2_view,auth_confirm_mail_view,auth_confirm_mail2_view,error_404_view,error_404_alt_view,error_500_view +app_name = "custom" +urlpatterns = [ + + # Pages + path("profile", view=pages_profile_view, name="profile"), + path("invoice", view=pages_invoice_view, name="invoice"), + path("faq", view=pages_faq_view, name="faq"), + path("pricing", view=pages_pricing_view, name="pricing"), + path("maintenance", view=pages_maintenance_view, name="maintenance"), + path("starter-page", view=pages_starter_view, name="starter"), + path("preloader", view=pages_preloader_view, name="preloader"), + path("timeline", view=pages_timeline_view, name="timeline"), + + # Auth Pages + path("login", view=auth_login_view, name="login"), + path("login-2", view=auth_login2_view, name="login-2"), + path("register", view=auth_register_view, name="register"), + path("register-2", view=auth_register2_view, name="register-2"), + path("logout", view=auth_logout_view, name="logout"), + path("logout-2", view=auth_logout2_view, name="logout-2"), + path("recoverpw", view=auth_recoverpw_view, name="recoverpw"), + path("recoverpw-2", view=auth_recoverpw2_view, name="recoverpw-2"), + path("lock-screen", view=auth_lock_screen_view, name="lock-screen"), + path("lock-screen-2", view=auth_lock_screen2_view, name="lock-screen-2"), + path("confirm-mail", view=auth_confirm_mail_view, name="confirm-mail"), + path("confirm-mail-2", view=auth_confirm_mail2_view, name="confirm-mail-2"), + + # Error Pages + path("error-404", view=error_404_view, name="error-404"), + path("error-404-alt", view=error_404_alt_view, name="error-404-alt"), + path("error-500", view=error_500_view, name="error-500"), +] diff --git a/pxy_dashboard/custom/views.py b/pxy_dashboard/custom/views.py new file mode 100644 index 0000000..edf506d --- /dev/null +++ b/pxy_dashboard/custom/views.py @@ -0,0 +1,34 @@ +from django.views.generic.base import TemplateView +from django.contrib.auth.mixins import LoginRequiredMixin + +class CustomView(LoginRequiredMixin,TemplateView): + pass + +#Pages +pages_profile_view = CustomView.as_view(template_name="custom/pages/pages-profile.html") +pages_invoice_view = CustomView.as_view(template_name="custom/pages/pages-invoice.html") +pages_faq_view = CustomView.as_view(template_name="custom/pages/pages-faq.html") +pages_pricing_view = CustomView.as_view(template_name="custom/pages/pages-pricing.html") +pages_maintenance_view = CustomView.as_view(template_name="custom/pages/pages-maintenance.html") +pages_starter_view = CustomView.as_view(template_name="custom/pages/pages-starter.html") +pages_preloader_view = CustomView.as_view(template_name="custom/pages/pages-preloader.html") +pages_timeline_view = CustomView.as_view(template_name="custom/pages/pages-timeline.html") + +# Auth Pages +auth_login_view = CustomView.as_view(template_name="custom/auth-pages/auth-login.html") +auth_login2_view = CustomView.as_view(template_name="custom/auth-pages/auth-login-2.html") +auth_register_view = CustomView.as_view(template_name="custom/auth-pages/auth-register.html") +auth_register2_view = CustomView.as_view(template_name="custom/auth-pages/auth-register-2.html") +auth_logout_view = CustomView.as_view(template_name="custom/auth-pages/auth-logout.html") +auth_logout2_view = CustomView.as_view(template_name="custom/auth-pages/auth-logout-2.html") +auth_recoverpw_view = CustomView.as_view(template_name="custom/auth-pages/auth-recoverpw.html") +auth_recoverpw2_view = CustomView.as_view(template_name="custom/auth-pages/auth-recoverpw-2.html") +auth_lock_screen_view = CustomView.as_view(template_name="custom/auth-pages/auth-lock-screen.html") +auth_lock_screen2_view = CustomView.as_view(template_name="custom/auth-pages/auth-lock-screen-2.html") +auth_confirm_mail_view = CustomView.as_view(template_name="custom/auth-pages/auth-confirm-mail.html") +auth_confirm_mail2_view = CustomView.as_view(template_name="custom/auth-pages/auth-confirm-mail-2.html") + +# Error Pages +error_404_view = CustomView.as_view(template_name="custom/error-pages/error-404.html") +error_404_alt_view = CustomView.as_view(template_name="custom/error-pages/error-404-alt.html") +error_500_view = CustomView.as_view(template_name="custom/error-pages/error-500.html") \ No newline at end of file diff --git a/pxy_dashboard/layouts/__init__.py b/pxy_dashboard/layouts/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/pxy_dashboard/layouts/admin.py b/pxy_dashboard/layouts/admin.py new file mode 100644 index 0000000..ea5d68b --- /dev/null +++ b/pxy_dashboard/layouts/admin.py @@ -0,0 +1,3 @@ +from django.contrib import admin + +# Register your models here. diff --git a/pxy_dashboard/layouts/apps.py b/pxy_dashboard/layouts/apps.py new file mode 100644 index 0000000..81a6b82 --- /dev/null +++ b/pxy_dashboard/layouts/apps.py @@ -0,0 +1,6 @@ +from django.apps import AppConfig + + +class LayoutsConfig(AppConfig): + default_auto_field = 'django.db.models.BigAutoField' + name = 'pxy_dashboard.layouts' diff --git a/pxy_dashboard/layouts/models.py b/pxy_dashboard/layouts/models.py new file mode 100644 index 0000000..fd18c6e --- /dev/null +++ b/pxy_dashboard/layouts/models.py @@ -0,0 +1,3 @@ +from django.db import models + +# Create your models here. diff --git a/pxy_dashboard/layouts/tests.py b/pxy_dashboard/layouts/tests.py new file mode 100644 index 0000000..de8bdc0 --- /dev/null +++ b/pxy_dashboard/layouts/tests.py @@ -0,0 +1,3 @@ +from django.test import TestCase + +# Create your tests here. diff --git a/pxy_dashboard/layouts/urls.py b/pxy_dashboard/layouts/urls.py new file mode 100644 index 0000000..89aacec --- /dev/null +++ b/pxy_dashboard/layouts/urls.py @@ -0,0 +1,14 @@ +from django.urls import path +from pxy_dashboard.layouts.views import horizontal_view,detached_view,full_view,fullscreen_view,hover_view,compact_view,icon_view + +urlpatterns = [ + + # Layouts + path("horizontal", view=horizontal_view, name="horizontal"), + path("detached", view=detached_view, name="detached"), + path("full", view=full_view, name="full"), + path("fullscreen", view=fullscreen_view, name="fullscreen"), + path("hover", view=hover_view, name="hover"), + path("compact", view=compact_view, name="compact"), + path("icon-view", view=icon_view, name="icon-view"), +] diff --git a/pxy_dashboard/layouts/views.py b/pxy_dashboard/layouts/views.py new file mode 100644 index 0000000..9a3122a --- /dev/null +++ b/pxy_dashboard/layouts/views.py @@ -0,0 +1,14 @@ +from django.views.generic.base import TemplateView +from django.contrib.auth.mixins import LoginRequiredMixin + +class LayoutView(LoginRequiredMixin,TemplateView): + pass + +# Layouts +horizontal_view = LayoutView.as_view(template_name="custom/layouts/horizontal.html") +detached_view = LayoutView.as_view(template_name="custom/layouts/detached.html") +full_view = LayoutView.as_view(template_name="custom/layouts/full.html") +fullscreen_view = LayoutView.as_view(template_name="custom/layouts/fullscreen.html") +hover_view = LayoutView.as_view(template_name="custom/layouts/hover.html") +compact_view = LayoutView.as_view(template_name="custom/layouts/compact.html") +icon_view = LayoutView.as_view(template_name="custom/layouts/icon-view.html") diff --git a/pxy_dashboard/migrations/__init__.py b/pxy_dashboard/migrations/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/pxy_dashboard/models.py b/pxy_dashboard/models.py new file mode 100644 index 0000000..71a8362 --- /dev/null +++ b/pxy_dashboard/models.py @@ -0,0 +1,3 @@ +from django.db import models + +# Create your models here. diff --git a/pxy_dashboard/static/__init__.py b/pxy_dashboard/static/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/pxy_dashboard/static/dashboard/__init__.py b/pxy_dashboard/static/dashboard/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/pxy_dashboard/static/dashboard/css/__init__.py b/pxy_dashboard/static/dashboard/css/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/pxy_dashboard/static/dashboard/css/app-rtl.css b/pxy_dashboard/static/dashboard/css/app-rtl.css new file mode 100644 index 0000000..a7e74fd --- /dev/null +++ b/pxy_dashboard/static/dashboard/css/app-rtl.css @@ -0,0 +1,20266 @@ +@charset "UTF-8"; +/* +Template Name: Jidox - Responsive Bootstrap 5 Admin Dashboard +Version: 1.0.0 +Author: CoderThemes +Email: support@coderthemes.com +File: Main Css File +*/ +@import url("https://fonts.googleapis.com/css2?family=Roboto:wght@300;400;500;700&display=swap"); +:root { + --ct-logo-lg-height: 26px; + --ct-logo-sm-height: 28px; + --ct-leftbar-width: 240px; + --ct-leftbar-width-md: 160px; + --ct-leftbar-width-sm: 70px; + --ct-leftbar-condensed-height: 1500px; + --ct-topbar-height: 70px; + --ct-menu-item-icon-size: 1.1rem; + --ct-menu-item-icon-width: 30px; + --ct-menu-item-font-size: 0.875rem; + --ct-menu-item-padding-x: 12px; + --ct-menu-item-padding-y: 8px; + --ct-footer-height: 50px; + --ct-theme-card-border-width: 0px; +} + +html[data-menu-color=light] { + --ct-menu-bg: #ffffff; + --ct-menu-item-color: #49526b; + --ct-menu-item-hover-color: #4254ba; + --ct-menu-item-active-color: #4254ba; + --ct-menu-condensed-link-bg: #313a46; + --ct-help-box-bg: #4254ba; +} + +html[data-menu-color=dark] { + --ct-menu-bg: #212529; + --ct-menu-item-color: #8391a2; + --ct-menu-item-hover-color: #bccee4; + --ct-menu-item-active-color: #ffffff; + --ct-menu-condensed-link-bg: #313a46; + --ct-help-box-bg: rgba(255, 255, 255, 0.07); +} + +html[data-menu-color=brand] { + --ct-menu-bg: linear-gradient(135deg, #6379c3 0%, #4254ba 60%); + --ct-menu-item-color: #cedce4; + --ct-menu-item-hover-color: #ffffff; + --ct-menu-item-active-color: #ffffff; + --ct-menu-condensed-link-bg: #313a46; + --ct-help-box-bg: rgba(255, 255, 255, 0.07); +} + +html[data-bs-theme=dark][data-menu-color=light], +html[data-bs-theme=dark][data-menu-color=dark] { + --ct-menu-bg: #313a46; + --ct-menu-item-color: #8391a2; + --ct-menu-item-hover-color: #bccee4; + --ct-menu-item-active-color: #ffffff; + --ct-menu-condensed-link-bg: #313a46; + --ct-help-box-bg: rgba(255, 255, 255, 0.07); +} + +html[data-topbar-color=light] { + --ct-topbar-bg: #ffffff; + --ct-topbar-item-color: #6c757d; + --ct-topbar-item-hover-color: #4254ba; + --ct-topbar-search-bg: #f3f3f8; + --ct-topbar-user-bg: #fbfcfc; + --ct-topbar-user-border: #eef2f7; +} + +html[data-topbar-color=dark] { + --ct-topbar-bg: #313a46; + --ct-topbar-item-color: #8391a2; + --ct-topbar-item-hover-color: #bccee4; + --ct-topbar-search-bg: #464f5b; + --ct-topbar-user-bg: #3c4655; + --ct-topbar-user-border: #414d5d; +} + +html[data-topbar-color=brand] { + --ct-topbar-bg: #4254ba; + --ct-topbar-item-color: rgba(255, 255, 255, 0.7); + --ct-topbar-item-hover-color: #ffffff; + --ct-topbar-search-bg: rgba(255, 255, 255, 0.1); + --ct-topbar-user-bg: rgba(255, 255, 255, 0.1); + --ct-topbar-user-border: rgba(255, 255, 255, 0.15); +} + +html[data-bs-theme=dark][data-topbar-color=light], +html[data-bs-theme=dark][data-topbar-color=dark] { + --ct-topbar-bg: #2f3742; + --ct-topbar-item-color: #8391a2; + --ct-topbar-item-hover-color: #bccee4; + --ct-topbar-search-bg: #363f4a; + --ct-topbar-user-bg: #363f4a; + --ct-topbar-user-border: #414d5d; +} + +.border-dashed { + border-style: dashed !important; +} + +.bg-pink-subtle { + background-color: var(--ct-pink-bg-subtle) !important; +} + +.bg-purple-subtle { + background-color: var(--ct-purple-bg-subtle) !important; +} + +/*! + * Bootstrap v5.3.0 (https://getbootstrap.com/) + * Copyright 2011-2023 The Bootstrap Authors + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) + */ +:root, +[data-bs-theme=light] { + --ct-blue: #4254ba; + --ct-indigo: #4254ba; + --ct-purple: #815ac5; + --ct-pink: #ff679b; + --ct-red: #f7473a; + --ct-orange: #fd7e14; + --ct-yellow: #fec20d; + --ct-green: #51b355; + --ct-teal: #17a497; + --ct-cyan: #299bf6; + --ct-black: #000; + --ct-white: #fff; + --ct-gray: #6c757d; + --ct-gray-dark: #343a40; + --ct-gray-100: #f8f9fa; + --ct-gray-200: #f2f2f7; + --ct-gray-300: #dee2e6; + --ct-gray-400: #ced4da; + --ct-gray-500: #adb5bd; + --ct-gray-600: #6c757d; + --ct-gray-700: #49526b; + --ct-gray-800: #343a40; + --ct-gray-900: #212529; + --ct-primary: #4254ba; + --ct-secondary: #6c757d; + --ct-success: #17a497; + --ct-info: #299bf6; + --ct-warning: #fec20d; + --ct-danger: #f7473a; + --ct-light: #f2f2f7; + --ct-dark: #49526b; + --ct-purple: #815ac5; + --ct-pink: #ff679b; + --ct-primary-rgb: 66, 84, 186; + --ct-secondary-rgb: 108, 117, 125; + --ct-success-rgb: 23, 164, 151; + --ct-info-rgb: 41, 155, 246; + --ct-warning-rgb: 254, 194, 13; + --ct-danger-rgb: 247, 71, 58; + --ct-light-rgb: 242, 242, 247; + --ct-dark-rgb: 73, 82, 107; + --ct-purple-rgb: 129, 90, 197; + --ct-pink-rgb: 255, 103, 155; + --ct-primary-text-emphasis: #3b4ca7; + --ct-secondary-text-emphasis: #616971; + --ct-success-text-emphasis: #159488; + --ct-info-text-emphasis: #258cdd; + --ct-warning-text-emphasis: #e5af0c; + --ct-danger-text-emphasis: #de4034; + --ct-pink-text-emphasis: #e65d8c; + --ct-purple-text-emphasis: #7451b1; + --ct-light-text-emphasis: #ced4da; + --ct-dark-text-emphasis: #49526b; + --ct-primary-bg-subtle: #eceef8; + --ct-secondary-bg-subtle: #f8f9fa; + --ct-success-bg-subtle: #dcf0dd; + --ct-info-bg-subtle: #d4ebfd; + --ct-warning-bg-subtle: #fff3cf; + --ct-danger-bg-subtle: #fddad8; + --ct-pink-bg-subtle: #ffe1eb; + --ct-purple-bg-subtle: #e6def3; + --ct-light-bg-subtle: #fcfcfd; + --ct-dark-bg-subtle: #ced4da; + --ct-primary-border-subtle: #b3bbe3; + --ct-secondary-border-subtle: #f2f2f7; + --ct-success-border-subtle: #b9e1bb; + --ct-info-border-subtle: #a9d7fb; + --ct-warning-border-subtle: #ffe79e; + --ct-danger-border-subtle: #fcb5b0; + --ct-pink-border-subtle: #ffc2d7; + --ct-purple-border-subtle: #cdbde8; + --ct-light-border-subtle: #f2f2f7; + --ct-dark-border-subtle: #adb5bd; + --ct-white-rgb: 255, 255, 255; + --ct-black-rgb: 0, 0, 0; + --ct-font-sans-serif: "Roboto", sans-serif; + --ct-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; + --ct-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0)); + --ct-body-font-family: var(--ct-font-sans-serif); + --ct-body-font-size: 0.875rem; + --ct-body-font-weight: 400; + --ct-body-line-height: 1.5; + --ct-body-color: #6c757d; + --ct-body-color-rgb: 108, 117, 125; + --ct-body-bg: #eeeef1; + --ct-body-bg-rgb: 238, 238, 241; + --ct-emphasis-color: #000; + --ct-emphasis-color-rgb: 0, 0, 0; + --ct-secondary-color: rgba(108, 117, 125, 0.75); + --ct-secondary-color-rgb: 108, 117, 125; + --ct-secondary-bg: #fff; + --ct-secondary-bg-rgb: 255, 255, 255; + --ct-tertiary-color: #313539; + --ct-tertiary-color-rgb: 49, 53, 57; + --ct-tertiary-bg: #f8f9fa; + --ct-tertiary-bg-rgb: 248, 249, 250; + --ct-heading-color: inherit; + --ct-link-color: #4254ba; + --ct-link-color-rgb: 66, 84, 186; + --ct-link-decoration: none; + --ct-link-hover-color: #38479e; + --ct-link-hover-color-rgb: 56, 71, 158; + --ct-code-color: #299bf6; + --ct-highlight-bg: #fff3cf; + --ct-border-width: 1px; + --ct-border-style: solid; + --ct-border-color: #dee2e6; + --ct-border-color-translucent: rgba(0, 0, 0, 0.175); + --ct-border-radius: 0.15rem; + --ct-border-radius-sm: 0.25rem; + --ct-border-radius-lg: 0.5rem; + --ct-border-radius-xl: 1rem; + --ct-border-radius-xxl: 2rem; + --ct-border-radius-2xl: var(--ct-border-radius-xxl); + --ct-border-radius-pill: 50rem; + --ct-box-shadow: 2px 2px 3px rgba(27, 23, 30, 0.1); + --ct-box-shadow-sm: 0 0.125rem 0.25rem rgba(var(--ct-body-color-rgb), 0.15); + --ct-box-shadow-lg: 0 2px 5px 0 rgba(27, 23, 30, 0.3); + --ct-box-shadow-inset: inset 0 1px 2px rgba(var(--ct-body-color-rgb), 0.075); + --ct-focus-ring-width: 0.25rem; + --ct-focus-ring-opacity: 0.25; + --ct-focus-ring-color: rgba(66, 84, 186, 0.25); + --ct-form-valid-color: #17a497; + --ct-form-valid-border-color: #17a497; + --ct-form-invalid-color: #f7473a; + --ct-form-invalid-border-color: #f7473a; +} + +[data-bs-theme=dark] { + color-scheme: dark; + --ct-body-color: #aab8c5; + --ct-body-color-rgb: 170, 184, 197; + --ct-body-bg: #2d333c; + --ct-body-bg-rgb: 45, 51, 60; + --ct-emphasis-color: #f8f9fa; + --ct-emphasis-color-rgb: 248, 249, 250; + --ct-secondary-color: #8391a2; + --ct-secondary-color-rgb: 131, 145, 162; + --ct-secondary-bg: #313a46; + --ct-secondary-bg-rgb: 49, 58, 70; + --ct-tertiary-color: #f1f1f1; + --ct-tertiary-color-rgb: 241, 241, 241; + --ct-tertiary-bg: #404954; + --ct-tertiary-bg-rgb: 64, 73, 84; + --ct-primary-text-emphasis: #3b4ca7; + --ct-secondary-text-emphasis: #6c757d; + --ct-success-text-emphasis: #49a14d; + --ct-info-text-emphasis: #258cdd; + --ct-warning-text-emphasis: #e5af0c; + --ct-danger-text-emphasis: #de4034; + --ct-pink-text-emphasis: #e65d8c; + --ct-purple-text-emphasis: #7451b1; + --ct-light-text-emphasis: #6c757d; + --ct-dark-text-emphasis: #6c757d; + --ct-primary-bg-subtle: rgba(var(--ct-primary-rgb), 0.2); + --ct-secondary-bg-subtle: rgba(var(--ct-secondary-rgb), 0.2); + --ct-success-bg-subtle: rgba(var(--ct-success-rgb), 0.2); + --ct-info-bg-subtle: rgba(var(--ct-info-rgb), 0.2); + --ct-warning-bg-subtle: rgba(var(--ct-warning-rgb), 0.2); + --ct-danger-bg-subtle: rgba(var(--ct-danger-rgb), 0.2); + --ct-pink-bg-subtle: rgba(var(--ct-pink-rgb), 0.2); + --ct-purple-bg-subtle: rgba(var(--ct-purple-rgb), 0.2); + --ct-light-bg-subtle: rgba(var(--ct-light-rgb), 0.2); + --ct-dark-bg-subtle: rgba(var(--ct-dark-rgb), 0.2); + --ct-primary-border-subtle: #283270; + --ct-secondary-border-subtle: #49526b; + --ct-success-border-subtle: #316b33; + --ct-info-border-subtle: #103e62; + --ct-warning-border-subtle: #664e05; + --ct-danger-border-subtle: #942b23; + --ct-pink-border-subtle: #993e5d; + --ct-purple-border-subtle: #4d3676; + --ct-light-border-subtle: #49526b; + --ct-dark-border-subtle: #343a40; + --ct-heading-color: inherit; + --ct-link-color: #4254ba; + --ct-link-hover-color: #3b4ca7; + --ct-link-color-rgb: 66, 84, 186; + --ct-link-hover-color-rgb: 59, 76, 167; + --ct-code-color: #299bf6; + --ct-border-color: #464f5b; + --ct-border-color-translucent: #464f5b; + --ct-form-valid-color: #97d199; + --ct-form-valid-border-color: #97d199; + --ct-form-invalid-color: #fa9189; + --ct-form-invalid-border-color: #fa9189; +} + +*, +*::before, +*::after { + -webkit-box-sizing: border-box; + box-sizing: border-box; +} + +@media (prefers-reduced-motion: no-preference) { + :root { + scroll-behavior: smooth; + } +} + +body { + margin: 0; + font-family: var(--ct-body-font-family); + font-size: var(--ct-body-font-size); + font-weight: var(--ct-body-font-weight); + line-height: var(--ct-body-line-height); + color: var(--ct-body-color); + text-align: var(--ct-body-text-align); + background-color: var(--ct-body-bg); + -webkit-text-size-adjust: 100%; + -webkit-tap-highlight-color: rgba(0, 0, 0, 0); +} + +hr { + margin: 0.9375rem 0; + color: inherit; + border: 0; + border-top: var(--ct-border-width) solid var(--ct-border-color); + opacity: 1; +} + +h6, .h6, h5, .h5, h4, .h4, h3, .h3, h2, .h2, h1, .h1 { + margin-top: 0; + margin-bottom: 10px; + font-weight: 500; + line-height: 1.1; + color: var(--ct-heading-color); +} + +h1, .h1 { + font-size: calc(1.34375rem + 1.125vw); +} +@media (min-width: 1200px) { + h1, .h1 { + font-size: 2.1875rem; + } +} + +h2, .h2 { + font-size: calc(1.307rem + 0.684vw); +} +@media (min-width: 1200px) { + h2, .h2 { + font-size: 1.82rem; + } +} + +h3, .h3 { + font-size: calc(1.271125rem + 0.2535vw); +} +@media (min-width: 1200px) { + h3, .h3 { + font-size: 1.46125rem; + } +} + +h4, .h4 { + font-size: 1.09375rem; +} + +h5, .h5 { + font-size: 0.91rem; +} + +h6, .h6 { + font-size: 0.74375rem; +} + +p { + margin-top: 0; + margin-bottom: 1rem; +} + +abbr[title] { + -webkit-text-decoration: underline dotted; + text-decoration: underline dotted; + cursor: help; + -webkit-text-decoration-skip-ink: none; + text-decoration-skip-ink: none; +} + +address { + margin-bottom: 1rem; + font-style: normal; + line-height: inherit; +} + +ol, +ul { + padding-right: 2rem; +} + +ol, +ul, +dl { + margin-top: 0; + margin-bottom: 1rem; +} + +ol ol, +ul ul, +ol ul, +ul ol { + margin-bottom: 0; +} + +dt { + font-weight: 700; +} + +dd { + margin-bottom: 0.5rem; + margin-right: 0; +} + +blockquote { + margin: 0 0 1rem; +} + +b, +strong { + font-weight: bolder; +} + +small, .small { + font-size: 0.75rem; +} + +mark, .mark { + padding: 0.1875em; + background-color: var(--ct-highlight-bg); +} + +sub, +sup { + position: relative; + font-size: 0.75em; + line-height: 0; + vertical-align: baseline; +} + +sub { + bottom: -0.25em; +} + +sup { + top: -0.5em; +} + +a { + color: rgba(var(--ct-link-color-rgb), var(--ct-link-opacity, 1)); + text-decoration: none; +} +a:hover { + --ct-link-color-rgb: var(--ct-link-hover-color-rgb); +} + +a:not([href]):not([class]), a:not([href]):not([class]):hover { + color: inherit; + text-decoration: none; +} + +pre, +code, +kbd, +samp { + font-family: var(--ct-font-monospace); + font-size: 1em; +} + +pre { + display: block; + margin-top: 0; + margin-bottom: 1rem; + overflow: auto; + font-size: 0.75rem; +} +pre code { + font-size: inherit; + color: inherit; + word-break: normal; +} + +code { + font-size: 0.75rem; + color: var(--ct-code-color); + word-wrap: break-word; +} +a > code { + color: inherit; +} + +kbd { + padding: 0.2rem 0.4rem; + font-size: 0.75rem; + color: var(--ct-body-bg); + background-color: var(--ct-body-color); + border-radius: 0.25rem; +} +kbd kbd { + padding: 0; + font-size: 1em; +} + +figure { + margin: 0 0 1rem; +} + +img, +svg { + vertical-align: middle; +} + +table { + caption-side: bottom; + border-collapse: collapse; +} + +caption { + padding-top: 0.75rem; + padding-bottom: 0.75rem; + color: var(--ct-secondary-color); + text-align: right; +} + +th { + text-align: inherit; + text-align: -webkit-match-parent; +} + +thead, +tbody, +tfoot, +tr, +td, +th { + border-color: inherit; + border-style: solid; + border-width: 0; +} + +label { + display: inline-block; +} + +button { + border-radius: 0; +} + +button:focus:not(:focus-visible) { + outline: 0; +} + +input, +button, +select, +optgroup, +textarea { + margin: 0; + font-family: inherit; + font-size: inherit; + line-height: inherit; +} + +button, +select { + text-transform: none; +} + +[role=button] { + cursor: pointer; +} + +select { + word-wrap: normal; +} +select:disabled { + opacity: 1; +} + +[list]:not([type=date]):not([type=datetime-local]):not([type=month]):not([type=week]):not([type=time])::-webkit-calendar-picker-indicator { + display: none !important; +} + +button, +[type=button], +[type=reset], +[type=submit] { + -webkit-appearance: button; +} +button:not(:disabled), +[type=button]:not(:disabled), +[type=reset]:not(:disabled), +[type=submit]:not(:disabled) { + cursor: pointer; +} + +::-moz-focus-inner { + padding: 0; + border-style: none; +} + +textarea { + resize: vertical; +} + +fieldset { + min-width: 0; + padding: 0; + margin: 0; + border: 0; +} + +legend { + float: right; + width: 100%; + padding: 0; + margin-bottom: 0.5rem; + font-size: calc(1.275rem + 0.3vw); + line-height: inherit; +} +@media (min-width: 1200px) { + legend { + font-size: 1.5rem; + } +} +legend + * { + clear: right; +} + +::-webkit-datetime-edit-fields-wrapper, +::-webkit-datetime-edit-text, +::-webkit-datetime-edit-minute, +::-webkit-datetime-edit-hour-field, +::-webkit-datetime-edit-day-field, +::-webkit-datetime-edit-month-field, +::-webkit-datetime-edit-year-field { + padding: 0; +} + +::-webkit-inner-spin-button { + height: auto; +} + +[type=search] { + outline-offset: -2px; + -webkit-appearance: textfield; +} + +[type="tel"], +[type="url"], +[type="email"], +[type="number"] { + direction: ltr; +} +::-webkit-search-decoration { + -webkit-appearance: none; +} + +::-webkit-color-swatch-wrapper { + padding: 0; +} + +::-webkit-file-upload-button { + font: inherit; + -webkit-appearance: button; +} + +::file-selector-button { + font: inherit; + -webkit-appearance: button; +} + +output { + display: inline-block; +} + +iframe { + border: 0; +} + +summary { + display: list-item; + cursor: pointer; +} + +progress { + vertical-align: baseline; +} + +[hidden] { + display: none !important; +} + +.lead { + font-size: 1.09375rem; + font-weight: 300; +} + +.display-1 { + font-size: calc(1.625rem + 4.5vw); + font-weight: 300; + line-height: 1.1; +} +@media (min-width: 1200px) { + .display-1 { + font-size: 5rem; + } +} + +.display-2 { + font-size: calc(1.575rem + 3.9vw); + font-weight: 300; + line-height: 1.1; +} +@media (min-width: 1200px) { + .display-2 { + font-size: 4.5rem; + } +} + +.display-3 { + font-size: calc(1.525rem + 3.3vw); + font-weight: 300; + line-height: 1.1; +} +@media (min-width: 1200px) { + .display-3 { + font-size: 4rem; + } +} + +.display-4 { + font-size: calc(1.475rem + 2.7vw); + font-weight: 300; + line-height: 1.1; +} +@media (min-width: 1200px) { + .display-4 { + font-size: 3.5rem; + } +} + +.display-5 { + font-size: calc(1.425rem + 2.1vw); + font-weight: 300; + line-height: 1.1; +} +@media (min-width: 1200px) { + .display-5 { + font-size: 3rem; + } +} + +.display-6 { + font-size: calc(1.375rem + 1.5vw); + font-weight: 300; + line-height: 1.1; +} +@media (min-width: 1200px) { + .display-6 { + font-size: 2.5rem; + } +} + +.list-unstyled { + padding-right: 0; + list-style: none; +} + +.list-inline { + padding-right: 0; + list-style: none; +} + +.list-inline-item { + display: inline-block; +} +.list-inline-item:not(:last-child) { + margin-left: 0.5rem; +} + +.initialism { + font-size: 0.75rem; + text-transform: uppercase; +} + +.blockquote { + margin-bottom: 1.25rem; + font-size: 1.09375rem; +} +.blockquote > :last-child { + margin-bottom: 0; +} + +.blockquote-footer { + margin-top: -1.25rem; + margin-bottom: 1.25rem; + font-size: 0.75rem; + color: var(--ct-secondary-color); +} +.blockquote-footer::before { + content: "— "; +} + +.img-fluid { + max-width: 100%; + height: auto; +} + +.img-thumbnail { + padding: 0.25rem; + background-color: var(--ct-body-bg); + border: var(--ct-border-width) solid var(--ct-border-color); + border-radius: var(--ct-border-radius); + max-width: 100%; + height: auto; +} + +.figure { + display: inline-block; +} + +.figure-img { + margin-bottom: 0.625rem; + line-height: 1; +} + +.figure-caption { + font-size: 0.75rem; + color: var(--ct-secondary-color); +} + +.container, +.container-fluid, +.container-xxl, +.container-xl, +.container-lg, +.container-md, +.container-sm { + --ct-gutter-x: 0.6rem; + --ct-gutter-y: 0; + width: 100%; + padding-left: calc(var(--ct-gutter-x) * 0.5); + padding-right: calc(var(--ct-gutter-x) * 0.5); + margin-left: auto; + margin-right: auto; +} + +@media (min-width: 576px) { + .container-sm, .container { + max-width: 540px; + } +} +@media (min-width: 768px) { + .container-md, .container-sm, .container { + max-width: 720px; + } +} +@media (min-width: 992px) { + .container-lg, .container-md, .container-sm, .container { + max-width: 960px; + } +} +@media (min-width: 1200px) { + .container-xl, .container-lg, .container-md, .container-sm, .container { + max-width: 1140px; + } +} +@media (min-width: 1400px) { + .container-xxl, .container-xl, .container-lg, .container-md, .container-sm, .container { + max-width: 1320px; + } +} +:root { + --ct-breakpoint-xs: 0; + --ct-breakpoint-sm: 576px; + --ct-breakpoint-md: 768px; + --ct-breakpoint-lg: 992px; + --ct-breakpoint-xl: 1200px; + --ct-breakpoint-xxl: 1400px; +} + +.row { + --ct-gutter-x: 0.6rem; + --ct-gutter-y: 0; + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -ms-flex-wrap: wrap; + flex-wrap: wrap; + margin-top: calc(-1 * var(--ct-gutter-y)); + margin-left: calc(-0.5 * var(--ct-gutter-x)); + margin-right: calc(-0.5 * var(--ct-gutter-x)); +} +.row > * { + -ms-flex-negative: 0; + flex-shrink: 0; + width: 100%; + max-width: 100%; + padding-left: calc(var(--ct-gutter-x) * 0.5); + padding-right: calc(var(--ct-gutter-x) * 0.5); + margin-top: var(--ct-gutter-y); +} + +.col { + -webkit-box-flex: 1; + -ms-flex: 1 0 0%; + flex: 1 0 0%; +} + +.row-cols-auto > * { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: auto; +} + +.row-cols-1 > * { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 100%; +} + +.row-cols-2 > * { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 50%; +} + +.row-cols-3 > * { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 33.3333333333%; +} + +.row-cols-4 > * { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 25%; +} + +.row-cols-5 > * { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 20%; +} + +.row-cols-6 > * { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 16.6666666667%; +} + +.col-auto { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: auto; +} + +.col-1 { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 8.33333333%; +} + +.col-2 { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 16.66666667%; +} + +.col-3 { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 25%; +} + +.col-4 { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 33.33333333%; +} + +.col-5 { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 41.66666667%; +} + +.col-6 { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 50%; +} + +.col-7 { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 58.33333333%; +} + +.col-8 { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 66.66666667%; +} + +.col-9 { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 75%; +} + +.col-10 { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 83.33333333%; +} + +.col-11 { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 91.66666667%; +} + +.col-12 { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 100%; +} + +.offset-1 { + margin-right: 8.33333333%; +} + +.offset-2 { + margin-right: 16.66666667%; +} + +.offset-3 { + margin-right: 25%; +} + +.offset-4 { + margin-right: 33.33333333%; +} + +.offset-5 { + margin-right: 41.66666667%; +} + +.offset-6 { + margin-right: 50%; +} + +.offset-7 { + margin-right: 58.33333333%; +} + +.offset-8 { + margin-right: 66.66666667%; +} + +.offset-9 { + margin-right: 75%; +} + +.offset-10 { + margin-right: 83.33333333%; +} + +.offset-11 { + margin-right: 91.66666667%; +} + +.g-0, +.gx-0 { + --ct-gutter-x: 0; +} + +.g-0, +.gy-0 { + --ct-gutter-y: 0; +} + +.g-1, +.gx-1 { + --ct-gutter-x: 0.3125rem; +} + +.g-1, +.gy-1 { + --ct-gutter-y: 0.3125rem; +} + +.g-2, +.gx-2 { + --ct-gutter-x: 0.625rem; +} + +.g-2, +.gy-2 { + --ct-gutter-y: 0.625rem; +} + +.g-3, +.gx-3 { + --ct-gutter-x: 1.25rem; +} + +.g-3, +.gy-3 { + --ct-gutter-y: 1.25rem; +} + +.g-4, +.gx-4 { + --ct-gutter-x: 1.875rem; +} + +.g-4, +.gy-4 { + --ct-gutter-y: 1.875rem; +} + +.g-5, +.gx-5 { + --ct-gutter-x: 3.75rem; +} + +.g-5, +.gy-5 { + --ct-gutter-y: 3.75rem; +} + +@media (min-width: 576px) { + .col-sm { + -webkit-box-flex: 1; + -ms-flex: 1 0 0%; + flex: 1 0 0%; + } + .row-cols-sm-auto > * { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: auto; + } + .row-cols-sm-1 > * { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 100%; + } + .row-cols-sm-2 > * { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 50%; + } + .row-cols-sm-3 > * { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 33.3333333333%; + } + .row-cols-sm-4 > * { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 25%; + } + .row-cols-sm-5 > * { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 20%; + } + .row-cols-sm-6 > * { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 16.6666666667%; + } + .col-sm-auto { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: auto; + } + .col-sm-1 { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 8.33333333%; + } + .col-sm-2 { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 16.66666667%; + } + .col-sm-3 { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 25%; + } + .col-sm-4 { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 33.33333333%; + } + .col-sm-5 { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 41.66666667%; + } + .col-sm-6 { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 50%; + } + .col-sm-7 { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 58.33333333%; + } + .col-sm-8 { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 66.66666667%; + } + .col-sm-9 { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 75%; + } + .col-sm-10 { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 83.33333333%; + } + .col-sm-11 { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 91.66666667%; + } + .col-sm-12 { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 100%; + } + .offset-sm-0 { + margin-right: 0; + } + .offset-sm-1 { + margin-right: 8.33333333%; + } + .offset-sm-2 { + margin-right: 16.66666667%; + } + .offset-sm-3 { + margin-right: 25%; + } + .offset-sm-4 { + margin-right: 33.33333333%; + } + .offset-sm-5 { + margin-right: 41.66666667%; + } + .offset-sm-6 { + margin-right: 50%; + } + .offset-sm-7 { + margin-right: 58.33333333%; + } + .offset-sm-8 { + margin-right: 66.66666667%; + } + .offset-sm-9 { + margin-right: 75%; + } + .offset-sm-10 { + margin-right: 83.33333333%; + } + .offset-sm-11 { + margin-right: 91.66666667%; + } + .g-sm-0, +.gx-sm-0 { + --ct-gutter-x: 0; + } + .g-sm-0, +.gy-sm-0 { + --ct-gutter-y: 0; + } + .g-sm-1, +.gx-sm-1 { + --ct-gutter-x: 0.3125rem; + } + .g-sm-1, +.gy-sm-1 { + --ct-gutter-y: 0.3125rem; + } + .g-sm-2, +.gx-sm-2 { + --ct-gutter-x: 0.625rem; + } + .g-sm-2, +.gy-sm-2 { + --ct-gutter-y: 0.625rem; + } + .g-sm-3, +.gx-sm-3 { + --ct-gutter-x: 1.25rem; + } + .g-sm-3, +.gy-sm-3 { + --ct-gutter-y: 1.25rem; + } + .g-sm-4, +.gx-sm-4 { + --ct-gutter-x: 1.875rem; + } + .g-sm-4, +.gy-sm-4 { + --ct-gutter-y: 1.875rem; + } + .g-sm-5, +.gx-sm-5 { + --ct-gutter-x: 3.75rem; + } + .g-sm-5, +.gy-sm-5 { + --ct-gutter-y: 3.75rem; + } +} +@media (min-width: 768px) { + .col-md { + -webkit-box-flex: 1; + -ms-flex: 1 0 0%; + flex: 1 0 0%; + } + .row-cols-md-auto > * { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: auto; + } + .row-cols-md-1 > * { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 100%; + } + .row-cols-md-2 > * { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 50%; + } + .row-cols-md-3 > * { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 33.3333333333%; + } + .row-cols-md-4 > * { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 25%; + } + .row-cols-md-5 > * { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 20%; + } + .row-cols-md-6 > * { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 16.6666666667%; + } + .col-md-auto { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: auto; + } + .col-md-1 { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 8.33333333%; + } + .col-md-2 { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 16.66666667%; + } + .col-md-3 { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 25%; + } + .col-md-4 { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 33.33333333%; + } + .col-md-5 { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 41.66666667%; + } + .col-md-6 { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 50%; + } + .col-md-7 { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 58.33333333%; + } + .col-md-8 { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 66.66666667%; + } + .col-md-9 { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 75%; + } + .col-md-10 { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 83.33333333%; + } + .col-md-11 { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 91.66666667%; + } + .col-md-12 { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 100%; + } + .offset-md-0 { + margin-right: 0; + } + .offset-md-1 { + margin-right: 8.33333333%; + } + .offset-md-2 { + margin-right: 16.66666667%; + } + .offset-md-3 { + margin-right: 25%; + } + .offset-md-4 { + margin-right: 33.33333333%; + } + .offset-md-5 { + margin-right: 41.66666667%; + } + .offset-md-6 { + margin-right: 50%; + } + .offset-md-7 { + margin-right: 58.33333333%; + } + .offset-md-8 { + margin-right: 66.66666667%; + } + .offset-md-9 { + margin-right: 75%; + } + .offset-md-10 { + margin-right: 83.33333333%; + } + .offset-md-11 { + margin-right: 91.66666667%; + } + .g-md-0, +.gx-md-0 { + --ct-gutter-x: 0; + } + .g-md-0, +.gy-md-0 { + --ct-gutter-y: 0; + } + .g-md-1, +.gx-md-1 { + --ct-gutter-x: 0.3125rem; + } + .g-md-1, +.gy-md-1 { + --ct-gutter-y: 0.3125rem; + } + .g-md-2, +.gx-md-2 { + --ct-gutter-x: 0.625rem; + } + .g-md-2, +.gy-md-2 { + --ct-gutter-y: 0.625rem; + } + .g-md-3, +.gx-md-3 { + --ct-gutter-x: 1.25rem; + } + .g-md-3, +.gy-md-3 { + --ct-gutter-y: 1.25rem; + } + .g-md-4, +.gx-md-4 { + --ct-gutter-x: 1.875rem; + } + .g-md-4, +.gy-md-4 { + --ct-gutter-y: 1.875rem; + } + .g-md-5, +.gx-md-5 { + --ct-gutter-x: 3.75rem; + } + .g-md-5, +.gy-md-5 { + --ct-gutter-y: 3.75rem; + } +} +@media (min-width: 992px) { + .col-lg { + -webkit-box-flex: 1; + -ms-flex: 1 0 0%; + flex: 1 0 0%; + } + .row-cols-lg-auto > * { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: auto; + } + .row-cols-lg-1 > * { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 100%; + } + .row-cols-lg-2 > * { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 50%; + } + .row-cols-lg-3 > * { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 33.3333333333%; + } + .row-cols-lg-4 > * { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 25%; + } + .row-cols-lg-5 > * { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 20%; + } + .row-cols-lg-6 > * { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 16.6666666667%; + } + .col-lg-auto { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: auto; + } + .col-lg-1 { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 8.33333333%; + } + .col-lg-2 { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 16.66666667%; + } + .col-lg-3 { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 25%; + } + .col-lg-4 { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 33.33333333%; + } + .col-lg-5 { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 41.66666667%; + } + .col-lg-6 { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 50%; + } + .col-lg-7 { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 58.33333333%; + } + .col-lg-8 { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 66.66666667%; + } + .col-lg-9 { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 75%; + } + .col-lg-10 { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 83.33333333%; + } + .col-lg-11 { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 91.66666667%; + } + .col-lg-12 { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 100%; + } + .offset-lg-0 { + margin-right: 0; + } + .offset-lg-1 { + margin-right: 8.33333333%; + } + .offset-lg-2 { + margin-right: 16.66666667%; + } + .offset-lg-3 { + margin-right: 25%; + } + .offset-lg-4 { + margin-right: 33.33333333%; + } + .offset-lg-5 { + margin-right: 41.66666667%; + } + .offset-lg-6 { + margin-right: 50%; + } + .offset-lg-7 { + margin-right: 58.33333333%; + } + .offset-lg-8 { + margin-right: 66.66666667%; + } + .offset-lg-9 { + margin-right: 75%; + } + .offset-lg-10 { + margin-right: 83.33333333%; + } + .offset-lg-11 { + margin-right: 91.66666667%; + } + .g-lg-0, +.gx-lg-0 { + --ct-gutter-x: 0; + } + .g-lg-0, +.gy-lg-0 { + --ct-gutter-y: 0; + } + .g-lg-1, +.gx-lg-1 { + --ct-gutter-x: 0.3125rem; + } + .g-lg-1, +.gy-lg-1 { + --ct-gutter-y: 0.3125rem; + } + .g-lg-2, +.gx-lg-2 { + --ct-gutter-x: 0.625rem; + } + .g-lg-2, +.gy-lg-2 { + --ct-gutter-y: 0.625rem; + } + .g-lg-3, +.gx-lg-3 { + --ct-gutter-x: 1.25rem; + } + .g-lg-3, +.gy-lg-3 { + --ct-gutter-y: 1.25rem; + } + .g-lg-4, +.gx-lg-4 { + --ct-gutter-x: 1.875rem; + } + .g-lg-4, +.gy-lg-4 { + --ct-gutter-y: 1.875rem; + } + .g-lg-5, +.gx-lg-5 { + --ct-gutter-x: 3.75rem; + } + .g-lg-5, +.gy-lg-5 { + --ct-gutter-y: 3.75rem; + } +} +@media (min-width: 1200px) { + .col-xl { + -webkit-box-flex: 1; + -ms-flex: 1 0 0%; + flex: 1 0 0%; + } + .row-cols-xl-auto > * { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: auto; + } + .row-cols-xl-1 > * { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 100%; + } + .row-cols-xl-2 > * { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 50%; + } + .row-cols-xl-3 > * { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 33.3333333333%; + } + .row-cols-xl-4 > * { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 25%; + } + .row-cols-xl-5 > * { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 20%; + } + .row-cols-xl-6 > * { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 16.6666666667%; + } + .col-xl-auto { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: auto; + } + .col-xl-1 { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 8.33333333%; + } + .col-xl-2 { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 16.66666667%; + } + .col-xl-3 { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 25%; + } + .col-xl-4 { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 33.33333333%; + } + .col-xl-5 { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 41.66666667%; + } + .col-xl-6 { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 50%; + } + .col-xl-7 { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 58.33333333%; + } + .col-xl-8 { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 66.66666667%; + } + .col-xl-9 { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 75%; + } + .col-xl-10 { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 83.33333333%; + } + .col-xl-11 { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 91.66666667%; + } + .col-xl-12 { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 100%; + } + .offset-xl-0 { + margin-right: 0; + } + .offset-xl-1 { + margin-right: 8.33333333%; + } + .offset-xl-2 { + margin-right: 16.66666667%; + } + .offset-xl-3 { + margin-right: 25%; + } + .offset-xl-4 { + margin-right: 33.33333333%; + } + .offset-xl-5 { + margin-right: 41.66666667%; + } + .offset-xl-6 { + margin-right: 50%; + } + .offset-xl-7 { + margin-right: 58.33333333%; + } + .offset-xl-8 { + margin-right: 66.66666667%; + } + .offset-xl-9 { + margin-right: 75%; + } + .offset-xl-10 { + margin-right: 83.33333333%; + } + .offset-xl-11 { + margin-right: 91.66666667%; + } + .g-xl-0, +.gx-xl-0 { + --ct-gutter-x: 0; + } + .g-xl-0, +.gy-xl-0 { + --ct-gutter-y: 0; + } + .g-xl-1, +.gx-xl-1 { + --ct-gutter-x: 0.3125rem; + } + .g-xl-1, +.gy-xl-1 { + --ct-gutter-y: 0.3125rem; + } + .g-xl-2, +.gx-xl-2 { + --ct-gutter-x: 0.625rem; + } + .g-xl-2, +.gy-xl-2 { + --ct-gutter-y: 0.625rem; + } + .g-xl-3, +.gx-xl-3 { + --ct-gutter-x: 1.25rem; + } + .g-xl-3, +.gy-xl-3 { + --ct-gutter-y: 1.25rem; + } + .g-xl-4, +.gx-xl-4 { + --ct-gutter-x: 1.875rem; + } + .g-xl-4, +.gy-xl-4 { + --ct-gutter-y: 1.875rem; + } + .g-xl-5, +.gx-xl-5 { + --ct-gutter-x: 3.75rem; + } + .g-xl-5, +.gy-xl-5 { + --ct-gutter-y: 3.75rem; + } +} +@media (min-width: 1400px) { + .col-xxl { + -webkit-box-flex: 1; + -ms-flex: 1 0 0%; + flex: 1 0 0%; + } + .row-cols-xxl-auto > * { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: auto; + } + .row-cols-xxl-1 > * { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 100%; + } + .row-cols-xxl-2 > * { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 50%; + } + .row-cols-xxl-3 > * { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 33.3333333333%; + } + .row-cols-xxl-4 > * { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 25%; + } + .row-cols-xxl-5 > * { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 20%; + } + .row-cols-xxl-6 > * { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 16.6666666667%; + } + .col-xxl-auto { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: auto; + } + .col-xxl-1 { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 8.33333333%; + } + .col-xxl-2 { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 16.66666667%; + } + .col-xxl-3 { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 25%; + } + .col-xxl-4 { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 33.33333333%; + } + .col-xxl-5 { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 41.66666667%; + } + .col-xxl-6 { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 50%; + } + .col-xxl-7 { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 58.33333333%; + } + .col-xxl-8 { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 66.66666667%; + } + .col-xxl-9 { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 75%; + } + .col-xxl-10 { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 83.33333333%; + } + .col-xxl-11 { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 91.66666667%; + } + .col-xxl-12 { + -webkit-box-flex: 0; + -ms-flex: 0 0 auto; + flex: 0 0 auto; + width: 100%; + } + .offset-xxl-0 { + margin-right: 0; + } + .offset-xxl-1 { + margin-right: 8.33333333%; + } + .offset-xxl-2 { + margin-right: 16.66666667%; + } + .offset-xxl-3 { + margin-right: 25%; + } + .offset-xxl-4 { + margin-right: 33.33333333%; + } + .offset-xxl-5 { + margin-right: 41.66666667%; + } + .offset-xxl-6 { + margin-right: 50%; + } + .offset-xxl-7 { + margin-right: 58.33333333%; + } + .offset-xxl-8 { + margin-right: 66.66666667%; + } + .offset-xxl-9 { + margin-right: 75%; + } + .offset-xxl-10 { + margin-right: 83.33333333%; + } + .offset-xxl-11 { + margin-right: 91.66666667%; + } + .g-xxl-0, +.gx-xxl-0 { + --ct-gutter-x: 0; + } + .g-xxl-0, +.gy-xxl-0 { + --ct-gutter-y: 0; + } + .g-xxl-1, +.gx-xxl-1 { + --ct-gutter-x: 0.3125rem; + } + .g-xxl-1, +.gy-xxl-1 { + --ct-gutter-y: 0.3125rem; + } + .g-xxl-2, +.gx-xxl-2 { + --ct-gutter-x: 0.625rem; + } + .g-xxl-2, +.gy-xxl-2 { + --ct-gutter-y: 0.625rem; + } + .g-xxl-3, +.gx-xxl-3 { + --ct-gutter-x: 1.25rem; + } + .g-xxl-3, +.gy-xxl-3 { + --ct-gutter-y: 1.25rem; + } + .g-xxl-4, +.gx-xxl-4 { + --ct-gutter-x: 1.875rem; + } + .g-xxl-4, +.gy-xxl-4 { + --ct-gutter-y: 1.875rem; + } + .g-xxl-5, +.gx-xxl-5 { + --ct-gutter-x: 3.75rem; + } + .g-xxl-5, +.gy-xxl-5 { + --ct-gutter-y: 3.75rem; + } +} +.table { + --ct-table-color-type: initial; + --ct-table-bg-type: initial; + --ct-table-color-state: initial; + --ct-table-bg-state: initial; + --ct-table-color: var(--ct-body-color); + --ct-table-bg: transparent; + --ct-table-border-color: var(--ct-border-color); + --ct-table-accent-bg: transparent; + --ct-table-striped-color: var(--ct-body-color); + --ct-table-striped-bg: rgba(var(--ct-tertiary-bg-rgb), 1); + --ct-table-active-color: var(--ct-body-color); + --ct-table-active-bg: rgba(var(--ct-tertiary-bg-rgb), 1); + --ct-table-hover-color: var(--ct-body-color); + --ct-table-hover-bg: rgba(var(--ct-tertiary-bg-rgb), 1); + width: 100%; + margin-bottom: 1.25rem; + vertical-align: top; + border-color: var(--ct-table-border-color); +} +.table > :not(caption) > * > * { + padding: 0.75rem 0.75rem; + color: var(--ct-table-color-state, var(--ct-table-color-type, var(--ct-table-color))); + background-color: var(--ct-table-bg); + border-bottom-width: var(--ct-border-width); + -webkit-box-shadow: inset 0 0 0 9999px var(--ct-table-bg-state, var(--ct-table-bg-type, var(--ct-table-accent-bg))); + box-shadow: inset 0 0 0 9999px var(--ct-table-bg-state, var(--ct-table-bg-type, var(--ct-table-accent-bg))); +} +.table > tbody { + vertical-align: inherit; +} +.table > thead { + vertical-align: bottom; +} + +.table-group-divider { + border-top: calc(var(--ct-border-width) * 2) solid currentcolor; +} + +.caption-top { + caption-side: top; +} + +.table-sm > :not(caption) > * > * { + padding: 0.5rem 0.5rem; +} + +.table-bordered > :not(caption) > * { + border-width: var(--ct-border-width) 0; +} +.table-bordered > :not(caption) > * > * { + border-width: 0 var(--ct-border-width); +} + +.table-borderless > :not(caption) > * > * { + border-bottom-width: 0; +} +.table-borderless > :not(:first-child) { + border-top-width: 0; +} + +.table-striped > tbody > tr:nth-of-type(odd) > * { + --ct-table-color-type: var(--ct-table-striped-color); + --ct-table-bg-type: var(--ct-table-striped-bg); +} + +.table-striped-columns > :not(caption) > tr > :nth-child(even) { + --ct-table-color-type: var(--ct-table-striped-color); + --ct-table-bg-type: var(--ct-table-striped-bg); +} + +.table-active { + --ct-table-color-state: var(--ct-table-active-color); + --ct-table-bg-state: var(--ct-table-active-bg); +} + +.table-hover > tbody > tr:hover > * { + --ct-table-color-state: var(--ct-table-hover-color); + --ct-table-bg-state: var(--ct-table-hover-bg); +} + +.table-primary { + --ct-table-color: #212529; + --ct-table-bg: #d9ddf1; + --ct-table-border-color: #c7cbdd; + --ct-table-striped-bg: #212529; + --ct-table-striped-color: #fff; + --ct-table-active-bg: #212529; + --ct-table-active-color: #fff; + --ct-table-hover-bg: #212529; + --ct-table-hover-color: #fff; + color: var(--ct-table-color); + border-color: var(--ct-table-border-color); +} + +.table-secondary { + --ct-table-color: #212529; + --ct-table-bg: #e2e3e5; + --ct-table-border-color: #cfd0d2; + --ct-table-striped-bg: #212529; + --ct-table-striped-color: #fff; + --ct-table-active-bg: #212529; + --ct-table-active-color: #fff; + --ct-table-hover-bg: #212529; + --ct-table-hover-color: #fff; + color: var(--ct-table-color); + border-color: var(--ct-table-border-color); +} + +.table-success { + --ct-table-color: #212529; + --ct-table-bg: #d1edea; + --ct-table-border-color: #bfd9d7; + --ct-table-striped-bg: #212529; + --ct-table-striped-color: #fff; + --ct-table-active-bg: #212529; + --ct-table-active-color: #fff; + --ct-table-hover-bg: #212529; + --ct-table-hover-color: #fff; + color: var(--ct-table-color); + border-color: var(--ct-table-border-color); +} + +.table-info { + --ct-table-color: #212529; + --ct-table-bg: #d4ebfd; + --ct-table-border-color: #c2d7e8; + --ct-table-striped-bg: #212529; + --ct-table-striped-color: #fff; + --ct-table-active-bg: #212529; + --ct-table-active-color: #fff; + --ct-table-hover-bg: #212529; + --ct-table-hover-color: #fff; + color: var(--ct-table-color); + border-color: var(--ct-table-border-color); +} + +.table-warning { + --ct-table-color: #212529; + --ct-table-bg: #fff3cf; + --ct-table-border-color: #e9debe; + --ct-table-striped-bg: #212529; + --ct-table-striped-color: #fff; + --ct-table-active-bg: #212529; + --ct-table-active-color: #fff; + --ct-table-hover-bg: #212529; + --ct-table-hover-color: #fff; + color: var(--ct-table-color); + border-color: var(--ct-table-border-color); +} + +.table-danger { + --ct-table-color: #212529; + --ct-table-bg: #fddad8; + --ct-table-border-color: #e7c8c7; + --ct-table-striped-bg: #212529; + --ct-table-striped-color: #fff; + --ct-table-active-bg: #212529; + --ct-table-active-color: #fff; + --ct-table-hover-bg: #212529; + --ct-table-hover-color: #fff; + color: var(--ct-table-color); + border-color: var(--ct-table-border-color); +} + +.table-purple { + --ct-table-color: #212529; + --ct-table-bg: #e6def3; + --ct-table-border-color: #d2ccdf; + --ct-table-striped-bg: #212529; + --ct-table-striped-color: #fff; + --ct-table-active-bg: #212529; + --ct-table-active-color: #fff; + --ct-table-hover-bg: #212529; + --ct-table-hover-color: #fff; + color: var(--ct-table-color); + border-color: var(--ct-table-border-color); +} + +.table-pink { + --ct-table-color: #212529; + --ct-table-bg: #ffe1eb; + --ct-table-border-color: #e9ced8; + --ct-table-striped-bg: #212529; + --ct-table-striped-color: #fff; + --ct-table-active-bg: #212529; + --ct-table-active-color: #fff; + --ct-table-hover-bg: #212529; + --ct-table-hover-color: #fff; + color: var(--ct-table-color); + border-color: var(--ct-table-border-color); +} + +.table-light { + --ct-table-color: #212529; + --ct-table-bg: #f2f2f7; + --ct-table-border-color: #dddee2; + --ct-table-striped-bg: #212529; + --ct-table-striped-color: #fff; + --ct-table-active-bg: #212529; + --ct-table-active-color: #fff; + --ct-table-hover-bg: #212529; + --ct-table-hover-color: #fff; + color: var(--ct-table-color); + border-color: var(--ct-table-border-color); +} + +.table-dark { + --ct-table-color: #fff; + --ct-table-bg: #49526b; + --ct-table-border-color: #5b637a; + --ct-table-striped-bg: white; + --ct-table-striped-color: #212529; + --ct-table-active-bg: white; + --ct-table-active-color: #212529; + --ct-table-hover-bg: white; + --ct-table-hover-color: #212529; + color: var(--ct-table-color); + border-color: var(--ct-table-border-color); +} + +.table-responsive { + overflow-x: auto; + -webkit-overflow-scrolling: touch; +} + +@media (max-width: 575.98px) { + .table-responsive-sm { + overflow-x: auto; + -webkit-overflow-scrolling: touch; + } +} +@media (max-width: 767.98px) { + .table-responsive-md { + overflow-x: auto; + -webkit-overflow-scrolling: touch; + } +} +@media (max-width: 991.98px) { + .table-responsive-lg { + overflow-x: auto; + -webkit-overflow-scrolling: touch; + } +} +@media (max-width: 1199.98px) { + .table-responsive-xl { + overflow-x: auto; + -webkit-overflow-scrolling: touch; + } +} +@media (max-width: 1399.98px) { + .table-responsive-xxl { + overflow-x: auto; + -webkit-overflow-scrolling: touch; + } +} +.form-label { + margin-bottom: 0.5rem; +} + +.col-form-label { + padding-top: calc(0.45rem + var(--ct-border-width)); + padding-bottom: calc(0.45rem + var(--ct-border-width)); + margin-bottom: 0; + font-size: inherit; + line-height: 1.5; +} + +.col-form-label-lg { + padding-top: calc(0.5rem + var(--ct-border-width)); + padding-bottom: calc(0.5rem + var(--ct-border-width)); + font-size: 1.21625rem; +} + +.col-form-label-sm { + padding-top: calc(0.28rem + var(--ct-border-width)); + padding-bottom: calc(0.28rem + var(--ct-border-width)); + font-size: 0.85rem; +} + +.form-text { + margin-top: 0.25rem; + font-size: 0.75rem; + color: var(--ct-secondary-color); +} + +.form-control { + display: block; + width: 100%; + padding: 0.45rem 0.9rem; + font-size: 0.875rem; + font-weight: 400; + line-height: 1.5; + color: var(--ct-body-color); + background-color: var(--ct-secondary-bg); + background-clip: padding-box; + border: var(--ct-border-width) solid var(--ct-border-color); + -webkit-appearance: none; + -moz-appearance: none; + appearance: none; + border-radius: 0.25rem; + -webkit-transition: border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out; + transition: border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out; + transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; + transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out; +} +@media (prefers-reduced-motion: reduce) { + .form-control { + -webkit-transition: none; + transition: none; + } +} +.form-control[type=file] { + overflow: hidden; +} +.form-control[type=file]:not(:disabled):not([readonly]) { + cursor: pointer; +} +.form-control:focus { + color: var(--ct-body-color); + background-color: var(--ct-secondary-bg); + border-color: var(--ct-border-color-translucent); + outline: 0; + -webkit-box-shadow: none; + box-shadow: none; +} +.form-control::-webkit-date-and-time-value { + min-width: 85px; + height: 1.5em; + margin: 0; +} +.form-control::-webkit-datetime-edit { + display: block; + padding: 0; +} +.form-control::-webkit-input-placeholder { + color: var(--ct-secondary-color); + opacity: 1; +} +.form-control::-moz-placeholder { + color: var(--ct-secondary-color); + opacity: 1; +} +.form-control:-ms-input-placeholder { + color: var(--ct-secondary-color); + opacity: 1; +} +.form-control::-ms-input-placeholder { + color: var(--ct-secondary-color); + opacity: 1; +} +.form-control::placeholder { + color: var(--ct-secondary-color); + opacity: 1; +} +.form-control:disabled { + background-color: var(--ct-tertiary-bg); + opacity: 1; +} +.form-control::-webkit-file-upload-button { + padding: 0.45rem 0.9rem; + margin: -0.45rem -0.9rem; + -webkit-margin-end: 0.9rem; + margin-inline-end: 0.9rem; + color: var(--ct-body-color); + background-color: var(--ct-tertiary-bg); + pointer-events: none; + border-color: inherit; + border-style: solid; + border-width: 0; + border-inline-end-width: var(--ct-border-width); + border-radius: 0; + -webkit-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out; + transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out; + transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; + 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, -webkit-box-shadow 0.15s ease-in-out; +} +.form-control::file-selector-button { + padding: 0.45rem 0.9rem; + margin: -0.45rem -0.9rem; + -webkit-margin-end: 0.9rem; + margin-inline-end: 0.9rem; + color: var(--ct-body-color); + background-color: var(--ct-tertiary-bg); + pointer-events: none; + border-color: inherit; + border-style: solid; + border-width: 0; + border-inline-end-width: var(--ct-border-width); + border-radius: 0; + -webkit-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out; + transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out; + transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; + 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, -webkit-box-shadow 0.15s ease-in-out; +} +@media (prefers-reduced-motion: reduce) { + .form-control::-webkit-file-upload-button { + -webkit-transition: none; + transition: none; + } + .form-control::file-selector-button { + -webkit-transition: none; + transition: none; + } +} +.form-control:hover:not(:disabled):not([readonly])::-webkit-file-upload-button { + background-color: var(--ct-secondary-bg); +} +.form-control:hover:not(:disabled):not([readonly])::file-selector-button { + background-color: var(--ct-secondary-bg); +} + +.form-control-plaintext { + display: block; + width: 100%; + padding: 0.45rem 0; + margin-bottom: 0; + line-height: 1.5; + color: var(--ct-body-color); + background-color: transparent; + border: solid transparent; + border-width: var(--ct-border-width) 0; +} +.form-control-plaintext:focus { + outline: 0; +} +.form-control-plaintext.form-control-sm, .form-control-plaintext.form-control-lg { + padding-left: 0; + padding-right: 0; +} + +.form-control-sm { + min-height: calc(1.5em + 0.56rem + calc(var(--ct-border-width) * 2)); + padding: 0.28rem 0.8rem; + font-size: 0.85rem; + border-radius: 0.25rem; +} +.form-control-sm::-webkit-file-upload-button { + padding: 0.28rem 0.8rem; + margin: -0.28rem -0.8rem; + -webkit-margin-end: 0.8rem; + margin-inline-end: 0.8rem; +} +.form-control-sm::file-selector-button { + padding: 0.28rem 0.8rem; + margin: -0.28rem -0.8rem; + -webkit-margin-end: 0.8rem; + margin-inline-end: 0.8rem; +} + +.form-control-lg { + min-height: calc(1.5em + 1rem + calc(var(--ct-border-width) * 2)); + padding: 0.5rem 1rem; + font-size: 1.21625rem; + border-radius: 0.15rem; +} +.form-control-lg::-webkit-file-upload-button { + padding: 0.5rem 1rem; + margin: -0.5rem -1rem; + -webkit-margin-end: 1rem; + margin-inline-end: 1rem; +} +.form-control-lg::file-selector-button { + padding: 0.5rem 1rem; + margin: -0.5rem -1rem; + -webkit-margin-end: 1rem; + margin-inline-end: 1rem; +} + +textarea.form-control { + min-height: calc(1.5em + 0.9rem + calc(var(--ct-border-width) * 2)); +} +textarea.form-control-sm { + min-height: calc(1.5em + 0.56rem + calc(var(--ct-border-width) * 2)); +} +textarea.form-control-lg { + min-height: calc(1.5em + 1rem + calc(var(--ct-border-width) * 2)); +} + +.form-control-color { + width: 3rem; + height: calc(1.5em + 0.9rem + calc(var(--ct-border-width) * 2)); + padding: 0.45rem; +} +.form-control-color:not(:disabled):not([readonly]) { + cursor: pointer; +} +.form-control-color::-moz-color-swatch { + border: 0 !important; + border-radius: 0.25rem; +} +.form-control-color::-webkit-color-swatch { + border: 0 !important; + border-radius: 0.25rem; +} +.form-control-color.form-control-sm { + height: calc(1.5em + 0.56rem + calc(var(--ct-border-width) * 2)); +} +.form-control-color.form-control-lg { + height: calc(1.5em + 1rem + calc(var(--ct-border-width) * 2)); +} + +.form-select { + --ct-form-select-bg-img: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e"); + display: block; + width: 100%; + padding: 0.45rem 0.9rem 0.45rem 2.7rem; + font-size: 0.875rem; + font-weight: 400; + line-height: 1.5; + color: var(--ct-body-color); + background-color: var(--ct-secondary-bg); + background-image: var(--ct-form-select-bg-img), var(--ct-form-select-bg-icon, none); + background-repeat: no-repeat; + background-position: left 0.9rem center; + background-size: 14px 10px; + border: var(--ct-border-width) solid var(--ct-border-color); + border-radius: 0.25rem; + -webkit-transition: border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out; + transition: border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out; + transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; + transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out; + -webkit-appearance: none; + -moz-appearance: none; + appearance: none; +} +@media (prefers-reduced-motion: reduce) { + .form-select { + -webkit-transition: none; + transition: none; + } +} +.form-select:focus { + border-color: var(--ct-border-color-translucent); + outline: 0; + -webkit-box-shadow: none; + box-shadow: none; +} +.form-select[multiple], .form-select[size]:not([size="1"]) { + padding-left: 0.9rem; + background-image: none; +} +.form-select:disabled { + background-color: var(--ct-tertiary-bg); +} +.form-select:-moz-focusring { + color: transparent; + text-shadow: 0 0 0 var(--ct-body-color); +} + +.form-select-sm { + padding-top: 0.28rem; + padding-bottom: 0.28rem; + padding-right: 0.8rem; + font-size: 0.85rem; + border-radius: 0.25rem; +} + +.form-select-lg { + padding-top: 0.5rem; + padding-bottom: 0.5rem; + padding-right: 1rem; + font-size: 1.21625rem; + border-radius: 0.15rem; +} + +[data-bs-theme=dark] .form-select { + --ct-form-select-bg-img: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23aab8c5' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e"); +} + +.form-check { + display: block; + min-height: 1.3125rem; + padding-right: 1.635em; + margin-bottom: 0; +} +.form-check .form-check-input { + float: right; + margin-right: -1.635em; +} + +.form-check-reverse { + padding-left: 1.635em; + padding-right: 0; + text-align: left; +} +.form-check-reverse .form-check-input { + float: left; + margin-left: -1.635em; + margin-right: 0; +} + +.form-check-input { + --ct-form-check-bg: var(--ct-secondary-bg); + width: 1.135em; + height: 1.135em; + margin-top: 0.1825em; + vertical-align: top; + background-color: var(--ct-form-check-bg); + background-image: var(--ct-form-check-bg-image); + background-repeat: no-repeat; + background-position: center; + background-size: contain; + border: var(--ct-border-width) solid var(--ct-border-color-translucent); + -webkit-appearance: none; + -moz-appearance: none; + appearance: none; + -webkit-print-color-adjust: exact; + print-color-adjust: exact; +} +.form-check-input[type=checkbox] { + border-radius: 0.25em; +} +.form-check-input[type=radio] { + border-radius: 50%; +} +.form-check-input:active { + -webkit-filter: brightness(90%); + filter: brightness(90%); +} +.form-check-input:focus { + border-color: var(--ct-border-color-translucent); + outline: 0; + -webkit-box-shadow: none; + box-shadow: none; +} +.form-check-input:checked { + background-color: #4254ba; + border-color: #4254ba; +} +.form-check-input:checked[type=checkbox] { + --ct-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='m6 10 3 3 6-6'/%3e%3c/svg%3e"); +} +.form-check-input:checked[type=radio] { + --ct-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='2' fill='%23fff'/%3e%3c/svg%3e"); +} +.form-check-input[type=checkbox]:indeterminate { + background-color: #4254ba; + border-color: #4254ba; + --ct-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10h8'/%3e%3c/svg%3e"); +} +.form-check-input:disabled { + pointer-events: none; + -webkit-filter: none; + filter: none; + opacity: 0.5; +} +.form-check-input[disabled] ~ .form-check-label, .form-check-input:disabled ~ .form-check-label { + cursor: default; + opacity: 0.5; +} + +.form-switch { + padding-right: 2.5em; +} +.form-switch .form-check-input { + --ct-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba%280, 0, 0, 0.25%29'/%3e%3c/svg%3e"); + width: 2em; + margin-right: -2.5em; + background-image: var(--ct-form-switch-bg); + background-position: right center; + border-radius: 2em; + -webkit-transition: background-position 0.15s ease-in-out; + transition: background-position 0.15s ease-in-out; +} +@media (prefers-reduced-motion: reduce) { + .form-switch .form-check-input { + -webkit-transition: none; + transition: none; + } +} +.form-switch .form-check-input:focus { + --ct-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='var%28--ct-border-color-translucent%29'/%3e%3c/svg%3e"); +} +.form-switch .form-check-input:checked { + background-position: left center; + --ct-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e"); +} +.form-switch.form-check-reverse { + padding-left: 2.5em; + padding-right: 0; +} +.form-switch.form-check-reverse .form-check-input { + margin-left: -2.5em; + margin-right: 0; +} + +.form-check-inline { + display: inline-block; + margin-left: 1rem; +} + +.btn-check { + position: absolute; + clip: rect(0, 0, 0, 0); + pointer-events: none; +} +.btn-check[disabled] + .btn, .btn-check:disabled + .btn { + pointer-events: none; + -webkit-filter: none; + filter: none; + opacity: 0.65; +} + +[data-bs-theme=dark] .form-switch .form-check-input:not(:checked):not(:focus) { + --ct-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba%28255, 255, 255, 0.25%29'/%3e%3c/svg%3e"); +} + +.form-range { + width: 100%; + height: 1.3rem; + padding: 0; + background-color: transparent; + -webkit-appearance: none; + -moz-appearance: none; + appearance: none; +} +.form-range:focus { + outline: 0; +} +.form-range:focus::-webkit-slider-thumb { + -webkit-box-shadow: 0 0 0 1px #eeeef1, none; + box-shadow: 0 0 0 1px #eeeef1, none; +} +.form-range:focus::-moz-range-thumb { + box-shadow: 0 0 0 1px #eeeef1, none; +} +.form-range::-moz-focus-outer { + border: 0; +} +.form-range::-webkit-slider-thumb { + width: 1rem; + height: 1rem; + margin-top: -0.25rem; + background-color: #4254ba; + border: 0; + border-radius: 1rem; + -webkit-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out; + transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out; + transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; + transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out; + -webkit-appearance: none; + appearance: none; +} +@media (prefers-reduced-motion: reduce) { + .form-range::-webkit-slider-thumb { + -webkit-transition: none; + transition: none; + } +} +.form-range::-webkit-slider-thumb:active { + background-color: #c6ccea; +} +.form-range::-webkit-slider-runnable-track { + width: 100%; + height: 0.5rem; + color: transparent; + cursor: pointer; + background-color: var(--ct-body-bg); + border-color: transparent; + border-radius: 1rem; +} +.form-range::-moz-range-thumb { + width: 1rem; + height: 1rem; + background-color: #4254ba; + border: 0; + border-radius: 1rem; + -moz-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; + transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; + -moz-appearance: none; + appearance: none; +} +@media (prefers-reduced-motion: reduce) { + .form-range::-moz-range-thumb { + -moz-transition: none; + transition: none; + } +} +.form-range::-moz-range-thumb:active { + background-color: #c6ccea; +} +.form-range::-moz-range-track { + width: 100%; + height: 0.5rem; + color: transparent; + cursor: pointer; + background-color: var(--ct-body-bg); + border-color: transparent; + border-radius: 1rem; +} +.form-range:disabled { + pointer-events: none; +} +.form-range:disabled::-webkit-slider-thumb { + background-color: var(--ct-secondary-color); +} +.form-range:disabled::-moz-range-thumb { + background-color: var(--ct-secondary-color); +} + +.form-floating { + position: relative; +} +.form-floating > .form-control, +.form-floating > .form-control-plaintext, +.form-floating > .form-select { + height: calc(3.5rem + calc(var(--ct-border-width) * 2)); + min-height: calc(3.5rem + calc(var(--ct-border-width) * 2)); + line-height: 1.25; +} +.form-floating > label { + position: absolute; + top: 0; + right: 0; + z-index: 2; + height: 100%; + padding: 1rem 0.9rem; + overflow: hidden; + text-align: start; + text-overflow: ellipsis; + white-space: nowrap; + pointer-events: none; + border: var(--ct-border-width) solid transparent; + -webkit-transform-origin: 100% 0; + transform-origin: 100% 0; + -webkit-transition: opacity 0.1s ease-in-out, -webkit-transform 0.1s ease-in-out; + transition: opacity 0.1s ease-in-out, -webkit-transform 0.1s ease-in-out; + transition: opacity 0.1s ease-in-out, transform 0.1s ease-in-out; + transition: opacity 0.1s ease-in-out, transform 0.1s ease-in-out, -webkit-transform 0.1s ease-in-out; +} +@media (prefers-reduced-motion: reduce) { + .form-floating > label { + -webkit-transition: none; + transition: none; + } +} +.form-floating > .form-control, +.form-floating > .form-control-plaintext { + padding: 1rem 0.9rem; +} +.form-floating > .form-control::-webkit-input-placeholder, .form-floating > .form-control-plaintext::-webkit-input-placeholder { + color: transparent; +} +.form-floating > .form-control::-moz-placeholder, .form-floating > .form-control-plaintext::-moz-placeholder { + color: transparent; +} +.form-floating > .form-control:-ms-input-placeholder, .form-floating > .form-control-plaintext:-ms-input-placeholder { + color: transparent; +} +.form-floating > .form-control::-ms-input-placeholder, .form-floating > .form-control-plaintext::-ms-input-placeholder { + color: transparent; +} +.form-floating > .form-control::placeholder, +.form-floating > .form-control-plaintext::placeholder { + color: transparent; +} +.form-floating > .form-control:not(:-moz-placeholder-shown), .form-floating > .form-control-plaintext:not(:-moz-placeholder-shown) { + padding-top: 1.625rem; + padding-bottom: 0.625rem; +} +.form-floating > .form-control:not(:-ms-input-placeholder), .form-floating > .form-control-plaintext:not(:-ms-input-placeholder) { + padding-top: 1.625rem; + padding-bottom: 0.625rem; +} +.form-floating > .form-control:focus, .form-floating > .form-control:not(:placeholder-shown), +.form-floating > .form-control-plaintext:focus, +.form-floating > .form-control-plaintext:not(:placeholder-shown) { + padding-top: 1.625rem; + padding-bottom: 0.625rem; +} +.form-floating > .form-control:-webkit-autofill, +.form-floating > .form-control-plaintext:-webkit-autofill { + padding-top: 1.625rem; + padding-bottom: 0.625rem; +} +.form-floating > .form-select { + padding-top: 1.625rem; + padding-bottom: 0.625rem; +} +.form-floating > .form-control:not(:-moz-placeholder-shown) ~ label { + color: rgba(var(--ct-body-color-rgb), 0.65); + transform: scale(0.85) translateY(-0.5rem) translateX(-0.15rem); +} +.form-floating > .form-control:not(:-ms-input-placeholder) ~ label { + color: rgba(var(--ct-body-color-rgb), 0.65); + transform: scale(0.85) translateY(-0.5rem) translateX(-0.15rem); +} +.form-floating > .form-control:focus ~ label, +.form-floating > .form-control:not(:placeholder-shown) ~ label, +.form-floating > .form-control-plaintext ~ label, +.form-floating > .form-select ~ label { + color: rgba(var(--ct-body-color-rgb), 0.65); + -webkit-transform: scale(0.85) translateY(-0.5rem) translateX(-0.15rem); + transform: scale(0.85) translateY(-0.5rem) translateX(-0.15rem); +} +.form-floating > .form-control:not(:-moz-placeholder-shown) ~ label::after { + position: absolute; + inset: 1rem 0.45rem; + z-index: -1; + height: 1.875em; + content: ""; + background-color: var(--ct-secondary-bg); + border-radius: 0.25rem; +} +.form-floating > .form-control:not(:-ms-input-placeholder) ~ label::after { + position: absolute; + inset: 1rem 0.45rem; + z-index: -1; + height: 1.875em; + content: ""; + background-color: var(--ct-secondary-bg); + border-radius: 0.25rem; +} +.form-floating > .form-control:focus ~ label::after, +.form-floating > .form-control:not(:placeholder-shown) ~ label::after, +.form-floating > .form-control-plaintext ~ label::after, +.form-floating > .form-select ~ label::after { + position: absolute; + inset: 1rem 0.45rem; + z-index: -1; + height: 1.875em; + content: ""; + background-color: var(--ct-secondary-bg); + border-radius: 0.25rem; +} +.form-floating > .form-control:-webkit-autofill ~ label { + color: rgba(var(--ct-body-color-rgb), 0.65); + -webkit-transform: scale(0.85) translateY(-0.5rem) translateX(-0.15rem); + transform: scale(0.85) translateY(-0.5rem) translateX(-0.15rem); +} +.form-floating > .form-control-plaintext ~ label { + border-width: var(--ct-border-width) 0; +} +.form-floating > :disabled ~ label { + color: #6c757d; +} +.form-floating > :disabled ~ label::after { + background-color: var(--ct-tertiary-bg); +} + +.input-group { + position: relative; + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -ms-flex-wrap: wrap; + flex-wrap: wrap; + -webkit-box-align: stretch; + -ms-flex-align: stretch; + align-items: stretch; + width: 100%; +} +.input-group > .form-control, +.input-group > .form-select, +.input-group > .form-floating { + position: relative; + -webkit-box-flex: 1; + -ms-flex: 1 1 auto; + flex: 1 1 auto; + width: 1%; + min-width: 0; +} +.input-group > .form-control:focus, +.input-group > .form-select:focus, +.input-group > .form-floating:focus-within { + z-index: 5; +} +.input-group .btn { + position: relative; + z-index: 2; +} +.input-group .btn:focus { + z-index: 5; +} + +.input-group-text { + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + padding: 0.45rem 0.9rem; + font-size: 0.875rem; + font-weight: 400; + line-height: 1.5; + color: var(--ct-body-color); + text-align: center; + white-space: nowrap; + background-color: var(--ct-tertiary-bg); + border: var(--ct-border-width) solid var(--ct-border-color); + border-radius: 0.25rem; +} + +.input-group-lg > .form-control, +.input-group-lg > .form-select, +.input-group-lg > .input-group-text, +.input-group-lg > .btn { + padding: 0.5rem 1rem; + font-size: 1.21625rem; + border-radius: 0.15rem; +} + +.input-group-sm > .form-control, +.input-group-sm > .form-select, +.input-group-sm > .input-group-text, +.input-group-sm > .btn { + padding: 0.28rem 0.8rem; + font-size: 0.85rem; + border-radius: 0.25rem; +} + +.input-group-lg > .form-select, +.input-group-sm > .form-select { + padding-left: 3.6rem; +} + +.input-group:not(.has-validation) > :not(:last-child):not(.dropdown-toggle):not(.dropdown-menu):not(.form-floating), +.input-group:not(.has-validation) > .dropdown-toggle:nth-last-child(n+3), +.input-group:not(.has-validation) > .form-floating:not(:last-child) > .form-control, +.input-group:not(.has-validation) > .form-floating:not(:last-child) > .form-select { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} +.input-group.has-validation > :nth-last-child(n+3):not(.dropdown-toggle):not(.dropdown-menu):not(.form-floating), +.input-group.has-validation > .dropdown-toggle:nth-last-child(n+4), +.input-group.has-validation > .form-floating:nth-last-child(n+3) > .form-control, +.input-group.has-validation > .form-floating:nth-last-child(n+3) > .form-select { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} +.input-group > :not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback) { + margin-right: calc(var(--ct-border-width) * -1); + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} +.input-group > .form-floating:not(:first-child) > .form-control, +.input-group > .form-floating:not(:first-child) > .form-select { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} + +.valid-feedback { + display: none; + width: 100%; + margin-top: 0.25rem; + font-size: 0.75rem; + color: var(--ct-form-valid-color); +} + +.valid-tooltip { + position: absolute; + top: 100%; + z-index: 5; + display: none; + max-width: 100%; + padding: 0.3125rem 0.625rem; + margin-top: 0.1rem; + font-size: 0.7225rem; + color: #fff; + background-color: var(--ct-success); + border-radius: var(--ct-border-radius); +} + +.was-validated :valid ~ .valid-feedback, +.was-validated :valid ~ .valid-tooltip, +.is-valid ~ .valid-feedback, +.is-valid ~ .valid-tooltip { + display: block; +} + +.was-validated .form-control:valid, .form-control.is-valid { + border-color: var(--ct-form-valid-border-color); + padding-left: calc(1.5em + 0.9rem); + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%2317a497' d='M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e"); + background-repeat: no-repeat; + background-position: left calc(0.375em + 0.225rem) center; + background-size: calc(0.75em + 0.45rem) calc(0.75em + 0.45rem); +} +.was-validated .form-control:valid:focus, .form-control.is-valid:focus { + border-color: var(--ct-form-valid-border-color); + -webkit-box-shadow: 0 0 0 0.15rem rgba(var(--ct-success-rgb), 0.25); + box-shadow: 0 0 0 0.15rem rgba(var(--ct-success-rgb), 0.25); +} + +.was-validated textarea.form-control:valid, textarea.form-control.is-valid { + padding-left: calc(1.5em + 0.9rem); + background-position: top calc(0.375em + 0.225rem) left calc(0.375em + 0.225rem); +} + +.was-validated .form-select:valid, .form-select.is-valid { + border-color: var(--ct-form-valid-border-color); +} +.was-validated .form-select:valid:not([multiple]):not([size]), .was-validated .form-select:valid:not([multiple])[size="1"], .form-select.is-valid:not([multiple]):not([size]), .form-select.is-valid:not([multiple])[size="1"] { + --ct-form-select-bg-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%2317a497' d='M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e"); + padding-left: 4.95rem; + background-position: left 0.9rem center, center left 2.7rem; + background-size: 14px 10px, calc(0.75em + 0.45rem) calc(0.75em + 0.45rem); +} +.was-validated .form-select:valid:focus, .form-select.is-valid:focus { + border-color: var(--ct-form-valid-border-color); + -webkit-box-shadow: 0 0 0 0.15rem rgba(var(--ct-success-rgb), 0.25); + box-shadow: 0 0 0 0.15rem rgba(var(--ct-success-rgb), 0.25); +} + +.was-validated .form-control-color:valid, .form-control-color.is-valid { + width: calc(3rem + calc(1.5em + 0.9rem)); +} + +.was-validated .form-check-input:valid, .form-check-input.is-valid { + border-color: var(--ct-form-valid-border-color); +} +.was-validated .form-check-input:valid:checked, .form-check-input.is-valid:checked { + background-color: var(--ct-form-valid-color); +} +.was-validated .form-check-input:valid:focus, .form-check-input.is-valid:focus { + -webkit-box-shadow: 0 0 0 0.15rem rgba(var(--ct-success-rgb), 0.25); + box-shadow: 0 0 0 0.15rem rgba(var(--ct-success-rgb), 0.25); +} +.was-validated .form-check-input:valid ~ .form-check-label, .form-check-input.is-valid ~ .form-check-label { + color: var(--ct-form-valid-color); +} + +.form-check-inline .form-check-input ~ .valid-feedback { + margin-right: 0.5em; +} + +.was-validated .input-group > .form-control:not(:focus):valid, .input-group > .form-control:not(:focus).is-valid, +.was-validated .input-group > .form-select:not(:focus):valid, +.input-group > .form-select:not(:focus).is-valid, +.was-validated .input-group > .form-floating:not(:focus-within):valid, +.input-group > .form-floating:not(:focus-within).is-valid { + z-index: 3; +} + +.invalid-feedback { + display: none; + width: 100%; + margin-top: 0.25rem; + font-size: 0.75rem; + color: var(--ct-form-invalid-color); +} + +.invalid-tooltip { + position: absolute; + top: 100%; + z-index: 5; + display: none; + max-width: 100%; + padding: 0.3125rem 0.625rem; + margin-top: 0.1rem; + font-size: 0.7225rem; + color: #fff; + background-color: var(--ct-danger); + border-radius: var(--ct-border-radius); +} + +.was-validated :invalid ~ .invalid-feedback, +.was-validated :invalid ~ .invalid-tooltip, +.is-invalid ~ .invalid-feedback, +.is-invalid ~ .invalid-tooltip { + display: block; +} + +.was-validated .form-control:invalid, .form-control.is-invalid { + border-color: var(--ct-form-invalid-border-color); + padding-left: calc(1.5em + 0.9rem); + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23f7473a'%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='%23f7473a' stroke='none'/%3e%3c/svg%3e"); + background-repeat: no-repeat; + background-position: left calc(0.375em + 0.225rem) center; + background-size: calc(0.75em + 0.45rem) calc(0.75em + 0.45rem); +} +.was-validated .form-control:invalid:focus, .form-control.is-invalid:focus { + border-color: var(--ct-form-invalid-border-color); + -webkit-box-shadow: 0 0 0 0.15rem rgba(var(--ct-danger-rgb), 0.25); + box-shadow: 0 0 0 0.15rem rgba(var(--ct-danger-rgb), 0.25); +} + +.was-validated textarea.form-control:invalid, textarea.form-control.is-invalid { + padding-left: calc(1.5em + 0.9rem); + background-position: top calc(0.375em + 0.225rem) left calc(0.375em + 0.225rem); +} + +.was-validated .form-select:invalid, .form-select.is-invalid { + border-color: var(--ct-form-invalid-border-color); +} +.was-validated .form-select:invalid:not([multiple]):not([size]), .was-validated .form-select:invalid:not([multiple])[size="1"], .form-select.is-invalid:not([multiple]):not([size]), .form-select.is-invalid:not([multiple])[size="1"] { + --ct-form-select-bg-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23f7473a'%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='%23f7473a' stroke='none'/%3e%3c/svg%3e"); + padding-left: 4.95rem; + background-position: left 0.9rem center, center left 2.7rem; + background-size: 14px 10px, calc(0.75em + 0.45rem) calc(0.75em + 0.45rem); +} +.was-validated .form-select:invalid:focus, .form-select.is-invalid:focus { + border-color: var(--ct-form-invalid-border-color); + -webkit-box-shadow: 0 0 0 0.15rem rgba(var(--ct-danger-rgb), 0.25); + box-shadow: 0 0 0 0.15rem rgba(var(--ct-danger-rgb), 0.25); +} + +.was-validated .form-control-color:invalid, .form-control-color.is-invalid { + width: calc(3rem + calc(1.5em + 0.9rem)); +} + +.was-validated .form-check-input:invalid, .form-check-input.is-invalid { + border-color: var(--ct-form-invalid-border-color); +} +.was-validated .form-check-input:invalid:checked, .form-check-input.is-invalid:checked { + background-color: var(--ct-form-invalid-color); +} +.was-validated .form-check-input:invalid:focus, .form-check-input.is-invalid:focus { + -webkit-box-shadow: 0 0 0 0.15rem rgba(var(--ct-danger-rgb), 0.25); + box-shadow: 0 0 0 0.15rem rgba(var(--ct-danger-rgb), 0.25); +} +.was-validated .form-check-input:invalid ~ .form-check-label, .form-check-input.is-invalid ~ .form-check-label { + color: var(--ct-form-invalid-color); +} + +.form-check-inline .form-check-input ~ .invalid-feedback { + margin-right: 0.5em; +} + +.was-validated .input-group > .form-control:not(:focus):invalid, .input-group > .form-control:not(:focus).is-invalid, +.was-validated .input-group > .form-select:not(:focus):invalid, +.input-group > .form-select:not(:focus).is-invalid, +.was-validated .input-group > .form-floating:not(:focus-within):invalid, +.input-group > .form-floating:not(:focus-within).is-invalid { + z-index: 4; +} + +.btn { + --ct-btn-padding-x: 0.9rem; + --ct-btn-padding-y: 0.45rem; + --ct-btn-font-family: ; + --ct-btn-font-size: 0.875rem; + --ct-btn-font-weight: 400; + --ct-btn-line-height: 1.5; + --ct-btn-color: var(--ct-body-color); + --ct-btn-bg: transparent; + --ct-btn-border-width: var(--ct-border-width); + --ct-btn-border-color: transparent; + --ct-btn-border-radius: var(--ct-border-radius); + --ct-btn-hover-border-color: transparent; + --ct-btn-box-shadow: 2px 2px 3px rgba(27, 23, 30, 0.1); + --ct-btn-disabled-opacity: 0.65; + --ct-btn-focus-box-shadow: 0 0 0 0.15rem rgba(var(--ct-btn-focus-shadow-rgb), .5); + display: inline-block; + padding: var(--ct-btn-padding-y) var(--ct-btn-padding-x); + font-family: var(--ct-btn-font-family); + font-size: var(--ct-btn-font-size); + font-weight: var(--ct-btn-font-weight); + line-height: var(--ct-btn-line-height); + color: var(--ct-btn-color); + text-align: center; + vertical-align: middle; + cursor: pointer; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + border: var(--ct-btn-border-width) solid var(--ct-btn-border-color); + border-radius: var(--ct-btn-border-radius); + background-color: var(--ct-btn-bg); + -webkit-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out; + transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out; + transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; + 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, -webkit-box-shadow 0.15s ease-in-out; +} +@media (prefers-reduced-motion: reduce) { + .btn { + -webkit-transition: none; + transition: none; + } +} +.btn:hover { + color: var(--ct-btn-hover-color); + background-color: var(--ct-btn-hover-bg); + border-color: var(--ct-btn-hover-border-color); +} +.btn-check + .btn:hover { + color: var(--ct-btn-color); + background-color: var(--ct-btn-bg); + border-color: var(--ct-btn-border-color); +} +.btn:focus-visible { + color: var(--ct-btn-hover-color); + background-color: var(--ct-btn-hover-bg); + border-color: var(--ct-btn-hover-border-color); + outline: 0; + -webkit-box-shadow: var(--ct-btn-focus-box-shadow); + box-shadow: var(--ct-btn-focus-box-shadow); +} +.btn-check:focus-visible + .btn { + border-color: var(--ct-btn-hover-border-color); + outline: 0; + -webkit-box-shadow: var(--ct-btn-focus-box-shadow); + box-shadow: var(--ct-btn-focus-box-shadow); +} +.btn-check:checked + .btn, :not(.btn-check) + .btn:active, .btn:first-child:active, .btn.active, .btn.show { + color: var(--ct-btn-active-color); + background-color: var(--ct-btn-active-bg); + border-color: var(--ct-btn-active-border-color); +} +.btn-check:checked + .btn:focus-visible, :not(.btn-check) + .btn:active:focus-visible, .btn:first-child:active:focus-visible, .btn.active:focus-visible, .btn.show:focus-visible { + -webkit-box-shadow: var(--ct-btn-focus-box-shadow); + box-shadow: var(--ct-btn-focus-box-shadow); +} +.btn:disabled, .btn.disabled, fieldset:disabled .btn { + color: var(--ct-btn-disabled-color); + pointer-events: none; + background-color: var(--ct-btn-disabled-bg); + border-color: var(--ct-btn-disabled-border-color); + opacity: var(--ct-btn-disabled-opacity); +} + +.btn-primary { + --ct-btn-color: #fff; + --ct-btn-bg: #4254ba; + --ct-btn-border-color: #4254ba; + --ct-btn-hover-color: #fff; + --ct-btn-hover-bg: #3d4eac; + --ct-btn-hover-border-color: #3d4eac; + --ct-btn-focus-shadow-rgb: 94, 110, 196; + --ct-btn-active-color: #fff; + --ct-btn-active-bg: #3d4eac; + --ct-btn-active-border-color: #3d4eac; + --ct-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); + --ct-btn-disabled-color: #fff; + --ct-btn-disabled-bg: #4254ba; + --ct-btn-disabled-border-color: #4254ba; +} + +.btn-secondary { + --ct-btn-color: #fff; + --ct-btn-bg: #6c757d; + --ct-btn-border-color: #6c757d; + --ct-btn-hover-color: #fff; + --ct-btn-hover-bg: #646c74; + --ct-btn-hover-border-color: #646c74; + --ct-btn-focus-shadow-rgb: 130, 138, 145; + --ct-btn-active-color: #fff; + --ct-btn-active-bg: #646c74; + --ct-btn-active-border-color: #646c74; + --ct-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); + --ct-btn-disabled-color: #fff; + --ct-btn-disabled-bg: #6c757d; + --ct-btn-disabled-border-color: #6c757d; +} + +.btn-success { + --ct-btn-color: #fff; + --ct-btn-bg: #17a497; + --ct-btn-border-color: #17a497; + --ct-btn-hover-color: #fff; + --ct-btn-hover-bg: #15988c; + --ct-btn-hover-border-color: #15988c; + --ct-btn-focus-shadow-rgb: 58, 178, 167; + --ct-btn-active-color: #fff; + --ct-btn-active-bg: #15988c; + --ct-btn-active-border-color: #15988c; + --ct-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); + --ct-btn-disabled-color: #fff; + --ct-btn-disabled-bg: #17a497; + --ct-btn-disabled-border-color: #17a497; +} + +.btn-info { + --ct-btn-color: #fff; + --ct-btn-bg: #299bf6; + --ct-btn-border-color: #299bf6; + --ct-btn-hover-color: #fff; + --ct-btn-hover-bg: #268fe4; + --ct-btn-hover-border-color: #268fe4; + --ct-btn-focus-shadow-rgb: 73, 170, 247; + --ct-btn-active-color: #fff; + --ct-btn-active-bg: #268fe4; + --ct-btn-active-border-color: #268fe4; + --ct-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); + --ct-btn-disabled-color: #fff; + --ct-btn-disabled-bg: #299bf6; + --ct-btn-disabled-border-color: #299bf6; +} + +.btn-warning { + --ct-btn-color: #fff; + --ct-btn-bg: #fec20d; + --ct-btn-border-color: #fec20d; + --ct-btn-hover-color: #fff; + --ct-btn-hover-bg: #ebb30c; + --ct-btn-hover-border-color: #ebb30c; + --ct-btn-focus-shadow-rgb: 254, 203, 49; + --ct-btn-active-color: #fff; + --ct-btn-active-bg: #ebb30c; + --ct-btn-active-border-color: #ebb30c; + --ct-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); + --ct-btn-disabled-color: #fff; + --ct-btn-disabled-bg: #fec20d; + --ct-btn-disabled-border-color: #fec20d; +} + +.btn-danger { + --ct-btn-color: #fff; + --ct-btn-bg: #f7473a; + --ct-btn-border-color: #f7473a; + --ct-btn-hover-color: #fff; + --ct-btn-hover-bg: #e44236; + --ct-btn-hover-border-color: #e44236; + --ct-btn-focus-shadow-rgb: 248, 99, 88; + --ct-btn-active-color: #fff; + --ct-btn-active-bg: #e44236; + --ct-btn-active-border-color: #e44236; + --ct-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); + --ct-btn-disabled-color: #fff; + --ct-btn-disabled-bg: #f7473a; + --ct-btn-disabled-border-color: #f7473a; +} + +.btn-light { + --ct-btn-color: #212529; + --ct-btn-bg: #f2f2f7; + --ct-btn-border-color: #f2f2f7; + --ct-btn-hover-color: #212529; + --ct-btn-hover-bg: #e0e0e4; + --ct-btn-hover-border-color: #e0e0e4; + --ct-btn-focus-shadow-rgb: 211, 211, 216; + --ct-btn-active-color: #212529; + --ct-btn-active-bg: #e0e0e4; + --ct-btn-active-border-color: #e0e0e4; + --ct-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); + --ct-btn-disabled-color: #212529; + --ct-btn-disabled-bg: #f2f2f7; + --ct-btn-disabled-border-color: #f2f2f7; +} + +.btn-dark { + --ct-btn-color: #fff; + --ct-btn-bg: #49526b; + --ct-btn-border-color: #49526b; + --ct-btn-hover-color: #fff; + --ct-btn-hover-bg: #646c81; + --ct-btn-hover-border-color: #5b637a; + --ct-btn-focus-shadow-rgb: 100, 108, 129; + --ct-btn-active-color: #fff; + --ct-btn-active-bg: #646c81; + --ct-btn-active-border-color: #5b637a; + --ct-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); + --ct-btn-disabled-color: #fff; + --ct-btn-disabled-bg: #49526b; + --ct-btn-disabled-border-color: #49526b; +} + +.btn-purple { + --ct-btn-color: #fff; + --ct-btn-bg: #815ac5; + --ct-btn-border-color: #815ac5; + --ct-btn-hover-color: #fff; + --ct-btn-hover-bg: #7753b6; + --ct-btn-hover-border-color: #7753b6; + --ct-btn-focus-shadow-rgb: 148, 115, 206; + --ct-btn-active-color: #fff; + --ct-btn-active-bg: #7753b6; + --ct-btn-active-border-color: #7753b6; + --ct-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); + --ct-btn-disabled-color: #fff; + --ct-btn-disabled-bg: #815ac5; + --ct-btn-disabled-border-color: #815ac5; +} + +.btn-pink { + --ct-btn-color: #fff; + --ct-btn-bg: #ff679b; + --ct-btn-border-color: #ff679b; + --ct-btn-hover-color: #fff; + --ct-btn-hover-bg: #ec5f8f; + --ct-btn-hover-border-color: #ec5f8f; + --ct-btn-focus-shadow-rgb: 255, 126, 170; + --ct-btn-active-color: #fff; + --ct-btn-active-bg: #ec5f8f; + --ct-btn-active-border-color: #ec5f8f; + --ct-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); + --ct-btn-disabled-color: #fff; + --ct-btn-disabled-bg: #ff679b; + --ct-btn-disabled-border-color: #ff679b; +} + +.btn-outline-primary { + --ct-btn-color: #4254ba; + --ct-btn-border-color: #4254ba; + --ct-btn-hover-color: #fff; + --ct-btn-hover-bg: #4254ba; + --ct-btn-hover-border-color: #4254ba; + --ct-btn-focus-shadow-rgb: 66, 84, 186; + --ct-btn-active-color: #fff; + --ct-btn-active-bg: #4254ba; + --ct-btn-active-border-color: #4254ba; + --ct-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); + --ct-btn-disabled-color: #4254ba; + --ct-btn-disabled-bg: transparent; + --ct-btn-disabled-border-color: #4254ba; + --ct-gradient: none; +} + +.btn-outline-secondary { + --ct-btn-color: #6c757d; + --ct-btn-border-color: #6c757d; + --ct-btn-hover-color: #fff; + --ct-btn-hover-bg: #6c757d; + --ct-btn-hover-border-color: #6c757d; + --ct-btn-focus-shadow-rgb: 108, 117, 125; + --ct-btn-active-color: #fff; + --ct-btn-active-bg: #6c757d; + --ct-btn-active-border-color: #6c757d; + --ct-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); + --ct-btn-disabled-color: #6c757d; + --ct-btn-disabled-bg: transparent; + --ct-btn-disabled-border-color: #6c757d; + --ct-gradient: none; +} + +.btn-outline-success { + --ct-btn-color: #17a497; + --ct-btn-border-color: #17a497; + --ct-btn-hover-color: #fff; + --ct-btn-hover-bg: #17a497; + --ct-btn-hover-border-color: #17a497; + --ct-btn-focus-shadow-rgb: 23, 164, 151; + --ct-btn-active-color: #fff; + --ct-btn-active-bg: #17a497; + --ct-btn-active-border-color: #17a497; + --ct-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); + --ct-btn-disabled-color: #17a497; + --ct-btn-disabled-bg: transparent; + --ct-btn-disabled-border-color: #17a497; + --ct-gradient: none; +} + +.btn-outline-info { + --ct-btn-color: #299bf6; + --ct-btn-border-color: #299bf6; + --ct-btn-hover-color: #fff; + --ct-btn-hover-bg: #299bf6; + --ct-btn-hover-border-color: #299bf6; + --ct-btn-focus-shadow-rgb: 41, 155, 246; + --ct-btn-active-color: #fff; + --ct-btn-active-bg: #299bf6; + --ct-btn-active-border-color: #299bf6; + --ct-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); + --ct-btn-disabled-color: #299bf6; + --ct-btn-disabled-bg: transparent; + --ct-btn-disabled-border-color: #299bf6; + --ct-gradient: none; +} + +.btn-outline-warning { + --ct-btn-color: #fec20d; + --ct-btn-border-color: #fec20d; + --ct-btn-hover-color: #fff; + --ct-btn-hover-bg: #fec20d; + --ct-btn-hover-border-color: #fec20d; + --ct-btn-focus-shadow-rgb: 254, 194, 13; + --ct-btn-active-color: #fff; + --ct-btn-active-bg: #fec20d; + --ct-btn-active-border-color: #fec20d; + --ct-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); + --ct-btn-disabled-color: #fec20d; + --ct-btn-disabled-bg: transparent; + --ct-btn-disabled-border-color: #fec20d; + --ct-gradient: none; +} + +.btn-outline-danger { + --ct-btn-color: #f7473a; + --ct-btn-border-color: #f7473a; + --ct-btn-hover-color: #fff; + --ct-btn-hover-bg: #f7473a; + --ct-btn-hover-border-color: #f7473a; + --ct-btn-focus-shadow-rgb: 247, 71, 58; + --ct-btn-active-color: #fff; + --ct-btn-active-bg: #f7473a; + --ct-btn-active-border-color: #f7473a; + --ct-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); + --ct-btn-disabled-color: #f7473a; + --ct-btn-disabled-bg: transparent; + --ct-btn-disabled-border-color: #f7473a; + --ct-gradient: none; +} + +.btn-outline-light { + --ct-btn-color: #f2f2f7; + --ct-btn-border-color: #f2f2f7; + --ct-btn-hover-color: #212529; + --ct-btn-hover-bg: #f2f2f7; + --ct-btn-hover-border-color: #f2f2f7; + --ct-btn-focus-shadow-rgb: 242, 242, 247; + --ct-btn-active-color: #212529; + --ct-btn-active-bg: #f2f2f7; + --ct-btn-active-border-color: #f2f2f7; + --ct-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); + --ct-btn-disabled-color: #f2f2f7; + --ct-btn-disabled-bg: transparent; + --ct-btn-disabled-border-color: #f2f2f7; + --ct-gradient: none; +} + +.btn-outline-dark { + --ct-btn-color: #49526b; + --ct-btn-border-color: #49526b; + --ct-btn-hover-color: #fff; + --ct-btn-hover-bg: #49526b; + --ct-btn-hover-border-color: #49526b; + --ct-btn-focus-shadow-rgb: 73, 82, 107; + --ct-btn-active-color: #fff; + --ct-btn-active-bg: #49526b; + --ct-btn-active-border-color: #49526b; + --ct-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); + --ct-btn-disabled-color: #49526b; + --ct-btn-disabled-bg: transparent; + --ct-btn-disabled-border-color: #49526b; + --ct-gradient: none; +} + +.btn-outline-purple { + --ct-btn-color: #815ac5; + --ct-btn-border-color: #815ac5; + --ct-btn-hover-color: #fff; + --ct-btn-hover-bg: #815ac5; + --ct-btn-hover-border-color: #815ac5; + --ct-btn-focus-shadow-rgb: 129, 90, 197; + --ct-btn-active-color: #fff; + --ct-btn-active-bg: #815ac5; + --ct-btn-active-border-color: #815ac5; + --ct-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); + --ct-btn-disabled-color: #815ac5; + --ct-btn-disabled-bg: transparent; + --ct-btn-disabled-border-color: #815ac5; + --ct-gradient: none; +} + +.btn-outline-pink { + --ct-btn-color: #ff679b; + --ct-btn-border-color: #ff679b; + --ct-btn-hover-color: #fff; + --ct-btn-hover-bg: #ff679b; + --ct-btn-hover-border-color: #ff679b; + --ct-btn-focus-shadow-rgb: 255, 103, 155; + --ct-btn-active-color: #fff; + --ct-btn-active-bg: #ff679b; + --ct-btn-active-border-color: #ff679b; + --ct-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125); + --ct-btn-disabled-color: #ff679b; + --ct-btn-disabled-bg: transparent; + --ct-btn-disabled-border-color: #ff679b; + --ct-gradient: none; +} + +.btn-link { + --ct-btn-font-weight: 400; + --ct-btn-color: var(--ct-link-color); + --ct-btn-bg: transparent; + --ct-btn-border-color: transparent; + --ct-btn-hover-color: var(--ct-link-hover-color); + --ct-btn-hover-border-color: transparent; + --ct-btn-active-color: var(--ct-link-hover-color); + --ct-btn-active-border-color: transparent; + --ct-btn-disabled-color: #6c757d; + --ct-btn-disabled-border-color: transparent; + --ct-btn-box-shadow: 0 0 0 #000; + --ct-btn-focus-shadow-rgb: 94, 110, 196; + text-decoration: none; +} +.btn-link:focus-visible { + color: var(--ct-btn-color); +} +.btn-link:hover { + color: var(--ct-btn-hover-color); +} + +.btn-lg, .btn-group-lg > .btn { + --ct-btn-padding-y: 0.5rem; + --ct-btn-padding-x: 1rem; + --ct-btn-font-size: 1.21625rem; + --ct-btn-border-radius: var(--ct-border-radius); +} + +.btn-sm, .btn-group-sm > .btn { + --ct-btn-padding-y: 0.28rem; + --ct-btn-padding-x: 0.8rem; + --ct-btn-font-size: 0.85rem; + --ct-btn-border-radius: var(--ct-border-radius-sm); +} + +.fade { + -webkit-transition: opacity 0.15s linear; + transition: opacity 0.15s linear; +} +@media (prefers-reduced-motion: reduce) { + .fade { + -webkit-transition: none; + transition: none; + } +} +.fade:not(.show) { + opacity: 0; +} + +.collapse:not(.show) { + display: none; +} + +.collapsing { + height: 0; + overflow: hidden; + -webkit-transition: height 0.35s ease; + transition: height 0.35s ease; +} +@media (prefers-reduced-motion: reduce) { + .collapsing { + -webkit-transition: none; + transition: none; + } +} +.collapsing.collapse-horizontal { + width: 0; + height: auto; + -webkit-transition: width 0.35s ease; + transition: width 0.35s ease; +} +@media (prefers-reduced-motion: reduce) { + .collapsing.collapse-horizontal { + -webkit-transition: none; + transition: none; + } +} + +.dropup, +.dropend, +.dropdown, +.dropstart, +.dropup-center, +.dropdown-center { + position: relative; +} + +.dropdown-toggle { + white-space: nowrap; +} +.dropdown-toggle::after { + display: inline-block; + margin-right: 0.35em; + vertical-align: 0.1575em; + content: ""; + border-top: 0.35em solid; + border-left: 0.35em solid transparent; + border-bottom: 0; + border-right: 0.35em solid transparent; +} +.dropdown-toggle:empty::after { + margin-right: 0; +} + +.dropdown-menu { + --ct-dropdown-zindex: 1000; + --ct-dropdown-min-width: 10rem; + --ct-dropdown-padding-x: 0; + --ct-dropdown-padding-y: 0.25rem; + --ct-dropdown-spacer: 0.125rem; + --ct-dropdown-font-size: 0.875rem; + --ct-dropdown-color: var(--ct-body-color); + --ct-dropdown-bg: var(--ct-secondary-bg); + --ct-dropdown-border-color: var(--ct-border-color); + --ct-dropdown-border-radius: 0.15rem; + --ct-dropdown-border-width: 0; + --ct-dropdown-inner-border-radius: 0.15rem; + --ct-dropdown-divider-bg: var(--ct-border-color); + --ct-dropdown-divider-margin-y: 0.625rem; + --ct-dropdown-box-shadow: var(--ct-box-shadow-lg); + --ct-dropdown-link-color: var(--ct-body-color); + --ct-dropdown-link-hover-color: var(--ct-primary); + --ct-dropdown-link-hover-bg: var(--ct-primary-bg-subtle); + --ct-dropdown-link-active-color: var(--ct-tertiary-color); + --ct-dropdown-link-active-bg: var(--ct-tertiary-bg); + --ct-dropdown-link-disabled-color: #adb5bd; + --ct-dropdown-item-padding-x: 0.9375rem; + --ct-dropdown-item-padding-y: 0.375rem; + --ct-dropdown-header-color: inherit; + --ct-dropdown-header-padding-x: 0.703125rem; + --ct-dropdown-header-padding-y: 0.5rem; + position: absolute; + z-index: var(--ct-dropdown-zindex); + display: none; + min-width: var(--ct-dropdown-min-width); + padding: var(--ct-dropdown-padding-y) var(--ct-dropdown-padding-x); + margin: 0; + font-size: var(--ct-dropdown-font-size); + color: var(--ct-dropdown-color); + text-align: right; + list-style: none; + background-color: var(--ct-dropdown-bg); + background-clip: padding-box; + border: var(--ct-dropdown-border-width) solid var(--ct-dropdown-border-color); + border-radius: var(--ct-dropdown-border-radius); +} +.dropdown-menu[data-bs-popper] { + top: 100%; + right: 0; + margin-top: var(--ct-dropdown-spacer); +} + +.dropdown-menu-start { + --bs-position: start; +} +.dropdown-menu-start[data-bs-popper] { + left: auto; + right: 0; +} + +.dropdown-menu-end { + --bs-position: end; +} +.dropdown-menu-end[data-bs-popper] { + left: 0; + right: auto; +} + +@media (min-width: 576px) { + .dropdown-menu-sm-start { + --bs-position: start; + } + .dropdown-menu-sm-start[data-bs-popper] { + left: auto; + right: 0; + } + .dropdown-menu-sm-end { + --bs-position: end; + } + .dropdown-menu-sm-end[data-bs-popper] { + left: 0; + right: auto; + } +} +@media (min-width: 768px) { + .dropdown-menu-md-start { + --bs-position: start; + } + .dropdown-menu-md-start[data-bs-popper] { + left: auto; + right: 0; + } + .dropdown-menu-md-end { + --bs-position: end; + } + .dropdown-menu-md-end[data-bs-popper] { + left: 0; + right: auto; + } +} +@media (min-width: 992px) { + .dropdown-menu-lg-start { + --bs-position: start; + } + .dropdown-menu-lg-start[data-bs-popper] { + left: auto; + right: 0; + } + .dropdown-menu-lg-end { + --bs-position: end; + } + .dropdown-menu-lg-end[data-bs-popper] { + left: 0; + right: auto; + } +} +@media (min-width: 1200px) { + .dropdown-menu-xl-start { + --bs-position: start; + } + .dropdown-menu-xl-start[data-bs-popper] { + left: auto; + right: 0; + } + .dropdown-menu-xl-end { + --bs-position: end; + } + .dropdown-menu-xl-end[data-bs-popper] { + left: 0; + right: auto; + } +} +@media (min-width: 1400px) { + .dropdown-menu-xxl-start { + --bs-position: start; + } + .dropdown-menu-xxl-start[data-bs-popper] { + left: auto; + right: 0; + } + .dropdown-menu-xxl-end { + --bs-position: end; + } + .dropdown-menu-xxl-end[data-bs-popper] { + left: 0; + right: auto; + } +} +.dropup .dropdown-menu[data-bs-popper] { + top: auto; + bottom: 100%; + margin-top: 0; + margin-bottom: var(--ct-dropdown-spacer); +} +.dropup .dropdown-toggle::after { + display: inline-block; + margin-right: 0.35em; + vertical-align: 0.1575em; + content: ""; + border-top: 0; + border-left: 0.35em solid transparent; + border-bottom: 0.35em solid; + border-right: 0.35em solid transparent; +} +.dropup .dropdown-toggle:empty::after { + margin-right: 0; +} + +.dropend .dropdown-menu[data-bs-popper] { + top: 0; + left: auto; + right: 100%; + margin-top: 0; + margin-right: var(--ct-dropdown-spacer); +} +.dropend .dropdown-toggle::after { + display: inline-block; + margin-right: 0.35em; + vertical-align: 0.1575em; + content: ""; + border-top: 0.35em solid transparent; + border-left: 0; + border-bottom: 0.35em solid transparent; + border-right: 0.35em solid; +} +.dropend .dropdown-toggle:empty::after { + margin-right: 0; +} +.dropend .dropdown-toggle::after { + vertical-align: 0; +} + +.dropstart .dropdown-menu[data-bs-popper] { + top: 0; + left: 100%; + right: auto; + margin-top: 0; + margin-left: var(--ct-dropdown-spacer); +} +.dropstart .dropdown-toggle::after { + display: inline-block; + margin-right: 0.35em; + vertical-align: 0.1575em; + content: ""; +} +.dropstart .dropdown-toggle::after { + display: none; +} +.dropstart .dropdown-toggle::before { + display: inline-block; + margin-left: 0.35em; + vertical-align: 0.1575em; + content: ""; + border-top: 0.35em solid transparent; + border-left: 0.35em solid; + border-bottom: 0.35em solid transparent; +} +.dropstart .dropdown-toggle:empty::after { + margin-right: 0; +} +.dropstart .dropdown-toggle::before { + vertical-align: 0; +} + +.dropdown-divider { + height: 0; + margin: var(--ct-dropdown-divider-margin-y) 0; + overflow: hidden; + border-top: 1px solid var(--ct-dropdown-divider-bg); + opacity: 1; +} + +.dropdown-item { + display: block; + width: 100%; + padding: var(--ct-dropdown-item-padding-y) var(--ct-dropdown-item-padding-x); + clear: both; + font-weight: 400; + color: var(--ct-dropdown-link-color); + text-align: inherit; + white-space: nowrap; + background-color: transparent; + border: 0; + border-radius: var(--ct-dropdown-item-border-radius, 0); +} +.dropdown-item:hover, .dropdown-item:focus { + color: var(--ct-dropdown-link-hover-color); + background-color: var(--ct-dropdown-link-hover-bg); +} +.dropdown-item.active, .dropdown-item:active { + color: var(--ct-dropdown-link-active-color); + text-decoration: none; + background-color: var(--ct-dropdown-link-active-bg); +} +.dropdown-item.disabled, .dropdown-item:disabled { + color: var(--ct-dropdown-link-disabled-color); + pointer-events: none; + background-color: transparent; +} + +.dropdown-menu.show { + display: block; +} + +.dropdown-header { + display: block; + padding: var(--ct-dropdown-header-padding-y) var(--ct-dropdown-header-padding-x); + margin-bottom: 0; + font-size: 0.85rem; + color: var(--ct-dropdown-header-color); + white-space: nowrap; +} + +.dropdown-item-text { + display: block; + padding: var(--ct-dropdown-item-padding-y) var(--ct-dropdown-item-padding-x); + color: var(--ct-dropdown-link-color); +} + +.dropdown-menu-dark { + --ct-dropdown-color: #dee2e6; + --ct-dropdown-bg: #343a40; + --ct-dropdown-border-color: var(--ct-border-color); + --ct-dropdown-box-shadow: ; + --ct-dropdown-link-color: #dee2e6; + --ct-dropdown-link-hover-color: #fff; + --ct-dropdown-divider-bg: var(--ct-border-color); + --ct-dropdown-link-hover-bg: rgba(255, 255, 255, 0.15); + --ct-dropdown-link-active-color: var(--ct-tertiary-color); + --ct-dropdown-link-active-bg: var(--ct-tertiary-bg); + --ct-dropdown-link-disabled-color: #adb5bd; + --ct-dropdown-header-color: #adb5bd; +} + +.btn-group, +.btn-group-vertical { + position: relative; + display: -webkit-inline-box; + display: -ms-inline-flexbox; + display: inline-flex; + vertical-align: middle; +} +.btn-group > .btn, +.btn-group-vertical > .btn { + position: relative; + -webkit-box-flex: 1; + -ms-flex: 1 1 auto; + flex: 1 1 auto; +} +.btn-group > .btn-check:checked + .btn, +.btn-group > .btn-check:focus + .btn, +.btn-group > .btn:hover, +.btn-group > .btn:focus, +.btn-group > .btn:active, +.btn-group > .btn.active, +.btn-group-vertical > .btn-check:checked + .btn, +.btn-group-vertical > .btn-check:focus + .btn, +.btn-group-vertical > .btn:hover, +.btn-group-vertical > .btn:focus, +.btn-group-vertical > .btn:active, +.btn-group-vertical > .btn.active { + z-index: 1; +} + +.btn-toolbar { + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -ms-flex-wrap: wrap; + flex-wrap: wrap; + -webkit-box-pack: start; + -ms-flex-pack: start; + justify-content: flex-start; +} +.btn-toolbar .input-group { + width: auto; +} + +.btn-group { + border-radius: var(--ct-border-radius); +} +.btn-group > :not(.btn-check:first-child) + .btn, +.btn-group > .btn-group:not(:first-child) { + margin-right: calc(var(--ct-border-width) * -1); +} +.btn-group > .btn:not(:last-child):not(.dropdown-toggle), +.btn-group > .btn.dropdown-toggle-split:first-child, +.btn-group > .btn-group:not(:last-child) > .btn { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} +.btn-group > .btn:nth-child(n+3), +.btn-group > :not(.btn-check) + .btn, +.btn-group > .btn-group:not(:first-child) > .btn { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} + +.dropdown-toggle-split { + padding-left: 0.675rem; + padding-right: 0.675rem; +} +.dropdown-toggle-split::after, .dropup .dropdown-toggle-split::after, .dropend .dropdown-toggle-split::after { + margin-right: 0; +} +.dropstart .dropdown-toggle-split::before { + margin-left: 0; +} + +.btn-sm + .dropdown-toggle-split, .btn-group-sm > .btn + .dropdown-toggle-split { + padding-left: 0.6rem; + padding-right: 0.6rem; +} + +.btn-lg + .dropdown-toggle-split, .btn-group-lg > .btn + .dropdown-toggle-split { + padding-left: 0.75rem; + padding-right: 0.75rem; +} + +.btn-group-vertical { + -webkit-box-orient: vertical; + -webkit-box-direction: normal; + -ms-flex-direction: column; + flex-direction: column; + -webkit-box-align: start; + -ms-flex-align: start; + align-items: flex-start; + -webkit-box-pack: center; + -ms-flex-pack: center; + justify-content: center; +} +.btn-group-vertical > .btn, +.btn-group-vertical > .btn-group { + width: 100%; +} +.btn-group-vertical > .btn:not(:first-child), +.btn-group-vertical > .btn-group:not(:first-child) { + margin-top: calc(var(--ct-border-width) * -1); +} +.btn-group-vertical > .btn:not(:last-child):not(.dropdown-toggle), +.btn-group-vertical > .btn-group:not(:last-child) > .btn { + border-bottom-left-radius: 0; + border-bottom-right-radius: 0; +} +.btn-group-vertical > .btn ~ .btn, +.btn-group-vertical > .btn-group:not(:first-child) > .btn { + border-top-right-radius: 0; + border-top-left-radius: 0; +} + +.nav { + --ct-nav-link-padding-x: 1rem; + --ct-nav-link-padding-y: 0.5rem; + --ct-nav-link-font-weight: ; + --ct-nav-link-color: var(--ct-link-color); + --ct-nav-link-hover-color: var(--ct-link-hover-color); + --ct-nav-link-disabled-color: var(--ct-secondary-color); + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -ms-flex-wrap: wrap; + flex-wrap: wrap; + padding-right: 0; + margin-bottom: 0; + list-style: none; +} + +.nav-link { + display: block; + padding: var(--ct-nav-link-padding-y) var(--ct-nav-link-padding-x); + font-size: var(--ct-nav-link-font-size); + font-weight: var(--ct-nav-link-font-weight); + color: var(--ct-nav-link-color); + background: none; + border: 0; + -webkit-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out; + transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out; +} +@media (prefers-reduced-motion: reduce) { + .nav-link { + -webkit-transition: none; + transition: none; + } +} +.nav-link:hover, .nav-link:focus { + color: var(--ct-nav-link-hover-color); +} +.nav-link:focus-visible { + outline: 0; + -webkit-box-shadow: 0 0 0 0.25rem rgba(66, 84, 186, 0.25); + box-shadow: 0 0 0 0.25rem rgba(66, 84, 186, 0.25); +} +.nav-link.disabled { + color: var(--ct-nav-link-disabled-color); + pointer-events: none; + cursor: default; +} + +.nav-tabs { + --ct-nav-tabs-border-width: var(--ct-border-width); + --ct-nav-tabs-border-color: var(--ct-border-color); + --ct-nav-tabs-border-radius: var(--ct-border-radius); + --ct-nav-tabs-link-hover-border-color: var(--ct-secondary-bg) var(--ct-secondary-bg) var(--ct-border-color); + --ct-nav-tabs-link-active-color: var(--ct-emphasis-color); + --ct-nav-tabs-link-active-bg: var(--ct-secondary-bg); + --ct-nav-tabs-link-active-border-color: var(--ct-border-color) var(--ct-border-color) var(--ct-secondary-bg); + border-bottom: var(--ct-nav-tabs-border-width) solid var(--ct-nav-tabs-border-color); +} +.nav-tabs .nav-link { + margin-bottom: calc(-1 * var(--ct-nav-tabs-border-width)); + border: var(--ct-nav-tabs-border-width) solid transparent; + border-top-right-radius: var(--ct-nav-tabs-border-radius); + border-top-left-radius: var(--ct-nav-tabs-border-radius); +} +.nav-tabs .nav-link:hover, .nav-tabs .nav-link:focus { + isolation: isolate; + border-color: var(--ct-nav-tabs-link-hover-border-color); +} +.nav-tabs .nav-link.disabled, .nav-tabs .nav-link:disabled { + color: var(--ct-nav-link-disabled-color); + background-color: transparent; + border-color: transparent; +} +.nav-tabs .nav-link.active, +.nav-tabs .nav-item.show .nav-link { + color: var(--ct-nav-tabs-link-active-color); + background-color: var(--ct-nav-tabs-link-active-bg); + border-color: var(--ct-nav-tabs-link-active-border-color); +} +.nav-tabs .dropdown-menu { + margin-top: calc(-1 * var(--ct-nav-tabs-border-width)); + border-top-right-radius: 0; + border-top-left-radius: 0; +} + +.nav-pills { + --ct-nav-pills-border-radius: 0.15rem; + --ct-nav-pills-link-active-color: #fff; + --ct-nav-pills-link-active-bg: #4254ba; +} +.nav-pills .nav-link { + border-radius: var(--ct-nav-pills-border-radius); +} +.nav-pills .nav-link:disabled { + color: var(--ct-nav-link-disabled-color); + background-color: transparent; + border-color: transparent; +} +.nav-pills .nav-link.active, +.nav-pills .show > .nav-link { + color: var(--ct-nav-pills-link-active-color); + background-color: var(--ct-nav-pills-link-active-bg); +} + +.nav-underline { + --ct-nav-underline-gap: 1rem; + --ct-nav-underline-border-width: 0.125rem; + --ct-nav-underline-link-active-color: var(--ct-emphasis-color); + gap: var(--ct-nav-underline-gap); +} +.nav-underline .nav-link { + padding-left: 0; + padding-right: 0; + border-bottom: var(--ct-nav-underline-border-width) solid transparent; +} +.nav-underline .nav-link:hover, .nav-underline .nav-link:focus { + border-bottom-color: currentcolor; +} +.nav-underline .nav-link.active, +.nav-underline .show > .nav-link { + font-weight: 700; + color: var(--ct-nav-underline-link-active-color); + border-bottom-color: currentcolor; +} + +.nav-fill > .nav-link, +.nav-fill .nav-item { + -webkit-box-flex: 1; + -ms-flex: 1 1 auto; + flex: 1 1 auto; + text-align: center; +} + +.nav-justified > .nav-link, +.nav-justified .nav-item { + -ms-flex-preferred-size: 0; + flex-basis: 0; + -webkit-box-flex: 1; + -ms-flex-positive: 1; + flex-grow: 1; + text-align: center; +} + +.nav-fill .nav-item .nav-link, +.nav-justified .nav-item .nav-link { + width: 100%; +} + +.tab-content > .tab-pane { + display: none; +} +.tab-content > .active { + display: block; +} + +.navbar { + --ct-navbar-padding-x: 0; + --ct-navbar-padding-y: 0.625rem; + --ct-navbar-color: rgba(var(--ct-emphasis-color-rgb), 0.65); + --ct-navbar-hover-color: rgba(var(--ct-emphasis-color-rgb), 0.8); + --ct-navbar-disabled-color: rgba(var(--ct-emphasis-color-rgb), 0.3); + --ct-navbar-active-color: rgba(var(--ct-emphasis-color-rgb), 1); + --ct-navbar-brand-padding-y: 0.2440625rem; + --ct-navbar-brand-margin-end: 1rem; + --ct-navbar-brand-font-size: 1.21625rem; + --ct-navbar-brand-color: rgba(var(--ct-emphasis-color-rgb), 1); + --ct-navbar-brand-hover-color: rgba(var(--ct-emphasis-color-rgb), 1); + --ct-navbar-nav-link-padding-x: 0.5rem; + --ct-navbar-toggler-padding-y: 0.25rem; + --ct-navbar-toggler-padding-x: 0.75rem; + --ct-navbar-toggler-font-size: 1.21625rem; + --ct-navbar-toggler-icon-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28108, 117, 125, 0.75%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e"); + --ct-navbar-toggler-border-color: rgba(var(--ct-emphasis-color-rgb), 0.15); + --ct-navbar-toggler-border-radius: var(--ct-border-radius); + --ct-navbar-toggler-focus-width: 0.15rem; + --ct-navbar-toggler-transition: box-shadow 0.15s ease-in-out; + position: relative; + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -ms-flex-wrap: wrap; + flex-wrap: wrap; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + -webkit-box-pack: justify; + -ms-flex-pack: justify; + justify-content: space-between; + padding: var(--ct-navbar-padding-y) var(--ct-navbar-padding-x); +} +.navbar > .container, +.navbar > .container-fluid, +.navbar > .container-sm, +.navbar > .container-md, +.navbar > .container-lg, +.navbar > .container-xl, +.navbar > .container-xxl { + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -ms-flex-wrap: inherit; + flex-wrap: inherit; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + -webkit-box-pack: justify; + -ms-flex-pack: justify; + justify-content: space-between; +} +.navbar-brand { + padding-top: var(--ct-navbar-brand-padding-y); + padding-bottom: var(--ct-navbar-brand-padding-y); + margin-left: var(--ct-navbar-brand-margin-end); + font-size: var(--ct-navbar-brand-font-size); + color: var(--ct-navbar-brand-color); + white-space: nowrap; +} +.navbar-brand:hover, .navbar-brand:focus { + color: var(--ct-navbar-brand-hover-color); +} + +.navbar-nav { + --ct-nav-link-padding-x: 0; + --ct-nav-link-padding-y: 0.5rem; + --ct-nav-link-font-weight: ; + --ct-nav-link-color: var(--ct-navbar-color); + --ct-nav-link-hover-color: var(--ct-navbar-hover-color); + --ct-nav-link-disabled-color: var(--ct-navbar-disabled-color); + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-orient: vertical; + -webkit-box-direction: normal; + -ms-flex-direction: column; + flex-direction: column; + padding-right: 0; + margin-bottom: 0; + list-style: none; +} +.navbar-nav .nav-link.active, .navbar-nav .nav-link.show { + color: var(--ct-navbar-active-color); +} +.navbar-nav .dropdown-menu { + position: static; +} + +.navbar-text { + padding-top: 0.5rem; + padding-bottom: 0.5rem; + color: var(--ct-navbar-color); +} +.navbar-text a, +.navbar-text a:hover, +.navbar-text a:focus { + color: var(--ct-navbar-active-color); +} + +.navbar-collapse { + -ms-flex-preferred-size: 100%; + flex-basis: 100%; + -webkit-box-flex: 1; + -ms-flex-positive: 1; + flex-grow: 1; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; +} + +.navbar-toggler { + padding: var(--ct-navbar-toggler-padding-y) var(--ct-navbar-toggler-padding-x); + font-size: var(--ct-navbar-toggler-font-size); + line-height: 1; + color: var(--ct-navbar-color); + background-color: transparent; + border: var(--ct-border-width) solid var(--ct-navbar-toggler-border-color); + border-radius: var(--ct-navbar-toggler-border-radius); + -webkit-transition: var(--ct-navbar-toggler-transition); + transition: var(--ct-navbar-toggler-transition); +} +@media (prefers-reduced-motion: reduce) { + .navbar-toggler { + -webkit-transition: none; + transition: none; + } +} +.navbar-toggler:hover { + text-decoration: none; +} +.navbar-toggler:focus { + text-decoration: none; + outline: 0; + -webkit-box-shadow: 0 0 0 var(--ct-navbar-toggler-focus-width); + box-shadow: 0 0 0 var(--ct-navbar-toggler-focus-width); +} + +.navbar-toggler-icon { + display: inline-block; + width: 1.5em; + height: 1.5em; + vertical-align: middle; + background-image: var(--ct-navbar-toggler-icon-bg); + background-repeat: no-repeat; + background-position: center; + background-size: 100%; +} + +.navbar-nav-scroll { + max-height: var(--ct-scroll-height, 75vh); + overflow-y: auto; +} + +@media (min-width: 576px) { + .navbar-expand-sm { + -ms-flex-wrap: nowrap; + flex-wrap: nowrap; + -webkit-box-pack: start; + -ms-flex-pack: start; + justify-content: flex-start; + } + .navbar-expand-sm .navbar-nav { + -webkit-box-orient: horizontal; + -webkit-box-direction: normal; + -ms-flex-direction: row; + flex-direction: row; + } + .navbar-expand-sm .navbar-nav .dropdown-menu { + position: absolute; + } + .navbar-expand-sm .navbar-nav .nav-link { + padding-left: var(--ct-navbar-nav-link-padding-x); + padding-right: var(--ct-navbar-nav-link-padding-x); + } + .navbar-expand-sm .navbar-nav-scroll { + overflow: visible; + } + .navbar-expand-sm .navbar-collapse { + display: -webkit-box !important; + display: -ms-flexbox !important; + display: flex !important; + -ms-flex-preferred-size: auto; + flex-basis: auto; + } + .navbar-expand-sm .navbar-toggler { + display: none; + } + .navbar-expand-sm .offcanvas { + position: static; + z-index: auto; + -webkit-box-flex: 1; + -ms-flex-positive: 1; + flex-grow: 1; + width: auto !important; + height: auto !important; + visibility: visible !important; + background-color: transparent !important; + border: 0 !important; + -webkit-transform: none !important; + transform: none !important; + -webkit-transition: none; + transition: none; + } + .navbar-expand-sm .offcanvas .offcanvas-header { + display: none; + } + .navbar-expand-sm .offcanvas .offcanvas-body { + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-flex: 0; + -ms-flex-positive: 0; + flex-grow: 0; + padding: 0; + overflow-y: visible; + } +} +@media (min-width: 768px) { + .navbar-expand-md { + -ms-flex-wrap: nowrap; + flex-wrap: nowrap; + -webkit-box-pack: start; + -ms-flex-pack: start; + justify-content: flex-start; + } + .navbar-expand-md .navbar-nav { + -webkit-box-orient: horizontal; + -webkit-box-direction: normal; + -ms-flex-direction: row; + flex-direction: row; + } + .navbar-expand-md .navbar-nav .dropdown-menu { + position: absolute; + } + .navbar-expand-md .navbar-nav .nav-link { + padding-left: var(--ct-navbar-nav-link-padding-x); + padding-right: var(--ct-navbar-nav-link-padding-x); + } + .navbar-expand-md .navbar-nav-scroll { + overflow: visible; + } + .navbar-expand-md .navbar-collapse { + display: -webkit-box !important; + display: -ms-flexbox !important; + display: flex !important; + -ms-flex-preferred-size: auto; + flex-basis: auto; + } + .navbar-expand-md .navbar-toggler { + display: none; + } + .navbar-expand-md .offcanvas { + position: static; + z-index: auto; + -webkit-box-flex: 1; + -ms-flex-positive: 1; + flex-grow: 1; + width: auto !important; + height: auto !important; + visibility: visible !important; + background-color: transparent !important; + border: 0 !important; + -webkit-transform: none !important; + transform: none !important; + -webkit-transition: none; + transition: none; + } + .navbar-expand-md .offcanvas .offcanvas-header { + display: none; + } + .navbar-expand-md .offcanvas .offcanvas-body { + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-flex: 0; + -ms-flex-positive: 0; + flex-grow: 0; + padding: 0; + overflow-y: visible; + } +} +@media (min-width: 992px) { + .navbar-expand-lg { + -ms-flex-wrap: nowrap; + flex-wrap: nowrap; + -webkit-box-pack: start; + -ms-flex-pack: start; + justify-content: flex-start; + } + .navbar-expand-lg .navbar-nav { + -webkit-box-orient: horizontal; + -webkit-box-direction: normal; + -ms-flex-direction: row; + flex-direction: row; + } + .navbar-expand-lg .navbar-nav .dropdown-menu { + position: absolute; + } + .navbar-expand-lg .navbar-nav .nav-link { + padding-left: var(--ct-navbar-nav-link-padding-x); + padding-right: var(--ct-navbar-nav-link-padding-x); + } + .navbar-expand-lg .navbar-nav-scroll { + overflow: visible; + } + .navbar-expand-lg .navbar-collapse { + display: -webkit-box !important; + display: -ms-flexbox !important; + display: flex !important; + -ms-flex-preferred-size: auto; + flex-basis: auto; + } + .navbar-expand-lg .navbar-toggler { + display: none; + } + .navbar-expand-lg .offcanvas { + position: static; + z-index: auto; + -webkit-box-flex: 1; + -ms-flex-positive: 1; + flex-grow: 1; + width: auto !important; + height: auto !important; + visibility: visible !important; + background-color: transparent !important; + border: 0 !important; + -webkit-transform: none !important; + transform: none !important; + -webkit-transition: none; + transition: none; + } + .navbar-expand-lg .offcanvas .offcanvas-header { + display: none; + } + .navbar-expand-lg .offcanvas .offcanvas-body { + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-flex: 0; + -ms-flex-positive: 0; + flex-grow: 0; + padding: 0; + overflow-y: visible; + } +} +@media (min-width: 1200px) { + .navbar-expand-xl { + -ms-flex-wrap: nowrap; + flex-wrap: nowrap; + -webkit-box-pack: start; + -ms-flex-pack: start; + justify-content: flex-start; + } + .navbar-expand-xl .navbar-nav { + -webkit-box-orient: horizontal; + -webkit-box-direction: normal; + -ms-flex-direction: row; + flex-direction: row; + } + .navbar-expand-xl .navbar-nav .dropdown-menu { + position: absolute; + } + .navbar-expand-xl .navbar-nav .nav-link { + padding-left: var(--ct-navbar-nav-link-padding-x); + padding-right: var(--ct-navbar-nav-link-padding-x); + } + .navbar-expand-xl .navbar-nav-scroll { + overflow: visible; + } + .navbar-expand-xl .navbar-collapse { + display: -webkit-box !important; + display: -ms-flexbox !important; + display: flex !important; + -ms-flex-preferred-size: auto; + flex-basis: auto; + } + .navbar-expand-xl .navbar-toggler { + display: none; + } + .navbar-expand-xl .offcanvas { + position: static; + z-index: auto; + -webkit-box-flex: 1; + -ms-flex-positive: 1; + flex-grow: 1; + width: auto !important; + height: auto !important; + visibility: visible !important; + background-color: transparent !important; + border: 0 !important; + -webkit-transform: none !important; + transform: none !important; + -webkit-transition: none; + transition: none; + } + .navbar-expand-xl .offcanvas .offcanvas-header { + display: none; + } + .navbar-expand-xl .offcanvas .offcanvas-body { + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-flex: 0; + -ms-flex-positive: 0; + flex-grow: 0; + padding: 0; + overflow-y: visible; + } +} +@media (min-width: 1400px) { + .navbar-expand-xxl { + -ms-flex-wrap: nowrap; + flex-wrap: nowrap; + -webkit-box-pack: start; + -ms-flex-pack: start; + justify-content: flex-start; + } + .navbar-expand-xxl .navbar-nav { + -webkit-box-orient: horizontal; + -webkit-box-direction: normal; + -ms-flex-direction: row; + flex-direction: row; + } + .navbar-expand-xxl .navbar-nav .dropdown-menu { + position: absolute; + } + .navbar-expand-xxl .navbar-nav .nav-link { + padding-left: var(--ct-navbar-nav-link-padding-x); + padding-right: var(--ct-navbar-nav-link-padding-x); + } + .navbar-expand-xxl .navbar-nav-scroll { + overflow: visible; + } + .navbar-expand-xxl .navbar-collapse { + display: -webkit-box !important; + display: -ms-flexbox !important; + display: flex !important; + -ms-flex-preferred-size: auto; + flex-basis: auto; + } + .navbar-expand-xxl .navbar-toggler { + display: none; + } + .navbar-expand-xxl .offcanvas { + position: static; + z-index: auto; + -webkit-box-flex: 1; + -ms-flex-positive: 1; + flex-grow: 1; + width: auto !important; + height: auto !important; + visibility: visible !important; + background-color: transparent !important; + border: 0 !important; + -webkit-transform: none !important; + transform: none !important; + -webkit-transition: none; + transition: none; + } + .navbar-expand-xxl .offcanvas .offcanvas-header { + display: none; + } + .navbar-expand-xxl .offcanvas .offcanvas-body { + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-flex: 0; + -ms-flex-positive: 0; + flex-grow: 0; + padding: 0; + overflow-y: visible; + } +} +.navbar-expand { + -ms-flex-wrap: nowrap; + flex-wrap: nowrap; + -webkit-box-pack: start; + -ms-flex-pack: start; + justify-content: flex-start; +} +.navbar-expand .navbar-nav { + -webkit-box-orient: horizontal; + -webkit-box-direction: normal; + -ms-flex-direction: row; + flex-direction: row; +} +.navbar-expand .navbar-nav .dropdown-menu { + position: absolute; +} +.navbar-expand .navbar-nav .nav-link { + padding-left: var(--ct-navbar-nav-link-padding-x); + padding-right: var(--ct-navbar-nav-link-padding-x); +} +.navbar-expand .navbar-nav-scroll { + overflow: visible; +} +.navbar-expand .navbar-collapse { + display: -webkit-box !important; + display: -ms-flexbox !important; + display: flex !important; + -ms-flex-preferred-size: auto; + flex-basis: auto; +} +.navbar-expand .navbar-toggler { + display: none; +} +.navbar-expand .offcanvas { + position: static; + z-index: auto; + -webkit-box-flex: 1; + -ms-flex-positive: 1; + flex-grow: 1; + width: auto !important; + height: auto !important; + visibility: visible !important; + background-color: transparent !important; + border: 0 !important; + -webkit-transform: none !important; + transform: none !important; + -webkit-transition: none; + transition: none; +} +.navbar-expand .offcanvas .offcanvas-header { + display: none; +} +.navbar-expand .offcanvas .offcanvas-body { + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-flex: 0; + -ms-flex-positive: 0; + flex-grow: 0; + padding: 0; + overflow-y: visible; +} + +.navbar-dark, +.navbar[data-bs-theme=dark] { + --ct-navbar-color: rgba(255, 255, 255, 0.55); + --ct-navbar-hover-color: rgba(255, 255, 255, 0.75); + --ct-navbar-disabled-color: rgba(255, 255, 255, 0.25); + --ct-navbar-active-color: #fff; + --ct-navbar-brand-color: #fff; + --ct-navbar-brand-hover-color: #fff; + --ct-navbar-toggler-border-color: rgba(255, 255, 255, 0.1); + --ct-navbar-toggler-icon-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e"); +} + +[data-bs-theme=dark] .navbar-toggler-icon { + --ct-navbar-toggler-icon-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e"); +} + +.card { + --ct-card-spacer-y: 1.25rem; + --ct-card-spacer-x: 1.25rem; + --ct-card-title-spacer-y: 0.625rem; + --ct-card-title-color: ; + --ct-card-subtitle-color: ; + --ct-card-border-width: var(--ct-theme-card-border-width); + --ct-card-border-color: var(--ct-border-color); + --ct-card-border-radius: var(--ct-border-radius); + --ct-card-box-shadow: var(--ct-box-shadow); + --ct-card-inner-border-radius: calc(var(--ct-border-radius) - (var(--ct-theme-card-border-width))); + --ct-card-cap-padding-y: 1.25rem; + --ct-card-cap-padding-x: 1.25rem; + --ct-card-cap-bg: transparent; + --ct-card-cap-color: ; + --ct-card-height: ; + --ct-card-color: ; + --ct-card-bg: var(--ct-secondary-bg); + --ct-card-img-overlay-padding: 1.25rem; + --ct-card-group-margin: 0.3rem; + position: relative; + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-orient: vertical; + -webkit-box-direction: normal; + -ms-flex-direction: column; + flex-direction: column; + min-width: 0; + height: var(--ct-card-height); + color: var(--ct-body-color); + word-wrap: break-word; + background-color: var(--ct-card-bg); + background-clip: border-box; + border: var(--ct-card-border-width) solid var(--ct-card-border-color); + border-radius: var(--ct-card-border-radius); +} +.card > hr { + margin-left: 0; + margin-right: 0; +} +.card > .list-group { + border-top: inherit; + border-bottom: inherit; +} +.card > .list-group:first-child { + border-top-width: 0; + border-top-right-radius: var(--ct-card-inner-border-radius); + border-top-left-radius: var(--ct-card-inner-border-radius); +} +.card > .list-group:last-child { + border-bottom-width: 0; + border-bottom-left-radius: var(--ct-card-inner-border-radius); + border-bottom-right-radius: var(--ct-card-inner-border-radius); +} +.card > .card-header + .list-group, +.card > .list-group + .card-footer { + border-top: 0; +} + +.card-body { + -webkit-box-flex: 1; + -ms-flex: 1 1 auto; + flex: 1 1 auto; + padding: var(--ct-card-spacer-y) var(--ct-card-spacer-x); + color: var(--ct-card-color); +} + +.card-title { + margin-bottom: var(--ct-card-title-spacer-y); + color: var(--ct-card-title-color); +} + +.card-subtitle { + margin-top: calc(-0.5 * var(--ct-card-title-spacer-y)); + margin-bottom: 0; + color: var(--ct-card-subtitle-color); +} + +.card-text:last-child { + margin-bottom: 0; +} + +.card-link + .card-link { + margin-right: var(--ct-card-spacer-x); +} + +.card-header { + padding: var(--ct-card-cap-padding-y) var(--ct-card-cap-padding-x); + margin-bottom: 0; + color: var(--ct-card-cap-color); + background-color: var(--ct-card-cap-bg); + border-bottom: var(--ct-card-border-width) solid var(--ct-card-border-color); +} +.card-header:first-child { + border-radius: var(--ct-card-inner-border-radius) var(--ct-card-inner-border-radius) 0 0; +} + +.card-footer { + padding: var(--ct-card-cap-padding-y) var(--ct-card-cap-padding-x); + color: var(--ct-card-cap-color); + background-color: var(--ct-card-cap-bg); + border-top: var(--ct-card-border-width) solid var(--ct-card-border-color); +} +.card-footer:last-child { + border-radius: 0 0 var(--ct-card-inner-border-radius) var(--ct-card-inner-border-radius); +} + +.card-header-tabs { + margin-left: calc(-0.5 * var(--ct-card-cap-padding-x)); + margin-bottom: calc(-1 * var(--ct-card-cap-padding-y)); + margin-right: calc(-0.5 * var(--ct-card-cap-padding-x)); + border-bottom: 0; +} +.card-header-tabs .nav-link.active { + background-color: var(--ct-card-bg); + border-bottom-color: var(--ct-card-bg); +} + +.card-header-pills { + margin-left: calc(-0.5 * var(--ct-card-cap-padding-x)); + margin-right: calc(-0.5 * var(--ct-card-cap-padding-x)); +} + +.card-img-overlay { + position: absolute; + top: 0; + left: 0; + bottom: 0; + right: 0; + padding: var(--ct-card-img-overlay-padding); + border-radius: var(--ct-card-inner-border-radius); +} + +.card-img, +.card-img-top, +.card-img-bottom { + width: 100%; +} + +.card-img, +.card-img-top { + border-top-right-radius: var(--ct-card-inner-border-radius); + border-top-left-radius: var(--ct-card-inner-border-radius); +} + +.card-img, +.card-img-bottom { + border-bottom-left-radius: var(--ct-card-inner-border-radius); + border-bottom-right-radius: var(--ct-card-inner-border-radius); +} + +.card-group > .card { + margin-bottom: var(--ct-card-group-margin); +} +@media (min-width: 576px) { + .card-group { + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-orient: horizontal; + -webkit-box-direction: normal; + -ms-flex-flow: row wrap; + flex-flow: row wrap; + } + .card-group > .card { + -webkit-box-flex: 1; + -ms-flex: 1 0 0%; + flex: 1 0 0%; + margin-bottom: 0; + } + .card-group > .card + .card { + margin-right: 0; + border-right: 0; + } + .card-group > .card:not(:last-child) { + border-top-left-radius: 0; + border-bottom-left-radius: 0; + } + .card-group > .card:not(:last-child) .card-img-top, +.card-group > .card:not(:last-child) .card-header { + border-top-left-radius: 0; + } + .card-group > .card:not(:last-child) .card-img-bottom, +.card-group > .card:not(:last-child) .card-footer { + border-bottom-left-radius: 0; + } + .card-group > .card:not(:first-child) { + border-top-right-radius: 0; + border-bottom-right-radius: 0; + } + .card-group > .card:not(:first-child) .card-img-top, +.card-group > .card:not(:first-child) .card-header { + border-top-right-radius: 0; + } + .card-group > .card:not(:first-child) .card-img-bottom, +.card-group > .card:not(:first-child) .card-footer { + border-bottom-right-radius: 0; + } +} + +.accordion { + --ct-accordion-color: var(--ct-body-color); + --ct-accordion-bg: var(--ct-secondary-bg); + --ct-accordion-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, border-radius 0.15s ease; + --ct-accordion-border-color: var(--ct-border-color); + --ct-accordion-border-width: var(--ct-border-width); + --ct-accordion-border-radius: var(--ct-border-radius); + --ct-accordion-inner-border-radius: calc(var(--ct-border-radius) - (var(--ct-border-width))); + --ct-accordion-btn-padding-x: 1.25rem; + --ct-accordion-btn-padding-y: 1rem; + --ct-accordion-btn-color: var(--ct-body-color); + --ct-accordion-btn-bg: var(--ct-accordion-bg); + --ct-accordion-btn-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%236c757d'%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"); + --ct-accordion-btn-icon-width: 0.75rem; + --ct-accordion-btn-icon-transform: rotate(-180deg); + --ct-accordion-btn-icon-transition: transform 0.2s ease-in-out; + --ct-accordion-btn-active-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%233b4ca7'%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"); + --ct-accordion-btn-focus-border-color: var(--ct-border-color-translucent); + --ct-accordion-btn-focus-box-shadow: none; + --ct-accordion-body-padding-x: 1.25rem; + --ct-accordion-body-padding-y: 1rem; + --ct-accordion-active-color: var(--ct-primary); + --ct-accordion-active-bg: var(--ct-primary-bg-subtle); +} + +.accordion-button { + position: relative; + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + width: 100%; + padding: var(--ct-accordion-btn-padding-y) var(--ct-accordion-btn-padding-x); + font-size: 0.875rem; + color: var(--ct-accordion-btn-color); + text-align: right; + background-color: var(--ct-accordion-btn-bg); + border: 0; + border-radius: 0; + overflow-anchor: none; + -webkit-transition: var(--ct-accordion-transition); + transition: var(--ct-accordion-transition); +} +@media (prefers-reduced-motion: reduce) { + .accordion-button { + -webkit-transition: none; + transition: none; + } +} +.accordion-button:not(.collapsed) { + color: var(--ct-accordion-active-color); + background-color: var(--ct-accordion-active-bg); + -webkit-box-shadow: inset 0 calc(-1 * var(--ct-accordion-border-width)) 0 var(--ct-accordion-border-color); + box-shadow: inset 0 calc(-1 * var(--ct-accordion-border-width)) 0 var(--ct-accordion-border-color); +} +.accordion-button:not(.collapsed)::after { + background-image: var(--ct-accordion-btn-active-icon); + -webkit-transform: var(--ct-accordion-btn-icon-transform); + transform: var(--ct-accordion-btn-icon-transform); +} +.accordion-button::after { + -ms-flex-negative: 0; + flex-shrink: 0; + width: var(--ct-accordion-btn-icon-width); + height: var(--ct-accordion-btn-icon-width); + margin-right: auto; + content: ""; + background-image: var(--ct-accordion-btn-icon); + background-repeat: no-repeat; + background-size: var(--ct-accordion-btn-icon-width); + -webkit-transition: var(--ct-accordion-btn-icon-transition); + transition: var(--ct-accordion-btn-icon-transition); +} +@media (prefers-reduced-motion: reduce) { + .accordion-button::after { + -webkit-transition: none; + transition: none; + } +} +.accordion-button:hover { + z-index: 2; +} +.accordion-button:focus { + z-index: 3; + border-color: var(--ct-accordion-btn-focus-border-color); + outline: 0; + -webkit-box-shadow: var(--ct-accordion-btn-focus-box-shadow); + box-shadow: var(--ct-accordion-btn-focus-box-shadow); +} + +.accordion-header { + margin-bottom: 0; +} + +.accordion-item { + color: var(--ct-accordion-color); + background-color: var(--ct-accordion-bg); + border: var(--ct-accordion-border-width) solid var(--ct-accordion-border-color); +} +.accordion-item:first-of-type { + border-top-right-radius: var(--ct-accordion-border-radius); + border-top-left-radius: var(--ct-accordion-border-radius); +} +.accordion-item:first-of-type .accordion-button { + border-top-right-radius: var(--ct-accordion-inner-border-radius); + border-top-left-radius: var(--ct-accordion-inner-border-radius); +} +.accordion-item:not(:first-of-type) { + border-top: 0; +} +.accordion-item:last-of-type { + border-bottom-left-radius: var(--ct-accordion-border-radius); + border-bottom-right-radius: var(--ct-accordion-border-radius); +} +.accordion-item:last-of-type .accordion-button.collapsed { + border-bottom-left-radius: var(--ct-accordion-inner-border-radius); + border-bottom-right-radius: var(--ct-accordion-inner-border-radius); +} +.accordion-item:last-of-type .accordion-collapse { + border-bottom-left-radius: var(--ct-accordion-border-radius); + border-bottom-right-radius: var(--ct-accordion-border-radius); +} + +.accordion-body { + padding: var(--ct-accordion-body-padding-y) var(--ct-accordion-body-padding-x); +} + +.accordion-flush .accordion-collapse { + border-width: 0; +} +.accordion-flush .accordion-item { + border-left: 0; + border-right: 0; + border-radius: 0; +} +.accordion-flush .accordion-item:first-child { + border-top: 0; +} +.accordion-flush .accordion-item:last-child { + border-bottom: 0; +} +.accordion-flush .accordion-item .accordion-button, .accordion-flush .accordion-item .accordion-button.collapsed { + border-radius: 0; +} + +[data-bs-theme=dark] .accordion-button::after { + --ct-accordion-btn-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%233b4ca7'%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"); + --ct-accordion-btn-active-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%233b4ca7'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e"); +} + +.breadcrumb { + --ct-breadcrumb-padding-x: 0; + --ct-breadcrumb-padding-y: 1.25rem; + --ct-breadcrumb-margin-bottom: 1rem; + --ct-breadcrumb-bg: ; + --ct-breadcrumb-border-radius: ; + --ct-breadcrumb-divider-color: var(--ct-secondary-color); + --ct-breadcrumb-item-padding-x: 0.5rem; + --ct-breadcrumb-item-active-color: var(--ct-secondary-color); + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -ms-flex-wrap: wrap; + flex-wrap: wrap; + padding: var(--ct-breadcrumb-padding-y) var(--ct-breadcrumb-padding-x); + margin-bottom: var(--ct-breadcrumb-margin-bottom); + font-size: var(--ct-breadcrumb-font-size); + list-style: none; + background-color: var(--ct-breadcrumb-bg); + border-radius: var(--ct-breadcrumb-border-radius); +} + +.breadcrumb-item + .breadcrumb-item { + padding-right: var(--ct-breadcrumb-item-padding-x); +} +.breadcrumb-item + .breadcrumb-item::before { + float: right; + padding-left: var(--ct-breadcrumb-item-padding-x); + color: var(--ct-breadcrumb-divider-color); + content: var(--ct-breadcrumb-divider, "\ea6e") ; +} +.breadcrumb-item.active { + color: var(--ct-breadcrumb-item-active-color); +} + +.pagination { + --ct-pagination-padding-x: 0.75rem; + --ct-pagination-padding-y: 0.375rem; + --ct-pagination-font-size: 0.875rem; + --ct-pagination-color: var(--ct-tertiary-color); + --ct-pagination-bg: var(--ct-secondary-bg); + --ct-pagination-border-width: var(--ct-border-width); + --ct-pagination-border-color: var(--ct-border-color); + --ct-pagination-border-radius: var(--ct-border-radius-sm); + --ct-pagination-hover-color: var(--ct-link-hover-color); + --ct-pagination-hover-bg: var(--ct-tertiary-bg); + --ct-pagination-hover-border-color: var(--ct-border-color); + --ct-pagination-focus-color: var(--ct-link-hover-color); + --ct-pagination-focus-bg: var(--ct-secondary-bg); + --ct-pagination-focus-box-shadow: none; + --ct-pagination-active-color: #fff; + --ct-pagination-active-bg: #4254ba; + --ct-pagination-active-border-color: #4254ba; + --ct-pagination-disabled-color: var(--ct-secondary-color); + --ct-pagination-disabled-bg: var(--ct-secondary-bg); + --ct-pagination-disabled-border-color: var(--ct-border-color); + display: -webkit-box; + display: -ms-flexbox; + display: flex; + padding-right: 0; + list-style: none; +} + +.page-link { + position: relative; + display: block; + padding: var(--ct-pagination-padding-y) var(--ct-pagination-padding-x); + font-size: var(--ct-pagination-font-size); + color: var(--ct-pagination-color); + background-color: var(--ct-pagination-bg); + border: var(--ct-pagination-border-width) solid var(--ct-pagination-border-color); + -webkit-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out; + transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out; + transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out; + 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, -webkit-box-shadow 0.15s ease-in-out; +} +@media (prefers-reduced-motion: reduce) { + .page-link { + -webkit-transition: none; + transition: none; + } +} +.page-link:hover { + z-index: 2; + color: var(--ct-pagination-hover-color); + background-color: var(--ct-pagination-hover-bg); + border-color: var(--ct-pagination-hover-border-color); +} +.page-link:focus { + z-index: 3; + color: var(--ct-pagination-focus-color); + background-color: var(--ct-pagination-focus-bg); + outline: 0; + -webkit-box-shadow: var(--ct-pagination-focus-box-shadow); + box-shadow: var(--ct-pagination-focus-box-shadow); +} +.page-link.active, .active > .page-link { + z-index: 3; + color: var(--ct-pagination-active-color); + background-color: var(--ct-pagination-active-bg); + border-color: var(--ct-pagination-active-border-color); +} +.page-link.disabled, .disabled > .page-link { + color: var(--ct-pagination-disabled-color); + pointer-events: none; + background-color: var(--ct-pagination-disabled-bg); + border-color: var(--ct-pagination-disabled-border-color); +} + +.page-item:not(:first-child) .page-link { + margin-right: calc(var(--ct-border-width) * -1); +} +.page-item:first-child .page-link { + border-top-right-radius: var(--ct-pagination-border-radius); + border-bottom-right-radius: var(--ct-pagination-border-radius); +} +.page-item:last-child .page-link { + border-top-left-radius: var(--ct-pagination-border-radius); + border-bottom-left-radius: var(--ct-pagination-border-radius); +} + +.pagination-lg { + --ct-pagination-padding-x: 1.5rem; + --ct-pagination-padding-y: 0.75rem; + --ct-pagination-font-size: 1.21625rem; + --ct-pagination-border-radius: var(--ct-border-radius); +} + +.pagination-sm { + --ct-pagination-padding-x: 0.5rem; + --ct-pagination-padding-y: 0.25rem; + --ct-pagination-font-size: 0.85rem; + --ct-pagination-border-radius: var(--ct-border-radius-sm); +} + +.badge { + --ct-badge-padding-x: 0.4em; + --ct-badge-padding-y: 0.25em; + --ct-badge-font-size: 0.8em; + --ct-badge-font-weight: 500; + --ct-badge-color: #fff; + --ct-badge-border-radius: 0.15rem; + display: inline-block; + padding: var(--ct-badge-padding-y) var(--ct-badge-padding-x); + font-size: var(--ct-badge-font-size); + font-weight: var(--ct-badge-font-weight); + line-height: 1; + color: var(--ct-badge-color); + text-align: center; + white-space: nowrap; + vertical-align: baseline; + border-radius: var(--ct-badge-border-radius); +} +.badge:empty { + display: none; +} + +.btn .badge { + position: relative; + top: -1px; +} + +.alert { + --ct-alert-bg: transparent; + --ct-alert-padding-x: 1.25rem; + --ct-alert-padding-y: 0.8rem; + --ct-alert-margin-bottom: 1rem; + --ct-alert-color: inherit; + --ct-alert-border-color: transparent; + --ct-alert-border: var(--ct-border-width) solid var(--ct-alert-border-color); + --ct-alert-border-radius: 0.15rem; + --ct-alert-link-color: inherit; + position: relative; + padding: var(--ct-alert-padding-y) var(--ct-alert-padding-x); + margin-bottom: var(--ct-alert-margin-bottom); + color: var(--ct-alert-color); + background-color: var(--ct-alert-bg); + border: var(--ct-alert-border); + border-radius: var(--ct-alert-border-radius); +} + +.alert-heading { + color: inherit; +} + +.alert-link { + font-weight: 700; + color: var(--ct-alert-link-color); +} + +.alert-dismissible { + padding-left: 3.75rem; +} +.alert-dismissible .btn-close { + position: absolute; + top: 0; + left: 0; + z-index: 2; + padding: 1rem 1.25rem; +} + +.alert-primary { + --ct-alert-color: var(--ct-primary-text-emphasis); + --ct-alert-bg: var(--ct-primary-bg-subtle); + --ct-alert-border-color: var(--ct-primary-border-subtle); + --ct-alert-link-color: var(--ct-primary-text-emphasis); +} + +.alert-secondary { + --ct-alert-color: var(--ct-secondary-text-emphasis); + --ct-alert-bg: var(--ct-secondary-bg-subtle); + --ct-alert-border-color: var(--ct-secondary-border-subtle); + --ct-alert-link-color: var(--ct-secondary-text-emphasis); +} + +.alert-success { + --ct-alert-color: var(--ct-success-text-emphasis); + --ct-alert-bg: var(--ct-success-bg-subtle); + --ct-alert-border-color: var(--ct-success-border-subtle); + --ct-alert-link-color: var(--ct-success-text-emphasis); +} + +.alert-info { + --ct-alert-color: var(--ct-info-text-emphasis); + --ct-alert-bg: var(--ct-info-bg-subtle); + --ct-alert-border-color: var(--ct-info-border-subtle); + --ct-alert-link-color: var(--ct-info-text-emphasis); +} + +.alert-warning { + --ct-alert-color: var(--ct-warning-text-emphasis); + --ct-alert-bg: var(--ct-warning-bg-subtle); + --ct-alert-border-color: var(--ct-warning-border-subtle); + --ct-alert-link-color: var(--ct-warning-text-emphasis); +} + +.alert-danger { + --ct-alert-color: var(--ct-danger-text-emphasis); + --ct-alert-bg: var(--ct-danger-bg-subtle); + --ct-alert-border-color: var(--ct-danger-border-subtle); + --ct-alert-link-color: var(--ct-danger-text-emphasis); +} + +.alert-light { + --ct-alert-color: var(--ct-light-text-emphasis); + --ct-alert-bg: var(--ct-light-bg-subtle); + --ct-alert-border-color: var(--ct-light-border-subtle); + --ct-alert-link-color: var(--ct-light-text-emphasis); +} + +.alert-dark { + --ct-alert-color: var(--ct-dark-text-emphasis); + --ct-alert-bg: var(--ct-dark-bg-subtle); + --ct-alert-border-color: var(--ct-dark-border-subtle); + --ct-alert-link-color: var(--ct-dark-text-emphasis); +} + +.alert-purple { + --ct-alert-color: var(--ct-purple-text-emphasis); + --ct-alert-bg: var(--ct-purple-bg-subtle); + --ct-alert-border-color: var(--ct-purple-border-subtle); + --ct-alert-link-color: var(--ct-purple-text-emphasis); +} + +.alert-pink { + --ct-alert-color: var(--ct-pink-text-emphasis); + --ct-alert-bg: var(--ct-pink-bg-subtle); + --ct-alert-border-color: var(--ct-pink-border-subtle); + --ct-alert-link-color: var(--ct-pink-text-emphasis); +} + +@-webkit-keyframes progress-bar-stripes { + 0% { + background-position-x: 1rem; + } +} + +@keyframes progress-bar-stripes { + 0% { + background-position-x: 1rem; + } +} +.progress, +.progress-stacked { + --ct-progress-height: 1rem; + --ct-progress-font-size: 0.65625rem; + --ct-progress-bg: var(--ct-body-bg); + --ct-progress-border-radius: var(--ct-border-radius); + --ct-progress-box-shadow: var(--ct-box-shadow-inset); + --ct-progress-bar-color: #fff; + --ct-progress-bar-bg: #4254ba; + --ct-progress-bar-transition: width 0.6s ease; + display: -webkit-box; + display: -ms-flexbox; + display: flex; + height: var(--ct-progress-height); + overflow: hidden; + font-size: var(--ct-progress-font-size); + background-color: var(--ct-progress-bg); + border-radius: var(--ct-progress-border-radius); +} + +.progress-bar { + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-orient: vertical; + -webkit-box-direction: normal; + -ms-flex-direction: column; + flex-direction: column; + -webkit-box-pack: center; + -ms-flex-pack: center; + justify-content: center; + overflow: hidden; + color: var(--ct-progress-bar-color); + text-align: center; + white-space: nowrap; + background-color: var(--ct-progress-bar-bg); + -webkit-transition: var(--ct-progress-bar-transition); + transition: var(--ct-progress-bar-transition); +} +@media (prefers-reduced-motion: reduce) { + .progress-bar { + -webkit-transition: none; + transition: none; + } +} + +.progress-bar-striped { + background-image: linear-gradient(-45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent); + background-size: var(--ct-progress-height) var(--ct-progress-height); +} + +.progress-stacked > .progress { + overflow: visible; +} + +.progress-stacked > .progress > .progress-bar { + width: 100%; +} + +.progress-bar-animated { + -webkit-animation: 1s linear infinite progress-bar-stripes; + animation: 1s linear infinite progress-bar-stripes; +} +@media (prefers-reduced-motion: reduce) { + .progress-bar-animated { + -webkit-animation: none; + animation: none; + } +} + +.list-group { + --ct-list-group-color: var(--ct-tertiary-color); + --ct-list-group-bg: var(--ct-secondary-bg); + --ct-list-group-border-color: var(--ct-border-color); + --ct-list-group-border-width: var(--ct-border-width); + --ct-list-group-border-radius: var(--ct-border-radius); + --ct-list-group-item-padding-x: 1rem; + --ct-list-group-item-padding-y: 0.625rem; + --ct-list-group-action-color: var(--ct-secondary-color); + --ct-list-group-action-hover-color: var(--ct-body-color); + --ct-list-group-action-hover-bg: var(--ct-tertiary-bg); + --ct-list-group-action-active-color: var(--ct-body-color); + --ct-list-group-action-active-bg: var(--ct-secondary-bg); + --ct-list-group-disabled-color: var(--ct-secondary-color); + --ct-list-group-disabled-bg: var(--ct-tertiary-bg); + --ct-list-group-active-color: #fff; + --ct-list-group-active-bg: #4254ba; + --ct-list-group-active-border-color: #4254ba; + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-orient: vertical; + -webkit-box-direction: normal; + -ms-flex-direction: column; + flex-direction: column; + padding-right: 0; + margin-bottom: 0; + border-radius: var(--ct-list-group-border-radius); +} + +.list-group-numbered { + list-style-type: none; + counter-reset: section; +} +.list-group-numbered > .list-group-item::before { + content: counters(section, ".") ". "; + counter-increment: section; +} + +.list-group-item-action { + width: 100%; + color: var(--ct-list-group-action-color); + text-align: inherit; +} +.list-group-item-action:hover, .list-group-item-action:focus { + z-index: 1; + color: var(--ct-list-group-action-hover-color); + text-decoration: none; + background-color: var(--ct-list-group-action-hover-bg); +} +.list-group-item-action:active { + color: var(--ct-list-group-action-active-color); + background-color: var(--ct-list-group-action-active-bg); +} + +.list-group-item { + position: relative; + display: block; + padding: var(--ct-list-group-item-padding-y) var(--ct-list-group-item-padding-x); + color: var(--ct-list-group-color); + background-color: var(--ct-list-group-bg); + border: var(--ct-list-group-border-width) solid var(--ct-list-group-border-color); +} +.list-group-item:first-child { + border-top-right-radius: inherit; + border-top-left-radius: inherit; +} +.list-group-item:last-child { + border-bottom-left-radius: inherit; + border-bottom-right-radius: inherit; +} +.list-group-item.disabled, .list-group-item:disabled { + color: var(--ct-list-group-disabled-color); + pointer-events: none; + background-color: var(--ct-list-group-disabled-bg); +} +.list-group-item.active { + z-index: 2; + color: var(--ct-list-group-active-color); + background-color: var(--ct-list-group-active-bg); + border-color: var(--ct-list-group-active-border-color); +} +.list-group-item + .list-group-item { + border-top-width: 0; +} +.list-group-item + .list-group-item.active { + margin-top: calc(-1 * var(--ct-list-group-border-width)); + border-top-width: var(--ct-list-group-border-width); +} + +.list-group-horizontal { + -webkit-box-orient: horizontal; + -webkit-box-direction: normal; + -ms-flex-direction: row; + flex-direction: row; +} +.list-group-horizontal > .list-group-item:first-child:not(:last-child) { + border-bottom-right-radius: var(--ct-list-group-border-radius); + border-top-left-radius: 0; +} +.list-group-horizontal > .list-group-item:last-child:not(:first-child) { + border-top-left-radius: var(--ct-list-group-border-radius); + border-bottom-right-radius: 0; +} +.list-group-horizontal > .list-group-item.active { + margin-top: 0; +} +.list-group-horizontal > .list-group-item + .list-group-item { + border-top-width: var(--ct-list-group-border-width); + border-right-width: 0; +} +.list-group-horizontal > .list-group-item + .list-group-item.active { + margin-right: calc(-1 * var(--ct-list-group-border-width)); + border-right-width: var(--ct-list-group-border-width); +} + +@media (min-width: 576px) { + .list-group-horizontal-sm { + -webkit-box-orient: horizontal; + -webkit-box-direction: normal; + -ms-flex-direction: row; + flex-direction: row; + } + .list-group-horizontal-sm > .list-group-item:first-child:not(:last-child) { + border-bottom-right-radius: var(--ct-list-group-border-radius); + border-top-left-radius: 0; + } + .list-group-horizontal-sm > .list-group-item:last-child:not(:first-child) { + border-top-left-radius: var(--ct-list-group-border-radius); + border-bottom-right-radius: 0; + } + .list-group-horizontal-sm > .list-group-item.active { + margin-top: 0; + } + .list-group-horizontal-sm > .list-group-item + .list-group-item { + border-top-width: var(--ct-list-group-border-width); + border-right-width: 0; + } + .list-group-horizontal-sm > .list-group-item + .list-group-item.active { + margin-right: calc(-1 * var(--ct-list-group-border-width)); + border-right-width: var(--ct-list-group-border-width); + } +} +@media (min-width: 768px) { + .list-group-horizontal-md { + -webkit-box-orient: horizontal; + -webkit-box-direction: normal; + -ms-flex-direction: row; + flex-direction: row; + } + .list-group-horizontal-md > .list-group-item:first-child:not(:last-child) { + border-bottom-right-radius: var(--ct-list-group-border-radius); + border-top-left-radius: 0; + } + .list-group-horizontal-md > .list-group-item:last-child:not(:first-child) { + border-top-left-radius: var(--ct-list-group-border-radius); + border-bottom-right-radius: 0; + } + .list-group-horizontal-md > .list-group-item.active { + margin-top: 0; + } + .list-group-horizontal-md > .list-group-item + .list-group-item { + border-top-width: var(--ct-list-group-border-width); + border-right-width: 0; + } + .list-group-horizontal-md > .list-group-item + .list-group-item.active { + margin-right: calc(-1 * var(--ct-list-group-border-width)); + border-right-width: var(--ct-list-group-border-width); + } +} +@media (min-width: 992px) { + .list-group-horizontal-lg { + -webkit-box-orient: horizontal; + -webkit-box-direction: normal; + -ms-flex-direction: row; + flex-direction: row; + } + .list-group-horizontal-lg > .list-group-item:first-child:not(:last-child) { + border-bottom-right-radius: var(--ct-list-group-border-radius); + border-top-left-radius: 0; + } + .list-group-horizontal-lg > .list-group-item:last-child:not(:first-child) { + border-top-left-radius: var(--ct-list-group-border-radius); + border-bottom-right-radius: 0; + } + .list-group-horizontal-lg > .list-group-item.active { + margin-top: 0; + } + .list-group-horizontal-lg > .list-group-item + .list-group-item { + border-top-width: var(--ct-list-group-border-width); + border-right-width: 0; + } + .list-group-horizontal-lg > .list-group-item + .list-group-item.active { + margin-right: calc(-1 * var(--ct-list-group-border-width)); + border-right-width: var(--ct-list-group-border-width); + } +} +@media (min-width: 1200px) { + .list-group-horizontal-xl { + -webkit-box-orient: horizontal; + -webkit-box-direction: normal; + -ms-flex-direction: row; + flex-direction: row; + } + .list-group-horizontal-xl > .list-group-item:first-child:not(:last-child) { + border-bottom-right-radius: var(--ct-list-group-border-radius); + border-top-left-radius: 0; + } + .list-group-horizontal-xl > .list-group-item:last-child:not(:first-child) { + border-top-left-radius: var(--ct-list-group-border-radius); + border-bottom-right-radius: 0; + } + .list-group-horizontal-xl > .list-group-item.active { + margin-top: 0; + } + .list-group-horizontal-xl > .list-group-item + .list-group-item { + border-top-width: var(--ct-list-group-border-width); + border-right-width: 0; + } + .list-group-horizontal-xl > .list-group-item + .list-group-item.active { + margin-right: calc(-1 * var(--ct-list-group-border-width)); + border-right-width: var(--ct-list-group-border-width); + } +} +@media (min-width: 1400px) { + .list-group-horizontal-xxl { + -webkit-box-orient: horizontal; + -webkit-box-direction: normal; + -ms-flex-direction: row; + flex-direction: row; + } + .list-group-horizontal-xxl > .list-group-item:first-child:not(:last-child) { + border-bottom-right-radius: var(--ct-list-group-border-radius); + border-top-left-radius: 0; + } + .list-group-horizontal-xxl > .list-group-item:last-child:not(:first-child) { + border-top-left-radius: var(--ct-list-group-border-radius); + border-bottom-right-radius: 0; + } + .list-group-horizontal-xxl > .list-group-item.active { + margin-top: 0; + } + .list-group-horizontal-xxl > .list-group-item + .list-group-item { + border-top-width: var(--ct-list-group-border-width); + border-right-width: 0; + } + .list-group-horizontal-xxl > .list-group-item + .list-group-item.active { + margin-right: calc(-1 * var(--ct-list-group-border-width)); + border-right-width: var(--ct-list-group-border-width); + } +} +.list-group-flush { + border-radius: 0; +} +.list-group-flush > .list-group-item { + border-width: 0 0 var(--ct-list-group-border-width); +} +.list-group-flush > .list-group-item:last-child { + border-bottom-width: 0; +} + +.list-group-item-primary { + --ct-list-group-color: var(--ct-primary-text-emphasis); + --ct-list-group-bg: var(--ct-primary-bg-subtle); + --ct-list-group-border-color: var(--ct-primary-border-subtle); + --ct-list-group-action-hover-color: var(--ct-emphasis-color); + --ct-list-group-action-hover-bg: var(--ct-primary-border-subtle); + --ct-list-group-action-active-color: var(--ct-emphasis-color); + --ct-list-group-action-active-bg: var(--ct-primary-border-subtle); + --ct-list-group-active-color: var(--ct-primary-bg-subtle); + --ct-list-group-active-bg: var(--ct-primary-text-emphasis); + --ct-list-group-active-border-color: var(--ct-primary-text-emphasis); +} + +.list-group-item-secondary { + --ct-list-group-color: var(--ct-secondary-text-emphasis); + --ct-list-group-bg: var(--ct-secondary-bg-subtle); + --ct-list-group-border-color: var(--ct-secondary-border-subtle); + --ct-list-group-action-hover-color: var(--ct-emphasis-color); + --ct-list-group-action-hover-bg: var(--ct-secondary-border-subtle); + --ct-list-group-action-active-color: var(--ct-emphasis-color); + --ct-list-group-action-active-bg: var(--ct-secondary-border-subtle); + --ct-list-group-active-color: var(--ct-secondary-bg-subtle); + --ct-list-group-active-bg: var(--ct-secondary-text-emphasis); + --ct-list-group-active-border-color: var(--ct-secondary-text-emphasis); +} + +.list-group-item-success { + --ct-list-group-color: var(--ct-success-text-emphasis); + --ct-list-group-bg: var(--ct-success-bg-subtle); + --ct-list-group-border-color: var(--ct-success-border-subtle); + --ct-list-group-action-hover-color: var(--ct-emphasis-color); + --ct-list-group-action-hover-bg: var(--ct-success-border-subtle); + --ct-list-group-action-active-color: var(--ct-emphasis-color); + --ct-list-group-action-active-bg: var(--ct-success-border-subtle); + --ct-list-group-active-color: var(--ct-success-bg-subtle); + --ct-list-group-active-bg: var(--ct-success-text-emphasis); + --ct-list-group-active-border-color: var(--ct-success-text-emphasis); +} + +.list-group-item-info { + --ct-list-group-color: var(--ct-info-text-emphasis); + --ct-list-group-bg: var(--ct-info-bg-subtle); + --ct-list-group-border-color: var(--ct-info-border-subtle); + --ct-list-group-action-hover-color: var(--ct-emphasis-color); + --ct-list-group-action-hover-bg: var(--ct-info-border-subtle); + --ct-list-group-action-active-color: var(--ct-emphasis-color); + --ct-list-group-action-active-bg: var(--ct-info-border-subtle); + --ct-list-group-active-color: var(--ct-info-bg-subtle); + --ct-list-group-active-bg: var(--ct-info-text-emphasis); + --ct-list-group-active-border-color: var(--ct-info-text-emphasis); +} + +.list-group-item-warning { + --ct-list-group-color: var(--ct-warning-text-emphasis); + --ct-list-group-bg: var(--ct-warning-bg-subtle); + --ct-list-group-border-color: var(--ct-warning-border-subtle); + --ct-list-group-action-hover-color: var(--ct-emphasis-color); + --ct-list-group-action-hover-bg: var(--ct-warning-border-subtle); + --ct-list-group-action-active-color: var(--ct-emphasis-color); + --ct-list-group-action-active-bg: var(--ct-warning-border-subtle); + --ct-list-group-active-color: var(--ct-warning-bg-subtle); + --ct-list-group-active-bg: var(--ct-warning-text-emphasis); + --ct-list-group-active-border-color: var(--ct-warning-text-emphasis); +} + +.list-group-item-danger { + --ct-list-group-color: var(--ct-danger-text-emphasis); + --ct-list-group-bg: var(--ct-danger-bg-subtle); + --ct-list-group-border-color: var(--ct-danger-border-subtle); + --ct-list-group-action-hover-color: var(--ct-emphasis-color); + --ct-list-group-action-hover-bg: var(--ct-danger-border-subtle); + --ct-list-group-action-active-color: var(--ct-emphasis-color); + --ct-list-group-action-active-bg: var(--ct-danger-border-subtle); + --ct-list-group-active-color: var(--ct-danger-bg-subtle); + --ct-list-group-active-bg: var(--ct-danger-text-emphasis); + --ct-list-group-active-border-color: var(--ct-danger-text-emphasis); +} + +.list-group-item-light { + --ct-list-group-color: var(--ct-light-text-emphasis); + --ct-list-group-bg: var(--ct-light-bg-subtle); + --ct-list-group-border-color: var(--ct-light-border-subtle); + --ct-list-group-action-hover-color: var(--ct-emphasis-color); + --ct-list-group-action-hover-bg: var(--ct-light-border-subtle); + --ct-list-group-action-active-color: var(--ct-emphasis-color); + --ct-list-group-action-active-bg: var(--ct-light-border-subtle); + --ct-list-group-active-color: var(--ct-light-bg-subtle); + --ct-list-group-active-bg: var(--ct-light-text-emphasis); + --ct-list-group-active-border-color: var(--ct-light-text-emphasis); +} + +.list-group-item-dark { + --ct-list-group-color: var(--ct-dark-text-emphasis); + --ct-list-group-bg: var(--ct-dark-bg-subtle); + --ct-list-group-border-color: var(--ct-dark-border-subtle); + --ct-list-group-action-hover-color: var(--ct-emphasis-color); + --ct-list-group-action-hover-bg: var(--ct-dark-border-subtle); + --ct-list-group-action-active-color: var(--ct-emphasis-color); + --ct-list-group-action-active-bg: var(--ct-dark-border-subtle); + --ct-list-group-active-color: var(--ct-dark-bg-subtle); + --ct-list-group-active-bg: var(--ct-dark-text-emphasis); + --ct-list-group-active-border-color: var(--ct-dark-text-emphasis); +} + +.list-group-item-purple { + --ct-list-group-color: var(--ct-purple-text-emphasis); + --ct-list-group-bg: var(--ct-purple-bg-subtle); + --ct-list-group-border-color: var(--ct-purple-border-subtle); + --ct-list-group-action-hover-color: var(--ct-emphasis-color); + --ct-list-group-action-hover-bg: var(--ct-purple-border-subtle); + --ct-list-group-action-active-color: var(--ct-emphasis-color); + --ct-list-group-action-active-bg: var(--ct-purple-border-subtle); + --ct-list-group-active-color: var(--ct-purple-bg-subtle); + --ct-list-group-active-bg: var(--ct-purple-text-emphasis); + --ct-list-group-active-border-color: var(--ct-purple-text-emphasis); +} + +.list-group-item-pink { + --ct-list-group-color: var(--ct-pink-text-emphasis); + --ct-list-group-bg: var(--ct-pink-bg-subtle); + --ct-list-group-border-color: var(--ct-pink-border-subtle); + --ct-list-group-action-hover-color: var(--ct-emphasis-color); + --ct-list-group-action-hover-bg: var(--ct-pink-border-subtle); + --ct-list-group-action-active-color: var(--ct-emphasis-color); + --ct-list-group-action-active-bg: var(--ct-pink-border-subtle); + --ct-list-group-active-color: var(--ct-pink-bg-subtle); + --ct-list-group-active-bg: var(--ct-pink-text-emphasis); + --ct-list-group-active-border-color: var(--ct-pink-text-emphasis); +} + +.btn-close { + --ct-btn-close-color: var(--ct-secondary-color); + --ct-btn-close-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='var%28--ct-secondary-color%29'%3e%3cpath d='M.293.293a1 1 0 0 1 1.414 0L8 6.586 14.293.293a1 1 0 1 1 1.414 1.414L9.414 8l6.293 6.293a1 1 0 0 1-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 0 1-1.414-1.414L6.586 8 .293 1.707a1 1 0 0 1 0-1.414z'/%3e%3c/svg%3e"); + --ct-btn-close-opacity: 0.5; + --ct-btn-close-hover-opacity: 0.8; + --ct-btn-close-focus-shadow: none; + --ct-btn-close-focus-opacity: 1; + --ct-btn-close-disabled-opacity: 0.25; + --ct-btn-close-white-filter: invert(1) grayscale(100%) brightness(200%); + -webkit-box-sizing: content-box; + box-sizing: content-box; + width: 1em; + height: 1em; + padding: 0.25em 0.25em; + color: var(--ct-btn-close-color); + background: transparent var(--ct-btn-close-bg) center/1em auto no-repeat; + border: 0; + border-radius: 0.15rem; + opacity: var(--ct-btn-close-opacity); +} +.btn-close:hover { + color: var(--ct-btn-close-color); + text-decoration: none; + opacity: var(--ct-btn-close-hover-opacity); +} +.btn-close:focus { + outline: 0; + -webkit-box-shadow: var(--ct-btn-close-focus-shadow); + box-shadow: var(--ct-btn-close-focus-shadow); + opacity: var(--ct-btn-close-focus-opacity); +} +.btn-close:disabled, .btn-close.disabled { + pointer-events: none; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + opacity: var(--ct-btn-close-disabled-opacity); +} + +.btn-close-white { + -webkit-filter: var(--ct-btn-close-white-filter); + filter: var(--ct-btn-close-white-filter); +} + +[data-bs-theme=dark] .btn-close { + -webkit-filter: var(--ct-btn-close-white-filter); + filter: var(--ct-btn-close-white-filter); +} + +.toast { + --ct-toast-zindex: 1090; + --ct-toast-padding-x: 0.75rem; + --ct-toast-padding-y: 0.5rem; + --ct-toast-spacing: 0.6rem; + --ct-toast-max-width: 350px; + --ct-toast-font-size: 0.875rem; + --ct-toast-color: ; + --ct-toast-bg: var(--ct-secondary-bg); + --ct-toast-border-width: var(--ct-border-width); + --ct-toast-border-color: var(--ct-border-color); + --ct-toast-border-radius: var(--ct-border-radius); + --ct-toast-box-shadow: var(--ct-box-shadow); + --ct-toast-header-color: var(--ct-secondary-color); + --ct-toast-header-bg: rgba(var(--ct-body-bg-rgb), 0.85); + --ct-toast-header-border-color: var(--ct-border-color); + width: var(--ct-toast-max-width); + max-width: 100%; + font-size: var(--ct-toast-font-size); + color: var(--ct-toast-color); + pointer-events: auto; + background-color: var(--ct-toast-bg); + background-clip: padding-box; + border: var(--ct-toast-border-width) solid var(--ct-toast-border-color); + -webkit-box-shadow: var(--ct-toast-box-shadow); + box-shadow: var(--ct-toast-box-shadow); + border-radius: var(--ct-toast-border-radius); +} +.toast.showing { + opacity: 0; +} +.toast:not(.show) { + display: none; +} + +.toast-container { + --ct-toast-zindex: 1090; + position: absolute; + z-index: var(--ct-toast-zindex); + width: -webkit-max-content; + width: -moz-max-content; + width: max-content; + max-width: 100%; + pointer-events: none; +} +.toast-container > :not(:last-child) { + margin-bottom: var(--ct-toast-spacing); +} + +.toast-header { + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + padding: var(--ct-toast-padding-y) var(--ct-toast-padding-x); + color: var(--ct-toast-header-color); + background-color: var(--ct-toast-header-bg); + background-clip: padding-box; + border-bottom: var(--ct-toast-border-width) solid var(--ct-toast-header-border-color); + border-top-right-radius: calc(var(--ct-toast-border-radius) - var(--ct-toast-border-width)); + border-top-left-radius: calc(var(--ct-toast-border-radius) - var(--ct-toast-border-width)); +} +.toast-header .btn-close { + margin-left: calc(-0.5 * var(--ct-toast-padding-x)); + margin-right: var(--ct-toast-padding-x); +} + +.toast-body { + padding: var(--ct-toast-padding-x); + word-wrap: break-word; +} + +.modal { + --ct-modal-zindex: 1055; + --ct-modal-width: 500px; + --ct-modal-padding: 0.75rem; + --ct-modal-margin: 0.5rem; + --ct-modal-color: ; + --ct-modal-bg: var(--ct-secondary-bg); + --ct-modal-border-color: transparent; + --ct-modal-border-width: var(--ct-border-width); + --ct-modal-border-radius: var(--ct-border-radius-sm); + --ct-modal-box-shadow: 0 0.125rem 0.25rem rgba(var(--ct-body-color-rgb), 0.15); + --ct-modal-inner-border-radius: calc(var(--ct-border-radius-sm) - (var(--ct-border-width))); + --ct-modal-header-padding-x: 0.75rem; + --ct-modal-header-padding-y: 0.75rem; + --ct-modal-header-padding: 0.75rem 0.75rem; + --ct-modal-header-border-color: var(--ct-border-color); + --ct-modal-header-border-width: var(--ct-border-width); + --ct-modal-title-line-height: 1.5; + --ct-modal-footer-gap: 0.5rem; + --ct-modal-footer-bg: ; + --ct-modal-footer-border-color: var(--ct-border-color); + --ct-modal-footer-border-width: var(--ct-border-width); + position: fixed; + top: 0; + right: 0; + z-index: var(--ct-modal-zindex); + display: none; + width: 100%; + height: 100%; + overflow-x: hidden; + overflow-y: auto; + outline: 0; +} + +.modal-dialog { + position: relative; + width: auto; + margin: var(--ct-modal-margin); + pointer-events: none; +} +.modal.fade .modal-dialog { + -webkit-transition: -webkit-transform 0.3s ease-out; + transition: -webkit-transform 0.3s ease-out; + transition: transform 0.3s ease-out; + transition: transform 0.3s ease-out, -webkit-transform 0.3s ease-out; + -webkit-transform: translate(0, -50px); + transform: translate(0, -50px); +} +@media (prefers-reduced-motion: reduce) { + .modal.fade .modal-dialog { + -webkit-transition: none; + transition: none; + } +} +.modal.show .modal-dialog { + -webkit-transform: none; + transform: none; +} +.modal.modal-static .modal-dialog { + -webkit-transform: scale(1.02); + transform: scale(1.02); +} + +.modal-dialog-scrollable { + height: calc(100% - var(--ct-modal-margin) * 2); +} +.modal-dialog-scrollable .modal-content { + max-height: 100%; + overflow: hidden; +} +.modal-dialog-scrollable .modal-body { + overflow-y: auto; +} + +.modal-dialog-centered { + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + min-height: calc(100% - var(--ct-modal-margin) * 2); +} + +.modal-content { + position: relative; + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-orient: vertical; + -webkit-box-direction: normal; + -ms-flex-direction: column; + flex-direction: column; + width: 100%; + color: var(--ct-modal-color); + pointer-events: auto; + background-color: var(--ct-modal-bg); + background-clip: padding-box; + border: var(--ct-modal-border-width) solid var(--ct-modal-border-color); + border-radius: var(--ct-modal-border-radius); + outline: 0; +} + +.modal-backdrop { + --ct-backdrop-zindex: 1050; + --ct-backdrop-bg: var(--ct-emphasis-color); + --ct-backdrop-opacity: 0.75; + position: fixed; + top: 0; + right: 0; + z-index: var(--ct-backdrop-zindex); + width: 100vw; + height: 100vh; + background-color: var(--ct-backdrop-bg); +} +.modal-backdrop.fade { + opacity: 0; +} +.modal-backdrop.show { + opacity: var(--ct-backdrop-opacity); +} + +.modal-header { + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -ms-flex-negative: 0; + flex-shrink: 0; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + -webkit-box-pack: justify; + -ms-flex-pack: justify; + justify-content: space-between; + padding: var(--ct-modal-header-padding); + border-bottom: var(--ct-modal-header-border-width) solid var(--ct-modal-header-border-color); + border-top-right-radius: var(--ct-modal-inner-border-radius); + border-top-left-radius: var(--ct-modal-inner-border-radius); +} +.modal-header .btn-close { + padding: calc(var(--ct-modal-header-padding-y) * 0.5) calc(var(--ct-modal-header-padding-x) * 0.5); + margin: calc(-0.5 * var(--ct-modal-header-padding-y)) auto calc(-0.5 * var(--ct-modal-header-padding-y)) calc(-0.5 * var(--ct-modal-header-padding-x)); +} + +.modal-title { + margin-bottom: 0; + line-height: var(--ct-modal-title-line-height); +} + +.modal-body { + position: relative; + -webkit-box-flex: 1; + -ms-flex: 1 1 auto; + flex: 1 1 auto; + padding: var(--ct-modal-padding); +} + +.modal-footer { + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -ms-flex-negative: 0; + flex-shrink: 0; + -ms-flex-wrap: wrap; + flex-wrap: wrap; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + -webkit-box-pack: end; + -ms-flex-pack: end; + justify-content: flex-end; + padding: calc(var(--ct-modal-padding) - var(--ct-modal-footer-gap) * 0.5); + background-color: var(--ct-modal-footer-bg); + border-top: var(--ct-modal-footer-border-width) solid var(--ct-modal-footer-border-color); + border-bottom-left-radius: var(--ct-modal-inner-border-radius); + border-bottom-right-radius: var(--ct-modal-inner-border-radius); +} +.modal-footer > * { + margin: calc(var(--ct-modal-footer-gap) * 0.5); +} + +@media (min-width: 576px) { + .modal { + --ct-modal-margin: 1.75rem; + --ct-modal-box-shadow: var(--ct-box-shadow); + } + .modal-dialog { + max-width: var(--ct-modal-width); + margin-left: auto; + margin-right: auto; + } + .modal-sm { + --ct-modal-width: 300px; + } +} +@media (min-width: 992px) { + .modal-lg, +.modal-xl { + --ct-modal-width: 800px; + } +} +@media (min-width: 1200px) { + .modal-xl { + --ct-modal-width: 1140px; + } +} +.modal-fullscreen { + width: 100vw; + max-width: none; + height: 100%; + margin: 0; +} +.modal-fullscreen .modal-content { + height: 100%; + border: 0; + border-radius: 0; +} +.modal-fullscreen .modal-header, +.modal-fullscreen .modal-footer { + border-radius: 0; +} +.modal-fullscreen .modal-body { + overflow-y: auto; +} + +@media (max-width: 575.98px) { + .modal-fullscreen-sm-down { + width: 100vw; + max-width: none; + height: 100%; + margin: 0; + } + .modal-fullscreen-sm-down .modal-content { + height: 100%; + border: 0; + border-radius: 0; + } + .modal-fullscreen-sm-down .modal-header, +.modal-fullscreen-sm-down .modal-footer { + border-radius: 0; + } + .modal-fullscreen-sm-down .modal-body { + overflow-y: auto; + } +} +@media (max-width: 767.98px) { + .modal-fullscreen-md-down { + width: 100vw; + max-width: none; + height: 100%; + margin: 0; + } + .modal-fullscreen-md-down .modal-content { + height: 100%; + border: 0; + border-radius: 0; + } + .modal-fullscreen-md-down .modal-header, +.modal-fullscreen-md-down .modal-footer { + border-radius: 0; + } + .modal-fullscreen-md-down .modal-body { + overflow-y: auto; + } +} +@media (max-width: 991.98px) { + .modal-fullscreen-lg-down { + width: 100vw; + max-width: none; + height: 100%; + margin: 0; + } + .modal-fullscreen-lg-down .modal-content { + height: 100%; + border: 0; + border-radius: 0; + } + .modal-fullscreen-lg-down .modal-header, +.modal-fullscreen-lg-down .modal-footer { + border-radius: 0; + } + .modal-fullscreen-lg-down .modal-body { + overflow-y: auto; + } +} +@media (max-width: 1199.98px) { + .modal-fullscreen-xl-down { + width: 100vw; + max-width: none; + height: 100%; + margin: 0; + } + .modal-fullscreen-xl-down .modal-content { + height: 100%; + border: 0; + border-radius: 0; + } + .modal-fullscreen-xl-down .modal-header, +.modal-fullscreen-xl-down .modal-footer { + border-radius: 0; + } + .modal-fullscreen-xl-down .modal-body { + overflow-y: auto; + } +} +@media (max-width: 1399.98px) { + .modal-fullscreen-xxl-down { + width: 100vw; + max-width: none; + height: 100%; + margin: 0; + } + .modal-fullscreen-xxl-down .modal-content { + height: 100%; + border: 0; + border-radius: 0; + } + .modal-fullscreen-xxl-down .modal-header, +.modal-fullscreen-xxl-down .modal-footer { + border-radius: 0; + } + .modal-fullscreen-xxl-down .modal-body { + overflow-y: auto; + } +} +.tooltip { + --ct-tooltip-zindex: 1080; + --ct-tooltip-max-width: 200px; + --ct-tooltip-padding-x: 0.625rem; + --ct-tooltip-padding-y: 0.3125rem; + --ct-tooltip-margin: ; + --ct-tooltip-font-size: 0.85rem; + --ct-tooltip-color: var(--ct-body-bg); + --ct-tooltip-bg: var(--ct-body-color); + --ct-tooltip-border-radius: var(--ct-border-radius); + --ct-tooltip-opacity: 1; + --ct-tooltip-arrow-width: 0.8rem; + --ct-tooltip-arrow-height: 0.4rem; + z-index: var(--ct-tooltip-zindex); + display: block; + margin: var(--ct-tooltip-margin); + font-family: var(--ct-font-sans-serif); + font-style: normal; + font-weight: 400; + line-height: 1.5; + text-align: right; + text-align: start; + text-decoration: none; + text-shadow: none; + text-transform: none; + letter-spacing: normal; + word-break: normal; + white-space: normal; + word-spacing: normal; + line-break: auto; + font-size: var(--ct-tooltip-font-size); + word-wrap: break-word; + opacity: 0; +} +.tooltip.show { + opacity: var(--ct-tooltip-opacity); +} +.tooltip .tooltip-arrow { + display: block; + width: var(--ct-tooltip-arrow-width); + height: var(--ct-tooltip-arrow-height); +} +.tooltip .tooltip-arrow::before { + position: absolute; + content: ""; + border-color: transparent; + border-style: solid; +} + +.bs-tooltip-top .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow { + bottom: calc(-1 * var(--ct-tooltip-arrow-height)); +} +.bs-tooltip-top .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow::before { + top: -1px; + border-width: var(--ct-tooltip-arrow-height) calc(var(--ct-tooltip-arrow-width) * 0.5) 0; + border-top-color: var(--ct-tooltip-bg); +} +.bs-tooltip-end .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow { + left: calc(-1 * var(--ct-tooltip-arrow-height)); + width: var(--ct-tooltip-arrow-height); + height: var(--ct-tooltip-arrow-width); +} +.bs-tooltip-end .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow::before { + right: -1px; + border-width: calc(var(--ct-tooltip-arrow-width) * 0.5) var(--ct-tooltip-arrow-height) calc(var(--ct-tooltip-arrow-width) * 0.5) 0; + border-right-color: var(--ct-tooltip-bg); +} +.bs-tooltip-bottom .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow { + top: calc(-1 * var(--ct-tooltip-arrow-height)); +} +.bs-tooltip-bottom .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow::before { + bottom: -1px; + border-width: 0 calc(var(--ct-tooltip-arrow-width) * 0.5) var(--ct-tooltip-arrow-height); + border-bottom-color: var(--ct-tooltip-bg); +} +.bs-tooltip-start .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow { + right: calc(-1 * var(--ct-tooltip-arrow-height)); + width: var(--ct-tooltip-arrow-height); + height: var(--ct-tooltip-arrow-width); +} +.bs-tooltip-start .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow::before { + left: -1px; + border-width: calc(var(--ct-tooltip-arrow-width) * 0.5) 0 calc(var(--ct-tooltip-arrow-width) * 0.5) var(--ct-tooltip-arrow-height); + border-left-color: var(--ct-tooltip-bg); +} +.tooltip-inner { + max-width: var(--ct-tooltip-max-width); + padding: var(--ct-tooltip-padding-y) var(--ct-tooltip-padding-x); + color: var(--ct-tooltip-color); + text-align: center; + background-color: var(--ct-tooltip-bg); + border-radius: var(--ct-tooltip-border-radius); +} + +.popover { + --ct-popover-zindex: 1070; + --ct-popover-max-width: 276px; + --ct-popover-font-size: 0.85rem; + --ct-popover-bg: var(--ct-secondary-bg); + --ct-popover-border-width: var(--ct-border-width); + --ct-popover-border-color: transparent; + --ct-popover-border-radius: var(--ct-border-radius); + --ct-popover-inner-border-radius: calc(var(--ct-border-radius) - var(--ct-border-width)); + --ct-popover-box-shadow: var(--ct-box-shadow-lg); + --ct-popover-header-padding-x: 0.8rem; + --ct-popover-header-padding-y: 0.7rem; + --ct-popover-header-font-size: 0.875rem; + --ct-popover-header-color: inherit; + --ct-popover-header-bg: var(--ct-tertiary-bg); + --ct-popover-body-padding-x: 0.75rem; + --ct-popover-body-padding-y: 0.5rem; + --ct-popover-body-color: var(--ct-body-color); + --ct-popover-arrow-width: 1rem; + --ct-popover-arrow-height: 0.5rem; + --ct-popover-arrow-border: var(--ct-popover-border-color); + z-index: var(--ct-popover-zindex); + display: block; + max-width: var(--ct-popover-max-width); + font-family: var(--ct-font-sans-serif); + font-style: normal; + font-weight: 400; + line-height: 1.5; + text-align: right; + text-align: start; + text-decoration: none; + text-shadow: none; + text-transform: none; + letter-spacing: normal; + word-break: normal; + white-space: normal; + word-spacing: normal; + line-break: auto; + font-size: var(--ct-popover-font-size); + word-wrap: break-word; + background-color: var(--ct-popover-bg); + background-clip: padding-box; + border: var(--ct-popover-border-width) solid var(--ct-popover-border-color); + border-radius: var(--ct-popover-border-radius); +} +.popover .popover-arrow { + display: block; + width: var(--ct-popover-arrow-width); + height: var(--ct-popover-arrow-height); +} +.popover .popover-arrow::before, .popover .popover-arrow::after { + position: absolute; + display: block; + content: ""; + border-color: transparent; + border-style: solid; + border-width: 0; +} + +.bs-popover-top > .popover-arrow, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow { + bottom: calc(-1 * (var(--ct-popover-arrow-height)) - var(--ct-popover-border-width)); +} +.bs-popover-top > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow::before, .bs-popover-top > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow::after { + border-width: var(--ct-popover-arrow-height) calc(var(--ct-popover-arrow-width) * 0.5) 0; +} +.bs-popover-top > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow::before { + bottom: 0; + border-top-color: var(--ct-popover-arrow-border); +} +.bs-popover-top > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow::after { + bottom: var(--ct-popover-border-width); + border-top-color: var(--ct-popover-bg); +} +.bs-popover-end > .popover-arrow, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow { + left: calc(-1 * (var(--ct-popover-arrow-height)) - var(--ct-popover-border-width)); + width: var(--ct-popover-arrow-height); + height: var(--ct-popover-arrow-width); +} +.bs-popover-end > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow::before, .bs-popover-end > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow::after { + border-width: calc(var(--ct-popover-arrow-width) * 0.5) var(--ct-popover-arrow-height) calc(var(--ct-popover-arrow-width) * 0.5) 0; +} +.bs-popover-end > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow::before { + left: 0; + border-right-color: var(--ct-popover-arrow-border); +} +.bs-popover-end > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow::after { + left: var(--ct-popover-border-width); + border-right-color: var(--ct-popover-bg); +} +.bs-popover-bottom > .popover-arrow, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow { + top: calc(-1 * (var(--ct-popover-arrow-height)) - var(--ct-popover-border-width)); +} +.bs-popover-bottom > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow::before, .bs-popover-bottom > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow::after { + border-width: 0 calc(var(--ct-popover-arrow-width) * 0.5) var(--ct-popover-arrow-height); +} +.bs-popover-bottom > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow::before { + top: 0; + border-bottom-color: var(--ct-popover-arrow-border); +} +.bs-popover-bottom > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow::after { + top: var(--ct-popover-border-width); + border-bottom-color: var(--ct-popover-bg); +} +.bs-popover-bottom .popover-header::before, .bs-popover-auto[data-popper-placement^=bottom] .popover-header::before { + position: absolute; + top: 0; + right: 50%; + display: block; + width: var(--ct-popover-arrow-width); + margin-right: calc(-0.5 * var(--ct-popover-arrow-width)); + content: ""; + border-bottom: var(--ct-popover-border-width) solid var(--ct-popover-header-bg); +} +.bs-popover-start > .popover-arrow, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow { + right: calc(-1 * (var(--ct-popover-arrow-height)) - var(--ct-popover-border-width)); + width: var(--ct-popover-arrow-height); + height: var(--ct-popover-arrow-width); +} +.bs-popover-start > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow::before, .bs-popover-start > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow::after { + border-width: calc(var(--ct-popover-arrow-width) * 0.5) 0 calc(var(--ct-popover-arrow-width) * 0.5) var(--ct-popover-arrow-height); +} +.bs-popover-start > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow::before { + right: 0; + border-left-color: var(--ct-popover-arrow-border); +} +.bs-popover-start > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow::after { + right: var(--ct-popover-border-width); + border-left-color: var(--ct-popover-bg); +} +.popover-header { + padding: var(--ct-popover-header-padding-y) var(--ct-popover-header-padding-x); + margin-bottom: 0; + font-size: var(--ct-popover-header-font-size); + color: var(--ct-popover-header-color); + background-color: var(--ct-popover-header-bg); + border-bottom: var(--ct-popover-border-width) solid var(--ct-popover-border-color); + border-top-right-radius: var(--ct-popover-inner-border-radius); + border-top-left-radius: var(--ct-popover-inner-border-radius); +} +.popover-header:empty { + display: none; +} + +.popover-body { + padding: var(--ct-popover-body-padding-y) var(--ct-popover-body-padding-x); + color: var(--ct-popover-body-color); +} + +.carousel { + position: relative; +} + +.carousel.pointer-event { + -ms-touch-action: pan-y; + touch-action: pan-y; +} + +.carousel-inner { + position: relative; + width: 100%; + overflow: hidden; +} +.carousel-inner::after { + display: block; + clear: both; + content: ""; +} + +.carousel-item { + position: relative; + display: none; + float: right; + width: 100%; + margin-left: -100%; + -webkit-backface-visibility: hidden; + backface-visibility: hidden; + -webkit-transition: -webkit-transform 0.6s ease-in-out; + transition: -webkit-transform 0.6s ease-in-out; + transition: transform 0.6s ease-in-out; + transition: transform 0.6s ease-in-out, -webkit-transform 0.6s ease-in-out; +} +@media (prefers-reduced-motion: reduce) { + .carousel-item { + -webkit-transition: none; + transition: none; + } +} + +.carousel-item.active, +.carousel-item-next, +.carousel-item-prev { + display: block; +} + +.carousel-item-next:not(.carousel-item-start), +.active.carousel-item-end { + -webkit-transform: translateX(-100%); + transform: translateX(-100%); +} + +.carousel-item-prev:not(.carousel-item-end), +.active.carousel-item-start { + -webkit-transform: translateX(100%); + transform: translateX(100%); +} + +.carousel-fade .carousel-item { + opacity: 0; + -webkit-transition-property: opacity; + transition-property: opacity; + -webkit-transform: none; + transform: none; +} +.carousel-fade .carousel-item.active, +.carousel-fade .carousel-item-next.carousel-item-start, +.carousel-fade .carousel-item-prev.carousel-item-end { + z-index: 1; + opacity: 1; +} +.carousel-fade .active.carousel-item-start, +.carousel-fade .active.carousel-item-end { + z-index: 0; + opacity: 0; + -webkit-transition: opacity 0s 0.6s; + transition: opacity 0s 0.6s; +} +@media (prefers-reduced-motion: reduce) { + .carousel-fade .active.carousel-item-start, +.carousel-fade .active.carousel-item-end { + -webkit-transition: none; + transition: none; + } +} + +.carousel-control-prev, +.carousel-control-next { + position: absolute; + top: 0; + bottom: 0; + z-index: 1; + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + -webkit-box-pack: center; + -ms-flex-pack: center; + justify-content: center; + width: 15%; + padding: 0; + color: #fff; + text-align: center; + background: none; + border: 0; + opacity: 0.5; + -webkit-transition: opacity 0.15s ease; + transition: opacity 0.15s ease; +} +@media (prefers-reduced-motion: reduce) { + .carousel-control-prev, +.carousel-control-next { + -webkit-transition: none; + transition: none; + } +} +.carousel-control-prev:hover, .carousel-control-prev:focus, +.carousel-control-next:hover, +.carousel-control-next:focus { + color: #fff; + text-decoration: none; + outline: 0; + opacity: 0.9; +} + +.carousel-control-prev { + right: 0; +} + +.carousel-control-next { + left: 0; +} + +.carousel-control-prev-icon, +.carousel-control-next-icon { + display: inline-block; + width: 2rem; + height: 2rem; + background-repeat: no-repeat; + background-position: 50%; + background-size: 100% 100%; +} +.carousel-control-next-icon { + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0z'/%3e%3c/svg%3e"); +} + +.carousel-control-prev-icon { + background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e"); +} + +.carousel-indicators { + position: absolute; + left: 0; + bottom: 0; + right: 0; + z-index: 2; + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-pack: center; + -ms-flex-pack: center; + justify-content: center; + padding: 0; + margin-left: 15%; + margin-bottom: 1rem; + margin-right: 15%; +} +.carousel-indicators [data-bs-target] { + -webkit-box-sizing: content-box; + box-sizing: content-box; + -webkit-box-flex: 0; + -ms-flex: 0 1 auto; + flex: 0 1 auto; + width: 30px; + height: 3px; + padding: 0; + margin-left: 3px; + margin-right: 3px; + text-indent: -999px; + cursor: pointer; + background-color: #fff; + background-clip: padding-box; + border: 0; + border-top: 10px solid transparent; + border-bottom: 10px solid transparent; + opacity: 0.5; + -webkit-transition: opacity 0.6s ease; + transition: opacity 0.6s ease; +} +@media (prefers-reduced-motion: reduce) { + .carousel-indicators [data-bs-target] { + -webkit-transition: none; + transition: none; + } +} +.carousel-indicators .active { + opacity: 1; +} + +.carousel-caption { + position: absolute; + left: 15%; + bottom: 1.25rem; + right: 15%; + padding-top: 1.25rem; + padding-bottom: 1.25rem; + color: #fff; + text-align: center; +} + +.carousel-dark .carousel-control-next-icon, +.carousel-dark .carousel-control-prev-icon { + -webkit-filter: invert(1) grayscale(100); + filter: invert(1) grayscale(100); +} +.carousel-dark .carousel-indicators [data-bs-target] { + background-color: #000; +} +.carousel-dark .carousel-caption { + color: #000; +} + +[data-bs-theme=dark] .carousel .carousel-control-next-icon, +[data-bs-theme=dark] .carousel .carousel-control-prev-icon, [data-bs-theme=dark].carousel .carousel-control-next-icon, +[data-bs-theme=dark].carousel .carousel-control-prev-icon { + -webkit-filter: invert(1) grayscale(100); + filter: invert(1) grayscale(100); +} +[data-bs-theme=dark] .carousel .carousel-indicators [data-bs-target], [data-bs-theme=dark].carousel .carousel-indicators [data-bs-target] { + background-color: #000; +} +[data-bs-theme=dark] .carousel .carousel-caption, [data-bs-theme=dark].carousel .carousel-caption { + color: #000; +} + +.spinner-grow, +.spinner-border { + display: inline-block; + width: var(--ct-spinner-width); + height: var(--ct-spinner-height); + vertical-align: var(--ct-spinner-vertical-align); + border-radius: 50%; + -webkit-animation: var(--ct-spinner-animation-speed) linear infinite var(--ct-spinner-animation-name); + animation: var(--ct-spinner-animation-speed) linear infinite var(--ct-spinner-animation-name); +} + +@-webkit-keyframes spinner-border { + to { + -webkit-transform: rotate(360deg) ; + transform: rotate(360deg) ; + } +} + +@keyframes spinner-border { + to { + -webkit-transform: rotate(360deg) ; + transform: rotate(360deg) ; + } +} +.spinner-border { + --ct-spinner-width: 2rem; + --ct-spinner-height: 2rem; + --ct-spinner-vertical-align: -0.25em; + --ct-spinner-border-width: 0.25em; + --ct-spinner-animation-speed: 0.75s; + --ct-spinner-animation-name: spinner-border; + border: var(--ct-spinner-border-width) solid currentcolor; + border-left-color: transparent; +} + +.spinner-border-sm { + --ct-spinner-width: 1rem; + --ct-spinner-height: 1rem; + --ct-spinner-border-width: 0.2em; +} + +@-webkit-keyframes spinner-grow { + 0% { + -webkit-transform: scale(0); + transform: scale(0); + } + 50% { + opacity: 1; + -webkit-transform: none; + transform: none; + } +} + +@keyframes spinner-grow { + 0% { + -webkit-transform: scale(0); + transform: scale(0); + } + 50% { + opacity: 1; + -webkit-transform: none; + transform: none; + } +} +.spinner-grow { + --ct-spinner-width: 2rem; + --ct-spinner-height: 2rem; + --ct-spinner-vertical-align: -0.25em; + --ct-spinner-animation-speed: 0.75s; + --ct-spinner-animation-name: spinner-grow; + background-color: currentcolor; + opacity: 0; +} + +.spinner-grow-sm { + --ct-spinner-width: 1rem; + --ct-spinner-height: 1rem; +} + +@media (prefers-reduced-motion: reduce) { + .spinner-border, +.spinner-grow { + --ct-spinner-animation-speed: 1.5s; + } +} +.offcanvas, .offcanvas-xxl, .offcanvas-xl, .offcanvas-lg, .offcanvas-md, .offcanvas-sm { + --ct-offcanvas-zindex: 1045; + --ct-offcanvas-width: 400px; + --ct-offcanvas-height: 30vh; + --ct-offcanvas-padding-x: 0.75rem; + --ct-offcanvas-padding-y: 0.75rem; + --ct-offcanvas-color: var(--ct-body-color); + --ct-offcanvas-bg: var(--ct-secondary-bg); + --ct-offcanvas-border-width: var(--ct-border-width); + --ct-offcanvas-border-color: transparent; + --ct-offcanvas-box-shadow: 0 0.125rem 0.25rem rgba(var(--ct-body-color-rgb), 0.15); + --ct-offcanvas-transition: transform 0.3s ease-in-out; + --ct-offcanvas-title-line-height: 1.5; +} + +@media (max-width: 575.98px) { + .offcanvas-sm { + position: fixed; + bottom: 0; + z-index: var(--ct-offcanvas-zindex); + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-orient: vertical; + -webkit-box-direction: normal; + -ms-flex-direction: column; + flex-direction: column; + max-width: 100%; + color: var(--ct-offcanvas-color); + visibility: hidden; + background-color: var(--ct-offcanvas-bg); + background-clip: padding-box; + outline: 0; + -webkit-transition: var(--ct-offcanvas-transition); + transition: var(--ct-offcanvas-transition); + } +} +@media (max-width: 575.98px) and (prefers-reduced-motion: reduce) { + .offcanvas-sm { + -webkit-transition: none; + transition: none; + } +} +@media (max-width: 575.98px) { + .offcanvas-sm.offcanvas-start { + top: 0; + right: 0; + width: var(--ct-offcanvas-width); + border-left: var(--ct-offcanvas-border-width) solid var(--ct-offcanvas-border-color); + -webkit-transform: translateX(100%); + transform: translateX(100%); + } +} +@media (max-width: 575.98px) { + .offcanvas-sm.offcanvas-end { + top: 0; + left: 0; + width: var(--ct-offcanvas-width); + border-right: var(--ct-offcanvas-border-width) solid var(--ct-offcanvas-border-color); + -webkit-transform: translateX(-100%); + transform: translateX(-100%); + } +} +@media (max-width: 575.98px) { + .offcanvas-sm.offcanvas-top { + top: 0; + left: 0; + right: 0; + height: var(--ct-offcanvas-height); + max-height: 100%; + border-bottom: var(--ct-offcanvas-border-width) solid var(--ct-offcanvas-border-color); + -webkit-transform: translateY(-100%); + transform: translateY(-100%); + } +} +@media (max-width: 575.98px) { + .offcanvas-sm.offcanvas-bottom { + left: 0; + right: 0; + height: var(--ct-offcanvas-height); + max-height: 100%; + border-top: var(--ct-offcanvas-border-width) solid var(--ct-offcanvas-border-color); + -webkit-transform: translateY(100%); + transform: translateY(100%); + } +} +@media (max-width: 575.98px) { + .offcanvas-sm.showing, .offcanvas-sm.show:not(.hiding) { + -webkit-transform: none; + transform: none; + } +} +@media (max-width: 575.98px) { + .offcanvas-sm.showing, .offcanvas-sm.hiding, .offcanvas-sm.show { + visibility: visible; + } +} +@media (min-width: 576px) { + .offcanvas-sm { + --ct-offcanvas-height: auto; + --ct-offcanvas-border-width: 0; + background-color: transparent !important; + } + .offcanvas-sm .offcanvas-header { + display: none; + } + .offcanvas-sm .offcanvas-body { + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-flex: 0; + -ms-flex-positive: 0; + flex-grow: 0; + padding: 0; + overflow-y: visible; + background-color: transparent !important; + } +} + +@media (max-width: 767.98px) { + .offcanvas-md { + position: fixed; + bottom: 0; + z-index: var(--ct-offcanvas-zindex); + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-orient: vertical; + -webkit-box-direction: normal; + -ms-flex-direction: column; + flex-direction: column; + max-width: 100%; + color: var(--ct-offcanvas-color); + visibility: hidden; + background-color: var(--ct-offcanvas-bg); + background-clip: padding-box; + outline: 0; + -webkit-transition: var(--ct-offcanvas-transition); + transition: var(--ct-offcanvas-transition); + } +} +@media (max-width: 767.98px) and (prefers-reduced-motion: reduce) { + .offcanvas-md { + -webkit-transition: none; + transition: none; + } +} +@media (max-width: 767.98px) { + .offcanvas-md.offcanvas-start { + top: 0; + right: 0; + width: var(--ct-offcanvas-width); + border-left: var(--ct-offcanvas-border-width) solid var(--ct-offcanvas-border-color); + -webkit-transform: translateX(100%); + transform: translateX(100%); + } +} +@media (max-width: 767.98px) { + .offcanvas-md.offcanvas-end { + top: 0; + left: 0; + width: var(--ct-offcanvas-width); + border-right: var(--ct-offcanvas-border-width) solid var(--ct-offcanvas-border-color); + -webkit-transform: translateX(-100%); + transform: translateX(-100%); + } +} +@media (max-width: 767.98px) { + .offcanvas-md.offcanvas-top { + top: 0; + left: 0; + right: 0; + height: var(--ct-offcanvas-height); + max-height: 100%; + border-bottom: var(--ct-offcanvas-border-width) solid var(--ct-offcanvas-border-color); + -webkit-transform: translateY(-100%); + transform: translateY(-100%); + } +} +@media (max-width: 767.98px) { + .offcanvas-md.offcanvas-bottom { + left: 0; + right: 0; + height: var(--ct-offcanvas-height); + max-height: 100%; + border-top: var(--ct-offcanvas-border-width) solid var(--ct-offcanvas-border-color); + -webkit-transform: translateY(100%); + transform: translateY(100%); + } +} +@media (max-width: 767.98px) { + .offcanvas-md.showing, .offcanvas-md.show:not(.hiding) { + -webkit-transform: none; + transform: none; + } +} +@media (max-width: 767.98px) { + .offcanvas-md.showing, .offcanvas-md.hiding, .offcanvas-md.show { + visibility: visible; + } +} +@media (min-width: 768px) { + .offcanvas-md { + --ct-offcanvas-height: auto; + --ct-offcanvas-border-width: 0; + background-color: transparent !important; + } + .offcanvas-md .offcanvas-header { + display: none; + } + .offcanvas-md .offcanvas-body { + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-flex: 0; + -ms-flex-positive: 0; + flex-grow: 0; + padding: 0; + overflow-y: visible; + background-color: transparent !important; + } +} + +@media (max-width: 991.98px) { + .offcanvas-lg { + position: fixed; + bottom: 0; + z-index: var(--ct-offcanvas-zindex); + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-orient: vertical; + -webkit-box-direction: normal; + -ms-flex-direction: column; + flex-direction: column; + max-width: 100%; + color: var(--ct-offcanvas-color); + visibility: hidden; + background-color: var(--ct-offcanvas-bg); + background-clip: padding-box; + outline: 0; + -webkit-transition: var(--ct-offcanvas-transition); + transition: var(--ct-offcanvas-transition); + } +} +@media (max-width: 991.98px) and (prefers-reduced-motion: reduce) { + .offcanvas-lg { + -webkit-transition: none; + transition: none; + } +} +@media (max-width: 991.98px) { + .offcanvas-lg.offcanvas-start { + top: 0; + right: 0; + width: var(--ct-offcanvas-width); + border-left: var(--ct-offcanvas-border-width) solid var(--ct-offcanvas-border-color); + -webkit-transform: translateX(100%); + transform: translateX(100%); + } +} +@media (max-width: 991.98px) { + .offcanvas-lg.offcanvas-end { + top: 0; + left: 0; + width: var(--ct-offcanvas-width); + border-right: var(--ct-offcanvas-border-width) solid var(--ct-offcanvas-border-color); + -webkit-transform: translateX(-100%); + transform: translateX(-100%); + } +} +@media (max-width: 991.98px) { + .offcanvas-lg.offcanvas-top { + top: 0; + left: 0; + right: 0; + height: var(--ct-offcanvas-height); + max-height: 100%; + border-bottom: var(--ct-offcanvas-border-width) solid var(--ct-offcanvas-border-color); + -webkit-transform: translateY(-100%); + transform: translateY(-100%); + } +} +@media (max-width: 991.98px) { + .offcanvas-lg.offcanvas-bottom { + left: 0; + right: 0; + height: var(--ct-offcanvas-height); + max-height: 100%; + border-top: var(--ct-offcanvas-border-width) solid var(--ct-offcanvas-border-color); + -webkit-transform: translateY(100%); + transform: translateY(100%); + } +} +@media (max-width: 991.98px) { + .offcanvas-lg.showing, .offcanvas-lg.show:not(.hiding) { + -webkit-transform: none; + transform: none; + } +} +@media (max-width: 991.98px) { + .offcanvas-lg.showing, .offcanvas-lg.hiding, .offcanvas-lg.show { + visibility: visible; + } +} +@media (min-width: 992px) { + .offcanvas-lg { + --ct-offcanvas-height: auto; + --ct-offcanvas-border-width: 0; + background-color: transparent !important; + } + .offcanvas-lg .offcanvas-header { + display: none; + } + .offcanvas-lg .offcanvas-body { + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-flex: 0; + -ms-flex-positive: 0; + flex-grow: 0; + padding: 0; + overflow-y: visible; + background-color: transparent !important; + } +} + +@media (max-width: 1199.98px) { + .offcanvas-xl { + position: fixed; + bottom: 0; + z-index: var(--ct-offcanvas-zindex); + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-orient: vertical; + -webkit-box-direction: normal; + -ms-flex-direction: column; + flex-direction: column; + max-width: 100%; + color: var(--ct-offcanvas-color); + visibility: hidden; + background-color: var(--ct-offcanvas-bg); + background-clip: padding-box; + outline: 0; + -webkit-transition: var(--ct-offcanvas-transition); + transition: var(--ct-offcanvas-transition); + } +} +@media (max-width: 1199.98px) and (prefers-reduced-motion: reduce) { + .offcanvas-xl { + -webkit-transition: none; + transition: none; + } +} +@media (max-width: 1199.98px) { + .offcanvas-xl.offcanvas-start { + top: 0; + right: 0; + width: var(--ct-offcanvas-width); + border-left: var(--ct-offcanvas-border-width) solid var(--ct-offcanvas-border-color); + -webkit-transform: translateX(100%); + transform: translateX(100%); + } +} +@media (max-width: 1199.98px) { + .offcanvas-xl.offcanvas-end { + top: 0; + left: 0; + width: var(--ct-offcanvas-width); + border-right: var(--ct-offcanvas-border-width) solid var(--ct-offcanvas-border-color); + -webkit-transform: translateX(-100%); + transform: translateX(-100%); + } +} +@media (max-width: 1199.98px) { + .offcanvas-xl.offcanvas-top { + top: 0; + left: 0; + right: 0; + height: var(--ct-offcanvas-height); + max-height: 100%; + border-bottom: var(--ct-offcanvas-border-width) solid var(--ct-offcanvas-border-color); + -webkit-transform: translateY(-100%); + transform: translateY(-100%); + } +} +@media (max-width: 1199.98px) { + .offcanvas-xl.offcanvas-bottom { + left: 0; + right: 0; + height: var(--ct-offcanvas-height); + max-height: 100%; + border-top: var(--ct-offcanvas-border-width) solid var(--ct-offcanvas-border-color); + -webkit-transform: translateY(100%); + transform: translateY(100%); + } +} +@media (max-width: 1199.98px) { + .offcanvas-xl.showing, .offcanvas-xl.show:not(.hiding) { + -webkit-transform: none; + transform: none; + } +} +@media (max-width: 1199.98px) { + .offcanvas-xl.showing, .offcanvas-xl.hiding, .offcanvas-xl.show { + visibility: visible; + } +} +@media (min-width: 1200px) { + .offcanvas-xl { + --ct-offcanvas-height: auto; + --ct-offcanvas-border-width: 0; + background-color: transparent !important; + } + .offcanvas-xl .offcanvas-header { + display: none; + } + .offcanvas-xl .offcanvas-body { + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-flex: 0; + -ms-flex-positive: 0; + flex-grow: 0; + padding: 0; + overflow-y: visible; + background-color: transparent !important; + } +} + +@media (max-width: 1399.98px) { + .offcanvas-xxl { + position: fixed; + bottom: 0; + z-index: var(--ct-offcanvas-zindex); + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-orient: vertical; + -webkit-box-direction: normal; + -ms-flex-direction: column; + flex-direction: column; + max-width: 100%; + color: var(--ct-offcanvas-color); + visibility: hidden; + background-color: var(--ct-offcanvas-bg); + background-clip: padding-box; + outline: 0; + -webkit-transition: var(--ct-offcanvas-transition); + transition: var(--ct-offcanvas-transition); + } +} +@media (max-width: 1399.98px) and (prefers-reduced-motion: reduce) { + .offcanvas-xxl { + -webkit-transition: none; + transition: none; + } +} +@media (max-width: 1399.98px) { + .offcanvas-xxl.offcanvas-start { + top: 0; + right: 0; + width: var(--ct-offcanvas-width); + border-left: var(--ct-offcanvas-border-width) solid var(--ct-offcanvas-border-color); + -webkit-transform: translateX(100%); + transform: translateX(100%); + } +} +@media (max-width: 1399.98px) { + .offcanvas-xxl.offcanvas-end { + top: 0; + left: 0; + width: var(--ct-offcanvas-width); + border-right: var(--ct-offcanvas-border-width) solid var(--ct-offcanvas-border-color); + -webkit-transform: translateX(-100%); + transform: translateX(-100%); + } +} +@media (max-width: 1399.98px) { + .offcanvas-xxl.offcanvas-top { + top: 0; + left: 0; + right: 0; + height: var(--ct-offcanvas-height); + max-height: 100%; + border-bottom: var(--ct-offcanvas-border-width) solid var(--ct-offcanvas-border-color); + -webkit-transform: translateY(-100%); + transform: translateY(-100%); + } +} +@media (max-width: 1399.98px) { + .offcanvas-xxl.offcanvas-bottom { + left: 0; + right: 0; + height: var(--ct-offcanvas-height); + max-height: 100%; + border-top: var(--ct-offcanvas-border-width) solid var(--ct-offcanvas-border-color); + -webkit-transform: translateY(100%); + transform: translateY(100%); + } +} +@media (max-width: 1399.98px) { + .offcanvas-xxl.showing, .offcanvas-xxl.show:not(.hiding) { + -webkit-transform: none; + transform: none; + } +} +@media (max-width: 1399.98px) { + .offcanvas-xxl.showing, .offcanvas-xxl.hiding, .offcanvas-xxl.show { + visibility: visible; + } +} +@media (min-width: 1400px) { + .offcanvas-xxl { + --ct-offcanvas-height: auto; + --ct-offcanvas-border-width: 0; + background-color: transparent !important; + } + .offcanvas-xxl .offcanvas-header { + display: none; + } + .offcanvas-xxl .offcanvas-body { + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-flex: 0; + -ms-flex-positive: 0; + flex-grow: 0; + padding: 0; + overflow-y: visible; + background-color: transparent !important; + } +} + +.offcanvas { + position: fixed; + bottom: 0; + z-index: var(--ct-offcanvas-zindex); + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-orient: vertical; + -webkit-box-direction: normal; + -ms-flex-direction: column; + flex-direction: column; + max-width: 100%; + color: var(--ct-offcanvas-color); + visibility: hidden; + background-color: var(--ct-offcanvas-bg); + background-clip: padding-box; + outline: 0; + -webkit-transition: var(--ct-offcanvas-transition); + transition: var(--ct-offcanvas-transition); +} +@media (prefers-reduced-motion: reduce) { + .offcanvas { + -webkit-transition: none; + transition: none; + } +} +.offcanvas.offcanvas-start { + top: 0; + right: 0; + width: var(--ct-offcanvas-width); + border-left: var(--ct-offcanvas-border-width) solid var(--ct-offcanvas-border-color); + -webkit-transform: translateX(100%); + transform: translateX(100%); +} +.offcanvas.offcanvas-end { + top: 0; + left: 0; + width: var(--ct-offcanvas-width); + border-right: var(--ct-offcanvas-border-width) solid var(--ct-offcanvas-border-color); + -webkit-transform: translateX(-100%); + transform: translateX(-100%); +} +.offcanvas.offcanvas-top { + top: 0; + left: 0; + right: 0; + height: var(--ct-offcanvas-height); + max-height: 100%; + border-bottom: var(--ct-offcanvas-border-width) solid var(--ct-offcanvas-border-color); + -webkit-transform: translateY(-100%); + transform: translateY(-100%); +} +.offcanvas.offcanvas-bottom { + left: 0; + right: 0; + height: var(--ct-offcanvas-height); + max-height: 100%; + border-top: var(--ct-offcanvas-border-width) solid var(--ct-offcanvas-border-color); + -webkit-transform: translateY(100%); + transform: translateY(100%); +} +.offcanvas.showing, .offcanvas.show:not(.hiding) { + -webkit-transform: none; + transform: none; +} +.offcanvas.showing, .offcanvas.hiding, .offcanvas.show { + visibility: visible; +} + +.offcanvas-backdrop { + position: fixed; + top: 0; + right: 0; + z-index: 1040; + width: 100vw; + height: 100vh; + background-color: var(--ct-emphasis-color); +} +.offcanvas-backdrop.fade { + opacity: 0; +} +.offcanvas-backdrop.show { + opacity: 0.75; +} + +.offcanvas-header { + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + -webkit-box-pack: justify; + -ms-flex-pack: justify; + justify-content: space-between; + padding: var(--ct-offcanvas-padding-y) var(--ct-offcanvas-padding-x); +} +.offcanvas-header .btn-close { + padding: calc(var(--ct-offcanvas-padding-y) * 0.5) calc(var(--ct-offcanvas-padding-x) * 0.5); + margin-top: calc(-0.5 * var(--ct-offcanvas-padding-y)); + margin-left: calc(-0.5 * var(--ct-offcanvas-padding-x)); + margin-bottom: calc(-0.5 * var(--ct-offcanvas-padding-y)); +} + +.offcanvas-title { + margin-bottom: 0; + line-height: var(--ct-offcanvas-title-line-height); +} + +.offcanvas-body { + -webkit-box-flex: 1; + -ms-flex-positive: 1; + flex-grow: 1; + padding: var(--ct-offcanvas-padding-y) var(--ct-offcanvas-padding-x); + overflow-y: auto; +} + +.placeholder { + display: inline-block; + min-height: 1em; + vertical-align: middle; + cursor: wait; + background-color: currentcolor; + opacity: 0.5; +} +.placeholder.btn::before { + display: inline-block; + content: ""; +} + +.placeholder-xs { + min-height: 0.6em; +} + +.placeholder-sm { + min-height: 0.8em; +} + +.placeholder-lg { + min-height: 1.2em; +} + +.placeholder-glow .placeholder { + -webkit-animation: placeholder-glow 2s ease-in-out infinite; + animation: placeholder-glow 2s ease-in-out infinite; +} + +@-webkit-keyframes placeholder-glow { + 50% { + opacity: 0.2; + } +} + +@keyframes placeholder-glow { + 50% { + opacity: 0.2; + } +} +.placeholder-wave { + -webkit-mask-image: linear-gradient(130deg, #000 55%, rgba(0, 0, 0, 0.8) 75%, #000 95%); + mask-image: linear-gradient(130deg, #000 55%, rgba(0, 0, 0, 0.8) 75%, #000 95%); + -webkit-mask-size: 200% 100%; + mask-size: 200% 100%; + -webkit-animation: placeholder-wave 2s linear infinite; + animation: placeholder-wave 2s linear infinite; +} + +@-webkit-keyframes placeholder-wave { + 100% { + -webkit-mask-position: -200% 0%; + mask-position: -200% 0%; + } +} + +@keyframes placeholder-wave { + 100% { + -webkit-mask-position: -200% 0%; + mask-position: -200% 0%; + } +} +.clearfix::after { + display: block; + clear: both; + content: ""; +} + +.text-bg-primary { + color: #fff !important; + background-color: RGBA(66, 84, 186, var(--ct-bg-opacity, 1)) !important; +} + +.text-bg-secondary { + color: #fff !important; + background-color: RGBA(108, 117, 125, var(--ct-bg-opacity, 1)) !important; +} + +.text-bg-success { + color: #fff !important; + background-color: RGBA(23, 164, 151, var(--ct-bg-opacity, 1)) !important; +} + +.text-bg-info { + color: #fff !important; + background-color: RGBA(41, 155, 246, var(--ct-bg-opacity, 1)) !important; +} + +.text-bg-warning { + color: #fff !important; + background-color: RGBA(254, 194, 13, var(--ct-bg-opacity, 1)) !important; +} + +.text-bg-danger { + color: #fff !important; + background-color: RGBA(247, 71, 58, var(--ct-bg-opacity, 1)) !important; +} + +.text-bg-light { + color: #212529 !important; + background-color: RGBA(242, 242, 247, var(--ct-bg-opacity, 1)) !important; +} + +.text-bg-dark { + color: #fff !important; + background-color: RGBA(73, 82, 107, var(--ct-bg-opacity, 1)) !important; +} + +.text-bg-purple { + color: #fff !important; + background-color: RGBA(129, 90, 197, var(--ct-bg-opacity, 1)) !important; +} + +.text-bg-pink { + color: #fff !important; + background-color: RGBA(255, 103, 155, var(--ct-bg-opacity, 1)) !important; +} + +.link-primary { + color: RGBA(var(--ct-primary-rgb), var(--ct-link-opacity, 1)) !important; + text-decoration-color: RGBA(var(--ct-primary-rgb), var(--ct-link-underline-opacity, 1)) !important; +} +.link-primary:hover, .link-primary:focus { + color: RGBA(56, 71, 158, var(--ct-link-opacity, 1)) !important; + text-decoration-color: RGBA(56, 71, 158, var(--ct-link-underline-opacity, 1)) !important; +} + +.link-secondary { + color: RGBA(var(--ct-secondary-rgb), var(--ct-link-opacity, 1)) !important; + text-decoration-color: RGBA(var(--ct-secondary-rgb), var(--ct-link-underline-opacity, 1)) !important; +} +.link-secondary:hover, .link-secondary:focus { + color: RGBA(92, 99, 106, var(--ct-link-opacity, 1)) !important; + text-decoration-color: RGBA(92, 99, 106, var(--ct-link-underline-opacity, 1)) !important; +} + +.link-success { + color: RGBA(var(--ct-success-rgb), var(--ct-link-opacity, 1)) !important; + text-decoration-color: RGBA(var(--ct-success-rgb), var(--ct-link-underline-opacity, 1)) !important; +} +.link-success:hover, .link-success:focus { + color: RGBA(20, 139, 128, var(--ct-link-opacity, 1)) !important; + text-decoration-color: RGBA(20, 139, 128, var(--ct-link-underline-opacity, 1)) !important; +} + +.link-info { + color: RGBA(var(--ct-info-rgb), var(--ct-link-opacity, 1)) !important; + text-decoration-color: RGBA(var(--ct-info-rgb), var(--ct-link-underline-opacity, 1)) !important; +} +.link-info:hover, .link-info:focus { + color: RGBA(35, 132, 209, var(--ct-link-opacity, 1)) !important; + text-decoration-color: RGBA(35, 132, 209, var(--ct-link-underline-opacity, 1)) !important; +} + +.link-warning { + color: RGBA(var(--ct-warning-rgb), var(--ct-link-opacity, 1)) !important; + text-decoration-color: RGBA(var(--ct-warning-rgb), var(--ct-link-underline-opacity, 1)) !important; +} +.link-warning:hover, .link-warning:focus { + color: RGBA(216, 165, 11, var(--ct-link-opacity, 1)) !important; + text-decoration-color: RGBA(216, 165, 11, var(--ct-link-underline-opacity, 1)) !important; +} + +.link-danger { + color: RGBA(var(--ct-danger-rgb), var(--ct-link-opacity, 1)) !important; + text-decoration-color: RGBA(var(--ct-danger-rgb), var(--ct-link-underline-opacity, 1)) !important; +} +.link-danger:hover, .link-danger:focus { + color: RGBA(210, 60, 49, var(--ct-link-opacity, 1)) !important; + text-decoration-color: RGBA(210, 60, 49, var(--ct-link-underline-opacity, 1)) !important; +} + +.link-light { + color: RGBA(var(--ct-light-rgb), var(--ct-link-opacity, 1)) !important; + text-decoration-color: RGBA(var(--ct-light-rgb), var(--ct-link-underline-opacity, 1)) !important; +} +.link-light:hover, .link-light:focus { + color: RGBA(244, 244, 248, var(--ct-link-opacity, 1)) !important; + text-decoration-color: RGBA(244, 244, 248, var(--ct-link-underline-opacity, 1)) !important; +} + +.link-dark { + color: RGBA(var(--ct-dark-rgb), var(--ct-link-opacity, 1)) !important; + text-decoration-color: RGBA(var(--ct-dark-rgb), var(--ct-link-underline-opacity, 1)) !important; +} +.link-dark:hover, .link-dark:focus { + color: RGBA(62, 70, 91, var(--ct-link-opacity, 1)) !important; + text-decoration-color: RGBA(62, 70, 91, var(--ct-link-underline-opacity, 1)) !important; +} + +.link-purple { + color: RGBA(var(--ct-purple-rgb), var(--ct-link-opacity, 1)) !important; + text-decoration-color: RGBA(var(--ct-purple-rgb), var(--ct-link-underline-opacity, 1)) !important; +} +.link-purple:hover, .link-purple:focus { + color: RGBA(110, 77, 167, var(--ct-link-opacity, 1)) !important; + text-decoration-color: RGBA(110, 77, 167, var(--ct-link-underline-opacity, 1)) !important; +} + +.link-pink { + color: RGBA(var(--ct-pink-rgb), var(--ct-link-opacity, 1)) !important; + text-decoration-color: RGBA(var(--ct-pink-rgb), var(--ct-link-underline-opacity, 1)) !important; +} +.link-pink:hover, .link-pink:focus { + color: RGBA(217, 88, 132, var(--ct-link-opacity, 1)) !important; + text-decoration-color: RGBA(217, 88, 132, var(--ct-link-underline-opacity, 1)) !important; +} + +.link-body-emphasis { + color: RGBA(var(--ct-emphasis-color-rgb), var(--ct-link-opacity, 1)) !important; + text-decoration-color: RGBA(var(--ct-emphasis-color-rgb), var(--ct-link-underline-opacity, 1)) !important; +} +.link-body-emphasis:hover, .link-body-emphasis:focus { + color: RGBA(var(--ct-emphasis-color-rgb), var(--ct-link-opacity, 0.75)) !important; + text-decoration-color: RGBA(var(--ct-emphasis-color-rgb), var(--ct-link-underline-opacity, 0.75)) !important; +} + +.focus-ring:focus { + outline: 0; + -webkit-box-shadow: var(--ct-focus-ring-x, 0) var(--ct-focus-ring-y, 0) var(--ct-focus-ring-blur, 0) var(--ct-focus-ring-width) var(--ct-focus-ring-color); + box-shadow: var(--ct-focus-ring-x, 0) var(--ct-focus-ring-y, 0) var(--ct-focus-ring-blur, 0) var(--ct-focus-ring-width) var(--ct-focus-ring-color); +} + +.icon-link { + display: -webkit-inline-box; + display: -ms-inline-flexbox; + display: inline-flex; + gap: 0.375rem; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + text-decoration-color: rgba(var(--ct-link-color-rgb), var(--ct-link-opacity, 0.5)); + text-underline-offset: 0.25em; + -webkit-backface-visibility: hidden; + backface-visibility: hidden; +} +.icon-link > .bi { + -ms-flex-negative: 0; + flex-shrink: 0; + width: 1em; + height: 1em; + fill: currentcolor; + -webkit-transition: 0.2s ease-in-out transform; + transition: 0.2s ease-in-out transform; +} +@media (prefers-reduced-motion: reduce) { + .icon-link > .bi { + -webkit-transition: none; + transition: none; + } +} + +.icon-link-hover:hover > .bi, .icon-link-hover:focus-visible > .bi { + -webkit-transform: var(--ct-icon-link-transform, translate3d(-0.25em, 0, 0)); + transform: var(--ct-icon-link-transform, translate3d(-0.25em, 0, 0)); +} + +.ratio { + position: relative; + width: 100%; +} +.ratio::before { + display: block; + padding-top: var(--ct-aspect-ratio); + content: ""; +} +.ratio > * { + position: absolute; + top: 0; + right: 0; + width: 100%; + height: 100%; +} + +.ratio-1x1 { + --ct-aspect-ratio: 100%; +} + +.ratio-4x3 { + --ct-aspect-ratio: 75%; +} + +.ratio-16x9 { + --ct-aspect-ratio: 56.25%; +} + +.ratio-21x9 { + --ct-aspect-ratio: 42.8571428571%; +} + +.fixed-top { + position: fixed; + top: 0; + left: 0; + right: 0; + z-index: 1030; +} + +.fixed-bottom { + position: fixed; + left: 0; + bottom: 0; + right: 0; + z-index: 1030; +} + +.sticky-top { + position: sticky; + top: 0; + z-index: 1020; +} + +.sticky-bottom { + position: sticky; + bottom: 0; + z-index: 1020; +} + +@media (min-width: 576px) { + .sticky-sm-top { + position: sticky; + top: 0; + z-index: 1020; + } + .sticky-sm-bottom { + position: sticky; + bottom: 0; + z-index: 1020; + } +} +@media (min-width: 768px) { + .sticky-md-top { + position: sticky; + top: 0; + z-index: 1020; + } + .sticky-md-bottom { + position: sticky; + bottom: 0; + z-index: 1020; + } +} +@media (min-width: 992px) { + .sticky-lg-top { + position: sticky; + top: 0; + z-index: 1020; + } + .sticky-lg-bottom { + position: sticky; + bottom: 0; + z-index: 1020; + } +} +@media (min-width: 1200px) { + .sticky-xl-top { + position: sticky; + top: 0; + z-index: 1020; + } + .sticky-xl-bottom { + position: sticky; + bottom: 0; + z-index: 1020; + } +} +@media (min-width: 1400px) { + .sticky-xxl-top { + position: sticky; + top: 0; + z-index: 1020; + } + .sticky-xxl-bottom { + position: sticky; + bottom: 0; + z-index: 1020; + } +} +.hstack { + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-orient: horizontal; + -webkit-box-direction: normal; + -ms-flex-direction: row; + flex-direction: row; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + -ms-flex-item-align: stretch; + align-self: stretch; +} + +.vstack { + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-flex: 1; + -ms-flex: 1 1 auto; + flex: 1 1 auto; + -webkit-box-orient: vertical; + -webkit-box-direction: normal; + -ms-flex-direction: column; + flex-direction: column; + -ms-flex-item-align: stretch; + align-self: stretch; +} + +.visually-hidden, +.visually-hidden-focusable:not(:focus):not(:focus-within) { + width: 1px !important; + height: 1px !important; + padding: 0 !important; + margin: -1px !important; + overflow: hidden !important; + clip: rect(0, 0, 0, 0) !important; + white-space: nowrap !important; + border: 0 !important; +} +.visually-hidden:not(caption), +.visually-hidden-focusable:not(:focus):not(:focus-within):not(caption) { + position: absolute !important; +} + +.stretched-link::after { + position: absolute; + top: 0; + left: 0; + bottom: 0; + right: 0; + z-index: 1; + content: ""; +} + +.text-truncate { + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap; +} + +.vr { + display: inline-block; + -ms-flex-item-align: stretch; + align-self: stretch; + width: 1px; + min-height: 1em; + background-color: currentcolor; + opacity: 1; +} + +.align-baseline { + vertical-align: baseline !important; +} + +.align-top { + vertical-align: top !important; +} + +.align-middle { + vertical-align: middle !important; +} + +.align-bottom { + vertical-align: bottom !important; +} + +.align-text-bottom { + vertical-align: text-bottom !important; +} + +.align-text-top { + vertical-align: text-top !important; +} + +.float-start { + float: right !important; +} + +.float-end { + float: left !important; +} + +.float-none { + float: none !important; +} + +.object-fit-contain { + -o-object-fit: contain !important; + object-fit: contain !important; +} + +.object-fit-cover { + -o-object-fit: cover !important; + object-fit: cover !important; +} + +.object-fit-fill { + -o-object-fit: fill !important; + object-fit: fill !important; +} + +.object-fit-scale { + -o-object-fit: scale-down !important; + object-fit: scale-down !important; +} + +.object-fit-none { + -o-object-fit: none !important; + object-fit: none !important; +} + +.opacity-0 { + opacity: 0 !important; +} + +.opacity-25 { + opacity: 0.25 !important; +} + +.opacity-50 { + opacity: 0.5 !important; +} + +.opacity-75 { + opacity: 0.75 !important; +} + +.opacity-100 { + opacity: 1 !important; +} + +.overflow-auto { + overflow: auto !important; +} + +.overflow-hidden { + overflow: hidden !important; +} + +.overflow-visible { + overflow: visible !important; +} + +.overflow-scroll { + overflow: scroll !important; +} + +.overflow-x-auto { + overflow-x: auto !important; +} + +.overflow-x-hidden { + overflow-x: hidden !important; +} + +.overflow-x-visible { + overflow-x: visible !important; +} + +.overflow-x-scroll { + overflow-x: scroll !important; +} + +.overflow-y-auto { + overflow-y: auto !important; +} + +.overflow-y-hidden { + overflow-y: hidden !important; +} + +.overflow-y-visible { + overflow-y: visible !important; +} + +.overflow-y-scroll { + overflow-y: scroll !important; +} + +.d-inline { + display: inline !important; +} + +.d-inline-block { + display: inline-block !important; +} + +.d-block { + display: block !important; +} + +.d-grid { + display: grid !important; +} + +.d-inline-grid { + display: inline-grid !important; +} + +.d-table { + display: table !important; +} + +.d-table-row { + display: table-row !important; +} + +.d-table-cell { + display: table-cell !important; +} + +.d-flex { + display: -webkit-box !important; + display: -ms-flexbox !important; + display: flex !important; +} + +.d-inline-flex { + display: -webkit-inline-box !important; + display: -ms-inline-flexbox !important; + display: inline-flex !important; +} + +.d-none { + display: none !important; +} + +.shadow { + -webkit-box-shadow: -2px 2px 3px rgba(27, 23, 30, 0.1) !important; + box-shadow: -2px 2px 3px rgba(27, 23, 30, 0.1) !important; +} + +.shadow-sm { + -webkit-box-shadow: 0 0.125rem 0.25rem rgba(var(--ct-body-color-rgb), 0.15) !important; + box-shadow: 0 0.125rem 0.25rem rgba(var(--ct-body-color-rgb), 0.15) !important; +} + +.shadow-lg { + -webkit-box-shadow: 0 2px 5px 0 rgba(27, 23, 30, 0.3) !important; + box-shadow: 0 2px 5px 0 rgba(27, 23, 30, 0.3) !important; +} + +.shadow-none { + -webkit-box-shadow: none !important; + box-shadow: none !important; +} + +.focus-ring-primary { + --ct-focus-ring-color: rgba(var(--ct-primary-rgb), var(--ct-focus-ring-opacity)); +} + +.focus-ring-secondary { + --ct-focus-ring-color: rgba(var(--ct-secondary-rgb), var(--ct-focus-ring-opacity)); +} + +.focus-ring-success { + --ct-focus-ring-color: rgba(var(--ct-success-rgb), var(--ct-focus-ring-opacity)); +} + +.focus-ring-info { + --ct-focus-ring-color: rgba(var(--ct-info-rgb), var(--ct-focus-ring-opacity)); +} + +.focus-ring-warning { + --ct-focus-ring-color: rgba(var(--ct-warning-rgb), var(--ct-focus-ring-opacity)); +} + +.focus-ring-danger { + --ct-focus-ring-color: rgba(var(--ct-danger-rgb), var(--ct-focus-ring-opacity)); +} + +.focus-ring-light { + --ct-focus-ring-color: rgba(var(--ct-light-rgb), var(--ct-focus-ring-opacity)); +} + +.focus-ring-dark { + --ct-focus-ring-color: rgba(var(--ct-dark-rgb), var(--ct-focus-ring-opacity)); +} + +.focus-ring-purple { + --ct-focus-ring-color: rgba(var(--ct-purple-rgb), var(--ct-focus-ring-opacity)); +} + +.focus-ring-pink { + --ct-focus-ring-color: rgba(var(--ct-pink-rgb), var(--ct-focus-ring-opacity)); +} + +.position-static { + position: static !important; +} + +.position-relative { + position: relative !important; +} + +.position-absolute { + position: absolute !important; +} + +.position-fixed { + position: fixed !important; +} + +.position-sticky { + position: sticky !important; +} + +.top-0 { + top: 0 !important; +} + +.top-50 { + top: 50% !important; +} + +.top-100 { + top: 100% !important; +} + +.bottom-0 { + bottom: 0 !important; +} + +.bottom-50 { + bottom: 50% !important; +} + +.bottom-100 { + bottom: 100% !important; +} + +.start-0 { + right: 0 !important; +} + +.start-50 { + right: 50% !important; +} + +.start-100 { + right: 100% !important; +} + +.end-0 { + left: 0 !important; +} + +.end-50 { + left: 50% !important; +} + +.end-100 { + left: 100% !important; +} + +.translate-middle { + -webkit-transform: translate(50%, -50%) !important; + transform: translate(50%, -50%) !important; +} + +.translate-middle-x { + -webkit-transform: translateX(50%) !important; + transform: translateX(50%) !important; +} + +.translate-middle-y { + -webkit-transform: translateY(-50%) !important; + transform: translateY(-50%) !important; +} + +.border { + border: var(--ct-border-width) var(--ct-border-style) var(--ct-border-color) !important; +} + +.border-0 { + border: 0 !important; +} + +.border-top { + border-top: var(--ct-border-width) var(--ct-border-style) var(--ct-border-color) !important; +} + +.border-top-0 { + border-top: 0 !important; +} + +.border-end { + border-left: var(--ct-border-width) var(--ct-border-style) var(--ct-border-color) !important; +} + +.border-end-0 { + border-left: 0 !important; +} + +.border-bottom { + border-bottom: var(--ct-border-width) var(--ct-border-style) var(--ct-border-color) !important; +} + +.border-bottom-0 { + border-bottom: 0 !important; +} + +.border-start { + border-right: var(--ct-border-width) var(--ct-border-style) var(--ct-border-color) !important; +} + +.border-start-0 { + border-right: 0 !important; +} + +.border-primary { + --ct-border-opacity: 1; + border-color: rgba(var(--ct-primary-rgb), var(--ct-border-opacity)) !important; +} + +.border-secondary { + --ct-border-opacity: 1; + border-color: rgba(var(--ct-secondary-rgb), var(--ct-border-opacity)) !important; +} + +.border-success { + --ct-border-opacity: 1; + border-color: rgba(var(--ct-success-rgb), var(--ct-border-opacity)) !important; +} + +.border-info { + --ct-border-opacity: 1; + border-color: rgba(var(--ct-info-rgb), var(--ct-border-opacity)) !important; +} + +.border-warning { + --ct-border-opacity: 1; + border-color: rgba(var(--ct-warning-rgb), var(--ct-border-opacity)) !important; +} + +.border-danger { + --ct-border-opacity: 1; + border-color: rgba(var(--ct-danger-rgb), var(--ct-border-opacity)) !important; +} + +.border-light { + --ct-border-opacity: 1; + border-color: rgba(var(--ct-light-rgb), var(--ct-border-opacity)) !important; +} + +.border-dark { + --ct-border-opacity: 1; + border-color: rgba(var(--ct-dark-rgb), var(--ct-border-opacity)) !important; +} + +.border-purple { + --ct-border-opacity: 1; + border-color: rgba(var(--ct-purple-rgb), var(--ct-border-opacity)) !important; +} + +.border-pink { + --ct-border-opacity: 1; + border-color: rgba(var(--ct-pink-rgb), var(--ct-border-opacity)) !important; +} + +.border-black { + --ct-border-opacity: 1; + border-color: rgba(var(--ct-black-rgb), var(--ct-border-opacity)) !important; +} + +.border-white { + --ct-border-opacity: 1; + border-color: rgba(var(--ct-white-rgb), var(--ct-border-opacity)) !important; +} + +.border-primary-subtle { + border-color: var(--ct-primary-border-subtle) !important; +} + +.border-secondary-subtle { + border-color: var(--ct-secondary-border-subtle) !important; +} + +.border-success-subtle { + border-color: var(--ct-success-border-subtle) !important; +} + +.border-info-subtle { + border-color: var(--ct-info-border-subtle) !important; +} + +.border-warning-subtle { + border-color: var(--ct-warning-border-subtle) !important; +} + +.border-danger-subtle { + border-color: var(--ct-danger-border-subtle) !important; +} + +.border-light-subtle { + border-color: var(--ct-light-border-subtle) !important; +} + +.border-dark-subtle { + border-color: var(--ct-dark-border-subtle) !important; +} + +.border-1 { + border-width: 1px !important; +} + +.border-2 { + border-width: 2px !important; +} + +.border-3 { + border-width: 3px !important; +} + +.border-4 { + border-width: 4px !important; +} + +.border-5 { + border-width: 5px !important; +} + +.border-opacity-10 { + --ct-border-opacity: 0.1; +} + +.border-opacity-25 { + --ct-border-opacity: 0.25; +} + +.border-opacity-50 { + --ct-border-opacity: 0.5; +} + +.border-opacity-75 { + --ct-border-opacity: 0.75; +} + +.border-opacity-100 { + --ct-border-opacity: 1; +} + +.w-25 { + width: 25% !important; +} + +.w-50 { + width: 50% !important; +} + +.w-75 { + width: 75% !important; +} + +.w-100 { + width: 100% !important; +} + +.w-auto { + width: auto !important; +} + +.mw-100 { + max-width: 100% !important; +} + +.vw-100 { + width: 100vw !important; +} + +.min-vw-100 { + min-width: 100vw !important; +} + +.h-25 { + height: 25% !important; +} + +.h-50 { + height: 50% !important; +} + +.h-75 { + height: 75% !important; +} + +.h-100 { + height: 100% !important; +} + +.h-auto { + height: auto !important; +} + +.mh-100 { + max-height: 100% !important; +} + +.vh-100 { + height: 100vh !important; +} + +.min-vh-100 { + min-height: 100vh !important; +} + +.flex-fill { + -webkit-box-flex: 1 !important; + -ms-flex: 1 1 auto !important; + flex: 1 1 auto !important; +} + +.flex-row { + -webkit-box-orient: horizontal !important; + -webkit-box-direction: normal !important; + -ms-flex-direction: row !important; + flex-direction: row !important; +} + +.flex-column { + -webkit-box-orient: vertical !important; + -webkit-box-direction: normal !important; + -ms-flex-direction: column !important; + flex-direction: column !important; +} + +.flex-row-reverse { + -webkit-box-orient: horizontal !important; + -webkit-box-direction: reverse !important; + -ms-flex-direction: row-reverse !important; + flex-direction: row-reverse !important; +} + +.flex-column-reverse { + -webkit-box-orient: vertical !important; + -webkit-box-direction: reverse !important; + -ms-flex-direction: column-reverse !important; + flex-direction: column-reverse !important; +} + +.flex-grow-0 { + -webkit-box-flex: 0 !important; + -ms-flex-positive: 0 !important; + flex-grow: 0 !important; +} + +.flex-grow-1 { + -webkit-box-flex: 1 !important; + -ms-flex-positive: 1 !important; + flex-grow: 1 !important; +} + +.flex-shrink-0 { + -ms-flex-negative: 0 !important; + flex-shrink: 0 !important; +} + +.flex-shrink-1 { + -ms-flex-negative: 1 !important; + flex-shrink: 1 !important; +} + +.flex-wrap { + -ms-flex-wrap: wrap !important; + flex-wrap: wrap !important; +} + +.flex-nowrap { + -ms-flex-wrap: nowrap !important; + flex-wrap: nowrap !important; +} + +.flex-wrap-reverse { + -ms-flex-wrap: wrap-reverse !important; + flex-wrap: wrap-reverse !important; +} + +.justify-content-start { + -webkit-box-pack: start !important; + -ms-flex-pack: start !important; + justify-content: flex-start !important; +} + +.justify-content-end { + -webkit-box-pack: end !important; + -ms-flex-pack: end !important; + justify-content: flex-end !important; +} + +.justify-content-center { + -webkit-box-pack: center !important; + -ms-flex-pack: center !important; + justify-content: center !important; +} + +.justify-content-between { + -webkit-box-pack: justify !important; + -ms-flex-pack: justify !important; + justify-content: space-between !important; +} + +.justify-content-around { + -ms-flex-pack: distribute !important; + justify-content: space-around !important; +} + +.justify-content-evenly { + -webkit-box-pack: space-evenly !important; + -ms-flex-pack: space-evenly !important; + justify-content: space-evenly !important; +} + +.align-items-start { + -webkit-box-align: start !important; + -ms-flex-align: start !important; + align-items: flex-start !important; +} + +.align-items-end { + -webkit-box-align: end !important; + -ms-flex-align: end !important; + align-items: flex-end !important; +} + +.align-items-center { + -webkit-box-align: center !important; + -ms-flex-align: center !important; + align-items: center !important; +} + +.align-items-baseline { + -webkit-box-align: baseline !important; + -ms-flex-align: baseline !important; + align-items: baseline !important; +} + +.align-items-stretch { + -webkit-box-align: stretch !important; + -ms-flex-align: stretch !important; + align-items: stretch !important; +} + +.align-content-start { + -ms-flex-line-pack: start !important; + align-content: flex-start !important; +} + +.align-content-end { + -ms-flex-line-pack: end !important; + align-content: flex-end !important; +} + +.align-content-center { + -ms-flex-line-pack: center !important; + align-content: center !important; +} + +.align-content-between { + -ms-flex-line-pack: justify !important; + align-content: space-between !important; +} + +.align-content-around { + -ms-flex-line-pack: distribute !important; + align-content: space-around !important; +} + +.align-content-stretch { + -ms-flex-line-pack: stretch !important; + align-content: stretch !important; +} + +.align-self-auto { + -ms-flex-item-align: auto !important; + align-self: auto !important; +} + +.align-self-start { + -ms-flex-item-align: start !important; + align-self: flex-start !important; +} + +.align-self-end { + -ms-flex-item-align: end !important; + align-self: flex-end !important; +} + +.align-self-center { + -ms-flex-item-align: center !important; + align-self: center !important; +} + +.align-self-baseline { + -ms-flex-item-align: baseline !important; + align-self: baseline !important; +} + +.align-self-stretch { + -ms-flex-item-align: stretch !important; + align-self: stretch !important; +} + +.order-first { + -webkit-box-ordinal-group: 0 !important; + -ms-flex-order: -1 !important; + order: -1 !important; +} + +.order-0 { + -webkit-box-ordinal-group: 1 !important; + -ms-flex-order: 0 !important; + order: 0 !important; +} + +.order-1 { + -webkit-box-ordinal-group: 2 !important; + -ms-flex-order: 1 !important; + order: 1 !important; +} + +.order-2 { + -webkit-box-ordinal-group: 3 !important; + -ms-flex-order: 2 !important; + order: 2 !important; +} + +.order-3 { + -webkit-box-ordinal-group: 4 !important; + -ms-flex-order: 3 !important; + order: 3 !important; +} + +.order-4 { + -webkit-box-ordinal-group: 5 !important; + -ms-flex-order: 4 !important; + order: 4 !important; +} + +.order-5 { + -webkit-box-ordinal-group: 6 !important; + -ms-flex-order: 5 !important; + order: 5 !important; +} + +.order-last { + -webkit-box-ordinal-group: 7 !important; + -ms-flex-order: 6 !important; + order: 6 !important; +} + +.m-0 { + margin: 0 !important; +} + +.m-1 { + margin: 0.3125rem !important; +} + +.m-2 { + margin: 0.625rem !important; +} + +.m-3 { + margin: 1.25rem !important; +} + +.m-4 { + margin: 1.875rem !important; +} + +.m-5 { + margin: 3.75rem !important; +} + +.m-auto { + margin: auto !important; +} + +.mx-0 { + margin-left: 0 !important; + margin-right: 0 !important; +} + +.mx-1 { + margin-left: 0.3125rem !important; + margin-right: 0.3125rem !important; +} + +.mx-2 { + margin-left: 0.625rem !important; + margin-right: 0.625rem !important; +} + +.mx-3 { + margin-left: 1.25rem !important; + margin-right: 1.25rem !important; +} + +.mx-4 { + margin-left: 1.875rem !important; + margin-right: 1.875rem !important; +} + +.mx-5 { + margin-left: 3.75rem !important; + margin-right: 3.75rem !important; +} + +.mx-auto { + margin-left: auto !important; + margin-right: auto !important; +} + +.my-0 { + margin-top: 0 !important; + margin-bottom: 0 !important; +} + +.my-1 { + margin-top: 0.3125rem !important; + margin-bottom: 0.3125rem !important; +} + +.my-2 { + margin-top: 0.625rem !important; + margin-bottom: 0.625rem !important; +} + +.my-3 { + margin-top: 1.25rem !important; + margin-bottom: 1.25rem !important; +} + +.my-4 { + margin-top: 1.875rem !important; + margin-bottom: 1.875rem !important; +} + +.my-5 { + margin-top: 3.75rem !important; + margin-bottom: 3.75rem !important; +} + +.my-auto { + margin-top: auto !important; + margin-bottom: auto !important; +} + +.mt-0 { + margin-top: 0 !important; +} + +.mt-1 { + margin-top: 0.3125rem !important; +} + +.mt-2 { + margin-top: 0.625rem !important; +} + +.mt-3 { + margin-top: 1.25rem !important; +} + +.mt-4 { + margin-top: 1.875rem !important; +} + +.mt-5 { + margin-top: 3.75rem !important; +} + +.mt-auto { + margin-top: auto !important; +} + +.me-0 { + margin-left: 0 !important; +} + +.me-1 { + margin-left: 0.3125rem !important; +} + +.me-2 { + margin-left: 0.625rem !important; +} + +.me-3 { + margin-left: 1.25rem !important; +} + +.me-4 { + margin-left: 1.875rem !important; +} + +.me-5 { + margin-left: 3.75rem !important; +} + +.me-auto { + margin-left: auto !important; +} + +.mb-0 { + margin-bottom: 0 !important; +} + +.mb-1 { + margin-bottom: 0.3125rem !important; +} + +.mb-2 { + margin-bottom: 0.625rem !important; +} + +.mb-3 { + margin-bottom: 1.25rem !important; +} + +.mb-4 { + margin-bottom: 1.875rem !important; +} + +.mb-5 { + margin-bottom: 3.75rem !important; +} + +.mb-auto { + margin-bottom: auto !important; +} + +.ms-0 { + margin-right: 0 !important; +} + +.ms-1 { + margin-right: 0.3125rem !important; +} + +.ms-2 { + margin-right: 0.625rem !important; +} + +.ms-3 { + margin-right: 1.25rem !important; +} + +.ms-4 { + margin-right: 1.875rem !important; +} + +.ms-5 { + margin-right: 3.75rem !important; +} + +.ms-auto { + margin-right: auto !important; +} + +.m-n1 { + margin: -0.3125rem !important; +} + +.m-n2 { + margin: -0.625rem !important; +} + +.m-n3 { + margin: -1.25rem !important; +} + +.m-n4 { + margin: -1.875rem !important; +} + +.m-n5 { + margin: -3.75rem !important; +} + +.mx-n1 { + margin-left: -0.3125rem !important; + margin-right: -0.3125rem !important; +} + +.mx-n2 { + margin-left: -0.625rem !important; + margin-right: -0.625rem !important; +} + +.mx-n3 { + margin-left: -1.25rem !important; + margin-right: -1.25rem !important; +} + +.mx-n4 { + margin-left: -1.875rem !important; + margin-right: -1.875rem !important; +} + +.mx-n5 { + margin-left: -3.75rem !important; + margin-right: -3.75rem !important; +} + +.my-n1 { + margin-top: -0.3125rem !important; + margin-bottom: -0.3125rem !important; +} + +.my-n2 { + margin-top: -0.625rem !important; + margin-bottom: -0.625rem !important; +} + +.my-n3 { + margin-top: -1.25rem !important; + margin-bottom: -1.25rem !important; +} + +.my-n4 { + margin-top: -1.875rem !important; + margin-bottom: -1.875rem !important; +} + +.my-n5 { + margin-top: -3.75rem !important; + margin-bottom: -3.75rem !important; +} + +.mt-n1 { + margin-top: -0.3125rem !important; +} + +.mt-n2 { + margin-top: -0.625rem !important; +} + +.mt-n3 { + margin-top: -1.25rem !important; +} + +.mt-n4 { + margin-top: -1.875rem !important; +} + +.mt-n5 { + margin-top: -3.75rem !important; +} + +.me-n1 { + margin-left: -0.3125rem !important; +} + +.me-n2 { + margin-left: -0.625rem !important; +} + +.me-n3 { + margin-left: -1.25rem !important; +} + +.me-n4 { + margin-left: -1.875rem !important; +} + +.me-n5 { + margin-left: -3.75rem !important; +} + +.mb-n1 { + margin-bottom: -0.3125rem !important; +} + +.mb-n2 { + margin-bottom: -0.625rem !important; +} + +.mb-n3 { + margin-bottom: -1.25rem !important; +} + +.mb-n4 { + margin-bottom: -1.875rem !important; +} + +.mb-n5 { + margin-bottom: -3.75rem !important; +} + +.ms-n1 { + margin-right: -0.3125rem !important; +} + +.ms-n2 { + margin-right: -0.625rem !important; +} + +.ms-n3 { + margin-right: -1.25rem !important; +} + +.ms-n4 { + margin-right: -1.875rem !important; +} + +.ms-n5 { + margin-right: -3.75rem !important; +} + +.p-0 { + padding: 0 !important; +} + +.p-1 { + padding: 0.3125rem !important; +} + +.p-2 { + padding: 0.625rem !important; +} + +.p-3 { + padding: 1.25rem !important; +} + +.p-4 { + padding: 1.875rem !important; +} + +.p-5 { + padding: 3.75rem !important; +} + +.px-0 { + padding-left: 0 !important; + padding-right: 0 !important; +} + +.px-1 { + padding-left: 0.3125rem !important; + padding-right: 0.3125rem !important; +} + +.px-2 { + padding-left: 0.625rem !important; + padding-right: 0.625rem !important; +} + +.px-3 { + padding-left: 1.25rem !important; + padding-right: 1.25rem !important; +} + +.px-4 { + padding-left: 1.875rem !important; + padding-right: 1.875rem !important; +} + +.px-5 { + padding-left: 3.75rem !important; + padding-right: 3.75rem !important; +} + +.py-0 { + padding-top: 0 !important; + padding-bottom: 0 !important; +} + +.py-1 { + padding-top: 0.3125rem !important; + padding-bottom: 0.3125rem !important; +} + +.py-2 { + padding-top: 0.625rem !important; + padding-bottom: 0.625rem !important; +} + +.py-3 { + padding-top: 1.25rem !important; + padding-bottom: 1.25rem !important; +} + +.py-4 { + padding-top: 1.875rem !important; + padding-bottom: 1.875rem !important; +} + +.py-5 { + padding-top: 3.75rem !important; + padding-bottom: 3.75rem !important; +} + +.pt-0 { + padding-top: 0 !important; +} + +.pt-1 { + padding-top: 0.3125rem !important; +} + +.pt-2 { + padding-top: 0.625rem !important; +} + +.pt-3 { + padding-top: 1.25rem !important; +} + +.pt-4 { + padding-top: 1.875rem !important; +} + +.pt-5 { + padding-top: 3.75rem !important; +} + +.pe-0 { + padding-left: 0 !important; +} + +.pe-1 { + padding-left: 0.3125rem !important; +} + +.pe-2 { + padding-left: 0.625rem !important; +} + +.pe-3 { + padding-left: 1.25rem !important; +} + +.pe-4 { + padding-left: 1.875rem !important; +} + +.pe-5 { + padding-left: 3.75rem !important; +} + +.pb-0 { + padding-bottom: 0 !important; +} + +.pb-1 { + padding-bottom: 0.3125rem !important; +} + +.pb-2 { + padding-bottom: 0.625rem !important; +} + +.pb-3 { + padding-bottom: 1.25rem !important; +} + +.pb-4 { + padding-bottom: 1.875rem !important; +} + +.pb-5 { + padding-bottom: 3.75rem !important; +} + +.ps-0 { + padding-right: 0 !important; +} + +.ps-1 { + padding-right: 0.3125rem !important; +} + +.ps-2 { + padding-right: 0.625rem !important; +} + +.ps-3 { + padding-right: 1.25rem !important; +} + +.ps-4 { + padding-right: 1.875rem !important; +} + +.ps-5 { + padding-right: 3.75rem !important; +} + +.gap-0 { + gap: 0 !important; +} + +.gap-1 { + gap: 0.3125rem !important; +} + +.gap-2 { + gap: 0.625rem !important; +} + +.gap-3 { + gap: 1.25rem !important; +} + +.gap-4 { + gap: 1.875rem !important; +} + +.gap-5 { + gap: 3.75rem !important; +} + +.row-gap-0 { + row-gap: 0 !important; +} + +.row-gap-1 { + row-gap: 0.3125rem !important; +} + +.row-gap-2 { + row-gap: 0.625rem !important; +} + +.row-gap-3 { + row-gap: 1.25rem !important; +} + +.row-gap-4 { + row-gap: 1.875rem !important; +} + +.row-gap-5 { + row-gap: 3.75rem !important; +} + +.column-gap-0 { + -webkit-column-gap: 0 !important; + -moz-column-gap: 0 !important; + column-gap: 0 !important; +} + +.column-gap-1 { + -webkit-column-gap: 0.3125rem !important; + -moz-column-gap: 0.3125rem !important; + column-gap: 0.3125rem !important; +} + +.column-gap-2 { + -webkit-column-gap: 0.625rem !important; + -moz-column-gap: 0.625rem !important; + column-gap: 0.625rem !important; +} + +.column-gap-3 { + -webkit-column-gap: 1.25rem !important; + -moz-column-gap: 1.25rem !important; + column-gap: 1.25rem !important; +} + +.column-gap-4 { + -webkit-column-gap: 1.875rem !important; + -moz-column-gap: 1.875rem !important; + column-gap: 1.875rem !important; +} + +.column-gap-5 { + -webkit-column-gap: 3.75rem !important; + -moz-column-gap: 3.75rem !important; + column-gap: 3.75rem !important; +} + +.font-monospace { + font-family: var(--ct-font-monospace) !important; +} + +.fs-1 { + font-size: calc(1.34375rem + 1.125vw) !important; +} + +.fs-2 { + font-size: calc(1.307rem + 0.684vw) !important; +} + +.fs-3 { + font-size: calc(1.271125rem + 0.2535vw) !important; +} + +.fs-4 { + font-size: 1.09375rem !important; +} + +.fs-5 { + font-size: 0.91rem !important; +} + +.fs-6 { + font-size: 0.74375rem !important; +} + +.fst-italic { + font-style: italic !important; +} + +.fst-normal { + font-style: normal !important; +} + +.fw-lighter { + font-weight: lighter !important; +} + +.fw-light { + font-weight: 300 !important; +} + +.fw-normal { + font-weight: 400 !important; +} + +.fw-medium { + font-weight: 500 !important; +} + +.fw-semibold { + font-weight: 600 !important; +} + +.fw-bold { + font-weight: 700 !important; +} + +.fw-bolder { + font-weight: bolder !important; +} + +.lh-1 { + line-height: 1 !important; +} + +.lh-sm { + line-height: 1.25 !important; +} + +.lh-base { + line-height: 1.5 !important; +} + +.lh-lg { + line-height: 2 !important; +} + +.text-start { + text-align: right !important; +} + +.text-end { + text-align: left !important; +} + +.text-center { + text-align: center !important; +} + +.text-decoration-none { + text-decoration: none !important; +} + +.text-decoration-underline { + text-decoration: underline !important; +} + +.text-decoration-line-through { + text-decoration: line-through !important; +} + +.text-lowercase { + text-transform: lowercase !important; +} + +.text-uppercase { + text-transform: uppercase !important; +} + +.text-capitalize { + text-transform: capitalize !important; +} + +.text-wrap { + white-space: normal !important; +} + +.text-nowrap { + white-space: nowrap !important; +} +.text-primary { + --ct-text-opacity: 1; + color: rgba(var(--ct-primary-rgb), var(--ct-text-opacity)) !important; +} + +.text-secondary { + --ct-text-opacity: 1; + color: rgba(var(--ct-secondary-rgb), var(--ct-text-opacity)) !important; +} + +.text-success { + --ct-text-opacity: 1; + color: rgba(var(--ct-success-rgb), var(--ct-text-opacity)) !important; +} + +.text-info { + --ct-text-opacity: 1; + color: rgba(var(--ct-info-rgb), var(--ct-text-opacity)) !important; +} + +.text-warning { + --ct-text-opacity: 1; + color: rgba(var(--ct-warning-rgb), var(--ct-text-opacity)) !important; +} + +.text-danger { + --ct-text-opacity: 1; + color: rgba(var(--ct-danger-rgb), var(--ct-text-opacity)) !important; +} + +.text-light { + --ct-text-opacity: 1; + color: rgba(var(--ct-light-rgb), var(--ct-text-opacity)) !important; +} + +.text-dark { + --ct-text-opacity: 1; + color: rgba(var(--ct-dark-rgb), var(--ct-text-opacity)) !important; +} + +.text-purple { + --ct-text-opacity: 1; + color: rgba(var(--ct-purple-rgb), var(--ct-text-opacity)) !important; +} + +.text-pink { + --ct-text-opacity: 1; + color: rgba(var(--ct-pink-rgb), var(--ct-text-opacity)) !important; +} + +.text-black { + --ct-text-opacity: 1; + color: rgba(var(--ct-black-rgb), var(--ct-text-opacity)) !important; +} + +.text-white { + --ct-text-opacity: 1; + color: rgba(var(--ct-white-rgb), var(--ct-text-opacity)) !important; +} + +.text-body { + --ct-text-opacity: 1; + color: rgba(var(--ct-body-color-rgb), var(--ct-text-opacity)) !important; +} + +.text-muted { + --ct-text-opacity: 1; + color: var(--ct-secondary-color) !important; +} + +.text-black-50 { + --ct-text-opacity: 1; + color: rgba(0, 0, 0, 0.5) !important; +} + +.text-white-50 { + --ct-text-opacity: 1; + color: rgba(255, 255, 255, 0.5) !important; +} + +.text-body-secondary { + --ct-text-opacity: 1; + color: var(--ct-secondary-color) !important; +} + +.text-body-tertiary { + --ct-text-opacity: 1; + color: var(--ct-tertiary-color) !important; +} + +.text-body-emphasis { + --ct-text-opacity: 1; + color: var(--ct-emphasis-color) !important; +} + +.text-reset { + --ct-text-opacity: 1; + color: inherit !important; +} + +.text-opacity-25 { + --ct-text-opacity: 0.25; +} + +.text-opacity-50 { + --ct-text-opacity: 0.5; +} + +.text-opacity-75 { + --ct-text-opacity: 0.75; +} + +.text-opacity-100 { + --ct-text-opacity: 1; +} + +.text-primary-emphasis { + color: var(--ct-primary-text-emphasis) !important; +} + +.text-secondary-emphasis { + color: var(--ct-secondary-text-emphasis) !important; +} + +.text-success-emphasis { + color: var(--ct-success-text-emphasis) !important; +} + +.text-info-emphasis { + color: var(--ct-info-text-emphasis) !important; +} + +.text-warning-emphasis { + color: var(--ct-warning-text-emphasis) !important; +} + +.text-danger-emphasis { + color: var(--ct-danger-text-emphasis) !important; +} + +.text-light-emphasis { + color: var(--ct-light-text-emphasis) !important; +} + +.text-dark-emphasis { + color: var(--ct-dark-text-emphasis) !important; +} + +.link-opacity-10 { + --ct-link-opacity: 0.1; +} + +.link-opacity-10-hover:hover { + --ct-link-opacity: 0.1; +} + +.link-opacity-25 { + --ct-link-opacity: 0.25; +} + +.link-opacity-25-hover:hover { + --ct-link-opacity: 0.25; +} + +.link-opacity-50 { + --ct-link-opacity: 0.5; +} + +.link-opacity-50-hover:hover { + --ct-link-opacity: 0.5; +} + +.link-opacity-75 { + --ct-link-opacity: 0.75; +} + +.link-opacity-75-hover:hover { + --ct-link-opacity: 0.75; +} + +.link-opacity-100 { + --ct-link-opacity: 1; +} + +.link-opacity-100-hover:hover { + --ct-link-opacity: 1; +} + +.link-offset-1 { + text-underline-offset: 0.125em !important; +} + +.link-offset-1-hover:hover { + text-underline-offset: 0.125em !important; +} + +.link-offset-2 { + text-underline-offset: 0.25em !important; +} + +.link-offset-2-hover:hover { + text-underline-offset: 0.25em !important; +} + +.link-offset-3 { + text-underline-offset: 0.375em !important; +} + +.link-offset-3-hover:hover { + text-underline-offset: 0.375em !important; +} + +.link-underline-primary { + --ct-link-underline-opacity: 1; + text-decoration-color: rgba(var(--ct-primary-rgb), var(--ct-link-underline-opacity)) !important; +} + +.link-underline-secondary { + --ct-link-underline-opacity: 1; + text-decoration-color: rgba(var(--ct-secondary-rgb), var(--ct-link-underline-opacity)) !important; +} + +.link-underline-success { + --ct-link-underline-opacity: 1; + text-decoration-color: rgba(var(--ct-success-rgb), var(--ct-link-underline-opacity)) !important; +} + +.link-underline-info { + --ct-link-underline-opacity: 1; + text-decoration-color: rgba(var(--ct-info-rgb), var(--ct-link-underline-opacity)) !important; +} + +.link-underline-warning { + --ct-link-underline-opacity: 1; + text-decoration-color: rgba(var(--ct-warning-rgb), var(--ct-link-underline-opacity)) !important; +} + +.link-underline-danger { + --ct-link-underline-opacity: 1; + text-decoration-color: rgba(var(--ct-danger-rgb), var(--ct-link-underline-opacity)) !important; +} + +.link-underline-light { + --ct-link-underline-opacity: 1; + text-decoration-color: rgba(var(--ct-light-rgb), var(--ct-link-underline-opacity)) !important; +} + +.link-underline-dark { + --ct-link-underline-opacity: 1; + text-decoration-color: rgba(var(--ct-dark-rgb), var(--ct-link-underline-opacity)) !important; +} + +.link-underline-purple { + --ct-link-underline-opacity: 1; + text-decoration-color: rgba(var(--ct-purple-rgb), var(--ct-link-underline-opacity)) !important; +} + +.link-underline-pink { + --ct-link-underline-opacity: 1; + text-decoration-color: rgba(var(--ct-pink-rgb), var(--ct-link-underline-opacity)) !important; +} + +.link-underline { + --ct-link-underline-opacity: 1; + text-decoration-color: rgba(var(--ct-link-color-rgb), var(--ct-link-underline-opacity, 1)) !important; +} + +.link-underline-opacity-0 { + --ct-link-underline-opacity: 0; +} + +.link-underline-opacity-0-hover:hover { + --ct-link-underline-opacity: 0; +} + +.link-underline-opacity-10 { + --ct-link-underline-opacity: 0.1; +} + +.link-underline-opacity-10-hover:hover { + --ct-link-underline-opacity: 0.1; +} + +.link-underline-opacity-25 { + --ct-link-underline-opacity: 0.25; +} + +.link-underline-opacity-25-hover:hover { + --ct-link-underline-opacity: 0.25; +} + +.link-underline-opacity-50 { + --ct-link-underline-opacity: 0.5; +} + +.link-underline-opacity-50-hover:hover { + --ct-link-underline-opacity: 0.5; +} + +.link-underline-opacity-75 { + --ct-link-underline-opacity: 0.75; +} + +.link-underline-opacity-75-hover:hover { + --ct-link-underline-opacity: 0.75; +} + +.link-underline-opacity-100 { + --ct-link-underline-opacity: 1; +} + +.link-underline-opacity-100-hover:hover { + --ct-link-underline-opacity: 1; +} + +.bg-primary { + --ct-bg-opacity: 1; + background-color: rgba(var(--ct-primary-rgb), var(--ct-bg-opacity)) !important; +} + +.bg-secondary { + --ct-bg-opacity: 1; + background-color: rgba(var(--ct-secondary-rgb), var(--ct-bg-opacity)) !important; +} + +.bg-success { + --ct-bg-opacity: 1; + background-color: rgba(var(--ct-success-rgb), var(--ct-bg-opacity)) !important; +} + +.bg-info { + --ct-bg-opacity: 1; + background-color: rgba(var(--ct-info-rgb), var(--ct-bg-opacity)) !important; +} + +.bg-warning { + --ct-bg-opacity: 1; + background-color: rgba(var(--ct-warning-rgb), var(--ct-bg-opacity)) !important; +} + +.bg-danger { + --ct-bg-opacity: 1; + background-color: rgba(var(--ct-danger-rgb), var(--ct-bg-opacity)) !important; +} + +.bg-light { + --ct-bg-opacity: 1; + background-color: rgba(var(--ct-light-rgb), var(--ct-bg-opacity)) !important; +} + +.bg-dark { + --ct-bg-opacity: 1; + background-color: rgba(var(--ct-dark-rgb), var(--ct-bg-opacity)) !important; +} + +.bg-purple { + --ct-bg-opacity: 1; + background-color: rgba(var(--ct-purple-rgb), var(--ct-bg-opacity)) !important; +} + +.bg-pink { + --ct-bg-opacity: 1; + background-color: rgba(var(--ct-pink-rgb), var(--ct-bg-opacity)) !important; +} + +.bg-black { + --ct-bg-opacity: 1; + background-color: rgba(var(--ct-black-rgb), var(--ct-bg-opacity)) !important; +} + +.bg-white { + --ct-bg-opacity: 1; + background-color: rgba(var(--ct-white-rgb), var(--ct-bg-opacity)) !important; +} + +.bg-body { + --ct-bg-opacity: 1; + background-color: rgba(var(--ct-body-bg-rgb), var(--ct-bg-opacity)) !important; +} + +.bg-transparent { + --ct-bg-opacity: 1; + background-color: transparent !important; +} + +.bg-body-secondary { + --ct-bg-opacity: 1; + background-color: rgba(var(--ct-secondary-bg-rgb), var(--ct-bg-opacity)) !important; +} + +.bg-body-tertiary { + --ct-bg-opacity: 1; + background-color: rgba(var(--ct-tertiary-bg-rgb), var(--ct-bg-opacity)) !important; +} + +.bg-opacity-10 { + --ct-bg-opacity: 0.1; +} + +.bg-opacity-25 { + --ct-bg-opacity: 0.25; +} + +.bg-opacity-50 { + --ct-bg-opacity: 0.5; +} + +.bg-opacity-75 { + --ct-bg-opacity: 0.75; +} + +.bg-opacity-100 { + --ct-bg-opacity: 1; +} + +.bg-primary-subtle { + background-color: var(--ct-primary-bg-subtle) !important; +} + +.bg-secondary-subtle { + background-color: var(--ct-secondary-bg-subtle) !important; +} + +.bg-success-subtle { + background-color: var(--ct-success-bg-subtle) !important; +} + +.bg-info-subtle { + background-color: var(--ct-info-bg-subtle) !important; +} + +.bg-warning-subtle { + background-color: var(--ct-warning-bg-subtle) !important; +} + +.bg-danger-subtle { + background-color: var(--ct-danger-bg-subtle) !important; +} + +.bg-light-subtle { + background-color: var(--ct-light-bg-subtle) !important; +} + +.bg-dark-subtle { + background-color: var(--ct-dark-bg-subtle) !important; +} + +.bg-gradient { + background-image: var(--ct-gradient) !important; +} + +.user-select-all { + -webkit-user-select: all !important; + -moz-user-select: all !important; + user-select: all !important; +} + +.user-select-auto { + -webkit-user-select: auto !important; + -moz-user-select: auto !important; + -ms-user-select: auto !important; + user-select: auto !important; +} + +.user-select-none { + -webkit-user-select: none !important; + -moz-user-select: none !important; + -ms-user-select: none !important; + user-select: none !important; +} + +.pe-none { + pointer-events: none !important; +} + +.pe-auto { + pointer-events: auto !important; +} + +.rounded { + border-radius: var(--ct-border-radius) !important; +} + +.rounded-0 { + border-radius: 0 !important; +} + +.rounded-1 { + border-radius: var(--ct-border-radius-sm) !important; +} + +.rounded-2 { + border-radius: var(--ct-border-radius) !important; +} + +.rounded-3 { + border-radius: var(--ct-border-radius-lg) !important; +} + +.rounded-4 { + border-radius: var(--ct-border-radius-xl) !important; +} + +.rounded-5 { + border-radius: var(--ct-border-radius-xxl) !important; +} + +.rounded-circle { + border-radius: 50% !important; +} + +.rounded-pill { + border-radius: var(--ct-border-radius-pill) !important; +} + +.rounded-top { + border-top-right-radius: var(--ct-border-radius) !important; + border-top-left-radius: var(--ct-border-radius) !important; +} + +.rounded-top-0 { + border-top-right-radius: 0 !important; + border-top-left-radius: 0 !important; +} + +.rounded-top-1 { + border-top-right-radius: var(--ct-border-radius-sm) !important; + border-top-left-radius: var(--ct-border-radius-sm) !important; +} + +.rounded-top-2 { + border-top-right-radius: var(--ct-border-radius) !important; + border-top-left-radius: var(--ct-border-radius) !important; +} + +.rounded-top-3 { + border-top-right-radius: var(--ct-border-radius-lg) !important; + border-top-left-radius: var(--ct-border-radius-lg) !important; +} + +.rounded-top-4 { + border-top-right-radius: var(--ct-border-radius-xl) !important; + border-top-left-radius: var(--ct-border-radius-xl) !important; +} + +.rounded-top-5 { + border-top-right-radius: var(--ct-border-radius-xxl) !important; + border-top-left-radius: var(--ct-border-radius-xxl) !important; +} + +.rounded-top-circle { + border-top-right-radius: 50% !important; + border-top-left-radius: 50% !important; +} + +.rounded-top-pill { + border-top-right-radius: var(--ct-border-radius-pill) !important; + border-top-left-radius: var(--ct-border-radius-pill) !important; +} + +.rounded-end { + border-top-left-radius: var(--ct-border-radius) !important; + border-bottom-left-radius: var(--ct-border-radius) !important; +} + +.rounded-end-0 { + border-top-left-radius: 0 !important; + border-bottom-left-radius: 0 !important; +} + +.rounded-end-1 { + border-top-left-radius: var(--ct-border-radius-sm) !important; + border-bottom-left-radius: var(--ct-border-radius-sm) !important; +} + +.rounded-end-2 { + border-top-left-radius: var(--ct-border-radius) !important; + border-bottom-left-radius: var(--ct-border-radius) !important; +} + +.rounded-end-3 { + border-top-left-radius: var(--ct-border-radius-lg) !important; + border-bottom-left-radius: var(--ct-border-radius-lg) !important; +} + +.rounded-end-4 { + border-top-left-radius: var(--ct-border-radius-xl) !important; + border-bottom-left-radius: var(--ct-border-radius-xl) !important; +} + +.rounded-end-5 { + border-top-left-radius: var(--ct-border-radius-xxl) !important; + border-bottom-left-radius: var(--ct-border-radius-xxl) !important; +} + +.rounded-end-circle { + border-top-left-radius: 50% !important; + border-bottom-left-radius: 50% !important; +} + +.rounded-end-pill { + border-top-left-radius: var(--ct-border-radius-pill) !important; + border-bottom-left-radius: var(--ct-border-radius-pill) !important; +} + +.rounded-bottom { + border-bottom-left-radius: var(--ct-border-radius) !important; + border-bottom-right-radius: var(--ct-border-radius) !important; +} + +.rounded-bottom-0 { + border-bottom-left-radius: 0 !important; + border-bottom-right-radius: 0 !important; +} + +.rounded-bottom-1 { + border-bottom-left-radius: var(--ct-border-radius-sm) !important; + border-bottom-right-radius: var(--ct-border-radius-sm) !important; +} + +.rounded-bottom-2 { + border-bottom-left-radius: var(--ct-border-radius) !important; + border-bottom-right-radius: var(--ct-border-radius) !important; +} + +.rounded-bottom-3 { + border-bottom-left-radius: var(--ct-border-radius-lg) !important; + border-bottom-right-radius: var(--ct-border-radius-lg) !important; +} + +.rounded-bottom-4 { + border-bottom-left-radius: var(--ct-border-radius-xl) !important; + border-bottom-right-radius: var(--ct-border-radius-xl) !important; +} + +.rounded-bottom-5 { + border-bottom-left-radius: var(--ct-border-radius-xxl) !important; + border-bottom-right-radius: var(--ct-border-radius-xxl) !important; +} + +.rounded-bottom-circle { + border-bottom-left-radius: 50% !important; + border-bottom-right-radius: 50% !important; +} + +.rounded-bottom-pill { + border-bottom-left-radius: var(--ct-border-radius-pill) !important; + border-bottom-right-radius: var(--ct-border-radius-pill) !important; +} + +.rounded-start { + border-bottom-right-radius: var(--ct-border-radius) !important; + border-top-right-radius: var(--ct-border-radius) !important; +} + +.rounded-start-0 { + border-bottom-right-radius: 0 !important; + border-top-right-radius: 0 !important; +} + +.rounded-start-1 { + border-bottom-right-radius: var(--ct-border-radius-sm) !important; + border-top-right-radius: var(--ct-border-radius-sm) !important; +} + +.rounded-start-2 { + border-bottom-right-radius: var(--ct-border-radius) !important; + border-top-right-radius: var(--ct-border-radius) !important; +} + +.rounded-start-3 { + border-bottom-right-radius: var(--ct-border-radius-lg) !important; + border-top-right-radius: var(--ct-border-radius-lg) !important; +} + +.rounded-start-4 { + border-bottom-right-radius: var(--ct-border-radius-xl) !important; + border-top-right-radius: var(--ct-border-radius-xl) !important; +} + +.rounded-start-5 { + border-bottom-right-radius: var(--ct-border-radius-xxl) !important; + border-top-right-radius: var(--ct-border-radius-xxl) !important; +} + +.rounded-start-circle { + border-bottom-right-radius: 50% !important; + border-top-right-radius: 50% !important; +} + +.rounded-start-pill { + border-bottom-right-radius: var(--ct-border-radius-pill) !important; + border-top-right-radius: var(--ct-border-radius-pill) !important; +} + +.visible { + visibility: visible !important; +} + +.invisible { + visibility: hidden !important; +} + +.z-n1 { + z-index: -1 !important; +} + +.z-0 { + z-index: 0 !important; +} + +.z-1 { + z-index: 1 !important; +} + +.z-2 { + z-index: 2 !important; +} + +.z-3 { + z-index: 3 !important; +} + +.fs-10 { + font-size: 10px !important; +} + +.fs-11 { + font-size: 11px !important; +} + +.fs-12 { + font-size: 12px !important; +} + +.fs-13 { + font-size: 13px !important; +} + +.fs-14 { + font-size: 14px !important; +} + +.fs-15 { + font-size: 15px !important; +} + +.fs-16 { + font-size: 16px !important; +} + +.fs-17 { + font-size: 17px !important; +} + +.fs-18 { + font-size: 18px !important; +} + +.fs-19 { + font-size: 19px !important; +} + +.fs-20 { + font-size: 20px !important; +} + +.fs-21 { + font-size: 21px !important; +} + +.fs-22 { + font-size: 22px !important; +} + +.fs-23 { + font-size: 23px !important; +} + +.fs-24 { + font-size: 24px !important; +} + +.fs-36 { + font-size: 36px !important; +} + +.fs-48 { + font-size: 48px !important; +} + +@media (min-width: 576px) { + .float-sm-start { + float: right !important; + } + .float-sm-end { + float: left !important; + } + .float-sm-none { + float: none !important; + } + .object-fit-sm-contain { + -o-object-fit: contain !important; + object-fit: contain !important; + } + .object-fit-sm-cover { + -o-object-fit: cover !important; + object-fit: cover !important; + } + .object-fit-sm-fill { + -o-object-fit: fill !important; + object-fit: fill !important; + } + .object-fit-sm-scale { + -o-object-fit: scale-down !important; + object-fit: scale-down !important; + } + .object-fit-sm-none { + -o-object-fit: none !important; + object-fit: none !important; + } + .d-sm-inline { + display: inline !important; + } + .d-sm-inline-block { + display: inline-block !important; + } + .d-sm-block { + display: block !important; + } + .d-sm-grid { + display: grid !important; + } + .d-sm-inline-grid { + display: inline-grid !important; + } + .d-sm-table { + display: table !important; + } + .d-sm-table-row { + display: table-row !important; + } + .d-sm-table-cell { + display: table-cell !important; + } + .d-sm-flex { + display: -webkit-box !important; + display: -ms-flexbox !important; + display: flex !important; + } + .d-sm-inline-flex { + display: -webkit-inline-box !important; + display: -ms-inline-flexbox !important; + display: inline-flex !important; + } + .d-sm-none { + display: none !important; + } + .flex-sm-fill { + -webkit-box-flex: 1 !important; + -ms-flex: 1 1 auto !important; + flex: 1 1 auto !important; + } + .flex-sm-row { + -webkit-box-orient: horizontal !important; + -webkit-box-direction: normal !important; + -ms-flex-direction: row !important; + flex-direction: row !important; + } + .flex-sm-column { + -webkit-box-orient: vertical !important; + -webkit-box-direction: normal !important; + -ms-flex-direction: column !important; + flex-direction: column !important; + } + .flex-sm-row-reverse { + -webkit-box-orient: horizontal !important; + -webkit-box-direction: reverse !important; + -ms-flex-direction: row-reverse !important; + flex-direction: row-reverse !important; + } + .flex-sm-column-reverse { + -webkit-box-orient: vertical !important; + -webkit-box-direction: reverse !important; + -ms-flex-direction: column-reverse !important; + flex-direction: column-reverse !important; + } + .flex-sm-grow-0 { + -webkit-box-flex: 0 !important; + -ms-flex-positive: 0 !important; + flex-grow: 0 !important; + } + .flex-sm-grow-1 { + -webkit-box-flex: 1 !important; + -ms-flex-positive: 1 !important; + flex-grow: 1 !important; + } + .flex-sm-shrink-0 { + -ms-flex-negative: 0 !important; + flex-shrink: 0 !important; + } + .flex-sm-shrink-1 { + -ms-flex-negative: 1 !important; + flex-shrink: 1 !important; + } + .flex-sm-wrap { + -ms-flex-wrap: wrap !important; + flex-wrap: wrap !important; + } + .flex-sm-nowrap { + -ms-flex-wrap: nowrap !important; + flex-wrap: nowrap !important; + } + .flex-sm-wrap-reverse { + -ms-flex-wrap: wrap-reverse !important; + flex-wrap: wrap-reverse !important; + } + .justify-content-sm-start { + -webkit-box-pack: start !important; + -ms-flex-pack: start !important; + justify-content: flex-start !important; + } + .justify-content-sm-end { + -webkit-box-pack: end !important; + -ms-flex-pack: end !important; + justify-content: flex-end !important; + } + .justify-content-sm-center { + -webkit-box-pack: center !important; + -ms-flex-pack: center !important; + justify-content: center !important; + } + .justify-content-sm-between { + -webkit-box-pack: justify !important; + -ms-flex-pack: justify !important; + justify-content: space-between !important; + } + .justify-content-sm-around { + -ms-flex-pack: distribute !important; + justify-content: space-around !important; + } + .justify-content-sm-evenly { + -webkit-box-pack: space-evenly !important; + -ms-flex-pack: space-evenly !important; + justify-content: space-evenly !important; + } + .align-items-sm-start { + -webkit-box-align: start !important; + -ms-flex-align: start !important; + align-items: flex-start !important; + } + .align-items-sm-end { + -webkit-box-align: end !important; + -ms-flex-align: end !important; + align-items: flex-end !important; + } + .align-items-sm-center { + -webkit-box-align: center !important; + -ms-flex-align: center !important; + align-items: center !important; + } + .align-items-sm-baseline { + -webkit-box-align: baseline !important; + -ms-flex-align: baseline !important; + align-items: baseline !important; + } + .align-items-sm-stretch { + -webkit-box-align: stretch !important; + -ms-flex-align: stretch !important; + align-items: stretch !important; + } + .align-content-sm-start { + -ms-flex-line-pack: start !important; + align-content: flex-start !important; + } + .align-content-sm-end { + -ms-flex-line-pack: end !important; + align-content: flex-end !important; + } + .align-content-sm-center { + -ms-flex-line-pack: center !important; + align-content: center !important; + } + .align-content-sm-between { + -ms-flex-line-pack: justify !important; + align-content: space-between !important; + } + .align-content-sm-around { + -ms-flex-line-pack: distribute !important; + align-content: space-around !important; + } + .align-content-sm-stretch { + -ms-flex-line-pack: stretch !important; + align-content: stretch !important; + } + .align-self-sm-auto { + -ms-flex-item-align: auto !important; + align-self: auto !important; + } + .align-self-sm-start { + -ms-flex-item-align: start !important; + align-self: flex-start !important; + } + .align-self-sm-end { + -ms-flex-item-align: end !important; + align-self: flex-end !important; + } + .align-self-sm-center { + -ms-flex-item-align: center !important; + align-self: center !important; + } + .align-self-sm-baseline { + -ms-flex-item-align: baseline !important; + align-self: baseline !important; + } + .align-self-sm-stretch { + -ms-flex-item-align: stretch !important; + align-self: stretch !important; + } + .order-sm-first { + -webkit-box-ordinal-group: 0 !important; + -ms-flex-order: -1 !important; + order: -1 !important; + } + .order-sm-0 { + -webkit-box-ordinal-group: 1 !important; + -ms-flex-order: 0 !important; + order: 0 !important; + } + .order-sm-1 { + -webkit-box-ordinal-group: 2 !important; + -ms-flex-order: 1 !important; + order: 1 !important; + } + .order-sm-2 { + -webkit-box-ordinal-group: 3 !important; + -ms-flex-order: 2 !important; + order: 2 !important; + } + .order-sm-3 { + -webkit-box-ordinal-group: 4 !important; + -ms-flex-order: 3 !important; + order: 3 !important; + } + .order-sm-4 { + -webkit-box-ordinal-group: 5 !important; + -ms-flex-order: 4 !important; + order: 4 !important; + } + .order-sm-5 { + -webkit-box-ordinal-group: 6 !important; + -ms-flex-order: 5 !important; + order: 5 !important; + } + .order-sm-last { + -webkit-box-ordinal-group: 7 !important; + -ms-flex-order: 6 !important; + order: 6 !important; + } + .m-sm-0 { + margin: 0 !important; + } + .m-sm-1 { + margin: 0.3125rem !important; + } + .m-sm-2 { + margin: 0.625rem !important; + } + .m-sm-3 { + margin: 1.25rem !important; + } + .m-sm-4 { + margin: 1.875rem !important; + } + .m-sm-5 { + margin: 3.75rem !important; + } + .m-sm-auto { + margin: auto !important; + } + .mx-sm-0 { + margin-left: 0 !important; + margin-right: 0 !important; + } + .mx-sm-1 { + margin-left: 0.3125rem !important; + margin-right: 0.3125rem !important; + } + .mx-sm-2 { + margin-left: 0.625rem !important; + margin-right: 0.625rem !important; + } + .mx-sm-3 { + margin-left: 1.25rem !important; + margin-right: 1.25rem !important; + } + .mx-sm-4 { + margin-left: 1.875rem !important; + margin-right: 1.875rem !important; + } + .mx-sm-5 { + margin-left: 3.75rem !important; + margin-right: 3.75rem !important; + } + .mx-sm-auto { + margin-left: auto !important; + margin-right: auto !important; + } + .my-sm-0 { + margin-top: 0 !important; + margin-bottom: 0 !important; + } + .my-sm-1 { + margin-top: 0.3125rem !important; + margin-bottom: 0.3125rem !important; + } + .my-sm-2 { + margin-top: 0.625rem !important; + margin-bottom: 0.625rem !important; + } + .my-sm-3 { + margin-top: 1.25rem !important; + margin-bottom: 1.25rem !important; + } + .my-sm-4 { + margin-top: 1.875rem !important; + margin-bottom: 1.875rem !important; + } + .my-sm-5 { + margin-top: 3.75rem !important; + margin-bottom: 3.75rem !important; + } + .my-sm-auto { + margin-top: auto !important; + margin-bottom: auto !important; + } + .mt-sm-0 { + margin-top: 0 !important; + } + .mt-sm-1 { + margin-top: 0.3125rem !important; + } + .mt-sm-2 { + margin-top: 0.625rem !important; + } + .mt-sm-3 { + margin-top: 1.25rem !important; + } + .mt-sm-4 { + margin-top: 1.875rem !important; + } + .mt-sm-5 { + margin-top: 3.75rem !important; + } + .mt-sm-auto { + margin-top: auto !important; + } + .me-sm-0 { + margin-left: 0 !important; + } + .me-sm-1 { + margin-left: 0.3125rem !important; + } + .me-sm-2 { + margin-left: 0.625rem !important; + } + .me-sm-3 { + margin-left: 1.25rem !important; + } + .me-sm-4 { + margin-left: 1.875rem !important; + } + .me-sm-5 { + margin-left: 3.75rem !important; + } + .me-sm-auto { + margin-left: auto !important; + } + .mb-sm-0 { + margin-bottom: 0 !important; + } + .mb-sm-1 { + margin-bottom: 0.3125rem !important; + } + .mb-sm-2 { + margin-bottom: 0.625rem !important; + } + .mb-sm-3 { + margin-bottom: 1.25rem !important; + } + .mb-sm-4 { + margin-bottom: 1.875rem !important; + } + .mb-sm-5 { + margin-bottom: 3.75rem !important; + } + .mb-sm-auto { + margin-bottom: auto !important; + } + .ms-sm-0 { + margin-right: 0 !important; + } + .ms-sm-1 { + margin-right: 0.3125rem !important; + } + .ms-sm-2 { + margin-right: 0.625rem !important; + } + .ms-sm-3 { + margin-right: 1.25rem !important; + } + .ms-sm-4 { + margin-right: 1.875rem !important; + } + .ms-sm-5 { + margin-right: 3.75rem !important; + } + .ms-sm-auto { + margin-right: auto !important; + } + .m-sm-n1 { + margin: -0.3125rem !important; + } + .m-sm-n2 { + margin: -0.625rem !important; + } + .m-sm-n3 { + margin: -1.25rem !important; + } + .m-sm-n4 { + margin: -1.875rem !important; + } + .m-sm-n5 { + margin: -3.75rem !important; + } + .mx-sm-n1 { + margin-left: -0.3125rem !important; + margin-right: -0.3125rem !important; + } + .mx-sm-n2 { + margin-left: -0.625rem !important; + margin-right: -0.625rem !important; + } + .mx-sm-n3 { + margin-left: -1.25rem !important; + margin-right: -1.25rem !important; + } + .mx-sm-n4 { + margin-left: -1.875rem !important; + margin-right: -1.875rem !important; + } + .mx-sm-n5 { + margin-left: -3.75rem !important; + margin-right: -3.75rem !important; + } + .my-sm-n1 { + margin-top: -0.3125rem !important; + margin-bottom: -0.3125rem !important; + } + .my-sm-n2 { + margin-top: -0.625rem !important; + margin-bottom: -0.625rem !important; + } + .my-sm-n3 { + margin-top: -1.25rem !important; + margin-bottom: -1.25rem !important; + } + .my-sm-n4 { + margin-top: -1.875rem !important; + margin-bottom: -1.875rem !important; + } + .my-sm-n5 { + margin-top: -3.75rem !important; + margin-bottom: -3.75rem !important; + } + .mt-sm-n1 { + margin-top: -0.3125rem !important; + } + .mt-sm-n2 { + margin-top: -0.625rem !important; + } + .mt-sm-n3 { + margin-top: -1.25rem !important; + } + .mt-sm-n4 { + margin-top: -1.875rem !important; + } + .mt-sm-n5 { + margin-top: -3.75rem !important; + } + .me-sm-n1 { + margin-left: -0.3125rem !important; + } + .me-sm-n2 { + margin-left: -0.625rem !important; + } + .me-sm-n3 { + margin-left: -1.25rem !important; + } + .me-sm-n4 { + margin-left: -1.875rem !important; + } + .me-sm-n5 { + margin-left: -3.75rem !important; + } + .mb-sm-n1 { + margin-bottom: -0.3125rem !important; + } + .mb-sm-n2 { + margin-bottom: -0.625rem !important; + } + .mb-sm-n3 { + margin-bottom: -1.25rem !important; + } + .mb-sm-n4 { + margin-bottom: -1.875rem !important; + } + .mb-sm-n5 { + margin-bottom: -3.75rem !important; + } + .ms-sm-n1 { + margin-right: -0.3125rem !important; + } + .ms-sm-n2 { + margin-right: -0.625rem !important; + } + .ms-sm-n3 { + margin-right: -1.25rem !important; + } + .ms-sm-n4 { + margin-right: -1.875rem !important; + } + .ms-sm-n5 { + margin-right: -3.75rem !important; + } + .p-sm-0 { + padding: 0 !important; + } + .p-sm-1 { + padding: 0.3125rem !important; + } + .p-sm-2 { + padding: 0.625rem !important; + } + .p-sm-3 { + padding: 1.25rem !important; + } + .p-sm-4 { + padding: 1.875rem !important; + } + .p-sm-5 { + padding: 3.75rem !important; + } + .px-sm-0 { + padding-left: 0 !important; + padding-right: 0 !important; + } + .px-sm-1 { + padding-left: 0.3125rem !important; + padding-right: 0.3125rem !important; + } + .px-sm-2 { + padding-left: 0.625rem !important; + padding-right: 0.625rem !important; + } + .px-sm-3 { + padding-left: 1.25rem !important; + padding-right: 1.25rem !important; + } + .px-sm-4 { + padding-left: 1.875rem !important; + padding-right: 1.875rem !important; + } + .px-sm-5 { + padding-left: 3.75rem !important; + padding-right: 3.75rem !important; + } + .py-sm-0 { + padding-top: 0 !important; + padding-bottom: 0 !important; + } + .py-sm-1 { + padding-top: 0.3125rem !important; + padding-bottom: 0.3125rem !important; + } + .py-sm-2 { + padding-top: 0.625rem !important; + padding-bottom: 0.625rem !important; + } + .py-sm-3 { + padding-top: 1.25rem !important; + padding-bottom: 1.25rem !important; + } + .py-sm-4 { + padding-top: 1.875rem !important; + padding-bottom: 1.875rem !important; + } + .py-sm-5 { + padding-top: 3.75rem !important; + padding-bottom: 3.75rem !important; + } + .pt-sm-0 { + padding-top: 0 !important; + } + .pt-sm-1 { + padding-top: 0.3125rem !important; + } + .pt-sm-2 { + padding-top: 0.625rem !important; + } + .pt-sm-3 { + padding-top: 1.25rem !important; + } + .pt-sm-4 { + padding-top: 1.875rem !important; + } + .pt-sm-5 { + padding-top: 3.75rem !important; + } + .pe-sm-0 { + padding-left: 0 !important; + } + .pe-sm-1 { + padding-left: 0.3125rem !important; + } + .pe-sm-2 { + padding-left: 0.625rem !important; + } + .pe-sm-3 { + padding-left: 1.25rem !important; + } + .pe-sm-4 { + padding-left: 1.875rem !important; + } + .pe-sm-5 { + padding-left: 3.75rem !important; + } + .pb-sm-0 { + padding-bottom: 0 !important; + } + .pb-sm-1 { + padding-bottom: 0.3125rem !important; + } + .pb-sm-2 { + padding-bottom: 0.625rem !important; + } + .pb-sm-3 { + padding-bottom: 1.25rem !important; + } + .pb-sm-4 { + padding-bottom: 1.875rem !important; + } + .pb-sm-5 { + padding-bottom: 3.75rem !important; + } + .ps-sm-0 { + padding-right: 0 !important; + } + .ps-sm-1 { + padding-right: 0.3125rem !important; + } + .ps-sm-2 { + padding-right: 0.625rem !important; + } + .ps-sm-3 { + padding-right: 1.25rem !important; + } + .ps-sm-4 { + padding-right: 1.875rem !important; + } + .ps-sm-5 { + padding-right: 3.75rem !important; + } + .gap-sm-0 { + gap: 0 !important; + } + .gap-sm-1 { + gap: 0.3125rem !important; + } + .gap-sm-2 { + gap: 0.625rem !important; + } + .gap-sm-3 { + gap: 1.25rem !important; + } + .gap-sm-4 { + gap: 1.875rem !important; + } + .gap-sm-5 { + gap: 3.75rem !important; + } + .row-gap-sm-0 { + row-gap: 0 !important; + } + .row-gap-sm-1 { + row-gap: 0.3125rem !important; + } + .row-gap-sm-2 { + row-gap: 0.625rem !important; + } + .row-gap-sm-3 { + row-gap: 1.25rem !important; + } + .row-gap-sm-4 { + row-gap: 1.875rem !important; + } + .row-gap-sm-5 { + row-gap: 3.75rem !important; + } + .column-gap-sm-0 { + -webkit-column-gap: 0 !important; + -moz-column-gap: 0 !important; + column-gap: 0 !important; + } + .column-gap-sm-1 { + -webkit-column-gap: 0.3125rem !important; + -moz-column-gap: 0.3125rem !important; + column-gap: 0.3125rem !important; + } + .column-gap-sm-2 { + -webkit-column-gap: 0.625rem !important; + -moz-column-gap: 0.625rem !important; + column-gap: 0.625rem !important; + } + .column-gap-sm-3 { + -webkit-column-gap: 1.25rem !important; + -moz-column-gap: 1.25rem !important; + column-gap: 1.25rem !important; + } + .column-gap-sm-4 { + -webkit-column-gap: 1.875rem !important; + -moz-column-gap: 1.875rem !important; + column-gap: 1.875rem !important; + } + .column-gap-sm-5 { + -webkit-column-gap: 3.75rem !important; + -moz-column-gap: 3.75rem !important; + column-gap: 3.75rem !important; + } + .text-sm-start { + text-align: right !important; + } + .text-sm-end { + text-align: left !important; + } + .text-sm-center { + text-align: center !important; + } +} +@media (min-width: 768px) { + .float-md-start { + float: right !important; + } + .float-md-end { + float: left !important; + } + .float-md-none { + float: none !important; + } + .object-fit-md-contain { + -o-object-fit: contain !important; + object-fit: contain !important; + } + .object-fit-md-cover { + -o-object-fit: cover !important; + object-fit: cover !important; + } + .object-fit-md-fill { + -o-object-fit: fill !important; + object-fit: fill !important; + } + .object-fit-md-scale { + -o-object-fit: scale-down !important; + object-fit: scale-down !important; + } + .object-fit-md-none { + -o-object-fit: none !important; + object-fit: none !important; + } + .d-md-inline { + display: inline !important; + } + .d-md-inline-block { + display: inline-block !important; + } + .d-md-block { + display: block !important; + } + .d-md-grid { + display: grid !important; + } + .d-md-inline-grid { + display: inline-grid !important; + } + .d-md-table { + display: table !important; + } + .d-md-table-row { + display: table-row !important; + } + .d-md-table-cell { + display: table-cell !important; + } + .d-md-flex { + display: -webkit-box !important; + display: -ms-flexbox !important; + display: flex !important; + } + .d-md-inline-flex { + display: -webkit-inline-box !important; + display: -ms-inline-flexbox !important; + display: inline-flex !important; + } + .d-md-none { + display: none !important; + } + .flex-md-fill { + -webkit-box-flex: 1 !important; + -ms-flex: 1 1 auto !important; + flex: 1 1 auto !important; + } + .flex-md-row { + -webkit-box-orient: horizontal !important; + -webkit-box-direction: normal !important; + -ms-flex-direction: row !important; + flex-direction: row !important; + } + .flex-md-column { + -webkit-box-orient: vertical !important; + -webkit-box-direction: normal !important; + -ms-flex-direction: column !important; + flex-direction: column !important; + } + .flex-md-row-reverse { + -webkit-box-orient: horizontal !important; + -webkit-box-direction: reverse !important; + -ms-flex-direction: row-reverse !important; + flex-direction: row-reverse !important; + } + .flex-md-column-reverse { + -webkit-box-orient: vertical !important; + -webkit-box-direction: reverse !important; + -ms-flex-direction: column-reverse !important; + flex-direction: column-reverse !important; + } + .flex-md-grow-0 { + -webkit-box-flex: 0 !important; + -ms-flex-positive: 0 !important; + flex-grow: 0 !important; + } + .flex-md-grow-1 { + -webkit-box-flex: 1 !important; + -ms-flex-positive: 1 !important; + flex-grow: 1 !important; + } + .flex-md-shrink-0 { + -ms-flex-negative: 0 !important; + flex-shrink: 0 !important; + } + .flex-md-shrink-1 { + -ms-flex-negative: 1 !important; + flex-shrink: 1 !important; + } + .flex-md-wrap { + -ms-flex-wrap: wrap !important; + flex-wrap: wrap !important; + } + .flex-md-nowrap { + -ms-flex-wrap: nowrap !important; + flex-wrap: nowrap !important; + } + .flex-md-wrap-reverse { + -ms-flex-wrap: wrap-reverse !important; + flex-wrap: wrap-reverse !important; + } + .justify-content-md-start { + -webkit-box-pack: start !important; + -ms-flex-pack: start !important; + justify-content: flex-start !important; + } + .justify-content-md-end { + -webkit-box-pack: end !important; + -ms-flex-pack: end !important; + justify-content: flex-end !important; + } + .justify-content-md-center { + -webkit-box-pack: center !important; + -ms-flex-pack: center !important; + justify-content: center !important; + } + .justify-content-md-between { + -webkit-box-pack: justify !important; + -ms-flex-pack: justify !important; + justify-content: space-between !important; + } + .justify-content-md-around { + -ms-flex-pack: distribute !important; + justify-content: space-around !important; + } + .justify-content-md-evenly { + -webkit-box-pack: space-evenly !important; + -ms-flex-pack: space-evenly !important; + justify-content: space-evenly !important; + } + .align-items-md-start { + -webkit-box-align: start !important; + -ms-flex-align: start !important; + align-items: flex-start !important; + } + .align-items-md-end { + -webkit-box-align: end !important; + -ms-flex-align: end !important; + align-items: flex-end !important; + } + .align-items-md-center { + -webkit-box-align: center !important; + -ms-flex-align: center !important; + align-items: center !important; + } + .align-items-md-baseline { + -webkit-box-align: baseline !important; + -ms-flex-align: baseline !important; + align-items: baseline !important; + } + .align-items-md-stretch { + -webkit-box-align: stretch !important; + -ms-flex-align: stretch !important; + align-items: stretch !important; + } + .align-content-md-start { + -ms-flex-line-pack: start !important; + align-content: flex-start !important; + } + .align-content-md-end { + -ms-flex-line-pack: end !important; + align-content: flex-end !important; + } + .align-content-md-center { + -ms-flex-line-pack: center !important; + align-content: center !important; + } + .align-content-md-between { + -ms-flex-line-pack: justify !important; + align-content: space-between !important; + } + .align-content-md-around { + -ms-flex-line-pack: distribute !important; + align-content: space-around !important; + } + .align-content-md-stretch { + -ms-flex-line-pack: stretch !important; + align-content: stretch !important; + } + .align-self-md-auto { + -ms-flex-item-align: auto !important; + align-self: auto !important; + } + .align-self-md-start { + -ms-flex-item-align: start !important; + align-self: flex-start !important; + } + .align-self-md-end { + -ms-flex-item-align: end !important; + align-self: flex-end !important; + } + .align-self-md-center { + -ms-flex-item-align: center !important; + align-self: center !important; + } + .align-self-md-baseline { + -ms-flex-item-align: baseline !important; + align-self: baseline !important; + } + .align-self-md-stretch { + -ms-flex-item-align: stretch !important; + align-self: stretch !important; + } + .order-md-first { + -webkit-box-ordinal-group: 0 !important; + -ms-flex-order: -1 !important; + order: -1 !important; + } + .order-md-0 { + -webkit-box-ordinal-group: 1 !important; + -ms-flex-order: 0 !important; + order: 0 !important; + } + .order-md-1 { + -webkit-box-ordinal-group: 2 !important; + -ms-flex-order: 1 !important; + order: 1 !important; + } + .order-md-2 { + -webkit-box-ordinal-group: 3 !important; + -ms-flex-order: 2 !important; + order: 2 !important; + } + .order-md-3 { + -webkit-box-ordinal-group: 4 !important; + -ms-flex-order: 3 !important; + order: 3 !important; + } + .order-md-4 { + -webkit-box-ordinal-group: 5 !important; + -ms-flex-order: 4 !important; + order: 4 !important; + } + .order-md-5 { + -webkit-box-ordinal-group: 6 !important; + -ms-flex-order: 5 !important; + order: 5 !important; + } + .order-md-last { + -webkit-box-ordinal-group: 7 !important; + -ms-flex-order: 6 !important; + order: 6 !important; + } + .m-md-0 { + margin: 0 !important; + } + .m-md-1 { + margin: 0.3125rem !important; + } + .m-md-2 { + margin: 0.625rem !important; + } + .m-md-3 { + margin: 1.25rem !important; + } + .m-md-4 { + margin: 1.875rem !important; + } + .m-md-5 { + margin: 3.75rem !important; + } + .m-md-auto { + margin: auto !important; + } + .mx-md-0 { + margin-left: 0 !important; + margin-right: 0 !important; + } + .mx-md-1 { + margin-left: 0.3125rem !important; + margin-right: 0.3125rem !important; + } + .mx-md-2 { + margin-left: 0.625rem !important; + margin-right: 0.625rem !important; + } + .mx-md-3 { + margin-left: 1.25rem !important; + margin-right: 1.25rem !important; + } + .mx-md-4 { + margin-left: 1.875rem !important; + margin-right: 1.875rem !important; + } + .mx-md-5 { + margin-left: 3.75rem !important; + margin-right: 3.75rem !important; + } + .mx-md-auto { + margin-left: auto !important; + margin-right: auto !important; + } + .my-md-0 { + margin-top: 0 !important; + margin-bottom: 0 !important; + } + .my-md-1 { + margin-top: 0.3125rem !important; + margin-bottom: 0.3125rem !important; + } + .my-md-2 { + margin-top: 0.625rem !important; + margin-bottom: 0.625rem !important; + } + .my-md-3 { + margin-top: 1.25rem !important; + margin-bottom: 1.25rem !important; + } + .my-md-4 { + margin-top: 1.875rem !important; + margin-bottom: 1.875rem !important; + } + .my-md-5 { + margin-top: 3.75rem !important; + margin-bottom: 3.75rem !important; + } + .my-md-auto { + margin-top: auto !important; + margin-bottom: auto !important; + } + .mt-md-0 { + margin-top: 0 !important; + } + .mt-md-1 { + margin-top: 0.3125rem !important; + } + .mt-md-2 { + margin-top: 0.625rem !important; + } + .mt-md-3 { + margin-top: 1.25rem !important; + } + .mt-md-4 { + margin-top: 1.875rem !important; + } + .mt-md-5 { + margin-top: 3.75rem !important; + } + .mt-md-auto { + margin-top: auto !important; + } + .me-md-0 { + margin-left: 0 !important; + } + .me-md-1 { + margin-left: 0.3125rem !important; + } + .me-md-2 { + margin-left: 0.625rem !important; + } + .me-md-3 { + margin-left: 1.25rem !important; + } + .me-md-4 { + margin-left: 1.875rem !important; + } + .me-md-5 { + margin-left: 3.75rem !important; + } + .me-md-auto { + margin-left: auto !important; + } + .mb-md-0 { + margin-bottom: 0 !important; + } + .mb-md-1 { + margin-bottom: 0.3125rem !important; + } + .mb-md-2 { + margin-bottom: 0.625rem !important; + } + .mb-md-3 { + margin-bottom: 1.25rem !important; + } + .mb-md-4 { + margin-bottom: 1.875rem !important; + } + .mb-md-5 { + margin-bottom: 3.75rem !important; + } + .mb-md-auto { + margin-bottom: auto !important; + } + .ms-md-0 { + margin-right: 0 !important; + } + .ms-md-1 { + margin-right: 0.3125rem !important; + } + .ms-md-2 { + margin-right: 0.625rem !important; + } + .ms-md-3 { + margin-right: 1.25rem !important; + } + .ms-md-4 { + margin-right: 1.875rem !important; + } + .ms-md-5 { + margin-right: 3.75rem !important; + } + .ms-md-auto { + margin-right: auto !important; + } + .m-md-n1 { + margin: -0.3125rem !important; + } + .m-md-n2 { + margin: -0.625rem !important; + } + .m-md-n3 { + margin: -1.25rem !important; + } + .m-md-n4 { + margin: -1.875rem !important; + } + .m-md-n5 { + margin: -3.75rem !important; + } + .mx-md-n1 { + margin-left: -0.3125rem !important; + margin-right: -0.3125rem !important; + } + .mx-md-n2 { + margin-left: -0.625rem !important; + margin-right: -0.625rem !important; + } + .mx-md-n3 { + margin-left: -1.25rem !important; + margin-right: -1.25rem !important; + } + .mx-md-n4 { + margin-left: -1.875rem !important; + margin-right: -1.875rem !important; + } + .mx-md-n5 { + margin-left: -3.75rem !important; + margin-right: -3.75rem !important; + } + .my-md-n1 { + margin-top: -0.3125rem !important; + margin-bottom: -0.3125rem !important; + } + .my-md-n2 { + margin-top: -0.625rem !important; + margin-bottom: -0.625rem !important; + } + .my-md-n3 { + margin-top: -1.25rem !important; + margin-bottom: -1.25rem !important; + } + .my-md-n4 { + margin-top: -1.875rem !important; + margin-bottom: -1.875rem !important; + } + .my-md-n5 { + margin-top: -3.75rem !important; + margin-bottom: -3.75rem !important; + } + .mt-md-n1 { + margin-top: -0.3125rem !important; + } + .mt-md-n2 { + margin-top: -0.625rem !important; + } + .mt-md-n3 { + margin-top: -1.25rem !important; + } + .mt-md-n4 { + margin-top: -1.875rem !important; + } + .mt-md-n5 { + margin-top: -3.75rem !important; + } + .me-md-n1 { + margin-left: -0.3125rem !important; + } + .me-md-n2 { + margin-left: -0.625rem !important; + } + .me-md-n3 { + margin-left: -1.25rem !important; + } + .me-md-n4 { + margin-left: -1.875rem !important; + } + .me-md-n5 { + margin-left: -3.75rem !important; + } + .mb-md-n1 { + margin-bottom: -0.3125rem !important; + } + .mb-md-n2 { + margin-bottom: -0.625rem !important; + } + .mb-md-n3 { + margin-bottom: -1.25rem !important; + } + .mb-md-n4 { + margin-bottom: -1.875rem !important; + } + .mb-md-n5 { + margin-bottom: -3.75rem !important; + } + .ms-md-n1 { + margin-right: -0.3125rem !important; + } + .ms-md-n2 { + margin-right: -0.625rem !important; + } + .ms-md-n3 { + margin-right: -1.25rem !important; + } + .ms-md-n4 { + margin-right: -1.875rem !important; + } + .ms-md-n5 { + margin-right: -3.75rem !important; + } + .p-md-0 { + padding: 0 !important; + } + .p-md-1 { + padding: 0.3125rem !important; + } + .p-md-2 { + padding: 0.625rem !important; + } + .p-md-3 { + padding: 1.25rem !important; + } + .p-md-4 { + padding: 1.875rem !important; + } + .p-md-5 { + padding: 3.75rem !important; + } + .px-md-0 { + padding-left: 0 !important; + padding-right: 0 !important; + } + .px-md-1 { + padding-left: 0.3125rem !important; + padding-right: 0.3125rem !important; + } + .px-md-2 { + padding-left: 0.625rem !important; + padding-right: 0.625rem !important; + } + .px-md-3 { + padding-left: 1.25rem !important; + padding-right: 1.25rem !important; + } + .px-md-4 { + padding-left: 1.875rem !important; + padding-right: 1.875rem !important; + } + .px-md-5 { + padding-left: 3.75rem !important; + padding-right: 3.75rem !important; + } + .py-md-0 { + padding-top: 0 !important; + padding-bottom: 0 !important; + } + .py-md-1 { + padding-top: 0.3125rem !important; + padding-bottom: 0.3125rem !important; + } + .py-md-2 { + padding-top: 0.625rem !important; + padding-bottom: 0.625rem !important; + } + .py-md-3 { + padding-top: 1.25rem !important; + padding-bottom: 1.25rem !important; + } + .py-md-4 { + padding-top: 1.875rem !important; + padding-bottom: 1.875rem !important; + } + .py-md-5 { + padding-top: 3.75rem !important; + padding-bottom: 3.75rem !important; + } + .pt-md-0 { + padding-top: 0 !important; + } + .pt-md-1 { + padding-top: 0.3125rem !important; + } + .pt-md-2 { + padding-top: 0.625rem !important; + } + .pt-md-3 { + padding-top: 1.25rem !important; + } + .pt-md-4 { + padding-top: 1.875rem !important; + } + .pt-md-5 { + padding-top: 3.75rem !important; + } + .pe-md-0 { + padding-left: 0 !important; + } + .pe-md-1 { + padding-left: 0.3125rem !important; + } + .pe-md-2 { + padding-left: 0.625rem !important; + } + .pe-md-3 { + padding-left: 1.25rem !important; + } + .pe-md-4 { + padding-left: 1.875rem !important; + } + .pe-md-5 { + padding-left: 3.75rem !important; + } + .pb-md-0 { + padding-bottom: 0 !important; + } + .pb-md-1 { + padding-bottom: 0.3125rem !important; + } + .pb-md-2 { + padding-bottom: 0.625rem !important; + } + .pb-md-3 { + padding-bottom: 1.25rem !important; + } + .pb-md-4 { + padding-bottom: 1.875rem !important; + } + .pb-md-5 { + padding-bottom: 3.75rem !important; + } + .ps-md-0 { + padding-right: 0 !important; + } + .ps-md-1 { + padding-right: 0.3125rem !important; + } + .ps-md-2 { + padding-right: 0.625rem !important; + } + .ps-md-3 { + padding-right: 1.25rem !important; + } + .ps-md-4 { + padding-right: 1.875rem !important; + } + .ps-md-5 { + padding-right: 3.75rem !important; + } + .gap-md-0 { + gap: 0 !important; + } + .gap-md-1 { + gap: 0.3125rem !important; + } + .gap-md-2 { + gap: 0.625rem !important; + } + .gap-md-3 { + gap: 1.25rem !important; + } + .gap-md-4 { + gap: 1.875rem !important; + } + .gap-md-5 { + gap: 3.75rem !important; + } + .row-gap-md-0 { + row-gap: 0 !important; + } + .row-gap-md-1 { + row-gap: 0.3125rem !important; + } + .row-gap-md-2 { + row-gap: 0.625rem !important; + } + .row-gap-md-3 { + row-gap: 1.25rem !important; + } + .row-gap-md-4 { + row-gap: 1.875rem !important; + } + .row-gap-md-5 { + row-gap: 3.75rem !important; + } + .column-gap-md-0 { + -webkit-column-gap: 0 !important; + -moz-column-gap: 0 !important; + column-gap: 0 !important; + } + .column-gap-md-1 { + -webkit-column-gap: 0.3125rem !important; + -moz-column-gap: 0.3125rem !important; + column-gap: 0.3125rem !important; + } + .column-gap-md-2 { + -webkit-column-gap: 0.625rem !important; + -moz-column-gap: 0.625rem !important; + column-gap: 0.625rem !important; + } + .column-gap-md-3 { + -webkit-column-gap: 1.25rem !important; + -moz-column-gap: 1.25rem !important; + column-gap: 1.25rem !important; + } + .column-gap-md-4 { + -webkit-column-gap: 1.875rem !important; + -moz-column-gap: 1.875rem !important; + column-gap: 1.875rem !important; + } + .column-gap-md-5 { + -webkit-column-gap: 3.75rem !important; + -moz-column-gap: 3.75rem !important; + column-gap: 3.75rem !important; + } + .text-md-start { + text-align: right !important; + } + .text-md-end { + text-align: left !important; + } + .text-md-center { + text-align: center !important; + } +} +@media (min-width: 992px) { + .float-lg-start { + float: right !important; + } + .float-lg-end { + float: left !important; + } + .float-lg-none { + float: none !important; + } + .object-fit-lg-contain { + -o-object-fit: contain !important; + object-fit: contain !important; + } + .object-fit-lg-cover { + -o-object-fit: cover !important; + object-fit: cover !important; + } + .object-fit-lg-fill { + -o-object-fit: fill !important; + object-fit: fill !important; + } + .object-fit-lg-scale { + -o-object-fit: scale-down !important; + object-fit: scale-down !important; + } + .object-fit-lg-none { + -o-object-fit: none !important; + object-fit: none !important; + } + .d-lg-inline { + display: inline !important; + } + .d-lg-inline-block { + display: inline-block !important; + } + .d-lg-block { + display: block !important; + } + .d-lg-grid { + display: grid !important; + } + .d-lg-inline-grid { + display: inline-grid !important; + } + .d-lg-table { + display: table !important; + } + .d-lg-table-row { + display: table-row !important; + } + .d-lg-table-cell { + display: table-cell !important; + } + .d-lg-flex { + display: -webkit-box !important; + display: -ms-flexbox !important; + display: flex !important; + } + .d-lg-inline-flex { + display: -webkit-inline-box !important; + display: -ms-inline-flexbox !important; + display: inline-flex !important; + } + .d-lg-none { + display: none !important; + } + .flex-lg-fill { + -webkit-box-flex: 1 !important; + -ms-flex: 1 1 auto !important; + flex: 1 1 auto !important; + } + .flex-lg-row { + -webkit-box-orient: horizontal !important; + -webkit-box-direction: normal !important; + -ms-flex-direction: row !important; + flex-direction: row !important; + } + .flex-lg-column { + -webkit-box-orient: vertical !important; + -webkit-box-direction: normal !important; + -ms-flex-direction: column !important; + flex-direction: column !important; + } + .flex-lg-row-reverse { + -webkit-box-orient: horizontal !important; + -webkit-box-direction: reverse !important; + -ms-flex-direction: row-reverse !important; + flex-direction: row-reverse !important; + } + .flex-lg-column-reverse { + -webkit-box-orient: vertical !important; + -webkit-box-direction: reverse !important; + -ms-flex-direction: column-reverse !important; + flex-direction: column-reverse !important; + } + .flex-lg-grow-0 { + -webkit-box-flex: 0 !important; + -ms-flex-positive: 0 !important; + flex-grow: 0 !important; + } + .flex-lg-grow-1 { + -webkit-box-flex: 1 !important; + -ms-flex-positive: 1 !important; + flex-grow: 1 !important; + } + .flex-lg-shrink-0 { + -ms-flex-negative: 0 !important; + flex-shrink: 0 !important; + } + .flex-lg-shrink-1 { + -ms-flex-negative: 1 !important; + flex-shrink: 1 !important; + } + .flex-lg-wrap { + -ms-flex-wrap: wrap !important; + flex-wrap: wrap !important; + } + .flex-lg-nowrap { + -ms-flex-wrap: nowrap !important; + flex-wrap: nowrap !important; + } + .flex-lg-wrap-reverse { + -ms-flex-wrap: wrap-reverse !important; + flex-wrap: wrap-reverse !important; + } + .justify-content-lg-start { + -webkit-box-pack: start !important; + -ms-flex-pack: start !important; + justify-content: flex-start !important; + } + .justify-content-lg-end { + -webkit-box-pack: end !important; + -ms-flex-pack: end !important; + justify-content: flex-end !important; + } + .justify-content-lg-center { + -webkit-box-pack: center !important; + -ms-flex-pack: center !important; + justify-content: center !important; + } + .justify-content-lg-between { + -webkit-box-pack: justify !important; + -ms-flex-pack: justify !important; + justify-content: space-between !important; + } + .justify-content-lg-around { + -ms-flex-pack: distribute !important; + justify-content: space-around !important; + } + .justify-content-lg-evenly { + -webkit-box-pack: space-evenly !important; + -ms-flex-pack: space-evenly !important; + justify-content: space-evenly !important; + } + .align-items-lg-start { + -webkit-box-align: start !important; + -ms-flex-align: start !important; + align-items: flex-start !important; + } + .align-items-lg-end { + -webkit-box-align: end !important; + -ms-flex-align: end !important; + align-items: flex-end !important; + } + .align-items-lg-center { + -webkit-box-align: center !important; + -ms-flex-align: center !important; + align-items: center !important; + } + .align-items-lg-baseline { + -webkit-box-align: baseline !important; + -ms-flex-align: baseline !important; + align-items: baseline !important; + } + .align-items-lg-stretch { + -webkit-box-align: stretch !important; + -ms-flex-align: stretch !important; + align-items: stretch !important; + } + .align-content-lg-start { + -ms-flex-line-pack: start !important; + align-content: flex-start !important; + } + .align-content-lg-end { + -ms-flex-line-pack: end !important; + align-content: flex-end !important; + } + .align-content-lg-center { + -ms-flex-line-pack: center !important; + align-content: center !important; + } + .align-content-lg-between { + -ms-flex-line-pack: justify !important; + align-content: space-between !important; + } + .align-content-lg-around { + -ms-flex-line-pack: distribute !important; + align-content: space-around !important; + } + .align-content-lg-stretch { + -ms-flex-line-pack: stretch !important; + align-content: stretch !important; + } + .align-self-lg-auto { + -ms-flex-item-align: auto !important; + align-self: auto !important; + } + .align-self-lg-start { + -ms-flex-item-align: start !important; + align-self: flex-start !important; + } + .align-self-lg-end { + -ms-flex-item-align: end !important; + align-self: flex-end !important; + } + .align-self-lg-center { + -ms-flex-item-align: center !important; + align-self: center !important; + } + .align-self-lg-baseline { + -ms-flex-item-align: baseline !important; + align-self: baseline !important; + } + .align-self-lg-stretch { + -ms-flex-item-align: stretch !important; + align-self: stretch !important; + } + .order-lg-first { + -webkit-box-ordinal-group: 0 !important; + -ms-flex-order: -1 !important; + order: -1 !important; + } + .order-lg-0 { + -webkit-box-ordinal-group: 1 !important; + -ms-flex-order: 0 !important; + order: 0 !important; + } + .order-lg-1 { + -webkit-box-ordinal-group: 2 !important; + -ms-flex-order: 1 !important; + order: 1 !important; + } + .order-lg-2 { + -webkit-box-ordinal-group: 3 !important; + -ms-flex-order: 2 !important; + order: 2 !important; + } + .order-lg-3 { + -webkit-box-ordinal-group: 4 !important; + -ms-flex-order: 3 !important; + order: 3 !important; + } + .order-lg-4 { + -webkit-box-ordinal-group: 5 !important; + -ms-flex-order: 4 !important; + order: 4 !important; + } + .order-lg-5 { + -webkit-box-ordinal-group: 6 !important; + -ms-flex-order: 5 !important; + order: 5 !important; + } + .order-lg-last { + -webkit-box-ordinal-group: 7 !important; + -ms-flex-order: 6 !important; + order: 6 !important; + } + .m-lg-0 { + margin: 0 !important; + } + .m-lg-1 { + margin: 0.3125rem !important; + } + .m-lg-2 { + margin: 0.625rem !important; + } + .m-lg-3 { + margin: 1.25rem !important; + } + .m-lg-4 { + margin: 1.875rem !important; + } + .m-lg-5 { + margin: 3.75rem !important; + } + .m-lg-auto { + margin: auto !important; + } + .mx-lg-0 { + margin-left: 0 !important; + margin-right: 0 !important; + } + .mx-lg-1 { + margin-left: 0.3125rem !important; + margin-right: 0.3125rem !important; + } + .mx-lg-2 { + margin-left: 0.625rem !important; + margin-right: 0.625rem !important; + } + .mx-lg-3 { + margin-left: 1.25rem !important; + margin-right: 1.25rem !important; + } + .mx-lg-4 { + margin-left: 1.875rem !important; + margin-right: 1.875rem !important; + } + .mx-lg-5 { + margin-left: 3.75rem !important; + margin-right: 3.75rem !important; + } + .mx-lg-auto { + margin-left: auto !important; + margin-right: auto !important; + } + .my-lg-0 { + margin-top: 0 !important; + margin-bottom: 0 !important; + } + .my-lg-1 { + margin-top: 0.3125rem !important; + margin-bottom: 0.3125rem !important; + } + .my-lg-2 { + margin-top: 0.625rem !important; + margin-bottom: 0.625rem !important; + } + .my-lg-3 { + margin-top: 1.25rem !important; + margin-bottom: 1.25rem !important; + } + .my-lg-4 { + margin-top: 1.875rem !important; + margin-bottom: 1.875rem !important; + } + .my-lg-5 { + margin-top: 3.75rem !important; + margin-bottom: 3.75rem !important; + } + .my-lg-auto { + margin-top: auto !important; + margin-bottom: auto !important; + } + .mt-lg-0 { + margin-top: 0 !important; + } + .mt-lg-1 { + margin-top: 0.3125rem !important; + } + .mt-lg-2 { + margin-top: 0.625rem !important; + } + .mt-lg-3 { + margin-top: 1.25rem !important; + } + .mt-lg-4 { + margin-top: 1.875rem !important; + } + .mt-lg-5 { + margin-top: 3.75rem !important; + } + .mt-lg-auto { + margin-top: auto !important; + } + .me-lg-0 { + margin-left: 0 !important; + } + .me-lg-1 { + margin-left: 0.3125rem !important; + } + .me-lg-2 { + margin-left: 0.625rem !important; + } + .me-lg-3 { + margin-left: 1.25rem !important; + } + .me-lg-4 { + margin-left: 1.875rem !important; + } + .me-lg-5 { + margin-left: 3.75rem !important; + } + .me-lg-auto { + margin-left: auto !important; + } + .mb-lg-0 { + margin-bottom: 0 !important; + } + .mb-lg-1 { + margin-bottom: 0.3125rem !important; + } + .mb-lg-2 { + margin-bottom: 0.625rem !important; + } + .mb-lg-3 { + margin-bottom: 1.25rem !important; + } + .mb-lg-4 { + margin-bottom: 1.875rem !important; + } + .mb-lg-5 { + margin-bottom: 3.75rem !important; + } + .mb-lg-auto { + margin-bottom: auto !important; + } + .ms-lg-0 { + margin-right: 0 !important; + } + .ms-lg-1 { + margin-right: 0.3125rem !important; + } + .ms-lg-2 { + margin-right: 0.625rem !important; + } + .ms-lg-3 { + margin-right: 1.25rem !important; + } + .ms-lg-4 { + margin-right: 1.875rem !important; + } + .ms-lg-5 { + margin-right: 3.75rem !important; + } + .ms-lg-auto { + margin-right: auto !important; + } + .m-lg-n1 { + margin: -0.3125rem !important; + } + .m-lg-n2 { + margin: -0.625rem !important; + } + .m-lg-n3 { + margin: -1.25rem !important; + } + .m-lg-n4 { + margin: -1.875rem !important; + } + .m-lg-n5 { + margin: -3.75rem !important; + } + .mx-lg-n1 { + margin-left: -0.3125rem !important; + margin-right: -0.3125rem !important; + } + .mx-lg-n2 { + margin-left: -0.625rem !important; + margin-right: -0.625rem !important; + } + .mx-lg-n3 { + margin-left: -1.25rem !important; + margin-right: -1.25rem !important; + } + .mx-lg-n4 { + margin-left: -1.875rem !important; + margin-right: -1.875rem !important; + } + .mx-lg-n5 { + margin-left: -3.75rem !important; + margin-right: -3.75rem !important; + } + .my-lg-n1 { + margin-top: -0.3125rem !important; + margin-bottom: -0.3125rem !important; + } + .my-lg-n2 { + margin-top: -0.625rem !important; + margin-bottom: -0.625rem !important; + } + .my-lg-n3 { + margin-top: -1.25rem !important; + margin-bottom: -1.25rem !important; + } + .my-lg-n4 { + margin-top: -1.875rem !important; + margin-bottom: -1.875rem !important; + } + .my-lg-n5 { + margin-top: -3.75rem !important; + margin-bottom: -3.75rem !important; + } + .mt-lg-n1 { + margin-top: -0.3125rem !important; + } + .mt-lg-n2 { + margin-top: -0.625rem !important; + } + .mt-lg-n3 { + margin-top: -1.25rem !important; + } + .mt-lg-n4 { + margin-top: -1.875rem !important; + } + .mt-lg-n5 { + margin-top: -3.75rem !important; + } + .me-lg-n1 { + margin-left: -0.3125rem !important; + } + .me-lg-n2 { + margin-left: -0.625rem !important; + } + .me-lg-n3 { + margin-left: -1.25rem !important; + } + .me-lg-n4 { + margin-left: -1.875rem !important; + } + .me-lg-n5 { + margin-left: -3.75rem !important; + } + .mb-lg-n1 { + margin-bottom: -0.3125rem !important; + } + .mb-lg-n2 { + margin-bottom: -0.625rem !important; + } + .mb-lg-n3 { + margin-bottom: -1.25rem !important; + } + .mb-lg-n4 { + margin-bottom: -1.875rem !important; + } + .mb-lg-n5 { + margin-bottom: -3.75rem !important; + } + .ms-lg-n1 { + margin-right: -0.3125rem !important; + } + .ms-lg-n2 { + margin-right: -0.625rem !important; + } + .ms-lg-n3 { + margin-right: -1.25rem !important; + } + .ms-lg-n4 { + margin-right: -1.875rem !important; + } + .ms-lg-n5 { + margin-right: -3.75rem !important; + } + .p-lg-0 { + padding: 0 !important; + } + .p-lg-1 { + padding: 0.3125rem !important; + } + .p-lg-2 { + padding: 0.625rem !important; + } + .p-lg-3 { + padding: 1.25rem !important; + } + .p-lg-4 { + padding: 1.875rem !important; + } + .p-lg-5 { + padding: 3.75rem !important; + } + .px-lg-0 { + padding-left: 0 !important; + padding-right: 0 !important; + } + .px-lg-1 { + padding-left: 0.3125rem !important; + padding-right: 0.3125rem !important; + } + .px-lg-2 { + padding-left: 0.625rem !important; + padding-right: 0.625rem !important; + } + .px-lg-3 { + padding-left: 1.25rem !important; + padding-right: 1.25rem !important; + } + .px-lg-4 { + padding-left: 1.875rem !important; + padding-right: 1.875rem !important; + } + .px-lg-5 { + padding-left: 3.75rem !important; + padding-right: 3.75rem !important; + } + .py-lg-0 { + padding-top: 0 !important; + padding-bottom: 0 !important; + } + .py-lg-1 { + padding-top: 0.3125rem !important; + padding-bottom: 0.3125rem !important; + } + .py-lg-2 { + padding-top: 0.625rem !important; + padding-bottom: 0.625rem !important; + } + .py-lg-3 { + padding-top: 1.25rem !important; + padding-bottom: 1.25rem !important; + } + .py-lg-4 { + padding-top: 1.875rem !important; + padding-bottom: 1.875rem !important; + } + .py-lg-5 { + padding-top: 3.75rem !important; + padding-bottom: 3.75rem !important; + } + .pt-lg-0 { + padding-top: 0 !important; + } + .pt-lg-1 { + padding-top: 0.3125rem !important; + } + .pt-lg-2 { + padding-top: 0.625rem !important; + } + .pt-lg-3 { + padding-top: 1.25rem !important; + } + .pt-lg-4 { + padding-top: 1.875rem !important; + } + .pt-lg-5 { + padding-top: 3.75rem !important; + } + .pe-lg-0 { + padding-left: 0 !important; + } + .pe-lg-1 { + padding-left: 0.3125rem !important; + } + .pe-lg-2 { + padding-left: 0.625rem !important; + } + .pe-lg-3 { + padding-left: 1.25rem !important; + } + .pe-lg-4 { + padding-left: 1.875rem !important; + } + .pe-lg-5 { + padding-left: 3.75rem !important; + } + .pb-lg-0 { + padding-bottom: 0 !important; + } + .pb-lg-1 { + padding-bottom: 0.3125rem !important; + } + .pb-lg-2 { + padding-bottom: 0.625rem !important; + } + .pb-lg-3 { + padding-bottom: 1.25rem !important; + } + .pb-lg-4 { + padding-bottom: 1.875rem !important; + } + .pb-lg-5 { + padding-bottom: 3.75rem !important; + } + .ps-lg-0 { + padding-right: 0 !important; + } + .ps-lg-1 { + padding-right: 0.3125rem !important; + } + .ps-lg-2 { + padding-right: 0.625rem !important; + } + .ps-lg-3 { + padding-right: 1.25rem !important; + } + .ps-lg-4 { + padding-right: 1.875rem !important; + } + .ps-lg-5 { + padding-right: 3.75rem !important; + } + .gap-lg-0 { + gap: 0 !important; + } + .gap-lg-1 { + gap: 0.3125rem !important; + } + .gap-lg-2 { + gap: 0.625rem !important; + } + .gap-lg-3 { + gap: 1.25rem !important; + } + .gap-lg-4 { + gap: 1.875rem !important; + } + .gap-lg-5 { + gap: 3.75rem !important; + } + .row-gap-lg-0 { + row-gap: 0 !important; + } + .row-gap-lg-1 { + row-gap: 0.3125rem !important; + } + .row-gap-lg-2 { + row-gap: 0.625rem !important; + } + .row-gap-lg-3 { + row-gap: 1.25rem !important; + } + .row-gap-lg-4 { + row-gap: 1.875rem !important; + } + .row-gap-lg-5 { + row-gap: 3.75rem !important; + } + .column-gap-lg-0 { + -webkit-column-gap: 0 !important; + -moz-column-gap: 0 !important; + column-gap: 0 !important; + } + .column-gap-lg-1 { + -webkit-column-gap: 0.3125rem !important; + -moz-column-gap: 0.3125rem !important; + column-gap: 0.3125rem !important; + } + .column-gap-lg-2 { + -webkit-column-gap: 0.625rem !important; + -moz-column-gap: 0.625rem !important; + column-gap: 0.625rem !important; + } + .column-gap-lg-3 { + -webkit-column-gap: 1.25rem !important; + -moz-column-gap: 1.25rem !important; + column-gap: 1.25rem !important; + } + .column-gap-lg-4 { + -webkit-column-gap: 1.875rem !important; + -moz-column-gap: 1.875rem !important; + column-gap: 1.875rem !important; + } + .column-gap-lg-5 { + -webkit-column-gap: 3.75rem !important; + -moz-column-gap: 3.75rem !important; + column-gap: 3.75rem !important; + } + .text-lg-start { + text-align: right !important; + } + .text-lg-end { + text-align: left !important; + } + .text-lg-center { + text-align: center !important; + } +} +@media (min-width: 1200px) { + .float-xl-start { + float: right !important; + } + .float-xl-end { + float: left !important; + } + .float-xl-none { + float: none !important; + } + .object-fit-xl-contain { + -o-object-fit: contain !important; + object-fit: contain !important; + } + .object-fit-xl-cover { + -o-object-fit: cover !important; + object-fit: cover !important; + } + .object-fit-xl-fill { + -o-object-fit: fill !important; + object-fit: fill !important; + } + .object-fit-xl-scale { + -o-object-fit: scale-down !important; + object-fit: scale-down !important; + } + .object-fit-xl-none { + -o-object-fit: none !important; + object-fit: none !important; + } + .d-xl-inline { + display: inline !important; + } + .d-xl-inline-block { + display: inline-block !important; + } + .d-xl-block { + display: block !important; + } + .d-xl-grid { + display: grid !important; + } + .d-xl-inline-grid { + display: inline-grid !important; + } + .d-xl-table { + display: table !important; + } + .d-xl-table-row { + display: table-row !important; + } + .d-xl-table-cell { + display: table-cell !important; + } + .d-xl-flex { + display: -webkit-box !important; + display: -ms-flexbox !important; + display: flex !important; + } + .d-xl-inline-flex { + display: -webkit-inline-box !important; + display: -ms-inline-flexbox !important; + display: inline-flex !important; + } + .d-xl-none { + display: none !important; + } + .flex-xl-fill { + -webkit-box-flex: 1 !important; + -ms-flex: 1 1 auto !important; + flex: 1 1 auto !important; + } + .flex-xl-row { + -webkit-box-orient: horizontal !important; + -webkit-box-direction: normal !important; + -ms-flex-direction: row !important; + flex-direction: row !important; + } + .flex-xl-column { + -webkit-box-orient: vertical !important; + -webkit-box-direction: normal !important; + -ms-flex-direction: column !important; + flex-direction: column !important; + } + .flex-xl-row-reverse { + -webkit-box-orient: horizontal !important; + -webkit-box-direction: reverse !important; + -ms-flex-direction: row-reverse !important; + flex-direction: row-reverse !important; + } + .flex-xl-column-reverse { + -webkit-box-orient: vertical !important; + -webkit-box-direction: reverse !important; + -ms-flex-direction: column-reverse !important; + flex-direction: column-reverse !important; + } + .flex-xl-grow-0 { + -webkit-box-flex: 0 !important; + -ms-flex-positive: 0 !important; + flex-grow: 0 !important; + } + .flex-xl-grow-1 { + -webkit-box-flex: 1 !important; + -ms-flex-positive: 1 !important; + flex-grow: 1 !important; + } + .flex-xl-shrink-0 { + -ms-flex-negative: 0 !important; + flex-shrink: 0 !important; + } + .flex-xl-shrink-1 { + -ms-flex-negative: 1 !important; + flex-shrink: 1 !important; + } + .flex-xl-wrap { + -ms-flex-wrap: wrap !important; + flex-wrap: wrap !important; + } + .flex-xl-nowrap { + -ms-flex-wrap: nowrap !important; + flex-wrap: nowrap !important; + } + .flex-xl-wrap-reverse { + -ms-flex-wrap: wrap-reverse !important; + flex-wrap: wrap-reverse !important; + } + .justify-content-xl-start { + -webkit-box-pack: start !important; + -ms-flex-pack: start !important; + justify-content: flex-start !important; + } + .justify-content-xl-end { + -webkit-box-pack: end !important; + -ms-flex-pack: end !important; + justify-content: flex-end !important; + } + .justify-content-xl-center { + -webkit-box-pack: center !important; + -ms-flex-pack: center !important; + justify-content: center !important; + } + .justify-content-xl-between { + -webkit-box-pack: justify !important; + -ms-flex-pack: justify !important; + justify-content: space-between !important; + } + .justify-content-xl-around { + -ms-flex-pack: distribute !important; + justify-content: space-around !important; + } + .justify-content-xl-evenly { + -webkit-box-pack: space-evenly !important; + -ms-flex-pack: space-evenly !important; + justify-content: space-evenly !important; + } + .align-items-xl-start { + -webkit-box-align: start !important; + -ms-flex-align: start !important; + align-items: flex-start !important; + } + .align-items-xl-end { + -webkit-box-align: end !important; + -ms-flex-align: end !important; + align-items: flex-end !important; + } + .align-items-xl-center { + -webkit-box-align: center !important; + -ms-flex-align: center !important; + align-items: center !important; + } + .align-items-xl-baseline { + -webkit-box-align: baseline !important; + -ms-flex-align: baseline !important; + align-items: baseline !important; + } + .align-items-xl-stretch { + -webkit-box-align: stretch !important; + -ms-flex-align: stretch !important; + align-items: stretch !important; + } + .align-content-xl-start { + -ms-flex-line-pack: start !important; + align-content: flex-start !important; + } + .align-content-xl-end { + -ms-flex-line-pack: end !important; + align-content: flex-end !important; + } + .align-content-xl-center { + -ms-flex-line-pack: center !important; + align-content: center !important; + } + .align-content-xl-between { + -ms-flex-line-pack: justify !important; + align-content: space-between !important; + } + .align-content-xl-around { + -ms-flex-line-pack: distribute !important; + align-content: space-around !important; + } + .align-content-xl-stretch { + -ms-flex-line-pack: stretch !important; + align-content: stretch !important; + } + .align-self-xl-auto { + -ms-flex-item-align: auto !important; + align-self: auto !important; + } + .align-self-xl-start { + -ms-flex-item-align: start !important; + align-self: flex-start !important; + } + .align-self-xl-end { + -ms-flex-item-align: end !important; + align-self: flex-end !important; + } + .align-self-xl-center { + -ms-flex-item-align: center !important; + align-self: center !important; + } + .align-self-xl-baseline { + -ms-flex-item-align: baseline !important; + align-self: baseline !important; + } + .align-self-xl-stretch { + -ms-flex-item-align: stretch !important; + align-self: stretch !important; + } + .order-xl-first { + -webkit-box-ordinal-group: 0 !important; + -ms-flex-order: -1 !important; + order: -1 !important; + } + .order-xl-0 { + -webkit-box-ordinal-group: 1 !important; + -ms-flex-order: 0 !important; + order: 0 !important; + } + .order-xl-1 { + -webkit-box-ordinal-group: 2 !important; + -ms-flex-order: 1 !important; + order: 1 !important; + } + .order-xl-2 { + -webkit-box-ordinal-group: 3 !important; + -ms-flex-order: 2 !important; + order: 2 !important; + } + .order-xl-3 { + -webkit-box-ordinal-group: 4 !important; + -ms-flex-order: 3 !important; + order: 3 !important; + } + .order-xl-4 { + -webkit-box-ordinal-group: 5 !important; + -ms-flex-order: 4 !important; + order: 4 !important; + } + .order-xl-5 { + -webkit-box-ordinal-group: 6 !important; + -ms-flex-order: 5 !important; + order: 5 !important; + } + .order-xl-last { + -webkit-box-ordinal-group: 7 !important; + -ms-flex-order: 6 !important; + order: 6 !important; + } + .m-xl-0 { + margin: 0 !important; + } + .m-xl-1 { + margin: 0.3125rem !important; + } + .m-xl-2 { + margin: 0.625rem !important; + } + .m-xl-3 { + margin: 1.25rem !important; + } + .m-xl-4 { + margin: 1.875rem !important; + } + .m-xl-5 { + margin: 3.75rem !important; + } + .m-xl-auto { + margin: auto !important; + } + .mx-xl-0 { + margin-left: 0 !important; + margin-right: 0 !important; + } + .mx-xl-1 { + margin-left: 0.3125rem !important; + margin-right: 0.3125rem !important; + } + .mx-xl-2 { + margin-left: 0.625rem !important; + margin-right: 0.625rem !important; + } + .mx-xl-3 { + margin-left: 1.25rem !important; + margin-right: 1.25rem !important; + } + .mx-xl-4 { + margin-left: 1.875rem !important; + margin-right: 1.875rem !important; + } + .mx-xl-5 { + margin-left: 3.75rem !important; + margin-right: 3.75rem !important; + } + .mx-xl-auto { + margin-left: auto !important; + margin-right: auto !important; + } + .my-xl-0 { + margin-top: 0 !important; + margin-bottom: 0 !important; + } + .my-xl-1 { + margin-top: 0.3125rem !important; + margin-bottom: 0.3125rem !important; + } + .my-xl-2 { + margin-top: 0.625rem !important; + margin-bottom: 0.625rem !important; + } + .my-xl-3 { + margin-top: 1.25rem !important; + margin-bottom: 1.25rem !important; + } + .my-xl-4 { + margin-top: 1.875rem !important; + margin-bottom: 1.875rem !important; + } + .my-xl-5 { + margin-top: 3.75rem !important; + margin-bottom: 3.75rem !important; + } + .my-xl-auto { + margin-top: auto !important; + margin-bottom: auto !important; + } + .mt-xl-0 { + margin-top: 0 !important; + } + .mt-xl-1 { + margin-top: 0.3125rem !important; + } + .mt-xl-2 { + margin-top: 0.625rem !important; + } + .mt-xl-3 { + margin-top: 1.25rem !important; + } + .mt-xl-4 { + margin-top: 1.875rem !important; + } + .mt-xl-5 { + margin-top: 3.75rem !important; + } + .mt-xl-auto { + margin-top: auto !important; + } + .me-xl-0 { + margin-left: 0 !important; + } + .me-xl-1 { + margin-left: 0.3125rem !important; + } + .me-xl-2 { + margin-left: 0.625rem !important; + } + .me-xl-3 { + margin-left: 1.25rem !important; + } + .me-xl-4 { + margin-left: 1.875rem !important; + } + .me-xl-5 { + margin-left: 3.75rem !important; + } + .me-xl-auto { + margin-left: auto !important; + } + .mb-xl-0 { + margin-bottom: 0 !important; + } + .mb-xl-1 { + margin-bottom: 0.3125rem !important; + } + .mb-xl-2 { + margin-bottom: 0.625rem !important; + } + .mb-xl-3 { + margin-bottom: 1.25rem !important; + } + .mb-xl-4 { + margin-bottom: 1.875rem !important; + } + .mb-xl-5 { + margin-bottom: 3.75rem !important; + } + .mb-xl-auto { + margin-bottom: auto !important; + } + .ms-xl-0 { + margin-right: 0 !important; + } + .ms-xl-1 { + margin-right: 0.3125rem !important; + } + .ms-xl-2 { + margin-right: 0.625rem !important; + } + .ms-xl-3 { + margin-right: 1.25rem !important; + } + .ms-xl-4 { + margin-right: 1.875rem !important; + } + .ms-xl-5 { + margin-right: 3.75rem !important; + } + .ms-xl-auto { + margin-right: auto !important; + } + .m-xl-n1 { + margin: -0.3125rem !important; + } + .m-xl-n2 { + margin: -0.625rem !important; + } + .m-xl-n3 { + margin: -1.25rem !important; + } + .m-xl-n4 { + margin: -1.875rem !important; + } + .m-xl-n5 { + margin: -3.75rem !important; + } + .mx-xl-n1 { + margin-left: -0.3125rem !important; + margin-right: -0.3125rem !important; + } + .mx-xl-n2 { + margin-left: -0.625rem !important; + margin-right: -0.625rem !important; + } + .mx-xl-n3 { + margin-left: -1.25rem !important; + margin-right: -1.25rem !important; + } + .mx-xl-n4 { + margin-left: -1.875rem !important; + margin-right: -1.875rem !important; + } + .mx-xl-n5 { + margin-left: -3.75rem !important; + margin-right: -3.75rem !important; + } + .my-xl-n1 { + margin-top: -0.3125rem !important; + margin-bottom: -0.3125rem !important; + } + .my-xl-n2 { + margin-top: -0.625rem !important; + margin-bottom: -0.625rem !important; + } + .my-xl-n3 { + margin-top: -1.25rem !important; + margin-bottom: -1.25rem !important; + } + .my-xl-n4 { + margin-top: -1.875rem !important; + margin-bottom: -1.875rem !important; + } + .my-xl-n5 { + margin-top: -3.75rem !important; + margin-bottom: -3.75rem !important; + } + .mt-xl-n1 { + margin-top: -0.3125rem !important; + } + .mt-xl-n2 { + margin-top: -0.625rem !important; + } + .mt-xl-n3 { + margin-top: -1.25rem !important; + } + .mt-xl-n4 { + margin-top: -1.875rem !important; + } + .mt-xl-n5 { + margin-top: -3.75rem !important; + } + .me-xl-n1 { + margin-left: -0.3125rem !important; + } + .me-xl-n2 { + margin-left: -0.625rem !important; + } + .me-xl-n3 { + margin-left: -1.25rem !important; + } + .me-xl-n4 { + margin-left: -1.875rem !important; + } + .me-xl-n5 { + margin-left: -3.75rem !important; + } + .mb-xl-n1 { + margin-bottom: -0.3125rem !important; + } + .mb-xl-n2 { + margin-bottom: -0.625rem !important; + } + .mb-xl-n3 { + margin-bottom: -1.25rem !important; + } + .mb-xl-n4 { + margin-bottom: -1.875rem !important; + } + .mb-xl-n5 { + margin-bottom: -3.75rem !important; + } + .ms-xl-n1 { + margin-right: -0.3125rem !important; + } + .ms-xl-n2 { + margin-right: -0.625rem !important; + } + .ms-xl-n3 { + margin-right: -1.25rem !important; + } + .ms-xl-n4 { + margin-right: -1.875rem !important; + } + .ms-xl-n5 { + margin-right: -3.75rem !important; + } + .p-xl-0 { + padding: 0 !important; + } + .p-xl-1 { + padding: 0.3125rem !important; + } + .p-xl-2 { + padding: 0.625rem !important; + } + .p-xl-3 { + padding: 1.25rem !important; + } + .p-xl-4 { + padding: 1.875rem !important; + } + .p-xl-5 { + padding: 3.75rem !important; + } + .px-xl-0 { + padding-left: 0 !important; + padding-right: 0 !important; + } + .px-xl-1 { + padding-left: 0.3125rem !important; + padding-right: 0.3125rem !important; + } + .px-xl-2 { + padding-left: 0.625rem !important; + padding-right: 0.625rem !important; + } + .px-xl-3 { + padding-left: 1.25rem !important; + padding-right: 1.25rem !important; + } + .px-xl-4 { + padding-left: 1.875rem !important; + padding-right: 1.875rem !important; + } + .px-xl-5 { + padding-left: 3.75rem !important; + padding-right: 3.75rem !important; + } + .py-xl-0 { + padding-top: 0 !important; + padding-bottom: 0 !important; + } + .py-xl-1 { + padding-top: 0.3125rem !important; + padding-bottom: 0.3125rem !important; + } + .py-xl-2 { + padding-top: 0.625rem !important; + padding-bottom: 0.625rem !important; + } + .py-xl-3 { + padding-top: 1.25rem !important; + padding-bottom: 1.25rem !important; + } + .py-xl-4 { + padding-top: 1.875rem !important; + padding-bottom: 1.875rem !important; + } + .py-xl-5 { + padding-top: 3.75rem !important; + padding-bottom: 3.75rem !important; + } + .pt-xl-0 { + padding-top: 0 !important; + } + .pt-xl-1 { + padding-top: 0.3125rem !important; + } + .pt-xl-2 { + padding-top: 0.625rem !important; + } + .pt-xl-3 { + padding-top: 1.25rem !important; + } + .pt-xl-4 { + padding-top: 1.875rem !important; + } + .pt-xl-5 { + padding-top: 3.75rem !important; + } + .pe-xl-0 { + padding-left: 0 !important; + } + .pe-xl-1 { + padding-left: 0.3125rem !important; + } + .pe-xl-2 { + padding-left: 0.625rem !important; + } + .pe-xl-3 { + padding-left: 1.25rem !important; + } + .pe-xl-4 { + padding-left: 1.875rem !important; + } + .pe-xl-5 { + padding-left: 3.75rem !important; + } + .pb-xl-0 { + padding-bottom: 0 !important; + } + .pb-xl-1 { + padding-bottom: 0.3125rem !important; + } + .pb-xl-2 { + padding-bottom: 0.625rem !important; + } + .pb-xl-3 { + padding-bottom: 1.25rem !important; + } + .pb-xl-4 { + padding-bottom: 1.875rem !important; + } + .pb-xl-5 { + padding-bottom: 3.75rem !important; + } + .ps-xl-0 { + padding-right: 0 !important; + } + .ps-xl-1 { + padding-right: 0.3125rem !important; + } + .ps-xl-2 { + padding-right: 0.625rem !important; + } + .ps-xl-3 { + padding-right: 1.25rem !important; + } + .ps-xl-4 { + padding-right: 1.875rem !important; + } + .ps-xl-5 { + padding-right: 3.75rem !important; + } + .gap-xl-0 { + gap: 0 !important; + } + .gap-xl-1 { + gap: 0.3125rem !important; + } + .gap-xl-2 { + gap: 0.625rem !important; + } + .gap-xl-3 { + gap: 1.25rem !important; + } + .gap-xl-4 { + gap: 1.875rem !important; + } + .gap-xl-5 { + gap: 3.75rem !important; + } + .row-gap-xl-0 { + row-gap: 0 !important; + } + .row-gap-xl-1 { + row-gap: 0.3125rem !important; + } + .row-gap-xl-2 { + row-gap: 0.625rem !important; + } + .row-gap-xl-3 { + row-gap: 1.25rem !important; + } + .row-gap-xl-4 { + row-gap: 1.875rem !important; + } + .row-gap-xl-5 { + row-gap: 3.75rem !important; + } + .column-gap-xl-0 { + -webkit-column-gap: 0 !important; + -moz-column-gap: 0 !important; + column-gap: 0 !important; + } + .column-gap-xl-1 { + -webkit-column-gap: 0.3125rem !important; + -moz-column-gap: 0.3125rem !important; + column-gap: 0.3125rem !important; + } + .column-gap-xl-2 { + -webkit-column-gap: 0.625rem !important; + -moz-column-gap: 0.625rem !important; + column-gap: 0.625rem !important; + } + .column-gap-xl-3 { + -webkit-column-gap: 1.25rem !important; + -moz-column-gap: 1.25rem !important; + column-gap: 1.25rem !important; + } + .column-gap-xl-4 { + -webkit-column-gap: 1.875rem !important; + -moz-column-gap: 1.875rem !important; + column-gap: 1.875rem !important; + } + .column-gap-xl-5 { + -webkit-column-gap: 3.75rem !important; + -moz-column-gap: 3.75rem !important; + column-gap: 3.75rem !important; + } + .text-xl-start { + text-align: right !important; + } + .text-xl-end { + text-align: left !important; + } + .text-xl-center { + text-align: center !important; + } +} +@media (min-width: 1400px) { + .float-xxl-start { + float: right !important; + } + .float-xxl-end { + float: left !important; + } + .float-xxl-none { + float: none !important; + } + .object-fit-xxl-contain { + -o-object-fit: contain !important; + object-fit: contain !important; + } + .object-fit-xxl-cover { + -o-object-fit: cover !important; + object-fit: cover !important; + } + .object-fit-xxl-fill { + -o-object-fit: fill !important; + object-fit: fill !important; + } + .object-fit-xxl-scale { + -o-object-fit: scale-down !important; + object-fit: scale-down !important; + } + .object-fit-xxl-none { + -o-object-fit: none !important; + object-fit: none !important; + } + .d-xxl-inline { + display: inline !important; + } + .d-xxl-inline-block { + display: inline-block !important; + } + .d-xxl-block { + display: block !important; + } + .d-xxl-grid { + display: grid !important; + } + .d-xxl-inline-grid { + display: inline-grid !important; + } + .d-xxl-table { + display: table !important; + } + .d-xxl-table-row { + display: table-row !important; + } + .d-xxl-table-cell { + display: table-cell !important; + } + .d-xxl-flex { + display: -webkit-box !important; + display: -ms-flexbox !important; + display: flex !important; + } + .d-xxl-inline-flex { + display: -webkit-inline-box !important; + display: -ms-inline-flexbox !important; + display: inline-flex !important; + } + .d-xxl-none { + display: none !important; + } + .flex-xxl-fill { + -webkit-box-flex: 1 !important; + -ms-flex: 1 1 auto !important; + flex: 1 1 auto !important; + } + .flex-xxl-row { + -webkit-box-orient: horizontal !important; + -webkit-box-direction: normal !important; + -ms-flex-direction: row !important; + flex-direction: row !important; + } + .flex-xxl-column { + -webkit-box-orient: vertical !important; + -webkit-box-direction: normal !important; + -ms-flex-direction: column !important; + flex-direction: column !important; + } + .flex-xxl-row-reverse { + -webkit-box-orient: horizontal !important; + -webkit-box-direction: reverse !important; + -ms-flex-direction: row-reverse !important; + flex-direction: row-reverse !important; + } + .flex-xxl-column-reverse { + -webkit-box-orient: vertical !important; + -webkit-box-direction: reverse !important; + -ms-flex-direction: column-reverse !important; + flex-direction: column-reverse !important; + } + .flex-xxl-grow-0 { + -webkit-box-flex: 0 !important; + -ms-flex-positive: 0 !important; + flex-grow: 0 !important; + } + .flex-xxl-grow-1 { + -webkit-box-flex: 1 !important; + -ms-flex-positive: 1 !important; + flex-grow: 1 !important; + } + .flex-xxl-shrink-0 { + -ms-flex-negative: 0 !important; + flex-shrink: 0 !important; + } + .flex-xxl-shrink-1 { + -ms-flex-negative: 1 !important; + flex-shrink: 1 !important; + } + .flex-xxl-wrap { + -ms-flex-wrap: wrap !important; + flex-wrap: wrap !important; + } + .flex-xxl-nowrap { + -ms-flex-wrap: nowrap !important; + flex-wrap: nowrap !important; + } + .flex-xxl-wrap-reverse { + -ms-flex-wrap: wrap-reverse !important; + flex-wrap: wrap-reverse !important; + } + .justify-content-xxl-start { + -webkit-box-pack: start !important; + -ms-flex-pack: start !important; + justify-content: flex-start !important; + } + .justify-content-xxl-end { + -webkit-box-pack: end !important; + -ms-flex-pack: end !important; + justify-content: flex-end !important; + } + .justify-content-xxl-center { + -webkit-box-pack: center !important; + -ms-flex-pack: center !important; + justify-content: center !important; + } + .justify-content-xxl-between { + -webkit-box-pack: justify !important; + -ms-flex-pack: justify !important; + justify-content: space-between !important; + } + .justify-content-xxl-around { + -ms-flex-pack: distribute !important; + justify-content: space-around !important; + } + .justify-content-xxl-evenly { + -webkit-box-pack: space-evenly !important; + -ms-flex-pack: space-evenly !important; + justify-content: space-evenly !important; + } + .align-items-xxl-start { + -webkit-box-align: start !important; + -ms-flex-align: start !important; + align-items: flex-start !important; + } + .align-items-xxl-end { + -webkit-box-align: end !important; + -ms-flex-align: end !important; + align-items: flex-end !important; + } + .align-items-xxl-center { + -webkit-box-align: center !important; + -ms-flex-align: center !important; + align-items: center !important; + } + .align-items-xxl-baseline { + -webkit-box-align: baseline !important; + -ms-flex-align: baseline !important; + align-items: baseline !important; + } + .align-items-xxl-stretch { + -webkit-box-align: stretch !important; + -ms-flex-align: stretch !important; + align-items: stretch !important; + } + .align-content-xxl-start { + -ms-flex-line-pack: start !important; + align-content: flex-start !important; + } + .align-content-xxl-end { + -ms-flex-line-pack: end !important; + align-content: flex-end !important; + } + .align-content-xxl-center { + -ms-flex-line-pack: center !important; + align-content: center !important; + } + .align-content-xxl-between { + -ms-flex-line-pack: justify !important; + align-content: space-between !important; + } + .align-content-xxl-around { + -ms-flex-line-pack: distribute !important; + align-content: space-around !important; + } + .align-content-xxl-stretch { + -ms-flex-line-pack: stretch !important; + align-content: stretch !important; + } + .align-self-xxl-auto { + -ms-flex-item-align: auto !important; + align-self: auto !important; + } + .align-self-xxl-start { + -ms-flex-item-align: start !important; + align-self: flex-start !important; + } + .align-self-xxl-end { + -ms-flex-item-align: end !important; + align-self: flex-end !important; + } + .align-self-xxl-center { + -ms-flex-item-align: center !important; + align-self: center !important; + } + .align-self-xxl-baseline { + -ms-flex-item-align: baseline !important; + align-self: baseline !important; + } + .align-self-xxl-stretch { + -ms-flex-item-align: stretch !important; + align-self: stretch !important; + } + .order-xxl-first { + -webkit-box-ordinal-group: 0 !important; + -ms-flex-order: -1 !important; + order: -1 !important; + } + .order-xxl-0 { + -webkit-box-ordinal-group: 1 !important; + -ms-flex-order: 0 !important; + order: 0 !important; + } + .order-xxl-1 { + -webkit-box-ordinal-group: 2 !important; + -ms-flex-order: 1 !important; + order: 1 !important; + } + .order-xxl-2 { + -webkit-box-ordinal-group: 3 !important; + -ms-flex-order: 2 !important; + order: 2 !important; + } + .order-xxl-3 { + -webkit-box-ordinal-group: 4 !important; + -ms-flex-order: 3 !important; + order: 3 !important; + } + .order-xxl-4 { + -webkit-box-ordinal-group: 5 !important; + -ms-flex-order: 4 !important; + order: 4 !important; + } + .order-xxl-5 { + -webkit-box-ordinal-group: 6 !important; + -ms-flex-order: 5 !important; + order: 5 !important; + } + .order-xxl-last { + -webkit-box-ordinal-group: 7 !important; + -ms-flex-order: 6 !important; + order: 6 !important; + } + .m-xxl-0 { + margin: 0 !important; + } + .m-xxl-1 { + margin: 0.3125rem !important; + } + .m-xxl-2 { + margin: 0.625rem !important; + } + .m-xxl-3 { + margin: 1.25rem !important; + } + .m-xxl-4 { + margin: 1.875rem !important; + } + .m-xxl-5 { + margin: 3.75rem !important; + } + .m-xxl-auto { + margin: auto !important; + } + .mx-xxl-0 { + margin-left: 0 !important; + margin-right: 0 !important; + } + .mx-xxl-1 { + margin-left: 0.3125rem !important; + margin-right: 0.3125rem !important; + } + .mx-xxl-2 { + margin-left: 0.625rem !important; + margin-right: 0.625rem !important; + } + .mx-xxl-3 { + margin-left: 1.25rem !important; + margin-right: 1.25rem !important; + } + .mx-xxl-4 { + margin-left: 1.875rem !important; + margin-right: 1.875rem !important; + } + .mx-xxl-5 { + margin-left: 3.75rem !important; + margin-right: 3.75rem !important; + } + .mx-xxl-auto { + margin-left: auto !important; + margin-right: auto !important; + } + .my-xxl-0 { + margin-top: 0 !important; + margin-bottom: 0 !important; + } + .my-xxl-1 { + margin-top: 0.3125rem !important; + margin-bottom: 0.3125rem !important; + } + .my-xxl-2 { + margin-top: 0.625rem !important; + margin-bottom: 0.625rem !important; + } + .my-xxl-3 { + margin-top: 1.25rem !important; + margin-bottom: 1.25rem !important; + } + .my-xxl-4 { + margin-top: 1.875rem !important; + margin-bottom: 1.875rem !important; + } + .my-xxl-5 { + margin-top: 3.75rem !important; + margin-bottom: 3.75rem !important; + } + .my-xxl-auto { + margin-top: auto !important; + margin-bottom: auto !important; + } + .mt-xxl-0 { + margin-top: 0 !important; + } + .mt-xxl-1 { + margin-top: 0.3125rem !important; + } + .mt-xxl-2 { + margin-top: 0.625rem !important; + } + .mt-xxl-3 { + margin-top: 1.25rem !important; + } + .mt-xxl-4 { + margin-top: 1.875rem !important; + } + .mt-xxl-5 { + margin-top: 3.75rem !important; + } + .mt-xxl-auto { + margin-top: auto !important; + } + .me-xxl-0 { + margin-left: 0 !important; + } + .me-xxl-1 { + margin-left: 0.3125rem !important; + } + .me-xxl-2 { + margin-left: 0.625rem !important; + } + .me-xxl-3 { + margin-left: 1.25rem !important; + } + .me-xxl-4 { + margin-left: 1.875rem !important; + } + .me-xxl-5 { + margin-left: 3.75rem !important; + } + .me-xxl-auto { + margin-left: auto !important; + } + .mb-xxl-0 { + margin-bottom: 0 !important; + } + .mb-xxl-1 { + margin-bottom: 0.3125rem !important; + } + .mb-xxl-2 { + margin-bottom: 0.625rem !important; + } + .mb-xxl-3 { + margin-bottom: 1.25rem !important; + } + .mb-xxl-4 { + margin-bottom: 1.875rem !important; + } + .mb-xxl-5 { + margin-bottom: 3.75rem !important; + } + .mb-xxl-auto { + margin-bottom: auto !important; + } + .ms-xxl-0 { + margin-right: 0 !important; + } + .ms-xxl-1 { + margin-right: 0.3125rem !important; + } + .ms-xxl-2 { + margin-right: 0.625rem !important; + } + .ms-xxl-3 { + margin-right: 1.25rem !important; + } + .ms-xxl-4 { + margin-right: 1.875rem !important; + } + .ms-xxl-5 { + margin-right: 3.75rem !important; + } + .ms-xxl-auto { + margin-right: auto !important; + } + .m-xxl-n1 { + margin: -0.3125rem !important; + } + .m-xxl-n2 { + margin: -0.625rem !important; + } + .m-xxl-n3 { + margin: -1.25rem !important; + } + .m-xxl-n4 { + margin: -1.875rem !important; + } + .m-xxl-n5 { + margin: -3.75rem !important; + } + .mx-xxl-n1 { + margin-left: -0.3125rem !important; + margin-right: -0.3125rem !important; + } + .mx-xxl-n2 { + margin-left: -0.625rem !important; + margin-right: -0.625rem !important; + } + .mx-xxl-n3 { + margin-left: -1.25rem !important; + margin-right: -1.25rem !important; + } + .mx-xxl-n4 { + margin-left: -1.875rem !important; + margin-right: -1.875rem !important; + } + .mx-xxl-n5 { + margin-left: -3.75rem !important; + margin-right: -3.75rem !important; + } + .my-xxl-n1 { + margin-top: -0.3125rem !important; + margin-bottom: -0.3125rem !important; + } + .my-xxl-n2 { + margin-top: -0.625rem !important; + margin-bottom: -0.625rem !important; + } + .my-xxl-n3 { + margin-top: -1.25rem !important; + margin-bottom: -1.25rem !important; + } + .my-xxl-n4 { + margin-top: -1.875rem !important; + margin-bottom: -1.875rem !important; + } + .my-xxl-n5 { + margin-top: -3.75rem !important; + margin-bottom: -3.75rem !important; + } + .mt-xxl-n1 { + margin-top: -0.3125rem !important; + } + .mt-xxl-n2 { + margin-top: -0.625rem !important; + } + .mt-xxl-n3 { + margin-top: -1.25rem !important; + } + .mt-xxl-n4 { + margin-top: -1.875rem !important; + } + .mt-xxl-n5 { + margin-top: -3.75rem !important; + } + .me-xxl-n1 { + margin-left: -0.3125rem !important; + } + .me-xxl-n2 { + margin-left: -0.625rem !important; + } + .me-xxl-n3 { + margin-left: -1.25rem !important; + } + .me-xxl-n4 { + margin-left: -1.875rem !important; + } + .me-xxl-n5 { + margin-left: -3.75rem !important; + } + .mb-xxl-n1 { + margin-bottom: -0.3125rem !important; + } + .mb-xxl-n2 { + margin-bottom: -0.625rem !important; + } + .mb-xxl-n3 { + margin-bottom: -1.25rem !important; + } + .mb-xxl-n4 { + margin-bottom: -1.875rem !important; + } + .mb-xxl-n5 { + margin-bottom: -3.75rem !important; + } + .ms-xxl-n1 { + margin-right: -0.3125rem !important; + } + .ms-xxl-n2 { + margin-right: -0.625rem !important; + } + .ms-xxl-n3 { + margin-right: -1.25rem !important; + } + .ms-xxl-n4 { + margin-right: -1.875rem !important; + } + .ms-xxl-n5 { + margin-right: -3.75rem !important; + } + .p-xxl-0 { + padding: 0 !important; + } + .p-xxl-1 { + padding: 0.3125rem !important; + } + .p-xxl-2 { + padding: 0.625rem !important; + } + .p-xxl-3 { + padding: 1.25rem !important; + } + .p-xxl-4 { + padding: 1.875rem !important; + } + .p-xxl-5 { + padding: 3.75rem !important; + } + .px-xxl-0 { + padding-left: 0 !important; + padding-right: 0 !important; + } + .px-xxl-1 { + padding-left: 0.3125rem !important; + padding-right: 0.3125rem !important; + } + .px-xxl-2 { + padding-left: 0.625rem !important; + padding-right: 0.625rem !important; + } + .px-xxl-3 { + padding-left: 1.25rem !important; + padding-right: 1.25rem !important; + } + .px-xxl-4 { + padding-left: 1.875rem !important; + padding-right: 1.875rem !important; + } + .px-xxl-5 { + padding-left: 3.75rem !important; + padding-right: 3.75rem !important; + } + .py-xxl-0 { + padding-top: 0 !important; + padding-bottom: 0 !important; + } + .py-xxl-1 { + padding-top: 0.3125rem !important; + padding-bottom: 0.3125rem !important; + } + .py-xxl-2 { + padding-top: 0.625rem !important; + padding-bottom: 0.625rem !important; + } + .py-xxl-3 { + padding-top: 1.25rem !important; + padding-bottom: 1.25rem !important; + } + .py-xxl-4 { + padding-top: 1.875rem !important; + padding-bottom: 1.875rem !important; + } + .py-xxl-5 { + padding-top: 3.75rem !important; + padding-bottom: 3.75rem !important; + } + .pt-xxl-0 { + padding-top: 0 !important; + } + .pt-xxl-1 { + padding-top: 0.3125rem !important; + } + .pt-xxl-2 { + padding-top: 0.625rem !important; + } + .pt-xxl-3 { + padding-top: 1.25rem !important; + } + .pt-xxl-4 { + padding-top: 1.875rem !important; + } + .pt-xxl-5 { + padding-top: 3.75rem !important; + } + .pe-xxl-0 { + padding-left: 0 !important; + } + .pe-xxl-1 { + padding-left: 0.3125rem !important; + } + .pe-xxl-2 { + padding-left: 0.625rem !important; + } + .pe-xxl-3 { + padding-left: 1.25rem !important; + } + .pe-xxl-4 { + padding-left: 1.875rem !important; + } + .pe-xxl-5 { + padding-left: 3.75rem !important; + } + .pb-xxl-0 { + padding-bottom: 0 !important; + } + .pb-xxl-1 { + padding-bottom: 0.3125rem !important; + } + .pb-xxl-2 { + padding-bottom: 0.625rem !important; + } + .pb-xxl-3 { + padding-bottom: 1.25rem !important; + } + .pb-xxl-4 { + padding-bottom: 1.875rem !important; + } + .pb-xxl-5 { + padding-bottom: 3.75rem !important; + } + .ps-xxl-0 { + padding-right: 0 !important; + } + .ps-xxl-1 { + padding-right: 0.3125rem !important; + } + .ps-xxl-2 { + padding-right: 0.625rem !important; + } + .ps-xxl-3 { + padding-right: 1.25rem !important; + } + .ps-xxl-4 { + padding-right: 1.875rem !important; + } + .ps-xxl-5 { + padding-right: 3.75rem !important; + } + .gap-xxl-0 { + gap: 0 !important; + } + .gap-xxl-1 { + gap: 0.3125rem !important; + } + .gap-xxl-2 { + gap: 0.625rem !important; + } + .gap-xxl-3 { + gap: 1.25rem !important; + } + .gap-xxl-4 { + gap: 1.875rem !important; + } + .gap-xxl-5 { + gap: 3.75rem !important; + } + .row-gap-xxl-0 { + row-gap: 0 !important; + } + .row-gap-xxl-1 { + row-gap: 0.3125rem !important; + } + .row-gap-xxl-2 { + row-gap: 0.625rem !important; + } + .row-gap-xxl-3 { + row-gap: 1.25rem !important; + } + .row-gap-xxl-4 { + row-gap: 1.875rem !important; + } + .row-gap-xxl-5 { + row-gap: 3.75rem !important; + } + .column-gap-xxl-0 { + -webkit-column-gap: 0 !important; + -moz-column-gap: 0 !important; + column-gap: 0 !important; + } + .column-gap-xxl-1 { + -webkit-column-gap: 0.3125rem !important; + -moz-column-gap: 0.3125rem !important; + column-gap: 0.3125rem !important; + } + .column-gap-xxl-2 { + -webkit-column-gap: 0.625rem !important; + -moz-column-gap: 0.625rem !important; + column-gap: 0.625rem !important; + } + .column-gap-xxl-3 { + -webkit-column-gap: 1.25rem !important; + -moz-column-gap: 1.25rem !important; + column-gap: 1.25rem !important; + } + .column-gap-xxl-4 { + -webkit-column-gap: 1.875rem !important; + -moz-column-gap: 1.875rem !important; + column-gap: 1.875rem !important; + } + .column-gap-xxl-5 { + -webkit-column-gap: 3.75rem !important; + -moz-column-gap: 3.75rem !important; + column-gap: 3.75rem !important; + } + .text-xxl-start { + text-align: right !important; + } + .text-xxl-end { + text-align: left !important; + } + .text-xxl-center { + text-align: center !important; + } +} +@media (min-width: 1200px) { + .fs-1 { + font-size: 2.1875rem !important; + } + .fs-2 { + font-size: 1.82rem !important; + } + .fs-3 { + font-size: 1.46125rem !important; + } +} +@media print { + .d-print-inline { + display: inline !important; + } + .d-print-inline-block { + display: inline-block !important; + } + .d-print-block { + display: block !important; + } + .d-print-grid { + display: grid !important; + } + .d-print-inline-grid { + display: inline-grid !important; + } + .d-print-table { + display: table !important; + } + .d-print-table-row { + display: table-row !important; + } + .d-print-table-cell { + display: table-cell !important; + } + .d-print-flex { + display: -webkit-box !important; + display: -ms-flexbox !important; + display: flex !important; + } + .d-print-inline-flex { + display: -webkit-inline-box !important; + display: -ms-inline-flexbox !important; + display: inline-flex !important; + } + .d-print-none { + display: none !important; + } +} +.logo-lg img { + height: var(--ct-logo-lg-height); +} + +.logo-sm img { + height: var(--ct-logo-sm-height); +} + +.logo { + display: block; + top: 0; + position: sticky; + text-align: center; + line-height: var(--ct-topbar-height); + padding: 0 calc(var(--ct-leftbar-width-sm) * 0.5 - var(--ct-logo-sm-height) * 0.7); + -webkit-transition: all 0.25s ease-in-out; + transition: all 0.25s ease-in-out; +} +.logo span.logo-lg { + display: block; +} +.logo span.logo-sm { + display: none; +} +.logo.logo-light { + display: none; +} +.logo.logo-dark { + display: block; +} + +html[data-menu-color=brand] .logo.logo-light, +html[data-menu-color=dark] .logo.logo-light, +html[data-bs-theme=dark] .logo.logo-light { + display: block; +} +html[data-menu-color=brand] .logo.logo-dark, +html[data-menu-color=dark] .logo.logo-dark, +html[data-bs-theme=dark] .logo.logo-dark { + display: none; +} + +.help-box { + border-radius: 5px; + padding: 20px; + margin: 65px 25px 25px; + position: relative; + background-color: var(--ct-help-box-bg); +} +.help-box .close-btn { + left: 10px; + top: 10px; + position: absolute; +} + +.wrapper { + height: 100%; + width: 100%; +} + +.content-page { + position: relative; + margin-right: var(--ct-leftbar-width); + min-height: calc(100vh - var(--ct-topbar-height) - 2px); + padding: 0 0.625rem var(--ct-footer-height); + -webkit-transition: all 0.25s ease-in-out; + transition: all 0.25s ease-in-out; +} + +.leftside-menu { + z-index: 1000; + bottom: 0; + top: 0; + position: fixed; + width: var(--ct-leftbar-width); + min-width: var(--ct-leftbar-width); + padding-bottom: calc(var(--ct-footer-height) + 0.625rem); + background: var(--ct-menu-bg); + -webkit-box-shadow: var(--ct-box-shadow); + box-shadow: var(--ct-box-shadow); + border-left: var(--ct-theme-card-border-width) solid var(--ct-border-color); + -webkit-transition: all 0.25s ease-in-out; + transition: all 0.25s ease-in-out; +} + +.leftbar-user { + background: url("../images/small/small-4.jpg") center center; + display: none; + position: relative; +} + +html[data-sidenav-user=true] .leftbar-user { + display: block; +} + +.side-nav { + padding-right: 0; + padding-bottom: 10px; + list-style-type: none; +} +.side-nav ul { + list-style-type: none; +} +.side-nav .side-nav-link { + display: block; + list-style: none; + position: relative; + white-space: nowrap; + color: var(--ct-menu-item-color); + -webkit-transition: all 0.25s ease-in-out; + transition: all 0.25s ease-in-out; + font-size: var(--ct-menu-item-font-size); + padding: var(--ct-menu-item-padding-y) var(--ct-menu-item-padding-x); +} +.side-nav .side-nav-link:hover, .side-nav .side-nav-link:focus, .side-nav .side-nav-link:active { + color: var(--ct-menu-item-hover-color); + text-decoration: none; +} +.side-nav .side-nav-link span { + vertical-align: middle; +} +.side-nav .side-nav-link i { + display: inline-block; + vertical-align: middle; + text-align: center; + font-size: var(--ct-menu-item-icon-size); + line-height: var(--ct-menu-item-icon-size); + width: var(--ct-menu-item-icon-width); +} +.side-nav .menu-arrow { + display: inline-block; + text-rendering: auto; + position: absolute; + top: 50%; + left: calc(var(--ct-menu-item-padding-x) * 0.5); + -webkit-transition: -webkit-transform 0.15s; + transition: -webkit-transform 0.15s; + transition: transform 0.15s; + transition: transform 0.15s, -webkit-transform 0.15s; + -webkit-transform: translate(50%, -50%); + transform: translate(50%, -50%); + line-height: var(--ct-menu-item-icon-size); + font-size: calc(var(--ct-menu-item-font-size) * 1.18); +} +.side-nav .menu-arrow:before { + content: "\ea6e"; + font-family: "remixicon"; +} +.side-nav .badge { + margin-top: calc(var(--ct-menu-item-font-size) * 0.25); + position: absolute; + left: 0; + margin-left: calc(var(--ct-menu-item-padding-x) * 1.5); +} +.side-nav .side-nav-title { + pointer-events: none; + cursor: default; + opacity: 0.5; + white-space: nowrap; + text-transform: uppercase; + color: var(--ct-menu-item-color); + font-weight: 700; + font-size: calc(var(--ct-menu-item-font-size) * 0.74); + padding: var(--ct-menu-item-padding-y) calc(var(--ct-menu-item-padding-x) * 1.5); +} +.side-nav .side-nav-item > a[aria-expanded=true] > span.menu-arrow { + -webkit-transform: translate(50%, -50%) rotate(-90deg); + transform: translate(50%, -50%) rotate(-90deg); +} +.side-nav .side-nav-item.menuitem-active > a:not(.collapsed) > span.menu-arrow { + -webkit-transform: translate(50%, -50%) rotate(-90deg); + transform: translate(50%, -50%) rotate(-90deg); +} +.side-nav .menuitem-active > a { + color: var(--ct-menu-item-active-color); +} +.side-nav .menuitem-active > a:hover, .side-nav .menuitem-active > a:focus, .side-nav .menuitem-active > a:active { + color: var(--ct-menu-item-active-color); +} +.side-nav .menuitem-active .menuitem-active .active { + color: var(--ct-menu-item-active-color); +} +.side-nav.bottom { + bottom: 0; + width: 100%; + position: absolute; +} + +*[dir=rtl] .side-nav .side-nav-item .menu-arrow:before { + content: "\f0141" !important; +} + +.side-nav-second-level li, +.side-nav-second-level .side-nav-item, +.side-nav-third-level li, +.side-nav-third-level .side-nav-item, +.side-nav-forth-level li, +.side-nav-forth-level .side-nav-item { + padding: 0; +} +.side-nav-second-level li a, +.side-nav-second-level li .side-nav-link, +.side-nav-second-level .side-nav-item a, +.side-nav-second-level .side-nav-item .side-nav-link, +.side-nav-third-level li a, +.side-nav-third-level li .side-nav-link, +.side-nav-third-level .side-nav-item a, +.side-nav-third-level .side-nav-item .side-nav-link, +.side-nav-forth-level li a, +.side-nav-forth-level li .side-nav-link, +.side-nav-forth-level .side-nav-item a, +.side-nav-forth-level .side-nav-item .side-nav-link { + white-space: nowrap; + color: var(--ct-menu-item-color); + display: block; + position: relative; + -webkit-transition: all 0.25s ease-in-out; + transition: all 0.25s ease-in-out; + font-size: calc(var(--ct-menu-item-font-size) * 0.95); + padding: calc(var(--ct-menu-item-padding-y) * 0.6) calc(var(--ct-menu-item-padding-x) * 1.25); +} +.side-nav-second-level li a:hover, .side-nav-second-level li a:focus, .side-nav-second-level li a:active, +.side-nav-second-level li .side-nav-link:hover, +.side-nav-second-level li .side-nav-link:focus, +.side-nav-second-level li .side-nav-link:active, +.side-nav-second-level .side-nav-item a:hover, +.side-nav-second-level .side-nav-item a:focus, +.side-nav-second-level .side-nav-item a:active, +.side-nav-second-level .side-nav-item .side-nav-link:hover, +.side-nav-second-level .side-nav-item .side-nav-link:focus, +.side-nav-second-level .side-nav-item .side-nav-link:active, +.side-nav-third-level li a:hover, +.side-nav-third-level li a:focus, +.side-nav-third-level li a:active, +.side-nav-third-level li .side-nav-link:hover, +.side-nav-third-level li .side-nav-link:focus, +.side-nav-third-level li .side-nav-link:active, +.side-nav-third-level .side-nav-item a:hover, +.side-nav-third-level .side-nav-item a:focus, +.side-nav-third-level .side-nav-item a:active, +.side-nav-third-level .side-nav-item .side-nav-link:hover, +.side-nav-third-level .side-nav-item .side-nav-link:focus, +.side-nav-third-level .side-nav-item .side-nav-link:active, +.side-nav-forth-level li a:hover, +.side-nav-forth-level li a:focus, +.side-nav-forth-level li a:active, +.side-nav-forth-level li .side-nav-link:hover, +.side-nav-forth-level li .side-nav-link:focus, +.side-nav-forth-level li .side-nav-link:active, +.side-nav-forth-level .side-nav-item a:hover, +.side-nav-forth-level .side-nav-item a:focus, +.side-nav-forth-level .side-nav-item a:active, +.side-nav-forth-level .side-nav-item .side-nav-link:hover, +.side-nav-forth-level .side-nav-item .side-nav-link:focus, +.side-nav-forth-level .side-nav-item .side-nav-link:active { + color: var(--ct-menu-item-hover-color); + padding-right: calc(var(--ct-menu-item-padding-x) * 1.75); +} +.side-nav-second-level li.active > a, +.side-nav-second-level .side-nav-item.active > a, +.side-nav-third-level li.active > a, +.side-nav-third-level .side-nav-item.active > a, +.side-nav-forth-level li.active > a, +.side-nav-forth-level .side-nav-item.active > a { + color: var(--ct-menu-item-active-color); +} +.side-nav-second-level li.active > a:hover, .side-nav-second-level li.active > a:focus, .side-nav-second-level li.active > a:active, +.side-nav-second-level .side-nav-item.active > a:hover, +.side-nav-second-level .side-nav-item.active > a:focus, +.side-nav-second-level .side-nav-item.active > a:active, +.side-nav-third-level li.active > a:hover, +.side-nav-third-level li.active > a:focus, +.side-nav-third-level li.active > a:active, +.side-nav-third-level .side-nav-item.active > a:hover, +.side-nav-third-level .side-nav-item.active > a:focus, +.side-nav-third-level .side-nav-item.active > a:active, +.side-nav-forth-level li.active > a:hover, +.side-nav-forth-level li.active > a:focus, +.side-nav-forth-level li.active > a:active, +.side-nav-forth-level .side-nav-item.active > a:hover, +.side-nav-forth-level .side-nav-item.active > a:focus, +.side-nav-forth-level .side-nav-item.active > a:active { + color: var(--ct-menu-item-active-color); +} + +.side-nav-second-level { + margin-top: calc(var(--ct-menu-item-padding-y) * -0.5); + padding-right: var(--ct-menu-item-icon-width); +} + +.side-nav-third-level, .side-nav-forth-level { + padding-right: calc(var(--ct-menu-item-padding-x) * 2); +} + +html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .navbar-custom { + z-index: 1005; + margin-right: var(--ct-leftbar-width-sm); +} +html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu { + position: absolute; + width: var(--ct-leftbar-width-sm); + min-width: var(--ct-leftbar-width-sm); +} +html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .simplebar-mask, +html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .simplebar-content-wrapper { + overflow: visible !important; +} +html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .simplebar-scrollbar { + display: none !important; +} +html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .simplebar-offset { + bottom: 0 !important; +} +html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .logo { + z-index: 1; + background: var(--ct-menu-bg); +} +html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .logo span.logo-lg { + display: none; +} +html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .logo span.logo-sm { + display: block; +} +html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .collapse, +html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .collapsing { + display: none; + height: inherit !important; + -webkit-transition: none !important; + transition: none !important; +} +html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .collapse .side-nav-second-level, +html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .collapse .side-nav-third-level, +html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .collapse .side-nav-forth-level, +html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .collapsing .side-nav-second-level, +html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .collapsing .side-nav-third-level, +html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .collapsing .side-nav-forth-level { + display: none !important; + padding: 0; + margin-top: 0; +} +html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .collapse .side-nav-second-level li a::before, +html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .collapse .side-nav-second-level li .side-nav-link::before, +html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .collapse .side-nav-third-level li a::before, +html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .collapse .side-nav-third-level li .side-nav-link::before, +html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .collapse .side-nav-forth-level li a::before, +html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .collapse .side-nav-forth-level li .side-nav-link::before, +html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .collapsing .side-nav-second-level li a::before, +html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .collapsing .side-nav-second-level li .side-nav-link::before, +html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .collapsing .side-nav-third-level li a::before, +html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .collapsing .side-nav-third-level li .side-nav-link::before, +html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .collapsing .side-nav-forth-level li a::before, +html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .collapsing .side-nav-forth-level li .side-nav-link::before { + display: none; +} +html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .collapse .side-nav-second-level .menu-arrow, +html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .collapse .side-nav-third-level .menu-arrow, +html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .collapse .side-nav-forth-level .menu-arrow, +html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .collapsing .side-nav-second-level .menu-arrow, +html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .collapsing .side-nav-third-level .menu-arrow, +html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .collapsing .side-nav-forth-level .menu-arrow { + left: var(--ct-menu-item-padding-x); + -webkit-transform: translate(50%, -50%); + transform: translate(50%, -50%); +} +html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-item { + position: relative; +} +html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-item .side-nav-link { + -webkit-transition: none; + transition: none; + padding: calc(var(--ct-menu-item-padding-y) + 4px) var(--ct-menu-item-padding-x); +} +html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-item .side-nav-link i { + min-width: calc(var(--ct-leftbar-width-sm) - var(--ct-menu-item-padding-x) * 2); + font-size: 1.25rem; +} +html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-item .side-nav-link:hover, html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-item .side-nav-link:active, html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-item .side-nav-link:focus { + color: var(--ct-menu-item-hover-color); +} +html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-item .side-nav-link span { + visibility: hidden; +} +html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-item .side-nav-link .menu-arrow { + -webkit-transform: translate(50%, -50%) rotate(-90deg); + transform: translate(50%, -50%) rotate(-90deg); + padding-right: 0 !important; +} +html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-item:hover .side-nav-link { + position: relative; + color: #fff; + background: var(--ct-menu-condensed-link-bg); + width: var(--ct-leftbar-width); +} +html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-item:hover .side-nav-link span { + visibility: visible; +} +html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-item:hover .side-nav-link span:not(.badge) { + margin-right: var(--ct-menu-item-padding-x); +} +html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-item:hover > .collapse, +html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-item:hover > .collapsing { + display: block !important; + -webkit-transition: none !important; + transition: none !important; +} +html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-item:hover > .collapse > ul, +html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-item:hover > .collapsing > ul { + display: block !important; + right: var(--ct-leftbar-width-sm); + position: absolute; + background: var(--ct-menu-bg); + -webkit-box-shadow: 0 2px 5px 0 rgba(27, 23, 30, 0.3); + box-shadow: 0 2px 5px 0 rgba(27, 23, 30, 0.3); + width: calc(var(--ct-leftbar-width) - var(--ct-leftbar-width-sm)); +} +html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-item:hover > .collapse > ul a, +html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-item:hover > .collapsing > ul a { + -webkit-box-shadow: none; + box-shadow: none; + position: relative; + width: calc(var(--ct-leftbar-width) - var(--ct-leftbar-width-sm)); + padding: calc(var(--ct-menu-item-padding-y) * 0.9) calc(var(--ct-menu-item-padding-x) * 2); +} +html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-item:hover > .collapse > ul a:hover, +html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-item:hover > .collapsing > ul a:hover { + color: var(--ct-menu-item-hover-color); +} +html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-item:hover > .collapse > ul li:hover > .collapse, +html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-item:hover > .collapse > ul li:hover > .collapsing, +html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-item:hover > .collapsing > ul li:hover > .collapse, +html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-item:hover > .collapsing > ul li:hover > .collapsing { + display: block !important; + height: auto !important; + -webkit-transition: none !important; + transition: none !important; +} +html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-item:hover > .collapse > ul li:hover > .collapse > ul, +html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-item:hover > .collapse > ul li:hover > .collapsing > ul, +html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-item:hover > .collapsing > ul li:hover > .collapse > ul, +html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-item:hover > .collapsing > ul li:hover > .collapsing > ul { + display: block !important; + position: absolute !important; + top: 0; + right: calc(var(--ct-leftbar-width) - var(--ct-leftbar-width-sm)); + width: calc(var(--ct-leftbar-width) - var(--ct-leftbar-width-sm)); +} +html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .help-box, +html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .side-nav-title, +html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftbar-user { + display: none; +} +html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .content-page { + margin-right: var(--ct-leftbar-width-sm); + min-height: var(--ct-leftbar-condensed-height); +} + +html[data-sidenav-size=compact]:not([data-layout=topnav]) .wrapper .navbar-custom { + margin-right: var(--ct-leftbar-width-md); +} +html[data-sidenav-size=compact]:not([data-layout=topnav]) .wrapper .leftside-menu { + width: var(--ct-leftbar-width-md); + min-width: var(--ct-leftbar-width-md); +} +html[data-sidenav-size=compact]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-title { + text-align: center; + padding: var(--ct-menu-item-padding-y) calc(var(--ct-menu-item-padding-x)); +} +html[data-sidenav-size=compact]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-item { + text-align: center; + padding: var(--ct-menu-item-padding-y) calc(var(--ct-menu-item-padding-x) * 1.5); +} +html[data-sidenav-size=compact]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-link { + padding: var(--ct-menu-item-padding-y) var(--ct-menu-item-padding-x); + text-align: center; +} +html[data-sidenav-size=compact]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-link i { + display: block; + text-align: center; + margin: 0 0 calc(var(--ct-menu-item-padding-y) * 1 / 3); + width: auto; +} +html[data-sidenav-size=compact]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-link span { + margin-right: 0; +} +html[data-sidenav-size=compact]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-link .badge { + display: none; +} +html[data-sidenav-size=compact]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-second-level, +html[data-sidenav-size=compact]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-third-level, +html[data-sidenav-size=compact]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-forth-level { + padding: 0; +} +html[data-sidenav-size=compact]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-second-level .menu-arrow, +html[data-sidenav-size=compact]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-third-level .menu-arrow, +html[data-sidenav-size=compact]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-forth-level .menu-arrow { + display: inline-block; + left: var(--ct-menu-item-padding-x); +} +html[data-sidenav-size=compact]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-second-level li a, +html[data-sidenav-size=compact]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-second-level li .side-nav-link, +html[data-sidenav-size=compact]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-third-level li a, +html[data-sidenav-size=compact]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-third-level li .side-nav-link, +html[data-sidenav-size=compact]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-forth-level li a, +html[data-sidenav-size=compact]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-forth-level li .side-nav-link { + padding: calc(var(--ct-menu-item-padding-y) * 0.8) calc(var(--ct-menu-item-padding-x)); + text-align: center; +} +html[data-sidenav-size=compact]:not([data-layout=topnav]) .wrapper .help-box, +html[data-sidenav-size=compact]:not([data-layout=topnav]) .wrapper .menu-arrow { + display: none; +} +html[data-sidenav-size=compact]:not([data-layout=topnav]) .wrapper .content-page { + margin-right: var(--ct-leftbar-width-md); +} + +html[data-sidenav-size=sm-hover]:not([data-layout=topnav]) .wrapper .content-page { + margin-right: var(--ct-leftbar-width-sm); +} +html[data-sidenav-size=sm-hover]:not([data-layout=topnav]) .wrapper .navbar-custom { + margin-right: var(--ct-leftbar-width-sm); +} +html[data-sidenav-size=sm-hover]:not([data-layout=topnav]) .wrapper .navbar-custom .button-toggle-menu { + display: none; +} +html[data-sidenav-size=sm-hover]:not([data-layout=topnav]) .wrapper .navbar-custom .app-search { + padding-right: 10px; +} +html[data-sidenav-size=sm-hover]:not([data-layout=topnav]) .wrapper .leftside-menu:not(:hover) { + width: var(--ct-leftbar-width-sm); + min-width: var(--ct-leftbar-width-sm); +} +html[data-sidenav-size=sm-hover]:not([data-layout=topnav]) .wrapper .leftside-menu:not(:hover) .simplebar-scrollbar:before { + background: transparent; +} +html[data-sidenav-size=sm-hover]:not([data-layout=topnav]) .wrapper .leftside-menu:not(:hover) .logo .logo-sm { + display: block; + text-align: center; +} +html[data-sidenav-size=sm-hover]:not([data-layout=topnav]) .wrapper .leftside-menu:not(:hover) .logo .logo-lg { + display: none; +} +html[data-sidenav-size=sm-hover]:not([data-layout=topnav]) .wrapper .leftside-menu:not(:hover) .side-nav-item .side-nav-link span { + visibility: hidden; +} +html[data-sidenav-size=sm-hover]:not([data-layout=topnav]) .wrapper .leftside-menu:not(:hover) .side-nav-item .side-nav-link i { + min-width: calc(var(--ct-leftbar-width-sm) - var(--ct-menu-item-padding-x) * 2); + font-size: 1.25rem; +} +html[data-sidenav-size=sm-hover]:not([data-layout=topnav]) .wrapper .leftside-menu:not(:hover) .side-nav-title, html[data-sidenav-size=sm-hover]:not([data-layout=topnav]) .wrapper .leftside-menu:not(:hover) .leftbar-user { + display: none; +} +html[data-sidenav-size=sm-hover]:not([data-layout=topnav]) .wrapper .leftside-menu:not(:hover) .help-box, +html[data-sidenav-size=sm-hover]:not([data-layout=topnav]) .wrapper .leftside-menu:not(:hover) .button-sm-hover { + visibility: hidden; +} +html[data-sidenav-size=sm-hover]:not([data-layout=topnav]) .wrapper .leftside-menu:not(:hover) .side-nav-second-level, +html[data-sidenav-size=sm-hover]:not([data-layout=topnav]) .wrapper .leftside-menu:not(:hover) .side-nav-third-level, +html[data-sidenav-size=sm-hover]:not([data-layout=topnav]) .wrapper .leftside-menu:not(:hover) .side-nav-forth-level { + height: 0; + opacity: 0; +} +html[data-sidenav-size=sm-hover]:not([data-layout=topnav]) .wrapper .leftside-menu .simplebar-horizontal .simplebar-scrollbar:before { + background: transparent; +} +html[data-sidenav-size=sm-hover]:not([data-layout=topnav]) .wrapper .leftside-menu .logo { + text-align: right; +} +html[data-sidenav-size=sm-hover]:not([data-layout=topnav]) .wrapper .leftside-menu:hover { + z-index: 1045; +} +html[data-sidenav-size=sm-hover]:not([data-layout=topnav]) .wrapper .leftside-menu .button-sm-hover { + display: block; +} +html[data-sidenav-size=sm-hover]:not([data-layout=topnav]) .wrapper .leftside-menu .help-box { + display: none; +} + +.button-sm-hover { + cursor: pointer; + display: none; + left: calc(var(--ct-leftbar-width-sm) * 0.5 - var(--ct-logo-sm-height) * 0.7); + top: 0; + position: absolute; + font-size: var(--ct-menu-item-icon-size); + line-height: var(--ct-topbar-height); + z-index: 1; + color: var(--ct-menu-item-color); +} +.button-sm-hover:hover, .button-sm-hover:focus, .button-sm-hover:active { + color: var(--ct-menu-item-hover-color); +} + +html[data-sidenav-size=sm-hover-active]:not([data-layout=topnav]) .button-toggle-menu { + display: none; +} +html[data-sidenav-size=sm-hover-active]:not([data-layout=topnav]) .app-search { + padding-right: 10px; +} +html[data-sidenav-size=sm-hover-active]:not([data-layout=topnav]) .leftside-menu .logo { + text-align: right; +} +html[data-sidenav-size=sm-hover-active]:not([data-layout=topnav]) .leftside-menu .button-sm-hover { + display: block; +} +html[data-sidenav-size=sm-hover-active]:not([data-layout=topnav]) .leftside-menu .button-sm-hover .ri-checkbox-blank-circle-line:before { + content: "\f05a"; +} + +.button-close-fullsidebar { + cursor: pointer; + display: none; + left: calc(var(--ct-leftbar-width-sm) * 0.5 - var(--ct-logo-sm-height) * 0.7); + top: 0; + position: absolute; + font-size: var(--ct-menu-item-icon-size); + line-height: var(--ct-topbar-height); + z-index: 1; + color: var(--ct-menu-item-color); +} +.button-close-fullsidebar:hover, .button-close-fullsidebar:focus, .button-close-fullsidebar:active { + color: var(--ct-menu-item-hover-color); +} + +html[data-sidenav-size=full]:not([data-layout=topnav]) .navbar-custom { + margin-right: 0; +} +html[data-sidenav-size=full]:not([data-layout=topnav]) .navbar-custom .logo-topbar { + display: inline-block; +} +html[data-sidenav-size=full]:not([data-layout=topnav]) .button-close-fullsidebar { + display: block; +} +html[data-sidenav-size=full]:not([data-layout=topnav]) .leftside-menu { + margin-right: calc(var(--ct-leftbar-width) * -1); + border-color: transparent; + opacity: 0; +} +html[data-sidenav-size=full]:not([data-layout=topnav]) .leftside-menu .logo { + text-align: right; +} +html[data-sidenav-size=full]:not([data-layout=topnav]) .content-page { + margin-right: 0; +} +html[data-sidenav-size=full]:not([data-layout=topnav]).sidebar-enable .leftside-menu { + opacity: 1; + z-index: 1055; + margin-right: 0; +} + +html[data-sidenav-size=fullscreen]:not([data-layout=topnav]) .navbar-custom { + margin-right: 0; +} +html[data-sidenav-size=fullscreen]:not([data-layout=topnav]) .leftside-menu { + margin-right: calc(var(--ct-leftbar-width) * -1); + opacity: 0; +} +html[data-sidenav-size=fullscreen]:not([data-layout=topnav]) .content-page { + margin-right: 0; +} + +html[data-layout-mode=detached]:not([data-layout=topnav]) .wrapper { + max-width: 95%; + margin: 0 auto; +} +html[data-layout-mode=detached]:not([data-layout=topnav]) .wrapper .navbar-custom { + z-index: 1005; + margin: 0 -2.65%; +} +html[data-layout-mode=detached]:not([data-layout=topnav]) .wrapper .navbar-custom .topbar { + max-width: 95%; +} +html[data-layout-mode=detached]:not([data-layout=topnav]) .wrapper .leftside-menu { + bottom: 0.625rem; + top: calc(var(--ct-topbar-height) + 1.25rem * 0.5); + border-radius: 0.5rem; + border: var(--ct-theme-card-border-width) solid var(--ct-border-color); + padding-bottom: 0; +} +html[data-layout-mode=detached]:not([data-layout=topnav]) .wrapper .leftside-menu .button-sm-hover { + top: var(--ct-menu-item-padding-y); + line-height: 1; +} +html[data-layout-mode=detached]:not([data-layout=topnav]) .wrapper .footer { + left: 0.625rem; + right: 0.625rem; + bottom: 0.625rem; + border-radius: 0.5rem; + border: 1px solid var(--ct-border-color); +} +html[data-layout-mode=detached]:not([data-layout=topnav]) .logo { + visibility: hidden; + height: 0; +} +html[data-layout-mode=detached]:not([data-layout=topnav]) .logo-topbar { + display: block; +} +html[data-layout-mode=detached]:not([data-layout=topnav]) .leftbar-user { + border-radius: 0.5rem 0.5rem 0 0; +} +html[data-layout-mode=detached]:not([data-layout=topnav])[data-sidenav-size=full] .wrapper .leftside-menu { + padding-bottom: calc(var(--ct-footer-height) + 0.625rem); + top: 0.625rem; + right: 0.625rem; +} +html[data-layout-mode=detached]:not([data-layout=topnav])[data-sidenav-size=full] .wrapper .leftside-menu .logo { + top: 0.625rem; + visibility: visible; + height: auto; +} +html[data-layout-mode=detached]:not([data-layout=topnav])[data-sidenav-size=full] .wrapper .leftside-menu .logo span.logo-lg { + display: block; +} + +@media (min-width: 1400px) { + html[data-layout-mode=boxed] body { + background-color: var(--ct-tertiary-bg); + } + html[data-layout-mode=boxed] .wrapper { + margin: 0 auto; + -webkit-box-shadow: var(--ct-box-shadow); + box-shadow: var(--ct-box-shadow); + max-width: 1300px; + background-color: var(--ct-body-bg); + } +} +@media (min-width: 992px) { + html[data-layout-position=scrollable] .wrapper { + display: block; + } + html[data-layout-position=scrollable] .wrapper .leftside-menu { + position: absolute; + padding-top: 0 !important; + } + html[data-layout-position=scrollable] .wrapper .leftside-menu .logo { + position: relative; + } + html[data-layout-position=scrollable] .wrapper .leftside-menu #leftside-menu-container { + height: calc(100% - var(--ct-topbar-height)) !important; + } + html[data-layout-position=scrollable] .navbar-custom { + position: static !important; + } + html[data-layout-position=scrollable][data-layout=topnav] .topnav { + position: static; + } +} +@media (max-width: 767.98px) { + html[data-layout-mode=detached]:not([data-layout=topnav]) .wrapper { + max-width: 100% !important; + } + html[data-layout-mode=detached]:not([data-layout=topnav]) .wrapper .navbar-custom { + margin: 0; + padding: 0; + } +} +.navbar-custom { + background: var(--ct-topbar-bg); + -webkit-box-shadow: var(--ct-box-shadow); + box-shadow: var(--ct-box-shadow); + min-height: var(--ct-topbar-height); + margin-right: var(--ct-leftbar-width); + position: sticky; + top: 0; + -webkit-transition: all 0.25s ease-in-out; + transition: all 0.25s ease-in-out; + z-index: 1000; + border-bottom: var(--ct-theme-card-border-width) solid var(--ct-border-color); +} +.navbar-custom .topbar { + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-pack: justify; + -ms-flex-pack: justify; + justify-content: space-between; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + margin: 0 auto; +} +.navbar-custom .topbar .app-search form { + height: var(--ct-topbar-height); + max-width: 320px; +} +.navbar-custom .topbar .app-search form .form-control { + color: var(--ct-topbar-item-color); + background-color: var(--ct-topbar-search-bg); +} +.navbar-custom .topbar .app-search form span.search-icon { + color: var(--ct-topbar-item-color); +} +.navbar-custom .topbar-menu { + position: relative; + list-style-type: none; + margin-bottom: 0; +} +.navbar-custom .topbar-menu li { + max-height: var(--ct-topbar-height); +} +.navbar-custom .topbar-menu li .nav-link.show { + color: var(--ct-topbar-item-hover-color); +} +.navbar-custom .topbar-menu .nav-link { + padding: 0; + position: relative; + color: var(--ct-topbar-item-color); + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + height: var(--ct-topbar-height); + cursor: pointer; +} +.navbar-custom .topbar-menu .nav-link:hover { + color: var(--ct-topbar-item-hover-color); +} + +.logo-topbar { + float: right; + display: none; + line-height: var(--ct-topbar-height); + padding: 0 0.625rem; +} +.logo-topbar .logo-sm { + display: none; +} +.logo-topbar .logo-light { + display: none; +} +.logo-topbar .logo-dark { + display: block; +} + +html[data-topbar-color=brand] .logo-topbar .logo-light, +html[data-topbar-color=dark] .logo-topbar .logo-light, +html[data-bs-theme=dark] .logo-topbar .logo-light { + display: block; +} +html[data-topbar-color=brand] .logo-topbar .logo-dark, +html[data-topbar-color=dark] .logo-topbar .logo-dark, +html[data-bs-theme=dark] .logo-topbar .logo-dark { + display: none; +} + +html[data-bs-theme=dark] #light-dark-mode .ri-moon-fill::before { + content: "\f1bc"; +} + +.button-toggle-menu { + border: none; + color: var(--ct-topbar-item-color); + width: 60px; + background-color: transparent; + font-size: 24px; + cursor: pointer; + z-index: 1; + position: relative; +} + +.app-search { + position: static; + overflow-y: hidden; +} +.app-search form { + display: -webkit-box; + display: -ms-flexbox; + display: flex; + overflow: hidden; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; +} +.app-search form .form-control { + border: none; + height: calc(1.5em + 0.9rem + calc(var(--ct-border-width) * 2)); + padding-right: 35px; + padding-left: 20px; + background-color: var(--ct-light); + -webkit-box-shadow: none; + box-shadow: none; +} +.app-search form span.search-icon { + position: absolute; + z-index: 4; + font-size: 16px; + line-height: 38px; + right: 10px; + top: 0; + z-index: 5; + color: var(--ct-secondary); +} +.app-search form .input-group input[type=search]::-webkit-input-placeholder { + color: var(--ct-topbar-item-color); +} +.app-search form .input-group input[type=search]::-moz-placeholder { + color: var(--ct-topbar-item-color); +} +.app-search form .input-group input[type=search]:-ms-input-placeholder { + color: var(--ct-topbar-item-color); +} +.app-search form .input-group input[type=search]::-ms-input-placeholder { + color: var(--ct-topbar-item-color); +} +.app-search form .input-group input[type=search]::placeholder { + color: var(--ct-topbar-item-color); +} +.app-search form .input-group-text { + margin-right: 0; + z-index: 4; +} +.app-search form .dropdown-menu { + z-index: 1060; +} + +.notification-list { + margin-right: 0; +} +.notification-list .noti-title { + background-color: transparent; + padding: 15px 20px; +} +.notification-list .noti-icon-badge { + display: inline-block; + position: absolute; + top: 22px; + left: 1px; + border-radius: 50%; + height: 7px; + width: 7px; + background-color: #f7473a; +} +.notification-list .notify-item { + padding: 10px 20px; +} +.notification-list .notify-item.unread-noti { + background-color: var(--ct-tertiary-bg); +} +.notification-list .notify-item.read-noti { + background-color: transparent; + -webkit-transition: all 0.2s ease-in-out; + transition: all 0.2s ease-in-out; +} +.notification-list .notify-item.read-noti:hover { + background-color: var(--ct-tertiary-bg); +} +.notification-list .notify-item .card-body { + padding: 14px; +} +.notification-list .notify-item .card-body .noti-close-btn { + position: absolute; + top: 3px; + left: 15px; +} +.notification-list .notify-item .card-body .noti-item-title { + margin: 0 0 2px; +} +.notification-list .notify-item .card-body .noti-item-title, +.notification-list .notify-item .card-body .noti-item-subtitle { + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap; +} +.notification-list .notify-item .notify-icon { + float: right; + height: 36px; + width: 36px; + line-height: 36px; + text-align: center; + border-radius: 50%; + color: #fff; +} +.notification-list .notify-item .notify-details { + margin-bottom: 0; + overflow: hidden; + margin-right: 45px; +} +.notification-list .notify-item .notify-details b { + font-weight: 500; +} +.notification-list .notify-item .notify-details small, .notification-list .notify-item .notify-details .small { + display: block; +} + +.profile-dropdown { + min-width: 170px; +} + +.nav-user { + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + gap: 10px; + border-width: 0 1px; + border-style: solid; + border-color: var(--ct-topbar-user-border); + background-color: var(--ct-topbar-user-bg); + min-height: var(--ct-topbar-height); + -webkit-transition: none; + transition: none; +} + +.fullscreen-enable .ri-fullscreen-line::before { + content: "\ed9a"; +} + +@media (max-width: 375px) { + .navbar-custom .button-toggle-menu { + width: auto; + } + .logo-topbar { + display: none !important; + } +} +@media (max-width: 575.98px) { + .navbar-custom .topbar-menu { + position: initial; + } + .navbar-custom .dropdown { + position: static; + } + .navbar-custom .dropdown .dropdown-menu { + right: 10px !important; + left: 10px !important; + } +} +@media (max-width: 767.98px) { + .navbar-custom { + padding: 0 0.625rem; + } + .logo-topbar { + display: block; + } + .logo-topbar span.logo-lg { + display: none; + } + .logo-topbar span.logo-sm { + display: block; + } +} +#theme-settings-offcanvas { + width: 260px; +} + +.page-title-box .page-title { + font-size: 18px; + margin: 0; + line-height: 60px; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; +} +.page-title-box .breadcrumb { + padding: 0; +} + +.page-title-box-sm .page-title { + line-height: 1 !important; + margin-bottom: 25px; +} +.page-title-box-sm .page-title-right { + float: left; + margin-top: 0; +} +.page-title-box-sm .breadcrumb { + padding-top: 0; + margin-top: -3px !important; +} + +.text-title { + color: var(--ct-secondary-color); +} +.text-title:hover { + color: var(--ct-tertiary-color); +} + +@media (max-width: 767.98px) { + .page-title-box .page-title { + display: block; + white-space: nowrap; + text-overflow: ellipsis; + overflow: hidden; + line-height: 70px; + } + .page-title-box .breadcrumb { + display: none; + } + .page-title-box .page-title-left { + display: none; + } +} +@media (max-width: 419px) { + .page-title-box .breadcrumb { + display: none; + } +} +.footer { + position: absolute; + left: 0; + bottom: 0; + right: 0; + height: var(--ct-footer-height); + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + padding: 0 1.25rem; + color: var(--ct-gray-600); + -webkit-transition: all 0.25s ease-in-out; + transition: all 0.25s ease-in-out; + border-top: 1px solid var(--ct-border-color); +} +.footer .footer-links a { + color: var(--ct-gray-600); + margin-right: 1.25rem; + -webkit-transition: all 0.4s; + transition: all 0.4s; +} +.footer .footer-links a:hover { + color: var(--ct-gray-600); +} +.footer .footer-links a:first-of-type { + margin-right: 0; +} + +.footer-alt { + border: none; + text-align: center; + -webkit-box-pack: center; + -ms-flex-pack: center; + justify-content: center; +} + +html[data-layout-mode=detached]:not([data-layout=topnav]) .footer .container-fluid, html[data-layout-mode=detached]:not([data-layout=topnav]) .footer .container-sm, html[data-layout-mode=detached]:not([data-layout=topnav]) .footer .container-md, html[data-layout-mode=detached]:not([data-layout=topnav]) .footer .container-lg, html[data-layout-mode=detached]:not([data-layout=topnav]) .footer .container-xl, html[data-layout-mode=detached]:not([data-layout=topnav]) .footer .container-xxl { + max-width: 100%; + padding: 0; +} + +@media (max-width: 767.98px) { + .footer { + text-align: center; + } +} +html[data-layout=topnav] .navbar-custom { + margin: 0; + padding: 0; + z-index: 1005; + -webkit-box-shadow: none; + box-shadow: none; +} +html[data-layout=topnav] .navbar-custom .logo-topbar { + display: block; +} +html[data-layout=topnav] .navbar-custom .button-toggle-menu { + display: none; +} +html[data-layout=topnav] .content-page { + margin-right: 0; + padding: 0 0 var(--ct-topbar-height); +} +html[data-layout=topnav] .container-fluid, html[data-layout=topnav] .container-sm, html[data-layout=topnav] .container-md, html[data-layout=topnav] .container-lg, html[data-layout=topnav] .container-xl, html[data-layout=topnav] .container-xxl { + padding-left: 1.25rem; + padding-right: 1.25rem; +} +html[data-layout=topnav] .topnav { + width: 100%; + z-index: 1000; + position: sticky; + top: var(--ct-topbar-height); + background: var(--ct-menu-bg); + -webkit-box-shadow: var(--ct-box-shadow); + box-shadow: var(--ct-box-shadow); + border-top: 1px solid var(--ct-topbar-user-border); +} +html[data-layout=topnav] .topnav .navbar { + margin: 0; + padding: 0; +} +html[data-layout=topnav] .topnav .navbar-nav .nav-link { + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + position: relative; + font-size: var(--ct-menu-item-font-size); + padding: calc(var(--ct-menu-item-padding-y) * 1.2) calc(var(--ct-menu-item-padding-x) * 2); +} +html[data-layout=topnav] .topnav .navbar-nav .nav-link i { + font-size: var(--ct-menu-item-icon-size); + margin-left: calc(var(--ct-menu-item-icon-size) * 0.5); +} +html[data-layout=topnav] .topnav .navbar-nav .dropdown .dropdown-menu { + font-size: calc(0.875rem - 0); +} +html[data-layout=topnav] .topnav .navbar-nav .dropdown .dropdown-menu .dropdown-item { + padding: calc(var(--ct-menu-item-padding-y) * 0.75) calc(var(--ct-menu-item-padding-x) * 2.4); +} +html[data-layout=topnav] .topnav .nav-item > a, +html[data-layout=topnav] .topnav .nav-item .nav-link { + color: var(--ct-menu-item-color); +} +html[data-layout=topnav] .topnav .nav-item > a:hover, +html[data-layout=topnav] .topnav .nav-item .nav-link:hover { + color: var(--ct-menu-item-hover-color); +} +html[data-layout=topnav] .topnav .nav-item.active > a { + color: var(--ct-menu-item-active-color); +} +html[data-layout=topnav] .arrow-down { + display: inline-block; + display: inline-block; + text-rendering: auto; + margin-right: calc(var(--ct-menu-item-padding-x) * 1); + font-size: calc(var(--ct-menu-item-font-size) * 1.18); +} +html[data-layout=topnav] .arrow-down:before { + content: "\ea4e"; + font-family: "remixicon"; +} +html[data-layout=topnav] #sidebar-size, +html[data-layout=topnav] #layout-detached, +html[data-layout=topnav] #sidebar-user { + display: none; +} +html[data-layout=topnav] #topnav-color { + display: block; +} + +#topnav-color { + display: none; +} + +.navbar-toggle { + display: none; + position: relative; + cursor: pointer; + float: right; + padding: 0; + background-color: transparent; + color: var(--ct-topbar-item-color); + border: none; +} +.navbar-toggle .lines { + width: 25px; + display: block; + position: relative; + height: 16px; + -webkit-transition: all 0.5s ease; + transition: all 0.5s ease; +} +.navbar-toggle span { + height: 2px; + width: 100%; + background-color: var(--ct-topbar-item-color); + display: block; + margin-bottom: 5px; + -webkit-transition: -webkit-transform 0.5s ease; + transition: -webkit-transform 0.5s ease; + transition: transform 0.5s ease; + transition: transform 0.5s ease, -webkit-transform 0.5s ease; +} +.navbar-toggle.open span { + position: absolute; +} +.navbar-toggle.open span:first-child { + top: 7px; + -webkit-transform: rotate(-45deg); + transform: rotate(-45deg); +} +.navbar-toggle.open span:nth-child(2) { + visibility: hidden; +} +.navbar-toggle.open span:last-child { + width: 100%; + top: 7px; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); +} + +@media (min-width: 992px) { + html[data-layout=topnav] .container-fluid, html[data-layout=topnav] .container-sm, html[data-layout=topnav] .container-md, html[data-layout=topnav] .container-lg, html[data-layout=topnav] .container-xl, html[data-layout=topnav] .container-xxl { + max-width: 95%; + } + html[data-layout=topnav][data-layout-mode=boxed] .container-fluid, html[data-layout=topnav][data-layout-mode=boxed] .container-sm, html[data-layout=topnav][data-layout-mode=boxed] .container-md, html[data-layout=topnav][data-layout-mode=boxed] .container-lg, html[data-layout=topnav][data-layout-mode=boxed] .container-xl, html[data-layout=topnav][data-layout-mode=boxed] .container-xxl { + max-width: 97%; + } + .topnav .navbar-nav .nav-item:first-of-type .nav-link { + padding-right: 0; + } + .topnav .dropdown .dropdown-menu { + margin-top: 0; + border-radius: 0 0 0.15rem 0.15rem; + min-width: calc(var(--ct-dropdown-min-width) + var(--ct-menu-item-font-size) * 1.5); + font-size: calc(0.875rem - 0); + } + .topnav .dropdown .dropdown-menu .arrow-down { + font-size: var(--ct-menu-item-font-size); + -webkit-transform: rotate(-270deg); + transform: rotate(-270deg); + position: absolute; + left: var(--ct-menu-item-padding-x); + } + .topnav .dropdown .dropdown-menu .dropdown .dropdown-menu { + position: absolute; + top: 0; + right: 100%; + display: none; + } + .topnav .dropdown:hover > .dropdown-menu { + display: block; + } + .topnav .dropdown:hover > .dropdown-menu > .dropdown:hover > .dropdown-menu { + display: block; + } + .topnav .dropdown.active > a.dropdown-item { + color: var(--ct-tertiary-color); + background-color: var(--ct-tertiary-bg); + } +} +@media (max-width: 991.98px) { + html[data-layout=topnav] .topnav { + max-height: 360px; + overflow-y: auto; + } + html[data-layout=topnav] .topnav .navbar-nav .nav-link { + padding: calc(var(--ct-menu-item-padding-y) * 0.8) calc(var(--ct-menu-item-padding-x) * 2); + } + html[data-layout=topnav] .topnav .dropdown .dropdown-menu { + background-color: transparent; + border: none; + -webkit-box-shadow: none; + box-shadow: none; + padding-right: calc(var(--ct-menu-item-padding-x) * 3); + margin-top: calc(var(--ct-menu-item-padding-y) * -0.75); + } + html[data-layout=topnav] .topnav .dropdown .dropdown-menu .dropdown-menu { + margin-top: calc(var(--ct-menu-item-padding-y) * -0.5); + padding-right: calc(var(--ct-menu-item-padding-x) * 1.5); + } + html[data-layout=topnav] .topnav .dropdown .dropdown-item { + position: relative; + background-color: transparent; + } + html[data-layout=topnav] .topnav .dropdown .dropdown-item { + color: var(--ct-menu-item-color); + } + html[data-layout=topnav] .topnav .dropdown .dropdown-item.hover { + color: var(--ct-menu-item-hover-color); + } + html[data-layout=topnav] .topnav .dropdown .dropdown-item.active, html[data-layout=topnav] .topnav .dropdown .dropdown-item:active { + color: var(--ct-menu-item-active-color); + } + html[data-layout=topnav] .topnav .dropdown.active > a.dropdown-item { + color: var(--ct-menu-item-active-color); + } + html[data-layout=topnav] .topnav .arrow-down { + font-size: var(--ct-menu-item-font-size); + -webkit-transform: rotate(-270deg); + transform: rotate(-270deg); + position: absolute; + left: var(--ct-menu-item-padding-x); + } + html[data-layout=topnav] .navbar-toggle { + display: block; + } +} +@media (min-width: 1400px) { + html[data-layout=topnav] .container-fluid, html[data-layout=topnav] .container-sm, html[data-layout=topnav] .container-md, html[data-layout=topnav] .container-lg, html[data-layout=topnav] .container-xl, html[data-layout=topnav] .container-xxl { + max-width: 85%; + } +} +[data-bs-theme=dark] { + --ct-light: #464f5b; + --ct-light-rgb: 70, 79, 91; + --ct-dark: #637385; + --ct-dark-rgb: 99, 115, 133; +} + +.accordion-header { + margin: 0; +} + +.accordion > .card > .card-header { + border-radius: 0; + margin-bottom: -1px; +} + +.alert { + -webkit-box-shadow: -2px 2px 3px rgba(27, 23, 30, 0.1); + box-shadow: -2px 2px 3px rgba(27, 23, 30, 0.1); +} + +.avatar-xxs { + height: 1.5rem; + width: 1.5rem; +} + +.avatar-xs { + height: 2rem; + width: 2rem; +} + +.avatar-sm { + height: 2.5rem; + width: 2.5rem; +} + +.avatar-md { + height: 4.5rem; + width: 4.5rem; +} + +.avatar-lg { + height: 6rem; + width: 6rem; +} + +.avatar-xl { + height: 7.5rem; + width: 7.5rem; +} + +.avatar-title { + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + background-color: var(--ct-primary); + color: #fff; + display: -webkit-box; + display: -ms-flexbox; + display: flex; + height: 100%; + -webkit-box-pack: center; + -ms-flex-pack: center; + justify-content: center; + width: 100%; +} + +.avatar-group { + padding-right: 12px; + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -ms-flex-wrap: wrap; + flex-wrap: wrap; +} +.avatar-group .avatar-group-item { + margin-right: -12px; + border-radius: 50%; + -webkit-transition: all 0.2s; + transition: all 0.2s; +} +.avatar-group .avatar-group-item:hover { + position: relative; + -webkit-transform: translateY(-2px); + transform: translateY(-2px); + z-index: 1; +} + +.breadcrumb-item + .breadcrumb-item::before { + font-family: "remixicon"; + font-size: 16px; + line-height: 1.3; +} + +.btn { + -webkit-box-shadow: -2px 2px 3px rgba(27, 23, 30, 0.1); + box-shadow: -2px 2px 3px rgba(27, 23, 30, 0.1); +} + +.btn-link { + -webkit-box-shadow: none; + box-shadow: none; +} + +.btn-primary { + --ct-btn-bg: var(--ct-primary); + --ct-btn-border-color: var(--ct-primary); + --ct-btn-hover-bg: var(--ct-primary-text-emphasis); + --ct-btn-hover-border-color: var(--ct-primary-text-emphasis); + --ct-btn-focus-shadow-rgb: var(--ct-primary-rgb); + --ct-btn-active-bg: var(--ct-primary-text-emphasis); + --ct-btn-active-border-color: var(--ct-primary-text-emphasis); +} + +.btn-outline-primary { + --ct-btn-color: var(--ct-primary); + --ct-btn-bg: transparent; + --ct-btn-border-color: var(--ct-primary); + --ct-btn-hover-bg: var(--ct-primary); + --ct-btn-hover-border-color: var(--ct-primary); + --ct-btn-focus-shadow-rgb: var(--ct-primary-rgb); + --ct-btn-active-bg: var(--ct-primary); + --ct-btn-active-border-color: var(--ct-primary); +} + +.btn-soft-primary { + --ct-btn-color: var(--ct-primary); + --ct-btn-bg: var(--ct-primary-bg-subtle); + --ct-btn-border-color: transparent; + --ct-btn-hover-bg: var(--ct-primary); + --ct-btn-hover-border-color: var(--ct-primary); + --ct-btn-active-bg: var(--ct-primary); + --ct-btn-active-border-color: var(--ct-primary); + --ct-btn-disabled-color: var(--ct-primary); + --ct-btn-disabled-bg: var(--ct-primary); + --ct-btn-disabled-border-color: var(--ct-primary); + --ct-btn-focus-shadow-rgb: 0 0 0 $btn-focus-width rgba(var(--ct-primary)-rgb, 0.5); +} + +.btn-secondary { + --ct-btn-bg: var(--ct-secondary); + --ct-btn-border-color: var(--ct-secondary); + --ct-btn-hover-bg: var(--ct-secondary-text-emphasis); + --ct-btn-hover-border-color: var(--ct-secondary-text-emphasis); + --ct-btn-focus-shadow-rgb: var(--ct-secondary-rgb); + --ct-btn-active-bg: var(--ct-secondary-text-emphasis); + --ct-btn-active-border-color: var(--ct-secondary-text-emphasis); +} + +.btn-outline-secondary { + --ct-btn-color: var(--ct-secondary); + --ct-btn-bg: transparent; + --ct-btn-border-color: var(--ct-secondary); + --ct-btn-hover-bg: var(--ct-secondary); + --ct-btn-hover-border-color: var(--ct-secondary); + --ct-btn-focus-shadow-rgb: var(--ct-secondary-rgb); + --ct-btn-active-bg: var(--ct-secondary); + --ct-btn-active-border-color: var(--ct-secondary); +} + +.btn-soft-secondary { + --ct-btn-color: var(--ct-secondary); + --ct-btn-bg: var(--ct-secondary-bg-subtle); + --ct-btn-border-color: transparent; + --ct-btn-hover-bg: var(--ct-secondary); + --ct-btn-hover-border-color: var(--ct-secondary); + --ct-btn-active-bg: var(--ct-secondary); + --ct-btn-active-border-color: var(--ct-secondary); + --ct-btn-disabled-color: var(--ct-secondary); + --ct-btn-disabled-bg: var(--ct-secondary); + --ct-btn-disabled-border-color: var(--ct-secondary); + --ct-btn-focus-shadow-rgb: 0 0 0 $btn-focus-width rgba(var(--ct-secondary)-rgb, 0.5); +} + +.btn-success { + --ct-btn-bg: var(--ct-success); + --ct-btn-border-color: var(--ct-success); + --ct-btn-hover-bg: var(--ct-success-text-emphasis); + --ct-btn-hover-border-color: var(--ct-success-text-emphasis); + --ct-btn-focus-shadow-rgb: var(--ct-success-rgb); + --ct-btn-active-bg: var(--ct-success-text-emphasis); + --ct-btn-active-border-color: var(--ct-success-text-emphasis); +} + +.btn-outline-success { + --ct-btn-color: var(--ct-success); + --ct-btn-bg: transparent; + --ct-btn-border-color: var(--ct-success); + --ct-btn-hover-bg: var(--ct-success); + --ct-btn-hover-border-color: var(--ct-success); + --ct-btn-focus-shadow-rgb: var(--ct-success-rgb); + --ct-btn-active-bg: var(--ct-success); + --ct-btn-active-border-color: var(--ct-success); +} + +.btn-soft-success { + --ct-btn-color: var(--ct-success); + --ct-btn-bg: var(--ct-success-bg-subtle); + --ct-btn-border-color: transparent; + --ct-btn-hover-bg: var(--ct-success); + --ct-btn-hover-border-color: var(--ct-success); + --ct-btn-active-bg: var(--ct-success); + --ct-btn-active-border-color: var(--ct-success); + --ct-btn-disabled-color: var(--ct-success); + --ct-btn-disabled-bg: var(--ct-success); + --ct-btn-disabled-border-color: var(--ct-success); + --ct-btn-focus-shadow-rgb: 0 0 0 $btn-focus-width rgba(var(--ct-success)-rgb, 0.5); +} + +.btn-info { + --ct-btn-bg: var(--ct-info); + --ct-btn-border-color: var(--ct-info); + --ct-btn-hover-bg: var(--ct-info-text-emphasis); + --ct-btn-hover-border-color: var(--ct-info-text-emphasis); + --ct-btn-focus-shadow-rgb: var(--ct-info-rgb); + --ct-btn-active-bg: var(--ct-info-text-emphasis); + --ct-btn-active-border-color: var(--ct-info-text-emphasis); +} + +.btn-outline-info { + --ct-btn-color: var(--ct-info); + --ct-btn-bg: transparent; + --ct-btn-border-color: var(--ct-info); + --ct-btn-hover-bg: var(--ct-info); + --ct-btn-hover-border-color: var(--ct-info); + --ct-btn-focus-shadow-rgb: var(--ct-info-rgb); + --ct-btn-active-bg: var(--ct-info); + --ct-btn-active-border-color: var(--ct-info); +} + +.btn-soft-info { + --ct-btn-color: var(--ct-info); + --ct-btn-bg: var(--ct-info-bg-subtle); + --ct-btn-border-color: transparent; + --ct-btn-hover-bg: var(--ct-info); + --ct-btn-hover-border-color: var(--ct-info); + --ct-btn-active-bg: var(--ct-info); + --ct-btn-active-border-color: var(--ct-info); + --ct-btn-disabled-color: var(--ct-info); + --ct-btn-disabled-bg: var(--ct-info); + --ct-btn-disabled-border-color: var(--ct-info); + --ct-btn-focus-shadow-rgb: 0 0 0 $btn-focus-width rgba(var(--ct-info)-rgb, 0.5); +} + +.btn-warning { + --ct-btn-bg: var(--ct-warning); + --ct-btn-border-color: var(--ct-warning); + --ct-btn-hover-bg: var(--ct-warning-text-emphasis); + --ct-btn-hover-border-color: var(--ct-warning-text-emphasis); + --ct-btn-focus-shadow-rgb: var(--ct-warning-rgb); + --ct-btn-active-bg: var(--ct-warning-text-emphasis); + --ct-btn-active-border-color: var(--ct-warning-text-emphasis); +} + +.btn-outline-warning { + --ct-btn-color: var(--ct-warning); + --ct-btn-bg: transparent; + --ct-btn-border-color: var(--ct-warning); + --ct-btn-hover-bg: var(--ct-warning); + --ct-btn-hover-border-color: var(--ct-warning); + --ct-btn-focus-shadow-rgb: var(--ct-warning-rgb); + --ct-btn-active-bg: var(--ct-warning); + --ct-btn-active-border-color: var(--ct-warning); +} + +.btn-soft-warning { + --ct-btn-color: var(--ct-warning); + --ct-btn-bg: var(--ct-warning-bg-subtle); + --ct-btn-border-color: transparent; + --ct-btn-hover-bg: var(--ct-warning); + --ct-btn-hover-border-color: var(--ct-warning); + --ct-btn-active-bg: var(--ct-warning); + --ct-btn-active-border-color: var(--ct-warning); + --ct-btn-disabled-color: var(--ct-warning); + --ct-btn-disabled-bg: var(--ct-warning); + --ct-btn-disabled-border-color: var(--ct-warning); + --ct-btn-focus-shadow-rgb: 0 0 0 $btn-focus-width rgba(var(--ct-warning)-rgb, 0.5); +} + +.btn-danger { + --ct-btn-bg: var(--ct-danger); + --ct-btn-border-color: var(--ct-danger); + --ct-btn-hover-bg: var(--ct-danger-text-emphasis); + --ct-btn-hover-border-color: var(--ct-danger-text-emphasis); + --ct-btn-focus-shadow-rgb: var(--ct-danger-rgb); + --ct-btn-active-bg: var(--ct-danger-text-emphasis); + --ct-btn-active-border-color: var(--ct-danger-text-emphasis); +} + +.btn-outline-danger { + --ct-btn-color: var(--ct-danger); + --ct-btn-bg: transparent; + --ct-btn-border-color: var(--ct-danger); + --ct-btn-hover-bg: var(--ct-danger); + --ct-btn-hover-border-color: var(--ct-danger); + --ct-btn-focus-shadow-rgb: var(--ct-danger-rgb); + --ct-btn-active-bg: var(--ct-danger); + --ct-btn-active-border-color: var(--ct-danger); +} + +.btn-soft-danger { + --ct-btn-color: var(--ct-danger); + --ct-btn-bg: var(--ct-danger-bg-subtle); + --ct-btn-border-color: transparent; + --ct-btn-hover-bg: var(--ct-danger); + --ct-btn-hover-border-color: var(--ct-danger); + --ct-btn-active-bg: var(--ct-danger); + --ct-btn-active-border-color: var(--ct-danger); + --ct-btn-disabled-color: var(--ct-danger); + --ct-btn-disabled-bg: var(--ct-danger); + --ct-btn-disabled-border-color: var(--ct-danger); + --ct-btn-focus-shadow-rgb: 0 0 0 $btn-focus-width rgba(var(--ct-danger)-rgb, 0.5); +} + +.btn-light { + --ct-btn-bg: var(--ct-light); + --ct-btn-border-color: var(--ct-light); + --ct-btn-hover-bg: var(--ct-light-text-emphasis); + --ct-btn-hover-border-color: var(--ct-light-text-emphasis); + --ct-btn-focus-shadow-rgb: var(--ct-light-rgb); + --ct-btn-active-bg: var(--ct-light-text-emphasis); + --ct-btn-active-border-color: var(--ct-light-text-emphasis); +} + +.btn-outline-light { + --ct-btn-color: var(--ct-light); + --ct-btn-bg: transparent; + --ct-btn-border-color: var(--ct-light); + --ct-btn-hover-bg: var(--ct-light); + --ct-btn-hover-border-color: var(--ct-light); + --ct-btn-focus-shadow-rgb: var(--ct-light-rgb); + --ct-btn-active-bg: var(--ct-light); + --ct-btn-active-border-color: var(--ct-light); +} + +.btn-soft-light { + --ct-btn-color: var(--ct-light); + --ct-btn-bg: var(--ct-light-bg-subtle); + --ct-btn-border-color: transparent; + --ct-btn-hover-bg: var(--ct-light); + --ct-btn-hover-border-color: var(--ct-light); + --ct-btn-active-bg: var(--ct-light); + --ct-btn-active-border-color: var(--ct-light); + --ct-btn-disabled-color: var(--ct-light); + --ct-btn-disabled-bg: var(--ct-light); + --ct-btn-disabled-border-color: var(--ct-light); + --ct-btn-focus-shadow-rgb: 0 0 0 $btn-focus-width rgba(var(--ct-light)-rgb, 0.5); +} + +.btn-dark { + --ct-btn-bg: var(--ct-dark); + --ct-btn-border-color: var(--ct-dark); + --ct-btn-hover-bg: var(--ct-dark-text-emphasis); + --ct-btn-hover-border-color: var(--ct-dark-text-emphasis); + --ct-btn-focus-shadow-rgb: var(--ct-dark-rgb); + --ct-btn-active-bg: var(--ct-dark-text-emphasis); + --ct-btn-active-border-color: var(--ct-dark-text-emphasis); +} + +.btn-outline-dark { + --ct-btn-color: var(--ct-dark); + --ct-btn-bg: transparent; + --ct-btn-border-color: var(--ct-dark); + --ct-btn-hover-bg: var(--ct-dark); + --ct-btn-hover-border-color: var(--ct-dark); + --ct-btn-focus-shadow-rgb: var(--ct-dark-rgb); + --ct-btn-active-bg: var(--ct-dark); + --ct-btn-active-border-color: var(--ct-dark); +} + +.btn-soft-dark { + --ct-btn-color: var(--ct-dark); + --ct-btn-bg: var(--ct-dark-bg-subtle); + --ct-btn-border-color: transparent; + --ct-btn-hover-bg: var(--ct-dark); + --ct-btn-hover-border-color: var(--ct-dark); + --ct-btn-active-bg: var(--ct-dark); + --ct-btn-active-border-color: var(--ct-dark); + --ct-btn-disabled-color: var(--ct-dark); + --ct-btn-disabled-bg: var(--ct-dark); + --ct-btn-disabled-border-color: var(--ct-dark); + --ct-btn-focus-shadow-rgb: 0 0 0 $btn-focus-width rgba(var(--ct-dark)-rgb, 0.5); +} + +.btn-purple { + --ct-btn-bg: var(--ct-purple); + --ct-btn-border-color: var(--ct-purple); + --ct-btn-hover-bg: var(--ct-purple-text-emphasis); + --ct-btn-hover-border-color: var(--ct-purple-text-emphasis); + --ct-btn-focus-shadow-rgb: var(--ct-purple-rgb); + --ct-btn-active-bg: var(--ct-purple-text-emphasis); + --ct-btn-active-border-color: var(--ct-purple-text-emphasis); +} + +.btn-outline-purple { + --ct-btn-color: var(--ct-purple); + --ct-btn-bg: transparent; + --ct-btn-border-color: var(--ct-purple); + --ct-btn-hover-bg: var(--ct-purple); + --ct-btn-hover-border-color: var(--ct-purple); + --ct-btn-focus-shadow-rgb: var(--ct-purple-rgb); + --ct-btn-active-bg: var(--ct-purple); + --ct-btn-active-border-color: var(--ct-purple); +} + +.btn-soft-purple { + --ct-btn-color: var(--ct-purple); + --ct-btn-bg: var(--ct-purple-bg-subtle); + --ct-btn-border-color: transparent; + --ct-btn-hover-bg: var(--ct-purple); + --ct-btn-hover-border-color: var(--ct-purple); + --ct-btn-active-bg: var(--ct-purple); + --ct-btn-active-border-color: var(--ct-purple); + --ct-btn-disabled-color: var(--ct-purple); + --ct-btn-disabled-bg: var(--ct-purple); + --ct-btn-disabled-border-color: var(--ct-purple); + --ct-btn-focus-shadow-rgb: 0 0 0 $btn-focus-width rgba(var(--ct-purple)-rgb, 0.5); +} + +.btn-pink { + --ct-btn-bg: var(--ct-pink); + --ct-btn-border-color: var(--ct-pink); + --ct-btn-hover-bg: var(--ct-pink-text-emphasis); + --ct-btn-hover-border-color: var(--ct-pink-text-emphasis); + --ct-btn-focus-shadow-rgb: var(--ct-pink-rgb); + --ct-btn-active-bg: var(--ct-pink-text-emphasis); + --ct-btn-active-border-color: var(--ct-pink-text-emphasis); +} + +.btn-outline-pink { + --ct-btn-color: var(--ct-pink); + --ct-btn-bg: transparent; + --ct-btn-border-color: var(--ct-pink); + --ct-btn-hover-bg: var(--ct-pink); + --ct-btn-hover-border-color: var(--ct-pink); + --ct-btn-focus-shadow-rgb: var(--ct-pink-rgb); + --ct-btn-active-bg: var(--ct-pink); + --ct-btn-active-border-color: var(--ct-pink); +} + +.btn-soft-pink { + --ct-btn-color: var(--ct-pink); + --ct-btn-bg: var(--ct-pink-bg-subtle); + --ct-btn-border-color: transparent; + --ct-btn-hover-bg: var(--ct-pink); + --ct-btn-hover-border-color: var(--ct-pink); + --ct-btn-active-bg: var(--ct-pink); + --ct-btn-active-border-color: var(--ct-pink); + --ct-btn-disabled-color: var(--ct-pink); + --ct-btn-disabled-bg: var(--ct-pink); + --ct-btn-disabled-border-color: var(--ct-pink); + --ct-btn-focus-shadow-rgb: 0 0 0 $btn-focus-width rgba(var(--ct-pink)-rgb, 0.5); +} + +.btn-soft-primary { + --ct-btn-active-color: #fff; + --ct-btn-hover-color: #fff; +} + +.btn-soft-secondary { + --ct-btn-active-color: #fff; + --ct-btn-hover-color: #fff; +} + +.btn-soft-success { + --ct-btn-active-color: #fff; + --ct-btn-hover-color: #fff; +} + +.btn-soft-info { + --ct-btn-active-color: #fff; + --ct-btn-hover-color: #fff; +} + +.btn-soft-warning { + --ct-btn-active-color: #fff; + --ct-btn-hover-color: #fff; +} + +.btn-soft-danger { + --ct-btn-active-color: #fff; + --ct-btn-hover-color: #fff; +} + +.btn-soft-light { + --ct-btn-active-color: #212529; + --ct-btn-hover-color: #212529; +} + +.btn-soft-dark { + --ct-btn-active-color: #fff; + --ct-btn-hover-color: #fff; +} + +.btn-soft-purple { + --ct-btn-active-color: #fff; + --ct-btn-hover-color: #fff; +} + +.btn-soft-pink { + --ct-btn-active-color: #fff; + --ct-btn-hover-color: #fff; +} + +[data-bs-theme=dark] .btn-light { + --ct-btn-color: #fff; + --ct-btn-active-color: #fff; + --ct-btn-hover-color: #fff; +} + +.badge-outline-primary { + --ct-badge-color: var(--ct-primary); + border: 1px solid var(--ct-primary); + background-color: transparent; +} +.badge-outline-primary[href] { + color: var(--ct-primary); + text-decoration: none; + background-color: var(--ct-primary-bg-subtle); +} +.badge-outline-primary[href]:is(:hover, :focus) { + color: var(--ct-primary); + text-decoration: none; + background-color: var(--ct-primary-bg-subtle); +} + +.badge-outline-secondary { + --ct-badge-color: var(--ct-secondary); + border: 1px solid var(--ct-secondary); + background-color: transparent; +} +.badge-outline-secondary[href] { + color: var(--ct-secondary); + text-decoration: none; + background-color: var(--ct-secondary-bg-subtle); +} +.badge-outline-secondary[href]:is(:hover, :focus) { + color: var(--ct-secondary); + text-decoration: none; + background-color: var(--ct-secondary-bg-subtle); +} + +.badge-outline-success { + --ct-badge-color: var(--ct-success); + border: 1px solid var(--ct-success); + background-color: transparent; +} +.badge-outline-success[href] { + color: var(--ct-success); + text-decoration: none; + background-color: var(--ct-success-bg-subtle); +} +.badge-outline-success[href]:is(:hover, :focus) { + color: var(--ct-success); + text-decoration: none; + background-color: var(--ct-success-bg-subtle); +} + +.badge-outline-info { + --ct-badge-color: var(--ct-info); + border: 1px solid var(--ct-info); + background-color: transparent; +} +.badge-outline-info[href] { + color: var(--ct-info); + text-decoration: none; + background-color: var(--ct-info-bg-subtle); +} +.badge-outline-info[href]:is(:hover, :focus) { + color: var(--ct-info); + text-decoration: none; + background-color: var(--ct-info-bg-subtle); +} + +.badge-outline-warning { + --ct-badge-color: var(--ct-warning); + border: 1px solid var(--ct-warning); + background-color: transparent; +} +.badge-outline-warning[href] { + color: var(--ct-warning); + text-decoration: none; + background-color: var(--ct-warning-bg-subtle); +} +.badge-outline-warning[href]:is(:hover, :focus) { + color: var(--ct-warning); + text-decoration: none; + background-color: var(--ct-warning-bg-subtle); +} + +.badge-outline-danger { + --ct-badge-color: var(--ct-danger); + border: 1px solid var(--ct-danger); + background-color: transparent; +} +.badge-outline-danger[href] { + color: var(--ct-danger); + text-decoration: none; + background-color: var(--ct-danger-bg-subtle); +} +.badge-outline-danger[href]:is(:hover, :focus) { + color: var(--ct-danger); + text-decoration: none; + background-color: var(--ct-danger-bg-subtle); +} + +.badge-outline-light { + --ct-badge-color: var(--ct-light); + border: 1px solid var(--ct-light); + background-color: transparent; +} +.badge-outline-light[href] { + color: var(--ct-light); + text-decoration: none; + background-color: var(--ct-light-bg-subtle); +} +.badge-outline-light[href]:is(:hover, :focus) { + color: var(--ct-light); + text-decoration: none; + background-color: var(--ct-light-bg-subtle); +} + +.badge-outline-dark { + --ct-badge-color: var(--ct-dark); + border: 1px solid var(--ct-dark); + background-color: transparent; +} +.badge-outline-dark[href] { + color: var(--ct-dark); + text-decoration: none; + background-color: var(--ct-dark-bg-subtle); +} +.badge-outline-dark[href]:is(:hover, :focus) { + color: var(--ct-dark); + text-decoration: none; + background-color: var(--ct-dark-bg-subtle); +} + +.badge-outline-purple { + --ct-badge-color: var(--ct-purple); + border: 1px solid var(--ct-purple); + background-color: transparent; +} +.badge-outline-purple[href] { + color: var(--ct-purple); + text-decoration: none; + background-color: var(--ct-purple-bg-subtle); +} +.badge-outline-purple[href]:is(:hover, :focus) { + color: var(--ct-purple); + text-decoration: none; + background-color: var(--ct-purple-bg-subtle); +} + +.badge-outline-pink { + --ct-badge-color: var(--ct-pink); + border: 1px solid var(--ct-pink); + background-color: transparent; +} +.badge-outline-pink[href] { + color: var(--ct-pink); + text-decoration: none; + background-color: var(--ct-pink-bg-subtle); +} +.badge-outline-pink[href]:is(:hover, :focus) { + color: var(--ct-pink); + text-decoration: none; + background-color: var(--ct-pink-bg-subtle); +} + +.card { + -webkit-box-shadow: var(--ct-box-shadow); + box-shadow: var(--ct-box-shadow); + margin-bottom: 0.6rem; +} +.card .header-title { + margin-bottom: 0.5rem; + font-size: 0.95rem; + margin-top: 0; +} +.card .card-drop { + font-size: 20px; + color: inherit; +} +.card .card-widgets { + float: left; + height: 16px; +} +.card .card-widgets > a { + color: inherit; + font-size: 18px; + display: inline-block; + line-height: 1; + min-width: 20px; +} +.card .card-widgets > a.collapsed i:before { + content: "\ea13"; +} + +.card-title, +.card-header { + margin-top: 0; +} +.card-title .header-title, +.card-header .header-title { + margin-bottom: 0; +} + +.card-disabled { + position: absolute; + right: 0; + left: 0; + top: 0; + bottom: 0; + border-radius: var(--ct-border-radius); + background: rgba(242, 242, 247, 0.8); + cursor: progress; +} +.card-disabled .card-portlets-loader { + background-color: var(--ct-gray-900); + -webkit-animation: rotatebox 1.2s infinite ease-in-out; + animation: rotatebox 1.2s infinite ease-in-out; + height: 30px; + width: 30px; + border-radius: 3px; + position: absolute; + right: 50%; + top: 50%; + margin-right: -0.625rem; + margin-top: -0.625rem; +} + +@-webkit-keyframes rotatebox { + 0% { + -webkit-transform: perspective(120px) rotateX(0deg) rotateY(0deg); + transform: perspective(120px) rotateX(0deg) rotateY(0deg); + } + 50% { + -webkit-transform: perspective(120px) rotateX(-180.1deg) rotateY(0deg); + transform: perspective(120px) rotateX(-180.1deg) rotateY(0deg); + } + 100% { + -webkit-transform: perspective(120px) rotateX(-180deg) rotateY(179.9deg); + transform: perspective(120px) rotateX(-180deg) rotateY(179.9deg); + } +} + +@keyframes rotatebox { + 0% { + -webkit-transform: perspective(120px) rotateX(0deg) rotateY(0deg); + transform: perspective(120px) rotateX(0deg) rotateY(0deg); + } + 50% { + -webkit-transform: perspective(120px) rotateX(-180.1deg) rotateY(0deg); + transform: perspective(120px) rotateX(-180.1deg) rotateY(0deg); + } + 100% { + -webkit-transform: perspective(120px) rotateX(-180deg) rotateY(179.9deg); + transform: perspective(120px) rotateX(-180deg) rotateY(179.9deg); + } +} +.card-h-100 { + height: calc(100% - 1.25rem); +} + +.form-checkbox-primary .form-check-input:checked, .form-radio-primary .form-check-input:checked { + background-color: var(--ct-primary); + border-color: var(--ct-primary); +} + +.form-checkbox-secondary .form-check-input:checked, .form-radio-secondary .form-check-input:checked { + background-color: var(--ct-secondary); + border-color: var(--ct-secondary); +} + +.form-checkbox-success .form-check-input:checked, .form-radio-success .form-check-input:checked { + background-color: var(--ct-success); + border-color: var(--ct-success); +} + +.form-checkbox-info .form-check-input:checked, .form-radio-info .form-check-input:checked { + background-color: var(--ct-info); + border-color: var(--ct-info); +} + +.form-checkbox-warning .form-check-input:checked, .form-radio-warning .form-check-input:checked { + background-color: var(--ct-warning); + border-color: var(--ct-warning); +} + +.form-checkbox-danger .form-check-input:checked, .form-radio-danger .form-check-input:checked { + background-color: var(--ct-danger); + border-color: var(--ct-danger); +} + +.form-checkbox-light .form-check-input:checked, .form-radio-light .form-check-input:checked { + background-color: var(--ct-light); + border-color: var(--ct-light); +} + +.form-checkbox-dark .form-check-input:checked, .form-radio-dark .form-check-input:checked { + background-color: var(--ct-dark); + border-color: var(--ct-dark); +} + +.form-checkbox-purple .form-check-input:checked, .form-radio-purple .form-check-input:checked { + background-color: var(--ct-purple); + border-color: var(--ct-purple); +} + +.form-checkbox-pink .form-check-input:checked, .form-radio-pink .form-check-input:checked { + background-color: var(--ct-pink); + border-color: var(--ct-pink); +} + +.dropdown-menu { + -webkit-box-shadow: var(--ct-dropdown-box-shadow); + box-shadow: var(--ct-dropdown-box-shadow); +} + +.dropdown-header { + margin-top: 0; +} + +.dropdown-menu-animated { + opacity: 0; + visibility: hidden; + display: block !important; + -webkit-transform: scale(0.75) !important; + transform: scale(0.75) !important; + -webkit-transition: all 0.1s linear !important; + transition: all 0.1s linear !important; + -webkit-transform-origin: top right; + transform-origin: top right; + inset: auto !important; + top: 100% !important; +} +.dropdown-menu-animated.dropdown-menu-end { + left: 0 !important; + -webkit-transform-origin: top left; + transform-origin: top left; +} +.dropdown-menu-animated.show { + opacity: 1; + visibility: visible; + top: 100% !important; + margin-top: 2px !important; + -webkit-transform: scale(1) !important; + transform: scale(1) !important; +} + +.dropdown.hover-dropdown:hover .dropdown-menu { + display: block !important; + top: 100% !important; +} +.dropdown.hover-dropdown:hover .dropdown-menu-animated { + opacity: 1; + -webkit-transition: all 0.1s linear !important; + transition: all 0.1s linear !important; + -webkit-transform-origin: top right; + transform-origin: top right; + visibility: visible; + top: 100% !important; + -webkit-transform: scale(1) !important; + transform: scale(1) !important; +} +.dropdown.hover-dropdown:hover .dropdown-menu-animated.dropdown-menu-end { + left: 0 !important; + right: auto !important; + -webkit-transform-origin: top left; + transform-origin: top left; +} + +.dropdown-center .dropdown-menu-animated { + -webkit-transform: scale(0.75) translateX(50%) !important; + transform: scale(0.75) translateX(50%) !important; + right: 50% !important; +} +.dropdown-center .dropdown-menu-animated.show { + opacity: 1; + visibility: visible; + top: 100% !important; + -webkit-transform: scale(1) translateX(50%) !important; + transform: scale(1) translateX(50%) !important; +} +.dropdown-center.hover-dropdown:hover .dropdown-menu-animated { + opacity: 1; + visibility: visible; + right: 50% !important; + top: 100% !important; + -webkit-transform: scale(1) translateX(50%) !important; + transform: scale(1) translateX(50%) !important; +} + +.dropdown-toggle-split::before { + content: ""; + position: absolute; + background-color: rgba(73, 82, 107, 0.08); + top: -1px; + bottom: -1px; + left: -1px; + right: 0; + border-radius: var(--ct-border-radius) 0 0 var(--ct-border-radius); +} + +.dropstart .dropdown-toggle-split::before { + inset: auto; + border-radius: 0; + position: relative; + z-index: 1; +} +.dropstart::after { + content: ""; + position: absolute; + background-color: rgba(73, 82, 107, 0.08); + top: 0; + bottom: 0; + left: 0; + right: 0; + border-radius: 0 var(--ct-border-radius) var(--ct-border-radius) 0; +} + +@media (min-width: 576px) { + .dropdown-lg { + width: 320px; + } +} +.dropdown-icon-item { + display: block; + border-radius: 3px; + line-height: 34px; + text-align: center; + padding: 15px 0 9px; + display: block; + border: 1px solid transparent; + color: var(--ct-body-color); +} +.dropdown-icon-item img { + height: 24px; +} +.dropdown-icon-item span { + display: block; + overflow: hidden; + text-overflow: ellipsis; + white-space: nowrap; +} +.dropdown-icon-item:hover { + background-color: var(--ct-primary-bg-subtle); + color: var(--ct-primary); +} + +.arrow-none:after { + display: none; +} + +.form-check-label { + font-weight: normal; +} + +.form-control-light { + background-color: var(--ct-tertiary-bg) !important; + border-color: var(--ct-border-color) !important; + border-width: var(--ct-theme-card-border-width); + border-style: solid; + border-color: var(--ct-border-color); +} + +input.form-control[type=color], +input.form-control[type=range] { + min-height: 39px; +} + +.custom-select.is-invalid:focus, +.form-control.is-invalid:focus, +.custom-select:invalid:focus, +.form-control:invalid:focus, +.custom-select.is-valid:focus, +.form-control.is-valid:focus, +.custom-select:valid:focus, +.form-control:valid:focus { + -webkit-box-shadow: none !important; + box-shadow: none !important; +} + +select.form-control:not([size]):not([multiple]) { + height: calc(1.5em + 0.9rem + calc(var(--ct-border-width) * 2)); +} + +select.form-control-sm:not([size]):not([multiple]) { + height: calc(1.5em + 0.56rem + calc(var(--ct-border-width) * 2)); +} + +.password-eye { + cursor: pointer; +} +.password-eye:before { + font-family: "remixicon"; + content: "\ecb5"; + font-style: normal; + font-weight: 400; + font-variant: normal; + vertical-align: middle; + line-height: 1.2; + font-size: 16px; +} + +.show-password .password-eye:before { + content: "\ecb7"; +} + +.modal-dialog { + -webkit-box-shadow: 0 2px 5px 0 rgba(27, 23, 30, 0.3); + box-shadow: 0 2px 5px 0 rgba(27, 23, 30, 0.3); +} + +.modal-title { + margin-top: 0; +} + +.modal-full-width { + width: 95%; + max-width: none; +} + +.modal-top { + margin: 0 auto; +} + +.modal-right { + position: absolute; + left: 0; + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-orient: vertical; + -webkit-box-direction: normal; + -ms-flex-flow: column nowrap; + flex-flow: column nowrap; + -webkit-box-pack: center; + -ms-flex-pack: center; + justify-content: center; + height: 100%; + margin: 0; + background-color: var(--ct-secondary-bg); + -ms-flex-line-pack: center; + align-content: center; + -webkit-transform: translate(-25%, 0) !important; + transform: translate(-25%, 0) !important; +} +.modal-right button.btn-close { + position: fixed; + top: 20px; + left: 20px; + z-index: 1; +} + +.modal.show .modal-left, +.modal.show .modal-right { + -webkit-transform: translate(0, 0) !important; + transform: translate(0, 0) !important; +} + +.modal-bottom { + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-orient: vertical; + -webkit-box-direction: normal; + -ms-flex-flow: column nowrap; + flex-flow: column nowrap; + -ms-flex-pack: end; + -webkit-box-pack: end; + justify-content: flex-end; + height: 100%; + margin: 0 auto; + -ms-flex-line-pack: center; + align-content: center; +} + +.modal-colored-header { + border-radius: 0; +} +.modal-colored-header .modal-title { + color: #fff !important; +} + +.modal-filled { + color: #fff; +} +.modal-filled .modal-header { + background-color: rgba(255, 255, 255, 0.07); +} +.modal-filled .modal-title { + color: #fff; +} +.modal-filled .modal-header, +.modal-filled .modal-footer { + border: none; +} + +.nav-tabs > li > a, +.nav-pills > li > a { + color: var(--ct-secondary-color); + font-weight: 500; +} + +.nav-pills > a { + color: var(--ct-gray-700); + font-weight: 500; +} + +.bg-nav-pills { + background-color: var(--ct-tertiary-bg); +} + +.nav-tabs.nav-bordered { + border-bottom: 2px solid var(--ct-border-color); +} +.nav-tabs.nav-bordered .nav-item { + margin-bottom: -1px; +} +.nav-tabs.nav-bordered li a { + border: 0; + padding: 0.625rem 1.25rem; +} +.nav-tabs.nav-bordered li a.active { + border-bottom: 2px solid var(--ct-primary); +} + +.pagination-rounded .page-link { + border-radius: 30px !important; + margin: 0 3px !important; + border: none; +} + +.popover { + -webkit-box-shadow: var(--ct-box-shadow-lg); + box-shadow: var(--ct-box-shadow-lg); +} + +.popover-header { + margin-top: 0; +} + +.primary-popover { + --ct-popover-max-width: 200px !important; + --ct-popover-border-color: var(--ct-primary) !important; + --ct-popover-header-bg: var(--ct-primary) !important; + --ct-popover-header-color: var(--ct-white) !important; + --ct-popover-body-padding-x: 1rem !important; + --ct-popover-body-padding-y: .5rem !important; +} + +.secondary-popover { + --ct-popover-max-width: 200px !important; + --ct-popover-border-color: var(--ct-secondary) !important; + --ct-popover-header-bg: var(--ct-secondary) !important; + --ct-popover-header-color: var(--ct-white) !important; + --ct-popover-body-padding-x: 1rem !important; + --ct-popover-body-padding-y: .5rem !important; +} + +.success-popover { + --ct-popover-max-width: 200px !important; + --ct-popover-border-color: var(--ct-success) !important; + --ct-popover-header-bg: var(--ct-success) !important; + --ct-popover-header-color: var(--ct-white) !important; + --ct-popover-body-padding-x: 1rem !important; + --ct-popover-body-padding-y: .5rem !important; +} + +.info-popover { + --ct-popover-max-width: 200px !important; + --ct-popover-border-color: var(--ct-info) !important; + --ct-popover-header-bg: var(--ct-info) !important; + --ct-popover-header-color: var(--ct-white) !important; + --ct-popover-body-padding-x: 1rem !important; + --ct-popover-body-padding-y: .5rem !important; +} + +.warning-popover { + --ct-popover-max-width: 200px !important; + --ct-popover-border-color: var(--ct-warning) !important; + --ct-popover-header-bg: var(--ct-warning) !important; + --ct-popover-header-color: var(--ct-white) !important; + --ct-popover-body-padding-x: 1rem !important; + --ct-popover-body-padding-y: .5rem !important; +} + +.danger-popover { + --ct-popover-max-width: 200px !important; + --ct-popover-border-color: var(--ct-danger) !important; + --ct-popover-header-bg: var(--ct-danger) !important; + --ct-popover-header-color: var(--ct-white) !important; + --ct-popover-body-padding-x: 1rem !important; + --ct-popover-body-padding-y: .5rem !important; +} + +.light-popover { + --ct-popover-max-width: 200px !important; + --ct-popover-border-color: var(--ct-light) !important; + --ct-popover-header-bg: var(--ct-light) !important; + --ct-popover-header-color: var(--ct-white) !important; + --ct-popover-body-padding-x: 1rem !important; + --ct-popover-body-padding-y: .5rem !important; +} + +.dark-popover { + --ct-popover-max-width: 200px !important; + --ct-popover-border-color: var(--ct-dark) !important; + --ct-popover-header-bg: var(--ct-dark) !important; + --ct-popover-header-color: var(--ct-white) !important; + --ct-popover-body-padding-x: 1rem !important; + --ct-popover-body-padding-y: .5rem !important; +} + +.purple-popover { + --ct-popover-max-width: 200px !important; + --ct-popover-border-color: var(--ct-purple) !important; + --ct-popover-header-bg: var(--ct-purple) !important; + --ct-popover-header-color: var(--ct-white) !important; + --ct-popover-body-padding-x: 1rem !important; + --ct-popover-body-padding-y: .5rem !important; +} + +.pink-popover { + --ct-popover-max-width: 200px !important; + --ct-popover-border-color: var(--ct-pink) !important; + --ct-popover-header-bg: var(--ct-pink) !important; + --ct-popover-header-color: var(--ct-white) !important; + --ct-popover-body-padding-x: 1rem !important; + --ct-popover-body-padding-y: .5rem !important; +} + +@media print { + .leftside-menu, +.end-bar, +.page-title-box, +.navbar-custom, +.footer { + display: none; + } + .card-body, +.content-page, +.end-bar, +.content, +body { + padding: 0; + margin: 0; + } + .card { + -webkit-box-shadow: none; + box-shadow: none; + } +} +.progress-sm { + height: 5px; +} + +.progress-md { + height: 8px; +} + +.progress-lg { + height: 12px; +} + +.progress-xl { + height: 15px; +} + +html { + position: relative; + min-height: 100%; +} + +@supports (-webkit-overflow-scrolling: touch) { + body { + cursor: pointer; + } +} +body { + overflow-x: hidden; +} + +button, +a { + outline: none !important; +} + +label { + font-weight: 500; +} + +address.address-lg { + line-height: 24px; +} + +b, +strong { + font-weight: 700; +} + +.table-centered th, +.table-centered td { + vertical-align: middle !important; +} + +.table .table-user img { + height: 30px; + width: 30px; +} +.table > :not(caption) > * > * { + background-color: var(--ct-table-bg) !important; +} +.table.table-bordered tbody { + border-top: 1px solid; + border-top-color: inherit; +} + +.table-sm .action-icon { + font-size: 1rem; +} + +.table-nowrap th, +.table-nowrap td { + white-space: nowrap; +} + +.primary-tooltip { + --ct-tooltip-bg: var(--ct-primary) !important; +} + +.secondary-tooltip { + --ct-tooltip-bg: var(--ct-secondary) !important; +} + +.success-tooltip { + --ct-tooltip-bg: var(--ct-success) !important; +} + +.info-tooltip { + --ct-tooltip-bg: var(--ct-info) !important; +} + +.warning-tooltip { + --ct-tooltip-bg: var(--ct-warning) !important; +} + +.danger-tooltip { + --ct-tooltip-bg: var(--ct-danger) !important; +} + +.light-tooltip { + --ct-tooltip-bg: var(--ct-light) !important; +} + +.dark-tooltip { + --ct-tooltip-bg: var(--ct-dark) !important; +} + +.purple-tooltip { + --ct-tooltip-bg: var(--ct-purple) !important; +} + +.pink-tooltip { + --ct-tooltip-bg: var(--ct-pink) !important; +} + +.progress-w-percent { + min-height: 20px; + margin-bottom: 15px; +} +.progress-w-percent .progress { + width: calc(100% - 50px); + float: right; + margin-top: 8px; +} +.progress-w-percent .progress-value { + width: 40px; + float: left; + text-align: left; + line-height: 20px; +} + +.widget-icon-box .widget-icon-box-avatar { + -webkit-transform: rotate(-45deg); + transform: rotate(-45deg); + -webkit-transition: -webkit-transform 0.15s; + transition: -webkit-transform 0.15s; + transition: transform 0.15s; + transition: transform 0.15s, -webkit-transform 0.15s; +} +.widget-icon-box .widget-icon-box-avatar i { + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + -webkit-transition: -webkit-transform 0.15s; + transition: -webkit-transform 0.15s; + transition: transform 0.15s; + transition: transform 0.15s, -webkit-transform 0.15s; +} +.widget-icon-box:hover .widget-icon-box-avatar { + -webkit-transform: rotate(0deg); + transform: rotate(0deg); +} +.widget-icon-box:hover .widget-icon-box-avatar i { + -webkit-transform: rotate(0deg); + transform: rotate(0deg); +} + +.widget-flat { + position: relative; + overflow: hidden; +} +@media (min-width: 1200px) and (max-width: 1500px) { + .widget-flat i.widget-icon { + display: none; + } +} + +.widget-icon { + color: var(--ct-primary); + font-size: 20px; + background-color: rgba(var(--ct-primary-rgb), 0.25); + height: 40px; + width: 40px; + text-align: center; + line-height: 40px; + border-radius: 3px; + display: inline-block; +} + +.dash-item-overlay { + position: absolute; + text-align: left; + left: 8%; + max-width: 350px; + padding: 20px; + z-index: 1; +} + +.chart-widget-list p { + border-bottom: 1px solid var(--ct-border-color); + margin-bottom: 0.5rem; + padding-bottom: 0.5rem; +} + +.timeline-alt { + padding: 20px 0; + position: relative; +} +.timeline-alt .timeline-item { + position: relative; +} +.timeline-alt .timeline-item:before { + background-color: var(--ct-tertiary-bg); + bottom: 0; + content: ""; + right: 9px; + position: absolute; + top: 20px; + width: 2px; + z-index: 0; +} +.timeline-alt .timeline-item .timeline-icon { + float: right; + height: 20px; + width: 20px; + border-radius: 50%; + border: 2px solid transparent; + font-size: 12px; + text-align: center; + line-height: 16px; + background-color: #fff; +} +.timeline-alt .timeline-item .timeline-item-info { + margin-right: 30px; +} +.timeline-alt .timeline-item:last-of-type::before { + display: none; +} + +.inbox-widget .inbox-item { + border-bottom: 1px solid var(--ct-border-color); + overflow: hidden; + padding: 0.625rem 0; + position: relative; +} +.inbox-widget .inbox-item:last-of-type { + border-bottom: none; +} +.inbox-widget .inbox-item .inbox-item-img { + display: block; + float: right; + margin-left: 15px; + width: 40px; +} +.inbox-widget .inbox-item .inbox-item-img img { + width: 40px; +} +.inbox-widget .inbox-item .inbox-item-author { + color: var(--ct-tertiary-color); + display: block; + margin-bottom: 3px; +} +.inbox-widget .inbox-item .inbox-item-text { + color: var(--ct-gray-500); + display: block; + font-size: 0.8125rem; + margin: 0; +} +.inbox-widget .inbox-item .inbox-item-date { + color: var(--ct-gray-600); + font-size: 0.6875rem; + position: absolute; + left: 5px; + top: 10px; +} + +.tilebox-one i { + position: absolute; + left: 1.5rem; + font-size: 2rem; + opacity: 0.3; +} + +.toll-free-box i { + position: absolute; + right: 0; + bottom: -15px; + font-size: 4rem; + opacity: 0.4; + -webkit-transform: rotate(-30deg); + transform: rotate(-30deg); +} + +.cta-box .cta-box-title { + font-size: 20px; + line-height: 30px; +} + +.conversation-list { + list-style: none; + padding: 0 15px; +} +.conversation-list li { + margin-bottom: 20px; +} +.conversation-list li .conversation-actions { + float: left; + display: none; +} +.conversation-list li:hover .conversation-actions { + display: block; +} +.conversation-list .chat-avatar { + float: right; + text-align: center; + width: 32px; +} +.conversation-list .chat-avatar img { + border-radius: 100%; + width: 100%; +} +.conversation-list .chat-avatar i { + font-size: 12px; + font-style: normal; +} +.conversation-list .ctext-wrap { + background: var(--ct-light); + -webkit-box-shadow: var(--ct-box-shadow); + box-shadow: var(--ct-box-shadow); + border-radius: 3px; + display: inline-block; + padding: 12px; + position: relative; +} +.conversation-list .ctext-wrap i { + display: block; + font-size: 12px; + font-style: normal; + font-weight: bold; + position: relative; +} +.conversation-list .ctext-wrap p { + margin: 0; + padding-top: 3px; +} +.conversation-list .ctext-wrap:after { + right: -11px; + top: 0; + border: solid transparent; + content: " "; + height: 0; + width: 0; + position: absolute; + pointer-events: none; + border-top-color: var(--ct-light); + border-width: 6px; + margin-left: -1px; + border-left-color: var(--ct-light); +} +.conversation-list .conversation-text { + float: right; + margin-right: 12px; + width: 70%; +} +.conversation-list .odd .chat-avatar { + float: left !important; +} +.conversation-list .odd .conversation-text { + float: left !important; + margin-left: 12px; + text-align: left; + width: 70% !important; + color: #fff; +} +.conversation-list .odd .ctext-wrap { + background-color: var(--ct-primary); + -webkit-box-shadow: var(--ct-box-shadow-lg); + box-shadow: var(--ct-box-shadow-lg); +} +.conversation-list .odd .ctext-wrap:after { + border-color: transparent; + border-right-color: var(--ct-primary); + border-top-color: var(--ct-primary); + left: -8px; + right: auto; +} +.conversation-list .odd .conversation-actions { + float: right; +} + +.calendar-widget .datepicker-inline, +.calendar-widget table { + width: 100%; +} +.calendar-widget .datepicker-inline tr td, +.calendar-widget .datepicker-inline tr th, +.calendar-widget .datepicker-inline tr td.active.day, +.calendar-widget .datepicker-inline tr td.today.day, +.calendar-widget table tr td, +.calendar-widget table tr th, +.calendar-widget table tr td.active.day, +.calendar-widget table tr td.today.day { + background-color: transparent !important; +} +.calendar-widget .datepicker-inline tr td.active.day, +.calendar-widget .datepicker-inline tr td.today.day, +.calendar-widget table tr td.active.day, +.calendar-widget table tr td.today.day { + color: #f7473a !important; + text-shadow: none; + font-weight: 700; +} +.calendar-widget .datepicker-inline tr td.active.day:hover, +.calendar-widget .datepicker-inline tr td.today.day:hover, +.calendar-widget table tr td.active.day:hover, +.calendar-widget table tr td.today.day:hover { + background-color: transparent !important; +} +.calendar-widget .datepicker-inline td, +.calendar-widget .datepicker-inline th, +.calendar-widget table td, +.calendar-widget table th { + height: 45px; +} +.calendar-widget .datepicker-inline .datepicker-switch, +.calendar-widget .datepicker-inline .next, +.calendar-widget .datepicker-inline .prev, +.calendar-widget table .datepicker-switch, +.calendar-widget table .next, +.calendar-widget table .prev { + font-size: 1.1rem; + background-color: rgba(var(--ct-primary-rgb), 0.1) !important; + border-radius: 0; + color: var(--ct-primary); +} + +.card-bg-img { + background-size: cover; + background-position: left center; + background-repeat: no-repeat; +} + +.social-list-item { + height: 2rem; + width: 2rem; + line-height: calc(2rem - 4px); + display: block; + border: 2px solid var(--ct-gray-500); + border-radius: 50%; + color: var(--ct-gray-500); +} +.social-list-item:hover { + color: var(--ct-gray-600); + border-color: var(--ct-gray-600); +} + +.horizontal-steps { + display: -webkit-box; + display: -ms-flexbox; + display: flex; + position: relative; + -webkit-box-orient: horizontal; + -webkit-box-direction: normal; + -ms-flex-direction: row; + flex-direction: row; + -webkit-box-pack: justify; + -ms-flex-pack: justify; + justify-content: space-between; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + width: 100%; +} +.horizontal-steps:before { + content: ""; + display: block; + position: absolute; + width: 100%; + height: 0.2em; + background-color: var(--ct-border-color); +} +.horizontal-steps .process-line { + display: block; + position: absolute; + width: 50%; + height: 0.2em; + background-color: var(--ct-primary); +} +.horizontal-steps .horizontal-steps-content { + display: -webkit-box; + display: -ms-flexbox; + display: flex; + position: relative; + -webkit-box-orient: horizontal; + -webkit-box-direction: normal; + -ms-flex-direction: row; + flex-direction: row; + -webkit-box-pack: justify; + -ms-flex-pack: justify; + justify-content: space-between; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + width: 100%; +} +.horizontal-steps .horizontal-steps-content .step-item { + display: block; + position: relative; + bottom: calc(100% + 1em); + height: 8px; + width: 8px; + margin: 0 2em; + -webkit-box-sizing: content-box; + box-sizing: content-box; + color: var(--ct-primary); + background-color: currentColor; + border: 0.25em solid var(--ct-body-bg); + border-radius: 50%; + z-index: 5; +} +.horizontal-steps .horizontal-steps-content .step-item:first-child { + margin-right: 0; +} +.horizontal-steps .horizontal-steps-content .step-item:last-child { + margin-left: 0; + color: #17a497; +} +.horizontal-steps .horizontal-steps-content .step-item span { + position: absolute; + top: calc(100% + 1em); + right: 50%; + -webkit-transform: translateX(50%); + transform: translateX(50%); + white-space: nowrap; + color: var(--ct-gray-500); +} +.horizontal-steps .horizontal-steps-content .step-item.current:before { + content: ""; + display: block; + position: absolute; + top: 48%; + right: 48%; + padding: 1em; + background-color: currentColor; + border-radius: 50%; + opacity: 0; + z-index: -1; + -webkit-animation-name: animation-steps-current; + animation-name: animation-steps-current; + -webkit-animation-duration: 2s; + animation-duration: 2s; + -webkit-animation-iteration-count: infinite; + animation-iteration-count: infinite; + -webkit-animation-timing-function: ease-out; + animation-timing-function: ease-out; +} +.horizontal-steps .horizontal-steps-content .step-item.current span { + color: var(--ct-primary) !important; +} + +@-webkit-keyframes animation-steps-current { + from { + -webkit-transform: translate(50%, -50%) scale(0); + transform: translate(50%, -50%) scale(0); + opacity: 1; + } + to { + -webkit-transform: translate(50%, -50%) scale(1); + transform: translate(50%, -50%) scale(1); + opacity: 0; + } +} + +@keyframes animation-steps-current { + from { + -webkit-transform: translate(50%, -50%) scale(0); + transform: translate(50%, -50%) scale(0); + opacity: 1; + } + to { + -webkit-transform: translate(50%, -50%) scale(1); + transform: translate(50%, -50%) scale(1); + opacity: 0; + } +} +@media (max-width: 767.98px) { + .horizontal-steps .horizontal-steps-content .step-item span { + white-space: inherit; + } +} +#preloader { + position: fixed; + top: 0; + right: 0; + left: 0; + bottom: 0; + background-color: var(--ct-tertiary-bg); + z-index: 9999; +} + +#status { + width: 80px; + height: 80px; + position: absolute; + right: 50%; + top: 50%; + margin: -40px -40px 0 0; +} + +@-webkit-keyframes bouncing-loader { + to { + opacity: 0.1; + -webkit-transform: translate3d(0, -16px, 0); + transform: translate3d(0, -16px, 0); + } +} + +@keyframes bouncing-loader { + to { + opacity: 0.1; + -webkit-transform: translate3d(0, -16px, 0); + transform: translate3d(0, -16px, 0); + } +} +.bouncing-loader { + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-pack: center; + -ms-flex-pack: center; + justify-content: center; +} +.bouncing-loader > div { + width: 13px; + height: 13px; + margin: 32px 3px; + background: var(--ct-primary); + border-radius: 50%; + -webkit-animation: bouncing-loader 0.6s infinite alternate; + animation: bouncing-loader 0.6s infinite alternate; +} +.bouncing-loader > div:nth-child(2) { + -webkit-animation-delay: 0.2s; + animation-delay: 0.2s; + background: #f7473a; +} +.bouncing-loader > div:nth-child(3) { + -webkit-animation-delay: 0.4s; + animation-delay: 0.4s; + background: #17a497; +} + +.auth-brand { + margin-bottom: 2rem; +} +.auth-brand .logo-dark { + display: block; +} +.auth-brand .logo-light { + display: none; +} + +html[data-theme=dark] .auth-brand .logo-dark { + display: none; +} +html[data-theme=dark] .auth-brand .logo-light { + display: block; +} + +body.authentication-bg .account-pages { + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + display: -webkit-box; + display: -ms-flexbox; + display: flex; + min-height: 100vh; +} + +.authentication-bg.enlarged, +.auth-fluid-pages.enlarged, +body.auth-fluid-pages[data-sidenav-size=condensed] { + min-height: 100px; +} + +.logout-icon { + width: 140px; +} + +.auth-fluid { + position: relative; + display: -webkit-box; + display: -ms-flexbox; + display: flex; + -webkit-box-align: center; + -ms-flex-align: center; + align-items: center; + min-height: 100vh; + -webkit-box-orient: horizontal; + -webkit-box-direction: normal; + -ms-flex-direction: row; + flex-direction: row; + -webkit-box-align: stretch; + -ms-flex-align: stretch; + align-items: stretch; + background: url("../images/bg-auth.jpg") center; + background-size: cover; +} +.auth-fluid .auth-fluid-form-box { + max-width: 480px; + border-radius: 0; + z-index: 2; + padding: 3rem; + background-color: var(--ct-secondary-bg); + position: relative; + width: 100%; + border-top: 4px double #4254ba; +} +.auth-fluid .auth-fluid-left, +.auth-fluid .auth-fluid-right { + padding: 6rem 3rem; + -webkit-box-flex: 1; + -ms-flex: 1; + flex: 1; + position: relative; + color: #fff; + background-color: rgba(0, 0, 0, 0.3); +} + +.auth-user-testimonial { + position: absolute; + margin: 0 auto; + padding: 0 1.75rem; + bottom: 3rem; + right: 0; + left: 0; +} +.auth-user-testimonial p.lead { + font-size: 1.125rem; + margin: 0 auto 20px auto; + max-width: 700px; +} + +@media (max-width: 991.98px) { + .auth-fluid { + display: block; + } + .auth-fluid .auth-fluid-form-box { + max-width: 100%; + min-height: 100vh; + } + .auth-fluid .auth-fluid-left { + display: none; + } +} +html[data-bs-theme=dark] .auth-brand .logo-light { + display: block; +} +html[data-bs-theme=dark] .auth-brand .logo-dark { + display: none; +} + +.scrollspy-example { + position: relative; + height: 200px; + margin-top: 0.5rem; + overflow: auto; +} + +.grid-structure .grid-container { + background-color: var(--ct-tertiary-bg); + margin-bottom: 10px; + font-size: 0.8rem; + font-weight: 600; + padding: 10px 20px; +} + +.icons-list-demo div { + cursor: pointer; + line-height: 45px; + white-space: nowrap; + text-overflow: ellipsis; + display: block; + overflow: hidden; +} +.icons-list-demo div p { + margin-bottom: 0; + line-height: inherit; +} +.icons-list-demo div:hover, .icons-list-demo div:hover i { + color: var(--ct-primary); +} +.icons-list-demo i { + text-align: center; + vertical-align: middle; + font-size: 24px; + width: 50px; + height: 50px; + line-height: 50px; + margin-left: 12px; + border-radius: 3px; + display: inline-block; + -webkit-transition: all 0.2s; + transition: all 0.2s; +} + +.text-error { + color: var(--ct-primary); + text-shadow: rgba(var(--ct-primary-rgb), 0.3) -5px 1px, rgba(var(--ct-primary-rgb), 0.2) -10px 3px; + font-size: 5.25rem; + line-height: 5.625rem; +} + +.faq-question-q-box { + height: 30px; + width: 30px; + color: var(--ct-primary); + background-color: rgba(var(--ct-primary-rgb), 0.25); + -webkit-box-shadow: 0 2px 5px 0 rgba(27, 23, 30, 0.3); + box-shadow: 0 2px 5px 0 rgba(27, 23, 30, 0.3); + text-align: center; + border-radius: 50%; + float: right; + font-weight: 700; + line-height: 30px; +} + +.faq-question { + margin-top: 0; + margin-right: 50px; + font-weight: 500; + font-size: 16px; + color: var(--ct-tertiary-color); +} + +.faq-answer { + margin-right: 50px; +} + +.pricing-column { + position: relative; +} + +.ribbon { + position: absolute; + right: 0; + top: -5px; + z-index: 1; + overflow: hidden; + width: 75px; + height: 75px; + text-align: left; +} +.ribbon span { + font-size: 10px; + color: #fff; + text-transform: uppercase; + text-align: center; + line-height: 20px; + -webkit-transform: rotate(45deg); + transform: rotate(45deg); + width: 100px; + display: block; + -webkit-box-shadow: 0 2px 5px 0 rgba(27, 23, 30, 0.3); + box-shadow: 0 2px 5px 0 rgba(27, 23, 30, 0.3); + background: #4254ba; + position: absolute; + top: 19px; + right: -21px; +} +.ribbon span:before { + content: ""; + position: absolute; + right: 0px; + top: 100%; + z-index: -1; + border-right: 3px solid #4254ba; + border-left: 3px solid transparent; + border-bottom: 3px solid transparent; + border-top: 3px solid #4254ba; +} +.ribbon span:after { + content: ""; + position: absolute; + left: 0px; + top: 100%; + z-index: -1; + border-right: 3px solid transparent; + border-left: 3px solid #4254ba; + border-bottom: 3px solid transparent; + border-top: 3px solid #4254ba; +} + +.maintenance-icon { + font-size: 22px; + -webkit-box-shadow: 0 2px 5px 0 rgba(27, 23, 30, 0.3); + box-shadow: 0 2px 5px 0 rgba(27, 23, 30, 0.3); + height: 60px; + display: inline-block; + width: 60px; + line-height: 58px; + border-radius: 50%; +} + +.board { + display: block; + white-space: nowrap; + overflow-x: auto; + overflow-y: hidden; +} + +.tasks { + display: inline-block; + width: 22rem; + padding: 0 1rem 1rem 1rem; + border: 1px solid var(--ct-border-color); + vertical-align: top; + margin-bottom: 1.25rem; + border-radius: var(--ct-border-radius); +} +.tasks.tasks:not(:last-child) { + margin-left: 1.25rem; +} +.tasks .card { + white-space: normal; + margin-top: 1rem; +} +.tasks .task-header { + padding-top: 1rem; +} + +.task-list-items { + min-height: 100px; + position: relative; +} +.task-list-items:before { + content: "No Tasks"; + position: absolute; + line-height: 110px; + width: 100%; + text-align: center; + font-weight: 600; +} + +.task-modal-content .form-control-light { + background-color: var(--ct-light) !important; + border-color: var(--ct-border-color) !important; +} + +.gantt-task-details { + min-width: 220px; +} + +.page-aside-left { + width: 240px; + float: right; + padding: 0 10px 20px 20px; + position: relative; +} +.page-aside-left:before { + content: ""; + background-color: var(--ct-body-bg); + width: 5px; + position: absolute; + left: -15px; + height: 100%; + bottom: -1.5rem; +} + +.page-aside-right { + margin: -1.5rem 250px -1.5rem 0; + border-right: 5px solid var(--ct-body-bg); + padding: 1.5rem 25px 1.5rem 0; +} + +.email-list { + display: block; + padding-right: 0; + overflow: hidden; +} +.email-list > li { + position: relative; + display: block; + height: 51px; + line-height: 50px; + cursor: default; + -webkit-transition-duration: 0.3s; + transition-duration: 0.3s; +} +.email-list > li a { + color: var(--ct-secondary-color); +} +.email-list > li a:hover { + color: var(--ct-tertiary-color); +} +.email-list > li .col-mail { + float: right; + position: relative; +} +.email-list > li .email-sender-info { + width: 320px; +} +.email-list > li .email-sender-info .star-toggle, +.email-list > li .email-sender-info .checkbox-wrapper-mail { + display: block; + float: right; +} +.email-list > li .email-sender-info .checkbox-wrapper-mail { + margin: 15px 20px 0 10px; + cursor: pointer; + height: 20px; + width: 20px; +} +.email-list > li .email-sender-info .star-toggle { + color: var(--ct-gray-500); + margin-right: 10px; + font-size: 18px; +} +.email-list > li .email-sender-info .email-title { + position: absolute; + top: 0; + right: 100px; + left: 0; + text-overflow: ellipsis; + overflow: hidden; + white-space: nowrap; + margin-bottom: 0; + line-height: 50px; +} +.email-list > li .email-content { + position: absolute; + top: 0; + right: 320px; + left: 0; + bottom: 0; +} +.email-list > li .email-content .email-subject, +.email-list > li .email-content .email-date { + position: absolute; + top: 0; +} +.email-list > li .email-content .email-subject { + right: 0; + left: 110px; + text-overflow: ellipsis; + overflow: hidden; + white-space: nowrap; +} +.email-list > li .email-content .email-date { + left: 0; + width: 100px; + text-align: left; + padding-right: 10px; +} +.email-list > li.active, .email-list > li.mail-selected { + background: var(--ct-tertiary-bg); + -webkit-transition-duration: 0.05s; + transition-duration: 0.05s; +} +.email-list > li.unread a { + font-weight: 500; + color: var(--ct-dark); +} +.email-list > li.unread a i { + font-weight: normal; +} +.email-list > li .email-action-icons { + opacity: 0; +} +.email-list > li .email-action-icons ul { + display: -webkit-box; + display: -ms-flexbox; + display: flex; + position: absolute; + -webkit-transition: all 0.5s; + transition: all 0.5s; + left: -180px; +} +.email-list > li .email-action-icons ul li { + margin: 0 8px; +} +.email-list > li .email-action-icons ul .email-action-icons-item { + font-size: 20px; + -webkit-transition: all 0.5s; + transition: all 0.5s; +} +.email-list > li .email-action-icons ul .email-action-icons-item:hover { + color: #f7473a; +} +.email-list > li:hover { + background: var(--ct-tertiary-bg); + -webkit-transition-duration: 0.05s; + transition-duration: 0.05s; +} +.email-list > li:hover .email-action-icons { + opacity: 1; +} +.email-list > li:hover .email-action-icons ul { + -webkit-transition: all 0.5s; + transition: all 0.5s; + left: 10px; +} +.email-list > li:hover .email-content .email-date { + opacity: 0; +} +.email-list > li:hover .email-content .email-subject { + left: 180px; + -webkit-transition: all 0.5s; + transition: all 0.5s; +} + +.email-menu-list a { + color: var(--ct-secondary-color); + padding: 8px 5px; + display: block; +} +.email-menu-list a:hover { + color: var(--ct-tertiary-color); +} +.email-menu-list a .badge { + margin-top: 3px; +} + +.labels-list a { + padding: 7px 5px; +} + +.write-mdg-box .CodeMirror { + height: 150px; +} + +@media (max-width: 648px) { + .page-aside-right { + width: 100%; + float: none; + padding: 0 10px 20px 10px; + } + .page-aside-right:before { + width: 0; + } + .page-aside-right { + margin-right: 0; + border: 0; + padding-right: 0; + } + .email-list li .email-sender-info .checkbox-wrapper-mail { + margin-right: 0; + } +} +@media (max-width: 520px) { + .page-aside-left > .btn-group { + margin-bottom: 10px; + } + .email-list li .email-sender-info { + width: 150px; + } + .email-list li .email-sender-info .email-title { + right: 80px; + } + .email-list li .email-content { + display: none; + } +} +.timeline { + margin-bottom: 50px; + position: relative; +} +.timeline:before { + background-color: var(--ct-border-color); + bottom: 0; + content: ""; + right: 50%; + position: absolute; + top: 30px; + width: 2px; + z-index: 0; +} + +.timeline-show { + position: relative; +} +.timeline-show .time-show-name { + display: inline-block; + border-radius: 4px; + background-color: var(--ct-border-color); + padding: 7px 15px; +} + +.timeline-box { + background-color: var(--ct-secondary-bg); + -webkit-box-shadow: var(--ct-box-shadow); + box-shadow: var(--ct-box-shadow); + display: block; + margin: 15px 0; + padding: 1.25rem; + border-radius: var(--ct-border-radius); +} + +.timeline-album { + margin-top: 12px; +} +.timeline-album a { + display: inline-block; + margin-left: 5px; +} +.timeline-album img { + height: 36px; + width: auto; + border-radius: 3px; +} + +@media (min-width: 768px) { + .timeline .timeline-box { + margin-right: 65px; + } + .timeline .timeline-icon { + background: var(--ct-border-color); + border-radius: 50%; + display: block; + height: 24px; + right: -11px; + margin-top: -12px; + position: absolute; + text-align: center; + top: 50%; + width: 24px; + } + .timeline .timeline-icon i { + color: var(--ct-secondary-color); + font-size: 1rem; + vertical-align: middle; + } + .timeline .timeline-desk { + position: relative; + display: table-cell; + vertical-align: top; + width: 50%; + } + .timeline-lg-item { + display: -webkit-box; + display: -ms-flexbox; + display: flex; + } + .timeline-lg-item:before { + content: ""; + display: block; + width: 50%; + } + .timeline-lg-item .timeline-desk .arrow { + border-bottom: 12px solid transparent; + border-left: 12px solid var(--ct-secondary-bg) !important; + border-top: 12px solid transparent; + display: block; + height: 0; + right: 53px; + margin-top: -12px; + position: absolute; + top: 50%; + width: 0; + } + .timeline-lg-item.timeline-item-left { + text-align: left; + } + .timeline-lg-item.timeline-item-right:after { + content: ""; + display: block; + width: 50%; + } + .timeline-lg-item.timeline-item-left .timeline-desk .arrow-alt { + border-bottom: 12px solid transparent; + border-right: 12px solid var(--ct-secondary-bg) !important; + border-top: 12px solid transparent; + display: block; + height: 0; + right: auto; + margin-top: -12px; + position: absolute; + left: 53px; + top: 50%; + width: 0; + } + .timeline-lg-item.timeline-item-left .timeline-desk .album { + float: left; + margin-top: 20px; + } + .timeline-lg-item.timeline-item-left .timeline-desk .album a { + float: left; + margin-right: 5px; + } + .timeline-lg-item.timeline-item-left .timeline-icon { + right: auto; + left: -13px; + } + .timeline-lg-item.timeline-item-right:before { + display: none; + } + .timeline-lg-item.timeline-item-left .timeline-box { + margin-left: 65px; + margin-right: 0; + } +} +@media (max-width: 767.98px) { + .timeline .timeline-icon { + display: none; + } +} +.apex-charts { + min-height: 10px !important; +} +.apex-charts text { + font-family: var(--ct-font-sans-serif) !important; +} +.apex-charts .apexcharts-canvas { + margin: 0 auto; +} + +.apexcharts-tooltip-title, +.apexcharts-tooltip-text { + font-family: var(--ct-font-sans-serif) !important; +} + +.apexcharts-tooltip { + border: 1px solid var(--ct-border-color) !important; + background-color: var(--ct-secondary-bg) !important; + -webkit-box-shadow: var(--ct-box-shadow) !important; + box-shadow: var(--ct-box-shadow) !important; +} +.apexcharts-tooltip * { + font-family: var(--ct-font-sans-serif) !important; + color: var(--ct-tertiary-color) !important; +} +.apexcharts-tooltip .apexcharts-tooltip-title { + background-color: rgba(var(--ct-light-rgb), 0.75) !important; + border-bottom: 1px solid var(--ct-border-color) !important; +} + +.apexcharts-tooltip.apexcharts-theme-dark * { + color: #fff !important; +} + +.apexcharts-legend-series { + font-weight: 600; +} + +.apexcharts-gridline, +.apexcharts-xaxis-tick { + pointer-events: none; + stroke: rgba(var(--ct-light-rgb), 0.5) !important; +} + +.apexcharts-legend-text { + color: var(--ct-tertiary-color) !important; + font-family: var(--ct-font-sans-serif) !important; + font-size: 13px !important; + vertical-align: middle; +} + +.apexcharts-legend-marker { + vertical-align: middle; + margin-left: 5px !important; +} + +.apexcharts-pie-label { + fill: #fff !important; +} + +.apexcharts-title-text, +.apexcharts-subtitle-text { + fill: var(--ct-secondary-color); + font-family: var(--ct-font-sans-serif) !important; +} + +.apexcharts-yaxis text, +.apexcharts-xaxis text { + font-family: var(--ct-font-sans-serif) !important; + fill: var(--ct-secondary-color); +} + +.apexcharts-yaxis-title { + font-weight: 500; +} + +.apexcharts-annotation-rect { + fill: var(--ct-tertiary-bg) !important; +} + +.apexcharts-xaxis-annotations rect, +.apexcharts-yaxis-annotations rect { + stroke: none; +} + +.apex-toolbar .btn-light.active { + background-color: var(--ct-primary); + border-color: var(--ct-primary); + color: #fff; +} + +.apexcharts-xaxistooltip { + background-color: var(--ct-secondary-bg) !important; + border: 0 solid var(--ct-border-color) !important; + -webkit-box-shadow: var(--ct-box-shadow) !important; + box-shadow: var(--ct-box-shadow) !important; + color: var(--ct-body-color) !important; +} + +.apexcharts-xaxistooltip-bottom:before { + border-bottom-color: var(--ct-border-color) !important; +} + +.apexcharts-xaxistooltip-text, +.apexcharts-datalabels text { + font-family: var(--ct-font-sans-serif) !important; +} + +.apexcharts-datalabel-value { + fill: var(--ct-body-color) !important; +} + +.apexcharts-menu { + background: var(--ct-secondary-bg) !important; + padding: 0.25rem 0 !important; + -webkit-box-shadow: var(--ct-box-shadow) !important; + box-shadow: var(--ct-box-shadow) !important; + border: 0 solid var(--ct-border-color) !important; + text-align: center !important; +} +.apexcharts-menu .apexcharts-menu-item:hover { + color: var(--ct-primary) !important; + background-color: var(--ct-primary-bg-subtle) !important; +} + +.apexcharts-radar-series polygon { + fill: transparent; + stroke: var(--ct-border-color); +} +.apexcharts-radar-series line { + stroke: var(--ct-border-color); +} + +.apexcharts-track path { + stroke: var(--ct-tertiary-bg); +} + +.apexcharts-marker { + stroke: var(--ct-body-bg); +} + +.calendar { + float: right; + margin-bottom: 0; +} + +.fc-view { + margin-top: 30px; +} + +.none-border .modal-footer { + border-top: none; +} + +.fc-toolbar { + margin: 6px 0 5px 0 !important; +} +.fc-toolbar h2, .fc-toolbar .h2 { + font-size: 1.25rem !important; + line-height: 1.875rem; + text-transform: uppercase; +} + +.fc-day-grid-event .fc-time { + font-weight: 600; +} + +th.fc-day-header { + padding: 0.5rem 0; +} + +.fc-day { + background: transparent; +} + +.fc-toolbar .fc-state-active, +.fc-toolbar .ui-state-active, +.fc-toolbar button:focus, +.fc-toolbar button:hover, +.fc-toolbar .ui-state-hover { + z-index: 0; +} + +.fc th.fc-widget-header { + background: var(--ct-tertiary-bg); + font-size: 13px; + line-height: 20px; + padding: 10px 0; + text-transform: uppercase; + font-weight: 600; +} +.fc .fc-daygrid-body, +.fc .fc-scrollgrid-section-body table, +.fc .fc-scrollgrid-section-footer table { + width: 100% !important; +} + +.fc-unthemed th, +.fc-unthemed td, +.fc-unthemed thead, +.fc-unthemed tbody, +.fc-unthemed .fc-divider, +.fc-unthemed .fc-row, +.fc-unthemed .fc-popover { + border-color: var(--ct-border-color); +} +.fc-unthemed td.fc-today, +.fc-unthemed .fc-divider { + background: var(--ct-tertiary-bg); +} + +.fc-button { + background: var(--ct-tertiary-bg); + border: none; + color: var(--ct-tertiary-color); + text-transform: capitalize; + -webkit-box-shadow: none; + box-shadow: none; + border-radius: 3px; + margin: 0 3px; + padding: 6px 12px; + height: auto; +} + +.fc-text-arrow { + font-family: inherit; + font-size: 1rem; +} + +.fc-state-hover, +.fc-state-highlight, +.fc-cell-overlay { + background: var(--ct-tertiary-bg); +} + +.fc-state-down, +.fc-state-active, +.fc-state-disabled { + background-color: var(--ct-primary); + color: #fff; + text-shadow: none; +} + +.fc-unthemed .fc-today { + background: #fff; +} + +.fc-event { + border-radius: 2px; + border: none; + cursor: move; + font-size: 0.8125rem; + margin: 5px 7px; + padding: 5px 5px; + text-align: center; + color: #fff; + -webkit-box-shadow: var(--ct-box-shadow-lg); + box-shadow: var(--ct-box-shadow-lg); +} +.fc-event.bg-dark .fc-event-time, +.fc-event.bg-dark .fc-event-title { + color: var(--ct-emphasis-color); +} +.fc-event.bg-dark .fc-daygrid-event-dot { + border-color: var(--ct-border-color); +} + +.external-event { + cursor: move; + margin: 10px 0; + padding: 8px 10px; + color: #fff; + border-radius: 4px; +} + +.fc-basic-view td.fc-week-number span { + padding-left: 8px; +} +.fc-basic-view td.fc-day-number { + padding-left: 8px; +} +.fc-basic-view .fc-content { + color: #fff; +} + +.fc-time-grid-event .fc-content { + color: #fff; +} + +.fc-daygrid-day-number { + float: left; + height: 20px; + width: 20px; + text-align: center; + line-height: 20px; + background-color: var(--ct-tertiary-bg); + border-radius: 50%; + margin: 5px; + font-size: 11px; + padding: 0 !important; +} + +.fc-daygrid-event-dot { + border-color: #fff; +} + +.fc-event-time, +.fc-event-title { + color: #fff; +} + +.table-active, +.table-active > td, +.table-active > th, +.fc .fc-list-sticky .fc-list-day > * { + background-color: transparent; +} + +.fc .fc-list-event:hover td { + background-color: inherit; +} + +@media (max-width: 767.98px) { + .fc-toolbar { + display: block !important; + } + .fc-toolbar .fc-toolbar-chunk { + margin: 6px 0; + } + .fc-toolbar .fc-right, +.fc-toolbar .fc-left, +.fc-toolbar .fc-center { + float: none; + display: block; + clear: both; + margin: 10px 0; + } + .fc .fc-toolbar > * > * { + float: none; + } + .fc-today-button { + display: none; + } +} +.fc-toolbar .btn { + --ct-btn-padding-y: 0.28rem; + --ct-btn-padding-x: 0.8rem; + --ct-btn-font-size: 0.85rem; + --ct-btn-border-radius: var(--ct-border-radius-sm); +} + +.fc-list-item-title, +.fc-list-item-time { + color: #fff; +} + +#calendar .table-bordered td, +#calendar .table-bordered th { + border: var(--ct-border-width) solid var(--ct-border-color); +} + +[dir=rtl] .fc-toolbar-chunk .btn-group .btn:first-child { + border-top-right-radius: 0px !important; + border-bottom-right-radius: 0px !important; + border-radius: var(--ct-border-radius-sm); +} +[dir=rtl] .fc-toolbar-chunk .btn-group .btn:last-child { + border-top-left-radius: 0px !important; + border-bottom-left-radius: 0px !important; + border-radius: var(--ct-border-radius-sm); +} + +.chartjs-chart { + margin: auto; + position: relative; + width: 100%; +} + +.dataTables_wrapper.container-fluid, .dataTables_wrapper.container-sm, .dataTables_wrapper.container-md, .dataTables_wrapper.container-lg, .dataTables_wrapper.container-xl, .dataTables_wrapper.container-xxl { + padding: 0; +} + +table.dataTable { + border-collapse: collapse !important; + margin-bottom: 15px !important; +} +table.dataTable.dtr-inline.collapsed > tbody > tr > td.dtr-control:before, +table.dataTable.dtr-inline.collapsed > tbody > tr th.dtr-control:before { + background-color: var(--ct-primary); + -webkit-box-shadow: 0px 0px 2px 0px var(--ct-primary); + box-shadow: 0px 0px 2px 0px var(--ct-primary); +} +table.dataTable thead:not.table-light th { + background-color: transparent; + border-bottom-color: var(--ct-gray-300); +} +table.dataTable tbody tr.even td, +table.dataTable tbody tr.odd td { + background-color: transparent; +} +table.dataTable tbody > tr.selected td { + background-color: var(--ct-primary); +} +table.dataTable.table-striped > tbody > tr.selected:nth-of-type(odd) > * { + --ct-table-accent-bg: $primary !important; +} +table.dataTable thead .sorting:before, +table.dataTable thead .sorting_asc:before, +table.dataTable thead .sorting_desc:before, +table.dataTable thead .sorting_asc_disabled:before, +table.dataTable thead .sorting_desc_disabled:before { + left: 0.5rem; + right: auto; + content: "\ea77"; + font-family: "remixicon"; + font-size: 1rem; + top: 12px; +} +table.dataTable thead .sorting:after, +table.dataTable thead .sorting_asc:after, +table.dataTable thead .sorting_desc:after, +table.dataTable thead .sorting_asc_disabled:after, +table.dataTable thead .sorting_desc_disabled:after { + left: 0.5em; + right: auto; + content: "\ea4d"; + font-family: "remixicon"; + top: 18px; + font-size: 1rem; +} +table.dataTable thead > tr > th.sorting_asc, table.dataTable thead > tr > th.sorting_desc, table.dataTable thead > tr > th.sorting { + padding-left: 30px; + padding-right: 0.75rem; +} +table.dataTable tbody > tr.selected, +table.dataTable tbody > tr > .selected { + background-color: var(--ct-primary); +} +table.dataTable tbody > tr.selected td, +table.dataTable tbody > tr > .selected td { + border-color: var(--ct-primary); +} +table.dataTable tbody td:focus { + outline: none !important; +} +table.dataTable tbody th.focus, +table.dataTable tbody td.focus { + outline: 2px solid #4254ba !important; + outline-offset: -1px; + background-color: rgba(var(--ct-primary-rgb), 0.15); +} + +.dataTables_info { + font-weight: 600; +} + +.dtfh-floatingparent { + top: var(--ct-topbar-height) !important; +} + +table.dataTable.dtr-inline.collapsed > tbody > tr[role=row] > td:first-child:before, +table.dataTable.dtr-inline.collapsed > tbody > tr[role=row] > th:first-child:before { + -webkit-box-shadow: 0 2px 5px 0 rgba(27, 23, 30, 0.3); + box-shadow: 0 2px 5px 0 rgba(27, 23, 30, 0.3); + background-color: #17a497; + top: auto; + bottom: auto; +} +table.dataTable.dtr-inline.collapsed > tbody > tr.parent > td:first-child:before, +table.dataTable.dtr-inline.collapsed > tbody > tr.parent > th:first-child:before { + background-color: #f7473a; +} + +div.dt-button-info { + background-color: var(--ct-primary); + border: none; + color: #fff; + -webkit-box-shadow: none; + box-shadow: none; + border-radius: 3px; + text-align: center; + z-index: 21; +} +div.dt-button-info h2, div.dt-button-info .h2 { + border-bottom: none; + background-color: rgba(255, 255, 255, 0.2); + color: #fff; +} + +@media (max-width: 767.98px) { + li.paginate_button.previous, +li.paginate_button.prev { + display: inline-block; + font-size: 1.5rem; + } + li.paginate_button { + display: none; + } + .dataTables_paginate ul { + text-align: center; + display: block; + margin: 1.25rem 0 0 !important; + } + div.dt-buttons { + display: inline-table; + margin-bottom: 1.25rem; + } +} +.activate-select .sorting_1 { + background-color: var(--ct-gray-100) !important; +} + +div.dataTables_wrapper div.dataTables_filter { + text-align: left; +} +@media (max-width: 576px) { + div.dataTables_wrapper div.dataTables_filter { + text-align: center; + } +} +div.dataTables_wrapper div.dataTables_filter input { + margin-right: 0.5em; + margin-left: 0; +} +div.dataTables_wrapper div.dataTables_length { + text-align: right; +} +@media (max-width: 576px) { + div.dataTables_wrapper div.dataTables_length { + text-align: center; + } +} + +div.table-responsive > div.dataTables_wrapper > div.row > div[class^=col-]:last-child { + padding-left: 0; +} +div.table-responsive > div.dataTables_wrapper > div.row > div[class^=col-]:first-child { + padding-right: 0; +} + +div.dataTables_scrollBody { + border-right: none !important; +} +div.dataTables_scrollBody > table { + margin-bottom: 15px !important; +} +div.dataTables_scrollBody > table > :not(:first-child) { + border-top: none !important; +} + +.daterangepicker { + font-family: var(--ct-font-sans-serif); + border: 0 solid var(--ct-border-color); + -webkit-box-shadow: var(--ct-box-shadow-lg); + box-shadow: var(--ct-box-shadow-lg); + background-color: var(--ct-secondary-bg); + z-index: 999; +} +.daterangepicker .calendar-table { + border: 1px solid var(--ct-secondary-bg); + background-color: var(--ct-secondary-bg); +} +.daterangepicker .calendar-table td, +.daterangepicker .calendar-table th { + color: var(--ct-gray-600); +} +.daterangepicker .calendar-table .prev span, +.daterangepicker .calendar-table .next span { + border-color: var(--ct-border-color); +} +.daterangepicker .ranges li:hover { + background-color: var(--ct-primary-bg-subtle); +} +.daterangepicker .ranges li.active { + background-color: var(--ct-primary); +} +.daterangepicker td.in-range { + background: var(--ct-tertiary-bg); + color: var(--ct-tertiary-color); +} +.daterangepicker td.off, .daterangepicker td.off.end-date, .daterangepicker td.off.in-range, .daterangepicker td.off.start-date { + background-color: var(--ct-secondary-bg); + color: var(--ct-body-color); + opacity: 0.5; +} +.daterangepicker td.active, .daterangepicker td.active:hover { + background-color: var(--ct-primary); + color: #fff; +} +.daterangepicker td.available:hover, +.daterangepicker th.available:hover, +.daterangepicker td.active, +.daterangepicker td.active:hover { + background-color: var(--ct-primary); + color: #fff; +} +.daterangepicker td.available:hover span, +.daterangepicker th.available:hover span, +.daterangepicker td.active span, +.daterangepicker td.active:hover span { + border-color: #fff; +} +.daterangepicker:after { + border-bottom: 6px solid var(--ct-secondary-bg); +} +.daterangepicker:before { + border-bottom: 7px solid var(--ct-border-color); +} +.daterangepicker .drp-buttons { + border-top: 1px solid var(--ct-border-color); +} +.daterangepicker select.ampmselect, .daterangepicker select.hourselect, .daterangepicker select.minuteselect, .daterangepicker select.secondselect { + background: var(--ct-tertiary-bg); + border: 1px solid var(--ct-border-color); + color: var(--ct-body-color); +} +.daterangepicker.show-ranges .drp-calendar.left { + border-right: 1px solid var(--ct-border-color) !important; +} + +.flatpickr-calendar { + background: var(--ct-secondary-bg); + -webkit-box-shadow: var(--ct-box-shadow-lg); + box-shadow: var(--ct-box-shadow-lg); + border: none; +} +.flatpickr-calendar.arrowTop:before { + border-bottom-color: var(--ct-secondary-bg); +} +.flatpickr-calendar.arrowTop:after { + border-bottom-color: var(--ct-secondary-bg); +} +.flatpickr-calendar.arrowBottom:before, .flatpickr-calendar.arrowBottom:after { + border-top-color: var(--ct-secondary-bg); +} + +.flatpickr-current-month { + font-size: 110%; +} + +.flatpickr-day.selected, .flatpickr-day.startRange, .flatpickr-day.endRange, .flatpickr-day.selected.inRange, .flatpickr-day.startRange.inRange, .flatpickr-day.endRange.inRange, .flatpickr-day.selected:focus, .flatpickr-day.startRange:focus, .flatpickr-day.endRange:focus, .flatpickr-day.selected:hover, .flatpickr-day.startRange:hover, .flatpickr-day.endRange:hover, .flatpickr-day.selected.prevMonthDay, .flatpickr-day.startRange.prevMonthDay, .flatpickr-day.endRange.prevMonthDay, .flatpickr-day.selected.nextMonthDay, .flatpickr-day.startRange.nextMonthDay, .flatpickr-day.endRange.nextMonthDay { + background: var(--ct-primary); + border-color: var(--ct-primary); +} +.flatpickr-day.selected.startRange + .endRange:not(:nth-child(7n+1)), .flatpickr-day.startRange.startRange + .endRange:not(:nth-child(7n+1)), .flatpickr-day.endRange.startRange + .endRange:not(:nth-child(7n+1)) { + -webkit-box-shadow: 10px 0 0 var(--ct-primary); + box-shadow: 10px 0 0 var(--ct-primary); +} + +.flatpickr-time input:hover, +.flatpickr-time .flatpickr-am-pm:hover, +.flatpickr-time input:focus, +.flatpickr-time .flatpickr-am-pm:focus { + background: var(--ct-secondary-bg); + color: var(--ct-tertiary-color); +} + +.flatpickr-months .flatpickr-month { + height: 36px; +} +.flatpickr-months .flatpickr-next-month, +.flatpickr-months .flatpickr-prev-month, +.flatpickr-months .flatpickr-month { + color: var(--ct-gray-500); + fill: var(--ct-gray-500); +} + +.flatpickr-weekdays { + background-color: var(--ct-tertiary-bg); +} + +span.flatpickr-weekday, +.flatpickr-day, +.flatpickr-current-month input.cur-year[disabled], +.flatpickr-current-month input.cur-year[disabled]:hover, +.flatpickr-time input, +.flatpickr-time .flatpickr-time-separator, +.flatpickr-time .flatpickr-am-pm { + color: var(--ct-body-color); + fill: var(--ct-body-color); +} + +.flatpickr-day.disabled, .flatpickr-day.disabled:hover, .flatpickr-day.prevMonthDay, .flatpickr-day.nextMonthDay, .flatpickr-day.notAllowed, .flatpickr-day.notAllowed.prevMonthDay, .flatpickr-day.notAllowed.nextMonthDay { + color: #adb5bd; +} +.flatpickr-day.inRange, .flatpickr-day.prevMonthDay.inRange, .flatpickr-day.nextMonthDay.inRange, .flatpickr-day.today.inRange, .flatpickr-day.prevMonthDay.today.inRange, .flatpickr-day.nextMonthDay.today.inRange, .flatpickr-day:hover, .flatpickr-day.prevMonthDay:hover, .flatpickr-day.nextMonthDay:hover, .flatpickr-day:focus, .flatpickr-day.prevMonthDay:focus, .flatpickr-day.nextMonthDay:focus { + background: var(--ct-primary-bg-subtle); + border-color: var(--ct-primary-bg-subtle); +} + +.flatpickr-calendar.showTimeInput.hasTime .flatpickr-time { + border-top: 1px solid var(--ct-secondary-bg); +} + +.numInputWrapper:hover, +.flatpickr-current-month .flatpickr-monthDropdown-months:hover { + background-color: transparent; + color: var(--ct-tertiary-color); +} + +.flatpickr-day.inRange { + -webkit-box-shadow: 5px 0 0 var(--ct-primary-bg-subtle), -5px 0 0 var(--ct-primary-bg-subtle); + box-shadow: 5px 0 0 var(--ct-primary-bg-subtle), -5px 0 0 var(--ct-primary-bg-subtle); +} + +.flatpickr-day.flatpickr-disabled, +.flatpickr-day.flatpickr-disabled:hover { + color: #adb5bd; +} + +.flatpickr-calendar.hasTime .flatpickr-time { + border-top: var(--ct-border-color); +} + +.bg-dragula { + background-color: var(--ct-tertiary-bg); +} + +.gu-mirror { + position: fixed !important; + margin: 0 !important; + z-index: 9999 !important; + opacity: 0.8; + -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)"; + filter: alpha(opacity=80); +} + +.gu-hide { + display: none !important; +} + +.gu-unselectable { + -webkit-user-select: none !important; + -moz-user-select: none !important; + -ms-user-select: none !important; + user-select: none !important; +} + +.gu-transit { + opacity: 0.2; + -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=20)"; + filter: alpha(opacity=20); +} + +.dragula-handle { + position: relative; + width: 36px; + height: 36px; + font-size: 24px; + text-align: center; + cursor: move; +} +.dragula-handle:before { + content: "\f38f"; + font-family: "remixicon"; + position: absolute; +} + +.dropzone { + border: 2px dashed var(--ct-border-color); + background: var(--ct-secondary-bg); + border-radius: 6px; + cursor: pointer; + min-height: 150px; + padding: 20px; +} +.dropzone .dz-message { + text-align: center; + margin: 2rem 0; +} +.dropzone.dz-started .dz-message { + display: none; +} + +.form-wizard-header { + margin-right: -1.25rem; + margin-left: -1.25rem; + background-color: var(--ct-tertiary-bg); + border-top: 1px solid var(--ct-body-bg); + border-bottom: 1px solid var(--ct-body-bg); +} + +.gmaps, +.gmaps-panaroma { + height: 300px; + background: var(--ct-tertiary-bg); + border-radius: 3px; +} + +.jvectormap-label { + border: none; + background: var(--ct-tertiary-bg); + color: var(--ct-tertiary-color); + -webkit-box-shadow: var(--ct-box-shadow-lg); + box-shadow: var(--ct-box-shadow-lg); + font-family: var(--ct-font-sans-serif); + font-size: 0.875rem; + padding: 5px 8px; +} + +.jvectormap-container .jvectormap-zoomin, +.jvectormap-container .jvectormap-zoomout { + height: 24px; + width: 24px; + line-height: 20px; + font-size: 15px; + background-color: var(--ct-tertiary-bg); + color: var(--ct-tertiary-color); +} +.jvectormap-container .jvectormap-zoomout { + top: 37px; +} + +.ql-editor { + text-align: right; +} +.ql-editor ol, +.ql-editor ul { + padding-right: 1.5em; + padding-left: 0; +} +.ql-editor li:not(.ql-direction-rtl)::before { + margin-right: -1.5em; + margin-left: 0.3em; + text-align: left; +} + +.ql-container { + font-family: var(--ct-font-sans-serif); +} +.ql-container.ql-snow { + border-color: var(--ct-border-color); + border-radius: 0 0 0.25rem 0.25rem; +} + +.ql-bubble { + border: var(--ct-border-width) solid var(--ct-border-color); + border-radius: 0.25rem; +} + +.ql-toolbar { + font-family: var(--ct-font-sans-serif) !important; +} +.ql-toolbar span { + outline: none !important; + color: var(--ct-body-color); +} +.ql-toolbar span:hover { + color: #4254ba !important; +} +.ql-toolbar.ql-snow { + border-radius: 0.25rem 0.25rem 0 0; + border-color: var(--ct-border-color); +} +.ql-toolbar.ql-snow .ql-picker.ql-expanded .ql-picker-label { + border-color: transparent; +} +.ql-toolbar.ql-snow .ql-picker-options { + -webkit-box-shadow: var(--ct-box-shadow-lg); + box-shadow: var(--ct-box-shadow-lg); + border-radius: 0.15rem; + border: none; +} + +.ql-snow .ql-stroke, +.ql-snow .ql-script, +.ql-snow .ql-strike svg { + stroke: var(--ct-body-color); +} +.ql-snow .ql-fill { + fill: var(--ct-body-color); +} +.ql-snow .ql-picker:not(.ql-color-picker):not(.ql-icon-picker) svg { + left: 0; + right: auto; +} +.ql-snow .ql-picker.ql-expanded .ql-picker-label { + color: var(--ct-body-color); +} + +.ql-snow .ql-picker-options { + background-color: var(--ct-secondary-bg); + border-color: var(--ct-border-color) !important; +} + +.select2-container { + width: 100% !important; +} +.select2-container .select2-selection--single { + border: var(--ct-border-width) solid var(--ct-border-color); + height: calc(1.5em + 0.9rem + calc(var(--ct-border-width) * 2)); + background-color: var(--ct-secondary-bg); + outline: none; +} +.select2-container .select2-selection--single .select2-selection__rendered { + line-height: 36px; + padding-right: 12px; + color: var(--ct-body-color); +} +.select2-container .select2-selection--single .select2-selection__arrow { + height: 34px; + width: 34px; + right: 3px; +} +.select2-container .select2-selection--single .select2-selection__arrow b { + border-color: var(--ct-border-color) transparent transparent transparent; + border-width: 6px 6px 0 6px; +} + +.select2-container--open .select2-selection--single .select2-selection__arrow b { + border-color: transparent transparent var(--ct-border-color) transparent !important; + border-width: 0 6px 6px 6px !important; +} + +.select2-results__option { + padding: 6px 12px; +} + +.select2-dropdown { + border: 0 solid var(--ct-border-color); + -webkit-box-shadow: var(--ct-box-shadow-lg); + box-shadow: var(--ct-box-shadow-lg); + background-color: var(--ct-secondary-bg); + z-index: 1056; +} + +.select2-results__options::-webkit-scrollbar { + -webkit-appearance: none; +} +.select2-results__options::-webkit-scrollbar:vertical { + width: 5px; + margin-left: 5px; +} +.select2-results__options::-webkit-scrollbar:horizontal { + height: 5px; +} +.select2-results__options::-webkit-scrollbar-thumb { + background-color: rgba(var(--ct-dark-rgb), 0.2); + border-radius: 10px; + margin-left: 5px; + border: none; +} +.select2-results__options::-webkit-scrollbar-track { + border-radius: 10px; + background-color: transparent; +} +.select2-results__options::-webkit-scrollbar-corner { + background-color: transparent; +} + +.select2-container--default .select2-results__option--selected { + background-color: var(--ct-tertiary-bg); +} +.select2-container--default .select2-search--dropdown { + padding: 10px; + background-color: var(--ct-secondary-bg); +} +.select2-container--default .select2-search--dropdown .select2-search__field { + outline: none; + border: 1px solid var(--ct-border-color); + background-color: var(--ct-secondary-bg); + color: var(--ct-body-color); + border-radius: 0.25rem; +} +.select2-container--default .select2-results__option--highlighted[aria-selected] { + background-color: var(--ct-primary); +} +.select2-container--default .select2-results__option[aria-selected=true] { + background-color: var(--ct-secondary-bg); + color: var(--ct-tertiary-color); +} +.select2-container--default .select2-results__option[aria-selected=true]:hover { + background-color: var(--ct-primary); + color: #fff; +} +.select2-container--default .select2-selection--multiple .select2-selection__choice__display { + padding-right: 36px; + padding-left: 5px; +} +.select2-container--default .select2-selection--single .select2-selection__arrow { + right: 1px; + left: auto; +} + +.select2-container .select2-selection--multiple { + min-height: calc(1.5em + 0.9rem + calc(var(--ct-border-width) * 2)); + border: var(--ct-border-width) solid var(--ct-border-color) !important; + background-color: var(--ct-secondary-bg); +} +.select2-container .select2-selection--multiple .select2-selection__rendered { + padding: 1px 4px; +} +.select2-container .select2-selection--multiple .select2-search__field { + border: 0; + color: var(--ct-body-color); +} +.select2-container .select2-selection--multiple .select2-selection__choice { + background-color: var(--ct-primary); + border: none; + color: #fff; + border-radius: 3px; + padding: 0px 0 0 7px; + margin-top: 6px; +} +.select2-container .select2-selection--multiple .select2-selection__choice__remove { + color: #fff; + margin-left: 7px; + border-color: #5565c1; + padding: 0 8px; +} +.select2-container .select2-selection--multiple .select2-selection__choice__remove:hover { + color: #fff; + background-color: var(--ct-primary); +} +.select2-container .select2-search--inline .select2-search__field { + margin-top: 7px; + font-family: var(--ct-font-sans-serif); +} +.select2-container .select2-search textarea::-webkit-input-placeholder { + color: var(--ct-secondary-color); +} +.select2-container .select2-search textarea::-moz-placeholder { + color: var(--ct-secondary-color); +} +.select2-container .select2-search textarea:-ms-input-placeholder { + color: var(--ct-secondary-color); +} +.select2-container .select2-search textarea::-ms-input-placeholder { + color: var(--ct-secondary-color); +} +.select2-container .select2-search textarea::placeholder { + color: var(--ct-secondary-color); +} + +[dir=rtl] .select2-container--open .select2-dropdown { + right: auto; + left: 0; +} + +[data-simplebar] { + position: relative; + -webkit-box-orient: vertical; + -webkit-box-direction: normal; + -ms-flex-direction: column; + flex-direction: column; + -ms-flex-wrap: wrap; + flex-wrap: wrap; + -webkit-box-pack: start; + -ms-flex-pack: start; + justify-content: flex-start; + -ms-flex-line-pack: start; + align-content: flex-start; + -webkit-box-align: start; + -ms-flex-align: start; + align-items: flex-start; +} + +.simplebar-wrapper { + overflow: hidden; + width: inherit; + height: inherit; + max-width: inherit; + max-height: inherit; +} + +.simplebar-mask { + direction: inherit; + position: absolute; + overflow: hidden; + padding: 0; + margin: 0; + right: 0; + top: 0; + bottom: 0; + left: 0; + width: auto !important; + height: auto !important; + z-index: 0; +} + +.simplebar-offset { + direction: inherit !important; + -webkit-box-sizing: inherit !important; + box-sizing: inherit !important; + resize: none !important; + position: absolute; + top: 0; + right: 0; + bottom: 0; + left: 0; + padding: 0; + margin: 0; + -webkit-overflow-scrolling: touch; +} + +.simplebar-content-wrapper { + direction: inherit; + -webkit-box-sizing: border-box !important; + box-sizing: border-box !important; + position: relative; + display: block; + height: 100%; + /* Required for horizontal native scrollbar to not appear if parent is taller than natural height */ + width: auto; + overflow: auto; + /* Scroll on this element otherwise element can't have a padding applied properly */ + max-width: 100%; + /* Not required for horizontal scroll to trigger */ + max-height: 100%; + /* Needed for vertical scroll to trigger */ + scrollbar-width: none; +} + +.simplebar-content-wrapper::-webkit-scrollbar, +.simplebar-hide-scrollbar::-webkit-scrollbar { + display: none; +} + +.simplebar-content:before, +.simplebar-content:after { + content: " "; + display: table; +} + +.simplebar-placeholder { + max-height: 100%; + max-width: 100%; + width: 100%; + pointer-events: none; +} + +.simplebar-height-auto-observer-wrapper { + -webkit-box-sizing: inherit !important; + box-sizing: inherit !important; + height: 100%; + width: 100%; + max-width: 1px; + position: relative; + float: right; + max-height: 1px; + overflow: hidden; + z-index: -1; + padding: 0; + margin: 0; + pointer-events: none; + -webkit-box-flex: inherit; + -ms-flex-positive: inherit; + flex-grow: inherit; + -ms-flex-negative: 0; + flex-shrink: 0; + -ms-flex-preferred-size: 0; + flex-basis: 0; +} + +.simplebar-height-auto-observer { + -webkit-box-sizing: inherit; + box-sizing: inherit; + display: block; + opacity: 0; + position: absolute; + top: 0; + right: 0; + height: 1000%; + width: 1000%; + min-height: 1px; + min-width: 1px; + overflow: hidden; + pointer-events: none; + z-index: -1; +} + +.simplebar-track { + z-index: 1; + position: absolute; + left: 0; + bottom: 0; + pointer-events: none; + overflow: hidden; +} + +[data-simplebar].simplebar-dragging .simplebar-content { + pointer-events: none; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} + +[data-simplebar].simplebar-dragging .simplebar-track { + pointer-events: all; +} + +.simplebar-scrollbar { + position: absolute; + left: 2px; + width: 5px; + min-height: 10px; +} +.simplebar-scrollbar:before { + position: absolute; + content: ""; + background: #a2adb7; + border-radius: 7px; + right: 0; + left: 0; + opacity: 0; + -webkit-transition: opacity 0.2s linear; + transition: opacity 0.2s linear; +} + +.simplebar-scrollbar.simplebar-visible:before { + /* When hovered, remove all transitions from drag handle */ + opacity: 0.5; + -webkit-transition: opacity 0s linear; + transition: opacity 0s linear; +} + +.simplebar-track.simplebar-vertical { + top: 0; + width: 11px; +} +.simplebar-track.simplebar-vertical .simplebar-scrollbar:before { + top: 2px; + bottom: 2px; +} + +.simplebar-track.simplebar-horizontal { + right: 0; + height: 11px; +} +.simplebar-track.simplebar-horizontal .simplebar-scrollbar { + left: auto; + right: 0; + top: 2px; + height: 7px; + min-height: 0; + min-width: 10px; + width: auto; +} +.simplebar-track.simplebar-horizontal .simplebar-scrollbar:before { + height: 100%; + right: 2px; + left: 2px; +} + +/* Rtl support */ +[data-simplebar-direction=rtl] .simplebar-track.simplebar-vertical { + left: auto; + right: 0; +} + +.hs-dummy-scrollbar-size { + direction: ltr; + position: fixed; + opacity: 0; + visibility: hidden; + height: 500px; + width: 500px; + overflow-y: hidden; + overflow-x: scroll; +} + +.simplebar-hide-scrollbar { + position: fixed; + right: 0; + visibility: hidden; + overflow-y: scroll; + scrollbar-width: none; +} + +.custom-scroll { + height: 100%; +} + +[data-simplebar-lg] .simplebar-scrollbar { + left: 1px; + width: 10px; +} + +[data-simplebar-primary] .simplebar-scrollbar:before { + background: var(--ct-primary); +} + +.jq-toast-single { + text-align: right !important; + padding: 15px; + font-family: var(--ct-font-sans-serif); + background-color: var(--ct-primary); + font-size: 13px; + line-height: 22px; + -webkit-box-shadow: var(--ct-box-shadow-lg); + box-shadow: var(--ct-box-shadow-lg); +} +.jq-toast-single h2, .jq-toast-single .h2 { + font-family: var(--ct-font-sans-serif); +} +.jq-toast-single a { + font-size: 0.875rem; +} +.jq-toast-single a:hover { + color: #fff; +} + +.jq-has-icon { + padding: 10px; +} + +.close-jq-toast-single { + position: absolute; + top: -12px; + left: -12px; + font-size: 20px; + cursor: pointer; + height: 32px; + width: 32px; + background: var(--ct-gray-800); + color: var(--ct-gray-300); + border-radius: 50%; + text-align: center; + line-height: 32px; +} + +.jq-toast-loader { + height: 3px; + top: 0; + border-radius: 0; +} + +.jq-icon-primary { + background-color: #4254ba; + color: #fff; + border-color: #4254ba; +} + +.jq-icon-secondary { + background-color: #6c757d; + color: #fff; + border-color: #6c757d; +} + +.jq-icon-success { + background-color: #17a497; + color: #fff; + border-color: #17a497; +} + +.jq-icon-info { + background-color: #299bf6; + color: #fff; + border-color: #299bf6; +} + +.jq-icon-warning { + background-color: #fec20d; + color: #fff; + border-color: #fec20d; +} + +.jq-icon-danger { + background-color: #f7473a; + color: #fff; + border-color: #f7473a; +} + +.jq-icon-light { + background-color: #f2f2f7; + color: #fff; + border-color: #f2f2f7; +} + +.jq-icon-dark { + background-color: #49526b; + color: #fff; + border-color: #49526b; +} + +.jq-icon-purple { + background-color: #815ac5; + color: #fff; + border-color: #815ac5; +} + +.jq-icon-pink { + background-color: #ff679b; + color: #fff; + border-color: #ff679b; +} + +.jq-icon-error { + background-color: #f7473a; + color: #fff; + border-color: #f7473a; +} + +.jq-icon-info, +.jq-icon-warning, +.jq-icon-error, +.jq-icon-success { + background-image: none; +} + +.bootstrap-touchspin .btn .input-group-text { + padding: 0; + border: none; + background-color: transparent; + color: inherit; +} + +.twitter-typeahead { + display: inherit !important; +} + +.tt-query, +.tt-hint { + outline: none; +} + +.tt-query { + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); +} + +.tt-hint { + color: var(--ct-body-color); + background: var(--ct-secondary-bg) !important; +} + +.tt-menu { + width: 100%; + padding: 8px 0; + max-height: 200px; + overflow-y: auto; + background-color: var(--ct-secondary-bg); + -webkit-box-shadow: var(--ct-box-shadow-lg); + box-shadow: var(--ct-box-shadow-lg); + border: 1px solid var(--ct-border-color); +} + +.tt-suggestion { + padding: 3px 20px; + line-height: 24px; +} +.tt-suggestion:hover, .tt-suggestion.tt-cursor { + cursor: pointer; + color: #fff; + background-color: var(--ct-primary); +} +.tt-suggestion p { + margin: 0; +} + +.tt-highlight { + font-family: var(--ct-font-sans-serif); +} + +.typeahead-empty-message { + padding: 5px 10px; + color: #f7473a; +} + +.league-name { + padding: 3px 20px; +} + +.jqstooltip { + -webkit-box-sizing: content-box; + box-sizing: content-box; + width: auto !important; + height: auto !important; + background-color: #fff !important; + -webkit-box-shadow: 0 2px 5px 0 rgba(27, 23, 30, 0.3); + box-shadow: 0 2px 5px 0 rgba(27, 23, 30, 0.3); + padding: 5px 10px !important; + border-radius: 3px; + border-color: #fff !important; +} + +.jqsfield { + color: #000 !important; + font-size: 12px !important; + line-height: 18px !important; + font-family: var(--ct-font-sans-serif) !important; + font-weight: 700 !important; +} + +.rateit { + display: -moz-inline-box; + display: inline-block; + position: relative; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + -webkit-touch-callout: none; +} +.rateit .rateit-range * { + display: block; +} +.rateit .rateit-hover, +.rateit .rateit-selected { + position: absolute; + right: 0; + top: 0; + width: 0; +} +.rateit .rateit-hover-rtl, +.rateit .rateit-selected-rtl { + right: auto; + left: 0; +} +.rateit .rateit-hover { + color: #fec20d; +} +.rateit .rateit-hover-rtl { + background-position: left -32px; +} +.rateit .rateit-selected { + color: #f7473a; +} +.rateit .rateit-selected-rtl { + background-position: left -16px; +} +.rateit .rateit-preset { + color: #fd7e14; +} +.rateit button.rateit-reset { + width: 16px; + height: 16px; + float: right; + outline: none; + border: none; + padding: 0; +} +.rateit .rateit-reset span { + display: none; +} +.rateit .rateit-range { + position: relative; + display: -moz-inline-box; + display: inline-block; + height: 16px; + outline: none; +} +.rateit.rateit-font .rateit-reset { + width: 0.6em; + height: 0.6em; + margin-left: 5px; + margin-top: 5px; + background: var(--ct-tertiary-bg); + border-radius: 50%; + position: relative; +} +.rateit.rateit-font .rateit-reset span { + display: block; + height: calc(50% - 0.045em); + top: 2px; + position: absolute; + border-bottom: 2px solid var(--ct-emphasis-color); + width: 50%; + margin-right: 25%; + margin-left: 25%; +} +.rateit.rateit-font .rateit-reset:hover, +.rateit.rateit-font button.rateit-reset:focus { + background: #f7473a; +} +.rateit.rateit-font .rateit-reset:hover span, +.rateit.rateit-font button.rateit-reset:focus span { + border-color: #fff; +} + +.rateit-remix { + font-family: "remixicon"; +} + +.rateit-font { + font-size: 24px; + line-height: 1em; +} +.rateit-font .rateit-range { + background: none; + height: auto; +} +.rateit-font .rateit-range > div { + background: none; + overflow: hidden; + cursor: default; + white-space: nowrap; +} +.rateit-font .rateit-empty { + color: var(--ct-border-color); +} + +.rateit .rateit-hover-rtl, +.rateit .rateit-selected-rtl { + left: auto; +} + +.irs { + position: relative; + display: block; + -webkit-touch-callout: none; + -ms-user-select: none; + -webkit-user-select: none; + -moz-user-select: none; + user-select: none; + font-size: 12px; +} + +.irs-line { + position: relative; + display: block; + overflow: hidden; + outline: none !important; +} + +.irs-bar { + position: absolute; + display: block; + right: 0; + width: 0; +} + +.irs-shadow { + position: absolute; + display: none; + right: 0; + width: 0; +} + +.irs-handle { + position: absolute; + display: block; + -webkit-box-sizing: border-box; + box-sizing: border-box; + cursor: default; + z-index: 1; +} +.irs-handle.type_last { + z-index: 2; +} + +.irs-min, +.irs-max { + position: absolute; + display: block; + cursor: default; +} + +.irs-min { + right: 0; + left: auto; +} + +.irs-max { + left: 0; + right: auto; +} + +[dir=rtl] .irs-min { + left: 0; + right: auto; +} +[dir=rtl] .irs-max { + right: 0; + left: auto; +} + +.irs-from, +.irs-to, +.irs-single { + position: absolute; + display: block; + top: 0; + cursor: default; + white-space: nowrap; +} + +.irs-grid { + position: absolute; + display: none; + bottom: 0; + left: 0; + width: 100%; + height: 20px; +} + +.irs-with-grid .irs-grid { + display: block; +} + +.irs-grid-pol { + position: absolute; + top: 0; + left: 0; + width: 1px; + height: 8px; + background: #6c757d; +} +.irs-grid-pol.small { + height: 4px; +} + +.irs-grid-text { + position: absolute; + bottom: 0; + left: 0; + white-space: nowrap; + text-align: center; + font-size: 11px; + line-height: 9px; + padding: 0 3px; + color: #6c757d; +} + +.irs-disable-mask { + position: absolute; + display: block; + top: 0; + right: -1%; + width: 102%; + height: 100%; + cursor: default; + z-index: 2; +} + +.lt-ie9 .irs-disable-mask { + background: #6c757d; + filter: alpha(opacity=0); + cursor: not-allowed; +} + +.irs-disabled { + opacity: 0.4; +} + +.irs-hidden-input { + position: absolute !important; + display: block !important; + top: 0 !important; + right: 0 !important; + width: 0 !important; + height: 0 !important; + font-size: 0 !important; + line-height: 0 !important; + padding: 0 !important; + margin: 0 !important; + overflow: hidden; + outline: none !important; + z-index: -9999 !important; + background: none !important; + border-style: solid !important; + border-color: transparent !important; +} + +.irs--flat { + height: 40px; +} +.irs--flat.irs-with-grid { + height: 60px; +} +.irs--flat .irs-line { + top: 25px; + height: 12px; + background-color: var(--ct-body-bg); + border-radius: 4px; +} +.irs--flat .irs-bar { + top: 25px; + height: 12px; + background-color: var(--ct-primary); +} +.irs--flat .irs-bar--single { + border-radius: 0 4px 4px 0; +} +.irs--flat .irs-shadow { + height: 1px; + bottom: 16px; + background-color: var(--ct-body-bg); +} +.irs--flat .irs-handle { + top: 22px; + width: 16px; + height: 18px; + background-color: transparent; +} +.irs--flat .irs-handle > i:first-child { + position: absolute; + display: block; + top: 0; + right: 50%; + width: 2px; + height: 100%; + margin-right: -1px; + background-color: #3948a0; +} +.irs--flat .irs-min, +.irs--flat .irs-max { + top: 0; + padding: 1px 3px; + color: var(--ct-secondary-color); + font-size: 10px; + line-height: 1.333; + text-shadow: none; + background-color: var(--ct-body-bg); + border-radius: 4px; +} +.irs--flat .irs-from, +.irs--flat .irs-to, +.irs--flat .irs-single { + color: #fff; + font-size: 10px; + line-height: 1.333; + text-shadow: none; + padding: 1px 5px; + background-color: var(--ct-primary); + border-radius: 4px; +} +.irs--flat .irs-from:before, +.irs--flat .irs-to:before, +.irs--flat .irs-single:before { + position: absolute; + display: block; + content: ""; + bottom: -6px; + right: 50%; + width: 0; + height: 0; + margin-right: -3px; + overflow: hidden; + border: 3px solid transparent; + border-top-color: var(--ct-primary); +} +.irs--flat .irs-grid-pol { + background-color: var(--ct-body-bg); +} +.irs--flat .irs-grid-text { + color: var(--ct-secondary-color); +} + +[dir=rtl] .irs-bar--single { + border-radius: 4px 0 0 4px !important; +} \ No newline at end of file diff --git a/pxy_dashboard/static/dashboard/css/app-rtl.min.css b/pxy_dashboard/static/dashboard/css/app-rtl.min.css new file mode 100644 index 0000000..29126c2 --- /dev/null +++ b/pxy_dashboard/static/dashboard/css/app-rtl.min.css @@ -0,0 +1,6 @@ +@charset "UTF-8";@import url(https://fonts.googleapis.com/css2?family=Roboto:wght@300;400;500;700&display=swap);:root{--ct-logo-lg-height:26px;--ct-logo-sm-height:28px;--ct-leftbar-width:240px;--ct-leftbar-width-md:160px;--ct-leftbar-width-sm:70px;--ct-leftbar-condensed-height:1500px;--ct-topbar-height:70px;--ct-menu-item-icon-size:1.1rem;--ct-menu-item-icon-width:30px;--ct-menu-item-font-size:0.875rem;--ct-menu-item-padding-x:12px;--ct-menu-item-padding-y:8px;--ct-footer-height:50px;--ct-theme-card-border-width:0px}html[data-menu-color=light]{--ct-menu-bg:#ffffff;--ct-menu-item-color:#49526b;--ct-menu-item-hover-color:#4254ba;--ct-menu-item-active-color:#4254ba;--ct-menu-condensed-link-bg:#313a46;--ct-help-box-bg:#4254ba}html[data-menu-color=dark]{--ct-menu-bg:#212529;--ct-menu-item-color:#8391a2;--ct-menu-item-hover-color:#bccee4;--ct-menu-item-active-color:#ffffff;--ct-menu-condensed-link-bg:#313a46;--ct-help-box-bg:rgba(255, 255, 255, 0.07)}html[data-menu-color=brand]{--ct-menu-bg:linear-gradient(135deg, #6379c3 0%, #4254ba 60%);--ct-menu-item-color:#cedce4;--ct-menu-item-hover-color:#ffffff;--ct-menu-item-active-color:#ffffff;--ct-menu-condensed-link-bg:#313a46;--ct-help-box-bg:rgba(255, 255, 255, 0.07)}html[data-bs-theme=dark][data-menu-color=dark],html[data-bs-theme=dark][data-menu-color=light]{--ct-menu-bg:#313a46;--ct-menu-item-color:#8391a2;--ct-menu-item-hover-color:#bccee4;--ct-menu-item-active-color:#ffffff;--ct-menu-condensed-link-bg:#313a46;--ct-help-box-bg:rgba(255, 255, 255, 0.07)}html[data-topbar-color=light]{--ct-topbar-bg:#ffffff;--ct-topbar-item-color:#6c757d;--ct-topbar-item-hover-color:#4254ba;--ct-topbar-search-bg:#f3f3f8;--ct-topbar-user-bg:#fbfcfc;--ct-topbar-user-border:#eef2f7}html[data-topbar-color=dark]{--ct-topbar-bg:#313a46;--ct-topbar-item-color:#8391a2;--ct-topbar-item-hover-color:#bccee4;--ct-topbar-search-bg:#464f5b;--ct-topbar-user-bg:#3c4655;--ct-topbar-user-border:#414d5d}html[data-topbar-color=brand]{--ct-topbar-bg:#4254ba;--ct-topbar-item-color:rgba(255, 255, 255, 0.7);--ct-topbar-item-hover-color:#ffffff;--ct-topbar-search-bg:rgba(255, 255, 255, 0.1);--ct-topbar-user-bg:rgba(255, 255, 255, 0.1);--ct-topbar-user-border:rgba(255, 255, 255, 0.15)}html[data-bs-theme=dark][data-topbar-color=dark],html[data-bs-theme=dark][data-topbar-color=light]{--ct-topbar-bg:#2f3742;--ct-topbar-item-color:#8391a2;--ct-topbar-item-hover-color:#bccee4;--ct-topbar-search-bg:#363f4a;--ct-topbar-user-bg:#363f4a;--ct-topbar-user-border:#414d5d}.border-dashed{border-style:dashed!important}.bg-pink-subtle{background-color:var(--ct-pink-bg-subtle)!important}.bg-purple-subtle{background-color:var(--ct-purple-bg-subtle)!important}/*! + * Bootstrap v5.3.0 (https://getbootstrap.com/) + * Copyright 2011-2023 The Bootstrap Authors + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) + */:root,[data-bs-theme=light]{--ct-blue:#4254ba;--ct-indigo:#4254ba;--ct-purple:#815ac5;--ct-pink:#ff679b;--ct-red:#f7473a;--ct-orange:#fd7e14;--ct-yellow:#fec20d;--ct-green:#51b355;--ct-teal:#17a497;--ct-cyan:#299bf6;--ct-black:#000;--ct-white:#fff;--ct-gray:#6c757d;--ct-gray-dark:#343a40;--ct-gray-100:#f8f9fa;--ct-gray-200:#f2f2f7;--ct-gray-300:#dee2e6;--ct-gray-400:#ced4da;--ct-gray-500:#adb5bd;--ct-gray-600:#6c757d;--ct-gray-700:#49526b;--ct-gray-800:#343a40;--ct-gray-900:#212529;--ct-primary:#4254ba;--ct-secondary:#6c757d;--ct-success:#17a497;--ct-info:#299bf6;--ct-warning:#fec20d;--ct-danger:#f7473a;--ct-light:#f2f2f7;--ct-dark:#49526b;--ct-purple:#815ac5;--ct-pink:#ff679b;--ct-primary-rgb:66,84,186;--ct-secondary-rgb:108,117,125;--ct-success-rgb:23,164,151;--ct-info-rgb:41,155,246;--ct-warning-rgb:254,194,13;--ct-danger-rgb:247,71,58;--ct-light-rgb:242,242,247;--ct-dark-rgb:73,82,107;--ct-purple-rgb:129,90,197;--ct-pink-rgb:255,103,155;--ct-primary-text-emphasis:#3b4ca7;--ct-secondary-text-emphasis:#616971;--ct-success-text-emphasis:#159488;--ct-info-text-emphasis:#258cdd;--ct-warning-text-emphasis:#e5af0c;--ct-danger-text-emphasis:#de4034;--ct-pink-text-emphasis:#e65d8c;--ct-purple-text-emphasis:#7451b1;--ct-light-text-emphasis:#ced4da;--ct-dark-text-emphasis:#49526b;--ct-primary-bg-subtle:#eceef8;--ct-secondary-bg-subtle:#f8f9fa;--ct-success-bg-subtle:#dcf0dd;--ct-info-bg-subtle:#d4ebfd;--ct-warning-bg-subtle:#fff3cf;--ct-danger-bg-subtle:#fddad8;--ct-pink-bg-subtle:#ffe1eb;--ct-purple-bg-subtle:#e6def3;--ct-light-bg-subtle:#fcfcfd;--ct-dark-bg-subtle:#ced4da;--ct-primary-border-subtle:#b3bbe3;--ct-secondary-border-subtle:#f2f2f7;--ct-success-border-subtle:#b9e1bb;--ct-info-border-subtle:#a9d7fb;--ct-warning-border-subtle:#ffe79e;--ct-danger-border-subtle:#fcb5b0;--ct-pink-border-subtle:#ffc2d7;--ct-purple-border-subtle:#cdbde8;--ct-light-border-subtle:#f2f2f7;--ct-dark-border-subtle:#adb5bd;--ct-white-rgb:255,255,255;--ct-black-rgb:0,0,0;--ct-font-sans-serif:"Roboto",sans-serif;--ct-font-monospace:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--ct-gradient:linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));--ct-body-font-family:var(--ct-font-sans-serif);--ct-body-font-size:0.875rem;--ct-body-font-weight:400;--ct-body-line-height:1.5;--ct-body-color:#6c757d;--ct-body-color-rgb:108,117,125;--ct-body-bg:#eeeef1;--ct-body-bg-rgb:238,238,241;--ct-emphasis-color:#000;--ct-emphasis-color-rgb:0,0,0;--ct-secondary-color:rgba(108, 117, 125, 0.75);--ct-secondary-color-rgb:108,117,125;--ct-secondary-bg:#fff;--ct-secondary-bg-rgb:255,255,255;--ct-tertiary-color:#313539;--ct-tertiary-color-rgb:49,53,57;--ct-tertiary-bg:#f8f9fa;--ct-tertiary-bg-rgb:248,249,250;--ct-heading-color:inherit;--ct-link-color:#4254ba;--ct-link-color-rgb:66,84,186;--ct-link-decoration:none;--ct-link-hover-color:#38479e;--ct-link-hover-color-rgb:56,71,158;--ct-code-color:#299bf6;--ct-highlight-bg:#fff3cf;--ct-border-width:1px;--ct-border-style:solid;--ct-border-color:#dee2e6;--ct-border-color-translucent:rgba(0, 0, 0, 0.175);--ct-border-radius:0.15rem;--ct-border-radius-sm:0.25rem;--ct-border-radius-lg:0.5rem;--ct-border-radius-xl:1rem;--ct-border-radius-xxl:2rem;--ct-border-radius-2xl:var(--ct-border-radius-xxl);--ct-border-radius-pill:50rem;--ct-box-shadow:2px 2px 3px rgba(27, 23, 30, 0.1);--ct-box-shadow-sm:0 0.125rem 0.25rem rgba(var(--ct-body-color-rgb), 0.15);--ct-box-shadow-lg:0 2px 5px 0 rgba(27, 23, 30, 0.3);--ct-box-shadow-inset:inset 0 1px 2px rgba(var(--ct-body-color-rgb), 0.075);--ct-focus-ring-width:0.25rem;--ct-focus-ring-opacity:0.25;--ct-focus-ring-color:rgba(66, 84, 186, 0.25);--ct-form-valid-color:#17a497;--ct-form-valid-border-color:#17a497;--ct-form-invalid-color:#f7473a;--ct-form-invalid-border-color:#f7473a}[data-bs-theme=dark]{color-scheme:dark;--ct-body-color:#aab8c5;--ct-body-color-rgb:170,184,197;--ct-body-bg:#2d333c;--ct-body-bg-rgb:45,51,60;--ct-emphasis-color:#f8f9fa;--ct-emphasis-color-rgb:248,249,250;--ct-secondary-color:#8391a2;--ct-secondary-color-rgb:131,145,162;--ct-secondary-bg:#313a46;--ct-secondary-bg-rgb:49,58,70;--ct-tertiary-color:#f1f1f1;--ct-tertiary-color-rgb:241,241,241;--ct-tertiary-bg:#404954;--ct-tertiary-bg-rgb:64,73,84;--ct-primary-text-emphasis:#3b4ca7;--ct-secondary-text-emphasis:#6c757d;--ct-success-text-emphasis:#49a14d;--ct-info-text-emphasis:#258cdd;--ct-warning-text-emphasis:#e5af0c;--ct-danger-text-emphasis:#de4034;--ct-pink-text-emphasis:#e65d8c;--ct-purple-text-emphasis:#7451b1;--ct-light-text-emphasis:#6c757d;--ct-dark-text-emphasis:#6c757d;--ct-primary-bg-subtle:rgba(var(--ct-primary-rgb), 0.2);--ct-secondary-bg-subtle:rgba(var(--ct-secondary-rgb), 0.2);--ct-success-bg-subtle:rgba(var(--ct-success-rgb), 0.2);--ct-info-bg-subtle:rgba(var(--ct-info-rgb), 0.2);--ct-warning-bg-subtle:rgba(var(--ct-warning-rgb), 0.2);--ct-danger-bg-subtle:rgba(var(--ct-danger-rgb), 0.2);--ct-pink-bg-subtle:rgba(var(--ct-pink-rgb), 0.2);--ct-purple-bg-subtle:rgba(var(--ct-purple-rgb), 0.2);--ct-light-bg-subtle:rgba(var(--ct-light-rgb), 0.2);--ct-dark-bg-subtle:rgba(var(--ct-dark-rgb), 0.2);--ct-primary-border-subtle:#283270;--ct-secondary-border-subtle:#49526b;--ct-success-border-subtle:#316b33;--ct-info-border-subtle:#103e62;--ct-warning-border-subtle:#664e05;--ct-danger-border-subtle:#942b23;--ct-pink-border-subtle:#993e5d;--ct-purple-border-subtle:#4d3676;--ct-light-border-subtle:#49526b;--ct-dark-border-subtle:#343a40;--ct-heading-color:inherit;--ct-link-color:#4254ba;--ct-link-hover-color:#3b4ca7;--ct-link-color-rgb:66,84,186;--ct-link-hover-color-rgb:59,76,167;--ct-code-color:#299bf6;--ct-border-color:#464f5b;--ct-border-color-translucent:#464f5b;--ct-form-valid-color:#97d199;--ct-form-valid-border-color:#97d199;--ct-form-invalid-color:#fa9189;--ct-form-invalid-border-color:#fa9189}*,::after,::before{-webkit-box-sizing:border-box;box-sizing:border-box}@media (prefers-reduced-motion:no-preference){:root{scroll-behavior:smooth}}body{margin:0;font-family:var(--ct-body-font-family);font-size:var(--ct-body-font-size);font-weight:var(--ct-body-font-weight);line-height:var(--ct-body-line-height);color:var(--ct-body-color);text-align:var(--ct-body-text-align);background-color:var(--ct-body-bg);-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}hr{margin:.9375rem 0;color:inherit;border:0;border-top:var(--ct-border-width) solid var(--ct-border-color);opacity:1}.h1,.h2,.h3,.h4,.h5,.h6,h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:10px;font-weight:500;line-height:1.1;color:var(--ct-heading-color)}.h1,h1{font-size:calc(1.34375rem + 1.125vw)}@media (min-width:1200px){.h1,h1{font-size:2.1875rem}}.h2,h2{font-size:calc(1.307rem + .684vw)}@media (min-width:1200px){.h2,h2{font-size:1.82rem}}.h3,h3{font-size:calc(1.271125rem + .2535vw)}@media (min-width:1200px){.h3,h3{font-size:1.46125rem}}.h4,h4{font-size:1.09375rem}.h5,h5{font-size:.91rem}.h6,h6{font-size:.74375rem}p{margin-top:0;margin-bottom:1rem}abbr[title]{-webkit-text-decoration:underline dotted;text-decoration:underline dotted;cursor:help;-webkit-text-decoration-skip-ink:none;text-decoration-skip-ink:none}address{margin-bottom:1rem;font-style:normal;line-height:inherit}ol,ul{padding-right:2rem}dl,ol,ul{margin-top:0;margin-bottom:1rem}ol ol,ol ul,ul ol,ul ul{margin-bottom:0}dt{font-weight:700}dd{margin-bottom:.5rem;margin-right:0}blockquote{margin:0 0 1rem}b,strong{font-weight:bolder}.small,small{font-size:.75rem}.mark,mark{padding:.1875em;background-color:var(--ct-highlight-bg)}sub,sup{position:relative;font-size:.75em;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}a{color:rgba(var(--ct-link-color-rgb),var(--ct-link-opacity,1));text-decoration:none}a:hover{--ct-link-color-rgb:var(--ct-link-hover-color-rgb)}a:not([href]):not([class]),a:not([href]):not([class]):hover{color:inherit;text-decoration:none}code,kbd,pre,samp{font-family:var(--ct-font-monospace);font-size:1em}pre{display:block;margin-top:0;margin-bottom:1rem;overflow:auto;font-size:.75rem}pre code{font-size:inherit;color:inherit;word-break:normal}code{font-size:.75rem;color:var(--ct-code-color);word-wrap:break-word}a>code{color:inherit}kbd{padding:.2rem .4rem;font-size:.75rem;color:var(--ct-body-bg);background-color:var(--ct-body-color);border-radius:.25rem}kbd kbd{padding:0;font-size:1em}figure{margin:0 0 1rem}img,svg{vertical-align:middle}table{caption-side:bottom;border-collapse:collapse}caption{padding-top:.75rem;padding-bottom:.75rem;color:var(--ct-secondary-color);text-align:right}th{text-align:inherit;text-align:-webkit-match-parent}tbody,td,tfoot,th,thead,tr{border-color:inherit;border-style:solid;border-width:0}label{display:inline-block}button{border-radius:0}button:focus:not(:focus-visible){outline:0}button,input,optgroup,select,textarea{margin:0;font-family:inherit;font-size:inherit;line-height:inherit}button,select{text-transform:none}[role=button]{cursor:pointer}select{word-wrap:normal}select:disabled{opacity:1}[list]:not([type=date]):not([type=datetime-local]):not([type=month]):not([type=week]):not([type=time])::-webkit-calendar-picker-indicator{display:none!important}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]:not(:disabled),[type=reset]:not(:disabled),[type=submit]:not(:disabled),button:not(:disabled){cursor:pointer}::-moz-focus-inner{padding:0;border-style:none}textarea{resize:vertical}fieldset{min-width:0;padding:0;margin:0;border:0}legend{float:right;width:100%;padding:0;margin-bottom:.5rem;font-size:calc(1.275rem + .3vw);line-height:inherit}@media (min-width:1200px){legend{font-size:1.5rem}}legend+*{clear:right}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-fields-wrapper,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-text,::-webkit-datetime-edit-year-field{padding:0}::-webkit-inner-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:textfield}[type=email],[type=number],[type=tel],[type=url]{direction:ltr}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-color-swatch-wrapper{padding:0}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}::file-selector-button{font:inherit;-webkit-appearance:button}output{display:inline-block}iframe{border:0}summary{display:list-item;cursor:pointer}progress{vertical-align:baseline}[hidden]{display:none!important}.lead{font-size:1.09375rem;font-weight:300}.display-1{font-size:calc(1.625rem + 4.5vw);font-weight:300;line-height:1.1}@media (min-width:1200px){.display-1{font-size:5rem}}.display-2{font-size:calc(1.575rem + 3.9vw);font-weight:300;line-height:1.1}@media (min-width:1200px){.display-2{font-size:4.5rem}}.display-3{font-size:calc(1.525rem + 3.3vw);font-weight:300;line-height:1.1}@media (min-width:1200px){.display-3{font-size:4rem}}.display-4{font-size:calc(1.475rem + 2.7vw);font-weight:300;line-height:1.1}@media (min-width:1200px){.display-4{font-size:3.5rem}}.display-5{font-size:calc(1.425rem + 2.1vw);font-weight:300;line-height:1.1}@media (min-width:1200px){.display-5{font-size:3rem}}.display-6{font-size:calc(1.375rem + 1.5vw);font-weight:300;line-height:1.1}@media (min-width:1200px){.display-6{font-size:2.5rem}}.list-unstyled{padding-right:0;list-style:none}.list-inline{padding-right:0;list-style:none}.list-inline-item{display:inline-block}.list-inline-item:not(:last-child){margin-left:.5rem}.initialism{font-size:.75rem;text-transform:uppercase}.blockquote{margin-bottom:1.25rem;font-size:1.09375rem}.blockquote>:last-child{margin-bottom:0}.blockquote-footer{margin-top:-1.25rem;margin-bottom:1.25rem;font-size:.75rem;color:var(--ct-secondary-color)}.blockquote-footer::before{content:"— "}.img-fluid{max-width:100%;height:auto}.img-thumbnail{padding:.25rem;background-color:var(--ct-body-bg);border:var(--ct-border-width) solid var(--ct-border-color);border-radius:var(--ct-border-radius);max-width:100%;height:auto}.figure{display:inline-block}.figure-img{margin-bottom:.625rem;line-height:1}.figure-caption{font-size:.75rem;color:var(--ct-secondary-color)}.container,.container-fluid,.container-lg,.container-md,.container-sm,.container-xl,.container-xxl{--ct-gutter-x:0.6rem;--ct-gutter-y:0;width:100%;padding-left:calc(var(--ct-gutter-x) * .5);padding-right:calc(var(--ct-gutter-x) * .5);margin-left:auto;margin-right:auto}@media (min-width:576px){.container,.container-sm{max-width:540px}}@media (min-width:768px){.container,.container-md,.container-sm{max-width:720px}}@media (min-width:992px){.container,.container-lg,.container-md,.container-sm{max-width:960px}}@media (min-width:1200px){.container,.container-lg,.container-md,.container-sm,.container-xl{max-width:1140px}}@media (min-width:1400px){.container,.container-lg,.container-md,.container-sm,.container-xl,.container-xxl{max-width:1320px}}:root{--ct-breakpoint-xs:0;--ct-breakpoint-sm:576px;--ct-breakpoint-md:768px;--ct-breakpoint-lg:992px;--ct-breakpoint-xl:1200px;--ct-breakpoint-xxl:1400px}.row{--ct-gutter-x:0.6rem;--ct-gutter-y:0;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;margin-top:calc(-1 * var(--ct-gutter-y));margin-left:calc(-.5 * var(--ct-gutter-x));margin-right:calc(-.5 * var(--ct-gutter-x))}.row>*{-ms-flex-negative:0;flex-shrink:0;width:100%;max-width:100%;padding-left:calc(var(--ct-gutter-x) * .5);padding-right:calc(var(--ct-gutter-x) * .5);margin-top:var(--ct-gutter-y)}.col{-webkit-box-flex:1;-ms-flex:1 0 0%;flex:1 0 0%}.row-cols-auto>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:auto}.row-cols-1>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:100%}.row-cols-2>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:50%}.row-cols-3>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:33.3333333333%}.row-cols-4>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:25%}.row-cols-5>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:20%}.row-cols-6>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:16.6666666667%}.col-auto{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:auto}.col-1{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:8.33333333%}.col-2{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:16.66666667%}.col-3{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:25%}.col-4{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:33.33333333%}.col-5{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:41.66666667%}.col-6{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:50%}.col-7{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:58.33333333%}.col-8{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:66.66666667%}.col-9{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:75%}.col-10{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:83.33333333%}.col-11{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:91.66666667%}.col-12{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:100%}.offset-1{margin-right:8.33333333%}.offset-2{margin-right:16.66666667%}.offset-3{margin-right:25%}.offset-4{margin-right:33.33333333%}.offset-5{margin-right:41.66666667%}.offset-6{margin-right:50%}.offset-7{margin-right:58.33333333%}.offset-8{margin-right:66.66666667%}.offset-9{margin-right:75%}.offset-10{margin-right:83.33333333%}.offset-11{margin-right:91.66666667%}.g-0,.gx-0{--ct-gutter-x:0}.g-0,.gy-0{--ct-gutter-y:0}.g-1,.gx-1{--ct-gutter-x:0.3125rem}.g-1,.gy-1{--ct-gutter-y:0.3125rem}.g-2,.gx-2{--ct-gutter-x:0.625rem}.g-2,.gy-2{--ct-gutter-y:0.625rem}.g-3,.gx-3{--ct-gutter-x:1.25rem}.g-3,.gy-3{--ct-gutter-y:1.25rem}.g-4,.gx-4{--ct-gutter-x:1.875rem}.g-4,.gy-4{--ct-gutter-y:1.875rem}.g-5,.gx-5{--ct-gutter-x:3.75rem}.g-5,.gy-5{--ct-gutter-y:3.75rem}@media (min-width:576px){.col-sm{-webkit-box-flex:1;-ms-flex:1 0 0%;flex:1 0 0%}.row-cols-sm-auto>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:auto}.row-cols-sm-1>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:100%}.row-cols-sm-2>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:50%}.row-cols-sm-3>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:33.3333333333%}.row-cols-sm-4>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:25%}.row-cols-sm-5>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:20%}.row-cols-sm-6>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:16.6666666667%}.col-sm-auto{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:auto}.col-sm-1{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:8.33333333%}.col-sm-2{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:16.66666667%}.col-sm-3{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:25%}.col-sm-4{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:33.33333333%}.col-sm-5{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:41.66666667%}.col-sm-6{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:50%}.col-sm-7{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:58.33333333%}.col-sm-8{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:66.66666667%}.col-sm-9{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:75%}.col-sm-10{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:83.33333333%}.col-sm-11{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:91.66666667%}.col-sm-12{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:100%}.offset-sm-0{margin-right:0}.offset-sm-1{margin-right:8.33333333%}.offset-sm-2{margin-right:16.66666667%}.offset-sm-3{margin-right:25%}.offset-sm-4{margin-right:33.33333333%}.offset-sm-5{margin-right:41.66666667%}.offset-sm-6{margin-right:50%}.offset-sm-7{margin-right:58.33333333%}.offset-sm-8{margin-right:66.66666667%}.offset-sm-9{margin-right:75%}.offset-sm-10{margin-right:83.33333333%}.offset-sm-11{margin-right:91.66666667%}.g-sm-0,.gx-sm-0{--ct-gutter-x:0}.g-sm-0,.gy-sm-0{--ct-gutter-y:0}.g-sm-1,.gx-sm-1{--ct-gutter-x:0.3125rem}.g-sm-1,.gy-sm-1{--ct-gutter-y:0.3125rem}.g-sm-2,.gx-sm-2{--ct-gutter-x:0.625rem}.g-sm-2,.gy-sm-2{--ct-gutter-y:0.625rem}.g-sm-3,.gx-sm-3{--ct-gutter-x:1.25rem}.g-sm-3,.gy-sm-3{--ct-gutter-y:1.25rem}.g-sm-4,.gx-sm-4{--ct-gutter-x:1.875rem}.g-sm-4,.gy-sm-4{--ct-gutter-y:1.875rem}.g-sm-5,.gx-sm-5{--ct-gutter-x:3.75rem}.g-sm-5,.gy-sm-5{--ct-gutter-y:3.75rem}}@media (min-width:768px){.col-md{-webkit-box-flex:1;-ms-flex:1 0 0%;flex:1 0 0%}.row-cols-md-auto>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:auto}.row-cols-md-1>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:100%}.row-cols-md-2>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:50%}.row-cols-md-3>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:33.3333333333%}.row-cols-md-4>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:25%}.row-cols-md-5>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:20%}.row-cols-md-6>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:16.6666666667%}.col-md-auto{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:auto}.col-md-1{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:8.33333333%}.col-md-2{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:16.66666667%}.col-md-3{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:25%}.col-md-4{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:33.33333333%}.col-md-5{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:41.66666667%}.col-md-6{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:50%}.col-md-7{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:58.33333333%}.col-md-8{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:66.66666667%}.col-md-9{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:75%}.col-md-10{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:83.33333333%}.col-md-11{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:91.66666667%}.col-md-12{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:100%}.offset-md-0{margin-right:0}.offset-md-1{margin-right:8.33333333%}.offset-md-2{margin-right:16.66666667%}.offset-md-3{margin-right:25%}.offset-md-4{margin-right:33.33333333%}.offset-md-5{margin-right:41.66666667%}.offset-md-6{margin-right:50%}.offset-md-7{margin-right:58.33333333%}.offset-md-8{margin-right:66.66666667%}.offset-md-9{margin-right:75%}.offset-md-10{margin-right:83.33333333%}.offset-md-11{margin-right:91.66666667%}.g-md-0,.gx-md-0{--ct-gutter-x:0}.g-md-0,.gy-md-0{--ct-gutter-y:0}.g-md-1,.gx-md-1{--ct-gutter-x:0.3125rem}.g-md-1,.gy-md-1{--ct-gutter-y:0.3125rem}.g-md-2,.gx-md-2{--ct-gutter-x:0.625rem}.g-md-2,.gy-md-2{--ct-gutter-y:0.625rem}.g-md-3,.gx-md-3{--ct-gutter-x:1.25rem}.g-md-3,.gy-md-3{--ct-gutter-y:1.25rem}.g-md-4,.gx-md-4{--ct-gutter-x:1.875rem}.g-md-4,.gy-md-4{--ct-gutter-y:1.875rem}.g-md-5,.gx-md-5{--ct-gutter-x:3.75rem}.g-md-5,.gy-md-5{--ct-gutter-y:3.75rem}}@media (min-width:992px){.col-lg{-webkit-box-flex:1;-ms-flex:1 0 0%;flex:1 0 0%}.row-cols-lg-auto>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:auto}.row-cols-lg-1>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:100%}.row-cols-lg-2>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:50%}.row-cols-lg-3>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:33.3333333333%}.row-cols-lg-4>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:25%}.row-cols-lg-5>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:20%}.row-cols-lg-6>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:16.6666666667%}.col-lg-auto{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:auto}.col-lg-1{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:8.33333333%}.col-lg-2{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:16.66666667%}.col-lg-3{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:25%}.col-lg-4{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:33.33333333%}.col-lg-5{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:41.66666667%}.col-lg-6{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:50%}.col-lg-7{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:58.33333333%}.col-lg-8{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:66.66666667%}.col-lg-9{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:75%}.col-lg-10{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:83.33333333%}.col-lg-11{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:91.66666667%}.col-lg-12{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:100%}.offset-lg-0{margin-right:0}.offset-lg-1{margin-right:8.33333333%}.offset-lg-2{margin-right:16.66666667%}.offset-lg-3{margin-right:25%}.offset-lg-4{margin-right:33.33333333%}.offset-lg-5{margin-right:41.66666667%}.offset-lg-6{margin-right:50%}.offset-lg-7{margin-right:58.33333333%}.offset-lg-8{margin-right:66.66666667%}.offset-lg-9{margin-right:75%}.offset-lg-10{margin-right:83.33333333%}.offset-lg-11{margin-right:91.66666667%}.g-lg-0,.gx-lg-0{--ct-gutter-x:0}.g-lg-0,.gy-lg-0{--ct-gutter-y:0}.g-lg-1,.gx-lg-1{--ct-gutter-x:0.3125rem}.g-lg-1,.gy-lg-1{--ct-gutter-y:0.3125rem}.g-lg-2,.gx-lg-2{--ct-gutter-x:0.625rem}.g-lg-2,.gy-lg-2{--ct-gutter-y:0.625rem}.g-lg-3,.gx-lg-3{--ct-gutter-x:1.25rem}.g-lg-3,.gy-lg-3{--ct-gutter-y:1.25rem}.g-lg-4,.gx-lg-4{--ct-gutter-x:1.875rem}.g-lg-4,.gy-lg-4{--ct-gutter-y:1.875rem}.g-lg-5,.gx-lg-5{--ct-gutter-x:3.75rem}.g-lg-5,.gy-lg-5{--ct-gutter-y:3.75rem}}@media (min-width:1200px){.col-xl{-webkit-box-flex:1;-ms-flex:1 0 0%;flex:1 0 0%}.row-cols-xl-auto>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:auto}.row-cols-xl-1>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:100%}.row-cols-xl-2>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:50%}.row-cols-xl-3>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:33.3333333333%}.row-cols-xl-4>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:25%}.row-cols-xl-5>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:20%}.row-cols-xl-6>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:16.6666666667%}.col-xl-auto{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:auto}.col-xl-1{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:8.33333333%}.col-xl-2{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:16.66666667%}.col-xl-3{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:25%}.col-xl-4{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:33.33333333%}.col-xl-5{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:41.66666667%}.col-xl-6{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:50%}.col-xl-7{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:58.33333333%}.col-xl-8{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:66.66666667%}.col-xl-9{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:75%}.col-xl-10{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:83.33333333%}.col-xl-11{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:91.66666667%}.col-xl-12{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:100%}.offset-xl-0{margin-right:0}.offset-xl-1{margin-right:8.33333333%}.offset-xl-2{margin-right:16.66666667%}.offset-xl-3{margin-right:25%}.offset-xl-4{margin-right:33.33333333%}.offset-xl-5{margin-right:41.66666667%}.offset-xl-6{margin-right:50%}.offset-xl-7{margin-right:58.33333333%}.offset-xl-8{margin-right:66.66666667%}.offset-xl-9{margin-right:75%}.offset-xl-10{margin-right:83.33333333%}.offset-xl-11{margin-right:91.66666667%}.g-xl-0,.gx-xl-0{--ct-gutter-x:0}.g-xl-0,.gy-xl-0{--ct-gutter-y:0}.g-xl-1,.gx-xl-1{--ct-gutter-x:0.3125rem}.g-xl-1,.gy-xl-1{--ct-gutter-y:0.3125rem}.g-xl-2,.gx-xl-2{--ct-gutter-x:0.625rem}.g-xl-2,.gy-xl-2{--ct-gutter-y:0.625rem}.g-xl-3,.gx-xl-3{--ct-gutter-x:1.25rem}.g-xl-3,.gy-xl-3{--ct-gutter-y:1.25rem}.g-xl-4,.gx-xl-4{--ct-gutter-x:1.875rem}.g-xl-4,.gy-xl-4{--ct-gutter-y:1.875rem}.g-xl-5,.gx-xl-5{--ct-gutter-x:3.75rem}.g-xl-5,.gy-xl-5{--ct-gutter-y:3.75rem}}@media (min-width:1400px){.col-xxl{-webkit-box-flex:1;-ms-flex:1 0 0%;flex:1 0 0%}.row-cols-xxl-auto>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:auto}.row-cols-xxl-1>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:100%}.row-cols-xxl-2>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:50%}.row-cols-xxl-3>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:33.3333333333%}.row-cols-xxl-4>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:25%}.row-cols-xxl-5>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:20%}.row-cols-xxl-6>*{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:16.6666666667%}.col-xxl-auto{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:auto}.col-xxl-1{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:8.33333333%}.col-xxl-2{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:16.66666667%}.col-xxl-3{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:25%}.col-xxl-4{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:33.33333333%}.col-xxl-5{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:41.66666667%}.col-xxl-6{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:50%}.col-xxl-7{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:58.33333333%}.col-xxl-8{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:66.66666667%}.col-xxl-9{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:75%}.col-xxl-10{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:83.33333333%}.col-xxl-11{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:91.66666667%}.col-xxl-12{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:100%}.offset-xxl-0{margin-right:0}.offset-xxl-1{margin-right:8.33333333%}.offset-xxl-2{margin-right:16.66666667%}.offset-xxl-3{margin-right:25%}.offset-xxl-4{margin-right:33.33333333%}.offset-xxl-5{margin-right:41.66666667%}.offset-xxl-6{margin-right:50%}.offset-xxl-7{margin-right:58.33333333%}.offset-xxl-8{margin-right:66.66666667%}.offset-xxl-9{margin-right:75%}.offset-xxl-10{margin-right:83.33333333%}.offset-xxl-11{margin-right:91.66666667%}.g-xxl-0,.gx-xxl-0{--ct-gutter-x:0}.g-xxl-0,.gy-xxl-0{--ct-gutter-y:0}.g-xxl-1,.gx-xxl-1{--ct-gutter-x:0.3125rem}.g-xxl-1,.gy-xxl-1{--ct-gutter-y:0.3125rem}.g-xxl-2,.gx-xxl-2{--ct-gutter-x:0.625rem}.g-xxl-2,.gy-xxl-2{--ct-gutter-y:0.625rem}.g-xxl-3,.gx-xxl-3{--ct-gutter-x:1.25rem}.g-xxl-3,.gy-xxl-3{--ct-gutter-y:1.25rem}.g-xxl-4,.gx-xxl-4{--ct-gutter-x:1.875rem}.g-xxl-4,.gy-xxl-4{--ct-gutter-y:1.875rem}.g-xxl-5,.gx-xxl-5{--ct-gutter-x:3.75rem}.g-xxl-5,.gy-xxl-5{--ct-gutter-y:3.75rem}}.table{--ct-table-color-type:initial;--ct-table-bg-type:initial;--ct-table-color-state:initial;--ct-table-bg-state:initial;--ct-table-color:var(--ct-body-color);--ct-table-bg:transparent;--ct-table-border-color:var(--ct-border-color);--ct-table-accent-bg:transparent;--ct-table-striped-color:var(--ct-body-color);--ct-table-striped-bg:rgba(var(--ct-tertiary-bg-rgb), 1);--ct-table-active-color:var(--ct-body-color);--ct-table-active-bg:rgba(var(--ct-tertiary-bg-rgb), 1);--ct-table-hover-color:var(--ct-body-color);--ct-table-hover-bg:rgba(var(--ct-tertiary-bg-rgb), 1);width:100%;margin-bottom:1.25rem;vertical-align:top;border-color:var(--ct-table-border-color)}.table>:not(caption)>*>*{padding:.75rem .75rem;color:var(--ct-table-color-state,var(--ct-table-color-type,var(--ct-table-color)));background-color:var(--ct-table-bg);border-bottom-width:var(--ct-border-width);-webkit-box-shadow:inset 0 0 0 9999px var(--ct-table-bg-state,var(--ct-table-bg-type,var(--ct-table-accent-bg)));box-shadow:inset 0 0 0 9999px var(--ct-table-bg-state,var(--ct-table-bg-type,var(--ct-table-accent-bg)))}.table>tbody{vertical-align:inherit}.table>thead{vertical-align:bottom}.table-group-divider{border-top:calc(var(--ct-border-width) * 2) solid currentcolor}.caption-top{caption-side:top}.table-sm>:not(caption)>*>*{padding:.5rem .5rem}.table-bordered>:not(caption)>*{border-width:var(--ct-border-width) 0}.table-bordered>:not(caption)>*>*{border-width:0 var(--ct-border-width)}.table-borderless>:not(caption)>*>*{border-bottom-width:0}.table-borderless>:not(:first-child){border-top-width:0}.table-striped>tbody>tr:nth-of-type(odd)>*{--ct-table-color-type:var(--ct-table-striped-color);--ct-table-bg-type:var(--ct-table-striped-bg)}.table-striped-columns>:not(caption)>tr>:nth-child(even){--ct-table-color-type:var(--ct-table-striped-color);--ct-table-bg-type:var(--ct-table-striped-bg)}.table-active{--ct-table-color-state:var(--ct-table-active-color);--ct-table-bg-state:var(--ct-table-active-bg)}.table-hover>tbody>tr:hover>*{--ct-table-color-state:var(--ct-table-hover-color);--ct-table-bg-state:var(--ct-table-hover-bg)}.table-primary{--ct-table-color:#212529;--ct-table-bg:#d9ddf1;--ct-table-border-color:#c7cbdd;--ct-table-striped-bg:#212529;--ct-table-striped-color:#fff;--ct-table-active-bg:#212529;--ct-table-active-color:#fff;--ct-table-hover-bg:#212529;--ct-table-hover-color:#fff;color:var(--ct-table-color);border-color:var(--ct-table-border-color)}.table-secondary{--ct-table-color:#212529;--ct-table-bg:#e2e3e5;--ct-table-border-color:#cfd0d2;--ct-table-striped-bg:#212529;--ct-table-striped-color:#fff;--ct-table-active-bg:#212529;--ct-table-active-color:#fff;--ct-table-hover-bg:#212529;--ct-table-hover-color:#fff;color:var(--ct-table-color);border-color:var(--ct-table-border-color)}.table-success{--ct-table-color:#212529;--ct-table-bg:#d1edea;--ct-table-border-color:#bfd9d7;--ct-table-striped-bg:#212529;--ct-table-striped-color:#fff;--ct-table-active-bg:#212529;--ct-table-active-color:#fff;--ct-table-hover-bg:#212529;--ct-table-hover-color:#fff;color:var(--ct-table-color);border-color:var(--ct-table-border-color)}.table-info{--ct-table-color:#212529;--ct-table-bg:#d4ebfd;--ct-table-border-color:#c2d7e8;--ct-table-striped-bg:#212529;--ct-table-striped-color:#fff;--ct-table-active-bg:#212529;--ct-table-active-color:#fff;--ct-table-hover-bg:#212529;--ct-table-hover-color:#fff;color:var(--ct-table-color);border-color:var(--ct-table-border-color)}.table-warning{--ct-table-color:#212529;--ct-table-bg:#fff3cf;--ct-table-border-color:#e9debe;--ct-table-striped-bg:#212529;--ct-table-striped-color:#fff;--ct-table-active-bg:#212529;--ct-table-active-color:#fff;--ct-table-hover-bg:#212529;--ct-table-hover-color:#fff;color:var(--ct-table-color);border-color:var(--ct-table-border-color)}.table-danger{--ct-table-color:#212529;--ct-table-bg:#fddad8;--ct-table-border-color:#e7c8c7;--ct-table-striped-bg:#212529;--ct-table-striped-color:#fff;--ct-table-active-bg:#212529;--ct-table-active-color:#fff;--ct-table-hover-bg:#212529;--ct-table-hover-color:#fff;color:var(--ct-table-color);border-color:var(--ct-table-border-color)}.table-purple{--ct-table-color:#212529;--ct-table-bg:#e6def3;--ct-table-border-color:#d2ccdf;--ct-table-striped-bg:#212529;--ct-table-striped-color:#fff;--ct-table-active-bg:#212529;--ct-table-active-color:#fff;--ct-table-hover-bg:#212529;--ct-table-hover-color:#fff;color:var(--ct-table-color);border-color:var(--ct-table-border-color)}.table-pink{--ct-table-color:#212529;--ct-table-bg:#ffe1eb;--ct-table-border-color:#e9ced8;--ct-table-striped-bg:#212529;--ct-table-striped-color:#fff;--ct-table-active-bg:#212529;--ct-table-active-color:#fff;--ct-table-hover-bg:#212529;--ct-table-hover-color:#fff;color:var(--ct-table-color);border-color:var(--ct-table-border-color)}.table-light{--ct-table-color:#212529;--ct-table-bg:#f2f2f7;--ct-table-border-color:#dddee2;--ct-table-striped-bg:#212529;--ct-table-striped-color:#fff;--ct-table-active-bg:#212529;--ct-table-active-color:#fff;--ct-table-hover-bg:#212529;--ct-table-hover-color:#fff;color:var(--ct-table-color);border-color:var(--ct-table-border-color)}.table-dark{--ct-table-color:#fff;--ct-table-bg:#49526b;--ct-table-border-color:#5b637a;--ct-table-striped-bg:white;--ct-table-striped-color:#212529;--ct-table-active-bg:white;--ct-table-active-color:#212529;--ct-table-hover-bg:white;--ct-table-hover-color:#212529;color:var(--ct-table-color);border-color:var(--ct-table-border-color)}.table-responsive{overflow-x:auto;-webkit-overflow-scrolling:touch}@media (max-width:575.98px){.table-responsive-sm{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media (max-width:767.98px){.table-responsive-md{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media (max-width:991.98px){.table-responsive-lg{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media (max-width:1199.98px){.table-responsive-xl{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media (max-width:1399.98px){.table-responsive-xxl{overflow-x:auto;-webkit-overflow-scrolling:touch}}.form-label{margin-bottom:.5rem}.col-form-label{padding-top:calc(.45rem + var(--ct-border-width));padding-bottom:calc(.45rem + var(--ct-border-width));margin-bottom:0;font-size:inherit;line-height:1.5}.col-form-label-lg{padding-top:calc(.5rem + var(--ct-border-width));padding-bottom:calc(.5rem + var(--ct-border-width));font-size:1.21625rem}.col-form-label-sm{padding-top:calc(.28rem + var(--ct-border-width));padding-bottom:calc(.28rem + var(--ct-border-width));font-size:.85rem}.form-text{margin-top:.25rem;font-size:.75rem;color:var(--ct-secondary-color)}.form-control{display:block;width:100%;padding:.45rem .9rem;font-size:.875rem;font-weight:400;line-height:1.5;color:var(--ct-body-color);background-color:var(--ct-secondary-bg);background-clip:padding-box;border:var(--ct-border-width) solid var(--ct-border-color);-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:.25rem;-webkit-transition:border-color .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;transition:border-color .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out,-webkit-box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.form-control{-webkit-transition:none;transition:none}}.form-control[type=file]{overflow:hidden}.form-control[type=file]:not(:disabled):not([readonly]){cursor:pointer}.form-control:focus{color:var(--ct-body-color);background-color:var(--ct-secondary-bg);border-color:var(--ct-border-color-translucent);outline:0;-webkit-box-shadow:none;box-shadow:none}.form-control::-webkit-date-and-time-value{min-width:85px;height:1.5em;margin:0}.form-control::-webkit-datetime-edit{display:block;padding:0}.form-control::-webkit-input-placeholder{color:var(--ct-secondary-color);opacity:1}.form-control::-moz-placeholder{color:var(--ct-secondary-color);opacity:1}.form-control:-ms-input-placeholder{color:var(--ct-secondary-color);opacity:1}.form-control::-ms-input-placeholder{color:var(--ct-secondary-color);opacity:1}.form-control::placeholder{color:var(--ct-secondary-color);opacity:1}.form-control:disabled{background-color:var(--ct-tertiary-bg);opacity:1}.form-control::-webkit-file-upload-button{padding:.45rem .9rem;margin:-.45rem -.9rem;-webkit-margin-end:.9rem;margin-inline-end:.9rem;color:var(--ct-body-color);background-color:var(--ct-tertiary-bg);pointer-events:none;border-color:inherit;border-style:solid;border-width:0;border-inline-end-width:var(--ct-border-width);border-radius:0;-webkit-transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out,-webkit-box-shadow .15s ease-in-out}.form-control::file-selector-button{padding:.45rem .9rem;margin:-.45rem -.9rem;-webkit-margin-end:.9rem;margin-inline-end:.9rem;color:var(--ct-body-color);background-color:var(--ct-tertiary-bg);pointer-events:none;border-color:inherit;border-style:solid;border-width:0;border-inline-end-width:var(--ct-border-width);border-radius:0;-webkit-transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out,-webkit-box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.form-control::-webkit-file-upload-button{-webkit-transition:none;transition:none}.form-control::file-selector-button{-webkit-transition:none;transition:none}}.form-control:hover:not(:disabled):not([readonly])::-webkit-file-upload-button{background-color:var(--ct-secondary-bg)}.form-control:hover:not(:disabled):not([readonly])::file-selector-button{background-color:var(--ct-secondary-bg)}.form-control-plaintext{display:block;width:100%;padding:.45rem 0;margin-bottom:0;line-height:1.5;color:var(--ct-body-color);background-color:transparent;border:solid transparent;border-width:var(--ct-border-width) 0}.form-control-plaintext:focus{outline:0}.form-control-plaintext.form-control-lg,.form-control-plaintext.form-control-sm{padding-left:0;padding-right:0}.form-control-sm{min-height:calc(1.5em + .56rem + calc(var(--ct-border-width) * 2));padding:.28rem .8rem;font-size:.85rem;border-radius:.25rem}.form-control-sm::-webkit-file-upload-button{padding:.28rem .8rem;margin:-.28rem -.8rem;-webkit-margin-end:.8rem;margin-inline-end:.8rem}.form-control-sm::file-selector-button{padding:.28rem .8rem;margin:-.28rem -.8rem;-webkit-margin-end:.8rem;margin-inline-end:.8rem}.form-control-lg{min-height:calc(1.5em + 1rem + calc(var(--ct-border-width) * 2));padding:.5rem 1rem;font-size:1.21625rem;border-radius:.15rem}.form-control-lg::-webkit-file-upload-button{padding:.5rem 1rem;margin:-.5rem -1rem;-webkit-margin-end:1rem;margin-inline-end:1rem}.form-control-lg::file-selector-button{padding:.5rem 1rem;margin:-.5rem -1rem;-webkit-margin-end:1rem;margin-inline-end:1rem}textarea.form-control{min-height:calc(1.5em + .9rem + calc(var(--ct-border-width) * 2))}textarea.form-control-sm{min-height:calc(1.5em + .56rem + calc(var(--ct-border-width) * 2))}textarea.form-control-lg{min-height:calc(1.5em + 1rem + calc(var(--ct-border-width) * 2))}.form-control-color{width:3rem;height:calc(1.5em + .9rem + calc(var(--ct-border-width) * 2));padding:.45rem}.form-control-color:not(:disabled):not([readonly]){cursor:pointer}.form-control-color::-moz-color-swatch{border:0!important;border-radius:.25rem}.form-control-color::-webkit-color-swatch{border:0!important;border-radius:.25rem}.form-control-color.form-control-sm{height:calc(1.5em + .56rem + calc(var(--ct-border-width) * 2))}.form-control-color.form-control-lg{height:calc(1.5em + 1rem + calc(var(--ct-border-width) * 2))}.form-select{--ct-form-select-bg-img:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e");display:block;width:100%;padding:.45rem .9rem .45rem 2.7rem;font-size:.875rem;font-weight:400;line-height:1.5;color:var(--ct-body-color);background-color:var(--ct-secondary-bg);background-image:var(--ct-form-select-bg-img),var(--ct-form-select-bg-icon,none);background-repeat:no-repeat;background-position:left .9rem center;background-size:14px 10px;border:var(--ct-border-width) solid var(--ct-border-color);border-radius:.25rem;-webkit-transition:border-color .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;transition:border-color .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;-webkit-appearance:none;-moz-appearance:none;appearance:none}@media (prefers-reduced-motion:reduce){.form-select{-webkit-transition:none;transition:none}}.form-select:focus{border-color:var(--ct-border-color-translucent);outline:0;-webkit-box-shadow:none;box-shadow:none}.form-select[multiple],.form-select[size]:not([size="1"]){padding-left:.9rem;background-image:none}.form-select:disabled{background-color:var(--ct-tertiary-bg)}.form-select:-moz-focusring{color:transparent;text-shadow:0 0 0 var(--ct-body-color)}.form-select-sm{padding-top:.28rem;padding-bottom:.28rem;padding-right:.8rem;font-size:.85rem;border-radius:.25rem}.form-select-lg{padding-top:.5rem;padding-bottom:.5rem;padding-right:1rem;font-size:1.21625rem;border-radius:.15rem}[data-bs-theme=dark] .form-select{--ct-form-select-bg-img:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23aab8c5' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e")}.form-check{display:block;min-height:1.3125rem;padding-right:1.635em;margin-bottom:0}.form-check .form-check-input{float:right;margin-right:-1.635em}.form-check-reverse{padding-left:1.635em;padding-right:0;text-align:left}.form-check-reverse .form-check-input{float:left;margin-left:-1.635em;margin-right:0}.form-check-input{--ct-form-check-bg:var(--ct-secondary-bg);width:1.135em;height:1.135em;margin-top:.1825em;vertical-align:top;background-color:var(--ct-form-check-bg);background-image:var(--ct-form-check-bg-image);background-repeat:no-repeat;background-position:center;background-size:contain;border:var(--ct-border-width) solid var(--ct-border-color-translucent);-webkit-appearance:none;-moz-appearance:none;appearance:none;-webkit-print-color-adjust:exact;print-color-adjust:exact}.form-check-input[type=checkbox]{border-radius:.25em}.form-check-input[type=radio]{border-radius:50%}.form-check-input:active{-webkit-filter:brightness(90%);filter:brightness(90%)}.form-check-input:focus{border-color:var(--ct-border-color-translucent);outline:0;-webkit-box-shadow:none;box-shadow:none}.form-check-input:checked{background-color:#4254ba;border-color:#4254ba}.form-check-input:checked[type=checkbox]{--ct-form-check-bg-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='m6 10 3 3 6-6'/%3e%3c/svg%3e")}.form-check-input:checked[type=radio]{--ct-form-check-bg-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='2' fill='%23fff'/%3e%3c/svg%3e")}.form-check-input[type=checkbox]:indeterminate{background-color:#4254ba;border-color:#4254ba;--ct-form-check-bg-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10h8'/%3e%3c/svg%3e")}.form-check-input:disabled{pointer-events:none;-webkit-filter:none;filter:none;opacity:.5}.form-check-input:disabled~.form-check-label,.form-check-input[disabled]~.form-check-label{cursor:default;opacity:.5}.form-switch{padding-right:2.5em}.form-switch .form-check-input{--ct-form-switch-bg:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba%280, 0, 0, 0.25%29'/%3e%3c/svg%3e");width:2em;margin-right:-2.5em;background-image:var(--ct-form-switch-bg);background-position:right center;border-radius:2em;-webkit-transition:background-position .15s ease-in-out;transition:background-position .15s ease-in-out}@media (prefers-reduced-motion:reduce){.form-switch .form-check-input{-webkit-transition:none;transition:none}}.form-switch .form-check-input:focus{--ct-form-switch-bg:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='var%28--ct-border-color-translucent%29'/%3e%3c/svg%3e")}.form-switch .form-check-input:checked{background-position:left center;--ct-form-switch-bg:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e")}.form-switch.form-check-reverse{padding-left:2.5em;padding-right:0}.form-switch.form-check-reverse .form-check-input{margin-left:-2.5em;margin-right:0}.form-check-inline{display:inline-block;margin-left:1rem}.btn-check{position:absolute;clip:rect(0,0,0,0);pointer-events:none}.btn-check:disabled+.btn,.btn-check[disabled]+.btn{pointer-events:none;-webkit-filter:none;filter:none;opacity:.65}[data-bs-theme=dark] .form-switch .form-check-input:not(:checked):not(:focus){--ct-form-switch-bg:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba%28255, 255, 255, 0.25%29'/%3e%3c/svg%3e")}.form-range{width:100%;height:1.3rem;padding:0;background-color:transparent;-webkit-appearance:none;-moz-appearance:none;appearance:none}.form-range:focus{outline:0}.form-range:focus::-webkit-slider-thumb{-webkit-box-shadow:0 0 0 1px #eeeef1,none;box-shadow:0 0 0 1px #eeeef1,none}.form-range:focus::-moz-range-thumb{box-shadow:0 0 0 1px #eeeef1,none}.form-range::-moz-focus-outer{border:0}.form-range::-webkit-slider-thumb{width:1rem;height:1rem;margin-top:-.25rem;background-color:#4254ba;border:0;border-radius:1rem;-webkit-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;-webkit-appearance:none;appearance:none}@media (prefers-reduced-motion:reduce){.form-range::-webkit-slider-thumb{-webkit-transition:none;transition:none}}.form-range::-webkit-slider-thumb:active{background-color:#c6ccea}.form-range::-webkit-slider-runnable-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:var(--ct-body-bg);border-color:transparent;border-radius:1rem}.form-range::-moz-range-thumb{width:1rem;height:1rem;background-color:#4254ba;border:0;border-radius:1rem;-moz-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;-moz-appearance:none;appearance:none}@media (prefers-reduced-motion:reduce){.form-range::-moz-range-thumb{-moz-transition:none;transition:none}}.form-range::-moz-range-thumb:active{background-color:#c6ccea}.form-range::-moz-range-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:var(--ct-body-bg);border-color:transparent;border-radius:1rem}.form-range:disabled{pointer-events:none}.form-range:disabled::-webkit-slider-thumb{background-color:var(--ct-secondary-color)}.form-range:disabled::-moz-range-thumb{background-color:var(--ct-secondary-color)}.form-floating{position:relative}.form-floating>.form-control,.form-floating>.form-control-plaintext,.form-floating>.form-select{height:calc(3.5rem + calc(var(--ct-border-width) * 2));min-height:calc(3.5rem + calc(var(--ct-border-width) * 2));line-height:1.25}.form-floating>label{position:absolute;top:0;right:0;z-index:2;height:100%;padding:1rem .9rem;overflow:hidden;text-align:start;text-overflow:ellipsis;white-space:nowrap;pointer-events:none;border:var(--ct-border-width) solid transparent;-webkit-transform-origin:100% 0;transform-origin:100% 0;-webkit-transition:opacity .1s ease-in-out,-webkit-transform .1s ease-in-out;transition:opacity .1s ease-in-out,-webkit-transform .1s ease-in-out;transition:opacity .1s ease-in-out,transform .1s ease-in-out;transition:opacity .1s ease-in-out,transform .1s ease-in-out,-webkit-transform .1s ease-in-out}@media (prefers-reduced-motion:reduce){.form-floating>label{-webkit-transition:none;transition:none}}.form-floating>.form-control,.form-floating>.form-control-plaintext{padding:1rem .9rem}.form-floating>.form-control-plaintext::-webkit-input-placeholder,.form-floating>.form-control::-webkit-input-placeholder{color:transparent}.form-floating>.form-control-plaintext::-moz-placeholder,.form-floating>.form-control::-moz-placeholder{color:transparent}.form-floating>.form-control-plaintext:-ms-input-placeholder,.form-floating>.form-control:-ms-input-placeholder{color:transparent}.form-floating>.form-control-plaintext::-ms-input-placeholder,.form-floating>.form-control::-ms-input-placeholder{color:transparent}.form-floating>.form-control-plaintext::placeholder,.form-floating>.form-control::placeholder{color:transparent}.form-floating>.form-control-plaintext:not(:-moz-placeholder-shown),.form-floating>.form-control:not(:-moz-placeholder-shown){padding-top:1.625rem;padding-bottom:.625rem}.form-floating>.form-control-plaintext:not(:-ms-input-placeholder),.form-floating>.form-control:not(:-ms-input-placeholder){padding-top:1.625rem;padding-bottom:.625rem}.form-floating>.form-control-plaintext:focus,.form-floating>.form-control-plaintext:not(:placeholder-shown),.form-floating>.form-control:focus,.form-floating>.form-control:not(:placeholder-shown){padding-top:1.625rem;padding-bottom:.625rem}.form-floating>.form-control-plaintext:-webkit-autofill,.form-floating>.form-control:-webkit-autofill{padding-top:1.625rem;padding-bottom:.625rem}.form-floating>.form-select{padding-top:1.625rem;padding-bottom:.625rem}.form-floating>.form-control:not(:-moz-placeholder-shown)~label{color:rgba(var(--ct-body-color-rgb),.65);transform:scale(.85) translateY(-.5rem) translateX(-.15rem)}.form-floating>.form-control:not(:-ms-input-placeholder)~label{color:rgba(var(--ct-body-color-rgb),.65);transform:scale(.85) translateY(-.5rem) translateX(-.15rem)}.form-floating>.form-control-plaintext~label,.form-floating>.form-control:focus~label,.form-floating>.form-control:not(:placeholder-shown)~label,.form-floating>.form-select~label{color:rgba(var(--ct-body-color-rgb),.65);-webkit-transform:scale(.85) translateY(-.5rem) translateX(-.15rem);transform:scale(.85) translateY(-.5rem) translateX(-.15rem)}.form-floating>.form-control:not(:-moz-placeholder-shown)~label::after{position:absolute;inset:1rem .45rem;z-index:-1;height:1.875em;content:"";background-color:var(--ct-secondary-bg);border-radius:.25rem}.form-floating>.form-control:not(:-ms-input-placeholder)~label::after{position:absolute;inset:1rem .45rem;z-index:-1;height:1.875em;content:"";background-color:var(--ct-secondary-bg);border-radius:.25rem}.form-floating>.form-control-plaintext~label::after,.form-floating>.form-control:focus~label::after,.form-floating>.form-control:not(:placeholder-shown)~label::after,.form-floating>.form-select~label::after{position:absolute;inset:1rem .45rem;z-index:-1;height:1.875em;content:"";background-color:var(--ct-secondary-bg);border-radius:.25rem}.form-floating>.form-control:-webkit-autofill~label{color:rgba(var(--ct-body-color-rgb),.65);-webkit-transform:scale(.85) translateY(-.5rem) translateX(-.15rem);transform:scale(.85) translateY(-.5rem) translateX(-.15rem)}.form-floating>.form-control-plaintext~label{border-width:var(--ct-border-width) 0}.form-floating>:disabled~label{color:#6c757d}.form-floating>:disabled~label::after{background-color:var(--ct-tertiary-bg)}.input-group{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch;width:100%}.input-group>.form-control,.input-group>.form-floating,.input-group>.form-select{position:relative;-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto;width:1%;min-width:0}.input-group>.form-control:focus,.input-group>.form-floating:focus-within,.input-group>.form-select:focus{z-index:5}.input-group .btn{position:relative;z-index:2}.input-group .btn:focus{z-index:5}.input-group-text{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding:.45rem .9rem;font-size:.875rem;font-weight:400;line-height:1.5;color:var(--ct-body-color);text-align:center;white-space:nowrap;background-color:var(--ct-tertiary-bg);border:var(--ct-border-width) solid var(--ct-border-color);border-radius:.25rem}.input-group-lg>.btn,.input-group-lg>.form-control,.input-group-lg>.form-select,.input-group-lg>.input-group-text{padding:.5rem 1rem;font-size:1.21625rem;border-radius:.15rem}.input-group-sm>.btn,.input-group-sm>.form-control,.input-group-sm>.form-select,.input-group-sm>.input-group-text{padding:.28rem .8rem;font-size:.85rem;border-radius:.25rem}.input-group-lg>.form-select,.input-group-sm>.form-select{padding-left:3.6rem}.input-group:not(.has-validation)>.dropdown-toggle:nth-last-child(n+3),.input-group:not(.has-validation)>.form-floating:not(:last-child)>.form-control,.input-group:not(.has-validation)>.form-floating:not(:last-child)>.form-select,.input-group:not(.has-validation)>:not(:last-child):not(.dropdown-toggle):not(.dropdown-menu):not(.form-floating){border-top-left-radius:0;border-bottom-left-radius:0}.input-group.has-validation>.dropdown-toggle:nth-last-child(n+4),.input-group.has-validation>.form-floating:nth-last-child(n+3)>.form-control,.input-group.has-validation>.form-floating:nth-last-child(n+3)>.form-select,.input-group.has-validation>:nth-last-child(n+3):not(.dropdown-toggle):not(.dropdown-menu):not(.form-floating){border-top-left-radius:0;border-bottom-left-radius:0}.input-group>:not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback){margin-right:calc(var(--ct-border-width) * -1);border-top-right-radius:0;border-bottom-right-radius:0}.input-group>.form-floating:not(:first-child)>.form-control,.input-group>.form-floating:not(:first-child)>.form-select{border-top-right-radius:0;border-bottom-right-radius:0}.valid-feedback{display:none;width:100%;margin-top:.25rem;font-size:.75rem;color:var(--ct-form-valid-color)}.valid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.3125rem .625rem;margin-top:.1rem;font-size:.7225rem;color:#fff;background-color:var(--ct-success);border-radius:var(--ct-border-radius)}.is-valid~.valid-feedback,.is-valid~.valid-tooltip,.was-validated :valid~.valid-feedback,.was-validated :valid~.valid-tooltip{display:block}.form-control.is-valid,.was-validated .form-control:valid{border-color:var(--ct-form-valid-border-color);padding-left:calc(1.5em + .9rem);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%2317a497' d='M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:left calc(.375em + .225rem) center;background-size:calc(.75em + .45rem) calc(.75em + .45rem)}.form-control.is-valid:focus,.was-validated .form-control:valid:focus{border-color:var(--ct-form-valid-border-color);-webkit-box-shadow:0 0 0 .15rem rgba(var(--ct-success-rgb),.25);box-shadow:0 0 0 .15rem rgba(var(--ct-success-rgb),.25)}.was-validated textarea.form-control:valid,textarea.form-control.is-valid{padding-left:calc(1.5em + .9rem);background-position:top calc(.375em + .225rem) left calc(.375em + .225rem)}.form-select.is-valid,.was-validated .form-select:valid{border-color:var(--ct-form-valid-border-color)}.form-select.is-valid:not([multiple]):not([size]),.form-select.is-valid:not([multiple])[size="1"],.was-validated .form-select:valid:not([multiple]):not([size]),.was-validated .form-select:valid:not([multiple])[size="1"]{--ct-form-select-bg-icon:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%2317a497' d='M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");padding-left:4.95rem;background-position:left .9rem center,center left 2.7rem;background-size:14px 10px,calc(.75em + .45rem) calc(.75em + .45rem)}.form-select.is-valid:focus,.was-validated .form-select:valid:focus{border-color:var(--ct-form-valid-border-color);-webkit-box-shadow:0 0 0 .15rem rgba(var(--ct-success-rgb),.25);box-shadow:0 0 0 .15rem rgba(var(--ct-success-rgb),.25)}.form-control-color.is-valid,.was-validated .form-control-color:valid{width:calc(3rem + calc(1.5em + .9rem))}.form-check-input.is-valid,.was-validated .form-check-input:valid{border-color:var(--ct-form-valid-border-color)}.form-check-input.is-valid:checked,.was-validated .form-check-input:valid:checked{background-color:var(--ct-form-valid-color)}.form-check-input.is-valid:focus,.was-validated .form-check-input:valid:focus{-webkit-box-shadow:0 0 0 .15rem rgba(var(--ct-success-rgb),.25);box-shadow:0 0 0 .15rem rgba(var(--ct-success-rgb),.25)}.form-check-input.is-valid~.form-check-label,.was-validated .form-check-input:valid~.form-check-label{color:var(--ct-form-valid-color)}.form-check-inline .form-check-input~.valid-feedback{margin-right:.5em}.input-group>.form-control:not(:focus).is-valid,.input-group>.form-floating:not(:focus-within).is-valid,.input-group>.form-select:not(:focus).is-valid,.was-validated .input-group>.form-control:not(:focus):valid,.was-validated .input-group>.form-floating:not(:focus-within):valid,.was-validated .input-group>.form-select:not(:focus):valid{z-index:3}.invalid-feedback{display:none;width:100%;margin-top:.25rem;font-size:.75rem;color:var(--ct-form-invalid-color)}.invalid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.3125rem .625rem;margin-top:.1rem;font-size:.7225rem;color:#fff;background-color:var(--ct-danger);border-radius:var(--ct-border-radius)}.is-invalid~.invalid-feedback,.is-invalid~.invalid-tooltip,.was-validated :invalid~.invalid-feedback,.was-validated :invalid~.invalid-tooltip{display:block}.form-control.is-invalid,.was-validated .form-control:invalid{border-color:var(--ct-form-invalid-border-color);padding-left:calc(1.5em + .9rem);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23f7473a'%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='%23f7473a' stroke='none'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:left calc(.375em + .225rem) center;background-size:calc(.75em + .45rem) calc(.75em + .45rem)}.form-control.is-invalid:focus,.was-validated .form-control:invalid:focus{border-color:var(--ct-form-invalid-border-color);-webkit-box-shadow:0 0 0 .15rem rgba(var(--ct-danger-rgb),.25);box-shadow:0 0 0 .15rem rgba(var(--ct-danger-rgb),.25)}.was-validated textarea.form-control:invalid,textarea.form-control.is-invalid{padding-left:calc(1.5em + .9rem);background-position:top calc(.375em + .225rem) left calc(.375em + .225rem)}.form-select.is-invalid,.was-validated .form-select:invalid{border-color:var(--ct-form-invalid-border-color)}.form-select.is-invalid:not([multiple]):not([size]),.form-select.is-invalid:not([multiple])[size="1"],.was-validated .form-select:invalid:not([multiple]):not([size]),.was-validated .form-select:invalid:not([multiple])[size="1"]{--ct-form-select-bg-icon:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23f7473a'%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='%23f7473a' stroke='none'/%3e%3c/svg%3e");padding-left:4.95rem;background-position:left .9rem center,center left 2.7rem;background-size:14px 10px,calc(.75em + .45rem) calc(.75em + .45rem)}.form-select.is-invalid:focus,.was-validated .form-select:invalid:focus{border-color:var(--ct-form-invalid-border-color);-webkit-box-shadow:0 0 0 .15rem rgba(var(--ct-danger-rgb),.25);box-shadow:0 0 0 .15rem rgba(var(--ct-danger-rgb),.25)}.form-control-color.is-invalid,.was-validated .form-control-color:invalid{width:calc(3rem + calc(1.5em + .9rem))}.form-check-input.is-invalid,.was-validated .form-check-input:invalid{border-color:var(--ct-form-invalid-border-color)}.form-check-input.is-invalid:checked,.was-validated .form-check-input:invalid:checked{background-color:var(--ct-form-invalid-color)}.form-check-input.is-invalid:focus,.was-validated .form-check-input:invalid:focus{-webkit-box-shadow:0 0 0 .15rem rgba(var(--ct-danger-rgb),.25);box-shadow:0 0 0 .15rem rgba(var(--ct-danger-rgb),.25)}.form-check-input.is-invalid~.form-check-label,.was-validated .form-check-input:invalid~.form-check-label{color:var(--ct-form-invalid-color)}.form-check-inline .form-check-input~.invalid-feedback{margin-right:.5em}.input-group>.form-control:not(:focus).is-invalid,.input-group>.form-floating:not(:focus-within).is-invalid,.input-group>.form-select:not(:focus).is-invalid,.was-validated .input-group>.form-control:not(:focus):invalid,.was-validated .input-group>.form-floating:not(:focus-within):invalid,.was-validated .input-group>.form-select:not(:focus):invalid{z-index:4}.btn{--ct-btn-padding-x:0.9rem;--ct-btn-padding-y:0.45rem;--ct-btn-font-size:0.875rem;--ct-btn-font-weight:400;--ct-btn-line-height:1.5;--ct-btn-color:var(--ct-body-color);--ct-btn-bg:transparent;--ct-btn-border-width:var(--ct-border-width);--ct-btn-border-color:transparent;--ct-btn-border-radius:var(--ct-border-radius);--ct-btn-hover-border-color:transparent;--ct-btn-box-shadow:2px 2px 3px rgba(27, 23, 30, 0.1);--ct-btn-disabled-opacity:0.65;--ct-btn-focus-box-shadow:0 0 0 0.15rem rgba(var(--ct-btn-focus-shadow-rgb), .5);display:inline-block;padding:var(--ct-btn-padding-y) var(--ct-btn-padding-x);font-family:var(--ct-btn-font-family);font-size:var(--ct-btn-font-size);font-weight:var(--ct-btn-font-weight);line-height:var(--ct-btn-line-height);color:var(--ct-btn-color);text-align:center;vertical-align:middle;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;border:var(--ct-btn-border-width) solid var(--ct-btn-border-color);border-radius:var(--ct-btn-border-radius);background-color:var(--ct-btn-bg);-webkit-transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out,-webkit-box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.btn{-webkit-transition:none;transition:none}}.btn:hover{color:var(--ct-btn-hover-color);background-color:var(--ct-btn-hover-bg);border-color:var(--ct-btn-hover-border-color)}.btn-check+.btn:hover{color:var(--ct-btn-color);background-color:var(--ct-btn-bg);border-color:var(--ct-btn-border-color)}.btn:focus-visible{color:var(--ct-btn-hover-color);background-color:var(--ct-btn-hover-bg);border-color:var(--ct-btn-hover-border-color);outline:0;-webkit-box-shadow:var(--ct-btn-focus-box-shadow);box-shadow:var(--ct-btn-focus-box-shadow)}.btn-check:focus-visible+.btn{border-color:var(--ct-btn-hover-border-color);outline:0;-webkit-box-shadow:var(--ct-btn-focus-box-shadow);box-shadow:var(--ct-btn-focus-box-shadow)}.btn-check:checked+.btn,.btn.active,.btn.show,.btn:first-child:active,:not(.btn-check)+.btn:active{color:var(--ct-btn-active-color);background-color:var(--ct-btn-active-bg);border-color:var(--ct-btn-active-border-color)}.btn-check:checked+.btn:focus-visible,.btn.active:focus-visible,.btn.show:focus-visible,.btn:first-child:active:focus-visible,:not(.btn-check)+.btn:active:focus-visible{-webkit-box-shadow:var(--ct-btn-focus-box-shadow);box-shadow:var(--ct-btn-focus-box-shadow)}.btn.disabled,.btn:disabled,fieldset:disabled .btn{color:var(--ct-btn-disabled-color);pointer-events:none;background-color:var(--ct-btn-disabled-bg);border-color:var(--ct-btn-disabled-border-color);opacity:var(--ct-btn-disabled-opacity)}.btn-primary{--ct-btn-color:#fff;--ct-btn-bg:#4254ba;--ct-btn-border-color:#4254ba;--ct-btn-hover-color:#fff;--ct-btn-hover-bg:#3d4eac;--ct-btn-hover-border-color:#3d4eac;--ct-btn-focus-shadow-rgb:94,110,196;--ct-btn-active-color:#fff;--ct-btn-active-bg:#3d4eac;--ct-btn-active-border-color:#3d4eac;--ct-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, 0.125);--ct-btn-disabled-color:#fff;--ct-btn-disabled-bg:#4254ba;--ct-btn-disabled-border-color:#4254ba}.btn-secondary{--ct-btn-color:#fff;--ct-btn-bg:#6c757d;--ct-btn-border-color:#6c757d;--ct-btn-hover-color:#fff;--ct-btn-hover-bg:#646c74;--ct-btn-hover-border-color:#646c74;--ct-btn-focus-shadow-rgb:130,138,145;--ct-btn-active-color:#fff;--ct-btn-active-bg:#646c74;--ct-btn-active-border-color:#646c74;--ct-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, 0.125);--ct-btn-disabled-color:#fff;--ct-btn-disabled-bg:#6c757d;--ct-btn-disabled-border-color:#6c757d}.btn-success{--ct-btn-color:#fff;--ct-btn-bg:#17a497;--ct-btn-border-color:#17a497;--ct-btn-hover-color:#fff;--ct-btn-hover-bg:#15988c;--ct-btn-hover-border-color:#15988c;--ct-btn-focus-shadow-rgb:58,178,167;--ct-btn-active-color:#fff;--ct-btn-active-bg:#15988c;--ct-btn-active-border-color:#15988c;--ct-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, 0.125);--ct-btn-disabled-color:#fff;--ct-btn-disabled-bg:#17a497;--ct-btn-disabled-border-color:#17a497}.btn-info{--ct-btn-color:#fff;--ct-btn-bg:#299bf6;--ct-btn-border-color:#299bf6;--ct-btn-hover-color:#fff;--ct-btn-hover-bg:#268fe4;--ct-btn-hover-border-color:#268fe4;--ct-btn-focus-shadow-rgb:73,170,247;--ct-btn-active-color:#fff;--ct-btn-active-bg:#268fe4;--ct-btn-active-border-color:#268fe4;--ct-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, 0.125);--ct-btn-disabled-color:#fff;--ct-btn-disabled-bg:#299bf6;--ct-btn-disabled-border-color:#299bf6}.btn-warning{--ct-btn-color:#fff;--ct-btn-bg:#fec20d;--ct-btn-border-color:#fec20d;--ct-btn-hover-color:#fff;--ct-btn-hover-bg:#ebb30c;--ct-btn-hover-border-color:#ebb30c;--ct-btn-focus-shadow-rgb:254,203,49;--ct-btn-active-color:#fff;--ct-btn-active-bg:#ebb30c;--ct-btn-active-border-color:#ebb30c;--ct-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, 0.125);--ct-btn-disabled-color:#fff;--ct-btn-disabled-bg:#fec20d;--ct-btn-disabled-border-color:#fec20d}.btn-danger{--ct-btn-color:#fff;--ct-btn-bg:#f7473a;--ct-btn-border-color:#f7473a;--ct-btn-hover-color:#fff;--ct-btn-hover-bg:#e44236;--ct-btn-hover-border-color:#e44236;--ct-btn-focus-shadow-rgb:248,99,88;--ct-btn-active-color:#fff;--ct-btn-active-bg:#e44236;--ct-btn-active-border-color:#e44236;--ct-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, 0.125);--ct-btn-disabled-color:#fff;--ct-btn-disabled-bg:#f7473a;--ct-btn-disabled-border-color:#f7473a}.btn-light{--ct-btn-color:#212529;--ct-btn-bg:#f2f2f7;--ct-btn-border-color:#f2f2f7;--ct-btn-hover-color:#212529;--ct-btn-hover-bg:#e0e0e4;--ct-btn-hover-border-color:#e0e0e4;--ct-btn-focus-shadow-rgb:211,211,216;--ct-btn-active-color:#212529;--ct-btn-active-bg:#e0e0e4;--ct-btn-active-border-color:#e0e0e4;--ct-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, 0.125);--ct-btn-disabled-color:#212529;--ct-btn-disabled-bg:#f2f2f7;--ct-btn-disabled-border-color:#f2f2f7}.btn-dark{--ct-btn-color:#fff;--ct-btn-bg:#49526b;--ct-btn-border-color:#49526b;--ct-btn-hover-color:#fff;--ct-btn-hover-bg:#646c81;--ct-btn-hover-border-color:#5b637a;--ct-btn-focus-shadow-rgb:100,108,129;--ct-btn-active-color:#fff;--ct-btn-active-bg:#646c81;--ct-btn-active-border-color:#5b637a;--ct-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, 0.125);--ct-btn-disabled-color:#fff;--ct-btn-disabled-bg:#49526b;--ct-btn-disabled-border-color:#49526b}.btn-purple{--ct-btn-color:#fff;--ct-btn-bg:#815ac5;--ct-btn-border-color:#815ac5;--ct-btn-hover-color:#fff;--ct-btn-hover-bg:#7753b6;--ct-btn-hover-border-color:#7753b6;--ct-btn-focus-shadow-rgb:148,115,206;--ct-btn-active-color:#fff;--ct-btn-active-bg:#7753b6;--ct-btn-active-border-color:#7753b6;--ct-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, 0.125);--ct-btn-disabled-color:#fff;--ct-btn-disabled-bg:#815ac5;--ct-btn-disabled-border-color:#815ac5}.btn-pink{--ct-btn-color:#fff;--ct-btn-bg:#ff679b;--ct-btn-border-color:#ff679b;--ct-btn-hover-color:#fff;--ct-btn-hover-bg:#ec5f8f;--ct-btn-hover-border-color:#ec5f8f;--ct-btn-focus-shadow-rgb:255,126,170;--ct-btn-active-color:#fff;--ct-btn-active-bg:#ec5f8f;--ct-btn-active-border-color:#ec5f8f;--ct-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, 0.125);--ct-btn-disabled-color:#fff;--ct-btn-disabled-bg:#ff679b;--ct-btn-disabled-border-color:#ff679b}.btn-outline-primary{--ct-btn-color:#4254ba;--ct-btn-border-color:#4254ba;--ct-btn-hover-color:#fff;--ct-btn-hover-bg:#4254ba;--ct-btn-hover-border-color:#4254ba;--ct-btn-focus-shadow-rgb:66,84,186;--ct-btn-active-color:#fff;--ct-btn-active-bg:#4254ba;--ct-btn-active-border-color:#4254ba;--ct-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, 0.125);--ct-btn-disabled-color:#4254ba;--ct-btn-disabled-bg:transparent;--ct-btn-disabled-border-color:#4254ba;--ct-gradient:none}.btn-outline-secondary{--ct-btn-color:#6c757d;--ct-btn-border-color:#6c757d;--ct-btn-hover-color:#fff;--ct-btn-hover-bg:#6c757d;--ct-btn-hover-border-color:#6c757d;--ct-btn-focus-shadow-rgb:108,117,125;--ct-btn-active-color:#fff;--ct-btn-active-bg:#6c757d;--ct-btn-active-border-color:#6c757d;--ct-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, 0.125);--ct-btn-disabled-color:#6c757d;--ct-btn-disabled-bg:transparent;--ct-btn-disabled-border-color:#6c757d;--ct-gradient:none}.btn-outline-success{--ct-btn-color:#17a497;--ct-btn-border-color:#17a497;--ct-btn-hover-color:#fff;--ct-btn-hover-bg:#17a497;--ct-btn-hover-border-color:#17a497;--ct-btn-focus-shadow-rgb:23,164,151;--ct-btn-active-color:#fff;--ct-btn-active-bg:#17a497;--ct-btn-active-border-color:#17a497;--ct-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, 0.125);--ct-btn-disabled-color:#17a497;--ct-btn-disabled-bg:transparent;--ct-btn-disabled-border-color:#17a497;--ct-gradient:none}.btn-outline-info{--ct-btn-color:#299bf6;--ct-btn-border-color:#299bf6;--ct-btn-hover-color:#fff;--ct-btn-hover-bg:#299bf6;--ct-btn-hover-border-color:#299bf6;--ct-btn-focus-shadow-rgb:41,155,246;--ct-btn-active-color:#fff;--ct-btn-active-bg:#299bf6;--ct-btn-active-border-color:#299bf6;--ct-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, 0.125);--ct-btn-disabled-color:#299bf6;--ct-btn-disabled-bg:transparent;--ct-btn-disabled-border-color:#299bf6;--ct-gradient:none}.btn-outline-warning{--ct-btn-color:#fec20d;--ct-btn-border-color:#fec20d;--ct-btn-hover-color:#fff;--ct-btn-hover-bg:#fec20d;--ct-btn-hover-border-color:#fec20d;--ct-btn-focus-shadow-rgb:254,194,13;--ct-btn-active-color:#fff;--ct-btn-active-bg:#fec20d;--ct-btn-active-border-color:#fec20d;--ct-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, 0.125);--ct-btn-disabled-color:#fec20d;--ct-btn-disabled-bg:transparent;--ct-btn-disabled-border-color:#fec20d;--ct-gradient:none}.btn-outline-danger{--ct-btn-color:#f7473a;--ct-btn-border-color:#f7473a;--ct-btn-hover-color:#fff;--ct-btn-hover-bg:#f7473a;--ct-btn-hover-border-color:#f7473a;--ct-btn-focus-shadow-rgb:247,71,58;--ct-btn-active-color:#fff;--ct-btn-active-bg:#f7473a;--ct-btn-active-border-color:#f7473a;--ct-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, 0.125);--ct-btn-disabled-color:#f7473a;--ct-btn-disabled-bg:transparent;--ct-btn-disabled-border-color:#f7473a;--ct-gradient:none}.btn-outline-light{--ct-btn-color:#f2f2f7;--ct-btn-border-color:#f2f2f7;--ct-btn-hover-color:#212529;--ct-btn-hover-bg:#f2f2f7;--ct-btn-hover-border-color:#f2f2f7;--ct-btn-focus-shadow-rgb:242,242,247;--ct-btn-active-color:#212529;--ct-btn-active-bg:#f2f2f7;--ct-btn-active-border-color:#f2f2f7;--ct-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, 0.125);--ct-btn-disabled-color:#f2f2f7;--ct-btn-disabled-bg:transparent;--ct-btn-disabled-border-color:#f2f2f7;--ct-gradient:none}.btn-outline-dark{--ct-btn-color:#49526b;--ct-btn-border-color:#49526b;--ct-btn-hover-color:#fff;--ct-btn-hover-bg:#49526b;--ct-btn-hover-border-color:#49526b;--ct-btn-focus-shadow-rgb:73,82,107;--ct-btn-active-color:#fff;--ct-btn-active-bg:#49526b;--ct-btn-active-border-color:#49526b;--ct-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, 0.125);--ct-btn-disabled-color:#49526b;--ct-btn-disabled-bg:transparent;--ct-btn-disabled-border-color:#49526b;--ct-gradient:none}.btn-outline-purple{--ct-btn-color:#815ac5;--ct-btn-border-color:#815ac5;--ct-btn-hover-color:#fff;--ct-btn-hover-bg:#815ac5;--ct-btn-hover-border-color:#815ac5;--ct-btn-focus-shadow-rgb:129,90,197;--ct-btn-active-color:#fff;--ct-btn-active-bg:#815ac5;--ct-btn-active-border-color:#815ac5;--ct-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, 0.125);--ct-btn-disabled-color:#815ac5;--ct-btn-disabled-bg:transparent;--ct-btn-disabled-border-color:#815ac5;--ct-gradient:none}.btn-outline-pink{--ct-btn-color:#ff679b;--ct-btn-border-color:#ff679b;--ct-btn-hover-color:#fff;--ct-btn-hover-bg:#ff679b;--ct-btn-hover-border-color:#ff679b;--ct-btn-focus-shadow-rgb:255,103,155;--ct-btn-active-color:#fff;--ct-btn-active-bg:#ff679b;--ct-btn-active-border-color:#ff679b;--ct-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, 0.125);--ct-btn-disabled-color:#ff679b;--ct-btn-disabled-bg:transparent;--ct-btn-disabled-border-color:#ff679b;--ct-gradient:none}.btn-link{--ct-btn-font-weight:400;--ct-btn-color:var(--ct-link-color);--ct-btn-bg:transparent;--ct-btn-border-color:transparent;--ct-btn-hover-color:var(--ct-link-hover-color);--ct-btn-hover-border-color:transparent;--ct-btn-active-color:var(--ct-link-hover-color);--ct-btn-active-border-color:transparent;--ct-btn-disabled-color:#6c757d;--ct-btn-disabled-border-color:transparent;--ct-btn-box-shadow:0 0 0 #000;--ct-btn-focus-shadow-rgb:94,110,196;text-decoration:none}.btn-link:focus-visible{color:var(--ct-btn-color)}.btn-link:hover{color:var(--ct-btn-hover-color)}.btn-group-lg>.btn,.btn-lg{--ct-btn-padding-y:0.5rem;--ct-btn-padding-x:1rem;--ct-btn-font-size:1.21625rem;--ct-btn-border-radius:var(--ct-border-radius)}.btn-group-sm>.btn,.btn-sm{--ct-btn-padding-y:0.28rem;--ct-btn-padding-x:0.8rem;--ct-btn-font-size:0.85rem;--ct-btn-border-radius:var(--ct-border-radius-sm)}.fade{-webkit-transition:opacity .15s linear;transition:opacity .15s linear}@media (prefers-reduced-motion:reduce){.fade{-webkit-transition:none;transition:none}}.fade:not(.show){opacity:0}.collapse:not(.show){display:none}.collapsing{height:0;overflow:hidden;-webkit-transition:height .35s ease;transition:height .35s ease}@media (prefers-reduced-motion:reduce){.collapsing{-webkit-transition:none;transition:none}}.collapsing.collapse-horizontal{width:0;height:auto;-webkit-transition:width .35s ease;transition:width .35s ease}@media (prefers-reduced-motion:reduce){.collapsing.collapse-horizontal{-webkit-transition:none;transition:none}}.dropdown,.dropdown-center,.dropend,.dropstart,.dropup,.dropup-center{position:relative}.dropdown-toggle{white-space:nowrap}.dropdown-toggle::after{display:inline-block;margin-right:.35em;vertical-align:.1575em;content:"";border-top:.35em solid;border-left:.35em solid transparent;border-bottom:0;border-right:.35em solid transparent}.dropdown-toggle:empty::after{margin-right:0}.dropdown-menu{--ct-dropdown-zindex:1000;--ct-dropdown-min-width:10rem;--ct-dropdown-padding-x:0;--ct-dropdown-padding-y:0.25rem;--ct-dropdown-spacer:0.125rem;--ct-dropdown-font-size:0.875rem;--ct-dropdown-color:var(--ct-body-color);--ct-dropdown-bg:var(--ct-secondary-bg);--ct-dropdown-border-color:var(--ct-border-color);--ct-dropdown-border-radius:0.15rem;--ct-dropdown-border-width:0;--ct-dropdown-inner-border-radius:0.15rem;--ct-dropdown-divider-bg:var(--ct-border-color);--ct-dropdown-divider-margin-y:0.625rem;--ct-dropdown-box-shadow:var(--ct-box-shadow-lg);--ct-dropdown-link-color:var(--ct-body-color);--ct-dropdown-link-hover-color:var(--ct-primary);--ct-dropdown-link-hover-bg:var(--ct-primary-bg-subtle);--ct-dropdown-link-active-color:var(--ct-tertiary-color);--ct-dropdown-link-active-bg:var(--ct-tertiary-bg);--ct-dropdown-link-disabled-color:#adb5bd;--ct-dropdown-item-padding-x:0.9375rem;--ct-dropdown-item-padding-y:0.375rem;--ct-dropdown-header-color:inherit;--ct-dropdown-header-padding-x:0.703125rem;--ct-dropdown-header-padding-y:0.5rem;position:absolute;z-index:var(--ct-dropdown-zindex);display:none;min-width:var(--ct-dropdown-min-width);padding:var(--ct-dropdown-padding-y) var(--ct-dropdown-padding-x);margin:0;font-size:var(--ct-dropdown-font-size);color:var(--ct-dropdown-color);text-align:right;list-style:none;background-color:var(--ct-dropdown-bg);background-clip:padding-box;border:var(--ct-dropdown-border-width) solid var(--ct-dropdown-border-color);border-radius:var(--ct-dropdown-border-radius)}.dropdown-menu[data-bs-popper]{top:100%;right:0;margin-top:var(--ct-dropdown-spacer)}.dropdown-menu-start{--bs-position:start}.dropdown-menu-start[data-bs-popper]{left:auto;right:0}.dropdown-menu-end{--bs-position:end}.dropdown-menu-end[data-bs-popper]{left:0;right:auto}@media (min-width:576px){.dropdown-menu-sm-start{--bs-position:start}.dropdown-menu-sm-start[data-bs-popper]{left:auto;right:0}.dropdown-menu-sm-end{--bs-position:end}.dropdown-menu-sm-end[data-bs-popper]{left:0;right:auto}}@media (min-width:768px){.dropdown-menu-md-start{--bs-position:start}.dropdown-menu-md-start[data-bs-popper]{left:auto;right:0}.dropdown-menu-md-end{--bs-position:end}.dropdown-menu-md-end[data-bs-popper]{left:0;right:auto}}@media (min-width:992px){.dropdown-menu-lg-start{--bs-position:start}.dropdown-menu-lg-start[data-bs-popper]{left:auto;right:0}.dropdown-menu-lg-end{--bs-position:end}.dropdown-menu-lg-end[data-bs-popper]{left:0;right:auto}}@media (min-width:1200px){.dropdown-menu-xl-start{--bs-position:start}.dropdown-menu-xl-start[data-bs-popper]{left:auto;right:0}.dropdown-menu-xl-end{--bs-position:end}.dropdown-menu-xl-end[data-bs-popper]{left:0;right:auto}}@media (min-width:1400px){.dropdown-menu-xxl-start{--bs-position:start}.dropdown-menu-xxl-start[data-bs-popper]{left:auto;right:0}.dropdown-menu-xxl-end{--bs-position:end}.dropdown-menu-xxl-end[data-bs-popper]{left:0;right:auto}}.dropup .dropdown-menu[data-bs-popper]{top:auto;bottom:100%;margin-top:0;margin-bottom:var(--ct-dropdown-spacer)}.dropup .dropdown-toggle::after{display:inline-block;margin-right:.35em;vertical-align:.1575em;content:"";border-top:0;border-left:.35em solid transparent;border-bottom:.35em solid;border-right:.35em solid transparent}.dropup .dropdown-toggle:empty::after{margin-right:0}.dropend .dropdown-menu[data-bs-popper]{top:0;left:auto;right:100%;margin-top:0;margin-right:var(--ct-dropdown-spacer)}.dropend .dropdown-toggle::after{display:inline-block;margin-right:.35em;vertical-align:.1575em;content:"";border-top:.35em solid transparent;border-left:0;border-bottom:.35em solid transparent;border-right:.35em solid}.dropend .dropdown-toggle:empty::after{margin-right:0}.dropend .dropdown-toggle::after{vertical-align:0}.dropstart .dropdown-menu[data-bs-popper]{top:0;left:100%;right:auto;margin-top:0;margin-left:var(--ct-dropdown-spacer)}.dropstart .dropdown-toggle::after{display:inline-block;margin-right:.35em;vertical-align:.1575em;content:""}.dropstart .dropdown-toggle::after{display:none}.dropstart .dropdown-toggle::before{display:inline-block;margin-left:.35em;vertical-align:.1575em;content:"";border-top:.35em solid transparent;border-left:.35em solid;border-bottom:.35em solid transparent}.dropstart .dropdown-toggle:empty::after{margin-right:0}.dropstart .dropdown-toggle::before{vertical-align:0}.dropdown-divider{height:0;margin:var(--ct-dropdown-divider-margin-y) 0;overflow:hidden;border-top:1px solid var(--ct-dropdown-divider-bg);opacity:1}.dropdown-item{display:block;width:100%;padding:var(--ct-dropdown-item-padding-y) var(--ct-dropdown-item-padding-x);clear:both;font-weight:400;color:var(--ct-dropdown-link-color);text-align:inherit;white-space:nowrap;background-color:transparent;border:0;border-radius:var(--ct-dropdown-item-border-radius,0)}.dropdown-item:focus,.dropdown-item:hover{color:var(--ct-dropdown-link-hover-color);background-color:var(--ct-dropdown-link-hover-bg)}.dropdown-item.active,.dropdown-item:active{color:var(--ct-dropdown-link-active-color);text-decoration:none;background-color:var(--ct-dropdown-link-active-bg)}.dropdown-item.disabled,.dropdown-item:disabled{color:var(--ct-dropdown-link-disabled-color);pointer-events:none;background-color:transparent}.dropdown-menu.show{display:block}.dropdown-header{display:block;padding:var(--ct-dropdown-header-padding-y) var(--ct-dropdown-header-padding-x);margin-bottom:0;font-size:.85rem;color:var(--ct-dropdown-header-color);white-space:nowrap}.dropdown-item-text{display:block;padding:var(--ct-dropdown-item-padding-y) var(--ct-dropdown-item-padding-x);color:var(--ct-dropdown-link-color)}.dropdown-menu-dark{--ct-dropdown-color:#dee2e6;--ct-dropdown-bg:#343a40;--ct-dropdown-border-color:var(--ct-border-color);--ct-dropdown-link-color:#dee2e6;--ct-dropdown-link-hover-color:#fff;--ct-dropdown-divider-bg:var(--ct-border-color);--ct-dropdown-link-hover-bg:rgba(255, 255, 255, 0.15);--ct-dropdown-link-active-color:var(--ct-tertiary-color);--ct-dropdown-link-active-bg:var(--ct-tertiary-bg);--ct-dropdown-link-disabled-color:#adb5bd;--ct-dropdown-header-color:#adb5bd}.btn-group,.btn-group-vertical{position:relative;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;vertical-align:middle}.btn-group-vertical>.btn,.btn-group>.btn{position:relative;-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto}.btn-group-vertical>.btn-check:checked+.btn,.btn-group-vertical>.btn-check:focus+.btn,.btn-group-vertical>.btn.active,.btn-group-vertical>.btn:active,.btn-group-vertical>.btn:focus,.btn-group-vertical>.btn:hover,.btn-group>.btn-check:checked+.btn,.btn-group>.btn-check:focus+.btn,.btn-group>.btn.active,.btn-group>.btn:active,.btn-group>.btn:focus,.btn-group>.btn:hover{z-index:1}.btn-toolbar{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.btn-toolbar .input-group{width:auto}.btn-group{border-radius:var(--ct-border-radius)}.btn-group>.btn-group:not(:first-child),.btn-group>:not(.btn-check:first-child)+.btn{margin-right:calc(var(--ct-border-width) * -1)}.btn-group>.btn-group:not(:last-child)>.btn,.btn-group>.btn.dropdown-toggle-split:first-child,.btn-group>.btn:not(:last-child):not(.dropdown-toggle){border-top-left-radius:0;border-bottom-left-radius:0}.btn-group>.btn-group:not(:first-child)>.btn,.btn-group>.btn:nth-child(n+3),.btn-group>:not(.btn-check)+.btn{border-top-right-radius:0;border-bottom-right-radius:0}.dropdown-toggle-split{padding-left:.675rem;padding-right:.675rem}.dropdown-toggle-split::after,.dropend .dropdown-toggle-split::after,.dropup .dropdown-toggle-split::after{margin-right:0}.dropstart .dropdown-toggle-split::before{margin-left:0}.btn-group-sm>.btn+.dropdown-toggle-split,.btn-sm+.dropdown-toggle-split{padding-left:.6rem;padding-right:.6rem}.btn-group-lg>.btn+.dropdown-toggle-split,.btn-lg+.dropdown-toggle-split{padding-left:.75rem;padding-right:.75rem}.btn-group-vertical{-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.btn-group-vertical>.btn,.btn-group-vertical>.btn-group{width:100%}.btn-group-vertical>.btn-group:not(:first-child),.btn-group-vertical>.btn:not(:first-child){margin-top:calc(var(--ct-border-width) * -1)}.btn-group-vertical>.btn-group:not(:last-child)>.btn,.btn-group-vertical>.btn:not(:last-child):not(.dropdown-toggle){border-bottom-left-radius:0;border-bottom-right-radius:0}.btn-group-vertical>.btn-group:not(:first-child)>.btn,.btn-group-vertical>.btn~.btn{border-top-right-radius:0;border-top-left-radius:0}.nav{--ct-nav-link-padding-x:1rem;--ct-nav-link-padding-y:0.5rem;--ct-nav-link-color:var(--ct-link-color);--ct-nav-link-hover-color:var(--ct-link-hover-color);--ct-nav-link-disabled-color:var(--ct-secondary-color);display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;padding-right:0;margin-bottom:0;list-style:none}.nav-link{display:block;padding:var(--ct-nav-link-padding-y) var(--ct-nav-link-padding-x);font-size:var(--ct-nav-link-font-size);font-weight:var(--ct-nav-link-font-weight);color:var(--ct-nav-link-color);background:0 0;border:0;-webkit-transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out}@media (prefers-reduced-motion:reduce){.nav-link{-webkit-transition:none;transition:none}}.nav-link:focus,.nav-link:hover{color:var(--ct-nav-link-hover-color)}.nav-link:focus-visible{outline:0;-webkit-box-shadow:0 0 0 .25rem rgba(66,84,186,.25);box-shadow:0 0 0 .25rem rgba(66,84,186,.25)}.nav-link.disabled{color:var(--ct-nav-link-disabled-color);pointer-events:none;cursor:default}.nav-tabs{--ct-nav-tabs-border-width:var(--ct-border-width);--ct-nav-tabs-border-color:var(--ct-border-color);--ct-nav-tabs-border-radius:var(--ct-border-radius);--ct-nav-tabs-link-hover-border-color:var(--ct-secondary-bg) var(--ct-secondary-bg) var(--ct-border-color);--ct-nav-tabs-link-active-color:var(--ct-emphasis-color);--ct-nav-tabs-link-active-bg:var(--ct-secondary-bg);--ct-nav-tabs-link-active-border-color:var(--ct-border-color) var(--ct-border-color) var(--ct-secondary-bg);border-bottom:var(--ct-nav-tabs-border-width) solid var(--ct-nav-tabs-border-color)}.nav-tabs .nav-link{margin-bottom:calc(-1 * var(--ct-nav-tabs-border-width));border:var(--ct-nav-tabs-border-width) solid transparent;border-top-right-radius:var(--ct-nav-tabs-border-radius);border-top-left-radius:var(--ct-nav-tabs-border-radius)}.nav-tabs .nav-link:focus,.nav-tabs .nav-link:hover{isolation:isolate;border-color:var(--ct-nav-tabs-link-hover-border-color)}.nav-tabs .nav-link.disabled,.nav-tabs .nav-link:disabled{color:var(--ct-nav-link-disabled-color);background-color:transparent;border-color:transparent}.nav-tabs .nav-item.show .nav-link,.nav-tabs .nav-link.active{color:var(--ct-nav-tabs-link-active-color);background-color:var(--ct-nav-tabs-link-active-bg);border-color:var(--ct-nav-tabs-link-active-border-color)}.nav-tabs .dropdown-menu{margin-top:calc(-1 * var(--ct-nav-tabs-border-width));border-top-right-radius:0;border-top-left-radius:0}.nav-pills{--ct-nav-pills-border-radius:0.15rem;--ct-nav-pills-link-active-color:#fff;--ct-nav-pills-link-active-bg:#4254ba}.nav-pills .nav-link{border-radius:var(--ct-nav-pills-border-radius)}.nav-pills .nav-link:disabled{color:var(--ct-nav-link-disabled-color);background-color:transparent;border-color:transparent}.nav-pills .nav-link.active,.nav-pills .show>.nav-link{color:var(--ct-nav-pills-link-active-color);background-color:var(--ct-nav-pills-link-active-bg)}.nav-underline{--ct-nav-underline-gap:1rem;--ct-nav-underline-border-width:0.125rem;--ct-nav-underline-link-active-color:var(--ct-emphasis-color);gap:var(--ct-nav-underline-gap)}.nav-underline .nav-link{padding-left:0;padding-right:0;border-bottom:var(--ct-nav-underline-border-width) solid transparent}.nav-underline .nav-link:focus,.nav-underline .nav-link:hover{border-bottom-color:currentcolor}.nav-underline .nav-link.active,.nav-underline .show>.nav-link{font-weight:700;color:var(--ct-nav-underline-link-active-color);border-bottom-color:currentcolor}.nav-fill .nav-item,.nav-fill>.nav-link{-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto;text-align:center}.nav-justified .nav-item,.nav-justified>.nav-link{-ms-flex-preferred-size:0;flex-basis:0;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;text-align:center}.nav-fill .nav-item .nav-link,.nav-justified .nav-item .nav-link{width:100%}.tab-content>.tab-pane{display:none}.tab-content>.active{display:block}.navbar{--ct-navbar-padding-x:0;--ct-navbar-padding-y:0.625rem;--ct-navbar-color:rgba(var(--ct-emphasis-color-rgb), 0.65);--ct-navbar-hover-color:rgba(var(--ct-emphasis-color-rgb), 0.8);--ct-navbar-disabled-color:rgba(var(--ct-emphasis-color-rgb), 0.3);--ct-navbar-active-color:rgba(var(--ct-emphasis-color-rgb), 1);--ct-navbar-brand-padding-y:0.2440625rem;--ct-navbar-brand-margin-end:1rem;--ct-navbar-brand-font-size:1.21625rem;--ct-navbar-brand-color:rgba(var(--ct-emphasis-color-rgb), 1);--ct-navbar-brand-hover-color:rgba(var(--ct-emphasis-color-rgb), 1);--ct-navbar-nav-link-padding-x:0.5rem;--ct-navbar-toggler-padding-y:0.25rem;--ct-navbar-toggler-padding-x:0.75rem;--ct-navbar-toggler-font-size:1.21625rem;--ct-navbar-toggler-icon-bg:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28108, 117, 125, 0.75%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");--ct-navbar-toggler-border-color:rgba(var(--ct-emphasis-color-rgb), 0.15);--ct-navbar-toggler-border-radius:var(--ct-border-radius);--ct-navbar-toggler-focus-width:0.15rem;--ct-navbar-toggler-transition:box-shadow 0.15s ease-in-out;position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;padding:var(--ct-navbar-padding-y) var(--ct-navbar-padding-x)}.navbar>.container,.navbar>.container-fluid,.navbar>.container-lg,.navbar>.container-md,.navbar>.container-sm,.navbar>.container-xl,.navbar>.container-xxl{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:inherit;flex-wrap:inherit;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}.navbar-brand{padding-top:var(--ct-navbar-brand-padding-y);padding-bottom:var(--ct-navbar-brand-padding-y);margin-left:var(--ct-navbar-brand-margin-end);font-size:var(--ct-navbar-brand-font-size);color:var(--ct-navbar-brand-color);white-space:nowrap}.navbar-brand:focus,.navbar-brand:hover{color:var(--ct-navbar-brand-hover-color)}.navbar-nav{--ct-nav-link-padding-x:0;--ct-nav-link-padding-y:0.5rem;--ct-nav-link-color:var(--ct-navbar-color);--ct-nav-link-hover-color:var(--ct-navbar-hover-color);--ct-nav-link-disabled-color:var(--ct-navbar-disabled-color);display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;padding-right:0;margin-bottom:0;list-style:none}.navbar-nav .nav-link.active,.navbar-nav .nav-link.show{color:var(--ct-navbar-active-color)}.navbar-nav .dropdown-menu{position:static}.navbar-text{padding-top:.5rem;padding-bottom:.5rem;color:var(--ct-navbar-color)}.navbar-text a,.navbar-text a:focus,.navbar-text a:hover{color:var(--ct-navbar-active-color)}.navbar-collapse{-ms-flex-preferred-size:100%;flex-basis:100%;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.navbar-toggler{padding:var(--ct-navbar-toggler-padding-y) var(--ct-navbar-toggler-padding-x);font-size:var(--ct-navbar-toggler-font-size);line-height:1;color:var(--ct-navbar-color);background-color:transparent;border:var(--ct-border-width) solid var(--ct-navbar-toggler-border-color);border-radius:var(--ct-navbar-toggler-border-radius);-webkit-transition:var(--ct-navbar-toggler-transition);transition:var(--ct-navbar-toggler-transition)}@media (prefers-reduced-motion:reduce){.navbar-toggler{-webkit-transition:none;transition:none}}.navbar-toggler:hover{text-decoration:none}.navbar-toggler:focus{text-decoration:none;outline:0;-webkit-box-shadow:0 0 0 var(--ct-navbar-toggler-focus-width);box-shadow:0 0 0 var(--ct-navbar-toggler-focus-width)}.navbar-toggler-icon{display:inline-block;width:1.5em;height:1.5em;vertical-align:middle;background-image:var(--ct-navbar-toggler-icon-bg);background-repeat:no-repeat;background-position:center;background-size:100%}.navbar-nav-scroll{max-height:var(--ct-scroll-height,75vh);overflow-y:auto}@media (min-width:576px){.navbar-expand-sm{-ms-flex-wrap:nowrap;flex-wrap:nowrap;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.navbar-expand-sm .navbar-nav{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.navbar-expand-sm .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-sm .navbar-nav .nav-link{padding-left:var(--ct-navbar-nav-link-padding-x);padding-right:var(--ct-navbar-nav-link-padding-x)}.navbar-expand-sm .navbar-nav-scroll{overflow:visible}.navbar-expand-sm .navbar-collapse{display:-webkit-box!important;display:-ms-flexbox!important;display:flex!important;-ms-flex-preferred-size:auto;flex-basis:auto}.navbar-expand-sm .navbar-toggler{display:none}.navbar-expand-sm .offcanvas{position:static;z-index:auto;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;width:auto!important;height:auto!important;visibility:visible!important;background-color:transparent!important;border:0!important;-webkit-transform:none!important;transform:none!important;-webkit-transition:none;transition:none}.navbar-expand-sm .offcanvas .offcanvas-header{display:none}.navbar-expand-sm .offcanvas .offcanvas-body{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;padding:0;overflow-y:visible}}@media (min-width:768px){.navbar-expand-md{-ms-flex-wrap:nowrap;flex-wrap:nowrap;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.navbar-expand-md .navbar-nav{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.navbar-expand-md .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-md .navbar-nav .nav-link{padding-left:var(--ct-navbar-nav-link-padding-x);padding-right:var(--ct-navbar-nav-link-padding-x)}.navbar-expand-md .navbar-nav-scroll{overflow:visible}.navbar-expand-md .navbar-collapse{display:-webkit-box!important;display:-ms-flexbox!important;display:flex!important;-ms-flex-preferred-size:auto;flex-basis:auto}.navbar-expand-md .navbar-toggler{display:none}.navbar-expand-md .offcanvas{position:static;z-index:auto;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;width:auto!important;height:auto!important;visibility:visible!important;background-color:transparent!important;border:0!important;-webkit-transform:none!important;transform:none!important;-webkit-transition:none;transition:none}.navbar-expand-md .offcanvas .offcanvas-header{display:none}.navbar-expand-md .offcanvas .offcanvas-body{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;padding:0;overflow-y:visible}}@media (min-width:992px){.navbar-expand-lg{-ms-flex-wrap:nowrap;flex-wrap:nowrap;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.navbar-expand-lg .navbar-nav{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.navbar-expand-lg .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-lg .navbar-nav .nav-link{padding-left:var(--ct-navbar-nav-link-padding-x);padding-right:var(--ct-navbar-nav-link-padding-x)}.navbar-expand-lg .navbar-nav-scroll{overflow:visible}.navbar-expand-lg .navbar-collapse{display:-webkit-box!important;display:-ms-flexbox!important;display:flex!important;-ms-flex-preferred-size:auto;flex-basis:auto}.navbar-expand-lg .navbar-toggler{display:none}.navbar-expand-lg .offcanvas{position:static;z-index:auto;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;width:auto!important;height:auto!important;visibility:visible!important;background-color:transparent!important;border:0!important;-webkit-transform:none!important;transform:none!important;-webkit-transition:none;transition:none}.navbar-expand-lg .offcanvas .offcanvas-header{display:none}.navbar-expand-lg .offcanvas .offcanvas-body{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;padding:0;overflow-y:visible}}@media (min-width:1200px){.navbar-expand-xl{-ms-flex-wrap:nowrap;flex-wrap:nowrap;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.navbar-expand-xl .navbar-nav{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.navbar-expand-xl .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-xl .navbar-nav .nav-link{padding-left:var(--ct-navbar-nav-link-padding-x);padding-right:var(--ct-navbar-nav-link-padding-x)}.navbar-expand-xl .navbar-nav-scroll{overflow:visible}.navbar-expand-xl .navbar-collapse{display:-webkit-box!important;display:-ms-flexbox!important;display:flex!important;-ms-flex-preferred-size:auto;flex-basis:auto}.navbar-expand-xl .navbar-toggler{display:none}.navbar-expand-xl .offcanvas{position:static;z-index:auto;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;width:auto!important;height:auto!important;visibility:visible!important;background-color:transparent!important;border:0!important;-webkit-transform:none!important;transform:none!important;-webkit-transition:none;transition:none}.navbar-expand-xl .offcanvas .offcanvas-header{display:none}.navbar-expand-xl .offcanvas .offcanvas-body{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;padding:0;overflow-y:visible}}@media (min-width:1400px){.navbar-expand-xxl{-ms-flex-wrap:nowrap;flex-wrap:nowrap;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.navbar-expand-xxl .navbar-nav{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.navbar-expand-xxl .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-xxl .navbar-nav .nav-link{padding-left:var(--ct-navbar-nav-link-padding-x);padding-right:var(--ct-navbar-nav-link-padding-x)}.navbar-expand-xxl .navbar-nav-scroll{overflow:visible}.navbar-expand-xxl .navbar-collapse{display:-webkit-box!important;display:-ms-flexbox!important;display:flex!important;-ms-flex-preferred-size:auto;flex-basis:auto}.navbar-expand-xxl .navbar-toggler{display:none}.navbar-expand-xxl .offcanvas{position:static;z-index:auto;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;width:auto!important;height:auto!important;visibility:visible!important;background-color:transparent!important;border:0!important;-webkit-transform:none!important;transform:none!important;-webkit-transition:none;transition:none}.navbar-expand-xxl .offcanvas .offcanvas-header{display:none}.navbar-expand-xxl .offcanvas .offcanvas-body{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;padding:0;overflow-y:visible}}.navbar-expand{-ms-flex-wrap:nowrap;flex-wrap:nowrap;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.navbar-expand .navbar-nav{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.navbar-expand .navbar-nav .dropdown-menu{position:absolute}.navbar-expand .navbar-nav .nav-link{padding-left:var(--ct-navbar-nav-link-padding-x);padding-right:var(--ct-navbar-nav-link-padding-x)}.navbar-expand .navbar-nav-scroll{overflow:visible}.navbar-expand .navbar-collapse{display:-webkit-box!important;display:-ms-flexbox!important;display:flex!important;-ms-flex-preferred-size:auto;flex-basis:auto}.navbar-expand .navbar-toggler{display:none}.navbar-expand .offcanvas{position:static;z-index:auto;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;width:auto!important;height:auto!important;visibility:visible!important;background-color:transparent!important;border:0!important;-webkit-transform:none!important;transform:none!important;-webkit-transition:none;transition:none}.navbar-expand .offcanvas .offcanvas-header{display:none}.navbar-expand .offcanvas .offcanvas-body{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;padding:0;overflow-y:visible}.navbar-dark,.navbar[data-bs-theme=dark]{--ct-navbar-color:rgba(255, 255, 255, 0.55);--ct-navbar-hover-color:rgba(255, 255, 255, 0.75);--ct-navbar-disabled-color:rgba(255, 255, 255, 0.25);--ct-navbar-active-color:#fff;--ct-navbar-brand-color:#fff;--ct-navbar-brand-hover-color:#fff;--ct-navbar-toggler-border-color:rgba(255, 255, 255, 0.1);--ct-navbar-toggler-icon-bg:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}[data-bs-theme=dark] .navbar-toggler-icon{--ct-navbar-toggler-icon-bg:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}.card{--ct-card-spacer-y:1.25rem;--ct-card-spacer-x:1.25rem;--ct-card-title-spacer-y:0.625rem;--ct-card-border-width:var(--ct-theme-card-border-width);--ct-card-border-color:var(--ct-border-color);--ct-card-border-radius:var(--ct-border-radius);--ct-card-box-shadow:var(--ct-box-shadow);--ct-card-inner-border-radius:calc(var(--ct-border-radius) - (var(--ct-theme-card-border-width)));--ct-card-cap-padding-y:1.25rem;--ct-card-cap-padding-x:1.25rem;--ct-card-cap-bg:transparent;--ct-card-bg:var(--ct-secondary-bg);--ct-card-img-overlay-padding:1.25rem;--ct-card-group-margin:0.3rem;position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;min-width:0;height:var(--ct-card-height);color:var(--ct-body-color);word-wrap:break-word;background-color:var(--ct-card-bg);background-clip:border-box;border:var(--ct-card-border-width) solid var(--ct-card-border-color);border-radius:var(--ct-card-border-radius)}.card>hr{margin-left:0;margin-right:0}.card>.list-group{border-top:inherit;border-bottom:inherit}.card>.list-group:first-child{border-top-width:0;border-top-right-radius:var(--ct-card-inner-border-radius);border-top-left-radius:var(--ct-card-inner-border-radius)}.card>.list-group:last-child{border-bottom-width:0;border-bottom-left-radius:var(--ct-card-inner-border-radius);border-bottom-right-radius:var(--ct-card-inner-border-radius)}.card>.card-header+.list-group,.card>.list-group+.card-footer{border-top:0}.card-body{-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto;padding:var(--ct-card-spacer-y) var(--ct-card-spacer-x);color:var(--ct-card-color)}.card-title{margin-bottom:var(--ct-card-title-spacer-y);color:var(--ct-card-title-color)}.card-subtitle{margin-top:calc(-.5 * var(--ct-card-title-spacer-y));margin-bottom:0;color:var(--ct-card-subtitle-color)}.card-text:last-child{margin-bottom:0}.card-link+.card-link{margin-right:var(--ct-card-spacer-x)}.card-header{padding:var(--ct-card-cap-padding-y) var(--ct-card-cap-padding-x);margin-bottom:0;color:var(--ct-card-cap-color);background-color:var(--ct-card-cap-bg);border-bottom:var(--ct-card-border-width) solid var(--ct-card-border-color)}.card-header:first-child{border-radius:var(--ct-card-inner-border-radius) var(--ct-card-inner-border-radius) 0 0}.card-footer{padding:var(--ct-card-cap-padding-y) var(--ct-card-cap-padding-x);color:var(--ct-card-cap-color);background-color:var(--ct-card-cap-bg);border-top:var(--ct-card-border-width) solid var(--ct-card-border-color)}.card-footer:last-child{border-radius:0 0 var(--ct-card-inner-border-radius) var(--ct-card-inner-border-radius)}.card-header-tabs{margin-left:calc(-.5 * var(--ct-card-cap-padding-x));margin-bottom:calc(-1 * var(--ct-card-cap-padding-y));margin-right:calc(-.5 * var(--ct-card-cap-padding-x));border-bottom:0}.card-header-tabs .nav-link.active{background-color:var(--ct-card-bg);border-bottom-color:var(--ct-card-bg)}.card-header-pills{margin-left:calc(-.5 * var(--ct-card-cap-padding-x));margin-right:calc(-.5 * var(--ct-card-cap-padding-x))}.card-img-overlay{position:absolute;top:0;left:0;bottom:0;right:0;padding:var(--ct-card-img-overlay-padding);border-radius:var(--ct-card-inner-border-radius)}.card-img,.card-img-bottom,.card-img-top{width:100%}.card-img,.card-img-top{border-top-right-radius:var(--ct-card-inner-border-radius);border-top-left-radius:var(--ct-card-inner-border-radius)}.card-img,.card-img-bottom{border-bottom-left-radius:var(--ct-card-inner-border-radius);border-bottom-right-radius:var(--ct-card-inner-border-radius)}.card-group>.card{margin-bottom:var(--ct-card-group-margin)}@media (min-width:576px){.card-group{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-flow:row wrap;flex-flow:row wrap}.card-group>.card{-webkit-box-flex:1;-ms-flex:1 0 0%;flex:1 0 0%;margin-bottom:0}.card-group>.card+.card{margin-right:0;border-right:0}.card-group>.card:not(:last-child){border-top-left-radius:0;border-bottom-left-radius:0}.card-group>.card:not(:last-child) .card-header,.card-group>.card:not(:last-child) .card-img-top{border-top-left-radius:0}.card-group>.card:not(:last-child) .card-footer,.card-group>.card:not(:last-child) .card-img-bottom{border-bottom-left-radius:0}.card-group>.card:not(:first-child){border-top-right-radius:0;border-bottom-right-radius:0}.card-group>.card:not(:first-child) .card-header,.card-group>.card:not(:first-child) .card-img-top{border-top-right-radius:0}.card-group>.card:not(:first-child) .card-footer,.card-group>.card:not(:first-child) .card-img-bottom{border-bottom-right-radius:0}}.accordion{--ct-accordion-color:var(--ct-body-color);--ct-accordion-bg:var(--ct-secondary-bg);--ct-accordion-transition:color 0.15s ease-in-out,background-color 0.15s ease-in-out,border-color 0.15s ease-in-out,box-shadow 0.15s ease-in-out,border-radius 0.15s ease;--ct-accordion-border-color:var(--ct-border-color);--ct-accordion-border-width:var(--ct-border-width);--ct-accordion-border-radius:var(--ct-border-radius);--ct-accordion-inner-border-radius:calc(var(--ct-border-radius) - (var(--ct-border-width)));--ct-accordion-btn-padding-x:1.25rem;--ct-accordion-btn-padding-y:1rem;--ct-accordion-btn-color:var(--ct-body-color);--ct-accordion-btn-bg:var(--ct-accordion-bg);--ct-accordion-btn-icon:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%236c757d'%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");--ct-accordion-btn-icon-width:0.75rem;--ct-accordion-btn-icon-transform:rotate(-180deg);--ct-accordion-btn-icon-transition:transform 0.2s ease-in-out;--ct-accordion-btn-active-icon:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%233b4ca7'%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");--ct-accordion-btn-focus-border-color:var(--ct-border-color-translucent);--ct-accordion-btn-focus-box-shadow:none;--ct-accordion-body-padding-x:1.25rem;--ct-accordion-body-padding-y:1rem;--ct-accordion-active-color:var(--ct-primary);--ct-accordion-active-bg:var(--ct-primary-bg-subtle)}.accordion-button{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;width:100%;padding:var(--ct-accordion-btn-padding-y) var(--ct-accordion-btn-padding-x);font-size:.875rem;color:var(--ct-accordion-btn-color);text-align:right;background-color:var(--ct-accordion-btn-bg);border:0;border-radius:0;overflow-anchor:none;-webkit-transition:var(--ct-accordion-transition);transition:var(--ct-accordion-transition)}@media (prefers-reduced-motion:reduce){.accordion-button{-webkit-transition:none;transition:none}}.accordion-button:not(.collapsed){color:var(--ct-accordion-active-color);background-color:var(--ct-accordion-active-bg);-webkit-box-shadow:inset 0 calc(-1 * var(--ct-accordion-border-width)) 0 var(--ct-accordion-border-color);box-shadow:inset 0 calc(-1 * var(--ct-accordion-border-width)) 0 var(--ct-accordion-border-color)}.accordion-button:not(.collapsed)::after{background-image:var(--ct-accordion-btn-active-icon);-webkit-transform:var(--ct-accordion-btn-icon-transform);transform:var(--ct-accordion-btn-icon-transform)}.accordion-button::after{-ms-flex-negative:0;flex-shrink:0;width:var(--ct-accordion-btn-icon-width);height:var(--ct-accordion-btn-icon-width);margin-right:auto;content:"";background-image:var(--ct-accordion-btn-icon);background-repeat:no-repeat;background-size:var(--ct-accordion-btn-icon-width);-webkit-transition:var(--ct-accordion-btn-icon-transition);transition:var(--ct-accordion-btn-icon-transition)}@media (prefers-reduced-motion:reduce){.accordion-button::after{-webkit-transition:none;transition:none}}.accordion-button:hover{z-index:2}.accordion-button:focus{z-index:3;border-color:var(--ct-accordion-btn-focus-border-color);outline:0;-webkit-box-shadow:var(--ct-accordion-btn-focus-box-shadow);box-shadow:var(--ct-accordion-btn-focus-box-shadow)}.accordion-header{margin-bottom:0}.accordion-item{color:var(--ct-accordion-color);background-color:var(--ct-accordion-bg);border:var(--ct-accordion-border-width) solid var(--ct-accordion-border-color)}.accordion-item:first-of-type{border-top-right-radius:var(--ct-accordion-border-radius);border-top-left-radius:var(--ct-accordion-border-radius)}.accordion-item:first-of-type .accordion-button{border-top-right-radius:var(--ct-accordion-inner-border-radius);border-top-left-radius:var(--ct-accordion-inner-border-radius)}.accordion-item:not(:first-of-type){border-top:0}.accordion-item:last-of-type{border-bottom-left-radius:var(--ct-accordion-border-radius);border-bottom-right-radius:var(--ct-accordion-border-radius)}.accordion-item:last-of-type .accordion-button.collapsed{border-bottom-left-radius:var(--ct-accordion-inner-border-radius);border-bottom-right-radius:var(--ct-accordion-inner-border-radius)}.accordion-item:last-of-type .accordion-collapse{border-bottom-left-radius:var(--ct-accordion-border-radius);border-bottom-right-radius:var(--ct-accordion-border-radius)}.accordion-body{padding:var(--ct-accordion-body-padding-y) var(--ct-accordion-body-padding-x)}.accordion-flush .accordion-collapse{border-width:0}.accordion-flush .accordion-item{border-left:0;border-right:0;border-radius:0}.accordion-flush .accordion-item:first-child{border-top:0}.accordion-flush .accordion-item:last-child{border-bottom:0}.accordion-flush .accordion-item .accordion-button,.accordion-flush .accordion-item .accordion-button.collapsed{border-radius:0}[data-bs-theme=dark] .accordion-button::after{--ct-accordion-btn-icon:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%233b4ca7'%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");--ct-accordion-btn-active-icon:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%233b4ca7'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e")}.breadcrumb{--ct-breadcrumb-padding-x:0;--ct-breadcrumb-padding-y:1.25rem;--ct-breadcrumb-margin-bottom:1rem;--ct-breadcrumb-divider-color:var(--ct-secondary-color);--ct-breadcrumb-item-padding-x:0.5rem;--ct-breadcrumb-item-active-color:var(--ct-secondary-color);display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;padding:var(--ct-breadcrumb-padding-y) var(--ct-breadcrumb-padding-x);margin-bottom:var(--ct-breadcrumb-margin-bottom);font-size:var(--ct-breadcrumb-font-size);list-style:none;background-color:var(--ct-breadcrumb-bg);border-radius:var(--ct-breadcrumb-border-radius)}.breadcrumb-item+.breadcrumb-item{padding-right:var(--ct-breadcrumb-item-padding-x)}.breadcrumb-item+.breadcrumb-item::before{float:right;padding-left:var(--ct-breadcrumb-item-padding-x);color:var(--ct-breadcrumb-divider-color);content:var(--ct-breadcrumb-divider, "\ea6e")}.breadcrumb-item.active{color:var(--ct-breadcrumb-item-active-color)}.pagination{--ct-pagination-padding-x:0.75rem;--ct-pagination-padding-y:0.375rem;--ct-pagination-font-size:0.875rem;--ct-pagination-color:var(--ct-tertiary-color);--ct-pagination-bg:var(--ct-secondary-bg);--ct-pagination-border-width:var(--ct-border-width);--ct-pagination-border-color:var(--ct-border-color);--ct-pagination-border-radius:var(--ct-border-radius-sm);--ct-pagination-hover-color:var(--ct-link-hover-color);--ct-pagination-hover-bg:var(--ct-tertiary-bg);--ct-pagination-hover-border-color:var(--ct-border-color);--ct-pagination-focus-color:var(--ct-link-hover-color);--ct-pagination-focus-bg:var(--ct-secondary-bg);--ct-pagination-focus-box-shadow:none;--ct-pagination-active-color:#fff;--ct-pagination-active-bg:#4254ba;--ct-pagination-active-border-color:#4254ba;--ct-pagination-disabled-color:var(--ct-secondary-color);--ct-pagination-disabled-bg:var(--ct-secondary-bg);--ct-pagination-disabled-border-color:var(--ct-border-color);display:-webkit-box;display:-ms-flexbox;display:flex;padding-right:0;list-style:none}.page-link{position:relative;display:block;padding:var(--ct-pagination-padding-y) var(--ct-pagination-padding-x);font-size:var(--ct-pagination-font-size);color:var(--ct-pagination-color);background-color:var(--ct-pagination-bg);border:var(--ct-pagination-border-width) solid var(--ct-pagination-border-color);-webkit-transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,-webkit-box-shadow .15s ease-in-out;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out,-webkit-box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.page-link{-webkit-transition:none;transition:none}}.page-link:hover{z-index:2;color:var(--ct-pagination-hover-color);background-color:var(--ct-pagination-hover-bg);border-color:var(--ct-pagination-hover-border-color)}.page-link:focus{z-index:3;color:var(--ct-pagination-focus-color);background-color:var(--ct-pagination-focus-bg);outline:0;-webkit-box-shadow:var(--ct-pagination-focus-box-shadow);box-shadow:var(--ct-pagination-focus-box-shadow)}.active>.page-link,.page-link.active{z-index:3;color:var(--ct-pagination-active-color);background-color:var(--ct-pagination-active-bg);border-color:var(--ct-pagination-active-border-color)}.disabled>.page-link,.page-link.disabled{color:var(--ct-pagination-disabled-color);pointer-events:none;background-color:var(--ct-pagination-disabled-bg);border-color:var(--ct-pagination-disabled-border-color)}.page-item:not(:first-child) .page-link{margin-right:calc(var(--ct-border-width) * -1)}.page-item:first-child .page-link{border-top-right-radius:var(--ct-pagination-border-radius);border-bottom-right-radius:var(--ct-pagination-border-radius)}.page-item:last-child .page-link{border-top-left-radius:var(--ct-pagination-border-radius);border-bottom-left-radius:var(--ct-pagination-border-radius)}.pagination-lg{--ct-pagination-padding-x:1.5rem;--ct-pagination-padding-y:0.75rem;--ct-pagination-font-size:1.21625rem;--ct-pagination-border-radius:var(--ct-border-radius)}.pagination-sm{--ct-pagination-padding-x:0.5rem;--ct-pagination-padding-y:0.25rem;--ct-pagination-font-size:0.85rem;--ct-pagination-border-radius:var(--ct-border-radius-sm)}.badge{--ct-badge-padding-x:0.4em;--ct-badge-padding-y:0.25em;--ct-badge-font-size:0.8em;--ct-badge-font-weight:500;--ct-badge-color:#fff;--ct-badge-border-radius:0.15rem;display:inline-block;padding:var(--ct-badge-padding-y) var(--ct-badge-padding-x);font-size:var(--ct-badge-font-size);font-weight:var(--ct-badge-font-weight);line-height:1;color:var(--ct-badge-color);text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:var(--ct-badge-border-radius)}.badge:empty{display:none}.btn .badge{position:relative;top:-1px}.alert{--ct-alert-bg:transparent;--ct-alert-padding-x:1.25rem;--ct-alert-padding-y:0.8rem;--ct-alert-margin-bottom:1rem;--ct-alert-color:inherit;--ct-alert-border-color:transparent;--ct-alert-border:var(--ct-border-width) solid var(--ct-alert-border-color);--ct-alert-border-radius:0.15rem;--ct-alert-link-color:inherit;position:relative;padding:var(--ct-alert-padding-y) var(--ct-alert-padding-x);margin-bottom:var(--ct-alert-margin-bottom);color:var(--ct-alert-color);background-color:var(--ct-alert-bg);border:var(--ct-alert-border);border-radius:var(--ct-alert-border-radius)}.alert-heading{color:inherit}.alert-link{font-weight:700;color:var(--ct-alert-link-color)}.alert-dismissible{padding-left:3.75rem}.alert-dismissible .btn-close{position:absolute;top:0;left:0;z-index:2;padding:1rem 1.25rem}.alert-primary{--ct-alert-color:var(--ct-primary-text-emphasis);--ct-alert-bg:var(--ct-primary-bg-subtle);--ct-alert-border-color:var(--ct-primary-border-subtle);--ct-alert-link-color:var(--ct-primary-text-emphasis)}.alert-secondary{--ct-alert-color:var(--ct-secondary-text-emphasis);--ct-alert-bg:var(--ct-secondary-bg-subtle);--ct-alert-border-color:var(--ct-secondary-border-subtle);--ct-alert-link-color:var(--ct-secondary-text-emphasis)}.alert-success{--ct-alert-color:var(--ct-success-text-emphasis);--ct-alert-bg:var(--ct-success-bg-subtle);--ct-alert-border-color:var(--ct-success-border-subtle);--ct-alert-link-color:var(--ct-success-text-emphasis)}.alert-info{--ct-alert-color:var(--ct-info-text-emphasis);--ct-alert-bg:var(--ct-info-bg-subtle);--ct-alert-border-color:var(--ct-info-border-subtle);--ct-alert-link-color:var(--ct-info-text-emphasis)}.alert-warning{--ct-alert-color:var(--ct-warning-text-emphasis);--ct-alert-bg:var(--ct-warning-bg-subtle);--ct-alert-border-color:var(--ct-warning-border-subtle);--ct-alert-link-color:var(--ct-warning-text-emphasis)}.alert-danger{--ct-alert-color:var(--ct-danger-text-emphasis);--ct-alert-bg:var(--ct-danger-bg-subtle);--ct-alert-border-color:var(--ct-danger-border-subtle);--ct-alert-link-color:var(--ct-danger-text-emphasis)}.alert-light{--ct-alert-color:var(--ct-light-text-emphasis);--ct-alert-bg:var(--ct-light-bg-subtle);--ct-alert-border-color:var(--ct-light-border-subtle);--ct-alert-link-color:var(--ct-light-text-emphasis)}.alert-dark{--ct-alert-color:var(--ct-dark-text-emphasis);--ct-alert-bg:var(--ct-dark-bg-subtle);--ct-alert-border-color:var(--ct-dark-border-subtle);--ct-alert-link-color:var(--ct-dark-text-emphasis)}.alert-purple{--ct-alert-color:var(--ct-purple-text-emphasis);--ct-alert-bg:var(--ct-purple-bg-subtle);--ct-alert-border-color:var(--ct-purple-border-subtle);--ct-alert-link-color:var(--ct-purple-text-emphasis)}.alert-pink{--ct-alert-color:var(--ct-pink-text-emphasis);--ct-alert-bg:var(--ct-pink-bg-subtle);--ct-alert-border-color:var(--ct-pink-border-subtle);--ct-alert-link-color:var(--ct-pink-text-emphasis)}@-webkit-keyframes progress-bar-stripes{0%{background-position-x:1rem}}@keyframes progress-bar-stripes{0%{background-position-x:1rem}}.progress,.progress-stacked{--ct-progress-height:1rem;--ct-progress-font-size:0.65625rem;--ct-progress-bg:var(--ct-body-bg);--ct-progress-border-radius:var(--ct-border-radius);--ct-progress-box-shadow:var(--ct-box-shadow-inset);--ct-progress-bar-color:#fff;--ct-progress-bar-bg:#4254ba;--ct-progress-bar-transition:width 0.6s ease;display:-webkit-box;display:-ms-flexbox;display:flex;height:var(--ct-progress-height);overflow:hidden;font-size:var(--ct-progress-font-size);background-color:var(--ct-progress-bg);border-radius:var(--ct-progress-border-radius)}.progress-bar{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;overflow:hidden;color:var(--ct-progress-bar-color);text-align:center;white-space:nowrap;background-color:var(--ct-progress-bar-bg);-webkit-transition:var(--ct-progress-bar-transition);transition:var(--ct-progress-bar-transition)}@media (prefers-reduced-motion:reduce){.progress-bar{-webkit-transition:none;transition:none}}.progress-bar-striped{background-image:linear-gradient(-45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-size:var(--ct-progress-height) var(--ct-progress-height)}.progress-stacked>.progress{overflow:visible}.progress-stacked>.progress>.progress-bar{width:100%}.progress-bar-animated{-webkit-animation:1s linear infinite progress-bar-stripes;animation:1s linear infinite progress-bar-stripes}@media (prefers-reduced-motion:reduce){.progress-bar-animated{-webkit-animation:none;animation:none}}.list-group{--ct-list-group-color:var(--ct-tertiary-color);--ct-list-group-bg:var(--ct-secondary-bg);--ct-list-group-border-color:var(--ct-border-color);--ct-list-group-border-width:var(--ct-border-width);--ct-list-group-border-radius:var(--ct-border-radius);--ct-list-group-item-padding-x:1rem;--ct-list-group-item-padding-y:0.625rem;--ct-list-group-action-color:var(--ct-secondary-color);--ct-list-group-action-hover-color:var(--ct-body-color);--ct-list-group-action-hover-bg:var(--ct-tertiary-bg);--ct-list-group-action-active-color:var(--ct-body-color);--ct-list-group-action-active-bg:var(--ct-secondary-bg);--ct-list-group-disabled-color:var(--ct-secondary-color);--ct-list-group-disabled-bg:var(--ct-tertiary-bg);--ct-list-group-active-color:#fff;--ct-list-group-active-bg:#4254ba;--ct-list-group-active-border-color:#4254ba;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;padding-right:0;margin-bottom:0;border-radius:var(--ct-list-group-border-radius)}.list-group-numbered{list-style-type:none;counter-reset:section}.list-group-numbered>.list-group-item::before{content:counters(section, ".") ". ";counter-increment:section}.list-group-item-action{width:100%;color:var(--ct-list-group-action-color);text-align:inherit}.list-group-item-action:focus,.list-group-item-action:hover{z-index:1;color:var(--ct-list-group-action-hover-color);text-decoration:none;background-color:var(--ct-list-group-action-hover-bg)}.list-group-item-action:active{color:var(--ct-list-group-action-active-color);background-color:var(--ct-list-group-action-active-bg)}.list-group-item{position:relative;display:block;padding:var(--ct-list-group-item-padding-y) var(--ct-list-group-item-padding-x);color:var(--ct-list-group-color);background-color:var(--ct-list-group-bg);border:var(--ct-list-group-border-width) solid var(--ct-list-group-border-color)}.list-group-item:first-child{border-top-right-radius:inherit;border-top-left-radius:inherit}.list-group-item:last-child{border-bottom-left-radius:inherit;border-bottom-right-radius:inherit}.list-group-item.disabled,.list-group-item:disabled{color:var(--ct-list-group-disabled-color);pointer-events:none;background-color:var(--ct-list-group-disabled-bg)}.list-group-item.active{z-index:2;color:var(--ct-list-group-active-color);background-color:var(--ct-list-group-active-bg);border-color:var(--ct-list-group-active-border-color)}.list-group-item+.list-group-item{border-top-width:0}.list-group-item+.list-group-item.active{margin-top:calc(-1 * var(--ct-list-group-border-width));border-top-width:var(--ct-list-group-border-width)}.list-group-horizontal{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.list-group-horizontal>.list-group-item:first-child:not(:last-child){border-bottom-right-radius:var(--ct-list-group-border-radius);border-top-left-radius:0}.list-group-horizontal>.list-group-item:last-child:not(:first-child){border-top-left-radius:var(--ct-list-group-border-radius);border-bottom-right-radius:0}.list-group-horizontal>.list-group-item.active{margin-top:0}.list-group-horizontal>.list-group-item+.list-group-item{border-top-width:var(--ct-list-group-border-width);border-right-width:0}.list-group-horizontal>.list-group-item+.list-group-item.active{margin-right:calc(-1 * var(--ct-list-group-border-width));border-right-width:var(--ct-list-group-border-width)}@media (min-width:576px){.list-group-horizontal-sm{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.list-group-horizontal-sm>.list-group-item:first-child:not(:last-child){border-bottom-right-radius:var(--ct-list-group-border-radius);border-top-left-radius:0}.list-group-horizontal-sm>.list-group-item:last-child:not(:first-child){border-top-left-radius:var(--ct-list-group-border-radius);border-bottom-right-radius:0}.list-group-horizontal-sm>.list-group-item.active{margin-top:0}.list-group-horizontal-sm>.list-group-item+.list-group-item{border-top-width:var(--ct-list-group-border-width);border-right-width:0}.list-group-horizontal-sm>.list-group-item+.list-group-item.active{margin-right:calc(-1 * var(--ct-list-group-border-width));border-right-width:var(--ct-list-group-border-width)}}@media (min-width:768px){.list-group-horizontal-md{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.list-group-horizontal-md>.list-group-item:first-child:not(:last-child){border-bottom-right-radius:var(--ct-list-group-border-radius);border-top-left-radius:0}.list-group-horizontal-md>.list-group-item:last-child:not(:first-child){border-top-left-radius:var(--ct-list-group-border-radius);border-bottom-right-radius:0}.list-group-horizontal-md>.list-group-item.active{margin-top:0}.list-group-horizontal-md>.list-group-item+.list-group-item{border-top-width:var(--ct-list-group-border-width);border-right-width:0}.list-group-horizontal-md>.list-group-item+.list-group-item.active{margin-right:calc(-1 * var(--ct-list-group-border-width));border-right-width:var(--ct-list-group-border-width)}}@media (min-width:992px){.list-group-horizontal-lg{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.list-group-horizontal-lg>.list-group-item:first-child:not(:last-child){border-bottom-right-radius:var(--ct-list-group-border-radius);border-top-left-radius:0}.list-group-horizontal-lg>.list-group-item:last-child:not(:first-child){border-top-left-radius:var(--ct-list-group-border-radius);border-bottom-right-radius:0}.list-group-horizontal-lg>.list-group-item.active{margin-top:0}.list-group-horizontal-lg>.list-group-item+.list-group-item{border-top-width:var(--ct-list-group-border-width);border-right-width:0}.list-group-horizontal-lg>.list-group-item+.list-group-item.active{margin-right:calc(-1 * var(--ct-list-group-border-width));border-right-width:var(--ct-list-group-border-width)}}@media (min-width:1200px){.list-group-horizontal-xl{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.list-group-horizontal-xl>.list-group-item:first-child:not(:last-child){border-bottom-right-radius:var(--ct-list-group-border-radius);border-top-left-radius:0}.list-group-horizontal-xl>.list-group-item:last-child:not(:first-child){border-top-left-radius:var(--ct-list-group-border-radius);border-bottom-right-radius:0}.list-group-horizontal-xl>.list-group-item.active{margin-top:0}.list-group-horizontal-xl>.list-group-item+.list-group-item{border-top-width:var(--ct-list-group-border-width);border-right-width:0}.list-group-horizontal-xl>.list-group-item+.list-group-item.active{margin-right:calc(-1 * var(--ct-list-group-border-width));border-right-width:var(--ct-list-group-border-width)}}@media (min-width:1400px){.list-group-horizontal-xxl{-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row}.list-group-horizontal-xxl>.list-group-item:first-child:not(:last-child){border-bottom-right-radius:var(--ct-list-group-border-radius);border-top-left-radius:0}.list-group-horizontal-xxl>.list-group-item:last-child:not(:first-child){border-top-left-radius:var(--ct-list-group-border-radius);border-bottom-right-radius:0}.list-group-horizontal-xxl>.list-group-item.active{margin-top:0}.list-group-horizontal-xxl>.list-group-item+.list-group-item{border-top-width:var(--ct-list-group-border-width);border-right-width:0}.list-group-horizontal-xxl>.list-group-item+.list-group-item.active{margin-right:calc(-1 * var(--ct-list-group-border-width));border-right-width:var(--ct-list-group-border-width)}}.list-group-flush{border-radius:0}.list-group-flush>.list-group-item{border-width:0 0 var(--ct-list-group-border-width)}.list-group-flush>.list-group-item:last-child{border-bottom-width:0}.list-group-item-primary{--ct-list-group-color:var(--ct-primary-text-emphasis);--ct-list-group-bg:var(--ct-primary-bg-subtle);--ct-list-group-border-color:var(--ct-primary-border-subtle);--ct-list-group-action-hover-color:var(--ct-emphasis-color);--ct-list-group-action-hover-bg:var(--ct-primary-border-subtle);--ct-list-group-action-active-color:var(--ct-emphasis-color);--ct-list-group-action-active-bg:var(--ct-primary-border-subtle);--ct-list-group-active-color:var(--ct-primary-bg-subtle);--ct-list-group-active-bg:var(--ct-primary-text-emphasis);--ct-list-group-active-border-color:var(--ct-primary-text-emphasis)}.list-group-item-secondary{--ct-list-group-color:var(--ct-secondary-text-emphasis);--ct-list-group-bg:var(--ct-secondary-bg-subtle);--ct-list-group-border-color:var(--ct-secondary-border-subtle);--ct-list-group-action-hover-color:var(--ct-emphasis-color);--ct-list-group-action-hover-bg:var(--ct-secondary-border-subtle);--ct-list-group-action-active-color:var(--ct-emphasis-color);--ct-list-group-action-active-bg:var(--ct-secondary-border-subtle);--ct-list-group-active-color:var(--ct-secondary-bg-subtle);--ct-list-group-active-bg:var(--ct-secondary-text-emphasis);--ct-list-group-active-border-color:var(--ct-secondary-text-emphasis)}.list-group-item-success{--ct-list-group-color:var(--ct-success-text-emphasis);--ct-list-group-bg:var(--ct-success-bg-subtle);--ct-list-group-border-color:var(--ct-success-border-subtle);--ct-list-group-action-hover-color:var(--ct-emphasis-color);--ct-list-group-action-hover-bg:var(--ct-success-border-subtle);--ct-list-group-action-active-color:var(--ct-emphasis-color);--ct-list-group-action-active-bg:var(--ct-success-border-subtle);--ct-list-group-active-color:var(--ct-success-bg-subtle);--ct-list-group-active-bg:var(--ct-success-text-emphasis);--ct-list-group-active-border-color:var(--ct-success-text-emphasis)}.list-group-item-info{--ct-list-group-color:var(--ct-info-text-emphasis);--ct-list-group-bg:var(--ct-info-bg-subtle);--ct-list-group-border-color:var(--ct-info-border-subtle);--ct-list-group-action-hover-color:var(--ct-emphasis-color);--ct-list-group-action-hover-bg:var(--ct-info-border-subtle);--ct-list-group-action-active-color:var(--ct-emphasis-color);--ct-list-group-action-active-bg:var(--ct-info-border-subtle);--ct-list-group-active-color:var(--ct-info-bg-subtle);--ct-list-group-active-bg:var(--ct-info-text-emphasis);--ct-list-group-active-border-color:var(--ct-info-text-emphasis)}.list-group-item-warning{--ct-list-group-color:var(--ct-warning-text-emphasis);--ct-list-group-bg:var(--ct-warning-bg-subtle);--ct-list-group-border-color:var(--ct-warning-border-subtle);--ct-list-group-action-hover-color:var(--ct-emphasis-color);--ct-list-group-action-hover-bg:var(--ct-warning-border-subtle);--ct-list-group-action-active-color:var(--ct-emphasis-color);--ct-list-group-action-active-bg:var(--ct-warning-border-subtle);--ct-list-group-active-color:var(--ct-warning-bg-subtle);--ct-list-group-active-bg:var(--ct-warning-text-emphasis);--ct-list-group-active-border-color:var(--ct-warning-text-emphasis)}.list-group-item-danger{--ct-list-group-color:var(--ct-danger-text-emphasis);--ct-list-group-bg:var(--ct-danger-bg-subtle);--ct-list-group-border-color:var(--ct-danger-border-subtle);--ct-list-group-action-hover-color:var(--ct-emphasis-color);--ct-list-group-action-hover-bg:var(--ct-danger-border-subtle);--ct-list-group-action-active-color:var(--ct-emphasis-color);--ct-list-group-action-active-bg:var(--ct-danger-border-subtle);--ct-list-group-active-color:var(--ct-danger-bg-subtle);--ct-list-group-active-bg:var(--ct-danger-text-emphasis);--ct-list-group-active-border-color:var(--ct-danger-text-emphasis)}.list-group-item-light{--ct-list-group-color:var(--ct-light-text-emphasis);--ct-list-group-bg:var(--ct-light-bg-subtle);--ct-list-group-border-color:var(--ct-light-border-subtle);--ct-list-group-action-hover-color:var(--ct-emphasis-color);--ct-list-group-action-hover-bg:var(--ct-light-border-subtle);--ct-list-group-action-active-color:var(--ct-emphasis-color);--ct-list-group-action-active-bg:var(--ct-light-border-subtle);--ct-list-group-active-color:var(--ct-light-bg-subtle);--ct-list-group-active-bg:var(--ct-light-text-emphasis);--ct-list-group-active-border-color:var(--ct-light-text-emphasis)}.list-group-item-dark{--ct-list-group-color:var(--ct-dark-text-emphasis);--ct-list-group-bg:var(--ct-dark-bg-subtle);--ct-list-group-border-color:var(--ct-dark-border-subtle);--ct-list-group-action-hover-color:var(--ct-emphasis-color);--ct-list-group-action-hover-bg:var(--ct-dark-border-subtle);--ct-list-group-action-active-color:var(--ct-emphasis-color);--ct-list-group-action-active-bg:var(--ct-dark-border-subtle);--ct-list-group-active-color:var(--ct-dark-bg-subtle);--ct-list-group-active-bg:var(--ct-dark-text-emphasis);--ct-list-group-active-border-color:var(--ct-dark-text-emphasis)}.list-group-item-purple{--ct-list-group-color:var(--ct-purple-text-emphasis);--ct-list-group-bg:var(--ct-purple-bg-subtle);--ct-list-group-border-color:var(--ct-purple-border-subtle);--ct-list-group-action-hover-color:var(--ct-emphasis-color);--ct-list-group-action-hover-bg:var(--ct-purple-border-subtle);--ct-list-group-action-active-color:var(--ct-emphasis-color);--ct-list-group-action-active-bg:var(--ct-purple-border-subtle);--ct-list-group-active-color:var(--ct-purple-bg-subtle);--ct-list-group-active-bg:var(--ct-purple-text-emphasis);--ct-list-group-active-border-color:var(--ct-purple-text-emphasis)}.list-group-item-pink{--ct-list-group-color:var(--ct-pink-text-emphasis);--ct-list-group-bg:var(--ct-pink-bg-subtle);--ct-list-group-border-color:var(--ct-pink-border-subtle);--ct-list-group-action-hover-color:var(--ct-emphasis-color);--ct-list-group-action-hover-bg:var(--ct-pink-border-subtle);--ct-list-group-action-active-color:var(--ct-emphasis-color);--ct-list-group-action-active-bg:var(--ct-pink-border-subtle);--ct-list-group-active-color:var(--ct-pink-bg-subtle);--ct-list-group-active-bg:var(--ct-pink-text-emphasis);--ct-list-group-active-border-color:var(--ct-pink-text-emphasis)}.btn-close{--ct-btn-close-color:var(--ct-secondary-color);--ct-btn-close-bg:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='var%28--ct-secondary-color%29'%3e%3cpath d='M.293.293a1 1 0 0 1 1.414 0L8 6.586 14.293.293a1 1 0 1 1 1.414 1.414L9.414 8l6.293 6.293a1 1 0 0 1-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 0 1-1.414-1.414L6.586 8 .293 1.707a1 1 0 0 1 0-1.414z'/%3e%3c/svg%3e");--ct-btn-close-opacity:0.5;--ct-btn-close-hover-opacity:0.8;--ct-btn-close-focus-shadow:none;--ct-btn-close-focus-opacity:1;--ct-btn-close-disabled-opacity:0.25;--ct-btn-close-white-filter:invert(1) grayscale(100%) brightness(200%);-webkit-box-sizing:content-box;box-sizing:content-box;width:1em;height:1em;padding:.25em .25em;color:var(--ct-btn-close-color);background:transparent var(--ct-btn-close-bg) center/1em auto no-repeat;border:0;border-radius:.15rem;opacity:var(--ct-btn-close-opacity)}.btn-close:hover{color:var(--ct-btn-close-color);text-decoration:none;opacity:var(--ct-btn-close-hover-opacity)}.btn-close:focus{outline:0;-webkit-box-shadow:var(--ct-btn-close-focus-shadow);box-shadow:var(--ct-btn-close-focus-shadow);opacity:var(--ct-btn-close-focus-opacity)}.btn-close.disabled,.btn-close:disabled{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;opacity:var(--ct-btn-close-disabled-opacity)}.btn-close-white{-webkit-filter:var(--ct-btn-close-white-filter);filter:var(--ct-btn-close-white-filter)}[data-bs-theme=dark] .btn-close{-webkit-filter:var(--ct-btn-close-white-filter);filter:var(--ct-btn-close-white-filter)}.toast{--ct-toast-zindex:1090;--ct-toast-padding-x:0.75rem;--ct-toast-padding-y:0.5rem;--ct-toast-spacing:0.6rem;--ct-toast-max-width:350px;--ct-toast-font-size:0.875rem;--ct-toast-bg:var(--ct-secondary-bg);--ct-toast-border-width:var(--ct-border-width);--ct-toast-border-color:var(--ct-border-color);--ct-toast-border-radius:var(--ct-border-radius);--ct-toast-box-shadow:var(--ct-box-shadow);--ct-toast-header-color:var(--ct-secondary-color);--ct-toast-header-bg:rgba(var(--ct-body-bg-rgb), 0.85);--ct-toast-header-border-color:var(--ct-border-color);width:var(--ct-toast-max-width);max-width:100%;font-size:var(--ct-toast-font-size);color:var(--ct-toast-color);pointer-events:auto;background-color:var(--ct-toast-bg);background-clip:padding-box;border:var(--ct-toast-border-width) solid var(--ct-toast-border-color);-webkit-box-shadow:var(--ct-toast-box-shadow);box-shadow:var(--ct-toast-box-shadow);border-radius:var(--ct-toast-border-radius)}.toast.showing{opacity:0}.toast:not(.show){display:none}.toast-container{--ct-toast-zindex:1090;position:absolute;z-index:var(--ct-toast-zindex);width:-webkit-max-content;width:-moz-max-content;width:max-content;max-width:100%;pointer-events:none}.toast-container>:not(:last-child){margin-bottom:var(--ct-toast-spacing)}.toast-header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding:var(--ct-toast-padding-y) var(--ct-toast-padding-x);color:var(--ct-toast-header-color);background-color:var(--ct-toast-header-bg);background-clip:padding-box;border-bottom:var(--ct-toast-border-width) solid var(--ct-toast-header-border-color);border-top-right-radius:calc(var(--ct-toast-border-radius) - var(--ct-toast-border-width));border-top-left-radius:calc(var(--ct-toast-border-radius) - var(--ct-toast-border-width))}.toast-header .btn-close{margin-left:calc(-.5 * var(--ct-toast-padding-x));margin-right:var(--ct-toast-padding-x)}.toast-body{padding:var(--ct-toast-padding-x);word-wrap:break-word}.modal{--ct-modal-zindex:1055;--ct-modal-width:500px;--ct-modal-padding:0.75rem;--ct-modal-margin:0.5rem;--ct-modal-bg:var(--ct-secondary-bg);--ct-modal-border-color:transparent;--ct-modal-border-width:var(--ct-border-width);--ct-modal-border-radius:var(--ct-border-radius-sm);--ct-modal-box-shadow:0 0.125rem 0.25rem rgba(var(--ct-body-color-rgb), 0.15);--ct-modal-inner-border-radius:calc(var(--ct-border-radius-sm) - (var(--ct-border-width)));--ct-modal-header-padding-x:0.75rem;--ct-modal-header-padding-y:0.75rem;--ct-modal-header-padding:0.75rem 0.75rem;--ct-modal-header-border-color:var(--ct-border-color);--ct-modal-header-border-width:var(--ct-border-width);--ct-modal-title-line-height:1.5;--ct-modal-footer-gap:0.5rem;--ct-modal-footer-border-color:var(--ct-border-color);--ct-modal-footer-border-width:var(--ct-border-width);position:fixed;top:0;right:0;z-index:var(--ct-modal-zindex);display:none;width:100%;height:100%;overflow-x:hidden;overflow-y:auto;outline:0}.modal-dialog{position:relative;width:auto;margin:var(--ct-modal-margin);pointer-events:none}.modal.fade .modal-dialog{-webkit-transition:-webkit-transform .3s ease-out;transition:-webkit-transform .3s ease-out;transition:transform .3s ease-out;transition:transform .3s ease-out,-webkit-transform .3s ease-out;-webkit-transform:translate(0,-50px);transform:translate(0,-50px)}@media (prefers-reduced-motion:reduce){.modal.fade .modal-dialog{-webkit-transition:none;transition:none}}.modal.show .modal-dialog{-webkit-transform:none;transform:none}.modal.modal-static .modal-dialog{-webkit-transform:scale(1.02);transform:scale(1.02)}.modal-dialog-scrollable{height:calc(100% - var(--ct-modal-margin) * 2)}.modal-dialog-scrollable .modal-content{max-height:100%;overflow:hidden}.modal-dialog-scrollable .modal-body{overflow-y:auto}.modal-dialog-centered{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;min-height:calc(100% - var(--ct-modal-margin) * 2)}.modal-content{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;width:100%;color:var(--ct-modal-color);pointer-events:auto;background-color:var(--ct-modal-bg);background-clip:padding-box;border:var(--ct-modal-border-width) solid var(--ct-modal-border-color);border-radius:var(--ct-modal-border-radius);outline:0}.modal-backdrop{--ct-backdrop-zindex:1050;--ct-backdrop-bg:var(--ct-emphasis-color);--ct-backdrop-opacity:0.75;position:fixed;top:0;right:0;z-index:var(--ct-backdrop-zindex);width:100vw;height:100vh;background-color:var(--ct-backdrop-bg)}.modal-backdrop.fade{opacity:0}.modal-backdrop.show{opacity:var(--ct-backdrop-opacity)}.modal-header{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-negative:0;flex-shrink:0;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;padding:var(--ct-modal-header-padding);border-bottom:var(--ct-modal-header-border-width) solid var(--ct-modal-header-border-color);border-top-right-radius:var(--ct-modal-inner-border-radius);border-top-left-radius:var(--ct-modal-inner-border-radius)}.modal-header .btn-close{padding:calc(var(--ct-modal-header-padding-y) * .5) calc(var(--ct-modal-header-padding-x) * .5);margin:calc(-.5 * var(--ct-modal-header-padding-y)) auto calc(-.5 * var(--ct-modal-header-padding-y)) calc(-.5 * var(--ct-modal-header-padding-x))}.modal-title{margin-bottom:0;line-height:var(--ct-modal-title-line-height)}.modal-body{position:relative;-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto;padding:var(--ct-modal-padding)}.modal-footer{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-negative:0;flex-shrink:0;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;padding:calc(var(--ct-modal-padding) - var(--ct-modal-footer-gap) * .5);background-color:var(--ct-modal-footer-bg);border-top:var(--ct-modal-footer-border-width) solid var(--ct-modal-footer-border-color);border-bottom-left-radius:var(--ct-modal-inner-border-radius);border-bottom-right-radius:var(--ct-modal-inner-border-radius)}.modal-footer>*{margin:calc(var(--ct-modal-footer-gap) * .5)}@media (min-width:576px){.modal{--ct-modal-margin:1.75rem;--ct-modal-box-shadow:var(--ct-box-shadow)}.modal-dialog{max-width:var(--ct-modal-width);margin-left:auto;margin-right:auto}.modal-sm{--ct-modal-width:300px}}@media (min-width:992px){.modal-lg,.modal-xl{--ct-modal-width:800px}}@media (min-width:1200px){.modal-xl{--ct-modal-width:1140px}}.modal-fullscreen{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen .modal-footer,.modal-fullscreen .modal-header{border-radius:0}.modal-fullscreen .modal-body{overflow-y:auto}@media (max-width:575.98px){.modal-fullscreen-sm-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-sm-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-sm-down .modal-footer,.modal-fullscreen-sm-down .modal-header{border-radius:0}.modal-fullscreen-sm-down .modal-body{overflow-y:auto}}@media (max-width:767.98px){.modal-fullscreen-md-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-md-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-md-down .modal-footer,.modal-fullscreen-md-down .modal-header{border-radius:0}.modal-fullscreen-md-down .modal-body{overflow-y:auto}}@media (max-width:991.98px){.modal-fullscreen-lg-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-lg-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-lg-down .modal-footer,.modal-fullscreen-lg-down .modal-header{border-radius:0}.modal-fullscreen-lg-down .modal-body{overflow-y:auto}}@media (max-width:1199.98px){.modal-fullscreen-xl-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-xl-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-xl-down .modal-footer,.modal-fullscreen-xl-down .modal-header{border-radius:0}.modal-fullscreen-xl-down .modal-body{overflow-y:auto}}@media (max-width:1399.98px){.modal-fullscreen-xxl-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-xxl-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-xxl-down .modal-footer,.modal-fullscreen-xxl-down .modal-header{border-radius:0}.modal-fullscreen-xxl-down .modal-body{overflow-y:auto}}.tooltip{--ct-tooltip-zindex:1080;--ct-tooltip-max-width:200px;--ct-tooltip-padding-x:0.625rem;--ct-tooltip-padding-y:0.3125rem;--ct-tooltip-font-size:0.85rem;--ct-tooltip-color:var(--ct-body-bg);--ct-tooltip-bg:var(--ct-body-color);--ct-tooltip-border-radius:var(--ct-border-radius);--ct-tooltip-opacity:1;--ct-tooltip-arrow-width:0.8rem;--ct-tooltip-arrow-height:0.4rem;z-index:var(--ct-tooltip-zindex);display:block;margin:var(--ct-tooltip-margin);font-family:var(--ct-font-sans-serif);font-style:normal;font-weight:400;line-height:1.5;text-align:right;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;white-space:normal;word-spacing:normal;line-break:auto;font-size:var(--ct-tooltip-font-size);word-wrap:break-word;opacity:0}.tooltip.show{opacity:var(--ct-tooltip-opacity)}.tooltip .tooltip-arrow{display:block;width:var(--ct-tooltip-arrow-width);height:var(--ct-tooltip-arrow-height)}.tooltip .tooltip-arrow::before{position:absolute;content:"";border-color:transparent;border-style:solid}.bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow,.bs-tooltip-top .tooltip-arrow{bottom:calc(-1 * var(--ct-tooltip-arrow-height))}.bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow::before,.bs-tooltip-top .tooltip-arrow::before{top:-1px;border-width:var(--ct-tooltip-arrow-height) calc(var(--ct-tooltip-arrow-width) * .5) 0;border-top-color:var(--ct-tooltip-bg)}.bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow,.bs-tooltip-end .tooltip-arrow{left:calc(-1 * var(--ct-tooltip-arrow-height));width:var(--ct-tooltip-arrow-height);height:var(--ct-tooltip-arrow-width)}.bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow::before,.bs-tooltip-end .tooltip-arrow::before{right:-1px;border-width:calc(var(--ct-tooltip-arrow-width) * .5) var(--ct-tooltip-arrow-height) calc(var(--ct-tooltip-arrow-width) * .5) 0;border-right-color:var(--ct-tooltip-bg)}.bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow,.bs-tooltip-bottom .tooltip-arrow{top:calc(-1 * var(--ct-tooltip-arrow-height))}.bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow::before,.bs-tooltip-bottom .tooltip-arrow::before{bottom:-1px;border-width:0 calc(var(--ct-tooltip-arrow-width) * .5) var(--ct-tooltip-arrow-height);border-bottom-color:var(--ct-tooltip-bg)}.bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow,.bs-tooltip-start .tooltip-arrow{right:calc(-1 * var(--ct-tooltip-arrow-height));width:var(--ct-tooltip-arrow-height);height:var(--ct-tooltip-arrow-width)}.bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow::before,.bs-tooltip-start .tooltip-arrow::before{left:-1px;border-width:calc(var(--ct-tooltip-arrow-width) * .5) 0 calc(var(--ct-tooltip-arrow-width) * .5) var(--ct-tooltip-arrow-height);border-left-color:var(--ct-tooltip-bg)}.tooltip-inner{max-width:var(--ct-tooltip-max-width);padding:var(--ct-tooltip-padding-y) var(--ct-tooltip-padding-x);color:var(--ct-tooltip-color);text-align:center;background-color:var(--ct-tooltip-bg);border-radius:var(--ct-tooltip-border-radius)}.popover{--ct-popover-zindex:1070;--ct-popover-max-width:276px;--ct-popover-font-size:0.85rem;--ct-popover-bg:var(--ct-secondary-bg);--ct-popover-border-width:var(--ct-border-width);--ct-popover-border-color:transparent;--ct-popover-border-radius:var(--ct-border-radius);--ct-popover-inner-border-radius:calc(var(--ct-border-radius) - var(--ct-border-width));--ct-popover-box-shadow:var(--ct-box-shadow-lg);--ct-popover-header-padding-x:0.8rem;--ct-popover-header-padding-y:0.7rem;--ct-popover-header-font-size:0.875rem;--ct-popover-header-color:inherit;--ct-popover-header-bg:var(--ct-tertiary-bg);--ct-popover-body-padding-x:0.75rem;--ct-popover-body-padding-y:0.5rem;--ct-popover-body-color:var(--ct-body-color);--ct-popover-arrow-width:1rem;--ct-popover-arrow-height:0.5rem;--ct-popover-arrow-border:var(--ct-popover-border-color);z-index:var(--ct-popover-zindex);display:block;max-width:var(--ct-popover-max-width);font-family:var(--ct-font-sans-serif);font-style:normal;font-weight:400;line-height:1.5;text-align:right;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;white-space:normal;word-spacing:normal;line-break:auto;font-size:var(--ct-popover-font-size);word-wrap:break-word;background-color:var(--ct-popover-bg);background-clip:padding-box;border:var(--ct-popover-border-width) solid var(--ct-popover-border-color);border-radius:var(--ct-popover-border-radius)}.popover .popover-arrow{display:block;width:var(--ct-popover-arrow-width);height:var(--ct-popover-arrow-height)}.popover .popover-arrow::after,.popover .popover-arrow::before{position:absolute;display:block;content:"";border-color:transparent;border-style:solid;border-width:0}.bs-popover-auto[data-popper-placement^=top]>.popover-arrow,.bs-popover-top>.popover-arrow{bottom:calc(-1 * (var(--ct-popover-arrow-height)) - var(--ct-popover-border-width))}.bs-popover-auto[data-popper-placement^=top]>.popover-arrow::after,.bs-popover-auto[data-popper-placement^=top]>.popover-arrow::before,.bs-popover-top>.popover-arrow::after,.bs-popover-top>.popover-arrow::before{border-width:var(--ct-popover-arrow-height) calc(var(--ct-popover-arrow-width) * .5) 0}.bs-popover-auto[data-popper-placement^=top]>.popover-arrow::before,.bs-popover-top>.popover-arrow::before{bottom:0;border-top-color:var(--ct-popover-arrow-border)}.bs-popover-auto[data-popper-placement^=top]>.popover-arrow::after,.bs-popover-top>.popover-arrow::after{bottom:var(--ct-popover-border-width);border-top-color:var(--ct-popover-bg)}.bs-popover-auto[data-popper-placement^=right]>.popover-arrow,.bs-popover-end>.popover-arrow{left:calc(-1 * (var(--ct-popover-arrow-height)) - var(--ct-popover-border-width));width:var(--ct-popover-arrow-height);height:var(--ct-popover-arrow-width)}.bs-popover-auto[data-popper-placement^=right]>.popover-arrow::after,.bs-popover-auto[data-popper-placement^=right]>.popover-arrow::before,.bs-popover-end>.popover-arrow::after,.bs-popover-end>.popover-arrow::before{border-width:calc(var(--ct-popover-arrow-width) * .5) var(--ct-popover-arrow-height) calc(var(--ct-popover-arrow-width) * .5) 0}.bs-popover-auto[data-popper-placement^=right]>.popover-arrow::before,.bs-popover-end>.popover-arrow::before{left:0;border-right-color:var(--ct-popover-arrow-border)}.bs-popover-auto[data-popper-placement^=right]>.popover-arrow::after,.bs-popover-end>.popover-arrow::after{left:var(--ct-popover-border-width);border-right-color:var(--ct-popover-bg)}.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow,.bs-popover-bottom>.popover-arrow{top:calc(-1 * (var(--ct-popover-arrow-height)) - var(--ct-popover-border-width))}.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow::after,.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow::before,.bs-popover-bottom>.popover-arrow::after,.bs-popover-bottom>.popover-arrow::before{border-width:0 calc(var(--ct-popover-arrow-width) * .5) var(--ct-popover-arrow-height)}.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow::before,.bs-popover-bottom>.popover-arrow::before{top:0;border-bottom-color:var(--ct-popover-arrow-border)}.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow::after,.bs-popover-bottom>.popover-arrow::after{top:var(--ct-popover-border-width);border-bottom-color:var(--ct-popover-bg)}.bs-popover-auto[data-popper-placement^=bottom] .popover-header::before,.bs-popover-bottom .popover-header::before{position:absolute;top:0;right:50%;display:block;width:var(--ct-popover-arrow-width);margin-right:calc(-.5 * var(--ct-popover-arrow-width));content:"";border-bottom:var(--ct-popover-border-width) solid var(--ct-popover-header-bg)}.bs-popover-auto[data-popper-placement^=left]>.popover-arrow,.bs-popover-start>.popover-arrow{right:calc(-1 * (var(--ct-popover-arrow-height)) - var(--ct-popover-border-width));width:var(--ct-popover-arrow-height);height:var(--ct-popover-arrow-width)}.bs-popover-auto[data-popper-placement^=left]>.popover-arrow::after,.bs-popover-auto[data-popper-placement^=left]>.popover-arrow::before,.bs-popover-start>.popover-arrow::after,.bs-popover-start>.popover-arrow::before{border-width:calc(var(--ct-popover-arrow-width) * .5) 0 calc(var(--ct-popover-arrow-width) * .5) var(--ct-popover-arrow-height)}.bs-popover-auto[data-popper-placement^=left]>.popover-arrow::before,.bs-popover-start>.popover-arrow::before{right:0;border-left-color:var(--ct-popover-arrow-border)}.bs-popover-auto[data-popper-placement^=left]>.popover-arrow::after,.bs-popover-start>.popover-arrow::after{right:var(--ct-popover-border-width);border-left-color:var(--ct-popover-bg)}.popover-header{padding:var(--ct-popover-header-padding-y) var(--ct-popover-header-padding-x);margin-bottom:0;font-size:var(--ct-popover-header-font-size);color:var(--ct-popover-header-color);background-color:var(--ct-popover-header-bg);border-bottom:var(--ct-popover-border-width) solid var(--ct-popover-border-color);border-top-right-radius:var(--ct-popover-inner-border-radius);border-top-left-radius:var(--ct-popover-inner-border-radius)}.popover-header:empty{display:none}.popover-body{padding:var(--ct-popover-body-padding-y) var(--ct-popover-body-padding-x);color:var(--ct-popover-body-color)}.carousel{position:relative}.carousel.pointer-event{-ms-touch-action:pan-y;touch-action:pan-y}.carousel-inner{position:relative;width:100%;overflow:hidden}.carousel-inner::after{display:block;clear:both;content:""}.carousel-item{position:relative;display:none;float:right;width:100%;margin-left:-100%;-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-transition:-webkit-transform .6s ease-in-out;transition:-webkit-transform .6s ease-in-out;transition:transform .6s ease-in-out;transition:transform .6s ease-in-out,-webkit-transform .6s ease-in-out}@media (prefers-reduced-motion:reduce){.carousel-item{-webkit-transition:none;transition:none}}.carousel-item-next,.carousel-item-prev,.carousel-item.active{display:block}.active.carousel-item-end,.carousel-item-next:not(.carousel-item-start){-webkit-transform:translateX(-100%);transform:translateX(-100%)}.active.carousel-item-start,.carousel-item-prev:not(.carousel-item-end){-webkit-transform:translateX(100%);transform:translateX(100%)}.carousel-fade .carousel-item{opacity:0;-webkit-transition-property:opacity;transition-property:opacity;-webkit-transform:none;transform:none}.carousel-fade .carousel-item-next.carousel-item-start,.carousel-fade .carousel-item-prev.carousel-item-end,.carousel-fade .carousel-item.active{z-index:1;opacity:1}.carousel-fade .active.carousel-item-end,.carousel-fade .active.carousel-item-start{z-index:0;opacity:0;-webkit-transition:opacity 0s .6s;transition:opacity 0s .6s}@media (prefers-reduced-motion:reduce){.carousel-fade .active.carousel-item-end,.carousel-fade .active.carousel-item-start{-webkit-transition:none;transition:none}}.carousel-control-next,.carousel-control-prev{position:absolute;top:0;bottom:0;z-index:1;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;width:15%;padding:0;color:#fff;text-align:center;background:0 0;border:0;opacity:.5;-webkit-transition:opacity .15s ease;transition:opacity .15s ease}@media (prefers-reduced-motion:reduce){.carousel-control-next,.carousel-control-prev{-webkit-transition:none;transition:none}}.carousel-control-next:focus,.carousel-control-next:hover,.carousel-control-prev:focus,.carousel-control-prev:hover{color:#fff;text-decoration:none;outline:0;opacity:.9}.carousel-control-prev{right:0}.carousel-control-next{left:0}.carousel-control-next-icon,.carousel-control-prev-icon{display:inline-block;width:2rem;height:2rem;background-repeat:no-repeat;background-position:50%;background-size:100% 100%}.carousel-control-next-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0z'/%3e%3c/svg%3e")}.carousel-control-prev-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e")}.carousel-indicators{position:absolute;left:0;bottom:0;right:0;z-index:2;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;padding:0;margin-left:15%;margin-bottom:1rem;margin-right:15%}.carousel-indicators [data-bs-target]{-webkit-box-sizing:content-box;box-sizing:content-box;-webkit-box-flex:0;-ms-flex:0 1 auto;flex:0 1 auto;width:30px;height:3px;padding:0;margin-left:3px;margin-right:3px;text-indent:-999px;cursor:pointer;background-color:#fff;background-clip:padding-box;border:0;border-top:10px solid transparent;border-bottom:10px solid transparent;opacity:.5;-webkit-transition:opacity .6s ease;transition:opacity .6s ease}@media (prefers-reduced-motion:reduce){.carousel-indicators [data-bs-target]{-webkit-transition:none;transition:none}}.carousel-indicators .active{opacity:1}.carousel-caption{position:absolute;left:15%;bottom:1.25rem;right:15%;padding-top:1.25rem;padding-bottom:1.25rem;color:#fff;text-align:center}.carousel-dark .carousel-control-next-icon,.carousel-dark .carousel-control-prev-icon{-webkit-filter:invert(1) grayscale(100);filter:invert(1) grayscale(100)}.carousel-dark .carousel-indicators [data-bs-target]{background-color:#000}.carousel-dark .carousel-caption{color:#000}[data-bs-theme=dark] .carousel .carousel-control-next-icon,[data-bs-theme=dark] .carousel .carousel-control-prev-icon,[data-bs-theme=dark].carousel .carousel-control-next-icon,[data-bs-theme=dark].carousel .carousel-control-prev-icon{-webkit-filter:invert(1) grayscale(100);filter:invert(1) grayscale(100)}[data-bs-theme=dark] .carousel .carousel-indicators [data-bs-target],[data-bs-theme=dark].carousel .carousel-indicators [data-bs-target]{background-color:#000}[data-bs-theme=dark] .carousel .carousel-caption,[data-bs-theme=dark].carousel .carousel-caption{color:#000}.spinner-border,.spinner-grow{display:inline-block;width:var(--ct-spinner-width);height:var(--ct-spinner-height);vertical-align:var(--ct-spinner-vertical-align);border-radius:50%;-webkit-animation:var(--ct-spinner-animation-speed) linear infinite var(--ct-spinner-animation-name);animation:var(--ct-spinner-animation-speed) linear infinite var(--ct-spinner-animation-name)}@-webkit-keyframes spinner-border{to{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes spinner-border{to{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}.spinner-border{--ct-spinner-width:2rem;--ct-spinner-height:2rem;--ct-spinner-vertical-align:-0.25em;--ct-spinner-border-width:0.25em;--ct-spinner-animation-speed:0.75s;--ct-spinner-animation-name:spinner-border;border:var(--ct-spinner-border-width) solid currentcolor;border-left-color:transparent}.spinner-border-sm{--ct-spinner-width:1rem;--ct-spinner-height:1rem;--ct-spinner-border-width:0.2em}@-webkit-keyframes spinner-grow{0%{-webkit-transform:scale(0);transform:scale(0)}50%{opacity:1;-webkit-transform:none;transform:none}}@keyframes spinner-grow{0%{-webkit-transform:scale(0);transform:scale(0)}50%{opacity:1;-webkit-transform:none;transform:none}}.spinner-grow{--ct-spinner-width:2rem;--ct-spinner-height:2rem;--ct-spinner-vertical-align:-0.25em;--ct-spinner-animation-speed:0.75s;--ct-spinner-animation-name:spinner-grow;background-color:currentcolor;opacity:0}.spinner-grow-sm{--ct-spinner-width:1rem;--ct-spinner-height:1rem}@media (prefers-reduced-motion:reduce){.spinner-border,.spinner-grow{--ct-spinner-animation-speed:1.5s}}.offcanvas,.offcanvas-lg,.offcanvas-md,.offcanvas-sm,.offcanvas-xl,.offcanvas-xxl{--ct-offcanvas-zindex:1045;--ct-offcanvas-width:400px;--ct-offcanvas-height:30vh;--ct-offcanvas-padding-x:0.75rem;--ct-offcanvas-padding-y:0.75rem;--ct-offcanvas-color:var(--ct-body-color);--ct-offcanvas-bg:var(--ct-secondary-bg);--ct-offcanvas-border-width:var(--ct-border-width);--ct-offcanvas-border-color:transparent;--ct-offcanvas-box-shadow:0 0.125rem 0.25rem rgba(var(--ct-body-color-rgb), 0.15);--ct-offcanvas-transition:transform 0.3s ease-in-out;--ct-offcanvas-title-line-height:1.5}@media (max-width:575.98px){.offcanvas-sm{position:fixed;bottom:0;z-index:var(--ct-offcanvas-zindex);display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;max-width:100%;color:var(--ct-offcanvas-color);visibility:hidden;background-color:var(--ct-offcanvas-bg);background-clip:padding-box;outline:0;-webkit-transition:var(--ct-offcanvas-transition);transition:var(--ct-offcanvas-transition)}}@media (max-width:575.98px) and (prefers-reduced-motion:reduce){.offcanvas-sm{-webkit-transition:none;transition:none}}@media (max-width:575.98px){.offcanvas-sm.offcanvas-start{top:0;right:0;width:var(--ct-offcanvas-width);border-left:var(--ct-offcanvas-border-width) solid var(--ct-offcanvas-border-color);-webkit-transform:translateX(100%);transform:translateX(100%)}}@media (max-width:575.98px){.offcanvas-sm.offcanvas-end{top:0;left:0;width:var(--ct-offcanvas-width);border-right:var(--ct-offcanvas-border-width) solid var(--ct-offcanvas-border-color);-webkit-transform:translateX(-100%);transform:translateX(-100%)}}@media (max-width:575.98px){.offcanvas-sm.offcanvas-top{top:0;left:0;right:0;height:var(--ct-offcanvas-height);max-height:100%;border-bottom:var(--ct-offcanvas-border-width) solid var(--ct-offcanvas-border-color);-webkit-transform:translateY(-100%);transform:translateY(-100%)}}@media (max-width:575.98px){.offcanvas-sm.offcanvas-bottom{left:0;right:0;height:var(--ct-offcanvas-height);max-height:100%;border-top:var(--ct-offcanvas-border-width) solid var(--ct-offcanvas-border-color);-webkit-transform:translateY(100%);transform:translateY(100%)}}@media (max-width:575.98px){.offcanvas-sm.show:not(.hiding),.offcanvas-sm.showing{-webkit-transform:none;transform:none}}@media (max-width:575.98px){.offcanvas-sm.hiding,.offcanvas-sm.show,.offcanvas-sm.showing{visibility:visible}}@media (min-width:576px){.offcanvas-sm{--ct-offcanvas-height:auto;--ct-offcanvas-border-width:0;background-color:transparent!important}.offcanvas-sm .offcanvas-header{display:none}.offcanvas-sm .offcanvas-body{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;padding:0;overflow-y:visible;background-color:transparent!important}}@media (max-width:767.98px){.offcanvas-md{position:fixed;bottom:0;z-index:var(--ct-offcanvas-zindex);display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;max-width:100%;color:var(--ct-offcanvas-color);visibility:hidden;background-color:var(--ct-offcanvas-bg);background-clip:padding-box;outline:0;-webkit-transition:var(--ct-offcanvas-transition);transition:var(--ct-offcanvas-transition)}}@media (max-width:767.98px) and (prefers-reduced-motion:reduce){.offcanvas-md{-webkit-transition:none;transition:none}}@media (max-width:767.98px){.offcanvas-md.offcanvas-start{top:0;right:0;width:var(--ct-offcanvas-width);border-left:var(--ct-offcanvas-border-width) solid var(--ct-offcanvas-border-color);-webkit-transform:translateX(100%);transform:translateX(100%)}}@media (max-width:767.98px){.offcanvas-md.offcanvas-end{top:0;left:0;width:var(--ct-offcanvas-width);border-right:var(--ct-offcanvas-border-width) solid var(--ct-offcanvas-border-color);-webkit-transform:translateX(-100%);transform:translateX(-100%)}}@media (max-width:767.98px){.offcanvas-md.offcanvas-top{top:0;left:0;right:0;height:var(--ct-offcanvas-height);max-height:100%;border-bottom:var(--ct-offcanvas-border-width) solid var(--ct-offcanvas-border-color);-webkit-transform:translateY(-100%);transform:translateY(-100%)}}@media (max-width:767.98px){.offcanvas-md.offcanvas-bottom{left:0;right:0;height:var(--ct-offcanvas-height);max-height:100%;border-top:var(--ct-offcanvas-border-width) solid var(--ct-offcanvas-border-color);-webkit-transform:translateY(100%);transform:translateY(100%)}}@media (max-width:767.98px){.offcanvas-md.show:not(.hiding),.offcanvas-md.showing{-webkit-transform:none;transform:none}}@media (max-width:767.98px){.offcanvas-md.hiding,.offcanvas-md.show,.offcanvas-md.showing{visibility:visible}}@media (min-width:768px){.offcanvas-md{--ct-offcanvas-height:auto;--ct-offcanvas-border-width:0;background-color:transparent!important}.offcanvas-md .offcanvas-header{display:none}.offcanvas-md .offcanvas-body{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;padding:0;overflow-y:visible;background-color:transparent!important}}@media (max-width:991.98px){.offcanvas-lg{position:fixed;bottom:0;z-index:var(--ct-offcanvas-zindex);display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;max-width:100%;color:var(--ct-offcanvas-color);visibility:hidden;background-color:var(--ct-offcanvas-bg);background-clip:padding-box;outline:0;-webkit-transition:var(--ct-offcanvas-transition);transition:var(--ct-offcanvas-transition)}}@media (max-width:991.98px) and (prefers-reduced-motion:reduce){.offcanvas-lg{-webkit-transition:none;transition:none}}@media (max-width:991.98px){.offcanvas-lg.offcanvas-start{top:0;right:0;width:var(--ct-offcanvas-width);border-left:var(--ct-offcanvas-border-width) solid var(--ct-offcanvas-border-color);-webkit-transform:translateX(100%);transform:translateX(100%)}}@media (max-width:991.98px){.offcanvas-lg.offcanvas-end{top:0;left:0;width:var(--ct-offcanvas-width);border-right:var(--ct-offcanvas-border-width) solid var(--ct-offcanvas-border-color);-webkit-transform:translateX(-100%);transform:translateX(-100%)}}@media (max-width:991.98px){.offcanvas-lg.offcanvas-top{top:0;left:0;right:0;height:var(--ct-offcanvas-height);max-height:100%;border-bottom:var(--ct-offcanvas-border-width) solid var(--ct-offcanvas-border-color);-webkit-transform:translateY(-100%);transform:translateY(-100%)}}@media (max-width:991.98px){.offcanvas-lg.offcanvas-bottom{left:0;right:0;height:var(--ct-offcanvas-height);max-height:100%;border-top:var(--ct-offcanvas-border-width) solid var(--ct-offcanvas-border-color);-webkit-transform:translateY(100%);transform:translateY(100%)}}@media (max-width:991.98px){.offcanvas-lg.show:not(.hiding),.offcanvas-lg.showing{-webkit-transform:none;transform:none}}@media (max-width:991.98px){.offcanvas-lg.hiding,.offcanvas-lg.show,.offcanvas-lg.showing{visibility:visible}}@media (min-width:992px){.offcanvas-lg{--ct-offcanvas-height:auto;--ct-offcanvas-border-width:0;background-color:transparent!important}.offcanvas-lg .offcanvas-header{display:none}.offcanvas-lg .offcanvas-body{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;padding:0;overflow-y:visible;background-color:transparent!important}}@media (max-width:1199.98px){.offcanvas-xl{position:fixed;bottom:0;z-index:var(--ct-offcanvas-zindex);display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;max-width:100%;color:var(--ct-offcanvas-color);visibility:hidden;background-color:var(--ct-offcanvas-bg);background-clip:padding-box;outline:0;-webkit-transition:var(--ct-offcanvas-transition);transition:var(--ct-offcanvas-transition)}}@media (max-width:1199.98px) and (prefers-reduced-motion:reduce){.offcanvas-xl{-webkit-transition:none;transition:none}}@media (max-width:1199.98px){.offcanvas-xl.offcanvas-start{top:0;right:0;width:var(--ct-offcanvas-width);border-left:var(--ct-offcanvas-border-width) solid var(--ct-offcanvas-border-color);-webkit-transform:translateX(100%);transform:translateX(100%)}}@media (max-width:1199.98px){.offcanvas-xl.offcanvas-end{top:0;left:0;width:var(--ct-offcanvas-width);border-right:var(--ct-offcanvas-border-width) solid var(--ct-offcanvas-border-color);-webkit-transform:translateX(-100%);transform:translateX(-100%)}}@media (max-width:1199.98px){.offcanvas-xl.offcanvas-top{top:0;left:0;right:0;height:var(--ct-offcanvas-height);max-height:100%;border-bottom:var(--ct-offcanvas-border-width) solid var(--ct-offcanvas-border-color);-webkit-transform:translateY(-100%);transform:translateY(-100%)}}@media (max-width:1199.98px){.offcanvas-xl.offcanvas-bottom{left:0;right:0;height:var(--ct-offcanvas-height);max-height:100%;border-top:var(--ct-offcanvas-border-width) solid var(--ct-offcanvas-border-color);-webkit-transform:translateY(100%);transform:translateY(100%)}}@media (max-width:1199.98px){.offcanvas-xl.show:not(.hiding),.offcanvas-xl.showing{-webkit-transform:none;transform:none}}@media (max-width:1199.98px){.offcanvas-xl.hiding,.offcanvas-xl.show,.offcanvas-xl.showing{visibility:visible}}@media (min-width:1200px){.offcanvas-xl{--ct-offcanvas-height:auto;--ct-offcanvas-border-width:0;background-color:transparent!important}.offcanvas-xl .offcanvas-header{display:none}.offcanvas-xl .offcanvas-body{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;padding:0;overflow-y:visible;background-color:transparent!important}}@media (max-width:1399.98px){.offcanvas-xxl{position:fixed;bottom:0;z-index:var(--ct-offcanvas-zindex);display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;max-width:100%;color:var(--ct-offcanvas-color);visibility:hidden;background-color:var(--ct-offcanvas-bg);background-clip:padding-box;outline:0;-webkit-transition:var(--ct-offcanvas-transition);transition:var(--ct-offcanvas-transition)}}@media (max-width:1399.98px) and (prefers-reduced-motion:reduce){.offcanvas-xxl{-webkit-transition:none;transition:none}}@media (max-width:1399.98px){.offcanvas-xxl.offcanvas-start{top:0;right:0;width:var(--ct-offcanvas-width);border-left:var(--ct-offcanvas-border-width) solid var(--ct-offcanvas-border-color);-webkit-transform:translateX(100%);transform:translateX(100%)}}@media (max-width:1399.98px){.offcanvas-xxl.offcanvas-end{top:0;left:0;width:var(--ct-offcanvas-width);border-right:var(--ct-offcanvas-border-width) solid var(--ct-offcanvas-border-color);-webkit-transform:translateX(-100%);transform:translateX(-100%)}}@media (max-width:1399.98px){.offcanvas-xxl.offcanvas-top{top:0;left:0;right:0;height:var(--ct-offcanvas-height);max-height:100%;border-bottom:var(--ct-offcanvas-border-width) solid var(--ct-offcanvas-border-color);-webkit-transform:translateY(-100%);transform:translateY(-100%)}}@media (max-width:1399.98px){.offcanvas-xxl.offcanvas-bottom{left:0;right:0;height:var(--ct-offcanvas-height);max-height:100%;border-top:var(--ct-offcanvas-border-width) solid var(--ct-offcanvas-border-color);-webkit-transform:translateY(100%);transform:translateY(100%)}}@media (max-width:1399.98px){.offcanvas-xxl.show:not(.hiding),.offcanvas-xxl.showing{-webkit-transform:none;transform:none}}@media (max-width:1399.98px){.offcanvas-xxl.hiding,.offcanvas-xxl.show,.offcanvas-xxl.showing{visibility:visible}}@media (min-width:1400px){.offcanvas-xxl{--ct-offcanvas-height:auto;--ct-offcanvas-border-width:0;background-color:transparent!important}.offcanvas-xxl .offcanvas-header{display:none}.offcanvas-xxl .offcanvas-body{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:0;-ms-flex-positive:0;flex-grow:0;padding:0;overflow-y:visible;background-color:transparent!important}}.offcanvas{position:fixed;bottom:0;z-index:var(--ct-offcanvas-zindex);display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;max-width:100%;color:var(--ct-offcanvas-color);visibility:hidden;background-color:var(--ct-offcanvas-bg);background-clip:padding-box;outline:0;-webkit-transition:var(--ct-offcanvas-transition);transition:var(--ct-offcanvas-transition)}@media (prefers-reduced-motion:reduce){.offcanvas{-webkit-transition:none;transition:none}}.offcanvas.offcanvas-start{top:0;right:0;width:var(--ct-offcanvas-width);border-left:var(--ct-offcanvas-border-width) solid var(--ct-offcanvas-border-color);-webkit-transform:translateX(100%);transform:translateX(100%)}.offcanvas.offcanvas-end{top:0;left:0;width:var(--ct-offcanvas-width);border-right:var(--ct-offcanvas-border-width) solid var(--ct-offcanvas-border-color);-webkit-transform:translateX(-100%);transform:translateX(-100%)}.offcanvas.offcanvas-top{top:0;left:0;right:0;height:var(--ct-offcanvas-height);max-height:100%;border-bottom:var(--ct-offcanvas-border-width) solid var(--ct-offcanvas-border-color);-webkit-transform:translateY(-100%);transform:translateY(-100%)}.offcanvas.offcanvas-bottom{left:0;right:0;height:var(--ct-offcanvas-height);max-height:100%;border-top:var(--ct-offcanvas-border-width) solid var(--ct-offcanvas-border-color);-webkit-transform:translateY(100%);transform:translateY(100%)}.offcanvas.show:not(.hiding),.offcanvas.showing{-webkit-transform:none;transform:none}.offcanvas.hiding,.offcanvas.show,.offcanvas.showing{visibility:visible}.offcanvas-backdrop{position:fixed;top:0;right:0;z-index:1040;width:100vw;height:100vh;background-color:var(--ct-emphasis-color)}.offcanvas-backdrop.fade{opacity:0}.offcanvas-backdrop.show{opacity:.75}.offcanvas-header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;padding:var(--ct-offcanvas-padding-y) var(--ct-offcanvas-padding-x)}.offcanvas-header .btn-close{padding:calc(var(--ct-offcanvas-padding-y) * .5) calc(var(--ct-offcanvas-padding-x) * .5);margin-top:calc(-.5 * var(--ct-offcanvas-padding-y));margin-left:calc(-.5 * var(--ct-offcanvas-padding-x));margin-bottom:calc(-.5 * var(--ct-offcanvas-padding-y))}.offcanvas-title{margin-bottom:0;line-height:var(--ct-offcanvas-title-line-height)}.offcanvas-body{-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;padding:var(--ct-offcanvas-padding-y) var(--ct-offcanvas-padding-x);overflow-y:auto}.placeholder{display:inline-block;min-height:1em;vertical-align:middle;cursor:wait;background-color:currentcolor;opacity:.5}.placeholder.btn::before{display:inline-block;content:""}.placeholder-xs{min-height:.6em}.placeholder-sm{min-height:.8em}.placeholder-lg{min-height:1.2em}.placeholder-glow .placeholder{-webkit-animation:placeholder-glow 2s ease-in-out infinite;animation:placeholder-glow 2s ease-in-out infinite}@-webkit-keyframes placeholder-glow{50%{opacity:.2}}@keyframes placeholder-glow{50%{opacity:.2}}.placeholder-wave{-webkit-mask-image:linear-gradient(130deg,#000 55%,rgba(0,0,0,.8) 75%,#000 95%);mask-image:linear-gradient(130deg,#000 55%,rgba(0,0,0,.8) 75%,#000 95%);-webkit-mask-size:200% 100%;mask-size:200% 100%;-webkit-animation:placeholder-wave 2s linear infinite;animation:placeholder-wave 2s linear infinite}@-webkit-keyframes placeholder-wave{100%{-webkit-mask-position:-200% 0;mask-position:-200% 0}}@keyframes placeholder-wave{100%{-webkit-mask-position:-200% 0;mask-position:-200% 0}}.clearfix::after{display:block;clear:both;content:""}.text-bg-primary{color:#fff!important;background-color:RGBA(66,84,186,var(--ct-bg-opacity,1))!important}.text-bg-secondary{color:#fff!important;background-color:RGBA(108,117,125,var(--ct-bg-opacity,1))!important}.text-bg-success{color:#fff!important;background-color:RGBA(23,164,151,var(--ct-bg-opacity,1))!important}.text-bg-info{color:#fff!important;background-color:RGBA(41,155,246,var(--ct-bg-opacity,1))!important}.text-bg-warning{color:#fff!important;background-color:RGBA(254,194,13,var(--ct-bg-opacity,1))!important}.text-bg-danger{color:#fff!important;background-color:RGBA(247,71,58,var(--ct-bg-opacity,1))!important}.text-bg-light{color:#212529!important;background-color:RGBA(242,242,247,var(--ct-bg-opacity,1))!important}.text-bg-dark{color:#fff!important;background-color:RGBA(73,82,107,var(--ct-bg-opacity,1))!important}.text-bg-purple{color:#fff!important;background-color:RGBA(129,90,197,var(--ct-bg-opacity,1))!important}.text-bg-pink{color:#fff!important;background-color:RGBA(255,103,155,var(--ct-bg-opacity,1))!important}.link-primary{color:RGBA(var(--ct-primary-rgb),var(--ct-link-opacity,1))!important;text-decoration-color:RGBA(var(--ct-primary-rgb),var(--ct-link-underline-opacity,1))!important}.link-primary:focus,.link-primary:hover{color:RGBA(56,71,158,var(--ct-link-opacity,1))!important;text-decoration-color:RGBA(56,71,158,var(--ct-link-underline-opacity,1))!important}.link-secondary{color:RGBA(var(--ct-secondary-rgb),var(--ct-link-opacity,1))!important;text-decoration-color:RGBA(var(--ct-secondary-rgb),var(--ct-link-underline-opacity,1))!important}.link-secondary:focus,.link-secondary:hover{color:RGBA(92,99,106,var(--ct-link-opacity,1))!important;text-decoration-color:RGBA(92,99,106,var(--ct-link-underline-opacity,1))!important}.link-success{color:RGBA(var(--ct-success-rgb),var(--ct-link-opacity,1))!important;text-decoration-color:RGBA(var(--ct-success-rgb),var(--ct-link-underline-opacity,1))!important}.link-success:focus,.link-success:hover{color:RGBA(20,139,128,var(--ct-link-opacity,1))!important;text-decoration-color:RGBA(20,139,128,var(--ct-link-underline-opacity,1))!important}.link-info{color:RGBA(var(--ct-info-rgb),var(--ct-link-opacity,1))!important;text-decoration-color:RGBA(var(--ct-info-rgb),var(--ct-link-underline-opacity,1))!important}.link-info:focus,.link-info:hover{color:RGBA(35,132,209,var(--ct-link-opacity,1))!important;text-decoration-color:RGBA(35,132,209,var(--ct-link-underline-opacity,1))!important}.link-warning{color:RGBA(var(--ct-warning-rgb),var(--ct-link-opacity,1))!important;text-decoration-color:RGBA(var(--ct-warning-rgb),var(--ct-link-underline-opacity,1))!important}.link-warning:focus,.link-warning:hover{color:RGBA(216,165,11,var(--ct-link-opacity,1))!important;text-decoration-color:RGBA(216,165,11,var(--ct-link-underline-opacity,1))!important}.link-danger{color:RGBA(var(--ct-danger-rgb),var(--ct-link-opacity,1))!important;text-decoration-color:RGBA(var(--ct-danger-rgb),var(--ct-link-underline-opacity,1))!important}.link-danger:focus,.link-danger:hover{color:RGBA(210,60,49,var(--ct-link-opacity,1))!important;text-decoration-color:RGBA(210,60,49,var(--ct-link-underline-opacity,1))!important}.link-light{color:RGBA(var(--ct-light-rgb),var(--ct-link-opacity,1))!important;text-decoration-color:RGBA(var(--ct-light-rgb),var(--ct-link-underline-opacity,1))!important}.link-light:focus,.link-light:hover{color:RGBA(244,244,248,var(--ct-link-opacity,1))!important;text-decoration-color:RGBA(244,244,248,var(--ct-link-underline-opacity,1))!important}.link-dark{color:RGBA(var(--ct-dark-rgb),var(--ct-link-opacity,1))!important;text-decoration-color:RGBA(var(--ct-dark-rgb),var(--ct-link-underline-opacity,1))!important}.link-dark:focus,.link-dark:hover{color:RGBA(62,70,91,var(--ct-link-opacity,1))!important;text-decoration-color:RGBA(62,70,91,var(--ct-link-underline-opacity,1))!important}.link-purple{color:RGBA(var(--ct-purple-rgb),var(--ct-link-opacity,1))!important;text-decoration-color:RGBA(var(--ct-purple-rgb),var(--ct-link-underline-opacity,1))!important}.link-purple:focus,.link-purple:hover{color:RGBA(110,77,167,var(--ct-link-opacity,1))!important;text-decoration-color:RGBA(110,77,167,var(--ct-link-underline-opacity,1))!important}.link-pink{color:RGBA(var(--ct-pink-rgb),var(--ct-link-opacity,1))!important;text-decoration-color:RGBA(var(--ct-pink-rgb),var(--ct-link-underline-opacity,1))!important}.link-pink:focus,.link-pink:hover{color:RGBA(217,88,132,var(--ct-link-opacity,1))!important;text-decoration-color:RGBA(217,88,132,var(--ct-link-underline-opacity,1))!important}.link-body-emphasis{color:RGBA(var(--ct-emphasis-color-rgb),var(--ct-link-opacity,1))!important;text-decoration-color:RGBA(var(--ct-emphasis-color-rgb),var(--ct-link-underline-opacity,1))!important}.link-body-emphasis:focus,.link-body-emphasis:hover{color:RGBA(var(--ct-emphasis-color-rgb),var(--ct-link-opacity,.75))!important;text-decoration-color:RGBA(var(--ct-emphasis-color-rgb),var(--ct-link-underline-opacity,.75))!important}.focus-ring:focus{outline:0;-webkit-box-shadow:var(--ct-focus-ring-x,0) var(--ct-focus-ring-y,0) var(--ct-focus-ring-blur,0) var(--ct-focus-ring-width) var(--ct-focus-ring-color);box-shadow:var(--ct-focus-ring-x,0) var(--ct-focus-ring-y,0) var(--ct-focus-ring-blur,0) var(--ct-focus-ring-width) var(--ct-focus-ring-color)}.icon-link{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;gap:.375rem;-webkit-box-align:center;-ms-flex-align:center;align-items:center;text-decoration-color:rgba(var(--ct-link-color-rgb),var(--ct-link-opacity,.5));text-underline-offset:.25em;-webkit-backface-visibility:hidden;backface-visibility:hidden}.icon-link>.bi{-ms-flex-negative:0;flex-shrink:0;width:1em;height:1em;fill:currentcolor;-webkit-transition:.2s ease-in-out transform;transition:.2s ease-in-out transform}@media (prefers-reduced-motion:reduce){.icon-link>.bi{-webkit-transition:none;transition:none}}.icon-link-hover:focus-visible>.bi,.icon-link-hover:hover>.bi{-webkit-transform:var(--ct-icon-link-transform,translate3d(-.25em,0,0));transform:var(--ct-icon-link-transform,translate3d(-.25em,0,0))}.ratio{position:relative;width:100%}.ratio::before{display:block;padding-top:var(--ct-aspect-ratio);content:""}.ratio>*{position:absolute;top:0;right:0;width:100%;height:100%}.ratio-1x1{--ct-aspect-ratio:100%}.ratio-4x3{--ct-aspect-ratio:75%}.ratio-16x9{--ct-aspect-ratio:56.25%}.ratio-21x9{--ct-aspect-ratio:42.8571428571%}.fixed-top{position:fixed;top:0;left:0;right:0;z-index:1030}.fixed-bottom{position:fixed;left:0;bottom:0;right:0;z-index:1030}.sticky-top{position:sticky;top:0;z-index:1020}.sticky-bottom{position:sticky;bottom:0;z-index:1020}@media (min-width:576px){.sticky-sm-top{position:sticky;top:0;z-index:1020}.sticky-sm-bottom{position:sticky;bottom:0;z-index:1020}}@media (min-width:768px){.sticky-md-top{position:sticky;top:0;z-index:1020}.sticky-md-bottom{position:sticky;bottom:0;z-index:1020}}@media (min-width:992px){.sticky-lg-top{position:sticky;top:0;z-index:1020}.sticky-lg-bottom{position:sticky;bottom:0;z-index:1020}}@media (min-width:1200px){.sticky-xl-top{position:sticky;top:0;z-index:1020}.sticky-xl-bottom{position:sticky;bottom:0;z-index:1020}}@media (min-width:1400px){.sticky-xxl-top{position:sticky;top:0;z-index:1020}.sticky-xxl-bottom{position:sticky;bottom:0;z-index:1020}}.hstack{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-ms-flex-item-align:stretch;align-self:stretch}.vstack{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:1;-ms-flex:1 1 auto;flex:1 1 auto;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-ms-flex-item-align:stretch;align-self:stretch}.visually-hidden,.visually-hidden-focusable:not(:focus):not(:focus-within){width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.visually-hidden-focusable:not(:focus):not(:focus-within):not(caption),.visually-hidden:not(caption){position:absolute!important}.stretched-link::after{position:absolute;top:0;left:0;bottom:0;right:0;z-index:1;content:""}.text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vr{display:inline-block;-ms-flex-item-align:stretch;align-self:stretch;width:1px;min-height:1em;background-color:currentcolor;opacity:1}.align-baseline{vertical-align:baseline!important}.align-top{vertical-align:top!important}.align-middle{vertical-align:middle!important}.align-bottom{vertical-align:bottom!important}.align-text-bottom{vertical-align:text-bottom!important}.align-text-top{vertical-align:text-top!important}.float-start{float:right!important}.float-end{float:left!important}.float-none{float:none!important}.object-fit-contain{-o-object-fit:contain!important;object-fit:contain!important}.object-fit-cover{-o-object-fit:cover!important;object-fit:cover!important}.object-fit-fill{-o-object-fit:fill!important;object-fit:fill!important}.object-fit-scale{-o-object-fit:scale-down!important;object-fit:scale-down!important}.object-fit-none{-o-object-fit:none!important;object-fit:none!important}.opacity-0{opacity:0!important}.opacity-25{opacity:.25!important}.opacity-50{opacity:.5!important}.opacity-75{opacity:.75!important}.opacity-100{opacity:1!important}.overflow-auto{overflow:auto!important}.overflow-hidden{overflow:hidden!important}.overflow-visible{overflow:visible!important}.overflow-scroll{overflow:scroll!important}.overflow-x-auto{overflow-x:auto!important}.overflow-x-hidden{overflow-x:hidden!important}.overflow-x-visible{overflow-x:visible!important}.overflow-x-scroll{overflow-x:scroll!important}.overflow-y-auto{overflow-y:auto!important}.overflow-y-hidden{overflow-y:hidden!important}.overflow-y-visible{overflow-y:visible!important}.overflow-y-scroll{overflow-y:scroll!important}.d-inline{display:inline!important}.d-inline-block{display:inline-block!important}.d-block{display:block!important}.d-grid{display:grid!important}.d-inline-grid{display:inline-grid!important}.d-table{display:table!important}.d-table-row{display:table-row!important}.d-table-cell{display:table-cell!important}.d-flex{display:-webkit-box!important;display:-ms-flexbox!important;display:flex!important}.d-inline-flex{display:-webkit-inline-box!important;display:-ms-inline-flexbox!important;display:inline-flex!important}.d-none{display:none!important}.shadow{-webkit-box-shadow:-2px 2px 3px rgba(27,23,30,.1)!important;box-shadow:-2px 2px 3px rgba(27,23,30,.1)!important}.shadow-sm{-webkit-box-shadow:0 .125rem .25rem rgba(var(--ct-body-color-rgb),.15)!important;box-shadow:0 .125rem .25rem rgba(var(--ct-body-color-rgb),.15)!important}.shadow-lg{-webkit-box-shadow:0 2px 5px 0 rgba(27,23,30,.3)!important;box-shadow:0 2px 5px 0 rgba(27,23,30,.3)!important}.shadow-none{-webkit-box-shadow:none!important;box-shadow:none!important}.focus-ring-primary{--ct-focus-ring-color:rgba(var(--ct-primary-rgb), var(--ct-focus-ring-opacity))}.focus-ring-secondary{--ct-focus-ring-color:rgba(var(--ct-secondary-rgb), var(--ct-focus-ring-opacity))}.focus-ring-success{--ct-focus-ring-color:rgba(var(--ct-success-rgb), var(--ct-focus-ring-opacity))}.focus-ring-info{--ct-focus-ring-color:rgba(var(--ct-info-rgb), var(--ct-focus-ring-opacity))}.focus-ring-warning{--ct-focus-ring-color:rgba(var(--ct-warning-rgb), var(--ct-focus-ring-opacity))}.focus-ring-danger{--ct-focus-ring-color:rgba(var(--ct-danger-rgb), var(--ct-focus-ring-opacity))}.focus-ring-light{--ct-focus-ring-color:rgba(var(--ct-light-rgb), var(--ct-focus-ring-opacity))}.focus-ring-dark{--ct-focus-ring-color:rgba(var(--ct-dark-rgb), var(--ct-focus-ring-opacity))}.focus-ring-purple{--ct-focus-ring-color:rgba(var(--ct-purple-rgb), var(--ct-focus-ring-opacity))}.focus-ring-pink{--ct-focus-ring-color:rgba(var(--ct-pink-rgb), var(--ct-focus-ring-opacity))}.position-static{position:static!important}.position-relative{position:relative!important}.position-absolute{position:absolute!important}.position-fixed{position:fixed!important}.position-sticky{position:sticky!important}.top-0{top:0!important}.top-50{top:50%!important}.top-100{top:100%!important}.bottom-0{bottom:0!important}.bottom-50{bottom:50%!important}.bottom-100{bottom:100%!important}.start-0{right:0!important}.start-50{right:50%!important}.start-100{right:100%!important}.end-0{left:0!important}.end-50{left:50%!important}.end-100{left:100%!important}.translate-middle{-webkit-transform:translate(50%,-50%)!important;transform:translate(50%,-50%)!important}.translate-middle-x{-webkit-transform:translateX(50%)!important;transform:translateX(50%)!important}.translate-middle-y{-webkit-transform:translateY(-50%)!important;transform:translateY(-50%)!important}.border{border:var(--ct-border-width) var(--ct-border-style) var(--ct-border-color)!important}.border-0{border:0!important}.border-top{border-top:var(--ct-border-width) var(--ct-border-style) var(--ct-border-color)!important}.border-top-0{border-top:0!important}.border-end{border-left:var(--ct-border-width) var(--ct-border-style) var(--ct-border-color)!important}.border-end-0{border-left:0!important}.border-bottom{border-bottom:var(--ct-border-width) var(--ct-border-style) var(--ct-border-color)!important}.border-bottom-0{border-bottom:0!important}.border-start{border-right:var(--ct-border-width) var(--ct-border-style) var(--ct-border-color)!important}.border-start-0{border-right:0!important}.border-primary{--ct-border-opacity:1;border-color:rgba(var(--ct-primary-rgb),var(--ct-border-opacity))!important}.border-secondary{--ct-border-opacity:1;border-color:rgba(var(--ct-secondary-rgb),var(--ct-border-opacity))!important}.border-success{--ct-border-opacity:1;border-color:rgba(var(--ct-success-rgb),var(--ct-border-opacity))!important}.border-info{--ct-border-opacity:1;border-color:rgba(var(--ct-info-rgb),var(--ct-border-opacity))!important}.border-warning{--ct-border-opacity:1;border-color:rgba(var(--ct-warning-rgb),var(--ct-border-opacity))!important}.border-danger{--ct-border-opacity:1;border-color:rgba(var(--ct-danger-rgb),var(--ct-border-opacity))!important}.border-light{--ct-border-opacity:1;border-color:rgba(var(--ct-light-rgb),var(--ct-border-opacity))!important}.border-dark{--ct-border-opacity:1;border-color:rgba(var(--ct-dark-rgb),var(--ct-border-opacity))!important}.border-purple{--ct-border-opacity:1;border-color:rgba(var(--ct-purple-rgb),var(--ct-border-opacity))!important}.border-pink{--ct-border-opacity:1;border-color:rgba(var(--ct-pink-rgb),var(--ct-border-opacity))!important}.border-black{--ct-border-opacity:1;border-color:rgba(var(--ct-black-rgb),var(--ct-border-opacity))!important}.border-white{--ct-border-opacity:1;border-color:rgba(var(--ct-white-rgb),var(--ct-border-opacity))!important}.border-primary-subtle{border-color:var(--ct-primary-border-subtle)!important}.border-secondary-subtle{border-color:var(--ct-secondary-border-subtle)!important}.border-success-subtle{border-color:var(--ct-success-border-subtle)!important}.border-info-subtle{border-color:var(--ct-info-border-subtle)!important}.border-warning-subtle{border-color:var(--ct-warning-border-subtle)!important}.border-danger-subtle{border-color:var(--ct-danger-border-subtle)!important}.border-light-subtle{border-color:var(--ct-light-border-subtle)!important}.border-dark-subtle{border-color:var(--ct-dark-border-subtle)!important}.border-1{border-width:1px!important}.border-2{border-width:2px!important}.border-3{border-width:3px!important}.border-4{border-width:4px!important}.border-5{border-width:5px!important}.border-opacity-10{--ct-border-opacity:0.1}.border-opacity-25{--ct-border-opacity:0.25}.border-opacity-50{--ct-border-opacity:0.5}.border-opacity-75{--ct-border-opacity:0.75}.border-opacity-100{--ct-border-opacity:1}.w-25{width:25%!important}.w-50{width:50%!important}.w-75{width:75%!important}.w-100{width:100%!important}.w-auto{width:auto!important}.mw-100{max-width:100%!important}.vw-100{width:100vw!important}.min-vw-100{min-width:100vw!important}.h-25{height:25%!important}.h-50{height:50%!important}.h-75{height:75%!important}.h-100{height:100%!important}.h-auto{height:auto!important}.mh-100{max-height:100%!important}.vh-100{height:100vh!important}.min-vh-100{min-height:100vh!important}.flex-fill{-webkit-box-flex:1!important;-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-row{-webkit-box-orient:horizontal!important;-webkit-box-direction:normal!important;-ms-flex-direction:row!important;flex-direction:row!important}.flex-column{-webkit-box-orient:vertical!important;-webkit-box-direction:normal!important;-ms-flex-direction:column!important;flex-direction:column!important}.flex-row-reverse{-webkit-box-orient:horizontal!important;-webkit-box-direction:reverse!important;-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-column-reverse{-webkit-box-orient:vertical!important;-webkit-box-direction:reverse!important;-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-grow-0{-webkit-box-flex:0!important;-ms-flex-positive:0!important;flex-grow:0!important}.flex-grow-1{-webkit-box-flex:1!important;-ms-flex-positive:1!important;flex-grow:1!important}.flex-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.flex-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.justify-content-start{-webkit-box-pack:start!important;-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-end{-webkit-box-pack:end!important;-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-center{-webkit-box-pack:center!important;-ms-flex-pack:center!important;justify-content:center!important}.justify-content-between{-webkit-box-pack:justify!important;-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.justify-content-evenly{-webkit-box-pack:space-evenly!important;-ms-flex-pack:space-evenly!important;justify-content:space-evenly!important}.align-items-start{-webkit-box-align:start!important;-ms-flex-align:start!important;align-items:flex-start!important}.align-items-end{-webkit-box-align:end!important;-ms-flex-align:end!important;align-items:flex-end!important}.align-items-center{-webkit-box-align:center!important;-ms-flex-align:center!important;align-items:center!important}.align-items-baseline{-webkit-box-align:baseline!important;-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-stretch{-webkit-box-align:stretch!important;-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.align-self-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-center{-ms-flex-item-align:center!important;align-self:center!important}.align-self-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}.order-first{-webkit-box-ordinal-group:0!important;-ms-flex-order:-1!important;order:-1!important}.order-0{-webkit-box-ordinal-group:1!important;-ms-flex-order:0!important;order:0!important}.order-1{-webkit-box-ordinal-group:2!important;-ms-flex-order:1!important;order:1!important}.order-2{-webkit-box-ordinal-group:3!important;-ms-flex-order:2!important;order:2!important}.order-3{-webkit-box-ordinal-group:4!important;-ms-flex-order:3!important;order:3!important}.order-4{-webkit-box-ordinal-group:5!important;-ms-flex-order:4!important;order:4!important}.order-5{-webkit-box-ordinal-group:6!important;-ms-flex-order:5!important;order:5!important}.order-last{-webkit-box-ordinal-group:7!important;-ms-flex-order:6!important;order:6!important}.m-0{margin:0!important}.m-1{margin:.3125rem!important}.m-2{margin:.625rem!important}.m-3{margin:1.25rem!important}.m-4{margin:1.875rem!important}.m-5{margin:3.75rem!important}.m-auto{margin:auto!important}.mx-0{margin-left:0!important;margin-right:0!important}.mx-1{margin-left:.3125rem!important;margin-right:.3125rem!important}.mx-2{margin-left:.625rem!important;margin-right:.625rem!important}.mx-3{margin-left:1.25rem!important;margin-right:1.25rem!important}.mx-4{margin-left:1.875rem!important;margin-right:1.875rem!important}.mx-5{margin-left:3.75rem!important;margin-right:3.75rem!important}.mx-auto{margin-left:auto!important;margin-right:auto!important}.my-0{margin-top:0!important;margin-bottom:0!important}.my-1{margin-top:.3125rem!important;margin-bottom:.3125rem!important}.my-2{margin-top:.625rem!important;margin-bottom:.625rem!important}.my-3{margin-top:1.25rem!important;margin-bottom:1.25rem!important}.my-4{margin-top:1.875rem!important;margin-bottom:1.875rem!important}.my-5{margin-top:3.75rem!important;margin-bottom:3.75rem!important}.my-auto{margin-top:auto!important;margin-bottom:auto!important}.mt-0{margin-top:0!important}.mt-1{margin-top:.3125rem!important}.mt-2{margin-top:.625rem!important}.mt-3{margin-top:1.25rem!important}.mt-4{margin-top:1.875rem!important}.mt-5{margin-top:3.75rem!important}.mt-auto{margin-top:auto!important}.me-0{margin-left:0!important}.me-1{margin-left:.3125rem!important}.me-2{margin-left:.625rem!important}.me-3{margin-left:1.25rem!important}.me-4{margin-left:1.875rem!important}.me-5{margin-left:3.75rem!important}.me-auto{margin-left:auto!important}.mb-0{margin-bottom:0!important}.mb-1{margin-bottom:.3125rem!important}.mb-2{margin-bottom:.625rem!important}.mb-3{margin-bottom:1.25rem!important}.mb-4{margin-bottom:1.875rem!important}.mb-5{margin-bottom:3.75rem!important}.mb-auto{margin-bottom:auto!important}.ms-0{margin-right:0!important}.ms-1{margin-right:.3125rem!important}.ms-2{margin-right:.625rem!important}.ms-3{margin-right:1.25rem!important}.ms-4{margin-right:1.875rem!important}.ms-5{margin-right:3.75rem!important}.ms-auto{margin-right:auto!important}.m-n1{margin:-.3125rem!important}.m-n2{margin:-.625rem!important}.m-n3{margin:-1.25rem!important}.m-n4{margin:-1.875rem!important}.m-n5{margin:-3.75rem!important}.mx-n1{margin-left:-.3125rem!important;margin-right:-.3125rem!important}.mx-n2{margin-left:-.625rem!important;margin-right:-.625rem!important}.mx-n3{margin-left:-1.25rem!important;margin-right:-1.25rem!important}.mx-n4{margin-left:-1.875rem!important;margin-right:-1.875rem!important}.mx-n5{margin-left:-3.75rem!important;margin-right:-3.75rem!important}.my-n1{margin-top:-.3125rem!important;margin-bottom:-.3125rem!important}.my-n2{margin-top:-.625rem!important;margin-bottom:-.625rem!important}.my-n3{margin-top:-1.25rem!important;margin-bottom:-1.25rem!important}.my-n4{margin-top:-1.875rem!important;margin-bottom:-1.875rem!important}.my-n5{margin-top:-3.75rem!important;margin-bottom:-3.75rem!important}.mt-n1{margin-top:-.3125rem!important}.mt-n2{margin-top:-.625rem!important}.mt-n3{margin-top:-1.25rem!important}.mt-n4{margin-top:-1.875rem!important}.mt-n5{margin-top:-3.75rem!important}.me-n1{margin-left:-.3125rem!important}.me-n2{margin-left:-.625rem!important}.me-n3{margin-left:-1.25rem!important}.me-n4{margin-left:-1.875rem!important}.me-n5{margin-left:-3.75rem!important}.mb-n1{margin-bottom:-.3125rem!important}.mb-n2{margin-bottom:-.625rem!important}.mb-n3{margin-bottom:-1.25rem!important}.mb-n4{margin-bottom:-1.875rem!important}.mb-n5{margin-bottom:-3.75rem!important}.ms-n1{margin-right:-.3125rem!important}.ms-n2{margin-right:-.625rem!important}.ms-n3{margin-right:-1.25rem!important}.ms-n4{margin-right:-1.875rem!important}.ms-n5{margin-right:-3.75rem!important}.p-0{padding:0!important}.p-1{padding:.3125rem!important}.p-2{padding:.625rem!important}.p-3{padding:1.25rem!important}.p-4{padding:1.875rem!important}.p-5{padding:3.75rem!important}.px-0{padding-left:0!important;padding-right:0!important}.px-1{padding-left:.3125rem!important;padding-right:.3125rem!important}.px-2{padding-left:.625rem!important;padding-right:.625rem!important}.px-3{padding-left:1.25rem!important;padding-right:1.25rem!important}.px-4{padding-left:1.875rem!important;padding-right:1.875rem!important}.px-5{padding-left:3.75rem!important;padding-right:3.75rem!important}.py-0{padding-top:0!important;padding-bottom:0!important}.py-1{padding-top:.3125rem!important;padding-bottom:.3125rem!important}.py-2{padding-top:.625rem!important;padding-bottom:.625rem!important}.py-3{padding-top:1.25rem!important;padding-bottom:1.25rem!important}.py-4{padding-top:1.875rem!important;padding-bottom:1.875rem!important}.py-5{padding-top:3.75rem!important;padding-bottom:3.75rem!important}.pt-0{padding-top:0!important}.pt-1{padding-top:.3125rem!important}.pt-2{padding-top:.625rem!important}.pt-3{padding-top:1.25rem!important}.pt-4{padding-top:1.875rem!important}.pt-5{padding-top:3.75rem!important}.pe-0{padding-left:0!important}.pe-1{padding-left:.3125rem!important}.pe-2{padding-left:.625rem!important}.pe-3{padding-left:1.25rem!important}.pe-4{padding-left:1.875rem!important}.pe-5{padding-left:3.75rem!important}.pb-0{padding-bottom:0!important}.pb-1{padding-bottom:.3125rem!important}.pb-2{padding-bottom:.625rem!important}.pb-3{padding-bottom:1.25rem!important}.pb-4{padding-bottom:1.875rem!important}.pb-5{padding-bottom:3.75rem!important}.ps-0{padding-right:0!important}.ps-1{padding-right:.3125rem!important}.ps-2{padding-right:.625rem!important}.ps-3{padding-right:1.25rem!important}.ps-4{padding-right:1.875rem!important}.ps-5{padding-right:3.75rem!important}.gap-0{gap:0!important}.gap-1{gap:.3125rem!important}.gap-2{gap:.625rem!important}.gap-3{gap:1.25rem!important}.gap-4{gap:1.875rem!important}.gap-5{gap:3.75rem!important}.row-gap-0{row-gap:0!important}.row-gap-1{row-gap:.3125rem!important}.row-gap-2{row-gap:.625rem!important}.row-gap-3{row-gap:1.25rem!important}.row-gap-4{row-gap:1.875rem!important}.row-gap-5{row-gap:3.75rem!important}.column-gap-0{-webkit-column-gap:0!important;-moz-column-gap:0!important;column-gap:0!important}.column-gap-1{-webkit-column-gap:.3125rem!important;-moz-column-gap:.3125rem!important;column-gap:.3125rem!important}.column-gap-2{-webkit-column-gap:.625rem!important;-moz-column-gap:.625rem!important;column-gap:.625rem!important}.column-gap-3{-webkit-column-gap:1.25rem!important;-moz-column-gap:1.25rem!important;column-gap:1.25rem!important}.column-gap-4{-webkit-column-gap:1.875rem!important;-moz-column-gap:1.875rem!important;column-gap:1.875rem!important}.column-gap-5{-webkit-column-gap:3.75rem!important;-moz-column-gap:3.75rem!important;column-gap:3.75rem!important}.font-monospace{font-family:var(--ct-font-monospace)!important}.fs-1{font-size:calc(1.34375rem + 1.125vw)!important}.fs-2{font-size:calc(1.307rem + .684vw)!important}.fs-3{font-size:calc(1.271125rem + .2535vw)!important}.fs-4{font-size:1.09375rem!important}.fs-5{font-size:.91rem!important}.fs-6{font-size:.74375rem!important}.fst-italic{font-style:italic!important}.fst-normal{font-style:normal!important}.fw-lighter{font-weight:lighter!important}.fw-light{font-weight:300!important}.fw-normal{font-weight:400!important}.fw-medium{font-weight:500!important}.fw-semibold{font-weight:600!important}.fw-bold{font-weight:700!important}.fw-bolder{font-weight:bolder!important}.lh-1{line-height:1!important}.lh-sm{line-height:1.25!important}.lh-base{line-height:1.5!important}.lh-lg{line-height:2!important}.text-start{text-align:right!important}.text-end{text-align:left!important}.text-center{text-align:center!important}.text-decoration-none{text-decoration:none!important}.text-decoration-underline{text-decoration:underline!important}.text-decoration-line-through{text-decoration:line-through!important}.text-lowercase{text-transform:lowercase!important}.text-uppercase{text-transform:uppercase!important}.text-capitalize{text-transform:capitalize!important}.text-wrap{white-space:normal!important}.text-nowrap{white-space:nowrap!important}.text-primary{--ct-text-opacity:1;color:rgba(var(--ct-primary-rgb),var(--ct-text-opacity))!important}.text-secondary{--ct-text-opacity:1;color:rgba(var(--ct-secondary-rgb),var(--ct-text-opacity))!important}.text-success{--ct-text-opacity:1;color:rgba(var(--ct-success-rgb),var(--ct-text-opacity))!important}.text-info{--ct-text-opacity:1;color:rgba(var(--ct-info-rgb),var(--ct-text-opacity))!important}.text-warning{--ct-text-opacity:1;color:rgba(var(--ct-warning-rgb),var(--ct-text-opacity))!important}.text-danger{--ct-text-opacity:1;color:rgba(var(--ct-danger-rgb),var(--ct-text-opacity))!important}.text-light{--ct-text-opacity:1;color:rgba(var(--ct-light-rgb),var(--ct-text-opacity))!important}.text-dark{--ct-text-opacity:1;color:rgba(var(--ct-dark-rgb),var(--ct-text-opacity))!important}.text-purple{--ct-text-opacity:1;color:rgba(var(--ct-purple-rgb),var(--ct-text-opacity))!important}.text-pink{--ct-text-opacity:1;color:rgba(var(--ct-pink-rgb),var(--ct-text-opacity))!important}.text-black{--ct-text-opacity:1;color:rgba(var(--ct-black-rgb),var(--ct-text-opacity))!important}.text-white{--ct-text-opacity:1;color:rgba(var(--ct-white-rgb),var(--ct-text-opacity))!important}.text-body{--ct-text-opacity:1;color:rgba(var(--ct-body-color-rgb),var(--ct-text-opacity))!important}.text-muted{--ct-text-opacity:1;color:var(--ct-secondary-color)!important}.text-black-50{--ct-text-opacity:1;color:rgba(0,0,0,.5)!important}.text-white-50{--ct-text-opacity:1;color:rgba(255,255,255,.5)!important}.text-body-secondary{--ct-text-opacity:1;color:var(--ct-secondary-color)!important}.text-body-tertiary{--ct-text-opacity:1;color:var(--ct-tertiary-color)!important}.text-body-emphasis{--ct-text-opacity:1;color:var(--ct-emphasis-color)!important}.text-reset{--ct-text-opacity:1;color:inherit!important}.text-opacity-25{--ct-text-opacity:0.25}.text-opacity-50{--ct-text-opacity:0.5}.text-opacity-75{--ct-text-opacity:0.75}.text-opacity-100{--ct-text-opacity:1}.text-primary-emphasis{color:var(--ct-primary-text-emphasis)!important}.text-secondary-emphasis{color:var(--ct-secondary-text-emphasis)!important}.text-success-emphasis{color:var(--ct-success-text-emphasis)!important}.text-info-emphasis{color:var(--ct-info-text-emphasis)!important}.text-warning-emphasis{color:var(--ct-warning-text-emphasis)!important}.text-danger-emphasis{color:var(--ct-danger-text-emphasis)!important}.text-light-emphasis{color:var(--ct-light-text-emphasis)!important}.text-dark-emphasis{color:var(--ct-dark-text-emphasis)!important}.link-opacity-10{--ct-link-opacity:0.1}.link-opacity-10-hover:hover{--ct-link-opacity:0.1}.link-opacity-25{--ct-link-opacity:0.25}.link-opacity-25-hover:hover{--ct-link-opacity:0.25}.link-opacity-50{--ct-link-opacity:0.5}.link-opacity-50-hover:hover{--ct-link-opacity:0.5}.link-opacity-75{--ct-link-opacity:0.75}.link-opacity-75-hover:hover{--ct-link-opacity:0.75}.link-opacity-100{--ct-link-opacity:1}.link-opacity-100-hover:hover{--ct-link-opacity:1}.link-offset-1{text-underline-offset:.125em!important}.link-offset-1-hover:hover{text-underline-offset:.125em!important}.link-offset-2{text-underline-offset:.25em!important}.link-offset-2-hover:hover{text-underline-offset:.25em!important}.link-offset-3{text-underline-offset:.375em!important}.link-offset-3-hover:hover{text-underline-offset:.375em!important}.link-underline-primary{--ct-link-underline-opacity:1;text-decoration-color:rgba(var(--ct-primary-rgb),var(--ct-link-underline-opacity))!important}.link-underline-secondary{--ct-link-underline-opacity:1;text-decoration-color:rgba(var(--ct-secondary-rgb),var(--ct-link-underline-opacity))!important}.link-underline-success{--ct-link-underline-opacity:1;text-decoration-color:rgba(var(--ct-success-rgb),var(--ct-link-underline-opacity))!important}.link-underline-info{--ct-link-underline-opacity:1;text-decoration-color:rgba(var(--ct-info-rgb),var(--ct-link-underline-opacity))!important}.link-underline-warning{--ct-link-underline-opacity:1;text-decoration-color:rgba(var(--ct-warning-rgb),var(--ct-link-underline-opacity))!important}.link-underline-danger{--ct-link-underline-opacity:1;text-decoration-color:rgba(var(--ct-danger-rgb),var(--ct-link-underline-opacity))!important}.link-underline-light{--ct-link-underline-opacity:1;text-decoration-color:rgba(var(--ct-light-rgb),var(--ct-link-underline-opacity))!important}.link-underline-dark{--ct-link-underline-opacity:1;text-decoration-color:rgba(var(--ct-dark-rgb),var(--ct-link-underline-opacity))!important}.link-underline-purple{--ct-link-underline-opacity:1;text-decoration-color:rgba(var(--ct-purple-rgb),var(--ct-link-underline-opacity))!important}.link-underline-pink{--ct-link-underline-opacity:1;text-decoration-color:rgba(var(--ct-pink-rgb),var(--ct-link-underline-opacity))!important}.link-underline{--ct-link-underline-opacity:1;text-decoration-color:rgba(var(--ct-link-color-rgb),var(--ct-link-underline-opacity,1))!important}.link-underline-opacity-0{--ct-link-underline-opacity:0}.link-underline-opacity-0-hover:hover{--ct-link-underline-opacity:0}.link-underline-opacity-10{--ct-link-underline-opacity:0.1}.link-underline-opacity-10-hover:hover{--ct-link-underline-opacity:0.1}.link-underline-opacity-25{--ct-link-underline-opacity:0.25}.link-underline-opacity-25-hover:hover{--ct-link-underline-opacity:0.25}.link-underline-opacity-50{--ct-link-underline-opacity:0.5}.link-underline-opacity-50-hover:hover{--ct-link-underline-opacity:0.5}.link-underline-opacity-75{--ct-link-underline-opacity:0.75}.link-underline-opacity-75-hover:hover{--ct-link-underline-opacity:0.75}.link-underline-opacity-100{--ct-link-underline-opacity:1}.link-underline-opacity-100-hover:hover{--ct-link-underline-opacity:1}.bg-primary{--ct-bg-opacity:1;background-color:rgba(var(--ct-primary-rgb),var(--ct-bg-opacity))!important}.bg-secondary{--ct-bg-opacity:1;background-color:rgba(var(--ct-secondary-rgb),var(--ct-bg-opacity))!important}.bg-success{--ct-bg-opacity:1;background-color:rgba(var(--ct-success-rgb),var(--ct-bg-opacity))!important}.bg-info{--ct-bg-opacity:1;background-color:rgba(var(--ct-info-rgb),var(--ct-bg-opacity))!important}.bg-warning{--ct-bg-opacity:1;background-color:rgba(var(--ct-warning-rgb),var(--ct-bg-opacity))!important}.bg-danger{--ct-bg-opacity:1;background-color:rgba(var(--ct-danger-rgb),var(--ct-bg-opacity))!important}.bg-light{--ct-bg-opacity:1;background-color:rgba(var(--ct-light-rgb),var(--ct-bg-opacity))!important}.bg-dark{--ct-bg-opacity:1;background-color:rgba(var(--ct-dark-rgb),var(--ct-bg-opacity))!important}.bg-purple{--ct-bg-opacity:1;background-color:rgba(var(--ct-purple-rgb),var(--ct-bg-opacity))!important}.bg-pink{--ct-bg-opacity:1;background-color:rgba(var(--ct-pink-rgb),var(--ct-bg-opacity))!important}.bg-black{--ct-bg-opacity:1;background-color:rgba(var(--ct-black-rgb),var(--ct-bg-opacity))!important}.bg-white{--ct-bg-opacity:1;background-color:rgba(var(--ct-white-rgb),var(--ct-bg-opacity))!important}.bg-body{--ct-bg-opacity:1;background-color:rgba(var(--ct-body-bg-rgb),var(--ct-bg-opacity))!important}.bg-transparent{--ct-bg-opacity:1;background-color:transparent!important}.bg-body-secondary{--ct-bg-opacity:1;background-color:rgba(var(--ct-secondary-bg-rgb),var(--ct-bg-opacity))!important}.bg-body-tertiary{--ct-bg-opacity:1;background-color:rgba(var(--ct-tertiary-bg-rgb),var(--ct-bg-opacity))!important}.bg-opacity-10{--ct-bg-opacity:0.1}.bg-opacity-25{--ct-bg-opacity:0.25}.bg-opacity-50{--ct-bg-opacity:0.5}.bg-opacity-75{--ct-bg-opacity:0.75}.bg-opacity-100{--ct-bg-opacity:1}.bg-primary-subtle{background-color:var(--ct-primary-bg-subtle)!important}.bg-secondary-subtle{background-color:var(--ct-secondary-bg-subtle)!important}.bg-success-subtle{background-color:var(--ct-success-bg-subtle)!important}.bg-info-subtle{background-color:var(--ct-info-bg-subtle)!important}.bg-warning-subtle{background-color:var(--ct-warning-bg-subtle)!important}.bg-danger-subtle{background-color:var(--ct-danger-bg-subtle)!important}.bg-light-subtle{background-color:var(--ct-light-bg-subtle)!important}.bg-dark-subtle{background-color:var(--ct-dark-bg-subtle)!important}.bg-gradient{background-image:var(--ct-gradient)!important}.user-select-all{-webkit-user-select:all!important;-moz-user-select:all!important;user-select:all!important}.user-select-auto{-webkit-user-select:auto!important;-moz-user-select:auto!important;-ms-user-select:auto!important;user-select:auto!important}.user-select-none{-webkit-user-select:none!important;-moz-user-select:none!important;-ms-user-select:none!important;user-select:none!important}.pe-none{pointer-events:none!important}.pe-auto{pointer-events:auto!important}.rounded{border-radius:var(--ct-border-radius)!important}.rounded-0{border-radius:0!important}.rounded-1{border-radius:var(--ct-border-radius-sm)!important}.rounded-2{border-radius:var(--ct-border-radius)!important}.rounded-3{border-radius:var(--ct-border-radius-lg)!important}.rounded-4{border-radius:var(--ct-border-radius-xl)!important}.rounded-5{border-radius:var(--ct-border-radius-xxl)!important}.rounded-circle{border-radius:50%!important}.rounded-pill{border-radius:var(--ct-border-radius-pill)!important}.rounded-top{border-top-right-radius:var(--ct-border-radius)!important;border-top-left-radius:var(--ct-border-radius)!important}.rounded-top-0{border-top-right-radius:0!important;border-top-left-radius:0!important}.rounded-top-1{border-top-right-radius:var(--ct-border-radius-sm)!important;border-top-left-radius:var(--ct-border-radius-sm)!important}.rounded-top-2{border-top-right-radius:var(--ct-border-radius)!important;border-top-left-radius:var(--ct-border-radius)!important}.rounded-top-3{border-top-right-radius:var(--ct-border-radius-lg)!important;border-top-left-radius:var(--ct-border-radius-lg)!important}.rounded-top-4{border-top-right-radius:var(--ct-border-radius-xl)!important;border-top-left-radius:var(--ct-border-radius-xl)!important}.rounded-top-5{border-top-right-radius:var(--ct-border-radius-xxl)!important;border-top-left-radius:var(--ct-border-radius-xxl)!important}.rounded-top-circle{border-top-right-radius:50%!important;border-top-left-radius:50%!important}.rounded-top-pill{border-top-right-radius:var(--ct-border-radius-pill)!important;border-top-left-radius:var(--ct-border-radius-pill)!important}.rounded-end{border-top-left-radius:var(--ct-border-radius)!important;border-bottom-left-radius:var(--ct-border-radius)!important}.rounded-end-0{border-top-left-radius:0!important;border-bottom-left-radius:0!important}.rounded-end-1{border-top-left-radius:var(--ct-border-radius-sm)!important;border-bottom-left-radius:var(--ct-border-radius-sm)!important}.rounded-end-2{border-top-left-radius:var(--ct-border-radius)!important;border-bottom-left-radius:var(--ct-border-radius)!important}.rounded-end-3{border-top-left-radius:var(--ct-border-radius-lg)!important;border-bottom-left-radius:var(--ct-border-radius-lg)!important}.rounded-end-4{border-top-left-radius:var(--ct-border-radius-xl)!important;border-bottom-left-radius:var(--ct-border-radius-xl)!important}.rounded-end-5{border-top-left-radius:var(--ct-border-radius-xxl)!important;border-bottom-left-radius:var(--ct-border-radius-xxl)!important}.rounded-end-circle{border-top-left-radius:50%!important;border-bottom-left-radius:50%!important}.rounded-end-pill{border-top-left-radius:var(--ct-border-radius-pill)!important;border-bottom-left-radius:var(--ct-border-radius-pill)!important}.rounded-bottom{border-bottom-left-radius:var(--ct-border-radius)!important;border-bottom-right-radius:var(--ct-border-radius)!important}.rounded-bottom-0{border-bottom-left-radius:0!important;border-bottom-right-radius:0!important}.rounded-bottom-1{border-bottom-left-radius:var(--ct-border-radius-sm)!important;border-bottom-right-radius:var(--ct-border-radius-sm)!important}.rounded-bottom-2{border-bottom-left-radius:var(--ct-border-radius)!important;border-bottom-right-radius:var(--ct-border-radius)!important}.rounded-bottom-3{border-bottom-left-radius:var(--ct-border-radius-lg)!important;border-bottom-right-radius:var(--ct-border-radius-lg)!important}.rounded-bottom-4{border-bottom-left-radius:var(--ct-border-radius-xl)!important;border-bottom-right-radius:var(--ct-border-radius-xl)!important}.rounded-bottom-5{border-bottom-left-radius:var(--ct-border-radius-xxl)!important;border-bottom-right-radius:var(--ct-border-radius-xxl)!important}.rounded-bottom-circle{border-bottom-left-radius:50%!important;border-bottom-right-radius:50%!important}.rounded-bottom-pill{border-bottom-left-radius:var(--ct-border-radius-pill)!important;border-bottom-right-radius:var(--ct-border-radius-pill)!important}.rounded-start{border-bottom-right-radius:var(--ct-border-radius)!important;border-top-right-radius:var(--ct-border-radius)!important}.rounded-start-0{border-bottom-right-radius:0!important;border-top-right-radius:0!important}.rounded-start-1{border-bottom-right-radius:var(--ct-border-radius-sm)!important;border-top-right-radius:var(--ct-border-radius-sm)!important}.rounded-start-2{border-bottom-right-radius:var(--ct-border-radius)!important;border-top-right-radius:var(--ct-border-radius)!important}.rounded-start-3{border-bottom-right-radius:var(--ct-border-radius-lg)!important;border-top-right-radius:var(--ct-border-radius-lg)!important}.rounded-start-4{border-bottom-right-radius:var(--ct-border-radius-xl)!important;border-top-right-radius:var(--ct-border-radius-xl)!important}.rounded-start-5{border-bottom-right-radius:var(--ct-border-radius-xxl)!important;border-top-right-radius:var(--ct-border-radius-xxl)!important}.rounded-start-circle{border-bottom-right-radius:50%!important;border-top-right-radius:50%!important}.rounded-start-pill{border-bottom-right-radius:var(--ct-border-radius-pill)!important;border-top-right-radius:var(--ct-border-radius-pill)!important}.visible{visibility:visible!important}.invisible{visibility:hidden!important}.z-n1{z-index:-1!important}.z-0{z-index:0!important}.z-1{z-index:1!important}.z-2{z-index:2!important}.z-3{z-index:3!important}.fs-10{font-size:10px!important}.fs-11{font-size:11px!important}.fs-12{font-size:12px!important}.fs-13{font-size:13px!important}.fs-14{font-size:14px!important}.fs-15{font-size:15px!important}.fs-16{font-size:16px!important}.fs-17{font-size:17px!important}.fs-18{font-size:18px!important}.fs-19{font-size:19px!important}.fs-20{font-size:20px!important}.fs-21{font-size:21px!important}.fs-22{font-size:22px!important}.fs-23{font-size:23px!important}.fs-24{font-size:24px!important}.fs-36{font-size:36px!important}.fs-48{font-size:48px!important}@media (min-width:576px){.float-sm-start{float:right!important}.float-sm-end{float:left!important}.float-sm-none{float:none!important}.object-fit-sm-contain{-o-object-fit:contain!important;object-fit:contain!important}.object-fit-sm-cover{-o-object-fit:cover!important;object-fit:cover!important}.object-fit-sm-fill{-o-object-fit:fill!important;object-fit:fill!important}.object-fit-sm-scale{-o-object-fit:scale-down!important;object-fit:scale-down!important}.object-fit-sm-none{-o-object-fit:none!important;object-fit:none!important}.d-sm-inline{display:inline!important}.d-sm-inline-block{display:inline-block!important}.d-sm-block{display:block!important}.d-sm-grid{display:grid!important}.d-sm-inline-grid{display:inline-grid!important}.d-sm-table{display:table!important}.d-sm-table-row{display:table-row!important}.d-sm-table-cell{display:table-cell!important}.d-sm-flex{display:-webkit-box!important;display:-ms-flexbox!important;display:flex!important}.d-sm-inline-flex{display:-webkit-inline-box!important;display:-ms-inline-flexbox!important;display:inline-flex!important}.d-sm-none{display:none!important}.flex-sm-fill{-webkit-box-flex:1!important;-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-sm-row{-webkit-box-orient:horizontal!important;-webkit-box-direction:normal!important;-ms-flex-direction:row!important;flex-direction:row!important}.flex-sm-column{-webkit-box-orient:vertical!important;-webkit-box-direction:normal!important;-ms-flex-direction:column!important;flex-direction:column!important}.flex-sm-row-reverse{-webkit-box-orient:horizontal!important;-webkit-box-direction:reverse!important;-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-sm-column-reverse{-webkit-box-orient:vertical!important;-webkit-box-direction:reverse!important;-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-sm-grow-0{-webkit-box-flex:0!important;-ms-flex-positive:0!important;flex-grow:0!important}.flex-sm-grow-1{-webkit-box-flex:1!important;-ms-flex-positive:1!important;flex-grow:1!important}.flex-sm-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-sm-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.flex-sm-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-sm-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-sm-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.justify-content-sm-start{-webkit-box-pack:start!important;-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-sm-end{-webkit-box-pack:end!important;-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-sm-center{-webkit-box-pack:center!important;-ms-flex-pack:center!important;justify-content:center!important}.justify-content-sm-between{-webkit-box-pack:justify!important;-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-sm-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.justify-content-sm-evenly{-webkit-box-pack:space-evenly!important;-ms-flex-pack:space-evenly!important;justify-content:space-evenly!important}.align-items-sm-start{-webkit-box-align:start!important;-ms-flex-align:start!important;align-items:flex-start!important}.align-items-sm-end{-webkit-box-align:end!important;-ms-flex-align:end!important;align-items:flex-end!important}.align-items-sm-center{-webkit-box-align:center!important;-ms-flex-align:center!important;align-items:center!important}.align-items-sm-baseline{-webkit-box-align:baseline!important;-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-sm-stretch{-webkit-box-align:stretch!important;-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-sm-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-sm-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-sm-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-sm-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-sm-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-sm-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-sm-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.align-self-sm-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-sm-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-sm-center{-ms-flex-item-align:center!important;align-self:center!important}.align-self-sm-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-sm-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}.order-sm-first{-webkit-box-ordinal-group:0!important;-ms-flex-order:-1!important;order:-1!important}.order-sm-0{-webkit-box-ordinal-group:1!important;-ms-flex-order:0!important;order:0!important}.order-sm-1{-webkit-box-ordinal-group:2!important;-ms-flex-order:1!important;order:1!important}.order-sm-2{-webkit-box-ordinal-group:3!important;-ms-flex-order:2!important;order:2!important}.order-sm-3{-webkit-box-ordinal-group:4!important;-ms-flex-order:3!important;order:3!important}.order-sm-4{-webkit-box-ordinal-group:5!important;-ms-flex-order:4!important;order:4!important}.order-sm-5{-webkit-box-ordinal-group:6!important;-ms-flex-order:5!important;order:5!important}.order-sm-last{-webkit-box-ordinal-group:7!important;-ms-flex-order:6!important;order:6!important}.m-sm-0{margin:0!important}.m-sm-1{margin:.3125rem!important}.m-sm-2{margin:.625rem!important}.m-sm-3{margin:1.25rem!important}.m-sm-4{margin:1.875rem!important}.m-sm-5{margin:3.75rem!important}.m-sm-auto{margin:auto!important}.mx-sm-0{margin-left:0!important;margin-right:0!important}.mx-sm-1{margin-left:.3125rem!important;margin-right:.3125rem!important}.mx-sm-2{margin-left:.625rem!important;margin-right:.625rem!important}.mx-sm-3{margin-left:1.25rem!important;margin-right:1.25rem!important}.mx-sm-4{margin-left:1.875rem!important;margin-right:1.875rem!important}.mx-sm-5{margin-left:3.75rem!important;margin-right:3.75rem!important}.mx-sm-auto{margin-left:auto!important;margin-right:auto!important}.my-sm-0{margin-top:0!important;margin-bottom:0!important}.my-sm-1{margin-top:.3125rem!important;margin-bottom:.3125rem!important}.my-sm-2{margin-top:.625rem!important;margin-bottom:.625rem!important}.my-sm-3{margin-top:1.25rem!important;margin-bottom:1.25rem!important}.my-sm-4{margin-top:1.875rem!important;margin-bottom:1.875rem!important}.my-sm-5{margin-top:3.75rem!important;margin-bottom:3.75rem!important}.my-sm-auto{margin-top:auto!important;margin-bottom:auto!important}.mt-sm-0{margin-top:0!important}.mt-sm-1{margin-top:.3125rem!important}.mt-sm-2{margin-top:.625rem!important}.mt-sm-3{margin-top:1.25rem!important}.mt-sm-4{margin-top:1.875rem!important}.mt-sm-5{margin-top:3.75rem!important}.mt-sm-auto{margin-top:auto!important}.me-sm-0{margin-left:0!important}.me-sm-1{margin-left:.3125rem!important}.me-sm-2{margin-left:.625rem!important}.me-sm-3{margin-left:1.25rem!important}.me-sm-4{margin-left:1.875rem!important}.me-sm-5{margin-left:3.75rem!important}.me-sm-auto{margin-left:auto!important}.mb-sm-0{margin-bottom:0!important}.mb-sm-1{margin-bottom:.3125rem!important}.mb-sm-2{margin-bottom:.625rem!important}.mb-sm-3{margin-bottom:1.25rem!important}.mb-sm-4{margin-bottom:1.875rem!important}.mb-sm-5{margin-bottom:3.75rem!important}.mb-sm-auto{margin-bottom:auto!important}.ms-sm-0{margin-right:0!important}.ms-sm-1{margin-right:.3125rem!important}.ms-sm-2{margin-right:.625rem!important}.ms-sm-3{margin-right:1.25rem!important}.ms-sm-4{margin-right:1.875rem!important}.ms-sm-5{margin-right:3.75rem!important}.ms-sm-auto{margin-right:auto!important}.m-sm-n1{margin:-.3125rem!important}.m-sm-n2{margin:-.625rem!important}.m-sm-n3{margin:-1.25rem!important}.m-sm-n4{margin:-1.875rem!important}.m-sm-n5{margin:-3.75rem!important}.mx-sm-n1{margin-left:-.3125rem!important;margin-right:-.3125rem!important}.mx-sm-n2{margin-left:-.625rem!important;margin-right:-.625rem!important}.mx-sm-n3{margin-left:-1.25rem!important;margin-right:-1.25rem!important}.mx-sm-n4{margin-left:-1.875rem!important;margin-right:-1.875rem!important}.mx-sm-n5{margin-left:-3.75rem!important;margin-right:-3.75rem!important}.my-sm-n1{margin-top:-.3125rem!important;margin-bottom:-.3125rem!important}.my-sm-n2{margin-top:-.625rem!important;margin-bottom:-.625rem!important}.my-sm-n3{margin-top:-1.25rem!important;margin-bottom:-1.25rem!important}.my-sm-n4{margin-top:-1.875rem!important;margin-bottom:-1.875rem!important}.my-sm-n5{margin-top:-3.75rem!important;margin-bottom:-3.75rem!important}.mt-sm-n1{margin-top:-.3125rem!important}.mt-sm-n2{margin-top:-.625rem!important}.mt-sm-n3{margin-top:-1.25rem!important}.mt-sm-n4{margin-top:-1.875rem!important}.mt-sm-n5{margin-top:-3.75rem!important}.me-sm-n1{margin-left:-.3125rem!important}.me-sm-n2{margin-left:-.625rem!important}.me-sm-n3{margin-left:-1.25rem!important}.me-sm-n4{margin-left:-1.875rem!important}.me-sm-n5{margin-left:-3.75rem!important}.mb-sm-n1{margin-bottom:-.3125rem!important}.mb-sm-n2{margin-bottom:-.625rem!important}.mb-sm-n3{margin-bottom:-1.25rem!important}.mb-sm-n4{margin-bottom:-1.875rem!important}.mb-sm-n5{margin-bottom:-3.75rem!important}.ms-sm-n1{margin-right:-.3125rem!important}.ms-sm-n2{margin-right:-.625rem!important}.ms-sm-n3{margin-right:-1.25rem!important}.ms-sm-n4{margin-right:-1.875rem!important}.ms-sm-n5{margin-right:-3.75rem!important}.p-sm-0{padding:0!important}.p-sm-1{padding:.3125rem!important}.p-sm-2{padding:.625rem!important}.p-sm-3{padding:1.25rem!important}.p-sm-4{padding:1.875rem!important}.p-sm-5{padding:3.75rem!important}.px-sm-0{padding-left:0!important;padding-right:0!important}.px-sm-1{padding-left:.3125rem!important;padding-right:.3125rem!important}.px-sm-2{padding-left:.625rem!important;padding-right:.625rem!important}.px-sm-3{padding-left:1.25rem!important;padding-right:1.25rem!important}.px-sm-4{padding-left:1.875rem!important;padding-right:1.875rem!important}.px-sm-5{padding-left:3.75rem!important;padding-right:3.75rem!important}.py-sm-0{padding-top:0!important;padding-bottom:0!important}.py-sm-1{padding-top:.3125rem!important;padding-bottom:.3125rem!important}.py-sm-2{padding-top:.625rem!important;padding-bottom:.625rem!important}.py-sm-3{padding-top:1.25rem!important;padding-bottom:1.25rem!important}.py-sm-4{padding-top:1.875rem!important;padding-bottom:1.875rem!important}.py-sm-5{padding-top:3.75rem!important;padding-bottom:3.75rem!important}.pt-sm-0{padding-top:0!important}.pt-sm-1{padding-top:.3125rem!important}.pt-sm-2{padding-top:.625rem!important}.pt-sm-3{padding-top:1.25rem!important}.pt-sm-4{padding-top:1.875rem!important}.pt-sm-5{padding-top:3.75rem!important}.pe-sm-0{padding-left:0!important}.pe-sm-1{padding-left:.3125rem!important}.pe-sm-2{padding-left:.625rem!important}.pe-sm-3{padding-left:1.25rem!important}.pe-sm-4{padding-left:1.875rem!important}.pe-sm-5{padding-left:3.75rem!important}.pb-sm-0{padding-bottom:0!important}.pb-sm-1{padding-bottom:.3125rem!important}.pb-sm-2{padding-bottom:.625rem!important}.pb-sm-3{padding-bottom:1.25rem!important}.pb-sm-4{padding-bottom:1.875rem!important}.pb-sm-5{padding-bottom:3.75rem!important}.ps-sm-0{padding-right:0!important}.ps-sm-1{padding-right:.3125rem!important}.ps-sm-2{padding-right:.625rem!important}.ps-sm-3{padding-right:1.25rem!important}.ps-sm-4{padding-right:1.875rem!important}.ps-sm-5{padding-right:3.75rem!important}.gap-sm-0{gap:0!important}.gap-sm-1{gap:.3125rem!important}.gap-sm-2{gap:.625rem!important}.gap-sm-3{gap:1.25rem!important}.gap-sm-4{gap:1.875rem!important}.gap-sm-5{gap:3.75rem!important}.row-gap-sm-0{row-gap:0!important}.row-gap-sm-1{row-gap:.3125rem!important}.row-gap-sm-2{row-gap:.625rem!important}.row-gap-sm-3{row-gap:1.25rem!important}.row-gap-sm-4{row-gap:1.875rem!important}.row-gap-sm-5{row-gap:3.75rem!important}.column-gap-sm-0{-webkit-column-gap:0!important;-moz-column-gap:0!important;column-gap:0!important}.column-gap-sm-1{-webkit-column-gap:.3125rem!important;-moz-column-gap:.3125rem!important;column-gap:.3125rem!important}.column-gap-sm-2{-webkit-column-gap:.625rem!important;-moz-column-gap:.625rem!important;column-gap:.625rem!important}.column-gap-sm-3{-webkit-column-gap:1.25rem!important;-moz-column-gap:1.25rem!important;column-gap:1.25rem!important}.column-gap-sm-4{-webkit-column-gap:1.875rem!important;-moz-column-gap:1.875rem!important;column-gap:1.875rem!important}.column-gap-sm-5{-webkit-column-gap:3.75rem!important;-moz-column-gap:3.75rem!important;column-gap:3.75rem!important}.text-sm-start{text-align:right!important}.text-sm-end{text-align:left!important}.text-sm-center{text-align:center!important}}@media (min-width:768px){.float-md-start{float:right!important}.float-md-end{float:left!important}.float-md-none{float:none!important}.object-fit-md-contain{-o-object-fit:contain!important;object-fit:contain!important}.object-fit-md-cover{-o-object-fit:cover!important;object-fit:cover!important}.object-fit-md-fill{-o-object-fit:fill!important;object-fit:fill!important}.object-fit-md-scale{-o-object-fit:scale-down!important;object-fit:scale-down!important}.object-fit-md-none{-o-object-fit:none!important;object-fit:none!important}.d-md-inline{display:inline!important}.d-md-inline-block{display:inline-block!important}.d-md-block{display:block!important}.d-md-grid{display:grid!important}.d-md-inline-grid{display:inline-grid!important}.d-md-table{display:table!important}.d-md-table-row{display:table-row!important}.d-md-table-cell{display:table-cell!important}.d-md-flex{display:-webkit-box!important;display:-ms-flexbox!important;display:flex!important}.d-md-inline-flex{display:-webkit-inline-box!important;display:-ms-inline-flexbox!important;display:inline-flex!important}.d-md-none{display:none!important}.flex-md-fill{-webkit-box-flex:1!important;-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-md-row{-webkit-box-orient:horizontal!important;-webkit-box-direction:normal!important;-ms-flex-direction:row!important;flex-direction:row!important}.flex-md-column{-webkit-box-orient:vertical!important;-webkit-box-direction:normal!important;-ms-flex-direction:column!important;flex-direction:column!important}.flex-md-row-reverse{-webkit-box-orient:horizontal!important;-webkit-box-direction:reverse!important;-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-md-column-reverse{-webkit-box-orient:vertical!important;-webkit-box-direction:reverse!important;-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-md-grow-0{-webkit-box-flex:0!important;-ms-flex-positive:0!important;flex-grow:0!important}.flex-md-grow-1{-webkit-box-flex:1!important;-ms-flex-positive:1!important;flex-grow:1!important}.flex-md-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-md-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.flex-md-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-md-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-md-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.justify-content-md-start{-webkit-box-pack:start!important;-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-md-end{-webkit-box-pack:end!important;-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-md-center{-webkit-box-pack:center!important;-ms-flex-pack:center!important;justify-content:center!important}.justify-content-md-between{-webkit-box-pack:justify!important;-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-md-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.justify-content-md-evenly{-webkit-box-pack:space-evenly!important;-ms-flex-pack:space-evenly!important;justify-content:space-evenly!important}.align-items-md-start{-webkit-box-align:start!important;-ms-flex-align:start!important;align-items:flex-start!important}.align-items-md-end{-webkit-box-align:end!important;-ms-flex-align:end!important;align-items:flex-end!important}.align-items-md-center{-webkit-box-align:center!important;-ms-flex-align:center!important;align-items:center!important}.align-items-md-baseline{-webkit-box-align:baseline!important;-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-md-stretch{-webkit-box-align:stretch!important;-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-md-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-md-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-md-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-md-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-md-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-md-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-md-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.align-self-md-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-md-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-md-center{-ms-flex-item-align:center!important;align-self:center!important}.align-self-md-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-md-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}.order-md-first{-webkit-box-ordinal-group:0!important;-ms-flex-order:-1!important;order:-1!important}.order-md-0{-webkit-box-ordinal-group:1!important;-ms-flex-order:0!important;order:0!important}.order-md-1{-webkit-box-ordinal-group:2!important;-ms-flex-order:1!important;order:1!important}.order-md-2{-webkit-box-ordinal-group:3!important;-ms-flex-order:2!important;order:2!important}.order-md-3{-webkit-box-ordinal-group:4!important;-ms-flex-order:3!important;order:3!important}.order-md-4{-webkit-box-ordinal-group:5!important;-ms-flex-order:4!important;order:4!important}.order-md-5{-webkit-box-ordinal-group:6!important;-ms-flex-order:5!important;order:5!important}.order-md-last{-webkit-box-ordinal-group:7!important;-ms-flex-order:6!important;order:6!important}.m-md-0{margin:0!important}.m-md-1{margin:.3125rem!important}.m-md-2{margin:.625rem!important}.m-md-3{margin:1.25rem!important}.m-md-4{margin:1.875rem!important}.m-md-5{margin:3.75rem!important}.m-md-auto{margin:auto!important}.mx-md-0{margin-left:0!important;margin-right:0!important}.mx-md-1{margin-left:.3125rem!important;margin-right:.3125rem!important}.mx-md-2{margin-left:.625rem!important;margin-right:.625rem!important}.mx-md-3{margin-left:1.25rem!important;margin-right:1.25rem!important}.mx-md-4{margin-left:1.875rem!important;margin-right:1.875rem!important}.mx-md-5{margin-left:3.75rem!important;margin-right:3.75rem!important}.mx-md-auto{margin-left:auto!important;margin-right:auto!important}.my-md-0{margin-top:0!important;margin-bottom:0!important}.my-md-1{margin-top:.3125rem!important;margin-bottom:.3125rem!important}.my-md-2{margin-top:.625rem!important;margin-bottom:.625rem!important}.my-md-3{margin-top:1.25rem!important;margin-bottom:1.25rem!important}.my-md-4{margin-top:1.875rem!important;margin-bottom:1.875rem!important}.my-md-5{margin-top:3.75rem!important;margin-bottom:3.75rem!important}.my-md-auto{margin-top:auto!important;margin-bottom:auto!important}.mt-md-0{margin-top:0!important}.mt-md-1{margin-top:.3125rem!important}.mt-md-2{margin-top:.625rem!important}.mt-md-3{margin-top:1.25rem!important}.mt-md-4{margin-top:1.875rem!important}.mt-md-5{margin-top:3.75rem!important}.mt-md-auto{margin-top:auto!important}.me-md-0{margin-left:0!important}.me-md-1{margin-left:.3125rem!important}.me-md-2{margin-left:.625rem!important}.me-md-3{margin-left:1.25rem!important}.me-md-4{margin-left:1.875rem!important}.me-md-5{margin-left:3.75rem!important}.me-md-auto{margin-left:auto!important}.mb-md-0{margin-bottom:0!important}.mb-md-1{margin-bottom:.3125rem!important}.mb-md-2{margin-bottom:.625rem!important}.mb-md-3{margin-bottom:1.25rem!important}.mb-md-4{margin-bottom:1.875rem!important}.mb-md-5{margin-bottom:3.75rem!important}.mb-md-auto{margin-bottom:auto!important}.ms-md-0{margin-right:0!important}.ms-md-1{margin-right:.3125rem!important}.ms-md-2{margin-right:.625rem!important}.ms-md-3{margin-right:1.25rem!important}.ms-md-4{margin-right:1.875rem!important}.ms-md-5{margin-right:3.75rem!important}.ms-md-auto{margin-right:auto!important}.m-md-n1{margin:-.3125rem!important}.m-md-n2{margin:-.625rem!important}.m-md-n3{margin:-1.25rem!important}.m-md-n4{margin:-1.875rem!important}.m-md-n5{margin:-3.75rem!important}.mx-md-n1{margin-left:-.3125rem!important;margin-right:-.3125rem!important}.mx-md-n2{margin-left:-.625rem!important;margin-right:-.625rem!important}.mx-md-n3{margin-left:-1.25rem!important;margin-right:-1.25rem!important}.mx-md-n4{margin-left:-1.875rem!important;margin-right:-1.875rem!important}.mx-md-n5{margin-left:-3.75rem!important;margin-right:-3.75rem!important}.my-md-n1{margin-top:-.3125rem!important;margin-bottom:-.3125rem!important}.my-md-n2{margin-top:-.625rem!important;margin-bottom:-.625rem!important}.my-md-n3{margin-top:-1.25rem!important;margin-bottom:-1.25rem!important}.my-md-n4{margin-top:-1.875rem!important;margin-bottom:-1.875rem!important}.my-md-n5{margin-top:-3.75rem!important;margin-bottom:-3.75rem!important}.mt-md-n1{margin-top:-.3125rem!important}.mt-md-n2{margin-top:-.625rem!important}.mt-md-n3{margin-top:-1.25rem!important}.mt-md-n4{margin-top:-1.875rem!important}.mt-md-n5{margin-top:-3.75rem!important}.me-md-n1{margin-left:-.3125rem!important}.me-md-n2{margin-left:-.625rem!important}.me-md-n3{margin-left:-1.25rem!important}.me-md-n4{margin-left:-1.875rem!important}.me-md-n5{margin-left:-3.75rem!important}.mb-md-n1{margin-bottom:-.3125rem!important}.mb-md-n2{margin-bottom:-.625rem!important}.mb-md-n3{margin-bottom:-1.25rem!important}.mb-md-n4{margin-bottom:-1.875rem!important}.mb-md-n5{margin-bottom:-3.75rem!important}.ms-md-n1{margin-right:-.3125rem!important}.ms-md-n2{margin-right:-.625rem!important}.ms-md-n3{margin-right:-1.25rem!important}.ms-md-n4{margin-right:-1.875rem!important}.ms-md-n5{margin-right:-3.75rem!important}.p-md-0{padding:0!important}.p-md-1{padding:.3125rem!important}.p-md-2{padding:.625rem!important}.p-md-3{padding:1.25rem!important}.p-md-4{padding:1.875rem!important}.p-md-5{padding:3.75rem!important}.px-md-0{padding-left:0!important;padding-right:0!important}.px-md-1{padding-left:.3125rem!important;padding-right:.3125rem!important}.px-md-2{padding-left:.625rem!important;padding-right:.625rem!important}.px-md-3{padding-left:1.25rem!important;padding-right:1.25rem!important}.px-md-4{padding-left:1.875rem!important;padding-right:1.875rem!important}.px-md-5{padding-left:3.75rem!important;padding-right:3.75rem!important}.py-md-0{padding-top:0!important;padding-bottom:0!important}.py-md-1{padding-top:.3125rem!important;padding-bottom:.3125rem!important}.py-md-2{padding-top:.625rem!important;padding-bottom:.625rem!important}.py-md-3{padding-top:1.25rem!important;padding-bottom:1.25rem!important}.py-md-4{padding-top:1.875rem!important;padding-bottom:1.875rem!important}.py-md-5{padding-top:3.75rem!important;padding-bottom:3.75rem!important}.pt-md-0{padding-top:0!important}.pt-md-1{padding-top:.3125rem!important}.pt-md-2{padding-top:.625rem!important}.pt-md-3{padding-top:1.25rem!important}.pt-md-4{padding-top:1.875rem!important}.pt-md-5{padding-top:3.75rem!important}.pe-md-0{padding-left:0!important}.pe-md-1{padding-left:.3125rem!important}.pe-md-2{padding-left:.625rem!important}.pe-md-3{padding-left:1.25rem!important}.pe-md-4{padding-left:1.875rem!important}.pe-md-5{padding-left:3.75rem!important}.pb-md-0{padding-bottom:0!important}.pb-md-1{padding-bottom:.3125rem!important}.pb-md-2{padding-bottom:.625rem!important}.pb-md-3{padding-bottom:1.25rem!important}.pb-md-4{padding-bottom:1.875rem!important}.pb-md-5{padding-bottom:3.75rem!important}.ps-md-0{padding-right:0!important}.ps-md-1{padding-right:.3125rem!important}.ps-md-2{padding-right:.625rem!important}.ps-md-3{padding-right:1.25rem!important}.ps-md-4{padding-right:1.875rem!important}.ps-md-5{padding-right:3.75rem!important}.gap-md-0{gap:0!important}.gap-md-1{gap:.3125rem!important}.gap-md-2{gap:.625rem!important}.gap-md-3{gap:1.25rem!important}.gap-md-4{gap:1.875rem!important}.gap-md-5{gap:3.75rem!important}.row-gap-md-0{row-gap:0!important}.row-gap-md-1{row-gap:.3125rem!important}.row-gap-md-2{row-gap:.625rem!important}.row-gap-md-3{row-gap:1.25rem!important}.row-gap-md-4{row-gap:1.875rem!important}.row-gap-md-5{row-gap:3.75rem!important}.column-gap-md-0{-webkit-column-gap:0!important;-moz-column-gap:0!important;column-gap:0!important}.column-gap-md-1{-webkit-column-gap:.3125rem!important;-moz-column-gap:.3125rem!important;column-gap:.3125rem!important}.column-gap-md-2{-webkit-column-gap:.625rem!important;-moz-column-gap:.625rem!important;column-gap:.625rem!important}.column-gap-md-3{-webkit-column-gap:1.25rem!important;-moz-column-gap:1.25rem!important;column-gap:1.25rem!important}.column-gap-md-4{-webkit-column-gap:1.875rem!important;-moz-column-gap:1.875rem!important;column-gap:1.875rem!important}.column-gap-md-5{-webkit-column-gap:3.75rem!important;-moz-column-gap:3.75rem!important;column-gap:3.75rem!important}.text-md-start{text-align:right!important}.text-md-end{text-align:left!important}.text-md-center{text-align:center!important}}@media (min-width:992px){.float-lg-start{float:right!important}.float-lg-end{float:left!important}.float-lg-none{float:none!important}.object-fit-lg-contain{-o-object-fit:contain!important;object-fit:contain!important}.object-fit-lg-cover{-o-object-fit:cover!important;object-fit:cover!important}.object-fit-lg-fill{-o-object-fit:fill!important;object-fit:fill!important}.object-fit-lg-scale{-o-object-fit:scale-down!important;object-fit:scale-down!important}.object-fit-lg-none{-o-object-fit:none!important;object-fit:none!important}.d-lg-inline{display:inline!important}.d-lg-inline-block{display:inline-block!important}.d-lg-block{display:block!important}.d-lg-grid{display:grid!important}.d-lg-inline-grid{display:inline-grid!important}.d-lg-table{display:table!important}.d-lg-table-row{display:table-row!important}.d-lg-table-cell{display:table-cell!important}.d-lg-flex{display:-webkit-box!important;display:-ms-flexbox!important;display:flex!important}.d-lg-inline-flex{display:-webkit-inline-box!important;display:-ms-inline-flexbox!important;display:inline-flex!important}.d-lg-none{display:none!important}.flex-lg-fill{-webkit-box-flex:1!important;-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-lg-row{-webkit-box-orient:horizontal!important;-webkit-box-direction:normal!important;-ms-flex-direction:row!important;flex-direction:row!important}.flex-lg-column{-webkit-box-orient:vertical!important;-webkit-box-direction:normal!important;-ms-flex-direction:column!important;flex-direction:column!important}.flex-lg-row-reverse{-webkit-box-orient:horizontal!important;-webkit-box-direction:reverse!important;-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-lg-column-reverse{-webkit-box-orient:vertical!important;-webkit-box-direction:reverse!important;-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-lg-grow-0{-webkit-box-flex:0!important;-ms-flex-positive:0!important;flex-grow:0!important}.flex-lg-grow-1{-webkit-box-flex:1!important;-ms-flex-positive:1!important;flex-grow:1!important}.flex-lg-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-lg-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.flex-lg-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-lg-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-lg-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.justify-content-lg-start{-webkit-box-pack:start!important;-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-lg-end{-webkit-box-pack:end!important;-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-lg-center{-webkit-box-pack:center!important;-ms-flex-pack:center!important;justify-content:center!important}.justify-content-lg-between{-webkit-box-pack:justify!important;-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-lg-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.justify-content-lg-evenly{-webkit-box-pack:space-evenly!important;-ms-flex-pack:space-evenly!important;justify-content:space-evenly!important}.align-items-lg-start{-webkit-box-align:start!important;-ms-flex-align:start!important;align-items:flex-start!important}.align-items-lg-end{-webkit-box-align:end!important;-ms-flex-align:end!important;align-items:flex-end!important}.align-items-lg-center{-webkit-box-align:center!important;-ms-flex-align:center!important;align-items:center!important}.align-items-lg-baseline{-webkit-box-align:baseline!important;-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-lg-stretch{-webkit-box-align:stretch!important;-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-lg-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-lg-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-lg-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-lg-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-lg-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-lg-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-lg-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.align-self-lg-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-lg-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-lg-center{-ms-flex-item-align:center!important;align-self:center!important}.align-self-lg-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-lg-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}.order-lg-first{-webkit-box-ordinal-group:0!important;-ms-flex-order:-1!important;order:-1!important}.order-lg-0{-webkit-box-ordinal-group:1!important;-ms-flex-order:0!important;order:0!important}.order-lg-1{-webkit-box-ordinal-group:2!important;-ms-flex-order:1!important;order:1!important}.order-lg-2{-webkit-box-ordinal-group:3!important;-ms-flex-order:2!important;order:2!important}.order-lg-3{-webkit-box-ordinal-group:4!important;-ms-flex-order:3!important;order:3!important}.order-lg-4{-webkit-box-ordinal-group:5!important;-ms-flex-order:4!important;order:4!important}.order-lg-5{-webkit-box-ordinal-group:6!important;-ms-flex-order:5!important;order:5!important}.order-lg-last{-webkit-box-ordinal-group:7!important;-ms-flex-order:6!important;order:6!important}.m-lg-0{margin:0!important}.m-lg-1{margin:.3125rem!important}.m-lg-2{margin:.625rem!important}.m-lg-3{margin:1.25rem!important}.m-lg-4{margin:1.875rem!important}.m-lg-5{margin:3.75rem!important}.m-lg-auto{margin:auto!important}.mx-lg-0{margin-left:0!important;margin-right:0!important}.mx-lg-1{margin-left:.3125rem!important;margin-right:.3125rem!important}.mx-lg-2{margin-left:.625rem!important;margin-right:.625rem!important}.mx-lg-3{margin-left:1.25rem!important;margin-right:1.25rem!important}.mx-lg-4{margin-left:1.875rem!important;margin-right:1.875rem!important}.mx-lg-5{margin-left:3.75rem!important;margin-right:3.75rem!important}.mx-lg-auto{margin-left:auto!important;margin-right:auto!important}.my-lg-0{margin-top:0!important;margin-bottom:0!important}.my-lg-1{margin-top:.3125rem!important;margin-bottom:.3125rem!important}.my-lg-2{margin-top:.625rem!important;margin-bottom:.625rem!important}.my-lg-3{margin-top:1.25rem!important;margin-bottom:1.25rem!important}.my-lg-4{margin-top:1.875rem!important;margin-bottom:1.875rem!important}.my-lg-5{margin-top:3.75rem!important;margin-bottom:3.75rem!important}.my-lg-auto{margin-top:auto!important;margin-bottom:auto!important}.mt-lg-0{margin-top:0!important}.mt-lg-1{margin-top:.3125rem!important}.mt-lg-2{margin-top:.625rem!important}.mt-lg-3{margin-top:1.25rem!important}.mt-lg-4{margin-top:1.875rem!important}.mt-lg-5{margin-top:3.75rem!important}.mt-lg-auto{margin-top:auto!important}.me-lg-0{margin-left:0!important}.me-lg-1{margin-left:.3125rem!important}.me-lg-2{margin-left:.625rem!important}.me-lg-3{margin-left:1.25rem!important}.me-lg-4{margin-left:1.875rem!important}.me-lg-5{margin-left:3.75rem!important}.me-lg-auto{margin-left:auto!important}.mb-lg-0{margin-bottom:0!important}.mb-lg-1{margin-bottom:.3125rem!important}.mb-lg-2{margin-bottom:.625rem!important}.mb-lg-3{margin-bottom:1.25rem!important}.mb-lg-4{margin-bottom:1.875rem!important}.mb-lg-5{margin-bottom:3.75rem!important}.mb-lg-auto{margin-bottom:auto!important}.ms-lg-0{margin-right:0!important}.ms-lg-1{margin-right:.3125rem!important}.ms-lg-2{margin-right:.625rem!important}.ms-lg-3{margin-right:1.25rem!important}.ms-lg-4{margin-right:1.875rem!important}.ms-lg-5{margin-right:3.75rem!important}.ms-lg-auto{margin-right:auto!important}.m-lg-n1{margin:-.3125rem!important}.m-lg-n2{margin:-.625rem!important}.m-lg-n3{margin:-1.25rem!important}.m-lg-n4{margin:-1.875rem!important}.m-lg-n5{margin:-3.75rem!important}.mx-lg-n1{margin-left:-.3125rem!important;margin-right:-.3125rem!important}.mx-lg-n2{margin-left:-.625rem!important;margin-right:-.625rem!important}.mx-lg-n3{margin-left:-1.25rem!important;margin-right:-1.25rem!important}.mx-lg-n4{margin-left:-1.875rem!important;margin-right:-1.875rem!important}.mx-lg-n5{margin-left:-3.75rem!important;margin-right:-3.75rem!important}.my-lg-n1{margin-top:-.3125rem!important;margin-bottom:-.3125rem!important}.my-lg-n2{margin-top:-.625rem!important;margin-bottom:-.625rem!important}.my-lg-n3{margin-top:-1.25rem!important;margin-bottom:-1.25rem!important}.my-lg-n4{margin-top:-1.875rem!important;margin-bottom:-1.875rem!important}.my-lg-n5{margin-top:-3.75rem!important;margin-bottom:-3.75rem!important}.mt-lg-n1{margin-top:-.3125rem!important}.mt-lg-n2{margin-top:-.625rem!important}.mt-lg-n3{margin-top:-1.25rem!important}.mt-lg-n4{margin-top:-1.875rem!important}.mt-lg-n5{margin-top:-3.75rem!important}.me-lg-n1{margin-left:-.3125rem!important}.me-lg-n2{margin-left:-.625rem!important}.me-lg-n3{margin-left:-1.25rem!important}.me-lg-n4{margin-left:-1.875rem!important}.me-lg-n5{margin-left:-3.75rem!important}.mb-lg-n1{margin-bottom:-.3125rem!important}.mb-lg-n2{margin-bottom:-.625rem!important}.mb-lg-n3{margin-bottom:-1.25rem!important}.mb-lg-n4{margin-bottom:-1.875rem!important}.mb-lg-n5{margin-bottom:-3.75rem!important}.ms-lg-n1{margin-right:-.3125rem!important}.ms-lg-n2{margin-right:-.625rem!important}.ms-lg-n3{margin-right:-1.25rem!important}.ms-lg-n4{margin-right:-1.875rem!important}.ms-lg-n5{margin-right:-3.75rem!important}.p-lg-0{padding:0!important}.p-lg-1{padding:.3125rem!important}.p-lg-2{padding:.625rem!important}.p-lg-3{padding:1.25rem!important}.p-lg-4{padding:1.875rem!important}.p-lg-5{padding:3.75rem!important}.px-lg-0{padding-left:0!important;padding-right:0!important}.px-lg-1{padding-left:.3125rem!important;padding-right:.3125rem!important}.px-lg-2{padding-left:.625rem!important;padding-right:.625rem!important}.px-lg-3{padding-left:1.25rem!important;padding-right:1.25rem!important}.px-lg-4{padding-left:1.875rem!important;padding-right:1.875rem!important}.px-lg-5{padding-left:3.75rem!important;padding-right:3.75rem!important}.py-lg-0{padding-top:0!important;padding-bottom:0!important}.py-lg-1{padding-top:.3125rem!important;padding-bottom:.3125rem!important}.py-lg-2{padding-top:.625rem!important;padding-bottom:.625rem!important}.py-lg-3{padding-top:1.25rem!important;padding-bottom:1.25rem!important}.py-lg-4{padding-top:1.875rem!important;padding-bottom:1.875rem!important}.py-lg-5{padding-top:3.75rem!important;padding-bottom:3.75rem!important}.pt-lg-0{padding-top:0!important}.pt-lg-1{padding-top:.3125rem!important}.pt-lg-2{padding-top:.625rem!important}.pt-lg-3{padding-top:1.25rem!important}.pt-lg-4{padding-top:1.875rem!important}.pt-lg-5{padding-top:3.75rem!important}.pe-lg-0{padding-left:0!important}.pe-lg-1{padding-left:.3125rem!important}.pe-lg-2{padding-left:.625rem!important}.pe-lg-3{padding-left:1.25rem!important}.pe-lg-4{padding-left:1.875rem!important}.pe-lg-5{padding-left:3.75rem!important}.pb-lg-0{padding-bottom:0!important}.pb-lg-1{padding-bottom:.3125rem!important}.pb-lg-2{padding-bottom:.625rem!important}.pb-lg-3{padding-bottom:1.25rem!important}.pb-lg-4{padding-bottom:1.875rem!important}.pb-lg-5{padding-bottom:3.75rem!important}.ps-lg-0{padding-right:0!important}.ps-lg-1{padding-right:.3125rem!important}.ps-lg-2{padding-right:.625rem!important}.ps-lg-3{padding-right:1.25rem!important}.ps-lg-4{padding-right:1.875rem!important}.ps-lg-5{padding-right:3.75rem!important}.gap-lg-0{gap:0!important}.gap-lg-1{gap:.3125rem!important}.gap-lg-2{gap:.625rem!important}.gap-lg-3{gap:1.25rem!important}.gap-lg-4{gap:1.875rem!important}.gap-lg-5{gap:3.75rem!important}.row-gap-lg-0{row-gap:0!important}.row-gap-lg-1{row-gap:.3125rem!important}.row-gap-lg-2{row-gap:.625rem!important}.row-gap-lg-3{row-gap:1.25rem!important}.row-gap-lg-4{row-gap:1.875rem!important}.row-gap-lg-5{row-gap:3.75rem!important}.column-gap-lg-0{-webkit-column-gap:0!important;-moz-column-gap:0!important;column-gap:0!important}.column-gap-lg-1{-webkit-column-gap:.3125rem!important;-moz-column-gap:.3125rem!important;column-gap:.3125rem!important}.column-gap-lg-2{-webkit-column-gap:.625rem!important;-moz-column-gap:.625rem!important;column-gap:.625rem!important}.column-gap-lg-3{-webkit-column-gap:1.25rem!important;-moz-column-gap:1.25rem!important;column-gap:1.25rem!important}.column-gap-lg-4{-webkit-column-gap:1.875rem!important;-moz-column-gap:1.875rem!important;column-gap:1.875rem!important}.column-gap-lg-5{-webkit-column-gap:3.75rem!important;-moz-column-gap:3.75rem!important;column-gap:3.75rem!important}.text-lg-start{text-align:right!important}.text-lg-end{text-align:left!important}.text-lg-center{text-align:center!important}}@media (min-width:1200px){.float-xl-start{float:right!important}.float-xl-end{float:left!important}.float-xl-none{float:none!important}.object-fit-xl-contain{-o-object-fit:contain!important;object-fit:contain!important}.object-fit-xl-cover{-o-object-fit:cover!important;object-fit:cover!important}.object-fit-xl-fill{-o-object-fit:fill!important;object-fit:fill!important}.object-fit-xl-scale{-o-object-fit:scale-down!important;object-fit:scale-down!important}.object-fit-xl-none{-o-object-fit:none!important;object-fit:none!important}.d-xl-inline{display:inline!important}.d-xl-inline-block{display:inline-block!important}.d-xl-block{display:block!important}.d-xl-grid{display:grid!important}.d-xl-inline-grid{display:inline-grid!important}.d-xl-table{display:table!important}.d-xl-table-row{display:table-row!important}.d-xl-table-cell{display:table-cell!important}.d-xl-flex{display:-webkit-box!important;display:-ms-flexbox!important;display:flex!important}.d-xl-inline-flex{display:-webkit-inline-box!important;display:-ms-inline-flexbox!important;display:inline-flex!important}.d-xl-none{display:none!important}.flex-xl-fill{-webkit-box-flex:1!important;-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-xl-row{-webkit-box-orient:horizontal!important;-webkit-box-direction:normal!important;-ms-flex-direction:row!important;flex-direction:row!important}.flex-xl-column{-webkit-box-orient:vertical!important;-webkit-box-direction:normal!important;-ms-flex-direction:column!important;flex-direction:column!important}.flex-xl-row-reverse{-webkit-box-orient:horizontal!important;-webkit-box-direction:reverse!important;-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-xl-column-reverse{-webkit-box-orient:vertical!important;-webkit-box-direction:reverse!important;-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-xl-grow-0{-webkit-box-flex:0!important;-ms-flex-positive:0!important;flex-grow:0!important}.flex-xl-grow-1{-webkit-box-flex:1!important;-ms-flex-positive:1!important;flex-grow:1!important}.flex-xl-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-xl-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.flex-xl-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-xl-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-xl-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.justify-content-xl-start{-webkit-box-pack:start!important;-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-xl-end{-webkit-box-pack:end!important;-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-xl-center{-webkit-box-pack:center!important;-ms-flex-pack:center!important;justify-content:center!important}.justify-content-xl-between{-webkit-box-pack:justify!important;-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-xl-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.justify-content-xl-evenly{-webkit-box-pack:space-evenly!important;-ms-flex-pack:space-evenly!important;justify-content:space-evenly!important}.align-items-xl-start{-webkit-box-align:start!important;-ms-flex-align:start!important;align-items:flex-start!important}.align-items-xl-end{-webkit-box-align:end!important;-ms-flex-align:end!important;align-items:flex-end!important}.align-items-xl-center{-webkit-box-align:center!important;-ms-flex-align:center!important;align-items:center!important}.align-items-xl-baseline{-webkit-box-align:baseline!important;-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-xl-stretch{-webkit-box-align:stretch!important;-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-xl-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-xl-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-xl-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-xl-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-xl-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-xl-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-xl-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.align-self-xl-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-xl-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-xl-center{-ms-flex-item-align:center!important;align-self:center!important}.align-self-xl-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-xl-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}.order-xl-first{-webkit-box-ordinal-group:0!important;-ms-flex-order:-1!important;order:-1!important}.order-xl-0{-webkit-box-ordinal-group:1!important;-ms-flex-order:0!important;order:0!important}.order-xl-1{-webkit-box-ordinal-group:2!important;-ms-flex-order:1!important;order:1!important}.order-xl-2{-webkit-box-ordinal-group:3!important;-ms-flex-order:2!important;order:2!important}.order-xl-3{-webkit-box-ordinal-group:4!important;-ms-flex-order:3!important;order:3!important}.order-xl-4{-webkit-box-ordinal-group:5!important;-ms-flex-order:4!important;order:4!important}.order-xl-5{-webkit-box-ordinal-group:6!important;-ms-flex-order:5!important;order:5!important}.order-xl-last{-webkit-box-ordinal-group:7!important;-ms-flex-order:6!important;order:6!important}.m-xl-0{margin:0!important}.m-xl-1{margin:.3125rem!important}.m-xl-2{margin:.625rem!important}.m-xl-3{margin:1.25rem!important}.m-xl-4{margin:1.875rem!important}.m-xl-5{margin:3.75rem!important}.m-xl-auto{margin:auto!important}.mx-xl-0{margin-left:0!important;margin-right:0!important}.mx-xl-1{margin-left:.3125rem!important;margin-right:.3125rem!important}.mx-xl-2{margin-left:.625rem!important;margin-right:.625rem!important}.mx-xl-3{margin-left:1.25rem!important;margin-right:1.25rem!important}.mx-xl-4{margin-left:1.875rem!important;margin-right:1.875rem!important}.mx-xl-5{margin-left:3.75rem!important;margin-right:3.75rem!important}.mx-xl-auto{margin-left:auto!important;margin-right:auto!important}.my-xl-0{margin-top:0!important;margin-bottom:0!important}.my-xl-1{margin-top:.3125rem!important;margin-bottom:.3125rem!important}.my-xl-2{margin-top:.625rem!important;margin-bottom:.625rem!important}.my-xl-3{margin-top:1.25rem!important;margin-bottom:1.25rem!important}.my-xl-4{margin-top:1.875rem!important;margin-bottom:1.875rem!important}.my-xl-5{margin-top:3.75rem!important;margin-bottom:3.75rem!important}.my-xl-auto{margin-top:auto!important;margin-bottom:auto!important}.mt-xl-0{margin-top:0!important}.mt-xl-1{margin-top:.3125rem!important}.mt-xl-2{margin-top:.625rem!important}.mt-xl-3{margin-top:1.25rem!important}.mt-xl-4{margin-top:1.875rem!important}.mt-xl-5{margin-top:3.75rem!important}.mt-xl-auto{margin-top:auto!important}.me-xl-0{margin-left:0!important}.me-xl-1{margin-left:.3125rem!important}.me-xl-2{margin-left:.625rem!important}.me-xl-3{margin-left:1.25rem!important}.me-xl-4{margin-left:1.875rem!important}.me-xl-5{margin-left:3.75rem!important}.me-xl-auto{margin-left:auto!important}.mb-xl-0{margin-bottom:0!important}.mb-xl-1{margin-bottom:.3125rem!important}.mb-xl-2{margin-bottom:.625rem!important}.mb-xl-3{margin-bottom:1.25rem!important}.mb-xl-4{margin-bottom:1.875rem!important}.mb-xl-5{margin-bottom:3.75rem!important}.mb-xl-auto{margin-bottom:auto!important}.ms-xl-0{margin-right:0!important}.ms-xl-1{margin-right:.3125rem!important}.ms-xl-2{margin-right:.625rem!important}.ms-xl-3{margin-right:1.25rem!important}.ms-xl-4{margin-right:1.875rem!important}.ms-xl-5{margin-right:3.75rem!important}.ms-xl-auto{margin-right:auto!important}.m-xl-n1{margin:-.3125rem!important}.m-xl-n2{margin:-.625rem!important}.m-xl-n3{margin:-1.25rem!important}.m-xl-n4{margin:-1.875rem!important}.m-xl-n5{margin:-3.75rem!important}.mx-xl-n1{margin-left:-.3125rem!important;margin-right:-.3125rem!important}.mx-xl-n2{margin-left:-.625rem!important;margin-right:-.625rem!important}.mx-xl-n3{margin-left:-1.25rem!important;margin-right:-1.25rem!important}.mx-xl-n4{margin-left:-1.875rem!important;margin-right:-1.875rem!important}.mx-xl-n5{margin-left:-3.75rem!important;margin-right:-3.75rem!important}.my-xl-n1{margin-top:-.3125rem!important;margin-bottom:-.3125rem!important}.my-xl-n2{margin-top:-.625rem!important;margin-bottom:-.625rem!important}.my-xl-n3{margin-top:-1.25rem!important;margin-bottom:-1.25rem!important}.my-xl-n4{margin-top:-1.875rem!important;margin-bottom:-1.875rem!important}.my-xl-n5{margin-top:-3.75rem!important;margin-bottom:-3.75rem!important}.mt-xl-n1{margin-top:-.3125rem!important}.mt-xl-n2{margin-top:-.625rem!important}.mt-xl-n3{margin-top:-1.25rem!important}.mt-xl-n4{margin-top:-1.875rem!important}.mt-xl-n5{margin-top:-3.75rem!important}.me-xl-n1{margin-left:-.3125rem!important}.me-xl-n2{margin-left:-.625rem!important}.me-xl-n3{margin-left:-1.25rem!important}.me-xl-n4{margin-left:-1.875rem!important}.me-xl-n5{margin-left:-3.75rem!important}.mb-xl-n1{margin-bottom:-.3125rem!important}.mb-xl-n2{margin-bottom:-.625rem!important}.mb-xl-n3{margin-bottom:-1.25rem!important}.mb-xl-n4{margin-bottom:-1.875rem!important}.mb-xl-n5{margin-bottom:-3.75rem!important}.ms-xl-n1{margin-right:-.3125rem!important}.ms-xl-n2{margin-right:-.625rem!important}.ms-xl-n3{margin-right:-1.25rem!important}.ms-xl-n4{margin-right:-1.875rem!important}.ms-xl-n5{margin-right:-3.75rem!important}.p-xl-0{padding:0!important}.p-xl-1{padding:.3125rem!important}.p-xl-2{padding:.625rem!important}.p-xl-3{padding:1.25rem!important}.p-xl-4{padding:1.875rem!important}.p-xl-5{padding:3.75rem!important}.px-xl-0{padding-left:0!important;padding-right:0!important}.px-xl-1{padding-left:.3125rem!important;padding-right:.3125rem!important}.px-xl-2{padding-left:.625rem!important;padding-right:.625rem!important}.px-xl-3{padding-left:1.25rem!important;padding-right:1.25rem!important}.px-xl-4{padding-left:1.875rem!important;padding-right:1.875rem!important}.px-xl-5{padding-left:3.75rem!important;padding-right:3.75rem!important}.py-xl-0{padding-top:0!important;padding-bottom:0!important}.py-xl-1{padding-top:.3125rem!important;padding-bottom:.3125rem!important}.py-xl-2{padding-top:.625rem!important;padding-bottom:.625rem!important}.py-xl-3{padding-top:1.25rem!important;padding-bottom:1.25rem!important}.py-xl-4{padding-top:1.875rem!important;padding-bottom:1.875rem!important}.py-xl-5{padding-top:3.75rem!important;padding-bottom:3.75rem!important}.pt-xl-0{padding-top:0!important}.pt-xl-1{padding-top:.3125rem!important}.pt-xl-2{padding-top:.625rem!important}.pt-xl-3{padding-top:1.25rem!important}.pt-xl-4{padding-top:1.875rem!important}.pt-xl-5{padding-top:3.75rem!important}.pe-xl-0{padding-left:0!important}.pe-xl-1{padding-left:.3125rem!important}.pe-xl-2{padding-left:.625rem!important}.pe-xl-3{padding-left:1.25rem!important}.pe-xl-4{padding-left:1.875rem!important}.pe-xl-5{padding-left:3.75rem!important}.pb-xl-0{padding-bottom:0!important}.pb-xl-1{padding-bottom:.3125rem!important}.pb-xl-2{padding-bottom:.625rem!important}.pb-xl-3{padding-bottom:1.25rem!important}.pb-xl-4{padding-bottom:1.875rem!important}.pb-xl-5{padding-bottom:3.75rem!important}.ps-xl-0{padding-right:0!important}.ps-xl-1{padding-right:.3125rem!important}.ps-xl-2{padding-right:.625rem!important}.ps-xl-3{padding-right:1.25rem!important}.ps-xl-4{padding-right:1.875rem!important}.ps-xl-5{padding-right:3.75rem!important}.gap-xl-0{gap:0!important}.gap-xl-1{gap:.3125rem!important}.gap-xl-2{gap:.625rem!important}.gap-xl-3{gap:1.25rem!important}.gap-xl-4{gap:1.875rem!important}.gap-xl-5{gap:3.75rem!important}.row-gap-xl-0{row-gap:0!important}.row-gap-xl-1{row-gap:.3125rem!important}.row-gap-xl-2{row-gap:.625rem!important}.row-gap-xl-3{row-gap:1.25rem!important}.row-gap-xl-4{row-gap:1.875rem!important}.row-gap-xl-5{row-gap:3.75rem!important}.column-gap-xl-0{-webkit-column-gap:0!important;-moz-column-gap:0!important;column-gap:0!important}.column-gap-xl-1{-webkit-column-gap:.3125rem!important;-moz-column-gap:.3125rem!important;column-gap:.3125rem!important}.column-gap-xl-2{-webkit-column-gap:.625rem!important;-moz-column-gap:.625rem!important;column-gap:.625rem!important}.column-gap-xl-3{-webkit-column-gap:1.25rem!important;-moz-column-gap:1.25rem!important;column-gap:1.25rem!important}.column-gap-xl-4{-webkit-column-gap:1.875rem!important;-moz-column-gap:1.875rem!important;column-gap:1.875rem!important}.column-gap-xl-5{-webkit-column-gap:3.75rem!important;-moz-column-gap:3.75rem!important;column-gap:3.75rem!important}.text-xl-start{text-align:right!important}.text-xl-end{text-align:left!important}.text-xl-center{text-align:center!important}}@media (min-width:1400px){.float-xxl-start{float:right!important}.float-xxl-end{float:left!important}.float-xxl-none{float:none!important}.object-fit-xxl-contain{-o-object-fit:contain!important;object-fit:contain!important}.object-fit-xxl-cover{-o-object-fit:cover!important;object-fit:cover!important}.object-fit-xxl-fill{-o-object-fit:fill!important;object-fit:fill!important}.object-fit-xxl-scale{-o-object-fit:scale-down!important;object-fit:scale-down!important}.object-fit-xxl-none{-o-object-fit:none!important;object-fit:none!important}.d-xxl-inline{display:inline!important}.d-xxl-inline-block{display:inline-block!important}.d-xxl-block{display:block!important}.d-xxl-grid{display:grid!important}.d-xxl-inline-grid{display:inline-grid!important}.d-xxl-table{display:table!important}.d-xxl-table-row{display:table-row!important}.d-xxl-table-cell{display:table-cell!important}.d-xxl-flex{display:-webkit-box!important;display:-ms-flexbox!important;display:flex!important}.d-xxl-inline-flex{display:-webkit-inline-box!important;display:-ms-inline-flexbox!important;display:inline-flex!important}.d-xxl-none{display:none!important}.flex-xxl-fill{-webkit-box-flex:1!important;-ms-flex:1 1 auto!important;flex:1 1 auto!important}.flex-xxl-row{-webkit-box-orient:horizontal!important;-webkit-box-direction:normal!important;-ms-flex-direction:row!important;flex-direction:row!important}.flex-xxl-column{-webkit-box-orient:vertical!important;-webkit-box-direction:normal!important;-ms-flex-direction:column!important;flex-direction:column!important}.flex-xxl-row-reverse{-webkit-box-orient:horizontal!important;-webkit-box-direction:reverse!important;-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-xxl-column-reverse{-webkit-box-orient:vertical!important;-webkit-box-direction:reverse!important;-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-xxl-grow-0{-webkit-box-flex:0!important;-ms-flex-positive:0!important;flex-grow:0!important}.flex-xxl-grow-1{-webkit-box-flex:1!important;-ms-flex-positive:1!important;flex-grow:1!important}.flex-xxl-shrink-0{-ms-flex-negative:0!important;flex-shrink:0!important}.flex-xxl-shrink-1{-ms-flex-negative:1!important;flex-shrink:1!important}.flex-xxl-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-xxl-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-xxl-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.justify-content-xxl-start{-webkit-box-pack:start!important;-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-xxl-end{-webkit-box-pack:end!important;-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-xxl-center{-webkit-box-pack:center!important;-ms-flex-pack:center!important;justify-content:center!important}.justify-content-xxl-between{-webkit-box-pack:justify!important;-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-xxl-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.justify-content-xxl-evenly{-webkit-box-pack:space-evenly!important;-ms-flex-pack:space-evenly!important;justify-content:space-evenly!important}.align-items-xxl-start{-webkit-box-align:start!important;-ms-flex-align:start!important;align-items:flex-start!important}.align-items-xxl-end{-webkit-box-align:end!important;-ms-flex-align:end!important;align-items:flex-end!important}.align-items-xxl-center{-webkit-box-align:center!important;-ms-flex-align:center!important;align-items:center!important}.align-items-xxl-baseline{-webkit-box-align:baseline!important;-ms-flex-align:baseline!important;align-items:baseline!important}.align-items-xxl-stretch{-webkit-box-align:stretch!important;-ms-flex-align:stretch!important;align-items:stretch!important}.align-content-xxl-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.align-content-xxl-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.align-content-xxl-center{-ms-flex-line-pack:center!important;align-content:center!important}.align-content-xxl-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.align-content-xxl-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.align-content-xxl-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.align-self-xxl-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.align-self-xxl-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.align-self-xxl-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.align-self-xxl-center{-ms-flex-item-align:center!important;align-self:center!important}.align-self-xxl-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.align-self-xxl-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}.order-xxl-first{-webkit-box-ordinal-group:0!important;-ms-flex-order:-1!important;order:-1!important}.order-xxl-0{-webkit-box-ordinal-group:1!important;-ms-flex-order:0!important;order:0!important}.order-xxl-1{-webkit-box-ordinal-group:2!important;-ms-flex-order:1!important;order:1!important}.order-xxl-2{-webkit-box-ordinal-group:3!important;-ms-flex-order:2!important;order:2!important}.order-xxl-3{-webkit-box-ordinal-group:4!important;-ms-flex-order:3!important;order:3!important}.order-xxl-4{-webkit-box-ordinal-group:5!important;-ms-flex-order:4!important;order:4!important}.order-xxl-5{-webkit-box-ordinal-group:6!important;-ms-flex-order:5!important;order:5!important}.order-xxl-last{-webkit-box-ordinal-group:7!important;-ms-flex-order:6!important;order:6!important}.m-xxl-0{margin:0!important}.m-xxl-1{margin:.3125rem!important}.m-xxl-2{margin:.625rem!important}.m-xxl-3{margin:1.25rem!important}.m-xxl-4{margin:1.875rem!important}.m-xxl-5{margin:3.75rem!important}.m-xxl-auto{margin:auto!important}.mx-xxl-0{margin-left:0!important;margin-right:0!important}.mx-xxl-1{margin-left:.3125rem!important;margin-right:.3125rem!important}.mx-xxl-2{margin-left:.625rem!important;margin-right:.625rem!important}.mx-xxl-3{margin-left:1.25rem!important;margin-right:1.25rem!important}.mx-xxl-4{margin-left:1.875rem!important;margin-right:1.875rem!important}.mx-xxl-5{margin-left:3.75rem!important;margin-right:3.75rem!important}.mx-xxl-auto{margin-left:auto!important;margin-right:auto!important}.my-xxl-0{margin-top:0!important;margin-bottom:0!important}.my-xxl-1{margin-top:.3125rem!important;margin-bottom:.3125rem!important}.my-xxl-2{margin-top:.625rem!important;margin-bottom:.625rem!important}.my-xxl-3{margin-top:1.25rem!important;margin-bottom:1.25rem!important}.my-xxl-4{margin-top:1.875rem!important;margin-bottom:1.875rem!important}.my-xxl-5{margin-top:3.75rem!important;margin-bottom:3.75rem!important}.my-xxl-auto{margin-top:auto!important;margin-bottom:auto!important}.mt-xxl-0{margin-top:0!important}.mt-xxl-1{margin-top:.3125rem!important}.mt-xxl-2{margin-top:.625rem!important}.mt-xxl-3{margin-top:1.25rem!important}.mt-xxl-4{margin-top:1.875rem!important}.mt-xxl-5{margin-top:3.75rem!important}.mt-xxl-auto{margin-top:auto!important}.me-xxl-0{margin-left:0!important}.me-xxl-1{margin-left:.3125rem!important}.me-xxl-2{margin-left:.625rem!important}.me-xxl-3{margin-left:1.25rem!important}.me-xxl-4{margin-left:1.875rem!important}.me-xxl-5{margin-left:3.75rem!important}.me-xxl-auto{margin-left:auto!important}.mb-xxl-0{margin-bottom:0!important}.mb-xxl-1{margin-bottom:.3125rem!important}.mb-xxl-2{margin-bottom:.625rem!important}.mb-xxl-3{margin-bottom:1.25rem!important}.mb-xxl-4{margin-bottom:1.875rem!important}.mb-xxl-5{margin-bottom:3.75rem!important}.mb-xxl-auto{margin-bottom:auto!important}.ms-xxl-0{margin-right:0!important}.ms-xxl-1{margin-right:.3125rem!important}.ms-xxl-2{margin-right:.625rem!important}.ms-xxl-3{margin-right:1.25rem!important}.ms-xxl-4{margin-right:1.875rem!important}.ms-xxl-5{margin-right:3.75rem!important}.ms-xxl-auto{margin-right:auto!important}.m-xxl-n1{margin:-.3125rem!important}.m-xxl-n2{margin:-.625rem!important}.m-xxl-n3{margin:-1.25rem!important}.m-xxl-n4{margin:-1.875rem!important}.m-xxl-n5{margin:-3.75rem!important}.mx-xxl-n1{margin-left:-.3125rem!important;margin-right:-.3125rem!important}.mx-xxl-n2{margin-left:-.625rem!important;margin-right:-.625rem!important}.mx-xxl-n3{margin-left:-1.25rem!important;margin-right:-1.25rem!important}.mx-xxl-n4{margin-left:-1.875rem!important;margin-right:-1.875rem!important}.mx-xxl-n5{margin-left:-3.75rem!important;margin-right:-3.75rem!important}.my-xxl-n1{margin-top:-.3125rem!important;margin-bottom:-.3125rem!important}.my-xxl-n2{margin-top:-.625rem!important;margin-bottom:-.625rem!important}.my-xxl-n3{margin-top:-1.25rem!important;margin-bottom:-1.25rem!important}.my-xxl-n4{margin-top:-1.875rem!important;margin-bottom:-1.875rem!important}.my-xxl-n5{margin-top:-3.75rem!important;margin-bottom:-3.75rem!important}.mt-xxl-n1{margin-top:-.3125rem!important}.mt-xxl-n2{margin-top:-.625rem!important}.mt-xxl-n3{margin-top:-1.25rem!important}.mt-xxl-n4{margin-top:-1.875rem!important}.mt-xxl-n5{margin-top:-3.75rem!important}.me-xxl-n1{margin-left:-.3125rem!important}.me-xxl-n2{margin-left:-.625rem!important}.me-xxl-n3{margin-left:-1.25rem!important}.me-xxl-n4{margin-left:-1.875rem!important}.me-xxl-n5{margin-left:-3.75rem!important}.mb-xxl-n1{margin-bottom:-.3125rem!important}.mb-xxl-n2{margin-bottom:-.625rem!important}.mb-xxl-n3{margin-bottom:-1.25rem!important}.mb-xxl-n4{margin-bottom:-1.875rem!important}.mb-xxl-n5{margin-bottom:-3.75rem!important}.ms-xxl-n1{margin-right:-.3125rem!important}.ms-xxl-n2{margin-right:-.625rem!important}.ms-xxl-n3{margin-right:-1.25rem!important}.ms-xxl-n4{margin-right:-1.875rem!important}.ms-xxl-n5{margin-right:-3.75rem!important}.p-xxl-0{padding:0!important}.p-xxl-1{padding:.3125rem!important}.p-xxl-2{padding:.625rem!important}.p-xxl-3{padding:1.25rem!important}.p-xxl-4{padding:1.875rem!important}.p-xxl-5{padding:3.75rem!important}.px-xxl-0{padding-left:0!important;padding-right:0!important}.px-xxl-1{padding-left:.3125rem!important;padding-right:.3125rem!important}.px-xxl-2{padding-left:.625rem!important;padding-right:.625rem!important}.px-xxl-3{padding-left:1.25rem!important;padding-right:1.25rem!important}.px-xxl-4{padding-left:1.875rem!important;padding-right:1.875rem!important}.px-xxl-5{padding-left:3.75rem!important;padding-right:3.75rem!important}.py-xxl-0{padding-top:0!important;padding-bottom:0!important}.py-xxl-1{padding-top:.3125rem!important;padding-bottom:.3125rem!important}.py-xxl-2{padding-top:.625rem!important;padding-bottom:.625rem!important}.py-xxl-3{padding-top:1.25rem!important;padding-bottom:1.25rem!important}.py-xxl-4{padding-top:1.875rem!important;padding-bottom:1.875rem!important}.py-xxl-5{padding-top:3.75rem!important;padding-bottom:3.75rem!important}.pt-xxl-0{padding-top:0!important}.pt-xxl-1{padding-top:.3125rem!important}.pt-xxl-2{padding-top:.625rem!important}.pt-xxl-3{padding-top:1.25rem!important}.pt-xxl-4{padding-top:1.875rem!important}.pt-xxl-5{padding-top:3.75rem!important}.pe-xxl-0{padding-left:0!important}.pe-xxl-1{padding-left:.3125rem!important}.pe-xxl-2{padding-left:.625rem!important}.pe-xxl-3{padding-left:1.25rem!important}.pe-xxl-4{padding-left:1.875rem!important}.pe-xxl-5{padding-left:3.75rem!important}.pb-xxl-0{padding-bottom:0!important}.pb-xxl-1{padding-bottom:.3125rem!important}.pb-xxl-2{padding-bottom:.625rem!important}.pb-xxl-3{padding-bottom:1.25rem!important}.pb-xxl-4{padding-bottom:1.875rem!important}.pb-xxl-5{padding-bottom:3.75rem!important}.ps-xxl-0{padding-right:0!important}.ps-xxl-1{padding-right:.3125rem!important}.ps-xxl-2{padding-right:.625rem!important}.ps-xxl-3{padding-right:1.25rem!important}.ps-xxl-4{padding-right:1.875rem!important}.ps-xxl-5{padding-right:3.75rem!important}.gap-xxl-0{gap:0!important}.gap-xxl-1{gap:.3125rem!important}.gap-xxl-2{gap:.625rem!important}.gap-xxl-3{gap:1.25rem!important}.gap-xxl-4{gap:1.875rem!important}.gap-xxl-5{gap:3.75rem!important}.row-gap-xxl-0{row-gap:0!important}.row-gap-xxl-1{row-gap:.3125rem!important}.row-gap-xxl-2{row-gap:.625rem!important}.row-gap-xxl-3{row-gap:1.25rem!important}.row-gap-xxl-4{row-gap:1.875rem!important}.row-gap-xxl-5{row-gap:3.75rem!important}.column-gap-xxl-0{-webkit-column-gap:0!important;-moz-column-gap:0!important;column-gap:0!important}.column-gap-xxl-1{-webkit-column-gap:.3125rem!important;-moz-column-gap:.3125rem!important;column-gap:.3125rem!important}.column-gap-xxl-2{-webkit-column-gap:.625rem!important;-moz-column-gap:.625rem!important;column-gap:.625rem!important}.column-gap-xxl-3{-webkit-column-gap:1.25rem!important;-moz-column-gap:1.25rem!important;column-gap:1.25rem!important}.column-gap-xxl-4{-webkit-column-gap:1.875rem!important;-moz-column-gap:1.875rem!important;column-gap:1.875rem!important}.column-gap-xxl-5{-webkit-column-gap:3.75rem!important;-moz-column-gap:3.75rem!important;column-gap:3.75rem!important}.text-xxl-start{text-align:right!important}.text-xxl-end{text-align:left!important}.text-xxl-center{text-align:center!important}}@media (min-width:1200px){.fs-1{font-size:2.1875rem!important}.fs-2{font-size:1.82rem!important}.fs-3{font-size:1.46125rem!important}}@media print{.d-print-inline{display:inline!important}.d-print-inline-block{display:inline-block!important}.d-print-block{display:block!important}.d-print-grid{display:grid!important}.d-print-inline-grid{display:inline-grid!important}.d-print-table{display:table!important}.d-print-table-row{display:table-row!important}.d-print-table-cell{display:table-cell!important}.d-print-flex{display:-webkit-box!important;display:-ms-flexbox!important;display:flex!important}.d-print-inline-flex{display:-webkit-inline-box!important;display:-ms-inline-flexbox!important;display:inline-flex!important}.d-print-none{display:none!important}}.logo-lg img{height:var(--ct-logo-lg-height)}.logo-sm img{height:var(--ct-logo-sm-height)}.logo{display:block;top:0;position:sticky;text-align:center;line-height:var(--ct-topbar-height);padding:0 calc(var(--ct-leftbar-width-sm) * .5 - var(--ct-logo-sm-height) * .7);-webkit-transition:all .25s ease-in-out;transition:all .25s ease-in-out}.logo span.logo-lg{display:block}.logo span.logo-sm{display:none}.logo.logo-light{display:none}.logo.logo-dark{display:block}html[data-bs-theme=dark] .logo.logo-light,html[data-menu-color=brand] .logo.logo-light,html[data-menu-color=dark] .logo.logo-light{display:block}html[data-bs-theme=dark] .logo.logo-dark,html[data-menu-color=brand] .logo.logo-dark,html[data-menu-color=dark] .logo.logo-dark{display:none}.help-box{border-radius:5px;padding:20px;margin:65px 25px 25px;position:relative;background-color:var(--ct-help-box-bg)}.help-box .close-btn{left:10px;top:10px;position:absolute}.wrapper{height:100%;width:100%}.content-page{position:relative;margin-right:var(--ct-leftbar-width);min-height:calc(100vh - var(--ct-topbar-height) - 2px);padding:0 .625rem var(--ct-footer-height);-webkit-transition:all .25s ease-in-out;transition:all .25s ease-in-out}.leftside-menu{z-index:1000;bottom:0;top:0;position:fixed;width:var(--ct-leftbar-width);min-width:var(--ct-leftbar-width);padding-bottom:calc(var(--ct-footer-height) + .625rem);background:var(--ct-menu-bg);-webkit-box-shadow:var(--ct-box-shadow);box-shadow:var(--ct-box-shadow);border-left:var(--ct-theme-card-border-width) solid var(--ct-border-color);-webkit-transition:all .25s ease-in-out;transition:all .25s ease-in-out}.leftbar-user{background:url(../images/small/small-4.jpg) center center;display:none;position:relative}html[data-sidenav-user=true] .leftbar-user{display:block}.side-nav{padding-right:0;padding-bottom:10px;list-style-type:none}.side-nav ul{list-style-type:none}.side-nav .side-nav-link{display:block;list-style:none;position:relative;white-space:nowrap;color:var(--ct-menu-item-color);-webkit-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-size:var(--ct-menu-item-font-size);padding:var(--ct-menu-item-padding-y) var(--ct-menu-item-padding-x)}.side-nav .side-nav-link:active,.side-nav .side-nav-link:focus,.side-nav .side-nav-link:hover{color:var(--ct-menu-item-hover-color);text-decoration:none}.side-nav .side-nav-link span{vertical-align:middle}.side-nav .side-nav-link i{display:inline-block;vertical-align:middle;text-align:center;font-size:var(--ct-menu-item-icon-size);line-height:var(--ct-menu-item-icon-size);width:var(--ct-menu-item-icon-width)}.side-nav .menu-arrow{display:inline-block;text-rendering:auto;position:absolute;top:50%;left:calc(var(--ct-menu-item-padding-x) * .5);-webkit-transition:-webkit-transform .15s;transition:-webkit-transform .15s;transition:transform .15s;transition:transform .15s,-webkit-transform .15s;-webkit-transform:translate(50%,-50%);transform:translate(50%,-50%);line-height:var(--ct-menu-item-icon-size);font-size:calc(var(--ct-menu-item-font-size) * 1.18)}.side-nav .menu-arrow:before{content:"\ea6e";font-family:remixicon}.side-nav .badge{margin-top:calc(var(--ct-menu-item-font-size) * .25);position:absolute;left:0;margin-left:calc(var(--ct-menu-item-padding-x) * 1.5)}.side-nav .side-nav-title{pointer-events:none;cursor:default;opacity:.5;white-space:nowrap;text-transform:uppercase;color:var(--ct-menu-item-color);font-weight:700;font-size:calc(var(--ct-menu-item-font-size) * .74);padding:var(--ct-menu-item-padding-y) calc(var(--ct-menu-item-padding-x) * 1.5)}.side-nav .side-nav-item>a[aria-expanded=true]>span.menu-arrow{-webkit-transform:translate(50%,-50%) rotate(-90deg);transform:translate(50%,-50%) rotate(-90deg)}.side-nav .side-nav-item.menuitem-active>a:not(.collapsed)>span.menu-arrow{-webkit-transform:translate(50%,-50%) rotate(-90deg);transform:translate(50%,-50%) rotate(-90deg)}.side-nav .menuitem-active>a{color:var(--ct-menu-item-active-color)}.side-nav .menuitem-active>a:active,.side-nav .menuitem-active>a:focus,.side-nav .menuitem-active>a:hover{color:var(--ct-menu-item-active-color)}.side-nav .menuitem-active .menuitem-active .active{color:var(--ct-menu-item-active-color)}.side-nav.bottom{bottom:0;width:100%;position:absolute}[dir=rtl] .side-nav .side-nav-item .menu-arrow:before{content:"\f0141"!important}.side-nav-forth-level .side-nav-item,.side-nav-forth-level li,.side-nav-second-level .side-nav-item,.side-nav-second-level li,.side-nav-third-level .side-nav-item,.side-nav-third-level li{padding:0}.side-nav-forth-level .side-nav-item .side-nav-link,.side-nav-forth-level .side-nav-item a,.side-nav-forth-level li .side-nav-link,.side-nav-forth-level li a,.side-nav-second-level .side-nav-item .side-nav-link,.side-nav-second-level .side-nav-item a,.side-nav-second-level li .side-nav-link,.side-nav-second-level li a,.side-nav-third-level .side-nav-item .side-nav-link,.side-nav-third-level .side-nav-item a,.side-nav-third-level li .side-nav-link,.side-nav-third-level li a{white-space:nowrap;color:var(--ct-menu-item-color);display:block;position:relative;-webkit-transition:all .25s ease-in-out;transition:all .25s ease-in-out;font-size:calc(var(--ct-menu-item-font-size) * .95);padding:calc(var(--ct-menu-item-padding-y) * .6) calc(var(--ct-menu-item-padding-x) * 1.25)}.side-nav-forth-level .side-nav-item .side-nav-link:active,.side-nav-forth-level .side-nav-item .side-nav-link:focus,.side-nav-forth-level .side-nav-item .side-nav-link:hover,.side-nav-forth-level .side-nav-item a:active,.side-nav-forth-level .side-nav-item a:focus,.side-nav-forth-level .side-nav-item a:hover,.side-nav-forth-level li .side-nav-link:active,.side-nav-forth-level li .side-nav-link:focus,.side-nav-forth-level li .side-nav-link:hover,.side-nav-forth-level li a:active,.side-nav-forth-level li a:focus,.side-nav-forth-level li a:hover,.side-nav-second-level .side-nav-item .side-nav-link:active,.side-nav-second-level .side-nav-item .side-nav-link:focus,.side-nav-second-level .side-nav-item .side-nav-link:hover,.side-nav-second-level .side-nav-item a:active,.side-nav-second-level .side-nav-item a:focus,.side-nav-second-level .side-nav-item a:hover,.side-nav-second-level li .side-nav-link:active,.side-nav-second-level li .side-nav-link:focus,.side-nav-second-level li .side-nav-link:hover,.side-nav-second-level li a:active,.side-nav-second-level li a:focus,.side-nav-second-level li a:hover,.side-nav-third-level .side-nav-item .side-nav-link:active,.side-nav-third-level .side-nav-item .side-nav-link:focus,.side-nav-third-level .side-nav-item .side-nav-link:hover,.side-nav-third-level .side-nav-item a:active,.side-nav-third-level .side-nav-item a:focus,.side-nav-third-level .side-nav-item a:hover,.side-nav-third-level li .side-nav-link:active,.side-nav-third-level li .side-nav-link:focus,.side-nav-third-level li .side-nav-link:hover,.side-nav-third-level li a:active,.side-nav-third-level li a:focus,.side-nav-third-level li a:hover{color:var(--ct-menu-item-hover-color);padding-right:calc(var(--ct-menu-item-padding-x) * 1.75)}.side-nav-forth-level .side-nav-item.active>a,.side-nav-forth-level li.active>a,.side-nav-second-level .side-nav-item.active>a,.side-nav-second-level li.active>a,.side-nav-third-level .side-nav-item.active>a,.side-nav-third-level li.active>a{color:var(--ct-menu-item-active-color)}.side-nav-forth-level .side-nav-item.active>a:active,.side-nav-forth-level .side-nav-item.active>a:focus,.side-nav-forth-level .side-nav-item.active>a:hover,.side-nav-forth-level li.active>a:active,.side-nav-forth-level li.active>a:focus,.side-nav-forth-level li.active>a:hover,.side-nav-second-level .side-nav-item.active>a:active,.side-nav-second-level .side-nav-item.active>a:focus,.side-nav-second-level .side-nav-item.active>a:hover,.side-nav-second-level li.active>a:active,.side-nav-second-level li.active>a:focus,.side-nav-second-level li.active>a:hover,.side-nav-third-level .side-nav-item.active>a:active,.side-nav-third-level .side-nav-item.active>a:focus,.side-nav-third-level .side-nav-item.active>a:hover,.side-nav-third-level li.active>a:active,.side-nav-third-level li.active>a:focus,.side-nav-third-level li.active>a:hover{color:var(--ct-menu-item-active-color)}.side-nav-second-level{margin-top:calc(var(--ct-menu-item-padding-y) * -.5);padding-right:var(--ct-menu-item-icon-width)}.side-nav-forth-level,.side-nav-third-level{padding-right:calc(var(--ct-menu-item-padding-x) * 2)}html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .navbar-custom{z-index:1005;margin-right:var(--ct-leftbar-width-sm)}html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu{position:absolute;width:var(--ct-leftbar-width-sm);min-width:var(--ct-leftbar-width-sm)}html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .simplebar-content-wrapper,html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .simplebar-mask{overflow:visible!important}html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .simplebar-scrollbar{display:none!important}html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .simplebar-offset{bottom:0!important}html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .logo{z-index:1;background:var(--ct-menu-bg)}html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .logo span.logo-lg{display:none}html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .logo span.logo-sm{display:block}html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .collapse,html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .collapsing{display:none;height:inherit!important;-webkit-transition:none!important;transition:none!important}html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .collapse .side-nav-forth-level,html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .collapse .side-nav-second-level,html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .collapse .side-nav-third-level,html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .collapsing .side-nav-forth-level,html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .collapsing .side-nav-second-level,html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .collapsing .side-nav-third-level{display:none!important;padding:0;margin-top:0}html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .collapse .side-nav-forth-level li .side-nav-link::before,html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .collapse .side-nav-forth-level li a::before,html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .collapse .side-nav-second-level li .side-nav-link::before,html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .collapse .side-nav-second-level li a::before,html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .collapse .side-nav-third-level li .side-nav-link::before,html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .collapse .side-nav-third-level li a::before,html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .collapsing .side-nav-forth-level li .side-nav-link::before,html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .collapsing .side-nav-forth-level li a::before,html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .collapsing .side-nav-second-level li .side-nav-link::before,html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .collapsing .side-nav-second-level li a::before,html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .collapsing .side-nav-third-level li .side-nav-link::before,html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .collapsing .side-nav-third-level li a::before{display:none}html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .collapse .side-nav-forth-level .menu-arrow,html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .collapse .side-nav-second-level .menu-arrow,html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .collapse .side-nav-third-level .menu-arrow,html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .collapsing .side-nav-forth-level .menu-arrow,html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .collapsing .side-nav-second-level .menu-arrow,html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .collapsing .side-nav-third-level .menu-arrow{left:var(--ct-menu-item-padding-x);-webkit-transform:translate(50%,-50%);transform:translate(50%,-50%)}html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-item{position:relative}html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-item .side-nav-link{-webkit-transition:none;transition:none;padding:calc(var(--ct-menu-item-padding-y) + 4px) var(--ct-menu-item-padding-x)}html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-item .side-nav-link i{min-width:calc(var(--ct-leftbar-width-sm) - var(--ct-menu-item-padding-x) * 2);font-size:1.25rem}html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-item .side-nav-link:active,html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-item .side-nav-link:focus,html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-item .side-nav-link:hover{color:var(--ct-menu-item-hover-color)}html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-item .side-nav-link span{visibility:hidden}html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-item .side-nav-link .menu-arrow{-webkit-transform:translate(50%,-50%) rotate(-90deg);transform:translate(50%,-50%) rotate(-90deg);padding-right:0!important}html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-item:hover .side-nav-link{position:relative;color:#fff;background:var(--ct-menu-condensed-link-bg);width:var(--ct-leftbar-width)}html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-item:hover .side-nav-link span{visibility:visible}html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-item:hover .side-nav-link span:not(.badge){margin-right:var(--ct-menu-item-padding-x)}html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-item:hover>.collapse,html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-item:hover>.collapsing{display:block!important;-webkit-transition:none!important;transition:none!important}html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-item:hover>.collapse>ul,html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-item:hover>.collapsing>ul{display:block!important;right:var(--ct-leftbar-width-sm);position:absolute;background:var(--ct-menu-bg);-webkit-box-shadow:0 2px 5px 0 rgba(27,23,30,.3);box-shadow:0 2px 5px 0 rgba(27,23,30,.3);width:calc(var(--ct-leftbar-width) - var(--ct-leftbar-width-sm))}html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-item:hover>.collapse>ul a,html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-item:hover>.collapsing>ul a{-webkit-box-shadow:none;box-shadow:none;position:relative;width:calc(var(--ct-leftbar-width) - var(--ct-leftbar-width-sm));padding:calc(var(--ct-menu-item-padding-y) * .9) calc(var(--ct-menu-item-padding-x) * 2)}html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-item:hover>.collapse>ul a:hover,html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-item:hover>.collapsing>ul a:hover{color:var(--ct-menu-item-hover-color)}html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-item:hover>.collapse>ul li:hover>.collapse,html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-item:hover>.collapse>ul li:hover>.collapsing,html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-item:hover>.collapsing>ul li:hover>.collapse,html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-item:hover>.collapsing>ul li:hover>.collapsing{display:block!important;height:auto!important;-webkit-transition:none!important;transition:none!important}html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-item:hover>.collapse>ul li:hover>.collapse>ul,html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-item:hover>.collapse>ul li:hover>.collapsing>ul,html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-item:hover>.collapsing>ul li:hover>.collapse>ul,html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-item:hover>.collapsing>ul li:hover>.collapsing>ul{display:block!important;position:absolute!important;top:0;right:calc(var(--ct-leftbar-width) - var(--ct-leftbar-width-sm));width:calc(var(--ct-leftbar-width) - var(--ct-leftbar-width-sm))}html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .help-box,html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftbar-user,html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .side-nav-title{display:none}html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .content-page{margin-right:var(--ct-leftbar-width-sm);min-height:var(--ct-leftbar-condensed-height)}html[data-sidenav-size=compact]:not([data-layout=topnav]) .wrapper .navbar-custom{margin-right:var(--ct-leftbar-width-md)}html[data-sidenav-size=compact]:not([data-layout=topnav]) .wrapper .leftside-menu{width:var(--ct-leftbar-width-md);min-width:var(--ct-leftbar-width-md)}html[data-sidenav-size=compact]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-title{text-align:center;padding:var(--ct-menu-item-padding-y) calc(var(--ct-menu-item-padding-x))}html[data-sidenav-size=compact]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-item{text-align:center;padding:var(--ct-menu-item-padding-y) calc(var(--ct-menu-item-padding-x) * 1.5)}html[data-sidenav-size=compact]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-link{padding:var(--ct-menu-item-padding-y) var(--ct-menu-item-padding-x);text-align:center}html[data-sidenav-size=compact]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-link i{display:block;text-align:center;margin:0 0 calc(var(--ct-menu-item-padding-y) * 1 / 3);width:auto}html[data-sidenav-size=compact]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-link span{margin-right:0}html[data-sidenav-size=compact]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-link .badge{display:none}html[data-sidenav-size=compact]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-forth-level,html[data-sidenav-size=compact]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-second-level,html[data-sidenav-size=compact]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-third-level{padding:0}html[data-sidenav-size=compact]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-forth-level .menu-arrow,html[data-sidenav-size=compact]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-second-level .menu-arrow,html[data-sidenav-size=compact]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-third-level .menu-arrow{display:inline-block;left:var(--ct-menu-item-padding-x)}html[data-sidenav-size=compact]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-forth-level li .side-nav-link,html[data-sidenav-size=compact]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-forth-level li a,html[data-sidenav-size=compact]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-second-level li .side-nav-link,html[data-sidenav-size=compact]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-second-level li a,html[data-sidenav-size=compact]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-third-level li .side-nav-link,html[data-sidenav-size=compact]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-third-level li a{padding:calc(var(--ct-menu-item-padding-y) * .8) calc(var(--ct-menu-item-padding-x));text-align:center}html[data-sidenav-size=compact]:not([data-layout=topnav]) .wrapper .help-box,html[data-sidenav-size=compact]:not([data-layout=topnav]) .wrapper .menu-arrow{display:none}html[data-sidenav-size=compact]:not([data-layout=topnav]) .wrapper .content-page{margin-right:var(--ct-leftbar-width-md)}html[data-sidenav-size=sm-hover]:not([data-layout=topnav]) .wrapper .content-page{margin-right:var(--ct-leftbar-width-sm)}html[data-sidenav-size=sm-hover]:not([data-layout=topnav]) .wrapper .navbar-custom{margin-right:var(--ct-leftbar-width-sm)}html[data-sidenav-size=sm-hover]:not([data-layout=topnav]) .wrapper .navbar-custom .button-toggle-menu{display:none}html[data-sidenav-size=sm-hover]:not([data-layout=topnav]) .wrapper .navbar-custom .app-search{padding-right:10px}html[data-sidenav-size=sm-hover]:not([data-layout=topnav]) .wrapper .leftside-menu:not(:hover){width:var(--ct-leftbar-width-sm);min-width:var(--ct-leftbar-width-sm)}html[data-sidenav-size=sm-hover]:not([data-layout=topnav]) .wrapper .leftside-menu:not(:hover) .simplebar-scrollbar:before{background:0 0}html[data-sidenav-size=sm-hover]:not([data-layout=topnav]) .wrapper .leftside-menu:not(:hover) .logo .logo-sm{display:block;text-align:center}html[data-sidenav-size=sm-hover]:not([data-layout=topnav]) .wrapper .leftside-menu:not(:hover) .logo .logo-lg{display:none}html[data-sidenav-size=sm-hover]:not([data-layout=topnav]) .wrapper .leftside-menu:not(:hover) .side-nav-item .side-nav-link span{visibility:hidden}html[data-sidenav-size=sm-hover]:not([data-layout=topnav]) .wrapper .leftside-menu:not(:hover) .side-nav-item .side-nav-link i{min-width:calc(var(--ct-leftbar-width-sm) - var(--ct-menu-item-padding-x) * 2);font-size:1.25rem}html[data-sidenav-size=sm-hover]:not([data-layout=topnav]) .wrapper .leftside-menu:not(:hover) .leftbar-user,html[data-sidenav-size=sm-hover]:not([data-layout=topnav]) .wrapper .leftside-menu:not(:hover) .side-nav-title{display:none}html[data-sidenav-size=sm-hover]:not([data-layout=topnav]) .wrapper .leftside-menu:not(:hover) .button-sm-hover,html[data-sidenav-size=sm-hover]:not([data-layout=topnav]) .wrapper .leftside-menu:not(:hover) .help-box{visibility:hidden}html[data-sidenav-size=sm-hover]:not([data-layout=topnav]) .wrapper .leftside-menu:not(:hover) .side-nav-forth-level,html[data-sidenav-size=sm-hover]:not([data-layout=topnav]) .wrapper .leftside-menu:not(:hover) .side-nav-second-level,html[data-sidenav-size=sm-hover]:not([data-layout=topnav]) .wrapper .leftside-menu:not(:hover) .side-nav-third-level{height:0;opacity:0}html[data-sidenav-size=sm-hover]:not([data-layout=topnav]) .wrapper .leftside-menu .simplebar-horizontal .simplebar-scrollbar:before{background:0 0}html[data-sidenav-size=sm-hover]:not([data-layout=topnav]) .wrapper .leftside-menu .logo{text-align:right}html[data-sidenav-size=sm-hover]:not([data-layout=topnav]) .wrapper .leftside-menu:hover{z-index:1045}html[data-sidenav-size=sm-hover]:not([data-layout=topnav]) .wrapper .leftside-menu .button-sm-hover{display:block}html[data-sidenav-size=sm-hover]:not([data-layout=topnav]) .wrapper .leftside-menu .help-box{display:none}.button-sm-hover{cursor:pointer;display:none;left:calc(var(--ct-leftbar-width-sm) * .5 - var(--ct-logo-sm-height) * .7);top:0;position:absolute;font-size:var(--ct-menu-item-icon-size);line-height:var(--ct-topbar-height);z-index:1;color:var(--ct-menu-item-color)}.button-sm-hover:active,.button-sm-hover:focus,.button-sm-hover:hover{color:var(--ct-menu-item-hover-color)}html[data-sidenav-size=sm-hover-active]:not([data-layout=topnav]) .button-toggle-menu{display:none}html[data-sidenav-size=sm-hover-active]:not([data-layout=topnav]) .app-search{padding-right:10px}html[data-sidenav-size=sm-hover-active]:not([data-layout=topnav]) .leftside-menu .logo{text-align:right}html[data-sidenav-size=sm-hover-active]:not([data-layout=topnav]) .leftside-menu .button-sm-hover{display:block}html[data-sidenav-size=sm-hover-active]:not([data-layout=topnav]) .leftside-menu .button-sm-hover .ri-checkbox-blank-circle-line:before{content:"\f05a"}.button-close-fullsidebar{cursor:pointer;display:none;left:calc(var(--ct-leftbar-width-sm) * .5 - var(--ct-logo-sm-height) * .7);top:0;position:absolute;font-size:var(--ct-menu-item-icon-size);line-height:var(--ct-topbar-height);z-index:1;color:var(--ct-menu-item-color)}.button-close-fullsidebar:active,.button-close-fullsidebar:focus,.button-close-fullsidebar:hover{color:var(--ct-menu-item-hover-color)}html[data-sidenav-size=full]:not([data-layout=topnav]) .navbar-custom{margin-right:0}html[data-sidenav-size=full]:not([data-layout=topnav]) .navbar-custom .logo-topbar{display:inline-block}html[data-sidenav-size=full]:not([data-layout=topnav]) .button-close-fullsidebar{display:block}html[data-sidenav-size=full]:not([data-layout=topnav]) .leftside-menu{margin-right:calc(var(--ct-leftbar-width) * -1);border-color:transparent;opacity:0}html[data-sidenav-size=full]:not([data-layout=topnav]) .leftside-menu .logo{text-align:right}html[data-sidenav-size=full]:not([data-layout=topnav]) .content-page{margin-right:0}html[data-sidenav-size=full]:not([data-layout=topnav]).sidebar-enable .leftside-menu{opacity:1;z-index:1055;margin-right:0}html[data-sidenav-size=fullscreen]:not([data-layout=topnav]) .navbar-custom{margin-right:0}html[data-sidenav-size=fullscreen]:not([data-layout=topnav]) .leftside-menu{margin-right:calc(var(--ct-leftbar-width) * -1);opacity:0}html[data-sidenav-size=fullscreen]:not([data-layout=topnav]) .content-page{margin-right:0}html[data-layout-mode=detached]:not([data-layout=topnav]) .wrapper{max-width:95%;margin:0 auto}html[data-layout-mode=detached]:not([data-layout=topnav]) .wrapper .navbar-custom{z-index:1005;margin:0 -2.65%}html[data-layout-mode=detached]:not([data-layout=topnav]) .wrapper .navbar-custom .topbar{max-width:95%}html[data-layout-mode=detached]:not([data-layout=topnav]) .wrapper .leftside-menu{bottom:.625rem;top:calc(var(--ct-topbar-height) + 1.25rem * .5);border-radius:.5rem;border:var(--ct-theme-card-border-width) solid var(--ct-border-color);padding-bottom:0}html[data-layout-mode=detached]:not([data-layout=topnav]) .wrapper .leftside-menu .button-sm-hover{top:var(--ct-menu-item-padding-y);line-height:1}html[data-layout-mode=detached]:not([data-layout=topnav]) .wrapper .footer{left:.625rem;right:.625rem;bottom:.625rem;border-radius:.5rem;border:1px solid var(--ct-border-color)}html[data-layout-mode=detached]:not([data-layout=topnav]) .logo{visibility:hidden;height:0}html[data-layout-mode=detached]:not([data-layout=topnav]) .logo-topbar{display:block}html[data-layout-mode=detached]:not([data-layout=topnav]) .leftbar-user{border-radius:.5rem .5rem 0 0}html[data-layout-mode=detached]:not([data-layout=topnav])[data-sidenav-size=full] .wrapper .leftside-menu{padding-bottom:calc(var(--ct-footer-height) + .625rem);top:.625rem;right:.625rem}html[data-layout-mode=detached]:not([data-layout=topnav])[data-sidenav-size=full] .wrapper .leftside-menu .logo{top:.625rem;visibility:visible;height:auto}html[data-layout-mode=detached]:not([data-layout=topnav])[data-sidenav-size=full] .wrapper .leftside-menu .logo span.logo-lg{display:block}@media (min-width:1400px){html[data-layout-mode=boxed] body{background-color:var(--ct-tertiary-bg)}html[data-layout-mode=boxed] .wrapper{margin:0 auto;-webkit-box-shadow:var(--ct-box-shadow);box-shadow:var(--ct-box-shadow);max-width:1300px;background-color:var(--ct-body-bg)}}@media (min-width:992px){html[data-layout-position=scrollable] .wrapper{display:block}html[data-layout-position=scrollable] .wrapper .leftside-menu{position:absolute;padding-top:0!important}html[data-layout-position=scrollable] .wrapper .leftside-menu .logo{position:relative}html[data-layout-position=scrollable] .wrapper .leftside-menu #leftside-menu-container{height:calc(100% - var(--ct-topbar-height))!important}html[data-layout-position=scrollable] .navbar-custom{position:static!important}html[data-layout-position=scrollable][data-layout=topnav] .topnav{position:static}}@media (max-width:767.98px){html[data-layout-mode=detached]:not([data-layout=topnav]) .wrapper{max-width:100%!important}html[data-layout-mode=detached]:not([data-layout=topnav]) .wrapper .navbar-custom{margin:0;padding:0}}.navbar-custom{background:var(--ct-topbar-bg);-webkit-box-shadow:var(--ct-box-shadow);box-shadow:var(--ct-box-shadow);min-height:var(--ct-topbar-height);margin-right:var(--ct-leftbar-width);position:sticky;top:0;-webkit-transition:all .25s ease-in-out;transition:all .25s ease-in-out;z-index:1000;border-bottom:var(--ct-theme-card-border-width) solid var(--ct-border-color)}.navbar-custom .topbar{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin:0 auto}.navbar-custom .topbar .app-search form{height:var(--ct-topbar-height);max-width:320px}.navbar-custom .topbar .app-search form .form-control{color:var(--ct-topbar-item-color);background-color:var(--ct-topbar-search-bg)}.navbar-custom .topbar .app-search form span.search-icon{color:var(--ct-topbar-item-color)}.navbar-custom .topbar-menu{position:relative;list-style-type:none;margin-bottom:0}.navbar-custom .topbar-menu li{max-height:var(--ct-topbar-height)}.navbar-custom .topbar-menu li .nav-link.show{color:var(--ct-topbar-item-hover-color)}.navbar-custom .topbar-menu .nav-link{padding:0;position:relative;color:var(--ct-topbar-item-color);display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;height:var(--ct-topbar-height);cursor:pointer}.navbar-custom .topbar-menu .nav-link:hover{color:var(--ct-topbar-item-hover-color)}.logo-topbar{float:right;display:none;line-height:var(--ct-topbar-height);padding:0 .625rem}.logo-topbar .logo-sm{display:none}.logo-topbar .logo-light{display:none}.logo-topbar .logo-dark{display:block}html[data-bs-theme=dark] .logo-topbar .logo-light,html[data-topbar-color=brand] .logo-topbar .logo-light,html[data-topbar-color=dark] .logo-topbar .logo-light{display:block}html[data-bs-theme=dark] .logo-topbar .logo-dark,html[data-topbar-color=brand] .logo-topbar .logo-dark,html[data-topbar-color=dark] .logo-topbar .logo-dark{display:none}html[data-bs-theme=dark] #light-dark-mode .ri-moon-fill::before{content:"\f1bc"}.button-toggle-menu{border:none;color:var(--ct-topbar-item-color);width:60px;background-color:transparent;font-size:24px;cursor:pointer;z-index:1;position:relative}.app-search{position:static;overflow-y:hidden}.app-search form{display:-webkit-box;display:-ms-flexbox;display:flex;overflow:hidden;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.app-search form .form-control{border:none;height:calc(1.5em + .9rem + calc(var(--ct-border-width) * 2));padding-right:35px;padding-left:20px;background-color:var(--ct-light);-webkit-box-shadow:none;box-shadow:none}.app-search form span.search-icon{position:absolute;z-index:4;font-size:16px;line-height:38px;right:10px;top:0;z-index:5;color:var(--ct-secondary)}.app-search form .input-group input[type=search]::-webkit-input-placeholder{color:var(--ct-topbar-item-color)}.app-search form .input-group input[type=search]::-moz-placeholder{color:var(--ct-topbar-item-color)}.app-search form .input-group input[type=search]:-ms-input-placeholder{color:var(--ct-topbar-item-color)}.app-search form .input-group input[type=search]::-ms-input-placeholder{color:var(--ct-topbar-item-color)}.app-search form .input-group input[type=search]::placeholder{color:var(--ct-topbar-item-color)}.app-search form .input-group-text{margin-right:0;z-index:4}.app-search form .dropdown-menu{z-index:1060}.notification-list{margin-right:0}.notification-list .noti-title{background-color:transparent;padding:15px 20px}.notification-list .noti-icon-badge{display:inline-block;position:absolute;top:22px;left:1px;border-radius:50%;height:7px;width:7px;background-color:#f7473a}.notification-list .notify-item{padding:10px 20px}.notification-list .notify-item.unread-noti{background-color:var(--ct-tertiary-bg)}.notification-list .notify-item.read-noti{background-color:transparent;-webkit-transition:all .2s ease-in-out;transition:all .2s ease-in-out}.notification-list .notify-item.read-noti:hover{background-color:var(--ct-tertiary-bg)}.notification-list .notify-item .card-body{padding:14px}.notification-list .notify-item .card-body .noti-close-btn{position:absolute;top:3px;left:15px}.notification-list .notify-item .card-body .noti-item-title{margin:0 0 2px}.notification-list .notify-item .card-body .noti-item-subtitle,.notification-list .notify-item .card-body .noti-item-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.notification-list .notify-item .notify-icon{float:right;height:36px;width:36px;line-height:36px;text-align:center;border-radius:50%;color:#fff}.notification-list .notify-item .notify-details{margin-bottom:0;overflow:hidden;margin-right:45px}.notification-list .notify-item .notify-details b{font-weight:500}.notification-list .notify-item .notify-details .small,.notification-list .notify-item .notify-details small{display:block}.profile-dropdown{min-width:170px}.nav-user{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:10px;border-width:0 1px;border-style:solid;border-color:var(--ct-topbar-user-border);background-color:var(--ct-topbar-user-bg);min-height:var(--ct-topbar-height);-webkit-transition:none;transition:none}.fullscreen-enable .ri-fullscreen-line::before{content:"\ed9a"}@media (max-width:375px){.navbar-custom .button-toggle-menu{width:auto}.logo-topbar{display:none!important}}@media (max-width:575.98px){.navbar-custom .topbar-menu{position:initial}.navbar-custom .dropdown{position:static}.navbar-custom .dropdown .dropdown-menu{right:10px!important;left:10px!important}}@media (max-width:767.98px){.navbar-custom{padding:0 .625rem}.logo-topbar{display:block}.logo-topbar span.logo-lg{display:none}.logo-topbar span.logo-sm{display:block}}#theme-settings-offcanvas{width:260px}.page-title-box .page-title{font-size:18px;margin:0;line-height:60px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.page-title-box .breadcrumb{padding:0}.page-title-box-sm .page-title{line-height:1!important;margin-bottom:25px}.page-title-box-sm .page-title-right{float:left;margin-top:0}.page-title-box-sm .breadcrumb{padding-top:0;margin-top:-3px!important}.text-title{color:var(--ct-secondary-color)}.text-title:hover{color:var(--ct-tertiary-color)}@media (max-width:767.98px){.page-title-box .page-title{display:block;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;line-height:70px}.page-title-box .breadcrumb{display:none}.page-title-box .page-title-left{display:none}}@media (max-width:419px){.page-title-box .breadcrumb{display:none}}.footer{position:absolute;left:0;bottom:0;right:0;height:var(--ct-footer-height);display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding:0 1.25rem;color:var(--ct-gray-600);-webkit-transition:all .25s ease-in-out;transition:all .25s ease-in-out;border-top:1px solid var(--ct-border-color)}.footer .footer-links a{color:var(--ct-gray-600);margin-right:1.25rem;-webkit-transition:all .4s;transition:all .4s}.footer .footer-links a:hover{color:var(--ct-gray-600)}.footer .footer-links a:first-of-type{margin-right:0}.footer-alt{border:none;text-align:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}html[data-layout-mode=detached]:not([data-layout=topnav]) .footer .container-fluid,html[data-layout-mode=detached]:not([data-layout=topnav]) .footer .container-lg,html[data-layout-mode=detached]:not([data-layout=topnav]) .footer .container-md,html[data-layout-mode=detached]:not([data-layout=topnav]) .footer .container-sm,html[data-layout-mode=detached]:not([data-layout=topnav]) .footer .container-xl,html[data-layout-mode=detached]:not([data-layout=topnav]) .footer .container-xxl{max-width:100%;padding:0}@media (max-width:767.98px){.footer{text-align:center}}html[data-layout=topnav] .navbar-custom{margin:0;padding:0;z-index:1005;-webkit-box-shadow:none;box-shadow:none}html[data-layout=topnav] .navbar-custom .logo-topbar{display:block}html[data-layout=topnav] .navbar-custom .button-toggle-menu{display:none}html[data-layout=topnav] .content-page{margin-right:0;padding:0 0 var(--ct-topbar-height)}html[data-layout=topnav] .container-fluid,html[data-layout=topnav] .container-lg,html[data-layout=topnav] .container-md,html[data-layout=topnav] .container-sm,html[data-layout=topnav] .container-xl,html[data-layout=topnav] .container-xxl{padding-left:1.25rem;padding-right:1.25rem}html[data-layout=topnav] .topnav{width:100%;z-index:1000;position:sticky;top:var(--ct-topbar-height);background:var(--ct-menu-bg);-webkit-box-shadow:var(--ct-box-shadow);box-shadow:var(--ct-box-shadow);border-top:1px solid var(--ct-topbar-user-border)}html[data-layout=topnav] .topnav .navbar{margin:0;padding:0}html[data-layout=topnav] .topnav .navbar-nav .nav-link{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;position:relative;font-size:var(--ct-menu-item-font-size);padding:calc(var(--ct-menu-item-padding-y) * 1.2) calc(var(--ct-menu-item-padding-x) * 2)}html[data-layout=topnav] .topnav .navbar-nav .nav-link i{font-size:var(--ct-menu-item-icon-size);margin-left:calc(var(--ct-menu-item-icon-size) * .5)}html[data-layout=topnav] .topnav .navbar-nav .dropdown .dropdown-menu{font-size:calc(.875rem - 0)}html[data-layout=topnav] .topnav .navbar-nav .dropdown .dropdown-menu .dropdown-item{padding:calc(var(--ct-menu-item-padding-y) * .75) calc(var(--ct-menu-item-padding-x) * 2.4)}html[data-layout=topnav] .topnav .nav-item .nav-link,html[data-layout=topnav] .topnav .nav-item>a{color:var(--ct-menu-item-color)}html[data-layout=topnav] .topnav .nav-item .nav-link:hover,html[data-layout=topnav] .topnav .nav-item>a:hover{color:var(--ct-menu-item-hover-color)}html[data-layout=topnav] .topnav .nav-item.active>a{color:var(--ct-menu-item-active-color)}html[data-layout=topnav] .arrow-down{display:inline-block;display:inline-block;text-rendering:auto;margin-right:calc(var(--ct-menu-item-padding-x) * 1);font-size:calc(var(--ct-menu-item-font-size) * 1.18)}html[data-layout=topnav] .arrow-down:before{content:"\ea4e";font-family:remixicon}html[data-layout=topnav] #layout-detached,html[data-layout=topnav] #sidebar-size,html[data-layout=topnav] #sidebar-user{display:none}html[data-layout=topnav] #topnav-color{display:block}#topnav-color{display:none}.navbar-toggle{display:none;position:relative;cursor:pointer;float:right;padding:0;background-color:transparent;color:var(--ct-topbar-item-color);border:none}.navbar-toggle .lines{width:25px;display:block;position:relative;height:16px;-webkit-transition:all .5s ease;transition:all .5s ease}.navbar-toggle span{height:2px;width:100%;background-color:var(--ct-topbar-item-color);display:block;margin-bottom:5px;-webkit-transition:-webkit-transform .5s ease;transition:-webkit-transform .5s ease;transition:transform .5s ease;transition:transform .5s ease,-webkit-transform .5s ease}.navbar-toggle.open span{position:absolute}.navbar-toggle.open span:first-child{top:7px;-webkit-transform:rotate(-45deg);transform:rotate(-45deg)}.navbar-toggle.open span:nth-child(2){visibility:hidden}.navbar-toggle.open span:last-child{width:100%;top:7px;-webkit-transform:rotate(45deg);transform:rotate(45deg)}@media (min-width:992px){html[data-layout=topnav] .container-fluid,html[data-layout=topnav] .container-lg,html[data-layout=topnav] .container-md,html[data-layout=topnav] .container-sm,html[data-layout=topnav] .container-xl,html[data-layout=topnav] .container-xxl{max-width:95%}html[data-layout=topnav][data-layout-mode=boxed] .container-fluid,html[data-layout=topnav][data-layout-mode=boxed] .container-lg,html[data-layout=topnav][data-layout-mode=boxed] .container-md,html[data-layout=topnav][data-layout-mode=boxed] .container-sm,html[data-layout=topnav][data-layout-mode=boxed] .container-xl,html[data-layout=topnav][data-layout-mode=boxed] .container-xxl{max-width:97%}.topnav .navbar-nav .nav-item:first-of-type .nav-link{padding-right:0}.topnav .dropdown .dropdown-menu{margin-top:0;border-radius:0 0 .15rem .15rem;min-width:calc(var(--ct-dropdown-min-width) + var(--ct-menu-item-font-size) * 1.5);font-size:calc(.875rem - 0)}.topnav .dropdown .dropdown-menu .arrow-down{font-size:var(--ct-menu-item-font-size);-webkit-transform:rotate(-270deg);transform:rotate(-270deg);position:absolute;left:var(--ct-menu-item-padding-x)}.topnav .dropdown .dropdown-menu .dropdown .dropdown-menu{position:absolute;top:0;right:100%;display:none}.topnav .dropdown:hover>.dropdown-menu{display:block}.topnav .dropdown:hover>.dropdown-menu>.dropdown:hover>.dropdown-menu{display:block}.topnav .dropdown.active>a.dropdown-item{color:var(--ct-tertiary-color);background-color:var(--ct-tertiary-bg)}}@media (max-width:991.98px){html[data-layout=topnav] .topnav{max-height:360px;overflow-y:auto}html[data-layout=topnav] .topnav .navbar-nav .nav-link{padding:calc(var(--ct-menu-item-padding-y) * .8) calc(var(--ct-menu-item-padding-x) * 2)}html[data-layout=topnav] .topnav .dropdown .dropdown-menu{background-color:transparent;border:none;-webkit-box-shadow:none;box-shadow:none;padding-right:calc(var(--ct-menu-item-padding-x) * 3);margin-top:calc(var(--ct-menu-item-padding-y) * -.75)}html[data-layout=topnav] .topnav .dropdown .dropdown-menu .dropdown-menu{margin-top:calc(var(--ct-menu-item-padding-y) * -.5);padding-right:calc(var(--ct-menu-item-padding-x) * 1.5)}html[data-layout=topnav] .topnav .dropdown .dropdown-item{position:relative;background-color:transparent}html[data-layout=topnav] .topnav .dropdown .dropdown-item{color:var(--ct-menu-item-color)}html[data-layout=topnav] .topnav .dropdown .dropdown-item.hover{color:var(--ct-menu-item-hover-color)}html[data-layout=topnav] .topnav .dropdown .dropdown-item.active,html[data-layout=topnav] .topnav .dropdown .dropdown-item:active{color:var(--ct-menu-item-active-color)}html[data-layout=topnav] .topnav .dropdown.active>a.dropdown-item{color:var(--ct-menu-item-active-color)}html[data-layout=topnav] .topnav .arrow-down{font-size:var(--ct-menu-item-font-size);-webkit-transform:rotate(-270deg);transform:rotate(-270deg);position:absolute;left:var(--ct-menu-item-padding-x)}html[data-layout=topnav] .navbar-toggle{display:block}}@media (min-width:1400px){html[data-layout=topnav] .container-fluid,html[data-layout=topnav] .container-lg,html[data-layout=topnav] .container-md,html[data-layout=topnav] .container-sm,html[data-layout=topnav] .container-xl,html[data-layout=topnav] .container-xxl{max-width:85%}}[data-bs-theme=dark]{--ct-light:#464f5b;--ct-light-rgb:70,79,91;--ct-dark:#637385;--ct-dark-rgb:99,115,133}.accordion-header{margin:0}.accordion>.card>.card-header{border-radius:0;margin-bottom:-1px}.alert{-webkit-box-shadow:-2px 2px 3px rgba(27,23,30,.1);box-shadow:-2px 2px 3px rgba(27,23,30,.1)}.avatar-xxs{height:1.5rem;width:1.5rem}.avatar-xs{height:2rem;width:2rem}.avatar-sm{height:2.5rem;width:2.5rem}.avatar-md{height:4.5rem;width:4.5rem}.avatar-lg{height:6rem;width:6rem}.avatar-xl{height:7.5rem;width:7.5rem}.avatar-title{-webkit-box-align:center;-ms-flex-align:center;align-items:center;background-color:var(--ct-primary);color:#fff;display:-webkit-box;display:-ms-flexbox;display:flex;height:100%;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;width:100%}.avatar-group{padding-right:12px;display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap}.avatar-group .avatar-group-item{margin-right:-12px;border-radius:50%;-webkit-transition:all .2s;transition:all .2s}.avatar-group .avatar-group-item:hover{position:relative;-webkit-transform:translateY(-2px);transform:translateY(-2px);z-index:1}.breadcrumb-item+.breadcrumb-item::before{font-family:remixicon;font-size:16px;line-height:1.3}.btn{-webkit-box-shadow:-2px 2px 3px rgba(27,23,30,.1);box-shadow:-2px 2px 3px rgba(27,23,30,.1)}.btn-link{-webkit-box-shadow:none;box-shadow:none}.btn-primary{--ct-btn-bg:var(--ct-primary);--ct-btn-border-color:var(--ct-primary);--ct-btn-hover-bg:var(--ct-primary-text-emphasis);--ct-btn-hover-border-color:var(--ct-primary-text-emphasis);--ct-btn-focus-shadow-rgb:var(--ct-primary-rgb);--ct-btn-active-bg:var(--ct-primary-text-emphasis);--ct-btn-active-border-color:var(--ct-primary-text-emphasis)}.btn-outline-primary{--ct-btn-color:var(--ct-primary);--ct-btn-bg:transparent;--ct-btn-border-color:var(--ct-primary);--ct-btn-hover-bg:var(--ct-primary);--ct-btn-hover-border-color:var(--ct-primary);--ct-btn-focus-shadow-rgb:var(--ct-primary-rgb);--ct-btn-active-bg:var(--ct-primary);--ct-btn-active-border-color:var(--ct-primary)}.btn-soft-primary{--ct-btn-color:var(--ct-primary);--ct-btn-bg:var(--ct-primary-bg-subtle);--ct-btn-border-color:transparent;--ct-btn-hover-bg:var(--ct-primary);--ct-btn-hover-border-color:var(--ct-primary);--ct-btn-active-bg:var(--ct-primary);--ct-btn-active-border-color:var(--ct-primary);--ct-btn-disabled-color:var(--ct-primary);--ct-btn-disabled-bg:var(--ct-primary);--ct-btn-disabled-border-color:var(--ct-primary);--ct-btn-focus-shadow-rgb:0 0 0 $btn-focus-width rgba(var(--ct-primary)-rgb, 0.5)}.btn-secondary{--ct-btn-bg:var(--ct-secondary);--ct-btn-border-color:var(--ct-secondary);--ct-btn-hover-bg:var(--ct-secondary-text-emphasis);--ct-btn-hover-border-color:var(--ct-secondary-text-emphasis);--ct-btn-focus-shadow-rgb:var(--ct-secondary-rgb);--ct-btn-active-bg:var(--ct-secondary-text-emphasis);--ct-btn-active-border-color:var(--ct-secondary-text-emphasis)}.btn-outline-secondary{--ct-btn-color:var(--ct-secondary);--ct-btn-bg:transparent;--ct-btn-border-color:var(--ct-secondary);--ct-btn-hover-bg:var(--ct-secondary);--ct-btn-hover-border-color:var(--ct-secondary);--ct-btn-focus-shadow-rgb:var(--ct-secondary-rgb);--ct-btn-active-bg:var(--ct-secondary);--ct-btn-active-border-color:var(--ct-secondary)}.btn-soft-secondary{--ct-btn-color:var(--ct-secondary);--ct-btn-bg:var(--ct-secondary-bg-subtle);--ct-btn-border-color:transparent;--ct-btn-hover-bg:var(--ct-secondary);--ct-btn-hover-border-color:var(--ct-secondary);--ct-btn-active-bg:var(--ct-secondary);--ct-btn-active-border-color:var(--ct-secondary);--ct-btn-disabled-color:var(--ct-secondary);--ct-btn-disabled-bg:var(--ct-secondary);--ct-btn-disabled-border-color:var(--ct-secondary);--ct-btn-focus-shadow-rgb:0 0 0 $btn-focus-width rgba(var(--ct-secondary)-rgb, 0.5)}.btn-success{--ct-btn-bg:var(--ct-success);--ct-btn-border-color:var(--ct-success);--ct-btn-hover-bg:var(--ct-success-text-emphasis);--ct-btn-hover-border-color:var(--ct-success-text-emphasis);--ct-btn-focus-shadow-rgb:var(--ct-success-rgb);--ct-btn-active-bg:var(--ct-success-text-emphasis);--ct-btn-active-border-color:var(--ct-success-text-emphasis)}.btn-outline-success{--ct-btn-color:var(--ct-success);--ct-btn-bg:transparent;--ct-btn-border-color:var(--ct-success);--ct-btn-hover-bg:var(--ct-success);--ct-btn-hover-border-color:var(--ct-success);--ct-btn-focus-shadow-rgb:var(--ct-success-rgb);--ct-btn-active-bg:var(--ct-success);--ct-btn-active-border-color:var(--ct-success)}.btn-soft-success{--ct-btn-color:var(--ct-success);--ct-btn-bg:var(--ct-success-bg-subtle);--ct-btn-border-color:transparent;--ct-btn-hover-bg:var(--ct-success);--ct-btn-hover-border-color:var(--ct-success);--ct-btn-active-bg:var(--ct-success);--ct-btn-active-border-color:var(--ct-success);--ct-btn-disabled-color:var(--ct-success);--ct-btn-disabled-bg:var(--ct-success);--ct-btn-disabled-border-color:var(--ct-success);--ct-btn-focus-shadow-rgb:0 0 0 $btn-focus-width rgba(var(--ct-success)-rgb, 0.5)}.btn-info{--ct-btn-bg:var(--ct-info);--ct-btn-border-color:var(--ct-info);--ct-btn-hover-bg:var(--ct-info-text-emphasis);--ct-btn-hover-border-color:var(--ct-info-text-emphasis);--ct-btn-focus-shadow-rgb:var(--ct-info-rgb);--ct-btn-active-bg:var(--ct-info-text-emphasis);--ct-btn-active-border-color:var(--ct-info-text-emphasis)}.btn-outline-info{--ct-btn-color:var(--ct-info);--ct-btn-bg:transparent;--ct-btn-border-color:var(--ct-info);--ct-btn-hover-bg:var(--ct-info);--ct-btn-hover-border-color:var(--ct-info);--ct-btn-focus-shadow-rgb:var(--ct-info-rgb);--ct-btn-active-bg:var(--ct-info);--ct-btn-active-border-color:var(--ct-info)}.btn-soft-info{--ct-btn-color:var(--ct-info);--ct-btn-bg:var(--ct-info-bg-subtle);--ct-btn-border-color:transparent;--ct-btn-hover-bg:var(--ct-info);--ct-btn-hover-border-color:var(--ct-info);--ct-btn-active-bg:var(--ct-info);--ct-btn-active-border-color:var(--ct-info);--ct-btn-disabled-color:var(--ct-info);--ct-btn-disabled-bg:var(--ct-info);--ct-btn-disabled-border-color:var(--ct-info);--ct-btn-focus-shadow-rgb:0 0 0 $btn-focus-width rgba(var(--ct-info)-rgb, 0.5)}.btn-warning{--ct-btn-bg:var(--ct-warning);--ct-btn-border-color:var(--ct-warning);--ct-btn-hover-bg:var(--ct-warning-text-emphasis);--ct-btn-hover-border-color:var(--ct-warning-text-emphasis);--ct-btn-focus-shadow-rgb:var(--ct-warning-rgb);--ct-btn-active-bg:var(--ct-warning-text-emphasis);--ct-btn-active-border-color:var(--ct-warning-text-emphasis)}.btn-outline-warning{--ct-btn-color:var(--ct-warning);--ct-btn-bg:transparent;--ct-btn-border-color:var(--ct-warning);--ct-btn-hover-bg:var(--ct-warning);--ct-btn-hover-border-color:var(--ct-warning);--ct-btn-focus-shadow-rgb:var(--ct-warning-rgb);--ct-btn-active-bg:var(--ct-warning);--ct-btn-active-border-color:var(--ct-warning)}.btn-soft-warning{--ct-btn-color:var(--ct-warning);--ct-btn-bg:var(--ct-warning-bg-subtle);--ct-btn-border-color:transparent;--ct-btn-hover-bg:var(--ct-warning);--ct-btn-hover-border-color:var(--ct-warning);--ct-btn-active-bg:var(--ct-warning);--ct-btn-active-border-color:var(--ct-warning);--ct-btn-disabled-color:var(--ct-warning);--ct-btn-disabled-bg:var(--ct-warning);--ct-btn-disabled-border-color:var(--ct-warning);--ct-btn-focus-shadow-rgb:0 0 0 $btn-focus-width rgba(var(--ct-warning)-rgb, 0.5)}.btn-danger{--ct-btn-bg:var(--ct-danger);--ct-btn-border-color:var(--ct-danger);--ct-btn-hover-bg:var(--ct-danger-text-emphasis);--ct-btn-hover-border-color:var(--ct-danger-text-emphasis);--ct-btn-focus-shadow-rgb:var(--ct-danger-rgb);--ct-btn-active-bg:var(--ct-danger-text-emphasis);--ct-btn-active-border-color:var(--ct-danger-text-emphasis)}.btn-outline-danger{--ct-btn-color:var(--ct-danger);--ct-btn-bg:transparent;--ct-btn-border-color:var(--ct-danger);--ct-btn-hover-bg:var(--ct-danger);--ct-btn-hover-border-color:var(--ct-danger);--ct-btn-focus-shadow-rgb:var(--ct-danger-rgb);--ct-btn-active-bg:var(--ct-danger);--ct-btn-active-border-color:var(--ct-danger)}.btn-soft-danger{--ct-btn-color:var(--ct-danger);--ct-btn-bg:var(--ct-danger-bg-subtle);--ct-btn-border-color:transparent;--ct-btn-hover-bg:var(--ct-danger);--ct-btn-hover-border-color:var(--ct-danger);--ct-btn-active-bg:var(--ct-danger);--ct-btn-active-border-color:var(--ct-danger);--ct-btn-disabled-color:var(--ct-danger);--ct-btn-disabled-bg:var(--ct-danger);--ct-btn-disabled-border-color:var(--ct-danger);--ct-btn-focus-shadow-rgb:0 0 0 $btn-focus-width rgba(var(--ct-danger)-rgb, 0.5)}.btn-light{--ct-btn-bg:var(--ct-light);--ct-btn-border-color:var(--ct-light);--ct-btn-hover-bg:var(--ct-light-text-emphasis);--ct-btn-hover-border-color:var(--ct-light-text-emphasis);--ct-btn-focus-shadow-rgb:var(--ct-light-rgb);--ct-btn-active-bg:var(--ct-light-text-emphasis);--ct-btn-active-border-color:var(--ct-light-text-emphasis)}.btn-outline-light{--ct-btn-color:var(--ct-light);--ct-btn-bg:transparent;--ct-btn-border-color:var(--ct-light);--ct-btn-hover-bg:var(--ct-light);--ct-btn-hover-border-color:var(--ct-light);--ct-btn-focus-shadow-rgb:var(--ct-light-rgb);--ct-btn-active-bg:var(--ct-light);--ct-btn-active-border-color:var(--ct-light)}.btn-soft-light{--ct-btn-color:var(--ct-light);--ct-btn-bg:var(--ct-light-bg-subtle);--ct-btn-border-color:transparent;--ct-btn-hover-bg:var(--ct-light);--ct-btn-hover-border-color:var(--ct-light);--ct-btn-active-bg:var(--ct-light);--ct-btn-active-border-color:var(--ct-light);--ct-btn-disabled-color:var(--ct-light);--ct-btn-disabled-bg:var(--ct-light);--ct-btn-disabled-border-color:var(--ct-light);--ct-btn-focus-shadow-rgb:0 0 0 $btn-focus-width rgba(var(--ct-light)-rgb, 0.5)}.btn-dark{--ct-btn-bg:var(--ct-dark);--ct-btn-border-color:var(--ct-dark);--ct-btn-hover-bg:var(--ct-dark-text-emphasis);--ct-btn-hover-border-color:var(--ct-dark-text-emphasis);--ct-btn-focus-shadow-rgb:var(--ct-dark-rgb);--ct-btn-active-bg:var(--ct-dark-text-emphasis);--ct-btn-active-border-color:var(--ct-dark-text-emphasis)}.btn-outline-dark{--ct-btn-color:var(--ct-dark);--ct-btn-bg:transparent;--ct-btn-border-color:var(--ct-dark);--ct-btn-hover-bg:var(--ct-dark);--ct-btn-hover-border-color:var(--ct-dark);--ct-btn-focus-shadow-rgb:var(--ct-dark-rgb);--ct-btn-active-bg:var(--ct-dark);--ct-btn-active-border-color:var(--ct-dark)}.btn-soft-dark{--ct-btn-color:var(--ct-dark);--ct-btn-bg:var(--ct-dark-bg-subtle);--ct-btn-border-color:transparent;--ct-btn-hover-bg:var(--ct-dark);--ct-btn-hover-border-color:var(--ct-dark);--ct-btn-active-bg:var(--ct-dark);--ct-btn-active-border-color:var(--ct-dark);--ct-btn-disabled-color:var(--ct-dark);--ct-btn-disabled-bg:var(--ct-dark);--ct-btn-disabled-border-color:var(--ct-dark);--ct-btn-focus-shadow-rgb:0 0 0 $btn-focus-width rgba(var(--ct-dark)-rgb, 0.5)}.btn-purple{--ct-btn-bg:var(--ct-purple);--ct-btn-border-color:var(--ct-purple);--ct-btn-hover-bg:var(--ct-purple-text-emphasis);--ct-btn-hover-border-color:var(--ct-purple-text-emphasis);--ct-btn-focus-shadow-rgb:var(--ct-purple-rgb);--ct-btn-active-bg:var(--ct-purple-text-emphasis);--ct-btn-active-border-color:var(--ct-purple-text-emphasis)}.btn-outline-purple{--ct-btn-color:var(--ct-purple);--ct-btn-bg:transparent;--ct-btn-border-color:var(--ct-purple);--ct-btn-hover-bg:var(--ct-purple);--ct-btn-hover-border-color:var(--ct-purple);--ct-btn-focus-shadow-rgb:var(--ct-purple-rgb);--ct-btn-active-bg:var(--ct-purple);--ct-btn-active-border-color:var(--ct-purple)}.btn-soft-purple{--ct-btn-color:var(--ct-purple);--ct-btn-bg:var(--ct-purple-bg-subtle);--ct-btn-border-color:transparent;--ct-btn-hover-bg:var(--ct-purple);--ct-btn-hover-border-color:var(--ct-purple);--ct-btn-active-bg:var(--ct-purple);--ct-btn-active-border-color:var(--ct-purple);--ct-btn-disabled-color:var(--ct-purple);--ct-btn-disabled-bg:var(--ct-purple);--ct-btn-disabled-border-color:var(--ct-purple);--ct-btn-focus-shadow-rgb:0 0 0 $btn-focus-width rgba(var(--ct-purple)-rgb, 0.5)}.btn-pink{--ct-btn-bg:var(--ct-pink);--ct-btn-border-color:var(--ct-pink);--ct-btn-hover-bg:var(--ct-pink-text-emphasis);--ct-btn-hover-border-color:var(--ct-pink-text-emphasis);--ct-btn-focus-shadow-rgb:var(--ct-pink-rgb);--ct-btn-active-bg:var(--ct-pink-text-emphasis);--ct-btn-active-border-color:var(--ct-pink-text-emphasis)}.btn-outline-pink{--ct-btn-color:var(--ct-pink);--ct-btn-bg:transparent;--ct-btn-border-color:var(--ct-pink);--ct-btn-hover-bg:var(--ct-pink);--ct-btn-hover-border-color:var(--ct-pink);--ct-btn-focus-shadow-rgb:var(--ct-pink-rgb);--ct-btn-active-bg:var(--ct-pink);--ct-btn-active-border-color:var(--ct-pink)}.btn-soft-pink{--ct-btn-color:var(--ct-pink);--ct-btn-bg:var(--ct-pink-bg-subtle);--ct-btn-border-color:transparent;--ct-btn-hover-bg:var(--ct-pink);--ct-btn-hover-border-color:var(--ct-pink);--ct-btn-active-bg:var(--ct-pink);--ct-btn-active-border-color:var(--ct-pink);--ct-btn-disabled-color:var(--ct-pink);--ct-btn-disabled-bg:var(--ct-pink);--ct-btn-disabled-border-color:var(--ct-pink);--ct-btn-focus-shadow-rgb:0 0 0 $btn-focus-width rgba(var(--ct-pink)-rgb, 0.5)}.btn-soft-primary{--ct-btn-active-color:#fff;--ct-btn-hover-color:#fff}.btn-soft-secondary{--ct-btn-active-color:#fff;--ct-btn-hover-color:#fff}.btn-soft-success{--ct-btn-active-color:#fff;--ct-btn-hover-color:#fff}.btn-soft-info{--ct-btn-active-color:#fff;--ct-btn-hover-color:#fff}.btn-soft-warning{--ct-btn-active-color:#fff;--ct-btn-hover-color:#fff}.btn-soft-danger{--ct-btn-active-color:#fff;--ct-btn-hover-color:#fff}.btn-soft-light{--ct-btn-active-color:#212529;--ct-btn-hover-color:#212529}.btn-soft-dark{--ct-btn-active-color:#fff;--ct-btn-hover-color:#fff}.btn-soft-purple{--ct-btn-active-color:#fff;--ct-btn-hover-color:#fff}.btn-soft-pink{--ct-btn-active-color:#fff;--ct-btn-hover-color:#fff}[data-bs-theme=dark] .btn-light{--ct-btn-color:#fff;--ct-btn-active-color:#fff;--ct-btn-hover-color:#fff}.badge-outline-primary{--ct-badge-color:var(--ct-primary);border:1px solid var(--ct-primary);background-color:transparent}.badge-outline-primary[href]{color:var(--ct-primary);text-decoration:none;background-color:var(--ct-primary-bg-subtle)}.badge-outline-primary[href]:is(:hover,:focus){color:var(--ct-primary);text-decoration:none;background-color:var(--ct-primary-bg-subtle)}.badge-outline-secondary{--ct-badge-color:var(--ct-secondary);border:1px solid var(--ct-secondary);background-color:transparent}.badge-outline-secondary[href]{color:var(--ct-secondary);text-decoration:none;background-color:var(--ct-secondary-bg-subtle)}.badge-outline-secondary[href]:is(:hover,:focus){color:var(--ct-secondary);text-decoration:none;background-color:var(--ct-secondary-bg-subtle)}.badge-outline-success{--ct-badge-color:var(--ct-success);border:1px solid var(--ct-success);background-color:transparent}.badge-outline-success[href]{color:var(--ct-success);text-decoration:none;background-color:var(--ct-success-bg-subtle)}.badge-outline-success[href]:is(:hover,:focus){color:var(--ct-success);text-decoration:none;background-color:var(--ct-success-bg-subtle)}.badge-outline-info{--ct-badge-color:var(--ct-info);border:1px solid var(--ct-info);background-color:transparent}.badge-outline-info[href]{color:var(--ct-info);text-decoration:none;background-color:var(--ct-info-bg-subtle)}.badge-outline-info[href]:is(:hover,:focus){color:var(--ct-info);text-decoration:none;background-color:var(--ct-info-bg-subtle)}.badge-outline-warning{--ct-badge-color:var(--ct-warning);border:1px solid var(--ct-warning);background-color:transparent}.badge-outline-warning[href]{color:var(--ct-warning);text-decoration:none;background-color:var(--ct-warning-bg-subtle)}.badge-outline-warning[href]:is(:hover,:focus){color:var(--ct-warning);text-decoration:none;background-color:var(--ct-warning-bg-subtle)}.badge-outline-danger{--ct-badge-color:var(--ct-danger);border:1px solid var(--ct-danger);background-color:transparent}.badge-outline-danger[href]{color:var(--ct-danger);text-decoration:none;background-color:var(--ct-danger-bg-subtle)}.badge-outline-danger[href]:is(:hover,:focus){color:var(--ct-danger);text-decoration:none;background-color:var(--ct-danger-bg-subtle)}.badge-outline-light{--ct-badge-color:var(--ct-light);border:1px solid var(--ct-light);background-color:transparent}.badge-outline-light[href]{color:var(--ct-light);text-decoration:none;background-color:var(--ct-light-bg-subtle)}.badge-outline-light[href]:is(:hover,:focus){color:var(--ct-light);text-decoration:none;background-color:var(--ct-light-bg-subtle)}.badge-outline-dark{--ct-badge-color:var(--ct-dark);border:1px solid var(--ct-dark);background-color:transparent}.badge-outline-dark[href]{color:var(--ct-dark);text-decoration:none;background-color:var(--ct-dark-bg-subtle)}.badge-outline-dark[href]:is(:hover,:focus){color:var(--ct-dark);text-decoration:none;background-color:var(--ct-dark-bg-subtle)}.badge-outline-purple{--ct-badge-color:var(--ct-purple);border:1px solid var(--ct-purple);background-color:transparent}.badge-outline-purple[href]{color:var(--ct-purple);text-decoration:none;background-color:var(--ct-purple-bg-subtle)}.badge-outline-purple[href]:is(:hover,:focus){color:var(--ct-purple);text-decoration:none;background-color:var(--ct-purple-bg-subtle)}.badge-outline-pink{--ct-badge-color:var(--ct-pink);border:1px solid var(--ct-pink);background-color:transparent}.badge-outline-pink[href]{color:var(--ct-pink);text-decoration:none;background-color:var(--ct-pink-bg-subtle)}.badge-outline-pink[href]:is(:hover,:focus){color:var(--ct-pink);text-decoration:none;background-color:var(--ct-pink-bg-subtle)}.card{-webkit-box-shadow:var(--ct-box-shadow);box-shadow:var(--ct-box-shadow);margin-bottom:.6rem}.card .header-title{margin-bottom:.5rem;font-size:.95rem;margin-top:0}.card .card-drop{font-size:20px;color:inherit}.card .card-widgets{float:left;height:16px}.card .card-widgets>a{color:inherit;font-size:18px;display:inline-block;line-height:1;min-width:20px}.card .card-widgets>a.collapsed i:before{content:"\ea13"}.card-header,.card-title{margin-top:0}.card-header .header-title,.card-title .header-title{margin-bottom:0}.card-disabled{position:absolute;right:0;left:0;top:0;bottom:0;border-radius:var(--ct-border-radius);background:rgba(242,242,247,.8);cursor:progress}.card-disabled .card-portlets-loader{background-color:var(--ct-gray-900);-webkit-animation:rotatebox 1.2s infinite ease-in-out;animation:rotatebox 1.2s infinite ease-in-out;height:30px;width:30px;border-radius:3px;position:absolute;right:50%;top:50%;margin-right:-.625rem;margin-top:-.625rem}@-webkit-keyframes rotatebox{0%{-webkit-transform:perspective(120px) rotateX(0) rotateY(0);transform:perspective(120px) rotateX(0) rotateY(0)}50%{-webkit-transform:perspective(120px) rotateX(-180.1deg) rotateY(0);transform:perspective(120px) rotateX(-180.1deg) rotateY(0)}100%{-webkit-transform:perspective(120px) rotateX(-180deg) rotateY(179.9deg);transform:perspective(120px) rotateX(-180deg) rotateY(179.9deg)}}@keyframes rotatebox{0%{-webkit-transform:perspective(120px) rotateX(0) rotateY(0);transform:perspective(120px) rotateX(0) rotateY(0)}50%{-webkit-transform:perspective(120px) rotateX(-180.1deg) rotateY(0);transform:perspective(120px) rotateX(-180.1deg) rotateY(0)}100%{-webkit-transform:perspective(120px) rotateX(-180deg) rotateY(179.9deg);transform:perspective(120px) rotateX(-180deg) rotateY(179.9deg)}}.card-h-100{height:calc(100% - 1.25rem)}.form-checkbox-primary .form-check-input:checked,.form-radio-primary .form-check-input:checked{background-color:var(--ct-primary);border-color:var(--ct-primary)}.form-checkbox-secondary .form-check-input:checked,.form-radio-secondary .form-check-input:checked{background-color:var(--ct-secondary);border-color:var(--ct-secondary)}.form-checkbox-success .form-check-input:checked,.form-radio-success .form-check-input:checked{background-color:var(--ct-success);border-color:var(--ct-success)}.form-checkbox-info .form-check-input:checked,.form-radio-info .form-check-input:checked{background-color:var(--ct-info);border-color:var(--ct-info)}.form-checkbox-warning .form-check-input:checked,.form-radio-warning .form-check-input:checked{background-color:var(--ct-warning);border-color:var(--ct-warning)}.form-checkbox-danger .form-check-input:checked,.form-radio-danger .form-check-input:checked{background-color:var(--ct-danger);border-color:var(--ct-danger)}.form-checkbox-light .form-check-input:checked,.form-radio-light .form-check-input:checked{background-color:var(--ct-light);border-color:var(--ct-light)}.form-checkbox-dark .form-check-input:checked,.form-radio-dark .form-check-input:checked{background-color:var(--ct-dark);border-color:var(--ct-dark)}.form-checkbox-purple .form-check-input:checked,.form-radio-purple .form-check-input:checked{background-color:var(--ct-purple);border-color:var(--ct-purple)}.form-checkbox-pink .form-check-input:checked,.form-radio-pink .form-check-input:checked{background-color:var(--ct-pink);border-color:var(--ct-pink)}.dropdown-menu{-webkit-box-shadow:var(--ct-dropdown-box-shadow);box-shadow:var(--ct-dropdown-box-shadow)}.dropdown-header{margin-top:0}.dropdown-menu-animated{opacity:0;visibility:hidden;display:block!important;-webkit-transform:scale(.75)!important;transform:scale(.75)!important;-webkit-transition:all .1s linear!important;transition:all .1s linear!important;-webkit-transform-origin:top right;transform-origin:top right;inset:auto!important;top:100%!important}.dropdown-menu-animated.dropdown-menu-end{left:0!important;-webkit-transform-origin:top left;transform-origin:top left}.dropdown-menu-animated.show{opacity:1;visibility:visible;top:100%!important;margin-top:2px!important;-webkit-transform:scale(1)!important;transform:scale(1)!important}.dropdown.hover-dropdown:hover .dropdown-menu{display:block!important;top:100%!important}.dropdown.hover-dropdown:hover .dropdown-menu-animated{opacity:1;-webkit-transition:all .1s linear!important;transition:all .1s linear!important;-webkit-transform-origin:top right;transform-origin:top right;visibility:visible;top:100%!important;-webkit-transform:scale(1)!important;transform:scale(1)!important}.dropdown.hover-dropdown:hover .dropdown-menu-animated.dropdown-menu-end{left:0!important;right:auto!important;-webkit-transform-origin:top left;transform-origin:top left}.dropdown-center .dropdown-menu-animated{-webkit-transform:scale(.75) translateX(50%)!important;transform:scale(.75) translateX(50%)!important;right:50%!important}.dropdown-center .dropdown-menu-animated.show{opacity:1;visibility:visible;top:100%!important;-webkit-transform:scale(1) translateX(50%)!important;transform:scale(1) translateX(50%)!important}.dropdown-center.hover-dropdown:hover .dropdown-menu-animated{opacity:1;visibility:visible;right:50%!important;top:100%!important;-webkit-transform:scale(1) translateX(50%)!important;transform:scale(1) translateX(50%)!important}.dropdown-toggle-split::before{content:"";position:absolute;background-color:rgba(73,82,107,.08);top:-1px;bottom:-1px;left:-1px;right:0;border-radius:var(--ct-border-radius) 0 0 var(--ct-border-radius)}.dropstart .dropdown-toggle-split::before{inset:auto;border-radius:0;position:relative;z-index:1}.dropstart::after{content:"";position:absolute;background-color:rgba(73,82,107,.08);top:0;bottom:0;left:0;right:0;border-radius:0 var(--ct-border-radius) var(--ct-border-radius) 0}@media (min-width:576px){.dropdown-lg{width:320px}}.dropdown-icon-item{display:block;border-radius:3px;line-height:34px;text-align:center;padding:15px 0 9px;display:block;border:1px solid transparent;color:var(--ct-body-color)}.dropdown-icon-item img{height:24px}.dropdown-icon-item span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dropdown-icon-item:hover{background-color:var(--ct-primary-bg-subtle);color:var(--ct-primary)}.arrow-none:after{display:none}.form-check-label{font-weight:400}.form-control-light{background-color:var(--ct-tertiary-bg)!important;border-color:var(--ct-border-color)!important;border-width:var(--ct-theme-card-border-width);border-style:solid;border-color:var(--ct-border-color)}input.form-control[type=color],input.form-control[type=range]{min-height:39px}.custom-select.is-invalid:focus,.custom-select.is-valid:focus,.custom-select:invalid:focus,.custom-select:valid:focus,.form-control.is-invalid:focus,.form-control.is-valid:focus,.form-control:invalid:focus,.form-control:valid:focus{-webkit-box-shadow:none!important;box-shadow:none!important}select.form-control:not([size]):not([multiple]){height:calc(1.5em + .9rem + calc(var(--ct-border-width) * 2))}select.form-control-sm:not([size]):not([multiple]){height:calc(1.5em + .56rem + calc(var(--ct-border-width) * 2))}.password-eye{cursor:pointer}.password-eye:before{font-family:remixicon;content:"\ecb5";font-style:normal;font-weight:400;font-variant:normal;vertical-align:middle;line-height:1.2;font-size:16px}.show-password .password-eye:before{content:"\ecb7"}.modal-dialog{-webkit-box-shadow:0 2px 5px 0 rgba(27,23,30,.3);box-shadow:0 2px 5px 0 rgba(27,23,30,.3)}.modal-title{margin-top:0}.modal-full-width{width:95%;max-width:none}.modal-top{margin:0 auto}.modal-right{position:absolute;left:0;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-flow:column nowrap;flex-flow:column nowrap;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;height:100%;margin:0;background-color:var(--ct-secondary-bg);-ms-flex-line-pack:center;align-content:center;-webkit-transform:translate(-25%,0)!important;transform:translate(-25%,0)!important}.modal-right button.btn-close{position:fixed;top:20px;left:20px;z-index:1}.modal.show .modal-left,.modal.show .modal-right{-webkit-transform:translate(0,0)!important;transform:translate(0,0)!important}.modal-bottom{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-flow:column nowrap;flex-flow:column nowrap;-ms-flex-pack:end;-webkit-box-pack:end;justify-content:flex-end;height:100%;margin:0 auto;-ms-flex-line-pack:center;align-content:center}.modal-colored-header{border-radius:0}.modal-colored-header .modal-title{color:#fff!important}.modal-filled{color:#fff}.modal-filled .modal-header{background-color:rgba(255,255,255,.07)}.modal-filled .modal-title{color:#fff}.modal-filled .modal-footer,.modal-filled .modal-header{border:none}.nav-pills>li>a,.nav-tabs>li>a{color:var(--ct-secondary-color);font-weight:500}.nav-pills>a{color:var(--ct-gray-700);font-weight:500}.bg-nav-pills{background-color:var(--ct-tertiary-bg)}.nav-tabs.nav-bordered{border-bottom:2px solid var(--ct-border-color)}.nav-tabs.nav-bordered .nav-item{margin-bottom:-1px}.nav-tabs.nav-bordered li a{border:0;padding:.625rem 1.25rem}.nav-tabs.nav-bordered li a.active{border-bottom:2px solid var(--ct-primary)}.pagination-rounded .page-link{border-radius:30px!important;margin:0 3px!important;border:none}.popover{-webkit-box-shadow:var(--ct-box-shadow-lg);box-shadow:var(--ct-box-shadow-lg)}.popover-header{margin-top:0}.primary-popover{--ct-popover-max-width:200px!important;--ct-popover-border-color:var(--ct-primary)!important;--ct-popover-header-bg:var(--ct-primary)!important;--ct-popover-header-color:var(--ct-white)!important;--ct-popover-body-padding-x:1rem!important;--ct-popover-body-padding-y:.5rem!important}.secondary-popover{--ct-popover-max-width:200px!important;--ct-popover-border-color:var(--ct-secondary)!important;--ct-popover-header-bg:var(--ct-secondary)!important;--ct-popover-header-color:var(--ct-white)!important;--ct-popover-body-padding-x:1rem!important;--ct-popover-body-padding-y:.5rem!important}.success-popover{--ct-popover-max-width:200px!important;--ct-popover-border-color:var(--ct-success)!important;--ct-popover-header-bg:var(--ct-success)!important;--ct-popover-header-color:var(--ct-white)!important;--ct-popover-body-padding-x:1rem!important;--ct-popover-body-padding-y:.5rem!important}.info-popover{--ct-popover-max-width:200px!important;--ct-popover-border-color:var(--ct-info)!important;--ct-popover-header-bg:var(--ct-info)!important;--ct-popover-header-color:var(--ct-white)!important;--ct-popover-body-padding-x:1rem!important;--ct-popover-body-padding-y:.5rem!important}.warning-popover{--ct-popover-max-width:200px!important;--ct-popover-border-color:var(--ct-warning)!important;--ct-popover-header-bg:var(--ct-warning)!important;--ct-popover-header-color:var(--ct-white)!important;--ct-popover-body-padding-x:1rem!important;--ct-popover-body-padding-y:.5rem!important}.danger-popover{--ct-popover-max-width:200px!important;--ct-popover-border-color:var(--ct-danger)!important;--ct-popover-header-bg:var(--ct-danger)!important;--ct-popover-header-color:var(--ct-white)!important;--ct-popover-body-padding-x:1rem!important;--ct-popover-body-padding-y:.5rem!important}.light-popover{--ct-popover-max-width:200px!important;--ct-popover-border-color:var(--ct-light)!important;--ct-popover-header-bg:var(--ct-light)!important;--ct-popover-header-color:var(--ct-white)!important;--ct-popover-body-padding-x:1rem!important;--ct-popover-body-padding-y:.5rem!important}.dark-popover{--ct-popover-max-width:200px!important;--ct-popover-border-color:var(--ct-dark)!important;--ct-popover-header-bg:var(--ct-dark)!important;--ct-popover-header-color:var(--ct-white)!important;--ct-popover-body-padding-x:1rem!important;--ct-popover-body-padding-y:.5rem!important}.purple-popover{--ct-popover-max-width:200px!important;--ct-popover-border-color:var(--ct-purple)!important;--ct-popover-header-bg:var(--ct-purple)!important;--ct-popover-header-color:var(--ct-white)!important;--ct-popover-body-padding-x:1rem!important;--ct-popover-body-padding-y:.5rem!important}.pink-popover{--ct-popover-max-width:200px!important;--ct-popover-border-color:var(--ct-pink)!important;--ct-popover-header-bg:var(--ct-pink)!important;--ct-popover-header-color:var(--ct-white)!important;--ct-popover-body-padding-x:1rem!important;--ct-popover-body-padding-y:.5rem!important}@media print{.end-bar,.footer,.leftside-menu,.navbar-custom,.page-title-box{display:none}.card-body,.content,.content-page,.end-bar,body{padding:0;margin:0}.card{-webkit-box-shadow:none;box-shadow:none}}.progress-sm{height:5px}.progress-md{height:8px}.progress-lg{height:12px}.progress-xl{height:15px}html{position:relative;min-height:100%}@supports (-webkit-overflow-scrolling:touch){body{cursor:pointer}}body{overflow-x:hidden}a,button{outline:0!important}label{font-weight:500}address.address-lg{line-height:24px}b,strong{font-weight:700}.table-centered td,.table-centered th{vertical-align:middle!important}.table .table-user img{height:30px;width:30px}.table>:not(caption)>*>*{background-color:var(--ct-table-bg)!important}.table.table-bordered tbody{border-top:1px solid;border-top-color:inherit}.table-sm .action-icon{font-size:1rem}.table-nowrap td,.table-nowrap th{white-space:nowrap}.primary-tooltip{--ct-tooltip-bg:var(--ct-primary)!important}.secondary-tooltip{--ct-tooltip-bg:var(--ct-secondary)!important}.success-tooltip{--ct-tooltip-bg:var(--ct-success)!important}.info-tooltip{--ct-tooltip-bg:var(--ct-info)!important}.warning-tooltip{--ct-tooltip-bg:var(--ct-warning)!important}.danger-tooltip{--ct-tooltip-bg:var(--ct-danger)!important}.light-tooltip{--ct-tooltip-bg:var(--ct-light)!important}.dark-tooltip{--ct-tooltip-bg:var(--ct-dark)!important}.purple-tooltip{--ct-tooltip-bg:var(--ct-purple)!important}.pink-tooltip{--ct-tooltip-bg:var(--ct-pink)!important}.progress-w-percent{min-height:20px;margin-bottom:15px}.progress-w-percent .progress{width:calc(100% - 50px);float:right;margin-top:8px}.progress-w-percent .progress-value{width:40px;float:left;text-align:left;line-height:20px}.widget-icon-box .widget-icon-box-avatar{-webkit-transform:rotate(-45deg);transform:rotate(-45deg);-webkit-transition:-webkit-transform .15s;transition:-webkit-transform .15s;transition:transform .15s;transition:transform .15s,-webkit-transform .15s}.widget-icon-box .widget-icon-box-avatar i{-webkit-transform:rotate(45deg);transform:rotate(45deg);-webkit-transition:-webkit-transform .15s;transition:-webkit-transform .15s;transition:transform .15s;transition:transform .15s,-webkit-transform .15s}.widget-icon-box:hover .widget-icon-box-avatar{-webkit-transform:rotate(0);transform:rotate(0)}.widget-icon-box:hover .widget-icon-box-avatar i{-webkit-transform:rotate(0);transform:rotate(0)}.widget-flat{position:relative;overflow:hidden}@media (min-width:1200px) and (max-width:1500px){.widget-flat i.widget-icon{display:none}}.widget-icon{color:var(--ct-primary);font-size:20px;background-color:rgba(var(--ct-primary-rgb),.25);height:40px;width:40px;text-align:center;line-height:40px;border-radius:3px;display:inline-block}.dash-item-overlay{position:absolute;text-align:left;left:8%;max-width:350px;padding:20px;z-index:1}.chart-widget-list p{border-bottom:1px solid var(--ct-border-color);margin-bottom:.5rem;padding-bottom:.5rem}.timeline-alt{padding:20px 0;position:relative}.timeline-alt .timeline-item{position:relative}.timeline-alt .timeline-item:before{background-color:var(--ct-tertiary-bg);bottom:0;content:"";right:9px;position:absolute;top:20px;width:2px;z-index:0}.timeline-alt .timeline-item .timeline-icon{float:right;height:20px;width:20px;border-radius:50%;border:2px solid transparent;font-size:12px;text-align:center;line-height:16px;background-color:#fff}.timeline-alt .timeline-item .timeline-item-info{margin-right:30px}.timeline-alt .timeline-item:last-of-type::before{display:none}.inbox-widget .inbox-item{border-bottom:1px solid var(--ct-border-color);overflow:hidden;padding:.625rem 0;position:relative}.inbox-widget .inbox-item:last-of-type{border-bottom:none}.inbox-widget .inbox-item .inbox-item-img{display:block;float:right;margin-left:15px;width:40px}.inbox-widget .inbox-item .inbox-item-img img{width:40px}.inbox-widget .inbox-item .inbox-item-author{color:var(--ct-tertiary-color);display:block;margin-bottom:3px}.inbox-widget .inbox-item .inbox-item-text{color:var(--ct-gray-500);display:block;font-size:.8125rem;margin:0}.inbox-widget .inbox-item .inbox-item-date{color:var(--ct-gray-600);font-size:.6875rem;position:absolute;left:5px;top:10px}.tilebox-one i{position:absolute;left:1.5rem;font-size:2rem;opacity:.3}.toll-free-box i{position:absolute;right:0;bottom:-15px;font-size:4rem;opacity:.4;-webkit-transform:rotate(-30deg);transform:rotate(-30deg)}.cta-box .cta-box-title{font-size:20px;line-height:30px}.conversation-list{list-style:none;padding:0 15px}.conversation-list li{margin-bottom:20px}.conversation-list li .conversation-actions{float:left;display:none}.conversation-list li:hover .conversation-actions{display:block}.conversation-list .chat-avatar{float:right;text-align:center;width:32px}.conversation-list .chat-avatar img{border-radius:100%;width:100%}.conversation-list .chat-avatar i{font-size:12px;font-style:normal}.conversation-list .ctext-wrap{background:var(--ct-light);-webkit-box-shadow:var(--ct-box-shadow);box-shadow:var(--ct-box-shadow);border-radius:3px;display:inline-block;padding:12px;position:relative}.conversation-list .ctext-wrap i{display:block;font-size:12px;font-style:normal;font-weight:700;position:relative}.conversation-list .ctext-wrap p{margin:0;padding-top:3px}.conversation-list .ctext-wrap:after{right:-11px;top:0;border:solid transparent;content:" ";height:0;width:0;position:absolute;pointer-events:none;border-top-color:var(--ct-light);border-width:6px;margin-left:-1px;border-left-color:var(--ct-light)}.conversation-list .conversation-text{float:right;margin-right:12px;width:70%}.conversation-list .odd .chat-avatar{float:left!important}.conversation-list .odd .conversation-text{float:left!important;margin-left:12px;text-align:left;width:70%!important;color:#fff}.conversation-list .odd .ctext-wrap{background-color:var(--ct-primary);-webkit-box-shadow:var(--ct-box-shadow-lg);box-shadow:var(--ct-box-shadow-lg)}.conversation-list .odd .ctext-wrap:after{border-color:transparent;border-right-color:var(--ct-primary);border-top-color:var(--ct-primary);left:-8px;right:auto}.conversation-list .odd .conversation-actions{float:right}.calendar-widget .datepicker-inline,.calendar-widget table{width:100%}.calendar-widget .datepicker-inline tr td,.calendar-widget .datepicker-inline tr td.active.day,.calendar-widget .datepicker-inline tr td.today.day,.calendar-widget .datepicker-inline tr th,.calendar-widget table tr td,.calendar-widget table tr td.active.day,.calendar-widget table tr td.today.day,.calendar-widget table tr th{background-color:transparent!important}.calendar-widget .datepicker-inline tr td.active.day,.calendar-widget .datepicker-inline tr td.today.day,.calendar-widget table tr td.active.day,.calendar-widget table tr td.today.day{color:#f7473a!important;text-shadow:none;font-weight:700}.calendar-widget .datepicker-inline tr td.active.day:hover,.calendar-widget .datepicker-inline tr td.today.day:hover,.calendar-widget table tr td.active.day:hover,.calendar-widget table tr td.today.day:hover{background-color:transparent!important}.calendar-widget .datepicker-inline td,.calendar-widget .datepicker-inline th,.calendar-widget table td,.calendar-widget table th{height:45px}.calendar-widget .datepicker-inline .datepicker-switch,.calendar-widget .datepicker-inline .next,.calendar-widget .datepicker-inline .prev,.calendar-widget table .datepicker-switch,.calendar-widget table .next,.calendar-widget table .prev{font-size:1.1rem;background-color:rgba(var(--ct-primary-rgb),.1)!important;border-radius:0;color:var(--ct-primary)}.card-bg-img{background-size:cover;background-position:left center;background-repeat:no-repeat}.social-list-item{height:2rem;width:2rem;line-height:calc(2rem - 4px);display:block;border:2px solid var(--ct-gray-500);border-radius:50%;color:var(--ct-gray-500)}.social-list-item:hover{color:var(--ct-gray-600);border-color:var(--ct-gray-600)}.horizontal-steps{display:-webkit-box;display:-ms-flexbox;display:flex;position:relative;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;align-items:center;width:100%}.horizontal-steps:before{content:"";display:block;position:absolute;width:100%;height:.2em;background-color:var(--ct-border-color)}.horizontal-steps .process-line{display:block;position:absolute;width:50%;height:.2em;background-color:var(--ct-primary)}.horizontal-steps .horizontal-steps-content{display:-webkit-box;display:-ms-flexbox;display:flex;position:relative;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;align-items:center;width:100%}.horizontal-steps .horizontal-steps-content .step-item{display:block;position:relative;bottom:calc(100% + 1em);height:8px;width:8px;margin:0 2em;-webkit-box-sizing:content-box;box-sizing:content-box;color:var(--ct-primary);background-color:currentColor;border:.25em solid var(--ct-body-bg);border-radius:50%;z-index:5}.horizontal-steps .horizontal-steps-content .step-item:first-child{margin-right:0}.horizontal-steps .horizontal-steps-content .step-item:last-child{margin-left:0;color:#17a497}.horizontal-steps .horizontal-steps-content .step-item span{position:absolute;top:calc(100% + 1em);right:50%;-webkit-transform:translateX(50%);transform:translateX(50%);white-space:nowrap;color:var(--ct-gray-500)}.horizontal-steps .horizontal-steps-content .step-item.current:before{content:"";display:block;position:absolute;top:48%;right:48%;padding:1em;background-color:currentColor;border-radius:50%;opacity:0;z-index:-1;-webkit-animation-name:animation-steps-current;animation-name:animation-steps-current;-webkit-animation-duration:2s;animation-duration:2s;-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite;-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}.horizontal-steps .horizontal-steps-content .step-item.current span{color:var(--ct-primary)!important}@-webkit-keyframes animation-steps-current{from{-webkit-transform:translate(50%,-50%) scale(0);transform:translate(50%,-50%) scale(0);opacity:1}to{-webkit-transform:translate(50%,-50%) scale(1);transform:translate(50%,-50%) scale(1);opacity:0}}@keyframes animation-steps-current{from{-webkit-transform:translate(50%,-50%) scale(0);transform:translate(50%,-50%) scale(0);opacity:1}to{-webkit-transform:translate(50%,-50%) scale(1);transform:translate(50%,-50%) scale(1);opacity:0}}@media (max-width:767.98px){.horizontal-steps .horizontal-steps-content .step-item span{white-space:inherit}}#preloader{position:fixed;top:0;right:0;left:0;bottom:0;background-color:var(--ct-tertiary-bg);z-index:9999}#status{width:80px;height:80px;position:absolute;right:50%;top:50%;margin:-40px -40px 0 0}@-webkit-keyframes bouncing-loader{to{opacity:.1;-webkit-transform:translate3d(0,-16px,0);transform:translate3d(0,-16px,0)}}@keyframes bouncing-loader{to{opacity:.1;-webkit-transform:translate3d(0,-16px,0);transform:translate3d(0,-16px,0)}}.bouncing-loader{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.bouncing-loader>div{width:13px;height:13px;margin:32px 3px;background:var(--ct-primary);border-radius:50%;-webkit-animation:bouncing-loader .6s infinite alternate;animation:bouncing-loader .6s infinite alternate}.bouncing-loader>div:nth-child(2){-webkit-animation-delay:.2s;animation-delay:.2s;background:#f7473a}.bouncing-loader>div:nth-child(3){-webkit-animation-delay:.4s;animation-delay:.4s;background:#17a497}.auth-brand{margin-bottom:2rem}.auth-brand .logo-dark{display:block}.auth-brand .logo-light{display:none}html[data-theme=dark] .auth-brand .logo-dark{display:none}html[data-theme=dark] .auth-brand .logo-light{display:block}body.authentication-bg .account-pages{-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-ms-flexbox;display:flex;min-height:100vh}.auth-fluid-pages.enlarged,.authentication-bg.enlarged,body.auth-fluid-pages[data-sidenav-size=condensed]{min-height:100px}.logout-icon{width:140px}.auth-fluid{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;min-height:100vh;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch;background:url(../images/bg-auth.jpg) center;background-size:cover}.auth-fluid .auth-fluid-form-box{max-width:480px;border-radius:0;z-index:2;padding:3rem;background-color:var(--ct-secondary-bg);position:relative;width:100%;border-top:4px double #4254ba}.auth-fluid .auth-fluid-left,.auth-fluid .auth-fluid-right{padding:6rem 3rem;-webkit-box-flex:1;-ms-flex:1;flex:1;position:relative;color:#fff;background-color:rgba(0,0,0,.3)}.auth-user-testimonial{position:absolute;margin:0 auto;padding:0 1.75rem;bottom:3rem;right:0;left:0}.auth-user-testimonial p.lead{font-size:1.125rem;margin:0 auto 20px auto;max-width:700px}@media (max-width:991.98px){.auth-fluid{display:block}.auth-fluid .auth-fluid-form-box{max-width:100%;min-height:100vh}.auth-fluid .auth-fluid-left{display:none}}html[data-bs-theme=dark] .auth-brand .logo-light{display:block}html[data-bs-theme=dark] .auth-brand .logo-dark{display:none}.scrollspy-example{position:relative;height:200px;margin-top:.5rem;overflow:auto}.grid-structure .grid-container{background-color:var(--ct-tertiary-bg);margin-bottom:10px;font-size:.8rem;font-weight:600;padding:10px 20px}.icons-list-demo div{cursor:pointer;line-height:45px;white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.icons-list-demo div p{margin-bottom:0;line-height:inherit}.icons-list-demo div:hover,.icons-list-demo div:hover i{color:var(--ct-primary)}.icons-list-demo i{text-align:center;vertical-align:middle;font-size:24px;width:50px;height:50px;line-height:50px;margin-left:12px;border-radius:3px;display:inline-block;-webkit-transition:all .2s;transition:all .2s}.text-error{color:var(--ct-primary);text-shadow:rgba(var(--ct-primary-rgb),.3) -5px 1px,rgba(var(--ct-primary-rgb),.2) -10px 3px;font-size:5.25rem;line-height:5.625rem}.faq-question-q-box{height:30px;width:30px;color:var(--ct-primary);background-color:rgba(var(--ct-primary-rgb),.25);-webkit-box-shadow:0 2px 5px 0 rgba(27,23,30,.3);box-shadow:0 2px 5px 0 rgba(27,23,30,.3);text-align:center;border-radius:50%;float:right;font-weight:700;line-height:30px}.faq-question{margin-top:0;margin-right:50px;font-weight:500;font-size:16px;color:var(--ct-tertiary-color)}.faq-answer{margin-right:50px}.pricing-column{position:relative}.ribbon{position:absolute;right:0;top:-5px;z-index:1;overflow:hidden;width:75px;height:75px;text-align:left}.ribbon span{font-size:10px;color:#fff;text-transform:uppercase;text-align:center;line-height:20px;-webkit-transform:rotate(45deg);transform:rotate(45deg);width:100px;display:block;-webkit-box-shadow:0 2px 5px 0 rgba(27,23,30,.3);box-shadow:0 2px 5px 0 rgba(27,23,30,.3);background:#4254ba;position:absolute;top:19px;right:-21px}.ribbon span:before{content:"";position:absolute;right:0;top:100%;z-index:-1;border-right:3px solid #4254ba;border-left:3px solid transparent;border-bottom:3px solid transparent;border-top:3px solid #4254ba}.ribbon span:after{content:"";position:absolute;left:0;top:100%;z-index:-1;border-right:3px solid transparent;border-left:3px solid #4254ba;border-bottom:3px solid transparent;border-top:3px solid #4254ba}.maintenance-icon{font-size:22px;-webkit-box-shadow:0 2px 5px 0 rgba(27,23,30,.3);box-shadow:0 2px 5px 0 rgba(27,23,30,.3);height:60px;display:inline-block;width:60px;line-height:58px;border-radius:50%}.board{display:block;white-space:nowrap;overflow-x:auto;overflow-y:hidden}.tasks{display:inline-block;width:22rem;padding:0 1rem 1rem 1rem;border:1px solid var(--ct-border-color);vertical-align:top;margin-bottom:1.25rem;border-radius:var(--ct-border-radius)}.tasks.tasks:not(:last-child){margin-left:1.25rem}.tasks .card{white-space:normal;margin-top:1rem}.tasks .task-header{padding-top:1rem}.task-list-items{min-height:100px;position:relative}.task-list-items:before{content:"No Tasks";position:absolute;line-height:110px;width:100%;text-align:center;font-weight:600}.task-modal-content .form-control-light{background-color:var(--ct-light)!important;border-color:var(--ct-border-color)!important}.gantt-task-details{min-width:220px}.page-aside-left{width:240px;float:right;padding:0 10px 20px 20px;position:relative}.page-aside-left:before{content:"";background-color:var(--ct-body-bg);width:5px;position:absolute;left:-15px;height:100%;bottom:-1.5rem}.page-aside-right{margin:-1.5rem 250px -1.5rem 0;border-right:5px solid var(--ct-body-bg);padding:1.5rem 25px 1.5rem 0}.email-list{display:block;padding-right:0;overflow:hidden}.email-list>li{position:relative;display:block;height:51px;line-height:50px;cursor:default;-webkit-transition-duration:.3s;transition-duration:.3s}.email-list>li a{color:var(--ct-secondary-color)}.email-list>li a:hover{color:var(--ct-tertiary-color)}.email-list>li .col-mail{float:right;position:relative}.email-list>li .email-sender-info{width:320px}.email-list>li .email-sender-info .checkbox-wrapper-mail,.email-list>li .email-sender-info .star-toggle{display:block;float:right}.email-list>li .email-sender-info .checkbox-wrapper-mail{margin:15px 20px 0 10px;cursor:pointer;height:20px;width:20px}.email-list>li .email-sender-info .star-toggle{color:var(--ct-gray-500);margin-right:10px;font-size:18px}.email-list>li .email-sender-info .email-title{position:absolute;top:0;right:100px;left:0;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;margin-bottom:0;line-height:50px}.email-list>li .email-content{position:absolute;top:0;right:320px;left:0;bottom:0}.email-list>li .email-content .email-date,.email-list>li .email-content .email-subject{position:absolute;top:0}.email-list>li .email-content .email-subject{right:0;left:110px;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.email-list>li .email-content .email-date{left:0;width:100px;text-align:left;padding-right:10px}.email-list>li.active,.email-list>li.mail-selected{background:var(--ct-tertiary-bg);-webkit-transition-duration:50ms;transition-duration:50ms}.email-list>li.unread a{font-weight:500;color:var(--ct-dark)}.email-list>li.unread a i{font-weight:400}.email-list>li .email-action-icons{opacity:0}.email-list>li .email-action-icons ul{display:-webkit-box;display:-ms-flexbox;display:flex;position:absolute;-webkit-transition:all .5s;transition:all .5s;left:-180px}.email-list>li .email-action-icons ul li{margin:0 8px}.email-list>li .email-action-icons ul .email-action-icons-item{font-size:20px;-webkit-transition:all .5s;transition:all .5s}.email-list>li .email-action-icons ul .email-action-icons-item:hover{color:#f7473a}.email-list>li:hover{background:var(--ct-tertiary-bg);-webkit-transition-duration:50ms;transition-duration:50ms}.email-list>li:hover .email-action-icons{opacity:1}.email-list>li:hover .email-action-icons ul{-webkit-transition:all .5s;transition:all .5s;left:10px}.email-list>li:hover .email-content .email-date{opacity:0}.email-list>li:hover .email-content .email-subject{left:180px;-webkit-transition:all .5s;transition:all .5s}.email-menu-list a{color:var(--ct-secondary-color);padding:8px 5px;display:block}.email-menu-list a:hover{color:var(--ct-tertiary-color)}.email-menu-list a .badge{margin-top:3px}.labels-list a{padding:7px 5px}.write-mdg-box .CodeMirror{height:150px}@media (max-width:648px){.page-aside-right{width:100%;float:none;padding:0 10px 20px 10px}.page-aside-right:before{width:0}.page-aside-right{margin-right:0;border:0;padding-right:0}.email-list li .email-sender-info .checkbox-wrapper-mail{margin-right:0}}@media (max-width:520px){.page-aside-left>.btn-group{margin-bottom:10px}.email-list li .email-sender-info{width:150px}.email-list li .email-sender-info .email-title{right:80px}.email-list li .email-content{display:none}}.timeline{margin-bottom:50px;position:relative}.timeline:before{background-color:var(--ct-border-color);bottom:0;content:"";right:50%;position:absolute;top:30px;width:2px;z-index:0}.timeline-show{position:relative}.timeline-show .time-show-name{display:inline-block;border-radius:4px;background-color:var(--ct-border-color);padding:7px 15px}.timeline-box{background-color:var(--ct-secondary-bg);-webkit-box-shadow:var(--ct-box-shadow);box-shadow:var(--ct-box-shadow);display:block;margin:15px 0;padding:1.25rem;border-radius:var(--ct-border-radius)}.timeline-album{margin-top:12px}.timeline-album a{display:inline-block;margin-left:5px}.timeline-album img{height:36px;width:auto;border-radius:3px}@media (min-width:768px){.timeline .timeline-box{margin-right:65px}.timeline .timeline-icon{background:var(--ct-border-color);border-radius:50%;display:block;height:24px;right:-11px;margin-top:-12px;position:absolute;text-align:center;top:50%;width:24px}.timeline .timeline-icon i{color:var(--ct-secondary-color);font-size:1rem;vertical-align:middle}.timeline .timeline-desk{position:relative;display:table-cell;vertical-align:top;width:50%}.timeline-lg-item{display:-webkit-box;display:-ms-flexbox;display:flex}.timeline-lg-item:before{content:"";display:block;width:50%}.timeline-lg-item .timeline-desk .arrow{border-bottom:12px solid transparent;border-left:12px solid var(--ct-secondary-bg)!important;border-top:12px solid transparent;display:block;height:0;right:53px;margin-top:-12px;position:absolute;top:50%;width:0}.timeline-lg-item.timeline-item-left{text-align:left}.timeline-lg-item.timeline-item-right:after{content:"";display:block;width:50%}.timeline-lg-item.timeline-item-left .timeline-desk .arrow-alt{border-bottom:12px solid transparent;border-right:12px solid var(--ct-secondary-bg)!important;border-top:12px solid transparent;display:block;height:0;right:auto;margin-top:-12px;position:absolute;left:53px;top:50%;width:0}.timeline-lg-item.timeline-item-left .timeline-desk .album{float:left;margin-top:20px}.timeline-lg-item.timeline-item-left .timeline-desk .album a{float:left;margin-right:5px}.timeline-lg-item.timeline-item-left .timeline-icon{right:auto;left:-13px}.timeline-lg-item.timeline-item-right:before{display:none}.timeline-lg-item.timeline-item-left .timeline-box{margin-left:65px;margin-right:0}}@media (max-width:767.98px){.timeline .timeline-icon{display:none}}.apex-charts{min-height:10px!important}.apex-charts text{font-family:var(--ct-font-sans-serif)!important}.apex-charts .apexcharts-canvas{margin:0 auto}.apexcharts-tooltip-text,.apexcharts-tooltip-title{font-family:var(--ct-font-sans-serif)!important}.apexcharts-tooltip{border:1px solid var(--ct-border-color)!important;background-color:var(--ct-secondary-bg)!important;-webkit-box-shadow:var(--ct-box-shadow)!important;box-shadow:var(--ct-box-shadow)!important}.apexcharts-tooltip *{font-family:var(--ct-font-sans-serif)!important;color:var(--ct-tertiary-color)!important}.apexcharts-tooltip .apexcharts-tooltip-title{background-color:rgba(var(--ct-light-rgb),.75)!important;border-bottom:1px solid var(--ct-border-color)!important}.apexcharts-tooltip.apexcharts-theme-dark *{color:#fff!important}.apexcharts-legend-series{font-weight:600}.apexcharts-gridline,.apexcharts-xaxis-tick{pointer-events:none;stroke:rgba(var(--ct-light-rgb),.5)!important}.apexcharts-legend-text{color:var(--ct-tertiary-color)!important;font-family:var(--ct-font-sans-serif)!important;font-size:13px!important;vertical-align:middle}.apexcharts-legend-marker{vertical-align:middle;margin-left:5px!important}.apexcharts-pie-label{fill:#fff!important}.apexcharts-subtitle-text,.apexcharts-title-text{fill:var(--ct-secondary-color);font-family:var(--ct-font-sans-serif)!important}.apexcharts-xaxis text,.apexcharts-yaxis text{font-family:var(--ct-font-sans-serif)!important;fill:var(--ct-secondary-color)}.apexcharts-yaxis-title{font-weight:500}.apexcharts-annotation-rect{fill:var(--ct-tertiary-bg)!important}.apexcharts-xaxis-annotations rect,.apexcharts-yaxis-annotations rect{stroke:none}.apex-toolbar .btn-light.active{background-color:var(--ct-primary);border-color:var(--ct-primary);color:#fff}.apexcharts-xaxistooltip{background-color:var(--ct-secondary-bg)!important;border:0 solid var(--ct-border-color)!important;-webkit-box-shadow:var(--ct-box-shadow)!important;box-shadow:var(--ct-box-shadow)!important;color:var(--ct-body-color)!important}.apexcharts-xaxistooltip-bottom:before{border-bottom-color:var(--ct-border-color)!important}.apexcharts-datalabels text,.apexcharts-xaxistooltip-text{font-family:var(--ct-font-sans-serif)!important}.apexcharts-datalabel-value{fill:var(--ct-body-color)!important}.apexcharts-menu{background:var(--ct-secondary-bg)!important;padding:.25rem 0!important;-webkit-box-shadow:var(--ct-box-shadow)!important;box-shadow:var(--ct-box-shadow)!important;border:0 solid var(--ct-border-color)!important;text-align:center!important}.apexcharts-menu .apexcharts-menu-item:hover{color:var(--ct-primary)!important;background-color:var(--ct-primary-bg-subtle)!important}.apexcharts-radar-series polygon{fill:transparent;stroke:var(--ct-border-color)}.apexcharts-radar-series line{stroke:var(--ct-border-color)}.apexcharts-track path{stroke:var(--ct-tertiary-bg)}.apexcharts-marker{stroke:var(--ct-body-bg)}.calendar{float:right;margin-bottom:0}.fc-view{margin-top:30px}.none-border .modal-footer{border-top:none}.fc-toolbar{margin:6px 0 5px 0!important}.fc-toolbar .h2,.fc-toolbar h2{font-size:1.25rem!important;line-height:1.875rem;text-transform:uppercase}.fc-day-grid-event .fc-time{font-weight:600}th.fc-day-header{padding:.5rem 0}.fc-day{background:0 0}.fc-toolbar .fc-state-active,.fc-toolbar .ui-state-active,.fc-toolbar .ui-state-hover,.fc-toolbar button:focus,.fc-toolbar button:hover{z-index:0}.fc th.fc-widget-header{background:var(--ct-tertiary-bg);font-size:13px;line-height:20px;padding:10px 0;text-transform:uppercase;font-weight:600}.fc .fc-daygrid-body,.fc .fc-scrollgrid-section-body table,.fc .fc-scrollgrid-section-footer table{width:100%!important}.fc-unthemed .fc-divider,.fc-unthemed .fc-popover,.fc-unthemed .fc-row,.fc-unthemed tbody,.fc-unthemed td,.fc-unthemed th,.fc-unthemed thead{border-color:var(--ct-border-color)}.fc-unthemed .fc-divider,.fc-unthemed td.fc-today{background:var(--ct-tertiary-bg)}.fc-button{background:var(--ct-tertiary-bg);border:none;color:var(--ct-tertiary-color);text-transform:capitalize;-webkit-box-shadow:none;box-shadow:none;border-radius:3px;margin:0 3px;padding:6px 12px;height:auto}.fc-text-arrow{font-family:inherit;font-size:1rem}.fc-cell-overlay,.fc-state-highlight,.fc-state-hover{background:var(--ct-tertiary-bg)}.fc-state-active,.fc-state-disabled,.fc-state-down{background-color:var(--ct-primary);color:#fff;text-shadow:none}.fc-unthemed .fc-today{background:#fff}.fc-event{border-radius:2px;border:none;cursor:move;font-size:.8125rem;margin:5px 7px;padding:5px 5px;text-align:center;color:#fff;-webkit-box-shadow:var(--ct-box-shadow-lg);box-shadow:var(--ct-box-shadow-lg)}.fc-event.bg-dark .fc-event-time,.fc-event.bg-dark .fc-event-title{color:var(--ct-emphasis-color)}.fc-event.bg-dark .fc-daygrid-event-dot{border-color:var(--ct-border-color)}.external-event{cursor:move;margin:10px 0;padding:8px 10px;color:#fff;border-radius:4px}.fc-basic-view td.fc-week-number span{padding-left:8px}.fc-basic-view td.fc-day-number{padding-left:8px}.fc-basic-view .fc-content{color:#fff}.fc-time-grid-event .fc-content{color:#fff}.fc-daygrid-day-number{float:left;height:20px;width:20px;text-align:center;line-height:20px;background-color:var(--ct-tertiary-bg);border-radius:50%;margin:5px;font-size:11px;padding:0!important}.fc-daygrid-event-dot{border-color:#fff}.fc-event-time,.fc-event-title{color:#fff}.fc .fc-list-sticky .fc-list-day>*,.table-active,.table-active>td,.table-active>th{background-color:transparent}.fc .fc-list-event:hover td{background-color:inherit}@media (max-width:767.98px){.fc-toolbar{display:block!important}.fc-toolbar .fc-toolbar-chunk{margin:6px 0}.fc-toolbar .fc-center,.fc-toolbar .fc-left,.fc-toolbar .fc-right{float:none;display:block;clear:both;margin:10px 0}.fc .fc-toolbar>*>*{float:none}.fc-today-button{display:none}}.fc-toolbar .btn{--ct-btn-padding-y:0.28rem;--ct-btn-padding-x:0.8rem;--ct-btn-font-size:0.85rem;--ct-btn-border-radius:var(--ct-border-radius-sm)}.fc-list-item-time,.fc-list-item-title{color:#fff}#calendar .table-bordered td,#calendar .table-bordered th{border:var(--ct-border-width) solid var(--ct-border-color)}[dir=rtl] .fc-toolbar-chunk .btn-group .btn:first-child{border-top-right-radius:0!important;border-bottom-right-radius:0!important;border-radius:var(--ct-border-radius-sm)}[dir=rtl] .fc-toolbar-chunk .btn-group .btn:last-child{border-top-left-radius:0!important;border-bottom-left-radius:0!important;border-radius:var(--ct-border-radius-sm)}.chartjs-chart{margin:auto;position:relative;width:100%}.dataTables_wrapper.container-fluid,.dataTables_wrapper.container-lg,.dataTables_wrapper.container-md,.dataTables_wrapper.container-sm,.dataTables_wrapper.container-xl,.dataTables_wrapper.container-xxl{padding:0}table.dataTable{border-collapse:collapse!important;margin-bottom:15px!important}table.dataTable.dtr-inline.collapsed>tbody>tr th.dtr-control:before,table.dataTable.dtr-inline.collapsed>tbody>tr>td.dtr-control:before{background-color:var(--ct-primary);-webkit-box-shadow:0 0 2px 0 var(--ct-primary);box-shadow:0 0 2px 0 var(--ct-primary)}table.dataTable thead:not.table-light th{background-color:transparent;border-bottom-color:var(--ct-gray-300)}table.dataTable tbody tr.even td,table.dataTable tbody tr.odd td{background-color:transparent}table.dataTable tbody>tr.selected td{background-color:var(--ct-primary)}table.dataTable.table-striped>tbody>tr.selected:nth-of-type(odd)>*{--ct-table-accent-bg:$primary!important}table.dataTable thead .sorting:before,table.dataTable thead .sorting_asc:before,table.dataTable thead .sorting_asc_disabled:before,table.dataTable thead .sorting_desc:before,table.dataTable thead .sorting_desc_disabled:before{left:.5rem;right:auto;content:"\ea77";font-family:remixicon;font-size:1rem;top:12px}table.dataTable thead .sorting:after,table.dataTable thead .sorting_asc:after,table.dataTable thead .sorting_asc_disabled:after,table.dataTable thead .sorting_desc:after,table.dataTable thead .sorting_desc_disabled:after{left:.5em;right:auto;content:"\ea4d";font-family:remixicon;top:18px;font-size:1rem}table.dataTable thead>tr>th.sorting,table.dataTable thead>tr>th.sorting_asc,table.dataTable thead>tr>th.sorting_desc{padding-left:30px;padding-right:.75rem}table.dataTable tbody>tr.selected,table.dataTable tbody>tr>.selected{background-color:var(--ct-primary)}table.dataTable tbody>tr.selected td,table.dataTable tbody>tr>.selected td{border-color:var(--ct-primary)}table.dataTable tbody td:focus{outline:0!important}table.dataTable tbody td.focus,table.dataTable tbody th.focus{outline:2px solid #4254ba!important;outline-offset:-1px;background-color:rgba(var(--ct-primary-rgb),.15)}.dataTables_info{font-weight:600}.dtfh-floatingparent{top:var(--ct-topbar-height)!important}table.dataTable.dtr-inline.collapsed>tbody>tr[role=row]>td:first-child:before,table.dataTable.dtr-inline.collapsed>tbody>tr[role=row]>th:first-child:before{-webkit-box-shadow:0 2px 5px 0 rgba(27,23,30,.3);box-shadow:0 2px 5px 0 rgba(27,23,30,.3);background-color:#17a497;top:auto;bottom:auto}table.dataTable.dtr-inline.collapsed>tbody>tr.parent>td:first-child:before,table.dataTable.dtr-inline.collapsed>tbody>tr.parent>th:first-child:before{background-color:#f7473a}div.dt-button-info{background-color:var(--ct-primary);border:none;color:#fff;-webkit-box-shadow:none;box-shadow:none;border-radius:3px;text-align:center;z-index:21}div.dt-button-info .h2,div.dt-button-info h2{border-bottom:none;background-color:rgba(255,255,255,.2);color:#fff}@media (max-width:767.98px){li.paginate_button.prev,li.paginate_button.previous{display:inline-block;font-size:1.5rem}li.paginate_button{display:none}.dataTables_paginate ul{text-align:center;display:block;margin:1.25rem 0 0!important}div.dt-buttons{display:inline-table;margin-bottom:1.25rem}}.activate-select .sorting_1{background-color:var(--ct-gray-100)!important}div.dataTables_wrapper div.dataTables_filter{text-align:left}@media (max-width:576px){div.dataTables_wrapper div.dataTables_filter{text-align:center}}div.dataTables_wrapper div.dataTables_filter input{margin-right:.5em;margin-left:0}div.dataTables_wrapper div.dataTables_length{text-align:right}@media (max-width:576px){div.dataTables_wrapper div.dataTables_length{text-align:center}}div.table-responsive>div.dataTables_wrapper>div.row>div[class^=col-]:last-child{padding-left:0}div.table-responsive>div.dataTables_wrapper>div.row>div[class^=col-]:first-child{padding-right:0}div.dataTables_scrollBody{border-right:none!important}div.dataTables_scrollBody>table{margin-bottom:15px!important}div.dataTables_scrollBody>table>:not(:first-child){border-top:none!important}.daterangepicker{font-family:var(--ct-font-sans-serif);border:0 solid var(--ct-border-color);-webkit-box-shadow:var(--ct-box-shadow-lg);box-shadow:var(--ct-box-shadow-lg);background-color:var(--ct-secondary-bg);z-index:999}.daterangepicker .calendar-table{border:1px solid var(--ct-secondary-bg);background-color:var(--ct-secondary-bg)}.daterangepicker .calendar-table td,.daterangepicker .calendar-table th{color:var(--ct-gray-600)}.daterangepicker .calendar-table .next span,.daterangepicker .calendar-table .prev span{border-color:var(--ct-border-color)}.daterangepicker .ranges li:hover{background-color:var(--ct-primary-bg-subtle)}.daterangepicker .ranges li.active{background-color:var(--ct-primary)}.daterangepicker td.in-range{background:var(--ct-tertiary-bg);color:var(--ct-tertiary-color)}.daterangepicker td.off,.daterangepicker td.off.end-date,.daterangepicker td.off.in-range,.daterangepicker td.off.start-date{background-color:var(--ct-secondary-bg);color:var(--ct-body-color);opacity:.5}.daterangepicker td.active,.daterangepicker td.active:hover{background-color:var(--ct-primary);color:#fff}.daterangepicker td.active,.daterangepicker td.active:hover,.daterangepicker td.available:hover,.daterangepicker th.available:hover{background-color:var(--ct-primary);color:#fff}.daterangepicker td.active span,.daterangepicker td.active:hover span,.daterangepicker td.available:hover span,.daterangepicker th.available:hover span{border-color:#fff}.daterangepicker:after{border-bottom:6px solid var(--ct-secondary-bg)}.daterangepicker:before{border-bottom:7px solid var(--ct-border-color)}.daterangepicker .drp-buttons{border-top:1px solid var(--ct-border-color)}.daterangepicker select.ampmselect,.daterangepicker select.hourselect,.daterangepicker select.minuteselect,.daterangepicker select.secondselect{background:var(--ct-tertiary-bg);border:1px solid var(--ct-border-color);color:var(--ct-body-color)}.daterangepicker.show-ranges .drp-calendar.left{border-right:1px solid var(--ct-border-color)!important}.flatpickr-calendar{background:var(--ct-secondary-bg);-webkit-box-shadow:var(--ct-box-shadow-lg);box-shadow:var(--ct-box-shadow-lg);border:none}.flatpickr-calendar.arrowTop:before{border-bottom-color:var(--ct-secondary-bg)}.flatpickr-calendar.arrowTop:after{border-bottom-color:var(--ct-secondary-bg)}.flatpickr-calendar.arrowBottom:after,.flatpickr-calendar.arrowBottom:before{border-top-color:var(--ct-secondary-bg)}.flatpickr-current-month{font-size:110%}.flatpickr-day.endRange,.flatpickr-day.endRange.inRange,.flatpickr-day.endRange.nextMonthDay,.flatpickr-day.endRange.prevMonthDay,.flatpickr-day.endRange:focus,.flatpickr-day.endRange:hover,.flatpickr-day.selected,.flatpickr-day.selected.inRange,.flatpickr-day.selected.nextMonthDay,.flatpickr-day.selected.prevMonthDay,.flatpickr-day.selected:focus,.flatpickr-day.selected:hover,.flatpickr-day.startRange,.flatpickr-day.startRange.inRange,.flatpickr-day.startRange.nextMonthDay,.flatpickr-day.startRange.prevMonthDay,.flatpickr-day.startRange:focus,.flatpickr-day.startRange:hover{background:var(--ct-primary);border-color:var(--ct-primary)}.flatpickr-day.endRange.startRange+.endRange:not(:nth-child(7n+1)),.flatpickr-day.selected.startRange+.endRange:not(:nth-child(7n+1)),.flatpickr-day.startRange.startRange+.endRange:not(:nth-child(7n+1)){-webkit-box-shadow:10px 0 0 var(--ct-primary);box-shadow:10px 0 0 var(--ct-primary)}.flatpickr-time .flatpickr-am-pm:focus,.flatpickr-time .flatpickr-am-pm:hover,.flatpickr-time input:focus,.flatpickr-time input:hover{background:var(--ct-secondary-bg);color:var(--ct-tertiary-color)}.flatpickr-months .flatpickr-month{height:36px}.flatpickr-months .flatpickr-month,.flatpickr-months .flatpickr-next-month,.flatpickr-months .flatpickr-prev-month{color:var(--ct-gray-500);fill:var(--ct-gray-500)}.flatpickr-weekdays{background-color:var(--ct-tertiary-bg)}.flatpickr-current-month input.cur-year[disabled],.flatpickr-current-month input.cur-year[disabled]:hover,.flatpickr-day,.flatpickr-time .flatpickr-am-pm,.flatpickr-time .flatpickr-time-separator,.flatpickr-time input,span.flatpickr-weekday{color:var(--ct-body-color);fill:var(--ct-body-color)}.flatpickr-day.disabled,.flatpickr-day.disabled:hover,.flatpickr-day.nextMonthDay,.flatpickr-day.notAllowed,.flatpickr-day.notAllowed.nextMonthDay,.flatpickr-day.notAllowed.prevMonthDay,.flatpickr-day.prevMonthDay{color:#adb5bd}.flatpickr-day.inRange,.flatpickr-day.nextMonthDay.inRange,.flatpickr-day.nextMonthDay.today.inRange,.flatpickr-day.nextMonthDay:focus,.flatpickr-day.nextMonthDay:hover,.flatpickr-day.prevMonthDay.inRange,.flatpickr-day.prevMonthDay.today.inRange,.flatpickr-day.prevMonthDay:focus,.flatpickr-day.prevMonthDay:hover,.flatpickr-day.today.inRange,.flatpickr-day:focus,.flatpickr-day:hover{background:var(--ct-primary-bg-subtle);border-color:var(--ct-primary-bg-subtle)}.flatpickr-calendar.showTimeInput.hasTime .flatpickr-time{border-top:1px solid var(--ct-secondary-bg)}.flatpickr-current-month .flatpickr-monthDropdown-months:hover,.numInputWrapper:hover{background-color:transparent;color:var(--ct-tertiary-color)}.flatpickr-day.inRange{-webkit-box-shadow:5px 0 0 var(--ct-primary-bg-subtle),-5px 0 0 var(--ct-primary-bg-subtle);box-shadow:5px 0 0 var(--ct-primary-bg-subtle),-5px 0 0 var(--ct-primary-bg-subtle)}.flatpickr-day.flatpickr-disabled,.flatpickr-day.flatpickr-disabled:hover{color:#adb5bd}.flatpickr-calendar.hasTime .flatpickr-time{border-top:var(--ct-border-color)}.bg-dragula{background-color:var(--ct-tertiary-bg)}.gu-mirror{position:fixed!important;margin:0!important;z-index:9999!important;opacity:.8}.gu-hide{display:none!important}.gu-unselectable{-webkit-user-select:none!important;-moz-user-select:none!important;-ms-user-select:none!important;user-select:none!important}.gu-transit{opacity:.2}.dragula-handle{position:relative;width:36px;height:36px;font-size:24px;text-align:center;cursor:move}.dragula-handle:before{content:"\f38f";font-family:remixicon;position:absolute}.dropzone{border:2px dashed var(--ct-border-color);background:var(--ct-secondary-bg);border-radius:6px;cursor:pointer;min-height:150px;padding:20px}.dropzone .dz-message{text-align:center;margin:2rem 0}.dropzone.dz-started .dz-message{display:none}.form-wizard-header{margin-right:-1.25rem;margin-left:-1.25rem;background-color:var(--ct-tertiary-bg);border-top:1px solid var(--ct-body-bg);border-bottom:1px solid var(--ct-body-bg)}.gmaps,.gmaps-panaroma{height:300px;background:var(--ct-tertiary-bg);border-radius:3px}.jvectormap-label{border:none;background:var(--ct-tertiary-bg);color:var(--ct-tertiary-color);-webkit-box-shadow:var(--ct-box-shadow-lg);box-shadow:var(--ct-box-shadow-lg);font-family:var(--ct-font-sans-serif);font-size:.875rem;padding:5px 8px}.jvectormap-container .jvectormap-zoomin,.jvectormap-container .jvectormap-zoomout{height:24px;width:24px;line-height:20px;font-size:15px;background-color:var(--ct-tertiary-bg);color:var(--ct-tertiary-color)}.jvectormap-container .jvectormap-zoomout{top:37px}.ql-editor{text-align:right}.ql-editor ol,.ql-editor ul{padding-right:1.5em;padding-left:0}.ql-editor li:not(.ql-direction-rtl)::before{margin-right:-1.5em;margin-left:.3em;text-align:left}.ql-container{font-family:var(--ct-font-sans-serif)}.ql-container.ql-snow{border-color:var(--ct-border-color);border-radius:0 0 .25rem .25rem}.ql-bubble{border:var(--ct-border-width) solid var(--ct-border-color);border-radius:.25rem}.ql-toolbar{font-family:var(--ct-font-sans-serif)!important}.ql-toolbar span{outline:0!important;color:var(--ct-body-color)}.ql-toolbar span:hover{color:#4254ba!important}.ql-toolbar.ql-snow{border-radius:.25rem .25rem 0 0;border-color:var(--ct-border-color)}.ql-toolbar.ql-snow .ql-picker.ql-expanded .ql-picker-label{border-color:transparent}.ql-toolbar.ql-snow .ql-picker-options{-webkit-box-shadow:var(--ct-box-shadow-lg);box-shadow:var(--ct-box-shadow-lg);border-radius:.15rem;border:none}.ql-snow .ql-script,.ql-snow .ql-strike svg,.ql-snow .ql-stroke{stroke:var(--ct-body-color)}.ql-snow .ql-fill{fill:var(--ct-body-color)}.ql-snow .ql-picker:not(.ql-color-picker):not(.ql-icon-picker) svg{left:0;right:auto}.ql-snow .ql-picker.ql-expanded .ql-picker-label{color:var(--ct-body-color)}.ql-snow .ql-picker-options{background-color:var(--ct-secondary-bg);border-color:var(--ct-border-color)!important}.select2-container{width:100%!important}.select2-container .select2-selection--single{border:var(--ct-border-width) solid var(--ct-border-color);height:calc(1.5em + .9rem + calc(var(--ct-border-width) * 2));background-color:var(--ct-secondary-bg);outline:0}.select2-container .select2-selection--single .select2-selection__rendered{line-height:36px;padding-right:12px;color:var(--ct-body-color)}.select2-container .select2-selection--single .select2-selection__arrow{height:34px;width:34px;right:3px}.select2-container .select2-selection--single .select2-selection__arrow b{border-color:var(--ct-border-color) transparent transparent transparent;border-width:6px 6px 0 6px}.select2-container--open .select2-selection--single .select2-selection__arrow b{border-color:transparent transparent var(--ct-border-color) transparent!important;border-width:0 6px 6px 6px!important}.select2-results__option{padding:6px 12px}.select2-dropdown{border:0 solid var(--ct-border-color);-webkit-box-shadow:var(--ct-box-shadow-lg);box-shadow:var(--ct-box-shadow-lg);background-color:var(--ct-secondary-bg);z-index:1056}.select2-results__options::-webkit-scrollbar{-webkit-appearance:none}.select2-results__options::-webkit-scrollbar:vertical{width:5px;margin-left:5px}.select2-results__options::-webkit-scrollbar:horizontal{height:5px}.select2-results__options::-webkit-scrollbar-thumb{background-color:rgba(var(--ct-dark-rgb),.2);border-radius:10px;margin-left:5px;border:none}.select2-results__options::-webkit-scrollbar-track{border-radius:10px;background-color:transparent}.select2-results__options::-webkit-scrollbar-corner{background-color:transparent}.select2-container--default .select2-results__option--selected{background-color:var(--ct-tertiary-bg)}.select2-container--default .select2-search--dropdown{padding:10px;background-color:var(--ct-secondary-bg)}.select2-container--default .select2-search--dropdown .select2-search__field{outline:0;border:1px solid var(--ct-border-color);background-color:var(--ct-secondary-bg);color:var(--ct-body-color);border-radius:.25rem}.select2-container--default .select2-results__option--highlighted[aria-selected]{background-color:var(--ct-primary)}.select2-container--default .select2-results__option[aria-selected=true]{background-color:var(--ct-secondary-bg);color:var(--ct-tertiary-color)}.select2-container--default .select2-results__option[aria-selected=true]:hover{background-color:var(--ct-primary);color:#fff}.select2-container--default .select2-selection--multiple .select2-selection__choice__display{padding-right:36px;padding-left:5px}.select2-container--default .select2-selection--single .select2-selection__arrow{right:1px;left:auto}.select2-container .select2-selection--multiple{min-height:calc(1.5em + .9rem + calc(var(--ct-border-width) * 2));border:var(--ct-border-width) solid var(--ct-border-color)!important;background-color:var(--ct-secondary-bg)}.select2-container .select2-selection--multiple .select2-selection__rendered{padding:1px 4px}.select2-container .select2-selection--multiple .select2-search__field{border:0;color:var(--ct-body-color)}.select2-container .select2-selection--multiple .select2-selection__choice{background-color:var(--ct-primary);border:none;color:#fff;border-radius:3px;padding:0 0 0 7px;margin-top:6px}.select2-container .select2-selection--multiple .select2-selection__choice__remove{color:#fff;margin-left:7px;border-color:#5565c1;padding:0 8px}.select2-container .select2-selection--multiple .select2-selection__choice__remove:hover{color:#fff;background-color:var(--ct-primary)}.select2-container .select2-search--inline .select2-search__field{margin-top:7px;font-family:var(--ct-font-sans-serif)}.select2-container .select2-search textarea::-webkit-input-placeholder{color:var(--ct-secondary-color)}.select2-container .select2-search textarea::-moz-placeholder{color:var(--ct-secondary-color)}.select2-container .select2-search textarea:-ms-input-placeholder{color:var(--ct-secondary-color)}.select2-container .select2-search textarea::-ms-input-placeholder{color:var(--ct-secondary-color)}.select2-container .select2-search textarea::placeholder{color:var(--ct-secondary-color)}[dir=rtl] .select2-container--open .select2-dropdown{right:auto;left:0}[data-simplebar]{position:relative;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start;-ms-flex-line-pack:start;align-content:flex-start;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start}.simplebar-wrapper{overflow:hidden;width:inherit;height:inherit;max-width:inherit;max-height:inherit}.simplebar-mask{direction:inherit;position:absolute;overflow:hidden;padding:0;margin:0;right:0;top:0;bottom:0;left:0;width:auto!important;height:auto!important;z-index:0}.simplebar-offset{direction:inherit!important;-webkit-box-sizing:inherit!important;box-sizing:inherit!important;resize:none!important;position:absolute;top:0;right:0;bottom:0;left:0;padding:0;margin:0;-webkit-overflow-scrolling:touch}.simplebar-content-wrapper{direction:inherit;-webkit-box-sizing:border-box!important;box-sizing:border-box!important;position:relative;display:block;height:100%;width:auto;overflow:auto;max-width:100%;max-height:100%;scrollbar-width:none}.simplebar-content-wrapper::-webkit-scrollbar,.simplebar-hide-scrollbar::-webkit-scrollbar{display:none}.simplebar-content:after,.simplebar-content:before{content:" ";display:table}.simplebar-placeholder{max-height:100%;max-width:100%;width:100%;pointer-events:none}.simplebar-height-auto-observer-wrapper{-webkit-box-sizing:inherit!important;box-sizing:inherit!important;height:100%;width:100%;max-width:1px;position:relative;float:right;max-height:1px;overflow:hidden;z-index:-1;padding:0;margin:0;pointer-events:none;-webkit-box-flex:inherit;-ms-flex-positive:inherit;flex-grow:inherit;-ms-flex-negative:0;flex-shrink:0;-ms-flex-preferred-size:0;flex-basis:0}.simplebar-height-auto-observer{-webkit-box-sizing:inherit;box-sizing:inherit;display:block;opacity:0;position:absolute;top:0;right:0;height:1000%;width:1000%;min-height:1px;min-width:1px;overflow:hidden;pointer-events:none;z-index:-1}.simplebar-track{z-index:1;position:absolute;left:0;bottom:0;pointer-events:none;overflow:hidden}[data-simplebar].simplebar-dragging .simplebar-content{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}[data-simplebar].simplebar-dragging .simplebar-track{pointer-events:all}.simplebar-scrollbar{position:absolute;left:2px;width:5px;min-height:10px}.simplebar-scrollbar:before{position:absolute;content:"";background:#a2adb7;border-radius:7px;right:0;left:0;opacity:0;-webkit-transition:opacity .2s linear;transition:opacity .2s linear}.simplebar-scrollbar.simplebar-visible:before{opacity:.5;-webkit-transition:opacity 0s linear;transition:opacity 0s linear}.simplebar-track.simplebar-vertical{top:0;width:11px}.simplebar-track.simplebar-vertical .simplebar-scrollbar:before{top:2px;bottom:2px}.simplebar-track.simplebar-horizontal{right:0;height:11px}.simplebar-track.simplebar-horizontal .simplebar-scrollbar{left:auto;right:0;top:2px;height:7px;min-height:0;min-width:10px;width:auto}.simplebar-track.simplebar-horizontal .simplebar-scrollbar:before{height:100%;right:2px;left:2px}[data-simplebar-direction=rtl] .simplebar-track.simplebar-vertical{left:auto;right:0}.hs-dummy-scrollbar-size{direction:ltr;position:fixed;opacity:0;visibility:hidden;height:500px;width:500px;overflow-y:hidden;overflow-x:scroll}.simplebar-hide-scrollbar{position:fixed;right:0;visibility:hidden;overflow-y:scroll;scrollbar-width:none}.custom-scroll{height:100%}[data-simplebar-lg] .simplebar-scrollbar{left:1px;width:10px}[data-simplebar-primary] .simplebar-scrollbar:before{background:var(--ct-primary)}.jq-toast-single{text-align:right!important;padding:15px;font-family:var(--ct-font-sans-serif);background-color:var(--ct-primary);font-size:13px;line-height:22px;-webkit-box-shadow:var(--ct-box-shadow-lg);box-shadow:var(--ct-box-shadow-lg)}.jq-toast-single .h2,.jq-toast-single h2{font-family:var(--ct-font-sans-serif)}.jq-toast-single a{font-size:.875rem}.jq-toast-single a:hover{color:#fff}.jq-has-icon{padding:10px}.close-jq-toast-single{position:absolute;top:-12px;left:-12px;font-size:20px;cursor:pointer;height:32px;width:32px;background:var(--ct-gray-800);color:var(--ct-gray-300);border-radius:50%;text-align:center;line-height:32px}.jq-toast-loader{height:3px;top:0;border-radius:0}.jq-icon-primary{background-color:#4254ba;color:#fff;border-color:#4254ba}.jq-icon-secondary{background-color:#6c757d;color:#fff;border-color:#6c757d}.jq-icon-success{background-color:#17a497;color:#fff;border-color:#17a497}.jq-icon-info{background-color:#299bf6;color:#fff;border-color:#299bf6}.jq-icon-warning{background-color:#fec20d;color:#fff;border-color:#fec20d}.jq-icon-danger{background-color:#f7473a;color:#fff;border-color:#f7473a}.jq-icon-light{background-color:#f2f2f7;color:#fff;border-color:#f2f2f7}.jq-icon-dark{background-color:#49526b;color:#fff;border-color:#49526b}.jq-icon-purple{background-color:#815ac5;color:#fff;border-color:#815ac5}.jq-icon-pink{background-color:#ff679b;color:#fff;border-color:#ff679b}.jq-icon-error{background-color:#f7473a;color:#fff;border-color:#f7473a}.jq-icon-error,.jq-icon-info,.jq-icon-success,.jq-icon-warning{background-image:none}.bootstrap-touchspin .btn .input-group-text{padding:0;border:none;background-color:transparent;color:inherit}.twitter-typeahead{display:inherit!important}.tt-hint,.tt-query{outline:0}.tt-query{-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.tt-hint{color:var(--ct-body-color);background:var(--ct-secondary-bg)!important}.tt-menu{width:100%;padding:8px 0;max-height:200px;overflow-y:auto;background-color:var(--ct-secondary-bg);-webkit-box-shadow:var(--ct-box-shadow-lg);box-shadow:var(--ct-box-shadow-lg);border:1px solid var(--ct-border-color)}.tt-suggestion{padding:3px 20px;line-height:24px}.tt-suggestion.tt-cursor,.tt-suggestion:hover{cursor:pointer;color:#fff;background-color:var(--ct-primary)}.tt-suggestion p{margin:0}.tt-highlight{font-family:var(--ct-font-sans-serif)}.typeahead-empty-message{padding:5px 10px;color:#f7473a}.league-name{padding:3px 20px}.jqstooltip{-webkit-box-sizing:content-box;box-sizing:content-box;width:auto!important;height:auto!important;background-color:#fff!important;-webkit-box-shadow:0 2px 5px 0 rgba(27,23,30,.3);box-shadow:0 2px 5px 0 rgba(27,23,30,.3);padding:5px 10px!important;border-radius:3px;border-color:#fff!important}.jqsfield{color:#000!important;font-size:12px!important;line-height:18px!important;font-family:var(--ct-font-sans-serif)!important;font-weight:700!important}.rateit{display:-moz-inline-box;display:inline-block;position:relative;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-touch-callout:none}.rateit .rateit-range *{display:block}.rateit .rateit-hover,.rateit .rateit-selected{position:absolute;right:0;top:0;width:0}.rateit .rateit-hover-rtl,.rateit .rateit-selected-rtl{right:auto;left:0}.rateit .rateit-hover{color:#fec20d}.rateit .rateit-hover-rtl{background-position:left -32px}.rateit .rateit-selected{color:#f7473a}.rateit .rateit-selected-rtl{background-position:left -16px}.rateit .rateit-preset{color:#fd7e14}.rateit button.rateit-reset{width:16px;height:16px;float:right;outline:0;border:none;padding:0}.rateit .rateit-reset span{display:none}.rateit .rateit-range{position:relative;display:-moz-inline-box;display:inline-block;height:16px;outline:0}.rateit.rateit-font .rateit-reset{width:.6em;height:.6em;margin-left:5px;margin-top:5px;background:var(--ct-tertiary-bg);border-radius:50%;position:relative}.rateit.rateit-font .rateit-reset span{display:block;height:calc(50% - .045em);top:2px;position:absolute;border-bottom:2px solid var(--ct-emphasis-color);width:50%;margin-right:25%;margin-left:25%}.rateit.rateit-font .rateit-reset:hover,.rateit.rateit-font button.rateit-reset:focus{background:#f7473a}.rateit.rateit-font .rateit-reset:hover span,.rateit.rateit-font button.rateit-reset:focus span{border-color:#fff}.rateit-remix{font-family:remixicon}.rateit-font{font-size:24px;line-height:1em}.rateit-font .rateit-range{background:0 0;height:auto}.rateit-font .rateit-range>div{background:0 0;overflow:hidden;cursor:default;white-space:nowrap}.rateit-font .rateit-empty{color:var(--ct-border-color)}.rateit .rateit-hover-rtl,.rateit .rateit-selected-rtl{left:auto}.irs{position:relative;display:block;-webkit-touch-callout:none;-ms-user-select:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;font-size:12px}.irs-line{position:relative;display:block;overflow:hidden;outline:0!important}.irs-bar{position:absolute;display:block;right:0;width:0}.irs-shadow{position:absolute;display:none;right:0;width:0}.irs-handle{position:absolute;display:block;-webkit-box-sizing:border-box;box-sizing:border-box;cursor:default;z-index:1}.irs-handle.type_last{z-index:2}.irs-max,.irs-min{position:absolute;display:block;cursor:default}.irs-min{right:0;left:auto}.irs-max{left:0;right:auto}[dir=rtl] .irs-min{left:0;right:auto}[dir=rtl] .irs-max{right:0;left:auto}.irs-from,.irs-single,.irs-to{position:absolute;display:block;top:0;cursor:default;white-space:nowrap}.irs-grid{position:absolute;display:none;bottom:0;left:0;width:100%;height:20px}.irs-with-grid .irs-grid{display:block}.irs-grid-pol{position:absolute;top:0;left:0;width:1px;height:8px;background:#6c757d}.irs-grid-pol.small{height:4px}.irs-grid-text{position:absolute;bottom:0;left:0;white-space:nowrap;text-align:center;font-size:11px;line-height:9px;padding:0 3px;color:#6c757d}.irs-disable-mask{position:absolute;display:block;top:0;right:-1%;width:102%;height:100%;cursor:default;z-index:2}.lt-ie9 .irs-disable-mask{background:#6c757d;cursor:not-allowed}.irs-disabled{opacity:.4}.irs-hidden-input{position:absolute!important;display:block!important;top:0!important;right:0!important;width:0!important;height:0!important;font-size:0!important;line-height:0!important;padding:0!important;margin:0!important;overflow:hidden;outline:0!important;z-index:-9999!important;background:0 0!important;border-style:solid!important;border-color:transparent!important}.irs--flat{height:40px}.irs--flat.irs-with-grid{height:60px}.irs--flat .irs-line{top:25px;height:12px;background-color:var(--ct-body-bg);border-radius:4px}.irs--flat .irs-bar{top:25px;height:12px;background-color:var(--ct-primary)}.irs--flat .irs-bar--single{border-radius:0 4px 4px 0}.irs--flat .irs-shadow{height:1px;bottom:16px;background-color:var(--ct-body-bg)}.irs--flat .irs-handle{top:22px;width:16px;height:18px;background-color:transparent}.irs--flat .irs-handle>i:first-child{position:absolute;display:block;top:0;right:50%;width:2px;height:100%;margin-right:-1px;background-color:#3948a0}.irs--flat .irs-max,.irs--flat .irs-min{top:0;padding:1px 3px;color:var(--ct-secondary-color);font-size:10px;line-height:1.333;text-shadow:none;background-color:var(--ct-body-bg);border-radius:4px}.irs--flat .irs-from,.irs--flat .irs-single,.irs--flat .irs-to{color:#fff;font-size:10px;line-height:1.333;text-shadow:none;padding:1px 5px;background-color:var(--ct-primary);border-radius:4px}.irs--flat .irs-from:before,.irs--flat .irs-single:before,.irs--flat .irs-to:before{position:absolute;display:block;content:"";bottom:-6px;right:50%;width:0;height:0;margin-right:-3px;overflow:hidden;border:3px solid transparent;border-top-color:var(--ct-primary)}.irs--flat .irs-grid-pol{background-color:var(--ct-body-bg)}.irs--flat .irs-grid-text{color:var(--ct-secondary-color)}[dir=rtl] .irs-bar--single{border-radius:4px 0 0 4px!important} +/*# sourceMappingURL=app-rtl.min.css.map */ diff --git a/pxy_dashboard/static/dashboard/css/app-rtl.min.css.map b/pxy_dashboard/static/dashboard/css/app-rtl.min.css.map new file mode 100644 index 0000000..1f15f7c --- /dev/null +++ b/pxy_dashboard/static/dashboard/css/app-rtl.min.css.map @@ -0,0 +1 @@ +{"version":3,"sources":["app.scss","config/_theme-mode.scss","app-rtl.css","custom/components/_utilities.scss","../../../node_modules/bootstrap/scss/mixins/_banner.scss","../../../node_modules/bootstrap/scss/_root.scss","../../../node_modules/bootstrap/scss/vendor/_rfs.scss","../../../node_modules/bootstrap/scss/mixins/_color-mode.scss","../../../node_modules/bootstrap/scss/_reboot.scss","../../../node_modules/bootstrap/scss/mixins/_border-radius.scss","app.css","../../../node_modules/bootstrap/scss/_type.scss","../../../node_modules/bootstrap/scss/_images.scss","config/_variables.scss","../../../node_modules/bootstrap/scss/_containers.scss","../../../node_modules/bootstrap/scss/mixins/_container.scss","../../../node_modules/bootstrap/scss/mixins/_breakpoints.scss","../../../node_modules/bootstrap/scss/_grid.scss","../../../node_modules/bootstrap/scss/mixins/_grid.scss","../../../node_modules/bootstrap/scss/_tables.scss","../../../node_modules/bootstrap/scss/mixins/_table-variants.scss","../../../node_modules/bootstrap/scss/forms/_labels.scss","../../../node_modules/bootstrap/scss/forms/_form-text.scss","../../../node_modules/bootstrap/scss/forms/_form-control.scss","../../../node_modules/bootstrap/scss/mixins/_transition.scss","../../../node_modules/bootstrap/scss/mixins/_gradients.scss","../../../node_modules/bootstrap/scss/forms/_form-select.scss","../../../node_modules/bootstrap/scss/forms/_form-check.scss","../../../node_modules/bootstrap/scss/forms/_form-range.scss","../../../node_modules/bootstrap/scss/forms/_floating-labels.scss","../../../node_modules/bootstrap/scss/forms/_input-group.scss","../../../node_modules/bootstrap/scss/mixins/_forms.scss","../../../node_modules/bootstrap/scss/_buttons.scss","../../../node_modules/bootstrap/scss/mixins/_buttons.scss","../../../node_modules/bootstrap/scss/_transitions.scss","../../../node_modules/bootstrap/scss/_dropdown.scss","../../../node_modules/bootstrap/scss/mixins/_caret.scss","../../../node_modules/bootstrap/scss/_button-group.scss","../../../node_modules/bootstrap/scss/_nav.scss","../../../node_modules/bootstrap/scss/_navbar.scss","../../../node_modules/bootstrap/scss/_card.scss","../../../node_modules/bootstrap/scss/_accordion.scss","../../../node_modules/bootstrap/scss/_breadcrumb.scss","../../../node_modules/bootstrap/scss/_pagination.scss","../../../node_modules/bootstrap/scss/mixins/_pagination.scss","../../../node_modules/bootstrap/scss/_badge.scss","../../../node_modules/bootstrap/scss/_alert.scss","../../../node_modules/bootstrap/scss/_progress.scss","../../../node_modules/bootstrap/scss/_list-group.scss","../../../node_modules/bootstrap/scss/_close.scss","../../../node_modules/bootstrap/scss/_toasts.scss","../../../node_modules/bootstrap/scss/_modal.scss","../../../node_modules/bootstrap/scss/mixins/_backdrop.scss","../../../node_modules/bootstrap/scss/_tooltip.scss","../../../node_modules/bootstrap/scss/mixins/_reset-text.scss","../../../node_modules/bootstrap/scss/_popover.scss","../../../node_modules/bootstrap/scss/_carousel.scss","../../../node_modules/bootstrap/scss/mixins/_clearfix.scss","../../../node_modules/bootstrap/scss/_spinners.scss","../../../node_modules/bootstrap/scss/_offcanvas.scss","../../../node_modules/bootstrap/scss/_placeholders.scss","../../../node_modules/bootstrap/scss/helpers/_color-bg.scss","../../../node_modules/bootstrap/scss/helpers/_colored-links.scss","../../../node_modules/bootstrap/scss/helpers/_focus-ring.scss","../../../node_modules/bootstrap/scss/helpers/_icon-link.scss","../../../node_modules/bootstrap/scss/helpers/_ratio.scss","../../../node_modules/bootstrap/scss/helpers/_position.scss","../../../node_modules/bootstrap/scss/helpers/_stacks.scss","../../../node_modules/bootstrap/scss/helpers/_visually-hidden.scss","../../../node_modules/bootstrap/scss/mixins/_visually-hidden.scss","../../../node_modules/bootstrap/scss/helpers/_stretched-link.scss","../../../node_modules/bootstrap/scss/mixins/_text-truncate.scss","../../../node_modules/bootstrap/scss/helpers/_vr.scss","../../../node_modules/bootstrap/scss/mixins/_utilities.scss","../../../node_modules/bootstrap/scss/utilities/_api.scss","custom/structure/_sidenav.scss","config/_variables-custom.scss","custom/structure/_topbar.scss","custom/structure/_page-head.scss","custom/structure/_footer.scss","custom/structure/_horizontal-nav.scss","custom/components/_root.scss","custom/components/_accordions.scss","custom/components/_alert.scss","custom/components/_avatar.scss","custom/components/_breadcrumb.scss","custom/components/_buttons.scss","custom/components/_badge.scss","custom/components/_card.scss","custom/components/_custom-forms.scss","custom/components/_dropdown.scss","custom/components/_forms.scss","custom/components/_modal.scss","custom/components/_nav.scss","custom/components/_pagination.scss","custom/components/_popover.scss","custom/components/_print.scss","custom/components/_progress.scss","custom/components/_reboot.scss","custom/components/_tables.scss","custom/components/_tooltip.scss","custom/components/_widgets.scss","custom/components/_social.scss","custom/components/_steps.scss","custom/components/_preloader.scss","custom/pages/_authentication.scss","custom/pages/_components-demo.scss","custom/pages/_error.scss","custom/pages/_faq.scss","custom/pages/_pricing.scss","custom/pages/_maintenance.scss","custom/pages/_tasks.scss","custom/pages/_email.scss","custom/pages/_timeline.scss","custom/plugins/_apexcharts.scss","custom/plugins/_calendar.scss","custom/plugins/_chartjs.scss","custom/plugins/_datatable.scss","custom/plugins/_daterange.scss","custom/plugins/_flatpickr.scss","custom/plugins/_dragula.scss","custom/plugins/_dropzone.scss","custom/plugins/_form-wizard.scss","custom/plugins/_maps.scss","custom/plugins/_quill-editor.scss","custom/plugins/_select2.scss","custom/plugins/_simplebar.scss","custom/plugins/_toaster.scss","custom/plugins/_bootstrap-touchspin.scss","custom/plugins/_typehead.scss","custom/plugins/_sparklines.scss","custom/plugins/_rateit.scss","custom/plugins/_ion-rangeslider.scss"],"names":[],"mappings":"iBAUQ,+FCDR,MACI,oBAAA,KACA,oBAAA,KAEA,mBAAA,MACA,sBAAA,MACA,sBAAA,KACA,8BAAA,OAEA,mBAAA,KAEA,yBAAA,OACA,0BAAA,KACA,yBAAA,SACA,yBAAA,KACA,yBAAA,IAGA,mBAAA,KAGA,6BAAA,IAQJ,4BACI,aAAA,QACA,qBAAA,QACA,2BAAA,QACA,4BAAA,QACA,4BAAA,QACA,iBAAA,QAIJ,2BACI,aAAA,QACA,qBAAA,QACA,2BAAA,QACA,4BAAA,QACA,4BAAA,QACA,iBAAA,0BAIJ,4BACI,aAAA,iDACA,qBAAA,QACA,2BAAA,QACA,4BAAA,QACA,4BAAA,QACA,iBAAA,0BCVJ,+CDcA,gDAEI,aAAA,QACA,qBAAA,QACA,2BAAA,QACA,4BAAA,QACA,4BAAA,QACA,iBAAA,0BASJ,8BACI,eAAA,QACA,uBAAA,QACA,6BAAA,QACA,sBAAA,QACA,oBAAA,QACA,wBAAA,QAKJ,6BACI,eAAA,QACA,uBAAA,QACA,6BAAA,QACA,sBAAA,QACA,oBAAA,QACA,wBAAA,QAIJ,8BACI,eAAA,QACA,uBAAA,yBACA,6BAAA,QACA,sBAAA,yBACA,oBAAA,yBACA,wBAAA,0BCpBJ,iDDwBA,kDAEI,eAAA,QACA,uBAAA,QACA,6BAAA,QACA,sBAAA,QACA,oBAAA,QACA,wBAAA,QEvHJ,eACI,aAAA,iBAWJ,gBACI,iBAAA,mCAGJ,kBACI,iBAAA,qCCnBF;;;;ACDF,MHsHA,sBG7GI,UAAA,QAAA,YAAA,QAAA,YAAA,QAAA,UAAA,QAAA,SAAA,QAAA,YAAA,QAAA,YAAA,QAAA,WAAA,QAAA,UAAA,QAAA,UAAA,QAAA,WAAA,KAAA,WAAA,KAAA,UAAA,QAAA,eAAA,QAIA,cAAA,QAAA,cAAA,QAAA,cAAA,QAAA,cAAA,QAAA,cAAA,QAAA,cAAA,QAAA,cAAA,QAAA,cAAA,QAAA,cAAA,QAIA,aAAA,QAAA,eAAA,QAAA,aAAA,QAAA,UAAA,QAAA,aAAA,QAAA,YAAA,QAAA,WAAA,QAAA,UAAA,QAAA,YAAA,QAAA,UAAA,QAIA,iBAAA,EAAA,CAAA,EAAA,CAAA,IAAA,mBAAA,GAAA,CAAA,GAAA,CAAA,IAAA,iBAAA,EAAA,CAAA,GAAA,CAAA,IAAA,cAAA,EAAA,CAAA,GAAA,CAAA,IAAA,iBAAA,GAAA,CAAA,GAAA,CAAA,GAAA,gBAAA,GAAA,CAAA,EAAA,CAAA,GAAA,eAAA,GAAA,CAAA,GAAA,CAAA,IAAA,cAAA,EAAA,CAAA,EAAA,CAAA,IAAA,gBAAA,GAAA,CAAA,EAAA,CAAA,IAAA,cAAA,GAAA,CAAA,GAAA,CAAA,IAIA,2BAAA,QAAA,6BAAA,QAAA,2BAAA,QAAA,wBAAA,QAAA,2BAAA,QAAA,0BAAA,QAAA,wBAAA,QAAA,0BAAA,QAAA,yBAAA,QAAA,wBAAA,QAIA,uBAAA,QAAA,yBAAA,QAAA,uBAAA,QAAA,oBAAA,QAAA,uBAAA,QAAA,sBAAA,QAAA,oBAAA,QAAA,sBAAA,QAAA,qBAAA,QAAA,oBAAA,QAIA,2BAAA,QAAA,6BAAA,QAAA,2BAAA,QAAA,wBAAA,QAAA,2BAAA,QAAA,0BAAA,QAAA,wBAAA,QAAA,0BAAA,QAAA,yBAAA,QAAA,wBAAA,QAGF,eAAA,GAAA,CAAA,GAAA,CAAA,IACA,eAAA,CAAA,CAAA,CAAA,CAAA,EAMA,qBAAA,QAAA,CAAA,WACA,oBAAA,cAAA,CAAA,KAAA,CAAA,MAAA,CAAA,QAAA,CAAA,iBAAA,CAAA,aAAA,CAAA,UACA,cAAA,2EAOA,sBAAA,0BC2OI,oBAAA,SDzOJ,sBAAA,IACA,sBAAA,IAKA,gBAAA,QACA,oBAAA,GAAA,CAAA,GAAA,CAAA,IACA,aAAA,QACA,iBAAA,GAAA,CAAA,GAAA,CAAA,IAEA,oBAAA,KACA,wBAAA,CAAA,CAAA,CAAA,CAAA,EAEA,qBAAA,0BACA,yBAAA,GAAA,CAAA,GAAA,CAAA,IACA,kBAAA,KACA,sBAAA,GAAA,CAAA,GAAA,CAAA,IAEA,oBAAA,QACA,wBAAA,EAAA,CAAA,EAAA,CAAA,GACA,iBAAA,QACA,qBAAA,GAAA,CAAA,GAAA,CAAA,IAGA,mBAAA,QAEA,gBAAA,QACA,oBAAA,EAAA,CAAA,EAAA,CAAA,IACA,qBAAA,KAEA,sBAAA,QACA,0BAAA,EAAA,CAAA,EAAA,CAAA,IAMA,gBAAA,QACA,kBAAA,QAGA,kBAAA,IACA,kBAAA,MACA,kBAAA,QACA,8BAAA,qBAEA,mBAAA,QACA,sBAAA,QACA,sBAAA,OACA,sBAAA,KACA,uBAAA,KACA,uBAAA,4BACA,wBAAA,MAGA,gBAAA,IAAA,IAAA,IAAA,sBACA,mBAAA,EAAA,SAAA,QAAA,qCACA,mBAAA,EAAA,IAAA,IAAA,EAAA,sBACA,sBAAA,MAAA,EAAA,IAAA,IAAA,sCAIA,sBAAA,QACA,wBAAA,KACA,sBAAA,wBAIA,sBAAA,QACA,6BAAA,QACA,wBAAA,QACA,+BAAA,QE/GE,qBFqHA,aAAA,KAGA,gBAAA,QACA,oBAAA,GAAA,CAAA,GAAA,CAAA,IACA,aAAA,QACA,iBAAA,EAAA,CAAA,EAAA,CAAA,GAEA,oBAAA,QACA,wBAAA,GAAA,CAAA,GAAA,CAAA,IAEA,qBAAA,QACA,yBAAA,GAAA,CAAA,GAAA,CAAA,IACA,kBAAA,QACA,sBAAA,EAAA,CAAA,EAAA,CAAA,GAEA,oBAAA,QACA,wBAAA,GAAA,CAAA,GAAA,CAAA,IACA,iBAAA,QACA,qBAAA,EAAA,CAAA,EAAA,CAAA,GAGE,2BAAA,QAAA,6BAAA,QAAA,2BAAA,QAAA,wBAAA,QAAA,2BAAA,QAAA,0BAAA,QAAA,wBAAA,QAAA,0BAAA,QAAA,yBAAA,QAAA,wBAAA,QAIA,uBAAA,iCAAA,yBAAA,mCAAA,uBAAA,iCAAA,oBAAA,8BAAA,uBAAA,iCAAA,sBAAA,gCAAA,oBAAA,8BAAA,sBAAA,gCAAA,qBAAA,+BAAA,oBAAA,8BAIA,2BAAA,QAAA,6BAAA,QAAA,2BAAA,QAAA,wBAAA,QAAA,2BAAA,QAAA,0BAAA,QAAA,wBAAA,QAAA,0BAAA,QAAA,yBAAA,QAAA,wBAAA,QAGF,mBAAA,QAEA,gBAAA,QACA,sBAAA,QACA,oBAAA,EAAA,CAAA,EAAA,CAAA,IACA,0BAAA,EAAA,CAAA,EAAA,CAAA,IAEA,gBAAA,QAEA,kBAAA,QACA,8BAAA,QAEA,sBAAA,QACA,6BAAA,QACA,wBAAA,QACA,+BAAA,QGrKJ,ENsSA,QADA,SMlSE,mBAAA,WAAA,WAAA,WAeE,8CANJ,MAOM,gBAAA,QAcN,KACE,OAAA,EACA,YAAA,2BF6OI,UAAA,yBE3OJ,YAAA,2BACA,YAAA,2BACA,MAAA,qBACA,WAAA,0BACA,iBAAA,kBACA,yBAAA,KACA,4BAAA,YASF,GACE,OAAA,SAAA,EACA,MAAA,QACA,OAAA,EACA,WAAA,uBAAA,MAAA,uBACA,QAAA,EAUF,IAAA,IAAA,IAAA,IAAA,IAAA,IAAA,GAAA,GAAA,GAAA,GAAA,GAAA,GACE,WAAA,EACA,cAAA,KAGA,YAAA,IACA,YAAA,IACA,MAAA,wBAGF,IAAA,GFuMQ,UAAA,2BA5JJ,0BE3CJ,IAAA,GF8MQ,UAAA,WEzMR,IAAA,GFkMQ,UAAA,wBA5JJ,0BEtCJ,IAAA,GFyMQ,UAAA,SEpMR,IAAA,GF6LQ,UAAA,4BA5JJ,0BEjCJ,IAAA,GFoMQ,UAAA,YE/LR,IAAA,GFoLM,UAAA,WE/KN,IAAA,GF+KM,UAAA,OE1KN,IAAA,GF0KM,UAAA,UE/JN,EACE,WAAA,EACA,cAAA,KAUF,YACE,wBAAA,UAAA,OAAA,gBAAA,UAAA,OACA,OAAA,KACA,iCAAA,KAAA,yBAAA,KAMF,QACE,cAAA,KACA,WAAA,OACA,YAAA,QAMF,GN0PA,GMxPE,cAAA,KN8PF,GM3PA,GN0PA,GMvPE,WAAA,EACA,cAAA,KAGF,MN2PA,MACA,MAFA,MMtPE,cAAA,EAGF,GACE,YAAA,IAKF,GACE,cAAA,MACA,aAAA,EAMF,WACE,OAAA,EAAA,EAAA,KAQF,ENgPA,OM9OE,YAAA,OAQF,OAAA,MF6EM,UAAA,OEtEN,MAAA,KACE,QAAA,QACA,iBAAA,uBASF,INkOA,IMhOE,SAAA,SFyDI,UAAA,MEvDJ,YAAA,EACA,eAAA,SAGF,IAAM,OAAA,OACN,IAAM,IAAA,MAKN,EACE,MAAA,wDACA,gBAAA,KAEA,QACE,oBAAA,+BAWF,2BAAA,iCAEE,MAAA,QACA,gBAAA,KN8NJ,KACA,IMxNA,INyNA,KMrNE,YAAA,yBFeI,UAAA,IEPN,IACE,QAAA,MACA,WAAA,EACA,cAAA,KACA,SAAA,KFGI,UAAA,OEEJ,SFFI,UAAA,QEIF,MAAA,QACA,WAAA,OAIJ,KFTM,UAAA,OEWJ,MAAA,qBACA,UAAA,WAGA,OACE,MAAA,QAIJ,IACE,QAAA,MAAA,MFrBI,UAAA,OEuBJ,MAAA,kBACA,iBAAA,qBCpSE,cAAA,ODuSF,QACE,QAAA,EF5BE,UAAA,IEuCN,OACE,OAAA,EAAA,EAAA,KAMF,INoMA,IMlME,eAAA,OAQF,MACE,aAAA,OACA,gBAAA,SAGF,QACE,YAAA,OACA,eAAA,OACA,MAAA,0BACA,WAAA,MAOF,GAEE,WAAA,QACA,WAAA,qBN6LF,MAGA,GAFA,MAGA,GM9LA,MN4LA,GMtLE,aAAA,QACA,aAAA,MACA,aAAA,EAQF,MACE,QAAA,aAMF,OAEE,cAAA,EAQF,iCACE,QAAA,EN+KF,OM1KA,MN4KA,SADA,OAEA,SMxKE,OAAA,EACA,YAAA,QF3HI,UAAA,QE6HJ,YAAA,QAIF,ONyKA,OMvKE,eAAA,KAKF,cACE,OAAA,QAGF,OAGE,UAAA,OAGA,gBACE,QAAA,EAOJ,0IACE,QAAA,eNmKF,cACA,aACA,cM7JA,OAIE,mBAAA,ON6JF,6BACA,4BACA,6BM5JI,sBACE,OAAA,QAON,mBACE,QAAA,EACA,aAAA,KAKF,SACE,OAAA,SAUF,SACE,UAAA,EACA,QAAA,EACA,OAAA,EACA,OAAA,EAQF,OACE,MAAA,MACA,MAAA,KACA,QAAA,EACA,cAAA,MFhNM,UAAA,sBEmNN,YAAA,QF/WE,0BEwWJ,OFrMQ,UAAA,QE8MN,SACE,MAAA,MNqJJ,kCM9IA,uCN6IA,mCADA,+BAGA,oCAJA,6BAKA,mCMzIE,QAAA,EAGF,4BACE,OAAA,KASF,cACE,eAAA,KACA,mBAAA,UNyIF,aACA,cMlIA,WNgIA,WAGE,UAAW,IAEb,4BMrIA,mBAAA,KEsIA,+BRIE,QAAS,EQAX,6BRIE,KAAM,QMrHR,mBAAA,OEsHA,uBRIE,KAAM,QM1HR,mBAAA,OEsHA,ORSE,QAAS,aQLX,ORSE,OAAQ,EQLV,QRSE,QAAS,UMlHX,OAAA,QE8GA,SRSE,eAAgB,SQLlB,SRSE,QAAS,eQLX,MRSE,UAAW,WS/qBb,YAAA,ID2qBA,WRSE,UAAW,uBS7qBX,YAAA,ILgQM,YAAA,IJibR,0BQPA,WJtkBI,UAAA,MI2kBJ,WRSE,UAAW,uBSxrBX,YAAA,ILgQM,YAAA,IJ4bR,0BQPA,WJjlBI,UAAA,QIslBJ,WRSE,UAAW,uBSnsBX,YAAA,ILgQM,YAAA,IJucR,0BQPA,WJ5lBI,UAAA,MIimBJ,WRSE,UAAW,uBS9sBX,YAAA,ILgQM,YAAA,IJkdR,0BQPA,WJvmBI,UAAA,QI4mBJ,WRSE,UAAW,uBSztBX,YAAA,ILgQM,YAAA,IJ6dR,0BQPA,WJlnBI,UAAA,MIunBJ,WRSE,UAAW,uBSpuBX,YAAA,ILgQM,YAAA,IJweR,0BQPA,WJ7nBI,UAAA,QIkoBJ,eRSE,cAAe,ESvtBjB,WAAA,KDmtBA,aRSE,cAAe,ESvtBjB,WAAA,KDmtBA,kBRSE,QAAS,aAEX,mCQPA,YAAA,MAGA,YRSE,UAAW,OSltBb,eAAA,UD8sBA,YRSE,cAAe,QSjtBjB,UAAA,WTotBA,wBQPA,cAAA,EAGA,mBRSE,WAAY,SShtBd,cAAA,QACE,UAAA,OACA,MAAA,0BTmtBF,2BQPA,QAAA,KAGA,WRSE,UAAW,KUnzBb,OAAA,KF+yBA,eRSE,QAAS,OUlzBX,iBAAA,kBACE,OAAA,uBCooDkC,MAAA,uBDnoDlC,cAAA,wBACA,UAAA,KHGE,OAAA,KC4yBJ,QRSE,QAAS,aQLX,YRSE,cAAe,QU3yBjB,YAAA,EFuyBA,gBRSE,UAAW,OU3yBb,MAAA,0BFuyBA,WRSA,iBAGA,cACA,cACA,cAHA,cYl1BE,eZs1BA,cAAe,OACf,cAAe,Ea11Bf,MAAA,KACA,aAAA,8BACA,cAAA,8BACA,YAAA,KACA,aAAA,KLs1BF,yBRSiB,WAAf,ccvyBE,UAAA,Od2yBJ,yBQPA,WAAA,cAAA,cMpyBI,UAAA,OdgzBJ,yBQPA,WAAA,cAAA,cAAA,cMzyBI,UAAA,OdqzBJ,0BQPA,WAAA,cAAA,cAAA,cAAA,cM9yBI,UAAA,Qd0zBJ,0BQPA,WAAA,cAAA,cAAA,cAAA,cAAA,eMnzBI,UAAA,Qd+zBJ,MQPA,mBAAA,EOn3BA,mBAAA,MAEI,mBAAA,MAAA,mBAAA,MAAA,mBAAA,OAAA,oBAAA,OPy3BJ,KRSE,cAAe,Oe73Bf,cAAA,ECNA,QAAA,YACA,QAAA,YACA,QAAA,KAAA,cAAA,KAAA,UAAA,KACA,WAAA,8BhBw4BA,YgBx4BA,+BAEA,aAAA,+BhBy4BF,OQVA,kBAAA,EO33BI,YAAA,ECOF,MAAA,KhBk4BA,UgBl4BA,KACA,aAAA,8BACA,cAAA,8BACA,WAAA,mBRy3BF,KRaE,iBAAkB,EgBr1Bd,SAAA,EAAA,EAAA,GACE,KAAA,EAAA,EAAA,GR20BR,iBReE,iBAAkB,EgBv1Bd,SAAA,EAAA,EAAA,KApCJ,KAAA,EAAA,EAAA,KhB83BA,MgB93BA,KRi3BF,cRiBE,iBAAkB,EgBn3BlB,SAAA,EAAA,EAAA,KACE,KAAA,EAAA,EAAA,KhBq3BF,MgBr3BE,KRs2BJ,cRmBE,iBAAkB,EgB13BlB,SAAA,EAAA,EAAA,KACE,KAAA,EAAA,EAAA,KhB43BF,MgB53BE,IR22BJ,cRqBE,iBAAkB,EgBj4BlB,SAAA,EAAA,EAAA,KACE,KAAA,EAAA,EAAA,KhBm4BF,MgBn4BE,eRg3BJ,cRuBE,iBAAkB,EgBx4BlB,SAAA,EAAA,EAAA,KACE,KAAA,EAAA,EAAA,KhB04BF,MgB14BE,IRq3BJ,cRyBE,iBAAkB,EgB/4BlB,SAAA,EAAA,EAAA,KACE,KAAA,EAAA,EAAA,KhBi5BF,MgBj5BE,IR03BJ,cR2BE,iBAAkB,EgBt5BlB,SAAA,EAAA,EAAA,KACE,KAAA,EAAA,EAAA,KhBw5BF,MgBx5BE,eR+3BJ,UR6BE,iBAAkB,EgB53Bd,SAAA,EAAA,EAAA,KAhDJ,KAAA,EAAA,EAAA,KhB+6BA,MgB/6BA,KRo5BF,OR+BE,iBAAkB,EgB73BV,SAAA,EAAA,EAAA,KAhEN,KAAA,EAAA,EAAA,KhBg8BF,MgBh8BE,YRm6BJ,ORiCE,iBAAkB,EgBp4BV,SAAA,EAAA,EAAA,KAhEN,KAAA,EAAA,EAAA,KhBu8BF,MgBv8BE,aRw6BJ,ORmCE,iBAAkB,EgB34BV,SAAA,EAAA,EAAA,KAhEN,KAAA,EAAA,EAAA,KhB88BF,MgB98BE,IR66BJ,ORqCE,iBAAkB,EgBl5BV,SAAA,EAAA,EAAA,KAhEN,KAAA,EAAA,EAAA,KhBq9BF,MgBr9BE,aRk7BJ,ORuCE,iBAAkB,EgBz5BV,SAAA,EAAA,EAAA,KAhEN,KAAA,EAAA,EAAA,KhB49BF,MgB59BE,aRu7BJ,ORyCE,iBAAkB,EgBh6BV,SAAA,EAAA,EAAA,KAhEN,KAAA,EAAA,EAAA,KhBm+BF,MgBn+BE,IR47BJ,OR2CE,iBAAkB,EgBv6BV,SAAA,EAAA,EAAA,KAhEN,KAAA,EAAA,EAAA,KhB0+BF,MgB1+BE,aRi8BJ,OR6CE,iBAAkB,EgB96BV,SAAA,EAAA,EAAA,KAhEN,KAAA,EAAA,EAAA,KhBi/BF,MgBj/BE,aRs8BJ,OR+CE,iBAAkB,EgBr7BV,SAAA,EAAA,EAAA,KAhEN,KAAA,EAAA,EAAA,KhBw/BF,MgBx/BE,IR28BJ,QRiDE,iBAAkB,EgB57BV,SAAA,EAAA,EAAA,KAhEN,KAAA,EAAA,EAAA,KhB+/BF,MgB//BE,aRg9BJ,QRmDE,iBAAkB,EgBn8BV,SAAA,EAAA,EAAA,KAhEN,KAAA,EAAA,EAAA,KhBsgCF,MgBtgCE,aRq9BJ,QRqDE,iBAAkB,EgB18BV,SAAA,EAAA,EAAA,KAhEN,KAAA,EAAA,EAAA,KhB6gCF,MgB7gCE,KR09BJ,URuDE,aAAc,YQnDhB,URuDE,aAAc,aQnDhB,URuDE,aAAc,IQnDhB,URuDE,aAAc,aQnDhB,URuDE,aAAc,aQnDhB,URuDE,aAAc,IQnDhB,URuDE,aAAc,aQnDhB,URuDE,aAAc,aQnDhB,URuDE,aAAc,IQnDhB,WRuDE,aAAc,aQnDhB,WRuDE,aAAc,aQnDhB,KRuDA,MgB1+BQ,cAAA,ERw7BR,KRuDA,MgB1+BQ,cAAA,ERw7BR,KRuDA,MgBp/BQ,cAAA,URk8BR,KRuDA,MgBp/BQ,cAAA,URk8BR,KRuDA,MgB9/BQ,cAAA,SR48BR,KRuDA,MgB9/BQ,cAAA,SR48BR,KRuDA,MgBxgCQ,cAAA,QRs9BR,KRuDA,MgBxgCQ,cAAA,QRs9BR,KRuDA,MgBlhCQ,cAAA,SRg+BR,KRuDA,MgBlhCQ,cAAA,SRg+BR,KRuDA,MgB5hCQ,cAAA,QR0+BR,KRuDA,MgB5hCQ,cAAA,QR0+BR,yBRuDE,QczlCE,iBAAA,EEUE,SAAA,EAAA,EAAA,GACE,KAAA,EAAA,EAAA,GhBmlCN,oBQvDA,iBAAA,EQzhCI,SAAA,EAAA,EAAA,KApCJ,KAAA,EAAA,EAAA,KhBwnCE,MgBxnCF,KhB0nCA,iBQzDA,iBAAA,EQljCA,SAAA,EAAA,EAAA,KACE,KAAA,EAAA,EAAA,KhB8mCA,MgB9mCA,KhBgnCF,iBQ3DA,iBAAA,EQtjCA,SAAA,EAAA,EAAA,KACE,KAAA,EAAA,EAAA,KhBonCA,MgBpnCA,IhBsnCF,iBQ7DA,iBAAA,EQ1jCA,SAAA,EAAA,EAAA,KACE,KAAA,EAAA,EAAA,KhB0nCA,MgB1nCA,ehB4nCF,iBQ/DA,iBAAA,EQ9jCA,SAAA,EAAA,EAAA,KACE,KAAA,EAAA,EAAA,KhBgoCA,MgBhoCA,IhBkoCF,iBQjEA,iBAAA,EQlkCA,SAAA,EAAA,EAAA,KACE,KAAA,EAAA,EAAA,KhBsoCA,MgBtoCA,IhBwoCF,iBQnEA,iBAAA,EQtkCA,SAAA,EAAA,EAAA,KACE,KAAA,EAAA,EAAA,KhB4oCA,MgB5oCA,ehB8oCF,aQrEA,iBAAA,EQziCI,SAAA,EAAA,EAAA,KAhDJ,KAAA,EAAA,EAAA,KhBkqCE,MgBlqCF,KhBoqCA,UQvEA,iBAAA,EQviCQ,SAAA,EAAA,EAAA,KAhEN,KAAA,EAAA,EAAA,KhBkrCA,MgBlrCA,YhBorCF,UQzEA,iBAAA,EQ3iCQ,SAAA,EAAA,EAAA,KAhEN,KAAA,EAAA,EAAA,KhBwrCA,MgBxrCA,ahB0rCF,UQ3EA,iBAAA,EQ/iCQ,SAAA,EAAA,EAAA,KAhEN,KAAA,EAAA,EAAA,KhB8rCA,MgB9rCA,IhBgsCF,UQ7EA,iBAAA,EQnjCQ,SAAA,EAAA,EAAA,KAhEN,KAAA,EAAA,EAAA,KhBosCA,MgBpsCA,ahBssCF,UQ/EA,iBAAA,EQvjCQ,SAAA,EAAA,EAAA,KAhEN,KAAA,EAAA,EAAA,KhB0sCA,MgB1sCA,ahB4sCF,UQjFA,iBAAA,EQ3jCQ,SAAA,EAAA,EAAA,KAhEN,KAAA,EAAA,EAAA,KhBgtCA,MgBhtCA,IhBktCF,UQnFA,iBAAA,EQ/jCQ,SAAA,EAAA,EAAA,KAhEN,KAAA,EAAA,EAAA,KhBstCA,MgBttCA,ahBwtCF,UQrFA,iBAAA,EQnkCQ,SAAA,EAAA,EAAA,KAhEN,KAAA,EAAA,EAAA,KhB4tCA,MgB5tCA,ahB8tCF,UQvFA,iBAAA,EQvkCQ,SAAA,EAAA,EAAA,KAhEN,KAAA,EAAA,EAAA,KhBkuCA,MgBluCA,IhBouCF,WQzFA,iBAAA,EQ3kCQ,SAAA,EAAA,EAAA,KAhEN,KAAA,EAAA,EAAA,KhBwuCA,MgBxuCA,ahB0uCF,WQ3FA,iBAAA,EQ/kCQ,SAAA,EAAA,EAAA,KAhEN,KAAA,EAAA,EAAA,KhB8uCA,MgB9uCA,ahBgvCF,WQ7FA,iBAAA,EQnlCQ,SAAA,EAAA,EAAA,KAhEN,KAAA,EAAA,EAAA,KhBovCA,MgBpvCA,KhBsvCF,aQ/FA,aAAA,ERkGA,aQ/FA,aAAA,YRkGA,aQ/FA,aAAA,aRkGA,aQ/FA,aAAA,IRkGA,aQ/FA,aAAA,aRkGA,aQ/FA,aAAA,aRkGA,aQ/FA,aAAA,IRkGA,aQ/FA,aAAA,aRkGA,aQ/FA,aAAA,aRkGA,aQ/FA,aAAA,IRkGA,cQ/FA,aAAA,aRkGA,cQ/FA,aAAA,aRkGA,QACF,SgBxsCQ,cAAA,EhB2sCN,QACF,SgBvsCQ,cAAA,EhB0sCN,QACF,SgBhtCQ,cAAA,UhBmtCN,QACF,SgB/sCQ,cAAA,UhBktCN,QACF,SgBxtCQ,cAAA,ShB2tCN,QACF,SgBvtCQ,cAAA,ShB0tCN,QACF,SgBhuCQ,cAAA,QhBmuCN,QACF,SgB/tCQ,cAAA,QhBkuCN,QACF,SgBxuCQ,cAAA,ShB2uCN,QACF,SgBvuCQ,cAAA,ShB0uCN,QACF,SgBhvCQ,cAAA,QhBmvCN,QACF,SgB/uCQ,cAAA,ShBmvCR,yBQ/FA,QM5sCI,iBAAA,EEUE,SAAA,EAAA,EAAA,GACE,KAAA,EAAA,EAAA,GhBsyCN,oBQjGA,iBAAA,EQlsCI,SAAA,EAAA,EAAA,KApCJ,KAAA,EAAA,EAAA,KhB20CE,MgB30CF,KhB60CA,iBQnGA,iBAAA,EQ3tCA,SAAA,EAAA,EAAA,KACE,KAAA,EAAA,EAAA,KhBi0CA,MgBj0CA,KhBm0CF,iBQrGA,iBAAA,EQ/tCA,SAAA,EAAA,EAAA,KACE,KAAA,EAAA,EAAA,KhBu0CA,MgBv0CA,IhBy0CF,iBQvGA,iBAAA,EQnuCA,SAAA,EAAA,EAAA,KACE,KAAA,EAAA,EAAA,KhB60CA,MgB70CA,ehB+0CF,iBQzGA,iBAAA,EQvuCA,SAAA,EAAA,EAAA,KACE,KAAA,EAAA,EAAA,KhBm1CA,MgBn1CA,IhBq1CF,iBQ3GA,iBAAA,EQ3uCA,SAAA,EAAA,EAAA,KACE,KAAA,EAAA,EAAA,KhBy1CA,MgBz1CA,IhB21CF,iBQ7GA,iBAAA,EQ/uCA,SAAA,EAAA,EAAA,KACE,KAAA,EAAA,EAAA,KhB+1CA,MgB/1CA,ehBi2CF,aQ/GA,iBAAA,EQltCI,SAAA,EAAA,EAAA,KAhDJ,KAAA,EAAA,EAAA,KhBq3CE,MgBr3CF,KhBu3CA,UQjHA,iBAAA,EQhtCQ,SAAA,EAAA,EAAA,KAhEN,KAAA,EAAA,EAAA,KhBq4CA,MgBr4CA,YhBu4CF,UQnHA,iBAAA,EQptCQ,SAAA,EAAA,EAAA,KAhEN,KAAA,EAAA,EAAA,KhB24CA,MgB34CA,ahB64CF,UQrHA,iBAAA,EQxtCQ,SAAA,EAAA,EAAA,KAhEN,KAAA,EAAA,EAAA,KhBi5CA,MgBj5CA,IhBm5CF,UQvHA,iBAAA,EQ5tCQ,SAAA,EAAA,EAAA,KAhEN,KAAA,EAAA,EAAA,KhBu5CA,MgBv5CA,ahBy5CF,UQzHA,iBAAA,EQhuCQ,SAAA,EAAA,EAAA,KAhEN,KAAA,EAAA,EAAA,KhB65CA,MgB75CA,ahB+5CF,UQ3HA,iBAAA,EQpuCQ,SAAA,EAAA,EAAA,KAhEN,KAAA,EAAA,EAAA,KhBm6CA,MgBn6CA,IhBq6CF,UQ7HA,iBAAA,EQxuCQ,SAAA,EAAA,EAAA,KAhEN,KAAA,EAAA,EAAA,KhBy6CA,MgBz6CA,ahB26CF,UQ/HA,iBAAA,EQ5uCQ,SAAA,EAAA,EAAA,KAhEN,KAAA,EAAA,EAAA,KhB+6CA,MgB/6CA,ahBi7CF,UQjIA,iBAAA,EQhvCQ,SAAA,EAAA,EAAA,KAhEN,KAAA,EAAA,EAAA,KhBq7CA,MgBr7CA,IhBu7CF,WQnIA,iBAAA,EQpvCQ,SAAA,EAAA,EAAA,KAhEN,KAAA,EAAA,EAAA,KhB27CA,MgB37CA,ahB67CF,WQrIA,iBAAA,EQxvCQ,SAAA,EAAA,EAAA,KAhEN,KAAA,EAAA,EAAA,KhBi8CA,MgBj8CA,ahBm8CF,WQvIA,iBAAA,EQ5vCQ,SAAA,EAAA,EAAA,KAhEN,KAAA,EAAA,EAAA,KhBu8CA,MgBv8CA,KhBy8CF,aQzIA,aAAA,ER4IA,aQzIA,aAAA,YR4IA,aQzIA,aAAA,aR4IA,aQzIA,aAAA,IR4IA,aQzIA,aAAA,aR4IA,aQzIA,aAAA,aR4IA,aQzIA,aAAA,IR4IA,aQzIA,aAAA,aR4IA,aQzIA,aAAA,aR4IA,aQzIA,aAAA,IR4IA,cQzIA,aAAA,aR4IA,cQzIA,aAAA,aR4IA,QACF,SgB35CQ,cAAA,EhB85CN,QACF,SgB15CQ,cAAA,EhB65CN,QACF,SgBn6CQ,cAAA,UhBs6CN,QACF,SgBl6CQ,cAAA,UhBq6CN,QACF,SgB36CQ,cAAA,ShB86CN,QACF,SgB16CQ,cAAA,ShB66CN,QACF,SgBn7CQ,cAAA,QhBs7CN,QACF,SgBl7CQ,cAAA,QhBq7CN,QACF,SgB37CQ,cAAA,ShB87CN,QACF,SgB17CQ,cAAA,ShB67CN,QACF,SgBn8CQ,cAAA,QhBs8CN,QACF,SgBl8CQ,cAAA,ShBs8CR,yBQzIA,QMr3CI,iBAAA,EEUE,SAAA,EAAA,EAAA,GACE,KAAA,EAAA,EAAA,GhBy/CN,oBQ3IA,iBAAA,EQ32CI,SAAA,EAAA,EAAA,KApCJ,KAAA,EAAA,EAAA,KhB8hDE,MgB9hDF,KhBgiDA,iBQ7IA,iBAAA,EQp4CA,SAAA,EAAA,EAAA,KACE,KAAA,EAAA,EAAA,KhBohDA,MgBphDA,KhBshDF,iBQ/IA,iBAAA,EQx4CA,SAAA,EAAA,EAAA,KACE,KAAA,EAAA,EAAA,KhB0hDA,MgB1hDA,IhB4hDF,iBQjJA,iBAAA,EQ54CA,SAAA,EAAA,EAAA,KACE,KAAA,EAAA,EAAA,KhBgiDA,MgBhiDA,ehBkiDF,iBQnJA,iBAAA,EQh5CA,SAAA,EAAA,EAAA,KACE,KAAA,EAAA,EAAA,KhBsiDA,MgBtiDA,IhBwiDF,iBQrJA,iBAAA,EQp5CA,SAAA,EAAA,EAAA,KACE,KAAA,EAAA,EAAA,KhB4iDA,MgB5iDA,IhB8iDF,iBQvJA,iBAAA,EQx5CA,SAAA,EAAA,EAAA,KACE,KAAA,EAAA,EAAA,KhBkjDA,MgBljDA,ehBojDF,aQzJA,iBAAA,EQ33CI,SAAA,EAAA,EAAA,KAhDJ,KAAA,EAAA,EAAA,KhBwkDE,MgBxkDF,KhB0kDA,UQ3JA,iBAAA,EQz3CQ,SAAA,EAAA,EAAA,KAhEN,KAAA,EAAA,EAAA,KhBwlDA,MgBxlDA,YhB0lDF,UQ7JA,iBAAA,EQ73CQ,SAAA,EAAA,EAAA,KAhEN,KAAA,EAAA,EAAA,KhB8lDA,MgB9lDA,ahBgmDF,UQ/JA,iBAAA,EQj4CQ,SAAA,EAAA,EAAA,KAhEN,KAAA,EAAA,EAAA,KhBomDA,MgBpmDA,IhBsmDF,UQjKA,iBAAA,EQr4CQ,SAAA,EAAA,EAAA,KAhEN,KAAA,EAAA,EAAA,KhB0mDA,MgB1mDA,ahB4mDF,UQnKA,iBAAA,EQz4CQ,SAAA,EAAA,EAAA,KAhEN,KAAA,EAAA,EAAA,KhBgnDA,MgBhnDA,ahBknDF,UQrKA,iBAAA,EQ74CQ,SAAA,EAAA,EAAA,KAhEN,KAAA,EAAA,EAAA,KhBsnDA,MgBtnDA,IhBwnDF,UQvKA,iBAAA,EQj5CQ,SAAA,EAAA,EAAA,KAhEN,KAAA,EAAA,EAAA,KhB4nDA,MgB5nDA,ahB8nDF,UQzKA,iBAAA,EQr5CQ,SAAA,EAAA,EAAA,KAhEN,KAAA,EAAA,EAAA,KhBkoDA,MgBloDA,ahBooDF,UQ3KA,iBAAA,EQz5CQ,SAAA,EAAA,EAAA,KAhEN,KAAA,EAAA,EAAA,KhBwoDA,MgBxoDA,IhB0oDF,WQ7KA,iBAAA,EQ75CQ,SAAA,EAAA,EAAA,KAhEN,KAAA,EAAA,EAAA,KhB8oDA,MgB9oDA,ahBgpDF,WQ/KA,iBAAA,EQj6CQ,SAAA,EAAA,EAAA,KAhEN,KAAA,EAAA,EAAA,KhBopDA,MgBppDA,ahBspDF,WQjLA,iBAAA,EQr6CQ,SAAA,EAAA,EAAA,KAhEN,KAAA,EAAA,EAAA,KhB0pDA,MgB1pDA,KhB4pDF,aQnLA,aAAA,ERsLA,aQnLA,aAAA,YRsLA,aQnLA,aAAA,aRsLA,aQnLA,aAAA,IRsLA,aQnLA,aAAA,aRsLA,aQnLA,aAAA,aRsLA,aQnLA,aAAA,IRsLA,aQnLA,aAAA,aRsLA,aQnLA,aAAA,aRsLA,aQnLA,aAAA,IRsLA,cQnLA,aAAA,aRsLA,cQnLA,aAAA,aRsLA,QACF,SgB9mDQ,cAAA,EhBinDN,QACF,SgB7mDQ,cAAA,EhBgnDN,QACF,SgBtnDQ,cAAA,UhBynDN,QACF,SgBrnDQ,cAAA,UhBwnDN,QACF,SgB9nDQ,cAAA,ShBioDN,QACF,SgB7nDQ,cAAA,ShBgoDN,QACF,SgBtoDQ,cAAA,QhByoDN,QACF,SgBroDQ,cAAA,QhBwoDN,QACF,SgB9oDQ,cAAA,ShBipDN,QACF,SgB7oDQ,cAAA,ShBgpDN,QACF,SgBtpDQ,cAAA,QhBypDN,QACF,SgBrpDQ,cAAA,ShBypDR,0BQnLA,QM9hDI,iBAAA,EEUE,SAAA,EAAA,EAAA,GACE,KAAA,EAAA,EAAA,GhB4sDN,oBQrLA,iBAAA,EQphDI,SAAA,EAAA,EAAA,KApCJ,KAAA,EAAA,EAAA,KhBivDE,MgBjvDF,KhBmvDA,iBQvLA,iBAAA,EQ7iDA,SAAA,EAAA,EAAA,KACE,KAAA,EAAA,EAAA,KhBuuDA,MgBvuDA,KhByuDF,iBQzLA,iBAAA,EQjjDA,SAAA,EAAA,EAAA,KACE,KAAA,EAAA,EAAA,KhB6uDA,MgB7uDA,IhB+uDF,iBQ3LA,iBAAA,EQrjDA,SAAA,EAAA,EAAA,KACE,KAAA,EAAA,EAAA,KhBmvDA,MgBnvDA,ehBqvDF,iBQ7LA,iBAAA,EQzjDA,SAAA,EAAA,EAAA,KACE,KAAA,EAAA,EAAA,KhByvDA,MgBzvDA,IhB2vDF,iBQ/LA,iBAAA,EQ7jDA,SAAA,EAAA,EAAA,KACE,KAAA,EAAA,EAAA,KhB+vDA,MgB/vDA,IhBiwDF,iBQjMA,iBAAA,EQjkDA,SAAA,EAAA,EAAA,KACE,KAAA,EAAA,EAAA,KhBqwDA,MgBrwDA,ehBuwDF,aQnMA,iBAAA,EQpiDI,SAAA,EAAA,EAAA,KAhDJ,KAAA,EAAA,EAAA,KhB2xDE,MgB3xDF,KhB6xDA,UQrMA,iBAAA,EQliDQ,SAAA,EAAA,EAAA,KAhEN,KAAA,EAAA,EAAA,KhB2yDA,MgB3yDA,YhB6yDF,UQvMA,iBAAA,EQtiDQ,SAAA,EAAA,EAAA,KAhEN,KAAA,EAAA,EAAA,KhBizDA,MgBjzDA,ahBmzDF,UQzMA,iBAAA,EQ1iDQ,SAAA,EAAA,EAAA,KAhEN,KAAA,EAAA,EAAA,KhBuzDA,MgBvzDA,IhByzDF,UQ3MA,iBAAA,EQ9iDQ,SAAA,EAAA,EAAA,KAhEN,KAAA,EAAA,EAAA,KhB6zDA,MgB7zDA,ahB+zDF,UQ7MA,iBAAA,EQljDQ,SAAA,EAAA,EAAA,KAhEN,KAAA,EAAA,EAAA,KhBm0DA,MgBn0DA,ahBq0DF,UQ/MA,iBAAA,EQtjDQ,SAAA,EAAA,EAAA,KAhEN,KAAA,EAAA,EAAA,KhBy0DA,MgBz0DA,IhB20DF,UQjNA,iBAAA,EQ1jDQ,SAAA,EAAA,EAAA,KAhEN,KAAA,EAAA,EAAA,KhB+0DA,MgB/0DA,ahBi1DF,UQnNA,iBAAA,EQ9jDQ,SAAA,EAAA,EAAA,KAhEN,KAAA,EAAA,EAAA,KhBq1DA,MgBr1DA,ahBu1DF,UQrNA,iBAAA,EQlkDQ,SAAA,EAAA,EAAA,KAhEN,KAAA,EAAA,EAAA,KhB21DA,MgB31DA,IhB61DF,WQvNA,iBAAA,EQtkDQ,SAAA,EAAA,EAAA,KAhEN,KAAA,EAAA,EAAA,KhBi2DA,MgBj2DA,ahBm2DF,WQzNA,iBAAA,EQ1kDQ,SAAA,EAAA,EAAA,KAhEN,KAAA,EAAA,EAAA,KhBu2DA,MgBv2DA,ahBy2DF,WQ3NA,iBAAA,EQ9kDQ,SAAA,EAAA,EAAA,KAhEN,KAAA,EAAA,EAAA,KhB62DA,MgB72DA,KhB+2DF,aQ7NA,aAAA,ERgOA,aQ7NA,aAAA,YRgOA,aQ7NA,aAAA,aRgOA,aQ7NA,aAAA,IRgOA,aQ7NA,aAAA,aRgOA,aQ7NA,aAAA,aRgOA,aQ7NA,aAAA,IRgOA,aQ7NA,aAAA,aRgOA,aQ7NA,aAAA,aRgOA,aQ7NA,aAAA,IRgOA,cQ7NA,aAAA,aRgOA,cQ7NA,aAAA,aRgOA,QACF,SgBj0DQ,cAAA,EhBo0DN,QACF,SgBh0DQ,cAAA,EhBm0DN,QACF,SgBz0DQ,cAAA,UhB40DN,QACF,SgBx0DQ,cAAA,UhB20DN,QACF,SgBj1DQ,cAAA,ShBo1DN,QACF,SgBh1DQ,cAAA,ShBm1DN,QACF,SgBz1DQ,cAAA,QhB41DN,QACF,SgBx1DQ,cAAA,QhB21DN,QACF,SgBj2DQ,cAAA,ShBo2DN,QACF,SgBh2DQ,cAAA,ShBm2DN,QACF,SgBz2DQ,cAAA,QhB42DN,QACF,SgBx2DQ,cAAA,ShB42DR,0BQ7NA,SMvsDI,iBAAA,EEUE,SAAA,EAAA,EAAA,GACE,KAAA,EAAA,EAAA,GhB+5DN,qBQ/NA,iBAAA,EQ7rDI,SAAA,EAAA,EAAA,KApCJ,KAAA,EAAA,EAAA,KhBo8DE,MgBp8DF,KhBs8DA,kBQjOA,iBAAA,EQttDA,SAAA,EAAA,EAAA,KACE,KAAA,EAAA,EAAA,KhB07DA,MgB17DA,KhB47DF,kBQnOA,iBAAA,EQ1tDA,SAAA,EAAA,EAAA,KACE,KAAA,EAAA,EAAA,KhBg8DA,MgBh8DA,IhBk8DF,kBQrOA,iBAAA,EQ9tDA,SAAA,EAAA,EAAA,KACE,KAAA,EAAA,EAAA,KhBs8DA,MgBt8DA,ehBw8DF,kBQvOA,iBAAA,EQluDA,SAAA,EAAA,EAAA,KACE,KAAA,EAAA,EAAA,KhB48DA,MgB58DA,IhB88DF,kBQzOA,iBAAA,EQtuDA,SAAA,EAAA,EAAA,KACE,KAAA,EAAA,EAAA,KhBk9DA,MgBl9DA,IhBo9DF,kBQ3OA,iBAAA,EQ1uDA,SAAA,EAAA,EAAA,KACE,KAAA,EAAA,EAAA,KhBw9DA,MgBx9DA,ehB09DF,cQ7OA,iBAAA,EQ7sDI,SAAA,EAAA,EAAA,KAhDJ,KAAA,EAAA,EAAA,KhB8+DE,MgB9+DF,KhBg/DA,WQ/OA,iBAAA,EQ3sDQ,SAAA,EAAA,EAAA,KAhEN,KAAA,EAAA,EAAA,KhB8/DA,MgB9/DA,YhBggEF,WQjPA,iBAAA,EQ/sDQ,SAAA,EAAA,EAAA,KAhEN,KAAA,EAAA,EAAA,KhBogEA,MgBpgEA,ahBsgEF,WQnPA,iBAAA,EQntDQ,SAAA,EAAA,EAAA,KAhEN,KAAA,EAAA,EAAA,KhB0gEA,MgB1gEA,IhB4gEF,WQrPA,iBAAA,EQvtDQ,SAAA,EAAA,EAAA,KAhEN,KAAA,EAAA,EAAA,KhBghEA,MgBhhEA,ahBkhEF,WQvPA,iBAAA,EQ3tDQ,SAAA,EAAA,EAAA,KAhEN,KAAA,EAAA,EAAA,KhBshEA,MgBthEA,ahBwhEF,WQzPA,iBAAA,EQ/tDQ,SAAA,EAAA,EAAA,KAhEN,KAAA,EAAA,EAAA,KhB4hEA,MgB5hEA,IhB8hEF,WQ3PA,iBAAA,EQnuDQ,SAAA,EAAA,EAAA,KAhEN,KAAA,EAAA,EAAA,KhBkiEA,MgBliEA,ahBoiEF,WQ7PA,iBAAA,EQvuDQ,SAAA,EAAA,EAAA,KAhEN,KAAA,EAAA,EAAA,KhBwiEA,MgBxiEA,ahB0iEF,WQ/PA,iBAAA,EQ3uDQ,SAAA,EAAA,EAAA,KAhEN,KAAA,EAAA,EAAA,KhB8iEA,MgB9iEA,IhBgjEF,YQjQA,iBAAA,EQ/uDQ,SAAA,EAAA,EAAA,KAhEN,KAAA,EAAA,EAAA,KhBojEA,MgBpjEA,ahBsjEF,YQnQA,iBAAA,EQnvDQ,SAAA,EAAA,EAAA,KAhEN,KAAA,EAAA,EAAA,KhB0jEA,MgB1jEA,ahB4jEF,YQrQA,iBAAA,EQvvDQ,SAAA,EAAA,EAAA,KAhEN,KAAA,EAAA,EAAA,KhBgkEA,MgBhkEA,KhBkkEF,cQvQA,aAAA,ER0QA,cQvQA,aAAA,YR0QA,cQvQA,aAAA,aR0QA,cQvQA,aAAA,IR0QA,cQvQA,aAAA,aR0QA,cQvQA,aAAA,aR0QA,cQvQA,aAAA,IR0QA,cQvQA,aAAA,aR0QA,cQvQA,aAAA,aR0QA,cQvQA,aAAA,IR0QA,eQvQA,aAAA,aR0QA,eQvQA,aAAA,aR0QA,SACF,UgBphEQ,cAAA,EhBuhEN,SACF,UgBnhEQ,cAAA,EhBshEN,SACF,UgB5hEQ,cAAA,UhB+hEN,SACF,UgB3hEQ,cAAA,UhB8hEN,SACF,UgBpiEQ,cAAA,ShBuiEN,SACF,UgBniEQ,cAAA,ShBsiEN,SACF,UgB5iEQ,cAAA,QhB+iEN,SACF,UgB3iEQ,cAAA,QhB8iEN,SACF,UgBpjEQ,cAAA,ShBujEN,SACF,UgBnjEQ,cAAA,ShBsjEN,SACF,UgB5jEQ,cAAA,QhB+jEN,SACF,UgB3jEQ,cAAA,ShB+jER,OQvQA,sBAAA,QS36DA,mBAAA,QAEE,uBAAA,QACA,oBAAA,QACA,iBAAA,qBACA,cAAA,YAEA,wBAAA,uBACA,qBAAA,YACA,yBAAA,qBACA,sBAAA,mCACA,wBAAA,qBACA,qBAAA,mCACA,uBAAA,qBACA,oBAAA,mCACA,MAAA,KACA,cAAA,QAEA,eAAA,IACA,aAAA,6BjBmrEF,yBQvQA,QAAA,OAAA,OSn6DE,MAAA,6EACE,iBAAA,mBAEA,oBAAA,uBACA,mBAAA,MAAA,EAAA,EAAA,EAAA,OAAA,2EACA,WAAA,MAAA,EAAA,EAAA,EAAA,OAAA,2EjB6qEJ,aQxQA,eAAA,QR2QA,aQxQA,eAAA,OAGA,qBR0QE,WAAY,iCAAiC,MAAM,aQtQrD,aR0QE,aAAc,IQtQhB,4BR0QE,QAAS,MAAO,MQtQlB,gCR0QE,aAAc,uBAAuB,EAEvC,kCQxQA,aAAA,EAAA,uBAGA,oCR0QE,oBAAqB,EAEvB,qCQxQA,iBAAA,EAGA,2CR0QE,sBAAuB,8BiBpoEvB,mBAAA,2BT+3DF,yDR0QE,sBAAuB,8BiBjoEvB,mBAAA,2BT43DF,cR0QE,uBAAwB,6BiB5nE1B,oBAAA,0BTu3DA,8BR0QE,uBAAwB,4BiBvnExB,oBAAA,yBTk3DF,eR0QE,iBAAkB,QkBtwElB,cAAA,QAOE,wBAAA,QACA,sBAAA,QACA,yBAAA,KACA,qBAAA,QACA,wBAAA,KACA,oBAAA,QACA,uBAAA,KACA,MAAA,sBACA,aAAA,6BV2/DJ,iBR0QE,iBAAkB,QkBpxElB,cAAA,QAOE,wBAAA,QACA,sBAAA,QACA,yBAAA,KACA,qBAAA,QACA,wBAAA,KACA,oBAAA,QACA,uBAAA,KACA,MAAA,sBACA,aAAA,6BVygEJ,eR0QE,iBAAkB,QkBlyElB,cAAA,QAOE,wBAAA,QACA,sBAAA,QACA,yBAAA,KACA,qBAAA,QACA,wBAAA,KACA,oBAAA,QACA,uBAAA,KACA,MAAA,sBACA,aAAA,6BVuhEJ,YR0QE,iBAAkB,QkBhzElB,cAAA,QAOE,wBAAA,QACA,sBAAA,QACA,yBAAA,KACA,qBAAA,QACA,wBAAA,KACA,oBAAA,QACA,uBAAA,KACA,MAAA,sBACA,aAAA,6BVqiEJ,eR0QE,iBAAkB,QkB9zElB,cAAA,QAOE,wBAAA,QACA,sBAAA,QACA,yBAAA,KACA,qBAAA,QACA,wBAAA,KACA,oBAAA,QACA,uBAAA,KACA,MAAA,sBACA,aAAA,6BVmjEJ,cR0QE,iBAAkB,QkB50ElB,cAAA,QAOE,wBAAA,QACA,sBAAA,QACA,yBAAA,KACA,qBAAA,QACA,wBAAA,KACA,oBAAA,QACA,uBAAA,KACA,MAAA,sBACA,aAAA,6BVikEJ,cR0QE,iBAAkB,QkB11ElB,cAAA,QAOE,wBAAA,QACA,sBAAA,QACA,yBAAA,KACA,qBAAA,QACA,wBAAA,KACA,oBAAA,QACA,uBAAA,KACA,MAAA,sBACA,aAAA,6BV+kEJ,YR0QE,iBAAkB,QkBx2ElB,cAAA,QAOE,wBAAA,QACA,sBAAA,QACA,yBAAA,KACA,qBAAA,QACA,wBAAA,KACA,oBAAA,QACA,uBAAA,KACA,MAAA,sBACA,aAAA,6BV6lEJ,aR0QE,iBAAkB,QkBt3ElB,cAAA,QAOE,wBAAA,QACA,sBAAA,QACA,yBAAA,KACA,qBAAA,QACA,wBAAA,KACA,oBAAA,QACA,uBAAA,KACA,MAAA,sBACA,aAAA,6BV2mEJ,YR0QE,iBAAkB,KkBp4ElB,cAAA,QAOE,wBAAA,QACA,sBAAA,MACA,yBAAA,QACA,qBAAA,MACA,wBAAA,QACA,oBAAA,MACA,uBAAA,QACA,MAAA,sBACA,aAAA,6BVynEJ,kBR0QE,WAAY,KiB/uEV,2BAAA,MT0+DJ,4BR0QE,qBc70EE,WAAA,KGyFA,2BAAA,OjByvEJ,4BQxQA,qBM1kEI,WAAA,KGyFA,2BAAA,OjB+vEJ,4BQxQA,qBMhlEI,WAAA,KGyFA,2BAAA,OjBqwEJ,6BQxQA,qBMtlEI,WAAA,KGyFA,2BAAA,OjB2wEJ,6BQxQA,sBM5lEI,WAAA,KGyFA,2BAAA,OjBixEJ,YQxQA,cAAA,MAGA,gBR0QE,YAAa,sCmB76Ef,eAAA,sCACE,cAAA,EACA,UAAA,QACA,YAAA,IXwqEF,mBR0QE,YAAa,qCmB16Ef,eAAA,qCACE,UAAA,WXqqEF,mBR0QE,YAAa,sCmB16Ef,eAAA,sCACE,UAAA,OXqqEF,WR0QE,WAAY,OoB38Ed,UAAA,OACE,MAAA,0BZssEF,cR0QE,QAAS,MqBj9EX,MAAA,KACE,QAAA,OAAA,MACA,UAAA,QACA,YAAA,IjBwRI,YAAA,IiBrRJ,MAAA,qBACA,iBVgqB4B,uBU/pB5B,gBAAA,YACA,OAAA,uBAAA,MAAA,uBACA,mBAAA,KACA,gBAAA,KACA,WAAA,KrBk9EA,cqBl9EA,OrBm9EA,mBqBn9EA,aAAA,KAAA,WAAA,CAAA,mBAAA,KAAA,YdGE,WAAA,aAAA,KAAA,WAAA,CAAA,mBAAA,KAAA,YeHE,WAAA,aAAA,KAAA,WAAA,CAAA,WAAA,KAAA,YAAA,WAAA,aAAA,KAAA,WAAA,CAAA,WAAA,KAAA,WAAA,CAAA,mBDMJ,KAAA,YrBk9EF,uCQ7QA,ccvsEM,mBAAA,KDhBN,WAAA,MrB0+EA,yBQ9QA,SAAA,ORiRA,wDQ9QA,OAAA,QRiRA,oBQ9QA,MAAA,qBarsEE,iBAAA,uBACE,aAAA,mCACA,QAAA,EACA,mBAAA,KACA,WAAA,KrBu9EJ,2CQ/QA,UAAA,Ka/rEE,OAAA,MAME,OAAA,ErB68EJ,qCQ/QA,QAAA,Ma9qEE,QAAA,ErBi8EF,yCQ/QA,MAAA,0Ba5qEE,QAAA,ErB+7EF,gCQ/QA,MAAA,0BahrEE,QAAA,ErBm8EF,oCQnRA,MAAA,0BahrEE,QAAA,ErBu8EF,qCQvRA,MAAA,0BahrEE,QAAA,ErB28EF,2BQ3RA,MAAA,0BahrEE,QAAA,ErB+8EF,uBQ/RA,iBAAA,sBarqEE,QAAA,ErBw8EF,0CQ/RA,QAAA,OAAA,MahqEE,OAAA,QAAA,OACE,mBAAA,MACA,kBAAA,MACA,MAAA,qBrBk8EF,iBqBl8EE,sBACA,eAAA,KE9FF,aAAA,QFgGE,aAAA,MACA,aAAA,EACA,wBAAA,uBACA,cAAA,EACA,mBAAA,MAAA,KAAA,WAAA,CAAA,iBVuwB0B,KAAA,WAAA,CAAA,aAAA,KAAA,WAAA,CAAA,mBAAA,KAAA,YUtwB1B,WAAA,MAAA,KAAA,WAAA,CAAA,iBAAA,KAAA,WAAA,CAAA,aAAA,KAAA,WAAA,CAAA,mBAAA,KAAA,YCzFE,WAAA,MAAA,KAAA,WAAA,CAAA,iBAAA,KAAA,WAAA,CAAA,aAAA,KAAA,WAAA,CAAA,WAAA,KAAA,YAAA,WAAA,MAAA,KAAA,WAAA,CAAA,iBAAA,KAAA,WAAA,CAAA,aAAA,KAAA,WAAA,CAAA,WAAA,KAAA,WAAA,CAAA,mBD0FF,KAAA,YrBq8EJ,oCQnSA,QAAA,OAAA,Ma9qEE,OAAA,QAAA,OACE,mBAAA,MACA,kBAAA,MACA,MAAA,qBrBo9EF,iBqBp9EE,sBACA,eAAA,KE9FF,aAAA,QFgGE,aAAA,MACA,aAAA,EACA,wBAAA,uBACA,cAAA,EACA,mBAAA,MAAA,KAAA,WAAA,CAAA,iBVuwB0B,KAAA,WAAA,CAAA,aAAA,KAAA,WAAA,CAAA,mBAAA,KAAA,YUtwB1B,WAAA,MAAA,KAAA,WAAA,CAAA,iBAAA,KAAA,WAAA,CAAA,aAAA,KAAA,WAAA,CAAA,mBAAA,KAAA,YCzFE,WAAA,MAAA,KAAA,WAAA,CAAA,iBAAA,KAAA,WAAA,CAAA,aAAA,KAAA,WAAA,CAAA,WAAA,KAAA,YAAA,WAAA,MAAA,KAAA,WAAA,CAAA,iBAAA,KAAA,WAAA,CAAA,aAAA,KAAA,WAAA,CAAA,WAAA,KAAA,WAAA,CAAA,mBD0FF,KAAA,YrBu9EJ,uCQrTA,0CcxvEM,mBAAA,KD0EJ,WAAA,KrBw+EA,oCQtTA,mBAAA,KalrEA,WAAA,MrB6+EF,+EQ1TA,iBAAA,uBR6TA,yEQ1TA,iBAAA,uBAAA,wBR+TE,QAAS,MqB59EX,MAAA,KACE,QAAA,OAAA,EACA,cAAA,EACA,YAAA,IACA,MAAA,qBACA,iBV+iB4B,YU9iB5B,OAAA,MAAA,YACA,aAAA,uBAAA,ErB+9EF,8BQ7TA,QAAA,Ea7pEI,wCrB69EJ,wCQ7TA,aAAA,Ea7pEE,cAAA,EbiqEF,iBR+TE,WAAY,wDqBl9Ed,QAAA,OAAA,MACE,UAAA,OACA,cAAA,OrBq9EF,6CQ7TA,QAAA,OAAA,MappEE,OAAA,QAAA,OACE,mBAAA,MACA,kBAAA,MrBq9EJ,uCQ9TA,QAAA,OAAA,MazpEE,OAAA,QAAA,OACE,mBAAA,MACA,kBAAA,MbupEJ,iBRsUE,WAAY,sDqBx9Ed,QAAA,MAAA,KACE,UAAA,WACA,cAAA,OrB29EF,6CQpUA,QAAA,MAAA,KanpEE,OAAA,OAAA,MACE,mBAAA,KACA,kBAAA,KrB29EJ,uCQrUA,QAAA,MAAA,KaxpEE,OAAA,OAAA,MACE,mBAAA,KACA,kBAAA,KbspEJ,sBR6UE,WAAY,uDAEd,yBQ3UA,WAAA,wDR8UA,yBQ3UA,WAAA,sDAGA,oBR6UE,MAAO,KqBt9ET,OAAA,uDACE,QAAA,OrBy9EF,mDQ3UA,OAAA,QR8UA,uCQ3UA,OAAA,YazoEE,cAAA,OrBw9EF,0CQ3UA,OAAA,YaxoEE,cAAA,OrBu9EF,oCQ3UA,OAAA,wDR8UA,oCQ3UA,OAAA,sDAGA,aR6UE,wBAAyB,gOwBxqF3B,QAAA,MACE,MAAA,KAEA,QAAA,OAAA,MAAA,OAAA,OACA,UAAA,QACA,YAAA,IpBqRI,YAAA,IoBlRJ,MAAA,qBACA,iBb6pB4B,uBa5pB5B,iBAAA,4Bb+7BsC,CAAA,mCa97BtC,kBAAA,UACA,oBAAA,KAAA,MAAA,OACA,gBAAA,KAAA,KACA,OAAA,uBAAA,MAAA,uBACA,cAAA,OACA,mBAAA,aAAA,KAAA,WAAA,CAAA,mBAAA,KAAA,YjBFE,WAAA,aAAA,KAAA,WAAA,CAAA,mBAAA,KAAA,YeHE,WAAA,aAAA,KAAA,WAAA,CAAA,WAAA,KAAA,YAAA,WAAA,aAAA,KAAA,WAAA,CAAA,WAAA,KAAA,WAAA,CAAA,mBEQJ,KAAA,YFRI,mBAAA,KAAA,gBAAA,KESJ,WAAA,KxB2qFF,uCQhVA,ach2EM,mBAAA,KEfN,WAAA,MxBqsFA,mBQjVA,aAAA,mCgB91EE,QAAA,EACE,mBAAA,KACA,WAAA,KxBmrFJ,uBwB9qFM,mChB41EN,aAAA,MgBx1EE,iBAAA,KxB8qFF,sBQlVA,iBAAA,sBRqVA,4BQlVA,MAAA,YgBl1EE,YAAA,EAAA,EAAA,EAAA,qBhBs1EF,gBRoVE,YAAa,OwBpqFf,eAAA,OACE,cAAA,MACA,UAAA,OACA,cAAA,OhBq1EF,gBRoVE,YAAa,MwBpqFf,eAAA,MACE,cAAA,KACA,UAAA,WACA,cAAA,OhBq1EF,kCRoVE,wBAAyB,gOQhV3B,YRoVE,QAAS,MyB7uFX,WAAA,UACE,cAAA,QACA,cAAA,EzBgvFF,8BQlVA,MAAA,MiB15EE,aAAA,SjB85EF,oBRoVE,aAAc,QyB5uFhB,cAAA,EACE,WAAA,KzB+uFF,sCQlVA,MAAA,KiBz5EE,YAAA,SACE,aAAA,EjB65EJ,kBRoVE,mBAAoB,uByB3uFtB,MAAA,QACE,OAAA,QAEA,WAAA,QACA,edg9BwC,Ic/8BxC,iBAAA,wBACA,iBAAA,8BACA,kBAAA,UACA,oBAAA,OACA,gBAAA,QACA,OAAA,uBAAA,MAAA,mCACA,mBAAA,KACA,gBAAA,KACA,WAAA,KzB4uFA,2ByB5uFA,MAAA,mBAAA,MzB+uFF,iCQrVA,cAAA,MRwVA,8BQrVA,cAAA,IRwVA,yBQrVA,eAAA,gBiBn5EE,OAAA,gBzB4uFF,wBQtVA,aAAA,mCiBl5EE,QAAA,EACE,mBAAA,KACA,WAAA,KzB4uFJ,0BQvVA,iBAAA,QiBj5EE,aAAA,QzB4uFF,yCQvVA,yBAAA,8NR0VA,sCQvVA,yBAAA,sIR0VA,+CQvVA,iBAAA,QiBt4EE,aAAA,QACE,yBd/CS,wNXgxFb,2BQvVA,eAAA,KiBh4EE,eAAA,KACE,OAAA,KACA,QAAA,Gd06BuC,6CXizD3C,8CQxVA,OAAA,QiB33EI,QAAA,GjB+3EJ,aR0VE,cAAe,MAEjB,+BQxVA,oBAAA,uJiBh3EE,MAAA,IACE,aAAA,OAEA,iBdq5B8B,yBcp5B9B,oBAAA,MAAA,OACA,cAAA,IACA,mBAAA,oBAAA,KAAA,YlBhHA,WAAA,oBAAA,KAAA,YP4zFJ,uCQzVA,+Bcl+EM,mBAAA,KGyGJ,WAAA,MzBwtFF,qCQ1VA,oBAAA,sKR6VA,uCQ1VA,oBAAA,KAAA,OiBn3EI,oBAAA,sIzBitFJ,gCQ1VA,aAAA,MiB52EE,cAAA,EzB0sFF,kDQ1VA,YAAA,OiB52EI,aAAA,EjBg3EJ,mBR4VE,QAAS,ayBrsFX,YAAA,KjB82EA,WR4VE,SAAU,SyBrsFZ,KAAA,cACE,eAAA,KAEA,yBzBssFF,0BQ1VA,eAAA,KiBx2EI,eAAA,KACE,OAAA,KACA,QAAA,IjB22EN,8ER6VE,oBAAqB,6JQzVvB,YR6VE,MAAO,K0Br3FT,OAAA,OACE,QAAA,EACA,iBAAA,YACA,mBAAA,KACA,gBAAA,KACA,WAAA,K1Bw3FF,kBQ7VA,QAAA,ERgWA,wCQ7VA,mBAAA,EAAA,EAAA,EAAA,IAAA,OAAA,CAAA,KkBvhFI,WAAA,EAAA,EAAA,EAAA,IAAA,OAAA,CAAA,K1Bw3FJ,oCQ9VA,WAAA,EAAA,EAAA,EAAA,IAAA,OAAA,CAAA,KRiWA,8BQ9VA,OAAA,ERiWA,kCQ9VA,MAAA,KkBxhFE,OAAA,KACE,WfqkCuC,QepkCvC,iBfokCuC,QenkCvC,OAAA,EHzBF,cAAA,KG2BE,mBfokCuC,iBAAA,KAAA,WAAA,CAAA,aAAA,KAAA,WAAA,CAAA,mBAAA,KAAA,YJhlCvC,WAAA,iBAAA,KAAA,WAAA,CAAA,aAAA,KAAA,WAAA,CAAA,mBAAA,KAAA,YeHE,WAAA,iBAAA,KAAA,WAAA,CAAA,aAAA,KAAA,WAAA,CAAA,WAAA,KAAA,YAAA,WAAA,iBAAA,KAAA,WAAA,CAAA,aAAA,KAAA,WAAA,CAAA,WAAA,KAAA,WAAA,CAAA,mBIkBF,KAAA,YJlBE,mBAAA,KAAA,WAAA,KtB84FN,uCQlWA,kCcxiFM,mBAAA,KIMJ,WAAA,M1B04FF,yCQnWA,iBAAA,QRsWA,2CQnWA,MAAA,KkB1hFE,OAAA,MACE,MAAA,YACA,OAAA,QACA,iBAAA,kBACA,aAAA,YACA,cAAA,K1Bi4FJ,8BQnWA,MAAA,KkBxhFE,OAAA,KACE,iBf0iCuC,QeziCvC,OAAA,EHnDF,cAAA,KGqDE,gBf0iCuC,iBAAA,KAAA,WAAA,CAAA,aAAA,KAAA,WAAA,CAAA,WAAA,KAAA,YJhlCvC,WAAA,iBAAA,KAAA,WAAA,CAAA,aAAA,KAAA,WAAA,CAAA,WAAA,KAAA,YeHE,gBAAA,KAAA,WAAA,KtB26FN,uCQrWA,8BclkFM,gBAAA,KIiCJ,WAAA,M1B44FF,qCQtWA,iBAAA,QRyWA,8BQtWA,MAAA,KkB1hFE,OAAA,MACE,MAAA,YACA,OAAA,QACA,iBAAA,kBACA,aAAA,YACA,cAAA,K1Bo4FJ,qBQtWA,eAAA,KRyWA,2CQtWA,iBAAA,0BRyWA,uCQtWA,iBAAA,0BAGA,eRwWE,SAAU,SAEZ,6BQtWA,uCmBjnFE,4B3B09FA,OAAQ,gDACR,WAAY,gD2Bx9FV,YAAA,K3B29FJ,qBQtWA,SAAA,SmBhnFE,IAAA,EACE,MAAA,EACA,QAAA,EACA,OAAA,KACA,QAAA,KAAA,MACA,SAAA,OACA,WAAA,MACA,cAAA,SACA,YAAA,OACA,eAAA,KACA,OAAA,uBAAA,MAAA,YACA,yBAAA,KAAA,EACA,iBAAA,KAAA,EACA,mBAAA,QAAA,IAAA,WAAA,CAAA,kBAAA,IAAA,Y3By9FF,W2Bz9FE,QAAA,IAAA,WAAA,CAAA,kBAAA,IAAA,YLRE,WAAA,QAAA,IAAA,WAAA,CAAA,UAAA,IAAA,YAAA,WAAA,QAAA,IAAA,WAAA,CAAA,UAAA,IAAA,WAAA,CAAA,kBKSF,IAAA,Y3B49FJ,uCQ1WA,qBcvnFM,mBAAA,KKTJ,WAAA,M3Bg/FF,6BQ3WA,uCmBpnFE,QAAA,KAAA,MAEE,kE3Bi+FJ,wDQ3WA,MAAA,YmBnnFM,yD3Bi+FN,+CQ1WA,MAAA,YmBvnFM,6D3Bo+FN,mDQ7WA,MAAA,YmBvnFM,8D3Bu+FN,oDQhXA,MAAA,YAAA,oDRmXA,0C2B3+FI,MAAA,YACE,oE3B8+FN,0DQvXA,YAAA,SmBpnFI,eAAA,QhBqlCoC,mEX05DxC,yDQrXA,YAAA,SmB1nFI,eAAA,QnB0nFJ,6CmB1nFI,+D3Bm/FJ,mCW95DwC,qDXi6DtC,YAAa,SACb,eAAgB,QQ7XlB,wDR+XA,8C2Bn/FI,YAAA,S3Bs/FF,eAAgB,QAElB,4BQ/XA,YAAA,SmBnnFE,eAAA,Q3Bs/FF,gEQ/XA,MAAA,mCmB9mFI,UAAA,WAAA,mBAAA,oB3Bi/FJ,+DQ5XA,MAAA,mCmBrnFI,UAAA,WAAA,mBAAA,oBAAA,6C3Bq/FJ,yCQhYA,2DRmYA,kCACE,MAAO,mCACP,kBAAmB,WAAY,mBAAoB,oB2Bz/F/C,UAAA,WAAA,mBAAA,oB3B4/FN,uEQxYA,SAAA,SmBjnFM,MAAA,KAAA,OACE,QAAA,GACA,OAAA,QACA,QAAA,GACA,iBhByjCgC,uBgBxjChC,cAAA,O3B6/FR,sEQrYA,SAAA,SmB7nFM,MAAA,KAAA,OACE,QAAA,GACA,OAAA,QACA,QAAA,GACA,iBhByjCgC,uBgBxjChC,cAAA,OALF,oD3B2gGN,gDQ9YA,kERiZA,yCACE,SAAU,SACV,MAAO,KAAK,O2B/gGN,QAAA,GACA,OAAA,QACA,QAAA,GACA,iBhByjCgC,uBgBxjChC,cAAA,O3BkhGR,oDQ1ZA,MAAA,mCmBhnFI,kBAAA,WAAA,mBAAA,oBACE,UAAA,WAAA,mBAAA,oB3B8gGN,6CQ3ZA,aAAA,uBAAA,ER8ZA,+BQ3ZA,MAAA,QR8ZA,sCQ3ZA,iBAAA,sBAGA,aR6ZE,SAAU,S4BhmGZ,QAAA,YACE,QAAA,YACA,QAAA,KAAA,cAAA,KAAA,UAAA,KACA,kBAAA,QAAA,eAAA,QACA,YAAA,Q5BqmGA,M4BrmGA,K5BumGF,2B4BpmGE,4BpBosFF,0BRmaE,SAAU,SACV,iBAAkB,E4BrmGhB,SAAA,EAAA,EAAA,KACA,KAAA,EAAA,EAAA,K5BumGF,M4BvmGE,G5BwmGF,U4BxmGE,E5B0mGJ,iC4BpmGE,yCpBksFF,gCRqaE,QAAS,EAEX,kBQlaA,SAAA,SoB9rFE,QAAA,E5BomGF,wBQlaA,QAAA,EAGA,kBRoaE,QAAS,Y4BzlGX,QAAA,YACE,QAAA,KAAA,kBAAA,OAAA,eAAA,OACA,YAAA,O5B6lGA,Q4B7lGA,OAAA,M5B8lGA,U4B9lGA,QACA,YAAA,IxB8OI,YAAA,IwB5OJ,MAAA,qBACA,WAAA,OACA,YAAA,OACA,iBAAA,sBACA,OAAA,uBAAA,MAAA,uBACA,cAAA,O5BomGF,qBQ1aA,8BRwaA,6B4BvlGA,kC5B0lGE,QAAS,MAAO,KAChB,UAAW,W4BvlGX,cAAA,O5B8lGF,qBQ1aA,8BRwaA,6B4BvlGA,kC5B0lGE,QAAS,OAAQ,MACjB,UAAW,O4BvlGX,cAAA,OpBorFF,6BRwaA,6B4BvlGA,aAAA,O5B4lGA,uE4B7kGI,gF5B+kGJ,+EQ1aA,kHR2aE,uBAAwB,EACxB,0BAA2B,EQpa7B,iEoBpqFI,6E5B6kGJ,4EAHA,+GAIE,uBAAwB,EACxB,0BAA2B,EAE7B,0IQtaA,aAAA,kCoB9pFE,wBAAA,EACE,2BAAA,E5BwkGJ,4DQtaA,2DoB9pFE,wBAAA,E5BukGA,2BAA4B,EQpa9B,gBRwaE,QAAS,K6BhrGT,MAAA,KACE,WAAA,OACA,UAAA,OACA,MAAA,2BrB6wFJ,eRwaE,SAAU,S6B/qGV,IAAA,KACE,QAAA,EACA,QAAA,KACA,UAAA,KACA,QAAA,SAAA,QACA,WAAA,MACA,UAAA,SACA,MAAA,KzBqPE,iBAAA,kByBlPF,clB2mCqB,wBkBrmCrB,0B7B+qGJ,yBQ1aA,sCRwaA,qCAGE,QAAS,MQpaX,uBAAA,mCRwaE,aAAc,kC6BjuGZ,aAAA,oBAqDE,iBAAA,0OAGE,kBAAA,UACA,oBAAA,KAAA,uBAAA,OACA,gBAAA,qBAAA,qBAEA,6B7B4qGR,yCQtaA,aAAA,kCqBnwFM,mBAAA,EAAA,EAAA,EAAA,OAAA,gCACE,WAAA,EAAA,EAAA,EAAA,OAAA,gCrBswFR,2CAAA,+BRyaE,aAAc,oB6B/uGZ,oBAAA,IAAA,uBAAA,KAAA,uBrB20FJ,sBAAA,kCRyaE,aAAc,kCWlmES,kDAAA,gDXomEzB,8DWpmEyB,4DH6rDzB,yBAAA,0OqB1vFQ,aAAA,QAEE,oBAAA,KAAA,MAAA,MAAA,CAAA,OAAA,KAAA,OACA,gBAAA,KlBg+B8B,IAAA,CAAA,qBAAA,qBkB99B9B,4B7BkqGV,wCQvaA,aAAA,kCqBvvFM,mBAAA,EAAA,EAAA,EAAA,OAAA,gCACE,WAAA,EAAA,EAAA,EAAA,OAAA,gCrB0vFR,6BAAA,yCR0aE,MAAO,iCQtaT,2BAAA,uCR0aE,aAAc,kC6BxpGV,mC7B0pGN,+CQxaA,iBAAA,2BG/sDyB,iCX0nEzB,6CQxaA,mBAAA,EAAA,EAAA,EAAA,OAAA,gCqB/uFM,WAAA,EAAA,EAAA,EAAA,OAAA,gCACE,6C7B0pGR,yDQzaA,MAAA,2BAGA,qDR2aE,aAAc,KQvahB,gDR8aA,wD6B5xGI,+CrB82FJ,4DR6aA,oEAFA,2DAIE,QAAS,EQvaX,kBR2aE,QAAS,K6B7wGT,MAAA,KACE,WAAA,OACA,UAAA,OACA,MAAA,6BrBu2FJ,iBR2aE,SAAU,S6B5wGV,IAAA,KACE,QAAA,EACA,QAAA,KACA,UAAA,KACA,QAAA,SAAA,QACA,WAAA,MACA,UAAA,SACA,MAAA,KzBqPE,iBAAA,iByBlPF,clB2mCqB,wBkBrmCrB,8B7B4wGJ,6BQ7aA,0CR2aA,yCAGE,QAAS,MQvaX,yBAAA,qCR2aE,aAAc,oC6B9zGZ,aAAA,oBAqDE,iBAAA,2TAGE,kBAAA,UACA,oBAAA,KAAA,uBAAA,OACA,gBAAA,qBAAA,qBAEA,+B7BywGR,2CQzaA,aAAA,oCqB71FM,mBAAA,EAAA,EAAA,EAAA,OAAA,+BACE,WAAA,EAAA,EAAA,EAAA,OAAA,+BrBg2FR,6CAAA,iCR4aE,aAAc,oB6B50GZ,oBAAA,IAAA,uBAAA,KAAA,uBrBq6FJ,wBAAA,oCR4aE,aAAc,oCW/rES,oDAAA,kDXisEzB,gEWjsEyB,8DHuxDzB,yBAAA,2TqBp1FQ,aAAA,QAEE,oBAAA,KAAA,MAAA,MAAA,CAAA,OAAA,KAAA,OACA,gBAAA,KlBg+B8B,IAAA,CAAA,qBAAA,qBkB99B9B,8B7B+vGV,0CQ1aA,aAAA,oCqBj1FM,mBAAA,EAAA,EAAA,EAAA,OAAA,+BACE,WAAA,EAAA,EAAA,EAAA,OAAA,+BrBo1FR,+BAAA,2CR6aE,MAAO,iCQzaT,6BAAA,yCR6aE,aAAc,oC6BrvGV,qC7BuvGN,iDQ3aA,iBAAA,6BGzyDyB,mCXutEzB,+CQ3aA,mBAAA,EAAA,EAAA,EAAA,OAAA,+BqBz0FM,WAAA,EAAA,EAAA,EAAA,OAAA,+BACE,+C7BuvGR,2DQ5aA,MAAA,6BAGA,uDR8aE,aAAc,KQ1ahB,kDRibA,0D6Bz3GI,iDrBw8FJ,8DRgbA,sEAFA,6DAIE,QAAS,EQ1aX,KR8aE,mBAAoB,O8Bh4GtB,mBAAA,QAGE,mBAAA,SACA,qBAAA,I1BuRI,qBAAA,I0BrRJ,eAAA,qBACA,YAAA,YACA,sBAAA,uBACA,sBAAA,YACA,uBAAA,wBACA,4BAAA,YACA,oBAAA,IAAA,IAAA,IAAA,sBACA,0BAAA,KACA,0BAAA,EAAA,EAAA,EAAA,QAAA,yCACA,QAAA,aACA,QAAA,wBAAA,wBAGA,YAAA,0BACA,UAAA,wBACA,YAAA,0B1BsQI,YAAA,0B0BpQJ,MAAA,oBACA,WAAA,OACA,eAAA,OACA,OAAA,QAGA,oBAAA,KACA,iBAAA,KACA,gBAAA,KAAA,YAAA,K9B83GA,O8B93GA,2BAAA,MAAA,2B9B+3GA,c8B/3GA,4BACA,iBAAA,iBvBjBE,mBAAA,MAAA,KAAA,WAAA,CAAA,iBAAA,KAAA,WAAA,CAAA,aAAA,KAAA,WAAA,CAAA,mBAAA,KAAA,YgBfF,WAAA,MAAA,KAAA,WOkCqB,CAAA,iBAAA,KAAA,WAAA,CAAA,aAAA,KAAA,WAAA,CAAA,mBAAA,KAAA,YRtBjB,WAAA,MAAA,KAAA,WAAA,CAAA,iBAAA,KAAA,WAAA,CAAA,aAAA,KAAA,WAAA,CAAA,WAAA,KAAA,YAAA,WAAA,MAAA,KAAA,WAAA,CAAA,iBAAA,KAAA,WAAA,CAAA,aAAA,KAAA,WAAA,CAAA,WAAA,KAAA,WAAA,CAAA,mBQwBJ,KAAA,Y9Bi4GF,uCQlbA,Kcn+FM,mBAAA,KQhBN,WAAA,M9B26GA,WQnbA,MAAA,0BsBl9FE,iBAAA,uBACE,aAAA,iC9By4GJ,sBQnbA,MAAA,oBsBh9FE,iBAAA,iBAEE,aAAA,2B9Bs4GJ,mBQnbA,MAAA,0BsB98FE,iBAAA,uBACE,aAAA,iCPrDF,QAAA,EOuDE,mBAAA,+BACA,WAAA,+B9Bq4GJ,8BQpbA,aAAA,iCsBx8FE,QAAA,EACE,mBAAA,+BACA,WAAA,+B9Bg4GJ,wB8B33GM,YAAA,UAAA,wBAAA,6BtBs8FN,MAAA,2BsBl8FE,iBAAA,wBAKE,aAAA,kC9Bu3GJ,sC8Bn3GI,0BAAA,wBAAA,sCAAA,2CtB87FJ,mBAAA,+BsB37FI,WAAA,+BAKI,c9B+2GR,c8B/2GQ,uBtBy7FR,MAAA,6BsBp7FE,eAAA,KAGE,iBAAA,0BACA,aAAA,oCACA,QAAA,+BtBs7FJ,aRwbE,eAAgB,K8B/1GhB,YAAA,QCtGA,sBAAA,QACA,qBAAA,KACA,kBAAA,QACA,4BAAA,QACA,0BAAA,EAAA,CAAA,GAAA,CAAA,IACA,sBAAA,KACA,mBAAA,QACA,6BAAA,QACA,uBAAA,MAAA,EAAA,IAAA,IAAA,qBACA,wBAAA,KACA,qBAAA,QACA,+BAAA,QvBmhGF,eRwbE,eAAgB,K8Bh3GhB,YAAA,QCtGA,sBAAA,QACA,qBAAA,KACA,kBAAA,QACA,4BAAA,QACA,0BAAA,GAAA,CAAA,GAAA,CAAA,IACA,sBAAA,KACA,mBAAA,QACA,6BAAA,QACA,uBAAA,MAAA,EAAA,IAAA,IAAA,qBACA,wBAAA,KACA,qBAAA,QACA,+BAAA,QvBoiGF,aRwbE,eAAgB,K8Bj4GhB,YAAA,QCtGA,sBAAA,QACA,qBAAA,KACA,kBAAA,QACA,4BAAA,QACA,0BAAA,EAAA,CAAA,GAAA,CAAA,IACA,sBAAA,KACA,mBAAA,QACA,6BAAA,QACA,uBAAA,MAAA,EAAA,IAAA,IAAA,qBACA,wBAAA,KACA,qBAAA,QACA,+BAAA,QvBqjGF,URwbE,eAAgB,K8Bl5GhB,YAAA,QCtGA,sBAAA,QACA,qBAAA,KACA,kBAAA,QACA,4BAAA,QACA,0BAAA,EAAA,CAAA,GAAA,CAAA,IACA,sBAAA,KACA,mBAAA,QACA,6BAAA,QACA,uBAAA,MAAA,EAAA,IAAA,IAAA,qBACA,wBAAA,KACA,qBAAA,QACA,+BAAA,QvBskGF,aRwbE,eAAgB,K8Bn6GhB,YAAA,QCtGA,sBAAA,QACA,qBAAA,KACA,kBAAA,QACA,4BAAA,QACA,0BAAA,GAAA,CAAA,GAAA,CAAA,GACA,sBAAA,KACA,mBAAA,QACA,6BAAA,QACA,uBAAA,MAAA,EAAA,IAAA,IAAA,qBACA,wBAAA,KACA,qBAAA,QACA,+BAAA,QvBulGF,YRwbE,eAAgB,K8Bp7GhB,YAAA,QCtGA,sBAAA,QACA,qBAAA,KACA,kBAAA,QACA,4BAAA,QACA,0BAAA,GAAA,CAAA,EAAA,CAAA,GACA,sBAAA,KACA,mBAAA,QACA,6BAAA,QACA,uBAAA,MAAA,EAAA,IAAA,IAAA,qBACA,wBAAA,KACA,qBAAA,QACA,+BAAA,QvBwmGF,WRwbE,eAAgB,Q8Br8GhB,YAAA,QCtGA,sBAAA,QACA,qBAAA,QACA,kBAAA,QACA,4BAAA,QACA,0BAAA,GAAA,CAAA,GAAA,CAAA,IACA,sBAAA,QACA,mBAAA,QACA,6BAAA,QACA,uBAAA,MAAA,EAAA,IAAA,IAAA,qBACA,wBAAA,QACA,qBAAA,QACA,+BAAA,QvBynGF,URwbE,eAAgB,K8Bt9GhB,YAAA,QCtGA,sBAAA,QACA,qBAAA,KACA,kBAAA,QACA,4BAAA,QACA,0BAAA,GAAA,CAAA,GAAA,CAAA,IACA,sBAAA,KACA,mBAAA,QACA,6BAAA,QACA,uBAAA,MAAA,EAAA,IAAA,IAAA,qBACA,wBAAA,KACA,qBAAA,QACA,+BAAA,QvB0oGF,YRwbE,eAAgB,K8Bv+GhB,YAAA,QCtGA,sBAAA,QACA,qBAAA,KACA,kBAAA,QACA,4BAAA,QACA,0BAAA,GAAA,CAAA,GAAA,CAAA,IACA,sBAAA,KACA,mBAAA,QACA,6BAAA,QACA,uBAAA,MAAA,EAAA,IAAA,IAAA,qBACA,wBAAA,KACA,qBAAA,QACA,+BAAA,QvB2pGF,URwbE,eAAgB,K8Bx/GhB,YAAA,QCtGA,sBAAA,QACA,qBAAA,KACA,kBAAA,QACA,4BAAA,QACA,0BAAA,GAAA,CAAA,GAAA,CAAA,IACA,sBAAA,KACA,mBAAA,QACA,6BAAA,QACA,uBAAA,MAAA,EAAA,IAAA,IAAA,qBACA,wBAAA,KACA,qBAAA,QACA,+BAAA,QvB4qGF,qBRwbE,eAAgB,Q8B/+GhB,sBAAA,QCvGA,qBAAA,KACA,kBAAA,QACA,4BAAA,QACA,0BAAA,EAAA,CAAA,EAAA,CAAA,IACA,sBAAA,KACA,mBAAA,QACA,6BAAA,QACA,uBAAA,MAAA,EAAA,IAAA,IAAA,qBACA,wBAAA,QACA,qBAAA,YACA,+BAAA,QACA,cAAA,KvBoqGF,uBRwbE,eAAgB,Q8BhgHhB,sBAAA,QCvGA,qBAAA,KACA,kBAAA,QACA,4BAAA,QACA,0BAAA,GAAA,CAAA,GAAA,CAAA,IACA,sBAAA,KACA,mBAAA,QACA,6BAAA,QACA,uBAAA,MAAA,EAAA,IAAA,IAAA,qBACA,wBAAA,QACA,qBAAA,YACA,+BAAA,QACA,cAAA,KvBqrGF,qBRwbE,eAAgB,Q8BjhHhB,sBAAA,QCvGA,qBAAA,KACA,kBAAA,QACA,4BAAA,QACA,0BAAA,EAAA,CAAA,GAAA,CAAA,IACA,sBAAA,KACA,mBAAA,QACA,6BAAA,QACA,uBAAA,MAAA,EAAA,IAAA,IAAA,qBACA,wBAAA,QACA,qBAAA,YACA,+BAAA,QACA,cAAA,KvBssGF,kBRwbE,eAAgB,Q8BliHhB,sBAAA,QCvGA,qBAAA,KACA,kBAAA,QACA,4BAAA,QACA,0BAAA,EAAA,CAAA,GAAA,CAAA,IACA,sBAAA,KACA,mBAAA,QACA,6BAAA,QACA,uBAAA,MAAA,EAAA,IAAA,IAAA,qBACA,wBAAA,QACA,qBAAA,YACA,+BAAA,QACA,cAAA,KvButGF,qBRwbE,eAAgB,Q8BnjHhB,sBAAA,QCvGA,qBAAA,KACA,kBAAA,QACA,4BAAA,QACA,0BAAA,GAAA,CAAA,GAAA,CAAA,GACA,sBAAA,KACA,mBAAA,QACA,6BAAA,QACA,uBAAA,MAAA,EAAA,IAAA,IAAA,qBACA,wBAAA,QACA,qBAAA,YACA,+BAAA,QACA,cAAA,KvBwuGF,oBRwbE,eAAgB,Q8BpkHhB,sBAAA,QCvGA,qBAAA,KACA,kBAAA,QACA,4BAAA,QACA,0BAAA,GAAA,CAAA,EAAA,CAAA,GACA,sBAAA,KACA,mBAAA,QACA,6BAAA,QACA,uBAAA,MAAA,EAAA,IAAA,IAAA,qBACA,wBAAA,QACA,qBAAA,YACA,+BAAA,QACA,cAAA,KvByvGF,mBRwbE,eAAgB,Q8BrlHhB,sBAAA,QCvGA,qBAAA,QACA,kBAAA,QACA,4BAAA,QACA,0BAAA,GAAA,CAAA,GAAA,CAAA,IACA,sBAAA,QACA,mBAAA,QACA,6BAAA,QACA,uBAAA,MAAA,EAAA,IAAA,IAAA,qBACA,wBAAA,QACA,qBAAA,YACA,+BAAA,QACA,cAAA,KvB0wGF,kBRwbE,eAAgB,Q8BtmHhB,sBAAA,QCvGA,qBAAA,KACA,kBAAA,QACA,4BAAA,QACA,0BAAA,EAAA,CAAA,EAAA,CAAA,IACA,sBAAA,KACA,mBAAA,QACA,6BAAA,QACA,uBAAA,MAAA,EAAA,IAAA,IAAA,qBACA,wBAAA,QACA,qBAAA,YACA,+BAAA,QACA,cAAA,KvB2xGF,oBRwbE,eAAgB,Q8BvnHhB,sBAAA,QCvGA,qBAAA,KACA,kBAAA,QACA,4BAAA,QACA,0BAAA,GAAA,CAAA,EAAA,CAAA,IACA,sBAAA,KACA,mBAAA,QACA,6BAAA,QACA,uBAAA,MAAA,EAAA,IAAA,IAAA,qBACA,wBAAA,QACA,qBAAA,YACA,+BAAA,QACA,cAAA,KvB4yGF,kBRwbE,eAAgB,Q8BxoHhB,sBAAA,QCvGA,qBAAA,KACA,kBAAA,QACA,4BAAA,QACA,0BAAA,GAAA,CAAA,GAAA,CAAA,IACA,sBAAA,KACA,mBAAA,QACA,6BAAA,QACA,uBAAA,MAAA,EAAA,IAAA,IAAA,qBACA,wBAAA,QACA,qBAAA,YACA,+BAAA,QACA,cAAA,KvB6zGF,URwbE,qBAAsB,I8B7oHxB,eAAA,qBACE,YAAA,YACA,sBAAA,YACA,qBAAA,2BACA,4BAAA,YACA,sBAAA,2BACA,6BAAA,YACA,wBAAA,QACA,+BAAA,YACA,oBAAA,EAAA,EAAA,EAAA,KACA,0BAAA,EAAA,CAAA,GAAA,CAAA,IACA,gBAAA,K9BgpHF,wBQtbA,MAAA,oBRybA,gBQtbA,MAAA,0BAGA,mBAAA,QRwbE,mBAAoB,O8B3nHtB,mBAAA,KCxIE,mBAAA,WACA,uBAAA,wBvBi1GF,mBAAA,QRwbE,mBAAoB,Q8B9nHtB,mBAAA,OC5IE,mBAAA,QACA,uBAAA,2BvBw1GF,MRwbE,mBAAoB,QAAQ,KAAM,OgCj1HpC,WAAA,QAAA,KAAA,OhCo1HA,uCQvbA,Mcz4GM,mBAAA,KUpBN,WAAA,MhC01HA,iBQxbA,QAAA,EAGA,qBR0bE,QAAS,KQtbX,YR0bE,OAAQ,EgCp1HV,SAAA,OACE,mBAAA,OAAA,KAAA,KACA,WAAA,OAAA,KAAA,KhCu1HF,uCQzbA,Yc35GM,mBAAA,KULN,WAAA,MhC+1HA,gCQ1bA,MAAA,EwBh6GE,OAAA,KACE,mBAAA,MAAA,KAAA,KACA,WAAA,MAAA,KAAA,KhC81HJ,uCQ3bA,gCcr6GM,mBAAA,KUAJ,WAAA,MCnBF,UjC+3HA,iBAJA,SAEA,WQhcA,QRicA,eAEE,SAAU,SQ1bZ,iBR8bE,YAAa,OAEf,wBQ5bA,QAAA,a0Bx6GI,aAAA,MACE,eAAA,QACA,QAAA,GACA,WAAA,MAAA,MACA,YAAA,MAAA,MAAA,YArCJ,cAAA,EACA,aAAA,MAAA,MAAA,YlC84HF,8BQ5bA,aAAA,EAGA,eR8bE,qBAAsB,KiCp4HxB,wBAAA,MAEE,wBAAA,EACA,wBAAA,QACA,qBAAA,SACA,wBAAA,SACA,oBAAA,qB7BuQI,iBAAA,uB6BrQJ,2BAAA,uBACA,4BAAA,QACA,2BAAA,EACA,kCAAA,QACA,yBAAA,uBACA,+BAAA,SACA,yBAAA,wBACA,yBAAA,qBACA,+BAAA,kBACA,4BAAA,4BACA,gCAAA,yBACA,6BAAA,sBACA,kCAAA,QACA,6BAAA,UACA,6BAAA,SACA,2BAAA,QACA,+BAAA,YACA,+BAAA,OACA,SAAA,SACA,QAAA,0BAGA,QAAA,KACA,UAAA,6BACA,QAAA,6BAAA,6BACA,OAAA,EACA,UAAA,6BACA,MAAA,yB7B0OI,WAAA,M6BxOJ,WAAA,KACA,iBAAA,sBACA,gBAAA,YACA,OAAA,gCAAA,MAAA,gCACA,cAAA,iCjCo4HF,+BQ5bA,IAAA,KyBn8GE,MAAA,EACE,WAAA,0BzBu8GJ,qBR8bE,cAAe,MAEjB,qCQ5bA,KAAA,KyB96GM,MAAA,EzBk7GN,mBR8bE,cAAe,IAEjB,mCQ5bA,KAAA,EyB76GM,MAAA,KzBi7GN,yBR8bE,wBcv5HE,cAAA,Md05HF,wCQ5bA,KAAA,KyB/7GI,MAAA,EjC+3HJ,sBQ5bA,cAAA,IR+bA,sCQ5bA,KAAA,EyB77GI,MAAA,MjC83HN,yBQ5bA,wBM1+GI,cAAA,Md06HF,wCQ5bA,KAAA,KyB/8GI,MAAA,EjC+4HJ,sBQ5bA,cAAA,IR+bA,sCQ5bA,KAAA,EyB78GI,MAAA,MjC84HN,yBQ5bA,wBM1/GI,cAAA,Md07HF,wCQ5bA,KAAA,KyB/9GI,MAAA,EjC+5HJ,sBQ5bA,cAAA,IR+bA,sCQ5bA,KAAA,EyB79GI,MAAA,MjC85HN,0BQ5bA,wBM1gHI,cAAA,Md08HF,wCQ5bA,KAAA,KyB/+GI,MAAA,EjC+6HJ,sBQ5bA,cAAA,IR+bA,sCQ5bA,KAAA,EyB7+GI,MAAA,MjC86HN,0BQ5bA,yBM1hHI,cAAA,Md09HF,yCQ5bA,KAAA,KyB//GI,MAAA,EjC+7HJ,uBQ5bA,cAAA,IR+bA,uCQ5bA,KAAA,EyB7/GI,MAAA,MjC87HN,uCQ5bA,IAAA,KyBt/GE,OAAA,KACE,WAAA,EACA,cAAA,0BjCs7HJ,gCQ5bA,QAAA,a0B5kHI,aAAA,MACE,eAAA,QACA,QAAA,GACA,WAAA,EACA,YAAA,MAAA,MAAA,YA9BJ,cAAA,MAAA,MACA,aAAA,MAAA,MAAA,YlC2iIF,sCQ5bA,aAAA,EAGA,wCR8bE,IAAK,EiC17HL,KAAA,KACE,MAAA,KACA,WAAA,EACA,aAAA,0BjC67HJ,iCQ5bA,QAAA,a0BjmHI,aAAA,MACE,eAAA,QACA,QAAA,GACA,WAAA,MAAA,MvBklBwB,YuBjlBxB,YAAA,EAvBJ,cAAA,MAAA,MAAA,YACA,aAAA,MAAA,MlCyjIF,uCQ5bA,aAAA,ER+bA,iCQ5bA,eAAA,EAGA,0CR8bE,IAAK,EiCj8HL,KAAA,KACE,MAAA,KACA,WAAA,EACA,YAAA,0BjCo8HJ,mCQ5bA,QAAA,a0BznHI,aAAA,MACE,eAAA,QACA,QAAA,GlCyjIN,mCQ5bA,QAAA,KR+bA,oCQ5bA,QAAA,a0B/mHM,YAAA,MACE,eAAA,QACA,QAAA,GACA,WAAA,MAAA,MvB+jBsB,YuB9jBtB,YAAA,MAAA,MAnCN,cAAA,MAAA,MAAA,YlCmlIF,yCQ5bA,aAAA,ER+bA,oCQ5bA,eAAA,EAGA,kBR8bE,OAAQ,EiC/8HV,OAAA,oCAAA,EACE,SAAA,OACA,WAAA,IAAA,MAAA,8BACA,QAAA,EzBshHF,eR8bE,QAAS,MiC58HX,MAAA,KACE,QAAA,kCAAA,kCACA,MAAA,KACA,YAAA,IACA,MAAA,8BACA,WAAA,QACA,YAAA,OACA,iBAAA,YAEA,OAAA,EACA,cAAA,wC1BrKE,qBPmnIJ,qBQ5bA,MAAA,oCyB9gHE,iBAAA,iCjC88HF,sBuBtoIE,sBf0sHF,MAAA,qCyB3gHE,gBAAA,KAEE,iBAAA,kCjC08HJ,wBuB3oIE,wBf+sHF,MAAA,uCyBzgHE,eAAA,KAEE,iBAAA,YzB4gHJ,oBR8bE,QAAS,MQ1bX,iBR8bE,QAAS,MiCj8HX,QAAA,oCAAA,oCACE,cAAA,EACA,UAAA,OACA,MAAA,gC7BmEI,YAAA,OIs8GN,oBR8bE,QAAS,MiCh8HX,QAAA,kCAAA,kCACE,MAAA,8BzBugHF,oBR8bE,oBAAqB,QiC/7HvB,iBAAA,QAEE,2BAAA,uBAEA,yBAAA,QACA,+BAAA,KACA,yBAAA,uBACA,4BAAA,0BACA,gCAAA,yBACA,6BAAA,sBACA,kCAAA,QACA,2BAAA,QzBqgHF,WR8bA,oBmCvrIA,SAAA,SnCyrIE,QAAS,mBmCvrIT,QAAA,mBACA,QAAA,YAAA,eAAA,O3B6vHF,yBR8bA,gBmCxrIE,SAAA,SnC2rIA,iBAAkB,EmC1rIhB,SAAA,EAAA,EAAA,KACA,KAAA,EAAA,EAAA,KnCmsIJ,4CACA,0CAIA,gCADA,gCADA,+BADA,+BARA,mCQhcA,iCRqcA,uBADA,uBADA,sBmC3rIE,sBnCosIA,QAAS,EQ9bX,aRkcE,QAAS,YmC7rIX,QAAA,YACE,QAAA,KAAA,cAAA,KAAA,UAAA,KACA,iBAAA,MAAA,cAAA,MACA,gBAAA,WnCmsIF,0BQrcA,MAAA,KAGA,WRucE,cAAe,wBQncjB,wCRqcA,6CmC/rIE,aAAA,kCAMA,4C3BwvHF,kDRqcA,uDAGE,uBAAwB,EACxB,0BAA2B,EmCvrI3B,6CnCyrIF,+BQrcA,iCRwcE,wBAAyB,EACzB,2BAA4B,EQnc9B,uBRucE,aAAc,QmC9qIhB,cAAA,QnCirIA,8BmC/qIE,uCAAA,sC3B0uHF,aAAA,ERwcA,0CQrcA,YAAA,EAGA,0CAAA,+BRucE,aAAc,MmC1qIhB,cAAA,M3BwuHA,0CAAA,+BRucE,aAAc,OmC1qIhB,cAAA,O3BwuHA,oBRucE,mBAAoB,SmCzpItB,sBAAA,OACE,mBAAA,OAAA,eAAA,OnC4pIA,kBmC5pIA,MnC6pII,emC7pIJ,MACA,YAAA,WnC8pIA,iBmC9pIA,OnC+pII,cmC/pIJ,OACA,gBAAA,OnCiqIF,yBQ5cA,+B2BntHE,MAAA,K3ButHF,iDR4cA,2CmC9pIE,WAAA,kC3BstHF,qDR4cA,gEmC5pIE,0BAAA,EnC+pIA,2BAA4B,EQ1c9B,sDR4cA,8BmC5pIE,wBAAA,EnC+pIA,uBAAwB,EQ1c1B,KR8cE,wBAAyB,KoCvyI3B,wBAAA,OAGE,oBAAA,qBAEA,0BAAA,2BACA,6BAAA,0BACA,QAAA,YACA,QAAA,YAGA,QAAA,KAAA,cAAA,KAAA,UAAA,KACA,cAAA,EpCuyIA,coCvyIA,EACA,WAAA,K5B01HF,URidE,QAAS,MoCtyIX,QAAA,6BAAA,6BACE,UAAA,6BACA,YAAA,+BhCsQI,MAAA,yBgCpQJ,WAAA,IACA,OAAA,EAEA,mBAAA,MAAA,KAAA,WAAA,CAAA,iBAAA,KAAA,WAAA,CAAA,aAAA,KAAA,YACA,WAAA,MAAA,KAAA,WAAA,CAAA,iBAAA,KAAA,WAAA,CAAA,aAAA,KAAA,YpCwyIF,uCQhdA,Ucn2HM,mBAAA,KcGN,WAAA,M5Bo2HE,gBRkdF,gBQjdA,MAAA,+BRodA,wBQjdA,QAAA,E4Bv1HE,mBAAA,EAAA,EAAA,EAAA,OAAA,oBACE,WAAA,EAAA,EAAA,EAAA,OAAA,oBpC4yIJ,mBQldA,MAAA,kC4Br1HE,eAAA,KACE,OAAA,Q5By1HJ,URodE,2BAA4B,uBoCnyI9B,2BAAA,uBAEE,4BAAA,wBACA,sCAAA,uBAAA,uBAAA,uBACA,gCAAA,yBACA,6BAAA,uBACA,uCAAA,uBAAA,uBAAA,uBACA,cAAA,gCAAA,MAAA,gCpCqyIF,oBQldA,cAAA,2C4B70HE,OAAA,gCAAA,MAAA,YACE,wBAAA,iCACA,uBAAA,iC7B3CA,0BP80IJ,0BQldA,UAAA,Q4B90HI,aAAA,2CpCoyIJ,6BoChyIM,6B5B80HN,MAAA,kC4B30HI,iBAAA,YAEE,aAAA,Y5B80HN,mCRkdA,2BoC1xIE,MAAA,qCpC6xIA,iBAAkB,kCoC3xIhB,aAAA,4CpC8xIJ,yBQldA,WAAA,2C4Bv0HE,wBAAA,EAEE,uBAAA,E5B00HJ,WRodE,6BAA8B,QoCnxIhC,iCAAA,KAEE,8BAAA,QpCqxIF,qBQldA,cAAA,kCRqdA,8BQldA,MAAA,kC4B9zHI,iBAAA,YACE,aAAA,YpCoxIN,4BQldA,2B4B5zHE,MAAA,sCpCixIA,iBAAkB,mCQhdpB,eRodE,uBAAwB,KoCzwI1B,gCAAA,SAEE,qCAAA,yBACA,IAAA,4BpC2wIF,yBQldA,aAAA,E4BnzHE,cAAA,EACE,cAAA,qCAAA,MAAA,YAEA,+BpCuwIJ,+BQldA,oBAAA,aRqdA,gCQldA,+B4BhzHE,YAAA,IpCqwIA,MAAO,0CoCnwIL,oBzBqgB0B,aXmwH9B,oBQpdA,oB4BxyHE,iBAAA,EpC8vII,SAAU,EAAE,EAAE,KoC5vIhB,KAAA,EAAA,EAAA,KpC8vIF,WoC9vIE,OpCkwIJ,yBQtdA,yB4BtyHE,wBAAA,EpC8vII,WAAY,EoC5vId,iBAAA,EAAA,kBAAA,EACA,UAAA,EpC+vIF,WoC/vIE,O5B0yHJ,8BRydA,mCoC5vIE,MAAA,K5BwyHF,uBRydE,QAAS,KAEX,qBQvdA,QAAA,MAGA,QRydE,sBAAuB,EqCl8IzB,sBAAA,SAEE,kBAAA,yCACA,wBAAA,wCACA,2BAAA,wCACA,yBAAA,sCACA,4BAAA,aACA,6BAAA,KACA,4BAAA,WACA,wBAAA,sCACA,8BAAA,sCACA,+BAAA,OACA,8BAAA,QACA,8BAAA,QACA,8BAAA,WACA,4BAAA,kPACA,iCAAA,yCACA,kCAAA,wBACA,gCAAA,QACA,+BAAA,WAAA,MAAA,YACA,SAAA,SACA,QAAA,YAGA,QAAA,YACA,QAAA,KAAA,cAAA,KAAA,UAAA,KACA,kBAAA,OAAA,eAAA,OACA,YAAA,OrCo8IA,iBqCp8IA,QrCq8II,cqCr8IJ,QACA,gBAAA,crCs8IA,QqCt8IA,2BAAA,2BrCw8IF,mBQ9dA,yBRkeA,sBADA,sBqCp8IE,sBrCs8IF,sBACA,uBACE,QAAS,YACT,QAAS,YqCx8IP,QAAA,KAAA,cAAA,QAAA,UAAA,QACA,kBAAA,OAAA,eAAA,OACA,YAAA,OrC68IF,iBqC78IE,QrC88IE,cqC98IF,QACA,gBAAA,crCg9IJ,cQreA,YAAA,iC6Bv9HA,eAAA,iCACE,YAAA,kCACA,UAAA,iCACA,MAAA,6BjC4NI,YAAA,OiCxNJ,oBrC67IF,oBQreA,MAAA,mCAGA,YRueE,wBAAyB,EqCp7I3B,wBAAA,OAGE,oBAAA,uBAEA,0BAAA,6BACA,6BAAA,gCACA,QAAA,YACA,QAAA,YAGA,QAAA,KAAA,mBAAA,SAAA,sBAAA,OACA,mBAAA,OAAA,eAAA,OrCq7IA,cqCr7IA,ErCs7IA,cqCt7IA,EACA,WAAA,KrCw7IF,6BqCt7IE,2B7B48HF,MAAA,8BR6eA,2BQ1eA,SAAA,OAGA,aR4eE,YAAa,MqC36If,eAAA,MACE,MAAA,uBrC86IF,eqC16IE,qB7Bg8HF,qBR6eE,MAAO,8BQxeT,iBR4eE,wBAAyB,KqCj6I3B,WAAA,KACE,iBAAA,EAAA,kBAAA,EACA,UAAA,ErCo6IA,kBqCp6IA,OrCq6II,eqCr6IJ,OAGA,YAAA,O7Bs7HF,gBRifE,QAAS,mCAAmC,mCqCn6I9C,UAAA,mCACE,YAAA,EjCyII,MAAA,uBiCvIJ,iBAAA,YACA,OAAA,uBAAA,MAAA,sCACA,cAAA,uCACA,mBAAA,oC9BxIE,WAAA,oCP+iJJ,uCQhfA,gBc9jIM,mBAAA,KeiIN,WAAA,MrCm7IA,sBQjfA,gBAAA,KRofA,sBQjfA,gBAAA,K6Bv7HE,QAAA,EACE,mBAAA,EAAA,EAAA,EAAA,qCACA,WAAA,EAAA,EAAA,EAAA,qC7B07HJ,qBRofE,QAAS,aqCv6IX,MAAA,MACE,OAAA,MACA,eAAA,OACA,iBAAA,iCACA,kBAAA,UACA,oBAAA,OACA,gBAAA,K7Bw7HF,mBRofE,WAAY,6BqCv6Id,WAAA,K7Bw7HA,yBRofE,kBcpiJE,cAAA,OuBsIA,UAAA,OAEI,iBAAA,MAAA,cAAA,MACA,gBAAA,WrCk6IN,8BQrfA,mBAAA,W6B36HM,sBAAA,OACE,mBAAA,IAAA,eAAA,IrCq6IR,6CQxfA,SAAA,SR2fA,wCQxfA,aAAA,oC6B16HQ,cAAA,oCrCs6IR,qCQxfA,SAAA,QR2fA,mCQxfA,QAAA,sB6Bv6HM,QAAA,sBACE,QAAA,eAAA,wBAAA,KAAA,WAAA,KrCq6IR,kCQ3fA,QAAA,KR8fA,6BQ3fA,SAAA,O6Br6HM,QAAA,KAEE,iBAAA,EACA,kBAAA,EACA,UAAA,ErCk6IN,MqCl6IM,erCm6IN,OqCn6IM,eACA,WAAA,kBACA,iBAAA,sBACA,OAAA,YACA,kBAAA,eACA,UAAA,eACA,mBAAA,KrCo6IN,WqCp6IM,KrCs6IR,+CQ/fA,QAAA,KRkgBA,6CQ/fA,QAAA,Y6Bj6HQ,QAAA,YACE,QAAA,KAAA,iBAAA,EAAA,kBAAA,EACA,UAAA,ErCq6IR,QqCr6IQ,ErCs6IR,WqCt6IQ,SrCy6IZ,yBQngBA,kBMhmII,cAAA,OuBsIA,UAAA,OAEI,iBAAA,MAAA,cAAA,MACA,gBAAA,WrCk+IN,8BQtgBA,mBAAA,W6B19HM,sBAAA,OACE,mBAAA,IAAA,eAAA,IrCq+IR,6CQzgBA,SAAA,SR4gBA,wCQzgBA,aAAA,oC6Bz9HQ,cAAA,oCrCs+IR,qCQzgBA,SAAA,QR4gBA,mCQzgBA,QAAA,sB6Bt9HM,QAAA,sBACE,QAAA,eAAA,wBAAA,KAAA,WAAA,KrCq+IR,kCQ5gBA,QAAA,KR+gBA,6BQ5gBA,SAAA,O6Bp9HM,QAAA,KAEE,iBAAA,EACA,kBAAA,EACA,UAAA,ErCk+IN,MqCl+IM,erCm+IN,OqCn+IM,eACA,WAAA,kBACA,iBAAA,sBACA,OAAA,YACA,kBAAA,eACA,UAAA,eACA,mBAAA,KrCo+IN,WqCp+IM,KrCs+IR,+CQhhBA,QAAA,KRmhBA,6CQhhBA,QAAA,Y6Bh9HQ,QAAA,YACE,QAAA,KAAA,iBAAA,EAAA,kBAAA,EACA,UAAA,ErCq+IR,QqCr+IQ,ErCs+IR,WqCt+IQ,SrCy+IZ,yBQphBA,kBM/oII,cAAA,OuBsIA,UAAA,OAEI,iBAAA,MAAA,cAAA,MACA,gBAAA,WrCkiJN,8BQvhBA,mBAAA,W6BzgIM,sBAAA,OACE,mBAAA,IAAA,eAAA,IrCqiJR,6CQ1hBA,SAAA,SR6hBA,wCQ1hBA,aAAA,oC6BxgIQ,cAAA,oCrCsiJR,qCQ1hBA,SAAA,QR6hBA,mCQ1hBA,QAAA,sB6BrgIM,QAAA,sBACE,QAAA,eAAA,wBAAA,KAAA,WAAA,KrCqiJR,kCQ7hBA,QAAA,KRgiBA,6BQ7hBA,SAAA,O6BngIM,QAAA,KAEE,iBAAA,EACA,kBAAA,EACA,UAAA,ErCkiJN,MqCliJM,erCmiJN,OqCniJM,eACA,WAAA,kBACA,iBAAA,sBACA,OAAA,YACA,kBAAA,eACA,UAAA,eACA,mBAAA,KrCoiJN,WqCpiJM,KrCsiJR,+CQjiBA,QAAA,KRoiBA,6CQjiBA,QAAA,Y6B//HQ,QAAA,YACE,QAAA,KAAA,iBAAA,EAAA,kBAAA,EACA,UAAA,ErCqiJR,QqCriJQ,ErCsiJR,WqCtiJQ,SrCyiJZ,0BQriBA,kBM9rII,cAAA,OuBsIA,UAAA,OAEI,iBAAA,MAAA,cAAA,MACA,gBAAA,WrCkmJN,8BQxiBA,mBAAA,W6BxjIM,sBAAA,OACE,mBAAA,IAAA,eAAA,IrCqmJR,6CQ3iBA,SAAA,SR8iBA,wCQ3iBA,aAAA,oC6BvjIQ,cAAA,oCrCsmJR,qCQ3iBA,SAAA,QR8iBA,mCQ3iBA,QAAA,sB6BpjIM,QAAA,sBACE,QAAA,eAAA,wBAAA,KAAA,WAAA,KrCqmJR,kCQ9iBA,QAAA,KRijBA,6BQ9iBA,SAAA,O6BljIM,QAAA,KAEE,iBAAA,EACA,kBAAA,EACA,UAAA,ErCkmJN,MqClmJM,erCmmJN,OqCnmJM,eACA,WAAA,kBACA,iBAAA,sBACA,OAAA,YACA,kBAAA,eACA,UAAA,eACA,mBAAA,KrComJN,WqCpmJM,KrCsmJR,+CQljBA,QAAA,KRqjBA,6CQljBA,QAAA,Y6B9iIQ,QAAA,YACE,QAAA,KAAA,iBAAA,EAAA,kBAAA,EACA,UAAA,ErCqmJR,QqCrmJQ,ErCsmJR,WqCtmJQ,SrCymJZ,0BQtjBA,mBM7uII,cAAA,OuBsIA,UAAA,OAEI,iBAAA,MAAA,cAAA,MACA,gBAAA,WrCkqJN,+BQzjBA,mBAAA,W6BvmIM,sBAAA,OACE,mBAAA,IAAA,eAAA,IrCqqJR,8CQ5jBA,SAAA,SR+jBA,yCQ5jBA,aAAA,oC6BtmIQ,cAAA,oCrCsqJR,sCQ5jBA,SAAA,QR+jBA,oCQ5jBA,QAAA,sB6BnmIM,QAAA,sBACE,QAAA,eAAA,wBAAA,KAAA,WAAA,KrCqqJR,mCQ/jBA,QAAA,KRkkBA,8BQ/jBA,SAAA,O6BjmIM,QAAA,KAEE,iBAAA,EACA,kBAAA,EACA,UAAA,ErCkqJN,MqClqJM,erCmqJN,OqCnqJM,eACA,WAAA,kBACA,iBAAA,sBACA,OAAA,YACA,kBAAA,eACA,UAAA,eACA,mBAAA,KrCoqJN,WqCpqJM,KrCsqJR,gDQnkBA,QAAA,KRskBA,8CQnkBA,QAAA,Y6B7lIQ,QAAA,YACE,QAAA,KAAA,iBAAA,EAAA,kBAAA,EACA,UAAA,ErCqqJR,QqCrqJQ,ErCsqJR,WqCtqJQ,SrCyqJZ,eQvkBA,cAAA,O6BtpII,UAAA,OAEI,iBAAA,MAAA,cAAA,MACA,gBAAA,WrCiuJR,2BQ1kBA,mBAAA,W6BrpIQ,sBAAA,OACE,mBAAA,IAAA,eAAA,IrCouJV,0CQ7kBA,SAAA,SRglBA,qCQ7kBA,aAAA,oC6BppIU,cAAA,oCrCquJV,kCQ7kBA,SAAA,QRglBA,gCQ7kBA,QAAA,sB6BjpIQ,QAAA,sBACE,QAAA,eAAA,wBAAA,KAAA,WAAA,KrCouJV,+BQhlBA,QAAA,KRmlBA,0BQhlBA,SAAA,O6B/oIQ,QAAA,KAEE,iBAAA,EACA,kBAAA,EACA,UAAA,ErCiuJR,MqCjuJQ,erCkuJR,OqCluJQ,eACA,WAAA,kBACA,iBAAA,sBACA,OAAA,YACA,kBAAA,eACA,UAAA,eACA,mBAAA,KrCmuJR,WqCnuJQ,KrCquJV,4CQplBA,QAAA,KRulBA,0CQplBA,QAAA,Y6B3oIU,QAAA,YACE,QAAA,KAAA,iBAAA,EAAA,kBAAA,EACA,UAAA,ErCouJV,QqCpuJU,ErCquJV,WqCruJU,Q7B+oIZ,aR0lBA,4BqCttJA,kBAAA,0BrCwtJE,wBAAyB,0BqCrtJzB,2BAAA,0BACA,yBAAA,KACA,wBAAA,KACA,8BAAA,KACA,iCAAA,yBACA,4BAAA,kP7BgoIF,0CR0lBE,4BAA6B,kPQtlB/B,MR0lBE,mBAAoB,QsC9+JtB,mBAAA,QAEE,yBAAA,SAGA,uBAAA,kCACA,uBAAA,uBACA,wBAAA,wBACA,qBAAA,qBACA,8BAAA,oEACA,wBAAA,QACA,wBAAA,QACA,iBAAA,YAIA,aAAA,uBACA,8BAAA,QACA,uBAAA,OACA,SAAA,SACA,QAAA,YAGA,QAAA,YACA,QAAA,KAAA,mBAAA,SAAA,sBAAA,OACA,mBAAA,OAAA,eAAA,OtCg/JA,UsCh/JA,EtCi/JA,OsCj/JA,sBACA,MAAA,qBACA,UAAA,WACA,iBAAA,kBACA,gBAAA,WACA,OAAA,4BAAA,MAAA,4BACA,cAAA,6BtCm/JF,SQ7lBA,YAAA,E8Bj5IE,aAAA,EtCk/JF,kBQ7lBA,WAAA,Q8Bh5IE,cAAA,QtCi/JF,8BQ7lBA,iBAAA,E8Bh5II,wBAAA,mCACE,uBAAA,mCtCi/JN,6BQ7lBA,oBAAA,E8Bh5II,0BAAA,mCACE,2BAAA,mCtCi/JN,+BQ7lBA,+B8B74IE,WAAA,E9Bi5IF,WR+lBE,iBAAkB,EsC1+JpB,SAAA,EAAA,EAAA,KAGE,KAAA,EAAA,EAAA,KtC0+JA,QsC1+JA,wBAAA,wBtC2+JA,MAAO,qBQ7lBT,YRimBE,cAAe,8BsC1+JjB,MAAA,2B9B84IA,eRimBE,WAAY,0CsC1+Jd,cAAA,EACE,MAAA,8B9B84IF,sBRimBE,cAAe,EQ7lBjB,sBRimBE,aAAc,wBQ7lBhB,aRimBE,QAAS,6BAA6B,6BsCh+JxC,cAAA,EACE,MAAA,yBACA,iBAAA,sBACA,cAAA,4BAAA,MAAA,4BtCm+JF,yBQ/lBA,cAAA,mCAAA,mCAAA,EAAA,EAGA,aRimBE,QAAS,6BAA6B,6BsC/9JxC,MAAA,yBACE,iBAAA,sBACA,WAAA,4BAAA,MAAA,4BtCk+JF,wBQ/lBA,cAAA,EAAA,EAAA,mCAAA,mCAGA,kBRimBE,YAAa,yCsCz9Jf,cAAA,wCACE,aAAA,yCACA,cAAA,EtC49JF,mCQ/lBA,iBAAA,kB8Bz3IE,oBAAA,kB9B63IF,mBRimBE,YAAa,yCsCx9Jf,aAAA,yC9B43IA,kBRimBE,SAAU,SsCv9JZ,IAAA,EACE,KAAA,EACA,OAAA,EACA,MAAA,EACA,QAAA,mCACA,cAAA,mC9B23IF,U8Bt3IA,iBtCu9JA,cAEE,MAAO,KQ7lBT,URimBA,csCv9JA,wBAAA,mCtCy9JE,uBAAwB,mCQ7lB1B,URimBA,iBsCx9JA,0BAAA,mCtC09JE,2BAA4B,mCQ7lB9B,kBRimBE,cAAe,4BAEjB,yBQ/lBA,YM9+II,QAAA,YwBuHJ,QAAA,YAQI,QAAA,KAAA,mBAAA,WAAA,sBAAA,OACA,cAAA,IAAA,KAAA,UAAA,IAAA,KtCu9JF,kBQpmBA,iBAAA,E8Bh3IE,SAAA,EAAA,EAAA,GAEE,KAAA,EAAA,EAAA,GtCs9JF,csCt9JE,EtCw9JJ,wBQtmBA,aAAA,E8B/2II,aAAA,EtCy9JJ,mCQtmBA,uBAAA,E8B52IM,0BAAA,EtCu9JR,gDADE,iDsCn9JQ,uBAAA,EtCw9JV,gDADE,oDsCl9JQ,0BAAA,EtCs9JR,oCQtmBA,wBAAA,E8Bz2IM,2BAAA,EtCo9JR,iDADE,kDsCh9JQ,wBAAA,EtCq9JV,iDADE,qDsC/8JQ,2BAAA,G9B82IV,WRwmBE,qBAAsB,qBuCvrKxB,kBAAA,uBAEE,0BAAA,MAAA,MAAA,WAAA,CAAA,iBAAA,MAAA,WAAA,CAAA,aAAA,MAAA,WAAA,CAAA,WAAA,MAAA,WAAA,CAAA,cAAA,MAAA,KACA,4BAAA,uBACA,4BAAA,uBACA,6BAAA,wBACA,mCAAA,yDACA,6BAAA,QACA,6BAAA,KACA,yBAAA,qBACA,sBAAA,uBACA,wBAAA,gRACA,8BAAA,QACA,kCAAA,gBACA,mCAAA,UAAA,KAAA,YACA,+BAAA,gRACA,sCAAA,mCACA,oCAAA,KACA,8BAAA,QACA,8BAAA,KACA,4BAAA,kBACA,yBAAA,4B/BmlJF,kBRwmBE,SAAU,SuCrrKZ,QAAA,YACE,QAAA,YACA,QAAA,KAAA,kBAAA,OAAA,eAAA,OACA,YAAA,OvCyrKA,MuCzrKA,KvC0rKA,QuC1rKA,kCAAA,kCACA,UAAA,QACA,MAAA,8BnC2PI,WAAA,MmCzPJ,iBAAA,2BACA,OAAA,EACA,cAAA,EACA,gBAAA,KhCtBE,mBAAA,+BgCwBF,WAAA,+BvC4rKF,uCQ3mBA,kBcxmJM,mBAAA,KiBWN,WAAA,MvC8sKA,kCQ5mBA,MAAA,iC+BnlJE,iBAAA,8BACE,mBAAA,MAAA,EAAA,4CAAA,EAAA,iCACA,WAAA,MAAA,EAAA,4CAAA,EAAA,iCvCmsKJ,yCQ7mBA,iBAAA,oC+BnlJI,kBAAA,uCACE,UAAA,uCvCosKN,yBQ9mBA,kBAAA,E+BhlJE,YAAA,EACE,MAAA,mCvCisKF,OuCjsKE,mCACA,aAAA,KACA,QAAA,GACA,iBAAA,6BACA,kBAAA,UACA,gBAAA,mCACA,mBAAA,wCACA,WAAA,wCvCmsKJ,uCQhnBA,yBcjoJM,mBAAA,KiBsCJ,WAAA,MvCitKF,wBQjnBA,QAAA,ERonBA,wBQjnBA,QAAA,E+BnlJE,aAAA,2CACE,QAAA,EACA,mBAAA,yCACA,WAAA,yC/BslJJ,kBRonBE,cAAe,EQhnBjB,gBRonBE,MAAO,0BuCrsKT,iBAAA,uBACE,OAAA,iCAAA,MAAA,iCvCwsKF,8BQlnBA,wBAAA,kC+BllJE,uBAAA,kCvCwsKF,gDQlnBA,wBAAA,wC+BnlJI,uBAAA,wCvCysKJ,oCQlnBA,WAAA,ERqnBA,6BQlnBA,0BAAA,kC+BhlJE,2BAAA,kCvCssKF,yDQlnBA,0BAAA,wC+BhlJM,2BAAA,wCvCssKN,iDQlnBA,0BAAA,kC+B/kJI,2BAAA,kC/BmlJJ,gBRonBE,QAAS,mCAAmC,mCQhnB9C,qCRonBE,aAAc,EAEhB,iCQlnBA,YAAA,E+BvkJE,aAAA,EACE,cAAA,EvC6rKJ,6CQlnBA,WAAA,ERqnBA,4CQlnBA,cAAA,ERqnBA,mDuC9rKmB,6D/B4kJnB,cAAA,EAGA,8CRonBE,wBAAyB,gRuCtrKvB,+BAAA,gR/BukJJ,YRonBE,0BAA2B,EwCn1K7B,0BAAA,QAEE,8BAAA,KAIA,8BAAA,0BACA,+BAAA,OACA,kCAAA,0BACA,QAAA,YACA,QAAA,YAGA,QAAA,KAAA,cAAA,KAAA,UAAA,KACA,QAAA,+BAAA,+BxCm1KA,cwCn1KA,mCACA,UAAA,+BACA,WAAA,KpC+QI,iBAAA,wBoC7QJ,cAAA,mChCguJF,kCRunBE,cAAe,oCAEjB,0CQrnBA,MAAA,MgC1tJI,aAAA,oCACE,MAAA,mCACA,QAAA,sCxCm1KN,wBQrnBA,MAAA,uCAGA,YRunBE,0BAA2B,QyCt3K7B,0BAAA,SAEE,0BAAA,SACA,sBAAA,yBrC4RI,mBAAA,uBqC1RJ,6BAAA,uBACA,6BAAA,uBACA,8BAAA,2BACA,4BAAA,2BACA,yBAAA,sBACA,mCAAA,uBACA,4BAAA,2BACA,yBAAA,uBACA,iCAAA,KACA,6BAAA,KACA,0BAAA,QACA,oCAAA,QACA,+BAAA,0BACA,4BAAA,uBACA,sCAAA,uBACA,QAAA,YACA,QAAA,YAGA,QAAA,KAAA,cAAA,EAAA,WAAA,KjCiwJF,WRynBE,SAAU,SyCt3KZ,QAAA,MACE,QAAA,+BAAA,+BACA,UAAA,+BACA,MAAA,2BrCgQI,iBAAA,wBqC9PJ,OAAA,kCAAA,MAAA,kCAEA,mBAAA,MAAA,KAAA,WAAA,CAAA,iBAAA,KAAA,WAAA,CAAA,aAAA,KAAA,WAAA,CAAA,mBAAA,KAAA,YACA,WAAA,MAAA,KAAA,WAAA,CAAA,iBAAA,KAAA,WAAA,CAAA,aAAA,KAAA,WAAA,CAAA,mBAAA,KAAA,YnBpBI,WAAA,MAAA,KAAA,WAAA,CAAA,iBAAA,KAAA,WAAA,CAAA,aAAA,KAAA,WAAA,CAAA,WAAA,KAAA,YAAA,WAAA,MAAA,KAAA,WAAA,CAAA,iBAAA,KAAA,WAAA,CAAA,aAAA,KAAA,WAAA,CAAA,WAAA,KAAA,WAAA,CAAA,mBmBqBJ,KAAA,YzCy3KF,uCQ1nBA,WchxJM,mBAAA,KmBQN,WAAA,MzCw4KA,iBQ3nBA,QAAA,EiClwJE,MAAA,iCACE,iBAAA,8BACA,aAAA,wCzCi4KJ,iBQ3nBA,QAAA,EiChwJE,MAAA,iCACE,iBAAA,8BACA,QAAA,EACA,mBAAA,sCACA,W9B+yCgC,sC8B9yChC,mBzC83KJ,kBQ5nBA,QAAA,EiC/vJE,MAAA,kCAEE,iBAAA,+BACA,aAAA,yCAEA,qBzC43KJ,oBQ5nBA,MAAA,oCiC7vJE,eAAA,KAEE,iBAAA,iCACA,aAAA,2CjCgwJJ,wCR8nBE,aAAc,kCAEhB,kCQ5nBA,wBAAA,mCiCvvJM,2BAAA,mCzCu3KN,iCQ5nBA,uBAAA,mCiCrvJM,0BAAA,mCjCyvJN,eR8nBE,0BAA2B,OyCt2K7B,0BAAA,QClGE,0BAAA,WACA,8BAAA,wBlCg1JF,eR8nBE,0BAA2B,OyCz2K7B,0BAAA,QCtGE,0BAAA,QACA,8BAAA,2BlCu1JF,OR8nBE,qBAAsB,M2Cr9KxB,qBAAA,OAEE,qBAAA,MACA,uBAAA,IvCuRI,iBAAA,KuCrRJ,yBAAA,QACA,QAAA,aACA,QAAA,0BAAA,0BAGA,UAAA,0BACA,YAAA,4BvC+QI,YAAA,EuC7QJ,MAAA,sBACA,WAAA,OACA,YAAA,OACA,eAAA,SACA,cAAA,8B3Cq9KF,aQ5nBA,QAAA,KAGA,YR8nBE,SAAU,S2C98KZ,IAAA,KnCq1JA,OR8nBE,cAAe,Y4Cj/KjB,qBAAA,QAEE,qBAAA,OACA,yBAAA,KACA,iBAAA,QACA,wBAAA,YACA,kBAAA,uBAAA,MAAA,6BACA,yBAAA,QACA,sBAAA,QACA,SAAA,SACA,QAAA,0BAAA,0BAGA,cAAA,8BACA,MAAA,sBACA,iBAAA,mBACA,OAAA,uBACA,cAAA,8BpCq3JF,eR8nBE,MAAO,QQ1nBT,YR8nBE,YAAa,I4C3+Kf,MAAA,2BpCk3JA,mBR8nBE,aAAc,QAEhB,8BQ5nBA,SAAA,SoCx2JE,IAAA,EACE,KAAA,EACA,QAAA,EACA,QAAA,KAAA,QpC42JJ,eR8nBE,iBAAkB,gC4Ch+KlB,cAAA,4BACE,wBAAA,gCACA,sBAAA,gCpCu2JJ,iBR8nBE,iBAAkB,kC4Cv+KlB,cAAA,8BACE,wBAAA,kCACA,sBAAA,kCpC82JJ,eR8nBE,iBAAkB,gC4C9+KlB,cAAA,4BACE,wBAAA,gCACA,sBAAA,gCpCq3JJ,YR8nBE,iBAAkB,6B4Cr/KlB,cAAA,yBACE,wBAAA,6BACA,sBAAA,6BpC43JJ,eR8nBE,iBAAkB,gC4C5/KlB,cAAA,4BACE,wBAAA,gCACA,sBAAA,gCpCm4JJ,cR8nBE,iBAAkB,+B4CngLlB,cAAA,2BACE,wBAAA,+BACA,sBAAA,+BpC04JJ,aR8nBE,iBAAkB,8B4C1gLlB,cAAA,0BACE,wBAAA,8BACA,sBAAA,8BpCi5JJ,YR8nBE,iBAAkB,6B4CjhLlB,cAAA,yBACE,wBAAA,6BACA,sBAAA,6BpCw5JJ,cR8nBE,iBAAkB,+B4CxhLlB,cAAA,2BACE,wBAAA,+BACA,sBAAA,+BpC+5JJ,YR8nBE,iBAAkB,6B4C/hLlB,cAAA,yBACE,wBAAA,6BACA,sBAAA,6BpCs6JJ,wCR8nBE,G6C9lLA,sBAAA,MrCs+JF,gCR8nBE,G6CpmLA,sBAAA,M7CwmLF,UQloBA,kBqCh+JA,qBAAA,K7CqmLE,wBAAyB,W6ClmLzB,iBAAA,kBzCkRI,4BAAA,wByChRJ,yBAAA,2BACA,wBAAA,KACA,qBAAA,QACA,6BAAA,MAAA,KAAA,KACA,QAAA,YACA,QAAA,YAGA,QAAA,KAAA,OAAA,0BAAA,SAAA,OACA,UAAA,6BACA,iBAAA,sBzCsQI,cAAA,iCI4tJN,cRsoBE,QAAS,Y6CjmLX,QAAA,YACE,QAAA,KAAA,mBAAA,SAAA,sBAAA,OACA,mBAAA,OAAA,eAAA,O7CsmLA,iB6CtmLA,O7CumLI,c6CvmLJ,OACA,gBAAA,O7CwmLA,S6CxmLA,O7CymLA,MAAO,6B6CxmLP,WAAA,OACA,YAAA,OACA,iBAAA,0BACA,mBAAA,kCACA,WAAA,kC7C2mLF,uCQ5oBA,ccn/JM,mBAAA,KuBYN,WAAA,MrC4+JA,sBR+oBE,iBAAkB,kK6C/mLpB,gBAAA,0BAAA,0BrCq+JA,4BR+oBE,SAAU,QQ3oBZ,0CR+oBE,MAAO,KQ3oBT,uBR+oBE,kBAAmB,GAAG,OAAO,SAAS,qB6C9mLtC,UAAA,GAAA,OAAA,SAAA,qB7CinLF,uCQ9oBA,uBqC/9JM,kBAAA,KAJJ,UAAA,MrCw+JF,YRipBE,sBAAuB,yB8C/qLzB,mBAAA,uBAEE,6BAAA,uBACA,6BAAA,uBACA,8BAAA,wBACA,+BAAA,KACA,+BAAA,SACA,6BAAA,0BACA,mCAAA,qBACA,gCAAA,sBACA,oCAAA,qBACA,iCAAA,uBACA,+BAAA,0BACA,4BAAA,sBACA,6BAAA,KACA,0BAAA,QACA,oCAAA,QACA,QAAA,YACA,QAAA,YAGA,QAAA,KAAA,mBAAA,SAAA,sBAAA,OACA,mBAAA,OAAA,eAAA,O9CirLA,c8CjrLA,E9CkrLA,c8ClrLA,EAGA,cAAA,mCtC8hKF,qBRspBE,gBAAiB,K8C/qLnB,cAAA,Q9CkrLA,8CQppBA,QAAA,uBAAA,KsC1hKE,kBAAA,QtC8hKF,wBRspBE,MAAO,K8CxqLT,MAAA,kCACE,WAAA,QAEA,8B9CyqLF,8BQppBA,QAAA,EsClhKE,MAAA,wCAEE,gBAAA,KACA,iBAAA,qC9CyqLJ,+BQppBA,MAAA,yCsChhKE,iBAAA,sCtCohKF,iBRspBE,SAAU,S8ChqLZ,QAAA,MACE,QAAA,oCAAA,oCACA,MAAA,2BACA,iBAAA,wBACA,OAAA,kCAAA,MAAA,kC9CmqLF,6BQppBA,wBAAA,QsC1gKE,uBAAA,Q9CkqLF,4BQppBA,0BAAA,QsC1gKE,2BAAA,Q9CkqLF,0BO9sLI,0BC0jKJ,MAAA,oCsC1gKE,eAAA,KAEE,iBAAA,iC9CiqLJ,wBQppBA,QAAA,EsCvgKE,MAAA,kCACE,iBAAA,+BACA,aAAA,yC9C+pLJ,kCQppBA,iBAAA,ERupBA,yCQppBA,WAAA,6CsCrgKI,iBAAA,kCtCygKJ,uBRspBE,mBAAoB,W8ChpLlB,sBAAA,OACE,mBAAA,IAAA,eAAA,I9CopLN,qEQvpBA,2BAAA,mCsC1/JQ,uBAAA,E9CqpLR,qEQvpBA,uBAAA,mCsCz/JQ,2BAAA,E9CopLR,+CQvpBA,WAAA,ER0pBA,yDQvpBA,iBAAA,kCsCv/JQ,mBAAA,E9CkpLR,gEQvpBA,aAAA,6CsCv/JU,mBAAA,kCtC2/JV,yBRypBE,0BcxuLE,mBAAA,WgC8DA,sBAAA,OACE,mBAAA,IAAA,eAAA,I9C+qLJ,wEQ1pBA,2BAAA,mCsClhKM,uBAAA,E9CgrLN,wEQ1pBA,uBAAA,mCsCjhKM,2BAAA,E9C+qLN,kDQ1pBA,WAAA,ER6pBA,4DQ1pBA,iBAAA,kCsC/gKM,mBAAA,E9C6qLN,mEQ1pBA,aAAA,6CsC/gKQ,mBAAA,mC9C8qLV,yBQ1pBA,0BMxmKI,mBAAA,WgC8DA,sBAAA,OACE,mBAAA,IAAA,eAAA,I9C0sLJ,wEQ7pBA,2BAAA,mCsC1iKM,uBAAA,E9C2sLN,wEQ7pBA,uBAAA,mCsCziKM,2BAAA,E9C0sLN,kDQ7pBA,WAAA,ERgqBA,4DQ7pBA,iBAAA,kCsCviKM,mBAAA,E9CwsLN,mEQ7pBA,aAAA,6CsCviKQ,mBAAA,mC9CysLV,yBQ7pBA,0BMhoKI,mBAAA,WgC8DA,sBAAA,OACE,mBAAA,IAAA,eAAA,I9CquLJ,wEQhqBA,2BAAA,mCsClkKM,uBAAA,E9CsuLN,wEQhqBA,uBAAA,mCsCjkKM,2BAAA,E9CquLN,kDQhqBA,WAAA,ERmqBA,4DQhqBA,iBAAA,kCsC/jKM,mBAAA,E9CmuLN,mEQhqBA,aAAA,6CsC/jKQ,mBAAA,mC9CouLV,0BQhqBA,0BMxpKI,mBAAA,WgC8DA,sBAAA,OACE,mBAAA,IAAA,eAAA,I9CgwLJ,wEQnqBA,2BAAA,mCsC1lKM,uBAAA,E9CiwLN,wEQnqBA,uBAAA,mCsCzlKM,2BAAA,E9CgwLN,kDQnqBA,WAAA,ERsqBA,4DQnqBA,iBAAA,kCsCvlKM,mBAAA,E9C8vLN,mEQnqBA,aAAA,6CsCvlKQ,mBAAA,mC9C+vLV,0BQnqBA,2BMhrKI,mBAAA,WgC8DA,sBAAA,OACE,mBAAA,IAAA,eAAA,I9C2xLJ,yEQtqBA,2BAAA,mCsClnKM,uBAAA,E9C4xLN,yEQtqBA,uBAAA,mCsCjnKM,2BAAA,E9C2xLN,mDQtqBA,WAAA,ERyqBA,6DQtqBA,iBAAA,kCsC/mKM,mBAAA,E9CyxLN,oEQtqBA,aAAA,6CsC/mKQ,mBAAA,mC9C0xLV,kBQtqBA,cAAA,ERyqBA,mCQtqBA,aAAA,EAAA,EAAA,kCRyqBA,8CQtqBA,oBAAA,EAGA,yBRwqBE,sBAAuB,gC8CjwLvB,mBAAA,4BACE,6BAAA,gCACA,mCAAA,yBACA,gCAAA,gCACA,oCAAA,yBACA,iCAAA,gCACA,6BAAA,4BACA,0BAAA,gCACA,oCAAA,gCtC8lKJ,2BRwqBE,sBAAuB,kC8C9wLvB,mBAAA,8BACE,6BAAA,kCACA,mCAAA,yBACA,gCAAA,kCACA,oCAAA,yBACA,iCAAA,kCACA,6BAAA,8BACA,0BAAA,kCACA,oCAAA,kCtC2mKJ,yBRwqBE,sBAAuB,gC8C3xLvB,mBAAA,4BACE,6BAAA,gCACA,mCAAA,yBACA,gCAAA,gCACA,oCAAA,yBACA,iCAAA,gCACA,6BAAA,4BACA,0BAAA,gCACA,oCAAA,gCtCwnKJ,sBRwqBE,sBAAuB,6B8CxyLvB,mBAAA,yBACE,6BAAA,6BACA,mCAAA,yBACA,gCAAA,6BACA,oCAAA,yBACA,iCAAA,6BACA,6BAAA,yBACA,0BAAA,6BACA,oCAAA,6BtCqoKJ,yBRwqBE,sBAAuB,gC8CrzLvB,mBAAA,4BACE,6BAAA,gCACA,mCAAA,yBACA,gCAAA,gCACA,oCAAA,yBACA,iCAAA,gCACA,6BAAA,4BACA,0BAAA,gCACA,oCAAA,gCtCkpKJ,wBRwqBE,sBAAuB,+B8Cl0LvB,mBAAA,2BACE,6BAAA,+BACA,mCAAA,yBACA,gCAAA,+BACA,oCAAA,yBACA,iCAAA,+BACA,6BAAA,2BACA,0BAAA,+BACA,oCAAA,+BtC+pKJ,uBRwqBE,sBAAuB,8B8C/0LvB,mBAAA,0BACE,6BAAA,8BACA,mCAAA,yBACA,gCAAA,8BACA,oCAAA,yBACA,iCAAA,8BACA,6BAAA,0BACA,0BAAA,8BACA,oCAAA,8BtC4qKJ,sBRwqBE,sBAAuB,6B8C51LvB,mBAAA,yBACE,6BAAA,6BACA,mCAAA,yBACA,gCAAA,6BACA,oCAAA,yBACA,iCAAA,6BACA,6BAAA,yBACA,0BAAA,6BACA,oCAAA,6BtCyrKJ,wBRwqBE,sBAAuB,+B8Cz2LvB,mBAAA,2BACE,6BAAA,+BACA,mCAAA,yBACA,gCAAA,+BACA,oCAAA,yBACA,iCAAA,+BACA,6BAAA,2BACA,0BAAA,+BACA,oCAAA,+BtCssKJ,sBRwqBE,sBAAuB,6B8Ct3LvB,mBAAA,yBACE,6BAAA,6BACA,mCAAA,yBACA,gCAAA,6BACA,oCAAA,yBACA,iCAAA,6BACA,6BAAA,yBACA,0BAAA,6BACA,oCAAA,6BtCmtKJ,WRwqBE,qBAAsB,0B+CrjMxB,kBAAA,yVAEE,uBAAA,IACA,6BAAA,IACA,4BAAA,KACA,6BAAA,EACA,gCAAA,KACA,4BAAA,UAAA,gBAAA,iBACA,mBAAA,YACA,WAAA,YAGA,MAAA,I/CojMA,O+CpjMA,IACA,QAAA,MpC0tD2B,MoCztD3B,MAAA,0BACA,WAAA,YAAA,uBAAA,MAAA,CAAA,IAAA,KAAA,UACA,OAAA,EACA,cAAA,OACA,QAAA,4B/CsjMF,iBQvqBA,MAAA,0BuC14KE,gBAAA,KACE,QAAA,kC/CqjMJ,iBQvqBA,QAAA,EuCz4KE,mBAAA,iCACE,WAAA,iCACA,QAAA,kCACA,oB/CmjMJ,oBQxqBA,eAAA,KuCx4KE,oBAAA,KAEE,iBAAA,KACA,gBAAA,KAAA,YAAA,K/CmjMF,Q+CnjME,qCvC04KJ,iBR6qBE,eAAgB,iC+C9iMlB,OAAA,iCvCq4KA,gCR8qBE,eAAgB,iC+C7iMd,OAAA,iCvCm4KJ,OR+qBE,kBAAmB,KgD5mMrB,qBAAA,QAEE,qBAAA,OACA,mBAAA,OACA,qBAAA,MACA,qBAAA,S5C0RI,cAAA,uB4CvRJ,wBAAA,uBACA,wBAAA,uBACA,yBAAA,wBACA,sBAAA,qBACA,wBAAA,0BACA,qBAAA,kCACA,+BAAA,uBACA,MAAA,0BACA,UAAA,KAGA,UAAA,0BACA,MAAA,sB5C2QI,eAAA,K4CzQJ,iBAAA,mBACA,gBAAA,YACA,OAAA,6BAAA,MAAA,6BACA,mBAAA,2BACA,WAAA,2BACA,cAAA,8BhD4mMF,eQ9qBA,QAAA,ERirBA,kBQ9qBA,QAAA,KAGA,iBRgrBE,kBAAmB,KgDxmMrB,SAAA,SACE,QAAA,uBAEA,MAAA,oBACA,MAAA,iBACA,MAAA,YAAA,UAAA,KAAA,eAAA,KhD4mMF,mCQhrBA,cAAA,wBAGA,cRkrBE,QAAS,YgDxmMX,QAAA,YACE,QAAA,KAAA,kBAAA,OAAA,eAAA,OACA,YAAA,OhD4mMA,QgD5mMA,0BAAA,0BhD6mMA,MAAO,6BgD5mMP,iBAAA,0BACA,gBAAA,YACA,cAAA,6BAAA,MAAA,oCACA,wBAAA,mEACA,uBAAA,mEhD+mMF,yBQprBA,YAAA,sCwCx7KE,aAAA,0BxC47KF,YRsrBE,QAAS,0BgD5mMX,UAAA,WxC27KA,ORsrBE,kBAAmB,KiD7qMrB,iBAAA,MAEE,mBAAA,QACA,kBAAA,OAEA,cAAA,uBACA,wBAAA,YACA,wBAAA,uBACA,yBAAA,2BACA,sBAAA,EAAA,SAAA,QAAA,qCACA,+BAAA,4DACA,4BAAA,QACA,4BAAA,QACA,0BAAA,QAAA,QACA,+BAAA,uBACA,+BAAA,uBACA,6BAAA,IACA,sBAAA,OAEA,+BAAA,uBACA,+BAAA,uBACA,SAAA,MACA,IAAA,EAGA,MAAA,EACA,QAAA,uBACA,QAAA,KACA,MAAA,KACA,OAAA,KACA,WAAA,OACA,WAAA,KACA,QAAA,EzCy/KF,cRsrBE,SAAU,SiDpqMZ,MAAA,KACE,OAAA,uBACA,eAAA,KjDuqMF,0BQprBA,mBAAA,kBAAA,IAAA,SyC7+KE,WAAA,kBAAA,IAAA,S3B5CI,WAAA,UAAA,IAAA,SAAA,WAAA,UAAA,IAAA,QAAA,CAAA,kB2B6CF,IAAA,S3B7CE,kBAAA,mBAAA,UAAA,mBtBqtMN,uCQxrBA,0BczhLM,mBAAA,K2BwCJ,WAAA,MjD+qMF,0BQzrBA,kBAAA,KyCl/KE,UAAA,KjD+qMF,kCQ1rBA,kBAAA,YyCh/KE,UAAA,YzCm/KF,yBR6rBE,OAAQ,wCAEV,wCQ3rBA,WAAA,KyC/+KE,SAAA,OjD8qMF,qCQ3rBA,WAAA,KAGA,uBR6rBE,QAAS,YiDzqMX,QAAA,YACE,QAAA,KAAA,kBAAA,OAAA,eAAA,OACA,YAAA,OjD6qMA,WiD7qMA,wCzCg/KF,eRisBE,SAAU,SiD5qMZ,QAAA,YACE,QAAA,YACA,QAAA,KAAA,mBAAA,SAAA,sBAAA,OACA,mBAAA,OAAA,eAAA,OjDirMA,MiDjrMA,KjDkrMA,MAAO,sBiDjrMP,eAAA,KAEA,iBAAA,mBACA,gBAAA,YACA,OAAA,6BAAA,MAAA,6BACA,cAAA,8BACA,QAAA,EzC++KF,gBRssBE,qBAAsB,KiD7qMxB,iBAAA,yBAEE,sBAAA,KACA,SAAA,MACA,IAAA,EClHA,MAAA,EACA,QAAA,0BACA,MAAA,MACA,OAAA,MACA,iBAAA,sBlDkyMF,qBQpsBA,QAAA,ERusBA,qBQpsBA,QAAA,2BAGA,cRssBE,QAAS,YiDprMX,QAAA,YACE,QAAA,KAAA,kBAAA,EAAA,YAAA,EACA,kBAAA,OAAA,eAAA,OACA,YAAA,OjDyrMA,iBiDzrMA,QjD0rMI,ciD1rMJ,QACA,gBAAA,cjD2rMA,QiD3rMA,+BjD4rMA,ciD5rMA,oCAAA,MAAA,oCACA,wBAAA,oCACA,uBAAA,oCjD8rMF,yBQ3sBA,QAAA,4CAAA,4CyCh/KE,OAAA,6CAAA,KAAA,6CAAA,6CzCo/KF,aR6sBE,cAAe,EiD1rMjB,YAAA,kCzCk/KA,YR6sBE,SAAU,SiDxrMZ,iBAAA,EACE,SAAA,EAAA,EAAA,KAGA,KAAA,EAAA,EAAA,KjDwrMA,QiDxrMA,wBzC6+KF,cR+sBE,QAAS,YiDvrMX,QAAA,YACE,QAAA,KAAA,kBAAA,EAAA,YAAA,EACA,cAAA,KAAA,UAAA,KACA,kBAAA,OAAA,eAAA,OACA,YAAA,OjD6rMA,iBiD7rMA,IjD8rMI,ciD9rMJ,IACA,gBAAA,SjD+rMA,QiD/rMA,gEjDgsMA,iBiDhsMA,0BACA,WAAA,oCAAA,MAAA,oCACA,0BAAA,oCACA,2BAAA,oCjDksMF,gBQrtBA,OAAA,sCAGA,yBRutBE,Oc5yME,kBAAA,QmCkHF,sBAAA,qBjD8rMA,cQrtBA,UAAA,sByCn+KA,YAAA,KACE,aAAA,KjD4rMF,UQrtBA,iBAAA,ORytBF,yBQrtBA,UMpmLI,UmCoIF,iBAAA,OjD2rMF,0BQrtBA,UM1mLI,iBAAA,Qdo0MJ,kBQrtBA,MAAA,MyCz9KI,UAAA,KACE,OAAA,KACA,OAAA,EjDkrMN,iCQrtBA,OAAA,KyCz9KM,OAAA,EACE,cAAA,EzC69KR,gCRqtBA,gCiD7qMM,cAAA,EjDirMN,8BQrtBA,WAAA,KAGA,4BRutBE,0Bc30ME,MAAA,MmCyIA,UAAA,KACE,OAAA,KACA,OAAA,EjDssMJ,yCQrtBA,OAAA,KyC7+KI,OAAA,EACE,cAAA,EjDusMR,wCADE,wCiDjsMI,cAAA,EjDqsMJ,sCQrtBA,WAAA,MRytBF,4BQrtBA,0BMzoLI,MAAA,MmCyIA,UAAA,KACE,OAAA,KACA,OAAA,EjD0tMJ,yCQrtBA,OAAA,KyCjgLI,OAAA,EACE,cAAA,EjD2tMR,wCADE,wCiDrtMI,cAAA,EjDytMJ,sCQrtBA,WAAA,MRytBF,4BQrtBA,0BM7pLI,MAAA,MmCyIA,UAAA,KACE,OAAA,KACA,OAAA,EjD8uMJ,yCQrtBA,OAAA,KyCrhLI,OAAA,EACE,cAAA,EjD+uMR,wCADE,wCiDzuMI,cAAA,EjD6uMJ,sCQrtBA,WAAA,MRytBF,6BQrtBA,0BMjrLI,MAAA,MmCyIA,UAAA,KACE,OAAA,KACA,OAAA,EjDkwMJ,yCQrtBA,OAAA,KyCziLI,OAAA,EACE,cAAA,EjDmwMR,wCADE,wCiD7vMI,cAAA,EjDiwMJ,sCQrtBA,WAAA,MRytBF,6BQrtBA,2BMrsLI,MAAA,MmCyIA,UAAA,KACE,OAAA,KACA,OAAA,EjDsxMJ,0CQrtBA,OAAA,KyC7jLI,OAAA,EACE,cAAA,EjDuxMR,yCADE,yCiDjxMI,cAAA,EjDqxMJ,uCQrtBA,WAAA,MRytBF,SQrtBA,oBAAA,K2CpyLA,uBAAA,MAEE,uBAAA,SACA,uBAAA,UAEA,uBAAA,QACA,mBAAA,kB/CwRI,gBAAA,qB+CtRJ,2BAAA,wBACA,qBAAA,EACA,yBAAA,OACA,0BAAA,OACA,QAAA,yBACA,QAAA,MAGA,OAAA,yBACA,YAAA,0BACA,WAAA,OClBA,YAAA,IAEA,YAAA,IACA,WAAA,MACA,WAAA,MACA,gBAAA,KACA,YAAA,KACA,eAAA,KACA,eAAA,OACA,WAAA,OACA,YAAA,OACA,aAAA,OACA,WAAA,KACA,UAAA,4BACA,UAAA,WhDgRI,QAAA,EJ6vMN,cQrtBA,QAAA,0BRwtBA,wBQrtBA,QAAA,M2C3yLE,MAAA,8BACE,OAAA,+BnDogNJ,gCQrtBA,SAAA,S2C3yLI,QAAA,GACE,aAAA,YACA,aAAA,M3C+yLN,4DAAA,+BRutBE,OAAQ,0CmD9/MR,oEnDggNF,uCQrtBA,IAAA,K2CzyLE,aAAA,+BAAA,yCAAA,EACE,iBAAA,qBAEA,8DnDggNJ,+BQrtBA,KAAA,0CRutBE,MAAO,+BmD9/MT,OAAA,8BAEE,sEnD+/MF,uCmD9/ME,MAAA,KACA,aAAA,yCAAA,+BAAA,yCAAA,E3C0yLF,mBAAA,qB2CvyLI,+DnD+/MJ,kCmD9/MI,IAAA,0C3C2yLJ,uEAAA,0CRutBE,OAAQ,KmD7/MV,aAAA,EAAA,yCAAA,+BAEA,oBAAA,qB3CyyLA,6DAAA,iC2CtyLE,MAAA,0CACE,MAAA,+BACA,OAAA,8B3CyyLJ,qEAAA,yCRutBE,KAAM,KmD3/MR,aAAA,yCAAA,EAAA,yCAAA,+BACA,kBAAA,qBnD8/MA,emD3/ME,UAAA,4B3CuyLF,QAAA,4BAAA,4B2CryLE,MAAA,wBACE,WAAA,OACA,iBAAA,qBACA,cAAA,gCAIJ,SAkBA,oBAAA,KACE,uBAAA,MACA,uBAAA,QACA,gBAAA,uBACA,0BAAA,uBACA,0BAAA,Y5CjGE,2BAAA,wBCu3LJ,iCAAA,uDRutBE,wBAAyB,wBqDjmN3B,8BAAA,OAEE,8BAAA,OACA,8BAAA,SjD4RI,0BAAA,QiD1RJ,uBAAA,sBACA,4BAAA,QACA,4BAAA,OACA,wBAAA,qBACA,yBAAA,KACA,0BAAA,OACA,0BAAA,+BACA,QAAA,yBjDmRI,QAAA,MiDjRJ,UAAA,4BACA,YAAA,0BACA,WAAA,OACA,YAAA,IACA,YAAA,IACA,WAAA,MACA,WAAA,MACA,gBAAA,KAGA,YAAA,KACA,eAAA,KACA,eAAA,ODzBA,WAAA,OAEA,YAAA,OACA,aAAA,OACA,WAAA,KACA,UAAA,4BACA,UAAA,WACA,iBAAA,qBACA,gBAAA,YACA,OAAA,+BAAA,MAAA,+BACA,cAAA,gCpD0nNF,wBoDvnNE,QAAA,MACA,MAAA,8BhDgRI,OAAA,+BiD9PJ,+BrDymNF,gCqDxmNE,SAAA,SACA,QAAA,M9ChBE,QAAA,GCq6LJ,aAAA,Y6Cj5LE,aAAA,MACE,aAAA,E7Cq5LJ,4DAAA,+B6Cj5LI,OAAA,6EAGE,mEAAA,oEAAA,sCrDumNN,uCqDtmNM,aAAA,+BAAA,yCAAA,EAEA,oErDumNN,uCqDtmNM,OAAA,E7Ck5LN,iBAAA,+B6C54LE,mEAAA,sCACE,OAAA,+B7C+4LJ,iBAAA,qB6C34LM,8DrDmmNN,+BQrtBA,KAAA,6E6C34LI,MAAA,+BACE,OAAA,8B7C84LN,qEAAA,sEAAA,sCAAA,uC6C14LI,aAAA,yCAAA,+BAAA,yCAAA,EAEE,sErDimNN,uCQrtBA,KAAA,ERutBE,mBAAoB,+BqD5lNpB,qEAAA,sCACE,KAAA,+BACA,mBAAA,qB7C04LJ,+DAAA,kC6Cv4LI,IAAA,6E7C04LJ,sEAAA,uEAAA,yCAAA,0C6Cr4LI,aAAA,EAAA,yCAAA,+BAEE,uErD4lNN,0CQrtBA,IAAA,E6Cp4LI,oBAAA,+BAEE,sErD2lNN,yCQrtBA,IAAA,+BRutBE,oBAAqB,qBqDrlNrB,wEAAA,2CACE,SAAA,S7Ck4LJ,IAAA,E6Ch4LI,MAAA,IAEE,QAAA,M7Ci4LN,MAAA,8B6C93LI,aAAA,0CACE,QAAA,GACA,cAAA,+BAAA,MAAA,4BAGF,6DAAA,iCACE,MAAA,6EACA,MAAA,+B7C+3LN,OAAA,8B6Cz3LI,oEAAA,qEAAA,wCrDilNJ,yCqDhlNI,aAAA,yCAAA,EAAA,yCAAA,+BAEA,qErDilNJ,yCqDhlNI,MAAA,EACA,kBAAA,+BAEA,oErDilNJ,wCQrtBA,MAAA,+BRutBE,kBAAmB,qBqD7kNnB,gBACE,QAAA,mCAAA,mCACA,cAAA,EACA,UAAA,mC7C03LJ,MAAA,+B6Cx3LI,iBAAA,4BAEE,cAAA,+BAAA,MAAA,+B7Cy3LN,wBAAA,sC6Ct3LI,uBAAA,sCrD+kNJ,sBQrtBA,QAAA,KRytBA,cQrtBA,QAAA,iCAAA,iCRutBE,MAAO,6BAGT,UqDxjNE,SAAA,SrD4jNF,wBqDxjNE,iBAAA,M9C5JE,aAAA,M8C+JF,gBACE,SAAA,S7Cq2LJ,MAAA,KRutBE,SAAU,OAEZ,uBqDxjNE,QAAA,M7Co2LF,MAAA,KRutBE,QAAS,GQntBX,eRutBE,SAAU,SsDhvNZ,QAAA,KACE,MAAA,MtDkvNA,MsDlvNA,K9C4hMF,YAAA,MRwtBE,4BAA6B,OsDjvN/B,oBAAA,OACE,mBAAA,kBAAA,IAAA,YACA,WAAA,kBAAA,IAAA,YACA,WAAA,UAAA,IAAA,Y9C4hMF,WAAA,UAAA,IAAA,WAAA,CAAA,kBAAA,IAAA,YRytBA,uCuDzwNI,eACA,mBAAA,K/CojMJ,WAAA,MR4tBA,oBACA,oBAFA,sBsDnvNE,QAAA,MtD0vNF,0BADA,8CsB1wNM,kBAAA,kBAAA,UAAA,kBtBixNN,4BADA,4CAEE,kBsB7wNM,iBdkjMN,UAAA,iB8CjiMF,8BtDiwNE,QAAS,EACT,4BAA6B,QsD/vN7B,oBAAA,Q9CqiMF,kBAAA,KR6tBU,UAAW,KAGrB,uDACA,qDAFA,qCQ1tBA,QAAA,ER8tBE,QAAS,EAGX,yCADA,2CAEE,QsDlwNA,E9CqiMF,QAAA,ER+tBE,mBAAoB,QAAQ,GAAG,IsD3vN/B,WAAA,QAAA,GAAA,ItD8vNF,uCAEA,yCsD9vNI,2CtD+vNA,mBsD9vNA,K9C+hMJ,WAAA,MRquBA,uBADA,uBQ9tBA,SAAA,S8C3hME,IAAA,EtD6vNA,OAAQ,EsD3vNN,QAAA,EACA,QAAA,YhC5DE,QAAA,YAAA,QAAA,Kd0lMN,kBAAA,OctlMM,eAAA,OgCqDJ,YAAA,OtDqwNA,iBAAkB,OsBzzNZ,cAAA,OAAA,gBAAA,Od0lMN,MAAA,IACF,QAAA,ERmuBE,MAAO,KsD7vNT,WAAA,OtD+vNE,WAAY,IsD7vNZ,OAAA,EACA,QAAA,GACA,mBAAA,QAAA,KAAA,KACA,WAAA,QAAA,KAAA,KtDgwNF,uCAEA,uBsDhwNE,uBtDiwNE,mBsDhwNF,KtDiwNE,WsDjwNF,MtDswNF,6BADA,6BsDpwNE,6BtDmwNF,6BsDhwNE,MAAA,KACA,gBAAA,KACA,QAAA,EACA,QAAA,GtDswNF,uBQxuBA,MAAA,ER4uBA,uBACE,KsB31NM,EgCqFN,4B9C+hMF,4BR4uBE,QAAS,aACT,MAAO,KsD1wNL,OAAA,KACA,kBAAA,UACA,oBAAA,IACA,gB3C0kDiC,KAAA,KXmsKrC,4BsD1wNA,iBAAA,wPtD8wNA,4BsD1wNA,iBAAA,yPtD8wNA,qBsDxwNA,SAAA,StD0wNE,KAAM,EsDxwNN,OAAA,EACA,MAAA,EACA,QAAA,EACA,QAAA,YACA,QAAA,YACA,QAAA,K9CgiMF,iBAAA,OR2uBM,cAAe,OsDxwNrB,gBAAA,OtD0wNE,QAAS,EACT,YAAa,IACb,cAAe,KACf,aAAc,IAEhB,sCACE,mBsDhxNF,YAQA,WAAA,YACE,iBAAA,E9CgiMF,SAAA,EAAA,EAAA,KR2uBU,KAAM,EAAE,EAAE,KsDzwNpB,MAAA,KACE,OAAA,I9CiiMF,QAAA,ER2uBE,YAAa,IsDpwNf,aAAA,IACE,YAAA,OACA,OAAA,QACA,iBAAA,KACA,gBAAA,YACA,OAAA,EACA,WAAA,KAAA,MAAA,YAAA,cAAA,KAAA,MAAA,YAAA,QAAA,GACA,mBAAA,QAAA,IAAA,KtDwwNA,WsDxwNA,QAAA,IAAA,KtD0wNF,uCsDvwNE,sCACA,mBAAA,KACA,WAAA,MtD2wNF,6BACE,QsDzwNE,EtD4wNJ,kBsD1wNI,SAAA,SACA,KAAA,IACA,OAAA,QACA,MAAA,IACA,YAAA,QACA,eAAA,QACA,MAAA,KACA,WAAA,OtD8wNJ,2CACA,2CsDzwNI,e3CwgDiC,UAAA,eWhrD/B,OAAA,UAAA,edmsMN,qDc/rMM,iBAAA,KtBo7NN,iCACE,MsBp7NM,KgCuKN,2DtDixNF,2DW3wKqC,0DHyhJrC,0DRovBE,eAAgB,UAAU,esDzwN5B,OAAA,UAAA,etD4wNA,qEsD1wNE,oEACA,iB3C+/CmC,KX6wKrC,iDW9wKqC,gD2C3/CnC,MAAA,KtD8wNF,gBQpvBA,c8ClhME,QAAA,atDwwNA,MAAO,wBsDtwNL,OAAA,yBtDwwNF,esDxwNE,iC9CqhMJ,cAAA,I8ClhME,kBAAA,kCAAA,OAAA,SAAA,iCACE,UAAA,kC3CvMO,OAAA,SAAA,iCXi9NX,kCQnvBA,GRqvBI,kBAAmB,esDlxNrB,UAAA,gBtDuxNF,0BQpvBA,G8C9hME,kBAAA,eACE,UAAA,gBtDuxNJ,gBQpvBA,mBAAA,KRsvBE,oBAAqB,KwD/+NvB,4BAAA,QxDi/NE,0BAA2B,OwD/+N3B,6BAAA,MACA,4BAAA,eACA,OAAA,+BAAA,MAAA,aACA,kBAAA,YxDm/NF,mBQrvBA,mBAAA,KRuvBE,oBAAqB,KwD9+NvB,0BAAA,MxDk/NA,gCQtvBE,GACF,kBAAA,SRwvBY,UAAW,SwDp/NrB,IAAK,QAAA,ExDw/NH,kBwDx/NG,KhD2vML,UAAA,MRkwBF,wBwDr/NE,GACA,kBAAA,SACA,UAAA,SAIA,IACA,QAAA,EhDuvMF,kBAAA,KR+vBY,UAAW,MAGvB,cwDl/NE,mBAAA,KhDsvMF,oBAAA,KR+vBE,4BAA6B,QwD5+N/B,6BAAA,MACE,4BAAA,axD8+NA,iBwD7+NE,axD8+NF,QAAS,EAGX,iBACE,mBwD9+NE,KxD++NF,oBwD/+NE,KxDk/NJ,uCwDx/NA,gBxD0/NA,cwDx/NI,6BAAA,MxD4/NJ,WwD1/NE,cAAA,cAAA,cAAA,cAAA,exD2/NA,sBwD1/NE,KxD2/NF,qBwD1/NE,MxD2/NF,sBwD3/NE,KhDgvMF,yBAAA,QACF,yBAAA,QgD5uMA,qBAAA,qBAEE,kBAAA,uBACA,4BAAA,uBACA,4BAAA,YACA,0BAAA,EAAA,SAAA,QAAA,qCACA,0BAAA,UAAA,KAAA,YAGA,iCAAA,IxDy/NF,4BwDr/NA,cACE,SAAA,MACA,OAAA,EhD2uMF,QAAA,2BR6wBI,QAAS,YwDp/NX,QAAA,YACE,QAAA,KxDs/NA,mBAAoB,SwDp/NlB,sBAAA,OhD0uMJ,mBAAA,OACF,eAAA,OiD1zMA,UAAA,KAEE,MAAA,0BACA,WAAA,OACA,iBAAA,uBACA,gBAAA,YACA,QAAA,EACA,mBAAA,+BACA,WAAA,gCzDykOF,gEyDrkOE,cACA,mBAAA,KjD2zMF,WAAA,MR+wBA,4BACE,8ByDvjOI,IAAA,EACA,MAAA,EACA,MAAA,0BAAA,YAAA,iCAAA,MAAA,iCAAA,kBAAA,iBACA,UAAA,kBzD6jON,4BACE,4ByD5jOI,IAAA,EACA,KAAA,EACA,MAAA,0BACA,aAAA,iCAAA,MAAA,iCACA,kBAAA,kBnC5BA,UAAA,mBd20MN,4Bcv0MM,4BmCYJ,IAAA,EnCXM,KAAA,EAAA,MAAA,Ed00MN,OAAA,2BACF,WAAA,KMpxMI,cAAA,iCAAA,MAAA,iC2C5BE,kBAAA,kBACE,UAAA,mBzDwkOR,4BACE,+BACE,KAAM,EQnxBR,MAAA,EACF,OAAA,2BM7xMI,WAAA,K2CpBE,WAAA,iCAAA,MAAA,iCACE,kBAAA,iBACA,UAAA,kBzD0kOR,4ByDvkOQ,gCzDwkON,sBQpxBA,kBAAA,KACF,UAAA,MRwxBA,4ByDxkOQ,qBAAA,mBzDykON,sByDxkOM,WAAA,SzD4kOR,yBACE,cACE,sByD1kOI,KjDqzMN,4BAAA,EACF,iBAAA,sBiDnzMM,gCACE,QAAA,KzD6kON,8ByD1kOM,QAAA,YACA,QAAA,YACA,QAAA,KzD4kOJ,iByD5kOI,EjDszMN,kBAAA,EACF,UAAA,EM3zMI,QAAA,E2COE,WAAA,QAEE,iBAAA,uB3CTJ,4B2CYE,cAGE,SAAA,MjDqzMN,OAAA,EACF,QAAA,2BMl1MI,QAAA,Y2C/BF,QAAA,YAiEM,QAAA,KACA,mBAAA,SACA,sBAAA,OjDozMN,mBAAA,OiDlzMM,eAAA,OACE,UAAA,KjDozMR,MAAA,0BiDjzMM,WAAA,OACE,iBAAA,uBAAA,gBAAA,YAAA,QAAA,EACA,mBAAA,+BzD6kON,WyD7kOM,gCzDglOV,gEACE,cQ3xBA,mBAAA,KACF,WAAA,MR+xBA,4BACE,8ByD/pOI,IAAA,EACA,MAAA,EACA,MAAA,0BAAA,YAAA,iCAAA,MAAA,iCAAA,kBAAA,iBACA,UAAA,kBzDqqON,4BACE,4ByDpqOI,IAAA,EACA,KAAA,EACA,MAAA,0BACA,aAAA,iCAAA,MAAA,iCACA,kBAAA,kBnC5BA,UAAA,mBdm6MN,4Bc/5MM,4BmCYJ,IAAA,EnCXM,KAAA,EAAA,MAAA,Edk6MN,OAAA,2BACF,WAAA,KM52MI,cAAA,iCAAA,MAAA,iC2C5BE,kBAAA,kBACE,UAAA,mBzDgrOR,4BACE,+BACE,KAAM,EQnyBR,MAAA,EACF,OAAA,2BMr3MI,WAAA,K2CpBE,WAAA,iCAAA,MAAA,iCACE,kBAAA,iBACA,UAAA,kBzDkrOR,4ByD/qOQ,gCzDgrON,sBQpyBA,kBAAA,KACF,UAAA,MRwyBA,4ByDhrOQ,qBAAA,mBzDirON,sByDhrOM,WAAA,SzDorOR,yBACE,cACE,sByDlrOI,KjD64MN,4BAAA,EACF,iBAAA,sBiD34MM,gCACE,QAAA,KzDqrON,8ByDlrOM,QAAA,YACA,QAAA,YACA,QAAA,KzDorOJ,iByDprOI,EjD84MN,kBAAA,EACF,UAAA,EMn5MI,QAAA,E2COE,WAAA,QAEE,iBAAA,uB3CTJ,4B2CYE,cAGE,SAAA,MjD64MN,OAAA,EACF,QAAA,2BM16MI,QAAA,Y2C/BF,QAAA,YAiEM,QAAA,KACA,mBAAA,SACA,sBAAA,OjD44MN,mBAAA,OiD14MM,eAAA,OACE,UAAA,KjD44MR,MAAA,0BiDz4MM,WAAA,OACE,iBAAA,uBAAA,gBAAA,YAAA,QAAA,EACA,mBAAA,+BzDqrON,WyDrrOM,gCzDwrOV,gEACE,cQ3yBA,mBAAA,KACF,WAAA,MR+yBA,4BACE,8ByDvwOI,IAAA,EACA,MAAA,EACA,MAAA,0BAAA,YAAA,iCAAA,MAAA,iCAAA,kBAAA,iBACA,UAAA,kBzD6wON,4BACE,4ByD5wOI,IAAA,EACA,KAAA,EACA,MAAA,0BACA,aAAA,iCAAA,MAAA,iCACA,kBAAA,kBnC5BA,UAAA,mBd2/MN,4Bcv/MM,4BmCYJ,IAAA,EnCXM,KAAA,EAAA,MAAA,Ed0/MN,OAAA,2BACF,WAAA,KMp8MI,cAAA,iCAAA,MAAA,iC2C5BE,kBAAA,kBACE,UAAA,mBzDwxOR,4BACE,+BACE,KAAM,EQnzBR,MAAA,EACF,OAAA,2BM78MI,WAAA,K2CpBE,WAAA,iCAAA,MAAA,iCACE,kBAAA,iBACA,UAAA,kBzD0xOR,4ByDvxOQ,gCzDwxON,sBQpzBA,kBAAA,KACF,UAAA,MRwzBA,4ByDxxOQ,qBAAA,mBzDyxON,sByDxxOM,WAAA,SzD4xOR,yBACE,cACE,sByD1xOI,KjDq+MN,4BAAA,EACF,iBAAA,sBiDn+MM,gCACE,QAAA,KzD6xON,8ByD1xOM,QAAA,YACA,QAAA,YACA,QAAA,KzD4xOJ,iByD5xOI,EjDs+MN,kBAAA,EACF,UAAA,EM3+MI,QAAA,E2COE,WAAA,QAEE,iBAAA,uB3CTJ,6B2CYE,cAGE,SAAA,MjDq+MN,OAAA,EACF,QAAA,2BMlgNI,QAAA,Y2C/BF,QAAA,YAiEM,QAAA,KACA,mBAAA,SACA,sBAAA,OjDo+MN,mBAAA,OiDl+MM,eAAA,OACE,UAAA,KjDo+MR,MAAA,0BiDj+MM,WAAA,OACE,iBAAA,uBAAA,gBAAA,YAAA,QAAA,EACA,mBAAA,+BzD6xON,WyD7xOM,gCzDgyOV,iEACE,cQ3zBA,mBAAA,KACF,WAAA,MR+zBA,6BACE,8ByD/2OI,IAAA,EACA,MAAA,EACA,MAAA,0BAAA,YAAA,iCAAA,MAAA,iCAAA,kBAAA,iBACA,UAAA,kBzDq3ON,6BACE,4ByDp3OI,IAAA,EACA,KAAA,EACA,MAAA,0BACA,aAAA,iCAAA,MAAA,iCACA,kBAAA,kBnC5BA,UAAA,mBdmlNN,6Bc/kNM,4BmCYJ,IAAA,EnCXM,KAAA,EAAA,MAAA,EdklNN,OAAA,2BACF,WAAA,KM5hNI,cAAA,iCAAA,MAAA,iC2C5BE,kBAAA,kBACE,UAAA,mBzDg4OR,6BACE,+BACE,KAAM,EQn0BR,MAAA,EACF,OAAA,2BMriNI,WAAA,K2CpBE,WAAA,iCAAA,MAAA,iCACE,kBAAA,iBACA,UAAA,kBzDk4OR,6ByD/3OQ,gCzDg4ON,sBQp0BA,kBAAA,KACF,UAAA,MRw0BA,6ByDh4OQ,qBAAA,mBzDi4ON,sByDh4OM,WAAA,SzDo4OR,0BACE,cACE,sByDl4OI,KjD6jNN,4BAAA,EACF,iBAAA,sBiD3jNM,gCACE,QAAA,KzDq4ON,8ByDl4OM,QAAA,YACA,QAAA,YACA,QAAA,KzDo4OJ,iByDp4OI,EjD8jNN,kBAAA,EACF,UAAA,EMnkNI,QAAA,E2COE,WAAA,QAEE,iBAAA,uB3CTJ,6B2CYE,eAGE,SAAA,MjD6jNN,OAAA,EACF,QAAA,2BM1lNI,QAAA,Y2C/BF,QAAA,YAiEM,QAAA,KACA,mBAAA,SACA,sBAAA,OjD4jNN,mBAAA,OiD1jNM,eAAA,OACE,UAAA,KjD4jNR,MAAA,0BiDzjNM,WAAA,OACE,iBAAA,uBAAA,gBAAA,YAAA,QAAA,EACA,mBAAA,+BzDq4ON,WyDr4OM,gCzDw4OV,iEACE,eQ30BA,mBAAA,KACF,WAAA,MR+0BA,6BACE,+ByDv9OI,IAAA,EACA,MAAA,EACA,MAAA,0BAAA,YAAA,iCAAA,MAAA,iCAAA,kBAAA,iBACA,UAAA,kBzD69ON,6BACE,6ByD59OI,IAAA,EACA,KAAA,EACA,MAAA,0BACA,aAAA,iCAAA,MAAA,iCACA,kBAAA,kBnC5BA,UAAA,mBd2qNN,6BcvqNM,6BmCYJ,IAAA,EnCXM,KAAA,EAAA,MAAA,Ed0qNN,OAAA,2BACF,WAAA,KMpnNI,cAAA,iCAAA,MAAA,iC2C5BE,kBAAA,kBACE,UAAA,mBzDw+OR,6BACE,gCACE,KAAM,EQn1BR,MAAA,EACF,OAAA,2BM7nNI,WAAA,K2CpBE,WAAA,iCAAA,MAAA,iCACE,kBAAA,iBACA,UAAA,kBzD0+OR,6ByDv+OQ,iCzDw+ON,uBQp1BA,kBAAA,KACF,UAAA,MRw1BA,6ByDx+OQ,sBAAA,oBzDy+ON,uByDx+OM,WAAA,SzD4+OR,0BACE,eACE,sByD1+OI,KjDqpNN,4BAAA,EACF,iBAAA,sBiDnpNM,iCACE,QAAA,KzD6+ON,+ByD1+OM,QAAA,YACA,QAAA,YACA,QAAA,KzD4+OJ,iByD5+OI,EjDspNN,kBAAA,EACF,UAAA,EM3pNI,QAAA,E2COE,WAAA,QAEE,iBAAA,uB3CTJ,W2CYE,SAAA,MzD++OJ,OyD5+OM,EjDqpNN,QAAA,2BACF,QAAA,YMlrNI,QAAA,Y2C/BF,QAAA,KzD4iPA,mByD3+OM,SzD4+ON,sByD3+OM,OACA,mBAAA,OjDopNN,eAAA,OiDlpNM,UAAA,KzD4+ON,MyD3+OQ,0BjDopNR,WAAA,OiDjpNM,iBAAA,uBzD2+ON,gByD1+OQ,YzD2+OR,QyD3+OQ,EzD4+OR,mByD5+OQ,+BzD6+OR,WyD5+OQ,+BzD8+OV,uCACE,WyD7+OQ,mBAAA,KAEA,WAAA,MzDg/OV,2ByD/jPE,IAAA,EAEI,MAAA,EACA,MAAA,0BACA,YAAA,iCAAA,MAAA,iCACA,kBAAA,iBAAA,UAAA,iBzDkkPN,yByDjkPM,IAAA,EzDmkPJ,KyDnkPI,EzDokPJ,MAAO,0ByDnkPH,aAAA,iCAAA,MAAA,iCACA,kBAAA,kBACA,UAAA,kBzDskPN,yByDnkPM,IAAA,EnC5BA,KAAA,EAAA,MAAA,EdiwNN,OAAA,2Bc7vNM,WAAA,KmCYJ,cAAA,iCAAA,MAAA,iCzDslPA,kBsBjmPM,kBAAA,UAAA,kBdiwNR,4BiDtuNM,KAAA,EACE,MAAA,EACA,OAAA,2BACA,WAAA,KACA,WAAA,iCAAA,MAAA,iCACA,kBAAA,iBAAA,UAAA,iBAGF,6BAAA,mBACE,kBAAA,KACA,UAAA,KAEA,kBAAA,gBzD0kPR,mByDzkPQ,WAAA,QAGF,oBACE,SAAA,MACA,IAAA,EACA,MAAA,EACA,QAAA,KACA,MAAA,MACA,OAAA,MACA,iBAAA,yBjDsuNR,yBiDnuNM,QAAA,EzD4kPN,yByDzkPQ,QAAA,IzD6kPR,kBACE,QyD3kPM,YjDquNR,QAAA,YiDluNM,QAAA,KAEE,kBAAA,OzD0kPF,eyD1kPE,OjDmuNR,YAAA,OiDhuNM,iBAAA,QAGE,cAAA,QjDguNR,gBAAA,cRy2BE,QAAS,8BAA8B,8BAEzC,6BkDnqPE,QAAA,yCAAA,yCACA,WAAA,0CACA,YvCgrCkC,0CuC/qClC,cAAA,0C1C+zNF,iB0C1zNE,cAAA,EAAS,YAAA,sClDuqPX,gBQv2BA,iBAAA,ERy2BM,kBAAmB,EyD1jPzB,UAAA,EACE,QAAA,8BAAA,8BAAA,WAAA,KzD+jPF,aACE,QyD/jPA,aACA,WAAA,IzDgkPA,eyDhkPA,OzDikPA,OyDjkPA,KACA,iBAAA,ajDotNF,QAAA,GRg3BA,yByDhkPI,QAAA,aACA,QAAA,GzDokPJ,gByD/jPA,WAAA,KjDqtNA,gBR+2BE,WAAY,KAGd,gBACE,WyDlkPA,MjDqtNF,+BRi3BE,kBAAmB,iBAAiB,GAAG,YAAY,S0DptPrD,UAAA,iBAAA,GAAA,YAAA,S1DwtPA,oC0DptPE,IACA,QAAA,I1DytPF,4B0DptPI,IlDs2NJ,QAAA,IRm3BA,kBQ/2BA,mBAAA,6DRi3BU,WAAY,6D0DltPtB,kBAAA,KAAA,KACE,UAAA,KAAA,KlDo2NF,kBAAA,iBAAA,GAAA,OAAA,SRi3BU,UAAW,iBAAiB,GAAG,OAAO,SQ72BhD,oCRi3BE,K0DhtPA,sBAAA,MAAA,EACE,cAAA,MAAA,GAIJ,4BACE,KACE,sB/Cu1CgC,MAAA,EH0gLlC,cAAA,MAAA,GkDn2NF,iBACE,QAAA,M1DwtPA,M0DvtPE,KlDi2NF,QAAA,GR03BF,iBACE,MAAO,e0DttPP,iBAAA,iD1D0tPF,mBQz3BA,MAAA,eR23BE,iBAAkB,mDAGpB,iBACE,MAAO,eQ13BP,iBAAA,kDkDl2NF,cACE,MAAA,e1DiuPA,iB0DhuPE,kDlDi2NJ,iB+C/4NE,MAAA,eACE,iBAAA,kD/Cm5NJ,gBRm4BE,MAAO,e2DtxPP,iBAAA,iDnDw5NF,eRm4BE,MAAO,kB2D3xPP,iBAAA,mDnD65NF,cRm4BE,MAAO,e2DhyPP,iBAAA,iDnDk6NF,gBRm4BE,MAAO,e2DryPP,iBAAA,kDnDu6NF,cRm4BE,MAAO,e2D1yPP,iBAAA,mDnD46NF,cRm4BE,MAAO,+D2D/yPP,sBAAA,yEAEE,oB3DgzPJ,oBQj4BA,MAAA,mDRm4BE,sBAAuB,6DAGzB,gBQj4BA,MAAA,iERm4BE,sBAAuB,2E2DxzPrB,sB3D0zPJ,sB2DzzPI,MAAA,mDnDy7NJ,sBAAA,6DRq4BA,c2D9zPI,MAAA,+DnD87NJ,sBAAA,yEmDh8NE,oBAAA,oBACE,MAAA,oDACA,sBAAA,8DCHF,WACE,MAAA,4DACA,sBAAA,sEAGE,iBAAA,iBAGE,MAAA,oDACA,sBAAA,8DATN,cACE,MAAA,+DACA,sBAAA,yEAGE,oBAAA,oBAGE,MAAA,oDACA,sBAAA,8DATN,aACE,MAAA,8DACA,sBAAA,wEAGE,mBAAA,mBAGE,MAAA,mDACA,sBAAA,6DATN,YACE,MAAA,6DACA,sBAAA,uEAGE,kBAAA,kBAGE,MAAA,qDACA,sBAAA,+DATN,WACE,MAAA,4DACA,sBAAA,sEAGE,iBAAA,iBAGE,MAAA,kDACA,sBAAA,4DATN,aACE,MAAA,8DACA,sBAAA,wEAGE,mBAAA,mBAGE,MAAA,oDACA,sBAAA,8DATN,WACE,MAAA,4DACA,sBAAA,sEAGE,iBAAA,iBAGE,MAAA,oDACA,sBAAA,8DATN,oBACE,MAAA,sEACA,sBAAA,gFAGE,0BAAA,0BAGE,MAAA,wEACA,sBAAA,kFATN,kBACE,QAAA,EACA,mBAAA,yBAAA,yBAAA,4BAAA,2BAAA,2BpDihOJ,WAAA,yBAAA,yBAAA,4BAAA,2BAAA,2BRq4BA,WQj4BA,QAAA,mBRm4BE,QAAS,mB4D15PT,QAAA,YACE,IAAA,QACA,kBAAA,OpD0hOJ,eAAA,OoDvhOM,YAAA,OAGE,sBAAA,yDACA,sBAAA,MpDuhOR,4BAAA,ORm4BU,oBAAqB,OAE/B,e4Dn5PE,kBAAA,EpDmhOF,YAAA,EoDhhOI,MAAA,IAEE,OAAA,IACA,KAAA,apDihON,mBAAA,IAAA,YAAA,URm4BE,WAAY,IAAK,YAAY,UAE/B,uC6D76PE,e7D+6PE,mB6D/6PF,KrD6iOF,WAAA,MsD/iOE,mC9Ds7PF,2B8Dt7PE,kBAAA,sDACA,UnDugB4B,sDXm7O9B,O8Dx7PE,SAAA,SACA,MAAA,K9D27PF,eQv4BA,QAAA,MsDjjOE,YAAA,uBACE,QAAA,G9D47PJ,S8D17PI,SAAA,SACA,IAAA,ExCIE,MAAA,EAAA,MAAA,KdgjON,OAAA,KR64BA,WACE,kBsBz7PM,KtB47PR,W8D77PI,kBAAA,ItDqjOJ,YR64BE,kBAAmB,OAGrB,YQ34BA,kBAAA,eR+4BA,W+Dp9PI,SAAA,MvD0kOJ,IAAA,EuDvkOE,KAAA,EACE,MAAA,EACA,QAAA,K/Du9PJ,cQ34BA,SAAA,MR64BE,KAAM,E+Dj9PN,OAAA,EACE,MAAA,EvDukOJ,QAAA,KR+4BA,YQ34BA,SAAA,OR64BE,IAAK,E+Dz9PL,QAAA,K/D69PF,e+D79PE,SAAA,OACE,OAAA,EvDmlOJ,QAAA,KR+4BA,yBgEr/PE,eACA,SAAA,OACA,IAAA,EACA,QAAA,KhEw/PA,kBgEr/PF,SAAA,OACE,OAAA,EACA,QAAA,MhEy/PF,yBQ34BA,eR64BI,SAAU,OgEh/PV,IAAA,EACE,QAAA,KAEA,kBxDsmON,SAAA,OR64BI,OAAQ,EgEh/PR,QAAA,MhEo/PJ,yBQ34BA,eR64BI,SAAU,Ocp9PV,IAAA,EkDxCA,QAAA,KhEggQF,kBgE7/PI,SAAA,OxDmnOJ,OAAA,EwDhnOE,QAAA,MhEggQJ,0BQ34BE,eACF,SAAA,OMplOI,IAAA,EkDxCA,QAAA,KhE4gQF,kBgEzgQI,SAAA,OxD+nOJ,OAAA,EwD5nOE,QAAA,MhE4gQJ,0BQ34BE,gBACF,SAAA,OMhmOI,IAAA,EkDxCA,QAAA,KhEwhQF,mBgErhQI,SAAA,OxD2oOJ,OAAA,EwDxoOE,QAAA,MhEwhQJ,QQ34BE,QAAA,YACF,QAAA,YM5mOI,QAAA,KkDxCA,mBAAA,WhEmiQF,sBgEliQI,OACA,mBAAA,IACA,erDypC8B,IH8/LlC,kBAAA,OwDppOE,eAAA,OACE,YAAA,OhEkiQJ,oBgEjiQI,QACA,WrDmpC8B,QGpnChC,QkDxCA,QAAA,YhE+iQF,QgE9iQI,YhE+iQJ,QgE9iQI,KhE+iQJ,iBWr5NkC,EH0gMlC,SAAA,EAAA,EAAA,KwDhqOE,KAAA,EAAA,EAAA,KhE8iQF,mBgE7iQI,ShE8iQJ,sBgE7iQI,OACA,mBrDmpC8B,OH+gMlC,eAAA,OACF,oBAAA,QyDlsOA,WAAA,QjEklQA,iBACA,0DiEjlQE,MAAA,cjEmlQA,OiEnlQA,cjEolQA,QiEplQA,YACA,OAAA,ejEqlQA,SiErlQA,iBjEslQA,KAAM,wBiErlQN,YAAA,iBjEulQA,OiEvlQA,YAGF,uEjEslQA,8BiErlQE,SAAA,mBjE0lQF,uBACE,SiE1lQA,SjE2lQA,IAAK,EiE1lQL,KAAA,EAAA,OAAA,EjE6lQA,MiE7lQA,EjE8lQA,QiE9lQA,EACA,QAAA,GjEimQF,ekEzmQA,SAAA,OlE2mQE,cAAe,SmEvmQf,YAAA,OnE2mQF,ImEvmQE,QAAA,aACA,oBAAA,QACA,WAAA,QACA,MAAA,I3D6sOF,WAAA,I2D1sOE,iBAAA,anEwmQA,QAAS,EAGX,gBoExnQE,eAAA,mBpE4nQF,WoExnQI,eAAA,cpE4nQJ,cQ35BA,eAAA,iBR+5BA,cqEpoQE,eAAA,iBrEwoQF,mBsE7oQA,eAAA,sBtEipQA,gBsE9oQE,eAAA,mBtEkpQF,aQ55BA,MAAA,gBRg6BA,WQ55BA,MAAA,eRg6BA,YQ55BA,MAAA,eRg6BA,oBQ55BA,cAAA,kBR85BK,WAAY,kBQ15BjB,kBR85BE,cAAe,gBuErmQT,WAAA,gBvEymQR,iBuEzmQQ,cAAA,eAOI,WAAA,eAPJ,kBAOI,cAAA,qB/D4sOZ,WAAA,qBRg6BA,iBQ55BA,cAAA,eR85BK,WAAY,eQ15BjB,WR85BE,QAAS,YAGX,YQ75BA,QAAA,cRi6BA,YACE,QuE1nQU,aAPJ,YAOI,QAAA,cvEioQZ,auExoQQ,QAAA,Y/D2uOR,eRk6BE,SAAU,eAGZ,iBQj6BA,SAAA,iBRq6BA,kBQj6BA,SAAA,kBRq6BA,iBQj6BA,SAAA,iBRq6BA,iBQj6BA,WAAA,eRq6BA,mBQj6BA,WAAA,iBRq6BA,oBQj6BA,WAAA,kBRq6BA,mBQj6BA,WAAA,iBRq6BA,iBQj6BA,WAAA,eRq6BA,mBQj6BA,WAAA,iBRq6BA,oBQj6BA,WAAA,kBRq6BA,mBQj6BA,WAAA,iBRq6BA,UQj6BA,QAAA,iBRq6BA,gBQj6BA,QAAA,uBRq6BA,SQj6BA,QAAA,gBRq6BA,QQj6BA,QAAA,eRq6BA,eQj6BA,QAAA,sBRq6BA,SQj6BA,QAAA,gBRq6BA,aQj6BA,QAAA,oBRq6BA,cQj6BA,QAAA,qBRq6BA,QQj6BA,QAAA,sBRm6BE,QAAS,sBuE9tQH,QAAA,evEkuQR,euEluQQ,QAAA,6BAOI,QAAA,6B/D4zOZ,QAAA,sBRq6BA,QQj6BA,QAAA,eRq6BA,QQj6BA,mBAAA,KAAA,IAAA,IAAA,4BRm6BU,WAAY,KAAK,IAAI,IAAI,4BQ/5BnC,WRm6BE,mBAAoB,EAAE,QAAS,OAAQ,6CuElvQjC,WAAA,EAAA,QAAA,OAAA,6CvEsvQR,WuEtvQQ,mBAAA,EAAA,IAAA,IAAA,EAAA,4BAOI,WAAA,EAAA,IAAA,IAAA,EAAA,4B/Dg1OZ,aRq6BE,mBAAoB,euE5vQd,WAAA,evEgwQR,oBQr6BA,sBAAA,0DRy6BA,sBQr6BA,sBAAA,4DRy6BA,oBACE,sBuElwQU,0DAPJ,iBAOI,sBAAA,uDvEywQZ,oBuEhxQQ,sBAAA,0D/D22OR,mBR06BE,sBAAuB,yDAGzB,kBQz6BA,sBAAA,wDR66BA,iBQz6BA,sBAAA,uDR66BA,mBQz6BA,sBAAA,yDR66BA,iBQz6BA,sBAAA,uDR66BA,iBQz6BA,SAAA,iBR66BA,mBQz6BA,SAAA,mBR66BA,mBQz6BA,SAAA,mBR66BA,gBQz6BA,SAAA,gBR66BA,iBQz6BA,SAAA,iBR66BA,OQz6BA,IAAA,YR66BA,QQz6BA,IAAA,cR66BA,SQz6BA,IAAA,eR66BA,UQz6BA,OAAA,YR66BA,WQz6BA,OAAA,cR66BA,YQz6BA,OAAA,eR66BA,SQz6BA,MAAA,YR66BA,UQz6BA,MAAA,cR66BA,WQz6BA,MAAA,eR66BA,OQz6BA,KAAA,YR66BA,QQz6BA,KAAA,cR66BA,SQz6BA,KAAA,eR66BA,kBQz6BA,kBAAA,8BR26BU,UAAW,8BQv6BrB,oBR26BE,kBAAmB,0BuEl3Qb,UAAA,0BvEs3QR,oBuEt3QQ,kBAAA,2BAOI,UAAA,2BAPJ,QAOI,OAAA,uBAAA,uBAAA,iCAPJ,UAOI,OAAA,YAPJ,YAOI,WAAA,uBAAA,uBAAA,iCAPJ,cAOI,WAAA,YvEo4QZ,YuE34QQ,YAAA,uBAAA,uBAAA,iC/Dm+OR,cR66BE,YAAa,YAGf,eQ56BA,cAAA,uBAAA,uBAAA,iCRg7BA,iBQ56BA,cAAA,YRg7BA,cQ56BA,aAAA,uBAAA,uBAAA,iCRg7BA,gBQ56BA,aAAA,YRg7BA,gBQ56BA,oBAAA,ER86BE,aAAc,+DQ16BhB,kBR86BE,oBAAqB,EuEz6Qf,aAAA,iEvE66QR,gBuE76QQ,oBAAA,EAOI,aAAA,+DAPJ,aAOI,oBAAA,E/DggPZ,aAAA,4DRg7BA,gBQ56BA,oBAAA,ER86BE,aAAc,+DQ16BhB,eR86BE,oBAAqB,EuE77Qf,aAAA,8D/DohPR,cR86BE,oBAAqB,EuEl8Qf,aAAA,6D/DyhPR,aR86BE,oBAAqB,EuEv8Qf,aAAA,4D/D8hPR,eR86BE,oBAAqB,EuE58Qf,aAAA,8D/DmiPR,aR86BE,oBAAqB,EuEj9Qf,aAAA,4D/DwiPR,cR86BE,oBAAqB,EuEt9Qf,aAAA,6D/D6iPR,cR86BE,oBAAqB,EuE39Qf,aAAA,6D/DkjPR,uBR86BE,aAAc,0CAGhB,yBQ56BA,aAAA,4CRg7BA,uBuEh+QY,aAAA,0CAPJ,oBAIQ,aAAA,uCvE2+QhB,uBuE/+QQ,aAAA,0C/DskPR,sBR86BE,aAAc,yCAGhB,qBQ56BA,aAAA,wCRg7BA,oBQ56BA,aAAA,uCRg7BA,UQ56BA,aAAA,cRg7BA,UQ56BA,aAAA,cRg7BA,UQ56BA,aAAA,cRg7BA,UQ56BA,aAAA,cRg7BA,UQ56BA,aAAA,cRg7BA,mBQ56BA,oBAAA,IRg7BA,mBQ56BA,oBAAA,KRg7BA,mBQ56BA,oBAAA,IRg7BA,mBQ56BA,oBAAA,KRg7BA,oBQ56BA,oBAAA,ERg7BA,MQ56BA,MAAA,cRg7BA,MQ56BA,MAAA,cRg7BA,MQ56BA,MAAA,cRg7BA,OQ56BA,MAAA,eRg7BA,QQ56BA,MAAA,eRg7BA,QQ56BA,UAAA,eRg7BA,QQ56BA,MAAA,gBRg7BA,YQ56BA,UAAA,gBRg7BA,MQ56BA,OAAA,cRg7BA,MQ56BA,OAAA,cRg7BA,MQ56BA,OAAA,cRg7BA,OQ56BA,OAAA,eRg7BA,QQ56BA,OAAA,eRg7BA,QQ56BA,WAAA,eRg7BA,QQ56BA,OAAA,gBRg7BA,YQ56BA,WAAA,gBRg7BA,WQ56BA,iBAAA,YR86BM,SAAU,EAAE,EAAE,euEzmRZ,KAAA,EAAA,EAAA,evE6mRR,UuE7mRQ,mBAAA,qBAOI,sBAAA,iB/D4rPZ,mBAAA,cR86BU,eAAgB,cQ16B1B,aR86BE,mBAAoB,mBuErnRd,sBAAA,iBAOI,mBAAA,iB/DosPZ,eAAA,iBRg7BA,kBQ56BA,mBAAA,qBR86BE,sBAAuB,kBuE7nRjB,mBAAA,sBAOI,eAAA,sBAPJ,qBAOI,mBAAA,mBvE6nRV,sBuE7nRU,kBvE8nRN,mBuE9nRM,yB/DgtPZ,eAAA,yBRk7BA,auEloRY,iBAAA,YAAA,kBAAA,YAAA,UAAA,YAPJ,aAOI,iBAAA,YAAA,kBAAA,YAAA,UAAA,YvE8oRZ,euErpRQ,kBAAA,YAOI,YAAA,YvEmpRZ,eQv7BA,kBAAA,YRy7BM,YAAa,YAGnB,WACE,cuEzpRU,evE0pRN,UuE1pRM,eAPJ,aAOI,cAAA,iBAAA,UAAA,iBvEkqRZ,mBuEzqRQ,cAAA,uBAOI,UAAA,uB/DwuPZ,uBRg8BE,iBAAkB,gBuE/qRZ,cAAA,gBAOI,gBAAA,qBvE6qRZ,qBuEprRQ,iBAAA,cAOI,cAAA,cAAA,gBAAA,mBAPJ,wBAOI,iBAAA,iBAAA,cAAA,iB/DovPZ,gBAAA,iBRq8BA,yBACE,iBuE1rRU,kB/DwvPZ,cAAA,kBRo8BU,gBAAiB,wBAG3B,wBQn8BA,cAAA,qBRq8BM,gBAAiB,uBAGvB,wBACE,iBuErsRU,uB/DgwPZ,cAAA,uBRu8BU,gBAAiB,uBAG3B,mBACE,kBuE3sRU,gB/DowPZ,eAAA,gBRy8BU,YAAa,qBAGvB,iBACE,kBuEjtRU,c/DwwPZ,eAAA,cR28BU,YAAa,mBAGvB,oBACE,kBuEvtRU,iB/D4wPZ,eAAA,iBR68BU,YAAa,iBAGvB,sBQ58BA,kBAAA,mBR88BM,eAAgB,mBuEruRd,YAAA,mBvEyuRR,qBQ98BA,kBAAA,kBRg9BM,eAAgB,kBuE3uRd,YAAA,kBvE+uRR,qBQh9BA,mBAAA,gBRk9BM,cAAe,qBAGrB,mBACE,mBuE9uRU,c/D4xPZ,cAAA,mBRs9BA,sBACE,mBuEnvRU,iBvEovRN,cuEpvRM,iBAPJ,uBAOI,mBAAA,kBAAA,cAAA,wBvE4vRZ,sBuEnwRQ,mBAAA,qBAOI,cAAA,uB/DwyPZ,uBR09BE,mBAAoB,kBuEzwRd,cAAA,kB/DmzPR,iBR29BE,oBAAqB,euE9wRf,WAAA,e/DuzPR,kBR49BE,oBAAqB,gBuEnxRf,WAAA,qB/D2zPR,gBR69BE,oBAAqB,cuExxRf,WAAA,mB/D+zPR,mBR89BE,oBAAqB,iBuE7xRf,WAAA,iB/Dm0PR,qBR+9BE,oBAAqB,mBuElyRf,WAAA,mB/Du0PR,oBRg+BE,oBAAqB,kBuEvyRf,WAAA,kB/D20PR,aRi+BE,0BAA2B,YuE5yRrB,eAAA,aAOI,MAAA,avE0yRZ,SuEjzRQ,0BAAA,YAOI,eAAA,YAAA,MAAA,YAPJ,SAOI,0BAAA,YAAA,eAAA,Y/Dg1PZ,MAAA,YRs+BA,SACE,0BuEvzRU,Y/Do1PZ,eAAA,YRq+BU,MAAO,YAGjB,SQp+BA,0BAAA,YRs+BM,eAAgB,YuEr0Rd,MAAA,YvEy0RR,SQt+BA,0BAAA,YRw+BM,eAAgB,YuE30Rd,MAAA,YvE+0RR,SQx+BA,0BAAA,YR0+BM,eAAgB,YuEj1Rd,MAAA,YvEq1RR,YQ1+BA,0BAAA,YR4+BM,eAAgB,YuEv1Rd,MAAA,YvE21RR,KQ5+BA,OAAA,YRg/BA,KACE,OuEz1RU,mBvE41RZ,KuEn2RQ,OAAA,kBvEu2RR,KQh/BA,OAAA,kBRo/BA,KACE,OuEr2RU,mBvEw2RZ,KuE/2RQ,OAAA,kBvEm3RR,QQp/BA,OAAA,eRw/BA,MQp/BA,YAAA,YRs/BE,aAAc,YQl/BhB,MRs/BE,YAAa,mBuE73RP,aAAA,mBvEi4RR,MuEj4RQ,YAAA,kBAOI,aAAA,kBAPJ,MAOI,YAAA,kB/D44PZ,aAAA,kBRw/BA,MQp/BA,YAAA,mBRs/BE,aAAc,mBQl/BhB,MRs/BE,YAAa,kBuEj5RP,aAAA,kB/Dg6PR,SRs/BE,YAAa,euEt5RP,aAAA,e/Dq6PR,MRs/BE,WAAY,YuE35RN,cAAA,Y/D06PR,MRs/BE,WAAY,mBuEh6RN,cAAA,mB/D+6PR,MRs/BE,WAAY,kBuEr6RN,cAAA,kB/Do7PR,MRs/BE,WAAY,kBuE16RN,cAAA,kB/Dy7PR,MRs/BE,WAAY,mBuE/6RN,cAAA,mB/D87PR,MRs/BE,WAAY,kBuEp7RN,cAAA,kB/Dm8PR,SRs/BE,WAAY,euEz7RN,cAAA,e/Dw8PR,MRs/BE,WAAY,YAGd,MQp/BA,WAAA,mBRw/BA,MuE97RY,WAAA,kBAPJ,MAOI,WAAA,kBvEs8RZ,MuE78RQ,WAAA,mB/D49PR,MRs/BE,WAAY,kBAGd,SQp/BA,WAAA,eRw/BA,MQp/BA,YAAA,YRw/BA,MQp/BA,YAAA,mBRw/BA,MQp/BA,YAAA,kBRw/BA,MQp/BA,YAAA,kBRw/BA,MQp/BA,YAAA,mBRw/BA,MQp/BA,YAAA,kBRw/BA,SQp/BA,YAAA,eRw/BA,MQp/BA,cAAA,YRw/BA,MQp/BA,cAAA,mBRw/BA,MQp/BA,cAAA,kBRw/BA,MQp/BA,cAAA,kBRw/BA,MQp/BA,cAAA,mBRw/BA,MQp/BA,cAAA,kBRw/BA,SQp/BA,cAAA,eRw/BA,MQp/BA,aAAA,YRw/BA,MQp/BA,aAAA,mBRw/BA,MQp/BA,aAAA,kBRw/BA,MQp/BA,aAAA,kBRw/BA,MQp/BA,aAAA,mBRw/BA,MQp/BA,aAAA,kBRw/BA,SQp/BA,aAAA,eRw/BA,MQp/BA,OAAA,oBRw/BA,MQp/BA,OAAA,mBRw/BA,MQp/BA,OAAA,mBRw/BA,MQp/BA,OAAA,oBRw/BA,MQp/BA,OAAA,mBRw/BA,OQp/BA,YAAA,oBRs/BE,aAAc,oBQl/BhB,ORs/BE,YAAa,mBuEvkSP,aAAA,mBvE2kSR,OuE3kSQ,YAAA,mBAOI,aAAA,mBAPJ,OAOI,YAAA,oB/DslQZ,aAAA,oBRw/BA,OQp/BA,YAAA,mBRs/BE,aAAc,mBQl/BhB,ORs/BE,WAAY,oBuE3lSN,cAAA,oB/D0mQR,ORs/BE,WAAY,mBuEhmSN,cAAA,mB/D+mQR,ORs/BE,WAAY,mBuErmSN,cAAA,mB/DonQR,ORs/BE,WAAY,oBuE1mSN,cAAA,oB/DynQR,ORs/BE,WAAY,mBuE/mSN,cAAA,mB/D8nQR,ORs/BE,WAAY,oBAGd,OQp/BA,WAAA,mBRw/BA,OuEpnSY,WAAA,mBAPJ,OAOI,WAAA,oBvE4nSZ,OuEnoSQ,WAAA,mB/DkpQR,ORs/BE,YAAa,oBAGf,OQp/BA,YAAA,mBRw/BA,OQp/BA,YAAA,mBRw/BA,OQp/BA,YAAA,oBRw/BA,OQp/BA,YAAA,mBRw/BA,OQp/BA,cAAA,oBRw/BA,OQp/BA,cAAA,mBRw/BA,OQp/BA,cAAA,mBRw/BA,OQp/BA,cAAA,oBRw/BA,OQp/BA,cAAA,mBRw/BA,OQp/BA,aAAA,oBRw/BA,OQp/BA,aAAA,mBRw/BA,OQp/BA,aAAA,mBRw/BA,OQp/BA,aAAA,oBRw/BA,OQp/BA,aAAA,mBRw/BA,KQp/BA,QAAA,YRw/BA,KQp/BA,QAAA,mBRw/BA,KQp/BA,QAAA,kBRw/BA,KQp/BA,QAAA,kBRw/BA,KQp/BA,QAAA,mBRw/BA,KQp/BA,QAAA,kBRw/BA,MQp/BA,aAAA,YRs/BE,cAAe,YQl/BjB,MRs/BE,aAAc,mBuEjuSR,cAAA,mBvEquSR,MuEruSQ,aAAA,kBAOI,cAAA,kBAPJ,MAOI,aAAA,kB/DgvQZ,cAAA,kBRw/BA,MQp/BA,aAAA,mBRs/BE,cAAe,mBQl/BjB,MRs/BE,aAAc,kBuErvSR,cAAA,kB/DowQR,MRs/BE,YAAa,YuE1vSP,eAAA,Y/DywQR,MRs/BE,YAAa,mBuE/vSP,eAAA,mB/D8wQR,MRs/BE,YAAa,kBuEpwSP,eAAA,kB/DmxQR,MRs/BE,YAAa,kBuEzwSP,eAAA,kB/DwxQR,MRs/BE,YAAa,mBuE9wSP,eAAA,mB/D6xQR,MRs/BE,YAAa,kBuEnxSP,eAAA,kB/DkyQR,MRs/BE,YAAa,YAGf,MQp/BA,YAAA,mBRw/BA,MuExxSY,YAAA,kBAPJ,MAOI,YAAA,kBvEgySZ,MuEvySQ,YAAA,mB/DszQR,MRs/BE,YAAa,kBAGf,MQp/BA,aAAA,YRw/BA,MQp/BA,aAAA,mBRw/BA,MQp/BA,aAAA,kBRw/BA,MQp/BA,aAAA,kBRw/BA,MQp/BA,aAAA,mBRw/BA,MQp/BA,aAAA,kBRw/BA,MQp/BA,eAAA,YRw/BA,MQp/BA,eAAA,mBRw/BA,MQp/BA,eAAA,kBRw/BA,MQp/BA,eAAA,kBRw/BA,MQp/BA,eAAA,mBRw/BA,MQp/BA,eAAA,kBRw/BA,MQp/BA,cAAA,YRw/BA,MQp/BA,cAAA,mBRw/BA,MQp/BA,cAAA,kBRw/BA,MQp/BA,cAAA,kBRw/BA,MQp/BA,cAAA,mBRw/BA,MQp/BA,cAAA,kBRw/BA,OQp/BA,IAAA,YRw/BA,OQp/BA,IAAA,mBRw/BA,OQp/BA,IAAA,kBRw/BA,OQp/BA,IAAA,kBRw/BA,OQp/BA,IAAA,mBRw/BA,OQp/BA,IAAA,kBRw/BA,WQp/BA,QAAA,YRw/BA,WQp/BA,QAAA,mBRw/BA,WQp/BA,QAAA,kBRw/BA,WQp/BA,QAAA,kBRw/BA,WQp/BA,QAAA,mBRw/BA,WQp/BA,QAAA,kBRw/BA,cQp/BA,mBAAA,YRs/BK,gBAAiB,YuEz6Sd,WAAA,YvE66SR,cuE76SQ,mBAAA,mBAOI,gBAAA,mB/Do7QZ,WAAA,mBRw/BA,cQp/BA,mBAAA,kBRs/BK,gBAAiB,kBuEr7Sd,WAAA,kBvEy7SR,cuEz7SQ,mBAAA,kBAOI,gBAAA,kB/Dg8QZ,WAAA,kBRw/BA,cQp/BA,mBAAA,mBRs/BK,gBAAiB,mBuEj8Sd,WAAA,mBvEq8SR,cQt/BA,mBAAA,kBRw/BK,gBAAiB,kBuEv8Sd,WAAA,kBvE28SR,gBQx/BA,YAAA,mCR4/BA,MACE,UuEz8SU,qCvE48SZ,MuEn9SQ,UAAA,kCvEu9SR,MQ5/BA,UAAA,sCRggCA,MACE,UuEr9SU,qBvEw9SZ,MuE/9SQ,UAAA,iBvEm+SR,MQhgCA,UAAA,oBRogCA,YQhgCA,WAAA,iBRogCA,YQhgCA,WAAA,iBRogCA,YQhgCA,YAAA,kBRogCA,UQhgCA,YAAA,cRogCA,WQhgCA,YAAA,cRogCA,WQhgCA,YAAA,cRogCA,aQhgCA,YAAA,cRogCA,SQhgCA,YAAA,cRogCA,WQhgCA,YAAA,iBRogCA,MQhgCA,YAAA,YRogCA,OQhgCA,YAAA,eRogCA,SQhgCA,YAAA,cRogCA,OQhgCA,YAAA,YRogCA,YQhgCA,WAAA,gBRogCA,UQhgCA,WAAA,eRogCA,aQhgCA,WAAA,iBRogCA,sBQhgCA,gBAAA,eRogCA,2BQhgCA,gBAAA,oBRogCA,8BQhgCA,gBAAA,uBRogCA,gBQhgCA,eAAA,oBRogCA,gBQhgCA,eAAA,oBRogCA,iBQhgCA,eAAA,qBRogCA,WQhgCA,YAAA,iBRogCA,aQhgCA,YAAA,iB+DnkRQ,cAOI,kBAAA,E/DgkRZ,MAAA,6DRogCA,gBQhgCA,kBAAA,ERkgCE,MAAO,+DQ9/BT,cRkgCE,kBAAmB,EuEjlTb,MAAA,6DvEqlTR,WuErlTQ,kBAAA,EAOI,MAAA,0DAPJ,cAOI,kBAAA,E/DolRZ,MAAA,6DRogCA,aQhgCA,kBAAA,ERkgCE,MAAO,4DAGT,YuE7lTY,kBAAA,E/D8lRZ,MAAA,2D+DrmRQ,WAIQ,kBAAA,EAGJ,MAAA,0DAPJ,aAIQ,kBAAA,EAGJ,MAAA,4DAPJ,WAIQ,kBAAA,EAGJ,MAAA,0DAPJ,YAIQ,kBAAA,EAGJ,MAAA,2DAPJ,YAIQ,kBAAA,EAGJ,MAAA,2DAPJ,WAIQ,kBAAA,EAGJ,MAAA,gEAPJ,YAIQ,kBAAA,EAGJ,MAAA,oCAPJ,eAIQ,kBAAA,EAGJ,MAAA,yBAPJ,eAIQ,kBAAA,EAGJ,MAAA,+BAPJ,qBAIQ,kBAAA,EAGJ,MAAA,oCAPJ,oBAIQ,kBAAA,EAGJ,MAAA,mCAPJ,oBAIQ,kBAAA,EAGJ,MAAA,mCAPJ,YAIQ,kBAAA,EAGJ,MAAA,kBAPJ,iBAIQ,kBAAA,KvE0qThB,iBuE9qTQ,kBAAA,I/DirRR,iBRkgCE,kBAAmB,KAGrB,kBQhgCA,kBAAA,ERogCA,uBuEnrTY,MAAA,0CAPJ,yBAIQ,MAAA,4CvE8rThB,uBuElsTQ,MAAA,0C/DqsRR,oBRkgCE,MAAO,uCAGT,uBQhgCA,MAAA,0CRogCA,sBQhgCA,MAAA,yCRogCA,qBQhgCA,MAAA,wCRogCA,oBQhgCA,MAAA,uCRogCA,iBQhgCA,kBAAA,IRogCA,6BQhgCA,kBAAA,IRogCA,iBQhgCA,kBAAA,KRogCA,6BQhgCA,kBAAA,KRogCA,iBQhgCA,kBAAA,IRogCA,6BQhgCA,kBAAA,IRogCA,iBQhgCA,kBAAA,KRogCA,6BQhgCA,kBAAA,KRogCA,kBQhgCA,kBAAA,ERogCA,8BQhgCA,kBAAA,ERogCA,eQhgCA,sBAAA,iBRogCA,2BQhgCA,sBAAA,iBRogCA,eQhgCA,sBAAA,gBRogCA,2BQhgCA,sBAAA,gBRogCA,eQhgCA,sBAAA,iBRogCA,2BQhgCA,sBAAA,iBRogCA,wBQhgCA,4BAAA,ERkgCE,sBAAuB,uEQ9/BzB,0BRkgCE,4BAA6B,EuEryTrB,sBAAA,yEvEyyTV,wBuEpyTQ,4BAAA,EAOI,sBAAA,uEAKF,qBAOI,4BAAA,E/DuxRd,sBAAA,oERogCA,wBQhgCA,4BAAA,ERkgCE,sBAAuB,uEQ9/BzB,uBRkgCE,4BAA6B,EuEpzTvB,sBAAA,sEvEwzTR,sBuE5yTU,4BAAA,EAOI,sBAAA,qEAnBN,qBAIQ,4BAAA,EAGJ,sBAAA,oEAPJ,uBAIQ,4BAAA,EAGJ,sBAAA,sEAPJ,qBAIQ,4BAAA,EAGJ,sBAAA,oEAPJ,gBAIQ,4BAAA,EAGJ,sBAAA,4EAPJ,0BAIQ,4BAAA,EvEi1ThB,sCuEr1TQ,4BAAA,E/Dw1RR,2BRkgCE,4BAA6B,IAG/B,uCQhgCA,4BAAA,IRogCA,2BuE11TY,4BAAA,KAPJ,uCAIQ,4BAAA,KvEq2ThB,2BuEz2TQ,4BAAA,I/D42RR,uCRkgCE,4BAA6B,IAG/B,2BQhgCA,4BAAA,KRogCA,uCQhgCA,4BAAA,KRogCA,4BQhgCA,4BAAA,ERogCA,wCQhgCA,4BAAA,ERogCA,YQhgCA,gBAAA,ERkgCE,iBAAkB,2DQ9/BpB,cRkgCE,gBAAiB,EuE54TT,iBAAA,6DvEg5TV,YuEr5TQ,gBAAA,EACE,iBAAA,2DAIA,SACE,gBAAA,E/Dq5RZ,iBAAA,wDRogCA,YQhgCA,gBAAA,ERkgCE,iBAAkB,2DQ9/BpB,WRkgCE,gBAAiB,EuEr6TX,iBAAA,0DvEy6TR,UuEp6TU,gBAAA,EACE,iBAAA,yDAIJ,SAIQ,gBAAA,EAGJ,iBAAA,wDAPJ,WAIQ,gBAAA,EAGJ,iBAAA,0DAPJ,SAIQ,gBAAA,EAGJ,iBAAA,wDAPJ,UAIQ,gBAAA,EAGJ,iBAAA,yDAPJ,UAIQ,gBAAA,EAGJ,iBAAA,yDAPJ,SAIQ,gBAAA,EAGJ,iBAAA,2DAPJ,gBAIQ,gBAAA,EAGJ,iBAAA,sBAPJ,mBAIQ,gBAAA,EAGJ,iBAAA,gEAPJ,kBAIQ,gBAAA,EAGJ,iBAAA,+DAPJ,eAIQ,gBAAA,IvEi9ThB,euEr9TQ,gBAAA,K/Dw9RR,eRkgCE,gBAAiB,IAGnB,eQhgCA,gBAAA,KRogCA,gBuE19TY,gBAAA,EAPJ,mBAIQ,iBAAA,sCvEq+ThB,qBuEz+TQ,iBAAA,wC/D4+RR,mBRkgCE,iBAAkB,sCAGpB,gBQhgCA,iBAAA,mCRogCA,mBQhgCA,iBAAA,sCRogCA,kBQhgCA,iBAAA,qCRogCA,iBQhgCA,iBAAA,oCRogCA,gBQhgCA,iBAAA,mCRogCA,aQhgCA,iBAAA,6BRogCA,iBQhgCA,oBAAA,cRkgCK,iBAAkB,cuE3gUf,YAAA,cvE+gUR,kBuE/gUQ,oBAAA,eAOI,iBAAA,e/D0gSZ,gBAAA,eRkgCU,YAAa,eQ9/BvB,kBRkgCE,oBAAqB,euEvhUf,iBAAA,eAOI,gBAAA,e/DkhSZ,YAAA,eRogCA,SQhgCA,eAAA,eRogCA,SQhgCA,eAAA,eRogCA,SQhgCA,cAAA,kCRogCA,WQhgCA,cAAA,YRogCA,WACE,cuEviUU,qCvE0iUZ,WuEjjUQ,cAAA,kCvEqjUR,WACE,cuE/iUU,qCAPJ,WAOI,cAAA,qCvEsjUZ,WQxgCA,cAAA,sCR4gCA,gBQxgCA,cAAA,cR4gCA,cQxgCA,cAAA,uCR4gCA,aQxgCA,wBAAA,kCR0gCE,uBAAwB,kCQtgC1B,eR0gCE,wBAAyB,YuE/kUnB,uBAAA,YvEmlUR,euEnlUQ,wBAAA,qCAOI,uBAAA,qCAPJ,eAOI,wBAAA,kC/D0kSZ,uBAAA,kCR4gCA,eQxgCA,wBAAA,qCR0gCE,uBAAwB,qCQtgC1B,eR0gCE,wBAAyB,qCuEnmUnB,uBAAA,qCvEumUR,euEvmUQ,wBAAA,sCAOI,uBAAA,sCAPJ,oBAOI,wBAAA,cAAA,uBAAA,cAPJ,kBAOI,wBAAA,uCAAA,uBAAA,uCAPJ,aAOI,uBAAA,kCAAA,0BAAA,kCAPJ,eAOI,uBAAA,YAAA,0BAAA,YAPJ,eAOI,uBAAA,qCAAA,0BAAA,qCAPJ,eAOI,uBAAA,kCAAA,0BAAA,kCAPJ,eAOI,uBAAA,qCAAA,0BAAA,qCAPJ,eAOI,uBAAA,qCAAA,0BAAA,qCAPJ,eAOI,uBAAA,sCAAA,0BAAA,sCAPJ,oBAOI,uBAAA,cAAA,0BAAA,cAPJ,kBAOI,uBAAA,uCAAA,0BAAA,uCAPJ,gBAOI,0BAAA,kCAAA,2BAAA,kCAPJ,kBAOI,0BAAA,YAAA,2BAAA,YAPJ,kBAOI,0BAAA,qCAAA,2BAAA,qCAPJ,kBAOI,0BAAA,kCAAA,2BAAA,kCAPJ,kBAOI,0BAAA,qCAAA,2BAAA,qCAPJ,kBAOI,0BAAA,qCAAA,2BAAA,qCAPJ,kBAOI,0BAAA,sCAAA,2BAAA,sCAPJ,uBAOI,0BAAA,cAAA,2BAAA,cAPJ,qBAOI,0BAAA,uCAAA,2BAAA,uCAPJ,eAOI,2BAAA,kCAAA,wBAAA,kCAPJ,iBAOI,2BAAA,YAAA,wBAAA,YAPJ,iBAOI,2BAAA,qCAAA,wBAAA,qCAPJ,iBAOI,2BAAA,kCAAA,wBAAA,kCAPJ,iBAOI,2BAAA,qCAAA,wBAAA,qCAPJ,iBAOI,2BAAA,qCAAA,wBAAA,qCAPJ,iBAOI,2BAAA,sCAAA,wBAAA,sCAPJ,sBAOI,2BAAA,cAAA,wBAAA,cAPJ,oBAOI,2BAAA,uCAAA,wBAAA,uCAPJ,SAOI,WAAA,kBvE0vUZ,WuEjwUQ,WAAA,iB/D4vSR,MR0gCE,QAAS,aAGX,KQxgCA,QAAA,YR4gCA,KuEtwUY,QAAA,YAPJ,KAOI,QAAA,YvE8wUZ,KuErxUQ,QAAA,Y/DgxSR,OR0gCE,UAAW,eAGb,OQxgCA,UAAA,eR4gCA,OQxgCA,UAAA,eR4gCA,OQxgCA,UAAA,eR4gCA,OQxgCA,UAAA,eR4gCA,OQxgCA,UAAA,eR4gCA,OQxgCA,UAAA,eR4gCA,OQxgCA,UAAA,eR4gCA,OQxgCA,UAAA,eR4gCA,OQxgCA,UAAA,eR4gCA,OQxgCA,UAAA,eR4gCA,OQxgCA,UAAA,eR4gCA,OQxgCA,UAAA,eR4gCA,OQxgCA,UAAA,eR4gCA,OQxgCA,UAAA,eR4gCA,OQxgCA,UAAA,eR4gCA,OQxgCA,UAAA,eR4gCA,yBQxgCA,gBR0gCI,MAAO,gBuEx1UC,c/Dk1SZ,MAAA,e+Dz1SQ,eAOI,MAAA,evEg2UV,uBuEv2UM,cAAA,kBAOI,WAAA,kBvEo2UV,qBuE32UM,cAAA,gBAOI,WAAA,gBvEw2UV,oBuE/2UM,cAAA,eAOI,WAAA,evE42UV,qBuEn3UM,cAAA,qBAOI,WAAA,qBvEg3UV,oBuEv3UM,cAAA,eAOI,WAAA,evEo3UV,auE33UM,QAAA,iB/Dq3SR,mBR0gCI,QAAS,uBuE/3UL,YAOI,QAAA,gBAPJ,WAOI,QAAA,eAPJ,kBAOI,QAAA,sBAPJ,YAOI,QAAA,gB/D43SV,gB+Dn4SM,QAAA,oBvEg5UN,iBQ1gCA,QAAA,qBR6gCA,WACE,QuE74UQ,sB/Dk4SV,QAAA,sB+Dz4SM,QAAA,evEw5UN,kBQ5gCA,QAAA,6B+D54SM,QAAA,6BAOI,QAAA,sB/Dw4SV,W+D/4SM,QAAA,e/Dk5SN,c+Dl5SM,iBAAA,YAOI,SAAA,EAAA,EAAA,e/D84SV,KAAA,EAAA,EAAA,eRghCA,aQ7gCA,mBAAA,qB+Dx5SM,sBAAA,iBAOI,mBAAA,c/Do5SV,eAAA,cRghCA,gBQ7gCA,mBAAA,mB+D95SM,sBAAA,iBAOI,mBAAA,iB/D05SV,eAAA,iBRghCA,qBQ7gCA,mBAAA,qB+Dp6SM,sBAAA,kBAOI,mBAAA,sB/Dg6SV,eAAA,sBRghCA,wBuEh7UU,mBAAA,mBAAA,sBAAA,kB/Dm6SV,mBAAA,yB+D16SM,eAAA,yBvE67UN,gBuEt7UU,iBAAA,Y/Ds6SV,kBAAA,Y+D76SM,UAAA,Y/Dg7SN,gB+Dh7SM,iBAAA,YAOI,kBAAA,YAAA,UAAA,Y/D46SV,kB+Dn7SM,kBAAA,YAOI,YAAA,YvEo8UV,kBACE,kBuEr8UQ,Y/D+6SV,YAAA,YRyhCA,cuEx8UU,cAAA,eAAA,UAAA,e/Dk7SV,gB+Dz7SM,cAAA,iBAOI,UAAA,iBvEg9UV,sBACE,cuEj9UQ,uB/Dq7SV,UAAA,uBR+hCA,0BuEp9UU,iBAAA,gBAAA,cAAA,gBAAA,gBAAA,qBAPJ,wBAOI,iBAAA,cAAA,cAAA,cAAA,gBAAA,mBAPJ,2BAOI,iBAAA,iBAAA,cAAA,iBAAA,gBAAA,iBAPJ,4BAOI,iBAAA,kBAAA,cAAA,kB/Di8SV,gBAAA,wBRuiCA,2BACE,cuEz+UQ,qB/Do8SV,gBAAA,uBRwiCA,2BACE,iBuE7+UQ,uB/Du8SV,cAAA,uB+D98SM,gBAAA,uBvEw/UN,sBQviCA,kBAAA,gB+Dj9SM,eAAA,gBAOI,YAAA,qB/D68SV,oB+Dp9SM,kBAAA,cAOI,eAAA,cAAA,YAAA,mB/Dg9SV,uB+Dv9SM,kBAAA,iBAOI,eAAA,iBAAA,YAAA,iB/Dm9SV,yB+D19SM,kBAAA,mBAOI,eAAA,mBAAA,YAAA,mB/Ds9SV,wB+D79SM,kBAAA,kBAOI,eAAA,kBAAA,YAAA,kB/Dy9SV,wB+Dh+SM,mBAAA,gBAOI,cAAA,qB/D49SV,sB+Dn+SM,mBAAA,cAOI,cAAA,mBvEkhVV,yBQnjCA,mBAAA,iB+Dt+SM,cAAA,iBvE6hVN,0BACE,mBuEvhVQ,kB/Dk+SV,cAAA,wBRwjCA,yBACE,mBuE3hVQ,qBvE4hVJ,cuE5hVI,uBAPJ,0BAOI,mBAAA,kBAAA,cAAA,kB/Dw+SV,oB+D/+SM,oBAAA,eAOI,WAAA,evEsiVV,qBQ3jCA,oBAAA,gB+Dl/SM,WAAA,qBvEijVN,mBACE,oBuE3iVQ,c/D8+SV,WAAA,mBRgkCA,sBACE,oBuE/iVQ,iB/Di/SV,WAAA,iBRikCA,wBACE,oBuEnjVQ,mB/Do/SV,WAAA,mBRkkCA,uBACE,oBuEvjVQ,kB/Du/SV,WAAA,kBRmkCA,gBACE,0BuE3jVQ,Y/D0/SV,eAAA,a+DjgTM,MAAA,avEskVN,YQlkCA,0BAAA,Y+DpgTM,eAAA,YAOI,MAAA,Y/DggTV,Y+DvgTM,0BAAA,YAOI,eAAA,YAAA,MAAA,YAPJ,YAOI,0BAAA,YAAA,eAAA,Y/DsgTV,MAAA,YRwkCA,YACE,0BuE/kVQ,Y/DygTV,eAAA,Y+DhhTM,MAAA,YvE0lVN,YQvkCA,0BAAA,Y+DnhTM,eAAA,YAOI,MAAA,Y/D+gTV,Y+DthTM,0BAAA,YAOI,eAAA,YAAA,MAAA,YAPJ,eAOI,0BAAA,YAAA,eAAA,YAAA,MAAA,YAPJ,QAOI,OAAA,YvEqmVV,QQ7kCA,OAAA,mBRglCA,QACE,OuEzmVQ,kB/D2hTV,Q+DliTM,OAAA,kBvEqnVN,QACE,OuE/mVQ,mBAPJ,QAOI,OAAA,kBvEonVV,WQnlCA,OAAA,eRslCA,SACE,YuExnVQ,YvEynVR,auEznVQ,YAPJ,SAOI,YAAA,mBvE6nVR,auE7nVQ,mB/DuiTV,S+D9iTM,YAAA,kBAOI,aAAA,kBvEmoVV,SQzlCA,YAAA,kB+DjjTM,aAAA,kB/DojTN,S+DpjTM,YAAA,mBAOI,aAAA,mBAPJ,SAOI,YAAA,kB/DmjTV,aAAA,kBR4lCA,YQzlCA,YAAA,e+D7jTM,aAAA,e/DgkTN,S+DhkTM,WAAA,YAOI,cAAA,YAPJ,SAOI,WAAA,mB/D+jTV,cAAA,mBR4lCA,SuE3pVU,WAAA,kB/DmkTV,cAAA,kBR4lCA,SuE/pVU,WAAA,kB/DukTV,cAAA,kBR4lCA,SuEnqVU,WAAA,mB/D2kTV,cAAA,mBR4lCA,SuEvqVU,WAAA,kB/D+kTV,cAAA,kBR4lCA,YuE3qVU,WAAA,e/DmlTV,cAAA,eR4lCA,SuE/qVU,WAAA,YAPJ,SAOI,WAAA,mB/D2lTV,S+DlmTM,WAAA,kBvE+rVN,SQzlCA,WAAA,kBR4lCA,SuE3rVU,WAAA,mBAPJ,SAOI,WAAA,kB/DumTV,Y+D9mTM,WAAA,evE2sVN,SQzlCA,YAAA,YR4lCA,SuEvsVU,YAAA,mBAPJ,SAOI,YAAA,kB/DmnTV,S+D1nTM,YAAA,kBvEutVN,SQzlCA,YAAA,mBR4lCA,SQzlCA,YAAA,kBR4lCA,YQzlCA,YAAA,eR4lCA,SQzlCA,cAAA,YR4lCA,SQzlCA,cAAA,mBR4lCA,SQzlCA,cAAA,kBR4lCA,SQzlCA,cAAA,kBR4lCA,SQzlCA,cAAA,mBR4lCA,SQzlCA,cAAA,kBR4lCA,YQzlCA,cAAA,eR4lCA,SQzlCA,aAAA,YR4lCA,SQzlCA,aAAA,mBR4lCA,SQzlCA,aAAA,kBR4lCA,SQzlCA,aAAA,kBR4lCA,SQzlCA,aAAA,mBR4lCA,SQzlCA,aAAA,kBR4lCA,YQzlCA,aAAA,eR4lCA,SQzlCA,OAAA,oBR4lCA,SQzlCA,OAAA,mBR4lCA,SQzlCA,OAAA,mBR4lCA,SQzlCA,OAAA,oBR4lCA,SQzlCA,OAAA,mBR4lCA,UQzlCA,YAAA,oB+DhsTM,aAAA,oB/DmsTN,U+DnsTM,YAAA,mBAOI,aAAA,mBAPJ,UAOI,YAAA,mB/DksTV,aAAA,mBR4lCA,UQzlCA,YAAA,oB+D5sTM,aAAA,oB/D+sTN,U+D/sTM,YAAA,mBAOI,aAAA,mBAPJ,UAOI,WAAA,oB/D8sTV,cAAA,oBR4lCA,UQzlCA,WAAA,mB+DxtTM,cAAA,mB/D2tTN,U+D3tTM,WAAA,mBAOI,cAAA,mBAPJ,UAOI,WAAA,oB/D0tTV,cAAA,oBR4lCA,UuEtzVU,WAAA,mB/D8tTV,cAAA,mBR4lCA,UuE1zVU,WAAA,oBAPJ,UAOI,WAAA,mB/DsuTV,U+D7uTM,WAAA,mBvE00VN,UQzlCA,WAAA,oBR4lCA,UuEt0VU,WAAA,mBAPJ,UAOI,YAAA,oB/DkvTV,U+DzvTM,YAAA,mBvEs1VN,UQzlCA,YAAA,mBR4lCA,UuEl1VU,YAAA,oBAPJ,UAOI,YAAA,mB/D8vTV,U+DrwTM,cAAA,oBvEk2VN,UQzlCA,cAAA,mBR4lCA,UQzlCA,cAAA,mBR4lCA,UQzlCA,cAAA,oBR4lCA,UQzlCA,cAAA,mBR4lCA,UQzlCA,aAAA,oBR4lCA,UQzlCA,aAAA,mBR4lCA,UQzlCA,aAAA,mBR4lCA,UQzlCA,aAAA,oBR4lCA,UQzlCA,aAAA,mBR4lCA,QQzlCA,QAAA,YR4lCA,QQzlCA,QAAA,mBR4lCA,QQzlCA,QAAA,kBR4lCA,QQzlCA,QAAA,kBR4lCA,QQzlCA,QAAA,mBR4lCA,QQzlCA,QAAA,kBR4lCA,SQzlCA,aAAA,Y+DtzTM,cAAA,Y/DyzTN,S+DzzTM,aAAA,mBAOI,cAAA,mBAPJ,SAOI,aAAA,kB/DwzTV,cAAA,kBR4lCA,SQzlCA,aAAA,kB+Dl0TM,cAAA,kB/Dq0TN,S+Dr0TM,aAAA,mBAOI,cAAA,mBAPJ,SAOI,aAAA,kB/Do0TV,cAAA,kBR4lCA,SQzlCA,YAAA,Y+D90TM,eAAA,Y/Di1TN,S+Dj1TM,YAAA,mBAOI,eAAA,mBAPJ,SAOI,YAAA,kB/Dg1TV,eAAA,kBR4lCA,SuE56VU,YAAA,kB/Do1TV,eAAA,kBR4lCA,SuEh7VU,YAAA,mB/Dw1TV,eAAA,mBR4lCA,SuEp7VU,YAAA,kB/D41TV,eAAA,kBR4lCA,SuEx7VU,YAAA,YAPJ,SAOI,YAAA,mB/Do2TV,S+D32TM,YAAA,kBvEw8VN,SQzlCA,YAAA,kBR4lCA,SuEp8VU,YAAA,mBAPJ,SAOI,YAAA,kB/Dg3TV,S+Dv3TM,aAAA,YvEo9VN,SQzlCA,aAAA,mBR4lCA,SuEh9VU,aAAA,kBAPJ,SAOI,aAAA,kB/D43TV,S+Dn4TM,aAAA,mBvEg+VN,SQzlCA,aAAA,kBR4lCA,SQzlCA,eAAA,YR4lCA,SQzlCA,eAAA,mBR4lCA,SQzlCA,eAAA,kBR4lCA,SQzlCA,eAAA,kBR4lCA,SQzlCA,eAAA,mBR4lCA,SQzlCA,eAAA,kBR4lCA,SQzlCA,cAAA,YR4lCA,SQzlCA,cAAA,mBR4lCA,SQzlCA,cAAA,kBR4lCA,SQzlCA,cAAA,kBR4lCA,SQzlCA,cAAA,mBR4lCA,SQzlCA,cAAA,kBR4lCA,UQzlCA,IAAA,YR4lCA,UQzlCA,IAAA,mBR4lCA,UQzlCA,IAAA,kBR4lCA,UQzlCA,IAAA,kBR4lCA,UQzlCA,IAAA,mBR4lCA,UQzlCA,IAAA,kBR4lCA,cQzlCA,QAAA,YR4lCA,cQzlCA,QAAA,mBR4lCA,cQzlCA,QAAA,kBR4lCA,cQzlCA,QAAA,kBR4lCA,cQzlCA,QAAA,mBR4lCA,cQzlCA,QAAA,kBR4lCA,iBQzlCA,mBAAA,Y+Dl9TM,gBAAA,YAOI,WAAA,YAPJ,iBAOI,mBAAA,mB/Di9TV,gBAAA,mB+Dx9TM,WAAA,mB/D29TN,iB+D39TM,mBAAA,kBAOI,gBAAA,kB/Du9TV,WAAA,kBR4lCA,iBQzlCA,mBAAA,kB+Dj+TM,gBAAA,kBAOI,WAAA,kBAPJ,iBAOI,mBAAA,mB/Dg+TV,gBAAA,mB+Dv+TM,WAAA,mB/D0+TN,iB+D1+TM,mBAAA,kBAOI,gBAAA,kB/Ds+TV,WAAA,kBR4lCA,eQzlCA,WAAA,gBR4lCA,aQzlCA,WAAA,eR4lCA,gBACE,WuEzkWQ,kBvE4kWZ,yBACE,gBACE,MuE9kWQ,gB/Dk/TV,c+Dz/TM,MAAA,evE0lWN,eACE,MAAO,euE3lWH,uBAOI,cAAA,kBAAA,WAAA,kB/Dw/TV,qB+D//TM,cAAA,gBAOI,WAAA,gBvE8lWV,oBQnmCA,cAAA,e+DlgUM,WAAA,evEymWN,qBACE,cuEnmWQ,qB/D8/TV,WAAA,qBRwmCA,oBQrmCA,cAAA,e+DxgUM,WAAA,e/D2gUN,a+D3gUM,QAAA,iB/D8gUN,mBACF,QAAA,uB+D/gUQ,YAOI,QAAA,gBAPJ,WAOI,QAAA,eAPJ,kBAOI,QAAA,sBAPJ,YAOI,QAAA,gB/DqhUV,gB+D5hUM,QAAA,oBvEsoWN,iBQvmCA,QAAA,qBR0mCA,WACE,QuEnoWQ,sB/D2hUV,QAAA,sB+DliUM,QAAA,evE8oWN,kBQzmCA,QAAA,6B+DriUM,QAAA,6BAOI,QAAA,sB/DiiUV,W+DxiUM,QAAA,e/D2iUN,c+D3iUM,iBAAA,YAOI,SAAA,EAAA,EAAA,e/DuiUV,KAAA,EAAA,EAAA,eR6mCA,aQ1mCA,mBAAA,qB+DjjUM,sBAAA,iBAOI,mBAAA,c/D6iUV,eAAA,cR6mCA,gBQ1mCA,mBAAA,mB+DvjUM,sBAAA,iBAOI,mBAAA,iB/DmjUV,eAAA,iBR6mCA,qBQ1mCA,mBAAA,qB+D7jUM,sBAAA,kBAOI,mBAAA,sB/DyjUV,eAAA,sBR6mCA,wBuEtqWU,mBAAA,mBAAA,sBAAA,kB/D4jUV,mBAAA,yB+DnkUM,eAAA,yBvEmrWN,gBuE5qWU,iBAAA,Y/D+jUV,kBAAA,Y+DtkUM,UAAA,Y/DykUN,gB+DzkUM,iBAAA,YAOI,kBAAA,YAAA,UAAA,Y/DqkUV,kB+D5kUM,kBAAA,YAOI,YAAA,YvE0rWV,kBACE,kBuE3rWQ,Y/DwkUV,YAAA,YRsnCA,cuE9rWU,cAAA,eAAA,UAAA,e/D2kUV,gB+DllUM,cAAA,iBAOI,UAAA,iBvEssWV,sBACE,cuEvsWQ,uB/D8kUV,UAAA,uBR4nCA,0BuE1sWU,iBAAA,gBAAA,cAAA,gBAAA,gBAAA,qBAPJ,wBAOI,iBAAA,cAAA,cAAA,cAAA,gBAAA,mBAPJ,2BAOI,iBAAA,iBAAA,cAAA,iBAAA,gBAAA,iBAPJ,4BAOI,iBAAA,kBAAA,cAAA,kB/D0lUV,gBAAA,wBRooCA,2BACE,cuE/tWQ,qB/D6lUV,gBAAA,uBRqoCA,2BACE,iBuEnuWQ,uB/DgmUV,cAAA,uB+DvmUM,gBAAA,uBvE8uWN,sBQpoCA,kBAAA,gB+D1mUM,eAAA,gBAOI,YAAA,qB/DsmUV,oB+D7mUM,kBAAA,cAOI,eAAA,cAAA,YAAA,mB/DymUV,uB+DhnUM,kBAAA,iBAOI,eAAA,iBAAA,YAAA,iB/D4mUV,yB+DnnUM,kBAAA,mBAOI,eAAA,mBAAA,YAAA,mB/D+mUV,wB+DtnUM,kBAAA,kBAOI,eAAA,kBAAA,YAAA,kB/DknUV,wB+DznUM,mBAAA,gBAOI,cAAA,qB/DqnUV,sB+D5nUM,mBAAA,cAOI,cAAA,mBvEwwWV,yBQhpCA,mBAAA,iB+D/nUM,cAAA,iBvEmxWN,0BACE,mBuE7wWQ,kB/D2nUV,cAAA,wBRqpCA,yBACE,mBuEjxWQ,qBvEkxWJ,cuElxWI,uBAPJ,0BAOI,mBAAA,kBAAA,cAAA,kB/DioUV,oB+DxoUM,oBAAA,eAOI,WAAA,evE4xWV,qBQxpCA,oBAAA,gB+D3oUM,WAAA,qBvEuyWN,mBACE,oBuEjyWQ,c/DuoUV,WAAA,mBR6pCA,sBACE,oBuEryWQ,iB/D0oUV,WAAA,iBR8pCA,wBACE,oBuEzyWQ,mB/D6oUV,WAAA,mBR+pCA,uBACE,oBuE7yWQ,kB/DgpUV,WAAA,kBRgqCA,gBACE,0BuEjzWQ,Y/DmpUV,eAAA,a+D1pUM,MAAA,avE4zWN,YQ/pCA,0BAAA,Y+D7pUM,eAAA,YAOI,MAAA,Y/DypUV,Y+DhqUM,0BAAA,YAOI,eAAA,YAAA,MAAA,YAPJ,YAOI,0BAAA,YAAA,eAAA,Y/D+pUV,MAAA,YRqqCA,YACE,0BuEr0WQ,Y/DkqUV,eAAA,Y+DzqUM,MAAA,YvEg1WN,YQpqCA,0BAAA,Y+D5qUM,eAAA,YAOI,MAAA,Y/DwqUV,Y+D/qUM,0BAAA,YAOI,eAAA,YAAA,MAAA,YAPJ,eAOI,0BAAA,YAAA,eAAA,YAAA,MAAA,YAPJ,QAOI,OAAA,YvE21WV,QQ1qCA,OAAA,mBR6qCA,QACE,OuE/1WQ,kB/DorUV,Q+D3rUM,OAAA,kBvE22WN,QACE,OuEr2WQ,mBAPJ,QAOI,OAAA,kBvE02WV,WQhrCA,OAAA,eRmrCA,SACE,YuE92WQ,YvE+2WR,auE/2WQ,YAPJ,SAOI,YAAA,mBvEm3WR,auEn3WQ,mB/DgsUV,S+DvsUM,YAAA,kBAOI,aAAA,kBvEy3WV,SQtrCA,YAAA,kB+D1sUM,aAAA,kB/D6sUN,S+D7sUM,YAAA,mBAOI,aAAA,mBAPJ,SAOI,YAAA,kB/D4sUV,aAAA,kBRyrCA,YQtrCA,YAAA,e+DttUM,aAAA,e/DytUN,S+DztUM,WAAA,YAOI,cAAA,YAPJ,SAOI,WAAA,mB/DwtUV,cAAA,mBRyrCA,SuEj5WU,WAAA,kB/D4tUV,cAAA,kBRyrCA,SuEr5WU,WAAA,kB/DguUV,cAAA,kBRyrCA,SuEz5WU,WAAA,mB/DouUV,cAAA,mBRyrCA,SuE75WU,WAAA,kB/DwuUV,cAAA,kBRyrCA,YuEj6WU,WAAA,e/D4uUV,cAAA,eRyrCA,SuEr6WU,WAAA,YAPJ,SAOI,WAAA,mB/DovUV,S+D3vUM,WAAA,kBvEq7WN,SQtrCA,WAAA,kBRyrCA,SuEj7WU,WAAA,mBAPJ,SAOI,WAAA,kB/DgwUV,Y+DvwUM,WAAA,evEi8WN,SQtrCA,YAAA,YRyrCA,SuE77WU,YAAA,mBAPJ,SAOI,YAAA,kB/D4wUV,S+DnxUM,YAAA,kBvE68WN,SQtrCA,YAAA,mBRyrCA,SQtrCA,YAAA,kBRyrCA,YQtrCA,YAAA,eRyrCA,SQtrCA,cAAA,YRyrCA,SQtrCA,cAAA,mBRyrCA,SQtrCA,cAAA,kBRyrCA,SQtrCA,cAAA,kBRyrCA,SQtrCA,cAAA,mBRyrCA,SQtrCA,cAAA,kBRyrCA,YQtrCA,cAAA,eRyrCA,SQtrCA,aAAA,YRyrCA,SQtrCA,aAAA,mBRyrCA,SQtrCA,aAAA,kBRyrCA,SQtrCA,aAAA,kBRyrCA,SQtrCA,aAAA,mBRyrCA,SQtrCA,aAAA,kBRyrCA,YQtrCA,aAAA,eRyrCA,SQtrCA,OAAA,oBRyrCA,SQtrCA,OAAA,mBRyrCA,SQtrCA,OAAA,mBRyrCA,SQtrCA,OAAA,oBRyrCA,SQtrCA,OAAA,mBRyrCA,UQtrCA,YAAA,oB+Dz1UM,aAAA,oB/D41UN,U+D51UM,YAAA,mBAOI,aAAA,mBAPJ,UAOI,YAAA,mB/D21UV,aAAA,mBRyrCA,UQtrCA,YAAA,oB+Dr2UM,aAAA,oB/Dw2UN,U+Dx2UM,YAAA,mBAOI,aAAA,mBAPJ,UAOI,WAAA,oB/Du2UV,cAAA,oBRyrCA,UQtrCA,WAAA,mB+Dj3UM,cAAA,mB/Do3UN,U+Dp3UM,WAAA,mBAOI,cAAA,mBAPJ,UAOI,WAAA,oB/Dm3UV,cAAA,oBRyrCA,UuE5iXU,WAAA,mB/Du3UV,cAAA,mBRyrCA,UuEhjXU,WAAA,oBAPJ,UAOI,WAAA,mB/D+3UV,U+Dt4UM,WAAA,mBvEgkXN,UQtrCA,WAAA,oBRyrCA,UuE5jXU,WAAA,mBAPJ,UAOI,YAAA,oB/D24UV,U+Dl5UM,YAAA,mBvE4kXN,UQtrCA,YAAA,mBRyrCA,UuExkXU,YAAA,oBAPJ,UAOI,YAAA,mB/Du5UV,U+D95UM,cAAA,oBvEwlXN,UQtrCA,cAAA,mBRyrCA,UQtrCA,cAAA,mBRyrCA,UQtrCA,cAAA,oBRyrCA,UQtrCA,cAAA,mBRyrCA,UQtrCA,aAAA,oBRyrCA,UQtrCA,aAAA,mBRyrCA,UQtrCA,aAAA,mBRyrCA,UQtrCA,aAAA,oBRyrCA,UQtrCA,aAAA,mBRyrCA,QQtrCA,QAAA,YRyrCA,QQtrCA,QAAA,mBRyrCA,QQtrCA,QAAA,kBRyrCA,QQtrCA,QAAA,kBRyrCA,QQtrCA,QAAA,mBRyrCA,QQtrCA,QAAA,kBRyrCA,SQtrCA,aAAA,Y+D/8UM,cAAA,Y/Dk9UN,S+Dl9UM,aAAA,mBAOI,cAAA,mBAPJ,SAOI,aAAA,kB/Di9UV,cAAA,kBRyrCA,SQtrCA,aAAA,kB+D39UM,cAAA,kB/D89UN,S+D99UM,aAAA,mBAOI,cAAA,mBAPJ,SAOI,aAAA,kB/D69UV,cAAA,kBRyrCA,SQtrCA,YAAA,Y+Dv+UM,eAAA,Y/D0+UN,S+D1+UM,YAAA,mBAOI,eAAA,mBAPJ,SAOI,YAAA,kB/Dy+UV,eAAA,kBRyrCA,SuElqXU,YAAA,kB/D6+UV,eAAA,kBRyrCA,SuEtqXU,YAAA,mB/Di/UV,eAAA,mBRyrCA,SuE1qXU,YAAA,kB/Dq/UV,eAAA,kBRyrCA,SuE9qXU,YAAA,YAPJ,SAOI,YAAA,mB/D6/UV,S+DpgVM,YAAA,kBvE8rXN,SQtrCA,YAAA,kBRyrCA,SuE1rXU,YAAA,mBAPJ,SAOI,YAAA,kB/DygVV,S+DhhVM,aAAA,YvE0sXN,SQtrCA,aAAA,mBRyrCA,SuEtsXU,aAAA,kBAPJ,SAOI,aAAA,kB/DqhVV,S+D5hVM,aAAA,mBvEstXN,SQtrCA,aAAA,kBRyrCA,SQtrCA,eAAA,YRyrCA,SQtrCA,eAAA,mBRyrCA,SQtrCA,eAAA,kBRyrCA,SQtrCA,eAAA,kBRyrCA,SQtrCA,eAAA,mBRyrCA,SQtrCA,eAAA,kBRyrCA,SQtrCA,cAAA,YRyrCA,SQtrCA,cAAA,mBRyrCA,SQtrCA,cAAA,kBRyrCA,SQtrCA,cAAA,kBRyrCA,SQtrCA,cAAA,mBRyrCA,SQtrCA,cAAA,kBRyrCA,UQtrCA,IAAA,YRyrCA,UQtrCA,IAAA,mBRyrCA,UQtrCA,IAAA,kBRyrCA,UQtrCA,IAAA,kBRyrCA,UQtrCA,IAAA,mBRyrCA,UQtrCA,IAAA,kBRyrCA,cQtrCA,QAAA,YRyrCA,cQtrCA,QAAA,mBRyrCA,cQtrCA,QAAA,kBRyrCA,cQtrCA,QAAA,kBRyrCA,cQtrCA,QAAA,mBRyrCA,cQtrCA,QAAA,kBRyrCA,iBQtrCA,mBAAA,Y+D3mVM,gBAAA,YAOI,WAAA,YAPJ,iBAOI,mBAAA,mB/D0mVV,gBAAA,mB+DjnVM,WAAA,mB/DonVN,iB+DpnVM,mBAAA,kBAOI,gBAAA,kB/DgnVV,WAAA,kBRyrCA,iBQtrCA,mBAAA,kB+D1nVM,gBAAA,kBAOI,WAAA,kBAPJ,iBAOI,mBAAA,mB/DynVV,gBAAA,mB+DhoVM,WAAA,mB/DmoVN,iB+DnoVM,mBAAA,kBAOI,gBAAA,kB/D+nVV,WAAA,kBRyrCA,eQtrCA,WAAA,gBRyrCA,aQtrCA,WAAA,eRyrCA,gBACE,WuE/zXQ,kBvEk0XZ,yBACE,gBACE,MuEp0XQ,gB/D2oVV,c+DlpVM,MAAA,evEg1XN,eACE,MAAO,euEj1XH,uBAOI,cAAA,kBAAA,WAAA,kB/DipVV,qB+DxpVM,cAAA,gBAOI,WAAA,gBvEo1XV,oBQhsCA,cAAA,e+D3pVM,WAAA,evE+1XN,qBACE,cuEz1XQ,qB/DupVV,WAAA,qBRqsCA,oBQlsCA,cAAA,e+DjqVM,WAAA,e/DoqVN,a+DpqVM,QAAA,iB/DuqVN,mBACF,QAAA,uB+DxqVQ,YAOI,QAAA,gBAPJ,WAOI,QAAA,eAPJ,kBAOI,QAAA,sBAPJ,YAOI,QAAA,gB/D8qVV,gB+DrrVM,QAAA,oBvE43XN,iBQpsCA,QAAA,qBRusCA,WACE,QuEz3XQ,sB/DorVV,QAAA,sB+D3rVM,QAAA,evEo4XN,kBQtsCA,QAAA,6B+D9rVM,QAAA,6BAOI,QAAA,sB/D0rVV,W+DjsVM,QAAA,e/DosVN,c+DpsVM,iBAAA,YAOI,SAAA,EAAA,EAAA,e/DgsVV,KAAA,EAAA,EAAA,eR0sCA,aQvsCA,mBAAA,qB+D1sVM,sBAAA,iBAOI,mBAAA,c/DssVV,eAAA,cR0sCA,gBQvsCA,mBAAA,mB+DhtVM,sBAAA,iBAOI,mBAAA,iB/D4sVV,eAAA,iBR0sCA,qBQvsCA,mBAAA,qB+DttVM,sBAAA,kBAOI,mBAAA,sB/DktVV,eAAA,sBR0sCA,wBuE55XU,mBAAA,mBAAA,sBAAA,kB/DqtVV,mBAAA,yB+D5tVM,eAAA,yBvEy6XN,gBuEl6XU,iBAAA,Y/DwtVV,kBAAA,Y+D/tVM,UAAA,Y/DkuVN,gB+DluVM,iBAAA,YAOI,kBAAA,YAAA,UAAA,Y/D8tVV,kB+DruVM,kBAAA,YAOI,YAAA,YvEg7XV,kBACE,kBuEj7XQ,Y/DiuVV,YAAA,YRmtCA,cuEp7XU,cAAA,eAAA,UAAA,e/DouVV,gB+D3uVM,cAAA,iBAOI,UAAA,iBvE47XV,sBACE,cuE77XQ,uB/DuuVV,UAAA,uBRytCA,0BuEh8XU,iBAAA,gBAAA,cAAA,gBAAA,gBAAA,qBAPJ,wBAOI,iBAAA,cAAA,cAAA,cAAA,gBAAA,mBAPJ,2BAOI,iBAAA,iBAAA,cAAA,iBAAA,gBAAA,iBAPJ,4BAOI,iBAAA,kBAAA,cAAA,kB/DmvVV,gBAAA,wBRiuCA,2BACE,cuEr9XQ,qB/DsvVV,gBAAA,uBRkuCA,2BACE,iBuEz9XQ,uB/DyvVV,cAAA,uB+DhwVM,gBAAA,uBvEo+XN,sBQjuCA,kBAAA,gB+DnwVM,eAAA,gBAOI,YAAA,qB/D+vVV,oB+DtwVM,kBAAA,cAOI,eAAA,cAAA,YAAA,mB/DkwVV,uB+DzwVM,kBAAA,iBAOI,eAAA,iBAAA,YAAA,iB/DqwVV,yB+D5wVM,kBAAA,mBAOI,eAAA,mBAAA,YAAA,mB/DwwVV,wB+D/wVM,kBAAA,kBAOI,eAAA,kBAAA,YAAA,kB/D2wVV,wB+DlxVM,mBAAA,gBAOI,cAAA,qB/D8wVV,sB+DrxVM,mBAAA,cAOI,cAAA,mBvE8/XV,yBQ7uCA,mBAAA,iB+DxxVM,cAAA,iBvEygYN,0BACE,mBuEngYQ,kB/DoxVV,cAAA,wBRkvCA,yBACE,mBuEvgYQ,qBvEwgYJ,cuExgYI,uBAPJ,0BAOI,mBAAA,kBAAA,cAAA,kB/D0xVV,oB+DjyVM,oBAAA,eAOI,WAAA,evEkhYV,qBQrvCA,oBAAA,gB+DpyVM,WAAA,qBvE6hYN,mBACE,oBuEvhYQ,c/DgyVV,WAAA,mBR0vCA,sBACE,oBuE3hYQ,iB/DmyVV,WAAA,iBR2vCA,wBACE,oBuE/hYQ,mB/DsyVV,WAAA,mBR4vCA,uBACE,oBuEniYQ,kB/DyyVV,WAAA,kBR6vCA,gBACE,0BuEviYQ,Y/D4yVV,eAAA,a+DnzVM,MAAA,avEkjYN,YQ5vCA,0BAAA,Y+DtzVM,eAAA,YAOI,MAAA,Y/DkzVV,Y+DzzVM,0BAAA,YAOI,eAAA,YAAA,MAAA,YAPJ,YAOI,0BAAA,YAAA,eAAA,Y/DwzVV,MAAA,YRkwCA,YACE,0BuE3jYQ,Y/D2zVV,eAAA,Y+Dl0VM,MAAA,YvEskYN,YQjwCA,0BAAA,Y+Dr0VM,eAAA,YAOI,MAAA,Y/Di0VV,Y+Dx0VM,0BAAA,YAOI,eAAA,YAAA,MAAA,YAPJ,eAOI,0BAAA,YAAA,eAAA,YAAA,MAAA,YAPJ,QAOI,OAAA,YvEilYV,QQvwCA,OAAA,mBR0wCA,QACE,OuErlYQ,kB/D60VV,Q+Dp1VM,OAAA,kBvEimYN,QACE,OuE3lYQ,mBAPJ,QAOI,OAAA,kBvEgmYV,WQ7wCA,OAAA,eRgxCA,SACE,YuEpmYQ,YvEqmYR,auErmYQ,YAPJ,SAOI,YAAA,mBvEymYR,auEzmYQ,mB/Dy1VV,S+Dh2VM,YAAA,kBAOI,aAAA,kBvE+mYV,SQnxCA,YAAA,kB+Dn2VM,aAAA,kB/Ds2VN,S+Dt2VM,YAAA,mBAOI,aAAA,mBAPJ,SAOI,YAAA,kB/Dq2VV,aAAA,kBRsxCA,YQnxCA,YAAA,e+D/2VM,aAAA,e/Dk3VN,S+Dl3VM,WAAA,YAOI,cAAA,YAPJ,SAOI,WAAA,mB/Di3VV,cAAA,mBRsxCA,SuEvoYU,WAAA,kB/Dq3VV,cAAA,kBRsxCA,SuE3oYU,WAAA,kB/Dy3VV,cAAA,kBRsxCA,SuE/oYU,WAAA,mB/D63VV,cAAA,mBRsxCA,SuEnpYU,WAAA,kB/Di4VV,cAAA,kBRsxCA,YuEvpYU,WAAA,e/Dq4VV,cAAA,eRsxCA,SuE3pYU,WAAA,YAPJ,SAOI,WAAA,mB/D64VV,S+Dp5VM,WAAA,kBvE2qYN,SQnxCA,WAAA,kBRsxCA,SuEvqYU,WAAA,mBAPJ,SAOI,WAAA,kB/Dy5VV,Y+Dh6VM,WAAA,evEurYN,SQnxCA,YAAA,YRsxCA,SuEnrYU,YAAA,mBAPJ,SAOI,YAAA,kB/Dq6VV,S+D56VM,YAAA,kBvEmsYN,SQnxCA,YAAA,mBRsxCA,SQnxCA,YAAA,kBRsxCA,YQnxCA,YAAA,eRsxCA,SQnxCA,cAAA,YRsxCA,SQnxCA,cAAA,mBRsxCA,SQnxCA,cAAA,kBRsxCA,SQnxCA,cAAA,kBRsxCA,SQnxCA,cAAA,mBRsxCA,SQnxCA,cAAA,kBRsxCA,YQnxCA,cAAA,eRsxCA,SQnxCA,aAAA,YRsxCA,SQnxCA,aAAA,mBRsxCA,SQnxCA,aAAA,kBRsxCA,SQnxCA,aAAA,kBRsxCA,SQnxCA,aAAA,mBRsxCA,SQnxCA,aAAA,kBRsxCA,YQnxCA,aAAA,eRsxCA,SQnxCA,OAAA,oBRsxCA,SQnxCA,OAAA,mBRsxCA,SQnxCA,OAAA,mBRsxCA,SQnxCA,OAAA,oBRsxCA,SQnxCA,OAAA,mBRsxCA,UQnxCA,YAAA,oB+Dl/VM,aAAA,oB/Dq/VN,U+Dr/VM,YAAA,mBAOI,aAAA,mBAPJ,UAOI,YAAA,mB/Do/VV,aAAA,mBRsxCA,UQnxCA,YAAA,oB+D9/VM,aAAA,oB/DigWN,U+DjgWM,YAAA,mBAOI,aAAA,mBAPJ,UAOI,WAAA,oB/DggWV,cAAA,oBRsxCA,UQnxCA,WAAA,mB+D1gWM,cAAA,mB/D6gWN,U+D7gWM,WAAA,mBAOI,cAAA,mBAPJ,UAOI,WAAA,oB/D4gWV,cAAA,oBRsxCA,UuElyYU,WAAA,mB/DghWV,cAAA,mBRsxCA,UuEtyYU,WAAA,oBAPJ,UAOI,WAAA,mB/DwhWV,U+D/hWM,WAAA,mBvEszYN,UQnxCA,WAAA,oBRsxCA,UuElzYU,WAAA,mBAPJ,UAOI,YAAA,oB/DoiWV,U+D3iWM,YAAA,mBvEk0YN,UQnxCA,YAAA,mBRsxCA,UuE9zYU,YAAA,oBAPJ,UAOI,YAAA,mB/DgjWV,U+DvjWM,cAAA,oBvE80YN,UQnxCA,cAAA,mBRsxCA,UQnxCA,cAAA,mBRsxCA,UQnxCA,cAAA,oBRsxCA,UQnxCA,cAAA,mBRsxCA,UQnxCA,aAAA,oBRsxCA,UQnxCA,aAAA,mBRsxCA,UQnxCA,aAAA,mBRsxCA,UQnxCA,aAAA,oBRsxCA,UQnxCA,aAAA,mBRsxCA,QQnxCA,QAAA,YRsxCA,QQnxCA,QAAA,mBRsxCA,QQnxCA,QAAA,kBRsxCA,QQnxCA,QAAA,kBRsxCA,QQnxCA,QAAA,mBRsxCA,QQnxCA,QAAA,kBRsxCA,SQnxCA,aAAA,Y+DxmWM,cAAA,Y/D2mWN,S+D3mWM,aAAA,mBAOI,cAAA,mBAPJ,SAOI,aAAA,kB/D0mWV,cAAA,kBRsxCA,SQnxCA,aAAA,kB+DpnWM,cAAA,kB/DunWN,S+DvnWM,aAAA,mBAOI,cAAA,mBAPJ,SAOI,aAAA,kB/DsnWV,cAAA,kBRsxCA,SQnxCA,YAAA,Y+DhoWM,eAAA,Y/DmoWN,S+DnoWM,YAAA,mBAOI,eAAA,mBAPJ,SAOI,YAAA,kB/DkoWV,eAAA,kBRsxCA,SuEx5YU,YAAA,kB/DsoWV,eAAA,kBRsxCA,SuE55YU,YAAA,mB/D0oWV,eAAA,mBRsxCA,SuEh6YU,YAAA,kB/D8oWV,eAAA,kBRsxCA,SuEp6YU,YAAA,YAPJ,SAOI,YAAA,mB/DspWV,S+D7pWM,YAAA,kBvEo7YN,SQnxCA,YAAA,kBRsxCA,SuEh7YU,YAAA,mBAPJ,SAOI,YAAA,kB/DkqWV,S+DzqWM,aAAA,YvEg8YN,SQnxCA,aAAA,mBRsxCA,SuE57YU,aAAA,kBAPJ,SAOI,aAAA,kB/D8qWV,S+DrrWM,aAAA,mBvE48YN,SQnxCA,aAAA,kBRsxCA,SQnxCA,eAAA,YRsxCA,SQnxCA,eAAA,mBRsxCA,SQnxCA,eAAA,kBRsxCA,SQnxCA,eAAA,kBRsxCA,SQnxCA,eAAA,mBRsxCA,SQnxCA,eAAA,kBRsxCA,SQnxCA,cAAA,YRsxCA,SQnxCA,cAAA,mBRsxCA,SQnxCA,cAAA,kBRsxCA,SQnxCA,cAAA,kBRsxCA,SQnxCA,cAAA,mBRsxCA,SQnxCA,cAAA,kBRsxCA,UQnxCA,IAAA,YRsxCA,UQnxCA,IAAA,mBRsxCA,UQnxCA,IAAA,kBRsxCA,UQnxCA,IAAA,kBRsxCA,UQnxCA,IAAA,mBRsxCA,UQnxCA,IAAA,kBRsxCA,cQnxCA,QAAA,YRsxCA,cQnxCA,QAAA,mBRsxCA,cQnxCA,QAAA,kBRsxCA,cQnxCA,QAAA,kBRsxCA,cQnxCA,QAAA,mBRsxCA,cQnxCA,QAAA,kBRsxCA,iBQnxCA,mBAAA,Y+DpwWM,gBAAA,YAOI,WAAA,YAPJ,iBAOI,mBAAA,mB/DmwWV,gBAAA,mB+D1wWM,WAAA,mB/D6wWN,iB+D7wWM,mBAAA,kBAOI,gBAAA,kB/DywWV,WAAA,kBRsxCA,iBQnxCA,mBAAA,kB+DnxWM,gBAAA,kBAOI,WAAA,kBAPJ,iBAOI,mBAAA,mB/DkxWV,gBAAA,mB+DzxWM,WAAA,mB/D4xWN,iB+D5xWM,mBAAA,kBAOI,gBAAA,kB/DwxWV,WAAA,kBRsxCA,eQnxCA,WAAA,gBRsxCA,aQnxCA,WAAA,eRsxCA,gBACE,WuErjZQ,kBvEwjZZ,0BACE,gBACE,MuE1jZQ,gB/DoyWV,c+D3yWM,MAAA,evEskZN,eACE,MAAO,euEvkZH,uBAOI,cAAA,kBAAA,WAAA,kB/D0yWV,qB+DjzWM,cAAA,gBAOI,WAAA,gBvE0kZV,oBQ7xCA,cAAA,e+DpzWM,WAAA,evEqlZN,qBACE,cuE/kZQ,qB/DgzWV,WAAA,qBRkyCA,oBQ/xCA,cAAA,e+D1zWM,WAAA,e/D6zWN,a+D7zWM,QAAA,iB/Dg0WN,mBACF,QAAA,uB+Dj0WQ,YAOI,QAAA,gBAPJ,WAOI,QAAA,eAPJ,kBAOI,QAAA,sBAPJ,YAOI,QAAA,gB/Du0WV,gB+D90WM,QAAA,oBvEknZN,iBQjyCA,QAAA,qBRoyCA,WACE,QuE/mZQ,sB/D60WV,QAAA,sB+Dp1WM,QAAA,evE0nZN,kBQnyCA,QAAA,6B+Dv1WM,QAAA,6BAOI,QAAA,sB/Dm1WV,W+D11WM,QAAA,e/D61WN,c+D71WM,iBAAA,YAOI,SAAA,EAAA,EAAA,e/Dy1WV,KAAA,EAAA,EAAA,eRuyCA,aQpyCA,mBAAA,qB+Dn2WM,sBAAA,iBAOI,mBAAA,c/D+1WV,eAAA,cRuyCA,gBQpyCA,mBAAA,mB+Dz2WM,sBAAA,iBAOI,mBAAA,iB/Dq2WV,eAAA,iBRuyCA,qBQpyCA,mBAAA,qB+D/2WM,sBAAA,kBAOI,mBAAA,sB/D22WV,eAAA,sBRuyCA,wBuElpZU,mBAAA,mBAAA,sBAAA,kB/D82WV,mBAAA,yB+Dr3WM,eAAA,yBvE+pZN,gBuExpZU,iBAAA,Y/Di3WV,kBAAA,Y+Dx3WM,UAAA,Y/D23WN,gB+D33WM,iBAAA,YAOI,kBAAA,YAAA,UAAA,Y/Du3WV,kB+D93WM,kBAAA,YAOI,YAAA,YvEsqZV,kBACE,kBuEvqZQ,Y/D03WV,YAAA,YRgzCA,cuE1qZU,cAAA,eAAA,UAAA,e/D63WV,gB+Dp4WM,cAAA,iBAOI,UAAA,iBvEkrZV,sBACE,cuEnrZQ,uB/Dg4WV,UAAA,uBRszCA,0BuEtrZU,iBAAA,gBAAA,cAAA,gBAAA,gBAAA,qBAPJ,wBAOI,iBAAA,cAAA,cAAA,cAAA,gBAAA,mBAPJ,2BAOI,iBAAA,iBAAA,cAAA,iBAAA,gBAAA,iBAPJ,4BAOI,iBAAA,kBAAA,cAAA,kB/D44WV,gBAAA,wBR8zCA,2BACE,cuE3sZQ,qB/D+4WV,gBAAA,uBR+zCA,2BACE,iBuE/sZQ,uB/Dk5WV,cAAA,uB+Dz5WM,gBAAA,uBvE0tZN,sBQ9zCA,kBAAA,gB+D55WM,eAAA,gBAOI,YAAA,qB/Dw5WV,oB+D/5WM,kBAAA,cAOI,eAAA,cAAA,YAAA,mB/D25WV,uB+Dl6WM,kBAAA,iBAOI,eAAA,iBAAA,YAAA,iB/D85WV,yB+Dr6WM,kBAAA,mBAOI,eAAA,mBAAA,YAAA,mB/Di6WV,wB+Dx6WM,kBAAA,kBAOI,eAAA,kBAAA,YAAA,kB/Do6WV,wB+D36WM,mBAAA,gBAOI,cAAA,qB/Du6WV,sB+D96WM,mBAAA,cAOI,cAAA,mBvEovZV,yBQ10CA,mBAAA,iB+Dj7WM,cAAA,iBvE+vZN,0BACE,mBuEzvZQ,kB/D66WV,cAAA,wBR+0CA,yBACE,mBuE7vZQ,qBvE8vZJ,cuE9vZI,uBAPJ,0BAOI,mBAAA,kBAAA,cAAA,kB/Dm7WV,oB+D17WM,oBAAA,eAOI,WAAA,evEwwZV,qBQl1CA,oBAAA,gB+D77WM,WAAA,qBvEmxZN,mBACE,oBuE7wZQ,c/Dy7WV,WAAA,mBRu1CA,sBACE,oBuEjxZQ,iB/D47WV,WAAA,iBRw1CA,wBACE,oBuErxZQ,mB/D+7WV,WAAA,mBRy1CA,uBACE,oBuEzxZQ,kB/Dk8WV,WAAA,kBR01CA,gBACE,0BuE7xZQ,Y/Dq8WV,eAAA,a+D58WM,MAAA,avEwyZN,YQz1CA,0BAAA,Y+D/8WM,eAAA,YAOI,MAAA,Y/D28WV,Y+Dl9WM,0BAAA,YAOI,eAAA,YAAA,MAAA,YAPJ,YAOI,0BAAA,YAAA,eAAA,Y/Di9WV,MAAA,YR+1CA,YACE,0BuEjzZQ,Y/Do9WV,eAAA,Y+D39WM,MAAA,YvE4zZN,YQ91CA,0BAAA,Y+D99WM,eAAA,YAOI,MAAA,Y/D09WV,Y+Dj+WM,0BAAA,YAOI,eAAA,YAAA,MAAA,YAPJ,eAOI,0BAAA,YAAA,eAAA,YAAA,MAAA,YAPJ,QAOI,OAAA,YvEu0ZV,QQp2CA,OAAA,mBRu2CA,QACE,OuE30ZQ,kB/Ds+WV,Q+D7+WM,OAAA,kBvEu1ZN,QACE,OuEj1ZQ,mBAPJ,QAOI,OAAA,kBvEs1ZV,WQ12CA,OAAA,eR62CA,SACE,YuE11ZQ,YvE21ZR,auE31ZQ,YAPJ,SAOI,YAAA,mBvE+1ZR,auE/1ZQ,mB/Dk/WV,S+Dz/WM,YAAA,kBAOI,aAAA,kBvEq2ZV,SQh3CA,YAAA,kB+D5/WM,aAAA,kB/D+/WN,S+D//WM,YAAA,mBAOI,aAAA,mBAPJ,SAOI,YAAA,kB/D8/WV,aAAA,kBRm3CA,YQh3CA,YAAA,e+DxgXM,aAAA,e/D2gXN,S+D3gXM,WAAA,YAOI,cAAA,YAPJ,SAOI,WAAA,mB/D0gXV,cAAA,mBRm3CA,SuE73ZU,WAAA,kB/D8gXV,cAAA,kBRm3CA,SuEj4ZU,WAAA,kB/DkhXV,cAAA,kBRm3CA,SuEr4ZU,WAAA,mB/DshXV,cAAA,mBRm3CA,SuEz4ZU,WAAA,kB/D0hXV,cAAA,kBRm3CA,YuE74ZU,WAAA,e/D8hXV,cAAA,eRm3CA,SuEj5ZU,WAAA,YAPJ,SAOI,WAAA,mB/DsiXV,S+D7iXM,WAAA,kBvEi6ZN,SQh3CA,WAAA,kBRm3CA,SuE75ZU,WAAA,mBAPJ,SAOI,WAAA,kB/DkjXV,Y+DzjXM,WAAA,evE66ZN,SQh3CA,YAAA,YRm3CA,SuEz6ZU,YAAA,mBAPJ,SAOI,YAAA,kB/D8jXV,S+DrkXM,YAAA,kBvEy7ZN,SQh3CA,YAAA,mBRm3CA,SQh3CA,YAAA,kBRm3CA,YQh3CA,YAAA,eRm3CA,SQh3CA,cAAA,YRm3CA,SQh3CA,cAAA,mBRm3CA,SQh3CA,cAAA,kBRm3CA,SQh3CA,cAAA,kBRm3CA,SQh3CA,cAAA,mBRm3CA,SQh3CA,cAAA,kBRm3CA,YQh3CA,cAAA,eRm3CA,SQh3CA,aAAA,YRm3CA,SQh3CA,aAAA,mBRm3CA,SQh3CA,aAAA,kBRm3CA,SQh3CA,aAAA,kBRm3CA,SQh3CA,aAAA,mBRm3CA,SQh3CA,aAAA,kBRm3CA,YQh3CA,aAAA,eRm3CA,SQh3CA,OAAA,oBRm3CA,SQh3CA,OAAA,mBRm3CA,SQh3CA,OAAA,mBRm3CA,SQh3CA,OAAA,oBRm3CA,SQh3CA,OAAA,mBRm3CA,UQh3CA,YAAA,oB+D3oXM,aAAA,oB/D8oXN,U+D9oXM,YAAA,mBAOI,aAAA,mBAPJ,UAOI,YAAA,mB/D6oXV,aAAA,mBRm3CA,UQh3CA,YAAA,oB+DvpXM,aAAA,oB/D0pXN,U+D1pXM,YAAA,mBAOI,aAAA,mBAPJ,UAOI,WAAA,oB/DypXV,cAAA,oBRm3CA,UQh3CA,WAAA,mB+DnqXM,cAAA,mB/DsqXN,U+DtqXM,WAAA,mBAOI,cAAA,mBAPJ,UAOI,WAAA,oB/DqqXV,cAAA,oBRm3CA,UuExhaU,WAAA,mB/DyqXV,cAAA,mBRm3CA,UuE5haU,WAAA,oBAPJ,UAOI,WAAA,mB/DirXV,U+DxrXM,WAAA,mBvE4iaN,UQh3CA,WAAA,oBRm3CA,UuExiaU,WAAA,mBAPJ,UAOI,YAAA,oB/D6rXV,U+DpsXM,YAAA,mBvEwjaN,UQh3CA,YAAA,mBRm3CA,UuEpjaU,YAAA,oBAPJ,UAOI,YAAA,mB/DysXV,U+DhtXM,cAAA,oBvEokaN,UQh3CA,cAAA,mBRm3CA,UQh3CA,cAAA,mBRm3CA,UQh3CA,cAAA,oBRm3CA,UQh3CA,cAAA,mBRm3CA,UQh3CA,aAAA,oBRm3CA,UQh3CA,aAAA,mBRm3CA,UQh3CA,aAAA,mBRm3CA,UQh3CA,aAAA,oBRm3CA,UQh3CA,aAAA,mBRm3CA,QQh3CA,QAAA,YRm3CA,QQh3CA,QAAA,mBRm3CA,QQh3CA,QAAA,kBRm3CA,QQh3CA,QAAA,kBRm3CA,QQh3CA,QAAA,mBRm3CA,QQh3CA,QAAA,kBRm3CA,SQh3CA,aAAA,Y+DjwXM,cAAA,Y/DowXN,S+DpwXM,aAAA,mBAOI,cAAA,mBAPJ,SAOI,aAAA,kB/DmwXV,cAAA,kBRm3CA,SQh3CA,aAAA,kB+D7wXM,cAAA,kB/DgxXN,S+DhxXM,aAAA,mBAOI,cAAA,mBAPJ,SAOI,aAAA,kB/D+wXV,cAAA,kBRm3CA,SQh3CA,YAAA,Y+DzxXM,eAAA,Y/D4xXN,S+D5xXM,YAAA,mBAOI,eAAA,mBAPJ,SAOI,YAAA,kB/D2xXV,eAAA,kBRm3CA,SuE9oaU,YAAA,kB/D+xXV,eAAA,kBRm3CA,SuElpaU,YAAA,mB/DmyXV,eAAA,mBRm3CA,SuEtpaU,YAAA,kB/DuyXV,eAAA,kBRm3CA,SuE1paU,YAAA,YAPJ,SAOI,YAAA,mB/D+yXV,S+DtzXM,YAAA,kBvE0qaN,SQh3CA,YAAA,kBRm3CA,SuEtqaU,YAAA,mBAPJ,SAOI,YAAA,kB/D2zXV,S+Dl0XM,aAAA,YvEsraN,SQh3CA,aAAA,mBRm3CA,SuElraU,aAAA,kBAPJ,SAOI,aAAA,kB/Du0XV,S+D90XM,aAAA,mBvEksaN,SQh3CA,aAAA,kBRm3CA,SQh3CA,eAAA,YRm3CA,SQh3CA,eAAA,mBRm3CA,SQh3CA,eAAA,kBRm3CA,SQh3CA,eAAA,kBRm3CA,SQh3CA,eAAA,mBRm3CA,SQh3CA,eAAA,kBRm3CA,SQh3CA,cAAA,YRm3CA,SQh3CA,cAAA,mBRm3CA,SQh3CA,cAAA,kBRm3CA,SQh3CA,cAAA,kBRm3CA,SQh3CA,cAAA,mBRm3CA,SQh3CA,cAAA,kBRm3CA,UQh3CA,IAAA,YRm3CA,UQh3CA,IAAA,mBRm3CA,UQh3CA,IAAA,kBRm3CA,UQh3CA,IAAA,kBRm3CA,UQh3CA,IAAA,mBRm3CA,UQh3CA,IAAA,kBRm3CA,cQh3CA,QAAA,YRm3CA,cQh3CA,QAAA,mBRm3CA,cQh3CA,QAAA,kBRm3CA,cQh3CA,QAAA,kBRm3CA,cQh3CA,QAAA,mBRm3CA,cQh3CA,QAAA,kBRm3CA,iBQh3CA,mBAAA,Y+D75XM,gBAAA,YAOI,WAAA,YAPJ,iBAOI,mBAAA,mB/D45XV,gBAAA,mB+Dn6XM,WAAA,mB/Ds6XN,iB+Dt6XM,mBAAA,kBAOI,gBAAA,kB/Dk6XV,WAAA,kBRm3CA,iBQh3CA,mBAAA,kB+D56XM,gBAAA,kBAOI,WAAA,kBAPJ,iBAOI,mBAAA,mB/D26XV,gBAAA,mB+Dl7XM,WAAA,mB/Dq7XN,iB+Dr7XM,mBAAA,kBAOI,gBAAA,kB/Di7XV,WAAA,kBRm3CA,eQh3CA,WAAA,gBRm3CA,aQh3CA,WAAA,eRm3CA,gBACE,WuE3yaQ,kBvE8yaZ,0BACE,iBACE,MuEhzaQ,gB/D67XV,e+Dp8XM,MAAA,evE4zaN,gBACE,MAAO,euE7zaH,wBAOI,cAAA,kBAAA,WAAA,kB/Dm8XV,sB+D18XM,cAAA,gBAOI,WAAA,gBvEg0aV,qBQ13CA,cAAA,e+D78XM,WAAA,evE20aN,sBACE,cuEr0aQ,qB/Dy8XV,WAAA,qBR+3CA,qBQ53CA,cAAA,e+Dn9XM,WAAA,e/Ds9XN,c+Dt9XM,QAAA,iB/Dy9XN,oBACF,QAAA,uB+D19XQ,aAOI,QAAA,gBAPJ,YAOI,QAAA,eAPJ,mBAOI,QAAA,sBAPJ,aAOI,QAAA,gB/Dg+XV,iB+Dv+XM,QAAA,oBvEw2aN,kBQ93CA,QAAA,qBRi4CA,YACE,QuEr2aQ,sB/Ds+XV,QAAA,sB+D7+XM,QAAA,evEg3aN,mBQh4CA,QAAA,6B+Dh/XM,QAAA,6BAOI,QAAA,sB/D4+XV,Y+Dn/XM,QAAA,e/Ds/XN,e+Dt/XM,iBAAA,YAOI,SAAA,EAAA,EAAA,e/Dk/XV,KAAA,EAAA,EAAA,eRo4CA,cQj4CA,mBAAA,qB+D5/XM,sBAAA,iBAOI,mBAAA,c/Dw/XV,eAAA,cRo4CA,iBQj4CA,mBAAA,mB+DlgYM,sBAAA,iBAOI,mBAAA,iB/D8/XV,eAAA,iBRo4CA,sBQj4CA,mBAAA,qB+DxgYM,sBAAA,kBAOI,mBAAA,sB/DogYV,eAAA,sBRo4CA,yBuEx4aU,mBAAA,mBAAA,sBAAA,kB/DugYV,mBAAA,yB+D9gYM,eAAA,yBvEq5aN,iBuE94aU,iBAAA,Y/D0gYV,kBAAA,Y+DjhYM,UAAA,Y/DohYN,iB+DphYM,iBAAA,YAOI,kBAAA,YAAA,UAAA,Y/DghYV,mB+DvhYM,kBAAA,YAOI,YAAA,YvE45aV,mBACE,kBuE75aQ,Y/DmhYV,YAAA,YR64CA,euEh6aU,cAAA,eAAA,UAAA,e/DshYV,iB+D7hYM,cAAA,iBAOI,UAAA,iBvEw6aV,uBACE,cuEz6aQ,uB/DyhYV,UAAA,uBRm5CA,2BuE56aU,iBAAA,gBAAA,cAAA,gBAAA,gBAAA,qBAPJ,yBAOI,iBAAA,cAAA,cAAA,cAAA,gBAAA,mBAPJ,4BAOI,iBAAA,iBAAA,cAAA,iBAAA,gBAAA,iBAPJ,6BAOI,iBAAA,kBAAA,cAAA,kB/DqiYV,gBAAA,wBR25CA,4BACE,cuEj8aQ,qB/DwiYV,gBAAA,uBR45CA,4BACE,iBuEr8aQ,uB/D2iYV,cAAA,uB+DljYM,gBAAA,uBvEg9aN,uBQ35CA,kBAAA,gB+DrjYM,eAAA,gBAOI,YAAA,qB/DijYV,qB+DxjYM,kBAAA,cAOI,eAAA,cAAA,YAAA,mB/DojYV,wB+D3jYM,kBAAA,iBAOI,eAAA,iBAAA,YAAA,iB/DujYV,0B+D9jYM,kBAAA,mBAOI,eAAA,mBAAA,YAAA,mB/D0jYV,yB+DjkYM,kBAAA,kBAOI,eAAA,kBAAA,YAAA,kB/D6jYV,yB+DpkYM,mBAAA,gBAOI,cAAA,qB/DgkYV,uB+DvkYM,mBAAA,cAOI,cAAA,mBvE0+aV,0BQv6CA,mBAAA,iB+D1kYM,cAAA,iBvEq/aN,2BACE,mBuE/+aQ,kB/DskYV,cAAA,wBR46CA,0BACE,mBuEn/aQ,qBvEo/aJ,cuEp/aI,uBAPJ,2BAOI,mBAAA,kBAAA,cAAA,kB/D4kYV,qB+DnlYM,oBAAA,eAOI,WAAA,evE8/aV,sBQ/6CA,oBAAA,gB+DtlYM,WAAA,qBvEygbN,oBACE,oBuEngbQ,c/DklYV,WAAA,mBRo7CA,uBACE,oBuEvgbQ,iB/DqlYV,WAAA,iBRq7CA,yBACE,oBuE3gbQ,mB/DwlYV,WAAA,mBRs7CA,wBACE,oBuE/gbQ,kB/D2lYV,WAAA,kBRu7CA,iBACE,0BuEnhbQ,Y/D8lYV,eAAA,a+DrmYM,MAAA,avE8hbN,aQt7CA,0BAAA,Y+DxmYM,eAAA,YAOI,MAAA,Y/DomYV,a+D3mYM,0BAAA,YAOI,eAAA,YAAA,MAAA,YAPJ,aAOI,0BAAA,YAAA,eAAA,Y/D0mYV,MAAA,YR47CA,aACE,0BuEvibQ,Y/D6mYV,eAAA,Y+DpnYM,MAAA,YvEkjbN,aQ37CA,0BAAA,Y+DvnYM,eAAA,YAOI,MAAA,Y/DmnYV,a+D1nYM,0BAAA,YAOI,eAAA,YAAA,MAAA,YAPJ,gBAOI,0BAAA,YAAA,eAAA,YAAA,MAAA,YAPJ,SAOI,OAAA,YvE6jbV,SQj8CA,OAAA,mBRo8CA,SACE,OuEjkbQ,kB/D+nYV,S+DtoYM,OAAA,kBvE6kbN,SACE,OuEvkbQ,mBAPJ,SAOI,OAAA,kBvE4kbV,YQv8CA,OAAA,eR08CA,UACE,YuEhlbQ,YvEilbR,auEjlbQ,YAPJ,UAOI,YAAA,mBvEqlbR,auErlbQ,mB/D2oYV,U+DlpYM,YAAA,kBAOI,aAAA,kBvE2lbV,UQ78CA,YAAA,kB+DrpYM,aAAA,kB/DwpYN,U+DxpYM,YAAA,mBAOI,aAAA,mBAPJ,UAOI,YAAA,kB/DupYV,aAAA,kBRg9CA,aQ78CA,YAAA,e+DjqYM,aAAA,e/DoqYN,U+DpqYM,WAAA,YAOI,cAAA,YAPJ,UAOI,WAAA,mB/DmqYV,cAAA,mBRg9CA,UuEnnbU,WAAA,kB/DuqYV,cAAA,kBRg9CA,UuEvnbU,WAAA,kB/D2qYV,cAAA,kBRg9CA,UuE3nbU,WAAA,mB/D+qYV,cAAA,mBRg9CA,UuE/nbU,WAAA,kB/DmrYV,cAAA,kBRg9CA,auEnobU,WAAA,e/DurYV,cAAA,eRg9CA,UuEvobU,WAAA,YAPJ,UAOI,WAAA,mB/D+rYV,U+DtsYM,WAAA,kBvEupbN,UQ78CA,WAAA,kBRg9CA,UuEnpbU,WAAA,mBAPJ,UAOI,WAAA,kB/D2sYV,a+DltYM,WAAA,evEmqbN,UQ78CA,YAAA,YRg9CA,UuE/pbU,YAAA,mBAPJ,UAOI,YAAA,kB/DutYV,U+D9tYM,YAAA,kBvE+qbN,UQ78CA,YAAA,mBRg9CA,UQ78CA,YAAA,kBRg9CA,aQ78CA,YAAA,eRg9CA,UQ78CA,cAAA,YRg9CA,UQ78CA,cAAA,mBRg9CA,UQ78CA,cAAA,kBRg9CA,UQ78CA,cAAA,kBRg9CA,UQ78CA,cAAA,mBRg9CA,UQ78CA,cAAA,kBRg9CA,aQ78CA,cAAA,eRg9CA,UQ78CA,aAAA,YRg9CA,UQ78CA,aAAA,mBRg9CA,UQ78CA,aAAA,kBRg9CA,UQ78CA,aAAA,kBRg9CA,UQ78CA,aAAA,mBRg9CA,UQ78CA,aAAA,kBRg9CA,aQ78CA,aAAA,eRg9CA,UQ78CA,OAAA,oBRg9CA,UQ78CA,OAAA,mBRg9CA,UQ78CA,OAAA,mBRg9CA,UQ78CA,OAAA,oBRg9CA,UQ78CA,OAAA,mBRg9CA,WQ78CA,YAAA,oB+DpyYM,aAAA,oB/DuyYN,W+DvyYM,YAAA,mBAOI,aAAA,mBAPJ,WAOI,YAAA,mB/DsyYV,aAAA,mBRg9CA,WQ78CA,YAAA,oB+DhzYM,aAAA,oB/DmzYN,W+DnzYM,YAAA,mBAOI,aAAA,mBAPJ,WAOI,WAAA,oB/DkzYV,cAAA,oBRg9CA,WQ78CA,WAAA,mB+D5zYM,cAAA,mB/D+zYN,W+D/zYM,WAAA,mBAOI,cAAA,mBAPJ,WAOI,WAAA,oB/D8zYV,cAAA,oBRg9CA,WuE9wbU,WAAA,mB/Dk0YV,cAAA,mBRg9CA,WuElxbU,WAAA,oBAPJ,WAOI,WAAA,mB/D00YV,W+Dj1YM,WAAA,mBvEkybN,WQ78CA,WAAA,oBRg9CA,WuE9xbU,WAAA,mBAPJ,WAOI,YAAA,oB/Ds1YV,W+D71YM,YAAA,mBvE8ybN,WQ78CA,YAAA,mBRg9CA,WuE1ybU,YAAA,oBAPJ,WAOI,YAAA,mB/Dk2YV,W+Dz2YM,cAAA,oBvE0zbN,WQ78CA,cAAA,mBRg9CA,WQ78CA,cAAA,mBRg9CA,WQ78CA,cAAA,oBRg9CA,WQ78CA,cAAA,mBRg9CA,WQ78CA,aAAA,oBRg9CA,WQ78CA,aAAA,mBRg9CA,WQ78CA,aAAA,mBRg9CA,WQ78CA,aAAA,oBRg9CA,WQ78CA,aAAA,mBRg9CA,SQ78CA,QAAA,YRg9CA,SQ78CA,QAAA,mBRg9CA,SQ78CA,QAAA,kBRg9CA,SQ78CA,QAAA,kBRg9CA,SQ78CA,QAAA,mBRg9CA,SQ78CA,QAAA,kBRg9CA,UQ78CA,aAAA,Y+D15YM,cAAA,Y/D65YN,U+D75YM,aAAA,mBAOI,cAAA,mBAPJ,UAOI,aAAA,kB/D45YV,cAAA,kBRg9CA,UQ78CA,aAAA,kB+Dt6YM,cAAA,kB/Dy6YN,U+Dz6YM,aAAA,mBAOI,cAAA,mBAPJ,UAOI,aAAA,kB/Dw6YV,cAAA,kBRg9CA,UQ78CA,YAAA,Y+Dl7YM,eAAA,Y/Dq7YN,U+Dr7YM,YAAA,mBAOI,eAAA,mBAPJ,UAOI,YAAA,kB/Do7YV,eAAA,kBRg9CA,UuEp4bU,YAAA,kB/Dw7YV,eAAA,kBRg9CA,UuEx4bU,YAAA,mB/D47YV,eAAA,mBRg9CA,UuE54bU,YAAA,kB/Dg8YV,eAAA,kBRg9CA,UuEh5bU,YAAA,YAPJ,UAOI,YAAA,mB/Dw8YV,U+D/8YM,YAAA,kBvEg6bN,UQ78CA,YAAA,kBRg9CA,UuE55bU,YAAA,mBAPJ,UAOI,YAAA,kB/Do9YV,U+D39YM,aAAA,YvE46bN,UQ78CA,aAAA,mBRg9CA,UuEx6bU,aAAA,kBAPJ,UAOI,aAAA,kB/Dg+YV,U+Dv+YM,aAAA,mBvEw7bN,UQ78CA,aAAA,kBRg9CA,UQ78CA,eAAA,YRg9CA,UQ78CA,eAAA,mBRg9CA,UQ78CA,eAAA,kBRg9CA,UQ78CA,eAAA,kBRg9CA,UQ78CA,eAAA,mBRg9CA,UQ78CA,eAAA,kBRg9CA,UQ78CA,cAAA,YRg9CA,UQ78CA,cAAA,mBRg9CA,UQ78CA,cAAA,kBRg9CA,UQ78CA,cAAA,kBRg9CA,UQ78CA,cAAA,mBRg9CA,UQ78CA,cAAA,kBRg9CA,WQ78CA,IAAA,YRg9CA,WQ78CA,IAAA,mBRg9CA,WQ78CA,IAAA,kBRg9CA,WQ78CA,IAAA,kBRg9CA,WQ78CA,IAAA,mBRg9CA,WQ78CA,IAAA,kBRg9CA,eQ78CA,QAAA,YRg9CA,eQ78CA,QAAA,mBRg9CA,eQ78CA,QAAA,kBRg9CA,eQ78CA,QAAA,kBRg9CA,eQ78CA,QAAA,mBRg9CA,eQ78CA,QAAA,kBRg9CA,kBQ78CA,mBAAA,Y+DtjZM,gBAAA,YAOI,WAAA,YAPJ,kBAOI,mBAAA,mB/DqjZV,gBAAA,mB+D5jZM,WAAA,mB/D+jZN,kB+D/jZM,mBAAA,kBAOI,gBAAA,kB/D2jZV,WAAA,kBRg9CA,kBQ78CA,mBAAA,kB+DrkZM,gBAAA,kBAOI,WAAA,kBAPJ,kBAOI,mBAAA,mB/DokZV,gBAAA,mB+D3kZM,WAAA,mB/D8kZN,kB+D9kZM,mBAAA,kBAOI,gBAAA,kB/D0kZV,WAAA,kBRg9CA,gBQ78CA,WAAA,gBRg9CA,cQ78CA,WAAA,eRg9CA,iBACE,WuEjicQ,kBvEoicZ,0BACE,MACE,UuEticQ,oB/DslZV,M+D7lZM,UAAA,kBvEkjcN,MACE,UuE5icQ,sBvE+icZ,aACE,gBACE,QuEjjcQ,iBAPJ,sBAOI,QAAA,uBvEsjcV,eQv9CA,QAAA,gBR09CA,cACE,QuE1jcQ,e/DkmZV,qB+DzmZM,QAAA,sB/D4mZN,e+D5mZM,QAAA,gB/D+mZN,mB+D/mZM,QAAA,oB/DknZN,oBACF,QAAA,qB+DnnZQ,cAOI,QAAA,sB/DgnZV,QAAA,sB+DvnZM,QAAA,e/D0nZN,qB+D1nZM,QAAA,6BAOI,QAAA,6B/DsnZV,QAAA,sBgEzpZF,cD4BQ,QAAA,gBvE6lcR,aACE,OuEvlcU,yBvE0lcZ,aQz9CE,OAAA,yBR69CF,MuErmcQ,QAAA,MvEumcN,IuEhmcU,E/DuoZV,SAAA,O+D9oZM,WAAA,OvE0mcN,YuEnmcU,wB/D0oZV,QAAA,EAAA,sE+DjpZM,mBAAA,IAAA,KAAA,YvE6mcN,WuEtmcU,IAAA,KAAA,YvEwmcZ,mBACE,QuEzmcU,MvE2mcZ,mBACE,QuE5mcU,KvE8mcZ,iBQ39CE,QAAA,KR89CF,gBACE,QuElncU,MvEuncZ,0CAFA,6CACA,4CQ59CA,QAAA,MRk+CA,yCAFA,4CQ79CA,2CiE1tZI,QAAA,KzE6rcJ,UyEvrcA,cAAA,IACI,QAAA,KACA,OAAA,KAAA,KAAA,KACA,SAAA,SACA,iBAAA,sBzE0rcJ,qByEvrcI,KAAA,KAAA,IAAA,KjE2tZJ,SAAA,SAGA,SiExtZI,OAAA,KACI,MAAA,KzE2rcR,cQ99CA,SAAA,SiEttZI,aAAA,wBACI,WAAA,4CjEwtZR,QAAA,EAAA,QAAA,wBRg+CE,mBAAoB,IAAI,KAAM,YyE/qcxB,WAAA,IAAA,KAAA,YzEmrcR,eQ99CA,QAAA,KiEjtZQ,OAAA,EzEkrcN,IAAK,EACL,SAAU,MyElrcA,MAAA,wBjEqtZZ,UAAA,wBRg+CE,eAAgB,wCyE/qclB,WAAA,kBACI,mBAAA,qBACA,WAAA,qBACA,YAAA,kCAAA,MAAA,uBACA,mBAAA,IAAA,KAAA,YACA,WAAA,IAAA,KAAA,YzEmrcJ,cyE/qcQ,WAAA,iCAAA,OAAA,OACA,QAAA,KjEktZR,SAAA,SRk+CA,2CyE7qcI,QAAA,MAIJ,UACI,cAAA,EACA,eAAA,KACA,gBAAA,KzE+qcJ,ayE7qcI,gBAAA,KzEgrcJ,yByE5qcA,QAAA,MACI,WAAA,KACA,SAAA,SACA,YAAA,OACA,MAAA,0BACA,mBAAA,IAAA,KCpFgC,YDqFhC,WAAA,IAAA,KAAA,YACA,UAAA,8BACA,QAAA,8BC3EsC,8BD4EtC,gCAAA,+BzE8qcJ,+ByE7qcI,MAAA,gCACA,gBAAA,KjE8sZJ,8BRm+CE,eAAgB,OAElB,2ByE7qcI,QAAA,aACA,eAAA,OjE6sZJ,WAAA,ORm+CE,UAAW,8ByE3qcT,YAAA,8BACI,MAAA,+BzE8qcR,sByEzqcA,QAAA,aACI,eAAA,KACA,SAAA,SACA,IAAA,IjEysZJ,KAAA,yCiEvsZI,mBAAA,kBAAA,KACI,WAAA,kBAAA,KjEysZR,WAAA,UAAA,KiErsZI,WAAA,UAAA,IAAA,CAAA,kBAAA,KACI,kBAAA,oBACA,UAAA,oBACA,YAAA,8BACA,UAAA,2CzE0qcR,6ByExqcQ,QAAA,QACA,YAAA,UjEwsZR,iBiErsZQ,WAAA,0CAGI,SAAA,SACA,KAAA,EjEqsZZ,YAAA,0CRq+CA,0BQl+CA,eAAA,KiEjsZQ,OAAA,QACI,QAAA,GACA,YAAA,OACA,eAAA,UACA,MAAA,0BACA,YAAA,IACA,UAAA,0CjEmsZZ,QAAA,8BAAA,0CRq+CA,+DyElqcQ,kBAAA,oBAAA,eACA,UAAA,oBAAA,ezEqqcR,2EyElqcQ,kBAAA,oBAAA,eAAA,UAAA,oBAAA,ezEsqcR,6ByErqcQ,MAAA,iCCvJ4B,oCDwJ5B,mCzEuqcR,mCyEtqcQ,MAAA,iCAEA,oDACI,MAAA,iCjEksZZ,iBiE7rZI,OAAA,EACI,MAAA,KACA,SAAA,SjEisZR,sDiE5rZI,QAAA,mBzE4qcJ,qCADA,yBAHA,sCADA,0BAGA,qCADA,yByEhqcQ,QAAA,EAwBI,oDjE+qZZ,uCRw+CA,wCyE1pcQ,2BjE4qZR,qDRu+CA,wCADA,yCyElqcY,4BjE+rZZ,oDRw+CA,uCADA,wCyE/pcgB,2BAeA,YAAA,OjE+qZhB,MAAA,0BiE1qZY,QAAA,MACI,SAAA,SjE4qZhB,mBAAA,IAAA,KAAA,YiEvqZI,WAAA,IAAA,KAAA,YACI,UAAA,0CACA,QAAA,yCAAA,2CzEorcR,2DADA,0DADA,0DADA,8CADA,6CADA,6CADA,+CADA,8CADA,8CADA,kCADA,iCADA,iCAbA,4DADA,2DADA,2DyEnocI,+CzEiocJ,8CQ1+CA,8CRw+CA,gDyE5ocgB,+CzE0ochB,+CQ1+CA,mCAAA,kCAAA,kCR8/CA,2DADA,0DADA,0DADA,8CADA,6CADA,6CADA,+CyEvocQ,8CjE4pZR,8CRw+CA,kCADA,iCADA,iCQl9CA,MAAA,gCiEtqZY,cAAA,2CzEwpcZ,8CADA,kCAHA,+CADA,mCAGA,8CADA,kCAIE,MAAO,iCAiBT,qDADA,oDADA,oDADA,yCADA,wCADA,wCAPA,sDADA,qDADA,qDADwF,0CAA5C,yCAA5C,yCASA,qDADA,oDADA,oDADA,yCADA,wCADA,wCAYE,MAAO,iCAGT,uBACE,WAAY,0CACZ,cAAe,+ByE7qcD,sBzEgrchB,sByE/qcgB,cAAA,wCzEmrchB,oFACE,QAAS,KACT,aAAc,2BAEhB,oFyEjrcgB,SAAA,SjEysZhB,MAAA,2BiEvsZgB,UAAA,2BzEqrchB,+GADA,oGAEE,SAAU,kBAEZ,yGACE,QAAS,eAEX,sGACE,OAAQ,YAEV,0FACE,QAAS,EACT,WAAY,kBAEd,uGQz+CA,QAAA,KiE/sZA,uGACI,QAAA,MjEmtZJ,wGR2+CA,0GyE1rcA,QAAA,KACI,OAAA,kBjEktZJ,mBAAA,eR2+CE,WAAY,eQt+Cd,8HRw+CA,+HACA,8HAIA,gIyEtrcQ,iIzEqrcR,gIyElrcY,QAAA,ejE2sZZ,QAAA,EiEzsZY,WAAA,EASA,wJjEusZZ,2IAHA,yJRy+CA,4IAGA,wJyEprcY,2IjEktZZ,0JRy+CA,6IQ7+CA,2JRy+CA,8IAGA,0JyElrcY,6IAII,QAAA,KzEqrchB,0IQ5+CA,2IiErsZgB,0IzEorchB,4IQ5+CA,6IiEhsZgB,4IAEI,KAAA,8BACA,kBAAA,oBACA,UAAA,oBjEksZpB,6GiEhsZoB,SAAA,SzE8qcpB,4HACE,mBAAoB,KACpB,WAAY,KACZ,QAAS,0CAA0C,8BAErD,8HyE9qcwB,UAAA,qEjEqsZxB,UAAA,QR6+CmI,mIAAoI,kIAAvQ,kIACE,MAAO,gCAET,iIACE,WAAY,OAEd,wIACE,kBAAmB,oBAAqB,eAChC,UAAW,oBAAqB,eACxC,cAAe,YAEjB,kIQ1+CA,SAAA,SiEtsZwB,MAAA,KzEmrctB,WAAY,iCACZ,MAAO,wBAET,uIACE,WAAY,QAEd,mJACE,ayExrc0B,8BAKZ,6HzEsrchB,+HQ3+CA,QAAA,gBiExsZoB,mBAAA,eACI,WAAA,ezEurcxB,gIQ5+CA,kIiExsZwB,QAAA,gBACI,MAAA,2BACA,SAAA,SjE0sZ5B,WAAA,kBiEvsZwB,mBAAA,EAAA,IAAA,IAAA,EAAA,kBAGI,WAAA,EAAA,IAAA,IAAA,EAAA,kBjEusZ5B,MAAA,2DR++CA,kIQ5+CA,oIiEnsZwB,mBAAA,KACI,WAAA,KzEkrc1B,SyElrc0B,SACA,MAAA,2DjEqsZ5B,QAAA,yCAAA,wCRg/CA,wIACA,0IyE9qc4B,MAAA,gCjEmsZ5B,mJiEhsZ4B,qJzEgrc5B,qJQ7+CA,uJiEhsZgC,QAAA,gBACI,OAAA,ejEksZpC,mBAAA,eiE3rZwB,WAAA,ezE4qcxB,sJACA,wJACA,wJQ9+CA,0JiE3rZ4B,QAAA,gBzE4qc1B,SAAU,mByE3qcoB,IAAA,EACA,MAAA,2DACA,MAAA,2DzE8qchC,+EAEA,mFADA,qFQ9+CA,QAAA,KRk/CA,mFyE7qcoC,aAAA,2BzE+qclC,WyE/qckC,mCzEkrcpC,kFQh/CA,aAAA,2BRm/CA,kFyE/qcwC,MAAA,2BjEgsZxC,UAAA,2BRm/CA,4GACE,WAAY,OACZ,QAAS,8BAA8B,oCAEzC,2GyE5qc4C,WAAA,OAAA,QAAA,8BAAA,0CAEA,2GzE+qc1C,QAAS,8BAA8B,8BACvC,WAAY,OAEd,6GyEhrcgD,QAAA,MACA,WAAA,OACA,OAAA,EAAA,EAAA,4CACA,MAAA,KAYxC,gHzEwqcN,aAAc,EAEhB,kHQj/CA,QAAA,KAIA,kHRg/CA,mHACA,kHAEE,QAAS,EyEzpcH,8HzE2pcR,+HQj/CA,8HiEzqZY,QAAA,aACA,KAAA,8BzEoqcZ,oIyE1pcgB,uHzEspchB,qIyE3pcgB,wHjE2qZhB,oIRi/CA,uHyErpcoB,QAAA,yCAAA,oCjEwqZpB,WAAA,ORo/CA,6EACA,+EQj/CA,QAAA,KRo/CA,iFyEvpcwB,aAAA,2BjEyqZxB,kFiEpqZoB,aAAA,2BjEuqZpB,mFiEnqZoB,aAAA,2BjEsqZpB,uGiEhqZgB,QAAA,KzEqpchB,+FyElpcoB,cAAA,KAEA,+FzEopclB,MAAO,2BACP,UAAW,2BAEb,2HQj/CA,WAAA,IRo/CA,8GACE,QAAS,MACT,WAAY,OAEd,8GyErpc4B,QAAA,KjEsqZ5B,kIiE7pZQ,WAAA,OzEkpcR,+HQj/CA,UAAA,qEiE3pZQ,UAAA,QjE8pZR,6GAAA,+GRm/CE,QAAS,KQ/+CX,gHRi/CA,yGyElocQ,WAAA,OzEwocR,qHQp/CA,sHiEjpZY,qHjEopZZ,OAAA,EiEhpZY,QAAA,EjEmpZZ,qIiE9oZQ,WAAA,IzEmocR,yFQj/CA,WAAA,MRo/CA,yFQj/CA,QAAA,KRo/CA,oGyE5ncoB,QAAA,MAGJ,6FACI,QAAA,KzE+ncpB,iBQj/CA,OAAA,QiEnoZoB,QAAA,KACI,KAAA,sEACA,IAAA,EjEqoZxB,SAAA,SiEhoZY,UAAA,8BACI,YAAA,wBjEkoZhB,QAAA,EiE/nZY,MAAA,0BAEI,wBAAA,uBzEknchB,uBQj/CA,MAAA,gCRq/CA,sFyEhncgB,QAAA,KjEioZhB,8EiEznZoB,cAAA,KjE4nZpB,uFiEtnZY,WAAA,MjEynZZ,kGiErnZY,QAAA,MjEwnZZ,wIiEpnZY,QAAA,QAIA,0BACI,OAAA,QjEqnZhB,QAAA,KRm/CE,KAAM,sEyEjmcR,IAAA,EACI,SAAA,SACA,UAAA,8BACA,YAAA,wBAEA,QAAA,EACA,MAAA,0BC1oBgC,iCD4oBhC,gCzEimcJ,gCyEhmcI,MAAA,gCAGA,sEAGI,aAAA,EzEimcR,mFyE3lcI,QAAA,ajE4mZJ,iFiExmZI,QAAA,MjE2mZJ,sEiErmZQ,aAAA,mCACI,aAAA,YjEumZZ,QAAA,ERo/CA,4EQj/CA,WAAA,MRo/CA,qEQj/CA,aAAA,EiE3lZA,qFACI,QAAA,EACA,QAAA,KACA,aAAA,EzEklcJ,4EyE7kcI,aAAA,EzEglcJ,4EQj/CA,aAAA,mCiE3lZI,QAAA,EjE8lZJ,2ERm/CE,aAAc,EQ/+ChB,mEiEtlZQ,UAAA,IACI,OAAA,EAAA,KAIR,kFACI,QAAA,KjEslZR,OAAA,EAAA,ORo/CA,0FyErkcQ,UAAA,IjEslZR,kFiEnlZQ,OAAA,QACI,IAAA,6CjEqlZZ,cAAA,MiEjlZI,OAAA,kCAAA,MAAA,uBACI,eAAA,EAIA,mGACI,IAAA,8BACA,YAAA,EjEklZZ,2ERm/CE,KAAM,QyE7jcJ,MAAA,QACI,OAAA,QjE6kZR,cAAA,MiE1kZI,OAAA,IAAA,MAAA,uBzE+jcJ,gEQj/CA,WAAA,OiExkZI,OAAA,EjE2kZJ,uERm/CE,QAAS,MAEX,wEyEtjcQ,cAAA,MAAA,MAAA,EAAA,EAEA,0GACI,eAAA,wCACA,IAAA,QjEskZZ,MAAA,QRo/CA,gHQj/CA,IAAA,QiElkZQ,WAAA,QACI,OAAA,KzEujcZ,6HyEpjcY,QAAA,MAIA,0BACI,kCACA,iBAAA,sBAIR,sCACI,OAAA,EAAA,KACA,mBAAA,qBACA,WAAA,qBACA,UAAA,OACA,iBAAA,mBzEqjcZ,yByE/icQ,+CjE+jZR,QAAA,MiE3jZQ,8DjE8jZR,SAAA,SiE1jZI,YAAA,YjE6jZJ,oEiEvjZY,SAAA,SAEI,uFACA,OAAA,+CAEA,qDACI,SAAA,iBAEA,kEjEyjZpB,SAAA,QAGA,4BRm/CE,mEc30dE,UAAA,ed80dF,kFQj/CA,OAAA,EiE/iZM,QAAA,GzEqicR,eACE,WyEnicU,oBzEoicV,mByEnicU,qBjEijZV,WAAA,qBACF,WAAA,wBMp2aI,aAAA,wB2D2zBI,SAAA,OzE+hcN,IyE9hcU,EjE4iZV,mBAAA,IAAA,KAAA,YiE1iZU,WAAA,IAAA,KAAA,YzE+hcV,QyE9hcc,KzE+hcd,cyE9hcc,kCAAA,MAAA,uBzEgichB,uBACE,QyE9hckB,YjE4iZlB,QAAA,YiEziZc,QAAA,KzE8hcd,iByE7hckB,QjE2iZlB,cAAA,QiEtiZM,gBAAA,czE2hcN,kByE1hcU,OjEwiZV,eAAA,OiEliZM,YAAA,OzEuhcN,OyEthcU,EAAA,KjEqiZZ,wCM52aI,OAAA,wB2D80BI,UAAA,MzEqhcR,sDyElhcY,MAAA,4BzEohcV,iByEnhcc,2BzEqhchB,yDQl/CA,MAAA,4BRq/CA,4B2Eh7dI,SAAA,S3Ek7dF,gB2El7dE,KACA,cAAA,E3Eo7dJ,+B2Ej7dI,WAAA,wB3Eo7dJ,8C2El7dI,MAAA,kCnEg8aJ,sCmE77aI,QAAA,EACI,SAAA,SAAA,MAAA,4BAAA,QAAA,YACA,QAAA,Y3Es7dN,Q2Et7dM,K3Eu7dN,kB2Ev7dM,OACA,eAAA,OAAA,YAAA,O3Ey7dN,O2Ez7dM,wBACA,OAAA,QAII,4CACI,MAAA,kCAGA,aACI,MAAA,MACA,QAAA,KnE67apB,YAAA,wBmE17agB,QAAA,EAAA,QnE67ahB,sBmEt7aI,QAAA,K3Eo7dJ,yB2Ej7dQ,QAAA,KAEA,wBACI,QAAA,MASJ,kD3E46dR,uDQ1/CA,sDmEj7aY,QAAA,M3Ek7dZ,iDAFA,sDACA,qD2E96dY,QAAA,K3Em7dZ,gE2Ej7dY,QAAA,QAGA,oBACI,OAAA,KnEo7ahB,MAAA,4BRggDE,MAAO,K2E76dT,iBAAA,YACI,UAAA,KACA,OAAA,QACA,QAAA,EACA,SAAA,S3Ei7dJ,YQ9/CA,SAAA,OmE76aI,WAAA,OnEg7aJ,iBmE56aI,QAAA,YACI,QAAA,YnE86aR,QAAA,KRggDE,SAAU,O2Et6dJ,kBAAA,O3Ew6dF,eAAgB,OACZ,YAAa,OQ7/CvB,+BmEx6aQ,OAAA,K3Ey6dN,OAAQ,uDACR,cAAe,K2Ez6dL,aAAA,KnE46aZ,iBAAA,gBRggDE,mBAAoB,K2En6dV,WAAA,KnEu6aZ,kCRggDE,SAAU,S2E/5dZ,QAAA,EACI,UAAA,KACA,YAAA,KACA,MAAA,KACA,IAAA,EACA,QAAA,EACA,MAAA,oB3Ek6dJ,4EQ9/CA,MAAA,4BmE95aA,mEACI,MAAA,4BnEk6aJ,uEmE/5aI,MAAA,4B3Ei6dJ,wE2Eh6dQ,MAAA,4B3Em6dR,8DACE,M2El6dM,4BnEi6aR,mCmE/5aQ,aAAA,EACI,QAAA,E3Eq6dZ,gC2El6dY,QAAA,K3Es6dZ,mBQngDA,aAAA,ERsgDA,+B2El6dY,iBAAA,YACA,QAAA,KAAA,K3Eq6dZ,oC2El6dY,QAAA,aACA,SAAA,SACA,IAAA,KnEg6aZ,KAAA,ImE55aY,cAAA,IACI,OAAA,InE85ahB,MAAA,ImE/5aY,iBAAA,QnE+5aZ,gCmE/5aY,QAAA,KAAA,KnE+5aZ,4CmE/5aY,iBAAA,sBnE+5aZ,0CmE/5aY,iBAAA,YACI,mBAAA,IAAA,IAAA,YnE85ahB,WAAA,IAAA,IAAA,YRkhDA,gD2E16dY,iBAAA,sBAGJ,2CACI,QAAA,K3E46dZ,2D2Et6dA,SAAA,SACI,IAAA,InEw5aJ,KAAA,KRkhDA,4D2Et6dQ,OAAA,EAAA,EAAA,I3E06dR,+D2Ev6dI,4DAEI,SAAA,OACA,cAAA,SACA,YAAA,O3Ew6dR,6C2Er6dQ,MAAA,MACA,OAAA,KnEu5aR,MAAA,KmEp5aI,YAAA,KACI,WAAA,OnEs5aR,cAAA,ImEp5aQ,MAAA,KnEu5aR,gDmEn5aQ,cAAA,EACI,SAAA,OACA,aAAA,KnEq5aZ,kDmEn5aY,YAAA,InEs5aZ,uDAAA,sDmEj5aQ,QAAA,MAGI,kBACI,UAAA,MnEq5ahB,UmEh5aY,QAAA,YACI,QAAA,YnEk5ahB,QAAA,KmE/4aY,kBAAA,O3Ek6dN,eAAgB,O2Eh6dN,YAAA,OACA,IAAA,KACA,aAAA,EAAA,InEi5ahB,aAAA,MmE74aQ,aAAA,6BACI,iBAAA,yBACA,WAAA,wBACA,mBAAA,KACA,WAAA,K3Ek6dZ,+CQhhDA,QAAA,QRohDA,yB2E75dY,mCnE84aZ,MAAA,KmE34agB,anE84ahB,QAAA,gBAGA,4BRkhDE,4B2Ez5dF,SAAA,QnE24aA,yBRkhDI,SAAU,O2Ex5dV,wCAAA,MAAA,eAAA,KAAA,gB3E+5dJ,4B2E75dI,eACA,QAAA,EAAA,QAEA,aACA,QAAA,MAEA,0BAAA,QAAA,K3Ei6dF,0B2E15dE,QAAA,O3E85dJ,0B2Ez5dA,MAAA,M3E65dA,4B2Et5dI,UAAA,K3Ew5dF,O2Ev5dM,EnEk4aN,YAAA,KACF,SAAA,OMzlbI,YAAA,O6D4NI,cAAA,S3Eu5dR,4B2En5dQ,QAAA,E3Eu5dR,+BACE,Y2Ep5dc,Y3Eq5dd,c2Ep5dc,KnEg4ahB,qCMrmbI,MAAA,K6D4OA,WAAA,E3Em5dJ,+B2E/4dI,YAAA,E3Ei5dF,W2Eh5dM,e3Em5dR,YQrhDE,MAAA,0BRwhDF,kBQrhDE,MAAA,yBRyhDF,4BQrhDA,4BRuhDI,QAAS,M4EpteT,YAAA,OACI,cAAA,SACA,SAAA,OACA,YAAA,KAEA,4BACA,QAAA,KAIJ,iCACI,QAAA,MAKJ,yBACI,4BACA,QAAA,M5EoteR,Q4E/seQ,SAAA,SpE2rbR,KAAA,EoExrbI,OAAA,EACI,MAAA,EACA,OAAA,wBpE0rbR,QAAA,YRuhDE,QAAS,Y4E7seX,QAAA,KACI,kBAAA,OpEyrbJ,eAAA,OoEvrbI,YAAA,OACI,QAAA,EAAA,QpEyrbR,MAAA,mBRuhDE,mBAAoB,IAAI,KAAM,Yc7qe5B,WAAA,IAAA,KAAA,Y8D7BI,WAAA,IAAA,MAAA,uB5E8seR,wBACE,M4E5seU,mB5E6seV,a4E5seU,Q5E6seV,mB4E5seU,IAAA,IpEurbV,WAAA,IAAA,IRwhDF,8BQrhDE,MAAA,mBRwhDF,sCQrhDE,aAAA,ERyhDF,YACE,O4ExseM,KpEmrbN,WAAA,OACF,iBAAA,OqEnvbA,cAAA,OACI,gBAAA,O7E6weJ,mF6E1weI,gFAAA,gFAAA,gFAAA,gFAAA,iFACA,UAAA,KACA,QAAA,E7E6weJ,4BACE,QACE,W6E9weA,Q7EixeJ,wC6E9weI,OAAA,EACA,QAAA,ErEqvbJ,QAAA,KqElvbQ,mBAAA,KACI,WAAA,K7EgxeZ,qD6E9weY,QAAA,MAEA,4DACI,QAAA,KAGJ,uCACI,aAAA,ErEmvbhB,QAAA,EAAA,EAAA,wBqE5ubA,0CAAA,uCAAA,uCAAA,uCAAA,uCAAA,wCACI,aAAA,QACA,cAAA,Q7E4weJ,iCACE,MAAO,KQ7hDT,QAAA,KR+hDE,SAAU,O6ExweJ,IAAA,wBACI,WAAA,kBACA,mBAAA,qBrE4ubZ,WAAA,qBR+hDE,WAAY,IAAI,MAAM,6BAExB,yCACE,O6EvweM,ErE0ubN,QAAA,EsE1xbE,uDACI,QAAA,YACA,QAAA,YACA,QAAA,KACA,kBAAA,O9E2zeF,e8E3zeE,OtE6xbR,YAAA,OsE3xbQ,SAAA,SACI,UAAA,8BtE6xbZ,QAAA,0CAAA,wCRiiDA,yDQ9hDA,UAAA,8BsExxbI,YAAA,yC9E0zeJ,sEQ9hDA,UAAA,kBRiiDA,qF8EtzeQ,QAAA,0CnEwbC,0CXk4dT,qD8EvzeI,6CAEI,MAAA,0B9EyzeR,2DADA,mD8EpzeQ,MAAA,gC9EwzeR,oDQ/hDA,MAAA,iCRkiDA,qC8EtzeY,QAAA,atEwxbZ,QAAA,asEpxbY,eAAA,KACI,aAAA,wCAAA,UAAA,2C9EwzehB,4CACE,Q8Exzec,Q9Eyzed,Y8Ezzec,U9E4zehB,0CADA,uCQliDA,uCsEpxbgB,QAAA,K9E2zehB,uCQniDA,QAAA,MAGA,csEjxboB,QAAA,KAYR,e9E8yeV,QAAS,K8E5yeK,SAAA,StE0wbhB,OAAA,QsExwbgB,MAAA,M9E8yed,QAAS,E8E7yeS,iBAAA,YtE2wbpB,MAAA,4BsEtwbgB,OAAA,KtEywbhB,sBsEjwbI,MAAA,KACI,QAAA,MACA,SAAA,SACA,OAAA,KACA,mBAAA,IAAA,IAAA,KACA,WAAA,IAAA,IAAA,KAEA,oBACI,OAAA,IACA,MAAA,KtEmwbZ,iBAAA,4BsE9vbI,QAAA,M9EoyeF,cAAe,IACf,mBAAoB,kBAAkB,IAAK,K8ElyerC,WAAA,kBAAA,IAAA,KtEgwbR,WAAA,UAAA,IAAA,KsE7vbI,WAAA,UAAA,IAAA,IAAA,CAAA,kBAAA,IAAA,KtEgwbJ,yBRqiDE,SAAU,SAEZ,qCQniDA,IAAA,IRqiDE,kBAAmB,e8E/xerB,UAAA,e9EkyeA,sC8E/xeI,WAAA,O9EkyeJ,oC8E/xeI,MAAA,KACA,IAAA,IACA,kBAAA,ctE6vbJ,UAAA,cRuiDA,yB8E/xeQ,0CAAA,uCAAA,uCAAA,uCAAA,uCAAA,wCACA,UAAA,IACA,kEAAA,+DAAA,+DAAA,+DAAA,+DAAA,gEtE6vbR,UAAA,IsEzvbQ,sDACA,cAAA,EAEA,iCACA,WAAA,EACA,cAAA,EAAA,EAAA,OAAA,OAAA,UAAA,yEAAA,UAAA,kBtE4vbR,6CsExvbQ,UAAA,8BACI,kBAAA,gBtE0vbZ,UAAA,gBsExvbY,SAAA,SACI,KAAA,8B9Emyed,0DQxiDF,SAAA,SsEvvbY,IAAA,EACI,MAAA,KtEyvbhB,QAAA,KsErvbgB,uCACA,QAAA,M9Ekyed,sEQziDF,QAAA,MM91bI,yCgE+GI,MAAA,yBACI,iBAAA,uB9E+xeZ,4BQziDE,iCsEvubkB,WAAA,MACI,WAAA,KAOZ,uDACI,QAAA,yCAAA,wC9E+wed,0DIvreI,iBAAA,YI+obJ,OAAA,KsElubc,mBAAA,KACI,WAAA,KACA,cAAA,wC9E8wehB,W8E9wegB,2C9EgxelB,yEQ1iDA,WAAA,0CsEhubkB,cAAA,0C9E8welB,0D8E3wesB,SAAA,SACA,iBAAA,YAMR,0DACI,MAAA,0BAKZ,gEACI,MAAA,gCAGJ,iEAAA,iEACI,MAAA,iCtE2tbV,kEACF,MAAA,iCsEptbQ,6CACI,UAAA,8BACA,kBAAA,gBtEutbV,UAAA,gBsEptbc,SAAA,SACI,KAAA,8BAKJ,wCACI,QAAA,O9EgwepB,0BACE,0C8E9vekB,uCAAA,uCAAA,uCAAA,uCAAA,wCACA,UAAA,K9EiwepB,qBACE,W8E9vesB,QtEmtbtB,eAAA,EAAA,CAAA,EAAA,CAAA,GsE/sbc,UAAA,Q9E6ved,c8E5vekB,EAAA,CAAA,GAAA,CAAA,I9E+vepB,kBACE,O8EzvekB,E9E4vepB,8BQ3iDE,cAAA,EsE3sbkB,cAAA,K9E2vepB,OACE,mB8Epvec,KAAA,IAAA,IAAA,kBtEysbd,WAAA,KAAA,IAAA,IAAA,kBR+iDF,YACE,OAAQ,OACR,M8Epvec,O9EuvehB,WACE,O8ElveU,KtEssbV,MAAA,KRgjDF,WACE,O8E9ueU,OtEksbV,MAAA,ORgjDF,W+EtgfQ,OAAA,OACA,MAAA,O/E0gfR,WgFvifA,OAAA,KACI,MAAA,KAKI,WACI,OAAA,OACA,MAAA,OCRZ,cACI,kBAAA,OjFkjfE,eiFljfF,OzEqgcJ,YAAA,OR+iDE,iBAAkB,kBkFrjfpB,MAAA,KACI,QAAA,YACA,QAAA,Y1EygcJ,QAAA,KR+iDE,OAAQ,KkFrjfV,iBAAA,OACI,cAAA,OACA,gBAAA,O1EygcJ,MAAA,KRijDA,ckFrjfI,cAAA,K1EygcJ,QAAA,YR+iDE,QAAS,YkFrjfX,QAAA,KACI,cAAA,KACA,UAAA,KlFwjfJ,iCkFrjfA,aAAA,MACI,cAAA,IACA,mBAAA,IAAA,I1EygcJ,WAAA,IAAA,I0EtgcA,uCACI,SAAA,SACA,kBAAA,iB1EygcJ,UAAA,iBR+iDE,QAAS,EAGX,0CACE,YkFxjfE,UACA,UAAA,KACA,YvE5BO,IXulfX,KkFzjfI,mBAAA,KAAA,IAAA,IAAA,kBACA,WAAA,KAAA,IAAA,IAAA,kBlF6jfJ,UQnjDA,mBAAA,KRqjDU,WAAY,KAGtB,akF1jfI,YAAA,kBAAA,sBAAA,kBACA,kBAAA,gClF6jfF,4BkF7jfE,gC1EugcJ,0BAAA,sB0ErgcI,mBAAA,gCACI,6BAAA,gClFgkfR,qBQvjDA,eAAA,kB0ErgcQ,YAAA,YACI,sBAAA,kBACA,kBAAA,kBlF+jfV,4BkF/jfU,kBACA,0BAAA,sB1EugcZ,mBAAA,kBR0jDE,6BAA8B,kBAGhC,kBmFrnfY,eAAA,kB3E8jcZ,YAAA,4BR0jDE,sBAAuB,YoF/nfzB,kBAAA,kBACI,4BAAA,kBpFiofF,mBoFjofE,kB5EwkcJ,6BAAA,kBR2jDE,wBAAyB,kBoFhof3B,qBAAA,kBACI,+BAAA,kBpFkofF,0BoFlofE,EAAA,EAAA,EAAA,iBAAA,iCAKA,eACI,YAAA,oBACA,sBAAA,oBACA,kBAAA,kCACA,4BAAA,kCACA,0BAAA,wBACA,mBAAA,kCACA,6BAAA,kCAGJ,uBACI,eAAA,oBACA,YAAA,YACA,sBAAA,oBACA,kBAAA,oBACA,4BAAA,oBACA,0BAAA,wBACA,mBAAA,oBACA,6BAAA,oBAGJ,oBACI,eAAA,oBACA,YAAA,8BACA,sBAAA,YACA,kBAAA,oBACA,4BAAA,oBACA,mBAAA,oBACA,6BAAA,oBACA,wBAAA,oBACA,qBAAA,oBACA,+BAAA,oBACA,0BAAA,EAAA,EAAA,EAAA,iBAAA,mCAhCJ,aACI,YAAA,kBACA,sBAAA,kBACA,kBAAA,gCACA,4BAAA,gCACA,0BAAA,sBACA,mBAAA,gCACA,6BAAA,gCAGJ,qBACI,eAAA,kBACA,YAAA,YACA,sBAAA,kBACA,kBAAA,kBACA,4BAAA,kBACA,0BAAA,sBACA,mBAAA,kBACA,6BAAA,kBAGJ,kBACI,eAAA,kBACA,YAAA,4BACA,sBAAA,YACA,kBAAA,kBACA,4BAAA,kBACA,mBAAA,kBACA,6BAAA,kBACA,wBAAA,kBACA,qBAAA,kBACA,+BAAA,kBACA,0BAAA,EAAA,EAAA,EAAA,iBAAA,iCAhCJ,UACI,YAAA,eACA,sBAAA,eACA,kBAAA,6BACA,4BAAA,6BACA,0BAAA,mBACA,mBAAA,6BACA,6BAAA,6BAGJ,kBACI,eAAA,eACA,YAAA,YACA,sBAAA,eACA,kBAAA,eACA,4BAAA,eACA,0BAAA,mBACA,mBAAA,eACA,6BAAA,eAGJ,eACI,eAAA,eACA,YAAA,yBACA,sBAAA,YACA,kBAAA,eACA,4BAAA,eACA,mBAAA,eACA,6BAAA,eACA,wBAAA,eACA,qBAAA,eACA,+BAAA,eACA,0BAAA,EAAA,EAAA,EAAA,iBAAA,8BAhCJ,aACI,YAAA,kBACA,sBAAA,kBACA,kBAAA,gCACA,4BAAA,gCACA,0BAAA,sBACA,mBAAA,gCACA,6BAAA,gCAGJ,qBACI,eAAA,kBACA,YAAA,YACA,sBAAA,kBACA,kBAAA,kBACA,4BAAA,kBACA,0BAAA,sBACA,mBAAA,kBACA,6BAAA,kBAGJ,kBACI,eAAA,kBACA,YAAA,4BACA,sBAAA,YACA,kBAAA,kBACA,4BAAA,kBACA,mBAAA,kBACA,6BAAA,kBACA,wBAAA,kBACA,qBAAA,kBACA,+BAAA,kBACA,0BAAA,EAAA,EAAA,EAAA,iBAAA,iCAhCJ,YACI,YAAA,iBACA,sBAAA,iBACA,kBAAA,+BACA,4BAAA,+BACA,0BAAA,qBACA,mBAAA,+BACA,6BAAA,+BAGJ,oBACI,eAAA,iBACA,YAAA,YACA,sBAAA,iBACA,kBAAA,iBACA,4BAAA,iBACA,0BAAA,qBACA,mBAAA,iBACA,6BAAA,iBAGJ,iBACI,eAAA,iBACA,YAAA,2BACA,sBAAA,YACA,kBAAA,iBACA,4BAAA,iBACA,mBAAA,iBACA,6BAAA,iBACA,wBAAA,iBACA,qBAAA,iBACA,+BAAA,iBACA,0BAAA,EAAA,EAAA,EAAA,iBAAA,gCAhCJ,WACI,YAAA,gBACA,sBAAA,gBACA,kBAAA,8BACA,4BAAA,8BACA,0BAAA,oBACA,mBAAA,8BACA,6BAAA,8BAGJ,mBACI,eAAA,gBACA,YAAA,YACA,sBAAA,gBACA,kBAAA,gBACA,4BAAA,gBACA,0BAAA,oBACA,mBAAA,gBACA,6BAAA,gBAGJ,gBACI,eAAA,gBACA,YAAA,0BACA,sBAAA,YACA,kBAAA,gBACA,4BAAA,gBACA,mBAAA,gBACA,6BAAA,gBACA,wBAAA,gBACA,qBAAA,gBACA,+BAAA,gBACA,0BAAA,EAAA,EAAA,EAAA,iBAAA,+BAhCJ,UACI,YAAA,eACA,sBAAA,eACA,kBAAA,6BACA,4BAAA,6BACA,0BAAA,mBACA,mBAAA,6BACA,6BAAA,6BAGJ,kBACI,eAAA,eACA,YAAA,YACA,sBAAA,eACA,kBAAA,eACA,4BAAA,eACA,0BAAA,mBACA,mBAAA,eACA,6BAAA,eAGJ,eACI,eAAA,eACA,YAAA,yBACA,sBAAA,YACA,kBAAA,eACA,4BAAA,eACA,mBAAA,eACA,6BAAA,eACA,wBAAA,eACA,qBAAA,eACA,+BAAA,eACA,0BAAA,EAAA,EAAA,EAAA,iBAAA,8BAhCJ,YACI,YAAA,iBACA,sBAAA,iBACA,kBAAA,+BACA,4BAAA,+BACA,0BAAA,qBACA,mBAAA,+BACA,6BAAA,+BAGJ,oBACI,eAAA,iBACA,YAAA,YACA,sBAAA,iBACA,kBAAA,iBACA,4BAAA,iBACA,0BAAA,qBACA,mBAAA,iBACA,6BAAA,iBAGJ,iBACI,eAAA,iBACA,YAAA,2BACA,sBAAA,YACA,kBAAA,iBACA,4BAAA,iBACA,mBAAA,iBACA,6BAAA,iBACA,wBAAA,iBACA,qBAAA,iBACA,+BAAA,iBACA,0BAAA,EAAA,EAAA,EAAA,iBAAA,gCAhCJ,UACI,YAAA,eACA,sBAAA,eACA,kBAAA,6BACA,4BAAA,6BACA,0BAAA,mBACA,mBAAA,6BACA,6BAAA,6BAGJ,kBACI,eAAA,eACA,YAAA,YACA,sBAAA,eACA,kBAAA,eACA,4BAAA,eACA,0BAAA,mBACA,mBAAA,eACA,6BAAA,eAGJ,eACI,eAAA,eACA,YAAA,yBACA,sBAAA,YACA,kBAAA,eACA,4BAAA,eACA,mBAAA,eACA,6BAAA,eACA,wBAAA,eACA,qBAAA,eACA,+BAAA,eACA,0BAAA,EAAA,EAAA,EAAA,iBAAA,8BAhCJ,kBACI,sBAAA,KACA,qBAAA,KpF87fR,oBoF17fQ,sBAAA,KACA,qBAAA,KAGJ,kBACI,sBAAA,KACA,qBAAA,KpF87fR,eoF17fQ,sBAAA,KACA,qBAAA,KpF87fR,kBoF17fI,sBAAA,KACI,qBAAA,KpF87fR,iBoF17fQ,sBAAA,KACA,qBAAA,KpF87fR,gBoF17fQ,sBAAA,QACA,qBAAA,QASJ,eACI,sBAAA,KACA,qBAAA,KAFJ,iBACI,sBAAA,KACA,qBAAA,KAFJ,eACI,sBAAA,KACA,qBAAA,KAFJ,gCACI,eAAA,KACA,sBAAA,K5E04cR,qBAAA,KR8jDA,uBoFx8fQ,iBAAA,kB5E+4cR,OAAA,IAAA,MAAA,kBR4jDE,iBAAkB,YAEpB,6BoF78fQ,MAAA,kB5Eo5cR,gBAAA,KR4jDE,iBAAkB,4BAEpB,+CoFl9fQ,MAAA,kB5Ey5cR,gBAAA,KR4jDE,iBAAkB,4BAGpB,yBQ1jDA,iBAAA,oBR4jDE,OAAQ,IAAI,MAAM,oBoF59fhB,iBAAA,YpF+9fJ,+BQ1jDA,MAAA,oBR4jDE,gBAAiB,KoFj+ff,iBAAA,8BpFo+fJ,iDQ1jDA,MAAA,oBR4jDE,gBAAiB,KoF59ff,iBAAA,8BpFg+fJ,uBQ1jDA,iBAAA,kBR4jDE,OAAQ,IAAI,MAAM,kBqF3hgBhB,iBAAA,YrF8hgBJ,6BqF3hgBQ,MAAA,kB7Ek+cR,gBAAA,K6Eh+cQ,iBAAA,4BrF8hgBR,+CqF3hgBY,MAAA,kB7Ek+cZ,gBAAA,K6Eh+cY,iBAAA,4BrF+hgBZ,oBQ1jDA,iBAAA,eR4jDE,OAAQ,IAAI,MAAM,eqF3igBhB,iBAAA,YrF8igBJ,0BqF3igBQ,MAAA,e7Ek/cR,gBAAA,K6Eh/cQ,iBAAA,yBrF8igBR,4CqF3igBY,MAAA,e7Ek/cZ,gBAAA,K6Eh/cY,iBAAA,yBrF+igBZ,uBQ1jDA,iBAAA,kBR4jDE,OAAQ,IAAI,MAAM,kBqF3jgBhB,iBAAA,YrF8jgBJ,6BqF3jgBQ,MAAA,kB7EkgdR,gBAAA,K6EhgdQ,iBAAA,4BrF8jgBR,+CqF3jgBY,MAAA,kB7EkgdZ,gBAAA,K6EhgdY,iBAAA,4BrF+jgBZ,sBQ1jDA,iBAAA,iBR4jDE,OAAQ,IAAI,MAAM,iBqF3kgBhB,iBAAA,YrF8kgBJ,4BqF3kgBQ,MAAA,iB7EkhdR,gBAAA,K6EhhdQ,iBAAA,2BrF8kgBR,8CqF3kgBY,MAAA,iB7EkhdZ,gBAAA,K6EhhdY,iBAAA,2BrF+kgBZ,qBQ1jDA,iBAAA,gBR4jDE,OAAQ,IAAI,MAAM,gBqF3lgBhB,iBAAA,YrF8lgBJ,2BqF3lgBQ,MAAA,gB7EkidR,gBAAA,K6EhidQ,iBAAA,0BrF8lgBR,6CqF3lgBY,MAAA,gB7EkidZ,gBAAA,K6EhidY,iBAAA,0BrF+lgBZ,oBQ1jDA,iBAAA,eR4jDE,OAAQ,IAAI,MAAM,eqF3mgBhB,iBAAA,YrF8mgBJ,0BqF3mgBQ,MAAA,e7EkjdR,gBAAA,K6EhjdQ,iBAAA,yBrF8mgBR,4CqF3mgBY,MAAA,e7EkjdZ,gBAAA,K6EhjdY,iBAAA,yBrF+mgBZ,sBQ1jDA,iBAAA,iBR4jDE,OAAQ,IAAI,MAAM,iBqF3ngBhB,iBAAA,YrF8ngBJ,4BqF3ngBQ,MAAA,iB7EkkdR,gBAAA,K6EhkdQ,iBAAA,2BrF8ngBR,8CqF3ngBY,MAAA,iB7EkkdZ,gBAAA,K6EhkdY,iBAAA,2BrF+ngBZ,oBQ1jDA,iBAAA,eR4jDE,OAAQ,IAAI,MAAM,eqF3ogBhB,iBAAA,YrF8ogBJ,0BqF3ogBQ,MAAA,e7EkldR,gBAAA,K6EhldQ,iBAAA,yBrF8ogBR,4CqF3ogBY,MAAA,e7EkldZ,gBAAA,K6EhldY,iBAAA,yBrF+ogBZ,MQ1jDA,mBAAA,qBR4jDU,WAAY,qBqF3pgBlB,cAAA,MrF8pgBJ,oBqF3pgBQ,cAAA,M7EkmdR,UAAA,O6EhmdQ,WAAA,ErF8pgBR,iBqF3pgBY,UAAA,K7EkmdZ,MAAA,QR6jDA,oBqF3pgBgB,MAAA,KACA,OAAA,KrF8pgBhB,sBqF3qgBI,MAAA,QACI,UAAA,KACA,QAAA,aACA,YAAA,E7EkndR,UAAA,KR6jDA,yCqF3qgBY,QAAA,QrFgrgBZ,aqF7qgBY,YAEI,WAAA,ErF+qgBhB,2BQ5jDA,0B8ElodA,cAAA,EtFksgBA,eQ3jDA,SAAA,S8EnodI,MAAA,EACI,KAAA,EACA,IAAA,EACA,OAAA,E9EqodR,cAAA,wB8ElodI,WAAA,qBACI,OAAA,S9EqodR,qC8EjodI,iBAAA,mBACI,kBAAA,UAAA,KAAA,SAAA,YACA,UAAA,UAAA,KAAA,SAAA,Y9EmodR,OAAA,K8EjodQ,MAAA,KACI,cAAA,IACA,SAAA,SACA,MAAA,IACA,IAAA,IACA,aAAA,S9EmodZ,WAAA,SAGA,6BR6jDE,GsFrrgBF,kBAAA,mBAAA,WAAA,WtFurgBY,UAAW,mBAAmB,WAAc,WQ1jDxD,I8EzndI,kBAAA,mBAAA,mBAAA,WtFurgBQ,UAAW,mBAAmB,mBAAmB,WQ1jD7D,KR6jDI,kBAAmB,mBAAmB,iBAAiB,kBsFprgB3D,UAAA,mBAAA,iBAAA,mBtFyrgBA,qBsFprgBI,GACA,kBAAA,mB3E80CgC,WAAA,W2E70ChC,UAAA,mBAAA,WAAA,W9E2ndJ,I8ExndI,kBAAA,mBAAA,mBAAA,WACI,UAAA,mBAAA,mBAAA,WtFurgBN,KsFrrgBM,kBAAA,mBAAA,iBAAA,kBACA,UAAA,mBAAA,iBAAA,mBtFyrgBR,YsFrrgBQ,OAAA,qB9E4ndR,iDAAA,8CR8jDE,iBAAkB,kBsFprgBpB,aAAA,kBtFwrgBA,mDsFtrgBQ,gD9EyndN,iBAAA,oB8EtndE,aAAA,oBtFwrgBJ,iDQ/jDE,8C8ErndE,iBAAA,kBtFsrgBF,asFrrgBM,kB9EwndR,8CAAA,2CRikDE,iBAAkB,esFnsgBpB,aAAA,etFusgBA,iDsFrsgBQ,8C9EyndN,iBAAA,kB8EtndE,aAAA,kBtFusgBJ,gDQ9kDE,6C8ErndE,iBAAA,iBtFqsgBF,asFpsgBM,iB9EwndR,+CAAA,4C8EnndA,iBAAA,gBACI,aAAA,gBCrFQ,8CAAA,2CACI,iBAAA,eACA,aAAA,eAFJ,gDAAA,6CACI,iBAAA,iBACA,aAAA,iBAFJ,8CAAA,2CACI,iBAAA,eACA,aAAA,eAFJ,eACI,mBAAA,8BACA,WAAA,8BAFJ,iBACI,WAAA,EvFkzgBhB,wBuFnzgBY,QAAA,EACI,WAAA,OACA,QAAA,gB/EsudhB,kBAAA,qBRglDU,UAAW,qBuFxzgBT,mBAAA,IAAA,IAAA,iBACI,WAAA,IAAA,IAAA,iBACA,yBAAA,IAAA,M/E2udhB,iBAAA,IAAA,MRglDE,MAAO,euF7zgBG,IAAA,evFg0gBZ,0CQ9kDA,KAAA,YRglDE,yBAA0B,IAAI,KuFl0gBpB,iBAAA,IAAA,KvFq0gBZ,6BQ9kDA,QAAA,ERglDE,WAAY,QuFv0gBF,IAAA,eACI,WAAA,cACA,kBAAA,mB/E0vdhB,UAAA,mBRklDA,8CACE,QwFj1gBE,gBhFkwdJ,IAAA,egF/vdA,uDACI,QAAA,EhFkwdJ,mBAAA,IAAA,IAAA,iBRilDE,WAAY,IAAI,IAAK,iBwF/0gBvB,yBAAA,IAAA,MACI,iBAAA,IAAA,MACA,WAAA,QACA,IAAA,eACA,kBAAA,mBAAA,UAAA,mBxFm1gBJ,yEwFj1gBI,KAAA,YxFm1gBF,MAAO,ewFl1gBL,yBAAA,IAAA,KACA,iBAAA,IAAA,KxFs1gBJ,yCwFl1gBQ,kBAAA,WAAA,0BAAA,UAAA,WAAA,0BhFiwdR,MAAA,cRslDA,8CwFl1gBQ,QAAA,EACA,WAAA,QACA,IAAA,eACA,kBAAA,SAAA,0BAAA,UAAA,SAAA,0BxFs1gBR,8DwF70gBY,QAAA,EACI,WAAA,QACA,MAAA,chF0vdhB,IAAA,egFvvdY,kBAAA,SAAA,0BACI,UAAA,SAAA,0BxFg1gBhB,+BACE,QwF/0gBc,GACA,SAAA,SACA,iBAAA,oBACA,IAAA,KxFg1gBd,OwFh1gBc,KhFyvdhB,KAAA,KgFvvdgB,MAAA,EACI,cAAA,wBAAA,EAAA,EAAA,wBxFm1gBpB,0CQxlDA,MAAA,KR0lDE,cAAe,EwF30gBb,SAAA,SACI,QAAA,ExF80gBR,kBQzlDA,QAAA,GgFlvdQ,SAAA,SACI,iBAAA,oBACA,IAAA,EACA,OAAA,EACA,KAAA,ExF80gBV,MAAO,EQ1lDT,cAAA,EAAA,wBAAA,wBAAA,ER8lDA,yBwFz0gBgB,aACA,MAAA,OhFivdhB,oBR6lDE,QAAS,MwFp0gBP,cAAA,IACI,YAAA,KACA,WAAA,OACA,QAAA,KAAA,EAAA,IACA,QAAA,MACA,OAAA,IAAA,MAAA,YACA,MAAA,qBxFu0gBR,wBQ3lDA,OAAA,KgFpudQ,yBACI,QAAA,MACA,SAAA,OACA,cAAA,SACA,YAAA,OAIR,0BACI,iBAAA,4BACA,MAAA,kBxFm0gBR,kBwF/zgBQ,QAAA,KhFuudR,kBR6lDE,YAAa,IAGf,oBQ3lDE,iBAAA,gCACF,aAAA,iCgF7tdA,aAAA,kCACI,aAAA,MACA,aAAA,uBxF6zgBJ,+BACA,+BwFzzgBI,WAAA,KAGA,gCxF8zgBJ,8BQ9lDA,6BRgmDA,2BALA,+BAIA,6BwF3zgBI,4BxF6zgBJ,0BQ3lDA,mBAAA,egF3tdI,WAAA,ehF+tdJ,gDR6lDE,OAAQ,uDQzlDV,mDR6lDE,OAAQ,wDQzlDV,cR6lDE,OAAQ,QAEV,qByFz9gBI,YAAA,UACA,QAAA,QACA,WAAA,OACA,YAAA,IjF+3dJ,aAAA,OR6lDE,eAAgB,OyFv9gBlB,YAAA,IzFy9gBE,UAAW,KAGb,oCyF78gBI,QAAA,QzFi9gBJ,cACE,mBAAoB,EAAE,IAAI,IAAI,EAAE,kBACxB,WAAY,EAAE,IAAI,IAAI,EAAE,kBAGlC,aACE,WyFt9gBM,EAKJ,kBACI,MAAA,IjFw3dR,UAAA,KRgmDA,WQ5lDA,OAAA,EAAA,KRgmDA,aQ5lDA,SAAA,SiFl3dI,KAAA,EACI,QAAA,YACA,QAAA,YACA,QAAA,KACA,mBAAA,SACA,sBAAA,OACA,cAAA,OAAA,OACA,UAAA,OAAA,OACA,iBAAA,OjFo3dR,cAAA,OR8lDU,gBAAiB,OyF58gBnB,OAAA,KACI,OAAA,EjFi3dZ,iBAAA,uBR8lDE,mBAAoB,O0FlhhBtB,cAAA,OACI,kBAAA,4BAAA,UAAA,4B1FshhBJ,8B0FlhhBA,SAAA,MACI,IAAA,KlFs7dJ,KAAA,KR+lDE,QAAS,EAGX,wBQ7lDA,yBR+lDE,kBAAmB,yB0FhhhBrB,UAAA,yB1FohhBA,c0F/ghBA,QAAA,YACI,QAAA,YACA,QAAA,KACA,mBAAA,SAAA,sBAAA,OAAA,cAAA,OAAA,OACA,UAAA,OAAA,OAAA,cAAA,I1FohhBF,iB0FphhBE,IAAA,gBAAA,SACA,OAAA,K1FshhBF,O0FthhBE,EAAA,K1FuhhBF,mB0FvhhBE,OACA,cAAA,O1F0hhBJ,sBACE,c0FxhhBE,E1F0hhBJ,mCQtmDA,MAAA,eR0mDA,c0FxhhBQ,MAAA,KlFo7dR,4BRwmDE,iBAAkB,sBAEpB,2B0FrhhBY,MAAA,K1FyhhBZ,4BQzmDA,4BkF16dA,OAAA,K1FwhhBA,gBADA,e0FrhhBI,MAAA,0B1FwhhBF,Y0FxhhBE,I1F2hhBJ,aACE,MAAO,mB0FzhhBL,YAAA,I1F6hhBJ,cQ9mDA,iBAAA,sBRknDA,uBQ9mDA,cAAA,IAAA,MAAA,uBRinDA,iCQ9mDA,cAAA,KkFx6dA,4BACI,OAAA,ElF26dJ,QAAA,QAAA,QRinDA,mCQ9mDA,cAAA,IAAA,MAAA,kBAGA,+BkFv6dI,cAAA,e1FwhhBF,OAAQ,EAAE,c0FthhBJ,OAAA,KChFA,S3F2mhBN,mBAAoB,wB2F1mhBV,WAAA,wB3F8mhBZ,gB2FvmhBI,WAAA,EnF4/dJ,iBRgnDE,uBAAwB,gB2FtmhB1B,0BAAA,4BACI,uBAAA,4BnFy/dJ,0BAAA,0BRgnDE,4BAA6B,e2FlmhB/B,4BAAA,gBAGI,mBACI,uBAAA,gBnFq/dR,0BAAA,8BmFj/dQ,uBAAA,8BACI,0BAAA,0BACA,4BAAA,enFm/dZ,4BAAA,gBAGA,iBRgnDE,uBAAwB,gB4FvohBtB,0BAAA,4BACI,uBAAA,4BACA,0BAAA,0BACA,4BAAA,epF0heR,4BAAA,gBRknDA,cACE,uB6FjphBE,gBrFkieJ,0BAAA,yBRinDE,uBAAwB,yB6FhphB1B,0BAAA,0BACI,4BAAA,erFkieJ,4BAAA,gBRmnDA,iB6F7ohBQ,uBAAA,gBACA,0BAAA,4BACA,uBAAA,4BACA,0BAAA,0BACA,4BAAA,erF+heR,4BAAA,gBRmnDA,gB6FtphBQ,uBAAA,gBACA,0BAAA,2BACA,uBAAA,2BACA,0BAAA,0BACA,4BAAA,erFwieR,4BAAA,gBRmnDA,e6F/phBQ,uBAAA,gBACA,0BAAA,0BACA,uBAAA,0BACA,0BAAA,0BACA,4BAAA,erFijeR,4BAAA,gBRmnDA,c6FxqhBQ,uBAAA,gBACA,0BAAA,yBACA,uBAAA,yBACA,0BAAA,0BACA,4BAAA,erF0jeR,4BAAA,gBRmnDA,gB6FjrhBQ,uBAAA,gBACA,0BAAA,2BACA,uBAAA,2BACA,0BAAA,0BACA,4BAAA,erFmkeR,4BAAA,gBRmnDA,c6F1rhBQ,uBAAA,gBACA,0BAAA,yBACA,uBAAA,yBACA,0BAAA,0BACA,4BAAA,erF4keR,4BAAA,gBRmnDA,aAEA,SAGA,Q6FxshBQ,e7FushBR,eADA,gBQ7mDA,QAAA,KqF3leI,W7FgthBJ,SAFA,cACA,SAEA,K6F5shBQ,QAAA,EACA,OAAA,E7F+shBN,M6FrthBE,mBAAA,KACI,WAAA,M7FythBR,a6FrthBQ,OAAA,I7FythBR,a6F9thBI,OAAA,I7FkuhBJ,a6F9thBQ,OAAA,KrFkneR,aRinDE,OAAQ,KAGV,KACE,SAAU,SACV,WAAY,KAGd,6C8FjvhBI,K9FmvhBA,OAAQ,SAGZ,KACE,W8FlvhBM,O9FsvhBR,EADA,OAEE,QAAS,Y+FlwhBX,MACI,YAAA,IAIJ,mBACI,YAAA,KAIJ,E/FowhBA,OQhnDA,YAAA,IAIA,mBRgnDA,mBAEE,eAAgB,iBAGlB,uBQhnDA,OAAA,KRknDE,MAAO,KAET,yBACE,iBgGvxhBM,6BxFwqeR,4BwFpqeA,WAAA,IAAA,MACI,iBAAA,QAGJ,uBhGuxhBE,UAAW,KgGhxhBb,iBhGmxhBA,iBgGlxhBI,YAAA,OAIJ,iBACI,gBAAA,4BAGJ,mBhGoxhBE,gBAAiB,8BAGnB,iBiGpzhBI,gBAAA,4BzFuseJ,cRknDE,gBAAiB,yBAGnB,iBQhnDA,gBAAA,4BAGA,gByF3reQ,gBAAA,2BzF+reR,eRknDE,gBAAiB,0BQ9mDnB,cRknDE,gBAAiB,yBAGnB,gBQhnDA,gBAAA,2BRonDA,cQhnDA,gBAAA,yBRonDA,oBQhnDA,WAAA,KRknDE,cAAe,KAEjB,8BQhnDA,MAAA,kBRknDE,MAAO,MkG11hBL,WAAA,I1F4ueJ,oCRknDE,MAAO,KkG91hBL,MAAA,KACI,WAAA,K1F+ueR,YAAA,KRonDA,yCQhnDA,kBAAA,eRknDU,UAAW,ekGt2hBjB,mBAAA,kBAAA,KACI,WAAA,kBAAA,K1FuveR,WAAA,UAAA,KRknDE,WAAY,UAAU,IAAK,CAAE,kBAAkB,KAEjD,2CQhnDA,kBAAA,cRknDU,UAAW,ckG92hBjB,mBAAA,kBAAA,KACI,WAAA,kBAAA,K1F+veR,WAAA,UAAA,KRknDE,WAAY,UAAU,IAAK,CAAE,kBAAkB,KAEjD,+CQhnDA,kBAAA,URknDU,UAAW,UAErB,iDmGx3hBI,kBAAA,U3FyweJ,UAAA,URonDA,amGx3hBQ,SAAA,S3FyweR,SAAA,ORmnDA,iDmGv3hBQ,2BACA,QAAA,MAQJ,aACI,MAAA,kBnGq3hBN,UmGr3hBM,KACA,iBAAA,gCAAA,OAAA,KAAA,MAAA,KAAA,WAAA,O3FoweR,YAAA,K2FlweQ,cAAA,IACI,QAAA,anG23hBZ,mBmG13hBY,SAAA,SAAA,WAAA,K3FoweZ,KAAA,G2F/veQ,UAAA,MACI,QAAA,KnG03hBV,QmG13hBU,EnG63hBZ,qBACE,cmG33hBc,IAAA,MAAA,uB3FiwehB,cAAA,MR4nDE,eAAgB,MAGlB,cQ1nDA,QAAA,KAAA,E2F1veI,SAAA,SnGw3hBJ,6BQ1nDE,SAAA,SR6nDF,oCmGp3hBA,iBAAA,sBACI,OAAA,EACA,QAAA,GACA,MAAA,IACA,SAAA,SACA,IAAA,KACA,MAAA,IACA,QAAA,EnGu3hBJ,4CQ1nDA,MAAA,MR4nDE,OAAQ,KmGn3hBV,MAAA,KACI,cAAA,IACA,OAAA,IAAA,MAAA,YACA,UAAA,KACA,WAAA,OACA,YAAA,KACA,iBAAA,KnGs3hBJ,iDQ1nDA,aAAA,K2FtveI,kDACI,QAAA,K3F2veR,0BR4nDE,cAAe,IAAI,MAAM,uBmGh3hB3B,SAAA,OACI,QAAA,QAAA,EACA,SAAA,SAEA,uCACI,cAAA,KAEA,0CACI,QAAA,MACA,MAAA,MACA,YAAA,KACA,MAAA,KnGm3hBZ,8CmGh3hBY,MAAA,K3FwveZ,6C2FpveQ,MAAA,yBACI,QAAA,MACA,cAAA,InGk3hBZ,2CmG/2hBY,MAAA,mBACA,QAAA,MACA,UAAA,SACA,OAAA,E3FuveZ,2C2FnveQ,MAAA,mBACI,UAAA,S3FqveZ,SAAA,S2FjveY,KAAA,IACI,IAAA,KAQZ,eACI,SAAA,SACA,KAAA,OACA,UAAA,KACA,QAAA,GnG22hBR,iBQ1nDA,SAAA,S2F3ueQ,MAAA,EACI,OAAA,MACA,UAAA,KACA,QAAA,GACA,kBAAA,e3F6ueZ,UAAA,eAGA,wB2FzueQ,UAAA,KACI,YAAA,K3F6ueZ,mB2FxueQ,WAAA,KACI,QAAA,EAAA,KnGs2hBZ,sBmGn2hBY,cAAA,KAGJ,4CACI,MAAA,KACA,QAAA,KnGq2hBZ,kDmGl2hBY,QAAA,MnGq2hBZ,gCmG91hBI,MAAA,MACI,WAAA,OACA,MAAA,KnGi2hBR,oCQ1nDA,cAAA,KR4nDE,MAAO,KAET,kCmG31hBQ,UAAA,KACA,WAAA,OnG81hBR,+BmG31hBQ,WAAA,gBnG61hBN,mBmG71hBM,qB3FkueR,WAAA,qBR6nDE,cAAe,ImGz1hBb,QAAA,aACI,QAAA,KACA,SAAA,SnG41hBR,iCmGv1hBA,QAAA,MACI,UAAA,KACA,WAAA,O3F6teJ,YAAA,I2F3teI,SAAA,S3F8teJ,iC2F3teQ,OAAA,EACI,YAAA,I3F8teZ,qC2FzteY,MAAA,MACI,IAAA,E3F2tehB,OAAA,MAAA,Y2FtteI,QAAA,IACI,OAAA,EACA,MAAA,EACA,SAAA,S3FwteR,eAAA,K2FtteQ,iBAAA,gBACI,aAAA,IACA,YAAA,K3FwteZ,kBAAA,gBR8nDA,sCmGj1hBY,MAAA,M3FuteZ,aAAA,K2FnteI,MAAA,InGk1hBJ,qCACE,MAAO,eAET,2CmGh1hBQ,MAAA,eACA,YAAA,K3FqteR,WAAA,K2FnteQ,MAAA,cACI,MAAA,KnGm1hBZ,oCmGh1hBY,iBAAA,kBACA,mBAAA,wB3FqteZ,WAAA,wBR+nDA,0CmG/0hBY,aAAA,Y3FoteZ,mBAAA,kB2FjteQ,iBAAA,kBACI,KAAA,KACA,MAAA,KnGi1hBZ,8CmG90hBY,MAAA,MnGk1hBZ,oCACA,uBmG90hBY,MAAA,KnGi1hBZ,0CmG30hBI,qDnG80hBJ,oDQ/nDA,0CRgoDA,6BQ3nDA,wC2F7seQ,uCnGy0hBR,6BmGx0hBY,iBAAA,sBAGJ,qDnG20hBR,oDACA,wCACA,uCmGz0hBY,MAAA,kBACA,YxFnSD,KHi/eX,YAAA,IR+nDA,2DACA,0DACA,8CQ7nDA,6C2F3seY,iBAAA,sBnG40hBZ,uCACA,uCACA,0BACA,0BQ7nDA,OAAA,KRgoDA,uDQ7nDA,0CR+nDA,0CmGl0hBI,0CnGo0hBJ,6BACA,6BQ7nDA,UAAA,O2FlseY,iBAAA,yCnGk0hBV,cAAe,EACf,MAAO,kBAGT,aACE,gBAAiB,MACjB,oBAAqB,KAAK,OmGp0hBZ,kBAAA,UnGw0hBhB,kBACE,OAAQ,KACR,MAAO,KmGr0hBO,YAAA,iBACA,QAAA,MACA,OAAA,IAAA,MxFgVc,mBHy3d9B,cAAA,I2FvsegB,MAAA,mBnGw0hBhB,wBACE,MAAO,mBmGx0hBW,aAAA,mBnG40hBpB,kBACE,QAAS,YACT,QAAS,YmGv0hBC,QAAA,K3F2seZ,SAAA,S2FxseQ,mBAAA,WnGw0hBN,sBAAuB,OACnB,mBAAoB,IAChB,eAAgB,IACxB,iBAAkB,QACd,cAAe,QmGz0hBT,gBAAA,cACA,kBAAA,OACA,eAAA,OACA,YAAA,O3F6seZ,MAAA,K2FvseA,yBACI,QAAA,GACA,QAAA,MACA,SAAA,S3F0seJ,MAAA,KR+nDE,OAAQ,KoGvriBV,iBAAA,uBpG0riBA,gCoGvriBI,QAAA,MACA,SAAA,SACA,MAAA,IACA,OAAA,KACA,iBAAA,kBAEA,4CACI,QAAA,YACA,QAAA,Y5F2jfR,QAAA,KR+nDE,SAAU,SqGpsiBZ,mBAAA,WACI,sBAAA,OAAA,mBAAA,IAAA,eAAA,IACA,iBAAA,QACA,cAAA,QAAA,gBAAA,crGysiBF,kBqGzsiBE,OrG0siBE,eqG1siBF,OACA,YAAA,OrG2siBF,MqG3siBE,KrG6siBJ,uDACE,QqG7siBE,MrG8siBF,SqG9siBE,SACA,OAAA,iB7FwkfJ,OAAA,I6FtkfI,MAAA,IACI,OAAA,EAAA,IACA,mBAAA,YACA,WAAA,YACA,MAAA,kBACA,iBAAA,aACA,OAAA,MAAA,MAAA,kB7FwkfR,cAAA,I6FrkfI,QAAA,ErG+siBJ,mEqG5siBQ,aAAA,ErG+siBR,kEQtoDA,YAAA,E6FpkfI,MAAA,QrG8siBJ,4DqG7siBQ,SAAA,SACA,IAAA,iBACA,MAAA,IAAA,kBAAA,gBAAA,UAAA,gBrGitiBN,YqGjtiBM,OACA,MAAA,mBrGmtiBR,sEqGltiBQ,QAAA,GrGotiBN,QqGptiBM,MrGqtiBN,SqGrtiBM,SACA,IAAA,I7FskfR,MAAA,I6FpkfQ,QAAA,IACI,iBAAA,aACA,cAAA,IACA,QAAA,EACA,QAAA,GACA,uBAAA,wBACA,eAAA,wBACA,2BAAA,GAAA,mBAAA,GACA,kCAAA,SACA,0BAAA,SACA,kCAAA,SACA,0BAAA,S7FukfZ,oE6FpkfY,MAAA,4BAIA,2CACI,KACA,kB1FXH,oBAAA,SHglfb,UAAA,oBAAA,S6FlkfY,QAAA,EAEI,GACA,kBAAA,oBAAA,SACA,UAAA,oBAAA,SrGqtiBZ,QqGrtiBY,GAMA,mCACI,KACA,kBAAA,oBAAA,SACA,UAAA,oBAAA,SACA,QAAA,EAEA,GACA,kBAAA,oBAAA,SACA,UAAA,oBAAA,SACA,QAAA,GrGstiBpB,4BqGntiBoB,4DrGqtiBhB,YqGrtiBgB,SrGwtiBpB,WACE,SqGvtiBkB,M7FkkfpB,IAAA,E6F/jfgB,MAAA,EACI,KAAA,E7FikfpB,OAAA,ERupDE,iBAAkB,sBqGjtiBpB,QAAA,KrGqtiBA,QACE,MqGntiBM,K7F6jfN,OAAA,K6F1jfE,SAAA,SrGmtiBF,MqGltiBM,IrGmtiBN,IAAK,IACL,OqGntiBM,MAAA,MAAA,EAAA,ErGstiBR,mCqG9tiBA,GACI,QAAA,GACI,kBAAA,uBAAA,UAAA,wBrGouiBR,2BACE,GqG/tiBM,QAAA,G7F4jfN,kBAAA,uBACF,UAAA,wBRwqDA,iBQpqDE,QAAA,YACF,QAAA,Y8FtqfA,QAAA,KACI,iBAAA,OACA,cAAA,OACA,gBAAA,OtG80iBJ,qBsG30iBI,MAAA,KACA,OAAA,K9FwqfJ,OAAA,KAAA,IRsqDE,WAAY,kBsG30iBd,cAAA,IACI,kBAAA,gBAAA,IAAA,SAAA,UACA,UAAA,gBAAA,IAAA,SAAA,UtG80iBJ,kCsG30iBI,wBAAA,IACA,gBAAA,I9FwqfJ,WAAA,Q8FrqfA,kCACI,wBAAA,IACI,gBAAA,ItG60iBN,WsG50iBM,Q9FyqfR,YRuqDE,cAAe,KAEjB,uBACE,QsGp1iBM,MtGs1iBR,wBQ7qDE,QAAA,KRirDF,6CsGp1iBI,QAAA,KtGu1iBJ,8CACE,QsGv1iBE,MAEA,sCACI,kBAAA,OACA,eAAA,OACA,YAAA,OACA,QAAA,YACA,QAAA,YACA,QAAA,KtGy1iBN,WsGz1iBM,MtG61iBR,2BADA,4BAEA,mDQnrDA,WAAA,MRurDA,asG11iBY,MAAA,MC5CZ,YACI,SAAA,S/FstfJ,QAAA,Y+FptfI,QAAA,YACI,QAAA,K/FstfR,kBAAA,O+FntfI,eAAA,OACI,YAAA,O/FqtfR,WAAA,MRsrDE,mBAAoB,WuGn4iBd,sBAAA,OACI,mBAAA,I/FgtfZ,eAAA,I+F7sfQ,kBAAA,QACI,eAAA,Q/F+sfZ,YAAA,QRsrDE,WAAY,2BAA6B,OuG93iBvC,gBAAA,MvGi4iBJ,iCACE,UuGj4iBM,MACA,cAAA,EAAA,QAAA,EAAA,QAAA,KACA,iBAAA,uB/F2sfR,SAAA,SR0rDE,MAAO,KuGj4iBT,WAAA,IAAA,OAAA,QvGo4iBA,6BACA,8BQxrDA,QAAA,KAAA,KR0rDE,iBAAkB,EuGh4iBpB,SAAA,EACI,KAAA,E/FysfJ,SAAA,SR0rDE,MAAO,KuG/3iBT,iBAAA,evGm4iBA,uBuGj4iBI,SAAA,SACA,OAAA,EAAA,KvGm4iBF,QuGn4iBE,EAAA,QvGo4iBF,OuGp4iBE,KACA,MAAA,EACA,KAAA,EvGs4iBJ,8BACE,UuGv4iBE,SACA,OAAA,EAAA,KAAA,KAAA,KvGw4iBF,UuGx4iBE,MvG24iBJ,4BQjsDA,Y+FtsfI,QAAA,MAEI,iCACA,UAAA,KACA,WAAA,MAEA,6BACA,QAAA,MAIJ,iDvGy4iBF,QAAS,MAEX,gDACE,QuGz4iBM,KvG44iBR,mBuGz4iBQ,SAAA,S/FusfR,OAAA,MRqsDE,WAAY,MuGt4iBd,SAAA,KvG04iBA,gCuGt4iBI,iBAAA,sBACA,cAAA,KACA,UAAA,M/FosfJ,YAAA,I+FlsfI,QAAA,KAAA,KvG04iBJ,qBQnsDA,OAAA,QRqsDE,YAAa,Kc55iBX,YAAA,OyFyBA,cAAA,SvGs4iBF,QuGr4iBM,M/FksfN,SAAA,ORssDF,uBACE,cuGr4iBU,E/FksfV,YAAA,QRssDF,2BuGp4iBY,6B/FisfV,MAAA,kB+FzrfM,mBACI,WAAA,O/F4rfZ,eAAA,O+FzrfQ,UAAA,KACI,MAAA,K/F2rfZ,OAAA,KRqsDE,YAAa,KwGt/iBf,YAAA,KACI,cAAA,IACA,QAAA,aACA,mBAAA,IAAA,IACA,WAAA,IAAA,IAKA,YACI,MAAA,kBACA,YAAA,+BAAA,KAAA,GAAA,CAAA,+BAAA,MAAA,IACA,UAAA,QACA,YAAA,SxGw/iBR,oBwGj/iBI,OAAA,KACI,MAAA,KACA,MAAA,kBACA,iBAAA,gCACA,mBAAA,EAAA,IAAA,IAAA,EAAA,kBACA,WAAA,EAAA,IAAA,IAAA,EAAA,kBACA,WAAA,OhG+yfR,cAAA,IgG7yfQ,MAAA,MACI,YAAA,IACA,YAAA,KxGq/iBZ,cQnsDA,WAAA,EgGzyfI,aAAA,KACI,YAAA,IACA,UAAA,KACA,MAAA,yBxGi/iBR,YwG7+iBQ,aAAA,KxGi/iBR,gBwG9+iBQ,SAAA,SClDR,QACI,SAAA,SACA,MAAA,EACA,IAAA,KACA,QAAA,EjGg2fJ,SAAA,ORssDE,MAAO,K0G1ijBT,OAAA,KACI,WAAA,K1G6ijBJ,a0G1ijBI,UAAA,KACA,MAAA,K1G4ijBF,e0G5ijBE,UACA,WAAA,OACA,YAAA,KACA,kBAAA,cACA,U/FypB0B,c+FxpB1B,MAAA,MlGu2fJ,QAAA,MRusDE,mBAAoB,EAAE,IAAI,IAAI,EAAE,kB0G3ijBlC,WAAA,EAAA,IAAA,IAAA,EAAA,kBACI,WAAA,QACA,SAAA,SACA,IAAA,KACA,MAAA,MlGw2fJ,oBRusDE,QAAS,G0G3ijBX,SAAA,SACI,MAAA,ElGu2fJ,IAAA,KRusDE,QAAS,G2GpkjBX,aAAA,IAAA,MAAA,QACI,YAAA,IAAA,MAAA,YnGg4fJ,cAAA,IAAA,MAAA,YRusDE,WAAY,IAAI,MAAM,QAExB,mB2GpkjBI,QAAA,GACA,SAAA,SACA,KAAA,EACA,IAAA,KACA,QAAA,GACA,aAAA,IAAA,MAAA,YACA,YAAA,IAAA,MAAA,QnGg4fJ,cAAA,IAAA,MAAA,YmG93fI,WAAA,IAAA,MAAA,Q3GwkjBJ,kB2GpkjBQ,UAAA,KACA,mBAAA,EAAA,IAAA,IAAA,EAAA,kBACA,WAAA,EAAA,IAAA,IAAA,EAAA,kB3GskjBN,O2GtkjBM,KACA,QAAA,aACA,MAAA,KACA,YAAA,K3GukjBN,c2GvkjBM,I3G0kjBR,O2GtkjBQ,QAAA,MnGg4fR,YAAA,OmG93fQ,WAAA,KACI,WAAA,O3G0kjBZ,O2GtkjBY,QAAA,aACA,MAAA,MACA,QAAA,EAAA,KAAA,KAAA,KACA,OAAA,IAAA,MAAA,uBACA,eAAA,InGg4fZ,cAAA,QmG73fQ,cAAA,wB3GwkjBR,8B2GrkjBY,YAAA,Q3GwkjBZ,a2GrkjBY,YAAA,OACA,WAAA,K3GwkjBZ,oBQvsDA,YAAA,KR2sDA,iB4G1njBI,WAAA,M5G4njBF,S4G5njBE,S5G8njBJ,wB4G3njBI,QAAA,WACA,SAAA,SACA,YAAA,MpGo7fJ,MAAA,KR0sDE,WAAY,O6GrojBd,YAAA,I7GyojBA,wC6GrojBI,iBAAA,0BrG87fJ,aAAA,iCR4sDA,oB6GrojBI,UAAA,M7GyojBJ,iB6GrojBI,MAAA,MtGEA,MAAA,MC67fJ,QAAA,EAAA,KAAA,KAAA,KqG57fI,SAAA,SrG+7fJ,wBqG37fI,QAAA,GACI,iBAAA,kBACA,MAAA,IrG67fR,SAAA,SqG17fI,KAAA,MACI,OAAA,KrG47fR,OAAA,QR4sDA,kB6GlojBI,OAAA,QAAA,MAAA,QAAA,ErG27fJ,aAAA,IAAA,MAAA,kBqGz7fI,QAAA,OAAA,KAAA,OAAA,E7GsojBJ,Y6GlojBQ,QAAA,MACA,cAAA,EACA,SAAA,O7GqojBR,e6G/njBI,SAAA,SACI,QAAA,MACA,OAAA,KrGw7fR,YAAA,KR0sDE,OAAQ,Q6G7njBV,4BAAA,IACI,oBAAA,I7GgojBJ,iB8GtrjBA,MAAA,0B9GyrjBA,uB8GtrjBI,MAAA,yBtGg/fJ,yBsG7+fI,MAAA,MACI,SAAA,S9GyrjBR,kC8GtrjBQ,MAAA,M9G0rjBR,yDADA,+CQvsDA,QAAA,MR0sDE,MAAO,MAET,yD8GrrjBI,OAAA,KAAA,KAAA,EAAA,KACA,OAAA,QtG8+fJ,OAAA,KR0sDE,MAAO,KAET,+C8GrrjBI,MAAA,mBACA,aAAA,KtG8+fJ,UAAA,KR2sDA,+C8GrrjBQ,SAAA,SACA,IAAA,EACA,MAAA,MACA,KAAA,EACA,cAAA,S9GurjBN,S8GvrjBM,OtG8+fR,YAAA,OsG5+fQ,cAAA,EACI,YAAA,KAEA,8BACI,SAAA,StG8+fhB,IAAA,EsG1+fQ,MAAA,MACI,KAAA,EACA,OAAA,E9GwrjBZ,0C8GrrjBQ,6CtG4+fR,SAAA,SsGz+fY,IAAA,E9GsrjBZ,6C8GnrjBgB,MAAA,EtG2+fhB,KAAA,MsGx+fY,cAAA,SACI,SAAA,OACA,YAAA,O9GqrjBhB,0CQzsDA,KAAA,EsGv+fY,MAAA,MACI,WAAA,KACA,cAAA,KtG0+fhB,sBAAA,6BsGt+fY,WAAA,sBACI,4BAAA,KACA,oBAAA,K9GmrjBhB,wB8GhrjBgB,YAAA,IACA,MAAA,e9GmrjBhB,0B8GhrjBgB,YAAA,IAIR,mCACI,QAAA,E9GirjBZ,sC8G9qjBY,QAAA,YACA,QAAA,YtGs+fZ,QAAA,KsGr+fY,SAAA,S9GirjBV,mBAAoB,IAAI,I8G/qjBV,WAAA,IAAA,IACA,KAAA,OAEJ,yCACI,OAAA,EAAA,I9GkrjBhB,+D8G/qjBgB,UAAA,KACA,mBAAA,IAAA,ItGu+fhB,WAAA,IAAA,IR4sDA,qE8G/qjBgB,MAAA,Q9GkrjBhB,qBQzsDA,WAAA,sBsGn+fQ,4BAAA,KAEI,oBAAA,K9G+qjBZ,yCQ1sDA,QAAA,ER6sDA,4C8G3qjBgB,mBAAA,IAAA,ItGk+fhB,WAAA,IAAA,IsGh+fgB,KAAA,KtGm+fhB,gDsG79fQ,QAAA,EtGg+fR,mDsG79fY,KAAA,MACI,mBAAA,IAAA,IAAA,WAAA,IAAA,I9G6qjBhB,mB8G3qjBgB,MAAA,0BACA,QAAA,IAAA,ItG+9fhB,QAAA,MRgtDA,yBQ7sDA,MAAA,yBRgtDA,0B8G1qjBoB,WAAA,IAEA,eACI,QAAA,IAAA,I9G+qjBxB,2B8GvqjBY,OAAA,MAEA,yBACI,kBtG09fhB,MAAA,KsGx9fgB,MAAA,KACI,QAAA,EAAA,KAAA,KAAA,KACA,yBtG09fpB,MAAA,EsGp9foB,kBtGu9fpB,aAAA,EsGp9fgB,OAAA,EACI,cAAA,EACA,yDtGs9fpB,aAAA,GRqtDA,yB8GjqjBQ,4BACA,cAAA,KAEA,kCACI,MAAA,MAGJ,+CACI,MAAA,K9GmqjBV,8B8G7pjBE,QAAA,M9GiqjBJ,U8G3pjBI,cAAA,KACI,SAAA,S9G8pjBR,iB8G1pjBA,iBAAA,uBACI,OAAA,E9G4pjBF,Q8G3pjBM,G9G4pjBN,M8G3pjBM,I9G4pjBN,S8G3pjBM,StG08fN,IAAA,KsGx8fM,MAAA,I9G4pjBN,Q8G3pjBU,E9G8pjBZ,eACE,S8G1pjBM,S9G4pjBR,+B8GtpjBgB,QAAA,a9GwpjBd,c8GvpjBkB,ItGs8flB,iBAAA,uBACF,QAAA,IAAA,KRqtDA,cQjtDE,iBAAA,uBsG57fU,mBAAA,qBACI,WAAA,qBtG87fd,QAAA,MsG77fc,OAAA,KAAA,E9GipjBd,Q8GhpjBkB,QtG+7flB,cAAA,wBRqtDF,gBQjtDA,WAAA,KRotDA,kB+Gx4jBI,QAAA,avGwrgBJ,YAAA,IRotDA,oB+Gx4jBQ,OAAA,KACA,MAAA,KACA,cAAA,I/G44jBR,yB+Gx4jBQ,wBvGwrgBR,aAAA,KuGprgBA,yBACI,WAAA,uBvGurgBJ,cAAA,IuGrrgBI,QAAA,MACI,OAAA,KACA,MAAA,MACA,WAAA,MACA,SAAA,SvGurgBR,WAAA,ORmtDI,IAAK,I+Gt4jBT,MAAA,KAEI,2B/Gw4jBA,M+Gx4jBA,0BACA,UAAA,KACA,eAAA,OxGhBA,yBCwsgBJ,SAAA,SRotDI,QAAS,W+Gv4jBb,eAAA,IACI,MAAA,IAEA,kBACI,QAAA,YACA,QAAA,YvGsrgBR,QAAA,KuGlrgBQ,yBACA,QAAA,GACA,QAAA,MvGqrgBR,MAAA,IMzqgBI,wCiGLI,cAAA,KAAA,MAAA,YACI,YAAA,KAAA,MAAA,iCvGkrgBV,WAAA,KAAA,MAAA,YuG/qgBM,QAAA,MACI,OAAA,EACA,MAAA,KACA,WAAA,MACA,SAAA,SACA,IAAA,IACA,MAAA,E/Gq4jBV,qC+Gl4jBU,WAAA,KvGkrgBV,4CuG/qgBU,QAAA,GACI,QAAA,MACA,MAAA,IvGkrgBd,+DuG7qgBM,cAAA,KAAA,MAAA,YACI,aAAA,KAAA,MAAA,iCACA,WAAA,KAAA,MAAA,YACA,QAAA,MACA,OAAA,EvG+qgBV,MAAA,KuG3qgBE,WAAA,MACI,SAAA,SAAA,KAAA,KAAA,IAAA,IvG6qgBN,MAAA,ERutDA,2D+Gh4jBU,MAAA,KACA,WAAA,KAIA,6DACI,MAAA,KACA,aAAA,I/Gi4jBd,oD+G93jBc,MAAA,KACA,KAAA,M/Gi4jBd,6C+G93jBc,QAAA,KvG4qgBd,mDuGvqgBM,YAAA,KACI,aAAA,G/Gg4jBZ,4BACE,yB+G73jBc,QAAA,M/Gi4jBhB,aACE,W+G53jBkB,e/G83jBpB,kBACE,Y+G53jBkB,oC/G83jBpB,gCACE,O+G53jBkB,EAAA,K/Gg4jBpB,yBADA,0B+Gz3jBgB,YAAA,oC/G83jBhB,oB+G13jBoB,OAAA,IAAA,MAAA,iC/G43jBlB,iB+G33jBsB,iC/G43jBtB,mB+G33jBsB,+BvGuqgBtB,WAAA,+BRutDF,sBACE,Y+Gx3jBc,oCvGoqgBd,MAAA,mCRutDF,8CQptDE,iBAAA,wCuGhqgBU,cAAA,IAAA,MAAA,iC/Gy3jBZ,4CQptDA,MAAA,eRwtDA,0BQptDE,YAAA,IRwtDF,qBQptDA,uBwGl0gBI,eAAA,KACI,OAAA,uChH2hkBR,wBQptDA,MAAA,mCRstDE,YAAa,oCgHrhkBf,UAAA,ehHuhkBE,eAAgB,OAGlB,0BgHrhkBA,eAAA,OACI,YAAA,chHyhkBJ,sBQrtDA,KAAA,eAIA,0BRqtDA,uBgHphkBI,KAAA,0BACI,YAAA,oCAMJ,uBhHmhkBJ,uBgHlhkBQ,YAAA,oCxG+zgBR,KAAA,0BRytDA,wBQrtDA,YAAA,IRytDA,4BgHlhkBI,KAAA,gChHshkBJ,mCgHlhkBA,mCACI,OAAA,KhHshkBJ,gCQrtDA,iBAAA,kBRutDE,aAAc,kBgHlhkBhB,MAAA,KxGg0gBA,yBRutDE,iBAAkB,iCgHlhkBpB,OAAA,EAAA,MAAA,iCACI,mBAAA,+BxG8zgBJ,WAAA,+BRutDE,MAAO,+BAGT,uCgHlhkBI,oBAAA,iChHuhkBJ,4BgHlhkBI,8BACI,YAAA,oChHqhkBR,4BgHhhkBA,KAAA,+BhHohkBA,iBgHhhkBA,WAAA,iCACI,QAAA,OAAA,YxG4zgBJ,mBAAA,+BRutDU,WAAY,+BgH9gkBlB,OAAA,EAAA,MAAA,iChHghkBF,WAAY,iBQptDd,6CRutDE,MAAO,4BgH7gkBL,iBAAA,sChHihkBJ,iCQrtDA,KAAA,YRutDE,OAAQ,uBAEV,8BgH5gkBI,OAAA,uBhHghkBJ,uBQttDA,OAAA,sBR0tDA,mBQttDA,OAAA,kBR0tDA,UgH7gkBI,MAAA,MxGwzgBJ,cAAA,ER0tDA,SQttDA,WAAA,KR0tDA,2BgH7gkBI,WAAA,KhHihkBJ,YgH9gkBI,OAAA,IAAA,EAAA,IAAA,YAGI,gBAAA,eACI,UAAA,kBACA,YAAA,SxGuzgBZ,eAAA,UR2tDA,4BgHzgkBQ,YAAA,IhH6gkBR,iBQvtDA,QAAA,MAAA,ER2tDA,QQvtDA,WAAA,IR2tDA,6BQvtDA,6BR2tDA,4BAFA,yBiHpqkBA,yBAEI,QAAA,EAGJ,wBACI,WAAA,sBzG88gBJ,UAAA,KRytDE,YAAa,KiHnqkBX,QAAA,KAAA,EACI,eAAA,UzG68gBR,YAAA,IyGz8gBA,qBjHoqkBA,sCQvtDA,wCyG18gBI,MAAA,ejH0qkBJ,yBAEA,yBQztDA,qByG38gBI,mBzGu8gBJ,gBRutDA,gBAEA,mBiH3pkBA,aAAA,uBjHmqkBA,yBQztDA,yByGt8gBA,WAAA,sBjHmqkBA,WiH9pkBI,WAAA,sBjHgqkBF,OAAQ,KACR,MAAO,yBACP,eAAgB,WAChB,mBAAoB,KiH9pkBd,WAAA,KzGw8gBR,cAAA,IRytDE,OAAQ,EAAE,IiH5pkBR,QAAA,IAAA,KACI,OAAA,KjHgqkBR,eiH5pkBQ,YAAA,QACA,UAAA,KjHkqkBR,iBADA,oBADA,gBQrtDA,WAAA,sBR4tDA,iBACA,mBAFA,eAGE,iBAAkB,kBAClB,MAAO,KACP,YAAa,KiHvpkBX,uBjH2pkBF,WAAY,KAGd,UiHxpkBA,cAAA,IACI,OAAA,KACA,OAAA,KACA,UAAA,SACA,OAAA,IAAA,IACA,QAAA,IAAA,IjH0pkBF,WiH1pkBE,OACA,MAAA,KACA,mBAAA,wBACA,WAAA,wBzGm8gBJ,iCR0tDA,kCiHzpkBA,MAAA,yBjH4pkBA,wCQxtDA,aAAA,uBR4tDA,gBACE,OAAQ,KiHzpkBN,OAAA,KAAA,EzGk8gBJ,QAAA,IAAA,KR0tDE,MAAO,KiHzpkBT,cAAA,IjH6pkBA,sCiHzpkBI,atGxGO,IH2ihBX,gCR0tDE,aAAc,IAEhB,2BQxtDA,MAAA,KR4tDA,gCiHvpkBI,MAAA,KjH2pkBJ,uBiHvpkBI,MAAA,KACA,OAAA,KACA,MAAA,KACA,WAAA,OjHypkBF,YiHzpkBE,KzGg8gBJ,iBAAA,sByG77gBQ,cAAA,IjHypkBN,OAAQ,IiHvpkBE,UAAA,KzG+7gBZ,QAAA,YAGA,sBR2tDE,aAAc,KAGhB,eACA,gBiHrpkBI,MAAA,KzGk8gBJ,mCRutDA,ciHnpkBQ,iBjHqpkBR,iBiHhpkBI,iBAAA,YAIA,4BACI,iBtG5JG,QsGiKP,4BACI,YzGs7gBR,QAAA,gByGl7gBA,8BACI,OAAA,IAAA,EjHkpkBJ,uBADA,qBiH/okBI,sBAGA,MAAA,KACA,QAAA,MACA,MAAA,KACA,OAAA,KAAA,EzGs7gBJ,oBR2tDI,MAAO,KiH5okBP,iBzGq7gBJ,QAAA,MR6tDA,iBiH7okBI,mBtGzLO,QH8mhBX,mBAAA,OR2tDE,mBAAoB,QiH7okBtB,uBAAA,2BjHkpkBA,mBADA,oBQxtDA,MAAA,KR6tDA,6BQztDA,6BR2tDE,OAAQ,uBAAuB,MAAM,uBAGvC,wDQztDE,wBAAA,YyGp7gBM,2BAAA,YjHgpkBN,ciH/okBU,2BjHipkBZ,uDACE,uBAAwB,YACxB,0BAA2B,YAC3B,ciH/okBU,2BjHkpkBZ,eQztDE,OAAA,KyG/6gBc,SAAA,SjH2okBd,MiH1okBkB,KjH6okBpB,oCiHtokBQ,iCAAA,iCAAA,iCAAA,iCAAA,kCzG66gBN,QAAA,ER6tDF,gB+BpzkBE,gBAAA,mB3B8NI,cAAA,eJ2lkBN,oEQ3tDA,oEyGz6gBA,iBAAA,kBjHsokBE,mBAAoB,EAAI,EAAI,IAAI,EAAI,kBiHpokBlC,WtG/OO,EAAA,EAAA,IAAA,EAAA,kBXs3kBX,yCiHlokBQ,iBAAA,YjHookBN,oBAAqB,mBQxtDvB,iCR2tDA,gCiH7nkBY,iBAAA,YjHgokBZ,qCiH7nkBgB,iBAAA,kBAEJ,mEACI,qBAAA,mBjHgokBhB,sCQztDA,0C0GhrhBA,mDlH24kBA,2CAEA,oDkH34kBI,KAAA,MACA,MAAA,K1GmrhBJ,QAAA,QR2tDE,YAAa,UmHh5kBX,UAAA,KACI,IAAA,KnHm5kBR,qCmH/4kBA,yCnHk5kBA,kDADA,0CQxtDA,mD2G9qhB4B,KAAA,KnH04kB1B,MAAO,KmHz4kBuB,QAAA,QACA,YAAA,UnH24kB9B,IAAK,KQ1tDP,UAAA,K2GvqhBY,oCnHo4kBZ,wCmHp4kBY,yCACA,aAAA,K3G0qhBZ,cAAA,OR6tDA,kCACA,mCQ1tDA,iBAAA,kBR6tDA,qCQ1tDA,sC2G3phBI,aAAA,kB3G8phBJ,+B2GnphBY,QAAA,YnHk3kBZ,+BADA,+BAEE,QAAS,IAAI,MAAM,kBmHl3kBL,eAAA,KACA,iBAAA,gCnHs3kBhB,iBmHl3kBgB,YAAA,InHs3kBhB,qBACE,IAAK,kCAGP,8EACA,8EmHt3kBgB,mBAAA,EAAA,IAAA,IAAA,EAAA,kBACA,WAAA,EAAA,IAAA,IAAA,EAAA,kBACA,iBAAA,QACA,IAAA,K3G6phBhB,OAAA,KR6tDA,2EACA,2EQ1tDA,iBAAA,QR8tDA,mBQ1tDA,iBAAA,kB2G/ohBY,OAAA,KnH42kBV,MAAO,KmH32kBO,mBAAA,K3GkphBhB,WAAA,K2G9ohBY,cAAA,IACI,WAAA,O3GgphBhB,QAAA,GR6tDuB,uBAAvB,sBmHv2kBY,cAAA,KACA,iBAAA,qBACA,MAAA,KAKZ,4B3G6ohBA,wB2G5ohBI,4BnHw2kBA,QAAS,amHr2kBb,UAAA,O3G6ohBA,mBR4tDI,QAAS,KAEX,wBmH/1kBsB,WAAA,OnHi2kBpB,QmHj2kBoB,MACA,OAAA,QAAA,EAAA,YAEA,e3GsohBxB,QAAA,a2G7nhBoB,cAAA,S3GiohBpB,4BR6tDE,iBAAkB,6BAGpB,6CmHp1kBI,WxG1JO,KXi/kBX,yBmHr1kBI,6CACA,WAAA,QAGA,mDACI,aAAA,KACA,YAAA,E3G2nhBR,6CR8tDE,WAAY,MAEd,yBACE,6CmHp1kBM,WAAA,QnHy1kBR,gFQ5tDE,aAAA,ER+tDF,iFACE,cmHn1kBU,EnHs1kBZ,0BACE,amHl1kBM,enHo1kBR,gCQ5tDA,cAAA,eR+tDA,mDQ5tDA,WAAA,eRguDA,iBQ5tDA,YAAA,0B2G9mhBQ,OAAA,EAAA,MAAA,uBAHJ,mBAAA,wBAIQ,WAAA,wB3GinhBV,iBAAA,uBACF,QAAA,IR+tDA,iCmH50kBY,OAAA,IAAA,MAAA,uB3GinhBZ,iBAAA,uBR+tDA,oCQ5tDA,oC2G/mhBQ,MAAA,mBnHg1kBR,4CADA,4CQ3tDA,aAAA,uB2G7mhBI,kCACI,iBAAA,4BAEJ,mCACI,iBAAA,kBnH80kBR,6BmHz0kBI,WAAA,sBACI,MAAA,yBACA,wBAAA,iCAAA,iCAAA,mCACI,iBAAA,uB3G+mhBZ,MAAA,qB2G9mhBY,QAAA,G3GinhBZ,2BAAA,iCR8tDE,iBAAkB,kBoH7jlBpB,MAAA,KpHkklBA,2BACA,iCAHA,oCACA,oCoH5jlBI,iBAAA,kB5Gk2hBJ,MAAA,KAIA,gC4Gh2hBQ,sCpH4jlBR,yCACA,yCAGE,aAAc,KQ5tDhB,uB4G71hBY,cAAA,IAAA,MAAA,uBpH8jlBZ,wBQ7tDA,cAAA,IAAA,MAAA,uBRguDA,8BQ7tDA,WAAA,IAAA,MAAA,uBRguDA,mCoHxjlBgB,mCAAA,qCAAA,qC5G21hBhB,WAAA,sB4Gr1hBQ,OAAA,IAAA,MAAA,uBACI,MAAA,qB5Gw1hBZ,gD4Gr1hBQ,aAAA,IAAA,MAAA,iCpHujlBR,oBQ7tDA,WAAA,uB4Gj1hBQ,mBAAA,wBAEI,WAAA,wBACA,OAAA,KAIR,oCpH8ilBF,oBAAqB,uBAEvB,mCoH5ilBQ,oBAAA,uB5Gi1hBR,sCAAA,uC4G90hBQ,iBAAA,uBpHgjlBR,yBoH/ilBY,UAAA,KAKJ,wBAAA,gCAAA,qCAAA,qCAAA,8BAAA,8BpH8ilBR,wBoH9ilBQ,gCAAA,qCAAA,qCAAA,8BAAA,8BAAA,0BAAA,kCAAA,uCAAA,uCAAA,gCAAA,gC5Gi1hBR,WAAA,kB4G/0hBI,aAAA,kB5Gk1hBJ,mEAAA,mEAAA,qE4G90hBI,mBAAA,KAAA,EAAA,EAAA,kBACI,WAAA,KAAA,EAAA,EAAA,kB5Gq1hBR,uCR4tDA,uCACA,4BAFA,4BoHjilBQ,WAAA,uBACI,MAAA,yBC5FZ,mCACI,OAAA,K7Gy6hBJ,mCR6tDA,wCACA,wCqHlolBQ,MAAA,mBACI,KAAA,mBrHuolBZ,oBQ9tDA,iBAAA,sB6Gx5hBA,kDrH6nlBA,wDAFA,eqHrnlBI,iCrHynlBJ,0CQhuDA,sBAJA,uB6Gn4hBQ,MAAA,qBACA,KAAA,qBrH4mlBR,wBqHtmlBQ,8BAAA,4BAAA,0BAAA,uCAAA,uCAAA,4BrHumlBN,MAAO,QAET,uBAA6D,oCAA8G,0CAAgM,kCAA5F,kCAAvP,oCAAwG,0CAAwM,kCAA5F,kCAA1I,6BAAgN,qBAA5F,qBqHnmlBlN,WAAA,4BrHqmlBF,aAAc,4BAGhB,0DqHnmlBQ,WAAA,IAAA,MAAA,uBrHwmlBR,+DqHnmlBI,uB7Go4hBJ,iBAAA,Y6Gh4hBI,MAAA,yBrHomlBJ,uBqHhmlBQ,mBAAA,IAAA,EAAA,EAAA,2BAAA,CAAA,KAAA,EAAA,EAAA,4B7Gk4hBR,WAAA,IAAA,EAAA,EAAA,2BAAA,CAAA,KAAA,EAAA,EAAA,4BRmuDA,kCQ/tDA,wCRiuDE,MAAO,QAGT,4CACE,WAAY,uBAGd,YqH/llBI,iBAAA,sBrHmmlBJ,WqH7llBI,SAAA,gBAOI,OAAA,Y7Gy3hBR,QAAA,e6Gt3hBI,QAAA,GAiBJ,SACI,QAAA,eAGJ,iBrH4klBE,oBAAqB,eqH1klBnB,iBAAA,eACA,gBAAA,e7G42hBJ,YAAA,eRmuDA,YACE,QqH5klBE,GrHillBJ,gBQhuDA,SAAA,SRkuDE,MAAO,KqH3klBT,OAAA,KACI,UAAA,K7G42hBJ,WAAA,ORkuDE,OAAQ,KAEV,uBQhuDA,QAAA,QRkuDE,YAAa,UsHjulBf,SAAA,StHqulBA,UsHjulBI,OAAA,IAAA,OAAA,uBACA,WAAA,uBACA,cAAA,I9GkgiBJ,OAAA,QRkuDE,WAAY,MsHjulBd,QAAA,K9GmgiBA,sBRkuDE,WAAY,OsHjulBd,OAAA,KAAA,EtHoulBA,iCACE,QsHpulBE,KtHuulBJ,oBsHpulBA,aAAA,SACI,YAAA,SACA,iBAAA,sBACA,WAAA,IAAA,MAAA,kB9GkgiBJ,cAAA,IAAA,MAAA,kBRuuDA,OACA,gBsHpulBI,OAAA,MACA,WAAA,sBACA,cAAA,IAGA,kBACI,OAAA,KACA,WAAA,sBACA,MAAA,yB9GkgiBR,mBAAA,wBRquDU,WAAY,wBuH7wlBtB,YAAA,0BACI,UAAA,QACA,QAAA,IAAA,IvHixlBJ,yCACA,0CQnuDA,OAAA,K+GziiBI,MAAA,KACI,YAAA,KACA,UAAA,K/G2iiBR,iBAAA,sB+GxiiBQ,MAAA,yB/G2iiBR,0CRquDE,IAAK,KAGP,WwH7xlBI,WAAA,MxHgylBJ,cQnuDA,cRquDE,cAAe,MyHnylBjB,aAAA,EzHsylBA,6CyHnylBI,aAAA,OACA,YAAA,KjHikiBJ,WAAA,KRuuDA,cyHjylBI,YAAA,0BzHoylBJ,sBACE,ayHnylBE,uBACA,cAAA,EAAA,EAAA,OAAA,OjHikiBJ,WRsuDE,OAAQ,uBAAuB,MAAM,uByHhylBnC,cAAA,OzHoylBJ,YyHhylBQ,YAAA,oCzHmylBR,iByHhylBQ,QAAA,YjH6jiBR,MAAA,qBRuuDA,uBQpuDA,MAAA,kBkH9liBA,oBACI,cAAA,OAAA,OAAA,EAAA,ElHimiBJ,aAAA,uBRuuDA,4D0Hp0lBQ,aAAA,YlHkmiBR,uCkH9liBI,mBAAA,wBACI,WAAA,wBACA,cAAA,OACA,OAAA,K1Hw0lBR,oBQpuDA,wBkHhmiBA,oBAGI,OAAA,qB1Hq0lBJ,kBQpuDA,KAAA,qBkH3liBA,mEACI,KAAA,EACA,MAAA,K1Ho0lBJ,iD0Hj0lBA,MAAA,qBAGI,4BACI,iBAAA,uBACA,aAAA,iC1Hq0lBR,mBQpuDA,MAAA,eRuuDA,8C0H/zlBQ,OAAA,uBAAA,M/G+5BgC,uBH6rgBxC,OAAA,uDkHzliBY,iBAAA,uBACI,QAAA,EAIR,2EACI,YAAA,K1H8zlBV,c0H9zlBU,KACA,MAAA,qBlH0liBZ,wERuuDE,OAAQ,K0H1zlBN,MAAA,K1H4zlBF,MAAO,IAET,0EQruDA,aAAA,uBAAA,YAAA,YAAA,YkHnliBI,aAAA,IAAA,IAAA,EAAA,IAKI,gFACI,aAAA,YAAA,YAAA,uBAAA,sBACA,aAAA,EAAA,IAAA,IAAA,c1H2zlBZ,yBQruDA,QAAA,IAAA,KRyuDA,kB0HjzlBQ,OAAA,EAAA,MAAA,uBlH6kiBR,mBAAA,wBRuuDU,WAAY,wB2H54lBtB,iBAAA,uBACI,QAAA,K3Hg5lBJ,6C2H54lBQ,mBAAA,K3H+4lBR,sDQruDA,MAAA,ImHtqiBQ,YAAA,I3H+4lBR,wD2H54lBY,OAAA,IAGJ,mDACI,iBAAA,4BACA,cAAA,KACA,YAAA,IACA,OAAA,KAEA,mDACI,cAAA,KACA,iBAAA,Y3H84lBhB,oD2Hr4lBY,iBAAA,YnHmqiBZ,+DRuuDE,iBAAkB,sBAEpB,sDQruDA,QAAA,KRuuDE,iBAAkB,uBAEpB,6E2Hh4lBI,QAAA,E3Hk4lBF,O2Hl4lBE,IAAA,MAAA,uBACA,iBAAA,uBACA,MAAA,qBnH4piBJ,cAAA,OmHxpiBI,iFACI,iBAAA,kBAGJ,yEACI,iBAAA,uBACA,MAAA,yBAGJ,+EACI,iBAAA,kBnHypiBR,MAAA,KRyuDA,6F2H73lBQ,cAAA,KACA,aAAA,InHypiBR,iFmHrpiBI,MAAA,IACI,KAAA,KAIJ,gDACI,WAAA,uDnHspiBR,OAAA,uBAAA,MAAA,iCRwuDE,iBAAkB,uBAEpB,6EQtuDA,QAAA,IAAA,IRyuDA,uE2Hx3lBQ,OAAA,EnHmpiBR,MAAA,qBRyuDA,2E2Hx3lBY,iBAAA,kBACA,OAAA,KACA,MAAA,KACA,cAAA,InHmpiBZ,QAAA,EAAA,EAAA,EAAA,ImH/oiBI,WAAA,InHkpiBJ,mFmH9oiBI,MAAA,KACI,YAAA,IACA,aAAA,QnHgpiBR,QAAA,EAAA,IRyuDA,yF2Hr3lBY,MAAA,KnHgpiBZ,iBAAA,kBRyuDA,kE2Hl3lBY,WAAA,InH6oiBZ,YAAA,0BRyuDA,uE2H/2lBY,MAAA,0B3Hk3lBZ,8DQtuDA,MAAA,0BmHpoiBI,kEACI,MAAA,0B3H+2lBR,mEQtuDA,MAAA,0BRyuDA,yDQtuDA,MAAA,0BR0uDA,qDQtuDA,MAAA,KmHnoiBQ,KAAA,E3H82lBR,iB2H12lBY,SAAA,SACA,mBAAA,SACA,sBAAA,OnHqoiBZ,mBAAA,OmHloiBQ,eAAA,OACI,chHzJD,KgH0JC,UAAA,KACA,iBAAA,MACA,cAAA,MnHooiBZ,gBAAA,WmHjoiBY,mBAAA,MACI,chHhKL,WgHiKK,kBAAA,MnHmoiBhB,eAAA,MmH7niBQ,YAAA,WnHioiBR,mBmHzniBY,SAAA,OACI,MAAA,QnH2niBhB,OAAA,QmH5niBY,UAAA,QACI,WAAA,Q3Hu2lBhB,gBQ5uDA,UAAA,QmH5niBY,SAAA,SACI,SAAA,OnH2niBhB,QAAA,EmH5niBY,OAAA,EACI,MAAA,EnH2niBhB,IAAA,ERovDE,OAAQ,E2Hz2lBV,KAAA,EACI,MAAA,eACA,OAAA,enHwniBJ,QAAA,ERsvDA,kB4HzimBI,UAAA,kBAAA,mBAAA,kBAAA,WAAA,kB5H6imBF,O4H7imBE,eACA,SAAA,S5H8imBF,I4H9imBE,EACA,MAAA,E5H+imBF,O4H/imBE,E5HgjmBF,KAAM,E4H/imBJ,QAAA,E5HijmBF,O4HjjmBE,EACA,2BAAA,MpHwziBJ,2BR6vDE,UAAW,Q4HljmBb,mBAAA,qBACI,WAAA,qBACA,SAAA,SACA,QAAA,MACA,OAAA,KpHyziBJ,MAAA,KR6vDE,SAAU,K4HjjmBR,UAAA,KAEA,WAAA,KAEA,gBAAA,K5HsjmBJ,8CACA,6C4HljmBI,QAAA,K5HujmBJ,yBQ7vDA,0BoHrziBA,QAAA,IACI,QAAA,M5HsjmBJ,uB4HnjmBI,WAAA,KACA,UAAA,KACA,MAAA,KACA,eAAA,K5HujmBJ,wC4HnjmBI,mBAAA,kBpHwziBJ,WAAA,kBR8vDE,OAAQ,K4HnjmBV,MAAA,KACI,UAAA,IACA,SAAA,S5HqjmBF,MAAO,M4HpjmBL,WAAA,IACA,SAAA,OACA,QAAA,GACA,QAAA,EACA,OAAA,EACA,eAAA,KACA,iBAAA,QACA,kBAAA,QACA,UAAA,QACA,kBAAA,EACA,YAAA,EACA,wBAAA,EpHwziBJ,WAAA,ERiwDA,gC4HpjmBI,mBAAA,QpHwziBJ,WAAA,QR+vDE,QAAS,M4HpjmBX,QAAA,E5HsjmBE,SAAU,S4HpjmBR,IAAA,EACA,MAAA,EpHwziBJ,OAAA,MR+vDE,MAAO,M4HpjmBT,WAAA,IACI,UAAA,IACA,SAAA,OACA,eAAA,KACA,QAAA,GAGJ,iBACI,QAAA,E5HsjmBF,S4HtjmBE,SACA,KAAA,EACA,OAAA,EACA,eAAA,KACA,SAAA,O5HyjmBJ,uD4HrjmBI,eAAA,KACA,oBAAA,KACA,iBAAA,KACA,gBAAA,KACA,YAAA,K5HyjmBJ,qDACE,e4HzjmBE,IpHyziBJ,qBRowDE,SAAU,S4HzjmBZ,KAAA,IACI,MAAA,I5H2jmBF,W4H3jmBE,K5H6jmBJ,4B4H1jmBI,SAAA,SACA,QAAA,GACA,WAAA,QACA,cAAA,IACA,MAAA,EACA,KAAA,EACA,QAAA,EACA,mBAAA,QAAA,IAAA,OACA,WAAA,QAAA,IAAA,O5H8jmBJ,8C4HzjmBI,QAAA,GACA,mBAAA,QAAA,GAAA,OACA,WAAA,QAAA,GAAA,O5H8jmBJ,oCQnwDA,IAAA,ERqwDE,MAAO,KAET,gE4H1jmBI,IAAA,I5H4jmBF,O4H5jmBE,IpHwziBJ,sCRwwDE,MAAO,E4H7jmBT,OAAA,KpHyziBA,2DRwwDE,KAAM,K4H7jmBR,MAAA,EACI,IAAA,IACA,OAAA,IACA,WAAA,EACA,UAAA,KpHwziBJ,MAAA,KRywDA,kE4H7jmBQ,OAAA,KACA,MAAA,IACA,KAAA,I5HkkmBR,mE4H9jmBQ,KAAA,KpHwziBR,MAAA,ER2wDA,yB4H7jmBI,UAAA,IACA,SAAA,MAAA,QAAA,EpHuziBJ,WAAA,OR0wDE,OAAQ,M4H9jmBV,MAAA,MACI,WAAA,OACA,WAAA,O5HkkmBJ,0B4H7jmBY,SAAA,MpHsziBZ,MAAA,ER0wDE,WAAY,O4H3jmBd,WAAA,OACI,gBAAA,KAGA,eACI,OAAA,K5H+jmBR,yC4H3jmBQ,KAAA,IACA,MAAA,KAGA,qDACI,WAAA,kBpHsziBZ,iBR0wDE,WAAY,gB4HzjmBd,QAAA,KACA,YAAA,0BACI,iBAAA,kBACA,UAAA,KpHkziBJ,YAAA,KR0wDE,mBAAoB,wB4HzjmBtB,WAAA,wBAEI,qB5H0jmBJ,oB4HzjmBI,YAAA,0B5H4jmBJ,mB4HzjmBI,UAAA,Q5H4jmBJ,yBQxwDA,MAAA,KR4wDA,a4HzjmBI,QAAA,K5H6jmBJ,uBQxwDA,SAAA,SR0wDE,IAAK,M4HzjmBP,KAAA,MACI,UAAA,KpHkziBJ,OAAA,QR0wDE,OAAQ,K4HvjmBN,MAAA,KACI,WAAA,mBACA,MAAA,mBpHgziBR,cAAA,IR0wDE,WAAY,O4HpjmBN,YAAA,K5HwjmBR,iB6H7xmBA,OAAA,IACI,IAAA,EACA,cAAA,E7HiymBJ,iB6H7xmBI,iBAAA,QACA,MAAA,K7H+xmBF,a6H/xmBE,Q7HkymBJ,mBQzwDA,iBAAA,QqHnhjBI,MAAA,KACI,aAAA,Q7HiymBR,iBQzwDA,iBAAA,QR2wDE,MAAO,K6H3xmBT,aAAA,Q7H+xmBA,c6H1xmBA,iBAAA,QACI,MAAA,KACA,aAAA,Q7H8xmBJ,iB6H1xmBI,iBAAA,QACA,MAAA,KACA,aAAA,Q7H8xmBJ,gB6H1xmBI,iBAAA,QrHkhjBJ,MAAA,KR2wDE,aAAc,QAGhB,e6H1xmBI,iBAAA,QrHkhjBJ,MAAA,KR2wDE,aAAc,QAGhB,c6HxxmBQ,iBAAA,QrHghjBR,MAAA,KR2wDE,aAAc,QAGhB,gB6H9xmBQ,iBAAA,QrHshjBR,MAAA,KR2wDE,aAAc,QAGhB,c6HpymBQ,iBAAA,QrH4hjBR,MAAA,KR2wDE,aAAc,QAGhB,e6H1ymBQ,iBAAA,QrHkijBR,MAAA,KR2wDE,aAAc,QQrwDhB,eRwwDA,cAGA,iBAFA,iB6HpzmBI,iBAAA,K7H0zmBJ,4CQzwDA,QAAA,ER2wDE,OAAQ,K6H5zmBN,iBAAA,YACI,MAAA,QrHsjjBR,mBR2wDE,QAAS,kBAIX,SADA,UQxwDA,QAAA,ER6wDA,U6Hx0mBQ,mBlH/CG,MAAA,EAAA,IAAA,IAAA,iBkHgDH,WAAA,MAAA,EAAA,IAAA,IAAA,iBAHJ,SACI,MAAA,qBACA,WlH/CG,iCXi4mBX,S6H50mBA,MAAA,KACI,QAAA,IAAA,EACA,WlHvDO,MkHwDP,WAAA,KrHokjBJ,iBAAA,uBR2wDE,mBAAoB,wB6H30mBtB,WAAA,wB7H60mBE,OAAQ,IAAI,MAAM,uBAGpB,eQzwDA,QAAA,IAAA,KR2wDE,YAAa,K8Hh5mBH,yB9Hk5mBZ,qB8Hj5mBY,OAAA,QACA,MAAA,KACA,iBAAA,kB9Ho5mBZ,iB+Hz5mBA,OAAA,E/H65mBA,c+Hz5mBA,YAAA,0BvHmpjBA,yBR2wDE,QAAS,IAAI,K+Hx5mBf,MAAA,QvHipjBA,aR4wDE,QAAS,IAAI,KAGf,YQ1wDA,mBAAA,YR4wDU,WAAY,Y+Hz5mBtB,MAAA,eACI,OAAA,eACA,iBAAA,eACA,mBAAA,EAAA,IAAA,IAAA,EAAA,kBACA,WAAA,EAAA,IAAA,IAAA,EAAA,kBACA,QAAA,IAAA,eACA,cAAA,I/H25mBF,a+H35mBE,e/H85mBJ,U+H15mBA,MAAA,eACI,UAAA,eACA,YAAA,evHgpjBJ,YAAA,oCuH9ojBI,YAAA,c/H85mBJ,QQ3wDA,QAAA,gBuH5ojBI,QAAA,aACI,SAAA,SvH8ojBR,oBAAA,KR6wDK,iBAAkB,K+Hv5mBvB,gBAAA,KACI,YAAA,KvH6ojBJ,sBAAA,KuH1ojBA,wBACI,QAAA,MvH8ojBJ,sBR6wDA,yB+Hv5mBA,SAAA,SACI,MAAA,EvH6ojBJ,IAAA,ER6wDE,MAAO,EAET,0BACA,6BgIl9mBE,MAAA,KACA,KAAA,EhIq9mBF,sBACE,MAAO,QAET,0BgIn9mBE,oBAAA,KAAA,MhIs9mBF,yBgIn9mBA,MAAA,QhIs9mBA,6BgIn9mBE,oBAAA,KAAA,MhIs9mBF,uBQ7wDA,MAAA,QyHxtjBA,4BACI,MAAA,KACA,OAAA,KACA,MAAA,MACA,QAAA,EjIy+mBF,OiIz+mBE,KjI0+mBF,QiI1+mBE,EjI4+mBJ,2BQhxDA,QAAA,KRmxDA,sBQhxDA,SAAA,SyHxtjBI,QAAA,gBjI2+mBF,QAAS,aiIz+mBH,OAAA,KACA,QAAA,EjI4+mBR,kCQhxDA,MAAA,KyHvtjBI,OAAA,KjI0+mBF,YAAa,IiIx+mBP,WAAA,IACA,WAAA,sBzHytjBR,cAAA,IyHttjBI,SAAA,SzHytjBJ,uCyHrtjBI,QAAA,MACI,OAAA,mBzHutjBR,IAAA,IyHptjBI,SAAA,SACI,ctHKK,IAAA,MAAA,yBHitjBb,MAAA,IyHntjBI,aAAA,IACI,YAAA,IAGJ,wCjIq+mBJ,8CQhxDA,WAAA,QRmxDA,6CACA,mDiIl+mBQ,aAAA,KjIs+mBR,cQhxDA,YAAA,UAGA,ayH/sjBI,UAAA,KACI,YAAA,IjIm+mBR,2BiIh+mBQ,WAAA,IACA,OAAA,KAIA,+BACI,WAAA,IACA,SAAA,OACA,OAAA,QACA,YAAA,OjIi+mBZ,2BiI99mBY,MAAA,uBjIk+mBZ,0BACA,6BiI99mBgB,KAAA,KjIk+mBhB,KiI99mBgB,SAAA,SACA,QAAA,MzH+sjBhB,sBAAA,KyH5sjBQ,gBAAA,KjI+9mBN,oBAAqB,KiI79mBX,iBtHlDC,KHgwjBb,YAAA,KyH5sjBY,UAAA,KzHgtjBZ,URkxDE,SAAU,SiI39mBZ,QAAA,MACI,SAAA,OzH4sjBJ,QAAA,YRoxDA,SiI39mBI,SAAA,SzH4sjBJ,QAAA,MyH1sjBI,MAAA,EACI,MAAA,EAGA,YACI,SAAA,SACA,QAAA,KACA,MAAA,EACA,MAAA,EjI+9mBZ,YQhxDA,SAAA,SRkxDE,QAAS,MiIx9mBX,mBAAA,WjI09mBU,WAAY,WiIx9mBlB,OAAA,QzHysjBJ,QAAA,E0Ht0jBA,sBACI,QAAA,ElI6lnBJ,SADA,SAEE,SkI1lnBE,SlI2lnBF,QkI3lnBE,MACA,OAAA,QAGJ,SACI,MAAA,EACA,KAAA,K1H20jBJ,SRoxDE,KAAM,EkI1lnBR,MAAA,KlI8lnBA,mBkI1lnBI,KAAA,E1Hy0jBJ,MAAA,K0Ht0jBA,mBACI,MAAA,EACA,KAAA,K1H20jBJ,U0Ht0jBA,YlI0lnBA,QkIzlnBI,SAAA,SACA,QAAA,MACA,IAAA,ElI4lnBF,OkI5lnBE,QACA,YAAA,OAGA,UACI,SAAA,S1Hy0jBR,QAAA,KRqxDE,OAAQ,EkI1lnBV,KAAA,ElI4lnBE,MAAO,KkI1lnBL,OAAA,K1H00jBJ,yBRqxDE,QAAS,MAGX,cQnxDA,SAAA,SRqxDE,IAAK,EkI1lnBP,KAAA,EACI,MAAA,IACA,OAAA,I1Hw0jBJ,WAAA,Q0Hp0jBI,oBACI,OAAA,IAIJ,eACI,SAAA,SACA,OAAA,E1Hs0jBR,KAAA,ERqxDE,YAAa,OkIvlnBf,WAAA,OlIylnBE,UAAW,KACX,YAAa,IkIvlnBX,QAAA,EAAA,IACA,MAAA,QlI2lnBJ,kBQnxDA,SAAA,SRqxDE,QAAS,MkIvlnBX,IAAA,EACI,MAAA,IACA,MAAA,KACA,OAAA,KACA,OAAA,QACA,QAAA,E1Hu0jBJ,0BRqxDE,WAAY,QkIrlnBN,OAAA,YAIR,cACI,QAAA,GlIylnBJ,kBkIrlnBI,SAAA,mBACA,QAAA,gBACA,IAAA,Y1Hm0jBJ,MAAA,Y0Hj0jBI,MAAA,YACI,OAAA,Y1Hm0jBR,UAAA,YRqxDE,YAAa,YkIplnBf,QAAA,YACI,OAAA,YACA,SAAA,OACA,QAAA,YACA,QAAA,gBACA,WAAA,cACA,aAAA,gBACA,aAAA,sBlIwlnBJ,WQnxDA,OAAA,K0H/zjBA,yBACI,OAAA,KlIulnBJ,qBkIplnBI,IAAA,KACA,OAAA,KACA,iBAAA,kBACA,cAAA,I1Hm0jBJ,oBRqxDE,IAAK,KkIplnBP,OAAA,KACI,iBAAA,kBlIulnBJ,4BQnxDA,cAAA,EAAA,IAAA,IAAA,E0H/zjBA,uBACI,OAAA,I1Hk0jBJ,OAAA,KRqxDE,iBAAkB,kBAEpB,uBkIplnBI,IAAA,KACA,MAAA,KACA,OAAA,KACA,iBAAA,YlIulnBJ,qCkIplnBI,SAAA,SACA,QAAA,MACA,IAAA,EACA,MAAA,IACA,MAAA,IACA,OAAA,KACA,aAAA,KACA,iBAAA,QlIwlnBJ,oBQrxDA,oB0H/zjBA,IAAA,EACI,QAAA,IAAA,I1Hk0jBJ,MAAA,0B0Hh0jBI,UAAA,KACI,YAAA,M1Hk0jBR,YAAA,K0H/zjBI,iBAAA,kBACI,cAAA,IlIslnBR,qBQlxDA,uBRmxDA,mBkIjlnBI,MAAA,KACI,UAAA,KACA,YAAA,MACA,YAAA,K1Hg0jBR,QAAA,IAAA,I0H7zjBI,iBAAA,kBACI,cAAA,IAGJ,4BlImlnBJ,8BADA,0BkI/knBQ,SAAA,S1H8zjBR,QAAA,M0H3zjBI,QAAA,GACI,OAAA,KACA,MAAA,IACA,MAAA,EACA,OAAA,E1H6zjBR,aAAA,K0H1zjBI,SAAA,OACI,OAAA,IAAA,MAAA,YACA,iBAAA,kBlIilnBR,yBkI9knBQ,iBAAA,kBlIilnBR,0BkI9knBQ,MAAA,0BlIklnBR,2BkI7knBQ,cAAA,IAAA,EAAA,EAAA","file":"app-rtl.min.css","sourcesContent":["/*\r\nTemplate Name: Jidox - Responsive Bootstrap 5 Admin Dashboard\r\nVersion: 1.0.0\r\nAuthor: CoderThemes\r\nEmail: support@coderthemes.com\r\nFile: Main Css File\r\n*/\r\n\r\n// fonts\r\n\r\n@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@300;400;500;700&display=swap');\r\n//Core files\r\n\r\n@import \"../../../node_modules/bootstrap/scss/functions\";\r\n@import \"../../../node_modules/bootstrap/scss/variables\";\r\n\r\n@import \"config/variables\";\r\n@import \"config/variables-custom\";\r\n@import \"config/variables-dark\";\r\n@import \"config/theme-mode\"; // Lght/Dark Mode\r\n@import \"custom/components/utilities\";\r\n@import \"../../../node_modules/bootstrap/scss/bootstrap\";\r\n\r\n// Structure\r\n@import \"custom/structure/sidenav\";\r\n@import \"custom/structure/topbar\";\r\n@import \"custom/structure/right-sidebar\";\r\n@import \"custom/structure/page-head\";\r\n@import \"custom/structure/footer\";\r\n// Horizontal nav\r\n@import \"custom/structure/horizontal-nav\";\r\n\r\n\r\n// Components\r\n@import \"custom/components/root\";\r\n@import \"custom/components/accordions\";\r\n@import \"custom/components/alert\";\r\n@import \"custom/components/avatar\";\r\n@import \"custom/components/breadcrumb\";\r\n@import \"custom/components/buttons\";\r\n@import \"custom/components/badge\";\r\n@import \"custom/components/card\";\r\n@import \"custom/components/custom-forms\";\r\n@import \"custom/components/dropdown\";\r\n@import \"custom/components/forms\";\r\n@import \"custom/components/modal\";\r\n@import \"custom/components/nav\";\r\n@import \"custom/components/pagination\";\r\n@import \"custom/components/popover\";\r\n@import \"custom/components/print\";\r\n@import \"custom/components/progress\";\r\n@import \"custom/components/reboot\";\r\n@import \"custom/components/tables\";\r\n@import \"custom/components/tooltip\";\r\n@import \"custom/components/widgets\";\r\n@import \"custom/components/social\";\r\n@import \"custom/components/steps\";\r\n@import \"custom/components/preloader\";\r\n\r\n//Pages\r\n@import \"custom/pages/authentication\";\r\n@import \"custom/pages/components-demo\";\r\n@import \"custom/pages/error\";\r\n@import \"custom/pages/faq\";\r\n@import \"custom/pages/pricing\";\r\n@import \"custom/pages/maintenance\";\r\n@import \"custom/pages/tasks\";\r\n@import \"custom/pages/email\";\r\n@import \"custom/pages/timeline\";\r\n\r\n// Plugins\r\n@import \"custom/plugins/apexcharts\";\r\n@import \"custom/plugins/calendar\";\r\n@import \"custom/plugins/chartjs\";\r\n@import \"custom/plugins/datatable\";\r\n@import \"custom/plugins/daterange\";\r\n@import \"custom/plugins/flatpickr\";\r\n@import \"custom/plugins/dragula\";\r\n@import \"custom/plugins/dropzone\";\r\n@import \"custom/plugins/form-wizard\";\r\n@import \"custom/plugins/maps\";\r\n@import \"custom/plugins/quill-editor\";\r\n@import \"custom/plugins/select2\";\r\n@import \"custom/plugins/simplebar\";\r\n@import \"custom/plugins/toaster\";\r\n@import \"custom/plugins/bootstrap-touchspin\";\r\n@import \"custom/plugins/typehead\";\r\n@import \"custom/plugins/sparklines\";\r\n@import \"custom/plugins/rateit\";\r\n@import \"custom/plugins/ion-rangeslider\";","// \r\n// light-mode.scss\r\n// \r\n\r\n\r\n// ================================ //\r\n// ======== Custom Variable ======= //\r\n// ================================ //\r\n\r\n:root {\r\n --#{$prefix}logo-lg-height: 26px;\r\n --#{$prefix}logo-sm-height: 28px;\r\n\r\n --#{$prefix}leftbar-width: 240px;\r\n --#{$prefix}leftbar-width-md: 160px;\r\n --#{$prefix}leftbar-width-sm: 70px;\r\n --#{$prefix}leftbar-condensed-height: 1500px;\r\n\r\n --#{$prefix}topbar-height: 70px;\r\n\r\n --#{$prefix}menu-item-icon-size: 1.1rem;\r\n --#{$prefix}menu-item-icon-width: 30px;\r\n --#{$prefix}menu-item-font-size: 0.875rem;\r\n --#{$prefix}menu-item-padding-x: 12px;\r\n --#{$prefix}menu-item-padding-y: 8px;\r\n\r\n // Footer Height\r\n --#{$prefix}footer-height: 50px;\r\n\r\n // Card Border Width\r\n --#{$prefix}theme-card-border-width: 0px;\r\n}\r\n\r\n// ================================ //\r\n// ========== Main Menu =========== //\r\n// ================================ //\r\n\r\n// Background Light left-sidebar\r\nhtml[data-menu-color=\"light\"] {\r\n --#{$prefix}menu-bg: #ffffff;\r\n --#{$prefix}menu-item-color: #{$gray-700};\r\n --#{$prefix}menu-item-hover-color: #{$primary};\r\n --#{$prefix}menu-item-active-color: #{$primary};\r\n --#{$prefix}menu-condensed-link-bg: #313a46;\r\n --#{$prefix}help-box-bg: #{$primary};\r\n}\r\n\r\n// Dark Left Sidebar\r\nhtml[data-menu-color=\"dark\"] {\r\n --#{$prefix}menu-bg: #{$gray-900};\r\n --#{$prefix}menu-item-color: #8391a2;\r\n --#{$prefix}menu-item-hover-color: #bccee4;\r\n --#{$prefix}menu-item-active-color: #ffffff;\r\n --#{$prefix}menu-condensed-link-bg: #313a46;\r\n --#{$prefix}help-box-bg: #{rgba($white, 0.07)};\r\n}\r\n\r\n// Brand Menu\r\nhtml[data-menu-color=\"brand\"] {\r\n --#{$prefix}menu-bg: #{linear-gradient(135deg, #6379c3 0%, #4254ba 60%)};\r\n --#{$prefix}menu-item-color: #cedce4;\r\n --#{$prefix}menu-item-hover-color: #ffffff;\r\n --#{$prefix}menu-item-active-color: #ffffff;\r\n --#{$prefix}menu-condensed-link-bg: #313a46;\r\n --#{$prefix}help-box-bg: #{rgba($white, 0.07)};\r\n}\r\n\r\n// Dark Mode Left Sidebar\r\nhtml[data-bs-theme=\"dark\"][data-menu-color=\"light\"],\r\nhtml[data-bs-theme=\"dark\"][data-menu-color=\"dark\"] {\r\n --#{$prefix}menu-bg: #313a46;\r\n --#{$prefix}menu-item-color: #8391a2;\r\n --#{$prefix}menu-item-hover-color: #bccee4;\r\n --#{$prefix}menu-item-active-color: #ffffff;\r\n --#{$prefix}menu-condensed-link-bg: #313a46;\r\n --#{$prefix}help-box-bg: #{rgba($white, 0.07)};\r\n}\r\n\r\n\r\n// ================================ //\r\n// ========== Topbar ============== //\r\n// ================================ //\r\n\r\n// Light Topbar\r\nhtml[data-topbar-color=\"light\"] {\r\n --#{$prefix}topbar-bg: #ffffff;\r\n --#{$prefix}topbar-item-color: #{$gray-600};\r\n --#{$prefix}topbar-item-hover-color: #{$primary};\r\n --#{$prefix}topbar-search-bg: #{tint-color($gray-200,10%)};\r\n --#{$prefix}topbar-user-bg: #{lighten($gray-100, 1%)};\r\n --#{$prefix}topbar-user-border: #eef2f7;\r\n}\r\n\r\n\r\n// Dark Topbar\r\nhtml[data-topbar-color=\"dark\"] {\r\n --#{$prefix}topbar-bg: #313a46;\r\n --#{$prefix}topbar-item-color: #8391a2;\r\n --#{$prefix}topbar-item-hover-color: #bccee4;\r\n --#{$prefix}topbar-search-bg: #464f5b;\r\n --#{$prefix}topbar-user-bg: #3c4655;\r\n --#{$prefix}topbar-user-border: #414d5d;\r\n}\r\n\r\n// Brand Topbar\r\nhtml[data-topbar-color=\"brand\"] {\r\n --#{$prefix}topbar-bg: #{$primary};\r\n --#{$prefix}topbar-item-color: rgba(255, 255, 255, 0.7);\r\n --#{$prefix}topbar-item-hover-color: #ffffff;\r\n --#{$prefix}topbar-search-bg: rgba(255, 255, 255, 0.1);\r\n --#{$prefix}topbar-user-bg: rgba(255, 255, 255, 0.1);\r\n --#{$prefix}topbar-user-border: rgba(255, 255, 255, 0.15);\r\n}\r\n\r\n// Dark Mode Topbar\r\nhtml[data-bs-theme=\"dark\"][data-topbar-color=\"light\"],\r\nhtml[data-bs-theme=\"dark\"][data-topbar-color=\"dark\"] {\r\n --#{$prefix}topbar-bg: #2f3742;\r\n --#{$prefix}topbar-item-color: #8391a2;\r\n --#{$prefix}topbar-item-hover-color: #bccee4;\r\n --#{$prefix}topbar-search-bg: #363f4a;\r\n --#{$prefix}topbar-user-bg: #363f4a;\r\n --#{$prefix}topbar-user-border: #414d5d;\r\n}","@charset \"UTF-8\";\n/*\nTemplate Name: Jidox - Responsive Bootstrap 5 Admin Dashboard\nVersion: 1.0.0\nAuthor: CoderThemes\nEmail: support@coderthemes.com\nFile: Main Css File\n*/\n@import url(\"https://fonts.googleapis.com/css2?family=Roboto:wght@300;400;500;700&display=swap\");\n:root {\n --ct-logo-lg-height: 26px;\n --ct-logo-sm-height: 28px;\n --ct-leftbar-width: 240px;\n --ct-leftbar-width-md: 160px;\n --ct-leftbar-width-sm: 70px;\n --ct-leftbar-condensed-height: 1500px;\n --ct-topbar-height: 70px;\n --ct-menu-item-icon-size: 1.1rem;\n --ct-menu-item-icon-width: 30px;\n --ct-menu-item-font-size: 0.875rem;\n --ct-menu-item-padding-x: 12px;\n --ct-menu-item-padding-y: 8px;\n --ct-footer-height: 50px;\n --ct-theme-card-border-width: 0px;\n}\n\nhtml[data-menu-color=light] {\n --ct-menu-bg: #ffffff;\n --ct-menu-item-color: #49526b;\n --ct-menu-item-hover-color: #4254ba;\n --ct-menu-item-active-color: #4254ba;\n --ct-menu-condensed-link-bg: #313a46;\n --ct-help-box-bg: #4254ba;\n}\n\nhtml[data-menu-color=dark] {\n --ct-menu-bg: #212529;\n --ct-menu-item-color: #8391a2;\n --ct-menu-item-hover-color: #bccee4;\n --ct-menu-item-active-color: #ffffff;\n --ct-menu-condensed-link-bg: #313a46;\n --ct-help-box-bg: rgba(255, 255, 255, 0.07);\n}\n\nhtml[data-menu-color=brand] {\n --ct-menu-bg: linear-gradient(135deg, #6379c3 0%, #4254ba 60%);\n --ct-menu-item-color: #cedce4;\n --ct-menu-item-hover-color: #ffffff;\n --ct-menu-item-active-color: #ffffff;\n --ct-menu-condensed-link-bg: #313a46;\n --ct-help-box-bg: rgba(255, 255, 255, 0.07);\n}\n\nhtml[data-bs-theme=dark][data-menu-color=light],\nhtml[data-bs-theme=dark][data-menu-color=dark] {\n --ct-menu-bg: #313a46;\n --ct-menu-item-color: #8391a2;\n --ct-menu-item-hover-color: #bccee4;\n --ct-menu-item-active-color: #ffffff;\n --ct-menu-condensed-link-bg: #313a46;\n --ct-help-box-bg: rgba(255, 255, 255, 0.07);\n}\n\nhtml[data-topbar-color=light] {\n --ct-topbar-bg: #ffffff;\n --ct-topbar-item-color: #6c757d;\n --ct-topbar-item-hover-color: #4254ba;\n --ct-topbar-search-bg: #f3f3f8;\n --ct-topbar-user-bg: #fbfcfc;\n --ct-topbar-user-border: #eef2f7;\n}\n\nhtml[data-topbar-color=dark] {\n --ct-topbar-bg: #313a46;\n --ct-topbar-item-color: #8391a2;\n --ct-topbar-item-hover-color: #bccee4;\n --ct-topbar-search-bg: #464f5b;\n --ct-topbar-user-bg: #3c4655;\n --ct-topbar-user-border: #414d5d;\n}\n\nhtml[data-topbar-color=brand] {\n --ct-topbar-bg: #4254ba;\n --ct-topbar-item-color: rgba(255, 255, 255, 0.7);\n --ct-topbar-item-hover-color: #ffffff;\n --ct-topbar-search-bg: rgba(255, 255, 255, 0.1);\n --ct-topbar-user-bg: rgba(255, 255, 255, 0.1);\n --ct-topbar-user-border: rgba(255, 255, 255, 0.15);\n}\n\nhtml[data-bs-theme=dark][data-topbar-color=light],\nhtml[data-bs-theme=dark][data-topbar-color=dark] {\n --ct-topbar-bg: #2f3742;\n --ct-topbar-item-color: #8391a2;\n --ct-topbar-item-hover-color: #bccee4;\n --ct-topbar-search-bg: #363f4a;\n --ct-topbar-user-bg: #363f4a;\n --ct-topbar-user-border: #414d5d;\n}\n\n.border-dashed {\n border-style: dashed !important;\n}\n\n.bg-pink-subtle {\n background-color: var(--ct-pink-bg-subtle) !important;\n}\n\n.bg-purple-subtle {\n background-color: var(--ct-purple-bg-subtle) !important;\n}\n\n/*!\n * Bootstrap v5.3.0 (https://getbootstrap.com/)\n * Copyright 2011-2023 The Bootstrap Authors\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n */\n:root,\n[data-bs-theme=light] {\n --ct-blue: #4254ba;\n --ct-indigo: #4254ba;\n --ct-purple: #815ac5;\n --ct-pink: #ff679b;\n --ct-red: #f7473a;\n --ct-orange: #fd7e14;\n --ct-yellow: #fec20d;\n --ct-green: #51b355;\n --ct-teal: #17a497;\n --ct-cyan: #299bf6;\n --ct-black: #000;\n --ct-white: #fff;\n --ct-gray: #6c757d;\n --ct-gray-dark: #343a40;\n --ct-gray-100: #f8f9fa;\n --ct-gray-200: #f2f2f7;\n --ct-gray-300: #dee2e6;\n --ct-gray-400: #ced4da;\n --ct-gray-500: #adb5bd;\n --ct-gray-600: #6c757d;\n --ct-gray-700: #49526b;\n --ct-gray-800: #343a40;\n --ct-gray-900: #212529;\n --ct-primary: #4254ba;\n --ct-secondary: #6c757d;\n --ct-success: #17a497;\n --ct-info: #299bf6;\n --ct-warning: #fec20d;\n --ct-danger: #f7473a;\n --ct-light: #f2f2f7;\n --ct-dark: #49526b;\n --ct-purple: #815ac5;\n --ct-pink: #ff679b;\n --ct-primary-rgb: 66, 84, 186;\n --ct-secondary-rgb: 108, 117, 125;\n --ct-success-rgb: 23, 164, 151;\n --ct-info-rgb: 41, 155, 246;\n --ct-warning-rgb: 254, 194, 13;\n --ct-danger-rgb: 247, 71, 58;\n --ct-light-rgb: 242, 242, 247;\n --ct-dark-rgb: 73, 82, 107;\n --ct-purple-rgb: 129, 90, 197;\n --ct-pink-rgb: 255, 103, 155;\n --ct-primary-text-emphasis: #3b4ca7;\n --ct-secondary-text-emphasis: #616971;\n --ct-success-text-emphasis: #159488;\n --ct-info-text-emphasis: #258cdd;\n --ct-warning-text-emphasis: #e5af0c;\n --ct-danger-text-emphasis: #de4034;\n --ct-pink-text-emphasis: #e65d8c;\n --ct-purple-text-emphasis: #7451b1;\n --ct-light-text-emphasis: #ced4da;\n --ct-dark-text-emphasis: #49526b;\n --ct-primary-bg-subtle: #eceef8;\n --ct-secondary-bg-subtle: #f8f9fa;\n --ct-success-bg-subtle: #dcf0dd;\n --ct-info-bg-subtle: #d4ebfd;\n --ct-warning-bg-subtle: #fff3cf;\n --ct-danger-bg-subtle: #fddad8;\n --ct-pink-bg-subtle: #ffe1eb;\n --ct-purple-bg-subtle: #e6def3;\n --ct-light-bg-subtle: #fcfcfd;\n --ct-dark-bg-subtle: #ced4da;\n --ct-primary-border-subtle: #b3bbe3;\n --ct-secondary-border-subtle: #f2f2f7;\n --ct-success-border-subtle: #b9e1bb;\n --ct-info-border-subtle: #a9d7fb;\n --ct-warning-border-subtle: #ffe79e;\n --ct-danger-border-subtle: #fcb5b0;\n --ct-pink-border-subtle: #ffc2d7;\n --ct-purple-border-subtle: #cdbde8;\n --ct-light-border-subtle: #f2f2f7;\n --ct-dark-border-subtle: #adb5bd;\n --ct-white-rgb: 255, 255, 255;\n --ct-black-rgb: 0, 0, 0;\n --ct-font-sans-serif: \"Roboto\", sans-serif;\n --ct-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace;\n --ct-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));\n --ct-body-font-family: var(--ct-font-sans-serif);\n --ct-body-font-size: 0.875rem;\n --ct-body-font-weight: 400;\n --ct-body-line-height: 1.5;\n --ct-body-color: #6c757d;\n --ct-body-color-rgb: 108, 117, 125;\n --ct-body-bg: #eeeef1;\n --ct-body-bg-rgb: 238, 238, 241;\n --ct-emphasis-color: #000;\n --ct-emphasis-color-rgb: 0, 0, 0;\n --ct-secondary-color: rgba(108, 117, 125, 0.75);\n --ct-secondary-color-rgb: 108, 117, 125;\n --ct-secondary-bg: #fff;\n --ct-secondary-bg-rgb: 255, 255, 255;\n --ct-tertiary-color: #313539;\n --ct-tertiary-color-rgb: 49, 53, 57;\n --ct-tertiary-bg: #f8f9fa;\n --ct-tertiary-bg-rgb: 248, 249, 250;\n --ct-heading-color: inherit;\n --ct-link-color: #4254ba;\n --ct-link-color-rgb: 66, 84, 186;\n --ct-link-decoration: none;\n --ct-link-hover-color: #38479e;\n --ct-link-hover-color-rgb: 56, 71, 158;\n --ct-code-color: #299bf6;\n --ct-highlight-bg: #fff3cf;\n --ct-border-width: 1px;\n --ct-border-style: solid;\n --ct-border-color: #dee2e6;\n --ct-border-color-translucent: rgba(0, 0, 0, 0.175);\n --ct-border-radius: 0.15rem;\n --ct-border-radius-sm: 0.25rem;\n --ct-border-radius-lg: 0.5rem;\n --ct-border-radius-xl: 1rem;\n --ct-border-radius-xxl: 2rem;\n --ct-border-radius-2xl: var(--ct-border-radius-xxl);\n --ct-border-radius-pill: 50rem;\n --ct-box-shadow: 2px 2px 3px rgba(27, 23, 30, 0.1);\n --ct-box-shadow-sm: 0 0.125rem 0.25rem rgba(var(--ct-body-color-rgb), 0.15);\n --ct-box-shadow-lg: 0 2px 5px 0 rgba(27, 23, 30, 0.3);\n --ct-box-shadow-inset: inset 0 1px 2px rgba(var(--ct-body-color-rgb), 0.075);\n --ct-focus-ring-width: 0.25rem;\n --ct-focus-ring-opacity: 0.25;\n --ct-focus-ring-color: rgba(66, 84, 186, 0.25);\n --ct-form-valid-color: #17a497;\n --ct-form-valid-border-color: #17a497;\n --ct-form-invalid-color: #f7473a;\n --ct-form-invalid-border-color: #f7473a;\n}\n\n[data-bs-theme=dark] {\n color-scheme: dark;\n --ct-body-color: #aab8c5;\n --ct-body-color-rgb: 170, 184, 197;\n --ct-body-bg: #2d333c;\n --ct-body-bg-rgb: 45, 51, 60;\n --ct-emphasis-color: #f8f9fa;\n --ct-emphasis-color-rgb: 248, 249, 250;\n --ct-secondary-color: #8391a2;\n --ct-secondary-color-rgb: 131, 145, 162;\n --ct-secondary-bg: #313a46;\n --ct-secondary-bg-rgb: 49, 58, 70;\n --ct-tertiary-color: #f1f1f1;\n --ct-tertiary-color-rgb: 241, 241, 241;\n --ct-tertiary-bg: #404954;\n --ct-tertiary-bg-rgb: 64, 73, 84;\n --ct-primary-text-emphasis: #3b4ca7;\n --ct-secondary-text-emphasis: #6c757d;\n --ct-success-text-emphasis: #49a14d;\n --ct-info-text-emphasis: #258cdd;\n --ct-warning-text-emphasis: #e5af0c;\n --ct-danger-text-emphasis: #de4034;\n --ct-pink-text-emphasis: #e65d8c;\n --ct-purple-text-emphasis: #7451b1;\n --ct-light-text-emphasis: #6c757d;\n --ct-dark-text-emphasis: #6c757d;\n --ct-primary-bg-subtle: rgba(var(--ct-primary-rgb), 0.2);\n --ct-secondary-bg-subtle: rgba(var(--ct-secondary-rgb), 0.2);\n --ct-success-bg-subtle: rgba(var(--ct-success-rgb), 0.2);\n --ct-info-bg-subtle: rgba(var(--ct-info-rgb), 0.2);\n --ct-warning-bg-subtle: rgba(var(--ct-warning-rgb), 0.2);\n --ct-danger-bg-subtle: rgba(var(--ct-danger-rgb), 0.2);\n --ct-pink-bg-subtle: rgba(var(--ct-pink-rgb), 0.2);\n --ct-purple-bg-subtle: rgba(var(--ct-purple-rgb), 0.2);\n --ct-light-bg-subtle: rgba(var(--ct-light-rgb), 0.2);\n --ct-dark-bg-subtle: rgba(var(--ct-dark-rgb), 0.2);\n --ct-primary-border-subtle: #283270;\n --ct-secondary-border-subtle: #49526b;\n --ct-success-border-subtle: #316b33;\n --ct-info-border-subtle: #103e62;\n --ct-warning-border-subtle: #664e05;\n --ct-danger-border-subtle: #942b23;\n --ct-pink-border-subtle: #993e5d;\n --ct-purple-border-subtle: #4d3676;\n --ct-light-border-subtle: #49526b;\n --ct-dark-border-subtle: #343a40;\n --ct-heading-color: inherit;\n --ct-link-color: #4254ba;\n --ct-link-hover-color: #3b4ca7;\n --ct-link-color-rgb: 66, 84, 186;\n --ct-link-hover-color-rgb: 59, 76, 167;\n --ct-code-color: #299bf6;\n --ct-border-color: #464f5b;\n --ct-border-color-translucent: #464f5b;\n --ct-form-valid-color: #97d199;\n --ct-form-valid-border-color: #97d199;\n --ct-form-invalid-color: #fa9189;\n --ct-form-invalid-border-color: #fa9189;\n}\n\n*,\n*::before,\n*::after {\n -webkit-box-sizing: border-box;\n box-sizing: border-box;\n}\n\n@media (prefers-reduced-motion: no-preference) {\n :root {\n scroll-behavior: smooth;\n }\n}\n\nbody {\n margin: 0;\n font-family: var(--ct-body-font-family);\n font-size: var(--ct-body-font-size);\n font-weight: var(--ct-body-font-weight);\n line-height: var(--ct-body-line-height);\n color: var(--ct-body-color);\n text-align: var(--ct-body-text-align);\n background-color: var(--ct-body-bg);\n -webkit-text-size-adjust: 100%;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n}\n\nhr {\n margin: 0.9375rem 0;\n color: inherit;\n border: 0;\n border-top: var(--ct-border-width) solid var(--ct-border-color);\n opacity: 1;\n}\n\nh6, .h6, h5, .h5, h4, .h4, h3, .h3, h2, .h2, h1, .h1 {\n margin-top: 0;\n margin-bottom: 10px;\n font-weight: 500;\n line-height: 1.1;\n color: var(--ct-heading-color);\n}\n\nh1, .h1 {\n font-size: calc(1.34375rem + 1.125vw);\n}\n@media (min-width: 1200px) {\n h1, .h1 {\n font-size: 2.1875rem;\n }\n}\n\nh2, .h2 {\n font-size: calc(1.307rem + 0.684vw);\n}\n@media (min-width: 1200px) {\n h2, .h2 {\n font-size: 1.82rem;\n }\n}\n\nh3, .h3 {\n font-size: calc(1.271125rem + 0.2535vw);\n}\n@media (min-width: 1200px) {\n h3, .h3 {\n font-size: 1.46125rem;\n }\n}\n\nh4, .h4 {\n font-size: 1.09375rem;\n}\n\nh5, .h5 {\n font-size: 0.91rem;\n}\n\nh6, .h6 {\n font-size: 0.74375rem;\n}\n\np {\n margin-top: 0;\n margin-bottom: 1rem;\n}\n\nabbr[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}\n\naddress {\n margin-bottom: 1rem;\n font-style: normal;\n line-height: inherit;\n}\n\nol,\nul {\n padding-right: 2rem;\n}\n\nol,\nul,\ndl {\n margin-top: 0;\n margin-bottom: 1rem;\n}\n\nol ol,\nul ul,\nol ul,\nul ol {\n margin-bottom: 0;\n}\n\ndt {\n font-weight: 700;\n}\n\ndd {\n margin-bottom: 0.5rem;\n margin-right: 0;\n}\n\nblockquote {\n margin: 0 0 1rem;\n}\n\nb,\nstrong {\n font-weight: bolder;\n}\n\nsmall, .small {\n font-size: 0.75rem;\n}\n\nmark, .mark {\n padding: 0.1875em;\n background-color: var(--ct-highlight-bg);\n}\n\nsub,\nsup {\n position: relative;\n font-size: 0.75em;\n line-height: 0;\n vertical-align: baseline;\n}\n\nsub {\n bottom: -0.25em;\n}\n\nsup {\n top: -0.5em;\n}\n\na {\n color: rgba(var(--ct-link-color-rgb), var(--ct-link-opacity, 1));\n text-decoration: none;\n}\na:hover {\n --ct-link-color-rgb: var(--ct-link-hover-color-rgb);\n}\n\na:not([href]):not([class]), a:not([href]):not([class]):hover {\n color: inherit;\n text-decoration: none;\n}\n\npre,\ncode,\nkbd,\nsamp {\n font-family: var(--ct-font-monospace);\n font-size: 1em;\n}\n\npre {\n display: block;\n margin-top: 0;\n margin-bottom: 1rem;\n overflow: auto;\n font-size: 0.75rem;\n}\npre code {\n font-size: inherit;\n color: inherit;\n word-break: normal;\n}\n\ncode {\n font-size: 0.75rem;\n color: var(--ct-code-color);\n word-wrap: break-word;\n}\na > code {\n color: inherit;\n}\n\nkbd {\n padding: 0.2rem 0.4rem;\n font-size: 0.75rem;\n color: var(--ct-body-bg);\n background-color: var(--ct-body-color);\n border-radius: 0.25rem;\n}\nkbd kbd {\n padding: 0;\n font-size: 1em;\n}\n\nfigure {\n margin: 0 0 1rem;\n}\n\nimg,\nsvg {\n vertical-align: middle;\n}\n\ntable {\n caption-side: bottom;\n border-collapse: collapse;\n}\n\ncaption {\n padding-top: 0.75rem;\n padding-bottom: 0.75rem;\n color: var(--ct-secondary-color);\n text-align: right;\n}\n\nth {\n text-align: inherit;\n text-align: -webkit-match-parent;\n}\n\nthead,\ntbody,\ntfoot,\ntr,\ntd,\nth {\n border-color: inherit;\n border-style: solid;\n border-width: 0;\n}\n\nlabel {\n display: inline-block;\n}\n\nbutton {\n border-radius: 0;\n}\n\nbutton:focus:not(:focus-visible) {\n outline: 0;\n}\n\ninput,\nbutton,\nselect,\noptgroup,\ntextarea {\n margin: 0;\n font-family: inherit;\n font-size: inherit;\n line-height: inherit;\n}\n\nbutton,\nselect {\n text-transform: none;\n}\n\n[role=button] {\n cursor: pointer;\n}\n\nselect {\n word-wrap: normal;\n}\nselect:disabled {\n opacity: 1;\n}\n\n[list]:not([type=date]):not([type=datetime-local]):not([type=month]):not([type=week]):not([type=time])::-webkit-calendar-picker-indicator {\n display: none !important;\n}\n\nbutton,\n[type=button],\n[type=reset],\n[type=submit] {\n -webkit-appearance: button;\n}\nbutton:not(:disabled),\n[type=button]:not(:disabled),\n[type=reset]:not(:disabled),\n[type=submit]:not(:disabled) {\n cursor: pointer;\n}\n\n::-moz-focus-inner {\n padding: 0;\n border-style: none;\n}\n\ntextarea {\n resize: vertical;\n}\n\nfieldset {\n min-width: 0;\n padding: 0;\n margin: 0;\n border: 0;\n}\n\nlegend {\n float: right;\n width: 100%;\n padding: 0;\n margin-bottom: 0.5rem;\n font-size: calc(1.275rem + 0.3vw);\n line-height: inherit;\n}\n@media (min-width: 1200px) {\n legend {\n font-size: 1.5rem;\n }\n}\nlegend + * {\n clear: right;\n}\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\n::-webkit-inner-spin-button {\n height: auto;\n}\n\n[type=search] {\n outline-offset: -2px;\n -webkit-appearance: textfield;\n}\n\n[type=\"tel\"],\n[type=\"url\"],\n[type=\"email\"],\n[type=\"number\"] {\n direction: ltr;\n}\n::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n::-webkit-color-swatch-wrapper {\n padding: 0;\n}\n\n::-webkit-file-upload-button {\n font: inherit;\n -webkit-appearance: button;\n}\n\n::file-selector-button {\n font: inherit;\n -webkit-appearance: button;\n}\n\noutput {\n display: inline-block;\n}\n\niframe {\n border: 0;\n}\n\nsummary {\n display: list-item;\n cursor: pointer;\n}\n\nprogress {\n vertical-align: baseline;\n}\n\n[hidden] {\n display: none !important;\n}\n\n.lead {\n font-size: 1.09375rem;\n font-weight: 300;\n}\n\n.display-1 {\n font-size: calc(1.625rem + 4.5vw);\n font-weight: 300;\n line-height: 1.1;\n}\n@media (min-width: 1200px) {\n .display-1 {\n font-size: 5rem;\n }\n}\n\n.display-2 {\n font-size: calc(1.575rem + 3.9vw);\n font-weight: 300;\n line-height: 1.1;\n}\n@media (min-width: 1200px) {\n .display-2 {\n font-size: 4.5rem;\n }\n}\n\n.display-3 {\n font-size: calc(1.525rem + 3.3vw);\n font-weight: 300;\n line-height: 1.1;\n}\n@media (min-width: 1200px) {\n .display-3 {\n font-size: 4rem;\n }\n}\n\n.display-4 {\n font-size: calc(1.475rem + 2.7vw);\n font-weight: 300;\n line-height: 1.1;\n}\n@media (min-width: 1200px) {\n .display-4 {\n font-size: 3.5rem;\n }\n}\n\n.display-5 {\n font-size: calc(1.425rem + 2.1vw);\n font-weight: 300;\n line-height: 1.1;\n}\n@media (min-width: 1200px) {\n .display-5 {\n font-size: 3rem;\n }\n}\n\n.display-6 {\n font-size: calc(1.375rem + 1.5vw);\n font-weight: 300;\n line-height: 1.1;\n}\n@media (min-width: 1200px) {\n .display-6 {\n font-size: 2.5rem;\n }\n}\n\n.list-unstyled {\n padding-right: 0;\n list-style: none;\n}\n\n.list-inline {\n padding-right: 0;\n list-style: none;\n}\n\n.list-inline-item {\n display: inline-block;\n}\n.list-inline-item:not(:last-child) {\n margin-left: 0.5rem;\n}\n\n.initialism {\n font-size: 0.75rem;\n text-transform: uppercase;\n}\n\n.blockquote {\n margin-bottom: 1.25rem;\n font-size: 1.09375rem;\n}\n.blockquote > :last-child {\n margin-bottom: 0;\n}\n\n.blockquote-footer {\n margin-top: -1.25rem;\n margin-bottom: 1.25rem;\n font-size: 0.75rem;\n color: var(--ct-secondary-color);\n}\n.blockquote-footer::before {\n content: \"— \";\n}\n\n.img-fluid {\n max-width: 100%;\n height: auto;\n}\n\n.img-thumbnail {\n padding: 0.25rem;\n background-color: var(--ct-body-bg);\n border: var(--ct-border-width) solid var(--ct-border-color);\n border-radius: var(--ct-border-radius);\n max-width: 100%;\n height: auto;\n}\n\n.figure {\n display: inline-block;\n}\n\n.figure-img {\n margin-bottom: 0.625rem;\n line-height: 1;\n}\n\n.figure-caption {\n font-size: 0.75rem;\n color: var(--ct-secondary-color);\n}\n\n.container,\n.container-fluid,\n.container-xxl,\n.container-xl,\n.container-lg,\n.container-md,\n.container-sm {\n --ct-gutter-x: 0.6rem;\n --ct-gutter-y: 0;\n width: 100%;\n padding-left: calc(var(--ct-gutter-x) * 0.5);\n padding-right: calc(var(--ct-gutter-x) * 0.5);\n margin-left: auto;\n margin-right: auto;\n}\n\n@media (min-width: 576px) {\n .container-sm, .container {\n max-width: 540px;\n }\n}\n@media (min-width: 768px) {\n .container-md, .container-sm, .container {\n max-width: 720px;\n }\n}\n@media (min-width: 992px) {\n .container-lg, .container-md, .container-sm, .container {\n max-width: 960px;\n }\n}\n@media (min-width: 1200px) {\n .container-xl, .container-lg, .container-md, .container-sm, .container {\n max-width: 1140px;\n }\n}\n@media (min-width: 1400px) {\n .container-xxl, .container-xl, .container-lg, .container-md, .container-sm, .container {\n max-width: 1320px;\n }\n}\n:root {\n --ct-breakpoint-xs: 0;\n --ct-breakpoint-sm: 576px;\n --ct-breakpoint-md: 768px;\n --ct-breakpoint-lg: 992px;\n --ct-breakpoint-xl: 1200px;\n --ct-breakpoint-xxl: 1400px;\n}\n\n.row {\n --ct-gutter-x: 0.6rem;\n --ct-gutter-y: 0;\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -ms-flex-wrap: wrap;\n flex-wrap: wrap;\n margin-top: calc(-1 * var(--ct-gutter-y));\n margin-left: calc(-0.5 * var(--ct-gutter-x));\n margin-right: calc(-0.5 * var(--ct-gutter-x));\n}\n.row > * {\n -ms-flex-negative: 0;\n flex-shrink: 0;\n width: 100%;\n max-width: 100%;\n padding-left: calc(var(--ct-gutter-x) * 0.5);\n padding-right: calc(var(--ct-gutter-x) * 0.5);\n margin-top: var(--ct-gutter-y);\n}\n\n.col {\n -webkit-box-flex: 1;\n -ms-flex: 1 0 0%;\n flex: 1 0 0%;\n}\n\n.row-cols-auto > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: auto;\n}\n\n.row-cols-1 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 100%;\n}\n\n.row-cols-2 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 50%;\n}\n\n.row-cols-3 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 33.3333333333%;\n}\n\n.row-cols-4 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 25%;\n}\n\n.row-cols-5 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 20%;\n}\n\n.row-cols-6 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 16.6666666667%;\n}\n\n.col-auto {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: auto;\n}\n\n.col-1 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 8.33333333%;\n}\n\n.col-2 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 16.66666667%;\n}\n\n.col-3 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 25%;\n}\n\n.col-4 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 33.33333333%;\n}\n\n.col-5 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 41.66666667%;\n}\n\n.col-6 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 50%;\n}\n\n.col-7 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 58.33333333%;\n}\n\n.col-8 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 66.66666667%;\n}\n\n.col-9 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 75%;\n}\n\n.col-10 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 83.33333333%;\n}\n\n.col-11 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 91.66666667%;\n}\n\n.col-12 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 100%;\n}\n\n.offset-1 {\n margin-right: 8.33333333%;\n}\n\n.offset-2 {\n margin-right: 16.66666667%;\n}\n\n.offset-3 {\n margin-right: 25%;\n}\n\n.offset-4 {\n margin-right: 33.33333333%;\n}\n\n.offset-5 {\n margin-right: 41.66666667%;\n}\n\n.offset-6 {\n margin-right: 50%;\n}\n\n.offset-7 {\n margin-right: 58.33333333%;\n}\n\n.offset-8 {\n margin-right: 66.66666667%;\n}\n\n.offset-9 {\n margin-right: 75%;\n}\n\n.offset-10 {\n margin-right: 83.33333333%;\n}\n\n.offset-11 {\n margin-right: 91.66666667%;\n}\n\n.g-0,\n.gx-0 {\n --ct-gutter-x: 0;\n}\n\n.g-0,\n.gy-0 {\n --ct-gutter-y: 0;\n}\n\n.g-1,\n.gx-1 {\n --ct-gutter-x: 0.3125rem;\n}\n\n.g-1,\n.gy-1 {\n --ct-gutter-y: 0.3125rem;\n}\n\n.g-2,\n.gx-2 {\n --ct-gutter-x: 0.625rem;\n}\n\n.g-2,\n.gy-2 {\n --ct-gutter-y: 0.625rem;\n}\n\n.g-3,\n.gx-3 {\n --ct-gutter-x: 1.25rem;\n}\n\n.g-3,\n.gy-3 {\n --ct-gutter-y: 1.25rem;\n}\n\n.g-4,\n.gx-4 {\n --ct-gutter-x: 1.875rem;\n}\n\n.g-4,\n.gy-4 {\n --ct-gutter-y: 1.875rem;\n}\n\n.g-5,\n.gx-5 {\n --ct-gutter-x: 3.75rem;\n}\n\n.g-5,\n.gy-5 {\n --ct-gutter-y: 3.75rem;\n}\n\n@media (min-width: 576px) {\n .col-sm {\n -webkit-box-flex: 1;\n -ms-flex: 1 0 0%;\n flex: 1 0 0%;\n }\n .row-cols-sm-auto > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: auto;\n }\n .row-cols-sm-1 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 100%;\n }\n .row-cols-sm-2 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 50%;\n }\n .row-cols-sm-3 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 33.3333333333%;\n }\n .row-cols-sm-4 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 25%;\n }\n .row-cols-sm-5 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 20%;\n }\n .row-cols-sm-6 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 16.6666666667%;\n }\n .col-sm-auto {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: auto;\n }\n .col-sm-1 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 8.33333333%;\n }\n .col-sm-2 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 16.66666667%;\n }\n .col-sm-3 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 25%;\n }\n .col-sm-4 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 33.33333333%;\n }\n .col-sm-5 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 41.66666667%;\n }\n .col-sm-6 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 50%;\n }\n .col-sm-7 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 58.33333333%;\n }\n .col-sm-8 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 66.66666667%;\n }\n .col-sm-9 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 75%;\n }\n .col-sm-10 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 83.33333333%;\n }\n .col-sm-11 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 91.66666667%;\n }\n .col-sm-12 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 100%;\n }\n .offset-sm-0 {\n margin-right: 0;\n }\n .offset-sm-1 {\n margin-right: 8.33333333%;\n }\n .offset-sm-2 {\n margin-right: 16.66666667%;\n }\n .offset-sm-3 {\n margin-right: 25%;\n }\n .offset-sm-4 {\n margin-right: 33.33333333%;\n }\n .offset-sm-5 {\n margin-right: 41.66666667%;\n }\n .offset-sm-6 {\n margin-right: 50%;\n }\n .offset-sm-7 {\n margin-right: 58.33333333%;\n }\n .offset-sm-8 {\n margin-right: 66.66666667%;\n }\n .offset-sm-9 {\n margin-right: 75%;\n }\n .offset-sm-10 {\n margin-right: 83.33333333%;\n }\n .offset-sm-11 {\n margin-right: 91.66666667%;\n }\n .g-sm-0,\n.gx-sm-0 {\n --ct-gutter-x: 0;\n }\n .g-sm-0,\n.gy-sm-0 {\n --ct-gutter-y: 0;\n }\n .g-sm-1,\n.gx-sm-1 {\n --ct-gutter-x: 0.3125rem;\n }\n .g-sm-1,\n.gy-sm-1 {\n --ct-gutter-y: 0.3125rem;\n }\n .g-sm-2,\n.gx-sm-2 {\n --ct-gutter-x: 0.625rem;\n }\n .g-sm-2,\n.gy-sm-2 {\n --ct-gutter-y: 0.625rem;\n }\n .g-sm-3,\n.gx-sm-3 {\n --ct-gutter-x: 1.25rem;\n }\n .g-sm-3,\n.gy-sm-3 {\n --ct-gutter-y: 1.25rem;\n }\n .g-sm-4,\n.gx-sm-4 {\n --ct-gutter-x: 1.875rem;\n }\n .g-sm-4,\n.gy-sm-4 {\n --ct-gutter-y: 1.875rem;\n }\n .g-sm-5,\n.gx-sm-5 {\n --ct-gutter-x: 3.75rem;\n }\n .g-sm-5,\n.gy-sm-5 {\n --ct-gutter-y: 3.75rem;\n }\n}\n@media (min-width: 768px) {\n .col-md {\n -webkit-box-flex: 1;\n -ms-flex: 1 0 0%;\n flex: 1 0 0%;\n }\n .row-cols-md-auto > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: auto;\n }\n .row-cols-md-1 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 100%;\n }\n .row-cols-md-2 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 50%;\n }\n .row-cols-md-3 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 33.3333333333%;\n }\n .row-cols-md-4 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 25%;\n }\n .row-cols-md-5 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 20%;\n }\n .row-cols-md-6 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 16.6666666667%;\n }\n .col-md-auto {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: auto;\n }\n .col-md-1 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 8.33333333%;\n }\n .col-md-2 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 16.66666667%;\n }\n .col-md-3 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 25%;\n }\n .col-md-4 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 33.33333333%;\n }\n .col-md-5 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 41.66666667%;\n }\n .col-md-6 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 50%;\n }\n .col-md-7 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 58.33333333%;\n }\n .col-md-8 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 66.66666667%;\n }\n .col-md-9 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 75%;\n }\n .col-md-10 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 83.33333333%;\n }\n .col-md-11 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 91.66666667%;\n }\n .col-md-12 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 100%;\n }\n .offset-md-0 {\n margin-right: 0;\n }\n .offset-md-1 {\n margin-right: 8.33333333%;\n }\n .offset-md-2 {\n margin-right: 16.66666667%;\n }\n .offset-md-3 {\n margin-right: 25%;\n }\n .offset-md-4 {\n margin-right: 33.33333333%;\n }\n .offset-md-5 {\n margin-right: 41.66666667%;\n }\n .offset-md-6 {\n margin-right: 50%;\n }\n .offset-md-7 {\n margin-right: 58.33333333%;\n }\n .offset-md-8 {\n margin-right: 66.66666667%;\n }\n .offset-md-9 {\n margin-right: 75%;\n }\n .offset-md-10 {\n margin-right: 83.33333333%;\n }\n .offset-md-11 {\n margin-right: 91.66666667%;\n }\n .g-md-0,\n.gx-md-0 {\n --ct-gutter-x: 0;\n }\n .g-md-0,\n.gy-md-0 {\n --ct-gutter-y: 0;\n }\n .g-md-1,\n.gx-md-1 {\n --ct-gutter-x: 0.3125rem;\n }\n .g-md-1,\n.gy-md-1 {\n --ct-gutter-y: 0.3125rem;\n }\n .g-md-2,\n.gx-md-2 {\n --ct-gutter-x: 0.625rem;\n }\n .g-md-2,\n.gy-md-2 {\n --ct-gutter-y: 0.625rem;\n }\n .g-md-3,\n.gx-md-3 {\n --ct-gutter-x: 1.25rem;\n }\n .g-md-3,\n.gy-md-3 {\n --ct-gutter-y: 1.25rem;\n }\n .g-md-4,\n.gx-md-4 {\n --ct-gutter-x: 1.875rem;\n }\n .g-md-4,\n.gy-md-4 {\n --ct-gutter-y: 1.875rem;\n }\n .g-md-5,\n.gx-md-5 {\n --ct-gutter-x: 3.75rem;\n }\n .g-md-5,\n.gy-md-5 {\n --ct-gutter-y: 3.75rem;\n }\n}\n@media (min-width: 992px) {\n .col-lg {\n -webkit-box-flex: 1;\n -ms-flex: 1 0 0%;\n flex: 1 0 0%;\n }\n .row-cols-lg-auto > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: auto;\n }\n .row-cols-lg-1 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 100%;\n }\n .row-cols-lg-2 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 50%;\n }\n .row-cols-lg-3 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 33.3333333333%;\n }\n .row-cols-lg-4 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 25%;\n }\n .row-cols-lg-5 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 20%;\n }\n .row-cols-lg-6 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 16.6666666667%;\n }\n .col-lg-auto {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: auto;\n }\n .col-lg-1 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 8.33333333%;\n }\n .col-lg-2 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 16.66666667%;\n }\n .col-lg-3 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 25%;\n }\n .col-lg-4 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 33.33333333%;\n }\n .col-lg-5 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 41.66666667%;\n }\n .col-lg-6 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 50%;\n }\n .col-lg-7 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 58.33333333%;\n }\n .col-lg-8 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 66.66666667%;\n }\n .col-lg-9 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 75%;\n }\n .col-lg-10 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 83.33333333%;\n }\n .col-lg-11 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 91.66666667%;\n }\n .col-lg-12 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 100%;\n }\n .offset-lg-0 {\n margin-right: 0;\n }\n .offset-lg-1 {\n margin-right: 8.33333333%;\n }\n .offset-lg-2 {\n margin-right: 16.66666667%;\n }\n .offset-lg-3 {\n margin-right: 25%;\n }\n .offset-lg-4 {\n margin-right: 33.33333333%;\n }\n .offset-lg-5 {\n margin-right: 41.66666667%;\n }\n .offset-lg-6 {\n margin-right: 50%;\n }\n .offset-lg-7 {\n margin-right: 58.33333333%;\n }\n .offset-lg-8 {\n margin-right: 66.66666667%;\n }\n .offset-lg-9 {\n margin-right: 75%;\n }\n .offset-lg-10 {\n margin-right: 83.33333333%;\n }\n .offset-lg-11 {\n margin-right: 91.66666667%;\n }\n .g-lg-0,\n.gx-lg-0 {\n --ct-gutter-x: 0;\n }\n .g-lg-0,\n.gy-lg-0 {\n --ct-gutter-y: 0;\n }\n .g-lg-1,\n.gx-lg-1 {\n --ct-gutter-x: 0.3125rem;\n }\n .g-lg-1,\n.gy-lg-1 {\n --ct-gutter-y: 0.3125rem;\n }\n .g-lg-2,\n.gx-lg-2 {\n --ct-gutter-x: 0.625rem;\n }\n .g-lg-2,\n.gy-lg-2 {\n --ct-gutter-y: 0.625rem;\n }\n .g-lg-3,\n.gx-lg-3 {\n --ct-gutter-x: 1.25rem;\n }\n .g-lg-3,\n.gy-lg-3 {\n --ct-gutter-y: 1.25rem;\n }\n .g-lg-4,\n.gx-lg-4 {\n --ct-gutter-x: 1.875rem;\n }\n .g-lg-4,\n.gy-lg-4 {\n --ct-gutter-y: 1.875rem;\n }\n .g-lg-5,\n.gx-lg-5 {\n --ct-gutter-x: 3.75rem;\n }\n .g-lg-5,\n.gy-lg-5 {\n --ct-gutter-y: 3.75rem;\n }\n}\n@media (min-width: 1200px) {\n .col-xl {\n -webkit-box-flex: 1;\n -ms-flex: 1 0 0%;\n flex: 1 0 0%;\n }\n .row-cols-xl-auto > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: auto;\n }\n .row-cols-xl-1 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 100%;\n }\n .row-cols-xl-2 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 50%;\n }\n .row-cols-xl-3 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 33.3333333333%;\n }\n .row-cols-xl-4 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 25%;\n }\n .row-cols-xl-5 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 20%;\n }\n .row-cols-xl-6 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 16.6666666667%;\n }\n .col-xl-auto {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: auto;\n }\n .col-xl-1 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 8.33333333%;\n }\n .col-xl-2 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 16.66666667%;\n }\n .col-xl-3 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 25%;\n }\n .col-xl-4 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 33.33333333%;\n }\n .col-xl-5 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 41.66666667%;\n }\n .col-xl-6 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 50%;\n }\n .col-xl-7 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 58.33333333%;\n }\n .col-xl-8 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 66.66666667%;\n }\n .col-xl-9 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 75%;\n }\n .col-xl-10 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 83.33333333%;\n }\n .col-xl-11 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 91.66666667%;\n }\n .col-xl-12 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 100%;\n }\n .offset-xl-0 {\n margin-right: 0;\n }\n .offset-xl-1 {\n margin-right: 8.33333333%;\n }\n .offset-xl-2 {\n margin-right: 16.66666667%;\n }\n .offset-xl-3 {\n margin-right: 25%;\n }\n .offset-xl-4 {\n margin-right: 33.33333333%;\n }\n .offset-xl-5 {\n margin-right: 41.66666667%;\n }\n .offset-xl-6 {\n margin-right: 50%;\n }\n .offset-xl-7 {\n margin-right: 58.33333333%;\n }\n .offset-xl-8 {\n margin-right: 66.66666667%;\n }\n .offset-xl-9 {\n margin-right: 75%;\n }\n .offset-xl-10 {\n margin-right: 83.33333333%;\n }\n .offset-xl-11 {\n margin-right: 91.66666667%;\n }\n .g-xl-0,\n.gx-xl-0 {\n --ct-gutter-x: 0;\n }\n .g-xl-0,\n.gy-xl-0 {\n --ct-gutter-y: 0;\n }\n .g-xl-1,\n.gx-xl-1 {\n --ct-gutter-x: 0.3125rem;\n }\n .g-xl-1,\n.gy-xl-1 {\n --ct-gutter-y: 0.3125rem;\n }\n .g-xl-2,\n.gx-xl-2 {\n --ct-gutter-x: 0.625rem;\n }\n .g-xl-2,\n.gy-xl-2 {\n --ct-gutter-y: 0.625rem;\n }\n .g-xl-3,\n.gx-xl-3 {\n --ct-gutter-x: 1.25rem;\n }\n .g-xl-3,\n.gy-xl-3 {\n --ct-gutter-y: 1.25rem;\n }\n .g-xl-4,\n.gx-xl-4 {\n --ct-gutter-x: 1.875rem;\n }\n .g-xl-4,\n.gy-xl-4 {\n --ct-gutter-y: 1.875rem;\n }\n .g-xl-5,\n.gx-xl-5 {\n --ct-gutter-x: 3.75rem;\n }\n .g-xl-5,\n.gy-xl-5 {\n --ct-gutter-y: 3.75rem;\n }\n}\n@media (min-width: 1400px) {\n .col-xxl {\n -webkit-box-flex: 1;\n -ms-flex: 1 0 0%;\n flex: 1 0 0%;\n }\n .row-cols-xxl-auto > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: auto;\n }\n .row-cols-xxl-1 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 100%;\n }\n .row-cols-xxl-2 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 50%;\n }\n .row-cols-xxl-3 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 33.3333333333%;\n }\n .row-cols-xxl-4 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 25%;\n }\n .row-cols-xxl-5 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 20%;\n }\n .row-cols-xxl-6 > * {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 16.6666666667%;\n }\n .col-xxl-auto {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: auto;\n }\n .col-xxl-1 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 8.33333333%;\n }\n .col-xxl-2 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 16.66666667%;\n }\n .col-xxl-3 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 25%;\n }\n .col-xxl-4 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 33.33333333%;\n }\n .col-xxl-5 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 41.66666667%;\n }\n .col-xxl-6 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 50%;\n }\n .col-xxl-7 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 58.33333333%;\n }\n .col-xxl-8 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 66.66666667%;\n }\n .col-xxl-9 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 75%;\n }\n .col-xxl-10 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 83.33333333%;\n }\n .col-xxl-11 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 91.66666667%;\n }\n .col-xxl-12 {\n -webkit-box-flex: 0;\n -ms-flex: 0 0 auto;\n flex: 0 0 auto;\n width: 100%;\n }\n .offset-xxl-0 {\n margin-right: 0;\n }\n .offset-xxl-1 {\n margin-right: 8.33333333%;\n }\n .offset-xxl-2 {\n margin-right: 16.66666667%;\n }\n .offset-xxl-3 {\n margin-right: 25%;\n }\n .offset-xxl-4 {\n margin-right: 33.33333333%;\n }\n .offset-xxl-5 {\n margin-right: 41.66666667%;\n }\n .offset-xxl-6 {\n margin-right: 50%;\n }\n .offset-xxl-7 {\n margin-right: 58.33333333%;\n }\n .offset-xxl-8 {\n margin-right: 66.66666667%;\n }\n .offset-xxl-9 {\n margin-right: 75%;\n }\n .offset-xxl-10 {\n margin-right: 83.33333333%;\n }\n .offset-xxl-11 {\n margin-right: 91.66666667%;\n }\n .g-xxl-0,\n.gx-xxl-0 {\n --ct-gutter-x: 0;\n }\n .g-xxl-0,\n.gy-xxl-0 {\n --ct-gutter-y: 0;\n }\n .g-xxl-1,\n.gx-xxl-1 {\n --ct-gutter-x: 0.3125rem;\n }\n .g-xxl-1,\n.gy-xxl-1 {\n --ct-gutter-y: 0.3125rem;\n }\n .g-xxl-2,\n.gx-xxl-2 {\n --ct-gutter-x: 0.625rem;\n }\n .g-xxl-2,\n.gy-xxl-2 {\n --ct-gutter-y: 0.625rem;\n }\n .g-xxl-3,\n.gx-xxl-3 {\n --ct-gutter-x: 1.25rem;\n }\n .g-xxl-3,\n.gy-xxl-3 {\n --ct-gutter-y: 1.25rem;\n }\n .g-xxl-4,\n.gx-xxl-4 {\n --ct-gutter-x: 1.875rem;\n }\n .g-xxl-4,\n.gy-xxl-4 {\n --ct-gutter-y: 1.875rem;\n }\n .g-xxl-5,\n.gx-xxl-5 {\n --ct-gutter-x: 3.75rem;\n }\n .g-xxl-5,\n.gy-xxl-5 {\n --ct-gutter-y: 3.75rem;\n }\n}\n.table {\n --ct-table-color-type: initial;\n --ct-table-bg-type: initial;\n --ct-table-color-state: initial;\n --ct-table-bg-state: initial;\n --ct-table-color: var(--ct-body-color);\n --ct-table-bg: transparent;\n --ct-table-border-color: var(--ct-border-color);\n --ct-table-accent-bg: transparent;\n --ct-table-striped-color: var(--ct-body-color);\n --ct-table-striped-bg: rgba(var(--ct-tertiary-bg-rgb), 1);\n --ct-table-active-color: var(--ct-body-color);\n --ct-table-active-bg: rgba(var(--ct-tertiary-bg-rgb), 1);\n --ct-table-hover-color: var(--ct-body-color);\n --ct-table-hover-bg: rgba(var(--ct-tertiary-bg-rgb), 1);\n width: 100%;\n margin-bottom: 1.25rem;\n vertical-align: top;\n border-color: var(--ct-table-border-color);\n}\n.table > :not(caption) > * > * {\n padding: 0.75rem 0.75rem;\n color: var(--ct-table-color-state, var(--ct-table-color-type, var(--ct-table-color)));\n background-color: var(--ct-table-bg);\n border-bottom-width: var(--ct-border-width);\n -webkit-box-shadow: inset 0 0 0 9999px var(--ct-table-bg-state, var(--ct-table-bg-type, var(--ct-table-accent-bg)));\n box-shadow: inset 0 0 0 9999px var(--ct-table-bg-state, var(--ct-table-bg-type, var(--ct-table-accent-bg)));\n}\n.table > tbody {\n vertical-align: inherit;\n}\n.table > thead {\n vertical-align: bottom;\n}\n\n.table-group-divider {\n border-top: calc(var(--ct-border-width) * 2) solid currentcolor;\n}\n\n.caption-top {\n caption-side: top;\n}\n\n.table-sm > :not(caption) > * > * {\n padding: 0.5rem 0.5rem;\n}\n\n.table-bordered > :not(caption) > * {\n border-width: var(--ct-border-width) 0;\n}\n.table-bordered > :not(caption) > * > * {\n border-width: 0 var(--ct-border-width);\n}\n\n.table-borderless > :not(caption) > * > * {\n border-bottom-width: 0;\n}\n.table-borderless > :not(:first-child) {\n border-top-width: 0;\n}\n\n.table-striped > tbody > tr:nth-of-type(odd) > * {\n --ct-table-color-type: var(--ct-table-striped-color);\n --ct-table-bg-type: var(--ct-table-striped-bg);\n}\n\n.table-striped-columns > :not(caption) > tr > :nth-child(even) {\n --ct-table-color-type: var(--ct-table-striped-color);\n --ct-table-bg-type: var(--ct-table-striped-bg);\n}\n\n.table-active {\n --ct-table-color-state: var(--ct-table-active-color);\n --ct-table-bg-state: var(--ct-table-active-bg);\n}\n\n.table-hover > tbody > tr:hover > * {\n --ct-table-color-state: var(--ct-table-hover-color);\n --ct-table-bg-state: var(--ct-table-hover-bg);\n}\n\n.table-primary {\n --ct-table-color: #212529;\n --ct-table-bg: #d9ddf1;\n --ct-table-border-color: #c7cbdd;\n --ct-table-striped-bg: #212529;\n --ct-table-striped-color: #fff;\n --ct-table-active-bg: #212529;\n --ct-table-active-color: #fff;\n --ct-table-hover-bg: #212529;\n --ct-table-hover-color: #fff;\n color: var(--ct-table-color);\n border-color: var(--ct-table-border-color);\n}\n\n.table-secondary {\n --ct-table-color: #212529;\n --ct-table-bg: #e2e3e5;\n --ct-table-border-color: #cfd0d2;\n --ct-table-striped-bg: #212529;\n --ct-table-striped-color: #fff;\n --ct-table-active-bg: #212529;\n --ct-table-active-color: #fff;\n --ct-table-hover-bg: #212529;\n --ct-table-hover-color: #fff;\n color: var(--ct-table-color);\n border-color: var(--ct-table-border-color);\n}\n\n.table-success {\n --ct-table-color: #212529;\n --ct-table-bg: #d1edea;\n --ct-table-border-color: #bfd9d7;\n --ct-table-striped-bg: #212529;\n --ct-table-striped-color: #fff;\n --ct-table-active-bg: #212529;\n --ct-table-active-color: #fff;\n --ct-table-hover-bg: #212529;\n --ct-table-hover-color: #fff;\n color: var(--ct-table-color);\n border-color: var(--ct-table-border-color);\n}\n\n.table-info {\n --ct-table-color: #212529;\n --ct-table-bg: #d4ebfd;\n --ct-table-border-color: #c2d7e8;\n --ct-table-striped-bg: #212529;\n --ct-table-striped-color: #fff;\n --ct-table-active-bg: #212529;\n --ct-table-active-color: #fff;\n --ct-table-hover-bg: #212529;\n --ct-table-hover-color: #fff;\n color: var(--ct-table-color);\n border-color: var(--ct-table-border-color);\n}\n\n.table-warning {\n --ct-table-color: #212529;\n --ct-table-bg: #fff3cf;\n --ct-table-border-color: #e9debe;\n --ct-table-striped-bg: #212529;\n --ct-table-striped-color: #fff;\n --ct-table-active-bg: #212529;\n --ct-table-active-color: #fff;\n --ct-table-hover-bg: #212529;\n --ct-table-hover-color: #fff;\n color: var(--ct-table-color);\n border-color: var(--ct-table-border-color);\n}\n\n.table-danger {\n --ct-table-color: #212529;\n --ct-table-bg: #fddad8;\n --ct-table-border-color: #e7c8c7;\n --ct-table-striped-bg: #212529;\n --ct-table-striped-color: #fff;\n --ct-table-active-bg: #212529;\n --ct-table-active-color: #fff;\n --ct-table-hover-bg: #212529;\n --ct-table-hover-color: #fff;\n color: var(--ct-table-color);\n border-color: var(--ct-table-border-color);\n}\n\n.table-purple {\n --ct-table-color: #212529;\n --ct-table-bg: #e6def3;\n --ct-table-border-color: #d2ccdf;\n --ct-table-striped-bg: #212529;\n --ct-table-striped-color: #fff;\n --ct-table-active-bg: #212529;\n --ct-table-active-color: #fff;\n --ct-table-hover-bg: #212529;\n --ct-table-hover-color: #fff;\n color: var(--ct-table-color);\n border-color: var(--ct-table-border-color);\n}\n\n.table-pink {\n --ct-table-color: #212529;\n --ct-table-bg: #ffe1eb;\n --ct-table-border-color: #e9ced8;\n --ct-table-striped-bg: #212529;\n --ct-table-striped-color: #fff;\n --ct-table-active-bg: #212529;\n --ct-table-active-color: #fff;\n --ct-table-hover-bg: #212529;\n --ct-table-hover-color: #fff;\n color: var(--ct-table-color);\n border-color: var(--ct-table-border-color);\n}\n\n.table-light {\n --ct-table-color: #212529;\n --ct-table-bg: #f2f2f7;\n --ct-table-border-color: #dddee2;\n --ct-table-striped-bg: #212529;\n --ct-table-striped-color: #fff;\n --ct-table-active-bg: #212529;\n --ct-table-active-color: #fff;\n --ct-table-hover-bg: #212529;\n --ct-table-hover-color: #fff;\n color: var(--ct-table-color);\n border-color: var(--ct-table-border-color);\n}\n\n.table-dark {\n --ct-table-color: #fff;\n --ct-table-bg: #49526b;\n --ct-table-border-color: #5b637a;\n --ct-table-striped-bg: white;\n --ct-table-striped-color: #212529;\n --ct-table-active-bg: white;\n --ct-table-active-color: #212529;\n --ct-table-hover-bg: white;\n --ct-table-hover-color: #212529;\n color: var(--ct-table-color);\n border-color: var(--ct-table-border-color);\n}\n\n.table-responsive {\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n}\n\n@media (max-width: 575.98px) {\n .table-responsive-sm {\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n }\n}\n@media (max-width: 767.98px) {\n .table-responsive-md {\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n }\n}\n@media (max-width: 991.98px) {\n .table-responsive-lg {\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n }\n}\n@media (max-width: 1199.98px) {\n .table-responsive-xl {\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n }\n}\n@media (max-width: 1399.98px) {\n .table-responsive-xxl {\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n }\n}\n.form-label {\n margin-bottom: 0.5rem;\n}\n\n.col-form-label {\n padding-top: calc(0.45rem + var(--ct-border-width));\n padding-bottom: calc(0.45rem + var(--ct-border-width));\n margin-bottom: 0;\n font-size: inherit;\n line-height: 1.5;\n}\n\n.col-form-label-lg {\n padding-top: calc(0.5rem + var(--ct-border-width));\n padding-bottom: calc(0.5rem + var(--ct-border-width));\n font-size: 1.21625rem;\n}\n\n.col-form-label-sm {\n padding-top: calc(0.28rem + var(--ct-border-width));\n padding-bottom: calc(0.28rem + var(--ct-border-width));\n font-size: 0.85rem;\n}\n\n.form-text {\n margin-top: 0.25rem;\n font-size: 0.75rem;\n color: var(--ct-secondary-color);\n}\n\n.form-control {\n display: block;\n width: 100%;\n padding: 0.45rem 0.9rem;\n font-size: 0.875rem;\n font-weight: 400;\n line-height: 1.5;\n color: var(--ct-body-color);\n background-color: var(--ct-secondary-bg);\n background-clip: padding-box;\n border: var(--ct-border-width) solid var(--ct-border-color);\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n border-radius: 0.25rem;\n -webkit-transition: border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;\n transition: border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;\n transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;\n}\n@media (prefers-reduced-motion: reduce) {\n .form-control {\n -webkit-transition: none;\n transition: none;\n }\n}\n.form-control[type=file] {\n overflow: hidden;\n}\n.form-control[type=file]:not(:disabled):not([readonly]) {\n cursor: pointer;\n}\n.form-control:focus {\n color: var(--ct-body-color);\n background-color: var(--ct-secondary-bg);\n border-color: var(--ct-border-color-translucent);\n outline: 0;\n -webkit-box-shadow: none;\n box-shadow: none;\n}\n.form-control::-webkit-date-and-time-value {\n min-width: 85px;\n height: 1.5em;\n margin: 0;\n}\n.form-control::-webkit-datetime-edit {\n display: block;\n padding: 0;\n}\n.form-control::-webkit-input-placeholder {\n color: var(--ct-secondary-color);\n opacity: 1;\n}\n.form-control::-moz-placeholder {\n color: var(--ct-secondary-color);\n opacity: 1;\n}\n.form-control:-ms-input-placeholder {\n color: var(--ct-secondary-color);\n opacity: 1;\n}\n.form-control::-ms-input-placeholder {\n color: var(--ct-secondary-color);\n opacity: 1;\n}\n.form-control::placeholder {\n color: var(--ct-secondary-color);\n opacity: 1;\n}\n.form-control:disabled {\n background-color: var(--ct-tertiary-bg);\n opacity: 1;\n}\n.form-control::-webkit-file-upload-button {\n padding: 0.45rem 0.9rem;\n margin: -0.45rem -0.9rem;\n -webkit-margin-end: 0.9rem;\n margin-inline-end: 0.9rem;\n color: var(--ct-body-color);\n background-color: var(--ct-tertiary-bg);\n pointer-events: none;\n border-color: inherit;\n border-style: solid;\n border-width: 0;\n border-inline-end-width: var(--ct-border-width);\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, -webkit-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, -webkit-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 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, -webkit-box-shadow 0.15s ease-in-out;\n}\n.form-control::file-selector-button {\n padding: 0.45rem 0.9rem;\n margin: -0.45rem -0.9rem;\n -webkit-margin-end: 0.9rem;\n margin-inline-end: 0.9rem;\n color: var(--ct-body-color);\n background-color: var(--ct-tertiary-bg);\n pointer-events: none;\n border-color: inherit;\n border-style: solid;\n border-width: 0;\n border-inline-end-width: var(--ct-border-width);\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, -webkit-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, -webkit-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 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, -webkit-box-shadow 0.15s ease-in-out;\n}\n@media (prefers-reduced-motion: reduce) {\n .form-control::-webkit-file-upload-button {\n -webkit-transition: none;\n transition: none;\n }\n .form-control::file-selector-button {\n -webkit-transition: none;\n transition: none;\n }\n}\n.form-control:hover:not(:disabled):not([readonly])::-webkit-file-upload-button {\n background-color: var(--ct-secondary-bg);\n}\n.form-control:hover:not(:disabled):not([readonly])::file-selector-button {\n background-color: var(--ct-secondary-bg);\n}\n\n.form-control-plaintext {\n display: block;\n width: 100%;\n padding: 0.45rem 0;\n margin-bottom: 0;\n line-height: 1.5;\n color: var(--ct-body-color);\n background-color: transparent;\n border: solid transparent;\n border-width: var(--ct-border-width) 0;\n}\n.form-control-plaintext:focus {\n outline: 0;\n}\n.form-control-plaintext.form-control-sm, .form-control-plaintext.form-control-lg {\n padding-left: 0;\n padding-right: 0;\n}\n\n.form-control-sm {\n min-height: calc(1.5em + 0.56rem + calc(var(--ct-border-width) * 2));\n padding: 0.28rem 0.8rem;\n font-size: 0.85rem;\n border-radius: 0.25rem;\n}\n.form-control-sm::-webkit-file-upload-button {\n padding: 0.28rem 0.8rem;\n margin: -0.28rem -0.8rem;\n -webkit-margin-end: 0.8rem;\n margin-inline-end: 0.8rem;\n}\n.form-control-sm::file-selector-button {\n padding: 0.28rem 0.8rem;\n margin: -0.28rem -0.8rem;\n -webkit-margin-end: 0.8rem;\n margin-inline-end: 0.8rem;\n}\n\n.form-control-lg {\n min-height: calc(1.5em + 1rem + calc(var(--ct-border-width) * 2));\n padding: 0.5rem 1rem;\n font-size: 1.21625rem;\n border-radius: 0.15rem;\n}\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}\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}\n\ntextarea.form-control {\n min-height: calc(1.5em + 0.9rem + calc(var(--ct-border-width) * 2));\n}\ntextarea.form-control-sm {\n min-height: calc(1.5em + 0.56rem + calc(var(--ct-border-width) * 2));\n}\ntextarea.form-control-lg {\n min-height: calc(1.5em + 1rem + calc(var(--ct-border-width) * 2));\n}\n\n.form-control-color {\n width: 3rem;\n height: calc(1.5em + 0.9rem + calc(var(--ct-border-width) * 2));\n padding: 0.45rem;\n}\n.form-control-color:not(:disabled):not([readonly]) {\n cursor: pointer;\n}\n.form-control-color::-moz-color-swatch {\n border: 0 !important;\n border-radius: 0.25rem;\n}\n.form-control-color::-webkit-color-swatch {\n border: 0 !important;\n border-radius: 0.25rem;\n}\n.form-control-color.form-control-sm {\n height: calc(1.5em + 0.56rem + calc(var(--ct-border-width) * 2));\n}\n.form-control-color.form-control-lg {\n height: calc(1.5em + 1rem + calc(var(--ct-border-width) * 2));\n}\n\n.form-select {\n --ct-form-select-bg-img: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e\");\n display: block;\n width: 100%;\n padding: 0.45rem 0.9rem 0.45rem 2.7rem;\n font-size: 0.875rem;\n font-weight: 400;\n line-height: 1.5;\n color: var(--ct-body-color);\n background-color: var(--ct-secondary-bg);\n background-image: var(--ct-form-select-bg-img), var(--ct-form-select-bg-icon, none);\n background-repeat: no-repeat;\n background-position: left 0.9rem center;\n background-size: 14px 10px;\n border: var(--ct-border-width) solid var(--ct-border-color);\n border-radius: 0.25rem;\n -webkit-transition: border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;\n transition: border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;\n transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n}\n@media (prefers-reduced-motion: reduce) {\n .form-select {\n -webkit-transition: none;\n transition: none;\n }\n}\n.form-select:focus {\n border-color: var(--ct-border-color-translucent);\n outline: 0;\n -webkit-box-shadow: none;\n box-shadow: none;\n}\n.form-select[multiple], .form-select[size]:not([size=\"1\"]) {\n padding-left: 0.9rem;\n background-image: none;\n}\n.form-select:disabled {\n background-color: var(--ct-tertiary-bg);\n}\n.form-select:-moz-focusring {\n color: transparent;\n text-shadow: 0 0 0 var(--ct-body-color);\n}\n\n.form-select-sm {\n padding-top: 0.28rem;\n padding-bottom: 0.28rem;\n padding-right: 0.8rem;\n font-size: 0.85rem;\n border-radius: 0.25rem;\n}\n\n.form-select-lg {\n padding-top: 0.5rem;\n padding-bottom: 0.5rem;\n padding-right: 1rem;\n font-size: 1.21625rem;\n border-radius: 0.15rem;\n}\n\n[data-bs-theme=dark] .form-select {\n --ct-form-select-bg-img: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23aab8c5' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e\");\n}\n\n.form-check {\n display: block;\n min-height: 1.3125rem;\n padding-right: 1.635em;\n margin-bottom: 0;\n}\n.form-check .form-check-input {\n float: right;\n margin-right: -1.635em;\n}\n\n.form-check-reverse {\n padding-left: 1.635em;\n padding-right: 0;\n text-align: left;\n}\n.form-check-reverse .form-check-input {\n float: left;\n margin-left: -1.635em;\n margin-right: 0;\n}\n\n.form-check-input {\n --ct-form-check-bg: var(--ct-secondary-bg);\n width: 1.135em;\n height: 1.135em;\n margin-top: 0.1825em;\n vertical-align: top;\n background-color: var(--ct-form-check-bg);\n background-image: var(--ct-form-check-bg-image);\n background-repeat: no-repeat;\n background-position: center;\n background-size: contain;\n border: var(--ct-border-width) solid var(--ct-border-color-translucent);\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n -webkit-print-color-adjust: exact;\n print-color-adjust: exact;\n}\n.form-check-input[type=checkbox] {\n border-radius: 0.25em;\n}\n.form-check-input[type=radio] {\n border-radius: 50%;\n}\n.form-check-input:active {\n -webkit-filter: brightness(90%);\n filter: brightness(90%);\n}\n.form-check-input:focus {\n border-color: var(--ct-border-color-translucent);\n outline: 0;\n -webkit-box-shadow: none;\n box-shadow: none;\n}\n.form-check-input:checked {\n background-color: #4254ba;\n border-color: #4254ba;\n}\n.form-check-input:checked[type=checkbox] {\n --ct-form-check-bg-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='m6 10 3 3 6-6'/%3e%3c/svg%3e\");\n}\n.form-check-input:checked[type=radio] {\n --ct-form-check-bg-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='2' fill='%23fff'/%3e%3c/svg%3e\");\n}\n.form-check-input[type=checkbox]:indeterminate {\n background-color: #4254ba;\n border-color: #4254ba;\n --ct-form-check-bg-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10h8'/%3e%3c/svg%3e\");\n}\n.form-check-input:disabled {\n pointer-events: none;\n -webkit-filter: none;\n filter: none;\n opacity: 0.5;\n}\n.form-check-input[disabled] ~ .form-check-label, .form-check-input:disabled ~ .form-check-label {\n cursor: default;\n opacity: 0.5;\n}\n\n.form-switch {\n padding-right: 2.5em;\n}\n.form-switch .form-check-input {\n --ct-form-switch-bg: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba%280, 0, 0, 0.25%29'/%3e%3c/svg%3e\");\n width: 2em;\n margin-right: -2.5em;\n background-image: var(--ct-form-switch-bg);\n background-position: right center;\n border-radius: 2em;\n -webkit-transition: background-position 0.15s ease-in-out;\n transition: background-position 0.15s ease-in-out;\n}\n@media (prefers-reduced-motion: reduce) {\n .form-switch .form-check-input {\n -webkit-transition: none;\n transition: none;\n }\n}\n.form-switch .form-check-input:focus {\n --ct-form-switch-bg: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='var%28--ct-border-color-translucent%29'/%3e%3c/svg%3e\");\n}\n.form-switch .form-check-input:checked {\n background-position: left center;\n --ct-form-switch-bg: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e\");\n}\n.form-switch.form-check-reverse {\n padding-left: 2.5em;\n padding-right: 0;\n}\n.form-switch.form-check-reverse .form-check-input {\n margin-left: -2.5em;\n margin-right: 0;\n}\n\n.form-check-inline {\n display: inline-block;\n margin-left: 1rem;\n}\n\n.btn-check {\n position: absolute;\n clip: rect(0, 0, 0, 0);\n pointer-events: none;\n}\n.btn-check[disabled] + .btn, .btn-check:disabled + .btn {\n pointer-events: none;\n -webkit-filter: none;\n filter: none;\n opacity: 0.65;\n}\n\n[data-bs-theme=dark] .form-switch .form-check-input:not(:checked):not(:focus) {\n --ct-form-switch-bg: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba%28255, 255, 255, 0.25%29'/%3e%3c/svg%3e\");\n}\n\n.form-range {\n width: 100%;\n height: 1.3rem;\n padding: 0;\n background-color: transparent;\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n}\n.form-range:focus {\n outline: 0;\n}\n.form-range:focus::-webkit-slider-thumb {\n -webkit-box-shadow: 0 0 0 1px #eeeef1, none;\n box-shadow: 0 0 0 1px #eeeef1, none;\n}\n.form-range:focus::-moz-range-thumb {\n box-shadow: 0 0 0 1px #eeeef1, none;\n}\n.form-range::-moz-focus-outer {\n border: 0;\n}\n.form-range::-webkit-slider-thumb {\n width: 1rem;\n height: 1rem;\n margin-top: -0.25rem;\n background-color: #4254ba;\n border: 0;\n border-radius: 1rem;\n -webkit-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;\n transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-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 transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out;\n -webkit-appearance: none;\n appearance: none;\n}\n@media (prefers-reduced-motion: reduce) {\n .form-range::-webkit-slider-thumb {\n -webkit-transition: none;\n transition: none;\n }\n}\n.form-range::-webkit-slider-thumb:active {\n background-color: #c6ccea;\n}\n.form-range::-webkit-slider-runnable-track {\n width: 100%;\n height: 0.5rem;\n color: transparent;\n cursor: pointer;\n background-color: var(--ct-body-bg);\n border-color: transparent;\n border-radius: 1rem;\n}\n.form-range::-moz-range-thumb {\n width: 1rem;\n height: 1rem;\n background-color: #4254ba;\n border: 0;\n border-radius: 1rem;\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 -moz-appearance: none;\n appearance: none;\n}\n@media (prefers-reduced-motion: reduce) {\n .form-range::-moz-range-thumb {\n -moz-transition: none;\n transition: none;\n }\n}\n.form-range::-moz-range-thumb:active {\n background-color: #c6ccea;\n}\n.form-range::-moz-range-track {\n width: 100%;\n height: 0.5rem;\n color: transparent;\n cursor: pointer;\n background-color: var(--ct-body-bg);\n border-color: transparent;\n border-radius: 1rem;\n}\n.form-range:disabled {\n pointer-events: none;\n}\n.form-range:disabled::-webkit-slider-thumb {\n background-color: var(--ct-secondary-color);\n}\n.form-range:disabled::-moz-range-thumb {\n background-color: var(--ct-secondary-color);\n}\n\n.form-floating {\n position: relative;\n}\n.form-floating > .form-control,\n.form-floating > .form-control-plaintext,\n.form-floating > .form-select {\n height: calc(3.5rem + calc(var(--ct-border-width) * 2));\n min-height: calc(3.5rem + calc(var(--ct-border-width) * 2));\n line-height: 1.25;\n}\n.form-floating > label {\n position: absolute;\n top: 0;\n right: 0;\n z-index: 2;\n height: 100%;\n padding: 1rem 0.9rem;\n overflow: hidden;\n text-align: start;\n text-overflow: ellipsis;\n white-space: nowrap;\n pointer-events: none;\n border: var(--ct-border-width) solid transparent;\n -webkit-transform-origin: 100% 0;\n transform-origin: 100% 0;\n -webkit-transition: opacity 0.1s ease-in-out, -webkit-transform 0.1s ease-in-out;\n transition: opacity 0.1s ease-in-out, -webkit-transform 0.1s ease-in-out;\n transition: opacity 0.1s ease-in-out, transform 0.1s ease-in-out;\n transition: opacity 0.1s ease-in-out, transform 0.1s ease-in-out, -webkit-transform 0.1s ease-in-out;\n}\n@media (prefers-reduced-motion: reduce) {\n .form-floating > label {\n -webkit-transition: none;\n transition: none;\n }\n}\n.form-floating > .form-control,\n.form-floating > .form-control-plaintext {\n padding: 1rem 0.9rem;\n}\n.form-floating > .form-control::-webkit-input-placeholder, .form-floating > .form-control-plaintext::-webkit-input-placeholder {\n color: transparent;\n}\n.form-floating > .form-control::-moz-placeholder, .form-floating > .form-control-plaintext::-moz-placeholder {\n color: transparent;\n}\n.form-floating > .form-control:-ms-input-placeholder, .form-floating > .form-control-plaintext:-ms-input-placeholder {\n color: transparent;\n}\n.form-floating > .form-control::-ms-input-placeholder, .form-floating > .form-control-plaintext::-ms-input-placeholder {\n color: transparent;\n}\n.form-floating > .form-control::placeholder,\n.form-floating > .form-control-plaintext::placeholder {\n color: transparent;\n}\n.form-floating > .form-control:not(:-moz-placeholder-shown), .form-floating > .form-control-plaintext:not(:-moz-placeholder-shown) {\n padding-top: 1.625rem;\n padding-bottom: 0.625rem;\n}\n.form-floating > .form-control:not(:-ms-input-placeholder), .form-floating > .form-control-plaintext:not(:-ms-input-placeholder) {\n padding-top: 1.625rem;\n padding-bottom: 0.625rem;\n}\n.form-floating > .form-control:focus, .form-floating > .form-control:not(:placeholder-shown),\n.form-floating > .form-control-plaintext:focus,\n.form-floating > .form-control-plaintext:not(:placeholder-shown) {\n padding-top: 1.625rem;\n padding-bottom: 0.625rem;\n}\n.form-floating > .form-control:-webkit-autofill,\n.form-floating > .form-control-plaintext:-webkit-autofill {\n padding-top: 1.625rem;\n padding-bottom: 0.625rem;\n}\n.form-floating > .form-select {\n padding-top: 1.625rem;\n padding-bottom: 0.625rem;\n}\n.form-floating > .form-control:not(:-moz-placeholder-shown) ~ label {\n color: rgba(var(--ct-body-color-rgb), 0.65);\n transform: scale(0.85) translateY(-0.5rem) translateX(-0.15rem);\n}\n.form-floating > .form-control:not(:-ms-input-placeholder) ~ label {\n color: rgba(var(--ct-body-color-rgb), 0.65);\n transform: scale(0.85) translateY(-0.5rem) translateX(-0.15rem);\n}\n.form-floating > .form-control:focus ~ label,\n.form-floating > .form-control:not(:placeholder-shown) ~ label,\n.form-floating > .form-control-plaintext ~ label,\n.form-floating > .form-select ~ label {\n color: rgba(var(--ct-body-color-rgb), 0.65);\n -webkit-transform: scale(0.85) translateY(-0.5rem) translateX(-0.15rem);\n transform: scale(0.85) translateY(-0.5rem) translateX(-0.15rem);\n}\n.form-floating > .form-control:not(:-moz-placeholder-shown) ~ label::after {\n position: absolute;\n inset: 1rem 0.45rem;\n z-index: -1;\n height: 1.875em;\n content: \"\";\n background-color: var(--ct-secondary-bg);\n border-radius: 0.25rem;\n}\n.form-floating > .form-control:not(:-ms-input-placeholder) ~ label::after {\n position: absolute;\n inset: 1rem 0.45rem;\n z-index: -1;\n height: 1.875em;\n content: \"\";\n background-color: var(--ct-secondary-bg);\n border-radius: 0.25rem;\n}\n.form-floating > .form-control:focus ~ label::after,\n.form-floating > .form-control:not(:placeholder-shown) ~ label::after,\n.form-floating > .form-control-plaintext ~ label::after,\n.form-floating > .form-select ~ label::after {\n position: absolute;\n inset: 1rem 0.45rem;\n z-index: -1;\n height: 1.875em;\n content: \"\";\n background-color: var(--ct-secondary-bg);\n border-radius: 0.25rem;\n}\n.form-floating > .form-control:-webkit-autofill ~ label {\n color: rgba(var(--ct-body-color-rgb), 0.65);\n -webkit-transform: scale(0.85) translateY(-0.5rem) translateX(-0.15rem);\n transform: scale(0.85) translateY(-0.5rem) translateX(-0.15rem);\n}\n.form-floating > .form-control-plaintext ~ label {\n border-width: var(--ct-border-width) 0;\n}\n.form-floating > :disabled ~ label {\n color: #6c757d;\n}\n.form-floating > :disabled ~ label::after {\n background-color: var(--ct-tertiary-bg);\n}\n\n.input-group {\n position: relative;\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -ms-flex-wrap: wrap;\n flex-wrap: wrap;\n -webkit-box-align: stretch;\n -ms-flex-align: stretch;\n align-items: stretch;\n width: 100%;\n}\n.input-group > .form-control,\n.input-group > .form-select,\n.input-group > .form-floating {\n position: relative;\n -webkit-box-flex: 1;\n -ms-flex: 1 1 auto;\n flex: 1 1 auto;\n width: 1%;\n min-width: 0;\n}\n.input-group > .form-control:focus,\n.input-group > .form-select:focus,\n.input-group > .form-floating:focus-within {\n z-index: 5;\n}\n.input-group .btn {\n position: relative;\n z-index: 2;\n}\n.input-group .btn:focus {\n z-index: 5;\n}\n\n.input-group-text {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n padding: 0.45rem 0.9rem;\n font-size: 0.875rem;\n font-weight: 400;\n line-height: 1.5;\n color: var(--ct-body-color);\n text-align: center;\n white-space: nowrap;\n background-color: var(--ct-tertiary-bg);\n border: var(--ct-border-width) solid var(--ct-border-color);\n border-radius: 0.25rem;\n}\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.21625rem;\n border-radius: 0.15rem;\n}\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.28rem 0.8rem;\n font-size: 0.85rem;\n border-radius: 0.25rem;\n}\n\n.input-group-lg > .form-select,\n.input-group-sm > .form-select {\n padding-left: 3.6rem;\n}\n\n.input-group:not(.has-validation) > :not(:last-child):not(.dropdown-toggle):not(.dropdown-menu):not(.form-floating),\n.input-group:not(.has-validation) > .dropdown-toggle:nth-last-child(n+3),\n.input-group:not(.has-validation) > .form-floating:not(:last-child) > .form-control,\n.input-group:not(.has-validation) > .form-floating:not(:last-child) > .form-select {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n}\n.input-group.has-validation > :nth-last-child(n+3):not(.dropdown-toggle):not(.dropdown-menu):not(.form-floating),\n.input-group.has-validation > .dropdown-toggle:nth-last-child(n+4),\n.input-group.has-validation > .form-floating:nth-last-child(n+3) > .form-control,\n.input-group.has-validation > .form-floating:nth-last-child(n+3) > .form-select {\n border-top-left-radius: 0;\n border-bottom-left-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-right: calc(var(--ct-border-width) * -1);\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n}\n.input-group > .form-floating:not(:first-child) > .form-control,\n.input-group > .form-floating:not(:first-child) > .form-select {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n}\n\n.valid-feedback {\n display: none;\n width: 100%;\n margin-top: 0.25rem;\n font-size: 0.75rem;\n color: var(--ct-form-valid-color);\n}\n\n.valid-tooltip {\n position: absolute;\n top: 100%;\n z-index: 5;\n display: none;\n max-width: 100%;\n padding: 0.3125rem 0.625rem;\n margin-top: 0.1rem;\n font-size: 0.7225rem;\n color: #fff;\n background-color: var(--ct-success);\n border-radius: var(--ct-border-radius);\n}\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\n.was-validated .form-control:valid, .form-control.is-valid {\n border-color: var(--ct-form-valid-border-color);\n padding-left: calc(1.5em + 0.9rem);\n background-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%2317a497' d='M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e\");\n background-repeat: no-repeat;\n background-position: left calc(0.375em + 0.225rem) center;\n background-size: calc(0.75em + 0.45rem) calc(0.75em + 0.45rem);\n}\n.was-validated .form-control:valid:focus, .form-control.is-valid:focus {\n border-color: var(--ct-form-valid-border-color);\n -webkit-box-shadow: 0 0 0 0.15rem rgba(var(--ct-success-rgb), 0.25);\n box-shadow: 0 0 0 0.15rem rgba(var(--ct-success-rgb), 0.25);\n}\n\n.was-validated textarea.form-control:valid, textarea.form-control.is-valid {\n padding-left: calc(1.5em + 0.9rem);\n background-position: top calc(0.375em + 0.225rem) left calc(0.375em + 0.225rem);\n}\n\n.was-validated .form-select:valid, .form-select.is-valid {\n border-color: var(--ct-form-valid-border-color);\n}\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 --ct-form-select-bg-icon: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%2317a497' d='M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e\");\n padding-left: 4.95rem;\n background-position: left 0.9rem center, center left 2.7rem;\n background-size: 14px 10px, calc(0.75em + 0.45rem) calc(0.75em + 0.45rem);\n}\n.was-validated .form-select:valid:focus, .form-select.is-valid:focus {\n border-color: var(--ct-form-valid-border-color);\n -webkit-box-shadow: 0 0 0 0.15rem rgba(var(--ct-success-rgb), 0.25);\n box-shadow: 0 0 0 0.15rem rgba(var(--ct-success-rgb), 0.25);\n}\n\n.was-validated .form-control-color:valid, .form-control-color.is-valid {\n width: calc(3rem + calc(1.5em + 0.9rem));\n}\n\n.was-validated .form-check-input:valid, .form-check-input.is-valid {\n border-color: var(--ct-form-valid-border-color);\n}\n.was-validated .form-check-input:valid:checked, .form-check-input.is-valid:checked {\n background-color: var(--ct-form-valid-color);\n}\n.was-validated .form-check-input:valid:focus, .form-check-input.is-valid:focus {\n -webkit-box-shadow: 0 0 0 0.15rem rgba(var(--ct-success-rgb), 0.25);\n box-shadow: 0 0 0 0.15rem rgba(var(--ct-success-rgb), 0.25);\n}\n.was-validated .form-check-input:valid ~ .form-check-label, .form-check-input.is-valid ~ .form-check-label {\n color: var(--ct-form-valid-color);\n}\n\n.form-check-inline .form-check-input ~ .valid-feedback {\n margin-right: 0.5em;\n}\n\n.was-validated .input-group > .form-control:not(:focus):valid, .input-group > .form-control:not(:focus).is-valid,\n.was-validated .input-group > .form-select:not(:focus):valid,\n.input-group > .form-select:not(:focus).is-valid,\n.was-validated .input-group > .form-floating:not(:focus-within):valid,\n.input-group > .form-floating:not(:focus-within).is-valid {\n z-index: 3;\n}\n\n.invalid-feedback {\n display: none;\n width: 100%;\n margin-top: 0.25rem;\n font-size: 0.75rem;\n color: var(--ct-form-invalid-color);\n}\n\n.invalid-tooltip {\n position: absolute;\n top: 100%;\n z-index: 5;\n display: none;\n max-width: 100%;\n padding: 0.3125rem 0.625rem;\n margin-top: 0.1rem;\n font-size: 0.7225rem;\n color: #fff;\n background-color: var(--ct-danger);\n border-radius: var(--ct-border-radius);\n}\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\n.was-validated .form-control:invalid, .form-control.is-invalid {\n border-color: var(--ct-form-invalid-border-color);\n padding-left: calc(1.5em + 0.9rem);\n background-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23f7473a'%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='%23f7473a' stroke='none'/%3e%3c/svg%3e\");\n background-repeat: no-repeat;\n background-position: left calc(0.375em + 0.225rem) center;\n background-size: calc(0.75em + 0.45rem) calc(0.75em + 0.45rem);\n}\n.was-validated .form-control:invalid:focus, .form-control.is-invalid:focus {\n border-color: var(--ct-form-invalid-border-color);\n -webkit-box-shadow: 0 0 0 0.15rem rgba(var(--ct-danger-rgb), 0.25);\n box-shadow: 0 0 0 0.15rem rgba(var(--ct-danger-rgb), 0.25);\n}\n\n.was-validated textarea.form-control:invalid, textarea.form-control.is-invalid {\n padding-left: calc(1.5em + 0.9rem);\n background-position: top calc(0.375em + 0.225rem) left calc(0.375em + 0.225rem);\n}\n\n.was-validated .form-select:invalid, .form-select.is-invalid {\n border-color: var(--ct-form-invalid-border-color);\n}\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 --ct-form-select-bg-icon: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23f7473a'%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='%23f7473a' stroke='none'/%3e%3c/svg%3e\");\n padding-left: 4.95rem;\n background-position: left 0.9rem center, center left 2.7rem;\n background-size: 14px 10px, calc(0.75em + 0.45rem) calc(0.75em + 0.45rem);\n}\n.was-validated .form-select:invalid:focus, .form-select.is-invalid:focus {\n border-color: var(--ct-form-invalid-border-color);\n -webkit-box-shadow: 0 0 0 0.15rem rgba(var(--ct-danger-rgb), 0.25);\n box-shadow: 0 0 0 0.15rem rgba(var(--ct-danger-rgb), 0.25);\n}\n\n.was-validated .form-control-color:invalid, .form-control-color.is-invalid {\n width: calc(3rem + calc(1.5em + 0.9rem));\n}\n\n.was-validated .form-check-input:invalid, .form-check-input.is-invalid {\n border-color: var(--ct-form-invalid-border-color);\n}\n.was-validated .form-check-input:invalid:checked, .form-check-input.is-invalid:checked {\n background-color: var(--ct-form-invalid-color);\n}\n.was-validated .form-check-input:invalid:focus, .form-check-input.is-invalid:focus {\n -webkit-box-shadow: 0 0 0 0.15rem rgba(var(--ct-danger-rgb), 0.25);\n box-shadow: 0 0 0 0.15rem rgba(var(--ct-danger-rgb), 0.25);\n}\n.was-validated .form-check-input:invalid ~ .form-check-label, .form-check-input.is-invalid ~ .form-check-label {\n color: var(--ct-form-invalid-color);\n}\n\n.form-check-inline .form-check-input ~ .invalid-feedback {\n margin-right: 0.5em;\n}\n\n.was-validated .input-group > .form-control:not(:focus):invalid, .input-group > .form-control:not(:focus).is-invalid,\n.was-validated .input-group > .form-select:not(:focus):invalid,\n.input-group > .form-select:not(:focus).is-invalid,\n.was-validated .input-group > .form-floating:not(:focus-within):invalid,\n.input-group > .form-floating:not(:focus-within).is-invalid {\n z-index: 4;\n}\n\n.btn {\n --ct-btn-padding-x: 0.9rem;\n --ct-btn-padding-y: 0.45rem;\n --ct-btn-font-family: ;\n --ct-btn-font-size: 0.875rem;\n --ct-btn-font-weight: 400;\n --ct-btn-line-height: 1.5;\n --ct-btn-color: var(--ct-body-color);\n --ct-btn-bg: transparent;\n --ct-btn-border-width: var(--ct-border-width);\n --ct-btn-border-color: transparent;\n --ct-btn-border-radius: var(--ct-border-radius);\n --ct-btn-hover-border-color: transparent;\n --ct-btn-box-shadow: 2px 2px 3px rgba(27, 23, 30, 0.1);\n --ct-btn-disabled-opacity: 0.65;\n --ct-btn-focus-box-shadow: 0 0 0 0.15rem rgba(var(--ct-btn-focus-shadow-rgb), .5);\n display: inline-block;\n padding: var(--ct-btn-padding-y) var(--ct-btn-padding-x);\n font-family: var(--ct-btn-font-family);\n font-size: var(--ct-btn-font-size);\n font-weight: var(--ct-btn-font-weight);\n line-height: var(--ct-btn-line-height);\n color: var(--ct-btn-color);\n text-align: center;\n vertical-align: middle;\n cursor: pointer;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n border: var(--ct-btn-border-width) solid var(--ct-btn-border-color);\n border-radius: var(--ct-btn-border-radius);\n background-color: var(--ct-btn-bg);\n -webkit-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-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, -webkit-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 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, -webkit-box-shadow 0.15s ease-in-out;\n}\n@media (prefers-reduced-motion: reduce) {\n .btn {\n -webkit-transition: none;\n transition: none;\n }\n}\n.btn:hover {\n color: var(--ct-btn-hover-color);\n background-color: var(--ct-btn-hover-bg);\n border-color: var(--ct-btn-hover-border-color);\n}\n.btn-check + .btn:hover {\n color: var(--ct-btn-color);\n background-color: var(--ct-btn-bg);\n border-color: var(--ct-btn-border-color);\n}\n.btn:focus-visible {\n color: var(--ct-btn-hover-color);\n background-color: var(--ct-btn-hover-bg);\n border-color: var(--ct-btn-hover-border-color);\n outline: 0;\n -webkit-box-shadow: var(--ct-btn-focus-box-shadow);\n box-shadow: var(--ct-btn-focus-box-shadow);\n}\n.btn-check:focus-visible + .btn {\n border-color: var(--ct-btn-hover-border-color);\n outline: 0;\n -webkit-box-shadow: var(--ct-btn-focus-box-shadow);\n box-shadow: var(--ct-btn-focus-box-shadow);\n}\n.btn-check:checked + .btn, :not(.btn-check) + .btn:active, .btn:first-child:active, .btn.active, .btn.show {\n color: var(--ct-btn-active-color);\n background-color: var(--ct-btn-active-bg);\n border-color: var(--ct-btn-active-border-color);\n}\n.btn-check:checked + .btn:focus-visible, :not(.btn-check) + .btn:active:focus-visible, .btn:first-child:active:focus-visible, .btn.active:focus-visible, .btn.show:focus-visible {\n -webkit-box-shadow: var(--ct-btn-focus-box-shadow);\n box-shadow: var(--ct-btn-focus-box-shadow);\n}\n.btn:disabled, .btn.disabled, fieldset:disabled .btn {\n color: var(--ct-btn-disabled-color);\n pointer-events: none;\n background-color: var(--ct-btn-disabled-bg);\n border-color: var(--ct-btn-disabled-border-color);\n opacity: var(--ct-btn-disabled-opacity);\n}\n\n.btn-primary {\n --ct-btn-color: #fff;\n --ct-btn-bg: #4254ba;\n --ct-btn-border-color: #4254ba;\n --ct-btn-hover-color: #fff;\n --ct-btn-hover-bg: #3d4eac;\n --ct-btn-hover-border-color: #3d4eac;\n --ct-btn-focus-shadow-rgb: 94, 110, 196;\n --ct-btn-active-color: #fff;\n --ct-btn-active-bg: #3d4eac;\n --ct-btn-active-border-color: #3d4eac;\n --ct-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --ct-btn-disabled-color: #fff;\n --ct-btn-disabled-bg: #4254ba;\n --ct-btn-disabled-border-color: #4254ba;\n}\n\n.btn-secondary {\n --ct-btn-color: #fff;\n --ct-btn-bg: #6c757d;\n --ct-btn-border-color: #6c757d;\n --ct-btn-hover-color: #fff;\n --ct-btn-hover-bg: #646c74;\n --ct-btn-hover-border-color: #646c74;\n --ct-btn-focus-shadow-rgb: 130, 138, 145;\n --ct-btn-active-color: #fff;\n --ct-btn-active-bg: #646c74;\n --ct-btn-active-border-color: #646c74;\n --ct-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --ct-btn-disabled-color: #fff;\n --ct-btn-disabled-bg: #6c757d;\n --ct-btn-disabled-border-color: #6c757d;\n}\n\n.btn-success {\n --ct-btn-color: #fff;\n --ct-btn-bg: #17a497;\n --ct-btn-border-color: #17a497;\n --ct-btn-hover-color: #fff;\n --ct-btn-hover-bg: #15988c;\n --ct-btn-hover-border-color: #15988c;\n --ct-btn-focus-shadow-rgb: 58, 178, 167;\n --ct-btn-active-color: #fff;\n --ct-btn-active-bg: #15988c;\n --ct-btn-active-border-color: #15988c;\n --ct-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --ct-btn-disabled-color: #fff;\n --ct-btn-disabled-bg: #17a497;\n --ct-btn-disabled-border-color: #17a497;\n}\n\n.btn-info {\n --ct-btn-color: #fff;\n --ct-btn-bg: #299bf6;\n --ct-btn-border-color: #299bf6;\n --ct-btn-hover-color: #fff;\n --ct-btn-hover-bg: #268fe4;\n --ct-btn-hover-border-color: #268fe4;\n --ct-btn-focus-shadow-rgb: 73, 170, 247;\n --ct-btn-active-color: #fff;\n --ct-btn-active-bg: #268fe4;\n --ct-btn-active-border-color: #268fe4;\n --ct-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --ct-btn-disabled-color: #fff;\n --ct-btn-disabled-bg: #299bf6;\n --ct-btn-disabled-border-color: #299bf6;\n}\n\n.btn-warning {\n --ct-btn-color: #fff;\n --ct-btn-bg: #fec20d;\n --ct-btn-border-color: #fec20d;\n --ct-btn-hover-color: #fff;\n --ct-btn-hover-bg: #ebb30c;\n --ct-btn-hover-border-color: #ebb30c;\n --ct-btn-focus-shadow-rgb: 254, 203, 49;\n --ct-btn-active-color: #fff;\n --ct-btn-active-bg: #ebb30c;\n --ct-btn-active-border-color: #ebb30c;\n --ct-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --ct-btn-disabled-color: #fff;\n --ct-btn-disabled-bg: #fec20d;\n --ct-btn-disabled-border-color: #fec20d;\n}\n\n.btn-danger {\n --ct-btn-color: #fff;\n --ct-btn-bg: #f7473a;\n --ct-btn-border-color: #f7473a;\n --ct-btn-hover-color: #fff;\n --ct-btn-hover-bg: #e44236;\n --ct-btn-hover-border-color: #e44236;\n --ct-btn-focus-shadow-rgb: 248, 99, 88;\n --ct-btn-active-color: #fff;\n --ct-btn-active-bg: #e44236;\n --ct-btn-active-border-color: #e44236;\n --ct-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --ct-btn-disabled-color: #fff;\n --ct-btn-disabled-bg: #f7473a;\n --ct-btn-disabled-border-color: #f7473a;\n}\n\n.btn-light {\n --ct-btn-color: #212529;\n --ct-btn-bg: #f2f2f7;\n --ct-btn-border-color: #f2f2f7;\n --ct-btn-hover-color: #212529;\n --ct-btn-hover-bg: #e0e0e4;\n --ct-btn-hover-border-color: #e0e0e4;\n --ct-btn-focus-shadow-rgb: 211, 211, 216;\n --ct-btn-active-color: #212529;\n --ct-btn-active-bg: #e0e0e4;\n --ct-btn-active-border-color: #e0e0e4;\n --ct-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --ct-btn-disabled-color: #212529;\n --ct-btn-disabled-bg: #f2f2f7;\n --ct-btn-disabled-border-color: #f2f2f7;\n}\n\n.btn-dark {\n --ct-btn-color: #fff;\n --ct-btn-bg: #49526b;\n --ct-btn-border-color: #49526b;\n --ct-btn-hover-color: #fff;\n --ct-btn-hover-bg: #646c81;\n --ct-btn-hover-border-color: #5b637a;\n --ct-btn-focus-shadow-rgb: 100, 108, 129;\n --ct-btn-active-color: #fff;\n --ct-btn-active-bg: #646c81;\n --ct-btn-active-border-color: #5b637a;\n --ct-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --ct-btn-disabled-color: #fff;\n --ct-btn-disabled-bg: #49526b;\n --ct-btn-disabled-border-color: #49526b;\n}\n\n.btn-purple {\n --ct-btn-color: #fff;\n --ct-btn-bg: #815ac5;\n --ct-btn-border-color: #815ac5;\n --ct-btn-hover-color: #fff;\n --ct-btn-hover-bg: #7753b6;\n --ct-btn-hover-border-color: #7753b6;\n --ct-btn-focus-shadow-rgb: 148, 115, 206;\n --ct-btn-active-color: #fff;\n --ct-btn-active-bg: #7753b6;\n --ct-btn-active-border-color: #7753b6;\n --ct-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --ct-btn-disabled-color: #fff;\n --ct-btn-disabled-bg: #815ac5;\n --ct-btn-disabled-border-color: #815ac5;\n}\n\n.btn-pink {\n --ct-btn-color: #fff;\n --ct-btn-bg: #ff679b;\n --ct-btn-border-color: #ff679b;\n --ct-btn-hover-color: #fff;\n --ct-btn-hover-bg: #ec5f8f;\n --ct-btn-hover-border-color: #ec5f8f;\n --ct-btn-focus-shadow-rgb: 255, 126, 170;\n --ct-btn-active-color: #fff;\n --ct-btn-active-bg: #ec5f8f;\n --ct-btn-active-border-color: #ec5f8f;\n --ct-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --ct-btn-disabled-color: #fff;\n --ct-btn-disabled-bg: #ff679b;\n --ct-btn-disabled-border-color: #ff679b;\n}\n\n.btn-outline-primary {\n --ct-btn-color: #4254ba;\n --ct-btn-border-color: #4254ba;\n --ct-btn-hover-color: #fff;\n --ct-btn-hover-bg: #4254ba;\n --ct-btn-hover-border-color: #4254ba;\n --ct-btn-focus-shadow-rgb: 66, 84, 186;\n --ct-btn-active-color: #fff;\n --ct-btn-active-bg: #4254ba;\n --ct-btn-active-border-color: #4254ba;\n --ct-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --ct-btn-disabled-color: #4254ba;\n --ct-btn-disabled-bg: transparent;\n --ct-btn-disabled-border-color: #4254ba;\n --ct-gradient: none;\n}\n\n.btn-outline-secondary {\n --ct-btn-color: #6c757d;\n --ct-btn-border-color: #6c757d;\n --ct-btn-hover-color: #fff;\n --ct-btn-hover-bg: #6c757d;\n --ct-btn-hover-border-color: #6c757d;\n --ct-btn-focus-shadow-rgb: 108, 117, 125;\n --ct-btn-active-color: #fff;\n --ct-btn-active-bg: #6c757d;\n --ct-btn-active-border-color: #6c757d;\n --ct-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --ct-btn-disabled-color: #6c757d;\n --ct-btn-disabled-bg: transparent;\n --ct-btn-disabled-border-color: #6c757d;\n --ct-gradient: none;\n}\n\n.btn-outline-success {\n --ct-btn-color: #17a497;\n --ct-btn-border-color: #17a497;\n --ct-btn-hover-color: #fff;\n --ct-btn-hover-bg: #17a497;\n --ct-btn-hover-border-color: #17a497;\n --ct-btn-focus-shadow-rgb: 23, 164, 151;\n --ct-btn-active-color: #fff;\n --ct-btn-active-bg: #17a497;\n --ct-btn-active-border-color: #17a497;\n --ct-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --ct-btn-disabled-color: #17a497;\n --ct-btn-disabled-bg: transparent;\n --ct-btn-disabled-border-color: #17a497;\n --ct-gradient: none;\n}\n\n.btn-outline-info {\n --ct-btn-color: #299bf6;\n --ct-btn-border-color: #299bf6;\n --ct-btn-hover-color: #fff;\n --ct-btn-hover-bg: #299bf6;\n --ct-btn-hover-border-color: #299bf6;\n --ct-btn-focus-shadow-rgb: 41, 155, 246;\n --ct-btn-active-color: #fff;\n --ct-btn-active-bg: #299bf6;\n --ct-btn-active-border-color: #299bf6;\n --ct-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --ct-btn-disabled-color: #299bf6;\n --ct-btn-disabled-bg: transparent;\n --ct-btn-disabled-border-color: #299bf6;\n --ct-gradient: none;\n}\n\n.btn-outline-warning {\n --ct-btn-color: #fec20d;\n --ct-btn-border-color: #fec20d;\n --ct-btn-hover-color: #fff;\n --ct-btn-hover-bg: #fec20d;\n --ct-btn-hover-border-color: #fec20d;\n --ct-btn-focus-shadow-rgb: 254, 194, 13;\n --ct-btn-active-color: #fff;\n --ct-btn-active-bg: #fec20d;\n --ct-btn-active-border-color: #fec20d;\n --ct-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --ct-btn-disabled-color: #fec20d;\n --ct-btn-disabled-bg: transparent;\n --ct-btn-disabled-border-color: #fec20d;\n --ct-gradient: none;\n}\n\n.btn-outline-danger {\n --ct-btn-color: #f7473a;\n --ct-btn-border-color: #f7473a;\n --ct-btn-hover-color: #fff;\n --ct-btn-hover-bg: #f7473a;\n --ct-btn-hover-border-color: #f7473a;\n --ct-btn-focus-shadow-rgb: 247, 71, 58;\n --ct-btn-active-color: #fff;\n --ct-btn-active-bg: #f7473a;\n --ct-btn-active-border-color: #f7473a;\n --ct-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --ct-btn-disabled-color: #f7473a;\n --ct-btn-disabled-bg: transparent;\n --ct-btn-disabled-border-color: #f7473a;\n --ct-gradient: none;\n}\n\n.btn-outline-light {\n --ct-btn-color: #f2f2f7;\n --ct-btn-border-color: #f2f2f7;\n --ct-btn-hover-color: #212529;\n --ct-btn-hover-bg: #f2f2f7;\n --ct-btn-hover-border-color: #f2f2f7;\n --ct-btn-focus-shadow-rgb: 242, 242, 247;\n --ct-btn-active-color: #212529;\n --ct-btn-active-bg: #f2f2f7;\n --ct-btn-active-border-color: #f2f2f7;\n --ct-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --ct-btn-disabled-color: #f2f2f7;\n --ct-btn-disabled-bg: transparent;\n --ct-btn-disabled-border-color: #f2f2f7;\n --ct-gradient: none;\n}\n\n.btn-outline-dark {\n --ct-btn-color: #49526b;\n --ct-btn-border-color: #49526b;\n --ct-btn-hover-color: #fff;\n --ct-btn-hover-bg: #49526b;\n --ct-btn-hover-border-color: #49526b;\n --ct-btn-focus-shadow-rgb: 73, 82, 107;\n --ct-btn-active-color: #fff;\n --ct-btn-active-bg: #49526b;\n --ct-btn-active-border-color: #49526b;\n --ct-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --ct-btn-disabled-color: #49526b;\n --ct-btn-disabled-bg: transparent;\n --ct-btn-disabled-border-color: #49526b;\n --ct-gradient: none;\n}\n\n.btn-outline-purple {\n --ct-btn-color: #815ac5;\n --ct-btn-border-color: #815ac5;\n --ct-btn-hover-color: #fff;\n --ct-btn-hover-bg: #815ac5;\n --ct-btn-hover-border-color: #815ac5;\n --ct-btn-focus-shadow-rgb: 129, 90, 197;\n --ct-btn-active-color: #fff;\n --ct-btn-active-bg: #815ac5;\n --ct-btn-active-border-color: #815ac5;\n --ct-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --ct-btn-disabled-color: #815ac5;\n --ct-btn-disabled-bg: transparent;\n --ct-btn-disabled-border-color: #815ac5;\n --ct-gradient: none;\n}\n\n.btn-outline-pink {\n --ct-btn-color: #ff679b;\n --ct-btn-border-color: #ff679b;\n --ct-btn-hover-color: #fff;\n --ct-btn-hover-bg: #ff679b;\n --ct-btn-hover-border-color: #ff679b;\n --ct-btn-focus-shadow-rgb: 255, 103, 155;\n --ct-btn-active-color: #fff;\n --ct-btn-active-bg: #ff679b;\n --ct-btn-active-border-color: #ff679b;\n --ct-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\n --ct-btn-disabled-color: #ff679b;\n --ct-btn-disabled-bg: transparent;\n --ct-btn-disabled-border-color: #ff679b;\n --ct-gradient: none;\n}\n\n.btn-link {\n --ct-btn-font-weight: 400;\n --ct-btn-color: var(--ct-link-color);\n --ct-btn-bg: transparent;\n --ct-btn-border-color: transparent;\n --ct-btn-hover-color: var(--ct-link-hover-color);\n --ct-btn-hover-border-color: transparent;\n --ct-btn-active-color: var(--ct-link-hover-color);\n --ct-btn-active-border-color: transparent;\n --ct-btn-disabled-color: #6c757d;\n --ct-btn-disabled-border-color: transparent;\n --ct-btn-box-shadow: 0 0 0 #000;\n --ct-btn-focus-shadow-rgb: 94, 110, 196;\n text-decoration: none;\n}\n.btn-link:focus-visible {\n color: var(--ct-btn-color);\n}\n.btn-link:hover {\n color: var(--ct-btn-hover-color);\n}\n\n.btn-lg, .btn-group-lg > .btn {\n --ct-btn-padding-y: 0.5rem;\n --ct-btn-padding-x: 1rem;\n --ct-btn-font-size: 1.21625rem;\n --ct-btn-border-radius: var(--ct-border-radius);\n}\n\n.btn-sm, .btn-group-sm > .btn {\n --ct-btn-padding-y: 0.28rem;\n --ct-btn-padding-x: 0.8rem;\n --ct-btn-font-size: 0.85rem;\n --ct-btn-border-radius: var(--ct-border-radius-sm);\n}\n\n.fade {\n -webkit-transition: opacity 0.15s linear;\n transition: opacity 0.15s linear;\n}\n@media (prefers-reduced-motion: reduce) {\n .fade {\n -webkit-transition: none;\n transition: none;\n }\n}\n.fade:not(.show) {\n opacity: 0;\n}\n\n.collapse:not(.show) {\n display: none;\n}\n\n.collapsing {\n height: 0;\n overflow: hidden;\n -webkit-transition: height 0.35s ease;\n transition: height 0.35s ease;\n}\n@media (prefers-reduced-motion: reduce) {\n .collapsing {\n -webkit-transition: none;\n transition: none;\n }\n}\n.collapsing.collapse-horizontal {\n width: 0;\n height: auto;\n -webkit-transition: width 0.35s ease;\n transition: width 0.35s ease;\n}\n@media (prefers-reduced-motion: reduce) {\n .collapsing.collapse-horizontal {\n -webkit-transition: none;\n transition: none;\n }\n}\n\n.dropup,\n.dropend,\n.dropdown,\n.dropstart,\n.dropup-center,\n.dropdown-center {\n position: relative;\n}\n\n.dropdown-toggle {\n white-space: nowrap;\n}\n.dropdown-toggle::after {\n display: inline-block;\n margin-right: 0.35em;\n vertical-align: 0.1575em;\n content: \"\";\n border-top: 0.35em solid;\n border-left: 0.35em solid transparent;\n border-bottom: 0;\n border-right: 0.35em solid transparent;\n}\n.dropdown-toggle:empty::after {\n margin-right: 0;\n}\n\n.dropdown-menu {\n --ct-dropdown-zindex: 1000;\n --ct-dropdown-min-width: 10rem;\n --ct-dropdown-padding-x: 0;\n --ct-dropdown-padding-y: 0.25rem;\n --ct-dropdown-spacer: 0.125rem;\n --ct-dropdown-font-size: 0.875rem;\n --ct-dropdown-color: var(--ct-body-color);\n --ct-dropdown-bg: var(--ct-secondary-bg);\n --ct-dropdown-border-color: var(--ct-border-color);\n --ct-dropdown-border-radius: 0.15rem;\n --ct-dropdown-border-width: 0;\n --ct-dropdown-inner-border-radius: 0.15rem;\n --ct-dropdown-divider-bg: var(--ct-border-color);\n --ct-dropdown-divider-margin-y: 0.625rem;\n --ct-dropdown-box-shadow: var(--ct-box-shadow-lg);\n --ct-dropdown-link-color: var(--ct-body-color);\n --ct-dropdown-link-hover-color: var(--ct-primary);\n --ct-dropdown-link-hover-bg: var(--ct-primary-bg-subtle);\n --ct-dropdown-link-active-color: var(--ct-tertiary-color);\n --ct-dropdown-link-active-bg: var(--ct-tertiary-bg);\n --ct-dropdown-link-disabled-color: #adb5bd;\n --ct-dropdown-item-padding-x: 0.9375rem;\n --ct-dropdown-item-padding-y: 0.375rem;\n --ct-dropdown-header-color: inherit;\n --ct-dropdown-header-padding-x: 0.703125rem;\n --ct-dropdown-header-padding-y: 0.5rem;\n position: absolute;\n z-index: var(--ct-dropdown-zindex);\n display: none;\n min-width: var(--ct-dropdown-min-width);\n padding: var(--ct-dropdown-padding-y) var(--ct-dropdown-padding-x);\n margin: 0;\n font-size: var(--ct-dropdown-font-size);\n color: var(--ct-dropdown-color);\n text-align: right;\n list-style: none;\n background-color: var(--ct-dropdown-bg);\n background-clip: padding-box;\n border: var(--ct-dropdown-border-width) solid var(--ct-dropdown-border-color);\n border-radius: var(--ct-dropdown-border-radius);\n}\n.dropdown-menu[data-bs-popper] {\n top: 100%;\n right: 0;\n margin-top: var(--ct-dropdown-spacer);\n}\n\n.dropdown-menu-start {\n --bs-position: start;\n}\n.dropdown-menu-start[data-bs-popper] {\n left: auto;\n right: 0;\n}\n\n.dropdown-menu-end {\n --bs-position: end;\n}\n.dropdown-menu-end[data-bs-popper] {\n left: 0;\n right: auto;\n}\n\n@media (min-width: 576px) {\n .dropdown-menu-sm-start {\n --bs-position: start;\n }\n .dropdown-menu-sm-start[data-bs-popper] {\n left: auto;\n right: 0;\n }\n .dropdown-menu-sm-end {\n --bs-position: end;\n }\n .dropdown-menu-sm-end[data-bs-popper] {\n left: 0;\n right: auto;\n }\n}\n@media (min-width: 768px) {\n .dropdown-menu-md-start {\n --bs-position: start;\n }\n .dropdown-menu-md-start[data-bs-popper] {\n left: auto;\n right: 0;\n }\n .dropdown-menu-md-end {\n --bs-position: end;\n }\n .dropdown-menu-md-end[data-bs-popper] {\n left: 0;\n right: auto;\n }\n}\n@media (min-width: 992px) {\n .dropdown-menu-lg-start {\n --bs-position: start;\n }\n .dropdown-menu-lg-start[data-bs-popper] {\n left: auto;\n right: 0;\n }\n .dropdown-menu-lg-end {\n --bs-position: end;\n }\n .dropdown-menu-lg-end[data-bs-popper] {\n left: 0;\n right: auto;\n }\n}\n@media (min-width: 1200px) {\n .dropdown-menu-xl-start {\n --bs-position: start;\n }\n .dropdown-menu-xl-start[data-bs-popper] {\n left: auto;\n right: 0;\n }\n .dropdown-menu-xl-end {\n --bs-position: end;\n }\n .dropdown-menu-xl-end[data-bs-popper] {\n left: 0;\n right: auto;\n }\n}\n@media (min-width: 1400px) {\n .dropdown-menu-xxl-start {\n --bs-position: start;\n }\n .dropdown-menu-xxl-start[data-bs-popper] {\n left: auto;\n right: 0;\n }\n .dropdown-menu-xxl-end {\n --bs-position: end;\n }\n .dropdown-menu-xxl-end[data-bs-popper] {\n left: 0;\n right: auto;\n }\n}\n.dropup .dropdown-menu[data-bs-popper] {\n top: auto;\n bottom: 100%;\n margin-top: 0;\n margin-bottom: var(--ct-dropdown-spacer);\n}\n.dropup .dropdown-toggle::after {\n display: inline-block;\n margin-right: 0.35em;\n vertical-align: 0.1575em;\n content: \"\";\n border-top: 0;\n border-left: 0.35em solid transparent;\n border-bottom: 0.35em solid;\n border-right: 0.35em solid transparent;\n}\n.dropup .dropdown-toggle:empty::after {\n margin-right: 0;\n}\n\n.dropend .dropdown-menu[data-bs-popper] {\n top: 0;\n left: auto;\n right: 100%;\n margin-top: 0;\n margin-right: var(--ct-dropdown-spacer);\n}\n.dropend .dropdown-toggle::after {\n display: inline-block;\n margin-right: 0.35em;\n vertical-align: 0.1575em;\n content: \"\";\n border-top: 0.35em solid transparent;\n border-left: 0;\n border-bottom: 0.35em solid transparent;\n border-right: 0.35em solid;\n}\n.dropend .dropdown-toggle:empty::after {\n margin-right: 0;\n}\n.dropend .dropdown-toggle::after {\n vertical-align: 0;\n}\n\n.dropstart .dropdown-menu[data-bs-popper] {\n top: 0;\n left: 100%;\n right: auto;\n margin-top: 0;\n margin-left: var(--ct-dropdown-spacer);\n}\n.dropstart .dropdown-toggle::after {\n display: inline-block;\n margin-right: 0.35em;\n vertical-align: 0.1575em;\n content: \"\";\n}\n.dropstart .dropdown-toggle::after {\n display: none;\n}\n.dropstart .dropdown-toggle::before {\n display: inline-block;\n margin-left: 0.35em;\n vertical-align: 0.1575em;\n content: \"\";\n border-top: 0.35em solid transparent;\n border-left: 0.35em solid;\n border-bottom: 0.35em solid transparent;\n}\n.dropstart .dropdown-toggle:empty::after {\n margin-right: 0;\n}\n.dropstart .dropdown-toggle::before {\n vertical-align: 0;\n}\n\n.dropdown-divider {\n height: 0;\n margin: var(--ct-dropdown-divider-margin-y) 0;\n overflow: hidden;\n border-top: 1px solid var(--ct-dropdown-divider-bg);\n opacity: 1;\n}\n\n.dropdown-item {\n display: block;\n width: 100%;\n padding: var(--ct-dropdown-item-padding-y) var(--ct-dropdown-item-padding-x);\n clear: both;\n font-weight: 400;\n color: var(--ct-dropdown-link-color);\n text-align: inherit;\n white-space: nowrap;\n background-color: transparent;\n border: 0;\n border-radius: var(--ct-dropdown-item-border-radius, 0);\n}\n.dropdown-item:hover, .dropdown-item:focus {\n color: var(--ct-dropdown-link-hover-color);\n background-color: var(--ct-dropdown-link-hover-bg);\n}\n.dropdown-item.active, .dropdown-item:active {\n color: var(--ct-dropdown-link-active-color);\n text-decoration: none;\n background-color: var(--ct-dropdown-link-active-bg);\n}\n.dropdown-item.disabled, .dropdown-item:disabled {\n color: var(--ct-dropdown-link-disabled-color);\n pointer-events: none;\n background-color: transparent;\n}\n\n.dropdown-menu.show {\n display: block;\n}\n\n.dropdown-header {\n display: block;\n padding: var(--ct-dropdown-header-padding-y) var(--ct-dropdown-header-padding-x);\n margin-bottom: 0;\n font-size: 0.85rem;\n color: var(--ct-dropdown-header-color);\n white-space: nowrap;\n}\n\n.dropdown-item-text {\n display: block;\n padding: var(--ct-dropdown-item-padding-y) var(--ct-dropdown-item-padding-x);\n color: var(--ct-dropdown-link-color);\n}\n\n.dropdown-menu-dark {\n --ct-dropdown-color: #dee2e6;\n --ct-dropdown-bg: #343a40;\n --ct-dropdown-border-color: var(--ct-border-color);\n --ct-dropdown-box-shadow: ;\n --ct-dropdown-link-color: #dee2e6;\n --ct-dropdown-link-hover-color: #fff;\n --ct-dropdown-divider-bg: var(--ct-border-color);\n --ct-dropdown-link-hover-bg: rgba(255, 255, 255, 0.15);\n --ct-dropdown-link-active-color: var(--ct-tertiary-color);\n --ct-dropdown-link-active-bg: var(--ct-tertiary-bg);\n --ct-dropdown-link-disabled-color: #adb5bd;\n --ct-dropdown-header-color: #adb5bd;\n}\n\n.btn-group,\n.btn-group-vertical {\n position: relative;\n display: -webkit-inline-box;\n display: -ms-inline-flexbox;\n display: inline-flex;\n vertical-align: middle;\n}\n.btn-group > .btn,\n.btn-group-vertical > .btn {\n position: relative;\n -webkit-box-flex: 1;\n -ms-flex: 1 1 auto;\n flex: 1 1 auto;\n}\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\n.btn-toolbar {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -ms-flex-wrap: wrap;\n flex-wrap: wrap;\n -webkit-box-pack: start;\n -ms-flex-pack: start;\n justify-content: flex-start;\n}\n.btn-toolbar .input-group {\n width: auto;\n}\n\n.btn-group {\n border-radius: var(--ct-border-radius);\n}\n.btn-group > :not(.btn-check:first-child) + .btn,\n.btn-group > .btn-group:not(:first-child) {\n margin-right: calc(var(--ct-border-width) * -1);\n}\n.btn-group > .btn:not(:last-child):not(.dropdown-toggle),\n.btn-group > .btn.dropdown-toggle-split:first-child,\n.btn-group > .btn-group:not(:last-child) > .btn {\n border-top-left-radius: 0;\n border-bottom-left-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-right-radius: 0;\n border-bottom-right-radius: 0;\n}\n\n.dropdown-toggle-split {\n padding-left: 0.675rem;\n padding-right: 0.675rem;\n}\n.dropdown-toggle-split::after, .dropup .dropdown-toggle-split::after, .dropend .dropdown-toggle-split::after {\n margin-right: 0;\n}\n.dropstart .dropdown-toggle-split::before {\n margin-left: 0;\n}\n\n.btn-sm + .dropdown-toggle-split, .btn-group-sm > .btn + .dropdown-toggle-split {\n padding-left: 0.6rem;\n padding-right: 0.6rem;\n}\n\n.btn-lg + .dropdown-toggle-split, .btn-group-lg > .btn + .dropdown-toggle-split {\n padding-left: 0.75rem;\n padding-right: 0.75rem;\n}\n\n.btn-group-vertical {\n -webkit-box-orient: vertical;\n -webkit-box-direction: normal;\n -ms-flex-direction: column;\n flex-direction: column;\n -webkit-box-align: start;\n -ms-flex-align: start;\n align-items: flex-start;\n -webkit-box-pack: center;\n -ms-flex-pack: center;\n justify-content: center;\n}\n.btn-group-vertical > .btn,\n.btn-group-vertical > .btn-group {\n width: 100%;\n}\n.btn-group-vertical > .btn:not(:first-child),\n.btn-group-vertical > .btn-group:not(:first-child) {\n margin-top: calc(var(--ct-border-width) * -1);\n}\n.btn-group-vertical > .btn:not(:last-child):not(.dropdown-toggle),\n.btn-group-vertical > .btn-group:not(:last-child) > .btn {\n border-bottom-left-radius: 0;\n border-bottom-right-radius: 0;\n}\n.btn-group-vertical > .btn ~ .btn,\n.btn-group-vertical > .btn-group:not(:first-child) > .btn {\n border-top-right-radius: 0;\n border-top-left-radius: 0;\n}\n\n.nav {\n --ct-nav-link-padding-x: 1rem;\n --ct-nav-link-padding-y: 0.5rem;\n --ct-nav-link-font-weight: ;\n --ct-nav-link-color: var(--ct-link-color);\n --ct-nav-link-hover-color: var(--ct-link-hover-color);\n --ct-nav-link-disabled-color: var(--ct-secondary-color);\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -ms-flex-wrap: wrap;\n flex-wrap: wrap;\n padding-right: 0;\n margin-bottom: 0;\n list-style: none;\n}\n\n.nav-link {\n display: block;\n padding: var(--ct-nav-link-padding-y) var(--ct-nav-link-padding-x);\n font-size: var(--ct-nav-link-font-size);\n font-weight: var(--ct-nav-link-font-weight);\n color: var(--ct-nav-link-color);\n background: none;\n border: 0;\n -webkit-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 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;\n}\n@media (prefers-reduced-motion: reduce) {\n .nav-link {\n -webkit-transition: none;\n transition: none;\n }\n}\n.nav-link:hover, .nav-link:focus {\n color: var(--ct-nav-link-hover-color);\n}\n.nav-link:focus-visible {\n outline: 0;\n -webkit-box-shadow: 0 0 0 0.25rem rgba(66, 84, 186, 0.25);\n box-shadow: 0 0 0 0.25rem rgba(66, 84, 186, 0.25);\n}\n.nav-link.disabled {\n color: var(--ct-nav-link-disabled-color);\n pointer-events: none;\n cursor: default;\n}\n\n.nav-tabs {\n --ct-nav-tabs-border-width: var(--ct-border-width);\n --ct-nav-tabs-border-color: var(--ct-border-color);\n --ct-nav-tabs-border-radius: var(--ct-border-radius);\n --ct-nav-tabs-link-hover-border-color: var(--ct-secondary-bg) var(--ct-secondary-bg) var(--ct-border-color);\n --ct-nav-tabs-link-active-color: var(--ct-emphasis-color);\n --ct-nav-tabs-link-active-bg: var(--ct-secondary-bg);\n --ct-nav-tabs-link-active-border-color: var(--ct-border-color) var(--ct-border-color) var(--ct-secondary-bg);\n border-bottom: var(--ct-nav-tabs-border-width) solid var(--ct-nav-tabs-border-color);\n}\n.nav-tabs .nav-link {\n margin-bottom: calc(-1 * var(--ct-nav-tabs-border-width));\n border: var(--ct-nav-tabs-border-width) solid transparent;\n border-top-right-radius: var(--ct-nav-tabs-border-radius);\n border-top-left-radius: var(--ct-nav-tabs-border-radius);\n}\n.nav-tabs .nav-link:hover, .nav-tabs .nav-link:focus {\n isolation: isolate;\n border-color: var(--ct-nav-tabs-link-hover-border-color);\n}\n.nav-tabs .nav-link.disabled, .nav-tabs .nav-link:disabled {\n color: var(--ct-nav-link-disabled-color);\n background-color: transparent;\n border-color: transparent;\n}\n.nav-tabs .nav-link.active,\n.nav-tabs .nav-item.show .nav-link {\n color: var(--ct-nav-tabs-link-active-color);\n background-color: var(--ct-nav-tabs-link-active-bg);\n border-color: var(--ct-nav-tabs-link-active-border-color);\n}\n.nav-tabs .dropdown-menu {\n margin-top: calc(-1 * var(--ct-nav-tabs-border-width));\n border-top-right-radius: 0;\n border-top-left-radius: 0;\n}\n\n.nav-pills {\n --ct-nav-pills-border-radius: 0.15rem;\n --ct-nav-pills-link-active-color: #fff;\n --ct-nav-pills-link-active-bg: #4254ba;\n}\n.nav-pills .nav-link {\n border-radius: var(--ct-nav-pills-border-radius);\n}\n.nav-pills .nav-link:disabled {\n color: var(--ct-nav-link-disabled-color);\n background-color: transparent;\n border-color: transparent;\n}\n.nav-pills .nav-link.active,\n.nav-pills .show > .nav-link {\n color: var(--ct-nav-pills-link-active-color);\n background-color: var(--ct-nav-pills-link-active-bg);\n}\n\n.nav-underline {\n --ct-nav-underline-gap: 1rem;\n --ct-nav-underline-border-width: 0.125rem;\n --ct-nav-underline-link-active-color: var(--ct-emphasis-color);\n gap: var(--ct-nav-underline-gap);\n}\n.nav-underline .nav-link {\n padding-left: 0;\n padding-right: 0;\n border-bottom: var(--ct-nav-underline-border-width) solid transparent;\n}\n.nav-underline .nav-link:hover, .nav-underline .nav-link:focus {\n border-bottom-color: currentcolor;\n}\n.nav-underline .nav-link.active,\n.nav-underline .show > .nav-link {\n font-weight: 700;\n color: var(--ct-nav-underline-link-active-color);\n border-bottom-color: currentcolor;\n}\n\n.nav-fill > .nav-link,\n.nav-fill .nav-item {\n -webkit-box-flex: 1;\n -ms-flex: 1 1 auto;\n flex: 1 1 auto;\n text-align: center;\n}\n\n.nav-justified > .nav-link,\n.nav-justified .nav-item {\n -ms-flex-preferred-size: 0;\n flex-basis: 0;\n -webkit-box-flex: 1;\n -ms-flex-positive: 1;\n flex-grow: 1;\n text-align: center;\n}\n\n.nav-fill .nav-item .nav-link,\n.nav-justified .nav-item .nav-link {\n width: 100%;\n}\n\n.tab-content > .tab-pane {\n display: none;\n}\n.tab-content > .active {\n display: block;\n}\n\n.navbar {\n --ct-navbar-padding-x: 0;\n --ct-navbar-padding-y: 0.625rem;\n --ct-navbar-color: rgba(var(--ct-emphasis-color-rgb), 0.65);\n --ct-navbar-hover-color: rgba(var(--ct-emphasis-color-rgb), 0.8);\n --ct-navbar-disabled-color: rgba(var(--ct-emphasis-color-rgb), 0.3);\n --ct-navbar-active-color: rgba(var(--ct-emphasis-color-rgb), 1);\n --ct-navbar-brand-padding-y: 0.2440625rem;\n --ct-navbar-brand-margin-end: 1rem;\n --ct-navbar-brand-font-size: 1.21625rem;\n --ct-navbar-brand-color: rgba(var(--ct-emphasis-color-rgb), 1);\n --ct-navbar-brand-hover-color: rgba(var(--ct-emphasis-color-rgb), 1);\n --ct-navbar-nav-link-padding-x: 0.5rem;\n --ct-navbar-toggler-padding-y: 0.25rem;\n --ct-navbar-toggler-padding-x: 0.75rem;\n --ct-navbar-toggler-font-size: 1.21625rem;\n --ct-navbar-toggler-icon-bg: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28108, 117, 125, 0.75%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e\");\n --ct-navbar-toggler-border-color: rgba(var(--ct-emphasis-color-rgb), 0.15);\n --ct-navbar-toggler-border-radius: var(--ct-border-radius);\n --ct-navbar-toggler-focus-width: 0.15rem;\n --ct-navbar-toggler-transition: box-shadow 0.15s ease-in-out;\n position: relative;\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -ms-flex-wrap: wrap;\n flex-wrap: wrap;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n -webkit-box-pack: justify;\n -ms-flex-pack: justify;\n justify-content: space-between;\n padding: var(--ct-navbar-padding-y) var(--ct-navbar-padding-x);\n}\n.navbar > .container,\n.navbar > .container-fluid,\n.navbar > .container-sm,\n.navbar > .container-md,\n.navbar > .container-lg,\n.navbar > .container-xl,\n.navbar > .container-xxl {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -ms-flex-wrap: inherit;\n flex-wrap: inherit;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n -webkit-box-pack: justify;\n -ms-flex-pack: justify;\n justify-content: space-between;\n}\n.navbar-brand {\n padding-top: var(--ct-navbar-brand-padding-y);\n padding-bottom: var(--ct-navbar-brand-padding-y);\n margin-left: var(--ct-navbar-brand-margin-end);\n font-size: var(--ct-navbar-brand-font-size);\n color: var(--ct-navbar-brand-color);\n white-space: nowrap;\n}\n.navbar-brand:hover, .navbar-brand:focus {\n color: var(--ct-navbar-brand-hover-color);\n}\n\n.navbar-nav {\n --ct-nav-link-padding-x: 0;\n --ct-nav-link-padding-y: 0.5rem;\n --ct-nav-link-font-weight: ;\n --ct-nav-link-color: var(--ct-navbar-color);\n --ct-nav-link-hover-color: var(--ct-navbar-hover-color);\n --ct-nav-link-disabled-color: var(--ct-navbar-disabled-color);\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-orient: vertical;\n -webkit-box-direction: normal;\n -ms-flex-direction: column;\n flex-direction: column;\n padding-right: 0;\n margin-bottom: 0;\n list-style: none;\n}\n.navbar-nav .nav-link.active, .navbar-nav .nav-link.show {\n color: var(--ct-navbar-active-color);\n}\n.navbar-nav .dropdown-menu {\n position: static;\n}\n\n.navbar-text {\n padding-top: 0.5rem;\n padding-bottom: 0.5rem;\n color: var(--ct-navbar-color);\n}\n.navbar-text a,\n.navbar-text a:hover,\n.navbar-text a:focus {\n color: var(--ct-navbar-active-color);\n}\n\n.navbar-collapse {\n -ms-flex-preferred-size: 100%;\n flex-basis: 100%;\n -webkit-box-flex: 1;\n -ms-flex-positive: 1;\n flex-grow: 1;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n}\n\n.navbar-toggler {\n padding: var(--ct-navbar-toggler-padding-y) var(--ct-navbar-toggler-padding-x);\n font-size: var(--ct-navbar-toggler-font-size);\n line-height: 1;\n color: var(--ct-navbar-color);\n background-color: transparent;\n border: var(--ct-border-width) solid var(--ct-navbar-toggler-border-color);\n border-radius: var(--ct-navbar-toggler-border-radius);\n -webkit-transition: var(--ct-navbar-toggler-transition);\n transition: var(--ct-navbar-toggler-transition);\n}\n@media (prefers-reduced-motion: reduce) {\n .navbar-toggler {\n -webkit-transition: none;\n transition: none;\n }\n}\n.navbar-toggler:hover {\n text-decoration: none;\n}\n.navbar-toggler:focus {\n text-decoration: none;\n outline: 0;\n -webkit-box-shadow: 0 0 0 var(--ct-navbar-toggler-focus-width);\n box-shadow: 0 0 0 var(--ct-navbar-toggler-focus-width);\n}\n\n.navbar-toggler-icon {\n display: inline-block;\n width: 1.5em;\n height: 1.5em;\n vertical-align: middle;\n background-image: var(--ct-navbar-toggler-icon-bg);\n background-repeat: no-repeat;\n background-position: center;\n background-size: 100%;\n}\n\n.navbar-nav-scroll {\n max-height: var(--ct-scroll-height, 75vh);\n overflow-y: auto;\n}\n\n@media (min-width: 576px) {\n .navbar-expand-sm {\n -ms-flex-wrap: nowrap;\n flex-wrap: nowrap;\n -webkit-box-pack: start;\n -ms-flex-pack: start;\n justify-content: flex-start;\n }\n .navbar-expand-sm .navbar-nav {\n -webkit-box-orient: horizontal;\n -webkit-box-direction: normal;\n -ms-flex-direction: row;\n flex-direction: row;\n }\n .navbar-expand-sm .navbar-nav .dropdown-menu {\n position: absolute;\n }\n .navbar-expand-sm .navbar-nav .nav-link {\n padding-left: var(--ct-navbar-nav-link-padding-x);\n padding-right: var(--ct-navbar-nav-link-padding-x);\n }\n .navbar-expand-sm .navbar-nav-scroll {\n overflow: visible;\n }\n .navbar-expand-sm .navbar-collapse {\n display: -webkit-box !important;\n display: -ms-flexbox !important;\n display: flex !important;\n -ms-flex-preferred-size: auto;\n flex-basis: auto;\n }\n .navbar-expand-sm .navbar-toggler {\n display: none;\n }\n .navbar-expand-sm .offcanvas {\n position: static;\n z-index: auto;\n -webkit-box-flex: 1;\n -ms-flex-positive: 1;\n flex-grow: 1;\n width: auto !important;\n height: auto !important;\n visibility: visible !important;\n background-color: transparent !important;\n border: 0 !important;\n -webkit-transform: none !important;\n transform: none !important;\n -webkit-transition: none;\n transition: none;\n }\n .navbar-expand-sm .offcanvas .offcanvas-header {\n display: none;\n }\n .navbar-expand-sm .offcanvas .offcanvas-body {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-flex: 0;\n -ms-flex-positive: 0;\n flex-grow: 0;\n padding: 0;\n overflow-y: visible;\n }\n}\n@media (min-width: 768px) {\n .navbar-expand-md {\n -ms-flex-wrap: nowrap;\n flex-wrap: nowrap;\n -webkit-box-pack: start;\n -ms-flex-pack: start;\n justify-content: flex-start;\n }\n .navbar-expand-md .navbar-nav {\n -webkit-box-orient: horizontal;\n -webkit-box-direction: normal;\n -ms-flex-direction: row;\n flex-direction: row;\n }\n .navbar-expand-md .navbar-nav .dropdown-menu {\n position: absolute;\n }\n .navbar-expand-md .navbar-nav .nav-link {\n padding-left: var(--ct-navbar-nav-link-padding-x);\n padding-right: var(--ct-navbar-nav-link-padding-x);\n }\n .navbar-expand-md .navbar-nav-scroll {\n overflow: visible;\n }\n .navbar-expand-md .navbar-collapse {\n display: -webkit-box !important;\n display: -ms-flexbox !important;\n display: flex !important;\n -ms-flex-preferred-size: auto;\n flex-basis: auto;\n }\n .navbar-expand-md .navbar-toggler {\n display: none;\n }\n .navbar-expand-md .offcanvas {\n position: static;\n z-index: auto;\n -webkit-box-flex: 1;\n -ms-flex-positive: 1;\n flex-grow: 1;\n width: auto !important;\n height: auto !important;\n visibility: visible !important;\n background-color: transparent !important;\n border: 0 !important;\n -webkit-transform: none !important;\n transform: none !important;\n -webkit-transition: none;\n transition: none;\n }\n .navbar-expand-md .offcanvas .offcanvas-header {\n display: none;\n }\n .navbar-expand-md .offcanvas .offcanvas-body {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-flex: 0;\n -ms-flex-positive: 0;\n flex-grow: 0;\n padding: 0;\n overflow-y: visible;\n }\n}\n@media (min-width: 992px) {\n .navbar-expand-lg {\n -ms-flex-wrap: nowrap;\n flex-wrap: nowrap;\n -webkit-box-pack: start;\n -ms-flex-pack: start;\n justify-content: flex-start;\n }\n .navbar-expand-lg .navbar-nav {\n -webkit-box-orient: horizontal;\n -webkit-box-direction: normal;\n -ms-flex-direction: row;\n flex-direction: row;\n }\n .navbar-expand-lg .navbar-nav .dropdown-menu {\n position: absolute;\n }\n .navbar-expand-lg .navbar-nav .nav-link {\n padding-left: var(--ct-navbar-nav-link-padding-x);\n padding-right: var(--ct-navbar-nav-link-padding-x);\n }\n .navbar-expand-lg .navbar-nav-scroll {\n overflow: visible;\n }\n .navbar-expand-lg .navbar-collapse {\n display: -webkit-box !important;\n display: -ms-flexbox !important;\n display: flex !important;\n -ms-flex-preferred-size: auto;\n flex-basis: auto;\n }\n .navbar-expand-lg .navbar-toggler {\n display: none;\n }\n .navbar-expand-lg .offcanvas {\n position: static;\n z-index: auto;\n -webkit-box-flex: 1;\n -ms-flex-positive: 1;\n flex-grow: 1;\n width: auto !important;\n height: auto !important;\n visibility: visible !important;\n background-color: transparent !important;\n border: 0 !important;\n -webkit-transform: none !important;\n transform: none !important;\n -webkit-transition: none;\n transition: none;\n }\n .navbar-expand-lg .offcanvas .offcanvas-header {\n display: none;\n }\n .navbar-expand-lg .offcanvas .offcanvas-body {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-flex: 0;\n -ms-flex-positive: 0;\n flex-grow: 0;\n padding: 0;\n overflow-y: visible;\n }\n}\n@media (min-width: 1200px) {\n .navbar-expand-xl {\n -ms-flex-wrap: nowrap;\n flex-wrap: nowrap;\n -webkit-box-pack: start;\n -ms-flex-pack: start;\n justify-content: flex-start;\n }\n .navbar-expand-xl .navbar-nav {\n -webkit-box-orient: horizontal;\n -webkit-box-direction: normal;\n -ms-flex-direction: row;\n flex-direction: row;\n }\n .navbar-expand-xl .navbar-nav .dropdown-menu {\n position: absolute;\n }\n .navbar-expand-xl .navbar-nav .nav-link {\n padding-left: var(--ct-navbar-nav-link-padding-x);\n padding-right: var(--ct-navbar-nav-link-padding-x);\n }\n .navbar-expand-xl .navbar-nav-scroll {\n overflow: visible;\n }\n .navbar-expand-xl .navbar-collapse {\n display: -webkit-box !important;\n display: -ms-flexbox !important;\n display: flex !important;\n -ms-flex-preferred-size: auto;\n flex-basis: auto;\n }\n .navbar-expand-xl .navbar-toggler {\n display: none;\n }\n .navbar-expand-xl .offcanvas {\n position: static;\n z-index: auto;\n -webkit-box-flex: 1;\n -ms-flex-positive: 1;\n flex-grow: 1;\n width: auto !important;\n height: auto !important;\n visibility: visible !important;\n background-color: transparent !important;\n border: 0 !important;\n -webkit-transform: none !important;\n transform: none !important;\n -webkit-transition: none;\n transition: none;\n }\n .navbar-expand-xl .offcanvas .offcanvas-header {\n display: none;\n }\n .navbar-expand-xl .offcanvas .offcanvas-body {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-flex: 0;\n -ms-flex-positive: 0;\n flex-grow: 0;\n padding: 0;\n overflow-y: visible;\n }\n}\n@media (min-width: 1400px) {\n .navbar-expand-xxl {\n -ms-flex-wrap: nowrap;\n flex-wrap: nowrap;\n -webkit-box-pack: start;\n -ms-flex-pack: start;\n justify-content: flex-start;\n }\n .navbar-expand-xxl .navbar-nav {\n -webkit-box-orient: horizontal;\n -webkit-box-direction: normal;\n -ms-flex-direction: row;\n flex-direction: row;\n }\n .navbar-expand-xxl .navbar-nav .dropdown-menu {\n position: absolute;\n }\n .navbar-expand-xxl .navbar-nav .nav-link {\n padding-left: var(--ct-navbar-nav-link-padding-x);\n padding-right: var(--ct-navbar-nav-link-padding-x);\n }\n .navbar-expand-xxl .navbar-nav-scroll {\n overflow: visible;\n }\n .navbar-expand-xxl .navbar-collapse {\n display: -webkit-box !important;\n display: -ms-flexbox !important;\n display: flex !important;\n -ms-flex-preferred-size: auto;\n flex-basis: auto;\n }\n .navbar-expand-xxl .navbar-toggler {\n display: none;\n }\n .navbar-expand-xxl .offcanvas {\n position: static;\n z-index: auto;\n -webkit-box-flex: 1;\n -ms-flex-positive: 1;\n flex-grow: 1;\n width: auto !important;\n height: auto !important;\n visibility: visible !important;\n background-color: transparent !important;\n border: 0 !important;\n -webkit-transform: none !important;\n transform: none !important;\n -webkit-transition: none;\n transition: none;\n }\n .navbar-expand-xxl .offcanvas .offcanvas-header {\n display: none;\n }\n .navbar-expand-xxl .offcanvas .offcanvas-body {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-flex: 0;\n -ms-flex-positive: 0;\n flex-grow: 0;\n padding: 0;\n overflow-y: visible;\n }\n}\n.navbar-expand {\n -ms-flex-wrap: nowrap;\n flex-wrap: nowrap;\n -webkit-box-pack: start;\n -ms-flex-pack: start;\n justify-content: flex-start;\n}\n.navbar-expand .navbar-nav {\n -webkit-box-orient: horizontal;\n -webkit-box-direction: normal;\n -ms-flex-direction: row;\n flex-direction: row;\n}\n.navbar-expand .navbar-nav .dropdown-menu {\n position: absolute;\n}\n.navbar-expand .navbar-nav .nav-link {\n padding-left: var(--ct-navbar-nav-link-padding-x);\n padding-right: var(--ct-navbar-nav-link-padding-x);\n}\n.navbar-expand .navbar-nav-scroll {\n overflow: visible;\n}\n.navbar-expand .navbar-collapse {\n display: -webkit-box !important;\n display: -ms-flexbox !important;\n display: flex !important;\n -ms-flex-preferred-size: auto;\n flex-basis: auto;\n}\n.navbar-expand .navbar-toggler {\n display: none;\n}\n.navbar-expand .offcanvas {\n position: static;\n z-index: auto;\n -webkit-box-flex: 1;\n -ms-flex-positive: 1;\n flex-grow: 1;\n width: auto !important;\n height: auto !important;\n visibility: visible !important;\n background-color: transparent !important;\n border: 0 !important;\n -webkit-transform: none !important;\n transform: none !important;\n -webkit-transition: none;\n transition: none;\n}\n.navbar-expand .offcanvas .offcanvas-header {\n display: none;\n}\n.navbar-expand .offcanvas .offcanvas-body {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-flex: 0;\n -ms-flex-positive: 0;\n flex-grow: 0;\n padding: 0;\n overflow-y: visible;\n}\n\n.navbar-dark,\n.navbar[data-bs-theme=dark] {\n --ct-navbar-color: rgba(255, 255, 255, 0.55);\n --ct-navbar-hover-color: rgba(255, 255, 255, 0.75);\n --ct-navbar-disabled-color: rgba(255, 255, 255, 0.25);\n --ct-navbar-active-color: #fff;\n --ct-navbar-brand-color: #fff;\n --ct-navbar-brand-hover-color: #fff;\n --ct-navbar-toggler-border-color: rgba(255, 255, 255, 0.1);\n --ct-navbar-toggler-icon-bg: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e\");\n}\n\n[data-bs-theme=dark] .navbar-toggler-icon {\n --ct-navbar-toggler-icon-bg: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e\");\n}\n\n.card {\n --ct-card-spacer-y: 1.25rem;\n --ct-card-spacer-x: 1.25rem;\n --ct-card-title-spacer-y: 0.625rem;\n --ct-card-title-color: ;\n --ct-card-subtitle-color: ;\n --ct-card-border-width: var(--ct-theme-card-border-width);\n --ct-card-border-color: var(--ct-border-color);\n --ct-card-border-radius: var(--ct-border-radius);\n --ct-card-box-shadow: var(--ct-box-shadow);\n --ct-card-inner-border-radius: calc(var(--ct-border-radius) - (var(--ct-theme-card-border-width)));\n --ct-card-cap-padding-y: 1.25rem;\n --ct-card-cap-padding-x: 1.25rem;\n --ct-card-cap-bg: transparent;\n --ct-card-cap-color: ;\n --ct-card-height: ;\n --ct-card-color: ;\n --ct-card-bg: var(--ct-secondary-bg);\n --ct-card-img-overlay-padding: 1.25rem;\n --ct-card-group-margin: 0.3rem;\n position: relative;\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-orient: vertical;\n -webkit-box-direction: normal;\n -ms-flex-direction: column;\n flex-direction: column;\n min-width: 0;\n height: var(--ct-card-height);\n color: var(--ct-body-color);\n word-wrap: break-word;\n background-color: var(--ct-card-bg);\n background-clip: border-box;\n border: var(--ct-card-border-width) solid var(--ct-card-border-color);\n border-radius: var(--ct-card-border-radius);\n}\n.card > hr {\n margin-left: 0;\n margin-right: 0;\n}\n.card > .list-group {\n border-top: inherit;\n border-bottom: inherit;\n}\n.card > .list-group:first-child {\n border-top-width: 0;\n border-top-right-radius: var(--ct-card-inner-border-radius);\n border-top-left-radius: var(--ct-card-inner-border-radius);\n}\n.card > .list-group:last-child {\n border-bottom-width: 0;\n border-bottom-left-radius: var(--ct-card-inner-border-radius);\n border-bottom-right-radius: var(--ct-card-inner-border-radius);\n}\n.card > .card-header + .list-group,\n.card > .list-group + .card-footer {\n border-top: 0;\n}\n\n.card-body {\n -webkit-box-flex: 1;\n -ms-flex: 1 1 auto;\n flex: 1 1 auto;\n padding: var(--ct-card-spacer-y) var(--ct-card-spacer-x);\n color: var(--ct-card-color);\n}\n\n.card-title {\n margin-bottom: var(--ct-card-title-spacer-y);\n color: var(--ct-card-title-color);\n}\n\n.card-subtitle {\n margin-top: calc(-0.5 * var(--ct-card-title-spacer-y));\n margin-bottom: 0;\n color: var(--ct-card-subtitle-color);\n}\n\n.card-text:last-child {\n margin-bottom: 0;\n}\n\n.card-link + .card-link {\n margin-right: var(--ct-card-spacer-x);\n}\n\n.card-header {\n padding: var(--ct-card-cap-padding-y) var(--ct-card-cap-padding-x);\n margin-bottom: 0;\n color: var(--ct-card-cap-color);\n background-color: var(--ct-card-cap-bg);\n border-bottom: var(--ct-card-border-width) solid var(--ct-card-border-color);\n}\n.card-header:first-child {\n border-radius: var(--ct-card-inner-border-radius) var(--ct-card-inner-border-radius) 0 0;\n}\n\n.card-footer {\n padding: var(--ct-card-cap-padding-y) var(--ct-card-cap-padding-x);\n color: var(--ct-card-cap-color);\n background-color: var(--ct-card-cap-bg);\n border-top: var(--ct-card-border-width) solid var(--ct-card-border-color);\n}\n.card-footer:last-child {\n border-radius: 0 0 var(--ct-card-inner-border-radius) var(--ct-card-inner-border-radius);\n}\n\n.card-header-tabs {\n margin-left: calc(-0.5 * var(--ct-card-cap-padding-x));\n margin-bottom: calc(-1 * var(--ct-card-cap-padding-y));\n margin-right: calc(-0.5 * var(--ct-card-cap-padding-x));\n border-bottom: 0;\n}\n.card-header-tabs .nav-link.active {\n background-color: var(--ct-card-bg);\n border-bottom-color: var(--ct-card-bg);\n}\n\n.card-header-pills {\n margin-left: calc(-0.5 * var(--ct-card-cap-padding-x));\n margin-right: calc(-0.5 * var(--ct-card-cap-padding-x));\n}\n\n.card-img-overlay {\n position: absolute;\n top: 0;\n left: 0;\n bottom: 0;\n right: 0;\n padding: var(--ct-card-img-overlay-padding);\n border-radius: var(--ct-card-inner-border-radius);\n}\n\n.card-img,\n.card-img-top,\n.card-img-bottom {\n width: 100%;\n}\n\n.card-img,\n.card-img-top {\n border-top-right-radius: var(--ct-card-inner-border-radius);\n border-top-left-radius: var(--ct-card-inner-border-radius);\n}\n\n.card-img,\n.card-img-bottom {\n border-bottom-left-radius: var(--ct-card-inner-border-radius);\n border-bottom-right-radius: var(--ct-card-inner-border-radius);\n}\n\n.card-group > .card {\n margin-bottom: var(--ct-card-group-margin);\n}\n@media (min-width: 576px) {\n .card-group {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-orient: horizontal;\n -webkit-box-direction: normal;\n -ms-flex-flow: row wrap;\n flex-flow: row wrap;\n }\n .card-group > .card {\n -webkit-box-flex: 1;\n -ms-flex: 1 0 0%;\n flex: 1 0 0%;\n margin-bottom: 0;\n }\n .card-group > .card + .card {\n margin-right: 0;\n border-right: 0;\n }\n .card-group > .card:not(:last-child) {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n }\n .card-group > .card:not(:last-child) .card-img-top,\n.card-group > .card:not(:last-child) .card-header {\n border-top-left-radius: 0;\n }\n .card-group > .card:not(:last-child) .card-img-bottom,\n.card-group > .card:not(:last-child) .card-footer {\n border-bottom-left-radius: 0;\n }\n .card-group > .card:not(:first-child) {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n }\n .card-group > .card:not(:first-child) .card-img-top,\n.card-group > .card:not(:first-child) .card-header {\n border-top-right-radius: 0;\n }\n .card-group > .card:not(:first-child) .card-img-bottom,\n.card-group > .card:not(:first-child) .card-footer {\n border-bottom-right-radius: 0;\n }\n}\n\n.accordion {\n --ct-accordion-color: var(--ct-body-color);\n --ct-accordion-bg: var(--ct-secondary-bg);\n --ct-accordion-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, border-radius 0.15s ease;\n --ct-accordion-border-color: var(--ct-border-color);\n --ct-accordion-border-width: var(--ct-border-width);\n --ct-accordion-border-radius: var(--ct-border-radius);\n --ct-accordion-inner-border-radius: calc(var(--ct-border-radius) - (var(--ct-border-width)));\n --ct-accordion-btn-padding-x: 1.25rem;\n --ct-accordion-btn-padding-y: 1rem;\n --ct-accordion-btn-color: var(--ct-body-color);\n --ct-accordion-btn-bg: var(--ct-accordion-bg);\n --ct-accordion-btn-icon: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%236c757d'%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 --ct-accordion-btn-icon-width: 0.75rem;\n --ct-accordion-btn-icon-transform: rotate(-180deg);\n --ct-accordion-btn-icon-transition: transform 0.2s ease-in-out;\n --ct-accordion-btn-active-icon: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%233b4ca7'%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 --ct-accordion-btn-focus-border-color: var(--ct-border-color-translucent);\n --ct-accordion-btn-focus-box-shadow: none;\n --ct-accordion-body-padding-x: 1.25rem;\n --ct-accordion-body-padding-y: 1rem;\n --ct-accordion-active-color: var(--ct-primary);\n --ct-accordion-active-bg: var(--ct-primary-bg-subtle);\n}\n\n.accordion-button {\n position: relative;\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n width: 100%;\n padding: var(--ct-accordion-btn-padding-y) var(--ct-accordion-btn-padding-x);\n font-size: 0.875rem;\n color: var(--ct-accordion-btn-color);\n text-align: right;\n background-color: var(--ct-accordion-btn-bg);\n border: 0;\n border-radius: 0;\n overflow-anchor: none;\n -webkit-transition: var(--ct-accordion-transition);\n transition: var(--ct-accordion-transition);\n}\n@media (prefers-reduced-motion: reduce) {\n .accordion-button {\n -webkit-transition: none;\n transition: none;\n }\n}\n.accordion-button:not(.collapsed) {\n color: var(--ct-accordion-active-color);\n background-color: var(--ct-accordion-active-bg);\n -webkit-box-shadow: inset 0 calc(-1 * var(--ct-accordion-border-width)) 0 var(--ct-accordion-border-color);\n box-shadow: inset 0 calc(-1 * var(--ct-accordion-border-width)) 0 var(--ct-accordion-border-color);\n}\n.accordion-button:not(.collapsed)::after {\n background-image: var(--ct-accordion-btn-active-icon);\n -webkit-transform: var(--ct-accordion-btn-icon-transform);\n transform: var(--ct-accordion-btn-icon-transform);\n}\n.accordion-button::after {\n -ms-flex-negative: 0;\n flex-shrink: 0;\n width: var(--ct-accordion-btn-icon-width);\n height: var(--ct-accordion-btn-icon-width);\n margin-right: auto;\n content: \"\";\n background-image: var(--ct-accordion-btn-icon);\n background-repeat: no-repeat;\n background-size: var(--ct-accordion-btn-icon-width);\n -webkit-transition: var(--ct-accordion-btn-icon-transition);\n transition: var(--ct-accordion-btn-icon-transition);\n}\n@media (prefers-reduced-motion: reduce) {\n .accordion-button::after {\n -webkit-transition: none;\n transition: none;\n }\n}\n.accordion-button:hover {\n z-index: 2;\n}\n.accordion-button:focus {\n z-index: 3;\n border-color: var(--ct-accordion-btn-focus-border-color);\n outline: 0;\n -webkit-box-shadow: var(--ct-accordion-btn-focus-box-shadow);\n box-shadow: var(--ct-accordion-btn-focus-box-shadow);\n}\n\n.accordion-header {\n margin-bottom: 0;\n}\n\n.accordion-item {\n color: var(--ct-accordion-color);\n background-color: var(--ct-accordion-bg);\n border: var(--ct-accordion-border-width) solid var(--ct-accordion-border-color);\n}\n.accordion-item:first-of-type {\n border-top-right-radius: var(--ct-accordion-border-radius);\n border-top-left-radius: var(--ct-accordion-border-radius);\n}\n.accordion-item:first-of-type .accordion-button {\n border-top-right-radius: var(--ct-accordion-inner-border-radius);\n border-top-left-radius: var(--ct-accordion-inner-border-radius);\n}\n.accordion-item:not(:first-of-type) {\n border-top: 0;\n}\n.accordion-item:last-of-type {\n border-bottom-left-radius: var(--ct-accordion-border-radius);\n border-bottom-right-radius: var(--ct-accordion-border-radius);\n}\n.accordion-item:last-of-type .accordion-button.collapsed {\n border-bottom-left-radius: var(--ct-accordion-inner-border-radius);\n border-bottom-right-radius: var(--ct-accordion-inner-border-radius);\n}\n.accordion-item:last-of-type .accordion-collapse {\n border-bottom-left-radius: var(--ct-accordion-border-radius);\n border-bottom-right-radius: var(--ct-accordion-border-radius);\n}\n\n.accordion-body {\n padding: var(--ct-accordion-body-padding-y) var(--ct-accordion-body-padding-x);\n}\n\n.accordion-flush .accordion-collapse {\n border-width: 0;\n}\n.accordion-flush .accordion-item {\n border-left: 0;\n border-right: 0;\n border-radius: 0;\n}\n.accordion-flush .accordion-item:first-child {\n border-top: 0;\n}\n.accordion-flush .accordion-item:last-child {\n border-bottom: 0;\n}\n.accordion-flush .accordion-item .accordion-button, .accordion-flush .accordion-item .accordion-button.collapsed {\n border-radius: 0;\n}\n\n[data-bs-theme=dark] .accordion-button::after {\n --ct-accordion-btn-icon: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%233b4ca7'%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 --ct-accordion-btn-active-icon: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%233b4ca7'%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}\n\n.breadcrumb {\n --ct-breadcrumb-padding-x: 0;\n --ct-breadcrumb-padding-y: 1.25rem;\n --ct-breadcrumb-margin-bottom: 1rem;\n --ct-breadcrumb-bg: ;\n --ct-breadcrumb-border-radius: ;\n --ct-breadcrumb-divider-color: var(--ct-secondary-color);\n --ct-breadcrumb-item-padding-x: 0.5rem;\n --ct-breadcrumb-item-active-color: var(--ct-secondary-color);\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -ms-flex-wrap: wrap;\n flex-wrap: wrap;\n padding: var(--ct-breadcrumb-padding-y) var(--ct-breadcrumb-padding-x);\n margin-bottom: var(--ct-breadcrumb-margin-bottom);\n font-size: var(--ct-breadcrumb-font-size);\n list-style: none;\n background-color: var(--ct-breadcrumb-bg);\n border-radius: var(--ct-breadcrumb-border-radius);\n}\n\n.breadcrumb-item + .breadcrumb-item {\n padding-right: var(--ct-breadcrumb-item-padding-x);\n}\n.breadcrumb-item + .breadcrumb-item::before {\n float: right;\n padding-left: var(--ct-breadcrumb-item-padding-x);\n color: var(--ct-breadcrumb-divider-color);\n content: var(--ct-breadcrumb-divider, \"\\ea6e\") ;\n}\n.breadcrumb-item.active {\n color: var(--ct-breadcrumb-item-active-color);\n}\n\n.pagination {\n --ct-pagination-padding-x: 0.75rem;\n --ct-pagination-padding-y: 0.375rem;\n --ct-pagination-font-size: 0.875rem;\n --ct-pagination-color: var(--ct-tertiary-color);\n --ct-pagination-bg: var(--ct-secondary-bg);\n --ct-pagination-border-width: var(--ct-border-width);\n --ct-pagination-border-color: var(--ct-border-color);\n --ct-pagination-border-radius: var(--ct-border-radius-sm);\n --ct-pagination-hover-color: var(--ct-link-hover-color);\n --ct-pagination-hover-bg: var(--ct-tertiary-bg);\n --ct-pagination-hover-border-color: var(--ct-border-color);\n --ct-pagination-focus-color: var(--ct-link-hover-color);\n --ct-pagination-focus-bg: var(--ct-secondary-bg);\n --ct-pagination-focus-box-shadow: none;\n --ct-pagination-active-color: #fff;\n --ct-pagination-active-bg: #4254ba;\n --ct-pagination-active-border-color: #4254ba;\n --ct-pagination-disabled-color: var(--ct-secondary-color);\n --ct-pagination-disabled-bg: var(--ct-secondary-bg);\n --ct-pagination-disabled-border-color: var(--ct-border-color);\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n padding-right: 0;\n list-style: none;\n}\n\n.page-link {\n position: relative;\n display: block;\n padding: var(--ct-pagination-padding-y) var(--ct-pagination-padding-x);\n font-size: var(--ct-pagination-font-size);\n color: var(--ct-pagination-color);\n background-color: var(--ct-pagination-bg);\n border: var(--ct-pagination-border-width) solid var(--ct-pagination-border-color);\n -webkit-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, -webkit-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, -webkit-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 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, -webkit-box-shadow 0.15s ease-in-out;\n}\n@media (prefers-reduced-motion: reduce) {\n .page-link {\n -webkit-transition: none;\n transition: none;\n }\n}\n.page-link:hover {\n z-index: 2;\n color: var(--ct-pagination-hover-color);\n background-color: var(--ct-pagination-hover-bg);\n border-color: var(--ct-pagination-hover-border-color);\n}\n.page-link:focus {\n z-index: 3;\n color: var(--ct-pagination-focus-color);\n background-color: var(--ct-pagination-focus-bg);\n outline: 0;\n -webkit-box-shadow: var(--ct-pagination-focus-box-shadow);\n box-shadow: var(--ct-pagination-focus-box-shadow);\n}\n.page-link.active, .active > .page-link {\n z-index: 3;\n color: var(--ct-pagination-active-color);\n background-color: var(--ct-pagination-active-bg);\n border-color: var(--ct-pagination-active-border-color);\n}\n.page-link.disabled, .disabled > .page-link {\n color: var(--ct-pagination-disabled-color);\n pointer-events: none;\n background-color: var(--ct-pagination-disabled-bg);\n border-color: var(--ct-pagination-disabled-border-color);\n}\n\n.page-item:not(:first-child) .page-link {\n margin-right: calc(var(--ct-border-width) * -1);\n}\n.page-item:first-child .page-link {\n border-top-right-radius: var(--ct-pagination-border-radius);\n border-bottom-right-radius: var(--ct-pagination-border-radius);\n}\n.page-item:last-child .page-link {\n border-top-left-radius: var(--ct-pagination-border-radius);\n border-bottom-left-radius: var(--ct-pagination-border-radius);\n}\n\n.pagination-lg {\n --ct-pagination-padding-x: 1.5rem;\n --ct-pagination-padding-y: 0.75rem;\n --ct-pagination-font-size: 1.21625rem;\n --ct-pagination-border-radius: var(--ct-border-radius);\n}\n\n.pagination-sm {\n --ct-pagination-padding-x: 0.5rem;\n --ct-pagination-padding-y: 0.25rem;\n --ct-pagination-font-size: 0.85rem;\n --ct-pagination-border-radius: var(--ct-border-radius-sm);\n}\n\n.badge {\n --ct-badge-padding-x: 0.4em;\n --ct-badge-padding-y: 0.25em;\n --ct-badge-font-size: 0.8em;\n --ct-badge-font-weight: 500;\n --ct-badge-color: #fff;\n --ct-badge-border-radius: 0.15rem;\n display: inline-block;\n padding: var(--ct-badge-padding-y) var(--ct-badge-padding-x);\n font-size: var(--ct-badge-font-size);\n font-weight: var(--ct-badge-font-weight);\n line-height: 1;\n color: var(--ct-badge-color);\n text-align: center;\n white-space: nowrap;\n vertical-align: baseline;\n border-radius: var(--ct-badge-border-radius);\n}\n.badge:empty {\n display: none;\n}\n\n.btn .badge {\n position: relative;\n top: -1px;\n}\n\n.alert {\n --ct-alert-bg: transparent;\n --ct-alert-padding-x: 1.25rem;\n --ct-alert-padding-y: 0.8rem;\n --ct-alert-margin-bottom: 1rem;\n --ct-alert-color: inherit;\n --ct-alert-border-color: transparent;\n --ct-alert-border: var(--ct-border-width) solid var(--ct-alert-border-color);\n --ct-alert-border-radius: 0.15rem;\n --ct-alert-link-color: inherit;\n position: relative;\n padding: var(--ct-alert-padding-y) var(--ct-alert-padding-x);\n margin-bottom: var(--ct-alert-margin-bottom);\n color: var(--ct-alert-color);\n background-color: var(--ct-alert-bg);\n border: var(--ct-alert-border);\n border-radius: var(--ct-alert-border-radius);\n}\n\n.alert-heading {\n color: inherit;\n}\n\n.alert-link {\n font-weight: 700;\n color: var(--ct-alert-link-color);\n}\n\n.alert-dismissible {\n padding-left: 3.75rem;\n}\n.alert-dismissible .btn-close {\n position: absolute;\n top: 0;\n left: 0;\n z-index: 2;\n padding: 1rem 1.25rem;\n}\n\n.alert-primary {\n --ct-alert-color: var(--ct-primary-text-emphasis);\n --ct-alert-bg: var(--ct-primary-bg-subtle);\n --ct-alert-border-color: var(--ct-primary-border-subtle);\n --ct-alert-link-color: var(--ct-primary-text-emphasis);\n}\n\n.alert-secondary {\n --ct-alert-color: var(--ct-secondary-text-emphasis);\n --ct-alert-bg: var(--ct-secondary-bg-subtle);\n --ct-alert-border-color: var(--ct-secondary-border-subtle);\n --ct-alert-link-color: var(--ct-secondary-text-emphasis);\n}\n\n.alert-success {\n --ct-alert-color: var(--ct-success-text-emphasis);\n --ct-alert-bg: var(--ct-success-bg-subtle);\n --ct-alert-border-color: var(--ct-success-border-subtle);\n --ct-alert-link-color: var(--ct-success-text-emphasis);\n}\n\n.alert-info {\n --ct-alert-color: var(--ct-info-text-emphasis);\n --ct-alert-bg: var(--ct-info-bg-subtle);\n --ct-alert-border-color: var(--ct-info-border-subtle);\n --ct-alert-link-color: var(--ct-info-text-emphasis);\n}\n\n.alert-warning {\n --ct-alert-color: var(--ct-warning-text-emphasis);\n --ct-alert-bg: var(--ct-warning-bg-subtle);\n --ct-alert-border-color: var(--ct-warning-border-subtle);\n --ct-alert-link-color: var(--ct-warning-text-emphasis);\n}\n\n.alert-danger {\n --ct-alert-color: var(--ct-danger-text-emphasis);\n --ct-alert-bg: var(--ct-danger-bg-subtle);\n --ct-alert-border-color: var(--ct-danger-border-subtle);\n --ct-alert-link-color: var(--ct-danger-text-emphasis);\n}\n\n.alert-light {\n --ct-alert-color: var(--ct-light-text-emphasis);\n --ct-alert-bg: var(--ct-light-bg-subtle);\n --ct-alert-border-color: var(--ct-light-border-subtle);\n --ct-alert-link-color: var(--ct-light-text-emphasis);\n}\n\n.alert-dark {\n --ct-alert-color: var(--ct-dark-text-emphasis);\n --ct-alert-bg: var(--ct-dark-bg-subtle);\n --ct-alert-border-color: var(--ct-dark-border-subtle);\n --ct-alert-link-color: var(--ct-dark-text-emphasis);\n}\n\n.alert-purple {\n --ct-alert-color: var(--ct-purple-text-emphasis);\n --ct-alert-bg: var(--ct-purple-bg-subtle);\n --ct-alert-border-color: var(--ct-purple-border-subtle);\n --ct-alert-link-color: var(--ct-purple-text-emphasis);\n}\n\n.alert-pink {\n --ct-alert-color: var(--ct-pink-text-emphasis);\n --ct-alert-bg: var(--ct-pink-bg-subtle);\n --ct-alert-border-color: var(--ct-pink-border-subtle);\n --ct-alert-link-color: var(--ct-pink-text-emphasis);\n}\n\n@-webkit-keyframes progress-bar-stripes {\n 0% {\n background-position-x: 1rem;\n }\n}\n\n@keyframes progress-bar-stripes {\n 0% {\n background-position-x: 1rem;\n }\n}\n.progress,\n.progress-stacked {\n --ct-progress-height: 1rem;\n --ct-progress-font-size: 0.65625rem;\n --ct-progress-bg: var(--ct-body-bg);\n --ct-progress-border-radius: var(--ct-border-radius);\n --ct-progress-box-shadow: var(--ct-box-shadow-inset);\n --ct-progress-bar-color: #fff;\n --ct-progress-bar-bg: #4254ba;\n --ct-progress-bar-transition: width 0.6s ease;\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n height: var(--ct-progress-height);\n overflow: hidden;\n font-size: var(--ct-progress-font-size);\n background-color: var(--ct-progress-bg);\n border-radius: var(--ct-progress-border-radius);\n}\n\n.progress-bar {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-orient: vertical;\n -webkit-box-direction: normal;\n -ms-flex-direction: column;\n flex-direction: column;\n -webkit-box-pack: center;\n -ms-flex-pack: center;\n justify-content: center;\n overflow: hidden;\n color: var(--ct-progress-bar-color);\n text-align: center;\n white-space: nowrap;\n background-color: var(--ct-progress-bar-bg);\n -webkit-transition: var(--ct-progress-bar-transition);\n transition: var(--ct-progress-bar-transition);\n}\n@media (prefers-reduced-motion: reduce) {\n .progress-bar {\n -webkit-transition: none;\n transition: none;\n }\n}\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: var(--ct-progress-height) var(--ct-progress-height);\n}\n\n.progress-stacked > .progress {\n overflow: visible;\n}\n\n.progress-stacked > .progress > .progress-bar {\n width: 100%;\n}\n\n.progress-bar-animated {\n -webkit-animation: 1s linear infinite progress-bar-stripes;\n animation: 1s linear infinite progress-bar-stripes;\n}\n@media (prefers-reduced-motion: reduce) {\n .progress-bar-animated {\n -webkit-animation: none;\n animation: none;\n }\n}\n\n.list-group {\n --ct-list-group-color: var(--ct-tertiary-color);\n --ct-list-group-bg: var(--ct-secondary-bg);\n --ct-list-group-border-color: var(--ct-border-color);\n --ct-list-group-border-width: var(--ct-border-width);\n --ct-list-group-border-radius: var(--ct-border-radius);\n --ct-list-group-item-padding-x: 1rem;\n --ct-list-group-item-padding-y: 0.625rem;\n --ct-list-group-action-color: var(--ct-secondary-color);\n --ct-list-group-action-hover-color: var(--ct-body-color);\n --ct-list-group-action-hover-bg: var(--ct-tertiary-bg);\n --ct-list-group-action-active-color: var(--ct-body-color);\n --ct-list-group-action-active-bg: var(--ct-secondary-bg);\n --ct-list-group-disabled-color: var(--ct-secondary-color);\n --ct-list-group-disabled-bg: var(--ct-tertiary-bg);\n --ct-list-group-active-color: #fff;\n --ct-list-group-active-bg: #4254ba;\n --ct-list-group-active-border-color: #4254ba;\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-orient: vertical;\n -webkit-box-direction: normal;\n -ms-flex-direction: column;\n flex-direction: column;\n padding-right: 0;\n margin-bottom: 0;\n border-radius: var(--ct-list-group-border-radius);\n}\n\n.list-group-numbered {\n list-style-type: none;\n counter-reset: section;\n}\n.list-group-numbered > .list-group-item::before {\n content: counters(section, \".\") \". \";\n counter-increment: section;\n}\n\n.list-group-item-action {\n width: 100%;\n color: var(--ct-list-group-action-color);\n text-align: inherit;\n}\n.list-group-item-action:hover, .list-group-item-action:focus {\n z-index: 1;\n color: var(--ct-list-group-action-hover-color);\n text-decoration: none;\n background-color: var(--ct-list-group-action-hover-bg);\n}\n.list-group-item-action:active {\n color: var(--ct-list-group-action-active-color);\n background-color: var(--ct-list-group-action-active-bg);\n}\n\n.list-group-item {\n position: relative;\n display: block;\n padding: var(--ct-list-group-item-padding-y) var(--ct-list-group-item-padding-x);\n color: var(--ct-list-group-color);\n background-color: var(--ct-list-group-bg);\n border: var(--ct-list-group-border-width) solid var(--ct-list-group-border-color);\n}\n.list-group-item:first-child {\n border-top-right-radius: inherit;\n border-top-left-radius: inherit;\n}\n.list-group-item:last-child {\n border-bottom-left-radius: inherit;\n border-bottom-right-radius: inherit;\n}\n.list-group-item.disabled, .list-group-item:disabled {\n color: var(--ct-list-group-disabled-color);\n pointer-events: none;\n background-color: var(--ct-list-group-disabled-bg);\n}\n.list-group-item.active {\n z-index: 2;\n color: var(--ct-list-group-active-color);\n background-color: var(--ct-list-group-active-bg);\n border-color: var(--ct-list-group-active-border-color);\n}\n.list-group-item + .list-group-item {\n border-top-width: 0;\n}\n.list-group-item + .list-group-item.active {\n margin-top: calc(-1 * var(--ct-list-group-border-width));\n border-top-width: var(--ct-list-group-border-width);\n}\n\n.list-group-horizontal {\n -webkit-box-orient: horizontal;\n -webkit-box-direction: normal;\n -ms-flex-direction: row;\n flex-direction: row;\n}\n.list-group-horizontal > .list-group-item:first-child:not(:last-child) {\n border-bottom-right-radius: var(--ct-list-group-border-radius);\n border-top-left-radius: 0;\n}\n.list-group-horizontal > .list-group-item:last-child:not(:first-child) {\n border-top-left-radius: var(--ct-list-group-border-radius);\n border-bottom-right-radius: 0;\n}\n.list-group-horizontal > .list-group-item.active {\n margin-top: 0;\n}\n.list-group-horizontal > .list-group-item + .list-group-item {\n border-top-width: var(--ct-list-group-border-width);\n border-right-width: 0;\n}\n.list-group-horizontal > .list-group-item + .list-group-item.active {\n margin-right: calc(-1 * var(--ct-list-group-border-width));\n border-right-width: var(--ct-list-group-border-width);\n}\n\n@media (min-width: 576px) {\n .list-group-horizontal-sm {\n -webkit-box-orient: horizontal;\n -webkit-box-direction: normal;\n -ms-flex-direction: row;\n flex-direction: row;\n }\n .list-group-horizontal-sm > .list-group-item:first-child:not(:last-child) {\n border-bottom-right-radius: var(--ct-list-group-border-radius);\n border-top-left-radius: 0;\n }\n .list-group-horizontal-sm > .list-group-item:last-child:not(:first-child) {\n border-top-left-radius: var(--ct-list-group-border-radius);\n border-bottom-right-radius: 0;\n }\n .list-group-horizontal-sm > .list-group-item.active {\n margin-top: 0;\n }\n .list-group-horizontal-sm > .list-group-item + .list-group-item {\n border-top-width: var(--ct-list-group-border-width);\n border-right-width: 0;\n }\n .list-group-horizontal-sm > .list-group-item + .list-group-item.active {\n margin-right: calc(-1 * var(--ct-list-group-border-width));\n border-right-width: var(--ct-list-group-border-width);\n }\n}\n@media (min-width: 768px) {\n .list-group-horizontal-md {\n -webkit-box-orient: horizontal;\n -webkit-box-direction: normal;\n -ms-flex-direction: row;\n flex-direction: row;\n }\n .list-group-horizontal-md > .list-group-item:first-child:not(:last-child) {\n border-bottom-right-radius: var(--ct-list-group-border-radius);\n border-top-left-radius: 0;\n }\n .list-group-horizontal-md > .list-group-item:last-child:not(:first-child) {\n border-top-left-radius: var(--ct-list-group-border-radius);\n border-bottom-right-radius: 0;\n }\n .list-group-horizontal-md > .list-group-item.active {\n margin-top: 0;\n }\n .list-group-horizontal-md > .list-group-item + .list-group-item {\n border-top-width: var(--ct-list-group-border-width);\n border-right-width: 0;\n }\n .list-group-horizontal-md > .list-group-item + .list-group-item.active {\n margin-right: calc(-1 * var(--ct-list-group-border-width));\n border-right-width: var(--ct-list-group-border-width);\n }\n}\n@media (min-width: 992px) {\n .list-group-horizontal-lg {\n -webkit-box-orient: horizontal;\n -webkit-box-direction: normal;\n -ms-flex-direction: row;\n flex-direction: row;\n }\n .list-group-horizontal-lg > .list-group-item:first-child:not(:last-child) {\n border-bottom-right-radius: var(--ct-list-group-border-radius);\n border-top-left-radius: 0;\n }\n .list-group-horizontal-lg > .list-group-item:last-child:not(:first-child) {\n border-top-left-radius: var(--ct-list-group-border-radius);\n border-bottom-right-radius: 0;\n }\n .list-group-horizontal-lg > .list-group-item.active {\n margin-top: 0;\n }\n .list-group-horizontal-lg > .list-group-item + .list-group-item {\n border-top-width: var(--ct-list-group-border-width);\n border-right-width: 0;\n }\n .list-group-horizontal-lg > .list-group-item + .list-group-item.active {\n margin-right: calc(-1 * var(--ct-list-group-border-width));\n border-right-width: var(--ct-list-group-border-width);\n }\n}\n@media (min-width: 1200px) {\n .list-group-horizontal-xl {\n -webkit-box-orient: horizontal;\n -webkit-box-direction: normal;\n -ms-flex-direction: row;\n flex-direction: row;\n }\n .list-group-horizontal-xl > .list-group-item:first-child:not(:last-child) {\n border-bottom-right-radius: var(--ct-list-group-border-radius);\n border-top-left-radius: 0;\n }\n .list-group-horizontal-xl > .list-group-item:last-child:not(:first-child) {\n border-top-left-radius: var(--ct-list-group-border-radius);\n border-bottom-right-radius: 0;\n }\n .list-group-horizontal-xl > .list-group-item.active {\n margin-top: 0;\n }\n .list-group-horizontal-xl > .list-group-item + .list-group-item {\n border-top-width: var(--ct-list-group-border-width);\n border-right-width: 0;\n }\n .list-group-horizontal-xl > .list-group-item + .list-group-item.active {\n margin-right: calc(-1 * var(--ct-list-group-border-width));\n border-right-width: var(--ct-list-group-border-width);\n }\n}\n@media (min-width: 1400px) {\n .list-group-horizontal-xxl {\n -webkit-box-orient: horizontal;\n -webkit-box-direction: normal;\n -ms-flex-direction: row;\n flex-direction: row;\n }\n .list-group-horizontal-xxl > .list-group-item:first-child:not(:last-child) {\n border-bottom-right-radius: var(--ct-list-group-border-radius);\n border-top-left-radius: 0;\n }\n .list-group-horizontal-xxl > .list-group-item:last-child:not(:first-child) {\n border-top-left-radius: var(--ct-list-group-border-radius);\n border-bottom-right-radius: 0;\n }\n .list-group-horizontal-xxl > .list-group-item.active {\n margin-top: 0;\n }\n .list-group-horizontal-xxl > .list-group-item + .list-group-item {\n border-top-width: var(--ct-list-group-border-width);\n border-right-width: 0;\n }\n .list-group-horizontal-xxl > .list-group-item + .list-group-item.active {\n margin-right: calc(-1 * var(--ct-list-group-border-width));\n border-right-width: var(--ct-list-group-border-width);\n }\n}\n.list-group-flush {\n border-radius: 0;\n}\n.list-group-flush > .list-group-item {\n border-width: 0 0 var(--ct-list-group-border-width);\n}\n.list-group-flush > .list-group-item:last-child {\n border-bottom-width: 0;\n}\n\n.list-group-item-primary {\n --ct-list-group-color: var(--ct-primary-text-emphasis);\n --ct-list-group-bg: var(--ct-primary-bg-subtle);\n --ct-list-group-border-color: var(--ct-primary-border-subtle);\n --ct-list-group-action-hover-color: var(--ct-emphasis-color);\n --ct-list-group-action-hover-bg: var(--ct-primary-border-subtle);\n --ct-list-group-action-active-color: var(--ct-emphasis-color);\n --ct-list-group-action-active-bg: var(--ct-primary-border-subtle);\n --ct-list-group-active-color: var(--ct-primary-bg-subtle);\n --ct-list-group-active-bg: var(--ct-primary-text-emphasis);\n --ct-list-group-active-border-color: var(--ct-primary-text-emphasis);\n}\n\n.list-group-item-secondary {\n --ct-list-group-color: var(--ct-secondary-text-emphasis);\n --ct-list-group-bg: var(--ct-secondary-bg-subtle);\n --ct-list-group-border-color: var(--ct-secondary-border-subtle);\n --ct-list-group-action-hover-color: var(--ct-emphasis-color);\n --ct-list-group-action-hover-bg: var(--ct-secondary-border-subtle);\n --ct-list-group-action-active-color: var(--ct-emphasis-color);\n --ct-list-group-action-active-bg: var(--ct-secondary-border-subtle);\n --ct-list-group-active-color: var(--ct-secondary-bg-subtle);\n --ct-list-group-active-bg: var(--ct-secondary-text-emphasis);\n --ct-list-group-active-border-color: var(--ct-secondary-text-emphasis);\n}\n\n.list-group-item-success {\n --ct-list-group-color: var(--ct-success-text-emphasis);\n --ct-list-group-bg: var(--ct-success-bg-subtle);\n --ct-list-group-border-color: var(--ct-success-border-subtle);\n --ct-list-group-action-hover-color: var(--ct-emphasis-color);\n --ct-list-group-action-hover-bg: var(--ct-success-border-subtle);\n --ct-list-group-action-active-color: var(--ct-emphasis-color);\n --ct-list-group-action-active-bg: var(--ct-success-border-subtle);\n --ct-list-group-active-color: var(--ct-success-bg-subtle);\n --ct-list-group-active-bg: var(--ct-success-text-emphasis);\n --ct-list-group-active-border-color: var(--ct-success-text-emphasis);\n}\n\n.list-group-item-info {\n --ct-list-group-color: var(--ct-info-text-emphasis);\n --ct-list-group-bg: var(--ct-info-bg-subtle);\n --ct-list-group-border-color: var(--ct-info-border-subtle);\n --ct-list-group-action-hover-color: var(--ct-emphasis-color);\n --ct-list-group-action-hover-bg: var(--ct-info-border-subtle);\n --ct-list-group-action-active-color: var(--ct-emphasis-color);\n --ct-list-group-action-active-bg: var(--ct-info-border-subtle);\n --ct-list-group-active-color: var(--ct-info-bg-subtle);\n --ct-list-group-active-bg: var(--ct-info-text-emphasis);\n --ct-list-group-active-border-color: var(--ct-info-text-emphasis);\n}\n\n.list-group-item-warning {\n --ct-list-group-color: var(--ct-warning-text-emphasis);\n --ct-list-group-bg: var(--ct-warning-bg-subtle);\n --ct-list-group-border-color: var(--ct-warning-border-subtle);\n --ct-list-group-action-hover-color: var(--ct-emphasis-color);\n --ct-list-group-action-hover-bg: var(--ct-warning-border-subtle);\n --ct-list-group-action-active-color: var(--ct-emphasis-color);\n --ct-list-group-action-active-bg: var(--ct-warning-border-subtle);\n --ct-list-group-active-color: var(--ct-warning-bg-subtle);\n --ct-list-group-active-bg: var(--ct-warning-text-emphasis);\n --ct-list-group-active-border-color: var(--ct-warning-text-emphasis);\n}\n\n.list-group-item-danger {\n --ct-list-group-color: var(--ct-danger-text-emphasis);\n --ct-list-group-bg: var(--ct-danger-bg-subtle);\n --ct-list-group-border-color: var(--ct-danger-border-subtle);\n --ct-list-group-action-hover-color: var(--ct-emphasis-color);\n --ct-list-group-action-hover-bg: var(--ct-danger-border-subtle);\n --ct-list-group-action-active-color: var(--ct-emphasis-color);\n --ct-list-group-action-active-bg: var(--ct-danger-border-subtle);\n --ct-list-group-active-color: var(--ct-danger-bg-subtle);\n --ct-list-group-active-bg: var(--ct-danger-text-emphasis);\n --ct-list-group-active-border-color: var(--ct-danger-text-emphasis);\n}\n\n.list-group-item-light {\n --ct-list-group-color: var(--ct-light-text-emphasis);\n --ct-list-group-bg: var(--ct-light-bg-subtle);\n --ct-list-group-border-color: var(--ct-light-border-subtle);\n --ct-list-group-action-hover-color: var(--ct-emphasis-color);\n --ct-list-group-action-hover-bg: var(--ct-light-border-subtle);\n --ct-list-group-action-active-color: var(--ct-emphasis-color);\n --ct-list-group-action-active-bg: var(--ct-light-border-subtle);\n --ct-list-group-active-color: var(--ct-light-bg-subtle);\n --ct-list-group-active-bg: var(--ct-light-text-emphasis);\n --ct-list-group-active-border-color: var(--ct-light-text-emphasis);\n}\n\n.list-group-item-dark {\n --ct-list-group-color: var(--ct-dark-text-emphasis);\n --ct-list-group-bg: var(--ct-dark-bg-subtle);\n --ct-list-group-border-color: var(--ct-dark-border-subtle);\n --ct-list-group-action-hover-color: var(--ct-emphasis-color);\n --ct-list-group-action-hover-bg: var(--ct-dark-border-subtle);\n --ct-list-group-action-active-color: var(--ct-emphasis-color);\n --ct-list-group-action-active-bg: var(--ct-dark-border-subtle);\n --ct-list-group-active-color: var(--ct-dark-bg-subtle);\n --ct-list-group-active-bg: var(--ct-dark-text-emphasis);\n --ct-list-group-active-border-color: var(--ct-dark-text-emphasis);\n}\n\n.list-group-item-purple {\n --ct-list-group-color: var(--ct-purple-text-emphasis);\n --ct-list-group-bg: var(--ct-purple-bg-subtle);\n --ct-list-group-border-color: var(--ct-purple-border-subtle);\n --ct-list-group-action-hover-color: var(--ct-emphasis-color);\n --ct-list-group-action-hover-bg: var(--ct-purple-border-subtle);\n --ct-list-group-action-active-color: var(--ct-emphasis-color);\n --ct-list-group-action-active-bg: var(--ct-purple-border-subtle);\n --ct-list-group-active-color: var(--ct-purple-bg-subtle);\n --ct-list-group-active-bg: var(--ct-purple-text-emphasis);\n --ct-list-group-active-border-color: var(--ct-purple-text-emphasis);\n}\n\n.list-group-item-pink {\n --ct-list-group-color: var(--ct-pink-text-emphasis);\n --ct-list-group-bg: var(--ct-pink-bg-subtle);\n --ct-list-group-border-color: var(--ct-pink-border-subtle);\n --ct-list-group-action-hover-color: var(--ct-emphasis-color);\n --ct-list-group-action-hover-bg: var(--ct-pink-border-subtle);\n --ct-list-group-action-active-color: var(--ct-emphasis-color);\n --ct-list-group-action-active-bg: var(--ct-pink-border-subtle);\n --ct-list-group-active-color: var(--ct-pink-bg-subtle);\n --ct-list-group-active-bg: var(--ct-pink-text-emphasis);\n --ct-list-group-active-border-color: var(--ct-pink-text-emphasis);\n}\n\n.btn-close {\n --ct-btn-close-color: var(--ct-secondary-color);\n --ct-btn-close-bg: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='var%28--ct-secondary-color%29'%3e%3cpath d='M.293.293a1 1 0 0 1 1.414 0L8 6.586 14.293.293a1 1 0 1 1 1.414 1.414L9.414 8l6.293 6.293a1 1 0 0 1-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 0 1-1.414-1.414L6.586 8 .293 1.707a1 1 0 0 1 0-1.414z'/%3e%3c/svg%3e\");\n --ct-btn-close-opacity: 0.5;\n --ct-btn-close-hover-opacity: 0.8;\n --ct-btn-close-focus-shadow: none;\n --ct-btn-close-focus-opacity: 1;\n --ct-btn-close-disabled-opacity: 0.25;\n --ct-btn-close-white-filter: invert(1) grayscale(100%) brightness(200%);\n -webkit-box-sizing: content-box;\n box-sizing: content-box;\n width: 1em;\n height: 1em;\n padding: 0.25em 0.25em;\n color: var(--ct-btn-close-color);\n background: transparent var(--ct-btn-close-bg) center/1em auto no-repeat;\n border: 0;\n border-radius: 0.15rem;\n opacity: var(--ct-btn-close-opacity);\n}\n.btn-close:hover {\n color: var(--ct-btn-close-color);\n text-decoration: none;\n opacity: var(--ct-btn-close-hover-opacity);\n}\n.btn-close:focus {\n outline: 0;\n -webkit-box-shadow: var(--ct-btn-close-focus-shadow);\n box-shadow: var(--ct-btn-close-focus-shadow);\n opacity: var(--ct-btn-close-focus-opacity);\n}\n.btn-close:disabled, .btn-close.disabled {\n pointer-events: none;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n opacity: var(--ct-btn-close-disabled-opacity);\n}\n\n.btn-close-white {\n -webkit-filter: var(--ct-btn-close-white-filter);\n filter: var(--ct-btn-close-white-filter);\n}\n\n[data-bs-theme=dark] .btn-close {\n -webkit-filter: var(--ct-btn-close-white-filter);\n filter: var(--ct-btn-close-white-filter);\n}\n\n.toast {\n --ct-toast-zindex: 1090;\n --ct-toast-padding-x: 0.75rem;\n --ct-toast-padding-y: 0.5rem;\n --ct-toast-spacing: 0.6rem;\n --ct-toast-max-width: 350px;\n --ct-toast-font-size: 0.875rem;\n --ct-toast-color: ;\n --ct-toast-bg: var(--ct-secondary-bg);\n --ct-toast-border-width: var(--ct-border-width);\n --ct-toast-border-color: var(--ct-border-color);\n --ct-toast-border-radius: var(--ct-border-radius);\n --ct-toast-box-shadow: var(--ct-box-shadow);\n --ct-toast-header-color: var(--ct-secondary-color);\n --ct-toast-header-bg: rgba(var(--ct-body-bg-rgb), 0.85);\n --ct-toast-header-border-color: var(--ct-border-color);\n width: var(--ct-toast-max-width);\n max-width: 100%;\n font-size: var(--ct-toast-font-size);\n color: var(--ct-toast-color);\n pointer-events: auto;\n background-color: var(--ct-toast-bg);\n background-clip: padding-box;\n border: var(--ct-toast-border-width) solid var(--ct-toast-border-color);\n -webkit-box-shadow: var(--ct-toast-box-shadow);\n box-shadow: var(--ct-toast-box-shadow);\n border-radius: var(--ct-toast-border-radius);\n}\n.toast.showing {\n opacity: 0;\n}\n.toast:not(.show) {\n display: none;\n}\n\n.toast-container {\n --ct-toast-zindex: 1090;\n position: absolute;\n z-index: var(--ct-toast-zindex);\n width: -webkit-max-content;\n width: -moz-max-content;\n width: max-content;\n max-width: 100%;\n pointer-events: none;\n}\n.toast-container > :not(:last-child) {\n margin-bottom: var(--ct-toast-spacing);\n}\n\n.toast-header {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n padding: var(--ct-toast-padding-y) var(--ct-toast-padding-x);\n color: var(--ct-toast-header-color);\n background-color: var(--ct-toast-header-bg);\n background-clip: padding-box;\n border-bottom: var(--ct-toast-border-width) solid var(--ct-toast-header-border-color);\n border-top-right-radius: calc(var(--ct-toast-border-radius) - var(--ct-toast-border-width));\n border-top-left-radius: calc(var(--ct-toast-border-radius) - var(--ct-toast-border-width));\n}\n.toast-header .btn-close {\n margin-left: calc(-0.5 * var(--ct-toast-padding-x));\n margin-right: var(--ct-toast-padding-x);\n}\n\n.toast-body {\n padding: var(--ct-toast-padding-x);\n word-wrap: break-word;\n}\n\n.modal {\n --ct-modal-zindex: 1055;\n --ct-modal-width: 500px;\n --ct-modal-padding: 0.75rem;\n --ct-modal-margin: 0.5rem;\n --ct-modal-color: ;\n --ct-modal-bg: var(--ct-secondary-bg);\n --ct-modal-border-color: transparent;\n --ct-modal-border-width: var(--ct-border-width);\n --ct-modal-border-radius: var(--ct-border-radius-sm);\n --ct-modal-box-shadow: 0 0.125rem 0.25rem rgba(var(--ct-body-color-rgb), 0.15);\n --ct-modal-inner-border-radius: calc(var(--ct-border-radius-sm) - (var(--ct-border-width)));\n --ct-modal-header-padding-x: 0.75rem;\n --ct-modal-header-padding-y: 0.75rem;\n --ct-modal-header-padding: 0.75rem 0.75rem;\n --ct-modal-header-border-color: var(--ct-border-color);\n --ct-modal-header-border-width: var(--ct-border-width);\n --ct-modal-title-line-height: 1.5;\n --ct-modal-footer-gap: 0.5rem;\n --ct-modal-footer-bg: ;\n --ct-modal-footer-border-color: var(--ct-border-color);\n --ct-modal-footer-border-width: var(--ct-border-width);\n position: fixed;\n top: 0;\n right: 0;\n z-index: var(--ct-modal-zindex);\n display: none;\n width: 100%;\n height: 100%;\n overflow-x: hidden;\n overflow-y: auto;\n outline: 0;\n}\n\n.modal-dialog {\n position: relative;\n width: auto;\n margin: var(--ct-modal-margin);\n pointer-events: none;\n}\n.modal.fade .modal-dialog {\n -webkit-transition: -webkit-transform 0.3s ease-out;\n transition: -webkit-transform 0.3s ease-out;\n transition: transform 0.3s ease-out;\n transition: transform 0.3s ease-out, -webkit-transform 0.3s ease-out;\n -webkit-transform: translate(0, -50px);\n transform: translate(0, -50px);\n}\n@media (prefers-reduced-motion: reduce) {\n .modal.fade .modal-dialog {\n -webkit-transition: none;\n transition: none;\n }\n}\n.modal.show .modal-dialog {\n -webkit-transform: none;\n transform: none;\n}\n.modal.modal-static .modal-dialog {\n -webkit-transform: scale(1.02);\n transform: scale(1.02);\n}\n\n.modal-dialog-scrollable {\n height: calc(100% - var(--ct-modal-margin) * 2);\n}\n.modal-dialog-scrollable .modal-content {\n max-height: 100%;\n overflow: hidden;\n}\n.modal-dialog-scrollable .modal-body {\n overflow-y: auto;\n}\n\n.modal-dialog-centered {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n min-height: calc(100% - var(--ct-modal-margin) * 2);\n}\n\n.modal-content {\n position: relative;\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-orient: vertical;\n -webkit-box-direction: normal;\n -ms-flex-direction: column;\n flex-direction: column;\n width: 100%;\n color: var(--ct-modal-color);\n pointer-events: auto;\n background-color: var(--ct-modal-bg);\n background-clip: padding-box;\n border: var(--ct-modal-border-width) solid var(--ct-modal-border-color);\n border-radius: var(--ct-modal-border-radius);\n outline: 0;\n}\n\n.modal-backdrop {\n --ct-backdrop-zindex: 1050;\n --ct-backdrop-bg: var(--ct-emphasis-color);\n --ct-backdrop-opacity: 0.75;\n position: fixed;\n top: 0;\n right: 0;\n z-index: var(--ct-backdrop-zindex);\n width: 100vw;\n height: 100vh;\n background-color: var(--ct-backdrop-bg);\n}\n.modal-backdrop.fade {\n opacity: 0;\n}\n.modal-backdrop.show {\n opacity: var(--ct-backdrop-opacity);\n}\n\n.modal-header {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -ms-flex-negative: 0;\n flex-shrink: 0;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n -webkit-box-pack: justify;\n -ms-flex-pack: justify;\n justify-content: space-between;\n padding: var(--ct-modal-header-padding);\n border-bottom: var(--ct-modal-header-border-width) solid var(--ct-modal-header-border-color);\n border-top-right-radius: var(--ct-modal-inner-border-radius);\n border-top-left-radius: var(--ct-modal-inner-border-radius);\n}\n.modal-header .btn-close {\n padding: calc(var(--ct-modal-header-padding-y) * 0.5) calc(var(--ct-modal-header-padding-x) * 0.5);\n margin: calc(-0.5 * var(--ct-modal-header-padding-y)) auto calc(-0.5 * var(--ct-modal-header-padding-y)) calc(-0.5 * var(--ct-modal-header-padding-x));\n}\n\n.modal-title {\n margin-bottom: 0;\n line-height: var(--ct-modal-title-line-height);\n}\n\n.modal-body {\n position: relative;\n -webkit-box-flex: 1;\n -ms-flex: 1 1 auto;\n flex: 1 1 auto;\n padding: var(--ct-modal-padding);\n}\n\n.modal-footer {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -ms-flex-negative: 0;\n flex-shrink: 0;\n -ms-flex-wrap: wrap;\n flex-wrap: wrap;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n -webkit-box-pack: end;\n -ms-flex-pack: end;\n justify-content: flex-end;\n padding: calc(var(--ct-modal-padding) - var(--ct-modal-footer-gap) * 0.5);\n background-color: var(--ct-modal-footer-bg);\n border-top: var(--ct-modal-footer-border-width) solid var(--ct-modal-footer-border-color);\n border-bottom-left-radius: var(--ct-modal-inner-border-radius);\n border-bottom-right-radius: var(--ct-modal-inner-border-radius);\n}\n.modal-footer > * {\n margin: calc(var(--ct-modal-footer-gap) * 0.5);\n}\n\n@media (min-width: 576px) {\n .modal {\n --ct-modal-margin: 1.75rem;\n --ct-modal-box-shadow: var(--ct-box-shadow);\n }\n .modal-dialog {\n max-width: var(--ct-modal-width);\n margin-left: auto;\n margin-right: auto;\n }\n .modal-sm {\n --ct-modal-width: 300px;\n }\n}\n@media (min-width: 992px) {\n .modal-lg,\n.modal-xl {\n --ct-modal-width: 800px;\n }\n}\n@media (min-width: 1200px) {\n .modal-xl {\n --ct-modal-width: 1140px;\n }\n}\n.modal-fullscreen {\n width: 100vw;\n max-width: none;\n height: 100%;\n margin: 0;\n}\n.modal-fullscreen .modal-content {\n height: 100%;\n border: 0;\n border-radius: 0;\n}\n.modal-fullscreen .modal-header,\n.modal-fullscreen .modal-footer {\n border-radius: 0;\n}\n.modal-fullscreen .modal-body {\n overflow-y: auto;\n}\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 }\n .modal-fullscreen-sm-down .modal-content {\n height: 100%;\n border: 0;\n border-radius: 0;\n }\n .modal-fullscreen-sm-down .modal-header,\n.modal-fullscreen-sm-down .modal-footer {\n border-radius: 0;\n }\n .modal-fullscreen-sm-down .modal-body {\n overflow-y: auto;\n }\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 }\n .modal-fullscreen-md-down .modal-content {\n height: 100%;\n border: 0;\n border-radius: 0;\n }\n .modal-fullscreen-md-down .modal-header,\n.modal-fullscreen-md-down .modal-footer {\n border-radius: 0;\n }\n .modal-fullscreen-md-down .modal-body {\n overflow-y: auto;\n }\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 }\n .modal-fullscreen-lg-down .modal-content {\n height: 100%;\n border: 0;\n border-radius: 0;\n }\n .modal-fullscreen-lg-down .modal-header,\n.modal-fullscreen-lg-down .modal-footer {\n border-radius: 0;\n }\n .modal-fullscreen-lg-down .modal-body {\n overflow-y: auto;\n }\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 }\n .modal-fullscreen-xl-down .modal-content {\n height: 100%;\n border: 0;\n border-radius: 0;\n }\n .modal-fullscreen-xl-down .modal-header,\n.modal-fullscreen-xl-down .modal-footer {\n border-radius: 0;\n }\n .modal-fullscreen-xl-down .modal-body {\n overflow-y: auto;\n }\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 }\n .modal-fullscreen-xxl-down .modal-content {\n height: 100%;\n border: 0;\n border-radius: 0;\n }\n .modal-fullscreen-xxl-down .modal-header,\n.modal-fullscreen-xxl-down .modal-footer {\n border-radius: 0;\n }\n .modal-fullscreen-xxl-down .modal-body {\n overflow-y: auto;\n }\n}\n.tooltip {\n --ct-tooltip-zindex: 1080;\n --ct-tooltip-max-width: 200px;\n --ct-tooltip-padding-x: 0.625rem;\n --ct-tooltip-padding-y: 0.3125rem;\n --ct-tooltip-margin: ;\n --ct-tooltip-font-size: 0.85rem;\n --ct-tooltip-color: var(--ct-body-bg);\n --ct-tooltip-bg: var(--ct-body-color);\n --ct-tooltip-border-radius: var(--ct-border-radius);\n --ct-tooltip-opacity: 1;\n --ct-tooltip-arrow-width: 0.8rem;\n --ct-tooltip-arrow-height: 0.4rem;\n z-index: var(--ct-tooltip-zindex);\n display: block;\n margin: var(--ct-tooltip-margin);\n font-family: var(--ct-font-sans-serif);\n font-style: normal;\n font-weight: 400;\n line-height: 1.5;\n text-align: right;\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 white-space: normal;\n word-spacing: normal;\n line-break: auto;\n font-size: var(--ct-tooltip-font-size);\n word-wrap: break-word;\n opacity: 0;\n}\n.tooltip.show {\n opacity: var(--ct-tooltip-opacity);\n}\n.tooltip .tooltip-arrow {\n display: block;\n width: var(--ct-tooltip-arrow-width);\n height: var(--ct-tooltip-arrow-height);\n}\n.tooltip .tooltip-arrow::before {\n position: absolute;\n content: \"\";\n border-color: transparent;\n border-style: solid;\n}\n\n.bs-tooltip-top .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow {\n bottom: calc(-1 * var(--ct-tooltip-arrow-height));\n}\n.bs-tooltip-top .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow::before {\n top: -1px;\n border-width: var(--ct-tooltip-arrow-height) calc(var(--ct-tooltip-arrow-width) * 0.5) 0;\n border-top-color: var(--ct-tooltip-bg);\n}\n.bs-tooltip-end .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow {\n left: calc(-1 * var(--ct-tooltip-arrow-height));\n width: var(--ct-tooltip-arrow-height);\n height: var(--ct-tooltip-arrow-width);\n}\n.bs-tooltip-end .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow::before {\n right: -1px;\n border-width: calc(var(--ct-tooltip-arrow-width) * 0.5) var(--ct-tooltip-arrow-height) calc(var(--ct-tooltip-arrow-width) * 0.5) 0;\n border-right-color: var(--ct-tooltip-bg);\n}\n.bs-tooltip-bottom .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow {\n top: calc(-1 * var(--ct-tooltip-arrow-height));\n}\n.bs-tooltip-bottom .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow::before {\n bottom: -1px;\n border-width: 0 calc(var(--ct-tooltip-arrow-width) * 0.5) var(--ct-tooltip-arrow-height);\n border-bottom-color: var(--ct-tooltip-bg);\n}\n.bs-tooltip-start .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow {\n right: calc(-1 * var(--ct-tooltip-arrow-height));\n width: var(--ct-tooltip-arrow-height);\n height: var(--ct-tooltip-arrow-width);\n}\n.bs-tooltip-start .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow::before {\n left: -1px;\n border-width: calc(var(--ct-tooltip-arrow-width) * 0.5) 0 calc(var(--ct-tooltip-arrow-width) * 0.5) var(--ct-tooltip-arrow-height);\n border-left-color: var(--ct-tooltip-bg);\n}\n.tooltip-inner {\n max-width: var(--ct-tooltip-max-width);\n padding: var(--ct-tooltip-padding-y) var(--ct-tooltip-padding-x);\n color: var(--ct-tooltip-color);\n text-align: center;\n background-color: var(--ct-tooltip-bg);\n border-radius: var(--ct-tooltip-border-radius);\n}\n\n.popover {\n --ct-popover-zindex: 1070;\n --ct-popover-max-width: 276px;\n --ct-popover-font-size: 0.85rem;\n --ct-popover-bg: var(--ct-secondary-bg);\n --ct-popover-border-width: var(--ct-border-width);\n --ct-popover-border-color: transparent;\n --ct-popover-border-radius: var(--ct-border-radius);\n --ct-popover-inner-border-radius: calc(var(--ct-border-radius) - var(--ct-border-width));\n --ct-popover-box-shadow: var(--ct-box-shadow-lg);\n --ct-popover-header-padding-x: 0.8rem;\n --ct-popover-header-padding-y: 0.7rem;\n --ct-popover-header-font-size: 0.875rem;\n --ct-popover-header-color: inherit;\n --ct-popover-header-bg: var(--ct-tertiary-bg);\n --ct-popover-body-padding-x: 0.75rem;\n --ct-popover-body-padding-y: 0.5rem;\n --ct-popover-body-color: var(--ct-body-color);\n --ct-popover-arrow-width: 1rem;\n --ct-popover-arrow-height: 0.5rem;\n --ct-popover-arrow-border: var(--ct-popover-border-color);\n z-index: var(--ct-popover-zindex);\n display: block;\n max-width: var(--ct-popover-max-width);\n font-family: var(--ct-font-sans-serif);\n font-style: normal;\n font-weight: 400;\n line-height: 1.5;\n text-align: right;\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 white-space: normal;\n word-spacing: normal;\n line-break: auto;\n font-size: var(--ct-popover-font-size);\n word-wrap: break-word;\n background-color: var(--ct-popover-bg);\n background-clip: padding-box;\n border: var(--ct-popover-border-width) solid var(--ct-popover-border-color);\n border-radius: var(--ct-popover-border-radius);\n}\n.popover .popover-arrow {\n display: block;\n width: var(--ct-popover-arrow-width);\n height: var(--ct-popover-arrow-height);\n}\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 border-width: 0;\n}\n\n.bs-popover-top > .popover-arrow, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow {\n bottom: calc(-1 * (var(--ct-popover-arrow-height)) - var(--ct-popover-border-width));\n}\n.bs-popover-top > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow::before, .bs-popover-top > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow::after {\n border-width: var(--ct-popover-arrow-height) calc(var(--ct-popover-arrow-width) * 0.5) 0;\n}\n.bs-popover-top > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow::before {\n bottom: 0;\n border-top-color: var(--ct-popover-arrow-border);\n}\n.bs-popover-top > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow::after {\n bottom: var(--ct-popover-border-width);\n border-top-color: var(--ct-popover-bg);\n}\n.bs-popover-end > .popover-arrow, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow {\n left: calc(-1 * (var(--ct-popover-arrow-height)) - var(--ct-popover-border-width));\n width: var(--ct-popover-arrow-height);\n height: var(--ct-popover-arrow-width);\n}\n.bs-popover-end > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow::before, .bs-popover-end > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow::after {\n border-width: calc(var(--ct-popover-arrow-width) * 0.5) var(--ct-popover-arrow-height) calc(var(--ct-popover-arrow-width) * 0.5) 0;\n}\n.bs-popover-end > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow::before {\n left: 0;\n border-right-color: var(--ct-popover-arrow-border);\n}\n.bs-popover-end > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow::after {\n left: var(--ct-popover-border-width);\n border-right-color: var(--ct-popover-bg);\n}\n.bs-popover-bottom > .popover-arrow, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow {\n top: calc(-1 * (var(--ct-popover-arrow-height)) - var(--ct-popover-border-width));\n}\n.bs-popover-bottom > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow::before, .bs-popover-bottom > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow::after {\n border-width: 0 calc(var(--ct-popover-arrow-width) * 0.5) var(--ct-popover-arrow-height);\n}\n.bs-popover-bottom > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow::before {\n top: 0;\n border-bottom-color: var(--ct-popover-arrow-border);\n}\n.bs-popover-bottom > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow::after {\n top: var(--ct-popover-border-width);\n border-bottom-color: var(--ct-popover-bg);\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 right: 50%;\n display: block;\n width: var(--ct-popover-arrow-width);\n margin-right: calc(-0.5 * var(--ct-popover-arrow-width));\n content: \"\";\n border-bottom: var(--ct-popover-border-width) solid var(--ct-popover-header-bg);\n}\n.bs-popover-start > .popover-arrow, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow {\n right: calc(-1 * (var(--ct-popover-arrow-height)) - var(--ct-popover-border-width));\n width: var(--ct-popover-arrow-height);\n height: var(--ct-popover-arrow-width);\n}\n.bs-popover-start > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow::before, .bs-popover-start > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow::after {\n border-width: calc(var(--ct-popover-arrow-width) * 0.5) 0 calc(var(--ct-popover-arrow-width) * 0.5) var(--ct-popover-arrow-height);\n}\n.bs-popover-start > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow::before {\n right: 0;\n border-left-color: var(--ct-popover-arrow-border);\n}\n.bs-popover-start > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow::after {\n right: var(--ct-popover-border-width);\n border-left-color: var(--ct-popover-bg);\n}\n.popover-header {\n padding: var(--ct-popover-header-padding-y) var(--ct-popover-header-padding-x);\n margin-bottom: 0;\n font-size: var(--ct-popover-header-font-size);\n color: var(--ct-popover-header-color);\n background-color: var(--ct-popover-header-bg);\n border-bottom: var(--ct-popover-border-width) solid var(--ct-popover-border-color);\n border-top-right-radius: var(--ct-popover-inner-border-radius);\n border-top-left-radius: var(--ct-popover-inner-border-radius);\n}\n.popover-header:empty {\n display: none;\n}\n\n.popover-body {\n padding: var(--ct-popover-body-padding-y) var(--ct-popover-body-padding-x);\n color: var(--ct-popover-body-color);\n}\n\n.carousel {\n position: relative;\n}\n\n.carousel.pointer-event {\n -ms-touch-action: pan-y;\n touch-action: pan-y;\n}\n\n.carousel-inner {\n position: relative;\n width: 100%;\n overflow: hidden;\n}\n.carousel-inner::after {\n display: block;\n clear: both;\n content: \"\";\n}\n\n.carousel-item {\n position: relative;\n display: none;\n float: right;\n width: 100%;\n margin-left: -100%;\n -webkit-backface-visibility: hidden;\n backface-visibility: hidden;\n -webkit-transition: -webkit-transform 0.6s ease-in-out;\n transition: -webkit-transform 0.6s ease-in-out;\n transition: transform 0.6s ease-in-out;\n transition: transform 0.6s ease-in-out, -webkit-transform 0.6s ease-in-out;\n}\n@media (prefers-reduced-motion: reduce) {\n .carousel-item {\n -webkit-transition: none;\n transition: none;\n }\n}\n\n.carousel-item.active,\n.carousel-item-next,\n.carousel-item-prev {\n display: block;\n}\n\n.carousel-item-next:not(.carousel-item-start),\n.active.carousel-item-end {\n -webkit-transform: translateX(-100%);\n transform: translateX(-100%);\n}\n\n.carousel-item-prev:not(.carousel-item-end),\n.active.carousel-item-start {\n -webkit-transform: translateX(100%);\n transform: translateX(100%);\n}\n\n.carousel-fade .carousel-item {\n opacity: 0;\n -webkit-transition-property: opacity;\n transition-property: opacity;\n -webkit-transform: none;\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 -webkit-transition: opacity 0s 0.6s;\n transition: opacity 0s 0.6s;\n}\n@media (prefers-reduced-motion: reduce) {\n .carousel-fade .active.carousel-item-start,\n.carousel-fade .active.carousel-item-end {\n -webkit-transition: none;\n transition: none;\n }\n}\n\n.carousel-control-prev,\n.carousel-control-next {\n position: absolute;\n top: 0;\n bottom: 0;\n z-index: 1;\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n -webkit-box-pack: center;\n -ms-flex-pack: center;\n justify-content: center;\n width: 15%;\n padding: 0;\n color: #fff;\n text-align: center;\n background: none;\n border: 0;\n opacity: 0.5;\n -webkit-transition: opacity 0.15s ease;\n transition: opacity 0.15s ease;\n}\n@media (prefers-reduced-motion: reduce) {\n .carousel-control-prev,\n.carousel-control-next {\n -webkit-transition: none;\n transition: none;\n }\n}\n.carousel-control-prev:hover, .carousel-control-prev:focus,\n.carousel-control-next:hover,\n.carousel-control-next:focus {\n color: #fff;\n text-decoration: none;\n outline: 0;\n opacity: 0.9;\n}\n\n.carousel-control-prev {\n right: 0;\n}\n\n.carousel-control-next {\n left: 0;\n}\n\n.carousel-control-prev-icon,\n.carousel-control-next-icon {\n display: inline-block;\n width: 2rem;\n height: 2rem;\n background-repeat: no-repeat;\n background-position: 50%;\n background-size: 100% 100%;\n}\n.carousel-control-next-icon {\n background-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0z'/%3e%3c/svg%3e\");\n}\n\n.carousel-control-prev-icon {\n background-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e\");\n}\n\n.carousel-indicators {\n position: absolute;\n left: 0;\n bottom: 0;\n right: 0;\n z-index: 2;\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-pack: center;\n -ms-flex-pack: center;\n justify-content: center;\n padding: 0;\n margin-left: 15%;\n margin-bottom: 1rem;\n margin-right: 15%;\n}\n.carousel-indicators [data-bs-target] {\n -webkit-box-sizing: content-box;\n box-sizing: content-box;\n -webkit-box-flex: 0;\n -ms-flex: 0 1 auto;\n flex: 0 1 auto;\n width: 30px;\n height: 3px;\n padding: 0;\n margin-left: 3px;\n margin-right: 3px;\n text-indent: -999px;\n cursor: pointer;\n background-color: #fff;\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 -webkit-transition: opacity 0.6s ease;\n transition: opacity 0.6s ease;\n}\n@media (prefers-reduced-motion: reduce) {\n .carousel-indicators [data-bs-target] {\n -webkit-transition: none;\n transition: none;\n }\n}\n.carousel-indicators .active {\n opacity: 1;\n}\n\n.carousel-caption {\n position: absolute;\n left: 15%;\n bottom: 1.25rem;\n right: 15%;\n padding-top: 1.25rem;\n padding-bottom: 1.25rem;\n color: #fff;\n text-align: center;\n}\n\n.carousel-dark .carousel-control-next-icon,\n.carousel-dark .carousel-control-prev-icon {\n -webkit-filter: invert(1) grayscale(100);\n filter: invert(1) grayscale(100);\n}\n.carousel-dark .carousel-indicators [data-bs-target] {\n background-color: #000;\n}\n.carousel-dark .carousel-caption {\n color: #000;\n}\n\n[data-bs-theme=dark] .carousel .carousel-control-next-icon,\n[data-bs-theme=dark] .carousel .carousel-control-prev-icon, [data-bs-theme=dark].carousel .carousel-control-next-icon,\n[data-bs-theme=dark].carousel .carousel-control-prev-icon {\n -webkit-filter: invert(1) grayscale(100);\n filter: invert(1) grayscale(100);\n}\n[data-bs-theme=dark] .carousel .carousel-indicators [data-bs-target], [data-bs-theme=dark].carousel .carousel-indicators [data-bs-target] {\n background-color: #000;\n}\n[data-bs-theme=dark] .carousel .carousel-caption, [data-bs-theme=dark].carousel .carousel-caption {\n color: #000;\n}\n\n.spinner-grow,\n.spinner-border {\n display: inline-block;\n width: var(--ct-spinner-width);\n height: var(--ct-spinner-height);\n vertical-align: var(--ct-spinner-vertical-align);\n border-radius: 50%;\n -webkit-animation: var(--ct-spinner-animation-speed) linear infinite var(--ct-spinner-animation-name);\n animation: var(--ct-spinner-animation-speed) linear infinite var(--ct-spinner-animation-name);\n}\n\n@-webkit-keyframes spinner-border {\n to {\n -webkit-transform: rotate(360deg) ;\n transform: rotate(360deg) ;\n }\n}\n\n@keyframes spinner-border {\n to {\n -webkit-transform: rotate(360deg) ;\n transform: rotate(360deg) ;\n }\n}\n.spinner-border {\n --ct-spinner-width: 2rem;\n --ct-spinner-height: 2rem;\n --ct-spinner-vertical-align: -0.25em;\n --ct-spinner-border-width: 0.25em;\n --ct-spinner-animation-speed: 0.75s;\n --ct-spinner-animation-name: spinner-border;\n border: var(--ct-spinner-border-width) solid currentcolor;\n border-left-color: transparent;\n}\n\n.spinner-border-sm {\n --ct-spinner-width: 1rem;\n --ct-spinner-height: 1rem;\n --ct-spinner-border-width: 0.2em;\n}\n\n@-webkit-keyframes spinner-grow {\n 0% {\n -webkit-transform: scale(0);\n transform: scale(0);\n }\n 50% {\n opacity: 1;\n -webkit-transform: none;\n transform: none;\n }\n}\n\n@keyframes spinner-grow {\n 0% {\n -webkit-transform: scale(0);\n transform: scale(0);\n }\n 50% {\n opacity: 1;\n -webkit-transform: none;\n transform: none;\n }\n}\n.spinner-grow {\n --ct-spinner-width: 2rem;\n --ct-spinner-height: 2rem;\n --ct-spinner-vertical-align: -0.25em;\n --ct-spinner-animation-speed: 0.75s;\n --ct-spinner-animation-name: spinner-grow;\n background-color: currentcolor;\n opacity: 0;\n}\n\n.spinner-grow-sm {\n --ct-spinner-width: 1rem;\n --ct-spinner-height: 1rem;\n}\n\n@media (prefers-reduced-motion: reduce) {\n .spinner-border,\n.spinner-grow {\n --ct-spinner-animation-speed: 1.5s;\n }\n}\n.offcanvas, .offcanvas-xxl, .offcanvas-xl, .offcanvas-lg, .offcanvas-md, .offcanvas-sm {\n --ct-offcanvas-zindex: 1045;\n --ct-offcanvas-width: 400px;\n --ct-offcanvas-height: 30vh;\n --ct-offcanvas-padding-x: 0.75rem;\n --ct-offcanvas-padding-y: 0.75rem;\n --ct-offcanvas-color: var(--ct-body-color);\n --ct-offcanvas-bg: var(--ct-secondary-bg);\n --ct-offcanvas-border-width: var(--ct-border-width);\n --ct-offcanvas-border-color: transparent;\n --ct-offcanvas-box-shadow: 0 0.125rem 0.25rem rgba(var(--ct-body-color-rgb), 0.15);\n --ct-offcanvas-transition: transform 0.3s ease-in-out;\n --ct-offcanvas-title-line-height: 1.5;\n}\n\n@media (max-width: 575.98px) {\n .offcanvas-sm {\n position: fixed;\n bottom: 0;\n z-index: var(--ct-offcanvas-zindex);\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-orient: vertical;\n -webkit-box-direction: normal;\n -ms-flex-direction: column;\n flex-direction: column;\n max-width: 100%;\n color: var(--ct-offcanvas-color);\n visibility: hidden;\n background-color: var(--ct-offcanvas-bg);\n background-clip: padding-box;\n outline: 0;\n -webkit-transition: var(--ct-offcanvas-transition);\n transition: var(--ct-offcanvas-transition);\n }\n}\n@media (max-width: 575.98px) and (prefers-reduced-motion: reduce) {\n .offcanvas-sm {\n -webkit-transition: none;\n transition: none;\n }\n}\n@media (max-width: 575.98px) {\n .offcanvas-sm.offcanvas-start {\n top: 0;\n right: 0;\n width: var(--ct-offcanvas-width);\n border-left: var(--ct-offcanvas-border-width) solid var(--ct-offcanvas-border-color);\n -webkit-transform: translateX(100%);\n transform: translateX(100%);\n }\n}\n@media (max-width: 575.98px) {\n .offcanvas-sm.offcanvas-end {\n top: 0;\n left: 0;\n width: var(--ct-offcanvas-width);\n border-right: var(--ct-offcanvas-border-width) solid var(--ct-offcanvas-border-color);\n -webkit-transform: translateX(-100%);\n transform: translateX(-100%);\n }\n}\n@media (max-width: 575.98px) {\n .offcanvas-sm.offcanvas-top {\n top: 0;\n left: 0;\n right: 0;\n height: var(--ct-offcanvas-height);\n max-height: 100%;\n border-bottom: var(--ct-offcanvas-border-width) solid var(--ct-offcanvas-border-color);\n -webkit-transform: translateY(-100%);\n transform: translateY(-100%);\n }\n}\n@media (max-width: 575.98px) {\n .offcanvas-sm.offcanvas-bottom {\n left: 0;\n right: 0;\n height: var(--ct-offcanvas-height);\n max-height: 100%;\n border-top: var(--ct-offcanvas-border-width) solid var(--ct-offcanvas-border-color);\n -webkit-transform: translateY(100%);\n transform: translateY(100%);\n }\n}\n@media (max-width: 575.98px) {\n .offcanvas-sm.showing, .offcanvas-sm.show:not(.hiding) {\n -webkit-transform: none;\n transform: none;\n }\n}\n@media (max-width: 575.98px) {\n .offcanvas-sm.showing, .offcanvas-sm.hiding, .offcanvas-sm.show {\n visibility: visible;\n }\n}\n@media (min-width: 576px) {\n .offcanvas-sm {\n --ct-offcanvas-height: auto;\n --ct-offcanvas-border-width: 0;\n background-color: transparent !important;\n }\n .offcanvas-sm .offcanvas-header {\n display: none;\n }\n .offcanvas-sm .offcanvas-body {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-flex: 0;\n -ms-flex-positive: 0;\n flex-grow: 0;\n padding: 0;\n overflow-y: visible;\n background-color: transparent !important;\n }\n}\n\n@media (max-width: 767.98px) {\n .offcanvas-md {\n position: fixed;\n bottom: 0;\n z-index: var(--ct-offcanvas-zindex);\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-orient: vertical;\n -webkit-box-direction: normal;\n -ms-flex-direction: column;\n flex-direction: column;\n max-width: 100%;\n color: var(--ct-offcanvas-color);\n visibility: hidden;\n background-color: var(--ct-offcanvas-bg);\n background-clip: padding-box;\n outline: 0;\n -webkit-transition: var(--ct-offcanvas-transition);\n transition: var(--ct-offcanvas-transition);\n }\n}\n@media (max-width: 767.98px) and (prefers-reduced-motion: reduce) {\n .offcanvas-md {\n -webkit-transition: none;\n transition: none;\n }\n}\n@media (max-width: 767.98px) {\n .offcanvas-md.offcanvas-start {\n top: 0;\n right: 0;\n width: var(--ct-offcanvas-width);\n border-left: var(--ct-offcanvas-border-width) solid var(--ct-offcanvas-border-color);\n -webkit-transform: translateX(100%);\n transform: translateX(100%);\n }\n}\n@media (max-width: 767.98px) {\n .offcanvas-md.offcanvas-end {\n top: 0;\n left: 0;\n width: var(--ct-offcanvas-width);\n border-right: var(--ct-offcanvas-border-width) solid var(--ct-offcanvas-border-color);\n -webkit-transform: translateX(-100%);\n transform: translateX(-100%);\n }\n}\n@media (max-width: 767.98px) {\n .offcanvas-md.offcanvas-top {\n top: 0;\n left: 0;\n right: 0;\n height: var(--ct-offcanvas-height);\n max-height: 100%;\n border-bottom: var(--ct-offcanvas-border-width) solid var(--ct-offcanvas-border-color);\n -webkit-transform: translateY(-100%);\n transform: translateY(-100%);\n }\n}\n@media (max-width: 767.98px) {\n .offcanvas-md.offcanvas-bottom {\n left: 0;\n right: 0;\n height: var(--ct-offcanvas-height);\n max-height: 100%;\n border-top: var(--ct-offcanvas-border-width) solid var(--ct-offcanvas-border-color);\n -webkit-transform: translateY(100%);\n transform: translateY(100%);\n }\n}\n@media (max-width: 767.98px) {\n .offcanvas-md.showing, .offcanvas-md.show:not(.hiding) {\n -webkit-transform: none;\n transform: none;\n }\n}\n@media (max-width: 767.98px) {\n .offcanvas-md.showing, .offcanvas-md.hiding, .offcanvas-md.show {\n visibility: visible;\n }\n}\n@media (min-width: 768px) {\n .offcanvas-md {\n --ct-offcanvas-height: auto;\n --ct-offcanvas-border-width: 0;\n background-color: transparent !important;\n }\n .offcanvas-md .offcanvas-header {\n display: none;\n }\n .offcanvas-md .offcanvas-body {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-flex: 0;\n -ms-flex-positive: 0;\n flex-grow: 0;\n padding: 0;\n overflow-y: visible;\n background-color: transparent !important;\n }\n}\n\n@media (max-width: 991.98px) {\n .offcanvas-lg {\n position: fixed;\n bottom: 0;\n z-index: var(--ct-offcanvas-zindex);\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-orient: vertical;\n -webkit-box-direction: normal;\n -ms-flex-direction: column;\n flex-direction: column;\n max-width: 100%;\n color: var(--ct-offcanvas-color);\n visibility: hidden;\n background-color: var(--ct-offcanvas-bg);\n background-clip: padding-box;\n outline: 0;\n -webkit-transition: var(--ct-offcanvas-transition);\n transition: var(--ct-offcanvas-transition);\n }\n}\n@media (max-width: 991.98px) and (prefers-reduced-motion: reduce) {\n .offcanvas-lg {\n -webkit-transition: none;\n transition: none;\n }\n}\n@media (max-width: 991.98px) {\n .offcanvas-lg.offcanvas-start {\n top: 0;\n right: 0;\n width: var(--ct-offcanvas-width);\n border-left: var(--ct-offcanvas-border-width) solid var(--ct-offcanvas-border-color);\n -webkit-transform: translateX(100%);\n transform: translateX(100%);\n }\n}\n@media (max-width: 991.98px) {\n .offcanvas-lg.offcanvas-end {\n top: 0;\n left: 0;\n width: var(--ct-offcanvas-width);\n border-right: var(--ct-offcanvas-border-width) solid var(--ct-offcanvas-border-color);\n -webkit-transform: translateX(-100%);\n transform: translateX(-100%);\n }\n}\n@media (max-width: 991.98px) {\n .offcanvas-lg.offcanvas-top {\n top: 0;\n left: 0;\n right: 0;\n height: var(--ct-offcanvas-height);\n max-height: 100%;\n border-bottom: var(--ct-offcanvas-border-width) solid var(--ct-offcanvas-border-color);\n -webkit-transform: translateY(-100%);\n transform: translateY(-100%);\n }\n}\n@media (max-width: 991.98px) {\n .offcanvas-lg.offcanvas-bottom {\n left: 0;\n right: 0;\n height: var(--ct-offcanvas-height);\n max-height: 100%;\n border-top: var(--ct-offcanvas-border-width) solid var(--ct-offcanvas-border-color);\n -webkit-transform: translateY(100%);\n transform: translateY(100%);\n }\n}\n@media (max-width: 991.98px) {\n .offcanvas-lg.showing, .offcanvas-lg.show:not(.hiding) {\n -webkit-transform: none;\n transform: none;\n }\n}\n@media (max-width: 991.98px) {\n .offcanvas-lg.showing, .offcanvas-lg.hiding, .offcanvas-lg.show {\n visibility: visible;\n }\n}\n@media (min-width: 992px) {\n .offcanvas-lg {\n --ct-offcanvas-height: auto;\n --ct-offcanvas-border-width: 0;\n background-color: transparent !important;\n }\n .offcanvas-lg .offcanvas-header {\n display: none;\n }\n .offcanvas-lg .offcanvas-body {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-flex: 0;\n -ms-flex-positive: 0;\n flex-grow: 0;\n padding: 0;\n overflow-y: visible;\n background-color: transparent !important;\n }\n}\n\n@media (max-width: 1199.98px) {\n .offcanvas-xl {\n position: fixed;\n bottom: 0;\n z-index: var(--ct-offcanvas-zindex);\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-orient: vertical;\n -webkit-box-direction: normal;\n -ms-flex-direction: column;\n flex-direction: column;\n max-width: 100%;\n color: var(--ct-offcanvas-color);\n visibility: hidden;\n background-color: var(--ct-offcanvas-bg);\n background-clip: padding-box;\n outline: 0;\n -webkit-transition: var(--ct-offcanvas-transition);\n transition: var(--ct-offcanvas-transition);\n }\n}\n@media (max-width: 1199.98px) and (prefers-reduced-motion: reduce) {\n .offcanvas-xl {\n -webkit-transition: none;\n transition: none;\n }\n}\n@media (max-width: 1199.98px) {\n .offcanvas-xl.offcanvas-start {\n top: 0;\n right: 0;\n width: var(--ct-offcanvas-width);\n border-left: var(--ct-offcanvas-border-width) solid var(--ct-offcanvas-border-color);\n -webkit-transform: translateX(100%);\n transform: translateX(100%);\n }\n}\n@media (max-width: 1199.98px) {\n .offcanvas-xl.offcanvas-end {\n top: 0;\n left: 0;\n width: var(--ct-offcanvas-width);\n border-right: var(--ct-offcanvas-border-width) solid var(--ct-offcanvas-border-color);\n -webkit-transform: translateX(-100%);\n transform: translateX(-100%);\n }\n}\n@media (max-width: 1199.98px) {\n .offcanvas-xl.offcanvas-top {\n top: 0;\n left: 0;\n right: 0;\n height: var(--ct-offcanvas-height);\n max-height: 100%;\n border-bottom: var(--ct-offcanvas-border-width) solid var(--ct-offcanvas-border-color);\n -webkit-transform: translateY(-100%);\n transform: translateY(-100%);\n }\n}\n@media (max-width: 1199.98px) {\n .offcanvas-xl.offcanvas-bottom {\n left: 0;\n right: 0;\n height: var(--ct-offcanvas-height);\n max-height: 100%;\n border-top: var(--ct-offcanvas-border-width) solid var(--ct-offcanvas-border-color);\n -webkit-transform: translateY(100%);\n transform: translateY(100%);\n }\n}\n@media (max-width: 1199.98px) {\n .offcanvas-xl.showing, .offcanvas-xl.show:not(.hiding) {\n -webkit-transform: none;\n transform: none;\n }\n}\n@media (max-width: 1199.98px) {\n .offcanvas-xl.showing, .offcanvas-xl.hiding, .offcanvas-xl.show {\n visibility: visible;\n }\n}\n@media (min-width: 1200px) {\n .offcanvas-xl {\n --ct-offcanvas-height: auto;\n --ct-offcanvas-border-width: 0;\n background-color: transparent !important;\n }\n .offcanvas-xl .offcanvas-header {\n display: none;\n }\n .offcanvas-xl .offcanvas-body {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-flex: 0;\n -ms-flex-positive: 0;\n flex-grow: 0;\n padding: 0;\n overflow-y: visible;\n background-color: transparent !important;\n }\n}\n\n@media (max-width: 1399.98px) {\n .offcanvas-xxl {\n position: fixed;\n bottom: 0;\n z-index: var(--ct-offcanvas-zindex);\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-orient: vertical;\n -webkit-box-direction: normal;\n -ms-flex-direction: column;\n flex-direction: column;\n max-width: 100%;\n color: var(--ct-offcanvas-color);\n visibility: hidden;\n background-color: var(--ct-offcanvas-bg);\n background-clip: padding-box;\n outline: 0;\n -webkit-transition: var(--ct-offcanvas-transition);\n transition: var(--ct-offcanvas-transition);\n }\n}\n@media (max-width: 1399.98px) and (prefers-reduced-motion: reduce) {\n .offcanvas-xxl {\n -webkit-transition: none;\n transition: none;\n }\n}\n@media (max-width: 1399.98px) {\n .offcanvas-xxl.offcanvas-start {\n top: 0;\n right: 0;\n width: var(--ct-offcanvas-width);\n border-left: var(--ct-offcanvas-border-width) solid var(--ct-offcanvas-border-color);\n -webkit-transform: translateX(100%);\n transform: translateX(100%);\n }\n}\n@media (max-width: 1399.98px) {\n .offcanvas-xxl.offcanvas-end {\n top: 0;\n left: 0;\n width: var(--ct-offcanvas-width);\n border-right: var(--ct-offcanvas-border-width) solid var(--ct-offcanvas-border-color);\n -webkit-transform: translateX(-100%);\n transform: translateX(-100%);\n }\n}\n@media (max-width: 1399.98px) {\n .offcanvas-xxl.offcanvas-top {\n top: 0;\n left: 0;\n right: 0;\n height: var(--ct-offcanvas-height);\n max-height: 100%;\n border-bottom: var(--ct-offcanvas-border-width) solid var(--ct-offcanvas-border-color);\n -webkit-transform: translateY(-100%);\n transform: translateY(-100%);\n }\n}\n@media (max-width: 1399.98px) {\n .offcanvas-xxl.offcanvas-bottom {\n left: 0;\n right: 0;\n height: var(--ct-offcanvas-height);\n max-height: 100%;\n border-top: var(--ct-offcanvas-border-width) solid var(--ct-offcanvas-border-color);\n -webkit-transform: translateY(100%);\n transform: translateY(100%);\n }\n}\n@media (max-width: 1399.98px) {\n .offcanvas-xxl.showing, .offcanvas-xxl.show:not(.hiding) {\n -webkit-transform: none;\n transform: none;\n }\n}\n@media (max-width: 1399.98px) {\n .offcanvas-xxl.showing, .offcanvas-xxl.hiding, .offcanvas-xxl.show {\n visibility: visible;\n }\n}\n@media (min-width: 1400px) {\n .offcanvas-xxl {\n --ct-offcanvas-height: auto;\n --ct-offcanvas-border-width: 0;\n background-color: transparent !important;\n }\n .offcanvas-xxl .offcanvas-header {\n display: none;\n }\n .offcanvas-xxl .offcanvas-body {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-flex: 0;\n -ms-flex-positive: 0;\n flex-grow: 0;\n padding: 0;\n overflow-y: visible;\n background-color: transparent !important;\n }\n}\n\n.offcanvas {\n position: fixed;\n bottom: 0;\n z-index: var(--ct-offcanvas-zindex);\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-orient: vertical;\n -webkit-box-direction: normal;\n -ms-flex-direction: column;\n flex-direction: column;\n max-width: 100%;\n color: var(--ct-offcanvas-color);\n visibility: hidden;\n background-color: var(--ct-offcanvas-bg);\n background-clip: padding-box;\n outline: 0;\n -webkit-transition: var(--ct-offcanvas-transition);\n transition: var(--ct-offcanvas-transition);\n}\n@media (prefers-reduced-motion: reduce) {\n .offcanvas {\n -webkit-transition: none;\n transition: none;\n }\n}\n.offcanvas.offcanvas-start {\n top: 0;\n right: 0;\n width: var(--ct-offcanvas-width);\n border-left: var(--ct-offcanvas-border-width) solid var(--ct-offcanvas-border-color);\n -webkit-transform: translateX(100%);\n transform: translateX(100%);\n}\n.offcanvas.offcanvas-end {\n top: 0;\n left: 0;\n width: var(--ct-offcanvas-width);\n border-right: var(--ct-offcanvas-border-width) solid var(--ct-offcanvas-border-color);\n -webkit-transform: translateX(-100%);\n transform: translateX(-100%);\n}\n.offcanvas.offcanvas-top {\n top: 0;\n left: 0;\n right: 0;\n height: var(--ct-offcanvas-height);\n max-height: 100%;\n border-bottom: var(--ct-offcanvas-border-width) solid var(--ct-offcanvas-border-color);\n -webkit-transform: translateY(-100%);\n transform: translateY(-100%);\n}\n.offcanvas.offcanvas-bottom {\n left: 0;\n right: 0;\n height: var(--ct-offcanvas-height);\n max-height: 100%;\n border-top: var(--ct-offcanvas-border-width) solid var(--ct-offcanvas-border-color);\n -webkit-transform: translateY(100%);\n transform: translateY(100%);\n}\n.offcanvas.showing, .offcanvas.show:not(.hiding) {\n -webkit-transform: none;\n transform: none;\n}\n.offcanvas.showing, .offcanvas.hiding, .offcanvas.show {\n visibility: visible;\n}\n\n.offcanvas-backdrop {\n position: fixed;\n top: 0;\n right: 0;\n z-index: 1040;\n width: 100vw;\n height: 100vh;\n background-color: var(--ct-emphasis-color);\n}\n.offcanvas-backdrop.fade {\n opacity: 0;\n}\n.offcanvas-backdrop.show {\n opacity: 0.75;\n}\n\n.offcanvas-header {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n -webkit-box-pack: justify;\n -ms-flex-pack: justify;\n justify-content: space-between;\n padding: var(--ct-offcanvas-padding-y) var(--ct-offcanvas-padding-x);\n}\n.offcanvas-header .btn-close {\n padding: calc(var(--ct-offcanvas-padding-y) * 0.5) calc(var(--ct-offcanvas-padding-x) * 0.5);\n margin-top: calc(-0.5 * var(--ct-offcanvas-padding-y));\n margin-left: calc(-0.5 * var(--ct-offcanvas-padding-x));\n margin-bottom: calc(-0.5 * var(--ct-offcanvas-padding-y));\n}\n\n.offcanvas-title {\n margin-bottom: 0;\n line-height: var(--ct-offcanvas-title-line-height);\n}\n\n.offcanvas-body {\n -webkit-box-flex: 1;\n -ms-flex-positive: 1;\n flex-grow: 1;\n padding: var(--ct-offcanvas-padding-y) var(--ct-offcanvas-padding-x);\n overflow-y: auto;\n}\n\n.placeholder {\n display: inline-block;\n min-height: 1em;\n vertical-align: middle;\n cursor: wait;\n background-color: currentcolor;\n opacity: 0.5;\n}\n.placeholder.btn::before {\n display: inline-block;\n content: \"\";\n}\n\n.placeholder-xs {\n min-height: 0.6em;\n}\n\n.placeholder-sm {\n min-height: 0.8em;\n}\n\n.placeholder-lg {\n min-height: 1.2em;\n}\n\n.placeholder-glow .placeholder {\n -webkit-animation: placeholder-glow 2s ease-in-out infinite;\n animation: placeholder-glow 2s ease-in-out infinite;\n}\n\n@-webkit-keyframes placeholder-glow {\n 50% {\n opacity: 0.2;\n }\n}\n\n@keyframes placeholder-glow {\n 50% {\n opacity: 0.2;\n }\n}\n.placeholder-wave {\n -webkit-mask-image: linear-gradient(130deg, #000 55%, rgba(0, 0, 0, 0.8) 75%, #000 95%);\n mask-image: linear-gradient(130deg, #000 55%, rgba(0, 0, 0, 0.8) 75%, #000 95%);\n -webkit-mask-size: 200% 100%;\n mask-size: 200% 100%;\n -webkit-animation: placeholder-wave 2s linear infinite;\n animation: placeholder-wave 2s linear infinite;\n}\n\n@-webkit-keyframes placeholder-wave {\n 100% {\n -webkit-mask-position: -200% 0%;\n mask-position: -200% 0%;\n }\n}\n\n@keyframes placeholder-wave {\n 100% {\n -webkit-mask-position: -200% 0%;\n mask-position: -200% 0%;\n }\n}\n.clearfix::after {\n display: block;\n clear: both;\n content: \"\";\n}\n\n.text-bg-primary {\n color: #fff !important;\n background-color: RGBA(66, 84, 186, var(--ct-bg-opacity, 1)) !important;\n}\n\n.text-bg-secondary {\n color: #fff !important;\n background-color: RGBA(108, 117, 125, var(--ct-bg-opacity, 1)) !important;\n}\n\n.text-bg-success {\n color: #fff !important;\n background-color: RGBA(23, 164, 151, var(--ct-bg-opacity, 1)) !important;\n}\n\n.text-bg-info {\n color: #fff !important;\n background-color: RGBA(41, 155, 246, var(--ct-bg-opacity, 1)) !important;\n}\n\n.text-bg-warning {\n color: #fff !important;\n background-color: RGBA(254, 194, 13, var(--ct-bg-opacity, 1)) !important;\n}\n\n.text-bg-danger {\n color: #fff !important;\n background-color: RGBA(247, 71, 58, var(--ct-bg-opacity, 1)) !important;\n}\n\n.text-bg-light {\n color: #212529 !important;\n background-color: RGBA(242, 242, 247, var(--ct-bg-opacity, 1)) !important;\n}\n\n.text-bg-dark {\n color: #fff !important;\n background-color: RGBA(73, 82, 107, var(--ct-bg-opacity, 1)) !important;\n}\n\n.text-bg-purple {\n color: #fff !important;\n background-color: RGBA(129, 90, 197, var(--ct-bg-opacity, 1)) !important;\n}\n\n.text-bg-pink {\n color: #fff !important;\n background-color: RGBA(255, 103, 155, var(--ct-bg-opacity, 1)) !important;\n}\n\n.link-primary {\n color: RGBA(var(--ct-primary-rgb), var(--ct-link-opacity, 1)) !important;\n text-decoration-color: RGBA(var(--ct-primary-rgb), var(--ct-link-underline-opacity, 1)) !important;\n}\n.link-primary:hover, .link-primary:focus {\n color: RGBA(56, 71, 158, var(--ct-link-opacity, 1)) !important;\n text-decoration-color: RGBA(56, 71, 158, var(--ct-link-underline-opacity, 1)) !important;\n}\n\n.link-secondary {\n color: RGBA(var(--ct-secondary-rgb), var(--ct-link-opacity, 1)) !important;\n text-decoration-color: RGBA(var(--ct-secondary-rgb), var(--ct-link-underline-opacity, 1)) !important;\n}\n.link-secondary:hover, .link-secondary:focus {\n color: RGBA(92, 99, 106, var(--ct-link-opacity, 1)) !important;\n text-decoration-color: RGBA(92, 99, 106, var(--ct-link-underline-opacity, 1)) !important;\n}\n\n.link-success {\n color: RGBA(var(--ct-success-rgb), var(--ct-link-opacity, 1)) !important;\n text-decoration-color: RGBA(var(--ct-success-rgb), var(--ct-link-underline-opacity, 1)) !important;\n}\n.link-success:hover, .link-success:focus {\n color: RGBA(20, 139, 128, var(--ct-link-opacity, 1)) !important;\n text-decoration-color: RGBA(20, 139, 128, var(--ct-link-underline-opacity, 1)) !important;\n}\n\n.link-info {\n color: RGBA(var(--ct-info-rgb), var(--ct-link-opacity, 1)) !important;\n text-decoration-color: RGBA(var(--ct-info-rgb), var(--ct-link-underline-opacity, 1)) !important;\n}\n.link-info:hover, .link-info:focus {\n color: RGBA(35, 132, 209, var(--ct-link-opacity, 1)) !important;\n text-decoration-color: RGBA(35, 132, 209, var(--ct-link-underline-opacity, 1)) !important;\n}\n\n.link-warning {\n color: RGBA(var(--ct-warning-rgb), var(--ct-link-opacity, 1)) !important;\n text-decoration-color: RGBA(var(--ct-warning-rgb), var(--ct-link-underline-opacity, 1)) !important;\n}\n.link-warning:hover, .link-warning:focus {\n color: RGBA(216, 165, 11, var(--ct-link-opacity, 1)) !important;\n text-decoration-color: RGBA(216, 165, 11, var(--ct-link-underline-opacity, 1)) !important;\n}\n\n.link-danger {\n color: RGBA(var(--ct-danger-rgb), var(--ct-link-opacity, 1)) !important;\n text-decoration-color: RGBA(var(--ct-danger-rgb), var(--ct-link-underline-opacity, 1)) !important;\n}\n.link-danger:hover, .link-danger:focus {\n color: RGBA(210, 60, 49, var(--ct-link-opacity, 1)) !important;\n text-decoration-color: RGBA(210, 60, 49, var(--ct-link-underline-opacity, 1)) !important;\n}\n\n.link-light {\n color: RGBA(var(--ct-light-rgb), var(--ct-link-opacity, 1)) !important;\n text-decoration-color: RGBA(var(--ct-light-rgb), var(--ct-link-underline-opacity, 1)) !important;\n}\n.link-light:hover, .link-light:focus {\n color: RGBA(244, 244, 248, var(--ct-link-opacity, 1)) !important;\n text-decoration-color: RGBA(244, 244, 248, var(--ct-link-underline-opacity, 1)) !important;\n}\n\n.link-dark {\n color: RGBA(var(--ct-dark-rgb), var(--ct-link-opacity, 1)) !important;\n text-decoration-color: RGBA(var(--ct-dark-rgb), var(--ct-link-underline-opacity, 1)) !important;\n}\n.link-dark:hover, .link-dark:focus {\n color: RGBA(62, 70, 91, var(--ct-link-opacity, 1)) !important;\n text-decoration-color: RGBA(62, 70, 91, var(--ct-link-underline-opacity, 1)) !important;\n}\n\n.link-purple {\n color: RGBA(var(--ct-purple-rgb), var(--ct-link-opacity, 1)) !important;\n text-decoration-color: RGBA(var(--ct-purple-rgb), var(--ct-link-underline-opacity, 1)) !important;\n}\n.link-purple:hover, .link-purple:focus {\n color: RGBA(110, 77, 167, var(--ct-link-opacity, 1)) !important;\n text-decoration-color: RGBA(110, 77, 167, var(--ct-link-underline-opacity, 1)) !important;\n}\n\n.link-pink {\n color: RGBA(var(--ct-pink-rgb), var(--ct-link-opacity, 1)) !important;\n text-decoration-color: RGBA(var(--ct-pink-rgb), var(--ct-link-underline-opacity, 1)) !important;\n}\n.link-pink:hover, .link-pink:focus {\n color: RGBA(217, 88, 132, var(--ct-link-opacity, 1)) !important;\n text-decoration-color: RGBA(217, 88, 132, var(--ct-link-underline-opacity, 1)) !important;\n}\n\n.link-body-emphasis {\n color: RGBA(var(--ct-emphasis-color-rgb), var(--ct-link-opacity, 1)) !important;\n text-decoration-color: RGBA(var(--ct-emphasis-color-rgb), var(--ct-link-underline-opacity, 1)) !important;\n}\n.link-body-emphasis:hover, .link-body-emphasis:focus {\n color: RGBA(var(--ct-emphasis-color-rgb), var(--ct-link-opacity, 0.75)) !important;\n text-decoration-color: RGBA(var(--ct-emphasis-color-rgb), var(--ct-link-underline-opacity, 0.75)) !important;\n}\n\n.focus-ring:focus {\n outline: 0;\n -webkit-box-shadow: var(--ct-focus-ring-x, 0) var(--ct-focus-ring-y, 0) var(--ct-focus-ring-blur, 0) var(--ct-focus-ring-width) var(--ct-focus-ring-color);\n box-shadow: var(--ct-focus-ring-x, 0) var(--ct-focus-ring-y, 0) var(--ct-focus-ring-blur, 0) var(--ct-focus-ring-width) var(--ct-focus-ring-color);\n}\n\n.icon-link {\n display: -webkit-inline-box;\n display: -ms-inline-flexbox;\n display: inline-flex;\n gap: 0.375rem;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n text-decoration-color: rgba(var(--ct-link-color-rgb), var(--ct-link-opacity, 0.5));\n text-underline-offset: 0.25em;\n -webkit-backface-visibility: hidden;\n backface-visibility: hidden;\n}\n.icon-link > .bi {\n -ms-flex-negative: 0;\n flex-shrink: 0;\n width: 1em;\n height: 1em;\n fill: currentcolor;\n -webkit-transition: 0.2s ease-in-out transform;\n transition: 0.2s ease-in-out transform;\n}\n@media (prefers-reduced-motion: reduce) {\n .icon-link > .bi {\n -webkit-transition: none;\n transition: none;\n }\n}\n\n.icon-link-hover:hover > .bi, .icon-link-hover:focus-visible > .bi {\n -webkit-transform: var(--ct-icon-link-transform, translate3d(-0.25em, 0, 0));\n transform: var(--ct-icon-link-transform, translate3d(-0.25em, 0, 0));\n}\n\n.ratio {\n position: relative;\n width: 100%;\n}\n.ratio::before {\n display: block;\n padding-top: var(--ct-aspect-ratio);\n content: \"\";\n}\n.ratio > * {\n position: absolute;\n top: 0;\n right: 0;\n width: 100%;\n height: 100%;\n}\n\n.ratio-1x1 {\n --ct-aspect-ratio: 100%;\n}\n\n.ratio-4x3 {\n --ct-aspect-ratio: 75%;\n}\n\n.ratio-16x9 {\n --ct-aspect-ratio: 56.25%;\n}\n\n.ratio-21x9 {\n --ct-aspect-ratio: 42.8571428571%;\n}\n\n.fixed-top {\n position: fixed;\n top: 0;\n left: 0;\n right: 0;\n z-index: 1030;\n}\n\n.fixed-bottom {\n position: fixed;\n left: 0;\n bottom: 0;\n right: 0;\n z-index: 1030;\n}\n\n.sticky-top {\n position: sticky;\n top: 0;\n z-index: 1020;\n}\n\n.sticky-bottom {\n position: sticky;\n bottom: 0;\n z-index: 1020;\n}\n\n@media (min-width: 576px) {\n .sticky-sm-top {\n position: sticky;\n top: 0;\n z-index: 1020;\n }\n .sticky-sm-bottom {\n position: sticky;\n bottom: 0;\n z-index: 1020;\n }\n}\n@media (min-width: 768px) {\n .sticky-md-top {\n position: sticky;\n top: 0;\n z-index: 1020;\n }\n .sticky-md-bottom {\n position: sticky;\n bottom: 0;\n z-index: 1020;\n }\n}\n@media (min-width: 992px) {\n .sticky-lg-top {\n position: sticky;\n top: 0;\n z-index: 1020;\n }\n .sticky-lg-bottom {\n position: sticky;\n bottom: 0;\n z-index: 1020;\n }\n}\n@media (min-width: 1200px) {\n .sticky-xl-top {\n position: sticky;\n top: 0;\n z-index: 1020;\n }\n .sticky-xl-bottom {\n position: sticky;\n bottom: 0;\n z-index: 1020;\n }\n}\n@media (min-width: 1400px) {\n .sticky-xxl-top {\n position: sticky;\n top: 0;\n z-index: 1020;\n }\n .sticky-xxl-bottom {\n position: sticky;\n bottom: 0;\n z-index: 1020;\n }\n}\n.hstack {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-orient: horizontal;\n -webkit-box-direction: normal;\n -ms-flex-direction: row;\n flex-direction: row;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n -ms-flex-item-align: stretch;\n align-self: stretch;\n}\n\n.vstack {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-flex: 1;\n -ms-flex: 1 1 auto;\n flex: 1 1 auto;\n -webkit-box-orient: vertical;\n -webkit-box-direction: normal;\n -ms-flex-direction: column;\n flex-direction: column;\n -ms-flex-item-align: stretch;\n align-self: stretch;\n}\n\n.visually-hidden,\n.visually-hidden-focusable:not(:focus):not(:focus-within) {\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.visually-hidden:not(caption),\n.visually-hidden-focusable:not(:focus):not(:focus-within):not(caption) {\n position: absolute !important;\n}\n\n.stretched-link::after {\n position: absolute;\n top: 0;\n left: 0;\n bottom: 0;\n right: 0;\n z-index: 1;\n content: \"\";\n}\n\n.text-truncate {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.vr {\n display: inline-block;\n -ms-flex-item-align: stretch;\n align-self: stretch;\n width: 1px;\n min-height: 1em;\n background-color: currentcolor;\n opacity: 1;\n}\n\n.align-baseline {\n vertical-align: baseline !important;\n}\n\n.align-top {\n vertical-align: top !important;\n}\n\n.align-middle {\n vertical-align: middle !important;\n}\n\n.align-bottom {\n vertical-align: bottom !important;\n}\n\n.align-text-bottom {\n vertical-align: text-bottom !important;\n}\n\n.align-text-top {\n vertical-align: text-top !important;\n}\n\n.float-start {\n float: right !important;\n}\n\n.float-end {\n float: left !important;\n}\n\n.float-none {\n float: none !important;\n}\n\n.object-fit-contain {\n -o-object-fit: contain !important;\n object-fit: contain !important;\n}\n\n.object-fit-cover {\n -o-object-fit: cover !important;\n object-fit: cover !important;\n}\n\n.object-fit-fill {\n -o-object-fit: fill !important;\n object-fit: fill !important;\n}\n\n.object-fit-scale {\n -o-object-fit: scale-down !important;\n object-fit: scale-down !important;\n}\n\n.object-fit-none {\n -o-object-fit: none !important;\n object-fit: none !important;\n}\n\n.opacity-0 {\n opacity: 0 !important;\n}\n\n.opacity-25 {\n opacity: 0.25 !important;\n}\n\n.opacity-50 {\n opacity: 0.5 !important;\n}\n\n.opacity-75 {\n opacity: 0.75 !important;\n}\n\n.opacity-100 {\n opacity: 1 !important;\n}\n\n.overflow-auto {\n overflow: auto !important;\n}\n\n.overflow-hidden {\n overflow: hidden !important;\n}\n\n.overflow-visible {\n overflow: visible !important;\n}\n\n.overflow-scroll {\n overflow: scroll !important;\n}\n\n.overflow-x-auto {\n overflow-x: auto !important;\n}\n\n.overflow-x-hidden {\n overflow-x: hidden !important;\n}\n\n.overflow-x-visible {\n overflow-x: visible !important;\n}\n\n.overflow-x-scroll {\n overflow-x: scroll !important;\n}\n\n.overflow-y-auto {\n overflow-y: auto !important;\n}\n\n.overflow-y-hidden {\n overflow-y: hidden !important;\n}\n\n.overflow-y-visible {\n overflow-y: visible !important;\n}\n\n.overflow-y-scroll {\n overflow-y: scroll !important;\n}\n\n.d-inline {\n display: inline !important;\n}\n\n.d-inline-block {\n display: inline-block !important;\n}\n\n.d-block {\n display: block !important;\n}\n\n.d-grid {\n display: grid !important;\n}\n\n.d-inline-grid {\n display: inline-grid !important;\n}\n\n.d-table {\n display: table !important;\n}\n\n.d-table-row {\n display: table-row !important;\n}\n\n.d-table-cell {\n display: table-cell !important;\n}\n\n.d-flex {\n display: -webkit-box !important;\n display: -ms-flexbox !important;\n display: flex !important;\n}\n\n.d-inline-flex {\n display: -webkit-inline-box !important;\n display: -ms-inline-flexbox !important;\n display: inline-flex !important;\n}\n\n.d-none {\n display: none !important;\n}\n\n.shadow {\n -webkit-box-shadow: -2px 2px 3px rgba(27, 23, 30, 0.1) !important;\n box-shadow: -2px 2px 3px rgba(27, 23, 30, 0.1) !important;\n}\n\n.shadow-sm {\n -webkit-box-shadow: 0 0.125rem 0.25rem rgba(var(--ct-body-color-rgb), 0.15) !important;\n box-shadow: 0 0.125rem 0.25rem rgba(var(--ct-body-color-rgb), 0.15) !important;\n}\n\n.shadow-lg {\n -webkit-box-shadow: 0 2px 5px 0 rgba(27, 23, 30, 0.3) !important;\n box-shadow: 0 2px 5px 0 rgba(27, 23, 30, 0.3) !important;\n}\n\n.shadow-none {\n -webkit-box-shadow: none !important;\n box-shadow: none !important;\n}\n\n.focus-ring-primary {\n --ct-focus-ring-color: rgba(var(--ct-primary-rgb), var(--ct-focus-ring-opacity));\n}\n\n.focus-ring-secondary {\n --ct-focus-ring-color: rgba(var(--ct-secondary-rgb), var(--ct-focus-ring-opacity));\n}\n\n.focus-ring-success {\n --ct-focus-ring-color: rgba(var(--ct-success-rgb), var(--ct-focus-ring-opacity));\n}\n\n.focus-ring-info {\n --ct-focus-ring-color: rgba(var(--ct-info-rgb), var(--ct-focus-ring-opacity));\n}\n\n.focus-ring-warning {\n --ct-focus-ring-color: rgba(var(--ct-warning-rgb), var(--ct-focus-ring-opacity));\n}\n\n.focus-ring-danger {\n --ct-focus-ring-color: rgba(var(--ct-danger-rgb), var(--ct-focus-ring-opacity));\n}\n\n.focus-ring-light {\n --ct-focus-ring-color: rgba(var(--ct-light-rgb), var(--ct-focus-ring-opacity));\n}\n\n.focus-ring-dark {\n --ct-focus-ring-color: rgba(var(--ct-dark-rgb), var(--ct-focus-ring-opacity));\n}\n\n.focus-ring-purple {\n --ct-focus-ring-color: rgba(var(--ct-purple-rgb), var(--ct-focus-ring-opacity));\n}\n\n.focus-ring-pink {\n --ct-focus-ring-color: rgba(var(--ct-pink-rgb), var(--ct-focus-ring-opacity));\n}\n\n.position-static {\n position: static !important;\n}\n\n.position-relative {\n position: relative !important;\n}\n\n.position-absolute {\n position: absolute !important;\n}\n\n.position-fixed {\n position: fixed !important;\n}\n\n.position-sticky {\n position: sticky !important;\n}\n\n.top-0 {\n top: 0 !important;\n}\n\n.top-50 {\n top: 50% !important;\n}\n\n.top-100 {\n top: 100% !important;\n}\n\n.bottom-0 {\n bottom: 0 !important;\n}\n\n.bottom-50 {\n bottom: 50% !important;\n}\n\n.bottom-100 {\n bottom: 100% !important;\n}\n\n.start-0 {\n right: 0 !important;\n}\n\n.start-50 {\n right: 50% !important;\n}\n\n.start-100 {\n right: 100% !important;\n}\n\n.end-0 {\n left: 0 !important;\n}\n\n.end-50 {\n left: 50% !important;\n}\n\n.end-100 {\n left: 100% !important;\n}\n\n.translate-middle {\n -webkit-transform: translate(50%, -50%) !important;\n transform: translate(50%, -50%) !important;\n}\n\n.translate-middle-x {\n -webkit-transform: translateX(50%) !important;\n transform: translateX(50%) !important;\n}\n\n.translate-middle-y {\n -webkit-transform: translateY(-50%) !important;\n transform: translateY(-50%) !important;\n}\n\n.border {\n border: var(--ct-border-width) var(--ct-border-style) var(--ct-border-color) !important;\n}\n\n.border-0 {\n border: 0 !important;\n}\n\n.border-top {\n border-top: var(--ct-border-width) var(--ct-border-style) var(--ct-border-color) !important;\n}\n\n.border-top-0 {\n border-top: 0 !important;\n}\n\n.border-end {\n border-left: var(--ct-border-width) var(--ct-border-style) var(--ct-border-color) !important;\n}\n\n.border-end-0 {\n border-left: 0 !important;\n}\n\n.border-bottom {\n border-bottom: var(--ct-border-width) var(--ct-border-style) var(--ct-border-color) !important;\n}\n\n.border-bottom-0 {\n border-bottom: 0 !important;\n}\n\n.border-start {\n border-right: var(--ct-border-width) var(--ct-border-style) var(--ct-border-color) !important;\n}\n\n.border-start-0 {\n border-right: 0 !important;\n}\n\n.border-primary {\n --ct-border-opacity: 1;\n border-color: rgba(var(--ct-primary-rgb), var(--ct-border-opacity)) !important;\n}\n\n.border-secondary {\n --ct-border-opacity: 1;\n border-color: rgba(var(--ct-secondary-rgb), var(--ct-border-opacity)) !important;\n}\n\n.border-success {\n --ct-border-opacity: 1;\n border-color: rgba(var(--ct-success-rgb), var(--ct-border-opacity)) !important;\n}\n\n.border-info {\n --ct-border-opacity: 1;\n border-color: rgba(var(--ct-info-rgb), var(--ct-border-opacity)) !important;\n}\n\n.border-warning {\n --ct-border-opacity: 1;\n border-color: rgba(var(--ct-warning-rgb), var(--ct-border-opacity)) !important;\n}\n\n.border-danger {\n --ct-border-opacity: 1;\n border-color: rgba(var(--ct-danger-rgb), var(--ct-border-opacity)) !important;\n}\n\n.border-light {\n --ct-border-opacity: 1;\n border-color: rgba(var(--ct-light-rgb), var(--ct-border-opacity)) !important;\n}\n\n.border-dark {\n --ct-border-opacity: 1;\n border-color: rgba(var(--ct-dark-rgb), var(--ct-border-opacity)) !important;\n}\n\n.border-purple {\n --ct-border-opacity: 1;\n border-color: rgba(var(--ct-purple-rgb), var(--ct-border-opacity)) !important;\n}\n\n.border-pink {\n --ct-border-opacity: 1;\n border-color: rgba(var(--ct-pink-rgb), var(--ct-border-opacity)) !important;\n}\n\n.border-black {\n --ct-border-opacity: 1;\n border-color: rgba(var(--ct-black-rgb), var(--ct-border-opacity)) !important;\n}\n\n.border-white {\n --ct-border-opacity: 1;\n border-color: rgba(var(--ct-white-rgb), var(--ct-border-opacity)) !important;\n}\n\n.border-primary-subtle {\n border-color: var(--ct-primary-border-subtle) !important;\n}\n\n.border-secondary-subtle {\n border-color: var(--ct-secondary-border-subtle) !important;\n}\n\n.border-success-subtle {\n border-color: var(--ct-success-border-subtle) !important;\n}\n\n.border-info-subtle {\n border-color: var(--ct-info-border-subtle) !important;\n}\n\n.border-warning-subtle {\n border-color: var(--ct-warning-border-subtle) !important;\n}\n\n.border-danger-subtle {\n border-color: var(--ct-danger-border-subtle) !important;\n}\n\n.border-light-subtle {\n border-color: var(--ct-light-border-subtle) !important;\n}\n\n.border-dark-subtle {\n border-color: var(--ct-dark-border-subtle) !important;\n}\n\n.border-1 {\n border-width: 1px !important;\n}\n\n.border-2 {\n border-width: 2px !important;\n}\n\n.border-3 {\n border-width: 3px !important;\n}\n\n.border-4 {\n border-width: 4px !important;\n}\n\n.border-5 {\n border-width: 5px !important;\n}\n\n.border-opacity-10 {\n --ct-border-opacity: 0.1;\n}\n\n.border-opacity-25 {\n --ct-border-opacity: 0.25;\n}\n\n.border-opacity-50 {\n --ct-border-opacity: 0.5;\n}\n\n.border-opacity-75 {\n --ct-border-opacity: 0.75;\n}\n\n.border-opacity-100 {\n --ct-border-opacity: 1;\n}\n\n.w-25 {\n width: 25% !important;\n}\n\n.w-50 {\n width: 50% !important;\n}\n\n.w-75 {\n width: 75% !important;\n}\n\n.w-100 {\n width: 100% !important;\n}\n\n.w-auto {\n width: auto !important;\n}\n\n.mw-100 {\n max-width: 100% !important;\n}\n\n.vw-100 {\n width: 100vw !important;\n}\n\n.min-vw-100 {\n min-width: 100vw !important;\n}\n\n.h-25 {\n height: 25% !important;\n}\n\n.h-50 {\n height: 50% !important;\n}\n\n.h-75 {\n height: 75% !important;\n}\n\n.h-100 {\n height: 100% !important;\n}\n\n.h-auto {\n height: auto !important;\n}\n\n.mh-100 {\n max-height: 100% !important;\n}\n\n.vh-100 {\n height: 100vh !important;\n}\n\n.min-vh-100 {\n min-height: 100vh !important;\n}\n\n.flex-fill {\n -webkit-box-flex: 1 !important;\n -ms-flex: 1 1 auto !important;\n flex: 1 1 auto !important;\n}\n\n.flex-row {\n -webkit-box-orient: horizontal !important;\n -webkit-box-direction: normal !important;\n -ms-flex-direction: row !important;\n flex-direction: row !important;\n}\n\n.flex-column {\n -webkit-box-orient: vertical !important;\n -webkit-box-direction: normal !important;\n -ms-flex-direction: column !important;\n flex-direction: column !important;\n}\n\n.flex-row-reverse {\n -webkit-box-orient: horizontal !important;\n -webkit-box-direction: reverse !important;\n -ms-flex-direction: row-reverse !important;\n flex-direction: row-reverse !important;\n}\n\n.flex-column-reverse {\n -webkit-box-orient: vertical !important;\n -webkit-box-direction: reverse !important;\n -ms-flex-direction: column-reverse !important;\n flex-direction: column-reverse !important;\n}\n\n.flex-grow-0 {\n -webkit-box-flex: 0 !important;\n -ms-flex-positive: 0 !important;\n flex-grow: 0 !important;\n}\n\n.flex-grow-1 {\n -webkit-box-flex: 1 !important;\n -ms-flex-positive: 1 !important;\n flex-grow: 1 !important;\n}\n\n.flex-shrink-0 {\n -ms-flex-negative: 0 !important;\n flex-shrink: 0 !important;\n}\n\n.flex-shrink-1 {\n -ms-flex-negative: 1 !important;\n flex-shrink: 1 !important;\n}\n\n.flex-wrap {\n -ms-flex-wrap: wrap !important;\n flex-wrap: wrap !important;\n}\n\n.flex-nowrap {\n -ms-flex-wrap: nowrap !important;\n flex-wrap: nowrap !important;\n}\n\n.flex-wrap-reverse {\n -ms-flex-wrap: wrap-reverse !important;\n flex-wrap: wrap-reverse !important;\n}\n\n.justify-content-start {\n -webkit-box-pack: start !important;\n -ms-flex-pack: start !important;\n justify-content: flex-start !important;\n}\n\n.justify-content-end {\n -webkit-box-pack: end !important;\n -ms-flex-pack: end !important;\n justify-content: flex-end !important;\n}\n\n.justify-content-center {\n -webkit-box-pack: center !important;\n -ms-flex-pack: center !important;\n justify-content: center !important;\n}\n\n.justify-content-between {\n -webkit-box-pack: justify !important;\n -ms-flex-pack: justify !important;\n justify-content: space-between !important;\n}\n\n.justify-content-around {\n -ms-flex-pack: distribute !important;\n justify-content: space-around !important;\n}\n\n.justify-content-evenly {\n -webkit-box-pack: space-evenly !important;\n -ms-flex-pack: space-evenly !important;\n justify-content: space-evenly !important;\n}\n\n.align-items-start {\n -webkit-box-align: start !important;\n -ms-flex-align: start !important;\n align-items: flex-start !important;\n}\n\n.align-items-end {\n -webkit-box-align: end !important;\n -ms-flex-align: end !important;\n align-items: flex-end !important;\n}\n\n.align-items-center {\n -webkit-box-align: center !important;\n -ms-flex-align: center !important;\n align-items: center !important;\n}\n\n.align-items-baseline {\n -webkit-box-align: baseline !important;\n -ms-flex-align: baseline !important;\n align-items: baseline !important;\n}\n\n.align-items-stretch {\n -webkit-box-align: stretch !important;\n -ms-flex-align: stretch !important;\n align-items: stretch !important;\n}\n\n.align-content-start {\n -ms-flex-line-pack: start !important;\n align-content: flex-start !important;\n}\n\n.align-content-end {\n -ms-flex-line-pack: end !important;\n align-content: flex-end !important;\n}\n\n.align-content-center {\n -ms-flex-line-pack: center !important;\n align-content: center !important;\n}\n\n.align-content-between {\n -ms-flex-line-pack: justify !important;\n align-content: space-between !important;\n}\n\n.align-content-around {\n -ms-flex-line-pack: distribute !important;\n align-content: space-around !important;\n}\n\n.align-content-stretch {\n -ms-flex-line-pack: stretch !important;\n align-content: stretch !important;\n}\n\n.align-self-auto {\n -ms-flex-item-align: auto !important;\n align-self: auto !important;\n}\n\n.align-self-start {\n -ms-flex-item-align: start !important;\n align-self: flex-start !important;\n}\n\n.align-self-end {\n -ms-flex-item-align: end !important;\n align-self: flex-end !important;\n}\n\n.align-self-center {\n -ms-flex-item-align: center !important;\n align-self: center !important;\n}\n\n.align-self-baseline {\n -ms-flex-item-align: baseline !important;\n align-self: baseline !important;\n}\n\n.align-self-stretch {\n -ms-flex-item-align: stretch !important;\n align-self: stretch !important;\n}\n\n.order-first {\n -webkit-box-ordinal-group: 0 !important;\n -ms-flex-order: -1 !important;\n order: -1 !important;\n}\n\n.order-0 {\n -webkit-box-ordinal-group: 1 !important;\n -ms-flex-order: 0 !important;\n order: 0 !important;\n}\n\n.order-1 {\n -webkit-box-ordinal-group: 2 !important;\n -ms-flex-order: 1 !important;\n order: 1 !important;\n}\n\n.order-2 {\n -webkit-box-ordinal-group: 3 !important;\n -ms-flex-order: 2 !important;\n order: 2 !important;\n}\n\n.order-3 {\n -webkit-box-ordinal-group: 4 !important;\n -ms-flex-order: 3 !important;\n order: 3 !important;\n}\n\n.order-4 {\n -webkit-box-ordinal-group: 5 !important;\n -ms-flex-order: 4 !important;\n order: 4 !important;\n}\n\n.order-5 {\n -webkit-box-ordinal-group: 6 !important;\n -ms-flex-order: 5 !important;\n order: 5 !important;\n}\n\n.order-last {\n -webkit-box-ordinal-group: 7 !important;\n -ms-flex-order: 6 !important;\n order: 6 !important;\n}\n\n.m-0 {\n margin: 0 !important;\n}\n\n.m-1 {\n margin: 0.3125rem !important;\n}\n\n.m-2 {\n margin: 0.625rem !important;\n}\n\n.m-3 {\n margin: 1.25rem !important;\n}\n\n.m-4 {\n margin: 1.875rem !important;\n}\n\n.m-5 {\n margin: 3.75rem !important;\n}\n\n.m-auto {\n margin: auto !important;\n}\n\n.mx-0 {\n margin-left: 0 !important;\n margin-right: 0 !important;\n}\n\n.mx-1 {\n margin-left: 0.3125rem !important;\n margin-right: 0.3125rem !important;\n}\n\n.mx-2 {\n margin-left: 0.625rem !important;\n margin-right: 0.625rem !important;\n}\n\n.mx-3 {\n margin-left: 1.25rem !important;\n margin-right: 1.25rem !important;\n}\n\n.mx-4 {\n margin-left: 1.875rem !important;\n margin-right: 1.875rem !important;\n}\n\n.mx-5 {\n margin-left: 3.75rem !important;\n margin-right: 3.75rem !important;\n}\n\n.mx-auto {\n margin-left: auto !important;\n margin-right: auto !important;\n}\n\n.my-0 {\n margin-top: 0 !important;\n margin-bottom: 0 !important;\n}\n\n.my-1 {\n margin-top: 0.3125rem !important;\n margin-bottom: 0.3125rem !important;\n}\n\n.my-2 {\n margin-top: 0.625rem !important;\n margin-bottom: 0.625rem !important;\n}\n\n.my-3 {\n margin-top: 1.25rem !important;\n margin-bottom: 1.25rem !important;\n}\n\n.my-4 {\n margin-top: 1.875rem !important;\n margin-bottom: 1.875rem !important;\n}\n\n.my-5 {\n margin-top: 3.75rem !important;\n margin-bottom: 3.75rem !important;\n}\n\n.my-auto {\n margin-top: auto !important;\n margin-bottom: auto !important;\n}\n\n.mt-0 {\n margin-top: 0 !important;\n}\n\n.mt-1 {\n margin-top: 0.3125rem !important;\n}\n\n.mt-2 {\n margin-top: 0.625rem !important;\n}\n\n.mt-3 {\n margin-top: 1.25rem !important;\n}\n\n.mt-4 {\n margin-top: 1.875rem !important;\n}\n\n.mt-5 {\n margin-top: 3.75rem !important;\n}\n\n.mt-auto {\n margin-top: auto !important;\n}\n\n.me-0 {\n margin-left: 0 !important;\n}\n\n.me-1 {\n margin-left: 0.3125rem !important;\n}\n\n.me-2 {\n margin-left: 0.625rem !important;\n}\n\n.me-3 {\n margin-left: 1.25rem !important;\n}\n\n.me-4 {\n margin-left: 1.875rem !important;\n}\n\n.me-5 {\n margin-left: 3.75rem !important;\n}\n\n.me-auto {\n margin-left: auto !important;\n}\n\n.mb-0 {\n margin-bottom: 0 !important;\n}\n\n.mb-1 {\n margin-bottom: 0.3125rem !important;\n}\n\n.mb-2 {\n margin-bottom: 0.625rem !important;\n}\n\n.mb-3 {\n margin-bottom: 1.25rem !important;\n}\n\n.mb-4 {\n margin-bottom: 1.875rem !important;\n}\n\n.mb-5 {\n margin-bottom: 3.75rem !important;\n}\n\n.mb-auto {\n margin-bottom: auto !important;\n}\n\n.ms-0 {\n margin-right: 0 !important;\n}\n\n.ms-1 {\n margin-right: 0.3125rem !important;\n}\n\n.ms-2 {\n margin-right: 0.625rem !important;\n}\n\n.ms-3 {\n margin-right: 1.25rem !important;\n}\n\n.ms-4 {\n margin-right: 1.875rem !important;\n}\n\n.ms-5 {\n margin-right: 3.75rem !important;\n}\n\n.ms-auto {\n margin-right: auto !important;\n}\n\n.m-n1 {\n margin: -0.3125rem !important;\n}\n\n.m-n2 {\n margin: -0.625rem !important;\n}\n\n.m-n3 {\n margin: -1.25rem !important;\n}\n\n.m-n4 {\n margin: -1.875rem !important;\n}\n\n.m-n5 {\n margin: -3.75rem !important;\n}\n\n.mx-n1 {\n margin-left: -0.3125rem !important;\n margin-right: -0.3125rem !important;\n}\n\n.mx-n2 {\n margin-left: -0.625rem !important;\n margin-right: -0.625rem !important;\n}\n\n.mx-n3 {\n margin-left: -1.25rem !important;\n margin-right: -1.25rem !important;\n}\n\n.mx-n4 {\n margin-left: -1.875rem !important;\n margin-right: -1.875rem !important;\n}\n\n.mx-n5 {\n margin-left: -3.75rem !important;\n margin-right: -3.75rem !important;\n}\n\n.my-n1 {\n margin-top: -0.3125rem !important;\n margin-bottom: -0.3125rem !important;\n}\n\n.my-n2 {\n margin-top: -0.625rem !important;\n margin-bottom: -0.625rem !important;\n}\n\n.my-n3 {\n margin-top: -1.25rem !important;\n margin-bottom: -1.25rem !important;\n}\n\n.my-n4 {\n margin-top: -1.875rem !important;\n margin-bottom: -1.875rem !important;\n}\n\n.my-n5 {\n margin-top: -3.75rem !important;\n margin-bottom: -3.75rem !important;\n}\n\n.mt-n1 {\n margin-top: -0.3125rem !important;\n}\n\n.mt-n2 {\n margin-top: -0.625rem !important;\n}\n\n.mt-n3 {\n margin-top: -1.25rem !important;\n}\n\n.mt-n4 {\n margin-top: -1.875rem !important;\n}\n\n.mt-n5 {\n margin-top: -3.75rem !important;\n}\n\n.me-n1 {\n margin-left: -0.3125rem !important;\n}\n\n.me-n2 {\n margin-left: -0.625rem !important;\n}\n\n.me-n3 {\n margin-left: -1.25rem !important;\n}\n\n.me-n4 {\n margin-left: -1.875rem !important;\n}\n\n.me-n5 {\n margin-left: -3.75rem !important;\n}\n\n.mb-n1 {\n margin-bottom: -0.3125rem !important;\n}\n\n.mb-n2 {\n margin-bottom: -0.625rem !important;\n}\n\n.mb-n3 {\n margin-bottom: -1.25rem !important;\n}\n\n.mb-n4 {\n margin-bottom: -1.875rem !important;\n}\n\n.mb-n5 {\n margin-bottom: -3.75rem !important;\n}\n\n.ms-n1 {\n margin-right: -0.3125rem !important;\n}\n\n.ms-n2 {\n margin-right: -0.625rem !important;\n}\n\n.ms-n3 {\n margin-right: -1.25rem !important;\n}\n\n.ms-n4 {\n margin-right: -1.875rem !important;\n}\n\n.ms-n5 {\n margin-right: -3.75rem !important;\n}\n\n.p-0 {\n padding: 0 !important;\n}\n\n.p-1 {\n padding: 0.3125rem !important;\n}\n\n.p-2 {\n padding: 0.625rem !important;\n}\n\n.p-3 {\n padding: 1.25rem !important;\n}\n\n.p-4 {\n padding: 1.875rem !important;\n}\n\n.p-5 {\n padding: 3.75rem !important;\n}\n\n.px-0 {\n padding-left: 0 !important;\n padding-right: 0 !important;\n}\n\n.px-1 {\n padding-left: 0.3125rem !important;\n padding-right: 0.3125rem !important;\n}\n\n.px-2 {\n padding-left: 0.625rem !important;\n padding-right: 0.625rem !important;\n}\n\n.px-3 {\n padding-left: 1.25rem !important;\n padding-right: 1.25rem !important;\n}\n\n.px-4 {\n padding-left: 1.875rem !important;\n padding-right: 1.875rem !important;\n}\n\n.px-5 {\n padding-left: 3.75rem !important;\n padding-right: 3.75rem !important;\n}\n\n.py-0 {\n padding-top: 0 !important;\n padding-bottom: 0 !important;\n}\n\n.py-1 {\n padding-top: 0.3125rem !important;\n padding-bottom: 0.3125rem !important;\n}\n\n.py-2 {\n padding-top: 0.625rem !important;\n padding-bottom: 0.625rem !important;\n}\n\n.py-3 {\n padding-top: 1.25rem !important;\n padding-bottom: 1.25rem !important;\n}\n\n.py-4 {\n padding-top: 1.875rem !important;\n padding-bottom: 1.875rem !important;\n}\n\n.py-5 {\n padding-top: 3.75rem !important;\n padding-bottom: 3.75rem !important;\n}\n\n.pt-0 {\n padding-top: 0 !important;\n}\n\n.pt-1 {\n padding-top: 0.3125rem !important;\n}\n\n.pt-2 {\n padding-top: 0.625rem !important;\n}\n\n.pt-3 {\n padding-top: 1.25rem !important;\n}\n\n.pt-4 {\n padding-top: 1.875rem !important;\n}\n\n.pt-5 {\n padding-top: 3.75rem !important;\n}\n\n.pe-0 {\n padding-left: 0 !important;\n}\n\n.pe-1 {\n padding-left: 0.3125rem !important;\n}\n\n.pe-2 {\n padding-left: 0.625rem !important;\n}\n\n.pe-3 {\n padding-left: 1.25rem !important;\n}\n\n.pe-4 {\n padding-left: 1.875rem !important;\n}\n\n.pe-5 {\n padding-left: 3.75rem !important;\n}\n\n.pb-0 {\n padding-bottom: 0 !important;\n}\n\n.pb-1 {\n padding-bottom: 0.3125rem !important;\n}\n\n.pb-2 {\n padding-bottom: 0.625rem !important;\n}\n\n.pb-3 {\n padding-bottom: 1.25rem !important;\n}\n\n.pb-4 {\n padding-bottom: 1.875rem !important;\n}\n\n.pb-5 {\n padding-bottom: 3.75rem !important;\n}\n\n.ps-0 {\n padding-right: 0 !important;\n}\n\n.ps-1 {\n padding-right: 0.3125rem !important;\n}\n\n.ps-2 {\n padding-right: 0.625rem !important;\n}\n\n.ps-3 {\n padding-right: 1.25rem !important;\n}\n\n.ps-4 {\n padding-right: 1.875rem !important;\n}\n\n.ps-5 {\n padding-right: 3.75rem !important;\n}\n\n.gap-0 {\n gap: 0 !important;\n}\n\n.gap-1 {\n gap: 0.3125rem !important;\n}\n\n.gap-2 {\n gap: 0.625rem !important;\n}\n\n.gap-3 {\n gap: 1.25rem !important;\n}\n\n.gap-4 {\n gap: 1.875rem !important;\n}\n\n.gap-5 {\n gap: 3.75rem !important;\n}\n\n.row-gap-0 {\n row-gap: 0 !important;\n}\n\n.row-gap-1 {\n row-gap: 0.3125rem !important;\n}\n\n.row-gap-2 {\n row-gap: 0.625rem !important;\n}\n\n.row-gap-3 {\n row-gap: 1.25rem !important;\n}\n\n.row-gap-4 {\n row-gap: 1.875rem !important;\n}\n\n.row-gap-5 {\n row-gap: 3.75rem !important;\n}\n\n.column-gap-0 {\n -webkit-column-gap: 0 !important;\n -moz-column-gap: 0 !important;\n column-gap: 0 !important;\n}\n\n.column-gap-1 {\n -webkit-column-gap: 0.3125rem !important;\n -moz-column-gap: 0.3125rem !important;\n column-gap: 0.3125rem !important;\n}\n\n.column-gap-2 {\n -webkit-column-gap: 0.625rem !important;\n -moz-column-gap: 0.625rem !important;\n column-gap: 0.625rem !important;\n}\n\n.column-gap-3 {\n -webkit-column-gap: 1.25rem !important;\n -moz-column-gap: 1.25rem !important;\n column-gap: 1.25rem !important;\n}\n\n.column-gap-4 {\n -webkit-column-gap: 1.875rem !important;\n -moz-column-gap: 1.875rem !important;\n column-gap: 1.875rem !important;\n}\n\n.column-gap-5 {\n -webkit-column-gap: 3.75rem !important;\n -moz-column-gap: 3.75rem !important;\n column-gap: 3.75rem !important;\n}\n\n.font-monospace {\n font-family: var(--ct-font-monospace) !important;\n}\n\n.fs-1 {\n font-size: calc(1.34375rem + 1.125vw) !important;\n}\n\n.fs-2 {\n font-size: calc(1.307rem + 0.684vw) !important;\n}\n\n.fs-3 {\n font-size: calc(1.271125rem + 0.2535vw) !important;\n}\n\n.fs-4 {\n font-size: 1.09375rem !important;\n}\n\n.fs-5 {\n font-size: 0.91rem !important;\n}\n\n.fs-6 {\n font-size: 0.74375rem !important;\n}\n\n.fst-italic {\n font-style: italic !important;\n}\n\n.fst-normal {\n font-style: normal !important;\n}\n\n.fw-lighter {\n font-weight: lighter !important;\n}\n\n.fw-light {\n font-weight: 300 !important;\n}\n\n.fw-normal {\n font-weight: 400 !important;\n}\n\n.fw-medium {\n font-weight: 500 !important;\n}\n\n.fw-semibold {\n font-weight: 600 !important;\n}\n\n.fw-bold {\n font-weight: 700 !important;\n}\n\n.fw-bolder {\n font-weight: bolder !important;\n}\n\n.lh-1 {\n line-height: 1 !important;\n}\n\n.lh-sm {\n line-height: 1.25 !important;\n}\n\n.lh-base {\n line-height: 1.5 !important;\n}\n\n.lh-lg {\n line-height: 2 !important;\n}\n\n.text-start {\n text-align: right !important;\n}\n\n.text-end {\n text-align: left !important;\n}\n\n.text-center {\n text-align: center !important;\n}\n\n.text-decoration-none {\n text-decoration: none !important;\n}\n\n.text-decoration-underline {\n text-decoration: underline !important;\n}\n\n.text-decoration-line-through {\n text-decoration: line-through !important;\n}\n\n.text-lowercase {\n text-transform: lowercase !important;\n}\n\n.text-uppercase {\n text-transform: uppercase !important;\n}\n\n.text-capitalize {\n text-transform: capitalize !important;\n}\n\n.text-wrap {\n white-space: normal !important;\n}\n\n.text-nowrap {\n white-space: nowrap !important;\n}\n.text-primary {\n --ct-text-opacity: 1;\n color: rgba(var(--ct-primary-rgb), var(--ct-text-opacity)) !important;\n}\n\n.text-secondary {\n --ct-text-opacity: 1;\n color: rgba(var(--ct-secondary-rgb), var(--ct-text-opacity)) !important;\n}\n\n.text-success {\n --ct-text-opacity: 1;\n color: rgba(var(--ct-success-rgb), var(--ct-text-opacity)) !important;\n}\n\n.text-info {\n --ct-text-opacity: 1;\n color: rgba(var(--ct-info-rgb), var(--ct-text-opacity)) !important;\n}\n\n.text-warning {\n --ct-text-opacity: 1;\n color: rgba(var(--ct-warning-rgb), var(--ct-text-opacity)) !important;\n}\n\n.text-danger {\n --ct-text-opacity: 1;\n color: rgba(var(--ct-danger-rgb), var(--ct-text-opacity)) !important;\n}\n\n.text-light {\n --ct-text-opacity: 1;\n color: rgba(var(--ct-light-rgb), var(--ct-text-opacity)) !important;\n}\n\n.text-dark {\n --ct-text-opacity: 1;\n color: rgba(var(--ct-dark-rgb), var(--ct-text-opacity)) !important;\n}\n\n.text-purple {\n --ct-text-opacity: 1;\n color: rgba(var(--ct-purple-rgb), var(--ct-text-opacity)) !important;\n}\n\n.text-pink {\n --ct-text-opacity: 1;\n color: rgba(var(--ct-pink-rgb), var(--ct-text-opacity)) !important;\n}\n\n.text-black {\n --ct-text-opacity: 1;\n color: rgba(var(--ct-black-rgb), var(--ct-text-opacity)) !important;\n}\n\n.text-white {\n --ct-text-opacity: 1;\n color: rgba(var(--ct-white-rgb), var(--ct-text-opacity)) !important;\n}\n\n.text-body {\n --ct-text-opacity: 1;\n color: rgba(var(--ct-body-color-rgb), var(--ct-text-opacity)) !important;\n}\n\n.text-muted {\n --ct-text-opacity: 1;\n color: var(--ct-secondary-color) !important;\n}\n\n.text-black-50 {\n --ct-text-opacity: 1;\n color: rgba(0, 0, 0, 0.5) !important;\n}\n\n.text-white-50 {\n --ct-text-opacity: 1;\n color: rgba(255, 255, 255, 0.5) !important;\n}\n\n.text-body-secondary {\n --ct-text-opacity: 1;\n color: var(--ct-secondary-color) !important;\n}\n\n.text-body-tertiary {\n --ct-text-opacity: 1;\n color: var(--ct-tertiary-color) !important;\n}\n\n.text-body-emphasis {\n --ct-text-opacity: 1;\n color: var(--ct-emphasis-color) !important;\n}\n\n.text-reset {\n --ct-text-opacity: 1;\n color: inherit !important;\n}\n\n.text-opacity-25 {\n --ct-text-opacity: 0.25;\n}\n\n.text-opacity-50 {\n --ct-text-opacity: 0.5;\n}\n\n.text-opacity-75 {\n --ct-text-opacity: 0.75;\n}\n\n.text-opacity-100 {\n --ct-text-opacity: 1;\n}\n\n.text-primary-emphasis {\n color: var(--ct-primary-text-emphasis) !important;\n}\n\n.text-secondary-emphasis {\n color: var(--ct-secondary-text-emphasis) !important;\n}\n\n.text-success-emphasis {\n color: var(--ct-success-text-emphasis) !important;\n}\n\n.text-info-emphasis {\n color: var(--ct-info-text-emphasis) !important;\n}\n\n.text-warning-emphasis {\n color: var(--ct-warning-text-emphasis) !important;\n}\n\n.text-danger-emphasis {\n color: var(--ct-danger-text-emphasis) !important;\n}\n\n.text-light-emphasis {\n color: var(--ct-light-text-emphasis) !important;\n}\n\n.text-dark-emphasis {\n color: var(--ct-dark-text-emphasis) !important;\n}\n\n.link-opacity-10 {\n --ct-link-opacity: 0.1;\n}\n\n.link-opacity-10-hover:hover {\n --ct-link-opacity: 0.1;\n}\n\n.link-opacity-25 {\n --ct-link-opacity: 0.25;\n}\n\n.link-opacity-25-hover:hover {\n --ct-link-opacity: 0.25;\n}\n\n.link-opacity-50 {\n --ct-link-opacity: 0.5;\n}\n\n.link-opacity-50-hover:hover {\n --ct-link-opacity: 0.5;\n}\n\n.link-opacity-75 {\n --ct-link-opacity: 0.75;\n}\n\n.link-opacity-75-hover:hover {\n --ct-link-opacity: 0.75;\n}\n\n.link-opacity-100 {\n --ct-link-opacity: 1;\n}\n\n.link-opacity-100-hover:hover {\n --ct-link-opacity: 1;\n}\n\n.link-offset-1 {\n text-underline-offset: 0.125em !important;\n}\n\n.link-offset-1-hover:hover {\n text-underline-offset: 0.125em !important;\n}\n\n.link-offset-2 {\n text-underline-offset: 0.25em !important;\n}\n\n.link-offset-2-hover:hover {\n text-underline-offset: 0.25em !important;\n}\n\n.link-offset-3 {\n text-underline-offset: 0.375em !important;\n}\n\n.link-offset-3-hover:hover {\n text-underline-offset: 0.375em !important;\n}\n\n.link-underline-primary {\n --ct-link-underline-opacity: 1;\n text-decoration-color: rgba(var(--ct-primary-rgb), var(--ct-link-underline-opacity)) !important;\n}\n\n.link-underline-secondary {\n --ct-link-underline-opacity: 1;\n text-decoration-color: rgba(var(--ct-secondary-rgb), var(--ct-link-underline-opacity)) !important;\n}\n\n.link-underline-success {\n --ct-link-underline-opacity: 1;\n text-decoration-color: rgba(var(--ct-success-rgb), var(--ct-link-underline-opacity)) !important;\n}\n\n.link-underline-info {\n --ct-link-underline-opacity: 1;\n text-decoration-color: rgba(var(--ct-info-rgb), var(--ct-link-underline-opacity)) !important;\n}\n\n.link-underline-warning {\n --ct-link-underline-opacity: 1;\n text-decoration-color: rgba(var(--ct-warning-rgb), var(--ct-link-underline-opacity)) !important;\n}\n\n.link-underline-danger {\n --ct-link-underline-opacity: 1;\n text-decoration-color: rgba(var(--ct-danger-rgb), var(--ct-link-underline-opacity)) !important;\n}\n\n.link-underline-light {\n --ct-link-underline-opacity: 1;\n text-decoration-color: rgba(var(--ct-light-rgb), var(--ct-link-underline-opacity)) !important;\n}\n\n.link-underline-dark {\n --ct-link-underline-opacity: 1;\n text-decoration-color: rgba(var(--ct-dark-rgb), var(--ct-link-underline-opacity)) !important;\n}\n\n.link-underline-purple {\n --ct-link-underline-opacity: 1;\n text-decoration-color: rgba(var(--ct-purple-rgb), var(--ct-link-underline-opacity)) !important;\n}\n\n.link-underline-pink {\n --ct-link-underline-opacity: 1;\n text-decoration-color: rgba(var(--ct-pink-rgb), var(--ct-link-underline-opacity)) !important;\n}\n\n.link-underline {\n --ct-link-underline-opacity: 1;\n text-decoration-color: rgba(var(--ct-link-color-rgb), var(--ct-link-underline-opacity, 1)) !important;\n}\n\n.link-underline-opacity-0 {\n --ct-link-underline-opacity: 0;\n}\n\n.link-underline-opacity-0-hover:hover {\n --ct-link-underline-opacity: 0;\n}\n\n.link-underline-opacity-10 {\n --ct-link-underline-opacity: 0.1;\n}\n\n.link-underline-opacity-10-hover:hover {\n --ct-link-underline-opacity: 0.1;\n}\n\n.link-underline-opacity-25 {\n --ct-link-underline-opacity: 0.25;\n}\n\n.link-underline-opacity-25-hover:hover {\n --ct-link-underline-opacity: 0.25;\n}\n\n.link-underline-opacity-50 {\n --ct-link-underline-opacity: 0.5;\n}\n\n.link-underline-opacity-50-hover:hover {\n --ct-link-underline-opacity: 0.5;\n}\n\n.link-underline-opacity-75 {\n --ct-link-underline-opacity: 0.75;\n}\n\n.link-underline-opacity-75-hover:hover {\n --ct-link-underline-opacity: 0.75;\n}\n\n.link-underline-opacity-100 {\n --ct-link-underline-opacity: 1;\n}\n\n.link-underline-opacity-100-hover:hover {\n --ct-link-underline-opacity: 1;\n}\n\n.bg-primary {\n --ct-bg-opacity: 1;\n background-color: rgba(var(--ct-primary-rgb), var(--ct-bg-opacity)) !important;\n}\n\n.bg-secondary {\n --ct-bg-opacity: 1;\n background-color: rgba(var(--ct-secondary-rgb), var(--ct-bg-opacity)) !important;\n}\n\n.bg-success {\n --ct-bg-opacity: 1;\n background-color: rgba(var(--ct-success-rgb), var(--ct-bg-opacity)) !important;\n}\n\n.bg-info {\n --ct-bg-opacity: 1;\n background-color: rgba(var(--ct-info-rgb), var(--ct-bg-opacity)) !important;\n}\n\n.bg-warning {\n --ct-bg-opacity: 1;\n background-color: rgba(var(--ct-warning-rgb), var(--ct-bg-opacity)) !important;\n}\n\n.bg-danger {\n --ct-bg-opacity: 1;\n background-color: rgba(var(--ct-danger-rgb), var(--ct-bg-opacity)) !important;\n}\n\n.bg-light {\n --ct-bg-opacity: 1;\n background-color: rgba(var(--ct-light-rgb), var(--ct-bg-opacity)) !important;\n}\n\n.bg-dark {\n --ct-bg-opacity: 1;\n background-color: rgba(var(--ct-dark-rgb), var(--ct-bg-opacity)) !important;\n}\n\n.bg-purple {\n --ct-bg-opacity: 1;\n background-color: rgba(var(--ct-purple-rgb), var(--ct-bg-opacity)) !important;\n}\n\n.bg-pink {\n --ct-bg-opacity: 1;\n background-color: rgba(var(--ct-pink-rgb), var(--ct-bg-opacity)) !important;\n}\n\n.bg-black {\n --ct-bg-opacity: 1;\n background-color: rgba(var(--ct-black-rgb), var(--ct-bg-opacity)) !important;\n}\n\n.bg-white {\n --ct-bg-opacity: 1;\n background-color: rgba(var(--ct-white-rgb), var(--ct-bg-opacity)) !important;\n}\n\n.bg-body {\n --ct-bg-opacity: 1;\n background-color: rgba(var(--ct-body-bg-rgb), var(--ct-bg-opacity)) !important;\n}\n\n.bg-transparent {\n --ct-bg-opacity: 1;\n background-color: transparent !important;\n}\n\n.bg-body-secondary {\n --ct-bg-opacity: 1;\n background-color: rgba(var(--ct-secondary-bg-rgb), var(--ct-bg-opacity)) !important;\n}\n\n.bg-body-tertiary {\n --ct-bg-opacity: 1;\n background-color: rgba(var(--ct-tertiary-bg-rgb), var(--ct-bg-opacity)) !important;\n}\n\n.bg-opacity-10 {\n --ct-bg-opacity: 0.1;\n}\n\n.bg-opacity-25 {\n --ct-bg-opacity: 0.25;\n}\n\n.bg-opacity-50 {\n --ct-bg-opacity: 0.5;\n}\n\n.bg-opacity-75 {\n --ct-bg-opacity: 0.75;\n}\n\n.bg-opacity-100 {\n --ct-bg-opacity: 1;\n}\n\n.bg-primary-subtle {\n background-color: var(--ct-primary-bg-subtle) !important;\n}\n\n.bg-secondary-subtle {\n background-color: var(--ct-secondary-bg-subtle) !important;\n}\n\n.bg-success-subtle {\n background-color: var(--ct-success-bg-subtle) !important;\n}\n\n.bg-info-subtle {\n background-color: var(--ct-info-bg-subtle) !important;\n}\n\n.bg-warning-subtle {\n background-color: var(--ct-warning-bg-subtle) !important;\n}\n\n.bg-danger-subtle {\n background-color: var(--ct-danger-bg-subtle) !important;\n}\n\n.bg-light-subtle {\n background-color: var(--ct-light-bg-subtle) !important;\n}\n\n.bg-dark-subtle {\n background-color: var(--ct-dark-bg-subtle) !important;\n}\n\n.bg-gradient {\n background-image: var(--ct-gradient) !important;\n}\n\n.user-select-all {\n -webkit-user-select: all !important;\n -moz-user-select: all !important;\n user-select: all !important;\n}\n\n.user-select-auto {\n -webkit-user-select: auto !important;\n -moz-user-select: auto !important;\n -ms-user-select: auto !important;\n user-select: auto !important;\n}\n\n.user-select-none {\n -webkit-user-select: none !important;\n -moz-user-select: none !important;\n -ms-user-select: none !important;\n user-select: none !important;\n}\n\n.pe-none {\n pointer-events: none !important;\n}\n\n.pe-auto {\n pointer-events: auto !important;\n}\n\n.rounded {\n border-radius: var(--ct-border-radius) !important;\n}\n\n.rounded-0 {\n border-radius: 0 !important;\n}\n\n.rounded-1 {\n border-radius: var(--ct-border-radius-sm) !important;\n}\n\n.rounded-2 {\n border-radius: var(--ct-border-radius) !important;\n}\n\n.rounded-3 {\n border-radius: var(--ct-border-radius-lg) !important;\n}\n\n.rounded-4 {\n border-radius: var(--ct-border-radius-xl) !important;\n}\n\n.rounded-5 {\n border-radius: var(--ct-border-radius-xxl) !important;\n}\n\n.rounded-circle {\n border-radius: 50% !important;\n}\n\n.rounded-pill {\n border-radius: var(--ct-border-radius-pill) !important;\n}\n\n.rounded-top {\n border-top-right-radius: var(--ct-border-radius) !important;\n border-top-left-radius: var(--ct-border-radius) !important;\n}\n\n.rounded-top-0 {\n border-top-right-radius: 0 !important;\n border-top-left-radius: 0 !important;\n}\n\n.rounded-top-1 {\n border-top-right-radius: var(--ct-border-radius-sm) !important;\n border-top-left-radius: var(--ct-border-radius-sm) !important;\n}\n\n.rounded-top-2 {\n border-top-right-radius: var(--ct-border-radius) !important;\n border-top-left-radius: var(--ct-border-radius) !important;\n}\n\n.rounded-top-3 {\n border-top-right-radius: var(--ct-border-radius-lg) !important;\n border-top-left-radius: var(--ct-border-radius-lg) !important;\n}\n\n.rounded-top-4 {\n border-top-right-radius: var(--ct-border-radius-xl) !important;\n border-top-left-radius: var(--ct-border-radius-xl) !important;\n}\n\n.rounded-top-5 {\n border-top-right-radius: var(--ct-border-radius-xxl) !important;\n border-top-left-radius: var(--ct-border-radius-xxl) !important;\n}\n\n.rounded-top-circle {\n border-top-right-radius: 50% !important;\n border-top-left-radius: 50% !important;\n}\n\n.rounded-top-pill {\n border-top-right-radius: var(--ct-border-radius-pill) !important;\n border-top-left-radius: var(--ct-border-radius-pill) !important;\n}\n\n.rounded-end {\n border-top-left-radius: var(--ct-border-radius) !important;\n border-bottom-left-radius: var(--ct-border-radius) !important;\n}\n\n.rounded-end-0 {\n border-top-left-radius: 0 !important;\n border-bottom-left-radius: 0 !important;\n}\n\n.rounded-end-1 {\n border-top-left-radius: var(--ct-border-radius-sm) !important;\n border-bottom-left-radius: var(--ct-border-radius-sm) !important;\n}\n\n.rounded-end-2 {\n border-top-left-radius: var(--ct-border-radius) !important;\n border-bottom-left-radius: var(--ct-border-radius) !important;\n}\n\n.rounded-end-3 {\n border-top-left-radius: var(--ct-border-radius-lg) !important;\n border-bottom-left-radius: var(--ct-border-radius-lg) !important;\n}\n\n.rounded-end-4 {\n border-top-left-radius: var(--ct-border-radius-xl) !important;\n border-bottom-left-radius: var(--ct-border-radius-xl) !important;\n}\n\n.rounded-end-5 {\n border-top-left-radius: var(--ct-border-radius-xxl) !important;\n border-bottom-left-radius: var(--ct-border-radius-xxl) !important;\n}\n\n.rounded-end-circle {\n border-top-left-radius: 50% !important;\n border-bottom-left-radius: 50% !important;\n}\n\n.rounded-end-pill {\n border-top-left-radius: var(--ct-border-radius-pill) !important;\n border-bottom-left-radius: var(--ct-border-radius-pill) !important;\n}\n\n.rounded-bottom {\n border-bottom-left-radius: var(--ct-border-radius) !important;\n border-bottom-right-radius: var(--ct-border-radius) !important;\n}\n\n.rounded-bottom-0 {\n border-bottom-left-radius: 0 !important;\n border-bottom-right-radius: 0 !important;\n}\n\n.rounded-bottom-1 {\n border-bottom-left-radius: var(--ct-border-radius-sm) !important;\n border-bottom-right-radius: var(--ct-border-radius-sm) !important;\n}\n\n.rounded-bottom-2 {\n border-bottom-left-radius: var(--ct-border-radius) !important;\n border-bottom-right-radius: var(--ct-border-radius) !important;\n}\n\n.rounded-bottom-3 {\n border-bottom-left-radius: var(--ct-border-radius-lg) !important;\n border-bottom-right-radius: var(--ct-border-radius-lg) !important;\n}\n\n.rounded-bottom-4 {\n border-bottom-left-radius: var(--ct-border-radius-xl) !important;\n border-bottom-right-radius: var(--ct-border-radius-xl) !important;\n}\n\n.rounded-bottom-5 {\n border-bottom-left-radius: var(--ct-border-radius-xxl) !important;\n border-bottom-right-radius: var(--ct-border-radius-xxl) !important;\n}\n\n.rounded-bottom-circle {\n border-bottom-left-radius: 50% !important;\n border-bottom-right-radius: 50% !important;\n}\n\n.rounded-bottom-pill {\n border-bottom-left-radius: var(--ct-border-radius-pill) !important;\n border-bottom-right-radius: var(--ct-border-radius-pill) !important;\n}\n\n.rounded-start {\n border-bottom-right-radius: var(--ct-border-radius) !important;\n border-top-right-radius: var(--ct-border-radius) !important;\n}\n\n.rounded-start-0 {\n border-bottom-right-radius: 0 !important;\n border-top-right-radius: 0 !important;\n}\n\n.rounded-start-1 {\n border-bottom-right-radius: var(--ct-border-radius-sm) !important;\n border-top-right-radius: var(--ct-border-radius-sm) !important;\n}\n\n.rounded-start-2 {\n border-bottom-right-radius: var(--ct-border-radius) !important;\n border-top-right-radius: var(--ct-border-radius) !important;\n}\n\n.rounded-start-3 {\n border-bottom-right-radius: var(--ct-border-radius-lg) !important;\n border-top-right-radius: var(--ct-border-radius-lg) !important;\n}\n\n.rounded-start-4 {\n border-bottom-right-radius: var(--ct-border-radius-xl) !important;\n border-top-right-radius: var(--ct-border-radius-xl) !important;\n}\n\n.rounded-start-5 {\n border-bottom-right-radius: var(--ct-border-radius-xxl) !important;\n border-top-right-radius: var(--ct-border-radius-xxl) !important;\n}\n\n.rounded-start-circle {\n border-bottom-right-radius: 50% !important;\n border-top-right-radius: 50% !important;\n}\n\n.rounded-start-pill {\n border-bottom-right-radius: var(--ct-border-radius-pill) !important;\n border-top-right-radius: var(--ct-border-radius-pill) !important;\n}\n\n.visible {\n visibility: visible !important;\n}\n\n.invisible {\n visibility: hidden !important;\n}\n\n.z-n1 {\n z-index: -1 !important;\n}\n\n.z-0 {\n z-index: 0 !important;\n}\n\n.z-1 {\n z-index: 1 !important;\n}\n\n.z-2 {\n z-index: 2 !important;\n}\n\n.z-3 {\n z-index: 3 !important;\n}\n\n.fs-10 {\n font-size: 10px !important;\n}\n\n.fs-11 {\n font-size: 11px !important;\n}\n\n.fs-12 {\n font-size: 12px !important;\n}\n\n.fs-13 {\n font-size: 13px !important;\n}\n\n.fs-14 {\n font-size: 14px !important;\n}\n\n.fs-15 {\n font-size: 15px !important;\n}\n\n.fs-16 {\n font-size: 16px !important;\n}\n\n.fs-17 {\n font-size: 17px !important;\n}\n\n.fs-18 {\n font-size: 18px !important;\n}\n\n.fs-19 {\n font-size: 19px !important;\n}\n\n.fs-20 {\n font-size: 20px !important;\n}\n\n.fs-21 {\n font-size: 21px !important;\n}\n\n.fs-22 {\n font-size: 22px !important;\n}\n\n.fs-23 {\n font-size: 23px !important;\n}\n\n.fs-24 {\n font-size: 24px !important;\n}\n\n.fs-36 {\n font-size: 36px !important;\n}\n\n.fs-48 {\n font-size: 48px !important;\n}\n\n@media (min-width: 576px) {\n .float-sm-start {\n float: right !important;\n }\n .float-sm-end {\n float: left !important;\n }\n .float-sm-none {\n float: none !important;\n }\n .object-fit-sm-contain {\n -o-object-fit: contain !important;\n object-fit: contain !important;\n }\n .object-fit-sm-cover {\n -o-object-fit: cover !important;\n object-fit: cover !important;\n }\n .object-fit-sm-fill {\n -o-object-fit: fill !important;\n object-fit: fill !important;\n }\n .object-fit-sm-scale {\n -o-object-fit: scale-down !important;\n object-fit: scale-down !important;\n }\n .object-fit-sm-none {\n -o-object-fit: none !important;\n object-fit: none !important;\n }\n .d-sm-inline {\n display: inline !important;\n }\n .d-sm-inline-block {\n display: inline-block !important;\n }\n .d-sm-block {\n display: block !important;\n }\n .d-sm-grid {\n display: grid !important;\n }\n .d-sm-inline-grid {\n display: inline-grid !important;\n }\n .d-sm-table {\n display: table !important;\n }\n .d-sm-table-row {\n display: table-row !important;\n }\n .d-sm-table-cell {\n display: table-cell !important;\n }\n .d-sm-flex {\n display: -webkit-box !important;\n display: -ms-flexbox !important;\n display: flex !important;\n }\n .d-sm-inline-flex {\n display: -webkit-inline-box !important;\n display: -ms-inline-flexbox !important;\n display: inline-flex !important;\n }\n .d-sm-none {\n display: none !important;\n }\n .flex-sm-fill {\n -webkit-box-flex: 1 !important;\n -ms-flex: 1 1 auto !important;\n flex: 1 1 auto !important;\n }\n .flex-sm-row {\n -webkit-box-orient: horizontal !important;\n -webkit-box-direction: normal !important;\n -ms-flex-direction: row !important;\n flex-direction: row !important;\n }\n .flex-sm-column {\n -webkit-box-orient: vertical !important;\n -webkit-box-direction: normal !important;\n -ms-flex-direction: column !important;\n flex-direction: column !important;\n }\n .flex-sm-row-reverse {\n -webkit-box-orient: horizontal !important;\n -webkit-box-direction: reverse !important;\n -ms-flex-direction: row-reverse !important;\n flex-direction: row-reverse !important;\n }\n .flex-sm-column-reverse {\n -webkit-box-orient: vertical !important;\n -webkit-box-direction: reverse !important;\n -ms-flex-direction: column-reverse !important;\n flex-direction: column-reverse !important;\n }\n .flex-sm-grow-0 {\n -webkit-box-flex: 0 !important;\n -ms-flex-positive: 0 !important;\n flex-grow: 0 !important;\n }\n .flex-sm-grow-1 {\n -webkit-box-flex: 1 !important;\n -ms-flex-positive: 1 !important;\n flex-grow: 1 !important;\n }\n .flex-sm-shrink-0 {\n -ms-flex-negative: 0 !important;\n flex-shrink: 0 !important;\n }\n .flex-sm-shrink-1 {\n -ms-flex-negative: 1 !important;\n flex-shrink: 1 !important;\n }\n .flex-sm-wrap {\n -ms-flex-wrap: wrap !important;\n flex-wrap: wrap !important;\n }\n .flex-sm-nowrap {\n -ms-flex-wrap: nowrap !important;\n flex-wrap: nowrap !important;\n }\n .flex-sm-wrap-reverse {\n -ms-flex-wrap: wrap-reverse !important;\n flex-wrap: wrap-reverse !important;\n }\n .justify-content-sm-start {\n -webkit-box-pack: start !important;\n -ms-flex-pack: start !important;\n justify-content: flex-start !important;\n }\n .justify-content-sm-end {\n -webkit-box-pack: end !important;\n -ms-flex-pack: end !important;\n justify-content: flex-end !important;\n }\n .justify-content-sm-center {\n -webkit-box-pack: center !important;\n -ms-flex-pack: center !important;\n justify-content: center !important;\n }\n .justify-content-sm-between {\n -webkit-box-pack: justify !important;\n -ms-flex-pack: justify !important;\n justify-content: space-between !important;\n }\n .justify-content-sm-around {\n -ms-flex-pack: distribute !important;\n justify-content: space-around !important;\n }\n .justify-content-sm-evenly {\n -webkit-box-pack: space-evenly !important;\n -ms-flex-pack: space-evenly !important;\n justify-content: space-evenly !important;\n }\n .align-items-sm-start {\n -webkit-box-align: start !important;\n -ms-flex-align: start !important;\n align-items: flex-start !important;\n }\n .align-items-sm-end {\n -webkit-box-align: end !important;\n -ms-flex-align: end !important;\n align-items: flex-end !important;\n }\n .align-items-sm-center {\n -webkit-box-align: center !important;\n -ms-flex-align: center !important;\n align-items: center !important;\n }\n .align-items-sm-baseline {\n -webkit-box-align: baseline !important;\n -ms-flex-align: baseline !important;\n align-items: baseline !important;\n }\n .align-items-sm-stretch {\n -webkit-box-align: stretch !important;\n -ms-flex-align: stretch !important;\n align-items: stretch !important;\n }\n .align-content-sm-start {\n -ms-flex-line-pack: start !important;\n align-content: flex-start !important;\n }\n .align-content-sm-end {\n -ms-flex-line-pack: end !important;\n align-content: flex-end !important;\n }\n .align-content-sm-center {\n -ms-flex-line-pack: center !important;\n align-content: center !important;\n }\n .align-content-sm-between {\n -ms-flex-line-pack: justify !important;\n align-content: space-between !important;\n }\n .align-content-sm-around {\n -ms-flex-line-pack: distribute !important;\n align-content: space-around !important;\n }\n .align-content-sm-stretch {\n -ms-flex-line-pack: stretch !important;\n align-content: stretch !important;\n }\n .align-self-sm-auto {\n -ms-flex-item-align: auto !important;\n align-self: auto !important;\n }\n .align-self-sm-start {\n -ms-flex-item-align: start !important;\n align-self: flex-start !important;\n }\n .align-self-sm-end {\n -ms-flex-item-align: end !important;\n align-self: flex-end !important;\n }\n .align-self-sm-center {\n -ms-flex-item-align: center !important;\n align-self: center !important;\n }\n .align-self-sm-baseline {\n -ms-flex-item-align: baseline !important;\n align-self: baseline !important;\n }\n .align-self-sm-stretch {\n -ms-flex-item-align: stretch !important;\n align-self: stretch !important;\n }\n .order-sm-first {\n -webkit-box-ordinal-group: 0 !important;\n -ms-flex-order: -1 !important;\n order: -1 !important;\n }\n .order-sm-0 {\n -webkit-box-ordinal-group: 1 !important;\n -ms-flex-order: 0 !important;\n order: 0 !important;\n }\n .order-sm-1 {\n -webkit-box-ordinal-group: 2 !important;\n -ms-flex-order: 1 !important;\n order: 1 !important;\n }\n .order-sm-2 {\n -webkit-box-ordinal-group: 3 !important;\n -ms-flex-order: 2 !important;\n order: 2 !important;\n }\n .order-sm-3 {\n -webkit-box-ordinal-group: 4 !important;\n -ms-flex-order: 3 !important;\n order: 3 !important;\n }\n .order-sm-4 {\n -webkit-box-ordinal-group: 5 !important;\n -ms-flex-order: 4 !important;\n order: 4 !important;\n }\n .order-sm-5 {\n -webkit-box-ordinal-group: 6 !important;\n -ms-flex-order: 5 !important;\n order: 5 !important;\n }\n .order-sm-last {\n -webkit-box-ordinal-group: 7 !important;\n -ms-flex-order: 6 !important;\n order: 6 !important;\n }\n .m-sm-0 {\n margin: 0 !important;\n }\n .m-sm-1 {\n margin: 0.3125rem !important;\n }\n .m-sm-2 {\n margin: 0.625rem !important;\n }\n .m-sm-3 {\n margin: 1.25rem !important;\n }\n .m-sm-4 {\n margin: 1.875rem !important;\n }\n .m-sm-5 {\n margin: 3.75rem !important;\n }\n .m-sm-auto {\n margin: auto !important;\n }\n .mx-sm-0 {\n margin-left: 0 !important;\n margin-right: 0 !important;\n }\n .mx-sm-1 {\n margin-left: 0.3125rem !important;\n margin-right: 0.3125rem !important;\n }\n .mx-sm-2 {\n margin-left: 0.625rem !important;\n margin-right: 0.625rem !important;\n }\n .mx-sm-3 {\n margin-left: 1.25rem !important;\n margin-right: 1.25rem !important;\n }\n .mx-sm-4 {\n margin-left: 1.875rem !important;\n margin-right: 1.875rem !important;\n }\n .mx-sm-5 {\n margin-left: 3.75rem !important;\n margin-right: 3.75rem !important;\n }\n .mx-sm-auto {\n margin-left: auto !important;\n margin-right: auto !important;\n }\n .my-sm-0 {\n margin-top: 0 !important;\n margin-bottom: 0 !important;\n }\n .my-sm-1 {\n margin-top: 0.3125rem !important;\n margin-bottom: 0.3125rem !important;\n }\n .my-sm-2 {\n margin-top: 0.625rem !important;\n margin-bottom: 0.625rem !important;\n }\n .my-sm-3 {\n margin-top: 1.25rem !important;\n margin-bottom: 1.25rem !important;\n }\n .my-sm-4 {\n margin-top: 1.875rem !important;\n margin-bottom: 1.875rem !important;\n }\n .my-sm-5 {\n margin-top: 3.75rem !important;\n margin-bottom: 3.75rem !important;\n }\n .my-sm-auto {\n margin-top: auto !important;\n margin-bottom: auto !important;\n }\n .mt-sm-0 {\n margin-top: 0 !important;\n }\n .mt-sm-1 {\n margin-top: 0.3125rem !important;\n }\n .mt-sm-2 {\n margin-top: 0.625rem !important;\n }\n .mt-sm-3 {\n margin-top: 1.25rem !important;\n }\n .mt-sm-4 {\n margin-top: 1.875rem !important;\n }\n .mt-sm-5 {\n margin-top: 3.75rem !important;\n }\n .mt-sm-auto {\n margin-top: auto !important;\n }\n .me-sm-0 {\n margin-left: 0 !important;\n }\n .me-sm-1 {\n margin-left: 0.3125rem !important;\n }\n .me-sm-2 {\n margin-left: 0.625rem !important;\n }\n .me-sm-3 {\n margin-left: 1.25rem !important;\n }\n .me-sm-4 {\n margin-left: 1.875rem !important;\n }\n .me-sm-5 {\n margin-left: 3.75rem !important;\n }\n .me-sm-auto {\n margin-left: auto !important;\n }\n .mb-sm-0 {\n margin-bottom: 0 !important;\n }\n .mb-sm-1 {\n margin-bottom: 0.3125rem !important;\n }\n .mb-sm-2 {\n margin-bottom: 0.625rem !important;\n }\n .mb-sm-3 {\n margin-bottom: 1.25rem !important;\n }\n .mb-sm-4 {\n margin-bottom: 1.875rem !important;\n }\n .mb-sm-5 {\n margin-bottom: 3.75rem !important;\n }\n .mb-sm-auto {\n margin-bottom: auto !important;\n }\n .ms-sm-0 {\n margin-right: 0 !important;\n }\n .ms-sm-1 {\n margin-right: 0.3125rem !important;\n }\n .ms-sm-2 {\n margin-right: 0.625rem !important;\n }\n .ms-sm-3 {\n margin-right: 1.25rem !important;\n }\n .ms-sm-4 {\n margin-right: 1.875rem !important;\n }\n .ms-sm-5 {\n margin-right: 3.75rem !important;\n }\n .ms-sm-auto {\n margin-right: auto !important;\n }\n .m-sm-n1 {\n margin: -0.3125rem !important;\n }\n .m-sm-n2 {\n margin: -0.625rem !important;\n }\n .m-sm-n3 {\n margin: -1.25rem !important;\n }\n .m-sm-n4 {\n margin: -1.875rem !important;\n }\n .m-sm-n5 {\n margin: -3.75rem !important;\n }\n .mx-sm-n1 {\n margin-left: -0.3125rem !important;\n margin-right: -0.3125rem !important;\n }\n .mx-sm-n2 {\n margin-left: -0.625rem !important;\n margin-right: -0.625rem !important;\n }\n .mx-sm-n3 {\n margin-left: -1.25rem !important;\n margin-right: -1.25rem !important;\n }\n .mx-sm-n4 {\n margin-left: -1.875rem !important;\n margin-right: -1.875rem !important;\n }\n .mx-sm-n5 {\n margin-left: -3.75rem !important;\n margin-right: -3.75rem !important;\n }\n .my-sm-n1 {\n margin-top: -0.3125rem !important;\n margin-bottom: -0.3125rem !important;\n }\n .my-sm-n2 {\n margin-top: -0.625rem !important;\n margin-bottom: -0.625rem !important;\n }\n .my-sm-n3 {\n margin-top: -1.25rem !important;\n margin-bottom: -1.25rem !important;\n }\n .my-sm-n4 {\n margin-top: -1.875rem !important;\n margin-bottom: -1.875rem !important;\n }\n .my-sm-n5 {\n margin-top: -3.75rem !important;\n margin-bottom: -3.75rem !important;\n }\n .mt-sm-n1 {\n margin-top: -0.3125rem !important;\n }\n .mt-sm-n2 {\n margin-top: -0.625rem !important;\n }\n .mt-sm-n3 {\n margin-top: -1.25rem !important;\n }\n .mt-sm-n4 {\n margin-top: -1.875rem !important;\n }\n .mt-sm-n5 {\n margin-top: -3.75rem !important;\n }\n .me-sm-n1 {\n margin-left: -0.3125rem !important;\n }\n .me-sm-n2 {\n margin-left: -0.625rem !important;\n }\n .me-sm-n3 {\n margin-left: -1.25rem !important;\n }\n .me-sm-n4 {\n margin-left: -1.875rem !important;\n }\n .me-sm-n5 {\n margin-left: -3.75rem !important;\n }\n .mb-sm-n1 {\n margin-bottom: -0.3125rem !important;\n }\n .mb-sm-n2 {\n margin-bottom: -0.625rem !important;\n }\n .mb-sm-n3 {\n margin-bottom: -1.25rem !important;\n }\n .mb-sm-n4 {\n margin-bottom: -1.875rem !important;\n }\n .mb-sm-n5 {\n margin-bottom: -3.75rem !important;\n }\n .ms-sm-n1 {\n margin-right: -0.3125rem !important;\n }\n .ms-sm-n2 {\n margin-right: -0.625rem !important;\n }\n .ms-sm-n3 {\n margin-right: -1.25rem !important;\n }\n .ms-sm-n4 {\n margin-right: -1.875rem !important;\n }\n .ms-sm-n5 {\n margin-right: -3.75rem !important;\n }\n .p-sm-0 {\n padding: 0 !important;\n }\n .p-sm-1 {\n padding: 0.3125rem !important;\n }\n .p-sm-2 {\n padding: 0.625rem !important;\n }\n .p-sm-3 {\n padding: 1.25rem !important;\n }\n .p-sm-4 {\n padding: 1.875rem !important;\n }\n .p-sm-5 {\n padding: 3.75rem !important;\n }\n .px-sm-0 {\n padding-left: 0 !important;\n padding-right: 0 !important;\n }\n .px-sm-1 {\n padding-left: 0.3125rem !important;\n padding-right: 0.3125rem !important;\n }\n .px-sm-2 {\n padding-left: 0.625rem !important;\n padding-right: 0.625rem !important;\n }\n .px-sm-3 {\n padding-left: 1.25rem !important;\n padding-right: 1.25rem !important;\n }\n .px-sm-4 {\n padding-left: 1.875rem !important;\n padding-right: 1.875rem !important;\n }\n .px-sm-5 {\n padding-left: 3.75rem !important;\n padding-right: 3.75rem !important;\n }\n .py-sm-0 {\n padding-top: 0 !important;\n padding-bottom: 0 !important;\n }\n .py-sm-1 {\n padding-top: 0.3125rem !important;\n padding-bottom: 0.3125rem !important;\n }\n .py-sm-2 {\n padding-top: 0.625rem !important;\n padding-bottom: 0.625rem !important;\n }\n .py-sm-3 {\n padding-top: 1.25rem !important;\n padding-bottom: 1.25rem !important;\n }\n .py-sm-4 {\n padding-top: 1.875rem !important;\n padding-bottom: 1.875rem !important;\n }\n .py-sm-5 {\n padding-top: 3.75rem !important;\n padding-bottom: 3.75rem !important;\n }\n .pt-sm-0 {\n padding-top: 0 !important;\n }\n .pt-sm-1 {\n padding-top: 0.3125rem !important;\n }\n .pt-sm-2 {\n padding-top: 0.625rem !important;\n }\n .pt-sm-3 {\n padding-top: 1.25rem !important;\n }\n .pt-sm-4 {\n padding-top: 1.875rem !important;\n }\n .pt-sm-5 {\n padding-top: 3.75rem !important;\n }\n .pe-sm-0 {\n padding-left: 0 !important;\n }\n .pe-sm-1 {\n padding-left: 0.3125rem !important;\n }\n .pe-sm-2 {\n padding-left: 0.625rem !important;\n }\n .pe-sm-3 {\n padding-left: 1.25rem !important;\n }\n .pe-sm-4 {\n padding-left: 1.875rem !important;\n }\n .pe-sm-5 {\n padding-left: 3.75rem !important;\n }\n .pb-sm-0 {\n padding-bottom: 0 !important;\n }\n .pb-sm-1 {\n padding-bottom: 0.3125rem !important;\n }\n .pb-sm-2 {\n padding-bottom: 0.625rem !important;\n }\n .pb-sm-3 {\n padding-bottom: 1.25rem !important;\n }\n .pb-sm-4 {\n padding-bottom: 1.875rem !important;\n }\n .pb-sm-5 {\n padding-bottom: 3.75rem !important;\n }\n .ps-sm-0 {\n padding-right: 0 !important;\n }\n .ps-sm-1 {\n padding-right: 0.3125rem !important;\n }\n .ps-sm-2 {\n padding-right: 0.625rem !important;\n }\n .ps-sm-3 {\n padding-right: 1.25rem !important;\n }\n .ps-sm-4 {\n padding-right: 1.875rem !important;\n }\n .ps-sm-5 {\n padding-right: 3.75rem !important;\n }\n .gap-sm-0 {\n gap: 0 !important;\n }\n .gap-sm-1 {\n gap: 0.3125rem !important;\n }\n .gap-sm-2 {\n gap: 0.625rem !important;\n }\n .gap-sm-3 {\n gap: 1.25rem !important;\n }\n .gap-sm-4 {\n gap: 1.875rem !important;\n }\n .gap-sm-5 {\n gap: 3.75rem !important;\n }\n .row-gap-sm-0 {\n row-gap: 0 !important;\n }\n .row-gap-sm-1 {\n row-gap: 0.3125rem !important;\n }\n .row-gap-sm-2 {\n row-gap: 0.625rem !important;\n }\n .row-gap-sm-3 {\n row-gap: 1.25rem !important;\n }\n .row-gap-sm-4 {\n row-gap: 1.875rem !important;\n }\n .row-gap-sm-5 {\n row-gap: 3.75rem !important;\n }\n .column-gap-sm-0 {\n -webkit-column-gap: 0 !important;\n -moz-column-gap: 0 !important;\n column-gap: 0 !important;\n }\n .column-gap-sm-1 {\n -webkit-column-gap: 0.3125rem !important;\n -moz-column-gap: 0.3125rem !important;\n column-gap: 0.3125rem !important;\n }\n .column-gap-sm-2 {\n -webkit-column-gap: 0.625rem !important;\n -moz-column-gap: 0.625rem !important;\n column-gap: 0.625rem !important;\n }\n .column-gap-sm-3 {\n -webkit-column-gap: 1.25rem !important;\n -moz-column-gap: 1.25rem !important;\n column-gap: 1.25rem !important;\n }\n .column-gap-sm-4 {\n -webkit-column-gap: 1.875rem !important;\n -moz-column-gap: 1.875rem !important;\n column-gap: 1.875rem !important;\n }\n .column-gap-sm-5 {\n -webkit-column-gap: 3.75rem !important;\n -moz-column-gap: 3.75rem !important;\n column-gap: 3.75rem !important;\n }\n .text-sm-start {\n text-align: right !important;\n }\n .text-sm-end {\n text-align: left !important;\n }\n .text-sm-center {\n text-align: center !important;\n }\n}\n@media (min-width: 768px) {\n .float-md-start {\n float: right !important;\n }\n .float-md-end {\n float: left !important;\n }\n .float-md-none {\n float: none !important;\n }\n .object-fit-md-contain {\n -o-object-fit: contain !important;\n object-fit: contain !important;\n }\n .object-fit-md-cover {\n -o-object-fit: cover !important;\n object-fit: cover !important;\n }\n .object-fit-md-fill {\n -o-object-fit: fill !important;\n object-fit: fill !important;\n }\n .object-fit-md-scale {\n -o-object-fit: scale-down !important;\n object-fit: scale-down !important;\n }\n .object-fit-md-none {\n -o-object-fit: none !important;\n object-fit: none !important;\n }\n .d-md-inline {\n display: inline !important;\n }\n .d-md-inline-block {\n display: inline-block !important;\n }\n .d-md-block {\n display: block !important;\n }\n .d-md-grid {\n display: grid !important;\n }\n .d-md-inline-grid {\n display: inline-grid !important;\n }\n .d-md-table {\n display: table !important;\n }\n .d-md-table-row {\n display: table-row !important;\n }\n .d-md-table-cell {\n display: table-cell !important;\n }\n .d-md-flex {\n display: -webkit-box !important;\n display: -ms-flexbox !important;\n display: flex !important;\n }\n .d-md-inline-flex {\n display: -webkit-inline-box !important;\n display: -ms-inline-flexbox !important;\n display: inline-flex !important;\n }\n .d-md-none {\n display: none !important;\n }\n .flex-md-fill {\n -webkit-box-flex: 1 !important;\n -ms-flex: 1 1 auto !important;\n flex: 1 1 auto !important;\n }\n .flex-md-row {\n -webkit-box-orient: horizontal !important;\n -webkit-box-direction: normal !important;\n -ms-flex-direction: row !important;\n flex-direction: row !important;\n }\n .flex-md-column {\n -webkit-box-orient: vertical !important;\n -webkit-box-direction: normal !important;\n -ms-flex-direction: column !important;\n flex-direction: column !important;\n }\n .flex-md-row-reverse {\n -webkit-box-orient: horizontal !important;\n -webkit-box-direction: reverse !important;\n -ms-flex-direction: row-reverse !important;\n flex-direction: row-reverse !important;\n }\n .flex-md-column-reverse {\n -webkit-box-orient: vertical !important;\n -webkit-box-direction: reverse !important;\n -ms-flex-direction: column-reverse !important;\n flex-direction: column-reverse !important;\n }\n .flex-md-grow-0 {\n -webkit-box-flex: 0 !important;\n -ms-flex-positive: 0 !important;\n flex-grow: 0 !important;\n }\n .flex-md-grow-1 {\n -webkit-box-flex: 1 !important;\n -ms-flex-positive: 1 !important;\n flex-grow: 1 !important;\n }\n .flex-md-shrink-0 {\n -ms-flex-negative: 0 !important;\n flex-shrink: 0 !important;\n }\n .flex-md-shrink-1 {\n -ms-flex-negative: 1 !important;\n flex-shrink: 1 !important;\n }\n .flex-md-wrap {\n -ms-flex-wrap: wrap !important;\n flex-wrap: wrap !important;\n }\n .flex-md-nowrap {\n -ms-flex-wrap: nowrap !important;\n flex-wrap: nowrap !important;\n }\n .flex-md-wrap-reverse {\n -ms-flex-wrap: wrap-reverse !important;\n flex-wrap: wrap-reverse !important;\n }\n .justify-content-md-start {\n -webkit-box-pack: start !important;\n -ms-flex-pack: start !important;\n justify-content: flex-start !important;\n }\n .justify-content-md-end {\n -webkit-box-pack: end !important;\n -ms-flex-pack: end !important;\n justify-content: flex-end !important;\n }\n .justify-content-md-center {\n -webkit-box-pack: center !important;\n -ms-flex-pack: center !important;\n justify-content: center !important;\n }\n .justify-content-md-between {\n -webkit-box-pack: justify !important;\n -ms-flex-pack: justify !important;\n justify-content: space-between !important;\n }\n .justify-content-md-around {\n -ms-flex-pack: distribute !important;\n justify-content: space-around !important;\n }\n .justify-content-md-evenly {\n -webkit-box-pack: space-evenly !important;\n -ms-flex-pack: space-evenly !important;\n justify-content: space-evenly !important;\n }\n .align-items-md-start {\n -webkit-box-align: start !important;\n -ms-flex-align: start !important;\n align-items: flex-start !important;\n }\n .align-items-md-end {\n -webkit-box-align: end !important;\n -ms-flex-align: end !important;\n align-items: flex-end !important;\n }\n .align-items-md-center {\n -webkit-box-align: center !important;\n -ms-flex-align: center !important;\n align-items: center !important;\n }\n .align-items-md-baseline {\n -webkit-box-align: baseline !important;\n -ms-flex-align: baseline !important;\n align-items: baseline !important;\n }\n .align-items-md-stretch {\n -webkit-box-align: stretch !important;\n -ms-flex-align: stretch !important;\n align-items: stretch !important;\n }\n .align-content-md-start {\n -ms-flex-line-pack: start !important;\n align-content: flex-start !important;\n }\n .align-content-md-end {\n -ms-flex-line-pack: end !important;\n align-content: flex-end !important;\n }\n .align-content-md-center {\n -ms-flex-line-pack: center !important;\n align-content: center !important;\n }\n .align-content-md-between {\n -ms-flex-line-pack: justify !important;\n align-content: space-between !important;\n }\n .align-content-md-around {\n -ms-flex-line-pack: distribute !important;\n align-content: space-around !important;\n }\n .align-content-md-stretch {\n -ms-flex-line-pack: stretch !important;\n align-content: stretch !important;\n }\n .align-self-md-auto {\n -ms-flex-item-align: auto !important;\n align-self: auto !important;\n }\n .align-self-md-start {\n -ms-flex-item-align: start !important;\n align-self: flex-start !important;\n }\n .align-self-md-end {\n -ms-flex-item-align: end !important;\n align-self: flex-end !important;\n }\n .align-self-md-center {\n -ms-flex-item-align: center !important;\n align-self: center !important;\n }\n .align-self-md-baseline {\n -ms-flex-item-align: baseline !important;\n align-self: baseline !important;\n }\n .align-self-md-stretch {\n -ms-flex-item-align: stretch !important;\n align-self: stretch !important;\n }\n .order-md-first {\n -webkit-box-ordinal-group: 0 !important;\n -ms-flex-order: -1 !important;\n order: -1 !important;\n }\n .order-md-0 {\n -webkit-box-ordinal-group: 1 !important;\n -ms-flex-order: 0 !important;\n order: 0 !important;\n }\n .order-md-1 {\n -webkit-box-ordinal-group: 2 !important;\n -ms-flex-order: 1 !important;\n order: 1 !important;\n }\n .order-md-2 {\n -webkit-box-ordinal-group: 3 !important;\n -ms-flex-order: 2 !important;\n order: 2 !important;\n }\n .order-md-3 {\n -webkit-box-ordinal-group: 4 !important;\n -ms-flex-order: 3 !important;\n order: 3 !important;\n }\n .order-md-4 {\n -webkit-box-ordinal-group: 5 !important;\n -ms-flex-order: 4 !important;\n order: 4 !important;\n }\n .order-md-5 {\n -webkit-box-ordinal-group: 6 !important;\n -ms-flex-order: 5 !important;\n order: 5 !important;\n }\n .order-md-last {\n -webkit-box-ordinal-group: 7 !important;\n -ms-flex-order: 6 !important;\n order: 6 !important;\n }\n .m-md-0 {\n margin: 0 !important;\n }\n .m-md-1 {\n margin: 0.3125rem !important;\n }\n .m-md-2 {\n margin: 0.625rem !important;\n }\n .m-md-3 {\n margin: 1.25rem !important;\n }\n .m-md-4 {\n margin: 1.875rem !important;\n }\n .m-md-5 {\n margin: 3.75rem !important;\n }\n .m-md-auto {\n margin: auto !important;\n }\n .mx-md-0 {\n margin-left: 0 !important;\n margin-right: 0 !important;\n }\n .mx-md-1 {\n margin-left: 0.3125rem !important;\n margin-right: 0.3125rem !important;\n }\n .mx-md-2 {\n margin-left: 0.625rem !important;\n margin-right: 0.625rem !important;\n }\n .mx-md-3 {\n margin-left: 1.25rem !important;\n margin-right: 1.25rem !important;\n }\n .mx-md-4 {\n margin-left: 1.875rem !important;\n margin-right: 1.875rem !important;\n }\n .mx-md-5 {\n margin-left: 3.75rem !important;\n margin-right: 3.75rem !important;\n }\n .mx-md-auto {\n margin-left: auto !important;\n margin-right: auto !important;\n }\n .my-md-0 {\n margin-top: 0 !important;\n margin-bottom: 0 !important;\n }\n .my-md-1 {\n margin-top: 0.3125rem !important;\n margin-bottom: 0.3125rem !important;\n }\n .my-md-2 {\n margin-top: 0.625rem !important;\n margin-bottom: 0.625rem !important;\n }\n .my-md-3 {\n margin-top: 1.25rem !important;\n margin-bottom: 1.25rem !important;\n }\n .my-md-4 {\n margin-top: 1.875rem !important;\n margin-bottom: 1.875rem !important;\n }\n .my-md-5 {\n margin-top: 3.75rem !important;\n margin-bottom: 3.75rem !important;\n }\n .my-md-auto {\n margin-top: auto !important;\n margin-bottom: auto !important;\n }\n .mt-md-0 {\n margin-top: 0 !important;\n }\n .mt-md-1 {\n margin-top: 0.3125rem !important;\n }\n .mt-md-2 {\n margin-top: 0.625rem !important;\n }\n .mt-md-3 {\n margin-top: 1.25rem !important;\n }\n .mt-md-4 {\n margin-top: 1.875rem !important;\n }\n .mt-md-5 {\n margin-top: 3.75rem !important;\n }\n .mt-md-auto {\n margin-top: auto !important;\n }\n .me-md-0 {\n margin-left: 0 !important;\n }\n .me-md-1 {\n margin-left: 0.3125rem !important;\n }\n .me-md-2 {\n margin-left: 0.625rem !important;\n }\n .me-md-3 {\n margin-left: 1.25rem !important;\n }\n .me-md-4 {\n margin-left: 1.875rem !important;\n }\n .me-md-5 {\n margin-left: 3.75rem !important;\n }\n .me-md-auto {\n margin-left: auto !important;\n }\n .mb-md-0 {\n margin-bottom: 0 !important;\n }\n .mb-md-1 {\n margin-bottom: 0.3125rem !important;\n }\n .mb-md-2 {\n margin-bottom: 0.625rem !important;\n }\n .mb-md-3 {\n margin-bottom: 1.25rem !important;\n }\n .mb-md-4 {\n margin-bottom: 1.875rem !important;\n }\n .mb-md-5 {\n margin-bottom: 3.75rem !important;\n }\n .mb-md-auto {\n margin-bottom: auto !important;\n }\n .ms-md-0 {\n margin-right: 0 !important;\n }\n .ms-md-1 {\n margin-right: 0.3125rem !important;\n }\n .ms-md-2 {\n margin-right: 0.625rem !important;\n }\n .ms-md-3 {\n margin-right: 1.25rem !important;\n }\n .ms-md-4 {\n margin-right: 1.875rem !important;\n }\n .ms-md-5 {\n margin-right: 3.75rem !important;\n }\n .ms-md-auto {\n margin-right: auto !important;\n }\n .m-md-n1 {\n margin: -0.3125rem !important;\n }\n .m-md-n2 {\n margin: -0.625rem !important;\n }\n .m-md-n3 {\n margin: -1.25rem !important;\n }\n .m-md-n4 {\n margin: -1.875rem !important;\n }\n .m-md-n5 {\n margin: -3.75rem !important;\n }\n .mx-md-n1 {\n margin-left: -0.3125rem !important;\n margin-right: -0.3125rem !important;\n }\n .mx-md-n2 {\n margin-left: -0.625rem !important;\n margin-right: -0.625rem !important;\n }\n .mx-md-n3 {\n margin-left: -1.25rem !important;\n margin-right: -1.25rem !important;\n }\n .mx-md-n4 {\n margin-left: -1.875rem !important;\n margin-right: -1.875rem !important;\n }\n .mx-md-n5 {\n margin-left: -3.75rem !important;\n margin-right: -3.75rem !important;\n }\n .my-md-n1 {\n margin-top: -0.3125rem !important;\n margin-bottom: -0.3125rem !important;\n }\n .my-md-n2 {\n margin-top: -0.625rem !important;\n margin-bottom: -0.625rem !important;\n }\n .my-md-n3 {\n margin-top: -1.25rem !important;\n margin-bottom: -1.25rem !important;\n }\n .my-md-n4 {\n margin-top: -1.875rem !important;\n margin-bottom: -1.875rem !important;\n }\n .my-md-n5 {\n margin-top: -3.75rem !important;\n margin-bottom: -3.75rem !important;\n }\n .mt-md-n1 {\n margin-top: -0.3125rem !important;\n }\n .mt-md-n2 {\n margin-top: -0.625rem !important;\n }\n .mt-md-n3 {\n margin-top: -1.25rem !important;\n }\n .mt-md-n4 {\n margin-top: -1.875rem !important;\n }\n .mt-md-n5 {\n margin-top: -3.75rem !important;\n }\n .me-md-n1 {\n margin-left: -0.3125rem !important;\n }\n .me-md-n2 {\n margin-left: -0.625rem !important;\n }\n .me-md-n3 {\n margin-left: -1.25rem !important;\n }\n .me-md-n4 {\n margin-left: -1.875rem !important;\n }\n .me-md-n5 {\n margin-left: -3.75rem !important;\n }\n .mb-md-n1 {\n margin-bottom: -0.3125rem !important;\n }\n .mb-md-n2 {\n margin-bottom: -0.625rem !important;\n }\n .mb-md-n3 {\n margin-bottom: -1.25rem !important;\n }\n .mb-md-n4 {\n margin-bottom: -1.875rem !important;\n }\n .mb-md-n5 {\n margin-bottom: -3.75rem !important;\n }\n .ms-md-n1 {\n margin-right: -0.3125rem !important;\n }\n .ms-md-n2 {\n margin-right: -0.625rem !important;\n }\n .ms-md-n3 {\n margin-right: -1.25rem !important;\n }\n .ms-md-n4 {\n margin-right: -1.875rem !important;\n }\n .ms-md-n5 {\n margin-right: -3.75rem !important;\n }\n .p-md-0 {\n padding: 0 !important;\n }\n .p-md-1 {\n padding: 0.3125rem !important;\n }\n .p-md-2 {\n padding: 0.625rem !important;\n }\n .p-md-3 {\n padding: 1.25rem !important;\n }\n .p-md-4 {\n padding: 1.875rem !important;\n }\n .p-md-5 {\n padding: 3.75rem !important;\n }\n .px-md-0 {\n padding-left: 0 !important;\n padding-right: 0 !important;\n }\n .px-md-1 {\n padding-left: 0.3125rem !important;\n padding-right: 0.3125rem !important;\n }\n .px-md-2 {\n padding-left: 0.625rem !important;\n padding-right: 0.625rem !important;\n }\n .px-md-3 {\n padding-left: 1.25rem !important;\n padding-right: 1.25rem !important;\n }\n .px-md-4 {\n padding-left: 1.875rem !important;\n padding-right: 1.875rem !important;\n }\n .px-md-5 {\n padding-left: 3.75rem !important;\n padding-right: 3.75rem !important;\n }\n .py-md-0 {\n padding-top: 0 !important;\n padding-bottom: 0 !important;\n }\n .py-md-1 {\n padding-top: 0.3125rem !important;\n padding-bottom: 0.3125rem !important;\n }\n .py-md-2 {\n padding-top: 0.625rem !important;\n padding-bottom: 0.625rem !important;\n }\n .py-md-3 {\n padding-top: 1.25rem !important;\n padding-bottom: 1.25rem !important;\n }\n .py-md-4 {\n padding-top: 1.875rem !important;\n padding-bottom: 1.875rem !important;\n }\n .py-md-5 {\n padding-top: 3.75rem !important;\n padding-bottom: 3.75rem !important;\n }\n .pt-md-0 {\n padding-top: 0 !important;\n }\n .pt-md-1 {\n padding-top: 0.3125rem !important;\n }\n .pt-md-2 {\n padding-top: 0.625rem !important;\n }\n .pt-md-3 {\n padding-top: 1.25rem !important;\n }\n .pt-md-4 {\n padding-top: 1.875rem !important;\n }\n .pt-md-5 {\n padding-top: 3.75rem !important;\n }\n .pe-md-0 {\n padding-left: 0 !important;\n }\n .pe-md-1 {\n padding-left: 0.3125rem !important;\n }\n .pe-md-2 {\n padding-left: 0.625rem !important;\n }\n .pe-md-3 {\n padding-left: 1.25rem !important;\n }\n .pe-md-4 {\n padding-left: 1.875rem !important;\n }\n .pe-md-5 {\n padding-left: 3.75rem !important;\n }\n .pb-md-0 {\n padding-bottom: 0 !important;\n }\n .pb-md-1 {\n padding-bottom: 0.3125rem !important;\n }\n .pb-md-2 {\n padding-bottom: 0.625rem !important;\n }\n .pb-md-3 {\n padding-bottom: 1.25rem !important;\n }\n .pb-md-4 {\n padding-bottom: 1.875rem !important;\n }\n .pb-md-5 {\n padding-bottom: 3.75rem !important;\n }\n .ps-md-0 {\n padding-right: 0 !important;\n }\n .ps-md-1 {\n padding-right: 0.3125rem !important;\n }\n .ps-md-2 {\n padding-right: 0.625rem !important;\n }\n .ps-md-3 {\n padding-right: 1.25rem !important;\n }\n .ps-md-4 {\n padding-right: 1.875rem !important;\n }\n .ps-md-5 {\n padding-right: 3.75rem !important;\n }\n .gap-md-0 {\n gap: 0 !important;\n }\n .gap-md-1 {\n gap: 0.3125rem !important;\n }\n .gap-md-2 {\n gap: 0.625rem !important;\n }\n .gap-md-3 {\n gap: 1.25rem !important;\n }\n .gap-md-4 {\n gap: 1.875rem !important;\n }\n .gap-md-5 {\n gap: 3.75rem !important;\n }\n .row-gap-md-0 {\n row-gap: 0 !important;\n }\n .row-gap-md-1 {\n row-gap: 0.3125rem !important;\n }\n .row-gap-md-2 {\n row-gap: 0.625rem !important;\n }\n .row-gap-md-3 {\n row-gap: 1.25rem !important;\n }\n .row-gap-md-4 {\n row-gap: 1.875rem !important;\n }\n .row-gap-md-5 {\n row-gap: 3.75rem !important;\n }\n .column-gap-md-0 {\n -webkit-column-gap: 0 !important;\n -moz-column-gap: 0 !important;\n column-gap: 0 !important;\n }\n .column-gap-md-1 {\n -webkit-column-gap: 0.3125rem !important;\n -moz-column-gap: 0.3125rem !important;\n column-gap: 0.3125rem !important;\n }\n .column-gap-md-2 {\n -webkit-column-gap: 0.625rem !important;\n -moz-column-gap: 0.625rem !important;\n column-gap: 0.625rem !important;\n }\n .column-gap-md-3 {\n -webkit-column-gap: 1.25rem !important;\n -moz-column-gap: 1.25rem !important;\n column-gap: 1.25rem !important;\n }\n .column-gap-md-4 {\n -webkit-column-gap: 1.875rem !important;\n -moz-column-gap: 1.875rem !important;\n column-gap: 1.875rem !important;\n }\n .column-gap-md-5 {\n -webkit-column-gap: 3.75rem !important;\n -moz-column-gap: 3.75rem !important;\n column-gap: 3.75rem !important;\n }\n .text-md-start {\n text-align: right !important;\n }\n .text-md-end {\n text-align: left !important;\n }\n .text-md-center {\n text-align: center !important;\n }\n}\n@media (min-width: 992px) {\n .float-lg-start {\n float: right !important;\n }\n .float-lg-end {\n float: left !important;\n }\n .float-lg-none {\n float: none !important;\n }\n .object-fit-lg-contain {\n -o-object-fit: contain !important;\n object-fit: contain !important;\n }\n .object-fit-lg-cover {\n -o-object-fit: cover !important;\n object-fit: cover !important;\n }\n .object-fit-lg-fill {\n -o-object-fit: fill !important;\n object-fit: fill !important;\n }\n .object-fit-lg-scale {\n -o-object-fit: scale-down !important;\n object-fit: scale-down !important;\n }\n .object-fit-lg-none {\n -o-object-fit: none !important;\n object-fit: none !important;\n }\n .d-lg-inline {\n display: inline !important;\n }\n .d-lg-inline-block {\n display: inline-block !important;\n }\n .d-lg-block {\n display: block !important;\n }\n .d-lg-grid {\n display: grid !important;\n }\n .d-lg-inline-grid {\n display: inline-grid !important;\n }\n .d-lg-table {\n display: table !important;\n }\n .d-lg-table-row {\n display: table-row !important;\n }\n .d-lg-table-cell {\n display: table-cell !important;\n }\n .d-lg-flex {\n display: -webkit-box !important;\n display: -ms-flexbox !important;\n display: flex !important;\n }\n .d-lg-inline-flex {\n display: -webkit-inline-box !important;\n display: -ms-inline-flexbox !important;\n display: inline-flex !important;\n }\n .d-lg-none {\n display: none !important;\n }\n .flex-lg-fill {\n -webkit-box-flex: 1 !important;\n -ms-flex: 1 1 auto !important;\n flex: 1 1 auto !important;\n }\n .flex-lg-row {\n -webkit-box-orient: horizontal !important;\n -webkit-box-direction: normal !important;\n -ms-flex-direction: row !important;\n flex-direction: row !important;\n }\n .flex-lg-column {\n -webkit-box-orient: vertical !important;\n -webkit-box-direction: normal !important;\n -ms-flex-direction: column !important;\n flex-direction: column !important;\n }\n .flex-lg-row-reverse {\n -webkit-box-orient: horizontal !important;\n -webkit-box-direction: reverse !important;\n -ms-flex-direction: row-reverse !important;\n flex-direction: row-reverse !important;\n }\n .flex-lg-column-reverse {\n -webkit-box-orient: vertical !important;\n -webkit-box-direction: reverse !important;\n -ms-flex-direction: column-reverse !important;\n flex-direction: column-reverse !important;\n }\n .flex-lg-grow-0 {\n -webkit-box-flex: 0 !important;\n -ms-flex-positive: 0 !important;\n flex-grow: 0 !important;\n }\n .flex-lg-grow-1 {\n -webkit-box-flex: 1 !important;\n -ms-flex-positive: 1 !important;\n flex-grow: 1 !important;\n }\n .flex-lg-shrink-0 {\n -ms-flex-negative: 0 !important;\n flex-shrink: 0 !important;\n }\n .flex-lg-shrink-1 {\n -ms-flex-negative: 1 !important;\n flex-shrink: 1 !important;\n }\n .flex-lg-wrap {\n -ms-flex-wrap: wrap !important;\n flex-wrap: wrap !important;\n }\n .flex-lg-nowrap {\n -ms-flex-wrap: nowrap !important;\n flex-wrap: nowrap !important;\n }\n .flex-lg-wrap-reverse {\n -ms-flex-wrap: wrap-reverse !important;\n flex-wrap: wrap-reverse !important;\n }\n .justify-content-lg-start {\n -webkit-box-pack: start !important;\n -ms-flex-pack: start !important;\n justify-content: flex-start !important;\n }\n .justify-content-lg-end {\n -webkit-box-pack: end !important;\n -ms-flex-pack: end !important;\n justify-content: flex-end !important;\n }\n .justify-content-lg-center {\n -webkit-box-pack: center !important;\n -ms-flex-pack: center !important;\n justify-content: center !important;\n }\n .justify-content-lg-between {\n -webkit-box-pack: justify !important;\n -ms-flex-pack: justify !important;\n justify-content: space-between !important;\n }\n .justify-content-lg-around {\n -ms-flex-pack: distribute !important;\n justify-content: space-around !important;\n }\n .justify-content-lg-evenly {\n -webkit-box-pack: space-evenly !important;\n -ms-flex-pack: space-evenly !important;\n justify-content: space-evenly !important;\n }\n .align-items-lg-start {\n -webkit-box-align: start !important;\n -ms-flex-align: start !important;\n align-items: flex-start !important;\n }\n .align-items-lg-end {\n -webkit-box-align: end !important;\n -ms-flex-align: end !important;\n align-items: flex-end !important;\n }\n .align-items-lg-center {\n -webkit-box-align: center !important;\n -ms-flex-align: center !important;\n align-items: center !important;\n }\n .align-items-lg-baseline {\n -webkit-box-align: baseline !important;\n -ms-flex-align: baseline !important;\n align-items: baseline !important;\n }\n .align-items-lg-stretch {\n -webkit-box-align: stretch !important;\n -ms-flex-align: stretch !important;\n align-items: stretch !important;\n }\n .align-content-lg-start {\n -ms-flex-line-pack: start !important;\n align-content: flex-start !important;\n }\n .align-content-lg-end {\n -ms-flex-line-pack: end !important;\n align-content: flex-end !important;\n }\n .align-content-lg-center {\n -ms-flex-line-pack: center !important;\n align-content: center !important;\n }\n .align-content-lg-between {\n -ms-flex-line-pack: justify !important;\n align-content: space-between !important;\n }\n .align-content-lg-around {\n -ms-flex-line-pack: distribute !important;\n align-content: space-around !important;\n }\n .align-content-lg-stretch {\n -ms-flex-line-pack: stretch !important;\n align-content: stretch !important;\n }\n .align-self-lg-auto {\n -ms-flex-item-align: auto !important;\n align-self: auto !important;\n }\n .align-self-lg-start {\n -ms-flex-item-align: start !important;\n align-self: flex-start !important;\n }\n .align-self-lg-end {\n -ms-flex-item-align: end !important;\n align-self: flex-end !important;\n }\n .align-self-lg-center {\n -ms-flex-item-align: center !important;\n align-self: center !important;\n }\n .align-self-lg-baseline {\n -ms-flex-item-align: baseline !important;\n align-self: baseline !important;\n }\n .align-self-lg-stretch {\n -ms-flex-item-align: stretch !important;\n align-self: stretch !important;\n }\n .order-lg-first {\n -webkit-box-ordinal-group: 0 !important;\n -ms-flex-order: -1 !important;\n order: -1 !important;\n }\n .order-lg-0 {\n -webkit-box-ordinal-group: 1 !important;\n -ms-flex-order: 0 !important;\n order: 0 !important;\n }\n .order-lg-1 {\n -webkit-box-ordinal-group: 2 !important;\n -ms-flex-order: 1 !important;\n order: 1 !important;\n }\n .order-lg-2 {\n -webkit-box-ordinal-group: 3 !important;\n -ms-flex-order: 2 !important;\n order: 2 !important;\n }\n .order-lg-3 {\n -webkit-box-ordinal-group: 4 !important;\n -ms-flex-order: 3 !important;\n order: 3 !important;\n }\n .order-lg-4 {\n -webkit-box-ordinal-group: 5 !important;\n -ms-flex-order: 4 !important;\n order: 4 !important;\n }\n .order-lg-5 {\n -webkit-box-ordinal-group: 6 !important;\n -ms-flex-order: 5 !important;\n order: 5 !important;\n }\n .order-lg-last {\n -webkit-box-ordinal-group: 7 !important;\n -ms-flex-order: 6 !important;\n order: 6 !important;\n }\n .m-lg-0 {\n margin: 0 !important;\n }\n .m-lg-1 {\n margin: 0.3125rem !important;\n }\n .m-lg-2 {\n margin: 0.625rem !important;\n }\n .m-lg-3 {\n margin: 1.25rem !important;\n }\n .m-lg-4 {\n margin: 1.875rem !important;\n }\n .m-lg-5 {\n margin: 3.75rem !important;\n }\n .m-lg-auto {\n margin: auto !important;\n }\n .mx-lg-0 {\n margin-left: 0 !important;\n margin-right: 0 !important;\n }\n .mx-lg-1 {\n margin-left: 0.3125rem !important;\n margin-right: 0.3125rem !important;\n }\n .mx-lg-2 {\n margin-left: 0.625rem !important;\n margin-right: 0.625rem !important;\n }\n .mx-lg-3 {\n margin-left: 1.25rem !important;\n margin-right: 1.25rem !important;\n }\n .mx-lg-4 {\n margin-left: 1.875rem !important;\n margin-right: 1.875rem !important;\n }\n .mx-lg-5 {\n margin-left: 3.75rem !important;\n margin-right: 3.75rem !important;\n }\n .mx-lg-auto {\n margin-left: auto !important;\n margin-right: auto !important;\n }\n .my-lg-0 {\n margin-top: 0 !important;\n margin-bottom: 0 !important;\n }\n .my-lg-1 {\n margin-top: 0.3125rem !important;\n margin-bottom: 0.3125rem !important;\n }\n .my-lg-2 {\n margin-top: 0.625rem !important;\n margin-bottom: 0.625rem !important;\n }\n .my-lg-3 {\n margin-top: 1.25rem !important;\n margin-bottom: 1.25rem !important;\n }\n .my-lg-4 {\n margin-top: 1.875rem !important;\n margin-bottom: 1.875rem !important;\n }\n .my-lg-5 {\n margin-top: 3.75rem !important;\n margin-bottom: 3.75rem !important;\n }\n .my-lg-auto {\n margin-top: auto !important;\n margin-bottom: auto !important;\n }\n .mt-lg-0 {\n margin-top: 0 !important;\n }\n .mt-lg-1 {\n margin-top: 0.3125rem !important;\n }\n .mt-lg-2 {\n margin-top: 0.625rem !important;\n }\n .mt-lg-3 {\n margin-top: 1.25rem !important;\n }\n .mt-lg-4 {\n margin-top: 1.875rem !important;\n }\n .mt-lg-5 {\n margin-top: 3.75rem !important;\n }\n .mt-lg-auto {\n margin-top: auto !important;\n }\n .me-lg-0 {\n margin-left: 0 !important;\n }\n .me-lg-1 {\n margin-left: 0.3125rem !important;\n }\n .me-lg-2 {\n margin-left: 0.625rem !important;\n }\n .me-lg-3 {\n margin-left: 1.25rem !important;\n }\n .me-lg-4 {\n margin-left: 1.875rem !important;\n }\n .me-lg-5 {\n margin-left: 3.75rem !important;\n }\n .me-lg-auto {\n margin-left: auto !important;\n }\n .mb-lg-0 {\n margin-bottom: 0 !important;\n }\n .mb-lg-1 {\n margin-bottom: 0.3125rem !important;\n }\n .mb-lg-2 {\n margin-bottom: 0.625rem !important;\n }\n .mb-lg-3 {\n margin-bottom: 1.25rem !important;\n }\n .mb-lg-4 {\n margin-bottom: 1.875rem !important;\n }\n .mb-lg-5 {\n margin-bottom: 3.75rem !important;\n }\n .mb-lg-auto {\n margin-bottom: auto !important;\n }\n .ms-lg-0 {\n margin-right: 0 !important;\n }\n .ms-lg-1 {\n margin-right: 0.3125rem !important;\n }\n .ms-lg-2 {\n margin-right: 0.625rem !important;\n }\n .ms-lg-3 {\n margin-right: 1.25rem !important;\n }\n .ms-lg-4 {\n margin-right: 1.875rem !important;\n }\n .ms-lg-5 {\n margin-right: 3.75rem !important;\n }\n .ms-lg-auto {\n margin-right: auto !important;\n }\n .m-lg-n1 {\n margin: -0.3125rem !important;\n }\n .m-lg-n2 {\n margin: -0.625rem !important;\n }\n .m-lg-n3 {\n margin: -1.25rem !important;\n }\n .m-lg-n4 {\n margin: -1.875rem !important;\n }\n .m-lg-n5 {\n margin: -3.75rem !important;\n }\n .mx-lg-n1 {\n margin-left: -0.3125rem !important;\n margin-right: -0.3125rem !important;\n }\n .mx-lg-n2 {\n margin-left: -0.625rem !important;\n margin-right: -0.625rem !important;\n }\n .mx-lg-n3 {\n margin-left: -1.25rem !important;\n margin-right: -1.25rem !important;\n }\n .mx-lg-n4 {\n margin-left: -1.875rem !important;\n margin-right: -1.875rem !important;\n }\n .mx-lg-n5 {\n margin-left: -3.75rem !important;\n margin-right: -3.75rem !important;\n }\n .my-lg-n1 {\n margin-top: -0.3125rem !important;\n margin-bottom: -0.3125rem !important;\n }\n .my-lg-n2 {\n margin-top: -0.625rem !important;\n margin-bottom: -0.625rem !important;\n }\n .my-lg-n3 {\n margin-top: -1.25rem !important;\n margin-bottom: -1.25rem !important;\n }\n .my-lg-n4 {\n margin-top: -1.875rem !important;\n margin-bottom: -1.875rem !important;\n }\n .my-lg-n5 {\n margin-top: -3.75rem !important;\n margin-bottom: -3.75rem !important;\n }\n .mt-lg-n1 {\n margin-top: -0.3125rem !important;\n }\n .mt-lg-n2 {\n margin-top: -0.625rem !important;\n }\n .mt-lg-n3 {\n margin-top: -1.25rem !important;\n }\n .mt-lg-n4 {\n margin-top: -1.875rem !important;\n }\n .mt-lg-n5 {\n margin-top: -3.75rem !important;\n }\n .me-lg-n1 {\n margin-left: -0.3125rem !important;\n }\n .me-lg-n2 {\n margin-left: -0.625rem !important;\n }\n .me-lg-n3 {\n margin-left: -1.25rem !important;\n }\n .me-lg-n4 {\n margin-left: -1.875rem !important;\n }\n .me-lg-n5 {\n margin-left: -3.75rem !important;\n }\n .mb-lg-n1 {\n margin-bottom: -0.3125rem !important;\n }\n .mb-lg-n2 {\n margin-bottom: -0.625rem !important;\n }\n .mb-lg-n3 {\n margin-bottom: -1.25rem !important;\n }\n .mb-lg-n4 {\n margin-bottom: -1.875rem !important;\n }\n .mb-lg-n5 {\n margin-bottom: -3.75rem !important;\n }\n .ms-lg-n1 {\n margin-right: -0.3125rem !important;\n }\n .ms-lg-n2 {\n margin-right: -0.625rem !important;\n }\n .ms-lg-n3 {\n margin-right: -1.25rem !important;\n }\n .ms-lg-n4 {\n margin-right: -1.875rem !important;\n }\n .ms-lg-n5 {\n margin-right: -3.75rem !important;\n }\n .p-lg-0 {\n padding: 0 !important;\n }\n .p-lg-1 {\n padding: 0.3125rem !important;\n }\n .p-lg-2 {\n padding: 0.625rem !important;\n }\n .p-lg-3 {\n padding: 1.25rem !important;\n }\n .p-lg-4 {\n padding: 1.875rem !important;\n }\n .p-lg-5 {\n padding: 3.75rem !important;\n }\n .px-lg-0 {\n padding-left: 0 !important;\n padding-right: 0 !important;\n }\n .px-lg-1 {\n padding-left: 0.3125rem !important;\n padding-right: 0.3125rem !important;\n }\n .px-lg-2 {\n padding-left: 0.625rem !important;\n padding-right: 0.625rem !important;\n }\n .px-lg-3 {\n padding-left: 1.25rem !important;\n padding-right: 1.25rem !important;\n }\n .px-lg-4 {\n padding-left: 1.875rem !important;\n padding-right: 1.875rem !important;\n }\n .px-lg-5 {\n padding-left: 3.75rem !important;\n padding-right: 3.75rem !important;\n }\n .py-lg-0 {\n padding-top: 0 !important;\n padding-bottom: 0 !important;\n }\n .py-lg-1 {\n padding-top: 0.3125rem !important;\n padding-bottom: 0.3125rem !important;\n }\n .py-lg-2 {\n padding-top: 0.625rem !important;\n padding-bottom: 0.625rem !important;\n }\n .py-lg-3 {\n padding-top: 1.25rem !important;\n padding-bottom: 1.25rem !important;\n }\n .py-lg-4 {\n padding-top: 1.875rem !important;\n padding-bottom: 1.875rem !important;\n }\n .py-lg-5 {\n padding-top: 3.75rem !important;\n padding-bottom: 3.75rem !important;\n }\n .pt-lg-0 {\n padding-top: 0 !important;\n }\n .pt-lg-1 {\n padding-top: 0.3125rem !important;\n }\n .pt-lg-2 {\n padding-top: 0.625rem !important;\n }\n .pt-lg-3 {\n padding-top: 1.25rem !important;\n }\n .pt-lg-4 {\n padding-top: 1.875rem !important;\n }\n .pt-lg-5 {\n padding-top: 3.75rem !important;\n }\n .pe-lg-0 {\n padding-left: 0 !important;\n }\n .pe-lg-1 {\n padding-left: 0.3125rem !important;\n }\n .pe-lg-2 {\n padding-left: 0.625rem !important;\n }\n .pe-lg-3 {\n padding-left: 1.25rem !important;\n }\n .pe-lg-4 {\n padding-left: 1.875rem !important;\n }\n .pe-lg-5 {\n padding-left: 3.75rem !important;\n }\n .pb-lg-0 {\n padding-bottom: 0 !important;\n }\n .pb-lg-1 {\n padding-bottom: 0.3125rem !important;\n }\n .pb-lg-2 {\n padding-bottom: 0.625rem !important;\n }\n .pb-lg-3 {\n padding-bottom: 1.25rem !important;\n }\n .pb-lg-4 {\n padding-bottom: 1.875rem !important;\n }\n .pb-lg-5 {\n padding-bottom: 3.75rem !important;\n }\n .ps-lg-0 {\n padding-right: 0 !important;\n }\n .ps-lg-1 {\n padding-right: 0.3125rem !important;\n }\n .ps-lg-2 {\n padding-right: 0.625rem !important;\n }\n .ps-lg-3 {\n padding-right: 1.25rem !important;\n }\n .ps-lg-4 {\n padding-right: 1.875rem !important;\n }\n .ps-lg-5 {\n padding-right: 3.75rem !important;\n }\n .gap-lg-0 {\n gap: 0 !important;\n }\n .gap-lg-1 {\n gap: 0.3125rem !important;\n }\n .gap-lg-2 {\n gap: 0.625rem !important;\n }\n .gap-lg-3 {\n gap: 1.25rem !important;\n }\n .gap-lg-4 {\n gap: 1.875rem !important;\n }\n .gap-lg-5 {\n gap: 3.75rem !important;\n }\n .row-gap-lg-0 {\n row-gap: 0 !important;\n }\n .row-gap-lg-1 {\n row-gap: 0.3125rem !important;\n }\n .row-gap-lg-2 {\n row-gap: 0.625rem !important;\n }\n .row-gap-lg-3 {\n row-gap: 1.25rem !important;\n }\n .row-gap-lg-4 {\n row-gap: 1.875rem !important;\n }\n .row-gap-lg-5 {\n row-gap: 3.75rem !important;\n }\n .column-gap-lg-0 {\n -webkit-column-gap: 0 !important;\n -moz-column-gap: 0 !important;\n column-gap: 0 !important;\n }\n .column-gap-lg-1 {\n -webkit-column-gap: 0.3125rem !important;\n -moz-column-gap: 0.3125rem !important;\n column-gap: 0.3125rem !important;\n }\n .column-gap-lg-2 {\n -webkit-column-gap: 0.625rem !important;\n -moz-column-gap: 0.625rem !important;\n column-gap: 0.625rem !important;\n }\n .column-gap-lg-3 {\n -webkit-column-gap: 1.25rem !important;\n -moz-column-gap: 1.25rem !important;\n column-gap: 1.25rem !important;\n }\n .column-gap-lg-4 {\n -webkit-column-gap: 1.875rem !important;\n -moz-column-gap: 1.875rem !important;\n column-gap: 1.875rem !important;\n }\n .column-gap-lg-5 {\n -webkit-column-gap: 3.75rem !important;\n -moz-column-gap: 3.75rem !important;\n column-gap: 3.75rem !important;\n }\n .text-lg-start {\n text-align: right !important;\n }\n .text-lg-end {\n text-align: left !important;\n }\n .text-lg-center {\n text-align: center !important;\n }\n}\n@media (min-width: 1200px) {\n .float-xl-start {\n float: right !important;\n }\n .float-xl-end {\n float: left !important;\n }\n .float-xl-none {\n float: none !important;\n }\n .object-fit-xl-contain {\n -o-object-fit: contain !important;\n object-fit: contain !important;\n }\n .object-fit-xl-cover {\n -o-object-fit: cover !important;\n object-fit: cover !important;\n }\n .object-fit-xl-fill {\n -o-object-fit: fill !important;\n object-fit: fill !important;\n }\n .object-fit-xl-scale {\n -o-object-fit: scale-down !important;\n object-fit: scale-down !important;\n }\n .object-fit-xl-none {\n -o-object-fit: none !important;\n object-fit: none !important;\n }\n .d-xl-inline {\n display: inline !important;\n }\n .d-xl-inline-block {\n display: inline-block !important;\n }\n .d-xl-block {\n display: block !important;\n }\n .d-xl-grid {\n display: grid !important;\n }\n .d-xl-inline-grid {\n display: inline-grid !important;\n }\n .d-xl-table {\n display: table !important;\n }\n .d-xl-table-row {\n display: table-row !important;\n }\n .d-xl-table-cell {\n display: table-cell !important;\n }\n .d-xl-flex {\n display: -webkit-box !important;\n display: -ms-flexbox !important;\n display: flex !important;\n }\n .d-xl-inline-flex {\n display: -webkit-inline-box !important;\n display: -ms-inline-flexbox !important;\n display: inline-flex !important;\n }\n .d-xl-none {\n display: none !important;\n }\n .flex-xl-fill {\n -webkit-box-flex: 1 !important;\n -ms-flex: 1 1 auto !important;\n flex: 1 1 auto !important;\n }\n .flex-xl-row {\n -webkit-box-orient: horizontal !important;\n -webkit-box-direction: normal !important;\n -ms-flex-direction: row !important;\n flex-direction: row !important;\n }\n .flex-xl-column {\n -webkit-box-orient: vertical !important;\n -webkit-box-direction: normal !important;\n -ms-flex-direction: column !important;\n flex-direction: column !important;\n }\n .flex-xl-row-reverse {\n -webkit-box-orient: horizontal !important;\n -webkit-box-direction: reverse !important;\n -ms-flex-direction: row-reverse !important;\n flex-direction: row-reverse !important;\n }\n .flex-xl-column-reverse {\n -webkit-box-orient: vertical !important;\n -webkit-box-direction: reverse !important;\n -ms-flex-direction: column-reverse !important;\n flex-direction: column-reverse !important;\n }\n .flex-xl-grow-0 {\n -webkit-box-flex: 0 !important;\n -ms-flex-positive: 0 !important;\n flex-grow: 0 !important;\n }\n .flex-xl-grow-1 {\n -webkit-box-flex: 1 !important;\n -ms-flex-positive: 1 !important;\n flex-grow: 1 !important;\n }\n .flex-xl-shrink-0 {\n -ms-flex-negative: 0 !important;\n flex-shrink: 0 !important;\n }\n .flex-xl-shrink-1 {\n -ms-flex-negative: 1 !important;\n flex-shrink: 1 !important;\n }\n .flex-xl-wrap {\n -ms-flex-wrap: wrap !important;\n flex-wrap: wrap !important;\n }\n .flex-xl-nowrap {\n -ms-flex-wrap: nowrap !important;\n flex-wrap: nowrap !important;\n }\n .flex-xl-wrap-reverse {\n -ms-flex-wrap: wrap-reverse !important;\n flex-wrap: wrap-reverse !important;\n }\n .justify-content-xl-start {\n -webkit-box-pack: start !important;\n -ms-flex-pack: start !important;\n justify-content: flex-start !important;\n }\n .justify-content-xl-end {\n -webkit-box-pack: end !important;\n -ms-flex-pack: end !important;\n justify-content: flex-end !important;\n }\n .justify-content-xl-center {\n -webkit-box-pack: center !important;\n -ms-flex-pack: center !important;\n justify-content: center !important;\n }\n .justify-content-xl-between {\n -webkit-box-pack: justify !important;\n -ms-flex-pack: justify !important;\n justify-content: space-between !important;\n }\n .justify-content-xl-around {\n -ms-flex-pack: distribute !important;\n justify-content: space-around !important;\n }\n .justify-content-xl-evenly {\n -webkit-box-pack: space-evenly !important;\n -ms-flex-pack: space-evenly !important;\n justify-content: space-evenly !important;\n }\n .align-items-xl-start {\n -webkit-box-align: start !important;\n -ms-flex-align: start !important;\n align-items: flex-start !important;\n }\n .align-items-xl-end {\n -webkit-box-align: end !important;\n -ms-flex-align: end !important;\n align-items: flex-end !important;\n }\n .align-items-xl-center {\n -webkit-box-align: center !important;\n -ms-flex-align: center !important;\n align-items: center !important;\n }\n .align-items-xl-baseline {\n -webkit-box-align: baseline !important;\n -ms-flex-align: baseline !important;\n align-items: baseline !important;\n }\n .align-items-xl-stretch {\n -webkit-box-align: stretch !important;\n -ms-flex-align: stretch !important;\n align-items: stretch !important;\n }\n .align-content-xl-start {\n -ms-flex-line-pack: start !important;\n align-content: flex-start !important;\n }\n .align-content-xl-end {\n -ms-flex-line-pack: end !important;\n align-content: flex-end !important;\n }\n .align-content-xl-center {\n -ms-flex-line-pack: center !important;\n align-content: center !important;\n }\n .align-content-xl-between {\n -ms-flex-line-pack: justify !important;\n align-content: space-between !important;\n }\n .align-content-xl-around {\n -ms-flex-line-pack: distribute !important;\n align-content: space-around !important;\n }\n .align-content-xl-stretch {\n -ms-flex-line-pack: stretch !important;\n align-content: stretch !important;\n }\n .align-self-xl-auto {\n -ms-flex-item-align: auto !important;\n align-self: auto !important;\n }\n .align-self-xl-start {\n -ms-flex-item-align: start !important;\n align-self: flex-start !important;\n }\n .align-self-xl-end {\n -ms-flex-item-align: end !important;\n align-self: flex-end !important;\n }\n .align-self-xl-center {\n -ms-flex-item-align: center !important;\n align-self: center !important;\n }\n .align-self-xl-baseline {\n -ms-flex-item-align: baseline !important;\n align-self: baseline !important;\n }\n .align-self-xl-stretch {\n -ms-flex-item-align: stretch !important;\n align-self: stretch !important;\n }\n .order-xl-first {\n -webkit-box-ordinal-group: 0 !important;\n -ms-flex-order: -1 !important;\n order: -1 !important;\n }\n .order-xl-0 {\n -webkit-box-ordinal-group: 1 !important;\n -ms-flex-order: 0 !important;\n order: 0 !important;\n }\n .order-xl-1 {\n -webkit-box-ordinal-group: 2 !important;\n -ms-flex-order: 1 !important;\n order: 1 !important;\n }\n .order-xl-2 {\n -webkit-box-ordinal-group: 3 !important;\n -ms-flex-order: 2 !important;\n order: 2 !important;\n }\n .order-xl-3 {\n -webkit-box-ordinal-group: 4 !important;\n -ms-flex-order: 3 !important;\n order: 3 !important;\n }\n .order-xl-4 {\n -webkit-box-ordinal-group: 5 !important;\n -ms-flex-order: 4 !important;\n order: 4 !important;\n }\n .order-xl-5 {\n -webkit-box-ordinal-group: 6 !important;\n -ms-flex-order: 5 !important;\n order: 5 !important;\n }\n .order-xl-last {\n -webkit-box-ordinal-group: 7 !important;\n -ms-flex-order: 6 !important;\n order: 6 !important;\n }\n .m-xl-0 {\n margin: 0 !important;\n }\n .m-xl-1 {\n margin: 0.3125rem !important;\n }\n .m-xl-2 {\n margin: 0.625rem !important;\n }\n .m-xl-3 {\n margin: 1.25rem !important;\n }\n .m-xl-4 {\n margin: 1.875rem !important;\n }\n .m-xl-5 {\n margin: 3.75rem !important;\n }\n .m-xl-auto {\n margin: auto !important;\n }\n .mx-xl-0 {\n margin-left: 0 !important;\n margin-right: 0 !important;\n }\n .mx-xl-1 {\n margin-left: 0.3125rem !important;\n margin-right: 0.3125rem !important;\n }\n .mx-xl-2 {\n margin-left: 0.625rem !important;\n margin-right: 0.625rem !important;\n }\n .mx-xl-3 {\n margin-left: 1.25rem !important;\n margin-right: 1.25rem !important;\n }\n .mx-xl-4 {\n margin-left: 1.875rem !important;\n margin-right: 1.875rem !important;\n }\n .mx-xl-5 {\n margin-left: 3.75rem !important;\n margin-right: 3.75rem !important;\n }\n .mx-xl-auto {\n margin-left: auto !important;\n margin-right: auto !important;\n }\n .my-xl-0 {\n margin-top: 0 !important;\n margin-bottom: 0 !important;\n }\n .my-xl-1 {\n margin-top: 0.3125rem !important;\n margin-bottom: 0.3125rem !important;\n }\n .my-xl-2 {\n margin-top: 0.625rem !important;\n margin-bottom: 0.625rem !important;\n }\n .my-xl-3 {\n margin-top: 1.25rem !important;\n margin-bottom: 1.25rem !important;\n }\n .my-xl-4 {\n margin-top: 1.875rem !important;\n margin-bottom: 1.875rem !important;\n }\n .my-xl-5 {\n margin-top: 3.75rem !important;\n margin-bottom: 3.75rem !important;\n }\n .my-xl-auto {\n margin-top: auto !important;\n margin-bottom: auto !important;\n }\n .mt-xl-0 {\n margin-top: 0 !important;\n }\n .mt-xl-1 {\n margin-top: 0.3125rem !important;\n }\n .mt-xl-2 {\n margin-top: 0.625rem !important;\n }\n .mt-xl-3 {\n margin-top: 1.25rem !important;\n }\n .mt-xl-4 {\n margin-top: 1.875rem !important;\n }\n .mt-xl-5 {\n margin-top: 3.75rem !important;\n }\n .mt-xl-auto {\n margin-top: auto !important;\n }\n .me-xl-0 {\n margin-left: 0 !important;\n }\n .me-xl-1 {\n margin-left: 0.3125rem !important;\n }\n .me-xl-2 {\n margin-left: 0.625rem !important;\n }\n .me-xl-3 {\n margin-left: 1.25rem !important;\n }\n .me-xl-4 {\n margin-left: 1.875rem !important;\n }\n .me-xl-5 {\n margin-left: 3.75rem !important;\n }\n .me-xl-auto {\n margin-left: auto !important;\n }\n .mb-xl-0 {\n margin-bottom: 0 !important;\n }\n .mb-xl-1 {\n margin-bottom: 0.3125rem !important;\n }\n .mb-xl-2 {\n margin-bottom: 0.625rem !important;\n }\n .mb-xl-3 {\n margin-bottom: 1.25rem !important;\n }\n .mb-xl-4 {\n margin-bottom: 1.875rem !important;\n }\n .mb-xl-5 {\n margin-bottom: 3.75rem !important;\n }\n .mb-xl-auto {\n margin-bottom: auto !important;\n }\n .ms-xl-0 {\n margin-right: 0 !important;\n }\n .ms-xl-1 {\n margin-right: 0.3125rem !important;\n }\n .ms-xl-2 {\n margin-right: 0.625rem !important;\n }\n .ms-xl-3 {\n margin-right: 1.25rem !important;\n }\n .ms-xl-4 {\n margin-right: 1.875rem !important;\n }\n .ms-xl-5 {\n margin-right: 3.75rem !important;\n }\n .ms-xl-auto {\n margin-right: auto !important;\n }\n .m-xl-n1 {\n margin: -0.3125rem !important;\n }\n .m-xl-n2 {\n margin: -0.625rem !important;\n }\n .m-xl-n3 {\n margin: -1.25rem !important;\n }\n .m-xl-n4 {\n margin: -1.875rem !important;\n }\n .m-xl-n5 {\n margin: -3.75rem !important;\n }\n .mx-xl-n1 {\n margin-left: -0.3125rem !important;\n margin-right: -0.3125rem !important;\n }\n .mx-xl-n2 {\n margin-left: -0.625rem !important;\n margin-right: -0.625rem !important;\n }\n .mx-xl-n3 {\n margin-left: -1.25rem !important;\n margin-right: -1.25rem !important;\n }\n .mx-xl-n4 {\n margin-left: -1.875rem !important;\n margin-right: -1.875rem !important;\n }\n .mx-xl-n5 {\n margin-left: -3.75rem !important;\n margin-right: -3.75rem !important;\n }\n .my-xl-n1 {\n margin-top: -0.3125rem !important;\n margin-bottom: -0.3125rem !important;\n }\n .my-xl-n2 {\n margin-top: -0.625rem !important;\n margin-bottom: -0.625rem !important;\n }\n .my-xl-n3 {\n margin-top: -1.25rem !important;\n margin-bottom: -1.25rem !important;\n }\n .my-xl-n4 {\n margin-top: -1.875rem !important;\n margin-bottom: -1.875rem !important;\n }\n .my-xl-n5 {\n margin-top: -3.75rem !important;\n margin-bottom: -3.75rem !important;\n }\n .mt-xl-n1 {\n margin-top: -0.3125rem !important;\n }\n .mt-xl-n2 {\n margin-top: -0.625rem !important;\n }\n .mt-xl-n3 {\n margin-top: -1.25rem !important;\n }\n .mt-xl-n4 {\n margin-top: -1.875rem !important;\n }\n .mt-xl-n5 {\n margin-top: -3.75rem !important;\n }\n .me-xl-n1 {\n margin-left: -0.3125rem !important;\n }\n .me-xl-n2 {\n margin-left: -0.625rem !important;\n }\n .me-xl-n3 {\n margin-left: -1.25rem !important;\n }\n .me-xl-n4 {\n margin-left: -1.875rem !important;\n }\n .me-xl-n5 {\n margin-left: -3.75rem !important;\n }\n .mb-xl-n1 {\n margin-bottom: -0.3125rem !important;\n }\n .mb-xl-n2 {\n margin-bottom: -0.625rem !important;\n }\n .mb-xl-n3 {\n margin-bottom: -1.25rem !important;\n }\n .mb-xl-n4 {\n margin-bottom: -1.875rem !important;\n }\n .mb-xl-n5 {\n margin-bottom: -3.75rem !important;\n }\n .ms-xl-n1 {\n margin-right: -0.3125rem !important;\n }\n .ms-xl-n2 {\n margin-right: -0.625rem !important;\n }\n .ms-xl-n3 {\n margin-right: -1.25rem !important;\n }\n .ms-xl-n4 {\n margin-right: -1.875rem !important;\n }\n .ms-xl-n5 {\n margin-right: -3.75rem !important;\n }\n .p-xl-0 {\n padding: 0 !important;\n }\n .p-xl-1 {\n padding: 0.3125rem !important;\n }\n .p-xl-2 {\n padding: 0.625rem !important;\n }\n .p-xl-3 {\n padding: 1.25rem !important;\n }\n .p-xl-4 {\n padding: 1.875rem !important;\n }\n .p-xl-5 {\n padding: 3.75rem !important;\n }\n .px-xl-0 {\n padding-left: 0 !important;\n padding-right: 0 !important;\n }\n .px-xl-1 {\n padding-left: 0.3125rem !important;\n padding-right: 0.3125rem !important;\n }\n .px-xl-2 {\n padding-left: 0.625rem !important;\n padding-right: 0.625rem !important;\n }\n .px-xl-3 {\n padding-left: 1.25rem !important;\n padding-right: 1.25rem !important;\n }\n .px-xl-4 {\n padding-left: 1.875rem !important;\n padding-right: 1.875rem !important;\n }\n .px-xl-5 {\n padding-left: 3.75rem !important;\n padding-right: 3.75rem !important;\n }\n .py-xl-0 {\n padding-top: 0 !important;\n padding-bottom: 0 !important;\n }\n .py-xl-1 {\n padding-top: 0.3125rem !important;\n padding-bottom: 0.3125rem !important;\n }\n .py-xl-2 {\n padding-top: 0.625rem !important;\n padding-bottom: 0.625rem !important;\n }\n .py-xl-3 {\n padding-top: 1.25rem !important;\n padding-bottom: 1.25rem !important;\n }\n .py-xl-4 {\n padding-top: 1.875rem !important;\n padding-bottom: 1.875rem !important;\n }\n .py-xl-5 {\n padding-top: 3.75rem !important;\n padding-bottom: 3.75rem !important;\n }\n .pt-xl-0 {\n padding-top: 0 !important;\n }\n .pt-xl-1 {\n padding-top: 0.3125rem !important;\n }\n .pt-xl-2 {\n padding-top: 0.625rem !important;\n }\n .pt-xl-3 {\n padding-top: 1.25rem !important;\n }\n .pt-xl-4 {\n padding-top: 1.875rem !important;\n }\n .pt-xl-5 {\n padding-top: 3.75rem !important;\n }\n .pe-xl-0 {\n padding-left: 0 !important;\n }\n .pe-xl-1 {\n padding-left: 0.3125rem !important;\n }\n .pe-xl-2 {\n padding-left: 0.625rem !important;\n }\n .pe-xl-3 {\n padding-left: 1.25rem !important;\n }\n .pe-xl-4 {\n padding-left: 1.875rem !important;\n }\n .pe-xl-5 {\n padding-left: 3.75rem !important;\n }\n .pb-xl-0 {\n padding-bottom: 0 !important;\n }\n .pb-xl-1 {\n padding-bottom: 0.3125rem !important;\n }\n .pb-xl-2 {\n padding-bottom: 0.625rem !important;\n }\n .pb-xl-3 {\n padding-bottom: 1.25rem !important;\n }\n .pb-xl-4 {\n padding-bottom: 1.875rem !important;\n }\n .pb-xl-5 {\n padding-bottom: 3.75rem !important;\n }\n .ps-xl-0 {\n padding-right: 0 !important;\n }\n .ps-xl-1 {\n padding-right: 0.3125rem !important;\n }\n .ps-xl-2 {\n padding-right: 0.625rem !important;\n }\n .ps-xl-3 {\n padding-right: 1.25rem !important;\n }\n .ps-xl-4 {\n padding-right: 1.875rem !important;\n }\n .ps-xl-5 {\n padding-right: 3.75rem !important;\n }\n .gap-xl-0 {\n gap: 0 !important;\n }\n .gap-xl-1 {\n gap: 0.3125rem !important;\n }\n .gap-xl-2 {\n gap: 0.625rem !important;\n }\n .gap-xl-3 {\n gap: 1.25rem !important;\n }\n .gap-xl-4 {\n gap: 1.875rem !important;\n }\n .gap-xl-5 {\n gap: 3.75rem !important;\n }\n .row-gap-xl-0 {\n row-gap: 0 !important;\n }\n .row-gap-xl-1 {\n row-gap: 0.3125rem !important;\n }\n .row-gap-xl-2 {\n row-gap: 0.625rem !important;\n }\n .row-gap-xl-3 {\n row-gap: 1.25rem !important;\n }\n .row-gap-xl-4 {\n row-gap: 1.875rem !important;\n }\n .row-gap-xl-5 {\n row-gap: 3.75rem !important;\n }\n .column-gap-xl-0 {\n -webkit-column-gap: 0 !important;\n -moz-column-gap: 0 !important;\n column-gap: 0 !important;\n }\n .column-gap-xl-1 {\n -webkit-column-gap: 0.3125rem !important;\n -moz-column-gap: 0.3125rem !important;\n column-gap: 0.3125rem !important;\n }\n .column-gap-xl-2 {\n -webkit-column-gap: 0.625rem !important;\n -moz-column-gap: 0.625rem !important;\n column-gap: 0.625rem !important;\n }\n .column-gap-xl-3 {\n -webkit-column-gap: 1.25rem !important;\n -moz-column-gap: 1.25rem !important;\n column-gap: 1.25rem !important;\n }\n .column-gap-xl-4 {\n -webkit-column-gap: 1.875rem !important;\n -moz-column-gap: 1.875rem !important;\n column-gap: 1.875rem !important;\n }\n .column-gap-xl-5 {\n -webkit-column-gap: 3.75rem !important;\n -moz-column-gap: 3.75rem !important;\n column-gap: 3.75rem !important;\n }\n .text-xl-start {\n text-align: right !important;\n }\n .text-xl-end {\n text-align: left !important;\n }\n .text-xl-center {\n text-align: center !important;\n }\n}\n@media (min-width: 1400px) {\n .float-xxl-start {\n float: right !important;\n }\n .float-xxl-end {\n float: left !important;\n }\n .float-xxl-none {\n float: none !important;\n }\n .object-fit-xxl-contain {\n -o-object-fit: contain !important;\n object-fit: contain !important;\n }\n .object-fit-xxl-cover {\n -o-object-fit: cover !important;\n object-fit: cover !important;\n }\n .object-fit-xxl-fill {\n -o-object-fit: fill !important;\n object-fit: fill !important;\n }\n .object-fit-xxl-scale {\n -o-object-fit: scale-down !important;\n object-fit: scale-down !important;\n }\n .object-fit-xxl-none {\n -o-object-fit: none !important;\n object-fit: none !important;\n }\n .d-xxl-inline {\n display: inline !important;\n }\n .d-xxl-inline-block {\n display: inline-block !important;\n }\n .d-xxl-block {\n display: block !important;\n }\n .d-xxl-grid {\n display: grid !important;\n }\n .d-xxl-inline-grid {\n display: inline-grid !important;\n }\n .d-xxl-table {\n display: table !important;\n }\n .d-xxl-table-row {\n display: table-row !important;\n }\n .d-xxl-table-cell {\n display: table-cell !important;\n }\n .d-xxl-flex {\n display: -webkit-box !important;\n display: -ms-flexbox !important;\n display: flex !important;\n }\n .d-xxl-inline-flex {\n display: -webkit-inline-box !important;\n display: -ms-inline-flexbox !important;\n display: inline-flex !important;\n }\n .d-xxl-none {\n display: none !important;\n }\n .flex-xxl-fill {\n -webkit-box-flex: 1 !important;\n -ms-flex: 1 1 auto !important;\n flex: 1 1 auto !important;\n }\n .flex-xxl-row {\n -webkit-box-orient: horizontal !important;\n -webkit-box-direction: normal !important;\n -ms-flex-direction: row !important;\n flex-direction: row !important;\n }\n .flex-xxl-column {\n -webkit-box-orient: vertical !important;\n -webkit-box-direction: normal !important;\n -ms-flex-direction: column !important;\n flex-direction: column !important;\n }\n .flex-xxl-row-reverse {\n -webkit-box-orient: horizontal !important;\n -webkit-box-direction: reverse !important;\n -ms-flex-direction: row-reverse !important;\n flex-direction: row-reverse !important;\n }\n .flex-xxl-column-reverse {\n -webkit-box-orient: vertical !important;\n -webkit-box-direction: reverse !important;\n -ms-flex-direction: column-reverse !important;\n flex-direction: column-reverse !important;\n }\n .flex-xxl-grow-0 {\n -webkit-box-flex: 0 !important;\n -ms-flex-positive: 0 !important;\n flex-grow: 0 !important;\n }\n .flex-xxl-grow-1 {\n -webkit-box-flex: 1 !important;\n -ms-flex-positive: 1 !important;\n flex-grow: 1 !important;\n }\n .flex-xxl-shrink-0 {\n -ms-flex-negative: 0 !important;\n flex-shrink: 0 !important;\n }\n .flex-xxl-shrink-1 {\n -ms-flex-negative: 1 !important;\n flex-shrink: 1 !important;\n }\n .flex-xxl-wrap {\n -ms-flex-wrap: wrap !important;\n flex-wrap: wrap !important;\n }\n .flex-xxl-nowrap {\n -ms-flex-wrap: nowrap !important;\n flex-wrap: nowrap !important;\n }\n .flex-xxl-wrap-reverse {\n -ms-flex-wrap: wrap-reverse !important;\n flex-wrap: wrap-reverse !important;\n }\n .justify-content-xxl-start {\n -webkit-box-pack: start !important;\n -ms-flex-pack: start !important;\n justify-content: flex-start !important;\n }\n .justify-content-xxl-end {\n -webkit-box-pack: end !important;\n -ms-flex-pack: end !important;\n justify-content: flex-end !important;\n }\n .justify-content-xxl-center {\n -webkit-box-pack: center !important;\n -ms-flex-pack: center !important;\n justify-content: center !important;\n }\n .justify-content-xxl-between {\n -webkit-box-pack: justify !important;\n -ms-flex-pack: justify !important;\n justify-content: space-between !important;\n }\n .justify-content-xxl-around {\n -ms-flex-pack: distribute !important;\n justify-content: space-around !important;\n }\n .justify-content-xxl-evenly {\n -webkit-box-pack: space-evenly !important;\n -ms-flex-pack: space-evenly !important;\n justify-content: space-evenly !important;\n }\n .align-items-xxl-start {\n -webkit-box-align: start !important;\n -ms-flex-align: start !important;\n align-items: flex-start !important;\n }\n .align-items-xxl-end {\n -webkit-box-align: end !important;\n -ms-flex-align: end !important;\n align-items: flex-end !important;\n }\n .align-items-xxl-center {\n -webkit-box-align: center !important;\n -ms-flex-align: center !important;\n align-items: center !important;\n }\n .align-items-xxl-baseline {\n -webkit-box-align: baseline !important;\n -ms-flex-align: baseline !important;\n align-items: baseline !important;\n }\n .align-items-xxl-stretch {\n -webkit-box-align: stretch !important;\n -ms-flex-align: stretch !important;\n align-items: stretch !important;\n }\n .align-content-xxl-start {\n -ms-flex-line-pack: start !important;\n align-content: flex-start !important;\n }\n .align-content-xxl-end {\n -ms-flex-line-pack: end !important;\n align-content: flex-end !important;\n }\n .align-content-xxl-center {\n -ms-flex-line-pack: center !important;\n align-content: center !important;\n }\n .align-content-xxl-between {\n -ms-flex-line-pack: justify !important;\n align-content: space-between !important;\n }\n .align-content-xxl-around {\n -ms-flex-line-pack: distribute !important;\n align-content: space-around !important;\n }\n .align-content-xxl-stretch {\n -ms-flex-line-pack: stretch !important;\n align-content: stretch !important;\n }\n .align-self-xxl-auto {\n -ms-flex-item-align: auto !important;\n align-self: auto !important;\n }\n .align-self-xxl-start {\n -ms-flex-item-align: start !important;\n align-self: flex-start !important;\n }\n .align-self-xxl-end {\n -ms-flex-item-align: end !important;\n align-self: flex-end !important;\n }\n .align-self-xxl-center {\n -ms-flex-item-align: center !important;\n align-self: center !important;\n }\n .align-self-xxl-baseline {\n -ms-flex-item-align: baseline !important;\n align-self: baseline !important;\n }\n .align-self-xxl-stretch {\n -ms-flex-item-align: stretch !important;\n align-self: stretch !important;\n }\n .order-xxl-first {\n -webkit-box-ordinal-group: 0 !important;\n -ms-flex-order: -1 !important;\n order: -1 !important;\n }\n .order-xxl-0 {\n -webkit-box-ordinal-group: 1 !important;\n -ms-flex-order: 0 !important;\n order: 0 !important;\n }\n .order-xxl-1 {\n -webkit-box-ordinal-group: 2 !important;\n -ms-flex-order: 1 !important;\n order: 1 !important;\n }\n .order-xxl-2 {\n -webkit-box-ordinal-group: 3 !important;\n -ms-flex-order: 2 !important;\n order: 2 !important;\n }\n .order-xxl-3 {\n -webkit-box-ordinal-group: 4 !important;\n -ms-flex-order: 3 !important;\n order: 3 !important;\n }\n .order-xxl-4 {\n -webkit-box-ordinal-group: 5 !important;\n -ms-flex-order: 4 !important;\n order: 4 !important;\n }\n .order-xxl-5 {\n -webkit-box-ordinal-group: 6 !important;\n -ms-flex-order: 5 !important;\n order: 5 !important;\n }\n .order-xxl-last {\n -webkit-box-ordinal-group: 7 !important;\n -ms-flex-order: 6 !important;\n order: 6 !important;\n }\n .m-xxl-0 {\n margin: 0 !important;\n }\n .m-xxl-1 {\n margin: 0.3125rem !important;\n }\n .m-xxl-2 {\n margin: 0.625rem !important;\n }\n .m-xxl-3 {\n margin: 1.25rem !important;\n }\n .m-xxl-4 {\n margin: 1.875rem !important;\n }\n .m-xxl-5 {\n margin: 3.75rem !important;\n }\n .m-xxl-auto {\n margin: auto !important;\n }\n .mx-xxl-0 {\n margin-left: 0 !important;\n margin-right: 0 !important;\n }\n .mx-xxl-1 {\n margin-left: 0.3125rem !important;\n margin-right: 0.3125rem !important;\n }\n .mx-xxl-2 {\n margin-left: 0.625rem !important;\n margin-right: 0.625rem !important;\n }\n .mx-xxl-3 {\n margin-left: 1.25rem !important;\n margin-right: 1.25rem !important;\n }\n .mx-xxl-4 {\n margin-left: 1.875rem !important;\n margin-right: 1.875rem !important;\n }\n .mx-xxl-5 {\n margin-left: 3.75rem !important;\n margin-right: 3.75rem !important;\n }\n .mx-xxl-auto {\n margin-left: auto !important;\n margin-right: auto !important;\n }\n .my-xxl-0 {\n margin-top: 0 !important;\n margin-bottom: 0 !important;\n }\n .my-xxl-1 {\n margin-top: 0.3125rem !important;\n margin-bottom: 0.3125rem !important;\n }\n .my-xxl-2 {\n margin-top: 0.625rem !important;\n margin-bottom: 0.625rem !important;\n }\n .my-xxl-3 {\n margin-top: 1.25rem !important;\n margin-bottom: 1.25rem !important;\n }\n .my-xxl-4 {\n margin-top: 1.875rem !important;\n margin-bottom: 1.875rem !important;\n }\n .my-xxl-5 {\n margin-top: 3.75rem !important;\n margin-bottom: 3.75rem !important;\n }\n .my-xxl-auto {\n margin-top: auto !important;\n margin-bottom: auto !important;\n }\n .mt-xxl-0 {\n margin-top: 0 !important;\n }\n .mt-xxl-1 {\n margin-top: 0.3125rem !important;\n }\n .mt-xxl-2 {\n margin-top: 0.625rem !important;\n }\n .mt-xxl-3 {\n margin-top: 1.25rem !important;\n }\n .mt-xxl-4 {\n margin-top: 1.875rem !important;\n }\n .mt-xxl-5 {\n margin-top: 3.75rem !important;\n }\n .mt-xxl-auto {\n margin-top: auto !important;\n }\n .me-xxl-0 {\n margin-left: 0 !important;\n }\n .me-xxl-1 {\n margin-left: 0.3125rem !important;\n }\n .me-xxl-2 {\n margin-left: 0.625rem !important;\n }\n .me-xxl-3 {\n margin-left: 1.25rem !important;\n }\n .me-xxl-4 {\n margin-left: 1.875rem !important;\n }\n .me-xxl-5 {\n margin-left: 3.75rem !important;\n }\n .me-xxl-auto {\n margin-left: auto !important;\n }\n .mb-xxl-0 {\n margin-bottom: 0 !important;\n }\n .mb-xxl-1 {\n margin-bottom: 0.3125rem !important;\n }\n .mb-xxl-2 {\n margin-bottom: 0.625rem !important;\n }\n .mb-xxl-3 {\n margin-bottom: 1.25rem !important;\n }\n .mb-xxl-4 {\n margin-bottom: 1.875rem !important;\n }\n .mb-xxl-5 {\n margin-bottom: 3.75rem !important;\n }\n .mb-xxl-auto {\n margin-bottom: auto !important;\n }\n .ms-xxl-0 {\n margin-right: 0 !important;\n }\n .ms-xxl-1 {\n margin-right: 0.3125rem !important;\n }\n .ms-xxl-2 {\n margin-right: 0.625rem !important;\n }\n .ms-xxl-3 {\n margin-right: 1.25rem !important;\n }\n .ms-xxl-4 {\n margin-right: 1.875rem !important;\n }\n .ms-xxl-5 {\n margin-right: 3.75rem !important;\n }\n .ms-xxl-auto {\n margin-right: auto !important;\n }\n .m-xxl-n1 {\n margin: -0.3125rem !important;\n }\n .m-xxl-n2 {\n margin: -0.625rem !important;\n }\n .m-xxl-n3 {\n margin: -1.25rem !important;\n }\n .m-xxl-n4 {\n margin: -1.875rem !important;\n }\n .m-xxl-n5 {\n margin: -3.75rem !important;\n }\n .mx-xxl-n1 {\n margin-left: -0.3125rem !important;\n margin-right: -0.3125rem !important;\n }\n .mx-xxl-n2 {\n margin-left: -0.625rem !important;\n margin-right: -0.625rem !important;\n }\n .mx-xxl-n3 {\n margin-left: -1.25rem !important;\n margin-right: -1.25rem !important;\n }\n .mx-xxl-n4 {\n margin-left: -1.875rem !important;\n margin-right: -1.875rem !important;\n }\n .mx-xxl-n5 {\n margin-left: -3.75rem !important;\n margin-right: -3.75rem !important;\n }\n .my-xxl-n1 {\n margin-top: -0.3125rem !important;\n margin-bottom: -0.3125rem !important;\n }\n .my-xxl-n2 {\n margin-top: -0.625rem !important;\n margin-bottom: -0.625rem !important;\n }\n .my-xxl-n3 {\n margin-top: -1.25rem !important;\n margin-bottom: -1.25rem !important;\n }\n .my-xxl-n4 {\n margin-top: -1.875rem !important;\n margin-bottom: -1.875rem !important;\n }\n .my-xxl-n5 {\n margin-top: -3.75rem !important;\n margin-bottom: -3.75rem !important;\n }\n .mt-xxl-n1 {\n margin-top: -0.3125rem !important;\n }\n .mt-xxl-n2 {\n margin-top: -0.625rem !important;\n }\n .mt-xxl-n3 {\n margin-top: -1.25rem !important;\n }\n .mt-xxl-n4 {\n margin-top: -1.875rem !important;\n }\n .mt-xxl-n5 {\n margin-top: -3.75rem !important;\n }\n .me-xxl-n1 {\n margin-left: -0.3125rem !important;\n }\n .me-xxl-n2 {\n margin-left: -0.625rem !important;\n }\n .me-xxl-n3 {\n margin-left: -1.25rem !important;\n }\n .me-xxl-n4 {\n margin-left: -1.875rem !important;\n }\n .me-xxl-n5 {\n margin-left: -3.75rem !important;\n }\n .mb-xxl-n1 {\n margin-bottom: -0.3125rem !important;\n }\n .mb-xxl-n2 {\n margin-bottom: -0.625rem !important;\n }\n .mb-xxl-n3 {\n margin-bottom: -1.25rem !important;\n }\n .mb-xxl-n4 {\n margin-bottom: -1.875rem !important;\n }\n .mb-xxl-n5 {\n margin-bottom: -3.75rem !important;\n }\n .ms-xxl-n1 {\n margin-right: -0.3125rem !important;\n }\n .ms-xxl-n2 {\n margin-right: -0.625rem !important;\n }\n .ms-xxl-n3 {\n margin-right: -1.25rem !important;\n }\n .ms-xxl-n4 {\n margin-right: -1.875rem !important;\n }\n .ms-xxl-n5 {\n margin-right: -3.75rem !important;\n }\n .p-xxl-0 {\n padding: 0 !important;\n }\n .p-xxl-1 {\n padding: 0.3125rem !important;\n }\n .p-xxl-2 {\n padding: 0.625rem !important;\n }\n .p-xxl-3 {\n padding: 1.25rem !important;\n }\n .p-xxl-4 {\n padding: 1.875rem !important;\n }\n .p-xxl-5 {\n padding: 3.75rem !important;\n }\n .px-xxl-0 {\n padding-left: 0 !important;\n padding-right: 0 !important;\n }\n .px-xxl-1 {\n padding-left: 0.3125rem !important;\n padding-right: 0.3125rem !important;\n }\n .px-xxl-2 {\n padding-left: 0.625rem !important;\n padding-right: 0.625rem !important;\n }\n .px-xxl-3 {\n padding-left: 1.25rem !important;\n padding-right: 1.25rem !important;\n }\n .px-xxl-4 {\n padding-left: 1.875rem !important;\n padding-right: 1.875rem !important;\n }\n .px-xxl-5 {\n padding-left: 3.75rem !important;\n padding-right: 3.75rem !important;\n }\n .py-xxl-0 {\n padding-top: 0 !important;\n padding-bottom: 0 !important;\n }\n .py-xxl-1 {\n padding-top: 0.3125rem !important;\n padding-bottom: 0.3125rem !important;\n }\n .py-xxl-2 {\n padding-top: 0.625rem !important;\n padding-bottom: 0.625rem !important;\n }\n .py-xxl-3 {\n padding-top: 1.25rem !important;\n padding-bottom: 1.25rem !important;\n }\n .py-xxl-4 {\n padding-top: 1.875rem !important;\n padding-bottom: 1.875rem !important;\n }\n .py-xxl-5 {\n padding-top: 3.75rem !important;\n padding-bottom: 3.75rem !important;\n }\n .pt-xxl-0 {\n padding-top: 0 !important;\n }\n .pt-xxl-1 {\n padding-top: 0.3125rem !important;\n }\n .pt-xxl-2 {\n padding-top: 0.625rem !important;\n }\n .pt-xxl-3 {\n padding-top: 1.25rem !important;\n }\n .pt-xxl-4 {\n padding-top: 1.875rem !important;\n }\n .pt-xxl-5 {\n padding-top: 3.75rem !important;\n }\n .pe-xxl-0 {\n padding-left: 0 !important;\n }\n .pe-xxl-1 {\n padding-left: 0.3125rem !important;\n }\n .pe-xxl-2 {\n padding-left: 0.625rem !important;\n }\n .pe-xxl-3 {\n padding-left: 1.25rem !important;\n }\n .pe-xxl-4 {\n padding-left: 1.875rem !important;\n }\n .pe-xxl-5 {\n padding-left: 3.75rem !important;\n }\n .pb-xxl-0 {\n padding-bottom: 0 !important;\n }\n .pb-xxl-1 {\n padding-bottom: 0.3125rem !important;\n }\n .pb-xxl-2 {\n padding-bottom: 0.625rem !important;\n }\n .pb-xxl-3 {\n padding-bottom: 1.25rem !important;\n }\n .pb-xxl-4 {\n padding-bottom: 1.875rem !important;\n }\n .pb-xxl-5 {\n padding-bottom: 3.75rem !important;\n }\n .ps-xxl-0 {\n padding-right: 0 !important;\n }\n .ps-xxl-1 {\n padding-right: 0.3125rem !important;\n }\n .ps-xxl-2 {\n padding-right: 0.625rem !important;\n }\n .ps-xxl-3 {\n padding-right: 1.25rem !important;\n }\n .ps-xxl-4 {\n padding-right: 1.875rem !important;\n }\n .ps-xxl-5 {\n padding-right: 3.75rem !important;\n }\n .gap-xxl-0 {\n gap: 0 !important;\n }\n .gap-xxl-1 {\n gap: 0.3125rem !important;\n }\n .gap-xxl-2 {\n gap: 0.625rem !important;\n }\n .gap-xxl-3 {\n gap: 1.25rem !important;\n }\n .gap-xxl-4 {\n gap: 1.875rem !important;\n }\n .gap-xxl-5 {\n gap: 3.75rem !important;\n }\n .row-gap-xxl-0 {\n row-gap: 0 !important;\n }\n .row-gap-xxl-1 {\n row-gap: 0.3125rem !important;\n }\n .row-gap-xxl-2 {\n row-gap: 0.625rem !important;\n }\n .row-gap-xxl-3 {\n row-gap: 1.25rem !important;\n }\n .row-gap-xxl-4 {\n row-gap: 1.875rem !important;\n }\n .row-gap-xxl-5 {\n row-gap: 3.75rem !important;\n }\n .column-gap-xxl-0 {\n -webkit-column-gap: 0 !important;\n -moz-column-gap: 0 !important;\n column-gap: 0 !important;\n }\n .column-gap-xxl-1 {\n -webkit-column-gap: 0.3125rem !important;\n -moz-column-gap: 0.3125rem !important;\n column-gap: 0.3125rem !important;\n }\n .column-gap-xxl-2 {\n -webkit-column-gap: 0.625rem !important;\n -moz-column-gap: 0.625rem !important;\n column-gap: 0.625rem !important;\n }\n .column-gap-xxl-3 {\n -webkit-column-gap: 1.25rem !important;\n -moz-column-gap: 1.25rem !important;\n column-gap: 1.25rem !important;\n }\n .column-gap-xxl-4 {\n -webkit-column-gap: 1.875rem !important;\n -moz-column-gap: 1.875rem !important;\n column-gap: 1.875rem !important;\n }\n .column-gap-xxl-5 {\n -webkit-column-gap: 3.75rem !important;\n -moz-column-gap: 3.75rem !important;\n column-gap: 3.75rem !important;\n }\n .text-xxl-start {\n text-align: right !important;\n }\n .text-xxl-end {\n text-align: left !important;\n }\n .text-xxl-center {\n text-align: center !important;\n }\n}\n@media (min-width: 1200px) {\n .fs-1 {\n font-size: 2.1875rem !important;\n }\n .fs-2 {\n font-size: 1.82rem !important;\n }\n .fs-3 {\n font-size: 1.46125rem !important;\n }\n}\n@media print {\n .d-print-inline {\n display: inline !important;\n }\n .d-print-inline-block {\n display: inline-block !important;\n }\n .d-print-block {\n display: block !important;\n }\n .d-print-grid {\n display: grid !important;\n }\n .d-print-inline-grid {\n display: inline-grid !important;\n }\n .d-print-table {\n display: table !important;\n }\n .d-print-table-row {\n display: table-row !important;\n }\n .d-print-table-cell {\n display: table-cell !important;\n }\n .d-print-flex {\n display: -webkit-box !important;\n display: -ms-flexbox !important;\n display: flex !important;\n }\n .d-print-inline-flex {\n display: -webkit-inline-box !important;\n display: -ms-inline-flexbox !important;\n display: inline-flex !important;\n }\n .d-print-none {\n display: none !important;\n }\n}\n.logo-lg img {\n height: var(--ct-logo-lg-height);\n}\n\n.logo-sm img {\n height: var(--ct-logo-sm-height);\n}\n\n.logo {\n display: block;\n top: 0;\n position: sticky;\n text-align: center;\n line-height: var(--ct-topbar-height);\n padding: 0 calc(var(--ct-leftbar-width-sm) * 0.5 - var(--ct-logo-sm-height) * 0.7);\n -webkit-transition: all 0.25s ease-in-out;\n transition: all 0.25s ease-in-out;\n}\n.logo span.logo-lg {\n display: block;\n}\n.logo span.logo-sm {\n display: none;\n}\n.logo.logo-light {\n display: none;\n}\n.logo.logo-dark {\n display: block;\n}\n\nhtml[data-menu-color=brand] .logo.logo-light,\nhtml[data-menu-color=dark] .logo.logo-light,\nhtml[data-bs-theme=dark] .logo.logo-light {\n display: block;\n}\nhtml[data-menu-color=brand] .logo.logo-dark,\nhtml[data-menu-color=dark] .logo.logo-dark,\nhtml[data-bs-theme=dark] .logo.logo-dark {\n display: none;\n}\n\n.help-box {\n border-radius: 5px;\n padding: 20px;\n margin: 65px 25px 25px;\n position: relative;\n background-color: var(--ct-help-box-bg);\n}\n.help-box .close-btn {\n left: 10px;\n top: 10px;\n position: absolute;\n}\n\n.wrapper {\n height: 100%;\n width: 100%;\n}\n\n.content-page {\n position: relative;\n margin-right: var(--ct-leftbar-width);\n min-height: calc(100vh - var(--ct-topbar-height) - 2px);\n padding: 0 0.625rem var(--ct-footer-height);\n -webkit-transition: all 0.25s ease-in-out;\n transition: all 0.25s ease-in-out;\n}\n\n.leftside-menu {\n z-index: 1000;\n bottom: 0;\n top: 0;\n position: fixed;\n width: var(--ct-leftbar-width);\n min-width: var(--ct-leftbar-width);\n padding-bottom: calc(var(--ct-footer-height) + 0.625rem);\n background: var(--ct-menu-bg);\n -webkit-box-shadow: var(--ct-box-shadow);\n box-shadow: var(--ct-box-shadow);\n border-left: var(--ct-theme-card-border-width) solid var(--ct-border-color);\n -webkit-transition: all 0.25s ease-in-out;\n transition: all 0.25s ease-in-out;\n}\n\n.leftbar-user {\n background: url(\"../images/small/small-4.jpg\") center center;\n display: none;\n position: relative;\n}\n\nhtml[data-sidenav-user=true] .leftbar-user {\n display: block;\n}\n\n.side-nav {\n padding-right: 0;\n padding-bottom: 10px;\n list-style-type: none;\n}\n.side-nav ul {\n list-style-type: none;\n}\n.side-nav .side-nav-link {\n display: block;\n list-style: none;\n position: relative;\n white-space: nowrap;\n color: var(--ct-menu-item-color);\n -webkit-transition: all 0.25s ease-in-out;\n transition: all 0.25s ease-in-out;\n font-size: var(--ct-menu-item-font-size);\n padding: var(--ct-menu-item-padding-y) var(--ct-menu-item-padding-x);\n}\n.side-nav .side-nav-link:hover, .side-nav .side-nav-link:focus, .side-nav .side-nav-link:active {\n color: var(--ct-menu-item-hover-color);\n text-decoration: none;\n}\n.side-nav .side-nav-link span {\n vertical-align: middle;\n}\n.side-nav .side-nav-link i {\n display: inline-block;\n vertical-align: middle;\n text-align: center;\n font-size: var(--ct-menu-item-icon-size);\n line-height: var(--ct-menu-item-icon-size);\n width: var(--ct-menu-item-icon-width);\n}\n.side-nav .menu-arrow {\n display: inline-block;\n text-rendering: auto;\n position: absolute;\n top: 50%;\n left: calc(var(--ct-menu-item-padding-x) * 0.5);\n -webkit-transition: -webkit-transform 0.15s;\n transition: -webkit-transform 0.15s;\n transition: transform 0.15s;\n transition: transform 0.15s, -webkit-transform 0.15s;\n -webkit-transform: translate(50%, -50%);\n transform: translate(50%, -50%);\n line-height: var(--ct-menu-item-icon-size);\n font-size: calc(var(--ct-menu-item-font-size) * 1.18);\n}\n.side-nav .menu-arrow:before {\n content: \"\\ea6e\";\n font-family: \"remixicon\";\n}\n.side-nav .badge {\n margin-top: calc(var(--ct-menu-item-font-size) * 0.25);\n position: absolute;\n left: 0;\n margin-left: calc(var(--ct-menu-item-padding-x) * 1.5);\n}\n.side-nav .side-nav-title {\n pointer-events: none;\n cursor: default;\n opacity: 0.5;\n white-space: nowrap;\n text-transform: uppercase;\n color: var(--ct-menu-item-color);\n font-weight: 700;\n font-size: calc(var(--ct-menu-item-font-size) * 0.74);\n padding: var(--ct-menu-item-padding-y) calc(var(--ct-menu-item-padding-x) * 1.5);\n}\n.side-nav .side-nav-item > a[aria-expanded=true] > span.menu-arrow {\n -webkit-transform: translate(50%, -50%) rotate(-90deg);\n transform: translate(50%, -50%) rotate(-90deg);\n}\n.side-nav .side-nav-item.menuitem-active > a:not(.collapsed) > span.menu-arrow {\n -webkit-transform: translate(50%, -50%) rotate(-90deg);\n transform: translate(50%, -50%) rotate(-90deg);\n}\n.side-nav .menuitem-active > a {\n color: var(--ct-menu-item-active-color);\n}\n.side-nav .menuitem-active > a:hover, .side-nav .menuitem-active > a:focus, .side-nav .menuitem-active > a:active {\n color: var(--ct-menu-item-active-color);\n}\n.side-nav .menuitem-active .menuitem-active .active {\n color: var(--ct-menu-item-active-color);\n}\n.side-nav.bottom {\n bottom: 0;\n width: 100%;\n position: absolute;\n}\n\n*[dir=rtl] .side-nav .side-nav-item .menu-arrow:before {\n content: \"\\f0141\" !important;\n}\n\n.side-nav-second-level li,\n.side-nav-second-level .side-nav-item,\n.side-nav-third-level li,\n.side-nav-third-level .side-nav-item,\n.side-nav-forth-level li,\n.side-nav-forth-level .side-nav-item {\n padding: 0;\n}\n.side-nav-second-level li a,\n.side-nav-second-level li .side-nav-link,\n.side-nav-second-level .side-nav-item a,\n.side-nav-second-level .side-nav-item .side-nav-link,\n.side-nav-third-level li a,\n.side-nav-third-level li .side-nav-link,\n.side-nav-third-level .side-nav-item a,\n.side-nav-third-level .side-nav-item .side-nav-link,\n.side-nav-forth-level li a,\n.side-nav-forth-level li .side-nav-link,\n.side-nav-forth-level .side-nav-item a,\n.side-nav-forth-level .side-nav-item .side-nav-link {\n white-space: nowrap;\n color: var(--ct-menu-item-color);\n display: block;\n position: relative;\n -webkit-transition: all 0.25s ease-in-out;\n transition: all 0.25s ease-in-out;\n font-size: calc(var(--ct-menu-item-font-size) * 0.95);\n padding: calc(var(--ct-menu-item-padding-y) * 0.6) calc(var(--ct-menu-item-padding-x) * 1.25);\n}\n.side-nav-second-level li a:hover, .side-nav-second-level li a:focus, .side-nav-second-level li a:active,\n.side-nav-second-level li .side-nav-link:hover,\n.side-nav-second-level li .side-nav-link:focus,\n.side-nav-second-level li .side-nav-link:active,\n.side-nav-second-level .side-nav-item a:hover,\n.side-nav-second-level .side-nav-item a:focus,\n.side-nav-second-level .side-nav-item a:active,\n.side-nav-second-level .side-nav-item .side-nav-link:hover,\n.side-nav-second-level .side-nav-item .side-nav-link:focus,\n.side-nav-second-level .side-nav-item .side-nav-link:active,\n.side-nav-third-level li a:hover,\n.side-nav-third-level li a:focus,\n.side-nav-third-level li a:active,\n.side-nav-third-level li .side-nav-link:hover,\n.side-nav-third-level li .side-nav-link:focus,\n.side-nav-third-level li .side-nav-link:active,\n.side-nav-third-level .side-nav-item a:hover,\n.side-nav-third-level .side-nav-item a:focus,\n.side-nav-third-level .side-nav-item a:active,\n.side-nav-third-level .side-nav-item .side-nav-link:hover,\n.side-nav-third-level .side-nav-item .side-nav-link:focus,\n.side-nav-third-level .side-nav-item .side-nav-link:active,\n.side-nav-forth-level li a:hover,\n.side-nav-forth-level li a:focus,\n.side-nav-forth-level li a:active,\n.side-nav-forth-level li .side-nav-link:hover,\n.side-nav-forth-level li .side-nav-link:focus,\n.side-nav-forth-level li .side-nav-link:active,\n.side-nav-forth-level .side-nav-item a:hover,\n.side-nav-forth-level .side-nav-item a:focus,\n.side-nav-forth-level .side-nav-item a:active,\n.side-nav-forth-level .side-nav-item .side-nav-link:hover,\n.side-nav-forth-level .side-nav-item .side-nav-link:focus,\n.side-nav-forth-level .side-nav-item .side-nav-link:active {\n color: var(--ct-menu-item-hover-color);\n padding-right: calc(var(--ct-menu-item-padding-x) * 1.75);\n}\n.side-nav-second-level li.active > a,\n.side-nav-second-level .side-nav-item.active > a,\n.side-nav-third-level li.active > a,\n.side-nav-third-level .side-nav-item.active > a,\n.side-nav-forth-level li.active > a,\n.side-nav-forth-level .side-nav-item.active > a {\n color: var(--ct-menu-item-active-color);\n}\n.side-nav-second-level li.active > a:hover, .side-nav-second-level li.active > a:focus, .side-nav-second-level li.active > a:active,\n.side-nav-second-level .side-nav-item.active > a:hover,\n.side-nav-second-level .side-nav-item.active > a:focus,\n.side-nav-second-level .side-nav-item.active > a:active,\n.side-nav-third-level li.active > a:hover,\n.side-nav-third-level li.active > a:focus,\n.side-nav-third-level li.active > a:active,\n.side-nav-third-level .side-nav-item.active > a:hover,\n.side-nav-third-level .side-nav-item.active > a:focus,\n.side-nav-third-level .side-nav-item.active > a:active,\n.side-nav-forth-level li.active > a:hover,\n.side-nav-forth-level li.active > a:focus,\n.side-nav-forth-level li.active > a:active,\n.side-nav-forth-level .side-nav-item.active > a:hover,\n.side-nav-forth-level .side-nav-item.active > a:focus,\n.side-nav-forth-level .side-nav-item.active > a:active {\n color: var(--ct-menu-item-active-color);\n}\n\n.side-nav-second-level {\n margin-top: calc(var(--ct-menu-item-padding-y) * -0.5);\n padding-right: var(--ct-menu-item-icon-width);\n}\n\n.side-nav-third-level, .side-nav-forth-level {\n padding-right: calc(var(--ct-menu-item-padding-x) * 2);\n}\n\nhtml[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .navbar-custom {\n z-index: 1005;\n margin-right: var(--ct-leftbar-width-sm);\n}\nhtml[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu {\n position: absolute;\n width: var(--ct-leftbar-width-sm);\n min-width: var(--ct-leftbar-width-sm);\n}\nhtml[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .simplebar-mask,\nhtml[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .simplebar-content-wrapper {\n overflow: visible !important;\n}\nhtml[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .simplebar-scrollbar {\n display: none !important;\n}\nhtml[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .simplebar-offset {\n bottom: 0 !important;\n}\nhtml[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .logo {\n z-index: 1;\n background: var(--ct-menu-bg);\n}\nhtml[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .logo span.logo-lg {\n display: none;\n}\nhtml[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .logo span.logo-sm {\n display: block;\n}\nhtml[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .collapse,\nhtml[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .collapsing {\n display: none;\n height: inherit !important;\n -webkit-transition: none !important;\n transition: none !important;\n}\nhtml[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .collapse .side-nav-second-level,\nhtml[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .collapse .side-nav-third-level,\nhtml[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .collapse .side-nav-forth-level,\nhtml[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .collapsing .side-nav-second-level,\nhtml[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .collapsing .side-nav-third-level,\nhtml[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .collapsing .side-nav-forth-level {\n display: none !important;\n padding: 0;\n margin-top: 0;\n}\nhtml[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .collapse .side-nav-second-level li a::before,\nhtml[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .collapse .side-nav-second-level li .side-nav-link::before,\nhtml[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .collapse .side-nav-third-level li a::before,\nhtml[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .collapse .side-nav-third-level li .side-nav-link::before,\nhtml[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .collapse .side-nav-forth-level li a::before,\nhtml[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .collapse .side-nav-forth-level li .side-nav-link::before,\nhtml[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .collapsing .side-nav-second-level li a::before,\nhtml[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .collapsing .side-nav-second-level li .side-nav-link::before,\nhtml[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .collapsing .side-nav-third-level li a::before,\nhtml[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .collapsing .side-nav-third-level li .side-nav-link::before,\nhtml[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .collapsing .side-nav-forth-level li a::before,\nhtml[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .collapsing .side-nav-forth-level li .side-nav-link::before {\n display: none;\n}\nhtml[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .collapse .side-nav-second-level .menu-arrow,\nhtml[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .collapse .side-nav-third-level .menu-arrow,\nhtml[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .collapse .side-nav-forth-level .menu-arrow,\nhtml[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .collapsing .side-nav-second-level .menu-arrow,\nhtml[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .collapsing .side-nav-third-level .menu-arrow,\nhtml[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .collapsing .side-nav-forth-level .menu-arrow {\n left: var(--ct-menu-item-padding-x);\n -webkit-transform: translate(50%, -50%);\n transform: translate(50%, -50%);\n}\nhtml[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-item {\n position: relative;\n}\nhtml[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-item .side-nav-link {\n -webkit-transition: none;\n transition: none;\n padding: calc(var(--ct-menu-item-padding-y) + 4px) var(--ct-menu-item-padding-x);\n}\nhtml[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-item .side-nav-link i {\n min-width: calc(var(--ct-leftbar-width-sm) - var(--ct-menu-item-padding-x) * 2);\n font-size: 1.25rem;\n}\nhtml[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-item .side-nav-link:hover, html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-item .side-nav-link:active, html[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-item .side-nav-link:focus {\n color: var(--ct-menu-item-hover-color);\n}\nhtml[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-item .side-nav-link span {\n visibility: hidden;\n}\nhtml[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-item .side-nav-link .menu-arrow {\n -webkit-transform: translate(50%, -50%) rotate(-90deg);\n transform: translate(50%, -50%) rotate(-90deg);\n padding-right: 0 !important;\n}\nhtml[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-item:hover .side-nav-link {\n position: relative;\n color: #fff;\n background: var(--ct-menu-condensed-link-bg);\n width: var(--ct-leftbar-width);\n}\nhtml[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-item:hover .side-nav-link span {\n visibility: visible;\n}\nhtml[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-item:hover .side-nav-link span:not(.badge) {\n margin-right: var(--ct-menu-item-padding-x);\n}\nhtml[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-item:hover > .collapse,\nhtml[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-item:hover > .collapsing {\n display: block !important;\n -webkit-transition: none !important;\n transition: none !important;\n}\nhtml[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-item:hover > .collapse > ul,\nhtml[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-item:hover > .collapsing > ul {\n display: block !important;\n right: var(--ct-leftbar-width-sm);\n position: absolute;\n background: var(--ct-menu-bg);\n -webkit-box-shadow: 0 2px 5px 0 rgba(27, 23, 30, 0.3);\n box-shadow: 0 2px 5px 0 rgba(27, 23, 30, 0.3);\n width: calc(var(--ct-leftbar-width) - var(--ct-leftbar-width-sm));\n}\nhtml[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-item:hover > .collapse > ul a,\nhtml[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-item:hover > .collapsing > ul a {\n -webkit-box-shadow: none;\n box-shadow: none;\n position: relative;\n width: calc(var(--ct-leftbar-width) - var(--ct-leftbar-width-sm));\n padding: calc(var(--ct-menu-item-padding-y) * 0.9) calc(var(--ct-menu-item-padding-x) * 2);\n}\nhtml[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-item:hover > .collapse > ul a:hover,\nhtml[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-item:hover > .collapsing > ul a:hover {\n color: var(--ct-menu-item-hover-color);\n}\nhtml[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-item:hover > .collapse > ul li:hover > .collapse,\nhtml[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-item:hover > .collapse > ul li:hover > .collapsing,\nhtml[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-item:hover > .collapsing > ul li:hover > .collapse,\nhtml[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-item:hover > .collapsing > ul li:hover > .collapsing {\n display: block !important;\n height: auto !important;\n -webkit-transition: none !important;\n transition: none !important;\n}\nhtml[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-item:hover > .collapse > ul li:hover > .collapse > ul,\nhtml[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-item:hover > .collapse > ul li:hover > .collapsing > ul,\nhtml[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-item:hover > .collapsing > ul li:hover > .collapse > ul,\nhtml[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-item:hover > .collapsing > ul li:hover > .collapsing > ul {\n display: block !important;\n position: absolute !important;\n top: 0;\n right: calc(var(--ct-leftbar-width) - var(--ct-leftbar-width-sm));\n width: calc(var(--ct-leftbar-width) - var(--ct-leftbar-width-sm));\n}\nhtml[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .help-box,\nhtml[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .side-nav-title,\nhtml[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .leftbar-user {\n display: none;\n}\nhtml[data-sidenav-size=condensed]:not([data-layout=topnav]) .wrapper .content-page {\n margin-right: var(--ct-leftbar-width-sm);\n min-height: var(--ct-leftbar-condensed-height);\n}\n\nhtml[data-sidenav-size=compact]:not([data-layout=topnav]) .wrapper .navbar-custom {\n margin-right: var(--ct-leftbar-width-md);\n}\nhtml[data-sidenav-size=compact]:not([data-layout=topnav]) .wrapper .leftside-menu {\n width: var(--ct-leftbar-width-md);\n min-width: var(--ct-leftbar-width-md);\n}\nhtml[data-sidenav-size=compact]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-title {\n text-align: center;\n padding: var(--ct-menu-item-padding-y) calc(var(--ct-menu-item-padding-x));\n}\nhtml[data-sidenav-size=compact]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-item {\n text-align: center;\n padding: var(--ct-menu-item-padding-y) calc(var(--ct-menu-item-padding-x) * 1.5);\n}\nhtml[data-sidenav-size=compact]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-link {\n padding: var(--ct-menu-item-padding-y) var(--ct-menu-item-padding-x);\n text-align: center;\n}\nhtml[data-sidenav-size=compact]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-link i {\n display: block;\n text-align: center;\n margin: 0 0 calc(var(--ct-menu-item-padding-y) * 1 / 3);\n width: auto;\n}\nhtml[data-sidenav-size=compact]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-link span {\n margin-right: 0;\n}\nhtml[data-sidenav-size=compact]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-link .badge {\n display: none;\n}\nhtml[data-sidenav-size=compact]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-second-level,\nhtml[data-sidenav-size=compact]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-third-level,\nhtml[data-sidenav-size=compact]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-forth-level {\n padding: 0;\n}\nhtml[data-sidenav-size=compact]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-second-level .menu-arrow,\nhtml[data-sidenav-size=compact]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-third-level .menu-arrow,\nhtml[data-sidenav-size=compact]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-forth-level .menu-arrow {\n display: inline-block;\n left: var(--ct-menu-item-padding-x);\n}\nhtml[data-sidenav-size=compact]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-second-level li a,\nhtml[data-sidenav-size=compact]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-second-level li .side-nav-link,\nhtml[data-sidenav-size=compact]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-third-level li a,\nhtml[data-sidenav-size=compact]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-third-level li .side-nav-link,\nhtml[data-sidenav-size=compact]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-forth-level li a,\nhtml[data-sidenav-size=compact]:not([data-layout=topnav]) .wrapper .leftside-menu .side-nav .side-nav-forth-level li .side-nav-link {\n padding: calc(var(--ct-menu-item-padding-y) * 0.8) calc(var(--ct-menu-item-padding-x));\n text-align: center;\n}\nhtml[data-sidenav-size=compact]:not([data-layout=topnav]) .wrapper .help-box,\nhtml[data-sidenav-size=compact]:not([data-layout=topnav]) .wrapper .menu-arrow {\n display: none;\n}\nhtml[data-sidenav-size=compact]:not([data-layout=topnav]) .wrapper .content-page {\n margin-right: var(--ct-leftbar-width-md);\n}\n\nhtml[data-sidenav-size=sm-hover]:not([data-layout=topnav]) .wrapper .content-page {\n margin-right: var(--ct-leftbar-width-sm);\n}\nhtml[data-sidenav-size=sm-hover]:not([data-layout=topnav]) .wrapper .navbar-custom {\n margin-right: var(--ct-leftbar-width-sm);\n}\nhtml[data-sidenav-size=sm-hover]:not([data-layout=topnav]) .wrapper .navbar-custom .button-toggle-menu {\n display: none;\n}\nhtml[data-sidenav-size=sm-hover]:not([data-layout=topnav]) .wrapper .navbar-custom .app-search {\n padding-right: 10px;\n}\nhtml[data-sidenav-size=sm-hover]:not([data-layout=topnav]) .wrapper .leftside-menu:not(:hover) {\n width: var(--ct-leftbar-width-sm);\n min-width: var(--ct-leftbar-width-sm);\n}\nhtml[data-sidenav-size=sm-hover]:not([data-layout=topnav]) .wrapper .leftside-menu:not(:hover) .simplebar-scrollbar:before {\n background: transparent;\n}\nhtml[data-sidenav-size=sm-hover]:not([data-layout=topnav]) .wrapper .leftside-menu:not(:hover) .logo .logo-sm {\n display: block;\n text-align: center;\n}\nhtml[data-sidenav-size=sm-hover]:not([data-layout=topnav]) .wrapper .leftside-menu:not(:hover) .logo .logo-lg {\n display: none;\n}\nhtml[data-sidenav-size=sm-hover]:not([data-layout=topnav]) .wrapper .leftside-menu:not(:hover) .side-nav-item .side-nav-link span {\n visibility: hidden;\n}\nhtml[data-sidenav-size=sm-hover]:not([data-layout=topnav]) .wrapper .leftside-menu:not(:hover) .side-nav-item .side-nav-link i {\n min-width: calc(var(--ct-leftbar-width-sm) - var(--ct-menu-item-padding-x) * 2);\n font-size: 1.25rem;\n}\nhtml[data-sidenav-size=sm-hover]:not([data-layout=topnav]) .wrapper .leftside-menu:not(:hover) .side-nav-title, html[data-sidenav-size=sm-hover]:not([data-layout=topnav]) .wrapper .leftside-menu:not(:hover) .leftbar-user {\n display: none;\n}\nhtml[data-sidenav-size=sm-hover]:not([data-layout=topnav]) .wrapper .leftside-menu:not(:hover) .help-box,\nhtml[data-sidenav-size=sm-hover]:not([data-layout=topnav]) .wrapper .leftside-menu:not(:hover) .button-sm-hover {\n visibility: hidden;\n}\nhtml[data-sidenav-size=sm-hover]:not([data-layout=topnav]) .wrapper .leftside-menu:not(:hover) .side-nav-second-level,\nhtml[data-sidenav-size=sm-hover]:not([data-layout=topnav]) .wrapper .leftside-menu:not(:hover) .side-nav-third-level,\nhtml[data-sidenav-size=sm-hover]:not([data-layout=topnav]) .wrapper .leftside-menu:not(:hover) .side-nav-forth-level {\n height: 0;\n opacity: 0;\n}\nhtml[data-sidenav-size=sm-hover]:not([data-layout=topnav]) .wrapper .leftside-menu .simplebar-horizontal .simplebar-scrollbar:before {\n background: transparent;\n}\nhtml[data-sidenav-size=sm-hover]:not([data-layout=topnav]) .wrapper .leftside-menu .logo {\n text-align: right;\n}\nhtml[data-sidenav-size=sm-hover]:not([data-layout=topnav]) .wrapper .leftside-menu:hover {\n z-index: 1045;\n}\nhtml[data-sidenav-size=sm-hover]:not([data-layout=topnav]) .wrapper .leftside-menu .button-sm-hover {\n display: block;\n}\nhtml[data-sidenav-size=sm-hover]:not([data-layout=topnav]) .wrapper .leftside-menu .help-box {\n display: none;\n}\n\n.button-sm-hover {\n cursor: pointer;\n display: none;\n left: calc(var(--ct-leftbar-width-sm) * 0.5 - var(--ct-logo-sm-height) * 0.7);\n top: 0;\n position: absolute;\n font-size: var(--ct-menu-item-icon-size);\n line-height: var(--ct-topbar-height);\n z-index: 1;\n color: var(--ct-menu-item-color);\n}\n.button-sm-hover:hover, .button-sm-hover:focus, .button-sm-hover:active {\n color: var(--ct-menu-item-hover-color);\n}\n\nhtml[data-sidenav-size=sm-hover-active]:not([data-layout=topnav]) .button-toggle-menu {\n display: none;\n}\nhtml[data-sidenav-size=sm-hover-active]:not([data-layout=topnav]) .app-search {\n padding-right: 10px;\n}\nhtml[data-sidenav-size=sm-hover-active]:not([data-layout=topnav]) .leftside-menu .logo {\n text-align: right;\n}\nhtml[data-sidenav-size=sm-hover-active]:not([data-layout=topnav]) .leftside-menu .button-sm-hover {\n display: block;\n}\nhtml[data-sidenav-size=sm-hover-active]:not([data-layout=topnav]) .leftside-menu .button-sm-hover .ri-checkbox-blank-circle-line:before {\n content: \"\\f05a\";\n}\n\n.button-close-fullsidebar {\n cursor: pointer;\n display: none;\n left: calc(var(--ct-leftbar-width-sm) * 0.5 - var(--ct-logo-sm-height) * 0.7);\n top: 0;\n position: absolute;\n font-size: var(--ct-menu-item-icon-size);\n line-height: var(--ct-topbar-height);\n z-index: 1;\n color: var(--ct-menu-item-color);\n}\n.button-close-fullsidebar:hover, .button-close-fullsidebar:focus, .button-close-fullsidebar:active {\n color: var(--ct-menu-item-hover-color);\n}\n\nhtml[data-sidenav-size=full]:not([data-layout=topnav]) .navbar-custom {\n margin-right: 0;\n}\nhtml[data-sidenav-size=full]:not([data-layout=topnav]) .navbar-custom .logo-topbar {\n display: inline-block;\n}\nhtml[data-sidenav-size=full]:not([data-layout=topnav]) .button-close-fullsidebar {\n display: block;\n}\nhtml[data-sidenav-size=full]:not([data-layout=topnav]) .leftside-menu {\n margin-right: calc(var(--ct-leftbar-width) * -1);\n border-color: transparent;\n opacity: 0;\n}\nhtml[data-sidenav-size=full]:not([data-layout=topnav]) .leftside-menu .logo {\n text-align: right;\n}\nhtml[data-sidenav-size=full]:not([data-layout=topnav]) .content-page {\n margin-right: 0;\n}\nhtml[data-sidenav-size=full]:not([data-layout=topnav]).sidebar-enable .leftside-menu {\n opacity: 1;\n z-index: 1055;\n margin-right: 0;\n}\n\nhtml[data-sidenav-size=fullscreen]:not([data-layout=topnav]) .navbar-custom {\n margin-right: 0;\n}\nhtml[data-sidenav-size=fullscreen]:not([data-layout=topnav]) .leftside-menu {\n margin-right: calc(var(--ct-leftbar-width) * -1);\n opacity: 0;\n}\nhtml[data-sidenav-size=fullscreen]:not([data-layout=topnav]) .content-page {\n margin-right: 0;\n}\n\nhtml[data-layout-mode=detached]:not([data-layout=topnav]) .wrapper {\n max-width: 95%;\n margin: 0 auto;\n}\nhtml[data-layout-mode=detached]:not([data-layout=topnav]) .wrapper .navbar-custom {\n z-index: 1005;\n margin: 0 -2.65%;\n}\nhtml[data-layout-mode=detached]:not([data-layout=topnav]) .wrapper .navbar-custom .topbar {\n max-width: 95%;\n}\nhtml[data-layout-mode=detached]:not([data-layout=topnav]) .wrapper .leftside-menu {\n bottom: 0.625rem;\n top: calc(var(--ct-topbar-height) + 1.25rem * 0.5);\n border-radius: 0.5rem;\n border: var(--ct-theme-card-border-width) solid var(--ct-border-color);\n padding-bottom: 0;\n}\nhtml[data-layout-mode=detached]:not([data-layout=topnav]) .wrapper .leftside-menu .button-sm-hover {\n top: var(--ct-menu-item-padding-y);\n line-height: 1;\n}\nhtml[data-layout-mode=detached]:not([data-layout=topnav]) .wrapper .footer {\n left: 0.625rem;\n right: 0.625rem;\n bottom: 0.625rem;\n border-radius: 0.5rem;\n border: 1px solid var(--ct-border-color);\n}\nhtml[data-layout-mode=detached]:not([data-layout=topnav]) .logo {\n visibility: hidden;\n height: 0;\n}\nhtml[data-layout-mode=detached]:not([data-layout=topnav]) .logo-topbar {\n display: block;\n}\nhtml[data-layout-mode=detached]:not([data-layout=topnav]) .leftbar-user {\n border-radius: 0.5rem 0.5rem 0 0;\n}\nhtml[data-layout-mode=detached]:not([data-layout=topnav])[data-sidenav-size=full] .wrapper .leftside-menu {\n padding-bottom: calc(var(--ct-footer-height) + 0.625rem);\n top: 0.625rem;\n right: 0.625rem;\n}\nhtml[data-layout-mode=detached]:not([data-layout=topnav])[data-sidenav-size=full] .wrapper .leftside-menu .logo {\n top: 0.625rem;\n visibility: visible;\n height: auto;\n}\nhtml[data-layout-mode=detached]:not([data-layout=topnav])[data-sidenav-size=full] .wrapper .leftside-menu .logo span.logo-lg {\n display: block;\n}\n\n@media (min-width: 1400px) {\n html[data-layout-mode=boxed] body {\n background-color: var(--ct-tertiary-bg);\n }\n html[data-layout-mode=boxed] .wrapper {\n margin: 0 auto;\n -webkit-box-shadow: var(--ct-box-shadow);\n box-shadow: var(--ct-box-shadow);\n max-width: 1300px;\n background-color: var(--ct-body-bg);\n }\n}\n@media (min-width: 992px) {\n html[data-layout-position=scrollable] .wrapper {\n display: block;\n }\n html[data-layout-position=scrollable] .wrapper .leftside-menu {\n position: absolute;\n padding-top: 0 !important;\n }\n html[data-layout-position=scrollable] .wrapper .leftside-menu .logo {\n position: relative;\n }\n html[data-layout-position=scrollable] .wrapper .leftside-menu #leftside-menu-container {\n height: calc(100% - var(--ct-topbar-height)) !important;\n }\n html[data-layout-position=scrollable] .navbar-custom {\n position: static !important;\n }\n html[data-layout-position=scrollable][data-layout=topnav] .topnav {\n position: static;\n }\n}\n@media (max-width: 767.98px) {\n html[data-layout-mode=detached]:not([data-layout=topnav]) .wrapper {\n max-width: 100% !important;\n }\n html[data-layout-mode=detached]:not([data-layout=topnav]) .wrapper .navbar-custom {\n margin: 0;\n padding: 0;\n }\n}\n.navbar-custom {\n background: var(--ct-topbar-bg);\n -webkit-box-shadow: var(--ct-box-shadow);\n box-shadow: var(--ct-box-shadow);\n min-height: var(--ct-topbar-height);\n margin-right: var(--ct-leftbar-width);\n position: sticky;\n top: 0;\n -webkit-transition: all 0.25s ease-in-out;\n transition: all 0.25s ease-in-out;\n z-index: 1000;\n border-bottom: var(--ct-theme-card-border-width) solid var(--ct-border-color);\n}\n.navbar-custom .topbar {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-pack: justify;\n -ms-flex-pack: justify;\n justify-content: space-between;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n margin: 0 auto;\n}\n.navbar-custom .topbar .app-search form {\n height: var(--ct-topbar-height);\n max-width: 320px;\n}\n.navbar-custom .topbar .app-search form .form-control {\n color: var(--ct-topbar-item-color);\n background-color: var(--ct-topbar-search-bg);\n}\n.navbar-custom .topbar .app-search form span.search-icon {\n color: var(--ct-topbar-item-color);\n}\n.navbar-custom .topbar-menu {\n position: relative;\n list-style-type: none;\n margin-bottom: 0;\n}\n.navbar-custom .topbar-menu li {\n max-height: var(--ct-topbar-height);\n}\n.navbar-custom .topbar-menu li .nav-link.show {\n color: var(--ct-topbar-item-hover-color);\n}\n.navbar-custom .topbar-menu .nav-link {\n padding: 0;\n position: relative;\n color: var(--ct-topbar-item-color);\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n height: var(--ct-topbar-height);\n cursor: pointer;\n}\n.navbar-custom .topbar-menu .nav-link:hover {\n color: var(--ct-topbar-item-hover-color);\n}\n\n.logo-topbar {\n float: right;\n display: none;\n line-height: var(--ct-topbar-height);\n padding: 0 0.625rem;\n}\n.logo-topbar .logo-sm {\n display: none;\n}\n.logo-topbar .logo-light {\n display: none;\n}\n.logo-topbar .logo-dark {\n display: block;\n}\n\nhtml[data-topbar-color=brand] .logo-topbar .logo-light,\nhtml[data-topbar-color=dark] .logo-topbar .logo-light,\nhtml[data-bs-theme=dark] .logo-topbar .logo-light {\n display: block;\n}\nhtml[data-topbar-color=brand] .logo-topbar .logo-dark,\nhtml[data-topbar-color=dark] .logo-topbar .logo-dark,\nhtml[data-bs-theme=dark] .logo-topbar .logo-dark {\n display: none;\n}\n\nhtml[data-bs-theme=dark] #light-dark-mode .ri-moon-fill::before {\n content: \"\\f1bc\";\n}\n\n.button-toggle-menu {\n border: none;\n color: var(--ct-topbar-item-color);\n width: 60px;\n background-color: transparent;\n font-size: 24px;\n cursor: pointer;\n z-index: 1;\n position: relative;\n}\n\n.app-search {\n position: static;\n overflow-y: hidden;\n}\n.app-search form {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n overflow: hidden;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n}\n.app-search form .form-control {\n border: none;\n height: calc(1.5em + 0.9rem + calc(var(--ct-border-width) * 2));\n padding-right: 35px;\n padding-left: 20px;\n background-color: var(--ct-light);\n -webkit-box-shadow: none;\n box-shadow: none;\n}\n.app-search form span.search-icon {\n position: absolute;\n z-index: 4;\n font-size: 16px;\n line-height: 38px;\n right: 10px;\n top: 0;\n z-index: 5;\n color: var(--ct-secondary);\n}\n.app-search form .input-group input[type=search]::-webkit-input-placeholder {\n color: var(--ct-topbar-item-color);\n}\n.app-search form .input-group input[type=search]::-moz-placeholder {\n color: var(--ct-topbar-item-color);\n}\n.app-search form .input-group input[type=search]:-ms-input-placeholder {\n color: var(--ct-topbar-item-color);\n}\n.app-search form .input-group input[type=search]::-ms-input-placeholder {\n color: var(--ct-topbar-item-color);\n}\n.app-search form .input-group input[type=search]::placeholder {\n color: var(--ct-topbar-item-color);\n}\n.app-search form .input-group-text {\n margin-right: 0;\n z-index: 4;\n}\n.app-search form .dropdown-menu {\n z-index: 1060;\n}\n\n.notification-list {\n margin-right: 0;\n}\n.notification-list .noti-title {\n background-color: transparent;\n padding: 15px 20px;\n}\n.notification-list .noti-icon-badge {\n display: inline-block;\n position: absolute;\n top: 22px;\n left: 1px;\n border-radius: 50%;\n height: 7px;\n width: 7px;\n background-color: #f7473a;\n}\n.notification-list .notify-item {\n padding: 10px 20px;\n}\n.notification-list .notify-item.unread-noti {\n background-color: var(--ct-tertiary-bg);\n}\n.notification-list .notify-item.read-noti {\n background-color: transparent;\n -webkit-transition: all 0.2s ease-in-out;\n transition: all 0.2s ease-in-out;\n}\n.notification-list .notify-item.read-noti:hover {\n background-color: var(--ct-tertiary-bg);\n}\n.notification-list .notify-item .card-body {\n padding: 14px;\n}\n.notification-list .notify-item .card-body .noti-close-btn {\n position: absolute;\n top: 3px;\n left: 15px;\n}\n.notification-list .notify-item .card-body .noti-item-title {\n margin: 0 0 2px;\n}\n.notification-list .notify-item .card-body .noti-item-title,\n.notification-list .notify-item .card-body .noti-item-subtitle {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n.notification-list .notify-item .notify-icon {\n float: right;\n height: 36px;\n width: 36px;\n line-height: 36px;\n text-align: center;\n border-radius: 50%;\n color: #fff;\n}\n.notification-list .notify-item .notify-details {\n margin-bottom: 0;\n overflow: hidden;\n margin-right: 45px;\n}\n.notification-list .notify-item .notify-details b {\n font-weight: 500;\n}\n.notification-list .notify-item .notify-details small, .notification-list .notify-item .notify-details .small {\n display: block;\n}\n\n.profile-dropdown {\n min-width: 170px;\n}\n\n.nav-user {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n gap: 10px;\n border-width: 0 1px;\n border-style: solid;\n border-color: var(--ct-topbar-user-border);\n background-color: var(--ct-topbar-user-bg);\n min-height: var(--ct-topbar-height);\n -webkit-transition: none;\n transition: none;\n}\n\n.fullscreen-enable .ri-fullscreen-line::before {\n content: \"\\ed9a\";\n}\n\n@media (max-width: 375px) {\n .navbar-custom .button-toggle-menu {\n width: auto;\n }\n .logo-topbar {\n display: none !important;\n }\n}\n@media (max-width: 575.98px) {\n .navbar-custom .topbar-menu {\n position: initial;\n }\n .navbar-custom .dropdown {\n position: static;\n }\n .navbar-custom .dropdown .dropdown-menu {\n right: 10px !important;\n left: 10px !important;\n }\n}\n@media (max-width: 767.98px) {\n .navbar-custom {\n padding: 0 0.625rem;\n }\n .logo-topbar {\n display: block;\n }\n .logo-topbar span.logo-lg {\n display: none;\n }\n .logo-topbar span.logo-sm {\n display: block;\n }\n}\n#theme-settings-offcanvas {\n width: 260px;\n}\n\n.page-title-box .page-title {\n font-size: 18px;\n margin: 0;\n line-height: 60px;\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n}\n.page-title-box .breadcrumb {\n padding: 0;\n}\n\n.page-title-box-sm .page-title {\n line-height: 1 !important;\n margin-bottom: 25px;\n}\n.page-title-box-sm .page-title-right {\n float: left;\n margin-top: 0;\n}\n.page-title-box-sm .breadcrumb {\n padding-top: 0;\n margin-top: -3px !important;\n}\n\n.text-title {\n color: var(--ct-secondary-color);\n}\n.text-title:hover {\n color: var(--ct-tertiary-color);\n}\n\n@media (max-width: 767.98px) {\n .page-title-box .page-title {\n display: block;\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n line-height: 70px;\n }\n .page-title-box .breadcrumb {\n display: none;\n }\n .page-title-box .page-title-left {\n display: none;\n }\n}\n@media (max-width: 419px) {\n .page-title-box .breadcrumb {\n display: none;\n }\n}\n.footer {\n position: absolute;\n left: 0;\n bottom: 0;\n right: 0;\n height: var(--ct-footer-height);\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n padding: 0 1.25rem;\n color: var(--ct-gray-600);\n -webkit-transition: all 0.25s ease-in-out;\n transition: all 0.25s ease-in-out;\n border-top: 1px solid var(--ct-border-color);\n}\n.footer .footer-links a {\n color: var(--ct-gray-600);\n margin-right: 1.25rem;\n -webkit-transition: all 0.4s;\n transition: all 0.4s;\n}\n.footer .footer-links a:hover {\n color: var(--ct-gray-600);\n}\n.footer .footer-links a:first-of-type {\n margin-right: 0;\n}\n\n.footer-alt {\n border: none;\n text-align: center;\n -webkit-box-pack: center;\n -ms-flex-pack: center;\n justify-content: center;\n}\n\nhtml[data-layout-mode=detached]:not([data-layout=topnav]) .footer .container-fluid, html[data-layout-mode=detached]:not([data-layout=topnav]) .footer .container-sm, html[data-layout-mode=detached]:not([data-layout=topnav]) .footer .container-md, html[data-layout-mode=detached]:not([data-layout=topnav]) .footer .container-lg, html[data-layout-mode=detached]:not([data-layout=topnav]) .footer .container-xl, html[data-layout-mode=detached]:not([data-layout=topnav]) .footer .container-xxl {\n max-width: 100%;\n padding: 0;\n}\n\n@media (max-width: 767.98px) {\n .footer {\n text-align: center;\n }\n}\nhtml[data-layout=topnav] .navbar-custom {\n margin: 0;\n padding: 0;\n z-index: 1005;\n -webkit-box-shadow: none;\n box-shadow: none;\n}\nhtml[data-layout=topnav] .navbar-custom .logo-topbar {\n display: block;\n}\nhtml[data-layout=topnav] .navbar-custom .button-toggle-menu {\n display: none;\n}\nhtml[data-layout=topnav] .content-page {\n margin-right: 0;\n padding: 0 0 var(--ct-topbar-height);\n}\nhtml[data-layout=topnav] .container-fluid, html[data-layout=topnav] .container-sm, html[data-layout=topnav] .container-md, html[data-layout=topnav] .container-lg, html[data-layout=topnav] .container-xl, html[data-layout=topnav] .container-xxl {\n padding-left: 1.25rem;\n padding-right: 1.25rem;\n}\nhtml[data-layout=topnav] .topnav {\n width: 100%;\n z-index: 1000;\n position: sticky;\n top: var(--ct-topbar-height);\n background: var(--ct-menu-bg);\n -webkit-box-shadow: var(--ct-box-shadow);\n box-shadow: var(--ct-box-shadow);\n border-top: 1px solid var(--ct-topbar-user-border);\n}\nhtml[data-layout=topnav] .topnav .navbar {\n margin: 0;\n padding: 0;\n}\nhtml[data-layout=topnav] .topnav .navbar-nav .nav-link {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n position: relative;\n font-size: var(--ct-menu-item-font-size);\n padding: calc(var(--ct-menu-item-padding-y) * 1.2) calc(var(--ct-menu-item-padding-x) * 2);\n}\nhtml[data-layout=topnav] .topnav .navbar-nav .nav-link i {\n font-size: var(--ct-menu-item-icon-size);\n margin-left: calc(var(--ct-menu-item-icon-size) * 0.5);\n}\nhtml[data-layout=topnav] .topnav .navbar-nav .dropdown .dropdown-menu {\n font-size: calc(0.875rem - 0);\n}\nhtml[data-layout=topnav] .topnav .navbar-nav .dropdown .dropdown-menu .dropdown-item {\n padding: calc(var(--ct-menu-item-padding-y) * 0.75) calc(var(--ct-menu-item-padding-x) * 2.4);\n}\nhtml[data-layout=topnav] .topnav .nav-item > a,\nhtml[data-layout=topnav] .topnav .nav-item .nav-link {\n color: var(--ct-menu-item-color);\n}\nhtml[data-layout=topnav] .topnav .nav-item > a:hover,\nhtml[data-layout=topnav] .topnav .nav-item .nav-link:hover {\n color: var(--ct-menu-item-hover-color);\n}\nhtml[data-layout=topnav] .topnav .nav-item.active > a {\n color: var(--ct-menu-item-active-color);\n}\nhtml[data-layout=topnav] .arrow-down {\n display: inline-block;\n display: inline-block;\n text-rendering: auto;\n margin-right: calc(var(--ct-menu-item-padding-x) * 1);\n font-size: calc(var(--ct-menu-item-font-size) * 1.18);\n}\nhtml[data-layout=topnav] .arrow-down:before {\n content: \"\\ea4e\";\n font-family: \"remixicon\";\n}\nhtml[data-layout=topnav] #sidebar-size,\nhtml[data-layout=topnav] #layout-detached,\nhtml[data-layout=topnav] #sidebar-user {\n display: none;\n}\nhtml[data-layout=topnav] #topnav-color {\n display: block;\n}\n\n#topnav-color {\n display: none;\n}\n\n.navbar-toggle {\n display: none;\n position: relative;\n cursor: pointer;\n float: right;\n padding: 0;\n background-color: transparent;\n color: var(--ct-topbar-item-color);\n border: none;\n}\n.navbar-toggle .lines {\n width: 25px;\n display: block;\n position: relative;\n height: 16px;\n -webkit-transition: all 0.5s ease;\n transition: all 0.5s ease;\n}\n.navbar-toggle span {\n height: 2px;\n width: 100%;\n background-color: var(--ct-topbar-item-color);\n display: block;\n margin-bottom: 5px;\n -webkit-transition: -webkit-transform 0.5s ease;\n transition: -webkit-transform 0.5s ease;\n transition: transform 0.5s ease;\n transition: transform 0.5s ease, -webkit-transform 0.5s ease;\n}\n.navbar-toggle.open span {\n position: absolute;\n}\n.navbar-toggle.open span:first-child {\n top: 7px;\n -webkit-transform: rotate(-45deg);\n transform: rotate(-45deg);\n}\n.navbar-toggle.open span:nth-child(2) {\n visibility: hidden;\n}\n.navbar-toggle.open span:last-child {\n width: 100%;\n top: 7px;\n -webkit-transform: rotate(45deg);\n transform: rotate(45deg);\n}\n\n@media (min-width: 992px) {\n html[data-layout=topnav] .container-fluid, html[data-layout=topnav] .container-sm, html[data-layout=topnav] .container-md, html[data-layout=topnav] .container-lg, html[data-layout=topnav] .container-xl, html[data-layout=topnav] .container-xxl {\n max-width: 95%;\n }\n html[data-layout=topnav][data-layout-mode=boxed] .container-fluid, html[data-layout=topnav][data-layout-mode=boxed] .container-sm, html[data-layout=topnav][data-layout-mode=boxed] .container-md, html[data-layout=topnav][data-layout-mode=boxed] .container-lg, html[data-layout=topnav][data-layout-mode=boxed] .container-xl, html[data-layout=topnav][data-layout-mode=boxed] .container-xxl {\n max-width: 97%;\n }\n .topnav .navbar-nav .nav-item:first-of-type .nav-link {\n padding-right: 0;\n }\n .topnav .dropdown .dropdown-menu {\n margin-top: 0;\n border-radius: 0 0 0.15rem 0.15rem;\n min-width: calc(var(--ct-dropdown-min-width) + var(--ct-menu-item-font-size) * 1.5);\n font-size: calc(0.875rem - 0);\n }\n .topnav .dropdown .dropdown-menu .arrow-down {\n font-size: var(--ct-menu-item-font-size);\n -webkit-transform: rotate(-270deg);\n transform: rotate(-270deg);\n position: absolute;\n left: var(--ct-menu-item-padding-x);\n }\n .topnav .dropdown .dropdown-menu .dropdown .dropdown-menu {\n position: absolute;\n top: 0;\n right: 100%;\n display: none;\n }\n .topnav .dropdown:hover > .dropdown-menu {\n display: block;\n }\n .topnav .dropdown:hover > .dropdown-menu > .dropdown:hover > .dropdown-menu {\n display: block;\n }\n .topnav .dropdown.active > a.dropdown-item {\n color: var(--ct-tertiary-color);\n background-color: var(--ct-tertiary-bg);\n }\n}\n@media (max-width: 991.98px) {\n html[data-layout=topnav] .topnav {\n max-height: 360px;\n overflow-y: auto;\n }\n html[data-layout=topnav] .topnav .navbar-nav .nav-link {\n padding: calc(var(--ct-menu-item-padding-y) * 0.8) calc(var(--ct-menu-item-padding-x) * 2);\n }\n html[data-layout=topnav] .topnav .dropdown .dropdown-menu {\n background-color: transparent;\n border: none;\n -webkit-box-shadow: none;\n box-shadow: none;\n padding-right: calc(var(--ct-menu-item-padding-x) * 3);\n margin-top: calc(var(--ct-menu-item-padding-y) * -0.75);\n }\n html[data-layout=topnav] .topnav .dropdown .dropdown-menu .dropdown-menu {\n margin-top: calc(var(--ct-menu-item-padding-y) * -0.5);\n padding-right: calc(var(--ct-menu-item-padding-x) * 1.5);\n }\n html[data-layout=topnav] .topnav .dropdown .dropdown-item {\n position: relative;\n background-color: transparent;\n }\n html[data-layout=topnav] .topnav .dropdown .dropdown-item {\n color: var(--ct-menu-item-color);\n }\n html[data-layout=topnav] .topnav .dropdown .dropdown-item.hover {\n color: var(--ct-menu-item-hover-color);\n }\n html[data-layout=topnav] .topnav .dropdown .dropdown-item.active, html[data-layout=topnav] .topnav .dropdown .dropdown-item:active {\n color: var(--ct-menu-item-active-color);\n }\n html[data-layout=topnav] .topnav .dropdown.active > a.dropdown-item {\n color: var(--ct-menu-item-active-color);\n }\n html[data-layout=topnav] .topnav .arrow-down {\n font-size: var(--ct-menu-item-font-size);\n -webkit-transform: rotate(-270deg);\n transform: rotate(-270deg);\n position: absolute;\n left: var(--ct-menu-item-padding-x);\n }\n html[data-layout=topnav] .navbar-toggle {\n display: block;\n }\n}\n@media (min-width: 1400px) {\n html[data-layout=topnav] .container-fluid, html[data-layout=topnav] .container-sm, html[data-layout=topnav] .container-md, html[data-layout=topnav] .container-lg, html[data-layout=topnav] .container-xl, html[data-layout=topnav] .container-xxl {\n max-width: 85%;\n }\n}\n[data-bs-theme=dark] {\n --ct-light: #464f5b;\n --ct-light-rgb: 70, 79, 91;\n --ct-dark: #637385;\n --ct-dark-rgb: 99, 115, 133;\n}\n\n.accordion-header {\n margin: 0;\n}\n\n.accordion > .card > .card-header {\n border-radius: 0;\n margin-bottom: -1px;\n}\n\n.alert {\n -webkit-box-shadow: -2px 2px 3px rgba(27, 23, 30, 0.1);\n box-shadow: -2px 2px 3px rgba(27, 23, 30, 0.1);\n}\n\n.avatar-xxs {\n height: 1.5rem;\n width: 1.5rem;\n}\n\n.avatar-xs {\n height: 2rem;\n width: 2rem;\n}\n\n.avatar-sm {\n height: 2.5rem;\n width: 2.5rem;\n}\n\n.avatar-md {\n height: 4.5rem;\n width: 4.5rem;\n}\n\n.avatar-lg {\n height: 6rem;\n width: 6rem;\n}\n\n.avatar-xl {\n height: 7.5rem;\n width: 7.5rem;\n}\n\n.avatar-title {\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n background-color: var(--ct-primary);\n color: #fff;\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n height: 100%;\n -webkit-box-pack: center;\n -ms-flex-pack: center;\n justify-content: center;\n width: 100%;\n}\n\n.avatar-group {\n padding-right: 12px;\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -ms-flex-wrap: wrap;\n flex-wrap: wrap;\n}\n.avatar-group .avatar-group-item {\n margin-right: -12px;\n border-radius: 50%;\n -webkit-transition: all 0.2s;\n transition: all 0.2s;\n}\n.avatar-group .avatar-group-item:hover {\n position: relative;\n -webkit-transform: translateY(-2px);\n transform: translateY(-2px);\n z-index: 1;\n}\n\n.breadcrumb-item + .breadcrumb-item::before {\n font-family: \"remixicon\";\n font-size: 16px;\n line-height: 1.3;\n}\n\n.btn {\n -webkit-box-shadow: -2px 2px 3px rgba(27, 23, 30, 0.1);\n box-shadow: -2px 2px 3px rgba(27, 23, 30, 0.1);\n}\n\n.btn-link {\n -webkit-box-shadow: none;\n box-shadow: none;\n}\n\n.btn-primary {\n --ct-btn-bg: var(--ct-primary);\n --ct-btn-border-color: var(--ct-primary);\n --ct-btn-hover-bg: var(--ct-primary-text-emphasis);\n --ct-btn-hover-border-color: var(--ct-primary-text-emphasis);\n --ct-btn-focus-shadow-rgb: var(--ct-primary-rgb);\n --ct-btn-active-bg: var(--ct-primary-text-emphasis);\n --ct-btn-active-border-color: var(--ct-primary-text-emphasis);\n}\n\n.btn-outline-primary {\n --ct-btn-color: var(--ct-primary);\n --ct-btn-bg: transparent;\n --ct-btn-border-color: var(--ct-primary);\n --ct-btn-hover-bg: var(--ct-primary);\n --ct-btn-hover-border-color: var(--ct-primary);\n --ct-btn-focus-shadow-rgb: var(--ct-primary-rgb);\n --ct-btn-active-bg: var(--ct-primary);\n --ct-btn-active-border-color: var(--ct-primary);\n}\n\n.btn-soft-primary {\n --ct-btn-color: var(--ct-primary);\n --ct-btn-bg: var(--ct-primary-bg-subtle);\n --ct-btn-border-color: transparent;\n --ct-btn-hover-bg: var(--ct-primary);\n --ct-btn-hover-border-color: var(--ct-primary);\n --ct-btn-active-bg: var(--ct-primary);\n --ct-btn-active-border-color: var(--ct-primary);\n --ct-btn-disabled-color: var(--ct-primary);\n --ct-btn-disabled-bg: var(--ct-primary);\n --ct-btn-disabled-border-color: var(--ct-primary);\n --ct-btn-focus-shadow-rgb: 0 0 0 $btn-focus-width rgba(var(--ct-primary)-rgb, 0.5);\n}\n\n.btn-secondary {\n --ct-btn-bg: var(--ct-secondary);\n --ct-btn-border-color: var(--ct-secondary);\n --ct-btn-hover-bg: var(--ct-secondary-text-emphasis);\n --ct-btn-hover-border-color: var(--ct-secondary-text-emphasis);\n --ct-btn-focus-shadow-rgb: var(--ct-secondary-rgb);\n --ct-btn-active-bg: var(--ct-secondary-text-emphasis);\n --ct-btn-active-border-color: var(--ct-secondary-text-emphasis);\n}\n\n.btn-outline-secondary {\n --ct-btn-color: var(--ct-secondary);\n --ct-btn-bg: transparent;\n --ct-btn-border-color: var(--ct-secondary);\n --ct-btn-hover-bg: var(--ct-secondary);\n --ct-btn-hover-border-color: var(--ct-secondary);\n --ct-btn-focus-shadow-rgb: var(--ct-secondary-rgb);\n --ct-btn-active-bg: var(--ct-secondary);\n --ct-btn-active-border-color: var(--ct-secondary);\n}\n\n.btn-soft-secondary {\n --ct-btn-color: var(--ct-secondary);\n --ct-btn-bg: var(--ct-secondary-bg-subtle);\n --ct-btn-border-color: transparent;\n --ct-btn-hover-bg: var(--ct-secondary);\n --ct-btn-hover-border-color: var(--ct-secondary);\n --ct-btn-active-bg: var(--ct-secondary);\n --ct-btn-active-border-color: var(--ct-secondary);\n --ct-btn-disabled-color: var(--ct-secondary);\n --ct-btn-disabled-bg: var(--ct-secondary);\n --ct-btn-disabled-border-color: var(--ct-secondary);\n --ct-btn-focus-shadow-rgb: 0 0 0 $btn-focus-width rgba(var(--ct-secondary)-rgb, 0.5);\n}\n\n.btn-success {\n --ct-btn-bg: var(--ct-success);\n --ct-btn-border-color: var(--ct-success);\n --ct-btn-hover-bg: var(--ct-success-text-emphasis);\n --ct-btn-hover-border-color: var(--ct-success-text-emphasis);\n --ct-btn-focus-shadow-rgb: var(--ct-success-rgb);\n --ct-btn-active-bg: var(--ct-success-text-emphasis);\n --ct-btn-active-border-color: var(--ct-success-text-emphasis);\n}\n\n.btn-outline-success {\n --ct-btn-color: var(--ct-success);\n --ct-btn-bg: transparent;\n --ct-btn-border-color: var(--ct-success);\n --ct-btn-hover-bg: var(--ct-success);\n --ct-btn-hover-border-color: var(--ct-success);\n --ct-btn-focus-shadow-rgb: var(--ct-success-rgb);\n --ct-btn-active-bg: var(--ct-success);\n --ct-btn-active-border-color: var(--ct-success);\n}\n\n.btn-soft-success {\n --ct-btn-color: var(--ct-success);\n --ct-btn-bg: var(--ct-success-bg-subtle);\n --ct-btn-border-color: transparent;\n --ct-btn-hover-bg: var(--ct-success);\n --ct-btn-hover-border-color: var(--ct-success);\n --ct-btn-active-bg: var(--ct-success);\n --ct-btn-active-border-color: var(--ct-success);\n --ct-btn-disabled-color: var(--ct-success);\n --ct-btn-disabled-bg: var(--ct-success);\n --ct-btn-disabled-border-color: var(--ct-success);\n --ct-btn-focus-shadow-rgb: 0 0 0 $btn-focus-width rgba(var(--ct-success)-rgb, 0.5);\n}\n\n.btn-info {\n --ct-btn-bg: var(--ct-info);\n --ct-btn-border-color: var(--ct-info);\n --ct-btn-hover-bg: var(--ct-info-text-emphasis);\n --ct-btn-hover-border-color: var(--ct-info-text-emphasis);\n --ct-btn-focus-shadow-rgb: var(--ct-info-rgb);\n --ct-btn-active-bg: var(--ct-info-text-emphasis);\n --ct-btn-active-border-color: var(--ct-info-text-emphasis);\n}\n\n.btn-outline-info {\n --ct-btn-color: var(--ct-info);\n --ct-btn-bg: transparent;\n --ct-btn-border-color: var(--ct-info);\n --ct-btn-hover-bg: var(--ct-info);\n --ct-btn-hover-border-color: var(--ct-info);\n --ct-btn-focus-shadow-rgb: var(--ct-info-rgb);\n --ct-btn-active-bg: var(--ct-info);\n --ct-btn-active-border-color: var(--ct-info);\n}\n\n.btn-soft-info {\n --ct-btn-color: var(--ct-info);\n --ct-btn-bg: var(--ct-info-bg-subtle);\n --ct-btn-border-color: transparent;\n --ct-btn-hover-bg: var(--ct-info);\n --ct-btn-hover-border-color: var(--ct-info);\n --ct-btn-active-bg: var(--ct-info);\n --ct-btn-active-border-color: var(--ct-info);\n --ct-btn-disabled-color: var(--ct-info);\n --ct-btn-disabled-bg: var(--ct-info);\n --ct-btn-disabled-border-color: var(--ct-info);\n --ct-btn-focus-shadow-rgb: 0 0 0 $btn-focus-width rgba(var(--ct-info)-rgb, 0.5);\n}\n\n.btn-warning {\n --ct-btn-bg: var(--ct-warning);\n --ct-btn-border-color: var(--ct-warning);\n --ct-btn-hover-bg: var(--ct-warning-text-emphasis);\n --ct-btn-hover-border-color: var(--ct-warning-text-emphasis);\n --ct-btn-focus-shadow-rgb: var(--ct-warning-rgb);\n --ct-btn-active-bg: var(--ct-warning-text-emphasis);\n --ct-btn-active-border-color: var(--ct-warning-text-emphasis);\n}\n\n.btn-outline-warning {\n --ct-btn-color: var(--ct-warning);\n --ct-btn-bg: transparent;\n --ct-btn-border-color: var(--ct-warning);\n --ct-btn-hover-bg: var(--ct-warning);\n --ct-btn-hover-border-color: var(--ct-warning);\n --ct-btn-focus-shadow-rgb: var(--ct-warning-rgb);\n --ct-btn-active-bg: var(--ct-warning);\n --ct-btn-active-border-color: var(--ct-warning);\n}\n\n.btn-soft-warning {\n --ct-btn-color: var(--ct-warning);\n --ct-btn-bg: var(--ct-warning-bg-subtle);\n --ct-btn-border-color: transparent;\n --ct-btn-hover-bg: var(--ct-warning);\n --ct-btn-hover-border-color: var(--ct-warning);\n --ct-btn-active-bg: var(--ct-warning);\n --ct-btn-active-border-color: var(--ct-warning);\n --ct-btn-disabled-color: var(--ct-warning);\n --ct-btn-disabled-bg: var(--ct-warning);\n --ct-btn-disabled-border-color: var(--ct-warning);\n --ct-btn-focus-shadow-rgb: 0 0 0 $btn-focus-width rgba(var(--ct-warning)-rgb, 0.5);\n}\n\n.btn-danger {\n --ct-btn-bg: var(--ct-danger);\n --ct-btn-border-color: var(--ct-danger);\n --ct-btn-hover-bg: var(--ct-danger-text-emphasis);\n --ct-btn-hover-border-color: var(--ct-danger-text-emphasis);\n --ct-btn-focus-shadow-rgb: var(--ct-danger-rgb);\n --ct-btn-active-bg: var(--ct-danger-text-emphasis);\n --ct-btn-active-border-color: var(--ct-danger-text-emphasis);\n}\n\n.btn-outline-danger {\n --ct-btn-color: var(--ct-danger);\n --ct-btn-bg: transparent;\n --ct-btn-border-color: var(--ct-danger);\n --ct-btn-hover-bg: var(--ct-danger);\n --ct-btn-hover-border-color: var(--ct-danger);\n --ct-btn-focus-shadow-rgb: var(--ct-danger-rgb);\n --ct-btn-active-bg: var(--ct-danger);\n --ct-btn-active-border-color: var(--ct-danger);\n}\n\n.btn-soft-danger {\n --ct-btn-color: var(--ct-danger);\n --ct-btn-bg: var(--ct-danger-bg-subtle);\n --ct-btn-border-color: transparent;\n --ct-btn-hover-bg: var(--ct-danger);\n --ct-btn-hover-border-color: var(--ct-danger);\n --ct-btn-active-bg: var(--ct-danger);\n --ct-btn-active-border-color: var(--ct-danger);\n --ct-btn-disabled-color: var(--ct-danger);\n --ct-btn-disabled-bg: var(--ct-danger);\n --ct-btn-disabled-border-color: var(--ct-danger);\n --ct-btn-focus-shadow-rgb: 0 0 0 $btn-focus-width rgba(var(--ct-danger)-rgb, 0.5);\n}\n\n.btn-light {\n --ct-btn-bg: var(--ct-light);\n --ct-btn-border-color: var(--ct-light);\n --ct-btn-hover-bg: var(--ct-light-text-emphasis);\n --ct-btn-hover-border-color: var(--ct-light-text-emphasis);\n --ct-btn-focus-shadow-rgb: var(--ct-light-rgb);\n --ct-btn-active-bg: var(--ct-light-text-emphasis);\n --ct-btn-active-border-color: var(--ct-light-text-emphasis);\n}\n\n.btn-outline-light {\n --ct-btn-color: var(--ct-light);\n --ct-btn-bg: transparent;\n --ct-btn-border-color: var(--ct-light);\n --ct-btn-hover-bg: var(--ct-light);\n --ct-btn-hover-border-color: var(--ct-light);\n --ct-btn-focus-shadow-rgb: var(--ct-light-rgb);\n --ct-btn-active-bg: var(--ct-light);\n --ct-btn-active-border-color: var(--ct-light);\n}\n\n.btn-soft-light {\n --ct-btn-color: var(--ct-light);\n --ct-btn-bg: var(--ct-light-bg-subtle);\n --ct-btn-border-color: transparent;\n --ct-btn-hover-bg: var(--ct-light);\n --ct-btn-hover-border-color: var(--ct-light);\n --ct-btn-active-bg: var(--ct-light);\n --ct-btn-active-border-color: var(--ct-light);\n --ct-btn-disabled-color: var(--ct-light);\n --ct-btn-disabled-bg: var(--ct-light);\n --ct-btn-disabled-border-color: var(--ct-light);\n --ct-btn-focus-shadow-rgb: 0 0 0 $btn-focus-width rgba(var(--ct-light)-rgb, 0.5);\n}\n\n.btn-dark {\n --ct-btn-bg: var(--ct-dark);\n --ct-btn-border-color: var(--ct-dark);\n --ct-btn-hover-bg: var(--ct-dark-text-emphasis);\n --ct-btn-hover-border-color: var(--ct-dark-text-emphasis);\n --ct-btn-focus-shadow-rgb: var(--ct-dark-rgb);\n --ct-btn-active-bg: var(--ct-dark-text-emphasis);\n --ct-btn-active-border-color: var(--ct-dark-text-emphasis);\n}\n\n.btn-outline-dark {\n --ct-btn-color: var(--ct-dark);\n --ct-btn-bg: transparent;\n --ct-btn-border-color: var(--ct-dark);\n --ct-btn-hover-bg: var(--ct-dark);\n --ct-btn-hover-border-color: var(--ct-dark);\n --ct-btn-focus-shadow-rgb: var(--ct-dark-rgb);\n --ct-btn-active-bg: var(--ct-dark);\n --ct-btn-active-border-color: var(--ct-dark);\n}\n\n.btn-soft-dark {\n --ct-btn-color: var(--ct-dark);\n --ct-btn-bg: var(--ct-dark-bg-subtle);\n --ct-btn-border-color: transparent;\n --ct-btn-hover-bg: var(--ct-dark);\n --ct-btn-hover-border-color: var(--ct-dark);\n --ct-btn-active-bg: var(--ct-dark);\n --ct-btn-active-border-color: var(--ct-dark);\n --ct-btn-disabled-color: var(--ct-dark);\n --ct-btn-disabled-bg: var(--ct-dark);\n --ct-btn-disabled-border-color: var(--ct-dark);\n --ct-btn-focus-shadow-rgb: 0 0 0 $btn-focus-width rgba(var(--ct-dark)-rgb, 0.5);\n}\n\n.btn-purple {\n --ct-btn-bg: var(--ct-purple);\n --ct-btn-border-color: var(--ct-purple);\n --ct-btn-hover-bg: var(--ct-purple-text-emphasis);\n --ct-btn-hover-border-color: var(--ct-purple-text-emphasis);\n --ct-btn-focus-shadow-rgb: var(--ct-purple-rgb);\n --ct-btn-active-bg: var(--ct-purple-text-emphasis);\n --ct-btn-active-border-color: var(--ct-purple-text-emphasis);\n}\n\n.btn-outline-purple {\n --ct-btn-color: var(--ct-purple);\n --ct-btn-bg: transparent;\n --ct-btn-border-color: var(--ct-purple);\n --ct-btn-hover-bg: var(--ct-purple);\n --ct-btn-hover-border-color: var(--ct-purple);\n --ct-btn-focus-shadow-rgb: var(--ct-purple-rgb);\n --ct-btn-active-bg: var(--ct-purple);\n --ct-btn-active-border-color: var(--ct-purple);\n}\n\n.btn-soft-purple {\n --ct-btn-color: var(--ct-purple);\n --ct-btn-bg: var(--ct-purple-bg-subtle);\n --ct-btn-border-color: transparent;\n --ct-btn-hover-bg: var(--ct-purple);\n --ct-btn-hover-border-color: var(--ct-purple);\n --ct-btn-active-bg: var(--ct-purple);\n --ct-btn-active-border-color: var(--ct-purple);\n --ct-btn-disabled-color: var(--ct-purple);\n --ct-btn-disabled-bg: var(--ct-purple);\n --ct-btn-disabled-border-color: var(--ct-purple);\n --ct-btn-focus-shadow-rgb: 0 0 0 $btn-focus-width rgba(var(--ct-purple)-rgb, 0.5);\n}\n\n.btn-pink {\n --ct-btn-bg: var(--ct-pink);\n --ct-btn-border-color: var(--ct-pink);\n --ct-btn-hover-bg: var(--ct-pink-text-emphasis);\n --ct-btn-hover-border-color: var(--ct-pink-text-emphasis);\n --ct-btn-focus-shadow-rgb: var(--ct-pink-rgb);\n --ct-btn-active-bg: var(--ct-pink-text-emphasis);\n --ct-btn-active-border-color: var(--ct-pink-text-emphasis);\n}\n\n.btn-outline-pink {\n --ct-btn-color: var(--ct-pink);\n --ct-btn-bg: transparent;\n --ct-btn-border-color: var(--ct-pink);\n --ct-btn-hover-bg: var(--ct-pink);\n --ct-btn-hover-border-color: var(--ct-pink);\n --ct-btn-focus-shadow-rgb: var(--ct-pink-rgb);\n --ct-btn-active-bg: var(--ct-pink);\n --ct-btn-active-border-color: var(--ct-pink);\n}\n\n.btn-soft-pink {\n --ct-btn-color: var(--ct-pink);\n --ct-btn-bg: var(--ct-pink-bg-subtle);\n --ct-btn-border-color: transparent;\n --ct-btn-hover-bg: var(--ct-pink);\n --ct-btn-hover-border-color: var(--ct-pink);\n --ct-btn-active-bg: var(--ct-pink);\n --ct-btn-active-border-color: var(--ct-pink);\n --ct-btn-disabled-color: var(--ct-pink);\n --ct-btn-disabled-bg: var(--ct-pink);\n --ct-btn-disabled-border-color: var(--ct-pink);\n --ct-btn-focus-shadow-rgb: 0 0 0 $btn-focus-width rgba(var(--ct-pink)-rgb, 0.5);\n}\n\n.btn-soft-primary {\n --ct-btn-active-color: #fff;\n --ct-btn-hover-color: #fff;\n}\n\n.btn-soft-secondary {\n --ct-btn-active-color: #fff;\n --ct-btn-hover-color: #fff;\n}\n\n.btn-soft-success {\n --ct-btn-active-color: #fff;\n --ct-btn-hover-color: #fff;\n}\n\n.btn-soft-info {\n --ct-btn-active-color: #fff;\n --ct-btn-hover-color: #fff;\n}\n\n.btn-soft-warning {\n --ct-btn-active-color: #fff;\n --ct-btn-hover-color: #fff;\n}\n\n.btn-soft-danger {\n --ct-btn-active-color: #fff;\n --ct-btn-hover-color: #fff;\n}\n\n.btn-soft-light {\n --ct-btn-active-color: #212529;\n --ct-btn-hover-color: #212529;\n}\n\n.btn-soft-dark {\n --ct-btn-active-color: #fff;\n --ct-btn-hover-color: #fff;\n}\n\n.btn-soft-purple {\n --ct-btn-active-color: #fff;\n --ct-btn-hover-color: #fff;\n}\n\n.btn-soft-pink {\n --ct-btn-active-color: #fff;\n --ct-btn-hover-color: #fff;\n}\n\n[data-bs-theme=dark] .btn-light {\n --ct-btn-color: #fff;\n --ct-btn-active-color: #fff;\n --ct-btn-hover-color: #fff;\n}\n\n.badge-outline-primary {\n --ct-badge-color: var(--ct-primary);\n border: 1px solid var(--ct-primary);\n background-color: transparent;\n}\n.badge-outline-primary[href] {\n color: var(--ct-primary);\n text-decoration: none;\n background-color: var(--ct-primary-bg-subtle);\n}\n.badge-outline-primary[href]:is(:hover, :focus) {\n color: var(--ct-primary);\n text-decoration: none;\n background-color: var(--ct-primary-bg-subtle);\n}\n\n.badge-outline-secondary {\n --ct-badge-color: var(--ct-secondary);\n border: 1px solid var(--ct-secondary);\n background-color: transparent;\n}\n.badge-outline-secondary[href] {\n color: var(--ct-secondary);\n text-decoration: none;\n background-color: var(--ct-secondary-bg-subtle);\n}\n.badge-outline-secondary[href]:is(:hover, :focus) {\n color: var(--ct-secondary);\n text-decoration: none;\n background-color: var(--ct-secondary-bg-subtle);\n}\n\n.badge-outline-success {\n --ct-badge-color: var(--ct-success);\n border: 1px solid var(--ct-success);\n background-color: transparent;\n}\n.badge-outline-success[href] {\n color: var(--ct-success);\n text-decoration: none;\n background-color: var(--ct-success-bg-subtle);\n}\n.badge-outline-success[href]:is(:hover, :focus) {\n color: var(--ct-success);\n text-decoration: none;\n background-color: var(--ct-success-bg-subtle);\n}\n\n.badge-outline-info {\n --ct-badge-color: var(--ct-info);\n border: 1px solid var(--ct-info);\n background-color: transparent;\n}\n.badge-outline-info[href] {\n color: var(--ct-info);\n text-decoration: none;\n background-color: var(--ct-info-bg-subtle);\n}\n.badge-outline-info[href]:is(:hover, :focus) {\n color: var(--ct-info);\n text-decoration: none;\n background-color: var(--ct-info-bg-subtle);\n}\n\n.badge-outline-warning {\n --ct-badge-color: var(--ct-warning);\n border: 1px solid var(--ct-warning);\n background-color: transparent;\n}\n.badge-outline-warning[href] {\n color: var(--ct-warning);\n text-decoration: none;\n background-color: var(--ct-warning-bg-subtle);\n}\n.badge-outline-warning[href]:is(:hover, :focus) {\n color: var(--ct-warning);\n text-decoration: none;\n background-color: var(--ct-warning-bg-subtle);\n}\n\n.badge-outline-danger {\n --ct-badge-color: var(--ct-danger);\n border: 1px solid var(--ct-danger);\n background-color: transparent;\n}\n.badge-outline-danger[href] {\n color: var(--ct-danger);\n text-decoration: none;\n background-color: var(--ct-danger-bg-subtle);\n}\n.badge-outline-danger[href]:is(:hover, :focus) {\n color: var(--ct-danger);\n text-decoration: none;\n background-color: var(--ct-danger-bg-subtle);\n}\n\n.badge-outline-light {\n --ct-badge-color: var(--ct-light);\n border: 1px solid var(--ct-light);\n background-color: transparent;\n}\n.badge-outline-light[href] {\n color: var(--ct-light);\n text-decoration: none;\n background-color: var(--ct-light-bg-subtle);\n}\n.badge-outline-light[href]:is(:hover, :focus) {\n color: var(--ct-light);\n text-decoration: none;\n background-color: var(--ct-light-bg-subtle);\n}\n\n.badge-outline-dark {\n --ct-badge-color: var(--ct-dark);\n border: 1px solid var(--ct-dark);\n background-color: transparent;\n}\n.badge-outline-dark[href] {\n color: var(--ct-dark);\n text-decoration: none;\n background-color: var(--ct-dark-bg-subtle);\n}\n.badge-outline-dark[href]:is(:hover, :focus) {\n color: var(--ct-dark);\n text-decoration: none;\n background-color: var(--ct-dark-bg-subtle);\n}\n\n.badge-outline-purple {\n --ct-badge-color: var(--ct-purple);\n border: 1px solid var(--ct-purple);\n background-color: transparent;\n}\n.badge-outline-purple[href] {\n color: var(--ct-purple);\n text-decoration: none;\n background-color: var(--ct-purple-bg-subtle);\n}\n.badge-outline-purple[href]:is(:hover, :focus) {\n color: var(--ct-purple);\n text-decoration: none;\n background-color: var(--ct-purple-bg-subtle);\n}\n\n.badge-outline-pink {\n --ct-badge-color: var(--ct-pink);\n border: 1px solid var(--ct-pink);\n background-color: transparent;\n}\n.badge-outline-pink[href] {\n color: var(--ct-pink);\n text-decoration: none;\n background-color: var(--ct-pink-bg-subtle);\n}\n.badge-outline-pink[href]:is(:hover, :focus) {\n color: var(--ct-pink);\n text-decoration: none;\n background-color: var(--ct-pink-bg-subtle);\n}\n\n.card {\n -webkit-box-shadow: var(--ct-box-shadow);\n box-shadow: var(--ct-box-shadow);\n margin-bottom: 0.6rem;\n}\n.card .header-title {\n margin-bottom: 0.5rem;\n font-size: 0.95rem;\n margin-top: 0;\n}\n.card .card-drop {\n font-size: 20px;\n color: inherit;\n}\n.card .card-widgets {\n float: left;\n height: 16px;\n}\n.card .card-widgets > a {\n color: inherit;\n font-size: 18px;\n display: inline-block;\n line-height: 1;\n min-width: 20px;\n}\n.card .card-widgets > a.collapsed i:before {\n content: \"\\ea13\";\n}\n\n.card-title,\n.card-header {\n margin-top: 0;\n}\n.card-title .header-title,\n.card-header .header-title {\n margin-bottom: 0;\n}\n\n.card-disabled {\n position: absolute;\n right: 0;\n left: 0;\n top: 0;\n bottom: 0;\n border-radius: var(--ct-border-radius);\n background: rgba(242, 242, 247, 0.8);\n cursor: progress;\n}\n.card-disabled .card-portlets-loader {\n background-color: var(--ct-gray-900);\n -webkit-animation: rotatebox 1.2s infinite ease-in-out;\n animation: rotatebox 1.2s infinite ease-in-out;\n height: 30px;\n width: 30px;\n border-radius: 3px;\n position: absolute;\n right: 50%;\n top: 50%;\n margin-right: -0.625rem;\n margin-top: -0.625rem;\n}\n\n@-webkit-keyframes rotatebox {\n 0% {\n -webkit-transform: perspective(120px) rotateX(0deg) rotateY(0deg);\n transform: perspective(120px) rotateX(0deg) rotateY(0deg);\n }\n 50% {\n -webkit-transform: perspective(120px) rotateX(-180.1deg) rotateY(0deg);\n transform: perspective(120px) rotateX(-180.1deg) rotateY(0deg);\n }\n 100% {\n -webkit-transform: perspective(120px) rotateX(-180deg) rotateY(179.9deg);\n transform: perspective(120px) rotateX(-180deg) rotateY(179.9deg);\n }\n}\n\n@keyframes rotatebox {\n 0% {\n -webkit-transform: perspective(120px) rotateX(0deg) rotateY(0deg);\n transform: perspective(120px) rotateX(0deg) rotateY(0deg);\n }\n 50% {\n -webkit-transform: perspective(120px) rotateX(-180.1deg) rotateY(0deg);\n transform: perspective(120px) rotateX(-180.1deg) rotateY(0deg);\n }\n 100% {\n -webkit-transform: perspective(120px) rotateX(-180deg) rotateY(179.9deg);\n transform: perspective(120px) rotateX(-180deg) rotateY(179.9deg);\n }\n}\n.card-h-100 {\n height: calc(100% - 1.25rem);\n}\n\n.form-checkbox-primary .form-check-input:checked, .form-radio-primary .form-check-input:checked {\n background-color: var(--ct-primary);\n border-color: var(--ct-primary);\n}\n\n.form-checkbox-secondary .form-check-input:checked, .form-radio-secondary .form-check-input:checked {\n background-color: var(--ct-secondary);\n border-color: var(--ct-secondary);\n}\n\n.form-checkbox-success .form-check-input:checked, .form-radio-success .form-check-input:checked {\n background-color: var(--ct-success);\n border-color: var(--ct-success);\n}\n\n.form-checkbox-info .form-check-input:checked, .form-radio-info .form-check-input:checked {\n background-color: var(--ct-info);\n border-color: var(--ct-info);\n}\n\n.form-checkbox-warning .form-check-input:checked, .form-radio-warning .form-check-input:checked {\n background-color: var(--ct-warning);\n border-color: var(--ct-warning);\n}\n\n.form-checkbox-danger .form-check-input:checked, .form-radio-danger .form-check-input:checked {\n background-color: var(--ct-danger);\n border-color: var(--ct-danger);\n}\n\n.form-checkbox-light .form-check-input:checked, .form-radio-light .form-check-input:checked {\n background-color: var(--ct-light);\n border-color: var(--ct-light);\n}\n\n.form-checkbox-dark .form-check-input:checked, .form-radio-dark .form-check-input:checked {\n background-color: var(--ct-dark);\n border-color: var(--ct-dark);\n}\n\n.form-checkbox-purple .form-check-input:checked, .form-radio-purple .form-check-input:checked {\n background-color: var(--ct-purple);\n border-color: var(--ct-purple);\n}\n\n.form-checkbox-pink .form-check-input:checked, .form-radio-pink .form-check-input:checked {\n background-color: var(--ct-pink);\n border-color: var(--ct-pink);\n}\n\n.dropdown-menu {\n -webkit-box-shadow: var(--ct-dropdown-box-shadow);\n box-shadow: var(--ct-dropdown-box-shadow);\n}\n\n.dropdown-header {\n margin-top: 0;\n}\n\n.dropdown-menu-animated {\n opacity: 0;\n visibility: hidden;\n display: block !important;\n -webkit-transform: scale(0.75) !important;\n transform: scale(0.75) !important;\n -webkit-transition: all 0.1s linear !important;\n transition: all 0.1s linear !important;\n -webkit-transform-origin: top right;\n transform-origin: top right;\n inset: auto !important;\n top: 100% !important;\n}\n.dropdown-menu-animated.dropdown-menu-end {\n left: 0 !important;\n -webkit-transform-origin: top left;\n transform-origin: top left;\n}\n.dropdown-menu-animated.show {\n opacity: 1;\n visibility: visible;\n top: 100% !important;\n margin-top: 2px !important;\n -webkit-transform: scale(1) !important;\n transform: scale(1) !important;\n}\n\n.dropdown.hover-dropdown:hover .dropdown-menu {\n display: block !important;\n top: 100% !important;\n}\n.dropdown.hover-dropdown:hover .dropdown-menu-animated {\n opacity: 1;\n -webkit-transition: all 0.1s linear !important;\n transition: all 0.1s linear !important;\n -webkit-transform-origin: top right;\n transform-origin: top right;\n visibility: visible;\n top: 100% !important;\n -webkit-transform: scale(1) !important;\n transform: scale(1) !important;\n}\n.dropdown.hover-dropdown:hover .dropdown-menu-animated.dropdown-menu-end {\n left: 0 !important;\n right: auto !important;\n -webkit-transform-origin: top left;\n transform-origin: top left;\n}\n\n.dropdown-center .dropdown-menu-animated {\n -webkit-transform: scale(0.75) translateX(50%) !important;\n transform: scale(0.75) translateX(50%) !important;\n right: 50% !important;\n}\n.dropdown-center .dropdown-menu-animated.show {\n opacity: 1;\n visibility: visible;\n top: 100% !important;\n -webkit-transform: scale(1) translateX(50%) !important;\n transform: scale(1) translateX(50%) !important;\n}\n.dropdown-center.hover-dropdown:hover .dropdown-menu-animated {\n opacity: 1;\n visibility: visible;\n right: 50% !important;\n top: 100% !important;\n -webkit-transform: scale(1) translateX(50%) !important;\n transform: scale(1) translateX(50%) !important;\n}\n\n.dropdown-toggle-split::before {\n content: \"\";\n position: absolute;\n background-color: rgba(73, 82, 107, 0.08);\n top: -1px;\n bottom: -1px;\n left: -1px;\n right: 0;\n border-radius: var(--ct-border-radius) 0 0 var(--ct-border-radius);\n}\n\n.dropstart .dropdown-toggle-split::before {\n inset: auto;\n border-radius: 0;\n position: relative;\n z-index: 1;\n}\n.dropstart::after {\n content: \"\";\n position: absolute;\n background-color: rgba(73, 82, 107, 0.08);\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n border-radius: 0 var(--ct-border-radius) var(--ct-border-radius) 0;\n}\n\n@media (min-width: 576px) {\n .dropdown-lg {\n width: 320px;\n }\n}\n.dropdown-icon-item {\n display: block;\n border-radius: 3px;\n line-height: 34px;\n text-align: center;\n padding: 15px 0 9px;\n display: block;\n border: 1px solid transparent;\n color: var(--ct-body-color);\n}\n.dropdown-icon-item img {\n height: 24px;\n}\n.dropdown-icon-item span {\n display: block;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n.dropdown-icon-item:hover {\n background-color: var(--ct-primary-bg-subtle);\n color: var(--ct-primary);\n}\n\n.arrow-none:after {\n display: none;\n}\n\n.form-check-label {\n font-weight: normal;\n}\n\n.form-control-light {\n background-color: var(--ct-tertiary-bg) !important;\n border-color: var(--ct-border-color) !important;\n border-width: var(--ct-theme-card-border-width);\n border-style: solid;\n border-color: var(--ct-border-color);\n}\n\ninput.form-control[type=color],\ninput.form-control[type=range] {\n min-height: 39px;\n}\n\n.custom-select.is-invalid:focus,\n.form-control.is-invalid:focus,\n.custom-select:invalid:focus,\n.form-control:invalid:focus,\n.custom-select.is-valid:focus,\n.form-control.is-valid:focus,\n.custom-select:valid:focus,\n.form-control:valid:focus {\n -webkit-box-shadow: none !important;\n box-shadow: none !important;\n}\n\nselect.form-control:not([size]):not([multiple]) {\n height: calc(1.5em + 0.9rem + calc(var(--ct-border-width) * 2));\n}\n\nselect.form-control-sm:not([size]):not([multiple]) {\n height: calc(1.5em + 0.56rem + calc(var(--ct-border-width) * 2));\n}\n\n.password-eye {\n cursor: pointer;\n}\n.password-eye:before {\n font-family: \"remixicon\";\n content: \"\\ecb5\";\n font-style: normal;\n font-weight: 400;\n font-variant: normal;\n vertical-align: middle;\n line-height: 1.2;\n font-size: 16px;\n}\n\n.show-password .password-eye:before {\n content: \"\\ecb7\";\n}\n\n.modal-dialog {\n -webkit-box-shadow: 0 2px 5px 0 rgba(27, 23, 30, 0.3);\n box-shadow: 0 2px 5px 0 rgba(27, 23, 30, 0.3);\n}\n\n.modal-title {\n margin-top: 0;\n}\n\n.modal-full-width {\n width: 95%;\n max-width: none;\n}\n\n.modal-top {\n margin: 0 auto;\n}\n\n.modal-right {\n position: absolute;\n left: 0;\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-orient: vertical;\n -webkit-box-direction: normal;\n -ms-flex-flow: column nowrap;\n flex-flow: column nowrap;\n -webkit-box-pack: center;\n -ms-flex-pack: center;\n justify-content: center;\n height: 100%;\n margin: 0;\n background-color: var(--ct-secondary-bg);\n -ms-flex-line-pack: center;\n align-content: center;\n -webkit-transform: translate(-25%, 0) !important;\n transform: translate(-25%, 0) !important;\n}\n.modal-right button.btn-close {\n position: fixed;\n top: 20px;\n left: 20px;\n z-index: 1;\n}\n\n.modal.show .modal-left,\n.modal.show .modal-right {\n -webkit-transform: translate(0, 0) !important;\n transform: translate(0, 0) !important;\n}\n\n.modal-bottom {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-orient: vertical;\n -webkit-box-direction: normal;\n -ms-flex-flow: column nowrap;\n flex-flow: column nowrap;\n -ms-flex-pack: end;\n -webkit-box-pack: end;\n justify-content: flex-end;\n height: 100%;\n margin: 0 auto;\n -ms-flex-line-pack: center;\n align-content: center;\n}\n\n.modal-colored-header {\n border-radius: 0;\n}\n.modal-colored-header .modal-title {\n color: #fff !important;\n}\n\n.modal-filled {\n color: #fff;\n}\n.modal-filled .modal-header {\n background-color: rgba(255, 255, 255, 0.07);\n}\n.modal-filled .modal-title {\n color: #fff;\n}\n.modal-filled .modal-header,\n.modal-filled .modal-footer {\n border: none;\n}\n\n.nav-tabs > li > a,\n.nav-pills > li > a {\n color: var(--ct-secondary-color);\n font-weight: 500;\n}\n\n.nav-pills > a {\n color: var(--ct-gray-700);\n font-weight: 500;\n}\n\n.bg-nav-pills {\n background-color: var(--ct-tertiary-bg);\n}\n\n.nav-tabs.nav-bordered {\n border-bottom: 2px solid var(--ct-border-color);\n}\n.nav-tabs.nav-bordered .nav-item {\n margin-bottom: -1px;\n}\n.nav-tabs.nav-bordered li a {\n border: 0;\n padding: 0.625rem 1.25rem;\n}\n.nav-tabs.nav-bordered li a.active {\n border-bottom: 2px solid var(--ct-primary);\n}\n\n.pagination-rounded .page-link {\n border-radius: 30px !important;\n margin: 0 3px !important;\n border: none;\n}\n\n.popover {\n -webkit-box-shadow: var(--ct-box-shadow-lg);\n box-shadow: var(--ct-box-shadow-lg);\n}\n\n.popover-header {\n margin-top: 0;\n}\n\n.primary-popover {\n --ct-popover-max-width: 200px !important;\n --ct-popover-border-color: var(--ct-primary) !important;\n --ct-popover-header-bg: var(--ct-primary) !important;\n --ct-popover-header-color: var(--ct-white) !important;\n --ct-popover-body-padding-x: 1rem !important;\n --ct-popover-body-padding-y: .5rem !important;\n}\n\n.secondary-popover {\n --ct-popover-max-width: 200px !important;\n --ct-popover-border-color: var(--ct-secondary) !important;\n --ct-popover-header-bg: var(--ct-secondary) !important;\n --ct-popover-header-color: var(--ct-white) !important;\n --ct-popover-body-padding-x: 1rem !important;\n --ct-popover-body-padding-y: .5rem !important;\n}\n\n.success-popover {\n --ct-popover-max-width: 200px !important;\n --ct-popover-border-color: var(--ct-success) !important;\n --ct-popover-header-bg: var(--ct-success) !important;\n --ct-popover-header-color: var(--ct-white) !important;\n --ct-popover-body-padding-x: 1rem !important;\n --ct-popover-body-padding-y: .5rem !important;\n}\n\n.info-popover {\n --ct-popover-max-width: 200px !important;\n --ct-popover-border-color: var(--ct-info) !important;\n --ct-popover-header-bg: var(--ct-info) !important;\n --ct-popover-header-color: var(--ct-white) !important;\n --ct-popover-body-padding-x: 1rem !important;\n --ct-popover-body-padding-y: .5rem !important;\n}\n\n.warning-popover {\n --ct-popover-max-width: 200px !important;\n --ct-popover-border-color: var(--ct-warning) !important;\n --ct-popover-header-bg: var(--ct-warning) !important;\n --ct-popover-header-color: var(--ct-white) !important;\n --ct-popover-body-padding-x: 1rem !important;\n --ct-popover-body-padding-y: .5rem !important;\n}\n\n.danger-popover {\n --ct-popover-max-width: 200px !important;\n --ct-popover-border-color: var(--ct-danger) !important;\n --ct-popover-header-bg: var(--ct-danger) !important;\n --ct-popover-header-color: var(--ct-white) !important;\n --ct-popover-body-padding-x: 1rem !important;\n --ct-popover-body-padding-y: .5rem !important;\n}\n\n.light-popover {\n --ct-popover-max-width: 200px !important;\n --ct-popover-border-color: var(--ct-light) !important;\n --ct-popover-header-bg: var(--ct-light) !important;\n --ct-popover-header-color: var(--ct-white) !important;\n --ct-popover-body-padding-x: 1rem !important;\n --ct-popover-body-padding-y: .5rem !important;\n}\n\n.dark-popover {\n --ct-popover-max-width: 200px !important;\n --ct-popover-border-color: var(--ct-dark) !important;\n --ct-popover-header-bg: var(--ct-dark) !important;\n --ct-popover-header-color: var(--ct-white) !important;\n --ct-popover-body-padding-x: 1rem !important;\n --ct-popover-body-padding-y: .5rem !important;\n}\n\n.purple-popover {\n --ct-popover-max-width: 200px !important;\n --ct-popover-border-color: var(--ct-purple) !important;\n --ct-popover-header-bg: var(--ct-purple) !important;\n --ct-popover-header-color: var(--ct-white) !important;\n --ct-popover-body-padding-x: 1rem !important;\n --ct-popover-body-padding-y: .5rem !important;\n}\n\n.pink-popover {\n --ct-popover-max-width: 200px !important;\n --ct-popover-border-color: var(--ct-pink) !important;\n --ct-popover-header-bg: var(--ct-pink) !important;\n --ct-popover-header-color: var(--ct-white) !important;\n --ct-popover-body-padding-x: 1rem !important;\n --ct-popover-body-padding-y: .5rem !important;\n}\n\n@media print {\n .leftside-menu,\n.end-bar,\n.page-title-box,\n.navbar-custom,\n.footer {\n display: none;\n }\n .card-body,\n.content-page,\n.end-bar,\n.content,\nbody {\n padding: 0;\n margin: 0;\n }\n .card {\n -webkit-box-shadow: none;\n box-shadow: none;\n }\n}\n.progress-sm {\n height: 5px;\n}\n\n.progress-md {\n height: 8px;\n}\n\n.progress-lg {\n height: 12px;\n}\n\n.progress-xl {\n height: 15px;\n}\n\nhtml {\n position: relative;\n min-height: 100%;\n}\n\n@supports (-webkit-overflow-scrolling: touch) {\n body {\n cursor: pointer;\n }\n}\nbody {\n overflow-x: hidden;\n}\n\nbutton,\na {\n outline: none !important;\n}\n\nlabel {\n font-weight: 500;\n}\n\naddress.address-lg {\n line-height: 24px;\n}\n\nb,\nstrong {\n font-weight: 700;\n}\n\n.table-centered th,\n.table-centered td {\n vertical-align: middle !important;\n}\n\n.table .table-user img {\n height: 30px;\n width: 30px;\n}\n.table > :not(caption) > * > * {\n background-color: var(--ct-table-bg) !important;\n}\n.table.table-bordered tbody {\n border-top: 1px solid;\n border-top-color: inherit;\n}\n\n.table-sm .action-icon {\n font-size: 1rem;\n}\n\n.table-nowrap th,\n.table-nowrap td {\n white-space: nowrap;\n}\n\n.primary-tooltip {\n --ct-tooltip-bg: var(--ct-primary) !important;\n}\n\n.secondary-tooltip {\n --ct-tooltip-bg: var(--ct-secondary) !important;\n}\n\n.success-tooltip {\n --ct-tooltip-bg: var(--ct-success) !important;\n}\n\n.info-tooltip {\n --ct-tooltip-bg: var(--ct-info) !important;\n}\n\n.warning-tooltip {\n --ct-tooltip-bg: var(--ct-warning) !important;\n}\n\n.danger-tooltip {\n --ct-tooltip-bg: var(--ct-danger) !important;\n}\n\n.light-tooltip {\n --ct-tooltip-bg: var(--ct-light) !important;\n}\n\n.dark-tooltip {\n --ct-tooltip-bg: var(--ct-dark) !important;\n}\n\n.purple-tooltip {\n --ct-tooltip-bg: var(--ct-purple) !important;\n}\n\n.pink-tooltip {\n --ct-tooltip-bg: var(--ct-pink) !important;\n}\n\n.progress-w-percent {\n min-height: 20px;\n margin-bottom: 15px;\n}\n.progress-w-percent .progress {\n width: calc(100% - 50px);\n float: right;\n margin-top: 8px;\n}\n.progress-w-percent .progress-value {\n width: 40px;\n float: left;\n text-align: left;\n line-height: 20px;\n}\n\n.widget-icon-box .widget-icon-box-avatar {\n -webkit-transform: rotate(-45deg);\n transform: rotate(-45deg);\n -webkit-transition: -webkit-transform 0.15s;\n transition: -webkit-transform 0.15s;\n transition: transform 0.15s;\n transition: transform 0.15s, -webkit-transform 0.15s;\n}\n.widget-icon-box .widget-icon-box-avatar i {\n -webkit-transform: rotate(45deg);\n transform: rotate(45deg);\n -webkit-transition: -webkit-transform 0.15s;\n transition: -webkit-transform 0.15s;\n transition: transform 0.15s;\n transition: transform 0.15s, -webkit-transform 0.15s;\n}\n.widget-icon-box:hover .widget-icon-box-avatar {\n -webkit-transform: rotate(0deg);\n transform: rotate(0deg);\n}\n.widget-icon-box:hover .widget-icon-box-avatar i {\n -webkit-transform: rotate(0deg);\n transform: rotate(0deg);\n}\n\n.widget-flat {\n position: relative;\n overflow: hidden;\n}\n@media (min-width: 1200px) and (max-width: 1500px) {\n .widget-flat i.widget-icon {\n display: none;\n }\n}\n\n.widget-icon {\n color: var(--ct-primary);\n font-size: 20px;\n background-color: rgba(var(--ct-primary-rgb), 0.25);\n height: 40px;\n width: 40px;\n text-align: center;\n line-height: 40px;\n border-radius: 3px;\n display: inline-block;\n}\n\n.dash-item-overlay {\n position: absolute;\n text-align: left;\n left: 8%;\n max-width: 350px;\n padding: 20px;\n z-index: 1;\n}\n\n.chart-widget-list p {\n border-bottom: 1px solid var(--ct-border-color);\n margin-bottom: 0.5rem;\n padding-bottom: 0.5rem;\n}\n\n.timeline-alt {\n padding: 20px 0;\n position: relative;\n}\n.timeline-alt .timeline-item {\n position: relative;\n}\n.timeline-alt .timeline-item:before {\n background-color: var(--ct-tertiary-bg);\n bottom: 0;\n content: \"\";\n right: 9px;\n position: absolute;\n top: 20px;\n width: 2px;\n z-index: 0;\n}\n.timeline-alt .timeline-item .timeline-icon {\n float: right;\n height: 20px;\n width: 20px;\n border-radius: 50%;\n border: 2px solid transparent;\n font-size: 12px;\n text-align: center;\n line-height: 16px;\n background-color: #fff;\n}\n.timeline-alt .timeline-item .timeline-item-info {\n margin-right: 30px;\n}\n.timeline-alt .timeline-item:last-of-type::before {\n display: none;\n}\n\n.inbox-widget .inbox-item {\n border-bottom: 1px solid var(--ct-border-color);\n overflow: hidden;\n padding: 0.625rem 0;\n position: relative;\n}\n.inbox-widget .inbox-item:last-of-type {\n border-bottom: none;\n}\n.inbox-widget .inbox-item .inbox-item-img {\n display: block;\n float: right;\n margin-left: 15px;\n width: 40px;\n}\n.inbox-widget .inbox-item .inbox-item-img img {\n width: 40px;\n}\n.inbox-widget .inbox-item .inbox-item-author {\n color: var(--ct-tertiary-color);\n display: block;\n margin-bottom: 3px;\n}\n.inbox-widget .inbox-item .inbox-item-text {\n color: var(--ct-gray-500);\n display: block;\n font-size: 0.8125rem;\n margin: 0;\n}\n.inbox-widget .inbox-item .inbox-item-date {\n color: var(--ct-gray-600);\n font-size: 0.6875rem;\n position: absolute;\n left: 5px;\n top: 10px;\n}\n\n.tilebox-one i {\n position: absolute;\n left: 1.5rem;\n font-size: 2rem;\n opacity: 0.3;\n}\n\n.toll-free-box i {\n position: absolute;\n right: 0;\n bottom: -15px;\n font-size: 4rem;\n opacity: 0.4;\n -webkit-transform: rotate(-30deg);\n transform: rotate(-30deg);\n}\n\n.cta-box .cta-box-title {\n font-size: 20px;\n line-height: 30px;\n}\n\n.conversation-list {\n list-style: none;\n padding: 0 15px;\n}\n.conversation-list li {\n margin-bottom: 20px;\n}\n.conversation-list li .conversation-actions {\n float: left;\n display: none;\n}\n.conversation-list li:hover .conversation-actions {\n display: block;\n}\n.conversation-list .chat-avatar {\n float: right;\n text-align: center;\n width: 32px;\n}\n.conversation-list .chat-avatar img {\n border-radius: 100%;\n width: 100%;\n}\n.conversation-list .chat-avatar i {\n font-size: 12px;\n font-style: normal;\n}\n.conversation-list .ctext-wrap {\n background: var(--ct-light);\n -webkit-box-shadow: var(--ct-box-shadow);\n box-shadow: var(--ct-box-shadow);\n border-radius: 3px;\n display: inline-block;\n padding: 12px;\n position: relative;\n}\n.conversation-list .ctext-wrap i {\n display: block;\n font-size: 12px;\n font-style: normal;\n font-weight: bold;\n position: relative;\n}\n.conversation-list .ctext-wrap p {\n margin: 0;\n padding-top: 3px;\n}\n.conversation-list .ctext-wrap:after {\n right: -11px;\n top: 0;\n border: solid transparent;\n content: \" \";\n height: 0;\n width: 0;\n position: absolute;\n pointer-events: none;\n border-top-color: var(--ct-light);\n border-width: 6px;\n margin-left: -1px;\n border-left-color: var(--ct-light);\n}\n.conversation-list .conversation-text {\n float: right;\n margin-right: 12px;\n width: 70%;\n}\n.conversation-list .odd .chat-avatar {\n float: left !important;\n}\n.conversation-list .odd .conversation-text {\n float: left !important;\n margin-left: 12px;\n text-align: left;\n width: 70% !important;\n color: #fff;\n}\n.conversation-list .odd .ctext-wrap {\n background-color: var(--ct-primary);\n -webkit-box-shadow: var(--ct-box-shadow-lg);\n box-shadow: var(--ct-box-shadow-lg);\n}\n.conversation-list .odd .ctext-wrap:after {\n border-color: transparent;\n border-right-color: var(--ct-primary);\n border-top-color: var(--ct-primary);\n left: -8px;\n right: auto;\n}\n.conversation-list .odd .conversation-actions {\n float: right;\n}\n\n.calendar-widget .datepicker-inline,\n.calendar-widget table {\n width: 100%;\n}\n.calendar-widget .datepicker-inline tr td,\n.calendar-widget .datepicker-inline tr th,\n.calendar-widget .datepicker-inline tr td.active.day,\n.calendar-widget .datepicker-inline tr td.today.day,\n.calendar-widget table tr td,\n.calendar-widget table tr th,\n.calendar-widget table tr td.active.day,\n.calendar-widget table tr td.today.day {\n background-color: transparent !important;\n}\n.calendar-widget .datepicker-inline tr td.active.day,\n.calendar-widget .datepicker-inline tr td.today.day,\n.calendar-widget table tr td.active.day,\n.calendar-widget table tr td.today.day {\n color: #f7473a !important;\n text-shadow: none;\n font-weight: 700;\n}\n.calendar-widget .datepicker-inline tr td.active.day:hover,\n.calendar-widget .datepicker-inline tr td.today.day:hover,\n.calendar-widget table tr td.active.day:hover,\n.calendar-widget table tr td.today.day:hover {\n background-color: transparent !important;\n}\n.calendar-widget .datepicker-inline td,\n.calendar-widget .datepicker-inline th,\n.calendar-widget table td,\n.calendar-widget table th {\n height: 45px;\n}\n.calendar-widget .datepicker-inline .datepicker-switch,\n.calendar-widget .datepicker-inline .next,\n.calendar-widget .datepicker-inline .prev,\n.calendar-widget table .datepicker-switch,\n.calendar-widget table .next,\n.calendar-widget table .prev {\n font-size: 1.1rem;\n background-color: rgba(var(--ct-primary-rgb), 0.1) !important;\n border-radius: 0;\n color: var(--ct-primary);\n}\n\n.card-bg-img {\n background-size: cover;\n background-position: left center;\n background-repeat: no-repeat;\n}\n\n.social-list-item {\n height: 2rem;\n width: 2rem;\n line-height: calc(2rem - 4px);\n display: block;\n border: 2px solid var(--ct-gray-500);\n border-radius: 50%;\n color: var(--ct-gray-500);\n}\n.social-list-item:hover {\n color: var(--ct-gray-600);\n border-color: var(--ct-gray-600);\n}\n\n.horizontal-steps {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n position: relative;\n -webkit-box-orient: horizontal;\n -webkit-box-direction: normal;\n -ms-flex-direction: row;\n flex-direction: row;\n -webkit-box-pack: justify;\n -ms-flex-pack: justify;\n justify-content: space-between;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n width: 100%;\n}\n.horizontal-steps:before {\n content: \"\";\n display: block;\n position: absolute;\n width: 100%;\n height: 0.2em;\n background-color: var(--ct-border-color);\n}\n.horizontal-steps .process-line {\n display: block;\n position: absolute;\n width: 50%;\n height: 0.2em;\n background-color: var(--ct-primary);\n}\n.horizontal-steps .horizontal-steps-content {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n position: relative;\n -webkit-box-orient: horizontal;\n -webkit-box-direction: normal;\n -ms-flex-direction: row;\n flex-direction: row;\n -webkit-box-pack: justify;\n -ms-flex-pack: justify;\n justify-content: space-between;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n width: 100%;\n}\n.horizontal-steps .horizontal-steps-content .step-item {\n display: block;\n position: relative;\n bottom: calc(100% + 1em);\n height: 8px;\n width: 8px;\n margin: 0 2em;\n -webkit-box-sizing: content-box;\n box-sizing: content-box;\n color: var(--ct-primary);\n background-color: currentColor;\n border: 0.25em solid var(--ct-body-bg);\n border-radius: 50%;\n z-index: 5;\n}\n.horizontal-steps .horizontal-steps-content .step-item:first-child {\n margin-right: 0;\n}\n.horizontal-steps .horizontal-steps-content .step-item:last-child {\n margin-left: 0;\n color: #17a497;\n}\n.horizontal-steps .horizontal-steps-content .step-item span {\n position: absolute;\n top: calc(100% + 1em);\n right: 50%;\n -webkit-transform: translateX(50%);\n transform: translateX(50%);\n white-space: nowrap;\n color: var(--ct-gray-500);\n}\n.horizontal-steps .horizontal-steps-content .step-item.current:before {\n content: \"\";\n display: block;\n position: absolute;\n top: 48%;\n right: 48%;\n padding: 1em;\n background-color: currentColor;\n border-radius: 50%;\n opacity: 0;\n z-index: -1;\n -webkit-animation-name: animation-steps-current;\n animation-name: animation-steps-current;\n -webkit-animation-duration: 2s;\n animation-duration: 2s;\n -webkit-animation-iteration-count: infinite;\n animation-iteration-count: infinite;\n -webkit-animation-timing-function: ease-out;\n animation-timing-function: ease-out;\n}\n.horizontal-steps .horizontal-steps-content .step-item.current span {\n color: var(--ct-primary) !important;\n}\n\n@-webkit-keyframes animation-steps-current {\n from {\n -webkit-transform: translate(50%, -50%) scale(0);\n transform: translate(50%, -50%) scale(0);\n opacity: 1;\n }\n to {\n -webkit-transform: translate(50%, -50%) scale(1);\n transform: translate(50%, -50%) scale(1);\n opacity: 0;\n }\n}\n\n@keyframes animation-steps-current {\n from {\n -webkit-transform: translate(50%, -50%) scale(0);\n transform: translate(50%, -50%) scale(0);\n opacity: 1;\n }\n to {\n -webkit-transform: translate(50%, -50%) scale(1);\n transform: translate(50%, -50%) scale(1);\n opacity: 0;\n }\n}\n@media (max-width: 767.98px) {\n .horizontal-steps .horizontal-steps-content .step-item span {\n white-space: inherit;\n }\n}\n#preloader {\n position: fixed;\n top: 0;\n right: 0;\n left: 0;\n bottom: 0;\n background-color: var(--ct-tertiary-bg);\n z-index: 9999;\n}\n\n#status {\n width: 80px;\n height: 80px;\n position: absolute;\n right: 50%;\n top: 50%;\n margin: -40px -40px 0 0;\n}\n\n@-webkit-keyframes bouncing-loader {\n to {\n opacity: 0.1;\n -webkit-transform: translate3d(0, -16px, 0);\n transform: translate3d(0, -16px, 0);\n }\n}\n\n@keyframes bouncing-loader {\n to {\n opacity: 0.1;\n -webkit-transform: translate3d(0, -16px, 0);\n transform: translate3d(0, -16px, 0);\n }\n}\n.bouncing-loader {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-pack: center;\n -ms-flex-pack: center;\n justify-content: center;\n}\n.bouncing-loader > div {\n width: 13px;\n height: 13px;\n margin: 32px 3px;\n background: var(--ct-primary);\n border-radius: 50%;\n -webkit-animation: bouncing-loader 0.6s infinite alternate;\n animation: bouncing-loader 0.6s infinite alternate;\n}\n.bouncing-loader > div:nth-child(2) {\n -webkit-animation-delay: 0.2s;\n animation-delay: 0.2s;\n background: #f7473a;\n}\n.bouncing-loader > div:nth-child(3) {\n -webkit-animation-delay: 0.4s;\n animation-delay: 0.4s;\n background: #17a497;\n}\n\n.auth-brand {\n margin-bottom: 2rem;\n}\n.auth-brand .logo-dark {\n display: block;\n}\n.auth-brand .logo-light {\n display: none;\n}\n\nhtml[data-theme=dark] .auth-brand .logo-dark {\n display: none;\n}\nhtml[data-theme=dark] .auth-brand .logo-light {\n display: block;\n}\n\nbody.authentication-bg .account-pages {\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n min-height: 100vh;\n}\n\n.authentication-bg.enlarged,\n.auth-fluid-pages.enlarged,\nbody.auth-fluid-pages[data-sidenav-size=condensed] {\n min-height: 100px;\n}\n\n.logout-icon {\n width: 140px;\n}\n\n.auth-fluid {\n position: relative;\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n -webkit-box-align: center;\n -ms-flex-align: center;\n align-items: center;\n min-height: 100vh;\n -webkit-box-orient: horizontal;\n -webkit-box-direction: normal;\n -ms-flex-direction: row;\n flex-direction: row;\n -webkit-box-align: stretch;\n -ms-flex-align: stretch;\n align-items: stretch;\n background: url(\"../images/bg-auth.jpg\") center;\n background-size: cover;\n}\n.auth-fluid .auth-fluid-form-box {\n max-width: 480px;\n border-radius: 0;\n z-index: 2;\n padding: 3rem;\n background-color: var(--ct-secondary-bg);\n position: relative;\n width: 100%;\n border-top: 4px double #4254ba;\n}\n.auth-fluid .auth-fluid-left,\n.auth-fluid .auth-fluid-right {\n padding: 6rem 3rem;\n -webkit-box-flex: 1;\n -ms-flex: 1;\n flex: 1;\n position: relative;\n color: #fff;\n background-color: rgba(0, 0, 0, 0.3);\n}\n\n.auth-user-testimonial {\n position: absolute;\n margin: 0 auto;\n padding: 0 1.75rem;\n bottom: 3rem;\n right: 0;\n left: 0;\n}\n.auth-user-testimonial p.lead {\n font-size: 1.125rem;\n margin: 0 auto 20px auto;\n max-width: 700px;\n}\n\n@media (max-width: 991.98px) {\n .auth-fluid {\n display: block;\n }\n .auth-fluid .auth-fluid-form-box {\n max-width: 100%;\n min-height: 100vh;\n }\n .auth-fluid .auth-fluid-left {\n display: none;\n }\n}\nhtml[data-bs-theme=dark] .auth-brand .logo-light {\n display: block;\n}\nhtml[data-bs-theme=dark] .auth-brand .logo-dark {\n display: none;\n}\n\n.scrollspy-example {\n position: relative;\n height: 200px;\n margin-top: 0.5rem;\n overflow: auto;\n}\n\n.grid-structure .grid-container {\n background-color: var(--ct-tertiary-bg);\n margin-bottom: 10px;\n font-size: 0.8rem;\n font-weight: 600;\n padding: 10px 20px;\n}\n\n.icons-list-demo div {\n cursor: pointer;\n line-height: 45px;\n white-space: nowrap;\n text-overflow: ellipsis;\n display: block;\n overflow: hidden;\n}\n.icons-list-demo div p {\n margin-bottom: 0;\n line-height: inherit;\n}\n.icons-list-demo div:hover, .icons-list-demo div:hover i {\n color: var(--ct-primary);\n}\n.icons-list-demo i {\n text-align: center;\n vertical-align: middle;\n font-size: 24px;\n width: 50px;\n height: 50px;\n line-height: 50px;\n margin-left: 12px;\n border-radius: 3px;\n display: inline-block;\n -webkit-transition: all 0.2s;\n transition: all 0.2s;\n}\n\n.text-error {\n color: var(--ct-primary);\n text-shadow: rgba(var(--ct-primary-rgb), 0.3) -5px 1px, rgba(var(--ct-primary-rgb), 0.2) -10px 3px;\n font-size: 5.25rem;\n line-height: 5.625rem;\n}\n\n.faq-question-q-box {\n height: 30px;\n width: 30px;\n color: var(--ct-primary);\n background-color: rgba(var(--ct-primary-rgb), 0.25);\n -webkit-box-shadow: 0 2px 5px 0 rgba(27, 23, 30, 0.3);\n box-shadow: 0 2px 5px 0 rgba(27, 23, 30, 0.3);\n text-align: center;\n border-radius: 50%;\n float: right;\n font-weight: 700;\n line-height: 30px;\n}\n\n.faq-question {\n margin-top: 0;\n margin-right: 50px;\n font-weight: 500;\n font-size: 16px;\n color: var(--ct-tertiary-color);\n}\n\n.faq-answer {\n margin-right: 50px;\n}\n\n.pricing-column {\n position: relative;\n}\n\n.ribbon {\n position: absolute;\n right: 0;\n top: -5px;\n z-index: 1;\n overflow: hidden;\n width: 75px;\n height: 75px;\n text-align: left;\n}\n.ribbon span {\n font-size: 10px;\n color: #fff;\n text-transform: uppercase;\n text-align: center;\n line-height: 20px;\n -webkit-transform: rotate(45deg);\n transform: rotate(45deg);\n width: 100px;\n display: block;\n -webkit-box-shadow: 0 2px 5px 0 rgba(27, 23, 30, 0.3);\n box-shadow: 0 2px 5px 0 rgba(27, 23, 30, 0.3);\n background: #4254ba;\n position: absolute;\n top: 19px;\n right: -21px;\n}\n.ribbon span:before {\n content: \"\";\n position: absolute;\n right: 0px;\n top: 100%;\n z-index: -1;\n border-right: 3px solid #4254ba;\n border-left: 3px solid transparent;\n border-bottom: 3px solid transparent;\n border-top: 3px solid #4254ba;\n}\n.ribbon span:after {\n content: \"\";\n position: absolute;\n left: 0px;\n top: 100%;\n z-index: -1;\n border-right: 3px solid transparent;\n border-left: 3px solid #4254ba;\n border-bottom: 3px solid transparent;\n border-top: 3px solid #4254ba;\n}\n\n.maintenance-icon {\n font-size: 22px;\n -webkit-box-shadow: 0 2px 5px 0 rgba(27, 23, 30, 0.3);\n box-shadow: 0 2px 5px 0 rgba(27, 23, 30, 0.3);\n height: 60px;\n display: inline-block;\n width: 60px;\n line-height: 58px;\n border-radius: 50%;\n}\n\n.board {\n display: block;\n white-space: nowrap;\n overflow-x: auto;\n overflow-y: hidden;\n}\n\n.tasks {\n display: inline-block;\n width: 22rem;\n padding: 0 1rem 1rem 1rem;\n border: 1px solid var(--ct-border-color);\n vertical-align: top;\n margin-bottom: 1.25rem;\n border-radius: var(--ct-border-radius);\n}\n.tasks.tasks:not(:last-child) {\n margin-left: 1.25rem;\n}\n.tasks .card {\n white-space: normal;\n margin-top: 1rem;\n}\n.tasks .task-header {\n padding-top: 1rem;\n}\n\n.task-list-items {\n min-height: 100px;\n position: relative;\n}\n.task-list-items:before {\n content: \"No Tasks\";\n position: absolute;\n line-height: 110px;\n width: 100%;\n text-align: center;\n font-weight: 600;\n}\n\n.task-modal-content .form-control-light {\n background-color: var(--ct-light) !important;\n border-color: var(--ct-border-color) !important;\n}\n\n.gantt-task-details {\n min-width: 220px;\n}\n\n.page-aside-left {\n width: 240px;\n float: right;\n padding: 0 10px 20px 20px;\n position: relative;\n}\n.page-aside-left:before {\n content: \"\";\n background-color: var(--ct-body-bg);\n width: 5px;\n position: absolute;\n left: -15px;\n height: 100%;\n bottom: -1.5rem;\n}\n\n.page-aside-right {\n margin: -1.5rem 250px -1.5rem 0;\n border-right: 5px solid var(--ct-body-bg);\n padding: 1.5rem 25px 1.5rem 0;\n}\n\n.email-list {\n display: block;\n padding-right: 0;\n overflow: hidden;\n}\n.email-list > li {\n position: relative;\n display: block;\n height: 51px;\n line-height: 50px;\n cursor: default;\n -webkit-transition-duration: 0.3s;\n transition-duration: 0.3s;\n}\n.email-list > li a {\n color: var(--ct-secondary-color);\n}\n.email-list > li a:hover {\n color: var(--ct-tertiary-color);\n}\n.email-list > li .col-mail {\n float: right;\n position: relative;\n}\n.email-list > li .email-sender-info {\n width: 320px;\n}\n.email-list > li .email-sender-info .star-toggle,\n.email-list > li .email-sender-info .checkbox-wrapper-mail {\n display: block;\n float: right;\n}\n.email-list > li .email-sender-info .checkbox-wrapper-mail {\n margin: 15px 20px 0 10px;\n cursor: pointer;\n height: 20px;\n width: 20px;\n}\n.email-list > li .email-sender-info .star-toggle {\n color: var(--ct-gray-500);\n margin-right: 10px;\n font-size: 18px;\n}\n.email-list > li .email-sender-info .email-title {\n position: absolute;\n top: 0;\n right: 100px;\n left: 0;\n text-overflow: ellipsis;\n overflow: hidden;\n white-space: nowrap;\n margin-bottom: 0;\n line-height: 50px;\n}\n.email-list > li .email-content {\n position: absolute;\n top: 0;\n right: 320px;\n left: 0;\n bottom: 0;\n}\n.email-list > li .email-content .email-subject,\n.email-list > li .email-content .email-date {\n position: absolute;\n top: 0;\n}\n.email-list > li .email-content .email-subject {\n right: 0;\n left: 110px;\n text-overflow: ellipsis;\n overflow: hidden;\n white-space: nowrap;\n}\n.email-list > li .email-content .email-date {\n left: 0;\n width: 100px;\n text-align: left;\n padding-right: 10px;\n}\n.email-list > li.active, .email-list > li.mail-selected {\n background: var(--ct-tertiary-bg);\n -webkit-transition-duration: 0.05s;\n transition-duration: 0.05s;\n}\n.email-list > li.unread a {\n font-weight: 500;\n color: var(--ct-dark);\n}\n.email-list > li.unread a i {\n font-weight: normal;\n}\n.email-list > li .email-action-icons {\n opacity: 0;\n}\n.email-list > li .email-action-icons ul {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n position: absolute;\n -webkit-transition: all 0.5s;\n transition: all 0.5s;\n left: -180px;\n}\n.email-list > li .email-action-icons ul li {\n margin: 0 8px;\n}\n.email-list > li .email-action-icons ul .email-action-icons-item {\n font-size: 20px;\n -webkit-transition: all 0.5s;\n transition: all 0.5s;\n}\n.email-list > li .email-action-icons ul .email-action-icons-item:hover {\n color: #f7473a;\n}\n.email-list > li:hover {\n background: var(--ct-tertiary-bg);\n -webkit-transition-duration: 0.05s;\n transition-duration: 0.05s;\n}\n.email-list > li:hover .email-action-icons {\n opacity: 1;\n}\n.email-list > li:hover .email-action-icons ul {\n -webkit-transition: all 0.5s;\n transition: all 0.5s;\n left: 10px;\n}\n.email-list > li:hover .email-content .email-date {\n opacity: 0;\n}\n.email-list > li:hover .email-content .email-subject {\n left: 180px;\n -webkit-transition: all 0.5s;\n transition: all 0.5s;\n}\n\n.email-menu-list a {\n color: var(--ct-secondary-color);\n padding: 8px 5px;\n display: block;\n}\n.email-menu-list a:hover {\n color: var(--ct-tertiary-color);\n}\n.email-menu-list a .badge {\n margin-top: 3px;\n}\n\n.labels-list a {\n padding: 7px 5px;\n}\n\n.write-mdg-box .CodeMirror {\n height: 150px;\n}\n\n@media (max-width: 648px) {\n .page-aside-right {\n width: 100%;\n float: none;\n padding: 0 10px 20px 10px;\n }\n .page-aside-right:before {\n width: 0;\n }\n .page-aside-right {\n margin-right: 0;\n border: 0;\n padding-right: 0;\n }\n .email-list li .email-sender-info .checkbox-wrapper-mail {\n margin-right: 0;\n }\n}\n@media (max-width: 520px) {\n .page-aside-left > .btn-group {\n margin-bottom: 10px;\n }\n .email-list li .email-sender-info {\n width: 150px;\n }\n .email-list li .email-sender-info .email-title {\n right: 80px;\n }\n .email-list li .email-content {\n display: none;\n }\n}\n.timeline {\n margin-bottom: 50px;\n position: relative;\n}\n.timeline:before {\n background-color: var(--ct-border-color);\n bottom: 0;\n content: \"\";\n right: 50%;\n position: absolute;\n top: 30px;\n width: 2px;\n z-index: 0;\n}\n\n.timeline-show {\n position: relative;\n}\n.timeline-show .time-show-name {\n display: inline-block;\n border-radius: 4px;\n background-color: var(--ct-border-color);\n padding: 7px 15px;\n}\n\n.timeline-box {\n background-color: var(--ct-secondary-bg);\n -webkit-box-shadow: var(--ct-box-shadow);\n box-shadow: var(--ct-box-shadow);\n display: block;\n margin: 15px 0;\n padding: 1.25rem;\n border-radius: var(--ct-border-radius);\n}\n\n.timeline-album {\n margin-top: 12px;\n}\n.timeline-album a {\n display: inline-block;\n margin-left: 5px;\n}\n.timeline-album img {\n height: 36px;\n width: auto;\n border-radius: 3px;\n}\n\n@media (min-width: 768px) {\n .timeline .timeline-box {\n margin-right: 65px;\n }\n .timeline .timeline-icon {\n background: var(--ct-border-color);\n border-radius: 50%;\n display: block;\n height: 24px;\n right: -11px;\n margin-top: -12px;\n position: absolute;\n text-align: center;\n top: 50%;\n width: 24px;\n }\n .timeline .timeline-icon i {\n color: var(--ct-secondary-color);\n font-size: 1rem;\n vertical-align: middle;\n }\n .timeline .timeline-desk {\n position: relative;\n display: table-cell;\n vertical-align: top;\n width: 50%;\n }\n .timeline-lg-item {\n display: -webkit-box;\n display: -ms-flexbox;\n display: flex;\n }\n .timeline-lg-item:before {\n content: \"\";\n display: block;\n width: 50%;\n }\n .timeline-lg-item .timeline-desk .arrow {\n border-bottom: 12px solid transparent;\n border-left: 12px solid var(--ct-secondary-bg) !important;\n border-top: 12px solid transparent;\n display: block;\n height: 0;\n right: 53px;\n margin-top: -12px;\n position: absolute;\n top: 50%;\n width: 0;\n }\n .timeline-lg-item.timeline-item-left {\n text-align: left;\n }\n .timeline-lg-item.timeline-item-right:after {\n content: \"\";\n display: block;\n width: 50%;\n }\n .timeline-lg-item.timeline-item-left .timeline-desk .arrow-alt {\n border-bottom: 12px solid transparent;\n border-right: 12px solid var(--ct-secondary-bg) !important;\n border-top: 12px solid transparent;\n display: block;\n height: 0;\n right: auto;\n margin-top: -12px;\n position: absolute;\n left: 53px;\n top: 50%;\n width: 0;\n }\n .timeline-lg-item.timeline-item-left .timeline-desk .album {\n float: left;\n margin-top: 20px;\n }\n .timeline-lg-item.timeline-item-left .timeline-desk .album a {\n float: left;\n margin-right: 5px;\n }\n .timeline-lg-item.timeline-item-left .timeline-icon {\n right: auto;\n left: -13px;\n }\n .timeline-lg-item.timeline-item-right:before {\n display: none;\n }\n .timeline-lg-item.timeline-item-left .timeline-box {\n margin-left: 65px;\n margin-right: 0;\n }\n}\n@media (max-width: 767.98px) {\n .timeline .timeline-icon {\n display: none;\n }\n}\n.apex-charts {\n min-height: 10px !important;\n}\n.apex-charts text {\n font-family: var(--ct-font-sans-serif) !important;\n}\n.apex-charts .apexcharts-canvas {\n margin: 0 auto;\n}\n\n.apexcharts-tooltip-title,\n.apexcharts-tooltip-text {\n font-family: var(--ct-font-sans-serif) !important;\n}\n\n.apexcharts-tooltip {\n border: 1px solid var(--ct-border-color) !important;\n background-color: var(--ct-secondary-bg) !important;\n -webkit-box-shadow: var(--ct-box-shadow) !important;\n box-shadow: var(--ct-box-shadow) !important;\n}\n.apexcharts-tooltip * {\n font-family: var(--ct-font-sans-serif) !important;\n color: var(--ct-tertiary-color) !important;\n}\n.apexcharts-tooltip .apexcharts-tooltip-title {\n background-color: rgba(var(--ct-light-rgb), 0.75) !important;\n border-bottom: 1px solid var(--ct-border-color) !important;\n}\n\n.apexcharts-tooltip.apexcharts-theme-dark * {\n color: #fff !important;\n}\n\n.apexcharts-legend-series {\n font-weight: 600;\n}\n\n.apexcharts-gridline,\n.apexcharts-xaxis-tick {\n pointer-events: none;\n stroke: rgba(var(--ct-light-rgb), 0.5) !important;\n}\n\n.apexcharts-legend-text {\n color: var(--ct-tertiary-color) !important;\n font-family: var(--ct-font-sans-serif) !important;\n font-size: 13px !important;\n vertical-align: middle;\n}\n\n.apexcharts-legend-marker {\n vertical-align: middle;\n margin-left: 5px !important;\n}\n\n.apexcharts-pie-label {\n fill: #fff !important;\n}\n\n.apexcharts-title-text,\n.apexcharts-subtitle-text {\n fill: var(--ct-secondary-color);\n font-family: var(--ct-font-sans-serif) !important;\n}\n\n.apexcharts-yaxis text,\n.apexcharts-xaxis text {\n font-family: var(--ct-font-sans-serif) !important;\n fill: var(--ct-secondary-color);\n}\n\n.apexcharts-yaxis-title {\n font-weight: 500;\n}\n\n.apexcharts-annotation-rect {\n fill: var(--ct-tertiary-bg) !important;\n}\n\n.apexcharts-xaxis-annotations rect,\n.apexcharts-yaxis-annotations rect {\n stroke: none;\n}\n\n.apex-toolbar .btn-light.active {\n background-color: var(--ct-primary);\n border-color: var(--ct-primary);\n color: #fff;\n}\n\n.apexcharts-xaxistooltip {\n background-color: var(--ct-secondary-bg) !important;\n border: 0 solid var(--ct-border-color) !important;\n -webkit-box-shadow: var(--ct-box-shadow) !important;\n box-shadow: var(--ct-box-shadow) !important;\n color: var(--ct-body-color) !important;\n}\n\n.apexcharts-xaxistooltip-bottom:before {\n border-bottom-color: var(--ct-border-color) !important;\n}\n\n.apexcharts-xaxistooltip-text,\n.apexcharts-datalabels text {\n font-family: var(--ct-font-sans-serif) !important;\n}\n\n.apexcharts-datalabel-value {\n fill: var(--ct-body-color) !important;\n}\n\n.apexcharts-menu {\n background: var(--ct-secondary-bg) !important;\n padding: 0.25rem 0 !important;\n -webkit-box-shadow: var(--ct-box-shadow) !important;\n box-shadow: var(--ct-box-shadow) !important;\n border: 0 solid var(--ct-border-color) !important;\n text-align: center !important;\n}\n.apexcharts-menu .apexcharts-menu-item:hover {\n color: var(--ct-primary) !important;\n background-color: var(--ct-primary-bg-subtle) !important;\n}\n\n.apexcharts-radar-series polygon {\n fill: transparent;\n stroke: var(--ct-border-color);\n}\n.apexcharts-radar-series line {\n stroke: var(--ct-border-color);\n}\n\n.apexcharts-track path {\n stroke: var(--ct-tertiary-bg);\n}\n\n.apexcharts-marker {\n stroke: var(--ct-body-bg);\n}\n\n.calendar {\n float: right;\n margin-bottom: 0;\n}\n\n.fc-view {\n margin-top: 30px;\n}\n\n.none-border .modal-footer {\n border-top: none;\n}\n\n.fc-toolbar {\n margin: 6px 0 5px 0 !important;\n}\n.fc-toolbar h2, .fc-toolbar .h2 {\n font-size: 1.25rem !important;\n line-height: 1.875rem;\n text-transform: uppercase;\n}\n\n.fc-day-grid-event .fc-time {\n font-weight: 600;\n}\n\nth.fc-day-header {\n padding: 0.5rem 0;\n}\n\n.fc-day {\n background: transparent;\n}\n\n.fc-toolbar .fc-state-active,\n.fc-toolbar .ui-state-active,\n.fc-toolbar button:focus,\n.fc-toolbar button:hover,\n.fc-toolbar .ui-state-hover {\n z-index: 0;\n}\n\n.fc th.fc-widget-header {\n background: var(--ct-tertiary-bg);\n font-size: 13px;\n line-height: 20px;\n padding: 10px 0;\n text-transform: uppercase;\n font-weight: 600;\n}\n.fc .fc-daygrid-body,\n.fc .fc-scrollgrid-section-body table,\n.fc .fc-scrollgrid-section-footer table {\n width: 100% !important;\n}\n\n.fc-unthemed th,\n.fc-unthemed td,\n.fc-unthemed thead,\n.fc-unthemed tbody,\n.fc-unthemed .fc-divider,\n.fc-unthemed .fc-row,\n.fc-unthemed .fc-popover {\n border-color: var(--ct-border-color);\n}\n.fc-unthemed td.fc-today,\n.fc-unthemed .fc-divider {\n background: var(--ct-tertiary-bg);\n}\n\n.fc-button {\n background: var(--ct-tertiary-bg);\n border: none;\n color: var(--ct-tertiary-color);\n text-transform: capitalize;\n -webkit-box-shadow: none;\n box-shadow: none;\n border-radius: 3px;\n margin: 0 3px;\n padding: 6px 12px;\n height: auto;\n}\n\n.fc-text-arrow {\n font-family: inherit;\n font-size: 1rem;\n}\n\n.fc-state-hover,\n.fc-state-highlight,\n.fc-cell-overlay {\n background: var(--ct-tertiary-bg);\n}\n\n.fc-state-down,\n.fc-state-active,\n.fc-state-disabled {\n background-color: var(--ct-primary);\n color: #fff;\n text-shadow: none;\n}\n\n.fc-unthemed .fc-today {\n background: #fff;\n}\n\n.fc-event {\n border-radius: 2px;\n border: none;\n cursor: move;\n font-size: 0.8125rem;\n margin: 5px 7px;\n padding: 5px 5px;\n text-align: center;\n color: #fff;\n -webkit-box-shadow: var(--ct-box-shadow-lg);\n box-shadow: var(--ct-box-shadow-lg);\n}\n.fc-event.bg-dark .fc-event-time,\n.fc-event.bg-dark .fc-event-title {\n color: var(--ct-emphasis-color);\n}\n.fc-event.bg-dark .fc-daygrid-event-dot {\n border-color: var(--ct-border-color);\n}\n\n.external-event {\n cursor: move;\n margin: 10px 0;\n padding: 8px 10px;\n color: #fff;\n border-radius: 4px;\n}\n\n.fc-basic-view td.fc-week-number span {\n padding-left: 8px;\n}\n.fc-basic-view td.fc-day-number {\n padding-left: 8px;\n}\n.fc-basic-view .fc-content {\n color: #fff;\n}\n\n.fc-time-grid-event .fc-content {\n color: #fff;\n}\n\n.fc-daygrid-day-number {\n float: left;\n height: 20px;\n width: 20px;\n text-align: center;\n line-height: 20px;\n background-color: var(--ct-tertiary-bg);\n border-radius: 50%;\n margin: 5px;\n font-size: 11px;\n padding: 0 !important;\n}\n\n.fc-daygrid-event-dot {\n border-color: #fff;\n}\n\n.fc-event-time,\n.fc-event-title {\n color: #fff;\n}\n\n.table-active,\n.table-active > td,\n.table-active > th,\n.fc .fc-list-sticky .fc-list-day > * {\n background-color: transparent;\n}\n\n.fc .fc-list-event:hover td {\n background-color: inherit;\n}\n\n@media (max-width: 767.98px) {\n .fc-toolbar {\n display: block !important;\n }\n .fc-toolbar .fc-toolbar-chunk {\n margin: 6px 0;\n }\n .fc-toolbar .fc-right,\n.fc-toolbar .fc-left,\n.fc-toolbar .fc-center {\n float: none;\n display: block;\n clear: both;\n margin: 10px 0;\n }\n .fc .fc-toolbar > * > * {\n float: none;\n }\n .fc-today-button {\n display: none;\n }\n}\n.fc-toolbar .btn {\n --ct-btn-padding-y: 0.28rem;\n --ct-btn-padding-x: 0.8rem;\n --ct-btn-font-size: 0.85rem;\n --ct-btn-border-radius: var(--ct-border-radius-sm);\n}\n\n.fc-list-item-title,\n.fc-list-item-time {\n color: #fff;\n}\n\n#calendar .table-bordered td,\n#calendar .table-bordered th {\n border: var(--ct-border-width) solid var(--ct-border-color);\n}\n\n[dir=rtl] .fc-toolbar-chunk .btn-group .btn:first-child {\n border-top-right-radius: 0px !important;\n border-bottom-right-radius: 0px !important;\n border-radius: var(--ct-border-radius-sm);\n}\n[dir=rtl] .fc-toolbar-chunk .btn-group .btn:last-child {\n border-top-left-radius: 0px !important;\n border-bottom-left-radius: 0px !important;\n border-radius: var(--ct-border-radius-sm);\n}\n\n.chartjs-chart {\n margin: auto;\n position: relative;\n width: 100%;\n}\n\n.dataTables_wrapper.container-fluid, .dataTables_wrapper.container-sm, .dataTables_wrapper.container-md, .dataTables_wrapper.container-lg, .dataTables_wrapper.container-xl, .dataTables_wrapper.container-xxl {\n padding: 0;\n}\n\ntable.dataTable {\n border-collapse: collapse !important;\n margin-bottom: 15px !important;\n}\ntable.dataTable.dtr-inline.collapsed > tbody > tr > td.dtr-control:before,\ntable.dataTable.dtr-inline.collapsed > tbody > tr th.dtr-control:before {\n background-color: var(--ct-primary);\n -webkit-box-shadow: 0px 0px 2px 0px var(--ct-primary);\n box-shadow: 0px 0px 2px 0px var(--ct-primary);\n}\ntable.dataTable thead:not.table-light th {\n background-color: transparent;\n border-bottom-color: var(--ct-gray-300);\n}\ntable.dataTable tbody tr.even td,\ntable.dataTable tbody tr.odd td {\n background-color: transparent;\n}\ntable.dataTable tbody > tr.selected td {\n background-color: var(--ct-primary);\n}\ntable.dataTable.table-striped > tbody > tr.selected:nth-of-type(odd) > * {\n --ct-table-accent-bg: $primary !important;\n}\ntable.dataTable thead .sorting:before,\ntable.dataTable thead .sorting_asc:before,\ntable.dataTable thead .sorting_desc:before,\ntable.dataTable thead .sorting_asc_disabled:before,\ntable.dataTable thead .sorting_desc_disabled:before {\n left: 0.5rem;\n right: auto;\n content: \"\\ea77\";\n font-family: \"remixicon\";\n font-size: 1rem;\n top: 12px;\n}\ntable.dataTable thead .sorting:after,\ntable.dataTable thead .sorting_asc:after,\ntable.dataTable thead .sorting_desc:after,\ntable.dataTable thead .sorting_asc_disabled:after,\ntable.dataTable thead .sorting_desc_disabled:after {\n left: 0.5em;\n right: auto;\n content: \"\\ea4d\";\n font-family: \"remixicon\";\n top: 18px;\n font-size: 1rem;\n}\ntable.dataTable thead > tr > th.sorting_asc, table.dataTable thead > tr > th.sorting_desc, table.dataTable thead > tr > th.sorting {\n padding-left: 30px;\n padding-right: 0.75rem;\n}\ntable.dataTable tbody > tr.selected,\ntable.dataTable tbody > tr > .selected {\n background-color: var(--ct-primary);\n}\ntable.dataTable tbody > tr.selected td,\ntable.dataTable tbody > tr > .selected td {\n border-color: var(--ct-primary);\n}\ntable.dataTable tbody td:focus {\n outline: none !important;\n}\ntable.dataTable tbody th.focus,\ntable.dataTable tbody td.focus {\n outline: 2px solid #4254ba !important;\n outline-offset: -1px;\n background-color: rgba(var(--ct-primary-rgb), 0.15);\n}\n\n.dataTables_info {\n font-weight: 600;\n}\n\n.dtfh-floatingparent {\n top: var(--ct-topbar-height) !important;\n}\n\ntable.dataTable.dtr-inline.collapsed > tbody > tr[role=row] > td:first-child:before,\ntable.dataTable.dtr-inline.collapsed > tbody > tr[role=row] > th:first-child:before {\n -webkit-box-shadow: 0 2px 5px 0 rgba(27, 23, 30, 0.3);\n box-shadow: 0 2px 5px 0 rgba(27, 23, 30, 0.3);\n background-color: #17a497;\n top: auto;\n bottom: auto;\n}\ntable.dataTable.dtr-inline.collapsed > tbody > tr.parent > td:first-child:before,\ntable.dataTable.dtr-inline.collapsed > tbody > tr.parent > th:first-child:before {\n background-color: #f7473a;\n}\n\ndiv.dt-button-info {\n background-color: var(--ct-primary);\n border: none;\n color: #fff;\n -webkit-box-shadow: none;\n box-shadow: none;\n border-radius: 3px;\n text-align: center;\n z-index: 21;\n}\ndiv.dt-button-info h2, div.dt-button-info .h2 {\n border-bottom: none;\n background-color: rgba(255, 255, 255, 0.2);\n color: #fff;\n}\n\n@media (max-width: 767.98px) {\n li.paginate_button.previous,\nli.paginate_button.prev {\n display: inline-block;\n font-size: 1.5rem;\n }\n li.paginate_button {\n display: none;\n }\n .dataTables_paginate ul {\n text-align: center;\n display: block;\n margin: 1.25rem 0 0 !important;\n }\n div.dt-buttons {\n display: inline-table;\n margin-bottom: 1.25rem;\n }\n}\n.activate-select .sorting_1 {\n background-color: var(--ct-gray-100) !important;\n}\n\ndiv.dataTables_wrapper div.dataTables_filter {\n text-align: left;\n}\n@media (max-width: 576px) {\n div.dataTables_wrapper div.dataTables_filter {\n text-align: center;\n }\n}\ndiv.dataTables_wrapper div.dataTables_filter input {\n margin-right: 0.5em;\n margin-left: 0;\n}\ndiv.dataTables_wrapper div.dataTables_length {\n text-align: right;\n}\n@media (max-width: 576px) {\n div.dataTables_wrapper div.dataTables_length {\n text-align: center;\n }\n}\n\ndiv.table-responsive > div.dataTables_wrapper > div.row > div[class^=col-]:last-child {\n padding-left: 0;\n}\ndiv.table-responsive > div.dataTables_wrapper > div.row > div[class^=col-]:first-child {\n padding-right: 0;\n}\n\ndiv.dataTables_scrollBody {\n border-right: none !important;\n}\ndiv.dataTables_scrollBody > table {\n margin-bottom: 15px !important;\n}\ndiv.dataTables_scrollBody > table > :not(:first-child) {\n border-top: none !important;\n}\n\n.daterangepicker {\n font-family: var(--ct-font-sans-serif);\n border: 0 solid var(--ct-border-color);\n -webkit-box-shadow: var(--ct-box-shadow-lg);\n box-shadow: var(--ct-box-shadow-lg);\n background-color: var(--ct-secondary-bg);\n z-index: 999;\n}\n.daterangepicker .calendar-table {\n border: 1px solid var(--ct-secondary-bg);\n background-color: var(--ct-secondary-bg);\n}\n.daterangepicker .calendar-table td,\n.daterangepicker .calendar-table th {\n color: var(--ct-gray-600);\n}\n.daterangepicker .calendar-table .prev span,\n.daterangepicker .calendar-table .next span {\n border-color: var(--ct-border-color);\n}\n.daterangepicker .ranges li:hover {\n background-color: var(--ct-primary-bg-subtle);\n}\n.daterangepicker .ranges li.active {\n background-color: var(--ct-primary);\n}\n.daterangepicker td.in-range {\n background: var(--ct-tertiary-bg);\n color: var(--ct-tertiary-color);\n}\n.daterangepicker td.off, .daterangepicker td.off.end-date, .daterangepicker td.off.in-range, .daterangepicker td.off.start-date {\n background-color: var(--ct-secondary-bg);\n color: var(--ct-body-color);\n opacity: 0.5;\n}\n.daterangepicker td.active, .daterangepicker td.active:hover {\n background-color: var(--ct-primary);\n color: #fff;\n}\n.daterangepicker td.available:hover,\n.daterangepicker th.available:hover,\n.daterangepicker td.active,\n.daterangepicker td.active:hover {\n background-color: var(--ct-primary);\n color: #fff;\n}\n.daterangepicker td.available:hover span,\n.daterangepicker th.available:hover span,\n.daterangepicker td.active span,\n.daterangepicker td.active:hover span {\n border-color: #fff;\n}\n.daterangepicker:after {\n border-bottom: 6px solid var(--ct-secondary-bg);\n}\n.daterangepicker:before {\n border-bottom: 7px solid var(--ct-border-color);\n}\n.daterangepicker .drp-buttons {\n border-top: 1px solid var(--ct-border-color);\n}\n.daterangepicker select.ampmselect, .daterangepicker select.hourselect, .daterangepicker select.minuteselect, .daterangepicker select.secondselect {\n background: var(--ct-tertiary-bg);\n border: 1px solid var(--ct-border-color);\n color: var(--ct-body-color);\n}\n.daterangepicker.show-ranges .drp-calendar.left {\n border-right: 1px solid var(--ct-border-color) !important;\n}\n\n.flatpickr-calendar {\n background: var(--ct-secondary-bg);\n -webkit-box-shadow: var(--ct-box-shadow-lg);\n box-shadow: var(--ct-box-shadow-lg);\n border: none;\n}\n.flatpickr-calendar.arrowTop:before {\n border-bottom-color: var(--ct-secondary-bg);\n}\n.flatpickr-calendar.arrowTop:after {\n border-bottom-color: var(--ct-secondary-bg);\n}\n.flatpickr-calendar.arrowBottom:before, .flatpickr-calendar.arrowBottom:after {\n border-top-color: var(--ct-secondary-bg);\n}\n\n.flatpickr-current-month {\n font-size: 110%;\n}\n\n.flatpickr-day.selected, .flatpickr-day.startRange, .flatpickr-day.endRange, .flatpickr-day.selected.inRange, .flatpickr-day.startRange.inRange, .flatpickr-day.endRange.inRange, .flatpickr-day.selected:focus, .flatpickr-day.startRange:focus, .flatpickr-day.endRange:focus, .flatpickr-day.selected:hover, .flatpickr-day.startRange:hover, .flatpickr-day.endRange:hover, .flatpickr-day.selected.prevMonthDay, .flatpickr-day.startRange.prevMonthDay, .flatpickr-day.endRange.prevMonthDay, .flatpickr-day.selected.nextMonthDay, .flatpickr-day.startRange.nextMonthDay, .flatpickr-day.endRange.nextMonthDay {\n background: var(--ct-primary);\n border-color: var(--ct-primary);\n}\n.flatpickr-day.selected.startRange + .endRange:not(:nth-child(7n+1)), .flatpickr-day.startRange.startRange + .endRange:not(:nth-child(7n+1)), .flatpickr-day.endRange.startRange + .endRange:not(:nth-child(7n+1)) {\n -webkit-box-shadow: 10px 0 0 var(--ct-primary);\n box-shadow: 10px 0 0 var(--ct-primary);\n}\n\n.flatpickr-time input:hover,\n.flatpickr-time .flatpickr-am-pm:hover,\n.flatpickr-time input:focus,\n.flatpickr-time .flatpickr-am-pm:focus {\n background: var(--ct-secondary-bg);\n color: var(--ct-tertiary-color);\n}\n\n.flatpickr-months .flatpickr-month {\n height: 36px;\n}\n.flatpickr-months .flatpickr-next-month,\n.flatpickr-months .flatpickr-prev-month,\n.flatpickr-months .flatpickr-month {\n color: var(--ct-gray-500);\n fill: var(--ct-gray-500);\n}\n\n.flatpickr-weekdays {\n background-color: var(--ct-tertiary-bg);\n}\n\nspan.flatpickr-weekday,\n.flatpickr-day,\n.flatpickr-current-month input.cur-year[disabled],\n.flatpickr-current-month input.cur-year[disabled]:hover,\n.flatpickr-time input,\n.flatpickr-time .flatpickr-time-separator,\n.flatpickr-time .flatpickr-am-pm {\n color: var(--ct-body-color);\n fill: var(--ct-body-color);\n}\n\n.flatpickr-day.disabled, .flatpickr-day.disabled:hover, .flatpickr-day.prevMonthDay, .flatpickr-day.nextMonthDay, .flatpickr-day.notAllowed, .flatpickr-day.notAllowed.prevMonthDay, .flatpickr-day.notAllowed.nextMonthDay {\n color: #adb5bd;\n}\n.flatpickr-day.inRange, .flatpickr-day.prevMonthDay.inRange, .flatpickr-day.nextMonthDay.inRange, .flatpickr-day.today.inRange, .flatpickr-day.prevMonthDay.today.inRange, .flatpickr-day.nextMonthDay.today.inRange, .flatpickr-day:hover, .flatpickr-day.prevMonthDay:hover, .flatpickr-day.nextMonthDay:hover, .flatpickr-day:focus, .flatpickr-day.prevMonthDay:focus, .flatpickr-day.nextMonthDay:focus {\n background: var(--ct-primary-bg-subtle);\n border-color: var(--ct-primary-bg-subtle);\n}\n\n.flatpickr-calendar.showTimeInput.hasTime .flatpickr-time {\n border-top: 1px solid var(--ct-secondary-bg);\n}\n\n.numInputWrapper:hover,\n.flatpickr-current-month .flatpickr-monthDropdown-months:hover {\n background-color: transparent;\n color: var(--ct-tertiary-color);\n}\n\n.flatpickr-day.inRange {\n -webkit-box-shadow: 5px 0 0 var(--ct-primary-bg-subtle), -5px 0 0 var(--ct-primary-bg-subtle);\n box-shadow: 5px 0 0 var(--ct-primary-bg-subtle), -5px 0 0 var(--ct-primary-bg-subtle);\n}\n\n.flatpickr-day.flatpickr-disabled,\n.flatpickr-day.flatpickr-disabled:hover {\n color: #adb5bd;\n}\n\n.flatpickr-calendar.hasTime .flatpickr-time {\n border-top: var(--ct-border-color);\n}\n\n.bg-dragula {\n background-color: var(--ct-tertiary-bg);\n}\n\n.gu-mirror {\n position: fixed !important;\n margin: 0 !important;\n z-index: 9999 !important;\n opacity: 0.8;\n -ms-filter: \"progid:DXImageTransform.Microsoft.Alpha(Opacity=80)\";\n filter: alpha(opacity=80);\n}\n\n.gu-hide {\n display: none !important;\n}\n\n.gu-unselectable {\n -webkit-user-select: none !important;\n -moz-user-select: none !important;\n -ms-user-select: none !important;\n user-select: none !important;\n}\n\n.gu-transit {\n opacity: 0.2;\n -ms-filter: \"progid:DXImageTransform.Microsoft.Alpha(Opacity=20)\";\n filter: alpha(opacity=20);\n}\n\n.dragula-handle {\n position: relative;\n width: 36px;\n height: 36px;\n font-size: 24px;\n text-align: center;\n cursor: move;\n}\n.dragula-handle:before {\n content: \"\\f38f\";\n font-family: \"remixicon\";\n position: absolute;\n}\n\n.dropzone {\n border: 2px dashed var(--ct-border-color);\n background: var(--ct-secondary-bg);\n border-radius: 6px;\n cursor: pointer;\n min-height: 150px;\n padding: 20px;\n}\n.dropzone .dz-message {\n text-align: center;\n margin: 2rem 0;\n}\n.dropzone.dz-started .dz-message {\n display: none;\n}\n\n.form-wizard-header {\n margin-right: -1.25rem;\n margin-left: -1.25rem;\n background-color: var(--ct-tertiary-bg);\n border-top: 1px solid var(--ct-body-bg);\n border-bottom: 1px solid var(--ct-body-bg);\n}\n\n.gmaps,\n.gmaps-panaroma {\n height: 300px;\n background: var(--ct-tertiary-bg);\n border-radius: 3px;\n}\n\n.jvectormap-label {\n border: none;\n background: var(--ct-tertiary-bg);\n color: var(--ct-tertiary-color);\n -webkit-box-shadow: var(--ct-box-shadow-lg);\n box-shadow: var(--ct-box-shadow-lg);\n font-family: var(--ct-font-sans-serif);\n font-size: 0.875rem;\n padding: 5px 8px;\n}\n\n.jvectormap-container .jvectormap-zoomin,\n.jvectormap-container .jvectormap-zoomout {\n height: 24px;\n width: 24px;\n line-height: 20px;\n font-size: 15px;\n background-color: var(--ct-tertiary-bg);\n color: var(--ct-tertiary-color);\n}\n.jvectormap-container .jvectormap-zoomout {\n top: 37px;\n}\n\n.ql-editor {\n text-align: right;\n}\n.ql-editor ol,\n.ql-editor ul {\n padding-right: 1.5em;\n padding-left: 0;\n}\n.ql-editor li:not(.ql-direction-rtl)::before {\n margin-right: -1.5em;\n margin-left: 0.3em;\n text-align: left;\n}\n\n.ql-container {\n font-family: var(--ct-font-sans-serif);\n}\n.ql-container.ql-snow {\n border-color: var(--ct-border-color);\n border-radius: 0 0 0.25rem 0.25rem;\n}\n\n.ql-bubble {\n border: var(--ct-border-width) solid var(--ct-border-color);\n border-radius: 0.25rem;\n}\n\n.ql-toolbar {\n font-family: var(--ct-font-sans-serif) !important;\n}\n.ql-toolbar span {\n outline: none !important;\n color: var(--ct-body-color);\n}\n.ql-toolbar span:hover {\n color: #4254ba !important;\n}\n.ql-toolbar.ql-snow {\n border-radius: 0.25rem 0.25rem 0 0;\n border-color: var(--ct-border-color);\n}\n.ql-toolbar.ql-snow .ql-picker.ql-expanded .ql-picker-label {\n border-color: transparent;\n}\n.ql-toolbar.ql-snow .ql-picker-options {\n -webkit-box-shadow: var(--ct-box-shadow-lg);\n box-shadow: var(--ct-box-shadow-lg);\n border-radius: 0.15rem;\n border: none;\n}\n\n.ql-snow .ql-stroke,\n.ql-snow .ql-script,\n.ql-snow .ql-strike svg {\n stroke: var(--ct-body-color);\n}\n.ql-snow .ql-fill {\n fill: var(--ct-body-color);\n}\n.ql-snow .ql-picker:not(.ql-color-picker):not(.ql-icon-picker) svg {\n left: 0;\n right: auto;\n}\n.ql-snow .ql-picker.ql-expanded .ql-picker-label {\n color: var(--ct-body-color);\n}\n\n.ql-snow .ql-picker-options {\n background-color: var(--ct-secondary-bg);\n border-color: var(--ct-border-color) !important;\n}\n\n.select2-container {\n width: 100% !important;\n}\n.select2-container .select2-selection--single {\n border: var(--ct-border-width) solid var(--ct-border-color);\n height: calc(1.5em + 0.9rem + calc(var(--ct-border-width) * 2));\n background-color: var(--ct-secondary-bg);\n outline: none;\n}\n.select2-container .select2-selection--single .select2-selection__rendered {\n line-height: 36px;\n padding-right: 12px;\n color: var(--ct-body-color);\n}\n.select2-container .select2-selection--single .select2-selection__arrow {\n height: 34px;\n width: 34px;\n right: 3px;\n}\n.select2-container .select2-selection--single .select2-selection__arrow b {\n border-color: var(--ct-border-color) transparent transparent transparent;\n border-width: 6px 6px 0 6px;\n}\n\n.select2-container--open .select2-selection--single .select2-selection__arrow b {\n border-color: transparent transparent var(--ct-border-color) transparent !important;\n border-width: 0 6px 6px 6px !important;\n}\n\n.select2-results__option {\n padding: 6px 12px;\n}\n\n.select2-dropdown {\n border: 0 solid var(--ct-border-color);\n -webkit-box-shadow: var(--ct-box-shadow-lg);\n box-shadow: var(--ct-box-shadow-lg);\n background-color: var(--ct-secondary-bg);\n z-index: 1056;\n}\n\n.select2-results__options::-webkit-scrollbar {\n -webkit-appearance: none;\n}\n.select2-results__options::-webkit-scrollbar:vertical {\n width: 5px;\n margin-left: 5px;\n}\n.select2-results__options::-webkit-scrollbar:horizontal {\n height: 5px;\n}\n.select2-results__options::-webkit-scrollbar-thumb {\n background-color: rgba(var(--ct-dark-rgb), 0.2);\n border-radius: 10px;\n margin-left: 5px;\n border: none;\n}\n.select2-results__options::-webkit-scrollbar-track {\n border-radius: 10px;\n background-color: transparent;\n}\n.select2-results__options::-webkit-scrollbar-corner {\n background-color: transparent;\n}\n\n.select2-container--default .select2-results__option--selected {\n background-color: var(--ct-tertiary-bg);\n}\n.select2-container--default .select2-search--dropdown {\n padding: 10px;\n background-color: var(--ct-secondary-bg);\n}\n.select2-container--default .select2-search--dropdown .select2-search__field {\n outline: none;\n border: 1px solid var(--ct-border-color);\n background-color: var(--ct-secondary-bg);\n color: var(--ct-body-color);\n border-radius: 0.25rem;\n}\n.select2-container--default .select2-results__option--highlighted[aria-selected] {\n background-color: var(--ct-primary);\n}\n.select2-container--default .select2-results__option[aria-selected=true] {\n background-color: var(--ct-secondary-bg);\n color: var(--ct-tertiary-color);\n}\n.select2-container--default .select2-results__option[aria-selected=true]:hover {\n background-color: var(--ct-primary);\n color: #fff;\n}\n.select2-container--default .select2-selection--multiple .select2-selection__choice__display {\n padding-right: 36px;\n padding-left: 5px;\n}\n.select2-container--default .select2-selection--single .select2-selection__arrow {\n right: 1px;\n left: auto;\n}\n\n.select2-container .select2-selection--multiple {\n min-height: calc(1.5em + 0.9rem + calc(var(--ct-border-width) * 2));\n border: var(--ct-border-width) solid var(--ct-border-color) !important;\n background-color: var(--ct-secondary-bg);\n}\n.select2-container .select2-selection--multiple .select2-selection__rendered {\n padding: 1px 4px;\n}\n.select2-container .select2-selection--multiple .select2-search__field {\n border: 0;\n color: var(--ct-body-color);\n}\n.select2-container .select2-selection--multiple .select2-selection__choice {\n background-color: var(--ct-primary);\n border: none;\n color: #fff;\n border-radius: 3px;\n padding: 0px 0 0 7px;\n margin-top: 6px;\n}\n.select2-container .select2-selection--multiple .select2-selection__choice__remove {\n color: #fff;\n margin-left: 7px;\n border-color: #5565c1;\n padding: 0 8px;\n}\n.select2-container .select2-selection--multiple .select2-selection__choice__remove:hover {\n color: #fff;\n background-color: var(--ct-primary);\n}\n.select2-container .select2-search--inline .select2-search__field {\n margin-top: 7px;\n font-family: var(--ct-font-sans-serif);\n}\n.select2-container .select2-search textarea::-webkit-input-placeholder {\n color: var(--ct-secondary-color);\n}\n.select2-container .select2-search textarea::-moz-placeholder {\n color: var(--ct-secondary-color);\n}\n.select2-container .select2-search textarea:-ms-input-placeholder {\n color: var(--ct-secondary-color);\n}\n.select2-container .select2-search textarea::-ms-input-placeholder {\n color: var(--ct-secondary-color);\n}\n.select2-container .select2-search textarea::placeholder {\n color: var(--ct-secondary-color);\n}\n\n[dir=rtl] .select2-container--open .select2-dropdown {\n right: auto;\n left: 0;\n}\n\n[data-simplebar] {\n position: relative;\n -webkit-box-orient: vertical;\n -webkit-box-direction: normal;\n -ms-flex-direction: column;\n flex-direction: column;\n -ms-flex-wrap: wrap;\n flex-wrap: wrap;\n -webkit-box-pack: start;\n -ms-flex-pack: start;\n justify-content: flex-start;\n -ms-flex-line-pack: start;\n align-content: flex-start;\n -webkit-box-align: start;\n -ms-flex-align: 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 right: 0;\n top: 0;\n bottom: 0;\n left: 0;\n width: auto !important;\n height: auto !important;\n z-index: 0;\n}\n\n.simplebar-offset {\n direction: inherit !important;\n -webkit-box-sizing: inherit !important;\n box-sizing: inherit !important;\n resize: none !important;\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n padding: 0;\n margin: 0;\n -webkit-overflow-scrolling: touch;\n}\n\n.simplebar-content-wrapper {\n direction: inherit;\n -webkit-box-sizing: border-box !important;\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 overflow: auto;\n /* Scroll on this element otherwise element can't have a padding applied properly */\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}\n\n.simplebar-content-wrapper::-webkit-scrollbar,\n.simplebar-hide-scrollbar::-webkit-scrollbar {\n display: none;\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 -webkit-box-sizing: inherit !important;\n box-sizing: inherit !important;\n height: 100%;\n width: 100%;\n max-width: 1px;\n position: relative;\n float: right;\n max-height: 1px;\n overflow: hidden;\n z-index: -1;\n padding: 0;\n margin: 0;\n pointer-events: none;\n -webkit-box-flex: inherit;\n -ms-flex-positive: inherit;\n flex-grow: inherit;\n -ms-flex-negative: 0;\n flex-shrink: 0;\n -ms-flex-preferred-size: 0;\n flex-basis: 0;\n}\n\n.simplebar-height-auto-observer {\n -webkit-box-sizing: inherit;\n box-sizing: inherit;\n display: block;\n opacity: 0;\n position: absolute;\n top: 0;\n right: 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 left: 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 -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n 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: 2px;\n width: 5px;\n min-height: 10px;\n}\n.simplebar-scrollbar:before {\n position: absolute;\n content: \"\";\n background: #a2adb7;\n border-radius: 7px;\n right: 0;\n left: 0;\n opacity: 0;\n -webkit-transition: opacity 0.2s linear;\n transition: opacity 0.2s linear;\n}\n\n.simplebar-scrollbar.simplebar-visible:before {\n /* When hovered, remove all transitions from drag handle */\n opacity: 0.5;\n -webkit-transition: opacity 0s linear;\n transition: opacity 0s linear;\n}\n\n.simplebar-track.simplebar-vertical {\n top: 0;\n width: 11px;\n}\n.simplebar-track.simplebar-vertical .simplebar-scrollbar:before {\n top: 2px;\n bottom: 2px;\n}\n\n.simplebar-track.simplebar-horizontal {\n right: 0;\n height: 11px;\n}\n.simplebar-track.simplebar-horizontal .simplebar-scrollbar {\n left: auto;\n right: 0;\n top: 2px;\n height: 7px;\n min-height: 0;\n min-width: 10px;\n width: auto;\n}\n.simplebar-track.simplebar-horizontal .simplebar-scrollbar:before {\n height: 100%;\n right: 2px;\n left: 2px;\n}\n\n/* Rtl support */\n[data-simplebar-direction=rtl] .simplebar-track.simplebar-vertical {\n left: auto;\n right: 0;\n}\n\n.hs-dummy-scrollbar-size {\n direction: ltr;\n position: fixed;\n opacity: 0;\n visibility: hidden;\n height: 500px;\n width: 500px;\n overflow-y: hidden;\n overflow-x: scroll;\n}\n\n.simplebar-hide-scrollbar {\n position: fixed;\n right: 0;\n visibility: hidden;\n overflow-y: scroll;\n scrollbar-width: none;\n}\n\n.custom-scroll {\n height: 100%;\n}\n\n[data-simplebar-lg] .simplebar-scrollbar {\n left: 1px;\n width: 10px;\n}\n\n[data-simplebar-primary] .simplebar-scrollbar:before {\n background: var(--ct-primary);\n}\n\n.jq-toast-single {\n text-align: right !important;\n padding: 15px;\n font-family: var(--ct-font-sans-serif);\n background-color: var(--ct-primary);\n font-size: 13px;\n line-height: 22px;\n -webkit-box-shadow: var(--ct-box-shadow-lg);\n box-shadow: var(--ct-box-shadow-lg);\n}\n.jq-toast-single h2, .jq-toast-single .h2 {\n font-family: var(--ct-font-sans-serif);\n}\n.jq-toast-single a {\n font-size: 0.875rem;\n}\n.jq-toast-single a:hover {\n color: #fff;\n}\n\n.jq-has-icon {\n padding: 10px;\n}\n\n.close-jq-toast-single {\n position: absolute;\n top: -12px;\n left: -12px;\n font-size: 20px;\n cursor: pointer;\n height: 32px;\n width: 32px;\n background: var(--ct-gray-800);\n color: var(--ct-gray-300);\n border-radius: 50%;\n text-align: center;\n line-height: 32px;\n}\n\n.jq-toast-loader {\n height: 3px;\n top: 0;\n border-radius: 0;\n}\n\n.jq-icon-primary {\n background-color: #4254ba;\n color: #fff;\n border-color: #4254ba;\n}\n\n.jq-icon-secondary {\n background-color: #6c757d;\n color: #fff;\n border-color: #6c757d;\n}\n\n.jq-icon-success {\n background-color: #17a497;\n color: #fff;\n border-color: #17a497;\n}\n\n.jq-icon-info {\n background-color: #299bf6;\n color: #fff;\n border-color: #299bf6;\n}\n\n.jq-icon-warning {\n background-color: #fec20d;\n color: #fff;\n border-color: #fec20d;\n}\n\n.jq-icon-danger {\n background-color: #f7473a;\n color: #fff;\n border-color: #f7473a;\n}\n\n.jq-icon-light {\n background-color: #f2f2f7;\n color: #fff;\n border-color: #f2f2f7;\n}\n\n.jq-icon-dark {\n background-color: #49526b;\n color: #fff;\n border-color: #49526b;\n}\n\n.jq-icon-purple {\n background-color: #815ac5;\n color: #fff;\n border-color: #815ac5;\n}\n\n.jq-icon-pink {\n background-color: #ff679b;\n color: #fff;\n border-color: #ff679b;\n}\n\n.jq-icon-error {\n background-color: #f7473a;\n color: #fff;\n border-color: #f7473a;\n}\n\n.jq-icon-info,\n.jq-icon-warning,\n.jq-icon-error,\n.jq-icon-success {\n background-image: none;\n}\n\n.bootstrap-touchspin .btn .input-group-text {\n padding: 0;\n border: none;\n background-color: transparent;\n color: inherit;\n}\n\n.twitter-typeahead {\n display: inherit !important;\n}\n\n.tt-query,\n.tt-hint {\n outline: none;\n}\n\n.tt-query {\n -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);\n}\n\n.tt-hint {\n color: var(--ct-body-color);\n background: var(--ct-secondary-bg) !important;\n}\n\n.tt-menu {\n width: 100%;\n padding: 8px 0;\n max-height: 200px;\n overflow-y: auto;\n background-color: var(--ct-secondary-bg);\n -webkit-box-shadow: var(--ct-box-shadow-lg);\n box-shadow: var(--ct-box-shadow-lg);\n border: 1px solid var(--ct-border-color);\n}\n\n.tt-suggestion {\n padding: 3px 20px;\n line-height: 24px;\n}\n.tt-suggestion:hover, .tt-suggestion.tt-cursor {\n cursor: pointer;\n color: #fff;\n background-color: var(--ct-primary);\n}\n.tt-suggestion p {\n margin: 0;\n}\n\n.tt-highlight {\n font-family: var(--ct-font-sans-serif);\n}\n\n.typeahead-empty-message {\n padding: 5px 10px;\n color: #f7473a;\n}\n\n.league-name {\n padding: 3px 20px;\n}\n\n.jqstooltip {\n -webkit-box-sizing: content-box;\n box-sizing: content-box;\n width: auto !important;\n height: auto !important;\n background-color: #fff !important;\n -webkit-box-shadow: 0 2px 5px 0 rgba(27, 23, 30, 0.3);\n box-shadow: 0 2px 5px 0 rgba(27, 23, 30, 0.3);\n padding: 5px 10px !important;\n border-radius: 3px;\n border-color: #fff !important;\n}\n\n.jqsfield {\n color: #000 !important;\n font-size: 12px !important;\n line-height: 18px !important;\n font-family: var(--ct-font-sans-serif) !important;\n font-weight: 700 !important;\n}\n\n.rateit {\n display: -moz-inline-box;\n display: inline-block;\n position: relative;\n -webkit-user-select: none;\n -moz-user-select: none;\n -ms-user-select: none;\n user-select: none;\n -webkit-touch-callout: none;\n}\n.rateit .rateit-range * {\n display: block;\n}\n.rateit .rateit-hover,\n.rateit .rateit-selected {\n position: absolute;\n right: 0;\n top: 0;\n width: 0;\n}\n.rateit .rateit-hover-rtl,\n.rateit .rateit-selected-rtl {\n right: auto;\n left: 0;\n}\n.rateit .rateit-hover {\n color: #fec20d;\n}\n.rateit .rateit-hover-rtl {\n background-position: left -32px;\n}\n.rateit .rateit-selected {\n color: #f7473a;\n}\n.rateit .rateit-selected-rtl {\n background-position: left -16px;\n}\n.rateit .rateit-preset {\n color: #fd7e14;\n}\n.rateit button.rateit-reset {\n width: 16px;\n height: 16px;\n float: right;\n outline: none;\n border: none;\n padding: 0;\n}\n.rateit .rateit-reset span {\n display: none;\n}\n.rateit .rateit-range {\n position: relative;\n display: -moz-inline-box;\n display: inline-block;\n height: 16px;\n outline: none;\n}\n.rateit.rateit-font .rateit-reset {\n width: 0.6em;\n height: 0.6em;\n margin-left: 5px;\n margin-top: 5px;\n background: var(--ct-tertiary-bg);\n border-radius: 50%;\n position: relative;\n}\n.rateit.rateit-font .rateit-reset span {\n display: block;\n height: calc(50% - 0.045em);\n top: 2px;\n position: absolute;\n border-bottom: 2px solid var(--ct-emphasis-color);\n width: 50%;\n margin-right: 25%;\n margin-left: 25%;\n}\n.rateit.rateit-font .rateit-reset:hover,\n.rateit.rateit-font button.rateit-reset:focus {\n background: #f7473a;\n}\n.rateit.rateit-font .rateit-reset:hover span,\n.rateit.rateit-font button.rateit-reset:focus span {\n border-color: #fff;\n}\n\n.rateit-remix {\n font-family: \"remixicon\";\n}\n\n.rateit-font {\n font-size: 24px;\n line-height: 1em;\n}\n.rateit-font .rateit-range {\n background: none;\n height: auto;\n}\n.rateit-font .rateit-range > div {\n background: none;\n overflow: hidden;\n cursor: default;\n white-space: nowrap;\n}\n.rateit-font .rateit-empty {\n color: var(--ct-border-color);\n}\n\n.rateit .rateit-hover-rtl,\n.rateit .rateit-selected-rtl {\n left: auto;\n}\n\n.irs {\n position: relative;\n display: block;\n -webkit-touch-callout: none;\n -ms-user-select: none;\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n font-size: 12px;\n}\n\n.irs-line {\n position: relative;\n display: block;\n overflow: hidden;\n outline: none !important;\n}\n\n.irs-bar {\n position: absolute;\n display: block;\n right: 0;\n width: 0;\n}\n\n.irs-shadow {\n position: absolute;\n display: none;\n right: 0;\n width: 0;\n}\n\n.irs-handle {\n position: absolute;\n display: block;\n -webkit-box-sizing: border-box;\n box-sizing: border-box;\n cursor: default;\n z-index: 1;\n}\n.irs-handle.type_last {\n z-index: 2;\n}\n\n.irs-min,\n.irs-max {\n position: absolute;\n display: block;\n cursor: default;\n}\n\n.irs-min {\n right: 0;\n left: auto;\n}\n\n.irs-max {\n left: 0;\n right: auto;\n}\n\n[dir=rtl] .irs-min {\n left: 0;\n right: auto;\n}\n[dir=rtl] .irs-max {\n right: 0;\n left: auto;\n}\n\n.irs-from,\n.irs-to,\n.irs-single {\n position: absolute;\n display: block;\n top: 0;\n cursor: default;\n white-space: nowrap;\n}\n\n.irs-grid {\n position: absolute;\n display: none;\n bottom: 0;\n left: 0;\n width: 100%;\n height: 20px;\n}\n\n.irs-with-grid .irs-grid {\n display: block;\n}\n\n.irs-grid-pol {\n position: absolute;\n top: 0;\n left: 0;\n width: 1px;\n height: 8px;\n background: #6c757d;\n}\n.irs-grid-pol.small {\n height: 4px;\n}\n\n.irs-grid-text {\n position: absolute;\n bottom: 0;\n left: 0;\n white-space: nowrap;\n text-align: center;\n font-size: 11px;\n line-height: 9px;\n padding: 0 3px;\n color: #6c757d;\n}\n\n.irs-disable-mask {\n position: absolute;\n display: block;\n top: 0;\n right: -1%;\n width: 102%;\n height: 100%;\n cursor: default;\n z-index: 2;\n}\n\n.lt-ie9 .irs-disable-mask {\n background: #6c757d;\n filter: alpha(opacity=0);\n cursor: not-allowed;\n}\n\n.irs-disabled {\n opacity: 0.4;\n}\n\n.irs-hidden-input {\n position: absolute !important;\n display: block !important;\n top: 0 !important;\n right: 0 !important;\n width: 0 !important;\n height: 0 !important;\n font-size: 0 !important;\n line-height: 0 !important;\n padding: 0 !important;\n margin: 0 !important;\n overflow: hidden;\n outline: none !important;\n z-index: -9999 !important;\n background: none !important;\n border-style: solid !important;\n border-color: transparent !important;\n}\n\n.irs--flat {\n height: 40px;\n}\n.irs--flat.irs-with-grid {\n height: 60px;\n}\n.irs--flat .irs-line {\n top: 25px;\n height: 12px;\n background-color: var(--ct-body-bg);\n border-radius: 4px;\n}\n.irs--flat .irs-bar {\n top: 25px;\n height: 12px;\n background-color: var(--ct-primary);\n}\n.irs--flat .irs-bar--single {\n border-radius: 0 4px 4px 0;\n}\n.irs--flat .irs-shadow {\n height: 1px;\n bottom: 16px;\n background-color: var(--ct-body-bg);\n}\n.irs--flat .irs-handle {\n top: 22px;\n width: 16px;\n height: 18px;\n background-color: transparent;\n}\n.irs--flat .irs-handle > i:first-child {\n position: absolute;\n display: block;\n top: 0;\n right: 50%;\n width: 2px;\n height: 100%;\n margin-right: -1px;\n background-color: #3948a0;\n}\n.irs--flat .irs-min,\n.irs--flat .irs-max {\n top: 0;\n padding: 1px 3px;\n color: var(--ct-secondary-color);\n font-size: 10px;\n line-height: 1.333;\n text-shadow: none;\n background-color: var(--ct-body-bg);\n border-radius: 4px;\n}\n.irs--flat .irs-from,\n.irs--flat .irs-to,\n.irs--flat .irs-single {\n color: #fff;\n font-size: 10px;\n line-height: 1.333;\n text-shadow: none;\n padding: 1px 5px;\n background-color: var(--ct-primary);\n border-radius: 4px;\n}\n.irs--flat .irs-from:before,\n.irs--flat .irs-to:before,\n.irs--flat .irs-single:before {\n position: absolute;\n display: block;\n content: \"\";\n bottom: -6px;\n right: 50%;\n width: 0;\n height: 0;\n margin-right: -3px;\n overflow: hidden;\n border: 3px solid transparent;\n border-top-color: var(--ct-primary);\n}\n.irs--flat .irs-grid-pol {\n background-color: var(--ct-body-bg);\n}\n.irs--flat .irs-grid-text {\n color: var(--ct-secondary-color);\n}\n\n[dir=rtl] .irs-bar--single {\n border-radius: 4px 0 0 4px !important;\n}","// Utilities\n\n// border style\n.border-dashed {\n border-style: dashed !important;\n}\n\n$utilities: (\n \"font-size-custom\": (\n property: font-size,\n class: fs,\n values: $font-size-custom\n )\n);\n\n.bg-pink-subtle {\n background-color: var(--#{$prefix}pink-bg-subtle)!important;\n}\n\n.bg-purple-subtle {\n background-color: var(--#{$prefix}purple-bg-subtle)!important;\n}","@mixin bsBanner($file) {\n /*!\n * Bootstrap #{$file} v5.3.0 (https://getbootstrap.com/)\n * Copyright 2011-2023 The Bootstrap Authors\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n */\n}\n",":root,\n[data-bs-theme=\"light\"] {\n // Note: Custom variable values only support SassScript inside `#{}`.\n\n // Colors\n //\n // Generate palettes for full colors, grays, and theme colors.\n\n @each $color, $value in $colors {\n --#{$prefix}#{$color}: #{$value};\n }\n\n @each $color, $value in $grays {\n --#{$prefix}gray-#{$color}: #{$value};\n }\n\n @each $color, $value in $theme-colors {\n --#{$prefix}#{$color}: #{$value};\n }\n\n @each $color, $value in $theme-colors-rgb {\n --#{$prefix}#{$color}-rgb: #{$value};\n }\n\n @each $color, $value in $theme-colors-text {\n --#{$prefix}#{$color}-text-emphasis: #{$value};\n }\n\n @each $color, $value in $theme-colors-bg-subtle {\n --#{$prefix}#{$color}-bg-subtle: #{$value};\n }\n\n @each $color, $value in $theme-colors-border-subtle {\n --#{$prefix}#{$color}-border-subtle: #{$value};\n }\n\n --#{$prefix}white-rgb: #{to-rgb($white)};\n --#{$prefix}black-rgb: #{to-rgb($black)};\n\n // Fonts\n\n // Note: Use `inspect` for lists so that quoted items keep the quotes.\n // See https://github.com/sass/sass/issues/2383#issuecomment-336349172\n --#{$prefix}font-sans-serif: #{inspect($font-family-sans-serif)};\n --#{$prefix}font-monospace: #{inspect($font-family-monospace)};\n --#{$prefix}gradient: #{$gradient};\n\n // Root and body\n // scss-docs-start root-body-variables\n @if $font-size-root != null {\n --#{$prefix}root-font-size: #{$font-size-root};\n }\n --#{$prefix}body-font-family: #{inspect($font-family-base)};\n @include rfs($font-size-base, --#{$prefix}body-font-size);\n --#{$prefix}body-font-weight: #{$font-weight-base};\n --#{$prefix}body-line-height: #{$line-height-base};\n @if $body-text-align != null {\n --#{$prefix}body-text-align: #{$body-text-align};\n }\n\n --#{$prefix}body-color: #{$body-color};\n --#{$prefix}body-color-rgb: #{to-rgb($body-color)};\n --#{$prefix}body-bg: #{$body-bg};\n --#{$prefix}body-bg-rgb: #{to-rgb($body-bg)};\n\n --#{$prefix}emphasis-color: #{$body-emphasis-color};\n --#{$prefix}emphasis-color-rgb: #{to-rgb($body-emphasis-color)};\n\n --#{$prefix}secondary-color: #{$body-secondary-color};\n --#{$prefix}secondary-color-rgb: #{to-rgb($body-secondary-color)};\n --#{$prefix}secondary-bg: #{$body-secondary-bg};\n --#{$prefix}secondary-bg-rgb: #{to-rgb($body-secondary-bg)};\n\n --#{$prefix}tertiary-color: #{$body-tertiary-color};\n --#{$prefix}tertiary-color-rgb: #{to-rgb($body-tertiary-color)};\n --#{$prefix}tertiary-bg: #{$body-tertiary-bg};\n --#{$prefix}tertiary-bg-rgb: #{to-rgb($body-tertiary-bg)};\n // scss-docs-end root-body-variables\n\n --#{$prefix}heading-color: #{$headings-color};\n\n --#{$prefix}link-color: #{$link-color};\n --#{$prefix}link-color-rgb: #{to-rgb($link-color)};\n --#{$prefix}link-decoration: #{$link-decoration};\n\n --#{$prefix}link-hover-color: #{$link-hover-color};\n --#{$prefix}link-hover-color-rgb: #{to-rgb($link-hover-color)};\n\n @if $link-hover-decoration != null {\n --#{$prefix}link-hover-decoration: #{$link-hover-decoration};\n }\n\n --#{$prefix}code-color: #{$code-color};\n --#{$prefix}highlight-bg: #{$mark-bg};\n\n // scss-docs-start root-border-var\n --#{$prefix}border-width: #{$border-width};\n --#{$prefix}border-style: #{$border-style};\n --#{$prefix}border-color: #{$border-color};\n --#{$prefix}border-color-translucent: #{$border-color-translucent};\n\n --#{$prefix}border-radius: #{$border-radius};\n --#{$prefix}border-radius-sm: #{$border-radius-sm};\n --#{$prefix}border-radius-lg: #{$border-radius-lg};\n --#{$prefix}border-radius-xl: #{$border-radius-xl};\n --#{$prefix}border-radius-xxl: #{$border-radius-xxl};\n --#{$prefix}border-radius-2xl: var(--#{$prefix}border-radius-xxl); // Deprecated in v5.3.0 for consistency\n --#{$prefix}border-radius-pill: #{$border-radius-pill};\n // scss-docs-end root-border-var\n\n --#{$prefix}box-shadow: #{$box-shadow};\n --#{$prefix}box-shadow-sm: #{$box-shadow-sm};\n --#{$prefix}box-shadow-lg: #{$box-shadow-lg};\n --#{$prefix}box-shadow-inset: #{$box-shadow-inset};\n\n // Focus styles\n // scss-docs-start root-focus-variables\n --#{$prefix}focus-ring-width: #{$focus-ring-width};\n --#{$prefix}focus-ring-opacity: #{$focus-ring-opacity};\n --#{$prefix}focus-ring-color: #{$focus-ring-color};\n // scss-docs-end root-focus-variables\n\n // scss-docs-start root-form-validation-variables\n --#{$prefix}form-valid-color: #{$form-valid-color};\n --#{$prefix}form-valid-border-color: #{$form-valid-border-color};\n --#{$prefix}form-invalid-color: #{$form-invalid-color};\n --#{$prefix}form-invalid-border-color: #{$form-invalid-border-color};\n // scss-docs-end root-form-validation-variables\n}\n\n@if $enable-dark-mode {\n @include color-mode(dark, true) {\n color-scheme: dark;\n\n // scss-docs-start root-dark-mode-vars\n --#{$prefix}body-color: #{$body-color-dark};\n --#{$prefix}body-color-rgb: #{to-rgb($body-color-dark)};\n --#{$prefix}body-bg: #{$body-bg-dark};\n --#{$prefix}body-bg-rgb: #{to-rgb($body-bg-dark)};\n\n --#{$prefix}emphasis-color: #{$body-emphasis-color-dark};\n --#{$prefix}emphasis-color-rgb: #{to-rgb($body-emphasis-color-dark)};\n\n --#{$prefix}secondary-color: #{$body-secondary-color-dark};\n --#{$prefix}secondary-color-rgb: #{to-rgb($body-secondary-color-dark)};\n --#{$prefix}secondary-bg: #{$body-secondary-bg-dark};\n --#{$prefix}secondary-bg-rgb: #{to-rgb($body-secondary-bg-dark)};\n\n --#{$prefix}tertiary-color: #{$body-tertiary-color-dark};\n --#{$prefix}tertiary-color-rgb: #{to-rgb($body-tertiary-color-dark)};\n --#{$prefix}tertiary-bg: #{$body-tertiary-bg-dark};\n --#{$prefix}tertiary-bg-rgb: #{to-rgb($body-tertiary-bg-dark)};\n\n @each $color, $value in $theme-colors-text-dark {\n --#{$prefix}#{$color}-text-emphasis: #{$value};\n }\n\n @each $color, $value in $theme-colors-bg-subtle-dark {\n --#{$prefix}#{$color}-bg-subtle: #{$value};\n }\n\n @each $color, $value in $theme-colors-border-subtle-dark {\n --#{$prefix}#{$color}-border-subtle: #{$value};\n }\n\n --#{$prefix}heading-color: #{$headings-color-dark};\n\n --#{$prefix}link-color: #{$link-color-dark};\n --#{$prefix}link-hover-color: #{$link-hover-color-dark};\n --#{$prefix}link-color-rgb: #{to-rgb($link-color-dark)};\n --#{$prefix}link-hover-color-rgb: #{to-rgb($link-hover-color-dark)};\n\n --#{$prefix}code-color: #{$code-color-dark};\n\n --#{$prefix}border-color: #{$border-color-dark};\n --#{$prefix}border-color-translucent: #{$border-color-translucent-dark};\n\n --#{$prefix}form-valid-color: #{$form-valid-color-dark};\n --#{$prefix}form-valid-border-color: #{$form-valid-border-color-dark};\n --#{$prefix}form-invalid-color: #{$form-invalid-color-dark};\n --#{$prefix}form-invalid-border-color: #{$form-invalid-border-color-dark};\n // scss-docs-end root-dark-mode-vars\n }\n}\n","// stylelint-disable scss/dimension-no-non-numeric-values\n\n// SCSS RFS mixin\n//\n// Automated responsive values for font sizes, paddings, margins and much more\n//\n// Licensed under MIT (https://github.com/twbs/rfs/blob/main/LICENSE)\n\n// Configuration\n\n// Base value\n$rfs-base-value: 1.25rem !default;\n$rfs-unit: rem !default;\n\n@if $rfs-unit != rem and $rfs-unit != px {\n @error \"`#{$rfs-unit}` is not a valid unit for $rfs-unit. Use `px` or `rem`.\";\n}\n\n// Breakpoint at where values start decreasing if screen width is smaller\n$rfs-breakpoint: 1200px !default;\n$rfs-breakpoint-unit: px !default;\n\n@if $rfs-breakpoint-unit != px and $rfs-breakpoint-unit != em and $rfs-breakpoint-unit != rem {\n @error \"`#{$rfs-breakpoint-unit}` is not a valid unit for $rfs-breakpoint-unit. Use `px`, `em` or `rem`.\";\n}\n\n// Resize values based on screen height and width\n$rfs-two-dimensional: false !default;\n\n// Factor of decrease\n$rfs-factor: 10 !default;\n\n@if type-of($rfs-factor) != number or $rfs-factor <= 1 {\n @error \"`#{$rfs-factor}` is not a valid $rfs-factor, it must be greater than 1.\";\n}\n\n// Mode. Possibilities: \"min-media-query\", \"max-media-query\"\n$rfs-mode: min-media-query !default;\n\n// Generate enable or disable classes. Possibilities: false, \"enable\" or \"disable\"\n$rfs-class: false !default;\n\n// 1 rem = $rfs-rem-value px\n$rfs-rem-value: 16 !default;\n\n// Safari iframe resize bug: https://github.com/twbs/rfs/issues/14\n$rfs-safari-iframe-resize-bug-fix: false !default;\n\n// Disable RFS by setting $enable-rfs to false\n$enable-rfs: true !default;\n\n// Cache $rfs-base-value unit\n$rfs-base-value-unit: unit($rfs-base-value);\n\n@function divide($dividend, $divisor, $precision: 10) {\n $sign: if($dividend > 0 and $divisor > 0 or $dividend < 0 and $divisor < 0, 1, -1);\n $dividend: abs($dividend);\n $divisor: abs($divisor);\n @if $dividend == 0 {\n @return 0;\n }\n @if $divisor == 0 {\n @error \"Cannot divide by 0\";\n }\n $remainder: $dividend;\n $result: 0;\n $factor: 10;\n @while ($remainder > 0 and $precision >= 0) {\n $quotient: 0;\n @while ($remainder >= $divisor) {\n $remainder: $remainder - $divisor;\n $quotient: $quotient + 1;\n }\n $result: $result * 10 + $quotient;\n $factor: $factor * .1;\n $remainder: $remainder * 10;\n $precision: $precision - 1;\n @if ($precision < 0 and $remainder >= $divisor * 5) {\n $result: $result + 1;\n }\n }\n $result: $result * $factor * $sign;\n $dividend-unit: unit($dividend);\n $divisor-unit: unit($divisor);\n $unit-map: (\n \"px\": 1px,\n \"rem\": 1rem,\n \"em\": 1em,\n \"%\": 1%\n );\n @if ($dividend-unit != $divisor-unit and map-has-key($unit-map, $dividend-unit)) {\n $result: $result * map-get($unit-map, $dividend-unit);\n }\n @return $result;\n}\n\n// Remove px-unit from $rfs-base-value for calculations\n@if $rfs-base-value-unit == px {\n $rfs-base-value: divide($rfs-base-value, $rfs-base-value * 0 + 1);\n}\n@else if $rfs-base-value-unit == rem {\n $rfs-base-value: divide($rfs-base-value, divide($rfs-base-value * 0 + 1, $rfs-rem-value));\n}\n\n// Cache $rfs-breakpoint unit to prevent multiple calls\n$rfs-breakpoint-unit-cache: unit($rfs-breakpoint);\n\n// Remove unit from $rfs-breakpoint for calculations\n@if $rfs-breakpoint-unit-cache == px {\n $rfs-breakpoint: divide($rfs-breakpoint, $rfs-breakpoint * 0 + 1);\n}\n@else if $rfs-breakpoint-unit-cache == rem or $rfs-breakpoint-unit-cache == \"em\" {\n $rfs-breakpoint: divide($rfs-breakpoint, divide($rfs-breakpoint * 0 + 1, $rfs-rem-value));\n}\n\n// Calculate the media query value\n$rfs-mq-value: if($rfs-breakpoint-unit == px, #{$rfs-breakpoint}px, #{divide($rfs-breakpoint, $rfs-rem-value)}#{$rfs-breakpoint-unit});\n$rfs-mq-property-width: if($rfs-mode == max-media-query, max-width, min-width);\n$rfs-mq-property-height: if($rfs-mode == max-media-query, max-height, min-height);\n\n// Internal mixin used to determine which media query needs to be used\n@mixin _rfs-media-query {\n @if $rfs-two-dimensional {\n @if $rfs-mode == max-media-query {\n @media (#{$rfs-mq-property-width}: #{$rfs-mq-value}), (#{$rfs-mq-property-height}: #{$rfs-mq-value}) {\n @content;\n }\n }\n @else {\n @media (#{$rfs-mq-property-width}: #{$rfs-mq-value}) and (#{$rfs-mq-property-height}: #{$rfs-mq-value}) {\n @content;\n }\n }\n }\n @else {\n @media (#{$rfs-mq-property-width}: #{$rfs-mq-value}) {\n @content;\n }\n }\n}\n\n// Internal mixin that adds disable classes to the selector if needed.\n@mixin _rfs-rule {\n @if $rfs-class == disable and $rfs-mode == max-media-query {\n // Adding an extra class increases specificity, which prevents the media query to override the property\n &,\n .disable-rfs &,\n &.disable-rfs {\n @content;\n }\n }\n @else if $rfs-class == enable and $rfs-mode == min-media-query {\n .enable-rfs &,\n &.enable-rfs {\n @content;\n }\n } @else {\n @content;\n }\n}\n\n// Internal mixin that adds enable classes to the selector if needed.\n@mixin _rfs-media-query-rule {\n\n @if $rfs-class == enable {\n @if $rfs-mode == min-media-query {\n @content;\n }\n\n @include _rfs-media-query () {\n .enable-rfs &,\n &.enable-rfs {\n @content;\n }\n }\n }\n @else {\n @if $rfs-class == disable and $rfs-mode == min-media-query {\n .disable-rfs &,\n &.disable-rfs {\n @content;\n }\n }\n @include _rfs-media-query () {\n @content;\n }\n }\n}\n\n// Helper function to get the formatted non-responsive value\n@function rfs-value($values) {\n // Convert to list\n $values: if(type-of($values) != list, ($values,), $values);\n\n $val: \"\";\n\n // Loop over each value and calculate value\n @each $value in $values {\n @if $value == 0 {\n $val: $val + \" 0\";\n }\n @else {\n // Cache $value unit\n $unit: if(type-of($value) == \"number\", unit($value), false);\n\n @if $unit == px {\n // Convert to rem if needed\n $val: $val + \" \" + if($rfs-unit == rem, #{divide($value, $value * 0 + $rfs-rem-value)}rem, $value);\n }\n @else if $unit == rem {\n // Convert to px if needed\n $val: $val + \" \" + if($rfs-unit == px, #{divide($value, $value * 0 + 1) * $rfs-rem-value}px, $value);\n } @else {\n // If $value isn't a number (like inherit) or $value has a unit (not px or rem, like 1.5em) or $ is 0, just print the value\n $val: $val + \" \" + $value;\n }\n }\n }\n\n // Remove first space\n @return unquote(str-slice($val, 2));\n}\n\n// Helper function to get the responsive value calculated by RFS\n@function rfs-fluid-value($values) {\n // Convert to list\n $values: if(type-of($values) != list, ($values,), $values);\n\n $val: \"\";\n\n // Loop over each value and calculate value\n @each $value in $values {\n @if $value == 0 {\n $val: $val + \" 0\";\n } @else {\n // Cache $value unit\n $unit: if(type-of($value) == \"number\", unit($value), false);\n\n // If $value isn't a number (like inherit) or $value has a unit (not px or rem, like 1.5em) or $ is 0, just print the value\n @if not $unit or $unit != px and $unit != rem {\n $val: $val + \" \" + $value;\n } @else {\n // Remove unit from $value for calculations\n $value: divide($value, $value * 0 + if($unit == px, 1, divide(1, $rfs-rem-value)));\n\n // Only add the media query if the value is greater than the minimum value\n @if abs($value) <= $rfs-base-value or not $enable-rfs {\n $val: $val + \" \" + if($rfs-unit == rem, #{divide($value, $rfs-rem-value)}rem, #{$value}px);\n }\n @else {\n // Calculate the minimum value\n $value-min: $rfs-base-value + divide(abs($value) - $rfs-base-value, $rfs-factor);\n\n // Calculate difference between $value and the minimum value\n $value-diff: abs($value) - $value-min;\n\n // Base value formatting\n $min-width: if($rfs-unit == rem, #{divide($value-min, $rfs-rem-value)}rem, #{$value-min}px);\n\n // Use negative value if needed\n $min-width: if($value < 0, -$min-width, $min-width);\n\n // Use `vmin` if two-dimensional is enabled\n $variable-unit: if($rfs-two-dimensional, vmin, vw);\n\n // Calculate the variable width between 0 and $rfs-breakpoint\n $variable-width: #{divide($value-diff * 100, $rfs-breakpoint)}#{$variable-unit};\n\n // Return the calculated value\n $val: $val + \" calc(\" + $min-width + if($value < 0, \" - \", \" + \") + $variable-width + \")\";\n }\n }\n }\n }\n\n // Remove first space\n @return unquote(str-slice($val, 2));\n}\n\n// RFS mixin\n@mixin rfs($values, $property: font-size) {\n @if $values != null {\n $val: rfs-value($values);\n $fluid-val: rfs-fluid-value($values);\n\n // Do not print the media query if responsive & non-responsive values are the same\n @if $val == $fluid-val {\n #{$property}: $val;\n }\n @else {\n @include _rfs-rule () {\n #{$property}: if($rfs-mode == max-media-query, $val, $fluid-val);\n\n // Include safari iframe resize fix if needed\n min-width: if($rfs-safari-iframe-resize-bug-fix, (0 * 1vw), null);\n }\n\n @include _rfs-media-query-rule () {\n #{$property}: if($rfs-mode == max-media-query, $fluid-val, $val);\n }\n }\n }\n}\n\n// Shorthand helper mixins\n@mixin font-size($value) {\n @include rfs($value);\n}\n\n@mixin padding($value) {\n @include rfs($value, padding);\n}\n\n@mixin padding-top($value) {\n @include rfs($value, padding-top);\n}\n\n@mixin padding-right($value) {\n @include rfs($value, padding-right);\n}\n\n@mixin padding-bottom($value) {\n @include rfs($value, padding-bottom);\n}\n\n@mixin padding-left($value) {\n @include rfs($value, padding-left);\n}\n\n@mixin margin($value) {\n @include rfs($value, margin);\n}\n\n@mixin margin-top($value) {\n @include rfs($value, margin-top);\n}\n\n@mixin margin-right($value) {\n @include rfs($value, margin-right);\n}\n\n@mixin margin-bottom($value) {\n @include rfs($value, margin-bottom);\n}\n\n@mixin margin-left($value) {\n @include rfs($value, margin-left);\n}\n","// scss-docs-start color-mode-mixin\n@mixin color-mode($mode: light, $root: false) {\n @if $color-mode-type == \"media-query\" {\n @if $root == true {\n @media (prefers-color-scheme: $mode) {\n :root {\n @content;\n }\n }\n } @else {\n @media (prefers-color-scheme: $mode) {\n @content;\n }\n }\n } @else {\n [data-bs-theme=\"#{$mode}\"] {\n @content;\n }\n }\n}\n// scss-docs-end color-mode-mixin\n","// stylelint-disable declaration-no-important, selector-no-qualifying-type, property-no-vendor-prefix\n\n\n// Reboot\n//\n// Normalization of HTML elements, manually forked from Normalize.css to remove\n// styles targeting irrelevant browsers while applying new styles.\n//\n// Normalize is licensed MIT. https://github.com/necolas/normalize.css\n\n\n// Document\n//\n// Change from `box-sizing: content-box` so that `width` is not affected by `padding` or `border`.\n\n*,\n*::before,\n*::after {\n box-sizing: border-box;\n}\n\n\n// Root\n//\n// Ability to the value of the root font sizes, affecting the value of `rem`.\n// null by default, thus nothing is generated.\n\n:root {\n @if $font-size-root != null {\n @include font-size(var(--#{$prefix}root-font-size));\n }\n\n @if $enable-smooth-scroll {\n @media (prefers-reduced-motion: no-preference) {\n scroll-behavior: smooth;\n }\n }\n}\n\n\n// Body\n//\n// 1. Remove the margin in all browsers.\n// 2. As a best practice, apply a default `background-color`.\n// 3. Prevent adjustments of font size after orientation changes in iOS.\n// 4. Change the default tap highlight to be completely transparent in iOS.\n\n// scss-docs-start reboot-body-rules\nbody {\n margin: 0; // 1\n font-family: var(--#{$prefix}body-font-family);\n @include font-size(var(--#{$prefix}body-font-size));\n font-weight: var(--#{$prefix}body-font-weight);\n line-height: var(--#{$prefix}body-line-height);\n color: var(--#{$prefix}body-color);\n text-align: var(--#{$prefix}body-text-align);\n background-color: var(--#{$prefix}body-bg); // 2\n -webkit-text-size-adjust: 100%; // 3\n -webkit-tap-highlight-color: rgba($black, 0); // 4\n}\n// scss-docs-end reboot-body-rules\n\n\n// Content grouping\n//\n// 1. Reset Firefox's gray color\n\nhr {\n margin: $hr-margin-y 0;\n color: $hr-color; // 1\n border: 0;\n border-top: $hr-border-width solid $hr-border-color;\n opacity: $hr-opacity;\n}\n\n\n// Typography\n//\n// 1. Remove top margins from headings\n// By default, `

`-`

` all receive top and bottom margins. We nuke the top\n// margin for easier control within type scales as it avoids margin collapsing.\n\n%heading {\n margin-top: 0; // 1\n margin-bottom: $headings-margin-bottom;\n font-family: $headings-font-family;\n font-style: $headings-font-style;\n font-weight: $headings-font-weight;\n line-height: $headings-line-height;\n color: var(--#{$prefix}heading-color);\n}\n\nh1 {\n @extend %heading;\n @include font-size($h1-font-size);\n}\n\nh2 {\n @extend %heading;\n @include font-size($h2-font-size);\n}\n\nh3 {\n @extend %heading;\n @include font-size($h3-font-size);\n}\n\nh4 {\n @extend %heading;\n @include font-size($h4-font-size);\n}\n\nh5 {\n @extend %heading;\n @include font-size($h5-font-size);\n}\n\nh6 {\n @extend %heading;\n @include font-size($h6-font-size);\n}\n\n\n// Reset margins on paragraphs\n//\n// Similarly, the top margin on `

`s get reset. However, we also reset the\n// bottom margin to use `rem` units instead of `em`.\n\np {\n margin-top: 0;\n margin-bottom: $paragraph-margin-bottom;\n}\n\n\n// Abbreviations\n//\n// 1. Add the correct text decoration in Chrome, Edge, Opera, and Safari.\n// 2. Add explicit cursor to indicate changed behavior.\n// 3. Prevent the text-decoration to be skipped.\n\nabbr[title] {\n text-decoration: underline dotted; // 1\n cursor: help; // 2\n text-decoration-skip-ink: none; // 3\n}\n\n\n// Address\n\naddress {\n margin-bottom: 1rem;\n font-style: normal;\n line-height: inherit;\n}\n\n\n// Lists\n\nol,\nul {\n padding-left: 2rem;\n}\n\nol,\nul,\ndl {\n margin-top: 0;\n margin-bottom: 1rem;\n}\n\nol ol,\nul ul,\nol ul,\nul ol {\n margin-bottom: 0;\n}\n\ndt {\n font-weight: $dt-font-weight;\n}\n\n// 1. Undo browser default\n\ndd {\n margin-bottom: .5rem;\n margin-left: 0; // 1\n}\n\n\n// Blockquote\n\nblockquote {\n margin: 0 0 1rem;\n}\n\n\n// Strong\n//\n// Add the correct font weight in Chrome, Edge, and Safari\n\nb,\nstrong {\n font-weight: $font-weight-bolder;\n}\n\n\n// Small\n//\n// Add the correct font size in all browsers\n\nsmall {\n @include font-size($small-font-size);\n}\n\n\n// Mark\n\nmark {\n padding: $mark-padding;\n background-color: var(--#{$prefix}highlight-bg);\n}\n\n\n// Sub and Sup\n//\n// Prevent `sub` and `sup` elements from affecting the line height in\n// all browsers.\n\nsub,\nsup {\n position: relative;\n @include font-size($sub-sup-font-size);\n line-height: 0;\n vertical-align: baseline;\n}\n\nsub { bottom: -.25em; }\nsup { top: -.5em; }\n\n\n// Links\n\na {\n color: rgba(var(--#{$prefix}link-color-rgb), var(--#{$prefix}link-opacity, 1));\n text-decoration: $link-decoration;\n\n &:hover {\n --#{$prefix}link-color-rgb: var(--#{$prefix}link-hover-color-rgb);\n text-decoration: $link-hover-decoration;\n }\n}\n\n// And undo these styles for placeholder links/named anchors (without href).\n// It would be more straightforward to just use a[href] in previous block, but that\n// causes specificity issues in many other styles that are too complex to fix.\n// See https://github.com/twbs/bootstrap/issues/19402\n\na:not([href]):not([class]) {\n &,\n &:hover {\n color: inherit;\n text-decoration: none;\n }\n}\n\n\n// Code\n\npre,\ncode,\nkbd,\nsamp {\n font-family: $font-family-code;\n @include font-size(1em); // Correct the odd `em` font sizing in all browsers.\n}\n\n// 1. Remove browser default top margin\n// 2. Reset browser default of `1em` to use `rem`s\n// 3. Don't allow content to break outside\n\npre {\n display: block;\n margin-top: 0; // 1\n margin-bottom: 1rem; // 2\n overflow: auto; // 3\n @include font-size($code-font-size);\n color: $pre-color;\n\n // Account for some code outputs that place code tags in pre tags\n code {\n @include font-size(inherit);\n color: inherit;\n word-break: normal;\n }\n}\n\ncode {\n @include font-size($code-font-size);\n color: var(--#{$prefix}code-color);\n word-wrap: break-word;\n\n // Streamline the style when inside anchors to avoid broken underline and more\n a > & {\n color: inherit;\n }\n}\n\nkbd {\n padding: $kbd-padding-y $kbd-padding-x;\n @include font-size($kbd-font-size);\n color: $kbd-color;\n background-color: $kbd-bg;\n @include border-radius($border-radius-sm);\n\n kbd {\n padding: 0;\n @include font-size(1em);\n font-weight: $nested-kbd-font-weight;\n }\n}\n\n\n// Figures\n//\n// Apply a consistent margin strategy (matches our type styles).\n\nfigure {\n margin: 0 0 1rem;\n}\n\n\n// Images and content\n\nimg,\nsvg {\n vertical-align: middle;\n}\n\n\n// Tables\n//\n// Prevent double borders\n\ntable {\n caption-side: bottom;\n border-collapse: collapse;\n}\n\ncaption {\n padding-top: $table-cell-padding-y;\n padding-bottom: $table-cell-padding-y;\n color: $table-caption-color;\n text-align: left;\n}\n\n// 1. Removes font-weight bold by inheriting\n// 2. Matches default `` alignment by inheriting `text-align`.\n// 3. Fix alignment for Safari\n\nth {\n font-weight: $table-th-font-weight; // 1\n text-align: inherit; // 2\n text-align: -webkit-match-parent; // 3\n}\n\nthead,\ntbody,\ntfoot,\ntr,\ntd,\nth {\n border-color: inherit;\n border-style: solid;\n border-width: 0;\n}\n\n\n// Forms\n//\n// 1. Allow labels to use `margin` for spacing.\n\nlabel {\n display: inline-block; // 1\n}\n\n// Remove the default `border-radius` that macOS Chrome adds.\n// See https://github.com/twbs/bootstrap/issues/24093\n\nbutton {\n // stylelint-disable-next-line property-disallowed-list\n border-radius: 0;\n}\n\n// Explicitly remove focus outline in Chromium when it shouldn't be\n// visible (e.g. as result of mouse click or touch tap). It already\n// should be doing this automatically, but seems to currently be\n// confused and applies its very visible two-tone outline anyway.\n\nbutton:focus:not(:focus-visible) {\n outline: 0;\n}\n\n// 1. Remove the margin in Firefox and Safari\n\ninput,\nbutton,\nselect,\noptgroup,\ntextarea {\n margin: 0; // 1\n font-family: inherit;\n @include font-size(inherit);\n line-height: inherit;\n}\n\n// Remove the inheritance of text transform in Firefox\nbutton,\nselect {\n text-transform: none;\n}\n// Set the cursor for non-`', + '' + ].join('') + + alertPlaceholder.append(wrapper) + } + + const alertTrigger = document.getElementById('liveAlertBtn') + if (alertTrigger) { + alertTrigger.addEventListener('click', () => { + alert('Nice, you triggered this alert message!', 'success') + }) + } + + // RTL Layout + if (document.getElementById('app-style').href.includes('rtl.min.css')) { + document.getElementsByTagName('html')[0].dir = "rtl"; + } + } + + // Portlet Widget (Card Reload, Collapse, and Delete) + function initPortletCard() { + + var portletIdentifier = ".card" + var portletCloser = '.card a[data-bs-toggle="remove"]' + var portletRefresher = '.card a[data-bs-toggle="reload"]' + let self = this + + // Panel closest + $(document).on("click", portletCloser, function (ev) { + ev.preventDefault(); + var $portlet = $(this).closest(portletIdentifier); + var $portlet_parent = $portlet.parent(); + $portlet.remove(); + if ($portlet_parent.children().length == 0) { + $portlet_parent.remove(); + } + }); + + // Panel Reload + $(document).on("click", portletRefresher, function (ev) { + ev.preventDefault(); + var $portlet = $(this).closest(portletIdentifier); + // This is just a simulation, nothing is going to be reloaded + $portlet.append('

'); + var $pd = $portlet.find('.card-disabled'); + setTimeout(function () { + $pd.fadeOut('fast', function () { + $pd.remove(); + }); + }, 500 + 300 * (Math.random() * 5)); + }); + } + + // Multi Dropdown + function initMultiDropdown() { + $('.dropdown-menu a.dropdown-toggle').on('click', function () { + var dropdown = $(this).next('.dropdown-menu'); + var otherDropdown = $(this).parent().parent().find('.dropdown-menu').not(dropdown); + otherDropdown.removeClass('show') + otherDropdown.parent().find('.dropdown-toggle').removeClass('show') + return false; + }); + } + + // Left Sidebar Menu (Vertical Menu) + function initLeftSidebar() { + var self = this; + + if ($(".side-nav").length) { + var navCollapse = $('.side-nav li .collapse'); + var navToggle = $(".side-nav li [data-bs-toggle='collapse']"); + navToggle.on('click', function (e) { + return false; + }); + + // open one menu at a time only + navCollapse.on({ + 'show.bs.collapse': function (event) { + var parent = $(event.target).parents('.collapse.show'); + $('.side-nav .collapse.show').not(event.target).not(parent).collapse('hide'); + } + }); + + // activate the menu in left side bar (Vertical Menu) based on url + $(".side-nav a").each(function () { + var pageUrl = window.location.href.split(/[?#]/)[0]; + if (this.href == pageUrl) { + $(this).addClass("active"); + $(this).parent().addClass("menuitem-active"); + $(this).parent().parent().parent().addClass("show"); + $(this).parent().parent().parent().parent().addClass("menuitem-active"); // add active to li of the current link + + var firstLevelParent = $(this).parent().parent().parent().parent().parent().parent(); + if (firstLevelParent.attr('id') !== 'sidebar-menu') firstLevelParent.addClass("show"); + + $(this).parent().parent().parent().parent().parent().parent().parent().addClass("menuitem-active"); + + var secondLevelParent = $(this).parent().parent().parent().parent().parent().parent().parent().parent().parent(); + if (secondLevelParent.attr('id') !== 'wrapper') secondLevelParent.addClass("show"); + + var upperLevelParent = $(this).parent().parent().parent().parent().parent().parent().parent().parent().parent().parent(); + if (!upperLevelParent.is('body')) upperLevelParent.addClass("menuitem-active"); + } + }); + + + setTimeout(function () { + var activatedItem = document.querySelector('li.menuitem-active .active'); + if (activatedItem != null) { + var simplebarContent = document.querySelector('.leftside-menu .simplebar-content-wrapper'); + var offset = activatedItem.offsetTop - 300; + if (simplebarContent && offset > 100) { + scrollTo(simplebarContent, offset, 600); + } + } + }, 200); + + // scrollTo (Left Side Bar Active Menu) + function easeInOutQuad(t, b, c, d) { + t /= d / 2; + if (t < 1) return c / 2 * t * t + b; + t--; + return -c / 2 * (t * (t - 2) - 1) + b; + } + function scrollTo(element, to, duration) { + var start = element.scrollTop, change = to - start, currentTime = 0, increment = 20; + var animateScroll = function () { + currentTime += increment; + var val = easeInOutQuad(currentTime, start, change, duration); + element.scrollTop = val; + if (currentTime < duration) { + setTimeout(animateScroll, increment); + } + }; + animateScroll(); + } + } + } + + // Topbar Menu (HOrizontal Menu) + function initTopbarMenu() { + if ($('.navbar-nav').length) { + $('.navbar-nav li a').each(function () { + var pageUrl = window.location.href.split(/[?#]/)[0]; + if (this.href == pageUrl) { + $(this).addClass('active'); + $(this).parent().parent().addClass('active'); // add active to li of the current link + $(this).parent().parent().parent().parent().addClass('active'); + $(this).parent().parent().parent().parent().parent().parent().addClass('active'); + } + }); + + // Topbar - main menu + $('.navbar-toggle').on('click', function () { + $(this).toggleClass('open'); + $('#navigation').slideToggle(400); + }); + } + } + + // Topbar Search Form + function initSearch() { + // Serach Toggle + var navDropdowns = $('.navbar-custom .dropdown:not(.app-search)'); + + // hide on other click + $(document).on('click', function (e) { + if (e.target.id == "top-search" || e.target.closest('#search-dropdown')) { + $('#search-dropdown').addClass('show'); + } else { + $('#search-dropdown').removeClass('show'); + } + return true; + }); + + // Serach Toggle + $('#top-search').on('focus', function (e) { + e.preventDefault(); + navDropdowns.children('.dropdown-menu.show').removeClass('show'); + $('#search-dropdown').addClass('show'); + return false; + }); + + // hide search on opening other dropdown + navDropdowns.on('show.bs.dropdown', function () { + $('#search-dropdown').removeClass('show'); + }); + } + + // Topbar Fullscreen Button + function initfullScreenListener() { + var self = this; + var fullScreenBtn = document.querySelector('[data-toggle="fullscreen"]'); + + if (fullScreenBtn) { + fullScreenBtn.addEventListener('click', function (e) { + e.preventDefault(); + document.body.classList.toggle('fullscreen-enable') + if (!document.fullscreenElement && /* alternative standard method */ !document.mozFullScreenElement && !document.webkitFullscreenElement) { // current working methods + if (document.documentElement.requestFullscreen) { + document.documentElement.requestFullscreen(); + } else if (document.documentElement.mozRequestFullScreen) { + document.documentElement.mozRequestFullScreen(); + } else if (document.documentElement.webkitRequestFullscreen) { + document.documentElement.webkitRequestFullscreen(Element.ALLOW_KEYBOARD_INPUT); + } + } else { + if (document.cancelFullScreen) { + document.cancelFullScreen(); + } else if (document.mozCancelFullScreen) { + document.mozCancelFullScreen(); + } else if (document.webkitCancelFullScreen) { + document.webkitCancelFullScreen(); + } + } + }); + } + } + + // Show/Hide Password + function initShowHidePassword() { + $("[data-password]").on('click', function () { + if ($(this).attr('data-password') == "false") { + $(this).siblings("input").attr("type", "text"); + $(this).attr('data-password', 'true'); + $(this).addClass("show-password"); + } else { + $(this).siblings("input").attr("type", "password"); + $(this).attr('data-password', 'false'); + $(this).removeClass("show-password"); + } + }); + } + + // Form Validation + function initFormValidation() { + // Example starter JavaScript for disabling form submissions if there are invalid fields + // Fetch all the forms we want to apply custom Bootstrap validation styles to + // Loop over them and prevent submission + document.querySelectorAll('.needs-validation').forEach(form => { + form.addEventListener('submit', event => { + if (!form.checkValidity()) { + event.preventDefault() + event.stopPropagation() + } + + form.classList.add('was-validated') + }, false) + }) + } + + // Form Advance + function initFormAdvance() { + // Select2 + if (jQuery().select2) { + $('[data-toggle="select2"]').select2(); + } + + // Input Mask + if (jQuery().mask) { + $('[data-toggle="input-mask"]').each(function (idx, obj) { + var maskFormat = $(obj).data("maskFormat"); + var reverse = $(obj).data("reverse"); + if (reverse != null) + $(obj).mask(maskFormat, { 'reverse': reverse }); + else + $(obj).mask(maskFormat); + }); + } + + // Bootstrap Touchspin + if (jQuery().TouchSpin) { + var defaultOptions = { + + }; + + $('[data-toggle="touchspin"]').each(function (idx, obj) { + var objOptions = $.extend({}, defaultOptions, $(obj).data()); + $(obj).TouchSpin(objOptions); + }); + } + + // Bootstrap Maxlength + if (jQuery().maxlength) { + var defaultOptions = { + warningClass: "badge bg-success", + limitReachedClass: "badge bg-danger", + separator: ' out of ', + preText: 'You typed ', + postText: ' chars available.', + placement: 'bottom', + }; + + $('[data-toggle="maxlength"]').each(function (idx, obj) { + var objOptions = $.extend({}, defaultOptions, $(obj).data()); + $(obj).maxlength(objOptions); + }); + } + } + + function init() { + initComponents(); + initPortletCard(); + initMultiDropdown(); + initLeftSidebar() + initTopbarMenu(); + initSearch(); + initfullScreenListener(); + initShowHidePassword(); + initFormValidation(); + initFormAdvance(); + } + + init(); + +})(jQuery) + +/** +* Theme: Jidox - Responsive Bootstrap 5 Admin Dashboard +* Author: Coderthemes +* Module/App: Layout Js +*/ + +class ThemeCustomizer { + + constructor() { + this.html = document.getElementsByTagName('html')[0] + this.config = {}; + this.defaultConfig = window.config; + } + + initConfig() { + this.defaultConfig = JSON.parse(JSON.stringify(window.defaultConfig)); + this.config = JSON.parse(JSON.stringify(window.config)); + this.setSwitchFromConfig(); + } + + changeMenuColor(color) { + this.config.menu.color = color; + this.html.setAttribute('data-menu-color', color); + this.setSwitchFromConfig(); + } + + changeLeftbarSize(size, save = true) { + this.html.setAttribute('data-sidenav-size', size); + if (save) { + this.config.sidenav.size = size; + this.setSwitchFromConfig(); + } + } + + changeLayoutMode(mode, save = true) { + this.html.setAttribute('data-layout-mode', mode); + if (save) { + this.config.layout.mode = mode; + this.setSwitchFromConfig(); + } + } + + changeLayoutPosition(position) { + this.config.layout.position = position; + this.html.setAttribute('data-layout-position', position); + this.setSwitchFromConfig(); + } + + changeLayoutColor(color) { + this.config.theme = color; + this.html.setAttribute('data-bs-theme', color); + this.setSwitchFromConfig(); + } + + changeTopbarColor(color) { + this.config.topbar.color = color; + this.html.setAttribute('data-topbar-color', color); + this.setSwitchFromConfig(); + } + + changeSidebarUser(showUser) { + + this.config.sidenav.user = showUser; + if (showUser) { + this.html.setAttribute('data-sidenav-user', showUser); + } else { + this.html.removeAttribute('data-sidenav-user'); + } + this.setSwitchFromConfig(); + } + + resetTheme() { + this.config = JSON.parse(JSON.stringify(window.defaultConfig)); + this.changeMenuColor(this.config.menu.color); + this.changeLeftbarSize(this.config.sidenav.size); + this.changeLayoutColor(this.config.theme); + this.changeLayoutMode(this.config.layout.mode); + this.changeLayoutPosition(this.config.layout.position); + this.changeTopbarColor(this.config.topbar.color); + this.changeSidebarUser(this.config.sidenav.user); + this._adjustLayout(); + } + + initSwitchListener() { + var self = this; + document.querySelectorAll('input[name=data-menu-color]').forEach(function (element) { + element.addEventListener('change', function (e) { + self.changeMenuColor(element.value); + }) + }); + + document.querySelectorAll('input[name=data-sidenav-size]').forEach(function (element) { + element.addEventListener('change', function (e) { + self.changeLeftbarSize(element.value); + }) + }); + + document.querySelectorAll('input[name=data-bs-theme]').forEach(function (element) { + element.addEventListener('change', function (e) { + self.changeLayoutColor(element.value); + }) + }); + document.querySelectorAll('input[name=data-layout-mode]').forEach(function (element) { + element.addEventListener('change', function (e) { + self.changeLayoutMode(element.value); + }) + }); + + document.querySelectorAll('input[name=data-layout-position]').forEach(function (element) { + element.addEventListener('change', function (e) { + self.changeLayoutPosition(element.value); + }) + }); + document.querySelectorAll('input[name=data-layout]').forEach(function (element) { + element.addEventListener('change', function (e) { + window.location = element.value === 'horizontal' ? '/layouts-horizontal' : '/' + }) + }); + document.querySelectorAll('input[name=data-topbar-color]').forEach(function (element) { + element.addEventListener('change', function (e) { + self.changeTopbarColor(element.value); + }) + }); + document.querySelectorAll('input[name=sidebar-user]').forEach(function (element) { + element.addEventListener('change', function (e) { + self.changeSidebarUser(element.checked); + }) + }); + + + //TopBar Light Dark + var themeColorToggle = document.getElementById('light-dark-mode'); + if (themeColorToggle) { + themeColorToggle.addEventListener('click', function (e) { + + if (self.config.theme === 'light') { + self.changeLayoutColor('dark'); + } else { + self.changeLayoutColor('light'); + } + }); + } + + var resetBtn = document.querySelector('#reset-layout') + if (resetBtn) { + resetBtn.addEventListener('click', function (e) { + self.resetTheme(); + }); + } + + var menuToggleBtn = document.querySelector('.button-toggle-menu'); + if (menuToggleBtn) { + menuToggleBtn.addEventListener('click', function () { + var configSize = self.config.sidenav.size; + var size = self.html.getAttribute('data-sidenav-size', configSize); + + if (size === 'full') { + self.showBackdrop(); + } else { + if (configSize == 'fullscreen') { + if (size === 'fullscreen') { + self.changeLeftbarSize(configSize == 'fullscreen' ? 'default' : configSize, false); + } else { + self.changeLeftbarSize('fullscreen', false); + } + } else { + if (size === 'condensed') { + self.changeLeftbarSize(configSize == 'condensed' ? 'default' : configSize, false); + } else { + self.changeLeftbarSize('condensed', false); + } + } + } + + // Todo: old implementation + self.html.classList.toggle('sidebar-enable'); + + }); + } + + var menuCloseBtn = document.querySelector('.button-close-fullsidebar'); + if (menuCloseBtn) { + menuCloseBtn.addEventListener('click', function () { + self.html.classList.remove('sidebar-enable'); + self.hideBackdrop(); + }); + } + + var hoverBtn = document.querySelectorAll('.button-sm-hover'); + hoverBtn.forEach(function (element) { + element.addEventListener('click', function () { + var configSize = self.config.sidenav.size; + var size = self.html.getAttribute('data-sidenav-size', configSize); + + if (size === 'sm-hover-active') { + self.changeLeftbarSize('sm-hover', false); + } else { + self.changeLeftbarSize('sm-hover-active', false); + } + }); + }) + } + + showBackdrop() { + const backdrop = document.createElement('div'); + backdrop.id = 'custom-backdrop'; + backdrop.classList = 'offcanvas-backdrop fade show'; + document.body.appendChild(backdrop); + document.body.style.overflow = "hidden"; + if (window.innerWidth > 767) { + document.body.style.paddingRight = "15px"; + } + const self = this + backdrop.addEventListener('click', function (e) { + self.html.classList.remove('sidebar-enable'); + self.hideBackdrop(); + }) + } + + hideBackdrop() { + var backdrop = document.getElementById('custom-backdrop'); + if (backdrop) { + document.body.removeChild(backdrop); + document.body.style.overflow = null; + document.body.style.paddingRight = null; + } + } + + + initWindowSize() { + var self = this; + window.addEventListener('resize', function (e) { + self._adjustLayout(); + }) + } + + _adjustLayout() { + var self = this; + + if (window.innerWidth <= 767.98) { + self.changeLeftbarSize('full', false); + } else if (window.innerWidth >= 767 && window.innerWidth <= 1140) { + if (self.config.sidenav.size !== 'full' && self.config.sidenav.size !== 'fullscreen') { + if (self.config.sidenav.size === 'sm-hover') { + self.changeLeftbarSize('condensed'); + } else { + self.changeLeftbarSize('condensed', false); + } + } + } else { + self.changeLeftbarSize(self.config.sidenav.size); + self.changeLayoutMode(self.config.layout.mode); + } + } + + setSwitchFromConfig() { + + sessionStorage.setItem('__CONFIG__', JSON.stringify(this.config)); + // localStorage.setItem('__CONFIG__', JSON.stringify(this.config)); + + document.querySelectorAll('#theme-settings-offcanvas input[type=checkbox]').forEach(function (checkbox) { + checkbox.checked = false; + }) + + var config = this.config; + if (config) { + var layoutNavSwitch = document.querySelector('input[type=checkbox][name=data-layout][value=' + config.nav + ']'); + var layoutColorSwitch = document.querySelector('input[type=checkbox][name=data-bs-theme][value=' + config.theme + ']'); + var layoutModeSwitch = document.querySelector('input[type=checkbox][name=data-layout-mode][value=' + config.layout.mode + ']'); + var topbarColorSwitch = document.querySelector('input[type=checkbox][name=data-topbar-color][value=' + config.topbar.color + ']'); + var menuColorSwitch = document.querySelector('input[type=checkbox][name=data-menu-color][value=' + config.menu.color + ']'); + var leftbarSizeSwitch = document.querySelector('input[type=checkbox][name=data-sidenav-size][value=' + config.sidenav.size + ']'); + var layoutPositionSwitch = document.querySelector('input[type=radio][name=data-layout-position][value=' + config.layout.position + ']'); + var sidebarUserSwitch = document.querySelector('input[type=checkbox][name=sidebar-user]'); + + if (layoutNavSwitch) layoutNavSwitch.checked = true; + if (layoutColorSwitch) layoutColorSwitch.checked = true; + if (layoutModeSwitch) layoutModeSwitch.checked = true; + if (topbarColorSwitch) topbarColorSwitch.checked = true; + if (menuColorSwitch) menuColorSwitch.checked = true; + if (leftbarSizeSwitch) leftbarSizeSwitch.checked = true; + if (layoutPositionSwitch) layoutPositionSwitch.checked = true; + if (sidebarUserSwitch && config.sidenav.user.toString() === "true") sidebarUserSwitch.checked = true; + } + } + + init() { + this.initConfig(); + this.initSwitchListener(); + this.initWindowSize(); + this._adjustLayout(); + this.setSwitchFromConfig(); + } +} + +new ThemeCustomizer().init(); \ No newline at end of file diff --git a/pxy_dashboard/static/dashboard/js/app.min.js b/pxy_dashboard/static/dashboard/js/app.min.js new file mode 100644 index 0000000..9d9bd05 --- /dev/null +++ b/pxy_dashboard/static/dashboard/js/app.min.js @@ -0,0 +1 @@ +"use strict";function _typeof(e){return(_typeof="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}function _classCallCheck(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function _defineProperties(e,t){for(var n=0;ne.length)&&(t=e.length);for(var n=0,a=new Array(t);n'),"
".concat(e,"
"),' ',""].join(""),a.append(n)}),document.getElementById("app-style").href.includes("rtl.min.css")&&(document.getElementsByTagName("html")[0].dir="rtl")}function t(){var c,e;o(".side-nav").length&&(c=function(e,t,n,a){return(e/=a/2)<1?n/2*e*e+t:-n/2*(--e*(e-2)-1)+t},e=o(".side-nav li .collapse"),o(".side-nav li [data-bs-toggle='collapse']").on("click",function(e){return!1}),e.on({"show.bs.collapse":function(e){var t=o(e.target).parents(".collapse.show");o(".side-nav .collapse.show").not(e.target).not(t).collapse("hide")}}),o(".side-nav a").each(function(){var e=window.location.href.split(/[?#]/)[0];this.href==e&&(o(this).addClass("active"),o(this).parent().addClass("menuitem-active"),o(this).parent().parent().parent().addClass("show"),o(this).parent().parent().parent().parent().addClass("menuitem-active"),"sidebar-menu"!==(e=o(this).parent().parent().parent().parent().parent().parent()).attr("id")&&e.addClass("show"),o(this).parent().parent().parent().parent().parent().parent().parent().addClass("menuitem-active"),"wrapper"!==(e=o(this).parent().parent().parent().parent().parent().parent().parent().parent().parent()).attr("id")&&e.addClass("show"),(e=o(this).parent().parent().parent().parent().parent().parent().parent().parent().parent().parent()).is("body")||e.addClass("menuitem-active"))}),setTimeout(function(){var e,n,a,o,r,i,t=document.querySelector("li.menuitem-active .active");null!=t&&(e=document.querySelector(".leftside-menu .simplebar-content-wrapper"),t=t.offsetTop-300,e)&&100
'),e.find(".card-disabled"));setTimeout(function(){t.fadeOut("fast",function(){t.remove()})},500+5*Math.random()*300)}),o(".dropdown-menu a.dropdown-toggle").on("click",function(){var e=o(this).next(".dropdown-menu"),e=o(this).parent().parent().find(".dropdown-menu").not(e);return e.removeClass("show"),e.parent().find(".dropdown-toggle").removeClass("show"),!1}),t(),o(".navbar-nav").length&&(o(".navbar-nav li a").each(function(){var e=window.location.href.split(/[?#]/)[0];this.href==e&&(o(this).addClass("active"),o(this).parent().parent().addClass("active"),o(this).parent().parent().parent().parent().addClass("active"),o(this).parent().parent().parent().parent().parent().parent().addClass("active"))}),o(".navbar-toggle").on("click",function(){o(this).toggleClass("open"),o("#navigation").slideToggle(400)})),n=o(".navbar-custom .dropdown:not(.app-search)"),o(document).on("click",function(e){return"top-search"==e.target.id||e.target.closest("#search-dropdown")?o("#search-dropdown").addClass("show"):o("#search-dropdown").removeClass("show"),!0}),o("#top-search").on("focus",function(e){return e.preventDefault(),n.children(".dropdown-menu.show").removeClass("show"),o("#search-dropdown").addClass("show"),!1}),n.on("show.bs.dropdown",function(){o("#search-dropdown").removeClass("show")}),(a=document.querySelector('[data-toggle="fullscreen"]'))&&a.addEventListener("click",function(e){e.preventDefault(),document.body.classList.toggle("fullscreen-enable"),document.fullscreenElement||document.mozFullScreenElement||document.webkitFullscreenElement?document.cancelFullScreen?document.cancelFullScreen():document.mozCancelFullScreen?document.mozCancelFullScreen():document.webkitCancelFullScreen&&document.webkitCancelFullScreen():document.documentElement.requestFullscreen?document.documentElement.requestFullscreen():document.documentElement.mozRequestFullScreen?document.documentElement.mozRequestFullScreen():document.documentElement.webkitRequestFullscreen&&document.documentElement.webkitRequestFullscreen(Element.ALLOW_KEYBOARD_INPUT)}),o("[data-password]").on("click",function(){"false"==o(this).attr("data-password")?(o(this).siblings("input").attr("type","text"),o(this).attr("data-password","true"),o(this).addClass("show-password")):(o(this).siblings("input").attr("type","password"),o(this).attr("data-password","false"),o(this).removeClass("show-password"))}),document.querySelectorAll(".needs-validation").forEach(function(t){t.addEventListener("submit",function(e){t.checkValidity()||(e.preventDefault(),e.stopPropagation()),t.classList.add("was-validated")},!1)}),jQuery().select2&&o('[data-toggle="select2"]').select2(),jQuery().mask&&o('[data-toggle="input-mask"]').each(function(e,t){var n=o(t).data("maskFormat"),a=o(t).data("reverse");null!=a?o(t).mask(n,{reverse:a}):o(t).mask(n)}),jQuery().TouchSpin&&(r={},o('[data-toggle="touchspin"]').each(function(e,t){var n=o.extend({},r,o(t).data());o(t).TouchSpin(n)})),jQuery().maxlength&&(r={warningClass:"badge bg-success",limitReachedClass:"badge bg-danger",separator:" out of ",preText:"You typed ",postText:" chars available.",placement:"bottom"},o('[data-toggle="maxlength"]').each(function(e,t){var n=o.extend({},r,o(t).data());o(t).maxlength(n)}))}(jQuery);var ThemeCustomizer=function(){function e(){_classCallCheck(this,e),this.html=document.getElementsByTagName("html")[0],this.config={},this.defaultConfig=window.config}return _createClass(e,[{key:"initConfig",value:function(){this.defaultConfig=JSON.parse(JSON.stringify(window.defaultConfig)),this.config=JSON.parse(JSON.stringify(window.config)),this.setSwitchFromConfig()}},{key:"changeMenuColor",value:function(e){this.config.menu.color=e,this.html.setAttribute("data-menu-color",e),this.setSwitchFromConfig()}},{key:"changeLeftbarSize",value:function(e){var t=!(1
male'+i+'
Dominic

'+t+"

").appendTo(".conversation-list"),this.$chatInput.focus(),this.$chatList.animate({scrollTop:this.$chatList.prop("scrollHeight")},1e3),!0)},t.prototype.init=function(){var i=this;i.$chatInput.keypress(function(t){if(13==t.which)return i.save(),!1}),i.$chatForm.on("submit",function(t){return t.preventDefault(),i.save(),i.$chatForm.removeClass("was-validated"),i.$chatInput.val(""),!1})},a.ChatApp=new t,a.ChatApp.Constructor=t}(window.jQuery),function(){"use strict";window.jQuery.ChatApp.init()}(); \ No newline at end of file diff --git a/pxy_dashboard/static/dashboard/js/pages/component.dragula.js b/pxy_dashboard/static/dashboard/js/pages/component.dragula.js new file mode 100644 index 0000000..43aa3bb --- /dev/null +++ b/pxy_dashboard/static/dashboard/js/pages/component.dragula.js @@ -0,0 +1 @@ +!function(r){"use strict";function t(){this.$body=r("body")}t.prototype.init=function(){r('[data-plugin="dragula"]').each(function(){var t=r(this).data("containers"),a=[];if(t)for(var n=0;n
"):(t+=1,this.$todoList.prepend('
  • "))}this.$todoTotal.text(this.$todoData.length),this.$todoRemaining.text(t)},o.prototype.init=function(){var o=this;this.generate(),this.$archiveBtn.on("click",function(t){return t.preventDefault(),o.archives(),!1}),t(document).on("change",this.$todoDonechk,function(){this.checked?o.markTodo(t(this).attr("id"),!0):o.markTodo(t(this).attr("id"),!1),o.generate()}),this.$todoForm.on("submit",function(t){return t.preventDefault(),""==o.$todoInput.val()||void 0===o.$todoInput.val()||null==o.$todoInput.val()?(o.$todoInput.focus(),!1):(o.addTodo(o.$todoInput.val()),o.$todoForm.removeClass("was-validated"),o.$todoInput.val(""),!0)})},t.TodoApp=new o,t.TodoApp.Constructor=o}(window.jQuery),function(){"use strict";window.jQuery.TodoApp.init()}(); \ No newline at end of file diff --git a/pxy_dashboard/static/dashboard/js/pages/demo.apex-area.js b/pxy_dashboard/static/dashboard/js/pages/demo.apex-area.js new file mode 100644 index 0000000..43cc6a2 --- /dev/null +++ b/pxy_dashboard/static/dashboard/js/pages/demo.apex-area.js @@ -0,0 +1 @@ +var colors=["#fa6767"],dataColors=$("#basic-area").data("colors"),options={chart:{height:380,type:"area",zoom:{enabled:!1}},dataLabels:{enabled:!1},stroke:{width:3,curve:"straight"},colors:colors=dataColors?dataColors.split(","):colors,series:[{name:"STOCK ABC",data:series.monthDataSeries1.prices}],title:{text:"Fundamental Analysis of Stocks",align:"left"},subtitle:{text:"Price Movements",align:"left"},labels:series.monthDataSeries1.dates,xaxis:{type:"datetime"},yaxis:{opposite:!0},legend:{horizontalAlign:"left"},grid:{borderColor:"#f1f3fa"},responsive:[{breakpoint:600,options:{chart:{toolbar:{show:!1}},legend:{show:!1}}}]},chart=new ApexCharts(document.querySelector("#basic-area"),options),colors=(chart.render(),["#4254ba","#6c757d"]),dataColors=$("#spline-area").data("colors"),options={chart:{height:380,type:"area"},dataLabels:{enabled:!1},stroke:{width:3,curve:"smooth"},colors:colors=dataColors?dataColors.split(","):colors,series:[{name:"Series 1",data:[31,40,28,51,42,109,100]},{name:"Series 2",data:[11,32,45,32,34,52,41]}],legend:{offsetY:5},xaxis:{categories:["Jan","Feb","Mar","Apr","May","Jun","Jul"]},tooltip:{fixed:{enabled:!1,position:"topRight"}},grid:{borderColor:"#f1f3fa"}},colors=((chart=new ApexCharts(document.querySelector("#spline-area"),options)).render(),$(document).ready(function(){function t(e){var t=document.querySelectorAll("button");Array.prototype.forEach.call(t,function(e){e.classList.remove("active")}),e.target.classList.add("active")}var e=["#6c757d"],a=$("#area-chart-datetime").data("colors"),a=(a&&(e=a.split(",")),{annotations:{yaxis:[{y:30,borderColor:"#999",label:{show:!0,text:"Support",style:{color:"#fff",background:"#00E396"}}}],xaxis:[{x:new Date("14 Nov 2012").getTime(),borderColor:"#999",yAxisIndex:0,label:{show:!0,text:"Rally",style:{color:"#fff",background:"#775DD0"}}}]},chart:{type:"area",height:350},stroke:{width:3,curve:"smooth"},colors:e,dataLabels:{enabled:!1},series:[{data:[[13273596e5,30.95],[1327446e6,31.34],[13275324e5,31.18],[13276188e5,31.05],[1327878e6,31],[13279644e5,30.95],[13280508e5,31.24],[13281372e5,31.29],[13282236e5,31.85],[13284828e5,31.86],[13285692e5,32.28],[13286556e5,32.1],[1328742e6,32.65],[13288284e5,32.21],[13290876e5,32.35],[1329174e6,32.44],[13292604e5,32.46],[13293468e5,32.86],[13294332e5,32.75],[13297788e5,32.54],[13298652e5,32.33],[13299516e5,32.97],[1330038e6,33.41],[13302972e5,33.27],[13303836e5,33.27],[133047e7,32.89],[13305564e5,33.1],[13306428e5,33.73],[1330902e6,33.22],[13309884e5,31.99],[13310748e5,32.41],[13311612e5,33.05],[13312476e5,33.64],[13315068e5,33.56],[13315932e5,34.22],[13316796e5,33.77],[1331766e6,34.17],[13318524e5,33.82],[13321116e5,34.51],[1332198e6,33.16],[13322844e5,33.56],[13323708e5,33.71],[13324572e5,33.81],[13327128e5,34.4],[13327992e5,34.63],[13328856e5,34.46],[1332972e6,34.48],[13330584e5,34.31],[13333176e5,34.7],[1333404e6,34.31],[13334904e5,33.46],[13335768e5,33.59],[13339224e5,33.22],[13340088e5,32.61],[13340952e5,33.01],[13341816e5,33.55],[1334268e6,33.18],[13345272e5,32.84],[13346136e5,33.84],[13347e8,33.39],[13347864e5,32.91],[13348728e5,33.06],[1335132e6,32.62],[13352184e5,32.4],[13353048e5,33.13],[13353912e5,33.26],[13354776e5,33.58],[13357368e5,33.55],[13358232e5,33.77],[13359096e5,33.76],[1335996e6,33.32],[13360824e5,32.61],[13363416e5,32.52],[1336428e6,32.67],[13365144e5,32.52],[13366008e5,31.92],[13366872e5,32.2],[13369464e5,32.23],[13370328e5,32.33],[13371192e5,32.36],[13372056e5,32.01],[1337292e6,31.31],[13375512e5,32.01],[13376376e5,32.01],[1337724e6,32.18],[13378104e5,31.54],[13378968e5,31.6],[13382424e5,32.05],[13383288e5,31.29],[13384152e5,31.05],[13385016e5,29.82],[13387608e5,30.31],[13388472e5,30.7],[13389336e5,31.69],[133902e7,31.32],[13391064e5,31.65],[13393656e5,31.13],[1339452e6,31.77],[13395384e5,31.79],[13396248e5,31.67],[13397112e5,32.39],[13399704e5,32.63],[13400568e5,32.89],[13401432e5,31.99],[13402296e5,31.23],[1340316e6,31.57],[13405752e5,30.84],[13406616e5,31.07],[1340748e6,31.41],[13408344e5,31.17],[13409208e5,32.37],[134118e7,32.19],[13412664e5,32.51],[13414392e5,32.53],[13415256e5,31.37],[13417848e5,30.43],[13418712e5,30.44],[13419576e5,30.2],[1342044e6,30.14],[13421304e5,30.65],[13423896e5,30.4],[1342476e6,30.65],[13425624e5,31.43],[13426488e5,31.89],[13427352e5,31.38],[13429944e5,30.64],[13430808e5,30.02],[13431672e5,30.33],[13432536e5,30.95],[134334e7,31.89],[13435992e5,31.01],[13436856e5,30.88],[1343772e6,30.69],[13438584e5,30.58],[13439448e5,32.02],[1344204e6,32.14],[13442904e5,32.37],[13443768e5,32.51],[13444632e5,32.65],[13445496e5,32.64],[13448088e5,32.27],[13448952e5,32.1],[13449816e5,32.91],[1345068e6,33.65],[13451544e5,33.8],[13454136e5,33.92],[13455e8,33.75],[13455864e5,33.84],[13456728e5,33.5],[13457592e5,32.26],[13460184e5,32.32],[13461048e5,32.06],[13461912e5,31.96],[13462776e5,31.46],[1346364e6,31.27],[13467096e5,31.43],[1346796e6,32.26],[13468824e5,32.79],[13469688e5,32.46],[1347228e6,32.13],[13473144e5,32.43],[13474008e5,32.42],[13474872e5,32.81],[13475736e5,33.34],[13478328e5,33.41],[13479192e5,32.57],[13480056e5,33.12],[1348092e6,34.53],[13481784e5,33.83],[13484376e5,33.41],[1348524e6,32.9],[13486104e5,32.53],[13486968e5,32.8],[13487832e5,32.44],[13490424e5,32.62],[13491288e5,32.57],[13492152e5,32.6],[13493016e5,32.68],[1349388e6,32.47],[13496472e5,32.23],[13497336e5,31.68],[134982e7,31.51],[13499064e5,31.78],[13499928e5,31.94],[1350252e6,32.33],[13503384e5,33.24],[13504248e5,33.44],[13505112e5,33.48],[13505976e5,33.24],[13508568e5,33.49],[13509432e5,33.31],[13510296e5,33.36],[1351116e6,33.4],[13512024e5,34.01],[1351638e6,34.02],[13517244e5,34.36],[13518108e5,34.39],[135207e7,34.24],[13521564e5,34.39],[13522428e5,33.47],[13523292e5,32.98],[13524156e5,32.9],[13526748e5,32.7],[13527612e5,32.54],[13528476e5,32.23],[1352934e6,32.64],[13530204e5,32.65],[13532796e5,32.92],[1353366e6,32.64],[13534524e5,32.84],[13536252e5,33.4],[13538844e5,33.3],[13539708e5,33.18],[13540572e5,33.88],[13541436e5,34.09],[135423e7,34.61],[13544892e5,34.7],[13545756e5,35.3],[1354662e6,35.4],[13547484e5,35.14],[13548348e5,35.48],[1355094e6,35.75],[13551804e5,35.54],[13552668e5,35.96],[13553532e5,35.53],[13554396e5,37.56],[13556988e5,37.42],[13557852e5,37.49],[13558716e5,38.09],[1355958e6,37.87],[13560444e5,37.71],[13563036e5,37.53],[13564764e5,37.55],[13565628e5,37.3],[13566492e5,36.9],[13569084e5,37.68],[13570812e5,38.34],[13571676e5,37.75],[1357254e6,38.13],[13575132e5,37.94],[13575996e5,38.14],[1357686e6,38.66],[13577724e5,38.62],[13578588e5,38.09],[1358118e6,38.16],[13582044e5,38.15],[13582908e5,37.88],[13583772e5,37.73],[13584636e5,37.98],[13588092e5,37.95],[13588956e5,38.25],[1358982e6,38.1],[13590684e5,38.32],[13593276e5,38.24],[1359414e6,38.52],[13595004e5,37.94],[13595868e5,37.83],[13596732e5,38.34],[13599324e5,38.1],[13600188e5,38.51],[13601052e5,38.4],[13601916e5,38.07],[1360278e6,39.12],[13605372e5,38.64],[13606236e5,38.89],[136071e7,38.81],[13607964e5,38.61],[13608828e5,38.63],[13612284e5,38.99],[13613148e5,38.77],[13614012e5,38.34],[13614876e5,38.55],[13617468e5,38.11],[13618332e5,38.59],[13619196e5,39.6]]}],markers:{size:0,style:"hollow"},xaxis:{type:"datetime",min:new Date("01 Mar 2012").getTime(),tickAmount:6},tooltip:{x:{format:"dd MMM yyyy"}},fill:{type:"gradient",gradient:{shadeIntensity:1,opacityFrom:.7,opacityTo:.9,stops:[0,100]}}}),o=new ApexCharts(document.querySelector("#area-chart-datetime"),a);o.render();document.querySelector("#one_month").addEventListener("click",function(e){t(e),o.updateOptions({xaxis:{min:new Date("28 Jan 2013").getTime(),max:new Date("27 Feb 2013").getTime()}})}),document.querySelector("#six_months").addEventListener("click",function(e){t(e),o.updateOptions({xaxis:{min:new Date("27 Sep 2012").getTime(),max:new Date("27 Feb 2013").getTime()}})}),document.querySelector("#one_year").addEventListener("click",function(e){t(e),o.updateOptions({xaxis:{min:new Date("27 Feb 2012").getTime(),max:new Date("27 Feb 2013").getTime()}})}),document.querySelector("#ytd").addEventListener("click",function(e){t(e),o.updateOptions({xaxis:{min:new Date("01 Jan 2013").getTime(),max:new Date("27 Feb 2013").getTime()}})}),document.querySelector("#all").addEventListener("click",function(e){t(e),o.updateOptions({xaxis:{min:void 0,max:void 0}})}),document.querySelector("#ytd").addEventListener("click",function(){})}),["#17a497","#ffbc00"]),dataColors=$("#area-chart-negative").data("colors"),options={chart:{height:380,type:"area"},dataLabels:{enabled:!1},stroke:{width:2,curve:"straight"},colors:colors=dataColors?dataColors.split(","):colors,series:[{name:"North",data:[{x:1996,y:322},{x:1997,y:324},{x:1998,y:329},{x:1999,y:342},{x:2e3,y:348},{x:2001,y:334},{x:2002,y:325},{x:2003,y:316},{x:2004,y:318},{x:2005,y:330},{x:2006,y:355},{x:2007,y:366},{x:2008,y:337},{x:2009,y:352},{x:2010,y:377},{x:2011,y:383},{x:2012,y:344},{x:2013,y:366},{x:2014,y:389},{x:2015,y:334}]},{name:"South",data:[{x:1996,y:162},{x:1997,y:90},{x:1998,y:50},{x:1999,y:77},{x:2e3,y:35},{x:2001,y:-45},{x:2002,y:-88},{x:2003,y:-120},{x:2004,y:-156},{x:2005,y:-123},{x:2006,y:-88},{x:2007,y:-66},{x:2008,y:-45},{x:2009,y:-29},{x:2010,y:-45},{x:2011,y:-88},{x:2012,y:-132},{x:2013,y:-146},{x:2014,y:-169},{x:2015,y:-184}]}],xaxis:{type:"datetime",axisBorder:{show:!1},axisTicks:{show:!1}},yaxis:{tickAmount:4,floating:!1,labels:{style:{color:"#8e8da4"},offsetY:-7,offsetX:0},axisBorder:{show:!1},axisTicks:{show:!1}},fill:{opacity:.5,gradient:{enabled:!1}},tooltip:{x:{format:"yyyy"},fixed:{enabled:!1,position:"topRight"}},legend:{offsetY:5},grid:{yaxis:{lines:{offsetX:-30}},padding:{left:0,bottom:10},borderColor:"#f1f3fa"}},colors=((chart=new ApexCharts(document.querySelector("#area-chart-negative"),options)).render(),["#FF7F00"]),dataColors=$("#area-chart-github2").data("colors"),optionsarea2={chart:{id:"chartyear",type:"area",height:200,toolbar:{show:!1,autoSelected:"pan"}},colors:colors=dataColors?dataColors.split(","):colors,stroke:{width:0,curve:"smooth"},dataLabels:{enabled:!1},fill:{opacity:1,type:"solid"},series:[{name:"commits",data:githubdata.series}],yaxis:{tickAmount:10,labels:{show:!1}},xaxis:{type:"datetime"}},chartarea2=new ApexCharts(document.querySelector("#area-chart-github2"),optionsarea2),colors=(chartarea2.render(),["#7BD39A"]),options=((dataColors=$("#area-chart-github").data("colors"))&&(colors=dataColors.split(",")),{chart:{height:175,type:"area",toolbar:{autoSelected:"selection"},brush:{enabled:!0,target:"chartyear"},selection:{enabled:!0,xaxis:{min:new Date("05 Jan 2014").getTime(),max:new Date("04 Jan 2015").getTime()}}},colors:colors,dataLabels:{enabled:!1},stroke:{width:0,curve:"smooth"},series:[{name:"commits",data:githubdata.series}],fill:{opacity:1,type:"solid"},legend:{position:"top",horizontalAlign:"left"},xaxis:{type:"datetime"}}),colors=((chart=new ApexCharts(document.querySelector("#area-chart-github"),options)).render(),["#4254ba","#17a497","#e3eaef"]),dataColors=$("#stacked-area").data("colors"),options={chart:{height:422,type:"area",stacked:!0,events:{selection:function(e,t){console.log(new Date(t.xaxis.min))}}},colors:colors=dataColors?dataColors.split(","):colors,dataLabels:{enabled:!1},stroke:{width:2,curve:"smooth"},series:[{name:"South",data:generateDayWiseTimeSeries(new Date("11 Feb 2017").getTime(),20,{min:10,max:60})},{name:"North",data:generateDayWiseTimeSeries(new Date("11 Feb 2017").getTime(),20,{min:10,max:20})},{name:"Central",data:generateDayWiseTimeSeries(new Date("11 Feb 2017").getTime(),20,{min:10,max:15})}],fill:{gradient:{enabled:!0,opacityFrom:.6,opacityTo:.8}},legend:{position:"top",horizontalAlign:"left"},xaxis:{type:"datetime"},grid:{row:{colors:["transparent","transparent"],opacity:.2},borderColor:"#f1f3fa"},responsive:[{breakpoint:600,options:{chart:{toolbar:{show:!1}}}}]};function generateDayWiseTimeSeries(e,t,a){for(var o=0,r=[];o
    Open: '+e.globals.seriesCandleO[t][a]+'
    High: '+e.globals.seriesCandleH[t][a]+'
    Low: '+e.globals.seriesCandleL[t][a]+'
    Close: '+e.globals.seriesCandleC[t][a]+"
    "}]},xaxis:{type:"datetime"}});(chart=new ApexCharts(document.querySelector("#candlestick-with-line"),options)).render(); \ No newline at end of file diff --git a/pxy_dashboard/static/dashboard/js/pages/demo.apex-column.js b/pxy_dashboard/static/dashboard/js/pages/demo.apex-column.js new file mode 100644 index 0000000..175b573 --- /dev/null +++ b/pxy_dashboard/static/dashboard/js/pages/demo.apex-column.js @@ -0,0 +1 @@ +var colors=["#4254ba","#17a497","#fa5c7c"],dataColors=$("#basic-column").data("colors"),options={chart:{height:396,type:"bar",toolbar:{show:!1}},plotOptions:{bar:{horizontal:!1,endingShape:"rounded",columnWidth:"55%"}},dataLabels:{enabled:!1},stroke:{show:!0,width:2,colors:["transparent"]},colors:colors=dataColors?dataColors.split(","):colors,series:[{name:"Net Profit",data:[44,55,57,56,61,58,63,60,66]},{name:"Revenue",data:[76,85,101,98,87,105,91,114,94]},{name:"Free Cash Flow",data:[35,41,36,26,45,48,52,53,41]}],xaxis:{categories:["Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct"]},legend:{offsetY:7},yaxis:{title:{text:"$ (thousands)"}},fill:{opacity:1},grid:{row:{colors:["transparent","transparent"],opacity:.2},borderColor:"#f1f3fa",padding:{bottom:5}},tooltip:{y:{formatter:function(t){return"$ "+t+" thousands"}}}},chart=new ApexCharts(document.querySelector("#basic-column"),options),colors=(chart.render(),["#4254ba"]),dataColors=$("#datalabels-column").data("colors"),options={chart:{height:380,type:"bar",toolbar:{show:!1}},plotOptions:{bar:{borderRadius:10,dataLabels:{position:"top"}}},dataLabels:{enabled:!0,formatter:function(t){return t+"%"},offsetY:-25,style:{fontSize:"12px",colors:["#304758"]}},colors:colors=dataColors?dataColors.split(","):colors,legend:{show:!0,horizontalAlign:"center",offsetX:0,offsetY:-5},series:[{name:"Inflation",data:[2.3,3.1,4,10.1,4,3.6,3.2,2.3,1.4,.8,.5,.2]}],xaxis:{categories:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],position:"top",labels:{offsetY:0},axisBorder:{show:!1},axisTicks:{show:!1},crosshairs:{fill:{type:"gradient",gradient:{colorFrom:"#D8E3F0",colorTo:"#BED1E6",stops:[0,100],opacityFrom:.4,opacityTo:.5}}},tooltip:{enabled:!0,offsetY:-10}},fill:{gradient:{enabled:!1,shade:"light",type:"horizontal",shadeIntensity:.25,gradientToColors:void 0,inverseColors:!0,opacityFrom:1,opacityTo:1,stops:[50,0,100,100]}},yaxis:{axisBorder:{show:!1},axisTicks:{show:!1},labels:{show:!1,formatter:function(t){return t+"%"}}},title:{text:"Monthly Inflation in Argentina, 2002",floating:!0,offsetY:360,align:"center",style:{color:"#444"}},grid:{row:{colors:["transparent","transparent"],opacity:.2},borderColor:"#f1f3fa"}},colors=((chart=new ApexCharts(document.querySelector("#datalabels-column"),options)).render(),["#39afd1","#ffbc00","#e3eaef"]),dataColors=$("#stacked-column").data("colors"),options={chart:{height:380,type:"bar",stacked:!0,toolbar:{show:!1}},plotOptions:{bar:{horizontal:!1,columnWidth:"50%"}},series:[{name:"Product A",data:[44,55,41,67,22,43,21,49]},{name:"Product B",data:[13,23,20,8,13,27,33,12]},{name:"Product C",data:[11,17,15,15,21,14,15,13]}],xaxis:{categories:["2011 Q1","2011 Q2","2011 Q3","2011 Q4","2012 Q1","2012 Q2","2012 Q3","2012 Q4"]},colors:colors=dataColors?dataColors.split(","):colors,fill:{opacity:1},legend:{offsetY:7},grid:{row:{colors:["transparent","transparent"],opacity:.2},borderColor:"#f1f3fa",padding:{bottom:5}}},colors=((chart=new ApexCharts(document.querySelector("#stacked-column"),options)).render(),["#39afd1","#17a497","#e3eaef"]),dataColors=$("#full-stacked-column").data("colors"),options={chart:{height:380,type:"bar",stacked:!0,stackType:"100%",toolbar:{show:!1}},plotOptions:{bar:{columnWidth:"50%"}},series:[{name:"Product A",data:[44,55,41,67,22,43,21,49]},{name:"Product B",data:[13,23,20,8,13,27,33,12]},{name:"Product C",data:[11,17,15,15,21,14,15,13]}],xaxis:{categories:["2011 Q1","2011 Q2","2011 Q3","2011 Q4","2012 Q1","2012 Q2","2012 Q3","2012 Q4"]},fill:{opacity:1},legend:{offsetY:7},colors:colors=dataColors?dataColors.split(","):colors,grid:{row:{colors:["transparent","transparent"],opacity:.2},borderColor:"#f1f3fa",padding:{bottom:5}}},colors=((chart=new ApexCharts(document.querySelector("#full-stacked-column"),options)).render(),["#17a497","#fa5c7c"]),dataColors=$("#column-with-markers").data("colors"),options={series:[{name:"Actual",data:[{x:"2011",y:1292,goals:[{name:"Expected",value:1400,strokeHeight:5,strokeColor:(colors=dataColors?dataColors.split(","):colors)[1]}]},{x:"2012",y:4432,goals:[{name:"Expected",value:5400,strokeHeight:5,strokeColor:colors[1]}]},{x:"2013",y:5423,goals:[{name:"Expected",value:5200,strokeHeight:5,strokeColor:colors[1]}]},{x:"2014",y:6653,goals:[{name:"Expected",value:6500,strokeHeight:5,strokeColor:colors[1]}]},{x:"2015",y:8133,goals:[{name:"Expected",value:6600,strokeHeight:13,strokeWidth:0,strokeLineCap:"round",strokeColor:colors[1]}]},{x:"2016",y:7132,goals:[{name:"Expected",value:7500,strokeHeight:5,strokeColor:colors[1]}]},{x:"2017",y:7332,goals:[{name:"Expected",value:8700,strokeHeight:5,strokeColor:colors[1]}]},{x:"2018",y:6553,goals:[{name:"Expected",value:7300,strokeHeight:2,strokeDashArray:2,strokeColor:colors[1]}]}]}],chart:{height:380,type:"bar"},plotOptions:{bar:{columnWidth:"60%"}},colors:colors,dataLabels:{enabled:!1},legend:{show:!0,showForSingleSeries:!0,customLegendItems:["Actual","Expected"],markers:{fillColors:colors}}},colors=((chart=new ApexCharts(document.querySelector("#column-with-markers"),options)).render(),["#17a497","#fa5c7c"]),optionsGroup=((dataColors=$("#column-with-group-label").data("colors"))&&(colors=dataColors.split(",")),dayjs.extend(window.dayjs_plugin_quarterOfYear),{series:[{name:"Sales",data:[{x:"2020/01/01",y:400},{x:"2020/04/01",y:430},{x:"2020/07/01",y:448},{x:"2020/10/01",y:470},{x:"2021/01/01",y:540},{x:"2021/04/01",y:580},{x:"2021/07/01",y:690},{x:"2021/10/01",y:690}]}],chart:{type:"bar",height:380,toolbar:{show:!1}},plotOptions:{bar:{horizontal:!1,columnWidth:"45%"}},colors:colors,xaxis:{type:"category",labels:{formatter:function(t){return"Q"+dayjs(t).quarter()}},group:{style:{fontSize:"10px",fontWeight:700},groups:[{title:"2020",cols:4},{title:"2021",cols:4}]}},tooltip:{x:{formatter:function(t){return"Q"+dayjs(t).quarter()+" "+dayjs(t).format("YYYY")}}}}),chartGroup=new ApexCharts(document.querySelector("#column-with-group-label"),optionsGroup),colors=(chartGroup.render(),["#fa5c7c"]),dataColors=$("#rotate-labels-column").data("colors"),options={annotations:{points:[{x:"Bananas",seriesIndex:0,label:{borderColor:"#4254ba",offsetY:0,style:{color:"#fff",background:"#4254ba"},text:"Bananas are good"}}]},chart:{height:380,type:"bar",toolbar:{show:!1}},plotOptions:{bar:{columnWidth:"50%",endingShape:"rounded"}},dataLabels:{enabled:!1},stroke:{width:2},colors:colors=dataColors?dataColors.split(","):colors,series:[{name:"Servings",data:[44,55,41,67,22,43,21,33,45,31,87,65,35]}],grid:{borderColor:"#f1f3fa",padding:{top:0,right:-2,bottom:-35,left:10}},xaxis:{labels:{rotate:-45},categories:["Apples","Oranges","Strawberries","Pineapples","Mangoes","Bananas","Blackberries","Pears","Watermelons","Cherries","Pomegranates","Tangerines","Papayas"]},yaxis:{title:{text:"Servings"}},fill:{type:"gradient",gradient:{shade:"light",type:"horizontal",shadeIntensity:.25,gradientToColors:void 0,inverseColors:!0,opacityFrom:.85,opacityTo:.85,stops:[50,0,100]}}},colors=((chart=new ApexCharts(document.querySelector("#rotate-labels-column"),options)).render(),["#4254ba"]),dataColors=$("#negative-value-column").data("colors"),options={chart:{height:380,type:"bar",toolbar:{show:!1}},plotOptions:{bar:{colors:{ranges:[{from:-100,to:-46,color:"#fa5c7c"},{from:-45,to:0,color:"#ffbc00"}]},columnWidth:"80%"}},dataLabels:{enabled:!1},colors:colors=dataColors?dataColors.split(","):colors,series:[{name:"Cash Flow",data:[1.45,5.42,5.9,-.42,-12.6,-18.1,-18.2,-14.16,-11.1,-6.09,.34,3.88,13.07,5.8,2,7.37,8.1,13.57,15.75,17.1,19.8,-27.03,-54.4,-47.2,-43.3,-18.6,-48.6,-41.1,-39.6,-37.6,-29.4,-21.4,-2.4]}],yaxis:{title:{text:"Growth"},labels:{formatter:function(t){return t.toFixed(0)+"%"}}},xaxis:{categories:["2011-01-01","2011-02-01","2011-03-01","2011-04-01","2011-05-01","2011-06-01","2011-07-01","2011-08-01","2011-09-01","2011-10-01","2011-11-01","2011-12-01","2012-01-01","2012-02-01","2012-03-01","2012-04-01","2012-05-01","2012-06-01","2012-07-01","2012-08-01","2012-09-01","2012-10-01","2012-11-01","2012-12-01","2013-01-01","2013-02-01","2013-03-01","2013-04-01","2013-05-01","2013-06-01","2013-07-01","2013-08-01","2013-09-01"],labels:{rotate:-90}},grid:{row:{colors:["transparent","transparent"],opacity:.2},borderColor:"#f1f3fa"}},colors=((chart=new ApexCharts(document.querySelector("#negative-value-column"),options)).render(),["#4254ba","#6c757d","#17a497","#fa5c7c","#ffbc00","#39afd1","#e3eaef","#313a46"]),dataColors=$("#distributed-column").data("colors"),options={chart:{height:380,type:"bar",toolbar:{show:!1},events:{click:function(t,o,a){console.log(t,o,a)}}},colors:colors=dataColors?dataColors.split(","):colors,plotOptions:{bar:{columnWidth:"45%",distributed:!0}},dataLabels:{enabled:!1},series:[{data:[21,22,10,28,16,21,13,30]}],xaxis:{categories:["John","Joe","Jake","Amber","Peter","Mary","David","Lily"],labels:{style:{colors:colors,fontSize:"14px"}}},legend:{offsetY:7},grid:{row:{colors:["transparent","transparent"],opacity:.2},borderColor:"#f1f3fa"}},colors=((chart=new ApexCharts(document.querySelector("#distributed-column"),options)).render(),["#17a497","#39afd1"]),dataColors=$("#range-column").data("colors"),options={chart:{height:380,type:"rangeBar"},plotOptions:{bar:{horizontal:!1}},dataLabels:{enabled:!0},legend:{offsetY:7},colors:colors=dataColors?dataColors.split(","):colors,series:[{name:"Product A",data:[{x:"Team A",y:[1,5]},{x:"Team B",y:[4,6]},{x:"Team C",y:[5,8]},{x:"Team D",y:[3,11]}]},{name:"Product B",data:[{x:"Team A",y:[2,6]},{x:"Team B",y:[1,3]},{x:"Team C",y:[7,8]},{x:"Team D",y:[5,9]}]}]},colors=((chart=new ApexCharts(document.querySelector("#range-column"),options)).render(),["#4254ba","#6c757d","#17a497","#fa5c7c","#ffbc00","#39afd1","#e3eaef","#313a46"]);function shuffleArray(t){for(var o=t.length-1;0t.p1.parsed.y?e:void 0}!function(a){"use strict";function t(){this.$body=a("body"),this.charts=[],this.defaultColors=["#4254ba","#17a497","#fa5c7c","#ffbc00"]}t.prototype.interpolationExample=function(){var t=document.getElementById("interpolation-example"),e=t.getAttribute("data-colors"),e=e?e.split(","):this.defaultColors,t=t.getContext("2d"),a=[0,20,20,60,60,120,NaN,180,120,125,105,110,170],t=new Chart(t,{type:"line",data:{labels:["1","2","3","4","5","6","7","8","9","10","11","12"],datasets:[{label:"Fully Rounded",data:a,borderColor:e[0],fill:!1,cubicInterpolationMode:"monotone",tension:.4},{label:"Small Radius",data:a,borderColor:e[1],fill:!1,tension:.4},{label:"Small Radius",data:a,borderColor:e[2],fill:!1}]},options:{responsive:!0,maintainAspectRatio:!1,interaction:{intersect:!1},plugins:{legend:{display:!1,position:"top"}},scales:{x:{grid:{display:!1}},y:{grid:{display:!1},suggestedMin:-10,suggestedMax:200}}}});this.charts.push(t)},t.prototype.lineExample=function(){var t=document.getElementById("line-example"),e=t.getAttribute("data-colors"),e=e?e.split(","):this.defaultColors,t=t.getContext("2d"),t=new Chart(t,{type:"line",data:{labels:["Mon","Tue","Wed","Thu","Fri","Sat","Sun"],datasets:[{label:"Fully Rounded",data:[32,42,42,62,52,75,62],borderColor:e[0],fill:!0,backgroundColor:hexToRGB(e[0],.3)},{label:"Small Radius",data:[42,58,66,93,82,105,92],fill:!0,backgroundColor:"transparent",borderColor:e[1],borderDash:[5,5]}]},options:{responsive:!0,maintainAspectRatio:!1,plugins:{legend:{display:!1,position:"top"}},tension:.3,scales:{x:{grid:{display:!1}},y:{grid:{display:!1}}}}});this.charts.push(t)},t.prototype.multiAxesExample=function(){var t=document.getElementById("multi-axes-example"),e=t.getAttribute("data-colors"),e=e?e.split(","):this.defaultColors,t=t.getContext("2d"),t=new Chart(t,{type:"line",data:{labels:["Jan","Feb","March","April","May","June","July"],datasets:[{label:"Fully Rounded",data:[12,-19,14,-15,18,-14,-7],borderColor:e[0],backgroundColor:hexToRGB(e[0],.3),borderWidth:1.5,yAxisID:"y"},{label:"Small Radius",data:[-10,19,-15,-8,-17,12,8],backgroundColor:hexToRGB(e[1],.3),borderColor:e[1],borderWidth:1.5,yAxisID:"y1"}]},options:{interaction:{mode:"index",intersect:!1},responsive:!0,maintainAspectRatio:!1,plugins:{legend:{display:!1,position:"top"}},tension:.2,scales:{x:{grid:{display:!1}},y:{type:"linear",display:!0,position:"left",grid:{display:!1}},y1:{type:"linear",display:!0,position:"right",grid:{drawOnChartArea:!1}}}}});this.charts.push(t)},t.prototype.pointStylingExample=function(){var t=document.getElementById("point-styling-example"),e=t.getAttribute("data-colors"),e=e?e.split(","):this.defaultColors,t=t.getContext("2d"),t=new Chart(t,{type:"line",data:{labels:["Day 1","Day 2","Day 3","Day 4","Day 5","Day 6"],datasets:[{label:"Dataset 1",data:[12,-19,14,-15,14,-8],borderColor:e[0],pointStyle:"circle",pointRadius:10,pointHoverRadius:15}]},options:{responsive:!0,maintainAspectRatio:!1,plugins:{legend:{display:!1}},scales:{x:{stacked:!0,grid:{display:!1}},y:{stacked:!0,grid:{display:!1}}}}});this.charts.push(t)},t.prototype.lineSegmentExample=function(){var t=document.getElementById("line-segment-example"),e=t.getAttribute("data-colors"),e=e?e.split(","):this.defaultColors,t=t.getContext("2d"),t=new Chart(t,{type:"line",data:{labels:["Jan","Feb","March","April","May","June","July"],datasets:[{label:"Dataset 1",data:[65,59,NaN,48,56,57,40],borderColor:e[0],spanGaps:!0,segment:{borderColor:function(t){return skipped(t,"rgb(0,0,0,0.2)")||down(t,"rgb(192,75,75)")},borderDash:function(t){return skipped(t,[6,6])}}}]},options:{responsive:!0,maintainAspectRatio:!1,plugins:{legend:{display:!1,position:"top"}},scales:{x:{stacked:!0,grid:{display:!1}},y:{stacked:!0,grid:{display:!1}}}}});this.charts.push(t)},t.prototype.steppedExample=function(){var t=document.getElementById("stepped-example"),e=t.getAttribute("data-colors"),e=e?e.split(","):this.defaultColors,t=t.getContext("2d"),t=new Chart(t,{type:"line",data:{labels:["Day 1","Day 2","Day 3","Day 4","Day 5","Day 6"],datasets:[{label:"Dataset 1",data:[12,-19,14,-15,14,-8],borderColor:e[0],fill:!1,stepped:!0}]},options:{responsive:!0,maintainAspectRatio:!1,interaction:{intersect:!1,axis:"x"},plugins:{legend:{display:!1,position:"top"}},scales:{x:{grid:{display:!1}},y:{grid:{display:!1}}}}});this.charts.push(t)},t.prototype.init=function(){var e=this;Chart.defaults.font.family='-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif',Chart.defaults.color="#8391a2",Chart.defaults.scale.grid.color="#8391a2",this.interpolationExample(),this.lineExample(),this.multiAxesExample(),this.pointStylingExample(),this.lineSegmentExample(),this.steppedExample(),a(window).on("resizeEnd",function(t){a.each(e.charts,function(t,e){try{e.destroy()}catch(t){}}),e.interpolationExample(),e.lineExample(),e.multiAxesExample(),e.pointStylingExample(),e.lineSegmentExample(),e.steppedExample()}),a(window).resize(function(){this.resizeTO&&clearTimeout(this.resizeTO),this.resizeTO=setTimeout(function(){a(this).trigger("resizeEnd")},500)})},a.ChartJs=new t,a.ChartJs.Constructor=t}(window.jQuery),function(){"use strict";window.jQuery.ChartJs.init()}(); \ No newline at end of file diff --git a/pxy_dashboard/static/dashboard/js/pages/demo.chartjs-other.js b/pxy_dashboard/static/dashboard/js/pages/demo.chartjs-other.js new file mode 100644 index 0000000..bac881d --- /dev/null +++ b/pxy_dashboard/static/dashboard/js/pages/demo.chartjs-other.js @@ -0,0 +1 @@ +function hexToRGB(t,e){var a=parseInt(t.slice(1,3),16),o=parseInt(t.slice(3,5),16),t=parseInt(t.slice(5,7),16);return e?"rgba("+a+", "+o+", "+t+", "+e+")":"rgb("+a+", "+o+", "+t+")"}!function(a){"use strict";function t(){this.$body=a("body"),this.charts=[],this.defaultColors=["#4254ba","#17a497","#fa5c7c","#ffbc00"]}t.prototype.bubbleExample=function(){var t=document.getElementById("bubble-example"),e=t.getAttribute("data-colors"),e=e?e.split(","):this.defaultColors,t=t.getContext("2d"),t=new Chart(t,{type:"bubble",data:{labels:["Jan","Feb","March","April","May","June"],datasets:[{label:"Fully Rounded",data:[{x:10,y:20,r:5},{x:20,y:10,r:5},{x:15,y:15,r:5}],borderColor:e[0],backgroundColor:hexToRGB(e[0],.3),borderWidth:2,borderSkipped:!1},{label:"Small Radius",data:[{x:12,y:22},{x:22,y:20},{x:5,y:15}],backgroundColor:hexToRGB(e[1],.3),borderColor:e[1],borderWidth:2,borderSkipped:!1}]},options:{responsive:!0,maintainAspectRatio:!1,plugins:{legend:{display:!1,position:"top"}},scales:{x:{grid:{display:!1}},y:{grid:{display:!1}}}}});this.charts.push(t)},t.prototype.donutExample=function(){var t=document.getElementById("donut-example"),e=t.getAttribute("data-colors"),e=e?e.split(","):this.defaultColors,t=t.getContext("2d"),t=new Chart(t,{type:"doughnut",data:{labels:["Direct","Affilliate","Sponsored","E-mail"],datasets:[{data:[300,135,48,154],backgroundColor:e,borderColor:"transparent",borderWidth:"3"}]},options:{responsive:!0,maintainAspectRatio:!1,cutoutPercentage:60,plugins:{legend:{display:!1,position:"top"}}}});this.charts.push(t)},t.prototype.pieExample=function(){var t=document.getElementById("pie-example"),e=t.getAttribute("data-colors"),e=e?e.split(","):this.defaultColors,t=t.getContext("2d"),t=new Chart(t,{type:"pie",data:{labels:["Jan","Feb","March","April","May"],datasets:[{label:"Fully Rounded",data:[12,19,14,15,40],backgroundColor:e}]},options:{indexAxis:"y",responsive:!0,maintainAspectRatio:!1,plugins:{legend:{display:!1}}}});this.charts.push(t)},t.prototype.polarAreaExample=function(){var t=document.getElementById("polar-area-example"),e=t.getAttribute("data-colors"),e=e?e.split(","):this.defaultColors,t=t.getContext("2d"),t=new Chart(t,{type:"polarArea",data:{labels:["Jan","Feb","March","April","May"],datasets:[{label:"Dataset 1",data:[12,19,14,15,20],backgroundColor:e}]},options:{responsive:!0,maintainAspectRatio:!1,plugins:{legend:{display:!1,position:"top"}},scales:{r:{display:!1}}}});this.charts.push(t)},t.prototype.radarExample=function(){var t=document.getElementById("radar-example"),e=t.getAttribute("data-colors"),e=e?e.split(","):this.defaultColors,t=t.getContext("2d"),t=new Chart(t,{type:"radar",data:{labels:["Jan","Feb","March","April","May","June"],datasets:[{label:"Dataset 1",data:[12,29,39,22,28,34],borderColor:e[0],backgroundColor:hexToRGB(e[0],.3)},{label:"Dataset 2",data:[10,19,15,28,34,39],borderColor:e[1],backgroundColor:hexToRGB(e[1],.3)}]},options:{responsive:!0,maintainAspectRatio:!1,plugins:{legend:{display:!1}}}});this.charts.push(t)},t.prototype.scatterExample=function(){var t=document.getElementById("scatter-example"),e=t.getAttribute("data-colors"),e=e?e.split(","):this.defaultColors,t=t.getContext("2d"),t=new Chart(t,{type:"scatter",data:{labels:["Jan","Feb","March","April","May","June","July"],datasets:[{label:"Dataset 1",data:[{x:10,y:50},{x:50,y:10},{x:15,y:15},{x:20,y:45},{x:25,y:18},{x:34,y:38}],borderColor:e[0],backgroundColor:hexToRGB(e[0],.3)},{label:"Dataset 2",data:[{x:15,y:45},{x:40,y:20},{x:30,y:5},{x:35,y:25},{x:18,y:25},{x:40,y:8}],borderColor:e[1],backgroundColor:hexToRGB(e[1],.3)}]},options:{responsive:!0,maintainAspectRatio:!1,plugins:{legend:{display:!1}},scales:{x:{grid:{display:!1}},y:{grid:{display:!1}}}}});this.charts.push(t)},t.prototype.barLineExample=function(){var t=document.getElementById("bar-line-example"),e=t.getAttribute("data-colors"),e=e?e.split(","):this.defaultColors,t=t.getContext("2d"),t=new Chart(t,{type:"line",data:{labels:["Jan","Feb","March","April","May","June","July"],datasets:[{label:"Dataset 1",data:[10,20,35,18,15,25,22],backgroundColor:e[0],stack:"combined",type:"bar"},{label:"Dataset 2",data:[13,23,38,22,25,30,28],borderColor:e[1],stack:"combined"}]},options:{responsive:!0,maintainAspectRatio:!1,plugins:{legend:{display:!1}},scales:{x:{grid:{display:!1}},y:{stacked:!0,grid:{display:!1}}}}});this.charts.push(t)},t.prototype.init=function(){var e=this;Chart.defaults.font.family='-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif',Chart.defaults.color="#8391a2",Chart.defaults.scale.grid.color="#8391a2",this.bubbleExample(),this.donutExample(),this.pieExample(),this.polarAreaExample(),this.radarExample(),this.barLineExample(),this.scatterExample(),a(window).on("resizeEnd",function(t){a.each(e.charts,function(t,e){try{e.destroy()}catch(t){}}),e.bubbleExample(),e.donutExample(),e.pieExample(),e.polarAreaExample(),e.radarExample(),e.barLineExample(),e.scatterExample()}),a(window).resize(function(){this.resizeTO&&clearTimeout(this.resizeTO),this.resizeTO=setTimeout(function(){a(this).trigger("resizeEnd")},500)})},a.ChartJs=new t,a.ChartJs.Constructor=t}(window.jQuery),function(){"use strict";window.jQuery.ChartJs.init()}(); \ No newline at end of file diff --git a/pxy_dashboard/static/dashboard/js/pages/demo.dashboard.js b/pxy_dashboard/static/dashboard/js/pages/demo.dashboard.js new file mode 100644 index 0000000..b5e592c --- /dev/null +++ b/pxy_dashboard/static/dashboard/js/pages/demo.dashboard.js @@ -0,0 +1 @@ +!function(r){"use strict";function e(){this.$body=r("body"),this.charts=[]}e.prototype.initCharts=function(){window.Apex={chart:{parentHeightOffset:0,toolbar:{show:!1}},grid:{padding:{left:0,right:0}},colors:["#4254ba","#17a497","#fa5c7c","#ffbc00"]};var e=["#4254ba","#17a497","#fa5c7c","#ffbc00"],a=r("#revenue-chart").data("colors"),t={series:[{name:"Revenue",type:"area",data:[440,505,414,671,227,413,201,352,752,320,257,160]},{name:"Sales",type:"bar",data:[23,42,35,27,43,22,17,31,22,22,12,16]}],chart:{height:335,type:"line",offsetY:0},stroke:{width:[2,1]},plotOptions:{bar:{columnWidth:"25%"}},colors:e=a?a.split(","):e,dataLabels:{enabled:!0,enabledOnSeries:[1]},labels:["01 Jan 2001","02 Jan 2001","03 Jan 2001","04 Jan 2001","05 Jan 2001","06 Jan 2001","07 Jan 2001","08 Jan 2001","09 Jan 2001","10 Jan 2001","11 Jan 2001","12 Jan 2001"],xaxis:{type:"datetime"},legend:{offsetY:7},grid:{padding:{bottom:5}},fill:{type:"gradient",gradient:{shade:"light",type:"horizontal",shadeIntensity:.25,gradientToColors:void 0,inverseColors:!0,opacityFrom:0,opacityTo:.75,stops:[0,0,0]}},yaxis:[{title:{text:"Net Revenue"}},{opposite:!0,title:{text:"Number of Sales"}}]},e=(new ApexCharts(document.querySelector("#revenue-chart"),t).render(),["#4254ba","#17a497","#fa5c7c","#ffbc00"]),t={chart:{height:367,type:"radialBar"},plotOptions:{radialBar:{startAngle:-135,endAngle:135,dataLabels:{name:{fontSize:"14px",color:void 0,offsetY:100},value:{offsetY:55,fontSize:"24px",color:void 0,formatter:function(e){return e+"%"}}},track:{background:"rgba(170,184,197, 0.2)",margin:0}}},fill:{gradient:{enabled:!0,shade:"dark",shadeIntensity:.2,inverseColors:!1,opacityFrom:1,opacityTo:1,stops:[0,50,65,91]}},stroke:{dashArray:4},colors:e=(a=r("#average-sales").data("colors"))?a.split(","):e,series:[67],labels:["Returning Customer"],responsive:[{breakpoint:380,options:{chart:{height:180}}}],grid:{padding:{top:0,right:0,bottom:0,left:0}}},e=(new ApexCharts(document.querySelector("#average-sales"),t).render(),["#4254ba","#17a497","#fa5c7c","#ffbc00"]),t={chart:{height:320,type:"bar"},plotOptions:{bar:{horizontal:!0}},colors:e=(a=r("#country-chart").data("colors"))?a.split(","):e,dataLabels:{enabled:!1},series:[{name:"Orders",data:[90,75,60,50,45,36,28,20,15,12]}],xaxis:{categories:["India","China","United States","Japan","France","Italy","Netherlands","United Kingdom","Canada","South Korea"],axisBorder:{show:!1},labels:{formatter:function(e){return e+"%"}}},grid:{strokeDashArray:[5]}};new ApexCharts(document.querySelector("#country-chart"),t).render()},e.prototype.initMaps=function(){0",next:""}},drawCallback:function(){$(".dataTables_paginate > .pagination").addClass("pagination-rounded")}});var a=$("#datatable-buttons").DataTable({lengthChange:!1,buttons:["copy","print"],language:{paginate:{previous:"",next:""}},drawCallback:function(){$(".dataTables_paginate > .pagination").addClass("pagination-rounded")}});$("#selection-datatable").DataTable({select:{style:"multi"},language:{paginate:{previous:"",next:""}},drawCallback:function(){$(".dataTables_paginate > .pagination").addClass("pagination-rounded")}}),a.buttons().container().appendTo("#datatable-buttons_wrapper .col-md-6:eq(0)"),$("#alternative-page-datatable").DataTable({pagingType:"full_numbers",drawCallback:function(){$(".dataTables_paginate > .pagination").addClass("pagination-rounded")}}),$("#scroll-vertical-datatable").DataTable({scrollY:"350px",scrollCollapse:!0,paging:!1,language:{paginate:{previous:"",next:""}},drawCallback:function(){$(".dataTables_paginate > .pagination").addClass("pagination-rounded")}}),$("#scroll-horizontal-datatable").DataTable({scrollX:!0,language:{paginate:{previous:"",next:""}},drawCallback:function(){$(".dataTables_paginate > .pagination").addClass("pagination-rounded")}}),$("#complex-header-datatable").DataTable({language:{paginate:{previous:"",next:""}},drawCallback:function(){$(".dataTables_paginate > .pagination").addClass("pagination-rounded")},columnDefs:[{visible:!1,targets:-1}]}),$("#row-callback-datatable").DataTable({language:{paginate:{previous:"",next:""}},drawCallback:function(){$(".dataTables_paginate > .pagination").addClass("pagination-rounded")},createdRow:function(a,e,l){15e4<+e[5].replace(/[\$,]/g,"")&&$("td",a).eq(5).addClass("text-danger")}}),$("#state-saving-datatable").DataTable({stateSave:!0,language:{paginate:{previous:"",next:""}},drawCallback:function(){$(".dataTables_paginate > .pagination").addClass("pagination-rounded")}}),$("#fixed-columns-datatable").DataTable({scrollY:300,scrollX:!0,scrollCollapse:!0,paging:!1,fixedColumns:!0}),$(".dataTables_length select").addClass("form-select form-select-sm"),$(".dataTables_length label").addClass("form-label")}),$(document).ready(function(){var a=$("#fixed-header-datatable").DataTable({responsive:!0,language:{paginate:{previous:"",next:""}},drawCallback:function(){$(".dataTables_paginate > .pagination").addClass("pagination-rounded")}});new $.fn.dataTable.FixedHeader(a)}); \ No newline at end of file diff --git a/pxy_dashboard/static/dashboard/js/pages/demo.flatpickr.js b/pxy_dashboard/static/dashboard/js/pages/demo.flatpickr.js new file mode 100644 index 0000000..f3aee80 --- /dev/null +++ b/pxy_dashboard/static/dashboard/js/pages/demo.flatpickr.js @@ -0,0 +1 @@ +$("#basic-datepicker").flatpickr(),$("#datetime-datepicker").flatpickr({enableTime:!0,dateFormat:"Y-m-d H:i"}),$("#humanfd-datepicker").flatpickr({altInput:!0,altFormat:"F j, Y",dateFormat:"Y-m-d"}),$("#minmax-datepicker").flatpickr({minDate:"2020-01",maxDate:"2020-03"}),$("#disable-datepicker").flatpickr({onReady:function(){this.jumpToDate("2025-01")},disable:["2025-01-10","2025-01-21","2025-01-30",new Date(2025,4,9)],dateFormat:"Y-m-d"}),$("#multiple-datepicker").flatpickr({mode:"multiple",dateFormat:"Y-m-d"}),$("#conjunction-datepicker").flatpickr({mode:"multiple",dateFormat:"Y-m-d",conjunction:" :: "}),$("#range-datepicker").flatpickr({mode:"range"}),$("#inline-datepicker").flatpickr({inline:!0}),$("#basic-timepicker").flatpickr({enableTime:!0,noCalendar:!0,dateFormat:"H:i"}),$("#24hours-timepicker").flatpickr({enableTime:!0,noCalendar:!0,dateFormat:"H:i",time_24hr:!0}),$("#minmax-timepicker").flatpickr({enableTime:!0,noCalendar:!0,dateFormat:"H:i",minDate:"16:00",maxDate:"22:30"}),$("#preloading-timepicker").flatpickr({enableTime:!0,noCalendar:!0,dateFormat:"H:i",defaultDate:"01:45"}); \ No newline at end of file diff --git a/pxy_dashboard/static/dashboard/js/pages/demo.form-wizard.js b/pxy_dashboard/static/dashboard/js/pages/demo.form-wizard.js new file mode 100644 index 0000000..b7d72e3 --- /dev/null +++ b/pxy_dashboard/static/dashboard/js/pages/demo.form-wizard.js @@ -0,0 +1 @@ +$(function(){"use strict";$("#basicwizard").bootstrapWizard(),$("#progressbarwizard").bootstrapWizard({onTabShow:function(t,r,a){a=(a+1)/r.find("li").length*100;$("#progressbarwizard").find(".bar").css({width:a+"%"})}}),$("#btnwizard").bootstrapWizard({nextSelector:".button-next",previousSelector:".button-previous",firstSelector:".button-first",lastSelector:".button-last"}),$("#rootwizard").bootstrapWizard({onNext:function(t,r,a){t=$($(t).data("targetForm"));if(t&&(t.addClass("was-validated"),!1===t[0].checkValidity()))return event.preventDefault(),event.stopPropagation(),!1}})}); \ No newline at end of file diff --git a/pxy_dashboard/static/dashboard/js/pages/demo.google-maps.js b/pxy_dashboard/static/dashboard/js/pages/demo.google-maps.js new file mode 100644 index 0000000..e129f74 --- /dev/null +++ b/pxy_dashboard/static/dashboard/js/pages/demo.google-maps.js @@ -0,0 +1 @@ +!function(t){"use strict";function e(){}e.prototype.createBasic=function(e){return new GMaps({div:e,lat:-12.043333,lng:-77.028333})},e.prototype.createMarkers=function(e){e=new GMaps({div:e,lat:-12.043333,lng:-77.028333});return e.addMarker({lat:-12.043333,lng:-77.03,title:"Lima",details:{database_id:42,author:"HPNeo"},click:function(e){console.log&&console.log(e),alert("You clicked in this marker")}}),e.addMarker({lat:-12.042,lng:-77.028333,title:"Marker with InfoWindow",infoWindow:{content:"

    HTML Content

    "}}),e},e.prototype.createWithStreetview=function(e,t,l){return GMaps.createPanorama({el:e,lat:t,lng:l})},e.prototype.createMapByType=function(e,t,l){e=new GMaps({div:e,lat:t,lng:l,mapTypeControlOptions:{mapTypeIds:["hybrid","roadmap","satellite","terrain","osm","cloudmade"]}});return e.addMapType("osm",{getTileUrl:function(e,t){return"http://tile.openstreetmap.org/"+t+"/"+e.x+"/"+e.y+".png"},tileSize:new google.maps.Size(256,256),name:"OpenStreetMap",maxZoom:18}),e.addMapType("cloudmade",{getTileUrl:function(e,t){return"http://b.tile.cloudmade.com/8ee2a50541944fb9bcedded5165f09d9/1/256/"+t+"/"+e.x+"/"+e.y+".png"},tileSize:new google.maps.Size(256,256),name:"CloudMade",maxZoom:18}),e.setMapTypeId("osm"),e},e.prototype.createWithStyle=function(e,t){new GMaps({div:e,lat:-12.043333,lng:-77.028333,styles:t})},e.prototype.init=function(){var e=this;t(document).ready(function(){e.createBasic("#gmaps-basic"),e.createMarkers("#gmaps-markers"),e.createWithStreetview("#panorama",40.7295174,-73.9986496),e.createMapByType("#gmaps-types",-12.043333,-77.028333),e.createWithStyle("#ultra-light",[{featureType:"water",elementType:"geometry",stylers:[{color:"#e9e9e9"},{lightness:17}]},{featureType:"landscape",elementType:"geometry",stylers:[{color:"#f5f5f5"},{lightness:20}]},{featureType:"road.highway",elementType:"geometry.fill",stylers:[{color:"#ffffff"},{lightness:17}]},{featureType:"road.highway",elementType:"geometry.stroke",stylers:[{color:"#ffffff"},{lightness:29},{weight:.2}]},{featureType:"road.arterial",elementType:"geometry",stylers:[{color:"#ffffff"},{lightness:18}]},{featureType:"road.local",elementType:"geometry",stylers:[{color:"#ffffff"},{lightness:16}]},{featureType:"poi",elementType:"geometry",stylers:[{color:"#f5f5f5"},{lightness:21}]},{featureType:"poi.park",elementType:"geometry",stylers:[{color:"#dedede"},{lightness:21}]},{elementType:"labels.text.stroke",stylers:[{visibility:"on"},{color:"#ffffff"},{lightness:16}]},{elementType:"labels.text.fill",stylers:[{saturation:36},{color:"#333333"},{lightness:40}]},{elementType:"labels.icon",stylers:[{visibility:"off"}]},{featureType:"transit",elementType:"geometry",stylers:[{color:"#f2f2f2"},{lightness:19}]},{featureType:"administrative",elementType:"geometry.fill",stylers:[{color:"#fefefe"},{lightness:20}]},{featureType:"administrative",elementType:"geometry.stroke",stylers:[{color:"#fefefe"},{lightness:17},{weight:1.2}]}])}),e.createWithStyle("#dark",[{featureType:"all",elementType:"labels",stylers:[{visibility:"on"}]},{featureType:"all",elementType:"labels.text.fill",stylers:[{saturation:36},{color:"#000000"},{lightness:40}]},{featureType:"all",elementType:"labels.text.stroke",stylers:[{visibility:"on"},{color:"#000000"},{lightness:16}]},{featureType:"all",elementType:"labels.icon",stylers:[{visibility:"off"}]},{featureType:"administrative",elementType:"geometry.fill",stylers:[{color:"#000000"},{lightness:20}]},{featureType:"administrative",elementType:"geometry.stroke",stylers:[{color:"#000000"},{lightness:17},{weight:1.2}]},{featureType:"administrative.country",elementType:"labels.text.fill",stylers:[{color:"#e5c163"}]},{featureType:"administrative.locality",elementType:"labels.text.fill",stylers:[{color:"#c4c4c4"}]},{featureType:"administrative.neighborhood",elementType:"labels.text.fill",stylers:[{color:"#e5c163"}]},{featureType:"landscape",elementType:"geometry",stylers:[{color:"#000000"},{lightness:20}]},{featureType:"poi",elementType:"geometry",stylers:[{color:"#000000"},{lightness:21},{visibility:"on"}]},{featureType:"poi.business",elementType:"geometry",stylers:[{visibility:"on"}]},{featureType:"road.highway",elementType:"geometry.fill",stylers:[{color:"#e5c163"},{lightness:"0"}]},{featureType:"road.highway",elementType:"geometry.stroke",stylers:[{visibility:"off"}]},{featureType:"road.highway",elementType:"labels.text.fill",stylers:[{color:"#ffffff"}]},{featureType:"road.highway",elementType:"labels.text.stroke",stylers:[{color:"#e5c163"}]},{featureType:"road.arterial",elementType:"geometry",stylers:[{color:"#000000"},{lightness:18}]},{featureType:"road.arterial",elementType:"geometry.fill",stylers:[{color:"#575757"}]},{featureType:"road.arterial",elementType:"labels.text.fill",stylers:[{color:"#ffffff"}]},{featureType:"road.arterial",elementType:"labels.text.stroke",stylers:[{color:"#2c2c2c"}]},{featureType:"road.local",elementType:"geometry",stylers:[{color:"#000000"},{lightness:16}]},{featureType:"road.local",elementType:"labels.text.fill",stylers:[{color:"#999999"}]},{featureType:"transit",elementType:"geometry",stylers:[{color:"#000000"},{lightness:19}]},{featureType:"water",elementType:"geometry",stylers:[{color:"#000000"},{lightness:17}]}])},t.GoogleMap=new e,t.GoogleMap.Constructor=e}(window.jQuery),function(){"use strict";window.jQuery.GoogleMap.init()}(); \ No newline at end of file diff --git a/pxy_dashboard/static/dashboard/js/pages/demo.inbox.js b/pxy_dashboard/static/dashboard/js/pages/demo.inbox.js new file mode 100644 index 0000000..9945cfa --- /dev/null +++ b/pxy_dashboard/static/dashboard/js/pages/demo.inbox.js @@ -0,0 +1 @@ +$("input:checkbox").change(function(){$(this).is(":checked")?$(this).parent().parent().parent().parent().addClass("mail-selected"):$(this).parent().parent().parent().parent().removeClass("mail-selected")});var quill=new Quill("#snow-editor",{theme:"snow",modules:{toolbar:[["bold","italic","underline","strike"],[{color:[]}],["blockquote","code-block"],[{list:"ordered"},{list:"bullet"}],["link","image","video"]]}}); \ No newline at end of file diff --git a/pxy_dashboard/static/dashboard/js/pages/demo.material-symbol.js b/pxy_dashboard/static/dashboard/js/pages/demo.material-symbol.js new file mode 100644 index 0000000..924e226 --- /dev/null +++ b/pxy_dashboard/static/dashboard/js/pages/demo.material-symbol.js @@ -0,0 +1 @@ +function getIconItem(e){var _=document.createElement("div"),t=document.createElement("i"),o=document.createElement("span");return _.className="col-xl-3 col-lg-4 col-sm-6",t.className="material-symbols-outlined",t.innerHTML=e,_.appendChild(t),o.innerHTML=e,_.appendChild(o),_}["search","home","menu","close","settings","done","expand_more","check_circle","favorite","add","delete","arrow_back","logout","chevron_right","star","arrow_forward_ios","add_circle","arrow_back_ios","cancel","file_download","arrow_forward","arrow_drop_down","more_vert","check","check_box","toggle_on","open_in_new","grade","login","check_box_outline_blank","refresh","chevron_left","expand_less","more_horiz","radio_button_unchecked","file_upload","arrow_right_alt","radio_button_checked","apps","remove","download","delete_forever","toggle_off","bolt","filter_list","arrow_upward","autorenew","sort","arrow_back_ios_new","arrow_downward","add_box","sync","block","restart_alt","menu_open","backspace","key","done_all","expand_circle_down","arrow_circle_right","undo","arrow_right","double_arrow","open_in_full","zoom_in","manage_search","sync_alt","done_outline","do_not_disturb_on","drag_indicator","shopping_cart_checkout","reply","fullscreen","star_half","arrow_drop_up","ios_share","exit_to_app","cached","unfold_more","settings_accessibility","swap_horiz","keyboard_double_arrow_right","library_add","swap_vert","change_circle","disabled_by_default","arrow_circle_up","minimize","terminal","select_check_box","app_registration","close_fullscreen","open_with","download_for_offline","arrow_circle_left","add_task","file_open","forward","settings_applications","create_new_folder","compare_arrows","redo","zoom_out","arrow_left","start","keyboard_double_arrow_left","dataset","keyboard_double_arrow_down","downloading","publish","keyboard_voice","first_page","arrow_circle_down","switch_access_shortcut","delete_sweep","fullscreen_exit","sort_by_alpha","indeterminate_check_box","html","settings_backup_restore","last_page","download_done","arrow_drop_down_circle","token","sync_problem","clear_all","expand","keyboard_double_arrow_up","unfold_less","assistant_navigation","subdirectory_arrow_right","density_medium","view_timeline","select_all","maximize","filter_alt_off","output","place_item","system_update_alt","fit_screen","saved_search","search_off","assistant_direction","123","swipe_left","javascript","hide_source","auto_mode","file_download_done","dynamic_form","switch_access_shortcut_add","swap_horizontal_circle","swipe_up","css","swipe_right","youtube_searched_for","browse_gallery","restore_from_trash","move_up","dataset_linked","enable","density_small","reply_all","move_down","switch_left","swap_vertical_circle","compress","install_mobile","install_desktop","remove_done","abc","hide","apps_outage","view_kanban","data_thresholding","swipe_down","subdirectory_arrow_left","eject","keyboard_command_key","sync_disabled","switch_right","filter_list_off","do_not_disturb_off","swipe_vertical","pinch","php","key_off","extension_off","file_download_off","width_full","more_up","width_normal","keyboard_control_key","view_cozy","open_in_new_off","send_time_extension","view_comfy_alt","view_compact_alt","density_large","vpn_key_off","swipe_right_alt","more_down","swipe_up_alt","width_wide","swipe_down_alt","swipe_left_alt","keyboard_option_key","hls","hls_off","arrow_outward","transcribe","unfold_more_double","unfold_less_double","repartition","account_circle","account_circle","info","visibility","calendar_month","schedule","language","lock","help","warning","error","visibility_off","verified","manage_accounts","task_alt","history","event","calendar_today","bookmark","fingerprint","lightbulb","tips_and_updates","category","date_range","update","supervisor_account","lock_open","build","question_mark","code","priority_high","today","event_available","upload_file","ads_click","touch_app","account_box","settings_suggest","pending","preview","how_to_reg","stars","celebration","new_releases","bug_report","edit_calendar","alarm","record_voice_over","extension","event_note","label","published_with_changes","support","rate_review","supervised_user_circle","hourglass_empty","accessibility_new","upload","notification_important","web","help_center","bookmarks","interests","dangerous","all_inclusive","pan_tool","pan_tool_alt","flutter_dash","rule","change_history","collections_bookmark","api","circle_notifications","accessible","wysiwyg","build_circle","accessibility","hotel_class","upgrade","event_upcoming","priority","bookmark_add","input","web_asset","backup","manage_history","event_busy","more_time","alarm_on","perm_contact_calendar","lock_reset","pageview","label_important","swipe","model_training","history_toggle_off","square_foot","save_as","dynamic_feed","more","component_exchange","assistant","approval","bookmark_added","app_shortcut","event_repeat","offline_bolt","push_pin","open_in_browser","unpublished","free_cancellation","running_with_errors","hourglass_full","3d_rotation","no_accounts","anchor","notification_add","lock_clock","accessible_forward","background_replace","new_label","lock_person","tab","smart_button","add_alert","outbound","auto_delete","gesture","online_prediction","lightbulb_circle","domain_verification","settings_power","find_replace","hand_gesture","edit_notifications","generating_tokens","backup_table","wifi_protected_setup","ad_units","chrome_reader_mode","on_device_training","alarm_add","http","offline_pin","code_off","bookmark_remove","pinch_zoom_out","hourglass_disabled","batch_prediction","pinch_zoom_in","snooze","settings_overscan","voice_over_off","commit","all_out","time_auto","update_disabled","timer_10_alt_1","person_add_disabled","alarm_off","rounded_corner","label_off","tab_unselected","timer_3_alt_1","rsvp","web_asset_off","pin_invoke","pin_end","person","person","group","share","thumb_up","public","person_add","face","support_agent","handshake","sentiment_satisfied","group_add","workspace_premium","rocket_launch","psychology","pets","water_drop","groups","eco","travel_explore","quiz","emoji_objects","sentiment_dissatisfied","person_filled","health_and_safety","mood","sentiment_very_satisfied","military_tech","thumb_down","gavel","recycling","sunny","emoji_people","monitor_heart","workspaces","diamond","vaccines","compost","person_remove","group_work","medication","waving_hand","wc","recommend","forest","thumb_up_off","cruelty_free","man","sentiment_very_dissatisfied","sentiment_neutral","coronavirus","female","medical_information","front_hand","emoji_nature","male","add_reaction","rocket","cookie","connect_without_contact","mood_bad","woman","person_off","masks","bedtime","solar_power","thumbs_up_down","thunderstorm","heart_broken","whatshot","rainy","hive","cloudy_snowing","boy","emoji_food_beverage","communication","reduce_capacity","thumb_down_off","elderly","cloudy","partly_cloudy_day","vpn_lock","sentiment_extremely_dissatisfied","wind_power","emoji_flags","emoji_transportation","pregnant_woman","bloodtype","group_remove","sick","follow_the_signs","emoji_symbols","transgender","medication_liquid","clean_hands","clear_day","co2","social_distance","sanitizer","elderly_woman","egg","oil_barrel","public_off","south_america","girl","sunny_snowing","clear_night","sign_language","bring_your_own_ip","egg_alt","flood","group_off","cyclone","routine","cloudy_filled","diversity_3","tsunami","tornado","severe_cold","landslide","vaping_rooms","outdoor_garden","snowing","safety_divider","6_ft_apart","partly_cloudy_night","18_up_rating","vape_free","no_adult_content","foggy","volcano","not_accessible","diversity_2","diversity_1","psychology_alt","bedtime_off","groups_2","face_6","face_2","face_3","groups_3","person_2","face_4","face_5","person_4","blind","man_2","woman_2","person_3","man_4","man_3","mail","mail","call","notifications","send","chat","link","inventory_2","forum","contact_support","chat_bubble","notifications_active","phone_in_talk","alternate_email","sms","power_settings_new","comment","hub","person_search","contact_mail","contacts","import_contacts","live_help","forward_to_inbox","inbox","drafts","contact_phone","hourglass_bottom","mode_comment","hourglass_top","mark_email_unread","reviews","mark_email_read","lan","link_off","sms_failed","perm_phone_msg","add_comment","speaker_notes","outgoing_mail","calendar_add_on","call_end","notifications_off","phone_enabled","topic","co_present","schedule_send","mark_chat_unread","call_made","dialpad","cell_tower","unarchive","cancel_presentation","mark_as_unread","settings_phone","3p","mark_unread_chat_alt","satellite_alt","move_to_inbox","attach_email","next_plan","call_received","unsubscribe","present_to_all","phone_callback","all_inbox","voice_chat","phonelink_ring","call_split","markunread_mailbox","mark_chat_read","duo","mail_lock","attribution","phone_forwarded","add_call","upcoming","swap_calls","phonelink_lock","notifications_paused","outbox","spoke","phone_disabled","comment_bank","quickreply","cancel_schedule_send","ring_volume","send_and_archive","voicemail","phone_missed","picture_in_picture_alt","speaker_phone","pause_presentation","picture_in_picture","settings_bluetooth","auto_read_play","play_for_work","score","comments_disabled","chat_add_on","call_merge","speaker_notes_off","phonelink_erase","cell_wifi","mms","call_missed_outgoing","phone_paused","call_missed","calendar_apps_script","wifi_channel","dialer_sip","phone_locked","sip","rtt","wifi_calling","phone_bluetooth_speaker","auto_read_pause","chat_apps_script","nat","e911_avatar","contact_emergency","edit","edit","filter_alt","photo_camera","image","navigate_next","timer","tune","picture_as_pdf","circle","add_a_photo","palette","auto_awesome","navigate_before","photo_library","auto_stories","magic_button","add_photo_alternate","brush","wb_sunny","nature","flash_on","camera","straighten","looks_one","crop_square","landscape","grid_on","timelapse","slideshow","style","rotate_right","adjust","imagesmode","crop_free","aspect_ratio","filter_vintage","brightness_6","crop","photo","image_search","blur_on","nature_people","rotate_left","center_focus_strong","flare","face_retouching_natural","invert_colors","compare","filter_drama","looks_two","colorize","contrast","healing","lens","movie_filter","wb_incandescent","opacity","brightness_5","filter_none","looks_3","filter_center_focus","animation","add_to_photos","brightness_4","wb_twilight","incomplete_circle","broken_image","flash_off","grain","flip","lens_blur","panorama","auto_awesome_motion","gif_box","flip_camera_android","mic_external_on","center_focus_weak","flaky","details","dehaze","web_stories","exposure_plus_1","image_not_supported","no_photography","panorama_fish_eye","settings_brightness","loupe","texture","filter_1","auto_awesome_mosaic","camera_enhance","linked_camera","flip_camera_ios","brightness_7","looks_4","filter","timer_off","brightness_1","photo_album","crop_7_5","photo_camera_front","control_point_duplicate","transform","view_comfy","exposure","hide_image","looks","gif","blur_circular","camera_roll","leak_add","looks_5","filter_hdr","gradient","rotate_90_degrees_ccw","photo_filter","crop_16_9","hdr_auto","motion_photos_auto","view_compact","hdr_strong","brightness_3","brightness_2","vrpano","crop_portrait","rotate_90_degrees_cw","photo_size_select_small","crop_landscape","camera_front","shutter_speed","filter_4","filter_tilt_shift","flash_auto","looks_6","filter_2","crop_rotate","crop_5_4","hdr_weak","tonality","astrophotography_auto","motion_photos_paused","wb_iridescent","filter_3","deblur","monochrome_photos","party_mode","filter_frames","blur_linear","photo_frame","switch_video","exposure_plus_2","night_sight_auto","filter_7","crop_3_2","exposure_zero","photo_camera_back","face_retouching_off","filter_b_and_w","switch_camera","filter_5","photo_size_select_large","invert_colors_off","motion_blur","panorama_horizontal","burst_mode","filter_9_plus","panorama_photosphere","blur_short","blur_medium","exposure_neg_1","no_flash","raw_on","filter_8","timer_10","hdr_on","filter_9","image_aspect_ratio","motion_photos_off","dirty_lens","ev_shadow","timer_3","wb_shade","exposure_neg_2","filter_6","grid_off","leak_remove","camera_rear","trail_length","vignette","mic_external_off","perm_camera_mic","panorama_vertical","autofps_select","30fps_select","hdr_enhanced_select","hdr_off","blur_off","hdr_on_select","night_sight_auto_off","trail_length_short","60fps_select","panorama_wide_angle","wb_auto","24mp","mp","astrophotography_off","22mp","trail_length_medium","hdr_auto_select","3mp","raw_off","10mp","18mp","hdr_plus","12mp","5mp","14mp","13mp","20mp","4mp","6mp","hdr_off_select","11mp","19mp","hevc","15mp","16mp","17mp","23mp","7mp","9mp","21mp","8mp","2mp","fluorescent","shopping_cart","shopping_cart","shopping_bag","payments","credit_card","receipt_long","monitoring","paid","trending_up","attach_money","account_balance","storefront","account_balance_wallet","analytics","work","sell","insights","store","database","savings","query_stats","monetization_on","qr_code_scanner","add_shopping_cart","calculate","account_tree","bar_chart","receipt","redeem","shopping_basket","trending_flat","currency_exchange","qr_code_2","leaderboard","qr_code","domain","precision_manufacturing","meeting_room","timeline","euro","show_chart","corporate_fare","work_history","credit_score","insert_chart","currency_rupee","wallet","loyalty","copyright","euro_symbol","pie_chart","track_changes","trending_down","auto_graph","conversion_path","add_business","price_check","schema","card_membership","currency_bitcoin","donut_large","price_change","production_quantity_limits","add_card","data_exploration","bubble_chart","tenancy","donut_small","money","stacked_line_chart","stacked_bar_chart","contactless","cases","toll","remove_shopping_cart","shop","area_chart","money_off","currency_pound","room_preferences","scatter_plot","card_travel","mediation","legend_toggle","add_chart","currency_yen","domain_add","credit_card_off","waterfall_chart","ssid_chart","domain_disabled","candlestick_chart","next_week","grouped_bar_chart","currency_ruble","full_stacked_bar_chart","shop_two","atm","strikethrough_s","multiline_chart","barcode_scanner","currency_lira","no_meeting_room","currency_yuan","barcode","currency_franc","pin_drop","pin_drop","map","explore","home_pin","restaurant","flag","my_location","east","local_fire_department","near_me","person_pin_circle","where_to_vote","local_mall","business_center","restaurant_menu","handyman","local_library","medical_services","layers","factory","local_activity","home_work","share_location","north_east","emergency","add_location","west","local_florist","person_pin","fastfood","navigation","south","local_hospital","home_repair_service","local_police","zoom_out_map","local_parking","park","location_searching","warehouse","cleaning_services","add_location_alt","local_atm","maps_ugc","north","360","crisis_alert","location_away","local_gas_station","electrical_services","flag_circle","fmd_bad","not_listed_location","theater_comedy","directions","local_post_office","tour","local_pizza","trip_origin","local_drink","alt_route","location_home","wine_bar","beenhere","local_convenience_store","church","local_laundry_service","traffic","signpost","moving","location_automation","takeout_dining","ev_station","zoom_in_map","safety_check","wrong_location","soup_kitchen","transfer_within_a_station","edit_location","mode_of_travel","multiple_stop","plumbing","location_off","pest_control","connecting_airports","south_east","add_road","local_pharmacy","dry_cleaning","stadium","fire_truck","minor_crash","castle","layers_clear","north_west","edit_location_alt","baby_changing_station","mosque","transit_enterexit","edit_attributes","local_car_wash","set_meal","sos","run_circle","satellite","edit_road","south_west","airline_stops","local_see","flight_class","streetview","no_meals","remove_road","fire_hydrant","kebab_dining","synagogue","compass_calibration","fort","location_disabled","explore_off","temple_buddhist","pest_control_rodent","near_me_disabled","temple_hindu","pergola","directions_off","add_home_work","add_home","assist_walker","description","description","content_copy","dashboard","edit_note","menu_book","grid_view","list","folder","inventory","article","list_alt","fact_check","folder_open","attach_file","format_list_bulleted","assignment","task","checklist","cloud_upload","feed","summarize","view_list","draw","cloud","border_color","newspaper","note_add","book","file_copy","draft","post_add","pending_actions","history_edu","format_quote","design_services","request_quote","cloud_download","contact_page","drag_handle","space_dashboard","archive","content_paste","attachment","assignment_ind","reorder","format_list_numbered","assignment_turned_in","sticky_note_2","table","tag","percent","table_chart","dashboard_customize","find_in_page","text_fields","integration_instructions","text_snippet","format_bold","document_scanner","checklist_rtl","perm_media","note","table_rows","note_alt","cloud_sync","subject","title","notes","content_cut","functions","cloud_done","table_view","format_italic","format_color_fill","ballot","horizontal_rule","read_more","add_link","folder_shared","format_align_left","file_present","toc","folder_copy","data_object","difference","cut","view_column","plagiarism","cloud_off","content_paste_search","format_size","format_paint","view_headline","view_agenda","team_dashboard","format_underlined","vertical_align_top","view_module","segment","vertical_align_bottom","height","view_week","assignment_late","assignment_return","copy_all","low_priority","format_align_center","calendar_view_month","grading","format_color_text","linear_scale","folder_zip","folder_special","format_align_right","view_quilt","breaking_news_alt_1","view_carousel","square","text_format","edit_off","format_align_justify","polyline","view_sidebar","calendar_view_day","calendar_view_week","cloud_queue","pages","text_increase","format_shapes","request_page","folder_delete","forms_add_on","numbers","join_full","video_file","font_download","vertical_split","docs_add_on","format_list_numbered_rtl","imagesearch_roller","view_stream","restore_page","rule_folder","cloud_circle","hexagon","join_inner","rectangle","format_color_reset","deselect","content_paste_go","spellcheck","align_horizontal_left","format_indent_increase","pivot_table_chart","assignment_returned","view_day","merge_type","flip_to_front","vertical_align_center","horizontal_split","space_bar","data_array","format_strikethrough","text_decrease","join_left","short_text","align_horizontal_center","line_weight","pentagon","subtitles_off","join_right","align_vertical_bottom","format_line_spacing","align_horizontal_right","border_all","format_indent_decrease","folder_off","snippet_folder","format_clear","horizontal_distribute","vertical_distribute","margin","line_style","content_paste_off","superscript","line_axis","align_vertical_top","insert_page_break","align_vertical_center","flip_to_back","view_array","border_clear","clarify","wrap_text","subscript","text_rotate_vertical","border_style","type_specimen","border_outer","forms_apps_script","format_overline","text_rotation_none","amp_stories","padding","docs_apps_script","border_left","format_textdirection_l_to_r","format_textdirection_r_to_l","text_rotation_angleup","border_horizontal","border_top","border_bottom","border_vertical","text_rotation_down","text_rotate_up","border_inner","font_download_off","text_rotation_angledown","border_right","shape_line","play_arrow","play_arrow","play_circle","videocam","mic","volume_up","pause","music_note","library_books","skip_next","movie","speed","replay","volume_off","view_in_ar","pause_circle","fiber_manual_record","skip_previous","equalizer","stop","playlist_add","stop_circle","subscriptions","video_library","fast_forward","video_call","volume_mute","repeat","shuffle","mic_off","library_music","playlist_add_check","podcasts","hearing","fast_rewind","queue_music","video_camera_front","album","sound_detection_dog_barking","subtitles","av_timer","radio","volume_down","library_add_check","play_pause","stream","discover_tune","videocam_off","not_started","replay_10","forward_10","replay_circle_filled","closed_caption","playlist_play","branding_watermark","recent_actors","fiber_new","playlist_remove","text_to_speech","interpreter_mode","video_settings","audio_file","lyrics","settings_voice","playlist_add_check_circle","slow_motion_video","featured_play_list","repeat_one","play_lesson","video_camera_back","call_to_action","playlist_add_circle","sound_detection_loud_sound","high_quality","spatial_audio_off","shuffle_on","hd","music_off","featured_video","hearing_disabled","add_to_queue","repeat_on","spatial_audio","replay_5","volume_down_alt","forward_30","explicit","replay_30","airplay","control_camera","music_video","4k","queue_play_next","digital_out_of_home","art_track","spatial_tracking","forward_5","sd","fiber_smart_record","video_label","broadcast_on_personal","missed_video_call","repeat_one_on","closed_caption_disabled","play_disabled","60fps","surround_sound","broadcast_on_home","10k","fiber_pin","remove_from_queue","sound_detection_glass_break","video_stable","30fps","1k","4k_plus","fiber_dvr","privacy","8k","8k_plus","3k_plus","2k","5k_plus","6k","7k","9k","7k_plus","9k_plus","1k_plus","3k","5k","2k_plus","6k_plus","local_shipping","local_shipping","directions_car","flight","directions_run","directions_walk","flight_takeoff","directions_bus","directions_bike","train","pedal_bike","airport_shuttle","directions_boat","agriculture","two_wheeler","sailing","local_taxi","electric_car","flight_land","hail","commute","no_crash","car_crash","motorcycle","tram","departure_board","subway","electric_moped","turn_right","electric_scooter","directions_subway","bus_alert","electric_bike","fork_right","tire_repair","rv_hookup","directions_railway","airlines","electric_rickshaw","taxi_alert","turn_left","transportation","u_turn_left","turn_slight_right","u_turn_right","railway_alert","fork_left","bike_scooter","turn_slight_left","turn_sharp_right","turn_sharp_left","no_transfer","snowmobile","school","school","campaign","construction","volunteer_activism","engineering","science","sports_esports","confirmation_number","real_estate_agent","cake","sports_soccer","self_improvement","air","biotech","water","hiking","architecture","personal_injury","sports_score","waves","sports_basketball","switch_account","sports_tennis","theaters","nights_stay","sports_gymnastics","sports_kabaddi","sports_motorsports","piano","surfing","how_to_vote","sports","toys","backpack","sports_baseball","sports_volleyball","kayaking","sports_martial_arts","downhill_skiing","sports_football","sports_handball","scoreboard","skateboarding","phishing","sports_golf","rowing","sports_cricket","nordic_walking","kitesurfing","roller_skating","scuba_diving","sports_hockey","sports_mma","storm","paragliding","snowboarding","ice_skating","snowshoeing","sports_rugby","sledding","piano_off","no_backpack","phone_iphone","phone_iphone","save","smartphone","keyboard_arrow_down","print","computer","devices","desktop_windows","dns","smart_display","keyboard_backspace","headphones","phone_android","keyboard_arrow_right","keyboard_arrow_up","smart_toy","keyboard","live_tv","memory","laptop_mac","headset_mic","tv","mouse","device_thermostat","point_of_sale","keyboard_arrow_left","route","balance","keyboard_return","laptop_chromebook","power","developer_board","router","book_online","scale","developer_mode","watch","laptop_windows","cast","videogame_asset","cast_for_education","device_hub","display_settings","fax","settings_ethernet","desktop_mac","settings_input_antenna","screen_search_desktop","important_devices","tablet_mac","monitor_weight","monitor","straight","mobile_friendly","send_to_mobile","system_update","settings_remote","devices_other","screen_share","settings_input_component","screen_rotation","power_off","screenshot_monitor","keyboard_tab","merge","keyboard_alt","vibration","browser_updated","speaker","remember_me","sim_card","connected_tv","sd_card","security_update_good","cast_connected","device_unknown","tablet","tablet_android","charging_station","screenshot","stay_current_portrait","settings_input_hdmi","phonelink_setup","punch_clock","scanner","tap_and_play","keyboard_hide","app_blocking","print_disabled","mobile_screen_share","security_update_warning","speaker_group","offline_share","keyboard_capslock","disc_full","earbuds","aod","tty","perm_device_information","add_to_home_screen","sd_card_alert","stop_screen_share","reset_tv","lift_to_talk","headphones_battery","screen_lock_portrait","settings_input_svideo","headset_off","power_input","smart_screen","stay_current_landscape","dock","roundabout_right","stay_primary_portrait","settings_cell","desktop_access_disabled","adf_scanner","mobile_off","earbuds_battery","watch_off","stay_primary_landscape","no_sim","settop_component","home_mini","phonelink_off","ramp_right","tv_off","developer_board_off","chromecast_device","home_max","ramp_left","screen_lock_landscape","videogame_asset_off","screen_lock_rotation","roundabout_left","light_mode","light_mode","dark_mode","wifi","signal_cellular_alt","password","widgets","pin","battery_full","storage","rss_feed","thermostat","wifi_off","bluetooth","battery_charging_full","nightlight","dvr","graphic_eq","battery_5_bar","signal_wifi_4_bar","gpp_maybe","battery_4_bar","radar","cable","gpp_bad","signal_cellular_4_bar","data_usage","cameraswitch","battery_full_alt","airplanemode_active","wallpaper","battery_6_bar","battery_0_bar","flashlight_on","network_check","usb","battery_3_bar","wifi_tethering","sim_card_download","signal_disconnected","noise_control_off","battery_1_bar","splitscreen","charger","network_wifi_3_bar","adb","bluetooth_searching","battery_alert","battery_2_bar","network_wifi","brightness_high","battery_low","pattern","5g","bluetooth_connected","network_cell","bluetooth_disabled","nfc","network_wifi_2_bar","grid_4x4","signal_wifi_bad","mobiledata_off","brightness_medium","signal_wifi_off","brightness_low","network_wifi_1_bar","signal_wifi_statusbar_null","battery_very_low","battery_saver","data_saver_on","mode_standby","signal_cellular_3_bar","signal_wifi_statusbar_not_connected","signal_wifi_0_bar","battery_unknown","flashlight_off","settings_system_daydream","badge_critical_battery","nearby_error","signal_cellular_2_bar","battery_charging_20","noise_aware","wifi_calling_3","battery_charging_80","wifi_2_bar","4g_mobiledata","battery_20","battery_charging_50","battery_charging_60","screen_rotation_alt","signal_cellular_alt_2_bar","wifi_lock","signal_cellular_1_bar","brightness_auto","do_not_disturb_on_total_silence","battery_charging_90","wifi_calling_1","network_ping","signal_cellular_0_bar","signal_cellular_connected_no_internet_0_bar","wifi_calling_2","lte_mobiledata","perm_data_setting","grid_3x3","battery_30","wifi_tethering_error","edgesensor_high","media_bluetooth_on","battery_charging_30","battery_50","perm_scan_wifi","airplanemode_inactive","bluetooth_drive","signal_cellular_nodata","battery_90","signal_cellular_connected_no_internet_4_bar","wifi_tethering_off","signal_cellular_alt_1_bar","signal_cellular_null","wifi_1_bar","1x_mobiledata","signal_cellular_off","4g_plus_mobiledata","battery_80","usb_off","battery_60","network_locked","g_mobiledata","timer_10_select","edgesensor_low","lte_plus_mobiledata","devices_fold","3g_mobiledata","portable_wifi_off","grid_goldenratio","e_mobiledata","timer_3_select","r_mobiledata","nearby_off","h_mobiledata","media_bluetooth_off","h_plus_mobiledata","verified_user","verified_user","badge","admin_panel_settings","report","vpn_key","security","shield","policy","exclamation","privacy_tip","assured_workload","disabled_visible","enhanced_encryption","e911_emergency","private_connectivity","add_moderator","no_encryption","wifi_password","remove_moderator","sync_lock","key_visualizer","report_off","apartment","apartment","location_city","fitness_center","spa","lunch_dining","cottage","local_cafe","hotel","family_restroom","local_bar","pool","other_houses","liquor","beach_access","luggage","airplane_ticket","casino","sports_bar","bakery_dining","ramen_dining","nightlife","holiday_village","local_dining","escalator_warning","icecream","dinner_dining","night_shelter","food_bank","museum","attractions","festival","golf_course","smoking_rooms","smoke_free","villa","stairs","airline_seat_recline_normal","child_friendly","gite","car_rental","elevator","breakfast_dining","carpenter","airline_seat_recline_extra","brunch_dining","cabin","car_repair","do_not_touch","no_food","tapas","wheelchair_pickup","rice_bowl","houseboat","do_not_step","bento","no_drinks","bungalow","escalator","airline_seat_flat","airline_seat_individual_suite","chalet","no_luggage","airline_seat_legroom_extra","airline_seat_flat_angled","airline_seat_legroom_normal","no_stroller","airline_seat_legroom_reduced","house","house","bed","ac_unit","chair","coffee","sensors","checkroom","child_care","electric_bolt","grass","back_hand","shower","yard","kitchen","king_bed","room_service","mode_fan","emergency_home","roofing","bathtub","energy_savings_leaf","window","mop","styler","door_front","light","thermometer","table_restaurant","foundation","sensor_occupied","outdoor_grill","garage","coffee_maker","dining","weekend","deck","flatware","garage_home","fireplace","valve","cooking","mode_night","mode_heat","highlight","electric_meter","hardware","bedroom_parent","microwave","blender","hot_tub","countertops","chair_alt","event_seat","single_bed","bedroom_baby","table_bar","sensor_door","soap","heat_pump","outlet","living","bathroom","camera_indoor","crib","fire_extinguisher","humidity_mid","door_sliding","mode_off_on","tv_gen","bedroom_child","house_siding","scene","water_damage","wash","humidity_low","oven_gen","iron","propane_tank","mode_fan_off","desk","balcony","camera_outdoor","sprinkler","door_back","mode_cool","energy_program_saving","humidity_high","in_home_mode","hvac","airware","gas_meter","doorbell","fence","detector_smoke","umbrella","air_freshener","dishwasher_gen","home_iot_device","gate","energy_program_time_used","faucet","emergency_share","emergency_heat","microwave_gen","shield_moon","switch","sensors_off","dresser","thermostat_auto","remote_gen","water_heater","air_purifier_gen","kettle","emergency_recording","stroller","blinds","mode_heat_cool","sensor_window","curtains","dry","smart_outlet","multicooker","controller_gen","roller_shades_closed","propane","roller_shades","blinds_closed","vertical_shades_closed","thermostat_carbon","curtains_closed","range_hood","blanket","tv_with_assistant","vertical_shades","doorbell_3p","mode_heat_off","mode_cool_off","tamper_detection_off","translate","translate","drive_file_rename_outline","android","g_translate","view_in_ar_new","google_plus_reshare","drive_file_move","webhook","drive_folder_upload","home_app_logo","atr","quick_phrases","add_to_drive","polymer","wifi_find","drive_file_move_outline","logo_dev","drive_file_move_rtl","matter","google_wifi","macro_off","stadia_controller","stadia_controller","nest_remote_comfort_sensor","nest_remote","nest_heat_link_gen_3","nest_heat_link_e","nest_cam_indoor","nest_display","nest_thermostat_gen_3","nest_cam_outdoor","nest_secure_alarm","mfg_nest_yale_lock","nest_audio","nest_cam_iq","home_speaker","nest_hello_doorbell","nest_cam_iq_outdoor","nest_wifi_router","home_max_dots","nest_tag","chromecast_2","nest_detect","nest_connect","nest_thermostat_sensor_eu","nest_wifi_point","nest_mini","nest_thermostat_zirconium_eu","nest_display_max","nest_wifi_point_vento","nest_thermostat_e_eu","nest_cam_wired_stand","nest_thermostat_sensor","nest_wifi_mistral","nest_wifi_gale","potted_plant","potted_plant","tools_wrench","nest_eco_leaf","battery_horiz_050","door_open","error_circle_rounded","nest_clock_farsight_analog","familiar_face_and_zone","shield_with_heart","frame_person","productivity","power_rounded","tools_power_drill","activity_zone","tools_pliers_wire_stripper","temp_preferences_custom","temp_preferences_eco","arrows_more_up","garden_cart","device_reset","battery_horiz_075","detection_and_zone","weather_snowy","cleaning_bucket","airwave","detector_status","nest_clock_farsight_digital","battery_horiz_000","climate_mini_split","nest_farsight_weather","tools_flat_head","ev_charger","nest_multi_room","tools_ladder","battery_profile","battery_vert_050","browse_activity","house_with_shield","laundry","share_reviews","arrows_more_down","battery_vert_020","detector_alarm","floor_lamp","motion_sensor_active","quiet_time","speech_to_text","tools_installation_kit","tools_phillips","window_open","motion_sensor_idle","nest_locator_tag","nest_true_radiant","noise_control_on","quiet_time_active","shield_with_house","tools_level","window_closed","auto_activity_zone","auto_schedule","battery_vert_005","detector","heat_pump_balance","light_group","nest_cam_floodlight","nest_cam_wall_mount","nest_found_savings","nest_sunblock","zone_person_alert","zone_person_urgent","arming_countdown","cool_to_dry","detector_battery","detector_co","detector_offline","door_sensor","motion_sensor_alert","motion_sensor_urgent","nest_wake_on_approach","nest_wake_on_press","tamper_detection_on","window_sensor","zone_person_idle","doorbell_chime","early_on","nest_cam_magnet_mount","nest_cam_stand","nest_doorbell_visitor"].forEach(function(e){e=getIconItem(e);document.getElementById("icons").appendChild(e)}); \ No newline at end of file diff --git a/pxy_dashboard/static/dashboard/js/pages/demo.quilljs.js b/pxy_dashboard/static/dashboard/js/pages/demo.quilljs.js new file mode 100644 index 0000000..70eda05 --- /dev/null +++ b/pxy_dashboard/static/dashboard/js/pages/demo.quilljs.js @@ -0,0 +1 @@ +var quill=new Quill("#snow-editor",{theme:"snow",modules:{toolbar:[[{font:[]},{size:[]}],["bold","italic","underline","strike"],[{color:[]},{background:[]}],[{script:"super"},{script:"sub"}],[{header:[!1,1,2,3,4,5,6]},"blockquote","code-block"],[{list:"ordered"},{list:"bullet"},{indent:"-1"},{indent:"+1"}],["direction",{align:[]}],["link","image","video"],["clean"]]}}),quill=new Quill("#bubble-editor",{theme:"bubble"}); \ No newline at end of file diff --git a/pxy_dashboard/static/dashboard/js/pages/demo.remixicons.js b/pxy_dashboard/static/dashboard/js/pages/demo.remixicons.js new file mode 100644 index 0000000..65ce9cd --- /dev/null +++ b/pxy_dashboard/static/dashboard/js/pages/demo.remixicons.js @@ -0,0 +1 @@ +var icons={Arrows:{"arrow-left-up":"corner,左上","arrow-up":"send,箭头,向上,发送","arrow-right-up":"send,corner,右上,发送","arrow-right":"forward,箭头,向右","arrow-right-down":"corner,右下","arrow-down":"receive,箭头,向下,接收,收款","arrow-left-down":"receive,corner,箭头,左下,接收,收款","arrow-left":"backward,箭头,向左,返回","corner-right-up":"arrow,箭头,右上","corner-up-left":"arrow,箭头,上左","corner-up-right":"arrow,箭头,上右","corner-right-down":"arrow,箭头,右下","corner-down-left":"arrow,箭头,下左","corner-left-up":"arrow,箭头,左上","corner-left-down":"arrow,箭头,左下","corner-down-right":"arrow,箭头,下右","arrow-up-circle":"箭头,向上","arrow-right-circle":"forward,箭头,向右","arrow-down-circle":"箭头,向下,下载","arrow-left-circle":"backward,箭头,向左,返回","arrow-up-s":"chevron,箭头,向上","arrow-right-s":"chevron,forward,箭头,向右","arrow-down-s":"chevron,箭头,向下","arrow-left-s":"chevron,backward,箭头,向左,返回","skip-up":"arrow,unfold,top,置顶,展开,收起","skip-right":"arrow,unfold,next,跳过,展开,收起","skip-down":"arrow,unfold,next,跳过,展开,收起","skip-left":"arrow,unfold,bottom,展开,收起","arrow-left-right":"exchange,swap,箭头,左右,交换,换算,兑换","arrow-up-down":"exchange,swap,箭头,上下,交换,换算,兑换","arrow-drop-up":"chevron,箭头,向上","arrow-drop-right":"chevron,forward,箭头,向右","arrow-drop-down":"chevron,箭头,向下","arrow-drop-left":"chevron,backward,箭头,向左,返回","arrow-up-double":"unfold,top,chevron,展开,收起","arrow-right-double":"unfold,chevron,展开,收起","arrow-down-double":"unfold,chevron,展开,收起","arrow-left-double":"unfold,chevron,展开,收起","corner-up-left-double":"arrow,replay-all,回复全部","corner-up-right-double":"arrow,forward-all,转发全部","expand-left":"slide, pull, unfold,slide, pull, unfold,arrow,slide,pull,unfold","expand-right":"arrow,展开,收起,右","contract-left":"slide, pull, fold,slide, pull, fold,arrow,slide,pull,fold","contract-right":"arrow,slide,pull,fold,展开,收起,右","expand-up-down":"unfold, dropdown, switch,unfold, dropdown, switch,arrow,unfold,dropdown,switch,展开","expand-left-right":"unfold, dropdown, switch,unfold, dropdown, switch,arrow,unfold,dropdown,switch","contract-up-down":"fold,fold,arrow,fold,收起","contract-left-right":"arrow,fold,收起","drag-move-2":"arrow,拖拽,移动,箭头","drag-move":"arrow,拖拽,移动,箭头","arrow-go-back":"undo,箭头,返回,撤销,撤回","arrow-go-forward":"redo,箭头,重做,撤销,撤回","arrow-turn-forward":"箭头,掉头","arrow-turn-back":"箭头,掉头"},Buildings:{home:"house,房子,家,主页","home-2":"house,房子,家,主页","home-3":"house,房子,家,主页","home-4":"house,房子,家,主页","home-5":"house,房子,家,主页","home-6":"house,房子,家,主页","home-7":"house,房子,家,主页","home-8":"house,房子,家,主页","home-gear":"house,房子,工厂","home-wifi":"smart home,房子,家具,智能家居","home-smile":"house,smart home,smile,房子,智能家居,微笑","home-smile-2":"house,smart home,smile,房子,智能家居,微笑","home-heart":"house,心,房子,家,主页,孤儿院","home-office":"居家办公",building:"city,office,enterprise,建筑,城市,楼,办公楼,写字楼,企业","building-2":"city,office,construction,enterprise,城市,建筑,楼,企业","building-3":"factory,plant,enterprise,工厂,建筑,楼,企业","building-4":"city,office,enterprise,建筑,城市,楼,办公楼,写字楼,企业",hotel:"building,hotel,office,enterprise,tavern,建筑,酒店,楼,办公楼,写字楼,企业",community:"building,hotel,社区,建筑,酒店",school:"college,university,学校,学院",government:"building,政府,建筑,大会堂",bank:"bank,finance,savings,banking,银行,交易所",store:"shop,mall,supermarket,retail,商店,超市,店铺,商家","store-2":"shop,mall,supermarket,retail,商店,超市,店铺,商家","store-3":"shop,mall,supermarket,retail,商店,超市,店铺,商家",hospital:"medical,health,医院","ancient-gate":"historical,genre,scenic,trip,travel,旅行,旅游,城门,古代,历史,景区","ancient-pavilion":"historical,genre,scenic,trip,travel,旅行,旅游,凉亭,古代,历史,景区"},Business:{mail:"envelope,email,inbox,信封,邮箱,邮件,收件箱","mail-open":"envelope,email,inbox,信封,邮箱,邮件,收件箱","mail-send":"envelope,email,inbox,zoom,whoosh,信封,邮箱,邮件,发送,发件箱","mail-unread":"envelope,email,inbox,信封,邮箱,邮件,未读","mail-add":"envelope,email,inbox,add,信封,邮箱,邮件,新增,添加","mail-check":"envelope,email,inbox,read,信封,邮箱,邮件,已读","mail-close":"envelope,email,inbox,failed,x,信封,邮箱,邮件,失败","mail-download":"envelope,email,inbox,download,信封,邮箱,邮件,下载","mail-forbid":"envelope,email,inbox,privacy,信封,邮箱,邮件,禁止","mail-lock":"envelope,email,inbox,lock,信封,邮箱,邮件,加密","mail-settings":"envelope,email,inbox,settings,信封,邮箱,邮件,设置","mail-star":"envelope,email,inbox,favorite,信封,邮箱,邮件,收藏,喜欢","mail-volume":"envelope,email,inbox,promotional email,email campaign,subscription,sound,信封,邮箱,邮件,收件箱,推广,订阅",inbox:"收件箱","inbox-archive":"收件箱,归档,收纳","inbox-unarchive":"unzip,unpack,extract,收件箱,取消归档,还原,解压缩",cloud:"weather,云端","cloud-off":"offline-mode,connection-fail,slash,weather,云端,断网,无信号,连接失败",attachment:"annex,paperclip,附件,曲别针",profile:"id,档案,资料,身份证,证件",archive:"box,收纳,归档,存档,盒子,纸箱","archive-drawer":"night table,收纳,抽屉,归档,存档,床头柜",at:"@,mention,提到,在",award:"medal,achievement,badge,成就,奖牌,金牌,勋章",medal:"award,achievement,badge,成就,奖牌,金牌,勋章","medal-2":"award,achievement,badge,成就,奖牌,金牌,勋章","bar-chart":"statistics,rhythm,柱状图,统计,韵律,节奏","bar-chart-horizontal":"statistics,rhythm,柱状图,统计,韵律,节奏","bar-chart-2":"statistics,rhythm,柱状图,统计,排行,节奏","bar-chart-box":"statistics,rhythm,柱状图,统计,节奏","bar-chart-grouped":"statistics,rhythm,柱状图,统计,分组","bubble-chart":"data,analysis,statistics,circles,气泡图,统计","pie-chart":"data,analysis,饼图,饼状图,数据,分析","pie-chart-2":"data,analysis,饼图,饼状图,数据,分析","pie-chart-box":"data,analysis,饼图,饼状图,数据,分析","donut-chart":"data,analysis,circle,pie,环形图,数据,分析","line-chart":"data,analysis,stats,折线图,数据,分析",bookmark:"tag,书签,标记","bookmark-2":"tag,书签,标记","bookmark-3":"tag,书签,标记,荣誉",briefcase:"bag,baggage,公文包,行李箱,旅行箱,皮包","briefcase-2":"bag,baggage,公文包,行李箱,旅行箱,皮包","briefcase-3":"bag,baggage,公文包,行李箱,旅行箱,皮包","briefcase-4":"bag,baggage,公文包,行李箱,旅行箱,皮包","briefcase-5":"bag,baggage,公文包,行李箱,旅行箱,皮包",calculator:"计算器,计算机",calendar:"date,plan,schedule,agenda,日历,日期,月份,计划,日程,时间表","calendar-2":"date,plan,schedule,agenda,日历,日期,月份,计划,日程,时间表","calendar-event":"date,plan,schedule,agenda,日历,日期,月份,计划,日程,时间表","calendar-todo":"date,plan,schedule,agenda,日历,日期,月份,计划,日程,时间表","calendar-check":"date,plan,schedule,agenda,check-in,punch,日历,日期,月份,计划,日程,时间表,签到,打卡","calendar-close":"date,plan,schedule,agenda,error,cancel,日历,日期,月份,计划,日程,时间表,取消,错误","customer-service":"headset,headphones,earphones,客服,售后,耳机,耳麦","customer-service-2":"headset,headphones,earphones,smile,客服,售后,耳机,耳麦",flag:"banner,pin,旗帜,旗子,国旗,标记","flag-2":"banner,pin,旗帜,旗子,国旗,标记",global:"earth,union,world,language,地球,联合,世界,全球,语言",honour:"honor,glory,锦旗,荣誉,荣耀,军衔",links:"connection,address,联系,链接,地址",printer:"打印机","printer-cloud":"network,打印机,云打印","record-mail":"voice mail,tape,录音,留言,语音信箱,磁带",reply:"forward,回复全部,回复所有","reply-all":"forward,回复,答复,留言,转发","send-plane":"发送,纸飞机","send-plane-2":"发送,纸飞机",projector:"projection,meeting,投影仪,会议室","projector-2":"projection,meeting,投影仪,会议室,极米",slideshow:"presentation,meeting,PPT,keynote,投影,放映,演示,演讲,幻灯片,会议室","slideshow-2":"presentation,meeting,投影,放映,演示,演讲,幻灯片,会议室","slideshow-3":"presentation,meeting,投影,放映,演示,演讲,视频会议,幻灯片,会议室","slideshow-4":"presentation,meeting,投影,放映,演示,演讲,可视对讲,幻灯片,会议室",presentation:"teaching, training,teaching, training,teaching,training,演讲,老师,培训",window:"browser,program,web,窗口,浏览器,程序,网站","window-2":"browser,program,web,窗口,浏览器,程序,网站",stack:"layers,图层,叠加,堆栈",service:"heart,handshake,cooperation,client,服务,握手,心,合作",registered:"注册,商标",trademark:"注册,商标",advertisement:"ad,广告,推广",copyleft:"著佐权",copyright:"版权","creative-commons":"知识共享","creative-commons-by":"attribution,copyright,版权,知识共享,署名","creative-commons-nc":"noncommercial,copyright,版权,知识共享,非商业用途","creative-commons-nd":"no derivative works,copyright,版权,知识共享,禁止演绎","creative-commons-sa":"share alike,copyright,版权,知识共享,相同方式共享","creative-commons-zero":"cc0,copyright,版权,知识共享",megaphone:"bullhorn,loudspeaker,commercial,campaign,扩音器,喇叭,广告,活动","pass-valid":"passport,护照有效","pass-pending":"passport,护照等待","pass-expired":"passport,护照过期",seo:"搜索引擎优化"},Communication:{"chat-1":"message,reply,comment,消息,聊天,回复,评论","chat-2":"message,reply,comment,消息,聊天,回复,评论","chat-3":"message,reply,comment,消息,聊天,回复,评论","chat-4":"message,reply,comment,消息,聊天,回复,评论",message:"chat,comment,reply,消息,聊天,回复,评论","message-2":"chat,reply,comment,消息,聊天,回复,评论","message-3":"chat,reply,comment,消息,聊天,回复,评论","chat-check":"message,reply,comment,消息,聊天,回复,评论,已阅","chat-delete":"message,comment,消息,聊天,回复,评论,清除,删除","chat-forward":"message,comment,消息,聊天,转发","chat-upload":"message,comment,消息,聊天,上传","chat-download":"message,comment,消息,下载","chat-new":"message,reply,comment,消息,聊天,回复,评论","chat-settings":"message,comment,消息,聊天,回复,评论,设置","chat-smile":"message,reply,comment,消息,聊天,回复,评论","chat-smile-2":"message,reply,comment,消息,聊天,回复,评论","chat-smile-3":"message,reply,comment,消息,聊天,回复,评论","chat-heart":"message,reply,comment,消息,聊天,回复,评论,心,点赞,收藏","chat-off":"message,reply,comment,slash,消息,聊天,回复,评论,禁止,关闭",feedback:"message,comment,消息,聊天,回复,评论,反馈",discuss:"message,reply,comment,消息,聊天,回复,评论,讨论,群聊","question-answer":"message,reply,comment,消息,聊天,回复,评论,讨论,群聊",questionnaire:"message,comment,help,消息,聊天,回复,评论,讨论,调查问卷,帮助","video-chat":"message,comment,消息,视频聊天","chat-voice":"message,comment,消息,语音消息","chat-quote":"message,reply,comment,消息,引用回复","chat-follow-up":"message,reply,comment,消息,+1,跟帖","chat-poll":"message,vote,questionnaire,消息,投票,问卷调查","chat-history":"message,历史消息,消息记录","chat-private":"message,私密消息,密聊",speak:"voice,讲话,声音","emoji-sticker":"表情,贴纸"},Design:{pencil:"edit,铅笔,编辑",edit:"pencil,铅笔,编辑","edit-2":"pencil,铅笔,编辑","ball-pen":"圆珠笔","quill-pen":"羽毛笔,钢笔,编辑","pen-nib":"钢笔,笔尖","ink-bottle":"墨水瓶","mark-pen":"马克笔",markup:"标记,马克","edit-box":"编辑","edit-circle":"编辑",sip:"吸管,取色器",brush:"笔刷,画笔,刷子","brush-2":"刷子","brush-3":"刷子","brush-4":"刷子","paint-brush":"填色,填充,刷子",contrast:"brightness,tonalit,对比度,亮度,色调","contrast-2":"moon,dark,brightness,tonalit,月亮,夜间,对比度,亮度,色调",drop:"water,blur,模糊,水,滴","blur-off":"water,drop,slash,模糊,水,滴,禁止,关闭","contrast-drop":"water,brightness,tonalit,水,对比度,亮度,色调,滴","contrast-drop-2":"water,brightness,tonalit,水,对比度,亮度,色调,滴",compasses:"圆规","compasses-2":"圆规",scissors:"剪刀,裁剪","scissors-cut":"剪刀,裁剪","scissors-2":"剪刀,裁剪,截屏",slice:"knife,切图,切片,刀",eraser:"remove formatting,橡皮,擦除,清除格式",ruler:"尺子","ruler-2":"尺子","pencil-ruler":"design,铅笔,尺子,文具,设计","pencil-ruler-2":"design,铅笔,尺子,文具,设计","t-box":"文字,字体,字号","input-method":"输入法,文字",artboard:"grid,crop,画板,裁切","artboard-2":"画板",crop:"裁切","crop-2":"裁切",screenshot:"capture,屏幕截图,截屏","screenshot-2":"capture,屏幕截图,截屏",focus:"aim,target,goal,焦点,聚焦,目标,靶心","focus-2":"aim,target,goal,bullseye,焦点,聚焦,目标,靶心","focus-3":"aim,target,goal,bullseye,焦点,聚焦,目标,靶心",paint:"填色,填充,油漆桶",palette:"调色盘,色板",pantone:"色板,潘通色,色号",shape:"border,形状,描边,边框","shape-2":"border,形状,描边,边框",magic:"fantasy,magic stick,beautify,wand,魔法棒,美化,幻想,魔幻",anticlockwise:"rotate,left,counterclockwise,左翻转,左旋转","anticlockwise-2":"rotate,left,counterclockwise,左翻转,左旋转",clockwise:"rotate,right,右翻转,右旋转","clockwise-2":"rotate,right,右翻转,右旋转",hammer:"tool,锤子",tools:"settings,screwdriver,configuration,工具,设置","drag-drop":"drag and drop,mouse,拖拽,鼠标",table:"表格","table-alt":"表格",layout:"布局","layout-2":"collage,布局,拼贴画","layout-3":"collage,布局,拼贴画","layout-4":"collage,布局,拼贴画","layout-5":"collage,布局,拼贴画","layout-6":"collage,布局,拼贴画","layout-column":"左右布局","layout-row":"上下布局","layout-top":"顶部布局,顶部导航","layout-right":"右侧布局,右侧导航","layout-bottom":"底部布局,底部导航","layout-left":"左侧布局,左侧导航","layout-top-2":"顶部布局,顶部导航","layout-right-2":"右侧布局,右侧导航","layout-bottom-2":"底部布局,底部导航","layout-left-2":"左侧布局,左侧导航","layout-grid":"卡片布局,网格","layout-masonry":"collage,瀑布流布局,拼贴画",collage:"瀑布流布局,拼贴画",grid:"table,网格,表格"},Development:{bug:"虫子","bug-2":"虫子",code:"代码,编程","code-s":"代码,编程","code-s-slash":"代码,编程","code-box":"代码,编程","terminal-box":"code,command line,prompt,终端,代码,命令行",terminal:"code,command line,prompt,终端,代码,命令行","terminal-window":"code,command line,browser,app,ui,终端,代码,命令行",parentheses:"code,math,小括号",brackets:"code,math,中括号",braces:"code,math,大括号,花括号",command:"apple key,place of interest,modified key,花键,苹果键",cursor:"mouse,pointer,arrow,指针,鼠标","git-commit":"node,onewheel,circle line,dot line,history point,提交","git-pull-request":"合并申请","git-merge":"combine,unite,branch,split,fork,diverge,合并","git-branch":"combine,unite,split,fork,diverge,分支","git-close-pull-request":"取消,关闭","git-repository":"book,bookmark,仓库","git-repository-commits":"book,upload,仓库,提交","git-repository-private":"lock,secure,私密仓库,私人仓库",html5:"html,h5,web",css3:"css,web,styles",javascript:"js,脚本"},Device:{tv:"television,antenna,rabbet ears,电视","tv-2":"monitor,display,screen,television,电视,显示器",computer:"pc,monitor,display,screen,电脑,显示器",mac:"monitor,imac,display,computer,screen,显示器",macbook:"laptop,computer,笔记本",cellphone:"手机,电话",smartphone:"mobile,手机",tablet:"平板电脑",device:"设备",phone:"电话",instance:"box,nft,cvm,实例,盒子,虚拟机",database:"storage,resource,bars,progress,数据库,存储","database-2":"storage,discs,silo,platter,数据库,存储",server:"服务器","hard-drive":"disc,storage,硬盘,存储","hard-drive-2":"disc,server,storage,硬盘,服务器,存储","hard-drive-3":"disc,server,storage,硬盘,服务器,存储",install:"安装",uninstall:"卸载",save:"floppy,保存,软盘","save-2":"floppy,保存,软盘","save-3":"floppy,保存,软盘","sd-card":"内存卡","sd-card-mini":"内存卡","sim-card":"电话卡","sim-card-2":"电话卡","dual-sim-1":"sim card,电话卡,卡槽,双卡双待","dual-sim-2":"sim card,电话卡,卡槽,双卡双待","u-disk":"U盘,优盘",battery:"电池","battery-charge":"电池,充电","battery-low":"电池,低电量","battery-2":"电池","battery-2-charge":"电池,充电","battery-saver":"电池,省电模式","battery-share":"电池共享,共享电量",cast:"mirroring,投屏,无线,广播",airplay:"mirroring,投屏,无线",cpu:"中央处理器",gradienter:"水平仪",keyboard:"input,键盘,输入","keyboard-box":"input,键盘,输入",mouse:"鼠标",sensor:"capacitor,传感器,电容器",router:"wifi,signal tower,radio,station,路由器,信号塔,广播,基站,流量",radar:"satellite receiver,雷达,卫星接收器,锅",gamepad:"consoles,controller,游戏手柄","remote-control":"controller,遥控器","remote-control-2":"controller,遥控器","device-recover":"恢复出厂设置",hotspot:"手机热点","phone-find":"找回手机","phone-lock":"锁定手机","rotate-lock":"锁定旋转屏幕",restart:"reload,refresh,重启","shut-down":"power off,关机",fingerprint:"指纹","fingerprint-2":"指纹",barcode:"scan,扫码,条形码,条码","barcode-box":"scan,扫码,条形码,条码","qr-code":"二维码","qr-scan":"二维码,扫描","qr-scan-2":"二维码,扫描",scan:"扫描","scan-2":"扫描",rss:"feed,subscribe,订阅",gps:"signal,定位,信号","base-station":"wifi,signal tower,router,cast,基站,信号塔,路由器,广播,流量",bluetooth:"wireless,蓝牙,无线","bluetooth-connect":"wireless,蓝牙,连接,无线",wifi:"无线网","wifi-off":"slash,offline,connection-fail,无线网,关闭,断网,链接失败","signal-wifi":"cellular,strength,无线网,信号","signal-wifi-1":"cellular,strength,无线网,信号","signal-wifi-2":"cellular,strength,无线网,信号","signal-wifi-3":"cellular,strength,无线网,信号","signal-wifi-error":"cellular,offline,connection-fail,无线网,断网,链接失败,无信号","signal-wifi-off":"cellular,slash,offline,connection-fail,无线网,关闭,断网,链接失败","wireless-charging":"power,flash,无线充电,闪充","dashboard-2":"仪表盘","dashboard-3":"仪表盘",usb:"优盘"},Document:{file:"new,paper,文件,文档,新建","file-2":"new,paper,文件,文档,新建","file-3":"new,paper,文件,文档,新建","file-4":"new,paper,文件,文档,新建","sticky-note":"new,paper,文件,文档,新建,便签纸,便利贴","sticky-note-2":"new,paper,文件,文档,新建,便签纸,便利贴","file-edit":"文件,文档,编辑",draft:"草稿箱,文件,文档,编辑","file-paper":"文件,文档,纸,谱","file-paper-2":"文件,文档,纸,谱","file-text":"文件,文档,文本","file-list":"清单,列表","file-list-2":"清单,列表","file-list-3":"newspaper,清单,列表,报纸",bill:"账单","file-copy":"duplicate,clone,复制,克隆","file-copy-2":"duplicate,clone,复制,克隆",clipboard:"copy,复制,剪切板",survey:"research,questionnaire,clipboard,checkboxes,form,census,调查,问卷,调研",article:"newspaper,document,publisher,print,page,word,file,publication,文章,报纸",newspaper:"报纸","file-zip":"7z,rar,压缩包","file-mark":"文件,文档,标记",task:"todo,任务,待办",todo:"待办",book:"read,dictionary,booklet,书,阅读,字典,小册子","book-mark":"read,dictionary,booklet,书,阅读,字典,小册子,书签","book-2":"read,dictionary,booklet,书,阅读,字典,小册子","book-3":"read,dictionary,booklet,书,阅读,字典,小册子","book-open":"read,booklet,magazine,书,阅读,小册子,杂志","book-read":"booklet,magazine,书,阅读,小册子,杂志","contacts-book":"通讯录,联系人","contacts-book-2":"通讯录,联系人","contacts-book-upload":"upload,通讯录,联系人,上传",booklet:"notebook,手册,笔记本,小册子","file-code":"config,文件,文档,代码,脚本,配置文件","file-pdf":"文件,文档","file-word":"文档","file-ppt":"文件,文档","file-excel":"文档,表单","file-word-2":"文档","file-ppt-2":"文件,文档","file-excel-2":"文档,表单","file-hwp":"文件,文档,hangul word processor",keynote:"演示文稿,幻灯片,讲演",numbers:"表格",pages:"website,browser,ui,blocks,prototype,文稿","file-search":"文件,文档,搜索","file-add":"page,document,new,plus,add,文件,文档,新建","file-reduce":"page,document,subtract,delete,文件,文档,减","file-settings":"page,document,cog,gear,文件,文档,设置","file-upload":"page,document,文件,文档,上传","file-transfer":"page,document,文件,文档,传输","file-download":"page,document,文件,文档,下载","file-lock":"page,document,文件,文档,锁","file-chart":"page,document,report,文件,文档,柱状图,报表","file-chart-2":"report,文件,文档,饼图,报表","file-music":"文件,文档,音乐","file-gif":"文件,文档,动图","file-forbid":"文件,文档,禁用","file-info":"文件,文档,信息","file-warning":"page,document,paper,!,alert,important,exclamation,文件,文档,警告,提醒","file-unknow":"文件,文档,未知,问号","file-user":"文件,文档,用户","file-shield":"protected,secured,文件,文档,盾牌,保护,安全","file-shield-2":"protected,secured,文件,文档,盾牌,保护,安全","file-damage":"breakdown,broken,corrupt,文件,文档,损坏,破损,破裂","file-history":"record,文件,文档,记录,历史","file-shred":"shredder,shred,destroy,cut,文档,销毁,碎纸机,破裂,粉碎","file-cloud":"network,文件,文档,云",folder:"directory,file,文件夹,目录,文档","folder-2":"directory,file,文件夹,目录,文档","folder-3":"directory,file,文件夹,目录,文档","folder-4":"directory,file,文件夹,目录,文档","folder-5":"directory,file,文件夹,目录,文档",folders:"directory,file,文件夹,目录,文档,批量","folder-add":"directory,file,文件夹,目录,文档,添加","folder-reduce":"directory,file,remove,subtract,文件夹,目录,文档,减","folder-settings":"directory,file,文件夹,目录,文档,设置","folder-upload":"directory,file,文件夹,目录,文档,上传","folder-transfer":"directory,file,文件夹,目录,文档,传输","folder-download":"directory,file,文件夹,目录,文档,下载","folder-lock":"directory,file,文件夹,目录,文档,锁","folder-chart":"report,文件夹,目录,文档,柱状图,报表","folder-chart-2":"report,文件夹,目录,文档,饼图,报表","folder-music":"directory,file,audio,sound,文件夹,目录,文档,音乐","folder-forbid":"directory,file,文件夹,目录,文档,禁用","folder-info":"directory,file,文件夹,目录,文档,信息","folder-warning":"!,alert,important,exclamation,alert,directory,file,文件夹,目录,文档,警告,提醒","folder-unknow":"directory,file,文件夹,目录,文档,未知","folder-user":"directory,file,文件夹,目录,文档,用户","folder-shield":"directory,file,protected,secured,文件夹,目录,文档,保护,盾牌,安全","folder-shield-2":"directory,file,protected,secured,文件夹,目录,文档,保护,盾牌,安全","folder-shared":"directory,file,文件夹,目录,文档,分享","folder-received":"directory,file,文件夹,目录,文档,接收","folder-open":"directory,file,文件夹,目录,文档,打开","folder-keyhole":"directory,encryption,file,文件夹,目录,文档,打开,加密文档","folder-zip":"directory,file,文件夹,目录,文档,打开,压缩","folder-history":"directory,file,record,文件夹,目录,文档,记录,历史",markdown:"arrow,箭头,下"},Editor:{bold:"加粗",italic:"斜体",heading:"标题",text:"字体","font-family":"字体","font-sans-serif":"衬线体","font-sans":"非衬线体","font-mono":"等宽字体","font-color":"文字色","font-size":"字号,字体大小","font-size-2":"字号,字体大小",underline:"下划线",overline:"上划线",emphasis:"着重号","emphasis-cn":"着重号",strikethrough:"remove formatting,del,删除线","strikethrough-2":"remove formatting,del,删除线","format-clear":"remove formatting,清除格式","align-left":"ragged right,左对齐","align-center":"居中对齐","align-right":"ragged left,右对齐","align-justify":"four,lines,ruled,left-right,full width,排列对齐","align-top":"two arrows up,double-up,start,顶部对齐","align-vertically":"centered,middle,balance,垂直对齐","align-bottom":"two arrows down,double-down,end,底部对齐","list-check":"check list,清单列表","list-check-2":"check list,清单列表","list-check-3":"check list,清单列表,问卷,task","list-ordered":"numbered list,有序列表","list-ordered-2":"numbered list,有序列表","list-unordered":"bullet list,无序列表","list-radio":"vote,投票,列表","list-indefinite":"列表","indent-decrease":"indent more,quote,缩进","indent-increase":"indent less,quote,缩进","line-height":"leading,行高","text-spacing":"letter spacing,character spacing,kerning,tracking,字间距","text-wrap":"return,文本换行","attachment-2":"annex,paperclip,附件,曲别针",link:"connection,address,联系,链接,地址","link-unlink":"connection,remove address,去除链接","link-m":"connection,address,联系,链接,地址","link-unlink-m":"connection,remove address,去除链接",separator:"分割线",space:"空格","page-separator":"insert,分页符,插入","code-view":"代码视图","quote-text":"引用","double-quotes-l":"left,quotaion marks,双引号","double-quotes-r":"right,quotaion marks,双引号","single-quotes-l":"left,quotaion marks,单引号","single-quotes-r":"right,quotaion marks,单引号","table-2":"表格",subscript:"角标,下标,脚注","subscript-2":"角标,下标,脚注",superscript:"角标,上标","superscript-2":"角标,上标",paragraph:"¶,pilcrow,段落","text-direction-l":"文本左对齐","text-direction-r":"文本左对齐",functions:"Σ,sum,sigma,功能",omega:"Ω,horseshoe,特殊符号",hashtag:"#,pound,number,井号",asterisk:"*,all,everything,wildcard,星号","question-mark":"?,问号",translate:"translator,翻译","translate-2":"translator,翻译","a-b":"a/b testing,ab testing,split test,either-or,ab测试","english-input":"英文输入法","pinyin-input":"拼音输入法","wubi-input":"五笔输入法","input-cursor-move":"移动输入光标","number-1":"1,一,数字","number-2":"2,二,数字","number-3":"3,三,数字","number-4":"4,四,数字","number-5":"5,五,数字","number-6":"6,六,数字","number-7":"7,七,数字","number-8":"8,八,数字","number-9":"9,九,数字","number-0":"0,零,数字","sort-asc":"ranking,ordering,sorting,ascending,descending,升序排列,排序","sort-desc":"ranking,ordering,降序排列,排序","bring-forward":"arrange,层级,向上一层","send-backward":"arrange,层级,向下一层","bring-to-front":"arrange,层级,移到最前面","send-to-back":"arrange,层级,移到最后面","h-1":"heading,一级标题","h-2":"heading,一级标题","h-3":"heading,一级标题","h-4":"heading,一级标题","h-5":"heading,一级标题","h-6":"heading,一级标题","insert-column-left":"添加列,左侧","insert-column-right":"添加列,右侧","insert-row-top":"添加行,顶部","insert-row-bottom":"添加行,底部","delete-column":"删除列,底部","delete-row":"添加行,底部","merge-cells-horizontal":"合并单元格","merge-cells-vertical":"合并单元格","split-cells-horizontal":"拆分单元格","split-cells-vertical":"拆分单元格","flow-chart":"流程图","mind-map":"mindmap,脑图,思维导图","node-tree":"节点,层级关系图","organization-chart":"组织架构图,局域网","rounded-corner":"圆角",sketching:"signature,手写,手绘,签名",draggable:"move,reorder,拖拽,排序","slash-commands":"","ai-generate":"AI自动生成"},Finance:{wallet:"pocketbook,钱包,卡包","wallet-2":"money clip,钱包,卡包","wallet-3":"money clip,钱包,卡包","bank-card":"credit,purchase,payment,cc,银行卡,信用卡,购买,消费,支付","bank-card-2":"credit,purchase,payment,cc,银行卡,信用卡,购买,消费,支付","secure-payment":"credit,purchase,payment,cc,银行卡,信用卡,购买,消费,支付,安全",refund:"credit card,repayment,cc,银行卡,信用卡还款","refund-2":"credit card,repayment,cc,银行卡,信用卡还款",safe:"vault,secure,保险柜,保险箱","safe-2":"vault,insecure,unlocked,保险柜,保险箱","price-tag":"label,标签,价签","price-tag-2":"label,标签,价签","price-tag-3":"label,标签,价签",ticket:"coupon,票,优惠券,代金券","ticket-2":"coupon,票,优惠券,代金券",coupon:"ticket,票,优惠券,代金券","coupon-2":"ticket,票,优惠券,代金券","coupon-3":"ticket,票,优惠券,代金券","coupon-4":"优惠券,代金券","coupon-5":"优惠券,代金券","shopping-bag":"purse,购物袋,购买,消费,商城","shopping-bag-2":"购物袋,购买,消费,商城","shopping-bag-3":"购物袋,购买,消费,商城","shopping-basket":"购物篮,购买,消费,商城","shopping-basket-2":"购物篮,购买,消费,商城","shopping-cart":"购物车,购买,消费,商城","shopping-cart-2":"购物车,购买,消费,商城",vip:"会员","vip-crown":"king,queen,皇冠,会员,国王,女王,王后","vip-crown-2":"king,queen,皇冠,会员,国王,女王,王后","vip-diamond":"钻石,会员",trophy:"奖品,奖杯,金杯",exchange:"swap,交换,换算,兑换","exchange-box":"swap,交换,换算,兑换",swap:"exchange,交换,换算,兑换","swap-box":"exchange,交换,换算,兑换","exchange-dollar":"swap,transfer,交换,换算,兑换,美元,转账","exchange-cny":"swap,transfer,交换,换算,兑换,人民币,转账","exchange-funds":"swap,transfer,交换,换算,兑换,基金,股票,转账","increase-decrease":"计算器",percent:"百分之,百分比","copper-coin":"currency,payment,铜币,硬币,货币,钱,支付","copper-diamond":"currency,coins,金币,钻石,货币,钱,支付","money-cny-box":"currency,payment,货币,钱,支付,人民币","money-cny-circle":"currency,coins,金币,payment,货币,钱,支付,人民币","money-dollar-box":"currency,payment,货币,钱,支付,美元","money-dollar-circle":"currency,coins,金币,payment,cent,penny,货币,钱,支付,美元,美分,便士","money-euro-box":"currency,payment,货币,钱,支付,欧元","money-euro-circle":"currency,coins,金币,payment,货币,钱,支付,欧元","money-pound-box":"currency,payment,货币,钱,支付,英镑","money-pound-circle":"currency,coins,金币,payment,货币,钱,支付,英镑","bit-coin":"currency,payment,货币,钱,比特币",coin:"金币,硬币",cash:"现金,钞票",coins:"金币,硬币",currency:"cash,payment,货币,钱",funds:"foundation,stock,基金,股票","funds-box":"foundation,stock,基金,股票","red-packet":"红包","water-flash":"水电费",stock:"股票",auction:"hammer,gavel,拍卖,锤子",gift:"present,礼物","gift-2":"present,礼物","hand-coin":"donate,business,捐赠","hand-heart":"help,donate,volunteer,welfare,帮助,爱心,捐赠,志愿者,公益","24-hours":"last,24小时营业",nft:"token",p2p:"trade,点对点,交易","token-swap":"代币,兑换"},"Health & Medical":{heart:"like,love,favorite,心,喜欢,爱,收藏","heart-2":"like,love,favorite,心,喜欢,爱,收藏","heart-3":"like,love,favorite,心,喜欢,爱,收藏","heart-add":"like,love,favorite,心,喜欢,爱,收藏",dislike:"like,love,remove favorite,心,不喜欢,取消收藏",hearts:"romance,爱情,浪漫,心","heart-pulse":"heart rate,脉搏,心率",pulse:"wave,heart rate,脉搏,心率,波",empathize:"care,heart,同理心,关爱,心",nurse:"doctors,医生,护士",dossier:"病例","health-book":"健康手册,医疗手册","first-aid-kit":"case,急救箱",capsule:"medicine, 胶囊,药","medicine-bottle":"药瓶",flask:"testing,experimental,experiment,烧瓶,实验,试验","test-tube":"testing,experimental,experiment,试管,实验,试验",microscope:"testing,experimental,experiment,显微镜,实验,试验","hand-sanitizer":"alcohol,酒精消毒洗手液","mental-health":"心理健康",psychotherapy:"心理治疗",stethoscope:"听诊器",syringe:"注射器",thermometer:"体温计","infrared-thermometer":"红外线体温计,体温枪","surgical-mask":"外科医用口罩",virus:"病毒",lungs:"肺部","rest-time":"close,休息时间,打烊",zzz:"睡觉",brain:"think,大脑,思考"},Logos:{alipay:"zhifubao,支付宝",amazon:"亚马逊",android:"applications,安卓,应用",angularjs:"angular,programing framework","app-store":"applications,苹果应用商店",apple:"苹果",baidu:"du,claw,百度,爪",bard:"google,ai,magic,star,shining,sparkling,twinkle,人工智能,魔法,星星,闪烁",behance:"behance",bilibili:"哔哩哔哩",blender:"3d",bootstrap:"",centos:"linux,system,系统",chrome:"谷歌浏览器",codepen:"代码笔",copilot:"github,飞行员",coreos:"linux,system,系统",dingding:"钉钉",discord:"game,chat",disqus:"comments",douban:"豆瓣",dribbble:"追波",drive:"google drive,谷歌云端硬盘",dropbox:"多宝箱",edge:"microsoft edge,edge浏览器","edge-new":"microsoft-edge,浏览器",evernote:"印象笔记",facebook:"脸书","facebook-circle":"脸书","facebook-box":"脸书",finder:"macintosh,仿达",firefox:"火狐浏览器",flickr:"",flutter:"google",gatsby:"gatsby",github:"github",gitlab:"gitlab",google:"谷歌","google-play":"applications,谷歌应用商店","honor-of-kings":"game,王者荣耀",ie:"internet explorer,浏览器",instagram:"照片墙",invision:"invision","kakao-talk":"kakao talk,chat",line:"连我",linkedin:"领英","linkedin-box":"领英",kick:"","microsoft-loop":"Doc,笔记",mastercard:"bank card,银行卡",mastodon:"mastodon,长毛象",medium:"媒体",messenger:"facebook,脸书,信使",meta:"元",microsoft:"windows,窗户,微软","mini-program":"微信小程序","netease-cloud-music":"netease cloud music,网易云音乐",netflix:"网飞",notion:"notes,doc,笔记,文档",npmjs:"npm,nodejs",openai:"人工智能",openbase:"","open-source":"opensource,开源",opera:"欧朋浏览器",patreon:"donate,money,捐赠,打赏",paypal:"贝宝",pinterest:"拼趣",pixelfed:"photography,pixelfed",playstation:"ps","product-hunt":"product hunt",qq:"penguin,tencent,腾讯,企鹅",reactjs:"react,programing framework,facebook",reddit:"reddit",remixicon:"remix icon,图标",safari:"safari浏览器",skype:"skype",slack:"slack",snapchat:"ghost,色拉布,幽灵",soundcloud:"声云",spectrum:"spectrum",spotify:"music,音乐","stack-overflow":"stack overflow",stackshare:"share,分享,技术栈",steam:"game,store",switch:"nintendo,任天堂",taobao:"淘宝",telegram:"telegram",tiktok:"抖音",trello:"trello",tumblr:"汤博乐",twitch:"twitch",twitter:"推特",ubuntu:"linux,system,系统",unsplash:"photos",vimeo:"视频",visa:"bank card,银行卡",vuejs:"vue,programing framework",wechat:"微信","wechat-2":"微信","wechat-channels":"微信视频号","wechat-pay":"微信支付",weibo:"新浪微博",whatsapp:"瓦次艾普",windows:"microsoft,窗户,微软",wordpress:"blog,博客",xbox:"xbox",xing:"xing",youtube:"优兔,油管",zcool:"zcool,站酷",zhihu:"知乎"},Map:{"map-pin":"location,navigation,地图,坐标,定位,导航,位置","map-pin-2":"location,navigation,地图,坐标,定位,导航,位置","map-pin-3":"location,navigation,地图,坐标,定位,导航,位置","map-pin-4":"location,navigation,地图,坐标,定位,导航,位置","map-pin-5":"location,navigation,地图,坐标,定位,导航,位置","map-pin-add":"location,navigation,地图,坐标,定位,导航,位置,新增,添加","map-pin-range":"location,navigation,地图,坐标,定位,导航,位置,范围","map-pin-time":"location,navigation,地图,坐标,定位,导航,位置,时间","map-pin-user":"location,navigation,地图,坐标,定位,导航,位置,用户","pin-distance":"坐标,距离",pushpin:"图钉",unpin:"图钉,取消固定","pushpin-2":"图钉",compass:"navigation,safari,direction,discover,指南针,导航,方向,发现,探索","compass-2":"navigation,direction,discover,指南针,导航,方向,发现,探索","compass-3":"navigation,safari,direction,discover,指南针,导航,方向,发现,探索","compass-4":"navigation,direction,discover,指南针,导航,方向,发现,探索","compass-discover":"navigation,direction,指南针,导航,方向,发现,探索",anchor:"锚","china-railway":"中铁,铁路,火车","space-ship":"太空飞船",rocket:"火箭","rocket-2":"space ship,火箭,太空飞船",map:"navigation,travel,地图,导航,旅行","map-2":"location,navigation,travel,地图,定位,导航,旅行","treasure-map":"thriller,adventure,地图,藏宝图","road-map":"navigation,travel,地图,导航,旅行",earth:"global,union,world,language,地球,全球,联合,世界,语言",globe:"earth,地球仪",planet:"space,discover,星球,宇宙,探索,发现",parking:"停车场","parking-box":"停车场",route:"path,路线",guide:"path,指引,路线","gas-station":"加气站,加油站","charging-pile":"充电桩","charging-pile-2":"充电桩",car:"汽车","car-washing":"汽车,洗车",roadster:"car,汽车,跑车",taxi:"car,出租车,汽车","taxi-wifi":"car,出租车,汽车","police-car":"汽车,警车",bus:"大巴,巴士","bus-2":"大巴,巴士","bus-wifi":"大巴,巴士",truck:"van,delivery,卡车,货车,运输",train:"火车","train-wifi":"火车",subway:"地铁","subway-wifi":"地铁","flight-takeoff":"airplane,plane,origin,起飞,出发,始发,起点,飞机","flight-land":"airplane,plane,destination,着陆,到达,抵达,终点,飞机",plane:"fight,飞机,航班",sailboat:"帆船",ship:"轮船,航海,海运","ship-2":"轮船",bike:"自行车","e-bike":"take out,takeaway,电动车,外卖","e-bike-2":"take out,takeaway,电动车,外卖",takeaway:"take out,takeaway,电动车,外卖",motorbike:"摩托车",caravan:"房车",walk:"步行",run:"奔跑,跑步",riding:"bike,骑行,自行车",barricade:"路障",footprint:"脚印,足迹","traffic-light":"交通,信号灯","signal-tower":"base station,antenna,信号塔,基站,天线",restaurant:"餐厅,饭店","restaurant-2":"餐厅,饭店",cup:"tea,coffee,杯子,咖啡,茶",goblet:"cup,wine glass,高脚杯,酒杯","hotel-bed":"酒店,床",navigation:"gps,导航",oil:"汽油,机油",direction:"right,方向,右转",steering:"drive,方向盘,驾车","steering-2":"drive,方向盘,驾车",lifebuoy:"life ring,救生圈",passport:"passports,护照",suitcase:"travel,旅行,行李箱","suitcase-2":"travel,旅行,行李箱,拉杆箱","suitcase-3":"travel,旅行,boarding case,行李箱,拉杆箱,登机箱","luggage-deposit":"consignment,行李箱,行李寄存,托运","luggage-cart":"行李车"},Media:{image:"picture,photo,图片,照片","image-2":"picture,photo,图片,照片","image-add":"picture,photo,图片,照片,添加","image-edit":"picture,photo,图片,照片,编辑",landscape:"picture,image,photo,图片,照片",gallery:"picture,image,图片,相册","gallery-upload":"picture,image,图片,相册,上传",video:"视频",movie:"film,video,电影,硬盘,视频","movie-2":"film,video,电影,硬盘,视频",film:"movie,video,影片,电影,视频",clapperboard:"movie,film,场记板,电影",vidicon:"video,camera,摄像机,摄影机,视频","vidicon-2":"camera,摄像机,摄影机",live:"video,camera,摄像机,摄影机,视频,直播","video-add":"camera,摄像机,摄影机,视频,添加","video-upload":"camera,摄像机,摄影机,视频,上传","video-download":"camera,摄像机,摄影机,视频,下载",dv:"vidicon,camera,摄像机,摄影机",camera:"photo,照相机,拍照,照片","camera-off":"photo,slash,照相机,拍照,照片,禁止,关闭","camera-2":"photo,照相机,拍照,照片","camera-3":"photo,照相机,拍照,照片","camera-lens":"aperture,photo,照相机,拍照,照片,朋友圈","camera-switch":"照相机,拍照,翻转",polaroid:"camera,相机,宝丽来","polaroid-2":"camera,相机,宝丽来","phone-camera":"手机相机,手机摄像头",webcam:"摄像头",mv:"music video,音乐",music:"音乐","music-2":"音乐",disc:"music,album,音乐,唱片",album:"music,唱片,音乐",dvd:"cd,dvd,record,光盘,刻录",headphone:"music,headset,耳机,音乐",radio:"收音机,电台","radio-2":"收音机,电台",tape:"录音,磁带",mic:"record,voice,话筒,语音,录音,声音","mic-2":"record,voice,话筒,语音,录音,声音","mic-off":"record,voice,slash,关闭话筒,关闭语音,录音,关闭声音,静音,禁止","volume-down":"trumpet,sound,speaker,音量低,喇叭,声音,扬声器","volume-mute":"trumpet,sound,off,音量低,喇叭,声音,静音","volume-up":"trumpet,sound,speaker,音量高,喇叭,声音,扬声器","volume-vibrate":"trumpet,sound,speaker,喇叭,声音,扬声器,震动模式","volume-off-vibrate":"trumpet,sound,speaker,静音,喇叭,声音,扬声器,静音模式",speaker:"音响","speaker-2":"音响","speaker-3":"音响","surround-sound":"环绕立体声",broadcast:"广播",notification:"bell,alarm,通知,铃铛,提醒","notification-2":"bell,alarm,通知,铃铛,提醒","notification-3":"bell,alarm,通知,铃铛,提醒","notification-4":"bell,alarm,通知,铃铛,提醒","notification-off":"bell,alarm,silent,slash,通知,铃铛,提醒,免打扰,静音,关闭,禁止","play-circle":"start,播放,开始","pause-circle":"暂停","record-circle":"录音","stop-circle":"停止",eject:"推出",play:"start,播放,开始",pause:"暂停",stop:"停止",rewind:"fast,快退",speed:"fast,快进","skip-back":"上一曲","skip-forward":"下一曲","play-mini":"播放","pause-mini":"暂停","stop-mini":"停止","rewind-mini":"fast,快退","speed-mini":"fast,快进","skip-back-mini":"上一曲","skip-forward-mini":"下一曲","replay-5":"playback,重播,回放","forward-5":"skip,快进,快放,跳过","replay-10":"playback,重播,回放","forward-10":"skip,快进,快放,跳过","replay-15":"playback,重播,回放","forward-15":"skip,快进,快放,跳过","replay-30":"playback,重播,回放","forward-30":"skip,快进,快放,跳过",memories:"回忆",repeat:"swap,交换,循环播放","repeat-2":"swap,交换,循环播放","repeat-one":"单曲循环","order-play":"顺序播放",shuffle:"随机播放","play-list":"播放列表","play-list-2":"播放列表","play-list-add":"列表,添加",fullscreen:"maximize,全屏,最大化","fullscreen-exit":"minimize,退出全屏,最小化",equalizer:"sliders,controls,settings,filter,均衡器,控制器,设置,筛选","sound-module":"sliders,controls,settings,filter,均衡器,控制器,设置,筛选",rhythm:"节奏,韵律",voiceprint:"声纹","speed-up":"dashboard,快,加速,仪表盘","slow-down":"dashboard,慢,减速,仪表盘",hq:"high quality,高质量,高品质",hd:"high definition,高清晰度","4k":"high definition,high quality,高清晰度,高品质,超清","closed-captioning":"隐藏字幕","aspect-ratio":"宽高比,比例","picture-in-picture":"画中画,小窗","picture-in-picture-2":"画中画,小窗","picture-in-picture-exit":"退出画中画,退出小窗"},System:{apps:"应用","apps-2":"应用",function:"layout,功能,应用,卡片布局",dashboard:"仪表盘",menu:"navigation,hamburger,导航,菜单,汉堡包","menu-2":"navigation,hamburger,导航,菜单,汉堡包","menu-3":"navigation,hamburger,导航,菜单,汉堡包","menu-4":"navigation,hamburger,导航,菜单,汉堡包","menu-5":"navigation,hamburger,导航,菜单,汉堡包","menu-add":"navigation,hamburger,导航,菜单,汉堡包,添加","menu-fold":"navigation,hamburger,导航,菜单,汉堡包,收起,展开","menu-unfold":"navigation,hamburger,导航,菜单,汉堡包,收起,展开",more:"ellipsis,更多,省略","more-2":"ellipsis,更多,省略",star:"favorite,like,mark,星星,星标,喜欢","star-s":"favorite,like,mark,星星,星标,喜欢,半星","star-half":"favorite,like,mark,星星,星标,喜欢","star-half-s":"favorite,like,mark,星星,星标,喜欢,半星",settings:"edit,gear,preferences,偏好设置,编辑,齿轮","settings-2":"edit,gear,preferences,偏好设置,编辑,齿轮","settings-3":"edit,gear,preferences,偏好设置,编辑,齿轮","settings-4":"edit,gear,preferences,偏好设置,编辑,齿轮","settings-5":"edit,gear,preferences,偏好设置,编辑,齿轮","settings-6":"edit,gear,preferences,偏好设置,编辑,齿轮","list-settings":"列表,设置",forbid:"prohibited,slash,ban,禁止,禁用","forbid-2":"prohibited,slash,ban,禁止,禁用",prohibited:"forbid,lash,ban,禁止,禁用",information:"信息","error-warning":"!,alert,important,alert,exclamation,警告,错误",question:"help,问号,帮助",alert:"提醒,警告",spam:"alert,垃圾邮件,警告","spam-2":"alert,垃圾邮件,警告","spam-3":"alert,垃圾邮件,警告","checkbox-blank":"复选框,空",checkbox:"复选框","checkbox-indeterminate":"复选框","add-box":"plus,new,复选框,添加,加号,新增","checkbox-blank-circle":"复选框,空","checkbox-circle":"复选框","indeterminate-circle":"slash,ban,复选框,禁","add-circle":"plus,new,复选框,添加,加号,新增","close-circle":"cancel,remove,delete,empty,x,关闭,取消,移除,删除,清空","radio-button":"单选框","checkbox-multiple-blank":"复选框,空","checkbox-multiple":"复选框,空",check:"对勾","check-double":"read,done,double-tick,双对勾,已读",close:"cancel,remove,delete,empty,x,关闭,取消,移除,删除,清空",add:"plus,new,添加,新增,加号",subtract:"减",divide:"除以",equal:"sum,result,等于",download:"receive,下载,接收",upload:"send,上传,发送","download-2":"下载","upload-2":"上传","download-cloud":"下载,云","download-cloud-2":"下载,云","upload-cloud":"上传,云","upload-cloud-2":"上传,云","login-box":"sign in,登录","logout-box":"sign out,登出,注销","logout-box-r":"sign out,登出,注销","login-circle":"sign in,登录","logout-circle":"sign out,登出,注销","logout-circle-r":"sign out,登出,注销",refresh:"reload,repeat,replace,reset,restart,synchronization,spinner,loader,update,刷新,重新加载,重复,重置,替换,重启,同步,更新",shield:"safety,protect,盾牌,卫士,安全,防御","shield-cross":"safety,protect,盾牌,卫士,安全,防御,闪电","shield-flash":"safety,protect,盾牌,卫士,安全,防御","shield-star":"safety,protect,盾牌,卫士,安全,防御,星星","shield-user":"safety,protect,user protected,guarantor,盾牌,卫士,安全,防御,用户","shield-keyhole":"safety,protect,guarantor,盾牌,卫士,安全,防御,钥匙孔","shield-check":"safety,protect,盾牌,卫士,安全,防御","delete-back":"backspace,删除,退格","delete-back-2":"backspace,删除,退格","delete-bin":"trash,remove,ash-bin,garbage,dustbin,uninstall,卸载,删除,垃圾桶","delete-bin-2":"trash,remove,ash-bin,garbage,dustbin,uninstall,卸载,删除,垃圾桶","delete-bin-3":"trash,remove,ash-bin,garbage,dustbin,uninstall,卸载,删除,垃圾桶","delete-bin-4":"trash,remove,ash-bin,garbage,dustbin,uninstall,卸载,删除,垃圾桶","delete-bin-5":"trash,remove,ash-bin,garbage,dustbin,uninstall,卸载,删除,垃圾桶","delete-bin-6":"trash,remove,ash-bin,garbage,dustbin,uninstall,卸载,删除,垃圾桶","delete-bin-7":"trash,remove,ash-bin,garbage,dustbin,uninstall,卸载,删除,垃圾桶",lock:"security,password,锁子,安全,密码","lock-2":"security,password,锁子,安全,密码","lock-password":"security,锁子,安全,密码","lock-unlock":"security,password,锁子,安全,密码",eye:"watch,view,眼睛,查看","eye-off":"slash,眼睛,不可见,关闭,禁止","eye-2":"watch,view,眼睛,查看","eye-close":"x,闭眼",search:"搜索,放大镜","search-2":"搜索,放大镜","search-eye":"搜索,放大镜,眼睛","zoom-in":"放大,放大镜","zoom-out":"缩小,放大镜","find-replace":"查找,搜索,替换",share:"分享,转发","share-box":"分享,转发","share-circle":"分享,转发","share-forward":"分享,转发","share-forward-2":"分享,转发","share-forward-box":"分享,转发","side-bar":"侧边栏",time:"clock,时间,时钟,钟表",timer:"chronograph,stopwatch,秒表,计时器","timer-2":"chronograph,stopwatch,秒表,计时器","timer-flash":"chronograph,stopwatch,秒表,计时器,闪电",alarm:"闹钟",history:"record,recent,time machine,历史记录,最近","hourglass-2":"time,history,recent,duration,沙漏,时间,历史记录,最近",hourglass:"time,history,recent,duration,沙漏,时间,历史记录,最近","thumb-up":"like,good,喜欢,好","thumb-down":"dislike,bad,不喜欢,不好","alarm-warning":"alert,report,police light,告警,举报,警灯","notification-badge":"red dot,通知,小红点",toggle:"switch,开关,触发器",filter:"filtration,筛选,过滤","filter-2":"filtration,筛选,过滤","filter-3":"filtration,筛选,过滤","filter-off":"filtration,clear-filter,筛选,过滤",loader:"loader,spinner,ajax,waiting,delay,加载中,载入中,正在加载","loader-2":"loader,spinner,ajax,waiting,delay,加载中,载入中,正在加载","loader-3":"loader,spinner,ajax,waiting,delay,加载中,载入中,正在加载","loader-4":"loader,spinner,ajax,waiting,delay,加载中,载入中,正在加载","loader-5":"loader,spinner,ajax,waiting,delay,加载中,载入中,正在加载","external-link":"外链","loop-left":"reload,repeat,replace,reset,restart,synchronization,spinner,loader,update,刷新,重新加载,重复,重置,替换,重启,同步,更新","loop-right":"reload,repeat,replace,reset,restart,synchronization,spinner,loader,update,刷新,重新加载,重复,重置,替换,重启,同步,更新"},"User & Faces":{user:"用户,person,people","user-2":"用户,person,people","user-3":"用户,person,people","user-4":"用户,person,people","user-5":"用户,person,people","user-6":"用户,person,people","user-smile":"用户,微笑,person,people","account-box":"用户,账户,person,people","account-circle":"用户,账户,person,people","account-pin-box":"用户,账户,person,people","account-pin-circle":"用户,账户,person,people","user-add":"用户,添加,新增,person,people","user-follow":"关注,person,people","user-unfollow":"用户,取消关注,person,people","user-shared":"transfer,用户,我分享的,发送,person,people","user-shared-2":"transfer,用户,我分享的,发送,person,people","user-received":"用户,我接收的,收取,person,people","user-received-2":"用户,我接收的,收取,person,people","user-location":"用户,定位,person,people","user-search":"用户,查找,person,people","user-settings":"admin,用户,设置,管理员,person,people","user-star":"用户,关注,person,people","user-heart":"用户,关注,person,people",admin:"admin,用户,管理员,person,people",contacts:"联系人",group:"team,团队,群组,person,people","group-2":"team,团队,群组,person,people",team:"团队,小组,群主,person,people","user-voice":"用户,录音,演讲",emotion:"表情,笑脸","emotion-2":"表情,笑脸","emotion-happy":"表情,开心","emotion-normal":"表情,一般","emotion-unhappy":"表情,不开心","emotion-laugh":"comedy,happy,表情,大笑,笑脸,开心,喜剧","emotion-sad":"drama,tears,悲剧,哭泣,泪",skull:"ghost,骷髅,鬼怪","skull-2":"ghost,horror,thriller,骷髅,鬼怪,恐惧,恐怖",men:"gender,man,male,男人,男性",women:"gender,woman,female,女人,女性",travesti:"女人,女性",genderless:"女人,女性","open-arm":"张开双臂","body-scan":"gesture recognition,body,扫描身体,体态识别,动作之别,手势识别",parent:"patriarch,父母,亲子,家长",robot:"mechanic,机器人",aliens:"science fiction,ET,外星人,科幻小说","bear-smile":"cartoon,anime,cartoon,小熊,微笑,儿童,动画片,卡通,动漫",mickey:"cartoon,disney,迪士尼,米老鼠,微笑,儿童,动画片",criminal:"horror,thriller,罪犯,犯罪,恐怖",ghost:"horror,thriller,鬼怪,恐怖,恐惧","ghost-2":"horror,鬼怪,恐怖,恐惧","ghost-smile":"鬼怪,笑","star-smile":"animation,动画,微笑,星星",spy:"incognito mode,detective,secret,间谍,侦探,无痕模式,隐私模式"},Weather:{sun:"light mode,sunny,太阳,白天模式,晴天",moon:"dark mode,night,月亮,夜间模式,月牙",flashlight:"闪电",cloudy:"多云","cloudy-2":"多云",mist:"雾气,雾霾",foggy:"大雾","cloud-windy":"风",windy:"大风,刮风",rainy:"下雨,雨天",drizzle:"小雨",showers:"中雨","heavy-showers":"大雨",thunderstorms:"雷暴,雷阵雨",hail:"冰雹",snowy:"下雪,雪天","sun-cloudy":"晴转多云","moon-cloudy":"夜间多云",tornado:"龙卷风",typhoon:"cyclone,tornado,龙卷风,旋风,台风",haze:"阴霾,薄雾","haze-2":"阴霾,薄雾","sun-foggy":"薄雾","moon-foggy":"薄雾","moon-clear":"夜间模式,夜间无云","temp-hot":"temperature,温度,高温,热","temp-cold":"temperature,温度,低温,冷",celsius:"temperature,温度,摄氏度",fahrenheit:"temperature,温度,华氏度",fire:"hot,火,热门",blaze:"火灾",earthquake:"地震",flood:"洪水",meteor:"流星,陨石",rainbow:"彩虹",shining:"star,magic,ai,twinkle,星星,魔法,闪烁","shining-2":"star,magic,ai,twinkle,星星,魔法,闪烁",sparkling:"shining,star,magic,ai,twinkle,星星,魔法,闪烁","sparkling-2":"shining,star,magic,ai,twinkle,星星,魔法,闪烁"},Others:{basketball:"sports,运动,篮球",bell:"cartoon,anime,doraemon,铃铛,哆啦A梦,卡通,动漫",billiards:"sports,运动,台球,8",boxing:"sports,运动,拳击",cake:"anniversary,蛋糕","cake-2":"anniversary,蛋糕","cake-3":"蛋糕","door-lock":"门锁","door-lock-box":"门锁",football:"sports,运动,足球",game:"pac man,游戏,吃豆人",handbag:"fashion,时尚,手提包,女包",key:"password,钥匙,密码","key-2":"password,钥匙,密码",knife:"刀","knife-blood":"crime,刀,犯罪,血,杀人",lightbulb:"energy,creativity,灯泡,能源","lightbulb-flash":"energy,creativity,灯泡,能源,闪电",outlet:"插座","outlet-2":"插座",plug:"二脚插头","plug-2":"三脚插头","ping-pong":"sports,table tennis,运动,乒乓球",reserved:"已预定",shirt:"clothes,衬衫,衣服",sword:"war,刀剑,战争,战斗,玄幻","t-shirt":"skin,theme,T恤,皮肤,主题","t-shirt-2":"skin,theme,T恤,皮肤,主题","t-shirt-air":"dry,T恤,风干,烘干",umbrella:"protect,雨伞,保护","character-recognition":"ocr,文字识别","voice-recognition":"asr,语音识别",leaf:"energy,ecology,树叶,节能,环保,语音识别",plant:"植物",seedling:"树苗,植物",recycle:"recyclable,可回收","scales-2":"厨房称",scales:"balance,称,天平,天秤","scales-3":"balance,称,天平,天秤",fridge:"refrigerator,电冰箱",wheelchair:"accessbility,轮椅,可访问性,辅助功能",cactus:"desertr,仙人掌,沙漠",door:"门","door-open":"开门","door-closed":"关门","graduation-cap":"cap,school,student,毕业,帽子,学校,学生","box-1":"instance,盒子,实例","box-2":"instance,盒子,实例","box-3":"instance,3d,盒子,实例,立体",candle:"蜡烛",cross:"tomb,十字架,坟墓"}},iconData="",simpleIcons=["Editor"];Object.keys(icons).forEach(function(e){"Editor"===e?(iconData=iconData+'

    '+e+'

    Use <i class="ri-bold"></i>

    ',Object.keys(icons[e]).forEach(function(e){iconData+='
    ri-'+e+"
    "})):(iconData=iconData+'

    '+e+'

    Use <i class="ri-home-line"></i> or <i class="ri-home-fill"></i>

    ',Object.keys(icons[e]).forEach(function(e){iconData+='
    ri-'+e+'-line
    ri-'+e+"-fill
    "})),iconData+="
    "}),document.getElementById("icons")&&(document.getElementById("icons").innerHTML=iconData); \ No newline at end of file diff --git a/pxy_dashboard/static/dashboard/js/pages/demo.tasks.js b/pxy_dashboard/static/dashboard/js/pages/demo.tasks.js new file mode 100644 index 0000000..cd6a690 --- /dev/null +++ b/pxy_dashboard/static/dashboard/js/pages/demo.tasks.js @@ -0,0 +1 @@ +var quill=new Quill("#bubble-editor",{theme:"bubble"}); \ No newline at end of file diff --git a/pxy_dashboard/static/dashboard/js/pages/demo.toastr.js b/pxy_dashboard/static/dashboard/js/pages/demo.toastr.js new file mode 100644 index 0000000..8b05a09 --- /dev/null +++ b/pxy_dashboard/static/dashboard/js/pages/demo.toastr.js @@ -0,0 +1 @@ +!function(c){"use strict";function t(){}t.prototype.send=function(t,o,i,e,n,a,s,r){t={heading:t,text:o,position:i,loaderBg:e,icon:n,hideAfter:a=a||3e3,stack:s=s||1};t.showHideTransition=r||"fade",c.toast().reset("all"),c.toast(t)},c.NotificationApp=new t,c.NotificationApp.Constructor=t,c("#toastr-one").on("click",function(t){c.NotificationApp.send("Heads up!","This alert needs your attention, but it is not super important.","top-right","rgba(0,0,0,0.2)","info")}),c("#toastr-two").on("click",function(t){c.NotificationApp.send("Heads up!","Check below fields please.","top-center","rgba(0,0,0,0.2)","warning")}),c("#toastr-three").on("click",function(t){c.NotificationApp.send("Well Done!","You successfully read this important alert message","bottom-right","rgba(0,0,0,0.2)","success")}),c("#toastr-four").on("click",function(t){c.NotificationApp.send("Oh snap!","Change a few things up and try submitting again.","bottom-left","rgba(0,0,0,0.2)","error")}),c("#toastr-five").on("click",function(t){c.NotificationApp.send("How to contribute?",["Fork the repository","Improve/extend the functionality","Create a pull request"],"top-right","rgba(0,0,0,0.2)","info")}),c("#toastr-six").on("click",function(t){c.NotificationApp.send("Can I add icons?","Yes! check this
    update.","top-right","rgba(0,0,0,0.2)","info",!1)}),c("#toastr-seven").on("click",function(t){c.NotificationApp.send("","Set the `hideAfter` property to false and the toast will become sticky.","top-right","rgba(0,0,0,0.2)","success")}),c("#toastr-eight").on("click",function(t){c.NotificationApp.send("","Set the `showHideTransition` property to fade|plain|slide to achieve different transitions.","top-right","rgba(0,0,0,0.2)","info",3e3,1,"fade")})}(window.jQuery); \ No newline at end of file diff --git a/pxy_dashboard/static/dashboard/js/pages/demo.typehead.js b/pxy_dashboard/static/dashboard/js/pages/demo.typehead.js new file mode 100644 index 0000000..e5a350e --- /dev/null +++ b/pxy_dashboard/static/dashboard/js/pages/demo.typehead.js @@ -0,0 +1 @@ +$(document).ready(function(){var o,e=["Alabama","Alaska","Arizona","Arkansas","California","Colorado","Connecticut","Delaware","Florida","Georgia","Hawaii","Idaho","Illinois","Indiana","Iowa","Kansas","Kentucky","Louisiana","Maine","Maryland","Massachusetts","Michigan","Minnesota","Mississippi","Missouri","Montana","Nebraska","Nevada","New Hampshire","New Jersey","New Mexico","New York","North Carolina","North Dakota","Ohio","Oklahoma","Oregon","Pennsylvania","Rhode Island","South Carolina","South Dakota","Tennessee","Texas","Utah","Vermont","Virginia","Washington","West Virginia","Wisconsin","Wyoming"],e=($("#the-basics").typeahead({hint:!0,highlight:!0,minLength:1},{name:"states",source:(o=e,function(e,a){var t=[];substrRegex=new RegExp(e,"i"),$.each(o,function(e,a){substrRegex.test(a)&&t.push(a)}),a(t)})}),new Bloodhound({datumTokenizer:Bloodhound.tokenizers.whitespace,queryTokenizer:Bloodhound.tokenizers.whitespace,local:e})),e=($("#bloodhound").typeahead({hint:!0,highlight:!0,minLength:1},{name:"states",source:e}),new Bloodhound({datumTokenizer:Bloodhound.tokenizers.whitespace,queryTokenizer:Bloodhound.tokenizers.whitespace,prefetch:"https://raw.githubusercontent.com/twitter/typeahead.js/gh-pages/data/countries.json"})),e=($("#prefetch").typeahead(null,{name:"countries",source:e}),new Bloodhound({datumTokenizer:Bloodhound.tokenizers.obj.whitespace("value"),queryTokenizer:Bloodhound.tokenizers.whitespace,prefetch:"https://raw.githubusercontent.com/twitter/typeahead.js/gh-pages/data/films/post_1960.json",remote:{url:"../plugins/typeahead/data/%QUERY.json",wildcard:"%QUERY"}})),t=($("#remote").typeahead(null,{name:"best-pictures",display:"value",source:e}),new Bloodhound({datumTokenizer:Bloodhound.tokenizers.obj.whitespace("team"),queryTokenizer:Bloodhound.tokenizers.whitespace,identify:function(e){return e.team},prefetch:"https://raw.githubusercontent.com/twitter/typeahead.js/gh-pages/data/nfl.json"}));$("#default-suggestions").typeahead({minLength:0,highlight:!0},{name:"nfl-teams",display:"team",source:function(e,a){""===e?a(t.get("Detroit Lions","Green Bay Packers","Chicago Bears")):t.search(e,a)}}),$("#custom-templates").typeahead(null,{name:"best-pictures",display:"value",source:e,templates:{empty:['
    ',"Unable to find any Best Picture winners that match the current query","
    "].join("\n"),suggestion:Handlebars.compile("
    {{value}} - {{year}}
    ")}});var e=new Bloodhound({datumTokenizer:Bloodhound.tokenizers.obj.whitespace("team"),queryTokenizer:Bloodhound.tokenizers.whitespace,prefetch:"https://raw.githubusercontent.com/twitter/typeahead.js/gh-pages/data/nba.json"}),a=new Bloodhound({datumTokenizer:Bloodhound.tokenizers.obj.whitespace("team"),queryTokenizer:Bloodhound.tokenizers.whitespace,prefetch:"https://raw.githubusercontent.com/twitter/typeahead.js/gh-pages/data/nhl.json"});$("#multiple-datasets").typeahead({highlight:!0},{name:"nba-teams",display:"team",source:e,templates:{header:'
    NBA Teams
    '}},{name:"nhl-teams",display:"team",source:a,templates:{header:'
    NHL Teams
    '}})}); \ No newline at end of file diff --git a/pxy_dashboard/static/dashboard/js/pages/demo.vector-maps.js b/pxy_dashboard/static/dashboard/js/pages/demo.vector-maps.js new file mode 100644 index 0000000..db71d2f --- /dev/null +++ b/pxy_dashboard/static/dashboard/js/pages/demo.vector-maps.js @@ -0,0 +1 @@ +!function(a){"use strict";function n(){}n.prototype.init=function(){a("#world-map-markers").vectorMap({map:"world_mill_en",normalizeFunction:"polynomial",hoverOpacity:.7,hoverColor:!1,regionStyle:{initial:{fill:"rgba(145,166,189,.25)"}},markerStyle:{initial:{r:9,fill:"#4254ba","fill-opacity":.9,stroke:"#fff","stroke-width":7,"stroke-opacity":.4},hover:{stroke:"#fff","fill-opacity":1,"stroke-width":1.5}},backgroundColor:"transparent",markers:[{latLng:[41.9,12.45],name:"Vatican City"},{latLng:[43.73,7.41],name:"Monaco"},{latLng:[-.52,166.93],name:"Nauru"},{latLng:[-8.51,179.21],name:"Tuvalu"},{latLng:[43.93,12.46],name:"San Marino"},{latLng:[47.14,9.52],name:"Liechtenstein"},{latLng:[7.11,171.06],name:"Marshall Islands"},{latLng:[17.3,-62.73],name:"Saint Kitts and Nevis"},{latLng:[3.2,73.22],name:"Maldives"},{latLng:[35.88,14.5],name:"Malta"},{latLng:[12.05,-61.75],name:"Grenada"},{latLng:[13.16,-61.23],name:"Saint Vincent and the Grenadines"},{latLng:[13.16,-59.55],name:"Barbados"},{latLng:[17.11,-61.85],name:"Antigua and Barbuda"},{latLng:[-4.61,55.45],name:"Seychelles"},{latLng:[7.35,134.46],name:"Palau"},{latLng:[42.5,1.51],name:"Andorra"},{latLng:[14.01,-60.98],name:"Saint Lucia"},{latLng:[6.91,158.18],name:"Federated States of Micronesia"},{latLng:[1.3,103.8],name:"Singapore"},{latLng:[.33,6.73],name:"São Tomé and Príncipe"}]}),a("#usa-vectormap").vectorMap({map:"us_merc_en",backgroundColor:"transparent",regionStyle:{initial:{fill:"#4254ba"}}}),a("#india-vectormap").vectorMap({map:"in_mill_en",backgroundColor:"transparent",regionStyle:{initial:{fill:"#6c757d"}}}),a("#australia-vectormap").vectorMap({map:"au_mill_en",backgroundColor:"transparent",regionStyle:{initial:{fill:"#17a497"}}}),a("#chicago-vectormap").vectorMap({map:"us-il-chicago_mill_en",backgroundColor:"transparent",regionStyle:{initial:{fill:"#39afd1"}}}),a("#uk-vectormap").vectorMap({map:"uk_mill_en",backgroundColor:"transparent",regionStyle:{initial:{fill:"#fa5c7c"}}}),a("#canada-vectormap").vectorMap({map:"ca_lcc_en",backgroundColor:"transparent",regionStyle:{initial:{fill:"#ffbc00"}}}),a("#europe-vectormap").vectorMap({map:"europe_mill_en",backgroundColor:"transparent",regionStyle:{initial:{fill:"#4254ba"}}}),a("#france-vectormap").vectorMap({map:"fr_merc_en",backgroundColor:"transparent",regionStyle:{initial:{fill:"#17a497"}}}),a("#spain-vectormap").vectorMap({map:"es_merc",backgroundColor:"transparent",regionStyle:{initial:{fill:"#39afd1"}}}),a("#spain2-vectormap").vectorMap({map:"es_mill",backgroundColor:"transparent",regionStyle:{initial:{fill:"#6c757d"}}})},a.VectorMap=new n,a.VectorMap.Constructor=n}(window.jQuery),function(){"use strict";window.jQuery.VectorMap.init()}(); \ No newline at end of file diff --git a/pxy_dashboard/static/dashboard/js/pages/demo.widgets.js b/pxy_dashboard/static/dashboard/js/pages/demo.widgets.js new file mode 100644 index 0000000..d060892 --- /dev/null +++ b/pxy_dashboard/static/dashboard/js/pages/demo.widgets.js @@ -0,0 +1 @@ +Apex.grid={padding:{right:0,left:0}},Apex.dataLabels={enabled:!1};var colors=["#4254ba"],dataColors=$("#campaign-sent-chart").data("colors"),options1={chart:{type:"bar",height:60,sparkline:{enabled:!0}},plotOptions:{bar:{columnWidth:"60%"}},colors:colors=dataColors?dataColors.split(","):colors,series:[{data:[25,66,41,89,63,25,44,12,36,9,54]}],labels:[1,2,3,4,5,6,7,8,9,10,11],xaxis:{crosshairs:{width:1}},tooltip:{fixed:{enabled:!1},x:{show:!1},y:{title:{formatter:function(o){return""}}},marker:{show:!1}}},colors=(new ApexCharts(document.querySelector("#campaign-sent-chart"),options1).render(),["#4254ba"]),dataColors=$("#new-leads-chart").data("colors"),options2={chart:{type:"line",height:60,sparkline:{enabled:!0}},series:[{data:[25,66,41,89,63,25,44,12,36,9,54]}],stroke:{width:2,curve:"smooth"},markers:{size:0},colors:colors=dataColors?dataColors.split(","):colors,tooltip:{fixed:{enabled:!1},x:{show:!1},y:{title:{formatter:function(o){return""}}},marker:{show:!1}}},colors=(new ApexCharts(document.querySelector("#new-leads-chart"),options2).render(),["#4254ba"]),dataColors=$("#deals-chart").data("colors"),options3={chart:{type:"bar",height:60,sparkline:{enabled:!0}},plotOptions:{bar:{columnWidth:"60%"}},colors:colors=dataColors?dataColors.split(","):colors,series:[{data:[12,14,2,47,42,15,47,75,65,19,14]}],labels:[1,2,3,4,5,6,7,8,9,10,11],xaxis:{crosshairs:{width:1}},tooltip:{fixed:{enabled:!1},x:{show:!1},y:{title:{formatter:function(o){return""}}},marker:{show:!1}}},colors=(new ApexCharts(document.querySelector("#deals-chart"),options3).render(),["#4254ba"]),dataColors=$("#booked-revenue-chart").data("colors"),options4={chart:{type:"line",height:60,sparkline:{enabled:!0}},plotOptions:{bar:{columnWidth:"60%"}},colors:colors=dataColors?dataColors.split(","):colors,series:[{data:[47,45,74,14,56,74,14,11,7,39,82]}],labels:[1,2,3,4,5,6,7,8,9,10,11],stroke:{width:2,curve:"smooth"},markers:{size:0},tooltip:{fixed:{enabled:!1},x:{show:!1},y:{title:{formatter:function(o){return""}}},marker:{show:!1}}};new ApexCharts(document.querySelector("#booked-revenue-chart"),options4).render(); \ No newline at end of file diff --git a/pxy_dashboard/static/dashboard/js/vendor.min.js b/pxy_dashboard/static/dashboard/js/vendor.min.js new file mode 100644 index 0000000..1c15109 --- /dev/null +++ b/pxy_dashboard/static/dashboard/js/vendor.min.js @@ -0,0 +1,20 @@ +/*! + * Bootstrap v5.3.0 (https://getbootstrap.com/) + * Copyright 2011-2023 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors) + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) + */ +!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):(t="undefined"!=typeof globalThis?globalThis:t||self).bootstrap=e()}(this,(function(){"use strict";const t=new Map,e={set(e,i,n){t.has(e)||t.set(e,new Map);const s=t.get(e);s.has(i)||0===s.size?s.set(i,n):console.error(`Bootstrap doesn't allow more than one instance per element. Bound instance: ${Array.from(s.keys())[0]}.`)},get:(e,i)=>t.has(e)&&t.get(e).get(i)||null,remove(e,i){if(!t.has(e))return;const n=t.get(e);n.delete(i),0===n.size&&t.delete(e)}},i="transitionend",n=t=>(t&&window.CSS&&window.CSS.escape&&(t=t.replace(/#([^\s"#']+)/g,((t,e)=>`#${CSS.escape(e)}`))),t),s=t=>{t.dispatchEvent(new Event(i))},o=t=>!(!t||"object"!=typeof t)&&(void 0!==t.jquery&&(t=t[0]),void 0!==t.nodeType),r=t=>o(t)?t.jquery?t[0]:t:"string"==typeof t&&t.length>0?document.querySelector(n(t)):null,a=t=>{if(!o(t)||0===t.getClientRects().length)return!1;const e="visible"===getComputedStyle(t).getPropertyValue("visibility"),i=t.closest("details:not([open])");if(!i)return e;if(i!==t){const e=t.closest("summary");if(e&&e.parentNode!==i)return!1;if(null===e)return!1}return e},l=t=>!t||t.nodeType!==Node.ELEMENT_NODE||!!t.classList.contains("disabled")||(void 0!==t.disabled?t.disabled:t.hasAttribute("disabled")&&"false"!==t.getAttribute("disabled")),c=t=>{if(!document.documentElement.attachShadow)return null;if("function"==typeof t.getRootNode){const e=t.getRootNode();return e instanceof ShadowRoot?e:null}return t instanceof ShadowRoot?t:t.parentNode?c(t.parentNode):null},h=()=>{},d=t=>{t.offsetHeight},u=()=>window.jQuery&&!document.body.hasAttribute("data-bs-no-jquery")?window.jQuery:null,f=[],p=()=>"rtl"===document.documentElement.dir,m=t=>{var e;e=()=>{const e=u();if(e){const i=t.NAME,n=e.fn[i];e.fn[i]=t.jQueryInterface,e.fn[i].Constructor=t,e.fn[i].noConflict=()=>(e.fn[i]=n,t.jQueryInterface)}},"loading"===document.readyState?(f.length||document.addEventListener("DOMContentLoaded",(()=>{for(const t of f)t()})),f.push(e)):e()},g=(t,e=[],i=t)=>"function"==typeof t?t(...e):i,_=(t,e,n=!0)=>{if(!n)return void g(t);const o=(t=>{if(!t)return 0;let{transitionDuration:e,transitionDelay:i}=window.getComputedStyle(t);const n=Number.parseFloat(e),s=Number.parseFloat(i);return n||s?(e=e.split(",")[0],i=i.split(",")[0],1e3*(Number.parseFloat(e)+Number.parseFloat(i))):0})(e)+5;let r=!1;const a=({target:n})=>{n===e&&(r=!0,e.removeEventListener(i,a),g(t))};e.addEventListener(i,a),setTimeout((()=>{r||s(e)}),o)},b=(t,e,i,n)=>{const s=t.length;let o=t.indexOf(e);return-1===o?!i&&n?t[s-1]:t[0]:(o+=i?1:-1,n&&(o=(o+s)%s),t[Math.max(0,Math.min(o,s-1))])},v=/[^.]*(?=\..*)\.|.*/,y=/\..*/,w=/::\d+$/,A={};let E=1;const T={mouseenter:"mouseover",mouseleave:"mouseout"},C=new Set(["click","dblclick","mouseup","mousedown","contextmenu","mousewheel","DOMMouseScroll","mouseover","mouseout","mousemove","selectstart","selectend","keydown","keypress","keyup","orientationchange","touchstart","touchmove","touchend","touchcancel","pointerdown","pointermove","pointerup","pointerleave","pointercancel","gesturestart","gesturechange","gestureend","focus","blur","change","reset","select","submit","focusin","focusout","load","unload","beforeunload","resize","move","DOMContentLoaded","readystatechange","error","abort","scroll"]);function O(t,e){return e&&`${e}::${E++}`||t.uidEvent||E++}function x(t){const e=O(t);return t.uidEvent=e,A[e]=A[e]||{},A[e]}function k(t,e,i=null){return Object.values(t).find((t=>t.callable===e&&t.delegationSelector===i))}function L(t,e,i){const n="string"==typeof e,s=n?i:e||i;let o=N(t);return C.has(o)||(o=t),[n,s,o]}function S(t,e,i,n,s){if("string"!=typeof e||!t)return;let[o,r,a]=L(e,i,n);if(e in T){const t=t=>function(e){if(!e.relatedTarget||e.relatedTarget!==e.delegateTarget&&!e.delegateTarget.contains(e.relatedTarget))return t.call(this,e)};r=t(r)}const l=x(t),c=l[a]||(l[a]={}),h=k(c,r,o?i:null);if(h)return void(h.oneOff=h.oneOff&&s);const d=O(r,e.replace(v,"")),u=o?function(t,e,i){return function n(s){const o=t.querySelectorAll(e);for(let{target:r}=s;r&&r!==this;r=r.parentNode)for(const a of o)if(a===r)return M(s,{delegateTarget:r}),n.oneOff&&P.off(t,s.type,e,i),i.apply(r,[s])}}(t,i,r):function(t,e){return function i(n){return M(n,{delegateTarget:t}),i.oneOff&&P.off(t,n.type,e),e.apply(t,[n])}}(t,r);u.delegationSelector=o?i:null,u.callable=r,u.oneOff=s,u.uidEvent=d,c[d]=u,t.addEventListener(a,u,o)}function D(t,e,i,n,s){const o=k(e[i],n,s);o&&(t.removeEventListener(i,o,Boolean(s)),delete e[i][o.uidEvent])}function I(t,e,i,n){const s=e[i]||{};for(const[o,r]of Object.entries(s))o.includes(n)&&D(t,e,i,r.callable,r.delegationSelector)}function N(t){return t=t.replace(y,""),T[t]||t}const P={on(t,e,i,n){S(t,e,i,n,!1)},one(t,e,i,n){S(t,e,i,n,!0)},off(t,e,i,n){if("string"!=typeof e||!t)return;const[s,o,r]=L(e,i,n),a=r!==e,l=x(t),c=l[r]||{},h=e.startsWith(".");if(void 0===o){if(h)for(const i of Object.keys(l))I(t,l,i,e.slice(1));for(const[i,n]of Object.entries(c)){const s=i.replace(w,"");a&&!e.includes(s)||D(t,l,r,n.callable,n.delegationSelector)}}else{if(!Object.keys(c).length)return;D(t,l,r,o,s?i:null)}},trigger(t,e,i){if("string"!=typeof e||!t)return null;const n=u();let s=null,o=!0,r=!0,a=!1;e!==N(e)&&n&&(s=n.Event(e,i),n(t).trigger(s),o=!s.isPropagationStopped(),r=!s.isImmediatePropagationStopped(),a=s.isDefaultPrevented());const l=M(new Event(e,{bubbles:o,cancelable:!0}),i);return a&&l.preventDefault(),r&&t.dispatchEvent(l),l.defaultPrevented&&s&&s.preventDefault(),l}};function M(t,e={}){for(const[i,n]of Object.entries(e))try{t[i]=n}catch(e){Object.defineProperty(t,i,{configurable:!0,get:()=>n})}return t}function j(t){if("true"===t)return!0;if("false"===t)return!1;if(t===Number(t).toString())return Number(t);if(""===t||"null"===t)return null;if("string"!=typeof t)return t;try{return JSON.parse(decodeURIComponent(t))}catch(e){return t}}function F(t){return t.replace(/[A-Z]/g,(t=>`-${t.toLowerCase()}`))}const H={setDataAttribute(t,e,i){t.setAttribute(`data-bs-${F(e)}`,i)},removeDataAttribute(t,e){t.removeAttribute(`data-bs-${F(e)}`)},getDataAttributes(t){if(!t)return{};const e={},i=Object.keys(t.dataset).filter((t=>t.startsWith("bs")&&!t.startsWith("bsConfig")));for(const n of i){let i=n.replace(/^bs/,"");i=i.charAt(0).toLowerCase()+i.slice(1,i.length),e[i]=j(t.dataset[n])}return e},getDataAttribute:(t,e)=>j(t.getAttribute(`data-bs-${F(e)}`))};class ${static get Default(){return{}}static get DefaultType(){return{}}static get NAME(){throw new Error('You have to implement the static method "NAME", for each component!')}_getConfig(t){return t=this._mergeConfigObj(t),t=this._configAfterMerge(t),this._typeCheckConfig(t),t}_configAfterMerge(t){return t}_mergeConfigObj(t,e){const i=o(e)?H.getDataAttribute(e,"config"):{};return{...this.constructor.Default,..."object"==typeof i?i:{},...o(e)?H.getDataAttributes(e):{},..."object"==typeof t?t:{}}}_typeCheckConfig(t,e=this.constructor.DefaultType){for(const[n,s]of Object.entries(e)){const e=t[n],r=o(e)?"element":null==(i=e)?`${i}`:Object.prototype.toString.call(i).match(/\s([a-z]+)/i)[1].toLowerCase();if(!new RegExp(s).test(r))throw new TypeError(`${this.constructor.NAME.toUpperCase()}: Option "${n}" provided type "${r}" but expected type "${s}".`)}var i}}class W extends ${constructor(t,i){super(),(t=r(t))&&(this._element=t,this._config=this._getConfig(i),e.set(this._element,this.constructor.DATA_KEY,this))}dispose(){e.remove(this._element,this.constructor.DATA_KEY),P.off(this._element,this.constructor.EVENT_KEY);for(const t of Object.getOwnPropertyNames(this))this[t]=null}_queueCallback(t,e,i=!0){_(t,e,i)}_getConfig(t){return t=this._mergeConfigObj(t,this._element),t=this._configAfterMerge(t),this._typeCheckConfig(t),t}static getInstance(t){return e.get(r(t),this.DATA_KEY)}static getOrCreateInstance(t,e={}){return this.getInstance(t)||new this(t,"object"==typeof e?e:null)}static get VERSION(){return"5.3.0"}static get DATA_KEY(){return`bs.${this.NAME}`}static get EVENT_KEY(){return`.${this.DATA_KEY}`}static eventName(t){return`${t}${this.EVENT_KEY}`}}const B=t=>{let e=t.getAttribute("data-bs-target");if(!e||"#"===e){let i=t.getAttribute("href");if(!i||!i.includes("#")&&!i.startsWith("."))return null;i.includes("#")&&!i.startsWith("#")&&(i=`#${i.split("#")[1]}`),e=i&&"#"!==i?i.trim():null}return n(e)},z={find:(t,e=document.documentElement)=>[].concat(...Element.prototype.querySelectorAll.call(e,t)),findOne:(t,e=document.documentElement)=>Element.prototype.querySelector.call(e,t),children:(t,e)=>[].concat(...t.children).filter((t=>t.matches(e))),parents(t,e){const i=[];let n=t.parentNode.closest(e);for(;n;)i.push(n),n=n.parentNode.closest(e);return i},prev(t,e){let i=t.previousElementSibling;for(;i;){if(i.matches(e))return[i];i=i.previousElementSibling}return[]},next(t,e){let i=t.nextElementSibling;for(;i;){if(i.matches(e))return[i];i=i.nextElementSibling}return[]},focusableChildren(t){const e=["a","button","input","textarea","select","details","[tabindex]",'[contenteditable="true"]'].map((t=>`${t}:not([tabindex^="-"])`)).join(",");return this.find(e,t).filter((t=>!l(t)&&a(t)))},getSelectorFromElement(t){const e=B(t);return e&&z.findOne(e)?e:null},getElementFromSelector(t){const e=B(t);return e?z.findOne(e):null},getMultipleElementsFromSelector(t){const e=B(t);return e?z.find(e):[]}},R=(t,e="hide")=>{const i=`click.dismiss${t.EVENT_KEY}`,n=t.NAME;P.on(document,i,`[data-bs-dismiss="${n}"]`,(function(i){if(["A","AREA"].includes(this.tagName)&&i.preventDefault(),l(this))return;const s=z.getElementFromSelector(this)||this.closest(`.${n}`);t.getOrCreateInstance(s)[e]()}))};class q extends W{static get NAME(){return"alert"}close(){if(P.trigger(this._element,"close.bs.alert").defaultPrevented)return;this._element.classList.remove("show");const t=this._element.classList.contains("fade");this._queueCallback((()=>this._destroyElement()),this._element,t)}_destroyElement(){this._element.remove(),P.trigger(this._element,"closed.bs.alert"),this.dispose()}static jQueryInterface(t){return this.each((function(){const e=q.getOrCreateInstance(this);if("string"==typeof t){if(void 0===e[t]||t.startsWith("_")||"constructor"===t)throw new TypeError(`No method named "${t}"`);e[t](this)}}))}}R(q,"close"),m(q);const V='[data-bs-toggle="button"]';class K extends W{static get NAME(){return"button"}toggle(){this._element.setAttribute("aria-pressed",this._element.classList.toggle("active"))}static jQueryInterface(t){return this.each((function(){const e=K.getOrCreateInstance(this);"toggle"===t&&e[t]()}))}}P.on(document,"click.bs.button.data-api",V,(t=>{t.preventDefault();const e=t.target.closest(V);K.getOrCreateInstance(e).toggle()})),m(K);const Q={endCallback:null,leftCallback:null,rightCallback:null},X={endCallback:"(function|null)",leftCallback:"(function|null)",rightCallback:"(function|null)"};class Y extends ${constructor(t,e){super(),this._element=t,t&&Y.isSupported()&&(this._config=this._getConfig(e),this._deltaX=0,this._supportPointerEvents=Boolean(window.PointerEvent),this._initEvents())}static get Default(){return Q}static get DefaultType(){return X}static get NAME(){return"swipe"}dispose(){P.off(this._element,".bs.swipe")}_start(t){this._supportPointerEvents?this._eventIsPointerPenTouch(t)&&(this._deltaX=t.clientX):this._deltaX=t.touches[0].clientX}_end(t){this._eventIsPointerPenTouch(t)&&(this._deltaX=t.clientX-this._deltaX),this._handleSwipe(),g(this._config.endCallback)}_move(t){this._deltaX=t.touches&&t.touches.length>1?0:t.touches[0].clientX-this._deltaX}_handleSwipe(){const t=Math.abs(this._deltaX);if(t<=40)return;const e=t/this._deltaX;this._deltaX=0,e&&g(e>0?this._config.rightCallback:this._config.leftCallback)}_initEvents(){this._supportPointerEvents?(P.on(this._element,"pointerdown.bs.swipe",(t=>this._start(t))),P.on(this._element,"pointerup.bs.swipe",(t=>this._end(t))),this._element.classList.add("pointer-event")):(P.on(this._element,"touchstart.bs.swipe",(t=>this._start(t))),P.on(this._element,"touchmove.bs.swipe",(t=>this._move(t))),P.on(this._element,"touchend.bs.swipe",(t=>this._end(t))))}_eventIsPointerPenTouch(t){return this._supportPointerEvents&&("pen"===t.pointerType||"touch"===t.pointerType)}static isSupported(){return"ontouchstart"in document.documentElement||navigator.maxTouchPoints>0}}const U="next",G="prev",J="left",Z="right",tt="slid.bs.carousel",et="carousel",it="active",nt={ArrowLeft:Z,ArrowRight:J},st={interval:5e3,keyboard:!0,pause:"hover",ride:!1,touch:!0,wrap:!0},ot={interval:"(number|boolean)",keyboard:"boolean",pause:"(string|boolean)",ride:"(boolean|string)",touch:"boolean",wrap:"boolean"};class rt extends W{constructor(t,e){super(t,e),this._interval=null,this._activeElement=null,this._isSliding=!1,this.touchTimeout=null,this._swipeHelper=null,this._indicatorsElement=z.findOne(".carousel-indicators",this._element),this._addEventListeners(),this._config.ride===et&&this.cycle()}static get Default(){return st}static get DefaultType(){return ot}static get NAME(){return"carousel"}next(){this._slide(U)}nextWhenVisible(){!document.hidden&&a(this._element)&&this.next()}prev(){this._slide(G)}pause(){this._isSliding&&s(this._element),this._clearInterval()}cycle(){this._clearInterval(),this._updateInterval(),this._interval=setInterval((()=>this.nextWhenVisible()),this._config.interval)}_maybeEnableCycle(){this._config.ride&&(this._isSliding?P.one(this._element,tt,(()=>this.cycle())):this.cycle())}to(t){const e=this._getItems();if(t>e.length-1||t<0)return;if(this._isSliding)return void P.one(this._element,tt,(()=>this.to(t)));const i=this._getItemIndex(this._getActive());if(i===t)return;const n=t>i?U:G;this._slide(n,e[t])}dispose(){this._swipeHelper&&this._swipeHelper.dispose(),super.dispose()}_configAfterMerge(t){return t.defaultInterval=t.interval,t}_addEventListeners(){this._config.keyboard&&P.on(this._element,"keydown.bs.carousel",(t=>this._keydown(t))),"hover"===this._config.pause&&(P.on(this._element,"mouseenter.bs.carousel",(()=>this.pause())),P.on(this._element,"mouseleave.bs.carousel",(()=>this._maybeEnableCycle()))),this._config.touch&&Y.isSupported()&&this._addTouchEventListeners()}_addTouchEventListeners(){for(const t of z.find(".carousel-item img",this._element))P.on(t,"dragstart.bs.carousel",(t=>t.preventDefault()));const t={leftCallback:()=>this._slide(this._directionToOrder(J)),rightCallback:()=>this._slide(this._directionToOrder(Z)),endCallback:()=>{"hover"===this._config.pause&&(this.pause(),this.touchTimeout&&clearTimeout(this.touchTimeout),this.touchTimeout=setTimeout((()=>this._maybeEnableCycle()),500+this._config.interval))}};this._swipeHelper=new Y(this._element,t)}_keydown(t){if(/input|textarea/i.test(t.target.tagName))return;const e=nt[t.key];e&&(t.preventDefault(),this._slide(this._directionToOrder(e)))}_getItemIndex(t){return this._getItems().indexOf(t)}_setActiveIndicatorElement(t){if(!this._indicatorsElement)return;const e=z.findOne(".active",this._indicatorsElement);e.classList.remove(it),e.removeAttribute("aria-current");const i=z.findOne(`[data-bs-slide-to="${t}"]`,this._indicatorsElement);i&&(i.classList.add(it),i.setAttribute("aria-current","true"))}_updateInterval(){const t=this._activeElement||this._getActive();if(!t)return;const e=Number.parseInt(t.getAttribute("data-bs-interval"),10);this._config.interval=e||this._config.defaultInterval}_slide(t,e=null){if(this._isSliding)return;const i=this._getActive(),n=t===U,s=e||b(this._getItems(),i,n,this._config.wrap);if(s===i)return;const o=this._getItemIndex(s),r=e=>P.trigger(this._element,e,{relatedTarget:s,direction:this._orderToDirection(t),from:this._getItemIndex(i),to:o});if(r("slide.bs.carousel").defaultPrevented)return;if(!i||!s)return;const a=Boolean(this._interval);this.pause(),this._isSliding=!0,this._setActiveIndicatorElement(o),this._activeElement=s;const l=n?"carousel-item-start":"carousel-item-end",c=n?"carousel-item-next":"carousel-item-prev";s.classList.add(c),d(s),i.classList.add(l),s.classList.add(l),this._queueCallback((()=>{s.classList.remove(l,c),s.classList.add(it),i.classList.remove(it,c,l),this._isSliding=!1,r(tt)}),i,this._isAnimated()),a&&this.cycle()}_isAnimated(){return this._element.classList.contains("slide")}_getActive(){return z.findOne(".active.carousel-item",this._element)}_getItems(){return z.find(".carousel-item",this._element)}_clearInterval(){this._interval&&(clearInterval(this._interval),this._interval=null)}_directionToOrder(t){return p()?t===J?G:U:t===J?U:G}_orderToDirection(t){return p()?t===G?J:Z:t===G?Z:J}static jQueryInterface(t){return this.each((function(){const e=rt.getOrCreateInstance(this,t);if("number"!=typeof t){if("string"==typeof t){if(void 0===e[t]||t.startsWith("_")||"constructor"===t)throw new TypeError(`No method named "${t}"`);e[t]()}}else e.to(t)}))}}P.on(document,"click.bs.carousel.data-api","[data-bs-slide], [data-bs-slide-to]",(function(t){const e=z.getElementFromSelector(this);if(!e||!e.classList.contains(et))return;t.preventDefault();const i=rt.getOrCreateInstance(e),n=this.getAttribute("data-bs-slide-to");return n?(i.to(n),void i._maybeEnableCycle()):"next"===H.getDataAttribute(this,"slide")?(i.next(),void i._maybeEnableCycle()):(i.prev(),void i._maybeEnableCycle())})),P.on(window,"load.bs.carousel.data-api",(()=>{const t=z.find('[data-bs-ride="carousel"]');for(const e of t)rt.getOrCreateInstance(e)})),m(rt);const at="show",lt="collapse",ct="collapsing",ht='[data-bs-toggle="collapse"]',dt={parent:null,toggle:!0},ut={parent:"(null|element)",toggle:"boolean"};class ft extends W{constructor(t,e){super(t,e),this._isTransitioning=!1,this._triggerArray=[];const i=z.find(ht);for(const t of i){const e=z.getSelectorFromElement(t),i=z.find(e).filter((t=>t===this._element));null!==e&&i.length&&this._triggerArray.push(t)}this._initializeChildren(),this._config.parent||this._addAriaAndCollapsedClass(this._triggerArray,this._isShown()),this._config.toggle&&this.toggle()}static get Default(){return dt}static get DefaultType(){return ut}static get NAME(){return"collapse"}toggle(){this._isShown()?this.hide():this.show()}show(){if(this._isTransitioning||this._isShown())return;let t=[];if(this._config.parent&&(t=this._getFirstLevelChildren(".collapse.show, .collapse.collapsing").filter((t=>t!==this._element)).map((t=>ft.getOrCreateInstance(t,{toggle:!1})))),t.length&&t[0]._isTransitioning)return;if(P.trigger(this._element,"show.bs.collapse").defaultPrevented)return;for(const e of t)e.hide();const e=this._getDimension();this._element.classList.remove(lt),this._element.classList.add(ct),this._element.style[e]=0,this._addAriaAndCollapsedClass(this._triggerArray,!0),this._isTransitioning=!0;const i=`scroll${e[0].toUpperCase()+e.slice(1)}`;this._queueCallback((()=>{this._isTransitioning=!1,this._element.classList.remove(ct),this._element.classList.add(lt,at),this._element.style[e]="",P.trigger(this._element,"shown.bs.collapse")}),this._element,!0),this._element.style[e]=`${this._element[i]}px`}hide(){if(this._isTransitioning||!this._isShown())return;if(P.trigger(this._element,"hide.bs.collapse").defaultPrevented)return;const t=this._getDimension();this._element.style[t]=`${this._element.getBoundingClientRect()[t]}px`,d(this._element),this._element.classList.add(ct),this._element.classList.remove(lt,at);for(const t of this._triggerArray){const e=z.getElementFromSelector(t);e&&!this._isShown(e)&&this._addAriaAndCollapsedClass([t],!1)}this._isTransitioning=!0,this._element.style[t]="",this._queueCallback((()=>{this._isTransitioning=!1,this._element.classList.remove(ct),this._element.classList.add(lt),P.trigger(this._element,"hidden.bs.collapse")}),this._element,!0)}_isShown(t=this._element){return t.classList.contains(at)}_configAfterMerge(t){return t.toggle=Boolean(t.toggle),t.parent=r(t.parent),t}_getDimension(){return this._element.classList.contains("collapse-horizontal")?"width":"height"}_initializeChildren(){if(!this._config.parent)return;const t=this._getFirstLevelChildren(ht);for(const e of t){const t=z.getElementFromSelector(e);t&&this._addAriaAndCollapsedClass([e],this._isShown(t))}}_getFirstLevelChildren(t){const e=z.find(":scope .collapse .collapse",this._config.parent);return z.find(t,this._config.parent).filter((t=>!e.includes(t)))}_addAriaAndCollapsedClass(t,e){if(t.length)for(const i of t)i.classList.toggle("collapsed",!e),i.setAttribute("aria-expanded",e)}static jQueryInterface(t){const e={};return"string"==typeof t&&/show|hide/.test(t)&&(e.toggle=!1),this.each((function(){const i=ft.getOrCreateInstance(this,e);if("string"==typeof t){if(void 0===i[t])throw new TypeError(`No method named "${t}"`);i[t]()}}))}}P.on(document,"click.bs.collapse.data-api",ht,(function(t){("A"===t.target.tagName||t.delegateTarget&&"A"===t.delegateTarget.tagName)&&t.preventDefault();for(const t of z.getMultipleElementsFromSelector(this))ft.getOrCreateInstance(t,{toggle:!1}).toggle()})),m(ft);var pt="top",mt="bottom",gt="right",_t="left",bt="auto",vt=[pt,mt,gt,_t],yt="start",wt="end",At="clippingParents",Et="viewport",Tt="popper",Ct="reference",Ot=vt.reduce((function(t,e){return t.concat([e+"-"+yt,e+"-"+wt])}),[]),xt=[].concat(vt,[bt]).reduce((function(t,e){return t.concat([e,e+"-"+yt,e+"-"+wt])}),[]),kt="beforeRead",Lt="read",St="afterRead",Dt="beforeMain",It="main",Nt="afterMain",Pt="beforeWrite",Mt="write",jt="afterWrite",Ft=[kt,Lt,St,Dt,It,Nt,Pt,Mt,jt];function Ht(t){return t?(t.nodeName||"").toLowerCase():null}function $t(t){if(null==t)return window;if("[object Window]"!==t.toString()){var e=t.ownerDocument;return e&&e.defaultView||window}return t}function Wt(t){return t instanceof $t(t).Element||t instanceof Element}function Bt(t){return t instanceof $t(t).HTMLElement||t instanceof HTMLElement}function zt(t){return"undefined"!=typeof ShadowRoot&&(t instanceof $t(t).ShadowRoot||t instanceof ShadowRoot)}const Rt={name:"applyStyles",enabled:!0,phase:"write",fn:function(t){var e=t.state;Object.keys(e.elements).forEach((function(t){var i=e.styles[t]||{},n=e.attributes[t]||{},s=e.elements[t];Bt(s)&&Ht(s)&&(Object.assign(s.style,i),Object.keys(n).forEach((function(t){var e=n[t];!1===e?s.removeAttribute(t):s.setAttribute(t,!0===e?"":e)})))}))},effect:function(t){var e=t.state,i={popper:{position:e.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(e.elements.popper.style,i.popper),e.styles=i,e.elements.arrow&&Object.assign(e.elements.arrow.style,i.arrow),function(){Object.keys(e.elements).forEach((function(t){var n=e.elements[t],s=e.attributes[t]||{},o=Object.keys(e.styles.hasOwnProperty(t)?e.styles[t]:i[t]).reduce((function(t,e){return t[e]="",t}),{});Bt(n)&&Ht(n)&&(Object.assign(n.style,o),Object.keys(s).forEach((function(t){n.removeAttribute(t)})))}))}},requires:["computeStyles"]};function qt(t){return t.split("-")[0]}var Vt=Math.max,Kt=Math.min,Qt=Math.round;function Xt(){var t=navigator.userAgentData;return null!=t&&t.brands&&Array.isArray(t.brands)?t.brands.map((function(t){return t.brand+"/"+t.version})).join(" "):navigator.userAgent}function Yt(){return!/^((?!chrome|android).)*safari/i.test(Xt())}function Ut(t,e,i){void 0===e&&(e=!1),void 0===i&&(i=!1);var n=t.getBoundingClientRect(),s=1,o=1;e&&Bt(t)&&(s=t.offsetWidth>0&&Qt(n.width)/t.offsetWidth||1,o=t.offsetHeight>0&&Qt(n.height)/t.offsetHeight||1);var r=(Wt(t)?$t(t):window).visualViewport,a=!Yt()&&i,l=(n.left+(a&&r?r.offsetLeft:0))/s,c=(n.top+(a&&r?r.offsetTop:0))/o,h=n.width/s,d=n.height/o;return{width:h,height:d,top:c,right:l+h,bottom:c+d,left:l,x:l,y:c}}function Gt(t){var e=Ut(t),i=t.offsetWidth,n=t.offsetHeight;return Math.abs(e.width-i)<=1&&(i=e.width),Math.abs(e.height-n)<=1&&(n=e.height),{x:t.offsetLeft,y:t.offsetTop,width:i,height:n}}function Jt(t,e){var i=e.getRootNode&&e.getRootNode();if(t.contains(e))return!0;if(i&&zt(i)){var n=e;do{if(n&&t.isSameNode(n))return!0;n=n.parentNode||n.host}while(n)}return!1}function Zt(t){return $t(t).getComputedStyle(t)}function te(t){return["table","td","th"].indexOf(Ht(t))>=0}function ee(t){return((Wt(t)?t.ownerDocument:t.document)||window.document).documentElement}function ie(t){return"html"===Ht(t)?t:t.assignedSlot||t.parentNode||(zt(t)?t.host:null)||ee(t)}function ne(t){return Bt(t)&&"fixed"!==Zt(t).position?t.offsetParent:null}function se(t){for(var e=$t(t),i=ne(t);i&&te(i)&&"static"===Zt(i).position;)i=ne(i);return i&&("html"===Ht(i)||"body"===Ht(i)&&"static"===Zt(i).position)?e:i||function(t){var e=/firefox/i.test(Xt());if(/Trident/i.test(Xt())&&Bt(t)&&"fixed"===Zt(t).position)return null;var i=ie(t);for(zt(i)&&(i=i.host);Bt(i)&&["html","body"].indexOf(Ht(i))<0;){var n=Zt(i);if("none"!==n.transform||"none"!==n.perspective||"paint"===n.contain||-1!==["transform","perspective"].indexOf(n.willChange)||e&&"filter"===n.willChange||e&&n.filter&&"none"!==n.filter)return i;i=i.parentNode}return null}(t)||e}function oe(t){return["top","bottom"].indexOf(t)>=0?"x":"y"}function re(t,e,i){return Vt(t,Kt(e,i))}function ae(t){return Object.assign({},{top:0,right:0,bottom:0,left:0},t)}function le(t,e){return e.reduce((function(e,i){return e[i]=t,e}),{})}const ce={name:"arrow",enabled:!0,phase:"main",fn:function(t){var e,i=t.state,n=t.name,s=t.options,o=i.elements.arrow,r=i.modifiersData.popperOffsets,a=qt(i.placement),l=oe(a),c=[_t,gt].indexOf(a)>=0?"height":"width";if(o&&r){var h=function(t,e){return ae("number"!=typeof(t="function"==typeof t?t(Object.assign({},e.rects,{placement:e.placement})):t)?t:le(t,vt))}(s.padding,i),d=Gt(o),u="y"===l?pt:_t,f="y"===l?mt:gt,p=i.rects.reference[c]+i.rects.reference[l]-r[l]-i.rects.popper[c],m=r[l]-i.rects.reference[l],g=se(o),_=g?"y"===l?g.clientHeight||0:g.clientWidth||0:0,b=p/2-m/2,v=h[u],y=_-d[c]-h[f],w=_/2-d[c]/2+b,A=re(v,w,y),E=l;i.modifiersData[n]=((e={})[E]=A,e.centerOffset=A-w,e)}},effect:function(t){var e=t.state,i=t.options.element,n=void 0===i?"[data-popper-arrow]":i;null!=n&&("string"!=typeof n||(n=e.elements.popper.querySelector(n)))&&Jt(e.elements.popper,n)&&(e.elements.arrow=n)},requires:["popperOffsets"],requiresIfExists:["preventOverflow"]};function he(t){return t.split("-")[1]}var de={top:"auto",right:"auto",bottom:"auto",left:"auto"};function ue(t){var e,i=t.popper,n=t.popperRect,s=t.placement,o=t.variation,r=t.offsets,a=t.position,l=t.gpuAcceleration,c=t.adaptive,h=t.roundOffsets,d=t.isFixed,u=r.x,f=void 0===u?0:u,p=r.y,m=void 0===p?0:p,g="function"==typeof h?h({x:f,y:m}):{x:f,y:m};f=g.x,m=g.y;var _=r.hasOwnProperty("x"),b=r.hasOwnProperty("y"),v=_t,y=pt,w=window;if(c){var A=se(i),E="clientHeight",T="clientWidth";A===$t(i)&&"static"!==Zt(A=ee(i)).position&&"absolute"===a&&(E="scrollHeight",T="scrollWidth"),(s===pt||(s===_t||s===gt)&&o===wt)&&(y=mt,m-=(d&&A===w&&w.visualViewport?w.visualViewport.height:A[E])-n.height,m*=l?1:-1),s!==_t&&(s!==pt&&s!==mt||o!==wt)||(v=gt,f-=(d&&A===w&&w.visualViewport?w.visualViewport.width:A[T])-n.width,f*=l?1:-1)}var C,O=Object.assign({position:a},c&&de),x=!0===h?function(t,e){var i=t.x,n=t.y,s=e.devicePixelRatio||1;return{x:Qt(i*s)/s||0,y:Qt(n*s)/s||0}}({x:f,y:m},$t(i)):{x:f,y:m};return f=x.x,m=x.y,l?Object.assign({},O,((C={})[y]=b?"0":"",C[v]=_?"0":"",C.transform=(w.devicePixelRatio||1)<=1?"translate("+f+"px, "+m+"px)":"translate3d("+f+"px, "+m+"px, 0)",C)):Object.assign({},O,((e={})[y]=b?m+"px":"",e[v]=_?f+"px":"",e.transform="",e))}const fe={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:function(t){var e=t.state,i=t.options,n=i.gpuAcceleration,s=void 0===n||n,o=i.adaptive,r=void 0===o||o,a=i.roundOffsets,l=void 0===a||a,c={placement:qt(e.placement),variation:he(e.placement),popper:e.elements.popper,popperRect:e.rects.popper,gpuAcceleration:s,isFixed:"fixed"===e.options.strategy};null!=e.modifiersData.popperOffsets&&(e.styles.popper=Object.assign({},e.styles.popper,ue(Object.assign({},c,{offsets:e.modifiersData.popperOffsets,position:e.options.strategy,adaptive:r,roundOffsets:l})))),null!=e.modifiersData.arrow&&(e.styles.arrow=Object.assign({},e.styles.arrow,ue(Object.assign({},c,{offsets:e.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:l})))),e.attributes.popper=Object.assign({},e.attributes.popper,{"data-popper-placement":e.placement})},data:{}};var pe={passive:!0};const me={name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:function(t){var e=t.state,i=t.instance,n=t.options,s=n.scroll,o=void 0===s||s,r=n.resize,a=void 0===r||r,l=$t(e.elements.popper),c=[].concat(e.scrollParents.reference,e.scrollParents.popper);return o&&c.forEach((function(t){t.addEventListener("scroll",i.update,pe)})),a&&l.addEventListener("resize",i.update,pe),function(){o&&c.forEach((function(t){t.removeEventListener("scroll",i.update,pe)})),a&&l.removeEventListener("resize",i.update,pe)}},data:{}};var ge={left:"right",right:"left",bottom:"top",top:"bottom"};function _e(t){return t.replace(/left|right|bottom|top/g,(function(t){return ge[t]}))}var be={start:"end",end:"start"};function ve(t){return t.replace(/start|end/g,(function(t){return be[t]}))}function ye(t){var e=$t(t);return{scrollLeft:e.pageXOffset,scrollTop:e.pageYOffset}}function we(t){return Ut(ee(t)).left+ye(t).scrollLeft}function Ae(t){var e=Zt(t),i=e.overflow,n=e.overflowX,s=e.overflowY;return/auto|scroll|overlay|hidden/.test(i+s+n)}function Ee(t){return["html","body","#document"].indexOf(Ht(t))>=0?t.ownerDocument.body:Bt(t)&&Ae(t)?t:Ee(ie(t))}function Te(t,e){var i;void 0===e&&(e=[]);var n=Ee(t),s=n===(null==(i=t.ownerDocument)?void 0:i.body),o=$t(n),r=s?[o].concat(o.visualViewport||[],Ae(n)?n:[]):n,a=e.concat(r);return s?a:a.concat(Te(ie(r)))}function Ce(t){return Object.assign({},t,{left:t.x,top:t.y,right:t.x+t.width,bottom:t.y+t.height})}function Oe(t,e,i){return e===Et?Ce(function(t,e){var i=$t(t),n=ee(t),s=i.visualViewport,o=n.clientWidth,r=n.clientHeight,a=0,l=0;if(s){o=s.width,r=s.height;var c=Yt();(c||!c&&"fixed"===e)&&(a=s.offsetLeft,l=s.offsetTop)}return{width:o,height:r,x:a+we(t),y:l}}(t,i)):Wt(e)?function(t,e){var i=Ut(t,!1,"fixed"===e);return i.top=i.top+t.clientTop,i.left=i.left+t.clientLeft,i.bottom=i.top+t.clientHeight,i.right=i.left+t.clientWidth,i.width=t.clientWidth,i.height=t.clientHeight,i.x=i.left,i.y=i.top,i}(e,i):Ce(function(t){var e,i=ee(t),n=ye(t),s=null==(e=t.ownerDocument)?void 0:e.body,o=Vt(i.scrollWidth,i.clientWidth,s?s.scrollWidth:0,s?s.clientWidth:0),r=Vt(i.scrollHeight,i.clientHeight,s?s.scrollHeight:0,s?s.clientHeight:0),a=-n.scrollLeft+we(t),l=-n.scrollTop;return"rtl"===Zt(s||i).direction&&(a+=Vt(i.clientWidth,s?s.clientWidth:0)-o),{width:o,height:r,x:a,y:l}}(ee(t)))}function xe(t){var e,i=t.reference,n=t.element,s=t.placement,o=s?qt(s):null,r=s?he(s):null,a=i.x+i.width/2-n.width/2,l=i.y+i.height/2-n.height/2;switch(o){case pt:e={x:a,y:i.y-n.height};break;case mt:e={x:a,y:i.y+i.height};break;case gt:e={x:i.x+i.width,y:l};break;case _t:e={x:i.x-n.width,y:l};break;default:e={x:i.x,y:i.y}}var c=o?oe(o):null;if(null!=c){var h="y"===c?"height":"width";switch(r){case yt:e[c]=e[c]-(i[h]/2-n[h]/2);break;case wt:e[c]=e[c]+(i[h]/2-n[h]/2)}}return e}function ke(t,e){void 0===e&&(e={});var i=e,n=i.placement,s=void 0===n?t.placement:n,o=i.strategy,r=void 0===o?t.strategy:o,a=i.boundary,l=void 0===a?At:a,c=i.rootBoundary,h=void 0===c?Et:c,d=i.elementContext,u=void 0===d?Tt:d,f=i.altBoundary,p=void 0!==f&&f,m=i.padding,g=void 0===m?0:m,_=ae("number"!=typeof g?g:le(g,vt)),b=u===Tt?Ct:Tt,v=t.rects.popper,y=t.elements[p?b:u],w=function(t,e,i,n){var s="clippingParents"===e?function(t){var e=Te(ie(t)),i=["absolute","fixed"].indexOf(Zt(t).position)>=0&&Bt(t)?se(t):t;return Wt(i)?e.filter((function(t){return Wt(t)&&Jt(t,i)&&"body"!==Ht(t)})):[]}(t):[].concat(e),o=[].concat(s,[i]),r=o[0],a=o.reduce((function(e,i){var s=Oe(t,i,n);return e.top=Vt(s.top,e.top),e.right=Kt(s.right,e.right),e.bottom=Kt(s.bottom,e.bottom),e.left=Vt(s.left,e.left),e}),Oe(t,r,n));return a.width=a.right-a.left,a.height=a.bottom-a.top,a.x=a.left,a.y=a.top,a}(Wt(y)?y:y.contextElement||ee(t.elements.popper),l,h,r),A=Ut(t.elements.reference),E=xe({reference:A,element:v,strategy:"absolute",placement:s}),T=Ce(Object.assign({},v,E)),C=u===Tt?T:A,O={top:w.top-C.top+_.top,bottom:C.bottom-w.bottom+_.bottom,left:w.left-C.left+_.left,right:C.right-w.right+_.right},x=t.modifiersData.offset;if(u===Tt&&x){var k=x[s];Object.keys(O).forEach((function(t){var e=[gt,mt].indexOf(t)>=0?1:-1,i=[pt,mt].indexOf(t)>=0?"y":"x";O[t]+=k[i]*e}))}return O}function Le(t,e){void 0===e&&(e={});var i=e,n=i.placement,s=i.boundary,o=i.rootBoundary,r=i.padding,a=i.flipVariations,l=i.allowedAutoPlacements,c=void 0===l?xt:l,h=he(n),d=h?a?Ot:Ot.filter((function(t){return he(t)===h})):vt,u=d.filter((function(t){return c.indexOf(t)>=0}));0===u.length&&(u=d);var f=u.reduce((function(e,i){return e[i]=ke(t,{placement:i,boundary:s,rootBoundary:o,padding:r})[qt(i)],e}),{});return Object.keys(f).sort((function(t,e){return f[t]-f[e]}))}const Se={name:"flip",enabled:!0,phase:"main",fn:function(t){var e=t.state,i=t.options,n=t.name;if(!e.modifiersData[n]._skip){for(var s=i.mainAxis,o=void 0===s||s,r=i.altAxis,a=void 0===r||r,l=i.fallbackPlacements,c=i.padding,h=i.boundary,d=i.rootBoundary,u=i.altBoundary,f=i.flipVariations,p=void 0===f||f,m=i.allowedAutoPlacements,g=e.options.placement,_=qt(g),b=l||(_!==g&&p?function(t){if(qt(t)===bt)return[];var e=_e(t);return[ve(t),e,ve(e)]}(g):[_e(g)]),v=[g].concat(b).reduce((function(t,i){return t.concat(qt(i)===bt?Le(e,{placement:i,boundary:h,rootBoundary:d,padding:c,flipVariations:p,allowedAutoPlacements:m}):i)}),[]),y=e.rects.reference,w=e.rects.popper,A=new Map,E=!0,T=v[0],C=0;C=0,S=L?"width":"height",D=ke(e,{placement:O,boundary:h,rootBoundary:d,altBoundary:u,padding:c}),I=L?k?gt:_t:k?mt:pt;y[S]>w[S]&&(I=_e(I));var N=_e(I),P=[];if(o&&P.push(D[x]<=0),a&&P.push(D[I]<=0,D[N]<=0),P.every((function(t){return t}))){T=O,E=!1;break}A.set(O,P)}if(E)for(var M=function(t){var e=v.find((function(e){var i=A.get(e);if(i)return i.slice(0,t).every((function(t){return t}))}));if(e)return T=e,"break"},j=p?3:1;j>0&&"break"!==M(j);j--);e.placement!==T&&(e.modifiersData[n]._skip=!0,e.placement=T,e.reset=!0)}},requiresIfExists:["offset"],data:{_skip:!1}};function De(t,e,i){return void 0===i&&(i={x:0,y:0}),{top:t.top-e.height-i.y,right:t.right-e.width+i.x,bottom:t.bottom-e.height+i.y,left:t.left-e.width-i.x}}function Ie(t){return[pt,gt,mt,_t].some((function(e){return t[e]>=0}))}const Ne={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:function(t){var e=t.state,i=t.name,n=e.rects.reference,s=e.rects.popper,o=e.modifiersData.preventOverflow,r=ke(e,{elementContext:"reference"}),a=ke(e,{altBoundary:!0}),l=De(r,n),c=De(a,s,o),h=Ie(l),d=Ie(c);e.modifiersData[i]={referenceClippingOffsets:l,popperEscapeOffsets:c,isReferenceHidden:h,hasPopperEscaped:d},e.attributes.popper=Object.assign({},e.attributes.popper,{"data-popper-reference-hidden":h,"data-popper-escaped":d})}},Pe={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:function(t){var e=t.state,i=t.options,n=t.name,s=i.offset,o=void 0===s?[0,0]:s,r=xt.reduce((function(t,i){return t[i]=function(t,e,i){var n=qt(t),s=[_t,pt].indexOf(n)>=0?-1:1,o="function"==typeof i?i(Object.assign({},e,{placement:t})):i,r=o[0],a=o[1];return r=r||0,a=(a||0)*s,[_t,gt].indexOf(n)>=0?{x:a,y:r}:{x:r,y:a}}(i,e.rects,o),t}),{}),a=r[e.placement],l=a.x,c=a.y;null!=e.modifiersData.popperOffsets&&(e.modifiersData.popperOffsets.x+=l,e.modifiersData.popperOffsets.y+=c),e.modifiersData[n]=r}},Me={name:"popperOffsets",enabled:!0,phase:"read",fn:function(t){var e=t.state,i=t.name;e.modifiersData[i]=xe({reference:e.rects.reference,element:e.rects.popper,strategy:"absolute",placement:e.placement})},data:{}},je={name:"preventOverflow",enabled:!0,phase:"main",fn:function(t){var e=t.state,i=t.options,n=t.name,s=i.mainAxis,o=void 0===s||s,r=i.altAxis,a=void 0!==r&&r,l=i.boundary,c=i.rootBoundary,h=i.altBoundary,d=i.padding,u=i.tether,f=void 0===u||u,p=i.tetherOffset,m=void 0===p?0:p,g=ke(e,{boundary:l,rootBoundary:c,padding:d,altBoundary:h}),_=qt(e.placement),b=he(e.placement),v=!b,y=oe(_),w="x"===y?"y":"x",A=e.modifiersData.popperOffsets,E=e.rects.reference,T=e.rects.popper,C="function"==typeof m?m(Object.assign({},e.rects,{placement:e.placement})):m,O="number"==typeof C?{mainAxis:C,altAxis:C}:Object.assign({mainAxis:0,altAxis:0},C),x=e.modifiersData.offset?e.modifiersData.offset[e.placement]:null,k={x:0,y:0};if(A){if(o){var L,S="y"===y?pt:_t,D="y"===y?mt:gt,I="y"===y?"height":"width",N=A[y],P=N+g[S],M=N-g[D],j=f?-T[I]/2:0,F=b===yt?E[I]:T[I],H=b===yt?-T[I]:-E[I],$=e.elements.arrow,W=f&&$?Gt($):{width:0,height:0},B=e.modifiersData["arrow#persistent"]?e.modifiersData["arrow#persistent"].padding:{top:0,right:0,bottom:0,left:0},z=B[S],R=B[D],q=re(0,E[I],W[I]),V=v?E[I]/2-j-q-z-O.mainAxis:F-q-z-O.mainAxis,K=v?-E[I]/2+j+q+R+O.mainAxis:H+q+R+O.mainAxis,Q=e.elements.arrow&&se(e.elements.arrow),X=Q?"y"===y?Q.clientTop||0:Q.clientLeft||0:0,Y=null!=(L=null==x?void 0:x[y])?L:0,U=N+K-Y,G=re(f?Kt(P,N+V-Y-X):P,N,f?Vt(M,U):M);A[y]=G,k[y]=G-N}if(a){var J,Z="x"===y?pt:_t,tt="x"===y?mt:gt,et=A[w],it="y"===w?"height":"width",nt=et+g[Z],st=et-g[tt],ot=-1!==[pt,_t].indexOf(_),rt=null!=(J=null==x?void 0:x[w])?J:0,at=ot?nt:et-E[it]-T[it]-rt+O.altAxis,lt=ot?et+E[it]+T[it]-rt-O.altAxis:st,ct=f&&ot?function(t,e,i){var n=re(t,e,i);return n>i?i:n}(at,et,lt):re(f?at:nt,et,f?lt:st);A[w]=ct,k[w]=ct-et}e.modifiersData[n]=k}},requiresIfExists:["offset"]};function Fe(t,e,i){void 0===i&&(i=!1);var n,s,o=Bt(e),r=Bt(e)&&function(t){var e=t.getBoundingClientRect(),i=Qt(e.width)/t.offsetWidth||1,n=Qt(e.height)/t.offsetHeight||1;return 1!==i||1!==n}(e),a=ee(e),l=Ut(t,r,i),c={scrollLeft:0,scrollTop:0},h={x:0,y:0};return(o||!o&&!i)&&(("body"!==Ht(e)||Ae(a))&&(c=(n=e)!==$t(n)&&Bt(n)?{scrollLeft:(s=n).scrollLeft,scrollTop:s.scrollTop}:ye(n)),Bt(e)?((h=Ut(e,!0)).x+=e.clientLeft,h.y+=e.clientTop):a&&(h.x=we(a))),{x:l.left+c.scrollLeft-h.x,y:l.top+c.scrollTop-h.y,width:l.width,height:l.height}}function He(t){var e=new Map,i=new Set,n=[];function s(t){i.add(t.name),[].concat(t.requires||[],t.requiresIfExists||[]).forEach((function(t){if(!i.has(t)){var n=e.get(t);n&&s(n)}})),n.push(t)}return t.forEach((function(t){e.set(t.name,t)})),t.forEach((function(t){i.has(t.name)||s(t)})),n}var $e={placement:"bottom",modifiers:[],strategy:"absolute"};function We(){for(var t=arguments.length,e=new Array(t),i=0;iNumber.parseInt(t,10))):"function"==typeof t?e=>t(e,this._element):t}_getPopperConfig(){const t={placement:this._getPlacement(),modifiers:[{name:"preventOverflow",options:{boundary:this._config.boundary}},{name:"offset",options:{offset:this._getOffset()}}]};return(this._inNavbar||"static"===this._config.display)&&(H.setDataAttribute(this._menu,"popper","static"),t.modifiers=[{name:"applyStyles",enabled:!1}]),{...t,...g(this._config.popperConfig,[t])}}_selectMenuItem({key:t,target:e}){const i=z.find(".dropdown-menu .dropdown-item:not(.disabled):not(:disabled)",this._menu).filter((t=>a(t)));i.length&&b(i,e,t===Xe,!i.includes(e)).focus()}static jQueryInterface(t){return this.each((function(){const e=ci.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t]()}}))}static clearMenus(t){if(2===t.button||"keyup"===t.type&&"Tab"!==t.key)return;const e=z.find(Ze);for(const i of e){const e=ci.getInstance(i);if(!e||!1===e._config.autoClose)continue;const n=t.composedPath(),s=n.includes(e._menu);if(n.includes(e._element)||"inside"===e._config.autoClose&&!s||"outside"===e._config.autoClose&&s)continue;if(e._menu.contains(t.target)&&("keyup"===t.type&&"Tab"===t.key||/input|select|option|textarea|form/i.test(t.target.tagName)))continue;const o={relatedTarget:e._element};"click"===t.type&&(o.clickEvent=t),e._completeHide(o)}}static dataApiKeydownHandler(t){const e=/input|textarea/i.test(t.target.tagName),i="Escape"===t.key,n=[Qe,Xe].includes(t.key);if(!n&&!i)return;if(e&&!i)return;t.preventDefault();const s=this.matches(Je)?this:z.prev(this,Je)[0]||z.next(this,Je)[0]||z.findOne(Je,t.delegateTarget.parentNode),o=ci.getOrCreateInstance(s);if(n)return t.stopPropagation(),o.show(),void o._selectMenuItem(t);o._isShown()&&(t.stopPropagation(),o.hide(),s.focus())}}P.on(document,Ue,Je,ci.dataApiKeydownHandler),P.on(document,Ue,ti,ci.dataApiKeydownHandler),P.on(document,Ye,ci.clearMenus),P.on(document,"keyup.bs.dropdown.data-api",ci.clearMenus),P.on(document,Ye,Je,(function(t){t.preventDefault(),ci.getOrCreateInstance(this).toggle()})),m(ci);const hi="show",di="mousedown.bs.backdrop",ui={className:"modal-backdrop",clickCallback:null,isAnimated:!1,isVisible:!0,rootElement:"body"},fi={className:"string",clickCallback:"(function|null)",isAnimated:"boolean",isVisible:"boolean",rootElement:"(element|string)"};class pi extends ${constructor(t){super(),this._config=this._getConfig(t),this._isAppended=!1,this._element=null}static get Default(){return ui}static get DefaultType(){return fi}static get NAME(){return"backdrop"}show(t){if(!this._config.isVisible)return void g(t);this._append();const e=this._getElement();this._config.isAnimated&&d(e),e.classList.add(hi),this._emulateAnimation((()=>{g(t)}))}hide(t){this._config.isVisible?(this._getElement().classList.remove(hi),this._emulateAnimation((()=>{this.dispose(),g(t)}))):g(t)}dispose(){this._isAppended&&(P.off(this._element,di),this._element.remove(),this._isAppended=!1)}_getElement(){if(!this._element){const t=document.createElement("div");t.className=this._config.className,this._config.isAnimated&&t.classList.add("fade"),this._element=t}return this._element}_configAfterMerge(t){return t.rootElement=r(t.rootElement),t}_append(){if(this._isAppended)return;const t=this._getElement();this._config.rootElement.append(t),P.on(t,di,(()=>{g(this._config.clickCallback)})),this._isAppended=!0}_emulateAnimation(t){_(t,this._getElement(),this._config.isAnimated)}}const mi=".bs.focustrap",gi="backward",_i={autofocus:!0,trapElement:null},bi={autofocus:"boolean",trapElement:"element"};class vi extends ${constructor(t){super(),this._config=this._getConfig(t),this._isActive=!1,this._lastTabNavDirection=null}static get Default(){return _i}static get DefaultType(){return bi}static get NAME(){return"focustrap"}activate(){this._isActive||(this._config.autofocus&&this._config.trapElement.focus(),P.off(document,mi),P.on(document,"focusin.bs.focustrap",(t=>this._handleFocusin(t))),P.on(document,"keydown.tab.bs.focustrap",(t=>this._handleKeydown(t))),this._isActive=!0)}deactivate(){this._isActive&&(this._isActive=!1,P.off(document,mi))}_handleFocusin(t){const{trapElement:e}=this._config;if(t.target===document||t.target===e||e.contains(t.target))return;const i=z.focusableChildren(e);0===i.length?e.focus():this._lastTabNavDirection===gi?i[i.length-1].focus():i[0].focus()}_handleKeydown(t){"Tab"===t.key&&(this._lastTabNavDirection=t.shiftKey?gi:"forward")}}const yi=".fixed-top, .fixed-bottom, .is-fixed, .sticky-top",wi=".sticky-top",Ai="padding-right",Ei="margin-right";class Ti{constructor(){this._element=document.body}getWidth(){const t=document.documentElement.clientWidth;return Math.abs(window.innerWidth-t)}hide(){const t=this.getWidth();this._disableOverFlow(),this._setElementAttributes(this._element,Ai,(e=>e+t)),this._setElementAttributes(yi,Ai,(e=>e+t)),this._setElementAttributes(wi,Ei,(e=>e-t))}reset(){this._resetElementAttributes(this._element,"overflow"),this._resetElementAttributes(this._element,Ai),this._resetElementAttributes(yi,Ai),this._resetElementAttributes(wi,Ei)}isOverflowing(){return this.getWidth()>0}_disableOverFlow(){this._saveInitialAttribute(this._element,"overflow"),this._element.style.overflow="hidden"}_setElementAttributes(t,e,i){const n=this.getWidth();this._applyManipulationCallback(t,(t=>{if(t!==this._element&&window.innerWidth>t.clientWidth+n)return;this._saveInitialAttribute(t,e);const s=window.getComputedStyle(t).getPropertyValue(e);t.style.setProperty(e,`${i(Number.parseFloat(s))}px`)}))}_saveInitialAttribute(t,e){const i=t.style.getPropertyValue(e);i&&H.setDataAttribute(t,e,i)}_resetElementAttributes(t,e){this._applyManipulationCallback(t,(t=>{const i=H.getDataAttribute(t,e);null!==i?(H.removeDataAttribute(t,e),t.style.setProperty(e,i)):t.style.removeProperty(e)}))}_applyManipulationCallback(t,e){if(o(t))e(t);else for(const i of z.find(t,this._element))e(i)}}const Ci=".bs.modal",Oi="hidden.bs.modal",xi="show.bs.modal",ki="modal-open",Li="show",Si="modal-static",Di={backdrop:!0,focus:!0,keyboard:!0},Ii={backdrop:"(boolean|string)",focus:"boolean",keyboard:"boolean"};class Ni extends W{constructor(t,e){super(t,e),this._dialog=z.findOne(".modal-dialog",this._element),this._backdrop=this._initializeBackDrop(),this._focustrap=this._initializeFocusTrap(),this._isShown=!1,this._isTransitioning=!1,this._scrollBar=new Ti,this._addEventListeners()}static get Default(){return Di}static get DefaultType(){return Ii}static get NAME(){return"modal"}toggle(t){return this._isShown?this.hide():this.show(t)}show(t){this._isShown||this._isTransitioning||P.trigger(this._element,xi,{relatedTarget:t}).defaultPrevented||(this._isShown=!0,this._isTransitioning=!0,this._scrollBar.hide(),document.body.classList.add(ki),this._adjustDialog(),this._backdrop.show((()=>this._showElement(t))))}hide(){this._isShown&&!this._isTransitioning&&(P.trigger(this._element,"hide.bs.modal").defaultPrevented||(this._isShown=!1,this._isTransitioning=!0,this._focustrap.deactivate(),this._element.classList.remove(Li),this._queueCallback((()=>this._hideModal()),this._element,this._isAnimated())))}dispose(){P.off(window,Ci),P.off(this._dialog,Ci),this._backdrop.dispose(),this._focustrap.deactivate(),super.dispose()}handleUpdate(){this._adjustDialog()}_initializeBackDrop(){return new pi({isVisible:Boolean(this._config.backdrop),isAnimated:this._isAnimated()})}_initializeFocusTrap(){return new vi({trapElement:this._element})}_showElement(t){document.body.contains(this._element)||document.body.append(this._element),this._element.style.display="block",this._element.removeAttribute("aria-hidden"),this._element.setAttribute("aria-modal",!0),this._element.setAttribute("role","dialog"),this._element.scrollTop=0;const e=z.findOne(".modal-body",this._dialog);e&&(e.scrollTop=0),d(this._element),this._element.classList.add(Li),this._queueCallback((()=>{this._config.focus&&this._focustrap.activate(),this._isTransitioning=!1,P.trigger(this._element,"shown.bs.modal",{relatedTarget:t})}),this._dialog,this._isAnimated())}_addEventListeners(){P.on(this._element,"keydown.dismiss.bs.modal",(t=>{"Escape"===t.key&&(this._config.keyboard?this.hide():this._triggerBackdropTransition())})),P.on(window,"resize.bs.modal",(()=>{this._isShown&&!this._isTransitioning&&this._adjustDialog()})),P.on(this._element,"mousedown.dismiss.bs.modal",(t=>{P.one(this._element,"click.dismiss.bs.modal",(e=>{this._element===t.target&&this._element===e.target&&("static"!==this._config.backdrop?this._config.backdrop&&this.hide():this._triggerBackdropTransition())}))}))}_hideModal(){this._element.style.display="none",this._element.setAttribute("aria-hidden",!0),this._element.removeAttribute("aria-modal"),this._element.removeAttribute("role"),this._isTransitioning=!1,this._backdrop.hide((()=>{document.body.classList.remove(ki),this._resetAdjustments(),this._scrollBar.reset(),P.trigger(this._element,Oi)}))}_isAnimated(){return this._element.classList.contains("fade")}_triggerBackdropTransition(){if(P.trigger(this._element,"hidePrevented.bs.modal").defaultPrevented)return;const t=this._element.scrollHeight>document.documentElement.clientHeight,e=this._element.style.overflowY;"hidden"===e||this._element.classList.contains(Si)||(t||(this._element.style.overflowY="hidden"),this._element.classList.add(Si),this._queueCallback((()=>{this._element.classList.remove(Si),this._queueCallback((()=>{this._element.style.overflowY=e}),this._dialog)}),this._dialog),this._element.focus())}_adjustDialog(){const t=this._element.scrollHeight>document.documentElement.clientHeight,e=this._scrollBar.getWidth(),i=e>0;if(i&&!t){const t=p()?"paddingLeft":"paddingRight";this._element.style[t]=`${e}px`}if(!i&&t){const t=p()?"paddingRight":"paddingLeft";this._element.style[t]=`${e}px`}}_resetAdjustments(){this._element.style.paddingLeft="",this._element.style.paddingRight=""}static jQueryInterface(t,e){return this.each((function(){const i=Ni.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===i[t])throw new TypeError(`No method named "${t}"`);i[t](e)}}))}}P.on(document,"click.bs.modal.data-api",'[data-bs-toggle="modal"]',(function(t){const e=z.getElementFromSelector(this);["A","AREA"].includes(this.tagName)&&t.preventDefault(),P.one(e,xi,(t=>{t.defaultPrevented||P.one(e,Oi,(()=>{a(this)&&this.focus()}))}));const i=z.findOne(".modal.show");i&&Ni.getInstance(i).hide(),Ni.getOrCreateInstance(e).toggle(this)})),R(Ni),m(Ni);const Pi="show",Mi="showing",ji="hiding",Fi=".offcanvas.show",Hi="hidePrevented.bs.offcanvas",$i="hidden.bs.offcanvas",Wi={backdrop:!0,keyboard:!0,scroll:!1},Bi={backdrop:"(boolean|string)",keyboard:"boolean",scroll:"boolean"};class zi extends W{constructor(t,e){super(t,e),this._isShown=!1,this._backdrop=this._initializeBackDrop(),this._focustrap=this._initializeFocusTrap(),this._addEventListeners()}static get Default(){return Wi}static get DefaultType(){return Bi}static get NAME(){return"offcanvas"}toggle(t){return this._isShown?this.hide():this.show(t)}show(t){this._isShown||P.trigger(this._element,"show.bs.offcanvas",{relatedTarget:t}).defaultPrevented||(this._isShown=!0,this._backdrop.show(),this._config.scroll||(new Ti).hide(),this._element.setAttribute("aria-modal",!0),this._element.setAttribute("role","dialog"),this._element.classList.add(Mi),this._queueCallback((()=>{this._config.scroll&&!this._config.backdrop||this._focustrap.activate(),this._element.classList.add(Pi),this._element.classList.remove(Mi),P.trigger(this._element,"shown.bs.offcanvas",{relatedTarget:t})}),this._element,!0))}hide(){this._isShown&&(P.trigger(this._element,"hide.bs.offcanvas").defaultPrevented||(this._focustrap.deactivate(),this._element.blur(),this._isShown=!1,this._element.classList.add(ji),this._backdrop.hide(),this._queueCallback((()=>{this._element.classList.remove(Pi,ji),this._element.removeAttribute("aria-modal"),this._element.removeAttribute("role"),this._config.scroll||(new Ti).reset(),P.trigger(this._element,$i)}),this._element,!0)))}dispose(){this._backdrop.dispose(),this._focustrap.deactivate(),super.dispose()}_initializeBackDrop(){const t=Boolean(this._config.backdrop);return new pi({className:"offcanvas-backdrop",isVisible:t,isAnimated:!0,rootElement:this._element.parentNode,clickCallback:t?()=>{"static"!==this._config.backdrop?this.hide():P.trigger(this._element,Hi)}:null})}_initializeFocusTrap(){return new vi({trapElement:this._element})}_addEventListeners(){P.on(this._element,"keydown.dismiss.bs.offcanvas",(t=>{"Escape"===t.key&&(this._config.keyboard?this.hide():P.trigger(this._element,Hi))}))}static jQueryInterface(t){return this.each((function(){const e=zi.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===e[t]||t.startsWith("_")||"constructor"===t)throw new TypeError(`No method named "${t}"`);e[t](this)}}))}}P.on(document,"click.bs.offcanvas.data-api",'[data-bs-toggle="offcanvas"]',(function(t){const e=z.getElementFromSelector(this);if(["A","AREA"].includes(this.tagName)&&t.preventDefault(),l(this))return;P.one(e,$i,(()=>{a(this)&&this.focus()}));const i=z.findOne(Fi);i&&i!==e&&zi.getInstance(i).hide(),zi.getOrCreateInstance(e).toggle(this)})),P.on(window,"load.bs.offcanvas.data-api",(()=>{for(const t of z.find(Fi))zi.getOrCreateInstance(t).show()})),P.on(window,"resize.bs.offcanvas",(()=>{for(const t of z.find("[aria-modal][class*=show][class*=offcanvas-]"))"fixed"!==getComputedStyle(t).position&&zi.getOrCreateInstance(t).hide()})),R(zi),m(zi);const Ri={"*":["class","dir","id","lang","role",/^aria-[\w-]*$/i],a:["target","href","title","rel"],area:[],b:[],br:[],col:[],code:[],div:[],em:[],hr:[],h1:[],h2:[],h3:[],h4:[],h5:[],h6:[],i:[],img:["src","srcset","alt","title","width","height"],li:[],ol:[],p:[],pre:[],s:[],small:[],span:[],sub:[],sup:[],strong:[],u:[],ul:[]},qi=new Set(["background","cite","href","itemtype","longdesc","poster","src","xlink:href"]),Vi=/^(?!javascript:)(?:[a-z0-9+.-]+:|[^&:/?#]*(?:[/?#]|$))/i,Ki=(t,e)=>{const i=t.nodeName.toLowerCase();return e.includes(i)?!qi.has(i)||Boolean(Vi.test(t.nodeValue)):e.filter((t=>t instanceof RegExp)).some((t=>t.test(i)))},Qi={allowList:Ri,content:{},extraClass:"",html:!1,sanitize:!0,sanitizeFn:null,template:"
    "},Xi={allowList:"object",content:"object",extraClass:"(string|function)",html:"boolean",sanitize:"boolean",sanitizeFn:"(null|function)",template:"string"},Yi={entry:"(string|element|function|null)",selector:"(string|element)"};class Ui extends ${constructor(t){super(),this._config=this._getConfig(t)}static get Default(){return Qi}static get DefaultType(){return Xi}static get NAME(){return"TemplateFactory"}getContent(){return Object.values(this._config.content).map((t=>this._resolvePossibleFunction(t))).filter(Boolean)}hasContent(){return this.getContent().length>0}changeContent(t){return this._checkContent(t),this._config.content={...this._config.content,...t},this}toHtml(){const t=document.createElement("div");t.innerHTML=this._maybeSanitize(this._config.template);for(const[e,i]of Object.entries(this._config.content))this._setContent(t,i,e);const e=t.children[0],i=this._resolvePossibleFunction(this._config.extraClass);return i&&e.classList.add(...i.split(" ")),e}_typeCheckConfig(t){super._typeCheckConfig(t),this._checkContent(t.content)}_checkContent(t){for(const[e,i]of Object.entries(t))super._typeCheckConfig({selector:e,entry:i},Yi)}_setContent(t,e,i){const n=z.findOne(i,t);n&&((e=this._resolvePossibleFunction(e))?o(e)?this._putElementInTemplate(r(e),n):this._config.html?n.innerHTML=this._maybeSanitize(e):n.textContent=e:n.remove())}_maybeSanitize(t){return this._config.sanitize?function(t,e,i){if(!t.length)return t;if(i&&"function"==typeof i)return i(t);const n=(new window.DOMParser).parseFromString(t,"text/html"),s=[].concat(...n.body.querySelectorAll("*"));for(const t of s){const i=t.nodeName.toLowerCase();if(!Object.keys(e).includes(i)){t.remove();continue}const n=[].concat(...t.attributes),s=[].concat(e["*"]||[],e[i]||[]);for(const e of n)Ki(e,s)||t.removeAttribute(e.nodeName)}return n.body.innerHTML}(t,this._config.allowList,this._config.sanitizeFn):t}_resolvePossibleFunction(t){return g(t,[this])}_putElementInTemplate(t,e){if(this._config.html)return e.innerHTML="",void e.append(t);e.textContent=t.textContent}}const Gi=new Set(["sanitize","allowList","sanitizeFn"]),Ji="fade",Zi="show",tn=".modal",en="hide.bs.modal",nn="hover",sn="focus",on={AUTO:"auto",TOP:"top",RIGHT:p()?"left":"right",BOTTOM:"bottom",LEFT:p()?"right":"left"},rn={allowList:Ri,animation:!0,boundary:"clippingParents",container:!1,customClass:"",delay:0,fallbackPlacements:["top","right","bottom","left"],html:!1,offset:[0,6],placement:"top",popperConfig:null,sanitize:!0,sanitizeFn:null,selector:!1,template:'',title:"",trigger:"hover focus"},an={allowList:"object",animation:"boolean",boundary:"(string|element)",container:"(string|element|boolean)",customClass:"(string|function)",delay:"(number|object)",fallbackPlacements:"array",html:"boolean",offset:"(array|string|function)",placement:"(string|function)",popperConfig:"(null|object|function)",sanitize:"boolean",sanitizeFn:"(null|function)",selector:"(string|boolean)",template:"string",title:"(string|element|function)",trigger:"string"};class ln extends W{constructor(t,e){if(void 0===Ve)throw new TypeError("Bootstrap's tooltips require Popper (https://popper.js.org)");super(t,e),this._isEnabled=!0,this._timeout=0,this._isHovered=null,this._activeTrigger={},this._popper=null,this._templateFactory=null,this._newContent=null,this.tip=null,this._setListeners(),this._config.selector||this._fixTitle()}static get Default(){return rn}static get DefaultType(){return an}static get NAME(){return"tooltip"}enable(){this._isEnabled=!0}disable(){this._isEnabled=!1}toggleEnabled(){this._isEnabled=!this._isEnabled}toggle(){this._isEnabled&&(this._activeTrigger.click=!this._activeTrigger.click,this._isShown()?this._leave():this._enter())}dispose(){clearTimeout(this._timeout),P.off(this._element.closest(tn),en,this._hideModalHandler),this._element.getAttribute("data-bs-original-title")&&this._element.setAttribute("title",this._element.getAttribute("data-bs-original-title")),this._disposePopper(),super.dispose()}show(){if("none"===this._element.style.display)throw new Error("Please use show on visible elements");if(!this._isWithContent()||!this._isEnabled)return;const t=P.trigger(this._element,this.constructor.eventName("show")),e=(c(this._element)||this._element.ownerDocument.documentElement).contains(this._element);if(t.defaultPrevented||!e)return;this._disposePopper();const i=this._getTipElement();this._element.setAttribute("aria-describedby",i.getAttribute("id"));const{container:n}=this._config;if(this._element.ownerDocument.documentElement.contains(this.tip)||(n.append(i),P.trigger(this._element,this.constructor.eventName("inserted"))),this._popper=this._createPopper(i),i.classList.add(Zi),"ontouchstart"in document.documentElement)for(const t of[].concat(...document.body.children))P.on(t,"mouseover",h);this._queueCallback((()=>{P.trigger(this._element,this.constructor.eventName("shown")),!1===this._isHovered&&this._leave(),this._isHovered=!1}),this.tip,this._isAnimated())}hide(){if(this._isShown()&&!P.trigger(this._element,this.constructor.eventName("hide")).defaultPrevented){if(this._getTipElement().classList.remove(Zi),"ontouchstart"in document.documentElement)for(const t of[].concat(...document.body.children))P.off(t,"mouseover",h);this._activeTrigger.click=!1,this._activeTrigger.focus=!1,this._activeTrigger.hover=!1,this._isHovered=null,this._queueCallback((()=>{this._isWithActiveTrigger()||(this._isHovered||this._disposePopper(),this._element.removeAttribute("aria-describedby"),P.trigger(this._element,this.constructor.eventName("hidden")))}),this.tip,this._isAnimated())}}update(){this._popper&&this._popper.update()}_isWithContent(){return Boolean(this._getTitle())}_getTipElement(){return this.tip||(this.tip=this._createTipElement(this._newContent||this._getContentForTemplate())),this.tip}_createTipElement(t){const e=this._getTemplateFactory(t).toHtml();if(!e)return null;e.classList.remove(Ji,Zi),e.classList.add(`bs-${this.constructor.NAME}-auto`);const i=(t=>{do{t+=Math.floor(1e6*Math.random())}while(document.getElementById(t));return t})(this.constructor.NAME).toString();return e.setAttribute("id",i),this._isAnimated()&&e.classList.add(Ji),e}setContent(t){this._newContent=t,this._isShown()&&(this._disposePopper(),this.show())}_getTemplateFactory(t){return this._templateFactory?this._templateFactory.changeContent(t):this._templateFactory=new Ui({...this._config,content:t,extraClass:this._resolvePossibleFunction(this._config.customClass)}),this._templateFactory}_getContentForTemplate(){return{".tooltip-inner":this._getTitle()}}_getTitle(){return this._resolvePossibleFunction(this._config.title)||this._element.getAttribute("data-bs-original-title")}_initializeOnDelegatedTarget(t){return this.constructor.getOrCreateInstance(t.delegateTarget,this._getDelegateConfig())}_isAnimated(){return this._config.animation||this.tip&&this.tip.classList.contains(Ji)}_isShown(){return this.tip&&this.tip.classList.contains(Zi)}_createPopper(t){const e=g(this._config.placement,[this,t,this._element]),i=on[e.toUpperCase()];return qe(this._element,t,this._getPopperConfig(i))}_getOffset(){const{offset:t}=this._config;return"string"==typeof t?t.split(",").map((t=>Number.parseInt(t,10))):"function"==typeof t?e=>t(e,this._element):t}_resolvePossibleFunction(t){return g(t,[this._element])}_getPopperConfig(t){const e={placement:t,modifiers:[{name:"flip",options:{fallbackPlacements:this._config.fallbackPlacements}},{name:"offset",options:{offset:this._getOffset()}},{name:"preventOverflow",options:{boundary:this._config.boundary}},{name:"arrow",options:{element:`.${this.constructor.NAME}-arrow`}},{name:"preSetPlacement",enabled:!0,phase:"beforeMain",fn:t=>{this._getTipElement().setAttribute("data-popper-placement",t.state.placement)}}]};return{...e,...g(this._config.popperConfig,[e])}}_setListeners(){const t=this._config.trigger.split(" ");for(const e of t)if("click"===e)P.on(this._element,this.constructor.eventName("click"),this._config.selector,(t=>{this._initializeOnDelegatedTarget(t).toggle()}));else if("manual"!==e){const t=e===nn?this.constructor.eventName("mouseenter"):this.constructor.eventName("focusin"),i=e===nn?this.constructor.eventName("mouseleave"):this.constructor.eventName("focusout");P.on(this._element,t,this._config.selector,(t=>{const e=this._initializeOnDelegatedTarget(t);e._activeTrigger["focusin"===t.type?sn:nn]=!0,e._enter()})),P.on(this._element,i,this._config.selector,(t=>{const e=this._initializeOnDelegatedTarget(t);e._activeTrigger["focusout"===t.type?sn:nn]=e._element.contains(t.relatedTarget),e._leave()}))}this._hideModalHandler=()=>{this._element&&this.hide()},P.on(this._element.closest(tn),en,this._hideModalHandler)}_fixTitle(){const t=this._element.getAttribute("title");t&&(this._element.getAttribute("aria-label")||this._element.textContent.trim()||this._element.setAttribute("aria-label",t),this._element.setAttribute("data-bs-original-title",t),this._element.removeAttribute("title"))}_enter(){this._isShown()||this._isHovered?this._isHovered=!0:(this._isHovered=!0,this._setTimeout((()=>{this._isHovered&&this.show()}),this._config.delay.show))}_leave(){this._isWithActiveTrigger()||(this._isHovered=!1,this._setTimeout((()=>{this._isHovered||this.hide()}),this._config.delay.hide))}_setTimeout(t,e){clearTimeout(this._timeout),this._timeout=setTimeout(t,e)}_isWithActiveTrigger(){return Object.values(this._activeTrigger).includes(!0)}_getConfig(t){const e=H.getDataAttributes(this._element);for(const t of Object.keys(e))Gi.has(t)&&delete e[t];return t={...e,..."object"==typeof t&&t?t:{}},t=this._mergeConfigObj(t),t=this._configAfterMerge(t),this._typeCheckConfig(t),t}_configAfterMerge(t){return t.container=!1===t.container?document.body:r(t.container),"number"==typeof t.delay&&(t.delay={show:t.delay,hide:t.delay}),"number"==typeof t.title&&(t.title=t.title.toString()),"number"==typeof t.content&&(t.content=t.content.toString()),t}_getDelegateConfig(){const t={};for(const[e,i]of Object.entries(this._config))this.constructor.Default[e]!==i&&(t[e]=i);return t.selector=!1,t.trigger="manual",t}_disposePopper(){this._popper&&(this._popper.destroy(),this._popper=null),this.tip&&(this.tip.remove(),this.tip=null)}static jQueryInterface(t){return this.each((function(){const e=ln.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t]()}}))}}m(ln);const cn={...ln.Default,content:"",offset:[0,8],placement:"right",template:'',trigger:"click"},hn={...ln.DefaultType,content:"(null|string|element|function)"};class dn extends ln{static get Default(){return cn}static get DefaultType(){return hn}static get NAME(){return"popover"}_isWithContent(){return this._getTitle()||this._getContent()}_getContentForTemplate(){return{".popover-header":this._getTitle(),".popover-body":this._getContent()}}_getContent(){return this._resolvePossibleFunction(this._config.content)}static jQueryInterface(t){return this.each((function(){const e=dn.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t]()}}))}}m(dn);const un="click.bs.scrollspy",fn="active",pn="[href]",mn={offset:null,rootMargin:"0px 0px -25%",smoothScroll:!1,target:null,threshold:[.1,.5,1]},gn={offset:"(number|null)",rootMargin:"string",smoothScroll:"boolean",target:"element",threshold:"array"};class _n extends W{constructor(t,e){super(t,e),this._targetLinks=new Map,this._observableSections=new Map,this._rootElement="visible"===getComputedStyle(this._element).overflowY?null:this._element,this._activeTarget=null,this._observer=null,this._previousScrollData={visibleEntryTop:0,parentScrollTop:0},this.refresh()}static get Default(){return mn}static get DefaultType(){return gn}static get NAME(){return"scrollspy"}refresh(){this._initializeTargetsAndObservables(),this._maybeEnableSmoothScroll(),this._observer?this._observer.disconnect():this._observer=this._getNewObserver();for(const t of this._observableSections.values())this._observer.observe(t)}dispose(){this._observer.disconnect(),super.dispose()}_configAfterMerge(t){return t.target=r(t.target)||document.body,t.rootMargin=t.offset?`${t.offset}px 0px -30%`:t.rootMargin,"string"==typeof t.threshold&&(t.threshold=t.threshold.split(",").map((t=>Number.parseFloat(t)))),t}_maybeEnableSmoothScroll(){this._config.smoothScroll&&(P.off(this._config.target,un),P.on(this._config.target,un,pn,(t=>{const e=this._observableSections.get(t.target.hash);if(e){t.preventDefault();const i=this._rootElement||window,n=e.offsetTop-this._element.offsetTop;if(i.scrollTo)return void i.scrollTo({top:n,behavior:"smooth"});i.scrollTop=n}})))}_getNewObserver(){const t={root:this._rootElement,threshold:this._config.threshold,rootMargin:this._config.rootMargin};return new IntersectionObserver((t=>this._observerCallback(t)),t)}_observerCallback(t){const e=t=>this._targetLinks.get(`#${t.target.id}`),i=t=>{this._previousScrollData.visibleEntryTop=t.target.offsetTop,this._process(e(t))},n=(this._rootElement||document.documentElement).scrollTop,s=n>=this._previousScrollData.parentScrollTop;this._previousScrollData.parentScrollTop=n;for(const o of t){if(!o.isIntersecting){this._activeTarget=null,this._clearActiveClass(e(o));continue}const t=o.target.offsetTop>=this._previousScrollData.visibleEntryTop;if(s&&t){if(i(o),!n)return}else s||t||i(o)}}_initializeTargetsAndObservables(){this._targetLinks=new Map,this._observableSections=new Map;const t=z.find(pn,this._config.target);for(const e of t){if(!e.hash||l(e))continue;const t=z.findOne(decodeURI(e.hash),this._element);a(t)&&(this._targetLinks.set(decodeURI(e.hash),e),this._observableSections.set(e.hash,t))}}_process(t){this._activeTarget!==t&&(this._clearActiveClass(this._config.target),this._activeTarget=t,t.classList.add(fn),this._activateParents(t),P.trigger(this._element,"activate.bs.scrollspy",{relatedTarget:t}))}_activateParents(t){if(t.classList.contains("dropdown-item"))z.findOne(".dropdown-toggle",t.closest(".dropdown")).classList.add(fn);else for(const e of z.parents(t,".nav, .list-group"))for(const t of z.prev(e,".nav-link, .nav-item > .nav-link, .list-group-item"))t.classList.add(fn)}_clearActiveClass(t){t.classList.remove(fn);const e=z.find("[href].active",t);for(const t of e)t.classList.remove(fn)}static jQueryInterface(t){return this.each((function(){const e=_n.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===e[t]||t.startsWith("_")||"constructor"===t)throw new TypeError(`No method named "${t}"`);e[t]()}}))}}P.on(window,"load.bs.scrollspy.data-api",(()=>{for(const t of z.find('[data-bs-spy="scroll"]'))_n.getOrCreateInstance(t)})),m(_n);const bn="ArrowLeft",vn="ArrowRight",yn="ArrowUp",wn="ArrowDown",An="active",En="fade",Tn="show",Cn='[data-bs-toggle="tab"], [data-bs-toggle="pill"], [data-bs-toggle="list"]',On=`.nav-link:not(.dropdown-toggle), .list-group-item:not(.dropdown-toggle), [role="tab"]:not(.dropdown-toggle), ${Cn}`;class xn extends W{constructor(t){super(t),this._parent=this._element.closest('.list-group, .nav, [role="tablist"]'),this._parent&&(this._setInitialAttributes(this._parent,this._getChildren()),P.on(this._element,"keydown.bs.tab",(t=>this._keydown(t))))}static get NAME(){return"tab"}show(){const t=this._element;if(this._elemIsActive(t))return;const e=this._getActiveElem(),i=e?P.trigger(e,"hide.bs.tab",{relatedTarget:t}):null;P.trigger(t,"show.bs.tab",{relatedTarget:e}).defaultPrevented||i&&i.defaultPrevented||(this._deactivate(e,t),this._activate(t,e))}_activate(t,e){t&&(t.classList.add(An),this._activate(z.getElementFromSelector(t)),this._queueCallback((()=>{"tab"===t.getAttribute("role")?(t.removeAttribute("tabindex"),t.setAttribute("aria-selected",!0),this._toggleDropDown(t,!0),P.trigger(t,"shown.bs.tab",{relatedTarget:e})):t.classList.add(Tn)}),t,t.classList.contains(En)))}_deactivate(t,e){t&&(t.classList.remove(An),t.blur(),this._deactivate(z.getElementFromSelector(t)),this._queueCallback((()=>{"tab"===t.getAttribute("role")?(t.setAttribute("aria-selected",!1),t.setAttribute("tabindex","-1"),this._toggleDropDown(t,!1),P.trigger(t,"hidden.bs.tab",{relatedTarget:e})):t.classList.remove(Tn)}),t,t.classList.contains(En)))}_keydown(t){if(![bn,vn,yn,wn].includes(t.key))return;t.stopPropagation(),t.preventDefault();const e=[vn,wn].includes(t.key),i=b(this._getChildren().filter((t=>!l(t))),t.target,e,!0);i&&(i.focus({preventScroll:!0}),xn.getOrCreateInstance(i).show())}_getChildren(){return z.find(On,this._parent)}_getActiveElem(){return this._getChildren().find((t=>this._elemIsActive(t)))||null}_setInitialAttributes(t,e){this._setAttributeIfNotExists(t,"role","tablist");for(const t of e)this._setInitialAttributesOnChild(t)}_setInitialAttributesOnChild(t){t=this._getInnerElement(t);const e=this._elemIsActive(t),i=this._getOuterElement(t);t.setAttribute("aria-selected",e),i!==t&&this._setAttributeIfNotExists(i,"role","presentation"),e||t.setAttribute("tabindex","-1"),this._setAttributeIfNotExists(t,"role","tab"),this._setInitialAttributesOnTargetPanel(t)}_setInitialAttributesOnTargetPanel(t){const e=z.getElementFromSelector(t);e&&(this._setAttributeIfNotExists(e,"role","tabpanel"),t.id&&this._setAttributeIfNotExists(e,"aria-labelledby",`${t.id}`))}_toggleDropDown(t,e){const i=this._getOuterElement(t);if(!i.classList.contains("dropdown"))return;const n=(t,n)=>{const s=z.findOne(t,i);s&&s.classList.toggle(n,e)};n(".dropdown-toggle",An),n(".dropdown-menu",Tn),i.setAttribute("aria-expanded",e)}_setAttributeIfNotExists(t,e,i){t.hasAttribute(e)||t.setAttribute(e,i)}_elemIsActive(t){return t.classList.contains(An)}_getInnerElement(t){return t.matches(On)?t:z.findOne(On,t)}_getOuterElement(t){return t.closest(".nav-item, .list-group-item")||t}static jQueryInterface(t){return this.each((function(){const e=xn.getOrCreateInstance(this);if("string"==typeof t){if(void 0===e[t]||t.startsWith("_")||"constructor"===t)throw new TypeError(`No method named "${t}"`);e[t]()}}))}}P.on(document,"click.bs.tab",Cn,(function(t){["A","AREA"].includes(this.tagName)&&t.preventDefault(),l(this)||xn.getOrCreateInstance(this).show()})),P.on(window,"load.bs.tab",(()=>{for(const t of z.find('.active[data-bs-toggle="tab"], .active[data-bs-toggle="pill"], .active[data-bs-toggle="list"]'))xn.getOrCreateInstance(t)})),m(xn);const kn="hide",Ln="show",Sn="showing",Dn={animation:"boolean",autohide:"boolean",delay:"number"},In={animation:!0,autohide:!0,delay:5e3};class Nn extends W{constructor(t,e){super(t,e),this._timeout=null,this._hasMouseInteraction=!1,this._hasKeyboardInteraction=!1,this._setListeners()}static get Default(){return In}static get DefaultType(){return Dn}static get NAME(){return"toast"}show(){P.trigger(this._element,"show.bs.toast").defaultPrevented||(this._clearTimeout(),this._config.animation&&this._element.classList.add("fade"),this._element.classList.remove(kn),d(this._element),this._element.classList.add(Ln,Sn),this._queueCallback((()=>{this._element.classList.remove(Sn),P.trigger(this._element,"shown.bs.toast"),this._maybeScheduleHide()}),this._element,this._config.animation))}hide(){this.isShown()&&(P.trigger(this._element,"hide.bs.toast").defaultPrevented||(this._element.classList.add(Sn),this._queueCallback((()=>{this._element.classList.add(kn),this._element.classList.remove(Sn,Ln),P.trigger(this._element,"hidden.bs.toast")}),this._element,this._config.animation)))}dispose(){this._clearTimeout(),this.isShown()&&this._element.classList.remove(Ln),super.dispose()}isShown(){return this._element.classList.contains(Ln)}_maybeScheduleHide(){this._config.autohide&&(this._hasMouseInteraction||this._hasKeyboardInteraction||(this._timeout=setTimeout((()=>{this.hide()}),this._config.delay)))}_onInteraction(t,e){switch(t.type){case"mouseover":case"mouseout":this._hasMouseInteraction=e;break;case"focusin":case"focusout":this._hasKeyboardInteraction=e}if(e)return void this._clearTimeout();const i=t.relatedTarget;this._element===i||this._element.contains(i)||this._maybeScheduleHide()}_setListeners(){P.on(this._element,"mouseover.bs.toast",(t=>this._onInteraction(t,!0))),P.on(this._element,"mouseout.bs.toast",(t=>this._onInteraction(t,!1))),P.on(this._element,"focusin.bs.toast",(t=>this._onInteraction(t,!0))),P.on(this._element,"focusout.bs.toast",(t=>this._onInteraction(t,!1)))}_clearTimeout(){clearTimeout(this._timeout),this._timeout=null}static jQueryInterface(t){return this.each((function(){const e=Nn.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t](this)}}))}}return R(Nn),m(Nn),{Alert:q,Button:K,Carousel:rt,Collapse:ft,Dropdown:ci,Modal:Ni,Offcanvas:zi,Popover:dn,ScrollSpy:_n,Tab:xn,Toast:Nn,Tooltip:ln}})); +//# sourceMappingURL=bootstrap.bundle.min.js.map +/*! jQuery v3.7.0 | (c) OpenJS Foundation and other contributors | jquery.org/license */ +!function(e,t){"use strict";"object"==typeof module&&"object"==typeof module.exports?module.exports=e.document?t(e,!0):function(e){if(!e.document)throw new Error("jQuery requires a window with a document");return t(e)}:t(e)}("undefined"!=typeof window?window:this,function(ie,e){"use strict";var oe=[],r=Object.getPrototypeOf,ae=oe.slice,g=oe.flat?function(e){return oe.flat.call(e)}:function(e){return oe.concat.apply([],e)},s=oe.push,se=oe.indexOf,n={},i=n.toString,ue=n.hasOwnProperty,o=ue.toString,a=o.call(Object),le={},v=function(e){return"function"==typeof e&&"number"!=typeof e.nodeType&&"function"!=typeof e.item},y=function(e){return null!=e&&e===e.window},C=ie.document,u={type:!0,src:!0,nonce:!0,noModule:!0};function m(e,t,n){var r,i,o=(n=n||C).createElement("script");if(o.text=e,t)for(r in u)(i=t[r]||t.getAttribute&&t.getAttribute(r))&&o.setAttribute(r,i);n.head.appendChild(o).parentNode.removeChild(o)}function x(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?n[i.call(e)]||"object":typeof e}var t="3.7.0",l=/HTML$/i,ce=function(e,t){return new ce.fn.init(e,t)};function c(e){var t=!!e&&"length"in e&&e.length,n=x(e);return!v(e)&&!y(e)&&("array"===n||0===t||"number"==typeof t&&0+~]|"+ge+")"+ge+"*"),x=new RegExp(ge+"|>"),j=new RegExp(g),A=new RegExp("^"+t+"$"),D={ID:new RegExp("^#("+t+")"),CLASS:new RegExp("^\\.("+t+")"),TAG:new RegExp("^("+t+"|[*])"),ATTR:new RegExp("^"+p),PSEUDO:new RegExp("^"+g),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+ge+"*(even|odd|(([+-]|)(\\d*)n|)"+ge+"*(?:([+-]|)"+ge+"*(\\d+)|))"+ge+"*\\)|)","i"),bool:new RegExp("^(?:"+f+")$","i"),needsContext:new RegExp("^"+ge+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+ge+"*((?:-\\d)?\\d*)"+ge+"*\\)|)(?=[^-]|$)","i")},N=/^(?:input|select|textarea|button)$/i,q=/^h\d$/i,L=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,H=/[+~]/,O=new RegExp("\\\\[\\da-fA-F]{1,6}"+ge+"?|\\\\([^\\r\\n\\f])","g"),P=function(e,t){var n="0x"+e.slice(1)-65536;return t||(n<0?String.fromCharCode(n+65536):String.fromCharCode(n>>10|55296,1023&n|56320))},R=function(){V()},M=J(function(e){return!0===e.disabled&&fe(e,"fieldset")},{dir:"parentNode",next:"legend"});try{k.apply(oe=ae.call(ye.childNodes),ye.childNodes),oe[ye.childNodes.length].nodeType}catch(e){k={apply:function(e,t){me.apply(e,ae.call(t))},call:function(e){me.apply(e,ae.call(arguments,1))}}}function I(t,e,n,r){var i,o,a,s,u,l,c,f=e&&e.ownerDocument,p=e?e.nodeType:9;if(n=n||[],"string"!=typeof t||!t||1!==p&&9!==p&&11!==p)return n;if(!r&&(V(e),e=e||T,C)){if(11!==p&&(u=L.exec(t)))if(i=u[1]){if(9===p){if(!(a=e.getElementById(i)))return n;if(a.id===i)return k.call(n,a),n}else if(f&&(a=f.getElementById(i))&&I.contains(e,a)&&a.id===i)return k.call(n,a),n}else{if(u[2])return k.apply(n,e.getElementsByTagName(t)),n;if((i=u[3])&&e.getElementsByClassName)return k.apply(n,e.getElementsByClassName(i)),n}if(!(h[t+" "]||d&&d.test(t))){if(c=t,f=e,1===p&&(x.test(t)||m.test(t))){(f=H.test(t)&&z(e.parentNode)||e)==e&&le.scope||((s=e.getAttribute("id"))?s=ce.escapeSelector(s):e.setAttribute("id",s=S)),o=(l=Y(t)).length;while(o--)l[o]=(s?"#"+s:":scope")+" "+Q(l[o]);c=l.join(",")}try{return k.apply(n,f.querySelectorAll(c)),n}catch(e){h(t,!0)}finally{s===S&&e.removeAttribute("id")}}}return re(t.replace(ve,"$1"),e,n,r)}function W(){var r=[];return function e(t,n){return r.push(t+" ")>b.cacheLength&&delete e[r.shift()],e[t+" "]=n}}function F(e){return e[S]=!0,e}function $(e){var t=T.createElement("fieldset");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function B(t){return function(e){return fe(e,"input")&&e.type===t}}function _(t){return function(e){return(fe(e,"input")||fe(e,"button"))&&e.type===t}}function X(t){return function(e){return"form"in e?e.parentNode&&!1===e.disabled?"label"in e?"label"in e.parentNode?e.parentNode.disabled===t:e.disabled===t:e.isDisabled===t||e.isDisabled!==!t&&M(e)===t:e.disabled===t:"label"in e&&e.disabled===t}}function U(a){return F(function(o){return o=+o,F(function(e,t){var n,r=a([],e.length,o),i=r.length;while(i--)e[n=r[i]]&&(e[n]=!(t[n]=e[n]))})})}function z(e){return e&&"undefined"!=typeof e.getElementsByTagName&&e}function V(e){var t,n=e?e.ownerDocument||e:ye;return n!=T&&9===n.nodeType&&n.documentElement&&(r=(T=n).documentElement,C=!ce.isXMLDoc(T),i=r.matches||r.webkitMatchesSelector||r.msMatchesSelector,ye!=T&&(t=T.defaultView)&&t.top!==t&&t.addEventListener("unload",R),le.getById=$(function(e){return r.appendChild(e).id=ce.expando,!T.getElementsByName||!T.getElementsByName(ce.expando).length}),le.disconnectedMatch=$(function(e){return i.call(e,"*")}),le.scope=$(function(){return T.querySelectorAll(":scope")}),le.cssHas=$(function(){try{return T.querySelector(":has(*,:jqfake)"),!1}catch(e){return!0}}),le.getById?(b.filter.ID=function(e){var t=e.replace(O,P);return function(e){return e.getAttribute("id")===t}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&C){var n=t.getElementById(e);return n?[n]:[]}}):(b.filter.ID=function(e){var n=e.replace(O,P);return function(e){var t="undefined"!=typeof e.getAttributeNode&&e.getAttributeNode("id");return t&&t.value===n}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&C){var n,r,i,o=t.getElementById(e);if(o){if((n=o.getAttributeNode("id"))&&n.value===e)return[o];i=t.getElementsByName(e),r=0;while(o=i[r++])if((n=o.getAttributeNode("id"))&&n.value===e)return[o]}return[]}}),b.find.TAG=function(e,t){return"undefined"!=typeof t.getElementsByTagName?t.getElementsByTagName(e):t.querySelectorAll(e)},b.find.CLASS=function(e,t){if("undefined"!=typeof t.getElementsByClassName&&C)return t.getElementsByClassName(e)},d=[],$(function(e){var t;r.appendChild(e).innerHTML="",e.querySelectorAll("[selected]").length||d.push("\\["+ge+"*(?:value|"+f+")"),e.querySelectorAll("[id~="+S+"-]").length||d.push("~="),e.querySelectorAll("a#"+S+"+*").length||d.push(".#.+[+~]"),e.querySelectorAll(":checked").length||d.push(":checked"),(t=T.createElement("input")).setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),r.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&d.push(":enabled",":disabled"),(t=T.createElement("input")).setAttribute("name",""),e.appendChild(t),e.querySelectorAll("[name='']").length||d.push("\\["+ge+"*name"+ge+"*="+ge+"*(?:''|\"\")")}),le.cssHas||d.push(":has"),d=d.length&&new RegExp(d.join("|")),l=function(e,t){if(e===t)return a=!0,0;var n=!e.compareDocumentPosition-!t.compareDocumentPosition;return n||(1&(n=(e.ownerDocument||e)==(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!le.sortDetached&&t.compareDocumentPosition(e)===n?e===T||e.ownerDocument==ye&&I.contains(ye,e)?-1:t===T||t.ownerDocument==ye&&I.contains(ye,t)?1:o?se.call(o,e)-se.call(o,t):0:4&n?-1:1)}),T}for(e in I.matches=function(e,t){return I(e,null,null,t)},I.matchesSelector=function(e,t){if(V(e),C&&!h[t+" "]&&(!d||!d.test(t)))try{var n=i.call(e,t);if(n||le.disconnectedMatch||e.document&&11!==e.document.nodeType)return n}catch(e){h(t,!0)}return 0":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(O,P),e[3]=(e[3]||e[4]||e[5]||"").replace(O,P),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||I.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&I.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return D.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&j.test(n)&&(t=Y(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(O,P).toLowerCase();return"*"===e?function(){return!0}:function(e){return fe(e,t)}},CLASS:function(e){var t=s[e+" "];return t||(t=new RegExp("(^|"+ge+")"+e+"("+ge+"|$)"))&&s(e,function(e){return t.test("string"==typeof e.className&&e.className||"undefined"!=typeof e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(n,r,i){return function(e){var t=I.attr(e,n);return null==t?"!="===r:!r||(t+="","="===r?t===i:"!="===r?t!==i:"^="===r?i&&0===t.indexOf(i):"*="===r?i&&-1:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;function T(e,n,r){return v(n)?ce.grep(e,function(e,t){return!!n.call(e,t,e)!==r}):n.nodeType?ce.grep(e,function(e){return e===n!==r}):"string"!=typeof n?ce.grep(e,function(e){return-1)[^>]*|#([\w-]+))$/;(ce.fn.init=function(e,t,n){var r,i;if(!e)return this;if(n=n||k,"string"==typeof e){if(!(r="<"===e[0]&&">"===e[e.length-1]&&3<=e.length?[null,e,null]:S.exec(e))||!r[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(r[1]){if(t=t instanceof ce?t[0]:t,ce.merge(this,ce.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:C,!0)),w.test(r[1])&&ce.isPlainObject(t))for(r in t)v(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}return(i=C.getElementById(r[2]))&&(this[0]=i,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):v(e)?void 0!==n.ready?n.ready(e):e(ce):ce.makeArray(e,this)}).prototype=ce.fn,k=ce(C);var E=/^(?:parents|prev(?:Until|All))/,j={children:!0,contents:!0,next:!0,prev:!0};function A(e,t){while((e=e[t])&&1!==e.nodeType);return e}ce.fn.extend({has:function(e){var t=ce(e,this),n=t.length;return this.filter(function(){for(var e=0;e\x20\t\r\n\f]*)/i,Ce=/^$|^module$|\/(?:java|ecma)script/i;xe=C.createDocumentFragment().appendChild(C.createElement("div")),(be=C.createElement("input")).setAttribute("type","radio"),be.setAttribute("checked","checked"),be.setAttribute("name","t"),xe.appendChild(be),le.checkClone=xe.cloneNode(!0).cloneNode(!0).lastChild.checked,xe.innerHTML="",le.noCloneChecked=!!xe.cloneNode(!0).lastChild.defaultValue,xe.innerHTML="",le.option=!!xe.lastChild;var ke={thead:[1,"","
    "],col:[2,"","
    "],tr:[2,"","
    "],td:[3,"","
    "],_default:[0,"",""]};function Se(e,t){var n;return n="undefined"!=typeof e.getElementsByTagName?e.getElementsByTagName(t||"*"):"undefined"!=typeof e.querySelectorAll?e.querySelectorAll(t||"*"):[],void 0===t||t&&fe(e,t)?ce.merge([e],n):n}function Ee(e,t){for(var n=0,r=e.length;n",""]);var je=/<|&#?\w+;/;function Ae(e,t,n,r,i){for(var o,a,s,u,l,c,f=t.createDocumentFragment(),p=[],d=0,h=e.length;d\s*$/g;function Me(e,t){return fe(e,"table")&&fe(11!==t.nodeType?t:t.firstChild,"tr")&&ce(e).children("tbody")[0]||e}function Ie(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function We(e){return"true/"===(e.type||"").slice(0,5)?e.type=e.type.slice(5):e.removeAttribute("type"),e}function Fe(e,t){var n,r,i,o,a,s;if(1===t.nodeType){if(_.hasData(e)&&(s=_.get(e).events))for(i in _.remove(t,"handle events"),s)for(n=0,r=s[i].length;n").attr(n.scriptAttrs||{}).prop({charset:n.scriptCharset,src:n.url}).on("load error",i=function(e){r.remove(),i=null,e&&t("error"===e.type?404:200,e.type)}),C.head.appendChild(r[0])},abort:function(){i&&i()}}});var Jt,Kt=[],Zt=/(=)\?(?=&|$)|\?\?/;ce.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=Kt.pop()||ce.expando+"_"+jt.guid++;return this[e]=!0,e}}),ce.ajaxPrefilter("json jsonp",function(e,t,n){var r,i,o,a=!1!==e.jsonp&&(Zt.test(e.url)?"url":"string"==typeof e.data&&0===(e.contentType||"").indexOf("application/x-www-form-urlencoded")&&Zt.test(e.data)&&"data");if(a||"jsonp"===e.dataTypes[0])return r=e.jsonpCallback=v(e.jsonpCallback)?e.jsonpCallback():e.jsonpCallback,a?e[a]=e[a].replace(Zt,"$1"+r):!1!==e.jsonp&&(e.url+=(At.test(e.url)?"&":"?")+e.jsonp+"="+r),e.converters["script json"]=function(){return o||ce.error(r+" was not called"),o[0]},e.dataTypes[0]="json",i=ie[r],ie[r]=function(){o=arguments},n.always(function(){void 0===i?ce(ie).removeProp(r):ie[r]=i,e[r]&&(e.jsonpCallback=t.jsonpCallback,Kt.push(r)),o&&v(i)&&i(o[0]),o=i=void 0}),"script"}),le.createHTMLDocument=((Jt=C.implementation.createHTMLDocument("").body).innerHTML="
    ",2===Jt.childNodes.length),ce.parseHTML=function(e,t,n){return"string"!=typeof e?[]:("boolean"==typeof t&&(n=t,t=!1),t||(le.createHTMLDocument?((r=(t=C.implementation.createHTMLDocument("")).createElement("base")).href=C.location.href,t.head.appendChild(r)):t=C),o=!n&&[],(i=w.exec(e))?[t.createElement(i[1])]:(i=Ae([e],t,o),o&&o.length&&ce(o).remove(),ce.merge([],i.childNodes)));var r,i,o},ce.fn.load=function(e,t,n){var r,i,o,a=this,s=e.indexOf(" ");return-1").append(ce.parseHTML(e)).find(r):e)}).always(n&&function(e,t){a.each(function(){n.apply(this,o||[e.responseText,t,e])})}),this},ce.expr.pseudos.animated=function(t){return ce.grep(ce.timers,function(e){return t===e.elem}).length},ce.offset={setOffset:function(e,t,n){var r,i,o,a,s,u,l=ce.css(e,"position"),c=ce(e),f={};"static"===l&&(e.style.position="relative"),s=c.offset(),o=ce.css(e,"top"),u=ce.css(e,"left"),("absolute"===l||"fixed"===l)&&-1<(o+u).indexOf("auto")?(a=(r=c.position()).top,i=r.left):(a=parseFloat(o)||0,i=parseFloat(u)||0),v(t)&&(t=t.call(e,n,ce.extend({},s))),null!=t.top&&(f.top=t.top-s.top+a),null!=t.left&&(f.left=t.left-s.left+i),"using"in t?t.using.call(e,f):c.css(f)}},ce.fn.extend({offset:function(t){if(arguments.length)return void 0===t?this:this.each(function(e){ce.offset.setOffset(this,t,e)});var e,n,r=this[0];return r?r.getClientRects().length?(e=r.getBoundingClientRect(),n=r.ownerDocument.defaultView,{top:e.top+n.pageYOffset,left:e.left+n.pageXOffset}):{top:0,left:0}:void 0},position:function(){if(this[0]){var e,t,n,r=this[0],i={top:0,left:0};if("fixed"===ce.css(r,"position"))t=r.getBoundingClientRect();else{t=this.offset(),n=r.ownerDocument,e=r.offsetParent||n.documentElement;while(e&&(e===n.body||e===n.documentElement)&&"static"===ce.css(e,"position"))e=e.parentNode;e&&e!==r&&1===e.nodeType&&((i=ce(e).offset()).top+=ce.css(e,"borderTopWidth",!0),i.left+=ce.css(e,"borderLeftWidth",!0))}return{top:t.top-i.top-ce.css(r,"marginTop",!0),left:t.left-i.left-ce.css(r,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){var e=this.offsetParent;while(e&&"static"===ce.css(e,"position"))e=e.offsetParent;return e||J})}}),ce.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(t,i){var o="pageYOffset"===i;ce.fn[t]=function(e){return R(this,function(e,t,n){var r;if(y(e)?r=e:9===e.nodeType&&(r=e.defaultView),void 0===n)return r?r[i]:e[t];r?r.scrollTo(o?r.pageXOffset:n,o?n:r.pageYOffset):e[t]=n},t,e,arguments.length)}}),ce.each(["top","left"],function(e,n){ce.cssHooks[n]=Ye(le.pixelPosition,function(e,t){if(t)return t=Ge(e,n),_e.test(t)?ce(e).position()[n]+"px":t})}),ce.each({Height:"height",Width:"width"},function(a,s){ce.each({padding:"inner"+a,content:s,"":"outer"+a},function(r,o){ce.fn[o]=function(e,t){var n=arguments.length&&(r||"boolean"!=typeof e),i=r||(!0===e||!0===t?"margin":"border");return R(this,function(e,t,n){var r;return y(e)?0===o.indexOf("outer")?e["inner"+a]:e.document.documentElement["client"+a]:9===e.nodeType?(r=e.documentElement,Math.max(e.body["scroll"+a],r["scroll"+a],e.body["offset"+a],r["offset"+a],r["client"+a])):void 0===n?ce.css(e,t,i):ce.style(e,t,n,i)},s,n?e:void 0,n)}})}),ce.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){ce.fn[t]=function(e){return this.on(t,e)}}),ce.fn.extend({bind:function(e,t,n){return this.on(e,null,t,n)},unbind:function(e,t){return this.off(e,null,t)},delegate:function(e,t,n,r){return this.on(t,e,n,r)},undelegate:function(e,t,n){return 1===arguments.length?this.off(e,"**"):this.off(t,e||"**",n)},hover:function(e,t){return this.mouseenter(e).mouseleave(t||e)}}),ce.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "),function(e,n){ce.fn[n]=function(e,t){return 00&&r[0]<4?1:+(r[0]+r[1])),!n&&_&&(!(r=_.match(/Edge\/(\d+)/))||r[1]>=74)&&(r=_.match(/Chrome\/(\d+)/))&&(n=+r[1]);var N=n,W=!!Object.getOwnPropertySymbols&&!u((function(){var t=Symbol();return!String(t)||!(Object(t)instanceof Symbol)||!Symbol.sham&&N&&N<41})),I=W&&!Symbol.sham&&"symbol"==typeof Symbol.iterator,P=l("wks"),B=o.Symbol,D=B&&B.for,F=I?B:B&&B.withoutSetter||k,V=function(t){if(!w(P,t)||!W&&"string"!=typeof P[t]){var e="Symbol."+t;W&&w(B,t)?P[t]=B[t]:P[t]=I&&D?D(e):F(e)}return P[t]},$={};$[V("toStringTag")]="z";var X="[object z]"===String($),H=!u((function(){return 7!=Object.defineProperty({},1,{get:function(){return 7}})[1]})),q=function(t){return"object"==typeof t?null!==t:T(t)},Y=o.document,G=q(Y)&&q(Y.createElement),U=function(t){return G?Y.createElement(t):{}},K=!H&&!u((function(){return 7!=Object.defineProperty(U("div"),"a",{get:function(){return 7}}).a})),J=H&&u((function(){return 42!=Object.defineProperty((function(){}),"prototype",{value:42,writable:!1}).prototype})),Q=o.String,Z=o.TypeError,tt=function(t){if(q(t))return t;throw Z(Q(t)+" is not an object")},et=Function.prototype.call,rt=f?et.bind(et):function(){return et.apply(et,arguments)},nt=g({}.isPrototypeOf),it=o.Object,ot=I?function(t){return"symbol"==typeof t}:function(t){var e=R("Symbol");return T(e)&&nt(e.prototype,it(t))},st=o.String,at=function(t){try{return st(t)}catch(t){return"Object"}},ct=o.TypeError,lt=function(t){if(T(t))return t;throw ct(at(t)+" is not a function")},ut=function(t,e){var r=t[e];return null==r?void 0:lt(r)},ft=o.TypeError,ht=o.TypeError,dt=V("toPrimitive"),pt=function(t,e){if(!q(t)||ot(t))return t;var r,n=ut(t,dt);if(n){if(void 0===e&&(e="default"),r=rt(n,t,e),!q(r)||ot(r))return r;throw ht("Can't convert object to primitive value")}return void 0===e&&(e="number"),function(t,e){var r,n;if("string"===e&&T(r=t.toString)&&!q(n=rt(r,t)))return n;if(T(r=t.valueOf)&&!q(n=rt(r,t)))return n;if("string"!==e&&T(r=t.toString)&&!q(n=rt(r,t)))return n;throw ft("Can't convert object to primitive value")}(t,e)},vt=function(t){var e=pt(t,"string");return ot(e)?e:e+""},gt=o.TypeError,bt=Object.defineProperty,yt=Object.getOwnPropertyDescriptor,mt={f:H?J?function(t,e,r){if(tt(t),e=vt(e),tt(r),"function"==typeof t&&"prototype"===e&&"value"in r&&"writable"in r&&!r.writable){var n=yt(t,e);n&&n.writable&&(t[e]=r.value,r={configurable:"configurable"in r?r.configurable:n.configurable,enumerable:"enumerable"in r?r.enumerable:n.enumerable,writable:!1})}return bt(t,e,r)}:bt:function(t,e,r){if(tt(t),e=vt(e),tt(r),K)try{return bt(t,e,r)}catch(t){}if("get"in r||"set"in r)throw gt("Accessors not supported");return"value"in r&&(t[e]=r.value),t}},xt=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}},Et=H?function(t,e,r){return mt.f(t,e,xt(1,r))}:function(t,e,r){return t[e]=r,t},wt=Function.prototype,Ot=H&&Object.getOwnPropertyDescriptor,St=w(wt,"name"),At={EXISTS:St,PROPER:St&&"something"===function(){}.name,CONFIGURABLE:St&&(!H||H&&Ot(wt,"name").configurable)},kt=g(Function.toString);T(c.inspectSource)||(c.inspectSource=function(t){return kt(t)});var Tt,Lt,Rt,_t=c.inspectSource,jt=o.WeakMap,zt=T(jt)&&/native code/.test(_t(jt)),Mt=l("keys"),Ct=function(t){return Mt[t]||(Mt[t]=k(t))},Nt={},Wt=o.TypeError,It=o.WeakMap;if(zt||c.state){var Pt=c.state||(c.state=new It),Bt=g(Pt.get),Dt=g(Pt.has),Ft=g(Pt.set);Tt=function(t,e){if(Dt(Pt,t))throw new Wt("Object already initialized");return e.facade=t,Ft(Pt,t,e),e},Lt=function(t){return Bt(Pt,t)||{}},Rt=function(t){return Dt(Pt,t)}}else{var Vt=Ct("state");Nt[Vt]=!0,Tt=function(t,e){if(w(t,Vt))throw new Wt("Object already initialized");return e.facade=t,Et(t,Vt,e),e},Lt=function(t){return w(t,Vt)?t[Vt]:{}},Rt=function(t){return w(t,Vt)}}var $t={set:Tt,get:Lt,has:Rt,enforce:function(t){return Rt(t)?Lt(t):Tt(t,{})},getterFor:function(t){return function(e){var r;if(!q(e)||(r=Lt(e)).type!==t)throw Wt("Incompatible receiver, "+t+" required");return r}}},Xt=e((function(t){var e=At.CONFIGURABLE,r=$t.enforce,n=$t.get,i=Object.defineProperty,o=H&&!u((function(){return 8!==i((function(){}),"length",{value:8}).length})),s=String(String).split("String"),a=t.exports=function(t,n,a){if("Symbol("===String(n).slice(0,7)&&(n="["+String(n).replace(/^Symbol\(([^)]*)\)/,"$1")+"]"),a&&a.getter&&(n="get "+n),a&&a.setter&&(n="set "+n),(!w(t,"name")||e&&t.name!==n)&&i(t,"name",{value:n,configurable:!0}),o&&a&&w(a,"arity")&&t.length!==a.arity&&i(t,"length",{value:a.arity}),a&&w(a,"constructor")&&a.constructor){if(H)try{i(t,"prototype",{writable:!1})}catch(t){}}else t.prototype=void 0;var c=r(t);return w(c,"source")||(c.source=s.join("string"==typeof n?n:"")),t};Function.prototype.toString=a((function(){return T(this)&&n(this).source||_t(this)}),"toString")})),Ht=function(t,e,r,n){n||(n={});var i=n.enumerable,o=void 0!==n.name?n.name:e;return T(r)&&Xt(r,o,n),n.global?i?t[e]=r:a(e,r):(n.unsafe?t[e]&&(i=!0):delete t[e],i?t[e]=r:Et(t,e,r)),t},qt=g({}.toString),Yt=g("".slice),Gt=function(t){return Yt(qt(t),8,-1)},Ut=V("toStringTag"),Kt=o.Object,Jt="Arguments"==Gt(function(){return arguments}()),Qt=X?Gt:function(t){var e,r,n;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(r=function(t,e){try{return t[e]}catch(t){}}(e=Kt(t),Ut))?r:Jt?Gt(e):"Object"==(n=Gt(e))&&T(e.callee)?"Arguments":n},Zt=X?{}.toString:function(){return"[object "+Qt(this)+"]"};X||Ht(Object.prototype,"toString",Zt,{unsafe:!0});var te={CSSRuleList:0,CSSStyleDeclaration:0,CSSValueList:0,ClientRectList:0,DOMRectList:0,DOMStringList:0,DOMTokenList:1,DataTransferItemList:0,FileList:0,HTMLAllCollection:0,HTMLCollection:0,HTMLFormElement:0,HTMLSelectElement:0,MediaList:0,MimeTypeArray:0,NamedNodeMap:0,NodeList:1,PaintRequestList:0,Plugin:0,PluginArray:0,SVGLengthList:0,SVGNumberList:0,SVGPathSegList:0,SVGPointList:0,SVGStringList:0,SVGTransformList:0,SourceBufferList:0,StyleSheetList:0,TextTrackCueList:0,TextTrackList:0,TouchList:0},ee=U("span").classList,re=ee&&ee.constructor&&ee.constructor.prototype,ne=re===Object.prototype?void 0:re,ie=g(g.bind),oe=function(t,e){return lt(t),void 0===e?t:f?ie(t,e):function(){return t.apply(e,arguments)}},se=o.Object,ae=g("".split),ce=u((function(){return!se("z").propertyIsEnumerable(0)}))?function(t){return"String"==Gt(t)?ae(t,""):se(t)}:se,le=Math.ceil,ue=Math.floor,fe=Math.trunc||function(t){var e=+t;return(e>0?ue:le)(e)},he=function(t){var e=+t;return e!=e||0===e?0:fe(e)},de=Math.min,pe=function(t){return t>0?de(he(t),9007199254740991):0},ve=function(t){return pe(t.length)},ge=Array.isArray||function(t){return"Array"==Gt(t)},be=function(){},ye=[],me=R("Reflect","construct"),xe=/^\s*(?:class|function)\b/,Ee=g(xe.exec),we=!xe.exec(be),Oe=function(t){if(!T(t))return!1;try{return me(be,ye,t),!0}catch(t){return!1}},Se=function(t){if(!T(t))return!1;switch(Qt(t)){case"AsyncFunction":case"GeneratorFunction":case"AsyncGeneratorFunction":return!1}try{return we||!!Ee(xe,_t(t))}catch(t){return!0}};Se.sham=!0;var Ae=!me||u((function(){var t;return Oe(Oe.call)||!Oe(Object)||!Oe((function(){t=!0}))||t}))?Se:Oe,ke=V("species"),Te=o.Array,Le=function(t,e){return new(function(t){var e;return ge(t)&&(e=t.constructor,(Ae(e)&&(e===Te||ge(e.prototype))||q(e)&&null===(e=e[ke]))&&(e=void 0)),void 0===e?Te:e}(t))(0===e?0:e)},Re=g([].push),_e=function(t){var e=1==t,r=2==t,n=3==t,i=4==t,o=6==t,s=7==t,a=5==t||o;return function(c,l,u,f){for(var h,d,p=x(c),v=ce(p),g=oe(l,u),b=ve(v),y=0,m=f||Le,E=e?m(c,b):r||s?m(c,0):void 0;b>y;y++)if((a||y in v)&&(d=g(h=v[y],y,p),t))if(e)E[y]=d;else if(d)switch(t){case 3:return!0;case 5:return h;case 6:return y;case 2:Re(E,h)}else switch(t){case 4:return!1;case 7:Re(E,h)}return o?-1:n||i?i:E}},je={forEach:_e(0),map:_e(1),filter:_e(2),some:_e(3),every:_e(4),find:_e(5),findIndex:_e(6),filterReject:_e(7)},ze=function(t,e){var r=[][t];return!!r&&u((function(){r.call(null,e||function(){return 1},1)}))},Me=je.forEach,Ce=ze("forEach")?[].forEach:function(t){return Me(this,t,arguments.length>1?arguments[1]:void 0)},Ne=function(t){if(t&&t.forEach!==Ce)try{Et(t,"forEach",Ce)}catch(e){t.forEach=Ce}};for(var We in te)te[We]&&Ne(o[We]&&o[We].prototype);Ne(ne);var Ie=!("undefined"==typeof window||!window.document||!window.document.createElement),Pe={}.propertyIsEnumerable,Be=Object.getOwnPropertyDescriptor,De={f:Be&&!Pe.call({1:2},1)?function(t){var e=Be(this,t);return!!e&&e.enumerable}:Pe},Fe=function(t){return ce(y(t))},Ve=Object.getOwnPropertyDescriptor,$e={f:H?Ve:function(t,e){if(t=Fe(t),e=vt(e),K)try{return Ve(t,e)}catch(t){}if(w(t,e))return xt(!rt(De.f,t,e),t[e])}},Xe=Math.max,He=Math.min,qe=function(t,e){var r=he(t);return r<0?Xe(r+e,0):He(r,e)},Ye=function(t){return function(e,r,n){var i,o=Fe(e),s=ve(o),a=qe(n,s);if(t&&r!=r){for(;s>a;)if((i=o[a++])!=i)return!0}else for(;s>a;a++)if((t||a in o)&&o[a]===r)return t||a||0;return!t&&-1}},Ge={includes:Ye(!0),indexOf:Ye(!1)}.indexOf,Ue=g([].push),Ke=function(t,e){var r,n=Fe(t),i=0,o=[];for(r in n)!w(Nt,r)&&w(n,r)&&Ue(o,r);for(;e.length>i;)w(n,r=e[i++])&&(~Ge(o,r)||Ue(o,r));return o},Je=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],Qe=Je.concat("length","prototype"),Ze={f:Object.getOwnPropertyNames||function(t){return Ke(t,Qe)}},tr={f:Object.getOwnPropertySymbols},er=g([].concat),rr=R("Reflect","ownKeys")||function(t){var e=Ze.f(tt(t)),r=tr.f;return r?er(e,r(t)):e},nr=function(t,e,r){for(var n=rr(e),i=mt.f,o=$e.f,s=0;s>>0||(kr(Ar,r)?16:10))}:wr;hr({global:!0,forced:parseInt!=Tr},{parseInt:Tr});var Lr=Object.keys||function(t){return Ke(t,Je)},Rr=Object.assign,_r=Object.defineProperty,jr=g([].concat),zr=!Rr||u((function(){if(H&&1!==Rr({b:1},Rr(_r({},"a",{enumerable:!0,get:function(){_r(this,"b",{value:3,enumerable:!1})}}),{b:2})).b)return!0;var t={},e={},r=Symbol();return t[r]=7,"abcdefghijklmnopqrst".split("").forEach((function(t){e[t]=t})),7!=Rr({},t)[r]||"abcdefghijklmnopqrst"!=Lr(Rr({},e)).join("")}))?function(t,e){for(var r=x(t),n=arguments.length,i=1,o=tr.f,s=De.f;n>i;)for(var a,c=ce(arguments[i++]),l=o?jr(Lr(c),o(c)):Lr(c),u=l.length,f=0;u>f;)a=l[f++],H&&!rt(s,c,a)||(r[a]=c[a]);return r}:Rr;hr({target:"Object",stat:!0,arity:2,forced:Object.assign!==zr},{assign:zr});var Mr,Cr=V("species"),Nr=je.filter,Wr=(Mr="filter",N>=51||!u((function(){var t=[];return(t.constructor={})[Cr]=function(){return{foo:1}},1!==t[Mr](Boolean).foo})));hr({target:"Array",proto:!0,forced:!Wr},{filter:function(t){return Nr(this,t,arguments.length>1?arguments[1]:void 0)}});var Ir,Pr={f:H&&!J?Object.defineProperties:function(t,e){tt(t);for(var r,n=Fe(e),i=Lr(e),o=i.length,s=0;o>s;)mt.f(t,r=i[s++],n[r]);return t}},Br=R("document","documentElement"),Dr=Ct("IE_PROTO"),Fr=function(){},Vr=function(t){return" + + + + + + + + + + +
    + +

    Configuration Builder

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

    Your Date Range Picker

    +
    + +
    +
    + +
    +

    Configuration

    + +
    + +
    +
    + +
    + +
    + + + + + + + diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/drp.png b/pxy_dashboard/static/dashboard/vendor/daterangepicker/drp.png new file mode 100644 index 0000000..a76bdf3 Binary files /dev/null and b/pxy_dashboard/static/dashboard/vendor/daterangepicker/drp.png differ diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/example/__init__.py b/pxy_dashboard/static/dashboard/vendor/daterangepicker/example/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/index.html b/pxy_dashboard/static/dashboard/vendor/daterangepicker/index.html new file mode 100644 index 0000000..4621257 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/index.html @@ -0,0 +1,744 @@ + + + + + + + + Date Range Picker — JavaScript Date & Time Picker Library + + + + + + + + + + + + + + + + + + + + + + + + +
    +
    +
    +
    + +

    Date Range Picker

    +

    + A JavaScript component for choosing date ranges, + dates and times. +

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

    Originally created for reports at Improvely, the Date Range Picker can be attached to any webpage element to pop up two calendars for selecting dates, times, or predefined ranges like "Last 30 Days".

    + + + +

    Getting Started

    + +

    + To get started, include jQuery, Moment.js and Date Range Picker's files in your webpage: +

    + + + +

    + Then attach a date range picker to whatever you want to trigger it: +

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

    + You can customize Date Range Picker with options, and get notified when the user chooses new dates by providing a callback function. +

    + +

    Examples

    + + +

    Simple Date Range Picker With a Callback

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

    Date Range Picker With Times

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

    Single Date Picker

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

    Predefined Date Ranges

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

    Input Initially Empty

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

    Options

    + +
      +
    • + startDate (Date or string) The beginning date of the initially selected date range. If you provide a string, it must match the date format string set in your locale setting. +
    • +
    • + endDate: (Date or string) The end date of the initially selected date range. +
    • +
    • + minDate: (Date or string) The earliest date a user may select. +
    • +
    • + maxDate: (Date or string) The latest date a user may select. +
    • +
    • + maxSpan: (object) The maximum span between the selected start and end dates. Check off maxSpan in the configuration generator for an example of how to use this. You can provide any object the moment library would let you add to a date. +
    • +
    • + showDropdowns: (true/false) Show year and month select boxes above calendars to jump to a specific month and year. +
    • +
    • + minYear: (number) The minimum year shown in the dropdowns when showDropdowns is set to true. +
    • +
    • + maxYear: (number) The maximum year shown in the dropdowns when showDropdowns is set to true. +
    • +
    • + showWeekNumbers: (true/false) Show localized week numbers at the start of each week on the calendars. +
    • +
    • + showISOWeekNumbers: (true/false) Show ISO week numbers at the start of each week on the calendars. +
    • +
    • + timePicker: (true/false) Adds select boxes to choose times in addition to dates. +
    • +
    • + timePickerIncrement: (number) Increment of the minutes selection list for times (i.e. 30 to allow only selection of times ending in 0 or 30). +
    • +
    • + timePicker24Hour: (true/false) Use 24-hour instead of 12-hour times, removing the AM/PM selection. +
    • +
    • + timePickerSeconds: (true/false) Show seconds in the timePicker. +
    • +
    • + ranges: (object) Set predefined date ranges the user can select from. Each key is the label for the range, and its value an array with two dates representing the bounds of the range. Click ranges in the configuration generator for examples. +
    • +
    • + showCustomRangeLabel: (true/false) Displays "Custom Range" at + the end of the list of predefined ranges, when the ranges option is used. + This option will be highlighted whenever the current date range selection does not match one of the predefined ranges. Clicking it will display the calendars to select a new range. +
    • +
    • + alwaysShowCalendars: (true/false) Normally, if you use the ranges option to specify pre-defined date ranges, calendars for choosing a custom date range are not shown until the user clicks "Custom Range". When this option is set to true, the calendars for choosing a custom date range are always shown instead. +
    • +
    • + opens: ('left'/'right'/'center') Whether the picker appears aligned to the left, to the right, or centered under the HTML element it's attached to. +
    • +
    • + drops: ('down'/'up') Whether the picker appears below (default) or above the HTML element it's attached to. +
    • +
    • + buttonClasses: (string) CSS class names that will be added to both the apply and cancel buttons. +
    • +
    • + applyButtonClasses: (string) CSS class names that will be added only to the apply button. +
    • +
    • + cancelButtonClasses: (string) CSS class names that will be added only to the cancel button. +
    • +
    • + locale: (object) Allows you to provide localized strings for buttons and labels, customize the date format, and change the first day of week for the calendars. + Check off locale in the configuration generator to see how + to customize these options. +
    • +
    • + singleDatePicker: (true/false) Show only a single calendar to choose one date, instead of a range picker with two calendars. The start and end dates provided to your callback will be the same single date chosen. +
    • +
    • + autoApply: (true/false) Hide the apply and cancel buttons, and automatically apply a new date range as soon as two dates are clicked. +
    • +
    • + linkedCalendars: (true/false) When enabled, the two calendars displayed will always be for two sequential months (i.e. January and February), and both will be advanced when clicking the left or right arrows above the calendars. When disabled, the two calendars can be individually advanced and display any month/year. +
    • +
    • + isInvalidDate: (function) A function that is passed each date in the two + calendars before they are displayed, and may return true or false to indicate whether + that date should be available for selection or not. +
    • +
    • + isCustomDate: (function) A function that is passed each date in the two + calendars before they are displayed, and may return a string or array of CSS class names + to apply to that date's calendar cell. +
    • +
    • + autoUpdateInput: (true/false) Indicates whether the date range picker should + automatically update the value of the <input> element it's attached to at initialization and when the selected dates change. +
    • +
    • + parentEl: (string) jQuery selector of the parent element that the date range picker will be added to, if not provided this will be 'body' +
    • +
    + +

    Methods

    + +

    + You can programmatically update the startDate and endDate + in the picker using the setStartDate and setEndDate methods. + You can access the Date Range Picker object and its functions and properties through + data properties of the element you attached it to. +

    + + + +
    + +
      +
    • + setStartDate(Date or string): Sets the date range picker's currently selected start date to the provided date +
    • +
    • + setEndDate(Date or string): Sets the date range picker's currently selected end date to the provided date +
    • +
    + +

    Example usage:

    + + + +

    Events

    + +

    + Several events are triggered on the element you attach the picker to, which you can listen for. +

    + +
      +
    • + show.daterangepicker: Triggered when the picker is shown +
    • +
    • + hide.daterangepicker: Triggered when the picker is hidden +
    • +
    • + showCalendar.daterangepicker: Triggered when the calendar(s) are shown +
    • +
    • + hideCalendar.daterangepicker: Triggered when the calendar(s) are hidden +
    • +
    • + apply.daterangepicker: Triggered when the apply button is clicked, + or when a predefined range is clicked +
    • +
    • + cancel.daterangepicker: Triggered when the cancel button is clicked +
    • +
    + +

    + Some applications need a "clear" instead of a "cancel" functionality, which can be achieved by changing the button label and watching for the cancel event: +

    + + + +
    + +

    + While passing in a callback to the constructor is the easiest way to listen for changes in the selected date range, you can also do something every time the apply button is clicked even if the selection hasn't changed: +

    + + + +

    Configuration Generator

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

    Your Date Range Picker

    + +
    +
    + +
    +

    Your Configuration to Copy

    + +
    + +
    +
    + +
    + + + +

    License

    + +

    The MIT License (MIT)

    + +

    Copyright (c) 2012-2018 Dan Grossman

    + +

    + Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: +

    + +

    + The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. +

    + +

    + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +

    + +

    Comments

    + +
    + + + +
    +
    +
    + + + + + + + + + + + \ No newline at end of file diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/moment.min.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/moment.min.js new file mode 100644 index 0000000..5787a40 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/moment.min.js @@ -0,0 +1 @@ +!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):e.moment=t()}(this,function(){"use strict";var e,i;function c(){return e.apply(null,arguments)}function o(e){return e instanceof Array||"[object Array]"===Object.prototype.toString.call(e)}function u(e){return null!=e&&"[object Object]"===Object.prototype.toString.call(e)}function l(e){return void 0===e}function h(e){return"number"==typeof e||"[object Number]"===Object.prototype.toString.call(e)}function d(e){return e instanceof Date||"[object Date]"===Object.prototype.toString.call(e)}function f(e,t){var n,s=[];for(n=0;n>>0,s=0;sSe(e)?(r=e+1,o-Se(e)):(r=e,o),{year:r,dayOfYear:a}}function Ie(e,t,n){var s,i,r=Ve(e.year(),t,n),a=Math.floor((e.dayOfYear()-r-1)/7)+1;return a<1?s=a+Ae(i=e.year()-1,t,n):a>Ae(e.year(),t,n)?(s=a-Ae(e.year(),t,n),i=e.year()+1):(i=e.year(),s=a),{week:s,year:i}}function Ae(e,t,n){var s=Ve(e,t,n),i=Ve(e+1,t,n);return(Se(e)-s+i)/7}I("w",["ww",2],"wo","week"),I("W",["WW",2],"Wo","isoWeek"),C("week","w"),C("isoWeek","W"),F("week",5),F("isoWeek",5),ue("w",B),ue("ww",B,z),ue("W",B),ue("WW",B,z),fe(["w","ww","W","WW"],function(e,t,n,s){t[s.substr(0,1)]=D(e)});function je(e,t){return e.slice(t,7).concat(e.slice(0,t))}I("d",0,"do","day"),I("dd",0,0,function(e){return this.localeData().weekdaysMin(this,e)}),I("ddd",0,0,function(e){return this.localeData().weekdaysShort(this,e)}),I("dddd",0,0,function(e){return this.localeData().weekdays(this,e)}),I("e",0,0,"weekday"),I("E",0,0,"isoWeekday"),C("day","d"),C("weekday","e"),C("isoWeekday","E"),F("day",11),F("weekday",11),F("isoWeekday",11),ue("d",B),ue("e",B),ue("E",B),ue("dd",function(e,t){return t.weekdaysMinRegex(e)}),ue("ddd",function(e,t){return t.weekdaysShortRegex(e)}),ue("dddd",function(e,t){return t.weekdaysRegex(e)}),fe(["dd","ddd","dddd"],function(e,t,n,s){var i=n._locale.weekdaysParse(e,s,n._strict);null!=i?t.d=i:g(n).invalidWeekday=e}),fe(["d","e","E"],function(e,t,n,s){t[s]=D(e)});var Ze="Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_");var ze="Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_");var $e="Su_Mo_Tu_We_Th_Fr_Sa".split("_");var qe=ae;var Je=ae;var Be=ae;function Qe(){function e(e,t){return t.length-e.length}var t,n,s,i,r,a=[],o=[],u=[],l=[];for(t=0;t<7;t++)n=y([2e3,1]).day(t),s=this.weekdaysMin(n,""),i=this.weekdaysShort(n,""),r=this.weekdays(n,""),a.push(s),o.push(i),u.push(r),l.push(s),l.push(i),l.push(r);for(a.sort(e),o.sort(e),u.sort(e),l.sort(e),t=0;t<7;t++)o[t]=he(o[t]),u[t]=he(u[t]),l[t]=he(l[t]);this._weekdaysRegex=new RegExp("^("+l.join("|")+")","i"),this._weekdaysShortRegex=this._weekdaysRegex,this._weekdaysMinRegex=this._weekdaysRegex,this._weekdaysStrictRegex=new RegExp("^("+u.join("|")+")","i"),this._weekdaysShortStrictRegex=new RegExp("^("+o.join("|")+")","i"),this._weekdaysMinStrictRegex=new RegExp("^("+a.join("|")+")","i")}function Xe(){return this.hours()%12||12}function Ke(e,t){I(e,0,0,function(){return this.localeData().meridiem(this.hours(),this.minutes(),t)})}function et(e,t){return t._meridiemParse}I("H",["HH",2],0,"hour"),I("h",["hh",2],0,Xe),I("k",["kk",2],0,function(){return this.hours()||24}),I("hmm",0,0,function(){return""+Xe.apply(this)+L(this.minutes(),2)}),I("hmmss",0,0,function(){return""+Xe.apply(this)+L(this.minutes(),2)+L(this.seconds(),2)}),I("Hmm",0,0,function(){return""+this.hours()+L(this.minutes(),2)}),I("Hmmss",0,0,function(){return""+this.hours()+L(this.minutes(),2)+L(this.seconds(),2)}),Ke("a",!0),Ke("A",!1),C("hour","h"),F("hour",13),ue("a",et),ue("A",et),ue("H",B),ue("h",B),ue("k",B),ue("HH",B,z),ue("hh",B,z),ue("kk",B,z),ue("hmm",Q),ue("hmmss",X),ue("Hmm",Q),ue("Hmmss",X),ce(["H","HH"],ge),ce(["k","kk"],function(e,t,n){var s=D(e);t[ge]=24===s?0:s}),ce(["a","A"],function(e,t,n){n._isPm=n._locale.isPM(e),n._meridiem=e}),ce(["h","hh"],function(e,t,n){t[ge]=D(e),g(n).bigHour=!0}),ce("hmm",function(e,t,n){var s=e.length-2;t[ge]=D(e.substr(0,s)),t[ve]=D(e.substr(s)),g(n).bigHour=!0}),ce("hmmss",function(e,t,n){var s=e.length-4,i=e.length-2;t[ge]=D(e.substr(0,s)),t[ve]=D(e.substr(s,2)),t[pe]=D(e.substr(i)),g(n).bigHour=!0}),ce("Hmm",function(e,t,n){var s=e.length-2;t[ge]=D(e.substr(0,s)),t[ve]=D(e.substr(s))}),ce("Hmmss",function(e,t,n){var s=e.length-4,i=e.length-2;t[ge]=D(e.substr(0,s)),t[ve]=D(e.substr(s,2)),t[pe]=D(e.substr(i))});var tt,nt=Te("Hours",!0),st={calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},longDateFormat:{LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},invalidDate:"Invalid date",ordinal:"%d",dayOfMonthOrdinalParse:/\d{1,2}/,relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},months:Ce,monthsShort:He,week:{dow:0,doy:6},weekdays:Ze,weekdaysMin:$e,weekdaysShort:ze,meridiemParse:/[ap]\.?m?\.?/i},it={},rt={};function at(e){return e?e.toLowerCase().replace("_","-"):e}function ot(e){var t=null;if(!it[e]&&"undefined"!=typeof module&&module&&module.exports)try{t=tt._abbr,require("./locale/"+e),ut(t)}catch(e){}return it[e]}function ut(e,t){var n;return e&&((n=l(t)?ht(e):lt(e,t))?tt=n:"undefined"!=typeof console&&console.warn&&console.warn("Locale "+e+" not found. Did you forget to load it?")),tt._abbr}function lt(e,t){if(null===t)return delete it[e],null;var n,s=st;if(t.abbr=e,null!=it[e])T("defineLocaleOverride","use moment.updateLocale(localeName, config) to change an existing locale. moment.defineLocale(localeName, config) should only be used for creating a new locale See http://momentjs.com/guides/#/warnings/define-locale/ for more info."),s=it[e]._config;else if(null!=t.parentLocale)if(null!=it[t.parentLocale])s=it[t.parentLocale]._config;else{if(null==(n=ot(t.parentLocale)))return rt[t.parentLocale]||(rt[t.parentLocale]=[]),rt[t.parentLocale].push({name:e,config:t}),null;s=n._config}return it[e]=new P(x(s,t)),rt[e]&&rt[e].forEach(function(e){lt(e.name,e.config)}),ut(e),it[e]}function ht(e){var t;if(e&&e._locale&&e._locale._abbr&&(e=e._locale._abbr),!e)return tt;if(!o(e)){if(t=ot(e))return t;e=[e]}return function(e){for(var t,n,s,i,r=0;r=t&&a(i,n,!0)>=t-1)break;t--}r++}return tt}(e)}function dt(e){var t,n=e._a;return n&&-2===g(e).overflow&&(t=n[_e]<0||11Pe(n[me],n[_e])?ye:n[ge]<0||24Ae(n,r,a)?g(e)._overflowWeeks=!0:null!=u?g(e)._overflowWeekday=!0:(o=Ee(n,s,i,r,a),e._a[me]=o.year,e._dayOfYear=o.dayOfYear)}(e),null!=e._dayOfYear&&(r=ct(e._a[me],s[me]),(e._dayOfYear>Se(r)||0===e._dayOfYear)&&(g(e)._overflowDayOfYear=!0),n=Ge(r,0,e._dayOfYear),e._a[_e]=n.getUTCMonth(),e._a[ye]=n.getUTCDate()),t=0;t<3&&null==e._a[t];++t)e._a[t]=a[t]=s[t];for(;t<7;t++)e._a[t]=a[t]=null==e._a[t]?2===t?1:0:e._a[t];24===e._a[ge]&&0===e._a[ve]&&0===e._a[pe]&&0===e._a[we]&&(e._nextDay=!0,e._a[ge]=0),e._d=(e._useUTC?Ge:function(e,t,n,s,i,r,a){var o;return e<100&&0<=e?(o=new Date(e+400,t,n,s,i,r,a),isFinite(o.getFullYear())&&o.setFullYear(e)):o=new Date(e,t,n,s,i,r,a),o}).apply(null,a),i=e._useUTC?e._d.getUTCDay():e._d.getDay(),null!=e._tzm&&e._d.setUTCMinutes(e._d.getUTCMinutes()-e._tzm),e._nextDay&&(e._a[ge]=24),e._w&&void 0!==e._w.d&&e._w.d!==i&&(g(e).weekdayMismatch=!0)}}var mt=/^\s*((?:[+-]\d{6}|\d{4})-(?:\d\d-\d\d|W\d\d-\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?::\d\d(?::\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?$/,_t=/^\s*((?:[+-]\d{6}|\d{4})(?:\d\d\d\d|W\d\d\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?:\d\d(?:\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?$/,yt=/Z|[+-]\d\d(?::?\d\d)?/,gt=[["YYYYYY-MM-DD",/[+-]\d{6}-\d\d-\d\d/],["YYYY-MM-DD",/\d{4}-\d\d-\d\d/],["GGGG-[W]WW-E",/\d{4}-W\d\d-\d/],["GGGG-[W]WW",/\d{4}-W\d\d/,!1],["YYYY-DDD",/\d{4}-\d{3}/],["YYYY-MM",/\d{4}-\d\d/,!1],["YYYYYYMMDD",/[+-]\d{10}/],["YYYYMMDD",/\d{8}/],["GGGG[W]WWE",/\d{4}W\d{3}/],["GGGG[W]WW",/\d{4}W\d{2}/,!1],["YYYYDDD",/\d{7}/]],vt=[["HH:mm:ss.SSSS",/\d\d:\d\d:\d\d\.\d+/],["HH:mm:ss,SSSS",/\d\d:\d\d:\d\d,\d+/],["HH:mm:ss",/\d\d:\d\d:\d\d/],["HH:mm",/\d\d:\d\d/],["HHmmss.SSSS",/\d\d\d\d\d\d\.\d+/],["HHmmss,SSSS",/\d\d\d\d\d\d,\d+/],["HHmmss",/\d\d\d\d\d\d/],["HHmm",/\d\d\d\d/],["HH",/\d\d/]],pt=/^\/?Date\((\-?\d+)/i;function wt(e){var t,n,s,i,r,a,o=e._i,u=mt.exec(o)||_t.exec(o);if(u){for(g(e).iso=!0,t=0,n=gt.length;tn.valueOf():n.valueOf()this.clone().month(0).utcOffset()||this.utcOffset()>this.clone().month(5).utcOffset()},mn.isLocal=function(){return!!this.isValid()&&!this._isUTC},mn.isUtcOffset=function(){return!!this.isValid()&&this._isUTC},mn.isUtc=Et,mn.isUTC=Et,mn.zoneAbbr=function(){return this._isUTC?"UTC":""},mn.zoneName=function(){return this._isUTC?"Coordinated Universal Time":""},mn.dates=n("dates accessor is deprecated. Use date instead.",un),mn.months=n("months accessor is deprecated. Use month instead",Ue),mn.years=n("years accessor is deprecated. Use year instead",Oe),mn.zone=n("moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/",function(e,t){return null!=e?("string"!=typeof e&&(e=-e),this.utcOffset(e,t),this):-this.utcOffset()}),mn.isDSTShifted=n("isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information",function(){if(!l(this._isDSTShifted))return this._isDSTShifted;var e={};if(w(e,this),(e=Ot(e))._a){var t=e._isUTC?y(e._a):bt(e._a);this._isDSTShifted=this.isValid()&&0= 20 ? 'ste' : 'de') + ); // Thanks to Joris Röling : https://github.com/jjupiter + }, + week: { + dow: 1, // Maandag is die eerste dag van die week. + doy: 4, // Die week wat die 4de Januarie bevat is die eerste week van die jaar. + }, + }); + + return af; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/ar-dz.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/ar-dz.js new file mode 100644 index 0000000..109f615 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/ar-dz.js @@ -0,0 +1,167 @@ +//! moment.js locale configuration +//! locale : Arabic (Algeria) [ar-dz] +//! author : Amine Roukh: https://github.com/Amine27 +//! author : Abdel Said: https://github.com/abdelsaid +//! author : Ahmed Elkhatib +//! author : forabi https://github.com/forabi +//! author : Noureddine LOUAHEDJ : https://github.com/noureddinem + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var pluralForm = function (n) { + return n === 0 + ? 0 + : n === 1 + ? 1 + : n === 2 + ? 2 + : n % 100 >= 3 && n % 100 <= 10 + ? 3 + : n % 100 >= 11 + ? 4 + : 5; + }, + plurals = { + s: [ + 'أقل من ثانية', + 'ثانية واحدة', + ['ثانيتان', 'ثانيتين'], + '%d ثوان', + '%d ثانية', + '%d ثانية', + ], + m: [ + 'أقل من دقيقة', + 'دقيقة واحدة', + ['دقيقتان', 'دقيقتين'], + '%d دقائق', + '%d دقيقة', + '%d دقيقة', + ], + h: [ + 'أقل من ساعة', + 'ساعة واحدة', + ['ساعتان', 'ساعتين'], + '%d ساعات', + '%d ساعة', + '%d ساعة', + ], + d: [ + 'أقل من يوم', + 'يوم واحد', + ['يومان', 'يومين'], + '%d أيام', + '%d يومًا', + '%d يوم', + ], + M: [ + 'أقل من شهر', + 'شهر واحد', + ['شهران', 'شهرين'], + '%d أشهر', + '%d شهرا', + '%d شهر', + ], + y: [ + 'أقل من عام', + 'عام واحد', + ['عامان', 'عامين'], + '%d أعوام', + '%d عامًا', + '%d عام', + ], + }, + pluralize = function (u) { + return function (number, withoutSuffix, string, isFuture) { + var f = pluralForm(number), + str = plurals[u][pluralForm(number)]; + if (f === 2) { + str = str[withoutSuffix ? 0 : 1]; + } + return str.replace(/%d/i, number); + }; + }, + months = [ + 'جانفي', + 'فيفري', + 'مارس', + 'أفريل', + 'ماي', + 'جوان', + 'جويلية', + 'أوت', + 'سبتمبر', + 'أكتوبر', + 'نوفمبر', + 'ديسمبر', + ]; + + var arDz = moment.defineLocale('ar-dz', { + months: months, + monthsShort: months, + weekdays: 'الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت'.split('_'), + weekdaysShort: 'أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت'.split('_'), + weekdaysMin: 'ح_ن_ث_ر_خ_ج_س'.split('_'), + weekdaysParseExact: true, + longDateFormat: { + LT: 'HH:mm', + LTS: 'HH:mm:ss', + L: 'D/\u200FM/\u200FYYYY', + LL: 'D MMMM YYYY', + LLL: 'D MMMM YYYY HH:mm', + LLLL: 'dddd D MMMM YYYY HH:mm', + }, + meridiemParse: /ص|م/, + isPM: function (input) { + return 'م' === input; + }, + meridiem: function (hour, minute, isLower) { + if (hour < 12) { + return 'ص'; + } else { + return 'م'; + } + }, + calendar: { + sameDay: '[اليوم عند الساعة] LT', + nextDay: '[غدًا عند الساعة] LT', + nextWeek: 'dddd [عند الساعة] LT', + lastDay: '[أمس عند الساعة] LT', + lastWeek: 'dddd [عند الساعة] LT', + sameElse: 'L', + }, + relativeTime: { + future: 'بعد %s', + past: 'منذ %s', + s: pluralize('s'), + ss: pluralize('s'), + m: pluralize('m'), + mm: pluralize('m'), + h: pluralize('h'), + hh: pluralize('h'), + d: pluralize('d'), + dd: pluralize('d'), + M: pluralize('M'), + MM: pluralize('M'), + y: pluralize('y'), + yy: pluralize('y'), + }, + postformat: function (string) { + return string.replace(/,/g, '،'); + }, + week: { + dow: 0, // Sunday is the first day of the week. + doy: 4, // The week that contains Jan 4th is the first week of the year. + }, + }); + + return arDz; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/ar-kw.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/ar-kw.js new file mode 100644 index 0000000..c6ecef8 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/ar-kw.js @@ -0,0 +1,66 @@ +//! moment.js locale configuration +//! locale : Arabic (Kuwait) [ar-kw] +//! author : Nusret Parlak: https://github.com/nusretparlak + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var arKw = moment.defineLocale('ar-kw', { + months: 'يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر'.split( + '_' + ), + monthsShort: + 'يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر'.split( + '_' + ), + weekdays: 'الأحد_الإتنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت'.split('_'), + weekdaysShort: 'احد_اتنين_ثلاثاء_اربعاء_خميس_جمعة_سبت'.split('_'), + weekdaysMin: 'ح_ن_ث_ر_خ_ج_س'.split('_'), + weekdaysParseExact: true, + longDateFormat: { + LT: 'HH:mm', + LTS: 'HH:mm:ss', + L: 'DD/MM/YYYY', + LL: 'D MMMM YYYY', + LLL: 'D MMMM YYYY HH:mm', + LLLL: 'dddd D MMMM YYYY HH:mm', + }, + calendar: { + sameDay: '[اليوم على الساعة] LT', + nextDay: '[غدا على الساعة] LT', + nextWeek: 'dddd [على الساعة] LT', + lastDay: '[أمس على الساعة] LT', + lastWeek: 'dddd [على الساعة] LT', + sameElse: 'L', + }, + relativeTime: { + future: 'في %s', + past: 'منذ %s', + s: 'ثوان', + ss: '%d ثانية', + m: 'دقيقة', + mm: '%d دقائق', + h: 'ساعة', + hh: '%d ساعات', + d: 'يوم', + dd: '%d أيام', + M: 'شهر', + MM: '%d أشهر', + y: 'سنة', + yy: '%d سنوات', + }, + week: { + dow: 0, // Sunday is the first day of the week. + doy: 12, // The week that contains Jan 12th is the first week of the year. + }, + }); + + return arKw; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/ar-ly.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/ar-ly.js new file mode 100644 index 0000000..436b8f3 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/ar-ly.js @@ -0,0 +1,182 @@ +//! moment.js locale configuration +//! locale : Arabic (Libya) [ar-ly] +//! author : Ali Hmer: https://github.com/kikoanis + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var symbolMap = { + 1: '1', + 2: '2', + 3: '3', + 4: '4', + 5: '5', + 6: '6', + 7: '7', + 8: '8', + 9: '9', + 0: '0', + }, + pluralForm = function (n) { + return n === 0 + ? 0 + : n === 1 + ? 1 + : n === 2 + ? 2 + : n % 100 >= 3 && n % 100 <= 10 + ? 3 + : n % 100 >= 11 + ? 4 + : 5; + }, + plurals = { + s: [ + 'أقل من ثانية', + 'ثانية واحدة', + ['ثانيتان', 'ثانيتين'], + '%d ثوان', + '%d ثانية', + '%d ثانية', + ], + m: [ + 'أقل من دقيقة', + 'دقيقة واحدة', + ['دقيقتان', 'دقيقتين'], + '%d دقائق', + '%d دقيقة', + '%d دقيقة', + ], + h: [ + 'أقل من ساعة', + 'ساعة واحدة', + ['ساعتان', 'ساعتين'], + '%d ساعات', + '%d ساعة', + '%d ساعة', + ], + d: [ + 'أقل من يوم', + 'يوم واحد', + ['يومان', 'يومين'], + '%d أيام', + '%d يومًا', + '%d يوم', + ], + M: [ + 'أقل من شهر', + 'شهر واحد', + ['شهران', 'شهرين'], + '%d أشهر', + '%d شهرا', + '%d شهر', + ], + y: [ + 'أقل من عام', + 'عام واحد', + ['عامان', 'عامين'], + '%d أعوام', + '%d عامًا', + '%d عام', + ], + }, + pluralize = function (u) { + return function (number, withoutSuffix, string, isFuture) { + var f = pluralForm(number), + str = plurals[u][pluralForm(number)]; + if (f === 2) { + str = str[withoutSuffix ? 0 : 1]; + } + return str.replace(/%d/i, number); + }; + }, + months = [ + 'يناير', + 'فبراير', + 'مارس', + 'أبريل', + 'مايو', + 'يونيو', + 'يوليو', + 'أغسطس', + 'سبتمبر', + 'أكتوبر', + 'نوفمبر', + 'ديسمبر', + ]; + + var arLy = moment.defineLocale('ar-ly', { + months: months, + monthsShort: months, + weekdays: 'الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت'.split('_'), + weekdaysShort: 'أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت'.split('_'), + weekdaysMin: 'ح_ن_ث_ر_خ_ج_س'.split('_'), + weekdaysParseExact: true, + longDateFormat: { + LT: 'HH:mm', + LTS: 'HH:mm:ss', + L: 'D/\u200FM/\u200FYYYY', + LL: 'D MMMM YYYY', + LLL: 'D MMMM YYYY HH:mm', + LLLL: 'dddd D MMMM YYYY HH:mm', + }, + meridiemParse: /ص|م/, + isPM: function (input) { + return 'م' === input; + }, + meridiem: function (hour, minute, isLower) { + if (hour < 12) { + return 'ص'; + } else { + return 'م'; + } + }, + calendar: { + sameDay: '[اليوم عند الساعة] LT', + nextDay: '[غدًا عند الساعة] LT', + nextWeek: 'dddd [عند الساعة] LT', + lastDay: '[أمس عند الساعة] LT', + lastWeek: 'dddd [عند الساعة] LT', + sameElse: 'L', + }, + relativeTime: { + future: 'بعد %s', + past: 'منذ %s', + s: pluralize('s'), + ss: pluralize('s'), + m: pluralize('m'), + mm: pluralize('m'), + h: pluralize('h'), + hh: pluralize('h'), + d: pluralize('d'), + dd: pluralize('d'), + M: pluralize('M'), + MM: pluralize('M'), + y: pluralize('y'), + yy: pluralize('y'), + }, + preparse: function (string) { + return string.replace(/،/g, ','); + }, + postformat: function (string) { + return string + .replace(/\d/g, function (match) { + return symbolMap[match]; + }) + .replace(/,/g, '،'); + }, + week: { + dow: 6, // Saturday is the first day of the week. + doy: 12, // The week that contains Jan 12th is the first week of the year. + }, + }); + + return arLy; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/ar-ma.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/ar-ma.js new file mode 100644 index 0000000..11f061a --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/ar-ma.js @@ -0,0 +1,67 @@ +//! moment.js locale configuration +//! locale : Arabic (Morocco) [ar-ma] +//! author : ElFadili Yassine : https://github.com/ElFadiliY +//! author : Abdel Said : https://github.com/abdelsaid + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var arMa = moment.defineLocale('ar-ma', { + months: 'يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر'.split( + '_' + ), + monthsShort: + 'يناير_فبراير_مارس_أبريل_ماي_يونيو_يوليوز_غشت_شتنبر_أكتوبر_نونبر_دجنبر'.split( + '_' + ), + weekdays: 'الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت'.split('_'), + weekdaysShort: 'احد_اثنين_ثلاثاء_اربعاء_خميس_جمعة_سبت'.split('_'), + weekdaysMin: 'ح_ن_ث_ر_خ_ج_س'.split('_'), + weekdaysParseExact: true, + longDateFormat: { + LT: 'HH:mm', + LTS: 'HH:mm:ss', + L: 'DD/MM/YYYY', + LL: 'D MMMM YYYY', + LLL: 'D MMMM YYYY HH:mm', + LLLL: 'dddd D MMMM YYYY HH:mm', + }, + calendar: { + sameDay: '[اليوم على الساعة] LT', + nextDay: '[غدا على الساعة] LT', + nextWeek: 'dddd [على الساعة] LT', + lastDay: '[أمس على الساعة] LT', + lastWeek: 'dddd [على الساعة] LT', + sameElse: 'L', + }, + relativeTime: { + future: 'في %s', + past: 'منذ %s', + s: 'ثوان', + ss: '%d ثانية', + m: 'دقيقة', + mm: '%d دقائق', + h: 'ساعة', + hh: '%d ساعات', + d: 'يوم', + dd: '%d أيام', + M: 'شهر', + MM: '%d أشهر', + y: 'سنة', + yy: '%d سنوات', + }, + week: { + dow: 1, // Monday is the first day of the week. + doy: 4, // The week that contains Jan 4th is the first week of the year. + }, + }); + + return arMa; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/ar-sa.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/ar-sa.js new file mode 100644 index 0000000..e329df0 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/ar-sa.js @@ -0,0 +1,116 @@ +//! moment.js locale configuration +//! locale : Arabic (Saudi Arabia) [ar-sa] +//! author : Suhail Alkowaileet : https://github.com/xsoh + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var symbolMap = { + 1: '١', + 2: '٢', + 3: '٣', + 4: '٤', + 5: '٥', + 6: '٦', + 7: '٧', + 8: '٨', + 9: '٩', + 0: '٠', + }, + numberMap = { + '١': '1', + '٢': '2', + '٣': '3', + '٤': '4', + '٥': '5', + '٦': '6', + '٧': '7', + '٨': '8', + '٩': '9', + '٠': '0', + }; + + var arSa = moment.defineLocale('ar-sa', { + months: 'يناير_فبراير_مارس_أبريل_مايو_يونيو_يوليو_أغسطس_سبتمبر_أكتوبر_نوفمبر_ديسمبر'.split( + '_' + ), + monthsShort: + 'يناير_فبراير_مارس_أبريل_مايو_يونيو_يوليو_أغسطس_سبتمبر_أكتوبر_نوفمبر_ديسمبر'.split( + '_' + ), + weekdays: 'الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت'.split('_'), + weekdaysShort: 'أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت'.split('_'), + weekdaysMin: 'ح_ن_ث_ر_خ_ج_س'.split('_'), + weekdaysParseExact: true, + longDateFormat: { + LT: 'HH:mm', + LTS: 'HH:mm:ss', + L: 'DD/MM/YYYY', + LL: 'D MMMM YYYY', + LLL: 'D MMMM YYYY HH:mm', + LLLL: 'dddd D MMMM YYYY HH:mm', + }, + meridiemParse: /ص|م/, + isPM: function (input) { + return 'م' === input; + }, + meridiem: function (hour, minute, isLower) { + if (hour < 12) { + return 'ص'; + } else { + return 'م'; + } + }, + calendar: { + sameDay: '[اليوم على الساعة] LT', + nextDay: '[غدا على الساعة] LT', + nextWeek: 'dddd [على الساعة] LT', + lastDay: '[أمس على الساعة] LT', + lastWeek: 'dddd [على الساعة] LT', + sameElse: 'L', + }, + relativeTime: { + future: 'في %s', + past: 'منذ %s', + s: 'ثوان', + ss: '%d ثانية', + m: 'دقيقة', + mm: '%d دقائق', + h: 'ساعة', + hh: '%d ساعات', + d: 'يوم', + dd: '%d أيام', + M: 'شهر', + MM: '%d أشهر', + y: 'سنة', + yy: '%d سنوات', + }, + preparse: function (string) { + return string + .replace(/[١٢٣٤٥٦٧٨٩٠]/g, function (match) { + return numberMap[match]; + }) + .replace(/،/g, ','); + }, + postformat: function (string) { + return string + .replace(/\d/g, function (match) { + return symbolMap[match]; + }) + .replace(/,/g, '،'); + }, + week: { + dow: 0, // Sunday is the first day of the week. + doy: 6, // The week that contains Jan 6th is the first week of the year. + }, + }); + + return arSa; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/ar-tn.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/ar-tn.js new file mode 100644 index 0000000..a390ed2 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/ar-tn.js @@ -0,0 +1,66 @@ +//! moment.js locale configuration +//! locale : Arabic (Tunisia) [ar-tn] +//! author : Nader Toukabri : https://github.com/naderio + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var arTn = moment.defineLocale('ar-tn', { + months: 'جانفي_فيفري_مارس_أفريل_ماي_جوان_جويلية_أوت_سبتمبر_أكتوبر_نوفمبر_ديسمبر'.split( + '_' + ), + monthsShort: + 'جانفي_فيفري_مارس_أفريل_ماي_جوان_جويلية_أوت_سبتمبر_أكتوبر_نوفمبر_ديسمبر'.split( + '_' + ), + weekdays: 'الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت'.split('_'), + weekdaysShort: 'أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت'.split('_'), + weekdaysMin: 'ح_ن_ث_ر_خ_ج_س'.split('_'), + weekdaysParseExact: true, + longDateFormat: { + LT: 'HH:mm', + LTS: 'HH:mm:ss', + L: 'DD/MM/YYYY', + LL: 'D MMMM YYYY', + LLL: 'D MMMM YYYY HH:mm', + LLLL: 'dddd D MMMM YYYY HH:mm', + }, + calendar: { + sameDay: '[اليوم على الساعة] LT', + nextDay: '[غدا على الساعة] LT', + nextWeek: 'dddd [على الساعة] LT', + lastDay: '[أمس على الساعة] LT', + lastWeek: 'dddd [على الساعة] LT', + sameElse: 'L', + }, + relativeTime: { + future: 'في %s', + past: 'منذ %s', + s: 'ثوان', + ss: '%d ثانية', + m: 'دقيقة', + mm: '%d دقائق', + h: 'ساعة', + hh: '%d ساعات', + d: 'يوم', + dd: '%d أيام', + M: 'شهر', + MM: '%d أشهر', + y: 'سنة', + yy: '%d سنوات', + }, + week: { + dow: 1, // Monday is the first day of the week. + doy: 4, // The week that contains Jan 4th is the first week of the year. + }, + }); + + return arTn; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/ar.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/ar.js new file mode 100644 index 0000000..7394244 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/ar.js @@ -0,0 +1,200 @@ +//! moment.js locale configuration +//! locale : Arabic [ar] +//! author : Abdel Said: https://github.com/abdelsaid +//! author : Ahmed Elkhatib +//! author : forabi https://github.com/forabi + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var symbolMap = { + 1: '١', + 2: '٢', + 3: '٣', + 4: '٤', + 5: '٥', + 6: '٦', + 7: '٧', + 8: '٨', + 9: '٩', + 0: '٠', + }, + numberMap = { + '١': '1', + '٢': '2', + '٣': '3', + '٤': '4', + '٥': '5', + '٦': '6', + '٧': '7', + '٨': '8', + '٩': '9', + '٠': '0', + }, + pluralForm = function (n) { + return n === 0 + ? 0 + : n === 1 + ? 1 + : n === 2 + ? 2 + : n % 100 >= 3 && n % 100 <= 10 + ? 3 + : n % 100 >= 11 + ? 4 + : 5; + }, + plurals = { + s: [ + 'أقل من ثانية', + 'ثانية واحدة', + ['ثانيتان', 'ثانيتين'], + '%d ثوان', + '%d ثانية', + '%d ثانية', + ], + m: [ + 'أقل من دقيقة', + 'دقيقة واحدة', + ['دقيقتان', 'دقيقتين'], + '%d دقائق', + '%d دقيقة', + '%d دقيقة', + ], + h: [ + 'أقل من ساعة', + 'ساعة واحدة', + ['ساعتان', 'ساعتين'], + '%d ساعات', + '%d ساعة', + '%d ساعة', + ], + d: [ + 'أقل من يوم', + 'يوم واحد', + ['يومان', 'يومين'], + '%d أيام', + '%d يومًا', + '%d يوم', + ], + M: [ + 'أقل من شهر', + 'شهر واحد', + ['شهران', 'شهرين'], + '%d أشهر', + '%d شهرا', + '%d شهر', + ], + y: [ + 'أقل من عام', + 'عام واحد', + ['عامان', 'عامين'], + '%d أعوام', + '%d عامًا', + '%d عام', + ], + }, + pluralize = function (u) { + return function (number, withoutSuffix, string, isFuture) { + var f = pluralForm(number), + str = plurals[u][pluralForm(number)]; + if (f === 2) { + str = str[withoutSuffix ? 0 : 1]; + } + return str.replace(/%d/i, number); + }; + }, + months = [ + 'يناير', + 'فبراير', + 'مارس', + 'أبريل', + 'مايو', + 'يونيو', + 'يوليو', + 'أغسطس', + 'سبتمبر', + 'أكتوبر', + 'نوفمبر', + 'ديسمبر', + ]; + + var ar = moment.defineLocale('ar', { + months: months, + monthsShort: months, + weekdays: 'الأحد_الإثنين_الثلاثاء_الأربعاء_الخميس_الجمعة_السبت'.split('_'), + weekdaysShort: 'أحد_إثنين_ثلاثاء_أربعاء_خميس_جمعة_سبت'.split('_'), + weekdaysMin: 'ح_ن_ث_ر_خ_ج_س'.split('_'), + weekdaysParseExact: true, + longDateFormat: { + LT: 'HH:mm', + LTS: 'HH:mm:ss', + L: 'D/\u200FM/\u200FYYYY', + LL: 'D MMMM YYYY', + LLL: 'D MMMM YYYY HH:mm', + LLLL: 'dddd D MMMM YYYY HH:mm', + }, + meridiemParse: /ص|م/, + isPM: function (input) { + return 'م' === input; + }, + meridiem: function (hour, minute, isLower) { + if (hour < 12) { + return 'ص'; + } else { + return 'م'; + } + }, + calendar: { + sameDay: '[اليوم عند الساعة] LT', + nextDay: '[غدًا عند الساعة] LT', + nextWeek: 'dddd [عند الساعة] LT', + lastDay: '[أمس عند الساعة] LT', + lastWeek: 'dddd [عند الساعة] LT', + sameElse: 'L', + }, + relativeTime: { + future: 'بعد %s', + past: 'منذ %s', + s: pluralize('s'), + ss: pluralize('s'), + m: pluralize('m'), + mm: pluralize('m'), + h: pluralize('h'), + hh: pluralize('h'), + d: pluralize('d'), + dd: pluralize('d'), + M: pluralize('M'), + MM: pluralize('M'), + y: pluralize('y'), + yy: pluralize('y'), + }, + preparse: function (string) { + return string + .replace(/[١٢٣٤٥٦٧٨٩٠]/g, function (match) { + return numberMap[match]; + }) + .replace(/،/g, ','); + }, + postformat: function (string) { + return string + .replace(/\d/g, function (match) { + return symbolMap[match]; + }) + .replace(/,/g, '،'); + }, + week: { + dow: 6, // Saturday is the first day of the week. + doy: 12, // The week that contains Jan 12th is the first week of the year. + }, + }); + + return ar; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/az.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/az.js new file mode 100644 index 0000000..472bee1 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/az.js @@ -0,0 +1,113 @@ +//! moment.js locale configuration +//! locale : Azerbaijani [az] +//! author : topchiyev : https://github.com/topchiyev + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var suffixes = { + 1: '-inci', + 5: '-inci', + 8: '-inci', + 70: '-inci', + 80: '-inci', + 2: '-nci', + 7: '-nci', + 20: '-nci', + 50: '-nci', + 3: '-üncü', + 4: '-üncü', + 100: '-üncü', + 6: '-ncı', + 9: '-uncu', + 10: '-uncu', + 30: '-uncu', + 60: '-ıncı', + 90: '-ıncı', + }; + + var az = moment.defineLocale('az', { + months: 'yanvar_fevral_mart_aprel_may_iyun_iyul_avqust_sentyabr_oktyabr_noyabr_dekabr'.split( + '_' + ), + monthsShort: 'yan_fev_mar_apr_may_iyn_iyl_avq_sen_okt_noy_dek'.split('_'), + weekdays: + 'Bazar_Bazar ertəsi_Çərşənbə axşamı_Çərşənbə_Cümə axşamı_Cümə_Şənbə'.split( + '_' + ), + weekdaysShort: 'Baz_BzE_ÇAx_Çər_CAx_Cüm_Şən'.split('_'), + weekdaysMin: 'Bz_BE_ÇA_Çə_CA_Cü_Şə'.split('_'), + weekdaysParseExact: true, + longDateFormat: { + LT: 'HH:mm', + LTS: 'HH:mm:ss', + L: 'DD.MM.YYYY', + LL: 'D MMMM YYYY', + LLL: 'D MMMM YYYY HH:mm', + LLLL: 'dddd, D MMMM YYYY HH:mm', + }, + calendar: { + sameDay: '[bugün saat] LT', + nextDay: '[sabah saat] LT', + nextWeek: '[gələn həftə] dddd [saat] LT', + lastDay: '[dünən] LT', + lastWeek: '[keçən həftə] dddd [saat] LT', + sameElse: 'L', + }, + relativeTime: { + future: '%s sonra', + past: '%s əvvəl', + s: 'bir neçə saniyə', + ss: '%d saniyə', + m: 'bir dəqiqə', + mm: '%d dəqiqə', + h: 'bir saat', + hh: '%d saat', + d: 'bir gün', + dd: '%d gün', + M: 'bir ay', + MM: '%d ay', + y: 'bir il', + yy: '%d il', + }, + meridiemParse: /gecə|səhər|gündüz|axşam/, + isPM: function (input) { + return /^(gündüz|axşam)$/.test(input); + }, + meridiem: function (hour, minute, isLower) { + if (hour < 4) { + return 'gecə'; + } else if (hour < 12) { + return 'səhər'; + } else if (hour < 17) { + return 'gündüz'; + } else { + return 'axşam'; + } + }, + dayOfMonthOrdinalParse: /\d{1,2}-(ıncı|inci|nci|üncü|ncı|uncu)/, + ordinal: function (number) { + if (number === 0) { + // special case for zero + return number + '-ıncı'; + } + var a = number % 10, + b = (number % 100) - a, + c = number >= 100 ? 100 : null; + return number + (suffixes[a] || suffixes[b] || suffixes[c]); + }, + week: { + dow: 1, // Monday is the first day of the week. + doy: 7, // The week that contains Jan 7th is the first week of the year. + }, + }); + + return az; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/be.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/be.js new file mode 100644 index 0000000..3631912 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/be.js @@ -0,0 +1,153 @@ +//! moment.js locale configuration +//! locale : Belarusian [be] +//! author : Dmitry Demidov : https://github.com/demidov91 +//! author: Praleska: http://praleska.pro/ +//! Author : Menelion Elensúle : https://github.com/Oire + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + function plural(word, num) { + var forms = word.split('_'); + return num % 10 === 1 && num % 100 !== 11 + ? forms[0] + : num % 10 >= 2 && num % 10 <= 4 && (num % 100 < 10 || num % 100 >= 20) + ? forms[1] + : forms[2]; + } + function relativeTimeWithPlural(number, withoutSuffix, key) { + var format = { + ss: withoutSuffix ? 'секунда_секунды_секунд' : 'секунду_секунды_секунд', + mm: withoutSuffix ? 'хвіліна_хвіліны_хвілін' : 'хвіліну_хвіліны_хвілін', + hh: withoutSuffix ? 'гадзіна_гадзіны_гадзін' : 'гадзіну_гадзіны_гадзін', + dd: 'дзень_дні_дзён', + MM: 'месяц_месяцы_месяцаў', + yy: 'год_гады_гадоў', + }; + if (key === 'm') { + return withoutSuffix ? 'хвіліна' : 'хвіліну'; + } else if (key === 'h') { + return withoutSuffix ? 'гадзіна' : 'гадзіну'; + } else { + return number + ' ' + plural(format[key], +number); + } + } + + var be = moment.defineLocale('be', { + months: { + format: 'студзеня_лютага_сакавіка_красавіка_траўня_чэрвеня_ліпеня_жніўня_верасня_кастрычніка_лістапада_снежня'.split( + '_' + ), + standalone: + 'студзень_люты_сакавік_красавік_травень_чэрвень_ліпень_жнівень_верасень_кастрычнік_лістапад_снежань'.split( + '_' + ), + }, + monthsShort: + 'студ_лют_сак_крас_трав_чэрв_ліп_жнів_вер_каст_ліст_снеж'.split('_'), + weekdays: { + format: 'нядзелю_панядзелак_аўторак_сераду_чацвер_пятніцу_суботу'.split( + '_' + ), + standalone: + 'нядзеля_панядзелак_аўторак_серада_чацвер_пятніца_субота'.split( + '_' + ), + isFormat: /\[ ?[Ууў] ?(?:мінулую|наступную)? ?\] ?dddd/, + }, + weekdaysShort: 'нд_пн_ат_ср_чц_пт_сб'.split('_'), + weekdaysMin: 'нд_пн_ат_ср_чц_пт_сб'.split('_'), + longDateFormat: { + LT: 'HH:mm', + LTS: 'HH:mm:ss', + L: 'DD.MM.YYYY', + LL: 'D MMMM YYYY г.', + LLL: 'D MMMM YYYY г., HH:mm', + LLLL: 'dddd, D MMMM YYYY г., HH:mm', + }, + calendar: { + sameDay: '[Сёння ў] LT', + nextDay: '[Заўтра ў] LT', + lastDay: '[Учора ў] LT', + nextWeek: function () { + return '[У] dddd [ў] LT'; + }, + lastWeek: function () { + switch (this.day()) { + case 0: + case 3: + case 5: + case 6: + return '[У мінулую] dddd [ў] LT'; + case 1: + case 2: + case 4: + return '[У мінулы] dddd [ў] LT'; + } + }, + sameElse: 'L', + }, + relativeTime: { + future: 'праз %s', + past: '%s таму', + s: 'некалькі секунд', + m: relativeTimeWithPlural, + mm: relativeTimeWithPlural, + h: relativeTimeWithPlural, + hh: relativeTimeWithPlural, + d: 'дзень', + dd: relativeTimeWithPlural, + M: 'месяц', + MM: relativeTimeWithPlural, + y: 'год', + yy: relativeTimeWithPlural, + }, + meridiemParse: /ночы|раніцы|дня|вечара/, + isPM: function (input) { + return /^(дня|вечара)$/.test(input); + }, + meridiem: function (hour, minute, isLower) { + if (hour < 4) { + return 'ночы'; + } else if (hour < 12) { + return 'раніцы'; + } else if (hour < 17) { + return 'дня'; + } else { + return 'вечара'; + } + }, + dayOfMonthOrdinalParse: /\d{1,2}-(і|ы|га)/, + ordinal: function (number, period) { + switch (period) { + case 'M': + case 'd': + case 'DDD': + case 'w': + case 'W': + return (number % 10 === 2 || number % 10 === 3) && + number % 100 !== 12 && + number % 100 !== 13 + ? number + '-і' + : number + '-ы'; + case 'D': + return number + '-га'; + default: + return number; + } + }, + week: { + dow: 1, // Monday is the first day of the week. + doy: 7, // The week that contains Jan 7th is the first week of the year. + }, + }); + + return be; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/bg.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/bg.js new file mode 100644 index 0000000..5a1bda8 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/bg.js @@ -0,0 +1,98 @@ +//! moment.js locale configuration +//! locale : Bulgarian [bg] +//! author : Krasen Borisov : https://github.com/kraz + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var bg = moment.defineLocale('bg', { + months: 'януари_февруари_март_април_май_юни_юли_август_септември_октомври_ноември_декември'.split( + '_' + ), + monthsShort: 'яну_фев_мар_апр_май_юни_юли_авг_сеп_окт_ное_дек'.split('_'), + weekdays: 'неделя_понеделник_вторник_сряда_четвъртък_петък_събота'.split( + '_' + ), + weekdaysShort: 'нед_пон_вто_сря_чет_пет_съб'.split('_'), + weekdaysMin: 'нд_пн_вт_ср_чт_пт_сб'.split('_'), + longDateFormat: { + LT: 'H:mm', + LTS: 'H:mm:ss', + L: 'D.MM.YYYY', + LL: 'D MMMM YYYY', + LLL: 'D MMMM YYYY H:mm', + LLLL: 'dddd, D MMMM YYYY H:mm', + }, + calendar: { + sameDay: '[Днес в] LT', + nextDay: '[Утре в] LT', + nextWeek: 'dddd [в] LT', + lastDay: '[Вчера в] LT', + lastWeek: function () { + switch (this.day()) { + case 0: + case 3: + case 6: + return '[Миналата] dddd [в] LT'; + case 1: + case 2: + case 4: + case 5: + return '[Миналия] dddd [в] LT'; + } + }, + sameElse: 'L', + }, + relativeTime: { + future: 'след %s', + past: 'преди %s', + s: 'няколко секунди', + ss: '%d секунди', + m: 'минута', + mm: '%d минути', + h: 'час', + hh: '%d часа', + d: 'ден', + dd: '%d дена', + w: 'седмица', + ww: '%d седмици', + M: 'месец', + MM: '%d месеца', + y: 'година', + yy: '%d години', + }, + dayOfMonthOrdinalParse: /\d{1,2}-(ев|ен|ти|ви|ри|ми)/, + ordinal: function (number) { + var lastDigit = number % 10, + last2Digits = number % 100; + if (number === 0) { + return number + '-ев'; + } else if (last2Digits === 0) { + return number + '-ен'; + } else if (last2Digits > 10 && last2Digits < 20) { + return number + '-ти'; + } else if (lastDigit === 1) { + return number + '-ви'; + } else if (lastDigit === 2) { + return number + '-ри'; + } else if (lastDigit === 7 || lastDigit === 8) { + return number + '-ми'; + } else { + return number + '-ти'; + } + }, + week: { + dow: 1, // Monday is the first day of the week. + doy: 7, // The week that contains Jan 7th is the first week of the year. + }, + }); + + return bg; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/bm.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/bm.js new file mode 100644 index 0000000..302410c --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/bm.js @@ -0,0 +1,62 @@ +//! moment.js locale configuration +//! locale : Bambara [bm] +//! author : Estelle Comment : https://github.com/estellecomment + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var bm = moment.defineLocale('bm', { + months: 'Zanwuyekalo_Fewuruyekalo_Marisikalo_Awirilikalo_Mɛkalo_Zuwɛnkalo_Zuluyekalo_Utikalo_Sɛtanburukalo_ɔkutɔburukalo_Nowanburukalo_Desanburukalo'.split( + '_' + ), + monthsShort: 'Zan_Few_Mar_Awi_Mɛ_Zuw_Zul_Uti_Sɛt_ɔku_Now_Des'.split('_'), + weekdays: 'Kari_Ntɛnɛn_Tarata_Araba_Alamisa_Juma_Sibiri'.split('_'), + weekdaysShort: 'Kar_Ntɛ_Tar_Ara_Ala_Jum_Sib'.split('_'), + weekdaysMin: 'Ka_Nt_Ta_Ar_Al_Ju_Si'.split('_'), + longDateFormat: { + LT: 'HH:mm', + LTS: 'HH:mm:ss', + L: 'DD/MM/YYYY', + LL: 'MMMM [tile] D [san] YYYY', + LLL: 'MMMM [tile] D [san] YYYY [lɛrɛ] HH:mm', + LLLL: 'dddd MMMM [tile] D [san] YYYY [lɛrɛ] HH:mm', + }, + calendar: { + sameDay: '[Bi lɛrɛ] LT', + nextDay: '[Sini lɛrɛ] LT', + nextWeek: 'dddd [don lɛrɛ] LT', + lastDay: '[Kunu lɛrɛ] LT', + lastWeek: 'dddd [tɛmɛnen lɛrɛ] LT', + sameElse: 'L', + }, + relativeTime: { + future: '%s kɔnɔ', + past: 'a bɛ %s bɔ', + s: 'sanga dama dama', + ss: 'sekondi %d', + m: 'miniti kelen', + mm: 'miniti %d', + h: 'lɛrɛ kelen', + hh: 'lɛrɛ %d', + d: 'tile kelen', + dd: 'tile %d', + M: 'kalo kelen', + MM: 'kalo %d', + y: 'san kelen', + yy: 'san %d', + }, + week: { + dow: 1, // Monday is the first day of the week. + doy: 4, // The week that contains Jan 4th is the first week of the year. + }, + }); + + return bm; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/bn-bd.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/bn-bd.js new file mode 100644 index 0000000..1154aa4 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/bn-bd.js @@ -0,0 +1,140 @@ +//! moment.js locale configuration +//! locale : Bengali (Bangladesh) [bn-bd] +//! author : Asraf Hossain Patoary : https://github.com/ashwoolford + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var symbolMap = { + 1: '১', + 2: '২', + 3: '৩', + 4: '৪', + 5: '৫', + 6: '৬', + 7: '৭', + 8: '৮', + 9: '৯', + 0: '০', + }, + numberMap = { + '১': '1', + '২': '2', + '৩': '3', + '৪': '4', + '৫': '5', + '৬': '6', + '৭': '7', + '৮': '8', + '৯': '9', + '০': '0', + }; + + var bnBd = moment.defineLocale('bn-bd', { + months: 'জানুয়ারি_ফেব্রুয়ারি_মার্চ_এপ্রিল_মে_জুন_জুলাই_আগস্ট_সেপ্টেম্বর_অক্টোবর_নভেম্বর_ডিসেম্বর'.split( + '_' + ), + monthsShort: + 'জানু_ফেব্রু_মার্চ_এপ্রিল_মে_জুন_জুলাই_আগস্ট_সেপ্ট_অক্টো_নভে_ডিসে'.split( + '_' + ), + weekdays: 'রবিবার_সোমবার_মঙ্গলবার_বুধবার_বৃহস্পতিবার_শুক্রবার_শনিবার'.split( + '_' + ), + weekdaysShort: 'রবি_সোম_মঙ্গল_বুধ_বৃহস্পতি_শুক্র_শনি'.split('_'), + weekdaysMin: 'রবি_সোম_মঙ্গল_বুধ_বৃহ_শুক্র_শনি'.split('_'), + longDateFormat: { + LT: 'A h:mm সময়', + LTS: 'A h:mm:ss সময়', + L: 'DD/MM/YYYY', + LL: 'D MMMM YYYY', + LLL: 'D MMMM YYYY, A h:mm সময়', + LLLL: 'dddd, D MMMM YYYY, A h:mm সময়', + }, + calendar: { + sameDay: '[আজ] LT', + nextDay: '[আগামীকাল] LT', + nextWeek: 'dddd, LT', + lastDay: '[গতকাল] LT', + lastWeek: '[গত] dddd, LT', + sameElse: 'L', + }, + relativeTime: { + future: '%s পরে', + past: '%s আগে', + s: 'কয়েক সেকেন্ড', + ss: '%d সেকেন্ড', + m: 'এক মিনিট', + mm: '%d মিনিট', + h: 'এক ঘন্টা', + hh: '%d ঘন্টা', + d: 'এক দিন', + dd: '%d দিন', + M: 'এক মাস', + MM: '%d মাস', + y: 'এক বছর', + yy: '%d বছর', + }, + preparse: function (string) { + return string.replace(/[১২৩৪৫৬৭৮৯০]/g, function (match) { + return numberMap[match]; + }); + }, + postformat: function (string) { + return string.replace(/\d/g, function (match) { + return symbolMap[match]; + }); + }, + + meridiemParse: /রাত|ভোর|সকাল|দুপুর|বিকাল|সন্ধ্যা|রাত/, + meridiemHour: function (hour, meridiem) { + if (hour === 12) { + hour = 0; + } + if (meridiem === 'রাত') { + return hour < 4 ? hour : hour + 12; + } else if (meridiem === 'ভোর') { + return hour; + } else if (meridiem === 'সকাল') { + return hour; + } else if (meridiem === 'দুপুর') { + return hour >= 3 ? hour : hour + 12; + } else if (meridiem === 'বিকাল') { + return hour + 12; + } else if (meridiem === 'সন্ধ্যা') { + return hour + 12; + } + }, + + meridiem: function (hour, minute, isLower) { + if (hour < 4) { + return 'রাত'; + } else if (hour < 6) { + return 'ভোর'; + } else if (hour < 12) { + return 'সকাল'; + } else if (hour < 15) { + return 'দুপুর'; + } else if (hour < 18) { + return 'বিকাল'; + } else if (hour < 20) { + return 'সন্ধ্যা'; + } else { + return 'রাত'; + } + }, + week: { + dow: 0, // Sunday is the first day of the week. + doy: 6, // The week that contains Jan 6th is the first week of the year. + }, + }); + + return bnBd; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/bn.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/bn.js new file mode 100644 index 0000000..e5e3e5f --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/bn.js @@ -0,0 +1,130 @@ +//! moment.js locale configuration +//! locale : Bengali [bn] +//! author : Kaushik Gandhi : https://github.com/kaushikgandhi + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var symbolMap = { + 1: '১', + 2: '২', + 3: '৩', + 4: '৪', + 5: '৫', + 6: '৬', + 7: '৭', + 8: '৮', + 9: '৯', + 0: '০', + }, + numberMap = { + '১': '1', + '২': '2', + '৩': '3', + '৪': '4', + '৫': '5', + '৬': '6', + '৭': '7', + '৮': '8', + '৯': '9', + '০': '0', + }; + + var bn = moment.defineLocale('bn', { + months: 'জানুয়ারি_ফেব্রুয়ারি_মার্চ_এপ্রিল_মে_জুন_জুলাই_আগস্ট_সেপ্টেম্বর_অক্টোবর_নভেম্বর_ডিসেম্বর'.split( + '_' + ), + monthsShort: + 'জানু_ফেব্রু_মার্চ_এপ্রিল_মে_জুন_জুলাই_আগস্ট_সেপ্ট_অক্টো_নভে_ডিসে'.split( + '_' + ), + weekdays: 'রবিবার_সোমবার_মঙ্গলবার_বুধবার_বৃহস্পতিবার_শুক্রবার_শনিবার'.split( + '_' + ), + weekdaysShort: 'রবি_সোম_মঙ্গল_বুধ_বৃহস্পতি_শুক্র_শনি'.split('_'), + weekdaysMin: 'রবি_সোম_মঙ্গল_বুধ_বৃহ_শুক্র_শনি'.split('_'), + longDateFormat: { + LT: 'A h:mm সময়', + LTS: 'A h:mm:ss সময়', + L: 'DD/MM/YYYY', + LL: 'D MMMM YYYY', + LLL: 'D MMMM YYYY, A h:mm সময়', + LLLL: 'dddd, D MMMM YYYY, A h:mm সময়', + }, + calendar: { + sameDay: '[আজ] LT', + nextDay: '[আগামীকাল] LT', + nextWeek: 'dddd, LT', + lastDay: '[গতকাল] LT', + lastWeek: '[গত] dddd, LT', + sameElse: 'L', + }, + relativeTime: { + future: '%s পরে', + past: '%s আগে', + s: 'কয়েক সেকেন্ড', + ss: '%d সেকেন্ড', + m: 'এক মিনিট', + mm: '%d মিনিট', + h: 'এক ঘন্টা', + hh: '%d ঘন্টা', + d: 'এক দিন', + dd: '%d দিন', + M: 'এক মাস', + MM: '%d মাস', + y: 'এক বছর', + yy: '%d বছর', + }, + preparse: function (string) { + return string.replace(/[১২৩৪৫৬৭৮৯০]/g, function (match) { + return numberMap[match]; + }); + }, + postformat: function (string) { + return string.replace(/\d/g, function (match) { + return symbolMap[match]; + }); + }, + meridiemParse: /রাত|সকাল|দুপুর|বিকাল|রাত/, + meridiemHour: function (hour, meridiem) { + if (hour === 12) { + hour = 0; + } + if ( + (meridiem === 'রাত' && hour >= 4) || + (meridiem === 'দুপুর' && hour < 5) || + meridiem === 'বিকাল' + ) { + return hour + 12; + } else { + return hour; + } + }, + meridiem: function (hour, minute, isLower) { + if (hour < 4) { + return 'রাত'; + } else if (hour < 10) { + return 'সকাল'; + } else if (hour < 17) { + return 'দুপুর'; + } else if (hour < 20) { + return 'বিকাল'; + } else { + return 'রাত'; + } + }, + week: { + dow: 0, // Sunday is the first day of the week. + doy: 6, // The week that contains Jan 6th is the first week of the year. + }, + }); + + return bn; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/bo.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/bo.js new file mode 100644 index 0000000..c4a7c52 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/bo.js @@ -0,0 +1,135 @@ +//! moment.js locale configuration +//! locale : Tibetan [bo] +//! author : Thupten N. Chakrishar : https://github.com/vajradog + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var symbolMap = { + 1: '༡', + 2: '༢', + 3: '༣', + 4: '༤', + 5: '༥', + 6: '༦', + 7: '༧', + 8: '༨', + 9: '༩', + 0: '༠', + }, + numberMap = { + '༡': '1', + '༢': '2', + '༣': '3', + '༤': '4', + '༥': '5', + '༦': '6', + '༧': '7', + '༨': '8', + '༩': '9', + '༠': '0', + }; + + var bo = moment.defineLocale('bo', { + months: 'ཟླ་བ་དང་པོ_ཟླ་བ་གཉིས་པ_ཟླ་བ་གསུམ་པ_ཟླ་བ་བཞི་པ_ཟླ་བ་ལྔ་པ_ཟླ་བ་དྲུག་པ_ཟླ་བ་བདུན་པ_ཟླ་བ་བརྒྱད་པ_ཟླ་བ་དགུ་པ_ཟླ་བ་བཅུ་པ_ཟླ་བ་བཅུ་གཅིག་པ_ཟླ་བ་བཅུ་གཉིས་པ'.split( + '_' + ), + monthsShort: + 'ཟླ་1_ཟླ་2_ཟླ་3_ཟླ་4_ཟླ་5_ཟླ་6_ཟླ་7_ཟླ་8_ཟླ་9_ཟླ་10_ཟླ་11_ཟླ་12'.split( + '_' + ), + monthsShortRegex: /^(ཟླ་\d{1,2})/, + monthsParseExact: true, + weekdays: + 'གཟའ་ཉི་མ་_གཟའ་ཟླ་བ་_གཟའ་མིག་དམར་_གཟའ་ལྷག་པ་_གཟའ་ཕུར་བུ_གཟའ་པ་སངས་_གཟའ་སྤེན་པ་'.split( + '_' + ), + weekdaysShort: 'ཉི་མ་_ཟླ་བ་_མིག་དམར་_ལྷག་པ་_ཕུར་བུ_པ་སངས་_སྤེན་པ་'.split( + '_' + ), + weekdaysMin: 'ཉི_ཟླ_མིག_ལྷག_ཕུར_སངས_སྤེན'.split('_'), + longDateFormat: { + LT: 'A h:mm', + LTS: 'A h:mm:ss', + L: 'DD/MM/YYYY', + LL: 'D MMMM YYYY', + LLL: 'D MMMM YYYY, A h:mm', + LLLL: 'dddd, D MMMM YYYY, A h:mm', + }, + calendar: { + sameDay: '[དི་རིང] LT', + nextDay: '[སང་ཉིན] LT', + nextWeek: '[བདུན་ཕྲག་རྗེས་མ], LT', + lastDay: '[ཁ་སང] LT', + lastWeek: '[བདུན་ཕྲག་མཐའ་མ] dddd, LT', + sameElse: 'L', + }, + relativeTime: { + future: '%s ལ་', + past: '%s སྔན་ལ', + s: 'ལམ་སང', + ss: '%d སྐར་ཆ།', + m: 'སྐར་མ་གཅིག', + mm: '%d སྐར་མ', + h: 'ཆུ་ཚོད་གཅིག', + hh: '%d ཆུ་ཚོད', + d: 'ཉིན་གཅིག', + dd: '%d ཉིན་', + M: 'ཟླ་བ་གཅིག', + MM: '%d ཟླ་བ', + y: 'ལོ་གཅིག', + yy: '%d ལོ', + }, + preparse: function (string) { + return string.replace(/[༡༢༣༤༥༦༧༨༩༠]/g, function (match) { + return numberMap[match]; + }); + }, + postformat: function (string) { + return string.replace(/\d/g, function (match) { + return symbolMap[match]; + }); + }, + meridiemParse: /མཚན་མོ|ཞོགས་ཀས|ཉིན་གུང|དགོང་དག|མཚན་མོ/, + meridiemHour: function (hour, meridiem) { + if (hour === 12) { + hour = 0; + } + if ( + (meridiem === 'མཚན་མོ' && hour >= 4) || + (meridiem === 'ཉིན་གུང' && hour < 5) || + meridiem === 'དགོང་དག' + ) { + return hour + 12; + } else { + return hour; + } + }, + meridiem: function (hour, minute, isLower) { + if (hour < 4) { + return 'མཚན་མོ'; + } else if (hour < 10) { + return 'ཞོགས་ཀས'; + } else if (hour < 17) { + return 'ཉིན་གུང'; + } else if (hour < 20) { + return 'དགོང་དག'; + } else { + return 'མཚན་མོ'; + } + }, + week: { + dow: 0, // Sunday is the first day of the week. + doy: 6, // The week that contains Jan 6th is the first week of the year. + }, + }); + + return bo; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/br.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/br.js new file mode 100644 index 0000000..bd047fe --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/br.js @@ -0,0 +1,179 @@ +//! moment.js locale configuration +//! locale : Breton [br] +//! author : Jean-Baptiste Le Duigou : https://github.com/jbleduigou + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + function relativeTimeWithMutation(number, withoutSuffix, key) { + var format = { + mm: 'munutenn', + MM: 'miz', + dd: 'devezh', + }; + return number + ' ' + mutation(format[key], number); + } + function specialMutationForYears(number) { + switch (lastNumber(number)) { + case 1: + case 3: + case 4: + case 5: + case 9: + return number + ' bloaz'; + default: + return number + ' vloaz'; + } + } + function lastNumber(number) { + if (number > 9) { + return lastNumber(number % 10); + } + return number; + } + function mutation(text, number) { + if (number === 2) { + return softMutation(text); + } + return text; + } + function softMutation(text) { + var mutationTable = { + m: 'v', + b: 'v', + d: 'z', + }; + if (mutationTable[text.charAt(0)] === undefined) { + return text; + } + return mutationTable[text.charAt(0)] + text.substring(1); + } + + var monthsParse = [ + /^gen/i, + /^c[ʼ\']hwe/i, + /^meu/i, + /^ebr/i, + /^mae/i, + /^(mez|eve)/i, + /^gou/i, + /^eos/i, + /^gwe/i, + /^her/i, + /^du/i, + /^ker/i, + ], + monthsRegex = + /^(genver|c[ʼ\']hwevrer|meurzh|ebrel|mae|mezheven|gouere|eost|gwengolo|here|du|kerzu|gen|c[ʼ\']hwe|meu|ebr|mae|eve|gou|eos|gwe|her|du|ker)/i, + monthsStrictRegex = + /^(genver|c[ʼ\']hwevrer|meurzh|ebrel|mae|mezheven|gouere|eost|gwengolo|here|du|kerzu)/i, + monthsShortStrictRegex = + /^(gen|c[ʼ\']hwe|meu|ebr|mae|eve|gou|eos|gwe|her|du|ker)/i, + fullWeekdaysParse = [ + /^sul/i, + /^lun/i, + /^meurzh/i, + /^merc[ʼ\']her/i, + /^yaou/i, + /^gwener/i, + /^sadorn/i, + ], + shortWeekdaysParse = [ + /^Sul/i, + /^Lun/i, + /^Meu/i, + /^Mer/i, + /^Yao/i, + /^Gwe/i, + /^Sad/i, + ], + minWeekdaysParse = [ + /^Su/i, + /^Lu/i, + /^Me([^r]|$)/i, + /^Mer/i, + /^Ya/i, + /^Gw/i, + /^Sa/i, + ]; + + var br = moment.defineLocale('br', { + months: 'Genver_Cʼhwevrer_Meurzh_Ebrel_Mae_Mezheven_Gouere_Eost_Gwengolo_Here_Du_Kerzu'.split( + '_' + ), + monthsShort: 'Gen_Cʼhwe_Meu_Ebr_Mae_Eve_Gou_Eos_Gwe_Her_Du_Ker'.split('_'), + weekdays: 'Sul_Lun_Meurzh_Mercʼher_Yaou_Gwener_Sadorn'.split('_'), + weekdaysShort: 'Sul_Lun_Meu_Mer_Yao_Gwe_Sad'.split('_'), + weekdaysMin: 'Su_Lu_Me_Mer_Ya_Gw_Sa'.split('_'), + weekdaysParse: minWeekdaysParse, + fullWeekdaysParse: fullWeekdaysParse, + shortWeekdaysParse: shortWeekdaysParse, + minWeekdaysParse: minWeekdaysParse, + + monthsRegex: monthsRegex, + monthsShortRegex: monthsRegex, + monthsStrictRegex: monthsStrictRegex, + monthsShortStrictRegex: monthsShortStrictRegex, + monthsParse: monthsParse, + longMonthsParse: monthsParse, + shortMonthsParse: monthsParse, + + longDateFormat: { + LT: 'HH:mm', + LTS: 'HH:mm:ss', + L: 'DD/MM/YYYY', + LL: 'D [a viz] MMMM YYYY', + LLL: 'D [a viz] MMMM YYYY HH:mm', + LLLL: 'dddd, D [a viz] MMMM YYYY HH:mm', + }, + calendar: { + sameDay: '[Hiziv da] LT', + nextDay: '[Warcʼhoazh da] LT', + nextWeek: 'dddd [da] LT', + lastDay: '[Decʼh da] LT', + lastWeek: 'dddd [paset da] LT', + sameElse: 'L', + }, + relativeTime: { + future: 'a-benn %s', + past: '%s ʼzo', + s: 'un nebeud segondennoù', + ss: '%d eilenn', + m: 'ur vunutenn', + mm: relativeTimeWithMutation, + h: 'un eur', + hh: '%d eur', + d: 'un devezh', + dd: relativeTimeWithMutation, + M: 'ur miz', + MM: relativeTimeWithMutation, + y: 'ur bloaz', + yy: specialMutationForYears, + }, + dayOfMonthOrdinalParse: /\d{1,2}(añ|vet)/, + ordinal: function (number) { + var output = number === 1 ? 'añ' : 'vet'; + return number + output; + }, + week: { + dow: 1, // Monday is the first day of the week. + doy: 4, // The week that contains Jan 4th is the first week of the year. + }, + meridiemParse: /a.m.|g.m./, // goude merenn | a-raok merenn + isPM: function (token) { + return token === 'g.m.'; + }, + meridiem: function (hour, minute, isLower) { + return hour < 12 ? 'a.m.' : 'g.m.'; + }, + }); + + return br; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/bs.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/bs.js new file mode 100644 index 0000000..e0d6c85 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/bs.js @@ -0,0 +1,161 @@ +//! moment.js locale configuration +//! locale : Bosnian [bs] +//! author : Nedim Cholich : https://github.com/frontyard +//! based on (hr) translation by Bojan Marković + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + function translate(number, withoutSuffix, key) { + var result = number + ' '; + switch (key) { + case 'ss': + if (number === 1) { + result += 'sekunda'; + } else if (number === 2 || number === 3 || number === 4) { + result += 'sekunde'; + } else { + result += 'sekundi'; + } + return result; + case 'm': + return withoutSuffix ? 'jedna minuta' : 'jedne minute'; + case 'mm': + if (number === 1) { + result += 'minuta'; + } else if (number === 2 || number === 3 || number === 4) { + result += 'minute'; + } else { + result += 'minuta'; + } + return result; + case 'h': + return withoutSuffix ? 'jedan sat' : 'jednog sata'; + case 'hh': + if (number === 1) { + result += 'sat'; + } else if (number === 2 || number === 3 || number === 4) { + result += 'sata'; + } else { + result += 'sati'; + } + return result; + case 'dd': + if (number === 1) { + result += 'dan'; + } else { + result += 'dana'; + } + return result; + case 'MM': + if (number === 1) { + result += 'mjesec'; + } else if (number === 2 || number === 3 || number === 4) { + result += 'mjeseca'; + } else { + result += 'mjeseci'; + } + return result; + case 'yy': + if (number === 1) { + result += 'godina'; + } else if (number === 2 || number === 3 || number === 4) { + result += 'godine'; + } else { + result += 'godina'; + } + return result; + } + } + + var bs = moment.defineLocale('bs', { + months: 'januar_februar_mart_april_maj_juni_juli_august_septembar_oktobar_novembar_decembar'.split( + '_' + ), + monthsShort: + 'jan._feb._mar._apr._maj._jun._jul._aug._sep._okt._nov._dec.'.split( + '_' + ), + monthsParseExact: true, + weekdays: 'nedjelja_ponedjeljak_utorak_srijeda_četvrtak_petak_subota'.split( + '_' + ), + weekdaysShort: 'ned._pon._uto._sri._čet._pet._sub.'.split('_'), + weekdaysMin: 'ne_po_ut_sr_če_pe_su'.split('_'), + weekdaysParseExact: true, + longDateFormat: { + LT: 'H:mm', + LTS: 'H:mm:ss', + L: 'DD.MM.YYYY', + LL: 'D. MMMM YYYY', + LLL: 'D. MMMM YYYY H:mm', + LLLL: 'dddd, D. MMMM YYYY H:mm', + }, + calendar: { + sameDay: '[danas u] LT', + nextDay: '[sutra u] LT', + nextWeek: function () { + switch (this.day()) { + case 0: + return '[u] [nedjelju] [u] LT'; + case 3: + return '[u] [srijedu] [u] LT'; + case 6: + return '[u] [subotu] [u] LT'; + case 1: + case 2: + case 4: + case 5: + return '[u] dddd [u] LT'; + } + }, + lastDay: '[jučer u] LT', + lastWeek: function () { + switch (this.day()) { + case 0: + case 3: + return '[prošlu] dddd [u] LT'; + case 6: + return '[prošle] [subote] [u] LT'; + case 1: + case 2: + case 4: + case 5: + return '[prošli] dddd [u] LT'; + } + }, + sameElse: 'L', + }, + relativeTime: { + future: 'za %s', + past: 'prije %s', + s: 'par sekundi', + ss: translate, + m: translate, + mm: translate, + h: translate, + hh: translate, + d: 'dan', + dd: translate, + M: 'mjesec', + MM: translate, + y: 'godinu', + yy: translate, + }, + dayOfMonthOrdinalParse: /\d{1,2}\./, + ordinal: '%d.', + week: { + dow: 1, // Monday is the first day of the week. + doy: 7, // The week that contains Jan 7th is the first week of the year. + }, + }); + + return bs; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/ca.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/ca.js new file mode 100644 index 0000000..133071f --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/ca.js @@ -0,0 +1,111 @@ +//! moment.js locale configuration +//! locale : Catalan [ca] +//! author : Juan G. Hurtado : https://github.com/juanghurtado + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var ca = moment.defineLocale('ca', { + months: { + standalone: + 'gener_febrer_març_abril_maig_juny_juliol_agost_setembre_octubre_novembre_desembre'.split( + '_' + ), + format: "de gener_de febrer_de març_d'abril_de maig_de juny_de juliol_d'agost_de setembre_d'octubre_de novembre_de desembre".split( + '_' + ), + isFormat: /D[oD]?(\s)+MMMM/, + }, + monthsShort: + 'gen._febr._març_abr._maig_juny_jul._ag._set._oct._nov._des.'.split( + '_' + ), + monthsParseExact: true, + weekdays: + 'diumenge_dilluns_dimarts_dimecres_dijous_divendres_dissabte'.split( + '_' + ), + weekdaysShort: 'dg._dl._dt._dc._dj._dv._ds.'.split('_'), + weekdaysMin: 'dg_dl_dt_dc_dj_dv_ds'.split('_'), + weekdaysParseExact: true, + longDateFormat: { + LT: 'H:mm', + LTS: 'H:mm:ss', + L: 'DD/MM/YYYY', + LL: 'D MMMM [de] YYYY', + ll: 'D MMM YYYY', + LLL: 'D MMMM [de] YYYY [a les] H:mm', + lll: 'D MMM YYYY, H:mm', + LLLL: 'dddd D MMMM [de] YYYY [a les] H:mm', + llll: 'ddd D MMM YYYY, H:mm', + }, + calendar: { + sameDay: function () { + return '[avui a ' + (this.hours() !== 1 ? 'les' : 'la') + '] LT'; + }, + nextDay: function () { + return '[demà a ' + (this.hours() !== 1 ? 'les' : 'la') + '] LT'; + }, + nextWeek: function () { + return 'dddd [a ' + (this.hours() !== 1 ? 'les' : 'la') + '] LT'; + }, + lastDay: function () { + return '[ahir a ' + (this.hours() !== 1 ? 'les' : 'la') + '] LT'; + }, + lastWeek: function () { + return ( + '[el] dddd [passat a ' + + (this.hours() !== 1 ? 'les' : 'la') + + '] LT' + ); + }, + sameElse: 'L', + }, + relativeTime: { + future: "d'aquí %s", + past: 'fa %s', + s: 'uns segons', + ss: '%d segons', + m: 'un minut', + mm: '%d minuts', + h: 'una hora', + hh: '%d hores', + d: 'un dia', + dd: '%d dies', + M: 'un mes', + MM: '%d mesos', + y: 'un any', + yy: '%d anys', + }, + dayOfMonthOrdinalParse: /\d{1,2}(r|n|t|è|a)/, + ordinal: function (number, period) { + var output = + number === 1 + ? 'r' + : number === 2 + ? 'n' + : number === 3 + ? 'r' + : number === 4 + ? 't' + : 'è'; + if (period === 'w' || period === 'W') { + output = 'a'; + } + return number + output; + }, + week: { + dow: 1, // Monday is the first day of the week. + doy: 4, // The week that contains Jan 4th is the first week of the year. + }, + }); + + return ca; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/cs.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/cs.js new file mode 100644 index 0000000..43d0ebd --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/cs.js @@ -0,0 +1,191 @@ +//! moment.js locale configuration +//! locale : Czech [cs] +//! author : petrbela : https://github.com/petrbela + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var months = { + format: 'leden_únor_březen_duben_květen_červen_červenec_srpen_září_říjen_listopad_prosinec'.split( + '_' + ), + standalone: + 'ledna_února_března_dubna_května_června_července_srpna_září_října_listopadu_prosince'.split( + '_' + ), + }, + monthsShort = 'led_úno_bře_dub_kvě_čvn_čvc_srp_zář_říj_lis_pro'.split('_'), + monthsParse = [ + /^led/i, + /^úno/i, + /^bře/i, + /^dub/i, + /^kvě/i, + /^(čvn|červen$|června)/i, + /^(čvc|červenec|července)/i, + /^srp/i, + /^zář/i, + /^říj/i, + /^lis/i, + /^pro/i, + ], + // NOTE: 'červen' is substring of 'červenec'; therefore 'červenec' must precede 'červen' in the regex to be fully matched. + // Otherwise parser matches '1. červenec' as '1. červen' + 'ec'. + monthsRegex = + /^(leden|únor|březen|duben|květen|červenec|července|červen|června|srpen|září|říjen|listopad|prosinec|led|úno|bře|dub|kvě|čvn|čvc|srp|zář|říj|lis|pro)/i; + + function plural(n) { + return n > 1 && n < 5 && ~~(n / 10) !== 1; + } + function translate(number, withoutSuffix, key, isFuture) { + var result = number + ' '; + switch (key) { + case 's': // a few seconds / in a few seconds / a few seconds ago + return withoutSuffix || isFuture ? 'pár sekund' : 'pár sekundami'; + case 'ss': // 9 seconds / in 9 seconds / 9 seconds ago + if (withoutSuffix || isFuture) { + return result + (plural(number) ? 'sekundy' : 'sekund'); + } else { + return result + 'sekundami'; + } + case 'm': // a minute / in a minute / a minute ago + return withoutSuffix ? 'minuta' : isFuture ? 'minutu' : 'minutou'; + case 'mm': // 9 minutes / in 9 minutes / 9 minutes ago + if (withoutSuffix || isFuture) { + return result + (plural(number) ? 'minuty' : 'minut'); + } else { + return result + 'minutami'; + } + case 'h': // an hour / in an hour / an hour ago + return withoutSuffix ? 'hodina' : isFuture ? 'hodinu' : 'hodinou'; + case 'hh': // 9 hours / in 9 hours / 9 hours ago + if (withoutSuffix || isFuture) { + return result + (plural(number) ? 'hodiny' : 'hodin'); + } else { + return result + 'hodinami'; + } + case 'd': // a day / in a day / a day ago + return withoutSuffix || isFuture ? 'den' : 'dnem'; + case 'dd': // 9 days / in 9 days / 9 days ago + if (withoutSuffix || isFuture) { + return result + (plural(number) ? 'dny' : 'dní'); + } else { + return result + 'dny'; + } + case 'M': // a month / in a month / a month ago + return withoutSuffix || isFuture ? 'měsíc' : 'měsícem'; + case 'MM': // 9 months / in 9 months / 9 months ago + if (withoutSuffix || isFuture) { + return result + (plural(number) ? 'měsíce' : 'měsíců'); + } else { + return result + 'měsíci'; + } + case 'y': // a year / in a year / a year ago + return withoutSuffix || isFuture ? 'rok' : 'rokem'; + case 'yy': // 9 years / in 9 years / 9 years ago + if (withoutSuffix || isFuture) { + return result + (plural(number) ? 'roky' : 'let'); + } else { + return result + 'lety'; + } + } + } + + var cs = moment.defineLocale('cs', { + months: months, + monthsShort: monthsShort, + monthsRegex: monthsRegex, + monthsShortRegex: monthsRegex, + // NOTE: 'červen' is substring of 'červenec'; therefore 'červenec' must precede 'červen' in the regex to be fully matched. + // Otherwise parser matches '1. červenec' as '1. červen' + 'ec'. + monthsStrictRegex: + /^(leden|ledna|února|únor|březen|března|duben|dubna|květen|května|červenec|července|červen|června|srpen|srpna|září|říjen|října|listopadu|listopad|prosinec|prosince)/i, + monthsShortStrictRegex: + /^(led|úno|bře|dub|kvě|čvn|čvc|srp|zář|říj|lis|pro)/i, + monthsParse: monthsParse, + longMonthsParse: monthsParse, + shortMonthsParse: monthsParse, + weekdays: 'neděle_pondělí_úterý_středa_čtvrtek_pátek_sobota'.split('_'), + weekdaysShort: 'ne_po_út_st_čt_pá_so'.split('_'), + weekdaysMin: 'ne_po_út_st_čt_pá_so'.split('_'), + longDateFormat: { + LT: 'H:mm', + LTS: 'H:mm:ss', + L: 'DD.MM.YYYY', + LL: 'D. MMMM YYYY', + LLL: 'D. MMMM YYYY H:mm', + LLLL: 'dddd D. MMMM YYYY H:mm', + l: 'D. M. YYYY', + }, + calendar: { + sameDay: '[dnes v] LT', + nextDay: '[zítra v] LT', + nextWeek: function () { + switch (this.day()) { + case 0: + return '[v neděli v] LT'; + case 1: + case 2: + return '[v] dddd [v] LT'; + case 3: + return '[ve středu v] LT'; + case 4: + return '[ve čtvrtek v] LT'; + case 5: + return '[v pátek v] LT'; + case 6: + return '[v sobotu v] LT'; + } + }, + lastDay: '[včera v] LT', + lastWeek: function () { + switch (this.day()) { + case 0: + return '[minulou neděli v] LT'; + case 1: + case 2: + return '[minulé] dddd [v] LT'; + case 3: + return '[minulou středu v] LT'; + case 4: + case 5: + return '[minulý] dddd [v] LT'; + case 6: + return '[minulou sobotu v] LT'; + } + }, + sameElse: 'L', + }, + relativeTime: { + future: 'za %s', + past: 'před %s', + s: translate, + ss: translate, + m: translate, + mm: translate, + h: translate, + hh: translate, + d: translate, + dd: translate, + M: translate, + MM: translate, + y: translate, + yy: translate, + }, + dayOfMonthOrdinalParse: /\d{1,2}\./, + ordinal: '%d.', + week: { + dow: 1, // Monday is the first day of the week. + doy: 4, // The week that contains Jan 4th is the first week of the year. + }, + }); + + return cs; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/cv.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/cv.js new file mode 100644 index 0000000..abb1d4f --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/cv.js @@ -0,0 +1,74 @@ +//! moment.js locale configuration +//! locale : Chuvash [cv] +//! author : Anatoly Mironov : https://github.com/mirontoli + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var cv = moment.defineLocale('cv', { + months: 'кӑрлач_нарӑс_пуш_ака_май_ҫӗртме_утӑ_ҫурла_авӑн_юпа_чӳк_раштав'.split( + '_' + ), + monthsShort: 'кӑр_нар_пуш_ака_май_ҫӗр_утӑ_ҫур_авн_юпа_чӳк_раш'.split('_'), + weekdays: + 'вырсарникун_тунтикун_ытларикун_юнкун_кӗҫнерникун_эрнекун_шӑматкун'.split( + '_' + ), + weekdaysShort: 'выр_тун_ытл_юн_кӗҫ_эрн_шӑм'.split('_'), + weekdaysMin: 'вр_тн_ыт_юн_кҫ_эр_шм'.split('_'), + longDateFormat: { + LT: 'HH:mm', + LTS: 'HH:mm:ss', + L: 'DD-MM-YYYY', + LL: 'YYYY [ҫулхи] MMMM [уйӑхӗн] D[-мӗшӗ]', + LLL: 'YYYY [ҫулхи] MMMM [уйӑхӗн] D[-мӗшӗ], HH:mm', + LLLL: 'dddd, YYYY [ҫулхи] MMMM [уйӑхӗн] D[-мӗшӗ], HH:mm', + }, + calendar: { + sameDay: '[Паян] LT [сехетре]', + nextDay: '[Ыран] LT [сехетре]', + lastDay: '[Ӗнер] LT [сехетре]', + nextWeek: '[Ҫитес] dddd LT [сехетре]', + lastWeek: '[Иртнӗ] dddd LT [сехетре]', + sameElse: 'L', + }, + relativeTime: { + future: function (output) { + var affix = /сехет$/i.exec(output) + ? 'рен' + : /ҫул$/i.exec(output) + ? 'тан' + : 'ран'; + return output + affix; + }, + past: '%s каялла', + s: 'пӗр-ик ҫеккунт', + ss: '%d ҫеккунт', + m: 'пӗр минут', + mm: '%d минут', + h: 'пӗр сехет', + hh: '%d сехет', + d: 'пӗр кун', + dd: '%d кун', + M: 'пӗр уйӑх', + MM: '%d уйӑх', + y: 'пӗр ҫул', + yy: '%d ҫул', + }, + dayOfMonthOrdinalParse: /\d{1,2}-мӗш/, + ordinal: '%d-мӗш', + week: { + dow: 1, // Monday is the first day of the week. + doy: 7, // The week that contains Jan 7th is the first week of the year. + }, + }); + + return cv; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/cy.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/cy.js new file mode 100644 index 0000000..3b987f2 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/cy.js @@ -0,0 +1,109 @@ +//! moment.js locale configuration +//! locale : Welsh [cy] +//! author : Robert Allen : https://github.com/robgallen +//! author : https://github.com/ryangreaves + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var cy = moment.defineLocale('cy', { + months: 'Ionawr_Chwefror_Mawrth_Ebrill_Mai_Mehefin_Gorffennaf_Awst_Medi_Hydref_Tachwedd_Rhagfyr'.split( + '_' + ), + monthsShort: 'Ion_Chwe_Maw_Ebr_Mai_Meh_Gor_Aws_Med_Hyd_Tach_Rhag'.split( + '_' + ), + weekdays: + 'Dydd Sul_Dydd Llun_Dydd Mawrth_Dydd Mercher_Dydd Iau_Dydd Gwener_Dydd Sadwrn'.split( + '_' + ), + weekdaysShort: 'Sul_Llun_Maw_Mer_Iau_Gwe_Sad'.split('_'), + weekdaysMin: 'Su_Ll_Ma_Me_Ia_Gw_Sa'.split('_'), + weekdaysParseExact: true, + // time formats are the same as en-gb + longDateFormat: { + LT: 'HH:mm', + LTS: 'HH:mm:ss', + L: 'DD/MM/YYYY', + LL: 'D MMMM YYYY', + LLL: 'D MMMM YYYY HH:mm', + LLLL: 'dddd, D MMMM YYYY HH:mm', + }, + calendar: { + sameDay: '[Heddiw am] LT', + nextDay: '[Yfory am] LT', + nextWeek: 'dddd [am] LT', + lastDay: '[Ddoe am] LT', + lastWeek: 'dddd [diwethaf am] LT', + sameElse: 'L', + }, + relativeTime: { + future: 'mewn %s', + past: '%s yn ôl', + s: 'ychydig eiliadau', + ss: '%d eiliad', + m: 'munud', + mm: '%d munud', + h: 'awr', + hh: '%d awr', + d: 'diwrnod', + dd: '%d diwrnod', + M: 'mis', + MM: '%d mis', + y: 'blwyddyn', + yy: '%d flynedd', + }, + dayOfMonthOrdinalParse: /\d{1,2}(fed|ain|af|il|ydd|ed|eg)/, + // traditional ordinal numbers above 31 are not commonly used in colloquial Welsh + ordinal: function (number) { + var b = number, + output = '', + lookup = [ + '', + 'af', + 'il', + 'ydd', + 'ydd', + 'ed', + 'ed', + 'ed', + 'fed', + 'fed', + 'fed', // 1af to 10fed + 'eg', + 'fed', + 'eg', + 'eg', + 'fed', + 'eg', + 'eg', + 'fed', + 'eg', + 'fed', // 11eg to 20fed + ]; + if (b > 20) { + if (b === 40 || b === 50 || b === 60 || b === 80 || b === 100) { + output = 'fed'; // not 30ain, 70ain or 90ain + } else { + output = 'ain'; + } + } else if (b > 0) { + output = lookup[b]; + } + return number + output; + }, + week: { + dow: 1, // Monday is the first day of the week. + doy: 4, // The week that contains Jan 4th is the first week of the year. + }, + }); + + return cy; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/da.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/da.js new file mode 100644 index 0000000..2ed0583 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/da.js @@ -0,0 +1,64 @@ +//! moment.js locale configuration +//! locale : Danish [da] +//! author : Ulrik Nielsen : https://github.com/mrbase + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var da = moment.defineLocale('da', { + months: 'januar_februar_marts_april_maj_juni_juli_august_september_oktober_november_december'.split( + '_' + ), + monthsShort: 'jan_feb_mar_apr_maj_jun_jul_aug_sep_okt_nov_dec'.split('_'), + weekdays: 'søndag_mandag_tirsdag_onsdag_torsdag_fredag_lørdag'.split('_'), + weekdaysShort: 'søn_man_tir_ons_tor_fre_lør'.split('_'), + weekdaysMin: 'sø_ma_ti_on_to_fr_lø'.split('_'), + longDateFormat: { + LT: 'HH:mm', + LTS: 'HH:mm:ss', + L: 'DD.MM.YYYY', + LL: 'D. MMMM YYYY', + LLL: 'D. MMMM YYYY HH:mm', + LLLL: 'dddd [d.] D. MMMM YYYY [kl.] HH:mm', + }, + calendar: { + sameDay: '[i dag kl.] LT', + nextDay: '[i morgen kl.] LT', + nextWeek: 'på dddd [kl.] LT', + lastDay: '[i går kl.] LT', + lastWeek: '[i] dddd[s kl.] LT', + sameElse: 'L', + }, + relativeTime: { + future: 'om %s', + past: '%s siden', + s: 'få sekunder', + ss: '%d sekunder', + m: 'et minut', + mm: '%d minutter', + h: 'en time', + hh: '%d timer', + d: 'en dag', + dd: '%d dage', + M: 'en måned', + MM: '%d måneder', + y: 'et år', + yy: '%d år', + }, + dayOfMonthOrdinalParse: /\d{1,2}\./, + ordinal: '%d.', + week: { + dow: 1, // Monday is the first day of the week. + doy: 4, // The week that contains Jan 4th is the first week of the year. + }, + }); + + return da; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/de-at.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/de-at.js new file mode 100644 index 0000000..7c31302 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/de-at.js @@ -0,0 +1,90 @@ +//! moment.js locale configuration +//! locale : German (Austria) [de-at] +//! author : lluchs : https://github.com/lluchs +//! author: Menelion Elensúle: https://github.com/Oire +//! author : Martin Groller : https://github.com/MadMG +//! author : Mikolaj Dadela : https://github.com/mik01aj + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + function processRelativeTime(number, withoutSuffix, key, isFuture) { + var format = { + m: ['eine Minute', 'einer Minute'], + h: ['eine Stunde', 'einer Stunde'], + d: ['ein Tag', 'einem Tag'], + dd: [number + ' Tage', number + ' Tagen'], + w: ['eine Woche', 'einer Woche'], + M: ['ein Monat', 'einem Monat'], + MM: [number + ' Monate', number + ' Monaten'], + y: ['ein Jahr', 'einem Jahr'], + yy: [number + ' Jahre', number + ' Jahren'], + }; + return withoutSuffix ? format[key][0] : format[key][1]; + } + + var deAt = moment.defineLocale('de-at', { + months: 'Jänner_Februar_März_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember'.split( + '_' + ), + monthsShort: + 'Jän._Feb._März_Apr._Mai_Juni_Juli_Aug._Sep._Okt._Nov._Dez.'.split('_'), + monthsParseExact: true, + weekdays: + 'Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag'.split( + '_' + ), + weekdaysShort: 'So._Mo._Di._Mi._Do._Fr._Sa.'.split('_'), + weekdaysMin: 'So_Mo_Di_Mi_Do_Fr_Sa'.split('_'), + weekdaysParseExact: true, + longDateFormat: { + LT: 'HH:mm', + LTS: 'HH:mm:ss', + L: 'DD.MM.YYYY', + LL: 'D. MMMM YYYY', + LLL: 'D. MMMM YYYY HH:mm', + LLLL: 'dddd, D. MMMM YYYY HH:mm', + }, + calendar: { + sameDay: '[heute um] LT [Uhr]', + sameElse: 'L', + nextDay: '[morgen um] LT [Uhr]', + nextWeek: 'dddd [um] LT [Uhr]', + lastDay: '[gestern um] LT [Uhr]', + lastWeek: '[letzten] dddd [um] LT [Uhr]', + }, + relativeTime: { + future: 'in %s', + past: 'vor %s', + s: 'ein paar Sekunden', + ss: '%d Sekunden', + m: processRelativeTime, + mm: '%d Minuten', + h: processRelativeTime, + hh: '%d Stunden', + d: processRelativeTime, + dd: processRelativeTime, + w: processRelativeTime, + ww: '%d Wochen', + M: processRelativeTime, + MM: processRelativeTime, + y: processRelativeTime, + yy: processRelativeTime, + }, + dayOfMonthOrdinalParse: /\d{1,2}\./, + ordinal: '%d.', + week: { + dow: 1, // Monday is the first day of the week. + doy: 4, // The week that contains Jan 4th is the first week of the year. + }, + }); + + return deAt; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/de-ch.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/de-ch.js new file mode 100644 index 0000000..10fed17 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/de-ch.js @@ -0,0 +1,87 @@ +//! moment.js locale configuration +//! locale : German (Switzerland) [de-ch] +//! author : sschueller : https://github.com/sschueller + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + function processRelativeTime(number, withoutSuffix, key, isFuture) { + var format = { + m: ['eine Minute', 'einer Minute'], + h: ['eine Stunde', 'einer Stunde'], + d: ['ein Tag', 'einem Tag'], + dd: [number + ' Tage', number + ' Tagen'], + w: ['eine Woche', 'einer Woche'], + M: ['ein Monat', 'einem Monat'], + MM: [number + ' Monate', number + ' Monaten'], + y: ['ein Jahr', 'einem Jahr'], + yy: [number + ' Jahre', number + ' Jahren'], + }; + return withoutSuffix ? format[key][0] : format[key][1]; + } + + var deCh = moment.defineLocale('de-ch', { + months: 'Januar_Februar_März_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember'.split( + '_' + ), + monthsShort: + 'Jan._Feb._März_Apr._Mai_Juni_Juli_Aug._Sep._Okt._Nov._Dez.'.split('_'), + monthsParseExact: true, + weekdays: + 'Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag'.split( + '_' + ), + weekdaysShort: 'So_Mo_Di_Mi_Do_Fr_Sa'.split('_'), + weekdaysMin: 'So_Mo_Di_Mi_Do_Fr_Sa'.split('_'), + weekdaysParseExact: true, + longDateFormat: { + LT: 'HH:mm', + LTS: 'HH:mm:ss', + L: 'DD.MM.YYYY', + LL: 'D. MMMM YYYY', + LLL: 'D. MMMM YYYY HH:mm', + LLLL: 'dddd, D. MMMM YYYY HH:mm', + }, + calendar: { + sameDay: '[heute um] LT [Uhr]', + sameElse: 'L', + nextDay: '[morgen um] LT [Uhr]', + nextWeek: 'dddd [um] LT [Uhr]', + lastDay: '[gestern um] LT [Uhr]', + lastWeek: '[letzten] dddd [um] LT [Uhr]', + }, + relativeTime: { + future: 'in %s', + past: 'vor %s', + s: 'ein paar Sekunden', + ss: '%d Sekunden', + m: processRelativeTime, + mm: '%d Minuten', + h: processRelativeTime, + hh: '%d Stunden', + d: processRelativeTime, + dd: processRelativeTime, + w: processRelativeTime, + ww: '%d Wochen', + M: processRelativeTime, + MM: processRelativeTime, + y: processRelativeTime, + yy: processRelativeTime, + }, + dayOfMonthOrdinalParse: /\d{1,2}\./, + ordinal: '%d.', + week: { + dow: 1, // Monday is the first day of the week. + doy: 4, // The week that contains Jan 4th is the first week of the year. + }, + }); + + return deCh; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/de.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/de.js new file mode 100644 index 0000000..cc061eb --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/de.js @@ -0,0 +1,89 @@ +//! moment.js locale configuration +//! locale : German [de] +//! author : lluchs : https://github.com/lluchs +//! author: Menelion Elensúle: https://github.com/Oire +//! author : Mikolaj Dadela : https://github.com/mik01aj + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + function processRelativeTime(number, withoutSuffix, key, isFuture) { + var format = { + m: ['eine Minute', 'einer Minute'], + h: ['eine Stunde', 'einer Stunde'], + d: ['ein Tag', 'einem Tag'], + dd: [number + ' Tage', number + ' Tagen'], + w: ['eine Woche', 'einer Woche'], + M: ['ein Monat', 'einem Monat'], + MM: [number + ' Monate', number + ' Monaten'], + y: ['ein Jahr', 'einem Jahr'], + yy: [number + ' Jahre', number + ' Jahren'], + }; + return withoutSuffix ? format[key][0] : format[key][1]; + } + + var de = moment.defineLocale('de', { + months: 'Januar_Februar_März_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember'.split( + '_' + ), + monthsShort: + 'Jan._Feb._März_Apr._Mai_Juni_Juli_Aug._Sep._Okt._Nov._Dez.'.split('_'), + monthsParseExact: true, + weekdays: + 'Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag'.split( + '_' + ), + weekdaysShort: 'So._Mo._Di._Mi._Do._Fr._Sa.'.split('_'), + weekdaysMin: 'So_Mo_Di_Mi_Do_Fr_Sa'.split('_'), + weekdaysParseExact: true, + longDateFormat: { + LT: 'HH:mm', + LTS: 'HH:mm:ss', + L: 'DD.MM.YYYY', + LL: 'D. MMMM YYYY', + LLL: 'D. MMMM YYYY HH:mm', + LLLL: 'dddd, D. MMMM YYYY HH:mm', + }, + calendar: { + sameDay: '[heute um] LT [Uhr]', + sameElse: 'L', + nextDay: '[morgen um] LT [Uhr]', + nextWeek: 'dddd [um] LT [Uhr]', + lastDay: '[gestern um] LT [Uhr]', + lastWeek: '[letzten] dddd [um] LT [Uhr]', + }, + relativeTime: { + future: 'in %s', + past: 'vor %s', + s: 'ein paar Sekunden', + ss: '%d Sekunden', + m: processRelativeTime, + mm: '%d Minuten', + h: processRelativeTime, + hh: '%d Stunden', + d: processRelativeTime, + dd: processRelativeTime, + w: processRelativeTime, + ww: '%d Wochen', + M: processRelativeTime, + MM: processRelativeTime, + y: processRelativeTime, + yy: processRelativeTime, + }, + dayOfMonthOrdinalParse: /\d{1,2}\./, + ordinal: '%d.', + week: { + dow: 1, // Monday is the first day of the week. + doy: 4, // The week that contains Jan 4th is the first week of the year. + }, + }); + + return de; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/dv.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/dv.js new file mode 100644 index 0000000..e6cc8f6 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/dv.js @@ -0,0 +1,101 @@ +//! moment.js locale configuration +//! locale : Maldivian [dv] +//! author : Jawish Hameed : https://github.com/jawish + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var months = [ + 'ޖެނުއަރީ', + 'ފެބްރުއަރީ', + 'މާރިޗު', + 'އޭޕްރީލު', + 'މޭ', + 'ޖޫން', + 'ޖުލައި', + 'އޯގަސްޓު', + 'ސެޕްޓެމްބަރު', + 'އޮކްޓޯބަރު', + 'ނޮވެމްބަރު', + 'ޑިސެމްބަރު', + ], + weekdays = [ + 'އާދިއްތަ', + 'ހޯމަ', + 'އަންގާރަ', + 'ބުދަ', + 'ބުރާސްފަތި', + 'ހުކުރު', + 'ހޮނިހިރު', + ]; + + var dv = moment.defineLocale('dv', { + months: months, + monthsShort: months, + weekdays: weekdays, + weekdaysShort: weekdays, + weekdaysMin: 'އާދި_ހޯމަ_އަން_ބުދަ_ބުރާ_ހުކު_ހޮނި'.split('_'), + longDateFormat: { + LT: 'HH:mm', + LTS: 'HH:mm:ss', + L: 'D/M/YYYY', + LL: 'D MMMM YYYY', + LLL: 'D MMMM YYYY HH:mm', + LLLL: 'dddd D MMMM YYYY HH:mm', + }, + meridiemParse: /މކ|މފ/, + isPM: function (input) { + return 'މފ' === input; + }, + meridiem: function (hour, minute, isLower) { + if (hour < 12) { + return 'މކ'; + } else { + return 'މފ'; + } + }, + calendar: { + sameDay: '[މިއަދު] LT', + nextDay: '[މާދަމާ] LT', + nextWeek: 'dddd LT', + lastDay: '[އިއްޔެ] LT', + lastWeek: '[ފާއިތުވި] dddd LT', + sameElse: 'L', + }, + relativeTime: { + future: 'ތެރޭގައި %s', + past: 'ކުރިން %s', + s: 'ސިކުންތުކޮޅެއް', + ss: 'd% ސިކުންތު', + m: 'މިނިޓެއް', + mm: 'މިނިޓު %d', + h: 'ގަޑިއިރެއް', + hh: 'ގަޑިއިރު %d', + d: 'ދުވަހެއް', + dd: 'ދުވަސް %d', + M: 'މަހެއް', + MM: 'މަސް %d', + y: 'އަހަރެއް', + yy: 'އަހަރު %d', + }, + preparse: function (string) { + return string.replace(/،/g, ','); + }, + postformat: function (string) { + return string.replace(/,/g, '،'); + }, + week: { + dow: 7, // Sunday is the first day of the week. + doy: 12, // The week that contains Jan 12th is the first week of the year. + }, + }); + + return dv; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/el.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/el.js new file mode 100644 index 0000000..a147859 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/el.js @@ -0,0 +1,117 @@ +//! moment.js locale configuration +//! locale : Greek [el] +//! author : Aggelos Karalias : https://github.com/mehiel + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + function isFunction(input) { + return ( + (typeof Function !== 'undefined' && input instanceof Function) || + Object.prototype.toString.call(input) === '[object Function]' + ); + } + + var el = moment.defineLocale('el', { + monthsNominativeEl: + 'Ιανουάριος_Φεβρουάριος_Μάρτιος_Απρίλιος_Μάιος_Ιούνιος_Ιούλιος_Αύγουστος_Σεπτέμβριος_Οκτώβριος_Νοέμβριος_Δεκέμβριος'.split( + '_' + ), + monthsGenitiveEl: + 'Ιανουαρίου_Φεβρουαρίου_Μαρτίου_Απριλίου_Μαΐου_Ιουνίου_Ιουλίου_Αυγούστου_Σεπτεμβρίου_Οκτωβρίου_Νοεμβρίου_Δεκεμβρίου'.split( + '_' + ), + months: function (momentToFormat, format) { + if (!momentToFormat) { + return this._monthsNominativeEl; + } else if ( + typeof format === 'string' && + /D/.test(format.substring(0, format.indexOf('MMMM'))) + ) { + // if there is a day number before 'MMMM' + return this._monthsGenitiveEl[momentToFormat.month()]; + } else { + return this._monthsNominativeEl[momentToFormat.month()]; + } + }, + monthsShort: 'Ιαν_Φεβ_Μαρ_Απρ_Μαϊ_Ιουν_Ιουλ_Αυγ_Σεπ_Οκτ_Νοε_Δεκ'.split('_'), + weekdays: 'Κυριακή_Δευτέρα_Τρίτη_Τετάρτη_Πέμπτη_Παρασκευή_Σάββατο'.split( + '_' + ), + weekdaysShort: 'Κυρ_Δευ_Τρι_Τετ_Πεμ_Παρ_Σαβ'.split('_'), + weekdaysMin: 'Κυ_Δε_Τρ_Τε_Πε_Πα_Σα'.split('_'), + meridiem: function (hours, minutes, isLower) { + if (hours > 11) { + return isLower ? 'μμ' : 'ΜΜ'; + } else { + return isLower ? 'πμ' : 'ΠΜ'; + } + }, + isPM: function (input) { + return (input + '').toLowerCase()[0] === 'μ'; + }, + meridiemParse: /[ΠΜ]\.?Μ?\.?/i, + longDateFormat: { + LT: 'h:mm A', + LTS: 'h:mm:ss A', + L: 'DD/MM/YYYY', + LL: 'D MMMM YYYY', + LLL: 'D MMMM YYYY h:mm A', + LLLL: 'dddd, D MMMM YYYY h:mm A', + }, + calendarEl: { + sameDay: '[Σήμερα {}] LT', + nextDay: '[Αύριο {}] LT', + nextWeek: 'dddd [{}] LT', + lastDay: '[Χθες {}] LT', + lastWeek: function () { + switch (this.day()) { + case 6: + return '[το προηγούμενο] dddd [{}] LT'; + default: + return '[την προηγούμενη] dddd [{}] LT'; + } + }, + sameElse: 'L', + }, + calendar: function (key, mom) { + var output = this._calendarEl[key], + hours = mom && mom.hours(); + if (isFunction(output)) { + output = output.apply(mom); + } + return output.replace('{}', hours % 12 === 1 ? 'στη' : 'στις'); + }, + relativeTime: { + future: 'σε %s', + past: '%s πριν', + s: 'λίγα δευτερόλεπτα', + ss: '%d δευτερόλεπτα', + m: 'ένα λεπτό', + mm: '%d λεπτά', + h: 'μία ώρα', + hh: '%d ώρες', + d: 'μία μέρα', + dd: '%d μέρες', + M: 'ένας μήνας', + MM: '%d μήνες', + y: 'ένας χρόνος', + yy: '%d χρόνια', + }, + dayOfMonthOrdinalParse: /\d{1,2}η/, + ordinal: '%dη', + week: { + dow: 1, // Monday is the first day of the week. + doy: 4, // The week that contains Jan 4st is the first week of the year. + }, + }); + + return el; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/en-au.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/en-au.js new file mode 100644 index 0000000..6e320ba --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/en-au.js @@ -0,0 +1,79 @@ +//! moment.js locale configuration +//! locale : English (Australia) [en-au] +//! author : Jared Morse : https://github.com/jarcoal + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var enAu = moment.defineLocale('en-au', { + months: 'January_February_March_April_May_June_July_August_September_October_November_December'.split( + '_' + ), + monthsShort: 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'), + weekdays: 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split( + '_' + ), + weekdaysShort: 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'), + weekdaysMin: 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'), + longDateFormat: { + LT: 'h:mm A', + LTS: 'h:mm:ss A', + L: 'DD/MM/YYYY', + LL: 'D MMMM YYYY', + LLL: 'D MMMM YYYY h:mm A', + LLLL: 'dddd, D MMMM YYYY h:mm A', + }, + calendar: { + sameDay: '[Today at] LT', + nextDay: '[Tomorrow at] LT', + nextWeek: 'dddd [at] LT', + lastDay: '[Yesterday at] LT', + lastWeek: '[Last] dddd [at] LT', + sameElse: 'L', + }, + relativeTime: { + future: 'in %s', + past: '%s ago', + s: 'a few seconds', + ss: '%d seconds', + m: 'a minute', + mm: '%d minutes', + h: 'an hour', + hh: '%d hours', + d: 'a day', + dd: '%d days', + M: 'a month', + MM: '%d months', + y: 'a year', + yy: '%d years', + }, + dayOfMonthOrdinalParse: /\d{1,2}(st|nd|rd|th)/, + ordinal: function (number) { + var b = number % 10, + output = + ~~((number % 100) / 10) === 1 + ? 'th' + : b === 1 + ? 'st' + : b === 2 + ? 'nd' + : b === 3 + ? 'rd' + : 'th'; + return number + output; + }, + week: { + dow: 0, // Sunday is the first day of the week. + doy: 4, // The week that contains Jan 4th is the first week of the year. + }, + }); + + return enAu; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/en-ca.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/en-ca.js new file mode 100644 index 0000000..bc574f1 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/en-ca.js @@ -0,0 +1,75 @@ +//! moment.js locale configuration +//! locale : English (Canada) [en-ca] +//! author : Jonathan Abourbih : https://github.com/jonbca + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var enCa = moment.defineLocale('en-ca', { + months: 'January_February_March_April_May_June_July_August_September_October_November_December'.split( + '_' + ), + monthsShort: 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'), + weekdays: 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split( + '_' + ), + weekdaysShort: 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'), + weekdaysMin: 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'), + longDateFormat: { + LT: 'h:mm A', + LTS: 'h:mm:ss A', + L: 'YYYY-MM-DD', + LL: 'MMMM D, YYYY', + LLL: 'MMMM D, YYYY h:mm A', + LLLL: 'dddd, MMMM D, YYYY h:mm A', + }, + calendar: { + sameDay: '[Today at] LT', + nextDay: '[Tomorrow at] LT', + nextWeek: 'dddd [at] LT', + lastDay: '[Yesterday at] LT', + lastWeek: '[Last] dddd [at] LT', + sameElse: 'L', + }, + relativeTime: { + future: 'in %s', + past: '%s ago', + s: 'a few seconds', + ss: '%d seconds', + m: 'a minute', + mm: '%d minutes', + h: 'an hour', + hh: '%d hours', + d: 'a day', + dd: '%d days', + M: 'a month', + MM: '%d months', + y: 'a year', + yy: '%d years', + }, + dayOfMonthOrdinalParse: /\d{1,2}(st|nd|rd|th)/, + ordinal: function (number) { + var b = number % 10, + output = + ~~((number % 100) / 10) === 1 + ? 'th' + : b === 1 + ? 'st' + : b === 2 + ? 'nd' + : b === 3 + ? 'rd' + : 'th'; + return number + output; + }, + }); + + return enCa; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/en-gb.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/en-gb.js new file mode 100644 index 0000000..828791e --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/en-gb.js @@ -0,0 +1,79 @@ +//! moment.js locale configuration +//! locale : English (United Kingdom) [en-gb] +//! author : Chris Gedrim : https://github.com/chrisgedrim + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var enGb = moment.defineLocale('en-gb', { + months: 'January_February_March_April_May_June_July_August_September_October_November_December'.split( + '_' + ), + monthsShort: 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'), + weekdays: 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split( + '_' + ), + weekdaysShort: 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'), + weekdaysMin: 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'), + longDateFormat: { + LT: 'HH:mm', + LTS: 'HH:mm:ss', + L: 'DD/MM/YYYY', + LL: 'D MMMM YYYY', + LLL: 'D MMMM YYYY HH:mm', + LLLL: 'dddd, D MMMM YYYY HH:mm', + }, + calendar: { + sameDay: '[Today at] LT', + nextDay: '[Tomorrow at] LT', + nextWeek: 'dddd [at] LT', + lastDay: '[Yesterday at] LT', + lastWeek: '[Last] dddd [at] LT', + sameElse: 'L', + }, + relativeTime: { + future: 'in %s', + past: '%s ago', + s: 'a few seconds', + ss: '%d seconds', + m: 'a minute', + mm: '%d minutes', + h: 'an hour', + hh: '%d hours', + d: 'a day', + dd: '%d days', + M: 'a month', + MM: '%d months', + y: 'a year', + yy: '%d years', + }, + dayOfMonthOrdinalParse: /\d{1,2}(st|nd|rd|th)/, + ordinal: function (number) { + var b = number % 10, + output = + ~~((number % 100) / 10) === 1 + ? 'th' + : b === 1 + ? 'st' + : b === 2 + ? 'nd' + : b === 3 + ? 'rd' + : 'th'; + return number + output; + }, + week: { + dow: 1, // Monday is the first day of the week. + doy: 4, // The week that contains Jan 4th is the first week of the year. + }, + }); + + return enGb; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/en-ie.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/en-ie.js new file mode 100644 index 0000000..086cf39 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/en-ie.js @@ -0,0 +1,79 @@ +//! moment.js locale configuration +//! locale : English (Ireland) [en-ie] +//! author : Chris Cartlidge : https://github.com/chriscartlidge + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var enIe = moment.defineLocale('en-ie', { + months: 'January_February_March_April_May_June_July_August_September_October_November_December'.split( + '_' + ), + monthsShort: 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'), + weekdays: 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split( + '_' + ), + weekdaysShort: 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'), + weekdaysMin: 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'), + longDateFormat: { + LT: 'HH:mm', + LTS: 'HH:mm:ss', + L: 'DD/MM/YYYY', + LL: 'D MMMM YYYY', + LLL: 'D MMMM YYYY HH:mm', + LLLL: 'dddd D MMMM YYYY HH:mm', + }, + calendar: { + sameDay: '[Today at] LT', + nextDay: '[Tomorrow at] LT', + nextWeek: 'dddd [at] LT', + lastDay: '[Yesterday at] LT', + lastWeek: '[Last] dddd [at] LT', + sameElse: 'L', + }, + relativeTime: { + future: 'in %s', + past: '%s ago', + s: 'a few seconds', + ss: '%d seconds', + m: 'a minute', + mm: '%d minutes', + h: 'an hour', + hh: '%d hours', + d: 'a day', + dd: '%d days', + M: 'a month', + MM: '%d months', + y: 'a year', + yy: '%d years', + }, + dayOfMonthOrdinalParse: /\d{1,2}(st|nd|rd|th)/, + ordinal: function (number) { + var b = number % 10, + output = + ~~((number % 100) / 10) === 1 + ? 'th' + : b === 1 + ? 'st' + : b === 2 + ? 'nd' + : b === 3 + ? 'rd' + : 'th'; + return number + output; + }, + week: { + dow: 1, // Monday is the first day of the week. + doy: 4, // The week that contains Jan 4th is the first week of the year. + }, + }); + + return enIe; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/en-il.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/en-il.js new file mode 100644 index 0000000..e52503c --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/en-il.js @@ -0,0 +1,75 @@ +//! moment.js locale configuration +//! locale : English (Israel) [en-il] +//! author : Chris Gedrim : https://github.com/chrisgedrim + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var enIl = moment.defineLocale('en-il', { + months: 'January_February_March_April_May_June_July_August_September_October_November_December'.split( + '_' + ), + monthsShort: 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'), + weekdays: 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split( + '_' + ), + weekdaysShort: 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'), + weekdaysMin: 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'), + longDateFormat: { + LT: 'HH:mm', + LTS: 'HH:mm:ss', + L: 'DD/MM/YYYY', + LL: 'D MMMM YYYY', + LLL: 'D MMMM YYYY HH:mm', + LLLL: 'dddd, D MMMM YYYY HH:mm', + }, + calendar: { + sameDay: '[Today at] LT', + nextDay: '[Tomorrow at] LT', + nextWeek: 'dddd [at] LT', + lastDay: '[Yesterday at] LT', + lastWeek: '[Last] dddd [at] LT', + sameElse: 'L', + }, + relativeTime: { + future: 'in %s', + past: '%s ago', + s: 'a few seconds', + ss: '%d seconds', + m: 'a minute', + mm: '%d minutes', + h: 'an hour', + hh: '%d hours', + d: 'a day', + dd: '%d days', + M: 'a month', + MM: '%d months', + y: 'a year', + yy: '%d years', + }, + dayOfMonthOrdinalParse: /\d{1,2}(st|nd|rd|th)/, + ordinal: function (number) { + var b = number % 10, + output = + ~~((number % 100) / 10) === 1 + ? 'th' + : b === 1 + ? 'st' + : b === 2 + ? 'nd' + : b === 3 + ? 'rd' + : 'th'; + return number + output; + }, + }); + + return enIl; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/en-in.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/en-in.js new file mode 100644 index 0000000..06b9abc --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/en-in.js @@ -0,0 +1,79 @@ +//! moment.js locale configuration +//! locale : English (India) [en-in] +//! author : Jatin Agrawal : https://github.com/jatinag22 + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var enIn = moment.defineLocale('en-in', { + months: 'January_February_March_April_May_June_July_August_September_October_November_December'.split( + '_' + ), + monthsShort: 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'), + weekdays: 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split( + '_' + ), + weekdaysShort: 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'), + weekdaysMin: 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'), + longDateFormat: { + LT: 'h:mm A', + LTS: 'h:mm:ss A', + L: 'DD/MM/YYYY', + LL: 'D MMMM YYYY', + LLL: 'D MMMM YYYY h:mm A', + LLLL: 'dddd, D MMMM YYYY h:mm A', + }, + calendar: { + sameDay: '[Today at] LT', + nextDay: '[Tomorrow at] LT', + nextWeek: 'dddd [at] LT', + lastDay: '[Yesterday at] LT', + lastWeek: '[Last] dddd [at] LT', + sameElse: 'L', + }, + relativeTime: { + future: 'in %s', + past: '%s ago', + s: 'a few seconds', + ss: '%d seconds', + m: 'a minute', + mm: '%d minutes', + h: 'an hour', + hh: '%d hours', + d: 'a day', + dd: '%d days', + M: 'a month', + MM: '%d months', + y: 'a year', + yy: '%d years', + }, + dayOfMonthOrdinalParse: /\d{1,2}(st|nd|rd|th)/, + ordinal: function (number) { + var b = number % 10, + output = + ~~((number % 100) / 10) === 1 + ? 'th' + : b === 1 + ? 'st' + : b === 2 + ? 'nd' + : b === 3 + ? 'rd' + : 'th'; + return number + output; + }, + week: { + dow: 0, // Sunday is the first day of the week. + doy: 6, // The week that contains Jan 1st is the first week of the year. + }, + }); + + return enIn; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/en-nz.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/en-nz.js new file mode 100644 index 0000000..3bc7e9f --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/en-nz.js @@ -0,0 +1,79 @@ +//! moment.js locale configuration +//! locale : English (New Zealand) [en-nz] +//! author : Luke McGregor : https://github.com/lukemcgregor + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var enNz = moment.defineLocale('en-nz', { + months: 'January_February_March_April_May_June_July_August_September_October_November_December'.split( + '_' + ), + monthsShort: 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'), + weekdays: 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split( + '_' + ), + weekdaysShort: 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'), + weekdaysMin: 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'), + longDateFormat: { + LT: 'h:mm A', + LTS: 'h:mm:ss A', + L: 'DD/MM/YYYY', + LL: 'D MMMM YYYY', + LLL: 'D MMMM YYYY h:mm A', + LLLL: 'dddd, D MMMM YYYY h:mm A', + }, + calendar: { + sameDay: '[Today at] LT', + nextDay: '[Tomorrow at] LT', + nextWeek: 'dddd [at] LT', + lastDay: '[Yesterday at] LT', + lastWeek: '[Last] dddd [at] LT', + sameElse: 'L', + }, + relativeTime: { + future: 'in %s', + past: '%s ago', + s: 'a few seconds', + ss: '%d seconds', + m: 'a minute', + mm: '%d minutes', + h: 'an hour', + hh: '%d hours', + d: 'a day', + dd: '%d days', + M: 'a month', + MM: '%d months', + y: 'a year', + yy: '%d years', + }, + dayOfMonthOrdinalParse: /\d{1,2}(st|nd|rd|th)/, + ordinal: function (number) { + var b = number % 10, + output = + ~~((number % 100) / 10) === 1 + ? 'th' + : b === 1 + ? 'st' + : b === 2 + ? 'nd' + : b === 3 + ? 'rd' + : 'th'; + return number + output; + }, + week: { + dow: 1, // Monday is the first day of the week. + doy: 4, // The week that contains Jan 4th is the first week of the year. + }, + }); + + return enNz; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/en-sg.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/en-sg.js new file mode 100644 index 0000000..4de803c --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/en-sg.js @@ -0,0 +1,79 @@ +//! moment.js locale configuration +//! locale : English (Singapore) [en-sg] +//! author : Matthew Castrillon-Madrigal : https://github.com/techdimension + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var enSg = moment.defineLocale('en-sg', { + months: 'January_February_March_April_May_June_July_August_September_October_November_December'.split( + '_' + ), + monthsShort: 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'), + weekdays: 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split( + '_' + ), + weekdaysShort: 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'), + weekdaysMin: 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'), + longDateFormat: { + LT: 'HH:mm', + LTS: 'HH:mm:ss', + L: 'DD/MM/YYYY', + LL: 'D MMMM YYYY', + LLL: 'D MMMM YYYY HH:mm', + LLLL: 'dddd, D MMMM YYYY HH:mm', + }, + calendar: { + sameDay: '[Today at] LT', + nextDay: '[Tomorrow at] LT', + nextWeek: 'dddd [at] LT', + lastDay: '[Yesterday at] LT', + lastWeek: '[Last] dddd [at] LT', + sameElse: 'L', + }, + relativeTime: { + future: 'in %s', + past: '%s ago', + s: 'a few seconds', + ss: '%d seconds', + m: 'a minute', + mm: '%d minutes', + h: 'an hour', + hh: '%d hours', + d: 'a day', + dd: '%d days', + M: 'a month', + MM: '%d months', + y: 'a year', + yy: '%d years', + }, + dayOfMonthOrdinalParse: /\d{1,2}(st|nd|rd|th)/, + ordinal: function (number) { + var b = number % 10, + output = + ~~((number % 100) / 10) === 1 + ? 'th' + : b === 1 + ? 'st' + : b === 2 + ? 'nd' + : b === 3 + ? 'rd' + : 'th'; + return number + output; + }, + week: { + dow: 1, // Monday is the first day of the week. + doy: 4, // The week that contains Jan 4th is the first week of the year. + }, + }); + + return enSg; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/eo.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/eo.js new file mode 100644 index 0000000..799dad0 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/eo.js @@ -0,0 +1,79 @@ +//! moment.js locale configuration +//! locale : Esperanto [eo] +//! author : Colin Dean : https://github.com/colindean +//! author : Mia Nordentoft Imperatori : https://github.com/miestasmia +//! comment : miestasmia corrected the translation by colindean +//! comment : Vivakvo corrected the translation by colindean and miestasmia + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var eo = moment.defineLocale('eo', { + months: 'januaro_februaro_marto_aprilo_majo_junio_julio_aŭgusto_septembro_oktobro_novembro_decembro'.split( + '_' + ), + monthsShort: 'jan_feb_mart_apr_maj_jun_jul_aŭg_sept_okt_nov_dec'.split('_'), + weekdays: 'dimanĉo_lundo_mardo_merkredo_ĵaŭdo_vendredo_sabato'.split('_'), + weekdaysShort: 'dim_lun_mard_merk_ĵaŭ_ven_sab'.split('_'), + weekdaysMin: 'di_lu_ma_me_ĵa_ve_sa'.split('_'), + longDateFormat: { + LT: 'HH:mm', + LTS: 'HH:mm:ss', + L: 'YYYY-MM-DD', + LL: '[la] D[-an de] MMMM, YYYY', + LLL: '[la] D[-an de] MMMM, YYYY HH:mm', + LLLL: 'dddd[n], [la] D[-an de] MMMM, YYYY HH:mm', + llll: 'ddd, [la] D[-an de] MMM, YYYY HH:mm', + }, + meridiemParse: /[ap]\.t\.m/i, + isPM: function (input) { + return input.charAt(0).toLowerCase() === 'p'; + }, + meridiem: function (hours, minutes, isLower) { + if (hours > 11) { + return isLower ? 'p.t.m.' : 'P.T.M.'; + } else { + return isLower ? 'a.t.m.' : 'A.T.M.'; + } + }, + calendar: { + sameDay: '[Hodiaŭ je] LT', + nextDay: '[Morgaŭ je] LT', + nextWeek: 'dddd[n je] LT', + lastDay: '[Hieraŭ je] LT', + lastWeek: '[pasintan] dddd[n je] LT', + sameElse: 'L', + }, + relativeTime: { + future: 'post %s', + past: 'antaŭ %s', + s: 'kelkaj sekundoj', + ss: '%d sekundoj', + m: 'unu minuto', + mm: '%d minutoj', + h: 'unu horo', + hh: '%d horoj', + d: 'unu tago', //ne 'diurno', ĉar estas uzita por proksimumo + dd: '%d tagoj', + M: 'unu monato', + MM: '%d monatoj', + y: 'unu jaro', + yy: '%d jaroj', + }, + dayOfMonthOrdinalParse: /\d{1,2}a/, + ordinal: '%da', + week: { + dow: 1, // Monday is the first day of the week. + doy: 7, // The week that contains Jan 7th is the first week of the year. + }, + }); + + return eo; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/es-do.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/es-do.js new file mode 100644 index 0000000..8a557c3 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/es-do.js @@ -0,0 +1,119 @@ +//! moment.js locale configuration +//! locale : Spanish (Dominican Republic) [es-do] + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var monthsShortDot = + 'ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.'.split( + '_' + ), + monthsShort = 'ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic'.split('_'), + monthsParse = [ + /^ene/i, + /^feb/i, + /^mar/i, + /^abr/i, + /^may/i, + /^jun/i, + /^jul/i, + /^ago/i, + /^sep/i, + /^oct/i, + /^nov/i, + /^dic/i, + ], + monthsRegex = + /^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre|ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i; + + var esDo = moment.defineLocale('es-do', { + months: 'enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre'.split( + '_' + ), + monthsShort: function (m, format) { + if (!m) { + return monthsShortDot; + } else if (/-MMM-/.test(format)) { + return monthsShort[m.month()]; + } else { + return monthsShortDot[m.month()]; + } + }, + monthsRegex: monthsRegex, + monthsShortRegex: monthsRegex, + monthsStrictRegex: + /^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre)/i, + monthsShortStrictRegex: + /^(ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i, + monthsParse: monthsParse, + longMonthsParse: monthsParse, + shortMonthsParse: monthsParse, + weekdays: 'domingo_lunes_martes_miércoles_jueves_viernes_sábado'.split('_'), + weekdaysShort: 'dom._lun._mar._mié._jue._vie._sáb.'.split('_'), + weekdaysMin: 'do_lu_ma_mi_ju_vi_sá'.split('_'), + weekdaysParseExact: true, + longDateFormat: { + LT: 'h:mm A', + LTS: 'h:mm:ss A', + L: 'DD/MM/YYYY', + LL: 'D [de] MMMM [de] YYYY', + LLL: 'D [de] MMMM [de] YYYY h:mm A', + LLLL: 'dddd, D [de] MMMM [de] YYYY h:mm A', + }, + calendar: { + sameDay: function () { + return '[hoy a la' + (this.hours() !== 1 ? 's' : '') + '] LT'; + }, + nextDay: function () { + return '[mañana a la' + (this.hours() !== 1 ? 's' : '') + '] LT'; + }, + nextWeek: function () { + return 'dddd [a la' + (this.hours() !== 1 ? 's' : '') + '] LT'; + }, + lastDay: function () { + return '[ayer a la' + (this.hours() !== 1 ? 's' : '') + '] LT'; + }, + lastWeek: function () { + return ( + '[el] dddd [pasado a la' + + (this.hours() !== 1 ? 's' : '') + + '] LT' + ); + }, + sameElse: 'L', + }, + relativeTime: { + future: 'en %s', + past: 'hace %s', + s: 'unos segundos', + ss: '%d segundos', + m: 'un minuto', + mm: '%d minutos', + h: 'una hora', + hh: '%d horas', + d: 'un día', + dd: '%d días', + w: 'una semana', + ww: '%d semanas', + M: 'un mes', + MM: '%d meses', + y: 'un año', + yy: '%d años', + }, + dayOfMonthOrdinalParse: /\d{1,2}º/, + ordinal: '%dº', + week: { + dow: 1, // Monday is the first day of the week. + doy: 4, // The week that contains Jan 4th is the first week of the year. + }, + }); + + return esDo; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/es-mx.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/es-mx.js new file mode 100644 index 0000000..a233e40 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/es-mx.js @@ -0,0 +1,121 @@ +//! moment.js locale configuration +//! locale : Spanish (Mexico) [es-mx] +//! author : JC Franco : https://github.com/jcfranco + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var monthsShortDot = + 'ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.'.split( + '_' + ), + monthsShort = 'ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic'.split('_'), + monthsParse = [ + /^ene/i, + /^feb/i, + /^mar/i, + /^abr/i, + /^may/i, + /^jun/i, + /^jul/i, + /^ago/i, + /^sep/i, + /^oct/i, + /^nov/i, + /^dic/i, + ], + monthsRegex = + /^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre|ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i; + + var esMx = moment.defineLocale('es-mx', { + months: 'enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre'.split( + '_' + ), + monthsShort: function (m, format) { + if (!m) { + return monthsShortDot; + } else if (/-MMM-/.test(format)) { + return monthsShort[m.month()]; + } else { + return monthsShortDot[m.month()]; + } + }, + monthsRegex: monthsRegex, + monthsShortRegex: monthsRegex, + monthsStrictRegex: + /^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre)/i, + monthsShortStrictRegex: + /^(ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i, + monthsParse: monthsParse, + longMonthsParse: monthsParse, + shortMonthsParse: monthsParse, + weekdays: 'domingo_lunes_martes_miércoles_jueves_viernes_sábado'.split('_'), + weekdaysShort: 'dom._lun._mar._mié._jue._vie._sáb.'.split('_'), + weekdaysMin: 'do_lu_ma_mi_ju_vi_sá'.split('_'), + weekdaysParseExact: true, + longDateFormat: { + LT: 'H:mm', + LTS: 'H:mm:ss', + L: 'DD/MM/YYYY', + LL: 'D [de] MMMM [de] YYYY', + LLL: 'D [de] MMMM [de] YYYY H:mm', + LLLL: 'dddd, D [de] MMMM [de] YYYY H:mm', + }, + calendar: { + sameDay: function () { + return '[hoy a la' + (this.hours() !== 1 ? 's' : '') + '] LT'; + }, + nextDay: function () { + return '[mañana a la' + (this.hours() !== 1 ? 's' : '') + '] LT'; + }, + nextWeek: function () { + return 'dddd [a la' + (this.hours() !== 1 ? 's' : '') + '] LT'; + }, + lastDay: function () { + return '[ayer a la' + (this.hours() !== 1 ? 's' : '') + '] LT'; + }, + lastWeek: function () { + return ( + '[el] dddd [pasado a la' + + (this.hours() !== 1 ? 's' : '') + + '] LT' + ); + }, + sameElse: 'L', + }, + relativeTime: { + future: 'en %s', + past: 'hace %s', + s: 'unos segundos', + ss: '%d segundos', + m: 'un minuto', + mm: '%d minutos', + h: 'una hora', + hh: '%d horas', + d: 'un día', + dd: '%d días', + w: 'una semana', + ww: '%d semanas', + M: 'un mes', + MM: '%d meses', + y: 'un año', + yy: '%d años', + }, + dayOfMonthOrdinalParse: /\d{1,2}º/, + ordinal: '%dº', + week: { + dow: 0, // Sunday is the first day of the week. + doy: 4, // The week that contains Jan 4th is the first week of the year. + }, + invalidDate: 'Fecha inválida', + }); + + return esMx; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/es-us.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/es-us.js new file mode 100644 index 0000000..2c52254 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/es-us.js @@ -0,0 +1,121 @@ +//! moment.js locale configuration +//! locale : Spanish (United States) [es-us] +//! author : bustta : https://github.com/bustta +//! author : chrisrodz : https://github.com/chrisrodz + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var monthsShortDot = + 'ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.'.split( + '_' + ), + monthsShort = 'ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic'.split('_'), + monthsParse = [ + /^ene/i, + /^feb/i, + /^mar/i, + /^abr/i, + /^may/i, + /^jun/i, + /^jul/i, + /^ago/i, + /^sep/i, + /^oct/i, + /^nov/i, + /^dic/i, + ], + monthsRegex = + /^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre|ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i; + + var esUs = moment.defineLocale('es-us', { + months: 'enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre'.split( + '_' + ), + monthsShort: function (m, format) { + if (!m) { + return monthsShortDot; + } else if (/-MMM-/.test(format)) { + return monthsShort[m.month()]; + } else { + return monthsShortDot[m.month()]; + } + }, + monthsRegex: monthsRegex, + monthsShortRegex: monthsRegex, + monthsStrictRegex: + /^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre)/i, + monthsShortStrictRegex: + /^(ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i, + monthsParse: monthsParse, + longMonthsParse: monthsParse, + shortMonthsParse: monthsParse, + weekdays: 'domingo_lunes_martes_miércoles_jueves_viernes_sábado'.split('_'), + weekdaysShort: 'dom._lun._mar._mié._jue._vie._sáb.'.split('_'), + weekdaysMin: 'do_lu_ma_mi_ju_vi_sá'.split('_'), + weekdaysParseExact: true, + longDateFormat: { + LT: 'h:mm A', + LTS: 'h:mm:ss A', + L: 'MM/DD/YYYY', + LL: 'D [de] MMMM [de] YYYY', + LLL: 'D [de] MMMM [de] YYYY h:mm A', + LLLL: 'dddd, D [de] MMMM [de] YYYY h:mm A', + }, + calendar: { + sameDay: function () { + return '[hoy a la' + (this.hours() !== 1 ? 's' : '') + '] LT'; + }, + nextDay: function () { + return '[mañana a la' + (this.hours() !== 1 ? 's' : '') + '] LT'; + }, + nextWeek: function () { + return 'dddd [a la' + (this.hours() !== 1 ? 's' : '') + '] LT'; + }, + lastDay: function () { + return '[ayer a la' + (this.hours() !== 1 ? 's' : '') + '] LT'; + }, + lastWeek: function () { + return ( + '[el] dddd [pasado a la' + + (this.hours() !== 1 ? 's' : '') + + '] LT' + ); + }, + sameElse: 'L', + }, + relativeTime: { + future: 'en %s', + past: 'hace %s', + s: 'unos segundos', + ss: '%d segundos', + m: 'un minuto', + mm: '%d minutos', + h: 'una hora', + hh: '%d horas', + d: 'un día', + dd: '%d días', + w: 'una semana', + ww: '%d semanas', + M: 'un mes', + MM: '%d meses', + y: 'un año', + yy: '%d años', + }, + dayOfMonthOrdinalParse: /\d{1,2}º/, + ordinal: '%dº', + week: { + dow: 0, // Sunday is the first day of the week. + doy: 6, // The week that contains Jan 6th is the first week of the year. + }, + }); + + return esUs; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/es.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/es.js new file mode 100644 index 0000000..7fc4628 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/es.js @@ -0,0 +1,121 @@ +//! moment.js locale configuration +//! locale : Spanish [es] +//! author : Julio Napurí : https://github.com/julionc + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var monthsShortDot = + 'ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.'.split( + '_' + ), + monthsShort = 'ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic'.split('_'), + monthsParse = [ + /^ene/i, + /^feb/i, + /^mar/i, + /^abr/i, + /^may/i, + /^jun/i, + /^jul/i, + /^ago/i, + /^sep/i, + /^oct/i, + /^nov/i, + /^dic/i, + ], + monthsRegex = + /^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre|ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i; + + var es = moment.defineLocale('es', { + months: 'enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre'.split( + '_' + ), + monthsShort: function (m, format) { + if (!m) { + return monthsShortDot; + } else if (/-MMM-/.test(format)) { + return monthsShort[m.month()]; + } else { + return monthsShortDot[m.month()]; + } + }, + monthsRegex: monthsRegex, + monthsShortRegex: monthsRegex, + monthsStrictRegex: + /^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre)/i, + monthsShortStrictRegex: + /^(ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i, + monthsParse: monthsParse, + longMonthsParse: monthsParse, + shortMonthsParse: monthsParse, + weekdays: 'domingo_lunes_martes_miércoles_jueves_viernes_sábado'.split('_'), + weekdaysShort: 'dom._lun._mar._mié._jue._vie._sáb.'.split('_'), + weekdaysMin: 'do_lu_ma_mi_ju_vi_sá'.split('_'), + weekdaysParseExact: true, + longDateFormat: { + LT: 'H:mm', + LTS: 'H:mm:ss', + L: 'DD/MM/YYYY', + LL: 'D [de] MMMM [de] YYYY', + LLL: 'D [de] MMMM [de] YYYY H:mm', + LLLL: 'dddd, D [de] MMMM [de] YYYY H:mm', + }, + calendar: { + sameDay: function () { + return '[hoy a la' + (this.hours() !== 1 ? 's' : '') + '] LT'; + }, + nextDay: function () { + return '[mañana a la' + (this.hours() !== 1 ? 's' : '') + '] LT'; + }, + nextWeek: function () { + return 'dddd [a la' + (this.hours() !== 1 ? 's' : '') + '] LT'; + }, + lastDay: function () { + return '[ayer a la' + (this.hours() !== 1 ? 's' : '') + '] LT'; + }, + lastWeek: function () { + return ( + '[el] dddd [pasado a la' + + (this.hours() !== 1 ? 's' : '') + + '] LT' + ); + }, + sameElse: 'L', + }, + relativeTime: { + future: 'en %s', + past: 'hace %s', + s: 'unos segundos', + ss: '%d segundos', + m: 'un minuto', + mm: '%d minutos', + h: 'una hora', + hh: '%d horas', + d: 'un día', + dd: '%d días', + w: 'una semana', + ww: '%d semanas', + M: 'un mes', + MM: '%d meses', + y: 'un año', + yy: '%d años', + }, + dayOfMonthOrdinalParse: /\d{1,2}º/, + ordinal: '%dº', + week: { + dow: 1, // Monday is the first day of the week. + doy: 4, // The week that contains Jan 4th is the first week of the year. + }, + invalidDate: 'Fecha inválida', + }); + + return es; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/et.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/et.js new file mode 100644 index 0000000..7c8760d --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/et.js @@ -0,0 +1,89 @@ +//! moment.js locale configuration +//! locale : Estonian [et] +//! author : Henry Kehlmann : https://github.com/madhenry +//! improvements : Illimar Tambek : https://github.com/ragulka + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + function processRelativeTime(number, withoutSuffix, key, isFuture) { + var format = { + s: ['mõne sekundi', 'mõni sekund', 'paar sekundit'], + ss: [number + 'sekundi', number + 'sekundit'], + m: ['ühe minuti', 'üks minut'], + mm: [number + ' minuti', number + ' minutit'], + h: ['ühe tunni', 'tund aega', 'üks tund'], + hh: [number + ' tunni', number + ' tundi'], + d: ['ühe päeva', 'üks päev'], + M: ['kuu aja', 'kuu aega', 'üks kuu'], + MM: [number + ' kuu', number + ' kuud'], + y: ['ühe aasta', 'aasta', 'üks aasta'], + yy: [number + ' aasta', number + ' aastat'], + }; + if (withoutSuffix) { + return format[key][2] ? format[key][2] : format[key][1]; + } + return isFuture ? format[key][0] : format[key][1]; + } + + var et = moment.defineLocale('et', { + months: 'jaanuar_veebruar_märts_aprill_mai_juuni_juuli_august_september_oktoober_november_detsember'.split( + '_' + ), + monthsShort: + 'jaan_veebr_märts_apr_mai_juuni_juuli_aug_sept_okt_nov_dets'.split('_'), + weekdays: + 'pühapäev_esmaspäev_teisipäev_kolmapäev_neljapäev_reede_laupäev'.split( + '_' + ), + weekdaysShort: 'P_E_T_K_N_R_L'.split('_'), + weekdaysMin: 'P_E_T_K_N_R_L'.split('_'), + longDateFormat: { + LT: 'H:mm', + LTS: 'H:mm:ss', + L: 'DD.MM.YYYY', + LL: 'D. MMMM YYYY', + LLL: 'D. MMMM YYYY H:mm', + LLLL: 'dddd, D. MMMM YYYY H:mm', + }, + calendar: { + sameDay: '[Täna,] LT', + nextDay: '[Homme,] LT', + nextWeek: '[Järgmine] dddd LT', + lastDay: '[Eile,] LT', + lastWeek: '[Eelmine] dddd LT', + sameElse: 'L', + }, + relativeTime: { + future: '%s pärast', + past: '%s tagasi', + s: processRelativeTime, + ss: processRelativeTime, + m: processRelativeTime, + mm: processRelativeTime, + h: processRelativeTime, + hh: processRelativeTime, + d: processRelativeTime, + dd: '%d päeva', + M: processRelativeTime, + MM: processRelativeTime, + y: processRelativeTime, + yy: processRelativeTime, + }, + dayOfMonthOrdinalParse: /\d{1,2}\./, + ordinal: '%d.', + week: { + dow: 1, // Monday is the first day of the week. + doy: 4, // The week that contains Jan 4th is the first week of the year. + }, + }); + + return et; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/eu.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/eu.js new file mode 100644 index 0000000..ca2e547 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/eu.js @@ -0,0 +1,76 @@ +//! moment.js locale configuration +//! locale : Basque [eu] +//! author : Eneko Illarramendi : https://github.com/eillarra + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var eu = moment.defineLocale('eu', { + months: 'urtarrila_otsaila_martxoa_apirila_maiatza_ekaina_uztaila_abuztua_iraila_urria_azaroa_abendua'.split( + '_' + ), + monthsShort: + 'urt._ots._mar._api._mai._eka._uzt._abu._ira._urr._aza._abe.'.split( + '_' + ), + monthsParseExact: true, + weekdays: + 'igandea_astelehena_asteartea_asteazkena_osteguna_ostirala_larunbata'.split( + '_' + ), + weekdaysShort: 'ig._al._ar._az._og._ol._lr.'.split('_'), + weekdaysMin: 'ig_al_ar_az_og_ol_lr'.split('_'), + weekdaysParseExact: true, + longDateFormat: { + LT: 'HH:mm', + LTS: 'HH:mm:ss', + L: 'YYYY-MM-DD', + LL: 'YYYY[ko] MMMM[ren] D[a]', + LLL: 'YYYY[ko] MMMM[ren] D[a] HH:mm', + LLLL: 'dddd, YYYY[ko] MMMM[ren] D[a] HH:mm', + l: 'YYYY-M-D', + ll: 'YYYY[ko] MMM D[a]', + lll: 'YYYY[ko] MMM D[a] HH:mm', + llll: 'ddd, YYYY[ko] MMM D[a] HH:mm', + }, + calendar: { + sameDay: '[gaur] LT[etan]', + nextDay: '[bihar] LT[etan]', + nextWeek: 'dddd LT[etan]', + lastDay: '[atzo] LT[etan]', + lastWeek: '[aurreko] dddd LT[etan]', + sameElse: 'L', + }, + relativeTime: { + future: '%s barru', + past: 'duela %s', + s: 'segundo batzuk', + ss: '%d segundo', + m: 'minutu bat', + mm: '%d minutu', + h: 'ordu bat', + hh: '%d ordu', + d: 'egun bat', + dd: '%d egun', + M: 'hilabete bat', + MM: '%d hilabete', + y: 'urte bat', + yy: '%d urte', + }, + dayOfMonthOrdinalParse: /\d{1,2}\./, + ordinal: '%d.', + week: { + dow: 1, // Monday is the first day of the week. + doy: 7, // The week that contains Jan 7th is the first week of the year. + }, + }); + + return eu; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/fa.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/fa.js new file mode 100644 index 0000000..845757b --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/fa.js @@ -0,0 +1,124 @@ +//! moment.js locale configuration +//! locale : Persian [fa] +//! author : Ebrahim Byagowi : https://github.com/ebraminio + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var symbolMap = { + 1: '۱', + 2: '۲', + 3: '۳', + 4: '۴', + 5: '۵', + 6: '۶', + 7: '۷', + 8: '۸', + 9: '۹', + 0: '۰', + }, + numberMap = { + '۱': '1', + '۲': '2', + '۳': '3', + '۴': '4', + '۵': '5', + '۶': '6', + '۷': '7', + '۸': '8', + '۹': '9', + '۰': '0', + }; + + var fa = moment.defineLocale('fa', { + months: 'ژانویه_فوریه_مارس_آوریل_مه_ژوئن_ژوئیه_اوت_سپتامبر_اکتبر_نوامبر_دسامبر'.split( + '_' + ), + monthsShort: + 'ژانویه_فوریه_مارس_آوریل_مه_ژوئن_ژوئیه_اوت_سپتامبر_اکتبر_نوامبر_دسامبر'.split( + '_' + ), + weekdays: + 'یک\u200cشنبه_دوشنبه_سه\u200cشنبه_چهارشنبه_پنج\u200cشنبه_جمعه_شنبه'.split( + '_' + ), + weekdaysShort: + 'یک\u200cشنبه_دوشنبه_سه\u200cشنبه_چهارشنبه_پنج\u200cشنبه_جمعه_شنبه'.split( + '_' + ), + weekdaysMin: 'ی_د_س_چ_پ_ج_ش'.split('_'), + weekdaysParseExact: true, + longDateFormat: { + LT: 'HH:mm', + LTS: 'HH:mm:ss', + L: 'DD/MM/YYYY', + LL: 'D MMMM YYYY', + LLL: 'D MMMM YYYY HH:mm', + LLLL: 'dddd, D MMMM YYYY HH:mm', + }, + meridiemParse: /قبل از ظهر|بعد از ظهر/, + isPM: function (input) { + return /بعد از ظهر/.test(input); + }, + meridiem: function (hour, minute, isLower) { + if (hour < 12) { + return 'قبل از ظهر'; + } else { + return 'بعد از ظهر'; + } + }, + calendar: { + sameDay: '[امروز ساعت] LT', + nextDay: '[فردا ساعت] LT', + nextWeek: 'dddd [ساعت] LT', + lastDay: '[دیروز ساعت] LT', + lastWeek: 'dddd [پیش] [ساعت] LT', + sameElse: 'L', + }, + relativeTime: { + future: 'در %s', + past: '%s پیش', + s: 'چند ثانیه', + ss: '%d ثانیه', + m: 'یک دقیقه', + mm: '%d دقیقه', + h: 'یک ساعت', + hh: '%d ساعت', + d: 'یک روز', + dd: '%d روز', + M: 'یک ماه', + MM: '%d ماه', + y: 'یک سال', + yy: '%d سال', + }, + preparse: function (string) { + return string + .replace(/[۰-۹]/g, function (match) { + return numberMap[match]; + }) + .replace(/،/g, ','); + }, + postformat: function (string) { + return string + .replace(/\d/g, function (match) { + return symbolMap[match]; + }) + .replace(/,/g, '،'); + }, + dayOfMonthOrdinalParse: /\d{1,2}م/, + ordinal: '%dم', + week: { + dow: 6, // Saturday is the first day of the week. + doy: 12, // The week that contains Jan 12th is the first week of the year. + }, + }); + + return fa; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/fi.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/fi.js new file mode 100644 index 0000000..07e57cf --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/fi.js @@ -0,0 +1,135 @@ +//! moment.js locale configuration +//! locale : Finnish [fi] +//! author : Tarmo Aidantausta : https://github.com/bleadof + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var numbersPast = + 'nolla yksi kaksi kolme neljä viisi kuusi seitsemän kahdeksan yhdeksän'.split( + ' ' + ), + numbersFuture = [ + 'nolla', + 'yhden', + 'kahden', + 'kolmen', + 'neljän', + 'viiden', + 'kuuden', + numbersPast[7], + numbersPast[8], + numbersPast[9], + ]; + function translate(number, withoutSuffix, key, isFuture) { + var result = ''; + switch (key) { + case 's': + return isFuture ? 'muutaman sekunnin' : 'muutama sekunti'; + case 'ss': + result = isFuture ? 'sekunnin' : 'sekuntia'; + break; + case 'm': + return isFuture ? 'minuutin' : 'minuutti'; + case 'mm': + result = isFuture ? 'minuutin' : 'minuuttia'; + break; + case 'h': + return isFuture ? 'tunnin' : 'tunti'; + case 'hh': + result = isFuture ? 'tunnin' : 'tuntia'; + break; + case 'd': + return isFuture ? 'päivän' : 'päivä'; + case 'dd': + result = isFuture ? 'päivän' : 'päivää'; + break; + case 'M': + return isFuture ? 'kuukauden' : 'kuukausi'; + case 'MM': + result = isFuture ? 'kuukauden' : 'kuukautta'; + break; + case 'y': + return isFuture ? 'vuoden' : 'vuosi'; + case 'yy': + result = isFuture ? 'vuoden' : 'vuotta'; + break; + } + result = verbalNumber(number, isFuture) + ' ' + result; + return result; + } + function verbalNumber(number, isFuture) { + return number < 10 + ? isFuture + ? numbersFuture[number] + : numbersPast[number] + : number; + } + + var fi = moment.defineLocale('fi', { + months: 'tammikuu_helmikuu_maaliskuu_huhtikuu_toukokuu_kesäkuu_heinäkuu_elokuu_syyskuu_lokakuu_marraskuu_joulukuu'.split( + '_' + ), + monthsShort: + 'tammi_helmi_maalis_huhti_touko_kesä_heinä_elo_syys_loka_marras_joulu'.split( + '_' + ), + weekdays: + 'sunnuntai_maanantai_tiistai_keskiviikko_torstai_perjantai_lauantai'.split( + '_' + ), + weekdaysShort: 'su_ma_ti_ke_to_pe_la'.split('_'), + weekdaysMin: 'su_ma_ti_ke_to_pe_la'.split('_'), + longDateFormat: { + LT: 'HH.mm', + LTS: 'HH.mm.ss', + L: 'DD.MM.YYYY', + LL: 'Do MMMM[ta] YYYY', + LLL: 'Do MMMM[ta] YYYY, [klo] HH.mm', + LLLL: 'dddd, Do MMMM[ta] YYYY, [klo] HH.mm', + l: 'D.M.YYYY', + ll: 'Do MMM YYYY', + lll: 'Do MMM YYYY, [klo] HH.mm', + llll: 'ddd, Do MMM YYYY, [klo] HH.mm', + }, + calendar: { + sameDay: '[tänään] [klo] LT', + nextDay: '[huomenna] [klo] LT', + nextWeek: 'dddd [klo] LT', + lastDay: '[eilen] [klo] LT', + lastWeek: '[viime] dddd[na] [klo] LT', + sameElse: 'L', + }, + relativeTime: { + future: '%s päästä', + past: '%s sitten', + s: translate, + ss: translate, + m: translate, + mm: translate, + h: translate, + hh: translate, + d: translate, + dd: translate, + M: translate, + MM: translate, + y: translate, + yy: translate, + }, + dayOfMonthOrdinalParse: /\d{1,2}\./, + ordinal: '%d.', + week: { + dow: 1, // Monday is the first day of the week. + doy: 4, // The week that contains Jan 4th is the first week of the year. + }, + }); + + return fi; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/fil.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/fil.js new file mode 100644 index 0000000..13103e8 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/fil.js @@ -0,0 +1,69 @@ +//! moment.js locale configuration +//! locale : Filipino [fil] +//! author : Dan Hagman : https://github.com/hagmandan +//! author : Matthew Co : https://github.com/matthewdeeco + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var fil = moment.defineLocale('fil', { + months: 'Enero_Pebrero_Marso_Abril_Mayo_Hunyo_Hulyo_Agosto_Setyembre_Oktubre_Nobyembre_Disyembre'.split( + '_' + ), + monthsShort: 'Ene_Peb_Mar_Abr_May_Hun_Hul_Ago_Set_Okt_Nob_Dis'.split('_'), + weekdays: 'Linggo_Lunes_Martes_Miyerkules_Huwebes_Biyernes_Sabado'.split( + '_' + ), + weekdaysShort: 'Lin_Lun_Mar_Miy_Huw_Biy_Sab'.split('_'), + weekdaysMin: 'Li_Lu_Ma_Mi_Hu_Bi_Sab'.split('_'), + longDateFormat: { + LT: 'HH:mm', + LTS: 'HH:mm:ss', + L: 'MM/D/YYYY', + LL: 'MMMM D, YYYY', + LLL: 'MMMM D, YYYY HH:mm', + LLLL: 'dddd, MMMM DD, YYYY HH:mm', + }, + calendar: { + sameDay: 'LT [ngayong araw]', + nextDay: '[Bukas ng] LT', + nextWeek: 'LT [sa susunod na] dddd', + lastDay: 'LT [kahapon]', + lastWeek: 'LT [noong nakaraang] dddd', + sameElse: 'L', + }, + relativeTime: { + future: 'sa loob ng %s', + past: '%s ang nakalipas', + s: 'ilang segundo', + ss: '%d segundo', + m: 'isang minuto', + mm: '%d minuto', + h: 'isang oras', + hh: '%d oras', + d: 'isang araw', + dd: '%d araw', + M: 'isang buwan', + MM: '%d buwan', + y: 'isang taon', + yy: '%d taon', + }, + dayOfMonthOrdinalParse: /\d{1,2}/, + ordinal: function (number) { + return number; + }, + week: { + dow: 1, // Monday is the first day of the week. + doy: 4, // The week that contains Jan 4th is the first week of the year. + }, + }); + + return fil; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/fo.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/fo.js new file mode 100644 index 0000000..217fcfb --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/fo.js @@ -0,0 +1,68 @@ +//! moment.js locale configuration +//! locale : Faroese [fo] +//! author : Ragnar Johannesen : https://github.com/ragnar123 +//! author : Kristian Sakarisson : https://github.com/sakarisson + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var fo = moment.defineLocale('fo', { + months: 'januar_februar_mars_apríl_mai_juni_juli_august_september_oktober_november_desember'.split( + '_' + ), + monthsShort: 'jan_feb_mar_apr_mai_jun_jul_aug_sep_okt_nov_des'.split('_'), + weekdays: + 'sunnudagur_mánadagur_týsdagur_mikudagur_hósdagur_fríggjadagur_leygardagur'.split( + '_' + ), + weekdaysShort: 'sun_mán_týs_mik_hós_frí_ley'.split('_'), + weekdaysMin: 'su_má_tý_mi_hó_fr_le'.split('_'), + longDateFormat: { + LT: 'HH:mm', + LTS: 'HH:mm:ss', + L: 'DD/MM/YYYY', + LL: 'D MMMM YYYY', + LLL: 'D MMMM YYYY HH:mm', + LLLL: 'dddd D. MMMM, YYYY HH:mm', + }, + calendar: { + sameDay: '[Í dag kl.] LT', + nextDay: '[Í morgin kl.] LT', + nextWeek: 'dddd [kl.] LT', + lastDay: '[Í gjár kl.] LT', + lastWeek: '[síðstu] dddd [kl] LT', + sameElse: 'L', + }, + relativeTime: { + future: 'um %s', + past: '%s síðani', + s: 'fá sekund', + ss: '%d sekundir', + m: 'ein minuttur', + mm: '%d minuttir', + h: 'ein tími', + hh: '%d tímar', + d: 'ein dagur', + dd: '%d dagar', + M: 'ein mánaður', + MM: '%d mánaðir', + y: 'eitt ár', + yy: '%d ár', + }, + dayOfMonthOrdinalParse: /\d{1,2}\./, + ordinal: '%d.', + week: { + dow: 1, // Monday is the first day of the week. + doy: 4, // The week that contains Jan 4th is the first week of the year. + }, + }); + + return fo; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/fr-ca.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/fr-ca.js new file mode 100644 index 0000000..7d48fd7 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/fr-ca.js @@ -0,0 +1,81 @@ +//! moment.js locale configuration +//! locale : French (Canada) [fr-ca] +//! author : Jonathan Abourbih : https://github.com/jonbca + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var frCa = moment.defineLocale('fr-ca', { + months: 'janvier_février_mars_avril_mai_juin_juillet_août_septembre_octobre_novembre_décembre'.split( + '_' + ), + monthsShort: + 'janv._févr._mars_avr._mai_juin_juil._août_sept._oct._nov._déc.'.split( + '_' + ), + monthsParseExact: true, + weekdays: 'dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi'.split('_'), + weekdaysShort: 'dim._lun._mar._mer._jeu._ven._sam.'.split('_'), + weekdaysMin: 'di_lu_ma_me_je_ve_sa'.split('_'), + weekdaysParseExact: true, + longDateFormat: { + LT: 'HH:mm', + LTS: 'HH:mm:ss', + L: 'YYYY-MM-DD', + LL: 'D MMMM YYYY', + LLL: 'D MMMM YYYY HH:mm', + LLLL: 'dddd D MMMM YYYY HH:mm', + }, + calendar: { + sameDay: '[Aujourd’hui à] LT', + nextDay: '[Demain à] LT', + nextWeek: 'dddd [à] LT', + lastDay: '[Hier à] LT', + lastWeek: 'dddd [dernier à] LT', + sameElse: 'L', + }, + relativeTime: { + future: 'dans %s', + past: 'il y a %s', + s: 'quelques secondes', + ss: '%d secondes', + m: 'une minute', + mm: '%d minutes', + h: 'une heure', + hh: '%d heures', + d: 'un jour', + dd: '%d jours', + M: 'un mois', + MM: '%d mois', + y: 'un an', + yy: '%d ans', + }, + dayOfMonthOrdinalParse: /\d{1,2}(er|e)/, + ordinal: function (number, period) { + switch (period) { + // Words with masculine grammatical gender: mois, trimestre, jour + default: + case 'M': + case 'Q': + case 'D': + case 'DDD': + case 'd': + return number + (number === 1 ? 'er' : 'e'); + + // Words with feminine grammatical gender: semaine + case 'w': + case 'W': + return number + (number === 1 ? 're' : 'e'); + } + }, + }); + + return frCa; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/fr-ch.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/fr-ch.js new file mode 100644 index 0000000..c28d81c --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/fr-ch.js @@ -0,0 +1,85 @@ +//! moment.js locale configuration +//! locale : French (Switzerland) [fr-ch] +//! author : Gaspard Bucher : https://github.com/gaspard + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var frCh = moment.defineLocale('fr-ch', { + months: 'janvier_février_mars_avril_mai_juin_juillet_août_septembre_octobre_novembre_décembre'.split( + '_' + ), + monthsShort: + 'janv._févr._mars_avr._mai_juin_juil._août_sept._oct._nov._déc.'.split( + '_' + ), + monthsParseExact: true, + weekdays: 'dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi'.split('_'), + weekdaysShort: 'dim._lun._mar._mer._jeu._ven._sam.'.split('_'), + weekdaysMin: 'di_lu_ma_me_je_ve_sa'.split('_'), + weekdaysParseExact: true, + longDateFormat: { + LT: 'HH:mm', + LTS: 'HH:mm:ss', + L: 'DD.MM.YYYY', + LL: 'D MMMM YYYY', + LLL: 'D MMMM YYYY HH:mm', + LLLL: 'dddd D MMMM YYYY HH:mm', + }, + calendar: { + sameDay: '[Aujourd’hui à] LT', + nextDay: '[Demain à] LT', + nextWeek: 'dddd [à] LT', + lastDay: '[Hier à] LT', + lastWeek: 'dddd [dernier à] LT', + sameElse: 'L', + }, + relativeTime: { + future: 'dans %s', + past: 'il y a %s', + s: 'quelques secondes', + ss: '%d secondes', + m: 'une minute', + mm: '%d minutes', + h: 'une heure', + hh: '%d heures', + d: 'un jour', + dd: '%d jours', + M: 'un mois', + MM: '%d mois', + y: 'un an', + yy: '%d ans', + }, + dayOfMonthOrdinalParse: /\d{1,2}(er|e)/, + ordinal: function (number, period) { + switch (period) { + // Words with masculine grammatical gender: mois, trimestre, jour + default: + case 'M': + case 'Q': + case 'D': + case 'DDD': + case 'd': + return number + (number === 1 ? 'er' : 'e'); + + // Words with feminine grammatical gender: semaine + case 'w': + case 'W': + return number + (number === 1 ? 're' : 'e'); + } + }, + week: { + dow: 1, // Monday is the first day of the week. + doy: 4, // The week that contains Jan 4th is the first week of the year. + }, + }); + + return frCh; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/fr.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/fr.js new file mode 100644 index 0000000..4e5536b --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/fr.js @@ -0,0 +1,119 @@ +//! moment.js locale configuration +//! locale : French [fr] +//! author : John Fischer : https://github.com/jfroffice + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var monthsStrictRegex = + /^(janvier|février|mars|avril|mai|juin|juillet|août|septembre|octobre|novembre|décembre)/i, + monthsShortStrictRegex = + /(janv\.?|févr\.?|mars|avr\.?|mai|juin|juil\.?|août|sept\.?|oct\.?|nov\.?|déc\.?)/i, + monthsRegex = + /(janv\.?|févr\.?|mars|avr\.?|mai|juin|juil\.?|août|sept\.?|oct\.?|nov\.?|déc\.?|janvier|février|mars|avril|mai|juin|juillet|août|septembre|octobre|novembre|décembre)/i, + monthsParse = [ + /^janv/i, + /^févr/i, + /^mars/i, + /^avr/i, + /^mai/i, + /^juin/i, + /^juil/i, + /^août/i, + /^sept/i, + /^oct/i, + /^nov/i, + /^déc/i, + ]; + + var fr = moment.defineLocale('fr', { + months: 'janvier_février_mars_avril_mai_juin_juillet_août_septembre_octobre_novembre_décembre'.split( + '_' + ), + monthsShort: + 'janv._févr._mars_avr._mai_juin_juil._août_sept._oct._nov._déc.'.split( + '_' + ), + monthsRegex: monthsRegex, + monthsShortRegex: monthsRegex, + monthsStrictRegex: monthsStrictRegex, + monthsShortStrictRegex: monthsShortStrictRegex, + monthsParse: monthsParse, + longMonthsParse: monthsParse, + shortMonthsParse: monthsParse, + weekdays: 'dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi'.split('_'), + weekdaysShort: 'dim._lun._mar._mer._jeu._ven._sam.'.split('_'), + weekdaysMin: 'di_lu_ma_me_je_ve_sa'.split('_'), + weekdaysParseExact: true, + longDateFormat: { + LT: 'HH:mm', + LTS: 'HH:mm:ss', + L: 'DD/MM/YYYY', + LL: 'D MMMM YYYY', + LLL: 'D MMMM YYYY HH:mm', + LLLL: 'dddd D MMMM YYYY HH:mm', + }, + calendar: { + sameDay: '[Aujourd’hui à] LT', + nextDay: '[Demain à] LT', + nextWeek: 'dddd [à] LT', + lastDay: '[Hier à] LT', + lastWeek: 'dddd [dernier à] LT', + sameElse: 'L', + }, + relativeTime: { + future: 'dans %s', + past: 'il y a %s', + s: 'quelques secondes', + ss: '%d secondes', + m: 'une minute', + mm: '%d minutes', + h: 'une heure', + hh: '%d heures', + d: 'un jour', + dd: '%d jours', + w: 'une semaine', + ww: '%d semaines', + M: 'un mois', + MM: '%d mois', + y: 'un an', + yy: '%d ans', + }, + dayOfMonthOrdinalParse: /\d{1,2}(er|)/, + ordinal: function (number, period) { + switch (period) { + // TODO: Return 'e' when day of month > 1. Move this case inside + // block for masculine words below. + // See https://github.com/moment/moment/issues/3375 + case 'D': + return number + (number === 1 ? 'er' : ''); + + // Words with masculine grammatical gender: mois, trimestre, jour + default: + case 'M': + case 'Q': + case 'DDD': + case 'd': + return number + (number === 1 ? 'er' : 'e'); + + // Words with feminine grammatical gender: semaine + case 'w': + case 'W': + return number + (number === 1 ? 're' : 'e'); + } + }, + week: { + dow: 1, // Monday is the first day of the week. + doy: 4, // The week that contains Jan 4th is the first week of the year. + }, + }); + + return fr; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/fy.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/fy.js new file mode 100644 index 0000000..46cac08 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/fy.js @@ -0,0 +1,86 @@ +//! moment.js locale configuration +//! locale : Frisian [fy] +//! author : Robin van der Vliet : https://github.com/robin0van0der0v + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var monthsShortWithDots = + 'jan._feb._mrt._apr._mai_jun._jul._aug._sep._okt._nov._des.'.split('_'), + monthsShortWithoutDots = + 'jan_feb_mrt_apr_mai_jun_jul_aug_sep_okt_nov_des'.split('_'); + + var fy = moment.defineLocale('fy', { + months: 'jannewaris_febrewaris_maart_april_maaie_juny_july_augustus_septimber_oktober_novimber_desimber'.split( + '_' + ), + monthsShort: function (m, format) { + if (!m) { + return monthsShortWithDots; + } else if (/-MMM-/.test(format)) { + return monthsShortWithoutDots[m.month()]; + } else { + return monthsShortWithDots[m.month()]; + } + }, + monthsParseExact: true, + weekdays: 'snein_moandei_tiisdei_woansdei_tongersdei_freed_sneon'.split( + '_' + ), + weekdaysShort: 'si._mo._ti._wo._to._fr._so.'.split('_'), + weekdaysMin: 'Si_Mo_Ti_Wo_To_Fr_So'.split('_'), + weekdaysParseExact: true, + longDateFormat: { + LT: 'HH:mm', + LTS: 'HH:mm:ss', + L: 'DD-MM-YYYY', + LL: 'D MMMM YYYY', + LLL: 'D MMMM YYYY HH:mm', + LLLL: 'dddd D MMMM YYYY HH:mm', + }, + calendar: { + sameDay: '[hjoed om] LT', + nextDay: '[moarn om] LT', + nextWeek: 'dddd [om] LT', + lastDay: '[juster om] LT', + lastWeek: '[ôfrûne] dddd [om] LT', + sameElse: 'L', + }, + relativeTime: { + future: 'oer %s', + past: '%s lyn', + s: 'in pear sekonden', + ss: '%d sekonden', + m: 'ien minút', + mm: '%d minuten', + h: 'ien oere', + hh: '%d oeren', + d: 'ien dei', + dd: '%d dagen', + M: 'ien moanne', + MM: '%d moannen', + y: 'ien jier', + yy: '%d jierren', + }, + dayOfMonthOrdinalParse: /\d{1,2}(ste|de)/, + ordinal: function (number) { + return ( + number + + (number === 1 || number === 8 || number >= 20 ? 'ste' : 'de') + ); + }, + week: { + dow: 1, // Monday is the first day of the week. + doy: 4, // The week that contains Jan 4th is the first week of the year. + }, + }); + + return fy; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/ga.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/ga.js new file mode 100644 index 0000000..96f988c --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/ga.js @@ -0,0 +1,106 @@ +//! moment.js locale configuration +//! locale : Irish or Irish Gaelic [ga] +//! author : André Silva : https://github.com/askpt + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var months = [ + 'Eanáir', + 'Feabhra', + 'Márta', + 'Aibreán', + 'Bealtaine', + 'Meitheamh', + 'Iúil', + 'Lúnasa', + 'Meán Fómhair', + 'Deireadh Fómhair', + 'Samhain', + 'Nollaig', + ], + monthsShort = [ + 'Ean', + 'Feabh', + 'Márt', + 'Aib', + 'Beal', + 'Meith', + 'Iúil', + 'Lún', + 'M.F.', + 'D.F.', + 'Samh', + 'Noll', + ], + weekdays = [ + 'Dé Domhnaigh', + 'Dé Luain', + 'Dé Máirt', + 'Dé Céadaoin', + 'Déardaoin', + 'Dé hAoine', + 'Dé Sathairn', + ], + weekdaysShort = ['Domh', 'Luan', 'Máirt', 'Céad', 'Déar', 'Aoine', 'Sath'], + weekdaysMin = ['Do', 'Lu', 'Má', 'Cé', 'Dé', 'A', 'Sa']; + + var ga = moment.defineLocale('ga', { + months: months, + monthsShort: monthsShort, + monthsParseExact: true, + weekdays: weekdays, + weekdaysShort: weekdaysShort, + weekdaysMin: weekdaysMin, + longDateFormat: { + LT: 'HH:mm', + LTS: 'HH:mm:ss', + L: 'DD/MM/YYYY', + LL: 'D MMMM YYYY', + LLL: 'D MMMM YYYY HH:mm', + LLLL: 'dddd, D MMMM YYYY HH:mm', + }, + calendar: { + sameDay: '[Inniu ag] LT', + nextDay: '[Amárach ag] LT', + nextWeek: 'dddd [ag] LT', + lastDay: '[Inné ag] LT', + lastWeek: 'dddd [seo caite] [ag] LT', + sameElse: 'L', + }, + relativeTime: { + future: 'i %s', + past: '%s ó shin', + s: 'cúpla soicind', + ss: '%d soicind', + m: 'nóiméad', + mm: '%d nóiméad', + h: 'uair an chloig', + hh: '%d uair an chloig', + d: 'lá', + dd: '%d lá', + M: 'mí', + MM: '%d míonna', + y: 'bliain', + yy: '%d bliain', + }, + dayOfMonthOrdinalParse: /\d{1,2}(d|na|mh)/, + ordinal: function (number) { + var output = number === 1 ? 'd' : number % 10 === 2 ? 'na' : 'mh'; + return number + output; + }, + week: { + dow: 1, // Monday is the first day of the week. + doy: 4, // The week that contains Jan 4th is the first week of the year. + }, + }); + + return ga; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/gd.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/gd.js new file mode 100644 index 0000000..b053838 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/gd.js @@ -0,0 +1,106 @@ +//! moment.js locale configuration +//! locale : Scottish Gaelic [gd] +//! author : Jon Ashdown : https://github.com/jonashdown + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var months = [ + 'Am Faoilleach', + 'An Gearran', + 'Am Màrt', + 'An Giblean', + 'An Cèitean', + 'An t-Ògmhios', + 'An t-Iuchar', + 'An Lùnastal', + 'An t-Sultain', + 'An Dàmhair', + 'An t-Samhain', + 'An Dùbhlachd', + ], + monthsShort = [ + 'Faoi', + 'Gear', + 'Màrt', + 'Gibl', + 'Cèit', + 'Ògmh', + 'Iuch', + 'Lùn', + 'Sult', + 'Dàmh', + 'Samh', + 'Dùbh', + ], + weekdays = [ + 'Didòmhnaich', + 'Diluain', + 'Dimàirt', + 'Diciadain', + 'Diardaoin', + 'Dihaoine', + 'Disathairne', + ], + weekdaysShort = ['Did', 'Dil', 'Dim', 'Dic', 'Dia', 'Dih', 'Dis'], + weekdaysMin = ['Dò', 'Lu', 'Mà', 'Ci', 'Ar', 'Ha', 'Sa']; + + var gd = moment.defineLocale('gd', { + months: months, + monthsShort: monthsShort, + monthsParseExact: true, + weekdays: weekdays, + weekdaysShort: weekdaysShort, + weekdaysMin: weekdaysMin, + longDateFormat: { + LT: 'HH:mm', + LTS: 'HH:mm:ss', + L: 'DD/MM/YYYY', + LL: 'D MMMM YYYY', + LLL: 'D MMMM YYYY HH:mm', + LLLL: 'dddd, D MMMM YYYY HH:mm', + }, + calendar: { + sameDay: '[An-diugh aig] LT', + nextDay: '[A-màireach aig] LT', + nextWeek: 'dddd [aig] LT', + lastDay: '[An-dè aig] LT', + lastWeek: 'dddd [seo chaidh] [aig] LT', + sameElse: 'L', + }, + relativeTime: { + future: 'ann an %s', + past: 'bho chionn %s', + s: 'beagan diogan', + ss: '%d diogan', + m: 'mionaid', + mm: '%d mionaidean', + h: 'uair', + hh: '%d uairean', + d: 'latha', + dd: '%d latha', + M: 'mìos', + MM: '%d mìosan', + y: 'bliadhna', + yy: '%d bliadhna', + }, + dayOfMonthOrdinalParse: /\d{1,2}(d|na|mh)/, + ordinal: function (number) { + var output = number === 1 ? 'd' : number % 10 === 2 ? 'na' : 'mh'; + return number + output; + }, + week: { + dow: 1, // Monday is the first day of the week. + doy: 4, // The week that contains Jan 4th is the first week of the year. + }, + }); + + return gd; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/gl.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/gl.js new file mode 100644 index 0000000..16dcb5a --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/gl.js @@ -0,0 +1,86 @@ +//! moment.js locale configuration +//! locale : Galician [gl] +//! author : Juan G. Hurtado : https://github.com/juanghurtado + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var gl = moment.defineLocale('gl', { + months: 'xaneiro_febreiro_marzo_abril_maio_xuño_xullo_agosto_setembro_outubro_novembro_decembro'.split( + '_' + ), + monthsShort: + 'xan._feb._mar._abr._mai._xuñ._xul._ago._set._out._nov._dec.'.split( + '_' + ), + monthsParseExact: true, + weekdays: 'domingo_luns_martes_mércores_xoves_venres_sábado'.split('_'), + weekdaysShort: 'dom._lun._mar._mér._xov._ven._sáb.'.split('_'), + weekdaysMin: 'do_lu_ma_mé_xo_ve_sá'.split('_'), + weekdaysParseExact: true, + longDateFormat: { + LT: 'H:mm', + LTS: 'H:mm:ss', + L: 'DD/MM/YYYY', + LL: 'D [de] MMMM [de] YYYY', + LLL: 'D [de] MMMM [de] YYYY H:mm', + LLLL: 'dddd, D [de] MMMM [de] YYYY H:mm', + }, + calendar: { + sameDay: function () { + return '[hoxe ' + (this.hours() !== 1 ? 'ás' : 'á') + '] LT'; + }, + nextDay: function () { + return '[mañá ' + (this.hours() !== 1 ? 'ás' : 'á') + '] LT'; + }, + nextWeek: function () { + return 'dddd [' + (this.hours() !== 1 ? 'ás' : 'a') + '] LT'; + }, + lastDay: function () { + return '[onte ' + (this.hours() !== 1 ? 'á' : 'a') + '] LT'; + }, + lastWeek: function () { + return ( + '[o] dddd [pasado ' + (this.hours() !== 1 ? 'ás' : 'a') + '] LT' + ); + }, + sameElse: 'L', + }, + relativeTime: { + future: function (str) { + if (str.indexOf('un') === 0) { + return 'n' + str; + } + return 'en ' + str; + }, + past: 'hai %s', + s: 'uns segundos', + ss: '%d segundos', + m: 'un minuto', + mm: '%d minutos', + h: 'unha hora', + hh: '%d horas', + d: 'un día', + dd: '%d días', + M: 'un mes', + MM: '%d meses', + y: 'un ano', + yy: '%d anos', + }, + dayOfMonthOrdinalParse: /\d{1,2}º/, + ordinal: '%dº', + week: { + dow: 1, // Monday is the first day of the week. + doy: 4, // The week that contains Jan 4th is the first week of the year. + }, + }); + + return gl; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/gom-deva.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/gom-deva.js new file mode 100644 index 0000000..ae93d0d --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/gom-deva.js @@ -0,0 +1,137 @@ +//! moment.js locale configuration +//! locale : Konkani Devanagari script [gom-deva] +//! author : The Discoverer : https://github.com/WikiDiscoverer + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + function processRelativeTime(number, withoutSuffix, key, isFuture) { + var format = { + s: ['थोडया सॅकंडांनी', 'थोडे सॅकंड'], + ss: [number + ' सॅकंडांनी', number + ' सॅकंड'], + m: ['एका मिणटान', 'एक मिनूट'], + mm: [number + ' मिणटांनी', number + ' मिणटां'], + h: ['एका वरान', 'एक वर'], + hh: [number + ' वरांनी', number + ' वरां'], + d: ['एका दिसान', 'एक दीस'], + dd: [number + ' दिसांनी', number + ' दीस'], + M: ['एका म्हयन्यान', 'एक म्हयनो'], + MM: [number + ' म्हयन्यानी', number + ' म्हयने'], + y: ['एका वर्सान', 'एक वर्स'], + yy: [number + ' वर्सांनी', number + ' वर्सां'], + }; + return isFuture ? format[key][0] : format[key][1]; + } + + var gomDeva = moment.defineLocale('gom-deva', { + months: { + standalone: + 'जानेवारी_फेब्रुवारी_मार्च_एप्रील_मे_जून_जुलय_ऑगस्ट_सप्टेंबर_ऑक्टोबर_नोव्हेंबर_डिसेंबर'.split( + '_' + ), + format: 'जानेवारीच्या_फेब्रुवारीच्या_मार्चाच्या_एप्रीलाच्या_मेयाच्या_जूनाच्या_जुलयाच्या_ऑगस्टाच्या_सप्टेंबराच्या_ऑक्टोबराच्या_नोव्हेंबराच्या_डिसेंबराच्या'.split( + '_' + ), + isFormat: /MMMM(\s)+D[oD]?/, + }, + monthsShort: + 'जाने._फेब्रु._मार्च_एप्री._मे_जून_जुल._ऑग._सप्टें._ऑक्टो._नोव्हें._डिसें.'.split( + '_' + ), + monthsParseExact: true, + weekdays: 'आयतार_सोमार_मंगळार_बुधवार_बिरेस्तार_सुक्रार_शेनवार'.split('_'), + weekdaysShort: 'आयत._सोम._मंगळ._बुध._ब्रेस्त._सुक्र._शेन.'.split('_'), + weekdaysMin: 'आ_सो_मं_बु_ब्रे_सु_शे'.split('_'), + weekdaysParseExact: true, + longDateFormat: { + LT: 'A h:mm [वाजतां]', + LTS: 'A h:mm:ss [वाजतां]', + L: 'DD-MM-YYYY', + LL: 'D MMMM YYYY', + LLL: 'D MMMM YYYY A h:mm [वाजतां]', + LLLL: 'dddd, MMMM Do, YYYY, A h:mm [वाजतां]', + llll: 'ddd, D MMM YYYY, A h:mm [वाजतां]', + }, + calendar: { + sameDay: '[आयज] LT', + nextDay: '[फाल्यां] LT', + nextWeek: '[फुडलो] dddd[,] LT', + lastDay: '[काल] LT', + lastWeek: '[फाटलो] dddd[,] LT', + sameElse: 'L', + }, + relativeTime: { + future: '%s', + past: '%s आदीं', + s: processRelativeTime, + ss: processRelativeTime, + m: processRelativeTime, + mm: processRelativeTime, + h: processRelativeTime, + hh: processRelativeTime, + d: processRelativeTime, + dd: processRelativeTime, + M: processRelativeTime, + MM: processRelativeTime, + y: processRelativeTime, + yy: processRelativeTime, + }, + dayOfMonthOrdinalParse: /\d{1,2}(वेर)/, + ordinal: function (number, period) { + switch (period) { + // the ordinal 'वेर' only applies to day of the month + case 'D': + return number + 'वेर'; + default: + case 'M': + case 'Q': + case 'DDD': + case 'd': + case 'w': + case 'W': + return number; + } + }, + week: { + dow: 0, // Sunday is the first day of the week + doy: 3, // The week that contains Jan 4th is the first week of the year (7 + 0 - 4) + }, + meridiemParse: /राती|सकाळीं|दनपारां|सांजे/, + meridiemHour: function (hour, meridiem) { + if (hour === 12) { + hour = 0; + } + if (meridiem === 'राती') { + return hour < 4 ? hour : hour + 12; + } else if (meridiem === 'सकाळीं') { + return hour; + } else if (meridiem === 'दनपारां') { + return hour > 12 ? hour : hour + 12; + } else if (meridiem === 'सांजे') { + return hour + 12; + } + }, + meridiem: function (hour, minute, isLower) { + if (hour < 4) { + return 'राती'; + } else if (hour < 12) { + return 'सकाळीं'; + } else if (hour < 16) { + return 'दनपारां'; + } else if (hour < 20) { + return 'सांजे'; + } else { + return 'राती'; + } + }, + }); + + return gomDeva; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/gom-latn.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/gom-latn.js new file mode 100644 index 0000000..93cbe15 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/gom-latn.js @@ -0,0 +1,135 @@ +//! moment.js locale configuration +//! locale : Konkani Latin script [gom-latn] +//! author : The Discoverer : https://github.com/WikiDiscoverer + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + function processRelativeTime(number, withoutSuffix, key, isFuture) { + var format = { + s: ['thoddea sekondamni', 'thodde sekond'], + ss: [number + ' sekondamni', number + ' sekond'], + m: ['eka mintan', 'ek minut'], + mm: [number + ' mintamni', number + ' mintam'], + h: ['eka voran', 'ek vor'], + hh: [number + ' voramni', number + ' voram'], + d: ['eka disan', 'ek dis'], + dd: [number + ' disamni', number + ' dis'], + M: ['eka mhoinean', 'ek mhoino'], + MM: [number + ' mhoineamni', number + ' mhoine'], + y: ['eka vorsan', 'ek voros'], + yy: [number + ' vorsamni', number + ' vorsam'], + }; + return isFuture ? format[key][0] : format[key][1]; + } + + var gomLatn = moment.defineLocale('gom-latn', { + months: { + standalone: + 'Janer_Febrer_Mars_Abril_Mai_Jun_Julai_Agost_Setembr_Otubr_Novembr_Dezembr'.split( + '_' + ), + format: 'Janerachea_Febrerachea_Marsachea_Abrilachea_Maiachea_Junachea_Julaiachea_Agostachea_Setembrachea_Otubrachea_Novembrachea_Dezembrachea'.split( + '_' + ), + isFormat: /MMMM(\s)+D[oD]?/, + }, + monthsShort: + 'Jan._Feb._Mars_Abr._Mai_Jun_Jul._Ago._Set._Otu._Nov._Dez.'.split('_'), + monthsParseExact: true, + weekdays: "Aitar_Somar_Mongllar_Budhvar_Birestar_Sukrar_Son'var".split('_'), + weekdaysShort: 'Ait._Som._Mon._Bud._Bre._Suk._Son.'.split('_'), + weekdaysMin: 'Ai_Sm_Mo_Bu_Br_Su_Sn'.split('_'), + weekdaysParseExact: true, + longDateFormat: { + LT: 'A h:mm [vazta]', + LTS: 'A h:mm:ss [vazta]', + L: 'DD-MM-YYYY', + LL: 'D MMMM YYYY', + LLL: 'D MMMM YYYY A h:mm [vazta]', + LLLL: 'dddd, MMMM Do, YYYY, A h:mm [vazta]', + llll: 'ddd, D MMM YYYY, A h:mm [vazta]', + }, + calendar: { + sameDay: '[Aiz] LT', + nextDay: '[Faleam] LT', + nextWeek: '[Fuddlo] dddd[,] LT', + lastDay: '[Kal] LT', + lastWeek: '[Fattlo] dddd[,] LT', + sameElse: 'L', + }, + relativeTime: { + future: '%s', + past: '%s adim', + s: processRelativeTime, + ss: processRelativeTime, + m: processRelativeTime, + mm: processRelativeTime, + h: processRelativeTime, + hh: processRelativeTime, + d: processRelativeTime, + dd: processRelativeTime, + M: processRelativeTime, + MM: processRelativeTime, + y: processRelativeTime, + yy: processRelativeTime, + }, + dayOfMonthOrdinalParse: /\d{1,2}(er)/, + ordinal: function (number, period) { + switch (period) { + // the ordinal 'er' only applies to day of the month + case 'D': + return number + 'er'; + default: + case 'M': + case 'Q': + case 'DDD': + case 'd': + case 'w': + case 'W': + return number; + } + }, + week: { + dow: 0, // Sunday is the first day of the week + doy: 3, // The week that contains Jan 4th is the first week of the year (7 + 0 - 4) + }, + meridiemParse: /rati|sokallim|donparam|sanje/, + meridiemHour: function (hour, meridiem) { + if (hour === 12) { + hour = 0; + } + if (meridiem === 'rati') { + return hour < 4 ? hour : hour + 12; + } else if (meridiem === 'sokallim') { + return hour; + } else if (meridiem === 'donparam') { + return hour > 12 ? hour : hour + 12; + } else if (meridiem === 'sanje') { + return hour + 12; + } + }, + meridiem: function (hour, minute, isLower) { + if (hour < 4) { + return 'rati'; + } else if (hour < 12) { + return 'sokallim'; + } else if (hour < 16) { + return 'donparam'; + } else if (hour < 20) { + return 'sanje'; + } else { + return 'rati'; + } + }, + }); + + return gomLatn; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/gu.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/gu.js new file mode 100644 index 0000000..6583f77 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/gu.js @@ -0,0 +1,133 @@ +//! moment.js locale configuration +//! locale : Gujarati [gu] +//! author : Kaushik Thanki : https://github.com/Kaushik1987 + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var symbolMap = { + 1: '૧', + 2: '૨', + 3: '૩', + 4: '૪', + 5: '૫', + 6: '૬', + 7: '૭', + 8: '૮', + 9: '૯', + 0: '૦', + }, + numberMap = { + '૧': '1', + '૨': '2', + '૩': '3', + '૪': '4', + '૫': '5', + '૬': '6', + '૭': '7', + '૮': '8', + '૯': '9', + '૦': '0', + }; + + var gu = moment.defineLocale('gu', { + months: 'જાન્યુઆરી_ફેબ્રુઆરી_માર્ચ_એપ્રિલ_મે_જૂન_જુલાઈ_ઑગસ્ટ_સપ્ટેમ્બર_ઑક્ટ્બર_નવેમ્બર_ડિસેમ્બર'.split( + '_' + ), + monthsShort: + 'જાન્યુ._ફેબ્રુ._માર્ચ_એપ્રિ._મે_જૂન_જુલા._ઑગ._સપ્ટે._ઑક્ટ્._નવે._ડિસે.'.split( + '_' + ), + monthsParseExact: true, + weekdays: 'રવિવાર_સોમવાર_મંગળવાર_બુધ્વાર_ગુરુવાર_શુક્રવાર_શનિવાર'.split( + '_' + ), + weekdaysShort: 'રવિ_સોમ_મંગળ_બુધ્_ગુરુ_શુક્ર_શનિ'.split('_'), + weekdaysMin: 'ર_સો_મં_બુ_ગુ_શુ_શ'.split('_'), + longDateFormat: { + LT: 'A h:mm વાગ્યે', + LTS: 'A h:mm:ss વાગ્યે', + L: 'DD/MM/YYYY', + LL: 'D MMMM YYYY', + LLL: 'D MMMM YYYY, A h:mm વાગ્યે', + LLLL: 'dddd, D MMMM YYYY, A h:mm વાગ્યે', + }, + calendar: { + sameDay: '[આજ] LT', + nextDay: '[કાલે] LT', + nextWeek: 'dddd, LT', + lastDay: '[ગઇકાલે] LT', + lastWeek: '[પાછલા] dddd, LT', + sameElse: 'L', + }, + relativeTime: { + future: '%s મા', + past: '%s પહેલા', + s: 'અમુક પળો', + ss: '%d સેકંડ', + m: 'એક મિનિટ', + mm: '%d મિનિટ', + h: 'એક કલાક', + hh: '%d કલાક', + d: 'એક દિવસ', + dd: '%d દિવસ', + M: 'એક મહિનો', + MM: '%d મહિનો', + y: 'એક વર્ષ', + yy: '%d વર્ષ', + }, + preparse: function (string) { + return string.replace(/[૧૨૩૪૫૬૭૮૯૦]/g, function (match) { + return numberMap[match]; + }); + }, + postformat: function (string) { + return string.replace(/\d/g, function (match) { + return symbolMap[match]; + }); + }, + // Gujarati notation for meridiems are quite fuzzy in practice. While there exists + // a rigid notion of a 'Pahar' it is not used as rigidly in modern Gujarati. + meridiemParse: /રાત|બપોર|સવાર|સાંજ/, + meridiemHour: function (hour, meridiem) { + if (hour === 12) { + hour = 0; + } + if (meridiem === 'રાત') { + return hour < 4 ? hour : hour + 12; + } else if (meridiem === 'સવાર') { + return hour; + } else if (meridiem === 'બપોર') { + return hour >= 10 ? hour : hour + 12; + } else if (meridiem === 'સાંજ') { + return hour + 12; + } + }, + meridiem: function (hour, minute, isLower) { + if (hour < 4) { + return 'રાત'; + } else if (hour < 10) { + return 'સવાર'; + } else if (hour < 17) { + return 'બપોર'; + } else if (hour < 20) { + return 'સાંજ'; + } else { + return 'રાત'; + } + }, + week: { + dow: 0, // Sunday is the first day of the week. + doy: 6, // The week that contains Jan 6th is the first week of the year. + }, + }); + + return gu; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/he.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/he.js new file mode 100644 index 0000000..e19a0f9 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/he.js @@ -0,0 +1,105 @@ +//! moment.js locale configuration +//! locale : Hebrew [he] +//! author : Tomer Cohen : https://github.com/tomer +//! author : Moshe Simantov : https://github.com/DevelopmentIL +//! author : Tal Ater : https://github.com/TalAter + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var he = moment.defineLocale('he', { + months: 'ינואר_פברואר_מרץ_אפריל_מאי_יוני_יולי_אוגוסט_ספטמבר_אוקטובר_נובמבר_דצמבר'.split( + '_' + ), + monthsShort: + 'ינו׳_פבר׳_מרץ_אפר׳_מאי_יוני_יולי_אוג׳_ספט׳_אוק׳_נוב׳_דצמ׳'.split('_'), + weekdays: 'ראשון_שני_שלישי_רביעי_חמישי_שישי_שבת'.split('_'), + weekdaysShort: 'א׳_ב׳_ג׳_ד׳_ה׳_ו׳_ש׳'.split('_'), + weekdaysMin: 'א_ב_ג_ד_ה_ו_ש'.split('_'), + longDateFormat: { + LT: 'HH:mm', + LTS: 'HH:mm:ss', + L: 'DD/MM/YYYY', + LL: 'D [ב]MMMM YYYY', + LLL: 'D [ב]MMMM YYYY HH:mm', + LLLL: 'dddd, D [ב]MMMM YYYY HH:mm', + l: 'D/M/YYYY', + ll: 'D MMM YYYY', + lll: 'D MMM YYYY HH:mm', + llll: 'ddd, D MMM YYYY HH:mm', + }, + calendar: { + sameDay: '[היום ב־]LT', + nextDay: '[מחר ב־]LT', + nextWeek: 'dddd [בשעה] LT', + lastDay: '[אתמול ב־]LT', + lastWeek: '[ביום] dddd [האחרון בשעה] LT', + sameElse: 'L', + }, + relativeTime: { + future: 'בעוד %s', + past: 'לפני %s', + s: 'מספר שניות', + ss: '%d שניות', + m: 'דקה', + mm: '%d דקות', + h: 'שעה', + hh: function (number) { + if (number === 2) { + return 'שעתיים'; + } + return number + ' שעות'; + }, + d: 'יום', + dd: function (number) { + if (number === 2) { + return 'יומיים'; + } + return number + ' ימים'; + }, + M: 'חודש', + MM: function (number) { + if (number === 2) { + return 'חודשיים'; + } + return number + ' חודשים'; + }, + y: 'שנה', + yy: function (number) { + if (number === 2) { + return 'שנתיים'; + } else if (number % 10 === 0 && number !== 10) { + return number + ' שנה'; + } + return number + ' שנים'; + }, + }, + meridiemParse: + /אחה"צ|לפנה"צ|אחרי הצהריים|לפני הצהריים|לפנות בוקר|בבוקר|בערב/i, + isPM: function (input) { + return /^(אחה"צ|אחרי הצהריים|בערב)$/.test(input); + }, + meridiem: function (hour, minute, isLower) { + if (hour < 5) { + return 'לפנות בוקר'; + } else if (hour < 10) { + return 'בבוקר'; + } else if (hour < 12) { + return isLower ? 'לפנה"צ' : 'לפני הצהריים'; + } else if (hour < 18) { + return isLower ? 'אחה"צ' : 'אחרי הצהריים'; + } else { + return 'בערב'; + } + }, + }); + + return he; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/hi.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/hi.js new file mode 100644 index 0000000..56515bd --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/hi.js @@ -0,0 +1,179 @@ +//! moment.js locale configuration +//! locale : Hindi [hi] +//! author : Mayank Singhal : https://github.com/mayanksinghal + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var symbolMap = { + 1: '१', + 2: '२', + 3: '३', + 4: '४', + 5: '५', + 6: '६', + 7: '७', + 8: '८', + 9: '९', + 0: '०', + }, + numberMap = { + '१': '1', + '२': '2', + '३': '3', + '४': '4', + '५': '5', + '६': '6', + '७': '7', + '८': '8', + '९': '9', + '०': '0', + }, + monthsParse = [ + /^जन/i, + /^फ़र|फर/i, + /^मार्च/i, + /^अप्रै/i, + /^मई/i, + /^जून/i, + /^जुल/i, + /^अग/i, + /^सितं|सित/i, + /^अक्टू/i, + /^नव|नवं/i, + /^दिसं|दिस/i, + ], + shortMonthsParse = [ + /^जन/i, + /^फ़र/i, + /^मार्च/i, + /^अप्रै/i, + /^मई/i, + /^जून/i, + /^जुल/i, + /^अग/i, + /^सित/i, + /^अक्टू/i, + /^नव/i, + /^दिस/i, + ]; + + var hi = moment.defineLocale('hi', { + months: { + format: 'जनवरी_फ़रवरी_मार्च_अप्रैल_मई_जून_जुलाई_अगस्त_सितम्बर_अक्टूबर_नवम्बर_दिसम्बर'.split( + '_' + ), + standalone: + 'जनवरी_फरवरी_मार्च_अप्रैल_मई_जून_जुलाई_अगस्त_सितंबर_अक्टूबर_नवंबर_दिसंबर'.split( + '_' + ), + }, + monthsShort: + 'जन._फ़र._मार्च_अप्रै._मई_जून_जुल._अग._सित._अक्टू._नव._दिस.'.split('_'), + weekdays: 'रविवार_सोमवार_मंगलवार_बुधवार_गुरूवार_शुक्रवार_शनिवार'.split('_'), + weekdaysShort: 'रवि_सोम_मंगल_बुध_गुरू_शुक्र_शनि'.split('_'), + weekdaysMin: 'र_सो_मं_बु_गु_शु_श'.split('_'), + longDateFormat: { + LT: 'A h:mm बजे', + LTS: 'A h:mm:ss बजे', + L: 'DD/MM/YYYY', + LL: 'D MMMM YYYY', + LLL: 'D MMMM YYYY, A h:mm बजे', + LLLL: 'dddd, D MMMM YYYY, A h:mm बजे', + }, + + monthsParse: monthsParse, + longMonthsParse: monthsParse, + shortMonthsParse: shortMonthsParse, + + monthsRegex: + /^(जनवरी|जन\.?|फ़रवरी|फरवरी|फ़र\.?|मार्च?|अप्रैल|अप्रै\.?|मई?|जून?|जुलाई|जुल\.?|अगस्त|अग\.?|सितम्बर|सितंबर|सित\.?|अक्टूबर|अक्टू\.?|नवम्बर|नवंबर|नव\.?|दिसम्बर|दिसंबर|दिस\.?)/i, + + monthsShortRegex: + /^(जनवरी|जन\.?|फ़रवरी|फरवरी|फ़र\.?|मार्च?|अप्रैल|अप्रै\.?|मई?|जून?|जुलाई|जुल\.?|अगस्त|अग\.?|सितम्बर|सितंबर|सित\.?|अक्टूबर|अक्टू\.?|नवम्बर|नवंबर|नव\.?|दिसम्बर|दिसंबर|दिस\.?)/i, + + monthsStrictRegex: + /^(जनवरी?|फ़रवरी|फरवरी?|मार्च?|अप्रैल?|मई?|जून?|जुलाई?|अगस्त?|सितम्बर|सितंबर|सित?\.?|अक्टूबर|अक्टू\.?|नवम्बर|नवंबर?|दिसम्बर|दिसंबर?)/i, + + monthsShortStrictRegex: + /^(जन\.?|फ़र\.?|मार्च?|अप्रै\.?|मई?|जून?|जुल\.?|अग\.?|सित\.?|अक्टू\.?|नव\.?|दिस\.?)/i, + + calendar: { + sameDay: '[आज] LT', + nextDay: '[कल] LT', + nextWeek: 'dddd, LT', + lastDay: '[कल] LT', + lastWeek: '[पिछले] dddd, LT', + sameElse: 'L', + }, + relativeTime: { + future: '%s में', + past: '%s पहले', + s: 'कुछ ही क्षण', + ss: '%d सेकंड', + m: 'एक मिनट', + mm: '%d मिनट', + h: 'एक घंटा', + hh: '%d घंटे', + d: 'एक दिन', + dd: '%d दिन', + M: 'एक महीने', + MM: '%d महीने', + y: 'एक वर्ष', + yy: '%d वर्ष', + }, + preparse: function (string) { + return string.replace(/[१२३४५६७८९०]/g, function (match) { + return numberMap[match]; + }); + }, + postformat: function (string) { + return string.replace(/\d/g, function (match) { + return symbolMap[match]; + }); + }, + // Hindi notation for meridiems are quite fuzzy in practice. While there exists + // a rigid notion of a 'Pahar' it is not used as rigidly in modern Hindi. + meridiemParse: /रात|सुबह|दोपहर|शाम/, + meridiemHour: function (hour, meridiem) { + if (hour === 12) { + hour = 0; + } + if (meridiem === 'रात') { + return hour < 4 ? hour : hour + 12; + } else if (meridiem === 'सुबह') { + return hour; + } else if (meridiem === 'दोपहर') { + return hour >= 10 ? hour : hour + 12; + } else if (meridiem === 'शाम') { + return hour + 12; + } + }, + meridiem: function (hour, minute, isLower) { + if (hour < 4) { + return 'रात'; + } else if (hour < 10) { + return 'सुबह'; + } else if (hour < 17) { + return 'दोपहर'; + } else if (hour < 20) { + return 'शाम'; + } else { + return 'रात'; + } + }, + week: { + dow: 0, // Sunday is the first day of the week. + doy: 6, // The week that contains Jan 6th is the first week of the year. + }, + }); + + return hi; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/hr.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/hr.js new file mode 100644 index 0000000..f41cce0 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/hr.js @@ -0,0 +1,167 @@ +//! moment.js locale configuration +//! locale : Croatian [hr] +//! author : Bojan Marković : https://github.com/bmarkovic + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + function translate(number, withoutSuffix, key) { + var result = number + ' '; + switch (key) { + case 'ss': + if (number === 1) { + result += 'sekunda'; + } else if (number === 2 || number === 3 || number === 4) { + result += 'sekunde'; + } else { + result += 'sekundi'; + } + return result; + case 'm': + return withoutSuffix ? 'jedna minuta' : 'jedne minute'; + case 'mm': + if (number === 1) { + result += 'minuta'; + } else if (number === 2 || number === 3 || number === 4) { + result += 'minute'; + } else { + result += 'minuta'; + } + return result; + case 'h': + return withoutSuffix ? 'jedan sat' : 'jednog sata'; + case 'hh': + if (number === 1) { + result += 'sat'; + } else if (number === 2 || number === 3 || number === 4) { + result += 'sata'; + } else { + result += 'sati'; + } + return result; + case 'dd': + if (number === 1) { + result += 'dan'; + } else { + result += 'dana'; + } + return result; + case 'MM': + if (number === 1) { + result += 'mjesec'; + } else if (number === 2 || number === 3 || number === 4) { + result += 'mjeseca'; + } else { + result += 'mjeseci'; + } + return result; + case 'yy': + if (number === 1) { + result += 'godina'; + } else if (number === 2 || number === 3 || number === 4) { + result += 'godine'; + } else { + result += 'godina'; + } + return result; + } + } + + var hr = moment.defineLocale('hr', { + months: { + format: 'siječnja_veljače_ožujka_travnja_svibnja_lipnja_srpnja_kolovoza_rujna_listopada_studenoga_prosinca'.split( + '_' + ), + standalone: + 'siječanj_veljača_ožujak_travanj_svibanj_lipanj_srpanj_kolovoz_rujan_listopad_studeni_prosinac'.split( + '_' + ), + }, + monthsShort: + 'sij._velj._ožu._tra._svi._lip._srp._kol._ruj._lis._stu._pro.'.split( + '_' + ), + monthsParseExact: true, + weekdays: 'nedjelja_ponedjeljak_utorak_srijeda_četvrtak_petak_subota'.split( + '_' + ), + weekdaysShort: 'ned._pon._uto._sri._čet._pet._sub.'.split('_'), + weekdaysMin: 'ne_po_ut_sr_če_pe_su'.split('_'), + weekdaysParseExact: true, + longDateFormat: { + LT: 'H:mm', + LTS: 'H:mm:ss', + L: 'DD.MM.YYYY', + LL: 'Do MMMM YYYY', + LLL: 'Do MMMM YYYY H:mm', + LLLL: 'dddd, Do MMMM YYYY H:mm', + }, + calendar: { + sameDay: '[danas u] LT', + nextDay: '[sutra u] LT', + nextWeek: function () { + switch (this.day()) { + case 0: + return '[u] [nedjelju] [u] LT'; + case 3: + return '[u] [srijedu] [u] LT'; + case 6: + return '[u] [subotu] [u] LT'; + case 1: + case 2: + case 4: + case 5: + return '[u] dddd [u] LT'; + } + }, + lastDay: '[jučer u] LT', + lastWeek: function () { + switch (this.day()) { + case 0: + return '[prošlu] [nedjelju] [u] LT'; + case 3: + return '[prošlu] [srijedu] [u] LT'; + case 6: + return '[prošle] [subote] [u] LT'; + case 1: + case 2: + case 4: + case 5: + return '[prošli] dddd [u] LT'; + } + }, + sameElse: 'L', + }, + relativeTime: { + future: 'za %s', + past: 'prije %s', + s: 'par sekundi', + ss: translate, + m: translate, + mm: translate, + h: translate, + hh: translate, + d: 'dan', + dd: translate, + M: 'mjesec', + MM: translate, + y: 'godinu', + yy: translate, + }, + dayOfMonthOrdinalParse: /\d{1,2}\./, + ordinal: '%d.', + week: { + dow: 1, // Monday is the first day of the week. + doy: 7, // The week that contains Jan 7th is the first week of the year. + }, + }); + + return hr; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/hu.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/hu.js new file mode 100644 index 0000000..162959d --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/hu.js @@ -0,0 +1,129 @@ +//! moment.js locale configuration +//! locale : Hungarian [hu] +//! author : Adam Brunner : https://github.com/adambrunner +//! author : Peter Viszt : https://github.com/passatgt + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var weekEndings = + 'vasárnap hétfőn kedden szerdán csütörtökön pénteken szombaton'.split(' '); + function translate(number, withoutSuffix, key, isFuture) { + var num = number; + switch (key) { + case 's': + return isFuture || withoutSuffix + ? 'néhány másodperc' + : 'néhány másodperce'; + case 'ss': + return num + (isFuture || withoutSuffix) + ? ' másodperc' + : ' másodperce'; + case 'm': + return 'egy' + (isFuture || withoutSuffix ? ' perc' : ' perce'); + case 'mm': + return num + (isFuture || withoutSuffix ? ' perc' : ' perce'); + case 'h': + return 'egy' + (isFuture || withoutSuffix ? ' óra' : ' órája'); + case 'hh': + return num + (isFuture || withoutSuffix ? ' óra' : ' órája'); + case 'd': + return 'egy' + (isFuture || withoutSuffix ? ' nap' : ' napja'); + case 'dd': + return num + (isFuture || withoutSuffix ? ' nap' : ' napja'); + case 'M': + return 'egy' + (isFuture || withoutSuffix ? ' hónap' : ' hónapja'); + case 'MM': + return num + (isFuture || withoutSuffix ? ' hónap' : ' hónapja'); + case 'y': + return 'egy' + (isFuture || withoutSuffix ? ' év' : ' éve'); + case 'yy': + return num + (isFuture || withoutSuffix ? ' év' : ' éve'); + } + return ''; + } + function week(isFuture) { + return ( + (isFuture ? '' : '[múlt] ') + + '[' + + weekEndings[this.day()] + + '] LT[-kor]' + ); + } + + var hu = moment.defineLocale('hu', { + months: 'január_február_március_április_május_június_július_augusztus_szeptember_október_november_december'.split( + '_' + ), + monthsShort: + 'jan._feb._márc._ápr._máj._jún._júl._aug._szept._okt._nov._dec.'.split( + '_' + ), + monthsParseExact: true, + weekdays: 'vasárnap_hétfő_kedd_szerda_csütörtök_péntek_szombat'.split('_'), + weekdaysShort: 'vas_hét_kedd_sze_csüt_pén_szo'.split('_'), + weekdaysMin: 'v_h_k_sze_cs_p_szo'.split('_'), + longDateFormat: { + LT: 'H:mm', + LTS: 'H:mm:ss', + L: 'YYYY.MM.DD.', + LL: 'YYYY. MMMM D.', + LLL: 'YYYY. MMMM D. H:mm', + LLLL: 'YYYY. MMMM D., dddd H:mm', + }, + meridiemParse: /de|du/i, + isPM: function (input) { + return input.charAt(1).toLowerCase() === 'u'; + }, + meridiem: function (hours, minutes, isLower) { + if (hours < 12) { + return isLower === true ? 'de' : 'DE'; + } else { + return isLower === true ? 'du' : 'DU'; + } + }, + calendar: { + sameDay: '[ma] LT[-kor]', + nextDay: '[holnap] LT[-kor]', + nextWeek: function () { + return week.call(this, true); + }, + lastDay: '[tegnap] LT[-kor]', + lastWeek: function () { + return week.call(this, false); + }, + sameElse: 'L', + }, + relativeTime: { + future: '%s múlva', + past: '%s', + s: translate, + ss: translate, + m: translate, + mm: translate, + h: translate, + hh: translate, + d: translate, + dd: translate, + M: translate, + MM: translate, + y: translate, + yy: translate, + }, + dayOfMonthOrdinalParse: /\d{1,2}\./, + ordinal: '%d.', + week: { + dow: 1, // Monday is the first day of the week. + doy: 4, // The week that contains Jan 4th is the first week of the year. + }, + }); + + return hu; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/hy-am.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/hy-am.js new file mode 100644 index 0000000..9c65b1e --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/hy-am.js @@ -0,0 +1,105 @@ +//! moment.js locale configuration +//! locale : Armenian [hy-am] +//! author : Armendarabyan : https://github.com/armendarabyan + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var hyAm = moment.defineLocale('hy-am', { + months: { + format: 'հունվարի_փետրվարի_մարտի_ապրիլի_մայիսի_հունիսի_հուլիսի_օգոստոսի_սեպտեմբերի_հոկտեմբերի_նոյեմբերի_դեկտեմբերի'.split( + '_' + ), + standalone: + 'հունվար_փետրվար_մարտ_ապրիլ_մայիս_հունիս_հուլիս_օգոստոս_սեպտեմբեր_հոկտեմբեր_նոյեմբեր_դեկտեմբեր'.split( + '_' + ), + }, + monthsShort: 'հնվ_փտր_մրտ_ապր_մյս_հնս_հլս_օգս_սպտ_հկտ_նմբ_դկտ'.split('_'), + weekdays: + 'կիրակի_երկուշաբթի_երեքշաբթի_չորեքշաբթի_հինգշաբթի_ուրբաթ_շաբաթ'.split( + '_' + ), + weekdaysShort: 'կրկ_երկ_երք_չրք_հնգ_ուրբ_շբթ'.split('_'), + weekdaysMin: 'կրկ_երկ_երք_չրք_հնգ_ուրբ_շբթ'.split('_'), + longDateFormat: { + LT: 'HH:mm', + LTS: 'HH:mm:ss', + L: 'DD.MM.YYYY', + LL: 'D MMMM YYYY թ.', + LLL: 'D MMMM YYYY թ., HH:mm', + LLLL: 'dddd, D MMMM YYYY թ., HH:mm', + }, + calendar: { + sameDay: '[այսօր] LT', + nextDay: '[վաղը] LT', + lastDay: '[երեկ] LT', + nextWeek: function () { + return 'dddd [օրը ժամը] LT'; + }, + lastWeek: function () { + return '[անցած] dddd [օրը ժամը] LT'; + }, + sameElse: 'L', + }, + relativeTime: { + future: '%s հետո', + past: '%s առաջ', + s: 'մի քանի վայրկյան', + ss: '%d վայրկյան', + m: 'րոպե', + mm: '%d րոպե', + h: 'ժամ', + hh: '%d ժամ', + d: 'օր', + dd: '%d օր', + M: 'ամիս', + MM: '%d ամիս', + y: 'տարի', + yy: '%d տարի', + }, + meridiemParse: /գիշերվա|առավոտվա|ցերեկվա|երեկոյան/, + isPM: function (input) { + return /^(ցերեկվա|երեկոյան)$/.test(input); + }, + meridiem: function (hour) { + if (hour < 4) { + return 'գիշերվա'; + } else if (hour < 12) { + return 'առավոտվա'; + } else if (hour < 17) { + return 'ցերեկվա'; + } else { + return 'երեկոյան'; + } + }, + dayOfMonthOrdinalParse: /\d{1,2}|\d{1,2}-(ին|րդ)/, + ordinal: function (number, period) { + switch (period) { + case 'DDD': + case 'w': + case 'W': + case 'DDDo': + if (number === 1) { + return number + '-ին'; + } + return number + '-րդ'; + default: + return number; + } + }, + week: { + dow: 1, // Monday is the first day of the week. + doy: 7, // The week that contains Jan 7th is the first week of the year. + }, + }); + + return hyAm; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/id.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/id.js new file mode 100644 index 0000000..9f8ff0a --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/id.js @@ -0,0 +1,87 @@ +//! moment.js locale configuration +//! locale : Indonesian [id] +//! author : Mohammad Satrio Utomo : https://github.com/tyok +//! reference: http://id.wikisource.org/wiki/Pedoman_Umum_Ejaan_Bahasa_Indonesia_yang_Disempurnakan + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var id = moment.defineLocale('id', { + months: 'Januari_Februari_Maret_April_Mei_Juni_Juli_Agustus_September_Oktober_November_Desember'.split( + '_' + ), + monthsShort: 'Jan_Feb_Mar_Apr_Mei_Jun_Jul_Agt_Sep_Okt_Nov_Des'.split('_'), + weekdays: 'Minggu_Senin_Selasa_Rabu_Kamis_Jumat_Sabtu'.split('_'), + weekdaysShort: 'Min_Sen_Sel_Rab_Kam_Jum_Sab'.split('_'), + weekdaysMin: 'Mg_Sn_Sl_Rb_Km_Jm_Sb'.split('_'), + longDateFormat: { + LT: 'HH.mm', + LTS: 'HH.mm.ss', + L: 'DD/MM/YYYY', + LL: 'D MMMM YYYY', + LLL: 'D MMMM YYYY [pukul] HH.mm', + LLLL: 'dddd, D MMMM YYYY [pukul] HH.mm', + }, + meridiemParse: /pagi|siang|sore|malam/, + meridiemHour: function (hour, meridiem) { + if (hour === 12) { + hour = 0; + } + if (meridiem === 'pagi') { + return hour; + } else if (meridiem === 'siang') { + return hour >= 11 ? hour : hour + 12; + } else if (meridiem === 'sore' || meridiem === 'malam') { + return hour + 12; + } + }, + meridiem: function (hours, minutes, isLower) { + if (hours < 11) { + return 'pagi'; + } else if (hours < 15) { + return 'siang'; + } else if (hours < 19) { + return 'sore'; + } else { + return 'malam'; + } + }, + calendar: { + sameDay: '[Hari ini pukul] LT', + nextDay: '[Besok pukul] LT', + nextWeek: 'dddd [pukul] LT', + lastDay: '[Kemarin pukul] LT', + lastWeek: 'dddd [lalu pukul] LT', + sameElse: 'L', + }, + relativeTime: { + future: 'dalam %s', + past: '%s yang lalu', + s: 'beberapa detik', + ss: '%d detik', + m: 'semenit', + mm: '%d menit', + h: 'sejam', + hh: '%d jam', + d: 'sehari', + dd: '%d hari', + M: 'sebulan', + MM: '%d bulan', + y: 'setahun', + yy: '%d tahun', + }, + week: { + dow: 0, // Sunday is the first day of the week. + doy: 6, // The week that contains Jan 6th is the first week of the year. + }, + }); + + return id; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/is.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/is.js new file mode 100644 index 0000000..0252006 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/is.js @@ -0,0 +1,151 @@ +//! moment.js locale configuration +//! locale : Icelandic [is] +//! author : Hinrik Örn Sigurðsson : https://github.com/hinrik + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + function plural(n) { + if (n % 100 === 11) { + return true; + } else if (n % 10 === 1) { + return false; + } + return true; + } + function translate(number, withoutSuffix, key, isFuture) { + var result = number + ' '; + switch (key) { + case 's': + return withoutSuffix || isFuture + ? 'nokkrar sekúndur' + : 'nokkrum sekúndum'; + case 'ss': + if (plural(number)) { + return ( + result + + (withoutSuffix || isFuture ? 'sekúndur' : 'sekúndum') + ); + } + return result + 'sekúnda'; + case 'm': + return withoutSuffix ? 'mínúta' : 'mínútu'; + case 'mm': + if (plural(number)) { + return ( + result + (withoutSuffix || isFuture ? 'mínútur' : 'mínútum') + ); + } else if (withoutSuffix) { + return result + 'mínúta'; + } + return result + 'mínútu'; + case 'hh': + if (plural(number)) { + return ( + result + + (withoutSuffix || isFuture + ? 'klukkustundir' + : 'klukkustundum') + ); + } + return result + 'klukkustund'; + case 'd': + if (withoutSuffix) { + return 'dagur'; + } + return isFuture ? 'dag' : 'degi'; + case 'dd': + if (plural(number)) { + if (withoutSuffix) { + return result + 'dagar'; + } + return result + (isFuture ? 'daga' : 'dögum'); + } else if (withoutSuffix) { + return result + 'dagur'; + } + return result + (isFuture ? 'dag' : 'degi'); + case 'M': + if (withoutSuffix) { + return 'mánuður'; + } + return isFuture ? 'mánuð' : 'mánuði'; + case 'MM': + if (plural(number)) { + if (withoutSuffix) { + return result + 'mánuðir'; + } + return result + (isFuture ? 'mánuði' : 'mánuðum'); + } else if (withoutSuffix) { + return result + 'mánuður'; + } + return result + (isFuture ? 'mánuð' : 'mánuði'); + case 'y': + return withoutSuffix || isFuture ? 'ár' : 'ári'; + case 'yy': + if (plural(number)) { + return result + (withoutSuffix || isFuture ? 'ár' : 'árum'); + } + return result + (withoutSuffix || isFuture ? 'ár' : 'ári'); + } + } + + var is = moment.defineLocale('is', { + months: 'janúar_febrúar_mars_apríl_maí_júní_júlí_ágúst_september_október_nóvember_desember'.split( + '_' + ), + monthsShort: 'jan_feb_mar_apr_maí_jún_júl_ágú_sep_okt_nóv_des'.split('_'), + weekdays: + 'sunnudagur_mánudagur_þriðjudagur_miðvikudagur_fimmtudagur_föstudagur_laugardagur'.split( + '_' + ), + weekdaysShort: 'sun_mán_þri_mið_fim_fös_lau'.split('_'), + weekdaysMin: 'Su_Má_Þr_Mi_Fi_Fö_La'.split('_'), + longDateFormat: { + LT: 'H:mm', + LTS: 'H:mm:ss', + L: 'DD.MM.YYYY', + LL: 'D. MMMM YYYY', + LLL: 'D. MMMM YYYY [kl.] H:mm', + LLLL: 'dddd, D. MMMM YYYY [kl.] H:mm', + }, + calendar: { + sameDay: '[í dag kl.] LT', + nextDay: '[á morgun kl.] LT', + nextWeek: 'dddd [kl.] LT', + lastDay: '[í gær kl.] LT', + lastWeek: '[síðasta] dddd [kl.] LT', + sameElse: 'L', + }, + relativeTime: { + future: 'eftir %s', + past: 'fyrir %s síðan', + s: translate, + ss: translate, + m: translate, + mm: translate, + h: 'klukkustund', + hh: translate, + d: translate, + dd: translate, + M: translate, + MM: translate, + y: translate, + yy: translate, + }, + dayOfMonthOrdinalParse: /\d{1,2}\./, + ordinal: '%d.', + week: { + dow: 1, // Monday is the first day of the week. + doy: 4, // The week that contains Jan 4th is the first week of the year. + }, + }); + + return is; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/it-ch.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/it-ch.js new file mode 100644 index 0000000..8042827 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/it-ch.js @@ -0,0 +1,75 @@ +//! moment.js locale configuration +//! locale : Italian (Switzerland) [it-ch] +//! author : xfh : https://github.com/xfh + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var itCh = moment.defineLocale('it-ch', { + months: 'gennaio_febbraio_marzo_aprile_maggio_giugno_luglio_agosto_settembre_ottobre_novembre_dicembre'.split( + '_' + ), + monthsShort: 'gen_feb_mar_apr_mag_giu_lug_ago_set_ott_nov_dic'.split('_'), + weekdays: 'domenica_lunedì_martedì_mercoledì_giovedì_venerdì_sabato'.split( + '_' + ), + weekdaysShort: 'dom_lun_mar_mer_gio_ven_sab'.split('_'), + weekdaysMin: 'do_lu_ma_me_gi_ve_sa'.split('_'), + longDateFormat: { + LT: 'HH:mm', + LTS: 'HH:mm:ss', + L: 'DD.MM.YYYY', + LL: 'D MMMM YYYY', + LLL: 'D MMMM YYYY HH:mm', + LLLL: 'dddd D MMMM YYYY HH:mm', + }, + calendar: { + sameDay: '[Oggi alle] LT', + nextDay: '[Domani alle] LT', + nextWeek: 'dddd [alle] LT', + lastDay: '[Ieri alle] LT', + lastWeek: function () { + switch (this.day()) { + case 0: + return '[la scorsa] dddd [alle] LT'; + default: + return '[lo scorso] dddd [alle] LT'; + } + }, + sameElse: 'L', + }, + relativeTime: { + future: function (s) { + return (/^[0-9].+$/.test(s) ? 'tra' : 'in') + ' ' + s; + }, + past: '%s fa', + s: 'alcuni secondi', + ss: '%d secondi', + m: 'un minuto', + mm: '%d minuti', + h: "un'ora", + hh: '%d ore', + d: 'un giorno', + dd: '%d giorni', + M: 'un mese', + MM: '%d mesi', + y: 'un anno', + yy: '%d anni', + }, + dayOfMonthOrdinalParse: /\d{1,2}º/, + ordinal: '%dº', + week: { + dow: 1, // Monday is the first day of the week. + doy: 4, // The week that contains Jan 4th is the first week of the year. + }, + }); + + return itCh; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/it.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/it.js new file mode 100644 index 0000000..2ac9037 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/it.js @@ -0,0 +1,117 @@ +//! moment.js locale configuration +//! locale : Italian [it] +//! author : Lorenzo : https://github.com/aliem +//! author: Mattia Larentis: https://github.com/nostalgiaz +//! author: Marco : https://github.com/Manfre98 + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var it = moment.defineLocale('it', { + months: 'gennaio_febbraio_marzo_aprile_maggio_giugno_luglio_agosto_settembre_ottobre_novembre_dicembre'.split( + '_' + ), + monthsShort: 'gen_feb_mar_apr_mag_giu_lug_ago_set_ott_nov_dic'.split('_'), + weekdays: 'domenica_lunedì_martedì_mercoledì_giovedì_venerdì_sabato'.split( + '_' + ), + weekdaysShort: 'dom_lun_mar_mer_gio_ven_sab'.split('_'), + weekdaysMin: 'do_lu_ma_me_gi_ve_sa'.split('_'), + longDateFormat: { + LT: 'HH:mm', + LTS: 'HH:mm:ss', + L: 'DD/MM/YYYY', + LL: 'D MMMM YYYY', + LLL: 'D MMMM YYYY HH:mm', + LLLL: 'dddd D MMMM YYYY HH:mm', + }, + calendar: { + sameDay: function () { + return ( + '[Oggi a' + + (this.hours() > 1 ? 'lle ' : this.hours() === 0 ? ' ' : "ll'") + + ']LT' + ); + }, + nextDay: function () { + return ( + '[Domani a' + + (this.hours() > 1 ? 'lle ' : this.hours() === 0 ? ' ' : "ll'") + + ']LT' + ); + }, + nextWeek: function () { + return ( + 'dddd [a' + + (this.hours() > 1 ? 'lle ' : this.hours() === 0 ? ' ' : "ll'") + + ']LT' + ); + }, + lastDay: function () { + return ( + '[Ieri a' + + (this.hours() > 1 ? 'lle ' : this.hours() === 0 ? ' ' : "ll'") + + ']LT' + ); + }, + lastWeek: function () { + switch (this.day()) { + case 0: + return ( + '[La scorsa] dddd [a' + + (this.hours() > 1 + ? 'lle ' + : this.hours() === 0 + ? ' ' + : "ll'") + + ']LT' + ); + default: + return ( + '[Lo scorso] dddd [a' + + (this.hours() > 1 + ? 'lle ' + : this.hours() === 0 + ? ' ' + : "ll'") + + ']LT' + ); + } + }, + sameElse: 'L', + }, + relativeTime: { + future: 'tra %s', + past: '%s fa', + s: 'alcuni secondi', + ss: '%d secondi', + m: 'un minuto', + mm: '%d minuti', + h: "un'ora", + hh: '%d ore', + d: 'un giorno', + dd: '%d giorni', + w: 'una settimana', + ww: '%d settimane', + M: 'un mese', + MM: '%d mesi', + y: 'un anno', + yy: '%d anni', + }, + dayOfMonthOrdinalParse: /\d{1,2}º/, + ordinal: '%dº', + week: { + dow: 1, // Monday is the first day of the week. + doy: 4, // The week that contains Jan 4th is the first week of the year. + }, + }); + + return it; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/ja.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/ja.js new file mode 100644 index 0000000..88d8454 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/ja.js @@ -0,0 +1,159 @@ +//! moment.js locale configuration +//! locale : Japanese [ja] +//! author : LI Long : https://github.com/baryon + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var ja = moment.defineLocale('ja', { + eras: [ + { + since: '2019-05-01', + offset: 1, + name: '令和', + narrow: '㋿', + abbr: 'R', + }, + { + since: '1989-01-08', + until: '2019-04-30', + offset: 1, + name: '平成', + narrow: '㍻', + abbr: 'H', + }, + { + since: '1926-12-25', + until: '1989-01-07', + offset: 1, + name: '昭和', + narrow: '㍼', + abbr: 'S', + }, + { + since: '1912-07-30', + until: '1926-12-24', + offset: 1, + name: '大正', + narrow: '㍽', + abbr: 'T', + }, + { + since: '1873-01-01', + until: '1912-07-29', + offset: 6, + name: '明治', + narrow: '㍾', + abbr: 'M', + }, + { + since: '0001-01-01', + until: '1873-12-31', + offset: 1, + name: '西暦', + narrow: 'AD', + abbr: 'AD', + }, + { + since: '0000-12-31', + until: -Infinity, + offset: 1, + name: '紀元前', + narrow: 'BC', + abbr: 'BC', + }, + ], + eraYearOrdinalRegex: /(元|\d+)年/, + eraYearOrdinalParse: function (input, match) { + return match[1] === '元' ? 1 : parseInt(match[1] || input, 10); + }, + months: '1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月'.split('_'), + monthsShort: '1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月'.split( + '_' + ), + weekdays: '日曜日_月曜日_火曜日_水曜日_木曜日_金曜日_土曜日'.split('_'), + weekdaysShort: '日_月_火_水_木_金_土'.split('_'), + weekdaysMin: '日_月_火_水_木_金_土'.split('_'), + longDateFormat: { + LT: 'HH:mm', + LTS: 'HH:mm:ss', + L: 'YYYY/MM/DD', + LL: 'YYYY年M月D日', + LLL: 'YYYY年M月D日 HH:mm', + LLLL: 'YYYY年M月D日 dddd HH:mm', + l: 'YYYY/MM/DD', + ll: 'YYYY年M月D日', + lll: 'YYYY年M月D日 HH:mm', + llll: 'YYYY年M月D日(ddd) HH:mm', + }, + meridiemParse: /午前|午後/i, + isPM: function (input) { + return input === '午後'; + }, + meridiem: function (hour, minute, isLower) { + if (hour < 12) { + return '午前'; + } else { + return '午後'; + } + }, + calendar: { + sameDay: '[今日] LT', + nextDay: '[明日] LT', + nextWeek: function (now) { + if (now.week() !== this.week()) { + return '[来週]dddd LT'; + } else { + return 'dddd LT'; + } + }, + lastDay: '[昨日] LT', + lastWeek: function (now) { + if (this.week() !== now.week()) { + return '[先週]dddd LT'; + } else { + return 'dddd LT'; + } + }, + sameElse: 'L', + }, + dayOfMonthOrdinalParse: /\d{1,2}日/, + ordinal: function (number, period) { + switch (period) { + case 'y': + return number === 1 ? '元年' : number + '年'; + case 'd': + case 'D': + case 'DDD': + return number + '日'; + default: + return number; + } + }, + relativeTime: { + future: '%s後', + past: '%s前', + s: '数秒', + ss: '%d秒', + m: '1分', + mm: '%d分', + h: '1時間', + hh: '%d時間', + d: '1日', + dd: '%d日', + M: '1ヶ月', + MM: '%dヶ月', + y: '1年', + yy: '%d年', + }, + }); + + return ja; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/jv.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/jv.js new file mode 100644 index 0000000..ab6655f --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/jv.js @@ -0,0 +1,87 @@ +//! moment.js locale configuration +//! locale : Javanese [jv] +//! author : Rony Lantip : https://github.com/lantip +//! reference: http://jv.wikipedia.org/wiki/Basa_Jawa + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var jv = moment.defineLocale('jv', { + months: 'Januari_Februari_Maret_April_Mei_Juni_Juli_Agustus_September_Oktober_Nopember_Desember'.split( + '_' + ), + monthsShort: 'Jan_Feb_Mar_Apr_Mei_Jun_Jul_Ags_Sep_Okt_Nop_Des'.split('_'), + weekdays: 'Minggu_Senen_Seloso_Rebu_Kemis_Jemuwah_Septu'.split('_'), + weekdaysShort: 'Min_Sen_Sel_Reb_Kem_Jem_Sep'.split('_'), + weekdaysMin: 'Mg_Sn_Sl_Rb_Km_Jm_Sp'.split('_'), + longDateFormat: { + LT: 'HH.mm', + LTS: 'HH.mm.ss', + L: 'DD/MM/YYYY', + LL: 'D MMMM YYYY', + LLL: 'D MMMM YYYY [pukul] HH.mm', + LLLL: 'dddd, D MMMM YYYY [pukul] HH.mm', + }, + meridiemParse: /enjing|siyang|sonten|ndalu/, + meridiemHour: function (hour, meridiem) { + if (hour === 12) { + hour = 0; + } + if (meridiem === 'enjing') { + return hour; + } else if (meridiem === 'siyang') { + return hour >= 11 ? hour : hour + 12; + } else if (meridiem === 'sonten' || meridiem === 'ndalu') { + return hour + 12; + } + }, + meridiem: function (hours, minutes, isLower) { + if (hours < 11) { + return 'enjing'; + } else if (hours < 15) { + return 'siyang'; + } else if (hours < 19) { + return 'sonten'; + } else { + return 'ndalu'; + } + }, + calendar: { + sameDay: '[Dinten puniko pukul] LT', + nextDay: '[Mbenjang pukul] LT', + nextWeek: 'dddd [pukul] LT', + lastDay: '[Kala wingi pukul] LT', + lastWeek: 'dddd [kepengker pukul] LT', + sameElse: 'L', + }, + relativeTime: { + future: 'wonten ing %s', + past: '%s ingkang kepengker', + s: 'sawetawis detik', + ss: '%d detik', + m: 'setunggal menit', + mm: '%d menit', + h: 'setunggal jam', + hh: '%d jam', + d: 'sedinten', + dd: '%d dinten', + M: 'sewulan', + MM: '%d wulan', + y: 'setaun', + yy: '%d taun', + }, + week: { + dow: 1, // Monday is the first day of the week. + doy: 7, // The week that contains Jan 7th is the first week of the year. + }, + }); + + return jv; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/ka.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/ka.js new file mode 100644 index 0000000..6357669 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/ka.js @@ -0,0 +1,103 @@ +//! moment.js locale configuration +//! locale : Georgian [ka] +//! author : Irakli Janiashvili : https://github.com/IrakliJani + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var ka = moment.defineLocale('ka', { + months: 'იანვარი_თებერვალი_მარტი_აპრილი_მაისი_ივნისი_ივლისი_აგვისტო_სექტემბერი_ოქტომბერი_ნოემბერი_დეკემბერი'.split( + '_' + ), + monthsShort: 'იან_თებ_მარ_აპრ_მაი_ივნ_ივლ_აგვ_სექ_ოქტ_ნოე_დეკ'.split('_'), + weekdays: { + standalone: + 'კვირა_ორშაბათი_სამშაბათი_ოთხშაბათი_ხუთშაბათი_პარასკევი_შაბათი'.split( + '_' + ), + format: 'კვირას_ორშაბათს_სამშაბათს_ოთხშაბათს_ხუთშაბათს_პარასკევს_შაბათს'.split( + '_' + ), + isFormat: /(წინა|შემდეგ)/, + }, + weekdaysShort: 'კვი_ორშ_სამ_ოთხ_ხუთ_პარ_შაბ'.split('_'), + weekdaysMin: 'კვ_ორ_სა_ოთ_ხუ_პა_შა'.split('_'), + longDateFormat: { + LT: 'HH:mm', + LTS: 'HH:mm:ss', + L: 'DD/MM/YYYY', + LL: 'D MMMM YYYY', + LLL: 'D MMMM YYYY HH:mm', + LLLL: 'dddd, D MMMM YYYY HH:mm', + }, + calendar: { + sameDay: '[დღეს] LT[-ზე]', + nextDay: '[ხვალ] LT[-ზე]', + lastDay: '[გუშინ] LT[-ზე]', + nextWeek: '[შემდეგ] dddd LT[-ზე]', + lastWeek: '[წინა] dddd LT-ზე', + sameElse: 'L', + }, + relativeTime: { + future: function (s) { + return s.replace( + /(წამ|წუთ|საათ|წელ|დღ|თვ)(ი|ე)/, + function ($0, $1, $2) { + return $2 === 'ი' ? $1 + 'ში' : $1 + $2 + 'ში'; + } + ); + }, + past: function (s) { + if (/(წამი|წუთი|საათი|დღე|თვე)/.test(s)) { + return s.replace(/(ი|ე)$/, 'ის წინ'); + } + if (/წელი/.test(s)) { + return s.replace(/წელი$/, 'წლის წინ'); + } + return s; + }, + s: 'რამდენიმე წამი', + ss: '%d წამი', + m: 'წუთი', + mm: '%d წუთი', + h: 'საათი', + hh: '%d საათი', + d: 'დღე', + dd: '%d დღე', + M: 'თვე', + MM: '%d თვე', + y: 'წელი', + yy: '%d წელი', + }, + dayOfMonthOrdinalParse: /0|1-ლი|მე-\d{1,2}|\d{1,2}-ე/, + ordinal: function (number) { + if (number === 0) { + return number; + } + if (number === 1) { + return number + '-ლი'; + } + if ( + number < 20 || + (number <= 100 && number % 20 === 0) || + number % 100 === 0 + ) { + return 'მე-' + number; + } + return number + '-ე'; + }, + week: { + dow: 1, + doy: 7, + }, + }); + + return ka; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/kk.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/kk.js new file mode 100644 index 0000000..38f2e8c --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/kk.js @@ -0,0 +1,93 @@ +//! moment.js locale configuration +//! locale : Kazakh [kk] +//! authors : Nurlan Rakhimzhanov : https://github.com/nurlan + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var suffixes = { + 0: '-ші', + 1: '-ші', + 2: '-ші', + 3: '-ші', + 4: '-ші', + 5: '-ші', + 6: '-шы', + 7: '-ші', + 8: '-ші', + 9: '-шы', + 10: '-шы', + 20: '-шы', + 30: '-шы', + 40: '-шы', + 50: '-ші', + 60: '-шы', + 70: '-ші', + 80: '-ші', + 90: '-шы', + 100: '-ші', + }; + + var kk = moment.defineLocale('kk', { + months: 'қаңтар_ақпан_наурыз_сәуір_мамыр_маусым_шілде_тамыз_қыркүйек_қазан_қараша_желтоқсан'.split( + '_' + ), + monthsShort: 'қаң_ақп_нау_сәу_мам_мау_шіл_там_қыр_қаз_қар_жел'.split('_'), + weekdays: 'жексенбі_дүйсенбі_сейсенбі_сәрсенбі_бейсенбі_жұма_сенбі'.split( + '_' + ), + weekdaysShort: 'жек_дүй_сей_сәр_бей_жұм_сен'.split('_'), + weekdaysMin: 'жк_дй_сй_ср_бй_жм_сн'.split('_'), + longDateFormat: { + LT: 'HH:mm', + LTS: 'HH:mm:ss', + L: 'DD.MM.YYYY', + LL: 'D MMMM YYYY', + LLL: 'D MMMM YYYY HH:mm', + LLLL: 'dddd, D MMMM YYYY HH:mm', + }, + calendar: { + sameDay: '[Бүгін сағат] LT', + nextDay: '[Ертең сағат] LT', + nextWeek: 'dddd [сағат] LT', + lastDay: '[Кеше сағат] LT', + lastWeek: '[Өткен аптаның] dddd [сағат] LT', + sameElse: 'L', + }, + relativeTime: { + future: '%s ішінде', + past: '%s бұрын', + s: 'бірнеше секунд', + ss: '%d секунд', + m: 'бір минут', + mm: '%d минут', + h: 'бір сағат', + hh: '%d сағат', + d: 'бір күн', + dd: '%d күн', + M: 'бір ай', + MM: '%d ай', + y: 'бір жыл', + yy: '%d жыл', + }, + dayOfMonthOrdinalParse: /\d{1,2}-(ші|шы)/, + ordinal: function (number) { + var a = number % 10, + b = number >= 100 ? 100 : null; + return number + (suffixes[number] || suffixes[a] || suffixes[b]); + }, + week: { + dow: 1, // Monday is the first day of the week. + doy: 7, // The week that contains Jan 7th is the first week of the year. + }, + }); + + return kk; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/km.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/km.js new file mode 100644 index 0000000..5306436 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/km.js @@ -0,0 +1,114 @@ +//! moment.js locale configuration +//! locale : Cambodian [km] +//! author : Kruy Vanna : https://github.com/kruyvanna + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var symbolMap = { + 1: '១', + 2: '២', + 3: '៣', + 4: '៤', + 5: '៥', + 6: '៦', + 7: '៧', + 8: '៨', + 9: '៩', + 0: '០', + }, + numberMap = { + '១': '1', + '២': '2', + '៣': '3', + '៤': '4', + '៥': '5', + '៦': '6', + '៧': '7', + '៨': '8', + '៩': '9', + '០': '0', + }; + + var km = moment.defineLocale('km', { + months: 'មករា_កុម្ភៈ_មីនា_មេសា_ឧសភា_មិថុនា_កក្កដា_សីហា_កញ្ញា_តុលា_វិច្ឆិកា_ធ្នូ'.split( + '_' + ), + monthsShort: + 'មករា_កុម្ភៈ_មីនា_មេសា_ឧសភា_មិថុនា_កក្កដា_សីហា_កញ្ញា_តុលា_វិច្ឆិកា_ធ្នូ'.split( + '_' + ), + weekdays: 'អាទិត្យ_ច័ន្ទ_អង្គារ_ពុធ_ព្រហស្បតិ៍_សុក្រ_សៅរ៍'.split('_'), + weekdaysShort: 'អា_ច_អ_ព_ព្រ_សុ_ស'.split('_'), + weekdaysMin: 'អា_ច_អ_ព_ព្រ_សុ_ស'.split('_'), + weekdaysParseExact: true, + longDateFormat: { + LT: 'HH:mm', + LTS: 'HH:mm:ss', + L: 'DD/MM/YYYY', + LL: 'D MMMM YYYY', + LLL: 'D MMMM YYYY HH:mm', + LLLL: 'dddd, D MMMM YYYY HH:mm', + }, + meridiemParse: /ព្រឹក|ល្ងាច/, + isPM: function (input) { + return input === 'ល្ងាច'; + }, + meridiem: function (hour, minute, isLower) { + if (hour < 12) { + return 'ព្រឹក'; + } else { + return 'ល្ងាច'; + } + }, + calendar: { + sameDay: '[ថ្ងៃនេះ ម៉ោង] LT', + nextDay: '[ស្អែក ម៉ោង] LT', + nextWeek: 'dddd [ម៉ោង] LT', + lastDay: '[ម្សិលមិញ ម៉ោង] LT', + lastWeek: 'dddd [សប្តាហ៍មុន] [ម៉ោង] LT', + sameElse: 'L', + }, + relativeTime: { + future: '%sទៀត', + past: '%sមុន', + s: 'ប៉ុន្មានវិនាទី', + ss: '%d វិនាទី', + m: 'មួយនាទី', + mm: '%d នាទី', + h: 'មួយម៉ោង', + hh: '%d ម៉ោង', + d: 'មួយថ្ងៃ', + dd: '%d ថ្ងៃ', + M: 'មួយខែ', + MM: '%d ខែ', + y: 'មួយឆ្នាំ', + yy: '%d ឆ្នាំ', + }, + dayOfMonthOrdinalParse: /ទី\d{1,2}/, + ordinal: 'ទី%d', + preparse: function (string) { + return string.replace(/[១២៣៤៥៦៧៨៩០]/g, function (match) { + return numberMap[match]; + }); + }, + postformat: function (string) { + return string.replace(/\d/g, function (match) { + return symbolMap[match]; + }); + }, + week: { + dow: 1, // Monday is the first day of the week. + doy: 4, // The week that contains Jan 4th is the first week of the year. + }, + }); + + return km; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/kn.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/kn.js new file mode 100644 index 0000000..5fe70b0 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/kn.js @@ -0,0 +1,135 @@ +//! moment.js locale configuration +//! locale : Kannada [kn] +//! author : Rajeev Naik : https://github.com/rajeevnaikte + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var symbolMap = { + 1: '೧', + 2: '೨', + 3: '೩', + 4: '೪', + 5: '೫', + 6: '೬', + 7: '೭', + 8: '೮', + 9: '೯', + 0: '೦', + }, + numberMap = { + '೧': '1', + '೨': '2', + '೩': '3', + '೪': '4', + '೫': '5', + '೬': '6', + '೭': '7', + '೮': '8', + '೯': '9', + '೦': '0', + }; + + var kn = moment.defineLocale('kn', { + months: 'ಜನವರಿ_ಫೆಬ್ರವರಿ_ಮಾರ್ಚ್_ಏಪ್ರಿಲ್_ಮೇ_ಜೂನ್_ಜುಲೈ_ಆಗಸ್ಟ್_ಸೆಪ್ಟೆಂಬರ್_ಅಕ್ಟೋಬರ್_ನವೆಂಬರ್_ಡಿಸೆಂಬರ್'.split( + '_' + ), + monthsShort: + 'ಜನ_ಫೆಬ್ರ_ಮಾರ್ಚ್_ಏಪ್ರಿಲ್_ಮೇ_ಜೂನ್_ಜುಲೈ_ಆಗಸ್ಟ್_ಸೆಪ್ಟೆಂ_ಅಕ್ಟೋ_ನವೆಂ_ಡಿಸೆಂ'.split( + '_' + ), + monthsParseExact: true, + weekdays: 'ಭಾನುವಾರ_ಸೋಮವಾರ_ಮಂಗಳವಾರ_ಬುಧವಾರ_ಗುರುವಾರ_ಶುಕ್ರವಾರ_ಶನಿವಾರ'.split( + '_' + ), + weekdaysShort: 'ಭಾನು_ಸೋಮ_ಮಂಗಳ_ಬುಧ_ಗುರು_ಶುಕ್ರ_ಶನಿ'.split('_'), + weekdaysMin: 'ಭಾ_ಸೋ_ಮಂ_ಬು_ಗು_ಶು_ಶ'.split('_'), + longDateFormat: { + LT: 'A h:mm', + LTS: 'A h:mm:ss', + L: 'DD/MM/YYYY', + LL: 'D MMMM YYYY', + LLL: 'D MMMM YYYY, A h:mm', + LLLL: 'dddd, D MMMM YYYY, A h:mm', + }, + calendar: { + sameDay: '[ಇಂದು] LT', + nextDay: '[ನಾಳೆ] LT', + nextWeek: 'dddd, LT', + lastDay: '[ನಿನ್ನೆ] LT', + lastWeek: '[ಕೊನೆಯ] dddd, LT', + sameElse: 'L', + }, + relativeTime: { + future: '%s ನಂತರ', + past: '%s ಹಿಂದೆ', + s: 'ಕೆಲವು ಕ್ಷಣಗಳು', + ss: '%d ಸೆಕೆಂಡುಗಳು', + m: 'ಒಂದು ನಿಮಿಷ', + mm: '%d ನಿಮಿಷ', + h: 'ಒಂದು ಗಂಟೆ', + hh: '%d ಗಂಟೆ', + d: 'ಒಂದು ದಿನ', + dd: '%d ದಿನ', + M: 'ಒಂದು ತಿಂಗಳು', + MM: '%d ತಿಂಗಳು', + y: 'ಒಂದು ವರ್ಷ', + yy: '%d ವರ್ಷ', + }, + preparse: function (string) { + return string.replace(/[೧೨೩೪೫೬೭೮೯೦]/g, function (match) { + return numberMap[match]; + }); + }, + postformat: function (string) { + return string.replace(/\d/g, function (match) { + return symbolMap[match]; + }); + }, + meridiemParse: /ರಾತ್ರಿ|ಬೆಳಿಗ್ಗೆ|ಮಧ್ಯಾಹ್ನ|ಸಂಜೆ/, + meridiemHour: function (hour, meridiem) { + if (hour === 12) { + hour = 0; + } + if (meridiem === 'ರಾತ್ರಿ') { + return hour < 4 ? hour : hour + 12; + } else if (meridiem === 'ಬೆಳಿಗ್ಗೆ') { + return hour; + } else if (meridiem === 'ಮಧ್ಯಾಹ್ನ') { + return hour >= 10 ? hour : hour + 12; + } else if (meridiem === 'ಸಂಜೆ') { + return hour + 12; + } + }, + meridiem: function (hour, minute, isLower) { + if (hour < 4) { + return 'ರಾತ್ರಿ'; + } else if (hour < 10) { + return 'ಬೆಳಿಗ್ಗೆ'; + } else if (hour < 17) { + return 'ಮಧ್ಯಾಹ್ನ'; + } else if (hour < 20) { + return 'ಸಂಜೆ'; + } else { + return 'ರಾತ್ರಿ'; + } + }, + dayOfMonthOrdinalParse: /\d{1,2}(ನೇ)/, + ordinal: function (number) { + return number + 'ನೇ'; + }, + week: { + dow: 0, // Sunday is the first day of the week. + doy: 6, // The week that contains Jan 6th is the first week of the year. + }, + }); + + return kn; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/ko.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/ko.js new file mode 100644 index 0000000..c81c13e --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/ko.js @@ -0,0 +1,86 @@ +//! moment.js locale configuration +//! locale : Korean [ko] +//! author : Kyungwook, Park : https://github.com/kyungw00k +//! author : Jeeeyul Lee + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var ko = moment.defineLocale('ko', { + months: '1월_2월_3월_4월_5월_6월_7월_8월_9월_10월_11월_12월'.split('_'), + monthsShort: '1월_2월_3월_4월_5월_6월_7월_8월_9월_10월_11월_12월'.split( + '_' + ), + weekdays: '일요일_월요일_화요일_수요일_목요일_금요일_토요일'.split('_'), + weekdaysShort: '일_월_화_수_목_금_토'.split('_'), + weekdaysMin: '일_월_화_수_목_금_토'.split('_'), + longDateFormat: { + LT: 'A h:mm', + LTS: 'A h:mm:ss', + L: 'YYYY.MM.DD.', + LL: 'YYYY년 MMMM D일', + LLL: 'YYYY년 MMMM D일 A h:mm', + LLLL: 'YYYY년 MMMM D일 dddd A h:mm', + l: 'YYYY.MM.DD.', + ll: 'YYYY년 MMMM D일', + lll: 'YYYY년 MMMM D일 A h:mm', + llll: 'YYYY년 MMMM D일 dddd A h:mm', + }, + calendar: { + sameDay: '오늘 LT', + nextDay: '내일 LT', + nextWeek: 'dddd LT', + lastDay: '어제 LT', + lastWeek: '지난주 dddd LT', + sameElse: 'L', + }, + relativeTime: { + future: '%s 후', + past: '%s 전', + s: '몇 초', + ss: '%d초', + m: '1분', + mm: '%d분', + h: '한 시간', + hh: '%d시간', + d: '하루', + dd: '%d일', + M: '한 달', + MM: '%d달', + y: '일 년', + yy: '%d년', + }, + dayOfMonthOrdinalParse: /\d{1,2}(일|월|주)/, + ordinal: function (number, period) { + switch (period) { + case 'd': + case 'D': + case 'DDD': + return number + '일'; + case 'M': + return number + '월'; + case 'w': + case 'W': + return number + '주'; + default: + return number; + } + }, + meridiemParse: /오전|오후/, + isPM: function (token) { + return token === '오후'; + }, + meridiem: function (hour, minute, isUpper) { + return hour < 12 ? '오전' : '오후'; + }, + }); + + return ko; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/ku.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/ku.js new file mode 100644 index 0000000..71c56a1 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/ku.js @@ -0,0 +1,129 @@ +//! moment.js locale configuration +//! locale : Kurdish [ku] +//! author : Shahram Mebashar : https://github.com/ShahramMebashar + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var symbolMap = { + 1: '١', + 2: '٢', + 3: '٣', + 4: '٤', + 5: '٥', + 6: '٦', + 7: '٧', + 8: '٨', + 9: '٩', + 0: '٠', + }, + numberMap = { + '١': '1', + '٢': '2', + '٣': '3', + '٤': '4', + '٥': '5', + '٦': '6', + '٧': '7', + '٨': '8', + '٩': '9', + '٠': '0', + }, + months = [ + 'کانونی دووەم', + 'شوبات', + 'ئازار', + 'نیسان', + 'ئایار', + 'حوزەیران', + 'تەمموز', + 'ئاب', + 'ئەیلوول', + 'تشرینی یەكەم', + 'تشرینی دووەم', + 'كانونی یەکەم', + ]; + + var ku = moment.defineLocale('ku', { + months: months, + monthsShort: months, + weekdays: + 'یه‌كشه‌ممه‌_دووشه‌ممه‌_سێشه‌ممه‌_چوارشه‌ممه‌_پێنجشه‌ممه‌_هه‌ینی_شه‌ممه‌'.split( + '_' + ), + weekdaysShort: + 'یه‌كشه‌م_دووشه‌م_سێشه‌م_چوارشه‌م_پێنجشه‌م_هه‌ینی_شه‌ممه‌'.split('_'), + weekdaysMin: 'ی_د_س_چ_پ_ه_ش'.split('_'), + weekdaysParseExact: true, + longDateFormat: { + LT: 'HH:mm', + LTS: 'HH:mm:ss', + L: 'DD/MM/YYYY', + LL: 'D MMMM YYYY', + LLL: 'D MMMM YYYY HH:mm', + LLLL: 'dddd, D MMMM YYYY HH:mm', + }, + meridiemParse: /ئێواره‌|به‌یانی/, + isPM: function (input) { + return /ئێواره‌/.test(input); + }, + meridiem: function (hour, minute, isLower) { + if (hour < 12) { + return 'به‌یانی'; + } else { + return 'ئێواره‌'; + } + }, + calendar: { + sameDay: '[ئه‌مرۆ كاتژمێر] LT', + nextDay: '[به‌یانی كاتژمێر] LT', + nextWeek: 'dddd [كاتژمێر] LT', + lastDay: '[دوێنێ كاتژمێر] LT', + lastWeek: 'dddd [كاتژمێر] LT', + sameElse: 'L', + }, + relativeTime: { + future: 'له‌ %s', + past: '%s', + s: 'چه‌ند چركه‌یه‌ك', + ss: 'چركه‌ %d', + m: 'یه‌ك خوله‌ك', + mm: '%d خوله‌ك', + h: 'یه‌ك كاتژمێر', + hh: '%d كاتژمێر', + d: 'یه‌ك ڕۆژ', + dd: '%d ڕۆژ', + M: 'یه‌ك مانگ', + MM: '%d مانگ', + y: 'یه‌ك ساڵ', + yy: '%d ساڵ', + }, + preparse: function (string) { + return string + .replace(/[١٢٣٤٥٦٧٨٩٠]/g, function (match) { + return numberMap[match]; + }) + .replace(/،/g, ','); + }, + postformat: function (string) { + return string + .replace(/\d/g, function (match) { + return symbolMap[match]; + }) + .replace(/,/g, '،'); + }, + week: { + dow: 6, // Saturday is the first day of the week. + doy: 12, // The week that contains Jan 12th is the first week of the year. + }, + }); + + return ku; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/ky.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/ky.js new file mode 100644 index 0000000..6dce606 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/ky.js @@ -0,0 +1,95 @@ +//! moment.js locale configuration +//! locale : Kyrgyz [ky] +//! author : Chyngyz Arystan uulu : https://github.com/chyngyz + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var suffixes = { + 0: '-чү', + 1: '-чи', + 2: '-чи', + 3: '-чү', + 4: '-чү', + 5: '-чи', + 6: '-чы', + 7: '-чи', + 8: '-чи', + 9: '-чу', + 10: '-чу', + 20: '-чы', + 30: '-чу', + 40: '-чы', + 50: '-чү', + 60: '-чы', + 70: '-чи', + 80: '-чи', + 90: '-чу', + 100: '-чү', + }; + + var ky = moment.defineLocale('ky', { + months: 'январь_февраль_март_апрель_май_июнь_июль_август_сентябрь_октябрь_ноябрь_декабрь'.split( + '_' + ), + monthsShort: 'янв_фев_март_апр_май_июнь_июль_авг_сен_окт_ноя_дек'.split( + '_' + ), + weekdays: 'Жекшемби_Дүйшөмбү_Шейшемби_Шаршемби_Бейшемби_Жума_Ишемби'.split( + '_' + ), + weekdaysShort: 'Жек_Дүй_Шей_Шар_Бей_Жум_Ише'.split('_'), + weekdaysMin: 'Жк_Дй_Шй_Шр_Бй_Жм_Иш'.split('_'), + longDateFormat: { + LT: 'HH:mm', + LTS: 'HH:mm:ss', + L: 'DD.MM.YYYY', + LL: 'D MMMM YYYY', + LLL: 'D MMMM YYYY HH:mm', + LLLL: 'dddd, D MMMM YYYY HH:mm', + }, + calendar: { + sameDay: '[Бүгүн саат] LT', + nextDay: '[Эртең саат] LT', + nextWeek: 'dddd [саат] LT', + lastDay: '[Кечээ саат] LT', + lastWeek: '[Өткөн аптанын] dddd [күнү] [саат] LT', + sameElse: 'L', + }, + relativeTime: { + future: '%s ичинде', + past: '%s мурун', + s: 'бирнече секунд', + ss: '%d секунд', + m: 'бир мүнөт', + mm: '%d мүнөт', + h: 'бир саат', + hh: '%d саат', + d: 'бир күн', + dd: '%d күн', + M: 'бир ай', + MM: '%d ай', + y: 'бир жыл', + yy: '%d жыл', + }, + dayOfMonthOrdinalParse: /\d{1,2}-(чи|чы|чү|чу)/, + ordinal: function (number) { + var a = number % 10, + b = number >= 100 ? 100 : null; + return number + (suffixes[number] || suffixes[a] || suffixes[b]); + }, + week: { + dow: 1, // Monday is the first day of the week. + doy: 7, // The week that contains Jan 7th is the first week of the year. + }, + }); + + return ky; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/lb.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/lb.js new file mode 100644 index 0000000..ffcb758 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/lb.js @@ -0,0 +1,148 @@ +//! moment.js locale configuration +//! locale : Luxembourgish [lb] +//! author : mweimerskirch : https://github.com/mweimerskirch +//! author : David Raison : https://github.com/kwisatz + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + function processRelativeTime(number, withoutSuffix, key, isFuture) { + var format = { + m: ['eng Minutt', 'enger Minutt'], + h: ['eng Stonn', 'enger Stonn'], + d: ['een Dag', 'engem Dag'], + M: ['ee Mount', 'engem Mount'], + y: ['ee Joer', 'engem Joer'], + }; + return withoutSuffix ? format[key][0] : format[key][1]; + } + function processFutureTime(string) { + var number = string.substr(0, string.indexOf(' ')); + if (eifelerRegelAppliesToNumber(number)) { + return 'a ' + string; + } + return 'an ' + string; + } + function processPastTime(string) { + var number = string.substr(0, string.indexOf(' ')); + if (eifelerRegelAppliesToNumber(number)) { + return 'viru ' + string; + } + return 'virun ' + string; + } + /** + * Returns true if the word before the given number loses the '-n' ending. + * e.g. 'an 10 Deeg' but 'a 5 Deeg' + * + * @param number {integer} + * @returns {boolean} + */ + function eifelerRegelAppliesToNumber(number) { + number = parseInt(number, 10); + if (isNaN(number)) { + return false; + } + if (number < 0) { + // Negative Number --> always true + return true; + } else if (number < 10) { + // Only 1 digit + if (4 <= number && number <= 7) { + return true; + } + return false; + } else if (number < 100) { + // 2 digits + var lastDigit = number % 10, + firstDigit = number / 10; + if (lastDigit === 0) { + return eifelerRegelAppliesToNumber(firstDigit); + } + return eifelerRegelAppliesToNumber(lastDigit); + } else if (number < 10000) { + // 3 or 4 digits --> recursively check first digit + while (number >= 10) { + number = number / 10; + } + return eifelerRegelAppliesToNumber(number); + } else { + // Anything larger than 4 digits: recursively check first n-3 digits + number = number / 1000; + return eifelerRegelAppliesToNumber(number); + } + } + + var lb = moment.defineLocale('lb', { + months: 'Januar_Februar_Mäerz_Abrëll_Mee_Juni_Juli_August_September_Oktober_November_Dezember'.split( + '_' + ), + monthsShort: + 'Jan._Febr._Mrz._Abr._Mee_Jun._Jul._Aug._Sept._Okt._Nov._Dez.'.split( + '_' + ), + monthsParseExact: true, + weekdays: + 'Sonndeg_Méindeg_Dënschdeg_Mëttwoch_Donneschdeg_Freideg_Samschdeg'.split( + '_' + ), + weekdaysShort: 'So._Mé._Dë._Më._Do._Fr._Sa.'.split('_'), + weekdaysMin: 'So_Mé_Dë_Më_Do_Fr_Sa'.split('_'), + weekdaysParseExact: true, + longDateFormat: { + LT: 'H:mm [Auer]', + LTS: 'H:mm:ss [Auer]', + L: 'DD.MM.YYYY', + LL: 'D. MMMM YYYY', + LLL: 'D. MMMM YYYY H:mm [Auer]', + LLLL: 'dddd, D. MMMM YYYY H:mm [Auer]', + }, + calendar: { + sameDay: '[Haut um] LT', + sameElse: 'L', + nextDay: '[Muer um] LT', + nextWeek: 'dddd [um] LT', + lastDay: '[Gëschter um] LT', + lastWeek: function () { + // Different date string for 'Dënschdeg' (Tuesday) and 'Donneschdeg' (Thursday) due to phonological rule + switch (this.day()) { + case 2: + case 4: + return '[Leschten] dddd [um] LT'; + default: + return '[Leschte] dddd [um] LT'; + } + }, + }, + relativeTime: { + future: processFutureTime, + past: processPastTime, + s: 'e puer Sekonnen', + ss: '%d Sekonnen', + m: processRelativeTime, + mm: '%d Minutten', + h: processRelativeTime, + hh: '%d Stonnen', + d: processRelativeTime, + dd: '%d Deeg', + M: processRelativeTime, + MM: '%d Méint', + y: processRelativeTime, + yy: '%d Joer', + }, + dayOfMonthOrdinalParse: /\d{1,2}\./, + ordinal: '%d.', + week: { + dow: 1, // Monday is the first day of the week. + doy: 4, // The week that contains Jan 4th is the first week of the year. + }, + }); + + return lb; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/lo.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/lo.js new file mode 100644 index 0000000..18fc666 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/lo.js @@ -0,0 +1,77 @@ +//! moment.js locale configuration +//! locale : Lao [lo] +//! author : Ryan Hart : https://github.com/ryanhart2 + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var lo = moment.defineLocale('lo', { + months: 'ມັງກອນ_ກຸມພາ_ມີນາ_ເມສາ_ພຶດສະພາ_ມິຖຸນາ_ກໍລະກົດ_ສິງຫາ_ກັນຍາ_ຕຸລາ_ພະຈິກ_ທັນວາ'.split( + '_' + ), + monthsShort: + 'ມັງກອນ_ກຸມພາ_ມີນາ_ເມສາ_ພຶດສະພາ_ມິຖຸນາ_ກໍລະກົດ_ສິງຫາ_ກັນຍາ_ຕຸລາ_ພະຈິກ_ທັນວາ'.split( + '_' + ), + weekdays: 'ອາທິດ_ຈັນ_ອັງຄານ_ພຸດ_ພະຫັດ_ສຸກ_ເສົາ'.split('_'), + weekdaysShort: 'ທິດ_ຈັນ_ອັງຄານ_ພຸດ_ພະຫັດ_ສຸກ_ເສົາ'.split('_'), + weekdaysMin: 'ທ_ຈ_ອຄ_ພ_ພຫ_ສກ_ສ'.split('_'), + weekdaysParseExact: true, + longDateFormat: { + LT: 'HH:mm', + LTS: 'HH:mm:ss', + L: 'DD/MM/YYYY', + LL: 'D MMMM YYYY', + LLL: 'D MMMM YYYY HH:mm', + LLLL: 'ວັນdddd D MMMM YYYY HH:mm', + }, + meridiemParse: /ຕອນເຊົ້າ|ຕອນແລງ/, + isPM: function (input) { + return input === 'ຕອນແລງ'; + }, + meridiem: function (hour, minute, isLower) { + if (hour < 12) { + return 'ຕອນເຊົ້າ'; + } else { + return 'ຕອນແລງ'; + } + }, + calendar: { + sameDay: '[ມື້ນີ້ເວລາ] LT', + nextDay: '[ມື້ອື່ນເວລາ] LT', + nextWeek: '[ວັນ]dddd[ໜ້າເວລາ] LT', + lastDay: '[ມື້ວານນີ້ເວລາ] LT', + lastWeek: '[ວັນ]dddd[ແລ້ວນີ້ເວລາ] LT', + sameElse: 'L', + }, + relativeTime: { + future: 'ອີກ %s', + past: '%sຜ່ານມາ', + s: 'ບໍ່ເທົ່າໃດວິນາທີ', + ss: '%d ວິນາທີ', + m: '1 ນາທີ', + mm: '%d ນາທີ', + h: '1 ຊົ່ວໂມງ', + hh: '%d ຊົ່ວໂມງ', + d: '1 ມື້', + dd: '%d ມື້', + M: '1 ເດືອນ', + MM: '%d ເດືອນ', + y: '1 ປີ', + yy: '%d ປີ', + }, + dayOfMonthOrdinalParse: /(ທີ່)\d{1,2}/, + ordinal: function (number) { + return 'ທີ່' + number; + }, + }); + + return lo; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/lt.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/lt.js new file mode 100644 index 0000000..e20d208 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/lt.js @@ -0,0 +1,136 @@ +//! moment.js locale configuration +//! locale : Lithuanian [lt] +//! author : Mindaugas Mozūras : https://github.com/mmozuras + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var units = { + ss: 'sekundė_sekundžių_sekundes', + m: 'minutė_minutės_minutę', + mm: 'minutės_minučių_minutes', + h: 'valanda_valandos_valandą', + hh: 'valandos_valandų_valandas', + d: 'diena_dienos_dieną', + dd: 'dienos_dienų_dienas', + M: 'mėnuo_mėnesio_mėnesį', + MM: 'mėnesiai_mėnesių_mėnesius', + y: 'metai_metų_metus', + yy: 'metai_metų_metus', + }; + function translateSeconds(number, withoutSuffix, key, isFuture) { + if (withoutSuffix) { + return 'kelios sekundės'; + } else { + return isFuture ? 'kelių sekundžių' : 'kelias sekundes'; + } + } + function translateSingular(number, withoutSuffix, key, isFuture) { + return withoutSuffix + ? forms(key)[0] + : isFuture + ? forms(key)[1] + : forms(key)[2]; + } + function special(number) { + return number % 10 === 0 || (number > 10 && number < 20); + } + function forms(key) { + return units[key].split('_'); + } + function translate(number, withoutSuffix, key, isFuture) { + var result = number + ' '; + if (number === 1) { + return ( + result + translateSingular(number, withoutSuffix, key[0], isFuture) + ); + } else if (withoutSuffix) { + return result + (special(number) ? forms(key)[1] : forms(key)[0]); + } else { + if (isFuture) { + return result + forms(key)[1]; + } else { + return result + (special(number) ? forms(key)[1] : forms(key)[2]); + } + } + } + var lt = moment.defineLocale('lt', { + months: { + format: 'sausio_vasario_kovo_balandžio_gegužės_birželio_liepos_rugpjūčio_rugsėjo_spalio_lapkričio_gruodžio'.split( + '_' + ), + standalone: + 'sausis_vasaris_kovas_balandis_gegužė_birželis_liepa_rugpjūtis_rugsėjis_spalis_lapkritis_gruodis'.split( + '_' + ), + isFormat: /D[oD]?(\[[^\[\]]*\]|\s)+MMMM?|MMMM?(\[[^\[\]]*\]|\s)+D[oD]?/, + }, + monthsShort: 'sau_vas_kov_bal_geg_bir_lie_rgp_rgs_spa_lap_grd'.split('_'), + weekdays: { + format: 'sekmadienį_pirmadienį_antradienį_trečiadienį_ketvirtadienį_penktadienį_šeštadienį'.split( + '_' + ), + standalone: + 'sekmadienis_pirmadienis_antradienis_trečiadienis_ketvirtadienis_penktadienis_šeštadienis'.split( + '_' + ), + isFormat: /dddd HH:mm/, + }, + weekdaysShort: 'Sek_Pir_Ant_Tre_Ket_Pen_Šeš'.split('_'), + weekdaysMin: 'S_P_A_T_K_Pn_Š'.split('_'), + weekdaysParseExact: true, + longDateFormat: { + LT: 'HH:mm', + LTS: 'HH:mm:ss', + L: 'YYYY-MM-DD', + LL: 'YYYY [m.] MMMM D [d.]', + LLL: 'YYYY [m.] MMMM D [d.], HH:mm [val.]', + LLLL: 'YYYY [m.] MMMM D [d.], dddd, HH:mm [val.]', + l: 'YYYY-MM-DD', + ll: 'YYYY [m.] MMMM D [d.]', + lll: 'YYYY [m.] MMMM D [d.], HH:mm [val.]', + llll: 'YYYY [m.] MMMM D [d.], ddd, HH:mm [val.]', + }, + calendar: { + sameDay: '[Šiandien] LT', + nextDay: '[Rytoj] LT', + nextWeek: 'dddd LT', + lastDay: '[Vakar] LT', + lastWeek: '[Praėjusį] dddd LT', + sameElse: 'L', + }, + relativeTime: { + future: 'po %s', + past: 'prieš %s', + s: translateSeconds, + ss: translate, + m: translateSingular, + mm: translate, + h: translateSingular, + hh: translate, + d: translateSingular, + dd: translate, + M: translateSingular, + MM: translate, + y: translateSingular, + yy: translate, + }, + dayOfMonthOrdinalParse: /\d{1,2}-oji/, + ordinal: function (number) { + return number + '-oji'; + }, + week: { + dow: 1, // Monday is the first day of the week. + doy: 4, // The week that contains Jan 4th is the first week of the year. + }, + }); + + return lt; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/lv.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/lv.js new file mode 100644 index 0000000..109fdfe --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/lv.js @@ -0,0 +1,105 @@ +//! moment.js locale configuration +//! locale : Latvian [lv] +//! author : Kristaps Karlsons : https://github.com/skakri +//! author : Jānis Elmeris : https://github.com/JanisE + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var units = { + ss: 'sekundes_sekundēm_sekunde_sekundes'.split('_'), + m: 'minūtes_minūtēm_minūte_minūtes'.split('_'), + mm: 'minūtes_minūtēm_minūte_minūtes'.split('_'), + h: 'stundas_stundām_stunda_stundas'.split('_'), + hh: 'stundas_stundām_stunda_stundas'.split('_'), + d: 'dienas_dienām_diena_dienas'.split('_'), + dd: 'dienas_dienām_diena_dienas'.split('_'), + M: 'mēneša_mēnešiem_mēnesis_mēneši'.split('_'), + MM: 'mēneša_mēnešiem_mēnesis_mēneši'.split('_'), + y: 'gada_gadiem_gads_gadi'.split('_'), + yy: 'gada_gadiem_gads_gadi'.split('_'), + }; + /** + * @param withoutSuffix boolean true = a length of time; false = before/after a period of time. + */ + function format(forms, number, withoutSuffix) { + if (withoutSuffix) { + // E.g. "21 minūte", "3 minūtes". + return number % 10 === 1 && number % 100 !== 11 ? forms[2] : forms[3]; + } else { + // E.g. "21 minūtes" as in "pēc 21 minūtes". + // E.g. "3 minūtēm" as in "pēc 3 minūtēm". + return number % 10 === 1 && number % 100 !== 11 ? forms[0] : forms[1]; + } + } + function relativeTimeWithPlural(number, withoutSuffix, key) { + return number + ' ' + format(units[key], number, withoutSuffix); + } + function relativeTimeWithSingular(number, withoutSuffix, key) { + return format(units[key], number, withoutSuffix); + } + function relativeSeconds(number, withoutSuffix) { + return withoutSuffix ? 'dažas sekundes' : 'dažām sekundēm'; + } + + var lv = moment.defineLocale('lv', { + months: 'janvāris_februāris_marts_aprīlis_maijs_jūnijs_jūlijs_augusts_septembris_oktobris_novembris_decembris'.split( + '_' + ), + monthsShort: 'jan_feb_mar_apr_mai_jūn_jūl_aug_sep_okt_nov_dec'.split('_'), + weekdays: + 'svētdiena_pirmdiena_otrdiena_trešdiena_ceturtdiena_piektdiena_sestdiena'.split( + '_' + ), + weekdaysShort: 'Sv_P_O_T_C_Pk_S'.split('_'), + weekdaysMin: 'Sv_P_O_T_C_Pk_S'.split('_'), + weekdaysParseExact: true, + longDateFormat: { + LT: 'HH:mm', + LTS: 'HH:mm:ss', + L: 'DD.MM.YYYY.', + LL: 'YYYY. [gada] D. MMMM', + LLL: 'YYYY. [gada] D. MMMM, HH:mm', + LLLL: 'YYYY. [gada] D. MMMM, dddd, HH:mm', + }, + calendar: { + sameDay: '[Šodien pulksten] LT', + nextDay: '[Rīt pulksten] LT', + nextWeek: 'dddd [pulksten] LT', + lastDay: '[Vakar pulksten] LT', + lastWeek: '[Pagājušā] dddd [pulksten] LT', + sameElse: 'L', + }, + relativeTime: { + future: 'pēc %s', + past: 'pirms %s', + s: relativeSeconds, + ss: relativeTimeWithPlural, + m: relativeTimeWithSingular, + mm: relativeTimeWithPlural, + h: relativeTimeWithSingular, + hh: relativeTimeWithPlural, + d: relativeTimeWithSingular, + dd: relativeTimeWithPlural, + M: relativeTimeWithSingular, + MM: relativeTimeWithPlural, + y: relativeTimeWithSingular, + yy: relativeTimeWithPlural, + }, + dayOfMonthOrdinalParse: /\d{1,2}\./, + ordinal: '%d.', + week: { + dow: 1, // Monday is the first day of the week. + doy: 4, // The week that contains Jan 4th is the first week of the year. + }, + }); + + return lv; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/me.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/me.js new file mode 100644 index 0000000..21b6826 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/me.js @@ -0,0 +1,128 @@ +//! moment.js locale configuration +//! locale : Montenegrin [me] +//! author : Miodrag Nikač : https://github.com/miodragnikac + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var translator = { + words: { + //Different grammatical cases + ss: ['sekund', 'sekunda', 'sekundi'], + m: ['jedan minut', 'jednog minuta'], + mm: ['minut', 'minuta', 'minuta'], + h: ['jedan sat', 'jednog sata'], + hh: ['sat', 'sata', 'sati'], + dd: ['dan', 'dana', 'dana'], + MM: ['mjesec', 'mjeseca', 'mjeseci'], + yy: ['godina', 'godine', 'godina'], + }, + correctGrammaticalCase: function (number, wordKey) { + return number === 1 + ? wordKey[0] + : number >= 2 && number <= 4 + ? wordKey[1] + : wordKey[2]; + }, + translate: function (number, withoutSuffix, key) { + var wordKey = translator.words[key]; + if (key.length === 1) { + return withoutSuffix ? wordKey[0] : wordKey[1]; + } else { + return ( + number + + ' ' + + translator.correctGrammaticalCase(number, wordKey) + ); + } + }, + }; + + var me = moment.defineLocale('me', { + months: 'januar_februar_mart_april_maj_jun_jul_avgust_septembar_oktobar_novembar_decembar'.split( + '_' + ), + monthsShort: + 'jan._feb._mar._apr._maj_jun_jul_avg._sep._okt._nov._dec.'.split('_'), + monthsParseExact: true, + weekdays: 'nedjelja_ponedjeljak_utorak_srijeda_četvrtak_petak_subota'.split( + '_' + ), + weekdaysShort: 'ned._pon._uto._sri._čet._pet._sub.'.split('_'), + weekdaysMin: 'ne_po_ut_sr_če_pe_su'.split('_'), + weekdaysParseExact: true, + longDateFormat: { + LT: 'H:mm', + LTS: 'H:mm:ss', + L: 'DD.MM.YYYY', + LL: 'D. MMMM YYYY', + LLL: 'D. MMMM YYYY H:mm', + LLLL: 'dddd, D. MMMM YYYY H:mm', + }, + calendar: { + sameDay: '[danas u] LT', + nextDay: '[sjutra u] LT', + + nextWeek: function () { + switch (this.day()) { + case 0: + return '[u] [nedjelju] [u] LT'; + case 3: + return '[u] [srijedu] [u] LT'; + case 6: + return '[u] [subotu] [u] LT'; + case 1: + case 2: + case 4: + case 5: + return '[u] dddd [u] LT'; + } + }, + lastDay: '[juče u] LT', + lastWeek: function () { + var lastWeekDays = [ + '[prošle] [nedjelje] [u] LT', + '[prošlog] [ponedjeljka] [u] LT', + '[prošlog] [utorka] [u] LT', + '[prošle] [srijede] [u] LT', + '[prošlog] [četvrtka] [u] LT', + '[prošlog] [petka] [u] LT', + '[prošle] [subote] [u] LT', + ]; + return lastWeekDays[this.day()]; + }, + sameElse: 'L', + }, + relativeTime: { + future: 'za %s', + past: 'prije %s', + s: 'nekoliko sekundi', + ss: translator.translate, + m: translator.translate, + mm: translator.translate, + h: translator.translate, + hh: translator.translate, + d: 'dan', + dd: translator.translate, + M: 'mjesec', + MM: translator.translate, + y: 'godinu', + yy: translator.translate, + }, + dayOfMonthOrdinalParse: /\d{1,2}\./, + ordinal: '%d.', + week: { + dow: 1, // Monday is the first day of the week. + doy: 7, // The week that contains Jan 7th is the first week of the year. + }, + }); + + return me; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/mi.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/mi.js new file mode 100644 index 0000000..f95f9cb --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/mi.js @@ -0,0 +1,71 @@ +//! moment.js locale configuration +//! locale : Maori [mi] +//! author : John Corrigan : https://github.com/johnideal + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var mi = moment.defineLocale('mi', { + months: 'Kohi-tāte_Hui-tanguru_Poutū-te-rangi_Paenga-whāwhā_Haratua_Pipiri_Hōngoingoi_Here-turi-kōkā_Mahuru_Whiringa-ā-nuku_Whiringa-ā-rangi_Hakihea'.split( + '_' + ), + monthsShort: + 'Kohi_Hui_Pou_Pae_Hara_Pipi_Hōngoi_Here_Mahu_Whi-nu_Whi-ra_Haki'.split( + '_' + ), + monthsRegex: /(?:['a-z\u0101\u014D\u016B]+\-?){1,3}/i, + monthsStrictRegex: /(?:['a-z\u0101\u014D\u016B]+\-?){1,3}/i, + monthsShortRegex: /(?:['a-z\u0101\u014D\u016B]+\-?){1,3}/i, + monthsShortStrictRegex: /(?:['a-z\u0101\u014D\u016B]+\-?){1,2}/i, + weekdays: 'Rātapu_Mane_Tūrei_Wenerei_Tāite_Paraire_Hātarei'.split('_'), + weekdaysShort: 'Ta_Ma_Tū_We_Tāi_Pa_Hā'.split('_'), + weekdaysMin: 'Ta_Ma_Tū_We_Tāi_Pa_Hā'.split('_'), + longDateFormat: { + LT: 'HH:mm', + LTS: 'HH:mm:ss', + L: 'DD/MM/YYYY', + LL: 'D MMMM YYYY', + LLL: 'D MMMM YYYY [i] HH:mm', + LLLL: 'dddd, D MMMM YYYY [i] HH:mm', + }, + calendar: { + sameDay: '[i teie mahana, i] LT', + nextDay: '[apopo i] LT', + nextWeek: 'dddd [i] LT', + lastDay: '[inanahi i] LT', + lastWeek: 'dddd [whakamutunga i] LT', + sameElse: 'L', + }, + relativeTime: { + future: 'i roto i %s', + past: '%s i mua', + s: 'te hēkona ruarua', + ss: '%d hēkona', + m: 'he meneti', + mm: '%d meneti', + h: 'te haora', + hh: '%d haora', + d: 'he ra', + dd: '%d ra', + M: 'he marama', + MM: '%d marama', + y: 'he tau', + yy: '%d tau', + }, + dayOfMonthOrdinalParse: /\d{1,2}º/, + ordinal: '%dº', + week: { + dow: 1, // Monday is the first day of the week. + doy: 4, // The week that contains Jan 4th is the first week of the year. + }, + }); + + return mi; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/mk.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/mk.js new file mode 100644 index 0000000..c66500d --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/mk.js @@ -0,0 +1,97 @@ +//! moment.js locale configuration +//! locale : Macedonian [mk] +//! author : Borislav Mickov : https://github.com/B0k0 +//! author : Sashko Todorov : https://github.com/bkyceh + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var mk = moment.defineLocale('mk', { + months: 'јануари_февруари_март_април_мај_јуни_јули_август_септември_октомври_ноември_декември'.split( + '_' + ), + monthsShort: 'јан_фев_мар_апр_мај_јун_јул_авг_сеп_окт_ное_дек'.split('_'), + weekdays: 'недела_понеделник_вторник_среда_четврток_петок_сабота'.split( + '_' + ), + weekdaysShort: 'нед_пон_вто_сре_чет_пет_саб'.split('_'), + weekdaysMin: 'нe_пo_вт_ср_че_пе_сa'.split('_'), + longDateFormat: { + LT: 'H:mm', + LTS: 'H:mm:ss', + L: 'D.MM.YYYY', + LL: 'D MMMM YYYY', + LLL: 'D MMMM YYYY H:mm', + LLLL: 'dddd, D MMMM YYYY H:mm', + }, + calendar: { + sameDay: '[Денес во] LT', + nextDay: '[Утре во] LT', + nextWeek: '[Во] dddd [во] LT', + lastDay: '[Вчера во] LT', + lastWeek: function () { + switch (this.day()) { + case 0: + case 3: + case 6: + return '[Изминатата] dddd [во] LT'; + case 1: + case 2: + case 4: + case 5: + return '[Изминатиот] dddd [во] LT'; + } + }, + sameElse: 'L', + }, + relativeTime: { + future: 'за %s', + past: 'пред %s', + s: 'неколку секунди', + ss: '%d секунди', + m: 'една минута', + mm: '%d минути', + h: 'еден час', + hh: '%d часа', + d: 'еден ден', + dd: '%d дена', + M: 'еден месец', + MM: '%d месеци', + y: 'една година', + yy: '%d години', + }, + dayOfMonthOrdinalParse: /\d{1,2}-(ев|ен|ти|ви|ри|ми)/, + ordinal: function (number) { + var lastDigit = number % 10, + last2Digits = number % 100; + if (number === 0) { + return number + '-ев'; + } else if (last2Digits === 0) { + return number + '-ен'; + } else if (last2Digits > 10 && last2Digits < 20) { + return number + '-ти'; + } else if (lastDigit === 1) { + return number + '-ви'; + } else if (lastDigit === 2) { + return number + '-ри'; + } else if (lastDigit === 7 || lastDigit === 8) { + return number + '-ми'; + } else { + return number + '-ти'; + } + }, + week: { + dow: 1, // Monday is the first day of the week. + doy: 7, // The week that contains Jan 7th is the first week of the year. + }, + }); + + return mk; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/ml.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/ml.js new file mode 100644 index 0000000..6a7298c --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/ml.js @@ -0,0 +1,93 @@ +//! moment.js locale configuration +//! locale : Malayalam [ml] +//! author : Floyd Pink : https://github.com/floydpink + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var ml = moment.defineLocale('ml', { + months: 'ജനുവരി_ഫെബ്രുവരി_മാർച്ച്_ഏപ്രിൽ_മേയ്_ജൂൺ_ജൂലൈ_ഓഗസ്റ്റ്_സെപ്റ്റംബർ_ഒക്ടോബർ_നവംബർ_ഡിസംബർ'.split( + '_' + ), + monthsShort: + 'ജനു._ഫെബ്രു._മാർ._ഏപ്രി._മേയ്_ജൂൺ_ജൂലൈ._ഓഗ._സെപ്റ്റ._ഒക്ടോ._നവം._ഡിസം.'.split( + '_' + ), + monthsParseExact: true, + weekdays: + 'ഞായറാഴ്ച_തിങ്കളാഴ്ച_ചൊവ്വാഴ്ച_ബുധനാഴ്ച_വ്യാഴാഴ്ച_വെള്ളിയാഴ്ച_ശനിയാഴ്ച'.split( + '_' + ), + weekdaysShort: 'ഞായർ_തിങ്കൾ_ചൊവ്വ_ബുധൻ_വ്യാഴം_വെള്ളി_ശനി'.split('_'), + weekdaysMin: 'ഞാ_തി_ചൊ_ബു_വ്യാ_വെ_ശ'.split('_'), + longDateFormat: { + LT: 'A h:mm -നു', + LTS: 'A h:mm:ss -നു', + L: 'DD/MM/YYYY', + LL: 'D MMMM YYYY', + LLL: 'D MMMM YYYY, A h:mm -നു', + LLLL: 'dddd, D MMMM YYYY, A h:mm -നു', + }, + calendar: { + sameDay: '[ഇന്ന്] LT', + nextDay: '[നാളെ] LT', + nextWeek: 'dddd, LT', + lastDay: '[ഇന്നലെ] LT', + lastWeek: '[കഴിഞ്ഞ] dddd, LT', + sameElse: 'L', + }, + relativeTime: { + future: '%s കഴിഞ്ഞ്', + past: '%s മുൻപ്', + s: 'അൽപ നിമിഷങ്ങൾ', + ss: '%d സെക്കൻഡ്', + m: 'ഒരു മിനിറ്റ്', + mm: '%d മിനിറ്റ്', + h: 'ഒരു മണിക്കൂർ', + hh: '%d മണിക്കൂർ', + d: 'ഒരു ദിവസം', + dd: '%d ദിവസം', + M: 'ഒരു മാസം', + MM: '%d മാസം', + y: 'ഒരു വർഷം', + yy: '%d വർഷം', + }, + meridiemParse: /രാത്രി|രാവിലെ|ഉച്ച കഴിഞ്ഞ്|വൈകുന്നേരം|രാത്രി/i, + meridiemHour: function (hour, meridiem) { + if (hour === 12) { + hour = 0; + } + if ( + (meridiem === 'രാത്രി' && hour >= 4) || + meridiem === 'ഉച്ച കഴിഞ്ഞ്' || + meridiem === 'വൈകുന്നേരം' + ) { + return hour + 12; + } else { + return hour; + } + }, + meridiem: function (hour, minute, isLower) { + if (hour < 4) { + return 'രാത്രി'; + } else if (hour < 12) { + return 'രാവിലെ'; + } else if (hour < 17) { + return 'ഉച്ച കഴിഞ്ഞ്'; + } else if (hour < 20) { + return 'വൈകുന്നേരം'; + } else { + return 'രാത്രി'; + } + }, + }); + + return ml; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/mn.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/mn.js new file mode 100644 index 0000000..a37b792 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/mn.js @@ -0,0 +1,111 @@ +//! moment.js locale configuration +//! locale : Mongolian [mn] +//! author : Javkhlantugs Nyamdorj : https://github.com/javkhaanj7 + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + function translate(number, withoutSuffix, key, isFuture) { + switch (key) { + case 's': + return withoutSuffix ? 'хэдхэн секунд' : 'хэдхэн секундын'; + case 'ss': + return number + (withoutSuffix ? ' секунд' : ' секундын'); + case 'm': + case 'mm': + return number + (withoutSuffix ? ' минут' : ' минутын'); + case 'h': + case 'hh': + return number + (withoutSuffix ? ' цаг' : ' цагийн'); + case 'd': + case 'dd': + return number + (withoutSuffix ? ' өдөр' : ' өдрийн'); + case 'M': + case 'MM': + return number + (withoutSuffix ? ' сар' : ' сарын'); + case 'y': + case 'yy': + return number + (withoutSuffix ? ' жил' : ' жилийн'); + default: + return number; + } + } + + var mn = moment.defineLocale('mn', { + months: 'Нэгдүгээр сар_Хоёрдугаар сар_Гуравдугаар сар_Дөрөвдүгээр сар_Тавдугаар сар_Зургадугаар сар_Долдугаар сар_Наймдугаар сар_Есдүгээр сар_Аравдугаар сар_Арван нэгдүгээр сар_Арван хоёрдугаар сар'.split( + '_' + ), + monthsShort: + '1 сар_2 сар_3 сар_4 сар_5 сар_6 сар_7 сар_8 сар_9 сар_10 сар_11 сар_12 сар'.split( + '_' + ), + monthsParseExact: true, + weekdays: 'Ням_Даваа_Мягмар_Лхагва_Пүрэв_Баасан_Бямба'.split('_'), + weekdaysShort: 'Ням_Дав_Мяг_Лха_Пүр_Баа_Бям'.split('_'), + weekdaysMin: 'Ня_Да_Мя_Лх_Пү_Ба_Бя'.split('_'), + weekdaysParseExact: true, + longDateFormat: { + LT: 'HH:mm', + LTS: 'HH:mm:ss', + L: 'YYYY-MM-DD', + LL: 'YYYY оны MMMMын D', + LLL: 'YYYY оны MMMMын D HH:mm', + LLLL: 'dddd, YYYY оны MMMMын D HH:mm', + }, + meridiemParse: /ҮӨ|ҮХ/i, + isPM: function (input) { + return input === 'ҮХ'; + }, + meridiem: function (hour, minute, isLower) { + if (hour < 12) { + return 'ҮӨ'; + } else { + return 'ҮХ'; + } + }, + calendar: { + sameDay: '[Өнөөдөр] LT', + nextDay: '[Маргааш] LT', + nextWeek: '[Ирэх] dddd LT', + lastDay: '[Өчигдөр] LT', + lastWeek: '[Өнгөрсөн] dddd LT', + sameElse: 'L', + }, + relativeTime: { + future: '%s дараа', + past: '%s өмнө', + s: translate, + ss: translate, + m: translate, + mm: translate, + h: translate, + hh: translate, + d: translate, + dd: translate, + M: translate, + MM: translate, + y: translate, + yy: translate, + }, + dayOfMonthOrdinalParse: /\d{1,2} өдөр/, + ordinal: function (number, period) { + switch (period) { + case 'd': + case 'D': + case 'DDD': + return number + ' өдөр'; + default: + return number; + } + }, + }); + + return mn; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/mr.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/mr.js new file mode 100644 index 0000000..73d5762 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/mr.js @@ -0,0 +1,214 @@ +//! moment.js locale configuration +//! locale : Marathi [mr] +//! author : Harshad Kale : https://github.com/kalehv +//! author : Vivek Athalye : https://github.com/vnathalye + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var symbolMap = { + 1: '१', + 2: '२', + 3: '३', + 4: '४', + 5: '५', + 6: '६', + 7: '७', + 8: '८', + 9: '९', + 0: '०', + }, + numberMap = { + '१': '1', + '२': '2', + '३': '3', + '४': '4', + '५': '5', + '६': '6', + '७': '7', + '८': '8', + '९': '9', + '०': '0', + }; + + function relativeTimeMr(number, withoutSuffix, string, isFuture) { + var output = ''; + if (withoutSuffix) { + switch (string) { + case 's': + output = 'काही सेकंद'; + break; + case 'ss': + output = '%d सेकंद'; + break; + case 'm': + output = 'एक मिनिट'; + break; + case 'mm': + output = '%d मिनिटे'; + break; + case 'h': + output = 'एक तास'; + break; + case 'hh': + output = '%d तास'; + break; + case 'd': + output = 'एक दिवस'; + break; + case 'dd': + output = '%d दिवस'; + break; + case 'M': + output = 'एक महिना'; + break; + case 'MM': + output = '%d महिने'; + break; + case 'y': + output = 'एक वर्ष'; + break; + case 'yy': + output = '%d वर्षे'; + break; + } + } else { + switch (string) { + case 's': + output = 'काही सेकंदां'; + break; + case 'ss': + output = '%d सेकंदां'; + break; + case 'm': + output = 'एका मिनिटा'; + break; + case 'mm': + output = '%d मिनिटां'; + break; + case 'h': + output = 'एका तासा'; + break; + case 'hh': + output = '%d तासां'; + break; + case 'd': + output = 'एका दिवसा'; + break; + case 'dd': + output = '%d दिवसां'; + break; + case 'M': + output = 'एका महिन्या'; + break; + case 'MM': + output = '%d महिन्यां'; + break; + case 'y': + output = 'एका वर्षा'; + break; + case 'yy': + output = '%d वर्षां'; + break; + } + } + return output.replace(/%d/i, number); + } + + var mr = moment.defineLocale('mr', { + months: 'जानेवारी_फेब्रुवारी_मार्च_एप्रिल_मे_जून_जुलै_ऑगस्ट_सप्टेंबर_ऑक्टोबर_नोव्हेंबर_डिसेंबर'.split( + '_' + ), + monthsShort: + 'जाने._फेब्रु._मार्च._एप्रि._मे._जून._जुलै._ऑग._सप्टें._ऑक्टो._नोव्हें._डिसें.'.split( + '_' + ), + monthsParseExact: true, + weekdays: 'रविवार_सोमवार_मंगळवार_बुधवार_गुरूवार_शुक्रवार_शनिवार'.split('_'), + weekdaysShort: 'रवि_सोम_मंगळ_बुध_गुरू_शुक्र_शनि'.split('_'), + weekdaysMin: 'र_सो_मं_बु_गु_शु_श'.split('_'), + longDateFormat: { + LT: 'A h:mm वाजता', + LTS: 'A h:mm:ss वाजता', + L: 'DD/MM/YYYY', + LL: 'D MMMM YYYY', + LLL: 'D MMMM YYYY, A h:mm वाजता', + LLLL: 'dddd, D MMMM YYYY, A h:mm वाजता', + }, + calendar: { + sameDay: '[आज] LT', + nextDay: '[उद्या] LT', + nextWeek: 'dddd, LT', + lastDay: '[काल] LT', + lastWeek: '[मागील] dddd, LT', + sameElse: 'L', + }, + relativeTime: { + future: '%sमध्ये', + past: '%sपूर्वी', + s: relativeTimeMr, + ss: relativeTimeMr, + m: relativeTimeMr, + mm: relativeTimeMr, + h: relativeTimeMr, + hh: relativeTimeMr, + d: relativeTimeMr, + dd: relativeTimeMr, + M: relativeTimeMr, + MM: relativeTimeMr, + y: relativeTimeMr, + yy: relativeTimeMr, + }, + preparse: function (string) { + return string.replace(/[१२३४५६७८९०]/g, function (match) { + return numberMap[match]; + }); + }, + postformat: function (string) { + return string.replace(/\d/g, function (match) { + return symbolMap[match]; + }); + }, + meridiemParse: /पहाटे|सकाळी|दुपारी|सायंकाळी|रात्री/, + meridiemHour: function (hour, meridiem) { + if (hour === 12) { + hour = 0; + } + if (meridiem === 'पहाटे' || meridiem === 'सकाळी') { + return hour; + } else if ( + meridiem === 'दुपारी' || + meridiem === 'सायंकाळी' || + meridiem === 'रात्री' + ) { + return hour >= 12 ? hour : hour + 12; + } + }, + meridiem: function (hour, minute, isLower) { + if (hour >= 0 && hour < 6) { + return 'पहाटे'; + } else if (hour < 12) { + return 'सकाळी'; + } else if (hour < 17) { + return 'दुपारी'; + } else if (hour < 20) { + return 'सायंकाळी'; + } else { + return 'रात्री'; + } + }, + week: { + dow: 0, // Sunday is the first day of the week. + doy: 6, // The week that contains Jan 6th is the first week of the year. + }, + }); + + return mr; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/ms-my.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/ms-my.js new file mode 100644 index 0000000..8d66c2b --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/ms-my.js @@ -0,0 +1,87 @@ +//! moment.js locale configuration +//! locale : Malay [ms-my] +//! note : DEPRECATED, the correct one is [ms] +//! author : Weldan Jamili : https://github.com/weldan + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var msMy = moment.defineLocale('ms-my', { + months: 'Januari_Februari_Mac_April_Mei_Jun_Julai_Ogos_September_Oktober_November_Disember'.split( + '_' + ), + monthsShort: 'Jan_Feb_Mac_Apr_Mei_Jun_Jul_Ogs_Sep_Okt_Nov_Dis'.split('_'), + weekdays: 'Ahad_Isnin_Selasa_Rabu_Khamis_Jumaat_Sabtu'.split('_'), + weekdaysShort: 'Ahd_Isn_Sel_Rab_Kha_Jum_Sab'.split('_'), + weekdaysMin: 'Ah_Is_Sl_Rb_Km_Jm_Sb'.split('_'), + longDateFormat: { + LT: 'HH.mm', + LTS: 'HH.mm.ss', + L: 'DD/MM/YYYY', + LL: 'D MMMM YYYY', + LLL: 'D MMMM YYYY [pukul] HH.mm', + LLLL: 'dddd, D MMMM YYYY [pukul] HH.mm', + }, + meridiemParse: /pagi|tengahari|petang|malam/, + meridiemHour: function (hour, meridiem) { + if (hour === 12) { + hour = 0; + } + if (meridiem === 'pagi') { + return hour; + } else if (meridiem === 'tengahari') { + return hour >= 11 ? hour : hour + 12; + } else if (meridiem === 'petang' || meridiem === 'malam') { + return hour + 12; + } + }, + meridiem: function (hours, minutes, isLower) { + if (hours < 11) { + return 'pagi'; + } else if (hours < 15) { + return 'tengahari'; + } else if (hours < 19) { + return 'petang'; + } else { + return 'malam'; + } + }, + calendar: { + sameDay: '[Hari ini pukul] LT', + nextDay: '[Esok pukul] LT', + nextWeek: 'dddd [pukul] LT', + lastDay: '[Kelmarin pukul] LT', + lastWeek: 'dddd [lepas pukul] LT', + sameElse: 'L', + }, + relativeTime: { + future: 'dalam %s', + past: '%s yang lepas', + s: 'beberapa saat', + ss: '%d saat', + m: 'seminit', + mm: '%d minit', + h: 'sejam', + hh: '%d jam', + d: 'sehari', + dd: '%d hari', + M: 'sebulan', + MM: '%d bulan', + y: 'setahun', + yy: '%d tahun', + }, + week: { + dow: 1, // Monday is the first day of the week. + doy: 7, // The week that contains Jan 7th is the first week of the year. + }, + }); + + return msMy; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/ms.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/ms.js new file mode 100644 index 0000000..37782fb --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/ms.js @@ -0,0 +1,86 @@ +//! moment.js locale configuration +//! locale : Malay [ms] +//! author : Weldan Jamili : https://github.com/weldan + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var ms = moment.defineLocale('ms', { + months: 'Januari_Februari_Mac_April_Mei_Jun_Julai_Ogos_September_Oktober_November_Disember'.split( + '_' + ), + monthsShort: 'Jan_Feb_Mac_Apr_Mei_Jun_Jul_Ogs_Sep_Okt_Nov_Dis'.split('_'), + weekdays: 'Ahad_Isnin_Selasa_Rabu_Khamis_Jumaat_Sabtu'.split('_'), + weekdaysShort: 'Ahd_Isn_Sel_Rab_Kha_Jum_Sab'.split('_'), + weekdaysMin: 'Ah_Is_Sl_Rb_Km_Jm_Sb'.split('_'), + longDateFormat: { + LT: 'HH.mm', + LTS: 'HH.mm.ss', + L: 'DD/MM/YYYY', + LL: 'D MMMM YYYY', + LLL: 'D MMMM YYYY [pukul] HH.mm', + LLLL: 'dddd, D MMMM YYYY [pukul] HH.mm', + }, + meridiemParse: /pagi|tengahari|petang|malam/, + meridiemHour: function (hour, meridiem) { + if (hour === 12) { + hour = 0; + } + if (meridiem === 'pagi') { + return hour; + } else if (meridiem === 'tengahari') { + return hour >= 11 ? hour : hour + 12; + } else if (meridiem === 'petang' || meridiem === 'malam') { + return hour + 12; + } + }, + meridiem: function (hours, minutes, isLower) { + if (hours < 11) { + return 'pagi'; + } else if (hours < 15) { + return 'tengahari'; + } else if (hours < 19) { + return 'petang'; + } else { + return 'malam'; + } + }, + calendar: { + sameDay: '[Hari ini pukul] LT', + nextDay: '[Esok pukul] LT', + nextWeek: 'dddd [pukul] LT', + lastDay: '[Kelmarin pukul] LT', + lastWeek: 'dddd [lepas pukul] LT', + sameElse: 'L', + }, + relativeTime: { + future: 'dalam %s', + past: '%s yang lepas', + s: 'beberapa saat', + ss: '%d saat', + m: 'seminit', + mm: '%d minit', + h: 'sejam', + hh: '%d jam', + d: 'sehari', + dd: '%d hari', + M: 'sebulan', + MM: '%d bulan', + y: 'setahun', + yy: '%d tahun', + }, + week: { + dow: 1, // Monday is the first day of the week. + doy: 7, // The week that contains Jan 7th is the first week of the year. + }, + }); + + return ms; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/mt.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/mt.js new file mode 100644 index 0000000..94b2559 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/mt.js @@ -0,0 +1,67 @@ +//! moment.js locale configuration +//! locale : Maltese (Malta) [mt] +//! author : Alessandro Maruccia : https://github.com/alesma + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var mt = moment.defineLocale('mt', { + months: 'Jannar_Frar_Marzu_April_Mejju_Ġunju_Lulju_Awwissu_Settembru_Ottubru_Novembru_Diċembru'.split( + '_' + ), + monthsShort: 'Jan_Fra_Mar_Apr_Mej_Ġun_Lul_Aww_Set_Ott_Nov_Diċ'.split('_'), + weekdays: + 'Il-Ħadd_It-Tnejn_It-Tlieta_L-Erbgħa_Il-Ħamis_Il-Ġimgħa_Is-Sibt'.split( + '_' + ), + weekdaysShort: 'Ħad_Tne_Tli_Erb_Ħam_Ġim_Sib'.split('_'), + weekdaysMin: 'Ħa_Tn_Tl_Er_Ħa_Ġi_Si'.split('_'), + longDateFormat: { + LT: 'HH:mm', + LTS: 'HH:mm:ss', + L: 'DD/MM/YYYY', + LL: 'D MMMM YYYY', + LLL: 'D MMMM YYYY HH:mm', + LLLL: 'dddd, D MMMM YYYY HH:mm', + }, + calendar: { + sameDay: '[Illum fil-]LT', + nextDay: '[Għada fil-]LT', + nextWeek: 'dddd [fil-]LT', + lastDay: '[Il-bieraħ fil-]LT', + lastWeek: 'dddd [li għadda] [fil-]LT', + sameElse: 'L', + }, + relativeTime: { + future: 'f’ %s', + past: '%s ilu', + s: 'ftit sekondi', + ss: '%d sekondi', + m: 'minuta', + mm: '%d minuti', + h: 'siegħa', + hh: '%d siegħat', + d: 'ġurnata', + dd: '%d ġranet', + M: 'xahar', + MM: '%d xhur', + y: 'sena', + yy: '%d sni', + }, + dayOfMonthOrdinalParse: /\d{1,2}º/, + ordinal: '%dº', + week: { + dow: 1, // Monday is the first day of the week. + doy: 4, // The week that contains Jan 4th is the first week of the year. + }, + }); + + return mt; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/my.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/my.js new file mode 100644 index 0000000..c1ef2df --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/my.js @@ -0,0 +1,102 @@ +//! moment.js locale configuration +//! locale : Burmese [my] +//! author : Squar team, mysquar.com +//! author : David Rossellat : https://github.com/gholadr +//! author : Tin Aung Lin : https://github.com/thanyawzinmin + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var symbolMap = { + 1: '၁', + 2: '၂', + 3: '၃', + 4: '၄', + 5: '၅', + 6: '၆', + 7: '၇', + 8: '၈', + 9: '၉', + 0: '၀', + }, + numberMap = { + '၁': '1', + '၂': '2', + '၃': '3', + '၄': '4', + '၅': '5', + '၆': '6', + '၇': '7', + '၈': '8', + '၉': '9', + '၀': '0', + }; + + var my = moment.defineLocale('my', { + months: 'ဇန်နဝါရီ_ဖေဖော်ဝါရီ_မတ်_ဧပြီ_မေ_ဇွန်_ဇူလိုင်_သြဂုတ်_စက်တင်ဘာ_အောက်တိုဘာ_နိုဝင်ဘာ_ဒီဇင်ဘာ'.split( + '_' + ), + monthsShort: 'ဇန်_ဖေ_မတ်_ပြီ_မေ_ဇွန်_လိုင်_သြ_စက်_အောက်_နို_ဒီ'.split('_'), + weekdays: 'တနင်္ဂနွေ_တနင်္လာ_အင်္ဂါ_ဗုဒ္ဓဟူး_ကြာသပတေး_သောကြာ_စနေ'.split( + '_' + ), + weekdaysShort: 'နွေ_လာ_ဂါ_ဟူး_ကြာ_သော_နေ'.split('_'), + weekdaysMin: 'နွေ_လာ_ဂါ_ဟူး_ကြာ_သော_နေ'.split('_'), + + longDateFormat: { + LT: 'HH:mm', + LTS: 'HH:mm:ss', + L: 'DD/MM/YYYY', + LL: 'D MMMM YYYY', + LLL: 'D MMMM YYYY HH:mm', + LLLL: 'dddd D MMMM YYYY HH:mm', + }, + calendar: { + sameDay: '[ယနေ.] LT [မှာ]', + nextDay: '[မနက်ဖြန်] LT [မှာ]', + nextWeek: 'dddd LT [မှာ]', + lastDay: '[မနေ.က] LT [မှာ]', + lastWeek: '[ပြီးခဲ့သော] dddd LT [မှာ]', + sameElse: 'L', + }, + relativeTime: { + future: 'လာမည့် %s မှာ', + past: 'လွန်ခဲ့သော %s က', + s: 'စက္ကန်.အနည်းငယ်', + ss: '%d စက္ကန့်', + m: 'တစ်မိနစ်', + mm: '%d မိနစ်', + h: 'တစ်နာရီ', + hh: '%d နာရီ', + d: 'တစ်ရက်', + dd: '%d ရက်', + M: 'တစ်လ', + MM: '%d လ', + y: 'တစ်နှစ်', + yy: '%d နှစ်', + }, + preparse: function (string) { + return string.replace(/[၁၂၃၄၅၆၇၈၉၀]/g, function (match) { + return numberMap[match]; + }); + }, + postformat: function (string) { + return string.replace(/\d/g, function (match) { + return symbolMap[match]; + }); + }, + week: { + dow: 1, // Monday is the first day of the week. + doy: 4, // The week that contains Jan 4th is the first week of the year. + }, + }); + + return my; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/nb.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/nb.js new file mode 100644 index 0000000..74da7af --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/nb.js @@ -0,0 +1,71 @@ +//! moment.js locale configuration +//! locale : Norwegian Bokmål [nb] +//! authors : Espen Hovlandsdal : https://github.com/rexxars +//! Sigurd Gartmann : https://github.com/sigurdga +//! Stephen Ramthun : https://github.com/stephenramthun + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var nb = moment.defineLocale('nb', { + months: 'januar_februar_mars_april_mai_juni_juli_august_september_oktober_november_desember'.split( + '_' + ), + monthsShort: + 'jan._feb._mars_apr._mai_juni_juli_aug._sep._okt._nov._des.'.split('_'), + monthsParseExact: true, + weekdays: 'søndag_mandag_tirsdag_onsdag_torsdag_fredag_lørdag'.split('_'), + weekdaysShort: 'sø._ma._ti._on._to._fr._lø.'.split('_'), + weekdaysMin: 'sø_ma_ti_on_to_fr_lø'.split('_'), + weekdaysParseExact: true, + longDateFormat: { + LT: 'HH:mm', + LTS: 'HH:mm:ss', + L: 'DD.MM.YYYY', + LL: 'D. MMMM YYYY', + LLL: 'D. MMMM YYYY [kl.] HH:mm', + LLLL: 'dddd D. MMMM YYYY [kl.] HH:mm', + }, + calendar: { + sameDay: '[i dag kl.] LT', + nextDay: '[i morgen kl.] LT', + nextWeek: 'dddd [kl.] LT', + lastDay: '[i går kl.] LT', + lastWeek: '[forrige] dddd [kl.] LT', + sameElse: 'L', + }, + relativeTime: { + future: 'om %s', + past: '%s siden', + s: 'noen sekunder', + ss: '%d sekunder', + m: 'ett minutt', + mm: '%d minutter', + h: 'en time', + hh: '%d timer', + d: 'en dag', + dd: '%d dager', + w: 'en uke', + ww: '%d uker', + M: 'en måned', + MM: '%d måneder', + y: 'ett år', + yy: '%d år', + }, + dayOfMonthOrdinalParse: /\d{1,2}\./, + ordinal: '%d.', + week: { + dow: 1, // Monday is the first day of the week. + doy: 4, // The week that contains Jan 4th is the first week of the year. + }, + }); + + return nb; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/ne.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/ne.js new file mode 100644 index 0000000..d455e00 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/ne.js @@ -0,0 +1,132 @@ +//! moment.js locale configuration +//! locale : Nepalese [ne] +//! author : suvash : https://github.com/suvash + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var symbolMap = { + 1: '१', + 2: '२', + 3: '३', + 4: '४', + 5: '५', + 6: '६', + 7: '७', + 8: '८', + 9: '९', + 0: '०', + }, + numberMap = { + '१': '1', + '२': '2', + '३': '3', + '४': '4', + '५': '5', + '६': '6', + '७': '7', + '८': '8', + '९': '9', + '०': '0', + }; + + var ne = moment.defineLocale('ne', { + months: 'जनवरी_फेब्रुवरी_मार्च_अप्रिल_मई_जुन_जुलाई_अगष्ट_सेप्टेम्बर_अक्टोबर_नोभेम्बर_डिसेम्बर'.split( + '_' + ), + monthsShort: + 'जन._फेब्रु._मार्च_अप्रि._मई_जुन_जुलाई._अग._सेप्ट._अक्टो._नोभे._डिसे.'.split( + '_' + ), + monthsParseExact: true, + weekdays: 'आइतबार_सोमबार_मङ्गलबार_बुधबार_बिहिबार_शुक्रबार_शनिबार'.split( + '_' + ), + weekdaysShort: 'आइत._सोम._मङ्गल._बुध._बिहि._शुक्र._शनि.'.split('_'), + weekdaysMin: 'आ._सो._मं._बु._बि._शु._श.'.split('_'), + weekdaysParseExact: true, + longDateFormat: { + LT: 'Aको h:mm बजे', + LTS: 'Aको h:mm:ss बजे', + L: 'DD/MM/YYYY', + LL: 'D MMMM YYYY', + LLL: 'D MMMM YYYY, Aको h:mm बजे', + LLLL: 'dddd, D MMMM YYYY, Aको h:mm बजे', + }, + preparse: function (string) { + return string.replace(/[१२३४५६७८९०]/g, function (match) { + return numberMap[match]; + }); + }, + postformat: function (string) { + return string.replace(/\d/g, function (match) { + return symbolMap[match]; + }); + }, + meridiemParse: /राति|बिहान|दिउँसो|साँझ/, + meridiemHour: function (hour, meridiem) { + if (hour === 12) { + hour = 0; + } + if (meridiem === 'राति') { + return hour < 4 ? hour : hour + 12; + } else if (meridiem === 'बिहान') { + return hour; + } else if (meridiem === 'दिउँसो') { + return hour >= 10 ? hour : hour + 12; + } else if (meridiem === 'साँझ') { + return hour + 12; + } + }, + meridiem: function (hour, minute, isLower) { + if (hour < 3) { + return 'राति'; + } else if (hour < 12) { + return 'बिहान'; + } else if (hour < 16) { + return 'दिउँसो'; + } else if (hour < 20) { + return 'साँझ'; + } else { + return 'राति'; + } + }, + calendar: { + sameDay: '[आज] LT', + nextDay: '[भोलि] LT', + nextWeek: '[आउँदो] dddd[,] LT', + lastDay: '[हिजो] LT', + lastWeek: '[गएको] dddd[,] LT', + sameElse: 'L', + }, + relativeTime: { + future: '%sमा', + past: '%s अगाडि', + s: 'केही क्षण', + ss: '%d सेकेण्ड', + m: 'एक मिनेट', + mm: '%d मिनेट', + h: 'एक घण्टा', + hh: '%d घण्टा', + d: 'एक दिन', + dd: '%d दिन', + M: 'एक महिना', + MM: '%d महिना', + y: 'एक बर्ष', + yy: '%d बर्ष', + }, + week: { + dow: 0, // Sunday is the first day of the week. + doy: 6, // The week that contains Jan 6th is the first week of the year. + }, + }); + + return ne; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/nl-be.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/nl-be.js new file mode 100644 index 0000000..2079383 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/nl-be.js @@ -0,0 +1,113 @@ +//! moment.js locale configuration +//! locale : Dutch (Belgium) [nl-be] +//! author : Joris Röling : https://github.com/jorisroling +//! author : Jacob Middag : https://github.com/middagj + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var monthsShortWithDots = + 'jan._feb._mrt._apr._mei_jun._jul._aug._sep._okt._nov._dec.'.split('_'), + monthsShortWithoutDots = + 'jan_feb_mrt_apr_mei_jun_jul_aug_sep_okt_nov_dec'.split('_'), + monthsParse = [ + /^jan/i, + /^feb/i, + /^maart|mrt.?$/i, + /^apr/i, + /^mei$/i, + /^jun[i.]?$/i, + /^jul[i.]?$/i, + /^aug/i, + /^sep/i, + /^okt/i, + /^nov/i, + /^dec/i, + ], + monthsRegex = + /^(januari|februari|maart|april|mei|ju[nl]i|augustus|september|oktober|november|december|jan\.?|feb\.?|mrt\.?|apr\.?|ju[nl]\.?|aug\.?|sep\.?|okt\.?|nov\.?|dec\.?)/i; + + var nlBe = moment.defineLocale('nl-be', { + months: 'januari_februari_maart_april_mei_juni_juli_augustus_september_oktober_november_december'.split( + '_' + ), + monthsShort: function (m, format) { + if (!m) { + return monthsShortWithDots; + } else if (/-MMM-/.test(format)) { + return monthsShortWithoutDots[m.month()]; + } else { + return monthsShortWithDots[m.month()]; + } + }, + + monthsRegex: monthsRegex, + monthsShortRegex: monthsRegex, + monthsStrictRegex: + /^(januari|februari|maart|april|mei|ju[nl]i|augustus|september|oktober|november|december)/i, + monthsShortStrictRegex: + /^(jan\.?|feb\.?|mrt\.?|apr\.?|mei|ju[nl]\.?|aug\.?|sep\.?|okt\.?|nov\.?|dec\.?)/i, + + monthsParse: monthsParse, + longMonthsParse: monthsParse, + shortMonthsParse: monthsParse, + + weekdays: + 'zondag_maandag_dinsdag_woensdag_donderdag_vrijdag_zaterdag'.split('_'), + weekdaysShort: 'zo._ma._di._wo._do._vr._za.'.split('_'), + weekdaysMin: 'zo_ma_di_wo_do_vr_za'.split('_'), + weekdaysParseExact: true, + longDateFormat: { + LT: 'HH:mm', + LTS: 'HH:mm:ss', + L: 'DD/MM/YYYY', + LL: 'D MMMM YYYY', + LLL: 'D MMMM YYYY HH:mm', + LLLL: 'dddd D MMMM YYYY HH:mm', + }, + calendar: { + sameDay: '[vandaag om] LT', + nextDay: '[morgen om] LT', + nextWeek: 'dddd [om] LT', + lastDay: '[gisteren om] LT', + lastWeek: '[afgelopen] dddd [om] LT', + sameElse: 'L', + }, + relativeTime: { + future: 'over %s', + past: '%s geleden', + s: 'een paar seconden', + ss: '%d seconden', + m: 'één minuut', + mm: '%d minuten', + h: 'één uur', + hh: '%d uur', + d: 'één dag', + dd: '%d dagen', + M: 'één maand', + MM: '%d maanden', + y: 'één jaar', + yy: '%d jaar', + }, + dayOfMonthOrdinalParse: /\d{1,2}(ste|de)/, + ordinal: function (number) { + return ( + number + + (number === 1 || number === 8 || number >= 20 ? 'ste' : 'de') + ); + }, + week: { + dow: 1, // Monday is the first day of the week. + doy: 4, // The week that contains Jan 4th is the first week of the year. + }, + }); + + return nlBe; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/nl.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/nl.js new file mode 100644 index 0000000..770e90f --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/nl.js @@ -0,0 +1,115 @@ +//! moment.js locale configuration +//! locale : Dutch [nl] +//! author : Joris Röling : https://github.com/jorisroling +//! author : Jacob Middag : https://github.com/middagj + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var monthsShortWithDots = + 'jan._feb._mrt._apr._mei_jun._jul._aug._sep._okt._nov._dec.'.split('_'), + monthsShortWithoutDots = + 'jan_feb_mrt_apr_mei_jun_jul_aug_sep_okt_nov_dec'.split('_'), + monthsParse = [ + /^jan/i, + /^feb/i, + /^maart|mrt.?$/i, + /^apr/i, + /^mei$/i, + /^jun[i.]?$/i, + /^jul[i.]?$/i, + /^aug/i, + /^sep/i, + /^okt/i, + /^nov/i, + /^dec/i, + ], + monthsRegex = + /^(januari|februari|maart|april|mei|ju[nl]i|augustus|september|oktober|november|december|jan\.?|feb\.?|mrt\.?|apr\.?|ju[nl]\.?|aug\.?|sep\.?|okt\.?|nov\.?|dec\.?)/i; + + var nl = moment.defineLocale('nl', { + months: 'januari_februari_maart_april_mei_juni_juli_augustus_september_oktober_november_december'.split( + '_' + ), + monthsShort: function (m, format) { + if (!m) { + return monthsShortWithDots; + } else if (/-MMM-/.test(format)) { + return monthsShortWithoutDots[m.month()]; + } else { + return monthsShortWithDots[m.month()]; + } + }, + + monthsRegex: monthsRegex, + monthsShortRegex: monthsRegex, + monthsStrictRegex: + /^(januari|februari|maart|april|mei|ju[nl]i|augustus|september|oktober|november|december)/i, + monthsShortStrictRegex: + /^(jan\.?|feb\.?|mrt\.?|apr\.?|mei|ju[nl]\.?|aug\.?|sep\.?|okt\.?|nov\.?|dec\.?)/i, + + monthsParse: monthsParse, + longMonthsParse: monthsParse, + shortMonthsParse: monthsParse, + + weekdays: + 'zondag_maandag_dinsdag_woensdag_donderdag_vrijdag_zaterdag'.split('_'), + weekdaysShort: 'zo._ma._di._wo._do._vr._za.'.split('_'), + weekdaysMin: 'zo_ma_di_wo_do_vr_za'.split('_'), + weekdaysParseExact: true, + longDateFormat: { + LT: 'HH:mm', + LTS: 'HH:mm:ss', + L: 'DD-MM-YYYY', + LL: 'D MMMM YYYY', + LLL: 'D MMMM YYYY HH:mm', + LLLL: 'dddd D MMMM YYYY HH:mm', + }, + calendar: { + sameDay: '[vandaag om] LT', + nextDay: '[morgen om] LT', + nextWeek: 'dddd [om] LT', + lastDay: '[gisteren om] LT', + lastWeek: '[afgelopen] dddd [om] LT', + sameElse: 'L', + }, + relativeTime: { + future: 'over %s', + past: '%s geleden', + s: 'een paar seconden', + ss: '%d seconden', + m: 'één minuut', + mm: '%d minuten', + h: 'één uur', + hh: '%d uur', + d: 'één dag', + dd: '%d dagen', + w: 'één week', + ww: '%d weken', + M: 'één maand', + MM: '%d maanden', + y: 'één jaar', + yy: '%d jaar', + }, + dayOfMonthOrdinalParse: /\d{1,2}(ste|de)/, + ordinal: function (number) { + return ( + number + + (number === 1 || number === 8 || number >= 20 ? 'ste' : 'de') + ); + }, + week: { + dow: 1, // Monday is the first day of the week. + doy: 4, // The week that contains Jan 4th is the first week of the year. + }, + }); + + return nl; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/nn.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/nn.js new file mode 100644 index 0000000..c65268e --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/nn.js @@ -0,0 +1,70 @@ +//! moment.js locale configuration +//! locale : Nynorsk [nn] +//! authors : https://github.com/mechuwind +//! Stephen Ramthun : https://github.com/stephenramthun + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var nn = moment.defineLocale('nn', { + months: 'januar_februar_mars_april_mai_juni_juli_august_september_oktober_november_desember'.split( + '_' + ), + monthsShort: + 'jan._feb._mars_apr._mai_juni_juli_aug._sep._okt._nov._des.'.split('_'), + monthsParseExact: true, + weekdays: 'sundag_måndag_tysdag_onsdag_torsdag_fredag_laurdag'.split('_'), + weekdaysShort: 'su._må._ty._on._to._fr._lau.'.split('_'), + weekdaysMin: 'su_må_ty_on_to_fr_la'.split('_'), + weekdaysParseExact: true, + longDateFormat: { + LT: 'HH:mm', + LTS: 'HH:mm:ss', + L: 'DD.MM.YYYY', + LL: 'D. MMMM YYYY', + LLL: 'D. MMMM YYYY [kl.] H:mm', + LLLL: 'dddd D. MMMM YYYY [kl.] HH:mm', + }, + calendar: { + sameDay: '[I dag klokka] LT', + nextDay: '[I morgon klokka] LT', + nextWeek: 'dddd [klokka] LT', + lastDay: '[I går klokka] LT', + lastWeek: '[Føregåande] dddd [klokka] LT', + sameElse: 'L', + }, + relativeTime: { + future: 'om %s', + past: '%s sidan', + s: 'nokre sekund', + ss: '%d sekund', + m: 'eit minutt', + mm: '%d minutt', + h: 'ein time', + hh: '%d timar', + d: 'ein dag', + dd: '%d dagar', + w: 'ei veke', + ww: '%d veker', + M: 'ein månad', + MM: '%d månader', + y: 'eit år', + yy: '%d år', + }, + dayOfMonthOrdinalParse: /\d{1,2}\./, + ordinal: '%d.', + week: { + dow: 1, // Monday is the first day of the week. + doy: 4, // The week that contains Jan 4th is the first week of the year. + }, + }); + + return nn; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/oc-lnc.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/oc-lnc.js new file mode 100644 index 0000000..ba8f433 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/oc-lnc.js @@ -0,0 +1,96 @@ +//! moment.js locale configuration +//! locale : Occitan, lengadocian dialecte [oc-lnc] +//! author : Quentin PAGÈS : https://github.com/Quenty31 + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var ocLnc = moment.defineLocale('oc-lnc', { + months: { + standalone: + 'genièr_febrièr_març_abril_mai_junh_julhet_agost_setembre_octòbre_novembre_decembre'.split( + '_' + ), + format: "de genièr_de febrièr_de març_d'abril_de mai_de junh_de julhet_d'agost_de setembre_d'octòbre_de novembre_de decembre".split( + '_' + ), + isFormat: /D[oD]?(\s)+MMMM/, + }, + monthsShort: + 'gen._febr._març_abr._mai_junh_julh._ago._set._oct._nov._dec.'.split( + '_' + ), + monthsParseExact: true, + weekdays: 'dimenge_diluns_dimars_dimècres_dijòus_divendres_dissabte'.split( + '_' + ), + weekdaysShort: 'dg._dl._dm._dc._dj._dv._ds.'.split('_'), + weekdaysMin: 'dg_dl_dm_dc_dj_dv_ds'.split('_'), + weekdaysParseExact: true, + longDateFormat: { + LT: 'H:mm', + LTS: 'H:mm:ss', + L: 'DD/MM/YYYY', + LL: 'D MMMM [de] YYYY', + ll: 'D MMM YYYY', + LLL: 'D MMMM [de] YYYY [a] H:mm', + lll: 'D MMM YYYY, H:mm', + LLLL: 'dddd D MMMM [de] YYYY [a] H:mm', + llll: 'ddd D MMM YYYY, H:mm', + }, + calendar: { + sameDay: '[uèi a] LT', + nextDay: '[deman a] LT', + nextWeek: 'dddd [a] LT', + lastDay: '[ièr a] LT', + lastWeek: 'dddd [passat a] LT', + sameElse: 'L', + }, + relativeTime: { + future: "d'aquí %s", + past: 'fa %s', + s: 'unas segondas', + ss: '%d segondas', + m: 'una minuta', + mm: '%d minutas', + h: 'una ora', + hh: '%d oras', + d: 'un jorn', + dd: '%d jorns', + M: 'un mes', + MM: '%d meses', + y: 'un an', + yy: '%d ans', + }, + dayOfMonthOrdinalParse: /\d{1,2}(r|n|t|è|a)/, + ordinal: function (number, period) { + var output = + number === 1 + ? 'r' + : number === 2 + ? 'n' + : number === 3 + ? 'r' + : number === 4 + ? 't' + : 'è'; + if (period === 'w' || period === 'W') { + output = 'a'; + } + return number + output; + }, + week: { + dow: 1, // Monday is the first day of the week. + doy: 4, + }, + }); + + return ocLnc; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/pa-in.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/pa-in.js new file mode 100644 index 0000000..d57eb75 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/pa-in.js @@ -0,0 +1,133 @@ +//! moment.js locale configuration +//! locale : Punjabi (India) [pa-in] +//! author : Harpreet Singh : https://github.com/harpreetkhalsagtbit + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var symbolMap = { + 1: '੧', + 2: '੨', + 3: '੩', + 4: '੪', + 5: '੫', + 6: '੬', + 7: '੭', + 8: '੮', + 9: '੯', + 0: '੦', + }, + numberMap = { + '੧': '1', + '੨': '2', + '੩': '3', + '੪': '4', + '੫': '5', + '੬': '6', + '੭': '7', + '੮': '8', + '੯': '9', + '੦': '0', + }; + + var paIn = moment.defineLocale('pa-in', { + // There are months name as per Nanakshahi Calendar but they are not used as rigidly in modern Punjabi. + months: 'ਜਨਵਰੀ_ਫ਼ਰਵਰੀ_ਮਾਰਚ_ਅਪ੍ਰੈਲ_ਮਈ_ਜੂਨ_ਜੁਲਾਈ_ਅਗਸਤ_ਸਤੰਬਰ_ਅਕਤੂਬਰ_ਨਵੰਬਰ_ਦਸੰਬਰ'.split( + '_' + ), + monthsShort: + 'ਜਨਵਰੀ_ਫ਼ਰਵਰੀ_ਮਾਰਚ_ਅਪ੍ਰੈਲ_ਮਈ_ਜੂਨ_ਜੁਲਾਈ_ਅਗਸਤ_ਸਤੰਬਰ_ਅਕਤੂਬਰ_ਨਵੰਬਰ_ਦਸੰਬਰ'.split( + '_' + ), + weekdays: 'ਐਤਵਾਰ_ਸੋਮਵਾਰ_ਮੰਗਲਵਾਰ_ਬੁਧਵਾਰ_ਵੀਰਵਾਰ_ਸ਼ੁੱਕਰਵਾਰ_ਸ਼ਨੀਚਰਵਾਰ'.split( + '_' + ), + weekdaysShort: 'ਐਤ_ਸੋਮ_ਮੰਗਲ_ਬੁਧ_ਵੀਰ_ਸ਼ੁਕਰ_ਸ਼ਨੀ'.split('_'), + weekdaysMin: 'ਐਤ_ਸੋਮ_ਮੰਗਲ_ਬੁਧ_ਵੀਰ_ਸ਼ੁਕਰ_ਸ਼ਨੀ'.split('_'), + longDateFormat: { + LT: 'A h:mm ਵਜੇ', + LTS: 'A h:mm:ss ਵਜੇ', + L: 'DD/MM/YYYY', + LL: 'D MMMM YYYY', + LLL: 'D MMMM YYYY, A h:mm ਵਜੇ', + LLLL: 'dddd, D MMMM YYYY, A h:mm ਵਜੇ', + }, + calendar: { + sameDay: '[ਅਜ] LT', + nextDay: '[ਕਲ] LT', + nextWeek: '[ਅਗਲਾ] dddd, LT', + lastDay: '[ਕਲ] LT', + lastWeek: '[ਪਿਛਲੇ] dddd, LT', + sameElse: 'L', + }, + relativeTime: { + future: '%s ਵਿੱਚ', + past: '%s ਪਿਛਲੇ', + s: 'ਕੁਝ ਸਕਿੰਟ', + ss: '%d ਸਕਿੰਟ', + m: 'ਇਕ ਮਿੰਟ', + mm: '%d ਮਿੰਟ', + h: 'ਇੱਕ ਘੰਟਾ', + hh: '%d ਘੰਟੇ', + d: 'ਇੱਕ ਦਿਨ', + dd: '%d ਦਿਨ', + M: 'ਇੱਕ ਮਹੀਨਾ', + MM: '%d ਮਹੀਨੇ', + y: 'ਇੱਕ ਸਾਲ', + yy: '%d ਸਾਲ', + }, + preparse: function (string) { + return string.replace(/[੧੨੩੪੫੬੭੮੯੦]/g, function (match) { + return numberMap[match]; + }); + }, + postformat: function (string) { + return string.replace(/\d/g, function (match) { + return symbolMap[match]; + }); + }, + // Punjabi notation for meridiems are quite fuzzy in practice. While there exists + // a rigid notion of a 'Pahar' it is not used as rigidly in modern Punjabi. + meridiemParse: /ਰਾਤ|ਸਵੇਰ|ਦੁਪਹਿਰ|ਸ਼ਾਮ/, + meridiemHour: function (hour, meridiem) { + if (hour === 12) { + hour = 0; + } + if (meridiem === 'ਰਾਤ') { + return hour < 4 ? hour : hour + 12; + } else if (meridiem === 'ਸਵੇਰ') { + return hour; + } else if (meridiem === 'ਦੁਪਹਿਰ') { + return hour >= 10 ? hour : hour + 12; + } else if (meridiem === 'ਸ਼ਾਮ') { + return hour + 12; + } + }, + meridiem: function (hour, minute, isLower) { + if (hour < 4) { + return 'ਰਾਤ'; + } else if (hour < 10) { + return 'ਸਵੇਰ'; + } else if (hour < 17) { + return 'ਦੁਪਹਿਰ'; + } else if (hour < 20) { + return 'ਸ਼ਾਮ'; + } else { + return 'ਰਾਤ'; + } + }, + week: { + dow: 0, // Sunday is the first day of the week. + doy: 6, // The week that contains Jan 6th is the first week of the year. + }, + }); + + return paIn; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/pl.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/pl.js new file mode 100644 index 0000000..0750bb3 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/pl.js @@ -0,0 +1,151 @@ +//! moment.js locale configuration +//! locale : Polish [pl] +//! author : Rafal Hirsz : https://github.com/evoL + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var monthsNominative = + 'styczeń_luty_marzec_kwiecień_maj_czerwiec_lipiec_sierpień_wrzesień_październik_listopad_grudzień'.split( + '_' + ), + monthsSubjective = + 'stycznia_lutego_marca_kwietnia_maja_czerwca_lipca_sierpnia_września_października_listopada_grudnia'.split( + '_' + ), + monthsParse = [ + /^sty/i, + /^lut/i, + /^mar/i, + /^kwi/i, + /^maj/i, + /^cze/i, + /^lip/i, + /^sie/i, + /^wrz/i, + /^paź/i, + /^lis/i, + /^gru/i, + ]; + function plural(n) { + return n % 10 < 5 && n % 10 > 1 && ~~(n / 10) % 10 !== 1; + } + function translate(number, withoutSuffix, key) { + var result = number + ' '; + switch (key) { + case 'ss': + return result + (plural(number) ? 'sekundy' : 'sekund'); + case 'm': + return withoutSuffix ? 'minuta' : 'minutę'; + case 'mm': + return result + (plural(number) ? 'minuty' : 'minut'); + case 'h': + return withoutSuffix ? 'godzina' : 'godzinę'; + case 'hh': + return result + (plural(number) ? 'godziny' : 'godzin'); + case 'ww': + return result + (plural(number) ? 'tygodnie' : 'tygodni'); + case 'MM': + return result + (plural(number) ? 'miesiące' : 'miesięcy'); + case 'yy': + return result + (plural(number) ? 'lata' : 'lat'); + } + } + + var pl = moment.defineLocale('pl', { + months: function (momentToFormat, format) { + if (!momentToFormat) { + return monthsNominative; + } else if (/D MMMM/.test(format)) { + return monthsSubjective[momentToFormat.month()]; + } else { + return monthsNominative[momentToFormat.month()]; + } + }, + monthsShort: 'sty_lut_mar_kwi_maj_cze_lip_sie_wrz_paź_lis_gru'.split('_'), + monthsParse: monthsParse, + longMonthsParse: monthsParse, + shortMonthsParse: monthsParse, + weekdays: + 'niedziela_poniedziałek_wtorek_środa_czwartek_piątek_sobota'.split('_'), + weekdaysShort: 'ndz_pon_wt_śr_czw_pt_sob'.split('_'), + weekdaysMin: 'Nd_Pn_Wt_Śr_Cz_Pt_So'.split('_'), + longDateFormat: { + LT: 'HH:mm', + LTS: 'HH:mm:ss', + L: 'DD.MM.YYYY', + LL: 'D MMMM YYYY', + LLL: 'D MMMM YYYY HH:mm', + LLLL: 'dddd, D MMMM YYYY HH:mm', + }, + calendar: { + sameDay: '[Dziś o] LT', + nextDay: '[Jutro o] LT', + nextWeek: function () { + switch (this.day()) { + case 0: + return '[W niedzielę o] LT'; + + case 2: + return '[We wtorek o] LT'; + + case 3: + return '[W środę o] LT'; + + case 6: + return '[W sobotę o] LT'; + + default: + return '[W] dddd [o] LT'; + } + }, + lastDay: '[Wczoraj o] LT', + lastWeek: function () { + switch (this.day()) { + case 0: + return '[W zeszłą niedzielę o] LT'; + case 3: + return '[W zeszłą środę o] LT'; + case 6: + return '[W zeszłą sobotę o] LT'; + default: + return '[W zeszły] dddd [o] LT'; + } + }, + sameElse: 'L', + }, + relativeTime: { + future: 'za %s', + past: '%s temu', + s: 'kilka sekund', + ss: translate, + m: translate, + mm: translate, + h: translate, + hh: translate, + d: '1 dzień', + dd: '%d dni', + w: 'tydzień', + ww: translate, + M: 'miesiąc', + MM: translate, + y: 'rok', + yy: translate, + }, + dayOfMonthOrdinalParse: /\d{1,2}\./, + ordinal: '%d.', + week: { + dow: 1, // Monday is the first day of the week. + doy: 4, // The week that contains Jan 4th is the first week of the year. + }, + }); + + return pl; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/pt-br.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/pt-br.js new file mode 100644 index 0000000..ee123bd --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/pt-br.js @@ -0,0 +1,69 @@ +//! moment.js locale configuration +//! locale : Portuguese (Brazil) [pt-br] +//! author : Caio Ribeiro Pereira : https://github.com/caio-ribeiro-pereira + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var ptBr = moment.defineLocale('pt-br', { + months: 'janeiro_fevereiro_março_abril_maio_junho_julho_agosto_setembro_outubro_novembro_dezembro'.split( + '_' + ), + monthsShort: 'jan_fev_mar_abr_mai_jun_jul_ago_set_out_nov_dez'.split('_'), + weekdays: + 'domingo_segunda-feira_terça-feira_quarta-feira_quinta-feira_sexta-feira_sábado'.split( + '_' + ), + weekdaysShort: 'dom_seg_ter_qua_qui_sex_sáb'.split('_'), + weekdaysMin: 'do_2ª_3ª_4ª_5ª_6ª_sá'.split('_'), + weekdaysParseExact: true, + longDateFormat: { + LT: 'HH:mm', + LTS: 'HH:mm:ss', + L: 'DD/MM/YYYY', + LL: 'D [de] MMMM [de] YYYY', + LLL: 'D [de] MMMM [de] YYYY [às] HH:mm', + LLLL: 'dddd, D [de] MMMM [de] YYYY [às] HH:mm', + }, + calendar: { + sameDay: '[Hoje às] LT', + nextDay: '[Amanhã às] LT', + nextWeek: 'dddd [às] LT', + lastDay: '[Ontem às] LT', + lastWeek: function () { + return this.day() === 0 || this.day() === 6 + ? '[Último] dddd [às] LT' // Saturday + Sunday + : '[Última] dddd [às] LT'; // Monday - Friday + }, + sameElse: 'L', + }, + relativeTime: { + future: 'em %s', + past: 'há %s', + s: 'poucos segundos', + ss: '%d segundos', + m: 'um minuto', + mm: '%d minutos', + h: 'uma hora', + hh: '%d horas', + d: 'um dia', + dd: '%d dias', + M: 'um mês', + MM: '%d meses', + y: 'um ano', + yy: '%d anos', + }, + dayOfMonthOrdinalParse: /\d{1,2}º/, + ordinal: '%dº', + invalidDate: 'Data inválida', + }); + + return ptBr; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/pt.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/pt.js new file mode 100644 index 0000000..a113ed7 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/pt.js @@ -0,0 +1,74 @@ +//! moment.js locale configuration +//! locale : Portuguese [pt] +//! author : Jefferson : https://github.com/jalex79 + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var pt = moment.defineLocale('pt', { + months: 'janeiro_fevereiro_março_abril_maio_junho_julho_agosto_setembro_outubro_novembro_dezembro'.split( + '_' + ), + monthsShort: 'jan_fev_mar_abr_mai_jun_jul_ago_set_out_nov_dez'.split('_'), + weekdays: + 'Domingo_Segunda-feira_Terça-feira_Quarta-feira_Quinta-feira_Sexta-feira_Sábado'.split( + '_' + ), + weekdaysShort: 'Dom_Seg_Ter_Qua_Qui_Sex_Sáb'.split('_'), + weekdaysMin: 'Do_2ª_3ª_4ª_5ª_6ª_Sá'.split('_'), + weekdaysParseExact: true, + longDateFormat: { + LT: 'HH:mm', + LTS: 'HH:mm:ss', + L: 'DD/MM/YYYY', + LL: 'D [de] MMMM [de] YYYY', + LLL: 'D [de] MMMM [de] YYYY HH:mm', + LLLL: 'dddd, D [de] MMMM [de] YYYY HH:mm', + }, + calendar: { + sameDay: '[Hoje às] LT', + nextDay: '[Amanhã às] LT', + nextWeek: 'dddd [às] LT', + lastDay: '[Ontem às] LT', + lastWeek: function () { + return this.day() === 0 || this.day() === 6 + ? '[Último] dddd [às] LT' // Saturday + Sunday + : '[Última] dddd [às] LT'; // Monday - Friday + }, + sameElse: 'L', + }, + relativeTime: { + future: 'em %s', + past: 'há %s', + s: 'segundos', + ss: '%d segundos', + m: 'um minuto', + mm: '%d minutos', + h: 'uma hora', + hh: '%d horas', + d: 'um dia', + dd: '%d dias', + w: 'uma semana', + ww: '%d semanas', + M: 'um mês', + MM: '%d meses', + y: 'um ano', + yy: '%d anos', + }, + dayOfMonthOrdinalParse: /\d{1,2}º/, + ordinal: '%dº', + week: { + dow: 1, // Monday is the first day of the week. + doy: 4, // The week that contains Jan 4th is the first week of the year. + }, + }); + + return pt; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/ro.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/ro.js new file mode 100644 index 0000000..c2a9dd8 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/ro.js @@ -0,0 +1,87 @@ +//! moment.js locale configuration +//! locale : Romanian [ro] +//! author : Vlad Gurdiga : https://github.com/gurdiga +//! author : Valentin Agachi : https://github.com/avaly +//! author : Emanuel Cepoi : https://github.com/cepem + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + function relativeTimeWithPlural(number, withoutSuffix, key) { + var format = { + ss: 'secunde', + mm: 'minute', + hh: 'ore', + dd: 'zile', + ww: 'săptămâni', + MM: 'luni', + yy: 'ani', + }, + separator = ' '; + if (number % 100 >= 20 || (number >= 100 && number % 100 === 0)) { + separator = ' de '; + } + return number + separator + format[key]; + } + + var ro = moment.defineLocale('ro', { + months: 'ianuarie_februarie_martie_aprilie_mai_iunie_iulie_august_septembrie_octombrie_noiembrie_decembrie'.split( + '_' + ), + monthsShort: + 'ian._feb._mart._apr._mai_iun._iul._aug._sept._oct._nov._dec.'.split( + '_' + ), + monthsParseExact: true, + weekdays: 'duminică_luni_marți_miercuri_joi_vineri_sâmbătă'.split('_'), + weekdaysShort: 'Dum_Lun_Mar_Mie_Joi_Vin_Sâm'.split('_'), + weekdaysMin: 'Du_Lu_Ma_Mi_Jo_Vi_Sâ'.split('_'), + longDateFormat: { + LT: 'H:mm', + LTS: 'H:mm:ss', + L: 'DD.MM.YYYY', + LL: 'D MMMM YYYY', + LLL: 'D MMMM YYYY H:mm', + LLLL: 'dddd, D MMMM YYYY H:mm', + }, + calendar: { + sameDay: '[azi la] LT', + nextDay: '[mâine la] LT', + nextWeek: 'dddd [la] LT', + lastDay: '[ieri la] LT', + lastWeek: '[fosta] dddd [la] LT', + sameElse: 'L', + }, + relativeTime: { + future: 'peste %s', + past: '%s în urmă', + s: 'câteva secunde', + ss: relativeTimeWithPlural, + m: 'un minut', + mm: relativeTimeWithPlural, + h: 'o oră', + hh: relativeTimeWithPlural, + d: 'o zi', + dd: relativeTimeWithPlural, + w: 'o săptămână', + ww: relativeTimeWithPlural, + M: 'o lună', + MM: relativeTimeWithPlural, + y: 'un an', + yy: relativeTimeWithPlural, + }, + week: { + dow: 1, // Monday is the first day of the week. + doy: 7, // The week that contains Jan 7th is the first week of the year. + }, + }); + + return ro; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/ru.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/ru.js new file mode 100644 index 0000000..918e9d5 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/ru.js @@ -0,0 +1,224 @@ +//! moment.js locale configuration +//! locale : Russian [ru] +//! author : Viktorminator : https://github.com/Viktorminator +//! author : Menelion Elensúle : https://github.com/Oire +//! author : Коренберг Марк : https://github.com/socketpair + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + function plural(word, num) { + var forms = word.split('_'); + return num % 10 === 1 && num % 100 !== 11 + ? forms[0] + : num % 10 >= 2 && num % 10 <= 4 && (num % 100 < 10 || num % 100 >= 20) + ? forms[1] + : forms[2]; + } + function relativeTimeWithPlural(number, withoutSuffix, key) { + var format = { + ss: withoutSuffix ? 'секунда_секунды_секунд' : 'секунду_секунды_секунд', + mm: withoutSuffix ? 'минута_минуты_минут' : 'минуту_минуты_минут', + hh: 'час_часа_часов', + dd: 'день_дня_дней', + ww: 'неделя_недели_недель', + MM: 'месяц_месяца_месяцев', + yy: 'год_года_лет', + }; + if (key === 'm') { + return withoutSuffix ? 'минута' : 'минуту'; + } else { + return number + ' ' + plural(format[key], +number); + } + } + var monthsParse = [ + /^янв/i, + /^фев/i, + /^мар/i, + /^апр/i, + /^ма[йя]/i, + /^июн/i, + /^июл/i, + /^авг/i, + /^сен/i, + /^окт/i, + /^ноя/i, + /^дек/i, + ]; + + // http://new.gramota.ru/spravka/rules/139-prop : § 103 + // Сокращения месяцев: http://new.gramota.ru/spravka/buro/search-answer?s=242637 + // CLDR data: http://www.unicode.org/cldr/charts/28/summary/ru.html#1753 + var ru = moment.defineLocale('ru', { + months: { + format: 'января_февраля_марта_апреля_мая_июня_июля_августа_сентября_октября_ноября_декабря'.split( + '_' + ), + standalone: + 'январь_февраль_март_апрель_май_июнь_июль_август_сентябрь_октябрь_ноябрь_декабрь'.split( + '_' + ), + }, + monthsShort: { + // по CLDR именно "июл." и "июн.", но какой смысл менять букву на точку? + format: 'янв._февр._мар._апр._мая_июня_июля_авг._сент._окт._нояб._дек.'.split( + '_' + ), + standalone: + 'янв._февр._март_апр._май_июнь_июль_авг._сент._окт._нояб._дек.'.split( + '_' + ), + }, + weekdays: { + standalone: + 'воскресенье_понедельник_вторник_среда_четверг_пятница_суббота'.split( + '_' + ), + format: 'воскресенье_понедельник_вторник_среду_четверг_пятницу_субботу'.split( + '_' + ), + isFormat: /\[ ?[Вв] ?(?:прошлую|следующую|эту)? ?] ?dddd/, + }, + weekdaysShort: 'вс_пн_вт_ср_чт_пт_сб'.split('_'), + weekdaysMin: 'вс_пн_вт_ср_чт_пт_сб'.split('_'), + monthsParse: monthsParse, + longMonthsParse: monthsParse, + shortMonthsParse: monthsParse, + + // полные названия с падежами, по три буквы, для некоторых, по 4 буквы, сокращения с точкой и без точки + monthsRegex: + /^(январ[ья]|янв\.?|феврал[ья]|февр?\.?|марта?|мар\.?|апрел[ья]|апр\.?|ма[йя]|июн[ья]|июн\.?|июл[ья]|июл\.?|августа?|авг\.?|сентябр[ья]|сент?\.?|октябр[ья]|окт\.?|ноябр[ья]|нояб?\.?|декабр[ья]|дек\.?)/i, + + // копия предыдущего + monthsShortRegex: + /^(январ[ья]|янв\.?|феврал[ья]|февр?\.?|марта?|мар\.?|апрел[ья]|апр\.?|ма[йя]|июн[ья]|июн\.?|июл[ья]|июл\.?|августа?|авг\.?|сентябр[ья]|сент?\.?|октябр[ья]|окт\.?|ноябр[ья]|нояб?\.?|декабр[ья]|дек\.?)/i, + + // полные названия с падежами + monthsStrictRegex: + /^(январ[яь]|феврал[яь]|марта?|апрел[яь]|ма[яй]|июн[яь]|июл[яь]|августа?|сентябр[яь]|октябр[яь]|ноябр[яь]|декабр[яь])/i, + + // Выражение, которое соответствует только сокращённым формам + monthsShortStrictRegex: + /^(янв\.|февр?\.|мар[т.]|апр\.|ма[яй]|июн[ья.]|июл[ья.]|авг\.|сент?\.|окт\.|нояб?\.|дек\.)/i, + longDateFormat: { + LT: 'H:mm', + LTS: 'H:mm:ss', + L: 'DD.MM.YYYY', + LL: 'D MMMM YYYY г.', + LLL: 'D MMMM YYYY г., H:mm', + LLLL: 'dddd, D MMMM YYYY г., H:mm', + }, + calendar: { + sameDay: '[Сегодня, в] LT', + nextDay: '[Завтра, в] LT', + lastDay: '[Вчера, в] LT', + nextWeek: function (now) { + if (now.week() !== this.week()) { + switch (this.day()) { + case 0: + return '[В следующее] dddd, [в] LT'; + case 1: + case 2: + case 4: + return '[В следующий] dddd, [в] LT'; + case 3: + case 5: + case 6: + return '[В следующую] dddd, [в] LT'; + } + } else { + if (this.day() === 2) { + return '[Во] dddd, [в] LT'; + } else { + return '[В] dddd, [в] LT'; + } + } + }, + lastWeek: function (now) { + if (now.week() !== this.week()) { + switch (this.day()) { + case 0: + return '[В прошлое] dddd, [в] LT'; + case 1: + case 2: + case 4: + return '[В прошлый] dddd, [в] LT'; + case 3: + case 5: + case 6: + return '[В прошлую] dddd, [в] LT'; + } + } else { + if (this.day() === 2) { + return '[Во] dddd, [в] LT'; + } else { + return '[В] dddd, [в] LT'; + } + } + }, + sameElse: 'L', + }, + relativeTime: { + future: 'через %s', + past: '%s назад', + s: 'несколько секунд', + ss: relativeTimeWithPlural, + m: relativeTimeWithPlural, + mm: relativeTimeWithPlural, + h: 'час', + hh: relativeTimeWithPlural, + d: 'день', + dd: relativeTimeWithPlural, + w: 'неделя', + ww: relativeTimeWithPlural, + M: 'месяц', + MM: relativeTimeWithPlural, + y: 'год', + yy: relativeTimeWithPlural, + }, + meridiemParse: /ночи|утра|дня|вечера/i, + isPM: function (input) { + return /^(дня|вечера)$/.test(input); + }, + meridiem: function (hour, minute, isLower) { + if (hour < 4) { + return 'ночи'; + } else if (hour < 12) { + return 'утра'; + } else if (hour < 17) { + return 'дня'; + } else { + return 'вечера'; + } + }, + dayOfMonthOrdinalParse: /\d{1,2}-(й|го|я)/, + ordinal: function (number, period) { + switch (period) { + case 'M': + case 'd': + case 'DDD': + return number + '-й'; + case 'D': + return number + '-го'; + case 'w': + case 'W': + return number + '-я'; + default: + return number; + } + }, + week: { + dow: 1, // Monday is the first day of the week. + doy: 4, // The week that contains Jan 4th is the first week of the year. + }, + }); + + return ru; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/sd.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/sd.js new file mode 100644 index 0000000..56ff8c7 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/sd.js @@ -0,0 +1,92 @@ +//! moment.js locale configuration +//! locale : Sindhi [sd] +//! author : Narain Sagar : https://github.com/narainsagar + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var months = [ + 'جنوري', + 'فيبروري', + 'مارچ', + 'اپريل', + 'مئي', + 'جون', + 'جولاءِ', + 'آگسٽ', + 'سيپٽمبر', + 'آڪٽوبر', + 'نومبر', + 'ڊسمبر', + ], + days = ['آچر', 'سومر', 'اڱارو', 'اربع', 'خميس', 'جمع', 'ڇنڇر']; + + var sd = moment.defineLocale('sd', { + months: months, + monthsShort: months, + weekdays: days, + weekdaysShort: days, + weekdaysMin: days, + longDateFormat: { + LT: 'HH:mm', + LTS: 'HH:mm:ss', + L: 'DD/MM/YYYY', + LL: 'D MMMM YYYY', + LLL: 'D MMMM YYYY HH:mm', + LLLL: 'dddd، D MMMM YYYY HH:mm', + }, + meridiemParse: /صبح|شام/, + isPM: function (input) { + return 'شام' === input; + }, + meridiem: function (hour, minute, isLower) { + if (hour < 12) { + return 'صبح'; + } + return 'شام'; + }, + calendar: { + sameDay: '[اڄ] LT', + nextDay: '[سڀاڻي] LT', + nextWeek: 'dddd [اڳين هفتي تي] LT', + lastDay: '[ڪالهه] LT', + lastWeek: '[گزريل هفتي] dddd [تي] LT', + sameElse: 'L', + }, + relativeTime: { + future: '%s پوء', + past: '%s اڳ', + s: 'چند سيڪنڊ', + ss: '%d سيڪنڊ', + m: 'هڪ منٽ', + mm: '%d منٽ', + h: 'هڪ ڪلاڪ', + hh: '%d ڪلاڪ', + d: 'هڪ ڏينهن', + dd: '%d ڏينهن', + M: 'هڪ مهينو', + MM: '%d مهينا', + y: 'هڪ سال', + yy: '%d سال', + }, + preparse: function (string) { + return string.replace(/،/g, ','); + }, + postformat: function (string) { + return string.replace(/,/g, '،'); + }, + week: { + dow: 1, // Monday is the first day of the week. + doy: 4, // The week that contains Jan 4th is the first week of the year. + }, + }); + + return sd; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/se.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/se.js new file mode 100644 index 0000000..289929a --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/se.js @@ -0,0 +1,68 @@ +//! moment.js locale configuration +//! locale : Northern Sami [se] +//! authors : Bård Rolstad Henriksen : https://github.com/karamell + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var se = moment.defineLocale('se', { + months: 'ođđajagemánnu_guovvamánnu_njukčamánnu_cuoŋománnu_miessemánnu_geassemánnu_suoidnemánnu_borgemánnu_čakčamánnu_golggotmánnu_skábmamánnu_juovlamánnu'.split( + '_' + ), + monthsShort: + 'ođđj_guov_njuk_cuo_mies_geas_suoi_borg_čakč_golg_skáb_juov'.split('_'), + weekdays: + 'sotnabeaivi_vuossárga_maŋŋebárga_gaskavahkku_duorastat_bearjadat_lávvardat'.split( + '_' + ), + weekdaysShort: 'sotn_vuos_maŋ_gask_duor_bear_láv'.split('_'), + weekdaysMin: 's_v_m_g_d_b_L'.split('_'), + longDateFormat: { + LT: 'HH:mm', + LTS: 'HH:mm:ss', + L: 'DD.MM.YYYY', + LL: 'MMMM D. [b.] YYYY', + LLL: 'MMMM D. [b.] YYYY [ti.] HH:mm', + LLLL: 'dddd, MMMM D. [b.] YYYY [ti.] HH:mm', + }, + calendar: { + sameDay: '[otne ti] LT', + nextDay: '[ihttin ti] LT', + nextWeek: 'dddd [ti] LT', + lastDay: '[ikte ti] LT', + lastWeek: '[ovddit] dddd [ti] LT', + sameElse: 'L', + }, + relativeTime: { + future: '%s geažes', + past: 'maŋit %s', + s: 'moadde sekunddat', + ss: '%d sekunddat', + m: 'okta minuhta', + mm: '%d minuhtat', + h: 'okta diimmu', + hh: '%d diimmut', + d: 'okta beaivi', + dd: '%d beaivvit', + M: 'okta mánnu', + MM: '%d mánut', + y: 'okta jahki', + yy: '%d jagit', + }, + dayOfMonthOrdinalParse: /\d{1,2}\./, + ordinal: '%d.', + week: { + dow: 1, // Monday is the first day of the week. + doy: 4, // The week that contains Jan 4th is the first week of the year. + }, + }); + + return se; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/si.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/si.js new file mode 100644 index 0000000..4421d04 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/si.js @@ -0,0 +1,80 @@ +//! moment.js locale configuration +//! locale : Sinhalese [si] +//! author : Sampath Sitinamaluwa : https://github.com/sampathsris + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + /*jshint -W100*/ + var si = moment.defineLocale('si', { + months: 'ජනවාරි_පෙබරවාරි_මාර්තු_අප්‍රේල්_මැයි_ජූනි_ජූලි_අගෝස්තු_සැප්තැම්බර්_ඔක්තෝබර්_නොවැම්බර්_දෙසැම්බර්'.split( + '_' + ), + monthsShort: 'ජන_පෙබ_මාර්_අප්_මැයි_ජූනි_ජූලි_අගෝ_සැප්_ඔක්_නොවැ_දෙසැ'.split( + '_' + ), + weekdays: + 'ඉරිදා_සඳුදා_අඟහරුවාදා_බදාදා_බ්‍රහස්පතින්දා_සිකුරාදා_සෙනසුරාදා'.split( + '_' + ), + weekdaysShort: 'ඉරි_සඳු_අඟ_බදා_බ්‍රහ_සිකු_සෙන'.split('_'), + weekdaysMin: 'ඉ_ස_අ_බ_බ්‍ර_සි_සෙ'.split('_'), + weekdaysParseExact: true, + longDateFormat: { + LT: 'a h:mm', + LTS: 'a h:mm:ss', + L: 'YYYY/MM/DD', + LL: 'YYYY MMMM D', + LLL: 'YYYY MMMM D, a h:mm', + LLLL: 'YYYY MMMM D [වැනි] dddd, a h:mm:ss', + }, + calendar: { + sameDay: '[අද] LT[ට]', + nextDay: '[හෙට] LT[ට]', + nextWeek: 'dddd LT[ට]', + lastDay: '[ඊයේ] LT[ට]', + lastWeek: '[පසුගිය] dddd LT[ට]', + sameElse: 'L', + }, + relativeTime: { + future: '%sකින්', + past: '%sකට පෙර', + s: 'තත්පර කිහිපය', + ss: 'තත්පර %d', + m: 'මිනිත්තුව', + mm: 'මිනිත්තු %d', + h: 'පැය', + hh: 'පැය %d', + d: 'දිනය', + dd: 'දින %d', + M: 'මාසය', + MM: 'මාස %d', + y: 'වසර', + yy: 'වසර %d', + }, + dayOfMonthOrdinalParse: /\d{1,2} වැනි/, + ordinal: function (number) { + return number + ' වැනි'; + }, + meridiemParse: /පෙර වරු|පස් වරු|පෙ.ව|ප.ව./, + isPM: function (input) { + return input === 'ප.ව.' || input === 'පස් වරු'; + }, + meridiem: function (hours, minutes, isLower) { + if (hours > 11) { + return isLower ? 'ප.ව.' : 'පස් වරු'; + } else { + return isLower ? 'පෙ.ව.' : 'පෙර වරු'; + } + }, + }); + + return si; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/sk.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/sk.js new file mode 100644 index 0000000..99edae7 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/sk.js @@ -0,0 +1,156 @@ +//! moment.js locale configuration +//! locale : Slovak [sk] +//! author : Martin Minka : https://github.com/k2s +//! based on work of petrbela : https://github.com/petrbela + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var months = + 'január_február_marec_apríl_máj_jún_júl_august_september_október_november_december'.split( + '_' + ), + monthsShort = 'jan_feb_mar_apr_máj_jún_júl_aug_sep_okt_nov_dec'.split('_'); + function plural(n) { + return n > 1 && n < 5; + } + function translate(number, withoutSuffix, key, isFuture) { + var result = number + ' '; + switch (key) { + case 's': // a few seconds / in a few seconds / a few seconds ago + return withoutSuffix || isFuture ? 'pár sekúnd' : 'pár sekundami'; + case 'ss': // 9 seconds / in 9 seconds / 9 seconds ago + if (withoutSuffix || isFuture) { + return result + (plural(number) ? 'sekundy' : 'sekúnd'); + } else { + return result + 'sekundami'; + } + case 'm': // a minute / in a minute / a minute ago + return withoutSuffix ? 'minúta' : isFuture ? 'minútu' : 'minútou'; + case 'mm': // 9 minutes / in 9 minutes / 9 minutes ago + if (withoutSuffix || isFuture) { + return result + (plural(number) ? 'minúty' : 'minút'); + } else { + return result + 'minútami'; + } + case 'h': // an hour / in an hour / an hour ago + return withoutSuffix ? 'hodina' : isFuture ? 'hodinu' : 'hodinou'; + case 'hh': // 9 hours / in 9 hours / 9 hours ago + if (withoutSuffix || isFuture) { + return result + (plural(number) ? 'hodiny' : 'hodín'); + } else { + return result + 'hodinami'; + } + case 'd': // a day / in a day / a day ago + return withoutSuffix || isFuture ? 'deň' : 'dňom'; + case 'dd': // 9 days / in 9 days / 9 days ago + if (withoutSuffix || isFuture) { + return result + (plural(number) ? 'dni' : 'dní'); + } else { + return result + 'dňami'; + } + case 'M': // a month / in a month / a month ago + return withoutSuffix || isFuture ? 'mesiac' : 'mesiacom'; + case 'MM': // 9 months / in 9 months / 9 months ago + if (withoutSuffix || isFuture) { + return result + (plural(number) ? 'mesiace' : 'mesiacov'); + } else { + return result + 'mesiacmi'; + } + case 'y': // a year / in a year / a year ago + return withoutSuffix || isFuture ? 'rok' : 'rokom'; + case 'yy': // 9 years / in 9 years / 9 years ago + if (withoutSuffix || isFuture) { + return result + (plural(number) ? 'roky' : 'rokov'); + } else { + return result + 'rokmi'; + } + } + } + + var sk = moment.defineLocale('sk', { + months: months, + monthsShort: monthsShort, + weekdays: 'nedeľa_pondelok_utorok_streda_štvrtok_piatok_sobota'.split('_'), + weekdaysShort: 'ne_po_ut_st_št_pi_so'.split('_'), + weekdaysMin: 'ne_po_ut_st_št_pi_so'.split('_'), + longDateFormat: { + LT: 'H:mm', + LTS: 'H:mm:ss', + L: 'DD.MM.YYYY', + LL: 'D. MMMM YYYY', + LLL: 'D. MMMM YYYY H:mm', + LLLL: 'dddd D. MMMM YYYY H:mm', + }, + calendar: { + sameDay: '[dnes o] LT', + nextDay: '[zajtra o] LT', + nextWeek: function () { + switch (this.day()) { + case 0: + return '[v nedeľu o] LT'; + case 1: + case 2: + return '[v] dddd [o] LT'; + case 3: + return '[v stredu o] LT'; + case 4: + return '[vo štvrtok o] LT'; + case 5: + return '[v piatok o] LT'; + case 6: + return '[v sobotu o] LT'; + } + }, + lastDay: '[včera o] LT', + lastWeek: function () { + switch (this.day()) { + case 0: + return '[minulú nedeľu o] LT'; + case 1: + case 2: + return '[minulý] dddd [o] LT'; + case 3: + return '[minulú stredu o] LT'; + case 4: + case 5: + return '[minulý] dddd [o] LT'; + case 6: + return '[minulú sobotu o] LT'; + } + }, + sameElse: 'L', + }, + relativeTime: { + future: 'za %s', + past: 'pred %s', + s: translate, + ss: translate, + m: translate, + mm: translate, + h: translate, + hh: translate, + d: translate, + dd: translate, + M: translate, + MM: translate, + y: translate, + yy: translate, + }, + dayOfMonthOrdinalParse: /\d{1,2}\./, + ordinal: '%d.', + week: { + dow: 1, // Monday is the first day of the week. + doy: 4, // The week that contains Jan 4th is the first week of the year. + }, + }); + + return sk; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/sl.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/sl.js new file mode 100644 index 0000000..38f1210 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/sl.js @@ -0,0 +1,182 @@ +//! moment.js locale configuration +//! locale : Slovenian [sl] +//! author : Robert Sedovšek : https://github.com/sedovsek + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + function processRelativeTime(number, withoutSuffix, key, isFuture) { + var result = number + ' '; + switch (key) { + case 's': + return withoutSuffix || isFuture + ? 'nekaj sekund' + : 'nekaj sekundami'; + case 'ss': + if (number === 1) { + result += withoutSuffix ? 'sekundo' : 'sekundi'; + } else if (number === 2) { + result += withoutSuffix || isFuture ? 'sekundi' : 'sekundah'; + } else if (number < 5) { + result += withoutSuffix || isFuture ? 'sekunde' : 'sekundah'; + } else { + result += 'sekund'; + } + return result; + case 'm': + return withoutSuffix ? 'ena minuta' : 'eno minuto'; + case 'mm': + if (number === 1) { + result += withoutSuffix ? 'minuta' : 'minuto'; + } else if (number === 2) { + result += withoutSuffix || isFuture ? 'minuti' : 'minutama'; + } else if (number < 5) { + result += withoutSuffix || isFuture ? 'minute' : 'minutami'; + } else { + result += withoutSuffix || isFuture ? 'minut' : 'minutami'; + } + return result; + case 'h': + return withoutSuffix ? 'ena ura' : 'eno uro'; + case 'hh': + if (number === 1) { + result += withoutSuffix ? 'ura' : 'uro'; + } else if (number === 2) { + result += withoutSuffix || isFuture ? 'uri' : 'urama'; + } else if (number < 5) { + result += withoutSuffix || isFuture ? 'ure' : 'urami'; + } else { + result += withoutSuffix || isFuture ? 'ur' : 'urami'; + } + return result; + case 'd': + return withoutSuffix || isFuture ? 'en dan' : 'enim dnem'; + case 'dd': + if (number === 1) { + result += withoutSuffix || isFuture ? 'dan' : 'dnem'; + } else if (number === 2) { + result += withoutSuffix || isFuture ? 'dni' : 'dnevoma'; + } else { + result += withoutSuffix || isFuture ? 'dni' : 'dnevi'; + } + return result; + case 'M': + return withoutSuffix || isFuture ? 'en mesec' : 'enim mesecem'; + case 'MM': + if (number === 1) { + result += withoutSuffix || isFuture ? 'mesec' : 'mesecem'; + } else if (number === 2) { + result += withoutSuffix || isFuture ? 'meseca' : 'mesecema'; + } else if (number < 5) { + result += withoutSuffix || isFuture ? 'mesece' : 'meseci'; + } else { + result += withoutSuffix || isFuture ? 'mesecev' : 'meseci'; + } + return result; + case 'y': + return withoutSuffix || isFuture ? 'eno leto' : 'enim letom'; + case 'yy': + if (number === 1) { + result += withoutSuffix || isFuture ? 'leto' : 'letom'; + } else if (number === 2) { + result += withoutSuffix || isFuture ? 'leti' : 'letoma'; + } else if (number < 5) { + result += withoutSuffix || isFuture ? 'leta' : 'leti'; + } else { + result += withoutSuffix || isFuture ? 'let' : 'leti'; + } + return result; + } + } + + var sl = moment.defineLocale('sl', { + months: 'januar_februar_marec_april_maj_junij_julij_avgust_september_oktober_november_december'.split( + '_' + ), + monthsShort: + 'jan._feb._mar._apr._maj._jun._jul._avg._sep._okt._nov._dec.'.split( + '_' + ), + monthsParseExact: true, + weekdays: 'nedelja_ponedeljek_torek_sreda_četrtek_petek_sobota'.split('_'), + weekdaysShort: 'ned._pon._tor._sre._čet._pet._sob.'.split('_'), + weekdaysMin: 'ne_po_to_sr_če_pe_so'.split('_'), + weekdaysParseExact: true, + longDateFormat: { + LT: 'H:mm', + LTS: 'H:mm:ss', + L: 'DD. MM. YYYY', + LL: 'D. MMMM YYYY', + LLL: 'D. MMMM YYYY H:mm', + LLLL: 'dddd, D. MMMM YYYY H:mm', + }, + calendar: { + sameDay: '[danes ob] LT', + nextDay: '[jutri ob] LT', + + nextWeek: function () { + switch (this.day()) { + case 0: + return '[v] [nedeljo] [ob] LT'; + case 3: + return '[v] [sredo] [ob] LT'; + case 6: + return '[v] [soboto] [ob] LT'; + case 1: + case 2: + case 4: + case 5: + return '[v] dddd [ob] LT'; + } + }, + lastDay: '[včeraj ob] LT', + lastWeek: function () { + switch (this.day()) { + case 0: + return '[prejšnjo] [nedeljo] [ob] LT'; + case 3: + return '[prejšnjo] [sredo] [ob] LT'; + case 6: + return '[prejšnjo] [soboto] [ob] LT'; + case 1: + case 2: + case 4: + case 5: + return '[prejšnji] dddd [ob] LT'; + } + }, + sameElse: 'L', + }, + relativeTime: { + future: 'čez %s', + past: 'pred %s', + s: processRelativeTime, + ss: processRelativeTime, + m: processRelativeTime, + mm: processRelativeTime, + h: processRelativeTime, + hh: processRelativeTime, + d: processRelativeTime, + dd: processRelativeTime, + M: processRelativeTime, + MM: processRelativeTime, + y: processRelativeTime, + yy: processRelativeTime, + }, + dayOfMonthOrdinalParse: /\d{1,2}\./, + ordinal: '%d.', + week: { + dow: 1, // Monday is the first day of the week. + doy: 7, // The week that contains Jan 7th is the first week of the year. + }, + }); + + return sl; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/sq.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/sq.js new file mode 100644 index 0000000..154e3d6 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/sq.js @@ -0,0 +1,76 @@ +//! moment.js locale configuration +//! locale : Albanian [sq] +//! author : Flakërim Ismani : https://github.com/flakerimi +//! author : Menelion Elensúle : https://github.com/Oire +//! author : Oerd Cukalla : https://github.com/oerd + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var sq = moment.defineLocale('sq', { + months: 'Janar_Shkurt_Mars_Prill_Maj_Qershor_Korrik_Gusht_Shtator_Tetor_Nëntor_Dhjetor'.split( + '_' + ), + monthsShort: 'Jan_Shk_Mar_Pri_Maj_Qer_Kor_Gus_Sht_Tet_Nën_Dhj'.split('_'), + weekdays: 'E Diel_E Hënë_E Martë_E Mërkurë_E Enjte_E Premte_E Shtunë'.split( + '_' + ), + weekdaysShort: 'Die_Hën_Mar_Mër_Enj_Pre_Sht'.split('_'), + weekdaysMin: 'D_H_Ma_Më_E_P_Sh'.split('_'), + weekdaysParseExact: true, + meridiemParse: /PD|MD/, + isPM: function (input) { + return input.charAt(0) === 'M'; + }, + meridiem: function (hours, minutes, isLower) { + return hours < 12 ? 'PD' : 'MD'; + }, + longDateFormat: { + LT: 'HH:mm', + LTS: 'HH:mm:ss', + L: 'DD/MM/YYYY', + LL: 'D MMMM YYYY', + LLL: 'D MMMM YYYY HH:mm', + LLLL: 'dddd, D MMMM YYYY HH:mm', + }, + calendar: { + sameDay: '[Sot në] LT', + nextDay: '[Nesër në] LT', + nextWeek: 'dddd [në] LT', + lastDay: '[Dje në] LT', + lastWeek: 'dddd [e kaluar në] LT', + sameElse: 'L', + }, + relativeTime: { + future: 'në %s', + past: '%s më parë', + s: 'disa sekonda', + ss: '%d sekonda', + m: 'një minutë', + mm: '%d minuta', + h: 'një orë', + hh: '%d orë', + d: 'një ditë', + dd: '%d ditë', + M: 'një muaj', + MM: '%d muaj', + y: 'një vit', + yy: '%d vite', + }, + dayOfMonthOrdinalParse: /\d{1,2}\./, + ordinal: '%d.', + week: { + dow: 1, // Monday is the first day of the week. + doy: 4, // The week that contains Jan 4th is the first week of the year. + }, + }); + + return sq; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/sr-cyrl.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/sr-cyrl.js new file mode 100644 index 0000000..9da10fa --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/sr-cyrl.js @@ -0,0 +1,138 @@ +//! moment.js locale configuration +//! locale : Serbian Cyrillic [sr-cyrl] +//! author : Milan Janačković : https://github.com/milan-j +//! author : Stefan Crnjaković : https://github.com/crnjakovic + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var translator = { + words: { + //Different grammatical cases + ss: ['секунда', 'секунде', 'секунди'], + m: ['један минут', 'једног минута'], + mm: ['минут', 'минута', 'минута'], + h: ['један сат', 'једног сата'], + hh: ['сат', 'сата', 'сати'], + d: ['један дан', 'једног дана'], + dd: ['дан', 'дана', 'дана'], + M: ['један месец', 'једног месеца'], + MM: ['месец', 'месеца', 'месеци'], + y: ['једну годину', 'једне године'], + yy: ['годину', 'године', 'година'], + }, + correctGrammaticalCase: function (number, wordKey) { + if ( + number % 10 >= 1 && + number % 10 <= 4 && + (number % 100 < 10 || number % 100 >= 20) + ) { + return number % 10 === 1 ? wordKey[0] : wordKey[1]; + } + return wordKey[2]; + }, + translate: function (number, withoutSuffix, key, isFuture) { + var wordKey = translator.words[key], + word; + + if (key.length === 1) { + // Nominativ + if (key === 'y' && withoutSuffix) return 'једна година'; + return isFuture || withoutSuffix ? wordKey[0] : wordKey[1]; + } + + word = translator.correctGrammaticalCase(number, wordKey); + // Nominativ + if (key === 'yy' && withoutSuffix && word === 'годину') { + return number + ' година'; + } + + return number + ' ' + word; + }, + }; + + var srCyrl = moment.defineLocale('sr-cyrl', { + months: 'јануар_фебруар_март_април_мај_јун_јул_август_септембар_октобар_новембар_децембар'.split( + '_' + ), + monthsShort: + 'јан._феб._мар._апр._мај_јун_јул_авг._сеп._окт._нов._дец.'.split('_'), + monthsParseExact: true, + weekdays: 'недеља_понедељак_уторак_среда_четвртак_петак_субота'.split('_'), + weekdaysShort: 'нед._пон._уто._сре._чет._пет._суб.'.split('_'), + weekdaysMin: 'не_по_ут_ср_че_пе_су'.split('_'), + weekdaysParseExact: true, + longDateFormat: { + LT: 'H:mm', + LTS: 'H:mm:ss', + L: 'D. M. YYYY.', + LL: 'D. MMMM YYYY.', + LLL: 'D. MMMM YYYY. H:mm', + LLLL: 'dddd, D. MMMM YYYY. H:mm', + }, + calendar: { + sameDay: '[данас у] LT', + nextDay: '[сутра у] LT', + nextWeek: function () { + switch (this.day()) { + case 0: + return '[у] [недељу] [у] LT'; + case 3: + return '[у] [среду] [у] LT'; + case 6: + return '[у] [суботу] [у] LT'; + case 1: + case 2: + case 4: + case 5: + return '[у] dddd [у] LT'; + } + }, + lastDay: '[јуче у] LT', + lastWeek: function () { + var lastWeekDays = [ + '[прошле] [недеље] [у] LT', + '[прошлог] [понедељка] [у] LT', + '[прошлог] [уторка] [у] LT', + '[прошле] [среде] [у] LT', + '[прошлог] [четвртка] [у] LT', + '[прошлог] [петка] [у] LT', + '[прошле] [суботе] [у] LT', + ]; + return lastWeekDays[this.day()]; + }, + sameElse: 'L', + }, + relativeTime: { + future: 'за %s', + past: 'пре %s', + s: 'неколико секунди', + ss: translator.translate, + m: translator.translate, + mm: translator.translate, + h: translator.translate, + hh: translator.translate, + d: translator.translate, + dd: translator.translate, + M: translator.translate, + MM: translator.translate, + y: translator.translate, + yy: translator.translate, + }, + dayOfMonthOrdinalParse: /\d{1,2}\./, + ordinal: '%d.', + week: { + dow: 1, // Monday is the first day of the week. + doy: 7, // The week that contains Jan 1st is the first week of the year. + }, + }); + + return srCyrl; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/sr.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/sr.js new file mode 100644 index 0000000..8f53e7c --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/sr.js @@ -0,0 +1,140 @@ +//! moment.js locale configuration +//! locale : Serbian [sr] +//! author : Milan Janačković : https://github.com/milan-j +//! author : Stefan Crnjaković : https://github.com/crnjakovic + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var translator = { + words: { + //Different grammatical cases + ss: ['sekunda', 'sekunde', 'sekundi'], + m: ['jedan minut', 'jednog minuta'], + mm: ['minut', 'minuta', 'minuta'], + h: ['jedan sat', 'jednog sata'], + hh: ['sat', 'sata', 'sati'], + d: ['jedan dan', 'jednog dana'], + dd: ['dan', 'dana', 'dana'], + M: ['jedan mesec', 'jednog meseca'], + MM: ['mesec', 'meseca', 'meseci'], + y: ['jednu godinu', 'jedne godine'], + yy: ['godinu', 'godine', 'godina'], + }, + correctGrammaticalCase: function (number, wordKey) { + if ( + number % 10 >= 1 && + number % 10 <= 4 && + (number % 100 < 10 || number % 100 >= 20) + ) { + return number % 10 === 1 ? wordKey[0] : wordKey[1]; + } + return wordKey[2]; + }, + translate: function (number, withoutSuffix, key, isFuture) { + var wordKey = translator.words[key], + word; + + if (key.length === 1) { + // Nominativ + if (key === 'y' && withoutSuffix) return 'jedna godina'; + return isFuture || withoutSuffix ? wordKey[0] : wordKey[1]; + } + + word = translator.correctGrammaticalCase(number, wordKey); + // Nominativ + if (key === 'yy' && withoutSuffix && word === 'godinu') { + return number + ' godina'; + } + + return number + ' ' + word; + }, + }; + + var sr = moment.defineLocale('sr', { + months: 'januar_februar_mart_april_maj_jun_jul_avgust_septembar_oktobar_novembar_decembar'.split( + '_' + ), + monthsShort: + 'jan._feb._mar._apr._maj_jun_jul_avg._sep._okt._nov._dec.'.split('_'), + monthsParseExact: true, + weekdays: 'nedelja_ponedeljak_utorak_sreda_četvrtak_petak_subota'.split( + '_' + ), + weekdaysShort: 'ned._pon._uto._sre._čet._pet._sub.'.split('_'), + weekdaysMin: 'ne_po_ut_sr_če_pe_su'.split('_'), + weekdaysParseExact: true, + longDateFormat: { + LT: 'H:mm', + LTS: 'H:mm:ss', + L: 'D. M. YYYY.', + LL: 'D. MMMM YYYY.', + LLL: 'D. MMMM YYYY. H:mm', + LLLL: 'dddd, D. MMMM YYYY. H:mm', + }, + calendar: { + sameDay: '[danas u] LT', + nextDay: '[sutra u] LT', + nextWeek: function () { + switch (this.day()) { + case 0: + return '[u] [nedelju] [u] LT'; + case 3: + return '[u] [sredu] [u] LT'; + case 6: + return '[u] [subotu] [u] LT'; + case 1: + case 2: + case 4: + case 5: + return '[u] dddd [u] LT'; + } + }, + lastDay: '[juče u] LT', + lastWeek: function () { + var lastWeekDays = [ + '[prošle] [nedelje] [u] LT', + '[prošlog] [ponedeljka] [u] LT', + '[prošlog] [utorka] [u] LT', + '[prošle] [srede] [u] LT', + '[prošlog] [četvrtka] [u] LT', + '[prošlog] [petka] [u] LT', + '[prošle] [subote] [u] LT', + ]; + return lastWeekDays[this.day()]; + }, + sameElse: 'L', + }, + relativeTime: { + future: 'za %s', + past: 'pre %s', + s: 'nekoliko sekundi', + ss: translator.translate, + m: translator.translate, + mm: translator.translate, + h: translator.translate, + hh: translator.translate, + d: translator.translate, + dd: translator.translate, + M: translator.translate, + MM: translator.translate, + y: translator.translate, + yy: translator.translate, + }, + dayOfMonthOrdinalParse: /\d{1,2}\./, + ordinal: '%d.', + week: { + dow: 1, // Monday is the first day of the week. + doy: 7, // The week that contains Jan 7th is the first week of the year. + }, + }); + + return sr; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/ss.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/ss.js new file mode 100644 index 0000000..ce8a657 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/ss.js @@ -0,0 +1,95 @@ +//! moment.js locale configuration +//! locale : siSwati [ss] +//! author : Nicolai Davies : https://github.com/nicolaidavies + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var ss = moment.defineLocale('ss', { + months: "Bhimbidvwane_Indlovana_Indlov'lenkhulu_Mabasa_Inkhwekhweti_Inhlaba_Kholwane_Ingci_Inyoni_Imphala_Lweti_Ingongoni".split( + '_' + ), + monthsShort: 'Bhi_Ina_Inu_Mab_Ink_Inh_Kho_Igc_Iny_Imp_Lwe_Igo'.split('_'), + weekdays: + 'Lisontfo_Umsombuluko_Lesibili_Lesitsatfu_Lesine_Lesihlanu_Umgcibelo'.split( + '_' + ), + weekdaysShort: 'Lis_Umb_Lsb_Les_Lsi_Lsh_Umg'.split('_'), + weekdaysMin: 'Li_Us_Lb_Lt_Ls_Lh_Ug'.split('_'), + weekdaysParseExact: true, + longDateFormat: { + LT: 'h:mm A', + LTS: 'h:mm:ss A', + L: 'DD/MM/YYYY', + LL: 'D MMMM YYYY', + LLL: 'D MMMM YYYY h:mm A', + LLLL: 'dddd, D MMMM YYYY h:mm A', + }, + calendar: { + sameDay: '[Namuhla nga] LT', + nextDay: '[Kusasa nga] LT', + nextWeek: 'dddd [nga] LT', + lastDay: '[Itolo nga] LT', + lastWeek: 'dddd [leliphelile] [nga] LT', + sameElse: 'L', + }, + relativeTime: { + future: 'nga %s', + past: 'wenteka nga %s', + s: 'emizuzwana lomcane', + ss: '%d mzuzwana', + m: 'umzuzu', + mm: '%d emizuzu', + h: 'lihora', + hh: '%d emahora', + d: 'lilanga', + dd: '%d emalanga', + M: 'inyanga', + MM: '%d tinyanga', + y: 'umnyaka', + yy: '%d iminyaka', + }, + meridiemParse: /ekuseni|emini|entsambama|ebusuku/, + meridiem: function (hours, minutes, isLower) { + if (hours < 11) { + return 'ekuseni'; + } else if (hours < 15) { + return 'emini'; + } else if (hours < 19) { + return 'entsambama'; + } else { + return 'ebusuku'; + } + }, + meridiemHour: function (hour, meridiem) { + if (hour === 12) { + hour = 0; + } + if (meridiem === 'ekuseni') { + return hour; + } else if (meridiem === 'emini') { + return hour >= 11 ? hour : hour + 12; + } else if (meridiem === 'entsambama' || meridiem === 'ebusuku') { + if (hour === 0) { + return 0; + } + return hour + 12; + } + }, + dayOfMonthOrdinalParse: /\d{1,2}/, + ordinal: '%d', + week: { + dow: 1, // Monday is the first day of the week. + doy: 4, // The week that contains Jan 4th is the first week of the year. + }, + }); + + return ss; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/sv.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/sv.js new file mode 100644 index 0000000..90fe441 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/sv.js @@ -0,0 +1,79 @@ +//! moment.js locale configuration +//! locale : Swedish [sv] +//! author : Jens Alm : https://github.com/ulmus + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var sv = moment.defineLocale('sv', { + months: 'januari_februari_mars_april_maj_juni_juli_augusti_september_oktober_november_december'.split( + '_' + ), + monthsShort: 'jan_feb_mar_apr_maj_jun_jul_aug_sep_okt_nov_dec'.split('_'), + weekdays: 'söndag_måndag_tisdag_onsdag_torsdag_fredag_lördag'.split('_'), + weekdaysShort: 'sön_mån_tis_ons_tor_fre_lör'.split('_'), + weekdaysMin: 'sö_må_ti_on_to_fr_lö'.split('_'), + longDateFormat: { + LT: 'HH:mm', + LTS: 'HH:mm:ss', + L: 'YYYY-MM-DD', + LL: 'D MMMM YYYY', + LLL: 'D MMMM YYYY [kl.] HH:mm', + LLLL: 'dddd D MMMM YYYY [kl.] HH:mm', + lll: 'D MMM YYYY HH:mm', + llll: 'ddd D MMM YYYY HH:mm', + }, + calendar: { + sameDay: '[Idag] LT', + nextDay: '[Imorgon] LT', + lastDay: '[Igår] LT', + nextWeek: '[På] dddd LT', + lastWeek: '[I] dddd[s] LT', + sameElse: 'L', + }, + relativeTime: { + future: 'om %s', + past: 'för %s sedan', + s: 'några sekunder', + ss: '%d sekunder', + m: 'en minut', + mm: '%d minuter', + h: 'en timme', + hh: '%d timmar', + d: 'en dag', + dd: '%d dagar', + M: 'en månad', + MM: '%d månader', + y: 'ett år', + yy: '%d år', + }, + dayOfMonthOrdinalParse: /\d{1,2}(\:e|\:a)/, + ordinal: function (number) { + var b = number % 10, + output = + ~~((number % 100) / 10) === 1 + ? ':e' + : b === 1 + ? ':a' + : b === 2 + ? ':a' + : b === 3 + ? ':e' + : ':e'; + return number + output; + }, + week: { + dow: 1, // Monday is the first day of the week. + doy: 4, // The week that contains Jan 4th is the first week of the year. + }, + }); + + return sv; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/sw.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/sw.js new file mode 100644 index 0000000..1a5ac64 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/sw.js @@ -0,0 +1,66 @@ +//! moment.js locale configuration +//! locale : Swahili [sw] +//! author : Fahad Kassim : https://github.com/fadsel + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var sw = moment.defineLocale('sw', { + months: 'Januari_Februari_Machi_Aprili_Mei_Juni_Julai_Agosti_Septemba_Oktoba_Novemba_Desemba'.split( + '_' + ), + monthsShort: 'Jan_Feb_Mac_Apr_Mei_Jun_Jul_Ago_Sep_Okt_Nov_Des'.split('_'), + weekdays: + 'Jumapili_Jumatatu_Jumanne_Jumatano_Alhamisi_Ijumaa_Jumamosi'.split( + '_' + ), + weekdaysShort: 'Jpl_Jtat_Jnne_Jtan_Alh_Ijm_Jmos'.split('_'), + weekdaysMin: 'J2_J3_J4_J5_Al_Ij_J1'.split('_'), + weekdaysParseExact: true, + longDateFormat: { + LT: 'hh:mm A', + LTS: 'HH:mm:ss', + L: 'DD.MM.YYYY', + LL: 'D MMMM YYYY', + LLL: 'D MMMM YYYY HH:mm', + LLLL: 'dddd, D MMMM YYYY HH:mm', + }, + calendar: { + sameDay: '[leo saa] LT', + nextDay: '[kesho saa] LT', + nextWeek: '[wiki ijayo] dddd [saat] LT', + lastDay: '[jana] LT', + lastWeek: '[wiki iliyopita] dddd [saat] LT', + sameElse: 'L', + }, + relativeTime: { + future: '%s baadaye', + past: 'tokea %s', + s: 'hivi punde', + ss: 'sekunde %d', + m: 'dakika moja', + mm: 'dakika %d', + h: 'saa limoja', + hh: 'masaa %d', + d: 'siku moja', + dd: 'siku %d', + M: 'mwezi mmoja', + MM: 'miezi %d', + y: 'mwaka mmoja', + yy: 'miaka %d', + }, + week: { + dow: 1, // Monday is the first day of the week. + doy: 7, // The week that contains Jan 7th is the first week of the year. + }, + }); + + return sw; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/ta.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/ta.js new file mode 100644 index 0000000..0f28832 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/ta.js @@ -0,0 +1,142 @@ +//! moment.js locale configuration +//! locale : Tamil [ta] +//! author : Arjunkumar Krishnamoorthy : https://github.com/tk120404 + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var symbolMap = { + 1: '௧', + 2: '௨', + 3: '௩', + 4: '௪', + 5: '௫', + 6: '௬', + 7: '௭', + 8: '௮', + 9: '௯', + 0: '௦', + }, + numberMap = { + '௧': '1', + '௨': '2', + '௩': '3', + '௪': '4', + '௫': '5', + '௬': '6', + '௭': '7', + '௮': '8', + '௯': '9', + '௦': '0', + }; + + var ta = moment.defineLocale('ta', { + months: 'ஜனவரி_பிப்ரவரி_மார்ச்_ஏப்ரல்_மே_ஜூன்_ஜூலை_ஆகஸ்ட்_செப்டெம்பர்_அக்டோபர்_நவம்பர்_டிசம்பர்'.split( + '_' + ), + monthsShort: + 'ஜனவரி_பிப்ரவரி_மார்ச்_ஏப்ரல்_மே_ஜூன்_ஜூலை_ஆகஸ்ட்_செப்டெம்பர்_அக்டோபர்_நவம்பர்_டிசம்பர்'.split( + '_' + ), + weekdays: + 'ஞாயிற்றுக்கிழமை_திங்கட்கிழமை_செவ்வாய்கிழமை_புதன்கிழமை_வியாழக்கிழமை_வெள்ளிக்கிழமை_சனிக்கிழமை'.split( + '_' + ), + weekdaysShort: 'ஞாயிறு_திங்கள்_செவ்வாய்_புதன்_வியாழன்_வெள்ளி_சனி'.split( + '_' + ), + weekdaysMin: 'ஞா_தி_செ_பு_வி_வெ_ச'.split('_'), + longDateFormat: { + LT: 'HH:mm', + LTS: 'HH:mm:ss', + L: 'DD/MM/YYYY', + LL: 'D MMMM YYYY', + LLL: 'D MMMM YYYY, HH:mm', + LLLL: 'dddd, D MMMM YYYY, HH:mm', + }, + calendar: { + sameDay: '[இன்று] LT', + nextDay: '[நாளை] LT', + nextWeek: 'dddd, LT', + lastDay: '[நேற்று] LT', + lastWeek: '[கடந்த வாரம்] dddd, LT', + sameElse: 'L', + }, + relativeTime: { + future: '%s இல்', + past: '%s முன்', + s: 'ஒரு சில விநாடிகள்', + ss: '%d விநாடிகள்', + m: 'ஒரு நிமிடம்', + mm: '%d நிமிடங்கள்', + h: 'ஒரு மணி நேரம்', + hh: '%d மணி நேரம்', + d: 'ஒரு நாள்', + dd: '%d நாட்கள்', + M: 'ஒரு மாதம்', + MM: '%d மாதங்கள்', + y: 'ஒரு வருடம்', + yy: '%d ஆண்டுகள்', + }, + dayOfMonthOrdinalParse: /\d{1,2}வது/, + ordinal: function (number) { + return number + 'வது'; + }, + preparse: function (string) { + return string.replace(/[௧௨௩௪௫௬௭௮௯௦]/g, function (match) { + return numberMap[match]; + }); + }, + postformat: function (string) { + return string.replace(/\d/g, function (match) { + return symbolMap[match]; + }); + }, + // refer http://ta.wikipedia.org/s/1er1 + meridiemParse: /யாமம்|வைகறை|காலை|நண்பகல்|எற்பாடு|மாலை/, + meridiem: function (hour, minute, isLower) { + if (hour < 2) { + return ' யாமம்'; + } else if (hour < 6) { + return ' வைகறை'; // வைகறை + } else if (hour < 10) { + return ' காலை'; // காலை + } else if (hour < 14) { + return ' நண்பகல்'; // நண்பகல் + } else if (hour < 18) { + return ' எற்பாடு'; // எற்பாடு + } else if (hour < 22) { + return ' மாலை'; // மாலை + } else { + return ' யாமம்'; + } + }, + meridiemHour: function (hour, meridiem) { + if (hour === 12) { + hour = 0; + } + if (meridiem === 'யாமம்') { + return hour < 2 ? hour : hour + 12; + } else if (meridiem === 'வைகறை' || meridiem === 'காலை') { + return hour; + } else if (meridiem === 'நண்பகல்') { + return hour >= 10 ? hour : hour + 12; + } else { + return hour + 12; + } + }, + week: { + dow: 0, // Sunday is the first day of the week. + doy: 6, // The week that contains Jan 6th is the first week of the year. + }, + }); + + return ta; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/te.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/te.js new file mode 100644 index 0000000..85bab7e --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/te.js @@ -0,0 +1,99 @@ +//! moment.js locale configuration +//! locale : Telugu [te] +//! author : Krishna Chaitanya Thota : https://github.com/kcthota + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var te = moment.defineLocale('te', { + months: 'జనవరి_ఫిబ్రవరి_మార్చి_ఏప్రిల్_మే_జూన్_జులై_ఆగస్టు_సెప్టెంబర్_అక్టోబర్_నవంబర్_డిసెంబర్'.split( + '_' + ), + monthsShort: + 'జన._ఫిబ్ర._మార్చి_ఏప్రి._మే_జూన్_జులై_ఆగ._సెప్._అక్టో._నవ._డిసె.'.split( + '_' + ), + monthsParseExact: true, + weekdays: + 'ఆదివారం_సోమవారం_మంగళవారం_బుధవారం_గురువారం_శుక్రవారం_శనివారం'.split( + '_' + ), + weekdaysShort: 'ఆది_సోమ_మంగళ_బుధ_గురు_శుక్ర_శని'.split('_'), + weekdaysMin: 'ఆ_సో_మం_బు_గు_శు_శ'.split('_'), + longDateFormat: { + LT: 'A h:mm', + LTS: 'A h:mm:ss', + L: 'DD/MM/YYYY', + LL: 'D MMMM YYYY', + LLL: 'D MMMM YYYY, A h:mm', + LLLL: 'dddd, D MMMM YYYY, A h:mm', + }, + calendar: { + sameDay: '[నేడు] LT', + nextDay: '[రేపు] LT', + nextWeek: 'dddd, LT', + lastDay: '[నిన్న] LT', + lastWeek: '[గత] dddd, LT', + sameElse: 'L', + }, + relativeTime: { + future: '%s లో', + past: '%s క్రితం', + s: 'కొన్ని క్షణాలు', + ss: '%d సెకన్లు', + m: 'ఒక నిమిషం', + mm: '%d నిమిషాలు', + h: 'ఒక గంట', + hh: '%d గంటలు', + d: 'ఒక రోజు', + dd: '%d రోజులు', + M: 'ఒక నెల', + MM: '%d నెలలు', + y: 'ఒక సంవత్సరం', + yy: '%d సంవత్సరాలు', + }, + dayOfMonthOrdinalParse: /\d{1,2}వ/, + ordinal: '%dవ', + meridiemParse: /రాత్రి|ఉదయం|మధ్యాహ్నం|సాయంత్రం/, + meridiemHour: function (hour, meridiem) { + if (hour === 12) { + hour = 0; + } + if (meridiem === 'రాత్రి') { + return hour < 4 ? hour : hour + 12; + } else if (meridiem === 'ఉదయం') { + return hour; + } else if (meridiem === 'మధ్యాహ్నం') { + return hour >= 10 ? hour : hour + 12; + } else if (meridiem === 'సాయంత్రం') { + return hour + 12; + } + }, + meridiem: function (hour, minute, isLower) { + if (hour < 4) { + return 'రాత్రి'; + } else if (hour < 10) { + return 'ఉదయం'; + } else if (hour < 17) { + return 'మధ్యాహ్నం'; + } else if (hour < 20) { + return 'సాయంత్రం'; + } else { + return 'రాత్రి'; + } + }, + week: { + dow: 0, // Sunday is the first day of the week. + doy: 6, // The week that contains Jan 6th is the first week of the year. + }, + }); + + return te; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/tet.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/tet.js new file mode 100644 index 0000000..931384a --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/tet.js @@ -0,0 +1,79 @@ +//! moment.js locale configuration +//! locale : Tetun Dili (East Timor) [tet] +//! author : Joshua Brooks : https://github.com/joshbrooks +//! author : Onorio De J. Afonso : https://github.com/marobo +//! author : Sonia Simoes : https://github.com/soniasimoes + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var tet = moment.defineLocale('tet', { + months: 'Janeiru_Fevereiru_Marsu_Abril_Maiu_Juñu_Jullu_Agustu_Setembru_Outubru_Novembru_Dezembru'.split( + '_' + ), + monthsShort: 'Jan_Fev_Mar_Abr_Mai_Jun_Jul_Ago_Set_Out_Nov_Dez'.split('_'), + weekdays: 'Domingu_Segunda_Tersa_Kuarta_Kinta_Sesta_Sabadu'.split('_'), + weekdaysShort: 'Dom_Seg_Ters_Kua_Kint_Sest_Sab'.split('_'), + weekdaysMin: 'Do_Seg_Te_Ku_Ki_Ses_Sa'.split('_'), + longDateFormat: { + LT: 'HH:mm', + LTS: 'HH:mm:ss', + L: 'DD/MM/YYYY', + LL: 'D MMMM YYYY', + LLL: 'D MMMM YYYY HH:mm', + LLLL: 'dddd, D MMMM YYYY HH:mm', + }, + calendar: { + sameDay: '[Ohin iha] LT', + nextDay: '[Aban iha] LT', + nextWeek: 'dddd [iha] LT', + lastDay: '[Horiseik iha] LT', + lastWeek: 'dddd [semana kotuk] [iha] LT', + sameElse: 'L', + }, + relativeTime: { + future: 'iha %s', + past: '%s liuba', + s: 'segundu balun', + ss: 'segundu %d', + m: 'minutu ida', + mm: 'minutu %d', + h: 'oras ida', + hh: 'oras %d', + d: 'loron ida', + dd: 'loron %d', + M: 'fulan ida', + MM: 'fulan %d', + y: 'tinan ida', + yy: 'tinan %d', + }, + dayOfMonthOrdinalParse: /\d{1,2}(st|nd|rd|th)/, + ordinal: function (number) { + var b = number % 10, + output = + ~~((number % 100) / 10) === 1 + ? 'th' + : b === 1 + ? 'st' + : b === 2 + ? 'nd' + : b === 3 + ? 'rd' + : 'th'; + return number + output; + }, + week: { + dow: 1, // Monday is the first day of the week. + doy: 4, // The week that contains Jan 4th is the first week of the year. + }, + }); + + return tet; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/tg.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/tg.js new file mode 100644 index 0000000..bde72ad --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/tg.js @@ -0,0 +1,128 @@ +//! moment.js locale configuration +//! locale : Tajik [tg] +//! author : Orif N. Jr. : https://github.com/orif-jr + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var suffixes = { + 0: '-ум', + 1: '-ум', + 2: '-юм', + 3: '-юм', + 4: '-ум', + 5: '-ум', + 6: '-ум', + 7: '-ум', + 8: '-ум', + 9: '-ум', + 10: '-ум', + 12: '-ум', + 13: '-ум', + 20: '-ум', + 30: '-юм', + 40: '-ум', + 50: '-ум', + 60: '-ум', + 70: '-ум', + 80: '-ум', + 90: '-ум', + 100: '-ум', + }; + + var tg = moment.defineLocale('tg', { + months: { + format: 'январи_феврали_марти_апрели_майи_июни_июли_августи_сентябри_октябри_ноябри_декабри'.split( + '_' + ), + standalone: + 'январ_феврал_март_апрел_май_июн_июл_август_сентябр_октябр_ноябр_декабр'.split( + '_' + ), + }, + monthsShort: 'янв_фев_мар_апр_май_июн_июл_авг_сен_окт_ноя_дек'.split('_'), + weekdays: 'якшанбе_душанбе_сешанбе_чоршанбе_панҷшанбе_ҷумъа_шанбе'.split( + '_' + ), + weekdaysShort: 'яшб_дшб_сшб_чшб_пшб_ҷум_шнб'.split('_'), + weekdaysMin: 'яш_дш_сш_чш_пш_ҷм_шб'.split('_'), + longDateFormat: { + LT: 'HH:mm', + LTS: 'HH:mm:ss', + L: 'DD.MM.YYYY', + LL: 'D MMMM YYYY', + LLL: 'D MMMM YYYY HH:mm', + LLLL: 'dddd, D MMMM YYYY HH:mm', + }, + calendar: { + sameDay: '[Имрӯз соати] LT', + nextDay: '[Фардо соати] LT', + lastDay: '[Дирӯз соати] LT', + nextWeek: 'dddd[и] [ҳафтаи оянда соати] LT', + lastWeek: 'dddd[и] [ҳафтаи гузашта соати] LT', + sameElse: 'L', + }, + relativeTime: { + future: 'баъди %s', + past: '%s пеш', + s: 'якчанд сония', + m: 'як дақиқа', + mm: '%d дақиқа', + h: 'як соат', + hh: '%d соат', + d: 'як рӯз', + dd: '%d рӯз', + M: 'як моҳ', + MM: '%d моҳ', + y: 'як сол', + yy: '%d сол', + }, + meridiemParse: /шаб|субҳ|рӯз|бегоҳ/, + meridiemHour: function (hour, meridiem) { + if (hour === 12) { + hour = 0; + } + if (meridiem === 'шаб') { + return hour < 4 ? hour : hour + 12; + } else if (meridiem === 'субҳ') { + return hour; + } else if (meridiem === 'рӯз') { + return hour >= 11 ? hour : hour + 12; + } else if (meridiem === 'бегоҳ') { + return hour + 12; + } + }, + meridiem: function (hour, minute, isLower) { + if (hour < 4) { + return 'шаб'; + } else if (hour < 11) { + return 'субҳ'; + } else if (hour < 16) { + return 'рӯз'; + } else if (hour < 19) { + return 'бегоҳ'; + } else { + return 'шаб'; + } + }, + dayOfMonthOrdinalParse: /\d{1,2}-(ум|юм)/, + ordinal: function (number) { + var a = number % 10, + b = number >= 100 ? 100 : null; + return number + (suffixes[number] || suffixes[a] || suffixes[b]); + }, + week: { + dow: 1, // Monday is the first day of the week. + doy: 7, // The week that contains Jan 1th is the first week of the year. + }, + }); + + return tg; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/th.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/th.js new file mode 100644 index 0000000..f83bad9 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/th.js @@ -0,0 +1,76 @@ +//! moment.js locale configuration +//! locale : Thai [th] +//! author : Kridsada Thanabulpong : https://github.com/sirn + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var th = moment.defineLocale('th', { + months: 'มกราคม_กุมภาพันธ์_มีนาคม_เมษายน_พฤษภาคม_มิถุนายน_กรกฎาคม_สิงหาคม_กันยายน_ตุลาคม_พฤศจิกายน_ธันวาคม'.split( + '_' + ), + monthsShort: + 'ม.ค._ก.พ._มี.ค._เม.ย._พ.ค._มิ.ย._ก.ค._ส.ค._ก.ย._ต.ค._พ.ย._ธ.ค.'.split( + '_' + ), + monthsParseExact: true, + weekdays: 'อาทิตย์_จันทร์_อังคาร_พุธ_พฤหัสบดี_ศุกร์_เสาร์'.split('_'), + weekdaysShort: 'อาทิตย์_จันทร์_อังคาร_พุธ_พฤหัส_ศุกร์_เสาร์'.split('_'), // yes, three characters difference + weekdaysMin: 'อา._จ._อ._พ._พฤ._ศ._ส.'.split('_'), + weekdaysParseExact: true, + longDateFormat: { + LT: 'H:mm', + LTS: 'H:mm:ss', + L: 'DD/MM/YYYY', + LL: 'D MMMM YYYY', + LLL: 'D MMMM YYYY เวลา H:mm', + LLLL: 'วันddddที่ D MMMM YYYY เวลา H:mm', + }, + meridiemParse: /ก่อนเที่ยง|หลังเที่ยง/, + isPM: function (input) { + return input === 'หลังเที่ยง'; + }, + meridiem: function (hour, minute, isLower) { + if (hour < 12) { + return 'ก่อนเที่ยง'; + } else { + return 'หลังเที่ยง'; + } + }, + calendar: { + sameDay: '[วันนี้ เวลา] LT', + nextDay: '[พรุ่งนี้ เวลา] LT', + nextWeek: 'dddd[หน้า เวลา] LT', + lastDay: '[เมื่อวานนี้ เวลา] LT', + lastWeek: '[วัน]dddd[ที่แล้ว เวลา] LT', + sameElse: 'L', + }, + relativeTime: { + future: 'อีก %s', + past: '%sที่แล้ว', + s: 'ไม่กี่วินาที', + ss: '%d วินาที', + m: '1 นาที', + mm: '%d นาที', + h: '1 ชั่วโมง', + hh: '%d ชั่วโมง', + d: '1 วัน', + dd: '%d วัน', + w: '1 สัปดาห์', + ww: '%d สัปดาห์', + M: '1 เดือน', + MM: '%d เดือน', + y: '1 ปี', + yy: '%d ปี', + }, + }); + + return th; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/tk.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/tk.js new file mode 100644 index 0000000..24d4ede --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/tk.js @@ -0,0 +1,102 @@ +//! moment.js locale configuration +//! locale : Turkmen [tk] +//! author : Atamyrat Abdyrahmanov : https://github.com/atamyratabdy + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var suffixes = { + 1: "'inji", + 5: "'inji", + 8: "'inji", + 70: "'inji", + 80: "'inji", + 2: "'nji", + 7: "'nji", + 20: "'nji", + 50: "'nji", + 3: "'ünji", + 4: "'ünji", + 100: "'ünji", + 6: "'njy", + 9: "'unjy", + 10: "'unjy", + 30: "'unjy", + 60: "'ynjy", + 90: "'ynjy", + }; + + var tk = moment.defineLocale('tk', { + months: 'Ýanwar_Fewral_Mart_Aprel_Maý_Iýun_Iýul_Awgust_Sentýabr_Oktýabr_Noýabr_Dekabr'.split( + '_' + ), + monthsShort: 'Ýan_Few_Mar_Apr_Maý_Iýn_Iýl_Awg_Sen_Okt_Noý_Dek'.split('_'), + weekdays: 'Ýekşenbe_Duşenbe_Sişenbe_Çarşenbe_Penşenbe_Anna_Şenbe'.split( + '_' + ), + weekdaysShort: 'Ýek_Duş_Siş_Çar_Pen_Ann_Şen'.split('_'), + weekdaysMin: 'Ýk_Dş_Sş_Çr_Pn_An_Şn'.split('_'), + longDateFormat: { + LT: 'HH:mm', + LTS: 'HH:mm:ss', + L: 'DD.MM.YYYY', + LL: 'D MMMM YYYY', + LLL: 'D MMMM YYYY HH:mm', + LLLL: 'dddd, D MMMM YYYY HH:mm', + }, + calendar: { + sameDay: '[bugün sagat] LT', + nextDay: '[ertir sagat] LT', + nextWeek: '[indiki] dddd [sagat] LT', + lastDay: '[düýn] LT', + lastWeek: '[geçen] dddd [sagat] LT', + sameElse: 'L', + }, + relativeTime: { + future: '%s soň', + past: '%s öň', + s: 'birnäçe sekunt', + m: 'bir minut', + mm: '%d minut', + h: 'bir sagat', + hh: '%d sagat', + d: 'bir gün', + dd: '%d gün', + M: 'bir aý', + MM: '%d aý', + y: 'bir ýyl', + yy: '%d ýyl', + }, + ordinal: function (number, period) { + switch (period) { + case 'd': + case 'D': + case 'Do': + case 'DD': + return number; + default: + if (number === 0) { + // special case for zero + return number + "'unjy"; + } + var a = number % 10, + b = (number % 100) - a, + c = number >= 100 ? 100 : null; + return number + (suffixes[a] || suffixes[b] || suffixes[c]); + } + }, + week: { + dow: 1, // Monday is the first day of the week. + doy: 7, // The week that contains Jan 7th is the first week of the year. + }, + }); + + return tk; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/tl-ph.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/tl-ph.js new file mode 100644 index 0000000..871b078 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/tl-ph.js @@ -0,0 +1,68 @@ +//! moment.js locale configuration +//! locale : Tagalog (Philippines) [tl-ph] +//! author : Dan Hagman : https://github.com/hagmandan + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var tlPh = moment.defineLocale('tl-ph', { + months: 'Enero_Pebrero_Marso_Abril_Mayo_Hunyo_Hulyo_Agosto_Setyembre_Oktubre_Nobyembre_Disyembre'.split( + '_' + ), + monthsShort: 'Ene_Peb_Mar_Abr_May_Hun_Hul_Ago_Set_Okt_Nob_Dis'.split('_'), + weekdays: 'Linggo_Lunes_Martes_Miyerkules_Huwebes_Biyernes_Sabado'.split( + '_' + ), + weekdaysShort: 'Lin_Lun_Mar_Miy_Huw_Biy_Sab'.split('_'), + weekdaysMin: 'Li_Lu_Ma_Mi_Hu_Bi_Sab'.split('_'), + longDateFormat: { + LT: 'HH:mm', + LTS: 'HH:mm:ss', + L: 'MM/D/YYYY', + LL: 'MMMM D, YYYY', + LLL: 'MMMM D, YYYY HH:mm', + LLLL: 'dddd, MMMM DD, YYYY HH:mm', + }, + calendar: { + sameDay: 'LT [ngayong araw]', + nextDay: '[Bukas ng] LT', + nextWeek: 'LT [sa susunod na] dddd', + lastDay: 'LT [kahapon]', + lastWeek: 'LT [noong nakaraang] dddd', + sameElse: 'L', + }, + relativeTime: { + future: 'sa loob ng %s', + past: '%s ang nakalipas', + s: 'ilang segundo', + ss: '%d segundo', + m: 'isang minuto', + mm: '%d minuto', + h: 'isang oras', + hh: '%d oras', + d: 'isang araw', + dd: '%d araw', + M: 'isang buwan', + MM: '%d buwan', + y: 'isang taon', + yy: '%d taon', + }, + dayOfMonthOrdinalParse: /\d{1,2}/, + ordinal: function (number) { + return number; + }, + week: { + dow: 1, // Monday is the first day of the week. + doy: 4, // The week that contains Jan 4th is the first week of the year. + }, + }); + + return tlPh; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/tlh.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/tlh.js new file mode 100644 index 0000000..ee39f1e --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/tlh.js @@ -0,0 +1,135 @@ +//! moment.js locale configuration +//! locale : Klingon [tlh] +//! author : Dominika Kruk : https://github.com/amaranthrose + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var numbersNouns = 'pagh_wa’_cha’_wej_loS_vagh_jav_Soch_chorgh_Hut'.split('_'); + + function translateFuture(output) { + var time = output; + time = + output.indexOf('jaj') !== -1 + ? time.slice(0, -3) + 'leS' + : output.indexOf('jar') !== -1 + ? time.slice(0, -3) + 'waQ' + : output.indexOf('DIS') !== -1 + ? time.slice(0, -3) + 'nem' + : time + ' pIq'; + return time; + } + + function translatePast(output) { + var time = output; + time = + output.indexOf('jaj') !== -1 + ? time.slice(0, -3) + 'Hu’' + : output.indexOf('jar') !== -1 + ? time.slice(0, -3) + 'wen' + : output.indexOf('DIS') !== -1 + ? time.slice(0, -3) + 'ben' + : time + ' ret'; + return time; + } + + function translate(number, withoutSuffix, string, isFuture) { + var numberNoun = numberAsNoun(number); + switch (string) { + case 'ss': + return numberNoun + ' lup'; + case 'mm': + return numberNoun + ' tup'; + case 'hh': + return numberNoun + ' rep'; + case 'dd': + return numberNoun + ' jaj'; + case 'MM': + return numberNoun + ' jar'; + case 'yy': + return numberNoun + ' DIS'; + } + } + + function numberAsNoun(number) { + var hundred = Math.floor((number % 1000) / 100), + ten = Math.floor((number % 100) / 10), + one = number % 10, + word = ''; + if (hundred > 0) { + word += numbersNouns[hundred] + 'vatlh'; + } + if (ten > 0) { + word += (word !== '' ? ' ' : '') + numbersNouns[ten] + 'maH'; + } + if (one > 0) { + word += (word !== '' ? ' ' : '') + numbersNouns[one]; + } + return word === '' ? 'pagh' : word; + } + + var tlh = moment.defineLocale('tlh', { + months: 'tera’ jar wa’_tera’ jar cha’_tera’ jar wej_tera’ jar loS_tera’ jar vagh_tera’ jar jav_tera’ jar Soch_tera’ jar chorgh_tera’ jar Hut_tera’ jar wa’maH_tera’ jar wa’maH wa’_tera’ jar wa’maH cha’'.split( + '_' + ), + monthsShort: + 'jar wa’_jar cha’_jar wej_jar loS_jar vagh_jar jav_jar Soch_jar chorgh_jar Hut_jar wa’maH_jar wa’maH wa’_jar wa’maH cha’'.split( + '_' + ), + monthsParseExact: true, + weekdays: 'lojmItjaj_DaSjaj_povjaj_ghItlhjaj_loghjaj_buqjaj_ghInjaj'.split( + '_' + ), + weekdaysShort: + 'lojmItjaj_DaSjaj_povjaj_ghItlhjaj_loghjaj_buqjaj_ghInjaj'.split('_'), + weekdaysMin: + 'lojmItjaj_DaSjaj_povjaj_ghItlhjaj_loghjaj_buqjaj_ghInjaj'.split('_'), + longDateFormat: { + LT: 'HH:mm', + LTS: 'HH:mm:ss', + L: 'DD.MM.YYYY', + LL: 'D MMMM YYYY', + LLL: 'D MMMM YYYY HH:mm', + LLLL: 'dddd, D MMMM YYYY HH:mm', + }, + calendar: { + sameDay: '[DaHjaj] LT', + nextDay: '[wa’leS] LT', + nextWeek: 'LLL', + lastDay: '[wa’Hu’] LT', + lastWeek: 'LLL', + sameElse: 'L', + }, + relativeTime: { + future: translateFuture, + past: translatePast, + s: 'puS lup', + ss: translate, + m: 'wa’ tup', + mm: translate, + h: 'wa’ rep', + hh: translate, + d: 'wa’ jaj', + dd: translate, + M: 'wa’ jar', + MM: translate, + y: 'wa’ DIS', + yy: translate, + }, + dayOfMonthOrdinalParse: /\d{1,2}\./, + ordinal: '%d.', + week: { + dow: 1, // Monday is the first day of the week. + doy: 4, // The week that contains Jan 4th is the first week of the year. + }, + }); + + return tlh; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/tr.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/tr.js new file mode 100644 index 0000000..663778e --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/tr.js @@ -0,0 +1,117 @@ +//! moment.js locale configuration +//! locale : Turkish [tr] +//! authors : Erhan Gundogan : https://github.com/erhangundogan, +//! Burak Yiğit Kaya: https://github.com/BYK + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var suffixes = { + 1: "'inci", + 5: "'inci", + 8: "'inci", + 70: "'inci", + 80: "'inci", + 2: "'nci", + 7: "'nci", + 20: "'nci", + 50: "'nci", + 3: "'üncü", + 4: "'üncü", + 100: "'üncü", + 6: "'ncı", + 9: "'uncu", + 10: "'uncu", + 30: "'uncu", + 60: "'ıncı", + 90: "'ıncı", + }; + + var tr = moment.defineLocale('tr', { + months: 'Ocak_Şubat_Mart_Nisan_Mayıs_Haziran_Temmuz_Ağustos_Eylül_Ekim_Kasım_Aralık'.split( + '_' + ), + monthsShort: 'Oca_Şub_Mar_Nis_May_Haz_Tem_Ağu_Eyl_Eki_Kas_Ara'.split('_'), + weekdays: 'Pazar_Pazartesi_Salı_Çarşamba_Perşembe_Cuma_Cumartesi'.split( + '_' + ), + weekdaysShort: 'Paz_Pzt_Sal_Çar_Per_Cum_Cmt'.split('_'), + weekdaysMin: 'Pz_Pt_Sa_Ça_Pe_Cu_Ct'.split('_'), + meridiem: function (hours, minutes, isLower) { + if (hours < 12) { + return isLower ? 'öö' : 'ÖÖ'; + } else { + return isLower ? 'ös' : 'ÖS'; + } + }, + meridiemParse: /öö|ÖÖ|ös|ÖS/, + isPM: function (input) { + return input === 'ös' || input === 'ÖS'; + }, + longDateFormat: { + LT: 'HH:mm', + LTS: 'HH:mm:ss', + L: 'DD.MM.YYYY', + LL: 'D MMMM YYYY', + LLL: 'D MMMM YYYY HH:mm', + LLLL: 'dddd, D MMMM YYYY HH:mm', + }, + calendar: { + sameDay: '[bugün saat] LT', + nextDay: '[yarın saat] LT', + nextWeek: '[gelecek] dddd [saat] LT', + lastDay: '[dün] LT', + lastWeek: '[geçen] dddd [saat] LT', + sameElse: 'L', + }, + relativeTime: { + future: '%s sonra', + past: '%s önce', + s: 'birkaç saniye', + ss: '%d saniye', + m: 'bir dakika', + mm: '%d dakika', + h: 'bir saat', + hh: '%d saat', + d: 'bir gün', + dd: '%d gün', + w: 'bir hafta', + ww: '%d hafta', + M: 'bir ay', + MM: '%d ay', + y: 'bir yıl', + yy: '%d yıl', + }, + ordinal: function (number, period) { + switch (period) { + case 'd': + case 'D': + case 'Do': + case 'DD': + return number; + default: + if (number === 0) { + // special case for zero + return number + "'ıncı"; + } + var a = number % 10, + b = (number % 100) - a, + c = number >= 100 ? 100 : null; + return number + (suffixes[a] || suffixes[b] || suffixes[c]); + } + }, + week: { + dow: 1, // Monday is the first day of the week. + doy: 7, // The week that contains Jan 7th is the first week of the year. + }, + }); + + return tr; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/tzl.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/tzl.js new file mode 100644 index 0000000..5eb1c06 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/tzl.js @@ -0,0 +1,100 @@ +//! moment.js locale configuration +//! locale : Talossan [tzl] +//! author : Robin van der Vliet : https://github.com/robin0van0der0v +//! author : Iustì Canun + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + // After the year there should be a slash and the amount of years since December 26, 1979 in Roman numerals. + // This is currently too difficult (maybe even impossible) to add. + var tzl = moment.defineLocale('tzl', { + months: 'Januar_Fevraglh_Març_Avrïu_Mai_Gün_Julia_Guscht_Setemvar_Listopäts_Noemvar_Zecemvar'.split( + '_' + ), + monthsShort: 'Jan_Fev_Mar_Avr_Mai_Gün_Jul_Gus_Set_Lis_Noe_Zec'.split('_'), + weekdays: 'Súladi_Lúneçi_Maitzi_Márcuri_Xhúadi_Viénerçi_Sáturi'.split('_'), + weekdaysShort: 'Súl_Lún_Mai_Már_Xhú_Vié_Sát'.split('_'), + weekdaysMin: 'Sú_Lú_Ma_Má_Xh_Vi_Sá'.split('_'), + longDateFormat: { + LT: 'HH.mm', + LTS: 'HH.mm.ss', + L: 'DD.MM.YYYY', + LL: 'D. MMMM [dallas] YYYY', + LLL: 'D. MMMM [dallas] YYYY HH.mm', + LLLL: 'dddd, [li] D. MMMM [dallas] YYYY HH.mm', + }, + meridiemParse: /d\'o|d\'a/i, + isPM: function (input) { + return "d'o" === input.toLowerCase(); + }, + meridiem: function (hours, minutes, isLower) { + if (hours > 11) { + return isLower ? "d'o" : "D'O"; + } else { + return isLower ? "d'a" : "D'A"; + } + }, + calendar: { + sameDay: '[oxhi à] LT', + nextDay: '[demà à] LT', + nextWeek: 'dddd [à] LT', + lastDay: '[ieiri à] LT', + lastWeek: '[sür el] dddd [lasteu à] LT', + sameElse: 'L', + }, + relativeTime: { + future: 'osprei %s', + past: 'ja%s', + s: processRelativeTime, + ss: processRelativeTime, + m: processRelativeTime, + mm: processRelativeTime, + h: processRelativeTime, + hh: processRelativeTime, + d: processRelativeTime, + dd: processRelativeTime, + M: processRelativeTime, + MM: processRelativeTime, + y: processRelativeTime, + yy: processRelativeTime, + }, + dayOfMonthOrdinalParse: /\d{1,2}\./, + ordinal: '%d.', + week: { + dow: 1, // Monday is the first day of the week. + doy: 4, // The week that contains Jan 4th is the first week of the year. + }, + }); + + function processRelativeTime(number, withoutSuffix, key, isFuture) { + var format = { + s: ['viensas secunds', "'iensas secunds"], + ss: [number + ' secunds', '' + number + ' secunds'], + m: ["'n míut", "'iens míut"], + mm: [number + ' míuts', '' + number + ' míuts'], + h: ["'n þora", "'iensa þora"], + hh: [number + ' þoras', '' + number + ' þoras'], + d: ["'n ziua", "'iensa ziua"], + dd: [number + ' ziuas', '' + number + ' ziuas'], + M: ["'n mes", "'iens mes"], + MM: [number + ' mesen', '' + number + ' mesen'], + y: ["'n ar", "'iens ar"], + yy: [number + ' ars', '' + number + ' ars'], + }; + return isFuture + ? format[key][0] + : withoutSuffix + ? format[key][0] + : format[key][1]; + } + + return tzl; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/tzm-latn.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/tzm-latn.js new file mode 100644 index 0000000..34425a7 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/tzm-latn.js @@ -0,0 +1,65 @@ +//! moment.js locale configuration +//! locale : Central Atlas Tamazight Latin [tzm-latn] +//! author : Abdel Said : https://github.com/abdelsaid + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var tzmLatn = moment.defineLocale('tzm-latn', { + months: 'innayr_brˤayrˤ_marˤsˤ_ibrir_mayyw_ywnyw_ywlywz_ɣwšt_šwtanbir_ktˤwbrˤ_nwwanbir_dwjnbir'.split( + '_' + ), + monthsShort: + 'innayr_brˤayrˤ_marˤsˤ_ibrir_mayyw_ywnyw_ywlywz_ɣwšt_šwtanbir_ktˤwbrˤ_nwwanbir_dwjnbir'.split( + '_' + ), + weekdays: 'asamas_aynas_asinas_akras_akwas_asimwas_asiḍyas'.split('_'), + weekdaysShort: 'asamas_aynas_asinas_akras_akwas_asimwas_asiḍyas'.split('_'), + weekdaysMin: 'asamas_aynas_asinas_akras_akwas_asimwas_asiḍyas'.split('_'), + longDateFormat: { + LT: 'HH:mm', + LTS: 'HH:mm:ss', + L: 'DD/MM/YYYY', + LL: 'D MMMM YYYY', + LLL: 'D MMMM YYYY HH:mm', + LLLL: 'dddd D MMMM YYYY HH:mm', + }, + calendar: { + sameDay: '[asdkh g] LT', + nextDay: '[aska g] LT', + nextWeek: 'dddd [g] LT', + lastDay: '[assant g] LT', + lastWeek: 'dddd [g] LT', + sameElse: 'L', + }, + relativeTime: { + future: 'dadkh s yan %s', + past: 'yan %s', + s: 'imik', + ss: '%d imik', + m: 'minuḍ', + mm: '%d minuḍ', + h: 'saɛa', + hh: '%d tassaɛin', + d: 'ass', + dd: '%d ossan', + M: 'ayowr', + MM: '%d iyyirn', + y: 'asgas', + yy: '%d isgasn', + }, + week: { + dow: 6, // Saturday is the first day of the week. + doy: 12, // The week that contains Jan 12th is the first week of the year. + }, + }); + + return tzmLatn; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/tzm.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/tzm.js new file mode 100644 index 0000000..5db61f9 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/tzm.js @@ -0,0 +1,65 @@ +//! moment.js locale configuration +//! locale : Central Atlas Tamazight [tzm] +//! author : Abdel Said : https://github.com/abdelsaid + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var tzm = moment.defineLocale('tzm', { + months: 'ⵉⵏⵏⴰⵢⵔ_ⴱⵕⴰⵢⵕ_ⵎⴰⵕⵚ_ⵉⴱⵔⵉⵔ_ⵎⴰⵢⵢⵓ_ⵢⵓⵏⵢⵓ_ⵢⵓⵍⵢⵓⵣ_ⵖⵓⵛⵜ_ⵛⵓⵜⴰⵏⴱⵉⵔ_ⴽⵟⵓⴱⵕ_ⵏⵓⵡⴰⵏⴱⵉⵔ_ⴷⵓⵊⵏⴱⵉⵔ'.split( + '_' + ), + monthsShort: + 'ⵉⵏⵏⴰⵢⵔ_ⴱⵕⴰⵢⵕ_ⵎⴰⵕⵚ_ⵉⴱⵔⵉⵔ_ⵎⴰⵢⵢⵓ_ⵢⵓⵏⵢⵓ_ⵢⵓⵍⵢⵓⵣ_ⵖⵓⵛⵜ_ⵛⵓⵜⴰⵏⴱⵉⵔ_ⴽⵟⵓⴱⵕ_ⵏⵓⵡⴰⵏⴱⵉⵔ_ⴷⵓⵊⵏⴱⵉⵔ'.split( + '_' + ), + weekdays: 'ⴰⵙⴰⵎⴰⵙ_ⴰⵢⵏⴰⵙ_ⴰⵙⵉⵏⴰⵙ_ⴰⴽⵔⴰⵙ_ⴰⴽⵡⴰⵙ_ⴰⵙⵉⵎⵡⴰⵙ_ⴰⵙⵉⴹⵢⴰⵙ'.split('_'), + weekdaysShort: 'ⴰⵙⴰⵎⴰⵙ_ⴰⵢⵏⴰⵙ_ⴰⵙⵉⵏⴰⵙ_ⴰⴽⵔⴰⵙ_ⴰⴽⵡⴰⵙ_ⴰⵙⵉⵎⵡⴰⵙ_ⴰⵙⵉⴹⵢⴰⵙ'.split('_'), + weekdaysMin: 'ⴰⵙⴰⵎⴰⵙ_ⴰⵢⵏⴰⵙ_ⴰⵙⵉⵏⴰⵙ_ⴰⴽⵔⴰⵙ_ⴰⴽⵡⴰⵙ_ⴰⵙⵉⵎⵡⴰⵙ_ⴰⵙⵉⴹⵢⴰⵙ'.split('_'), + longDateFormat: { + LT: 'HH:mm', + LTS: 'HH:mm:ss', + L: 'DD/MM/YYYY', + LL: 'D MMMM YYYY', + LLL: 'D MMMM YYYY HH:mm', + LLLL: 'dddd D MMMM YYYY HH:mm', + }, + calendar: { + sameDay: '[ⴰⵙⴷⵅ ⴴ] LT', + nextDay: '[ⴰⵙⴽⴰ ⴴ] LT', + nextWeek: 'dddd [ⴴ] LT', + lastDay: '[ⴰⵚⴰⵏⵜ ⴴ] LT', + lastWeek: 'dddd [ⴴ] LT', + sameElse: 'L', + }, + relativeTime: { + future: 'ⴷⴰⴷⵅ ⵙ ⵢⴰⵏ %s', + past: 'ⵢⴰⵏ %s', + s: 'ⵉⵎⵉⴽ', + ss: '%d ⵉⵎⵉⴽ', + m: 'ⵎⵉⵏⵓⴺ', + mm: '%d ⵎⵉⵏⵓⴺ', + h: 'ⵙⴰⵄⴰ', + hh: '%d ⵜⴰⵙⵙⴰⵄⵉⵏ', + d: 'ⴰⵙⵙ', + dd: '%d oⵙⵙⴰⵏ', + M: 'ⴰⵢoⵓⵔ', + MM: '%d ⵉⵢⵢⵉⵔⵏ', + y: 'ⴰⵙⴳⴰⵙ', + yy: '%d ⵉⵙⴳⴰⵙⵏ', + }, + week: { + dow: 6, // Saturday is the first day of the week. + doy: 12, // The week that contains Jan 12th is the first week of the year. + }, + }); + + return tzm; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/ug-cn.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/ug-cn.js new file mode 100644 index 0000000..5efffdd --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/ug-cn.js @@ -0,0 +1,122 @@ +//! moment.js locale configuration +//! locale : Uyghur (China) [ug-cn] +//! author: boyaq : https://github.com/boyaq + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var ugCn = moment.defineLocale('ug-cn', { + months: 'يانۋار_فېۋرال_مارت_ئاپرېل_ماي_ئىيۇن_ئىيۇل_ئاۋغۇست_سېنتەبىر_ئۆكتەبىر_نويابىر_دېكابىر'.split( + '_' + ), + monthsShort: + 'يانۋار_فېۋرال_مارت_ئاپرېل_ماي_ئىيۇن_ئىيۇل_ئاۋغۇست_سېنتەبىر_ئۆكتەبىر_نويابىر_دېكابىر'.split( + '_' + ), + weekdays: 'يەكشەنبە_دۈشەنبە_سەيشەنبە_چارشەنبە_پەيشەنبە_جۈمە_شەنبە'.split( + '_' + ), + weekdaysShort: 'يە_دۈ_سە_چا_پە_جۈ_شە'.split('_'), + weekdaysMin: 'يە_دۈ_سە_چا_پە_جۈ_شە'.split('_'), + longDateFormat: { + LT: 'HH:mm', + LTS: 'HH:mm:ss', + L: 'YYYY-MM-DD', + LL: 'YYYY-يىلىM-ئاينىڭD-كۈنى', + LLL: 'YYYY-يىلىM-ئاينىڭD-كۈنى، HH:mm', + LLLL: 'dddd، YYYY-يىلىM-ئاينىڭD-كۈنى، HH:mm', + }, + meridiemParse: /يېرىم كېچە|سەھەر|چۈشتىن بۇرۇن|چۈش|چۈشتىن كېيىن|كەچ/, + meridiemHour: function (hour, meridiem) { + if (hour === 12) { + hour = 0; + } + if ( + meridiem === 'يېرىم كېچە' || + meridiem === 'سەھەر' || + meridiem === 'چۈشتىن بۇرۇن' + ) { + return hour; + } else if (meridiem === 'چۈشتىن كېيىن' || meridiem === 'كەچ') { + return hour + 12; + } else { + return hour >= 11 ? hour : hour + 12; + } + }, + meridiem: function (hour, minute, isLower) { + var hm = hour * 100 + minute; + if (hm < 600) { + return 'يېرىم كېچە'; + } else if (hm < 900) { + return 'سەھەر'; + } else if (hm < 1130) { + return 'چۈشتىن بۇرۇن'; + } else if (hm < 1230) { + return 'چۈش'; + } else if (hm < 1800) { + return 'چۈشتىن كېيىن'; + } else { + return 'كەچ'; + } + }, + calendar: { + sameDay: '[بۈگۈن سائەت] LT', + nextDay: '[ئەتە سائەت] LT', + nextWeek: '[كېلەركى] dddd [سائەت] LT', + lastDay: '[تۆنۈگۈن] LT', + lastWeek: '[ئالدىنقى] dddd [سائەت] LT', + sameElse: 'L', + }, + relativeTime: { + future: '%s كېيىن', + past: '%s بۇرۇن', + s: 'نەچچە سېكونت', + ss: '%d سېكونت', + m: 'بىر مىنۇت', + mm: '%d مىنۇت', + h: 'بىر سائەت', + hh: '%d سائەت', + d: 'بىر كۈن', + dd: '%d كۈن', + M: 'بىر ئاي', + MM: '%d ئاي', + y: 'بىر يىل', + yy: '%d يىل', + }, + + dayOfMonthOrdinalParse: /\d{1,2}(-كۈنى|-ئاي|-ھەپتە)/, + ordinal: function (number, period) { + switch (period) { + case 'd': + case 'D': + case 'DDD': + return number + '-كۈنى'; + case 'w': + case 'W': + return number + '-ھەپتە'; + default: + return number; + } + }, + preparse: function (string) { + return string.replace(/،/g, ','); + }, + postformat: function (string) { + return string.replace(/,/g, '،'); + }, + week: { + // GB/T 7408-1994《数据元和交换格式·信息交换·日期和时间表示法》与ISO 8601:1988等效 + dow: 1, // Monday is the first day of the week. + doy: 7, // The week that contains Jan 1st is the first week of the year. + }, + }); + + return ugCn; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/uk.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/uk.js new file mode 100644 index 0000000..89e0431 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/uk.js @@ -0,0 +1,178 @@ +//! moment.js locale configuration +//! locale : Ukrainian [uk] +//! author : zemlanin : https://github.com/zemlanin +//! Author : Menelion Elensúle : https://github.com/Oire + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + function plural(word, num) { + var forms = word.split('_'); + return num % 10 === 1 && num % 100 !== 11 + ? forms[0] + : num % 10 >= 2 && num % 10 <= 4 && (num % 100 < 10 || num % 100 >= 20) + ? forms[1] + : forms[2]; + } + function relativeTimeWithPlural(number, withoutSuffix, key) { + var format = { + ss: withoutSuffix ? 'секунда_секунди_секунд' : 'секунду_секунди_секунд', + mm: withoutSuffix ? 'хвилина_хвилини_хвилин' : 'хвилину_хвилини_хвилин', + hh: withoutSuffix ? 'година_години_годин' : 'годину_години_годин', + dd: 'день_дні_днів', + MM: 'місяць_місяці_місяців', + yy: 'рік_роки_років', + }; + if (key === 'm') { + return withoutSuffix ? 'хвилина' : 'хвилину'; + } else if (key === 'h') { + return withoutSuffix ? 'година' : 'годину'; + } else { + return number + ' ' + plural(format[key], +number); + } + } + function weekdaysCaseReplace(m, format) { + var weekdays = { + nominative: + 'неділя_понеділок_вівторок_середа_четвер_п’ятниця_субота'.split( + '_' + ), + accusative: + 'неділю_понеділок_вівторок_середу_четвер_п’ятницю_суботу'.split( + '_' + ), + genitive: + 'неділі_понеділка_вівторка_середи_четверга_п’ятниці_суботи'.split( + '_' + ), + }, + nounCase; + + if (m === true) { + return weekdays['nominative'] + .slice(1, 7) + .concat(weekdays['nominative'].slice(0, 1)); + } + if (!m) { + return weekdays['nominative']; + } + + nounCase = /(\[[ВвУу]\]) ?dddd/.test(format) + ? 'accusative' + : /\[?(?:минулої|наступної)? ?\] ?dddd/.test(format) + ? 'genitive' + : 'nominative'; + return weekdays[nounCase][m.day()]; + } + function processHoursFunction(str) { + return function () { + return str + 'о' + (this.hours() === 11 ? 'б' : '') + '] LT'; + }; + } + + var uk = moment.defineLocale('uk', { + months: { + format: 'січня_лютого_березня_квітня_травня_червня_липня_серпня_вересня_жовтня_листопада_грудня'.split( + '_' + ), + standalone: + 'січень_лютий_березень_квітень_травень_червень_липень_серпень_вересень_жовтень_листопад_грудень'.split( + '_' + ), + }, + monthsShort: 'січ_лют_бер_квіт_трав_черв_лип_серп_вер_жовт_лист_груд'.split( + '_' + ), + weekdays: weekdaysCaseReplace, + weekdaysShort: 'нд_пн_вт_ср_чт_пт_сб'.split('_'), + weekdaysMin: 'нд_пн_вт_ср_чт_пт_сб'.split('_'), + longDateFormat: { + LT: 'HH:mm', + LTS: 'HH:mm:ss', + L: 'DD.MM.YYYY', + LL: 'D MMMM YYYY р.', + LLL: 'D MMMM YYYY р., HH:mm', + LLLL: 'dddd, D MMMM YYYY р., HH:mm', + }, + calendar: { + sameDay: processHoursFunction('[Сьогодні '), + nextDay: processHoursFunction('[Завтра '), + lastDay: processHoursFunction('[Вчора '), + nextWeek: processHoursFunction('[У] dddd ['), + lastWeek: function () { + switch (this.day()) { + case 0: + case 3: + case 5: + case 6: + return processHoursFunction('[Минулої] dddd [').call(this); + case 1: + case 2: + case 4: + return processHoursFunction('[Минулого] dddd [').call(this); + } + }, + sameElse: 'L', + }, + relativeTime: { + future: 'за %s', + past: '%s тому', + s: 'декілька секунд', + ss: relativeTimeWithPlural, + m: relativeTimeWithPlural, + mm: relativeTimeWithPlural, + h: 'годину', + hh: relativeTimeWithPlural, + d: 'день', + dd: relativeTimeWithPlural, + M: 'місяць', + MM: relativeTimeWithPlural, + y: 'рік', + yy: relativeTimeWithPlural, + }, + // M. E.: those two are virtually unused but a user might want to implement them for his/her website for some reason + meridiemParse: /ночі|ранку|дня|вечора/, + isPM: function (input) { + return /^(дня|вечора)$/.test(input); + }, + meridiem: function (hour, minute, isLower) { + if (hour < 4) { + return 'ночі'; + } else if (hour < 12) { + return 'ранку'; + } else if (hour < 17) { + return 'дня'; + } else { + return 'вечора'; + } + }, + dayOfMonthOrdinalParse: /\d{1,2}-(й|го)/, + ordinal: function (number, period) { + switch (period) { + case 'M': + case 'd': + case 'DDD': + case 'w': + case 'W': + return number + '-й'; + case 'D': + return number + '-го'; + default: + return number; + } + }, + week: { + dow: 1, // Monday is the first day of the week. + doy: 7, // The week that contains Jan 7th is the first week of the year. + }, + }); + + return uk; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/ur.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/ur.js new file mode 100644 index 0000000..9720dcf --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/ur.js @@ -0,0 +1,93 @@ +//! moment.js locale configuration +//! locale : Urdu [ur] +//! author : Sawood Alam : https://github.com/ibnesayeed +//! author : Zack : https://github.com/ZackVision + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var months = [ + 'جنوری', + 'فروری', + 'مارچ', + 'اپریل', + 'مئی', + 'جون', + 'جولائی', + 'اگست', + 'ستمبر', + 'اکتوبر', + 'نومبر', + 'دسمبر', + ], + days = ['اتوار', 'پیر', 'منگل', 'بدھ', 'جمعرات', 'جمعہ', 'ہفتہ']; + + var ur = moment.defineLocale('ur', { + months: months, + monthsShort: months, + weekdays: days, + weekdaysShort: days, + weekdaysMin: days, + longDateFormat: { + LT: 'HH:mm', + LTS: 'HH:mm:ss', + L: 'DD/MM/YYYY', + LL: 'D MMMM YYYY', + LLL: 'D MMMM YYYY HH:mm', + LLLL: 'dddd، D MMMM YYYY HH:mm', + }, + meridiemParse: /صبح|شام/, + isPM: function (input) { + return 'شام' === input; + }, + meridiem: function (hour, minute, isLower) { + if (hour < 12) { + return 'صبح'; + } + return 'شام'; + }, + calendar: { + sameDay: '[آج بوقت] LT', + nextDay: '[کل بوقت] LT', + nextWeek: 'dddd [بوقت] LT', + lastDay: '[گذشتہ روز بوقت] LT', + lastWeek: '[گذشتہ] dddd [بوقت] LT', + sameElse: 'L', + }, + relativeTime: { + future: '%s بعد', + past: '%s قبل', + s: 'چند سیکنڈ', + ss: '%d سیکنڈ', + m: 'ایک منٹ', + mm: '%d منٹ', + h: 'ایک گھنٹہ', + hh: '%d گھنٹے', + d: 'ایک دن', + dd: '%d دن', + M: 'ایک ماہ', + MM: '%d ماہ', + y: 'ایک سال', + yy: '%d سال', + }, + preparse: function (string) { + return string.replace(/،/g, ','); + }, + postformat: function (string) { + return string.replace(/,/g, '،'); + }, + week: { + dow: 1, // Monday is the first day of the week. + doy: 4, // The week that contains Jan 4th is the first week of the year. + }, + }); + + return ur; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/uz-latn.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/uz-latn.js new file mode 100644 index 0000000..af08e60 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/uz-latn.js @@ -0,0 +1,65 @@ +//! moment.js locale configuration +//! locale : Uzbek Latin [uz-latn] +//! author : Rasulbek Mirzayev : github.com/Rasulbeeek + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var uzLatn = moment.defineLocale('uz-latn', { + months: 'Yanvar_Fevral_Mart_Aprel_May_Iyun_Iyul_Avgust_Sentabr_Oktabr_Noyabr_Dekabr'.split( + '_' + ), + monthsShort: 'Yan_Fev_Mar_Apr_May_Iyun_Iyul_Avg_Sen_Okt_Noy_Dek'.split('_'), + weekdays: + 'Yakshanba_Dushanba_Seshanba_Chorshanba_Payshanba_Juma_Shanba'.split( + '_' + ), + weekdaysShort: 'Yak_Dush_Sesh_Chor_Pay_Jum_Shan'.split('_'), + weekdaysMin: 'Ya_Du_Se_Cho_Pa_Ju_Sha'.split('_'), + longDateFormat: { + LT: 'HH:mm', + LTS: 'HH:mm:ss', + L: 'DD/MM/YYYY', + LL: 'D MMMM YYYY', + LLL: 'D MMMM YYYY HH:mm', + LLLL: 'D MMMM YYYY, dddd HH:mm', + }, + calendar: { + sameDay: '[Bugun soat] LT [da]', + nextDay: '[Ertaga] LT [da]', + nextWeek: 'dddd [kuni soat] LT [da]', + lastDay: '[Kecha soat] LT [da]', + lastWeek: "[O'tgan] dddd [kuni soat] LT [da]", + sameElse: 'L', + }, + relativeTime: { + future: 'Yaqin %s ichida', + past: 'Bir necha %s oldin', + s: 'soniya', + ss: '%d soniya', + m: 'bir daqiqa', + mm: '%d daqiqa', + h: 'bir soat', + hh: '%d soat', + d: 'bir kun', + dd: '%d kun', + M: 'bir oy', + MM: '%d oy', + y: 'bir yil', + yy: '%d yil', + }, + week: { + dow: 1, // Monday is the first day of the week. + doy: 7, // The week that contains Jan 7th is the first week of the year. + }, + }); + + return uzLatn; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/uz.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/uz.js new file mode 100644 index 0000000..a8a87fc --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/uz.js @@ -0,0 +1,62 @@ +//! moment.js locale configuration +//! locale : Uzbek [uz] +//! author : Sardor Muminov : https://github.com/muminoff + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var uz = moment.defineLocale('uz', { + months: 'январ_феврал_март_апрел_май_июн_июл_август_сентябр_октябр_ноябр_декабр'.split( + '_' + ), + monthsShort: 'янв_фев_мар_апр_май_июн_июл_авг_сен_окт_ноя_дек'.split('_'), + weekdays: 'Якшанба_Душанба_Сешанба_Чоршанба_Пайшанба_Жума_Шанба'.split('_'), + weekdaysShort: 'Якш_Душ_Сеш_Чор_Пай_Жум_Шан'.split('_'), + weekdaysMin: 'Як_Ду_Се_Чо_Па_Жу_Ша'.split('_'), + longDateFormat: { + LT: 'HH:mm', + LTS: 'HH:mm:ss', + L: 'DD/MM/YYYY', + LL: 'D MMMM YYYY', + LLL: 'D MMMM YYYY HH:mm', + LLLL: 'D MMMM YYYY, dddd HH:mm', + }, + calendar: { + sameDay: '[Бугун соат] LT [да]', + nextDay: '[Эртага] LT [да]', + nextWeek: 'dddd [куни соат] LT [да]', + lastDay: '[Кеча соат] LT [да]', + lastWeek: '[Утган] dddd [куни соат] LT [да]', + sameElse: 'L', + }, + relativeTime: { + future: 'Якин %s ичида', + past: 'Бир неча %s олдин', + s: 'фурсат', + ss: '%d фурсат', + m: 'бир дакика', + mm: '%d дакика', + h: 'бир соат', + hh: '%d соат', + d: 'бир кун', + dd: '%d кун', + M: 'бир ой', + MM: '%d ой', + y: 'бир йил', + yy: '%d йил', + }, + week: { + dow: 1, // Monday is the first day of the week. + doy: 7, // The week that contains Jan 4th is the first week of the year. + }, + }); + + return uz; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/vi.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/vi.js new file mode 100644 index 0000000..fb6b4b4 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/vi.js @@ -0,0 +1,91 @@ +//! moment.js locale configuration +//! locale : Vietnamese [vi] +//! author : Bang Nguyen : https://github.com/bangnk +//! author : Chien Kira : https://github.com/chienkira + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var vi = moment.defineLocale('vi', { + 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'.split( + '_' + ), + monthsShort: + 'Thg 01_Thg 02_Thg 03_Thg 04_Thg 05_Thg 06_Thg 07_Thg 08_Thg 09_Thg 10_Thg 11_Thg 12'.split( + '_' + ), + monthsParseExact: true, + weekdays: 'chủ nhật_thứ hai_thứ ba_thứ tư_thứ năm_thứ sáu_thứ bảy'.split( + '_' + ), + weekdaysShort: 'CN_T2_T3_T4_T5_T6_T7'.split('_'), + weekdaysMin: 'CN_T2_T3_T4_T5_T6_T7'.split('_'), + weekdaysParseExact: true, + meridiemParse: /sa|ch/i, + isPM: function (input) { + return /^ch$/i.test(input); + }, + meridiem: function (hours, minutes, isLower) { + if (hours < 12) { + return isLower ? 'sa' : 'SA'; + } else { + return isLower ? 'ch' : 'CH'; + } + }, + longDateFormat: { + LT: 'HH:mm', + LTS: 'HH:mm:ss', + L: 'DD/MM/YYYY', + LL: 'D MMMM [năm] YYYY', + LLL: 'D MMMM [năm] YYYY HH:mm', + LLLL: 'dddd, D MMMM [năm] YYYY HH:mm', + l: 'DD/M/YYYY', + ll: 'D MMM YYYY', + lll: 'D MMM YYYY HH:mm', + llll: 'ddd, D MMM YYYY HH:mm', + }, + calendar: { + sameDay: '[Hôm nay lúc] LT', + nextDay: '[Ngày mai lúc] LT', + nextWeek: 'dddd [tuần tới lúc] LT', + lastDay: '[Hôm qua lúc] LT', + lastWeek: 'dddd [tuần trước lúc] LT', + sameElse: 'L', + }, + relativeTime: { + future: '%s tới', + past: '%s trước', + s: 'vài giây', + ss: '%d giây', + m: 'một phút', + mm: '%d phút', + h: 'một giờ', + hh: '%d giờ', + d: 'một ngày', + dd: '%d ngày', + w: 'một tuần', + ww: '%d tuần', + M: 'một tháng', + MM: '%d tháng', + y: 'một năm', + yy: '%d năm', + }, + dayOfMonthOrdinalParse: /\d{1,2}/, + ordinal: function (number) { + return number; + }, + week: { + dow: 1, // Monday is the first day of the week. + doy: 4, // The week that contains Jan 4th is the first week of the year. + }, + }); + + return vi; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/x-pseudo.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/x-pseudo.js new file mode 100644 index 0000000..f67a2bf --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/x-pseudo.js @@ -0,0 +1,84 @@ +//! moment.js locale configuration +//! locale : Pseudo [x-pseudo] +//! author : Andrew Hood : https://github.com/andrewhood125 + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var xPseudo = moment.defineLocale('x-pseudo', { + months: 'J~áñúá~rý_F~ébrú~árý_~Márc~h_Áp~ríl_~Máý_~Júñé~_Júl~ý_Áú~gúst~_Sép~témb~ér_Ó~ctób~ér_Ñ~óvém~bér_~Décé~mbér'.split( + '_' + ), + monthsShort: + 'J~áñ_~Féb_~Már_~Ápr_~Máý_~Júñ_~Júl_~Áúg_~Sép_~Óct_~Ñóv_~Déc'.split( + '_' + ), + monthsParseExact: true, + weekdays: + 'S~úñdá~ý_Mó~ñdáý~_Túé~sdáý~_Wéd~ñésd~áý_T~húrs~dáý_~Fríd~áý_S~átúr~dáý'.split( + '_' + ), + weekdaysShort: 'S~úñ_~Móñ_~Túé_~Wéd_~Thú_~Frí_~Sát'.split('_'), + weekdaysMin: 'S~ú_Mó~_Tú_~Wé_T~h_Fr~_Sá'.split('_'), + weekdaysParseExact: true, + longDateFormat: { + LT: 'HH:mm', + L: 'DD/MM/YYYY', + LL: 'D MMMM YYYY', + LLL: 'D MMMM YYYY HH:mm', + LLLL: 'dddd, D MMMM YYYY HH:mm', + }, + calendar: { + sameDay: '[T~ódá~ý át] LT', + nextDay: '[T~ómó~rró~w át] LT', + nextWeek: 'dddd [át] LT', + lastDay: '[Ý~ést~érdá~ý át] LT', + lastWeek: '[L~ást] dddd [át] LT', + sameElse: 'L', + }, + relativeTime: { + future: 'í~ñ %s', + past: '%s á~gó', + s: 'á ~féw ~sécó~ñds', + ss: '%d s~écóñ~ds', + m: 'á ~míñ~úté', + mm: '%d m~íñú~tés', + h: 'á~ñ hó~úr', + hh: '%d h~óúrs', + d: 'á ~dáý', + dd: '%d d~áýs', + M: 'á ~móñ~th', + MM: '%d m~óñt~hs', + y: 'á ~ýéár', + yy: '%d ý~éárs', + }, + dayOfMonthOrdinalParse: /\d{1,2}(th|st|nd|rd)/, + ordinal: function (number) { + var b = number % 10, + output = + ~~((number % 100) / 10) === 1 + ? 'th' + : b === 1 + ? 'st' + : b === 2 + ? 'nd' + : b === 3 + ? 'rd' + : 'th'; + return number + output; + }, + week: { + dow: 1, // Monday is the first day of the week. + doy: 4, // The week that contains Jan 4th is the first week of the year. + }, + }); + + return xPseudo; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/yo.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/yo.js new file mode 100644 index 0000000..9fe818b --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/yo.js @@ -0,0 +1,64 @@ +//! moment.js locale configuration +//! locale : Yoruba Nigeria [yo] +//! author : Atolagbe Abisoye : https://github.com/andela-batolagbe + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var yo = moment.defineLocale('yo', { + months: 'Sẹ́rẹ́_Èrèlè_Ẹrẹ̀nà_Ìgbé_Èbibi_Òkùdu_Agẹmo_Ògún_Owewe_Ọ̀wàrà_Bélú_Ọ̀pẹ̀̀'.split( + '_' + ), + monthsShort: 'Sẹ́r_Èrl_Ẹrn_Ìgb_Èbi_Òkù_Agẹ_Ògú_Owe_Ọ̀wà_Bél_Ọ̀pẹ̀̀'.split('_'), + weekdays: 'Àìkú_Ajé_Ìsẹ́gun_Ọjọ́rú_Ọjọ́bọ_Ẹtì_Àbámẹ́ta'.split('_'), + weekdaysShort: 'Àìk_Ajé_Ìsẹ́_Ọjr_Ọjb_Ẹtì_Àbá'.split('_'), + weekdaysMin: 'Àì_Aj_Ìs_Ọr_Ọb_Ẹt_Àb'.split('_'), + longDateFormat: { + LT: 'h:mm A', + LTS: 'h:mm:ss A', + L: 'DD/MM/YYYY', + LL: 'D MMMM YYYY', + LLL: 'D MMMM YYYY h:mm A', + LLLL: 'dddd, D MMMM YYYY h:mm A', + }, + calendar: { + sameDay: '[Ònì ni] LT', + nextDay: '[Ọ̀la ni] LT', + nextWeek: "dddd [Ọsẹ̀ tón'bọ] [ni] LT", + lastDay: '[Àna ni] LT', + lastWeek: 'dddd [Ọsẹ̀ tólọ́] [ni] LT', + sameElse: 'L', + }, + relativeTime: { + future: 'ní %s', + past: '%s kọjá', + s: 'ìsẹjú aayá die', + ss: 'aayá %d', + m: 'ìsẹjú kan', + mm: 'ìsẹjú %d', + h: 'wákati kan', + hh: 'wákati %d', + d: 'ọjọ́ kan', + dd: 'ọjọ́ %d', + M: 'osù kan', + MM: 'osù %d', + y: 'ọdún kan', + yy: 'ọdún %d', + }, + dayOfMonthOrdinalParse: /ọjọ́\s\d{1,2}/, + ordinal: 'ọjọ́ %d', + week: { + dow: 1, // Monday is the first day of the week. + doy: 4, // The week that contains Jan 4th is the first week of the year. + }, + }); + + return yo; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/zh-cn.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/zh-cn.js new file mode 100644 index 0000000..c14ca47 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/zh-cn.js @@ -0,0 +1,131 @@ +//! moment.js locale configuration +//! locale : Chinese (China) [zh-cn] +//! author : suupic : https://github.com/suupic +//! author : Zeno Zeng : https://github.com/zenozeng +//! author : uu109 : https://github.com/uu109 + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var zhCn = moment.defineLocale('zh-cn', { + months: '一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月'.split( + '_' + ), + monthsShort: '1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月'.split( + '_' + ), + weekdays: '星期日_星期一_星期二_星期三_星期四_星期五_星期六'.split('_'), + weekdaysShort: '周日_周一_周二_周三_周四_周五_周六'.split('_'), + weekdaysMin: '日_一_二_三_四_五_六'.split('_'), + longDateFormat: { + LT: 'HH:mm', + LTS: 'HH:mm:ss', + L: 'YYYY/MM/DD', + LL: 'YYYY年M月D日', + LLL: 'YYYY年M月D日Ah点mm分', + LLLL: 'YYYY年M月D日ddddAh点mm分', + l: 'YYYY/M/D', + ll: 'YYYY年M月D日', + lll: 'YYYY年M月D日 HH:mm', + llll: 'YYYY年M月D日dddd HH:mm', + }, + meridiemParse: /凌晨|早上|上午|中午|下午|晚上/, + meridiemHour: function (hour, meridiem) { + if (hour === 12) { + hour = 0; + } + if (meridiem === '凌晨' || meridiem === '早上' || meridiem === '上午') { + return hour; + } else if (meridiem === '下午' || meridiem === '晚上') { + return hour + 12; + } else { + // '中午' + return hour >= 11 ? hour : hour + 12; + } + }, + meridiem: function (hour, minute, isLower) { + var hm = hour * 100 + minute; + if (hm < 600) { + return '凌晨'; + } else if (hm < 900) { + return '早上'; + } else if (hm < 1130) { + return '上午'; + } else if (hm < 1230) { + return '中午'; + } else if (hm < 1800) { + return '下午'; + } else { + return '晚上'; + } + }, + calendar: { + sameDay: '[今天]LT', + nextDay: '[明天]LT', + nextWeek: function (now) { + if (now.week() !== this.week()) { + return '[下]dddLT'; + } else { + return '[本]dddLT'; + } + }, + lastDay: '[昨天]LT', + lastWeek: function (now) { + if (this.week() !== now.week()) { + return '[上]dddLT'; + } else { + return '[本]dddLT'; + } + }, + sameElse: 'L', + }, + dayOfMonthOrdinalParse: /\d{1,2}(日|月|周)/, + ordinal: function (number, period) { + switch (period) { + case 'd': + case 'D': + case 'DDD': + return number + '日'; + case 'M': + return number + '月'; + case 'w': + case 'W': + return number + '周'; + default: + return number; + } + }, + relativeTime: { + future: '%s后', + past: '%s前', + s: '几秒', + ss: '%d 秒', + m: '1 分钟', + mm: '%d 分钟', + h: '1 小时', + hh: '%d 小时', + d: '1 天', + dd: '%d 天', + w: '1 周', + ww: '%d 周', + M: '1 个月', + MM: '%d 个月', + y: '1 年', + yy: '%d 年', + }, + week: { + // GB/T 7408-1994《数据元和交换格式·信息交换·日期和时间表示法》与ISO 8601:1988等效 + dow: 1, // Monday is the first day of the week. + doy: 4, // The week that contains Jan 4th is the first week of the year. + }, + }); + + return zhCn; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/zh-hk.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/zh-hk.js new file mode 100644 index 0000000..de900fd --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/zh-hk.js @@ -0,0 +1,112 @@ +//! moment.js locale configuration +//! locale : Chinese (Hong Kong) [zh-hk] +//! author : Ben : https://github.com/ben-lin +//! author : Chris Lam : https://github.com/hehachris +//! author : Konstantin : https://github.com/skfd +//! author : Anthony : https://github.com/anthonylau + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var zhHk = moment.defineLocale('zh-hk', { + months: '一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月'.split( + '_' + ), + monthsShort: '1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月'.split( + '_' + ), + weekdays: '星期日_星期一_星期二_星期三_星期四_星期五_星期六'.split('_'), + weekdaysShort: '週日_週一_週二_週三_週四_週五_週六'.split('_'), + weekdaysMin: '日_一_二_三_四_五_六'.split('_'), + longDateFormat: { + LT: 'HH:mm', + LTS: 'HH:mm:ss', + L: 'YYYY/MM/DD', + LL: 'YYYY年M月D日', + LLL: 'YYYY年M月D日 HH:mm', + LLLL: 'YYYY年M月D日dddd HH:mm', + l: 'YYYY/M/D', + ll: 'YYYY年M月D日', + lll: 'YYYY年M月D日 HH:mm', + llll: 'YYYY年M月D日dddd HH:mm', + }, + meridiemParse: /凌晨|早上|上午|中午|下午|晚上/, + meridiemHour: function (hour, meridiem) { + if (hour === 12) { + hour = 0; + } + if (meridiem === '凌晨' || meridiem === '早上' || meridiem === '上午') { + return hour; + } else if (meridiem === '中午') { + return hour >= 11 ? hour : hour + 12; + } else if (meridiem === '下午' || meridiem === '晚上') { + return hour + 12; + } + }, + meridiem: function (hour, minute, isLower) { + var hm = hour * 100 + minute; + if (hm < 600) { + return '凌晨'; + } else if (hm < 900) { + return '早上'; + } else if (hm < 1200) { + return '上午'; + } else if (hm === 1200) { + return '中午'; + } else if (hm < 1800) { + return '下午'; + } else { + return '晚上'; + } + }, + calendar: { + sameDay: '[今天]LT', + nextDay: '[明天]LT', + nextWeek: '[下]ddddLT', + lastDay: '[昨天]LT', + lastWeek: '[上]ddddLT', + sameElse: 'L', + }, + dayOfMonthOrdinalParse: /\d{1,2}(日|月|週)/, + ordinal: function (number, period) { + switch (period) { + case 'd': + case 'D': + case 'DDD': + return number + '日'; + case 'M': + return number + '月'; + case 'w': + case 'W': + return number + '週'; + default: + return number; + } + }, + relativeTime: { + future: '%s後', + past: '%s前', + s: '幾秒', + ss: '%d 秒', + m: '1 分鐘', + mm: '%d 分鐘', + h: '1 小時', + hh: '%d 小時', + d: '1 天', + dd: '%d 天', + M: '1 個月', + MM: '%d 個月', + y: '1 年', + yy: '%d 年', + }, + }); + + return zhHk; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/zh-mo.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/zh-mo.js new file mode 100644 index 0000000..b32feab --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/zh-mo.js @@ -0,0 +1,111 @@ +//! moment.js locale configuration +//! locale : Chinese (Macau) [zh-mo] +//! author : Ben : https://github.com/ben-lin +//! author : Chris Lam : https://github.com/hehachris +//! author : Tan Yuanhong : https://github.com/le0tan + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var zhMo = moment.defineLocale('zh-mo', { + months: '一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月'.split( + '_' + ), + monthsShort: '1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月'.split( + '_' + ), + weekdays: '星期日_星期一_星期二_星期三_星期四_星期五_星期六'.split('_'), + weekdaysShort: '週日_週一_週二_週三_週四_週五_週六'.split('_'), + weekdaysMin: '日_一_二_三_四_五_六'.split('_'), + longDateFormat: { + LT: 'HH:mm', + LTS: 'HH:mm:ss', + L: 'DD/MM/YYYY', + LL: 'YYYY年M月D日', + LLL: 'YYYY年M月D日 HH:mm', + LLLL: 'YYYY年M月D日dddd HH:mm', + l: 'D/M/YYYY', + ll: 'YYYY年M月D日', + lll: 'YYYY年M月D日 HH:mm', + llll: 'YYYY年M月D日dddd HH:mm', + }, + meridiemParse: /凌晨|早上|上午|中午|下午|晚上/, + meridiemHour: function (hour, meridiem) { + if (hour === 12) { + hour = 0; + } + if (meridiem === '凌晨' || meridiem === '早上' || meridiem === '上午') { + return hour; + } else if (meridiem === '中午') { + return hour >= 11 ? hour : hour + 12; + } else if (meridiem === '下午' || meridiem === '晚上') { + return hour + 12; + } + }, + meridiem: function (hour, minute, isLower) { + var hm = hour * 100 + minute; + if (hm < 600) { + return '凌晨'; + } else if (hm < 900) { + return '早上'; + } else if (hm < 1130) { + return '上午'; + } else if (hm < 1230) { + return '中午'; + } else if (hm < 1800) { + return '下午'; + } else { + return '晚上'; + } + }, + calendar: { + sameDay: '[今天] LT', + nextDay: '[明天] LT', + nextWeek: '[下]dddd LT', + lastDay: '[昨天] LT', + lastWeek: '[上]dddd LT', + sameElse: 'L', + }, + dayOfMonthOrdinalParse: /\d{1,2}(日|月|週)/, + ordinal: function (number, period) { + switch (period) { + case 'd': + case 'D': + case 'DDD': + return number + '日'; + case 'M': + return number + '月'; + case 'w': + case 'W': + return number + '週'; + default: + return number; + } + }, + relativeTime: { + future: '%s內', + past: '%s前', + s: '幾秒', + ss: '%d 秒', + m: '1 分鐘', + mm: '%d 分鐘', + h: '1 小時', + hh: '%d 小時', + d: '1 天', + dd: '%d 天', + M: '1 個月', + MM: '%d 個月', + y: '1 年', + yy: '%d 年', + }, + }); + + return zhMo; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/zh-tw.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/zh-tw.js new file mode 100644 index 0000000..4f80ece --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/locale/zh-tw.js @@ -0,0 +1,110 @@ +//! moment.js locale configuration +//! locale : Chinese (Taiwan) [zh-tw] +//! author : Ben : https://github.com/ben-lin +//! author : Chris Lam : https://github.com/hehachris + +;(function (global, factory) { + typeof exports === 'object' && typeof module !== 'undefined' + && typeof require === 'function' ? factory(require('../moment')) : + typeof define === 'function' && define.amd ? define(['../moment'], factory) : + factory(global.moment) +}(this, (function (moment) { 'use strict'; + + //! moment.js locale configuration + + var zhTw = moment.defineLocale('zh-tw', { + months: '一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月'.split( + '_' + ), + monthsShort: '1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月'.split( + '_' + ), + weekdays: '星期日_星期一_星期二_星期三_星期四_星期五_星期六'.split('_'), + weekdaysShort: '週日_週一_週二_週三_週四_週五_週六'.split('_'), + weekdaysMin: '日_一_二_三_四_五_六'.split('_'), + longDateFormat: { + LT: 'HH:mm', + LTS: 'HH:mm:ss', + L: 'YYYY/MM/DD', + LL: 'YYYY年M月D日', + LLL: 'YYYY年M月D日 HH:mm', + LLLL: 'YYYY年M月D日dddd HH:mm', + l: 'YYYY/M/D', + ll: 'YYYY年M月D日', + lll: 'YYYY年M月D日 HH:mm', + llll: 'YYYY年M月D日dddd HH:mm', + }, + meridiemParse: /凌晨|早上|上午|中午|下午|晚上/, + meridiemHour: function (hour, meridiem) { + if (hour === 12) { + hour = 0; + } + if (meridiem === '凌晨' || meridiem === '早上' || meridiem === '上午') { + return hour; + } else if (meridiem === '中午') { + return hour >= 11 ? hour : hour + 12; + } else if (meridiem === '下午' || meridiem === '晚上') { + return hour + 12; + } + }, + meridiem: function (hour, minute, isLower) { + var hm = hour * 100 + minute; + if (hm < 600) { + return '凌晨'; + } else if (hm < 900) { + return '早上'; + } else if (hm < 1130) { + return '上午'; + } else if (hm < 1230) { + return '中午'; + } else if (hm < 1800) { + return '下午'; + } else { + return '晚上'; + } + }, + calendar: { + sameDay: '[今天] LT', + nextDay: '[明天] LT', + nextWeek: '[下]dddd LT', + lastDay: '[昨天] LT', + lastWeek: '[上]dddd LT', + sameElse: 'L', + }, + dayOfMonthOrdinalParse: /\d{1,2}(日|月|週)/, + ordinal: function (number, period) { + switch (period) { + case 'd': + case 'D': + case 'DDD': + return number + '日'; + case 'M': + return number + '月'; + case 'w': + case 'W': + return number + '週'; + default: + return number; + } + }, + relativeTime: { + future: '%s後', + past: '%s前', + s: '幾秒', + ss: '%d 秒', + m: '1 分鐘', + mm: '%d 分鐘', + h: '1 小時', + hh: '%d 小時', + d: '1 天', + dd: '%d 天', + M: '1 個月', + MM: '%d 個月', + y: '1 年', + yy: '%d 年', + }, + }); + + return zhTw; + +}))); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/min/__init__.py b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/min/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/min/locales.min.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/min/locales.min.js new file mode 100644 index 0000000..b77ab6b --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/min/locales.min.js @@ -0,0 +1,2 @@ +!function(e,a){"object"==typeof exports&&"undefined"!=typeof module&&"function"==typeof require?a(require("../moment")):"function"==typeof define&&define.amd?define(["../moment"],a):a(e.moment)}(this,function(e){"use strict";e.defineLocale("af",{months:"Januarie_Februarie_Maart_April_Mei_Junie_Julie_Augustus_September_Oktober_November_Desember".split("_"),monthsShort:"Jan_Feb_Mrt_Apr_Mei_Jun_Jul_Aug_Sep_Okt_Nov_Des".split("_"),weekdays:"Sondag_Maandag_Dinsdag_Woensdag_Donderdag_Vrydag_Saterdag".split("_"),weekdaysShort:"Son_Maa_Din_Woe_Don_Vry_Sat".split("_"),weekdaysMin:"So_Ma_Di_Wo_Do_Vr_Sa".split("_"),meridiemParse:/vm|nm/i,isPM:function(e){return/^nm$/i.test(e)},meridiem:function(e,a,_){return e<12?_?"vm":"VM":_?"nm":"NM"},longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Vandag om] LT",nextDay:"[M\xf4re om] LT",nextWeek:"dddd [om] LT",lastDay:"[Gister om] LT",lastWeek:"[Laas] dddd [om] LT",sameElse:"L"},relativeTime:{future:"oor %s",past:"%s gelede",s:"'n paar sekondes",ss:"%d sekondes",m:"'n minuut",mm:"%d minute",h:"'n uur",hh:"%d ure",d:"'n dag",dd:"%d dae",M:"'n maand",MM:"%d maande",y:"'n jaar",yy:"%d jaar"},dayOfMonthOrdinalParse:/\d{1,2}(ste|de)/,ordinal:function(e){return e+(1===e||8===e||20<=e?"ste":"de")},week:{dow:1,doy:4}});function E(e){return 0===e?0:1===e?1:2===e?2:3<=e%100&&e%100<=10?3:11<=e%100?4:5}function a(n){return function(e,a,_,s){var d=E(e),t=J[n][E(e)];return(t=2===d?t[a?0:1]:t).replace(/%d/i,e)}}function F(e){return 0===e?0:1===e?1:2===e?2:3<=e%100&&e%100<=10?3:11<=e%100?4:5}function _(n){return function(e,a,_,s){var d=F(e),t=N[n][F(e)];return(t=2===d?t[a?0:1]:t).replace(/%d/i,e)}}function z(e){return 0===e?0:1===e?1:2===e?2:3<=e%100&&e%100<=10?3:11<=e%100?4:5}function s(n){return function(e,a,_,s){var d=z(e),t=B[n][z(e)];return(t=2===d?t[a?0:1]:t).replace(/%d/i,e)}}var J={s:["\u0623\u0642\u0644 \u0645\u0646 \u062b\u0627\u0646\u064a\u0629","\u062b\u0627\u0646\u064a\u0629 \u0648\u0627\u062d\u062f\u0629",["\u062b\u0627\u0646\u064a\u062a\u0627\u0646","\u062b\u0627\u0646\u064a\u062a\u064a\u0646"],"%d \u062b\u0648\u0627\u0646","%d \u062b\u0627\u0646\u064a\u0629","%d \u062b\u0627\u0646\u064a\u0629"],m:["\u0623\u0642\u0644 \u0645\u0646 \u062f\u0642\u064a\u0642\u0629","\u062f\u0642\u064a\u0642\u0629 \u0648\u0627\u062d\u062f\u0629",["\u062f\u0642\u064a\u0642\u062a\u0627\u0646","\u062f\u0642\u064a\u0642\u062a\u064a\u0646"],"%d \u062f\u0642\u0627\u0626\u0642","%d \u062f\u0642\u064a\u0642\u0629","%d \u062f\u0642\u064a\u0642\u0629"],h:["\u0623\u0642\u0644 \u0645\u0646 \u0633\u0627\u0639\u0629","\u0633\u0627\u0639\u0629 \u0648\u0627\u062d\u062f\u0629",["\u0633\u0627\u0639\u062a\u0627\u0646","\u0633\u0627\u0639\u062a\u064a\u0646"],"%d \u0633\u0627\u0639\u0627\u062a","%d \u0633\u0627\u0639\u0629","%d \u0633\u0627\u0639\u0629"],d:["\u0623\u0642\u0644 \u0645\u0646 \u064a\u0648\u0645","\u064a\u0648\u0645 \u0648\u0627\u062d\u062f",["\u064a\u0648\u0645\u0627\u0646","\u064a\u0648\u0645\u064a\u0646"],"%d \u0623\u064a\u0627\u0645","%d \u064a\u0648\u0645\u064b\u0627","%d \u064a\u0648\u0645"],M:["\u0623\u0642\u0644 \u0645\u0646 \u0634\u0647\u0631","\u0634\u0647\u0631 \u0648\u0627\u062d\u062f",["\u0634\u0647\u0631\u0627\u0646","\u0634\u0647\u0631\u064a\u0646"],"%d \u0623\u0634\u0647\u0631","%d \u0634\u0647\u0631\u0627","%d \u0634\u0647\u0631"],y:["\u0623\u0642\u0644 \u0645\u0646 \u0639\u0627\u0645","\u0639\u0627\u0645 \u0648\u0627\u062d\u062f",["\u0639\u0627\u0645\u0627\u0646","\u0639\u0627\u0645\u064a\u0646"],"%d \u0623\u0639\u0648\u0627\u0645","%d \u0639\u0627\u0645\u064b\u0627","%d \u0639\u0627\u0645"]},d=["\u062c\u0627\u0646\u0641\u064a","\u0641\u064a\u0641\u0631\u064a","\u0645\u0627\u0631\u0633","\u0623\u0641\u0631\u064a\u0644","\u0645\u0627\u064a","\u062c\u0648\u0627\u0646","\u062c\u0648\u064a\u0644\u064a\u0629","\u0623\u0648\u062a","\u0633\u0628\u062a\u0645\u0628\u0631","\u0623\u0643\u062a\u0648\u0628\u0631","\u0646\u0648\u0641\u0645\u0628\u0631","\u062f\u064a\u0633\u0645\u0628\u0631"],I=(e.defineLocale("ar-dz",{months:d,monthsShort:d,weekdays:"\u0627\u0644\u0623\u062d\u062f_\u0627\u0644\u0625\u062b\u0646\u064a\u0646_\u0627\u0644\u062b\u0644\u0627\u062b\u0627\u0621_\u0627\u0644\u0623\u0631\u0628\u0639\u0627\u0621_\u0627\u0644\u062e\u0645\u064a\u0633_\u0627\u0644\u062c\u0645\u0639\u0629_\u0627\u0644\u0633\u0628\u062a".split("_"),weekdaysShort:"\u0623\u062d\u062f_\u0625\u062b\u0646\u064a\u0646_\u062b\u0644\u0627\u062b\u0627\u0621_\u0623\u0631\u0628\u0639\u0627\u0621_\u062e\u0645\u064a\u0633_\u062c\u0645\u0639\u0629_\u0633\u0628\u062a".split("_"),weekdaysMin:"\u062d_\u0646_\u062b_\u0631_\u062e_\u062c_\u0633".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"D/\u200fM/\u200fYYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},meridiemParse:/\u0635|\u0645/,isPM:function(e){return"\u0645"===e},meridiem:function(e,a,_){return e<12?"\u0635":"\u0645"},calendar:{sameDay:"[\u0627\u0644\u064a\u0648\u0645 \u0639\u0646\u062f \u0627\u0644\u0633\u0627\u0639\u0629] LT",nextDay:"[\u063a\u062f\u064b\u0627 \u0639\u0646\u062f \u0627\u0644\u0633\u0627\u0639\u0629] LT",nextWeek:"dddd [\u0639\u0646\u062f \u0627\u0644\u0633\u0627\u0639\u0629] LT",lastDay:"[\u0623\u0645\u0633 \u0639\u0646\u062f \u0627\u0644\u0633\u0627\u0639\u0629] LT",lastWeek:"dddd [\u0639\u0646\u062f \u0627\u0644\u0633\u0627\u0639\u0629] LT",sameElse:"L"},relativeTime:{future:"\u0628\u0639\u062f %s",past:"\u0645\u0646\u0630 %s",s:a("s"),ss:a("s"),m:a("m"),mm:a("m"),h:a("h"),hh:a("h"),d:a("d"),dd:a("d"),M:a("M"),MM:a("M"),y:a("y"),yy:a("y")},postformat:function(e){return e.replace(/,/g,"\u060c")},week:{dow:0,doy:4}}),e.defineLocale("ar-kw",{months:"\u064a\u0646\u0627\u064a\u0631_\u0641\u0628\u0631\u0627\u064a\u0631_\u0645\u0627\u0631\u0633_\u0623\u0628\u0631\u064a\u0644_\u0645\u0627\u064a_\u064a\u0648\u0646\u064a\u0648_\u064a\u0648\u0644\u064a\u0648\u0632_\u063a\u0634\u062a_\u0634\u062a\u0646\u0628\u0631_\u0623\u0643\u062a\u0648\u0628\u0631_\u0646\u0648\u0646\u0628\u0631_\u062f\u062c\u0646\u0628\u0631".split("_"),monthsShort:"\u064a\u0646\u0627\u064a\u0631_\u0641\u0628\u0631\u0627\u064a\u0631_\u0645\u0627\u0631\u0633_\u0623\u0628\u0631\u064a\u0644_\u0645\u0627\u064a_\u064a\u0648\u0646\u064a\u0648_\u064a\u0648\u0644\u064a\u0648\u0632_\u063a\u0634\u062a_\u0634\u062a\u0646\u0628\u0631_\u0623\u0643\u062a\u0648\u0628\u0631_\u0646\u0648\u0646\u0628\u0631_\u062f\u062c\u0646\u0628\u0631".split("_"),weekdays:"\u0627\u0644\u0623\u062d\u062f_\u0627\u0644\u0625\u062a\u0646\u064a\u0646_\u0627\u0644\u062b\u0644\u0627\u062b\u0627\u0621_\u0627\u0644\u0623\u0631\u0628\u0639\u0627\u0621_\u0627\u0644\u062e\u0645\u064a\u0633_\u0627\u0644\u062c\u0645\u0639\u0629_\u0627\u0644\u0633\u0628\u062a".split("_"),weekdaysShort:"\u0627\u062d\u062f_\u0627\u062a\u0646\u064a\u0646_\u062b\u0644\u0627\u062b\u0627\u0621_\u0627\u0631\u0628\u0639\u0627\u0621_\u062e\u0645\u064a\u0633_\u062c\u0645\u0639\u0629_\u0633\u0628\u062a".split("_"),weekdaysMin:"\u062d_\u0646_\u062b_\u0631_\u062e_\u062c_\u0633".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[\u0627\u0644\u064a\u0648\u0645 \u0639\u0644\u0649 \u0627\u0644\u0633\u0627\u0639\u0629] LT",nextDay:"[\u063a\u062f\u0627 \u0639\u0644\u0649 \u0627\u0644\u0633\u0627\u0639\u0629] LT",nextWeek:"dddd [\u0639\u0644\u0649 \u0627\u0644\u0633\u0627\u0639\u0629] LT",lastDay:"[\u0623\u0645\u0633 \u0639\u0644\u0649 \u0627\u0644\u0633\u0627\u0639\u0629] LT",lastWeek:"dddd [\u0639\u0644\u0649 \u0627\u0644\u0633\u0627\u0639\u0629] LT",sameElse:"L"},relativeTime:{future:"\u0641\u064a %s",past:"\u0645\u0646\u0630 %s",s:"\u062b\u0648\u0627\u0646",ss:"%d \u062b\u0627\u0646\u064a\u0629",m:"\u062f\u0642\u064a\u0642\u0629",mm:"%d \u062f\u0642\u0627\u0626\u0642",h:"\u0633\u0627\u0639\u0629",hh:"%d \u0633\u0627\u0639\u0627\u062a",d:"\u064a\u0648\u0645",dd:"%d \u0623\u064a\u0627\u0645",M:"\u0634\u0647\u0631",MM:"%d \u0623\u0634\u0647\u0631",y:"\u0633\u0646\u0629",yy:"%d \u0633\u0646\u0648\u0627\u062a"},week:{dow:0,doy:12}}),{1:"1",2:"2",3:"3",4:"4",5:"5",6:"6",7:"7",8:"8",9:"9",0:"0"}),N={s:["\u0623\u0642\u0644 \u0645\u0646 \u062b\u0627\u0646\u064a\u0629","\u062b\u0627\u0646\u064a\u0629 \u0648\u0627\u062d\u062f\u0629",["\u062b\u0627\u0646\u064a\u062a\u0627\u0646","\u062b\u0627\u0646\u064a\u062a\u064a\u0646"],"%d \u062b\u0648\u0627\u0646","%d \u062b\u0627\u0646\u064a\u0629","%d \u062b\u0627\u0646\u064a\u0629"],m:["\u0623\u0642\u0644 \u0645\u0646 \u062f\u0642\u064a\u0642\u0629","\u062f\u0642\u064a\u0642\u0629 \u0648\u0627\u062d\u062f\u0629",["\u062f\u0642\u064a\u0642\u062a\u0627\u0646","\u062f\u0642\u064a\u0642\u062a\u064a\u0646"],"%d \u062f\u0642\u0627\u0626\u0642","%d \u062f\u0642\u064a\u0642\u0629","%d \u062f\u0642\u064a\u0642\u0629"],h:["\u0623\u0642\u0644 \u0645\u0646 \u0633\u0627\u0639\u0629","\u0633\u0627\u0639\u0629 \u0648\u0627\u062d\u062f\u0629",["\u0633\u0627\u0639\u062a\u0627\u0646","\u0633\u0627\u0639\u062a\u064a\u0646"],"%d \u0633\u0627\u0639\u0627\u062a","%d \u0633\u0627\u0639\u0629","%d \u0633\u0627\u0639\u0629"],d:["\u0623\u0642\u0644 \u0645\u0646 \u064a\u0648\u0645","\u064a\u0648\u0645 \u0648\u0627\u062d\u062f",["\u064a\u0648\u0645\u0627\u0646","\u064a\u0648\u0645\u064a\u0646"],"%d \u0623\u064a\u0627\u0645","%d \u064a\u0648\u0645\u064b\u0627","%d \u064a\u0648\u0645"],M:["\u0623\u0642\u0644 \u0645\u0646 \u0634\u0647\u0631","\u0634\u0647\u0631 \u0648\u0627\u062d\u062f",["\u0634\u0647\u0631\u0627\u0646","\u0634\u0647\u0631\u064a\u0646"],"%d \u0623\u0634\u0647\u0631","%d \u0634\u0647\u0631\u0627","%d \u0634\u0647\u0631"],y:["\u0623\u0642\u0644 \u0645\u0646 \u0639\u0627\u0645","\u0639\u0627\u0645 \u0648\u0627\u062d\u062f",["\u0639\u0627\u0645\u0627\u0646","\u0639\u0627\u0645\u064a\u0646"],"%d \u0623\u0639\u0648\u0627\u0645","%d \u0639\u0627\u0645\u064b\u0627","%d \u0639\u0627\u0645"]},d=["\u064a\u0646\u0627\u064a\u0631","\u0641\u0628\u0631\u0627\u064a\u0631","\u0645\u0627\u0631\u0633","\u0623\u0628\u0631\u064a\u0644","\u0645\u0627\u064a\u0648","\u064a\u0648\u0646\u064a\u0648","\u064a\u0648\u0644\u064a\u0648","\u0623\u063a\u0633\u0637\u0633","\u0633\u0628\u062a\u0645\u0628\u0631","\u0623\u0643\u062a\u0648\u0628\u0631","\u0646\u0648\u0641\u0645\u0628\u0631","\u062f\u064a\u0633\u0645\u0628\u0631"],R=(e.defineLocale("ar-ly",{months:d,monthsShort:d,weekdays:"\u0627\u0644\u0623\u062d\u062f_\u0627\u0644\u0625\u062b\u0646\u064a\u0646_\u0627\u0644\u062b\u0644\u0627\u062b\u0627\u0621_\u0627\u0644\u0623\u0631\u0628\u0639\u0627\u0621_\u0627\u0644\u062e\u0645\u064a\u0633_\u0627\u0644\u062c\u0645\u0639\u0629_\u0627\u0644\u0633\u0628\u062a".split("_"),weekdaysShort:"\u0623\u062d\u062f_\u0625\u062b\u0646\u064a\u0646_\u062b\u0644\u0627\u062b\u0627\u0621_\u0623\u0631\u0628\u0639\u0627\u0621_\u062e\u0645\u064a\u0633_\u062c\u0645\u0639\u0629_\u0633\u0628\u062a".split("_"),weekdaysMin:"\u062d_\u0646_\u062b_\u0631_\u062e_\u062c_\u0633".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"D/\u200fM/\u200fYYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},meridiemParse:/\u0635|\u0645/,isPM:function(e){return"\u0645"===e},meridiem:function(e,a,_){return e<12?"\u0635":"\u0645"},calendar:{sameDay:"[\u0627\u0644\u064a\u0648\u0645 \u0639\u0646\u062f \u0627\u0644\u0633\u0627\u0639\u0629] LT",nextDay:"[\u063a\u062f\u064b\u0627 \u0639\u0646\u062f \u0627\u0644\u0633\u0627\u0639\u0629] LT",nextWeek:"dddd [\u0639\u0646\u062f \u0627\u0644\u0633\u0627\u0639\u0629] LT",lastDay:"[\u0623\u0645\u0633 \u0639\u0646\u062f \u0627\u0644\u0633\u0627\u0639\u0629] LT",lastWeek:"dddd [\u0639\u0646\u062f \u0627\u0644\u0633\u0627\u0639\u0629] LT",sameElse:"L"},relativeTime:{future:"\u0628\u0639\u062f %s",past:"\u0645\u0646\u0630 %s",s:_("s"),ss:_("s"),m:_("m"),mm:_("m"),h:_("h"),hh:_("h"),d:_("d"),dd:_("d"),M:_("M"),MM:_("M"),y:_("y"),yy:_("y")},preparse:function(e){return e.replace(/\u060c/g,",")},postformat:function(e){return e.replace(/\d/g,function(e){return I[e]}).replace(/,/g,"\u060c")},week:{dow:6,doy:12}}),e.defineLocale("ar-ma",{months:"\u064a\u0646\u0627\u064a\u0631_\u0641\u0628\u0631\u0627\u064a\u0631_\u0645\u0627\u0631\u0633_\u0623\u0628\u0631\u064a\u0644_\u0645\u0627\u064a_\u064a\u0648\u0646\u064a\u0648_\u064a\u0648\u0644\u064a\u0648\u0632_\u063a\u0634\u062a_\u0634\u062a\u0646\u0628\u0631_\u0623\u0643\u062a\u0648\u0628\u0631_\u0646\u0648\u0646\u0628\u0631_\u062f\u062c\u0646\u0628\u0631".split("_"),monthsShort:"\u064a\u0646\u0627\u064a\u0631_\u0641\u0628\u0631\u0627\u064a\u0631_\u0645\u0627\u0631\u0633_\u0623\u0628\u0631\u064a\u0644_\u0645\u0627\u064a_\u064a\u0648\u0646\u064a\u0648_\u064a\u0648\u0644\u064a\u0648\u0632_\u063a\u0634\u062a_\u0634\u062a\u0646\u0628\u0631_\u0623\u0643\u062a\u0648\u0628\u0631_\u0646\u0648\u0646\u0628\u0631_\u062f\u062c\u0646\u0628\u0631".split("_"),weekdays:"\u0627\u0644\u0623\u062d\u062f_\u0627\u0644\u0625\u062b\u0646\u064a\u0646_\u0627\u0644\u062b\u0644\u0627\u062b\u0627\u0621_\u0627\u0644\u0623\u0631\u0628\u0639\u0627\u0621_\u0627\u0644\u062e\u0645\u064a\u0633_\u0627\u0644\u062c\u0645\u0639\u0629_\u0627\u0644\u0633\u0628\u062a".split("_"),weekdaysShort:"\u0627\u062d\u062f_\u0627\u062b\u0646\u064a\u0646_\u062b\u0644\u0627\u062b\u0627\u0621_\u0627\u0631\u0628\u0639\u0627\u0621_\u062e\u0645\u064a\u0633_\u062c\u0645\u0639\u0629_\u0633\u0628\u062a".split("_"),weekdaysMin:"\u062d_\u0646_\u062b_\u0631_\u062e_\u062c_\u0633".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[\u0627\u0644\u064a\u0648\u0645 \u0639\u0644\u0649 \u0627\u0644\u0633\u0627\u0639\u0629] LT",nextDay:"[\u063a\u062f\u0627 \u0639\u0644\u0649 \u0627\u0644\u0633\u0627\u0639\u0629] LT",nextWeek:"dddd [\u0639\u0644\u0649 \u0627\u0644\u0633\u0627\u0639\u0629] LT",lastDay:"[\u0623\u0645\u0633 \u0639\u0644\u0649 \u0627\u0644\u0633\u0627\u0639\u0629] LT",lastWeek:"dddd [\u0639\u0644\u0649 \u0627\u0644\u0633\u0627\u0639\u0629] LT",sameElse:"L"},relativeTime:{future:"\u0641\u064a %s",past:"\u0645\u0646\u0630 %s",s:"\u062b\u0648\u0627\u0646",ss:"%d \u062b\u0627\u0646\u064a\u0629",m:"\u062f\u0642\u064a\u0642\u0629",mm:"%d \u062f\u0642\u0627\u0626\u0642",h:"\u0633\u0627\u0639\u0629",hh:"%d \u0633\u0627\u0639\u0627\u062a",d:"\u064a\u0648\u0645",dd:"%d \u0623\u064a\u0627\u0645",M:"\u0634\u0647\u0631",MM:"%d \u0623\u0634\u0647\u0631",y:"\u0633\u0646\u0629",yy:"%d \u0633\u0646\u0648\u0627\u062a"},week:{dow:1,doy:4}}),{1:"\u0661",2:"\u0662",3:"\u0663",4:"\u0664",5:"\u0665",6:"\u0666",7:"\u0667",8:"\u0668",9:"\u0669",0:"\u0660"}),C={"\u0661":"1","\u0662":"2","\u0663":"3","\u0664":"4","\u0665":"5","\u0666":"6","\u0667":"7","\u0668":"8","\u0669":"9","\u0660":"0"},K=(e.defineLocale("ar-sa",{months:"\u064a\u0646\u0627\u064a\u0631_\u0641\u0628\u0631\u0627\u064a\u0631_\u0645\u0627\u0631\u0633_\u0623\u0628\u0631\u064a\u0644_\u0645\u0627\u064a\u0648_\u064a\u0648\u0646\u064a\u0648_\u064a\u0648\u0644\u064a\u0648_\u0623\u063a\u0633\u0637\u0633_\u0633\u0628\u062a\u0645\u0628\u0631_\u0623\u0643\u062a\u0648\u0628\u0631_\u0646\u0648\u0641\u0645\u0628\u0631_\u062f\u064a\u0633\u0645\u0628\u0631".split("_"),monthsShort:"\u064a\u0646\u0627\u064a\u0631_\u0641\u0628\u0631\u0627\u064a\u0631_\u0645\u0627\u0631\u0633_\u0623\u0628\u0631\u064a\u0644_\u0645\u0627\u064a\u0648_\u064a\u0648\u0646\u064a\u0648_\u064a\u0648\u0644\u064a\u0648_\u0623\u063a\u0633\u0637\u0633_\u0633\u0628\u062a\u0645\u0628\u0631_\u0623\u0643\u062a\u0648\u0628\u0631_\u0646\u0648\u0641\u0645\u0628\u0631_\u062f\u064a\u0633\u0645\u0628\u0631".split("_"),weekdays:"\u0627\u0644\u0623\u062d\u062f_\u0627\u0644\u0625\u062b\u0646\u064a\u0646_\u0627\u0644\u062b\u0644\u0627\u062b\u0627\u0621_\u0627\u0644\u0623\u0631\u0628\u0639\u0627\u0621_\u0627\u0644\u062e\u0645\u064a\u0633_\u0627\u0644\u062c\u0645\u0639\u0629_\u0627\u0644\u0633\u0628\u062a".split("_"),weekdaysShort:"\u0623\u062d\u062f_\u0625\u062b\u0646\u064a\u0646_\u062b\u0644\u0627\u062b\u0627\u0621_\u0623\u0631\u0628\u0639\u0627\u0621_\u062e\u0645\u064a\u0633_\u062c\u0645\u0639\u0629_\u0633\u0628\u062a".split("_"),weekdaysMin:"\u062d_\u0646_\u062b_\u0631_\u062e_\u062c_\u0633".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},meridiemParse:/\u0635|\u0645/,isPM:function(e){return"\u0645"===e},meridiem:function(e,a,_){return e<12?"\u0635":"\u0645"},calendar:{sameDay:"[\u0627\u0644\u064a\u0648\u0645 \u0639\u0644\u0649 \u0627\u0644\u0633\u0627\u0639\u0629] LT",nextDay:"[\u063a\u062f\u0627 \u0639\u0644\u0649 \u0627\u0644\u0633\u0627\u0639\u0629] LT",nextWeek:"dddd [\u0639\u0644\u0649 \u0627\u0644\u0633\u0627\u0639\u0629] LT",lastDay:"[\u0623\u0645\u0633 \u0639\u0644\u0649 \u0627\u0644\u0633\u0627\u0639\u0629] LT",lastWeek:"dddd [\u0639\u0644\u0649 \u0627\u0644\u0633\u0627\u0639\u0629] LT",sameElse:"L"},relativeTime:{future:"\u0641\u064a %s",past:"\u0645\u0646\u0630 %s",s:"\u062b\u0648\u0627\u0646",ss:"%d \u062b\u0627\u0646\u064a\u0629",m:"\u062f\u0642\u064a\u0642\u0629",mm:"%d \u062f\u0642\u0627\u0626\u0642",h:"\u0633\u0627\u0639\u0629",hh:"%d \u0633\u0627\u0639\u0627\u062a",d:"\u064a\u0648\u0645",dd:"%d \u0623\u064a\u0627\u0645",M:"\u0634\u0647\u0631",MM:"%d \u0623\u0634\u0647\u0631",y:"\u0633\u0646\u0629",yy:"%d \u0633\u0646\u0648\u0627\u062a"},preparse:function(e){return e.replace(/[\u0661\u0662\u0663\u0664\u0665\u0666\u0667\u0668\u0669\u0660]/g,function(e){return C[e]}).replace(/\u060c/g,",")},postformat:function(e){return e.replace(/\d/g,function(e){return R[e]}).replace(/,/g,"\u060c")},week:{dow:0,doy:6}}),e.defineLocale("ar-tn",{months:"\u062c\u0627\u0646\u0641\u064a_\u0641\u064a\u0641\u0631\u064a_\u0645\u0627\u0631\u0633_\u0623\u0641\u0631\u064a\u0644_\u0645\u0627\u064a_\u062c\u0648\u0627\u0646_\u062c\u0648\u064a\u0644\u064a\u0629_\u0623\u0648\u062a_\u0633\u0628\u062a\u0645\u0628\u0631_\u0623\u0643\u062a\u0648\u0628\u0631_\u0646\u0648\u0641\u0645\u0628\u0631_\u062f\u064a\u0633\u0645\u0628\u0631".split("_"),monthsShort:"\u062c\u0627\u0646\u0641\u064a_\u0641\u064a\u0641\u0631\u064a_\u0645\u0627\u0631\u0633_\u0623\u0641\u0631\u064a\u0644_\u0645\u0627\u064a_\u062c\u0648\u0627\u0646_\u062c\u0648\u064a\u0644\u064a\u0629_\u0623\u0648\u062a_\u0633\u0628\u062a\u0645\u0628\u0631_\u0623\u0643\u062a\u0648\u0628\u0631_\u0646\u0648\u0641\u0645\u0628\u0631_\u062f\u064a\u0633\u0645\u0628\u0631".split("_"),weekdays:"\u0627\u0644\u0623\u062d\u062f_\u0627\u0644\u0625\u062b\u0646\u064a\u0646_\u0627\u0644\u062b\u0644\u0627\u062b\u0627\u0621_\u0627\u0644\u0623\u0631\u0628\u0639\u0627\u0621_\u0627\u0644\u062e\u0645\u064a\u0633_\u0627\u0644\u062c\u0645\u0639\u0629_\u0627\u0644\u0633\u0628\u062a".split("_"),weekdaysShort:"\u0623\u062d\u062f_\u0625\u062b\u0646\u064a\u0646_\u062b\u0644\u0627\u062b\u0627\u0621_\u0623\u0631\u0628\u0639\u0627\u0621_\u062e\u0645\u064a\u0633_\u062c\u0645\u0639\u0629_\u0633\u0628\u062a".split("_"),weekdaysMin:"\u062d_\u0646_\u062b_\u0631_\u062e_\u062c_\u0633".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[\u0627\u0644\u064a\u0648\u0645 \u0639\u0644\u0649 \u0627\u0644\u0633\u0627\u0639\u0629] LT",nextDay:"[\u063a\u062f\u0627 \u0639\u0644\u0649 \u0627\u0644\u0633\u0627\u0639\u0629] LT",nextWeek:"dddd [\u0639\u0644\u0649 \u0627\u0644\u0633\u0627\u0639\u0629] LT",lastDay:"[\u0623\u0645\u0633 \u0639\u0644\u0649 \u0627\u0644\u0633\u0627\u0639\u0629] LT",lastWeek:"dddd [\u0639\u0644\u0649 \u0627\u0644\u0633\u0627\u0639\u0629] LT",sameElse:"L"},relativeTime:{future:"\u0641\u064a %s",past:"\u0645\u0646\u0630 %s",s:"\u062b\u0648\u0627\u0646",ss:"%d \u062b\u0627\u0646\u064a\u0629",m:"\u062f\u0642\u064a\u0642\u0629",mm:"%d \u062f\u0642\u0627\u0626\u0642",h:"\u0633\u0627\u0639\u0629",hh:"%d \u0633\u0627\u0639\u0627\u062a",d:"\u064a\u0648\u0645",dd:"%d \u0623\u064a\u0627\u0645",M:"\u0634\u0647\u0631",MM:"%d \u0623\u0634\u0647\u0631",y:"\u0633\u0646\u0629",yy:"%d \u0633\u0646\u0648\u0627\u062a"},week:{dow:1,doy:4}}),{1:"\u0661",2:"\u0662",3:"\u0663",4:"\u0664",5:"\u0665",6:"\u0666",7:"\u0667",8:"\u0668",9:"\u0669",0:"\u0660"}),G={"\u0661":"1","\u0662":"2","\u0663":"3","\u0664":"4","\u0665":"5","\u0666":"6","\u0667":"7","\u0668":"8","\u0669":"9","\u0660":"0"},B={s:["\u0623\u0642\u0644 \u0645\u0646 \u062b\u0627\u0646\u064a\u0629","\u062b\u0627\u0646\u064a\u0629 \u0648\u0627\u062d\u062f\u0629",["\u062b\u0627\u0646\u064a\u062a\u0627\u0646","\u062b\u0627\u0646\u064a\u062a\u064a\u0646"],"%d \u062b\u0648\u0627\u0646","%d \u062b\u0627\u0646\u064a\u0629","%d \u062b\u0627\u0646\u064a\u0629"],m:["\u0623\u0642\u0644 \u0645\u0646 \u062f\u0642\u064a\u0642\u0629","\u062f\u0642\u064a\u0642\u0629 \u0648\u0627\u062d\u062f\u0629",["\u062f\u0642\u064a\u0642\u062a\u0627\u0646","\u062f\u0642\u064a\u0642\u062a\u064a\u0646"],"%d \u062f\u0642\u0627\u0626\u0642","%d \u062f\u0642\u064a\u0642\u0629","%d \u062f\u0642\u064a\u0642\u0629"],h:["\u0623\u0642\u0644 \u0645\u0646 \u0633\u0627\u0639\u0629","\u0633\u0627\u0639\u0629 \u0648\u0627\u062d\u062f\u0629",["\u0633\u0627\u0639\u062a\u0627\u0646","\u0633\u0627\u0639\u062a\u064a\u0646"],"%d \u0633\u0627\u0639\u0627\u062a","%d \u0633\u0627\u0639\u0629","%d \u0633\u0627\u0639\u0629"],d:["\u0623\u0642\u0644 \u0645\u0646 \u064a\u0648\u0645","\u064a\u0648\u0645 \u0648\u0627\u062d\u062f",["\u064a\u0648\u0645\u0627\u0646","\u064a\u0648\u0645\u064a\u0646"],"%d \u0623\u064a\u0627\u0645","%d \u064a\u0648\u0645\u064b\u0627","%d \u064a\u0648\u0645"],M:["\u0623\u0642\u0644 \u0645\u0646 \u0634\u0647\u0631","\u0634\u0647\u0631 \u0648\u0627\u062d\u062f",["\u0634\u0647\u0631\u0627\u0646","\u0634\u0647\u0631\u064a\u0646"],"%d \u0623\u0634\u0647\u0631","%d \u0634\u0647\u0631\u0627","%d \u0634\u0647\u0631"],y:["\u0623\u0642\u0644 \u0645\u0646 \u0639\u0627\u0645","\u0639\u0627\u0645 \u0648\u0627\u062d\u062f",["\u0639\u0627\u0645\u0627\u0646","\u0639\u0627\u0645\u064a\u0646"],"%d \u0623\u0639\u0648\u0627\u0645","%d \u0639\u0627\u0645\u064b\u0627","%d \u0639\u0627\u0645"]},d=["\u064a\u0646\u0627\u064a\u0631","\u0641\u0628\u0631\u0627\u064a\u0631","\u0645\u0627\u0631\u0633","\u0623\u0628\u0631\u064a\u0644","\u0645\u0627\u064a\u0648","\u064a\u0648\u0646\u064a\u0648","\u064a\u0648\u0644\u064a\u0648","\u0623\u063a\u0633\u0637\u0633","\u0633\u0628\u062a\u0645\u0628\u0631","\u0623\u0643\u062a\u0648\u0628\u0631","\u0646\u0648\u0641\u0645\u0628\u0631","\u062f\u064a\u0633\u0645\u0628\u0631"],q=(e.defineLocale("ar",{months:d,monthsShort:d,weekdays:"\u0627\u0644\u0623\u062d\u062f_\u0627\u0644\u0625\u062b\u0646\u064a\u0646_\u0627\u0644\u062b\u0644\u0627\u062b\u0627\u0621_\u0627\u0644\u0623\u0631\u0628\u0639\u0627\u0621_\u0627\u0644\u062e\u0645\u064a\u0633_\u0627\u0644\u062c\u0645\u0639\u0629_\u0627\u0644\u0633\u0628\u062a".split("_"),weekdaysShort:"\u0623\u062d\u062f_\u0625\u062b\u0646\u064a\u0646_\u062b\u0644\u0627\u062b\u0627\u0621_\u0623\u0631\u0628\u0639\u0627\u0621_\u062e\u0645\u064a\u0633_\u062c\u0645\u0639\u0629_\u0633\u0628\u062a".split("_"),weekdaysMin:"\u062d_\u0646_\u062b_\u0631_\u062e_\u062c_\u0633".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"D/\u200fM/\u200fYYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},meridiemParse:/\u0635|\u0645/,isPM:function(e){return"\u0645"===e},meridiem:function(e,a,_){return e<12?"\u0635":"\u0645"},calendar:{sameDay:"[\u0627\u0644\u064a\u0648\u0645 \u0639\u0646\u062f \u0627\u0644\u0633\u0627\u0639\u0629] LT",nextDay:"[\u063a\u062f\u064b\u0627 \u0639\u0646\u062f \u0627\u0644\u0633\u0627\u0639\u0629] LT",nextWeek:"dddd [\u0639\u0646\u062f \u0627\u0644\u0633\u0627\u0639\u0629] LT",lastDay:"[\u0623\u0645\u0633 \u0639\u0646\u062f \u0627\u0644\u0633\u0627\u0639\u0629] LT",lastWeek:"dddd [\u0639\u0646\u062f \u0627\u0644\u0633\u0627\u0639\u0629] LT",sameElse:"L"},relativeTime:{future:"\u0628\u0639\u062f %s",past:"\u0645\u0646\u0630 %s",s:s("s"),ss:s("s"),m:s("m"),mm:s("m"),h:s("h"),hh:s("h"),d:s("d"),dd:s("d"),M:s("M"),MM:s("M"),y:s("y"),yy:s("y")},preparse:function(e){return e.replace(/[\u0661\u0662\u0663\u0664\u0665\u0666\u0667\u0668\u0669\u0660]/g,function(e){return G[e]}).replace(/\u060c/g,",")},postformat:function(e){return e.replace(/\d/g,function(e){return K[e]}).replace(/,/g,"\u060c")},week:{dow:6,doy:12}}),{1:"-inci",5:"-inci",8:"-inci",70:"-inci",80:"-inci",2:"-nci",7:"-nci",20:"-nci",50:"-nci",3:"-\xfcnc\xfc",4:"-\xfcnc\xfc",100:"-\xfcnc\xfc",6:"-nc\u0131",9:"-uncu",10:"-uncu",30:"-uncu",60:"-\u0131nc\u0131",90:"-\u0131nc\u0131"});function t(e,a,_){return"m"===_?a?"\u0445\u0432\u0456\u043b\u0456\u043d\u0430":"\u0445\u0432\u0456\u043b\u0456\u043d\u0443":"h"===_?a?"\u0433\u0430\u0434\u0437\u0456\u043d\u0430":"\u0433\u0430\u0434\u0437\u0456\u043d\u0443":e+" "+(e=+e,a=(a={ss:a?"\u0441\u0435\u043a\u0443\u043d\u0434\u0430_\u0441\u0435\u043a\u0443\u043d\u0434\u044b_\u0441\u0435\u043a\u0443\u043d\u0434":"\u0441\u0435\u043a\u0443\u043d\u0434\u0443_\u0441\u0435\u043a\u0443\u043d\u0434\u044b_\u0441\u0435\u043a\u0443\u043d\u0434",mm:a?"\u0445\u0432\u0456\u043b\u0456\u043d\u0430_\u0445\u0432\u0456\u043b\u0456\u043d\u044b_\u0445\u0432\u0456\u043b\u0456\u043d":"\u0445\u0432\u0456\u043b\u0456\u043d\u0443_\u0445\u0432\u0456\u043b\u0456\u043d\u044b_\u0445\u0432\u0456\u043b\u0456\u043d",hh:a?"\u0433\u0430\u0434\u0437\u0456\u043d\u0430_\u0433\u0430\u0434\u0437\u0456\u043d\u044b_\u0433\u0430\u0434\u0437\u0456\u043d":"\u0433\u0430\u0434\u0437\u0456\u043d\u0443_\u0433\u0430\u0434\u0437\u0456\u043d\u044b_\u0433\u0430\u0434\u0437\u0456\u043d",dd:"\u0434\u0437\u0435\u043d\u044c_\u0434\u043d\u0456_\u0434\u0437\u0451\u043d",MM:"\u043c\u0435\u0441\u044f\u0446_\u043c\u0435\u0441\u044f\u0446\u044b_\u043c\u0435\u0441\u044f\u0446\u0430\u045e",yy:"\u0433\u043e\u0434_\u0433\u0430\u0434\u044b_\u0433\u0430\u0434\u043e\u045e"}[_]).split("_"),e%10==1&&e%100!=11?a[0]:2<=e%10&&e%10<=4&&(e%100<10||20<=e%100)?a[1]:a[2])}e.defineLocale("az",{months:"yanvar_fevral_mart_aprel_may_iyun_iyul_avqust_sentyabr_oktyabr_noyabr_dekabr".split("_"),monthsShort:"yan_fev_mar_apr_may_iyn_iyl_avq_sen_okt_noy_dek".split("_"),weekdays:"Bazar_Bazar ert\u0259si_\xc7\u0259r\u015f\u0259nb\u0259 ax\u015fam\u0131_\xc7\u0259r\u015f\u0259nb\u0259_C\xfcm\u0259 ax\u015fam\u0131_C\xfcm\u0259_\u015e\u0259nb\u0259".split("_"),weekdaysShort:"Baz_BzE_\xc7Ax_\xc7\u0259r_CAx_C\xfcm_\u015e\u0259n".split("_"),weekdaysMin:"Bz_BE_\xc7A_\xc7\u0259_CA_C\xfc_\u015e\u0259".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[bug\xfcn saat] LT",nextDay:"[sabah saat] LT",nextWeek:"[g\u0259l\u0259n h\u0259ft\u0259] dddd [saat] LT",lastDay:"[d\xfcn\u0259n] LT",lastWeek:"[ke\xe7\u0259n h\u0259ft\u0259] dddd [saat] LT",sameElse:"L"},relativeTime:{future:"%s sonra",past:"%s \u0259vv\u0259l",s:"bir ne\xe7\u0259 saniy\u0259",ss:"%d saniy\u0259",m:"bir d\u0259qiq\u0259",mm:"%d d\u0259qiq\u0259",h:"bir saat",hh:"%d saat",d:"bir g\xfcn",dd:"%d g\xfcn",M:"bir ay",MM:"%d ay",y:"bir il",yy:"%d il"},meridiemParse:/gec\u0259|s\u0259h\u0259r|g\xfcnd\xfcz|ax\u015fam/,isPM:function(e){return/^(g\xfcnd\xfcz|ax\u015fam)$/.test(e)},meridiem:function(e,a,_){return e<4?"gec\u0259":e<12?"s\u0259h\u0259r":e<17?"g\xfcnd\xfcz":"ax\u015fam"},dayOfMonthOrdinalParse:/\d{1,2}-(\u0131nc\u0131|inci|nci|\xfcnc\xfc|nc\u0131|uncu)/,ordinal:function(e){if(0===e)return e+"-\u0131nc\u0131";var a=e%10;return e+(q[a]||q[e%100-a]||q[100<=e?100:null])},week:{dow:1,doy:7}}),e.defineLocale("be",{months:{format:"\u0441\u0442\u0443\u0434\u0437\u0435\u043d\u044f_\u043b\u044e\u0442\u0430\u0433\u0430_\u0441\u0430\u043a\u0430\u0432\u0456\u043a\u0430_\u043a\u0440\u0430\u0441\u0430\u0432\u0456\u043a\u0430_\u0442\u0440\u0430\u045e\u043d\u044f_\u0447\u044d\u0440\u0432\u0435\u043d\u044f_\u043b\u0456\u043f\u0435\u043d\u044f_\u0436\u043d\u0456\u045e\u043d\u044f_\u0432\u0435\u0440\u0430\u0441\u043d\u044f_\u043a\u0430\u0441\u0442\u0440\u044b\u0447\u043d\u0456\u043a\u0430_\u043b\u0456\u0441\u0442\u0430\u043f\u0430\u0434\u0430_\u0441\u043d\u0435\u0436\u043d\u044f".split("_"),standalone:"\u0441\u0442\u0443\u0434\u0437\u0435\u043d\u044c_\u043b\u044e\u0442\u044b_\u0441\u0430\u043a\u0430\u0432\u0456\u043a_\u043a\u0440\u0430\u0441\u0430\u0432\u0456\u043a_\u0442\u0440\u0430\u0432\u0435\u043d\u044c_\u0447\u044d\u0440\u0432\u0435\u043d\u044c_\u043b\u0456\u043f\u0435\u043d\u044c_\u0436\u043d\u0456\u0432\u0435\u043d\u044c_\u0432\u0435\u0440\u0430\u0441\u0435\u043d\u044c_\u043a\u0430\u0441\u0442\u0440\u044b\u0447\u043d\u0456\u043a_\u043b\u0456\u0441\u0442\u0430\u043f\u0430\u0434_\u0441\u043d\u0435\u0436\u0430\u043d\u044c".split("_")},monthsShort:"\u0441\u0442\u0443\u0434_\u043b\u044e\u0442_\u0441\u0430\u043a_\u043a\u0440\u0430\u0441_\u0442\u0440\u0430\u0432_\u0447\u044d\u0440\u0432_\u043b\u0456\u043f_\u0436\u043d\u0456\u0432_\u0432\u0435\u0440_\u043a\u0430\u0441\u0442_\u043b\u0456\u0441\u0442_\u0441\u043d\u0435\u0436".split("_"),weekdays:{format:"\u043d\u044f\u0434\u0437\u0435\u043b\u044e_\u043f\u0430\u043d\u044f\u0434\u0437\u0435\u043b\u0430\u043a_\u0430\u045e\u0442\u043e\u0440\u0430\u043a_\u0441\u0435\u0440\u0430\u0434\u0443_\u0447\u0430\u0446\u0432\u0435\u0440_\u043f\u044f\u0442\u043d\u0456\u0446\u0443_\u0441\u0443\u0431\u043e\u0442\u0443".split("_"),standalone:"\u043d\u044f\u0434\u0437\u0435\u043b\u044f_\u043f\u0430\u043d\u044f\u0434\u0437\u0435\u043b\u0430\u043a_\u0430\u045e\u0442\u043e\u0440\u0430\u043a_\u0441\u0435\u0440\u0430\u0434\u0430_\u0447\u0430\u0446\u0432\u0435\u0440_\u043f\u044f\u0442\u043d\u0456\u0446\u0430_\u0441\u0443\u0431\u043e\u0442\u0430".split("_"),isFormat:/\[ ?[\u0423\u0443\u045e] ?(?:\u043c\u0456\u043d\u0443\u043b\u0443\u044e|\u043d\u0430\u0441\u0442\u0443\u043f\u043d\u0443\u044e)? ?\] ?dddd/},weekdaysShort:"\u043d\u0434_\u043f\u043d_\u0430\u0442_\u0441\u0440_\u0447\u0446_\u043f\u0442_\u0441\u0431".split("_"),weekdaysMin:"\u043d\u0434_\u043f\u043d_\u0430\u0442_\u0441\u0440_\u0447\u0446_\u043f\u0442_\u0441\u0431".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY \u0433.",LLL:"D MMMM YYYY \u0433., HH:mm",LLLL:"dddd, D MMMM YYYY \u0433., HH:mm"},calendar:{sameDay:"[\u0421\u0451\u043d\u043d\u044f \u045e] LT",nextDay:"[\u0417\u0430\u045e\u0442\u0440\u0430 \u045e] LT",lastDay:"[\u0423\u0447\u043e\u0440\u0430 \u045e] LT",nextWeek:function(){return"[\u0423] dddd [\u045e] LT"},lastWeek:function(){switch(this.day()){case 0:case 3:case 5:case 6:return"[\u0423 \u043c\u0456\u043d\u0443\u043b\u0443\u044e] dddd [\u045e] LT";case 1:case 2:case 4:return"[\u0423 \u043c\u0456\u043d\u0443\u043b\u044b] dddd [\u045e] LT"}},sameElse:"L"},relativeTime:{future:"\u043f\u0440\u0430\u0437 %s",past:"%s \u0442\u0430\u043c\u0443",s:"\u043d\u0435\u043a\u0430\u043b\u044c\u043a\u0456 \u0441\u0435\u043a\u0443\u043d\u0434",m:t,mm:t,h:t,hh:t,d:"\u0434\u0437\u0435\u043d\u044c",dd:t,M:"\u043c\u0435\u0441\u044f\u0446",MM:t,y:"\u0433\u043e\u0434",yy:t},meridiemParse:/\u043d\u043e\u0447\u044b|\u0440\u0430\u043d\u0456\u0446\u044b|\u0434\u043d\u044f|\u0432\u0435\u0447\u0430\u0440\u0430/,isPM:function(e){return/^(\u0434\u043d\u044f|\u0432\u0435\u0447\u0430\u0440\u0430)$/.test(e)},meridiem:function(e,a,_){return e<4?"\u043d\u043e\u0447\u044b":e<12?"\u0440\u0430\u043d\u0456\u0446\u044b":e<17?"\u0434\u043d\u044f":"\u0432\u0435\u0447\u0430\u0440\u0430"},dayOfMonthOrdinalParse:/\d{1,2}-(\u0456|\u044b|\u0433\u0430)/,ordinal:function(e,a){switch(a){case"M":case"d":case"DDD":case"w":case"W":return e%10!=2&&e%10!=3||e%100==12||e%100==13?e+"-\u044b":e+"-\u0456";case"D":return e+"-\u0433\u0430";default:return e}},week:{dow:1,doy:7}}),e.defineLocale("bg",{months:"\u044f\u043d\u0443\u0430\u0440\u0438_\u0444\u0435\u0432\u0440\u0443\u0430\u0440\u0438_\u043c\u0430\u0440\u0442_\u0430\u043f\u0440\u0438\u043b_\u043c\u0430\u0439_\u044e\u043d\u0438_\u044e\u043b\u0438_\u0430\u0432\u0433\u0443\u0441\u0442_\u0441\u0435\u043f\u0442\u0435\u043c\u0432\u0440\u0438_\u043e\u043a\u0442\u043e\u043c\u0432\u0440\u0438_\u043d\u043e\u0435\u043c\u0432\u0440\u0438_\u0434\u0435\u043a\u0435\u043c\u0432\u0440\u0438".split("_"),monthsShort:"\u044f\u043d\u0443_\u0444\u0435\u0432_\u043c\u0430\u0440_\u0430\u043f\u0440_\u043c\u0430\u0439_\u044e\u043d\u0438_\u044e\u043b\u0438_\u0430\u0432\u0433_\u0441\u0435\u043f_\u043e\u043a\u0442_\u043d\u043e\u0435_\u0434\u0435\u043a".split("_"),weekdays:"\u043d\u0435\u0434\u0435\u043b\u044f_\u043f\u043e\u043d\u0435\u0434\u0435\u043b\u043d\u0438\u043a_\u0432\u0442\u043e\u0440\u043d\u0438\u043a_\u0441\u0440\u044f\u0434\u0430_\u0447\u0435\u0442\u0432\u044a\u0440\u0442\u044a\u043a_\u043f\u0435\u0442\u044a\u043a_\u0441\u044a\u0431\u043e\u0442\u0430".split("_"),weekdaysShort:"\u043d\u0435\u0434_\u043f\u043e\u043d_\u0432\u0442\u043e_\u0441\u0440\u044f_\u0447\u0435\u0442_\u043f\u0435\u0442_\u0441\u044a\u0431".split("_"),weekdaysMin:"\u043d\u0434_\u043f\u043d_\u0432\u0442_\u0441\u0440_\u0447\u0442_\u043f\u0442_\u0441\u0431".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"D.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY H:mm",LLLL:"dddd, D MMMM YYYY H:mm"},calendar:{sameDay:"[\u0414\u043d\u0435\u0441 \u0432] LT",nextDay:"[\u0423\u0442\u0440\u0435 \u0432] LT",nextWeek:"dddd [\u0432] LT",lastDay:"[\u0412\u0447\u0435\u0440\u0430 \u0432] LT",lastWeek:function(){switch(this.day()){case 0:case 3:case 6:return"[\u041c\u0438\u043d\u0430\u043b\u0430\u0442\u0430] dddd [\u0432] LT";case 1:case 2:case 4:case 5:return"[\u041c\u0438\u043d\u0430\u043b\u0438\u044f] dddd [\u0432] LT"}},sameElse:"L"},relativeTime:{future:"\u0441\u043b\u0435\u0434 %s",past:"\u043f\u0440\u0435\u0434\u0438 %s",s:"\u043d\u044f\u043a\u043e\u043b\u043a\u043e \u0441\u0435\u043a\u0443\u043d\u0434\u0438",ss:"%d \u0441\u0435\u043a\u0443\u043d\u0434\u0438",m:"\u043c\u0438\u043d\u0443\u0442\u0430",mm:"%d \u043c\u0438\u043d\u0443\u0442\u0438",h:"\u0447\u0430\u0441",hh:"%d \u0447\u0430\u0441\u0430",d:"\u0434\u0435\u043d",dd:"%d \u0434\u0435\u043d\u0430",w:"\u0441\u0435\u0434\u043c\u0438\u0446\u0430",ww:"%d \u0441\u0435\u0434\u043c\u0438\u0446\u0438",M:"\u043c\u0435\u0441\u0435\u0446",MM:"%d \u043c\u0435\u0441\u0435\u0446\u0430",y:"\u0433\u043e\u0434\u0438\u043d\u0430",yy:"%d \u0433\u043e\u0434\u0438\u043d\u0438"},dayOfMonthOrdinalParse:/\d{1,2}-(\u0435\u0432|\u0435\u043d|\u0442\u0438|\u0432\u0438|\u0440\u0438|\u043c\u0438)/,ordinal:function(e){var a=e%10,_=e%100;return 0===e?e+"-\u0435\u0432":0==_?e+"-\u0435\u043d":10<_&&_<20?e+"-\u0442\u0438":1==a?e+"-\u0432\u0438":2==a?e+"-\u0440\u0438":7==a||8==a?e+"-\u043c\u0438":e+"-\u0442\u0438"},week:{dow:1,doy:7}}),e.defineLocale("bm",{months:"Zanwuyekalo_Fewuruyekalo_Marisikalo_Awirilikalo_M\u025bkalo_Zuw\u025bnkalo_Zuluyekalo_Utikalo_S\u025btanburukalo_\u0254kut\u0254burukalo_Nowanburukalo_Desanburukalo".split("_"),monthsShort:"Zan_Few_Mar_Awi_M\u025b_Zuw_Zul_Uti_S\u025bt_\u0254ku_Now_Des".split("_"),weekdays:"Kari_Nt\u025bn\u025bn_Tarata_Araba_Alamisa_Juma_Sibiri".split("_"),weekdaysShort:"Kar_Nt\u025b_Tar_Ara_Ala_Jum_Sib".split("_"),weekdaysMin:"Ka_Nt_Ta_Ar_Al_Ju_Si".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"MMMM [tile] D [san] YYYY",LLL:"MMMM [tile] D [san] YYYY [l\u025br\u025b] HH:mm",LLLL:"dddd MMMM [tile] D [san] YYYY [l\u025br\u025b] HH:mm"},calendar:{sameDay:"[Bi l\u025br\u025b] LT",nextDay:"[Sini l\u025br\u025b] LT",nextWeek:"dddd [don l\u025br\u025b] LT",lastDay:"[Kunu l\u025br\u025b] LT",lastWeek:"dddd [t\u025bm\u025bnen l\u025br\u025b] LT",sameElse:"L"},relativeTime:{future:"%s k\u0254n\u0254",past:"a b\u025b %s b\u0254",s:"sanga dama dama",ss:"sekondi %d",m:"miniti kelen",mm:"miniti %d",h:"l\u025br\u025b kelen",hh:"l\u025br\u025b %d",d:"tile kelen",dd:"tile %d",M:"kalo kelen",MM:"kalo %d",y:"san kelen",yy:"san %d"},week:{dow:1,doy:4}});var U={1:"\u09e7",2:"\u09e8",3:"\u09e9",4:"\u09ea",5:"\u09eb",6:"\u09ec",7:"\u09ed",8:"\u09ee",9:"\u09ef",0:"\u09e6"},$={"\u09e7":"1","\u09e8":"2","\u09e9":"3","\u09ea":"4","\u09eb":"5","\u09ec":"6","\u09ed":"7","\u09ee":"8","\u09ef":"9","\u09e6":"0"},Q=(e.defineLocale("bn-bd",{months:"\u099c\u09be\u09a8\u09c1\u09df\u09be\u09b0\u09bf_\u09ab\u09c7\u09ac\u09cd\u09b0\u09c1\u09df\u09be\u09b0\u09bf_\u09ae\u09be\u09b0\u09cd\u099a_\u098f\u09aa\u09cd\u09b0\u09bf\u09b2_\u09ae\u09c7_\u099c\u09c1\u09a8_\u099c\u09c1\u09b2\u09be\u0987_\u0986\u0997\u09b8\u09cd\u099f_\u09b8\u09c7\u09aa\u09cd\u099f\u09c7\u09ae\u09cd\u09ac\u09b0_\u0985\u0995\u09cd\u099f\u09cb\u09ac\u09b0_\u09a8\u09ad\u09c7\u09ae\u09cd\u09ac\u09b0_\u09a1\u09bf\u09b8\u09c7\u09ae\u09cd\u09ac\u09b0".split("_"),monthsShort:"\u099c\u09be\u09a8\u09c1_\u09ab\u09c7\u09ac\u09cd\u09b0\u09c1_\u09ae\u09be\u09b0\u09cd\u099a_\u098f\u09aa\u09cd\u09b0\u09bf\u09b2_\u09ae\u09c7_\u099c\u09c1\u09a8_\u099c\u09c1\u09b2\u09be\u0987_\u0986\u0997\u09b8\u09cd\u099f_\u09b8\u09c7\u09aa\u09cd\u099f_\u0985\u0995\u09cd\u099f\u09cb_\u09a8\u09ad\u09c7_\u09a1\u09bf\u09b8\u09c7".split("_"),weekdays:"\u09b0\u09ac\u09bf\u09ac\u09be\u09b0_\u09b8\u09cb\u09ae\u09ac\u09be\u09b0_\u09ae\u0999\u09cd\u0997\u09b2\u09ac\u09be\u09b0_\u09ac\u09c1\u09a7\u09ac\u09be\u09b0_\u09ac\u09c3\u09b9\u09b8\u09cd\u09aa\u09a4\u09bf\u09ac\u09be\u09b0_\u09b6\u09c1\u0995\u09cd\u09b0\u09ac\u09be\u09b0_\u09b6\u09a8\u09bf\u09ac\u09be\u09b0".split("_"),weekdaysShort:"\u09b0\u09ac\u09bf_\u09b8\u09cb\u09ae_\u09ae\u0999\u09cd\u0997\u09b2_\u09ac\u09c1\u09a7_\u09ac\u09c3\u09b9\u09b8\u09cd\u09aa\u09a4\u09bf_\u09b6\u09c1\u0995\u09cd\u09b0_\u09b6\u09a8\u09bf".split("_"),weekdaysMin:"\u09b0\u09ac\u09bf_\u09b8\u09cb\u09ae_\u09ae\u0999\u09cd\u0997\u09b2_\u09ac\u09c1\u09a7_\u09ac\u09c3\u09b9_\u09b6\u09c1\u0995\u09cd\u09b0_\u09b6\u09a8\u09bf".split("_"),longDateFormat:{LT:"A h:mm \u09b8\u09ae\u09df",LTS:"A h:mm:ss \u09b8\u09ae\u09df",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, A h:mm \u09b8\u09ae\u09df",LLLL:"dddd, D MMMM YYYY, A h:mm \u09b8\u09ae\u09df"},calendar:{sameDay:"[\u0986\u099c] LT",nextDay:"[\u0986\u0997\u09be\u09ae\u09c0\u0995\u09be\u09b2] LT",nextWeek:"dddd, LT",lastDay:"[\u0997\u09a4\u0995\u09be\u09b2] LT",lastWeek:"[\u0997\u09a4] dddd, LT",sameElse:"L"},relativeTime:{future:"%s \u09aa\u09b0\u09c7",past:"%s \u0986\u0997\u09c7",s:"\u0995\u09df\u09c7\u0995 \u09b8\u09c7\u0995\u09c7\u09a8\u09cd\u09a1",ss:"%d \u09b8\u09c7\u0995\u09c7\u09a8\u09cd\u09a1",m:"\u098f\u0995 \u09ae\u09bf\u09a8\u09bf\u099f",mm:"%d \u09ae\u09bf\u09a8\u09bf\u099f",h:"\u098f\u0995 \u0998\u09a8\u09cd\u099f\u09be",hh:"%d \u0998\u09a8\u09cd\u099f\u09be",d:"\u098f\u0995 \u09a6\u09bf\u09a8",dd:"%d \u09a6\u09bf\u09a8",M:"\u098f\u0995 \u09ae\u09be\u09b8",MM:"%d \u09ae\u09be\u09b8",y:"\u098f\u0995 \u09ac\u099b\u09b0",yy:"%d \u09ac\u099b\u09b0"},preparse:function(e){return e.replace(/[\u09e7\u09e8\u09e9\u09ea\u09eb\u09ec\u09ed\u09ee\u09ef\u09e6]/g,function(e){return $[e]})},postformat:function(e){return e.replace(/\d/g,function(e){return U[e]})},meridiemParse:/\u09b0\u09be\u09a4|\u09ad\u09cb\u09b0|\u09b8\u0995\u09be\u09b2|\u09a6\u09c1\u09aa\u09c1\u09b0|\u09ac\u09bf\u0995\u09be\u09b2|\u09b8\u09a8\u09cd\u09a7\u09cd\u09af\u09be|\u09b0\u09be\u09a4/,meridiemHour:function(e,a){return 12===e&&(e=0),"\u09b0\u09be\u09a4"===a?e<4?e:e+12:"\u09ad\u09cb\u09b0"===a||"\u09b8\u0995\u09be\u09b2"===a?e:"\u09a6\u09c1\u09aa\u09c1\u09b0"===a?3<=e?e:e+12:"\u09ac\u09bf\u0995\u09be\u09b2"===a||"\u09b8\u09a8\u09cd\u09a7\u09cd\u09af\u09be"===a?e+12:void 0},meridiem:function(e,a,_){return e<4?"\u09b0\u09be\u09a4":e<6?"\u09ad\u09cb\u09b0":e<12?"\u09b8\u0995\u09be\u09b2":e<15?"\u09a6\u09c1\u09aa\u09c1\u09b0":e<18?"\u09ac\u09bf\u0995\u09be\u09b2":e<20?"\u09b8\u09a8\u09cd\u09a7\u09cd\u09af\u09be":"\u09b0\u09be\u09a4"},week:{dow:0,doy:6}}),{1:"\u09e7",2:"\u09e8",3:"\u09e9",4:"\u09ea",5:"\u09eb",6:"\u09ec",7:"\u09ed",8:"\u09ee",9:"\u09ef",0:"\u09e6"}),V={"\u09e7":"1","\u09e8":"2","\u09e9":"3","\u09ea":"4","\u09eb":"5","\u09ec":"6","\u09ed":"7","\u09ee":"8","\u09ef":"9","\u09e6":"0"},Z=(e.defineLocale("bn",{months:"\u099c\u09be\u09a8\u09c1\u09df\u09be\u09b0\u09bf_\u09ab\u09c7\u09ac\u09cd\u09b0\u09c1\u09df\u09be\u09b0\u09bf_\u09ae\u09be\u09b0\u09cd\u099a_\u098f\u09aa\u09cd\u09b0\u09bf\u09b2_\u09ae\u09c7_\u099c\u09c1\u09a8_\u099c\u09c1\u09b2\u09be\u0987_\u0986\u0997\u09b8\u09cd\u099f_\u09b8\u09c7\u09aa\u09cd\u099f\u09c7\u09ae\u09cd\u09ac\u09b0_\u0985\u0995\u09cd\u099f\u09cb\u09ac\u09b0_\u09a8\u09ad\u09c7\u09ae\u09cd\u09ac\u09b0_\u09a1\u09bf\u09b8\u09c7\u09ae\u09cd\u09ac\u09b0".split("_"),monthsShort:"\u099c\u09be\u09a8\u09c1_\u09ab\u09c7\u09ac\u09cd\u09b0\u09c1_\u09ae\u09be\u09b0\u09cd\u099a_\u098f\u09aa\u09cd\u09b0\u09bf\u09b2_\u09ae\u09c7_\u099c\u09c1\u09a8_\u099c\u09c1\u09b2\u09be\u0987_\u0986\u0997\u09b8\u09cd\u099f_\u09b8\u09c7\u09aa\u09cd\u099f_\u0985\u0995\u09cd\u099f\u09cb_\u09a8\u09ad\u09c7_\u09a1\u09bf\u09b8\u09c7".split("_"),weekdays:"\u09b0\u09ac\u09bf\u09ac\u09be\u09b0_\u09b8\u09cb\u09ae\u09ac\u09be\u09b0_\u09ae\u0999\u09cd\u0997\u09b2\u09ac\u09be\u09b0_\u09ac\u09c1\u09a7\u09ac\u09be\u09b0_\u09ac\u09c3\u09b9\u09b8\u09cd\u09aa\u09a4\u09bf\u09ac\u09be\u09b0_\u09b6\u09c1\u0995\u09cd\u09b0\u09ac\u09be\u09b0_\u09b6\u09a8\u09bf\u09ac\u09be\u09b0".split("_"),weekdaysShort:"\u09b0\u09ac\u09bf_\u09b8\u09cb\u09ae_\u09ae\u0999\u09cd\u0997\u09b2_\u09ac\u09c1\u09a7_\u09ac\u09c3\u09b9\u09b8\u09cd\u09aa\u09a4\u09bf_\u09b6\u09c1\u0995\u09cd\u09b0_\u09b6\u09a8\u09bf".split("_"),weekdaysMin:"\u09b0\u09ac\u09bf_\u09b8\u09cb\u09ae_\u09ae\u0999\u09cd\u0997\u09b2_\u09ac\u09c1\u09a7_\u09ac\u09c3\u09b9_\u09b6\u09c1\u0995\u09cd\u09b0_\u09b6\u09a8\u09bf".split("_"),longDateFormat:{LT:"A h:mm \u09b8\u09ae\u09df",LTS:"A h:mm:ss \u09b8\u09ae\u09df",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, A h:mm \u09b8\u09ae\u09df",LLLL:"dddd, D MMMM YYYY, A h:mm \u09b8\u09ae\u09df"},calendar:{sameDay:"[\u0986\u099c] LT",nextDay:"[\u0986\u0997\u09be\u09ae\u09c0\u0995\u09be\u09b2] LT",nextWeek:"dddd, LT",lastDay:"[\u0997\u09a4\u0995\u09be\u09b2] LT",lastWeek:"[\u0997\u09a4] dddd, LT",sameElse:"L"},relativeTime:{future:"%s \u09aa\u09b0\u09c7",past:"%s \u0986\u0997\u09c7",s:"\u0995\u09df\u09c7\u0995 \u09b8\u09c7\u0995\u09c7\u09a8\u09cd\u09a1",ss:"%d \u09b8\u09c7\u0995\u09c7\u09a8\u09cd\u09a1",m:"\u098f\u0995 \u09ae\u09bf\u09a8\u09bf\u099f",mm:"%d \u09ae\u09bf\u09a8\u09bf\u099f",h:"\u098f\u0995 \u0998\u09a8\u09cd\u099f\u09be",hh:"%d \u0998\u09a8\u09cd\u099f\u09be",d:"\u098f\u0995 \u09a6\u09bf\u09a8",dd:"%d \u09a6\u09bf\u09a8",M:"\u098f\u0995 \u09ae\u09be\u09b8",MM:"%d \u09ae\u09be\u09b8",y:"\u098f\u0995 \u09ac\u099b\u09b0",yy:"%d \u09ac\u099b\u09b0"},preparse:function(e){return e.replace(/[\u09e7\u09e8\u09e9\u09ea\u09eb\u09ec\u09ed\u09ee\u09ef\u09e6]/g,function(e){return V[e]})},postformat:function(e){return e.replace(/\d/g,function(e){return Q[e]})},meridiemParse:/\u09b0\u09be\u09a4|\u09b8\u0995\u09be\u09b2|\u09a6\u09c1\u09aa\u09c1\u09b0|\u09ac\u09bf\u0995\u09be\u09b2|\u09b0\u09be\u09a4/,meridiemHour:function(e,a){return 12===e&&(e=0),"\u09b0\u09be\u09a4"===a&&4<=e||"\u09a6\u09c1\u09aa\u09c1\u09b0"===a&&e<5||"\u09ac\u09bf\u0995\u09be\u09b2"===a?e+12:e},meridiem:function(e,a,_){return e<4?"\u09b0\u09be\u09a4":e<10?"\u09b8\u0995\u09be\u09b2":e<17?"\u09a6\u09c1\u09aa\u09c1\u09b0":e<20?"\u09ac\u09bf\u0995\u09be\u09b2":"\u09b0\u09be\u09a4"},week:{dow:0,doy:6}}),{1:"\u0f21",2:"\u0f22",3:"\u0f23",4:"\u0f24",5:"\u0f25",6:"\u0f26",7:"\u0f27",8:"\u0f28",9:"\u0f29",0:"\u0f20"}),X={"\u0f21":"1","\u0f22":"2","\u0f23":"3","\u0f24":"4","\u0f25":"5","\u0f26":"6","\u0f27":"7","\u0f28":"8","\u0f29":"9","\u0f20":"0"};function ee(e,a,_){return e+" "+(_={mm:"munutenn",MM:"miz",dd:"devezh"}[_],2!==(e=e)?_:void 0!==(e={m:"v",b:"v",d:"z"})[(_=_).charAt(0)]?e[_.charAt(0)]+_.substring(1):_)}e.defineLocale("bo",{months:"\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f51\u0f44\u0f0b\u0f54\u0f7c_\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f42\u0f49\u0f72\u0f66\u0f0b\u0f54_\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f42\u0f66\u0f74\u0f58\u0f0b\u0f54_\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f56\u0f5e\u0f72\u0f0b\u0f54_\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f63\u0f94\u0f0b\u0f54_\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f51\u0fb2\u0f74\u0f42\u0f0b\u0f54_\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f56\u0f51\u0f74\u0f53\u0f0b\u0f54_\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f56\u0f62\u0f92\u0fb1\u0f51\u0f0b\u0f54_\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f51\u0f42\u0f74\u0f0b\u0f54_\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f56\u0f45\u0f74\u0f0b\u0f54_\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f56\u0f45\u0f74\u0f0b\u0f42\u0f45\u0f72\u0f42\u0f0b\u0f54_\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f56\u0f45\u0f74\u0f0b\u0f42\u0f49\u0f72\u0f66\u0f0b\u0f54".split("_"),monthsShort:"\u0f5f\u0fb3\u0f0b1_\u0f5f\u0fb3\u0f0b2_\u0f5f\u0fb3\u0f0b3_\u0f5f\u0fb3\u0f0b4_\u0f5f\u0fb3\u0f0b5_\u0f5f\u0fb3\u0f0b6_\u0f5f\u0fb3\u0f0b7_\u0f5f\u0fb3\u0f0b8_\u0f5f\u0fb3\u0f0b9_\u0f5f\u0fb3\u0f0b10_\u0f5f\u0fb3\u0f0b11_\u0f5f\u0fb3\u0f0b12".split("_"),monthsShortRegex:/^(\u0f5f\u0fb3\u0f0b\d{1,2})/,monthsParseExact:!0,weekdays:"\u0f42\u0f5f\u0f60\u0f0b\u0f49\u0f72\u0f0b\u0f58\u0f0b_\u0f42\u0f5f\u0f60\u0f0b\u0f5f\u0fb3\u0f0b\u0f56\u0f0b_\u0f42\u0f5f\u0f60\u0f0b\u0f58\u0f72\u0f42\u0f0b\u0f51\u0f58\u0f62\u0f0b_\u0f42\u0f5f\u0f60\u0f0b\u0f63\u0fb7\u0f42\u0f0b\u0f54\u0f0b_\u0f42\u0f5f\u0f60\u0f0b\u0f55\u0f74\u0f62\u0f0b\u0f56\u0f74_\u0f42\u0f5f\u0f60\u0f0b\u0f54\u0f0b\u0f66\u0f44\u0f66\u0f0b_\u0f42\u0f5f\u0f60\u0f0b\u0f66\u0fa4\u0f7a\u0f53\u0f0b\u0f54\u0f0b".split("_"),weekdaysShort:"\u0f49\u0f72\u0f0b\u0f58\u0f0b_\u0f5f\u0fb3\u0f0b\u0f56\u0f0b_\u0f58\u0f72\u0f42\u0f0b\u0f51\u0f58\u0f62\u0f0b_\u0f63\u0fb7\u0f42\u0f0b\u0f54\u0f0b_\u0f55\u0f74\u0f62\u0f0b\u0f56\u0f74_\u0f54\u0f0b\u0f66\u0f44\u0f66\u0f0b_\u0f66\u0fa4\u0f7a\u0f53\u0f0b\u0f54\u0f0b".split("_"),weekdaysMin:"\u0f49\u0f72_\u0f5f\u0fb3_\u0f58\u0f72\u0f42_\u0f63\u0fb7\u0f42_\u0f55\u0f74\u0f62_\u0f66\u0f44\u0f66_\u0f66\u0fa4\u0f7a\u0f53".split("_"),longDateFormat:{LT:"A h:mm",LTS:"A h:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, A h:mm",LLLL:"dddd, D MMMM YYYY, A h:mm"},calendar:{sameDay:"[\u0f51\u0f72\u0f0b\u0f62\u0f72\u0f44] LT",nextDay:"[\u0f66\u0f44\u0f0b\u0f49\u0f72\u0f53] LT",nextWeek:"[\u0f56\u0f51\u0f74\u0f53\u0f0b\u0f55\u0fb2\u0f42\u0f0b\u0f62\u0f97\u0f7a\u0f66\u0f0b\u0f58], LT",lastDay:"[\u0f41\u0f0b\u0f66\u0f44] LT",lastWeek:"[\u0f56\u0f51\u0f74\u0f53\u0f0b\u0f55\u0fb2\u0f42\u0f0b\u0f58\u0f50\u0f60\u0f0b\u0f58] dddd, LT",sameElse:"L"},relativeTime:{future:"%s \u0f63\u0f0b",past:"%s \u0f66\u0f94\u0f53\u0f0b\u0f63",s:"\u0f63\u0f58\u0f0b\u0f66\u0f44",ss:"%d \u0f66\u0f90\u0f62\u0f0b\u0f46\u0f0d",m:"\u0f66\u0f90\u0f62\u0f0b\u0f58\u0f0b\u0f42\u0f45\u0f72\u0f42",mm:"%d \u0f66\u0f90\u0f62\u0f0b\u0f58",h:"\u0f46\u0f74\u0f0b\u0f5a\u0f7c\u0f51\u0f0b\u0f42\u0f45\u0f72\u0f42",hh:"%d \u0f46\u0f74\u0f0b\u0f5a\u0f7c\u0f51",d:"\u0f49\u0f72\u0f53\u0f0b\u0f42\u0f45\u0f72\u0f42",dd:"%d \u0f49\u0f72\u0f53\u0f0b",M:"\u0f5f\u0fb3\u0f0b\u0f56\u0f0b\u0f42\u0f45\u0f72\u0f42",MM:"%d \u0f5f\u0fb3\u0f0b\u0f56",y:"\u0f63\u0f7c\u0f0b\u0f42\u0f45\u0f72\u0f42",yy:"%d \u0f63\u0f7c"},preparse:function(e){return e.replace(/[\u0f21\u0f22\u0f23\u0f24\u0f25\u0f26\u0f27\u0f28\u0f29\u0f20]/g,function(e){return X[e]})},postformat:function(e){return e.replace(/\d/g,function(e){return Z[e]})},meridiemParse:/\u0f58\u0f5a\u0f53\u0f0b\u0f58\u0f7c|\u0f5e\u0f7c\u0f42\u0f66\u0f0b\u0f40\u0f66|\u0f49\u0f72\u0f53\u0f0b\u0f42\u0f74\u0f44|\u0f51\u0f42\u0f7c\u0f44\u0f0b\u0f51\u0f42|\u0f58\u0f5a\u0f53\u0f0b\u0f58\u0f7c/,meridiemHour:function(e,a){return 12===e&&(e=0),"\u0f58\u0f5a\u0f53\u0f0b\u0f58\u0f7c"===a&&4<=e||"\u0f49\u0f72\u0f53\u0f0b\u0f42\u0f74\u0f44"===a&&e<5||"\u0f51\u0f42\u0f7c\u0f44\u0f0b\u0f51\u0f42"===a?e+12:e},meridiem:function(e,a,_){return e<4?"\u0f58\u0f5a\u0f53\u0f0b\u0f58\u0f7c":e<10?"\u0f5e\u0f7c\u0f42\u0f66\u0f0b\u0f40\u0f66":e<17?"\u0f49\u0f72\u0f53\u0f0b\u0f42\u0f74\u0f44":e<20?"\u0f51\u0f42\u0f7c\u0f44\u0f0b\u0f51\u0f42":"\u0f58\u0f5a\u0f53\u0f0b\u0f58\u0f7c"},week:{dow:0,doy:6}});var d=[/^gen/i,/^c[\u02bc\']hwe/i,/^meu/i,/^ebr/i,/^mae/i,/^(mez|eve)/i,/^gou/i,/^eos/i,/^gwe/i,/^her/i,/^du/i,/^ker/i],n=/^(genver|c[\u02bc\']hwevrer|meurzh|ebrel|mae|mezheven|gouere|eost|gwengolo|here|du|kerzu|gen|c[\u02bc\']hwe|meu|ebr|mae|eve|gou|eos|gwe|her|du|ker)/i,r=[/^Su/i,/^Lu/i,/^Me([^r]|$)/i,/^Mer/i,/^Ya/i,/^Gw/i,/^Sa/i];function i(e,a,_){var s=e+" ";switch(_){case"ss":return s+=1===e?"sekunda":2===e||3===e||4===e?"sekunde":"sekundi";case"m":return a?"jedna minuta":"jedne minute";case"mm":return s+=1!==e&&(2===e||3===e||4===e)?"minute":"minuta";case"h":return a?"jedan sat":"jednog sata";case"hh":return s+=1===e?"sat":2===e||3===e||4===e?"sata":"sati";case"dd":return s+=1===e?"dan":"dana";case"MM":return s+=1===e?"mjesec":2===e||3===e||4===e?"mjeseca":"mjeseci";case"yy":return s+=1!==e&&(2===e||3===e||4===e)?"godine":"godina"}}e.defineLocale("br",{months:"Genver_C\u02bchwevrer_Meurzh_Ebrel_Mae_Mezheven_Gouere_Eost_Gwengolo_Here_Du_Kerzu".split("_"),monthsShort:"Gen_C\u02bchwe_Meu_Ebr_Mae_Eve_Gou_Eos_Gwe_Her_Du_Ker".split("_"),weekdays:"Sul_Lun_Meurzh_Merc\u02bcher_Yaou_Gwener_Sadorn".split("_"),weekdaysShort:"Sul_Lun_Meu_Mer_Yao_Gwe_Sad".split("_"),weekdaysMin:"Su_Lu_Me_Mer_Ya_Gw_Sa".split("_"),weekdaysParse:r,fullWeekdaysParse:[/^sul/i,/^lun/i,/^meurzh/i,/^merc[\u02bc\']her/i,/^yaou/i,/^gwener/i,/^sadorn/i],shortWeekdaysParse:[/^Sul/i,/^Lun/i,/^Meu/i,/^Mer/i,/^Yao/i,/^Gwe/i,/^Sad/i],minWeekdaysParse:r,monthsRegex:n,monthsShortRegex:n,monthsStrictRegex:/^(genver|c[\u02bc\']hwevrer|meurzh|ebrel|mae|mezheven|gouere|eost|gwengolo|here|du|kerzu)/i,monthsShortStrictRegex:/^(gen|c[\u02bc\']hwe|meu|ebr|mae|eve|gou|eos|gwe|her|du|ker)/i,monthsParse:d,longMonthsParse:d,shortMonthsParse:d,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D [a viz] MMMM YYYY",LLL:"D [a viz] MMMM YYYY HH:mm",LLLL:"dddd, D [a viz] MMMM YYYY HH:mm"},calendar:{sameDay:"[Hiziv da] LT",nextDay:"[Warc\u02bchoazh da] LT",nextWeek:"dddd [da] LT",lastDay:"[Dec\u02bch da] LT",lastWeek:"dddd [paset da] LT",sameElse:"L"},relativeTime:{future:"a-benn %s",past:"%s \u02bczo",s:"un nebeud segondenno\xf9",ss:"%d eilenn",m:"ur vunutenn",mm:ee,h:"un eur",hh:"%d eur",d:"un devezh",dd:ee,M:"ur miz",MM:ee,y:"ur bloaz",yy:function(e){switch(function e(a){if(9>>0,s=0;sBe(e)?(r=e+1,a-Be(e)):(r=e,a);return{year:r,dayOfYear:t}}function Xe(e,a,t){var s,n,r=$e(e.year(),a,t),r=Math.floor((e.dayOfYear()-r-1)/7)+1;return r<1?s=r+ea(n=e.year()-1,a,t):r>ea(e.year(),a,t)?(s=r-ea(e.year(),a,t),n=e.year()+1):(n=e.year(),s=r),{week:s,year:n}}function ea(e,a,t){var s=$e(e,a,t),a=$e(e+1,a,t);return(Be(e)-s+a)/7}s("w",["ww",2],"wo","week"),s("W",["WW",2],"Wo","isoWeek"),a("week","w"),a("isoWeek","W"),t("week",5),t("isoWeek",5),p("w",o),p("ww",o,r),p("W",o),p("WW",o,r),je(["w","ww","W","WW"],function(e,a,t,s){a[s.substr(0,1)]=m(e)});function aa(e,a){return e.slice(a,7).concat(e.slice(0,a))}s("d",0,"do","day"),s("dd",0,0,function(e){return this.localeData().weekdaysMin(this,e)}),s("ddd",0,0,function(e){return this.localeData().weekdaysShort(this,e)}),s("dddd",0,0,function(e){return this.localeData().weekdays(this,e)}),s("e",0,0,"weekday"),s("E",0,0,"isoWeekday"),a("day","d"),a("weekday","e"),a("isoWeekday","E"),t("day",11),t("weekday",11),t("isoWeekday",11),p("d",o),p("e",o),p("E",o),p("dd",function(e,a){return a.weekdaysMinRegex(e)}),p("ddd",function(e,a){return a.weekdaysShortRegex(e)}),p("dddd",function(e,a){return a.weekdaysRegex(e)}),je(["dd","ddd","dddd"],function(e,a,t,s){s=t._locale.weekdaysParse(e,s,t._strict);null!=s?a.d=s:h(t).invalidWeekday=e}),je(["d","e","E"],function(e,a,t,s){a[s]=m(e)});var ta="Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),sa="Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),na="Su_Mo_Tu_We_Th_Fr_Sa".split("_"),ra=f,da=f,ia=f;function _a(){function e(e,a){return a.length-e.length}for(var a,t,s,n=[],r=[],d=[],i=[],_=0;_<7;_++)s=U([2e3,1]).day(_),a=k(this.weekdaysMin(s,"")),t=k(this.weekdaysShort(s,"")),s=k(this.weekdays(s,"")),n.push(a),r.push(t),d.push(s),i.push(a),i.push(t),i.push(s);n.sort(e),r.sort(e),d.sort(e),i.sort(e),this._weekdaysRegex=new RegExp("^("+i.join("|")+")","i"),this._weekdaysShortRegex=this._weekdaysRegex,this._weekdaysMinRegex=this._weekdaysRegex,this._weekdaysStrictRegex=new RegExp("^("+d.join("|")+")","i"),this._weekdaysShortStrictRegex=new RegExp("^("+r.join("|")+")","i"),this._weekdaysMinStrictRegex=new RegExp("^("+n.join("|")+")","i")}function oa(){return this.hours()%12||12}function ma(e,a){s(e,0,0,function(){return this.localeData().meridiem(this.hours(),this.minutes(),a)})}function ua(e,a){return a._meridiemParse}s("H",["HH",2],0,"hour"),s("h",["hh",2],0,oa),s("k",["kk",2],0,function(){return this.hours()||24}),s("hmm",0,0,function(){return""+oa.apply(this)+de(this.minutes(),2)}),s("hmmss",0,0,function(){return""+oa.apply(this)+de(this.minutes(),2)+de(this.seconds(),2)}),s("Hmm",0,0,function(){return""+this.hours()+de(this.minutes(),2)}),s("Hmmss",0,0,function(){return""+this.hours()+de(this.minutes(),2)+de(this.seconds(),2)}),ma("a",!0),ma("A",!1),a("hour","h"),t("hour",13),p("a",ua),p("A",ua),p("H",o),p("h",o),p("k",o),p("HH",o,r),p("hh",o,r),p("kk",o,r),p("hmm",c),p("hmmss",L),p("Hmm",c),p("Hmmss",L),D(["H","HH"],w),D(["k","kk"],function(e,a,t){e=m(e);a[w]=24===e?0:e}),D(["a","A"],function(e,a,t){t._isPm=t._locale.isPM(e),t._meridiem=e}),D(["h","hh"],function(e,a,t){a[w]=m(e),h(t).bigHour=!0}),D("hmm",function(e,a,t){var s=e.length-2;a[w]=m(e.substr(0,s)),a[Oe]=m(e.substr(s)),h(t).bigHour=!0}),D("hmmss",function(e,a,t){var s=e.length-4,n=e.length-2;a[w]=m(e.substr(0,s)),a[Oe]=m(e.substr(s,2)),a[We]=m(e.substr(n)),h(t).bigHour=!0}),D("Hmm",function(e,a,t){var s=e.length-2;a[w]=m(e.substr(0,s)),a[Oe]=m(e.substr(s))}),D("Hmmss",function(e,a,t){var s=e.length-4,n=e.length-2;a[w]=m(e.substr(0,s)),a[Oe]=m(e.substr(s,2)),a[We]=m(e.substr(n))});f=Ye("Hours",!0);var la,Ma={calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},longDateFormat:{LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},invalidDate:"Invalid date",ordinal:"%d",dayOfMonthOrdinalParse:/\d{1,2}/,relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",w:"a week",ww:"%d weeks",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},months:Ne,monthsShort:Je,week:{dow:0,doy:6},weekdays:ta,weekdaysMin:na,weekdaysShort:sa,meridiemParse:/[ap]\.?m?\.?/i},b={},ha={};function ca(e){return e&&e.toLowerCase().replace("_","-")}function La(e){for(var a,t,s,n,r=0;r=a&&function(e,a){for(var t=Math.min(e.length,a.length),s=0;s=a-1)break;a--}r++}return la}function Ya(a){var e;if(void 0===b[a]&&"undefined"!=typeof module&&module&&module.exports&&null!=a.match("^[^/\\\\]*$"))try{e=la._abbr,require("./locale/"+a),ya(e)}catch(e){b[a]=null}return b[a]}function ya(e,a){return e&&((a=d(a)?pa(e):fa(e,a))?la=a:"undefined"!=typeof console&&console.warn&&console.warn("Locale "+e+" not found. Did you forget to load it?")),la._abbr}function fa(e,a){if(null===a)return delete b[e],null;var t,s=Ma;if(a.abbr=e,null!=b[e])ae("defineLocaleOverride","use moment.updateLocale(localeName, config) to change an existing locale. moment.defineLocale(localeName, config) should only be used for creating a new locale See http://momentjs.com/guides/#/warnings/define-locale/ for more info."),s=b[e]._config;else if(null!=a.parentLocale)if(null!=b[a.parentLocale])s=b[a.parentLocale]._config;else{if(null==(t=Ya(a.parentLocale)))return ha[a.parentLocale]||(ha[a.parentLocale]=[]),ha[a.parentLocale].push({name:e,config:a}),null;s=t._config}return b[e]=new ne(se(s,a)),ha[e]&&ha[e].forEach(function(e){fa(e.name,e.config)}),ya(e),b[e]}function pa(e){var a;if(!(e=e&&e._locale&&e._locale._abbr?e._locale._abbr:e))return la;if(!F(e)){if(a=Ya(e))return a;e=[e]}return La(e)}function ka(e){var a=e._a;return a&&-2===h(e).overflow&&(a=a[xe]<0||11ze(a[g],a[xe])?Pe:a[w]<0||24ea(r,_,o)?h(s)._overflowWeeks=!0:null!=m?h(s)._overflowWeekday=!0:(u=Qe(r,d,i,_,o),s._a[g]=u.year,s._dayOfYear=u.dayOfYear)),null!=e._dayOfYear&&(n=Oa(e._a[g],t[g]),(e._dayOfYear>Be(n)||0===e._dayOfYear)&&(h(e)._overflowDayOfYear=!0),m=Ze(n,0,e._dayOfYear),e._a[xe]=m.getUTCMonth(),e._a[Pe]=m.getUTCDate()),a=0;a<3&&null==e._a[a];++a)e._a[a]=l[a]=t[a];for(;a<7;a++)e._a[a]=l[a]=null==e._a[a]?2===a?1:0:e._a[a];24===e._a[w]&&0===e._a[Oe]&&0===e._a[We]&&0===e._a[Ae]&&(e._nextDay=!0,e._a[w]=0),e._d=(e._useUTC?Ze:qe).apply(null,l),r=e._useUTC?e._d.getUTCDay():e._d.getDay(),null!=e._tzm&&e._d.setUTCMinutes(e._d.getUTCMinutes()-e._tzm),e._nextDay&&(e._a[w]=24),e._w&&void 0!==e._w.d&&e._w.d!==r&&(h(e).weekdayMismatch=!0)}}function Aa(e){if(e._f===M.ISO_8601)ja(e);else if(e._f===M.RFC_2822)Pa(e);else{e._a=[],h(e).empty=!0;for(var a,t,s,n,r,d=""+e._i,i=d.length,_=0,o=le(e._f,e._locale).match(ie)||[],m=o.length,u=0;ue.valueOf():e.valueOf()"}),n.toJSON=function(){return this.isValid()?this.toISOString():null},n.toString=function(){return this.clone().locale("en").format("ddd MMM DD YYYY HH:mm:ss [GMT]ZZ")},n.unix=function(){return Math.floor(this.valueOf()/1e3)},n.valueOf=function(){return this._d.valueOf()-6e4*(this._offset||0)},n.creationData=function(){return{input:this._i,format:this._f,locale:this._locale,isUTC:this._isUTC,strict:this._strict}},n.eraName=function(){for(var e,a=this.localeData().eras(),t=0,s=a.length;tthis.clone().month(0).utcOffset()||this.utcOffset()>this.clone().month(5).utcOffset()},n.isLocal=function(){return!!this.isValid()&&!this._isUTC},n.isUtcOffset=function(){return!!this.isValid()&&this._isUTC},n.isUtc=Ka,n.isUTC=Ka,n.zoneAbbr=function(){return this._isUTC?"UTC":""},n.zoneName=function(){return this._isUTC?"Coordinated Universal Time":""},n.dates=e("dates accessor is deprecated. Use date instead.",Y),n.months=e("months accessor is deprecated. Use month instead",Ge),n.years=e("years accessor is deprecated. Use year instead",Ke),n.zone=e("moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/",function(e,a){return null!=e?(this.utcOffset(e="string"!=typeof e?-e:e,a),this):-this.utcOffset()}),n.isDSTShifted=e("isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information",function(){if(!d(this._isDSTShifted))return this._isDSTShifted;var e,a={};return Z(a,this),(a=Ea(a))._a?(e=(a._isUTC?U:S)(a._a),this._isDSTShifted=this.isValid()&&0>>0,s=0;sAe(e)?(r=e+1,t-Ae(e)):(r=e,t);return{year:r,dayOfYear:n}}function qe(e,t,n){var s,i,r=ze(e.year(),t,n),r=Math.floor((e.dayOfYear()-r-1)/7)+1;return r<1?s=r+P(i=e.year()-1,t,n):r>P(e.year(),t,n)?(s=r-P(e.year(),t,n),i=e.year()+1):(i=e.year(),s=r),{week:s,year:i}}function P(e,t,n){var s=ze(e,t,n),t=ze(e+1,t,n);return(Ae(e)-s+t)/7}s("w",["ww",2],"wo","week"),s("W",["WW",2],"Wo","isoWeek"),t("week","w"),t("isoWeek","W"),n("week",5),n("isoWeek",5),v("w",p),v("ww",p,w),v("W",p),v("WW",p,w),Te(["w","ww","W","WW"],function(e,t,n,s){t[s.substr(0,1)]=g(e)});function Be(e,t){return e.slice(t,7).concat(e.slice(0,t))}s("d",0,"do","day"),s("dd",0,0,function(e){return this.localeData().weekdaysMin(this,e)}),s("ddd",0,0,function(e){return this.localeData().weekdaysShort(this,e)}),s("dddd",0,0,function(e){return this.localeData().weekdays(this,e)}),s("e",0,0,"weekday"),s("E",0,0,"isoWeekday"),t("day","d"),t("weekday","e"),t("isoWeekday","E"),n("day",11),n("weekday",11),n("isoWeekday",11),v("d",p),v("e",p),v("E",p),v("dd",function(e,t){return t.weekdaysMinRegex(e)}),v("ddd",function(e,t){return t.weekdaysShortRegex(e)}),v("dddd",function(e,t){return t.weekdaysRegex(e)}),Te(["dd","ddd","dddd"],function(e,t,n,s){s=n._locale.weekdaysParse(e,s,n._strict);null!=s?t.d=s:m(n).invalidWeekday=e}),Te(["d","e","E"],function(e,t,n,s){t[s]=g(e)});var Je="Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),Qe="Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),Xe="Su_Mo_Tu_We_Th_Fr_Sa".split("_"),Ke=k,et=k,tt=k;function nt(){function e(e,t){return t.length-e.length}for(var t,n,s,i=[],r=[],a=[],o=[],u=0;u<7;u++)s=l([2e3,1]).day(u),t=M(this.weekdaysMin(s,"")),n=M(this.weekdaysShort(s,"")),s=M(this.weekdays(s,"")),i.push(t),r.push(n),a.push(s),o.push(t),o.push(n),o.push(s);i.sort(e),r.sort(e),a.sort(e),o.sort(e),this._weekdaysRegex=new RegExp("^("+o.join("|")+")","i"),this._weekdaysShortRegex=this._weekdaysRegex,this._weekdaysMinRegex=this._weekdaysRegex,this._weekdaysStrictRegex=new RegExp("^("+a.join("|")+")","i"),this._weekdaysShortStrictRegex=new RegExp("^("+r.join("|")+")","i"),this._weekdaysMinStrictRegex=new RegExp("^("+i.join("|")+")","i")}function st(){return this.hours()%12||12}function it(e,t){s(e,0,0,function(){return this.localeData().meridiem(this.hours(),this.minutes(),t)})}function rt(e,t){return t._meridiemParse}s("H",["HH",2],0,"hour"),s("h",["hh",2],0,st),s("k",["kk",2],0,function(){return this.hours()||24}),s("hmm",0,0,function(){return""+st.apply(this)+r(this.minutes(),2)}),s("hmmss",0,0,function(){return""+st.apply(this)+r(this.minutes(),2)+r(this.seconds(),2)}),s("Hmm",0,0,function(){return""+this.hours()+r(this.minutes(),2)}),s("Hmmss",0,0,function(){return""+this.hours()+r(this.minutes(),2)+r(this.seconds(),2)}),it("a",!0),it("A",!1),t("hour","h"),n("hour",13),v("a",rt),v("A",rt),v("H",p),v("h",p),v("k",p),v("HH",p,w),v("hh",p,w),v("kk",p,w),v("hmm",ge),v("hmmss",we),v("Hmm",ge),v("Hmmss",we),D(["H","HH"],x),D(["k","kk"],function(e,t,n){e=g(e);t[x]=24===e?0:e}),D(["a","A"],function(e,t,n){n._isPm=n._locale.isPM(e),n._meridiem=e}),D(["h","hh"],function(e,t,n){t[x]=g(e),m(n).bigHour=!0}),D("hmm",function(e,t,n){var s=e.length-2;t[x]=g(e.substr(0,s)),t[T]=g(e.substr(s)),m(n).bigHour=!0}),D("hmmss",function(e,t,n){var s=e.length-4,i=e.length-2;t[x]=g(e.substr(0,s)),t[T]=g(e.substr(s,2)),t[N]=g(e.substr(i)),m(n).bigHour=!0}),D("Hmm",function(e,t,n){var s=e.length-2;t[x]=g(e.substr(0,s)),t[T]=g(e.substr(s))}),D("Hmmss",function(e,t,n){var s=e.length-4,i=e.length-2;t[x]=g(e.substr(0,s)),t[T]=g(e.substr(s,2)),t[N]=g(e.substr(i))});k=de("Hours",!0);var at,ot={calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},longDateFormat:{LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},invalidDate:"Invalid date",ordinal:"%d",dayOfMonthOrdinalParse:/\d{1,2}/,relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",w:"a week",ww:"%d weeks",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},months:Ce,monthsShort:Ue,week:{dow:0,doy:6},weekdays:Je,weekdaysMin:Xe,weekdaysShort:Qe,meridiemParse:/[ap]\.?m?\.?/i},R={},ut={};function lt(e){return e&&e.toLowerCase().replace("_","-")}function ht(e){for(var t,n,s,i,r=0;r=t&&function(e,t){for(var n=Math.min(e.length,t.length),s=0;s=t-1)break;t--}r++}return at}function dt(t){var e;if(void 0===R[t]&&"undefined"!=typeof module&&module&&module.exports&&null!=t.match("^[^/\\\\]*$"))try{e=at._abbr,require("./locale/"+t),ct(e)}catch(e){R[t]=null}return R[t]}function ct(e,t){return e&&((t=o(t)?mt(e):ft(e,t))?at=t:"undefined"!=typeof console&&console.warn&&console.warn("Locale "+e+" not found. Did you forget to load it?")),at._abbr}function ft(e,t){if(null===t)return delete R[e],null;var n,s=ot;if(t.abbr=e,null!=R[e])Q("defineLocaleOverride","use moment.updateLocale(localeName, config) to change an existing locale. moment.defineLocale(localeName, config) should only be used for creating a new locale See http://momentjs.com/guides/#/warnings/define-locale/ for more info."),s=R[e]._config;else if(null!=t.parentLocale)if(null!=R[t.parentLocale])s=R[t.parentLocale]._config;else{if(null==(n=dt(t.parentLocale)))return ut[t.parentLocale]||(ut[t.parentLocale]=[]),ut[t.parentLocale].push({name:e,config:t}),null;s=n._config}return R[e]=new K(X(s,t)),ut[e]&&ut[e].forEach(function(e){ft(e.name,e.config)}),ct(e),R[e]}function mt(e){var t;if(!(e=e&&e._locale&&e._locale._abbr?e._locale._abbr:e))return at;if(!a(e)){if(t=dt(e))return t;e=[e]}return ht(e)}function _t(e){var t=e._a;return t&&-2===m(e).overflow&&(t=t[O]<0||11We(t[Y],t[O])?b:t[x]<0||24P(r,u,l)?m(s)._overflowWeeks=!0:null!=h?m(s)._overflowWeekday=!0:(d=$e(r,a,o,u,l),s._a[Y]=d.year,s._dayOfYear=d.dayOfYear)),null!=e._dayOfYear&&(i=bt(e._a[Y],n[Y]),(e._dayOfYear>Ae(i)||0===e._dayOfYear)&&(m(e)._overflowDayOfYear=!0),h=Ze(i,0,e._dayOfYear),e._a[O]=h.getUTCMonth(),e._a[b]=h.getUTCDate()),t=0;t<3&&null==e._a[t];++t)e._a[t]=c[t]=n[t];for(;t<7;t++)e._a[t]=c[t]=null==e._a[t]?2===t?1:0:e._a[t];24===e._a[x]&&0===e._a[T]&&0===e._a[N]&&0===e._a[Ne]&&(e._nextDay=!0,e._a[x]=0),e._d=(e._useUTC?Ze:je).apply(null,c),r=e._useUTC?e._d.getUTCDay():e._d.getDay(),null!=e._tzm&&e._d.setUTCMinutes(e._d.getUTCMinutes()-e._tzm),e._nextDay&&(e._a[x]=24),e._w&&void 0!==e._w.d&&e._w.d!==r&&(m(e).weekdayMismatch=!0)}}function Tt(e){if(e._f===f.ISO_8601)St(e);else if(e._f===f.RFC_2822)Ot(e);else{e._a=[],m(e).empty=!0;for(var t,n,s,i,r,a=""+e._i,o=a.length,u=0,l=ae(e._f,e._locale).match(te)||[],h=l.length,d=0;de.valueOf():e.valueOf()"}),i.toJSON=function(){return this.isValid()?this.toISOString():null},i.toString=function(){return this.clone().locale("en").format("ddd MMM DD YYYY HH:mm:ss [GMT]ZZ")},i.unix=function(){return Math.floor(this.valueOf()/1e3)},i.valueOf=function(){return this._d.valueOf()-6e4*(this._offset||0)},i.creationData=function(){return{input:this._i,format:this._f,locale:this._locale,isUTC:this._isUTC,strict:this._strict}},i.eraName=function(){for(var e,t=this.localeData().eras(),n=0,s=t.length;nthis.clone().month(0).utcOffset()||this.utcOffset()>this.clone().month(5).utcOffset()},i.isLocal=function(){return!!this.isValid()&&!this._isUTC},i.isUtcOffset=function(){return!!this.isValid()&&this._isUTC},i.isUtc=At,i.isUTC=At,i.zoneAbbr=function(){return this._isUTC?"UTC":""},i.zoneName=function(){return this._isUTC?"Coordinated Universal Time":""},i.dates=e("dates accessor is deprecated. Use date instead.",ke),i.months=e("months accessor is deprecated. Use month instead",Ge),i.years=e("years accessor is deprecated. Use year instead",Ie),i.zone=e("moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/",function(e,t){return null!=e?(this.utcOffset(e="string"!=typeof e?-e:e,t),this):-this.utcOffset()}),i.isDSTShifted=e("isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information",function(){if(!o(this._isDSTShifted))return this._isDSTShifted;var e,t={};return $(t,this),(t=Nt(t))._a?(e=(t._isUTC?l:W)(t._a),this._isDSTShifted=this.isValid()&&0>> 0, + i; + + for (i = 0; i < len; i++) { + if (i in t && fun.call(this, t[i], i, t)) { + return true; + } + } + + return false; + }; +} + +function isValid(m) { + if (m._isValid == null) { + var flags = getParsingFlags(m), + parsedParts = some.call(flags.parsedDateParts, function (i) { + return i != null; + }), + isNowValid = + !isNaN(m._d.getTime()) && + flags.overflow < 0 && + !flags.empty && + !flags.invalidEra && + !flags.invalidMonth && + !flags.invalidWeekday && + !flags.weekdayMismatch && + !flags.nullInput && + !flags.invalidFormat && + !flags.userInvalidated && + (!flags.meridiem || (flags.meridiem && parsedParts)); + + if (m._strict) { + isNowValid = + isNowValid && + flags.charsLeftOver === 0 && + flags.unusedTokens.length === 0 && + flags.bigHour === undefined; + } + + if (Object.isFrozen == null || !Object.isFrozen(m)) { + m._isValid = isNowValid; + } else { + return isNowValid; + } + } + return m._isValid; +} + +function createInvalid(flags) { + var m = createUTC(NaN); + if (flags != null) { + extend(getParsingFlags(m), flags); + } else { + getParsingFlags(m).userInvalidated = true; + } + + return m; +} + +// Plugins that add properties should also add the key here (null value), +// so we can properly clone ourselves. +var momentProperties = (hooks.momentProperties = []), + updateInProgress = false; + +function copyConfig(to, from) { + var i, + prop, + val, + momentPropertiesLen = momentProperties.length; + + if (!isUndefined(from._isAMomentObject)) { + to._isAMomentObject = from._isAMomentObject; + } + if (!isUndefined(from._i)) { + to._i = from._i; + } + if (!isUndefined(from._f)) { + to._f = from._f; + } + if (!isUndefined(from._l)) { + to._l = from._l; + } + if (!isUndefined(from._strict)) { + to._strict = from._strict; + } + if (!isUndefined(from._tzm)) { + to._tzm = from._tzm; + } + if (!isUndefined(from._isUTC)) { + to._isUTC = from._isUTC; + } + if (!isUndefined(from._offset)) { + to._offset = from._offset; + } + if (!isUndefined(from._pf)) { + to._pf = getParsingFlags(from); + } + if (!isUndefined(from._locale)) { + to._locale = from._locale; + } + + if (momentPropertiesLen > 0) { + for (i = 0; i < momentPropertiesLen; i++) { + prop = momentProperties[i]; + val = from[prop]; + if (!isUndefined(val)) { + to[prop] = val; + } + } + } + + return to; +} + +// Moment prototype object +function Moment(config) { + copyConfig(this, config); + this._d = new Date(config._d != null ? config._d.getTime() : NaN); + if (!this.isValid()) { + this._d = new Date(NaN); + } + // Prevent infinite loop in case updateOffset creates new moment + // objects. + if (updateInProgress === false) { + updateInProgress = true; + hooks.updateOffset(this); + updateInProgress = false; + } +} + +function isMoment(obj) { + return ( + obj instanceof Moment || (obj != null && obj._isAMomentObject != null) + ); +} + +function warn(msg) { + if ( + hooks.suppressDeprecationWarnings === false && + typeof console !== 'undefined' && + console.warn + ) { + console.warn('Deprecation warning: ' + msg); + } +} + +function deprecate(msg, fn) { + var firstTime = true; + + return extend(function () { + if (hooks.deprecationHandler != null) { + hooks.deprecationHandler(null, msg); + } + if (firstTime) { + var args = [], + arg, + i, + key, + argLen = arguments.length; + for (i = 0; i < argLen; i++) { + arg = ''; + if (typeof arguments[i] === 'object') { + arg += '\n[' + i + '] '; + for (key in arguments[0]) { + if (hasOwnProp(arguments[0], key)) { + arg += key + ': ' + arguments[0][key] + ', '; + } + } + arg = arg.slice(0, -2); // Remove trailing comma and space + } else { + arg = arguments[i]; + } + args.push(arg); + } + warn( + msg + + '\nArguments: ' + + Array.prototype.slice.call(args).join('') + + '\n' + + new Error().stack + ); + firstTime = false; + } + return fn.apply(this, arguments); + }, fn); +} + +var deprecations = {}; + +function deprecateSimple(name, msg) { + if (hooks.deprecationHandler != null) { + hooks.deprecationHandler(name, msg); + } + if (!deprecations[name]) { + warn(msg); + deprecations[name] = true; + } +} + +hooks.suppressDeprecationWarnings = false; +hooks.deprecationHandler = null; + +function isFunction(input) { + return ( + (typeof Function !== 'undefined' && input instanceof Function) || + Object.prototype.toString.call(input) === '[object Function]' + ); +} + +function set(config) { + var prop, i; + for (i in config) { + if (hasOwnProp(config, i)) { + prop = config[i]; + if (isFunction(prop)) { + this[i] = prop; + } else { + this['_' + i] = prop; + } + } + } + this._config = config; + // Lenient ordinal parsing accepts just a number in addition to + // number + (possibly) stuff coming from _dayOfMonthOrdinalParse. + // TODO: Remove "ordinalParse" fallback in next major release. + this._dayOfMonthOrdinalParseLenient = new RegExp( + (this._dayOfMonthOrdinalParse.source || this._ordinalParse.source) + + '|' + + /\d{1,2}/.source + ); +} + +function mergeConfigs(parentConfig, childConfig) { + var res = extend({}, parentConfig), + prop; + for (prop in childConfig) { + if (hasOwnProp(childConfig, prop)) { + if (isObject(parentConfig[prop]) && isObject(childConfig[prop])) { + res[prop] = {}; + extend(res[prop], parentConfig[prop]); + extend(res[prop], childConfig[prop]); + } else if (childConfig[prop] != null) { + res[prop] = childConfig[prop]; + } else { + delete res[prop]; + } + } + } + for (prop in parentConfig) { + if ( + hasOwnProp(parentConfig, prop) && + !hasOwnProp(childConfig, prop) && + isObject(parentConfig[prop]) + ) { + // make sure changes to properties don't modify parent config + res[prop] = extend({}, res[prop]); + } + } + return res; +} + +function Locale(config) { + if (config != null) { + this.set(config); + } +} + +var keys; + +if (Object.keys) { + keys = Object.keys; +} else { + keys = function (obj) { + var i, + res = []; + for (i in obj) { + if (hasOwnProp(obj, i)) { + res.push(i); + } + } + return res; + }; +} + +var defaultCalendar = { + sameDay: '[Today at] LT', + nextDay: '[Tomorrow at] LT', + nextWeek: 'dddd [at] LT', + lastDay: '[Yesterday at] LT', + lastWeek: '[Last] dddd [at] LT', + sameElse: 'L', +}; + +function calendar(key, mom, now) { + var output = this._calendar[key] || this._calendar['sameElse']; + return isFunction(output) ? output.call(mom, now) : output; +} + +function zeroFill(number, targetLength, forceSign) { + var absNumber = '' + Math.abs(number), + zerosToFill = targetLength - absNumber.length, + sign = number >= 0; + return ( + (sign ? (forceSign ? '+' : '') : '-') + + Math.pow(10, Math.max(0, zerosToFill)).toString().substr(1) + + absNumber + ); +} + +var formattingTokens = + /(\[[^\[]*\])|(\\)?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|N{1,5}|YYYYYY|YYYYY|YYYY|YY|y{2,4}|yo?|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g, + localFormattingTokens = /(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g, + formatFunctions = {}, + formatTokenFunctions = {}; + +// token: 'M' +// padded: ['MM', 2] +// ordinal: 'Mo' +// callback: function () { this.month() + 1 } +function addFormatToken(token, padded, ordinal, callback) { + var func = callback; + if (typeof callback === 'string') { + func = function () { + return this[callback](); + }; + } + if (token) { + formatTokenFunctions[token] = func; + } + if (padded) { + formatTokenFunctions[padded[0]] = function () { + return zeroFill(func.apply(this, arguments), padded[1], padded[2]); + }; + } + if (ordinal) { + formatTokenFunctions[ordinal] = function () { + return this.localeData().ordinal( + func.apply(this, arguments), + token + ); + }; + } +} + +function removeFormattingTokens(input) { + if (input.match(/\[[\s\S]/)) { + return input.replace(/^\[|\]$/g, ''); + } + return input.replace(/\\/g, ''); +} + +function makeFormatFunction(format) { + var array = format.match(formattingTokens), + i, + length; + + for (i = 0, length = array.length; i < length; i++) { + if (formatTokenFunctions[array[i]]) { + array[i] = formatTokenFunctions[array[i]]; + } else { + array[i] = removeFormattingTokens(array[i]); + } + } + + return function (mom) { + var output = '', + i; + for (i = 0; i < length; i++) { + output += isFunction(array[i]) + ? array[i].call(mom, format) + : array[i]; + } + return output; + }; +} + +// format date using native date object +function formatMoment(m, format) { + if (!m.isValid()) { + return m.localeData().invalidDate(); + } + + format = expandFormat(format, m.localeData()); + formatFunctions[format] = + formatFunctions[format] || makeFormatFunction(format); + + return formatFunctions[format](m); +} + +function expandFormat(format, locale) { + var i = 5; + + function replaceLongDateFormatTokens(input) { + return locale.longDateFormat(input) || input; + } + + localFormattingTokens.lastIndex = 0; + while (i >= 0 && localFormattingTokens.test(format)) { + format = format.replace( + localFormattingTokens, + replaceLongDateFormatTokens + ); + localFormattingTokens.lastIndex = 0; + i -= 1; + } + + return format; +} + +var defaultLongDateFormat = { + LTS: 'h:mm:ss A', + LT: 'h:mm A', + L: 'MM/DD/YYYY', + LL: 'MMMM D, YYYY', + LLL: 'MMMM D, YYYY h:mm A', + LLLL: 'dddd, MMMM D, YYYY h:mm A', +}; + +function longDateFormat(key) { + var format = this._longDateFormat[key], + formatUpper = this._longDateFormat[key.toUpperCase()]; + + if (format || !formatUpper) { + return format; + } + + this._longDateFormat[key] = formatUpper + .match(formattingTokens) + .map(function (tok) { + if ( + tok === 'MMMM' || + tok === 'MM' || + tok === 'DD' || + tok === 'dddd' + ) { + return tok.slice(1); + } + return tok; + }) + .join(''); + + return this._longDateFormat[key]; +} + +var defaultInvalidDate = 'Invalid date'; + +function invalidDate() { + return this._invalidDate; +} + +var defaultOrdinal = '%d', + defaultDayOfMonthOrdinalParse = /\d{1,2}/; + +function ordinal(number) { + return this._ordinal.replace('%d', number); +} + +var defaultRelativeTime = { + future: 'in %s', + past: '%s ago', + s: 'a few seconds', + ss: '%d seconds', + m: 'a minute', + mm: '%d minutes', + h: 'an hour', + hh: '%d hours', + d: 'a day', + dd: '%d days', + w: 'a week', + ww: '%d weeks', + M: 'a month', + MM: '%d months', + y: 'a year', + yy: '%d years', +}; + +function relativeTime(number, withoutSuffix, string, isFuture) { + var output = this._relativeTime[string]; + return isFunction(output) + ? output(number, withoutSuffix, string, isFuture) + : output.replace(/%d/i, number); +} + +function pastFuture(diff, output) { + var format = this._relativeTime[diff > 0 ? 'future' : 'past']; + return isFunction(format) ? format(output) : format.replace(/%s/i, output); +} + +var aliases = {}; + +function addUnitAlias(unit, shorthand) { + var lowerCase = unit.toLowerCase(); + aliases[lowerCase] = aliases[lowerCase + 's'] = aliases[shorthand] = unit; +} + +function normalizeUnits(units) { + return typeof units === 'string' + ? aliases[units] || aliases[units.toLowerCase()] + : undefined; +} + +function normalizeObjectUnits(inputObject) { + var normalizedInput = {}, + normalizedProp, + prop; + + for (prop in inputObject) { + if (hasOwnProp(inputObject, prop)) { + normalizedProp = normalizeUnits(prop); + if (normalizedProp) { + normalizedInput[normalizedProp] = inputObject[prop]; + } + } + } + + return normalizedInput; +} + +var priorities = {}; + +function addUnitPriority(unit, priority) { + priorities[unit] = priority; +} + +function getPrioritizedUnits(unitsObj) { + var units = [], + u; + for (u in unitsObj) { + if (hasOwnProp(unitsObj, u)) { + units.push({ unit: u, priority: priorities[u] }); + } + } + units.sort(function (a, b) { + return a.priority - b.priority; + }); + return units; +} + +function isLeapYear(year) { + return (year % 4 === 0 && year % 100 !== 0) || year % 400 === 0; +} + +function absFloor(number) { + if (number < 0) { + // -0 -> 0 + return Math.ceil(number) || 0; + } else { + return Math.floor(number); + } +} + +function toInt(argumentForCoercion) { + var coercedNumber = +argumentForCoercion, + value = 0; + + if (coercedNumber !== 0 && isFinite(coercedNumber)) { + value = absFloor(coercedNumber); + } + + return value; +} + +function makeGetSet(unit, keepTime) { + return function (value) { + if (value != null) { + set$1(this, unit, value); + hooks.updateOffset(this, keepTime); + return this; + } else { + return get(this, unit); + } + }; +} + +function get(mom, unit) { + return mom.isValid() + ? mom._d['get' + (mom._isUTC ? 'UTC' : '') + unit]() + : NaN; +} + +function set$1(mom, unit, value) { + if (mom.isValid() && !isNaN(value)) { + if ( + unit === 'FullYear' && + isLeapYear(mom.year()) && + mom.month() === 1 && + mom.date() === 29 + ) { + value = toInt(value); + mom._d['set' + (mom._isUTC ? 'UTC' : '') + unit]( + value, + mom.month(), + daysInMonth(value, mom.month()) + ); + } else { + mom._d['set' + (mom._isUTC ? 'UTC' : '') + unit](value); + } + } +} + +// MOMENTS + +function stringGet(units) { + units = normalizeUnits(units); + if (isFunction(this[units])) { + return this[units](); + } + return this; +} + +function stringSet(units, value) { + if (typeof units === 'object') { + units = normalizeObjectUnits(units); + var prioritized = getPrioritizedUnits(units), + i, + prioritizedLen = prioritized.length; + for (i = 0; i < prioritizedLen; i++) { + this[prioritized[i].unit](units[prioritized[i].unit]); + } + } else { + units = normalizeUnits(units); + if (isFunction(this[units])) { + return this[units](value); + } + } + return this; +} + +var match1 = /\d/, // 0 - 9 + match2 = /\d\d/, // 00 - 99 + match3 = /\d{3}/, // 000 - 999 + match4 = /\d{4}/, // 0000 - 9999 + match6 = /[+-]?\d{6}/, // -999999 - 999999 + match1to2 = /\d\d?/, // 0 - 99 + match3to4 = /\d\d\d\d?/, // 999 - 9999 + match5to6 = /\d\d\d\d\d\d?/, // 99999 - 999999 + match1to3 = /\d{1,3}/, // 0 - 999 + match1to4 = /\d{1,4}/, // 0 - 9999 + match1to6 = /[+-]?\d{1,6}/, // -999999 - 999999 + matchUnsigned = /\d+/, // 0 - inf + matchSigned = /[+-]?\d+/, // -inf - inf + matchOffset = /Z|[+-]\d\d:?\d\d/gi, // +00:00 -00:00 +0000 -0000 or Z + matchShortOffset = /Z|[+-]\d\d(?::?\d\d)?/gi, // +00 -00 +00:00 -00:00 +0000 -0000 or Z + matchTimestamp = /[+-]?\d+(\.\d{1,3})?/, // 123456789 123456789.123 + // any word (or two) characters or numbers including two/three word month in arabic. + // includes scottish gaelic two word and hyphenated months + matchWord = + /[0-9]{0,256}['a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFF07\uFF10-\uFFEF]{1,256}|[\u0600-\u06FF\/]{1,256}(\s*?[\u0600-\u06FF]{1,256}){1,2}/i, + regexes; + +regexes = {}; + +function addRegexToken(token, regex, strictRegex) { + regexes[token] = isFunction(regex) + ? regex + : function (isStrict, localeData) { + return isStrict && strictRegex ? strictRegex : regex; + }; +} + +function getParseRegexForToken(token, config) { + if (!hasOwnProp(regexes, token)) { + return new RegExp(unescapeFormat(token)); + } + + return regexes[token](config._strict, config._locale); +} + +// Code from http://stackoverflow.com/questions/3561493/is-there-a-regexp-escape-function-in-javascript +function unescapeFormat(s) { + return regexEscape( + s + .replace('\\', '') + .replace( + /\\(\[)|\\(\])|\[([^\]\[]*)\]|\\(.)/g, + function (matched, p1, p2, p3, p4) { + return p1 || p2 || p3 || p4; + } + ) + ); +} + +function regexEscape(s) { + return s.replace(/[-\/\\^$*+?.()|[\]{}]/g, '\\$&'); +} + +var tokens = {}; + +function addParseToken(token, callback) { + var i, + func = callback, + tokenLen; + if (typeof token === 'string') { + token = [token]; + } + if (isNumber(callback)) { + func = function (input, array) { + array[callback] = toInt(input); + }; + } + tokenLen = token.length; + for (i = 0; i < tokenLen; i++) { + tokens[token[i]] = func; + } +} + +function addWeekParseToken(token, callback) { + addParseToken(token, function (input, array, config, token) { + config._w = config._w || {}; + callback(input, config._w, config, token); + }); +} + +function addTimeToArrayFromToken(token, input, config) { + if (input != null && hasOwnProp(tokens, token)) { + tokens[token](input, config._a, config, token); + } +} + +var YEAR = 0, + MONTH = 1, + DATE = 2, + HOUR = 3, + MINUTE = 4, + SECOND = 5, + MILLISECOND = 6, + WEEK = 7, + WEEKDAY = 8; + +function mod(n, x) { + return ((n % x) + x) % x; +} + +var indexOf; + +if (Array.prototype.indexOf) { + indexOf = Array.prototype.indexOf; +} else { + indexOf = function (o) { + // I know + var i; + for (i = 0; i < this.length; ++i) { + if (this[i] === o) { + return i; + } + } + return -1; + }; +} + +function daysInMonth(year, month) { + if (isNaN(year) || isNaN(month)) { + return NaN; + } + var modMonth = mod(month, 12); + year += (month - modMonth) / 12; + return modMonth === 1 + ? isLeapYear(year) + ? 29 + : 28 + : 31 - ((modMonth % 7) % 2); +} + +// FORMATTING + +addFormatToken('M', ['MM', 2], 'Mo', function () { + return this.month() + 1; +}); + +addFormatToken('MMM', 0, 0, function (format) { + return this.localeData().monthsShort(this, format); +}); + +addFormatToken('MMMM', 0, 0, function (format) { + return this.localeData().months(this, format); +}); + +// ALIASES + +addUnitAlias('month', 'M'); + +// PRIORITY + +addUnitPriority('month', 8); + +// PARSING + +addRegexToken('M', match1to2); +addRegexToken('MM', match1to2, match2); +addRegexToken('MMM', function (isStrict, locale) { + return locale.monthsShortRegex(isStrict); +}); +addRegexToken('MMMM', function (isStrict, locale) { + return locale.monthsRegex(isStrict); +}); + +addParseToken(['M', 'MM'], function (input, array) { + array[MONTH] = toInt(input) - 1; +}); + +addParseToken(['MMM', 'MMMM'], function (input, array, config, token) { + var month = config._locale.monthsParse(input, token, config._strict); + // if we didn't find a month name, mark the date as invalid. + if (month != null) { + array[MONTH] = month; + } else { + getParsingFlags(config).invalidMonth = input; + } +}); + +// LOCALES + +var defaultLocaleMonths = + 'January_February_March_April_May_June_July_August_September_October_November_December'.split( + '_' + ), + defaultLocaleMonthsShort = + 'Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec'.split('_'), + MONTHS_IN_FORMAT = /D[oD]?(\[[^\[\]]*\]|\s)+MMMM?/, + defaultMonthsShortRegex = matchWord, + defaultMonthsRegex = matchWord; + +function localeMonths(m, format) { + if (!m) { + return isArray(this._months) + ? this._months + : this._months['standalone']; + } + return isArray(this._months) + ? this._months[m.month()] + : this._months[ + (this._months.isFormat || MONTHS_IN_FORMAT).test(format) + ? 'format' + : 'standalone' + ][m.month()]; +} + +function localeMonthsShort(m, format) { + if (!m) { + return isArray(this._monthsShort) + ? this._monthsShort + : this._monthsShort['standalone']; + } + return isArray(this._monthsShort) + ? this._monthsShort[m.month()] + : this._monthsShort[ + MONTHS_IN_FORMAT.test(format) ? 'format' : 'standalone' + ][m.month()]; +} + +function handleStrictParse(monthName, format, strict) { + var i, + ii, + mom, + llc = monthName.toLocaleLowerCase(); + if (!this._monthsParse) { + // this is not used + this._monthsParse = []; + this._longMonthsParse = []; + this._shortMonthsParse = []; + for (i = 0; i < 12; ++i) { + mom = createUTC([2000, i]); + this._shortMonthsParse[i] = this.monthsShort( + mom, + '' + ).toLocaleLowerCase(); + this._longMonthsParse[i] = this.months(mom, '').toLocaleLowerCase(); + } + } + + if (strict) { + if (format === 'MMM') { + ii = indexOf.call(this._shortMonthsParse, llc); + return ii !== -1 ? ii : null; + } else { + ii = indexOf.call(this._longMonthsParse, llc); + return ii !== -1 ? ii : null; + } + } else { + if (format === 'MMM') { + ii = indexOf.call(this._shortMonthsParse, llc); + if (ii !== -1) { + return ii; + } + ii = indexOf.call(this._longMonthsParse, llc); + return ii !== -1 ? ii : null; + } else { + ii = indexOf.call(this._longMonthsParse, llc); + if (ii !== -1) { + return ii; + } + ii = indexOf.call(this._shortMonthsParse, llc); + return ii !== -1 ? ii : null; + } + } +} + +function localeMonthsParse(monthName, format, strict) { + var i, mom, regex; + + if (this._monthsParseExact) { + return handleStrictParse.call(this, monthName, format, strict); + } + + if (!this._monthsParse) { + this._monthsParse = []; + this._longMonthsParse = []; + this._shortMonthsParse = []; + } + + // TODO: add sorting + // Sorting makes sure if one month (or abbr) is a prefix of another + // see sorting in computeMonthsParse + for (i = 0; i < 12; i++) { + // make the regex if we don't have it already + mom = createUTC([2000, i]); + if (strict && !this._longMonthsParse[i]) { + this._longMonthsParse[i] = new RegExp( + '^' + this.months(mom, '').replace('.', '') + '$', + 'i' + ); + this._shortMonthsParse[i] = new RegExp( + '^' + this.monthsShort(mom, '').replace('.', '') + '$', + 'i' + ); + } + if (!strict && !this._monthsParse[i]) { + regex = + '^' + this.months(mom, '') + '|^' + this.monthsShort(mom, ''); + this._monthsParse[i] = new RegExp(regex.replace('.', ''), 'i'); + } + // test the regex + if ( + strict && + format === 'MMMM' && + this._longMonthsParse[i].test(monthName) + ) { + return i; + } else if ( + strict && + format === 'MMM' && + this._shortMonthsParse[i].test(monthName) + ) { + return i; + } else if (!strict && this._monthsParse[i].test(monthName)) { + return i; + } + } +} + +// MOMENTS + +function setMonth(mom, value) { + var dayOfMonth; + + if (!mom.isValid()) { + // No op + return mom; + } + + if (typeof value === 'string') { + if (/^\d+$/.test(value)) { + value = toInt(value); + } else { + value = mom.localeData().monthsParse(value); + // TODO: Another silent failure? + if (!isNumber(value)) { + return mom; + } + } + } + + dayOfMonth = Math.min(mom.date(), daysInMonth(mom.year(), value)); + mom._d['set' + (mom._isUTC ? 'UTC' : '') + 'Month'](value, dayOfMonth); + return mom; +} + +function getSetMonth(value) { + if (value != null) { + setMonth(this, value); + hooks.updateOffset(this, true); + return this; + } else { + return get(this, 'Month'); + } +} + +function getDaysInMonth() { + return daysInMonth(this.year(), this.month()); +} + +function monthsShortRegex(isStrict) { + if (this._monthsParseExact) { + if (!hasOwnProp(this, '_monthsRegex')) { + computeMonthsParse.call(this); + } + if (isStrict) { + return this._monthsShortStrictRegex; + } else { + return this._monthsShortRegex; + } + } else { + if (!hasOwnProp(this, '_monthsShortRegex')) { + this._monthsShortRegex = defaultMonthsShortRegex; + } + return this._monthsShortStrictRegex && isStrict + ? this._monthsShortStrictRegex + : this._monthsShortRegex; + } +} + +function monthsRegex(isStrict) { + if (this._monthsParseExact) { + if (!hasOwnProp(this, '_monthsRegex')) { + computeMonthsParse.call(this); + } + if (isStrict) { + return this._monthsStrictRegex; + } else { + return this._monthsRegex; + } + } else { + if (!hasOwnProp(this, '_monthsRegex')) { + this._monthsRegex = defaultMonthsRegex; + } + return this._monthsStrictRegex && isStrict + ? this._monthsStrictRegex + : this._monthsRegex; + } +} + +function computeMonthsParse() { + function cmpLenRev(a, b) { + return b.length - a.length; + } + + var shortPieces = [], + longPieces = [], + mixedPieces = [], + i, + mom; + for (i = 0; i < 12; i++) { + // make the regex if we don't have it already + mom = createUTC([2000, i]); + shortPieces.push(this.monthsShort(mom, '')); + longPieces.push(this.months(mom, '')); + mixedPieces.push(this.months(mom, '')); + mixedPieces.push(this.monthsShort(mom, '')); + } + // Sorting makes sure if one month (or abbr) is a prefix of another it + // will match the longer piece. + shortPieces.sort(cmpLenRev); + longPieces.sort(cmpLenRev); + mixedPieces.sort(cmpLenRev); + for (i = 0; i < 12; i++) { + shortPieces[i] = regexEscape(shortPieces[i]); + longPieces[i] = regexEscape(longPieces[i]); + } + for (i = 0; i < 24; i++) { + mixedPieces[i] = regexEscape(mixedPieces[i]); + } + + this._monthsRegex = new RegExp('^(' + mixedPieces.join('|') + ')', 'i'); + this._monthsShortRegex = this._monthsRegex; + this._monthsStrictRegex = new RegExp( + '^(' + longPieces.join('|') + ')', + 'i' + ); + this._monthsShortStrictRegex = new RegExp( + '^(' + shortPieces.join('|') + ')', + 'i' + ); +} + +// FORMATTING + +addFormatToken('Y', 0, 0, function () { + var y = this.year(); + return y <= 9999 ? zeroFill(y, 4) : '+' + y; +}); + +addFormatToken(0, ['YY', 2], 0, function () { + return this.year() % 100; +}); + +addFormatToken(0, ['YYYY', 4], 0, 'year'); +addFormatToken(0, ['YYYYY', 5], 0, 'year'); +addFormatToken(0, ['YYYYYY', 6, true], 0, 'year'); + +// ALIASES + +addUnitAlias('year', 'y'); + +// PRIORITIES + +addUnitPriority('year', 1); + +// PARSING + +addRegexToken('Y', matchSigned); +addRegexToken('YY', match1to2, match2); +addRegexToken('YYYY', match1to4, match4); +addRegexToken('YYYYY', match1to6, match6); +addRegexToken('YYYYYY', match1to6, match6); + +addParseToken(['YYYYY', 'YYYYYY'], YEAR); +addParseToken('YYYY', function (input, array) { + array[YEAR] = + input.length === 2 ? hooks.parseTwoDigitYear(input) : toInt(input); +}); +addParseToken('YY', function (input, array) { + array[YEAR] = hooks.parseTwoDigitYear(input); +}); +addParseToken('Y', function (input, array) { + array[YEAR] = parseInt(input, 10); +}); + +// HELPERS + +function daysInYear(year) { + return isLeapYear(year) ? 366 : 365; +} + +// HOOKS + +hooks.parseTwoDigitYear = function (input) { + return toInt(input) + (toInt(input) > 68 ? 1900 : 2000); +}; + +// MOMENTS + +var getSetYear = makeGetSet('FullYear', true); + +function getIsLeapYear() { + return isLeapYear(this.year()); +} + +function createDate(y, m, d, h, M, s, ms) { + // can't just apply() to create a date: + // https://stackoverflow.com/q/181348 + var date; + // the date constructor remaps years 0-99 to 1900-1999 + if (y < 100 && y >= 0) { + // preserve leap years using a full 400 year cycle, then reset + date = new Date(y + 400, m, d, h, M, s, ms); + if (isFinite(date.getFullYear())) { + date.setFullYear(y); + } + } else { + date = new Date(y, m, d, h, M, s, ms); + } + + return date; +} + +function createUTCDate(y) { + var date, args; + // the Date.UTC function remaps years 0-99 to 1900-1999 + if (y < 100 && y >= 0) { + args = Array.prototype.slice.call(arguments); + // preserve leap years using a full 400 year cycle, then reset + args[0] = y + 400; + date = new Date(Date.UTC.apply(null, args)); + if (isFinite(date.getUTCFullYear())) { + date.setUTCFullYear(y); + } + } else { + date = new Date(Date.UTC.apply(null, arguments)); + } + + return date; +} + +// start-of-first-week - start-of-year +function firstWeekOffset(year, dow, doy) { + var // first-week day -- which january is always in the first week (4 for iso, 1 for other) + fwd = 7 + dow - doy, + // first-week day local weekday -- which local weekday is fwd + fwdlw = (7 + createUTCDate(year, 0, fwd).getUTCDay() - dow) % 7; + + return -fwdlw + fwd - 1; +} + +// https://en.wikipedia.org/wiki/ISO_week_date#Calculating_a_date_given_the_year.2C_week_number_and_weekday +function dayOfYearFromWeeks(year, week, weekday, dow, doy) { + var localWeekday = (7 + weekday - dow) % 7, + weekOffset = firstWeekOffset(year, dow, doy), + dayOfYear = 1 + 7 * (week - 1) + localWeekday + weekOffset, + resYear, + resDayOfYear; + + if (dayOfYear <= 0) { + resYear = year - 1; + resDayOfYear = daysInYear(resYear) + dayOfYear; + } else if (dayOfYear > daysInYear(year)) { + resYear = year + 1; + resDayOfYear = dayOfYear - daysInYear(year); + } else { + resYear = year; + resDayOfYear = dayOfYear; + } + + return { + year: resYear, + dayOfYear: resDayOfYear, + }; +} + +function weekOfYear(mom, dow, doy) { + var weekOffset = firstWeekOffset(mom.year(), dow, doy), + week = Math.floor((mom.dayOfYear() - weekOffset - 1) / 7) + 1, + resWeek, + resYear; + + if (week < 1) { + resYear = mom.year() - 1; + resWeek = week + weeksInYear(resYear, dow, doy); + } else if (week > weeksInYear(mom.year(), dow, doy)) { + resWeek = week - weeksInYear(mom.year(), dow, doy); + resYear = mom.year() + 1; + } else { + resYear = mom.year(); + resWeek = week; + } + + return { + week: resWeek, + year: resYear, + }; +} + +function weeksInYear(year, dow, doy) { + var weekOffset = firstWeekOffset(year, dow, doy), + weekOffsetNext = firstWeekOffset(year + 1, dow, doy); + return (daysInYear(year) - weekOffset + weekOffsetNext) / 7; +} + +// FORMATTING + +addFormatToken('w', ['ww', 2], 'wo', 'week'); +addFormatToken('W', ['WW', 2], 'Wo', 'isoWeek'); + +// ALIASES + +addUnitAlias('week', 'w'); +addUnitAlias('isoWeek', 'W'); + +// PRIORITIES + +addUnitPriority('week', 5); +addUnitPriority('isoWeek', 5); + +// PARSING + +addRegexToken('w', match1to2); +addRegexToken('ww', match1to2, match2); +addRegexToken('W', match1to2); +addRegexToken('WW', match1to2, match2); + +addWeekParseToken( + ['w', 'ww', 'W', 'WW'], + function (input, week, config, token) { + week[token.substr(0, 1)] = toInt(input); + } +); + +// HELPERS + +// LOCALES + +function localeWeek(mom) { + return weekOfYear(mom, this._week.dow, this._week.doy).week; +} + +var defaultLocaleWeek = { + dow: 0, // Sunday is the first day of the week. + doy: 6, // The week that contains Jan 6th is the first week of the year. +}; + +function localeFirstDayOfWeek() { + return this._week.dow; +} + +function localeFirstDayOfYear() { + return this._week.doy; +} + +// MOMENTS + +function getSetWeek(input) { + var week = this.localeData().week(this); + return input == null ? week : this.add((input - week) * 7, 'd'); +} + +function getSetISOWeek(input) { + var week = weekOfYear(this, 1, 4).week; + return input == null ? week : this.add((input - week) * 7, 'd'); +} + +// FORMATTING + +addFormatToken('d', 0, 'do', 'day'); + +addFormatToken('dd', 0, 0, function (format) { + return this.localeData().weekdaysMin(this, format); +}); + +addFormatToken('ddd', 0, 0, function (format) { + return this.localeData().weekdaysShort(this, format); +}); + +addFormatToken('dddd', 0, 0, function (format) { + return this.localeData().weekdays(this, format); +}); + +addFormatToken('e', 0, 0, 'weekday'); +addFormatToken('E', 0, 0, 'isoWeekday'); + +// ALIASES + +addUnitAlias('day', 'd'); +addUnitAlias('weekday', 'e'); +addUnitAlias('isoWeekday', 'E'); + +// PRIORITY +addUnitPriority('day', 11); +addUnitPriority('weekday', 11); +addUnitPriority('isoWeekday', 11); + +// PARSING + +addRegexToken('d', match1to2); +addRegexToken('e', match1to2); +addRegexToken('E', match1to2); +addRegexToken('dd', function (isStrict, locale) { + return locale.weekdaysMinRegex(isStrict); +}); +addRegexToken('ddd', function (isStrict, locale) { + return locale.weekdaysShortRegex(isStrict); +}); +addRegexToken('dddd', function (isStrict, locale) { + return locale.weekdaysRegex(isStrict); +}); + +addWeekParseToken(['dd', 'ddd', 'dddd'], function (input, week, config, token) { + var weekday = config._locale.weekdaysParse(input, token, config._strict); + // if we didn't get a weekday name, mark the date as invalid + if (weekday != null) { + week.d = weekday; + } else { + getParsingFlags(config).invalidWeekday = input; + } +}); + +addWeekParseToken(['d', 'e', 'E'], function (input, week, config, token) { + week[token] = toInt(input); +}); + +// HELPERS + +function parseWeekday(input, locale) { + if (typeof input !== 'string') { + return input; + } + + if (!isNaN(input)) { + return parseInt(input, 10); + } + + input = locale.weekdaysParse(input); + if (typeof input === 'number') { + return input; + } + + return null; +} + +function parseIsoWeekday(input, locale) { + if (typeof input === 'string') { + return locale.weekdaysParse(input) % 7 || 7; + } + return isNaN(input) ? null : input; +} + +// LOCALES +function shiftWeekdays(ws, n) { + return ws.slice(n, 7).concat(ws.slice(0, n)); +} + +var defaultLocaleWeekdays = + 'Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday'.split('_'), + defaultLocaleWeekdaysShort = 'Sun_Mon_Tue_Wed_Thu_Fri_Sat'.split('_'), + defaultLocaleWeekdaysMin = 'Su_Mo_Tu_We_Th_Fr_Sa'.split('_'), + defaultWeekdaysRegex = matchWord, + defaultWeekdaysShortRegex = matchWord, + defaultWeekdaysMinRegex = matchWord; + +function localeWeekdays(m, format) { + var weekdays = isArray(this._weekdays) + ? this._weekdays + : this._weekdays[ + m && m !== true && this._weekdays.isFormat.test(format) + ? 'format' + : 'standalone' + ]; + return m === true + ? shiftWeekdays(weekdays, this._week.dow) + : m + ? weekdays[m.day()] + : weekdays; +} + +function localeWeekdaysShort(m) { + return m === true + ? shiftWeekdays(this._weekdaysShort, this._week.dow) + : m + ? this._weekdaysShort[m.day()] + : this._weekdaysShort; +} + +function localeWeekdaysMin(m) { + return m === true + ? shiftWeekdays(this._weekdaysMin, this._week.dow) + : m + ? this._weekdaysMin[m.day()] + : this._weekdaysMin; +} + +function handleStrictParse$1(weekdayName, format, strict) { + var i, + ii, + mom, + llc = weekdayName.toLocaleLowerCase(); + if (!this._weekdaysParse) { + this._weekdaysParse = []; + this._shortWeekdaysParse = []; + this._minWeekdaysParse = []; + + for (i = 0; i < 7; ++i) { + mom = createUTC([2000, 1]).day(i); + this._minWeekdaysParse[i] = this.weekdaysMin( + mom, + '' + ).toLocaleLowerCase(); + this._shortWeekdaysParse[i] = this.weekdaysShort( + mom, + '' + ).toLocaleLowerCase(); + this._weekdaysParse[i] = this.weekdays(mom, '').toLocaleLowerCase(); + } + } + + if (strict) { + if (format === 'dddd') { + ii = indexOf.call(this._weekdaysParse, llc); + return ii !== -1 ? ii : null; + } else if (format === 'ddd') { + ii = indexOf.call(this._shortWeekdaysParse, llc); + return ii !== -1 ? ii : null; + } else { + ii = indexOf.call(this._minWeekdaysParse, llc); + return ii !== -1 ? ii : null; + } + } else { + if (format === 'dddd') { + ii = indexOf.call(this._weekdaysParse, llc); + if (ii !== -1) { + return ii; + } + ii = indexOf.call(this._shortWeekdaysParse, llc); + if (ii !== -1) { + return ii; + } + ii = indexOf.call(this._minWeekdaysParse, llc); + return ii !== -1 ? ii : null; + } else if (format === 'ddd') { + ii = indexOf.call(this._shortWeekdaysParse, llc); + if (ii !== -1) { + return ii; + } + ii = indexOf.call(this._weekdaysParse, llc); + if (ii !== -1) { + return ii; + } + ii = indexOf.call(this._minWeekdaysParse, llc); + return ii !== -1 ? ii : null; + } else { + ii = indexOf.call(this._minWeekdaysParse, llc); + if (ii !== -1) { + return ii; + } + ii = indexOf.call(this._weekdaysParse, llc); + if (ii !== -1) { + return ii; + } + ii = indexOf.call(this._shortWeekdaysParse, llc); + return ii !== -1 ? ii : null; + } + } +} + +function localeWeekdaysParse(weekdayName, format, strict) { + var i, mom, regex; + + if (this._weekdaysParseExact) { + return handleStrictParse$1.call(this, weekdayName, format, strict); + } + + if (!this._weekdaysParse) { + this._weekdaysParse = []; + this._minWeekdaysParse = []; + this._shortWeekdaysParse = []; + this._fullWeekdaysParse = []; + } + + for (i = 0; i < 7; i++) { + // make the regex if we don't have it already + + mom = createUTC([2000, 1]).day(i); + if (strict && !this._fullWeekdaysParse[i]) { + this._fullWeekdaysParse[i] = new RegExp( + '^' + this.weekdays(mom, '').replace('.', '\\.?') + '$', + 'i' + ); + this._shortWeekdaysParse[i] = new RegExp( + '^' + this.weekdaysShort(mom, '').replace('.', '\\.?') + '$', + 'i' + ); + this._minWeekdaysParse[i] = new RegExp( + '^' + this.weekdaysMin(mom, '').replace('.', '\\.?') + '$', + 'i' + ); + } + if (!this._weekdaysParse[i]) { + regex = + '^' + + this.weekdays(mom, '') + + '|^' + + this.weekdaysShort(mom, '') + + '|^' + + this.weekdaysMin(mom, ''); + this._weekdaysParse[i] = new RegExp(regex.replace('.', ''), 'i'); + } + // test the regex + if ( + strict && + format === 'dddd' && + this._fullWeekdaysParse[i].test(weekdayName) + ) { + return i; + } else if ( + strict && + format === 'ddd' && + this._shortWeekdaysParse[i].test(weekdayName) + ) { + return i; + } else if ( + strict && + format === 'dd' && + this._minWeekdaysParse[i].test(weekdayName) + ) { + return i; + } else if (!strict && this._weekdaysParse[i].test(weekdayName)) { + return i; + } + } +} + +// MOMENTS + +function getSetDayOfWeek(input) { + if (!this.isValid()) { + return input != null ? this : NaN; + } + var day = this._isUTC ? this._d.getUTCDay() : this._d.getDay(); + if (input != null) { + input = parseWeekday(input, this.localeData()); + return this.add(input - day, 'd'); + } else { + return day; + } +} + +function getSetLocaleDayOfWeek(input) { + if (!this.isValid()) { + return input != null ? this : NaN; + } + var weekday = (this.day() + 7 - this.localeData()._week.dow) % 7; + return input == null ? weekday : this.add(input - weekday, 'd'); +} + +function getSetISODayOfWeek(input) { + if (!this.isValid()) { + return input != null ? this : NaN; + } + + // behaves the same as moment#day except + // as a getter, returns 7 instead of 0 (1-7 range instead of 0-6) + // as a setter, sunday should belong to the previous week. + + if (input != null) { + var weekday = parseIsoWeekday(input, this.localeData()); + return this.day(this.day() % 7 ? weekday : weekday - 7); + } else { + return this.day() || 7; + } +} + +function weekdaysRegex(isStrict) { + if (this._weekdaysParseExact) { + if (!hasOwnProp(this, '_weekdaysRegex')) { + computeWeekdaysParse.call(this); + } + if (isStrict) { + return this._weekdaysStrictRegex; + } else { + return this._weekdaysRegex; + } + } else { + if (!hasOwnProp(this, '_weekdaysRegex')) { + this._weekdaysRegex = defaultWeekdaysRegex; + } + return this._weekdaysStrictRegex && isStrict + ? this._weekdaysStrictRegex + : this._weekdaysRegex; + } +} + +function weekdaysShortRegex(isStrict) { + if (this._weekdaysParseExact) { + if (!hasOwnProp(this, '_weekdaysRegex')) { + computeWeekdaysParse.call(this); + } + if (isStrict) { + return this._weekdaysShortStrictRegex; + } else { + return this._weekdaysShortRegex; + } + } else { + if (!hasOwnProp(this, '_weekdaysShortRegex')) { + this._weekdaysShortRegex = defaultWeekdaysShortRegex; + } + return this._weekdaysShortStrictRegex && isStrict + ? this._weekdaysShortStrictRegex + : this._weekdaysShortRegex; + } +} + +function weekdaysMinRegex(isStrict) { + if (this._weekdaysParseExact) { + if (!hasOwnProp(this, '_weekdaysRegex')) { + computeWeekdaysParse.call(this); + } + if (isStrict) { + return this._weekdaysMinStrictRegex; + } else { + return this._weekdaysMinRegex; + } + } else { + if (!hasOwnProp(this, '_weekdaysMinRegex')) { + this._weekdaysMinRegex = defaultWeekdaysMinRegex; + } + return this._weekdaysMinStrictRegex && isStrict + ? this._weekdaysMinStrictRegex + : this._weekdaysMinRegex; + } +} + +function computeWeekdaysParse() { + function cmpLenRev(a, b) { + return b.length - a.length; + } + + var minPieces = [], + shortPieces = [], + longPieces = [], + mixedPieces = [], + i, + mom, + minp, + shortp, + longp; + for (i = 0; i < 7; i++) { + // make the regex if we don't have it already + mom = createUTC([2000, 1]).day(i); + minp = regexEscape(this.weekdaysMin(mom, '')); + shortp = regexEscape(this.weekdaysShort(mom, '')); + longp = regexEscape(this.weekdays(mom, '')); + minPieces.push(minp); + shortPieces.push(shortp); + longPieces.push(longp); + mixedPieces.push(minp); + mixedPieces.push(shortp); + mixedPieces.push(longp); + } + // Sorting makes sure if one weekday (or abbr) is a prefix of another it + // will match the longer piece. + minPieces.sort(cmpLenRev); + shortPieces.sort(cmpLenRev); + longPieces.sort(cmpLenRev); + mixedPieces.sort(cmpLenRev); + + this._weekdaysRegex = new RegExp('^(' + mixedPieces.join('|') + ')', 'i'); + this._weekdaysShortRegex = this._weekdaysRegex; + this._weekdaysMinRegex = this._weekdaysRegex; + + this._weekdaysStrictRegex = new RegExp( + '^(' + longPieces.join('|') + ')', + 'i' + ); + this._weekdaysShortStrictRegex = new RegExp( + '^(' + shortPieces.join('|') + ')', + 'i' + ); + this._weekdaysMinStrictRegex = new RegExp( + '^(' + minPieces.join('|') + ')', + 'i' + ); +} + +// FORMATTING + +function hFormat() { + return this.hours() % 12 || 12; +} + +function kFormat() { + return this.hours() || 24; +} + +addFormatToken('H', ['HH', 2], 0, 'hour'); +addFormatToken('h', ['hh', 2], 0, hFormat); +addFormatToken('k', ['kk', 2], 0, kFormat); + +addFormatToken('hmm', 0, 0, function () { + return '' + hFormat.apply(this) + zeroFill(this.minutes(), 2); +}); + +addFormatToken('hmmss', 0, 0, function () { + return ( + '' + + hFormat.apply(this) + + zeroFill(this.minutes(), 2) + + zeroFill(this.seconds(), 2) + ); +}); + +addFormatToken('Hmm', 0, 0, function () { + return '' + this.hours() + zeroFill(this.minutes(), 2); +}); + +addFormatToken('Hmmss', 0, 0, function () { + return ( + '' + + this.hours() + + zeroFill(this.minutes(), 2) + + zeroFill(this.seconds(), 2) + ); +}); + +function meridiem(token, lowercase) { + addFormatToken(token, 0, 0, function () { + return this.localeData().meridiem( + this.hours(), + this.minutes(), + lowercase + ); + }); +} + +meridiem('a', true); +meridiem('A', false); + +// ALIASES + +addUnitAlias('hour', 'h'); + +// PRIORITY +addUnitPriority('hour', 13); + +// PARSING + +function matchMeridiem(isStrict, locale) { + return locale._meridiemParse; +} + +addRegexToken('a', matchMeridiem); +addRegexToken('A', matchMeridiem); +addRegexToken('H', match1to2); +addRegexToken('h', match1to2); +addRegexToken('k', match1to2); +addRegexToken('HH', match1to2, match2); +addRegexToken('hh', match1to2, match2); +addRegexToken('kk', match1to2, match2); + +addRegexToken('hmm', match3to4); +addRegexToken('hmmss', match5to6); +addRegexToken('Hmm', match3to4); +addRegexToken('Hmmss', match5to6); + +addParseToken(['H', 'HH'], HOUR); +addParseToken(['k', 'kk'], function (input, array, config) { + var kInput = toInt(input); + array[HOUR] = kInput === 24 ? 0 : kInput; +}); +addParseToken(['a', 'A'], function (input, array, config) { + config._isPm = config._locale.isPM(input); + config._meridiem = input; +}); +addParseToken(['h', 'hh'], function (input, array, config) { + array[HOUR] = toInt(input); + getParsingFlags(config).bigHour = true; +}); +addParseToken('hmm', function (input, array, config) { + var pos = input.length - 2; + array[HOUR] = toInt(input.substr(0, pos)); + array[MINUTE] = toInt(input.substr(pos)); + getParsingFlags(config).bigHour = true; +}); +addParseToken('hmmss', function (input, array, config) { + var pos1 = input.length - 4, + pos2 = input.length - 2; + array[HOUR] = toInt(input.substr(0, pos1)); + array[MINUTE] = toInt(input.substr(pos1, 2)); + array[SECOND] = toInt(input.substr(pos2)); + getParsingFlags(config).bigHour = true; +}); +addParseToken('Hmm', function (input, array, config) { + var pos = input.length - 2; + array[HOUR] = toInt(input.substr(0, pos)); + array[MINUTE] = toInt(input.substr(pos)); +}); +addParseToken('Hmmss', function (input, array, config) { + var pos1 = input.length - 4, + pos2 = input.length - 2; + array[HOUR] = toInt(input.substr(0, pos1)); + array[MINUTE] = toInt(input.substr(pos1, 2)); + array[SECOND] = toInt(input.substr(pos2)); +}); + +// LOCALES + +function localeIsPM(input) { + // IE8 Quirks Mode & IE7 Standards Mode do not allow accessing strings like arrays + // Using charAt should be more compatible. + return (input + '').toLowerCase().charAt(0) === 'p'; +} + +var defaultLocaleMeridiemParse = /[ap]\.?m?\.?/i, + // Setting the hour should keep the time, because the user explicitly + // specified which hour they want. So trying to maintain the same hour (in + // a new timezone) makes sense. Adding/subtracting hours does not follow + // this rule. + getSetHour = makeGetSet('Hours', true); + +function localeMeridiem(hours, minutes, isLower) { + if (hours > 11) { + return isLower ? 'pm' : 'PM'; + } else { + return isLower ? 'am' : 'AM'; + } +} + +var baseConfig = { + calendar: defaultCalendar, + longDateFormat: defaultLongDateFormat, + invalidDate: defaultInvalidDate, + ordinal: defaultOrdinal, + dayOfMonthOrdinalParse: defaultDayOfMonthOrdinalParse, + relativeTime: defaultRelativeTime, + + months: defaultLocaleMonths, + monthsShort: defaultLocaleMonthsShort, + + week: defaultLocaleWeek, + + weekdays: defaultLocaleWeekdays, + weekdaysMin: defaultLocaleWeekdaysMin, + weekdaysShort: defaultLocaleWeekdaysShort, + + meridiemParse: defaultLocaleMeridiemParse, +}; + +// internal storage for locale config files +var locales = {}, + localeFamilies = {}, + globalLocale; + +function commonPrefix(arr1, arr2) { + var i, + minl = Math.min(arr1.length, arr2.length); + for (i = 0; i < minl; i += 1) { + if (arr1[i] !== arr2[i]) { + return i; + } + } + return minl; +} + +function normalizeLocale(key) { + return key ? key.toLowerCase().replace('_', '-') : key; +} + +// pick the locale from the array +// try ['en-au', 'en-gb'] as 'en-au', 'en-gb', 'en', as in move through the list trying each +// substring from most specific to least, but move to the next array item if it's a more specific variant than the current root +function chooseLocale(names) { + var i = 0, + j, + next, + locale, + split; + + while (i < names.length) { + split = normalizeLocale(names[i]).split('-'); + j = split.length; + next = normalizeLocale(names[i + 1]); + next = next ? next.split('-') : null; + while (j > 0) { + locale = loadLocale(split.slice(0, j).join('-')); + if (locale) { + return locale; + } + if ( + next && + next.length >= j && + commonPrefix(split, next) >= j - 1 + ) { + //the next array item is better than a shallower substring of this one + break; + } + j--; + } + i++; + } + return globalLocale; +} + +function isLocaleNameSane(name) { + // Prevent names that look like filesystem paths, i.e contain '/' or '\' + return name.match('^[^/\\\\]*$') != null; +} + +function loadLocale(name) { + var oldLocale = null, + aliasedRequire; + // TODO: Find a better way to register and load all the locales in Node + if ( + locales[name] === undefined && + typeof module !== 'undefined' && + module && + module.exports && + isLocaleNameSane(name) + ) { + try { + oldLocale = globalLocale._abbr; + aliasedRequire = require; + aliasedRequire('./locale/' + name); + getSetGlobalLocale(oldLocale); + } catch (e) { + // mark as not found to avoid repeating expensive file require call causing high CPU + // when trying to find en-US, en_US, en-us for every format call + locales[name] = null; // null means not found + } + } + return locales[name]; +} + +// This function will load locale and then set the global locale. If +// no arguments are passed in, it will simply return the current global +// locale key. +function getSetGlobalLocale(key, values) { + var data; + if (key) { + if (isUndefined(values)) { + data = getLocale(key); + } else { + data = defineLocale(key, values); + } + + if (data) { + // moment.duration._locale = moment._locale = data; + globalLocale = data; + } else { + if (typeof console !== 'undefined' && console.warn) { + //warn user if arguments are passed but the locale could not be set + console.warn( + 'Locale ' + key + ' not found. Did you forget to load it?' + ); + } + } + } + + return globalLocale._abbr; +} + +function defineLocale(name, config) { + if (config !== null) { + var locale, + parentConfig = baseConfig; + config.abbr = name; + if (locales[name] != null) { + deprecateSimple( + 'defineLocaleOverride', + 'use moment.updateLocale(localeName, config) to change ' + + 'an existing locale. moment.defineLocale(localeName, ' + + 'config) should only be used for creating a new locale ' + + 'See http://momentjs.com/guides/#/warnings/define-locale/ for more info.' + ); + parentConfig = locales[name]._config; + } else if (config.parentLocale != null) { + if (locales[config.parentLocale] != null) { + parentConfig = locales[config.parentLocale]._config; + } else { + locale = loadLocale(config.parentLocale); + if (locale != null) { + parentConfig = locale._config; + } else { + if (!localeFamilies[config.parentLocale]) { + localeFamilies[config.parentLocale] = []; + } + localeFamilies[config.parentLocale].push({ + name: name, + config: config, + }); + return null; + } + } + } + locales[name] = new Locale(mergeConfigs(parentConfig, config)); + + if (localeFamilies[name]) { + localeFamilies[name].forEach(function (x) { + defineLocale(x.name, x.config); + }); + } + + // backwards compat for now: also set the locale + // make sure we set the locale AFTER all child locales have been + // created, so we won't end up with the child locale set. + getSetGlobalLocale(name); + + return locales[name]; + } else { + // useful for testing + delete locales[name]; + return null; + } +} + +function updateLocale(name, config) { + if (config != null) { + var locale, + tmpLocale, + parentConfig = baseConfig; + + if (locales[name] != null && locales[name].parentLocale != null) { + // Update existing child locale in-place to avoid memory-leaks + locales[name].set(mergeConfigs(locales[name]._config, config)); + } else { + // MERGE + tmpLocale = loadLocale(name); + if (tmpLocale != null) { + parentConfig = tmpLocale._config; + } + config = mergeConfigs(parentConfig, config); + if (tmpLocale == null) { + // updateLocale is called for creating a new locale + // Set abbr so it will have a name (getters return + // undefined otherwise). + config.abbr = name; + } + locale = new Locale(config); + locale.parentLocale = locales[name]; + locales[name] = locale; + } + + // backwards compat for now: also set the locale + getSetGlobalLocale(name); + } else { + // pass null for config to unupdate, useful for tests + if (locales[name] != null) { + if (locales[name].parentLocale != null) { + locales[name] = locales[name].parentLocale; + if (name === getSetGlobalLocale()) { + getSetGlobalLocale(name); + } + } else if (locales[name] != null) { + delete locales[name]; + } + } + } + return locales[name]; +} + +// returns locale data +function getLocale(key) { + var locale; + + if (key && key._locale && key._locale._abbr) { + key = key._locale._abbr; + } + + if (!key) { + return globalLocale; + } + + if (!isArray(key)) { + //short-circuit everything else + locale = loadLocale(key); + if (locale) { + return locale; + } + key = [key]; + } + + return chooseLocale(key); +} + +function listLocales() { + return keys(locales); +} + +function checkOverflow(m) { + var overflow, + a = m._a; + + if (a && getParsingFlags(m).overflow === -2) { + overflow = + a[MONTH] < 0 || a[MONTH] > 11 + ? MONTH + : a[DATE] < 1 || a[DATE] > daysInMonth(a[YEAR], a[MONTH]) + ? DATE + : a[HOUR] < 0 || + a[HOUR] > 24 || + (a[HOUR] === 24 && + (a[MINUTE] !== 0 || + a[SECOND] !== 0 || + a[MILLISECOND] !== 0)) + ? HOUR + : a[MINUTE] < 0 || a[MINUTE] > 59 + ? MINUTE + : a[SECOND] < 0 || a[SECOND] > 59 + ? SECOND + : a[MILLISECOND] < 0 || a[MILLISECOND] > 999 + ? MILLISECOND + : -1; + + if ( + getParsingFlags(m)._overflowDayOfYear && + (overflow < YEAR || overflow > DATE) + ) { + overflow = DATE; + } + if (getParsingFlags(m)._overflowWeeks && overflow === -1) { + overflow = WEEK; + } + if (getParsingFlags(m)._overflowWeekday && overflow === -1) { + overflow = WEEKDAY; + } + + getParsingFlags(m).overflow = overflow; + } + + return m; +} + +// iso 8601 regex +// 0000-00-00 0000-W00 or 0000-W00-0 + T + 00 or 00:00 or 00:00:00 or 00:00:00.000 + +00:00 or +0000 or +00) +var extendedIsoRegex = + /^\s*((?:[+-]\d{6}|\d{4})-(?:\d\d-\d\d|W\d\d-\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?::\d\d(?::\d\d(?:[.,]\d+)?)?)?)([+-]\d\d(?::?\d\d)?|\s*Z)?)?$/, + basicIsoRegex = + /^\s*((?:[+-]\d{6}|\d{4})(?:\d\d\d\d|W\d\d\d|W\d\d|\d\d\d|\d\d|))(?:(T| )(\d\d(?:\d\d(?:\d\d(?:[.,]\d+)?)?)?)([+-]\d\d(?::?\d\d)?|\s*Z)?)?$/, + tzRegex = /Z|[+-]\d\d(?::?\d\d)?/, + isoDates = [ + ['YYYYYY-MM-DD', /[+-]\d{6}-\d\d-\d\d/], + ['YYYY-MM-DD', /\d{4}-\d\d-\d\d/], + ['GGGG-[W]WW-E', /\d{4}-W\d\d-\d/], + ['GGGG-[W]WW', /\d{4}-W\d\d/, false], + ['YYYY-DDD', /\d{4}-\d{3}/], + ['YYYY-MM', /\d{4}-\d\d/, false], + ['YYYYYYMMDD', /[+-]\d{10}/], + ['YYYYMMDD', /\d{8}/], + ['GGGG[W]WWE', /\d{4}W\d{3}/], + ['GGGG[W]WW', /\d{4}W\d{2}/, false], + ['YYYYDDD', /\d{7}/], + ['YYYYMM', /\d{6}/, false], + ['YYYY', /\d{4}/, false], + ], + // iso time formats and regexes + isoTimes = [ + ['HH:mm:ss.SSSS', /\d\d:\d\d:\d\d\.\d+/], + ['HH:mm:ss,SSSS', /\d\d:\d\d:\d\d,\d+/], + ['HH:mm:ss', /\d\d:\d\d:\d\d/], + ['HH:mm', /\d\d:\d\d/], + ['HHmmss.SSSS', /\d\d\d\d\d\d\.\d+/], + ['HHmmss,SSSS', /\d\d\d\d\d\d,\d+/], + ['HHmmss', /\d\d\d\d\d\d/], + ['HHmm', /\d\d\d\d/], + ['HH', /\d\d/], + ], + aspNetJsonRegex = /^\/?Date\((-?\d+)/i, + // RFC 2822 regex: For details see https://tools.ietf.org/html/rfc2822#section-3.3 + rfc2822 = + /^(?:(Mon|Tue|Wed|Thu|Fri|Sat|Sun),?\s)?(\d{1,2})\s(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s(\d{2,4})\s(\d\d):(\d\d)(?::(\d\d))?\s(?:(UT|GMT|[ECMP][SD]T)|([Zz])|([+-]\d{4}))$/, + obsOffsets = { + UT: 0, + GMT: 0, + EDT: -4 * 60, + EST: -5 * 60, + CDT: -5 * 60, + CST: -6 * 60, + MDT: -6 * 60, + MST: -7 * 60, + PDT: -7 * 60, + PST: -8 * 60, + }; + +// date from iso format +function configFromISO(config) { + var i, + l, + string = config._i, + match = extendedIsoRegex.exec(string) || basicIsoRegex.exec(string), + allowTime, + dateFormat, + timeFormat, + tzFormat, + isoDatesLen = isoDates.length, + isoTimesLen = isoTimes.length; + + if (match) { + getParsingFlags(config).iso = true; + for (i = 0, l = isoDatesLen; i < l; i++) { + if (isoDates[i][1].exec(match[1])) { + dateFormat = isoDates[i][0]; + allowTime = isoDates[i][2] !== false; + break; + } + } + if (dateFormat == null) { + config._isValid = false; + return; + } + if (match[3]) { + for (i = 0, l = isoTimesLen; i < l; i++) { + if (isoTimes[i][1].exec(match[3])) { + // match[2] should be 'T' or space + timeFormat = (match[2] || ' ') + isoTimes[i][0]; + break; + } + } + if (timeFormat == null) { + config._isValid = false; + return; + } + } + if (!allowTime && timeFormat != null) { + config._isValid = false; + return; + } + if (match[4]) { + if (tzRegex.exec(match[4])) { + tzFormat = 'Z'; + } else { + config._isValid = false; + return; + } + } + config._f = dateFormat + (timeFormat || '') + (tzFormat || ''); + configFromStringAndFormat(config); + } else { + config._isValid = false; + } +} + +function extractFromRFC2822Strings( + yearStr, + monthStr, + dayStr, + hourStr, + minuteStr, + secondStr +) { + var result = [ + untruncateYear(yearStr), + defaultLocaleMonthsShort.indexOf(monthStr), + parseInt(dayStr, 10), + parseInt(hourStr, 10), + parseInt(minuteStr, 10), + ]; + + if (secondStr) { + result.push(parseInt(secondStr, 10)); + } + + return result; +} + +function untruncateYear(yearStr) { + var year = parseInt(yearStr, 10); + if (year <= 49) { + return 2000 + year; + } else if (year <= 999) { + return 1900 + year; + } + return year; +} + +function preprocessRFC2822(s) { + // Remove comments and folding whitespace and replace multiple-spaces with a single space + return s + .replace(/\([^()]*\)|[\n\t]/g, ' ') + .replace(/(\s\s+)/g, ' ') + .replace(/^\s\s*/, '') + .replace(/\s\s*$/, ''); +} + +function checkWeekday(weekdayStr, parsedInput, config) { + if (weekdayStr) { + // TODO: Replace the vanilla JS Date object with an independent day-of-week check. + var weekdayProvided = defaultLocaleWeekdaysShort.indexOf(weekdayStr), + weekdayActual = new Date( + parsedInput[0], + parsedInput[1], + parsedInput[2] + ).getDay(); + if (weekdayProvided !== weekdayActual) { + getParsingFlags(config).weekdayMismatch = true; + config._isValid = false; + return false; + } + } + return true; +} + +function calculateOffset(obsOffset, militaryOffset, numOffset) { + if (obsOffset) { + return obsOffsets[obsOffset]; + } else if (militaryOffset) { + // the only allowed military tz is Z + return 0; + } else { + var hm = parseInt(numOffset, 10), + m = hm % 100, + h = (hm - m) / 100; + return h * 60 + m; + } +} + +// date and time from ref 2822 format +function configFromRFC2822(config) { + var match = rfc2822.exec(preprocessRFC2822(config._i)), + parsedArray; + if (match) { + parsedArray = extractFromRFC2822Strings( + match[4], + match[3], + match[2], + match[5], + match[6], + match[7] + ); + if (!checkWeekday(match[1], parsedArray, config)) { + return; + } + + config._a = parsedArray; + config._tzm = calculateOffset(match[8], match[9], match[10]); + + config._d = createUTCDate.apply(null, config._a); + config._d.setUTCMinutes(config._d.getUTCMinutes() - config._tzm); + + getParsingFlags(config).rfc2822 = true; + } else { + config._isValid = false; + } +} + +// date from 1) ASP.NET, 2) ISO, 3) RFC 2822 formats, or 4) optional fallback if parsing isn't strict +function configFromString(config) { + var matched = aspNetJsonRegex.exec(config._i); + if (matched !== null) { + config._d = new Date(+matched[1]); + return; + } + + configFromISO(config); + if (config._isValid === false) { + delete config._isValid; + } else { + return; + } + + configFromRFC2822(config); + if (config._isValid === false) { + delete config._isValid; + } else { + return; + } + + if (config._strict) { + config._isValid = false; + } else { + // Final attempt, use Input Fallback + hooks.createFromInputFallback(config); + } +} + +hooks.createFromInputFallback = deprecate( + 'value provided is not in a recognized RFC2822 or ISO format. moment construction falls back to js Date(), ' + + 'which is not reliable across all browsers and versions. Non RFC2822/ISO date formats are ' + + 'discouraged. Please refer to http://momentjs.com/guides/#/warnings/js-date/ for more info.', + function (config) { + config._d = new Date(config._i + (config._useUTC ? ' UTC' : '')); + } +); + +// Pick the first defined of two or three arguments. +function defaults(a, b, c) { + if (a != null) { + return a; + } + if (b != null) { + return b; + } + return c; +} + +function currentDateArray(config) { + // hooks is actually the exported moment object + var nowValue = new Date(hooks.now()); + if (config._useUTC) { + return [ + nowValue.getUTCFullYear(), + nowValue.getUTCMonth(), + nowValue.getUTCDate(), + ]; + } + return [nowValue.getFullYear(), nowValue.getMonth(), nowValue.getDate()]; +} + +// convert an array to a date. +// the array should mirror the parameters below +// note: all values past the year are optional and will default to the lowest possible value. +// [year, month, day , hour, minute, second, millisecond] +function configFromArray(config) { + var i, + date, + input = [], + currentDate, + expectedWeekday, + yearToUse; + + if (config._d) { + return; + } + + currentDate = currentDateArray(config); + + //compute day of the year from weeks and weekdays + if (config._w && config._a[DATE] == null && config._a[MONTH] == null) { + dayOfYearFromWeekInfo(config); + } + + //if the day of the year is set, figure out what it is + if (config._dayOfYear != null) { + yearToUse = defaults(config._a[YEAR], currentDate[YEAR]); + + if ( + config._dayOfYear > daysInYear(yearToUse) || + config._dayOfYear === 0 + ) { + getParsingFlags(config)._overflowDayOfYear = true; + } + + date = createUTCDate(yearToUse, 0, config._dayOfYear); + config._a[MONTH] = date.getUTCMonth(); + config._a[DATE] = date.getUTCDate(); + } + + // Default to current date. + // * if no year, month, day of month are given, default to today + // * if day of month is given, default month and year + // * if month is given, default only year + // * if year is given, don't default anything + for (i = 0; i < 3 && config._a[i] == null; ++i) { + config._a[i] = input[i] = currentDate[i]; + } + + // Zero out whatever was not defaulted, including time + for (; i < 7; i++) { + config._a[i] = input[i] = + config._a[i] == null ? (i === 2 ? 1 : 0) : config._a[i]; + } + + // Check for 24:00:00.000 + if ( + config._a[HOUR] === 24 && + config._a[MINUTE] === 0 && + config._a[SECOND] === 0 && + config._a[MILLISECOND] === 0 + ) { + config._nextDay = true; + config._a[HOUR] = 0; + } + + config._d = (config._useUTC ? createUTCDate : createDate).apply( + null, + input + ); + expectedWeekday = config._useUTC + ? config._d.getUTCDay() + : config._d.getDay(); + + // Apply timezone offset from input. The actual utcOffset can be changed + // with parseZone. + if (config._tzm != null) { + config._d.setUTCMinutes(config._d.getUTCMinutes() - config._tzm); + } + + if (config._nextDay) { + config._a[HOUR] = 24; + } + + // check for mismatching day of week + if ( + config._w && + typeof config._w.d !== 'undefined' && + config._w.d !== expectedWeekday + ) { + getParsingFlags(config).weekdayMismatch = true; + } +} + +function dayOfYearFromWeekInfo(config) { + var w, weekYear, week, weekday, dow, doy, temp, weekdayOverflow, curWeek; + + w = config._w; + if (w.GG != null || w.W != null || w.E != null) { + dow = 1; + doy = 4; + + // TODO: We need to take the current isoWeekYear, but that depends on + // how we interpret now (local, utc, fixed offset). So create + // a now version of current config (take local/utc/offset flags, and + // create now). + weekYear = defaults( + w.GG, + config._a[YEAR], + weekOfYear(createLocal(), 1, 4).year + ); + week = defaults(w.W, 1); + weekday = defaults(w.E, 1); + if (weekday < 1 || weekday > 7) { + weekdayOverflow = true; + } + } else { + dow = config._locale._week.dow; + doy = config._locale._week.doy; + + curWeek = weekOfYear(createLocal(), dow, doy); + + weekYear = defaults(w.gg, config._a[YEAR], curWeek.year); + + // Default to current week. + week = defaults(w.w, curWeek.week); + + if (w.d != null) { + // weekday -- low day numbers are considered next week + weekday = w.d; + if (weekday < 0 || weekday > 6) { + weekdayOverflow = true; + } + } else if (w.e != null) { + // local weekday -- counting starts from beginning of week + weekday = w.e + dow; + if (w.e < 0 || w.e > 6) { + weekdayOverflow = true; + } + } else { + // default to beginning of week + weekday = dow; + } + } + if (week < 1 || week > weeksInYear(weekYear, dow, doy)) { + getParsingFlags(config)._overflowWeeks = true; + } else if (weekdayOverflow != null) { + getParsingFlags(config)._overflowWeekday = true; + } else { + temp = dayOfYearFromWeeks(weekYear, week, weekday, dow, doy); + config._a[YEAR] = temp.year; + config._dayOfYear = temp.dayOfYear; + } +} + +// constant that refers to the ISO standard +hooks.ISO_8601 = function () {}; + +// constant that refers to the RFC 2822 form +hooks.RFC_2822 = function () {}; + +// date from string and format string +function configFromStringAndFormat(config) { + // TODO: Move this to another part of the creation flow to prevent circular deps + if (config._f === hooks.ISO_8601) { + configFromISO(config); + return; + } + if (config._f === hooks.RFC_2822) { + configFromRFC2822(config); + return; + } + config._a = []; + getParsingFlags(config).empty = true; + + // This array is used to make a Date, either with `new Date` or `Date.UTC` + var string = '' + config._i, + i, + parsedInput, + tokens, + token, + skipped, + stringLength = string.length, + totalParsedInputLength = 0, + era, + tokenLen; + + tokens = + expandFormat(config._f, config._locale).match(formattingTokens) || []; + tokenLen = tokens.length; + for (i = 0; i < tokenLen; i++) { + token = tokens[i]; + parsedInput = (string.match(getParseRegexForToken(token, config)) || + [])[0]; + if (parsedInput) { + skipped = string.substr(0, string.indexOf(parsedInput)); + if (skipped.length > 0) { + getParsingFlags(config).unusedInput.push(skipped); + } + string = string.slice( + string.indexOf(parsedInput) + parsedInput.length + ); + totalParsedInputLength += parsedInput.length; + } + // don't parse if it's not a known token + if (formatTokenFunctions[token]) { + if (parsedInput) { + getParsingFlags(config).empty = false; + } else { + getParsingFlags(config).unusedTokens.push(token); + } + addTimeToArrayFromToken(token, parsedInput, config); + } else if (config._strict && !parsedInput) { + getParsingFlags(config).unusedTokens.push(token); + } + } + + // add remaining unparsed input length to the string + getParsingFlags(config).charsLeftOver = + stringLength - totalParsedInputLength; + if (string.length > 0) { + getParsingFlags(config).unusedInput.push(string); + } + + // clear _12h flag if hour is <= 12 + if ( + config._a[HOUR] <= 12 && + getParsingFlags(config).bigHour === true && + config._a[HOUR] > 0 + ) { + getParsingFlags(config).bigHour = undefined; + } + + getParsingFlags(config).parsedDateParts = config._a.slice(0); + getParsingFlags(config).meridiem = config._meridiem; + // handle meridiem + config._a[HOUR] = meridiemFixWrap( + config._locale, + config._a[HOUR], + config._meridiem + ); + + // handle era + era = getParsingFlags(config).era; + if (era !== null) { + config._a[YEAR] = config._locale.erasConvertYear(era, config._a[YEAR]); + } + + configFromArray(config); + checkOverflow(config); +} + +function meridiemFixWrap(locale, hour, meridiem) { + var isPm; + + if (meridiem == null) { + // nothing to do + return hour; + } + if (locale.meridiemHour != null) { + return locale.meridiemHour(hour, meridiem); + } else if (locale.isPM != null) { + // Fallback + isPm = locale.isPM(meridiem); + if (isPm && hour < 12) { + hour += 12; + } + if (!isPm && hour === 12) { + hour = 0; + } + return hour; + } else { + // this is not supposed to happen + return hour; + } +} + +// date from string and array of format strings +function configFromStringAndArray(config) { + var tempConfig, + bestMoment, + scoreToBeat, + i, + currentScore, + validFormatFound, + bestFormatIsValid = false, + configfLen = config._f.length; + + if (configfLen === 0) { + getParsingFlags(config).invalidFormat = true; + config._d = new Date(NaN); + return; + } + + for (i = 0; i < configfLen; i++) { + currentScore = 0; + validFormatFound = false; + tempConfig = copyConfig({}, config); + if (config._useUTC != null) { + tempConfig._useUTC = config._useUTC; + } + tempConfig._f = config._f[i]; + configFromStringAndFormat(tempConfig); + + if (isValid(tempConfig)) { + validFormatFound = true; + } + + // if there is any input that was not parsed add a penalty for that format + currentScore += getParsingFlags(tempConfig).charsLeftOver; + + //or tokens + currentScore += getParsingFlags(tempConfig).unusedTokens.length * 10; + + getParsingFlags(tempConfig).score = currentScore; + + if (!bestFormatIsValid) { + if ( + scoreToBeat == null || + currentScore < scoreToBeat || + validFormatFound + ) { + scoreToBeat = currentScore; + bestMoment = tempConfig; + if (validFormatFound) { + bestFormatIsValid = true; + } + } + } else { + if (currentScore < scoreToBeat) { + scoreToBeat = currentScore; + bestMoment = tempConfig; + } + } + } + + extend(config, bestMoment || tempConfig); +} + +function configFromObject(config) { + if (config._d) { + return; + } + + var i = normalizeObjectUnits(config._i), + dayOrDate = i.day === undefined ? i.date : i.day; + config._a = map( + [i.year, i.month, dayOrDate, i.hour, i.minute, i.second, i.millisecond], + function (obj) { + return obj && parseInt(obj, 10); + } + ); + + configFromArray(config); +} + +function createFromConfig(config) { + var res = new Moment(checkOverflow(prepareConfig(config))); + if (res._nextDay) { + // Adding is smart enough around DST + res.add(1, 'd'); + res._nextDay = undefined; + } + + return res; +} + +function prepareConfig(config) { + var input = config._i, + format = config._f; + + config._locale = config._locale || getLocale(config._l); + + if (input === null || (format === undefined && input === '')) { + return createInvalid({ nullInput: true }); + } + + if (typeof input === 'string') { + config._i = input = config._locale.preparse(input); + } + + if (isMoment(input)) { + return new Moment(checkOverflow(input)); + } else if (isDate(input)) { + config._d = input; + } else if (isArray(format)) { + configFromStringAndArray(config); + } else if (format) { + configFromStringAndFormat(config); + } else { + configFromInput(config); + } + + if (!isValid(config)) { + config._d = null; + } + + return config; +} + +function configFromInput(config) { + var input = config._i; + if (isUndefined(input)) { + config._d = new Date(hooks.now()); + } else if (isDate(input)) { + config._d = new Date(input.valueOf()); + } else if (typeof input === 'string') { + configFromString(config); + } else if (isArray(input)) { + config._a = map(input.slice(0), function (obj) { + return parseInt(obj, 10); + }); + configFromArray(config); + } else if (isObject(input)) { + configFromObject(config); + } else if (isNumber(input)) { + // from milliseconds + config._d = new Date(input); + } else { + hooks.createFromInputFallback(config); + } +} + +function createLocalOrUTC(input, format, locale, strict, isUTC) { + var c = {}; + + if (format === true || format === false) { + strict = format; + format = undefined; + } + + if (locale === true || locale === false) { + strict = locale; + locale = undefined; + } + + if ( + (isObject(input) && isObjectEmpty(input)) || + (isArray(input) && input.length === 0) + ) { + input = undefined; + } + // object construction must be done this way. + // https://github.com/moment/moment/issues/1423 + c._isAMomentObject = true; + c._useUTC = c._isUTC = isUTC; + c._l = locale; + c._i = input; + c._f = format; + c._strict = strict; + + return createFromConfig(c); +} + +function createLocal(input, format, locale, strict) { + return createLocalOrUTC(input, format, locale, strict, false); +} + +var prototypeMin = deprecate( + 'moment().min is deprecated, use moment.max instead. http://momentjs.com/guides/#/warnings/min-max/', + function () { + var other = createLocal.apply(null, arguments); + if (this.isValid() && other.isValid()) { + return other < this ? this : other; + } else { + return createInvalid(); + } + } + ), + prototypeMax = deprecate( + 'moment().max is deprecated, use moment.min instead. http://momentjs.com/guides/#/warnings/min-max/', + function () { + var other = createLocal.apply(null, arguments); + if (this.isValid() && other.isValid()) { + return other > this ? this : other; + } else { + return createInvalid(); + } + } + ); + +// Pick a moment m from moments so that m[fn](other) is true for all +// other. This relies on the function fn to be transitive. +// +// moments should either be an array of moment objects or an array, whose +// first element is an array of moment objects. +function pickBy(fn, moments) { + var res, i; + if (moments.length === 1 && isArray(moments[0])) { + moments = moments[0]; + } + if (!moments.length) { + return createLocal(); + } + res = moments[0]; + for (i = 1; i < moments.length; ++i) { + if (!moments[i].isValid() || moments[i][fn](res)) { + res = moments[i]; + } + } + return res; +} + +// TODO: Use [].sort instead? +function min() { + var args = [].slice.call(arguments, 0); + + return pickBy('isBefore', args); +} + +function max() { + var args = [].slice.call(arguments, 0); + + return pickBy('isAfter', args); +} + +var now = function () { + return Date.now ? Date.now() : +new Date(); +}; + +var ordering = [ + 'year', + 'quarter', + 'month', + 'week', + 'day', + 'hour', + 'minute', + 'second', + 'millisecond', +]; + +function isDurationValid(m) { + var key, + unitHasDecimal = false, + i, + orderLen = ordering.length; + for (key in m) { + if ( + hasOwnProp(m, key) && + !( + indexOf.call(ordering, key) !== -1 && + (m[key] == null || !isNaN(m[key])) + ) + ) { + return false; + } + } + + for (i = 0; i < orderLen; ++i) { + if (m[ordering[i]]) { + if (unitHasDecimal) { + return false; // only allow non-integers for smallest unit + } + if (parseFloat(m[ordering[i]]) !== toInt(m[ordering[i]])) { + unitHasDecimal = true; + } + } + } + + return true; +} + +function isValid$1() { + return this._isValid; +} + +function createInvalid$1() { + return createDuration(NaN); +} + +function Duration(duration) { + var normalizedInput = normalizeObjectUnits(duration), + years = normalizedInput.year || 0, + quarters = normalizedInput.quarter || 0, + months = normalizedInput.month || 0, + weeks = normalizedInput.week || normalizedInput.isoWeek || 0, + days = normalizedInput.day || 0, + hours = normalizedInput.hour || 0, + minutes = normalizedInput.minute || 0, + seconds = normalizedInput.second || 0, + milliseconds = normalizedInput.millisecond || 0; + + this._isValid = isDurationValid(normalizedInput); + + // representation for dateAddRemove + this._milliseconds = + +milliseconds + + seconds * 1e3 + // 1000 + minutes * 6e4 + // 1000 * 60 + hours * 1000 * 60 * 60; //using 1000 * 60 * 60 instead of 36e5 to avoid floating point rounding errors https://github.com/moment/moment/issues/2978 + // Because of dateAddRemove treats 24 hours as different from a + // day when working around DST, we need to store them separately + this._days = +days + weeks * 7; + // It is impossible to translate months into days without knowing + // which months you are are talking about, so we have to store + // it separately. + this._months = +months + quarters * 3 + years * 12; + + this._data = {}; + + this._locale = getLocale(); + + this._bubble(); +} + +function isDuration(obj) { + return obj instanceof Duration; +} + +function absRound(number) { + if (number < 0) { + return Math.round(-1 * number) * -1; + } else { + return Math.round(number); + } +} + +// compare two arrays, return the number of differences +function compareArrays(array1, array2, dontConvert) { + var len = Math.min(array1.length, array2.length), + lengthDiff = Math.abs(array1.length - array2.length), + diffs = 0, + i; + for (i = 0; i < len; i++) { + if ( + (dontConvert && array1[i] !== array2[i]) || + (!dontConvert && toInt(array1[i]) !== toInt(array2[i])) + ) { + diffs++; + } + } + return diffs + lengthDiff; +} + +// FORMATTING + +function offset(token, separator) { + addFormatToken(token, 0, 0, function () { + var offset = this.utcOffset(), + sign = '+'; + if (offset < 0) { + offset = -offset; + sign = '-'; + } + return ( + sign + + zeroFill(~~(offset / 60), 2) + + separator + + zeroFill(~~offset % 60, 2) + ); + }); +} + +offset('Z', ':'); +offset('ZZ', ''); + +// PARSING + +addRegexToken('Z', matchShortOffset); +addRegexToken('ZZ', matchShortOffset); +addParseToken(['Z', 'ZZ'], function (input, array, config) { + config._useUTC = true; + config._tzm = offsetFromString(matchShortOffset, input); +}); + +// HELPERS + +// timezone chunker +// '+10:00' > ['10', '00'] +// '-1530' > ['-15', '30'] +var chunkOffset = /([\+\-]|\d\d)/gi; + +function offsetFromString(matcher, string) { + var matches = (string || '').match(matcher), + chunk, + parts, + minutes; + + if (matches === null) { + return null; + } + + chunk = matches[matches.length - 1] || []; + parts = (chunk + '').match(chunkOffset) || ['-', 0, 0]; + minutes = +(parts[1] * 60) + toInt(parts[2]); + + return minutes === 0 ? 0 : parts[0] === '+' ? minutes : -minutes; +} + +// Return a moment from input, that is local/utc/zone equivalent to model. +function cloneWithOffset(input, model) { + var res, diff; + if (model._isUTC) { + res = model.clone(); + diff = + (isMoment(input) || isDate(input) + ? input.valueOf() + : createLocal(input).valueOf()) - res.valueOf(); + // Use low-level api, because this fn is low-level api. + res._d.setTime(res._d.valueOf() + diff); + hooks.updateOffset(res, false); + return res; + } else { + return createLocal(input).local(); + } +} + +function getDateOffset(m) { + // On Firefox.24 Date#getTimezoneOffset returns a floating point. + // https://github.com/moment/moment/pull/1871 + return -Math.round(m._d.getTimezoneOffset()); +} + +// HOOKS + +// This function will be called whenever a moment is mutated. +// It is intended to keep the offset in sync with the timezone. +hooks.updateOffset = function () {}; + +// MOMENTS + +// keepLocalTime = true means only change the timezone, without +// affecting the local hour. So 5:31:26 +0300 --[utcOffset(2, true)]--> +// 5:31:26 +0200 It is possible that 5:31:26 doesn't exist with offset +// +0200, so we adjust the time as needed, to be valid. +// +// Keeping the time actually adds/subtracts (one hour) +// from the actual represented time. That is why we call updateOffset +// a second time. In case it wants us to change the offset again +// _changeInProgress == true case, then we have to adjust, because +// there is no such time in the given timezone. +function getSetOffset(input, keepLocalTime, keepMinutes) { + var offset = this._offset || 0, + localAdjust; + if (!this.isValid()) { + return input != null ? this : NaN; + } + if (input != null) { + if (typeof input === 'string') { + input = offsetFromString(matchShortOffset, input); + if (input === null) { + return this; + } + } else if (Math.abs(input) < 16 && !keepMinutes) { + input = input * 60; + } + if (!this._isUTC && keepLocalTime) { + localAdjust = getDateOffset(this); + } + this._offset = input; + this._isUTC = true; + if (localAdjust != null) { + this.add(localAdjust, 'm'); + } + if (offset !== input) { + if (!keepLocalTime || this._changeInProgress) { + addSubtract( + this, + createDuration(input - offset, 'm'), + 1, + false + ); + } else if (!this._changeInProgress) { + this._changeInProgress = true; + hooks.updateOffset(this, true); + this._changeInProgress = null; + } + } + return this; + } else { + return this._isUTC ? offset : getDateOffset(this); + } +} + +function getSetZone(input, keepLocalTime) { + if (input != null) { + if (typeof input !== 'string') { + input = -input; + } + + this.utcOffset(input, keepLocalTime); + + return this; + } else { + return -this.utcOffset(); + } +} + +function setOffsetToUTC(keepLocalTime) { + return this.utcOffset(0, keepLocalTime); +} + +function setOffsetToLocal(keepLocalTime) { + if (this._isUTC) { + this.utcOffset(0, keepLocalTime); + this._isUTC = false; + + if (keepLocalTime) { + this.subtract(getDateOffset(this), 'm'); + } + } + return this; +} + +function setOffsetToParsedOffset() { + if (this._tzm != null) { + this.utcOffset(this._tzm, false, true); + } else if (typeof this._i === 'string') { + var tZone = offsetFromString(matchOffset, this._i); + if (tZone != null) { + this.utcOffset(tZone); + } else { + this.utcOffset(0, true); + } + } + return this; +} + +function hasAlignedHourOffset(input) { + if (!this.isValid()) { + return false; + } + input = input ? createLocal(input).utcOffset() : 0; + + return (this.utcOffset() - input) % 60 === 0; +} + +function isDaylightSavingTime() { + return ( + this.utcOffset() > this.clone().month(0).utcOffset() || + this.utcOffset() > this.clone().month(5).utcOffset() + ); +} + +function isDaylightSavingTimeShifted() { + if (!isUndefined(this._isDSTShifted)) { + return this._isDSTShifted; + } + + var c = {}, + other; + + copyConfig(c, this); + c = prepareConfig(c); + + if (c._a) { + other = c._isUTC ? createUTC(c._a) : createLocal(c._a); + this._isDSTShifted = + this.isValid() && compareArrays(c._a, other.toArray()) > 0; + } else { + this._isDSTShifted = false; + } + + return this._isDSTShifted; +} + +function isLocal() { + return this.isValid() ? !this._isUTC : false; +} + +function isUtcOffset() { + return this.isValid() ? this._isUTC : false; +} + +function isUtc() { + return this.isValid() ? this._isUTC && this._offset === 0 : false; +} + +// ASP.NET json date format regex +var aspNetRegex = /^(-|\+)?(?:(\d*)[. ])?(\d+):(\d+)(?::(\d+)(\.\d*)?)?$/, + // from http://docs.closure-library.googlecode.com/git/closure_goog_date_date.js.source.html + // somewhat more in line with 4.4.3.2 2004 spec, but allows decimal anywhere + // and further modified to allow for strings containing both week and day + isoRegex = + /^(-|\+)?P(?:([-+]?[0-9,.]*)Y)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)W)?(?:([-+]?[0-9,.]*)D)?(?:T(?:([-+]?[0-9,.]*)H)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)S)?)?$/; + +function createDuration(input, key) { + var duration = input, + // matching against regexp is expensive, do it on demand + match = null, + sign, + ret, + diffRes; + + if (isDuration(input)) { + duration = { + ms: input._milliseconds, + d: input._days, + M: input._months, + }; + } else if (isNumber(input) || !isNaN(+input)) { + duration = {}; + if (key) { + duration[key] = +input; + } else { + duration.milliseconds = +input; + } + } else if ((match = aspNetRegex.exec(input))) { + sign = match[1] === '-' ? -1 : 1; + duration = { + y: 0, + d: toInt(match[DATE]) * sign, + h: toInt(match[HOUR]) * sign, + m: toInt(match[MINUTE]) * sign, + s: toInt(match[SECOND]) * sign, + ms: toInt(absRound(match[MILLISECOND] * 1000)) * sign, // the millisecond decimal point is included in the match + }; + } else if ((match = isoRegex.exec(input))) { + sign = match[1] === '-' ? -1 : 1; + duration = { + y: parseIso(match[2], sign), + M: parseIso(match[3], sign), + w: parseIso(match[4], sign), + d: parseIso(match[5], sign), + h: parseIso(match[6], sign), + m: parseIso(match[7], sign), + s: parseIso(match[8], sign), + }; + } else if (duration == null) { + // checks for null or undefined + duration = {}; + } else if ( + typeof duration === 'object' && + ('from' in duration || 'to' in duration) + ) { + diffRes = momentsDifference( + createLocal(duration.from), + createLocal(duration.to) + ); + + duration = {}; + duration.ms = diffRes.milliseconds; + duration.M = diffRes.months; + } + + ret = new Duration(duration); + + if (isDuration(input) && hasOwnProp(input, '_locale')) { + ret._locale = input._locale; + } + + if (isDuration(input) && hasOwnProp(input, '_isValid')) { + ret._isValid = input._isValid; + } + + return ret; +} + +createDuration.fn = Duration.prototype; +createDuration.invalid = createInvalid$1; + +function parseIso(inp, sign) { + // We'd normally use ~~inp for this, but unfortunately it also + // converts floats to ints. + // inp may be undefined, so careful calling replace on it. + var res = inp && parseFloat(inp.replace(',', '.')); + // apply sign while we're at it + return (isNaN(res) ? 0 : res) * sign; +} + +function positiveMomentsDifference(base, other) { + var res = {}; + + res.months = + other.month() - base.month() + (other.year() - base.year()) * 12; + if (base.clone().add(res.months, 'M').isAfter(other)) { + --res.months; + } + + res.milliseconds = +other - +base.clone().add(res.months, 'M'); + + return res; +} + +function momentsDifference(base, other) { + var res; + if (!(base.isValid() && other.isValid())) { + return { milliseconds: 0, months: 0 }; + } + + other = cloneWithOffset(other, base); + if (base.isBefore(other)) { + res = positiveMomentsDifference(base, other); + } else { + res = positiveMomentsDifference(other, base); + res.milliseconds = -res.milliseconds; + res.months = -res.months; + } + + return res; +} + +// TODO: remove 'name' arg after deprecation is removed +function createAdder(direction, name) { + return function (val, period) { + var dur, tmp; + //invert the arguments, but complain about it + if (period !== null && !isNaN(+period)) { + deprecateSimple( + name, + 'moment().' + + name + + '(period, number) is deprecated. Please use moment().' + + name + + '(number, period). ' + + 'See http://momentjs.com/guides/#/warnings/add-inverted-param/ for more info.' + ); + tmp = val; + val = period; + period = tmp; + } + + dur = createDuration(val, period); + addSubtract(this, dur, direction); + return this; + }; +} + +function addSubtract(mom, duration, isAdding, updateOffset) { + var milliseconds = duration._milliseconds, + days = absRound(duration._days), + months = absRound(duration._months); + + if (!mom.isValid()) { + // No op + return; + } + + updateOffset = updateOffset == null ? true : updateOffset; + + if (months) { + setMonth(mom, get(mom, 'Month') + months * isAdding); + } + if (days) { + set$1(mom, 'Date', get(mom, 'Date') + days * isAdding); + } + if (milliseconds) { + mom._d.setTime(mom._d.valueOf() + milliseconds * isAdding); + } + if (updateOffset) { + hooks.updateOffset(mom, days || months); + } +} + +var add = createAdder(1, 'add'), + subtract = createAdder(-1, 'subtract'); + +function isString(input) { + return typeof input === 'string' || input instanceof String; +} + +// type MomentInput = Moment | Date | string | number | (number | string)[] | MomentInputObject | void; // null | undefined +function isMomentInput(input) { + return ( + isMoment(input) || + isDate(input) || + isString(input) || + isNumber(input) || + isNumberOrStringArray(input) || + isMomentInputObject(input) || + input === null || + input === undefined + ); +} + +function isMomentInputObject(input) { + var objectTest = isObject(input) && !isObjectEmpty(input), + propertyTest = false, + properties = [ + 'years', + 'year', + 'y', + 'months', + 'month', + 'M', + 'days', + 'day', + 'd', + 'dates', + 'date', + 'D', + 'hours', + 'hour', + 'h', + 'minutes', + 'minute', + 'm', + 'seconds', + 'second', + 's', + 'milliseconds', + 'millisecond', + 'ms', + ], + i, + property, + propertyLen = properties.length; + + for (i = 0; i < propertyLen; i += 1) { + property = properties[i]; + propertyTest = propertyTest || hasOwnProp(input, property); + } + + return objectTest && propertyTest; +} + +function isNumberOrStringArray(input) { + var arrayTest = isArray(input), + dataTypeTest = false; + if (arrayTest) { + dataTypeTest = + input.filter(function (item) { + return !isNumber(item) && isString(input); + }).length === 0; + } + return arrayTest && dataTypeTest; +} + +function isCalendarSpec(input) { + var objectTest = isObject(input) && !isObjectEmpty(input), + propertyTest = false, + properties = [ + 'sameDay', + 'nextDay', + 'lastDay', + 'nextWeek', + 'lastWeek', + 'sameElse', + ], + i, + property; + + for (i = 0; i < properties.length; i += 1) { + property = properties[i]; + propertyTest = propertyTest || hasOwnProp(input, property); + } + + return objectTest && propertyTest; +} + +function getCalendarFormat(myMoment, now) { + var diff = myMoment.diff(now, 'days', true); + return diff < -6 + ? 'sameElse' + : diff < -1 + ? 'lastWeek' + : diff < 0 + ? 'lastDay' + : diff < 1 + ? 'sameDay' + : diff < 2 + ? 'nextDay' + : diff < 7 + ? 'nextWeek' + : 'sameElse'; +} + +function calendar$1(time, formats) { + // Support for single parameter, formats only overload to the calendar function + if (arguments.length === 1) { + if (!arguments[0]) { + time = undefined; + formats = undefined; + } else if (isMomentInput(arguments[0])) { + time = arguments[0]; + formats = undefined; + } else if (isCalendarSpec(arguments[0])) { + formats = arguments[0]; + time = undefined; + } + } + // We want to compare the start of today, vs this. + // Getting start-of-today depends on whether we're local/utc/offset or not. + var now = time || createLocal(), + sod = cloneWithOffset(now, this).startOf('day'), + format = hooks.calendarFormat(this, sod) || 'sameElse', + output = + formats && + (isFunction(formats[format]) + ? formats[format].call(this, now) + : formats[format]); + + return this.format( + output || this.localeData().calendar(format, this, createLocal(now)) + ); +} + +function clone() { + return new Moment(this); +} + +function isAfter(input, units) { + var localInput = isMoment(input) ? input : createLocal(input); + if (!(this.isValid() && localInput.isValid())) { + return false; + } + units = normalizeUnits(units) || 'millisecond'; + if (units === 'millisecond') { + return this.valueOf() > localInput.valueOf(); + } else { + return localInput.valueOf() < this.clone().startOf(units).valueOf(); + } +} + +function isBefore(input, units) { + var localInput = isMoment(input) ? input : createLocal(input); + if (!(this.isValid() && localInput.isValid())) { + return false; + } + units = normalizeUnits(units) || 'millisecond'; + if (units === 'millisecond') { + return this.valueOf() < localInput.valueOf(); + } else { + return this.clone().endOf(units).valueOf() < localInput.valueOf(); + } +} + +function isBetween(from, to, units, inclusivity) { + var localFrom = isMoment(from) ? from : createLocal(from), + localTo = isMoment(to) ? to : createLocal(to); + if (!(this.isValid() && localFrom.isValid() && localTo.isValid())) { + return false; + } + inclusivity = inclusivity || '()'; + return ( + (inclusivity[0] === '(' + ? this.isAfter(localFrom, units) + : !this.isBefore(localFrom, units)) && + (inclusivity[1] === ')' + ? this.isBefore(localTo, units) + : !this.isAfter(localTo, units)) + ); +} + +function isSame(input, units) { + var localInput = isMoment(input) ? input : createLocal(input), + inputMs; + if (!(this.isValid() && localInput.isValid())) { + return false; + } + units = normalizeUnits(units) || 'millisecond'; + if (units === 'millisecond') { + return this.valueOf() === localInput.valueOf(); + } else { + inputMs = localInput.valueOf(); + return ( + this.clone().startOf(units).valueOf() <= inputMs && + inputMs <= this.clone().endOf(units).valueOf() + ); + } +} + +function isSameOrAfter(input, units) { + return this.isSame(input, units) || this.isAfter(input, units); +} + +function isSameOrBefore(input, units) { + return this.isSame(input, units) || this.isBefore(input, units); +} + +function diff(input, units, asFloat) { + var that, zoneDelta, output; + + if (!this.isValid()) { + return NaN; + } + + that = cloneWithOffset(input, this); + + if (!that.isValid()) { + return NaN; + } + + zoneDelta = (that.utcOffset() - this.utcOffset()) * 6e4; + + units = normalizeUnits(units); + + switch (units) { + case 'year': + output = monthDiff(this, that) / 12; + break; + case 'month': + output = monthDiff(this, that); + break; + case 'quarter': + output = monthDiff(this, that) / 3; + break; + case 'second': + output = (this - that) / 1e3; + break; // 1000 + case 'minute': + output = (this - that) / 6e4; + break; // 1000 * 60 + case 'hour': + output = (this - that) / 36e5; + break; // 1000 * 60 * 60 + case 'day': + output = (this - that - zoneDelta) / 864e5; + break; // 1000 * 60 * 60 * 24, negate dst + case 'week': + output = (this - that - zoneDelta) / 6048e5; + break; // 1000 * 60 * 60 * 24 * 7, negate dst + default: + output = this - that; + } + + return asFloat ? output : absFloor(output); +} + +function monthDiff(a, b) { + if (a.date() < b.date()) { + // end-of-month calculations work correct when the start month has more + // days than the end month. + return -monthDiff(b, a); + } + // difference in months + var wholeMonthDiff = (b.year() - a.year()) * 12 + (b.month() - a.month()), + // b is in (anchor - 1 month, anchor + 1 month) + anchor = a.clone().add(wholeMonthDiff, 'months'), + anchor2, + adjust; + + if (b - anchor < 0) { + anchor2 = a.clone().add(wholeMonthDiff - 1, 'months'); + // linear across the month + adjust = (b - anchor) / (anchor - anchor2); + } else { + anchor2 = a.clone().add(wholeMonthDiff + 1, 'months'); + // linear across the month + adjust = (b - anchor) / (anchor2 - anchor); + } + + //check for negative zero, return zero if negative zero + return -(wholeMonthDiff + adjust) || 0; +} + +hooks.defaultFormat = 'YYYY-MM-DDTHH:mm:ssZ'; +hooks.defaultFormatUtc = 'YYYY-MM-DDTHH:mm:ss[Z]'; + +function toString() { + return this.clone().locale('en').format('ddd MMM DD YYYY HH:mm:ss [GMT]ZZ'); +} + +function toISOString(keepOffset) { + if (!this.isValid()) { + return null; + } + var utc = keepOffset !== true, + m = utc ? this.clone().utc() : this; + if (m.year() < 0 || m.year() > 9999) { + return formatMoment( + m, + utc + ? 'YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]' + : 'YYYYYY-MM-DD[T]HH:mm:ss.SSSZ' + ); + } + if (isFunction(Date.prototype.toISOString)) { + // native implementation is ~50x faster, use it when we can + if (utc) { + return this.toDate().toISOString(); + } else { + return new Date(this.valueOf() + this.utcOffset() * 60 * 1000) + .toISOString() + .replace('Z', formatMoment(m, 'Z')); + } + } + return formatMoment( + m, + utc ? 'YYYY-MM-DD[T]HH:mm:ss.SSS[Z]' : 'YYYY-MM-DD[T]HH:mm:ss.SSSZ' + ); +} + +/** + * Return a human readable representation of a moment that can + * also be evaluated to get a new moment which is the same + * + * @link https://nodejs.org/dist/latest/docs/api/util.html#util_custom_inspect_function_on_objects + */ +function inspect() { + if (!this.isValid()) { + return 'moment.invalid(/* ' + this._i + ' */)'; + } + var func = 'moment', + zone = '', + prefix, + year, + datetime, + suffix; + if (!this.isLocal()) { + func = this.utcOffset() === 0 ? 'moment.utc' : 'moment.parseZone'; + zone = 'Z'; + } + prefix = '[' + func + '("]'; + year = 0 <= this.year() && this.year() <= 9999 ? 'YYYY' : 'YYYYYY'; + datetime = '-MM-DD[T]HH:mm:ss.SSS'; + suffix = zone + '[")]'; + + return this.format(prefix + year + datetime + suffix); +} + +function format(inputString) { + if (!inputString) { + inputString = this.isUtc() + ? hooks.defaultFormatUtc + : hooks.defaultFormat; + } + var output = formatMoment(this, inputString); + return this.localeData().postformat(output); +} + +function from(time, withoutSuffix) { + if ( + this.isValid() && + ((isMoment(time) && time.isValid()) || createLocal(time).isValid()) + ) { + return createDuration({ to: this, from: time }) + .locale(this.locale()) + .humanize(!withoutSuffix); + } else { + return this.localeData().invalidDate(); + } +} + +function fromNow(withoutSuffix) { + return this.from(createLocal(), withoutSuffix); +} + +function to(time, withoutSuffix) { + if ( + this.isValid() && + ((isMoment(time) && time.isValid()) || createLocal(time).isValid()) + ) { + return createDuration({ from: this, to: time }) + .locale(this.locale()) + .humanize(!withoutSuffix); + } else { + return this.localeData().invalidDate(); + } +} + +function toNow(withoutSuffix) { + return this.to(createLocal(), withoutSuffix); +} + +// If passed a locale key, it will set the locale for this +// instance. Otherwise, it will return the locale configuration +// variables for this instance. +function locale(key) { + var newLocaleData; + + if (key === undefined) { + return this._locale._abbr; + } else { + newLocaleData = getLocale(key); + if (newLocaleData != null) { + this._locale = newLocaleData; + } + return this; + } +} + +var lang = deprecate( + 'moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.', + function (key) { + if (key === undefined) { + return this.localeData(); + } else { + return this.locale(key); + } + } +); + +function localeData() { + return this._locale; +} + +var MS_PER_SECOND = 1000, + MS_PER_MINUTE = 60 * MS_PER_SECOND, + MS_PER_HOUR = 60 * MS_PER_MINUTE, + MS_PER_400_YEARS = (365 * 400 + 97) * 24 * MS_PER_HOUR; + +// actual modulo - handles negative numbers (for dates before 1970): +function mod$1(dividend, divisor) { + return ((dividend % divisor) + divisor) % divisor; +} + +function localStartOfDate(y, m, d) { + // the date constructor remaps years 0-99 to 1900-1999 + if (y < 100 && y >= 0) { + // preserve leap years using a full 400 year cycle, then reset + return new Date(y + 400, m, d) - MS_PER_400_YEARS; + } else { + return new Date(y, m, d).valueOf(); + } +} + +function utcStartOfDate(y, m, d) { + // Date.UTC remaps years 0-99 to 1900-1999 + if (y < 100 && y >= 0) { + // preserve leap years using a full 400 year cycle, then reset + return Date.UTC(y + 400, m, d) - MS_PER_400_YEARS; + } else { + return Date.UTC(y, m, d); + } +} + +function startOf(units) { + var time, startOfDate; + units = normalizeUnits(units); + if (units === undefined || units === 'millisecond' || !this.isValid()) { + return this; + } + + startOfDate = this._isUTC ? utcStartOfDate : localStartOfDate; + + switch (units) { + case 'year': + time = startOfDate(this.year(), 0, 1); + break; + case 'quarter': + time = startOfDate( + this.year(), + this.month() - (this.month() % 3), + 1 + ); + break; + case 'month': + time = startOfDate(this.year(), this.month(), 1); + break; + case 'week': + time = startOfDate( + this.year(), + this.month(), + this.date() - this.weekday() + ); + break; + case 'isoWeek': + time = startOfDate( + this.year(), + this.month(), + this.date() - (this.isoWeekday() - 1) + ); + break; + case 'day': + case 'date': + time = startOfDate(this.year(), this.month(), this.date()); + break; + case 'hour': + time = this._d.valueOf(); + time -= mod$1( + time + (this._isUTC ? 0 : this.utcOffset() * MS_PER_MINUTE), + MS_PER_HOUR + ); + break; + case 'minute': + time = this._d.valueOf(); + time -= mod$1(time, MS_PER_MINUTE); + break; + case 'second': + time = this._d.valueOf(); + time -= mod$1(time, MS_PER_SECOND); + break; + } + + this._d.setTime(time); + hooks.updateOffset(this, true); + return this; +} + +function endOf(units) { + var time, startOfDate; + units = normalizeUnits(units); + if (units === undefined || units === 'millisecond' || !this.isValid()) { + return this; + } + + startOfDate = this._isUTC ? utcStartOfDate : localStartOfDate; + + switch (units) { + case 'year': + time = startOfDate(this.year() + 1, 0, 1) - 1; + break; + case 'quarter': + time = + startOfDate( + this.year(), + this.month() - (this.month() % 3) + 3, + 1 + ) - 1; + break; + case 'month': + time = startOfDate(this.year(), this.month() + 1, 1) - 1; + break; + case 'week': + time = + startOfDate( + this.year(), + this.month(), + this.date() - this.weekday() + 7 + ) - 1; + break; + case 'isoWeek': + time = + startOfDate( + this.year(), + this.month(), + this.date() - (this.isoWeekday() - 1) + 7 + ) - 1; + break; + case 'day': + case 'date': + time = startOfDate(this.year(), this.month(), this.date() + 1) - 1; + break; + case 'hour': + time = this._d.valueOf(); + time += + MS_PER_HOUR - + mod$1( + time + (this._isUTC ? 0 : this.utcOffset() * MS_PER_MINUTE), + MS_PER_HOUR + ) - + 1; + break; + case 'minute': + time = this._d.valueOf(); + time += MS_PER_MINUTE - mod$1(time, MS_PER_MINUTE) - 1; + break; + case 'second': + time = this._d.valueOf(); + time += MS_PER_SECOND - mod$1(time, MS_PER_SECOND) - 1; + break; + } + + this._d.setTime(time); + hooks.updateOffset(this, true); + return this; +} + +function valueOf() { + return this._d.valueOf() - (this._offset || 0) * 60000; +} + +function unix() { + return Math.floor(this.valueOf() / 1000); +} + +function toDate() { + return new Date(this.valueOf()); +} + +function toArray() { + var m = this; + return [ + m.year(), + m.month(), + m.date(), + m.hour(), + m.minute(), + m.second(), + m.millisecond(), + ]; +} + +function toObject() { + var m = this; + return { + years: m.year(), + months: m.month(), + date: m.date(), + hours: m.hours(), + minutes: m.minutes(), + seconds: m.seconds(), + milliseconds: m.milliseconds(), + }; +} + +function toJSON() { + // new Date(NaN).toJSON() === null + return this.isValid() ? this.toISOString() : null; +} + +function isValid$2() { + return isValid(this); +} + +function parsingFlags() { + return extend({}, getParsingFlags(this)); +} + +function invalidAt() { + return getParsingFlags(this).overflow; +} + +function creationData() { + return { + input: this._i, + format: this._f, + locale: this._locale, + isUTC: this._isUTC, + strict: this._strict, + }; +} + +addFormatToken('N', 0, 0, 'eraAbbr'); +addFormatToken('NN', 0, 0, 'eraAbbr'); +addFormatToken('NNN', 0, 0, 'eraAbbr'); +addFormatToken('NNNN', 0, 0, 'eraName'); +addFormatToken('NNNNN', 0, 0, 'eraNarrow'); + +addFormatToken('y', ['y', 1], 'yo', 'eraYear'); +addFormatToken('y', ['yy', 2], 0, 'eraYear'); +addFormatToken('y', ['yyy', 3], 0, 'eraYear'); +addFormatToken('y', ['yyyy', 4], 0, 'eraYear'); + +addRegexToken('N', matchEraAbbr); +addRegexToken('NN', matchEraAbbr); +addRegexToken('NNN', matchEraAbbr); +addRegexToken('NNNN', matchEraName); +addRegexToken('NNNNN', matchEraNarrow); + +addParseToken( + ['N', 'NN', 'NNN', 'NNNN', 'NNNNN'], + function (input, array, config, token) { + var era = config._locale.erasParse(input, token, config._strict); + if (era) { + getParsingFlags(config).era = era; + } else { + getParsingFlags(config).invalidEra = input; + } + } +); + +addRegexToken('y', matchUnsigned); +addRegexToken('yy', matchUnsigned); +addRegexToken('yyy', matchUnsigned); +addRegexToken('yyyy', matchUnsigned); +addRegexToken('yo', matchEraYearOrdinal); + +addParseToken(['y', 'yy', 'yyy', 'yyyy'], YEAR); +addParseToken(['yo'], function (input, array, config, token) { + var match; + if (config._locale._eraYearOrdinalRegex) { + match = input.match(config._locale._eraYearOrdinalRegex); + } + + if (config._locale.eraYearOrdinalParse) { + array[YEAR] = config._locale.eraYearOrdinalParse(input, match); + } else { + array[YEAR] = parseInt(input, 10); + } +}); + +function localeEras(m, format) { + var i, + l, + date, + eras = this._eras || getLocale('en')._eras; + for (i = 0, l = eras.length; i < l; ++i) { + switch (typeof eras[i].since) { + case 'string': + // truncate time + date = hooks(eras[i].since).startOf('day'); + eras[i].since = date.valueOf(); + break; + } + + switch (typeof eras[i].until) { + case 'undefined': + eras[i].until = +Infinity; + break; + case 'string': + // truncate time + date = hooks(eras[i].until).startOf('day').valueOf(); + eras[i].until = date.valueOf(); + break; + } + } + return eras; +} + +function localeErasParse(eraName, format, strict) { + var i, + l, + eras = this.eras(), + name, + abbr, + narrow; + eraName = eraName.toUpperCase(); + + for (i = 0, l = eras.length; i < l; ++i) { + name = eras[i].name.toUpperCase(); + abbr = eras[i].abbr.toUpperCase(); + narrow = eras[i].narrow.toUpperCase(); + + if (strict) { + switch (format) { + case 'N': + case 'NN': + case 'NNN': + if (abbr === eraName) { + return eras[i]; + } + break; + + case 'NNNN': + if (name === eraName) { + return eras[i]; + } + break; + + case 'NNNNN': + if (narrow === eraName) { + return eras[i]; + } + break; + } + } else if ([name, abbr, narrow].indexOf(eraName) >= 0) { + return eras[i]; + } + } +} + +function localeErasConvertYear(era, year) { + var dir = era.since <= era.until ? +1 : -1; + if (year === undefined) { + return hooks(era.since).year(); + } else { + return hooks(era.since).year() + (year - era.offset) * dir; + } +} + +function getEraName() { + var i, + l, + val, + eras = this.localeData().eras(); + for (i = 0, l = eras.length; i < l; ++i) { + // truncate time + val = this.clone().startOf('day').valueOf(); + + if (eras[i].since <= val && val <= eras[i].until) { + return eras[i].name; + } + if (eras[i].until <= val && val <= eras[i].since) { + return eras[i].name; + } + } + + return ''; +} + +function getEraNarrow() { + var i, + l, + val, + eras = this.localeData().eras(); + for (i = 0, l = eras.length; i < l; ++i) { + // truncate time + val = this.clone().startOf('day').valueOf(); + + if (eras[i].since <= val && val <= eras[i].until) { + return eras[i].narrow; + } + if (eras[i].until <= val && val <= eras[i].since) { + return eras[i].narrow; + } + } + + return ''; +} + +function getEraAbbr() { + var i, + l, + val, + eras = this.localeData().eras(); + for (i = 0, l = eras.length; i < l; ++i) { + // truncate time + val = this.clone().startOf('day').valueOf(); + + if (eras[i].since <= val && val <= eras[i].until) { + return eras[i].abbr; + } + if (eras[i].until <= val && val <= eras[i].since) { + return eras[i].abbr; + } + } + + return ''; +} + +function getEraYear() { + var i, + l, + dir, + val, + eras = this.localeData().eras(); + for (i = 0, l = eras.length; i < l; ++i) { + dir = eras[i].since <= eras[i].until ? +1 : -1; + + // truncate time + val = this.clone().startOf('day').valueOf(); + + if ( + (eras[i].since <= val && val <= eras[i].until) || + (eras[i].until <= val && val <= eras[i].since) + ) { + return ( + (this.year() - hooks(eras[i].since).year()) * dir + + eras[i].offset + ); + } + } + + return this.year(); +} + +function erasNameRegex(isStrict) { + if (!hasOwnProp(this, '_erasNameRegex')) { + computeErasParse.call(this); + } + return isStrict ? this._erasNameRegex : this._erasRegex; +} + +function erasAbbrRegex(isStrict) { + if (!hasOwnProp(this, '_erasAbbrRegex')) { + computeErasParse.call(this); + } + return isStrict ? this._erasAbbrRegex : this._erasRegex; +} + +function erasNarrowRegex(isStrict) { + if (!hasOwnProp(this, '_erasNarrowRegex')) { + computeErasParse.call(this); + } + return isStrict ? this._erasNarrowRegex : this._erasRegex; +} + +function matchEraAbbr(isStrict, locale) { + return locale.erasAbbrRegex(isStrict); +} + +function matchEraName(isStrict, locale) { + return locale.erasNameRegex(isStrict); +} + +function matchEraNarrow(isStrict, locale) { + return locale.erasNarrowRegex(isStrict); +} + +function matchEraYearOrdinal(isStrict, locale) { + return locale._eraYearOrdinalRegex || matchUnsigned; +} + +function computeErasParse() { + var abbrPieces = [], + namePieces = [], + narrowPieces = [], + mixedPieces = [], + i, + l, + eras = this.eras(); + + for (i = 0, l = eras.length; i < l; ++i) { + namePieces.push(regexEscape(eras[i].name)); + abbrPieces.push(regexEscape(eras[i].abbr)); + narrowPieces.push(regexEscape(eras[i].narrow)); + + mixedPieces.push(regexEscape(eras[i].name)); + mixedPieces.push(regexEscape(eras[i].abbr)); + mixedPieces.push(regexEscape(eras[i].narrow)); + } + + this._erasRegex = new RegExp('^(' + mixedPieces.join('|') + ')', 'i'); + this._erasNameRegex = new RegExp('^(' + namePieces.join('|') + ')', 'i'); + this._erasAbbrRegex = new RegExp('^(' + abbrPieces.join('|') + ')', 'i'); + this._erasNarrowRegex = new RegExp( + '^(' + narrowPieces.join('|') + ')', + 'i' + ); +} + +// FORMATTING + +addFormatToken(0, ['gg', 2], 0, function () { + return this.weekYear() % 100; +}); + +addFormatToken(0, ['GG', 2], 0, function () { + return this.isoWeekYear() % 100; +}); + +function addWeekYearFormatToken(token, getter) { + addFormatToken(0, [token, token.length], 0, getter); +} + +addWeekYearFormatToken('gggg', 'weekYear'); +addWeekYearFormatToken('ggggg', 'weekYear'); +addWeekYearFormatToken('GGGG', 'isoWeekYear'); +addWeekYearFormatToken('GGGGG', 'isoWeekYear'); + +// ALIASES + +addUnitAlias('weekYear', 'gg'); +addUnitAlias('isoWeekYear', 'GG'); + +// PRIORITY + +addUnitPriority('weekYear', 1); +addUnitPriority('isoWeekYear', 1); + +// PARSING + +addRegexToken('G', matchSigned); +addRegexToken('g', matchSigned); +addRegexToken('GG', match1to2, match2); +addRegexToken('gg', match1to2, match2); +addRegexToken('GGGG', match1to4, match4); +addRegexToken('gggg', match1to4, match4); +addRegexToken('GGGGG', match1to6, match6); +addRegexToken('ggggg', match1to6, match6); + +addWeekParseToken( + ['gggg', 'ggggg', 'GGGG', 'GGGGG'], + function (input, week, config, token) { + week[token.substr(0, 2)] = toInt(input); + } +); + +addWeekParseToken(['gg', 'GG'], function (input, week, config, token) { + week[token] = hooks.parseTwoDigitYear(input); +}); + +// MOMENTS + +function getSetWeekYear(input) { + return getSetWeekYearHelper.call( + this, + input, + this.week(), + this.weekday(), + this.localeData()._week.dow, + this.localeData()._week.doy + ); +} + +function getSetISOWeekYear(input) { + return getSetWeekYearHelper.call( + this, + input, + this.isoWeek(), + this.isoWeekday(), + 1, + 4 + ); +} + +function getISOWeeksInYear() { + return weeksInYear(this.year(), 1, 4); +} + +function getISOWeeksInISOWeekYear() { + return weeksInYear(this.isoWeekYear(), 1, 4); +} + +function getWeeksInYear() { + var weekInfo = this.localeData()._week; + return weeksInYear(this.year(), weekInfo.dow, weekInfo.doy); +} + +function getWeeksInWeekYear() { + var weekInfo = this.localeData()._week; + return weeksInYear(this.weekYear(), weekInfo.dow, weekInfo.doy); +} + +function getSetWeekYearHelper(input, week, weekday, dow, doy) { + var weeksTarget; + if (input == null) { + return weekOfYear(this, dow, doy).year; + } else { + weeksTarget = weeksInYear(input, dow, doy); + if (week > weeksTarget) { + week = weeksTarget; + } + return setWeekAll.call(this, input, week, weekday, dow, doy); + } +} + +function setWeekAll(weekYear, week, weekday, dow, doy) { + var dayOfYearData = dayOfYearFromWeeks(weekYear, week, weekday, dow, doy), + date = createUTCDate(dayOfYearData.year, 0, dayOfYearData.dayOfYear); + + this.year(date.getUTCFullYear()); + this.month(date.getUTCMonth()); + this.date(date.getUTCDate()); + return this; +} + +// FORMATTING + +addFormatToken('Q', 0, 'Qo', 'quarter'); + +// ALIASES + +addUnitAlias('quarter', 'Q'); + +// PRIORITY + +addUnitPriority('quarter', 7); + +// PARSING + +addRegexToken('Q', match1); +addParseToken('Q', function (input, array) { + array[MONTH] = (toInt(input) - 1) * 3; +}); + +// MOMENTS + +function getSetQuarter(input) { + return input == null + ? Math.ceil((this.month() + 1) / 3) + : this.month((input - 1) * 3 + (this.month() % 3)); +} + +// FORMATTING + +addFormatToken('D', ['DD', 2], 'Do', 'date'); + +// ALIASES + +addUnitAlias('date', 'D'); + +// PRIORITY +addUnitPriority('date', 9); + +// PARSING + +addRegexToken('D', match1to2); +addRegexToken('DD', match1to2, match2); +addRegexToken('Do', function (isStrict, locale) { + // TODO: Remove "ordinalParse" fallback in next major release. + return isStrict + ? locale._dayOfMonthOrdinalParse || locale._ordinalParse + : locale._dayOfMonthOrdinalParseLenient; +}); + +addParseToken(['D', 'DD'], DATE); +addParseToken('Do', function (input, array) { + array[DATE] = toInt(input.match(match1to2)[0]); +}); + +// MOMENTS + +var getSetDayOfMonth = makeGetSet('Date', true); + +// FORMATTING + +addFormatToken('DDD', ['DDDD', 3], 'DDDo', 'dayOfYear'); + +// ALIASES + +addUnitAlias('dayOfYear', 'DDD'); + +// PRIORITY +addUnitPriority('dayOfYear', 4); + +// PARSING + +addRegexToken('DDD', match1to3); +addRegexToken('DDDD', match3); +addParseToken(['DDD', 'DDDD'], function (input, array, config) { + config._dayOfYear = toInt(input); +}); + +// HELPERS + +// MOMENTS + +function getSetDayOfYear(input) { + var dayOfYear = + Math.round( + (this.clone().startOf('day') - this.clone().startOf('year')) / 864e5 + ) + 1; + return input == null ? dayOfYear : this.add(input - dayOfYear, 'd'); +} + +// FORMATTING + +addFormatToken('m', ['mm', 2], 0, 'minute'); + +// ALIASES + +addUnitAlias('minute', 'm'); + +// PRIORITY + +addUnitPriority('minute', 14); + +// PARSING + +addRegexToken('m', match1to2); +addRegexToken('mm', match1to2, match2); +addParseToken(['m', 'mm'], MINUTE); + +// MOMENTS + +var getSetMinute = makeGetSet('Minutes', false); + +// FORMATTING + +addFormatToken('s', ['ss', 2], 0, 'second'); + +// ALIASES + +addUnitAlias('second', 's'); + +// PRIORITY + +addUnitPriority('second', 15); + +// PARSING + +addRegexToken('s', match1to2); +addRegexToken('ss', match1to2, match2); +addParseToken(['s', 'ss'], SECOND); + +// MOMENTS + +var getSetSecond = makeGetSet('Seconds', false); + +// FORMATTING + +addFormatToken('S', 0, 0, function () { + return ~~(this.millisecond() / 100); +}); + +addFormatToken(0, ['SS', 2], 0, function () { + return ~~(this.millisecond() / 10); +}); + +addFormatToken(0, ['SSS', 3], 0, 'millisecond'); +addFormatToken(0, ['SSSS', 4], 0, function () { + return this.millisecond() * 10; +}); +addFormatToken(0, ['SSSSS', 5], 0, function () { + return this.millisecond() * 100; +}); +addFormatToken(0, ['SSSSSS', 6], 0, function () { + return this.millisecond() * 1000; +}); +addFormatToken(0, ['SSSSSSS', 7], 0, function () { + return this.millisecond() * 10000; +}); +addFormatToken(0, ['SSSSSSSS', 8], 0, function () { + return this.millisecond() * 100000; +}); +addFormatToken(0, ['SSSSSSSSS', 9], 0, function () { + return this.millisecond() * 1000000; +}); + +// ALIASES + +addUnitAlias('millisecond', 'ms'); + +// PRIORITY + +addUnitPriority('millisecond', 16); + +// PARSING + +addRegexToken('S', match1to3, match1); +addRegexToken('SS', match1to3, match2); +addRegexToken('SSS', match1to3, match3); + +var token, getSetMillisecond; +for (token = 'SSSS'; token.length <= 9; token += 'S') { + addRegexToken(token, matchUnsigned); +} + +function parseMs(input, array) { + array[MILLISECOND] = toInt(('0.' + input) * 1000); +} + +for (token = 'S'; token.length <= 9; token += 'S') { + addParseToken(token, parseMs); +} + +getSetMillisecond = makeGetSet('Milliseconds', false); + +// FORMATTING + +addFormatToken('z', 0, 0, 'zoneAbbr'); +addFormatToken('zz', 0, 0, 'zoneName'); + +// MOMENTS + +function getZoneAbbr() { + return this._isUTC ? 'UTC' : ''; +} + +function getZoneName() { + return this._isUTC ? 'Coordinated Universal Time' : ''; +} + +var proto = Moment.prototype; + +proto.add = add; +proto.calendar = calendar$1; +proto.clone = clone; +proto.diff = diff; +proto.endOf = endOf; +proto.format = format; +proto.from = from; +proto.fromNow = fromNow; +proto.to = to; +proto.toNow = toNow; +proto.get = stringGet; +proto.invalidAt = invalidAt; +proto.isAfter = isAfter; +proto.isBefore = isBefore; +proto.isBetween = isBetween; +proto.isSame = isSame; +proto.isSameOrAfter = isSameOrAfter; +proto.isSameOrBefore = isSameOrBefore; +proto.isValid = isValid$2; +proto.lang = lang; +proto.locale = locale; +proto.localeData = localeData; +proto.max = prototypeMax; +proto.min = prototypeMin; +proto.parsingFlags = parsingFlags; +proto.set = stringSet; +proto.startOf = startOf; +proto.subtract = subtract; +proto.toArray = toArray; +proto.toObject = toObject; +proto.toDate = toDate; +proto.toISOString = toISOString; +proto.inspect = inspect; +if (typeof Symbol !== 'undefined' && Symbol.for != null) { + proto[Symbol.for('nodejs.util.inspect.custom')] = function () { + return 'Moment<' + this.format() + '>'; + }; +} +proto.toJSON = toJSON; +proto.toString = toString; +proto.unix = unix; +proto.valueOf = valueOf; +proto.creationData = creationData; +proto.eraName = getEraName; +proto.eraNarrow = getEraNarrow; +proto.eraAbbr = getEraAbbr; +proto.eraYear = getEraYear; +proto.year = getSetYear; +proto.isLeapYear = getIsLeapYear; +proto.weekYear = getSetWeekYear; +proto.isoWeekYear = getSetISOWeekYear; +proto.quarter = proto.quarters = getSetQuarter; +proto.month = getSetMonth; +proto.daysInMonth = getDaysInMonth; +proto.week = proto.weeks = getSetWeek; +proto.isoWeek = proto.isoWeeks = getSetISOWeek; +proto.weeksInYear = getWeeksInYear; +proto.weeksInWeekYear = getWeeksInWeekYear; +proto.isoWeeksInYear = getISOWeeksInYear; +proto.isoWeeksInISOWeekYear = getISOWeeksInISOWeekYear; +proto.date = getSetDayOfMonth; +proto.day = proto.days = getSetDayOfWeek; +proto.weekday = getSetLocaleDayOfWeek; +proto.isoWeekday = getSetISODayOfWeek; +proto.dayOfYear = getSetDayOfYear; +proto.hour = proto.hours = getSetHour; +proto.minute = proto.minutes = getSetMinute; +proto.second = proto.seconds = getSetSecond; +proto.millisecond = proto.milliseconds = getSetMillisecond; +proto.utcOffset = getSetOffset; +proto.utc = setOffsetToUTC; +proto.local = setOffsetToLocal; +proto.parseZone = setOffsetToParsedOffset; +proto.hasAlignedHourOffset = hasAlignedHourOffset; +proto.isDST = isDaylightSavingTime; +proto.isLocal = isLocal; +proto.isUtcOffset = isUtcOffset; +proto.isUtc = isUtc; +proto.isUTC = isUtc; +proto.zoneAbbr = getZoneAbbr; +proto.zoneName = getZoneName; +proto.dates = deprecate( + 'dates accessor is deprecated. Use date instead.', + getSetDayOfMonth +); +proto.months = deprecate( + 'months accessor is deprecated. Use month instead', + getSetMonth +); +proto.years = deprecate( + 'years accessor is deprecated. Use year instead', + getSetYear +); +proto.zone = deprecate( + 'moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/', + getSetZone +); +proto.isDSTShifted = deprecate( + 'isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information', + isDaylightSavingTimeShifted +); + +function createUnix(input) { + return createLocal(input * 1000); +} + +function createInZone() { + return createLocal.apply(null, arguments).parseZone(); +} + +function preParsePostFormat(string) { + return string; +} + +var proto$1 = Locale.prototype; + +proto$1.calendar = calendar; +proto$1.longDateFormat = longDateFormat; +proto$1.invalidDate = invalidDate; +proto$1.ordinal = ordinal; +proto$1.preparse = preParsePostFormat; +proto$1.postformat = preParsePostFormat; +proto$1.relativeTime = relativeTime; +proto$1.pastFuture = pastFuture; +proto$1.set = set; +proto$1.eras = localeEras; +proto$1.erasParse = localeErasParse; +proto$1.erasConvertYear = localeErasConvertYear; +proto$1.erasAbbrRegex = erasAbbrRegex; +proto$1.erasNameRegex = erasNameRegex; +proto$1.erasNarrowRegex = erasNarrowRegex; + +proto$1.months = localeMonths; +proto$1.monthsShort = localeMonthsShort; +proto$1.monthsParse = localeMonthsParse; +proto$1.monthsRegex = monthsRegex; +proto$1.monthsShortRegex = monthsShortRegex; +proto$1.week = localeWeek; +proto$1.firstDayOfYear = localeFirstDayOfYear; +proto$1.firstDayOfWeek = localeFirstDayOfWeek; + +proto$1.weekdays = localeWeekdays; +proto$1.weekdaysMin = localeWeekdaysMin; +proto$1.weekdaysShort = localeWeekdaysShort; +proto$1.weekdaysParse = localeWeekdaysParse; + +proto$1.weekdaysRegex = weekdaysRegex; +proto$1.weekdaysShortRegex = weekdaysShortRegex; +proto$1.weekdaysMinRegex = weekdaysMinRegex; + +proto$1.isPM = localeIsPM; +proto$1.meridiem = localeMeridiem; + +function get$1(format, index, field, setter) { + var locale = getLocale(), + utc = createUTC().set(setter, index); + return locale[field](utc, format); +} + +function listMonthsImpl(format, index, field) { + if (isNumber(format)) { + index = format; + format = undefined; + } + + format = format || ''; + + if (index != null) { + return get$1(format, index, field, 'month'); + } + + var i, + out = []; + for (i = 0; i < 12; i++) { + out[i] = get$1(format, i, field, 'month'); + } + return out; +} + +// () +// (5) +// (fmt, 5) +// (fmt) +// (true) +// (true, 5) +// (true, fmt, 5) +// (true, fmt) +function listWeekdaysImpl(localeSorted, format, index, field) { + if (typeof localeSorted === 'boolean') { + if (isNumber(format)) { + index = format; + format = undefined; + } + + format = format || ''; + } else { + format = localeSorted; + index = format; + localeSorted = false; + + if (isNumber(format)) { + index = format; + format = undefined; + } + + format = format || ''; + } + + var locale = getLocale(), + shift = localeSorted ? locale._week.dow : 0, + i, + out = []; + + if (index != null) { + return get$1(format, (index + shift) % 7, field, 'day'); + } + + for (i = 0; i < 7; i++) { + out[i] = get$1(format, (i + shift) % 7, field, 'day'); + } + return out; +} + +function listMonths(format, index) { + return listMonthsImpl(format, index, 'months'); +} + +function listMonthsShort(format, index) { + return listMonthsImpl(format, index, 'monthsShort'); +} + +function listWeekdays(localeSorted, format, index) { + return listWeekdaysImpl(localeSorted, format, index, 'weekdays'); +} + +function listWeekdaysShort(localeSorted, format, index) { + return listWeekdaysImpl(localeSorted, format, index, 'weekdaysShort'); +} + +function listWeekdaysMin(localeSorted, format, index) { + return listWeekdaysImpl(localeSorted, format, index, 'weekdaysMin'); +} + +getSetGlobalLocale('en', { + eras: [ + { + since: '0001-01-01', + until: +Infinity, + offset: 1, + name: 'Anno Domini', + narrow: 'AD', + abbr: 'AD', + }, + { + since: '0000-12-31', + until: -Infinity, + offset: 1, + name: 'Before Christ', + narrow: 'BC', + abbr: 'BC', + }, + ], + dayOfMonthOrdinalParse: /\d{1,2}(th|st|nd|rd)/, + ordinal: function (number) { + var b = number % 10, + output = + toInt((number % 100) / 10) === 1 + ? 'th' + : b === 1 + ? 'st' + : b === 2 + ? 'nd' + : b === 3 + ? 'rd' + : 'th'; + return number + output; + }, +}); + +// Side effect imports + +hooks.lang = deprecate( + 'moment.lang is deprecated. Use moment.locale instead.', + getSetGlobalLocale +); +hooks.langData = deprecate( + 'moment.langData is deprecated. Use moment.localeData instead.', + getLocale +); + +var mathAbs = Math.abs; + +function abs() { + var data = this._data; + + this._milliseconds = mathAbs(this._milliseconds); + this._days = mathAbs(this._days); + this._months = mathAbs(this._months); + + data.milliseconds = mathAbs(data.milliseconds); + data.seconds = mathAbs(data.seconds); + data.minutes = mathAbs(data.minutes); + data.hours = mathAbs(data.hours); + data.months = mathAbs(data.months); + data.years = mathAbs(data.years); + + return this; +} + +function addSubtract$1(duration, input, value, direction) { + var other = createDuration(input, value); + + duration._milliseconds += direction * other._milliseconds; + duration._days += direction * other._days; + duration._months += direction * other._months; + + return duration._bubble(); +} + +// supports only 2.0-style add(1, 's') or add(duration) +function add$1(input, value) { + return addSubtract$1(this, input, value, 1); +} + +// supports only 2.0-style subtract(1, 's') or subtract(duration) +function subtract$1(input, value) { + return addSubtract$1(this, input, value, -1); +} + +function absCeil(number) { + if (number < 0) { + return Math.floor(number); + } else { + return Math.ceil(number); + } +} + +function bubble() { + var milliseconds = this._milliseconds, + days = this._days, + months = this._months, + data = this._data, + seconds, + minutes, + hours, + years, + monthsFromDays; + + // if we have a mix of positive and negative values, bubble down first + // check: https://github.com/moment/moment/issues/2166 + if ( + !( + (milliseconds >= 0 && days >= 0 && months >= 0) || + (milliseconds <= 0 && days <= 0 && months <= 0) + ) + ) { + milliseconds += absCeil(monthsToDays(months) + days) * 864e5; + days = 0; + months = 0; + } + + // The following code bubbles up values, see the tests for + // examples of what that means. + data.milliseconds = milliseconds % 1000; + + seconds = absFloor(milliseconds / 1000); + data.seconds = seconds % 60; + + minutes = absFloor(seconds / 60); + data.minutes = minutes % 60; + + hours = absFloor(minutes / 60); + data.hours = hours % 24; + + days += absFloor(hours / 24); + + // convert days to months + monthsFromDays = absFloor(daysToMonths(days)); + months += monthsFromDays; + days -= absCeil(monthsToDays(monthsFromDays)); + + // 12 months -> 1 year + years = absFloor(months / 12); + months %= 12; + + data.days = days; + data.months = months; + data.years = years; + + return this; +} + +function daysToMonths(days) { + // 400 years have 146097 days (taking into account leap year rules) + // 400 years have 12 months === 4800 + return (days * 4800) / 146097; +} + +function monthsToDays(months) { + // the reverse of daysToMonths + return (months * 146097) / 4800; +} + +function as(units) { + if (!this.isValid()) { + return NaN; + } + var days, + months, + milliseconds = this._milliseconds; + + units = normalizeUnits(units); + + if (units === 'month' || units === 'quarter' || units === 'year') { + days = this._days + milliseconds / 864e5; + months = this._months + daysToMonths(days); + switch (units) { + case 'month': + return months; + case 'quarter': + return months / 3; + case 'year': + return months / 12; + } + } else { + // handle milliseconds separately because of floating point math errors (issue #1867) + days = this._days + Math.round(monthsToDays(this._months)); + switch (units) { + case 'week': + return days / 7 + milliseconds / 6048e5; + case 'day': + return days + milliseconds / 864e5; + case 'hour': + return days * 24 + milliseconds / 36e5; + case 'minute': + return days * 1440 + milliseconds / 6e4; + case 'second': + return days * 86400 + milliseconds / 1000; + // Math.floor prevents floating point math errors here + case 'millisecond': + return Math.floor(days * 864e5) + milliseconds; + default: + throw new Error('Unknown unit ' + units); + } + } +} + +// TODO: Use this.as('ms')? +function valueOf$1() { + if (!this.isValid()) { + return NaN; + } + return ( + this._milliseconds + + this._days * 864e5 + + (this._months % 12) * 2592e6 + + toInt(this._months / 12) * 31536e6 + ); +} + +function makeAs(alias) { + return function () { + return this.as(alias); + }; +} + +var asMilliseconds = makeAs('ms'), + asSeconds = makeAs('s'), + asMinutes = makeAs('m'), + asHours = makeAs('h'), + asDays = makeAs('d'), + asWeeks = makeAs('w'), + asMonths = makeAs('M'), + asQuarters = makeAs('Q'), + asYears = makeAs('y'); + +function clone$1() { + return createDuration(this); +} + +function get$2(units) { + units = normalizeUnits(units); + return this.isValid() ? this[units + 's']() : NaN; +} + +function makeGetter(name) { + return function () { + return this.isValid() ? this._data[name] : NaN; + }; +} + +var milliseconds = makeGetter('milliseconds'), + seconds = makeGetter('seconds'), + minutes = makeGetter('minutes'), + hours = makeGetter('hours'), + days = makeGetter('days'), + months = makeGetter('months'), + years = makeGetter('years'); + +function weeks() { + return absFloor(this.days() / 7); +} + +var round = Math.round, + thresholds = { + ss: 44, // a few seconds to seconds + s: 45, // seconds to minute + m: 45, // minutes to hour + h: 22, // hours to day + d: 26, // days to month/week + w: null, // weeks to month + M: 11, // months to year + }; + +// helper function for moment.fn.from, moment.fn.fromNow, and moment.duration.fn.humanize +function substituteTimeAgo(string, number, withoutSuffix, isFuture, locale) { + return locale.relativeTime(number || 1, !!withoutSuffix, string, isFuture); +} + +function relativeTime$1(posNegDuration, withoutSuffix, thresholds, locale) { + var duration = createDuration(posNegDuration).abs(), + seconds = round(duration.as('s')), + minutes = round(duration.as('m')), + hours = round(duration.as('h')), + days = round(duration.as('d')), + months = round(duration.as('M')), + weeks = round(duration.as('w')), + years = round(duration.as('y')), + a = + (seconds <= thresholds.ss && ['s', seconds]) || + (seconds < thresholds.s && ['ss', seconds]) || + (minutes <= 1 && ['m']) || + (minutes < thresholds.m && ['mm', minutes]) || + (hours <= 1 && ['h']) || + (hours < thresholds.h && ['hh', hours]) || + (days <= 1 && ['d']) || + (days < thresholds.d && ['dd', days]); + + if (thresholds.w != null) { + a = + a || + (weeks <= 1 && ['w']) || + (weeks < thresholds.w && ['ww', weeks]); + } + a = a || + (months <= 1 && ['M']) || + (months < thresholds.M && ['MM', months]) || + (years <= 1 && ['y']) || ['yy', years]; + + a[2] = withoutSuffix; + a[3] = +posNegDuration > 0; + a[4] = locale; + return substituteTimeAgo.apply(null, a); +} + +// This function allows you to set the rounding function for relative time strings +function getSetRelativeTimeRounding(roundingFunction) { + if (roundingFunction === undefined) { + return round; + } + if (typeof roundingFunction === 'function') { + round = roundingFunction; + return true; + } + return false; +} + +// This function allows you to set a threshold for relative time strings +function getSetRelativeTimeThreshold(threshold, limit) { + if (thresholds[threshold] === undefined) { + return false; + } + if (limit === undefined) { + return thresholds[threshold]; + } + thresholds[threshold] = limit; + if (threshold === 's') { + thresholds.ss = limit - 1; + } + return true; +} + +function humanize(argWithSuffix, argThresholds) { + if (!this.isValid()) { + return this.localeData().invalidDate(); + } + + var withSuffix = false, + th = thresholds, + locale, + output; + + if (typeof argWithSuffix === 'object') { + argThresholds = argWithSuffix; + argWithSuffix = false; + } + if (typeof argWithSuffix === 'boolean') { + withSuffix = argWithSuffix; + } + if (typeof argThresholds === 'object') { + th = Object.assign({}, thresholds, argThresholds); + if (argThresholds.s != null && argThresholds.ss == null) { + th.ss = argThresholds.s - 1; + } + } + + locale = this.localeData(); + output = relativeTime$1(this, !withSuffix, th, locale); + + if (withSuffix) { + output = locale.pastFuture(+this, output); + } + + return locale.postformat(output); +} + +var abs$1 = Math.abs; + +function sign(x) { + return (x > 0) - (x < 0) || +x; +} + +function toISOString$1() { + // for ISO strings we do not use the normal bubbling rules: + // * milliseconds bubble up until they become hours + // * days do not bubble at all + // * months bubble up until they become years + // This is because there is no context-free conversion between hours and days + // (think of clock changes) + // and also not between days and months (28-31 days per month) + if (!this.isValid()) { + return this.localeData().invalidDate(); + } + + var seconds = abs$1(this._milliseconds) / 1000, + days = abs$1(this._days), + months = abs$1(this._months), + minutes, + hours, + years, + s, + total = this.asSeconds(), + totalSign, + ymSign, + daysSign, + hmsSign; + + if (!total) { + // this is the same as C#'s (Noda) and python (isodate)... + // but not other JS (goog.date) + return 'P0D'; + } + + // 3600 seconds -> 60 minutes -> 1 hour + minutes = absFloor(seconds / 60); + hours = absFloor(minutes / 60); + seconds %= 60; + minutes %= 60; + + // 12 months -> 1 year + years = absFloor(months / 12); + months %= 12; + + // inspired by https://github.com/dordille/moment-isoduration/blob/master/moment.isoduration.js + s = seconds ? seconds.toFixed(3).replace(/\.?0+$/, '') : ''; + + totalSign = total < 0 ? '-' : ''; + ymSign = sign(this._months) !== sign(total) ? '-' : ''; + daysSign = sign(this._days) !== sign(total) ? '-' : ''; + hmsSign = sign(this._milliseconds) !== sign(total) ? '-' : ''; + + return ( + totalSign + + 'P' + + (years ? ymSign + years + 'Y' : '') + + (months ? ymSign + months + 'M' : '') + + (days ? daysSign + days + 'D' : '') + + (hours || minutes || seconds ? 'T' : '') + + (hours ? hmsSign + hours + 'H' : '') + + (minutes ? hmsSign + minutes + 'M' : '') + + (seconds ? hmsSign + s + 'S' : '') + ); +} + +var proto$2 = Duration.prototype; + +proto$2.isValid = isValid$1; +proto$2.abs = abs; +proto$2.add = add$1; +proto$2.subtract = subtract$1; +proto$2.as = as; +proto$2.asMilliseconds = asMilliseconds; +proto$2.asSeconds = asSeconds; +proto$2.asMinutes = asMinutes; +proto$2.asHours = asHours; +proto$2.asDays = asDays; +proto$2.asWeeks = asWeeks; +proto$2.asMonths = asMonths; +proto$2.asQuarters = asQuarters; +proto$2.asYears = asYears; +proto$2.valueOf = valueOf$1; +proto$2._bubble = bubble; +proto$2.clone = clone$1; +proto$2.get = get$2; +proto$2.milliseconds = milliseconds; +proto$2.seconds = seconds; +proto$2.minutes = minutes; +proto$2.hours = hours; +proto$2.days = days; +proto$2.weeks = weeks; +proto$2.months = months; +proto$2.years = years; +proto$2.humanize = humanize; +proto$2.toISOString = toISOString$1; +proto$2.toString = toISOString$1; +proto$2.toJSON = toISOString$1; +proto$2.locale = locale; +proto$2.localeData = localeData; + +proto$2.toIsoString = deprecate( + 'toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)', + toISOString$1 +); +proto$2.lang = lang; + +// FORMATTING + +addFormatToken('X', 0, 0, 'unix'); +addFormatToken('x', 0, 0, 'valueOf'); + +// PARSING + +addRegexToken('x', matchSigned); +addRegexToken('X', matchTimestamp); +addParseToken('X', function (input, array, config) { + config._d = new Date(parseFloat(input) * 1000); +}); +addParseToken('x', function (input, array, config) { + config._d = new Date(toInt(input)); +}); + +//! moment.js + +hooks.version = '2.29.4'; + +setHookCallback(createLocal); + +hooks.fn = proto; +hooks.min = min; +hooks.max = max; +hooks.now = now; +hooks.utc = createUTC; +hooks.unix = createUnix; +hooks.months = listMonths; +hooks.isDate = isDate; +hooks.locale = getSetGlobalLocale; +hooks.invalid = createInvalid; +hooks.duration = createDuration; +hooks.isMoment = isMoment; +hooks.weekdays = listWeekdays; +hooks.parseZone = createInZone; +hooks.localeData = getLocale; +hooks.isDuration = isDuration; +hooks.monthsShort = listMonthsShort; +hooks.weekdaysMin = listWeekdaysMin; +hooks.defineLocale = defineLocale; +hooks.updateLocale = updateLocale; +hooks.locales = listLocales; +hooks.weekdaysShort = listWeekdaysShort; +hooks.normalizeUnits = normalizeUnits; +hooks.relativeTimeRounding = getSetRelativeTimeRounding; +hooks.relativeTimeThreshold = getSetRelativeTimeThreshold; +hooks.calendarFormat = getCalendarFormat; +hooks.prototype = proto; + +// currently HTML5 input type only supports 24-hour formats +hooks.HTML5_FMT = { + DATETIME_LOCAL: 'YYYY-MM-DDTHH:mm', // + DATETIME_LOCAL_SECONDS: 'YYYY-MM-DDTHH:mm:ss', // + DATETIME_LOCAL_MS: 'YYYY-MM-DDTHH:mm:ss.SSS', // + DATE: 'YYYY-MM-DD', // + TIME: 'HH:mm', // + TIME_SECONDS: 'HH:mm:ss', // + TIME_MS: 'HH:mm:ss.SSS', // + WEEK: 'GGGG-[W]WW', // + MONTH: 'YYYY-MM', // +}; + +export default hooks; diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/package.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/package.js new file mode 100644 index 0000000..aba8d50 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/package.js @@ -0,0 +1,11 @@ +var profile = { + resourceTags: { + ignore: function(filename, mid){ + // only include moment/moment + return mid != "moment/moment"; + }, + amd: function(filename, mid){ + return /\.js$/.test(filename); + } + } +}; diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/src/__init__.py b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/src/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/ts3.1-typings/__init__.py b/pxy_dashboard/static/dashboard/vendor/daterangepicker/node_modules/moment/ts3.1-typings/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/package.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/package.js new file mode 100644 index 0000000..9b19e53 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/package.js @@ -0,0 +1,17 @@ +Package.describe({ + name: 'dangrossman:bootstrap-daterangepicker', + version: '3.1.0', + summary: 'Date range picker component', + git: 'https://github.com/dangrossman/daterangepicker', + documentation: 'README.md' +}); + +Package.onUse(function(api) { + api.versionsFrom('METEOR@0.9.0.1'); + + api.use('momentjs:moment@2.22.1', ["client"]); + api.use('jquery@3.3.1', ["client"]); + + api.addFiles('daterangepicker.js', ["client"]); + api.addFiles('daterangepicker.css', ["client"]); +}); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/test.html b/pxy_dashboard/static/dashboard/vendor/daterangepicker/test.html new file mode 100644 index 0000000..3c6bf11 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/test.html @@ -0,0 +1,38 @@ + + + + + A date range picker for Bootstrap + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/website.css b/pxy_dashboard/static/dashboard/vendor/daterangepicker/website.css new file mode 100644 index 0000000..aa5f30d --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/website.css @@ -0,0 +1,152 @@ +body { + font-size: 15px; + line-height: 1.6em; + position: relative; + margin: 0; +} + +.navbar .nav-item { + padding: 8px 0 8px 20px; +} + +.navbar .nav-link { + font-weight: bold; + font-size: 14px; + padding: 0; +} + +.navbar-expand-sm .navbar-nav .nav-link { + padding: 0; +} + +.well { + background: #f5f5f5; + border-radius: 4px; + padding: 20px; +} + +h1 { + font-size: 20px; + margin-bottom: 1em; + padding-bottom: 5px; + border-bottom: 1px dotted #08c; +} + +h1:before { + content: '#'; + color: #666; + position: relative; + padding-right: 5px; +} + +h2 { + padding: 0; + margin: 20px 0 0 0; + font-size: 18px; +} + +h2 a { + color: #444; + display: block; + background: #eee; + padding: 8px 12px; + margin-bottom: 0; + cursor: default; + text-decoration: none; +} + +input.form-control { + font-size: 14px; +} + +.collapsable { + border: 1px solid #eee; + padding: 12px; + display: block; +} + +label { + font-size: 13px; + font-weight: bold; +} + +.gist { + overflow: auto; +} + +.gist .blob-wrapper.data { + max-height: 350px; + overflow: auto; +} + +.list-group-item { + padding: 4px 0; + border: 0; + font-size: 16px; +} + +.leftcol { + position: absolute; + top: 180px; +} + +.rightcol { + max-width: 950px; +} + +.container { + max-width: 1300px; +} + +@media (min-width: 980px) { + .rightcol { + margin-left: 320px; + } +} + +p, pre { + margin-bottom: 2em; +} + +ul.nobullets { + margin: 0; + padding: 0; + list-style: none; +} +ul.nobullets li { + padding-bottom: 1em; + margin-bottom: 1em; + border-bottom: 1px dotted #ddd; +} + +input[type="text"] { + padding: 6px; + width: 100%; + border-radius: 4px; +} + +#footer { + background: #222; + margin-top: 80px; + padding: 10px; + color: #fff; + text-align: center; +} +#footer a:link, #footer a:visited { + color: #fff; + border-bottom: 1px dotted #fff; +} +#jumbo { + background: #c1deef; + color: #000; + padding: 20px 0; + margin-bottom: 20px; +} + +#jumbo h1 { + font-size: 28px; +} +#jumbo .btn { + border-radius: 0; + font-size: 16px; +} \ No newline at end of file diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/website.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/website.js new file mode 100644 index 0000000..cbbb874 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/website.js @@ -0,0 +1,179 @@ +$(document).ready(function() { + + $('#config-text').keyup(function() { + eval($(this).val()); + }); + + $('.configurator input, .configurator select').change(function() { + updateConfig(); + }); + + $('.demo i').click(function() { + $(this).parent().find('input').click(); + }); + + $('#startDate').daterangepicker({ + singleDatePicker: true, + startDate: moment().subtract(6, 'days') + }); + + $('#endDate').daterangepicker({ + singleDatePicker: true, + startDate: moment() + }); + + //updateConfig(); + + function updateConfig() { + var options = {}; + + if ($('#singleDatePicker').is(':checked')) + options.singleDatePicker = true; + + if ($('#showDropdowns').is(':checked')) + options.showDropdowns = true; + + if ($('#minYear').val().length && $('#minYear').val() != 1) + options.minYear = parseInt($('#minYear').val(), 10); + + if ($('#maxYear').val().length && $('#maxYear').val() != 1) + options.maxYear = parseInt($('#maxYear').val(), 10); + + if ($('#showWeekNumbers').is(':checked')) + options.showWeekNumbers = true; + + if ($('#showISOWeekNumbers').is(':checked')) + options.showISOWeekNumbers = true; + + if ($('#timePicker').is(':checked')) + options.timePicker = true; + + if ($('#timePicker24Hour').is(':checked')) + options.timePicker24Hour = true; + + if ($('#timePickerIncrement').val().length && $('#timePickerIncrement').val() != 1) + options.timePickerIncrement = parseInt($('#timePickerIncrement').val(), 10); + + if ($('#timePickerSeconds').is(':checked')) + options.timePickerSeconds = true; + + if ($('#autoApply').is(':checked')) + options.autoApply = true; + + if ($('#maxSpan').is(':checked')) + options.maxSpan = { days: 7 }; + + if ($('#ranges').is(':checked')) { + options.ranges = { + 'Today': [moment(), moment()], + 'Yesterday': [moment().subtract(1, 'days'), moment().subtract(1, 'days')], + 'Last 7 Days': [moment().subtract(6, 'days'), moment()], + 'Last 30 Days': [moment().subtract(29, 'days'), moment()], + 'This Month': [moment().startOf('month'), moment().endOf('month')], + 'Last Month': [moment().subtract(1, 'month').startOf('month'), moment().subtract(1, 'month').endOf('month')] + }; + } + + if ($('#locale').is(':checked')) { + options.locale = { + format: 'MM/DD/YYYY', + separator: ' - ', + applyLabel: 'Apply', + cancelLabel: 'Cancel', + fromLabel: 'From', + toLabel: 'To', + customRangeLabel: 'Custom', + weekLabel: 'W', + daysOfWeek: ['Su', 'Mo', 'Tu', 'We', 'Th', 'Fr','Sa'], + monthNames: ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'], + firstDay: 1 + }; + } + + if (!$('#linkedCalendars').is(':checked')) + options.linkedCalendars = false; + + if (!$('#autoUpdateInput').is(':checked')) + options.autoUpdateInput = false; + + if (!$('#showCustomRangeLabel').is(':checked')) + options.showCustomRangeLabel = false; + + if ($('#alwaysShowCalendars').is(':checked')) + options.alwaysShowCalendars = true; + + if ($('#parentEl').val().length) + options.parentEl = $('#parentEl').val(); + + if ($('#startDate').val().length) + options.startDate = $('#startDate').val(); + + if ($('#endDate').val().length) + options.endDate = $('#endDate').val(); + + if ($('#minDate').val().length) + options.minDate = $('#minDate').val(); + + if ($('#maxDate').val().length) + options.maxDate = $('#maxDate').val(); + + if ($('#opens').val().length && $('#opens').val() != 'right') + options.opens = $('#opens').val(); + + if ($('#drops').val().length && $('#drops').val() != 'down') + options.drops = $('#drops').val(); + + if ($('#buttonClasses').val().length && $('#buttonClasses').val() != 'btn btn-sm') + options.buttonClasses = $('#buttonClasses').val(); + + if ($('#applyButtonClasses').val().length && $('#applyButtonClasses').val() != 'btn-primary') + options.applyButtonClasses = $('#applyButtonClasses').val(); + + if ($('#cancelButtonClasses').val().length && $('#cancelButtonClasses').val() != 'btn-default') + options.cancelClass = $('#cancelButtonClasses').val(); + + $('#config-demo').daterangepicker(options, function(start, end, label) { console.log('New date range selected: ' + start.format('YYYY-MM-DD') + ' to ' + end.format('YYYY-MM-DD') + ' (predefined range: ' + label + ')'); }); + + if (typeof options.ranges !== 'undefined') { + options.ranges = {}; + } + + var option_text = JSON.stringify(options, null, ' '); + + var replacement = "ranges: {\n" + + " 'Today': [moment(), moment()],\n" + + " 'Yesterday': [moment().subtract(1, 'days'), moment().subtract(1, 'days')],\n" + + " 'Last 7 Days': [moment().subtract(6, 'days'), moment()],\n" + + " 'Last 30 Days': [moment().subtract(29, 'days'), moment()],\n" + + " 'This Month': [moment().startOf('month'), moment().endOf('month')],\n" + + " 'Last Month': [moment().subtract(1, 'month').startOf('month'), moment().subtract(1, 'month').endOf('month')]\n" + + " }"; + option_text = option_text.replace(new RegExp('"ranges"\: \{\}', 'g'), replacement); + + $('#config-text').val("$('#demo').daterangepicker(" + option_text + ", function(start, end, label) {\n console.log('New date range selected: ' + start.format('YYYY-MM-DD') + ' to ' + end.format('YYYY-MM-DD') + ' (predefined range: ' + label + ')');\n});"); + + } + + $(window).scroll(function (event) { + var scroll = $(window).scrollTop(); + if (scroll > 180) { + $('.leftcol').css('position', 'fixed'); + $('.leftcol').css('top', '10px'); + } else { + $('.leftcol').css('position', 'absolute'); + $('.leftcol').css('top', '180px'); + } + }); + + var bg = new Trianglify({ + x_colors: ["#e1f3fd", "#eeeeee", "#407dbf"], + y_colors: 'match_x', + width: document.body.clientWidth, + height: 150, + stroke_width: 0, + cell_size: 20 + }); + + $('#jumbo').css('background-image', 'url(' + bg.png() + ')'); + +}); diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/website/__init__.py b/pxy_dashboard/static/dashboard/vendor/daterangepicker/website/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/website/index.html b/pxy_dashboard/static/dashboard/vendor/daterangepicker/website/index.html new file mode 100644 index 0000000..0954e5f --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/website/index.html @@ -0,0 +1,745 @@ + + + + + + + + Date Range Picker — JavaScript Date & Time Picker Library + + + + + + + + + + + + + + + + + + + + + + + + +
    +
    +
    +
    + +

    Date Range Picker

    +

    + A JavaScript component for choosing date ranges, + dates and times. +

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

    Originally created for reports at Improvely, the Date Range Picker can be attached to any webpage element to pop up two calendars for selecting dates, times, or predefined ranges like "Last 30 Days".

    + + + +

    Getting Started

    + +

    + To get started, include jQuery, Moment.js and Date Range Picker's files in your webpage: +

    + + + +

    + Then attach a date range picker to whatever you want to trigger it: +

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

    + You can customize Date Range Picker with options, and get notified when the user chooses new dates by providing a callback function. +

    + +

    Examples

    + + +

    Simple Date Range Picker With a Callback

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

    Date Range Picker With Times

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

    Single Date Picker

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

    Predefined Date Ranges

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

    Input Initially Empty

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

    Options

    + +
      +
    • + startDate (Date or string) The beginning date of the initially selected date range. If you provide a string, it must match the date format string set in your locale setting. +
    • +
    • + endDate: (Date or string) The end date of the initially selected date range. +
    • +
    • + minDate: (Date or string) The earliest date a user may select. +
    • +
    • + maxDate: (Date or string) The latest date a user may select. +
    • +
    • + maxSpan: (object) The maximum span between the selected start and end dates. Check off maxSpan in the configuration generator for an example of how to use this. You can provide any object the moment library would let you add to a date. +
    • +
    • + showDropdowns: (true/false) Show year and month select boxes above calendars to jump to a specific month and year. +
    • +
    • + minYear: (number) The minimum year shown in the dropdowns when showDropdowns is set to true. +
    • +
    • + maxYear: (number) The maximum year shown in the dropdowns when showDropdowns is set to true. +
    • +
    • + showWeekNumbers: (true/false) Show localized week numbers at the start of each week on the calendars. +
    • +
    • + showISOWeekNumbers: (true/false) Show ISO week numbers at the start of each week on the calendars. +
    • +
    • + timePicker: (true/false) Adds select boxes to choose times in addition to dates. +
    • +
    • + timePickerIncrement: (number) Increment of the minutes selection list for times (i.e. 30 to allow only selection of times ending in 0 or 30). +
    • +
    • + timePicker24Hour: (true/false) Use 24-hour instead of 12-hour times, removing the AM/PM selection. +
    • +
    • + timePickerSeconds: (true/false) Show seconds in the timePicker. +
    • +
    • + ranges: (object) Set predefined date ranges the user can select from. Each key is the label for the range, and its value an array with two dates representing the bounds of the range. Click ranges in the configuration generator for examples. +
    • +
    • + showCustomRangeLabel: (true/false) Displays "Custom Range" at + the end of the list of predefined ranges, when the ranges option is used. + This option will be highlighted whenever the current date range selection does not match one of the predefined ranges. Clicking it will display the calendars to select a new range. +
    • +
    • + alwaysShowCalendars: (true/false) Normally, if you use the ranges option to specify pre-defined date ranges, calendars for choosing a custom date range are not shown until the user clicks "Custom Range". When this option is set to true, the calendars for choosing a custom date range are always shown instead. +
    • +
    • + opens: ('left'/'right'/'center') Whether the picker appears aligned to the left, to the right, or centered under the HTML element it's attached to. +
    • +
    • + drops: ('down'/'up'/'auto') Whether the picker appears below (default) or above the HTML element it's attached to. +
    • +
    • + buttonClasses: (string) CSS class names that will be added to both the apply and cancel buttons. +
    • +
    • + applyButtonClasses: (string) CSS class names that will be added only to the apply button. +
    • +
    • + cancelButtonClasses: (string) CSS class names that will be added only to the cancel button. +
    • +
    • + locale: (object) Allows you to provide localized strings for buttons and labels, customize the date format, and change the first day of week for the calendars. + Check off locale in the configuration generator to see how + to customize these options. +
    • +
    • + singleDatePicker: (true/false) Show only a single calendar to choose one date, instead of a range picker with two calendars. The start and end dates provided to your callback will be the same single date chosen. +
    • +
    • + autoApply: (true/false) Hide the apply and cancel buttons, and automatically apply a new date range as soon as two dates are clicked. +
    • +
    • + linkedCalendars: (true/false) When enabled, the two calendars displayed will always be for two sequential months (i.e. January and February), and both will be advanced when clicking the left or right arrows above the calendars. When disabled, the two calendars can be individually advanced and display any month/year. +
    • +
    • + isInvalidDate: (function) A function that is passed each date in the two + calendars before they are displayed, and may return true or false to indicate whether + that date should be available for selection or not. +
    • +
    • + isCustomDate: (function) A function that is passed each date in the two + calendars before they are displayed, and may return a string or array of CSS class names + to apply to that date's calendar cell. +
    • +
    • + autoUpdateInput: (true/false) Indicates whether the date range picker should + automatically update the value of the <input> element it's attached to at initialization and when the selected dates change. +
    • +
    • + parentEl: (string) jQuery selector of the parent element that the date range picker will be added to, if not provided this will be 'body' +
    • +
    + +

    Methods

    + +

    + You can programmatically update the startDate and endDate + in the picker using the setStartDate and setEndDate methods. + You can access the Date Range Picker object and its functions and properties through + data properties of the element you attached it to. +

    + + + +
    + +
      +
    • + setStartDate(Date or string): Sets the date range picker's currently selected start date to the provided date +
    • +
    • + setEndDate(Date or string): Sets the date range picker's currently selected end date to the provided date +
    • +
    + +

    Example usage:

    + + + +

    Events

    + +

    + Several events are triggered on the element you attach the picker to, which you can listen for. +

    + +
      +
    • + show.daterangepicker: Triggered when the picker is shown +
    • +
    • + hide.daterangepicker: Triggered when the picker is hidden +
    • +
    • + showCalendar.daterangepicker: Triggered when the calendar(s) are shown +
    • +
    • + hideCalendar.daterangepicker: Triggered when the calendar(s) are hidden +
    • +
    • + apply.daterangepicker: Triggered when the apply button is clicked, + or when a predefined range is clicked +
    • +
    • + cancel.daterangepicker: Triggered when the cancel button is clicked +
    • +
    + +

    + Some applications need a "clear" instead of a "cancel" functionality, which can be achieved by changing the button label and watching for the cancel event: +

    + + + +
    + +

    + While passing in a callback to the constructor is the easiest way to listen for changes in the selected date range, you can also do something every time the apply button is clicked even if the selection hasn't changed: +

    + + + +

    Configuration Generator

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

    Your Date Range Picker

    + +
    +
    + +
    +

    Your Configuration to Copy

    + +
    + +
    +
    + +
    + + + +

    License

    + +

    The MIT License (MIT)

    + +

    Copyright (c) 2012-2019 Dan Grossman

    + +

    + Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: +

    + +

    + The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. +

    + +

    + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +

    + +

    Comments

    + +
    + + + +
    +
    +
    + + + + + + + + + + + diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/website/website.css b/pxy_dashboard/static/dashboard/vendor/daterangepicker/website/website.css new file mode 100644 index 0000000..aa5f30d --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/website/website.css @@ -0,0 +1,152 @@ +body { + font-size: 15px; + line-height: 1.6em; + position: relative; + margin: 0; +} + +.navbar .nav-item { + padding: 8px 0 8px 20px; +} + +.navbar .nav-link { + font-weight: bold; + font-size: 14px; + padding: 0; +} + +.navbar-expand-sm .navbar-nav .nav-link { + padding: 0; +} + +.well { + background: #f5f5f5; + border-radius: 4px; + padding: 20px; +} + +h1 { + font-size: 20px; + margin-bottom: 1em; + padding-bottom: 5px; + border-bottom: 1px dotted #08c; +} + +h1:before { + content: '#'; + color: #666; + position: relative; + padding-right: 5px; +} + +h2 { + padding: 0; + margin: 20px 0 0 0; + font-size: 18px; +} + +h2 a { + color: #444; + display: block; + background: #eee; + padding: 8px 12px; + margin-bottom: 0; + cursor: default; + text-decoration: none; +} + +input.form-control { + font-size: 14px; +} + +.collapsable { + border: 1px solid #eee; + padding: 12px; + display: block; +} + +label { + font-size: 13px; + font-weight: bold; +} + +.gist { + overflow: auto; +} + +.gist .blob-wrapper.data { + max-height: 350px; + overflow: auto; +} + +.list-group-item { + padding: 4px 0; + border: 0; + font-size: 16px; +} + +.leftcol { + position: absolute; + top: 180px; +} + +.rightcol { + max-width: 950px; +} + +.container { + max-width: 1300px; +} + +@media (min-width: 980px) { + .rightcol { + margin-left: 320px; + } +} + +p, pre { + margin-bottom: 2em; +} + +ul.nobullets { + margin: 0; + padding: 0; + list-style: none; +} +ul.nobullets li { + padding-bottom: 1em; + margin-bottom: 1em; + border-bottom: 1px dotted #ddd; +} + +input[type="text"] { + padding: 6px; + width: 100%; + border-radius: 4px; +} + +#footer { + background: #222; + margin-top: 80px; + padding: 10px; + color: #fff; + text-align: center; +} +#footer a:link, #footer a:visited { + color: #fff; + border-bottom: 1px dotted #fff; +} +#jumbo { + background: #c1deef; + color: #000; + padding: 20px 0; + margin-bottom: 20px; +} + +#jumbo h1 { + font-size: 28px; +} +#jumbo .btn { + border-radius: 0; + font-size: 16px; +} \ No newline at end of file diff --git a/pxy_dashboard/static/dashboard/vendor/daterangepicker/website/website.js b/pxy_dashboard/static/dashboard/vendor/daterangepicker/website/website.js new file mode 100644 index 0000000..cbbb874 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/daterangepicker/website/website.js @@ -0,0 +1,179 @@ +$(document).ready(function() { + + $('#config-text').keyup(function() { + eval($(this).val()); + }); + + $('.configurator input, .configurator select').change(function() { + updateConfig(); + }); + + $('.demo i').click(function() { + $(this).parent().find('input').click(); + }); + + $('#startDate').daterangepicker({ + singleDatePicker: true, + startDate: moment().subtract(6, 'days') + }); + + $('#endDate').daterangepicker({ + singleDatePicker: true, + startDate: moment() + }); + + //updateConfig(); + + function updateConfig() { + var options = {}; + + if ($('#singleDatePicker').is(':checked')) + options.singleDatePicker = true; + + if ($('#showDropdowns').is(':checked')) + options.showDropdowns = true; + + if ($('#minYear').val().length && $('#minYear').val() != 1) + options.minYear = parseInt($('#minYear').val(), 10); + + if ($('#maxYear').val().length && $('#maxYear').val() != 1) + options.maxYear = parseInt($('#maxYear').val(), 10); + + if ($('#showWeekNumbers').is(':checked')) + options.showWeekNumbers = true; + + if ($('#showISOWeekNumbers').is(':checked')) + options.showISOWeekNumbers = true; + + if ($('#timePicker').is(':checked')) + options.timePicker = true; + + if ($('#timePicker24Hour').is(':checked')) + options.timePicker24Hour = true; + + if ($('#timePickerIncrement').val().length && $('#timePickerIncrement').val() != 1) + options.timePickerIncrement = parseInt($('#timePickerIncrement').val(), 10); + + if ($('#timePickerSeconds').is(':checked')) + options.timePickerSeconds = true; + + if ($('#autoApply').is(':checked')) + options.autoApply = true; + + if ($('#maxSpan').is(':checked')) + options.maxSpan = { days: 7 }; + + if ($('#ranges').is(':checked')) { + options.ranges = { + 'Today': [moment(), moment()], + 'Yesterday': [moment().subtract(1, 'days'), moment().subtract(1, 'days')], + 'Last 7 Days': [moment().subtract(6, 'days'), moment()], + 'Last 30 Days': [moment().subtract(29, 'days'), moment()], + 'This Month': [moment().startOf('month'), moment().endOf('month')], + 'Last Month': [moment().subtract(1, 'month').startOf('month'), moment().subtract(1, 'month').endOf('month')] + }; + } + + if ($('#locale').is(':checked')) { + options.locale = { + format: 'MM/DD/YYYY', + separator: ' - ', + applyLabel: 'Apply', + cancelLabel: 'Cancel', + fromLabel: 'From', + toLabel: 'To', + customRangeLabel: 'Custom', + weekLabel: 'W', + daysOfWeek: ['Su', 'Mo', 'Tu', 'We', 'Th', 'Fr','Sa'], + monthNames: ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'], + firstDay: 1 + }; + } + + if (!$('#linkedCalendars').is(':checked')) + options.linkedCalendars = false; + + if (!$('#autoUpdateInput').is(':checked')) + options.autoUpdateInput = false; + + if (!$('#showCustomRangeLabel').is(':checked')) + options.showCustomRangeLabel = false; + + if ($('#alwaysShowCalendars').is(':checked')) + options.alwaysShowCalendars = true; + + if ($('#parentEl').val().length) + options.parentEl = $('#parentEl').val(); + + if ($('#startDate').val().length) + options.startDate = $('#startDate').val(); + + if ($('#endDate').val().length) + options.endDate = $('#endDate').val(); + + if ($('#minDate').val().length) + options.minDate = $('#minDate').val(); + + if ($('#maxDate').val().length) + options.maxDate = $('#maxDate').val(); + + if ($('#opens').val().length && $('#opens').val() != 'right') + options.opens = $('#opens').val(); + + if ($('#drops').val().length && $('#drops').val() != 'down') + options.drops = $('#drops').val(); + + if ($('#buttonClasses').val().length && $('#buttonClasses').val() != 'btn btn-sm') + options.buttonClasses = $('#buttonClasses').val(); + + if ($('#applyButtonClasses').val().length && $('#applyButtonClasses').val() != 'btn-primary') + options.applyButtonClasses = $('#applyButtonClasses').val(); + + if ($('#cancelButtonClasses').val().length && $('#cancelButtonClasses').val() != 'btn-default') + options.cancelClass = $('#cancelButtonClasses').val(); + + $('#config-demo').daterangepicker(options, function(start, end, label) { console.log('New date range selected: ' + start.format('YYYY-MM-DD') + ' to ' + end.format('YYYY-MM-DD') + ' (predefined range: ' + label + ')'); }); + + if (typeof options.ranges !== 'undefined') { + options.ranges = {}; + } + + var option_text = JSON.stringify(options, null, ' '); + + var replacement = "ranges: {\n" + + " 'Today': [moment(), moment()],\n" + + " 'Yesterday': [moment().subtract(1, 'days'), moment().subtract(1, 'days')],\n" + + " 'Last 7 Days': [moment().subtract(6, 'days'), moment()],\n" + + " 'Last 30 Days': [moment().subtract(29, 'days'), moment()],\n" + + " 'This Month': [moment().startOf('month'), moment().endOf('month')],\n" + + " 'Last Month': [moment().subtract(1, 'month').startOf('month'), moment().subtract(1, 'month').endOf('month')]\n" + + " }"; + option_text = option_text.replace(new RegExp('"ranges"\: \{\}', 'g'), replacement); + + $('#config-text').val("$('#demo').daterangepicker(" + option_text + ", function(start, end, label) {\n console.log('New date range selected: ' + start.format('YYYY-MM-DD') + ' to ' + end.format('YYYY-MM-DD') + ' (predefined range: ' + label + ')');\n});"); + + } + + $(window).scroll(function (event) { + var scroll = $(window).scrollTop(); + if (scroll > 180) { + $('.leftcol').css('position', 'fixed'); + $('.leftcol').css('top', '10px'); + } else { + $('.leftcol').css('position', 'absolute'); + $('.leftcol').css('top', '180px'); + } + }); + + var bg = new Trianglify({ + x_colors: ["#e1f3fd", "#eeeeee", "#407dbf"], + y_colors: 'match_x', + width: document.body.clientWidth, + height: 150, + stroke_width: 0, + cell_size: 20 + }); + + $('#jumbo').css('background-image', 'url(' + bg.png() + ')'); + +}); diff --git a/pxy_dashboard/static/dashboard/vendor/dragula/__init__.py b/pxy_dashboard/static/dashboard/vendor/dragula/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/pxy_dashboard/static/dashboard/vendor/dragula/dragula.min.css b/pxy_dashboard/static/dashboard/vendor/dragula/dragula.min.css new file mode 100644 index 0000000..a080100 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/dragula/dragula.min.css @@ -0,0 +1 @@ +.gu-mirror{position:fixed!important;margin:0!important;z-index:9999!important;opacity:.8}.gu-hide{display:none!important}.gu-unselectable{-webkit-user-select:none!important;-moz-user-select:none!important;-ms-user-select:none!important;user-select:none!important}.gu-transit{opacity:.2} \ No newline at end of file diff --git a/pxy_dashboard/static/dashboard/vendor/dragula/dragula.min.js b/pxy_dashboard/static/dashboard/vendor/dragula/dragula.min.js new file mode 100644 index 0000000..dd61cd8 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/dragula/dragula.min.js @@ -0,0 +1 @@ +!function(e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define([],e):("undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:this).dragula=e()}(function(){return function o(r,i,u){function c(t,e){if(!i[t]){if(!r[t]){var n="function"==typeof require&&require;if(!e&&n)return n(t,!0);if(a)return a(t,!0);throw(n=new Error("Cannot find module '"+t+"'")).code="MODULE_NOT_FOUND",n}n=i[t]={exports:{}},r[t][0].call(n.exports,function(e){return c(r[t][1][e]||e)},n,n.exports,o,r,i,u)}return i[t].exports}for(var a="function"==typeof require&&require,e=0;ee.left+G(e)/2);return n(u>e.top+J(e)/2)}:function(){var e,t,n,o=r.children.length;for(e=0;ei)return t;if(!c&&n.top+n.height/2>u)return t}return null})();function n(e){return e?Z(t):t}}}}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"./classes":1,"contra/emitter":5,crossvent:6}],3:[function(e,t,n){t.exports=function(e,t){return Array.prototype.slice.call(e,t)}},{}],4:[function(e,t,n){"use strict";var o=e("ticky");t.exports=function(e,t,n){e&&o(function(){e.apply(n||null,t||[])})}},{ticky:10}],5:[function(e,t,n){"use strict";var c=e("atoa"),a=e("./debounce");t.exports=function(r,e){var i=e||{},u={};return void 0===r&&(r={}),r.on=function(e,t){return u[e]?u[e].push(t):u[e]=[t],r},r.once=function(e,t){return t._once=!0,r.on(e,t),r},r.off=function(e,t){var n=arguments.length;if(1===n)delete u[e];else if(0===n)u={};else{e=u[e];if(!e)return r;e.splice(e.indexOf(t),1)}return r},r.emit=function(){var e=c(arguments);return r.emitterSnapshot(e.shift()).apply(this,e)},r.emitterSnapshot=function(o){var e=(u[o]||[]).slice(0);return function(){var t=c(arguments),n=this||r;if("error"===o&&!1!==i.throws&&!e.length)throw 1===t.length?t[0]:t;return e.forEach(function(e){i.async?a(e,t,n):e.apply(n,t),e._once&&r.off(o,e)}),r}},r}},{"./debounce":4,atoa:3}],6:[function(n,o,e){(function(r){"use strict";var i=n("custom-event"),u=n("./eventmap"),c=r.document,e=function(e,t,n,o){return e.addEventListener(t,n,o)},t=function(e,t,n,o){return e.removeEventListener(t,n,o)},a=[];function l(e,t,n){t=function(e,t,n){var o,r;for(o=0;o> 8 & 0xFF]; +}; + +var packInt32 = function (number) { + return [number & 0xFF, number >> 8 & 0xFF, number >> 16 & 0xFF, number >> 24 & 0xFF]; +}; + +var unpackInt32 = function (buffer) { + return buffer[3] << 24 | buffer[2] << 16 | buffer[1] << 8 | buffer[0]; +}; + +var packFloat32 = function (number) { + return packIEEE754(number, 23, 4); +}; + +var packFloat64 = function (number) { + return packIEEE754(number, 52, 8); +}; + +var addGetter = function (Constructor, key) { + defineProperty(Constructor[PROTOTYPE], key, { get: function () { return getInternalState(this)[key]; } }); +}; + +var get = function (view, count, index, isLittleEndian) { + var intIndex = toIndex(index); + var store = getInternalState(view); + if (intIndex + count > store.byteLength) throw RangeError(WRONG_INDEX); + var bytes = getInternalState(store.buffer).bytes; + var start = intIndex + store.byteOffset; + var pack = bytes.slice(start, start + count); + return isLittleEndian ? pack : pack.reverse(); +}; + +var set = function (view, count, index, conversion, value, isLittleEndian) { + var intIndex = toIndex(index); + var store = getInternalState(view); + if (intIndex + count > store.byteLength) throw RangeError(WRONG_INDEX); + var bytes = getInternalState(store.buffer).bytes; + var start = intIndex + store.byteOffset; + var pack = conversion(+value); + for (var i = 0; i < count; i++) bytes[start + i] = pack[isLittleEndian ? i : count - i - 1]; +}; + +if (!NATIVE_ARRAY_BUFFER) { + $ArrayBuffer = function ArrayBuffer(length) { + anInstance(this, $ArrayBuffer, ARRAY_BUFFER); + var byteLength = toIndex(length); + setInternalState(this, { + bytes: arrayFill.call(new Array(byteLength), 0), + byteLength: byteLength + }); + if (!DESCRIPTORS) this.byteLength = byteLength; + }; + + $DataView = function DataView(buffer, byteOffset, byteLength) { + anInstance(this, $DataView, DATA_VIEW); + anInstance(buffer, $ArrayBuffer, DATA_VIEW); + var bufferLength = getInternalState(buffer).byteLength; + var offset = toInteger(byteOffset); + if (offset < 0 || offset > bufferLength) throw RangeError('Wrong offset'); + byteLength = byteLength === undefined ? bufferLength - offset : toLength(byteLength); + if (offset + byteLength > bufferLength) throw RangeError(WRONG_LENGTH); + setInternalState(this, { + buffer: buffer, + byteLength: byteLength, + byteOffset: offset + }); + if (!DESCRIPTORS) { + this.buffer = buffer; + this.byteLength = byteLength; + this.byteOffset = offset; + } + }; + + if (DESCRIPTORS) { + addGetter($ArrayBuffer, 'byteLength'); + addGetter($DataView, 'buffer'); + addGetter($DataView, 'byteLength'); + addGetter($DataView, 'byteOffset'); + } + + redefineAll($DataView[PROTOTYPE], { + getInt8: function getInt8(byteOffset) { + return get(this, 1, byteOffset)[0] << 24 >> 24; + }, + getUint8: function getUint8(byteOffset) { + return get(this, 1, byteOffset)[0]; + }, + getInt16: function getInt16(byteOffset /* , littleEndian */) { + var bytes = get(this, 2, byteOffset, arguments.length > 1 ? arguments[1] : undefined); + return (bytes[1] << 8 | bytes[0]) << 16 >> 16; + }, + getUint16: function getUint16(byteOffset /* , littleEndian */) { + var bytes = get(this, 2, byteOffset, arguments.length > 1 ? arguments[1] : undefined); + return bytes[1] << 8 | bytes[0]; + }, + getInt32: function getInt32(byteOffset /* , littleEndian */) { + return unpackInt32(get(this, 4, byteOffset, arguments.length > 1 ? arguments[1] : undefined)); + }, + getUint32: function getUint32(byteOffset /* , littleEndian */) { + return unpackInt32(get(this, 4, byteOffset, arguments.length > 1 ? arguments[1] : undefined)) >>> 0; + }, + getFloat32: function getFloat32(byteOffset /* , littleEndian */) { + return unpackIEEE754(get(this, 4, byteOffset, arguments.length > 1 ? arguments[1] : undefined), 23); + }, + getFloat64: function getFloat64(byteOffset /* , littleEndian */) { + return unpackIEEE754(get(this, 8, byteOffset, arguments.length > 1 ? arguments[1] : undefined), 52); + }, + setInt8: function setInt8(byteOffset, value) { + set(this, 1, byteOffset, packInt8, value); + }, + setUint8: function setUint8(byteOffset, value) { + set(this, 1, byteOffset, packInt8, value); + }, + setInt16: function setInt16(byteOffset, value /* , littleEndian */) { + set(this, 2, byteOffset, packInt16, value, arguments.length > 2 ? arguments[2] : undefined); + }, + setUint16: function setUint16(byteOffset, value /* , littleEndian */) { + set(this, 2, byteOffset, packInt16, value, arguments.length > 2 ? arguments[2] : undefined); + }, + setInt32: function setInt32(byteOffset, value /* , littleEndian */) { + set(this, 4, byteOffset, packInt32, value, arguments.length > 2 ? arguments[2] : undefined); + }, + setUint32: function setUint32(byteOffset, value /* , littleEndian */) { + set(this, 4, byteOffset, packInt32, value, arguments.length > 2 ? arguments[2] : undefined); + }, + setFloat32: function setFloat32(byteOffset, value /* , littleEndian */) { + set(this, 4, byteOffset, packFloat32, value, arguments.length > 2 ? arguments[2] : undefined); + }, + setFloat64: function setFloat64(byteOffset, value /* , littleEndian */) { + set(this, 8, byteOffset, packFloat64, value, arguments.length > 2 ? arguments[2] : undefined); + } + }); +} else { + /* eslint-disable no-new -- required for testing */ + if (!fails(function () { + NativeArrayBuffer(1); + }) || !fails(function () { + new NativeArrayBuffer(-1); + }) || fails(function () { + new NativeArrayBuffer(); + new NativeArrayBuffer(1.5); + new NativeArrayBuffer(NaN); + return NativeArrayBuffer.name != ARRAY_BUFFER; + })) { + /* eslint-enable no-new -- required for testing */ + $ArrayBuffer = function ArrayBuffer(length) { + anInstance(this, $ArrayBuffer); + return new NativeArrayBuffer(toIndex(length)); + }; + var ArrayBufferPrototype = $ArrayBuffer[PROTOTYPE] = NativeArrayBuffer[PROTOTYPE]; + for (var keys = getOwnPropertyNames(NativeArrayBuffer), j = 0, key; keys.length > j;) { + if (!((key = keys[j++]) in $ArrayBuffer)) { + createNonEnumerableProperty($ArrayBuffer, key, NativeArrayBuffer[key]); + } + } + ArrayBufferPrototype.constructor = $ArrayBuffer; + } + + // WebKit bug - the same parent prototype for typed arrays and data view + if (setPrototypeOf && getPrototypeOf($DataViewPrototype) !== ObjectPrototype) { + setPrototypeOf($DataViewPrototype, ObjectPrototype); + } + + // iOS Safari 7.x bug + var testView = new $DataView(new $ArrayBuffer(2)); + var nativeSetInt8 = $DataViewPrototype.setInt8; + testView.setInt8(0, 2147483648); + testView.setInt8(1, 2147483649); + if (testView.getInt8(0) || !testView.getInt8(1)) redefineAll($DataViewPrototype, { + setInt8: function setInt8(byteOffset, value) { + nativeSetInt8.call(this, byteOffset, value << 24 >> 24); + }, + setUint8: function setUint8(byteOffset, value) { + nativeSetInt8.call(this, byteOffset, value << 24 >> 24); + } + }, { unsafe: true }); +} + +setToStringTag($ArrayBuffer, ARRAY_BUFFER); +setToStringTag($DataView, DATA_VIEW); + +module.exports = { + ArrayBuffer: $ArrayBuffer, + DataView: $DataView +}; + + +/***/ }), + +/***/ 1048: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var toObject = __webpack_require__(7908); +var toAbsoluteIndex = __webpack_require__(1400); +var toLength = __webpack_require__(7466); + +var min = Math.min; + +// `Array.prototype.copyWithin` method implementation +// https://tc39.es/ecma262/#sec-array.prototype.copywithin +module.exports = [].copyWithin || function copyWithin(target /* = 0 */, start /* = 0, end = @length */) { + var O = toObject(this); + var len = toLength(O.length); + var to = toAbsoluteIndex(target, len); + var from = toAbsoluteIndex(start, len); + var end = arguments.length > 2 ? arguments[2] : undefined; + var count = min((end === undefined ? len : toAbsoluteIndex(end, len)) - from, len - to); + var inc = 1; + if (from < to && to < from + count) { + inc = -1; + from += count - 1; + to += count - 1; + } + while (count-- > 0) { + if (from in O) O[to] = O[from]; + else delete O[to]; + to += inc; + from += inc; + } return O; +}; + + +/***/ }), + +/***/ 1285: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var toObject = __webpack_require__(7908); +var toAbsoluteIndex = __webpack_require__(1400); +var toLength = __webpack_require__(7466); + +// `Array.prototype.fill` method implementation +// https://tc39.es/ecma262/#sec-array.prototype.fill +module.exports = function fill(value /* , start = 0, end = @length */) { + var O = toObject(this); + var length = toLength(O.length); + var argumentsLength = arguments.length; + var index = toAbsoluteIndex(argumentsLength > 1 ? arguments[1] : undefined, length); + var end = argumentsLength > 2 ? arguments[2] : undefined; + var endPos = end === undefined ? length : toAbsoluteIndex(end, length); + while (endPos > index) O[index++] = value; + return O; +}; + + +/***/ }), + +/***/ 8533: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var $forEach = __webpack_require__(2092).forEach; +var arrayMethodIsStrict = __webpack_require__(9341); + +var STRICT_METHOD = arrayMethodIsStrict('forEach'); + +// `Array.prototype.forEach` method implementation +// https://tc39.es/ecma262/#sec-array.prototype.foreach +module.exports = !STRICT_METHOD ? function forEach(callbackfn /* , thisArg */) { + return $forEach(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined); +} : [].forEach; + + +/***/ }), + +/***/ 8457: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var bind = __webpack_require__(9974); +var toObject = __webpack_require__(7908); +var callWithSafeIterationClosing = __webpack_require__(3411); +var isArrayIteratorMethod = __webpack_require__(7659); +var toLength = __webpack_require__(7466); +var createProperty = __webpack_require__(6135); +var getIteratorMethod = __webpack_require__(1246); + +// `Array.from` method implementation +// https://tc39.es/ecma262/#sec-array.from +module.exports = function from(arrayLike /* , mapfn = undefined, thisArg = undefined */) { + var O = toObject(arrayLike); + var C = typeof this == 'function' ? this : Array; + var argumentsLength = arguments.length; + var mapfn = argumentsLength > 1 ? arguments[1] : undefined; + var mapping = mapfn !== undefined; + var iteratorMethod = getIteratorMethod(O); + var index = 0; + var length, result, step, iterator, next, value; + if (mapping) mapfn = bind(mapfn, argumentsLength > 2 ? arguments[2] : undefined, 2); + // if the target is not iterable or it's an array with the default iterator - use a simple case + if (iteratorMethod != undefined && !(C == Array && isArrayIteratorMethod(iteratorMethod))) { + iterator = iteratorMethod.call(O); + next = iterator.next; + result = new C(); + for (;!(step = next.call(iterator)).done; index++) { + value = mapping ? callWithSafeIterationClosing(iterator, mapfn, [step.value, index], true) : step.value; + createProperty(result, index, value); + } + } else { + length = toLength(O.length); + result = new C(length); + for (;length > index; index++) { + value = mapping ? mapfn(O[index], index) : O[index]; + createProperty(result, index, value); + } + } + result.length = index; + return result; +}; + + +/***/ }), + +/***/ 1318: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var toIndexedObject = __webpack_require__(5656); +var toLength = __webpack_require__(7466); +var toAbsoluteIndex = __webpack_require__(1400); + +// `Array.prototype.{ indexOf, includes }` methods implementation +var createMethod = function (IS_INCLUDES) { + return function ($this, el, fromIndex) { + var O = toIndexedObject($this); + var length = toLength(O.length); + var index = toAbsoluteIndex(fromIndex, length); + var value; + // Array#includes uses SameValueZero equality algorithm + // eslint-disable-next-line no-self-compare -- NaN check + if (IS_INCLUDES && el != el) while (length > index) { + value = O[index++]; + // eslint-disable-next-line no-self-compare -- NaN check + if (value != value) return true; + // Array#indexOf ignores holes, Array#includes - not + } else for (;length > index; index++) { + if ((IS_INCLUDES || index in O) && O[index] === el) return IS_INCLUDES || index || 0; + } return !IS_INCLUDES && -1; + }; +}; + +module.exports = { + // `Array.prototype.includes` method + // https://tc39.es/ecma262/#sec-array.prototype.includes + includes: createMethod(true), + // `Array.prototype.indexOf` method + // https://tc39.es/ecma262/#sec-array.prototype.indexof + indexOf: createMethod(false) +}; + + +/***/ }), + +/***/ 2092: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var bind = __webpack_require__(9974); +var IndexedObject = __webpack_require__(8361); +var toObject = __webpack_require__(7908); +var toLength = __webpack_require__(7466); +var arraySpeciesCreate = __webpack_require__(5417); + +var push = [].push; + +// `Array.prototype.{ forEach, map, filter, some, every, find, findIndex, filterOut }` methods implementation +var createMethod = function (TYPE) { + var IS_MAP = TYPE == 1; + var IS_FILTER = TYPE == 2; + var IS_SOME = TYPE == 3; + var IS_EVERY = TYPE == 4; + var IS_FIND_INDEX = TYPE == 6; + var IS_FILTER_OUT = TYPE == 7; + var NO_HOLES = TYPE == 5 || IS_FIND_INDEX; + return function ($this, callbackfn, that, specificCreate) { + var O = toObject($this); + var self = IndexedObject(O); + var boundFunction = bind(callbackfn, that, 3); + var length = toLength(self.length); + var index = 0; + var create = specificCreate || arraySpeciesCreate; + var target = IS_MAP ? create($this, length) : IS_FILTER || IS_FILTER_OUT ? create($this, 0) : undefined; + var value, result; + for (;length > index; index++) if (NO_HOLES || index in self) { + value = self[index]; + result = boundFunction(value, index, O); + if (TYPE) { + if (IS_MAP) target[index] = result; // map + else if (result) switch (TYPE) { + case 3: return true; // some + case 5: return value; // find + case 6: return index; // findIndex + case 2: push.call(target, value); // filter + } else switch (TYPE) { + case 4: return false; // every + case 7: push.call(target, value); // filterOut + } + } + } + return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : target; + }; +}; + +module.exports = { + // `Array.prototype.forEach` method + // https://tc39.es/ecma262/#sec-array.prototype.foreach + forEach: createMethod(0), + // `Array.prototype.map` method + // https://tc39.es/ecma262/#sec-array.prototype.map + map: createMethod(1), + // `Array.prototype.filter` method + // https://tc39.es/ecma262/#sec-array.prototype.filter + filter: createMethod(2), + // `Array.prototype.some` method + // https://tc39.es/ecma262/#sec-array.prototype.some + some: createMethod(3), + // `Array.prototype.every` method + // https://tc39.es/ecma262/#sec-array.prototype.every + every: createMethod(4), + // `Array.prototype.find` method + // https://tc39.es/ecma262/#sec-array.prototype.find + find: createMethod(5), + // `Array.prototype.findIndex` method + // https://tc39.es/ecma262/#sec-array.prototype.findIndex + findIndex: createMethod(6), + // `Array.prototype.filterOut` method + // https://github.com/tc39/proposal-array-filtering + filterOut: createMethod(7) +}; + + +/***/ }), + +/***/ 6583: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var toIndexedObject = __webpack_require__(5656); +var toInteger = __webpack_require__(9958); +var toLength = __webpack_require__(7466); +var arrayMethodIsStrict = __webpack_require__(9341); + +var min = Math.min; +var nativeLastIndexOf = [].lastIndexOf; +var NEGATIVE_ZERO = !!nativeLastIndexOf && 1 / [1].lastIndexOf(1, -0) < 0; +var STRICT_METHOD = arrayMethodIsStrict('lastIndexOf'); +var FORCED = NEGATIVE_ZERO || !STRICT_METHOD; + +// `Array.prototype.lastIndexOf` method implementation +// https://tc39.es/ecma262/#sec-array.prototype.lastindexof +module.exports = FORCED ? function lastIndexOf(searchElement /* , fromIndex = @[*-1] */) { + // convert -0 to +0 + if (NEGATIVE_ZERO) return nativeLastIndexOf.apply(this, arguments) || 0; + var O = toIndexedObject(this); + var length = toLength(O.length); + var index = length - 1; + if (arguments.length > 1) index = min(index, toInteger(arguments[1])); + if (index < 0) index = length + index; + for (;index >= 0; index--) if (index in O && O[index] === searchElement) return index || 0; + return -1; +} : nativeLastIndexOf; + + +/***/ }), + +/***/ 1194: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var fails = __webpack_require__(7293); +var wellKnownSymbol = __webpack_require__(5112); +var V8_VERSION = __webpack_require__(7392); + +var SPECIES = wellKnownSymbol('species'); + +module.exports = function (METHOD_NAME) { + // We can't use this feature detection in V8 since it causes + // deoptimization and serious performance degradation + // https://github.com/zloirock/core-js/issues/677 + return V8_VERSION >= 51 || !fails(function () { + var array = []; + var constructor = array.constructor = {}; + constructor[SPECIES] = function () { + return { foo: 1 }; + }; + return array[METHOD_NAME](Boolean).foo !== 1; + }); +}; + + +/***/ }), + +/***/ 9341: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var fails = __webpack_require__(7293); + +module.exports = function (METHOD_NAME, argument) { + var method = [][METHOD_NAME]; + return !!method && fails(function () { + // eslint-disable-next-line no-useless-call,no-throw-literal -- required for testing + method.call(null, argument || function () { throw 1; }, 1); + }); +}; + + +/***/ }), + +/***/ 3671: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var aFunction = __webpack_require__(3099); +var toObject = __webpack_require__(7908); +var IndexedObject = __webpack_require__(8361); +var toLength = __webpack_require__(7466); + +// `Array.prototype.{ reduce, reduceRight }` methods implementation +var createMethod = function (IS_RIGHT) { + return function (that, callbackfn, argumentsLength, memo) { + aFunction(callbackfn); + var O = toObject(that); + var self = IndexedObject(O); + var length = toLength(O.length); + var index = IS_RIGHT ? length - 1 : 0; + var i = IS_RIGHT ? -1 : 1; + if (argumentsLength < 2) while (true) { + if (index in self) { + memo = self[index]; + index += i; + break; + } + index += i; + if (IS_RIGHT ? index < 0 : length <= index) { + throw TypeError('Reduce of empty array with no initial value'); + } + } + for (;IS_RIGHT ? index >= 0 : length > index; index += i) if (index in self) { + memo = callbackfn(memo, self[index], index, O); + } + return memo; + }; +}; + +module.exports = { + // `Array.prototype.reduce` method + // https://tc39.es/ecma262/#sec-array.prototype.reduce + left: createMethod(false), + // `Array.prototype.reduceRight` method + // https://tc39.es/ecma262/#sec-array.prototype.reduceright + right: createMethod(true) +}; + + +/***/ }), + +/***/ 5417: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var isObject = __webpack_require__(111); +var isArray = __webpack_require__(3157); +var wellKnownSymbol = __webpack_require__(5112); + +var SPECIES = wellKnownSymbol('species'); + +// `ArraySpeciesCreate` abstract operation +// https://tc39.es/ecma262/#sec-arrayspeciescreate +module.exports = function (originalArray, length) { + var C; + if (isArray(originalArray)) { + C = originalArray.constructor; + // cross-realm fallback + if (typeof C == 'function' && (C === Array || isArray(C.prototype))) C = undefined; + else if (isObject(C)) { + C = C[SPECIES]; + if (C === null) C = undefined; + } + } return new (C === undefined ? Array : C)(length === 0 ? 0 : length); +}; + + +/***/ }), + +/***/ 3411: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var anObject = __webpack_require__(9670); +var iteratorClose = __webpack_require__(9212); + +// call something on iterator step with safe closing on error +module.exports = function (iterator, fn, value, ENTRIES) { + try { + return ENTRIES ? fn(anObject(value)[0], value[1]) : fn(value); + // 7.4.6 IteratorClose(iterator, completion) + } catch (error) { + iteratorClose(iterator); + throw error; + } +}; + + +/***/ }), + +/***/ 7072: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var wellKnownSymbol = __webpack_require__(5112); + +var ITERATOR = wellKnownSymbol('iterator'); +var SAFE_CLOSING = false; + +try { + var called = 0; + var iteratorWithReturn = { + next: function () { + return { done: !!called++ }; + }, + 'return': function () { + SAFE_CLOSING = true; + } + }; + iteratorWithReturn[ITERATOR] = function () { + return this; + }; + // eslint-disable-next-line no-throw-literal -- required for testing + Array.from(iteratorWithReturn, function () { throw 2; }); +} catch (error) { /* empty */ } + +module.exports = function (exec, SKIP_CLOSING) { + if (!SKIP_CLOSING && !SAFE_CLOSING) return false; + var ITERATION_SUPPORT = false; + try { + var object = {}; + object[ITERATOR] = function () { + return { + next: function () { + return { done: ITERATION_SUPPORT = true }; + } + }; + }; + exec(object); + } catch (error) { /* empty */ } + return ITERATION_SUPPORT; +}; + + +/***/ }), + +/***/ 4326: +/***/ (function(module) { + +var toString = {}.toString; + +module.exports = function (it) { + return toString.call(it).slice(8, -1); +}; + + +/***/ }), + +/***/ 648: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var TO_STRING_TAG_SUPPORT = __webpack_require__(1694); +var classofRaw = __webpack_require__(4326); +var wellKnownSymbol = __webpack_require__(5112); + +var TO_STRING_TAG = wellKnownSymbol('toStringTag'); +// ES3 wrong here +var CORRECT_ARGUMENTS = classofRaw(function () { return arguments; }()) == 'Arguments'; + +// fallback for IE11 Script Access Denied error +var tryGet = function (it, key) { + try { + return it[key]; + } catch (error) { /* empty */ } +}; + +// getting tag from ES6+ `Object.prototype.toString` +module.exports = TO_STRING_TAG_SUPPORT ? classofRaw : function (it) { + var O, tag, result; + return it === undefined ? 'Undefined' : it === null ? 'Null' + // @@toStringTag case + : typeof (tag = tryGet(O = Object(it), TO_STRING_TAG)) == 'string' ? tag + // builtinTag case + : CORRECT_ARGUMENTS ? classofRaw(O) + // ES3 arguments fallback + : (result = classofRaw(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : result; +}; + + +/***/ }), + +/***/ 9920: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var has = __webpack_require__(6656); +var ownKeys = __webpack_require__(3887); +var getOwnPropertyDescriptorModule = __webpack_require__(1236); +var definePropertyModule = __webpack_require__(3070); + +module.exports = function (target, source) { + var keys = ownKeys(source); + var defineProperty = definePropertyModule.f; + var getOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f; + for (var i = 0; i < keys.length; i++) { + var key = keys[i]; + if (!has(target, key)) defineProperty(target, key, getOwnPropertyDescriptor(source, key)); + } +}; + + +/***/ }), + +/***/ 8544: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var fails = __webpack_require__(7293); + +module.exports = !fails(function () { + function F() { /* empty */ } + F.prototype.constructor = null; + return Object.getPrototypeOf(new F()) !== F.prototype; +}); + + +/***/ }), + +/***/ 4994: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var IteratorPrototype = __webpack_require__(3383).IteratorPrototype; +var create = __webpack_require__(30); +var createPropertyDescriptor = __webpack_require__(9114); +var setToStringTag = __webpack_require__(8003); +var Iterators = __webpack_require__(7497); + +var returnThis = function () { return this; }; + +module.exports = function (IteratorConstructor, NAME, next) { + var TO_STRING_TAG = NAME + ' Iterator'; + IteratorConstructor.prototype = create(IteratorPrototype, { next: createPropertyDescriptor(1, next) }); + setToStringTag(IteratorConstructor, TO_STRING_TAG, false, true); + Iterators[TO_STRING_TAG] = returnThis; + return IteratorConstructor; +}; + + +/***/ }), + +/***/ 8880: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var DESCRIPTORS = __webpack_require__(9781); +var definePropertyModule = __webpack_require__(3070); +var createPropertyDescriptor = __webpack_require__(9114); + +module.exports = DESCRIPTORS ? function (object, key, value) { + return definePropertyModule.f(object, key, createPropertyDescriptor(1, value)); +} : function (object, key, value) { + object[key] = value; + return object; +}; + + +/***/ }), + +/***/ 9114: +/***/ (function(module) { + +module.exports = function (bitmap, value) { + return { + enumerable: !(bitmap & 1), + configurable: !(bitmap & 2), + writable: !(bitmap & 4), + value: value + }; +}; + + +/***/ }), + +/***/ 6135: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var toPrimitive = __webpack_require__(7593); +var definePropertyModule = __webpack_require__(3070); +var createPropertyDescriptor = __webpack_require__(9114); + +module.exports = function (object, key, value) { + var propertyKey = toPrimitive(key); + if (propertyKey in object) definePropertyModule.f(object, propertyKey, createPropertyDescriptor(0, value)); + else object[propertyKey] = value; +}; + + +/***/ }), + +/***/ 654: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var $ = __webpack_require__(2109); +var createIteratorConstructor = __webpack_require__(4994); +var getPrototypeOf = __webpack_require__(9518); +var setPrototypeOf = __webpack_require__(7674); +var setToStringTag = __webpack_require__(8003); +var createNonEnumerableProperty = __webpack_require__(8880); +var redefine = __webpack_require__(1320); +var wellKnownSymbol = __webpack_require__(5112); +var IS_PURE = __webpack_require__(1913); +var Iterators = __webpack_require__(7497); +var IteratorsCore = __webpack_require__(3383); + +var IteratorPrototype = IteratorsCore.IteratorPrototype; +var BUGGY_SAFARI_ITERATORS = IteratorsCore.BUGGY_SAFARI_ITERATORS; +var ITERATOR = wellKnownSymbol('iterator'); +var KEYS = 'keys'; +var VALUES = 'values'; +var ENTRIES = 'entries'; + +var returnThis = function () { return this; }; + +module.exports = function (Iterable, NAME, IteratorConstructor, next, DEFAULT, IS_SET, FORCED) { + createIteratorConstructor(IteratorConstructor, NAME, next); + + var getIterationMethod = function (KIND) { + if (KIND === DEFAULT && defaultIterator) return defaultIterator; + if (!BUGGY_SAFARI_ITERATORS && KIND in IterablePrototype) return IterablePrototype[KIND]; + switch (KIND) { + case KEYS: return function keys() { return new IteratorConstructor(this, KIND); }; + case VALUES: return function values() { return new IteratorConstructor(this, KIND); }; + case ENTRIES: return function entries() { return new IteratorConstructor(this, KIND); }; + } return function () { return new IteratorConstructor(this); }; + }; + + var TO_STRING_TAG = NAME + ' Iterator'; + var INCORRECT_VALUES_NAME = false; + var IterablePrototype = Iterable.prototype; + var nativeIterator = IterablePrototype[ITERATOR] + || IterablePrototype['@@iterator'] + || DEFAULT && IterablePrototype[DEFAULT]; + var defaultIterator = !BUGGY_SAFARI_ITERATORS && nativeIterator || getIterationMethod(DEFAULT); + var anyNativeIterator = NAME == 'Array' ? IterablePrototype.entries || nativeIterator : nativeIterator; + var CurrentIteratorPrototype, methods, KEY; + + // fix native + if (anyNativeIterator) { + CurrentIteratorPrototype = getPrototypeOf(anyNativeIterator.call(new Iterable())); + if (IteratorPrototype !== Object.prototype && CurrentIteratorPrototype.next) { + if (!IS_PURE && getPrototypeOf(CurrentIteratorPrototype) !== IteratorPrototype) { + if (setPrototypeOf) { + setPrototypeOf(CurrentIteratorPrototype, IteratorPrototype); + } else if (typeof CurrentIteratorPrototype[ITERATOR] != 'function') { + createNonEnumerableProperty(CurrentIteratorPrototype, ITERATOR, returnThis); + } + } + // Set @@toStringTag to native iterators + setToStringTag(CurrentIteratorPrototype, TO_STRING_TAG, true, true); + if (IS_PURE) Iterators[TO_STRING_TAG] = returnThis; + } + } + + // fix Array#{values, @@iterator}.name in V8 / FF + if (DEFAULT == VALUES && nativeIterator && nativeIterator.name !== VALUES) { + INCORRECT_VALUES_NAME = true; + defaultIterator = function values() { return nativeIterator.call(this); }; + } + + // define iterator + if ((!IS_PURE || FORCED) && IterablePrototype[ITERATOR] !== defaultIterator) { + createNonEnumerableProperty(IterablePrototype, ITERATOR, defaultIterator); + } + Iterators[NAME] = defaultIterator; + + // export additional methods + if (DEFAULT) { + methods = { + values: getIterationMethod(VALUES), + keys: IS_SET ? defaultIterator : getIterationMethod(KEYS), + entries: getIterationMethod(ENTRIES) + }; + if (FORCED) for (KEY in methods) { + if (BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME || !(KEY in IterablePrototype)) { + redefine(IterablePrototype, KEY, methods[KEY]); + } + } else $({ target: NAME, proto: true, forced: BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME }, methods); + } + + return methods; +}; + + +/***/ }), + +/***/ 9781: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var fails = __webpack_require__(7293); + +// Detect IE8's incomplete defineProperty implementation +module.exports = !fails(function () { + return Object.defineProperty({}, 1, { get: function () { return 7; } })[1] != 7; +}); + + +/***/ }), + +/***/ 317: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var global = __webpack_require__(7854); +var isObject = __webpack_require__(111); + +var document = global.document; +// typeof document.createElement is 'object' in old IE +var EXISTS = isObject(document) && isObject(document.createElement); + +module.exports = function (it) { + return EXISTS ? document.createElement(it) : {}; +}; + + +/***/ }), + +/***/ 8324: +/***/ (function(module) { + +// iterable DOM collections +// flag - `iterable` interface - 'entries', 'keys', 'values', 'forEach' methods +module.exports = { + CSSRuleList: 0, + CSSStyleDeclaration: 0, + CSSValueList: 0, + ClientRectList: 0, + DOMRectList: 0, + DOMStringList: 0, + DOMTokenList: 1, + DataTransferItemList: 0, + FileList: 0, + HTMLAllCollection: 0, + HTMLCollection: 0, + HTMLFormElement: 0, + HTMLSelectElement: 0, + MediaList: 0, + MimeTypeArray: 0, + NamedNodeMap: 0, + NodeList: 1, + PaintRequestList: 0, + Plugin: 0, + PluginArray: 0, + SVGLengthList: 0, + SVGNumberList: 0, + SVGPathSegList: 0, + SVGPointList: 0, + SVGStringList: 0, + SVGTransformList: 0, + SourceBufferList: 0, + StyleSheetList: 0, + TextTrackCueList: 0, + TextTrackList: 0, + TouchList: 0 +}; + + +/***/ }), + +/***/ 8113: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var getBuiltIn = __webpack_require__(5005); + +module.exports = getBuiltIn('navigator', 'userAgent') || ''; + + +/***/ }), + +/***/ 7392: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var global = __webpack_require__(7854); +var userAgent = __webpack_require__(8113); + +var process = global.process; +var versions = process && process.versions; +var v8 = versions && versions.v8; +var match, version; + +if (v8) { + match = v8.split('.'); + version = match[0] + match[1]; +} else if (userAgent) { + match = userAgent.match(/Edge\/(\d+)/); + if (!match || match[1] >= 74) { + match = userAgent.match(/Chrome\/(\d+)/); + if (match) version = match[1]; + } +} + +module.exports = version && +version; + + +/***/ }), + +/***/ 748: +/***/ (function(module) { + +// IE8- don't enum bug keys +module.exports = [ + 'constructor', + 'hasOwnProperty', + 'isPrototypeOf', + 'propertyIsEnumerable', + 'toLocaleString', + 'toString', + 'valueOf' +]; + + +/***/ }), + +/***/ 2109: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var global = __webpack_require__(7854); +var getOwnPropertyDescriptor = __webpack_require__(1236).f; +var createNonEnumerableProperty = __webpack_require__(8880); +var redefine = __webpack_require__(1320); +var setGlobal = __webpack_require__(3505); +var copyConstructorProperties = __webpack_require__(9920); +var isForced = __webpack_require__(4705); + +/* + options.target - name of the target object + options.global - target is the global object + options.stat - export as static methods of target + options.proto - export as prototype methods of target + options.real - real prototype method for the `pure` version + options.forced - export even if the native feature is available + options.bind - bind methods to the target, required for the `pure` version + options.wrap - wrap constructors to preventing global pollution, required for the `pure` version + options.unsafe - use the simple assignment of property instead of delete + defineProperty + options.sham - add a flag to not completely full polyfills + options.enumerable - export as enumerable property + options.noTargetGet - prevent calling a getter on target +*/ +module.exports = function (options, source) { + var TARGET = options.target; + var GLOBAL = options.global; + var STATIC = options.stat; + var FORCED, target, key, targetProperty, sourceProperty, descriptor; + if (GLOBAL) { + target = global; + } else if (STATIC) { + target = global[TARGET] || setGlobal(TARGET, {}); + } else { + target = (global[TARGET] || {}).prototype; + } + if (target) for (key in source) { + sourceProperty = source[key]; + if (options.noTargetGet) { + descriptor = getOwnPropertyDescriptor(target, key); + targetProperty = descriptor && descriptor.value; + } else targetProperty = target[key]; + FORCED = isForced(GLOBAL ? key : TARGET + (STATIC ? '.' : '#') + key, options.forced); + // contained in target + if (!FORCED && targetProperty !== undefined) { + if (typeof sourceProperty === typeof targetProperty) continue; + copyConstructorProperties(sourceProperty, targetProperty); + } + // add a flag to not completely full polyfills + if (options.sham || (targetProperty && targetProperty.sham)) { + createNonEnumerableProperty(sourceProperty, 'sham', true); + } + // extend global + redefine(target, key, sourceProperty, options); + } +}; + + +/***/ }), + +/***/ 7293: +/***/ (function(module) { + +module.exports = function (exec) { + try { + return !!exec(); + } catch (error) { + return true; + } +}; + + +/***/ }), + +/***/ 7007: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +// TODO: Remove from `core-js@4` since it's moved to entry points +__webpack_require__(4916); +var redefine = __webpack_require__(1320); +var fails = __webpack_require__(7293); +var wellKnownSymbol = __webpack_require__(5112); +var regexpExec = __webpack_require__(2261); +var createNonEnumerableProperty = __webpack_require__(8880); + +var SPECIES = wellKnownSymbol('species'); + +var REPLACE_SUPPORTS_NAMED_GROUPS = !fails(function () { + // #replace needs built-in support for named groups. + // #match works fine because it just return the exec results, even if it has + // a "grops" property. + var re = /./; + re.exec = function () { + var result = []; + result.groups = { a: '7' }; + return result; + }; + return ''.replace(re, '$') !== '7'; +}); + +// IE <= 11 replaces $0 with the whole match, as if it was $& +// https://stackoverflow.com/questions/6024666/getting-ie-to-replace-a-regex-with-the-literal-string-0 +var REPLACE_KEEPS_$0 = (function () { + return 'a'.replace(/./, '$0') === '$0'; +})(); + +var REPLACE = wellKnownSymbol('replace'); +// Safari <= 13.0.3(?) substitutes nth capture where n>m with an empty string +var REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE = (function () { + if (/./[REPLACE]) { + return /./[REPLACE]('a', '$0') === ''; + } + return false; +})(); + +// Chrome 51 has a buggy "split" implementation when RegExp#exec !== nativeExec +// Weex JS has frozen built-in prototypes, so use try / catch wrapper +var SPLIT_WORKS_WITH_OVERWRITTEN_EXEC = !fails(function () { + // eslint-disable-next-line regexp/no-empty-group -- required for testing + var re = /(?:)/; + var originalExec = re.exec; + re.exec = function () { return originalExec.apply(this, arguments); }; + var result = 'ab'.split(re); + return result.length !== 2 || result[0] !== 'a' || result[1] !== 'b'; +}); + +module.exports = function (KEY, length, exec, sham) { + var SYMBOL = wellKnownSymbol(KEY); + + var DELEGATES_TO_SYMBOL = !fails(function () { + // String methods call symbol-named RegEp methods + var O = {}; + O[SYMBOL] = function () { return 7; }; + return ''[KEY](O) != 7; + }); + + var DELEGATES_TO_EXEC = DELEGATES_TO_SYMBOL && !fails(function () { + // Symbol-named RegExp methods call .exec + var execCalled = false; + var re = /a/; + + if (KEY === 'split') { + // We can't use real regex here since it causes deoptimization + // and serious performance degradation in V8 + // https://github.com/zloirock/core-js/issues/306 + re = {}; + // RegExp[@@split] doesn't call the regex's exec method, but first creates + // a new one. We need to return the patched regex when creating the new one. + re.constructor = {}; + re.constructor[SPECIES] = function () { return re; }; + re.flags = ''; + re[SYMBOL] = /./[SYMBOL]; + } + + re.exec = function () { execCalled = true; return null; }; + + re[SYMBOL](''); + return !execCalled; + }); + + if ( + !DELEGATES_TO_SYMBOL || + !DELEGATES_TO_EXEC || + (KEY === 'replace' && !( + REPLACE_SUPPORTS_NAMED_GROUPS && + REPLACE_KEEPS_$0 && + !REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE + )) || + (KEY === 'split' && !SPLIT_WORKS_WITH_OVERWRITTEN_EXEC) + ) { + var nativeRegExpMethod = /./[SYMBOL]; + var methods = exec(SYMBOL, ''[KEY], function (nativeMethod, regexp, str, arg2, forceStringMethod) { + if (regexp.exec === regexpExec) { + if (DELEGATES_TO_SYMBOL && !forceStringMethod) { + // The native String method already delegates to @@method (this + // polyfilled function), leasing to infinite recursion. + // We avoid it by directly calling the native @@method method. + return { done: true, value: nativeRegExpMethod.call(regexp, str, arg2) }; + } + return { done: true, value: nativeMethod.call(str, regexp, arg2) }; + } + return { done: false }; + }, { + REPLACE_KEEPS_$0: REPLACE_KEEPS_$0, + REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE: REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE + }); + var stringMethod = methods[0]; + var regexMethod = methods[1]; + + redefine(String.prototype, KEY, stringMethod); + redefine(RegExp.prototype, SYMBOL, length == 2 + // 21.2.5.8 RegExp.prototype[@@replace](string, replaceValue) + // 21.2.5.11 RegExp.prototype[@@split](string, limit) + ? function (string, arg) { return regexMethod.call(string, this, arg); } + // 21.2.5.6 RegExp.prototype[@@match](string) + // 21.2.5.9 RegExp.prototype[@@search](string) + : function (string) { return regexMethod.call(string, this); } + ); + } + + if (sham) createNonEnumerableProperty(RegExp.prototype[SYMBOL], 'sham', true); +}; + + +/***/ }), + +/***/ 9974: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var aFunction = __webpack_require__(3099); + +// optional / simple context binding +module.exports = function (fn, that, length) { + aFunction(fn); + if (that === undefined) return fn; + switch (length) { + case 0: return function () { + return fn.call(that); + }; + case 1: return function (a) { + return fn.call(that, a); + }; + case 2: return function (a, b) { + return fn.call(that, a, b); + }; + case 3: return function (a, b, c) { + return fn.call(that, a, b, c); + }; + } + return function (/* ...args */) { + return fn.apply(that, arguments); + }; +}; + + +/***/ }), + +/***/ 5005: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var path = __webpack_require__(857); +var global = __webpack_require__(7854); + +var aFunction = function (variable) { + return typeof variable == 'function' ? variable : undefined; +}; + +module.exports = function (namespace, method) { + return arguments.length < 2 ? aFunction(path[namespace]) || aFunction(global[namespace]) + : path[namespace] && path[namespace][method] || global[namespace] && global[namespace][method]; +}; + + +/***/ }), + +/***/ 1246: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var classof = __webpack_require__(648); +var Iterators = __webpack_require__(7497); +var wellKnownSymbol = __webpack_require__(5112); + +var ITERATOR = wellKnownSymbol('iterator'); + +module.exports = function (it) { + if (it != undefined) return it[ITERATOR] + || it['@@iterator'] + || Iterators[classof(it)]; +}; + + +/***/ }), + +/***/ 8554: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var anObject = __webpack_require__(9670); +var getIteratorMethod = __webpack_require__(1246); + +module.exports = function (it) { + var iteratorMethod = getIteratorMethod(it); + if (typeof iteratorMethod != 'function') { + throw TypeError(String(it) + ' is not iterable'); + } return anObject(iteratorMethod.call(it)); +}; + + +/***/ }), + +/***/ 647: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var toObject = __webpack_require__(7908); + +var floor = Math.floor; +var replace = ''.replace; +var SUBSTITUTION_SYMBOLS = /\$([$&'`]|\d\d?|<[^>]*>)/g; +var SUBSTITUTION_SYMBOLS_NO_NAMED = /\$([$&'`]|\d\d?)/g; + +// https://tc39.es/ecma262/#sec-getsubstitution +module.exports = function (matched, str, position, captures, namedCaptures, replacement) { + var tailPos = position + matched.length; + var m = captures.length; + var symbols = SUBSTITUTION_SYMBOLS_NO_NAMED; + if (namedCaptures !== undefined) { + namedCaptures = toObject(namedCaptures); + symbols = SUBSTITUTION_SYMBOLS; + } + return replace.call(replacement, symbols, function (match, ch) { + var capture; + switch (ch.charAt(0)) { + case '$': return '$'; + case '&': return matched; + case '`': return str.slice(0, position); + case "'": return str.slice(tailPos); + case '<': + capture = namedCaptures[ch.slice(1, -1)]; + break; + default: // \d\d? + var n = +ch; + if (n === 0) return match; + if (n > m) { + var f = floor(n / 10); + if (f === 0) return match; + if (f <= m) return captures[f - 1] === undefined ? ch.charAt(1) : captures[f - 1] + ch.charAt(1); + return match; + } + capture = captures[n - 1]; + } + return capture === undefined ? '' : capture; + }); +}; + + +/***/ }), + +/***/ 7854: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var check = function (it) { + return it && it.Math == Math && it; +}; + +// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028 +module.exports = + /* global globalThis -- safe */ + check(typeof globalThis == 'object' && globalThis) || + check(typeof window == 'object' && window) || + check(typeof self == 'object' && self) || + check(typeof __webpack_require__.g == 'object' && __webpack_require__.g) || + // eslint-disable-next-line no-new-func -- fallback + (function () { return this; })() || Function('return this')(); + + +/***/ }), + +/***/ 6656: +/***/ (function(module) { + +var hasOwnProperty = {}.hasOwnProperty; + +module.exports = function (it, key) { + return hasOwnProperty.call(it, key); +}; + + +/***/ }), + +/***/ 3501: +/***/ (function(module) { + +module.exports = {}; + + +/***/ }), + +/***/ 490: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var getBuiltIn = __webpack_require__(5005); + +module.exports = getBuiltIn('document', 'documentElement'); + + +/***/ }), + +/***/ 4664: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var DESCRIPTORS = __webpack_require__(9781); +var fails = __webpack_require__(7293); +var createElement = __webpack_require__(317); + +// Thank's IE8 for his funny defineProperty +module.exports = !DESCRIPTORS && !fails(function () { + return Object.defineProperty(createElement('div'), 'a', { + get: function () { return 7; } + }).a != 7; +}); + + +/***/ }), + +/***/ 1179: +/***/ (function(module) { + +// IEEE754 conversions based on https://github.com/feross/ieee754 +var abs = Math.abs; +var pow = Math.pow; +var floor = Math.floor; +var log = Math.log; +var LN2 = Math.LN2; + +var pack = function (number, mantissaLength, bytes) { + var buffer = new Array(bytes); + var exponentLength = bytes * 8 - mantissaLength - 1; + var eMax = (1 << exponentLength) - 1; + var eBias = eMax >> 1; + var rt = mantissaLength === 23 ? pow(2, -24) - pow(2, -77) : 0; + var sign = number < 0 || number === 0 && 1 / number < 0 ? 1 : 0; + var index = 0; + var exponent, mantissa, c; + number = abs(number); + // eslint-disable-next-line no-self-compare -- NaN check + if (number != number || number === Infinity) { + // eslint-disable-next-line no-self-compare -- NaN check + mantissa = number != number ? 1 : 0; + exponent = eMax; + } else { + exponent = floor(log(number) / LN2); + if (number * (c = pow(2, -exponent)) < 1) { + exponent--; + c *= 2; + } + if (exponent + eBias >= 1) { + number += rt / c; + } else { + number += rt * pow(2, 1 - eBias); + } + if (number * c >= 2) { + exponent++; + c /= 2; + } + if (exponent + eBias >= eMax) { + mantissa = 0; + exponent = eMax; + } else if (exponent + eBias >= 1) { + mantissa = (number * c - 1) * pow(2, mantissaLength); + exponent = exponent + eBias; + } else { + mantissa = number * pow(2, eBias - 1) * pow(2, mantissaLength); + exponent = 0; + } + } + for (; mantissaLength >= 8; buffer[index++] = mantissa & 255, mantissa /= 256, mantissaLength -= 8); + exponent = exponent << mantissaLength | mantissa; + exponentLength += mantissaLength; + for (; exponentLength > 0; buffer[index++] = exponent & 255, exponent /= 256, exponentLength -= 8); + buffer[--index] |= sign * 128; + return buffer; +}; + +var unpack = function (buffer, mantissaLength) { + var bytes = buffer.length; + var exponentLength = bytes * 8 - mantissaLength - 1; + var eMax = (1 << exponentLength) - 1; + var eBias = eMax >> 1; + var nBits = exponentLength - 7; + var index = bytes - 1; + var sign = buffer[index--]; + var exponent = sign & 127; + var mantissa; + sign >>= 7; + for (; nBits > 0; exponent = exponent * 256 + buffer[index], index--, nBits -= 8); + mantissa = exponent & (1 << -nBits) - 1; + exponent >>= -nBits; + nBits += mantissaLength; + for (; nBits > 0; mantissa = mantissa * 256 + buffer[index], index--, nBits -= 8); + if (exponent === 0) { + exponent = 1 - eBias; + } else if (exponent === eMax) { + return mantissa ? NaN : sign ? -Infinity : Infinity; + } else { + mantissa = mantissa + pow(2, mantissaLength); + exponent = exponent - eBias; + } return (sign ? -1 : 1) * mantissa * pow(2, exponent - mantissaLength); +}; + +module.exports = { + pack: pack, + unpack: unpack +}; + + +/***/ }), + +/***/ 8361: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var fails = __webpack_require__(7293); +var classof = __webpack_require__(4326); + +var split = ''.split; + +// fallback for non-array-like ES3 and non-enumerable old V8 strings +module.exports = fails(function () { + // throws an error in rhino, see https://github.com/mozilla/rhino/issues/346 + // eslint-disable-next-line no-prototype-builtins -- safe + return !Object('z').propertyIsEnumerable(0); +}) ? function (it) { + return classof(it) == 'String' ? split.call(it, '') : Object(it); +} : Object; + + +/***/ }), + +/***/ 9587: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var isObject = __webpack_require__(111); +var setPrototypeOf = __webpack_require__(7674); + +// makes subclassing work correct for wrapped built-ins +module.exports = function ($this, dummy, Wrapper) { + var NewTarget, NewTargetPrototype; + if ( + // it can work only with native `setPrototypeOf` + setPrototypeOf && + // we haven't completely correct pre-ES6 way for getting `new.target`, so use this + typeof (NewTarget = dummy.constructor) == 'function' && + NewTarget !== Wrapper && + isObject(NewTargetPrototype = NewTarget.prototype) && + NewTargetPrototype !== Wrapper.prototype + ) setPrototypeOf($this, NewTargetPrototype); + return $this; +}; + + +/***/ }), + +/***/ 2788: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var store = __webpack_require__(5465); + +var functionToString = Function.toString; + +// this helper broken in `3.4.1-3.4.4`, so we can't use `shared` helper +if (typeof store.inspectSource != 'function') { + store.inspectSource = function (it) { + return functionToString.call(it); + }; +} + +module.exports = store.inspectSource; + + +/***/ }), + +/***/ 9909: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var NATIVE_WEAK_MAP = __webpack_require__(8536); +var global = __webpack_require__(7854); +var isObject = __webpack_require__(111); +var createNonEnumerableProperty = __webpack_require__(8880); +var objectHas = __webpack_require__(6656); +var shared = __webpack_require__(5465); +var sharedKey = __webpack_require__(6200); +var hiddenKeys = __webpack_require__(3501); + +var WeakMap = global.WeakMap; +var set, get, has; + +var enforce = function (it) { + return has(it) ? get(it) : set(it, {}); +}; + +var getterFor = function (TYPE) { + return function (it) { + var state; + if (!isObject(it) || (state = get(it)).type !== TYPE) { + throw TypeError('Incompatible receiver, ' + TYPE + ' required'); + } return state; + }; +}; + +if (NATIVE_WEAK_MAP) { + var store = shared.state || (shared.state = new WeakMap()); + var wmget = store.get; + var wmhas = store.has; + var wmset = store.set; + set = function (it, metadata) { + metadata.facade = it; + wmset.call(store, it, metadata); + return metadata; + }; + get = function (it) { + return wmget.call(store, it) || {}; + }; + has = function (it) { + return wmhas.call(store, it); + }; +} else { + var STATE = sharedKey('state'); + hiddenKeys[STATE] = true; + set = function (it, metadata) { + metadata.facade = it; + createNonEnumerableProperty(it, STATE, metadata); + return metadata; + }; + get = function (it) { + return objectHas(it, STATE) ? it[STATE] : {}; + }; + has = function (it) { + return objectHas(it, STATE); + }; +} + +module.exports = { + set: set, + get: get, + has: has, + enforce: enforce, + getterFor: getterFor +}; + + +/***/ }), + +/***/ 7659: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var wellKnownSymbol = __webpack_require__(5112); +var Iterators = __webpack_require__(7497); + +var ITERATOR = wellKnownSymbol('iterator'); +var ArrayPrototype = Array.prototype; + +// check on default Array iterator +module.exports = function (it) { + return it !== undefined && (Iterators.Array === it || ArrayPrototype[ITERATOR] === it); +}; + + +/***/ }), + +/***/ 3157: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var classof = __webpack_require__(4326); + +// `IsArray` abstract operation +// https://tc39.es/ecma262/#sec-isarray +module.exports = Array.isArray || function isArray(arg) { + return classof(arg) == 'Array'; +}; + + +/***/ }), + +/***/ 4705: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var fails = __webpack_require__(7293); + +var replacement = /#|\.prototype\./; + +var isForced = function (feature, detection) { + var value = data[normalize(feature)]; + return value == POLYFILL ? true + : value == NATIVE ? false + : typeof detection == 'function' ? fails(detection) + : !!detection; +}; + +var normalize = isForced.normalize = function (string) { + return String(string).replace(replacement, '.').toLowerCase(); +}; + +var data = isForced.data = {}; +var NATIVE = isForced.NATIVE = 'N'; +var POLYFILL = isForced.POLYFILL = 'P'; + +module.exports = isForced; + + +/***/ }), + +/***/ 111: +/***/ (function(module) { + +module.exports = function (it) { + return typeof it === 'object' ? it !== null : typeof it === 'function'; +}; + + +/***/ }), + +/***/ 1913: +/***/ (function(module) { + +module.exports = false; + + +/***/ }), + +/***/ 7850: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var isObject = __webpack_require__(111); +var classof = __webpack_require__(4326); +var wellKnownSymbol = __webpack_require__(5112); + +var MATCH = wellKnownSymbol('match'); + +// `IsRegExp` abstract operation +// https://tc39.es/ecma262/#sec-isregexp +module.exports = function (it) { + var isRegExp; + return isObject(it) && ((isRegExp = it[MATCH]) !== undefined ? !!isRegExp : classof(it) == 'RegExp'); +}; + + +/***/ }), + +/***/ 9212: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var anObject = __webpack_require__(9670); + +module.exports = function (iterator) { + var returnMethod = iterator['return']; + if (returnMethod !== undefined) { + return anObject(returnMethod.call(iterator)).value; + } +}; + + +/***/ }), + +/***/ 3383: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var fails = __webpack_require__(7293); +var getPrototypeOf = __webpack_require__(9518); +var createNonEnumerableProperty = __webpack_require__(8880); +var has = __webpack_require__(6656); +var wellKnownSymbol = __webpack_require__(5112); +var IS_PURE = __webpack_require__(1913); + +var ITERATOR = wellKnownSymbol('iterator'); +var BUGGY_SAFARI_ITERATORS = false; + +var returnThis = function () { return this; }; + +// `%IteratorPrototype%` object +// https://tc39.es/ecma262/#sec-%iteratorprototype%-object +var IteratorPrototype, PrototypeOfArrayIteratorPrototype, arrayIterator; + +if ([].keys) { + arrayIterator = [].keys(); + // Safari 8 has buggy iterators w/o `next` + if (!('next' in arrayIterator)) BUGGY_SAFARI_ITERATORS = true; + else { + PrototypeOfArrayIteratorPrototype = getPrototypeOf(getPrototypeOf(arrayIterator)); + if (PrototypeOfArrayIteratorPrototype !== Object.prototype) IteratorPrototype = PrototypeOfArrayIteratorPrototype; + } +} + +var NEW_ITERATOR_PROTOTYPE = IteratorPrototype == undefined || fails(function () { + var test = {}; + // FF44- legacy iterators case + return IteratorPrototype[ITERATOR].call(test) !== test; +}); + +if (NEW_ITERATOR_PROTOTYPE) IteratorPrototype = {}; + +// 25.1.2.1.1 %IteratorPrototype%[@@iterator]() +if ((!IS_PURE || NEW_ITERATOR_PROTOTYPE) && !has(IteratorPrototype, ITERATOR)) { + createNonEnumerableProperty(IteratorPrototype, ITERATOR, returnThis); +} + +module.exports = { + IteratorPrototype: IteratorPrototype, + BUGGY_SAFARI_ITERATORS: BUGGY_SAFARI_ITERATORS +}; + + +/***/ }), + +/***/ 7497: +/***/ (function(module) { + +module.exports = {}; + + +/***/ }), + +/***/ 133: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var fails = __webpack_require__(7293); + +module.exports = !!Object.getOwnPropertySymbols && !fails(function () { + // Chrome 38 Symbol has incorrect toString conversion + /* global Symbol -- required for testing */ + return !String(Symbol()); +}); + + +/***/ }), + +/***/ 590: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var fails = __webpack_require__(7293); +var wellKnownSymbol = __webpack_require__(5112); +var IS_PURE = __webpack_require__(1913); + +var ITERATOR = wellKnownSymbol('iterator'); + +module.exports = !fails(function () { + var url = new URL('b?a=1&b=2&c=3', 'http://a'); + var searchParams = url.searchParams; + var result = ''; + url.pathname = 'c%20d'; + searchParams.forEach(function (value, key) { + searchParams['delete']('b'); + result += key + value; + }); + return (IS_PURE && !url.toJSON) + || !searchParams.sort + || url.href !== 'http://a/c%20d?a=1&c=3' + || searchParams.get('c') !== '3' + || String(new URLSearchParams('?a=1')) !== 'a=1' + || !searchParams[ITERATOR] + // throws in Edge + || new URL('https://a@b').username !== 'a' + || new URLSearchParams(new URLSearchParams('a=b')).get('a') !== 'b' + // not punycoded in Edge + || new URL('http://тест').host !== 'xn--e1aybc' + // not escaped in Chrome 62- + || new URL('http://a#б').hash !== '#%D0%B1' + // fails in Chrome 66- + || result !== 'a1c3' + // throws in Safari + || new URL('http://x', undefined).host !== 'x'; +}); + + +/***/ }), + +/***/ 8536: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var global = __webpack_require__(7854); +var inspectSource = __webpack_require__(2788); + +var WeakMap = global.WeakMap; + +module.exports = typeof WeakMap === 'function' && /native code/.test(inspectSource(WeakMap)); + + +/***/ }), + +/***/ 1574: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var DESCRIPTORS = __webpack_require__(9781); +var fails = __webpack_require__(7293); +var objectKeys = __webpack_require__(1956); +var getOwnPropertySymbolsModule = __webpack_require__(5181); +var propertyIsEnumerableModule = __webpack_require__(5296); +var toObject = __webpack_require__(7908); +var IndexedObject = __webpack_require__(8361); + +var nativeAssign = Object.assign; +var defineProperty = Object.defineProperty; + +// `Object.assign` method +// https://tc39.es/ecma262/#sec-object.assign +module.exports = !nativeAssign || fails(function () { + // should have correct order of operations (Edge bug) + if (DESCRIPTORS && nativeAssign({ b: 1 }, nativeAssign(defineProperty({}, 'a', { + enumerable: true, + get: function () { + defineProperty(this, 'b', { + value: 3, + enumerable: false + }); + } + }), { b: 2 })).b !== 1) return true; + // should work with symbols and should have deterministic property order (V8 bug) + var A = {}; + var B = {}; + /* global Symbol -- required for testing */ + var symbol = Symbol(); + var alphabet = 'abcdefghijklmnopqrst'; + A[symbol] = 7; + alphabet.split('').forEach(function (chr) { B[chr] = chr; }); + return nativeAssign({}, A)[symbol] != 7 || objectKeys(nativeAssign({}, B)).join('') != alphabet; +}) ? function assign(target, source) { // eslint-disable-line no-unused-vars -- required for `.length` + var T = toObject(target); + var argumentsLength = arguments.length; + var index = 1; + var getOwnPropertySymbols = getOwnPropertySymbolsModule.f; + var propertyIsEnumerable = propertyIsEnumerableModule.f; + while (argumentsLength > index) { + var S = IndexedObject(arguments[index++]); + var keys = getOwnPropertySymbols ? objectKeys(S).concat(getOwnPropertySymbols(S)) : objectKeys(S); + var length = keys.length; + var j = 0; + var key; + while (length > j) { + key = keys[j++]; + if (!DESCRIPTORS || propertyIsEnumerable.call(S, key)) T[key] = S[key]; + } + } return T; +} : nativeAssign; + + +/***/ }), + +/***/ 30: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var anObject = __webpack_require__(9670); +var defineProperties = __webpack_require__(6048); +var enumBugKeys = __webpack_require__(748); +var hiddenKeys = __webpack_require__(3501); +var html = __webpack_require__(490); +var documentCreateElement = __webpack_require__(317); +var sharedKey = __webpack_require__(6200); + +var GT = '>'; +var LT = '<'; +var PROTOTYPE = 'prototype'; +var SCRIPT = 'script'; +var IE_PROTO = sharedKey('IE_PROTO'); + +var EmptyConstructor = function () { /* empty */ }; + +var scriptTag = function (content) { + return LT + SCRIPT + GT + content + LT + '/' + SCRIPT + GT; +}; + +// Create object with fake `null` prototype: use ActiveX Object with cleared prototype +var NullProtoObjectViaActiveX = function (activeXDocument) { + activeXDocument.write(scriptTag('')); + activeXDocument.close(); + var temp = activeXDocument.parentWindow.Object; + activeXDocument = null; // avoid memory leak + return temp; +}; + +// Create object with fake `null` prototype: use iframe Object with cleared prototype +var NullProtoObjectViaIFrame = function () { + // Thrash, waste and sodomy: IE GC bug + var iframe = documentCreateElement('iframe'); + var JS = 'java' + SCRIPT + ':'; + var iframeDocument; + iframe.style.display = 'none'; + html.appendChild(iframe); + // https://github.com/zloirock/core-js/issues/475 + iframe.src = String(JS); + iframeDocument = iframe.contentWindow.document; + iframeDocument.open(); + iframeDocument.write(scriptTag('document.F=Object')); + iframeDocument.close(); + return iframeDocument.F; +}; + +// Check for document.domain and active x support +// No need to use active x approach when document.domain is not set +// see https://github.com/es-shims/es5-shim/issues/150 +// variation of https://github.com/kitcambridge/es5-shim/commit/4f738ac066346 +// avoid IE GC bug +var activeXDocument; +var NullProtoObject = function () { + try { + /* global ActiveXObject -- old IE */ + activeXDocument = document.domain && new ActiveXObject('htmlfile'); + } catch (error) { /* ignore */ } + NullProtoObject = activeXDocument ? NullProtoObjectViaActiveX(activeXDocument) : NullProtoObjectViaIFrame(); + var length = enumBugKeys.length; + while (length--) delete NullProtoObject[PROTOTYPE][enumBugKeys[length]]; + return NullProtoObject(); +}; + +hiddenKeys[IE_PROTO] = true; + +// `Object.create` method +// https://tc39.es/ecma262/#sec-object.create +module.exports = Object.create || function create(O, Properties) { + var result; + if (O !== null) { + EmptyConstructor[PROTOTYPE] = anObject(O); + result = new EmptyConstructor(); + EmptyConstructor[PROTOTYPE] = null; + // add "__proto__" for Object.getPrototypeOf polyfill + result[IE_PROTO] = O; + } else result = NullProtoObject(); + return Properties === undefined ? result : defineProperties(result, Properties); +}; + + +/***/ }), + +/***/ 6048: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var DESCRIPTORS = __webpack_require__(9781); +var definePropertyModule = __webpack_require__(3070); +var anObject = __webpack_require__(9670); +var objectKeys = __webpack_require__(1956); + +// `Object.defineProperties` method +// https://tc39.es/ecma262/#sec-object.defineproperties +module.exports = DESCRIPTORS ? Object.defineProperties : function defineProperties(O, Properties) { + anObject(O); + var keys = objectKeys(Properties); + var length = keys.length; + var index = 0; + var key; + while (length > index) definePropertyModule.f(O, key = keys[index++], Properties[key]); + return O; +}; + + +/***/ }), + +/***/ 3070: +/***/ (function(__unused_webpack_module, exports, __webpack_require__) { + +var DESCRIPTORS = __webpack_require__(9781); +var IE8_DOM_DEFINE = __webpack_require__(4664); +var anObject = __webpack_require__(9670); +var toPrimitive = __webpack_require__(7593); + +var nativeDefineProperty = Object.defineProperty; + +// `Object.defineProperty` method +// https://tc39.es/ecma262/#sec-object.defineproperty +exports.f = DESCRIPTORS ? nativeDefineProperty : function defineProperty(O, P, Attributes) { + anObject(O); + P = toPrimitive(P, true); + anObject(Attributes); + if (IE8_DOM_DEFINE) try { + return nativeDefineProperty(O, P, Attributes); + } catch (error) { /* empty */ } + if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported'); + if ('value' in Attributes) O[P] = Attributes.value; + return O; +}; + + +/***/ }), + +/***/ 1236: +/***/ (function(__unused_webpack_module, exports, __webpack_require__) { + +var DESCRIPTORS = __webpack_require__(9781); +var propertyIsEnumerableModule = __webpack_require__(5296); +var createPropertyDescriptor = __webpack_require__(9114); +var toIndexedObject = __webpack_require__(5656); +var toPrimitive = __webpack_require__(7593); +var has = __webpack_require__(6656); +var IE8_DOM_DEFINE = __webpack_require__(4664); + +var nativeGetOwnPropertyDescriptor = Object.getOwnPropertyDescriptor; + +// `Object.getOwnPropertyDescriptor` method +// https://tc39.es/ecma262/#sec-object.getownpropertydescriptor +exports.f = DESCRIPTORS ? nativeGetOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) { + O = toIndexedObject(O); + P = toPrimitive(P, true); + if (IE8_DOM_DEFINE) try { + return nativeGetOwnPropertyDescriptor(O, P); + } catch (error) { /* empty */ } + if (has(O, P)) return createPropertyDescriptor(!propertyIsEnumerableModule.f.call(O, P), O[P]); +}; + + +/***/ }), + +/***/ 8006: +/***/ (function(__unused_webpack_module, exports, __webpack_require__) { + +var internalObjectKeys = __webpack_require__(6324); +var enumBugKeys = __webpack_require__(748); + +var hiddenKeys = enumBugKeys.concat('length', 'prototype'); + +// `Object.getOwnPropertyNames` method +// https://tc39.es/ecma262/#sec-object.getownpropertynames +exports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) { + return internalObjectKeys(O, hiddenKeys); +}; + + +/***/ }), + +/***/ 5181: +/***/ (function(__unused_webpack_module, exports) { + +exports.f = Object.getOwnPropertySymbols; + + +/***/ }), + +/***/ 9518: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var has = __webpack_require__(6656); +var toObject = __webpack_require__(7908); +var sharedKey = __webpack_require__(6200); +var CORRECT_PROTOTYPE_GETTER = __webpack_require__(8544); + +var IE_PROTO = sharedKey('IE_PROTO'); +var ObjectPrototype = Object.prototype; + +// `Object.getPrototypeOf` method +// https://tc39.es/ecma262/#sec-object.getprototypeof +module.exports = CORRECT_PROTOTYPE_GETTER ? Object.getPrototypeOf : function (O) { + O = toObject(O); + if (has(O, IE_PROTO)) return O[IE_PROTO]; + if (typeof O.constructor == 'function' && O instanceof O.constructor) { + return O.constructor.prototype; + } return O instanceof Object ? ObjectPrototype : null; +}; + + +/***/ }), + +/***/ 6324: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var has = __webpack_require__(6656); +var toIndexedObject = __webpack_require__(5656); +var indexOf = __webpack_require__(1318).indexOf; +var hiddenKeys = __webpack_require__(3501); + +module.exports = function (object, names) { + var O = toIndexedObject(object); + var i = 0; + var result = []; + var key; + for (key in O) !has(hiddenKeys, key) && has(O, key) && result.push(key); + // Don't enum bug & hidden keys + while (names.length > i) if (has(O, key = names[i++])) { + ~indexOf(result, key) || result.push(key); + } + return result; +}; + + +/***/ }), + +/***/ 1956: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var internalObjectKeys = __webpack_require__(6324); +var enumBugKeys = __webpack_require__(748); + +// `Object.keys` method +// https://tc39.es/ecma262/#sec-object.keys +module.exports = Object.keys || function keys(O) { + return internalObjectKeys(O, enumBugKeys); +}; + + +/***/ }), + +/***/ 5296: +/***/ (function(__unused_webpack_module, exports) { + +"use strict"; + +var nativePropertyIsEnumerable = {}.propertyIsEnumerable; +var getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor; + +// Nashorn ~ JDK8 bug +var NASHORN_BUG = getOwnPropertyDescriptor && !nativePropertyIsEnumerable.call({ 1: 2 }, 1); + +// `Object.prototype.propertyIsEnumerable` method implementation +// https://tc39.es/ecma262/#sec-object.prototype.propertyisenumerable +exports.f = NASHORN_BUG ? function propertyIsEnumerable(V) { + var descriptor = getOwnPropertyDescriptor(this, V); + return !!descriptor && descriptor.enumerable; +} : nativePropertyIsEnumerable; + + +/***/ }), + +/***/ 7674: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +/* eslint-disable no-proto -- safe */ +var anObject = __webpack_require__(9670); +var aPossiblePrototype = __webpack_require__(6077); + +// `Object.setPrototypeOf` method +// https://tc39.es/ecma262/#sec-object.setprototypeof +// Works with __proto__ only. Old v8 can't work with null proto objects. +module.exports = Object.setPrototypeOf || ('__proto__' in {} ? function () { + var CORRECT_SETTER = false; + var test = {}; + var setter; + try { + setter = Object.getOwnPropertyDescriptor(Object.prototype, '__proto__').set; + setter.call(test, []); + CORRECT_SETTER = test instanceof Array; + } catch (error) { /* empty */ } + return function setPrototypeOf(O, proto) { + anObject(O); + aPossiblePrototype(proto); + if (CORRECT_SETTER) setter.call(O, proto); + else O.__proto__ = proto; + return O; + }; +}() : undefined); + + +/***/ }), + +/***/ 288: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var TO_STRING_TAG_SUPPORT = __webpack_require__(1694); +var classof = __webpack_require__(648); + +// `Object.prototype.toString` method implementation +// https://tc39.es/ecma262/#sec-object.prototype.tostring +module.exports = TO_STRING_TAG_SUPPORT ? {}.toString : function toString() { + return '[object ' + classof(this) + ']'; +}; + + +/***/ }), + +/***/ 3887: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var getBuiltIn = __webpack_require__(5005); +var getOwnPropertyNamesModule = __webpack_require__(8006); +var getOwnPropertySymbolsModule = __webpack_require__(5181); +var anObject = __webpack_require__(9670); + +// all object keys, includes non-enumerable and symbols +module.exports = getBuiltIn('Reflect', 'ownKeys') || function ownKeys(it) { + var keys = getOwnPropertyNamesModule.f(anObject(it)); + var getOwnPropertySymbols = getOwnPropertySymbolsModule.f; + return getOwnPropertySymbols ? keys.concat(getOwnPropertySymbols(it)) : keys; +}; + + +/***/ }), + +/***/ 857: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var global = __webpack_require__(7854); + +module.exports = global; + + +/***/ }), + +/***/ 2248: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var redefine = __webpack_require__(1320); + +module.exports = function (target, src, options) { + for (var key in src) redefine(target, key, src[key], options); + return target; +}; + + +/***/ }), + +/***/ 1320: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var global = __webpack_require__(7854); +var createNonEnumerableProperty = __webpack_require__(8880); +var has = __webpack_require__(6656); +var setGlobal = __webpack_require__(3505); +var inspectSource = __webpack_require__(2788); +var InternalStateModule = __webpack_require__(9909); + +var getInternalState = InternalStateModule.get; +var enforceInternalState = InternalStateModule.enforce; +var TEMPLATE = String(String).split('String'); + +(module.exports = function (O, key, value, options) { + var unsafe = options ? !!options.unsafe : false; + var simple = options ? !!options.enumerable : false; + var noTargetGet = options ? !!options.noTargetGet : false; + var state; + if (typeof value == 'function') { + if (typeof key == 'string' && !has(value, 'name')) { + createNonEnumerableProperty(value, 'name', key); + } + state = enforceInternalState(value); + if (!state.source) { + state.source = TEMPLATE.join(typeof key == 'string' ? key : ''); + } + } + if (O === global) { + if (simple) O[key] = value; + else setGlobal(key, value); + return; + } else if (!unsafe) { + delete O[key]; + } else if (!noTargetGet && O[key]) { + simple = true; + } + if (simple) O[key] = value; + else createNonEnumerableProperty(O, key, value); +// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative +})(Function.prototype, 'toString', function toString() { + return typeof this == 'function' && getInternalState(this).source || inspectSource(this); +}); + + +/***/ }), + +/***/ 7651: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var classof = __webpack_require__(4326); +var regexpExec = __webpack_require__(2261); + +// `RegExpExec` abstract operation +// https://tc39.es/ecma262/#sec-regexpexec +module.exports = function (R, S) { + var exec = R.exec; + if (typeof exec === 'function') { + var result = exec.call(R, S); + if (typeof result !== 'object') { + throw TypeError('RegExp exec method returned something other than an Object or null'); + } + return result; + } + + if (classof(R) !== 'RegExp') { + throw TypeError('RegExp#exec called on incompatible receiver'); + } + + return regexpExec.call(R, S); +}; + + + +/***/ }), + +/***/ 2261: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var regexpFlags = __webpack_require__(7066); +var stickyHelpers = __webpack_require__(2999); + +var nativeExec = RegExp.prototype.exec; +// This always refers to the native implementation, because the +// String#replace polyfill uses ./fix-regexp-well-known-symbol-logic.js, +// which loads this file before patching the method. +var nativeReplace = String.prototype.replace; + +var patchedExec = nativeExec; + +var UPDATES_LAST_INDEX_WRONG = (function () { + var re1 = /a/; + var re2 = /b*/g; + nativeExec.call(re1, 'a'); + nativeExec.call(re2, 'a'); + return re1.lastIndex !== 0 || re2.lastIndex !== 0; +})(); + +var UNSUPPORTED_Y = stickyHelpers.UNSUPPORTED_Y || stickyHelpers.BROKEN_CARET; + +// nonparticipating capturing group, copied from es5-shim's String#split patch. +// eslint-disable-next-line regexp/no-assertion-capturing-group, regexp/no-empty-group -- required for testing +var NPCG_INCLUDED = /()??/.exec('')[1] !== undefined; + +var PATCH = UPDATES_LAST_INDEX_WRONG || NPCG_INCLUDED || UNSUPPORTED_Y; + +if (PATCH) { + patchedExec = function exec(str) { + var re = this; + var lastIndex, reCopy, match, i; + var sticky = UNSUPPORTED_Y && re.sticky; + var flags = regexpFlags.call(re); + var source = re.source; + var charsAdded = 0; + var strCopy = str; + + if (sticky) { + flags = flags.replace('y', ''); + if (flags.indexOf('g') === -1) { + flags += 'g'; + } + + strCopy = String(str).slice(re.lastIndex); + // Support anchored sticky behavior. + if (re.lastIndex > 0 && (!re.multiline || re.multiline && str[re.lastIndex - 1] !== '\n')) { + source = '(?: ' + source + ')'; + strCopy = ' ' + strCopy; + charsAdded++; + } + // ^(? + rx + ) is needed, in combination with some str slicing, to + // simulate the 'y' flag. + reCopy = new RegExp('^(?:' + source + ')', flags); + } + + if (NPCG_INCLUDED) { + reCopy = new RegExp('^' + source + '$(?!\\s)', flags); + } + if (UPDATES_LAST_INDEX_WRONG) lastIndex = re.lastIndex; + + match = nativeExec.call(sticky ? reCopy : re, strCopy); + + if (sticky) { + if (match) { + match.input = match.input.slice(charsAdded); + match[0] = match[0].slice(charsAdded); + match.index = re.lastIndex; + re.lastIndex += match[0].length; + } else re.lastIndex = 0; + } else if (UPDATES_LAST_INDEX_WRONG && match) { + re.lastIndex = re.global ? match.index + match[0].length : lastIndex; + } + if (NPCG_INCLUDED && match && match.length > 1) { + // Fix browsers whose `exec` methods don't consistently return `undefined` + // for NPCG, like IE8. NOTE: This doesn' work for /(.?)?/ + nativeReplace.call(match[0], reCopy, function () { + for (i = 1; i < arguments.length - 2; i++) { + if (arguments[i] === undefined) match[i] = undefined; + } + }); + } + + return match; + }; +} + +module.exports = patchedExec; + + +/***/ }), + +/***/ 7066: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var anObject = __webpack_require__(9670); + +// `RegExp.prototype.flags` getter implementation +// https://tc39.es/ecma262/#sec-get-regexp.prototype.flags +module.exports = function () { + var that = anObject(this); + var result = ''; + if (that.global) result += 'g'; + if (that.ignoreCase) result += 'i'; + if (that.multiline) result += 'm'; + if (that.dotAll) result += 's'; + if (that.unicode) result += 'u'; + if (that.sticky) result += 'y'; + return result; +}; + + +/***/ }), + +/***/ 2999: +/***/ (function(__unused_webpack_module, exports, __webpack_require__) { + +"use strict"; + + +var fails = __webpack_require__(7293); + +// babel-minify transpiles RegExp('a', 'y') -> /a/y and it causes SyntaxError, +// so we use an intermediate function. +function RE(s, f) { + return RegExp(s, f); +} + +exports.UNSUPPORTED_Y = fails(function () { + // babel-minify transpiles RegExp('a', 'y') -> /a/y and it causes SyntaxError + var re = RE('a', 'y'); + re.lastIndex = 2; + return re.exec('abcd') != null; +}); + +exports.BROKEN_CARET = fails(function () { + // https://bugzilla.mozilla.org/show_bug.cgi?id=773687 + var re = RE('^r', 'gy'); + re.lastIndex = 2; + return re.exec('str') != null; +}); + + +/***/ }), + +/***/ 4488: +/***/ (function(module) { + +// `RequireObjectCoercible` abstract operation +// https://tc39.es/ecma262/#sec-requireobjectcoercible +module.exports = function (it) { + if (it == undefined) throw TypeError("Can't call method on " + it); + return it; +}; + + +/***/ }), + +/***/ 3505: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var global = __webpack_require__(7854); +var createNonEnumerableProperty = __webpack_require__(8880); + +module.exports = function (key, value) { + try { + createNonEnumerableProperty(global, key, value); + } catch (error) { + global[key] = value; + } return value; +}; + + +/***/ }), + +/***/ 6340: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var getBuiltIn = __webpack_require__(5005); +var definePropertyModule = __webpack_require__(3070); +var wellKnownSymbol = __webpack_require__(5112); +var DESCRIPTORS = __webpack_require__(9781); + +var SPECIES = wellKnownSymbol('species'); + +module.exports = function (CONSTRUCTOR_NAME) { + var Constructor = getBuiltIn(CONSTRUCTOR_NAME); + var defineProperty = definePropertyModule.f; + + if (DESCRIPTORS && Constructor && !Constructor[SPECIES]) { + defineProperty(Constructor, SPECIES, { + configurable: true, + get: function () { return this; } + }); + } +}; + + +/***/ }), + +/***/ 8003: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var defineProperty = __webpack_require__(3070).f; +var has = __webpack_require__(6656); +var wellKnownSymbol = __webpack_require__(5112); + +var TO_STRING_TAG = wellKnownSymbol('toStringTag'); + +module.exports = function (it, TAG, STATIC) { + if (it && !has(it = STATIC ? it : it.prototype, TO_STRING_TAG)) { + defineProperty(it, TO_STRING_TAG, { configurable: true, value: TAG }); + } +}; + + +/***/ }), + +/***/ 6200: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var shared = __webpack_require__(2309); +var uid = __webpack_require__(9711); + +var keys = shared('keys'); + +module.exports = function (key) { + return keys[key] || (keys[key] = uid(key)); +}; + + +/***/ }), + +/***/ 5465: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var global = __webpack_require__(7854); +var setGlobal = __webpack_require__(3505); + +var SHARED = '__core-js_shared__'; +var store = global[SHARED] || setGlobal(SHARED, {}); + +module.exports = store; + + +/***/ }), + +/***/ 2309: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var IS_PURE = __webpack_require__(1913); +var store = __webpack_require__(5465); + +(module.exports = function (key, value) { + return store[key] || (store[key] = value !== undefined ? value : {}); +})('versions', []).push({ + version: '3.9.0', + mode: IS_PURE ? 'pure' : 'global', + copyright: '© 2021 Denis Pushkarev (zloirock.ru)' +}); + + +/***/ }), + +/***/ 6707: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var anObject = __webpack_require__(9670); +var aFunction = __webpack_require__(3099); +var wellKnownSymbol = __webpack_require__(5112); + +var SPECIES = wellKnownSymbol('species'); + +// `SpeciesConstructor` abstract operation +// https://tc39.es/ecma262/#sec-speciesconstructor +module.exports = function (O, defaultConstructor) { + var C = anObject(O).constructor; + var S; + return C === undefined || (S = anObject(C)[SPECIES]) == undefined ? defaultConstructor : aFunction(S); +}; + + +/***/ }), + +/***/ 8710: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var toInteger = __webpack_require__(9958); +var requireObjectCoercible = __webpack_require__(4488); + +// `String.prototype.{ codePointAt, at }` methods implementation +var createMethod = function (CONVERT_TO_STRING) { + return function ($this, pos) { + var S = String(requireObjectCoercible($this)); + var position = toInteger(pos); + var size = S.length; + var first, second; + if (position < 0 || position >= size) return CONVERT_TO_STRING ? '' : undefined; + first = S.charCodeAt(position); + return first < 0xD800 || first > 0xDBFF || position + 1 === size + || (second = S.charCodeAt(position + 1)) < 0xDC00 || second > 0xDFFF + ? CONVERT_TO_STRING ? S.charAt(position) : first + : CONVERT_TO_STRING ? S.slice(position, position + 2) : (first - 0xD800 << 10) + (second - 0xDC00) + 0x10000; + }; +}; + +module.exports = { + // `String.prototype.codePointAt` method + // https://tc39.es/ecma262/#sec-string.prototype.codepointat + codeAt: createMethod(false), + // `String.prototype.at` method + // https://github.com/mathiasbynens/String.prototype.at + charAt: createMethod(true) +}; + + +/***/ }), + +/***/ 3197: +/***/ (function(module) { + +"use strict"; + +// based on https://github.com/bestiejs/punycode.js/blob/master/punycode.js +var maxInt = 2147483647; // aka. 0x7FFFFFFF or 2^31-1 +var base = 36; +var tMin = 1; +var tMax = 26; +var skew = 38; +var damp = 700; +var initialBias = 72; +var initialN = 128; // 0x80 +var delimiter = '-'; // '\x2D' +var regexNonASCII = /[^\0-\u007E]/; // non-ASCII chars +var regexSeparators = /[.\u3002\uFF0E\uFF61]/g; // RFC 3490 separators +var OVERFLOW_ERROR = 'Overflow: input needs wider integers to process'; +var baseMinusTMin = base - tMin; +var floor = Math.floor; +var stringFromCharCode = String.fromCharCode; + +/** + * Creates an array containing the numeric code points of each Unicode + * character in the string. While JavaScript uses UCS-2 internally, + * this function will convert a pair of surrogate halves (each of which + * UCS-2 exposes as separate characters) into a single code point, + * matching UTF-16. + */ +var ucs2decode = function (string) { + var output = []; + var counter = 0; + var length = string.length; + while (counter < length) { + var value = string.charCodeAt(counter++); + if (value >= 0xD800 && value <= 0xDBFF && counter < length) { + // It's a high surrogate, and there is a next character. + var extra = string.charCodeAt(counter++); + if ((extra & 0xFC00) == 0xDC00) { // Low surrogate. + output.push(((value & 0x3FF) << 10) + (extra & 0x3FF) + 0x10000); + } else { + // It's an unmatched surrogate; only append this code unit, in case the + // next code unit is the high surrogate of a surrogate pair. + output.push(value); + counter--; + } + } else { + output.push(value); + } + } + return output; +}; + +/** + * Converts a digit/integer into a basic code point. + */ +var digitToBasic = function (digit) { + // 0..25 map to ASCII a..z or A..Z + // 26..35 map to ASCII 0..9 + return digit + 22 + 75 * (digit < 26); +}; + +/** + * Bias adaptation function as per section 3.4 of RFC 3492. + * https://tools.ietf.org/html/rfc3492#section-3.4 + */ +var adapt = function (delta, numPoints, firstTime) { + var k = 0; + delta = firstTime ? floor(delta / damp) : delta >> 1; + delta += floor(delta / numPoints); + for (; delta > baseMinusTMin * tMax >> 1; k += base) { + delta = floor(delta / baseMinusTMin); + } + return floor(k + (baseMinusTMin + 1) * delta / (delta + skew)); +}; + +/** + * Converts a string of Unicode symbols (e.g. a domain name label) to a + * Punycode string of ASCII-only symbols. + */ +// eslint-disable-next-line max-statements -- TODO +var encode = function (input) { + var output = []; + + // Convert the input in UCS-2 to an array of Unicode code points. + input = ucs2decode(input); + + // Cache the length. + var inputLength = input.length; + + // Initialize the state. + var n = initialN; + var delta = 0; + var bias = initialBias; + var i, currentValue; + + // Handle the basic code points. + for (i = 0; i < input.length; i++) { + currentValue = input[i]; + if (currentValue < 0x80) { + output.push(stringFromCharCode(currentValue)); + } + } + + var basicLength = output.length; // number of basic code points. + var handledCPCount = basicLength; // number of code points that have been handled; + + // Finish the basic string with a delimiter unless it's empty. + if (basicLength) { + output.push(delimiter); + } + + // Main encoding loop: + while (handledCPCount < inputLength) { + // All non-basic code points < n have been handled already. Find the next larger one: + var m = maxInt; + for (i = 0; i < input.length; i++) { + currentValue = input[i]; + if (currentValue >= n && currentValue < m) { + m = currentValue; + } + } + + // Increase `delta` enough to advance the decoder's state to , but guard against overflow. + var handledCPCountPlusOne = handledCPCount + 1; + if (m - n > floor((maxInt - delta) / handledCPCountPlusOne)) { + throw RangeError(OVERFLOW_ERROR); + } + + delta += (m - n) * handledCPCountPlusOne; + n = m; + + for (i = 0; i < input.length; i++) { + currentValue = input[i]; + if (currentValue < n && ++delta > maxInt) { + throw RangeError(OVERFLOW_ERROR); + } + if (currentValue == n) { + // Represent delta as a generalized variable-length integer. + var q = delta; + for (var k = base; /* no condition */; k += base) { + var t = k <= bias ? tMin : (k >= bias + tMax ? tMax : k - bias); + if (q < t) break; + var qMinusT = q - t; + var baseMinusT = base - t; + output.push(stringFromCharCode(digitToBasic(t + qMinusT % baseMinusT))); + q = floor(qMinusT / baseMinusT); + } + + output.push(stringFromCharCode(digitToBasic(q))); + bias = adapt(delta, handledCPCountPlusOne, handledCPCount == basicLength); + delta = 0; + ++handledCPCount; + } + } + + ++delta; + ++n; + } + return output.join(''); +}; + +module.exports = function (input) { + var encoded = []; + var labels = input.toLowerCase().replace(regexSeparators, '\u002E').split('.'); + var i, label; + for (i = 0; i < labels.length; i++) { + label = labels[i]; + encoded.push(regexNonASCII.test(label) ? 'xn--' + encode(label) : label); + } + return encoded.join('.'); +}; + + +/***/ }), + +/***/ 6091: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var fails = __webpack_require__(7293); +var whitespaces = __webpack_require__(1361); + +var non = '\u200B\u0085\u180E'; + +// check that a method works with the correct list +// of whitespaces and has a correct name +module.exports = function (METHOD_NAME) { + return fails(function () { + return !!whitespaces[METHOD_NAME]() || non[METHOD_NAME]() != non || whitespaces[METHOD_NAME].name !== METHOD_NAME; + }); +}; + + +/***/ }), + +/***/ 3111: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var requireObjectCoercible = __webpack_require__(4488); +var whitespaces = __webpack_require__(1361); + +var whitespace = '[' + whitespaces + ']'; +var ltrim = RegExp('^' + whitespace + whitespace + '*'); +var rtrim = RegExp(whitespace + whitespace + '*$'); + +// `String.prototype.{ trim, trimStart, trimEnd, trimLeft, trimRight }` methods implementation +var createMethod = function (TYPE) { + return function ($this) { + var string = String(requireObjectCoercible($this)); + if (TYPE & 1) string = string.replace(ltrim, ''); + if (TYPE & 2) string = string.replace(rtrim, ''); + return string; + }; +}; + +module.exports = { + // `String.prototype.{ trimLeft, trimStart }` methods + // https://tc39.es/ecma262/#sec-string.prototype.trimstart + start: createMethod(1), + // `String.prototype.{ trimRight, trimEnd }` methods + // https://tc39.es/ecma262/#sec-string.prototype.trimend + end: createMethod(2), + // `String.prototype.trim` method + // https://tc39.es/ecma262/#sec-string.prototype.trim + trim: createMethod(3) +}; + + +/***/ }), + +/***/ 1400: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var toInteger = __webpack_require__(9958); + +var max = Math.max; +var min = Math.min; + +// Helper for a popular repeating case of the spec: +// Let integer be ? ToInteger(index). +// If integer < 0, let result be max((length + integer), 0); else let result be min(integer, length). +module.exports = function (index, length) { + var integer = toInteger(index); + return integer < 0 ? max(integer + length, 0) : min(integer, length); +}; + + +/***/ }), + +/***/ 7067: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var toInteger = __webpack_require__(9958); +var toLength = __webpack_require__(7466); + +// `ToIndex` abstract operation +// https://tc39.es/ecma262/#sec-toindex +module.exports = function (it) { + if (it === undefined) return 0; + var number = toInteger(it); + var length = toLength(number); + if (number !== length) throw RangeError('Wrong length or index'); + return length; +}; + + +/***/ }), + +/***/ 5656: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +// toObject with fallback for non-array-like ES3 strings +var IndexedObject = __webpack_require__(8361); +var requireObjectCoercible = __webpack_require__(4488); + +module.exports = function (it) { + return IndexedObject(requireObjectCoercible(it)); +}; + + +/***/ }), + +/***/ 9958: +/***/ (function(module) { + +var ceil = Math.ceil; +var floor = Math.floor; + +// `ToInteger` abstract operation +// https://tc39.es/ecma262/#sec-tointeger +module.exports = function (argument) { + return isNaN(argument = +argument) ? 0 : (argument > 0 ? floor : ceil)(argument); +}; + + +/***/ }), + +/***/ 7466: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var toInteger = __webpack_require__(9958); + +var min = Math.min; + +// `ToLength` abstract operation +// https://tc39.es/ecma262/#sec-tolength +module.exports = function (argument) { + return argument > 0 ? min(toInteger(argument), 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991 +}; + + +/***/ }), + +/***/ 7908: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var requireObjectCoercible = __webpack_require__(4488); + +// `ToObject` abstract operation +// https://tc39.es/ecma262/#sec-toobject +module.exports = function (argument) { + return Object(requireObjectCoercible(argument)); +}; + + +/***/ }), + +/***/ 4590: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var toPositiveInteger = __webpack_require__(3002); + +module.exports = function (it, BYTES) { + var offset = toPositiveInteger(it); + if (offset % BYTES) throw RangeError('Wrong offset'); + return offset; +}; + + +/***/ }), + +/***/ 3002: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var toInteger = __webpack_require__(9958); + +module.exports = function (it) { + var result = toInteger(it); + if (result < 0) throw RangeError("The argument can't be less than 0"); + return result; +}; + + +/***/ }), + +/***/ 7593: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var isObject = __webpack_require__(111); + +// `ToPrimitive` abstract operation +// https://tc39.es/ecma262/#sec-toprimitive +// instead of the ES6 spec version, we didn't implement @@toPrimitive case +// and the second argument - flag - preferred type is a string +module.exports = function (input, PREFERRED_STRING) { + if (!isObject(input)) return input; + var fn, val; + if (PREFERRED_STRING && typeof (fn = input.toString) == 'function' && !isObject(val = fn.call(input))) return val; + if (typeof (fn = input.valueOf) == 'function' && !isObject(val = fn.call(input))) return val; + if (!PREFERRED_STRING && typeof (fn = input.toString) == 'function' && !isObject(val = fn.call(input))) return val; + throw TypeError("Can't convert object to primitive value"); +}; + + +/***/ }), + +/***/ 1694: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var wellKnownSymbol = __webpack_require__(5112); + +var TO_STRING_TAG = wellKnownSymbol('toStringTag'); +var test = {}; + +test[TO_STRING_TAG] = 'z'; + +module.exports = String(test) === '[object z]'; + + +/***/ }), + +/***/ 9843: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var $ = __webpack_require__(2109); +var global = __webpack_require__(7854); +var DESCRIPTORS = __webpack_require__(9781); +var TYPED_ARRAYS_CONSTRUCTORS_REQUIRES_WRAPPERS = __webpack_require__(3832); +var ArrayBufferViewCore = __webpack_require__(260); +var ArrayBufferModule = __webpack_require__(3331); +var anInstance = __webpack_require__(5787); +var createPropertyDescriptor = __webpack_require__(9114); +var createNonEnumerableProperty = __webpack_require__(8880); +var toLength = __webpack_require__(7466); +var toIndex = __webpack_require__(7067); +var toOffset = __webpack_require__(4590); +var toPrimitive = __webpack_require__(7593); +var has = __webpack_require__(6656); +var classof = __webpack_require__(648); +var isObject = __webpack_require__(111); +var create = __webpack_require__(30); +var setPrototypeOf = __webpack_require__(7674); +var getOwnPropertyNames = __webpack_require__(8006).f; +var typedArrayFrom = __webpack_require__(7321); +var forEach = __webpack_require__(2092).forEach; +var setSpecies = __webpack_require__(6340); +var definePropertyModule = __webpack_require__(3070); +var getOwnPropertyDescriptorModule = __webpack_require__(1236); +var InternalStateModule = __webpack_require__(9909); +var inheritIfRequired = __webpack_require__(9587); + +var getInternalState = InternalStateModule.get; +var setInternalState = InternalStateModule.set; +var nativeDefineProperty = definePropertyModule.f; +var nativeGetOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f; +var round = Math.round; +var RangeError = global.RangeError; +var ArrayBuffer = ArrayBufferModule.ArrayBuffer; +var DataView = ArrayBufferModule.DataView; +var NATIVE_ARRAY_BUFFER_VIEWS = ArrayBufferViewCore.NATIVE_ARRAY_BUFFER_VIEWS; +var TYPED_ARRAY_TAG = ArrayBufferViewCore.TYPED_ARRAY_TAG; +var TypedArray = ArrayBufferViewCore.TypedArray; +var TypedArrayPrototype = ArrayBufferViewCore.TypedArrayPrototype; +var aTypedArrayConstructor = ArrayBufferViewCore.aTypedArrayConstructor; +var isTypedArray = ArrayBufferViewCore.isTypedArray; +var BYTES_PER_ELEMENT = 'BYTES_PER_ELEMENT'; +var WRONG_LENGTH = 'Wrong length'; + +var fromList = function (C, list) { + var index = 0; + var length = list.length; + var result = new (aTypedArrayConstructor(C))(length); + while (length > index) result[index] = list[index++]; + return result; +}; + +var addGetter = function (it, key) { + nativeDefineProperty(it, key, { get: function () { + return getInternalState(this)[key]; + } }); +}; + +var isArrayBuffer = function (it) { + var klass; + return it instanceof ArrayBuffer || (klass = classof(it)) == 'ArrayBuffer' || klass == 'SharedArrayBuffer'; +}; + +var isTypedArrayIndex = function (target, key) { + return isTypedArray(target) + && typeof key != 'symbol' + && key in target + && String(+key) == String(key); +}; + +var wrappedGetOwnPropertyDescriptor = function getOwnPropertyDescriptor(target, key) { + return isTypedArrayIndex(target, key = toPrimitive(key, true)) + ? createPropertyDescriptor(2, target[key]) + : nativeGetOwnPropertyDescriptor(target, key); +}; + +var wrappedDefineProperty = function defineProperty(target, key, descriptor) { + if (isTypedArrayIndex(target, key = toPrimitive(key, true)) + && isObject(descriptor) + && has(descriptor, 'value') + && !has(descriptor, 'get') + && !has(descriptor, 'set') + // TODO: add validation descriptor w/o calling accessors + && !descriptor.configurable + && (!has(descriptor, 'writable') || descriptor.writable) + && (!has(descriptor, 'enumerable') || descriptor.enumerable) + ) { + target[key] = descriptor.value; + return target; + } return nativeDefineProperty(target, key, descriptor); +}; + +if (DESCRIPTORS) { + if (!NATIVE_ARRAY_BUFFER_VIEWS) { + getOwnPropertyDescriptorModule.f = wrappedGetOwnPropertyDescriptor; + definePropertyModule.f = wrappedDefineProperty; + addGetter(TypedArrayPrototype, 'buffer'); + addGetter(TypedArrayPrototype, 'byteOffset'); + addGetter(TypedArrayPrototype, 'byteLength'); + addGetter(TypedArrayPrototype, 'length'); + } + + $({ target: 'Object', stat: true, forced: !NATIVE_ARRAY_BUFFER_VIEWS }, { + getOwnPropertyDescriptor: wrappedGetOwnPropertyDescriptor, + defineProperty: wrappedDefineProperty + }); + + module.exports = function (TYPE, wrapper, CLAMPED) { + var BYTES = TYPE.match(/\d+$/)[0] / 8; + var CONSTRUCTOR_NAME = TYPE + (CLAMPED ? 'Clamped' : '') + 'Array'; + var GETTER = 'get' + TYPE; + var SETTER = 'set' + TYPE; + var NativeTypedArrayConstructor = global[CONSTRUCTOR_NAME]; + var TypedArrayConstructor = NativeTypedArrayConstructor; + var TypedArrayConstructorPrototype = TypedArrayConstructor && TypedArrayConstructor.prototype; + var exported = {}; + + var getter = function (that, index) { + var data = getInternalState(that); + return data.view[GETTER](index * BYTES + data.byteOffset, true); + }; + + var setter = function (that, index, value) { + var data = getInternalState(that); + if (CLAMPED) value = (value = round(value)) < 0 ? 0 : value > 0xFF ? 0xFF : value & 0xFF; + data.view[SETTER](index * BYTES + data.byteOffset, value, true); + }; + + var addElement = function (that, index) { + nativeDefineProperty(that, index, { + get: function () { + return getter(this, index); + }, + set: function (value) { + return setter(this, index, value); + }, + enumerable: true + }); + }; + + if (!NATIVE_ARRAY_BUFFER_VIEWS) { + TypedArrayConstructor = wrapper(function (that, data, offset, $length) { + anInstance(that, TypedArrayConstructor, CONSTRUCTOR_NAME); + var index = 0; + var byteOffset = 0; + var buffer, byteLength, length; + if (!isObject(data)) { + length = toIndex(data); + byteLength = length * BYTES; + buffer = new ArrayBuffer(byteLength); + } else if (isArrayBuffer(data)) { + buffer = data; + byteOffset = toOffset(offset, BYTES); + var $len = data.byteLength; + if ($length === undefined) { + if ($len % BYTES) throw RangeError(WRONG_LENGTH); + byteLength = $len - byteOffset; + if (byteLength < 0) throw RangeError(WRONG_LENGTH); + } else { + byteLength = toLength($length) * BYTES; + if (byteLength + byteOffset > $len) throw RangeError(WRONG_LENGTH); + } + length = byteLength / BYTES; + } else if (isTypedArray(data)) { + return fromList(TypedArrayConstructor, data); + } else { + return typedArrayFrom.call(TypedArrayConstructor, data); + } + setInternalState(that, { + buffer: buffer, + byteOffset: byteOffset, + byteLength: byteLength, + length: length, + view: new DataView(buffer) + }); + while (index < length) addElement(that, index++); + }); + + if (setPrototypeOf) setPrototypeOf(TypedArrayConstructor, TypedArray); + TypedArrayConstructorPrototype = TypedArrayConstructor.prototype = create(TypedArrayPrototype); + } else if (TYPED_ARRAYS_CONSTRUCTORS_REQUIRES_WRAPPERS) { + TypedArrayConstructor = wrapper(function (dummy, data, typedArrayOffset, $length) { + anInstance(dummy, TypedArrayConstructor, CONSTRUCTOR_NAME); + return inheritIfRequired(function () { + if (!isObject(data)) return new NativeTypedArrayConstructor(toIndex(data)); + if (isArrayBuffer(data)) return $length !== undefined + ? new NativeTypedArrayConstructor(data, toOffset(typedArrayOffset, BYTES), $length) + : typedArrayOffset !== undefined + ? new NativeTypedArrayConstructor(data, toOffset(typedArrayOffset, BYTES)) + : new NativeTypedArrayConstructor(data); + if (isTypedArray(data)) return fromList(TypedArrayConstructor, data); + return typedArrayFrom.call(TypedArrayConstructor, data); + }(), dummy, TypedArrayConstructor); + }); + + if (setPrototypeOf) setPrototypeOf(TypedArrayConstructor, TypedArray); + forEach(getOwnPropertyNames(NativeTypedArrayConstructor), function (key) { + if (!(key in TypedArrayConstructor)) { + createNonEnumerableProperty(TypedArrayConstructor, key, NativeTypedArrayConstructor[key]); + } + }); + TypedArrayConstructor.prototype = TypedArrayConstructorPrototype; + } + + if (TypedArrayConstructorPrototype.constructor !== TypedArrayConstructor) { + createNonEnumerableProperty(TypedArrayConstructorPrototype, 'constructor', TypedArrayConstructor); + } + + if (TYPED_ARRAY_TAG) { + createNonEnumerableProperty(TypedArrayConstructorPrototype, TYPED_ARRAY_TAG, CONSTRUCTOR_NAME); + } + + exported[CONSTRUCTOR_NAME] = TypedArrayConstructor; + + $({ + global: true, forced: TypedArrayConstructor != NativeTypedArrayConstructor, sham: !NATIVE_ARRAY_BUFFER_VIEWS + }, exported); + + if (!(BYTES_PER_ELEMENT in TypedArrayConstructor)) { + createNonEnumerableProperty(TypedArrayConstructor, BYTES_PER_ELEMENT, BYTES); + } + + if (!(BYTES_PER_ELEMENT in TypedArrayConstructorPrototype)) { + createNonEnumerableProperty(TypedArrayConstructorPrototype, BYTES_PER_ELEMENT, BYTES); + } + + setSpecies(CONSTRUCTOR_NAME); + }; +} else module.exports = function () { /* empty */ }; + + +/***/ }), + +/***/ 3832: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +/* eslint-disable no-new -- required for testing */ +var global = __webpack_require__(7854); +var fails = __webpack_require__(7293); +var checkCorrectnessOfIteration = __webpack_require__(7072); +var NATIVE_ARRAY_BUFFER_VIEWS = __webpack_require__(260).NATIVE_ARRAY_BUFFER_VIEWS; + +var ArrayBuffer = global.ArrayBuffer; +var Int8Array = global.Int8Array; + +module.exports = !NATIVE_ARRAY_BUFFER_VIEWS || !fails(function () { + Int8Array(1); +}) || !fails(function () { + new Int8Array(-1); +}) || !checkCorrectnessOfIteration(function (iterable) { + new Int8Array(); + new Int8Array(null); + new Int8Array(1.5); + new Int8Array(iterable); +}, true) || fails(function () { + // Safari (11+) bug - a reason why even Safari 13 should load a typed array polyfill + return new Int8Array(new ArrayBuffer(2), 1, undefined).length !== 1; +}); + + +/***/ }), + +/***/ 3074: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var aTypedArrayConstructor = __webpack_require__(260).aTypedArrayConstructor; +var speciesConstructor = __webpack_require__(6707); + +module.exports = function (instance, list) { + var C = speciesConstructor(instance, instance.constructor); + var index = 0; + var length = list.length; + var result = new (aTypedArrayConstructor(C))(length); + while (length > index) result[index] = list[index++]; + return result; +}; + + +/***/ }), + +/***/ 7321: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var toObject = __webpack_require__(7908); +var toLength = __webpack_require__(7466); +var getIteratorMethod = __webpack_require__(1246); +var isArrayIteratorMethod = __webpack_require__(7659); +var bind = __webpack_require__(9974); +var aTypedArrayConstructor = __webpack_require__(260).aTypedArrayConstructor; + +module.exports = function from(source /* , mapfn, thisArg */) { + var O = toObject(source); + var argumentsLength = arguments.length; + var mapfn = argumentsLength > 1 ? arguments[1] : undefined; + var mapping = mapfn !== undefined; + var iteratorMethod = getIteratorMethod(O); + var i, length, result, step, iterator, next; + if (iteratorMethod != undefined && !isArrayIteratorMethod(iteratorMethod)) { + iterator = iteratorMethod.call(O); + next = iterator.next; + O = []; + while (!(step = next.call(iterator)).done) { + O.push(step.value); + } + } + if (mapping && argumentsLength > 2) { + mapfn = bind(mapfn, arguments[2], 2); + } + length = toLength(O.length); + result = new (aTypedArrayConstructor(this))(length); + for (i = 0; length > i; i++) { + result[i] = mapping ? mapfn(O[i], i) : O[i]; + } + return result; +}; + + +/***/ }), + +/***/ 9711: +/***/ (function(module) { + +var id = 0; +var postfix = Math.random(); + +module.exports = function (key) { + return 'Symbol(' + String(key === undefined ? '' : key) + ')_' + (++id + postfix).toString(36); +}; + + +/***/ }), + +/***/ 3307: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var NATIVE_SYMBOL = __webpack_require__(133); + +module.exports = NATIVE_SYMBOL + /* global Symbol -- safe */ + && !Symbol.sham + && typeof Symbol.iterator == 'symbol'; + + +/***/ }), + +/***/ 5112: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var global = __webpack_require__(7854); +var shared = __webpack_require__(2309); +var has = __webpack_require__(6656); +var uid = __webpack_require__(9711); +var NATIVE_SYMBOL = __webpack_require__(133); +var USE_SYMBOL_AS_UID = __webpack_require__(3307); + +var WellKnownSymbolsStore = shared('wks'); +var Symbol = global.Symbol; +var createWellKnownSymbol = USE_SYMBOL_AS_UID ? Symbol : Symbol && Symbol.withoutSetter || uid; + +module.exports = function (name) { + if (!has(WellKnownSymbolsStore, name)) { + if (NATIVE_SYMBOL && has(Symbol, name)) WellKnownSymbolsStore[name] = Symbol[name]; + else WellKnownSymbolsStore[name] = createWellKnownSymbol('Symbol.' + name); + } return WellKnownSymbolsStore[name]; +}; + + +/***/ }), + +/***/ 1361: +/***/ (function(module) { + +// a string of all valid unicode whitespaces +module.exports = '\u0009\u000A\u000B\u000C\u000D\u0020\u00A0\u1680\u2000\u2001\u2002' + + '\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\u2028\u2029\uFEFF'; + + +/***/ }), + +/***/ 8264: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var $ = __webpack_require__(2109); +var global = __webpack_require__(7854); +var arrayBufferModule = __webpack_require__(3331); +var setSpecies = __webpack_require__(6340); + +var ARRAY_BUFFER = 'ArrayBuffer'; +var ArrayBuffer = arrayBufferModule[ARRAY_BUFFER]; +var NativeArrayBuffer = global[ARRAY_BUFFER]; + +// `ArrayBuffer` constructor +// https://tc39.es/ecma262/#sec-arraybuffer-constructor +$({ global: true, forced: NativeArrayBuffer !== ArrayBuffer }, { + ArrayBuffer: ArrayBuffer +}); + +setSpecies(ARRAY_BUFFER); + + +/***/ }), + +/***/ 2222: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var $ = __webpack_require__(2109); +var fails = __webpack_require__(7293); +var isArray = __webpack_require__(3157); +var isObject = __webpack_require__(111); +var toObject = __webpack_require__(7908); +var toLength = __webpack_require__(7466); +var createProperty = __webpack_require__(6135); +var arraySpeciesCreate = __webpack_require__(5417); +var arrayMethodHasSpeciesSupport = __webpack_require__(1194); +var wellKnownSymbol = __webpack_require__(5112); +var V8_VERSION = __webpack_require__(7392); + +var IS_CONCAT_SPREADABLE = wellKnownSymbol('isConcatSpreadable'); +var MAX_SAFE_INTEGER = 0x1FFFFFFFFFFFFF; +var MAXIMUM_ALLOWED_INDEX_EXCEEDED = 'Maximum allowed index exceeded'; + +// We can't use this feature detection in V8 since it causes +// deoptimization and serious performance degradation +// https://github.com/zloirock/core-js/issues/679 +var IS_CONCAT_SPREADABLE_SUPPORT = V8_VERSION >= 51 || !fails(function () { + var array = []; + array[IS_CONCAT_SPREADABLE] = false; + return array.concat()[0] !== array; +}); + +var SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('concat'); + +var isConcatSpreadable = function (O) { + if (!isObject(O)) return false; + var spreadable = O[IS_CONCAT_SPREADABLE]; + return spreadable !== undefined ? !!spreadable : isArray(O); +}; + +var FORCED = !IS_CONCAT_SPREADABLE_SUPPORT || !SPECIES_SUPPORT; + +// `Array.prototype.concat` method +// https://tc39.es/ecma262/#sec-array.prototype.concat +// with adding support of @@isConcatSpreadable and @@species +$({ target: 'Array', proto: true, forced: FORCED }, { + // eslint-disable-next-line no-unused-vars -- required for `.length` + concat: function concat(arg) { + var O = toObject(this); + var A = arraySpeciesCreate(O, 0); + var n = 0; + var i, k, length, len, E; + for (i = -1, length = arguments.length; i < length; i++) { + E = i === -1 ? O : arguments[i]; + if (isConcatSpreadable(E)) { + len = toLength(E.length); + if (n + len > MAX_SAFE_INTEGER) throw TypeError(MAXIMUM_ALLOWED_INDEX_EXCEEDED); + for (k = 0; k < len; k++, n++) if (k in E) createProperty(A, n, E[k]); + } else { + if (n >= MAX_SAFE_INTEGER) throw TypeError(MAXIMUM_ALLOWED_INDEX_EXCEEDED); + createProperty(A, n++, E); + } + } + A.length = n; + return A; + } +}); + + +/***/ }), + +/***/ 7327: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var $ = __webpack_require__(2109); +var $filter = __webpack_require__(2092).filter; +var arrayMethodHasSpeciesSupport = __webpack_require__(1194); + +var HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('filter'); + +// `Array.prototype.filter` method +// https://tc39.es/ecma262/#sec-array.prototype.filter +// with adding support of @@species +$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT }, { + filter: function filter(callbackfn /* , thisArg */) { + return $filter(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined); + } +}); + + +/***/ }), + +/***/ 2772: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var $ = __webpack_require__(2109); +var $indexOf = __webpack_require__(1318).indexOf; +var arrayMethodIsStrict = __webpack_require__(9341); + +var nativeIndexOf = [].indexOf; + +var NEGATIVE_ZERO = !!nativeIndexOf && 1 / [1].indexOf(1, -0) < 0; +var STRICT_METHOD = arrayMethodIsStrict('indexOf'); + +// `Array.prototype.indexOf` method +// https://tc39.es/ecma262/#sec-array.prototype.indexof +$({ target: 'Array', proto: true, forced: NEGATIVE_ZERO || !STRICT_METHOD }, { + indexOf: function indexOf(searchElement /* , fromIndex = 0 */) { + return NEGATIVE_ZERO + // convert -0 to +0 + ? nativeIndexOf.apply(this, arguments) || 0 + : $indexOf(this, searchElement, arguments.length > 1 ? arguments[1] : undefined); + } +}); + + +/***/ }), + +/***/ 6992: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var toIndexedObject = __webpack_require__(5656); +var addToUnscopables = __webpack_require__(1223); +var Iterators = __webpack_require__(7497); +var InternalStateModule = __webpack_require__(9909); +var defineIterator = __webpack_require__(654); + +var ARRAY_ITERATOR = 'Array Iterator'; +var setInternalState = InternalStateModule.set; +var getInternalState = InternalStateModule.getterFor(ARRAY_ITERATOR); + +// `Array.prototype.entries` method +// https://tc39.es/ecma262/#sec-array.prototype.entries +// `Array.prototype.keys` method +// https://tc39.es/ecma262/#sec-array.prototype.keys +// `Array.prototype.values` method +// https://tc39.es/ecma262/#sec-array.prototype.values +// `Array.prototype[@@iterator]` method +// https://tc39.es/ecma262/#sec-array.prototype-@@iterator +// `CreateArrayIterator` internal method +// https://tc39.es/ecma262/#sec-createarrayiterator +module.exports = defineIterator(Array, 'Array', function (iterated, kind) { + setInternalState(this, { + type: ARRAY_ITERATOR, + target: toIndexedObject(iterated), // target + index: 0, // next index + kind: kind // kind + }); +// `%ArrayIteratorPrototype%.next` method +// https://tc39.es/ecma262/#sec-%arrayiteratorprototype%.next +}, function () { + var state = getInternalState(this); + var target = state.target; + var kind = state.kind; + var index = state.index++; + if (!target || index >= target.length) { + state.target = undefined; + return { value: undefined, done: true }; + } + if (kind == 'keys') return { value: index, done: false }; + if (kind == 'values') return { value: target[index], done: false }; + return { value: [index, target[index]], done: false }; +}, 'values'); + +// argumentsList[@@iterator] is %ArrayProto_values% +// https://tc39.es/ecma262/#sec-createunmappedargumentsobject +// https://tc39.es/ecma262/#sec-createmappedargumentsobject +Iterators.Arguments = Iterators.Array; + +// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables +addToUnscopables('keys'); +addToUnscopables('values'); +addToUnscopables('entries'); + + +/***/ }), + +/***/ 1249: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var $ = __webpack_require__(2109); +var $map = __webpack_require__(2092).map; +var arrayMethodHasSpeciesSupport = __webpack_require__(1194); + +var HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('map'); + +// `Array.prototype.map` method +// https://tc39.es/ecma262/#sec-array.prototype.map +// with adding support of @@species +$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT }, { + map: function map(callbackfn /* , thisArg */) { + return $map(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined); + } +}); + + +/***/ }), + +/***/ 7042: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var $ = __webpack_require__(2109); +var isObject = __webpack_require__(111); +var isArray = __webpack_require__(3157); +var toAbsoluteIndex = __webpack_require__(1400); +var toLength = __webpack_require__(7466); +var toIndexedObject = __webpack_require__(5656); +var createProperty = __webpack_require__(6135); +var wellKnownSymbol = __webpack_require__(5112); +var arrayMethodHasSpeciesSupport = __webpack_require__(1194); + +var HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('slice'); + +var SPECIES = wellKnownSymbol('species'); +var nativeSlice = [].slice; +var max = Math.max; + +// `Array.prototype.slice` method +// https://tc39.es/ecma262/#sec-array.prototype.slice +// fallback for not array-like ES3 strings and DOM objects +$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT }, { + slice: function slice(start, end) { + var O = toIndexedObject(this); + var length = toLength(O.length); + var k = toAbsoluteIndex(start, length); + var fin = toAbsoluteIndex(end === undefined ? length : end, length); + // inline `ArraySpeciesCreate` for usage native `Array#slice` where it's possible + var Constructor, result, n; + if (isArray(O)) { + Constructor = O.constructor; + // cross-realm fallback + if (typeof Constructor == 'function' && (Constructor === Array || isArray(Constructor.prototype))) { + Constructor = undefined; + } else if (isObject(Constructor)) { + Constructor = Constructor[SPECIES]; + if (Constructor === null) Constructor = undefined; + } + if (Constructor === Array || Constructor === undefined) { + return nativeSlice.call(O, k, fin); + } + } + result = new (Constructor === undefined ? Array : Constructor)(max(fin - k, 0)); + for (n = 0; k < fin; k++, n++) if (k in O) createProperty(result, n, O[k]); + result.length = n; + return result; + } +}); + + +/***/ }), + +/***/ 561: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var $ = __webpack_require__(2109); +var toAbsoluteIndex = __webpack_require__(1400); +var toInteger = __webpack_require__(9958); +var toLength = __webpack_require__(7466); +var toObject = __webpack_require__(7908); +var arraySpeciesCreate = __webpack_require__(5417); +var createProperty = __webpack_require__(6135); +var arrayMethodHasSpeciesSupport = __webpack_require__(1194); + +var HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('splice'); + +var max = Math.max; +var min = Math.min; +var MAX_SAFE_INTEGER = 0x1FFFFFFFFFFFFF; +var MAXIMUM_ALLOWED_LENGTH_EXCEEDED = 'Maximum allowed length exceeded'; + +// `Array.prototype.splice` method +// https://tc39.es/ecma262/#sec-array.prototype.splice +// with adding support of @@species +$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT }, { + splice: function splice(start, deleteCount /* , ...items */) { + var O = toObject(this); + var len = toLength(O.length); + var actualStart = toAbsoluteIndex(start, len); + var argumentsLength = arguments.length; + var insertCount, actualDeleteCount, A, k, from, to; + if (argumentsLength === 0) { + insertCount = actualDeleteCount = 0; + } else if (argumentsLength === 1) { + insertCount = 0; + actualDeleteCount = len - actualStart; + } else { + insertCount = argumentsLength - 2; + actualDeleteCount = min(max(toInteger(deleteCount), 0), len - actualStart); + } + if (len + insertCount - actualDeleteCount > MAX_SAFE_INTEGER) { + throw TypeError(MAXIMUM_ALLOWED_LENGTH_EXCEEDED); + } + A = arraySpeciesCreate(O, actualDeleteCount); + for (k = 0; k < actualDeleteCount; k++) { + from = actualStart + k; + if (from in O) createProperty(A, k, O[from]); + } + A.length = actualDeleteCount; + if (insertCount < actualDeleteCount) { + for (k = actualStart; k < len - actualDeleteCount; k++) { + from = k + actualDeleteCount; + to = k + insertCount; + if (from in O) O[to] = O[from]; + else delete O[to]; + } + for (k = len; k > len - actualDeleteCount + insertCount; k--) delete O[k - 1]; + } else if (insertCount > actualDeleteCount) { + for (k = len - actualDeleteCount; k > actualStart; k--) { + from = k + actualDeleteCount - 1; + to = k + insertCount - 1; + if (from in O) O[to] = O[from]; + else delete O[to]; + } + } + for (k = 0; k < insertCount; k++) { + O[k + actualStart] = arguments[k + 2]; + } + O.length = len - actualDeleteCount + insertCount; + return A; + } +}); + + +/***/ }), + +/***/ 8309: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +var DESCRIPTORS = __webpack_require__(9781); +var defineProperty = __webpack_require__(3070).f; + +var FunctionPrototype = Function.prototype; +var FunctionPrototypeToString = FunctionPrototype.toString; +var nameRE = /^\s*function ([^ (]*)/; +var NAME = 'name'; + +// Function instances `.name` property +// https://tc39.es/ecma262/#sec-function-instances-name +if (DESCRIPTORS && !(NAME in FunctionPrototype)) { + defineProperty(FunctionPrototype, NAME, { + configurable: true, + get: function () { + try { + return FunctionPrototypeToString.call(this).match(nameRE)[1]; + } catch (error) { + return ''; + } + } + }); +} + + +/***/ }), + +/***/ 489: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +var $ = __webpack_require__(2109); +var fails = __webpack_require__(7293); +var toObject = __webpack_require__(7908); +var nativeGetPrototypeOf = __webpack_require__(9518); +var CORRECT_PROTOTYPE_GETTER = __webpack_require__(8544); + +var FAILS_ON_PRIMITIVES = fails(function () { nativeGetPrototypeOf(1); }); + +// `Object.getPrototypeOf` method +// https://tc39.es/ecma262/#sec-object.getprototypeof +$({ target: 'Object', stat: true, forced: FAILS_ON_PRIMITIVES, sham: !CORRECT_PROTOTYPE_GETTER }, { + getPrototypeOf: function getPrototypeOf(it) { + return nativeGetPrototypeOf(toObject(it)); + } +}); + + + +/***/ }), + +/***/ 1539: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +var TO_STRING_TAG_SUPPORT = __webpack_require__(1694); +var redefine = __webpack_require__(1320); +var toString = __webpack_require__(288); + +// `Object.prototype.toString` method +// https://tc39.es/ecma262/#sec-object.prototype.tostring +if (!TO_STRING_TAG_SUPPORT) { + redefine(Object.prototype, 'toString', toString, { unsafe: true }); +} + + +/***/ }), + +/***/ 4916: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var $ = __webpack_require__(2109); +var exec = __webpack_require__(2261); + +// `RegExp.prototype.exec` method +// https://tc39.es/ecma262/#sec-regexp.prototype.exec +$({ target: 'RegExp', proto: true, forced: /./.exec !== exec }, { + exec: exec +}); + + +/***/ }), + +/***/ 9714: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var redefine = __webpack_require__(1320); +var anObject = __webpack_require__(9670); +var fails = __webpack_require__(7293); +var flags = __webpack_require__(7066); + +var TO_STRING = 'toString'; +var RegExpPrototype = RegExp.prototype; +var nativeToString = RegExpPrototype[TO_STRING]; + +var NOT_GENERIC = fails(function () { return nativeToString.call({ source: 'a', flags: 'b' }) != '/a/b'; }); +// FF44- RegExp#toString has a wrong name +var INCORRECT_NAME = nativeToString.name != TO_STRING; + +// `RegExp.prototype.toString` method +// https://tc39.es/ecma262/#sec-regexp.prototype.tostring +if (NOT_GENERIC || INCORRECT_NAME) { + redefine(RegExp.prototype, TO_STRING, function toString() { + var R = anObject(this); + var p = String(R.source); + var rf = R.flags; + var f = String(rf === undefined && R instanceof RegExp && !('flags' in RegExpPrototype) ? flags.call(R) : rf); + return '/' + p + '/' + f; + }, { unsafe: true }); +} + + +/***/ }), + +/***/ 8783: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var charAt = __webpack_require__(8710).charAt; +var InternalStateModule = __webpack_require__(9909); +var defineIterator = __webpack_require__(654); + +var STRING_ITERATOR = 'String Iterator'; +var setInternalState = InternalStateModule.set; +var getInternalState = InternalStateModule.getterFor(STRING_ITERATOR); + +// `String.prototype[@@iterator]` method +// https://tc39.es/ecma262/#sec-string.prototype-@@iterator +defineIterator(String, 'String', function (iterated) { + setInternalState(this, { + type: STRING_ITERATOR, + string: String(iterated), + index: 0 + }); +// `%StringIteratorPrototype%.next` method +// https://tc39.es/ecma262/#sec-%stringiteratorprototype%.next +}, function next() { + var state = getInternalState(this); + var string = state.string; + var index = state.index; + var point; + if (index >= string.length) return { value: undefined, done: true }; + point = charAt(string, index); + state.index += point.length; + return { value: point, done: false }; +}); + + +/***/ }), + +/***/ 4723: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var fixRegExpWellKnownSymbolLogic = __webpack_require__(7007); +var anObject = __webpack_require__(9670); +var toLength = __webpack_require__(7466); +var requireObjectCoercible = __webpack_require__(4488); +var advanceStringIndex = __webpack_require__(1530); +var regExpExec = __webpack_require__(7651); + +// @@match logic +fixRegExpWellKnownSymbolLogic('match', 1, function (MATCH, nativeMatch, maybeCallNative) { + return [ + // `String.prototype.match` method + // https://tc39.es/ecma262/#sec-string.prototype.match + function match(regexp) { + var O = requireObjectCoercible(this); + var matcher = regexp == undefined ? undefined : regexp[MATCH]; + return matcher !== undefined ? matcher.call(regexp, O) : new RegExp(regexp)[MATCH](String(O)); + }, + // `RegExp.prototype[@@match]` method + // https://tc39.es/ecma262/#sec-regexp.prototype-@@match + function (regexp) { + var res = maybeCallNative(nativeMatch, regexp, this); + if (res.done) return res.value; + + var rx = anObject(regexp); + var S = String(this); + + if (!rx.global) return regExpExec(rx, S); + + var fullUnicode = rx.unicode; + rx.lastIndex = 0; + var A = []; + var n = 0; + var result; + while ((result = regExpExec(rx, S)) !== null) { + var matchStr = String(result[0]); + A[n] = matchStr; + if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode); + n++; + } + return n === 0 ? null : A; + } + ]; +}); + + +/***/ }), + +/***/ 5306: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var fixRegExpWellKnownSymbolLogic = __webpack_require__(7007); +var anObject = __webpack_require__(9670); +var toLength = __webpack_require__(7466); +var toInteger = __webpack_require__(9958); +var requireObjectCoercible = __webpack_require__(4488); +var advanceStringIndex = __webpack_require__(1530); +var getSubstitution = __webpack_require__(647); +var regExpExec = __webpack_require__(7651); + +var max = Math.max; +var min = Math.min; + +var maybeToString = function (it) { + return it === undefined ? it : String(it); +}; + +// @@replace logic +fixRegExpWellKnownSymbolLogic('replace', 2, function (REPLACE, nativeReplace, maybeCallNative, reason) { + var REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE = reason.REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE; + var REPLACE_KEEPS_$0 = reason.REPLACE_KEEPS_$0; + var UNSAFE_SUBSTITUTE = REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE ? '$' : '$0'; + + return [ + // `String.prototype.replace` method + // https://tc39.es/ecma262/#sec-string.prototype.replace + function replace(searchValue, replaceValue) { + var O = requireObjectCoercible(this); + var replacer = searchValue == undefined ? undefined : searchValue[REPLACE]; + return replacer !== undefined + ? replacer.call(searchValue, O, replaceValue) + : nativeReplace.call(String(O), searchValue, replaceValue); + }, + // `RegExp.prototype[@@replace]` method + // https://tc39.es/ecma262/#sec-regexp.prototype-@@replace + function (regexp, replaceValue) { + if ( + (!REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE && REPLACE_KEEPS_$0) || + (typeof replaceValue === 'string' && replaceValue.indexOf(UNSAFE_SUBSTITUTE) === -1) + ) { + var res = maybeCallNative(nativeReplace, regexp, this, replaceValue); + if (res.done) return res.value; + } + + var rx = anObject(regexp); + var S = String(this); + + var functionalReplace = typeof replaceValue === 'function'; + if (!functionalReplace) replaceValue = String(replaceValue); + + var global = rx.global; + if (global) { + var fullUnicode = rx.unicode; + rx.lastIndex = 0; + } + var results = []; + while (true) { + var result = regExpExec(rx, S); + if (result === null) break; + + results.push(result); + if (!global) break; + + var matchStr = String(result[0]); + if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode); + } + + var accumulatedResult = ''; + var nextSourcePosition = 0; + for (var i = 0; i < results.length; i++) { + result = results[i]; + + var matched = String(result[0]); + var position = max(min(toInteger(result.index), S.length), 0); + var captures = []; + // NOTE: This is equivalent to + // captures = result.slice(1).map(maybeToString) + // but for some reason `nativeSlice.call(result, 1, result.length)` (called in + // the slice polyfill when slicing native arrays) "doesn't work" in safari 9 and + // causes a crash (https://pastebin.com/N21QzeQA) when trying to debug it. + for (var j = 1; j < result.length; j++) captures.push(maybeToString(result[j])); + var namedCaptures = result.groups; + if (functionalReplace) { + var replacerArgs = [matched].concat(captures, position, S); + if (namedCaptures !== undefined) replacerArgs.push(namedCaptures); + var replacement = String(replaceValue.apply(undefined, replacerArgs)); + } else { + replacement = getSubstitution(matched, S, position, captures, namedCaptures, replaceValue); + } + if (position >= nextSourcePosition) { + accumulatedResult += S.slice(nextSourcePosition, position) + replacement; + nextSourcePosition = position + matched.length; + } + } + return accumulatedResult + S.slice(nextSourcePosition); + } + ]; +}); + + +/***/ }), + +/***/ 3123: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var fixRegExpWellKnownSymbolLogic = __webpack_require__(7007); +var isRegExp = __webpack_require__(7850); +var anObject = __webpack_require__(9670); +var requireObjectCoercible = __webpack_require__(4488); +var speciesConstructor = __webpack_require__(6707); +var advanceStringIndex = __webpack_require__(1530); +var toLength = __webpack_require__(7466); +var callRegExpExec = __webpack_require__(7651); +var regexpExec = __webpack_require__(2261); +var fails = __webpack_require__(7293); + +var arrayPush = [].push; +var min = Math.min; +var MAX_UINT32 = 0xFFFFFFFF; + +// babel-minify transpiles RegExp('x', 'y') -> /x/y and it causes SyntaxError +var SUPPORTS_Y = !fails(function () { return !RegExp(MAX_UINT32, 'y'); }); + +// @@split logic +fixRegExpWellKnownSymbolLogic('split', 2, function (SPLIT, nativeSplit, maybeCallNative) { + var internalSplit; + if ( + 'abbc'.split(/(b)*/)[1] == 'c' || + // eslint-disable-next-line regexp/no-empty-group -- required for testing + 'test'.split(/(?:)/, -1).length != 4 || + 'ab'.split(/(?:ab)*/).length != 2 || + '.'.split(/(.?)(.?)/).length != 4 || + // eslint-disable-next-line regexp/no-assertion-capturing-group, regexp/no-empty-group -- required for testing + '.'.split(/()()/).length > 1 || + ''.split(/.?/).length + ) { + // based on es5-shim implementation, need to rework it + internalSplit = function (separator, limit) { + var string = String(requireObjectCoercible(this)); + var lim = limit === undefined ? MAX_UINT32 : limit >>> 0; + if (lim === 0) return []; + if (separator === undefined) return [string]; + // If `separator` is not a regex, use native split + if (!isRegExp(separator)) { + return nativeSplit.call(string, separator, lim); + } + var output = []; + var flags = (separator.ignoreCase ? 'i' : '') + + (separator.multiline ? 'm' : '') + + (separator.unicode ? 'u' : '') + + (separator.sticky ? 'y' : ''); + var lastLastIndex = 0; + // Make `global` and avoid `lastIndex` issues by working with a copy + var separatorCopy = new RegExp(separator.source, flags + 'g'); + var match, lastIndex, lastLength; + while (match = regexpExec.call(separatorCopy, string)) { + lastIndex = separatorCopy.lastIndex; + if (lastIndex > lastLastIndex) { + output.push(string.slice(lastLastIndex, match.index)); + if (match.length > 1 && match.index < string.length) arrayPush.apply(output, match.slice(1)); + lastLength = match[0].length; + lastLastIndex = lastIndex; + if (output.length >= lim) break; + } + if (separatorCopy.lastIndex === match.index) separatorCopy.lastIndex++; // Avoid an infinite loop + } + if (lastLastIndex === string.length) { + if (lastLength || !separatorCopy.test('')) output.push(''); + } else output.push(string.slice(lastLastIndex)); + return output.length > lim ? output.slice(0, lim) : output; + }; + // Chakra, V8 + } else if ('0'.split(undefined, 0).length) { + internalSplit = function (separator, limit) { + return separator === undefined && limit === 0 ? [] : nativeSplit.call(this, separator, limit); + }; + } else internalSplit = nativeSplit; + + return [ + // `String.prototype.split` method + // https://tc39.es/ecma262/#sec-string.prototype.split + function split(separator, limit) { + var O = requireObjectCoercible(this); + var splitter = separator == undefined ? undefined : separator[SPLIT]; + return splitter !== undefined + ? splitter.call(separator, O, limit) + : internalSplit.call(String(O), separator, limit); + }, + // `RegExp.prototype[@@split]` method + // https://tc39.es/ecma262/#sec-regexp.prototype-@@split + // + // NOTE: This cannot be properly polyfilled in engines that don't support + // the 'y' flag. + function (regexp, limit) { + var res = maybeCallNative(internalSplit, regexp, this, limit, internalSplit !== nativeSplit); + if (res.done) return res.value; + + var rx = anObject(regexp); + var S = String(this); + var C = speciesConstructor(rx, RegExp); + + var unicodeMatching = rx.unicode; + var flags = (rx.ignoreCase ? 'i' : '') + + (rx.multiline ? 'm' : '') + + (rx.unicode ? 'u' : '') + + (SUPPORTS_Y ? 'y' : 'g'); + + // ^(? + rx + ) is needed, in combination with some S slicing, to + // simulate the 'y' flag. + var splitter = new C(SUPPORTS_Y ? rx : '^(?:' + rx.source + ')', flags); + var lim = limit === undefined ? MAX_UINT32 : limit >>> 0; + if (lim === 0) return []; + if (S.length === 0) return callRegExpExec(splitter, S) === null ? [S] : []; + var p = 0; + var q = 0; + var A = []; + while (q < S.length) { + splitter.lastIndex = SUPPORTS_Y ? q : 0; + var z = callRegExpExec(splitter, SUPPORTS_Y ? S : S.slice(q)); + var e; + if ( + z === null || + (e = min(toLength(splitter.lastIndex + (SUPPORTS_Y ? 0 : q)), S.length)) === p + ) { + q = advanceStringIndex(S, q, unicodeMatching); + } else { + A.push(S.slice(p, q)); + if (A.length === lim) return A; + for (var i = 1; i <= z.length - 1; i++) { + A.push(z[i]); + if (A.length === lim) return A; + } + q = p = e; + } + } + A.push(S.slice(p)); + return A; + } + ]; +}, !SUPPORTS_Y); + + +/***/ }), + +/***/ 3210: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var $ = __webpack_require__(2109); +var $trim = __webpack_require__(3111).trim; +var forcedStringTrimMethod = __webpack_require__(6091); + +// `String.prototype.trim` method +// https://tc39.es/ecma262/#sec-string.prototype.trim +$({ target: 'String', proto: true, forced: forcedStringTrimMethod('trim') }, { + trim: function trim() { + return $trim(this); + } +}); + + +/***/ }), + +/***/ 2990: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var ArrayBufferViewCore = __webpack_require__(260); +var $copyWithin = __webpack_require__(1048); + +var aTypedArray = ArrayBufferViewCore.aTypedArray; +var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod; + +// `%TypedArray%.prototype.copyWithin` method +// https://tc39.es/ecma262/#sec-%typedarray%.prototype.copywithin +exportTypedArrayMethod('copyWithin', function copyWithin(target, start /* , end */) { + return $copyWithin.call(aTypedArray(this), target, start, arguments.length > 2 ? arguments[2] : undefined); +}); + + +/***/ }), + +/***/ 8927: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var ArrayBufferViewCore = __webpack_require__(260); +var $every = __webpack_require__(2092).every; + +var aTypedArray = ArrayBufferViewCore.aTypedArray; +var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod; + +// `%TypedArray%.prototype.every` method +// https://tc39.es/ecma262/#sec-%typedarray%.prototype.every +exportTypedArrayMethod('every', function every(callbackfn /* , thisArg */) { + return $every(aTypedArray(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined); +}); + + +/***/ }), + +/***/ 3105: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var ArrayBufferViewCore = __webpack_require__(260); +var $fill = __webpack_require__(1285); + +var aTypedArray = ArrayBufferViewCore.aTypedArray; +var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod; + +// `%TypedArray%.prototype.fill` method +// https://tc39.es/ecma262/#sec-%typedarray%.prototype.fill +// eslint-disable-next-line no-unused-vars -- required for `.length` +exportTypedArrayMethod('fill', function fill(value /* , start, end */) { + return $fill.apply(aTypedArray(this), arguments); +}); + + +/***/ }), + +/***/ 5035: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var ArrayBufferViewCore = __webpack_require__(260); +var $filter = __webpack_require__(2092).filter; +var fromSpeciesAndList = __webpack_require__(3074); + +var aTypedArray = ArrayBufferViewCore.aTypedArray; +var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod; + +// `%TypedArray%.prototype.filter` method +// https://tc39.es/ecma262/#sec-%typedarray%.prototype.filter +exportTypedArrayMethod('filter', function filter(callbackfn /* , thisArg */) { + var list = $filter(aTypedArray(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined); + return fromSpeciesAndList(this, list); +}); + + +/***/ }), + +/***/ 7174: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var ArrayBufferViewCore = __webpack_require__(260); +var $findIndex = __webpack_require__(2092).findIndex; + +var aTypedArray = ArrayBufferViewCore.aTypedArray; +var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod; + +// `%TypedArray%.prototype.findIndex` method +// https://tc39.es/ecma262/#sec-%typedarray%.prototype.findindex +exportTypedArrayMethod('findIndex', function findIndex(predicate /* , thisArg */) { + return $findIndex(aTypedArray(this), predicate, arguments.length > 1 ? arguments[1] : undefined); +}); + + +/***/ }), + +/***/ 4345: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var ArrayBufferViewCore = __webpack_require__(260); +var $find = __webpack_require__(2092).find; + +var aTypedArray = ArrayBufferViewCore.aTypedArray; +var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod; + +// `%TypedArray%.prototype.find` method +// https://tc39.es/ecma262/#sec-%typedarray%.prototype.find +exportTypedArrayMethod('find', function find(predicate /* , thisArg */) { + return $find(aTypedArray(this), predicate, arguments.length > 1 ? arguments[1] : undefined); +}); + + +/***/ }), + +/***/ 2846: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var ArrayBufferViewCore = __webpack_require__(260); +var $forEach = __webpack_require__(2092).forEach; + +var aTypedArray = ArrayBufferViewCore.aTypedArray; +var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod; + +// `%TypedArray%.prototype.forEach` method +// https://tc39.es/ecma262/#sec-%typedarray%.prototype.foreach +exportTypedArrayMethod('forEach', function forEach(callbackfn /* , thisArg */) { + $forEach(aTypedArray(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined); +}); + + +/***/ }), + +/***/ 4731: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var ArrayBufferViewCore = __webpack_require__(260); +var $includes = __webpack_require__(1318).includes; + +var aTypedArray = ArrayBufferViewCore.aTypedArray; +var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod; + +// `%TypedArray%.prototype.includes` method +// https://tc39.es/ecma262/#sec-%typedarray%.prototype.includes +exportTypedArrayMethod('includes', function includes(searchElement /* , fromIndex */) { + return $includes(aTypedArray(this), searchElement, arguments.length > 1 ? arguments[1] : undefined); +}); + + +/***/ }), + +/***/ 7209: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var ArrayBufferViewCore = __webpack_require__(260); +var $indexOf = __webpack_require__(1318).indexOf; + +var aTypedArray = ArrayBufferViewCore.aTypedArray; +var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod; + +// `%TypedArray%.prototype.indexOf` method +// https://tc39.es/ecma262/#sec-%typedarray%.prototype.indexof +exportTypedArrayMethod('indexOf', function indexOf(searchElement /* , fromIndex */) { + return $indexOf(aTypedArray(this), searchElement, arguments.length > 1 ? arguments[1] : undefined); +}); + + +/***/ }), + +/***/ 6319: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var global = __webpack_require__(7854); +var ArrayBufferViewCore = __webpack_require__(260); +var ArrayIterators = __webpack_require__(6992); +var wellKnownSymbol = __webpack_require__(5112); + +var ITERATOR = wellKnownSymbol('iterator'); +var Uint8Array = global.Uint8Array; +var arrayValues = ArrayIterators.values; +var arrayKeys = ArrayIterators.keys; +var arrayEntries = ArrayIterators.entries; +var aTypedArray = ArrayBufferViewCore.aTypedArray; +var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod; +var nativeTypedArrayIterator = Uint8Array && Uint8Array.prototype[ITERATOR]; + +var CORRECT_ITER_NAME = !!nativeTypedArrayIterator + && (nativeTypedArrayIterator.name == 'values' || nativeTypedArrayIterator.name == undefined); + +var typedArrayValues = function values() { + return arrayValues.call(aTypedArray(this)); +}; + +// `%TypedArray%.prototype.entries` method +// https://tc39.es/ecma262/#sec-%typedarray%.prototype.entries +exportTypedArrayMethod('entries', function entries() { + return arrayEntries.call(aTypedArray(this)); +}); +// `%TypedArray%.prototype.keys` method +// https://tc39.es/ecma262/#sec-%typedarray%.prototype.keys +exportTypedArrayMethod('keys', function keys() { + return arrayKeys.call(aTypedArray(this)); +}); +// `%TypedArray%.prototype.values` method +// https://tc39.es/ecma262/#sec-%typedarray%.prototype.values +exportTypedArrayMethod('values', typedArrayValues, !CORRECT_ITER_NAME); +// `%TypedArray%.prototype[@@iterator]` method +// https://tc39.es/ecma262/#sec-%typedarray%.prototype-@@iterator +exportTypedArrayMethod(ITERATOR, typedArrayValues, !CORRECT_ITER_NAME); + + +/***/ }), + +/***/ 8867: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var ArrayBufferViewCore = __webpack_require__(260); + +var aTypedArray = ArrayBufferViewCore.aTypedArray; +var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod; +var $join = [].join; + +// `%TypedArray%.prototype.join` method +// https://tc39.es/ecma262/#sec-%typedarray%.prototype.join +// eslint-disable-next-line no-unused-vars -- required for `.length` +exportTypedArrayMethod('join', function join(separator) { + return $join.apply(aTypedArray(this), arguments); +}); + + +/***/ }), + +/***/ 7789: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var ArrayBufferViewCore = __webpack_require__(260); +var $lastIndexOf = __webpack_require__(6583); + +var aTypedArray = ArrayBufferViewCore.aTypedArray; +var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod; + +// `%TypedArray%.prototype.lastIndexOf` method +// https://tc39.es/ecma262/#sec-%typedarray%.prototype.lastindexof +// eslint-disable-next-line no-unused-vars -- required for `.length` +exportTypedArrayMethod('lastIndexOf', function lastIndexOf(searchElement /* , fromIndex */) { + return $lastIndexOf.apply(aTypedArray(this), arguments); +}); + + +/***/ }), + +/***/ 3739: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var ArrayBufferViewCore = __webpack_require__(260); +var $map = __webpack_require__(2092).map; +var speciesConstructor = __webpack_require__(6707); + +var aTypedArray = ArrayBufferViewCore.aTypedArray; +var aTypedArrayConstructor = ArrayBufferViewCore.aTypedArrayConstructor; +var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod; + +// `%TypedArray%.prototype.map` method +// https://tc39.es/ecma262/#sec-%typedarray%.prototype.map +exportTypedArrayMethod('map', function map(mapfn /* , thisArg */) { + return $map(aTypedArray(this), mapfn, arguments.length > 1 ? arguments[1] : undefined, function (O, length) { + return new (aTypedArrayConstructor(speciesConstructor(O, O.constructor)))(length); + }); +}); + + +/***/ }), + +/***/ 4483: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var ArrayBufferViewCore = __webpack_require__(260); +var $reduceRight = __webpack_require__(3671).right; + +var aTypedArray = ArrayBufferViewCore.aTypedArray; +var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod; + +// `%TypedArray%.prototype.reduceRicht` method +// https://tc39.es/ecma262/#sec-%typedarray%.prototype.reduceright +exportTypedArrayMethod('reduceRight', function reduceRight(callbackfn /* , initialValue */) { + return $reduceRight(aTypedArray(this), callbackfn, arguments.length, arguments.length > 1 ? arguments[1] : undefined); +}); + + +/***/ }), + +/***/ 9368: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var ArrayBufferViewCore = __webpack_require__(260); +var $reduce = __webpack_require__(3671).left; + +var aTypedArray = ArrayBufferViewCore.aTypedArray; +var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod; + +// `%TypedArray%.prototype.reduce` method +// https://tc39.es/ecma262/#sec-%typedarray%.prototype.reduce +exportTypedArrayMethod('reduce', function reduce(callbackfn /* , initialValue */) { + return $reduce(aTypedArray(this), callbackfn, arguments.length, arguments.length > 1 ? arguments[1] : undefined); +}); + + +/***/ }), + +/***/ 2056: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var ArrayBufferViewCore = __webpack_require__(260); + +var aTypedArray = ArrayBufferViewCore.aTypedArray; +var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod; +var floor = Math.floor; + +// `%TypedArray%.prototype.reverse` method +// https://tc39.es/ecma262/#sec-%typedarray%.prototype.reverse +exportTypedArrayMethod('reverse', function reverse() { + var that = this; + var length = aTypedArray(that).length; + var middle = floor(length / 2); + var index = 0; + var value; + while (index < middle) { + value = that[index]; + that[index++] = that[--length]; + that[length] = value; + } return that; +}); + + +/***/ }), + +/***/ 3462: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var ArrayBufferViewCore = __webpack_require__(260); +var toLength = __webpack_require__(7466); +var toOffset = __webpack_require__(4590); +var toObject = __webpack_require__(7908); +var fails = __webpack_require__(7293); + +var aTypedArray = ArrayBufferViewCore.aTypedArray; +var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod; + +var FORCED = fails(function () { + /* global Int8Array -- safe */ + new Int8Array(1).set({}); +}); + +// `%TypedArray%.prototype.set` method +// https://tc39.es/ecma262/#sec-%typedarray%.prototype.set +exportTypedArrayMethod('set', function set(arrayLike /* , offset */) { + aTypedArray(this); + var offset = toOffset(arguments.length > 1 ? arguments[1] : undefined, 1); + var length = this.length; + var src = toObject(arrayLike); + var len = toLength(src.length); + var index = 0; + if (len + offset > length) throw RangeError('Wrong length'); + while (index < len) this[offset + index] = src[index++]; +}, FORCED); + + +/***/ }), + +/***/ 678: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var ArrayBufferViewCore = __webpack_require__(260); +var speciesConstructor = __webpack_require__(6707); +var fails = __webpack_require__(7293); + +var aTypedArray = ArrayBufferViewCore.aTypedArray; +var aTypedArrayConstructor = ArrayBufferViewCore.aTypedArrayConstructor; +var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod; +var $slice = [].slice; + +var FORCED = fails(function () { + /* global Int8Array -- safe */ + new Int8Array(1).slice(); +}); + +// `%TypedArray%.prototype.slice` method +// https://tc39.es/ecma262/#sec-%typedarray%.prototype.slice +exportTypedArrayMethod('slice', function slice(start, end) { + var list = $slice.call(aTypedArray(this), start, end); + var C = speciesConstructor(this, this.constructor); + var index = 0; + var length = list.length; + var result = new (aTypedArrayConstructor(C))(length); + while (length > index) result[index] = list[index++]; + return result; +}, FORCED); + + +/***/ }), + +/***/ 7462: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var ArrayBufferViewCore = __webpack_require__(260); +var $some = __webpack_require__(2092).some; + +var aTypedArray = ArrayBufferViewCore.aTypedArray; +var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod; + +// `%TypedArray%.prototype.some` method +// https://tc39.es/ecma262/#sec-%typedarray%.prototype.some +exportTypedArrayMethod('some', function some(callbackfn /* , thisArg */) { + return $some(aTypedArray(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined); +}); + + +/***/ }), + +/***/ 3824: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var ArrayBufferViewCore = __webpack_require__(260); + +var aTypedArray = ArrayBufferViewCore.aTypedArray; +var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod; +var $sort = [].sort; + +// `%TypedArray%.prototype.sort` method +// https://tc39.es/ecma262/#sec-%typedarray%.prototype.sort +exportTypedArrayMethod('sort', function sort(comparefn) { + return $sort.call(aTypedArray(this), comparefn); +}); + + +/***/ }), + +/***/ 5021: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var ArrayBufferViewCore = __webpack_require__(260); +var toLength = __webpack_require__(7466); +var toAbsoluteIndex = __webpack_require__(1400); +var speciesConstructor = __webpack_require__(6707); + +var aTypedArray = ArrayBufferViewCore.aTypedArray; +var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod; + +// `%TypedArray%.prototype.subarray` method +// https://tc39.es/ecma262/#sec-%typedarray%.prototype.subarray +exportTypedArrayMethod('subarray', function subarray(begin, end) { + var O = aTypedArray(this); + var length = O.length; + var beginIndex = toAbsoluteIndex(begin, length); + return new (speciesConstructor(O, O.constructor))( + O.buffer, + O.byteOffset + beginIndex * O.BYTES_PER_ELEMENT, + toLength((end === undefined ? length : toAbsoluteIndex(end, length)) - beginIndex) + ); +}); + + +/***/ }), + +/***/ 2974: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var global = __webpack_require__(7854); +var ArrayBufferViewCore = __webpack_require__(260); +var fails = __webpack_require__(7293); + +var Int8Array = global.Int8Array; +var aTypedArray = ArrayBufferViewCore.aTypedArray; +var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod; +var $toLocaleString = [].toLocaleString; +var $slice = [].slice; + +// iOS Safari 6.x fails here +var TO_LOCALE_STRING_BUG = !!Int8Array && fails(function () { + $toLocaleString.call(new Int8Array(1)); +}); + +var FORCED = fails(function () { + return [1, 2].toLocaleString() != new Int8Array([1, 2]).toLocaleString(); +}) || !fails(function () { + Int8Array.prototype.toLocaleString.call([1, 2]); +}); + +// `%TypedArray%.prototype.toLocaleString` method +// https://tc39.es/ecma262/#sec-%typedarray%.prototype.tolocalestring +exportTypedArrayMethod('toLocaleString', function toLocaleString() { + return $toLocaleString.apply(TO_LOCALE_STRING_BUG ? $slice.call(aTypedArray(this)) : aTypedArray(this), arguments); +}, FORCED); + + +/***/ }), + +/***/ 5016: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var exportTypedArrayMethod = __webpack_require__(260).exportTypedArrayMethod; +var fails = __webpack_require__(7293); +var global = __webpack_require__(7854); + +var Uint8Array = global.Uint8Array; +var Uint8ArrayPrototype = Uint8Array && Uint8Array.prototype || {}; +var arrayToString = [].toString; +var arrayJoin = [].join; + +if (fails(function () { arrayToString.call({}); })) { + arrayToString = function toString() { + return arrayJoin.call(this); + }; +} + +var IS_NOT_ARRAY_METHOD = Uint8ArrayPrototype.toString != arrayToString; + +// `%TypedArray%.prototype.toString` method +// https://tc39.es/ecma262/#sec-%typedarray%.prototype.tostring +exportTypedArrayMethod('toString', arrayToString, IS_NOT_ARRAY_METHOD); + + +/***/ }), + +/***/ 2472: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +var createTypedArrayConstructor = __webpack_require__(9843); + +// `Uint8Array` constructor +// https://tc39.es/ecma262/#sec-typedarray-objects +createTypedArrayConstructor('Uint8', function (init) { + return function Uint8Array(data, byteOffset, length) { + return init(this, data, byteOffset, length); + }; +}); + + +/***/ }), + +/***/ 4747: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +var global = __webpack_require__(7854); +var DOMIterables = __webpack_require__(8324); +var forEach = __webpack_require__(8533); +var createNonEnumerableProperty = __webpack_require__(8880); + +for (var COLLECTION_NAME in DOMIterables) { + var Collection = global[COLLECTION_NAME]; + var CollectionPrototype = Collection && Collection.prototype; + // some Chrome versions have non-configurable methods on DOMTokenList + if (CollectionPrototype && CollectionPrototype.forEach !== forEach) try { + createNonEnumerableProperty(CollectionPrototype, 'forEach', forEach); + } catch (error) { + CollectionPrototype.forEach = forEach; + } +} + + +/***/ }), + +/***/ 3948: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +var global = __webpack_require__(7854); +var DOMIterables = __webpack_require__(8324); +var ArrayIteratorMethods = __webpack_require__(6992); +var createNonEnumerableProperty = __webpack_require__(8880); +var wellKnownSymbol = __webpack_require__(5112); + +var ITERATOR = wellKnownSymbol('iterator'); +var TO_STRING_TAG = wellKnownSymbol('toStringTag'); +var ArrayValues = ArrayIteratorMethods.values; + +for (var COLLECTION_NAME in DOMIterables) { + var Collection = global[COLLECTION_NAME]; + var CollectionPrototype = Collection && Collection.prototype; + if (CollectionPrototype) { + // some Chrome versions have non-configurable methods on DOMTokenList + if (CollectionPrototype[ITERATOR] !== ArrayValues) try { + createNonEnumerableProperty(CollectionPrototype, ITERATOR, ArrayValues); + } catch (error) { + CollectionPrototype[ITERATOR] = ArrayValues; + } + if (!CollectionPrototype[TO_STRING_TAG]) { + createNonEnumerableProperty(CollectionPrototype, TO_STRING_TAG, COLLECTION_NAME); + } + if (DOMIterables[COLLECTION_NAME]) for (var METHOD_NAME in ArrayIteratorMethods) { + // some Chrome versions have non-configurable methods on DOMTokenList + if (CollectionPrototype[METHOD_NAME] !== ArrayIteratorMethods[METHOD_NAME]) try { + createNonEnumerableProperty(CollectionPrototype, METHOD_NAME, ArrayIteratorMethods[METHOD_NAME]); + } catch (error) { + CollectionPrototype[METHOD_NAME] = ArrayIteratorMethods[METHOD_NAME]; + } + } + } +} + + +/***/ }), + +/***/ 1637: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +// TODO: in core-js@4, move /modules/ dependencies to public entries for better optimization by tools like `preset-env` +__webpack_require__(6992); +var $ = __webpack_require__(2109); +var getBuiltIn = __webpack_require__(5005); +var USE_NATIVE_URL = __webpack_require__(590); +var redefine = __webpack_require__(1320); +var redefineAll = __webpack_require__(2248); +var setToStringTag = __webpack_require__(8003); +var createIteratorConstructor = __webpack_require__(4994); +var InternalStateModule = __webpack_require__(9909); +var anInstance = __webpack_require__(5787); +var hasOwn = __webpack_require__(6656); +var bind = __webpack_require__(9974); +var classof = __webpack_require__(648); +var anObject = __webpack_require__(9670); +var isObject = __webpack_require__(111); +var create = __webpack_require__(30); +var createPropertyDescriptor = __webpack_require__(9114); +var getIterator = __webpack_require__(8554); +var getIteratorMethod = __webpack_require__(1246); +var wellKnownSymbol = __webpack_require__(5112); + +var $fetch = getBuiltIn('fetch'); +var Headers = getBuiltIn('Headers'); +var ITERATOR = wellKnownSymbol('iterator'); +var URL_SEARCH_PARAMS = 'URLSearchParams'; +var URL_SEARCH_PARAMS_ITERATOR = URL_SEARCH_PARAMS + 'Iterator'; +var setInternalState = InternalStateModule.set; +var getInternalParamsState = InternalStateModule.getterFor(URL_SEARCH_PARAMS); +var getInternalIteratorState = InternalStateModule.getterFor(URL_SEARCH_PARAMS_ITERATOR); + +var plus = /\+/g; +var sequences = Array(4); + +var percentSequence = function (bytes) { + return sequences[bytes - 1] || (sequences[bytes - 1] = RegExp('((?:%[\\da-f]{2}){' + bytes + '})', 'gi')); +}; + +var percentDecode = function (sequence) { + try { + return decodeURIComponent(sequence); + } catch (error) { + return sequence; + } +}; + +var deserialize = function (it) { + var result = it.replace(plus, ' '); + var bytes = 4; + try { + return decodeURIComponent(result); + } catch (error) { + while (bytes) { + result = result.replace(percentSequence(bytes--), percentDecode); + } + return result; + } +}; + +var find = /[!'()~]|%20/g; + +var replace = { + '!': '%21', + "'": '%27', + '(': '%28', + ')': '%29', + '~': '%7E', + '%20': '+' +}; + +var replacer = function (match) { + return replace[match]; +}; + +var serialize = function (it) { + return encodeURIComponent(it).replace(find, replacer); +}; + +var parseSearchParams = function (result, query) { + if (query) { + var attributes = query.split('&'); + var index = 0; + var attribute, entry; + while (index < attributes.length) { + attribute = attributes[index++]; + if (attribute.length) { + entry = attribute.split('='); + result.push({ + key: deserialize(entry.shift()), + value: deserialize(entry.join('=')) + }); + } + } + } +}; + +var updateSearchParams = function (query) { + this.entries.length = 0; + parseSearchParams(this.entries, query); +}; + +var validateArgumentsLength = function (passed, required) { + if (passed < required) throw TypeError('Not enough arguments'); +}; + +var URLSearchParamsIterator = createIteratorConstructor(function Iterator(params, kind) { + setInternalState(this, { + type: URL_SEARCH_PARAMS_ITERATOR, + iterator: getIterator(getInternalParamsState(params).entries), + kind: kind + }); +}, 'Iterator', function next() { + var state = getInternalIteratorState(this); + var kind = state.kind; + var step = state.iterator.next(); + var entry = step.value; + if (!step.done) { + step.value = kind === 'keys' ? entry.key : kind === 'values' ? entry.value : [entry.key, entry.value]; + } return step; +}); + +// `URLSearchParams` constructor +// https://url.spec.whatwg.org/#interface-urlsearchparams +var URLSearchParamsConstructor = function URLSearchParams(/* init */) { + anInstance(this, URLSearchParamsConstructor, URL_SEARCH_PARAMS); + var init = arguments.length > 0 ? arguments[0] : undefined; + var that = this; + var entries = []; + var iteratorMethod, iterator, next, step, entryIterator, entryNext, first, second, key; + + setInternalState(that, { + type: URL_SEARCH_PARAMS, + entries: entries, + updateURL: function () { /* empty */ }, + updateSearchParams: updateSearchParams + }); + + if (init !== undefined) { + if (isObject(init)) { + iteratorMethod = getIteratorMethod(init); + if (typeof iteratorMethod === 'function') { + iterator = iteratorMethod.call(init); + next = iterator.next; + while (!(step = next.call(iterator)).done) { + entryIterator = getIterator(anObject(step.value)); + entryNext = entryIterator.next; + if ( + (first = entryNext.call(entryIterator)).done || + (second = entryNext.call(entryIterator)).done || + !entryNext.call(entryIterator).done + ) throw TypeError('Expected sequence with length 2'); + entries.push({ key: first.value + '', value: second.value + '' }); + } + } else for (key in init) if (hasOwn(init, key)) entries.push({ key: key, value: init[key] + '' }); + } else { + parseSearchParams(entries, typeof init === 'string' ? init.charAt(0) === '?' ? init.slice(1) : init : init + ''); + } + } +}; + +var URLSearchParamsPrototype = URLSearchParamsConstructor.prototype; + +redefineAll(URLSearchParamsPrototype, { + // `URLSearchParams.prototype.append` method + // https://url.spec.whatwg.org/#dom-urlsearchparams-append + append: function append(name, value) { + validateArgumentsLength(arguments.length, 2); + var state = getInternalParamsState(this); + state.entries.push({ key: name + '', value: value + '' }); + state.updateURL(); + }, + // `URLSearchParams.prototype.delete` method + // https://url.spec.whatwg.org/#dom-urlsearchparams-delete + 'delete': function (name) { + validateArgumentsLength(arguments.length, 1); + var state = getInternalParamsState(this); + var entries = state.entries; + var key = name + ''; + var index = 0; + while (index < entries.length) { + if (entries[index].key === key) entries.splice(index, 1); + else index++; + } + state.updateURL(); + }, + // `URLSearchParams.prototype.get` method + // https://url.spec.whatwg.org/#dom-urlsearchparams-get + get: function get(name) { + validateArgumentsLength(arguments.length, 1); + var entries = getInternalParamsState(this).entries; + var key = name + ''; + var index = 0; + for (; index < entries.length; index++) { + if (entries[index].key === key) return entries[index].value; + } + return null; + }, + // `URLSearchParams.prototype.getAll` method + // https://url.spec.whatwg.org/#dom-urlsearchparams-getall + getAll: function getAll(name) { + validateArgumentsLength(arguments.length, 1); + var entries = getInternalParamsState(this).entries; + var key = name + ''; + var result = []; + var index = 0; + for (; index < entries.length; index++) { + if (entries[index].key === key) result.push(entries[index].value); + } + return result; + }, + // `URLSearchParams.prototype.has` method + // https://url.spec.whatwg.org/#dom-urlsearchparams-has + has: function has(name) { + validateArgumentsLength(arguments.length, 1); + var entries = getInternalParamsState(this).entries; + var key = name + ''; + var index = 0; + while (index < entries.length) { + if (entries[index++].key === key) return true; + } + return false; + }, + // `URLSearchParams.prototype.set` method + // https://url.spec.whatwg.org/#dom-urlsearchparams-set + set: function set(name, value) { + validateArgumentsLength(arguments.length, 1); + var state = getInternalParamsState(this); + var entries = state.entries; + var found = false; + var key = name + ''; + var val = value + ''; + var index = 0; + var entry; + for (; index < entries.length; index++) { + entry = entries[index]; + if (entry.key === key) { + if (found) entries.splice(index--, 1); + else { + found = true; + entry.value = val; + } + } + } + if (!found) entries.push({ key: key, value: val }); + state.updateURL(); + }, + // `URLSearchParams.prototype.sort` method + // https://url.spec.whatwg.org/#dom-urlsearchparams-sort + sort: function sort() { + var state = getInternalParamsState(this); + var entries = state.entries; + // Array#sort is not stable in some engines + var slice = entries.slice(); + var entry, entriesIndex, sliceIndex; + entries.length = 0; + for (sliceIndex = 0; sliceIndex < slice.length; sliceIndex++) { + entry = slice[sliceIndex]; + for (entriesIndex = 0; entriesIndex < sliceIndex; entriesIndex++) { + if (entries[entriesIndex].key > entry.key) { + entries.splice(entriesIndex, 0, entry); + break; + } + } + if (entriesIndex === sliceIndex) entries.push(entry); + } + state.updateURL(); + }, + // `URLSearchParams.prototype.forEach` method + forEach: function forEach(callback /* , thisArg */) { + var entries = getInternalParamsState(this).entries; + var boundFunction = bind(callback, arguments.length > 1 ? arguments[1] : undefined, 3); + var index = 0; + var entry; + while (index < entries.length) { + entry = entries[index++]; + boundFunction(entry.value, entry.key, this); + } + }, + // `URLSearchParams.prototype.keys` method + keys: function keys() { + return new URLSearchParamsIterator(this, 'keys'); + }, + // `URLSearchParams.prototype.values` method + values: function values() { + return new URLSearchParamsIterator(this, 'values'); + }, + // `URLSearchParams.prototype.entries` method + entries: function entries() { + return new URLSearchParamsIterator(this, 'entries'); + } +}, { enumerable: true }); + +// `URLSearchParams.prototype[@@iterator]` method +redefine(URLSearchParamsPrototype, ITERATOR, URLSearchParamsPrototype.entries); + +// `URLSearchParams.prototype.toString` method +// https://url.spec.whatwg.org/#urlsearchparams-stringification-behavior +redefine(URLSearchParamsPrototype, 'toString', function toString() { + var entries = getInternalParamsState(this).entries; + var result = []; + var index = 0; + var entry; + while (index < entries.length) { + entry = entries[index++]; + result.push(serialize(entry.key) + '=' + serialize(entry.value)); + } return result.join('&'); +}, { enumerable: true }); + +setToStringTag(URLSearchParamsConstructor, URL_SEARCH_PARAMS); + +$({ global: true, forced: !USE_NATIVE_URL }, { + URLSearchParams: URLSearchParamsConstructor +}); + +// Wrap `fetch` for correct work with polyfilled `URLSearchParams` +// https://github.com/zloirock/core-js/issues/674 +if (!USE_NATIVE_URL && typeof $fetch == 'function' && typeof Headers == 'function') { + $({ global: true, enumerable: true, forced: true }, { + fetch: function fetch(input /* , init */) { + var args = [input]; + var init, body, headers; + if (arguments.length > 1) { + init = arguments[1]; + if (isObject(init)) { + body = init.body; + if (classof(body) === URL_SEARCH_PARAMS) { + headers = init.headers ? new Headers(init.headers) : new Headers(); + if (!headers.has('content-type')) { + headers.set('content-type', 'application/x-www-form-urlencoded;charset=UTF-8'); + } + init = create(init, { + body: createPropertyDescriptor(0, String(body)), + headers: createPropertyDescriptor(0, headers) + }); + } + } + args.push(init); + } return $fetch.apply(this, args); + } + }); +} + +module.exports = { + URLSearchParams: URLSearchParamsConstructor, + getState: getInternalParamsState +}; + + +/***/ }), + +/***/ 285: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +// TODO: in core-js@4, move /modules/ dependencies to public entries for better optimization by tools like `preset-env` +__webpack_require__(8783); +var $ = __webpack_require__(2109); +var DESCRIPTORS = __webpack_require__(9781); +var USE_NATIVE_URL = __webpack_require__(590); +var global = __webpack_require__(7854); +var defineProperties = __webpack_require__(6048); +var redefine = __webpack_require__(1320); +var anInstance = __webpack_require__(5787); +var has = __webpack_require__(6656); +var assign = __webpack_require__(1574); +var arrayFrom = __webpack_require__(8457); +var codeAt = __webpack_require__(8710).codeAt; +var toASCII = __webpack_require__(3197); +var setToStringTag = __webpack_require__(8003); +var URLSearchParamsModule = __webpack_require__(1637); +var InternalStateModule = __webpack_require__(9909); + +var NativeURL = global.URL; +var URLSearchParams = URLSearchParamsModule.URLSearchParams; +var getInternalSearchParamsState = URLSearchParamsModule.getState; +var setInternalState = InternalStateModule.set; +var getInternalURLState = InternalStateModule.getterFor('URL'); +var floor = Math.floor; +var pow = Math.pow; + +var INVALID_AUTHORITY = 'Invalid authority'; +var INVALID_SCHEME = 'Invalid scheme'; +var INVALID_HOST = 'Invalid host'; +var INVALID_PORT = 'Invalid port'; + +var ALPHA = /[A-Za-z]/; +var ALPHANUMERIC = /[\d+-.A-Za-z]/; +var DIGIT = /\d/; +var HEX_START = /^(0x|0X)/; +var OCT = /^[0-7]+$/; +var DEC = /^\d+$/; +var HEX = /^[\dA-Fa-f]+$/; +/* eslint-disable no-control-regex -- safe */ +var FORBIDDEN_HOST_CODE_POINT = /[\u0000\t\u000A\u000D #%/:?@[\\]]/; +var FORBIDDEN_HOST_CODE_POINT_EXCLUDING_PERCENT = /[\u0000\t\u000A\u000D #/:?@[\\]]/; +var LEADING_AND_TRAILING_C0_CONTROL_OR_SPACE = /^[\u0000-\u001F ]+|[\u0000-\u001F ]+$/g; +var TAB_AND_NEW_LINE = /[\t\u000A\u000D]/g; +/* eslint-enable no-control-regex -- safe */ +var EOF; + +var parseHost = function (url, input) { + var result, codePoints, index; + if (input.charAt(0) == '[') { + if (input.charAt(input.length - 1) != ']') return INVALID_HOST; + result = parseIPv6(input.slice(1, -1)); + if (!result) return INVALID_HOST; + url.host = result; + // opaque host + } else if (!isSpecial(url)) { + if (FORBIDDEN_HOST_CODE_POINT_EXCLUDING_PERCENT.test(input)) return INVALID_HOST; + result = ''; + codePoints = arrayFrom(input); + for (index = 0; index < codePoints.length; index++) { + result += percentEncode(codePoints[index], C0ControlPercentEncodeSet); + } + url.host = result; + } else { + input = toASCII(input); + if (FORBIDDEN_HOST_CODE_POINT.test(input)) return INVALID_HOST; + result = parseIPv4(input); + if (result === null) return INVALID_HOST; + url.host = result; + } +}; + +var parseIPv4 = function (input) { + var parts = input.split('.'); + var partsLength, numbers, index, part, radix, number, ipv4; + if (parts.length && parts[parts.length - 1] == '') { + parts.pop(); + } + partsLength = parts.length; + if (partsLength > 4) return input; + numbers = []; + for (index = 0; index < partsLength; index++) { + part = parts[index]; + if (part == '') return input; + radix = 10; + if (part.length > 1 && part.charAt(0) == '0') { + radix = HEX_START.test(part) ? 16 : 8; + part = part.slice(radix == 8 ? 1 : 2); + } + if (part === '') { + number = 0; + } else { + if (!(radix == 10 ? DEC : radix == 8 ? OCT : HEX).test(part)) return input; + number = parseInt(part, radix); + } + numbers.push(number); + } + for (index = 0; index < partsLength; index++) { + number = numbers[index]; + if (index == partsLength - 1) { + if (number >= pow(256, 5 - partsLength)) return null; + } else if (number > 255) return null; + } + ipv4 = numbers.pop(); + for (index = 0; index < numbers.length; index++) { + ipv4 += numbers[index] * pow(256, 3 - index); + } + return ipv4; +}; + +// eslint-disable-next-line max-statements -- TODO +var parseIPv6 = function (input) { + var address = [0, 0, 0, 0, 0, 0, 0, 0]; + var pieceIndex = 0; + var compress = null; + var pointer = 0; + var value, length, numbersSeen, ipv4Piece, number, swaps, swap; + + var char = function () { + return input.charAt(pointer); + }; + + if (char() == ':') { + if (input.charAt(1) != ':') return; + pointer += 2; + pieceIndex++; + compress = pieceIndex; + } + while (char()) { + if (pieceIndex == 8) return; + if (char() == ':') { + if (compress !== null) return; + pointer++; + pieceIndex++; + compress = pieceIndex; + continue; + } + value = length = 0; + while (length < 4 && HEX.test(char())) { + value = value * 16 + parseInt(char(), 16); + pointer++; + length++; + } + if (char() == '.') { + if (length == 0) return; + pointer -= length; + if (pieceIndex > 6) return; + numbersSeen = 0; + while (char()) { + ipv4Piece = null; + if (numbersSeen > 0) { + if (char() == '.' && numbersSeen < 4) pointer++; + else return; + } + if (!DIGIT.test(char())) return; + while (DIGIT.test(char())) { + number = parseInt(char(), 10); + if (ipv4Piece === null) ipv4Piece = number; + else if (ipv4Piece == 0) return; + else ipv4Piece = ipv4Piece * 10 + number; + if (ipv4Piece > 255) return; + pointer++; + } + address[pieceIndex] = address[pieceIndex] * 256 + ipv4Piece; + numbersSeen++; + if (numbersSeen == 2 || numbersSeen == 4) pieceIndex++; + } + if (numbersSeen != 4) return; + break; + } else if (char() == ':') { + pointer++; + if (!char()) return; + } else if (char()) return; + address[pieceIndex++] = value; + } + if (compress !== null) { + swaps = pieceIndex - compress; + pieceIndex = 7; + while (pieceIndex != 0 && swaps > 0) { + swap = address[pieceIndex]; + address[pieceIndex--] = address[compress + swaps - 1]; + address[compress + --swaps] = swap; + } + } else if (pieceIndex != 8) return; + return address; +}; + +var findLongestZeroSequence = function (ipv6) { + var maxIndex = null; + var maxLength = 1; + var currStart = null; + var currLength = 0; + var index = 0; + for (; index < 8; index++) { + if (ipv6[index] !== 0) { + if (currLength > maxLength) { + maxIndex = currStart; + maxLength = currLength; + } + currStart = null; + currLength = 0; + } else { + if (currStart === null) currStart = index; + ++currLength; + } + } + if (currLength > maxLength) { + maxIndex = currStart; + maxLength = currLength; + } + return maxIndex; +}; + +var serializeHost = function (host) { + var result, index, compress, ignore0; + // ipv4 + if (typeof host == 'number') { + result = []; + for (index = 0; index < 4; index++) { + result.unshift(host % 256); + host = floor(host / 256); + } return result.join('.'); + // ipv6 + } else if (typeof host == 'object') { + result = ''; + compress = findLongestZeroSequence(host); + for (index = 0; index < 8; index++) { + if (ignore0 && host[index] === 0) continue; + if (ignore0) ignore0 = false; + if (compress === index) { + result += index ? ':' : '::'; + ignore0 = true; + } else { + result += host[index].toString(16); + if (index < 7) result += ':'; + } + } + return '[' + result + ']'; + } return host; +}; + +var C0ControlPercentEncodeSet = {}; +var fragmentPercentEncodeSet = assign({}, C0ControlPercentEncodeSet, { + ' ': 1, '"': 1, '<': 1, '>': 1, '`': 1 +}); +var pathPercentEncodeSet = assign({}, fragmentPercentEncodeSet, { + '#': 1, '?': 1, '{': 1, '}': 1 +}); +var userinfoPercentEncodeSet = assign({}, pathPercentEncodeSet, { + '/': 1, ':': 1, ';': 1, '=': 1, '@': 1, '[': 1, '\\': 1, ']': 1, '^': 1, '|': 1 +}); + +var percentEncode = function (char, set) { + var code = codeAt(char, 0); + return code > 0x20 && code < 0x7F && !has(set, char) ? char : encodeURIComponent(char); +}; + +var specialSchemes = { + ftp: 21, + file: null, + http: 80, + https: 443, + ws: 80, + wss: 443 +}; + +var isSpecial = function (url) { + return has(specialSchemes, url.scheme); +}; + +var includesCredentials = function (url) { + return url.username != '' || url.password != ''; +}; + +var cannotHaveUsernamePasswordPort = function (url) { + return !url.host || url.cannotBeABaseURL || url.scheme == 'file'; +}; + +var isWindowsDriveLetter = function (string, normalized) { + var second; + return string.length == 2 && ALPHA.test(string.charAt(0)) + && ((second = string.charAt(1)) == ':' || (!normalized && second == '|')); +}; + +var startsWithWindowsDriveLetter = function (string) { + var third; + return string.length > 1 && isWindowsDriveLetter(string.slice(0, 2)) && ( + string.length == 2 || + ((third = string.charAt(2)) === '/' || third === '\\' || third === '?' || third === '#') + ); +}; + +var shortenURLsPath = function (url) { + var path = url.path; + var pathSize = path.length; + if (pathSize && (url.scheme != 'file' || pathSize != 1 || !isWindowsDriveLetter(path[0], true))) { + path.pop(); + } +}; + +var isSingleDot = function (segment) { + return segment === '.' || segment.toLowerCase() === '%2e'; +}; + +var isDoubleDot = function (segment) { + segment = segment.toLowerCase(); + return segment === '..' || segment === '%2e.' || segment === '.%2e' || segment === '%2e%2e'; +}; + +// States: +var SCHEME_START = {}; +var SCHEME = {}; +var NO_SCHEME = {}; +var SPECIAL_RELATIVE_OR_AUTHORITY = {}; +var PATH_OR_AUTHORITY = {}; +var RELATIVE = {}; +var RELATIVE_SLASH = {}; +var SPECIAL_AUTHORITY_SLASHES = {}; +var SPECIAL_AUTHORITY_IGNORE_SLASHES = {}; +var AUTHORITY = {}; +var HOST = {}; +var HOSTNAME = {}; +var PORT = {}; +var FILE = {}; +var FILE_SLASH = {}; +var FILE_HOST = {}; +var PATH_START = {}; +var PATH = {}; +var CANNOT_BE_A_BASE_URL_PATH = {}; +var QUERY = {}; +var FRAGMENT = {}; + +// eslint-disable-next-line max-statements -- TODO +var parseURL = function (url, input, stateOverride, base) { + var state = stateOverride || SCHEME_START; + var pointer = 0; + var buffer = ''; + var seenAt = false; + var seenBracket = false; + var seenPasswordToken = false; + var codePoints, char, bufferCodePoints, failure; + + if (!stateOverride) { + url.scheme = ''; + url.username = ''; + url.password = ''; + url.host = null; + url.port = null; + url.path = []; + url.query = null; + url.fragment = null; + url.cannotBeABaseURL = false; + input = input.replace(LEADING_AND_TRAILING_C0_CONTROL_OR_SPACE, ''); + } + + input = input.replace(TAB_AND_NEW_LINE, ''); + + codePoints = arrayFrom(input); + + while (pointer <= codePoints.length) { + char = codePoints[pointer]; + switch (state) { + case SCHEME_START: + if (char && ALPHA.test(char)) { + buffer += char.toLowerCase(); + state = SCHEME; + } else if (!stateOverride) { + state = NO_SCHEME; + continue; + } else return INVALID_SCHEME; + break; + + case SCHEME: + if (char && (ALPHANUMERIC.test(char) || char == '+' || char == '-' || char == '.')) { + buffer += char.toLowerCase(); + } else if (char == ':') { + if (stateOverride && ( + (isSpecial(url) != has(specialSchemes, buffer)) || + (buffer == 'file' && (includesCredentials(url) || url.port !== null)) || + (url.scheme == 'file' && !url.host) + )) return; + url.scheme = buffer; + if (stateOverride) { + if (isSpecial(url) && specialSchemes[url.scheme] == url.port) url.port = null; + return; + } + buffer = ''; + if (url.scheme == 'file') { + state = FILE; + } else if (isSpecial(url) && base && base.scheme == url.scheme) { + state = SPECIAL_RELATIVE_OR_AUTHORITY; + } else if (isSpecial(url)) { + state = SPECIAL_AUTHORITY_SLASHES; + } else if (codePoints[pointer + 1] == '/') { + state = PATH_OR_AUTHORITY; + pointer++; + } else { + url.cannotBeABaseURL = true; + url.path.push(''); + state = CANNOT_BE_A_BASE_URL_PATH; + } + } else if (!stateOverride) { + buffer = ''; + state = NO_SCHEME; + pointer = 0; + continue; + } else return INVALID_SCHEME; + break; + + case NO_SCHEME: + if (!base || (base.cannotBeABaseURL && char != '#')) return INVALID_SCHEME; + if (base.cannotBeABaseURL && char == '#') { + url.scheme = base.scheme; + url.path = base.path.slice(); + url.query = base.query; + url.fragment = ''; + url.cannotBeABaseURL = true; + state = FRAGMENT; + break; + } + state = base.scheme == 'file' ? FILE : RELATIVE; + continue; + + case SPECIAL_RELATIVE_OR_AUTHORITY: + if (char == '/' && codePoints[pointer + 1] == '/') { + state = SPECIAL_AUTHORITY_IGNORE_SLASHES; + pointer++; + } else { + state = RELATIVE; + continue; + } break; + + case PATH_OR_AUTHORITY: + if (char == '/') { + state = AUTHORITY; + break; + } else { + state = PATH; + continue; + } + + case RELATIVE: + url.scheme = base.scheme; + if (char == EOF) { + url.username = base.username; + url.password = base.password; + url.host = base.host; + url.port = base.port; + url.path = base.path.slice(); + url.query = base.query; + } else if (char == '/' || (char == '\\' && isSpecial(url))) { + state = RELATIVE_SLASH; + } else if (char == '?') { + url.username = base.username; + url.password = base.password; + url.host = base.host; + url.port = base.port; + url.path = base.path.slice(); + url.query = ''; + state = QUERY; + } else if (char == '#') { + url.username = base.username; + url.password = base.password; + url.host = base.host; + url.port = base.port; + url.path = base.path.slice(); + url.query = base.query; + url.fragment = ''; + state = FRAGMENT; + } else { + url.username = base.username; + url.password = base.password; + url.host = base.host; + url.port = base.port; + url.path = base.path.slice(); + url.path.pop(); + state = PATH; + continue; + } break; + + case RELATIVE_SLASH: + if (isSpecial(url) && (char == '/' || char == '\\')) { + state = SPECIAL_AUTHORITY_IGNORE_SLASHES; + } else if (char == '/') { + state = AUTHORITY; + } else { + url.username = base.username; + url.password = base.password; + url.host = base.host; + url.port = base.port; + state = PATH; + continue; + } break; + + case SPECIAL_AUTHORITY_SLASHES: + state = SPECIAL_AUTHORITY_IGNORE_SLASHES; + if (char != '/' || buffer.charAt(pointer + 1) != '/') continue; + pointer++; + break; + + case SPECIAL_AUTHORITY_IGNORE_SLASHES: + if (char != '/' && char != '\\') { + state = AUTHORITY; + continue; + } break; + + case AUTHORITY: + if (char == '@') { + if (seenAt) buffer = '%40' + buffer; + seenAt = true; + bufferCodePoints = arrayFrom(buffer); + for (var i = 0; i < bufferCodePoints.length; i++) { + var codePoint = bufferCodePoints[i]; + if (codePoint == ':' && !seenPasswordToken) { + seenPasswordToken = true; + continue; + } + var encodedCodePoints = percentEncode(codePoint, userinfoPercentEncodeSet); + if (seenPasswordToken) url.password += encodedCodePoints; + else url.username += encodedCodePoints; + } + buffer = ''; + } else if ( + char == EOF || char == '/' || char == '?' || char == '#' || + (char == '\\' && isSpecial(url)) + ) { + if (seenAt && buffer == '') return INVALID_AUTHORITY; + pointer -= arrayFrom(buffer).length + 1; + buffer = ''; + state = HOST; + } else buffer += char; + break; + + case HOST: + case HOSTNAME: + if (stateOverride && url.scheme == 'file') { + state = FILE_HOST; + continue; + } else if (char == ':' && !seenBracket) { + if (buffer == '') return INVALID_HOST; + failure = parseHost(url, buffer); + if (failure) return failure; + buffer = ''; + state = PORT; + if (stateOverride == HOSTNAME) return; + } else if ( + char == EOF || char == '/' || char == '?' || char == '#' || + (char == '\\' && isSpecial(url)) + ) { + if (isSpecial(url) && buffer == '') return INVALID_HOST; + if (stateOverride && buffer == '' && (includesCredentials(url) || url.port !== null)) return; + failure = parseHost(url, buffer); + if (failure) return failure; + buffer = ''; + state = PATH_START; + if (stateOverride) return; + continue; + } else { + if (char == '[') seenBracket = true; + else if (char == ']') seenBracket = false; + buffer += char; + } break; + + case PORT: + if (DIGIT.test(char)) { + buffer += char; + } else if ( + char == EOF || char == '/' || char == '?' || char == '#' || + (char == '\\' && isSpecial(url)) || + stateOverride + ) { + if (buffer != '') { + var port = parseInt(buffer, 10); + if (port > 0xFFFF) return INVALID_PORT; + url.port = (isSpecial(url) && port === specialSchemes[url.scheme]) ? null : port; + buffer = ''; + } + if (stateOverride) return; + state = PATH_START; + continue; + } else return INVALID_PORT; + break; + + case FILE: + url.scheme = 'file'; + if (char == '/' || char == '\\') state = FILE_SLASH; + else if (base && base.scheme == 'file') { + if (char == EOF) { + url.host = base.host; + url.path = base.path.slice(); + url.query = base.query; + } else if (char == '?') { + url.host = base.host; + url.path = base.path.slice(); + url.query = ''; + state = QUERY; + } else if (char == '#') { + url.host = base.host; + url.path = base.path.slice(); + url.query = base.query; + url.fragment = ''; + state = FRAGMENT; + } else { + if (!startsWithWindowsDriveLetter(codePoints.slice(pointer).join(''))) { + url.host = base.host; + url.path = base.path.slice(); + shortenURLsPath(url); + } + state = PATH; + continue; + } + } else { + state = PATH; + continue; + } break; + + case FILE_SLASH: + if (char == '/' || char == '\\') { + state = FILE_HOST; + break; + } + if (base && base.scheme == 'file' && !startsWithWindowsDriveLetter(codePoints.slice(pointer).join(''))) { + if (isWindowsDriveLetter(base.path[0], true)) url.path.push(base.path[0]); + else url.host = base.host; + } + state = PATH; + continue; + + case FILE_HOST: + if (char == EOF || char == '/' || char == '\\' || char == '?' || char == '#') { + if (!stateOverride && isWindowsDriveLetter(buffer)) { + state = PATH; + } else if (buffer == '') { + url.host = ''; + if (stateOverride) return; + state = PATH_START; + } else { + failure = parseHost(url, buffer); + if (failure) return failure; + if (url.host == 'localhost') url.host = ''; + if (stateOverride) return; + buffer = ''; + state = PATH_START; + } continue; + } else buffer += char; + break; + + case PATH_START: + if (isSpecial(url)) { + state = PATH; + if (char != '/' && char != '\\') continue; + } else if (!stateOverride && char == '?') { + url.query = ''; + state = QUERY; + } else if (!stateOverride && char == '#') { + url.fragment = ''; + state = FRAGMENT; + } else if (char != EOF) { + state = PATH; + if (char != '/') continue; + } break; + + case PATH: + if ( + char == EOF || char == '/' || + (char == '\\' && isSpecial(url)) || + (!stateOverride && (char == '?' || char == '#')) + ) { + if (isDoubleDot(buffer)) { + shortenURLsPath(url); + if (char != '/' && !(char == '\\' && isSpecial(url))) { + url.path.push(''); + } + } else if (isSingleDot(buffer)) { + if (char != '/' && !(char == '\\' && isSpecial(url))) { + url.path.push(''); + } + } else { + if (url.scheme == 'file' && !url.path.length && isWindowsDriveLetter(buffer)) { + if (url.host) url.host = ''; + buffer = buffer.charAt(0) + ':'; // normalize windows drive letter + } + url.path.push(buffer); + } + buffer = ''; + if (url.scheme == 'file' && (char == EOF || char == '?' || char == '#')) { + while (url.path.length > 1 && url.path[0] === '') { + url.path.shift(); + } + } + if (char == '?') { + url.query = ''; + state = QUERY; + } else if (char == '#') { + url.fragment = ''; + state = FRAGMENT; + } + } else { + buffer += percentEncode(char, pathPercentEncodeSet); + } break; + + case CANNOT_BE_A_BASE_URL_PATH: + if (char == '?') { + url.query = ''; + state = QUERY; + } else if (char == '#') { + url.fragment = ''; + state = FRAGMENT; + } else if (char != EOF) { + url.path[0] += percentEncode(char, C0ControlPercentEncodeSet); + } break; + + case QUERY: + if (!stateOverride && char == '#') { + url.fragment = ''; + state = FRAGMENT; + } else if (char != EOF) { + if (char == "'" && isSpecial(url)) url.query += '%27'; + else if (char == '#') url.query += '%23'; + else url.query += percentEncode(char, C0ControlPercentEncodeSet); + } break; + + case FRAGMENT: + if (char != EOF) url.fragment += percentEncode(char, fragmentPercentEncodeSet); + break; + } + + pointer++; + } +}; + +// `URL` constructor +// https://url.spec.whatwg.org/#url-class +var URLConstructor = function URL(url /* , base */) { + var that = anInstance(this, URLConstructor, 'URL'); + var base = arguments.length > 1 ? arguments[1] : undefined; + var urlString = String(url); + var state = setInternalState(that, { type: 'URL' }); + var baseState, failure; + if (base !== undefined) { + if (base instanceof URLConstructor) baseState = getInternalURLState(base); + else { + failure = parseURL(baseState = {}, String(base)); + if (failure) throw TypeError(failure); + } + } + failure = parseURL(state, urlString, null, baseState); + if (failure) throw TypeError(failure); + var searchParams = state.searchParams = new URLSearchParams(); + var searchParamsState = getInternalSearchParamsState(searchParams); + searchParamsState.updateSearchParams(state.query); + searchParamsState.updateURL = function () { + state.query = String(searchParams) || null; + }; + if (!DESCRIPTORS) { + that.href = serializeURL.call(that); + that.origin = getOrigin.call(that); + that.protocol = getProtocol.call(that); + that.username = getUsername.call(that); + that.password = getPassword.call(that); + that.host = getHost.call(that); + that.hostname = getHostname.call(that); + that.port = getPort.call(that); + that.pathname = getPathname.call(that); + that.search = getSearch.call(that); + that.searchParams = getSearchParams.call(that); + that.hash = getHash.call(that); + } +}; + +var URLPrototype = URLConstructor.prototype; + +var serializeURL = function () { + var url = getInternalURLState(this); + var scheme = url.scheme; + var username = url.username; + var password = url.password; + var host = url.host; + var port = url.port; + var path = url.path; + var query = url.query; + var fragment = url.fragment; + var output = scheme + ':'; + if (host !== null) { + output += '//'; + if (includesCredentials(url)) { + output += username + (password ? ':' + password : '') + '@'; + } + output += serializeHost(host); + if (port !== null) output += ':' + port; + } else if (scheme == 'file') output += '//'; + output += url.cannotBeABaseURL ? path[0] : path.length ? '/' + path.join('/') : ''; + if (query !== null) output += '?' + query; + if (fragment !== null) output += '#' + fragment; + return output; +}; + +var getOrigin = function () { + var url = getInternalURLState(this); + var scheme = url.scheme; + var port = url.port; + if (scheme == 'blob') try { + return new URL(scheme.path[0]).origin; + } catch (error) { + return 'null'; + } + if (scheme == 'file' || !isSpecial(url)) return 'null'; + return scheme + '://' + serializeHost(url.host) + (port !== null ? ':' + port : ''); +}; + +var getProtocol = function () { + return getInternalURLState(this).scheme + ':'; +}; + +var getUsername = function () { + return getInternalURLState(this).username; +}; + +var getPassword = function () { + return getInternalURLState(this).password; +}; + +var getHost = function () { + var url = getInternalURLState(this); + var host = url.host; + var port = url.port; + return host === null ? '' + : port === null ? serializeHost(host) + : serializeHost(host) + ':' + port; +}; + +var getHostname = function () { + var host = getInternalURLState(this).host; + return host === null ? '' : serializeHost(host); +}; + +var getPort = function () { + var port = getInternalURLState(this).port; + return port === null ? '' : String(port); +}; + +var getPathname = function () { + var url = getInternalURLState(this); + var path = url.path; + return url.cannotBeABaseURL ? path[0] : path.length ? '/' + path.join('/') : ''; +}; + +var getSearch = function () { + var query = getInternalURLState(this).query; + return query ? '?' + query : ''; +}; + +var getSearchParams = function () { + return getInternalURLState(this).searchParams; +}; + +var getHash = function () { + var fragment = getInternalURLState(this).fragment; + return fragment ? '#' + fragment : ''; +}; + +var accessorDescriptor = function (getter, setter) { + return { get: getter, set: setter, configurable: true, enumerable: true }; +}; + +if (DESCRIPTORS) { + defineProperties(URLPrototype, { + // `URL.prototype.href` accessors pair + // https://url.spec.whatwg.org/#dom-url-href + href: accessorDescriptor(serializeURL, function (href) { + var url = getInternalURLState(this); + var urlString = String(href); + var failure = parseURL(url, urlString); + if (failure) throw TypeError(failure); + getInternalSearchParamsState(url.searchParams).updateSearchParams(url.query); + }), + // `URL.prototype.origin` getter + // https://url.spec.whatwg.org/#dom-url-origin + origin: accessorDescriptor(getOrigin), + // `URL.prototype.protocol` accessors pair + // https://url.spec.whatwg.org/#dom-url-protocol + protocol: accessorDescriptor(getProtocol, function (protocol) { + var url = getInternalURLState(this); + parseURL(url, String(protocol) + ':', SCHEME_START); + }), + // `URL.prototype.username` accessors pair + // https://url.spec.whatwg.org/#dom-url-username + username: accessorDescriptor(getUsername, function (username) { + var url = getInternalURLState(this); + var codePoints = arrayFrom(String(username)); + if (cannotHaveUsernamePasswordPort(url)) return; + url.username = ''; + for (var i = 0; i < codePoints.length; i++) { + url.username += percentEncode(codePoints[i], userinfoPercentEncodeSet); + } + }), + // `URL.prototype.password` accessors pair + // https://url.spec.whatwg.org/#dom-url-password + password: accessorDescriptor(getPassword, function (password) { + var url = getInternalURLState(this); + var codePoints = arrayFrom(String(password)); + if (cannotHaveUsernamePasswordPort(url)) return; + url.password = ''; + for (var i = 0; i < codePoints.length; i++) { + url.password += percentEncode(codePoints[i], userinfoPercentEncodeSet); + } + }), + // `URL.prototype.host` accessors pair + // https://url.spec.whatwg.org/#dom-url-host + host: accessorDescriptor(getHost, function (host) { + var url = getInternalURLState(this); + if (url.cannotBeABaseURL) return; + parseURL(url, String(host), HOST); + }), + // `URL.prototype.hostname` accessors pair + // https://url.spec.whatwg.org/#dom-url-hostname + hostname: accessorDescriptor(getHostname, function (hostname) { + var url = getInternalURLState(this); + if (url.cannotBeABaseURL) return; + parseURL(url, String(hostname), HOSTNAME); + }), + // `URL.prototype.port` accessors pair + // https://url.spec.whatwg.org/#dom-url-port + port: accessorDescriptor(getPort, function (port) { + var url = getInternalURLState(this); + if (cannotHaveUsernamePasswordPort(url)) return; + port = String(port); + if (port == '') url.port = null; + else parseURL(url, port, PORT); + }), + // `URL.prototype.pathname` accessors pair + // https://url.spec.whatwg.org/#dom-url-pathname + pathname: accessorDescriptor(getPathname, function (pathname) { + var url = getInternalURLState(this); + if (url.cannotBeABaseURL) return; + url.path = []; + parseURL(url, pathname + '', PATH_START); + }), + // `URL.prototype.search` accessors pair + // https://url.spec.whatwg.org/#dom-url-search + search: accessorDescriptor(getSearch, function (search) { + var url = getInternalURLState(this); + search = String(search); + if (search == '') { + url.query = null; + } else { + if ('?' == search.charAt(0)) search = search.slice(1); + url.query = ''; + parseURL(url, search, QUERY); + } + getInternalSearchParamsState(url.searchParams).updateSearchParams(url.query); + }), + // `URL.prototype.searchParams` getter + // https://url.spec.whatwg.org/#dom-url-searchparams + searchParams: accessorDescriptor(getSearchParams), + // `URL.prototype.hash` accessors pair + // https://url.spec.whatwg.org/#dom-url-hash + hash: accessorDescriptor(getHash, function (hash) { + var url = getInternalURLState(this); + hash = String(hash); + if (hash == '') { + url.fragment = null; + return; + } + if ('#' == hash.charAt(0)) hash = hash.slice(1); + url.fragment = ''; + parseURL(url, hash, FRAGMENT); + }) + }); +} + +// `URL.prototype.toJSON` method +// https://url.spec.whatwg.org/#dom-url-tojson +redefine(URLPrototype, 'toJSON', function toJSON() { + return serializeURL.call(this); +}, { enumerable: true }); + +// `URL.prototype.toString` method +// https://url.spec.whatwg.org/#URL-stringification-behavior +redefine(URLPrototype, 'toString', function toString() { + return serializeURL.call(this); +}, { enumerable: true }); + +if (NativeURL) { + var nativeCreateObjectURL = NativeURL.createObjectURL; + var nativeRevokeObjectURL = NativeURL.revokeObjectURL; + // `URL.createObjectURL` method + // https://developer.mozilla.org/en-US/docs/Web/API/URL/createObjectURL + // eslint-disable-next-line no-unused-vars -- required for `.length` + if (nativeCreateObjectURL) redefine(URLConstructor, 'createObjectURL', function createObjectURL(blob) { + return nativeCreateObjectURL.apply(NativeURL, arguments); + }); + // `URL.revokeObjectURL` method + // https://developer.mozilla.org/en-US/docs/Web/API/URL/revokeObjectURL + // eslint-disable-next-line no-unused-vars -- required for `.length` + if (nativeRevokeObjectURL) redefine(URLConstructor, 'revokeObjectURL', function revokeObjectURL(url) { + return nativeRevokeObjectURL.apply(NativeURL, arguments); + }); +} + +setToStringTag(URLConstructor, 'URL'); + +$({ global: true, forced: !USE_NATIVE_URL, sham: !DESCRIPTORS }, { + URL: URLConstructor +}); + + +/***/ }) + +/******/ }); +/************************************************************************/ +/******/ // The module cache +/******/ var __webpack_module_cache__ = {}; +/******/ +/******/ // The require function +/******/ function __webpack_require__(moduleId) { +/******/ // Check if module is in cache +/******/ if(__webpack_module_cache__[moduleId]) { +/******/ return __webpack_module_cache__[moduleId].exports; +/******/ } +/******/ // Create a new module (and put it into the cache) +/******/ var module = __webpack_module_cache__[moduleId] = { +/******/ // no module.id needed +/******/ // no module.loaded needed +/******/ exports: {} +/******/ }; +/******/ +/******/ // Execute the module function +/******/ __webpack_modules__[moduleId](module, module.exports, __webpack_require__); +/******/ +/******/ // Return the exports of the module +/******/ return module.exports; +/******/ } +/******/ +/************************************************************************/ +/******/ /* webpack/runtime/define property getters */ +/******/ !function() { +/******/ // define getter functions for harmony exports +/******/ __webpack_require__.d = function(exports, definition) { +/******/ for(var key in definition) { +/******/ if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) { +/******/ Object.defineProperty(exports, key, { enumerable: true, get: definition[key] }); +/******/ } +/******/ } +/******/ }; +/******/ }(); +/******/ +/******/ /* webpack/runtime/global */ +/******/ !function() { +/******/ __webpack_require__.g = (function() { +/******/ if (typeof globalThis === 'object') return globalThis; +/******/ try { +/******/ return this || new Function('return this')(); +/******/ } catch (e) { +/******/ if (typeof window === 'object') return window; +/******/ } +/******/ })(); +/******/ }(); +/******/ +/******/ /* webpack/runtime/hasOwnProperty shorthand */ +/******/ !function() { +/******/ __webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); } +/******/ }(); +/******/ +/******/ /* webpack/runtime/make namespace object */ +/******/ !function() { +/******/ // define __esModule on exports +/******/ __webpack_require__.r = function(exports) { +/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) { +/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' }); +/******/ } +/******/ Object.defineProperty(exports, '__esModule', { value: true }); +/******/ }; +/******/ }(); +/******/ +/************************************************************************/ +var __webpack_exports__ = {}; +// This entry need to be wrapped in an IIFE because it need to be in strict mode. +!function() { +"use strict"; +// ESM COMPAT FLAG +__webpack_require__.r(__webpack_exports__); + +// EXPORTS +__webpack_require__.d(__webpack_exports__, { + "Dropzone": function() { return /* reexport */ Dropzone; }, + "default": function() { return /* binding */ dropzone_dist; } +}); + +// EXTERNAL MODULE: ./node_modules/core-js/modules/es.array.concat.js +var es_array_concat = __webpack_require__(2222); +// EXTERNAL MODULE: ./node_modules/core-js/modules/es.array.filter.js +var es_array_filter = __webpack_require__(7327); +// EXTERNAL MODULE: ./node_modules/core-js/modules/es.array.index-of.js +var es_array_index_of = __webpack_require__(2772); +// EXTERNAL MODULE: ./node_modules/core-js/modules/es.array.iterator.js +var es_array_iterator = __webpack_require__(6992); +// EXTERNAL MODULE: ./node_modules/core-js/modules/es.array.map.js +var es_array_map = __webpack_require__(1249); +// EXTERNAL MODULE: ./node_modules/core-js/modules/es.array.slice.js +var es_array_slice = __webpack_require__(7042); +// EXTERNAL MODULE: ./node_modules/core-js/modules/es.array.splice.js +var es_array_splice = __webpack_require__(561); +// EXTERNAL MODULE: ./node_modules/core-js/modules/es.array-buffer.constructor.js +var es_array_buffer_constructor = __webpack_require__(8264); +// EXTERNAL MODULE: ./node_modules/core-js/modules/es.function.name.js +var es_function_name = __webpack_require__(8309); +// EXTERNAL MODULE: ./node_modules/core-js/modules/es.object.get-prototype-of.js +var es_object_get_prototype_of = __webpack_require__(489); +// EXTERNAL MODULE: ./node_modules/core-js/modules/es.object.to-string.js +var es_object_to_string = __webpack_require__(1539); +// EXTERNAL MODULE: ./node_modules/core-js/modules/es.regexp.exec.js +var es_regexp_exec = __webpack_require__(4916); +// EXTERNAL MODULE: ./node_modules/core-js/modules/es.regexp.to-string.js +var es_regexp_to_string = __webpack_require__(9714); +// EXTERNAL MODULE: ./node_modules/core-js/modules/es.string.iterator.js +var es_string_iterator = __webpack_require__(8783); +// EXTERNAL MODULE: ./node_modules/core-js/modules/es.string.match.js +var es_string_match = __webpack_require__(4723); +// EXTERNAL MODULE: ./node_modules/core-js/modules/es.string.replace.js +var es_string_replace = __webpack_require__(5306); +// EXTERNAL MODULE: ./node_modules/core-js/modules/es.string.split.js +var es_string_split = __webpack_require__(3123); +// EXTERNAL MODULE: ./node_modules/core-js/modules/es.string.trim.js +var es_string_trim = __webpack_require__(3210); +// EXTERNAL MODULE: ./node_modules/core-js/modules/es.typed-array.uint8-array.js +var es_typed_array_uint8_array = __webpack_require__(2472); +// EXTERNAL MODULE: ./node_modules/core-js/modules/es.typed-array.copy-within.js +var es_typed_array_copy_within = __webpack_require__(2990); +// EXTERNAL MODULE: ./node_modules/core-js/modules/es.typed-array.every.js +var es_typed_array_every = __webpack_require__(8927); +// EXTERNAL MODULE: ./node_modules/core-js/modules/es.typed-array.fill.js +var es_typed_array_fill = __webpack_require__(3105); +// EXTERNAL MODULE: ./node_modules/core-js/modules/es.typed-array.filter.js +var es_typed_array_filter = __webpack_require__(5035); +// EXTERNAL MODULE: ./node_modules/core-js/modules/es.typed-array.find.js +var es_typed_array_find = __webpack_require__(4345); +// EXTERNAL MODULE: ./node_modules/core-js/modules/es.typed-array.find-index.js +var es_typed_array_find_index = __webpack_require__(7174); +// EXTERNAL MODULE: ./node_modules/core-js/modules/es.typed-array.for-each.js +var es_typed_array_for_each = __webpack_require__(2846); +// EXTERNAL MODULE: ./node_modules/core-js/modules/es.typed-array.includes.js +var es_typed_array_includes = __webpack_require__(4731); +// EXTERNAL MODULE: ./node_modules/core-js/modules/es.typed-array.index-of.js +var es_typed_array_index_of = __webpack_require__(7209); +// EXTERNAL MODULE: ./node_modules/core-js/modules/es.typed-array.iterator.js +var es_typed_array_iterator = __webpack_require__(6319); +// EXTERNAL MODULE: ./node_modules/core-js/modules/es.typed-array.join.js +var es_typed_array_join = __webpack_require__(8867); +// EXTERNAL MODULE: ./node_modules/core-js/modules/es.typed-array.last-index-of.js +var es_typed_array_last_index_of = __webpack_require__(7789); +// EXTERNAL MODULE: ./node_modules/core-js/modules/es.typed-array.map.js +var es_typed_array_map = __webpack_require__(3739); +// EXTERNAL MODULE: ./node_modules/core-js/modules/es.typed-array.reduce.js +var es_typed_array_reduce = __webpack_require__(9368); +// EXTERNAL MODULE: ./node_modules/core-js/modules/es.typed-array.reduce-right.js +var es_typed_array_reduce_right = __webpack_require__(4483); +// EXTERNAL MODULE: ./node_modules/core-js/modules/es.typed-array.reverse.js +var es_typed_array_reverse = __webpack_require__(2056); +// EXTERNAL MODULE: ./node_modules/core-js/modules/es.typed-array.set.js +var es_typed_array_set = __webpack_require__(3462); +// EXTERNAL MODULE: ./node_modules/core-js/modules/es.typed-array.slice.js +var es_typed_array_slice = __webpack_require__(678); +// EXTERNAL MODULE: ./node_modules/core-js/modules/es.typed-array.some.js +var es_typed_array_some = __webpack_require__(7462); +// EXTERNAL MODULE: ./node_modules/core-js/modules/es.typed-array.sort.js +var es_typed_array_sort = __webpack_require__(3824); +// EXTERNAL MODULE: ./node_modules/core-js/modules/es.typed-array.subarray.js +var es_typed_array_subarray = __webpack_require__(5021); +// EXTERNAL MODULE: ./node_modules/core-js/modules/es.typed-array.to-locale-string.js +var es_typed_array_to_locale_string = __webpack_require__(2974); +// EXTERNAL MODULE: ./node_modules/core-js/modules/es.typed-array.to-string.js +var es_typed_array_to_string = __webpack_require__(5016); +// EXTERNAL MODULE: ./node_modules/core-js/modules/web.dom-collections.for-each.js +var web_dom_collections_for_each = __webpack_require__(4747); +// EXTERNAL MODULE: ./node_modules/core-js/modules/web.dom-collections.iterator.js +var web_dom_collections_iterator = __webpack_require__(3948); +// EXTERNAL MODULE: ./node_modules/core-js/modules/web.url.js +var web_url = __webpack_require__(285); +;// CONCATENATED MODULE: ./src/emitter.js + + +function _createForOfIteratorHelper(o, allowArrayLike) { var it; if (typeof Symbol === "undefined" || o[Symbol.iterator] == null) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = o[Symbol.iterator](); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; } + +function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); } + +function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; } + +function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } + +function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } + +function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } + +// The Emitter class provides the ability to call `.on()` on Dropzone to listen +// to events. +// It is strongly based on component's emitter class, and I removed the +// functionality because of the dependency hell with different frameworks. +var Emitter = /*#__PURE__*/function () { + function Emitter() { + _classCallCheck(this, Emitter); + } + + _createClass(Emitter, [{ + key: "on", + value: // Add an event listener for given event + function on(event, fn) { + this._callbacks = this._callbacks || {}; // Create namespace for this event + + if (!this._callbacks[event]) { + this._callbacks[event] = []; + } + + this._callbacks[event].push(fn); + + return this; + } + }, { + key: "emit", + value: function emit(event) { + this._callbacks = this._callbacks || {}; + var callbacks = this._callbacks[event]; + + for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) { + args[_key - 1] = arguments[_key]; + } + + if (callbacks) { + var _iterator = _createForOfIteratorHelper(callbacks, true), + _step; + + try { + for (_iterator.s(); !(_step = _iterator.n()).done;) { + var callback = _step.value; + callback.apply(this, args); + } + } catch (err) { + _iterator.e(err); + } finally { + _iterator.f(); + } + } // trigger a corresponding DOM event + + + if (this.element) { + this.element.dispatchEvent(this.makeEvent("dropzone:" + event, { + args: args + })); + } + + return this; + } + }, { + key: "makeEvent", + value: function makeEvent(eventName, detail) { + var params = { + bubbles: true, + cancelable: true, + detail: detail + }; + + if (typeof window.CustomEvent === "function") { + return new CustomEvent(eventName, params); + } else { + // IE 11 support + // https://developer.mozilla.org/en-US/docs/Web/API/CustomEvent/CustomEvent + var evt = document.createEvent("CustomEvent"); + evt.initCustomEvent(eventName, params.bubbles, params.cancelable, params.detail); + return evt; + } + } // Remove event listener for given event. If fn is not provided, all event + // listeners for that event will be removed. If neither is provided, all + // event listeners will be removed. + + }, { + key: "off", + value: function off(event, fn) { + if (!this._callbacks || arguments.length === 0) { + this._callbacks = {}; + return this; + } // specific event + + + var callbacks = this._callbacks[event]; + + if (!callbacks) { + return this; + } // remove all handlers + + + if (arguments.length === 1) { + delete this._callbacks[event]; + return this; + } // remove specific handler + + + for (var i = 0; i < callbacks.length; i++) { + var callback = callbacks[i]; + + if (callback === fn) { + callbacks.splice(i, 1); + break; + } + } + + return this; + } + }]); + + return Emitter; +}(); + + +;// CONCATENATED MODULE: ./src/preview-template.html +// Module +var code = "
    Check
    Error
    "; +// Exports +/* harmony default export */ var preview_template = (code); +;// CONCATENATED MODULE: ./src/options.js + + + + + +function options_createForOfIteratorHelper(o, allowArrayLike) { var it; if (typeof Symbol === "undefined" || o[Symbol.iterator] == null) { if (Array.isArray(o) || (it = options_unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = o[Symbol.iterator](); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; } + +function options_unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return options_arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return options_arrayLikeToArray(o, minLen); } + +function options_arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; } + + + +var defaultOptions = { + /** + * Has to be specified on elements other than form (or when the form + * doesn't have an `action` attribute). You can also + * provide a function that will be called with `files` and + * must return the url (since `v3.12.0`) + */ + url: null, + + /** + * Can be changed to `"put"` if necessary. You can also provide a function + * that will be called with `files` and must return the method (since `v3.12.0`). + */ + method: "post", + + /** + * Will be set on the XHRequest. + */ + withCredentials: false, + + /** + * The timeout for the XHR requests in milliseconds (since `v4.4.0`). + * If set to null or 0, no timeout is going to be set. + */ + timeout: null, + + /** + * How many file uploads to process in parallel (See the + * Enqueuing file uploads documentation section for more info) + */ + parallelUploads: 2, + + /** + * Whether to send multiple files in one request. If + * this it set to true, then the fallback file input element will + * have the `multiple` attribute as well. This option will + * also trigger additional events (like `processingmultiple`). See the events + * documentation section for more information. + */ + uploadMultiple: false, + + /** + * Whether you want files to be uploaded in chunks to your server. This can't be + * used in combination with `uploadMultiple`. + * + * See [chunksUploaded](#config-chunksUploaded) for the callback to finalise an upload. + */ + chunking: false, + + /** + * If `chunking` is enabled, this defines whether **every** file should be chunked, + * even if the file size is below chunkSize. This means, that the additional chunk + * form data will be submitted and the `chunksUploaded` callback will be invoked. + */ + forceChunking: false, + + /** + * If `chunking` is `true`, then this defines the chunk size in bytes. + */ + chunkSize: 2000000, + + /** + * If `true`, the individual chunks of a file are being uploaded simultaneously. + */ + parallelChunkUploads: false, + + /** + * Whether a chunk should be retried if it fails. + */ + retryChunks: false, + + /** + * If `retryChunks` is true, how many times should it be retried. + */ + retryChunksLimit: 3, + + /** + * The maximum filesize (in bytes) that is allowed to be uploaded. + */ + maxFilesize: 256, + + /** + * The name of the file param that gets transferred. + * **NOTE**: If you have the option `uploadMultiple` set to `true`, then + * Dropzone will append `[]` to the name. + */ + paramName: "file", + + /** + * Whether thumbnails for images should be generated + */ + createImageThumbnails: true, + + /** + * In MB. When the filename exceeds this limit, the thumbnail will not be generated. + */ + maxThumbnailFilesize: 10, + + /** + * If `null`, the ratio of the image will be used to calculate it. + */ + thumbnailWidth: 120, + + /** + * The same as `thumbnailWidth`. If both are null, images will not be resized. + */ + thumbnailHeight: 120, + + /** + * How the images should be scaled down in case both, `thumbnailWidth` and `thumbnailHeight` are provided. + * Can be either `contain` or `crop`. + */ + thumbnailMethod: "crop", + + /** + * If set, images will be resized to these dimensions before being **uploaded**. + * If only one, `resizeWidth` **or** `resizeHeight` is provided, the original aspect + * ratio of the file will be preserved. + * + * The `options.transformFile` function uses these options, so if the `transformFile` function + * is overridden, these options don't do anything. + */ + resizeWidth: null, + + /** + * See `resizeWidth`. + */ + resizeHeight: null, + + /** + * The mime type of the resized image (before it gets uploaded to the server). + * If `null` the original mime type will be used. To force jpeg, for example, use `image/jpeg`. + * See `resizeWidth` for more information. + */ + resizeMimeType: null, + + /** + * The quality of the resized images. See `resizeWidth`. + */ + resizeQuality: 0.8, + + /** + * How the images should be scaled down in case both, `resizeWidth` and `resizeHeight` are provided. + * Can be either `contain` or `crop`. + */ + resizeMethod: "contain", + + /** + * The base that is used to calculate the **displayed** filesize. You can + * change this to 1024 if you would rather display kibibytes, mebibytes, + * etc... 1024 is technically incorrect, because `1024 bytes` are `1 kibibyte` + * not `1 kilobyte`. You can change this to `1024` if you don't care about + * validity. + */ + filesizeBase: 1000, + + /** + * If not `null` defines how many files this Dropzone handles. If it exceeds, + * the event `maxfilesexceeded` will be called. The dropzone element gets the + * class `dz-max-files-reached` accordingly so you can provide visual + * feedback. + */ + maxFiles: null, + + /** + * An optional object to send additional headers to the server. Eg: + * `{ "My-Awesome-Header": "header value" }` + */ + headers: null, + + /** + * If `true`, the dropzone element itself will be clickable, if `false` + * nothing will be clickable. + * + * You can also pass an HTML element, a CSS selector (for multiple elements) + * or an array of those. In that case, all of those elements will trigger an + * upload when clicked. + */ + clickable: true, + + /** + * Whether hidden files in directories should be ignored. + */ + ignoreHiddenFiles: true, + + /** + * The default implementation of `accept` checks the file's mime type or + * extension against this list. This is a comma separated list of mime + * types or file extensions. + * + * Eg.: `image/*,application/pdf,.psd` + * + * If the Dropzone is `clickable` this option will also be used as + * [`accept`](https://developer.mozilla.org/en-US/docs/HTML/Element/input#attr-accept) + * parameter on the hidden file input as well. + */ + acceptedFiles: null, + + /** + * **Deprecated!** + * Use acceptedFiles instead. + */ + acceptedMimeTypes: null, + + /** + * If false, files will be added to the queue but the queue will not be + * processed automatically. + * This can be useful if you need some additional user input before sending + * files (or if you want want all files sent at once). + * If you're ready to send the file simply call `myDropzone.processQueue()`. + * + * See the [enqueuing file uploads](#enqueuing-file-uploads) documentation + * section for more information. + */ + autoProcessQueue: true, + + /** + * If false, files added to the dropzone will not be queued by default. + * You'll have to call `enqueueFile(file)` manually. + */ + autoQueue: true, + + /** + * If `true`, this will add a link to every file preview to remove or cancel (if + * already uploading) the file. The `dictCancelUpload`, `dictCancelUploadConfirmation` + * and `dictRemoveFile` options are used for the wording. + */ + addRemoveLinks: false, + + /** + * Defines where to display the file previews – if `null` the + * Dropzone element itself is used. Can be a plain `HTMLElement` or a CSS + * selector. The element should have the `dropzone-previews` class so + * the previews are displayed properly. + */ + previewsContainer: null, + + /** + * Set this to `true` if you don't want previews to be shown. + */ + disablePreviews: false, + + /** + * This is the element the hidden input field (which is used when clicking on the + * dropzone to trigger file selection) will be appended to. This might + * be important in case you use frameworks to switch the content of your page. + * + * Can be a selector string, or an element directly. + */ + hiddenInputContainer: "body", + + /** + * If null, no capture type will be specified + * If camera, mobile devices will skip the file selection and choose camera + * If microphone, mobile devices will skip the file selection and choose the microphone + * If camcorder, mobile devices will skip the file selection and choose the camera in video mode + * On apple devices multiple must be set to false. AcceptedFiles may need to + * be set to an appropriate mime type (e.g. "image/*", "audio/*", or "video/*"). + */ + capture: null, + + /** + * **Deprecated**. Use `renameFile` instead. + */ + renameFilename: null, + + /** + * A function that is invoked before the file is uploaded to the server and renames the file. + * This function gets the `File` as argument and can use the `file.name`. The actual name of the + * file that gets used during the upload can be accessed through `file.upload.filename`. + */ + renameFile: null, + + /** + * If `true` the fallback will be forced. This is very useful to test your server + * implementations first and make sure that everything works as + * expected without dropzone if you experience problems, and to test + * how your fallbacks will look. + */ + forceFallback: false, + + /** + * The text used before any files are dropped. + */ + dictDefaultMessage: "Drop files here to upload", + + /** + * The text that replaces the default message text it the browser is not supported. + */ + dictFallbackMessage: "Your browser does not support drag'n'drop file uploads.", + + /** + * The text that will be added before the fallback form. + * If you provide a fallback element yourself, or if this option is `null` this will + * be ignored. + */ + dictFallbackText: "Please use the fallback form below to upload your files like in the olden days.", + + /** + * If the filesize is too big. + * `{{filesize}}` and `{{maxFilesize}}` will be replaced with the respective configuration values. + */ + dictFileTooBig: "File is too big ({{filesize}}MiB). Max filesize: {{maxFilesize}}MiB.", + + /** + * If the file doesn't match the file type. + */ + dictInvalidFileType: "You can't upload files of this type.", + + /** + * If the server response was invalid. + * `{{statusCode}}` will be replaced with the servers status code. + */ + dictResponseError: "Server responded with {{statusCode}} code.", + + /** + * If `addRemoveLinks` is true, the text to be used for the cancel upload link. + */ + dictCancelUpload: "Cancel upload", + + /** + * The text that is displayed if an upload was manually canceled + */ + dictUploadCanceled: "Upload canceled.", + + /** + * If `addRemoveLinks` is true, the text to be used for confirmation when cancelling upload. + */ + dictCancelUploadConfirmation: "Are you sure you want to cancel this upload?", + + /** + * If `addRemoveLinks` is true, the text to be used to remove a file. + */ + dictRemoveFile: "Remove file", + + /** + * If this is not null, then the user will be prompted before removing a file. + */ + dictRemoveFileConfirmation: null, + + /** + * Displayed if `maxFiles` is st and exceeded. + * The string `{{maxFiles}}` will be replaced by the configuration value. + */ + dictMaxFilesExceeded: "You can not upload any more files.", + + /** + * Allows you to translate the different units. Starting with `tb` for terabytes and going down to + * `b` for bytes. + */ + dictFileSizeUnits: { + tb: "TB", + gb: "GB", + mb: "MB", + kb: "KB", + b: "b" + }, + + /** + * Called when dropzone initialized + * You can add event listeners here + */ + init: function init() {}, + + /** + * Can be an **object** of additional parameters to transfer to the server, **or** a `Function` + * that gets invoked with the `files`, `xhr` and, if it's a chunked upload, `chunk` arguments. In case + * of a function, this needs to return a map. + * + * The default implementation does nothing for normal uploads, but adds relevant information for + * chunked uploads. + * + * This is the same as adding hidden input fields in the form element. + */ + params: function params(files, xhr, chunk) { + if (chunk) { + return { + dzuuid: chunk.file.upload.uuid, + dzchunkindex: chunk.index, + dztotalfilesize: chunk.file.size, + dzchunksize: this.options.chunkSize, + dztotalchunkcount: chunk.file.upload.totalChunkCount, + dzchunkbyteoffset: chunk.index * this.options.chunkSize + }; + } + }, + + /** + * A function that gets a [file](https://developer.mozilla.org/en-US/docs/DOM/File) + * and a `done` function as parameters. + * + * If the done function is invoked without arguments, the file is "accepted" and will + * be processed. If you pass an error message, the file is rejected, and the error + * message will be displayed. + * This function will not be called if the file is too big or doesn't match the mime types. + */ + accept: function accept(file, done) { + return done(); + }, + + /** + * The callback that will be invoked when all chunks have been uploaded for a file. + * It gets the file for which the chunks have been uploaded as the first parameter, + * and the `done` function as second. `done()` needs to be invoked when everything + * needed to finish the upload process is done. + */ + chunksUploaded: function chunksUploaded(file, done) { + done(); + }, + + /** + * Gets called when the browser is not supported. + * The default implementation shows the fallback input field and adds + * a text. + */ + fallback: function fallback() { + // This code should pass in IE7... :( + var messageElement; + this.element.className = "".concat(this.element.className, " dz-browser-not-supported"); + + var _iterator = options_createForOfIteratorHelper(this.element.getElementsByTagName("div"), true), + _step; + + try { + for (_iterator.s(); !(_step = _iterator.n()).done;) { + var child = _step.value; + + if (/(^| )dz-message($| )/.test(child.className)) { + messageElement = child; + child.className = "dz-message"; // Removes the 'dz-default' class + + break; + } + } + } catch (err) { + _iterator.e(err); + } finally { + _iterator.f(); + } + + if (!messageElement) { + messageElement = Dropzone.createElement('
    '); + this.element.appendChild(messageElement); + } + + var span = messageElement.getElementsByTagName("span")[0]; + + if (span) { + if (span.textContent != null) { + span.textContent = this.options.dictFallbackMessage; + } else if (span.innerText != null) { + span.innerText = this.options.dictFallbackMessage; + } + } + + return this.element.appendChild(this.getFallbackForm()); + }, + + /** + * Gets called to calculate the thumbnail dimensions. + * + * It gets `file`, `width` and `height` (both may be `null`) as parameters and must return an object containing: + * + * - `srcWidth` & `srcHeight` (required) + * - `trgWidth` & `trgHeight` (required) + * - `srcX` & `srcY` (optional, default `0`) + * - `trgX` & `trgY` (optional, default `0`) + * + * Those values are going to be used by `ctx.drawImage()`. + */ + resize: function resize(file, width, height, resizeMethod) { + var info = { + srcX: 0, + srcY: 0, + srcWidth: file.width, + srcHeight: file.height + }; + var srcRatio = file.width / file.height; // Automatically calculate dimensions if not specified + + if (width == null && height == null) { + width = info.srcWidth; + height = info.srcHeight; + } else if (width == null) { + width = height * srcRatio; + } else if (height == null) { + height = width / srcRatio; + } // Make sure images aren't upscaled + + + width = Math.min(width, info.srcWidth); + height = Math.min(height, info.srcHeight); + var trgRatio = width / height; + + if (info.srcWidth > width || info.srcHeight > height) { + // Image is bigger and needs rescaling + if (resizeMethod === "crop") { + if (srcRatio > trgRatio) { + info.srcHeight = file.height; + info.srcWidth = info.srcHeight * trgRatio; + } else { + info.srcWidth = file.width; + info.srcHeight = info.srcWidth / trgRatio; + } + } else if (resizeMethod === "contain") { + // Method 'contain' + if (srcRatio > trgRatio) { + height = width / srcRatio; + } else { + width = height * srcRatio; + } + } else { + throw new Error("Unknown resizeMethod '".concat(resizeMethod, "'")); + } + } + + info.srcX = (file.width - info.srcWidth) / 2; + info.srcY = (file.height - info.srcHeight) / 2; + info.trgWidth = width; + info.trgHeight = height; + return info; + }, + + /** + * Can be used to transform the file (for example, resize an image if necessary). + * + * The default implementation uses `resizeWidth` and `resizeHeight` (if provided) and resizes + * images according to those dimensions. + * + * Gets the `file` as the first parameter, and a `done()` function as the second, that needs + * to be invoked with the file when the transformation is done. + */ + transformFile: function transformFile(file, done) { + if ((this.options.resizeWidth || this.options.resizeHeight) && file.type.match(/image.*/)) { + return this.resizeImage(file, this.options.resizeWidth, this.options.resizeHeight, this.options.resizeMethod, done); + } else { + return done(file); + } + }, + + /** + * A string that contains the template used for each dropped + * file. Change it to fulfill your needs but make sure to properly + * provide all elements. + * + * If you want to use an actual HTML element instead of providing a String + * as a config option, you could create a div with the id `tpl`, + * put the template inside it and provide the element like this: + * + * document + * .querySelector('#tpl') + * .innerHTML + * + */ + previewTemplate: preview_template, + + /* + Those functions register themselves to the events on init and handle all + the user interface specific stuff. Overwriting them won't break the upload + but can break the way it's displayed. + You can overwrite them if you don't like the default behavior. If you just + want to add an additional event handler, register it on the dropzone object + and don't overwrite those options. + */ + // Those are self explanatory and simply concern the DragnDrop. + drop: function drop(e) { + return this.element.classList.remove("dz-drag-hover"); + }, + dragstart: function dragstart(e) {}, + dragend: function dragend(e) { + return this.element.classList.remove("dz-drag-hover"); + }, + dragenter: function dragenter(e) { + return this.element.classList.add("dz-drag-hover"); + }, + dragover: function dragover(e) { + return this.element.classList.add("dz-drag-hover"); + }, + dragleave: function dragleave(e) { + return this.element.classList.remove("dz-drag-hover"); + }, + paste: function paste(e) {}, + // Called whenever there are no files left in the dropzone anymore, and the + // dropzone should be displayed as if in the initial state. + reset: function reset() { + return this.element.classList.remove("dz-started"); + }, + // Called when a file is added to the queue + // Receives `file` + addedfile: function addedfile(file) { + var _this = this; + + if (this.element === this.previewsContainer) { + this.element.classList.add("dz-started"); + } + + if (this.previewsContainer && !this.options.disablePreviews) { + file.previewElement = Dropzone.createElement(this.options.previewTemplate.trim()); + file.previewTemplate = file.previewElement; // Backwards compatibility + + this.previewsContainer.appendChild(file.previewElement); + + var _iterator2 = options_createForOfIteratorHelper(file.previewElement.querySelectorAll("[data-dz-name]"), true), + _step2; + + try { + for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) { + var node = _step2.value; + node.textContent = file.name; + } + } catch (err) { + _iterator2.e(err); + } finally { + _iterator2.f(); + } + + var _iterator3 = options_createForOfIteratorHelper(file.previewElement.querySelectorAll("[data-dz-size]"), true), + _step3; + + try { + for (_iterator3.s(); !(_step3 = _iterator3.n()).done;) { + node = _step3.value; + node.innerHTML = this.filesize(file.size); + } + } catch (err) { + _iterator3.e(err); + } finally { + _iterator3.f(); + } + + if (this.options.addRemoveLinks) { + file._removeLink = Dropzone.createElement("
    ".concat(this.options.dictRemoveFile, "")); + file.previewElement.appendChild(file._removeLink); + } + + var removeFileEvent = function removeFileEvent(e) { + e.preventDefault(); + e.stopPropagation(); + + if (file.status === Dropzone.UPLOADING) { + return Dropzone.confirm(_this.options.dictCancelUploadConfirmation, function () { + return _this.removeFile(file); + }); + } else { + if (_this.options.dictRemoveFileConfirmation) { + return Dropzone.confirm(_this.options.dictRemoveFileConfirmation, function () { + return _this.removeFile(file); + }); + } else { + return _this.removeFile(file); + } + } + }; + + var _iterator4 = options_createForOfIteratorHelper(file.previewElement.querySelectorAll("[data-dz-remove]"), true), + _step4; + + try { + for (_iterator4.s(); !(_step4 = _iterator4.n()).done;) { + var removeLink = _step4.value; + removeLink.addEventListener("click", removeFileEvent); + } + } catch (err) { + _iterator4.e(err); + } finally { + _iterator4.f(); + } + } + }, + // Called whenever a file is removed. + removedfile: function removedfile(file) { + if (file.previewElement != null && file.previewElement.parentNode != null) { + file.previewElement.parentNode.removeChild(file.previewElement); + } + + return this._updateMaxFilesReachedClass(); + }, + // Called when a thumbnail has been generated + // Receives `file` and `dataUrl` + thumbnail: function thumbnail(file, dataUrl) { + if (file.previewElement) { + file.previewElement.classList.remove("dz-file-preview"); + + var _iterator5 = options_createForOfIteratorHelper(file.previewElement.querySelectorAll("[data-dz-thumbnail]"), true), + _step5; + + try { + for (_iterator5.s(); !(_step5 = _iterator5.n()).done;) { + var thumbnailElement = _step5.value; + thumbnailElement.alt = file.name; + thumbnailElement.src = dataUrl; + } + } catch (err) { + _iterator5.e(err); + } finally { + _iterator5.f(); + } + + return setTimeout(function () { + return file.previewElement.classList.add("dz-image-preview"); + }, 1); + } + }, + // Called whenever an error occurs + // Receives `file` and `message` + error: function error(file, message) { + if (file.previewElement) { + file.previewElement.classList.add("dz-error"); + + if (typeof message !== "string" && message.error) { + message = message.error; + } + + var _iterator6 = options_createForOfIteratorHelper(file.previewElement.querySelectorAll("[data-dz-errormessage]"), true), + _step6; + + try { + for (_iterator6.s(); !(_step6 = _iterator6.n()).done;) { + var node = _step6.value; + node.textContent = message; + } + } catch (err) { + _iterator6.e(err); + } finally { + _iterator6.f(); + } + } + }, + errormultiple: function errormultiple() {}, + // Called when a file gets processed. Since there is a cue, not all added + // files are processed immediately. + // Receives `file` + processing: function processing(file) { + if (file.previewElement) { + file.previewElement.classList.add("dz-processing"); + + if (file._removeLink) { + return file._removeLink.innerHTML = this.options.dictCancelUpload; + } + } + }, + processingmultiple: function processingmultiple() {}, + // Called whenever the upload progress gets updated. + // Receives `file`, `progress` (percentage 0-100) and `bytesSent`. + // To get the total number of bytes of the file, use `file.size` + uploadprogress: function uploadprogress(file, progress, bytesSent) { + if (file.previewElement) { + var _iterator7 = options_createForOfIteratorHelper(file.previewElement.querySelectorAll("[data-dz-uploadprogress]"), true), + _step7; + + try { + for (_iterator7.s(); !(_step7 = _iterator7.n()).done;) { + var node = _step7.value; + node.nodeName === "PROGRESS" ? node.value = progress : node.style.width = "".concat(progress, "%"); + } + } catch (err) { + _iterator7.e(err); + } finally { + _iterator7.f(); + } + } + }, + // Called whenever the total upload progress gets updated. + // Called with totalUploadProgress (0-100), totalBytes and totalBytesSent + totaluploadprogress: function totaluploadprogress() {}, + // Called just before the file is sent. Gets the `xhr` object as second + // parameter, so you can modify it (for example to add a CSRF token) and a + // `formData` object to add additional information. + sending: function sending() {}, + sendingmultiple: function sendingmultiple() {}, + // When the complete upload is finished and successful + // Receives `file` + success: function success(file) { + if (file.previewElement) { + return file.previewElement.classList.add("dz-success"); + } + }, + successmultiple: function successmultiple() {}, + // When the upload is canceled. + canceled: function canceled(file) { + return this.emit("error", file, this.options.dictUploadCanceled); + }, + canceledmultiple: function canceledmultiple() {}, + // When the upload is finished, either with success or an error. + // Receives `file` + complete: function complete(file) { + if (file._removeLink) { + file._removeLink.innerHTML = this.options.dictRemoveFile; + } + + if (file.previewElement) { + return file.previewElement.classList.add("dz-complete"); + } + }, + completemultiple: function completemultiple() {}, + maxfilesexceeded: function maxfilesexceeded() {}, + maxfilesreached: function maxfilesreached() {}, + queuecomplete: function queuecomplete() {}, + addedfiles: function addedfiles() {} +}; +/* harmony default export */ var src_options = (defaultOptions); +;// CONCATENATED MODULE: ./src/dropzone.js +function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); } + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +function dropzone_createForOfIteratorHelper(o, allowArrayLike) { var it; if (typeof Symbol === "undefined" || o[Symbol.iterator] == null) { if (Array.isArray(o) || (it = dropzone_unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = o[Symbol.iterator](); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; } + +function dropzone_unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return dropzone_arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return dropzone_arrayLikeToArray(o, minLen); } + +function dropzone_arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; } + +function dropzone_classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } + +function dropzone_defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } + +function dropzone_createClass(Constructor, protoProps, staticProps) { if (protoProps) dropzone_defineProperties(Constructor.prototype, protoProps); if (staticProps) dropzone_defineProperties(Constructor, staticProps); return Constructor; } + +function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); } + +function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); } + +function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; } + +function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } return _assertThisInitialized(self); } + +function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; } + +function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } } + +function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); } + + + + +var Dropzone = /*#__PURE__*/function (_Emitter) { + _inherits(Dropzone, _Emitter); + + var _super = _createSuper(Dropzone); + + function Dropzone(el, options) { + var _this; + + dropzone_classCallCheck(this, Dropzone); + + _this = _super.call(this); + var fallback, left; + _this.element = el; // For backwards compatibility since the version was in the prototype previously + + _this.version = Dropzone.version; + _this.clickableElements = []; + _this.listeners = []; + _this.files = []; // All files + + if (typeof _this.element === "string") { + _this.element = document.querySelector(_this.element); + } // Not checking if instance of HTMLElement or Element since IE9 is extremely weird. + + + if (!_this.element || _this.element.nodeType == null) { + throw new Error("Invalid dropzone element."); + } + + if (_this.element.dropzone) { + throw new Error("Dropzone already attached."); + } // Now add this dropzone to the instances. + + + Dropzone.instances.push(_assertThisInitialized(_this)); // Put the dropzone inside the element itself. + + _this.element.dropzone = _assertThisInitialized(_this); + var elementOptions = (left = Dropzone.optionsForElement(_this.element)) != null ? left : {}; + _this.options = Dropzone.extend({}, src_options, elementOptions, options != null ? options : {}); + _this.options.previewTemplate = _this.options.previewTemplate.replace(/\n*/g, ""); // If the browser failed, just call the fallback and leave + + if (_this.options.forceFallback || !Dropzone.isBrowserSupported()) { + return _possibleConstructorReturn(_this, _this.options.fallback.call(_assertThisInitialized(_this))); + } // @options.url = @element.getAttribute "action" unless @options.url? + + + if (_this.options.url == null) { + _this.options.url = _this.element.getAttribute("action"); + } + + if (!_this.options.url) { + throw new Error("No URL provided."); + } + + if (_this.options.acceptedFiles && _this.options.acceptedMimeTypes) { + throw new Error("You can't provide both 'acceptedFiles' and 'acceptedMimeTypes'. 'acceptedMimeTypes' is deprecated."); + } + + if (_this.options.uploadMultiple && _this.options.chunking) { + throw new Error("You cannot set both: uploadMultiple and chunking."); + } // Backwards compatibility + + + if (_this.options.acceptedMimeTypes) { + _this.options.acceptedFiles = _this.options.acceptedMimeTypes; + delete _this.options.acceptedMimeTypes; + } // Backwards compatibility + + + if (_this.options.renameFilename != null) { + _this.options.renameFile = function (file) { + return _this.options.renameFilename.call(_assertThisInitialized(_this), file.name, file); + }; + } + + if (typeof _this.options.method === "string") { + _this.options.method = _this.options.method.toUpperCase(); + } + + if ((fallback = _this.getExistingFallback()) && fallback.parentNode) { + // Remove the fallback + fallback.parentNode.removeChild(fallback); + } // Display previews in the previewsContainer element or the Dropzone element unless explicitly set to false + + + if (_this.options.previewsContainer !== false) { + if (_this.options.previewsContainer) { + _this.previewsContainer = Dropzone.getElement(_this.options.previewsContainer, "previewsContainer"); + } else { + _this.previewsContainer = _this.element; + } + } + + if (_this.options.clickable) { + if (_this.options.clickable === true) { + _this.clickableElements = [_this.element]; + } else { + _this.clickableElements = Dropzone.getElements(_this.options.clickable, "clickable"); + } + } + + _this.init(); + + return _this; + } // Returns all files that have been accepted + + + dropzone_createClass(Dropzone, [{ + key: "getAcceptedFiles", + value: function getAcceptedFiles() { + return this.files.filter(function (file) { + return file.accepted; + }).map(function (file) { + return file; + }); + } // Returns all files that have been rejected + // Not sure when that's going to be useful, but added for completeness. + + }, { + key: "getRejectedFiles", + value: function getRejectedFiles() { + return this.files.filter(function (file) { + return !file.accepted; + }).map(function (file) { + return file; + }); + } + }, { + key: "getFilesWithStatus", + value: function getFilesWithStatus(status) { + return this.files.filter(function (file) { + return file.status === status; + }).map(function (file) { + return file; + }); + } // Returns all files that are in the queue + + }, { + key: "getQueuedFiles", + value: function getQueuedFiles() { + return this.getFilesWithStatus(Dropzone.QUEUED); + } + }, { + key: "getUploadingFiles", + value: function getUploadingFiles() { + return this.getFilesWithStatus(Dropzone.UPLOADING); + } + }, { + key: "getAddedFiles", + value: function getAddedFiles() { + return this.getFilesWithStatus(Dropzone.ADDED); + } // Files that are either queued or uploading + + }, { + key: "getActiveFiles", + value: function getActiveFiles() { + return this.files.filter(function (file) { + return file.status === Dropzone.UPLOADING || file.status === Dropzone.QUEUED; + }).map(function (file) { + return file; + }); + } // The function that gets called when Dropzone is initialized. You + // can (and should) setup event listeners inside this function. + + }, { + key: "init", + value: function init() { + var _this2 = this; + + // In case it isn't set already + if (this.element.tagName === "form") { + this.element.setAttribute("enctype", "multipart/form-data"); + } + + if (this.element.classList.contains("dropzone") && !this.element.querySelector(".dz-message")) { + this.element.appendChild(Dropzone.createElement("
    "))); + } + + if (this.clickableElements.length) { + var setupHiddenFileInput = function setupHiddenFileInput() { + if (_this2.hiddenFileInput) { + _this2.hiddenFileInput.parentNode.removeChild(_this2.hiddenFileInput); + } + + _this2.hiddenFileInput = document.createElement("input"); + + _this2.hiddenFileInput.setAttribute("type", "file"); + + if (_this2.options.maxFiles === null || _this2.options.maxFiles > 1) { + _this2.hiddenFileInput.setAttribute("multiple", "multiple"); + } + + _this2.hiddenFileInput.className = "dz-hidden-input"; + + if (_this2.options.acceptedFiles !== null) { + _this2.hiddenFileInput.setAttribute("accept", _this2.options.acceptedFiles); + } + + if (_this2.options.capture !== null) { + _this2.hiddenFileInput.setAttribute("capture", _this2.options.capture); + } // Making sure that no one can "tab" into this field. + + + _this2.hiddenFileInput.setAttribute("tabindex", "-1"); // Not setting `display="none"` because some browsers don't accept clicks + // on elements that aren't displayed. + + + _this2.hiddenFileInput.style.visibility = "hidden"; + _this2.hiddenFileInput.style.position = "absolute"; + _this2.hiddenFileInput.style.top = "0"; + _this2.hiddenFileInput.style.left = "0"; + _this2.hiddenFileInput.style.height = "0"; + _this2.hiddenFileInput.style.width = "0"; + Dropzone.getElement(_this2.options.hiddenInputContainer, "hiddenInputContainer").appendChild(_this2.hiddenFileInput); + + _this2.hiddenFileInput.addEventListener("change", function () { + var files = _this2.hiddenFileInput.files; + + if (files.length) { + var _iterator = dropzone_createForOfIteratorHelper(files, true), + _step; + + try { + for (_iterator.s(); !(_step = _iterator.n()).done;) { + var file = _step.value; + + _this2.addFile(file); + } + } catch (err) { + _iterator.e(err); + } finally { + _iterator.f(); + } + } + + _this2.emit("addedfiles", files); + + setupHiddenFileInput(); + }); + }; + + setupHiddenFileInput(); + } + + this.URL = window.URL !== null ? window.URL : window.webkitURL; // Setup all event listeners on the Dropzone object itself. + // They're not in @setupEventListeners() because they shouldn't be removed + // again when the dropzone gets disabled. + + var _iterator2 = dropzone_createForOfIteratorHelper(this.events, true), + _step2; + + try { + for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) { + var eventName = _step2.value; + this.on(eventName, this.options[eventName]); + } + } catch (err) { + _iterator2.e(err); + } finally { + _iterator2.f(); + } + + this.on("uploadprogress", function () { + return _this2.updateTotalUploadProgress(); + }); + this.on("removedfile", function () { + return _this2.updateTotalUploadProgress(); + }); + this.on("canceled", function (file) { + return _this2.emit("complete", file); + }); // Emit a `queuecomplete` event if all files finished uploading. + + this.on("complete", function (file) { + if (_this2.getAddedFiles().length === 0 && _this2.getUploadingFiles().length === 0 && _this2.getQueuedFiles().length === 0) { + // This needs to be deferred so that `queuecomplete` really triggers after `complete` + return setTimeout(function () { + return _this2.emit("queuecomplete"); + }, 0); + } + }); + + var containsFiles = function containsFiles(e) { + if (e.dataTransfer.types) { + // Because e.dataTransfer.types is an Object in + // IE, we need to iterate like this instead of + // using e.dataTransfer.types.some() + for (var i = 0; i < e.dataTransfer.types.length; i++) { + if (e.dataTransfer.types[i] === "Files") return true; + } + } + + return false; + }; + + var noPropagation = function noPropagation(e) { + // If there are no files, we don't want to stop + // propagation so we don't interfere with other + // drag and drop behaviour. + if (!containsFiles(e)) return; + e.stopPropagation(); + + if (e.preventDefault) { + return e.preventDefault(); + } else { + return e.returnValue = false; + } + }; // Create the listeners + + + this.listeners = [{ + element: this.element, + events: { + dragstart: function dragstart(e) { + return _this2.emit("dragstart", e); + }, + dragenter: function dragenter(e) { + noPropagation(e); + return _this2.emit("dragenter", e); + }, + dragover: function dragover(e) { + // Makes it possible to drag files from chrome's download bar + // http://stackoverflow.com/questions/19526430/drag-and-drop-file-uploads-from-chrome-downloads-bar + // Try is required to prevent bug in Internet Explorer 11 (SCRIPT65535 exception) + var efct; + + try { + efct = e.dataTransfer.effectAllowed; + } catch (error) {} + + e.dataTransfer.dropEffect = "move" === efct || "linkMove" === efct ? "move" : "copy"; + noPropagation(e); + return _this2.emit("dragover", e); + }, + dragleave: function dragleave(e) { + return _this2.emit("dragleave", e); + }, + drop: function drop(e) { + noPropagation(e); + return _this2.drop(e); + }, + dragend: function dragend(e) { + return _this2.emit("dragend", e); + } + } // This is disabled right now, because the browsers don't implement it properly. + // "paste": (e) => + // noPropagation e + // @paste e + + }]; + this.clickableElements.forEach(function (clickableElement) { + return _this2.listeners.push({ + element: clickableElement, + events: { + click: function click(evt) { + // Only the actual dropzone or the message element should trigger file selection + if (clickableElement !== _this2.element || evt.target === _this2.element || Dropzone.elementInside(evt.target, _this2.element.querySelector(".dz-message"))) { + _this2.hiddenFileInput.click(); // Forward the click + + } + + return true; + } + } + }); + }); + this.enable(); + return this.options.init.call(this); + } // Not fully tested yet + + }, { + key: "destroy", + value: function destroy() { + this.disable(); + this.removeAllFiles(true); + + if (this.hiddenFileInput != null ? this.hiddenFileInput.parentNode : undefined) { + this.hiddenFileInput.parentNode.removeChild(this.hiddenFileInput); + this.hiddenFileInput = null; + } + + delete this.element.dropzone; + return Dropzone.instances.splice(Dropzone.instances.indexOf(this), 1); + } + }, { + key: "updateTotalUploadProgress", + value: function updateTotalUploadProgress() { + var totalUploadProgress; + var totalBytesSent = 0; + var totalBytes = 0; + var activeFiles = this.getActiveFiles(); + + if (activeFiles.length) { + var _iterator3 = dropzone_createForOfIteratorHelper(this.getActiveFiles(), true), + _step3; + + try { + for (_iterator3.s(); !(_step3 = _iterator3.n()).done;) { + var file = _step3.value; + totalBytesSent += file.upload.bytesSent; + totalBytes += file.upload.total; + } + } catch (err) { + _iterator3.e(err); + } finally { + _iterator3.f(); + } + + totalUploadProgress = 100 * totalBytesSent / totalBytes; + } else { + totalUploadProgress = 100; + } + + return this.emit("totaluploadprogress", totalUploadProgress, totalBytes, totalBytesSent); + } // @options.paramName can be a function taking one parameter rather than a string. + // A parameter name for a file is obtained simply by calling this with an index number. + + }, { + key: "_getParamName", + value: function _getParamName(n) { + if (typeof this.options.paramName === "function") { + return this.options.paramName(n); + } else { + return "".concat(this.options.paramName).concat(this.options.uploadMultiple ? "[".concat(n, "]") : ""); + } + } // If @options.renameFile is a function, + // the function will be used to rename the file.name before appending it to the formData + + }, { + key: "_renameFile", + value: function _renameFile(file) { + if (typeof this.options.renameFile !== "function") { + return file.name; + } + + return this.options.renameFile(file); + } // Returns a form that can be used as fallback if the browser does not support DragnDrop + // + // If the dropzone is already a form, only the input field and button are returned. Otherwise a complete form element is provided. + // This code has to pass in IE7 :( + + }, { + key: "getFallbackForm", + value: function getFallbackForm() { + var existingFallback, form; + + if (existingFallback = this.getExistingFallback()) { + return existingFallback; + } + + var fieldsString = '
    '; + + if (this.options.dictFallbackText) { + fieldsString += "

    ".concat(this.options.dictFallbackText, "

    "); + } + + fieldsString += "
    "); + var fields = Dropzone.createElement(fieldsString); + + if (this.element.tagName !== "FORM") { + form = Dropzone.createElement("
    ")); + form.appendChild(fields); + } else { + // Make sure that the enctype and method attributes are set properly + this.element.setAttribute("enctype", "multipart/form-data"); + this.element.setAttribute("method", this.options.method); + } + + return form != null ? form : fields; + } // Returns the fallback elements if they exist already + // + // This code has to pass in IE7 :( + + }, { + key: "getExistingFallback", + value: function getExistingFallback() { + var getFallback = function getFallback(elements) { + var _iterator4 = dropzone_createForOfIteratorHelper(elements, true), + _step4; + + try { + for (_iterator4.s(); !(_step4 = _iterator4.n()).done;) { + var el = _step4.value; + + if (/(^| )fallback($| )/.test(el.className)) { + return el; + } + } + } catch (err) { + _iterator4.e(err); + } finally { + _iterator4.f(); + } + }; + + for (var _i = 0, _arr = ["div", "form"]; _i < _arr.length; _i++) { + var tagName = _arr[_i]; + var fallback; + + if (fallback = getFallback(this.element.getElementsByTagName(tagName))) { + return fallback; + } + } + } // Activates all listeners stored in @listeners + + }, { + key: "setupEventListeners", + value: function setupEventListeners() { + return this.listeners.map(function (elementListeners) { + return function () { + var result = []; + + for (var event in elementListeners.events) { + var listener = elementListeners.events[event]; + result.push(elementListeners.element.addEventListener(event, listener, false)); + } + + return result; + }(); + }); + } // Deactivates all listeners stored in @listeners + + }, { + key: "removeEventListeners", + value: function removeEventListeners() { + return this.listeners.map(function (elementListeners) { + return function () { + var result = []; + + for (var event in elementListeners.events) { + var listener = elementListeners.events[event]; + result.push(elementListeners.element.removeEventListener(event, listener, false)); + } + + return result; + }(); + }); + } // Removes all event listeners and cancels all files in the queue or being processed. + + }, { + key: "disable", + value: function disable() { + var _this3 = this; + + this.clickableElements.forEach(function (element) { + return element.classList.remove("dz-clickable"); + }); + this.removeEventListeners(); + this.disabled = true; + return this.files.map(function (file) { + return _this3.cancelUpload(file); + }); + } + }, { + key: "enable", + value: function enable() { + delete this.disabled; + this.clickableElements.forEach(function (element) { + return element.classList.add("dz-clickable"); + }); + return this.setupEventListeners(); + } // Returns a nicely formatted filesize + + }, { + key: "filesize", + value: function filesize(size) { + var selectedSize = 0; + var selectedUnit = "b"; + + if (size > 0) { + var units = ["tb", "gb", "mb", "kb", "b"]; + + for (var i = 0; i < units.length; i++) { + var unit = units[i]; + var cutoff = Math.pow(this.options.filesizeBase, 4 - i) / 10; + + if (size >= cutoff) { + selectedSize = size / Math.pow(this.options.filesizeBase, 4 - i); + selectedUnit = unit; + break; + } + } + + selectedSize = Math.round(10 * selectedSize) / 10; // Cutting of digits + } + + return "".concat(selectedSize, " ").concat(this.options.dictFileSizeUnits[selectedUnit]); + } // Adds or removes the `dz-max-files-reached` class from the form. + + }, { + key: "_updateMaxFilesReachedClass", + value: function _updateMaxFilesReachedClass() { + if (this.options.maxFiles != null && this.getAcceptedFiles().length >= this.options.maxFiles) { + if (this.getAcceptedFiles().length === this.options.maxFiles) { + this.emit("maxfilesreached", this.files); + } + + return this.element.classList.add("dz-max-files-reached"); + } else { + return this.element.classList.remove("dz-max-files-reached"); + } + } + }, { + key: "drop", + value: function drop(e) { + if (!e.dataTransfer) { + return; + } + + this.emit("drop", e); // Convert the FileList to an Array + // This is necessary for IE11 + + var files = []; + + for (var i = 0; i < e.dataTransfer.files.length; i++) { + files[i] = e.dataTransfer.files[i]; + } // Even if it's a folder, files.length will contain the folders. + + + if (files.length) { + var items = e.dataTransfer.items; + + if (items && items.length && items[0].webkitGetAsEntry != null) { + // The browser supports dropping of folders, so handle items instead of files + this._addFilesFromItems(items); + } else { + this.handleFiles(files); + } + } + + this.emit("addedfiles", files); + } + }, { + key: "paste", + value: function paste(e) { + if (__guard__(e != null ? e.clipboardData : undefined, function (x) { + return x.items; + }) == null) { + return; + } + + this.emit("paste", e); + var items = e.clipboardData.items; + + if (items.length) { + return this._addFilesFromItems(items); + } + } + }, { + key: "handleFiles", + value: function handleFiles(files) { + var _iterator5 = dropzone_createForOfIteratorHelper(files, true), + _step5; + + try { + for (_iterator5.s(); !(_step5 = _iterator5.n()).done;) { + var file = _step5.value; + this.addFile(file); + } + } catch (err) { + _iterator5.e(err); + } finally { + _iterator5.f(); + } + } // When a folder is dropped (or files are pasted), items must be handled + // instead of files. + + }, { + key: "_addFilesFromItems", + value: function _addFilesFromItems(items) { + var _this4 = this; + + return function () { + var result = []; + + var _iterator6 = dropzone_createForOfIteratorHelper(items, true), + _step6; + + try { + for (_iterator6.s(); !(_step6 = _iterator6.n()).done;) { + var item = _step6.value; + var entry; + + if (item.webkitGetAsEntry != null && (entry = item.webkitGetAsEntry())) { + if (entry.isFile) { + result.push(_this4.addFile(item.getAsFile())); + } else if (entry.isDirectory) { + // Append all files from that directory to files + result.push(_this4._addFilesFromDirectory(entry, entry.name)); + } else { + result.push(undefined); + } + } else if (item.getAsFile != null) { + if (item.kind == null || item.kind === "file") { + result.push(_this4.addFile(item.getAsFile())); + } else { + result.push(undefined); + } + } else { + result.push(undefined); + } + } + } catch (err) { + _iterator6.e(err); + } finally { + _iterator6.f(); + } + + return result; + }(); + } // Goes through the directory, and adds each file it finds recursively + + }, { + key: "_addFilesFromDirectory", + value: function _addFilesFromDirectory(directory, path) { + var _this5 = this; + + var dirReader = directory.createReader(); + + var errorHandler = function errorHandler(error) { + return __guardMethod__(console, "log", function (o) { + return o.log(error); + }); + }; + + var readEntries = function readEntries() { + return dirReader.readEntries(function (entries) { + if (entries.length > 0) { + var _iterator7 = dropzone_createForOfIteratorHelper(entries, true), + _step7; + + try { + for (_iterator7.s(); !(_step7 = _iterator7.n()).done;) { + var entry = _step7.value; + + if (entry.isFile) { + entry.file(function (file) { + if (_this5.options.ignoreHiddenFiles && file.name.substring(0, 1) === ".") { + return; + } + + file.fullPath = "".concat(path, "/").concat(file.name); + return _this5.addFile(file); + }); + } else if (entry.isDirectory) { + _this5._addFilesFromDirectory(entry, "".concat(path, "/").concat(entry.name)); + } + } // Recursively call readEntries() again, since browser only handle + // the first 100 entries. + // See: https://developer.mozilla.org/en-US/docs/Web/API/DirectoryReader#readEntries + + } catch (err) { + _iterator7.e(err); + } finally { + _iterator7.f(); + } + + readEntries(); + } + + return null; + }, errorHandler); + }; + + return readEntries(); + } // If `done()` is called without argument the file is accepted + // If you call it with an error message, the file is rejected + // (This allows for asynchronous validation) + // + // This function checks the filesize, and if the file.type passes the + // `acceptedFiles` check. + + }, { + key: "accept", + value: function accept(file, done) { + if (this.options.maxFilesize && file.size > this.options.maxFilesize * 1024 * 1024) { + done(this.options.dictFileTooBig.replace("{{filesize}}", Math.round(file.size / 1024 / 10.24) / 100).replace("{{maxFilesize}}", this.options.maxFilesize)); + } else if (!Dropzone.isValidFile(file, this.options.acceptedFiles)) { + done(this.options.dictInvalidFileType); + } else if (this.options.maxFiles != null && this.getAcceptedFiles().length >= this.options.maxFiles) { + done(this.options.dictMaxFilesExceeded.replace("{{maxFiles}}", this.options.maxFiles)); + this.emit("maxfilesexceeded", file); + } else { + this.options.accept.call(this, file, done); + } + } + }, { + key: "addFile", + value: function addFile(file) { + var _this6 = this; + + file.upload = { + uuid: Dropzone.uuidv4(), + progress: 0, + // Setting the total upload size to file.size for the beginning + // It's actual different than the size to be transmitted. + total: file.size, + bytesSent: 0, + filename: this._renameFile(file) // Not setting chunking information here, because the acutal data — and + // thus the chunks — might change if `options.transformFile` is set + // and does something to the data. + + }; + this.files.push(file); + file.status = Dropzone.ADDED; + this.emit("addedfile", file); + + this._enqueueThumbnail(file); + + this.accept(file, function (error) { + if (error) { + file.accepted = false; + + _this6._errorProcessing([file], error); // Will set the file.status + + } else { + file.accepted = true; + + if (_this6.options.autoQueue) { + _this6.enqueueFile(file); + } // Will set .accepted = true + + } + + _this6._updateMaxFilesReachedClass(); + }); + } // Wrapper for enqueueFile + + }, { + key: "enqueueFiles", + value: function enqueueFiles(files) { + var _iterator8 = dropzone_createForOfIteratorHelper(files, true), + _step8; + + try { + for (_iterator8.s(); !(_step8 = _iterator8.n()).done;) { + var file = _step8.value; + this.enqueueFile(file); + } + } catch (err) { + _iterator8.e(err); + } finally { + _iterator8.f(); + } + + return null; + } + }, { + key: "enqueueFile", + value: function enqueueFile(file) { + var _this7 = this; + + if (file.status === Dropzone.ADDED && file.accepted === true) { + file.status = Dropzone.QUEUED; + + if (this.options.autoProcessQueue) { + return setTimeout(function () { + return _this7.processQueue(); + }, 0); // Deferring the call + } + } else { + throw new Error("This file can't be queued because it has already been processed or was rejected."); + } + } + }, { + key: "_enqueueThumbnail", + value: function _enqueueThumbnail(file) { + var _this8 = this; + + if (this.options.createImageThumbnails && file.type.match(/image.*/) && file.size <= this.options.maxThumbnailFilesize * 1024 * 1024) { + this._thumbnailQueue.push(file); + + return setTimeout(function () { + return _this8._processThumbnailQueue(); + }, 0); // Deferring the call + } + } + }, { + key: "_processThumbnailQueue", + value: function _processThumbnailQueue() { + var _this9 = this; + + if (this._processingThumbnail || this._thumbnailQueue.length === 0) { + return; + } + + this._processingThumbnail = true; + + var file = this._thumbnailQueue.shift(); + + return this.createThumbnail(file, this.options.thumbnailWidth, this.options.thumbnailHeight, this.options.thumbnailMethod, true, function (dataUrl) { + _this9.emit("thumbnail", file, dataUrl); + + _this9._processingThumbnail = false; + return _this9._processThumbnailQueue(); + }); + } // Can be called by the user to remove a file + + }, { + key: "removeFile", + value: function removeFile(file) { + if (file.status === Dropzone.UPLOADING) { + this.cancelUpload(file); + } + + this.files = without(this.files, file); + this.emit("removedfile", file); + + if (this.files.length === 0) { + return this.emit("reset"); + } + } // Removes all files that aren't currently processed from the list + + }, { + key: "removeAllFiles", + value: function removeAllFiles(cancelIfNecessary) { + // Create a copy of files since removeFile() changes the @files array. + if (cancelIfNecessary == null) { + cancelIfNecessary = false; + } + + var _iterator9 = dropzone_createForOfIteratorHelper(this.files.slice(), true), + _step9; + + try { + for (_iterator9.s(); !(_step9 = _iterator9.n()).done;) { + var file = _step9.value; + + if (file.status !== Dropzone.UPLOADING || cancelIfNecessary) { + this.removeFile(file); + } + } + } catch (err) { + _iterator9.e(err); + } finally { + _iterator9.f(); + } + + return null; + } // Resizes an image before it gets sent to the server. This function is the default behavior of + // `options.transformFile` if `resizeWidth` or `resizeHeight` are set. The callback is invoked with + // the resized blob. + + }, { + key: "resizeImage", + value: function resizeImage(file, width, height, resizeMethod, callback) { + var _this10 = this; + + return this.createThumbnail(file, width, height, resizeMethod, true, function (dataUrl, canvas) { + if (canvas == null) { + // The image has not been resized + return callback(file); + } else { + var resizeMimeType = _this10.options.resizeMimeType; + + if (resizeMimeType == null) { + resizeMimeType = file.type; + } + + var resizedDataURL = canvas.toDataURL(resizeMimeType, _this10.options.resizeQuality); + + if (resizeMimeType === "image/jpeg" || resizeMimeType === "image/jpg") { + // Now add the original EXIF information + resizedDataURL = ExifRestore.restore(file.dataURL, resizedDataURL); + } + + return callback(Dropzone.dataURItoBlob(resizedDataURL)); + } + }); + } + }, { + key: "createThumbnail", + value: function createThumbnail(file, width, height, resizeMethod, fixOrientation, callback) { + var _this11 = this; + + var fileReader = new FileReader(); + + fileReader.onload = function () { + file.dataURL = fileReader.result; // Don't bother creating a thumbnail for SVG images since they're vector + + if (file.type === "image/svg+xml") { + if (callback != null) { + callback(fileReader.result); + } + + return; + } + + _this11.createThumbnailFromUrl(file, width, height, resizeMethod, fixOrientation, callback); + }; + + fileReader.readAsDataURL(file); + } // `mockFile` needs to have these attributes: + // + // { name: 'name', size: 12345, imageUrl: '' } + // + // `callback` will be invoked when the image has been downloaded and displayed. + // `crossOrigin` will be added to the `img` tag when accessing the file. + + }, { + key: "displayExistingFile", + value: function displayExistingFile(mockFile, imageUrl, callback, crossOrigin) { + var _this12 = this; + + var resizeThumbnail = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : true; + this.emit("addedfile", mockFile); + this.emit("complete", mockFile); + + if (!resizeThumbnail) { + this.emit("thumbnail", mockFile, imageUrl); + if (callback) callback(); + } else { + var onDone = function onDone(thumbnail) { + _this12.emit("thumbnail", mockFile, thumbnail); + + if (callback) callback(); + }; + + mockFile.dataURL = imageUrl; + this.createThumbnailFromUrl(mockFile, this.options.thumbnailWidth, this.options.thumbnailHeight, this.options.thumbnailMethod, this.options.fixOrientation, onDone, crossOrigin); + } + } + }, { + key: "createThumbnailFromUrl", + value: function createThumbnailFromUrl(file, width, height, resizeMethod, fixOrientation, callback, crossOrigin) { + var _this13 = this; + + // Not using `new Image` here because of a bug in latest Chrome versions. + // See https://github.com/enyo/dropzone/pull/226 + var img = document.createElement("img"); + + if (crossOrigin) { + img.crossOrigin = crossOrigin; + } // fixOrientation is not needed anymore with browsers handling imageOrientation + + + fixOrientation = getComputedStyle(document.body)["imageOrientation"] == "from-image" ? false : fixOrientation; + + img.onload = function () { + var loadExif = function loadExif(callback) { + return callback(1); + }; + + if (typeof EXIF !== "undefined" && EXIF !== null && fixOrientation) { + loadExif = function loadExif(callback) { + return EXIF.getData(img, function () { + return callback(EXIF.getTag(this, "Orientation")); + }); + }; + } + + return loadExif(function (orientation) { + file.width = img.width; + file.height = img.height; + + var resizeInfo = _this13.options.resize.call(_this13, file, width, height, resizeMethod); + + var canvas = document.createElement("canvas"); + var ctx = canvas.getContext("2d"); + canvas.width = resizeInfo.trgWidth; + canvas.height = resizeInfo.trgHeight; + + if (orientation > 4) { + canvas.width = resizeInfo.trgHeight; + canvas.height = resizeInfo.trgWidth; + } + + switch (orientation) { + case 2: + // horizontal flip + ctx.translate(canvas.width, 0); + ctx.scale(-1, 1); + break; + + case 3: + // 180° rotate left + ctx.translate(canvas.width, canvas.height); + ctx.rotate(Math.PI); + break; + + case 4: + // vertical flip + ctx.translate(0, canvas.height); + ctx.scale(1, -1); + break; + + case 5: + // vertical flip + 90 rotate right + ctx.rotate(0.5 * Math.PI); + ctx.scale(1, -1); + break; + + case 6: + // 90° rotate right + ctx.rotate(0.5 * Math.PI); + ctx.translate(0, -canvas.width); + break; + + case 7: + // horizontal flip + 90 rotate right + ctx.rotate(0.5 * Math.PI); + ctx.translate(canvas.height, -canvas.width); + ctx.scale(-1, 1); + break; + + case 8: + // 90° rotate left + ctx.rotate(-0.5 * Math.PI); + ctx.translate(-canvas.height, 0); + break; + } // This is a bugfix for iOS' scaling bug. + + + drawImageIOSFix(ctx, img, resizeInfo.srcX != null ? resizeInfo.srcX : 0, resizeInfo.srcY != null ? resizeInfo.srcY : 0, resizeInfo.srcWidth, resizeInfo.srcHeight, resizeInfo.trgX != null ? resizeInfo.trgX : 0, resizeInfo.trgY != null ? resizeInfo.trgY : 0, resizeInfo.trgWidth, resizeInfo.trgHeight); + var thumbnail = canvas.toDataURL("image/png"); + + if (callback != null) { + return callback(thumbnail, canvas); + } + }); + }; + + if (callback != null) { + img.onerror = callback; + } + + return img.src = file.dataURL; + } // Goes through the queue and processes files if there aren't too many already. + + }, { + key: "processQueue", + value: function processQueue() { + var parallelUploads = this.options.parallelUploads; + var processingLength = this.getUploadingFiles().length; + var i = processingLength; // There are already at least as many files uploading than should be + + if (processingLength >= parallelUploads) { + return; + } + + var queuedFiles = this.getQueuedFiles(); + + if (!(queuedFiles.length > 0)) { + return; + } + + if (this.options.uploadMultiple) { + // The files should be uploaded in one request + return this.processFiles(queuedFiles.slice(0, parallelUploads - processingLength)); + } else { + while (i < parallelUploads) { + if (!queuedFiles.length) { + return; + } // Nothing left to process + + + this.processFile(queuedFiles.shift()); + i++; + } + } + } // Wrapper for `processFiles` + + }, { + key: "processFile", + value: function processFile(file) { + return this.processFiles([file]); + } // Loads the file, then calls finishedLoading() + + }, { + key: "processFiles", + value: function processFiles(files) { + var _iterator10 = dropzone_createForOfIteratorHelper(files, true), + _step10; + + try { + for (_iterator10.s(); !(_step10 = _iterator10.n()).done;) { + var file = _step10.value; + file.processing = true; // Backwards compatibility + + file.status = Dropzone.UPLOADING; + this.emit("processing", file); + } + } catch (err) { + _iterator10.e(err); + } finally { + _iterator10.f(); + } + + if (this.options.uploadMultiple) { + this.emit("processingmultiple", files); + } + + return this.uploadFiles(files); + } + }, { + key: "_getFilesWithXhr", + value: function _getFilesWithXhr(xhr) { + var files; + return files = this.files.filter(function (file) { + return file.xhr === xhr; + }).map(function (file) { + return file; + }); + } // Cancels the file upload and sets the status to CANCELED + // **if** the file is actually being uploaded. + // If it's still in the queue, the file is being removed from it and the status + // set to CANCELED. + + }, { + key: "cancelUpload", + value: function cancelUpload(file) { + if (file.status === Dropzone.UPLOADING) { + var groupedFiles = this._getFilesWithXhr(file.xhr); + + var _iterator11 = dropzone_createForOfIteratorHelper(groupedFiles, true), + _step11; + + try { + for (_iterator11.s(); !(_step11 = _iterator11.n()).done;) { + var groupedFile = _step11.value; + groupedFile.status = Dropzone.CANCELED; + } + } catch (err) { + _iterator11.e(err); + } finally { + _iterator11.f(); + } + + if (typeof file.xhr !== "undefined") { + file.xhr.abort(); + } + + var _iterator12 = dropzone_createForOfIteratorHelper(groupedFiles, true), + _step12; + + try { + for (_iterator12.s(); !(_step12 = _iterator12.n()).done;) { + var _groupedFile = _step12.value; + this.emit("canceled", _groupedFile); + } + } catch (err) { + _iterator12.e(err); + } finally { + _iterator12.f(); + } + + if (this.options.uploadMultiple) { + this.emit("canceledmultiple", groupedFiles); + } + } else if (file.status === Dropzone.ADDED || file.status === Dropzone.QUEUED) { + file.status = Dropzone.CANCELED; + this.emit("canceled", file); + + if (this.options.uploadMultiple) { + this.emit("canceledmultiple", [file]); + } + } + + if (this.options.autoProcessQueue) { + return this.processQueue(); + } + } + }, { + key: "resolveOption", + value: function resolveOption(option) { + if (typeof option === "function") { + for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) { + args[_key - 1] = arguments[_key]; + } + + return option.apply(this, args); + } + + return option; + } + }, { + key: "uploadFile", + value: function uploadFile(file) { + return this.uploadFiles([file]); + } + }, { + key: "uploadFiles", + value: function uploadFiles(files) { + var _this14 = this; + + this._transformFiles(files, function (transformedFiles) { + if (_this14.options.chunking) { + // Chunking is not allowed to be used with `uploadMultiple` so we know + // that there is only __one__file. + var transformedFile = transformedFiles[0]; + files[0].upload.chunked = _this14.options.chunking && (_this14.options.forceChunking || transformedFile.size > _this14.options.chunkSize); + files[0].upload.totalChunkCount = Math.ceil(transformedFile.size / _this14.options.chunkSize); + } + + if (files[0].upload.chunked) { + // This file should be sent in chunks! + // If the chunking option is set, we **know** that there can only be **one** file, since + // uploadMultiple is not allowed with this option. + var file = files[0]; + var _transformedFile = transformedFiles[0]; + var startedChunkCount = 0; + file.upload.chunks = []; + + var handleNextChunk = function handleNextChunk() { + var chunkIndex = 0; // Find the next item in file.upload.chunks that is not defined yet. + + while (file.upload.chunks[chunkIndex] !== undefined) { + chunkIndex++; + } // This means, that all chunks have already been started. + + + if (chunkIndex >= file.upload.totalChunkCount) return; + startedChunkCount++; + var start = chunkIndex * _this14.options.chunkSize; + var end = Math.min(start + _this14.options.chunkSize, _transformedFile.size); + var dataBlock = { + name: _this14._getParamName(0), + data: _transformedFile.webkitSlice ? _transformedFile.webkitSlice(start, end) : _transformedFile.slice(start, end), + filename: file.upload.filename, + chunkIndex: chunkIndex + }; + file.upload.chunks[chunkIndex] = { + file: file, + index: chunkIndex, + dataBlock: dataBlock, + // In case we want to retry. + status: Dropzone.UPLOADING, + progress: 0, + retries: 0 // The number of times this block has been retried. + + }; + + _this14._uploadData(files, [dataBlock]); + }; + + file.upload.finishedChunkUpload = function (chunk, response) { + var allFinished = true; + chunk.status = Dropzone.SUCCESS; // Clear the data from the chunk + + chunk.dataBlock = null; // Leaving this reference to xhr intact here will cause memory leaks in some browsers + + chunk.xhr = null; + + for (var i = 0; i < file.upload.totalChunkCount; i++) { + if (file.upload.chunks[i] === undefined) { + return handleNextChunk(); + } + + if (file.upload.chunks[i].status !== Dropzone.SUCCESS) { + allFinished = false; + } + } + + if (allFinished) { + _this14.options.chunksUploaded(file, function () { + _this14._finished(files, response, null); + }); + } + }; + + if (_this14.options.parallelChunkUploads) { + for (var i = 0; i < file.upload.totalChunkCount; i++) { + handleNextChunk(); + } + } else { + handleNextChunk(); + } + } else { + var dataBlocks = []; + + for (var _i2 = 0; _i2 < files.length; _i2++) { + dataBlocks[_i2] = { + name: _this14._getParamName(_i2), + data: transformedFiles[_i2], + filename: files[_i2].upload.filename + }; + } + + _this14._uploadData(files, dataBlocks); + } + }); + } /// Returns the right chunk for given file and xhr + + }, { + key: "_getChunk", + value: function _getChunk(file, xhr) { + for (var i = 0; i < file.upload.totalChunkCount; i++) { + if (file.upload.chunks[i] !== undefined && file.upload.chunks[i].xhr === xhr) { + return file.upload.chunks[i]; + } + } + } // This function actually uploads the file(s) to the server. + // If dataBlocks contains the actual data to upload (meaning, that this could either be transformed + // files, or individual chunks for chunked upload). + + }, { + key: "_uploadData", + value: function _uploadData(files, dataBlocks) { + var _this15 = this; + + var xhr = new XMLHttpRequest(); // Put the xhr object in the file objects to be able to reference it later. + + var _iterator13 = dropzone_createForOfIteratorHelper(files, true), + _step13; + + try { + for (_iterator13.s(); !(_step13 = _iterator13.n()).done;) { + var file = _step13.value; + file.xhr = xhr; + } + } catch (err) { + _iterator13.e(err); + } finally { + _iterator13.f(); + } + + if (files[0].upload.chunked) { + // Put the xhr object in the right chunk object, so it can be associated later, and found with _getChunk + files[0].upload.chunks[dataBlocks[0].chunkIndex].xhr = xhr; + } + + var method = this.resolveOption(this.options.method, files); + var url = this.resolveOption(this.options.url, files); + xhr.open(method, url, true); // Setting the timeout after open because of IE11 issue: https://gitlab.com/meno/dropzone/issues/8 + + var timeout = this.resolveOption(this.options.timeout, files); + if (timeout) xhr.timeout = this.resolveOption(this.options.timeout, files); // Has to be after `.open()`. See https://github.com/enyo/dropzone/issues/179 + + xhr.withCredentials = !!this.options.withCredentials; + + xhr.onload = function (e) { + _this15._finishedUploading(files, xhr, e); + }; + + xhr.ontimeout = function () { + _this15._handleUploadError(files, xhr, "Request timedout after ".concat(_this15.options.timeout / 1000, " seconds")); + }; + + xhr.onerror = function () { + _this15._handleUploadError(files, xhr); + }; // Some browsers do not have the .upload property + + + var progressObj = xhr.upload != null ? xhr.upload : xhr; + + progressObj.onprogress = function (e) { + return _this15._updateFilesUploadProgress(files, xhr, e); + }; + + var headers = { + Accept: "application/json", + "Cache-Control": "no-cache", + "X-Requested-With": "XMLHttpRequest" + }; + + if (this.options.headers) { + Dropzone.extend(headers, this.options.headers); + } + + for (var headerName in headers) { + var headerValue = headers[headerName]; + + if (headerValue) { + xhr.setRequestHeader(headerName, headerValue); + } + } + + var formData = new FormData(); // Adding all @options parameters + + if (this.options.params) { + var additionalParams = this.options.params; + + if (typeof additionalParams === "function") { + additionalParams = additionalParams.call(this, files, xhr, files[0].upload.chunked ? this._getChunk(files[0], xhr) : null); + } + + for (var key in additionalParams) { + var value = additionalParams[key]; + + if (Array.isArray(value)) { + // The additional parameter contains an array, + // so lets iterate over it to attach each value + // individually. + for (var i = 0; i < value.length; i++) { + formData.append(key, value[i]); + } + } else { + formData.append(key, value); + } + } + } // Let the user add additional data if necessary + + + var _iterator14 = dropzone_createForOfIteratorHelper(files, true), + _step14; + + try { + for (_iterator14.s(); !(_step14 = _iterator14.n()).done;) { + var _file = _step14.value; + this.emit("sending", _file, xhr, formData); + } + } catch (err) { + _iterator14.e(err); + } finally { + _iterator14.f(); + } + + if (this.options.uploadMultiple) { + this.emit("sendingmultiple", files, xhr, formData); + } + + this._addFormElementData(formData); // Finally add the files + // Has to be last because some servers (eg: S3) expect the file to be the last parameter + + + for (var _i3 = 0; _i3 < dataBlocks.length; _i3++) { + var dataBlock = dataBlocks[_i3]; + formData.append(dataBlock.name, dataBlock.data, dataBlock.filename); + } + + this.submitRequest(xhr, formData, files); + } // Transforms all files with this.options.transformFile and invokes done with the transformed files when done. + + }, { + key: "_transformFiles", + value: function _transformFiles(files, done) { + var _this16 = this; + + var transformedFiles = []; // Clumsy way of handling asynchronous calls, until I get to add a proper Future library. + + var doneCounter = 0; + + var _loop = function _loop(i) { + _this16.options.transformFile.call(_this16, files[i], function (transformedFile) { + transformedFiles[i] = transformedFile; + + if (++doneCounter === files.length) { + done(transformedFiles); + } + }); + }; + + for (var i = 0; i < files.length; i++) { + _loop(i); + } + } // Takes care of adding other input elements of the form to the AJAX request + + }, { + key: "_addFormElementData", + value: function _addFormElementData(formData) { + // Take care of other input elements + if (this.element.tagName === "FORM") { + var _iterator15 = dropzone_createForOfIteratorHelper(this.element.querySelectorAll("input, textarea, select, button"), true), + _step15; + + try { + for (_iterator15.s(); !(_step15 = _iterator15.n()).done;) { + var input = _step15.value; + var inputName = input.getAttribute("name"); + var inputType = input.getAttribute("type"); + if (inputType) inputType = inputType.toLowerCase(); // If the input doesn't have a name, we can't use it. + + if (typeof inputName === "undefined" || inputName === null) continue; + + if (input.tagName === "SELECT" && input.hasAttribute("multiple")) { + // Possibly multiple values + var _iterator16 = dropzone_createForOfIteratorHelper(input.options, true), + _step16; + + try { + for (_iterator16.s(); !(_step16 = _iterator16.n()).done;) { + var option = _step16.value; + + if (option.selected) { + formData.append(inputName, option.value); + } + } + } catch (err) { + _iterator16.e(err); + } finally { + _iterator16.f(); + } + } else if (!inputType || inputType !== "checkbox" && inputType !== "radio" || input.checked) { + formData.append(inputName, input.value); + } + } + } catch (err) { + _iterator15.e(err); + } finally { + _iterator15.f(); + } + } + } // Invoked when there is new progress information about given files. + // If e is not provided, it is assumed that the upload is finished. + + }, { + key: "_updateFilesUploadProgress", + value: function _updateFilesUploadProgress(files, xhr, e) { + if (!files[0].upload.chunked) { + // Handle file uploads without chunking + var _iterator17 = dropzone_createForOfIteratorHelper(files, true), + _step17; + + try { + for (_iterator17.s(); !(_step17 = _iterator17.n()).done;) { + var file = _step17.value; + + if (file.upload.total && file.upload.bytesSent && file.upload.bytesSent == file.upload.total) { + // If both, the `total` and `bytesSent` have already been set, and + // they are equal (meaning progress is at 100%), we can skip this + // file, since an upload progress shouldn't go down. + continue; + } + + if (e) { + file.upload.progress = 100 * e.loaded / e.total; + file.upload.total = e.total; + file.upload.bytesSent = e.loaded; + } else { + // No event, so we're at 100% + file.upload.progress = 100; + file.upload.bytesSent = file.upload.total; + } + + this.emit("uploadprogress", file, file.upload.progress, file.upload.bytesSent); + } + } catch (err) { + _iterator17.e(err); + } finally { + _iterator17.f(); + } + } else { + // Handle chunked file uploads + // Chunked upload is not compatible with uploading multiple files in one + // request, so we know there's only one file. + var _file2 = files[0]; // Since this is a chunked upload, we need to update the appropriate chunk + // progress. + + var chunk = this._getChunk(_file2, xhr); + + if (e) { + chunk.progress = 100 * e.loaded / e.total; + chunk.total = e.total; + chunk.bytesSent = e.loaded; + } else { + // No event, so we're at 100% + chunk.progress = 100; + chunk.bytesSent = chunk.total; + } // Now tally the *file* upload progress from its individual chunks + + + _file2.upload.progress = 0; + _file2.upload.total = 0; + _file2.upload.bytesSent = 0; + + for (var i = 0; i < _file2.upload.totalChunkCount; i++) { + if (_file2.upload.chunks[i] && typeof _file2.upload.chunks[i].progress !== "undefined") { + _file2.upload.progress += _file2.upload.chunks[i].progress; + _file2.upload.total += _file2.upload.chunks[i].total; + _file2.upload.bytesSent += _file2.upload.chunks[i].bytesSent; + } + } // Since the process is a percentage, we need to divide by the amount of + // chunks we've used. + + + _file2.upload.progress = _file2.upload.progress / _file2.upload.totalChunkCount; + this.emit("uploadprogress", _file2, _file2.upload.progress, _file2.upload.bytesSent); + } + } + }, { + key: "_finishedUploading", + value: function _finishedUploading(files, xhr, e) { + var response; + + if (files[0].status === Dropzone.CANCELED) { + return; + } + + if (xhr.readyState !== 4) { + return; + } + + if (xhr.responseType !== "arraybuffer" && xhr.responseType !== "blob") { + response = xhr.responseText; + + if (xhr.getResponseHeader("content-type") && ~xhr.getResponseHeader("content-type").indexOf("application/json")) { + try { + response = JSON.parse(response); + } catch (error) { + e = error; + response = "Invalid JSON response from server."; + } + } + } + + this._updateFilesUploadProgress(files, xhr); + + if (!(200 <= xhr.status && xhr.status < 300)) { + this._handleUploadError(files, xhr, response); + } else { + if (files[0].upload.chunked) { + files[0].upload.finishedChunkUpload(this._getChunk(files[0], xhr), response); + } else { + this._finished(files, response, e); + } + } + } + }, { + key: "_handleUploadError", + value: function _handleUploadError(files, xhr, response) { + if (files[0].status === Dropzone.CANCELED) { + return; + } + + if (files[0].upload.chunked && this.options.retryChunks) { + var chunk = this._getChunk(files[0], xhr); + + if (chunk.retries++ < this.options.retryChunksLimit) { + this._uploadData(files, [chunk.dataBlock]); + + return; + } else { + console.warn("Retried this chunk too often. Giving up."); + } + } + + this._errorProcessing(files, response || this.options.dictResponseError.replace("{{statusCode}}", xhr.status), xhr); + } + }, { + key: "submitRequest", + value: function submitRequest(xhr, formData, files) { + if (xhr.readyState != 1) { + console.warn("Cannot send this request because the XMLHttpRequest.readyState is not OPENED."); + return; + } + + xhr.send(formData); + } // Called internally when processing is finished. + // Individual callbacks have to be called in the appropriate sections. + + }, { + key: "_finished", + value: function _finished(files, responseText, e) { + var _iterator18 = dropzone_createForOfIteratorHelper(files, true), + _step18; + + try { + for (_iterator18.s(); !(_step18 = _iterator18.n()).done;) { + var file = _step18.value; + file.status = Dropzone.SUCCESS; + this.emit("success", file, responseText, e); + this.emit("complete", file); + } + } catch (err) { + _iterator18.e(err); + } finally { + _iterator18.f(); + } + + if (this.options.uploadMultiple) { + this.emit("successmultiple", files, responseText, e); + this.emit("completemultiple", files); + } + + if (this.options.autoProcessQueue) { + return this.processQueue(); + } + } // Called internally when processing is finished. + // Individual callbacks have to be called in the appropriate sections. + + }, { + key: "_errorProcessing", + value: function _errorProcessing(files, message, xhr) { + var _iterator19 = dropzone_createForOfIteratorHelper(files, true), + _step19; + + try { + for (_iterator19.s(); !(_step19 = _iterator19.n()).done;) { + var file = _step19.value; + file.status = Dropzone.ERROR; + this.emit("error", file, message, xhr); + this.emit("complete", file); + } + } catch (err) { + _iterator19.e(err); + } finally { + _iterator19.f(); + } + + if (this.options.uploadMultiple) { + this.emit("errormultiple", files, message, xhr); + this.emit("completemultiple", files); + } + + if (this.options.autoProcessQueue) { + return this.processQueue(); + } + } + }], [{ + key: "initClass", + value: function initClass() { + // Exposing the emitter class, mainly for tests + this.prototype.Emitter = Emitter; + /* + This is a list of all available events you can register on a dropzone object. + You can register an event handler like this: + dropzone.on("dragEnter", function() { }); + */ + + this.prototype.events = ["drop", "dragstart", "dragend", "dragenter", "dragover", "dragleave", "addedfile", "addedfiles", "removedfile", "thumbnail", "error", "errormultiple", "processing", "processingmultiple", "uploadprogress", "totaluploadprogress", "sending", "sendingmultiple", "success", "successmultiple", "canceled", "canceledmultiple", "complete", "completemultiple", "reset", "maxfilesexceeded", "maxfilesreached", "queuecomplete"]; + this.prototype._thumbnailQueue = []; + this.prototype._processingThumbnail = false; + } // global utility + + }, { + key: "extend", + value: function extend(target) { + for (var _len2 = arguments.length, objects = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) { + objects[_key2 - 1] = arguments[_key2]; + } + + for (var _i4 = 0, _objects = objects; _i4 < _objects.length; _i4++) { + var object = _objects[_i4]; + + for (var key in object) { + var val = object[key]; + target[key] = val; + } + } + + return target; + } + }, { + key: "uuidv4", + value: function uuidv4() { + return "xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g, function (c) { + var r = Math.random() * 16 | 0, + v = c === "x" ? r : r & 0x3 | 0x8; + return v.toString(16); + }); + } + }]); + + return Dropzone; +}(Emitter); + + +Dropzone.initClass(); +Dropzone.version = "5.9.3"; // This is a map of options for your different dropzones. Add configurations +// to this object for your different dropzone elemens. +// +// Example: +// +// Dropzone.options.myDropzoneElementId = { maxFilesize: 1 }; +// +// To disable autoDiscover for a specific element, you can set `false` as an option: +// +// Dropzone.options.myDisabledElementId = false; +// +// And in html: +// +//
    + +Dropzone.options = {}; // Returns the options for an element or undefined if none available. + +Dropzone.optionsForElement = function (element) { + // Get the `Dropzone.options.elementId` for this element if it exists + if (element.getAttribute("id")) { + return Dropzone.options[camelize(element.getAttribute("id"))]; + } else { + return undefined; + } +}; // Holds a list of all dropzone instances + + +Dropzone.instances = []; // Returns the dropzone for given element if any + +Dropzone.forElement = function (element) { + if (typeof element === "string") { + element = document.querySelector(element); + } + + if ((element != null ? element.dropzone : undefined) == null) { + throw new Error("No Dropzone found for given element. This is probably because you're trying to access it before Dropzone had the time to initialize. Use the `init` option to setup any additional observers on your Dropzone."); + } + + return element.dropzone; +}; // Set to false if you don't want Dropzone to automatically find and attach to .dropzone elements. + + +Dropzone.autoDiscover = true; // Looks for all .dropzone elements and creates a dropzone for them + +Dropzone.discover = function () { + var dropzones; + + if (document.querySelectorAll) { + dropzones = document.querySelectorAll(".dropzone"); + } else { + dropzones = []; // IE :( + + var checkElements = function checkElements(elements) { + return function () { + var result = []; + + var _iterator20 = dropzone_createForOfIteratorHelper(elements, true), + _step20; + + try { + for (_iterator20.s(); !(_step20 = _iterator20.n()).done;) { + var el = _step20.value; + + if (/(^| )dropzone($| )/.test(el.className)) { + result.push(dropzones.push(el)); + } else { + result.push(undefined); + } + } + } catch (err) { + _iterator20.e(err); + } finally { + _iterator20.f(); + } + + return result; + }(); + }; + + checkElements(document.getElementsByTagName("div")); + checkElements(document.getElementsByTagName("form")); + } + + return function () { + var result = []; + + var _iterator21 = dropzone_createForOfIteratorHelper(dropzones, true), + _step21; + + try { + for (_iterator21.s(); !(_step21 = _iterator21.n()).done;) { + var dropzone = _step21.value; + + // Create a dropzone unless auto discover has been disabled for specific element + if (Dropzone.optionsForElement(dropzone) !== false) { + result.push(new Dropzone(dropzone)); + } else { + result.push(undefined); + } + } + } catch (err) { + _iterator21.e(err); + } finally { + _iterator21.f(); + } + + return result; + }(); +}; // Some browsers support drag and drog functionality, but not correctly. +// +// So I created a blocklist of userAgents. Yes, yes. Browser sniffing, I know. +// But what to do when browsers *theoretically* support an API, but crash +// when using it. +// +// This is a list of regular expressions tested against navigator.userAgent +// +// ** It should only be used on browser that *do* support the API, but +// incorrectly ** + + +Dropzone.blockedBrowsers = [// The mac os and windows phone version of opera 12 seems to have a problem with the File drag'n'drop API. +/opera.*(Macintosh|Windows Phone).*version\/12/i]; // Checks if the browser is supported + +Dropzone.isBrowserSupported = function () { + var capableBrowser = true; + + if (window.File && window.FileReader && window.FileList && window.Blob && window.FormData && document.querySelector) { + if (!("classList" in document.createElement("a"))) { + capableBrowser = false; + } else { + if (Dropzone.blacklistedBrowsers !== undefined) { + // Since this has been renamed, this makes sure we don't break older + // configuration. + Dropzone.blockedBrowsers = Dropzone.blacklistedBrowsers; + } // The browser supports the API, but may be blocked. + + + var _iterator22 = dropzone_createForOfIteratorHelper(Dropzone.blockedBrowsers, true), + _step22; + + try { + for (_iterator22.s(); !(_step22 = _iterator22.n()).done;) { + var regex = _step22.value; + + if (regex.test(navigator.userAgent)) { + capableBrowser = false; + continue; + } + } + } catch (err) { + _iterator22.e(err); + } finally { + _iterator22.f(); + } + } + } else { + capableBrowser = false; + } + + return capableBrowser; +}; + +Dropzone.dataURItoBlob = function (dataURI) { + // convert base64 to raw binary data held in a string + // doesn't handle URLEncoded DataURIs - see SO answer #6850276 for code that does this + var byteString = atob(dataURI.split(",")[1]); // separate out the mime component + + var mimeString = dataURI.split(",")[0].split(":")[1].split(";")[0]; // write the bytes of the string to an ArrayBuffer + + var ab = new ArrayBuffer(byteString.length); + var ia = new Uint8Array(ab); + + for (var i = 0, end = byteString.length, asc = 0 <= end; asc ? i <= end : i >= end; asc ? i++ : i--) { + ia[i] = byteString.charCodeAt(i); + } // write the ArrayBuffer to a blob + + + return new Blob([ab], { + type: mimeString + }); +}; // Returns an array without the rejected item + + +var without = function without(list, rejectedItem) { + return list.filter(function (item) { + return item !== rejectedItem; + }).map(function (item) { + return item; + }); +}; // abc-def_ghi -> abcDefGhi + + +var camelize = function camelize(str) { + return str.replace(/[\-_](\w)/g, function (match) { + return match.charAt(1).toUpperCase(); + }); +}; // Creates an element from string + + +Dropzone.createElement = function (string) { + var div = document.createElement("div"); + div.innerHTML = string; + return div.childNodes[0]; +}; // Tests if given element is inside (or simply is) the container + + +Dropzone.elementInside = function (element, container) { + if (element === container) { + return true; + } // Coffeescript doesn't support do/while loops + + + while (element = element.parentNode) { + if (element === container) { + return true; + } + } + + return false; +}; + +Dropzone.getElement = function (el, name) { + var element; + + if (typeof el === "string") { + element = document.querySelector(el); + } else if (el.nodeType != null) { + element = el; + } + + if (element == null) { + throw new Error("Invalid `".concat(name, "` option provided. Please provide a CSS selector or a plain HTML element.")); + } + + return element; +}; + +Dropzone.getElements = function (els, name) { + var el, elements; + + if (els instanceof Array) { + elements = []; + + try { + var _iterator23 = dropzone_createForOfIteratorHelper(els, true), + _step23; + + try { + for (_iterator23.s(); !(_step23 = _iterator23.n()).done;) { + el = _step23.value; + elements.push(this.getElement(el, name)); + } + } catch (err) { + _iterator23.e(err); + } finally { + _iterator23.f(); + } + } catch (e) { + elements = null; + } + } else if (typeof els === "string") { + elements = []; + + var _iterator24 = dropzone_createForOfIteratorHelper(document.querySelectorAll(els), true), + _step24; + + try { + for (_iterator24.s(); !(_step24 = _iterator24.n()).done;) { + el = _step24.value; + elements.push(el); + } + } catch (err) { + _iterator24.e(err); + } finally { + _iterator24.f(); + } + } else if (els.nodeType != null) { + elements = [els]; + } + + if (elements == null || !elements.length) { + throw new Error("Invalid `".concat(name, "` option provided. Please provide a CSS selector, a plain HTML element or a list of those.")); + } + + return elements; +}; // Asks the user the question and calls accepted or rejected accordingly +// +// The default implementation just uses `window.confirm` and then calls the +// appropriate callback. + + +Dropzone.confirm = function (question, accepted, rejected) { + if (window.confirm(question)) { + return accepted(); + } else if (rejected != null) { + return rejected(); + } +}; // Validates the mime type like this: +// +// https://developer.mozilla.org/en-US/docs/HTML/Element/input#attr-accept + + +Dropzone.isValidFile = function (file, acceptedFiles) { + if (!acceptedFiles) { + return true; + } // If there are no accepted mime types, it's OK + + + acceptedFiles = acceptedFiles.split(","); + var mimeType = file.type; + var baseMimeType = mimeType.replace(/\/.*$/, ""); + + var _iterator25 = dropzone_createForOfIteratorHelper(acceptedFiles, true), + _step25; + + try { + for (_iterator25.s(); !(_step25 = _iterator25.n()).done;) { + var validType = _step25.value; + validType = validType.trim(); + + if (validType.charAt(0) === ".") { + if (file.name.toLowerCase().indexOf(validType.toLowerCase(), file.name.length - validType.length) !== -1) { + return true; + } + } else if (/\/\*$/.test(validType)) { + // This is something like a image/* mime type + if (baseMimeType === validType.replace(/\/.*$/, "")) { + return true; + } + } else { + if (mimeType === validType) { + return true; + } + } + } + } catch (err) { + _iterator25.e(err); + } finally { + _iterator25.f(); + } + + return false; +}; // Augment jQuery + + +if (typeof jQuery !== "undefined" && jQuery !== null) { + jQuery.fn.dropzone = function (options) { + return this.each(function () { + return new Dropzone(this, options); + }); + }; +} // Dropzone file status codes + + +Dropzone.ADDED = "added"; +Dropzone.QUEUED = "queued"; // For backwards compatibility. Now, if a file is accepted, it's either queued +// or uploading. + +Dropzone.ACCEPTED = Dropzone.QUEUED; +Dropzone.UPLOADING = "uploading"; +Dropzone.PROCESSING = Dropzone.UPLOADING; // alias + +Dropzone.CANCELED = "canceled"; +Dropzone.ERROR = "error"; +Dropzone.SUCCESS = "success"; +/* + + Bugfix for iOS 6 and 7 + Source: http://stackoverflow.com/questions/11929099/html5-canvas-drawimage-ratio-bug-ios + based on the work of https://github.com/stomita/ios-imagefile-megapixel + + */ +// Detecting vertical squash in loaded image. +// Fixes a bug which squash image vertically while drawing into canvas for some images. +// This is a bug in iOS6 devices. This function from https://github.com/stomita/ios-imagefile-megapixel + +var detectVerticalSquash = function detectVerticalSquash(img) { + var iw = img.naturalWidth; + var ih = img.naturalHeight; + var canvas = document.createElement("canvas"); + canvas.width = 1; + canvas.height = ih; + var ctx = canvas.getContext("2d"); + ctx.drawImage(img, 0, 0); + + var _ctx$getImageData = ctx.getImageData(1, 0, 1, ih), + data = _ctx$getImageData.data; // search image edge pixel position in case it is squashed vertically. + + + var sy = 0; + var ey = ih; + var py = ih; + + while (py > sy) { + var alpha = data[(py - 1) * 4 + 3]; + + if (alpha === 0) { + ey = py; + } else { + sy = py; + } + + py = ey + sy >> 1; + } + + var ratio = py / ih; + + if (ratio === 0) { + return 1; + } else { + return ratio; + } +}; // A replacement for context.drawImage +// (args are for source and destination). + + +var drawImageIOSFix = function drawImageIOSFix(ctx, img, sx, sy, sw, sh, dx, dy, dw, dh) { + var vertSquashRatio = detectVerticalSquash(img); + return ctx.drawImage(img, sx, sy, sw, sh, dx, dy, dw, dh / vertSquashRatio); +}; // Based on MinifyJpeg +// Source: http://www.perry.cz/files/ExifRestorer.js +// http://elicon.blog57.fc2.com/blog-entry-206.html + + +var ExifRestore = /*#__PURE__*/function () { + function ExifRestore() { + dropzone_classCallCheck(this, ExifRestore); + } + + dropzone_createClass(ExifRestore, null, [{ + key: "initClass", + value: function initClass() { + this.KEY_STR = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="; + } + }, { + key: "encode64", + value: function encode64(input) { + var output = ""; + var chr1 = undefined; + var chr2 = undefined; + var chr3 = ""; + var enc1 = undefined; + var enc2 = undefined; + var enc3 = undefined; + var enc4 = ""; + var i = 0; + + while (true) { + chr1 = input[i++]; + chr2 = input[i++]; + chr3 = input[i++]; + enc1 = chr1 >> 2; + enc2 = (chr1 & 3) << 4 | chr2 >> 4; + enc3 = (chr2 & 15) << 2 | chr3 >> 6; + enc4 = chr3 & 63; + + if (isNaN(chr2)) { + enc3 = enc4 = 64; + } else if (isNaN(chr3)) { + enc4 = 64; + } + + output = output + this.KEY_STR.charAt(enc1) + this.KEY_STR.charAt(enc2) + this.KEY_STR.charAt(enc3) + this.KEY_STR.charAt(enc4); + chr1 = chr2 = chr3 = ""; + enc1 = enc2 = enc3 = enc4 = ""; + + if (!(i < input.length)) { + break; + } + } + + return output; + } + }, { + key: "restore", + value: function restore(origFileBase64, resizedFileBase64) { + if (!origFileBase64.match("data:image/jpeg;base64,")) { + return resizedFileBase64; + } + + var rawImage = this.decode64(origFileBase64.replace("data:image/jpeg;base64,", "")); + var segments = this.slice2Segments(rawImage); + var image = this.exifManipulation(resizedFileBase64, segments); + return "data:image/jpeg;base64,".concat(this.encode64(image)); + } + }, { + key: "exifManipulation", + value: function exifManipulation(resizedFileBase64, segments) { + var exifArray = this.getExifArray(segments); + var newImageArray = this.insertExif(resizedFileBase64, exifArray); + var aBuffer = new Uint8Array(newImageArray); + return aBuffer; + } + }, { + key: "getExifArray", + value: function getExifArray(segments) { + var seg = undefined; + var x = 0; + + while (x < segments.length) { + seg = segments[x]; + + if (seg[0] === 255 & seg[1] === 225) { + return seg; + } + + x++; + } + + return []; + } + }, { + key: "insertExif", + value: function insertExif(resizedFileBase64, exifArray) { + var imageData = resizedFileBase64.replace("data:image/jpeg;base64,", ""); + var buf = this.decode64(imageData); + var separatePoint = buf.indexOf(255, 3); + var mae = buf.slice(0, separatePoint); + var ato = buf.slice(separatePoint); + var array = mae; + array = array.concat(exifArray); + array = array.concat(ato); + return array; + } + }, { + key: "slice2Segments", + value: function slice2Segments(rawImageArray) { + var head = 0; + var segments = []; + + while (true) { + var length; + + if (rawImageArray[head] === 255 & rawImageArray[head + 1] === 218) { + break; + } + + if (rawImageArray[head] === 255 & rawImageArray[head + 1] === 216) { + head += 2; + } else { + length = rawImageArray[head + 2] * 256 + rawImageArray[head + 3]; + var endPoint = head + length + 2; + var seg = rawImageArray.slice(head, endPoint); + segments.push(seg); + head = endPoint; + } + + if (head > rawImageArray.length) { + break; + } + } + + return segments; + } + }, { + key: "decode64", + value: function decode64(input) { + var output = ""; + var chr1 = undefined; + var chr2 = undefined; + var chr3 = ""; + var enc1 = undefined; + var enc2 = undefined; + var enc3 = undefined; + var enc4 = ""; + var i = 0; + var buf = []; // remove all characters that are not A-Z, a-z, 0-9, +, /, or = + + var base64test = /[^A-Za-z0-9\+\/\=]/g; + + if (base64test.exec(input)) { + console.warn("There were invalid base64 characters in the input text.\nValid base64 characters are A-Z, a-z, 0-9, '+', '/',and '='\nExpect errors in decoding."); + } + + input = input.replace(/[^A-Za-z0-9\+\/\=]/g, ""); + + while (true) { + enc1 = this.KEY_STR.indexOf(input.charAt(i++)); + enc2 = this.KEY_STR.indexOf(input.charAt(i++)); + enc3 = this.KEY_STR.indexOf(input.charAt(i++)); + enc4 = this.KEY_STR.indexOf(input.charAt(i++)); + chr1 = enc1 << 2 | enc2 >> 4; + chr2 = (enc2 & 15) << 4 | enc3 >> 2; + chr3 = (enc3 & 3) << 6 | enc4; + buf.push(chr1); + + if (enc3 !== 64) { + buf.push(chr2); + } + + if (enc4 !== 64) { + buf.push(chr3); + } + + chr1 = chr2 = chr3 = ""; + enc1 = enc2 = enc3 = enc4 = ""; + + if (!(i < input.length)) { + break; + } + } + + return buf; + } + }]); + + return ExifRestore; +}(); + +ExifRestore.initClass(); +/* + * contentloaded.js + * + * Author: Diego Perini (diego.perini at gmail.com) + * Summary: cross-browser wrapper for DOMContentLoaded + * Updated: 20101020 + * License: MIT + * Version: 1.2 + * + * URL: + * http://javascript.nwbox.com/ContentLoaded/ + * http://javascript.nwbox.com/ContentLoaded/MIT-LICENSE + */ +// @win window reference +// @fn function reference + +var contentLoaded = function contentLoaded(win, fn) { + var done = false; + var top = true; + var doc = win.document; + var root = doc.documentElement; + var add = doc.addEventListener ? "addEventListener" : "attachEvent"; + var rem = doc.addEventListener ? "removeEventListener" : "detachEvent"; + var pre = doc.addEventListener ? "" : "on"; + + var init = function init(e) { + if (e.type === "readystatechange" && doc.readyState !== "complete") { + return; + } + + (e.type === "load" ? win : doc)[rem](pre + e.type, init, false); + + if (!done && (done = true)) { + return fn.call(win, e.type || e); + } + }; + + var poll = function poll() { + try { + root.doScroll("left"); + } catch (e) { + setTimeout(poll, 50); + return; + } + + return init("poll"); + }; + + if (doc.readyState !== "complete") { + if (doc.createEventObject && root.doScroll) { + try { + top = !win.frameElement; + } catch (error) {} + + if (top) { + poll(); + } + } + + doc[add](pre + "DOMContentLoaded", init, false); + doc[add](pre + "readystatechange", init, false); + return win[add](pre + "load", init, false); + } +}; // As a single function to be able to write tests. + + +Dropzone._autoDiscoverFunction = function () { + if (Dropzone.autoDiscover) { + return Dropzone.discover(); + } +}; + +contentLoaded(window, Dropzone._autoDiscoverFunction); + +function __guard__(value, transform) { + return typeof value !== "undefined" && value !== null ? transform(value) : undefined; +} + +function __guardMethod__(obj, methodName, transform) { + if (typeof obj !== "undefined" && obj !== null && typeof obj[methodName] === "function") { + return transform(obj, methodName); + } else { + return undefined; + } +} + + +;// CONCATENATED MODULE: ./tool/dropzone.dist.js + /// Make Dropzone a global variable. + +window.Dropzone = Dropzone; +/* harmony default export */ var dropzone_dist = (Dropzone); + +}(); +/******/ return __webpack_exports__; +/******/ })() +; +}); \ No newline at end of file diff --git a/pxy_dashboard/static/dashboard/vendor/dropzone/dropzone.css b/pxy_dashboard/static/dashboard/vendor/dropzone/dropzone.css new file mode 100644 index 0000000..b0cf0fe --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/dropzone/dropzone.css @@ -0,0 +1,468 @@ +@-webkit-keyframes passing-through { + 0% { + opacity: 0; + -webkit-transform: translateY(40px); + -moz-transform: translateY(40px); + -ms-transform: translateY(40px); + -o-transform: translateY(40px); + transform: translateY(40px); + } + 30%, 70% { + opacity: 1; + -webkit-transform: translateY(0px); + -moz-transform: translateY(0px); + -ms-transform: translateY(0px); + -o-transform: translateY(0px); + transform: translateY(0px); + } + 100% { + opacity: 0; + -webkit-transform: translateY(-40px); + -moz-transform: translateY(-40px); + -ms-transform: translateY(-40px); + -o-transform: translateY(-40px); + transform: translateY(-40px); + } +} +@-moz-keyframes passing-through { + 0% { + opacity: 0; + -webkit-transform: translateY(40px); + -moz-transform: translateY(40px); + -ms-transform: translateY(40px); + -o-transform: translateY(40px); + transform: translateY(40px); + } + 30%, 70% { + opacity: 1; + -webkit-transform: translateY(0px); + -moz-transform: translateY(0px); + -ms-transform: translateY(0px); + -o-transform: translateY(0px); + transform: translateY(0px); + } + 100% { + opacity: 0; + -webkit-transform: translateY(-40px); + -moz-transform: translateY(-40px); + -ms-transform: translateY(-40px); + -o-transform: translateY(-40px); + transform: translateY(-40px); + } +} +@keyframes passing-through { + 0% { + opacity: 0; + -webkit-transform: translateY(40px); + -moz-transform: translateY(40px); + -ms-transform: translateY(40px); + -o-transform: translateY(40px); + transform: translateY(40px); + } + 30%, 70% { + opacity: 1; + -webkit-transform: translateY(0px); + -moz-transform: translateY(0px); + -ms-transform: translateY(0px); + -o-transform: translateY(0px); + transform: translateY(0px); + } + 100% { + opacity: 0; + -webkit-transform: translateY(-40px); + -moz-transform: translateY(-40px); + -ms-transform: translateY(-40px); + -o-transform: translateY(-40px); + transform: translateY(-40px); + } +} +@-webkit-keyframes slide-in { + 0% { + opacity: 0; + -webkit-transform: translateY(40px); + -moz-transform: translateY(40px); + -ms-transform: translateY(40px); + -o-transform: translateY(40px); + transform: translateY(40px); + } + 30% { + opacity: 1; + -webkit-transform: translateY(0px); + -moz-transform: translateY(0px); + -ms-transform: translateY(0px); + -o-transform: translateY(0px); + transform: translateY(0px); + } +} +@-moz-keyframes slide-in { + 0% { + opacity: 0; + -webkit-transform: translateY(40px); + -moz-transform: translateY(40px); + -ms-transform: translateY(40px); + -o-transform: translateY(40px); + transform: translateY(40px); + } + 30% { + opacity: 1; + -webkit-transform: translateY(0px); + -moz-transform: translateY(0px); + -ms-transform: translateY(0px); + -o-transform: translateY(0px); + transform: translateY(0px); + } +} +@keyframes slide-in { + 0% { + opacity: 0; + -webkit-transform: translateY(40px); + -moz-transform: translateY(40px); + -ms-transform: translateY(40px); + -o-transform: translateY(40px); + transform: translateY(40px); + } + 30% { + opacity: 1; + -webkit-transform: translateY(0px); + -moz-transform: translateY(0px); + -ms-transform: translateY(0px); + -o-transform: translateY(0px); + transform: translateY(0px); + } +} +@-webkit-keyframes pulse { + 0% { + -webkit-transform: scale(1); + -moz-transform: scale(1); + -ms-transform: scale(1); + -o-transform: scale(1); + transform: scale(1); + } + 10% { + -webkit-transform: scale(1.1); + -moz-transform: scale(1.1); + -ms-transform: scale(1.1); + -o-transform: scale(1.1); + transform: scale(1.1); + } + 20% { + -webkit-transform: scale(1); + -moz-transform: scale(1); + -ms-transform: scale(1); + -o-transform: scale(1); + transform: scale(1); + } +} +@-moz-keyframes pulse { + 0% { + -webkit-transform: scale(1); + -moz-transform: scale(1); + -ms-transform: scale(1); + -o-transform: scale(1); + transform: scale(1); + } + 10% { + -webkit-transform: scale(1.1); + -moz-transform: scale(1.1); + -ms-transform: scale(1.1); + -o-transform: scale(1.1); + transform: scale(1.1); + } + 20% { + -webkit-transform: scale(1); + -moz-transform: scale(1); + -ms-transform: scale(1); + -o-transform: scale(1); + transform: scale(1); + } +} +@keyframes pulse { + 0% { + -webkit-transform: scale(1); + -moz-transform: scale(1); + -ms-transform: scale(1); + -o-transform: scale(1); + transform: scale(1); + } + 10% { + -webkit-transform: scale(1.1); + -moz-transform: scale(1.1); + -ms-transform: scale(1.1); + -o-transform: scale(1.1); + transform: scale(1.1); + } + 20% { + -webkit-transform: scale(1); + -moz-transform: scale(1); + -ms-transform: scale(1); + -o-transform: scale(1); + transform: scale(1); + } +} +.dropzone, .dropzone * { + box-sizing: border-box; +} + +.dropzone { + min-height: 150px; + border: 2px solid rgba(0, 0, 0, 0.3); + background: white; + padding: 20px 20px; +} +.dropzone.dz-clickable { + cursor: pointer; +} +.dropzone.dz-clickable * { + cursor: default; +} +.dropzone.dz-clickable .dz-message, .dropzone.dz-clickable .dz-message * { + cursor: pointer; +} +.dropzone.dz-started .dz-message { + display: none; +} +.dropzone.dz-drag-hover { + border-style: solid; +} +.dropzone.dz-drag-hover .dz-message { + opacity: 0.5; +} +.dropzone .dz-message { + text-align: center; + margin: 2em 0; +} +.dropzone .dz-message .dz-button { + background: none; + color: inherit; + border: none; + padding: 0; + font: inherit; + cursor: pointer; + outline: inherit; +} +.dropzone .dz-preview { + position: relative; + display: inline-block; + vertical-align: top; + margin: 16px; + min-height: 100px; +} +.dropzone .dz-preview:hover { + z-index: 1000; +} +.dropzone .dz-preview:hover .dz-details { + opacity: 1; +} +.dropzone .dz-preview.dz-file-preview .dz-image { + border-radius: 20px; + background: #999; + background: linear-gradient(to bottom, #eee, #ddd); +} +.dropzone .dz-preview.dz-file-preview .dz-details { + opacity: 1; +} +.dropzone .dz-preview.dz-image-preview { + background: white; +} +.dropzone .dz-preview.dz-image-preview .dz-details { + -webkit-transition: opacity 0.2s linear; + -moz-transition: opacity 0.2s linear; + -ms-transition: opacity 0.2s linear; + -o-transition: opacity 0.2s linear; + transition: opacity 0.2s linear; +} +.dropzone .dz-preview .dz-remove { + font-size: 14px; + text-align: center; + display: block; + cursor: pointer; + border: none; +} +.dropzone .dz-preview .dz-remove:hover { + text-decoration: underline; +} +.dropzone .dz-preview:hover .dz-details { + opacity: 1; +} +.dropzone .dz-preview .dz-details { + z-index: 20; + position: absolute; + top: 0; + left: 0; + opacity: 0; + font-size: 13px; + min-width: 100%; + max-width: 100%; + padding: 2em 1em; + text-align: center; + color: rgba(0, 0, 0, 0.9); + line-height: 150%; +} +.dropzone .dz-preview .dz-details .dz-size { + margin-bottom: 1em; + font-size: 16px; +} +.dropzone .dz-preview .dz-details .dz-filename { + white-space: nowrap; +} +.dropzone .dz-preview .dz-details .dz-filename:hover span { + border: 1px solid rgba(200, 200, 200, 0.8); + background-color: rgba(255, 255, 255, 0.8); +} +.dropzone .dz-preview .dz-details .dz-filename:not(:hover) { + overflow: hidden; + text-overflow: ellipsis; +} +.dropzone .dz-preview .dz-details .dz-filename:not(:hover) span { + border: 1px solid transparent; +} +.dropzone .dz-preview .dz-details .dz-filename span, .dropzone .dz-preview .dz-details .dz-size span { + background-color: rgba(255, 255, 255, 0.4); + padding: 0 0.4em; + border-radius: 3px; +} +.dropzone .dz-preview:hover .dz-image img { + -webkit-transform: scale(1.05, 1.05); + -moz-transform: scale(1.05, 1.05); + -ms-transform: scale(1.05, 1.05); + -o-transform: scale(1.05, 1.05); + transform: scale(1.05, 1.05); + -webkit-filter: blur(8px); + filter: blur(8px); +} +.dropzone .dz-preview .dz-image { + border-radius: 20px; + overflow: hidden; + width: 120px; + height: 120px; + position: relative; + display: block; + z-index: 10; +} +.dropzone .dz-preview .dz-image img { + display: block; +} +.dropzone .dz-preview.dz-success .dz-success-mark { + -webkit-animation: passing-through 3s cubic-bezier(0.77, 0, 0.175, 1); + -moz-animation: passing-through 3s cubic-bezier(0.77, 0, 0.175, 1); + -ms-animation: passing-through 3s cubic-bezier(0.77, 0, 0.175, 1); + -o-animation: passing-through 3s cubic-bezier(0.77, 0, 0.175, 1); + animation: passing-through 3s cubic-bezier(0.77, 0, 0.175, 1); +} +.dropzone .dz-preview.dz-error .dz-error-mark { + opacity: 1; + -webkit-animation: slide-in 3s cubic-bezier(0.77, 0, 0.175, 1); + -moz-animation: slide-in 3s cubic-bezier(0.77, 0, 0.175, 1); + -ms-animation: slide-in 3s cubic-bezier(0.77, 0, 0.175, 1); + -o-animation: slide-in 3s cubic-bezier(0.77, 0, 0.175, 1); + animation: slide-in 3s cubic-bezier(0.77, 0, 0.175, 1); +} +.dropzone .dz-preview .dz-success-mark, .dropzone .dz-preview .dz-error-mark { + pointer-events: none; + opacity: 0; + z-index: 500; + position: absolute; + display: block; + top: 50%; + left: 50%; + margin-left: -27px; + margin-top: -27px; +} +.dropzone .dz-preview .dz-success-mark svg, .dropzone .dz-preview .dz-error-mark svg { + display: block; + width: 54px; + height: 54px; +} +.dropzone .dz-preview.dz-processing .dz-progress { + opacity: 1; + -webkit-transition: all 0.2s linear; + -moz-transition: all 0.2s linear; + -ms-transition: all 0.2s linear; + -o-transition: all 0.2s linear; + transition: all 0.2s linear; +} +.dropzone .dz-preview.dz-complete .dz-progress { + opacity: 0; + -webkit-transition: opacity 0.4s ease-in; + -moz-transition: opacity 0.4s ease-in; + -ms-transition: opacity 0.4s ease-in; + -o-transition: opacity 0.4s ease-in; + transition: opacity 0.4s ease-in; +} +.dropzone .dz-preview:not(.dz-processing) .dz-progress { + -webkit-animation: pulse 6s ease infinite; + -moz-animation: pulse 6s ease infinite; + -ms-animation: pulse 6s ease infinite; + -o-animation: pulse 6s ease infinite; + animation: pulse 6s ease infinite; +} +.dropzone .dz-preview .dz-progress { + opacity: 1; + z-index: 1000; + pointer-events: none; + position: absolute; + height: 16px; + left: 50%; + top: 50%; + margin-top: -8px; + width: 80px; + margin-left: -40px; + background: rgba(255, 255, 255, 0.9); + -webkit-transform: scale(1); + border-radius: 8px; + overflow: hidden; +} +.dropzone .dz-preview .dz-progress .dz-upload { + background: #333; + background: linear-gradient(to bottom, #666, #444); + position: absolute; + top: 0; + left: 0; + bottom: 0; + width: 0; + -webkit-transition: width 300ms ease-in-out; + -moz-transition: width 300ms ease-in-out; + -ms-transition: width 300ms ease-in-out; + -o-transition: width 300ms ease-in-out; + transition: width 300ms ease-in-out; +} +.dropzone .dz-preview.dz-error .dz-error-message { + display: block; +} +.dropzone .dz-preview.dz-error:hover .dz-error-message { + opacity: 1; + pointer-events: auto; +} +.dropzone .dz-preview .dz-error-message { + pointer-events: none; + z-index: 1000; + position: absolute; + display: block; + display: none; + opacity: 0; + -webkit-transition: opacity 0.3s ease; + -moz-transition: opacity 0.3s ease; + -ms-transition: opacity 0.3s ease; + -o-transition: opacity 0.3s ease; + transition: opacity 0.3s ease; + border-radius: 8px; + font-size: 13px; + top: 130px; + left: -10px; + width: 140px; + background: #be2626; + background: linear-gradient(to bottom, #be2626, #a92222); + padding: 0.5em 1.2em; + color: white; +} +.dropzone .dz-preview .dz-error-message:after { + content: ""; + position: absolute; + top: -6px; + left: 64px; + width: 0; + height: 0; + border-left: 6px solid transparent; + border-right: 6px solid transparent; + border-bottom: 6px solid #be2626; +} \ No newline at end of file diff --git a/pxy_dashboard/static/dashboard/vendor/dropzone/dropzone.js b/pxy_dashboard/static/dashboard/vendor/dropzone/dropzone.js new file mode 100644 index 0000000..db7e403 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/dropzone/dropzone.js @@ -0,0 +1,10441 @@ +(function webpackUniversalModuleDefinition(root, factory) { + if(typeof exports === 'object' && typeof module === 'object') + module.exports = factory(); + else if(typeof define === 'function' && define.amd) + define([], factory); + else { + var a = factory(); + for(var i in a) (typeof exports === 'object' ? exports : root)[i] = a[i]; + } +})(self, function() { +return /******/ (function() { // webpackBootstrap +/******/ var __webpack_modules__ = ({ + +/***/ 3099: +/***/ (function(module) { + +module.exports = function (it) { + if (typeof it != 'function') { + throw TypeError(String(it) + ' is not a function'); + } return it; +}; + + +/***/ }), + +/***/ 6077: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var isObject = __webpack_require__(111); + +module.exports = function (it) { + if (!isObject(it) && it !== null) { + throw TypeError("Can't set " + String(it) + ' as a prototype'); + } return it; +}; + + +/***/ }), + +/***/ 1223: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var wellKnownSymbol = __webpack_require__(5112); +var create = __webpack_require__(30); +var definePropertyModule = __webpack_require__(3070); + +var UNSCOPABLES = wellKnownSymbol('unscopables'); +var ArrayPrototype = Array.prototype; + +// Array.prototype[@@unscopables] +// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables +if (ArrayPrototype[UNSCOPABLES] == undefined) { + definePropertyModule.f(ArrayPrototype, UNSCOPABLES, { + configurable: true, + value: create(null) + }); +} + +// add a key to Array.prototype[@@unscopables] +module.exports = function (key) { + ArrayPrototype[UNSCOPABLES][key] = true; +}; + + +/***/ }), + +/***/ 1530: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var charAt = __webpack_require__(8710).charAt; + +// `AdvanceStringIndex` abstract operation +// https://tc39.es/ecma262/#sec-advancestringindex +module.exports = function (S, index, unicode) { + return index + (unicode ? charAt(S, index).length : 1); +}; + + +/***/ }), + +/***/ 5787: +/***/ (function(module) { + +module.exports = function (it, Constructor, name) { + if (!(it instanceof Constructor)) { + throw TypeError('Incorrect ' + (name ? name + ' ' : '') + 'invocation'); + } return it; +}; + + +/***/ }), + +/***/ 9670: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var isObject = __webpack_require__(111); + +module.exports = function (it) { + if (!isObject(it)) { + throw TypeError(String(it) + ' is not an object'); + } return it; +}; + + +/***/ }), + +/***/ 4019: +/***/ (function(module) { + +module.exports = typeof ArrayBuffer !== 'undefined' && typeof DataView !== 'undefined'; + + +/***/ }), + +/***/ 260: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var NATIVE_ARRAY_BUFFER = __webpack_require__(4019); +var DESCRIPTORS = __webpack_require__(9781); +var global = __webpack_require__(7854); +var isObject = __webpack_require__(111); +var has = __webpack_require__(6656); +var classof = __webpack_require__(648); +var createNonEnumerableProperty = __webpack_require__(8880); +var redefine = __webpack_require__(1320); +var defineProperty = __webpack_require__(3070).f; +var getPrototypeOf = __webpack_require__(9518); +var setPrototypeOf = __webpack_require__(7674); +var wellKnownSymbol = __webpack_require__(5112); +var uid = __webpack_require__(9711); + +var Int8Array = global.Int8Array; +var Int8ArrayPrototype = Int8Array && Int8Array.prototype; +var Uint8ClampedArray = global.Uint8ClampedArray; +var Uint8ClampedArrayPrototype = Uint8ClampedArray && Uint8ClampedArray.prototype; +var TypedArray = Int8Array && getPrototypeOf(Int8Array); +var TypedArrayPrototype = Int8ArrayPrototype && getPrototypeOf(Int8ArrayPrototype); +var ObjectPrototype = Object.prototype; +var isPrototypeOf = ObjectPrototype.isPrototypeOf; + +var TO_STRING_TAG = wellKnownSymbol('toStringTag'); +var TYPED_ARRAY_TAG = uid('TYPED_ARRAY_TAG'); +// Fixing native typed arrays in Opera Presto crashes the browser, see #595 +var NATIVE_ARRAY_BUFFER_VIEWS = NATIVE_ARRAY_BUFFER && !!setPrototypeOf && classof(global.opera) !== 'Opera'; +var TYPED_ARRAY_TAG_REQIRED = false; +var NAME; + +var TypedArrayConstructorsList = { + Int8Array: 1, + Uint8Array: 1, + Uint8ClampedArray: 1, + Int16Array: 2, + Uint16Array: 2, + Int32Array: 4, + Uint32Array: 4, + Float32Array: 4, + Float64Array: 8 +}; + +var BigIntArrayConstructorsList = { + BigInt64Array: 8, + BigUint64Array: 8 +}; + +var isView = function isView(it) { + if (!isObject(it)) return false; + var klass = classof(it); + return klass === 'DataView' + || has(TypedArrayConstructorsList, klass) + || has(BigIntArrayConstructorsList, klass); +}; + +var isTypedArray = function (it) { + if (!isObject(it)) return false; + var klass = classof(it); + return has(TypedArrayConstructorsList, klass) + || has(BigIntArrayConstructorsList, klass); +}; + +var aTypedArray = function (it) { + if (isTypedArray(it)) return it; + throw TypeError('Target is not a typed array'); +}; + +var aTypedArrayConstructor = function (C) { + if (setPrototypeOf) { + if (isPrototypeOf.call(TypedArray, C)) return C; + } else for (var ARRAY in TypedArrayConstructorsList) if (has(TypedArrayConstructorsList, NAME)) { + var TypedArrayConstructor = global[ARRAY]; + if (TypedArrayConstructor && (C === TypedArrayConstructor || isPrototypeOf.call(TypedArrayConstructor, C))) { + return C; + } + } throw TypeError('Target is not a typed array constructor'); +}; + +var exportTypedArrayMethod = function (KEY, property, forced) { + if (!DESCRIPTORS) return; + if (forced) for (var ARRAY in TypedArrayConstructorsList) { + var TypedArrayConstructor = global[ARRAY]; + if (TypedArrayConstructor && has(TypedArrayConstructor.prototype, KEY)) { + delete TypedArrayConstructor.prototype[KEY]; + } + } + if (!TypedArrayPrototype[KEY] || forced) { + redefine(TypedArrayPrototype, KEY, forced ? property + : NATIVE_ARRAY_BUFFER_VIEWS && Int8ArrayPrototype[KEY] || property); + } +}; + +var exportTypedArrayStaticMethod = function (KEY, property, forced) { + var ARRAY, TypedArrayConstructor; + if (!DESCRIPTORS) return; + if (setPrototypeOf) { + if (forced) for (ARRAY in TypedArrayConstructorsList) { + TypedArrayConstructor = global[ARRAY]; + if (TypedArrayConstructor && has(TypedArrayConstructor, KEY)) { + delete TypedArrayConstructor[KEY]; + } + } + if (!TypedArray[KEY] || forced) { + // V8 ~ Chrome 49-50 `%TypedArray%` methods are non-writable non-configurable + try { + return redefine(TypedArray, KEY, forced ? property : NATIVE_ARRAY_BUFFER_VIEWS && Int8Array[KEY] || property); + } catch (error) { /* empty */ } + } else return; + } + for (ARRAY in TypedArrayConstructorsList) { + TypedArrayConstructor = global[ARRAY]; + if (TypedArrayConstructor && (!TypedArrayConstructor[KEY] || forced)) { + redefine(TypedArrayConstructor, KEY, property); + } + } +}; + +for (NAME in TypedArrayConstructorsList) { + if (!global[NAME]) NATIVE_ARRAY_BUFFER_VIEWS = false; +} + +// WebKit bug - typed arrays constructors prototype is Object.prototype +if (!NATIVE_ARRAY_BUFFER_VIEWS || typeof TypedArray != 'function' || TypedArray === Function.prototype) { + // eslint-disable-next-line no-shadow -- safe + TypedArray = function TypedArray() { + throw TypeError('Incorrect invocation'); + }; + if (NATIVE_ARRAY_BUFFER_VIEWS) for (NAME in TypedArrayConstructorsList) { + if (global[NAME]) setPrototypeOf(global[NAME], TypedArray); + } +} + +if (!NATIVE_ARRAY_BUFFER_VIEWS || !TypedArrayPrototype || TypedArrayPrototype === ObjectPrototype) { + TypedArrayPrototype = TypedArray.prototype; + if (NATIVE_ARRAY_BUFFER_VIEWS) for (NAME in TypedArrayConstructorsList) { + if (global[NAME]) setPrototypeOf(global[NAME].prototype, TypedArrayPrototype); + } +} + +// WebKit bug - one more object in Uint8ClampedArray prototype chain +if (NATIVE_ARRAY_BUFFER_VIEWS && getPrototypeOf(Uint8ClampedArrayPrototype) !== TypedArrayPrototype) { + setPrototypeOf(Uint8ClampedArrayPrototype, TypedArrayPrototype); +} + +if (DESCRIPTORS && !has(TypedArrayPrototype, TO_STRING_TAG)) { + TYPED_ARRAY_TAG_REQIRED = true; + defineProperty(TypedArrayPrototype, TO_STRING_TAG, { get: function () { + return isObject(this) ? this[TYPED_ARRAY_TAG] : undefined; + } }); + for (NAME in TypedArrayConstructorsList) if (global[NAME]) { + createNonEnumerableProperty(global[NAME], TYPED_ARRAY_TAG, NAME); + } +} + +module.exports = { + NATIVE_ARRAY_BUFFER_VIEWS: NATIVE_ARRAY_BUFFER_VIEWS, + TYPED_ARRAY_TAG: TYPED_ARRAY_TAG_REQIRED && TYPED_ARRAY_TAG, + aTypedArray: aTypedArray, + aTypedArrayConstructor: aTypedArrayConstructor, + exportTypedArrayMethod: exportTypedArrayMethod, + exportTypedArrayStaticMethod: exportTypedArrayStaticMethod, + isView: isView, + isTypedArray: isTypedArray, + TypedArray: TypedArray, + TypedArrayPrototype: TypedArrayPrototype +}; + + +/***/ }), + +/***/ 3331: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var global = __webpack_require__(7854); +var DESCRIPTORS = __webpack_require__(9781); +var NATIVE_ARRAY_BUFFER = __webpack_require__(4019); +var createNonEnumerableProperty = __webpack_require__(8880); +var redefineAll = __webpack_require__(2248); +var fails = __webpack_require__(7293); +var anInstance = __webpack_require__(5787); +var toInteger = __webpack_require__(9958); +var toLength = __webpack_require__(7466); +var toIndex = __webpack_require__(7067); +var IEEE754 = __webpack_require__(1179); +var getPrototypeOf = __webpack_require__(9518); +var setPrototypeOf = __webpack_require__(7674); +var getOwnPropertyNames = __webpack_require__(8006).f; +var defineProperty = __webpack_require__(3070).f; +var arrayFill = __webpack_require__(1285); +var setToStringTag = __webpack_require__(8003); +var InternalStateModule = __webpack_require__(9909); + +var getInternalState = InternalStateModule.get; +var setInternalState = InternalStateModule.set; +var ARRAY_BUFFER = 'ArrayBuffer'; +var DATA_VIEW = 'DataView'; +var PROTOTYPE = 'prototype'; +var WRONG_LENGTH = 'Wrong length'; +var WRONG_INDEX = 'Wrong index'; +var NativeArrayBuffer = global[ARRAY_BUFFER]; +var $ArrayBuffer = NativeArrayBuffer; +var $DataView = global[DATA_VIEW]; +var $DataViewPrototype = $DataView && $DataView[PROTOTYPE]; +var ObjectPrototype = Object.prototype; +var RangeError = global.RangeError; + +var packIEEE754 = IEEE754.pack; +var unpackIEEE754 = IEEE754.unpack; + +var packInt8 = function (number) { + return [number & 0xFF]; +}; + +var packInt16 = function (number) { + return [number & 0xFF, number >> 8 & 0xFF]; +}; + +var packInt32 = function (number) { + return [number & 0xFF, number >> 8 & 0xFF, number >> 16 & 0xFF, number >> 24 & 0xFF]; +}; + +var unpackInt32 = function (buffer) { + return buffer[3] << 24 | buffer[2] << 16 | buffer[1] << 8 | buffer[0]; +}; + +var packFloat32 = function (number) { + return packIEEE754(number, 23, 4); +}; + +var packFloat64 = function (number) { + return packIEEE754(number, 52, 8); +}; + +var addGetter = function (Constructor, key) { + defineProperty(Constructor[PROTOTYPE], key, { get: function () { return getInternalState(this)[key]; } }); +}; + +var get = function (view, count, index, isLittleEndian) { + var intIndex = toIndex(index); + var store = getInternalState(view); + if (intIndex + count > store.byteLength) throw RangeError(WRONG_INDEX); + var bytes = getInternalState(store.buffer).bytes; + var start = intIndex + store.byteOffset; + var pack = bytes.slice(start, start + count); + return isLittleEndian ? pack : pack.reverse(); +}; + +var set = function (view, count, index, conversion, value, isLittleEndian) { + var intIndex = toIndex(index); + var store = getInternalState(view); + if (intIndex + count > store.byteLength) throw RangeError(WRONG_INDEX); + var bytes = getInternalState(store.buffer).bytes; + var start = intIndex + store.byteOffset; + var pack = conversion(+value); + for (var i = 0; i < count; i++) bytes[start + i] = pack[isLittleEndian ? i : count - i - 1]; +}; + +if (!NATIVE_ARRAY_BUFFER) { + $ArrayBuffer = function ArrayBuffer(length) { + anInstance(this, $ArrayBuffer, ARRAY_BUFFER); + var byteLength = toIndex(length); + setInternalState(this, { + bytes: arrayFill.call(new Array(byteLength), 0), + byteLength: byteLength + }); + if (!DESCRIPTORS) this.byteLength = byteLength; + }; + + $DataView = function DataView(buffer, byteOffset, byteLength) { + anInstance(this, $DataView, DATA_VIEW); + anInstance(buffer, $ArrayBuffer, DATA_VIEW); + var bufferLength = getInternalState(buffer).byteLength; + var offset = toInteger(byteOffset); + if (offset < 0 || offset > bufferLength) throw RangeError('Wrong offset'); + byteLength = byteLength === undefined ? bufferLength - offset : toLength(byteLength); + if (offset + byteLength > bufferLength) throw RangeError(WRONG_LENGTH); + setInternalState(this, { + buffer: buffer, + byteLength: byteLength, + byteOffset: offset + }); + if (!DESCRIPTORS) { + this.buffer = buffer; + this.byteLength = byteLength; + this.byteOffset = offset; + } + }; + + if (DESCRIPTORS) { + addGetter($ArrayBuffer, 'byteLength'); + addGetter($DataView, 'buffer'); + addGetter($DataView, 'byteLength'); + addGetter($DataView, 'byteOffset'); + } + + redefineAll($DataView[PROTOTYPE], { + getInt8: function getInt8(byteOffset) { + return get(this, 1, byteOffset)[0] << 24 >> 24; + }, + getUint8: function getUint8(byteOffset) { + return get(this, 1, byteOffset)[0]; + }, + getInt16: function getInt16(byteOffset /* , littleEndian */) { + var bytes = get(this, 2, byteOffset, arguments.length > 1 ? arguments[1] : undefined); + return (bytes[1] << 8 | bytes[0]) << 16 >> 16; + }, + getUint16: function getUint16(byteOffset /* , littleEndian */) { + var bytes = get(this, 2, byteOffset, arguments.length > 1 ? arguments[1] : undefined); + return bytes[1] << 8 | bytes[0]; + }, + getInt32: function getInt32(byteOffset /* , littleEndian */) { + return unpackInt32(get(this, 4, byteOffset, arguments.length > 1 ? arguments[1] : undefined)); + }, + getUint32: function getUint32(byteOffset /* , littleEndian */) { + return unpackInt32(get(this, 4, byteOffset, arguments.length > 1 ? arguments[1] : undefined)) >>> 0; + }, + getFloat32: function getFloat32(byteOffset /* , littleEndian */) { + return unpackIEEE754(get(this, 4, byteOffset, arguments.length > 1 ? arguments[1] : undefined), 23); + }, + getFloat64: function getFloat64(byteOffset /* , littleEndian */) { + return unpackIEEE754(get(this, 8, byteOffset, arguments.length > 1 ? arguments[1] : undefined), 52); + }, + setInt8: function setInt8(byteOffset, value) { + set(this, 1, byteOffset, packInt8, value); + }, + setUint8: function setUint8(byteOffset, value) { + set(this, 1, byteOffset, packInt8, value); + }, + setInt16: function setInt16(byteOffset, value /* , littleEndian */) { + set(this, 2, byteOffset, packInt16, value, arguments.length > 2 ? arguments[2] : undefined); + }, + setUint16: function setUint16(byteOffset, value /* , littleEndian */) { + set(this, 2, byteOffset, packInt16, value, arguments.length > 2 ? arguments[2] : undefined); + }, + setInt32: function setInt32(byteOffset, value /* , littleEndian */) { + set(this, 4, byteOffset, packInt32, value, arguments.length > 2 ? arguments[2] : undefined); + }, + setUint32: function setUint32(byteOffset, value /* , littleEndian */) { + set(this, 4, byteOffset, packInt32, value, arguments.length > 2 ? arguments[2] : undefined); + }, + setFloat32: function setFloat32(byteOffset, value /* , littleEndian */) { + set(this, 4, byteOffset, packFloat32, value, arguments.length > 2 ? arguments[2] : undefined); + }, + setFloat64: function setFloat64(byteOffset, value /* , littleEndian */) { + set(this, 8, byteOffset, packFloat64, value, arguments.length > 2 ? arguments[2] : undefined); + } + }); +} else { + /* eslint-disable no-new -- required for testing */ + if (!fails(function () { + NativeArrayBuffer(1); + }) || !fails(function () { + new NativeArrayBuffer(-1); + }) || fails(function () { + new NativeArrayBuffer(); + new NativeArrayBuffer(1.5); + new NativeArrayBuffer(NaN); + return NativeArrayBuffer.name != ARRAY_BUFFER; + })) { + /* eslint-enable no-new -- required for testing */ + $ArrayBuffer = function ArrayBuffer(length) { + anInstance(this, $ArrayBuffer); + return new NativeArrayBuffer(toIndex(length)); + }; + var ArrayBufferPrototype = $ArrayBuffer[PROTOTYPE] = NativeArrayBuffer[PROTOTYPE]; + for (var keys = getOwnPropertyNames(NativeArrayBuffer), j = 0, key; keys.length > j;) { + if (!((key = keys[j++]) in $ArrayBuffer)) { + createNonEnumerableProperty($ArrayBuffer, key, NativeArrayBuffer[key]); + } + } + ArrayBufferPrototype.constructor = $ArrayBuffer; + } + + // WebKit bug - the same parent prototype for typed arrays and data view + if (setPrototypeOf && getPrototypeOf($DataViewPrototype) !== ObjectPrototype) { + setPrototypeOf($DataViewPrototype, ObjectPrototype); + } + + // iOS Safari 7.x bug + var testView = new $DataView(new $ArrayBuffer(2)); + var nativeSetInt8 = $DataViewPrototype.setInt8; + testView.setInt8(0, 2147483648); + testView.setInt8(1, 2147483649); + if (testView.getInt8(0) || !testView.getInt8(1)) redefineAll($DataViewPrototype, { + setInt8: function setInt8(byteOffset, value) { + nativeSetInt8.call(this, byteOffset, value << 24 >> 24); + }, + setUint8: function setUint8(byteOffset, value) { + nativeSetInt8.call(this, byteOffset, value << 24 >> 24); + } + }, { unsafe: true }); +} + +setToStringTag($ArrayBuffer, ARRAY_BUFFER); +setToStringTag($DataView, DATA_VIEW); + +module.exports = { + ArrayBuffer: $ArrayBuffer, + DataView: $DataView +}; + + +/***/ }), + +/***/ 1048: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var toObject = __webpack_require__(7908); +var toAbsoluteIndex = __webpack_require__(1400); +var toLength = __webpack_require__(7466); + +var min = Math.min; + +// `Array.prototype.copyWithin` method implementation +// https://tc39.es/ecma262/#sec-array.prototype.copywithin +module.exports = [].copyWithin || function copyWithin(target /* = 0 */, start /* = 0, end = @length */) { + var O = toObject(this); + var len = toLength(O.length); + var to = toAbsoluteIndex(target, len); + var from = toAbsoluteIndex(start, len); + var end = arguments.length > 2 ? arguments[2] : undefined; + var count = min((end === undefined ? len : toAbsoluteIndex(end, len)) - from, len - to); + var inc = 1; + if (from < to && to < from + count) { + inc = -1; + from += count - 1; + to += count - 1; + } + while (count-- > 0) { + if (from in O) O[to] = O[from]; + else delete O[to]; + to += inc; + from += inc; + } return O; +}; + + +/***/ }), + +/***/ 1285: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var toObject = __webpack_require__(7908); +var toAbsoluteIndex = __webpack_require__(1400); +var toLength = __webpack_require__(7466); + +// `Array.prototype.fill` method implementation +// https://tc39.es/ecma262/#sec-array.prototype.fill +module.exports = function fill(value /* , start = 0, end = @length */) { + var O = toObject(this); + var length = toLength(O.length); + var argumentsLength = arguments.length; + var index = toAbsoluteIndex(argumentsLength > 1 ? arguments[1] : undefined, length); + var end = argumentsLength > 2 ? arguments[2] : undefined; + var endPos = end === undefined ? length : toAbsoluteIndex(end, length); + while (endPos > index) O[index++] = value; + return O; +}; + + +/***/ }), + +/***/ 8533: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var $forEach = __webpack_require__(2092).forEach; +var arrayMethodIsStrict = __webpack_require__(9341); + +var STRICT_METHOD = arrayMethodIsStrict('forEach'); + +// `Array.prototype.forEach` method implementation +// https://tc39.es/ecma262/#sec-array.prototype.foreach +module.exports = !STRICT_METHOD ? function forEach(callbackfn /* , thisArg */) { + return $forEach(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined); +} : [].forEach; + + +/***/ }), + +/***/ 8457: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var bind = __webpack_require__(9974); +var toObject = __webpack_require__(7908); +var callWithSafeIterationClosing = __webpack_require__(3411); +var isArrayIteratorMethod = __webpack_require__(7659); +var toLength = __webpack_require__(7466); +var createProperty = __webpack_require__(6135); +var getIteratorMethod = __webpack_require__(1246); + +// `Array.from` method implementation +// https://tc39.es/ecma262/#sec-array.from +module.exports = function from(arrayLike /* , mapfn = undefined, thisArg = undefined */) { + var O = toObject(arrayLike); + var C = typeof this == 'function' ? this : Array; + var argumentsLength = arguments.length; + var mapfn = argumentsLength > 1 ? arguments[1] : undefined; + var mapping = mapfn !== undefined; + var iteratorMethod = getIteratorMethod(O); + var index = 0; + var length, result, step, iterator, next, value; + if (mapping) mapfn = bind(mapfn, argumentsLength > 2 ? arguments[2] : undefined, 2); + // if the target is not iterable or it's an array with the default iterator - use a simple case + if (iteratorMethod != undefined && !(C == Array && isArrayIteratorMethod(iteratorMethod))) { + iterator = iteratorMethod.call(O); + next = iterator.next; + result = new C(); + for (;!(step = next.call(iterator)).done; index++) { + value = mapping ? callWithSafeIterationClosing(iterator, mapfn, [step.value, index], true) : step.value; + createProperty(result, index, value); + } + } else { + length = toLength(O.length); + result = new C(length); + for (;length > index; index++) { + value = mapping ? mapfn(O[index], index) : O[index]; + createProperty(result, index, value); + } + } + result.length = index; + return result; +}; + + +/***/ }), + +/***/ 1318: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var toIndexedObject = __webpack_require__(5656); +var toLength = __webpack_require__(7466); +var toAbsoluteIndex = __webpack_require__(1400); + +// `Array.prototype.{ indexOf, includes }` methods implementation +var createMethod = function (IS_INCLUDES) { + return function ($this, el, fromIndex) { + var O = toIndexedObject($this); + var length = toLength(O.length); + var index = toAbsoluteIndex(fromIndex, length); + var value; + // Array#includes uses SameValueZero equality algorithm + // eslint-disable-next-line no-self-compare -- NaN check + if (IS_INCLUDES && el != el) while (length > index) { + value = O[index++]; + // eslint-disable-next-line no-self-compare -- NaN check + if (value != value) return true; + // Array#indexOf ignores holes, Array#includes - not + } else for (;length > index; index++) { + if ((IS_INCLUDES || index in O) && O[index] === el) return IS_INCLUDES || index || 0; + } return !IS_INCLUDES && -1; + }; +}; + +module.exports = { + // `Array.prototype.includes` method + // https://tc39.es/ecma262/#sec-array.prototype.includes + includes: createMethod(true), + // `Array.prototype.indexOf` method + // https://tc39.es/ecma262/#sec-array.prototype.indexof + indexOf: createMethod(false) +}; + + +/***/ }), + +/***/ 2092: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var bind = __webpack_require__(9974); +var IndexedObject = __webpack_require__(8361); +var toObject = __webpack_require__(7908); +var toLength = __webpack_require__(7466); +var arraySpeciesCreate = __webpack_require__(5417); + +var push = [].push; + +// `Array.prototype.{ forEach, map, filter, some, every, find, findIndex, filterOut }` methods implementation +var createMethod = function (TYPE) { + var IS_MAP = TYPE == 1; + var IS_FILTER = TYPE == 2; + var IS_SOME = TYPE == 3; + var IS_EVERY = TYPE == 4; + var IS_FIND_INDEX = TYPE == 6; + var IS_FILTER_OUT = TYPE == 7; + var NO_HOLES = TYPE == 5 || IS_FIND_INDEX; + return function ($this, callbackfn, that, specificCreate) { + var O = toObject($this); + var self = IndexedObject(O); + var boundFunction = bind(callbackfn, that, 3); + var length = toLength(self.length); + var index = 0; + var create = specificCreate || arraySpeciesCreate; + var target = IS_MAP ? create($this, length) : IS_FILTER || IS_FILTER_OUT ? create($this, 0) : undefined; + var value, result; + for (;length > index; index++) if (NO_HOLES || index in self) { + value = self[index]; + result = boundFunction(value, index, O); + if (TYPE) { + if (IS_MAP) target[index] = result; // map + else if (result) switch (TYPE) { + case 3: return true; // some + case 5: return value; // find + case 6: return index; // findIndex + case 2: push.call(target, value); // filter + } else switch (TYPE) { + case 4: return false; // every + case 7: push.call(target, value); // filterOut + } + } + } + return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : target; + }; +}; + +module.exports = { + // `Array.prototype.forEach` method + // https://tc39.es/ecma262/#sec-array.prototype.foreach + forEach: createMethod(0), + // `Array.prototype.map` method + // https://tc39.es/ecma262/#sec-array.prototype.map + map: createMethod(1), + // `Array.prototype.filter` method + // https://tc39.es/ecma262/#sec-array.prototype.filter + filter: createMethod(2), + // `Array.prototype.some` method + // https://tc39.es/ecma262/#sec-array.prototype.some + some: createMethod(3), + // `Array.prototype.every` method + // https://tc39.es/ecma262/#sec-array.prototype.every + every: createMethod(4), + // `Array.prototype.find` method + // https://tc39.es/ecma262/#sec-array.prototype.find + find: createMethod(5), + // `Array.prototype.findIndex` method + // https://tc39.es/ecma262/#sec-array.prototype.findIndex + findIndex: createMethod(6), + // `Array.prototype.filterOut` method + // https://github.com/tc39/proposal-array-filtering + filterOut: createMethod(7) +}; + + +/***/ }), + +/***/ 6583: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var toIndexedObject = __webpack_require__(5656); +var toInteger = __webpack_require__(9958); +var toLength = __webpack_require__(7466); +var arrayMethodIsStrict = __webpack_require__(9341); + +var min = Math.min; +var nativeLastIndexOf = [].lastIndexOf; +var NEGATIVE_ZERO = !!nativeLastIndexOf && 1 / [1].lastIndexOf(1, -0) < 0; +var STRICT_METHOD = arrayMethodIsStrict('lastIndexOf'); +var FORCED = NEGATIVE_ZERO || !STRICT_METHOD; + +// `Array.prototype.lastIndexOf` method implementation +// https://tc39.es/ecma262/#sec-array.prototype.lastindexof +module.exports = FORCED ? function lastIndexOf(searchElement /* , fromIndex = @[*-1] */) { + // convert -0 to +0 + if (NEGATIVE_ZERO) return nativeLastIndexOf.apply(this, arguments) || 0; + var O = toIndexedObject(this); + var length = toLength(O.length); + var index = length - 1; + if (arguments.length > 1) index = min(index, toInteger(arguments[1])); + if (index < 0) index = length + index; + for (;index >= 0; index--) if (index in O && O[index] === searchElement) return index || 0; + return -1; +} : nativeLastIndexOf; + + +/***/ }), + +/***/ 1194: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var fails = __webpack_require__(7293); +var wellKnownSymbol = __webpack_require__(5112); +var V8_VERSION = __webpack_require__(7392); + +var SPECIES = wellKnownSymbol('species'); + +module.exports = function (METHOD_NAME) { + // We can't use this feature detection in V8 since it causes + // deoptimization and serious performance degradation + // https://github.com/zloirock/core-js/issues/677 + return V8_VERSION >= 51 || !fails(function () { + var array = []; + var constructor = array.constructor = {}; + constructor[SPECIES] = function () { + return { foo: 1 }; + }; + return array[METHOD_NAME](Boolean).foo !== 1; + }); +}; + + +/***/ }), + +/***/ 9341: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var fails = __webpack_require__(7293); + +module.exports = function (METHOD_NAME, argument) { + var method = [][METHOD_NAME]; + return !!method && fails(function () { + // eslint-disable-next-line no-useless-call,no-throw-literal -- required for testing + method.call(null, argument || function () { throw 1; }, 1); + }); +}; + + +/***/ }), + +/***/ 3671: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var aFunction = __webpack_require__(3099); +var toObject = __webpack_require__(7908); +var IndexedObject = __webpack_require__(8361); +var toLength = __webpack_require__(7466); + +// `Array.prototype.{ reduce, reduceRight }` methods implementation +var createMethod = function (IS_RIGHT) { + return function (that, callbackfn, argumentsLength, memo) { + aFunction(callbackfn); + var O = toObject(that); + var self = IndexedObject(O); + var length = toLength(O.length); + var index = IS_RIGHT ? length - 1 : 0; + var i = IS_RIGHT ? -1 : 1; + if (argumentsLength < 2) while (true) { + if (index in self) { + memo = self[index]; + index += i; + break; + } + index += i; + if (IS_RIGHT ? index < 0 : length <= index) { + throw TypeError('Reduce of empty array with no initial value'); + } + } + for (;IS_RIGHT ? index >= 0 : length > index; index += i) if (index in self) { + memo = callbackfn(memo, self[index], index, O); + } + return memo; + }; +}; + +module.exports = { + // `Array.prototype.reduce` method + // https://tc39.es/ecma262/#sec-array.prototype.reduce + left: createMethod(false), + // `Array.prototype.reduceRight` method + // https://tc39.es/ecma262/#sec-array.prototype.reduceright + right: createMethod(true) +}; + + +/***/ }), + +/***/ 5417: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var isObject = __webpack_require__(111); +var isArray = __webpack_require__(3157); +var wellKnownSymbol = __webpack_require__(5112); + +var SPECIES = wellKnownSymbol('species'); + +// `ArraySpeciesCreate` abstract operation +// https://tc39.es/ecma262/#sec-arrayspeciescreate +module.exports = function (originalArray, length) { + var C; + if (isArray(originalArray)) { + C = originalArray.constructor; + // cross-realm fallback + if (typeof C == 'function' && (C === Array || isArray(C.prototype))) C = undefined; + else if (isObject(C)) { + C = C[SPECIES]; + if (C === null) C = undefined; + } + } return new (C === undefined ? Array : C)(length === 0 ? 0 : length); +}; + + +/***/ }), + +/***/ 3411: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var anObject = __webpack_require__(9670); +var iteratorClose = __webpack_require__(9212); + +// call something on iterator step with safe closing on error +module.exports = function (iterator, fn, value, ENTRIES) { + try { + return ENTRIES ? fn(anObject(value)[0], value[1]) : fn(value); + // 7.4.6 IteratorClose(iterator, completion) + } catch (error) { + iteratorClose(iterator); + throw error; + } +}; + + +/***/ }), + +/***/ 7072: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var wellKnownSymbol = __webpack_require__(5112); + +var ITERATOR = wellKnownSymbol('iterator'); +var SAFE_CLOSING = false; + +try { + var called = 0; + var iteratorWithReturn = { + next: function () { + return { done: !!called++ }; + }, + 'return': function () { + SAFE_CLOSING = true; + } + }; + iteratorWithReturn[ITERATOR] = function () { + return this; + }; + // eslint-disable-next-line no-throw-literal -- required for testing + Array.from(iteratorWithReturn, function () { throw 2; }); +} catch (error) { /* empty */ } + +module.exports = function (exec, SKIP_CLOSING) { + if (!SKIP_CLOSING && !SAFE_CLOSING) return false; + var ITERATION_SUPPORT = false; + try { + var object = {}; + object[ITERATOR] = function () { + return { + next: function () { + return { done: ITERATION_SUPPORT = true }; + } + }; + }; + exec(object); + } catch (error) { /* empty */ } + return ITERATION_SUPPORT; +}; + + +/***/ }), + +/***/ 4326: +/***/ (function(module) { + +var toString = {}.toString; + +module.exports = function (it) { + return toString.call(it).slice(8, -1); +}; + + +/***/ }), + +/***/ 648: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var TO_STRING_TAG_SUPPORT = __webpack_require__(1694); +var classofRaw = __webpack_require__(4326); +var wellKnownSymbol = __webpack_require__(5112); + +var TO_STRING_TAG = wellKnownSymbol('toStringTag'); +// ES3 wrong here +var CORRECT_ARGUMENTS = classofRaw(function () { return arguments; }()) == 'Arguments'; + +// fallback for IE11 Script Access Denied error +var tryGet = function (it, key) { + try { + return it[key]; + } catch (error) { /* empty */ } +}; + +// getting tag from ES6+ `Object.prototype.toString` +module.exports = TO_STRING_TAG_SUPPORT ? classofRaw : function (it) { + var O, tag, result; + return it === undefined ? 'Undefined' : it === null ? 'Null' + // @@toStringTag case + : typeof (tag = tryGet(O = Object(it), TO_STRING_TAG)) == 'string' ? tag + // builtinTag case + : CORRECT_ARGUMENTS ? classofRaw(O) + // ES3 arguments fallback + : (result = classofRaw(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : result; +}; + + +/***/ }), + +/***/ 9920: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var has = __webpack_require__(6656); +var ownKeys = __webpack_require__(3887); +var getOwnPropertyDescriptorModule = __webpack_require__(1236); +var definePropertyModule = __webpack_require__(3070); + +module.exports = function (target, source) { + var keys = ownKeys(source); + var defineProperty = definePropertyModule.f; + var getOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f; + for (var i = 0; i < keys.length; i++) { + var key = keys[i]; + if (!has(target, key)) defineProperty(target, key, getOwnPropertyDescriptor(source, key)); + } +}; + + +/***/ }), + +/***/ 8544: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var fails = __webpack_require__(7293); + +module.exports = !fails(function () { + function F() { /* empty */ } + F.prototype.constructor = null; + return Object.getPrototypeOf(new F()) !== F.prototype; +}); + + +/***/ }), + +/***/ 4994: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var IteratorPrototype = __webpack_require__(3383).IteratorPrototype; +var create = __webpack_require__(30); +var createPropertyDescriptor = __webpack_require__(9114); +var setToStringTag = __webpack_require__(8003); +var Iterators = __webpack_require__(7497); + +var returnThis = function () { return this; }; + +module.exports = function (IteratorConstructor, NAME, next) { + var TO_STRING_TAG = NAME + ' Iterator'; + IteratorConstructor.prototype = create(IteratorPrototype, { next: createPropertyDescriptor(1, next) }); + setToStringTag(IteratorConstructor, TO_STRING_TAG, false, true); + Iterators[TO_STRING_TAG] = returnThis; + return IteratorConstructor; +}; + + +/***/ }), + +/***/ 8880: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var DESCRIPTORS = __webpack_require__(9781); +var definePropertyModule = __webpack_require__(3070); +var createPropertyDescriptor = __webpack_require__(9114); + +module.exports = DESCRIPTORS ? function (object, key, value) { + return definePropertyModule.f(object, key, createPropertyDescriptor(1, value)); +} : function (object, key, value) { + object[key] = value; + return object; +}; + + +/***/ }), + +/***/ 9114: +/***/ (function(module) { + +module.exports = function (bitmap, value) { + return { + enumerable: !(bitmap & 1), + configurable: !(bitmap & 2), + writable: !(bitmap & 4), + value: value + }; +}; + + +/***/ }), + +/***/ 6135: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var toPrimitive = __webpack_require__(7593); +var definePropertyModule = __webpack_require__(3070); +var createPropertyDescriptor = __webpack_require__(9114); + +module.exports = function (object, key, value) { + var propertyKey = toPrimitive(key); + if (propertyKey in object) definePropertyModule.f(object, propertyKey, createPropertyDescriptor(0, value)); + else object[propertyKey] = value; +}; + + +/***/ }), + +/***/ 654: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var $ = __webpack_require__(2109); +var createIteratorConstructor = __webpack_require__(4994); +var getPrototypeOf = __webpack_require__(9518); +var setPrototypeOf = __webpack_require__(7674); +var setToStringTag = __webpack_require__(8003); +var createNonEnumerableProperty = __webpack_require__(8880); +var redefine = __webpack_require__(1320); +var wellKnownSymbol = __webpack_require__(5112); +var IS_PURE = __webpack_require__(1913); +var Iterators = __webpack_require__(7497); +var IteratorsCore = __webpack_require__(3383); + +var IteratorPrototype = IteratorsCore.IteratorPrototype; +var BUGGY_SAFARI_ITERATORS = IteratorsCore.BUGGY_SAFARI_ITERATORS; +var ITERATOR = wellKnownSymbol('iterator'); +var KEYS = 'keys'; +var VALUES = 'values'; +var ENTRIES = 'entries'; + +var returnThis = function () { return this; }; + +module.exports = function (Iterable, NAME, IteratorConstructor, next, DEFAULT, IS_SET, FORCED) { + createIteratorConstructor(IteratorConstructor, NAME, next); + + var getIterationMethod = function (KIND) { + if (KIND === DEFAULT && defaultIterator) return defaultIterator; + if (!BUGGY_SAFARI_ITERATORS && KIND in IterablePrototype) return IterablePrototype[KIND]; + switch (KIND) { + case KEYS: return function keys() { return new IteratorConstructor(this, KIND); }; + case VALUES: return function values() { return new IteratorConstructor(this, KIND); }; + case ENTRIES: return function entries() { return new IteratorConstructor(this, KIND); }; + } return function () { return new IteratorConstructor(this); }; + }; + + var TO_STRING_TAG = NAME + ' Iterator'; + var INCORRECT_VALUES_NAME = false; + var IterablePrototype = Iterable.prototype; + var nativeIterator = IterablePrototype[ITERATOR] + || IterablePrototype['@@iterator'] + || DEFAULT && IterablePrototype[DEFAULT]; + var defaultIterator = !BUGGY_SAFARI_ITERATORS && nativeIterator || getIterationMethod(DEFAULT); + var anyNativeIterator = NAME == 'Array' ? IterablePrototype.entries || nativeIterator : nativeIterator; + var CurrentIteratorPrototype, methods, KEY; + + // fix native + if (anyNativeIterator) { + CurrentIteratorPrototype = getPrototypeOf(anyNativeIterator.call(new Iterable())); + if (IteratorPrototype !== Object.prototype && CurrentIteratorPrototype.next) { + if (!IS_PURE && getPrototypeOf(CurrentIteratorPrototype) !== IteratorPrototype) { + if (setPrototypeOf) { + setPrototypeOf(CurrentIteratorPrototype, IteratorPrototype); + } else if (typeof CurrentIteratorPrototype[ITERATOR] != 'function') { + createNonEnumerableProperty(CurrentIteratorPrototype, ITERATOR, returnThis); + } + } + // Set @@toStringTag to native iterators + setToStringTag(CurrentIteratorPrototype, TO_STRING_TAG, true, true); + if (IS_PURE) Iterators[TO_STRING_TAG] = returnThis; + } + } + + // fix Array#{values, @@iterator}.name in V8 / FF + if (DEFAULT == VALUES && nativeIterator && nativeIterator.name !== VALUES) { + INCORRECT_VALUES_NAME = true; + defaultIterator = function values() { return nativeIterator.call(this); }; + } + + // define iterator + if ((!IS_PURE || FORCED) && IterablePrototype[ITERATOR] !== defaultIterator) { + createNonEnumerableProperty(IterablePrototype, ITERATOR, defaultIterator); + } + Iterators[NAME] = defaultIterator; + + // export additional methods + if (DEFAULT) { + methods = { + values: getIterationMethod(VALUES), + keys: IS_SET ? defaultIterator : getIterationMethod(KEYS), + entries: getIterationMethod(ENTRIES) + }; + if (FORCED) for (KEY in methods) { + if (BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME || !(KEY in IterablePrototype)) { + redefine(IterablePrototype, KEY, methods[KEY]); + } + } else $({ target: NAME, proto: true, forced: BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME }, methods); + } + + return methods; +}; + + +/***/ }), + +/***/ 9781: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var fails = __webpack_require__(7293); + +// Detect IE8's incomplete defineProperty implementation +module.exports = !fails(function () { + return Object.defineProperty({}, 1, { get: function () { return 7; } })[1] != 7; +}); + + +/***/ }), + +/***/ 317: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var global = __webpack_require__(7854); +var isObject = __webpack_require__(111); + +var document = global.document; +// typeof document.createElement is 'object' in old IE +var EXISTS = isObject(document) && isObject(document.createElement); + +module.exports = function (it) { + return EXISTS ? document.createElement(it) : {}; +}; + + +/***/ }), + +/***/ 8324: +/***/ (function(module) { + +// iterable DOM collections +// flag - `iterable` interface - 'entries', 'keys', 'values', 'forEach' methods +module.exports = { + CSSRuleList: 0, + CSSStyleDeclaration: 0, + CSSValueList: 0, + ClientRectList: 0, + DOMRectList: 0, + DOMStringList: 0, + DOMTokenList: 1, + DataTransferItemList: 0, + FileList: 0, + HTMLAllCollection: 0, + HTMLCollection: 0, + HTMLFormElement: 0, + HTMLSelectElement: 0, + MediaList: 0, + MimeTypeArray: 0, + NamedNodeMap: 0, + NodeList: 1, + PaintRequestList: 0, + Plugin: 0, + PluginArray: 0, + SVGLengthList: 0, + SVGNumberList: 0, + SVGPathSegList: 0, + SVGPointList: 0, + SVGStringList: 0, + SVGTransformList: 0, + SourceBufferList: 0, + StyleSheetList: 0, + TextTrackCueList: 0, + TextTrackList: 0, + TouchList: 0 +}; + + +/***/ }), + +/***/ 8113: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var getBuiltIn = __webpack_require__(5005); + +module.exports = getBuiltIn('navigator', 'userAgent') || ''; + + +/***/ }), + +/***/ 7392: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var global = __webpack_require__(7854); +var userAgent = __webpack_require__(8113); + +var process = global.process; +var versions = process && process.versions; +var v8 = versions && versions.v8; +var match, version; + +if (v8) { + match = v8.split('.'); + version = match[0] + match[1]; +} else if (userAgent) { + match = userAgent.match(/Edge\/(\d+)/); + if (!match || match[1] >= 74) { + match = userAgent.match(/Chrome\/(\d+)/); + if (match) version = match[1]; + } +} + +module.exports = version && +version; + + +/***/ }), + +/***/ 748: +/***/ (function(module) { + +// IE8- don't enum bug keys +module.exports = [ + 'constructor', + 'hasOwnProperty', + 'isPrototypeOf', + 'propertyIsEnumerable', + 'toLocaleString', + 'toString', + 'valueOf' +]; + + +/***/ }), + +/***/ 2109: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var global = __webpack_require__(7854); +var getOwnPropertyDescriptor = __webpack_require__(1236).f; +var createNonEnumerableProperty = __webpack_require__(8880); +var redefine = __webpack_require__(1320); +var setGlobal = __webpack_require__(3505); +var copyConstructorProperties = __webpack_require__(9920); +var isForced = __webpack_require__(4705); + +/* + options.target - name of the target object + options.global - target is the global object + options.stat - export as static methods of target + options.proto - export as prototype methods of target + options.real - real prototype method for the `pure` version + options.forced - export even if the native feature is available + options.bind - bind methods to the target, required for the `pure` version + options.wrap - wrap constructors to preventing global pollution, required for the `pure` version + options.unsafe - use the simple assignment of property instead of delete + defineProperty + options.sham - add a flag to not completely full polyfills + options.enumerable - export as enumerable property + options.noTargetGet - prevent calling a getter on target +*/ +module.exports = function (options, source) { + var TARGET = options.target; + var GLOBAL = options.global; + var STATIC = options.stat; + var FORCED, target, key, targetProperty, sourceProperty, descriptor; + if (GLOBAL) { + target = global; + } else if (STATIC) { + target = global[TARGET] || setGlobal(TARGET, {}); + } else { + target = (global[TARGET] || {}).prototype; + } + if (target) for (key in source) { + sourceProperty = source[key]; + if (options.noTargetGet) { + descriptor = getOwnPropertyDescriptor(target, key); + targetProperty = descriptor && descriptor.value; + } else targetProperty = target[key]; + FORCED = isForced(GLOBAL ? key : TARGET + (STATIC ? '.' : '#') + key, options.forced); + // contained in target + if (!FORCED && targetProperty !== undefined) { + if (typeof sourceProperty === typeof targetProperty) continue; + copyConstructorProperties(sourceProperty, targetProperty); + } + // add a flag to not completely full polyfills + if (options.sham || (targetProperty && targetProperty.sham)) { + createNonEnumerableProperty(sourceProperty, 'sham', true); + } + // extend global + redefine(target, key, sourceProperty, options); + } +}; + + +/***/ }), + +/***/ 7293: +/***/ (function(module) { + +module.exports = function (exec) { + try { + return !!exec(); + } catch (error) { + return true; + } +}; + + +/***/ }), + +/***/ 7007: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +// TODO: Remove from `core-js@4` since it's moved to entry points +__webpack_require__(4916); +var redefine = __webpack_require__(1320); +var fails = __webpack_require__(7293); +var wellKnownSymbol = __webpack_require__(5112); +var regexpExec = __webpack_require__(2261); +var createNonEnumerableProperty = __webpack_require__(8880); + +var SPECIES = wellKnownSymbol('species'); + +var REPLACE_SUPPORTS_NAMED_GROUPS = !fails(function () { + // #replace needs built-in support for named groups. + // #match works fine because it just return the exec results, even if it has + // a "grops" property. + var re = /./; + re.exec = function () { + var result = []; + result.groups = { a: '7' }; + return result; + }; + return ''.replace(re, '$') !== '7'; +}); + +// IE <= 11 replaces $0 with the whole match, as if it was $& +// https://stackoverflow.com/questions/6024666/getting-ie-to-replace-a-regex-with-the-literal-string-0 +var REPLACE_KEEPS_$0 = (function () { + return 'a'.replace(/./, '$0') === '$0'; +})(); + +var REPLACE = wellKnownSymbol('replace'); +// Safari <= 13.0.3(?) substitutes nth capture where n>m with an empty string +var REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE = (function () { + if (/./[REPLACE]) { + return /./[REPLACE]('a', '$0') === ''; + } + return false; +})(); + +// Chrome 51 has a buggy "split" implementation when RegExp#exec !== nativeExec +// Weex JS has frozen built-in prototypes, so use try / catch wrapper +var SPLIT_WORKS_WITH_OVERWRITTEN_EXEC = !fails(function () { + // eslint-disable-next-line regexp/no-empty-group -- required for testing + var re = /(?:)/; + var originalExec = re.exec; + re.exec = function () { return originalExec.apply(this, arguments); }; + var result = 'ab'.split(re); + return result.length !== 2 || result[0] !== 'a' || result[1] !== 'b'; +}); + +module.exports = function (KEY, length, exec, sham) { + var SYMBOL = wellKnownSymbol(KEY); + + var DELEGATES_TO_SYMBOL = !fails(function () { + // String methods call symbol-named RegEp methods + var O = {}; + O[SYMBOL] = function () { return 7; }; + return ''[KEY](O) != 7; + }); + + var DELEGATES_TO_EXEC = DELEGATES_TO_SYMBOL && !fails(function () { + // Symbol-named RegExp methods call .exec + var execCalled = false; + var re = /a/; + + if (KEY === 'split') { + // We can't use real regex here since it causes deoptimization + // and serious performance degradation in V8 + // https://github.com/zloirock/core-js/issues/306 + re = {}; + // RegExp[@@split] doesn't call the regex's exec method, but first creates + // a new one. We need to return the patched regex when creating the new one. + re.constructor = {}; + re.constructor[SPECIES] = function () { return re; }; + re.flags = ''; + re[SYMBOL] = /./[SYMBOL]; + } + + re.exec = function () { execCalled = true; return null; }; + + re[SYMBOL](''); + return !execCalled; + }); + + if ( + !DELEGATES_TO_SYMBOL || + !DELEGATES_TO_EXEC || + (KEY === 'replace' && !( + REPLACE_SUPPORTS_NAMED_GROUPS && + REPLACE_KEEPS_$0 && + !REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE + )) || + (KEY === 'split' && !SPLIT_WORKS_WITH_OVERWRITTEN_EXEC) + ) { + var nativeRegExpMethod = /./[SYMBOL]; + var methods = exec(SYMBOL, ''[KEY], function (nativeMethod, regexp, str, arg2, forceStringMethod) { + if (regexp.exec === regexpExec) { + if (DELEGATES_TO_SYMBOL && !forceStringMethod) { + // The native String method already delegates to @@method (this + // polyfilled function), leasing to infinite recursion. + // We avoid it by directly calling the native @@method method. + return { done: true, value: nativeRegExpMethod.call(regexp, str, arg2) }; + } + return { done: true, value: nativeMethod.call(str, regexp, arg2) }; + } + return { done: false }; + }, { + REPLACE_KEEPS_$0: REPLACE_KEEPS_$0, + REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE: REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE + }); + var stringMethod = methods[0]; + var regexMethod = methods[1]; + + redefine(String.prototype, KEY, stringMethod); + redefine(RegExp.prototype, SYMBOL, length == 2 + // 21.2.5.8 RegExp.prototype[@@replace](string, replaceValue) + // 21.2.5.11 RegExp.prototype[@@split](string, limit) + ? function (string, arg) { return regexMethod.call(string, this, arg); } + // 21.2.5.6 RegExp.prototype[@@match](string) + // 21.2.5.9 RegExp.prototype[@@search](string) + : function (string) { return regexMethod.call(string, this); } + ); + } + + if (sham) createNonEnumerableProperty(RegExp.prototype[SYMBOL], 'sham', true); +}; + + +/***/ }), + +/***/ 9974: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var aFunction = __webpack_require__(3099); + +// optional / simple context binding +module.exports = function (fn, that, length) { + aFunction(fn); + if (that === undefined) return fn; + switch (length) { + case 0: return function () { + return fn.call(that); + }; + case 1: return function (a) { + return fn.call(that, a); + }; + case 2: return function (a, b) { + return fn.call(that, a, b); + }; + case 3: return function (a, b, c) { + return fn.call(that, a, b, c); + }; + } + return function (/* ...args */) { + return fn.apply(that, arguments); + }; +}; + + +/***/ }), + +/***/ 5005: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var path = __webpack_require__(857); +var global = __webpack_require__(7854); + +var aFunction = function (variable) { + return typeof variable == 'function' ? variable : undefined; +}; + +module.exports = function (namespace, method) { + return arguments.length < 2 ? aFunction(path[namespace]) || aFunction(global[namespace]) + : path[namespace] && path[namespace][method] || global[namespace] && global[namespace][method]; +}; + + +/***/ }), + +/***/ 1246: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var classof = __webpack_require__(648); +var Iterators = __webpack_require__(7497); +var wellKnownSymbol = __webpack_require__(5112); + +var ITERATOR = wellKnownSymbol('iterator'); + +module.exports = function (it) { + if (it != undefined) return it[ITERATOR] + || it['@@iterator'] + || Iterators[classof(it)]; +}; + + +/***/ }), + +/***/ 8554: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var anObject = __webpack_require__(9670); +var getIteratorMethod = __webpack_require__(1246); + +module.exports = function (it) { + var iteratorMethod = getIteratorMethod(it); + if (typeof iteratorMethod != 'function') { + throw TypeError(String(it) + ' is not iterable'); + } return anObject(iteratorMethod.call(it)); +}; + + +/***/ }), + +/***/ 647: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var toObject = __webpack_require__(7908); + +var floor = Math.floor; +var replace = ''.replace; +var SUBSTITUTION_SYMBOLS = /\$([$&'`]|\d\d?|<[^>]*>)/g; +var SUBSTITUTION_SYMBOLS_NO_NAMED = /\$([$&'`]|\d\d?)/g; + +// https://tc39.es/ecma262/#sec-getsubstitution +module.exports = function (matched, str, position, captures, namedCaptures, replacement) { + var tailPos = position + matched.length; + var m = captures.length; + var symbols = SUBSTITUTION_SYMBOLS_NO_NAMED; + if (namedCaptures !== undefined) { + namedCaptures = toObject(namedCaptures); + symbols = SUBSTITUTION_SYMBOLS; + } + return replace.call(replacement, symbols, function (match, ch) { + var capture; + switch (ch.charAt(0)) { + case '$': return '$'; + case '&': return matched; + case '`': return str.slice(0, position); + case "'": return str.slice(tailPos); + case '<': + capture = namedCaptures[ch.slice(1, -1)]; + break; + default: // \d\d? + var n = +ch; + if (n === 0) return match; + if (n > m) { + var f = floor(n / 10); + if (f === 0) return match; + if (f <= m) return captures[f - 1] === undefined ? ch.charAt(1) : captures[f - 1] + ch.charAt(1); + return match; + } + capture = captures[n - 1]; + } + return capture === undefined ? '' : capture; + }); +}; + + +/***/ }), + +/***/ 7854: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var check = function (it) { + return it && it.Math == Math && it; +}; + +// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028 +module.exports = + /* global globalThis -- safe */ + check(typeof globalThis == 'object' && globalThis) || + check(typeof window == 'object' && window) || + check(typeof self == 'object' && self) || + check(typeof __webpack_require__.g == 'object' && __webpack_require__.g) || + // eslint-disable-next-line no-new-func -- fallback + (function () { return this; })() || Function('return this')(); + + +/***/ }), + +/***/ 6656: +/***/ (function(module) { + +var hasOwnProperty = {}.hasOwnProperty; + +module.exports = function (it, key) { + return hasOwnProperty.call(it, key); +}; + + +/***/ }), + +/***/ 3501: +/***/ (function(module) { + +module.exports = {}; + + +/***/ }), + +/***/ 490: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var getBuiltIn = __webpack_require__(5005); + +module.exports = getBuiltIn('document', 'documentElement'); + + +/***/ }), + +/***/ 4664: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var DESCRIPTORS = __webpack_require__(9781); +var fails = __webpack_require__(7293); +var createElement = __webpack_require__(317); + +// Thank's IE8 for his funny defineProperty +module.exports = !DESCRIPTORS && !fails(function () { + return Object.defineProperty(createElement('div'), 'a', { + get: function () { return 7; } + }).a != 7; +}); + + +/***/ }), + +/***/ 1179: +/***/ (function(module) { + +// IEEE754 conversions based on https://github.com/feross/ieee754 +var abs = Math.abs; +var pow = Math.pow; +var floor = Math.floor; +var log = Math.log; +var LN2 = Math.LN2; + +var pack = function (number, mantissaLength, bytes) { + var buffer = new Array(bytes); + var exponentLength = bytes * 8 - mantissaLength - 1; + var eMax = (1 << exponentLength) - 1; + var eBias = eMax >> 1; + var rt = mantissaLength === 23 ? pow(2, -24) - pow(2, -77) : 0; + var sign = number < 0 || number === 0 && 1 / number < 0 ? 1 : 0; + var index = 0; + var exponent, mantissa, c; + number = abs(number); + // eslint-disable-next-line no-self-compare -- NaN check + if (number != number || number === Infinity) { + // eslint-disable-next-line no-self-compare -- NaN check + mantissa = number != number ? 1 : 0; + exponent = eMax; + } else { + exponent = floor(log(number) / LN2); + if (number * (c = pow(2, -exponent)) < 1) { + exponent--; + c *= 2; + } + if (exponent + eBias >= 1) { + number += rt / c; + } else { + number += rt * pow(2, 1 - eBias); + } + if (number * c >= 2) { + exponent++; + c /= 2; + } + if (exponent + eBias >= eMax) { + mantissa = 0; + exponent = eMax; + } else if (exponent + eBias >= 1) { + mantissa = (number * c - 1) * pow(2, mantissaLength); + exponent = exponent + eBias; + } else { + mantissa = number * pow(2, eBias - 1) * pow(2, mantissaLength); + exponent = 0; + } + } + for (; mantissaLength >= 8; buffer[index++] = mantissa & 255, mantissa /= 256, mantissaLength -= 8); + exponent = exponent << mantissaLength | mantissa; + exponentLength += mantissaLength; + for (; exponentLength > 0; buffer[index++] = exponent & 255, exponent /= 256, exponentLength -= 8); + buffer[--index] |= sign * 128; + return buffer; +}; + +var unpack = function (buffer, mantissaLength) { + var bytes = buffer.length; + var exponentLength = bytes * 8 - mantissaLength - 1; + var eMax = (1 << exponentLength) - 1; + var eBias = eMax >> 1; + var nBits = exponentLength - 7; + var index = bytes - 1; + var sign = buffer[index--]; + var exponent = sign & 127; + var mantissa; + sign >>= 7; + for (; nBits > 0; exponent = exponent * 256 + buffer[index], index--, nBits -= 8); + mantissa = exponent & (1 << -nBits) - 1; + exponent >>= -nBits; + nBits += mantissaLength; + for (; nBits > 0; mantissa = mantissa * 256 + buffer[index], index--, nBits -= 8); + if (exponent === 0) { + exponent = 1 - eBias; + } else if (exponent === eMax) { + return mantissa ? NaN : sign ? -Infinity : Infinity; + } else { + mantissa = mantissa + pow(2, mantissaLength); + exponent = exponent - eBias; + } return (sign ? -1 : 1) * mantissa * pow(2, exponent - mantissaLength); +}; + +module.exports = { + pack: pack, + unpack: unpack +}; + + +/***/ }), + +/***/ 8361: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var fails = __webpack_require__(7293); +var classof = __webpack_require__(4326); + +var split = ''.split; + +// fallback for non-array-like ES3 and non-enumerable old V8 strings +module.exports = fails(function () { + // throws an error in rhino, see https://github.com/mozilla/rhino/issues/346 + // eslint-disable-next-line no-prototype-builtins -- safe + return !Object('z').propertyIsEnumerable(0); +}) ? function (it) { + return classof(it) == 'String' ? split.call(it, '') : Object(it); +} : Object; + + +/***/ }), + +/***/ 9587: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var isObject = __webpack_require__(111); +var setPrototypeOf = __webpack_require__(7674); + +// makes subclassing work correct for wrapped built-ins +module.exports = function ($this, dummy, Wrapper) { + var NewTarget, NewTargetPrototype; + if ( + // it can work only with native `setPrototypeOf` + setPrototypeOf && + // we haven't completely correct pre-ES6 way for getting `new.target`, so use this + typeof (NewTarget = dummy.constructor) == 'function' && + NewTarget !== Wrapper && + isObject(NewTargetPrototype = NewTarget.prototype) && + NewTargetPrototype !== Wrapper.prototype + ) setPrototypeOf($this, NewTargetPrototype); + return $this; +}; + + +/***/ }), + +/***/ 2788: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var store = __webpack_require__(5465); + +var functionToString = Function.toString; + +// this helper broken in `3.4.1-3.4.4`, so we can't use `shared` helper +if (typeof store.inspectSource != 'function') { + store.inspectSource = function (it) { + return functionToString.call(it); + }; +} + +module.exports = store.inspectSource; + + +/***/ }), + +/***/ 9909: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var NATIVE_WEAK_MAP = __webpack_require__(8536); +var global = __webpack_require__(7854); +var isObject = __webpack_require__(111); +var createNonEnumerableProperty = __webpack_require__(8880); +var objectHas = __webpack_require__(6656); +var shared = __webpack_require__(5465); +var sharedKey = __webpack_require__(6200); +var hiddenKeys = __webpack_require__(3501); + +var WeakMap = global.WeakMap; +var set, get, has; + +var enforce = function (it) { + return has(it) ? get(it) : set(it, {}); +}; + +var getterFor = function (TYPE) { + return function (it) { + var state; + if (!isObject(it) || (state = get(it)).type !== TYPE) { + throw TypeError('Incompatible receiver, ' + TYPE + ' required'); + } return state; + }; +}; + +if (NATIVE_WEAK_MAP) { + var store = shared.state || (shared.state = new WeakMap()); + var wmget = store.get; + var wmhas = store.has; + var wmset = store.set; + set = function (it, metadata) { + metadata.facade = it; + wmset.call(store, it, metadata); + return metadata; + }; + get = function (it) { + return wmget.call(store, it) || {}; + }; + has = function (it) { + return wmhas.call(store, it); + }; +} else { + var STATE = sharedKey('state'); + hiddenKeys[STATE] = true; + set = function (it, metadata) { + metadata.facade = it; + createNonEnumerableProperty(it, STATE, metadata); + return metadata; + }; + get = function (it) { + return objectHas(it, STATE) ? it[STATE] : {}; + }; + has = function (it) { + return objectHas(it, STATE); + }; +} + +module.exports = { + set: set, + get: get, + has: has, + enforce: enforce, + getterFor: getterFor +}; + + +/***/ }), + +/***/ 7659: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var wellKnownSymbol = __webpack_require__(5112); +var Iterators = __webpack_require__(7497); + +var ITERATOR = wellKnownSymbol('iterator'); +var ArrayPrototype = Array.prototype; + +// check on default Array iterator +module.exports = function (it) { + return it !== undefined && (Iterators.Array === it || ArrayPrototype[ITERATOR] === it); +}; + + +/***/ }), + +/***/ 3157: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var classof = __webpack_require__(4326); + +// `IsArray` abstract operation +// https://tc39.es/ecma262/#sec-isarray +module.exports = Array.isArray || function isArray(arg) { + return classof(arg) == 'Array'; +}; + + +/***/ }), + +/***/ 4705: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var fails = __webpack_require__(7293); + +var replacement = /#|\.prototype\./; + +var isForced = function (feature, detection) { + var value = data[normalize(feature)]; + return value == POLYFILL ? true + : value == NATIVE ? false + : typeof detection == 'function' ? fails(detection) + : !!detection; +}; + +var normalize = isForced.normalize = function (string) { + return String(string).replace(replacement, '.').toLowerCase(); +}; + +var data = isForced.data = {}; +var NATIVE = isForced.NATIVE = 'N'; +var POLYFILL = isForced.POLYFILL = 'P'; + +module.exports = isForced; + + +/***/ }), + +/***/ 111: +/***/ (function(module) { + +module.exports = function (it) { + return typeof it === 'object' ? it !== null : typeof it === 'function'; +}; + + +/***/ }), + +/***/ 1913: +/***/ (function(module) { + +module.exports = false; + + +/***/ }), + +/***/ 7850: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var isObject = __webpack_require__(111); +var classof = __webpack_require__(4326); +var wellKnownSymbol = __webpack_require__(5112); + +var MATCH = wellKnownSymbol('match'); + +// `IsRegExp` abstract operation +// https://tc39.es/ecma262/#sec-isregexp +module.exports = function (it) { + var isRegExp; + return isObject(it) && ((isRegExp = it[MATCH]) !== undefined ? !!isRegExp : classof(it) == 'RegExp'); +}; + + +/***/ }), + +/***/ 9212: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var anObject = __webpack_require__(9670); + +module.exports = function (iterator) { + var returnMethod = iterator['return']; + if (returnMethod !== undefined) { + return anObject(returnMethod.call(iterator)).value; + } +}; + + +/***/ }), + +/***/ 3383: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var fails = __webpack_require__(7293); +var getPrototypeOf = __webpack_require__(9518); +var createNonEnumerableProperty = __webpack_require__(8880); +var has = __webpack_require__(6656); +var wellKnownSymbol = __webpack_require__(5112); +var IS_PURE = __webpack_require__(1913); + +var ITERATOR = wellKnownSymbol('iterator'); +var BUGGY_SAFARI_ITERATORS = false; + +var returnThis = function () { return this; }; + +// `%IteratorPrototype%` object +// https://tc39.es/ecma262/#sec-%iteratorprototype%-object +var IteratorPrototype, PrototypeOfArrayIteratorPrototype, arrayIterator; + +if ([].keys) { + arrayIterator = [].keys(); + // Safari 8 has buggy iterators w/o `next` + if (!('next' in arrayIterator)) BUGGY_SAFARI_ITERATORS = true; + else { + PrototypeOfArrayIteratorPrototype = getPrototypeOf(getPrototypeOf(arrayIterator)); + if (PrototypeOfArrayIteratorPrototype !== Object.prototype) IteratorPrototype = PrototypeOfArrayIteratorPrototype; + } +} + +var NEW_ITERATOR_PROTOTYPE = IteratorPrototype == undefined || fails(function () { + var test = {}; + // FF44- legacy iterators case + return IteratorPrototype[ITERATOR].call(test) !== test; +}); + +if (NEW_ITERATOR_PROTOTYPE) IteratorPrototype = {}; + +// 25.1.2.1.1 %IteratorPrototype%[@@iterator]() +if ((!IS_PURE || NEW_ITERATOR_PROTOTYPE) && !has(IteratorPrototype, ITERATOR)) { + createNonEnumerableProperty(IteratorPrototype, ITERATOR, returnThis); +} + +module.exports = { + IteratorPrototype: IteratorPrototype, + BUGGY_SAFARI_ITERATORS: BUGGY_SAFARI_ITERATORS +}; + + +/***/ }), + +/***/ 7497: +/***/ (function(module) { + +module.exports = {}; + + +/***/ }), + +/***/ 133: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var fails = __webpack_require__(7293); + +module.exports = !!Object.getOwnPropertySymbols && !fails(function () { + // Chrome 38 Symbol has incorrect toString conversion + /* global Symbol -- required for testing */ + return !String(Symbol()); +}); + + +/***/ }), + +/***/ 590: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var fails = __webpack_require__(7293); +var wellKnownSymbol = __webpack_require__(5112); +var IS_PURE = __webpack_require__(1913); + +var ITERATOR = wellKnownSymbol('iterator'); + +module.exports = !fails(function () { + var url = new URL('b?a=1&b=2&c=3', 'http://a'); + var searchParams = url.searchParams; + var result = ''; + url.pathname = 'c%20d'; + searchParams.forEach(function (value, key) { + searchParams['delete']('b'); + result += key + value; + }); + return (IS_PURE && !url.toJSON) + || !searchParams.sort + || url.href !== 'http://a/c%20d?a=1&c=3' + || searchParams.get('c') !== '3' + || String(new URLSearchParams('?a=1')) !== 'a=1' + || !searchParams[ITERATOR] + // throws in Edge + || new URL('https://a@b').username !== 'a' + || new URLSearchParams(new URLSearchParams('a=b')).get('a') !== 'b' + // not punycoded in Edge + || new URL('http://тест').host !== 'xn--e1aybc' + // not escaped in Chrome 62- + || new URL('http://a#б').hash !== '#%D0%B1' + // fails in Chrome 66- + || result !== 'a1c3' + // throws in Safari + || new URL('http://x', undefined).host !== 'x'; +}); + + +/***/ }), + +/***/ 8536: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var global = __webpack_require__(7854); +var inspectSource = __webpack_require__(2788); + +var WeakMap = global.WeakMap; + +module.exports = typeof WeakMap === 'function' && /native code/.test(inspectSource(WeakMap)); + + +/***/ }), + +/***/ 1574: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var DESCRIPTORS = __webpack_require__(9781); +var fails = __webpack_require__(7293); +var objectKeys = __webpack_require__(1956); +var getOwnPropertySymbolsModule = __webpack_require__(5181); +var propertyIsEnumerableModule = __webpack_require__(5296); +var toObject = __webpack_require__(7908); +var IndexedObject = __webpack_require__(8361); + +var nativeAssign = Object.assign; +var defineProperty = Object.defineProperty; + +// `Object.assign` method +// https://tc39.es/ecma262/#sec-object.assign +module.exports = !nativeAssign || fails(function () { + // should have correct order of operations (Edge bug) + if (DESCRIPTORS && nativeAssign({ b: 1 }, nativeAssign(defineProperty({}, 'a', { + enumerable: true, + get: function () { + defineProperty(this, 'b', { + value: 3, + enumerable: false + }); + } + }), { b: 2 })).b !== 1) return true; + // should work with symbols and should have deterministic property order (V8 bug) + var A = {}; + var B = {}; + /* global Symbol -- required for testing */ + var symbol = Symbol(); + var alphabet = 'abcdefghijklmnopqrst'; + A[symbol] = 7; + alphabet.split('').forEach(function (chr) { B[chr] = chr; }); + return nativeAssign({}, A)[symbol] != 7 || objectKeys(nativeAssign({}, B)).join('') != alphabet; +}) ? function assign(target, source) { // eslint-disable-line no-unused-vars -- required for `.length` + var T = toObject(target); + var argumentsLength = arguments.length; + var index = 1; + var getOwnPropertySymbols = getOwnPropertySymbolsModule.f; + var propertyIsEnumerable = propertyIsEnumerableModule.f; + while (argumentsLength > index) { + var S = IndexedObject(arguments[index++]); + var keys = getOwnPropertySymbols ? objectKeys(S).concat(getOwnPropertySymbols(S)) : objectKeys(S); + var length = keys.length; + var j = 0; + var key; + while (length > j) { + key = keys[j++]; + if (!DESCRIPTORS || propertyIsEnumerable.call(S, key)) T[key] = S[key]; + } + } return T; +} : nativeAssign; + + +/***/ }), + +/***/ 30: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var anObject = __webpack_require__(9670); +var defineProperties = __webpack_require__(6048); +var enumBugKeys = __webpack_require__(748); +var hiddenKeys = __webpack_require__(3501); +var html = __webpack_require__(490); +var documentCreateElement = __webpack_require__(317); +var sharedKey = __webpack_require__(6200); + +var GT = '>'; +var LT = '<'; +var PROTOTYPE = 'prototype'; +var SCRIPT = 'script'; +var IE_PROTO = sharedKey('IE_PROTO'); + +var EmptyConstructor = function () { /* empty */ }; + +var scriptTag = function (content) { + return LT + SCRIPT + GT + content + LT + '/' + SCRIPT + GT; +}; + +// Create object with fake `null` prototype: use ActiveX Object with cleared prototype +var NullProtoObjectViaActiveX = function (activeXDocument) { + activeXDocument.write(scriptTag('')); + activeXDocument.close(); + var temp = activeXDocument.parentWindow.Object; + activeXDocument = null; // avoid memory leak + return temp; +}; + +// Create object with fake `null` prototype: use iframe Object with cleared prototype +var NullProtoObjectViaIFrame = function () { + // Thrash, waste and sodomy: IE GC bug + var iframe = documentCreateElement('iframe'); + var JS = 'java' + SCRIPT + ':'; + var iframeDocument; + iframe.style.display = 'none'; + html.appendChild(iframe); + // https://github.com/zloirock/core-js/issues/475 + iframe.src = String(JS); + iframeDocument = iframe.contentWindow.document; + iframeDocument.open(); + iframeDocument.write(scriptTag('document.F=Object')); + iframeDocument.close(); + return iframeDocument.F; +}; + +// Check for document.domain and active x support +// No need to use active x approach when document.domain is not set +// see https://github.com/es-shims/es5-shim/issues/150 +// variation of https://github.com/kitcambridge/es5-shim/commit/4f738ac066346 +// avoid IE GC bug +var activeXDocument; +var NullProtoObject = function () { + try { + /* global ActiveXObject -- old IE */ + activeXDocument = document.domain && new ActiveXObject('htmlfile'); + } catch (error) { /* ignore */ } + NullProtoObject = activeXDocument ? NullProtoObjectViaActiveX(activeXDocument) : NullProtoObjectViaIFrame(); + var length = enumBugKeys.length; + while (length--) delete NullProtoObject[PROTOTYPE][enumBugKeys[length]]; + return NullProtoObject(); +}; + +hiddenKeys[IE_PROTO] = true; + +// `Object.create` method +// https://tc39.es/ecma262/#sec-object.create +module.exports = Object.create || function create(O, Properties) { + var result; + if (O !== null) { + EmptyConstructor[PROTOTYPE] = anObject(O); + result = new EmptyConstructor(); + EmptyConstructor[PROTOTYPE] = null; + // add "__proto__" for Object.getPrototypeOf polyfill + result[IE_PROTO] = O; + } else result = NullProtoObject(); + return Properties === undefined ? result : defineProperties(result, Properties); +}; + + +/***/ }), + +/***/ 6048: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var DESCRIPTORS = __webpack_require__(9781); +var definePropertyModule = __webpack_require__(3070); +var anObject = __webpack_require__(9670); +var objectKeys = __webpack_require__(1956); + +// `Object.defineProperties` method +// https://tc39.es/ecma262/#sec-object.defineproperties +module.exports = DESCRIPTORS ? Object.defineProperties : function defineProperties(O, Properties) { + anObject(O); + var keys = objectKeys(Properties); + var length = keys.length; + var index = 0; + var key; + while (length > index) definePropertyModule.f(O, key = keys[index++], Properties[key]); + return O; +}; + + +/***/ }), + +/***/ 3070: +/***/ (function(__unused_webpack_module, exports, __webpack_require__) { + +var DESCRIPTORS = __webpack_require__(9781); +var IE8_DOM_DEFINE = __webpack_require__(4664); +var anObject = __webpack_require__(9670); +var toPrimitive = __webpack_require__(7593); + +var nativeDefineProperty = Object.defineProperty; + +// `Object.defineProperty` method +// https://tc39.es/ecma262/#sec-object.defineproperty +exports.f = DESCRIPTORS ? nativeDefineProperty : function defineProperty(O, P, Attributes) { + anObject(O); + P = toPrimitive(P, true); + anObject(Attributes); + if (IE8_DOM_DEFINE) try { + return nativeDefineProperty(O, P, Attributes); + } catch (error) { /* empty */ } + if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported'); + if ('value' in Attributes) O[P] = Attributes.value; + return O; +}; + + +/***/ }), + +/***/ 1236: +/***/ (function(__unused_webpack_module, exports, __webpack_require__) { + +var DESCRIPTORS = __webpack_require__(9781); +var propertyIsEnumerableModule = __webpack_require__(5296); +var createPropertyDescriptor = __webpack_require__(9114); +var toIndexedObject = __webpack_require__(5656); +var toPrimitive = __webpack_require__(7593); +var has = __webpack_require__(6656); +var IE8_DOM_DEFINE = __webpack_require__(4664); + +var nativeGetOwnPropertyDescriptor = Object.getOwnPropertyDescriptor; + +// `Object.getOwnPropertyDescriptor` method +// https://tc39.es/ecma262/#sec-object.getownpropertydescriptor +exports.f = DESCRIPTORS ? nativeGetOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) { + O = toIndexedObject(O); + P = toPrimitive(P, true); + if (IE8_DOM_DEFINE) try { + return nativeGetOwnPropertyDescriptor(O, P); + } catch (error) { /* empty */ } + if (has(O, P)) return createPropertyDescriptor(!propertyIsEnumerableModule.f.call(O, P), O[P]); +}; + + +/***/ }), + +/***/ 8006: +/***/ (function(__unused_webpack_module, exports, __webpack_require__) { + +var internalObjectKeys = __webpack_require__(6324); +var enumBugKeys = __webpack_require__(748); + +var hiddenKeys = enumBugKeys.concat('length', 'prototype'); + +// `Object.getOwnPropertyNames` method +// https://tc39.es/ecma262/#sec-object.getownpropertynames +exports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) { + return internalObjectKeys(O, hiddenKeys); +}; + + +/***/ }), + +/***/ 5181: +/***/ (function(__unused_webpack_module, exports) { + +exports.f = Object.getOwnPropertySymbols; + + +/***/ }), + +/***/ 9518: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var has = __webpack_require__(6656); +var toObject = __webpack_require__(7908); +var sharedKey = __webpack_require__(6200); +var CORRECT_PROTOTYPE_GETTER = __webpack_require__(8544); + +var IE_PROTO = sharedKey('IE_PROTO'); +var ObjectPrototype = Object.prototype; + +// `Object.getPrototypeOf` method +// https://tc39.es/ecma262/#sec-object.getprototypeof +module.exports = CORRECT_PROTOTYPE_GETTER ? Object.getPrototypeOf : function (O) { + O = toObject(O); + if (has(O, IE_PROTO)) return O[IE_PROTO]; + if (typeof O.constructor == 'function' && O instanceof O.constructor) { + return O.constructor.prototype; + } return O instanceof Object ? ObjectPrototype : null; +}; + + +/***/ }), + +/***/ 6324: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var has = __webpack_require__(6656); +var toIndexedObject = __webpack_require__(5656); +var indexOf = __webpack_require__(1318).indexOf; +var hiddenKeys = __webpack_require__(3501); + +module.exports = function (object, names) { + var O = toIndexedObject(object); + var i = 0; + var result = []; + var key; + for (key in O) !has(hiddenKeys, key) && has(O, key) && result.push(key); + // Don't enum bug & hidden keys + while (names.length > i) if (has(O, key = names[i++])) { + ~indexOf(result, key) || result.push(key); + } + return result; +}; + + +/***/ }), + +/***/ 1956: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var internalObjectKeys = __webpack_require__(6324); +var enumBugKeys = __webpack_require__(748); + +// `Object.keys` method +// https://tc39.es/ecma262/#sec-object.keys +module.exports = Object.keys || function keys(O) { + return internalObjectKeys(O, enumBugKeys); +}; + + +/***/ }), + +/***/ 5296: +/***/ (function(__unused_webpack_module, exports) { + +"use strict"; + +var nativePropertyIsEnumerable = {}.propertyIsEnumerable; +var getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor; + +// Nashorn ~ JDK8 bug +var NASHORN_BUG = getOwnPropertyDescriptor && !nativePropertyIsEnumerable.call({ 1: 2 }, 1); + +// `Object.prototype.propertyIsEnumerable` method implementation +// https://tc39.es/ecma262/#sec-object.prototype.propertyisenumerable +exports.f = NASHORN_BUG ? function propertyIsEnumerable(V) { + var descriptor = getOwnPropertyDescriptor(this, V); + return !!descriptor && descriptor.enumerable; +} : nativePropertyIsEnumerable; + + +/***/ }), + +/***/ 7674: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +/* eslint-disable no-proto -- safe */ +var anObject = __webpack_require__(9670); +var aPossiblePrototype = __webpack_require__(6077); + +// `Object.setPrototypeOf` method +// https://tc39.es/ecma262/#sec-object.setprototypeof +// Works with __proto__ only. Old v8 can't work with null proto objects. +module.exports = Object.setPrototypeOf || ('__proto__' in {} ? function () { + var CORRECT_SETTER = false; + var test = {}; + var setter; + try { + setter = Object.getOwnPropertyDescriptor(Object.prototype, '__proto__').set; + setter.call(test, []); + CORRECT_SETTER = test instanceof Array; + } catch (error) { /* empty */ } + return function setPrototypeOf(O, proto) { + anObject(O); + aPossiblePrototype(proto); + if (CORRECT_SETTER) setter.call(O, proto); + else O.__proto__ = proto; + return O; + }; +}() : undefined); + + +/***/ }), + +/***/ 288: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var TO_STRING_TAG_SUPPORT = __webpack_require__(1694); +var classof = __webpack_require__(648); + +// `Object.prototype.toString` method implementation +// https://tc39.es/ecma262/#sec-object.prototype.tostring +module.exports = TO_STRING_TAG_SUPPORT ? {}.toString : function toString() { + return '[object ' + classof(this) + ']'; +}; + + +/***/ }), + +/***/ 3887: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var getBuiltIn = __webpack_require__(5005); +var getOwnPropertyNamesModule = __webpack_require__(8006); +var getOwnPropertySymbolsModule = __webpack_require__(5181); +var anObject = __webpack_require__(9670); + +// all object keys, includes non-enumerable and symbols +module.exports = getBuiltIn('Reflect', 'ownKeys') || function ownKeys(it) { + var keys = getOwnPropertyNamesModule.f(anObject(it)); + var getOwnPropertySymbols = getOwnPropertySymbolsModule.f; + return getOwnPropertySymbols ? keys.concat(getOwnPropertySymbols(it)) : keys; +}; + + +/***/ }), + +/***/ 857: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var global = __webpack_require__(7854); + +module.exports = global; + + +/***/ }), + +/***/ 2248: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var redefine = __webpack_require__(1320); + +module.exports = function (target, src, options) { + for (var key in src) redefine(target, key, src[key], options); + return target; +}; + + +/***/ }), + +/***/ 1320: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var global = __webpack_require__(7854); +var createNonEnumerableProperty = __webpack_require__(8880); +var has = __webpack_require__(6656); +var setGlobal = __webpack_require__(3505); +var inspectSource = __webpack_require__(2788); +var InternalStateModule = __webpack_require__(9909); + +var getInternalState = InternalStateModule.get; +var enforceInternalState = InternalStateModule.enforce; +var TEMPLATE = String(String).split('String'); + +(module.exports = function (O, key, value, options) { + var unsafe = options ? !!options.unsafe : false; + var simple = options ? !!options.enumerable : false; + var noTargetGet = options ? !!options.noTargetGet : false; + var state; + if (typeof value == 'function') { + if (typeof key == 'string' && !has(value, 'name')) { + createNonEnumerableProperty(value, 'name', key); + } + state = enforceInternalState(value); + if (!state.source) { + state.source = TEMPLATE.join(typeof key == 'string' ? key : ''); + } + } + if (O === global) { + if (simple) O[key] = value; + else setGlobal(key, value); + return; + } else if (!unsafe) { + delete O[key]; + } else if (!noTargetGet && O[key]) { + simple = true; + } + if (simple) O[key] = value; + else createNonEnumerableProperty(O, key, value); +// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative +})(Function.prototype, 'toString', function toString() { + return typeof this == 'function' && getInternalState(this).source || inspectSource(this); +}); + + +/***/ }), + +/***/ 7651: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var classof = __webpack_require__(4326); +var regexpExec = __webpack_require__(2261); + +// `RegExpExec` abstract operation +// https://tc39.es/ecma262/#sec-regexpexec +module.exports = function (R, S) { + var exec = R.exec; + if (typeof exec === 'function') { + var result = exec.call(R, S); + if (typeof result !== 'object') { + throw TypeError('RegExp exec method returned something other than an Object or null'); + } + return result; + } + + if (classof(R) !== 'RegExp') { + throw TypeError('RegExp#exec called on incompatible receiver'); + } + + return regexpExec.call(R, S); +}; + + + +/***/ }), + +/***/ 2261: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var regexpFlags = __webpack_require__(7066); +var stickyHelpers = __webpack_require__(2999); + +var nativeExec = RegExp.prototype.exec; +// This always refers to the native implementation, because the +// String#replace polyfill uses ./fix-regexp-well-known-symbol-logic.js, +// which loads this file before patching the method. +var nativeReplace = String.prototype.replace; + +var patchedExec = nativeExec; + +var UPDATES_LAST_INDEX_WRONG = (function () { + var re1 = /a/; + var re2 = /b*/g; + nativeExec.call(re1, 'a'); + nativeExec.call(re2, 'a'); + return re1.lastIndex !== 0 || re2.lastIndex !== 0; +})(); + +var UNSUPPORTED_Y = stickyHelpers.UNSUPPORTED_Y || stickyHelpers.BROKEN_CARET; + +// nonparticipating capturing group, copied from es5-shim's String#split patch. +// eslint-disable-next-line regexp/no-assertion-capturing-group, regexp/no-empty-group -- required for testing +var NPCG_INCLUDED = /()??/.exec('')[1] !== undefined; + +var PATCH = UPDATES_LAST_INDEX_WRONG || NPCG_INCLUDED || UNSUPPORTED_Y; + +if (PATCH) { + patchedExec = function exec(str) { + var re = this; + var lastIndex, reCopy, match, i; + var sticky = UNSUPPORTED_Y && re.sticky; + var flags = regexpFlags.call(re); + var source = re.source; + var charsAdded = 0; + var strCopy = str; + + if (sticky) { + flags = flags.replace('y', ''); + if (flags.indexOf('g') === -1) { + flags += 'g'; + } + + strCopy = String(str).slice(re.lastIndex); + // Support anchored sticky behavior. + if (re.lastIndex > 0 && (!re.multiline || re.multiline && str[re.lastIndex - 1] !== '\n')) { + source = '(?: ' + source + ')'; + strCopy = ' ' + strCopy; + charsAdded++; + } + // ^(? + rx + ) is needed, in combination with some str slicing, to + // simulate the 'y' flag. + reCopy = new RegExp('^(?:' + source + ')', flags); + } + + if (NPCG_INCLUDED) { + reCopy = new RegExp('^' + source + '$(?!\\s)', flags); + } + if (UPDATES_LAST_INDEX_WRONG) lastIndex = re.lastIndex; + + match = nativeExec.call(sticky ? reCopy : re, strCopy); + + if (sticky) { + if (match) { + match.input = match.input.slice(charsAdded); + match[0] = match[0].slice(charsAdded); + match.index = re.lastIndex; + re.lastIndex += match[0].length; + } else re.lastIndex = 0; + } else if (UPDATES_LAST_INDEX_WRONG && match) { + re.lastIndex = re.global ? match.index + match[0].length : lastIndex; + } + if (NPCG_INCLUDED && match && match.length > 1) { + // Fix browsers whose `exec` methods don't consistently return `undefined` + // for NPCG, like IE8. NOTE: This doesn' work for /(.?)?/ + nativeReplace.call(match[0], reCopy, function () { + for (i = 1; i < arguments.length - 2; i++) { + if (arguments[i] === undefined) match[i] = undefined; + } + }); + } + + return match; + }; +} + +module.exports = patchedExec; + + +/***/ }), + +/***/ 7066: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var anObject = __webpack_require__(9670); + +// `RegExp.prototype.flags` getter implementation +// https://tc39.es/ecma262/#sec-get-regexp.prototype.flags +module.exports = function () { + var that = anObject(this); + var result = ''; + if (that.global) result += 'g'; + if (that.ignoreCase) result += 'i'; + if (that.multiline) result += 'm'; + if (that.dotAll) result += 's'; + if (that.unicode) result += 'u'; + if (that.sticky) result += 'y'; + return result; +}; + + +/***/ }), + +/***/ 2999: +/***/ (function(__unused_webpack_module, exports, __webpack_require__) { + +"use strict"; + + +var fails = __webpack_require__(7293); + +// babel-minify transpiles RegExp('a', 'y') -> /a/y and it causes SyntaxError, +// so we use an intermediate function. +function RE(s, f) { + return RegExp(s, f); +} + +exports.UNSUPPORTED_Y = fails(function () { + // babel-minify transpiles RegExp('a', 'y') -> /a/y and it causes SyntaxError + var re = RE('a', 'y'); + re.lastIndex = 2; + return re.exec('abcd') != null; +}); + +exports.BROKEN_CARET = fails(function () { + // https://bugzilla.mozilla.org/show_bug.cgi?id=773687 + var re = RE('^r', 'gy'); + re.lastIndex = 2; + return re.exec('str') != null; +}); + + +/***/ }), + +/***/ 4488: +/***/ (function(module) { + +// `RequireObjectCoercible` abstract operation +// https://tc39.es/ecma262/#sec-requireobjectcoercible +module.exports = function (it) { + if (it == undefined) throw TypeError("Can't call method on " + it); + return it; +}; + + +/***/ }), + +/***/ 3505: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var global = __webpack_require__(7854); +var createNonEnumerableProperty = __webpack_require__(8880); + +module.exports = function (key, value) { + try { + createNonEnumerableProperty(global, key, value); + } catch (error) { + global[key] = value; + } return value; +}; + + +/***/ }), + +/***/ 6340: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var getBuiltIn = __webpack_require__(5005); +var definePropertyModule = __webpack_require__(3070); +var wellKnownSymbol = __webpack_require__(5112); +var DESCRIPTORS = __webpack_require__(9781); + +var SPECIES = wellKnownSymbol('species'); + +module.exports = function (CONSTRUCTOR_NAME) { + var Constructor = getBuiltIn(CONSTRUCTOR_NAME); + var defineProperty = definePropertyModule.f; + + if (DESCRIPTORS && Constructor && !Constructor[SPECIES]) { + defineProperty(Constructor, SPECIES, { + configurable: true, + get: function () { return this; } + }); + } +}; + + +/***/ }), + +/***/ 8003: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var defineProperty = __webpack_require__(3070).f; +var has = __webpack_require__(6656); +var wellKnownSymbol = __webpack_require__(5112); + +var TO_STRING_TAG = wellKnownSymbol('toStringTag'); + +module.exports = function (it, TAG, STATIC) { + if (it && !has(it = STATIC ? it : it.prototype, TO_STRING_TAG)) { + defineProperty(it, TO_STRING_TAG, { configurable: true, value: TAG }); + } +}; + + +/***/ }), + +/***/ 6200: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var shared = __webpack_require__(2309); +var uid = __webpack_require__(9711); + +var keys = shared('keys'); + +module.exports = function (key) { + return keys[key] || (keys[key] = uid(key)); +}; + + +/***/ }), + +/***/ 5465: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var global = __webpack_require__(7854); +var setGlobal = __webpack_require__(3505); + +var SHARED = '__core-js_shared__'; +var store = global[SHARED] || setGlobal(SHARED, {}); + +module.exports = store; + + +/***/ }), + +/***/ 2309: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var IS_PURE = __webpack_require__(1913); +var store = __webpack_require__(5465); + +(module.exports = function (key, value) { + return store[key] || (store[key] = value !== undefined ? value : {}); +})('versions', []).push({ + version: '3.9.0', + mode: IS_PURE ? 'pure' : 'global', + copyright: '© 2021 Denis Pushkarev (zloirock.ru)' +}); + + +/***/ }), + +/***/ 6707: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var anObject = __webpack_require__(9670); +var aFunction = __webpack_require__(3099); +var wellKnownSymbol = __webpack_require__(5112); + +var SPECIES = wellKnownSymbol('species'); + +// `SpeciesConstructor` abstract operation +// https://tc39.es/ecma262/#sec-speciesconstructor +module.exports = function (O, defaultConstructor) { + var C = anObject(O).constructor; + var S; + return C === undefined || (S = anObject(C)[SPECIES]) == undefined ? defaultConstructor : aFunction(S); +}; + + +/***/ }), + +/***/ 8710: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var toInteger = __webpack_require__(9958); +var requireObjectCoercible = __webpack_require__(4488); + +// `String.prototype.{ codePointAt, at }` methods implementation +var createMethod = function (CONVERT_TO_STRING) { + return function ($this, pos) { + var S = String(requireObjectCoercible($this)); + var position = toInteger(pos); + var size = S.length; + var first, second; + if (position < 0 || position >= size) return CONVERT_TO_STRING ? '' : undefined; + first = S.charCodeAt(position); + return first < 0xD800 || first > 0xDBFF || position + 1 === size + || (second = S.charCodeAt(position + 1)) < 0xDC00 || second > 0xDFFF + ? CONVERT_TO_STRING ? S.charAt(position) : first + : CONVERT_TO_STRING ? S.slice(position, position + 2) : (first - 0xD800 << 10) + (second - 0xDC00) + 0x10000; + }; +}; + +module.exports = { + // `String.prototype.codePointAt` method + // https://tc39.es/ecma262/#sec-string.prototype.codepointat + codeAt: createMethod(false), + // `String.prototype.at` method + // https://github.com/mathiasbynens/String.prototype.at + charAt: createMethod(true) +}; + + +/***/ }), + +/***/ 3197: +/***/ (function(module) { + +"use strict"; + +// based on https://github.com/bestiejs/punycode.js/blob/master/punycode.js +var maxInt = 2147483647; // aka. 0x7FFFFFFF or 2^31-1 +var base = 36; +var tMin = 1; +var tMax = 26; +var skew = 38; +var damp = 700; +var initialBias = 72; +var initialN = 128; // 0x80 +var delimiter = '-'; // '\x2D' +var regexNonASCII = /[^\0-\u007E]/; // non-ASCII chars +var regexSeparators = /[.\u3002\uFF0E\uFF61]/g; // RFC 3490 separators +var OVERFLOW_ERROR = 'Overflow: input needs wider integers to process'; +var baseMinusTMin = base - tMin; +var floor = Math.floor; +var stringFromCharCode = String.fromCharCode; + +/** + * Creates an array containing the numeric code points of each Unicode + * character in the string. While JavaScript uses UCS-2 internally, + * this function will convert a pair of surrogate halves (each of which + * UCS-2 exposes as separate characters) into a single code point, + * matching UTF-16. + */ +var ucs2decode = function (string) { + var output = []; + var counter = 0; + var length = string.length; + while (counter < length) { + var value = string.charCodeAt(counter++); + if (value >= 0xD800 && value <= 0xDBFF && counter < length) { + // It's a high surrogate, and there is a next character. + var extra = string.charCodeAt(counter++); + if ((extra & 0xFC00) == 0xDC00) { // Low surrogate. + output.push(((value & 0x3FF) << 10) + (extra & 0x3FF) + 0x10000); + } else { + // It's an unmatched surrogate; only append this code unit, in case the + // next code unit is the high surrogate of a surrogate pair. + output.push(value); + counter--; + } + } else { + output.push(value); + } + } + return output; +}; + +/** + * Converts a digit/integer into a basic code point. + */ +var digitToBasic = function (digit) { + // 0..25 map to ASCII a..z or A..Z + // 26..35 map to ASCII 0..9 + return digit + 22 + 75 * (digit < 26); +}; + +/** + * Bias adaptation function as per section 3.4 of RFC 3492. + * https://tools.ietf.org/html/rfc3492#section-3.4 + */ +var adapt = function (delta, numPoints, firstTime) { + var k = 0; + delta = firstTime ? floor(delta / damp) : delta >> 1; + delta += floor(delta / numPoints); + for (; delta > baseMinusTMin * tMax >> 1; k += base) { + delta = floor(delta / baseMinusTMin); + } + return floor(k + (baseMinusTMin + 1) * delta / (delta + skew)); +}; + +/** + * Converts a string of Unicode symbols (e.g. a domain name label) to a + * Punycode string of ASCII-only symbols. + */ +// eslint-disable-next-line max-statements -- TODO +var encode = function (input) { + var output = []; + + // Convert the input in UCS-2 to an array of Unicode code points. + input = ucs2decode(input); + + // Cache the length. + var inputLength = input.length; + + // Initialize the state. + var n = initialN; + var delta = 0; + var bias = initialBias; + var i, currentValue; + + // Handle the basic code points. + for (i = 0; i < input.length; i++) { + currentValue = input[i]; + if (currentValue < 0x80) { + output.push(stringFromCharCode(currentValue)); + } + } + + var basicLength = output.length; // number of basic code points. + var handledCPCount = basicLength; // number of code points that have been handled; + + // Finish the basic string with a delimiter unless it's empty. + if (basicLength) { + output.push(delimiter); + } + + // Main encoding loop: + while (handledCPCount < inputLength) { + // All non-basic code points < n have been handled already. Find the next larger one: + var m = maxInt; + for (i = 0; i < input.length; i++) { + currentValue = input[i]; + if (currentValue >= n && currentValue < m) { + m = currentValue; + } + } + + // Increase `delta` enough to advance the decoder's state to , but guard against overflow. + var handledCPCountPlusOne = handledCPCount + 1; + if (m - n > floor((maxInt - delta) / handledCPCountPlusOne)) { + throw RangeError(OVERFLOW_ERROR); + } + + delta += (m - n) * handledCPCountPlusOne; + n = m; + + for (i = 0; i < input.length; i++) { + currentValue = input[i]; + if (currentValue < n && ++delta > maxInt) { + throw RangeError(OVERFLOW_ERROR); + } + if (currentValue == n) { + // Represent delta as a generalized variable-length integer. + var q = delta; + for (var k = base; /* no condition */; k += base) { + var t = k <= bias ? tMin : (k >= bias + tMax ? tMax : k - bias); + if (q < t) break; + var qMinusT = q - t; + var baseMinusT = base - t; + output.push(stringFromCharCode(digitToBasic(t + qMinusT % baseMinusT))); + q = floor(qMinusT / baseMinusT); + } + + output.push(stringFromCharCode(digitToBasic(q))); + bias = adapt(delta, handledCPCountPlusOne, handledCPCount == basicLength); + delta = 0; + ++handledCPCount; + } + } + + ++delta; + ++n; + } + return output.join(''); +}; + +module.exports = function (input) { + var encoded = []; + var labels = input.toLowerCase().replace(regexSeparators, '\u002E').split('.'); + var i, label; + for (i = 0; i < labels.length; i++) { + label = labels[i]; + encoded.push(regexNonASCII.test(label) ? 'xn--' + encode(label) : label); + } + return encoded.join('.'); +}; + + +/***/ }), + +/***/ 6091: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var fails = __webpack_require__(7293); +var whitespaces = __webpack_require__(1361); + +var non = '\u200B\u0085\u180E'; + +// check that a method works with the correct list +// of whitespaces and has a correct name +module.exports = function (METHOD_NAME) { + return fails(function () { + return !!whitespaces[METHOD_NAME]() || non[METHOD_NAME]() != non || whitespaces[METHOD_NAME].name !== METHOD_NAME; + }); +}; + + +/***/ }), + +/***/ 3111: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var requireObjectCoercible = __webpack_require__(4488); +var whitespaces = __webpack_require__(1361); + +var whitespace = '[' + whitespaces + ']'; +var ltrim = RegExp('^' + whitespace + whitespace + '*'); +var rtrim = RegExp(whitespace + whitespace + '*$'); + +// `String.prototype.{ trim, trimStart, trimEnd, trimLeft, trimRight }` methods implementation +var createMethod = function (TYPE) { + return function ($this) { + var string = String(requireObjectCoercible($this)); + if (TYPE & 1) string = string.replace(ltrim, ''); + if (TYPE & 2) string = string.replace(rtrim, ''); + return string; + }; +}; + +module.exports = { + // `String.prototype.{ trimLeft, trimStart }` methods + // https://tc39.es/ecma262/#sec-string.prototype.trimstart + start: createMethod(1), + // `String.prototype.{ trimRight, trimEnd }` methods + // https://tc39.es/ecma262/#sec-string.prototype.trimend + end: createMethod(2), + // `String.prototype.trim` method + // https://tc39.es/ecma262/#sec-string.prototype.trim + trim: createMethod(3) +}; + + +/***/ }), + +/***/ 1400: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var toInteger = __webpack_require__(9958); + +var max = Math.max; +var min = Math.min; + +// Helper for a popular repeating case of the spec: +// Let integer be ? ToInteger(index). +// If integer < 0, let result be max((length + integer), 0); else let result be min(integer, length). +module.exports = function (index, length) { + var integer = toInteger(index); + return integer < 0 ? max(integer + length, 0) : min(integer, length); +}; + + +/***/ }), + +/***/ 7067: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var toInteger = __webpack_require__(9958); +var toLength = __webpack_require__(7466); + +// `ToIndex` abstract operation +// https://tc39.es/ecma262/#sec-toindex +module.exports = function (it) { + if (it === undefined) return 0; + var number = toInteger(it); + var length = toLength(number); + if (number !== length) throw RangeError('Wrong length or index'); + return length; +}; + + +/***/ }), + +/***/ 5656: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +// toObject with fallback for non-array-like ES3 strings +var IndexedObject = __webpack_require__(8361); +var requireObjectCoercible = __webpack_require__(4488); + +module.exports = function (it) { + return IndexedObject(requireObjectCoercible(it)); +}; + + +/***/ }), + +/***/ 9958: +/***/ (function(module) { + +var ceil = Math.ceil; +var floor = Math.floor; + +// `ToInteger` abstract operation +// https://tc39.es/ecma262/#sec-tointeger +module.exports = function (argument) { + return isNaN(argument = +argument) ? 0 : (argument > 0 ? floor : ceil)(argument); +}; + + +/***/ }), + +/***/ 7466: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var toInteger = __webpack_require__(9958); + +var min = Math.min; + +// `ToLength` abstract operation +// https://tc39.es/ecma262/#sec-tolength +module.exports = function (argument) { + return argument > 0 ? min(toInteger(argument), 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991 +}; + + +/***/ }), + +/***/ 7908: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var requireObjectCoercible = __webpack_require__(4488); + +// `ToObject` abstract operation +// https://tc39.es/ecma262/#sec-toobject +module.exports = function (argument) { + return Object(requireObjectCoercible(argument)); +}; + + +/***/ }), + +/***/ 4590: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var toPositiveInteger = __webpack_require__(3002); + +module.exports = function (it, BYTES) { + var offset = toPositiveInteger(it); + if (offset % BYTES) throw RangeError('Wrong offset'); + return offset; +}; + + +/***/ }), + +/***/ 3002: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var toInteger = __webpack_require__(9958); + +module.exports = function (it) { + var result = toInteger(it); + if (result < 0) throw RangeError("The argument can't be less than 0"); + return result; +}; + + +/***/ }), + +/***/ 7593: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var isObject = __webpack_require__(111); + +// `ToPrimitive` abstract operation +// https://tc39.es/ecma262/#sec-toprimitive +// instead of the ES6 spec version, we didn't implement @@toPrimitive case +// and the second argument - flag - preferred type is a string +module.exports = function (input, PREFERRED_STRING) { + if (!isObject(input)) return input; + var fn, val; + if (PREFERRED_STRING && typeof (fn = input.toString) == 'function' && !isObject(val = fn.call(input))) return val; + if (typeof (fn = input.valueOf) == 'function' && !isObject(val = fn.call(input))) return val; + if (!PREFERRED_STRING && typeof (fn = input.toString) == 'function' && !isObject(val = fn.call(input))) return val; + throw TypeError("Can't convert object to primitive value"); +}; + + +/***/ }), + +/***/ 1694: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var wellKnownSymbol = __webpack_require__(5112); + +var TO_STRING_TAG = wellKnownSymbol('toStringTag'); +var test = {}; + +test[TO_STRING_TAG] = 'z'; + +module.exports = String(test) === '[object z]'; + + +/***/ }), + +/***/ 9843: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var $ = __webpack_require__(2109); +var global = __webpack_require__(7854); +var DESCRIPTORS = __webpack_require__(9781); +var TYPED_ARRAYS_CONSTRUCTORS_REQUIRES_WRAPPERS = __webpack_require__(3832); +var ArrayBufferViewCore = __webpack_require__(260); +var ArrayBufferModule = __webpack_require__(3331); +var anInstance = __webpack_require__(5787); +var createPropertyDescriptor = __webpack_require__(9114); +var createNonEnumerableProperty = __webpack_require__(8880); +var toLength = __webpack_require__(7466); +var toIndex = __webpack_require__(7067); +var toOffset = __webpack_require__(4590); +var toPrimitive = __webpack_require__(7593); +var has = __webpack_require__(6656); +var classof = __webpack_require__(648); +var isObject = __webpack_require__(111); +var create = __webpack_require__(30); +var setPrototypeOf = __webpack_require__(7674); +var getOwnPropertyNames = __webpack_require__(8006).f; +var typedArrayFrom = __webpack_require__(7321); +var forEach = __webpack_require__(2092).forEach; +var setSpecies = __webpack_require__(6340); +var definePropertyModule = __webpack_require__(3070); +var getOwnPropertyDescriptorModule = __webpack_require__(1236); +var InternalStateModule = __webpack_require__(9909); +var inheritIfRequired = __webpack_require__(9587); + +var getInternalState = InternalStateModule.get; +var setInternalState = InternalStateModule.set; +var nativeDefineProperty = definePropertyModule.f; +var nativeGetOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f; +var round = Math.round; +var RangeError = global.RangeError; +var ArrayBuffer = ArrayBufferModule.ArrayBuffer; +var DataView = ArrayBufferModule.DataView; +var NATIVE_ARRAY_BUFFER_VIEWS = ArrayBufferViewCore.NATIVE_ARRAY_BUFFER_VIEWS; +var TYPED_ARRAY_TAG = ArrayBufferViewCore.TYPED_ARRAY_TAG; +var TypedArray = ArrayBufferViewCore.TypedArray; +var TypedArrayPrototype = ArrayBufferViewCore.TypedArrayPrototype; +var aTypedArrayConstructor = ArrayBufferViewCore.aTypedArrayConstructor; +var isTypedArray = ArrayBufferViewCore.isTypedArray; +var BYTES_PER_ELEMENT = 'BYTES_PER_ELEMENT'; +var WRONG_LENGTH = 'Wrong length'; + +var fromList = function (C, list) { + var index = 0; + var length = list.length; + var result = new (aTypedArrayConstructor(C))(length); + while (length > index) result[index] = list[index++]; + return result; +}; + +var addGetter = function (it, key) { + nativeDefineProperty(it, key, { get: function () { + return getInternalState(this)[key]; + } }); +}; + +var isArrayBuffer = function (it) { + var klass; + return it instanceof ArrayBuffer || (klass = classof(it)) == 'ArrayBuffer' || klass == 'SharedArrayBuffer'; +}; + +var isTypedArrayIndex = function (target, key) { + return isTypedArray(target) + && typeof key != 'symbol' + && key in target + && String(+key) == String(key); +}; + +var wrappedGetOwnPropertyDescriptor = function getOwnPropertyDescriptor(target, key) { + return isTypedArrayIndex(target, key = toPrimitive(key, true)) + ? createPropertyDescriptor(2, target[key]) + : nativeGetOwnPropertyDescriptor(target, key); +}; + +var wrappedDefineProperty = function defineProperty(target, key, descriptor) { + if (isTypedArrayIndex(target, key = toPrimitive(key, true)) + && isObject(descriptor) + && has(descriptor, 'value') + && !has(descriptor, 'get') + && !has(descriptor, 'set') + // TODO: add validation descriptor w/o calling accessors + && !descriptor.configurable + && (!has(descriptor, 'writable') || descriptor.writable) + && (!has(descriptor, 'enumerable') || descriptor.enumerable) + ) { + target[key] = descriptor.value; + return target; + } return nativeDefineProperty(target, key, descriptor); +}; + +if (DESCRIPTORS) { + if (!NATIVE_ARRAY_BUFFER_VIEWS) { + getOwnPropertyDescriptorModule.f = wrappedGetOwnPropertyDescriptor; + definePropertyModule.f = wrappedDefineProperty; + addGetter(TypedArrayPrototype, 'buffer'); + addGetter(TypedArrayPrototype, 'byteOffset'); + addGetter(TypedArrayPrototype, 'byteLength'); + addGetter(TypedArrayPrototype, 'length'); + } + + $({ target: 'Object', stat: true, forced: !NATIVE_ARRAY_BUFFER_VIEWS }, { + getOwnPropertyDescriptor: wrappedGetOwnPropertyDescriptor, + defineProperty: wrappedDefineProperty + }); + + module.exports = function (TYPE, wrapper, CLAMPED) { + var BYTES = TYPE.match(/\d+$/)[0] / 8; + var CONSTRUCTOR_NAME = TYPE + (CLAMPED ? 'Clamped' : '') + 'Array'; + var GETTER = 'get' + TYPE; + var SETTER = 'set' + TYPE; + var NativeTypedArrayConstructor = global[CONSTRUCTOR_NAME]; + var TypedArrayConstructor = NativeTypedArrayConstructor; + var TypedArrayConstructorPrototype = TypedArrayConstructor && TypedArrayConstructor.prototype; + var exported = {}; + + var getter = function (that, index) { + var data = getInternalState(that); + return data.view[GETTER](index * BYTES + data.byteOffset, true); + }; + + var setter = function (that, index, value) { + var data = getInternalState(that); + if (CLAMPED) value = (value = round(value)) < 0 ? 0 : value > 0xFF ? 0xFF : value & 0xFF; + data.view[SETTER](index * BYTES + data.byteOffset, value, true); + }; + + var addElement = function (that, index) { + nativeDefineProperty(that, index, { + get: function () { + return getter(this, index); + }, + set: function (value) { + return setter(this, index, value); + }, + enumerable: true + }); + }; + + if (!NATIVE_ARRAY_BUFFER_VIEWS) { + TypedArrayConstructor = wrapper(function (that, data, offset, $length) { + anInstance(that, TypedArrayConstructor, CONSTRUCTOR_NAME); + var index = 0; + var byteOffset = 0; + var buffer, byteLength, length; + if (!isObject(data)) { + length = toIndex(data); + byteLength = length * BYTES; + buffer = new ArrayBuffer(byteLength); + } else if (isArrayBuffer(data)) { + buffer = data; + byteOffset = toOffset(offset, BYTES); + var $len = data.byteLength; + if ($length === undefined) { + if ($len % BYTES) throw RangeError(WRONG_LENGTH); + byteLength = $len - byteOffset; + if (byteLength < 0) throw RangeError(WRONG_LENGTH); + } else { + byteLength = toLength($length) * BYTES; + if (byteLength + byteOffset > $len) throw RangeError(WRONG_LENGTH); + } + length = byteLength / BYTES; + } else if (isTypedArray(data)) { + return fromList(TypedArrayConstructor, data); + } else { + return typedArrayFrom.call(TypedArrayConstructor, data); + } + setInternalState(that, { + buffer: buffer, + byteOffset: byteOffset, + byteLength: byteLength, + length: length, + view: new DataView(buffer) + }); + while (index < length) addElement(that, index++); + }); + + if (setPrototypeOf) setPrototypeOf(TypedArrayConstructor, TypedArray); + TypedArrayConstructorPrototype = TypedArrayConstructor.prototype = create(TypedArrayPrototype); + } else if (TYPED_ARRAYS_CONSTRUCTORS_REQUIRES_WRAPPERS) { + TypedArrayConstructor = wrapper(function (dummy, data, typedArrayOffset, $length) { + anInstance(dummy, TypedArrayConstructor, CONSTRUCTOR_NAME); + return inheritIfRequired(function () { + if (!isObject(data)) return new NativeTypedArrayConstructor(toIndex(data)); + if (isArrayBuffer(data)) return $length !== undefined + ? new NativeTypedArrayConstructor(data, toOffset(typedArrayOffset, BYTES), $length) + : typedArrayOffset !== undefined + ? new NativeTypedArrayConstructor(data, toOffset(typedArrayOffset, BYTES)) + : new NativeTypedArrayConstructor(data); + if (isTypedArray(data)) return fromList(TypedArrayConstructor, data); + return typedArrayFrom.call(TypedArrayConstructor, data); + }(), dummy, TypedArrayConstructor); + }); + + if (setPrototypeOf) setPrototypeOf(TypedArrayConstructor, TypedArray); + forEach(getOwnPropertyNames(NativeTypedArrayConstructor), function (key) { + if (!(key in TypedArrayConstructor)) { + createNonEnumerableProperty(TypedArrayConstructor, key, NativeTypedArrayConstructor[key]); + } + }); + TypedArrayConstructor.prototype = TypedArrayConstructorPrototype; + } + + if (TypedArrayConstructorPrototype.constructor !== TypedArrayConstructor) { + createNonEnumerableProperty(TypedArrayConstructorPrototype, 'constructor', TypedArrayConstructor); + } + + if (TYPED_ARRAY_TAG) { + createNonEnumerableProperty(TypedArrayConstructorPrototype, TYPED_ARRAY_TAG, CONSTRUCTOR_NAME); + } + + exported[CONSTRUCTOR_NAME] = TypedArrayConstructor; + + $({ + global: true, forced: TypedArrayConstructor != NativeTypedArrayConstructor, sham: !NATIVE_ARRAY_BUFFER_VIEWS + }, exported); + + if (!(BYTES_PER_ELEMENT in TypedArrayConstructor)) { + createNonEnumerableProperty(TypedArrayConstructor, BYTES_PER_ELEMENT, BYTES); + } + + if (!(BYTES_PER_ELEMENT in TypedArrayConstructorPrototype)) { + createNonEnumerableProperty(TypedArrayConstructorPrototype, BYTES_PER_ELEMENT, BYTES); + } + + setSpecies(CONSTRUCTOR_NAME); + }; +} else module.exports = function () { /* empty */ }; + + +/***/ }), + +/***/ 3832: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +/* eslint-disable no-new -- required for testing */ +var global = __webpack_require__(7854); +var fails = __webpack_require__(7293); +var checkCorrectnessOfIteration = __webpack_require__(7072); +var NATIVE_ARRAY_BUFFER_VIEWS = __webpack_require__(260).NATIVE_ARRAY_BUFFER_VIEWS; + +var ArrayBuffer = global.ArrayBuffer; +var Int8Array = global.Int8Array; + +module.exports = !NATIVE_ARRAY_BUFFER_VIEWS || !fails(function () { + Int8Array(1); +}) || !fails(function () { + new Int8Array(-1); +}) || !checkCorrectnessOfIteration(function (iterable) { + new Int8Array(); + new Int8Array(null); + new Int8Array(1.5); + new Int8Array(iterable); +}, true) || fails(function () { + // Safari (11+) bug - a reason why even Safari 13 should load a typed array polyfill + return new Int8Array(new ArrayBuffer(2), 1, undefined).length !== 1; +}); + + +/***/ }), + +/***/ 3074: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var aTypedArrayConstructor = __webpack_require__(260).aTypedArrayConstructor; +var speciesConstructor = __webpack_require__(6707); + +module.exports = function (instance, list) { + var C = speciesConstructor(instance, instance.constructor); + var index = 0; + var length = list.length; + var result = new (aTypedArrayConstructor(C))(length); + while (length > index) result[index] = list[index++]; + return result; +}; + + +/***/ }), + +/***/ 7321: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var toObject = __webpack_require__(7908); +var toLength = __webpack_require__(7466); +var getIteratorMethod = __webpack_require__(1246); +var isArrayIteratorMethod = __webpack_require__(7659); +var bind = __webpack_require__(9974); +var aTypedArrayConstructor = __webpack_require__(260).aTypedArrayConstructor; + +module.exports = function from(source /* , mapfn, thisArg */) { + var O = toObject(source); + var argumentsLength = arguments.length; + var mapfn = argumentsLength > 1 ? arguments[1] : undefined; + var mapping = mapfn !== undefined; + var iteratorMethod = getIteratorMethod(O); + var i, length, result, step, iterator, next; + if (iteratorMethod != undefined && !isArrayIteratorMethod(iteratorMethod)) { + iterator = iteratorMethod.call(O); + next = iterator.next; + O = []; + while (!(step = next.call(iterator)).done) { + O.push(step.value); + } + } + if (mapping && argumentsLength > 2) { + mapfn = bind(mapfn, arguments[2], 2); + } + length = toLength(O.length); + result = new (aTypedArrayConstructor(this))(length); + for (i = 0; length > i; i++) { + result[i] = mapping ? mapfn(O[i], i) : O[i]; + } + return result; +}; + + +/***/ }), + +/***/ 9711: +/***/ (function(module) { + +var id = 0; +var postfix = Math.random(); + +module.exports = function (key) { + return 'Symbol(' + String(key === undefined ? '' : key) + ')_' + (++id + postfix).toString(36); +}; + + +/***/ }), + +/***/ 3307: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var NATIVE_SYMBOL = __webpack_require__(133); + +module.exports = NATIVE_SYMBOL + /* global Symbol -- safe */ + && !Symbol.sham + && typeof Symbol.iterator == 'symbol'; + + +/***/ }), + +/***/ 5112: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +var global = __webpack_require__(7854); +var shared = __webpack_require__(2309); +var has = __webpack_require__(6656); +var uid = __webpack_require__(9711); +var NATIVE_SYMBOL = __webpack_require__(133); +var USE_SYMBOL_AS_UID = __webpack_require__(3307); + +var WellKnownSymbolsStore = shared('wks'); +var Symbol = global.Symbol; +var createWellKnownSymbol = USE_SYMBOL_AS_UID ? Symbol : Symbol && Symbol.withoutSetter || uid; + +module.exports = function (name) { + if (!has(WellKnownSymbolsStore, name)) { + if (NATIVE_SYMBOL && has(Symbol, name)) WellKnownSymbolsStore[name] = Symbol[name]; + else WellKnownSymbolsStore[name] = createWellKnownSymbol('Symbol.' + name); + } return WellKnownSymbolsStore[name]; +}; + + +/***/ }), + +/***/ 1361: +/***/ (function(module) { + +// a string of all valid unicode whitespaces +module.exports = '\u0009\u000A\u000B\u000C\u000D\u0020\u00A0\u1680\u2000\u2001\u2002' + + '\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200A\u202F\u205F\u3000\u2028\u2029\uFEFF'; + + +/***/ }), + +/***/ 8264: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var $ = __webpack_require__(2109); +var global = __webpack_require__(7854); +var arrayBufferModule = __webpack_require__(3331); +var setSpecies = __webpack_require__(6340); + +var ARRAY_BUFFER = 'ArrayBuffer'; +var ArrayBuffer = arrayBufferModule[ARRAY_BUFFER]; +var NativeArrayBuffer = global[ARRAY_BUFFER]; + +// `ArrayBuffer` constructor +// https://tc39.es/ecma262/#sec-arraybuffer-constructor +$({ global: true, forced: NativeArrayBuffer !== ArrayBuffer }, { + ArrayBuffer: ArrayBuffer +}); + +setSpecies(ARRAY_BUFFER); + + +/***/ }), + +/***/ 2222: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var $ = __webpack_require__(2109); +var fails = __webpack_require__(7293); +var isArray = __webpack_require__(3157); +var isObject = __webpack_require__(111); +var toObject = __webpack_require__(7908); +var toLength = __webpack_require__(7466); +var createProperty = __webpack_require__(6135); +var arraySpeciesCreate = __webpack_require__(5417); +var arrayMethodHasSpeciesSupport = __webpack_require__(1194); +var wellKnownSymbol = __webpack_require__(5112); +var V8_VERSION = __webpack_require__(7392); + +var IS_CONCAT_SPREADABLE = wellKnownSymbol('isConcatSpreadable'); +var MAX_SAFE_INTEGER = 0x1FFFFFFFFFFFFF; +var MAXIMUM_ALLOWED_INDEX_EXCEEDED = 'Maximum allowed index exceeded'; + +// We can't use this feature detection in V8 since it causes +// deoptimization and serious performance degradation +// https://github.com/zloirock/core-js/issues/679 +var IS_CONCAT_SPREADABLE_SUPPORT = V8_VERSION >= 51 || !fails(function () { + var array = []; + array[IS_CONCAT_SPREADABLE] = false; + return array.concat()[0] !== array; +}); + +var SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('concat'); + +var isConcatSpreadable = function (O) { + if (!isObject(O)) return false; + var spreadable = O[IS_CONCAT_SPREADABLE]; + return spreadable !== undefined ? !!spreadable : isArray(O); +}; + +var FORCED = !IS_CONCAT_SPREADABLE_SUPPORT || !SPECIES_SUPPORT; + +// `Array.prototype.concat` method +// https://tc39.es/ecma262/#sec-array.prototype.concat +// with adding support of @@isConcatSpreadable and @@species +$({ target: 'Array', proto: true, forced: FORCED }, { + // eslint-disable-next-line no-unused-vars -- required for `.length` + concat: function concat(arg) { + var O = toObject(this); + var A = arraySpeciesCreate(O, 0); + var n = 0; + var i, k, length, len, E; + for (i = -1, length = arguments.length; i < length; i++) { + E = i === -1 ? O : arguments[i]; + if (isConcatSpreadable(E)) { + len = toLength(E.length); + if (n + len > MAX_SAFE_INTEGER) throw TypeError(MAXIMUM_ALLOWED_INDEX_EXCEEDED); + for (k = 0; k < len; k++, n++) if (k in E) createProperty(A, n, E[k]); + } else { + if (n >= MAX_SAFE_INTEGER) throw TypeError(MAXIMUM_ALLOWED_INDEX_EXCEEDED); + createProperty(A, n++, E); + } + } + A.length = n; + return A; + } +}); + + +/***/ }), + +/***/ 7327: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var $ = __webpack_require__(2109); +var $filter = __webpack_require__(2092).filter; +var arrayMethodHasSpeciesSupport = __webpack_require__(1194); + +var HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('filter'); + +// `Array.prototype.filter` method +// https://tc39.es/ecma262/#sec-array.prototype.filter +// with adding support of @@species +$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT }, { + filter: function filter(callbackfn /* , thisArg */) { + return $filter(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined); + } +}); + + +/***/ }), + +/***/ 2772: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var $ = __webpack_require__(2109); +var $indexOf = __webpack_require__(1318).indexOf; +var arrayMethodIsStrict = __webpack_require__(9341); + +var nativeIndexOf = [].indexOf; + +var NEGATIVE_ZERO = !!nativeIndexOf && 1 / [1].indexOf(1, -0) < 0; +var STRICT_METHOD = arrayMethodIsStrict('indexOf'); + +// `Array.prototype.indexOf` method +// https://tc39.es/ecma262/#sec-array.prototype.indexof +$({ target: 'Array', proto: true, forced: NEGATIVE_ZERO || !STRICT_METHOD }, { + indexOf: function indexOf(searchElement /* , fromIndex = 0 */) { + return NEGATIVE_ZERO + // convert -0 to +0 + ? nativeIndexOf.apply(this, arguments) || 0 + : $indexOf(this, searchElement, arguments.length > 1 ? arguments[1] : undefined); + } +}); + + +/***/ }), + +/***/ 6992: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var toIndexedObject = __webpack_require__(5656); +var addToUnscopables = __webpack_require__(1223); +var Iterators = __webpack_require__(7497); +var InternalStateModule = __webpack_require__(9909); +var defineIterator = __webpack_require__(654); + +var ARRAY_ITERATOR = 'Array Iterator'; +var setInternalState = InternalStateModule.set; +var getInternalState = InternalStateModule.getterFor(ARRAY_ITERATOR); + +// `Array.prototype.entries` method +// https://tc39.es/ecma262/#sec-array.prototype.entries +// `Array.prototype.keys` method +// https://tc39.es/ecma262/#sec-array.prototype.keys +// `Array.prototype.values` method +// https://tc39.es/ecma262/#sec-array.prototype.values +// `Array.prototype[@@iterator]` method +// https://tc39.es/ecma262/#sec-array.prototype-@@iterator +// `CreateArrayIterator` internal method +// https://tc39.es/ecma262/#sec-createarrayiterator +module.exports = defineIterator(Array, 'Array', function (iterated, kind) { + setInternalState(this, { + type: ARRAY_ITERATOR, + target: toIndexedObject(iterated), // target + index: 0, // next index + kind: kind // kind + }); +// `%ArrayIteratorPrototype%.next` method +// https://tc39.es/ecma262/#sec-%arrayiteratorprototype%.next +}, function () { + var state = getInternalState(this); + var target = state.target; + var kind = state.kind; + var index = state.index++; + if (!target || index >= target.length) { + state.target = undefined; + return { value: undefined, done: true }; + } + if (kind == 'keys') return { value: index, done: false }; + if (kind == 'values') return { value: target[index], done: false }; + return { value: [index, target[index]], done: false }; +}, 'values'); + +// argumentsList[@@iterator] is %ArrayProto_values% +// https://tc39.es/ecma262/#sec-createunmappedargumentsobject +// https://tc39.es/ecma262/#sec-createmappedargumentsobject +Iterators.Arguments = Iterators.Array; + +// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables +addToUnscopables('keys'); +addToUnscopables('values'); +addToUnscopables('entries'); + + +/***/ }), + +/***/ 1249: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var $ = __webpack_require__(2109); +var $map = __webpack_require__(2092).map; +var arrayMethodHasSpeciesSupport = __webpack_require__(1194); + +var HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('map'); + +// `Array.prototype.map` method +// https://tc39.es/ecma262/#sec-array.prototype.map +// with adding support of @@species +$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT }, { + map: function map(callbackfn /* , thisArg */) { + return $map(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined); + } +}); + + +/***/ }), + +/***/ 7042: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var $ = __webpack_require__(2109); +var isObject = __webpack_require__(111); +var isArray = __webpack_require__(3157); +var toAbsoluteIndex = __webpack_require__(1400); +var toLength = __webpack_require__(7466); +var toIndexedObject = __webpack_require__(5656); +var createProperty = __webpack_require__(6135); +var wellKnownSymbol = __webpack_require__(5112); +var arrayMethodHasSpeciesSupport = __webpack_require__(1194); + +var HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('slice'); + +var SPECIES = wellKnownSymbol('species'); +var nativeSlice = [].slice; +var max = Math.max; + +// `Array.prototype.slice` method +// https://tc39.es/ecma262/#sec-array.prototype.slice +// fallback for not array-like ES3 strings and DOM objects +$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT }, { + slice: function slice(start, end) { + var O = toIndexedObject(this); + var length = toLength(O.length); + var k = toAbsoluteIndex(start, length); + var fin = toAbsoluteIndex(end === undefined ? length : end, length); + // inline `ArraySpeciesCreate` for usage native `Array#slice` where it's possible + var Constructor, result, n; + if (isArray(O)) { + Constructor = O.constructor; + // cross-realm fallback + if (typeof Constructor == 'function' && (Constructor === Array || isArray(Constructor.prototype))) { + Constructor = undefined; + } else if (isObject(Constructor)) { + Constructor = Constructor[SPECIES]; + if (Constructor === null) Constructor = undefined; + } + if (Constructor === Array || Constructor === undefined) { + return nativeSlice.call(O, k, fin); + } + } + result = new (Constructor === undefined ? Array : Constructor)(max(fin - k, 0)); + for (n = 0; k < fin; k++, n++) if (k in O) createProperty(result, n, O[k]); + result.length = n; + return result; + } +}); + + +/***/ }), + +/***/ 561: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var $ = __webpack_require__(2109); +var toAbsoluteIndex = __webpack_require__(1400); +var toInteger = __webpack_require__(9958); +var toLength = __webpack_require__(7466); +var toObject = __webpack_require__(7908); +var arraySpeciesCreate = __webpack_require__(5417); +var createProperty = __webpack_require__(6135); +var arrayMethodHasSpeciesSupport = __webpack_require__(1194); + +var HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('splice'); + +var max = Math.max; +var min = Math.min; +var MAX_SAFE_INTEGER = 0x1FFFFFFFFFFFFF; +var MAXIMUM_ALLOWED_LENGTH_EXCEEDED = 'Maximum allowed length exceeded'; + +// `Array.prototype.splice` method +// https://tc39.es/ecma262/#sec-array.prototype.splice +// with adding support of @@species +$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT }, { + splice: function splice(start, deleteCount /* , ...items */) { + var O = toObject(this); + var len = toLength(O.length); + var actualStart = toAbsoluteIndex(start, len); + var argumentsLength = arguments.length; + var insertCount, actualDeleteCount, A, k, from, to; + if (argumentsLength === 0) { + insertCount = actualDeleteCount = 0; + } else if (argumentsLength === 1) { + insertCount = 0; + actualDeleteCount = len - actualStart; + } else { + insertCount = argumentsLength - 2; + actualDeleteCount = min(max(toInteger(deleteCount), 0), len - actualStart); + } + if (len + insertCount - actualDeleteCount > MAX_SAFE_INTEGER) { + throw TypeError(MAXIMUM_ALLOWED_LENGTH_EXCEEDED); + } + A = arraySpeciesCreate(O, actualDeleteCount); + for (k = 0; k < actualDeleteCount; k++) { + from = actualStart + k; + if (from in O) createProperty(A, k, O[from]); + } + A.length = actualDeleteCount; + if (insertCount < actualDeleteCount) { + for (k = actualStart; k < len - actualDeleteCount; k++) { + from = k + actualDeleteCount; + to = k + insertCount; + if (from in O) O[to] = O[from]; + else delete O[to]; + } + for (k = len; k > len - actualDeleteCount + insertCount; k--) delete O[k - 1]; + } else if (insertCount > actualDeleteCount) { + for (k = len - actualDeleteCount; k > actualStart; k--) { + from = k + actualDeleteCount - 1; + to = k + insertCount - 1; + if (from in O) O[to] = O[from]; + else delete O[to]; + } + } + for (k = 0; k < insertCount; k++) { + O[k + actualStart] = arguments[k + 2]; + } + O.length = len - actualDeleteCount + insertCount; + return A; + } +}); + + +/***/ }), + +/***/ 8309: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +var DESCRIPTORS = __webpack_require__(9781); +var defineProperty = __webpack_require__(3070).f; + +var FunctionPrototype = Function.prototype; +var FunctionPrototypeToString = FunctionPrototype.toString; +var nameRE = /^\s*function ([^ (]*)/; +var NAME = 'name'; + +// Function instances `.name` property +// https://tc39.es/ecma262/#sec-function-instances-name +if (DESCRIPTORS && !(NAME in FunctionPrototype)) { + defineProperty(FunctionPrototype, NAME, { + configurable: true, + get: function () { + try { + return FunctionPrototypeToString.call(this).match(nameRE)[1]; + } catch (error) { + return ''; + } + } + }); +} + + +/***/ }), + +/***/ 489: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +var $ = __webpack_require__(2109); +var fails = __webpack_require__(7293); +var toObject = __webpack_require__(7908); +var nativeGetPrototypeOf = __webpack_require__(9518); +var CORRECT_PROTOTYPE_GETTER = __webpack_require__(8544); + +var FAILS_ON_PRIMITIVES = fails(function () { nativeGetPrototypeOf(1); }); + +// `Object.getPrototypeOf` method +// https://tc39.es/ecma262/#sec-object.getprototypeof +$({ target: 'Object', stat: true, forced: FAILS_ON_PRIMITIVES, sham: !CORRECT_PROTOTYPE_GETTER }, { + getPrototypeOf: function getPrototypeOf(it) { + return nativeGetPrototypeOf(toObject(it)); + } +}); + + + +/***/ }), + +/***/ 1539: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +var TO_STRING_TAG_SUPPORT = __webpack_require__(1694); +var redefine = __webpack_require__(1320); +var toString = __webpack_require__(288); + +// `Object.prototype.toString` method +// https://tc39.es/ecma262/#sec-object.prototype.tostring +if (!TO_STRING_TAG_SUPPORT) { + redefine(Object.prototype, 'toString', toString, { unsafe: true }); +} + + +/***/ }), + +/***/ 4916: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var $ = __webpack_require__(2109); +var exec = __webpack_require__(2261); + +// `RegExp.prototype.exec` method +// https://tc39.es/ecma262/#sec-regexp.prototype.exec +$({ target: 'RegExp', proto: true, forced: /./.exec !== exec }, { + exec: exec +}); + + +/***/ }), + +/***/ 9714: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var redefine = __webpack_require__(1320); +var anObject = __webpack_require__(9670); +var fails = __webpack_require__(7293); +var flags = __webpack_require__(7066); + +var TO_STRING = 'toString'; +var RegExpPrototype = RegExp.prototype; +var nativeToString = RegExpPrototype[TO_STRING]; + +var NOT_GENERIC = fails(function () { return nativeToString.call({ source: 'a', flags: 'b' }) != '/a/b'; }); +// FF44- RegExp#toString has a wrong name +var INCORRECT_NAME = nativeToString.name != TO_STRING; + +// `RegExp.prototype.toString` method +// https://tc39.es/ecma262/#sec-regexp.prototype.tostring +if (NOT_GENERIC || INCORRECT_NAME) { + redefine(RegExp.prototype, TO_STRING, function toString() { + var R = anObject(this); + var p = String(R.source); + var rf = R.flags; + var f = String(rf === undefined && R instanceof RegExp && !('flags' in RegExpPrototype) ? flags.call(R) : rf); + return '/' + p + '/' + f; + }, { unsafe: true }); +} + + +/***/ }), + +/***/ 8783: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var charAt = __webpack_require__(8710).charAt; +var InternalStateModule = __webpack_require__(9909); +var defineIterator = __webpack_require__(654); + +var STRING_ITERATOR = 'String Iterator'; +var setInternalState = InternalStateModule.set; +var getInternalState = InternalStateModule.getterFor(STRING_ITERATOR); + +// `String.prototype[@@iterator]` method +// https://tc39.es/ecma262/#sec-string.prototype-@@iterator +defineIterator(String, 'String', function (iterated) { + setInternalState(this, { + type: STRING_ITERATOR, + string: String(iterated), + index: 0 + }); +// `%StringIteratorPrototype%.next` method +// https://tc39.es/ecma262/#sec-%stringiteratorprototype%.next +}, function next() { + var state = getInternalState(this); + var string = state.string; + var index = state.index; + var point; + if (index >= string.length) return { value: undefined, done: true }; + point = charAt(string, index); + state.index += point.length; + return { value: point, done: false }; +}); + + +/***/ }), + +/***/ 4723: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var fixRegExpWellKnownSymbolLogic = __webpack_require__(7007); +var anObject = __webpack_require__(9670); +var toLength = __webpack_require__(7466); +var requireObjectCoercible = __webpack_require__(4488); +var advanceStringIndex = __webpack_require__(1530); +var regExpExec = __webpack_require__(7651); + +// @@match logic +fixRegExpWellKnownSymbolLogic('match', 1, function (MATCH, nativeMatch, maybeCallNative) { + return [ + // `String.prototype.match` method + // https://tc39.es/ecma262/#sec-string.prototype.match + function match(regexp) { + var O = requireObjectCoercible(this); + var matcher = regexp == undefined ? undefined : regexp[MATCH]; + return matcher !== undefined ? matcher.call(regexp, O) : new RegExp(regexp)[MATCH](String(O)); + }, + // `RegExp.prototype[@@match]` method + // https://tc39.es/ecma262/#sec-regexp.prototype-@@match + function (regexp) { + var res = maybeCallNative(nativeMatch, regexp, this); + if (res.done) return res.value; + + var rx = anObject(regexp); + var S = String(this); + + if (!rx.global) return regExpExec(rx, S); + + var fullUnicode = rx.unicode; + rx.lastIndex = 0; + var A = []; + var n = 0; + var result; + while ((result = regExpExec(rx, S)) !== null) { + var matchStr = String(result[0]); + A[n] = matchStr; + if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode); + n++; + } + return n === 0 ? null : A; + } + ]; +}); + + +/***/ }), + +/***/ 5306: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var fixRegExpWellKnownSymbolLogic = __webpack_require__(7007); +var anObject = __webpack_require__(9670); +var toLength = __webpack_require__(7466); +var toInteger = __webpack_require__(9958); +var requireObjectCoercible = __webpack_require__(4488); +var advanceStringIndex = __webpack_require__(1530); +var getSubstitution = __webpack_require__(647); +var regExpExec = __webpack_require__(7651); + +var max = Math.max; +var min = Math.min; + +var maybeToString = function (it) { + return it === undefined ? it : String(it); +}; + +// @@replace logic +fixRegExpWellKnownSymbolLogic('replace', 2, function (REPLACE, nativeReplace, maybeCallNative, reason) { + var REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE = reason.REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE; + var REPLACE_KEEPS_$0 = reason.REPLACE_KEEPS_$0; + var UNSAFE_SUBSTITUTE = REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE ? '$' : '$0'; + + return [ + // `String.prototype.replace` method + // https://tc39.es/ecma262/#sec-string.prototype.replace + function replace(searchValue, replaceValue) { + var O = requireObjectCoercible(this); + var replacer = searchValue == undefined ? undefined : searchValue[REPLACE]; + return replacer !== undefined + ? replacer.call(searchValue, O, replaceValue) + : nativeReplace.call(String(O), searchValue, replaceValue); + }, + // `RegExp.prototype[@@replace]` method + // https://tc39.es/ecma262/#sec-regexp.prototype-@@replace + function (regexp, replaceValue) { + if ( + (!REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE && REPLACE_KEEPS_$0) || + (typeof replaceValue === 'string' && replaceValue.indexOf(UNSAFE_SUBSTITUTE) === -1) + ) { + var res = maybeCallNative(nativeReplace, regexp, this, replaceValue); + if (res.done) return res.value; + } + + var rx = anObject(regexp); + var S = String(this); + + var functionalReplace = typeof replaceValue === 'function'; + if (!functionalReplace) replaceValue = String(replaceValue); + + var global = rx.global; + if (global) { + var fullUnicode = rx.unicode; + rx.lastIndex = 0; + } + var results = []; + while (true) { + var result = regExpExec(rx, S); + if (result === null) break; + + results.push(result); + if (!global) break; + + var matchStr = String(result[0]); + if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode); + } + + var accumulatedResult = ''; + var nextSourcePosition = 0; + for (var i = 0; i < results.length; i++) { + result = results[i]; + + var matched = String(result[0]); + var position = max(min(toInteger(result.index), S.length), 0); + var captures = []; + // NOTE: This is equivalent to + // captures = result.slice(1).map(maybeToString) + // but for some reason `nativeSlice.call(result, 1, result.length)` (called in + // the slice polyfill when slicing native arrays) "doesn't work" in safari 9 and + // causes a crash (https://pastebin.com/N21QzeQA) when trying to debug it. + for (var j = 1; j < result.length; j++) captures.push(maybeToString(result[j])); + var namedCaptures = result.groups; + if (functionalReplace) { + var replacerArgs = [matched].concat(captures, position, S); + if (namedCaptures !== undefined) replacerArgs.push(namedCaptures); + var replacement = String(replaceValue.apply(undefined, replacerArgs)); + } else { + replacement = getSubstitution(matched, S, position, captures, namedCaptures, replaceValue); + } + if (position >= nextSourcePosition) { + accumulatedResult += S.slice(nextSourcePosition, position) + replacement; + nextSourcePosition = position + matched.length; + } + } + return accumulatedResult + S.slice(nextSourcePosition); + } + ]; +}); + + +/***/ }), + +/***/ 3123: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var fixRegExpWellKnownSymbolLogic = __webpack_require__(7007); +var isRegExp = __webpack_require__(7850); +var anObject = __webpack_require__(9670); +var requireObjectCoercible = __webpack_require__(4488); +var speciesConstructor = __webpack_require__(6707); +var advanceStringIndex = __webpack_require__(1530); +var toLength = __webpack_require__(7466); +var callRegExpExec = __webpack_require__(7651); +var regexpExec = __webpack_require__(2261); +var fails = __webpack_require__(7293); + +var arrayPush = [].push; +var min = Math.min; +var MAX_UINT32 = 0xFFFFFFFF; + +// babel-minify transpiles RegExp('x', 'y') -> /x/y and it causes SyntaxError +var SUPPORTS_Y = !fails(function () { return !RegExp(MAX_UINT32, 'y'); }); + +// @@split logic +fixRegExpWellKnownSymbolLogic('split', 2, function (SPLIT, nativeSplit, maybeCallNative) { + var internalSplit; + if ( + 'abbc'.split(/(b)*/)[1] == 'c' || + // eslint-disable-next-line regexp/no-empty-group -- required for testing + 'test'.split(/(?:)/, -1).length != 4 || + 'ab'.split(/(?:ab)*/).length != 2 || + '.'.split(/(.?)(.?)/).length != 4 || + // eslint-disable-next-line regexp/no-assertion-capturing-group, regexp/no-empty-group -- required for testing + '.'.split(/()()/).length > 1 || + ''.split(/.?/).length + ) { + // based on es5-shim implementation, need to rework it + internalSplit = function (separator, limit) { + var string = String(requireObjectCoercible(this)); + var lim = limit === undefined ? MAX_UINT32 : limit >>> 0; + if (lim === 0) return []; + if (separator === undefined) return [string]; + // If `separator` is not a regex, use native split + if (!isRegExp(separator)) { + return nativeSplit.call(string, separator, lim); + } + var output = []; + var flags = (separator.ignoreCase ? 'i' : '') + + (separator.multiline ? 'm' : '') + + (separator.unicode ? 'u' : '') + + (separator.sticky ? 'y' : ''); + var lastLastIndex = 0; + // Make `global` and avoid `lastIndex` issues by working with a copy + var separatorCopy = new RegExp(separator.source, flags + 'g'); + var match, lastIndex, lastLength; + while (match = regexpExec.call(separatorCopy, string)) { + lastIndex = separatorCopy.lastIndex; + if (lastIndex > lastLastIndex) { + output.push(string.slice(lastLastIndex, match.index)); + if (match.length > 1 && match.index < string.length) arrayPush.apply(output, match.slice(1)); + lastLength = match[0].length; + lastLastIndex = lastIndex; + if (output.length >= lim) break; + } + if (separatorCopy.lastIndex === match.index) separatorCopy.lastIndex++; // Avoid an infinite loop + } + if (lastLastIndex === string.length) { + if (lastLength || !separatorCopy.test('')) output.push(''); + } else output.push(string.slice(lastLastIndex)); + return output.length > lim ? output.slice(0, lim) : output; + }; + // Chakra, V8 + } else if ('0'.split(undefined, 0).length) { + internalSplit = function (separator, limit) { + return separator === undefined && limit === 0 ? [] : nativeSplit.call(this, separator, limit); + }; + } else internalSplit = nativeSplit; + + return [ + // `String.prototype.split` method + // https://tc39.es/ecma262/#sec-string.prototype.split + function split(separator, limit) { + var O = requireObjectCoercible(this); + var splitter = separator == undefined ? undefined : separator[SPLIT]; + return splitter !== undefined + ? splitter.call(separator, O, limit) + : internalSplit.call(String(O), separator, limit); + }, + // `RegExp.prototype[@@split]` method + // https://tc39.es/ecma262/#sec-regexp.prototype-@@split + // + // NOTE: This cannot be properly polyfilled in engines that don't support + // the 'y' flag. + function (regexp, limit) { + var res = maybeCallNative(internalSplit, regexp, this, limit, internalSplit !== nativeSplit); + if (res.done) return res.value; + + var rx = anObject(regexp); + var S = String(this); + var C = speciesConstructor(rx, RegExp); + + var unicodeMatching = rx.unicode; + var flags = (rx.ignoreCase ? 'i' : '') + + (rx.multiline ? 'm' : '') + + (rx.unicode ? 'u' : '') + + (SUPPORTS_Y ? 'y' : 'g'); + + // ^(? + rx + ) is needed, in combination with some S slicing, to + // simulate the 'y' flag. + var splitter = new C(SUPPORTS_Y ? rx : '^(?:' + rx.source + ')', flags); + var lim = limit === undefined ? MAX_UINT32 : limit >>> 0; + if (lim === 0) return []; + if (S.length === 0) return callRegExpExec(splitter, S) === null ? [S] : []; + var p = 0; + var q = 0; + var A = []; + while (q < S.length) { + splitter.lastIndex = SUPPORTS_Y ? q : 0; + var z = callRegExpExec(splitter, SUPPORTS_Y ? S : S.slice(q)); + var e; + if ( + z === null || + (e = min(toLength(splitter.lastIndex + (SUPPORTS_Y ? 0 : q)), S.length)) === p + ) { + q = advanceStringIndex(S, q, unicodeMatching); + } else { + A.push(S.slice(p, q)); + if (A.length === lim) return A; + for (var i = 1; i <= z.length - 1; i++) { + A.push(z[i]); + if (A.length === lim) return A; + } + q = p = e; + } + } + A.push(S.slice(p)); + return A; + } + ]; +}, !SUPPORTS_Y); + + +/***/ }), + +/***/ 3210: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var $ = __webpack_require__(2109); +var $trim = __webpack_require__(3111).trim; +var forcedStringTrimMethod = __webpack_require__(6091); + +// `String.prototype.trim` method +// https://tc39.es/ecma262/#sec-string.prototype.trim +$({ target: 'String', proto: true, forced: forcedStringTrimMethod('trim') }, { + trim: function trim() { + return $trim(this); + } +}); + + +/***/ }), + +/***/ 2990: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var ArrayBufferViewCore = __webpack_require__(260); +var $copyWithin = __webpack_require__(1048); + +var aTypedArray = ArrayBufferViewCore.aTypedArray; +var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod; + +// `%TypedArray%.prototype.copyWithin` method +// https://tc39.es/ecma262/#sec-%typedarray%.prototype.copywithin +exportTypedArrayMethod('copyWithin', function copyWithin(target, start /* , end */) { + return $copyWithin.call(aTypedArray(this), target, start, arguments.length > 2 ? arguments[2] : undefined); +}); + + +/***/ }), + +/***/ 8927: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var ArrayBufferViewCore = __webpack_require__(260); +var $every = __webpack_require__(2092).every; + +var aTypedArray = ArrayBufferViewCore.aTypedArray; +var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod; + +// `%TypedArray%.prototype.every` method +// https://tc39.es/ecma262/#sec-%typedarray%.prototype.every +exportTypedArrayMethod('every', function every(callbackfn /* , thisArg */) { + return $every(aTypedArray(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined); +}); + + +/***/ }), + +/***/ 3105: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var ArrayBufferViewCore = __webpack_require__(260); +var $fill = __webpack_require__(1285); + +var aTypedArray = ArrayBufferViewCore.aTypedArray; +var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod; + +// `%TypedArray%.prototype.fill` method +// https://tc39.es/ecma262/#sec-%typedarray%.prototype.fill +// eslint-disable-next-line no-unused-vars -- required for `.length` +exportTypedArrayMethod('fill', function fill(value /* , start, end */) { + return $fill.apply(aTypedArray(this), arguments); +}); + + +/***/ }), + +/***/ 5035: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var ArrayBufferViewCore = __webpack_require__(260); +var $filter = __webpack_require__(2092).filter; +var fromSpeciesAndList = __webpack_require__(3074); + +var aTypedArray = ArrayBufferViewCore.aTypedArray; +var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod; + +// `%TypedArray%.prototype.filter` method +// https://tc39.es/ecma262/#sec-%typedarray%.prototype.filter +exportTypedArrayMethod('filter', function filter(callbackfn /* , thisArg */) { + var list = $filter(aTypedArray(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined); + return fromSpeciesAndList(this, list); +}); + + +/***/ }), + +/***/ 7174: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var ArrayBufferViewCore = __webpack_require__(260); +var $findIndex = __webpack_require__(2092).findIndex; + +var aTypedArray = ArrayBufferViewCore.aTypedArray; +var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod; + +// `%TypedArray%.prototype.findIndex` method +// https://tc39.es/ecma262/#sec-%typedarray%.prototype.findindex +exportTypedArrayMethod('findIndex', function findIndex(predicate /* , thisArg */) { + return $findIndex(aTypedArray(this), predicate, arguments.length > 1 ? arguments[1] : undefined); +}); + + +/***/ }), + +/***/ 4345: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var ArrayBufferViewCore = __webpack_require__(260); +var $find = __webpack_require__(2092).find; + +var aTypedArray = ArrayBufferViewCore.aTypedArray; +var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod; + +// `%TypedArray%.prototype.find` method +// https://tc39.es/ecma262/#sec-%typedarray%.prototype.find +exportTypedArrayMethod('find', function find(predicate /* , thisArg */) { + return $find(aTypedArray(this), predicate, arguments.length > 1 ? arguments[1] : undefined); +}); + + +/***/ }), + +/***/ 2846: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var ArrayBufferViewCore = __webpack_require__(260); +var $forEach = __webpack_require__(2092).forEach; + +var aTypedArray = ArrayBufferViewCore.aTypedArray; +var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod; + +// `%TypedArray%.prototype.forEach` method +// https://tc39.es/ecma262/#sec-%typedarray%.prototype.foreach +exportTypedArrayMethod('forEach', function forEach(callbackfn /* , thisArg */) { + $forEach(aTypedArray(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined); +}); + + +/***/ }), + +/***/ 4731: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var ArrayBufferViewCore = __webpack_require__(260); +var $includes = __webpack_require__(1318).includes; + +var aTypedArray = ArrayBufferViewCore.aTypedArray; +var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod; + +// `%TypedArray%.prototype.includes` method +// https://tc39.es/ecma262/#sec-%typedarray%.prototype.includes +exportTypedArrayMethod('includes', function includes(searchElement /* , fromIndex */) { + return $includes(aTypedArray(this), searchElement, arguments.length > 1 ? arguments[1] : undefined); +}); + + +/***/ }), + +/***/ 7209: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var ArrayBufferViewCore = __webpack_require__(260); +var $indexOf = __webpack_require__(1318).indexOf; + +var aTypedArray = ArrayBufferViewCore.aTypedArray; +var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod; + +// `%TypedArray%.prototype.indexOf` method +// https://tc39.es/ecma262/#sec-%typedarray%.prototype.indexof +exportTypedArrayMethod('indexOf', function indexOf(searchElement /* , fromIndex */) { + return $indexOf(aTypedArray(this), searchElement, arguments.length > 1 ? arguments[1] : undefined); +}); + + +/***/ }), + +/***/ 6319: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var global = __webpack_require__(7854); +var ArrayBufferViewCore = __webpack_require__(260); +var ArrayIterators = __webpack_require__(6992); +var wellKnownSymbol = __webpack_require__(5112); + +var ITERATOR = wellKnownSymbol('iterator'); +var Uint8Array = global.Uint8Array; +var arrayValues = ArrayIterators.values; +var arrayKeys = ArrayIterators.keys; +var arrayEntries = ArrayIterators.entries; +var aTypedArray = ArrayBufferViewCore.aTypedArray; +var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod; +var nativeTypedArrayIterator = Uint8Array && Uint8Array.prototype[ITERATOR]; + +var CORRECT_ITER_NAME = !!nativeTypedArrayIterator + && (nativeTypedArrayIterator.name == 'values' || nativeTypedArrayIterator.name == undefined); + +var typedArrayValues = function values() { + return arrayValues.call(aTypedArray(this)); +}; + +// `%TypedArray%.prototype.entries` method +// https://tc39.es/ecma262/#sec-%typedarray%.prototype.entries +exportTypedArrayMethod('entries', function entries() { + return arrayEntries.call(aTypedArray(this)); +}); +// `%TypedArray%.prototype.keys` method +// https://tc39.es/ecma262/#sec-%typedarray%.prototype.keys +exportTypedArrayMethod('keys', function keys() { + return arrayKeys.call(aTypedArray(this)); +}); +// `%TypedArray%.prototype.values` method +// https://tc39.es/ecma262/#sec-%typedarray%.prototype.values +exportTypedArrayMethod('values', typedArrayValues, !CORRECT_ITER_NAME); +// `%TypedArray%.prototype[@@iterator]` method +// https://tc39.es/ecma262/#sec-%typedarray%.prototype-@@iterator +exportTypedArrayMethod(ITERATOR, typedArrayValues, !CORRECT_ITER_NAME); + + +/***/ }), + +/***/ 8867: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var ArrayBufferViewCore = __webpack_require__(260); + +var aTypedArray = ArrayBufferViewCore.aTypedArray; +var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod; +var $join = [].join; + +// `%TypedArray%.prototype.join` method +// https://tc39.es/ecma262/#sec-%typedarray%.prototype.join +// eslint-disable-next-line no-unused-vars -- required for `.length` +exportTypedArrayMethod('join', function join(separator) { + return $join.apply(aTypedArray(this), arguments); +}); + + +/***/ }), + +/***/ 7789: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var ArrayBufferViewCore = __webpack_require__(260); +var $lastIndexOf = __webpack_require__(6583); + +var aTypedArray = ArrayBufferViewCore.aTypedArray; +var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod; + +// `%TypedArray%.prototype.lastIndexOf` method +// https://tc39.es/ecma262/#sec-%typedarray%.prototype.lastindexof +// eslint-disable-next-line no-unused-vars -- required for `.length` +exportTypedArrayMethod('lastIndexOf', function lastIndexOf(searchElement /* , fromIndex */) { + return $lastIndexOf.apply(aTypedArray(this), arguments); +}); + + +/***/ }), + +/***/ 3739: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var ArrayBufferViewCore = __webpack_require__(260); +var $map = __webpack_require__(2092).map; +var speciesConstructor = __webpack_require__(6707); + +var aTypedArray = ArrayBufferViewCore.aTypedArray; +var aTypedArrayConstructor = ArrayBufferViewCore.aTypedArrayConstructor; +var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod; + +// `%TypedArray%.prototype.map` method +// https://tc39.es/ecma262/#sec-%typedarray%.prototype.map +exportTypedArrayMethod('map', function map(mapfn /* , thisArg */) { + return $map(aTypedArray(this), mapfn, arguments.length > 1 ? arguments[1] : undefined, function (O, length) { + return new (aTypedArrayConstructor(speciesConstructor(O, O.constructor)))(length); + }); +}); + + +/***/ }), + +/***/ 4483: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var ArrayBufferViewCore = __webpack_require__(260); +var $reduceRight = __webpack_require__(3671).right; + +var aTypedArray = ArrayBufferViewCore.aTypedArray; +var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod; + +// `%TypedArray%.prototype.reduceRicht` method +// https://tc39.es/ecma262/#sec-%typedarray%.prototype.reduceright +exportTypedArrayMethod('reduceRight', function reduceRight(callbackfn /* , initialValue */) { + return $reduceRight(aTypedArray(this), callbackfn, arguments.length, arguments.length > 1 ? arguments[1] : undefined); +}); + + +/***/ }), + +/***/ 9368: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var ArrayBufferViewCore = __webpack_require__(260); +var $reduce = __webpack_require__(3671).left; + +var aTypedArray = ArrayBufferViewCore.aTypedArray; +var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod; + +// `%TypedArray%.prototype.reduce` method +// https://tc39.es/ecma262/#sec-%typedarray%.prototype.reduce +exportTypedArrayMethod('reduce', function reduce(callbackfn /* , initialValue */) { + return $reduce(aTypedArray(this), callbackfn, arguments.length, arguments.length > 1 ? arguments[1] : undefined); +}); + + +/***/ }), + +/***/ 2056: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var ArrayBufferViewCore = __webpack_require__(260); + +var aTypedArray = ArrayBufferViewCore.aTypedArray; +var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod; +var floor = Math.floor; + +// `%TypedArray%.prototype.reverse` method +// https://tc39.es/ecma262/#sec-%typedarray%.prototype.reverse +exportTypedArrayMethod('reverse', function reverse() { + var that = this; + var length = aTypedArray(that).length; + var middle = floor(length / 2); + var index = 0; + var value; + while (index < middle) { + value = that[index]; + that[index++] = that[--length]; + that[length] = value; + } return that; +}); + + +/***/ }), + +/***/ 3462: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var ArrayBufferViewCore = __webpack_require__(260); +var toLength = __webpack_require__(7466); +var toOffset = __webpack_require__(4590); +var toObject = __webpack_require__(7908); +var fails = __webpack_require__(7293); + +var aTypedArray = ArrayBufferViewCore.aTypedArray; +var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod; + +var FORCED = fails(function () { + /* global Int8Array -- safe */ + new Int8Array(1).set({}); +}); + +// `%TypedArray%.prototype.set` method +// https://tc39.es/ecma262/#sec-%typedarray%.prototype.set +exportTypedArrayMethod('set', function set(arrayLike /* , offset */) { + aTypedArray(this); + var offset = toOffset(arguments.length > 1 ? arguments[1] : undefined, 1); + var length = this.length; + var src = toObject(arrayLike); + var len = toLength(src.length); + var index = 0; + if (len + offset > length) throw RangeError('Wrong length'); + while (index < len) this[offset + index] = src[index++]; +}, FORCED); + + +/***/ }), + +/***/ 678: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var ArrayBufferViewCore = __webpack_require__(260); +var speciesConstructor = __webpack_require__(6707); +var fails = __webpack_require__(7293); + +var aTypedArray = ArrayBufferViewCore.aTypedArray; +var aTypedArrayConstructor = ArrayBufferViewCore.aTypedArrayConstructor; +var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod; +var $slice = [].slice; + +var FORCED = fails(function () { + /* global Int8Array -- safe */ + new Int8Array(1).slice(); +}); + +// `%TypedArray%.prototype.slice` method +// https://tc39.es/ecma262/#sec-%typedarray%.prototype.slice +exportTypedArrayMethod('slice', function slice(start, end) { + var list = $slice.call(aTypedArray(this), start, end); + var C = speciesConstructor(this, this.constructor); + var index = 0; + var length = list.length; + var result = new (aTypedArrayConstructor(C))(length); + while (length > index) result[index] = list[index++]; + return result; +}, FORCED); + + +/***/ }), + +/***/ 7462: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var ArrayBufferViewCore = __webpack_require__(260); +var $some = __webpack_require__(2092).some; + +var aTypedArray = ArrayBufferViewCore.aTypedArray; +var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod; + +// `%TypedArray%.prototype.some` method +// https://tc39.es/ecma262/#sec-%typedarray%.prototype.some +exportTypedArrayMethod('some', function some(callbackfn /* , thisArg */) { + return $some(aTypedArray(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined); +}); + + +/***/ }), + +/***/ 3824: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var ArrayBufferViewCore = __webpack_require__(260); + +var aTypedArray = ArrayBufferViewCore.aTypedArray; +var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod; +var $sort = [].sort; + +// `%TypedArray%.prototype.sort` method +// https://tc39.es/ecma262/#sec-%typedarray%.prototype.sort +exportTypedArrayMethod('sort', function sort(comparefn) { + return $sort.call(aTypedArray(this), comparefn); +}); + + +/***/ }), + +/***/ 5021: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var ArrayBufferViewCore = __webpack_require__(260); +var toLength = __webpack_require__(7466); +var toAbsoluteIndex = __webpack_require__(1400); +var speciesConstructor = __webpack_require__(6707); + +var aTypedArray = ArrayBufferViewCore.aTypedArray; +var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod; + +// `%TypedArray%.prototype.subarray` method +// https://tc39.es/ecma262/#sec-%typedarray%.prototype.subarray +exportTypedArrayMethod('subarray', function subarray(begin, end) { + var O = aTypedArray(this); + var length = O.length; + var beginIndex = toAbsoluteIndex(begin, length); + return new (speciesConstructor(O, O.constructor))( + O.buffer, + O.byteOffset + beginIndex * O.BYTES_PER_ELEMENT, + toLength((end === undefined ? length : toAbsoluteIndex(end, length)) - beginIndex) + ); +}); + + +/***/ }), + +/***/ 2974: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var global = __webpack_require__(7854); +var ArrayBufferViewCore = __webpack_require__(260); +var fails = __webpack_require__(7293); + +var Int8Array = global.Int8Array; +var aTypedArray = ArrayBufferViewCore.aTypedArray; +var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod; +var $toLocaleString = [].toLocaleString; +var $slice = [].slice; + +// iOS Safari 6.x fails here +var TO_LOCALE_STRING_BUG = !!Int8Array && fails(function () { + $toLocaleString.call(new Int8Array(1)); +}); + +var FORCED = fails(function () { + return [1, 2].toLocaleString() != new Int8Array([1, 2]).toLocaleString(); +}) || !fails(function () { + Int8Array.prototype.toLocaleString.call([1, 2]); +}); + +// `%TypedArray%.prototype.toLocaleString` method +// https://tc39.es/ecma262/#sec-%typedarray%.prototype.tolocalestring +exportTypedArrayMethod('toLocaleString', function toLocaleString() { + return $toLocaleString.apply(TO_LOCALE_STRING_BUG ? $slice.call(aTypedArray(this)) : aTypedArray(this), arguments); +}, FORCED); + + +/***/ }), + +/***/ 5016: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +var exportTypedArrayMethod = __webpack_require__(260).exportTypedArrayMethod; +var fails = __webpack_require__(7293); +var global = __webpack_require__(7854); + +var Uint8Array = global.Uint8Array; +var Uint8ArrayPrototype = Uint8Array && Uint8Array.prototype || {}; +var arrayToString = [].toString; +var arrayJoin = [].join; + +if (fails(function () { arrayToString.call({}); })) { + arrayToString = function toString() { + return arrayJoin.call(this); + }; +} + +var IS_NOT_ARRAY_METHOD = Uint8ArrayPrototype.toString != arrayToString; + +// `%TypedArray%.prototype.toString` method +// https://tc39.es/ecma262/#sec-%typedarray%.prototype.tostring +exportTypedArrayMethod('toString', arrayToString, IS_NOT_ARRAY_METHOD); + + +/***/ }), + +/***/ 2472: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +var createTypedArrayConstructor = __webpack_require__(9843); + +// `Uint8Array` constructor +// https://tc39.es/ecma262/#sec-typedarray-objects +createTypedArrayConstructor('Uint8', function (init) { + return function Uint8Array(data, byteOffset, length) { + return init(this, data, byteOffset, length); + }; +}); + + +/***/ }), + +/***/ 4747: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +var global = __webpack_require__(7854); +var DOMIterables = __webpack_require__(8324); +var forEach = __webpack_require__(8533); +var createNonEnumerableProperty = __webpack_require__(8880); + +for (var COLLECTION_NAME in DOMIterables) { + var Collection = global[COLLECTION_NAME]; + var CollectionPrototype = Collection && Collection.prototype; + // some Chrome versions have non-configurable methods on DOMTokenList + if (CollectionPrototype && CollectionPrototype.forEach !== forEach) try { + createNonEnumerableProperty(CollectionPrototype, 'forEach', forEach); + } catch (error) { + CollectionPrototype.forEach = forEach; + } +} + + +/***/ }), + +/***/ 3948: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +var global = __webpack_require__(7854); +var DOMIterables = __webpack_require__(8324); +var ArrayIteratorMethods = __webpack_require__(6992); +var createNonEnumerableProperty = __webpack_require__(8880); +var wellKnownSymbol = __webpack_require__(5112); + +var ITERATOR = wellKnownSymbol('iterator'); +var TO_STRING_TAG = wellKnownSymbol('toStringTag'); +var ArrayValues = ArrayIteratorMethods.values; + +for (var COLLECTION_NAME in DOMIterables) { + var Collection = global[COLLECTION_NAME]; + var CollectionPrototype = Collection && Collection.prototype; + if (CollectionPrototype) { + // some Chrome versions have non-configurable methods on DOMTokenList + if (CollectionPrototype[ITERATOR] !== ArrayValues) try { + createNonEnumerableProperty(CollectionPrototype, ITERATOR, ArrayValues); + } catch (error) { + CollectionPrototype[ITERATOR] = ArrayValues; + } + if (!CollectionPrototype[TO_STRING_TAG]) { + createNonEnumerableProperty(CollectionPrototype, TO_STRING_TAG, COLLECTION_NAME); + } + if (DOMIterables[COLLECTION_NAME]) for (var METHOD_NAME in ArrayIteratorMethods) { + // some Chrome versions have non-configurable methods on DOMTokenList + if (CollectionPrototype[METHOD_NAME] !== ArrayIteratorMethods[METHOD_NAME]) try { + createNonEnumerableProperty(CollectionPrototype, METHOD_NAME, ArrayIteratorMethods[METHOD_NAME]); + } catch (error) { + CollectionPrototype[METHOD_NAME] = ArrayIteratorMethods[METHOD_NAME]; + } + } + } +} + + +/***/ }), + +/***/ 1637: +/***/ (function(module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +// TODO: in core-js@4, move /modules/ dependencies to public entries for better optimization by tools like `preset-env` +__webpack_require__(6992); +var $ = __webpack_require__(2109); +var getBuiltIn = __webpack_require__(5005); +var USE_NATIVE_URL = __webpack_require__(590); +var redefine = __webpack_require__(1320); +var redefineAll = __webpack_require__(2248); +var setToStringTag = __webpack_require__(8003); +var createIteratorConstructor = __webpack_require__(4994); +var InternalStateModule = __webpack_require__(9909); +var anInstance = __webpack_require__(5787); +var hasOwn = __webpack_require__(6656); +var bind = __webpack_require__(9974); +var classof = __webpack_require__(648); +var anObject = __webpack_require__(9670); +var isObject = __webpack_require__(111); +var create = __webpack_require__(30); +var createPropertyDescriptor = __webpack_require__(9114); +var getIterator = __webpack_require__(8554); +var getIteratorMethod = __webpack_require__(1246); +var wellKnownSymbol = __webpack_require__(5112); + +var $fetch = getBuiltIn('fetch'); +var Headers = getBuiltIn('Headers'); +var ITERATOR = wellKnownSymbol('iterator'); +var URL_SEARCH_PARAMS = 'URLSearchParams'; +var URL_SEARCH_PARAMS_ITERATOR = URL_SEARCH_PARAMS + 'Iterator'; +var setInternalState = InternalStateModule.set; +var getInternalParamsState = InternalStateModule.getterFor(URL_SEARCH_PARAMS); +var getInternalIteratorState = InternalStateModule.getterFor(URL_SEARCH_PARAMS_ITERATOR); + +var plus = /\+/g; +var sequences = Array(4); + +var percentSequence = function (bytes) { + return sequences[bytes - 1] || (sequences[bytes - 1] = RegExp('((?:%[\\da-f]{2}){' + bytes + '})', 'gi')); +}; + +var percentDecode = function (sequence) { + try { + return decodeURIComponent(sequence); + } catch (error) { + return sequence; + } +}; + +var deserialize = function (it) { + var result = it.replace(plus, ' '); + var bytes = 4; + try { + return decodeURIComponent(result); + } catch (error) { + while (bytes) { + result = result.replace(percentSequence(bytes--), percentDecode); + } + return result; + } +}; + +var find = /[!'()~]|%20/g; + +var replace = { + '!': '%21', + "'": '%27', + '(': '%28', + ')': '%29', + '~': '%7E', + '%20': '+' +}; + +var replacer = function (match) { + return replace[match]; +}; + +var serialize = function (it) { + return encodeURIComponent(it).replace(find, replacer); +}; + +var parseSearchParams = function (result, query) { + if (query) { + var attributes = query.split('&'); + var index = 0; + var attribute, entry; + while (index < attributes.length) { + attribute = attributes[index++]; + if (attribute.length) { + entry = attribute.split('='); + result.push({ + key: deserialize(entry.shift()), + value: deserialize(entry.join('=')) + }); + } + } + } +}; + +var updateSearchParams = function (query) { + this.entries.length = 0; + parseSearchParams(this.entries, query); +}; + +var validateArgumentsLength = function (passed, required) { + if (passed < required) throw TypeError('Not enough arguments'); +}; + +var URLSearchParamsIterator = createIteratorConstructor(function Iterator(params, kind) { + setInternalState(this, { + type: URL_SEARCH_PARAMS_ITERATOR, + iterator: getIterator(getInternalParamsState(params).entries), + kind: kind + }); +}, 'Iterator', function next() { + var state = getInternalIteratorState(this); + var kind = state.kind; + var step = state.iterator.next(); + var entry = step.value; + if (!step.done) { + step.value = kind === 'keys' ? entry.key : kind === 'values' ? entry.value : [entry.key, entry.value]; + } return step; +}); + +// `URLSearchParams` constructor +// https://url.spec.whatwg.org/#interface-urlsearchparams +var URLSearchParamsConstructor = function URLSearchParams(/* init */) { + anInstance(this, URLSearchParamsConstructor, URL_SEARCH_PARAMS); + var init = arguments.length > 0 ? arguments[0] : undefined; + var that = this; + var entries = []; + var iteratorMethod, iterator, next, step, entryIterator, entryNext, first, second, key; + + setInternalState(that, { + type: URL_SEARCH_PARAMS, + entries: entries, + updateURL: function () { /* empty */ }, + updateSearchParams: updateSearchParams + }); + + if (init !== undefined) { + if (isObject(init)) { + iteratorMethod = getIteratorMethod(init); + if (typeof iteratorMethod === 'function') { + iterator = iteratorMethod.call(init); + next = iterator.next; + while (!(step = next.call(iterator)).done) { + entryIterator = getIterator(anObject(step.value)); + entryNext = entryIterator.next; + if ( + (first = entryNext.call(entryIterator)).done || + (second = entryNext.call(entryIterator)).done || + !entryNext.call(entryIterator).done + ) throw TypeError('Expected sequence with length 2'); + entries.push({ key: first.value + '', value: second.value + '' }); + } + } else for (key in init) if (hasOwn(init, key)) entries.push({ key: key, value: init[key] + '' }); + } else { + parseSearchParams(entries, typeof init === 'string' ? init.charAt(0) === '?' ? init.slice(1) : init : init + ''); + } + } +}; + +var URLSearchParamsPrototype = URLSearchParamsConstructor.prototype; + +redefineAll(URLSearchParamsPrototype, { + // `URLSearchParams.prototype.append` method + // https://url.spec.whatwg.org/#dom-urlsearchparams-append + append: function append(name, value) { + validateArgumentsLength(arguments.length, 2); + var state = getInternalParamsState(this); + state.entries.push({ key: name + '', value: value + '' }); + state.updateURL(); + }, + // `URLSearchParams.prototype.delete` method + // https://url.spec.whatwg.org/#dom-urlsearchparams-delete + 'delete': function (name) { + validateArgumentsLength(arguments.length, 1); + var state = getInternalParamsState(this); + var entries = state.entries; + var key = name + ''; + var index = 0; + while (index < entries.length) { + if (entries[index].key === key) entries.splice(index, 1); + else index++; + } + state.updateURL(); + }, + // `URLSearchParams.prototype.get` method + // https://url.spec.whatwg.org/#dom-urlsearchparams-get + get: function get(name) { + validateArgumentsLength(arguments.length, 1); + var entries = getInternalParamsState(this).entries; + var key = name + ''; + var index = 0; + for (; index < entries.length; index++) { + if (entries[index].key === key) return entries[index].value; + } + return null; + }, + // `URLSearchParams.prototype.getAll` method + // https://url.spec.whatwg.org/#dom-urlsearchparams-getall + getAll: function getAll(name) { + validateArgumentsLength(arguments.length, 1); + var entries = getInternalParamsState(this).entries; + var key = name + ''; + var result = []; + var index = 0; + for (; index < entries.length; index++) { + if (entries[index].key === key) result.push(entries[index].value); + } + return result; + }, + // `URLSearchParams.prototype.has` method + // https://url.spec.whatwg.org/#dom-urlsearchparams-has + has: function has(name) { + validateArgumentsLength(arguments.length, 1); + var entries = getInternalParamsState(this).entries; + var key = name + ''; + var index = 0; + while (index < entries.length) { + if (entries[index++].key === key) return true; + } + return false; + }, + // `URLSearchParams.prototype.set` method + // https://url.spec.whatwg.org/#dom-urlsearchparams-set + set: function set(name, value) { + validateArgumentsLength(arguments.length, 1); + var state = getInternalParamsState(this); + var entries = state.entries; + var found = false; + var key = name + ''; + var val = value + ''; + var index = 0; + var entry; + for (; index < entries.length; index++) { + entry = entries[index]; + if (entry.key === key) { + if (found) entries.splice(index--, 1); + else { + found = true; + entry.value = val; + } + } + } + if (!found) entries.push({ key: key, value: val }); + state.updateURL(); + }, + // `URLSearchParams.prototype.sort` method + // https://url.spec.whatwg.org/#dom-urlsearchparams-sort + sort: function sort() { + var state = getInternalParamsState(this); + var entries = state.entries; + // Array#sort is not stable in some engines + var slice = entries.slice(); + var entry, entriesIndex, sliceIndex; + entries.length = 0; + for (sliceIndex = 0; sliceIndex < slice.length; sliceIndex++) { + entry = slice[sliceIndex]; + for (entriesIndex = 0; entriesIndex < sliceIndex; entriesIndex++) { + if (entries[entriesIndex].key > entry.key) { + entries.splice(entriesIndex, 0, entry); + break; + } + } + if (entriesIndex === sliceIndex) entries.push(entry); + } + state.updateURL(); + }, + // `URLSearchParams.prototype.forEach` method + forEach: function forEach(callback /* , thisArg */) { + var entries = getInternalParamsState(this).entries; + var boundFunction = bind(callback, arguments.length > 1 ? arguments[1] : undefined, 3); + var index = 0; + var entry; + while (index < entries.length) { + entry = entries[index++]; + boundFunction(entry.value, entry.key, this); + } + }, + // `URLSearchParams.prototype.keys` method + keys: function keys() { + return new URLSearchParamsIterator(this, 'keys'); + }, + // `URLSearchParams.prototype.values` method + values: function values() { + return new URLSearchParamsIterator(this, 'values'); + }, + // `URLSearchParams.prototype.entries` method + entries: function entries() { + return new URLSearchParamsIterator(this, 'entries'); + } +}, { enumerable: true }); + +// `URLSearchParams.prototype[@@iterator]` method +redefine(URLSearchParamsPrototype, ITERATOR, URLSearchParamsPrototype.entries); + +// `URLSearchParams.prototype.toString` method +// https://url.spec.whatwg.org/#urlsearchparams-stringification-behavior +redefine(URLSearchParamsPrototype, 'toString', function toString() { + var entries = getInternalParamsState(this).entries; + var result = []; + var index = 0; + var entry; + while (index < entries.length) { + entry = entries[index++]; + result.push(serialize(entry.key) + '=' + serialize(entry.value)); + } return result.join('&'); +}, { enumerable: true }); + +setToStringTag(URLSearchParamsConstructor, URL_SEARCH_PARAMS); + +$({ global: true, forced: !USE_NATIVE_URL }, { + URLSearchParams: URLSearchParamsConstructor +}); + +// Wrap `fetch` for correct work with polyfilled `URLSearchParams` +// https://github.com/zloirock/core-js/issues/674 +if (!USE_NATIVE_URL && typeof $fetch == 'function' && typeof Headers == 'function') { + $({ global: true, enumerable: true, forced: true }, { + fetch: function fetch(input /* , init */) { + var args = [input]; + var init, body, headers; + if (arguments.length > 1) { + init = arguments[1]; + if (isObject(init)) { + body = init.body; + if (classof(body) === URL_SEARCH_PARAMS) { + headers = init.headers ? new Headers(init.headers) : new Headers(); + if (!headers.has('content-type')) { + headers.set('content-type', 'application/x-www-form-urlencoded;charset=UTF-8'); + } + init = create(init, { + body: createPropertyDescriptor(0, String(body)), + headers: createPropertyDescriptor(0, headers) + }); + } + } + args.push(init); + } return $fetch.apply(this, args); + } + }); +} + +module.exports = { + URLSearchParams: URLSearchParamsConstructor, + getState: getInternalParamsState +}; + + +/***/ }), + +/***/ 285: +/***/ (function(__unused_webpack_module, __unused_webpack_exports, __webpack_require__) { + +"use strict"; + +// TODO: in core-js@4, move /modules/ dependencies to public entries for better optimization by tools like `preset-env` +__webpack_require__(8783); +var $ = __webpack_require__(2109); +var DESCRIPTORS = __webpack_require__(9781); +var USE_NATIVE_URL = __webpack_require__(590); +var global = __webpack_require__(7854); +var defineProperties = __webpack_require__(6048); +var redefine = __webpack_require__(1320); +var anInstance = __webpack_require__(5787); +var has = __webpack_require__(6656); +var assign = __webpack_require__(1574); +var arrayFrom = __webpack_require__(8457); +var codeAt = __webpack_require__(8710).codeAt; +var toASCII = __webpack_require__(3197); +var setToStringTag = __webpack_require__(8003); +var URLSearchParamsModule = __webpack_require__(1637); +var InternalStateModule = __webpack_require__(9909); + +var NativeURL = global.URL; +var URLSearchParams = URLSearchParamsModule.URLSearchParams; +var getInternalSearchParamsState = URLSearchParamsModule.getState; +var setInternalState = InternalStateModule.set; +var getInternalURLState = InternalStateModule.getterFor('URL'); +var floor = Math.floor; +var pow = Math.pow; + +var INVALID_AUTHORITY = 'Invalid authority'; +var INVALID_SCHEME = 'Invalid scheme'; +var INVALID_HOST = 'Invalid host'; +var INVALID_PORT = 'Invalid port'; + +var ALPHA = /[A-Za-z]/; +var ALPHANUMERIC = /[\d+-.A-Za-z]/; +var DIGIT = /\d/; +var HEX_START = /^(0x|0X)/; +var OCT = /^[0-7]+$/; +var DEC = /^\d+$/; +var HEX = /^[\dA-Fa-f]+$/; +/* eslint-disable no-control-regex -- safe */ +var FORBIDDEN_HOST_CODE_POINT = /[\u0000\t\u000A\u000D #%/:?@[\\]]/; +var FORBIDDEN_HOST_CODE_POINT_EXCLUDING_PERCENT = /[\u0000\t\u000A\u000D #/:?@[\\]]/; +var LEADING_AND_TRAILING_C0_CONTROL_OR_SPACE = /^[\u0000-\u001F ]+|[\u0000-\u001F ]+$/g; +var TAB_AND_NEW_LINE = /[\t\u000A\u000D]/g; +/* eslint-enable no-control-regex -- safe */ +var EOF; + +var parseHost = function (url, input) { + var result, codePoints, index; + if (input.charAt(0) == '[') { + if (input.charAt(input.length - 1) != ']') return INVALID_HOST; + result = parseIPv6(input.slice(1, -1)); + if (!result) return INVALID_HOST; + url.host = result; + // opaque host + } else if (!isSpecial(url)) { + if (FORBIDDEN_HOST_CODE_POINT_EXCLUDING_PERCENT.test(input)) return INVALID_HOST; + result = ''; + codePoints = arrayFrom(input); + for (index = 0; index < codePoints.length; index++) { + result += percentEncode(codePoints[index], C0ControlPercentEncodeSet); + } + url.host = result; + } else { + input = toASCII(input); + if (FORBIDDEN_HOST_CODE_POINT.test(input)) return INVALID_HOST; + result = parseIPv4(input); + if (result === null) return INVALID_HOST; + url.host = result; + } +}; + +var parseIPv4 = function (input) { + var parts = input.split('.'); + var partsLength, numbers, index, part, radix, number, ipv4; + if (parts.length && parts[parts.length - 1] == '') { + parts.pop(); + } + partsLength = parts.length; + if (partsLength > 4) return input; + numbers = []; + for (index = 0; index < partsLength; index++) { + part = parts[index]; + if (part == '') return input; + radix = 10; + if (part.length > 1 && part.charAt(0) == '0') { + radix = HEX_START.test(part) ? 16 : 8; + part = part.slice(radix == 8 ? 1 : 2); + } + if (part === '') { + number = 0; + } else { + if (!(radix == 10 ? DEC : radix == 8 ? OCT : HEX).test(part)) return input; + number = parseInt(part, radix); + } + numbers.push(number); + } + for (index = 0; index < partsLength; index++) { + number = numbers[index]; + if (index == partsLength - 1) { + if (number >= pow(256, 5 - partsLength)) return null; + } else if (number > 255) return null; + } + ipv4 = numbers.pop(); + for (index = 0; index < numbers.length; index++) { + ipv4 += numbers[index] * pow(256, 3 - index); + } + return ipv4; +}; + +// eslint-disable-next-line max-statements -- TODO +var parseIPv6 = function (input) { + var address = [0, 0, 0, 0, 0, 0, 0, 0]; + var pieceIndex = 0; + var compress = null; + var pointer = 0; + var value, length, numbersSeen, ipv4Piece, number, swaps, swap; + + var char = function () { + return input.charAt(pointer); + }; + + if (char() == ':') { + if (input.charAt(1) != ':') return; + pointer += 2; + pieceIndex++; + compress = pieceIndex; + } + while (char()) { + if (pieceIndex == 8) return; + if (char() == ':') { + if (compress !== null) return; + pointer++; + pieceIndex++; + compress = pieceIndex; + continue; + } + value = length = 0; + while (length < 4 && HEX.test(char())) { + value = value * 16 + parseInt(char(), 16); + pointer++; + length++; + } + if (char() == '.') { + if (length == 0) return; + pointer -= length; + if (pieceIndex > 6) return; + numbersSeen = 0; + while (char()) { + ipv4Piece = null; + if (numbersSeen > 0) { + if (char() == '.' && numbersSeen < 4) pointer++; + else return; + } + if (!DIGIT.test(char())) return; + while (DIGIT.test(char())) { + number = parseInt(char(), 10); + if (ipv4Piece === null) ipv4Piece = number; + else if (ipv4Piece == 0) return; + else ipv4Piece = ipv4Piece * 10 + number; + if (ipv4Piece > 255) return; + pointer++; + } + address[pieceIndex] = address[pieceIndex] * 256 + ipv4Piece; + numbersSeen++; + if (numbersSeen == 2 || numbersSeen == 4) pieceIndex++; + } + if (numbersSeen != 4) return; + break; + } else if (char() == ':') { + pointer++; + if (!char()) return; + } else if (char()) return; + address[pieceIndex++] = value; + } + if (compress !== null) { + swaps = pieceIndex - compress; + pieceIndex = 7; + while (pieceIndex != 0 && swaps > 0) { + swap = address[pieceIndex]; + address[pieceIndex--] = address[compress + swaps - 1]; + address[compress + --swaps] = swap; + } + } else if (pieceIndex != 8) return; + return address; +}; + +var findLongestZeroSequence = function (ipv6) { + var maxIndex = null; + var maxLength = 1; + var currStart = null; + var currLength = 0; + var index = 0; + for (; index < 8; index++) { + if (ipv6[index] !== 0) { + if (currLength > maxLength) { + maxIndex = currStart; + maxLength = currLength; + } + currStart = null; + currLength = 0; + } else { + if (currStart === null) currStart = index; + ++currLength; + } + } + if (currLength > maxLength) { + maxIndex = currStart; + maxLength = currLength; + } + return maxIndex; +}; + +var serializeHost = function (host) { + var result, index, compress, ignore0; + // ipv4 + if (typeof host == 'number') { + result = []; + for (index = 0; index < 4; index++) { + result.unshift(host % 256); + host = floor(host / 256); + } return result.join('.'); + // ipv6 + } else if (typeof host == 'object') { + result = ''; + compress = findLongestZeroSequence(host); + for (index = 0; index < 8; index++) { + if (ignore0 && host[index] === 0) continue; + if (ignore0) ignore0 = false; + if (compress === index) { + result += index ? ':' : '::'; + ignore0 = true; + } else { + result += host[index].toString(16); + if (index < 7) result += ':'; + } + } + return '[' + result + ']'; + } return host; +}; + +var C0ControlPercentEncodeSet = {}; +var fragmentPercentEncodeSet = assign({}, C0ControlPercentEncodeSet, { + ' ': 1, '"': 1, '<': 1, '>': 1, '`': 1 +}); +var pathPercentEncodeSet = assign({}, fragmentPercentEncodeSet, { + '#': 1, '?': 1, '{': 1, '}': 1 +}); +var userinfoPercentEncodeSet = assign({}, pathPercentEncodeSet, { + '/': 1, ':': 1, ';': 1, '=': 1, '@': 1, '[': 1, '\\': 1, ']': 1, '^': 1, '|': 1 +}); + +var percentEncode = function (char, set) { + var code = codeAt(char, 0); + return code > 0x20 && code < 0x7F && !has(set, char) ? char : encodeURIComponent(char); +}; + +var specialSchemes = { + ftp: 21, + file: null, + http: 80, + https: 443, + ws: 80, + wss: 443 +}; + +var isSpecial = function (url) { + return has(specialSchemes, url.scheme); +}; + +var includesCredentials = function (url) { + return url.username != '' || url.password != ''; +}; + +var cannotHaveUsernamePasswordPort = function (url) { + return !url.host || url.cannotBeABaseURL || url.scheme == 'file'; +}; + +var isWindowsDriveLetter = function (string, normalized) { + var second; + return string.length == 2 && ALPHA.test(string.charAt(0)) + && ((second = string.charAt(1)) == ':' || (!normalized && second == '|')); +}; + +var startsWithWindowsDriveLetter = function (string) { + var third; + return string.length > 1 && isWindowsDriveLetter(string.slice(0, 2)) && ( + string.length == 2 || + ((third = string.charAt(2)) === '/' || third === '\\' || third === '?' || third === '#') + ); +}; + +var shortenURLsPath = function (url) { + var path = url.path; + var pathSize = path.length; + if (pathSize && (url.scheme != 'file' || pathSize != 1 || !isWindowsDriveLetter(path[0], true))) { + path.pop(); + } +}; + +var isSingleDot = function (segment) { + return segment === '.' || segment.toLowerCase() === '%2e'; +}; + +var isDoubleDot = function (segment) { + segment = segment.toLowerCase(); + return segment === '..' || segment === '%2e.' || segment === '.%2e' || segment === '%2e%2e'; +}; + +// States: +var SCHEME_START = {}; +var SCHEME = {}; +var NO_SCHEME = {}; +var SPECIAL_RELATIVE_OR_AUTHORITY = {}; +var PATH_OR_AUTHORITY = {}; +var RELATIVE = {}; +var RELATIVE_SLASH = {}; +var SPECIAL_AUTHORITY_SLASHES = {}; +var SPECIAL_AUTHORITY_IGNORE_SLASHES = {}; +var AUTHORITY = {}; +var HOST = {}; +var HOSTNAME = {}; +var PORT = {}; +var FILE = {}; +var FILE_SLASH = {}; +var FILE_HOST = {}; +var PATH_START = {}; +var PATH = {}; +var CANNOT_BE_A_BASE_URL_PATH = {}; +var QUERY = {}; +var FRAGMENT = {}; + +// eslint-disable-next-line max-statements -- TODO +var parseURL = function (url, input, stateOverride, base) { + var state = stateOverride || SCHEME_START; + var pointer = 0; + var buffer = ''; + var seenAt = false; + var seenBracket = false; + var seenPasswordToken = false; + var codePoints, char, bufferCodePoints, failure; + + if (!stateOverride) { + url.scheme = ''; + url.username = ''; + url.password = ''; + url.host = null; + url.port = null; + url.path = []; + url.query = null; + url.fragment = null; + url.cannotBeABaseURL = false; + input = input.replace(LEADING_AND_TRAILING_C0_CONTROL_OR_SPACE, ''); + } + + input = input.replace(TAB_AND_NEW_LINE, ''); + + codePoints = arrayFrom(input); + + while (pointer <= codePoints.length) { + char = codePoints[pointer]; + switch (state) { + case SCHEME_START: + if (char && ALPHA.test(char)) { + buffer += char.toLowerCase(); + state = SCHEME; + } else if (!stateOverride) { + state = NO_SCHEME; + continue; + } else return INVALID_SCHEME; + break; + + case SCHEME: + if (char && (ALPHANUMERIC.test(char) || char == '+' || char == '-' || char == '.')) { + buffer += char.toLowerCase(); + } else if (char == ':') { + if (stateOverride && ( + (isSpecial(url) != has(specialSchemes, buffer)) || + (buffer == 'file' && (includesCredentials(url) || url.port !== null)) || + (url.scheme == 'file' && !url.host) + )) return; + url.scheme = buffer; + if (stateOverride) { + if (isSpecial(url) && specialSchemes[url.scheme] == url.port) url.port = null; + return; + } + buffer = ''; + if (url.scheme == 'file') { + state = FILE; + } else if (isSpecial(url) && base && base.scheme == url.scheme) { + state = SPECIAL_RELATIVE_OR_AUTHORITY; + } else if (isSpecial(url)) { + state = SPECIAL_AUTHORITY_SLASHES; + } else if (codePoints[pointer + 1] == '/') { + state = PATH_OR_AUTHORITY; + pointer++; + } else { + url.cannotBeABaseURL = true; + url.path.push(''); + state = CANNOT_BE_A_BASE_URL_PATH; + } + } else if (!stateOverride) { + buffer = ''; + state = NO_SCHEME; + pointer = 0; + continue; + } else return INVALID_SCHEME; + break; + + case NO_SCHEME: + if (!base || (base.cannotBeABaseURL && char != '#')) return INVALID_SCHEME; + if (base.cannotBeABaseURL && char == '#') { + url.scheme = base.scheme; + url.path = base.path.slice(); + url.query = base.query; + url.fragment = ''; + url.cannotBeABaseURL = true; + state = FRAGMENT; + break; + } + state = base.scheme == 'file' ? FILE : RELATIVE; + continue; + + case SPECIAL_RELATIVE_OR_AUTHORITY: + if (char == '/' && codePoints[pointer + 1] == '/') { + state = SPECIAL_AUTHORITY_IGNORE_SLASHES; + pointer++; + } else { + state = RELATIVE; + continue; + } break; + + case PATH_OR_AUTHORITY: + if (char == '/') { + state = AUTHORITY; + break; + } else { + state = PATH; + continue; + } + + case RELATIVE: + url.scheme = base.scheme; + if (char == EOF) { + url.username = base.username; + url.password = base.password; + url.host = base.host; + url.port = base.port; + url.path = base.path.slice(); + url.query = base.query; + } else if (char == '/' || (char == '\\' && isSpecial(url))) { + state = RELATIVE_SLASH; + } else if (char == '?') { + url.username = base.username; + url.password = base.password; + url.host = base.host; + url.port = base.port; + url.path = base.path.slice(); + url.query = ''; + state = QUERY; + } else if (char == '#') { + url.username = base.username; + url.password = base.password; + url.host = base.host; + url.port = base.port; + url.path = base.path.slice(); + url.query = base.query; + url.fragment = ''; + state = FRAGMENT; + } else { + url.username = base.username; + url.password = base.password; + url.host = base.host; + url.port = base.port; + url.path = base.path.slice(); + url.path.pop(); + state = PATH; + continue; + } break; + + case RELATIVE_SLASH: + if (isSpecial(url) && (char == '/' || char == '\\')) { + state = SPECIAL_AUTHORITY_IGNORE_SLASHES; + } else if (char == '/') { + state = AUTHORITY; + } else { + url.username = base.username; + url.password = base.password; + url.host = base.host; + url.port = base.port; + state = PATH; + continue; + } break; + + case SPECIAL_AUTHORITY_SLASHES: + state = SPECIAL_AUTHORITY_IGNORE_SLASHES; + if (char != '/' || buffer.charAt(pointer + 1) != '/') continue; + pointer++; + break; + + case SPECIAL_AUTHORITY_IGNORE_SLASHES: + if (char != '/' && char != '\\') { + state = AUTHORITY; + continue; + } break; + + case AUTHORITY: + if (char == '@') { + if (seenAt) buffer = '%40' + buffer; + seenAt = true; + bufferCodePoints = arrayFrom(buffer); + for (var i = 0; i < bufferCodePoints.length; i++) { + var codePoint = bufferCodePoints[i]; + if (codePoint == ':' && !seenPasswordToken) { + seenPasswordToken = true; + continue; + } + var encodedCodePoints = percentEncode(codePoint, userinfoPercentEncodeSet); + if (seenPasswordToken) url.password += encodedCodePoints; + else url.username += encodedCodePoints; + } + buffer = ''; + } else if ( + char == EOF || char == '/' || char == '?' || char == '#' || + (char == '\\' && isSpecial(url)) + ) { + if (seenAt && buffer == '') return INVALID_AUTHORITY; + pointer -= arrayFrom(buffer).length + 1; + buffer = ''; + state = HOST; + } else buffer += char; + break; + + case HOST: + case HOSTNAME: + if (stateOverride && url.scheme == 'file') { + state = FILE_HOST; + continue; + } else if (char == ':' && !seenBracket) { + if (buffer == '') return INVALID_HOST; + failure = parseHost(url, buffer); + if (failure) return failure; + buffer = ''; + state = PORT; + if (stateOverride == HOSTNAME) return; + } else if ( + char == EOF || char == '/' || char == '?' || char == '#' || + (char == '\\' && isSpecial(url)) + ) { + if (isSpecial(url) && buffer == '') return INVALID_HOST; + if (stateOverride && buffer == '' && (includesCredentials(url) || url.port !== null)) return; + failure = parseHost(url, buffer); + if (failure) return failure; + buffer = ''; + state = PATH_START; + if (stateOverride) return; + continue; + } else { + if (char == '[') seenBracket = true; + else if (char == ']') seenBracket = false; + buffer += char; + } break; + + case PORT: + if (DIGIT.test(char)) { + buffer += char; + } else if ( + char == EOF || char == '/' || char == '?' || char == '#' || + (char == '\\' && isSpecial(url)) || + stateOverride + ) { + if (buffer != '') { + var port = parseInt(buffer, 10); + if (port > 0xFFFF) return INVALID_PORT; + url.port = (isSpecial(url) && port === specialSchemes[url.scheme]) ? null : port; + buffer = ''; + } + if (stateOverride) return; + state = PATH_START; + continue; + } else return INVALID_PORT; + break; + + case FILE: + url.scheme = 'file'; + if (char == '/' || char == '\\') state = FILE_SLASH; + else if (base && base.scheme == 'file') { + if (char == EOF) { + url.host = base.host; + url.path = base.path.slice(); + url.query = base.query; + } else if (char == '?') { + url.host = base.host; + url.path = base.path.slice(); + url.query = ''; + state = QUERY; + } else if (char == '#') { + url.host = base.host; + url.path = base.path.slice(); + url.query = base.query; + url.fragment = ''; + state = FRAGMENT; + } else { + if (!startsWithWindowsDriveLetter(codePoints.slice(pointer).join(''))) { + url.host = base.host; + url.path = base.path.slice(); + shortenURLsPath(url); + } + state = PATH; + continue; + } + } else { + state = PATH; + continue; + } break; + + case FILE_SLASH: + if (char == '/' || char == '\\') { + state = FILE_HOST; + break; + } + if (base && base.scheme == 'file' && !startsWithWindowsDriveLetter(codePoints.slice(pointer).join(''))) { + if (isWindowsDriveLetter(base.path[0], true)) url.path.push(base.path[0]); + else url.host = base.host; + } + state = PATH; + continue; + + case FILE_HOST: + if (char == EOF || char == '/' || char == '\\' || char == '?' || char == '#') { + if (!stateOverride && isWindowsDriveLetter(buffer)) { + state = PATH; + } else if (buffer == '') { + url.host = ''; + if (stateOverride) return; + state = PATH_START; + } else { + failure = parseHost(url, buffer); + if (failure) return failure; + if (url.host == 'localhost') url.host = ''; + if (stateOverride) return; + buffer = ''; + state = PATH_START; + } continue; + } else buffer += char; + break; + + case PATH_START: + if (isSpecial(url)) { + state = PATH; + if (char != '/' && char != '\\') continue; + } else if (!stateOverride && char == '?') { + url.query = ''; + state = QUERY; + } else if (!stateOverride && char == '#') { + url.fragment = ''; + state = FRAGMENT; + } else if (char != EOF) { + state = PATH; + if (char != '/') continue; + } break; + + case PATH: + if ( + char == EOF || char == '/' || + (char == '\\' && isSpecial(url)) || + (!stateOverride && (char == '?' || char == '#')) + ) { + if (isDoubleDot(buffer)) { + shortenURLsPath(url); + if (char != '/' && !(char == '\\' && isSpecial(url))) { + url.path.push(''); + } + } else if (isSingleDot(buffer)) { + if (char != '/' && !(char == '\\' && isSpecial(url))) { + url.path.push(''); + } + } else { + if (url.scheme == 'file' && !url.path.length && isWindowsDriveLetter(buffer)) { + if (url.host) url.host = ''; + buffer = buffer.charAt(0) + ':'; // normalize windows drive letter + } + url.path.push(buffer); + } + buffer = ''; + if (url.scheme == 'file' && (char == EOF || char == '?' || char == '#')) { + while (url.path.length > 1 && url.path[0] === '') { + url.path.shift(); + } + } + if (char == '?') { + url.query = ''; + state = QUERY; + } else if (char == '#') { + url.fragment = ''; + state = FRAGMENT; + } + } else { + buffer += percentEncode(char, pathPercentEncodeSet); + } break; + + case CANNOT_BE_A_BASE_URL_PATH: + if (char == '?') { + url.query = ''; + state = QUERY; + } else if (char == '#') { + url.fragment = ''; + state = FRAGMENT; + } else if (char != EOF) { + url.path[0] += percentEncode(char, C0ControlPercentEncodeSet); + } break; + + case QUERY: + if (!stateOverride && char == '#') { + url.fragment = ''; + state = FRAGMENT; + } else if (char != EOF) { + if (char == "'" && isSpecial(url)) url.query += '%27'; + else if (char == '#') url.query += '%23'; + else url.query += percentEncode(char, C0ControlPercentEncodeSet); + } break; + + case FRAGMENT: + if (char != EOF) url.fragment += percentEncode(char, fragmentPercentEncodeSet); + break; + } + + pointer++; + } +}; + +// `URL` constructor +// https://url.spec.whatwg.org/#url-class +var URLConstructor = function URL(url /* , base */) { + var that = anInstance(this, URLConstructor, 'URL'); + var base = arguments.length > 1 ? arguments[1] : undefined; + var urlString = String(url); + var state = setInternalState(that, { type: 'URL' }); + var baseState, failure; + if (base !== undefined) { + if (base instanceof URLConstructor) baseState = getInternalURLState(base); + else { + failure = parseURL(baseState = {}, String(base)); + if (failure) throw TypeError(failure); + } + } + failure = parseURL(state, urlString, null, baseState); + if (failure) throw TypeError(failure); + var searchParams = state.searchParams = new URLSearchParams(); + var searchParamsState = getInternalSearchParamsState(searchParams); + searchParamsState.updateSearchParams(state.query); + searchParamsState.updateURL = function () { + state.query = String(searchParams) || null; + }; + if (!DESCRIPTORS) { + that.href = serializeURL.call(that); + that.origin = getOrigin.call(that); + that.protocol = getProtocol.call(that); + that.username = getUsername.call(that); + that.password = getPassword.call(that); + that.host = getHost.call(that); + that.hostname = getHostname.call(that); + that.port = getPort.call(that); + that.pathname = getPathname.call(that); + that.search = getSearch.call(that); + that.searchParams = getSearchParams.call(that); + that.hash = getHash.call(that); + } +}; + +var URLPrototype = URLConstructor.prototype; + +var serializeURL = function () { + var url = getInternalURLState(this); + var scheme = url.scheme; + var username = url.username; + var password = url.password; + var host = url.host; + var port = url.port; + var path = url.path; + var query = url.query; + var fragment = url.fragment; + var output = scheme + ':'; + if (host !== null) { + output += '//'; + if (includesCredentials(url)) { + output += username + (password ? ':' + password : '') + '@'; + } + output += serializeHost(host); + if (port !== null) output += ':' + port; + } else if (scheme == 'file') output += '//'; + output += url.cannotBeABaseURL ? path[0] : path.length ? '/' + path.join('/') : ''; + if (query !== null) output += '?' + query; + if (fragment !== null) output += '#' + fragment; + return output; +}; + +var getOrigin = function () { + var url = getInternalURLState(this); + var scheme = url.scheme; + var port = url.port; + if (scheme == 'blob') try { + return new URL(scheme.path[0]).origin; + } catch (error) { + return 'null'; + } + if (scheme == 'file' || !isSpecial(url)) return 'null'; + return scheme + '://' + serializeHost(url.host) + (port !== null ? ':' + port : ''); +}; + +var getProtocol = function () { + return getInternalURLState(this).scheme + ':'; +}; + +var getUsername = function () { + return getInternalURLState(this).username; +}; + +var getPassword = function () { + return getInternalURLState(this).password; +}; + +var getHost = function () { + var url = getInternalURLState(this); + var host = url.host; + var port = url.port; + return host === null ? '' + : port === null ? serializeHost(host) + : serializeHost(host) + ':' + port; +}; + +var getHostname = function () { + var host = getInternalURLState(this).host; + return host === null ? '' : serializeHost(host); +}; + +var getPort = function () { + var port = getInternalURLState(this).port; + return port === null ? '' : String(port); +}; + +var getPathname = function () { + var url = getInternalURLState(this); + var path = url.path; + return url.cannotBeABaseURL ? path[0] : path.length ? '/' + path.join('/') : ''; +}; + +var getSearch = function () { + var query = getInternalURLState(this).query; + return query ? '?' + query : ''; +}; + +var getSearchParams = function () { + return getInternalURLState(this).searchParams; +}; + +var getHash = function () { + var fragment = getInternalURLState(this).fragment; + return fragment ? '#' + fragment : ''; +}; + +var accessorDescriptor = function (getter, setter) { + return { get: getter, set: setter, configurable: true, enumerable: true }; +}; + +if (DESCRIPTORS) { + defineProperties(URLPrototype, { + // `URL.prototype.href` accessors pair + // https://url.spec.whatwg.org/#dom-url-href + href: accessorDescriptor(serializeURL, function (href) { + var url = getInternalURLState(this); + var urlString = String(href); + var failure = parseURL(url, urlString); + if (failure) throw TypeError(failure); + getInternalSearchParamsState(url.searchParams).updateSearchParams(url.query); + }), + // `URL.prototype.origin` getter + // https://url.spec.whatwg.org/#dom-url-origin + origin: accessorDescriptor(getOrigin), + // `URL.prototype.protocol` accessors pair + // https://url.spec.whatwg.org/#dom-url-protocol + protocol: accessorDescriptor(getProtocol, function (protocol) { + var url = getInternalURLState(this); + parseURL(url, String(protocol) + ':', SCHEME_START); + }), + // `URL.prototype.username` accessors pair + // https://url.spec.whatwg.org/#dom-url-username + username: accessorDescriptor(getUsername, function (username) { + var url = getInternalURLState(this); + var codePoints = arrayFrom(String(username)); + if (cannotHaveUsernamePasswordPort(url)) return; + url.username = ''; + for (var i = 0; i < codePoints.length; i++) { + url.username += percentEncode(codePoints[i], userinfoPercentEncodeSet); + } + }), + // `URL.prototype.password` accessors pair + // https://url.spec.whatwg.org/#dom-url-password + password: accessorDescriptor(getPassword, function (password) { + var url = getInternalURLState(this); + var codePoints = arrayFrom(String(password)); + if (cannotHaveUsernamePasswordPort(url)) return; + url.password = ''; + for (var i = 0; i < codePoints.length; i++) { + url.password += percentEncode(codePoints[i], userinfoPercentEncodeSet); + } + }), + // `URL.prototype.host` accessors pair + // https://url.spec.whatwg.org/#dom-url-host + host: accessorDescriptor(getHost, function (host) { + var url = getInternalURLState(this); + if (url.cannotBeABaseURL) return; + parseURL(url, String(host), HOST); + }), + // `URL.prototype.hostname` accessors pair + // https://url.spec.whatwg.org/#dom-url-hostname + hostname: accessorDescriptor(getHostname, function (hostname) { + var url = getInternalURLState(this); + if (url.cannotBeABaseURL) return; + parseURL(url, String(hostname), HOSTNAME); + }), + // `URL.prototype.port` accessors pair + // https://url.spec.whatwg.org/#dom-url-port + port: accessorDescriptor(getPort, function (port) { + var url = getInternalURLState(this); + if (cannotHaveUsernamePasswordPort(url)) return; + port = String(port); + if (port == '') url.port = null; + else parseURL(url, port, PORT); + }), + // `URL.prototype.pathname` accessors pair + // https://url.spec.whatwg.org/#dom-url-pathname + pathname: accessorDescriptor(getPathname, function (pathname) { + var url = getInternalURLState(this); + if (url.cannotBeABaseURL) return; + url.path = []; + parseURL(url, pathname + '', PATH_START); + }), + // `URL.prototype.search` accessors pair + // https://url.spec.whatwg.org/#dom-url-search + search: accessorDescriptor(getSearch, function (search) { + var url = getInternalURLState(this); + search = String(search); + if (search == '') { + url.query = null; + } else { + if ('?' == search.charAt(0)) search = search.slice(1); + url.query = ''; + parseURL(url, search, QUERY); + } + getInternalSearchParamsState(url.searchParams).updateSearchParams(url.query); + }), + // `URL.prototype.searchParams` getter + // https://url.spec.whatwg.org/#dom-url-searchparams + searchParams: accessorDescriptor(getSearchParams), + // `URL.prototype.hash` accessors pair + // https://url.spec.whatwg.org/#dom-url-hash + hash: accessorDescriptor(getHash, function (hash) { + var url = getInternalURLState(this); + hash = String(hash); + if (hash == '') { + url.fragment = null; + return; + } + if ('#' == hash.charAt(0)) hash = hash.slice(1); + url.fragment = ''; + parseURL(url, hash, FRAGMENT); + }) + }); +} + +// `URL.prototype.toJSON` method +// https://url.spec.whatwg.org/#dom-url-tojson +redefine(URLPrototype, 'toJSON', function toJSON() { + return serializeURL.call(this); +}, { enumerable: true }); + +// `URL.prototype.toString` method +// https://url.spec.whatwg.org/#URL-stringification-behavior +redefine(URLPrototype, 'toString', function toString() { + return serializeURL.call(this); +}, { enumerable: true }); + +if (NativeURL) { + var nativeCreateObjectURL = NativeURL.createObjectURL; + var nativeRevokeObjectURL = NativeURL.revokeObjectURL; + // `URL.createObjectURL` method + // https://developer.mozilla.org/en-US/docs/Web/API/URL/createObjectURL + // eslint-disable-next-line no-unused-vars -- required for `.length` + if (nativeCreateObjectURL) redefine(URLConstructor, 'createObjectURL', function createObjectURL(blob) { + return nativeCreateObjectURL.apply(NativeURL, arguments); + }); + // `URL.revokeObjectURL` method + // https://developer.mozilla.org/en-US/docs/Web/API/URL/revokeObjectURL + // eslint-disable-next-line no-unused-vars -- required for `.length` + if (nativeRevokeObjectURL) redefine(URLConstructor, 'revokeObjectURL', function revokeObjectURL(url) { + return nativeRevokeObjectURL.apply(NativeURL, arguments); + }); +} + +setToStringTag(URLConstructor, 'URL'); + +$({ global: true, forced: !USE_NATIVE_URL, sham: !DESCRIPTORS }, { + URL: URLConstructor +}); + + +/***/ }) + +/******/ }); +/************************************************************************/ +/******/ // The module cache +/******/ var __webpack_module_cache__ = {}; +/******/ +/******/ // The require function +/******/ function __webpack_require__(moduleId) { +/******/ // Check if module is in cache +/******/ if(__webpack_module_cache__[moduleId]) { +/******/ return __webpack_module_cache__[moduleId].exports; +/******/ } +/******/ // Create a new module (and put it into the cache) +/******/ var module = __webpack_module_cache__[moduleId] = { +/******/ // no module.id needed +/******/ // no module.loaded needed +/******/ exports: {} +/******/ }; +/******/ +/******/ // Execute the module function +/******/ __webpack_modules__[moduleId](module, module.exports, __webpack_require__); +/******/ +/******/ // Return the exports of the module +/******/ return module.exports; +/******/ } +/******/ +/************************************************************************/ +/******/ /* webpack/runtime/define property getters */ +/******/ !function() { +/******/ // define getter functions for harmony exports +/******/ __webpack_require__.d = function(exports, definition) { +/******/ for(var key in definition) { +/******/ if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) { +/******/ Object.defineProperty(exports, key, { enumerable: true, get: definition[key] }); +/******/ } +/******/ } +/******/ }; +/******/ }(); +/******/ +/******/ /* webpack/runtime/global */ +/******/ !function() { +/******/ __webpack_require__.g = (function() { +/******/ if (typeof globalThis === 'object') return globalThis; +/******/ try { +/******/ return this || new Function('return this')(); +/******/ } catch (e) { +/******/ if (typeof window === 'object') return window; +/******/ } +/******/ })(); +/******/ }(); +/******/ +/******/ /* webpack/runtime/hasOwnProperty shorthand */ +/******/ !function() { +/******/ __webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); } +/******/ }(); +/******/ +/******/ /* webpack/runtime/make namespace object */ +/******/ !function() { +/******/ // define __esModule on exports +/******/ __webpack_require__.r = function(exports) { +/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) { +/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' }); +/******/ } +/******/ Object.defineProperty(exports, '__esModule', { value: true }); +/******/ }; +/******/ }(); +/******/ +/************************************************************************/ +var __webpack_exports__ = {}; +// This entry need to be wrapped in an IIFE because it need to be in strict mode. +!function() { +"use strict"; +// ESM COMPAT FLAG +__webpack_require__.r(__webpack_exports__); + +// EXPORTS +__webpack_require__.d(__webpack_exports__, { + "Dropzone": function() { return /* reexport */ Dropzone; }, + "default": function() { return /* binding */ dropzone_dist; } +}); + +// EXTERNAL MODULE: ./node_modules/core-js/modules/es.array.concat.js +var es_array_concat = __webpack_require__(2222); +// EXTERNAL MODULE: ./node_modules/core-js/modules/es.array.filter.js +var es_array_filter = __webpack_require__(7327); +// EXTERNAL MODULE: ./node_modules/core-js/modules/es.array.index-of.js +var es_array_index_of = __webpack_require__(2772); +// EXTERNAL MODULE: ./node_modules/core-js/modules/es.array.iterator.js +var es_array_iterator = __webpack_require__(6992); +// EXTERNAL MODULE: ./node_modules/core-js/modules/es.array.map.js +var es_array_map = __webpack_require__(1249); +// EXTERNAL MODULE: ./node_modules/core-js/modules/es.array.slice.js +var es_array_slice = __webpack_require__(7042); +// EXTERNAL MODULE: ./node_modules/core-js/modules/es.array.splice.js +var es_array_splice = __webpack_require__(561); +// EXTERNAL MODULE: ./node_modules/core-js/modules/es.array-buffer.constructor.js +var es_array_buffer_constructor = __webpack_require__(8264); +// EXTERNAL MODULE: ./node_modules/core-js/modules/es.function.name.js +var es_function_name = __webpack_require__(8309); +// EXTERNAL MODULE: ./node_modules/core-js/modules/es.object.get-prototype-of.js +var es_object_get_prototype_of = __webpack_require__(489); +// EXTERNAL MODULE: ./node_modules/core-js/modules/es.object.to-string.js +var es_object_to_string = __webpack_require__(1539); +// EXTERNAL MODULE: ./node_modules/core-js/modules/es.regexp.exec.js +var es_regexp_exec = __webpack_require__(4916); +// EXTERNAL MODULE: ./node_modules/core-js/modules/es.regexp.to-string.js +var es_regexp_to_string = __webpack_require__(9714); +// EXTERNAL MODULE: ./node_modules/core-js/modules/es.string.iterator.js +var es_string_iterator = __webpack_require__(8783); +// EXTERNAL MODULE: ./node_modules/core-js/modules/es.string.match.js +var es_string_match = __webpack_require__(4723); +// EXTERNAL MODULE: ./node_modules/core-js/modules/es.string.replace.js +var es_string_replace = __webpack_require__(5306); +// EXTERNAL MODULE: ./node_modules/core-js/modules/es.string.split.js +var es_string_split = __webpack_require__(3123); +// EXTERNAL MODULE: ./node_modules/core-js/modules/es.string.trim.js +var es_string_trim = __webpack_require__(3210); +// EXTERNAL MODULE: ./node_modules/core-js/modules/es.typed-array.uint8-array.js +var es_typed_array_uint8_array = __webpack_require__(2472); +// EXTERNAL MODULE: ./node_modules/core-js/modules/es.typed-array.copy-within.js +var es_typed_array_copy_within = __webpack_require__(2990); +// EXTERNAL MODULE: ./node_modules/core-js/modules/es.typed-array.every.js +var es_typed_array_every = __webpack_require__(8927); +// EXTERNAL MODULE: ./node_modules/core-js/modules/es.typed-array.fill.js +var es_typed_array_fill = __webpack_require__(3105); +// EXTERNAL MODULE: ./node_modules/core-js/modules/es.typed-array.filter.js +var es_typed_array_filter = __webpack_require__(5035); +// EXTERNAL MODULE: ./node_modules/core-js/modules/es.typed-array.find.js +var es_typed_array_find = __webpack_require__(4345); +// EXTERNAL MODULE: ./node_modules/core-js/modules/es.typed-array.find-index.js +var es_typed_array_find_index = __webpack_require__(7174); +// EXTERNAL MODULE: ./node_modules/core-js/modules/es.typed-array.for-each.js +var es_typed_array_for_each = __webpack_require__(2846); +// EXTERNAL MODULE: ./node_modules/core-js/modules/es.typed-array.includes.js +var es_typed_array_includes = __webpack_require__(4731); +// EXTERNAL MODULE: ./node_modules/core-js/modules/es.typed-array.index-of.js +var es_typed_array_index_of = __webpack_require__(7209); +// EXTERNAL MODULE: ./node_modules/core-js/modules/es.typed-array.iterator.js +var es_typed_array_iterator = __webpack_require__(6319); +// EXTERNAL MODULE: ./node_modules/core-js/modules/es.typed-array.join.js +var es_typed_array_join = __webpack_require__(8867); +// EXTERNAL MODULE: ./node_modules/core-js/modules/es.typed-array.last-index-of.js +var es_typed_array_last_index_of = __webpack_require__(7789); +// EXTERNAL MODULE: ./node_modules/core-js/modules/es.typed-array.map.js +var es_typed_array_map = __webpack_require__(3739); +// EXTERNAL MODULE: ./node_modules/core-js/modules/es.typed-array.reduce.js +var es_typed_array_reduce = __webpack_require__(9368); +// EXTERNAL MODULE: ./node_modules/core-js/modules/es.typed-array.reduce-right.js +var es_typed_array_reduce_right = __webpack_require__(4483); +// EXTERNAL MODULE: ./node_modules/core-js/modules/es.typed-array.reverse.js +var es_typed_array_reverse = __webpack_require__(2056); +// EXTERNAL MODULE: ./node_modules/core-js/modules/es.typed-array.set.js +var es_typed_array_set = __webpack_require__(3462); +// EXTERNAL MODULE: ./node_modules/core-js/modules/es.typed-array.slice.js +var es_typed_array_slice = __webpack_require__(678); +// EXTERNAL MODULE: ./node_modules/core-js/modules/es.typed-array.some.js +var es_typed_array_some = __webpack_require__(7462); +// EXTERNAL MODULE: ./node_modules/core-js/modules/es.typed-array.sort.js +var es_typed_array_sort = __webpack_require__(3824); +// EXTERNAL MODULE: ./node_modules/core-js/modules/es.typed-array.subarray.js +var es_typed_array_subarray = __webpack_require__(5021); +// EXTERNAL MODULE: ./node_modules/core-js/modules/es.typed-array.to-locale-string.js +var es_typed_array_to_locale_string = __webpack_require__(2974); +// EXTERNAL MODULE: ./node_modules/core-js/modules/es.typed-array.to-string.js +var es_typed_array_to_string = __webpack_require__(5016); +// EXTERNAL MODULE: ./node_modules/core-js/modules/web.dom-collections.for-each.js +var web_dom_collections_for_each = __webpack_require__(4747); +// EXTERNAL MODULE: ./node_modules/core-js/modules/web.dom-collections.iterator.js +var web_dom_collections_iterator = __webpack_require__(3948); +// EXTERNAL MODULE: ./node_modules/core-js/modules/web.url.js +var web_url = __webpack_require__(285); +;// CONCATENATED MODULE: ./src/emitter.js + + +function _createForOfIteratorHelper(o, allowArrayLike) { var it; if (typeof Symbol === "undefined" || o[Symbol.iterator] == null) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = o[Symbol.iterator](); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; } + +function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); } + +function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; } + +function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } + +function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } + +function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } + +// The Emitter class provides the ability to call `.on()` on Dropzone to listen +// to events. +// It is strongly based on component's emitter class, and I removed the +// functionality because of the dependency hell with different frameworks. +var Emitter = /*#__PURE__*/function () { + function Emitter() { + _classCallCheck(this, Emitter); + } + + _createClass(Emitter, [{ + key: "on", + value: // Add an event listener for given event + function on(event, fn) { + this._callbacks = this._callbacks || {}; // Create namespace for this event + + if (!this._callbacks[event]) { + this._callbacks[event] = []; + } + + this._callbacks[event].push(fn); + + return this; + } + }, { + key: "emit", + value: function emit(event) { + this._callbacks = this._callbacks || {}; + var callbacks = this._callbacks[event]; + + for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) { + args[_key - 1] = arguments[_key]; + } + + if (callbacks) { + var _iterator = _createForOfIteratorHelper(callbacks, true), + _step; + + try { + for (_iterator.s(); !(_step = _iterator.n()).done;) { + var callback = _step.value; + callback.apply(this, args); + } + } catch (err) { + _iterator.e(err); + } finally { + _iterator.f(); + } + } // trigger a corresponding DOM event + + + if (this.element) { + this.element.dispatchEvent(this.makeEvent("dropzone:" + event, { + args: args + })); + } + + return this; + } + }, { + key: "makeEvent", + value: function makeEvent(eventName, detail) { + var params = { + bubbles: true, + cancelable: true, + detail: detail + }; + + if (typeof window.CustomEvent === "function") { + return new CustomEvent(eventName, params); + } else { + // IE 11 support + // https://developer.mozilla.org/en-US/docs/Web/API/CustomEvent/CustomEvent + var evt = document.createEvent("CustomEvent"); + evt.initCustomEvent(eventName, params.bubbles, params.cancelable, params.detail); + return evt; + } + } // Remove event listener for given event. If fn is not provided, all event + // listeners for that event will be removed. If neither is provided, all + // event listeners will be removed. + + }, { + key: "off", + value: function off(event, fn) { + if (!this._callbacks || arguments.length === 0) { + this._callbacks = {}; + return this; + } // specific event + + + var callbacks = this._callbacks[event]; + + if (!callbacks) { + return this; + } // remove all handlers + + + if (arguments.length === 1) { + delete this._callbacks[event]; + return this; + } // remove specific handler + + + for (var i = 0; i < callbacks.length; i++) { + var callback = callbacks[i]; + + if (callback === fn) { + callbacks.splice(i, 1); + break; + } + } + + return this; + } + }]); + + return Emitter; +}(); + + +;// CONCATENATED MODULE: ./src/preview-template.html +// Module +var code = "
    Check
    Error
    "; +// Exports +/* harmony default export */ var preview_template = (code); +;// CONCATENATED MODULE: ./src/options.js + + + + + +function options_createForOfIteratorHelper(o, allowArrayLike) { var it; if (typeof Symbol === "undefined" || o[Symbol.iterator] == null) { if (Array.isArray(o) || (it = options_unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = o[Symbol.iterator](); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; } + +function options_unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return options_arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return options_arrayLikeToArray(o, minLen); } + +function options_arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; } + + + +var defaultOptions = { + /** + * Has to be specified on elements other than form (or when the form + * doesn't have an `action` attribute). You can also + * provide a function that will be called with `files` and + * must return the url (since `v3.12.0`) + */ + url: null, + + /** + * Can be changed to `"put"` if necessary. You can also provide a function + * that will be called with `files` and must return the method (since `v3.12.0`). + */ + method: "post", + + /** + * Will be set on the XHRequest. + */ + withCredentials: false, + + /** + * The timeout for the XHR requests in milliseconds (since `v4.4.0`). + * If set to null or 0, no timeout is going to be set. + */ + timeout: null, + + /** + * How many file uploads to process in parallel (See the + * Enqueuing file uploads documentation section for more info) + */ + parallelUploads: 2, + + /** + * Whether to send multiple files in one request. If + * this it set to true, then the fallback file input element will + * have the `multiple` attribute as well. This option will + * also trigger additional events (like `processingmultiple`). See the events + * documentation section for more information. + */ + uploadMultiple: false, + + /** + * Whether you want files to be uploaded in chunks to your server. This can't be + * used in combination with `uploadMultiple`. + * + * See [chunksUploaded](#config-chunksUploaded) for the callback to finalise an upload. + */ + chunking: false, + + /** + * If `chunking` is enabled, this defines whether **every** file should be chunked, + * even if the file size is below chunkSize. This means, that the additional chunk + * form data will be submitted and the `chunksUploaded` callback will be invoked. + */ + forceChunking: false, + + /** + * If `chunking` is `true`, then this defines the chunk size in bytes. + */ + chunkSize: 2000000, + + /** + * If `true`, the individual chunks of a file are being uploaded simultaneously. + */ + parallelChunkUploads: false, + + /** + * Whether a chunk should be retried if it fails. + */ + retryChunks: false, + + /** + * If `retryChunks` is true, how many times should it be retried. + */ + retryChunksLimit: 3, + + /** + * The maximum filesize (in bytes) that is allowed to be uploaded. + */ + maxFilesize: 256, + + /** + * The name of the file param that gets transferred. + * **NOTE**: If you have the option `uploadMultiple` set to `true`, then + * Dropzone will append `[]` to the name. + */ + paramName: "file", + + /** + * Whether thumbnails for images should be generated + */ + createImageThumbnails: true, + + /** + * In MB. When the filename exceeds this limit, the thumbnail will not be generated. + */ + maxThumbnailFilesize: 10, + + /** + * If `null`, the ratio of the image will be used to calculate it. + */ + thumbnailWidth: 120, + + /** + * The same as `thumbnailWidth`. If both are null, images will not be resized. + */ + thumbnailHeight: 120, + + /** + * How the images should be scaled down in case both, `thumbnailWidth` and `thumbnailHeight` are provided. + * Can be either `contain` or `crop`. + */ + thumbnailMethod: "crop", + + /** + * If set, images will be resized to these dimensions before being **uploaded**. + * If only one, `resizeWidth` **or** `resizeHeight` is provided, the original aspect + * ratio of the file will be preserved. + * + * The `options.transformFile` function uses these options, so if the `transformFile` function + * is overridden, these options don't do anything. + */ + resizeWidth: null, + + /** + * See `resizeWidth`. + */ + resizeHeight: null, + + /** + * The mime type of the resized image (before it gets uploaded to the server). + * If `null` the original mime type will be used. To force jpeg, for example, use `image/jpeg`. + * See `resizeWidth` for more information. + */ + resizeMimeType: null, + + /** + * The quality of the resized images. See `resizeWidth`. + */ + resizeQuality: 0.8, + + /** + * How the images should be scaled down in case both, `resizeWidth` and `resizeHeight` are provided. + * Can be either `contain` or `crop`. + */ + resizeMethod: "contain", + + /** + * The base that is used to calculate the **displayed** filesize. You can + * change this to 1024 if you would rather display kibibytes, mebibytes, + * etc... 1024 is technically incorrect, because `1024 bytes` are `1 kibibyte` + * not `1 kilobyte`. You can change this to `1024` if you don't care about + * validity. + */ + filesizeBase: 1000, + + /** + * If not `null` defines how many files this Dropzone handles. If it exceeds, + * the event `maxfilesexceeded` will be called. The dropzone element gets the + * class `dz-max-files-reached` accordingly so you can provide visual + * feedback. + */ + maxFiles: null, + + /** + * An optional object to send additional headers to the server. Eg: + * `{ "My-Awesome-Header": "header value" }` + */ + headers: null, + + /** + * If `true`, the dropzone element itself will be clickable, if `false` + * nothing will be clickable. + * + * You can also pass an HTML element, a CSS selector (for multiple elements) + * or an array of those. In that case, all of those elements will trigger an + * upload when clicked. + */ + clickable: true, + + /** + * Whether hidden files in directories should be ignored. + */ + ignoreHiddenFiles: true, + + /** + * The default implementation of `accept` checks the file's mime type or + * extension against this list. This is a comma separated list of mime + * types or file extensions. + * + * Eg.: `image/*,application/pdf,.psd` + * + * If the Dropzone is `clickable` this option will also be used as + * [`accept`](https://developer.mozilla.org/en-US/docs/HTML/Element/input#attr-accept) + * parameter on the hidden file input as well. + */ + acceptedFiles: null, + + /** + * **Deprecated!** + * Use acceptedFiles instead. + */ + acceptedMimeTypes: null, + + /** + * If false, files will be added to the queue but the queue will not be + * processed automatically. + * This can be useful if you need some additional user input before sending + * files (or if you want want all files sent at once). + * If you're ready to send the file simply call `myDropzone.processQueue()`. + * + * See the [enqueuing file uploads](#enqueuing-file-uploads) documentation + * section for more information. + */ + autoProcessQueue: true, + + /** + * If false, files added to the dropzone will not be queued by default. + * You'll have to call `enqueueFile(file)` manually. + */ + autoQueue: true, + + /** + * If `true`, this will add a link to every file preview to remove or cancel (if + * already uploading) the file. The `dictCancelUpload`, `dictCancelUploadConfirmation` + * and `dictRemoveFile` options are used for the wording. + */ + addRemoveLinks: false, + + /** + * Defines where to display the file previews – if `null` the + * Dropzone element itself is used. Can be a plain `HTMLElement` or a CSS + * selector. The element should have the `dropzone-previews` class so + * the previews are displayed properly. + */ + previewsContainer: null, + + /** + * Set this to `true` if you don't want previews to be shown. + */ + disablePreviews: false, + + /** + * This is the element the hidden input field (which is used when clicking on the + * dropzone to trigger file selection) will be appended to. This might + * be important in case you use frameworks to switch the content of your page. + * + * Can be a selector string, or an element directly. + */ + hiddenInputContainer: "body", + + /** + * If null, no capture type will be specified + * If camera, mobile devices will skip the file selection and choose camera + * If microphone, mobile devices will skip the file selection and choose the microphone + * If camcorder, mobile devices will skip the file selection and choose the camera in video mode + * On apple devices multiple must be set to false. AcceptedFiles may need to + * be set to an appropriate mime type (e.g. "image/*", "audio/*", or "video/*"). + */ + capture: null, + + /** + * **Deprecated**. Use `renameFile` instead. + */ + renameFilename: null, + + /** + * A function that is invoked before the file is uploaded to the server and renames the file. + * This function gets the `File` as argument and can use the `file.name`. The actual name of the + * file that gets used during the upload can be accessed through `file.upload.filename`. + */ + renameFile: null, + + /** + * If `true` the fallback will be forced. This is very useful to test your server + * implementations first and make sure that everything works as + * expected without dropzone if you experience problems, and to test + * how your fallbacks will look. + */ + forceFallback: false, + + /** + * The text used before any files are dropped. + */ + dictDefaultMessage: "Drop files here to upload", + + /** + * The text that replaces the default message text it the browser is not supported. + */ + dictFallbackMessage: "Your browser does not support drag'n'drop file uploads.", + + /** + * The text that will be added before the fallback form. + * If you provide a fallback element yourself, or if this option is `null` this will + * be ignored. + */ + dictFallbackText: "Please use the fallback form below to upload your files like in the olden days.", + + /** + * If the filesize is too big. + * `{{filesize}}` and `{{maxFilesize}}` will be replaced with the respective configuration values. + */ + dictFileTooBig: "File is too big ({{filesize}}MiB). Max filesize: {{maxFilesize}}MiB.", + + /** + * If the file doesn't match the file type. + */ + dictInvalidFileType: "You can't upload files of this type.", + + /** + * If the server response was invalid. + * `{{statusCode}}` will be replaced with the servers status code. + */ + dictResponseError: "Server responded with {{statusCode}} code.", + + /** + * If `addRemoveLinks` is true, the text to be used for the cancel upload link. + */ + dictCancelUpload: "Cancel upload", + + /** + * The text that is displayed if an upload was manually canceled + */ + dictUploadCanceled: "Upload canceled.", + + /** + * If `addRemoveLinks` is true, the text to be used for confirmation when cancelling upload. + */ + dictCancelUploadConfirmation: "Are you sure you want to cancel this upload?", + + /** + * If `addRemoveLinks` is true, the text to be used to remove a file. + */ + dictRemoveFile: "Remove file", + + /** + * If this is not null, then the user will be prompted before removing a file. + */ + dictRemoveFileConfirmation: null, + + /** + * Displayed if `maxFiles` is st and exceeded. + * The string `{{maxFiles}}` will be replaced by the configuration value. + */ + dictMaxFilesExceeded: "You can not upload any more files.", + + /** + * Allows you to translate the different units. Starting with `tb` for terabytes and going down to + * `b` for bytes. + */ + dictFileSizeUnits: { + tb: "TB", + gb: "GB", + mb: "MB", + kb: "KB", + b: "b" + }, + + /** + * Called when dropzone initialized + * You can add event listeners here + */ + init: function init() {}, + + /** + * Can be an **object** of additional parameters to transfer to the server, **or** a `Function` + * that gets invoked with the `files`, `xhr` and, if it's a chunked upload, `chunk` arguments. In case + * of a function, this needs to return a map. + * + * The default implementation does nothing for normal uploads, but adds relevant information for + * chunked uploads. + * + * This is the same as adding hidden input fields in the form element. + */ + params: function params(files, xhr, chunk) { + if (chunk) { + return { + dzuuid: chunk.file.upload.uuid, + dzchunkindex: chunk.index, + dztotalfilesize: chunk.file.size, + dzchunksize: this.options.chunkSize, + dztotalchunkcount: chunk.file.upload.totalChunkCount, + dzchunkbyteoffset: chunk.index * this.options.chunkSize + }; + } + }, + + /** + * A function that gets a [file](https://developer.mozilla.org/en-US/docs/DOM/File) + * and a `done` function as parameters. + * + * If the done function is invoked without arguments, the file is "accepted" and will + * be processed. If you pass an error message, the file is rejected, and the error + * message will be displayed. + * This function will not be called if the file is too big or doesn't match the mime types. + */ + accept: function accept(file, done) { + return done(); + }, + + /** + * The callback that will be invoked when all chunks have been uploaded for a file. + * It gets the file for which the chunks have been uploaded as the first parameter, + * and the `done` function as second. `done()` needs to be invoked when everything + * needed to finish the upload process is done. + */ + chunksUploaded: function chunksUploaded(file, done) { + done(); + }, + + /** + * Gets called when the browser is not supported. + * The default implementation shows the fallback input field and adds + * a text. + */ + fallback: function fallback() { + // This code should pass in IE7... :( + var messageElement; + this.element.className = "".concat(this.element.className, " dz-browser-not-supported"); + + var _iterator = options_createForOfIteratorHelper(this.element.getElementsByTagName("div"), true), + _step; + + try { + for (_iterator.s(); !(_step = _iterator.n()).done;) { + var child = _step.value; + + if (/(^| )dz-message($| )/.test(child.className)) { + messageElement = child; + child.className = "dz-message"; // Removes the 'dz-default' class + + break; + } + } + } catch (err) { + _iterator.e(err); + } finally { + _iterator.f(); + } + + if (!messageElement) { + messageElement = Dropzone.createElement('
    '); + this.element.appendChild(messageElement); + } + + var span = messageElement.getElementsByTagName("span")[0]; + + if (span) { + if (span.textContent != null) { + span.textContent = this.options.dictFallbackMessage; + } else if (span.innerText != null) { + span.innerText = this.options.dictFallbackMessage; + } + } + + return this.element.appendChild(this.getFallbackForm()); + }, + + /** + * Gets called to calculate the thumbnail dimensions. + * + * It gets `file`, `width` and `height` (both may be `null`) as parameters and must return an object containing: + * + * - `srcWidth` & `srcHeight` (required) + * - `trgWidth` & `trgHeight` (required) + * - `srcX` & `srcY` (optional, default `0`) + * - `trgX` & `trgY` (optional, default `0`) + * + * Those values are going to be used by `ctx.drawImage()`. + */ + resize: function resize(file, width, height, resizeMethod) { + var info = { + srcX: 0, + srcY: 0, + srcWidth: file.width, + srcHeight: file.height + }; + var srcRatio = file.width / file.height; // Automatically calculate dimensions if not specified + + if (width == null && height == null) { + width = info.srcWidth; + height = info.srcHeight; + } else if (width == null) { + width = height * srcRatio; + } else if (height == null) { + height = width / srcRatio; + } // Make sure images aren't upscaled + + + width = Math.min(width, info.srcWidth); + height = Math.min(height, info.srcHeight); + var trgRatio = width / height; + + if (info.srcWidth > width || info.srcHeight > height) { + // Image is bigger and needs rescaling + if (resizeMethod === "crop") { + if (srcRatio > trgRatio) { + info.srcHeight = file.height; + info.srcWidth = info.srcHeight * trgRatio; + } else { + info.srcWidth = file.width; + info.srcHeight = info.srcWidth / trgRatio; + } + } else if (resizeMethod === "contain") { + // Method 'contain' + if (srcRatio > trgRatio) { + height = width / srcRatio; + } else { + width = height * srcRatio; + } + } else { + throw new Error("Unknown resizeMethod '".concat(resizeMethod, "'")); + } + } + + info.srcX = (file.width - info.srcWidth) / 2; + info.srcY = (file.height - info.srcHeight) / 2; + info.trgWidth = width; + info.trgHeight = height; + return info; + }, + + /** + * Can be used to transform the file (for example, resize an image if necessary). + * + * The default implementation uses `resizeWidth` and `resizeHeight` (if provided) and resizes + * images according to those dimensions. + * + * Gets the `file` as the first parameter, and a `done()` function as the second, that needs + * to be invoked with the file when the transformation is done. + */ + transformFile: function transformFile(file, done) { + if ((this.options.resizeWidth || this.options.resizeHeight) && file.type.match(/image.*/)) { + return this.resizeImage(file, this.options.resizeWidth, this.options.resizeHeight, this.options.resizeMethod, done); + } else { + return done(file); + } + }, + + /** + * A string that contains the template used for each dropped + * file. Change it to fulfill your needs but make sure to properly + * provide all elements. + * + * If you want to use an actual HTML element instead of providing a String + * as a config option, you could create a div with the id `tpl`, + * put the template inside it and provide the element like this: + * + * document + * .querySelector('#tpl') + * .innerHTML + * + */ + previewTemplate: preview_template, + + /* + Those functions register themselves to the events on init and handle all + the user interface specific stuff. Overwriting them won't break the upload + but can break the way it's displayed. + You can overwrite them if you don't like the default behavior. If you just + want to add an additional event handler, register it on the dropzone object + and don't overwrite those options. + */ + // Those are self explanatory and simply concern the DragnDrop. + drop: function drop(e) { + return this.element.classList.remove("dz-drag-hover"); + }, + dragstart: function dragstart(e) {}, + dragend: function dragend(e) { + return this.element.classList.remove("dz-drag-hover"); + }, + dragenter: function dragenter(e) { + return this.element.classList.add("dz-drag-hover"); + }, + dragover: function dragover(e) { + return this.element.classList.add("dz-drag-hover"); + }, + dragleave: function dragleave(e) { + return this.element.classList.remove("dz-drag-hover"); + }, + paste: function paste(e) {}, + // Called whenever there are no files left in the dropzone anymore, and the + // dropzone should be displayed as if in the initial state. + reset: function reset() { + return this.element.classList.remove("dz-started"); + }, + // Called when a file is added to the queue + // Receives `file` + addedfile: function addedfile(file) { + var _this = this; + + if (this.element === this.previewsContainer) { + this.element.classList.add("dz-started"); + } + + if (this.previewsContainer && !this.options.disablePreviews) { + file.previewElement = Dropzone.createElement(this.options.previewTemplate.trim()); + file.previewTemplate = file.previewElement; // Backwards compatibility + + this.previewsContainer.appendChild(file.previewElement); + + var _iterator2 = options_createForOfIteratorHelper(file.previewElement.querySelectorAll("[data-dz-name]"), true), + _step2; + + try { + for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) { + var node = _step2.value; + node.textContent = file.name; + } + } catch (err) { + _iterator2.e(err); + } finally { + _iterator2.f(); + } + + var _iterator3 = options_createForOfIteratorHelper(file.previewElement.querySelectorAll("[data-dz-size]"), true), + _step3; + + try { + for (_iterator3.s(); !(_step3 = _iterator3.n()).done;) { + node = _step3.value; + node.innerHTML = this.filesize(file.size); + } + } catch (err) { + _iterator3.e(err); + } finally { + _iterator3.f(); + } + + if (this.options.addRemoveLinks) { + file._removeLink = Dropzone.createElement("
    ".concat(this.options.dictRemoveFile, "")); + file.previewElement.appendChild(file._removeLink); + } + + var removeFileEvent = function removeFileEvent(e) { + e.preventDefault(); + e.stopPropagation(); + + if (file.status === Dropzone.UPLOADING) { + return Dropzone.confirm(_this.options.dictCancelUploadConfirmation, function () { + return _this.removeFile(file); + }); + } else { + if (_this.options.dictRemoveFileConfirmation) { + return Dropzone.confirm(_this.options.dictRemoveFileConfirmation, function () { + return _this.removeFile(file); + }); + } else { + return _this.removeFile(file); + } + } + }; + + var _iterator4 = options_createForOfIteratorHelper(file.previewElement.querySelectorAll("[data-dz-remove]"), true), + _step4; + + try { + for (_iterator4.s(); !(_step4 = _iterator4.n()).done;) { + var removeLink = _step4.value; + removeLink.addEventListener("click", removeFileEvent); + } + } catch (err) { + _iterator4.e(err); + } finally { + _iterator4.f(); + } + } + }, + // Called whenever a file is removed. + removedfile: function removedfile(file) { + if (file.previewElement != null && file.previewElement.parentNode != null) { + file.previewElement.parentNode.removeChild(file.previewElement); + } + + return this._updateMaxFilesReachedClass(); + }, + // Called when a thumbnail has been generated + // Receives `file` and `dataUrl` + thumbnail: function thumbnail(file, dataUrl) { + if (file.previewElement) { + file.previewElement.classList.remove("dz-file-preview"); + + var _iterator5 = options_createForOfIteratorHelper(file.previewElement.querySelectorAll("[data-dz-thumbnail]"), true), + _step5; + + try { + for (_iterator5.s(); !(_step5 = _iterator5.n()).done;) { + var thumbnailElement = _step5.value; + thumbnailElement.alt = file.name; + thumbnailElement.src = dataUrl; + } + } catch (err) { + _iterator5.e(err); + } finally { + _iterator5.f(); + } + + return setTimeout(function () { + return file.previewElement.classList.add("dz-image-preview"); + }, 1); + } + }, + // Called whenever an error occurs + // Receives `file` and `message` + error: function error(file, message) { + if (file.previewElement) { + file.previewElement.classList.add("dz-error"); + + if (typeof message !== "string" && message.error) { + message = message.error; + } + + var _iterator6 = options_createForOfIteratorHelper(file.previewElement.querySelectorAll("[data-dz-errormessage]"), true), + _step6; + + try { + for (_iterator6.s(); !(_step6 = _iterator6.n()).done;) { + var node = _step6.value; + node.textContent = message; + } + } catch (err) { + _iterator6.e(err); + } finally { + _iterator6.f(); + } + } + }, + errormultiple: function errormultiple() {}, + // Called when a file gets processed. Since there is a cue, not all added + // files are processed immediately. + // Receives `file` + processing: function processing(file) { + if (file.previewElement) { + file.previewElement.classList.add("dz-processing"); + + if (file._removeLink) { + return file._removeLink.innerHTML = this.options.dictCancelUpload; + } + } + }, + processingmultiple: function processingmultiple() {}, + // Called whenever the upload progress gets updated. + // Receives `file`, `progress` (percentage 0-100) and `bytesSent`. + // To get the total number of bytes of the file, use `file.size` + uploadprogress: function uploadprogress(file, progress, bytesSent) { + if (file.previewElement) { + var _iterator7 = options_createForOfIteratorHelper(file.previewElement.querySelectorAll("[data-dz-uploadprogress]"), true), + _step7; + + try { + for (_iterator7.s(); !(_step7 = _iterator7.n()).done;) { + var node = _step7.value; + node.nodeName === "PROGRESS" ? node.value = progress : node.style.width = "".concat(progress, "%"); + } + } catch (err) { + _iterator7.e(err); + } finally { + _iterator7.f(); + } + } + }, + // Called whenever the total upload progress gets updated. + // Called with totalUploadProgress (0-100), totalBytes and totalBytesSent + totaluploadprogress: function totaluploadprogress() {}, + // Called just before the file is sent. Gets the `xhr` object as second + // parameter, so you can modify it (for example to add a CSRF token) and a + // `formData` object to add additional information. + sending: function sending() {}, + sendingmultiple: function sendingmultiple() {}, + // When the complete upload is finished and successful + // Receives `file` + success: function success(file) { + if (file.previewElement) { + return file.previewElement.classList.add("dz-success"); + } + }, + successmultiple: function successmultiple() {}, + // When the upload is canceled. + canceled: function canceled(file) { + return this.emit("error", file, this.options.dictUploadCanceled); + }, + canceledmultiple: function canceledmultiple() {}, + // When the upload is finished, either with success or an error. + // Receives `file` + complete: function complete(file) { + if (file._removeLink) { + file._removeLink.innerHTML = this.options.dictRemoveFile; + } + + if (file.previewElement) { + return file.previewElement.classList.add("dz-complete"); + } + }, + completemultiple: function completemultiple() {}, + maxfilesexceeded: function maxfilesexceeded() {}, + maxfilesreached: function maxfilesreached() {}, + queuecomplete: function queuecomplete() {}, + addedfiles: function addedfiles() {} +}; +/* harmony default export */ var src_options = (defaultOptions); +;// CONCATENATED MODULE: ./src/dropzone.js +function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); } + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +function dropzone_createForOfIteratorHelper(o, allowArrayLike) { var it; if (typeof Symbol === "undefined" || o[Symbol.iterator] == null) { if (Array.isArray(o) || (it = dropzone_unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = o[Symbol.iterator](); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; } + +function dropzone_unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return dropzone_arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return dropzone_arrayLikeToArray(o, minLen); } + +function dropzone_arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; } + +function dropzone_classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } + +function dropzone_defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } + +function dropzone_createClass(Constructor, protoProps, staticProps) { if (protoProps) dropzone_defineProperties(Constructor.prototype, protoProps); if (staticProps) dropzone_defineProperties(Constructor, staticProps); return Constructor; } + +function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); } + +function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); } + +function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; } + +function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } return _assertThisInitialized(self); } + +function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; } + +function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } } + +function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); } + + + + +var Dropzone = /*#__PURE__*/function (_Emitter) { + _inherits(Dropzone, _Emitter); + + var _super = _createSuper(Dropzone); + + function Dropzone(el, options) { + var _this; + + dropzone_classCallCheck(this, Dropzone); + + _this = _super.call(this); + var fallback, left; + _this.element = el; // For backwards compatibility since the version was in the prototype previously + + _this.version = Dropzone.version; + _this.clickableElements = []; + _this.listeners = []; + _this.files = []; // All files + + if (typeof _this.element === "string") { + _this.element = document.querySelector(_this.element); + } // Not checking if instance of HTMLElement or Element since IE9 is extremely weird. + + + if (!_this.element || _this.element.nodeType == null) { + throw new Error("Invalid dropzone element."); + } + + if (_this.element.dropzone) { + throw new Error("Dropzone already attached."); + } // Now add this dropzone to the instances. + + + Dropzone.instances.push(_assertThisInitialized(_this)); // Put the dropzone inside the element itself. + + _this.element.dropzone = _assertThisInitialized(_this); + var elementOptions = (left = Dropzone.optionsForElement(_this.element)) != null ? left : {}; + _this.options = Dropzone.extend({}, src_options, elementOptions, options != null ? options : {}); + _this.options.previewTemplate = _this.options.previewTemplate.replace(/\n*/g, ""); // If the browser failed, just call the fallback and leave + + if (_this.options.forceFallback || !Dropzone.isBrowserSupported()) { + return _possibleConstructorReturn(_this, _this.options.fallback.call(_assertThisInitialized(_this))); + } // @options.url = @element.getAttribute "action" unless @options.url? + + + if (_this.options.url == null) { + _this.options.url = _this.element.getAttribute("action"); + } + + if (!_this.options.url) { + throw new Error("No URL provided."); + } + + if (_this.options.acceptedFiles && _this.options.acceptedMimeTypes) { + throw new Error("You can't provide both 'acceptedFiles' and 'acceptedMimeTypes'. 'acceptedMimeTypes' is deprecated."); + } + + if (_this.options.uploadMultiple && _this.options.chunking) { + throw new Error("You cannot set both: uploadMultiple and chunking."); + } // Backwards compatibility + + + if (_this.options.acceptedMimeTypes) { + _this.options.acceptedFiles = _this.options.acceptedMimeTypes; + delete _this.options.acceptedMimeTypes; + } // Backwards compatibility + + + if (_this.options.renameFilename != null) { + _this.options.renameFile = function (file) { + return _this.options.renameFilename.call(_assertThisInitialized(_this), file.name, file); + }; + } + + if (typeof _this.options.method === "string") { + _this.options.method = _this.options.method.toUpperCase(); + } + + if ((fallback = _this.getExistingFallback()) && fallback.parentNode) { + // Remove the fallback + fallback.parentNode.removeChild(fallback); + } // Display previews in the previewsContainer element or the Dropzone element unless explicitly set to false + + + if (_this.options.previewsContainer !== false) { + if (_this.options.previewsContainer) { + _this.previewsContainer = Dropzone.getElement(_this.options.previewsContainer, "previewsContainer"); + } else { + _this.previewsContainer = _this.element; + } + } + + if (_this.options.clickable) { + if (_this.options.clickable === true) { + _this.clickableElements = [_this.element]; + } else { + _this.clickableElements = Dropzone.getElements(_this.options.clickable, "clickable"); + } + } + + _this.init(); + + return _this; + } // Returns all files that have been accepted + + + dropzone_createClass(Dropzone, [{ + key: "getAcceptedFiles", + value: function getAcceptedFiles() { + return this.files.filter(function (file) { + return file.accepted; + }).map(function (file) { + return file; + }); + } // Returns all files that have been rejected + // Not sure when that's going to be useful, but added for completeness. + + }, { + key: "getRejectedFiles", + value: function getRejectedFiles() { + return this.files.filter(function (file) { + return !file.accepted; + }).map(function (file) { + return file; + }); + } + }, { + key: "getFilesWithStatus", + value: function getFilesWithStatus(status) { + return this.files.filter(function (file) { + return file.status === status; + }).map(function (file) { + return file; + }); + } // Returns all files that are in the queue + + }, { + key: "getQueuedFiles", + value: function getQueuedFiles() { + return this.getFilesWithStatus(Dropzone.QUEUED); + } + }, { + key: "getUploadingFiles", + value: function getUploadingFiles() { + return this.getFilesWithStatus(Dropzone.UPLOADING); + } + }, { + key: "getAddedFiles", + value: function getAddedFiles() { + return this.getFilesWithStatus(Dropzone.ADDED); + } // Files that are either queued or uploading + + }, { + key: "getActiveFiles", + value: function getActiveFiles() { + return this.files.filter(function (file) { + return file.status === Dropzone.UPLOADING || file.status === Dropzone.QUEUED; + }).map(function (file) { + return file; + }); + } // The function that gets called when Dropzone is initialized. You + // can (and should) setup event listeners inside this function. + + }, { + key: "init", + value: function init() { + var _this2 = this; + + // In case it isn't set already + if (this.element.tagName === "form") { + this.element.setAttribute("enctype", "multipart/form-data"); + } + + if (this.element.classList.contains("dropzone") && !this.element.querySelector(".dz-message")) { + this.element.appendChild(Dropzone.createElement("
    "))); + } + + if (this.clickableElements.length) { + var setupHiddenFileInput = function setupHiddenFileInput() { + if (_this2.hiddenFileInput) { + _this2.hiddenFileInput.parentNode.removeChild(_this2.hiddenFileInput); + } + + _this2.hiddenFileInput = document.createElement("input"); + + _this2.hiddenFileInput.setAttribute("type", "file"); + + if (_this2.options.maxFiles === null || _this2.options.maxFiles > 1) { + _this2.hiddenFileInput.setAttribute("multiple", "multiple"); + } + + _this2.hiddenFileInput.className = "dz-hidden-input"; + + if (_this2.options.acceptedFiles !== null) { + _this2.hiddenFileInput.setAttribute("accept", _this2.options.acceptedFiles); + } + + if (_this2.options.capture !== null) { + _this2.hiddenFileInput.setAttribute("capture", _this2.options.capture); + } // Making sure that no one can "tab" into this field. + + + _this2.hiddenFileInput.setAttribute("tabindex", "-1"); // Not setting `display="none"` because some browsers don't accept clicks + // on elements that aren't displayed. + + + _this2.hiddenFileInput.style.visibility = "hidden"; + _this2.hiddenFileInput.style.position = "absolute"; + _this2.hiddenFileInput.style.top = "0"; + _this2.hiddenFileInput.style.left = "0"; + _this2.hiddenFileInput.style.height = "0"; + _this2.hiddenFileInput.style.width = "0"; + Dropzone.getElement(_this2.options.hiddenInputContainer, "hiddenInputContainer").appendChild(_this2.hiddenFileInput); + + _this2.hiddenFileInput.addEventListener("change", function () { + var files = _this2.hiddenFileInput.files; + + if (files.length) { + var _iterator = dropzone_createForOfIteratorHelper(files, true), + _step; + + try { + for (_iterator.s(); !(_step = _iterator.n()).done;) { + var file = _step.value; + + _this2.addFile(file); + } + } catch (err) { + _iterator.e(err); + } finally { + _iterator.f(); + } + } + + _this2.emit("addedfiles", files); + + setupHiddenFileInput(); + }); + }; + + setupHiddenFileInput(); + } + + this.URL = window.URL !== null ? window.URL : window.webkitURL; // Setup all event listeners on the Dropzone object itself. + // They're not in @setupEventListeners() because they shouldn't be removed + // again when the dropzone gets disabled. + + var _iterator2 = dropzone_createForOfIteratorHelper(this.events, true), + _step2; + + try { + for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) { + var eventName = _step2.value; + this.on(eventName, this.options[eventName]); + } + } catch (err) { + _iterator2.e(err); + } finally { + _iterator2.f(); + } + + this.on("uploadprogress", function () { + return _this2.updateTotalUploadProgress(); + }); + this.on("removedfile", function () { + return _this2.updateTotalUploadProgress(); + }); + this.on("canceled", function (file) { + return _this2.emit("complete", file); + }); // Emit a `queuecomplete` event if all files finished uploading. + + this.on("complete", function (file) { + if (_this2.getAddedFiles().length === 0 && _this2.getUploadingFiles().length === 0 && _this2.getQueuedFiles().length === 0) { + // This needs to be deferred so that `queuecomplete` really triggers after `complete` + return setTimeout(function () { + return _this2.emit("queuecomplete"); + }, 0); + } + }); + + var containsFiles = function containsFiles(e) { + if (e.dataTransfer.types) { + // Because e.dataTransfer.types is an Object in + // IE, we need to iterate like this instead of + // using e.dataTransfer.types.some() + for (var i = 0; i < e.dataTransfer.types.length; i++) { + if (e.dataTransfer.types[i] === "Files") return true; + } + } + + return false; + }; + + var noPropagation = function noPropagation(e) { + // If there are no files, we don't want to stop + // propagation so we don't interfere with other + // drag and drop behaviour. + if (!containsFiles(e)) return; + e.stopPropagation(); + + if (e.preventDefault) { + return e.preventDefault(); + } else { + return e.returnValue = false; + } + }; // Create the listeners + + + this.listeners = [{ + element: this.element, + events: { + dragstart: function dragstart(e) { + return _this2.emit("dragstart", e); + }, + dragenter: function dragenter(e) { + noPropagation(e); + return _this2.emit("dragenter", e); + }, + dragover: function dragover(e) { + // Makes it possible to drag files from chrome's download bar + // http://stackoverflow.com/questions/19526430/drag-and-drop-file-uploads-from-chrome-downloads-bar + // Try is required to prevent bug in Internet Explorer 11 (SCRIPT65535 exception) + var efct; + + try { + efct = e.dataTransfer.effectAllowed; + } catch (error) {} + + e.dataTransfer.dropEffect = "move" === efct || "linkMove" === efct ? "move" : "copy"; + noPropagation(e); + return _this2.emit("dragover", e); + }, + dragleave: function dragleave(e) { + return _this2.emit("dragleave", e); + }, + drop: function drop(e) { + noPropagation(e); + return _this2.drop(e); + }, + dragend: function dragend(e) { + return _this2.emit("dragend", e); + } + } // This is disabled right now, because the browsers don't implement it properly. + // "paste": (e) => + // noPropagation e + // @paste e + + }]; + this.clickableElements.forEach(function (clickableElement) { + return _this2.listeners.push({ + element: clickableElement, + events: { + click: function click(evt) { + // Only the actual dropzone or the message element should trigger file selection + if (clickableElement !== _this2.element || evt.target === _this2.element || Dropzone.elementInside(evt.target, _this2.element.querySelector(".dz-message"))) { + _this2.hiddenFileInput.click(); // Forward the click + + } + + return true; + } + } + }); + }); + this.enable(); + return this.options.init.call(this); + } // Not fully tested yet + + }, { + key: "destroy", + value: function destroy() { + this.disable(); + this.removeAllFiles(true); + + if (this.hiddenFileInput != null ? this.hiddenFileInput.parentNode : undefined) { + this.hiddenFileInput.parentNode.removeChild(this.hiddenFileInput); + this.hiddenFileInput = null; + } + + delete this.element.dropzone; + return Dropzone.instances.splice(Dropzone.instances.indexOf(this), 1); + } + }, { + key: "updateTotalUploadProgress", + value: function updateTotalUploadProgress() { + var totalUploadProgress; + var totalBytesSent = 0; + var totalBytes = 0; + var activeFiles = this.getActiveFiles(); + + if (activeFiles.length) { + var _iterator3 = dropzone_createForOfIteratorHelper(this.getActiveFiles(), true), + _step3; + + try { + for (_iterator3.s(); !(_step3 = _iterator3.n()).done;) { + var file = _step3.value; + totalBytesSent += file.upload.bytesSent; + totalBytes += file.upload.total; + } + } catch (err) { + _iterator3.e(err); + } finally { + _iterator3.f(); + } + + totalUploadProgress = 100 * totalBytesSent / totalBytes; + } else { + totalUploadProgress = 100; + } + + return this.emit("totaluploadprogress", totalUploadProgress, totalBytes, totalBytesSent); + } // @options.paramName can be a function taking one parameter rather than a string. + // A parameter name for a file is obtained simply by calling this with an index number. + + }, { + key: "_getParamName", + value: function _getParamName(n) { + if (typeof this.options.paramName === "function") { + return this.options.paramName(n); + } else { + return "".concat(this.options.paramName).concat(this.options.uploadMultiple ? "[".concat(n, "]") : ""); + } + } // If @options.renameFile is a function, + // the function will be used to rename the file.name before appending it to the formData + + }, { + key: "_renameFile", + value: function _renameFile(file) { + if (typeof this.options.renameFile !== "function") { + return file.name; + } + + return this.options.renameFile(file); + } // Returns a form that can be used as fallback if the browser does not support DragnDrop + // + // If the dropzone is already a form, only the input field and button are returned. Otherwise a complete form element is provided. + // This code has to pass in IE7 :( + + }, { + key: "getFallbackForm", + value: function getFallbackForm() { + var existingFallback, form; + + if (existingFallback = this.getExistingFallback()) { + return existingFallback; + } + + var fieldsString = '
    '; + + if (this.options.dictFallbackText) { + fieldsString += "

    ".concat(this.options.dictFallbackText, "

    "); + } + + fieldsString += "
    "); + var fields = Dropzone.createElement(fieldsString); + + if (this.element.tagName !== "FORM") { + form = Dropzone.createElement("
    ")); + form.appendChild(fields); + } else { + // Make sure that the enctype and method attributes are set properly + this.element.setAttribute("enctype", "multipart/form-data"); + this.element.setAttribute("method", this.options.method); + } + + return form != null ? form : fields; + } // Returns the fallback elements if they exist already + // + // This code has to pass in IE7 :( + + }, { + key: "getExistingFallback", + value: function getExistingFallback() { + var getFallback = function getFallback(elements) { + var _iterator4 = dropzone_createForOfIteratorHelper(elements, true), + _step4; + + try { + for (_iterator4.s(); !(_step4 = _iterator4.n()).done;) { + var el = _step4.value; + + if (/(^| )fallback($| )/.test(el.className)) { + return el; + } + } + } catch (err) { + _iterator4.e(err); + } finally { + _iterator4.f(); + } + }; + + for (var _i = 0, _arr = ["div", "form"]; _i < _arr.length; _i++) { + var tagName = _arr[_i]; + var fallback; + + if (fallback = getFallback(this.element.getElementsByTagName(tagName))) { + return fallback; + } + } + } // Activates all listeners stored in @listeners + + }, { + key: "setupEventListeners", + value: function setupEventListeners() { + return this.listeners.map(function (elementListeners) { + return function () { + var result = []; + + for (var event in elementListeners.events) { + var listener = elementListeners.events[event]; + result.push(elementListeners.element.addEventListener(event, listener, false)); + } + + return result; + }(); + }); + } // Deactivates all listeners stored in @listeners + + }, { + key: "removeEventListeners", + value: function removeEventListeners() { + return this.listeners.map(function (elementListeners) { + return function () { + var result = []; + + for (var event in elementListeners.events) { + var listener = elementListeners.events[event]; + result.push(elementListeners.element.removeEventListener(event, listener, false)); + } + + return result; + }(); + }); + } // Removes all event listeners and cancels all files in the queue or being processed. + + }, { + key: "disable", + value: function disable() { + var _this3 = this; + + this.clickableElements.forEach(function (element) { + return element.classList.remove("dz-clickable"); + }); + this.removeEventListeners(); + this.disabled = true; + return this.files.map(function (file) { + return _this3.cancelUpload(file); + }); + } + }, { + key: "enable", + value: function enable() { + delete this.disabled; + this.clickableElements.forEach(function (element) { + return element.classList.add("dz-clickable"); + }); + return this.setupEventListeners(); + } // Returns a nicely formatted filesize + + }, { + key: "filesize", + value: function filesize(size) { + var selectedSize = 0; + var selectedUnit = "b"; + + if (size > 0) { + var units = ["tb", "gb", "mb", "kb", "b"]; + + for (var i = 0; i < units.length; i++) { + var unit = units[i]; + var cutoff = Math.pow(this.options.filesizeBase, 4 - i) / 10; + + if (size >= cutoff) { + selectedSize = size / Math.pow(this.options.filesizeBase, 4 - i); + selectedUnit = unit; + break; + } + } + + selectedSize = Math.round(10 * selectedSize) / 10; // Cutting of digits + } + + return "".concat(selectedSize, " ").concat(this.options.dictFileSizeUnits[selectedUnit]); + } // Adds or removes the `dz-max-files-reached` class from the form. + + }, { + key: "_updateMaxFilesReachedClass", + value: function _updateMaxFilesReachedClass() { + if (this.options.maxFiles != null && this.getAcceptedFiles().length >= this.options.maxFiles) { + if (this.getAcceptedFiles().length === this.options.maxFiles) { + this.emit("maxfilesreached", this.files); + } + + return this.element.classList.add("dz-max-files-reached"); + } else { + return this.element.classList.remove("dz-max-files-reached"); + } + } + }, { + key: "drop", + value: function drop(e) { + if (!e.dataTransfer) { + return; + } + + this.emit("drop", e); // Convert the FileList to an Array + // This is necessary for IE11 + + var files = []; + + for (var i = 0; i < e.dataTransfer.files.length; i++) { + files[i] = e.dataTransfer.files[i]; + } // Even if it's a folder, files.length will contain the folders. + + + if (files.length) { + var items = e.dataTransfer.items; + + if (items && items.length && items[0].webkitGetAsEntry != null) { + // The browser supports dropping of folders, so handle items instead of files + this._addFilesFromItems(items); + } else { + this.handleFiles(files); + } + } + + this.emit("addedfiles", files); + } + }, { + key: "paste", + value: function paste(e) { + if (__guard__(e != null ? e.clipboardData : undefined, function (x) { + return x.items; + }) == null) { + return; + } + + this.emit("paste", e); + var items = e.clipboardData.items; + + if (items.length) { + return this._addFilesFromItems(items); + } + } + }, { + key: "handleFiles", + value: function handleFiles(files) { + var _iterator5 = dropzone_createForOfIteratorHelper(files, true), + _step5; + + try { + for (_iterator5.s(); !(_step5 = _iterator5.n()).done;) { + var file = _step5.value; + this.addFile(file); + } + } catch (err) { + _iterator5.e(err); + } finally { + _iterator5.f(); + } + } // When a folder is dropped (or files are pasted), items must be handled + // instead of files. + + }, { + key: "_addFilesFromItems", + value: function _addFilesFromItems(items) { + var _this4 = this; + + return function () { + var result = []; + + var _iterator6 = dropzone_createForOfIteratorHelper(items, true), + _step6; + + try { + for (_iterator6.s(); !(_step6 = _iterator6.n()).done;) { + var item = _step6.value; + var entry; + + if (item.webkitGetAsEntry != null && (entry = item.webkitGetAsEntry())) { + if (entry.isFile) { + result.push(_this4.addFile(item.getAsFile())); + } else if (entry.isDirectory) { + // Append all files from that directory to files + result.push(_this4._addFilesFromDirectory(entry, entry.name)); + } else { + result.push(undefined); + } + } else if (item.getAsFile != null) { + if (item.kind == null || item.kind === "file") { + result.push(_this4.addFile(item.getAsFile())); + } else { + result.push(undefined); + } + } else { + result.push(undefined); + } + } + } catch (err) { + _iterator6.e(err); + } finally { + _iterator6.f(); + } + + return result; + }(); + } // Goes through the directory, and adds each file it finds recursively + + }, { + key: "_addFilesFromDirectory", + value: function _addFilesFromDirectory(directory, path) { + var _this5 = this; + + var dirReader = directory.createReader(); + + var errorHandler = function errorHandler(error) { + return __guardMethod__(console, "log", function (o) { + return o.log(error); + }); + }; + + var readEntries = function readEntries() { + return dirReader.readEntries(function (entries) { + if (entries.length > 0) { + var _iterator7 = dropzone_createForOfIteratorHelper(entries, true), + _step7; + + try { + for (_iterator7.s(); !(_step7 = _iterator7.n()).done;) { + var entry = _step7.value; + + if (entry.isFile) { + entry.file(function (file) { + if (_this5.options.ignoreHiddenFiles && file.name.substring(0, 1) === ".") { + return; + } + + file.fullPath = "".concat(path, "/").concat(file.name); + return _this5.addFile(file); + }); + } else if (entry.isDirectory) { + _this5._addFilesFromDirectory(entry, "".concat(path, "/").concat(entry.name)); + } + } // Recursively call readEntries() again, since browser only handle + // the first 100 entries. + // See: https://developer.mozilla.org/en-US/docs/Web/API/DirectoryReader#readEntries + + } catch (err) { + _iterator7.e(err); + } finally { + _iterator7.f(); + } + + readEntries(); + } + + return null; + }, errorHandler); + }; + + return readEntries(); + } // If `done()` is called without argument the file is accepted + // If you call it with an error message, the file is rejected + // (This allows for asynchronous validation) + // + // This function checks the filesize, and if the file.type passes the + // `acceptedFiles` check. + + }, { + key: "accept", + value: function accept(file, done) { + if (this.options.maxFilesize && file.size > this.options.maxFilesize * 1024 * 1024) { + done(this.options.dictFileTooBig.replace("{{filesize}}", Math.round(file.size / 1024 / 10.24) / 100).replace("{{maxFilesize}}", this.options.maxFilesize)); + } else if (!Dropzone.isValidFile(file, this.options.acceptedFiles)) { + done(this.options.dictInvalidFileType); + } else if (this.options.maxFiles != null && this.getAcceptedFiles().length >= this.options.maxFiles) { + done(this.options.dictMaxFilesExceeded.replace("{{maxFiles}}", this.options.maxFiles)); + this.emit("maxfilesexceeded", file); + } else { + this.options.accept.call(this, file, done); + } + } + }, { + key: "addFile", + value: function addFile(file) { + var _this6 = this; + + file.upload = { + uuid: Dropzone.uuidv4(), + progress: 0, + // Setting the total upload size to file.size for the beginning + // It's actual different than the size to be transmitted. + total: file.size, + bytesSent: 0, + filename: this._renameFile(file) // Not setting chunking information here, because the acutal data — and + // thus the chunks — might change if `options.transformFile` is set + // and does something to the data. + + }; + this.files.push(file); + file.status = Dropzone.ADDED; + this.emit("addedfile", file); + + this._enqueueThumbnail(file); + + this.accept(file, function (error) { + if (error) { + file.accepted = false; + + _this6._errorProcessing([file], error); // Will set the file.status + + } else { + file.accepted = true; + + if (_this6.options.autoQueue) { + _this6.enqueueFile(file); + } // Will set .accepted = true + + } + + _this6._updateMaxFilesReachedClass(); + }); + } // Wrapper for enqueueFile + + }, { + key: "enqueueFiles", + value: function enqueueFiles(files) { + var _iterator8 = dropzone_createForOfIteratorHelper(files, true), + _step8; + + try { + for (_iterator8.s(); !(_step8 = _iterator8.n()).done;) { + var file = _step8.value; + this.enqueueFile(file); + } + } catch (err) { + _iterator8.e(err); + } finally { + _iterator8.f(); + } + + return null; + } + }, { + key: "enqueueFile", + value: function enqueueFile(file) { + var _this7 = this; + + if (file.status === Dropzone.ADDED && file.accepted === true) { + file.status = Dropzone.QUEUED; + + if (this.options.autoProcessQueue) { + return setTimeout(function () { + return _this7.processQueue(); + }, 0); // Deferring the call + } + } else { + throw new Error("This file can't be queued because it has already been processed or was rejected."); + } + } + }, { + key: "_enqueueThumbnail", + value: function _enqueueThumbnail(file) { + var _this8 = this; + + if (this.options.createImageThumbnails && file.type.match(/image.*/) && file.size <= this.options.maxThumbnailFilesize * 1024 * 1024) { + this._thumbnailQueue.push(file); + + return setTimeout(function () { + return _this8._processThumbnailQueue(); + }, 0); // Deferring the call + } + } + }, { + key: "_processThumbnailQueue", + value: function _processThumbnailQueue() { + var _this9 = this; + + if (this._processingThumbnail || this._thumbnailQueue.length === 0) { + return; + } + + this._processingThumbnail = true; + + var file = this._thumbnailQueue.shift(); + + return this.createThumbnail(file, this.options.thumbnailWidth, this.options.thumbnailHeight, this.options.thumbnailMethod, true, function (dataUrl) { + _this9.emit("thumbnail", file, dataUrl); + + _this9._processingThumbnail = false; + return _this9._processThumbnailQueue(); + }); + } // Can be called by the user to remove a file + + }, { + key: "removeFile", + value: function removeFile(file) { + if (file.status === Dropzone.UPLOADING) { + this.cancelUpload(file); + } + + this.files = without(this.files, file); + this.emit("removedfile", file); + + if (this.files.length === 0) { + return this.emit("reset"); + } + } // Removes all files that aren't currently processed from the list + + }, { + key: "removeAllFiles", + value: function removeAllFiles(cancelIfNecessary) { + // Create a copy of files since removeFile() changes the @files array. + if (cancelIfNecessary == null) { + cancelIfNecessary = false; + } + + var _iterator9 = dropzone_createForOfIteratorHelper(this.files.slice(), true), + _step9; + + try { + for (_iterator9.s(); !(_step9 = _iterator9.n()).done;) { + var file = _step9.value; + + if (file.status !== Dropzone.UPLOADING || cancelIfNecessary) { + this.removeFile(file); + } + } + } catch (err) { + _iterator9.e(err); + } finally { + _iterator9.f(); + } + + return null; + } // Resizes an image before it gets sent to the server. This function is the default behavior of + // `options.transformFile` if `resizeWidth` or `resizeHeight` are set. The callback is invoked with + // the resized blob. + + }, { + key: "resizeImage", + value: function resizeImage(file, width, height, resizeMethod, callback) { + var _this10 = this; + + return this.createThumbnail(file, width, height, resizeMethod, true, function (dataUrl, canvas) { + if (canvas == null) { + // The image has not been resized + return callback(file); + } else { + var resizeMimeType = _this10.options.resizeMimeType; + + if (resizeMimeType == null) { + resizeMimeType = file.type; + } + + var resizedDataURL = canvas.toDataURL(resizeMimeType, _this10.options.resizeQuality); + + if (resizeMimeType === "image/jpeg" || resizeMimeType === "image/jpg") { + // Now add the original EXIF information + resizedDataURL = ExifRestore.restore(file.dataURL, resizedDataURL); + } + + return callback(Dropzone.dataURItoBlob(resizedDataURL)); + } + }); + } + }, { + key: "createThumbnail", + value: function createThumbnail(file, width, height, resizeMethod, fixOrientation, callback) { + var _this11 = this; + + var fileReader = new FileReader(); + + fileReader.onload = function () { + file.dataURL = fileReader.result; // Don't bother creating a thumbnail for SVG images since they're vector + + if (file.type === "image/svg+xml") { + if (callback != null) { + callback(fileReader.result); + } + + return; + } + + _this11.createThumbnailFromUrl(file, width, height, resizeMethod, fixOrientation, callback); + }; + + fileReader.readAsDataURL(file); + } // `mockFile` needs to have these attributes: + // + // { name: 'name', size: 12345, imageUrl: '' } + // + // `callback` will be invoked when the image has been downloaded and displayed. + // `crossOrigin` will be added to the `img` tag when accessing the file. + + }, { + key: "displayExistingFile", + value: function displayExistingFile(mockFile, imageUrl, callback, crossOrigin) { + var _this12 = this; + + var resizeThumbnail = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : true; + this.emit("addedfile", mockFile); + this.emit("complete", mockFile); + + if (!resizeThumbnail) { + this.emit("thumbnail", mockFile, imageUrl); + if (callback) callback(); + } else { + var onDone = function onDone(thumbnail) { + _this12.emit("thumbnail", mockFile, thumbnail); + + if (callback) callback(); + }; + + mockFile.dataURL = imageUrl; + this.createThumbnailFromUrl(mockFile, this.options.thumbnailWidth, this.options.thumbnailHeight, this.options.thumbnailMethod, this.options.fixOrientation, onDone, crossOrigin); + } + } + }, { + key: "createThumbnailFromUrl", + value: function createThumbnailFromUrl(file, width, height, resizeMethod, fixOrientation, callback, crossOrigin) { + var _this13 = this; + + // Not using `new Image` here because of a bug in latest Chrome versions. + // See https://github.com/enyo/dropzone/pull/226 + var img = document.createElement("img"); + + if (crossOrigin) { + img.crossOrigin = crossOrigin; + } // fixOrientation is not needed anymore with browsers handling imageOrientation + + + fixOrientation = getComputedStyle(document.body)["imageOrientation"] == "from-image" ? false : fixOrientation; + + img.onload = function () { + var loadExif = function loadExif(callback) { + return callback(1); + }; + + if (typeof EXIF !== "undefined" && EXIF !== null && fixOrientation) { + loadExif = function loadExif(callback) { + return EXIF.getData(img, function () { + return callback(EXIF.getTag(this, "Orientation")); + }); + }; + } + + return loadExif(function (orientation) { + file.width = img.width; + file.height = img.height; + + var resizeInfo = _this13.options.resize.call(_this13, file, width, height, resizeMethod); + + var canvas = document.createElement("canvas"); + var ctx = canvas.getContext("2d"); + canvas.width = resizeInfo.trgWidth; + canvas.height = resizeInfo.trgHeight; + + if (orientation > 4) { + canvas.width = resizeInfo.trgHeight; + canvas.height = resizeInfo.trgWidth; + } + + switch (orientation) { + case 2: + // horizontal flip + ctx.translate(canvas.width, 0); + ctx.scale(-1, 1); + break; + + case 3: + // 180° rotate left + ctx.translate(canvas.width, canvas.height); + ctx.rotate(Math.PI); + break; + + case 4: + // vertical flip + ctx.translate(0, canvas.height); + ctx.scale(1, -1); + break; + + case 5: + // vertical flip + 90 rotate right + ctx.rotate(0.5 * Math.PI); + ctx.scale(1, -1); + break; + + case 6: + // 90° rotate right + ctx.rotate(0.5 * Math.PI); + ctx.translate(0, -canvas.width); + break; + + case 7: + // horizontal flip + 90 rotate right + ctx.rotate(0.5 * Math.PI); + ctx.translate(canvas.height, -canvas.width); + ctx.scale(-1, 1); + break; + + case 8: + // 90° rotate left + ctx.rotate(-0.5 * Math.PI); + ctx.translate(-canvas.height, 0); + break; + } // This is a bugfix for iOS' scaling bug. + + + drawImageIOSFix(ctx, img, resizeInfo.srcX != null ? resizeInfo.srcX : 0, resizeInfo.srcY != null ? resizeInfo.srcY : 0, resizeInfo.srcWidth, resizeInfo.srcHeight, resizeInfo.trgX != null ? resizeInfo.trgX : 0, resizeInfo.trgY != null ? resizeInfo.trgY : 0, resizeInfo.trgWidth, resizeInfo.trgHeight); + var thumbnail = canvas.toDataURL("image/png"); + + if (callback != null) { + return callback(thumbnail, canvas); + } + }); + }; + + if (callback != null) { + img.onerror = callback; + } + + return img.src = file.dataURL; + } // Goes through the queue and processes files if there aren't too many already. + + }, { + key: "processQueue", + value: function processQueue() { + var parallelUploads = this.options.parallelUploads; + var processingLength = this.getUploadingFiles().length; + var i = processingLength; // There are already at least as many files uploading than should be + + if (processingLength >= parallelUploads) { + return; + } + + var queuedFiles = this.getQueuedFiles(); + + if (!(queuedFiles.length > 0)) { + return; + } + + if (this.options.uploadMultiple) { + // The files should be uploaded in one request + return this.processFiles(queuedFiles.slice(0, parallelUploads - processingLength)); + } else { + while (i < parallelUploads) { + if (!queuedFiles.length) { + return; + } // Nothing left to process + + + this.processFile(queuedFiles.shift()); + i++; + } + } + } // Wrapper for `processFiles` + + }, { + key: "processFile", + value: function processFile(file) { + return this.processFiles([file]); + } // Loads the file, then calls finishedLoading() + + }, { + key: "processFiles", + value: function processFiles(files) { + var _iterator10 = dropzone_createForOfIteratorHelper(files, true), + _step10; + + try { + for (_iterator10.s(); !(_step10 = _iterator10.n()).done;) { + var file = _step10.value; + file.processing = true; // Backwards compatibility + + file.status = Dropzone.UPLOADING; + this.emit("processing", file); + } + } catch (err) { + _iterator10.e(err); + } finally { + _iterator10.f(); + } + + if (this.options.uploadMultiple) { + this.emit("processingmultiple", files); + } + + return this.uploadFiles(files); + } + }, { + key: "_getFilesWithXhr", + value: function _getFilesWithXhr(xhr) { + var files; + return files = this.files.filter(function (file) { + return file.xhr === xhr; + }).map(function (file) { + return file; + }); + } // Cancels the file upload and sets the status to CANCELED + // **if** the file is actually being uploaded. + // If it's still in the queue, the file is being removed from it and the status + // set to CANCELED. + + }, { + key: "cancelUpload", + value: function cancelUpload(file) { + if (file.status === Dropzone.UPLOADING) { + var groupedFiles = this._getFilesWithXhr(file.xhr); + + var _iterator11 = dropzone_createForOfIteratorHelper(groupedFiles, true), + _step11; + + try { + for (_iterator11.s(); !(_step11 = _iterator11.n()).done;) { + var groupedFile = _step11.value; + groupedFile.status = Dropzone.CANCELED; + } + } catch (err) { + _iterator11.e(err); + } finally { + _iterator11.f(); + } + + if (typeof file.xhr !== "undefined") { + file.xhr.abort(); + } + + var _iterator12 = dropzone_createForOfIteratorHelper(groupedFiles, true), + _step12; + + try { + for (_iterator12.s(); !(_step12 = _iterator12.n()).done;) { + var _groupedFile = _step12.value; + this.emit("canceled", _groupedFile); + } + } catch (err) { + _iterator12.e(err); + } finally { + _iterator12.f(); + } + + if (this.options.uploadMultiple) { + this.emit("canceledmultiple", groupedFiles); + } + } else if (file.status === Dropzone.ADDED || file.status === Dropzone.QUEUED) { + file.status = Dropzone.CANCELED; + this.emit("canceled", file); + + if (this.options.uploadMultiple) { + this.emit("canceledmultiple", [file]); + } + } + + if (this.options.autoProcessQueue) { + return this.processQueue(); + } + } + }, { + key: "resolveOption", + value: function resolveOption(option) { + if (typeof option === "function") { + for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) { + args[_key - 1] = arguments[_key]; + } + + return option.apply(this, args); + } + + return option; + } + }, { + key: "uploadFile", + value: function uploadFile(file) { + return this.uploadFiles([file]); + } + }, { + key: "uploadFiles", + value: function uploadFiles(files) { + var _this14 = this; + + this._transformFiles(files, function (transformedFiles) { + if (_this14.options.chunking) { + // Chunking is not allowed to be used with `uploadMultiple` so we know + // that there is only __one__file. + var transformedFile = transformedFiles[0]; + files[0].upload.chunked = _this14.options.chunking && (_this14.options.forceChunking || transformedFile.size > _this14.options.chunkSize); + files[0].upload.totalChunkCount = Math.ceil(transformedFile.size / _this14.options.chunkSize); + } + + if (files[0].upload.chunked) { + // This file should be sent in chunks! + // If the chunking option is set, we **know** that there can only be **one** file, since + // uploadMultiple is not allowed with this option. + var file = files[0]; + var _transformedFile = transformedFiles[0]; + var startedChunkCount = 0; + file.upload.chunks = []; + + var handleNextChunk = function handleNextChunk() { + var chunkIndex = 0; // Find the next item in file.upload.chunks that is not defined yet. + + while (file.upload.chunks[chunkIndex] !== undefined) { + chunkIndex++; + } // This means, that all chunks have already been started. + + + if (chunkIndex >= file.upload.totalChunkCount) return; + startedChunkCount++; + var start = chunkIndex * _this14.options.chunkSize; + var end = Math.min(start + _this14.options.chunkSize, _transformedFile.size); + var dataBlock = { + name: _this14._getParamName(0), + data: _transformedFile.webkitSlice ? _transformedFile.webkitSlice(start, end) : _transformedFile.slice(start, end), + filename: file.upload.filename, + chunkIndex: chunkIndex + }; + file.upload.chunks[chunkIndex] = { + file: file, + index: chunkIndex, + dataBlock: dataBlock, + // In case we want to retry. + status: Dropzone.UPLOADING, + progress: 0, + retries: 0 // The number of times this block has been retried. + + }; + + _this14._uploadData(files, [dataBlock]); + }; + + file.upload.finishedChunkUpload = function (chunk, response) { + var allFinished = true; + chunk.status = Dropzone.SUCCESS; // Clear the data from the chunk + + chunk.dataBlock = null; // Leaving this reference to xhr intact here will cause memory leaks in some browsers + + chunk.xhr = null; + + for (var i = 0; i < file.upload.totalChunkCount; i++) { + if (file.upload.chunks[i] === undefined) { + return handleNextChunk(); + } + + if (file.upload.chunks[i].status !== Dropzone.SUCCESS) { + allFinished = false; + } + } + + if (allFinished) { + _this14.options.chunksUploaded(file, function () { + _this14._finished(files, response, null); + }); + } + }; + + if (_this14.options.parallelChunkUploads) { + for (var i = 0; i < file.upload.totalChunkCount; i++) { + handleNextChunk(); + } + } else { + handleNextChunk(); + } + } else { + var dataBlocks = []; + + for (var _i2 = 0; _i2 < files.length; _i2++) { + dataBlocks[_i2] = { + name: _this14._getParamName(_i2), + data: transformedFiles[_i2], + filename: files[_i2].upload.filename + }; + } + + _this14._uploadData(files, dataBlocks); + } + }); + } /// Returns the right chunk for given file and xhr + + }, { + key: "_getChunk", + value: function _getChunk(file, xhr) { + for (var i = 0; i < file.upload.totalChunkCount; i++) { + if (file.upload.chunks[i] !== undefined && file.upload.chunks[i].xhr === xhr) { + return file.upload.chunks[i]; + } + } + } // This function actually uploads the file(s) to the server. + // If dataBlocks contains the actual data to upload (meaning, that this could either be transformed + // files, or individual chunks for chunked upload). + + }, { + key: "_uploadData", + value: function _uploadData(files, dataBlocks) { + var _this15 = this; + + var xhr = new XMLHttpRequest(); // Put the xhr object in the file objects to be able to reference it later. + + var _iterator13 = dropzone_createForOfIteratorHelper(files, true), + _step13; + + try { + for (_iterator13.s(); !(_step13 = _iterator13.n()).done;) { + var file = _step13.value; + file.xhr = xhr; + } + } catch (err) { + _iterator13.e(err); + } finally { + _iterator13.f(); + } + + if (files[0].upload.chunked) { + // Put the xhr object in the right chunk object, so it can be associated later, and found with _getChunk + files[0].upload.chunks[dataBlocks[0].chunkIndex].xhr = xhr; + } + + var method = this.resolveOption(this.options.method, files); + var url = this.resolveOption(this.options.url, files); + xhr.open(method, url, true); // Setting the timeout after open because of IE11 issue: https://gitlab.com/meno/dropzone/issues/8 + + var timeout = this.resolveOption(this.options.timeout, files); + if (timeout) xhr.timeout = this.resolveOption(this.options.timeout, files); // Has to be after `.open()`. See https://github.com/enyo/dropzone/issues/179 + + xhr.withCredentials = !!this.options.withCredentials; + + xhr.onload = function (e) { + _this15._finishedUploading(files, xhr, e); + }; + + xhr.ontimeout = function () { + _this15._handleUploadError(files, xhr, "Request timedout after ".concat(_this15.options.timeout / 1000, " seconds")); + }; + + xhr.onerror = function () { + _this15._handleUploadError(files, xhr); + }; // Some browsers do not have the .upload property + + + var progressObj = xhr.upload != null ? xhr.upload : xhr; + + progressObj.onprogress = function (e) { + return _this15._updateFilesUploadProgress(files, xhr, e); + }; + + var headers = { + Accept: "application/json", + "Cache-Control": "no-cache", + "X-Requested-With": "XMLHttpRequest" + }; + + if (this.options.headers) { + Dropzone.extend(headers, this.options.headers); + } + + for (var headerName in headers) { + var headerValue = headers[headerName]; + + if (headerValue) { + xhr.setRequestHeader(headerName, headerValue); + } + } + + var formData = new FormData(); // Adding all @options parameters + + if (this.options.params) { + var additionalParams = this.options.params; + + if (typeof additionalParams === "function") { + additionalParams = additionalParams.call(this, files, xhr, files[0].upload.chunked ? this._getChunk(files[0], xhr) : null); + } + + for (var key in additionalParams) { + var value = additionalParams[key]; + + if (Array.isArray(value)) { + // The additional parameter contains an array, + // so lets iterate over it to attach each value + // individually. + for (var i = 0; i < value.length; i++) { + formData.append(key, value[i]); + } + } else { + formData.append(key, value); + } + } + } // Let the user add additional data if necessary + + + var _iterator14 = dropzone_createForOfIteratorHelper(files, true), + _step14; + + try { + for (_iterator14.s(); !(_step14 = _iterator14.n()).done;) { + var _file = _step14.value; + this.emit("sending", _file, xhr, formData); + } + } catch (err) { + _iterator14.e(err); + } finally { + _iterator14.f(); + } + + if (this.options.uploadMultiple) { + this.emit("sendingmultiple", files, xhr, formData); + } + + this._addFormElementData(formData); // Finally add the files + // Has to be last because some servers (eg: S3) expect the file to be the last parameter + + + for (var _i3 = 0; _i3 < dataBlocks.length; _i3++) { + var dataBlock = dataBlocks[_i3]; + formData.append(dataBlock.name, dataBlock.data, dataBlock.filename); + } + + this.submitRequest(xhr, formData, files); + } // Transforms all files with this.options.transformFile and invokes done with the transformed files when done. + + }, { + key: "_transformFiles", + value: function _transformFiles(files, done) { + var _this16 = this; + + var transformedFiles = []; // Clumsy way of handling asynchronous calls, until I get to add a proper Future library. + + var doneCounter = 0; + + var _loop = function _loop(i) { + _this16.options.transformFile.call(_this16, files[i], function (transformedFile) { + transformedFiles[i] = transformedFile; + + if (++doneCounter === files.length) { + done(transformedFiles); + } + }); + }; + + for (var i = 0; i < files.length; i++) { + _loop(i); + } + } // Takes care of adding other input elements of the form to the AJAX request + + }, { + key: "_addFormElementData", + value: function _addFormElementData(formData) { + // Take care of other input elements + if (this.element.tagName === "FORM") { + var _iterator15 = dropzone_createForOfIteratorHelper(this.element.querySelectorAll("input, textarea, select, button"), true), + _step15; + + try { + for (_iterator15.s(); !(_step15 = _iterator15.n()).done;) { + var input = _step15.value; + var inputName = input.getAttribute("name"); + var inputType = input.getAttribute("type"); + if (inputType) inputType = inputType.toLowerCase(); // If the input doesn't have a name, we can't use it. + + if (typeof inputName === "undefined" || inputName === null) continue; + + if (input.tagName === "SELECT" && input.hasAttribute("multiple")) { + // Possibly multiple values + var _iterator16 = dropzone_createForOfIteratorHelper(input.options, true), + _step16; + + try { + for (_iterator16.s(); !(_step16 = _iterator16.n()).done;) { + var option = _step16.value; + + if (option.selected) { + formData.append(inputName, option.value); + } + } + } catch (err) { + _iterator16.e(err); + } finally { + _iterator16.f(); + } + } else if (!inputType || inputType !== "checkbox" && inputType !== "radio" || input.checked) { + formData.append(inputName, input.value); + } + } + } catch (err) { + _iterator15.e(err); + } finally { + _iterator15.f(); + } + } + } // Invoked when there is new progress information about given files. + // If e is not provided, it is assumed that the upload is finished. + + }, { + key: "_updateFilesUploadProgress", + value: function _updateFilesUploadProgress(files, xhr, e) { + if (!files[0].upload.chunked) { + // Handle file uploads without chunking + var _iterator17 = dropzone_createForOfIteratorHelper(files, true), + _step17; + + try { + for (_iterator17.s(); !(_step17 = _iterator17.n()).done;) { + var file = _step17.value; + + if (file.upload.total && file.upload.bytesSent && file.upload.bytesSent == file.upload.total) { + // If both, the `total` and `bytesSent` have already been set, and + // they are equal (meaning progress is at 100%), we can skip this + // file, since an upload progress shouldn't go down. + continue; + } + + if (e) { + file.upload.progress = 100 * e.loaded / e.total; + file.upload.total = e.total; + file.upload.bytesSent = e.loaded; + } else { + // No event, so we're at 100% + file.upload.progress = 100; + file.upload.bytesSent = file.upload.total; + } + + this.emit("uploadprogress", file, file.upload.progress, file.upload.bytesSent); + } + } catch (err) { + _iterator17.e(err); + } finally { + _iterator17.f(); + } + } else { + // Handle chunked file uploads + // Chunked upload is not compatible with uploading multiple files in one + // request, so we know there's only one file. + var _file2 = files[0]; // Since this is a chunked upload, we need to update the appropriate chunk + // progress. + + var chunk = this._getChunk(_file2, xhr); + + if (e) { + chunk.progress = 100 * e.loaded / e.total; + chunk.total = e.total; + chunk.bytesSent = e.loaded; + } else { + // No event, so we're at 100% + chunk.progress = 100; + chunk.bytesSent = chunk.total; + } // Now tally the *file* upload progress from its individual chunks + + + _file2.upload.progress = 0; + _file2.upload.total = 0; + _file2.upload.bytesSent = 0; + + for (var i = 0; i < _file2.upload.totalChunkCount; i++) { + if (_file2.upload.chunks[i] && typeof _file2.upload.chunks[i].progress !== "undefined") { + _file2.upload.progress += _file2.upload.chunks[i].progress; + _file2.upload.total += _file2.upload.chunks[i].total; + _file2.upload.bytesSent += _file2.upload.chunks[i].bytesSent; + } + } // Since the process is a percentage, we need to divide by the amount of + // chunks we've used. + + + _file2.upload.progress = _file2.upload.progress / _file2.upload.totalChunkCount; + this.emit("uploadprogress", _file2, _file2.upload.progress, _file2.upload.bytesSent); + } + } + }, { + key: "_finishedUploading", + value: function _finishedUploading(files, xhr, e) { + var response; + + if (files[0].status === Dropzone.CANCELED) { + return; + } + + if (xhr.readyState !== 4) { + return; + } + + if (xhr.responseType !== "arraybuffer" && xhr.responseType !== "blob") { + response = xhr.responseText; + + if (xhr.getResponseHeader("content-type") && ~xhr.getResponseHeader("content-type").indexOf("application/json")) { + try { + response = JSON.parse(response); + } catch (error) { + e = error; + response = "Invalid JSON response from server."; + } + } + } + + this._updateFilesUploadProgress(files, xhr); + + if (!(200 <= xhr.status && xhr.status < 300)) { + this._handleUploadError(files, xhr, response); + } else { + if (files[0].upload.chunked) { + files[0].upload.finishedChunkUpload(this._getChunk(files[0], xhr), response); + } else { + this._finished(files, response, e); + } + } + } + }, { + key: "_handleUploadError", + value: function _handleUploadError(files, xhr, response) { + if (files[0].status === Dropzone.CANCELED) { + return; + } + + if (files[0].upload.chunked && this.options.retryChunks) { + var chunk = this._getChunk(files[0], xhr); + + if (chunk.retries++ < this.options.retryChunksLimit) { + this._uploadData(files, [chunk.dataBlock]); + + return; + } else { + console.warn("Retried this chunk too often. Giving up."); + } + } + + this._errorProcessing(files, response || this.options.dictResponseError.replace("{{statusCode}}", xhr.status), xhr); + } + }, { + key: "submitRequest", + value: function submitRequest(xhr, formData, files) { + if (xhr.readyState != 1) { + console.warn("Cannot send this request because the XMLHttpRequest.readyState is not OPENED."); + return; + } + + xhr.send(formData); + } // Called internally when processing is finished. + // Individual callbacks have to be called in the appropriate sections. + + }, { + key: "_finished", + value: function _finished(files, responseText, e) { + var _iterator18 = dropzone_createForOfIteratorHelper(files, true), + _step18; + + try { + for (_iterator18.s(); !(_step18 = _iterator18.n()).done;) { + var file = _step18.value; + file.status = Dropzone.SUCCESS; + this.emit("success", file, responseText, e); + this.emit("complete", file); + } + } catch (err) { + _iterator18.e(err); + } finally { + _iterator18.f(); + } + + if (this.options.uploadMultiple) { + this.emit("successmultiple", files, responseText, e); + this.emit("completemultiple", files); + } + + if (this.options.autoProcessQueue) { + return this.processQueue(); + } + } // Called internally when processing is finished. + // Individual callbacks have to be called in the appropriate sections. + + }, { + key: "_errorProcessing", + value: function _errorProcessing(files, message, xhr) { + var _iterator19 = dropzone_createForOfIteratorHelper(files, true), + _step19; + + try { + for (_iterator19.s(); !(_step19 = _iterator19.n()).done;) { + var file = _step19.value; + file.status = Dropzone.ERROR; + this.emit("error", file, message, xhr); + this.emit("complete", file); + } + } catch (err) { + _iterator19.e(err); + } finally { + _iterator19.f(); + } + + if (this.options.uploadMultiple) { + this.emit("errormultiple", files, message, xhr); + this.emit("completemultiple", files); + } + + if (this.options.autoProcessQueue) { + return this.processQueue(); + } + } + }], [{ + key: "initClass", + value: function initClass() { + // Exposing the emitter class, mainly for tests + this.prototype.Emitter = Emitter; + /* + This is a list of all available events you can register on a dropzone object. + You can register an event handler like this: + dropzone.on("dragEnter", function() { }); + */ + + this.prototype.events = ["drop", "dragstart", "dragend", "dragenter", "dragover", "dragleave", "addedfile", "addedfiles", "removedfile", "thumbnail", "error", "errormultiple", "processing", "processingmultiple", "uploadprogress", "totaluploadprogress", "sending", "sendingmultiple", "success", "successmultiple", "canceled", "canceledmultiple", "complete", "completemultiple", "reset", "maxfilesexceeded", "maxfilesreached", "queuecomplete"]; + this.prototype._thumbnailQueue = []; + this.prototype._processingThumbnail = false; + } // global utility + + }, { + key: "extend", + value: function extend(target) { + for (var _len2 = arguments.length, objects = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) { + objects[_key2 - 1] = arguments[_key2]; + } + + for (var _i4 = 0, _objects = objects; _i4 < _objects.length; _i4++) { + var object = _objects[_i4]; + + for (var key in object) { + var val = object[key]; + target[key] = val; + } + } + + return target; + } + }, { + key: "uuidv4", + value: function uuidv4() { + return "xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g, function (c) { + var r = Math.random() * 16 | 0, + v = c === "x" ? r : r & 0x3 | 0x8; + return v.toString(16); + }); + } + }]); + + return Dropzone; +}(Emitter); + + +Dropzone.initClass(); +Dropzone.version = "5.9.3"; // This is a map of options for your different dropzones. Add configurations +// to this object for your different dropzone elemens. +// +// Example: +// +// Dropzone.options.myDropzoneElementId = { maxFilesize: 1 }; +// +// To disable autoDiscover for a specific element, you can set `false` as an option: +// +// Dropzone.options.myDisabledElementId = false; +// +// And in html: +// +//
    + +Dropzone.options = {}; // Returns the options for an element or undefined if none available. + +Dropzone.optionsForElement = function (element) { + // Get the `Dropzone.options.elementId` for this element if it exists + if (element.getAttribute("id")) { + return Dropzone.options[camelize(element.getAttribute("id"))]; + } else { + return undefined; + } +}; // Holds a list of all dropzone instances + + +Dropzone.instances = []; // Returns the dropzone for given element if any + +Dropzone.forElement = function (element) { + if (typeof element === "string") { + element = document.querySelector(element); + } + + if ((element != null ? element.dropzone : undefined) == null) { + throw new Error("No Dropzone found for given element. This is probably because you're trying to access it before Dropzone had the time to initialize. Use the `init` option to setup any additional observers on your Dropzone."); + } + + return element.dropzone; +}; // Set to false if you don't want Dropzone to automatically find and attach to .dropzone elements. + + +Dropzone.autoDiscover = true; // Looks for all .dropzone elements and creates a dropzone for them + +Dropzone.discover = function () { + var dropzones; + + if (document.querySelectorAll) { + dropzones = document.querySelectorAll(".dropzone"); + } else { + dropzones = []; // IE :( + + var checkElements = function checkElements(elements) { + return function () { + var result = []; + + var _iterator20 = dropzone_createForOfIteratorHelper(elements, true), + _step20; + + try { + for (_iterator20.s(); !(_step20 = _iterator20.n()).done;) { + var el = _step20.value; + + if (/(^| )dropzone($| )/.test(el.className)) { + result.push(dropzones.push(el)); + } else { + result.push(undefined); + } + } + } catch (err) { + _iterator20.e(err); + } finally { + _iterator20.f(); + } + + return result; + }(); + }; + + checkElements(document.getElementsByTagName("div")); + checkElements(document.getElementsByTagName("form")); + } + + return function () { + var result = []; + + var _iterator21 = dropzone_createForOfIteratorHelper(dropzones, true), + _step21; + + try { + for (_iterator21.s(); !(_step21 = _iterator21.n()).done;) { + var dropzone = _step21.value; + + // Create a dropzone unless auto discover has been disabled for specific element + if (Dropzone.optionsForElement(dropzone) !== false) { + result.push(new Dropzone(dropzone)); + } else { + result.push(undefined); + } + } + } catch (err) { + _iterator21.e(err); + } finally { + _iterator21.f(); + } + + return result; + }(); +}; // Some browsers support drag and drog functionality, but not correctly. +// +// So I created a blocklist of userAgents. Yes, yes. Browser sniffing, I know. +// But what to do when browsers *theoretically* support an API, but crash +// when using it. +// +// This is a list of regular expressions tested against navigator.userAgent +// +// ** It should only be used on browser that *do* support the API, but +// incorrectly ** + + +Dropzone.blockedBrowsers = [// The mac os and windows phone version of opera 12 seems to have a problem with the File drag'n'drop API. +/opera.*(Macintosh|Windows Phone).*version\/12/i]; // Checks if the browser is supported + +Dropzone.isBrowserSupported = function () { + var capableBrowser = true; + + if (window.File && window.FileReader && window.FileList && window.Blob && window.FormData && document.querySelector) { + if (!("classList" in document.createElement("a"))) { + capableBrowser = false; + } else { + if (Dropzone.blacklistedBrowsers !== undefined) { + // Since this has been renamed, this makes sure we don't break older + // configuration. + Dropzone.blockedBrowsers = Dropzone.blacklistedBrowsers; + } // The browser supports the API, but may be blocked. + + + var _iterator22 = dropzone_createForOfIteratorHelper(Dropzone.blockedBrowsers, true), + _step22; + + try { + for (_iterator22.s(); !(_step22 = _iterator22.n()).done;) { + var regex = _step22.value; + + if (regex.test(navigator.userAgent)) { + capableBrowser = false; + continue; + } + } + } catch (err) { + _iterator22.e(err); + } finally { + _iterator22.f(); + } + } + } else { + capableBrowser = false; + } + + return capableBrowser; +}; + +Dropzone.dataURItoBlob = function (dataURI) { + // convert base64 to raw binary data held in a string + // doesn't handle URLEncoded DataURIs - see SO answer #6850276 for code that does this + var byteString = atob(dataURI.split(",")[1]); // separate out the mime component + + var mimeString = dataURI.split(",")[0].split(":")[1].split(";")[0]; // write the bytes of the string to an ArrayBuffer + + var ab = new ArrayBuffer(byteString.length); + var ia = new Uint8Array(ab); + + for (var i = 0, end = byteString.length, asc = 0 <= end; asc ? i <= end : i >= end; asc ? i++ : i--) { + ia[i] = byteString.charCodeAt(i); + } // write the ArrayBuffer to a blob + + + return new Blob([ab], { + type: mimeString + }); +}; // Returns an array without the rejected item + + +var without = function without(list, rejectedItem) { + return list.filter(function (item) { + return item !== rejectedItem; + }).map(function (item) { + return item; + }); +}; // abc-def_ghi -> abcDefGhi + + +var camelize = function camelize(str) { + return str.replace(/[\-_](\w)/g, function (match) { + return match.charAt(1).toUpperCase(); + }); +}; // Creates an element from string + + +Dropzone.createElement = function (string) { + var div = document.createElement("div"); + div.innerHTML = string; + return div.childNodes[0]; +}; // Tests if given element is inside (or simply is) the container + + +Dropzone.elementInside = function (element, container) { + if (element === container) { + return true; + } // Coffeescript doesn't support do/while loops + + + while (element = element.parentNode) { + if (element === container) { + return true; + } + } + + return false; +}; + +Dropzone.getElement = function (el, name) { + var element; + + if (typeof el === "string") { + element = document.querySelector(el); + } else if (el.nodeType != null) { + element = el; + } + + if (element == null) { + throw new Error("Invalid `".concat(name, "` option provided. Please provide a CSS selector or a plain HTML element.")); + } + + return element; +}; + +Dropzone.getElements = function (els, name) { + var el, elements; + + if (els instanceof Array) { + elements = []; + + try { + var _iterator23 = dropzone_createForOfIteratorHelper(els, true), + _step23; + + try { + for (_iterator23.s(); !(_step23 = _iterator23.n()).done;) { + el = _step23.value; + elements.push(this.getElement(el, name)); + } + } catch (err) { + _iterator23.e(err); + } finally { + _iterator23.f(); + } + } catch (e) { + elements = null; + } + } else if (typeof els === "string") { + elements = []; + + var _iterator24 = dropzone_createForOfIteratorHelper(document.querySelectorAll(els), true), + _step24; + + try { + for (_iterator24.s(); !(_step24 = _iterator24.n()).done;) { + el = _step24.value; + elements.push(el); + } + } catch (err) { + _iterator24.e(err); + } finally { + _iterator24.f(); + } + } else if (els.nodeType != null) { + elements = [els]; + } + + if (elements == null || !elements.length) { + throw new Error("Invalid `".concat(name, "` option provided. Please provide a CSS selector, a plain HTML element or a list of those.")); + } + + return elements; +}; // Asks the user the question and calls accepted or rejected accordingly +// +// The default implementation just uses `window.confirm` and then calls the +// appropriate callback. + + +Dropzone.confirm = function (question, accepted, rejected) { + if (window.confirm(question)) { + return accepted(); + } else if (rejected != null) { + return rejected(); + } +}; // Validates the mime type like this: +// +// https://developer.mozilla.org/en-US/docs/HTML/Element/input#attr-accept + + +Dropzone.isValidFile = function (file, acceptedFiles) { + if (!acceptedFiles) { + return true; + } // If there are no accepted mime types, it's OK + + + acceptedFiles = acceptedFiles.split(","); + var mimeType = file.type; + var baseMimeType = mimeType.replace(/\/.*$/, ""); + + var _iterator25 = dropzone_createForOfIteratorHelper(acceptedFiles, true), + _step25; + + try { + for (_iterator25.s(); !(_step25 = _iterator25.n()).done;) { + var validType = _step25.value; + validType = validType.trim(); + + if (validType.charAt(0) === ".") { + if (file.name.toLowerCase().indexOf(validType.toLowerCase(), file.name.length - validType.length) !== -1) { + return true; + } + } else if (/\/\*$/.test(validType)) { + // This is something like a image/* mime type + if (baseMimeType === validType.replace(/\/.*$/, "")) { + return true; + } + } else { + if (mimeType === validType) { + return true; + } + } + } + } catch (err) { + _iterator25.e(err); + } finally { + _iterator25.f(); + } + + return false; +}; // Augment jQuery + + +if (typeof jQuery !== "undefined" && jQuery !== null) { + jQuery.fn.dropzone = function (options) { + return this.each(function () { + return new Dropzone(this, options); + }); + }; +} // Dropzone file status codes + + +Dropzone.ADDED = "added"; +Dropzone.QUEUED = "queued"; // For backwards compatibility. Now, if a file is accepted, it's either queued +// or uploading. + +Dropzone.ACCEPTED = Dropzone.QUEUED; +Dropzone.UPLOADING = "uploading"; +Dropzone.PROCESSING = Dropzone.UPLOADING; // alias + +Dropzone.CANCELED = "canceled"; +Dropzone.ERROR = "error"; +Dropzone.SUCCESS = "success"; +/* + + Bugfix for iOS 6 and 7 + Source: http://stackoverflow.com/questions/11929099/html5-canvas-drawimage-ratio-bug-ios + based on the work of https://github.com/stomita/ios-imagefile-megapixel + + */ +// Detecting vertical squash in loaded image. +// Fixes a bug which squash image vertically while drawing into canvas for some images. +// This is a bug in iOS6 devices. This function from https://github.com/stomita/ios-imagefile-megapixel + +var detectVerticalSquash = function detectVerticalSquash(img) { + var iw = img.naturalWidth; + var ih = img.naturalHeight; + var canvas = document.createElement("canvas"); + canvas.width = 1; + canvas.height = ih; + var ctx = canvas.getContext("2d"); + ctx.drawImage(img, 0, 0); + + var _ctx$getImageData = ctx.getImageData(1, 0, 1, ih), + data = _ctx$getImageData.data; // search image edge pixel position in case it is squashed vertically. + + + var sy = 0; + var ey = ih; + var py = ih; + + while (py > sy) { + var alpha = data[(py - 1) * 4 + 3]; + + if (alpha === 0) { + ey = py; + } else { + sy = py; + } + + py = ey + sy >> 1; + } + + var ratio = py / ih; + + if (ratio === 0) { + return 1; + } else { + return ratio; + } +}; // A replacement for context.drawImage +// (args are for source and destination). + + +var drawImageIOSFix = function drawImageIOSFix(ctx, img, sx, sy, sw, sh, dx, dy, dw, dh) { + var vertSquashRatio = detectVerticalSquash(img); + return ctx.drawImage(img, sx, sy, sw, sh, dx, dy, dw, dh / vertSquashRatio); +}; // Based on MinifyJpeg +// Source: http://www.perry.cz/files/ExifRestorer.js +// http://elicon.blog57.fc2.com/blog-entry-206.html + + +var ExifRestore = /*#__PURE__*/function () { + function ExifRestore() { + dropzone_classCallCheck(this, ExifRestore); + } + + dropzone_createClass(ExifRestore, null, [{ + key: "initClass", + value: function initClass() { + this.KEY_STR = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="; + } + }, { + key: "encode64", + value: function encode64(input) { + var output = ""; + var chr1 = undefined; + var chr2 = undefined; + var chr3 = ""; + var enc1 = undefined; + var enc2 = undefined; + var enc3 = undefined; + var enc4 = ""; + var i = 0; + + while (true) { + chr1 = input[i++]; + chr2 = input[i++]; + chr3 = input[i++]; + enc1 = chr1 >> 2; + enc2 = (chr1 & 3) << 4 | chr2 >> 4; + enc3 = (chr2 & 15) << 2 | chr3 >> 6; + enc4 = chr3 & 63; + + if (isNaN(chr2)) { + enc3 = enc4 = 64; + } else if (isNaN(chr3)) { + enc4 = 64; + } + + output = output + this.KEY_STR.charAt(enc1) + this.KEY_STR.charAt(enc2) + this.KEY_STR.charAt(enc3) + this.KEY_STR.charAt(enc4); + chr1 = chr2 = chr3 = ""; + enc1 = enc2 = enc3 = enc4 = ""; + + if (!(i < input.length)) { + break; + } + } + + return output; + } + }, { + key: "restore", + value: function restore(origFileBase64, resizedFileBase64) { + if (!origFileBase64.match("data:image/jpeg;base64,")) { + return resizedFileBase64; + } + + var rawImage = this.decode64(origFileBase64.replace("data:image/jpeg;base64,", "")); + var segments = this.slice2Segments(rawImage); + var image = this.exifManipulation(resizedFileBase64, segments); + return "data:image/jpeg;base64,".concat(this.encode64(image)); + } + }, { + key: "exifManipulation", + value: function exifManipulation(resizedFileBase64, segments) { + var exifArray = this.getExifArray(segments); + var newImageArray = this.insertExif(resizedFileBase64, exifArray); + var aBuffer = new Uint8Array(newImageArray); + return aBuffer; + } + }, { + key: "getExifArray", + value: function getExifArray(segments) { + var seg = undefined; + var x = 0; + + while (x < segments.length) { + seg = segments[x]; + + if (seg[0] === 255 & seg[1] === 225) { + return seg; + } + + x++; + } + + return []; + } + }, { + key: "insertExif", + value: function insertExif(resizedFileBase64, exifArray) { + var imageData = resizedFileBase64.replace("data:image/jpeg;base64,", ""); + var buf = this.decode64(imageData); + var separatePoint = buf.indexOf(255, 3); + var mae = buf.slice(0, separatePoint); + var ato = buf.slice(separatePoint); + var array = mae; + array = array.concat(exifArray); + array = array.concat(ato); + return array; + } + }, { + key: "slice2Segments", + value: function slice2Segments(rawImageArray) { + var head = 0; + var segments = []; + + while (true) { + var length; + + if (rawImageArray[head] === 255 & rawImageArray[head + 1] === 218) { + break; + } + + if (rawImageArray[head] === 255 & rawImageArray[head + 1] === 216) { + head += 2; + } else { + length = rawImageArray[head + 2] * 256 + rawImageArray[head + 3]; + var endPoint = head + length + 2; + var seg = rawImageArray.slice(head, endPoint); + segments.push(seg); + head = endPoint; + } + + if (head > rawImageArray.length) { + break; + } + } + + return segments; + } + }, { + key: "decode64", + value: function decode64(input) { + var output = ""; + var chr1 = undefined; + var chr2 = undefined; + var chr3 = ""; + var enc1 = undefined; + var enc2 = undefined; + var enc3 = undefined; + var enc4 = ""; + var i = 0; + var buf = []; // remove all characters that are not A-Z, a-z, 0-9, +, /, or = + + var base64test = /[^A-Za-z0-9\+\/\=]/g; + + if (base64test.exec(input)) { + console.warn("There were invalid base64 characters in the input text.\nValid base64 characters are A-Z, a-z, 0-9, '+', '/',and '='\nExpect errors in decoding."); + } + + input = input.replace(/[^A-Za-z0-9\+\/\=]/g, ""); + + while (true) { + enc1 = this.KEY_STR.indexOf(input.charAt(i++)); + enc2 = this.KEY_STR.indexOf(input.charAt(i++)); + enc3 = this.KEY_STR.indexOf(input.charAt(i++)); + enc4 = this.KEY_STR.indexOf(input.charAt(i++)); + chr1 = enc1 << 2 | enc2 >> 4; + chr2 = (enc2 & 15) << 4 | enc3 >> 2; + chr3 = (enc3 & 3) << 6 | enc4; + buf.push(chr1); + + if (enc3 !== 64) { + buf.push(chr2); + } + + if (enc4 !== 64) { + buf.push(chr3); + } + + chr1 = chr2 = chr3 = ""; + enc1 = enc2 = enc3 = enc4 = ""; + + if (!(i < input.length)) { + break; + } + } + + return buf; + } + }]); + + return ExifRestore; +}(); + +ExifRestore.initClass(); +/* + * contentloaded.js + * + * Author: Diego Perini (diego.perini at gmail.com) + * Summary: cross-browser wrapper for DOMContentLoaded + * Updated: 20101020 + * License: MIT + * Version: 1.2 + * + * URL: + * http://javascript.nwbox.com/ContentLoaded/ + * http://javascript.nwbox.com/ContentLoaded/MIT-LICENSE + */ +// @win window reference +// @fn function reference + +var contentLoaded = function contentLoaded(win, fn) { + var done = false; + var top = true; + var doc = win.document; + var root = doc.documentElement; + var add = doc.addEventListener ? "addEventListener" : "attachEvent"; + var rem = doc.addEventListener ? "removeEventListener" : "detachEvent"; + var pre = doc.addEventListener ? "" : "on"; + + var init = function init(e) { + if (e.type === "readystatechange" && doc.readyState !== "complete") { + return; + } + + (e.type === "load" ? win : doc)[rem](pre + e.type, init, false); + + if (!done && (done = true)) { + return fn.call(win, e.type || e); + } + }; + + var poll = function poll() { + try { + root.doScroll("left"); + } catch (e) { + setTimeout(poll, 50); + return; + } + + return init("poll"); + }; + + if (doc.readyState !== "complete") { + if (doc.createEventObject && root.doScroll) { + try { + top = !win.frameElement; + } catch (error) {} + + if (top) { + poll(); + } + } + + doc[add](pre + "DOMContentLoaded", init, false); + doc[add](pre + "readystatechange", init, false); + return win[add](pre + "load", init, false); + } +}; // As a single function to be able to write tests. + + +Dropzone._autoDiscoverFunction = function () { + if (Dropzone.autoDiscover) { + return Dropzone.discover(); + } +}; + +contentLoaded(window, Dropzone._autoDiscoverFunction); + +function __guard__(value, transform) { + return typeof value !== "undefined" && value !== null ? transform(value) : undefined; +} + +function __guardMethod__(obj, methodName, transform) { + if (typeof obj !== "undefined" && obj !== null && typeof obj[methodName] === "function") { + return transform(obj, methodName); + } else { + return undefined; + } +} + + +;// CONCATENATED MODULE: ./tool/dropzone.dist.js + /// Make Dropzone a global variable. + +window.Dropzone = Dropzone; +/* harmony default export */ var dropzone_dist = (Dropzone); + +}(); +/******/ return __webpack_exports__; +/******/ })() +; +}); \ No newline at end of file diff --git a/pxy_dashboard/static/dashboard/vendor/dropzone/min/__init__.py b/pxy_dashboard/static/dashboard/vendor/dropzone/min/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/pxy_dashboard/static/dashboard/vendor/dropzone/min/basic.min.css b/pxy_dashboard/static/dashboard/vendor/dropzone/min/basic.min.css new file mode 100644 index 0000000..75628dd --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/dropzone/min/basic.min.css @@ -0,0 +1 @@ +.dropzone,.dropzone *{box-sizing:border-box}.dropzone{position:relative}.dropzone .dz-preview{position:relative;display:inline-block;width:120px;margin:.5em}.dropzone .dz-preview .dz-progress{display:block;height:15px;border:1px solid #aaa}.dropzone .dz-preview .dz-progress .dz-upload{display:block;height:100%;width:0;background:green}.dropzone .dz-preview .dz-error-message{color:red;display:none}.dropzone .dz-preview.dz-error .dz-error-message,.dropzone .dz-preview.dz-error .dz-error-mark{display:block}.dropzone .dz-preview.dz-success .dz-success-mark{display:block}.dropzone .dz-preview .dz-error-mark,.dropzone .dz-preview .dz-success-mark{position:absolute;display:none;left:30px;top:30px;width:54px;height:58px;left:50%;margin-left:-27px} \ No newline at end of file diff --git a/pxy_dashboard/static/dashboard/vendor/dropzone/min/dropzone-amd-module.min.js b/pxy_dashboard/static/dashboard/vendor/dropzone/min/dropzone-amd-module.min.js new file mode 100644 index 0000000..94e32e3 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/dropzone/min/dropzone-amd-module.min.js @@ -0,0 +1 @@ +!function(e,t){if("object"==typeof exports&&"object"==typeof module)module.exports=t();else if("function"==typeof define&&define.amd)define([],t);else{var n=t();for(var r in n)("object"==typeof exports?exports:e)[r]=n[r]}}(self,(function(){return function(){var e={3099:function(e){e.exports=function(e){if("function"!=typeof e)throw TypeError(String(e)+" is not a function");return e}},6077:function(e,t,n){var r=n(111);e.exports=function(e){if(!r(e)&&null!==e)throw TypeError("Can't set "+String(e)+" as a prototype");return e}},1223:function(e,t,n){var r=n(5112),i=n(30),o=n(3070),a=r("unscopables"),u=Array.prototype;null==u[a]&&o.f(u,a,{configurable:!0,value:i(null)}),e.exports=function(e){u[a][e]=!0}},1530:function(e,t,n){"use strict";var r=n(8710).charAt;e.exports=function(e,t,n){return t+(n?r(e,t).length:1)}},5787:function(e){e.exports=function(e,t,n){if(!(e instanceof t))throw TypeError("Incorrect "+(n?n+" ":"")+"invocation");return e}},9670:function(e,t,n){var r=n(111);e.exports=function(e){if(!r(e))throw TypeError(String(e)+" is not an object");return e}},4019:function(e){e.exports="undefined"!=typeof ArrayBuffer&&"undefined"!=typeof DataView},260:function(e,t,n){"use strict";var r,i=n(4019),o=n(9781),a=n(7854),u=n(111),s=n(6656),l=n(648),c=n(8880),f=n(1320),p=n(3070).f,h=n(9518),d=n(7674),v=n(5112),y=n(9711),g=a.Int8Array,m=g&&g.prototype,b=a.Uint8ClampedArray,x=b&&b.prototype,w=g&&h(g),E=m&&h(m),k=Object.prototype,A=k.isPrototypeOf,S=v("toStringTag"),F=y("TYPED_ARRAY_TAG"),T=i&&!!d&&"Opera"!==l(a.opera),C=!1,L={Int8Array:1,Uint8Array:1,Uint8ClampedArray:1,Int16Array:2,Uint16Array:2,Int32Array:4,Uint32Array:4,Float32Array:4,Float64Array:8},R={BigInt64Array:8,BigUint64Array:8},I=function(e){if(!u(e))return!1;var t=l(e);return s(L,t)||s(R,t)};for(r in L)a[r]||(T=!1);if((!T||"function"!=typeof w||w===Function.prototype)&&(w=function(){throw TypeError("Incorrect invocation")},T))for(r in L)a[r]&&d(a[r],w);if((!T||!E||E===k)&&(E=w.prototype,T))for(r in L)a[r]&&d(a[r].prototype,E);if(T&&h(x)!==E&&d(x,E),o&&!s(E,S))for(r in C=!0,p(E,S,{get:function(){return u(this)?this[F]:void 0}}),L)a[r]&&c(a[r],F,r);e.exports={NATIVE_ARRAY_BUFFER_VIEWS:T,TYPED_ARRAY_TAG:C&&F,aTypedArray:function(e){if(I(e))return e;throw TypeError("Target is not a typed array")},aTypedArrayConstructor:function(e){if(d){if(A.call(w,e))return e}else for(var t in L)if(s(L,r)){var n=a[t];if(n&&(e===n||A.call(n,e)))return e}throw TypeError("Target is not a typed array constructor")},exportTypedArrayMethod:function(e,t,n){if(o){if(n)for(var r in L){var i=a[r];i&&s(i.prototype,e)&&delete i.prototype[e]}E[e]&&!n||f(E,e,n?t:T&&m[e]||t)}},exportTypedArrayStaticMethod:function(e,t,n){var r,i;if(o){if(d){if(n)for(r in L)(i=a[r])&&s(i,e)&&delete i[e];if(w[e]&&!n)return;try{return f(w,e,n?t:T&&g[e]||t)}catch(e){}}for(r in L)!(i=a[r])||i[e]&&!n||f(i,e,t)}},isView:function(e){if(!u(e))return!1;var t=l(e);return"DataView"===t||s(L,t)||s(R,t)},isTypedArray:I,TypedArray:w,TypedArrayPrototype:E}},3331:function(e,t,n){"use strict";var r=n(7854),i=n(9781),o=n(4019),a=n(8880),u=n(2248),s=n(7293),l=n(5787),c=n(9958),f=n(7466),p=n(7067),h=n(1179),d=n(9518),v=n(7674),y=n(8006).f,g=n(3070).f,m=n(1285),b=n(8003),x=n(9909),w=x.get,E=x.set,k="ArrayBuffer",A="DataView",S="Wrong index",F=r.ArrayBuffer,T=F,C=r.DataView,L=C&&C.prototype,R=Object.prototype,I=r.RangeError,U=h.pack,O=h.unpack,_=function(e){return[255&e]},M=function(e){return[255&e,e>>8&255]},z=function(e){return[255&e,e>>8&255,e>>16&255,e>>24&255]},P=function(e){return e[3]<<24|e[2]<<16|e[1]<<8|e[0]},j=function(e){return U(e,23,4)},D=function(e){return U(e,52,8)},N=function(e,t){g(e.prototype,t,{get:function(){return w(this)[t]}})},B=function(e,t,n,r){var i=p(n),o=w(e);if(i+t>o.byteLength)throw I(S);var a=w(o.buffer).bytes,u=i+o.byteOffset,s=a.slice(u,u+t);return r?s:s.reverse()},q=function(e,t,n,r,i,o){var a=p(n),u=w(e);if(a+t>u.byteLength)throw I(S);for(var s=w(u.buffer).bytes,l=a+u.byteOffset,c=r(+i),f=0;fG;)(W=Y[G++])in T||a(T,W,F[W]);H.constructor=T}v&&d(L)!==R&&v(L,R);var Q=new C(new T(2)),$=L.setInt8;Q.setInt8(0,2147483648),Q.setInt8(1,2147483649),!Q.getInt8(0)&&Q.getInt8(1)||u(L,{setInt8:function(e,t){$.call(this,e,t<<24>>24)},setUint8:function(e,t){$.call(this,e,t<<24>>24)}},{unsafe:!0})}else T=function(e){l(this,T,k);var t=p(e);E(this,{bytes:m.call(new Array(t),0),byteLength:t}),i||(this.byteLength=t)},C=function(e,t,n){l(this,C,A),l(e,T,A);var r=w(e).byteLength,o=c(t);if(o<0||o>r)throw I("Wrong offset");if(o+(n=void 0===n?r-o:f(n))>r)throw I("Wrong length");E(this,{buffer:e,byteLength:n,byteOffset:o}),i||(this.buffer=e,this.byteLength=n,this.byteOffset=o)},i&&(N(T,"byteLength"),N(C,"buffer"),N(C,"byteLength"),N(C,"byteOffset")),u(C.prototype,{getInt8:function(e){return B(this,1,e)[0]<<24>>24},getUint8:function(e){return B(this,1,e)[0]},getInt16:function(e){var t=B(this,2,e,arguments.length>1?arguments[1]:void 0);return(t[1]<<8|t[0])<<16>>16},getUint16:function(e){var t=B(this,2,e,arguments.length>1?arguments[1]:void 0);return t[1]<<8|t[0]},getInt32:function(e){return P(B(this,4,e,arguments.length>1?arguments[1]:void 0))},getUint32:function(e){return P(B(this,4,e,arguments.length>1?arguments[1]:void 0))>>>0},getFloat32:function(e){return O(B(this,4,e,arguments.length>1?arguments[1]:void 0),23)},getFloat64:function(e){return O(B(this,8,e,arguments.length>1?arguments[1]:void 0),52)},setInt8:function(e,t){q(this,1,e,_,t)},setUint8:function(e,t){q(this,1,e,_,t)},setInt16:function(e,t){q(this,2,e,M,t,arguments.length>2?arguments[2]:void 0)},setUint16:function(e,t){q(this,2,e,M,t,arguments.length>2?arguments[2]:void 0)},setInt32:function(e,t){q(this,4,e,z,t,arguments.length>2?arguments[2]:void 0)},setUint32:function(e,t){q(this,4,e,z,t,arguments.length>2?arguments[2]:void 0)},setFloat32:function(e,t){q(this,4,e,j,t,arguments.length>2?arguments[2]:void 0)},setFloat64:function(e,t){q(this,8,e,D,t,arguments.length>2?arguments[2]:void 0)}});b(T,k),b(C,A),e.exports={ArrayBuffer:T,DataView:C}},1048:function(e,t,n){"use strict";var r=n(7908),i=n(1400),o=n(7466),a=Math.min;e.exports=[].copyWithin||function(e,t){var n=r(this),u=o(n.length),s=i(e,u),l=i(t,u),c=arguments.length>2?arguments[2]:void 0,f=a((void 0===c?u:i(c,u))-l,u-s),p=1;for(l0;)l in n?n[s]=n[l]:delete n[s],s+=p,l+=p;return n}},1285:function(e,t,n){"use strict";var r=n(7908),i=n(1400),o=n(7466);e.exports=function(e){for(var t=r(this),n=o(t.length),a=arguments.length,u=i(a>1?arguments[1]:void 0,n),s=a>2?arguments[2]:void 0,l=void 0===s?n:i(s,n);l>u;)t[u++]=e;return t}},8533:function(e,t,n){"use strict";var r=n(2092).forEach,i=n(9341)("forEach");e.exports=i?[].forEach:function(e){return r(this,e,arguments.length>1?arguments[1]:void 0)}},8457:function(e,t,n){"use strict";var r=n(9974),i=n(7908),o=n(3411),a=n(7659),u=n(7466),s=n(6135),l=n(1246);e.exports=function(e){var t,n,c,f,p,h,d=i(e),v="function"==typeof this?this:Array,y=arguments.length,g=y>1?arguments[1]:void 0,m=void 0!==g,b=l(d),x=0;if(m&&(g=r(g,y>2?arguments[2]:void 0,2)),null==b||v==Array&&a(b))for(n=new v(t=u(d.length));t>x;x++)h=m?g(d[x],x):d[x],s(n,x,h);else for(p=(f=b.call(d)).next,n=new v;!(c=p.call(f)).done;x++)h=m?o(f,g,[c.value,x],!0):c.value,s(n,x,h);return n.length=x,n}},1318:function(e,t,n){var r=n(5656),i=n(7466),o=n(1400),a=function(e){return function(t,n,a){var u,s=r(t),l=i(s.length),c=o(a,l);if(e&&n!=n){for(;l>c;)if((u=s[c++])!=u)return!0}else for(;l>c;c++)if((e||c in s)&&s[c]===n)return e||c||0;return!e&&-1}};e.exports={includes:a(!0),indexOf:a(!1)}},2092:function(e,t,n){var r=n(9974),i=n(8361),o=n(7908),a=n(7466),u=n(5417),s=[].push,l=function(e){var t=1==e,n=2==e,l=3==e,c=4==e,f=6==e,p=7==e,h=5==e||f;return function(d,v,y,g){for(var m,b,x=o(d),w=i(x),E=r(v,y,3),k=a(w.length),A=0,S=g||u,F=t?S(d,k):n||p?S(d,0):void 0;k>A;A++)if((h||A in w)&&(b=E(m=w[A],A,x),e))if(t)F[A]=b;else if(b)switch(e){case 3:return!0;case 5:return m;case 6:return A;case 2:s.call(F,m)}else switch(e){case 4:return!1;case 7:s.call(F,m)}return f?-1:l||c?c:F}};e.exports={forEach:l(0),map:l(1),filter:l(2),some:l(3),every:l(4),find:l(5),findIndex:l(6),filterOut:l(7)}},6583:function(e,t,n){"use strict";var r=n(5656),i=n(9958),o=n(7466),a=n(9341),u=Math.min,s=[].lastIndexOf,l=!!s&&1/[1].lastIndexOf(1,-0)<0,c=a("lastIndexOf"),f=l||!c;e.exports=f?function(e){if(l)return s.apply(this,arguments)||0;var t=r(this),n=o(t.length),a=n-1;for(arguments.length>1&&(a=u(a,i(arguments[1]))),a<0&&(a=n+a);a>=0;a--)if(a in t&&t[a]===e)return a||0;return-1}:s},1194:function(e,t,n){var r=n(7293),i=n(5112),o=n(7392),a=i("species");e.exports=function(e){return o>=51||!r((function(){var t=[];return(t.constructor={})[a]=function(){return{foo:1}},1!==t[e](Boolean).foo}))}},9341:function(e,t,n){"use strict";var r=n(7293);e.exports=function(e,t){var n=[][e];return!!n&&r((function(){n.call(null,t||function(){throw 1},1)}))}},3671:function(e,t,n){var r=n(3099),i=n(7908),o=n(8361),a=n(7466),u=function(e){return function(t,n,u,s){r(n);var l=i(t),c=o(l),f=a(l.length),p=e?f-1:0,h=e?-1:1;if(u<2)for(;;){if(p in c){s=c[p],p+=h;break}if(p+=h,e?p<0:f<=p)throw TypeError("Reduce of empty array with no initial value")}for(;e?p>=0:f>p;p+=h)p in c&&(s=n(s,c[p],p,l));return s}};e.exports={left:u(!1),right:u(!0)}},5417:function(e,t,n){var r=n(111),i=n(3157),o=n(5112)("species");e.exports=function(e,t){var n;return i(e)&&("function"!=typeof(n=e.constructor)||n!==Array&&!i(n.prototype)?r(n)&&null===(n=n[o])&&(n=void 0):n=void 0),new(void 0===n?Array:n)(0===t?0:t)}},3411:function(e,t,n){var r=n(9670),i=n(9212);e.exports=function(e,t,n,o){try{return o?t(r(n)[0],n[1]):t(n)}catch(t){throw i(e),t}}},7072:function(e,t,n){var r=n(5112)("iterator"),i=!1;try{var o=0,a={next:function(){return{done:!!o++}},return:function(){i=!0}};a[r]=function(){return this},Array.from(a,(function(){throw 2}))}catch(e){}e.exports=function(e,t){if(!t&&!i)return!1;var n=!1;try{var o={};o[r]=function(){return{next:function(){return{done:n=!0}}}},e(o)}catch(e){}return n}},4326:function(e){var t={}.toString;e.exports=function(e){return t.call(e).slice(8,-1)}},648:function(e,t,n){var r=n(1694),i=n(4326),o=n(5112)("toStringTag"),a="Arguments"==i(function(){return arguments}());e.exports=r?i:function(e){var t,n,r;return void 0===e?"Undefined":null===e?"Null":"string"==typeof(n=function(e,t){try{return e[t]}catch(e){}}(t=Object(e),o))?n:a?i(t):"Object"==(r=i(t))&&"function"==typeof t.callee?"Arguments":r}},9920:function(e,t,n){var r=n(6656),i=n(3887),o=n(1236),a=n(3070);e.exports=function(e,t){for(var n=i(t),u=a.f,s=o.f,l=0;l=74)&&(r=a.match(/Chrome\/(\d+)/))&&(i=r[1]),e.exports=i&&+i},748:function(e){e.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]},2109:function(e,t,n){var r=n(7854),i=n(1236).f,o=n(8880),a=n(1320),u=n(3505),s=n(9920),l=n(4705);e.exports=function(e,t){var n,c,f,p,h,d=e.target,v=e.global,y=e.stat;if(n=v?r:y?r[d]||u(d,{}):(r[d]||{}).prototype)for(c in t){if(p=t[c],f=e.noTargetGet?(h=i(n,c))&&h.value:n[c],!l(v?c:d+(y?".":"#")+c,e.forced)&&void 0!==f){if(typeof p==typeof f)continue;s(p,f)}(e.sham||f&&f.sham)&&o(p,"sham",!0),a(n,c,p,e)}}},7293:function(e){e.exports=function(e){try{return!!e()}catch(e){return!0}}},7007:function(e,t,n){"use strict";n(4916);var r=n(1320),i=n(7293),o=n(5112),a=n(2261),u=n(8880),s=o("species"),l=!i((function(){var e=/./;return e.exec=function(){var e=[];return e.groups={a:"7"},e},"7"!=="".replace(e,"$")})),c="$0"==="a".replace(/./,"$0"),f=o("replace"),p=!!/./[f]&&""===/./[f]("a","$0"),h=!i((function(){var e=/(?:)/,t=e.exec;e.exec=function(){return t.apply(this,arguments)};var n="ab".split(e);return 2!==n.length||"a"!==n[0]||"b"!==n[1]}));e.exports=function(e,t,n,f){var d=o(e),v=!i((function(){var t={};return t[d]=function(){return 7},7!=""[e](t)})),y=v&&!i((function(){var t=!1,n=/a/;return"split"===e&&((n={}).constructor={},n.constructor[s]=function(){return n},n.flags="",n[d]=/./[d]),n.exec=function(){return t=!0,null},n[d](""),!t}));if(!v||!y||"replace"===e&&(!l||!c||p)||"split"===e&&!h){var g=/./[d],m=n(d,""[e],(function(e,t,n,r,i){return t.exec===a?v&&!i?{done:!0,value:g.call(t,n,r)}:{done:!0,value:e.call(n,t,r)}:{done:!1}}),{REPLACE_KEEPS_$0:c,REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE:p}),b=m[0],x=m[1];r(String.prototype,e,b),r(RegExp.prototype,d,2==t?function(e,t){return x.call(e,this,t)}:function(e){return x.call(e,this)})}f&&u(RegExp.prototype[d],"sham",!0)}},9974:function(e,t,n){var r=n(3099);e.exports=function(e,t,n){if(r(e),void 0===t)return e;switch(n){case 0:return function(){return e.call(t)};case 1:return function(n){return e.call(t,n)};case 2:return function(n,r){return e.call(t,n,r)};case 3:return function(n,r,i){return e.call(t,n,r,i)}}return function(){return e.apply(t,arguments)}}},5005:function(e,t,n){var r=n(857),i=n(7854),o=function(e){return"function"==typeof e?e:void 0};e.exports=function(e,t){return arguments.length<2?o(r[e])||o(i[e]):r[e]&&r[e][t]||i[e]&&i[e][t]}},1246:function(e,t,n){var r=n(648),i=n(7497),o=n(5112)("iterator");e.exports=function(e){if(null!=e)return e[o]||e["@@iterator"]||i[r(e)]}},8554:function(e,t,n){var r=n(9670),i=n(1246);e.exports=function(e){var t=i(e);if("function"!=typeof t)throw TypeError(String(e)+" is not iterable");return r(t.call(e))}},647:function(e,t,n){var r=n(7908),i=Math.floor,o="".replace,a=/\$([$&'`]|\d\d?|<[^>]*>)/g,u=/\$([$&'`]|\d\d?)/g;e.exports=function(e,t,n,s,l,c){var f=n+e.length,p=s.length,h=u;return void 0!==l&&(l=r(l),h=a),o.call(c,h,(function(r,o){var a;switch(o.charAt(0)){case"$":return"$";case"&":return e;case"`":return t.slice(0,n);case"'":return t.slice(f);case"<":a=l[o.slice(1,-1)];break;default:var u=+o;if(0===u)return r;if(u>p){var c=i(u/10);return 0===c?r:c<=p?void 0===s[c-1]?o.charAt(1):s[c-1]+o.charAt(1):r}a=s[u-1]}return void 0===a?"":a}))}},7854:function(e,t,n){var r=function(e){return e&&e.Math==Math&&e};e.exports=r("object"==typeof globalThis&&globalThis)||r("object"==typeof window&&window)||r("object"==typeof self&&self)||r("object"==typeof n.g&&n.g)||function(){return this}()||Function("return this")()},6656:function(e){var t={}.hasOwnProperty;e.exports=function(e,n){return t.call(e,n)}},3501:function(e){e.exports={}},490:function(e,t,n){var r=n(5005);e.exports=r("document","documentElement")},4664:function(e,t,n){var r=n(9781),i=n(7293),o=n(317);e.exports=!r&&!i((function(){return 7!=Object.defineProperty(o("div"),"a",{get:function(){return 7}}).a}))},1179:function(e){var t=Math.abs,n=Math.pow,r=Math.floor,i=Math.log,o=Math.LN2;e.exports={pack:function(e,a,u){var s,l,c,f=new Array(u),p=8*u-a-1,h=(1<>1,v=23===a?n(2,-24)-n(2,-77):0,y=e<0||0===e&&1/e<0?1:0,g=0;for((e=t(e))!=e||e===1/0?(l=e!=e?1:0,s=h):(s=r(i(e)/o),e*(c=n(2,-s))<1&&(s--,c*=2),(e+=s+d>=1?v/c:v*n(2,1-d))*c>=2&&(s++,c/=2),s+d>=h?(l=0,s=h):s+d>=1?(l=(e*c-1)*n(2,a),s+=d):(l=e*n(2,d-1)*n(2,a),s=0));a>=8;f[g++]=255&l,l/=256,a-=8);for(s=s<0;f[g++]=255&s,s/=256,p-=8);return f[--g]|=128*y,f},unpack:function(e,t){var r,i=e.length,o=8*i-t-1,a=(1<>1,s=o-7,l=i-1,c=e[l--],f=127&c;for(c>>=7;s>0;f=256*f+e[l],l--,s-=8);for(r=f&(1<<-s)-1,f>>=-s,s+=t;s>0;r=256*r+e[l],l--,s-=8);if(0===f)f=1-u;else{if(f===a)return r?NaN:c?-1/0:1/0;r+=n(2,t),f-=u}return(c?-1:1)*r*n(2,f-t)}}},8361:function(e,t,n){var r=n(7293),i=n(4326),o="".split;e.exports=r((function(){return!Object("z").propertyIsEnumerable(0)}))?function(e){return"String"==i(e)?o.call(e,""):Object(e)}:Object},9587:function(e,t,n){var r=n(111),i=n(7674);e.exports=function(e,t,n){var o,a;return i&&"function"==typeof(o=t.constructor)&&o!==n&&r(a=o.prototype)&&a!==n.prototype&&i(e,a),e}},2788:function(e,t,n){var r=n(5465),i=Function.toString;"function"!=typeof r.inspectSource&&(r.inspectSource=function(e){return i.call(e)}),e.exports=r.inspectSource},9909:function(e,t,n){var r,i,o,a=n(8536),u=n(7854),s=n(111),l=n(8880),c=n(6656),f=n(5465),p=n(6200),h=n(3501),d=u.WeakMap;if(a){var v=f.state||(f.state=new d),y=v.get,g=v.has,m=v.set;r=function(e,t){return t.facade=e,m.call(v,e,t),t},i=function(e){return y.call(v,e)||{}},o=function(e){return g.call(v,e)}}else{var b=p("state");h[b]=!0,r=function(e,t){return t.facade=e,l(e,b,t),t},i=function(e){return c(e,b)?e[b]:{}},o=function(e){return c(e,b)}}e.exports={set:r,get:i,has:o,enforce:function(e){return o(e)?i(e):r(e,{})},getterFor:function(e){return function(t){var n;if(!s(t)||(n=i(t)).type!==e)throw TypeError("Incompatible receiver, "+e+" required");return n}}}},7659:function(e,t,n){var r=n(5112),i=n(7497),o=r("iterator"),a=Array.prototype;e.exports=function(e){return void 0!==e&&(i.Array===e||a[o]===e)}},3157:function(e,t,n){var r=n(4326);e.exports=Array.isArray||function(e){return"Array"==r(e)}},4705:function(e,t,n){var r=n(7293),i=/#|\.prototype\./,o=function(e,t){var n=u[a(e)];return n==l||n!=s&&("function"==typeof t?r(t):!!t)},a=o.normalize=function(e){return String(e).replace(i,".").toLowerCase()},u=o.data={},s=o.NATIVE="N",l=o.POLYFILL="P";e.exports=o},111:function(e){e.exports=function(e){return"object"==typeof e?null!==e:"function"==typeof e}},1913:function(e){e.exports=!1},7850:function(e,t,n){var r=n(111),i=n(4326),o=n(5112)("match");e.exports=function(e){var t;return r(e)&&(void 0!==(t=e[o])?!!t:"RegExp"==i(e))}},9212:function(e,t,n){var r=n(9670);e.exports=function(e){var t=e.return;if(void 0!==t)return r(t.call(e)).value}},3383:function(e,t,n){"use strict";var r,i,o,a=n(7293),u=n(9518),s=n(8880),l=n(6656),c=n(5112),f=n(1913),p=c("iterator"),h=!1;[].keys&&("next"in(o=[].keys())?(i=u(u(o)))!==Object.prototype&&(r=i):h=!0);var d=null==r||a((function(){var e={};return r[p].call(e)!==e}));d&&(r={}),f&&!d||l(r,p)||s(r,p,(function(){return this})),e.exports={IteratorPrototype:r,BUGGY_SAFARI_ITERATORS:h}},7497:function(e){e.exports={}},133:function(e,t,n){var r=n(7293);e.exports=!!Object.getOwnPropertySymbols&&!r((function(){return!String(Symbol())}))},590:function(e,t,n){var r=n(7293),i=n(5112),o=n(1913),a=i("iterator");e.exports=!r((function(){var e=new URL("b?a=1&b=2&c=3","http://a"),t=e.searchParams,n="";return e.pathname="c%20d",t.forEach((function(e,r){t.delete("b"),n+=r+e})),o&&!e.toJSON||!t.sort||"http://a/c%20d?a=1&c=3"!==e.href||"3"!==t.get("c")||"a=1"!==String(new URLSearchParams("?a=1"))||!t[a]||"a"!==new URL("https://a@b").username||"b"!==new URLSearchParams(new URLSearchParams("a=b")).get("a")||"xn--e1aybc"!==new URL("http://тест").host||"#%D0%B1"!==new URL("http://a#б").hash||"a1c3"!==n||"x"!==new URL("http://x",void 0).host}))},8536:function(e,t,n){var r=n(7854),i=n(2788),o=r.WeakMap;e.exports="function"==typeof o&&/native code/.test(i(o))},1574:function(e,t,n){"use strict";var r=n(9781),i=n(7293),o=n(1956),a=n(5181),u=n(5296),s=n(7908),l=n(8361),c=Object.assign,f=Object.defineProperty;e.exports=!c||i((function(){if(r&&1!==c({b:1},c(f({},"a",{enumerable:!0,get:function(){f(this,"b",{value:3,enumerable:!1})}}),{b:2})).b)return!0;var e={},t={},n=Symbol(),i="abcdefghijklmnopqrst";return e[n]=7,i.split("").forEach((function(e){t[e]=e})),7!=c({},e)[n]||o(c({},t)).join("")!=i}))?function(e,t){for(var n=s(e),i=arguments.length,c=1,f=a.f,p=u.f;i>c;)for(var h,d=l(arguments[c++]),v=f?o(d).concat(f(d)):o(d),y=v.length,g=0;y>g;)h=v[g++],r&&!p.call(d,h)||(n[h]=d[h]);return n}:c},30:function(e,t,n){var r,i=n(9670),o=n(6048),a=n(748),u=n(3501),s=n(490),l=n(317),c=n(6200)("IE_PROTO"),f=function(){},p=function(e){return" + + + + + diff --git a/pxy_dashboard/static/dashboard/vendor/twitter-bootstrap-wizard/jquery.bootstrap.wizard.min.js b/pxy_dashboard/static/dashboard/vendor/twitter-bootstrap-wizard/jquery.bootstrap.wizard.min.js new file mode 100644 index 0000000..1d63223 --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/twitter-bootstrap-wizard/jquery.bootstrap.wizard.min.js @@ -0,0 +1,22 @@ +/*! + * jQuery twitter bootstrap wizard plugin + * Examples and documentation at: http://github.com/VinceG/twitter-bootstrap-wizard + * version 1.0 + * Requires jQuery v1.3.2 or later + * Supports Bootstrap 2.2.x, 2.3.x, 3.0 + * Dual licensed under the MIT and GPL licenses: + * http://www.opensource.org/licenses/mit-license.php + * http://www.gnu.org/licenses/gpl.html + * Authors: Vadim Vincent Gabriel (http://vadimg.com), Jason Gill (www.gilluminate.com) + */ +(function(e){var n=function(d,k){d=e(d);var a=this,g=[],c=e.extend({},e.fn.bootstrapWizard.defaults,k),f=null,b=null;this.rebindClick=function(h,a){h.unbind("click",a).bind("click",a)};this.fixNavigationButtons=function(){f.length||(b.find("a:first").tab("show"),f=b.find('li:has([data-toggle="tab"]):first'));e(c.previousSelector,d).toggleClass("disabled",a.firstIndex()>=a.currentIndex());e(c.nextSelector,d).toggleClass("disabled",a.currentIndex()>=a.navigationLength());e(c.backSelector,d).toggleClass("disabled", +0==g.length);a.rebindClick(e(c.nextSelector,d),a.next);a.rebindClick(e(c.previousSelector,d),a.previous);a.rebindClick(e(c.lastSelector,d),a.last);a.rebindClick(e(c.firstSelector,d),a.first);a.rebindClick(e(c.backSelector,d),a.back);if(c.onTabShow&&"function"===typeof c.onTabShow&&!1===c.onTabShow(f,b,a.currentIndex()))return!1};this.next=function(h){if(d.hasClass("last")||c.onNext&&"function"===typeof c.onNext&&!1===c.onNext(f,b,a.nextIndex()))return!1;h=a.currentIndex();$index=a.nextIndex();$index> +a.navigationLength()||(g.push(h),b.find('li:has([data-toggle="tab"]):eq('+$index+") a").tab("show"))};this.previous=function(h){if(d.hasClass("first")||c.onPrevious&&"function"===typeof c.onPrevious&&!1===c.onPrevious(f,b,a.previousIndex()))return!1;h=a.currentIndex();$index=a.previousIndex();0>$index||(g.push(h),b.find('li:has([data-toggle="tab"]):eq('+$index+") a").tab("show"))};this.first=function(h){if(c.onFirst&&"function"===typeof c.onFirst&&!1===c.onFirst(f,b,a.firstIndex())||d.hasClass("disabled"))return!1; +g.push(a.currentIndex());b.find('li:has([data-toggle="tab"]):eq(0) a').tab("show")};this.last=function(h){if(c.onLast&&"function"===typeof c.onLast&&!1===c.onLast(f,b,a.lastIndex())||d.hasClass("disabled"))return!1;g.push(a.currentIndex());b.find('li:has([data-toggle="tab"]):eq('+a.navigationLength()+") a").tab("show")};this.back=function(){if(0==g.length)return null;var a=g.pop();if(c.onBack&&"function"===typeof c.onBack&&!1===c.onBack(f,b,a))return g.push(a),!1;d.find('li:has([data-toggle="tab"]):eq('+ +a+") a").tab("show")};this.currentIndex=function(){return b.find('li:has([data-toggle="tab"])').index(f)};this.firstIndex=function(){return 0};this.lastIndex=function(){return a.navigationLength()};this.getIndex=function(a){return b.find('li:has([data-toggle="tab"])').index(a)};this.nextIndex=function(){return b.find('li:has([data-toggle="tab"])').index(f)+1};this.previousIndex=function(){return b.find('li:has([data-toggle="tab"])').index(f)-1};this.navigationLength=function(){return b.find('li:has([data-toggle="tab"])').length- +1};this.activeTab=function(){return f};this.nextTab=function(){return b.find('li:has([data-toggle="tab"]):eq('+(a.currentIndex()+1)+")").length?b.find('li:has([data-toggle="tab"]):eq('+(a.currentIndex()+1)+")"):null};this.previousTab=function(){return 0>=a.currentIndex()?null:b.find('li:has([data-toggle="tab"]):eq('+parseInt(a.currentIndex()-1)+")")};this.show=function(b){b=isNaN(b)?d.find('li:has([data-toggle="tab"]) a[href=#'+b+"]"):d.find('li:has([data-toggle="tab"]):eq('+b+") a");0122||(d<65||j>90||b.push([Math.max(65,j)|32,Math.min(d,90)|32]),d<97||j>122||b.push([Math.max(97,j)&-33,Math.min(d,122)&-33]))}}b.sort(function(a,f){return a[0]-f[0]||f[1]-a[1]});f=[];j=[NaN,NaN];for(c=0;ci[0]&&(i[1]+1>i[0]&&b.push("-"),b.push(e(i[1])));b.push("]");return b.join("")}function y(a){for(var f=a.source.match(/\[(?:[^\\\]]|\\[\S\s])*]|\\u[\dA-Fa-f]{4}|\\x[\dA-Fa-f]{2}|\\\d+|\\[^\dux]|\(\?[!:=]|[()^]|[^()[\\^]+/g),b=f.length,d=[],c=0,i=0;c=2&&a==="["?f[c]=h(j):a!=="\\"&&(f[c]=j.replace(/[A-Za-z]/g,function(a){a=a.charCodeAt(0);return"["+String.fromCharCode(a&-33,a|32)+"]"}));return f.join("")}for(var t=0,s=!1,l=!1,p=0,d=a.length;p=5&&"lang-"===b.substring(0,5))&&!(o&&typeof o[1]==="string"))c=!1,b="src";c||(r[f]=b)}i=d;d+=f.length;if(c){c=o[1];var j=f.indexOf(c),k=j+c.length;o[2]&&(k=f.length-o[2].length,j=k-c.length);b=b.substring(5);B(l+i,f.substring(0,j),e,p);B(l+i+j,c,C(b,c),p);B(l+i+k,f.substring(k),e,p)}else p.push(l+i,b)}a.e=p}var h={},y;(function(){for(var e=a.concat(m), +l=[],p={},d=0,g=e.length;d=0;)h[n.charAt(k)]=r;r=r[1];n=""+r;p.hasOwnProperty(n)||(l.push(r),p[n]=q)}l.push(/[\S\s]/);y=L(l)})();var t=m.length;return e}function u(a){var m=[],e=[];a.tripleQuotedStrings?m.push(["str",/^(?:'''(?:[^'\\]|\\[\S\s]|''?(?=[^']))*(?:'''|$)|"""(?:[^"\\]|\\[\S\s]|""?(?=[^"]))*(?:"""|$)|'(?:[^'\\]|\\[\S\s])*(?:'|$)|"(?:[^"\\]|\\[\S\s])*(?:"|$))/,q,"'\""]):a.multiLineStrings?m.push(["str",/^(?:'(?:[^'\\]|\\[\S\s])*(?:'|$)|"(?:[^"\\]|\\[\S\s])*(?:"|$)|`(?:[^\\`]|\\[\S\s])*(?:`|$))/, +q,"'\"`"]):m.push(["str",/^(?:'(?:[^\n\r'\\]|\\.)*(?:'|$)|"(?:[^\n\r"\\]|\\.)*(?:"|$))/,q,"\"'"]);a.verbatimStrings&&e.push(["str",/^@"(?:[^"]|"")*(?:"|$)/,q]);var h=a.hashComments;h&&(a.cStyleComments?(h>1?m.push(["com",/^#(?:##(?:[^#]|#(?!##))*(?:###|$)|.*)/,q,"#"]):m.push(["com",/^#(?:(?:define|elif|else|endif|error|ifdef|include|ifndef|line|pragma|undef|warning)\b|[^\n\r]*)/,q,"#"]),e.push(["str",/^<(?:(?:(?:\.\.\/)*|\/?)(?:[\w-]+(?:\/[\w-]+)+)?[\w-]+\.h|[a-z]\w*)>/,q])):m.push(["com",/^#[^\n\r]*/, +q,"#"]));a.cStyleComments&&(e.push(["com",/^\/\/[^\n\r]*/,q]),e.push(["com",/^\/\*[\S\s]*?(?:\*\/|$)/,q]));a.regexLiterals&&e.push(["lang-regex",/^(?:^^\.?|[!+-]|!=|!==|#|%|%=|&|&&|&&=|&=|\(|\*|\*=|\+=|,|-=|->|\/|\/=|:|::|;|<|<<|<<=|<=|=|==|===|>|>=|>>|>>=|>>>|>>>=|[?@[^]|\^=|\^\^|\^\^=|{|\||\|=|\|\||\|\|=|~|break|case|continue|delete|do|else|finally|instanceof|return|throw|try|typeof)\s*(\/(?=[^*/])(?:[^/[\\]|\\[\S\s]|\[(?:[^\\\]]|\\[\S\s])*(?:]|$))+\/)/]);(h=a.types)&&e.push(["typ",h]);a=(""+a.keywords).replace(/^ | $/g, +"");a.length&&e.push(["kwd",RegExp("^(?:"+a.replace(/[\s,]+/g,"|")+")\\b"),q]);m.push(["pln",/^\s+/,q," \r\n\t\xa0"]);e.push(["lit",/^@[$_a-z][\w$@]*/i,q],["typ",/^(?:[@_]?[A-Z]+[a-z][\w$@]*|\w+_t\b)/,q],["pln",/^[$_a-z][\w$@]*/i,q],["lit",/^(?:0x[\da-f]+|(?:\d(?:_\d+)*\d*(?:\.\d*)?|\.\d\+)(?:e[+-]?\d+)?)[a-z]*/i,q,"0123456789"],["pln",/^\\[\S\s]?/,q],["pun",/^.[^\s\w"-$'./@\\`]*/,q]);return x(m,e)}function D(a,m){function e(a){switch(a.nodeType){case 1:if(k.test(a.className))break;if("BR"===a.nodeName)h(a), +a.parentNode&&a.parentNode.removeChild(a);else for(a=a.firstChild;a;a=a.nextSibling)e(a);break;case 3:case 4:if(p){var b=a.nodeValue,d=b.match(t);if(d){var c=b.substring(0,d.index);a.nodeValue=c;(b=b.substring(d.index+d[0].length))&&a.parentNode.insertBefore(s.createTextNode(b),a.nextSibling);h(a);c||a.parentNode.removeChild(a)}}}}function h(a){function b(a,d){var e=d?a.cloneNode(!1):a,f=a.parentNode;if(f){var f=b(f,1),g=a.nextSibling;f.appendChild(e);for(var h=g;h;h=g)g=h.nextSibling,f.appendChild(h)}return e} +for(;!a.nextSibling;)if(a=a.parentNode,!a)return;for(var a=b(a.nextSibling,0),e;(e=a.parentNode)&&e.nodeType===1;)a=e;d.push(a)}var k=/(?:^|\s)nocode(?:\s|$)/,t=/\r\n?|\n/,s=a.ownerDocument,l;a.currentStyle?l=a.currentStyle.whiteSpace:window.getComputedStyle&&(l=s.defaultView.getComputedStyle(a,q).getPropertyValue("white-space"));var p=l&&"pre"===l.substring(0,3);for(l=s.createElement("LI");a.firstChild;)l.appendChild(a.firstChild);for(var d=[l],g=0;g=0;){var h=m[e];A.hasOwnProperty(h)?window.console&&console.warn("cannot override language handler %s",h):A[h]=a}}function C(a,m){if(!a||!A.hasOwnProperty(a))a=/^\s*=o&&(h+=2);e>=c&&(a+=2)}}catch(w){"console"in window&&console.log(w&&w.stack?w.stack:w)}}var v=["break,continue,do,else,for,if,return,while"],w=[[v,"auto,case,char,const,default,double,enum,extern,float,goto,int,long,register,short,signed,sizeof,static,struct,switch,typedef,union,unsigned,void,volatile"], +"catch,class,delete,false,import,new,operator,private,protected,public,this,throw,true,try,typeof"],F=[w,"alignof,align_union,asm,axiom,bool,concept,concept_map,const_cast,constexpr,decltype,dynamic_cast,explicit,export,friend,inline,late_check,mutable,namespace,nullptr,reinterpret_cast,static_assert,static_cast,template,typeid,typename,using,virtual,where"],G=[w,"abstract,boolean,byte,extends,final,finally,implements,import,instanceof,null,native,package,strictfp,super,synchronized,throws,transient"], +H=[G,"as,base,by,checked,decimal,delegate,descending,dynamic,event,fixed,foreach,from,group,implicit,in,interface,internal,into,is,lock,object,out,override,orderby,params,partial,readonly,ref,sbyte,sealed,stackalloc,string,select,uint,ulong,unchecked,unsafe,ushort,var"],w=[w,"debugger,eval,export,function,get,null,set,undefined,var,with,Infinity,NaN"],I=[v,"and,as,assert,class,def,del,elif,except,exec,finally,from,global,import,in,is,lambda,nonlocal,not,or,pass,print,raise,try,with,yield,False,True,None"], +J=[v,"alias,and,begin,case,class,def,defined,elsif,end,ensure,false,in,module,next,nil,not,or,redo,rescue,retry,self,super,then,true,undef,unless,until,when,yield,BEGIN,END"],v=[v,"case,done,elif,esac,eval,fi,function,in,local,set,then,until"],K=/^(DIR|FILE|vector|(de|priority_)?queue|list|stack|(const_)?iterator|(multi)?(set|map)|bitset|u?(int|float)\d*)/,N=/\S/,O=u({keywords:[F,H,w,"caller,delete,die,do,dump,elsif,eval,exit,foreach,for,goto,if,import,last,local,my,next,no,our,print,package,redo,require,sub,undef,unless,until,use,wantarray,while,BEGIN,END"+ +I,J,v],hashComments:!0,cStyleComments:!0,multiLineStrings:!0,regexLiterals:!0}),A={};k(O,["default-code"]);k(x([],[["pln",/^[^]*(?:>|$)/],["com",/^<\!--[\S\s]*?(?:--\>|$)/],["lang-",/^<\?([\S\s]+?)(?:\?>|$)/],["lang-",/^<%([\S\s]+?)(?:%>|$)/],["pun",/^(?:<[%?]|[%?]>)/],["lang-",/^]*>([\S\s]+?)<\/xmp\b[^>]*>/i],["lang-js",/^]*>([\S\s]*?)(<\/script\b[^>]*>)/i],["lang-css",/^]*>([\S\s]*?)(<\/style\b[^>]*>)/i],["lang-in.tag",/^(<\/?[a-z][^<>]*>)/i]]), +["default-markup","htm","html","mxml","xhtml","xml","xsl"]);k(x([["pln",/^\s+/,q," \t\r\n"],["atv",/^(?:"[^"]*"?|'[^']*'?)/,q,"\"'"]],[["tag",/^^<\/?[a-z](?:[\w-.:]*\w)?|\/?>$/i],["atn",/^(?!style[\s=]|on)[a-z](?:[\w:-]*\w)?/i],["lang-uq.val",/^=\s*([^\s"'>]*(?:[^\s"'/>]|\/(?=\s)))/],["pun",/^[/<->]+/],["lang-js",/^on\w+\s*=\s*"([^"]+)"/i],["lang-js",/^on\w+\s*=\s*'([^']+)'/i],["lang-js",/^on\w+\s*=\s*([^\s"'>]+)/i],["lang-css",/^style\s*=\s*"([^"]+)"/i],["lang-css",/^style\s*=\s*'([^']+)'/i],["lang-css", +/^style\s*=\s*([^\s"'>]+)/i]]),["in.tag"]);k(x([],[["atv",/^[\S\s]+/]]),["uq.val"]);k(u({keywords:F,hashComments:!0,cStyleComments:!0,types:K}),["c","cc","cpp","cxx","cyc","m"]);k(u({keywords:"null,true,false"}),["json"]);k(u({keywords:H,hashComments:!0,cStyleComments:!0,verbatimStrings:!0,types:K}),["cs"]);k(u({keywords:G,cStyleComments:!0}),["java"]);k(u({keywords:v,hashComments:!0,multiLineStrings:!0}),["bsh","csh","sh"]);k(u({keywords:I,hashComments:!0,multiLineStrings:!0,tripleQuotedStrings:!0}), +["cv","py"]);k(u({keywords:"caller,delete,die,do,dump,elsif,eval,exit,foreach,for,goto,if,import,last,local,my,next,no,our,print,package,redo,require,sub,undef,unless,until,use,wantarray,while,BEGIN,END",hashComments:!0,multiLineStrings:!0,regexLiterals:!0}),["perl","pl","pm"]);k(u({keywords:J,hashComments:!0,multiLineStrings:!0,regexLiterals:!0}),["rb"]);k(u({keywords:w,cStyleComments:!0,regexLiterals:!0}),["js"]);k(u({keywords:"all,and,by,catch,class,else,extends,false,finally,for,if,in,is,isnt,loop,new,no,not,null,of,off,on,or,return,super,then,true,try,unless,until,when,while,yes", +hashComments:3,cStyleComments:!0,multilineStrings:!0,tripleQuotedStrings:!0,regexLiterals:!0}),["coffee"]);k(x([],[["str",/^[\S\s]+/]]),["regex"]);window.prettyPrintOne=function(a,m,e){var h=document.createElement("PRE");h.innerHTML=a;e&&D(h,e);E({g:m,i:e,h:h});return h.innerHTML};window.prettyPrint=function(a){function m(){for(var e=window.PR_SHOULD_USE_CONTINUATION?l.now()+250:Infinity;p=0){var k=k.match(g),f,b;if(b= +!k){b=n;for(var o=void 0,c=b.firstChild;c;c=c.nextSibling)var i=c.nodeType,o=i===1?o?b:c:i===3?N.test(c.nodeValue)?b:o:o;b=(f=o===b?void 0:o)&&"CODE"===f.tagName}b&&(k=f.className.match(g));k&&(k=k[1]);b=!1;for(o=n.parentNode;o;o=o.parentNode)if((o.tagName==="pre"||o.tagName==="code"||o.tagName==="xmp")&&o.className&&o.className.indexOf("prettyprint")>=0){b=!0;break}b||((b=(b=n.className.match(/\blinenums\b(?::(\d+))?/))?b[1]&&b[1].length?+b[1]:!0:!1)&&D(n,b),d={g:k,h:n,i:b},E(d))}}p=j?(clearTimeout(e),e=null,g=i,f=a.apply(c,d)):e||(e=setTimeout(h,j)),f}},stringify:function(a){return b.isString(a)?a:JSON.stringify(a)},noop:function(){}}}(),c="0.11.1",d=function(){"use strict";function a(a){return a=b.toStr(a),a?a.split(/\s+/):[]}function c(a){return a=b.toStr(a),a?a.split(/\W+/):[]}function d(a){return function(c){return c=b.isArray(c)?c:[].slice.call(arguments,0),function(d){var e=[];return b.each(c,function(c){e=e.concat(a(b.toStr(d[c])))}),e}}}return{nonword:c,whitespace:a,obj:{nonword:d(c),whitespace:d(a)}}}(),e=function(){"use strict";function c(c){this.maxSize=b.isNumber(c)?c:100,this.reset(),this.maxSize<=0&&(this.set=this.get=a.noop)}function d(){this.head=this.tail=null}function e(a,b){this.key=a,this.val=b,this.prev=this.next=null}return b.mixin(c.prototype,{set:function(a,b){var c,d=this.list.tail;this.size>=this.maxSize&&(this.list.remove(d),delete this.hash[d.key],this.size--),(c=this.hash[a])?(c.val=b,this.list.moveToFront(c)):(c=new e(a,b),this.list.add(c),this.hash[a]=c,this.size++)},get:function(a){var b=this.hash[a];return b?(this.list.moveToFront(b),b.val):void 0},reset:function(){this.size=0,this.hash={},this.list=new d}}),b.mixin(d.prototype,{add:function(a){this.head&&(a.next=this.head,this.head.prev=a),this.head=a,this.tail=this.tail||a},remove:function(a){a.prev?a.prev.next=a.next:this.head=a.next,a.next?a.next.prev=a.prev:this.tail=a.prev},moveToFront:function(a){this.remove(a),this.add(a)}}),c}(),f=function(){"use strict";function c(a,c){this.prefix=["__",a,"__"].join(""),this.ttlKey="__ttl__",this.keyMatcher=new RegExp("^"+b.escapeRegExChars(this.prefix)),this.ls=c||h,!this.ls&&this._noop()}function d(){return(new Date).getTime()}function e(a){return JSON.stringify(b.isUndefined(a)?null:a)}function f(b){return a.parseJSON(b)}function g(a){var b,c,d=[],e=h.length;for(b=0;e>b;b++)(c=h.key(b)).match(a)&&d.push(c.replace(a,""));return d}var h;try{h=window.localStorage,h.setItem("~~~","!"),h.removeItem("~~~")}catch(i){h=null}return b.mixin(c.prototype,{_prefix:function(a){return this.prefix+a},_ttlKey:function(a){return this._prefix(a)+this.ttlKey},_noop:function(){this.get=this.set=this.remove=this.clear=this.isExpired=b.noop},_safeSet:function(a,b){try{this.ls.setItem(a,b)}catch(c){"QuotaExceededError"===c.name&&(this.clear(),this._noop())}},get:function(a){return this.isExpired(a)&&this.remove(a),f(this.ls.getItem(this._prefix(a)))},set:function(a,c,f){return b.isNumber(f)?this._safeSet(this._ttlKey(a),e(d()+f)):this.ls.removeItem(this._ttlKey(a)),this._safeSet(this._prefix(a),e(c))},remove:function(a){return this.ls.removeItem(this._ttlKey(a)),this.ls.removeItem(this._prefix(a)),this},clear:function(){var a,b=g(this.keyMatcher);for(a=b.length;a--;)this.remove(b[a]);return this},isExpired:function(a){var c=f(this.ls.getItem(this._ttlKey(a)));return b.isNumber(c)&&d()>c?!0:!1}}),c}(),g=function(){"use strict";function c(a){a=a||{},this.cancelled=!1,this.lastReq=null,this._send=a.transport,this._get=a.limiter?a.limiter(this._get):this._get,this._cache=a.cache===!1?new e(0):h}var d=0,f={},g=6,h=new e(10);return c.setMaxPendingRequests=function(a){g=a},c.resetCache=function(){h.reset()},b.mixin(c.prototype,{_fingerprint:function(b){return b=b||{},b.url+b.type+a.param(b.data||{})},_get:function(a,b){function c(a){b(null,a),k._cache.set(i,a)}function e(){b(!0)}function h(){d--,delete f[i],k.onDeckRequestArgs&&(k._get.apply(k,k.onDeckRequestArgs),k.onDeckRequestArgs=null)}var i,j,k=this;i=this._fingerprint(a),this.cancelled||i!==this.lastReq||((j=f[i])?j.done(c).fail(e):g>d?(d++,f[i]=this._send(a).done(c).fail(e).always(h)):this.onDeckRequestArgs=[].slice.call(arguments,0))},get:function(c,d){var e,f;d=d||a.noop,c=b.isString(c)?{url:c}:c||{},f=this._fingerprint(c),this.cancelled=!1,this.lastReq=f,(e=this._cache.get(f))?d(null,e):this._get(c,d)},cancel:function(){this.cancelled=!0}}),c}(),h=window.SearchIndex=function(){"use strict";function c(c){c=c||{},c.datumTokenizer&&c.queryTokenizer||a.error("datumTokenizer and queryTokenizer are both required"),this.identify=c.identify||b.stringify,this.datumTokenizer=c.datumTokenizer,this.queryTokenizer=c.queryTokenizer,this.reset()}function d(a){return a=b.filter(a,function(a){return!!a}),a=b.map(a,function(a){return a.toLowerCase()})}function e(){var a={};return a[i]=[],a[h]={},a}function f(a){for(var b={},c=[],d=0,e=a.length;e>d;d++)b[a[d]]||(b[a[d]]=!0,c.push(a[d]));return c}function g(a,b){var c=0,d=0,e=[];a=a.sort(),b=b.sort();for(var f=a.length,g=b.length;f>c&&g>d;)a[c]b[d]?d++:(e.push(a[c]),c++,d++);return e}var h="c",i="i";return b.mixin(c.prototype,{bootstrap:function(a){this.datums=a.datums,this.trie=a.trie},add:function(a){var c=this;a=b.isArray(a)?a:[a],b.each(a,function(a){var f,g;c.datums[f=c.identify(a)]=a,g=d(c.datumTokenizer(a)),b.each(g,function(a){var b,d,g;for(b=c.trie,d=a.split("");g=d.shift();)b=b[h][g]||(b[h][g]=e()),b[i].push(f)})})},get:function(a){var c=this;return b.map(a,function(a){return c.datums[a]})},search:function(a){var c,e,j=this;return c=d(this.queryTokenizer(a)),b.each(c,function(a){var b,c,d,f;if(e&&0===e.length)return!1;for(b=j.trie,c=a.split("");b&&(d=c.shift());)b=b[h][d];return b&&0===c.length?(f=b[i].slice(0),void(e=e?g(e,f):f)):(e=[],!1)}),e?b.map(f(e),function(a){return j.datums[a]}):[]},all:function(){var a=[];for(var b in this.datums)a.push(this.datums[b]);return a},reset:function(){this.datums={},this.trie=e()},serialize:function(){return{datums:this.datums,trie:this.trie}}}),c}(),i=function(){"use strict";function a(a){this.url=a.url,this.ttl=a.ttl,this.cache=a.cache,this.prepare=a.prepare,this.transform=a.transform,this.transport=a.transport,this.thumbprint=a.thumbprint,this.storage=new f(a.cacheKey)}var c;return c={data:"data",protocol:"protocol",thumbprint:"thumbprint"},b.mixin(a.prototype,{_settings:function(){return{url:this.url,type:"GET",dataType:"json"}},store:function(a){this.cache&&(this.storage.set(c.data,a,this.ttl),this.storage.set(c.protocol,location.protocol,this.ttl),this.storage.set(c.thumbprint,this.thumbprint,this.ttl))},fromCache:function(){var a,b={};return this.cache?(b.data=this.storage.get(c.data),b.protocol=this.storage.get(c.protocol),b.thumbprint=this.storage.get(c.thumbprint),a=b.thumbprint!==this.thumbprint||b.protocol!==location.protocol,b.data&&!a?b.data:null):null},fromNetwork:function(a){function b(){a(!0)}function c(b){a(null,e.transform(b))}var d,e=this;a&&(d=this.prepare(this._settings()),this.transport(d).fail(b).done(c))},clear:function(){return this.storage.clear(),this}}),a}(),j=function(){"use strict";function a(a){this.url=a.url,this.prepare=a.prepare,this.transform=a.transform,this.transport=new g({cache:a.cache,limiter:a.limiter,transport:a.transport})}return b.mixin(a.prototype,{_settings:function(){return{url:this.url,type:"GET",dataType:"json"}},get:function(a,b){function c(a,c){b(a?[]:e.transform(c))}var d,e=this;if(b)return a=a||"",d=this.prepare(a,this._settings()),this.transport.get(d,c)},cancelLastRequest:function(){this.transport.cancel()}}),a}(),k=function(){"use strict";function d(d){var e;return d?(e={url:null,ttl:864e5,cache:!0,cacheKey:null,thumbprint:"",prepare:b.identity,transform:b.identity,transport:null},d=b.isString(d)?{url:d}:d,d=b.mixin(e,d),!d.url&&a.error("prefetch requires url to be set"),d.transform=d.filter||d.transform,d.cacheKey=d.cacheKey||d.url,d.thumbprint=c+d.thumbprint,d.transport=d.transport?h(d.transport):a.ajax,d):null}function e(c){var d;if(c)return d={url:null,cache:!0,prepare:null,replace:null,wildcard:null,limiter:null,rateLimitBy:"debounce",rateLimitWait:300,transform:b.identity,transport:null},c=b.isString(c)?{url:c}:c,c=b.mixin(d,c),!c.url&&a.error("remote requires url to be set"),c.transform=c.filter||c.transform,c.prepare=f(c),c.limiter=g(c),c.transport=c.transport?h(c.transport):a.ajax,delete c.replace,delete c.wildcard,delete c.rateLimitBy,delete c.rateLimitWait,c}function f(a){function b(a,b){return b.url=f(b.url,a),b}function c(a,b){return b.url=b.url.replace(g,encodeURIComponent(a)),b}function d(a,b){return b}var e,f,g;return e=a.prepare,f=a.replace,g=a.wildcard,e?e:e=f?b:a.wildcard?c:d}function g(a){function c(a){return function(c){return b.debounce(c,a)}}function d(a){return function(c){return b.throttle(c,a)}}var e,f,g;return e=a.limiter,f=a.rateLimitBy,g=a.rateLimitWait,e||(e=/^throttle$/i.test(f)?d(g):c(g)),e}function h(c){return function(d){function e(a){b.defer(function(){g.resolve(a)})}function f(a){b.defer(function(){g.reject(a)})}var g=a.Deferred();return c(d,e,f),g}}return function(c){var f,g;return f={initialize:!0,identify:b.stringify,datumTokenizer:null,queryTokenizer:null,sufficient:5,sorter:null,local:[],prefetch:null,remote:null},c=b.mixin(f,c||{}),!c.datumTokenizer&&a.error("datumTokenizer is required"),!c.queryTokenizer&&a.error("queryTokenizer is required"),g=c.sorter,c.sorter=g?function(a){return a.sort(g)}:b.identity,c.local=b.isFunction(c.local)?c.local():c.local,c.prefetch=d(c.prefetch),c.remote=e(c.remote),c}}(),l=function(){"use strict";function c(a){a=k(a),this.sorter=a.sorter,this.identify=a.identify,this.sufficient=a.sufficient,this.local=a.local,this.remote=a.remote?new j(a.remote):null,this.prefetch=a.prefetch?new i(a.prefetch):null,this.index=new h({identify:this.identify,datumTokenizer:a.datumTokenizer,queryTokenizer:a.queryTokenizer}),a.initialize!==!1&&this.initialize()}var e;return e=window&&window.Bloodhound,c.noConflict=function(){return window&&(window.Bloodhound=e),c},c.tokenizers=d,b.mixin(c.prototype,{__ttAdapter:function(){function a(a,b,d){return c.search(a,b,d)}function b(a,b){return c.search(a,b)}var c=this;return this.remote?a:b},_loadPrefetch:function(){function b(a,b){return a?c.reject():(e.add(b),e.prefetch.store(e.index.serialize()),void c.resolve())}var c,d,e=this;return c=a.Deferred(),this.prefetch?(d=this.prefetch.fromCache())?(this.index.bootstrap(d),c.resolve()):this.prefetch.fromNetwork(b):c.resolve(),c.promise()},_initialize:function(){function a(){b.add(b.local)}var b=this;return this.clear(),(this.initPromise=this._loadPrefetch()).done(a),this.initPromise},initialize:function(a){return!this.initPromise||a?this._initialize():this.initPromise},add:function(a){return this.index.add(a),this},get:function(a){return a=b.isArray(a)?a:[].slice.call(arguments),this.index.get(a)},search:function(a,c,d){function e(a){var c=[];b.each(a,function(a){!b.some(f,function(b){return g.identify(a)===g.identify(b)})&&c.push(a)}),d&&d(c)}var f,g=this;return f=this.sorter(this.index.search(a)),c(this.remote?f.slice():f),this.remote&&f.length=j?(clearTimeout(e),e=null,g=i,f=a.apply(c,d)):e||(e=setTimeout(h,j)),f}},stringify:function(a){return b.isString(a)?a:JSON.stringify(a)},noop:function(){}}}(),c="0.11.1",d=function(){"use strict";function a(a){return a=b.toStr(a),a?a.split(/\s+/):[]}function c(a){return a=b.toStr(a),a?a.split(/\W+/):[]}function d(a){return function(c){return c=b.isArray(c)?c:[].slice.call(arguments,0),function(d){var e=[];return b.each(c,function(c){e=e.concat(a(b.toStr(d[c])))}),e}}}return{nonword:c,whitespace:a,obj:{nonword:d(c),whitespace:d(a)}}}(),e=function(){"use strict";function c(c){this.maxSize=b.isNumber(c)?c:100,this.reset(),this.maxSize<=0&&(this.set=this.get=a.noop)}function d(){this.head=this.tail=null}function e(a,b){this.key=a,this.val=b,this.prev=this.next=null}return b.mixin(c.prototype,{set:function(a,b){var c,d=this.list.tail;this.size>=this.maxSize&&(this.list.remove(d),delete this.hash[d.key],this.size--),(c=this.hash[a])?(c.val=b,this.list.moveToFront(c)):(c=new e(a,b),this.list.add(c),this.hash[a]=c,this.size++)},get:function(a){var b=this.hash[a];return b?(this.list.moveToFront(b),b.val):void 0},reset:function(){this.size=0,this.hash={},this.list=new d}}),b.mixin(d.prototype,{add:function(a){this.head&&(a.next=this.head,this.head.prev=a),this.head=a,this.tail=this.tail||a},remove:function(a){a.prev?a.prev.next=a.next:this.head=a.next,a.next?a.next.prev=a.prev:this.tail=a.prev},moveToFront:function(a){this.remove(a),this.add(a)}}),c}(),f=function(){"use strict";function c(a,c){this.prefix=["__",a,"__"].join(""),this.ttlKey="__ttl__",this.keyMatcher=new RegExp("^"+b.escapeRegExChars(this.prefix)),this.ls=c||h,!this.ls&&this._noop()}function d(){return(new Date).getTime()}function e(a){return JSON.stringify(b.isUndefined(a)?null:a)}function f(b){return a.parseJSON(b)}function g(a){var b,c,d=[],e=h.length;for(b=0;e>b;b++)(c=h.key(b)).match(a)&&d.push(c.replace(a,""));return d}var h;try{h=window.localStorage,h.setItem("~~~","!"),h.removeItem("~~~")}catch(i){h=null}return b.mixin(c.prototype,{_prefix:function(a){return this.prefix+a},_ttlKey:function(a){return this._prefix(a)+this.ttlKey},_noop:function(){this.get=this.set=this.remove=this.clear=this.isExpired=b.noop},_safeSet:function(a,b){try{this.ls.setItem(a,b)}catch(c){"QuotaExceededError"===c.name&&(this.clear(),this._noop())}},get:function(a){return this.isExpired(a)&&this.remove(a),f(this.ls.getItem(this._prefix(a)))},set:function(a,c,f){return b.isNumber(f)?this._safeSet(this._ttlKey(a),e(d()+f)):this.ls.removeItem(this._ttlKey(a)),this._safeSet(this._prefix(a),e(c))},remove:function(a){return this.ls.removeItem(this._ttlKey(a)),this.ls.removeItem(this._prefix(a)),this},clear:function(){var a,b=g(this.keyMatcher);for(a=b.length;a--;)this.remove(b[a]);return this},isExpired:function(a){var c=f(this.ls.getItem(this._ttlKey(a)));return b.isNumber(c)&&d()>c?!0:!1}}),c}(),g=function(){"use strict";function c(a){a=a||{},this.cancelled=!1,this.lastReq=null,this._send=a.transport,this._get=a.limiter?a.limiter(this._get):this._get,this._cache=a.cache===!1?new e(0):h}var d=0,f={},g=6,h=new e(10);return c.setMaxPendingRequests=function(a){g=a},c.resetCache=function(){h.reset()},b.mixin(c.prototype,{_fingerprint:function(b){return b=b||{},b.url+b.type+a.param(b.data||{})},_get:function(a,b){function c(a){b(null,a),k._cache.set(i,a)}function e(){b(!0)}function h(){d--,delete f[i],k.onDeckRequestArgs&&(k._get.apply(k,k.onDeckRequestArgs),k.onDeckRequestArgs=null)}var i,j,k=this;i=this._fingerprint(a),this.cancelled||i!==this.lastReq||((j=f[i])?j.done(c).fail(e):g>d?(d++,f[i]=this._send(a).done(c).fail(e).always(h)):this.onDeckRequestArgs=[].slice.call(arguments,0))},get:function(c,d){var e,f;d=d||a.noop,c=b.isString(c)?{url:c}:c||{},f=this._fingerprint(c),this.cancelled=!1,this.lastReq=f,(e=this._cache.get(f))?d(null,e):this._get(c,d)},cancel:function(){this.cancelled=!0}}),c}(),h=window.SearchIndex=function(){"use strict";function c(c){c=c||{},c.datumTokenizer&&c.queryTokenizer||a.error("datumTokenizer and queryTokenizer are both required"),this.identify=c.identify||b.stringify,this.datumTokenizer=c.datumTokenizer,this.queryTokenizer=c.queryTokenizer,this.reset()}function d(a){return a=b.filter(a,function(a){return!!a}),a=b.map(a,function(a){return a.toLowerCase()})}function e(){var a={};return a[i]=[],a[h]={},a}function f(a){for(var b={},c=[],d=0,e=a.length;e>d;d++)b[a[d]]||(b[a[d]]=!0,c.push(a[d]));return c}function g(a,b){var c=0,d=0,e=[];a=a.sort(),b=b.sort();for(var f=a.length,g=b.length;f>c&&g>d;)a[c]b[d]?d++:(e.push(a[c]),c++,d++);return e}var h="c",i="i";return b.mixin(c.prototype,{bootstrap:function(a){this.datums=a.datums,this.trie=a.trie},add:function(a){var c=this;a=b.isArray(a)?a:[a],b.each(a,function(a){var f,g;c.datums[f=c.identify(a)]=a,g=d(c.datumTokenizer(a)),b.each(g,function(a){var b,d,g;for(b=c.trie,d=a.split("");g=d.shift();)b=b[h][g]||(b[h][g]=e()),b[i].push(f)})})},get:function(a){var c=this;return b.map(a,function(a){return c.datums[a]})},search:function(a){var c,e,j=this;return c=d(this.queryTokenizer(a)),b.each(c,function(a){var b,c,d,f;if(e&&0===e.length)return!1;for(b=j.trie,c=a.split("");b&&(d=c.shift());)b=b[h][d];return b&&0===c.length?(f=b[i].slice(0),void(e=e?g(e,f):f)):(e=[],!1)}),e?b.map(f(e),function(a){return j.datums[a]}):[]},all:function(){var a=[];for(var b in this.datums)a.push(this.datums[b]);return a},reset:function(){this.datums={},this.trie=e()},serialize:function(){return{datums:this.datums,trie:this.trie}}}),c}(),i=function(){"use strict";function a(a){this.url=a.url,this.ttl=a.ttl,this.cache=a.cache,this.prepare=a.prepare,this.transform=a.transform,this.transport=a.transport,this.thumbprint=a.thumbprint,this.storage=new f(a.cacheKey)}var c;return c={data:"data",protocol:"protocol",thumbprint:"thumbprint"},b.mixin(a.prototype,{_settings:function(){return{url:this.url,type:"GET",dataType:"json"}},store:function(a){this.cache&&(this.storage.set(c.data,a,this.ttl),this.storage.set(c.protocol,location.protocol,this.ttl),this.storage.set(c.thumbprint,this.thumbprint,this.ttl))},fromCache:function(){var a,b={};return this.cache?(b.data=this.storage.get(c.data),b.protocol=this.storage.get(c.protocol),b.thumbprint=this.storage.get(c.thumbprint),a=b.thumbprint!==this.thumbprint||b.protocol!==location.protocol,b.data&&!a?b.data:null):null},fromNetwork:function(a){function b(){a(!0)}function c(b){a(null,e.transform(b))}var d,e=this;a&&(d=this.prepare(this._settings()),this.transport(d).fail(b).done(c))},clear:function(){return this.storage.clear(),this}}),a}(),j=function(){"use strict";function a(a){this.url=a.url,this.prepare=a.prepare,this.transform=a.transform,this.transport=new g({cache:a.cache,limiter:a.limiter,transport:a.transport})}return b.mixin(a.prototype,{_settings:function(){return{url:this.url,type:"GET",dataType:"json"}},get:function(a,b){function c(a,c){b(a?[]:e.transform(c))}var d,e=this;if(b)return a=a||"",d=this.prepare(a,this._settings()),this.transport.get(d,c)},cancelLastRequest:function(){this.transport.cancel()}}),a}(),k=function(){"use strict";function d(d){var e;return d?(e={url:null,ttl:864e5,cache:!0,cacheKey:null,thumbprint:"",prepare:b.identity,transform:b.identity,transport:null},d=b.isString(d)?{url:d}:d,d=b.mixin(e,d),!d.url&&a.error("prefetch requires url to be set"),d.transform=d.filter||d.transform,d.cacheKey=d.cacheKey||d.url,d.thumbprint=c+d.thumbprint,d.transport=d.transport?h(d.transport):a.ajax,d):null}function e(c){var d;if(c)return d={url:null,cache:!0,prepare:null,replace:null,wildcard:null,limiter:null,rateLimitBy:"debounce",rateLimitWait:300,transform:b.identity,transport:null},c=b.isString(c)?{url:c}:c,c=b.mixin(d,c),!c.url&&a.error("remote requires url to be set"),c.transform=c.filter||c.transform,c.prepare=f(c),c.limiter=g(c),c.transport=c.transport?h(c.transport):a.ajax,delete c.replace,delete c.wildcard,delete c.rateLimitBy,delete c.rateLimitWait,c}function f(a){function b(a,b){return b.url=f(b.url,a),b}function c(a,b){return b.url=b.url.replace(g,encodeURIComponent(a)),b}function d(a,b){return b}var e,f,g;return e=a.prepare,f=a.replace,g=a.wildcard,e?e:e=f?b:a.wildcard?c:d}function g(a){function c(a){return function(c){return b.debounce(c,a)}}function d(a){return function(c){return b.throttle(c,a)}}var e,f,g;return e=a.limiter,f=a.rateLimitBy,g=a.rateLimitWait,e||(e=/^throttle$/i.test(f)?d(g):c(g)),e}function h(c){return function(d){function e(a){b.defer(function(){g.resolve(a)})}function f(a){b.defer(function(){g.reject(a)})}var g=a.Deferred();return c(d,e,f),g}}return function(c){var f,g;return f={initialize:!0,identify:b.stringify,datumTokenizer:null,queryTokenizer:null,sufficient:5,sorter:null,local:[],prefetch:null,remote:null},c=b.mixin(f,c||{}),!c.datumTokenizer&&a.error("datumTokenizer is required"),!c.queryTokenizer&&a.error("queryTokenizer is required"),g=c.sorter,c.sorter=g?function(a){return a.sort(g)}:b.identity,c.local=b.isFunction(c.local)?c.local():c.local,c.prefetch=d(c.prefetch),c.remote=e(c.remote),c}}(),l=function(){"use strict";function c(a){a=k(a),this.sorter=a.sorter,this.identify=a.identify,this.sufficient=a.sufficient,this.local=a.local,this.remote=a.remote?new j(a.remote):null,this.prefetch=a.prefetch?new i(a.prefetch):null,this.index=new h({identify:this.identify,datumTokenizer:a.datumTokenizer,queryTokenizer:a.queryTokenizer}),a.initialize!==!1&&this.initialize()}var e;return e=window&&window.Bloodhound,c.noConflict=function(){return window&&(window.Bloodhound=e),c},c.tokenizers=d,b.mixin(c.prototype,{__ttAdapter:function(){function a(a,b,d){return c.search(a,b,d)}function b(a,b){return c.search(a,b)}var c=this;return this.remote?a:b},_loadPrefetch:function(){function b(a,b){return a?c.reject():(e.add(b),e.prefetch.store(e.index.serialize()),void c.resolve())}var c,d,e=this;return c=a.Deferred(),this.prefetch?(d=this.prefetch.fromCache())?(this.index.bootstrap(d),c.resolve()):this.prefetch.fromNetwork(b):c.resolve(),c.promise()},_initialize:function(){function a(){b.add(b.local)}var b=this;return this.clear(),(this.initPromise=this._loadPrefetch()).done(a),this.initPromise},initialize:function(a){return!this.initPromise||a?this._initialize():this.initPromise},add:function(a){return this.index.add(a),this},get:function(a){return a=b.isArray(a)?a:[].slice.call(arguments),this.index.get(a)},search:function(a,c,d){function e(a){var c=[];b.each(a,function(a){!b.some(f,function(b){return g.identify(a)===g.identify(b)})&&c.push(a)}),d&&d(c)}var f,g=this;return f=this.sorter(this.index.search(a)),c(this.remote?f.slice():f),this.remote&&f.length=j?(clearTimeout(e),e=null,g=i,f=a.apply(c,d)):e||(e=setTimeout(h,j)),f}},stringify:function(a){return b.isString(a)?a:JSON.stringify(a)},noop:function(){}}}(),c=function(){"use strict";function a(a){var g,h;return h=b.mixin({},f,a),g={css:e(),classes:h,html:c(h),selectors:d(h)},{css:g.css,html:g.html,classes:g.classes,selectors:g.selectors,mixin:function(a){b.mixin(a,g)}}}function c(a){return{wrapper:'',menu:'
    '}}function d(a){var c={};return b.each(a,function(a,b){c[b]="."+a}),c}function e(){var a={wrapper:{position:"relative",display:"inline-block"},hint:{position:"absolute",top:"0",left:"0",borderColor:"transparent",boxShadow:"none",opacity:"1"},input:{position:"relative",verticalAlign:"top",backgroundColor:"transparent"},inputWithNoHint:{position:"relative",verticalAlign:"top"},menu:{position:"absolute",top:"100%",left:"0",zIndex:"100",display:"none"},ltr:{left:"0",right:"auto"},rtl:{left:"auto",right:" 0"}};return b.isMsie()&&b.mixin(a.input,{backgroundImage:"url(data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)"}),a}var f={wrapper:"twitter-typeahead",input:"tt-input",hint:"tt-hint",menu:"tt-menu",dataset:"tt-dataset",suggestion:"tt-suggestion",selectable:"tt-selectable",empty:"tt-empty",open:"tt-open",cursor:"tt-cursor",highlight:"tt-highlight"};return a}(),d=function(){"use strict";function c(b){b&&b.el||a.error("EventBus initialized without el"),this.$el=a(b.el)}var d,e;return d="typeahead:",e={render:"rendered",cursorchange:"cursorchanged",select:"selected",autocomplete:"autocompleted"},b.mixin(c.prototype,{_trigger:function(b,c){var e;return e=a.Event(d+b),(c=c||[]).unshift(e),this.$el.trigger.apply(this.$el,c),e},before:function(a){var b,c;return b=[].slice.call(arguments,1),c=this._trigger("before"+a,b),c.isDefaultPrevented()},trigger:function(a){var b;this._trigger(a,[].slice.call(arguments,1)),(b=e[a])&&this._trigger(b,[].slice.call(arguments,1))}}),c}(),e=function(){"use strict";function a(a,b,c,d){var e;if(!c)return this;for(b=b.split(i),c=d?h(c,d):c,this._callbacks=this._callbacks||{};e=b.shift();)this._callbacks[e]=this._callbacks[e]||{sync:[],async:[]},this._callbacks[e][a].push(c);return this}function b(b,c,d){return a.call(this,"async",b,c,d)}function c(b,c,d){return a.call(this,"sync",b,c,d)}function d(a){var b;if(!this._callbacks)return this;for(a=a.split(i);b=a.shift();)delete this._callbacks[b];return this}function e(a){var b,c,d,e,g;if(!this._callbacks)return this;for(a=a.split(i),d=[].slice.call(arguments,1);(b=a.shift())&&(c=this._callbacks[b]);)e=f(c.sync,this,[b].concat(d)),g=f(c.async,this,[b].concat(d)),e()&&j(g);return this}function f(a,b,c){function d(){for(var d,e=0,f=a.length;!d&&f>e;e+=1)d=a[e].apply(b,c)===!1;return!d}return d}function g(){var a;return a=window.setImmediate?function(a){setImmediate(function(){a()})}:function(a){setTimeout(function(){a()},0)}}function h(a,b){return a.bind?a.bind(b):function(){a.apply(b,[].slice.call(arguments,0))}}var i=/\s+/,j=g();return{onSync:c,onAsync:b,off:d,trigger:e}}(),f=function(a){"use strict";function c(a,c,d){for(var e,f=[],g=0,h=a.length;h>g;g++)f.push(b.escapeRegExChars(a[g]));return e=d?"\\b("+f.join("|")+")\\b":"("+f.join("|")+")",c?new RegExp(e):new RegExp(e,"i")}var d={node:null,pattern:null,tagName:"strong",className:null,wordsOnly:!1,caseSensitive:!1};return function(e){function f(b){var c,d,f;return(c=h.exec(b.data))&&(f=a.createElement(e.tagName),e.className&&(f.className=e.className),d=b.splitText(c.index),d.splitText(c[0].length),f.appendChild(d.cloneNode(!0)),b.parentNode.replaceChild(f,d)),!!c}function g(a,b){for(var c,d=3,e=0;e
    ")}}),c}(),h=function(){"use strict";function c(c,e){c=c||{},c.templates=c.templates||{},c.templates.notFound=c.templates.notFound||c.templates.empty,c.source||a.error("missing source"),c.node||a.error("missing node"),c.name&&!h(c.name)&&a.error("invalid dataset name: "+c.name),e.mixin(this),this.highlight=!!c.highlight,this.name=c.name||j(),this.limit=c.limit||5,this.displayFn=d(c.display||c.displayKey),this.templates=g(c.templates,this.displayFn),this.source=c.source.__ttAdapter?c.source.__ttAdapter():c.source,this.async=b.isUndefined(c.async)?this.source.length>2:!!c.async,this._resetLastSuggestion(),this.$el=a(c.node).addClass(this.classes.dataset).addClass(this.classes.dataset+"-"+this.name)}function d(a){function c(b){return b[a]}return a=a||b.stringify,b.isFunction(a)?a:c}function g(c,d){function e(b){return a("
    ").text(d(b))}return{notFound:c.notFound&&b.templatify(c.notFound),pending:c.pending&&b.templatify(c.pending),header:c.header&&b.templatify(c.header),footer:c.footer&&b.templatify(c.footer),suggestion:c.suggestion||e}}function h(a){return/^[_a-zA-Z0-9-]+$/.test(a)}var i,j;return i={val:"tt-selectable-display",obj:"tt-selectable-object"},j=b.getIdGenerator(),c.extractData=function(b){var c=a(b);return c.data(i.obj)?{val:c.data(i.val)||"",obj:c.data(i.obj)||null}:null},b.mixin(c.prototype,e,{_overwrite:function(a,b){b=b||[],b.length?this._renderSuggestions(a,b):this.async&&this.templates.pending?this._renderPending(a):!this.async&&this.templates.notFound?this._renderNotFound(a):this._empty(),this.trigger("rendered",this.name,b,!1)},_append:function(a,b){b=b||[],b.length&&this.$lastSuggestion.length?this._appendSuggestions(a,b):b.length?this._renderSuggestions(a,b):!this.$lastSuggestion.length&&this.templates.notFound&&this._renderNotFound(a),this.trigger("rendered",this.name,b,!0)},_renderSuggestions:function(a,b){var c;c=this._getSuggestionsFragment(a,b),this.$lastSuggestion=c.children().last(),this.$el.html(c).prepend(this._getHeader(a,b)).append(this._getFooter(a,b))},_appendSuggestions:function(a,b){var c,d;c=this._getSuggestionsFragment(a,b),d=c.children().last(),this.$lastSuggestion.after(c),this.$lastSuggestion=d},_renderPending:function(a){var b=this.templates.pending;this._resetLastSuggestion(),b&&this.$el.html(b({query:a,dataset:this.name}))},_renderNotFound:function(a){var b=this.templates.notFound;this._resetLastSuggestion(),b&&this.$el.html(b({query:a,dataset:this.name}))},_empty:function(){this.$el.empty(),this._resetLastSuggestion()},_getSuggestionsFragment:function(c,d){var e,g=this;return e=document.createDocumentFragment(),b.each(d,function(b){var d,f;f=g._injectQuery(c,b),d=a(g.templates.suggestion(f)).data(i.obj,b).data(i.val,g.displayFn(b)).addClass(g.classes.suggestion+" "+g.classes.selectable),e.appendChild(d[0])}),this.highlight&&f({className:this.classes.highlight,node:e,pattern:c}),a(e)},_getFooter:function(a,b){return this.templates.footer?this.templates.footer({query:a,suggestions:b,dataset:this.name}):null},_getHeader:function(a,b){return this.templates.header?this.templates.header({query:a,suggestions:b,dataset:this.name}):null},_resetLastSuggestion:function(){this.$lastSuggestion=a()},_injectQuery:function(a,c){return b.isObject(c)?b.mixin({_query:a},c):c},update:function(b){function c(a){g||(g=!0,a=(a||[]).slice(0,e.limit),h=a.length,e._overwrite(b,a),h")}}),c}(),i=function(){"use strict";function c(c,d){function e(b){var c=f.$node.find(b.node).first();return b.node=c.length?c:a("
    ").appendTo(f.$node),new h(b,d)}var f=this;c=c||{},c.node||a.error("node is required"),d.mixin(this),this.$node=a(c.node),this.query=null,this.datasets=b.map(c.datasets,e)}return b.mixin(c.prototype,e,{_onSelectableClick:function(b){this.trigger("selectableClicked",a(b.currentTarget))},_onRendered:function(a,b,c,d){this.$node.toggleClass(this.classes.empty,this._allDatasetsEmpty()),this.trigger("datasetRendered",b,c,d)},_onCleared:function(){this.$node.toggleClass(this.classes.empty,this._allDatasetsEmpty()),this.trigger("datasetCleared")},_propagate:function(){this.trigger.apply(this,arguments)},_allDatasetsEmpty:function(){function a(a){return a.isEmpty()}return b.every(this.datasets,a)},_getSelectables:function(){return this.$node.find(this.selectors.selectable)},_removeCursor:function(){var a=this.getActiveSelectable();a&&a.removeClass(this.classes.cursor)},_ensureVisible:function(a){var b,c,d,e;b=a.position().top,c=b+a.outerHeight(!0),d=this.$node.scrollTop(),e=this.$node.height()+parseInt(this.$node.css("paddingTop"),10)+parseInt(this.$node.css("paddingBottom"),10),0>b?this.$node.scrollTop(d+b):c>e&&this.$node.scrollTop(d+(c-e))},bind:function(){var a,c=this;return a=b.bind(this._onSelectableClick,this),this.$node.on("click.tt",this.selectors.selectable,a),b.each(this.datasets,function(a){a.onSync("asyncRequested",c._propagate,c).onSync("asyncCanceled",c._propagate,c).onSync("asyncReceived",c._propagate,c).onSync("rendered",c._onRendered,c).onSync("cleared",c._onCleared,c)}),this},isOpen:function(){return this.$node.hasClass(this.classes.open)},open:function(){this.$node.addClass(this.classes.open)},close:function(){this.$node.removeClass(this.classes.open),this._removeCursor()},setLanguageDirection:function(a){this.$node.attr("dir",a)},selectableRelativeToCursor:function(a){var b,c,d,e;return c=this.getActiveSelectable(),b=this._getSelectables(),d=c?b.index(c):-1,e=d+a,e=(e+1)%(b.length+1)-1,e=-1>e?b.length-1:e,-1===e?null:b.eq(e)},setCursor:function(a){this._removeCursor(),(a=a&&a.first())&&(a.addClass(this.classes.cursor),this._ensureVisible(a))},getSelectableData:function(a){return a&&a.length?h.extractData(a):null},getActiveSelectable:function(){var a=this._getSelectables().filter(this.selectors.cursor).first();return a.length?a:null},getTopSelectable:function(){var a=this._getSelectables().first();return a.length?a:null},update:function(a){function c(b){b.update(a)}var d=a!==this.query;return d&&(this.query=a,b.each(this.datasets,c)),d},empty:function(){function a(a){a.clear()}b.each(this.datasets,a),this.query=null,this.$node.addClass(this.classes.empty)},destroy:function(){function c(a){a.destroy()}this.$node.off(".tt"),this.$node=a("
    "),b.each(this.datasets,c)}}),c}(),j=function(){"use strict";function a(){i.apply(this,[].slice.call(arguments,0))}var c=i.prototype;return b.mixin(a.prototype,i.prototype,{open:function(){return!this._allDatasetsEmpty()&&this._show(),c.open.apply(this,[].slice.call(arguments,0))},close:function(){return this._hide(),c.close.apply(this,[].slice.call(arguments,0))},_onRendered:function(){return this._allDatasetsEmpty()?this._hide():this.isOpen()&&this._show(),c._onRendered.apply(this,[].slice.call(arguments,0))},_onCleared:function(){return this._allDatasetsEmpty()?this._hide():this.isOpen()&&this._show(),c._onCleared.apply(this,[].slice.call(arguments,0))},setLanguageDirection:function(a){return this.$node.css("ltr"===a?this.css.ltr:this.css.rtl),c.setLanguageDirection.apply(this,[].slice.call(arguments,0))},_hide:function(){this.$node.hide()},_show:function(){this.$node.css("display","block")}}),a}(),k=function(){"use strict";function c(c,e){var f,g,h,i,j,k,l,m,n,o,p;c=c||{},c.input||a.error("missing input"),c.menu||a.error("missing menu"),c.eventBus||a.error("missing event bus"),e.mixin(this),this.eventBus=c.eventBus,this.minLength=b.isNumber(c.minLength)?c.minLength:1,this.input=c.input,this.menu=c.menu,this.enabled=!0,this.active=!1,this.input.hasFocus()&&this.activate(),this.dir=this.input.getLangDir(),this._hacks(),this.menu.bind().onSync("selectableClicked",this._onSelectableClicked,this).onSync("asyncRequested",this._onAsyncRequested,this).onSync("asyncCanceled",this._onAsyncCanceled,this).onSync("asyncReceived",this._onAsyncReceived,this).onSync("datasetRendered",this._onDatasetRendered,this).onSync("datasetCleared",this._onDatasetCleared,this),f=d(this,"activate","open","_onFocused"),g=d(this,"deactivate","_onBlurred"),h=d(this,"isActive","isOpen","_onEnterKeyed"),i=d(this,"isActive","isOpen","_onTabKeyed"),j=d(this,"isActive","_onEscKeyed"),k=d(this,"isActive","open","_onUpKeyed"),l=d(this,"isActive","open","_onDownKeyed"),m=d(this,"isActive","isOpen","_onLeftKeyed"),n=d(this,"isActive","isOpen","_onRightKeyed"),o=d(this,"_openIfActive","_onQueryChanged"),p=d(this,"_openIfActive","_onWhitespaceChanged"),this.input.bind().onSync("focused",f,this).onSync("blurred",g,this).onSync("enterKeyed",h,this).onSync("tabKeyed",i,this).onSync("escKeyed",j,this).onSync("upKeyed",k,this).onSync("downKeyed",l,this).onSync("leftKeyed",m,this).onSync("rightKeyed",n,this).onSync("queryChanged",o,this).onSync("whitespaceChanged",p,this).onSync("langDirChanged",this._onLangDirChanged,this)}function d(a){var c=[].slice.call(arguments,1);return function(){var d=[].slice.call(arguments);b.each(c,function(b){return a[b].apply(a,d)})}}return b.mixin(c.prototype,{_hacks:function(){var c,d;c=this.input.$input||a("
    "),d=this.menu.$node||a("
    "),c.on("blur.tt",function(a){var e,f,g; +e=document.activeElement,f=d.is(e),g=d.has(e).length>0,b.isMsie()&&(f||g)&&(a.preventDefault(),a.stopImmediatePropagation(),b.defer(function(){c.focus()}))}),d.on("mousedown.tt",function(a){a.preventDefault()})},_onSelectableClicked:function(a,b){this.select(b)},_onDatasetCleared:function(){this._updateHint()},_onDatasetRendered:function(a,b,c,d){this._updateHint(),this.eventBus.trigger("render",c,d,b)},_onAsyncRequested:function(a,b,c){this.eventBus.trigger("asyncrequest",c,b)},_onAsyncCanceled:function(a,b,c){this.eventBus.trigger("asynccancel",c,b)},_onAsyncReceived:function(a,b,c){this.eventBus.trigger("asyncreceive",c,b)},_onFocused:function(){this._minLengthMet()&&this.menu.update(this.input.getQuery())},_onBlurred:function(){this.input.hasQueryChangedSinceLastFocus()&&this.eventBus.trigger("change",this.input.getQuery())},_onEnterKeyed:function(a,b){var c;(c=this.menu.getActiveSelectable())&&this.select(c)&&b.preventDefault()},_onTabKeyed:function(a,b){var c;(c=this.menu.getActiveSelectable())?this.select(c)&&b.preventDefault():(c=this.menu.getTopSelectable())&&this.autocomplete(c)&&b.preventDefault()},_onEscKeyed:function(){this.close()},_onUpKeyed:function(){this.moveCursor(-1)},_onDownKeyed:function(){this.moveCursor(1)},_onLeftKeyed:function(){"rtl"===this.dir&&this.input.isCursorAtEnd()&&this.autocomplete(this.menu.getTopSelectable())},_onRightKeyed:function(){"ltr"===this.dir&&this.input.isCursorAtEnd()&&this.autocomplete(this.menu.getTopSelectable())},_onQueryChanged:function(a,b){this._minLengthMet(b)?this.menu.update(b):this.menu.empty()},_onWhitespaceChanged:function(){this._updateHint()},_onLangDirChanged:function(a,b){this.dir!==b&&(this.dir=b,this.menu.setLanguageDirection(b))},_openIfActive:function(){this.isActive()&&this.open()},_minLengthMet:function(a){return a=b.isString(a)?a:this.input.getQuery()||"",a.length>=this.minLength},_updateHint:function(){var a,c,d,e,f,h,i;a=this.menu.getTopSelectable(),c=this.menu.getSelectableData(a),d=this.input.getInputValue(),!c||b.isBlankString(d)||this.input.hasOverflow()?this.input.clearHint():(e=g.normalizeQuery(d),f=b.escapeRegExChars(e),h=new RegExp("^(?:"+f+")(.+$)","i"),i=h.exec(c.val),i&&this.input.setHint(d+i[1]))},isEnabled:function(){return this.enabled},enable:function(){this.enabled=!0},disable:function(){this.enabled=!1},isActive:function(){return this.active},activate:function(){return this.isActive()?!0:!this.isEnabled()||this.eventBus.before("active")?!1:(this.active=!0,this.eventBus.trigger("active"),!0)},deactivate:function(){return this.isActive()?this.eventBus.before("idle")?!1:(this.active=!1,this.close(),this.eventBus.trigger("idle"),!0):!0},isOpen:function(){return this.menu.isOpen()},open:function(){return this.isOpen()||this.eventBus.before("open")||(this.menu.open(),this._updateHint(),this.eventBus.trigger("open")),this.isOpen()},close:function(){return this.isOpen()&&!this.eventBus.before("close")&&(this.menu.close(),this.input.clearHint(),this.input.resetInputValue(),this.eventBus.trigger("close")),!this.isOpen()},setVal:function(a){this.input.setQuery(b.toStr(a))},getVal:function(){return this.input.getQuery()},select:function(a){var b=this.menu.getSelectableData(a);return b&&!this.eventBus.before("select",b.obj)?(this.input.setQuery(b.val,!0),this.eventBus.trigger("select",b.obj),this.close(),!0):!1},autocomplete:function(a){var b,c,d;return b=this.input.getQuery(),c=this.menu.getSelectableData(a),d=c&&b!==c.val,d&&!this.eventBus.before("autocomplete",c.obj)?(this.input.setQuery(c.val),this.eventBus.trigger("autocomplete",c.obj),!0):!1},moveCursor:function(a){var b,c,d,e,f;return b=this.input.getQuery(),c=this.menu.selectableRelativeToCursor(a),d=this.menu.getSelectableData(c),e=d?d.obj:null,f=this._minLengthMet()&&this.menu.update(b),f||this.eventBus.before("cursorchange",e)?!1:(this.menu.setCursor(c),d?this.input.setInputValue(d.val):(this.input.resetInputValue(),this._updateHint()),this.eventBus.trigger("cursorchange",e),!0)},destroy:function(){this.input.destroy(),this.menu.destroy()}}),c}();!function(){"use strict";function e(b,c){b.each(function(){var b,d=a(this);(b=d.data(p.typeahead))&&c(b,d)})}function f(a,b){return a.clone().addClass(b.classes.hint).removeData().css(b.css.hint).css(l(a)).prop("readonly",!0).removeAttr("id name placeholder required").attr({autocomplete:"off",spellcheck:"false",tabindex:-1})}function h(a,b){a.data(p.attrs,{dir:a.attr("dir"),autocomplete:a.attr("autocomplete"),spellcheck:a.attr("spellcheck"),style:a.attr("style")}),a.addClass(b.classes.input).attr({autocomplete:"off",spellcheck:!1});try{!a.attr("dir")&&a.attr("dir","auto")}catch(c){}return a}function l(a){return{backgroundAttachment:a.css("background-attachment"),backgroundClip:a.css("background-clip"),backgroundColor:a.css("background-color"),backgroundImage:a.css("background-image"),backgroundOrigin:a.css("background-origin"),backgroundPosition:a.css("background-position"),backgroundRepeat:a.css("background-repeat"),backgroundSize:a.css("background-size")}}function m(a){var c,d;c=a.data(p.www),d=a.parent().filter(c.selectors.wrapper),b.each(a.data(p.attrs),function(c,d){b.isUndefined(c)?a.removeAttr(d):a.attr(d,c)}),a.removeData(p.typeahead).removeData(p.www).removeData(p.attr).removeClass(c.classes.input),d.length&&(a.detach().insertAfter(d),d.remove())}function n(c){var d,e;return d=b.isJQuery(c)||b.isElement(c),e=d?a(c).first():[],e.length?e:null}var o,p,q;o=a.fn.typeahead,p={www:"tt-www",attrs:"tt-attrs",typeahead:"tt-typeahead"},q={initialize:function(e,l){function m(){var c,m,q,r,s,t,u,v,w,x,y;b.each(l,function(a){a.highlight=!!e.highlight}),c=a(this),m=a(o.html.wrapper),q=n(e.hint),r=n(e.menu),s=e.hint!==!1&&!q,t=e.menu!==!1&&!r,s&&(q=f(c,o)),t&&(r=a(o.html.menu).css(o.css.menu)),q&&q.val(""),c=h(c,o),(s||t)&&(m.css(o.css.wrapper),c.css(s?o.css.input:o.css.inputWithNoHint),c.wrap(m).parent().prepend(s?q:null).append(t?r:null)),y=t?j:i,u=new d({el:c}),v=new g({hint:q,input:c},o),w=new y({node:r,datasets:l},o),x=new k({input:v,menu:w,eventBus:u,minLength:e.minLength},o),c.data(p.www,o),c.data(p.typeahead,x)}var o;return l=b.isArray(l)?l:[].slice.call(arguments,1),e=e||{},o=c(e.classNames),this.each(m)},isEnabled:function(){var a;return e(this.first(),function(b){a=b.isEnabled()}),a},enable:function(){return e(this,function(a){a.enable()}),this},disable:function(){return e(this,function(a){a.disable()}),this},isActive:function(){var a;return e(this.first(),function(b){a=b.isActive()}),a},activate:function(){return e(this,function(a){a.activate()}),this},deactivate:function(){return e(this,function(a){a.deactivate()}),this},isOpen:function(){var a;return e(this.first(),function(b){a=b.isOpen()}),a},open:function(){return e(this,function(a){a.open()}),this},close:function(){return e(this,function(a){a.close()}),this},select:function(b){var c=!1,d=a(b);return e(this.first(),function(a){c=a.select(d)}),c},autocomplete:function(b){var c=!1,d=a(b);return e(this.first(),function(a){c=a.autocomplete(d)}),c},moveCursor:function(a){var b=!1;return e(this.first(),function(c){b=c.moveCursor(a)}),b},val:function(a){var b;return arguments.length?(e(this,function(b){b.setVal(a)}),this):(e(this.first(),function(a){b=a.getVal()}),b)},destroy:function(){return e(this,function(a,b){m(b),a.destroy()}),this}},a.fn.typeahead=function(a){return q[a]?q[a].apply(this,[].slice.call(arguments,1)):q.initialize.apply(this,arguments)},a.fn.typeahead.noConflict=function(){return a.fn.typeahead=o,this}}()}); \ No newline at end of file diff --git a/pxy_dashboard/static/dashboard/vendor/typeahead.js/typeahead.jquery.min.js b/pxy_dashboard/static/dashboard/vendor/typeahead.js/typeahead.jquery.min.js new file mode 100644 index 0000000..962133a --- /dev/null +++ b/pxy_dashboard/static/dashboard/vendor/typeahead.js/typeahead.jquery.min.js @@ -0,0 +1,7 @@ +/*! + * typeahead.js 0.11.1 + * https://github.com/twitter/typeahead.js + * Copyright 2013-2015 Twitter, Inc. and other contributors; Licensed MIT + */ + +!function(a,b){"function"==typeof define&&define.amd?define("typeahead.js",["jquery"],function(a){return b(a)}):"object"==typeof exports?module.exports=b(require("jquery")):b(jQuery)}(this,function(a){var b=function(){"use strict";return{isMsie:function(){return/(msie|trident)/i.test(navigator.userAgent)?navigator.userAgent.match(/(msie |rv:)(\d+(.\d+)?)/i)[2]:!1},isBlankString:function(a){return!a||/^\s*$/.test(a)},escapeRegExChars:function(a){return a.replace(/[\-\[\]\/\{\}\(\)\*\+\?\.\\\^\$\|]/g,"\\$&")},isString:function(a){return"string"==typeof a},isNumber:function(a){return"number"==typeof a},isArray:a.isArray,isFunction:a.isFunction,isObject:a.isPlainObject,isUndefined:function(a){return"undefined"==typeof a},isElement:function(a){return!(!a||1!==a.nodeType)},isJQuery:function(b){return b instanceof a},toStr:function(a){return b.isUndefined(a)||null===a?"":a+""},bind:a.proxy,each:function(b,c){function d(a,b){return c(b,a)}a.each(b,d)},map:a.map,filter:a.grep,every:function(b,c){var d=!0;return b?(a.each(b,function(a,e){return(d=c.call(null,e,a,b))?void 0:!1}),!!d):d},some:function(b,c){var d=!1;return b?(a.each(b,function(a,e){return(d=c.call(null,e,a,b))?!1:void 0}),!!d):d},mixin:a.extend,identity:function(a){return a},clone:function(b){return a.extend(!0,{},b)},getIdGenerator:function(){var a=0;return function(){return a++}},templatify:function(b){function c(){return String(b)}return a.isFunction(b)?b:c},defer:function(a){setTimeout(a,0)},debounce:function(a,b,c){var d,e;return function(){var f,g,h=this,i=arguments;return f=function(){d=null,c||(e=a.apply(h,i))},g=c&&!d,clearTimeout(d),d=setTimeout(f,b),g&&(e=a.apply(h,i)),e}},throttle:function(a,b){var c,d,e,f,g,h;return g=0,h=function(){g=new Date,e=null,f=a.apply(c,d)},function(){var i=new Date,j=b-(i-g);return c=this,d=arguments,0>=j?(clearTimeout(e),e=null,g=i,f=a.apply(c,d)):e||(e=setTimeout(h,j)),f}},stringify:function(a){return b.isString(a)?a:JSON.stringify(a)},noop:function(){}}}(),c=function(){"use strict";function a(a){var g,h;return h=b.mixin({},f,a),g={css:e(),classes:h,html:c(h),selectors:d(h)},{css:g.css,html:g.html,classes:g.classes,selectors:g.selectors,mixin:function(a){b.mixin(a,g)}}}function c(a){return{wrapper:'',menu:'
    '}}function d(a){var c={};return b.each(a,function(a,b){c[b]="."+a}),c}function e(){var a={wrapper:{position:"relative",display:"inline-block"},hint:{position:"absolute",top:"0",left:"0",borderColor:"transparent",boxShadow:"none",opacity:"1"},input:{position:"relative",verticalAlign:"top",backgroundColor:"transparent"},inputWithNoHint:{position:"relative",verticalAlign:"top"},menu:{position:"absolute",top:"100%",left:"0",zIndex:"100",display:"none"},ltr:{left:"0",right:"auto"},rtl:{left:"auto",right:" 0"}};return b.isMsie()&&b.mixin(a.input,{backgroundImage:"url(data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7)"}),a}var f={wrapper:"twitter-typeahead",input:"tt-input",hint:"tt-hint",menu:"tt-menu",dataset:"tt-dataset",suggestion:"tt-suggestion",selectable:"tt-selectable",empty:"tt-empty",open:"tt-open",cursor:"tt-cursor",highlight:"tt-highlight"};return a}(),d=function(){"use strict";function c(b){b&&b.el||a.error("EventBus initialized without el"),this.$el=a(b.el)}var d,e;return d="typeahead:",e={render:"rendered",cursorchange:"cursorchanged",select:"selected",autocomplete:"autocompleted"},b.mixin(c.prototype,{_trigger:function(b,c){var e;return e=a.Event(d+b),(c=c||[]).unshift(e),this.$el.trigger.apply(this.$el,c),e},before:function(a){var b,c;return b=[].slice.call(arguments,1),c=this._trigger("before"+a,b),c.isDefaultPrevented()},trigger:function(a){var b;this._trigger(a,[].slice.call(arguments,1)),(b=e[a])&&this._trigger(b,[].slice.call(arguments,1))}}),c}(),e=function(){"use strict";function a(a,b,c,d){var e;if(!c)return this;for(b=b.split(i),c=d?h(c,d):c,this._callbacks=this._callbacks||{};e=b.shift();)this._callbacks[e]=this._callbacks[e]||{sync:[],async:[]},this._callbacks[e][a].push(c);return this}function b(b,c,d){return a.call(this,"async",b,c,d)}function c(b,c,d){return a.call(this,"sync",b,c,d)}function d(a){var b;if(!this._callbacks)return this;for(a=a.split(i);b=a.shift();)delete this._callbacks[b];return this}function e(a){var b,c,d,e,g;if(!this._callbacks)return this;for(a=a.split(i),d=[].slice.call(arguments,1);(b=a.shift())&&(c=this._callbacks[b]);)e=f(c.sync,this,[b].concat(d)),g=f(c.async,this,[b].concat(d)),e()&&j(g);return this}function f(a,b,c){function d(){for(var d,e=0,f=a.length;!d&&f>e;e+=1)d=a[e].apply(b,c)===!1;return!d}return d}function g(){var a;return a=window.setImmediate?function(a){setImmediate(function(){a()})}:function(a){setTimeout(function(){a()},0)}}function h(a,b){return a.bind?a.bind(b):function(){a.apply(b,[].slice.call(arguments,0))}}var i=/\s+/,j=g();return{onSync:c,onAsync:b,off:d,trigger:e}}(),f=function(a){"use strict";function c(a,c,d){for(var e,f=[],g=0,h=a.length;h>g;g++)f.push(b.escapeRegExChars(a[g]));return e=d?"\\b("+f.join("|")+")\\b":"("+f.join("|")+")",c?new RegExp(e):new RegExp(e,"i")}var d={node:null,pattern:null,tagName:"strong",className:null,wordsOnly:!1,caseSensitive:!1};return function(e){function f(b){var c,d,f;return(c=h.exec(b.data))&&(f=a.createElement(e.tagName),e.className&&(f.className=e.className),d=b.splitText(c.index),d.splitText(c[0].length),f.appendChild(d.cloneNode(!0)),b.parentNode.replaceChild(f,d)),!!c}function g(a,b){for(var c,d=3,e=0;e
    ")}}),c}(),h=function(){"use strict";function c(c,e){c=c||{},c.templates=c.templates||{},c.templates.notFound=c.templates.notFound||c.templates.empty,c.source||a.error("missing source"),c.node||a.error("missing node"),c.name&&!h(c.name)&&a.error("invalid dataset name: "+c.name),e.mixin(this),this.highlight=!!c.highlight,this.name=c.name||j(),this.limit=c.limit||5,this.displayFn=d(c.display||c.displayKey),this.templates=g(c.templates,this.displayFn),this.source=c.source.__ttAdapter?c.source.__ttAdapter():c.source,this.async=b.isUndefined(c.async)?this.source.length>2:!!c.async,this._resetLastSuggestion(),this.$el=a(c.node).addClass(this.classes.dataset).addClass(this.classes.dataset+"-"+this.name)}function d(a){function c(b){return b[a]}return a=a||b.stringify,b.isFunction(a)?a:c}function g(c,d){function e(b){return a("
    ").text(d(b))}return{notFound:c.notFound&&b.templatify(c.notFound),pending:c.pending&&b.templatify(c.pending),header:c.header&&b.templatify(c.header),footer:c.footer&&b.templatify(c.footer),suggestion:c.suggestion||e}}function h(a){return/^[_a-zA-Z0-9-]+$/.test(a)}var i,j;return i={val:"tt-selectable-display",obj:"tt-selectable-object"},j=b.getIdGenerator(),c.extractData=function(b){var c=a(b);return c.data(i.obj)?{val:c.data(i.val)||"",obj:c.data(i.obj)||null}:null},b.mixin(c.prototype,e,{_overwrite:function(a,b){b=b||[],b.length?this._renderSuggestions(a,b):this.async&&this.templates.pending?this._renderPending(a):!this.async&&this.templates.notFound?this._renderNotFound(a):this._empty(),this.trigger("rendered",this.name,b,!1)},_append:function(a,b){b=b||[],b.length&&this.$lastSuggestion.length?this._appendSuggestions(a,b):b.length?this._renderSuggestions(a,b):!this.$lastSuggestion.length&&this.templates.notFound&&this._renderNotFound(a),this.trigger("rendered",this.name,b,!0)},_renderSuggestions:function(a,b){var c;c=this._getSuggestionsFragment(a,b),this.$lastSuggestion=c.children().last(),this.$el.html(c).prepend(this._getHeader(a,b)).append(this._getFooter(a,b))},_appendSuggestions:function(a,b){var c,d;c=this._getSuggestionsFragment(a,b),d=c.children().last(),this.$lastSuggestion.after(c),this.$lastSuggestion=d},_renderPending:function(a){var b=this.templates.pending;this._resetLastSuggestion(),b&&this.$el.html(b({query:a,dataset:this.name}))},_renderNotFound:function(a){var b=this.templates.notFound;this._resetLastSuggestion(),b&&this.$el.html(b({query:a,dataset:this.name}))},_empty:function(){this.$el.empty(),this._resetLastSuggestion()},_getSuggestionsFragment:function(c,d){var e,g=this;return e=document.createDocumentFragment(),b.each(d,function(b){var d,f;f=g._injectQuery(c,b),d=a(g.templates.suggestion(f)).data(i.obj,b).data(i.val,g.displayFn(b)).addClass(g.classes.suggestion+" "+g.classes.selectable),e.appendChild(d[0])}),this.highlight&&f({className:this.classes.highlight,node:e,pattern:c}),a(e)},_getFooter:function(a,b){return this.templates.footer?this.templates.footer({query:a,suggestions:b,dataset:this.name}):null},_getHeader:function(a,b){return this.templates.header?this.templates.header({query:a,suggestions:b,dataset:this.name}):null},_resetLastSuggestion:function(){this.$lastSuggestion=a()},_injectQuery:function(a,c){return b.isObject(c)?b.mixin({_query:a},c):c},update:function(b){function c(a){g||(g=!0,a=(a||[]).slice(0,e.limit),h=a.length,e._overwrite(b,a),h")}}),c}(),i=function(){"use strict";function c(c,d){function e(b){var c=f.$node.find(b.node).first();return b.node=c.length?c:a("
    ").appendTo(f.$node),new h(b,d)}var f=this;c=c||{},c.node||a.error("node is required"),d.mixin(this),this.$node=a(c.node),this.query=null,this.datasets=b.map(c.datasets,e)}return b.mixin(c.prototype,e,{_onSelectableClick:function(b){this.trigger("selectableClicked",a(b.currentTarget))},_onRendered:function(a,b,c,d){this.$node.toggleClass(this.classes.empty,this._allDatasetsEmpty()),this.trigger("datasetRendered",b,c,d)},_onCleared:function(){this.$node.toggleClass(this.classes.empty,this._allDatasetsEmpty()),this.trigger("datasetCleared")},_propagate:function(){this.trigger.apply(this,arguments)},_allDatasetsEmpty:function(){function a(a){return a.isEmpty()}return b.every(this.datasets,a)},_getSelectables:function(){return this.$node.find(this.selectors.selectable)},_removeCursor:function(){var a=this.getActiveSelectable();a&&a.removeClass(this.classes.cursor)},_ensureVisible:function(a){var b,c,d,e;b=a.position().top,c=b+a.outerHeight(!0),d=this.$node.scrollTop(),e=this.$node.height()+parseInt(this.$node.css("paddingTop"),10)+parseInt(this.$node.css("paddingBottom"),10),0>b?this.$node.scrollTop(d+b):c>e&&this.$node.scrollTop(d+(c-e))},bind:function(){var a,c=this;return a=b.bind(this._onSelectableClick,this),this.$node.on("click.tt",this.selectors.selectable,a),b.each(this.datasets,function(a){a.onSync("asyncRequested",c._propagate,c).onSync("asyncCanceled",c._propagate,c).onSync("asyncReceived",c._propagate,c).onSync("rendered",c._onRendered,c).onSync("cleared",c._onCleared,c)}),this},isOpen:function(){return this.$node.hasClass(this.classes.open)},open:function(){this.$node.addClass(this.classes.open)},close:function(){this.$node.removeClass(this.classes.open),this._removeCursor()},setLanguageDirection:function(a){this.$node.attr("dir",a)},selectableRelativeToCursor:function(a){var b,c,d,e;return c=this.getActiveSelectable(),b=this._getSelectables(),d=c?b.index(c):-1,e=d+a,e=(e+1)%(b.length+1)-1,e=-1>e?b.length-1:e,-1===e?null:b.eq(e)},setCursor:function(a){this._removeCursor(),(a=a&&a.first())&&(a.addClass(this.classes.cursor),this._ensureVisible(a))},getSelectableData:function(a){return a&&a.length?h.extractData(a):null},getActiveSelectable:function(){var a=this._getSelectables().filter(this.selectors.cursor).first();return a.length?a:null},getTopSelectable:function(){var a=this._getSelectables().first();return a.length?a:null},update:function(a){function c(b){b.update(a)}var d=a!==this.query;return d&&(this.query=a,b.each(this.datasets,c)),d},empty:function(){function a(a){a.clear()}b.each(this.datasets,a),this.query=null,this.$node.addClass(this.classes.empty)},destroy:function(){function c(a){a.destroy()}this.$node.off(".tt"),this.$node=a("
    "),b.each(this.datasets,c)}}),c}(),j=function(){"use strict";function a(){i.apply(this,[].slice.call(arguments,0))}var c=i.prototype;return b.mixin(a.prototype,i.prototype,{open:function(){return!this._allDatasetsEmpty()&&this._show(),c.open.apply(this,[].slice.call(arguments,0))},close:function(){return this._hide(),c.close.apply(this,[].slice.call(arguments,0))},_onRendered:function(){return this._allDatasetsEmpty()?this._hide():this.isOpen()&&this._show(),c._onRendered.apply(this,[].slice.call(arguments,0))},_onCleared:function(){return this._allDatasetsEmpty()?this._hide():this.isOpen()&&this._show(),c._onCleared.apply(this,[].slice.call(arguments,0))},setLanguageDirection:function(a){return this.$node.css("ltr"===a?this.css.ltr:this.css.rtl),c.setLanguageDirection.apply(this,[].slice.call(arguments,0))},_hide:function(){this.$node.hide()},_show:function(){this.$node.css("display","block")}}),a}(),k=function(){"use strict";function c(c,e){var f,g,h,i,j,k,l,m,n,o,p;c=c||{},c.input||a.error("missing input"),c.menu||a.error("missing menu"),c.eventBus||a.error("missing event bus"),e.mixin(this),this.eventBus=c.eventBus,this.minLength=b.isNumber(c.minLength)?c.minLength:1,this.input=c.input,this.menu=c.menu,this.enabled=!0,this.active=!1,this.input.hasFocus()&&this.activate(),this.dir=this.input.getLangDir(),this._hacks(),this.menu.bind().onSync("selectableClicked",this._onSelectableClicked,this).onSync("asyncRequested",this._onAsyncRequested,this).onSync("asyncCanceled",this._onAsyncCanceled,this).onSync("asyncReceived",this._onAsyncReceived,this).onSync("datasetRendered",this._onDatasetRendered,this).onSync("datasetCleared",this._onDatasetCleared,this),f=d(this,"activate","open","_onFocused"),g=d(this,"deactivate","_onBlurred"),h=d(this,"isActive","isOpen","_onEnterKeyed"),i=d(this,"isActive","isOpen","_onTabKeyed"),j=d(this,"isActive","_onEscKeyed"),k=d(this,"isActive","open","_onUpKeyed"),l=d(this,"isActive","open","_onDownKeyed"),m=d(this,"isActive","isOpen","_onLeftKeyed"),n=d(this,"isActive","isOpen","_onRightKeyed"),o=d(this,"_openIfActive","_onQueryChanged"),p=d(this,"_openIfActive","_onWhitespaceChanged"),this.input.bind().onSync("focused",f,this).onSync("blurred",g,this).onSync("enterKeyed",h,this).onSync("tabKeyed",i,this).onSync("escKeyed",j,this).onSync("upKeyed",k,this).onSync("downKeyed",l,this).onSync("leftKeyed",m,this).onSync("rightKeyed",n,this).onSync("queryChanged",o,this).onSync("whitespaceChanged",p,this).onSync("langDirChanged",this._onLangDirChanged,this)}function d(a){var c=[].slice.call(arguments,1);return function(){var d=[].slice.call(arguments);b.each(c,function(b){return a[b].apply(a,d)})}}return b.mixin(c.prototype,{_hacks:function(){var c,d;c=this.input.$input||a("
    "),d=this.menu.$node||a("
    "),c.on("blur.tt",function(a){var e,f,g;e=document.activeElement,f=d.is(e),g=d.has(e).length>0,b.isMsie()&&(f||g)&&(a.preventDefault(),a.stopImmediatePropagation(),b.defer(function(){c.focus()}))}),d.on("mousedown.tt",function(a){a.preventDefault()})},_onSelectableClicked:function(a,b){this.select(b)},_onDatasetCleared:function(){this._updateHint()},_onDatasetRendered:function(a,b,c,d){this._updateHint(),this.eventBus.trigger("render",c,d,b)},_onAsyncRequested:function(a,b,c){this.eventBus.trigger("asyncrequest",c,b)},_onAsyncCanceled:function(a,b,c){this.eventBus.trigger("asynccancel",c,b)},_onAsyncReceived:function(a,b,c){this.eventBus.trigger("asyncreceive",c,b)},_onFocused:function(){this._minLengthMet()&&this.menu.update(this.input.getQuery())},_onBlurred:function(){this.input.hasQueryChangedSinceLastFocus()&&this.eventBus.trigger("change",this.input.getQuery())},_onEnterKeyed:function(a,b){var c;(c=this.menu.getActiveSelectable())&&this.select(c)&&b.preventDefault()},_onTabKeyed:function(a,b){var c;(c=this.menu.getActiveSelectable())?this.select(c)&&b.preventDefault():(c=this.menu.getTopSelectable())&&this.autocomplete(c)&&b.preventDefault()},_onEscKeyed:function(){this.close()},_onUpKeyed:function(){this.moveCursor(-1)},_onDownKeyed:function(){this.moveCursor(1)},_onLeftKeyed:function(){"rtl"===this.dir&&this.input.isCursorAtEnd()&&this.autocomplete(this.menu.getTopSelectable())},_onRightKeyed:function(){"ltr"===this.dir&&this.input.isCursorAtEnd()&&this.autocomplete(this.menu.getTopSelectable())},_onQueryChanged:function(a,b){this._minLengthMet(b)?this.menu.update(b):this.menu.empty()},_onWhitespaceChanged:function(){this._updateHint()},_onLangDirChanged:function(a,b){this.dir!==b&&(this.dir=b,this.menu.setLanguageDirection(b))},_openIfActive:function(){this.isActive()&&this.open()},_minLengthMet:function(a){return a=b.isString(a)?a:this.input.getQuery()||"",a.length>=this.minLength},_updateHint:function(){var a,c,d,e,f,h,i;a=this.menu.getTopSelectable(),c=this.menu.getSelectableData(a),d=this.input.getInputValue(),!c||b.isBlankString(d)||this.input.hasOverflow()?this.input.clearHint():(e=g.normalizeQuery(d),f=b.escapeRegExChars(e),h=new RegExp("^(?:"+f+")(.+$)","i"),i=h.exec(c.val),i&&this.input.setHint(d+i[1]))},isEnabled:function(){return this.enabled},enable:function(){this.enabled=!0},disable:function(){this.enabled=!1},isActive:function(){return this.active},activate:function(){return this.isActive()?!0:!this.isEnabled()||this.eventBus.before("active")?!1:(this.active=!0,this.eventBus.trigger("active"),!0)},deactivate:function(){return this.isActive()?this.eventBus.before("idle")?!1:(this.active=!1,this.close(),this.eventBus.trigger("idle"),!0):!0},isOpen:function(){return this.menu.isOpen()},open:function(){return this.isOpen()||this.eventBus.before("open")||(this.menu.open(),this._updateHint(),this.eventBus.trigger("open")),this.isOpen()},close:function(){return this.isOpen()&&!this.eventBus.before("close")&&(this.menu.close(),this.input.clearHint(),this.input.resetInputValue(),this.eventBus.trigger("close")),!this.isOpen()},setVal:function(a){this.input.setQuery(b.toStr(a))},getVal:function(){return this.input.getQuery()},select:function(a){var b=this.menu.getSelectableData(a);return b&&!this.eventBus.before("select",b.obj)?(this.input.setQuery(b.val,!0),this.eventBus.trigger("select",b.obj),this.close(),!0):!1},autocomplete:function(a){var b,c,d;return b=this.input.getQuery(),c=this.menu.getSelectableData(a),d=c&&b!==c.val,d&&!this.eventBus.before("autocomplete",c.obj)?(this.input.setQuery(c.val),this.eventBus.trigger("autocomplete",c.obj),!0):!1},moveCursor:function(a){var b,c,d,e,f;return b=this.input.getQuery(),c=this.menu.selectableRelativeToCursor(a),d=this.menu.getSelectableData(c),e=d?d.obj:null,f=this._minLengthMet()&&this.menu.update(b),f||this.eventBus.before("cursorchange",e)?!1:(this.menu.setCursor(c),d?this.input.setInputValue(d.val):(this.input.resetInputValue(),this._updateHint()),this.eventBus.trigger("cursorchange",e),!0)},destroy:function(){this.input.destroy(),this.menu.destroy()}}),c}();!function(){"use strict";function e(b,c){b.each(function(){var b,d=a(this);(b=d.data(p.typeahead))&&c(b,d)})}function f(a,b){return a.clone().addClass(b.classes.hint).removeData().css(b.css.hint).css(l(a)).prop("readonly",!0).removeAttr("id name placeholder required").attr({autocomplete:"off",spellcheck:"false",tabindex:-1})}function h(a,b){a.data(p.attrs,{dir:a.attr("dir"),autocomplete:a.attr("autocomplete"),spellcheck:a.attr("spellcheck"),style:a.attr("style")}),a.addClass(b.classes.input).attr({autocomplete:"off",spellcheck:!1});try{!a.attr("dir")&&a.attr("dir","auto")}catch(c){}return a}function l(a){return{backgroundAttachment:a.css("background-attachment"),backgroundClip:a.css("background-clip"),backgroundColor:a.css("background-color"),backgroundImage:a.css("background-image"),backgroundOrigin:a.css("background-origin"),backgroundPosition:a.css("background-position"),backgroundRepeat:a.css("background-repeat"),backgroundSize:a.css("background-size")}}function m(a){var c,d;c=a.data(p.www),d=a.parent().filter(c.selectors.wrapper),b.each(a.data(p.attrs),function(c,d){b.isUndefined(c)?a.removeAttr(d):a.attr(d,c)}),a.removeData(p.typeahead).removeData(p.www).removeData(p.attr).removeClass(c.classes.input),d.length&&(a.detach().insertAfter(d),d.remove())}function n(c){var d,e;return d=b.isJQuery(c)||b.isElement(c),e=d?a(c).first():[],e.length?e:null}var o,p,q;o=a.fn.typeahead,p={www:"tt-www",attrs:"tt-attrs",typeahead:"tt-typeahead"},q={initialize:function(e,l){function m(){var c,m,q,r,s,t,u,v,w,x,y;b.each(l,function(a){a.highlight=!!e.highlight}),c=a(this),m=a(o.html.wrapper),q=n(e.hint),r=n(e.menu),s=e.hint!==!1&&!q,t=e.menu!==!1&&!r,s&&(q=f(c,o)),t&&(r=a(o.html.menu).css(o.css.menu)),q&&q.val(""),c=h(c,o),(s||t)&&(m.css(o.css.wrapper),c.css(s?o.css.input:o.css.inputWithNoHint),c.wrap(m).parent().prepend(s?q:null).append(t?r:null)),y=t?j:i,u=new d({el:c}),v=new g({hint:q,input:c},o),w=new y({node:r,datasets:l},o),x=new k({input:v,menu:w,eventBus:u,minLength:e.minLength},o),c.data(p.www,o),c.data(p.typeahead,x)}var o;return l=b.isArray(l)?l:[].slice.call(arguments,1),e=e||{},o=c(e.classNames),this.each(m)},isEnabled:function(){var a;return e(this.first(),function(b){a=b.isEnabled()}),a},enable:function(){return e(this,function(a){a.enable()}),this},disable:function(){return e(this,function(a){a.disable()}),this},isActive:function(){var a;return e(this.first(),function(b){a=b.isActive()}),a},activate:function(){return e(this,function(a){a.activate()}),this},deactivate:function(){return e(this,function(a){a.deactivate()}),this},isOpen:function(){var a;return e(this.first(),function(b){a=b.isOpen()}),a},open:function(){return e(this,function(a){a.open()}),this},close:function(){return e(this,function(a){a.close()}),this},select:function(b){var c=!1,d=a(b);return e(this.first(),function(a){c=a.select(d)}),c},autocomplete:function(b){var c=!1,d=a(b);return e(this.first(),function(a){c=a.autocomplete(d)}),c},moveCursor:function(a){var b=!1;return e(this.first(),function(c){b=c.moveCursor(a)}),b},val:function(a){var b;return arguments.length?(e(this,function(b){b.setVal(a)}),this):(e(this.first(),function(a){b=a.getVal()}),b)},destroy:function(){return e(this,function(a,b){m(b),a.destroy()}),this}},a.fn.typeahead=function(a){return q[a]?q[a].apply(this,[].slice.call(arguments,1)):q.initialize.apply(this,arguments)},a.fn.typeahead.noConflict=function(){return a.fn.typeahead=o,this}}()}); \ No newline at end of file diff --git a/pxy_dashboard/templates/__init__.py b/pxy_dashboard/templates/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/pxy_dashboard/templates/dashboard/__init__.py b/pxy_dashboard/templates/dashboard/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/pxy_dashboard/templates/pxy_dashboard/__init__.py b/pxy_dashboard/templates/pxy_dashboard/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/pxy_dashboard/templates/pxy_dashboard/account/__init__.py b/pxy_dashboard/templates/pxy_dashboard/account/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/pxy_dashboard/templates/pxy_dashboard/account/account_inactive.html b/pxy_dashboard/templates/pxy_dashboard/account/account_inactive.html new file mode 100644 index 0000000..ca70623 --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/account/account_inactive.html @@ -0,0 +1,11 @@ +{% extends "account/base.html" %} + +{% load i18n %} + +{% block title %}{% trans "Account Inactive" %}{% endblock %} + +{% block page_content %} +

    {% trans "Account Inactive" %}

    + +

    {% trans "This account is inactive." %}

    +{% endblock %} diff --git a/pxy_dashboard/templates/pxy_dashboard/account/base.html b/pxy_dashboard/templates/pxy_dashboard/account/base.html new file mode 100644 index 0000000..4cbef2e --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/account/base.html @@ -0,0 +1,39 @@ +{% load static %} +{% include "partials/main.html" %} + + + + + {% block title %}{% endblock title %} | Jidox - Bootstrap 5 Admin & + Dashboard Template + + + + + + + + + {% block css %} + + {% block extra_css %} {% endblock extra_css %} + {% include "partials/head-css.html" %} + {% endblock css %} + + + + + +{% block page_content %}{% endblock %} + + + {% block javascript %} + + {% include "partials/footer-script.html" %} + + {% block extra_js %} {% endblock extra_js %} + + {% endblock javascript %} + + + \ No newline at end of file diff --git a/pxy_dashboard/templates/pxy_dashboard/account/email.html b/pxy_dashboard/templates/pxy_dashboard/account/email.html new file mode 100644 index 0000000..781b1cb --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/account/email.html @@ -0,0 +1,89 @@ +{% extends "account/base.html" %} + +{% load i18n %} +{% load crispy_forms_tags %} + +{% block title %}{% trans "Account" %}{% endblock %} + +{% block page_content %} +
    +

    {% trans "E-mail Addresses" %}

    + + {% if user.emailaddress_set.all %} +

    {% trans 'The following e-mail addresses are associated with your account:' %}

    + + + + {% else %} +

    + {% trans 'Warning:' %} {% trans "You currently do not have any e-mail address set up. You should really add an e-mail address so you can receive notifications, reset your password, etc." %} +

    + + {% endif %} + + +

    {% trans "Add E-mail Address" %}

    + +
    + {% csrf_token %} + {{ form|crispy }} + +
    + +
    +{% endblock %} + + +{% block extra_js %} + {{ block.super }} + +{% endblock %} diff --git a/pxy_dashboard/templates/pxy_dashboard/account/email_confirm.html b/pxy_dashboard/templates/pxy_dashboard/account/email_confirm.html new file mode 100644 index 0000000..fcdb2cf --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/account/email_confirm.html @@ -0,0 +1,37 @@ +{% extends "account/base.html" %} + +{% load i18n %} +{% load account %} + +{% block title %}{% trans "Confirm E-mail Address" %}{% endblock %} + + +{% block page_content %} +
    +{% endblock %} diff --git a/pxy_dashboard/templates/pxy_dashboard/account/login.html b/pxy_dashboard/templates/pxy_dashboard/account/login.html new file mode 100644 index 0000000..78b888b --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/account/login.html @@ -0,0 +1,86 @@ +{% extends "account/base.html" %} +{% load static crispy_forms_tags %} + +{% block title %}Log In{% endblock title %} + +{% block body_attr %} + class="authentication-bg position-relative" +{% endblock %} + +{% block page_content %} + {% include "partials/background.html" %} + + + + +
    + + © Jidox - Coderthemes.com + +
    +{% endblock %} + +{% block extra_js %} + +{% endblock %} diff --git a/pxy_dashboard/templates/pxy_dashboard/account/logout.html b/pxy_dashboard/templates/pxy_dashboard/account/logout.html new file mode 100644 index 0000000..c8cc94b --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/account/logout.html @@ -0,0 +1,22 @@ +{% extends "account/base.html" %} + +{% load i18n %} + +{% block title %}{% trans "Sign Out" %}{% endblock %} + +{% block page_content %} +
    + +

    {% trans "Sign Out" %}

    + +

    {% trans 'Are you sure you want to sign out?' %}

    + +
    + {% csrf_token %} + {% if redirect_field_value %} + + {% endif %} + +
    +
    +{% endblock %} diff --git a/pxy_dashboard/templates/pxy_dashboard/account/password_change.html b/pxy_dashboard/templates/pxy_dashboard/account/password_change.html new file mode 100644 index 0000000..f5ced34 --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/account/password_change.html @@ -0,0 +1,18 @@ +{% extends "account/base.html" %} + +{% load i18n %} +{% load crispy_forms_tags %} + +{% block title %}{% trans "Change Password" %}{% endblock %} + +{% block page_content %} +
    +

    {% trans "Change Password" %}

    + +
    + {% csrf_token %} + {{ form|crispy }} + +
    +
    +{% endblock %} diff --git a/pxy_dashboard/templates/pxy_dashboard/account/password_reset.html b/pxy_dashboard/templates/pxy_dashboard/account/password_reset.html new file mode 100644 index 0000000..4e8bcaa --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/account/password_reset.html @@ -0,0 +1,76 @@ +{% extends "account/base.html" %} +{% load static i18n crispy_forms_tags %} + +{% block title %}{% trans "Recover Password" %}{% endblock title %} + +{% block body_attr %} + class="authentication-bg" +{% endblock %} + +{% block page_content %} + {% include "partials/background.html" %} + + + + +
    + © Jidox - Coderthemes.com +
    + +{% endblock %} \ No newline at end of file diff --git a/pxy_dashboard/templates/pxy_dashboard/account/password_reset_done.html b/pxy_dashboard/templates/pxy_dashboard/account/password_reset_done.html new file mode 100644 index 0000000..0a618d7 --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/account/password_reset_done.html @@ -0,0 +1,67 @@ +{% extends "account/base.html" %} +{% load static i18n crispy_forms_tags %} + +{% block title %}{% trans "Password Reset" %}{% endblock title %} + +{% block body_attr %} + class="authentication-bg" +{% endblock %} + +{% block page_content %} + {% include "partials/background.html" %} + + + +
    + 2018 - 2021 © Hyper - Coderthemes.com +
    + +{% endblock %} \ No newline at end of file diff --git a/pxy_dashboard/templates/pxy_dashboard/account/password_reset_from_key.html b/pxy_dashboard/templates/pxy_dashboard/account/password_reset_from_key.html new file mode 100644 index 0000000..7871d59 --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/account/password_reset_from_key.html @@ -0,0 +1,70 @@ +{% extends "account/base.html" %} +{% load static i18n crispy_forms_tags %} + +{% block title %}{% trans "Change Password" %}{% endblock title %} + +{% block body_attr %} + class="loading authentication-bg" +{% endblock %} + +{% block page_content %} + {% include "partials/background.html" %} + + + +
    + 2018 - 2021 © Hyper - Coderthemes.com +
    +{% endblock %} \ No newline at end of file diff --git a/pxy_dashboard/templates/pxy_dashboard/account/password_reset_from_key_done.html b/pxy_dashboard/templates/pxy_dashboard/account/password_reset_from_key_done.html new file mode 100644 index 0000000..b8c8d3d --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/account/password_reset_from_key_done.html @@ -0,0 +1,70 @@ +{% extends "account/base.html" %} +{% load static i18n crispy_forms_tags %} + +{% block title %}{% trans "Change Password" %}{% endblock title %} + +{% block body_attr %} +class="loading authentication-bg" +{% endblock %} + +{% block page_content %} + {% include "partials/background.html" %} + + + +
    + 2018 - 2021 © Hyper - Coderthemes.com +
    + +{% endblock %} \ No newline at end of file diff --git a/pxy_dashboard/templates/pxy_dashboard/account/password_set.html b/pxy_dashboard/templates/pxy_dashboard/account/password_set.html new file mode 100644 index 0000000..0e9f705 --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/account/password_set.html @@ -0,0 +1,19 @@ +{% extends "account/base.html" %} + +{% load i18n %} +{% load crispy_forms_tags %} + +{% block title %}{% trans "Set Password" %}{% endblock %} + +{% block page_content %} +
    + +

    {% trans "Set Password" %}

    + +
    + {% csrf_token %} + {{ form|crispy }} + +
    +
    +{% endblock %} diff --git a/pxy_dashboard/templates/pxy_dashboard/account/signup.html b/pxy_dashboard/templates/pxy_dashboard/account/signup.html new file mode 100644 index 0000000..2caee5a --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/account/signup.html @@ -0,0 +1,78 @@ +{% extends "account/base.html" %} +{% load static i18n crispy_forms_tags %} + +{% block title %}{% trans "Register" %}{% endblock title %} + +{% block body_attr %} +class="authentication-bg position-relative" +{% endblock %} + +{% block page_content %} +
    + + + + + + + + + +
    + + + + +
    + 2018 - 2021 © Hyper - Coderthemes.com +
    + +{% endblock %} \ No newline at end of file diff --git a/pxy_dashboard/templates/pxy_dashboard/account/signup_closed.html b/pxy_dashboard/templates/pxy_dashboard/account/signup_closed.html new file mode 100644 index 0000000..180e935 --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/account/signup_closed.html @@ -0,0 +1,13 @@ +{% extends "account/base.html" %} + +{% load i18n %} + +{% block title %}{% trans "Sign Up Closed" %}{% endblock %} + +{% block page_content %} +
    +

    {% trans "Sign Up Closed" %}

    + +

    {% trans "We are sorry, but the sign up is currently closed." %}

    +
    +{% endblock %} diff --git a/pxy_dashboard/templates/pxy_dashboard/account/verification_sent.html b/pxy_dashboard/templates/pxy_dashboard/account/verification_sent.html new file mode 100644 index 0000000..ec2a070 --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/account/verification_sent.html @@ -0,0 +1,15 @@ +{% extends "account/base.html" %} + +{% load i18n %} + +{% block title %}{% trans "Verify Your E-mail Address" %}{% endblock %} + +{% block page_content %} +
    +

    {% trans "Verify Your E-mail Address" %}

    + +

    {% blocktrans %}We have sent an e-mail to you for verification. Follow the link provided to finalize the + signup process. Please contact us if you do not receive it within a few minutes.{% endblocktrans %}

    +
    + +{% endblock %} diff --git a/pxy_dashboard/templates/pxy_dashboard/account/verified_email_required.html b/pxy_dashboard/templates/pxy_dashboard/account/verified_email_required.html new file mode 100644 index 0000000..36cac97 --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/account/verified_email_required.html @@ -0,0 +1,26 @@ +{% extends "account/base.html" %} + +{% load i18n %} + +{% block title %}{% trans "Verify Your E-mail Address" %}{% endblock %} + +{% block page_content %} +
    + +

    {% trans "Verify Your E-mail Address" %}

    + + + {% url 'account_email' as email_url %} + +

    {% blocktrans %}This part of the site requires us to verify that + you are who you claim to be. For this purpose, we require that you + verify ownership of your e-mail address. {% endblocktrans %}

    + +

    {% blocktrans %}We have sent an e-mail to you for + verification. Please click on the link inside this e-mail. Please + contact us if you do not receive it within a few minutes.{% endblocktrans %}

    + +

    {% blocktrans %}Note: you can still change your e-mail address + .{% endblocktrans %}

    +
    +{% endblock %} diff --git a/pxy_dashboard/templates/pxy_dashboard/apps/__init__.py b/pxy_dashboard/templates/pxy_dashboard/apps/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/pxy_dashboard/templates/pxy_dashboard/apps/apps-calendar.html b/pxy_dashboard/templates/pxy_dashboard/apps/apps-calendar.html new file mode 100644 index 0000000..108536f --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/apps/apps-calendar.html @@ -0,0 +1,134 @@ +{% extends "partials/base.html" %} +{% load static %} + +{% block title %}Calendar{% endblock title %} + +{% block extra_css %} + + + + +{% endblock extra_css %} + + +{% block pagetitle %} +{% include "partials/page-title.html" with pagetitle="Apps" title="Calendar" %} +{% endblock pagetitle %} + +{% block content %} + +
    +
    + +
    +
    +
    +
    +
    + +
    +
    +

    Drag and drop your event or click in the calendar

    +
    New Theme Release
    +
    My Event
    +
    Meet manager
    +
    Create New theme
    +
    + +
    +
    How It Works ?
    + +
      +
    • + It has survived not only five centuries, but also the leap into electronic typesetting, remaining essentially unchanged. +
    • +
    • + Richard McClintock, a Latin professor at Hampden-Sydney College in Virginia, looked up one of the more obscure Latin words, consectetur, from a Lorem Ipsum passage. +
    • +
    • + It has survived not only five centuries, but also the leap into electronic typesetting, remaining essentially unchanged. +
    • +
    +
    + +
    + +
    +
    +
    +
    +
    + +
    +
    +
    + + + + +
    + +
    + +{% endblock content %} + +{% block extra_js %} + + + + + + + + + + + +{% endblock extra_js %} diff --git a/pxy_dashboard/templates/pxy_dashboard/apps/apps-chat.html b/pxy_dashboard/templates/pxy_dashboard/apps/apps-chat.html new file mode 100644 index 0000000..f39cb72 --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/apps/apps-chat.html @@ -0,0 +1,514 @@ +{% extends "partials/base.html" %} +{% load static %} + +{% block title %}Chat{% endblock title %} + +{% block extra_css %} +{% endblock extra_css %} + + +{% block pagetitle %} +{% include "partials/page-title.html" with pagetitle="Apps" title=" Chat" %} +{% endblock pagetitle %} + +{% block content %} +
    + + + + + +
    + +
    +
    +
    +
    +
    + Brandon Smith +
    +
    + James Zavel +
    +

    + Offline +

    +
    +
    +
    + +
    +
    +
    +
      +
    • +
      + James Z + 10:00 +
      +
      +
      + James Z +

      + Hello! +

      +
      +
      + +
    • +
    • +
      + Geneva M + 10:01 +
      +
      +
      + Geneva M +

      + Hi, How are you? What about our next meeting? +

      +
      +
      + +
    • +
    • +
      + James Z + 10:01 +
      +
      +
      + James Z +

      + Yeah everything is fine +

      +
      +
      + +
    • +
    • +
      + Geneva M + 10:02 +
      +
      +
      + Geneva M +

      + Wow that's great +

      +
      +
      + +
    • +
    • +
      + James Z + 10:02 +
      +
      +
      + James Z +

      + Let's have it today if you are free +

      +
      +
      + +
    • +
    • +
      + Geneva M + 10:03 +
      +
      +
      + Geneva M +

      + Sure thing! let me know if 2pm works for you +

      +
      +
      + +
    • +
    • +
      + James Z + 10:04 +
      +
      +
      + James Z +

      + Sorry, I have another meeting scheduled at 2pm. Can we have it at 3pm instead? +

      +
      +
      + +
    • +
    • +
      + James Z + 10:04 +
      +
      +
      + James Z +

      + We can also discuss about the presentation talk format if you have some extra mins +

      +
      +
      + +
    • +
    • +
      + Geneva M + 10:05 +
      +
      +
      + Geneva M +

      + 3pm it is. Sure, let's discuss about presentation format, it would be great to finalize today. I am attaching the last year format and assets here... +

      +
      +
      +
      +
      +
      +
      + + .ZIP + +
      +
      +
      + Attex-sketch.zip +

      2.3 MB

      +
      +
      + + + + +
      +
      +
      +
      +
      + +
    • +
    + +
    +
    +
    +
    +
    +
    + +
    + Please enter your messsage +
    +
    +
    +
    + + +
    +
    + +
    + +
    +
    +
    + +
    + +
    + +
    +
    + + +
    + + +{% endblock content %} + +{% block extra_js %} + + + + +{% endblock extra_js %} + diff --git a/pxy_dashboard/templates/pxy_dashboard/apps/apps-email-inbox.html b/pxy_dashboard/templates/pxy_dashboard/apps/apps-email-inbox.html new file mode 100644 index 0000000..3880158 --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/apps/apps-email-inbox.html @@ -0,0 +1,883 @@ +{% extends "partials/base.html" %} +{% load static %} + +{% block title %}Inbox{% endblock title %} + +{% block extra_css %} + + + + + + +{% endblock extra_css %} + + +{% block pagetitle %} +{% include "partials/page-title.html" with pagetitle="Email" title="Inbox" %} +{% endblock pagetitle %} + +{% block content %} + +
    + + +
    +
    +
    + +
    +
    + +
    + + + +
    +
    Labels
    + +
    + +
    +

    FREE

    +
    Storage
    +
    +
    +
    +

    7.02 GB (46%) of 15 GB used

    +
    + +
    + + +
    + +
    + + + +
    +
    + + +
    +
    + + +
    + +
    + + +
    + +
    + +
    + + +
    +
    + Showing 1 - 20 of 289 +
    +
    +
    + + +
    +
    +
    + +
    + +
    + +
    +
    + +
    +
    + + + + + +{% endblock content %} + +{% block extra_js %} + + + + + + + + + + +{% endblock extra_js %} + diff --git a/pxy_dashboard/templates/pxy_dashboard/apps/apps-email-read.html b/pxy_dashboard/templates/pxy_dashboard/apps/apps-email-read.html new file mode 100644 index 0000000..4fd0359 --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/apps/apps-email-read.html @@ -0,0 +1,297 @@ +{% extends "partials/base.html" %} +{% load static %} + +{% block title %}Email Read{% endblock title %} + +{% block extra_css %} + + + + + +{% endblock extra_css %} + + +{% block pagetitle %} +{% include "partials/page-title.html" with pagetitle="Email" title="Email Read" %} +{% endblock pagetitle %} + +{% block content %} +
    + + +
    +
    +
    + +
    + +
    + +
    + + + +
    +
    Labels
    + +
    + +
    +

    FREE

    +
    Storage
    +
    +
    +
    +

    7.02 GB (46%) of 15 GB used

    +
    + +
    + + +
    + +
    + + + +
    +
    + + +
    +
    + + +
    + +
    + + +
    + +
    +
    Your elite author Graphic Optimization reward is ready!
    + +
    + +
    + placeholder image +
    + April 24, 2023, 10:59 PM +
    Steven Smith
    + From: jonathan@domain.com +
    +
    + +

    Hi Coderthemes!

    +

    Clicking ‘Order Service’ on the right-hand side of the above page will present you with an order page. This service has the following Briefing Guidelines that will need to be filled before placing your order:

    +
      +
    1. Your design preferences (Color, style, shapes, Fonts, others)
    2. +
    3. Tell me, why is your item different?
    4. +
    5. Do you want to bring up a specific feature of your item? If yes, please tell me
    6. +
    7. Do you have any preference or specific thing you would like to change or improve on your item page?
    8. +
    9. Do you want to include your item's or your provider's logo on the page? if yes, please send it to me in vector format (Ai or EPS)
    10. +
    11. Please provide me with the copy or text to display
    12. +
    + +

    Filling in this form with the above information will ensure that they will be able to start work quickly.

    +

    You can complete your order by putting your coupon code into the Promotional code box and clicking ‘Apply Coupon’.

    +

    Best,
    Graphic Studio

    +
    + +
    Attachments
    + +
    +
    +
    +
    +
    +
    +
    + + .ZIP + +
    +
    +
    + Attex-admin-design.zip +

    2.3 MB

    +
    +
    + + + + +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    + file-image +
    +
    + Dashboard-design.jpg +

    3.25 MB

    +
    +
    + + + + +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    + + .MP4 + +
    +
    +
    + Admin-bug-report.mp4 +

    7.05 MB

    +
    +
    + + + + +
    +
    +
    +
    +
    +
    + + + + +
    + + +
    + +
    + +
    +
    + +
    +
    + + + + + + + +{% endblock content %} + +{% block extra_js %} + + + + + + + + + + +{% endblock extra_js %} + diff --git a/pxy_dashboard/templates/pxy_dashboard/apps/apps-file-manager.html b/pxy_dashboard/templates/pxy_dashboard/apps/apps-file-manager.html new file mode 100644 index 0000000..2ccf036 --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/apps/apps-file-manager.html @@ -0,0 +1,467 @@ +{% extends "partials/base.html" %} +{% load static %} + +{% block title %}File Manager{% endblock title %} + + + +{% block pagetitle %} +{% include "partials/page-title.html" with pagetitle="Apps" title="File Manager" %} +{% endblock pagetitle %} + +{% block content %} +
    + + +
    +
    +
    + +
    + +
    + + +
    + + +
    +

    FREE

    +
    Storage
    +
    +
    +
    +

    7.02 GB (46%) of 15 GB used

    +
    + +
    + + +
    + +
    + +
    + + +
    +
    + +
    +
    Quick Access
    + +
    +
    +
    +
    +
    +
    +
    + + + +
    +
    +
    + Attex-sketch.zip +

    2.3 MB

    +
    +
    +
    +
    +
    + +
    +
    +
    +
    +
    +
    + + + +
    +
    +
    + Compile Version +

    87.2 MB

    +
    +
    +
    +
    +
    + +
    +
    +
    +
    +
    +
    + + + +
    +
    +
    + admin.zip +

    45.1 MB

    +
    +
    +
    +
    +
    + +
    +
    +
    +
    +
    +
    + + + +
    +
    +
    + Docs.pdf +

    7.5 MB

    +
    +
    +
    +
    +
    + +
    +
    +
    +
    +
    +
    + + + +
    +
    +
    + License-details.pdf +

    784 KB

    +
    +
    +
    +
    +
    + +
    +
    +
    +
    +
    +
    + + + +
    +
    +
    + Purchase Verification +

    2.2 MB

    +
    +
    +
    +
    +
    + +
    +
    +
    +
    +
    +
    + + + +
    +
    +
    + Attex Integrations +

    874 MB

    +
    +
    +
    +
    +
    +
    +
    + + +
    +
    Recent
    + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    NameLast ModifiedSizeOwnerMembersAction
    + App Design & Development + +

    Jan 03, 2023

    + by Andrew +
    128 MB + Danielle Thompson + + + + +
    + Attex-sketch-design.zip + +

    Feb 13, 2023

    + by Coderthemes +
    521 MB + Coder Themes + +
    + + friend + + + + friend + + + + friend + +
    +
    + +
    + Annualreport.pdf + +

    Dec 18, 2022

    + by Alejandro +
    7.2 MB + Gary Coley + +
    + + friend + + + + friend + + + + friend + +
    +
    + +
    + Wireframes + +

    Nov 25, 2022

    + by Dunkle +
    54.2 MB + Jasper Rigg + + + + +
    + Documentation.docs + +

    Feb 9, 2023

    + by Justin +
    8.3 MB + Cooper Sharwood + +
    + + friend + + + + friend + +
    +
    + +
    +
    + +
    + +
    + +
    + +
    +
    + +
    +
    + + +{% endblock content %} + +{% block extra_js %} + + + + +{% endblock extra_js %} + diff --git a/pxy_dashboard/templates/pxy_dashboard/apps/apps-kanban.html b/pxy_dashboard/templates/pxy_dashboard/apps/apps-kanban.html new file mode 100644 index 0000000..1220b2c --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/apps/apps-kanban.html @@ -0,0 +1,1002 @@ +{% extends "partials/base.html" %} +{% load static %} + +{% block title %}Kanban Board{% endblock title %} + +{% block extra_css %} +{% endblock extra_css %} + + +{% block pagetitle %} +
    +
    +
    +

    Kanban Board Add New

    + +
    +
    +
    +{% endblock pagetitle %} + +{% block content %} + +
    +
    +
    +
    +
    TODO (3)
    + +
    + + +
    +
    + High + 18 Jul 2023 + +
    + iOS App home page +
    + +

    + + + iOS + + + + 74 Comments + +

    + + + + +
    +
    + + + +
    +
    + Medium + 15 Dec 2023 + +
    + Topnav layout design +
    + +

    + + + Jidox + + + + 28 Comments + +

    + + + + +
    +
    + + + +
    +
    + Low + 11 Jul 2023 + +
    + Invite user to a project +
    + +

    + + + CRM + + + + 68 Comments + +

    + + + + +
    +
    + + +
    +
    + +
    +
    In Progress (2)
    + +
    + + +
    +
    + Medium + 22 Jun 2023 + +
    + Write a release note +
    + +

    + + + Jidox + + + + 17 Comments + +

    + + + + +
    +
    + + + +
    +
    + Low + 19 Jun 2023 + +
    + Enable analytics tracking +
    + +

    + + + CRM + + + + 48 Comments + +

    + + + + +
    +
    + + +
    +
    + + +
    +
    Review (4)
    +
    + + +
    +
    + High + 2 May 2023 + +
    + Kanban board design +
    + +

    + + + CRM + + + + 65 Comments + +

    + + + + +
    +
    + + + +
    +
    + Medium + 7 May 2023 + +
    + Code HTML email template +
    + +

    + + + CRM + + + + 106 Comments + +

    + + + + +
    +
    + + + +
    +
    + Medium + 8 Jul 2023 + +
    + Brand logo design +
    + +

    + + + Design + + + + 95 Comments + +

    + + + + +
    +
    + + + +
    +
    + High + 22 Jul 2023 + +
    + Improve animation loader +
    + +

    + + + CRM + + + + 39 Comments + +

    + + + + +
    +
    + + +
    +
    + +
    +
    Done (1)
    +
    + + +
    +
    + Low + 16 Jul 2023 + +
    + Dashboard design +
    + +

    + + + Jidox + + + + 287 Comments + +

    + + + + +
    +
    + + +
    +
    + +
    +
    +
    + + +
    + +
    + +@@include('./partials/footer.html') + +
    + + + + + +
    + + + + +@@include('./partials/right-sidebar.html') + + + + + + + + +{% endblock content %} + +{% block extra_js %} + + + + + + + + + + +{% endblock extra_js %} + diff --git a/pxy_dashboard/templates/pxy_dashboard/apps/apps-tasks-details.html b/pxy_dashboard/templates/pxy_dashboard/apps/apps-tasks-details.html new file mode 100644 index 0000000..2dd2a56 --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/apps/apps-tasks-details.html @@ -0,0 +1,372 @@ +{% extends "partials/base.html" %} +{% load static %} + +{% block title %}Task Detail{% endblock title %} + + + +{% block pagetitle %} +{% include "partials/page-title.html" with pagetitle="Task" title="Task Detail" %} +{% endblock pagetitle %} + +{% block content %} +
    +
    + +
    +
    + + + +
    + + +
    + +
    + +

    Simple Admin Dashboard Template Design

    + +
    +
    + +

    Assigned To

    +
    + Arya S +
    +
    + Jonathan Andrews +
    +
    +
    + +
    + + +
    + +

    Project Name

    +
    + +
    +
    + Examron Envirenment +
    +
    +
    + +
    + +
    + +

    Due Date

    +
    + +
    +
    + Today 10am +
    +
    +
    + +
    + +
    + + +
    Overview:
    + +

    + This is a wider card with supporting text below as a natural lead-in to additional content. This content is a little bit longer. Some quick example text to build on the card title and make up the bulk of the card's + content. Some quick example text to build on the card title and make up. +

    + + +
    Checklists/Sub-tasks
    +
    + + +
    + +
    + + +
    + +
    + + +
    + +
    + +
    + + +
    +
    +
    + +
    + + +

    Comments (51)

    + +
    + +
    + Generic placeholder image +
    +
    Jeremy Tomlinson 5 hours ago
    + Nice work, makes me think of The Money Pit. + +
    + Reply + +
    + + Generic placeholder image + +
    +
    Thelma Fridley 3 hours ago
    + i'm in the middle of a timelapse animation myself! (Very different though.) Awesome stuff. + +
    + Reply +
    +
    +
    +
    + +
    + Generic placeholder image +
    +
    Kevin Martinez 1 day ago
    + It would be very nice to have. + +
    + Reply +
    +
    + + + +
    +
    + +
    +
    + + +
    + +
    +
    +
    + +
    + +
    + +
    + + +
    +
    +
    + + + +
    Attachments
    + +
    +
    + +
    + +
    + +

    Drop files here or click to upload.

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

    +
    +
    + + + + +
    +
    +
    +
    +
    + + +
    +
    +
    +
    +
    + + ZIP + +
    +
    + +
    + + + + +
    +
    +
    +
    + +
    +
    +
    +
    +
    + + JPG + +
    +
    +
    + Dashboard-design.jpg +

    3.25 MB

    +
    +
    + + + + +
    +
    +
    +
    + +
    +
    +
    +
    +
    + + .MP4 + +
    +
    +
    + Admin-bug-report.mp4 +

    7.05 MB

    +
    +
    + + + + +
    +
    +
    +
    +
    +
    +
    +
    + +{% endblock content %} + +{% block extra_js %} + + + + + + + + + +{% endblock extra_js %} + diff --git a/pxy_dashboard/templates/pxy_dashboard/apps/apps-tasks.html b/pxy_dashboard/templates/pxy_dashboard/apps/apps-tasks.html new file mode 100644 index 0000000..6898fce --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/apps/apps-tasks.html @@ -0,0 +1,676 @@ +{% extends "partials/base.html" %} +{% load static %} + +{% block title %}Tasks{% endblock title %} + +{% block extra_css %} + + + + + + +{% endblock extra_css %} + +{% block content %} + +
    +
    +
    +

    Tasks

    + +
    + + +
    +
    + +
    + +
    +
    +
    + +
    +
    +
    + + +
    +
    +
    +
    +
    + image +
    +
    +
      +
    • + Today 10am +
    • +
    • + 3/7 +
    • +
    • + 21 +
    • +
    • + High +
    • +
    +
    +
    +
    +
    + + + +
    +
    +
    + + +
    +
    +
    +
    +
    + image +
    +
    +
      +
    • + Today 4pm +
    • +
    • + 2/7 +
    • +
    • + 48 +
    • +
    • + High +
    • +
    +
    +
    +
    +
    + + + +
    +
    +
    + + +
    +
    +
    +
    +
    + image +
    +
    +
      +
    • + Today 6pm +
    • +
    • + 18/21 +
    • +
    • + 73 +
    • +
    • + Medium +
    • +
    +
    +
    +
    +
    + +
    +
    +
    +
    + + +
    + +
    + +
    + +
    +
    +
    + +
    +
    +
    + + +
    +
    +
    +
    +
    + image +
    +
    +
      +
    • + Tomorrow 7am +
    • +
    • + 1/12 +
    • +
    • + 36 +
    • +
    • + High +
    • +
    +
    +
    +
    +
    + + + +
    +
    +
    + + +
    +
    +
    +
    +
    + image +
    +
    +
      +
    • + 27 Aug 10am +
    • +
    • + 13/72 +
    • +
    • + 211 +
    • +
    • + Low +
    • +
    +
    +
    +
    +
    + + + +
    +
    +
    + + +
    +
    +
    +
    +
    + image +
    +
    +
      +
    • + No Due Date +
    • +
    • + 0/7 +
    • +
    • + 0 +
    • +
    • + Medium +
    • +
    +
    +
    +
    +
    + +
    +
    +
    +
    + + + +
    +
    + +
    + +
    +
    +
    + +
    +
    +
    + + +
    +
    +
    +
    +
    + image +
    +
    +
      +
    • + Today 10am +
    • +
    • + 5/14 +
    • +
    • + 71 +
    • +
    • + Medium +
    • +
    +
    +
    +
    +
    + + + +
    +
    +
    + + +
    +
    +
    +
    +
    + image +
    +
    +
      +
    • + No Due Date +
    • +
    • + 0/8 +
    • +
    • + 0 +
    • +
    • + Medium +
    • +
    +
    +
    +
    +
    + + + +
    +
    +
    + + +
    +
    +
    +
    +
    + image +
    +
    +
      +
    • + 10 Sep 3pm +
    • +
    • + 0/58 +
    • +
    • + 9 +
    • +
    • + Low +
    • +
    +
    +
    +
    +
    + +
    +
    +
    +
    +
    + + +
    +
    +
    + + +
    + + +
    + +
    + +
    +
    + +

    Draft the new contract document for sales team

    + +
    +
    + +

    Assigned To

    +
    + Arya S +
    +
    + Arya Stark +
    +
    +
    + +
    + +
    + +

    Due Date

    +
    + +
    +
    + Today 10am +
    +
    +
    + +
    +
    + + +
    +
    +
    +
    +

    This is an simple editable area.

    +


    +
      +
    • + Select a text to reveal the toolbar. +
    • +
    • + Edit rich document on-the-fly, so elastic! +
    • +
    +


    +

    + End of simple area +

    +
    +
    +
    +
    + + + +
    Checklists/Sub-tasks
    +
    + + +
    + +
    + + +
    + +
    + + +
    + + + +
    Attachments
    +
    +
    +
    +
    +
    + + ZIP + +
    +
    +
    + sales-assets.zip +

    2.3 MB

    +
    +
    + + + + + + + +
    +
    +
    +
    +
    +
    +
    +
    +
    + + DOC + +
    +
    +
    + new-contarcts.docx +

    1.25 MB

    +
    +
    + + + + + + + +
    +
    +
    +
    + + + +
    +
    +
    Comments
    + +
    + Arya Stark +
    +
    + 4:30am + Arya Stark +
    +

    + Should I review the last 3 years legal documents as well? +

    +
    +
    + +
    + +
    + Dominc B +
    +
    + 3:30am + Gary Somya +
    +

    + @Arya FYI..I have created some general guidelines last year. +

    +
    +
    + +
    + +
    +
    + +
    +
    +
    +
    + +
    +
    + +
    +
    + + +
    +
    +
    +
    +
    +
    + +
    +
    +
    +
    +
    +
    + +{% endblock content %} + +{% block extra_js %} + + + + + + + + + + +{% endblock extra_js %} + diff --git a/pxy_dashboard/templates/pxy_dashboard/components/__init__.py b/pxy_dashboard/templates/pxy_dashboard/components/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/pxy_dashboard/templates/pxy_dashboard/components/base-ui/__init__.py b/pxy_dashboard/templates/pxy_dashboard/components/base-ui/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/pxy_dashboard/templates/pxy_dashboard/components/base-ui/accordions.html b/pxy_dashboard/templates/pxy_dashboard/components/base-ui/accordions.html new file mode 100644 index 0000000..deabfbf --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/components/base-ui/accordions.html @@ -0,0 +1,371 @@ +{% extends "partials/base.html" %} +{% load static %} + +{% block title %}Accordions{% endblock title %} + +{% block extra_css %} +{% endblock extra_css %} + + +{% block pagetitle %} +{% include "partials/page-title.html" with pagetitle="Base UI" title="Accordions" %} +{% endblock pagetitle %} + +{% block content %} +
    +
    +
    +
    +

    Default Accordions

    +

    Click the accordions below to expand/collapse the accordion content. +

    + + +
    +
    +

    + +

    +
    +
    + This is the first item's accordion body. It is shown by default, until + the collapse + plugin adds the appropriate classes that we use to style each element. These classes + control the overall + appearance, as well as the showing and hiding via CSS transitions. You can modify any of + this with + custom CSS or overriding our default variables. It's also worth noting that just about + any HTML can go + within the .accordion-body, though the transition does limit overflow. +
    +
    +
    +
    +

    + +

    +
    +
    + This is the second item's accordion body. It is hidden by default, + until the collapse + plugin adds the appropriate classes that we use to style each element. These classes + control the overall + appearance, as well as the showing and hiding via CSS transitions. You can modify any of + this with + custom CSS or overriding our default variables. It's also worth noting that just about + any HTML can go + within the .accordion-body, though the transition does limit overflow. +
    +
    +
    +
    +

    + +

    +
    +
    + This is the third item's accordion body. It is hidden by default, until + the collapse + plugin adds the appropriate classes that we use to style each element. These classes + control the overall + appearance, as well as the showing and hiding via CSS transitions. You can modify any of + this with + custom CSS or overriding our default variables. It's also worth noting that just about + any HTML can go + within the .accordion-body, though the transition does limit overflow. +
    +
    +
    +
    + +
    +
    +
    + +
    +
    +
    +

    Flush Accordions

    +

    Add .accordion-flush to remove the default + background-color, some borders, and some rounded corners to render accordions + edge-to-edge with their parent container.

    + +
    +
    +

    + +

    +
    +
    Placeholder content for this accordion, which is intended to + demonstrate the + .accordion-flush class. This is the first item's accordion body. +
    +
    +
    +
    +

    + +

    +
    +
    Placeholder content for this accordion, which is intended to + demonstrate the + .accordion-flush class. This is the second item's accordion body. Let's + imagine this being + filled with some actual content. +
    +
    +
    +
    +

    + +

    +
    +
    Placeholder content for this accordion, which is intended to + demonstrate the + .accordion-flush class. This is the third item's accordion body. Nothing + more exciting + happening here in terms of content, but just filling up the space to make it look, at + least at first + glance, a bit more representative of how this would look in a real-world application. +
    +
    +
    +
    + +
    +
    +
    + +
    + + +
    +
    +
    +
    +

    Simple Card Accordions

    +

    + Using the card component, you can + extend the default collapse behavior to create an accordion. To properly achieve + the accordion style, be sure to use .accordion as a wrapper. +

    + +
    +
    + + +
    +
    + Anim pariatur cliche reprehenderit, enim eiusmod high life + accusamus terry richardson ad squid. 3 wolf moon officia + aute, non cupidatat skateboard dolor brunch. Food truck + quinoa nesciunt laborum eiusmod. Brunch 3 wolf moon tempor, + sunt aliqua put a bird on it squid single-origin coffee + nulla assumenda shoreditch et. Nihil anim keffiyeh + helvetica, craft beer labore wes anderson cred nesciunt + sapiente ea proident. Ad vegan excepteur butcher vice lomo. + Leggings occaecat craft beer farm-to-table, raw denim + aesthetic synth nesciunt you probably haven't heard of them + accusamus labore sustainable VHS. +
    +
    +
    +
    + +
    +
    + Anim pariatur cliche reprehenderit, enim eiusmod high life + accusamus terry richardson ad squid. 3 wolf moon officia + aute, non cupidatat skateboard dolor brunch. Food truck + quinoa nesciunt laborum eiusmod. Brunch 3 wolf moon tempor, + sunt aliqua put a bird on it squid single-origin coffee + nulla assumenda shoreditch et. Nihil anim keffiyeh + helvetica, craft beer labore wes anderson cred nesciunt + sapiente ea proident. Ad vegan excepteur butcher vice lomo. + Leggings occaecat craft beer farm-to-table, raw denim + aesthetic synth nesciunt you probably haven't heard of them + accusamus labore sustainable VHS. +
    +
    +
    +
    + +
    +
    + Anim pariatur cliche reprehenderit, enim eiusmod high life + accusamus terry richardson ad squid. 3 wolf moon officia + aute, non cupidatat skateboard dolor brunch. Food truck + quinoa nesciunt laborum eiusmod. Brunch 3 wolf moon tempor, + sunt aliqua put a bird on it squid single-origin coffee + nulla assumenda shoreditch et. Nihil anim keffiyeh + helvetica, craft beer labore wes anderson cred nesciunt + sapiente ea proident. Ad vegan excepteur butcher vice lomo. + Leggings occaecat craft beer farm-to-table, raw denim + aesthetic synth nesciunt you probably haven't heard of them + accusamus labore sustainable VHS. +
    +
    +
    +
    + +
    +
    +
    + +
    +
    +
    +

    Always Open Accordions

    +

    Omit the data-bs-parent attribute on each + .accordion-collapse to make accordion items stay open when another item is opened.

    + +
    +
    +

    + +

    +
    +
    + This is the first item's accordion body. It is shown by default, until + the collapse + plugin adds the appropriate classes that we use to style each element. These classes + control the + overall appearance, as well as the showing and hiding via CSS transitions. You can + modify any of + this with custom CSS or overriding our default variables. It's also worth noting that + just about any + HTML can go within the .accordion-body, though the transition does limit + overflow. +
    +
    +
    +
    +

    + +

    +
    +
    + This is the second item's accordion body. It is hidden by default, + until the + collapse plugin adds the appropriate classes that we use to style each element. These + classes + control the overall appearance, as well as the showing and hiding via CSS transitions. + You can + modify any of this with custom CSS or overriding our default variables. It's also worth + noting that + just about any HTML can go within the .accordion-body, though the + transition does limit + overflow. +
    +
    +
    +
    +

    + +

    +
    +
    + This is the third item's accordion body. It is hidden by default, until + the + collapse plugin adds the appropriate classes that we use to style each element. These + classes + control the overall appearance, as well as the showing and hiding via CSS transitions. + You can + modify any of this with custom CSS or overriding our default variables. It's also worth + noting that + just about any HTML can go within the .accordion-body, though the + transition does limit + overflow. +
    +
    +
    +
    + +
    +
    +
    + +
    + + + + +{% endblock content %} + +{% block extra_js %} + + + + + + + + + +{% endblock extra_js %} \ No newline at end of file diff --git a/pxy_dashboard/templates/pxy_dashboard/components/base-ui/alerts.html b/pxy_dashboard/templates/pxy_dashboard/components/base-ui/alerts.html new file mode 100644 index 0000000..b51089a --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/components/base-ui/alerts.html @@ -0,0 +1,283 @@ +{% extends "partials/base.html" %} +{% load static %} + +{% block title %}Alerts{% endblock title %} + +{% block extra_css %} +{% endblock extra_css %} + + +{% block pagetitle %} +{% include "partials/page-title.html" with pagetitle="Base UI" title="Alerts" %} +{% endblock pagetitle %} + +{% block content %} +
    +
    +
    +
    +

    Default Alert

    +

    + Provide contextual feedback messages for typical user actions with the handful of available and + flexible alert messages. + Alerts are available for any length of text, as well as an optional dismiss + button. +

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

    Dismissing Alerts

    +

    + Add a dismiss button and the .alert-dismissible class, which adds + extra padding to the right of the alert + and positions the .btn-close button. +

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

    Custom Alerts

    +

    + Display alert with transparent background and with contextual text color. Use + classes + .bg-transparent, and .text-*. E.g. bg-transparent + text-primary. +

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

    Link Color

    +

    + Use the .alert-link utility class to quickly provide matching + colored links within any alert. +

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

    Icons with Alerts

    +

    + You can also include additional elements like icons, heading, etc along side the actual message. +

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

    Additional content

    +

    + Alerts can also contain additional HTML elements like headings, paragraphs and + dividers. +

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

    Live Alert

    +

    Click the button below to show an alert (hidden with inline styles to + start), then dismiss (and destroy) it with the built-in close button.

    + +
    +
    + +
    + +
    +
    +
    +
    + +{% endblock content %} + +{% block extra_js %} + + + + +{% endblock extra_js %} \ No newline at end of file diff --git a/pxy_dashboard/templates/pxy_dashboard/components/base-ui/avatars.html b/pxy_dashboard/templates/pxy_dashboard/components/base-ui/avatars.html new file mode 100644 index 0000000..faac272 --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/components/base-ui/avatars.html @@ -0,0 +1,375 @@ +{% extends "partials/base.html" %} +{% load static %} + +{% block title %}Avatars{% endblock title %} + +{% block extra_css %} +{% endblock extra_css %} + + +{% block pagetitle %} +{% include "partials/page-title.html" with pagetitle="Base UI" title="Avatars" %} +{% endblock pagetitle %} + +{% block content %} +
    +
    +
    +
    +

    Sizing - Images

    +

    + Create and group avatars of different sizes and shapes with the css classes. + Using Bootstrap's naming convention, you can control size of avatar including standard avatar, or + scale it up to different sizes. +

    + +
    +
    + image +

    + .avatar-xs +

    + image +

    + .avatar-sm +

    +
    +
    + image +

    + .avatar-md +

    +
    + +
    + image +

    + .avatar-lg +

    +
    + +
    + image +

    + .avatar-xl +

    +
    +
    + +
    +
    +
    +
    +
    +
    +

    Rounded Circle

    +

    + Using an additional class .rounded-circle in <img> element creates + the rounded avatar. +

    + +
    +
    + image +

    + .avatar-md .rounded-circle +

    +
    + +
    + image +

    + .avatar-lg .rounded-circle +

    +
    + +
    + image +

    + .avatar-xl .rounded-circle +

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

    Sizing - Background Color

    +

    + Using utilities classes of background e.g. bg-* allows you to have any background color + as well. +

    + +
    +
    +
    + + xs + +
    +

    + Using .avatar-xs +

    + +
    + + sm + +
    + +

    + Using .avatar-sm +

    +
    +
    +
    + + MD + +
    + +

    + Using .avatar-md +

    +
    + +
    +
    + + LG + +
    + +

    + Using .avatar-lg +

    +
    + +
    +
    + + XL + +
    + +

    + Using .avatar-xl +

    +
    +
    + +
    +
    +
    +
    +
    +
    +

    Rounded Circle Background

    +

    + Using an additional class .rounded-circle in <img> element creates + the rounded avatar. +

    + +
    +
    +
    + + MD + +
    + +

    + Using .avatar-md .rounded-circle +

    +
    + +
    +
    + + LG + +
    + +

    + Using .avatar-lg .rounded-circle +

    +
    + +
    +
    + + XL + +
    + +

    + Using .avatar-xl .rounded-circle +

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

    Images Shapes

    +

    + Avatars with different sizes and shapes. +

    + +
    +
    + image +

    + .rounded +

    +
    + +
    + image +

    + .rounded +

    +
    + +
    + image +

    + .rounded-circle +

    +
    + +
    + image +

    + .img-thumbnail +

    +
    +
    + image +

    + .rounded-circle .img-thumbnail +

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

    Avatar Group

    +

    + Use avatar-group class to show avatar + images with the group. Use avatar-group class with + data-bs-toggle="tooltip" to show avatar group images + with tooltip. +

    +
    +
    +
    +
    +
    + +
    +
    + +
    +
    +
    +
    + A +
    +
    +
    +
    + +
    +
    +
    +
    + + + + +
    + +
    +
    +
    +
    + +{% endblock content %} + + +{% block extra_js %} + + + + +{% endblock extra_js %} \ No newline at end of file diff --git a/pxy_dashboard/templates/pxy_dashboard/components/base-ui/badges.html b/pxy_dashboard/templates/pxy_dashboard/components/base-ui/badges.html new file mode 100644 index 0000000..573277c --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/components/base-ui/badges.html @@ -0,0 +1,179 @@ +{% extends "partials/base.html" %} +{% load static %} + +{% block title %}Badges{% endblock title %} + +{% block extra_css %} +{% endblock extra_css %} + + +{% block pagetitle %} +{% include "partials/page-title.html" with pagetitle="Base UI" title="Badges" %} +{% endblock pagetitle %} + +{% block content %} +
    +
    +
    +
    +

    Default

    +

    + A simple labeling component. Badges scale to match the size of the immediate parent element by using + relative font sizing and em units. +

    + +

    h1.Example heading New

    +

    h2.Example heading New

    +

    h2.Example heading New

    +

    h4.Example heading Info Link

    +
    h5.Example heading New
    +
    h6.Example heading New
    + +
    +
    + +
    +
    +

    Pill Badges

    +

    + Use the .rounded-pill modifier class to make badges more rounded. +

    + + Primary + Secondary + Success + Danger + Warning + Info + Light + Dark + +
    Lighten Badges
    +

    + Use the .bg-*-subtle text-* modifier class to make badges lighten. +

    + + Primary + Secondary + Success + Danger + Warning + Info + Dark + +
    Outline Badges
    +

    + Using the .badge-outline-* to quickly create a bordered badges. +

    + + Primary + Secondary + Success + Danger + Warning + Info + Dark + +
    +
    +
    +
    +
    +
    +

    Contextual variations

    +

    + Add any of the below mentioned modifier classes to change the appearance of a badge. + Badge can be more contextual as well. Just use regular convention e.g. badge-*color, + bg-primary + to have badge with different background. +

    + + Primary + Secondary + Success + Danger + Warning + Info + Light + Dark + +
    Lighten Badges
    +

    + Using the .bg-*-subtle text-* modifier class, you can have more soften variation. +

    + + Primary + Secondary + Success + Danger + Warning + Info + Dark + +
    Outline Badges
    +

    + Using the .badge-outline-* to quickly create a bordered badges. +

    + + Primary + Secondary + Success + Danger + Warning + Info + Dark + +
    +
    + +
    +
    +

    Badge Positioned

    +

    + Use utilities to modify a .badge and position it in the corner of a + link or button. +

    + +
    +
    + +
    +
    + +
    +
    + +
    +
    + +
    +
    + +
    +
    + + + +{% endblock content %} + +{% block extra_js %} + + + + +{% endblock extra_js %} \ No newline at end of file diff --git a/pxy_dashboard/templates/pxy_dashboard/components/base-ui/breadcrumb.html b/pxy_dashboard/templates/pxy_dashboard/components/base-ui/breadcrumb.html new file mode 100644 index 0000000..8f00200 --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/components/base-ui/breadcrumb.html @@ -0,0 +1,96 @@ +{% extends "partials/base.html" %} +{% load static %} + +{% block title %}Breadcrumb{% endblock title %} + +{% block extra_css %} +{% endblock extra_css %} + + +{% block pagetitle %} +{% include "partials/page-title.html" with pagetitle="Base UI" title="Breadcrumb" %} +{% endblock pagetitle %} + +{% block content %} +
    +
    +
    +
    +

    Example

    +

    + Indicate the current page’s location within a navigational hierarchy that automatically adds + separators via CSS. + Please read the official Bootstrap documentation for + more options. +

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

    With Icons

    +

    + Optionally you can also specify the icon with your breadcrumb item. +

    + + + + + + + +
    +
    +
    + +
    + +{% endblock content %} + +{% block extra_js %} + + + + +{% endblock extra_js %} \ No newline at end of file diff --git a/pxy_dashboard/templates/pxy_dashboard/components/base-ui/buttons.html b/pxy_dashboard/templates/pxy_dashboard/components/base-ui/buttons.html new file mode 100644 index 0000000..f36e418 --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/components/base-ui/buttons.html @@ -0,0 +1,386 @@ +{% extends "partials/base.html" %} +{% load static %} + +{% block title %}Buttons{% endblock title %} + +{% block extra_css %} +{% endblock extra_css %} + + +{% block pagetitle %} +{% include "partials/page-title.html" with pagetitle="Base UI" title="Buttons" %} +{% endblock pagetitle %} + +{% block content %} +
    +
    +
    +
    +

    Default Buttons

    +

    Use the button classes on an <a>, + <button>, or <input> element. +

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

    Button Outline

    +

    Use a classes .btn-outline-** to quickly create a bordered + buttons.

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

    Button-Rounded

    +

    Add .rounded-pill to default button to get rounded corners.

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

    Button Outline Rounded

    +

    Use a classes .btn-outline-** to quickly create a bordered + buttons.

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

    Soft Buttons

    +

    Use a classes .btn-soft-** to quickly create a soft background + color buttons.

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

    Soft Rounded Buttons

    +

    Use a classes .btn-soft-** .rounded-pill to + quickly create a soft background color buttons with rounded.

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

    Button-Sizes

    +

    + Add .btn-lg, .btn-sm for additional sizes. +

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

    Button-Disabled

    +

    + Add the disabled attribute to <button> buttons. +

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

    Icon Buttons

    +

    + Icon only button. +

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

    Block Button

    + +

    + Create block level buttons by adding class .d-grid to parent div. +

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

    Button Group

    + +

    + Wrap a series of buttons with .btn in .btn-group. +

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

    Toggle Button

    + +

    Add data-bs-toggle="button" to toggle a button’s + active state. If you’re pre-toggling a button, you must manually add the + .active class and aria-pressed="true" to ensure + that it is conveyed appropriately to assistive technologies. +

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

    Button tags

    + +

    The .btn classes are designed to be used with the + <button> element. However, you can also use these classes on + <a> or <input> elements (though some browsers may + apply a slightly different rendering). +

    + + Link + + + + + +
    +
    +
    +
    +
    + +
    + +{% endblock content %} + +{% block extra_js %} + + + + +{% endblock extra_js %} \ No newline at end of file diff --git a/pxy_dashboard/templates/pxy_dashboard/components/base-ui/cards.html b/pxy_dashboard/templates/pxy_dashboard/components/base-ui/cards.html new file mode 100644 index 0000000..e8e149a --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/components/base-ui/cards.html @@ -0,0 +1,524 @@ +{% extends "partials/base.html" %} +{% load static %} + +{% block title %}Cards{% endblock title %} + +{% block extra_css %} +{% endblock extra_css %} + + +{% block pagetitle %} +{% include "partials/page-title.html" with pagetitle="Base UI" title="Cards" %} +{% endblock pagetitle %} + +{% block content %} +
    +
    + + +
    + Card image cap +
    +

    Card title

    +

    Some quick example text to build on the card title and make + up the bulk of the card's content. Some quick example text to build on the card title and make up. +

    + Button +
    +
    +
    + +
    +
    + Card image cap +
    +

    Card title

    +

    Some quick example text to build on the card..

    +
    +
      +
    • Cras justo odio
    • +
    + +
    +
    + +
    +
    + Card image cap +
    +

    Some quick example text to build on the card title and make + up the bulk of the card's content. Some quick example text to build on the card title and make up. +

    + Button +
    +
    +
    + + +
    +
    +
    +

    Card title

    +
    Support card subtitle
    +
    + Card image cap +
    +

    Some quick example text to build on the card title and make + up the bulk of the card's content.

    + Card link + Another link +
    +
    +
    +
    + + +
    +
    +
    +

    Special title treatment

    +

    With supporting text below as a natural lead-in to additional + content.

    + Go somewhere +
    +
    +
    +
    +

    Special title treatment

    +

    With supporting text below as a natural lead-in to additional + content.

    + Go somewhere +
    +
    +
    + + +
    +
    +
    +
    Featured
    +
    +
    Special title treatment
    +

    With supporting text below as a natural lead-in to + additional content.

    + Go somewhere +
    +
    +
    + +
    +
    +
    + Quote +
    +
    +
    +

    Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere + erat a ante.

    +
    Someone famous in Source Title +
    +
    +
    +
    +
    + +
    +
    +
    + Featured +
    + + +
    +
    +
    + + +
    +
    +

    Card Colored

    +
    +
    + + +
    +
    +
    +
    +
    Special title treatment
    +

    With supporting text below as a natural lead-in to + additional content.

    + Button +
    +
    +
    + +
    +
    +
    +
    +

    Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere + erat a ante.

    +
    Someone famous in Source Title +
    +
    +
    +
    +
    + +
    +
    +
    +
    +

    Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere + erat a ante.

    +
    Someone famous in Source Title +
    +
    +
    +
    +
    + +
    +
    +
    +
    +

    Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere + erat a ante.

    +
    Someone famous in Source Title +
    +
    +
    +
    +
    + +
    +
    +
    +
    +

    Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere + erat a ante.

    +
    Someone famous in Source Title +
    +
    +
    +
    +
    + +
    +
    +
    +
    +

    Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere + erat a ante.

    +
    Someone famous in Source Title +
    +
    +
    +
    +
    +
    + + +
    +
    +

    Card Bordered

    +
    +
    + + +
    +
    +
    +
    +
    Special title treatment
    +

    With supporting text below as a natural lead-in to + additional content.

    + Button +
    +
    +
    + +
    +
    +
    +
    Special title treatment
    +

    With supporting text below as a natural lead-in to + additional content.

    + Button +
    +
    +
    + +
    +
    +
    +
    Special title treatment
    +

    With supporting text below as a natural lead-in to + additional content.

    + Button +
    +
    +
    +
    + + + +
    +
    +

    Horizontal Card

    +
    +
    + + +
    +
    +
    +
    +
    + ... +
    +
    +
    +
    Card title
    +

    This is a wider card with supporting text below as a natural lead-in to + additional content. This content is a little bit longer.

    +

    Last updated 3 mins ago

    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    Card title
    +

    This is a wider card with supporting text below as a natural lead-in to + additional content. This content is a little bit longer.

    +

    Last updated 3 mins ago

    +
    +
    +
    + ... +
    +
    +
    +
    +
    + + +
    +
    +

    Stretched link

    +
    +
    + + +
    +
    +
    + ... +
    +
    Card with stretched link
    + Go somewhere +
    +
    +
    +
    +
    + ... +
    +
    Card with stretched link
    +

    + Some quick example text to build on the card up the bulk of the card's content. +

    +
    +
    +
    +
    +
    + ... +
    +
    Card with stretched link
    + Go somewhere +
    +
    +
    +
    +
    + ... +
    +
    Card with stretched link
    +

    + Some quick example text to build on the card up the bulk of the card's content. +

    +
    +
    +
    +
    + + +
    +
    +

    Card Group

    +
    +
    + + +
    +
    +
    +
    + Card image cap +
    +
    Card title
    +

    This is a wider card with supporting text below as a + natural lead-in to additional content. This content is a little bit + longer.

    +

    + Last updated 3 mins ago +

    +
    +
    +
    + Card image cap +
    +
    Card title
    +

    This card has supporting text below as a natural + lead-in to additional content.

    +

    + Last updated 3 mins ago +

    +
    +
    +
    + Card image cap +
    +
    Card title
    +

    This is a wider card with supporting text below as a + natural lead-in to additional content. This card has even longer content + than the first to show that equal height action.

    +

    + Last updated 3 mins ago +

    +
    +
    +
    +
    +
    + + +
    +
    +

    Custom Card Portlets

    +
    +
    + + +
    +
    + +
    +
    +
    + + + +
    +
    Card title
    + +
    + Anim pariatur cliche reprehenderit, enim eiusmod high life accusamus terry richardson ad squid. 3 + wolf moon officia aute, + non cupidatat skateboard dolor brunch. Food truck quinoa nesciunt laborum eiusmod. Brunch 3 wolf + moon tempor, sunt aliqua + put a bird on it squid single-origin coffee nulla assumenda shoreditch et. Nihil anim keffiyeh + helvetica, craft beer + labore wes anderson cred nesciunt sapiente ea proident. Ad vegan excepteur butcher vice lomo. + Leggings occaecat craft + beer farm-to-table, raw denim aesthetic synth nesciunt you probably haven't heard of them accusamus + labore sustainable + VHS. +
    +
    +
    +
    + +
    + +
    +
    +
    + + + +
    +
    Card title
    + +
    + Anim pariatur cliche reprehenderit, enim eiusmod high life accusamus terry richardson ad squid. 3 + wolf moon officia aute, + non cupidatat skateboard dolor brunch. Food truck quinoa nesciunt laborum eiusmod. Brunch 3 wolf + moon tempor, sunt aliqua + put a bird on it squid single-origin coffee nulla assumenda shoreditch et. Nihil anim keffiyeh + helvetica, craft beer + labore wes anderson cred nesciunt sapiente ea proident. Ad vegan excepteur butcher vice lomo. + Leggings occaecat craft + beer farm-to-table, raw denim aesthetic synth nesciunt you probably haven't heard of them accusamus + labore sustainable + VHS. +
    +
    +
    +
    + +
    + +
    +
    +
    + + + +
    +
    Card title
    + +
    + Anim pariatur cliche reprehenderit, enim eiusmod high life accusamus terry richardson ad squid. 3 + wolf moon officia aute, + non cupidatat skateboard dolor brunch. Food truck quinoa nesciunt laborum eiusmod. Brunch 3 wolf + moon tempor, sunt aliqua + put a bird on it squid single-origin coffee nulla assumenda shoreditch et. Nihil anim keffiyeh + helvetica, craft beer + labore wes anderson cred nesciunt sapiente ea proident. Ad vegan excepteur butcher vice lomo. + Leggings occaecat craft + beer farm-to-table, raw denim aesthetic synth nesciunt you probably haven't heard of them accusamus + labore sustainable + VHS. +
    +
    +
    +
    +
    + + +{% endblock content %} + +{% block extra_js %} + + + + +{% endblock extra_js %} \ No newline at end of file diff --git a/pxy_dashboard/templates/pxy_dashboard/components/base-ui/carousel.html b/pxy_dashboard/templates/pxy_dashboard/components/base-ui/carousel.html new file mode 100644 index 0000000..9e13390 --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/components/base-ui/carousel.html @@ -0,0 +1,309 @@ +{% extends "partials/base.html" %}/ +{% load static %} + +{% block title %}Carousel{% endblock title %} + +{% block extra_css %} +{% endblock extra_css %} + + +{% block pagetitle %} +{% include "partials/page-title.html" with pagetitle="Base UI" title="Carousel" %} +{% endblock pagetitle %} + + +{% block content %} +
    +
    +
    +
    +

    Slides Only

    +

    Here’s a carousel with slides only. + Note the presence of the .d-block + and .img-fluid on carousel images + to prevent browser default image alignment.

    + + + +
    +
    +
    + +
    +
    +
    +

    With Controls

    +

    Adding in the previous and next controls:

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

    With Indicators

    +

    You can also add the indicators to the + carousel, alongside the controls, too.

    + + + +
    +
    +
    + +
    +
    +
    +

    With Captions

    +

    Add captions to your slides easily with the .carousel-caption + element within any .carousel-item.

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

    Crossfade

    +

    Add .carousel-fade to your carousel to animate slides with a + fade transition instead of a slide.

    + + + +
    +
    +
    + +
    +
    +
    +

    Individual Interval

    +

    Add data-bs-interval="" to a .carousel-item to + change the amount of time to delay between automatically cycling to the next item.

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

    Dark variant

    +

    Add .carousel-dark to the .carousel for darker + controls, indicators, and captions. Controls are inverted compared to their default white fill with + the filter CSS property. Captions and controls have additional Sass variables that + customize the color and background-color.

    + + + +
    +
    +
    +
    + + + +{% endblock content %} + +{% block extra_js %} + + + + +{% endblock extra_js %} \ No newline at end of file diff --git a/pxy_dashboard/templates/pxy_dashboard/components/base-ui/collapse.html b/pxy_dashboard/templates/pxy_dashboard/components/base-ui/collapse.html new file mode 100644 index 0000000..05b6738 --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/components/base-ui/collapse.html @@ -0,0 +1,136 @@ +{% extends "partials/base.html" %} +{% load static %} + +{% block title %}Collapse{% endblock title %} + +{% block extra_css %} +{% endblock extra_css %} + + +{% block pagetitle %} +{% include "partials/page-title.html" with pagetitle="Base UI" title="Collapse" %} +{% endblock pagetitle %} + +{% block content %} +
    +
    +
    +
    +

    Collapse

    +

    + Bootstrap's collapse provides the way to toggle the visibility of any content or element. + Please read the official Bootstrap + documentation for a full list of options. +

    + +

    + + +

    +
    +
    + Anim pariatur cliche reprehenderit, enim eiusmod high life + accusamus terry + richardson ad squid. Nihil anim keffiyeh helvetica, craft beer + labore wes + anderson cred nesciunt sapiente ea proident. +
    +
    + +
    +
    +
    + +
    +
    +
    +

    Collapse Horizontal

    +

    The collapse plugin also supports horizontal collapsing. Add the + .collapse-horizontal modifier class to transition the width instead of + height and set a width on the immediate child element.

    + +

    + +

    +
    +
    +
    + This is some placeholder content for a horizontal collapse. It's hidden by default and shown + when triggered. +
    +
    +
    + +
    +
    +
    + +
    + + + +
    +
    +
    +
    +

    Multiple Targets

    +

    + Multiple <button> or <a> can show and hide an element if + they each reference it with their href or data-bs-target attribute +

    + +

    + + + +

    +
    +
    +
    +
    + Anim pariatur cliche reprehenderit, enim eiusmod high life accusamus terry richardson ad + squid. Nihil anim keffiyeh helvetica, craft beer labore wes anderson cred nesciunt + sapiente ea proident. +
    +
    +
    +
    +
    +
    + Anim pariatur cliche reprehenderit, enim eiusmod high life accusamus terry richardson ad + squid. Nihil anim keffiyeh helvetica, craft beer labore wes anderson cred nesciunt + sapiente ea proident. +
    +
    +
    +
    + +
    +
    +
    +
    + +{% endblock content %} + +{% block extra_js %} + + + + +{% endblock extra_js %} \ No newline at end of file diff --git a/pxy_dashboard/templates/pxy_dashboard/components/base-ui/dropdowns.html b/pxy_dashboard/templates/pxy_dashboard/components/base-ui/dropdowns.html new file mode 100644 index 0000000..fbd07b7 --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/components/base-ui/dropdowns.html @@ -0,0 +1,838 @@ +{% extends "partials/base.html" %} +{% load static %} + +{% block title %}Dropdowns{% endblock title %} + +{% block extra_css %} +{% endblock extra_css %} + + +{% block pagetitle %} +{% include "partials/page-title.html" with pagetitle="Base UI" title="Dropdowns" %} +{% endblock pagetitle %} + +{% block content %} +
    +
    +
    +
    +

    Single button dropdowns

    +

    + Any single .btn can be turned into a dropdown + toggle with some markup changes. Here’s how you can put them to work + with either <button> + elements: +

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

    Animated Dropdown

    +

    + Add .dropdown-menu-animated + to a .dropdown-menu to have animated dropdown menu.

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

    Variant

    +

    The best part is you can do this with any button variant, too:

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

    Dropup variation

    +

    Trigger dropdown menus above elements + by adding .dropup to the parent + element.

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

    Dropend variation

    +

    Trigger dropdown menus at the right of the elements by adding .dropend to the parent element.

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

    Disabled Item

    +

    Add .disabled to items in the dropdown to style them as disabled.

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

    Dark dropdowns

    +

    Opt into darker dropdowns to match a dark navbar or custom style by adding .dropdown-menu-dark onto an existing .dropdown-menu. No changes are required to the dropdown items.

    + +
    +
    + +
    +
    +

    Dropdown options

    +

    Use data-bs-offset or data-bs-reference to change the location of the dropdown.

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

    Text

    +

    Place any freeform text within a dropdown menu with text and use spacing utilities. Note that you’ll likely need additional sizing styles to constrain the menu width.

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

    Menu alignment

    +

    + Add .dropdown-menu-end + to a .dropdown-menu to right + align the dropdown menu. +

    + + +
    +
    + +
    +
    +

    Menu Centered

    + +

    Make the dropdown menu centered below the toggle with .dropdown-center on the parent element.

    + +
    + +
    +
    +
    + +
    +
    +

    Split button dropdowns

    +

    + Similarly, create split button dropdowns with virtually the same markup as single button dropdowns, but with the addition of .dropdown-toggle-split for proper spacing around the dropdown caret. +

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

    Sizing

    +

    Button dropdowns work with buttons of all sizes, including default and split dropdown buttons.

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

    Dropstart variation

    +

    Trigger dropdown menus at the right of the elements by adding .dropleft to the parent element.

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

    Active Item

    +

    Add .active to item in the dropdown to style them as active.

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

    Headers

    +

    Add a header to label sections of actions in any dropdown menu.

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

    Centered dropdowns

    +

    Make the dropdown menu centered below the toggle with .dropdown-center on the parent element.

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

    Auto close behavior

    +

    By default, the dropdown menu is closed when clicking inside or outside the dropdown menu. You can use the autoClose option to change this behavior of the dropdown.

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

    Forms

    +

    Put a form within a dropdown menu, or make it into a dropdown menu, and use margin or padding utilities to give it the negative space you require.

    + + + +
    +
    + +
    +
    + + +{% endblock content %} + +{% block extra_js %} + + + + +{% endblock extra_js %} \ No newline at end of file diff --git a/pxy_dashboard/templates/pxy_dashboard/components/base-ui/embed-video.html b/pxy_dashboard/templates/pxy_dashboard/components/base-ui/embed-video.html new file mode 100644 index 0000000..d0e18e5 --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/components/base-ui/embed-video.html @@ -0,0 +1,78 @@ +{% extends "partials/base.html" %} +{% load static %} + +{% block title %}Embed Video{% endblock title %} + +{% block extra_css %} +{% endblock extra_css %} + + +{% block pagetitle %} +{% include "partials/page-title.html" with pagetitle="Base UI" title="Embed Video" %} +{% endblock pagetitle %} + +{% block content %} +
    +
    +
    +
    +

    Responsive embed video 21:9

    +

    Use class .ratio-21x9

    + + +
    + +
    +
    +
    + +
    +
    +

    Responsive embed video 1:1

    +

    Use class .ratio-1x1

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

    Responsive embed video 16:9

    +

    Use class .ratio-16x9

    + + +
    + +
    +
    +
    + +
    +
    +

    Responsive embed video 4:3

    +

    Use class .ratio-4x3

    + + +
    + +
    +
    +
    +
    +
    + + + +{% endblock content %} + +{% block extra_js %} + + + + +{% endblock extra_js %} \ No newline at end of file diff --git a/pxy_dashboard/templates/pxy_dashboard/components/base-ui/grid.html b/pxy_dashboard/templates/pxy_dashboard/components/base-ui/grid.html new file mode 100644 index 0000000..886dbe7 --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/components/base-ui/grid.html @@ -0,0 +1,294 @@ +{% extends "partials/base.html" %} +{% load static %} + +{% block title %}Grid System{% endblock title %} + +{% block extra_css %} +{% endblock extra_css %} + + +{% block pagetitle %} +{% include "partials/page-title.html" with pagetitle="Base UI" title="Grid System" %} +{% endblock pagetitle %} + +{% block content %} +
    +
    +
    +
    +

    Grid options

    +

    + See how aspects of the Bootstrap grid system work across multiple devices with a handy table. +

    + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + Extra small
    + <576px +
    + Small
    + ≥576px +
    + Medium
    + ≥768px +
    + Large
    + ≥992px +
    + Extra large
    + ≥1200px +
    + Extra large
    + ≥1400px +
    Max container widthNone (auto)540px720px960px1140px1320px
    Class prefix.col-.col-sm-.col-md-.col-lg-.col-xl-.col-xxl-
    # of columns12
    Gutter width1.25rem (0.625rem on each side of a column)
    Custom guttersYes
    NestableYes
    Column orderingYes
    +
    + +
    +
    +
    +
    + + + +
    +
    +
    +
    +

    Grid Example

    + +
    +
    +
    +
    + col-lg-12 +
    +
    +
    +
    +
    +
    + col-lg-11 +
    +
    +
    +
    + col-lg-1 +
    +
    +
    +
    +
    +
    + col-lg-10 +
    +
    +
    +
    + col-lg-2 +
    +
    +
    +
    +
    +
    + col-lg-9 +
    +
    +
    +
    + col-lg-3 +
    +
    +
    +
    +
    +
    + col-lg-8 +
    +
    +
    +
    + col-lg-4 +
    +
    +
    +
    +
    +
    + col-lg-7 +
    +
    +
    +
    + col-lg-5 +
    +
    +
    +
    +
    +
    + col-lg-6 +
    +
    +
    +
    + col-lg-6 +
    +
    +
    +
    +
    +
    + col-lg-5 +
    +
    +
    +
    + col-lg-7 +
    +
    +
    +
    +
    +
    + col-lg-4 +
    +
    +
    +
    + col-lg-8 +
    +
    +
    +
    +
    +
    + col-lg-3 +
    +
    +
    +
    + col-lg-9 +
    +
    +
    +
    +
    +
    + col-lg-2 +
    +
    +
    +
    + col-lg-10 +
    +
    +
    +
    +
    +
    + col-lg-1 +
    +
    +
    +
    + col-lg-11 +
    +
    +
    +
    +
    +
    + col-lg-2 +
    +
    +
    +
    + col-lg-3 +
    +
    +
    +
    + col-lg-4 +
    +
    +
    +
    + col-lg-2 +
    +
    +
    +
    + col-lg-1 +
    +
    +
    +
    + +
    +
    +
    +
    + + + +{% endblock content %} + +{% block extra_js %} + + + + +{% endblock extra_js %} \ No newline at end of file diff --git a/pxy_dashboard/templates/pxy_dashboard/components/base-ui/links.html b/pxy_dashboard/templates/pxy_dashboard/components/base-ui/links.html new file mode 100644 index 0000000..c59fcab --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/components/base-ui/links.html @@ -0,0 +1,195 @@ +{% extends "partials/base.html" %} +{% load static %} + +{% block title %}Links{% endblock title %} + +{% block extra_css %} +{% endblock extra_css %} + + +{% block pagetitle %} +{% include "partials/page-title.html" with pagetitle="Base UI" title="Links" %} +{% endblock pagetitle %} + +{% block content %} +
    +
    +
    +
    +

    Colored Links

    +

    You can use the .link-* classes to colorize links. Unlike the + .text-* classes, these classes have a + :hover and :focus state. Some of the link styles use a relatively light + foreground color, and should only be used on a dark background in order to have sufficient contrast. +

    + +

    Primary link

    +

    Secondary link

    +

    Success link

    +

    Danger link

    +

    Warning link

    +

    Info link

    +

    Light link

    +

    Dark link

    +

    Emphasis link

    +
    +
    +
    + +
    +
    +
    +

    Link Utilities

    +

    Colored link helpers have been updated to + pair with our link utilities. Use the new utilities to modify the link opacity, underline opacity, + and underline offset.

    + +

    Primary + link

    +

    Secondary + link

    +

    Success + link

    +

    Danger + link

    +

    Warning + link

    +

    Info + link

    +

    Light + link

    +

    Dark + link

    +

    Emphasis + link

    +
    +
    +
    +
    + +
    +
    +
    +
    +

    Link Opacity

    +

    Change the alpha opacity of the link rgba() color value with + utilities. Please be aware that changes to a color’s opacity can lead to links with + insufficient contrast.

    +

    Link opacity 10

    +

    Link opacity 25

    +

    Link opacity 50

    +

    Link opacity 75

    +

    Link opacity 100

    +
    +
    +
    +
    +
    +
    +

    Link Hover Opacity

    +

    You can even change the opacity level on hover.

    + +

    Link hover opacity 10

    +

    Link hover opacity 25

    +

    Link hover opacity 50

    +

    Link hover opacity 75

    +

    Link hover opacity 100

    +
    +
    +
    +
    + +
    +
    +
    +
    +

    Underline Color

    +

    Change the underline’s color independent of the link text color.

    + +

    Primary underline

    +

    Secondary underline

    +

    Success underline

    +

    Danger underline

    +

    Warning underline

    +

    Info underline

    +

    Light underline

    +

    Dark underline

    +
    +
    +
    +
    +
    +
    +

    Underline Opacity

    +

    Change the underline’s opacity. Requires adding + .link-underline to first set an rgba() color we use to then modify the + alpha opacity.

    +

    Underline opacity 0

    +

    Underline opacity 10

    +

    Underline opacity 25

    +

    Underline opacity 50

    +

    Underline opacity 75

    +

    Underline opacity 100

    +
    +
    +
    +
    + +
    +
    +
    +
    +

    Underline Offset

    +

    Change the underline’s opacity. Requires adding + .link-underline to first set an rgba() color we use to then modify the + alpha opacity.

    + +

    Default link

    +

    Offset 1 link

    +

    Offset 2 link

    +

    Offset 3 link

    +
    +
    +
    +
    +
    +
    +

    Hover Variants

    +

    Just like the .link-opacity-*-hover utilities, + .link-offset and .link-underline-opacity utilities include + :hover variants by default. Mix and match to create unique link styles.

    + + + Underline opacity 0 + +
    +
    +
    +
    + + +{% endblock content %} + +{% block extra_js %} + + + + +{% endblock extra_js %} \ No newline at end of file diff --git a/pxy_dashboard/templates/pxy_dashboard/components/base-ui/list-group.html b/pxy_dashboard/templates/pxy_dashboard/components/base-ui/list-group.html new file mode 100644 index 0000000..aad8cf9 --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/components/base-ui/list-group.html @@ -0,0 +1,396 @@ +{% extends "partials/base.html" %} +{% load static %} + +{% block title %}List Group{% endblock title %} + +{% block extra_css %} +{% endblock extra_css %} + + +{% block pagetitle %} +{% include "partials/page-title.html" with pagetitle="Base UI" title="List Group" %} +{% endblock pagetitle %} + +{% block content %} +
    +
    +
    +
    +

    Basic example

    + +

    The most basic list group is an unordered list with + list items and the proper classes. + Build upon it with the options that follow, or with your own CSS as needed. +

    + +
      +
    • + Google Drive
    • +
    • + Facebook Messenger
    • +
    • Apple + Technology Company
    • +
    • Intercom + Support System
    • +
    • Paypal + Payment Gateway
    • +
    +
    +
    +
    + +
    +
    +
    +

    Active items

    +

    Add .active to a + .list-group-item to indicate the current active selection. +

    + +
      +
    • Google Drive
    • +
    • + Facebook Messenger
    • +
    • Apple + Technology Company
    • +
    • Intercom + Support System
    • +
    • Paypal + Payment Gateway
    • +
    +
    +
    +
    + +
    +
    +
    +

    Disabled items

    +

    Add .disabled to a .list-group-item to make it + appear disabled. +

    +
      +
    • Google + Drive
    • +
    • + Facebook Messenger
    • +
    • Apple + Technology Company
    • +
    • Intercom + Support System
    • +
    • Paypal + Payment Gateway
    • +
    +
    +
    +
    +
    + + +
    +
    +
    +
    +

    Links and Buttons

    +

    Use <a>s or + <button>s to create actionable list group items with + hover, disabled, and active states by adding + .list-group-item-action. +

    + +
    + + Paypal Payment Gateway + + Google + Drive + + + Intercom Support System +
    +
    +
    +
    + +
    +
    +
    +

    Flush

    +

    Add .list-group-flush to remove some + borders and rounded corners to render list group items edge-to-edge in a parent + container (e.g., cards).

    + +
      +
    • Google Drive
    • +
    • Facebook Messenger
    • +
    • Apple Technology Company
    • +
    • Intercom Support System
    • +
    • Paypal Payment Gateway
    • +
    +
    +
    +
    + +
    +
    +
    +

    Horizontal

    +

    Add .list-group-horizontal to change the + layout of list group items from vertical to horizontal across all breakpoints. + Alternatively, choose a responsive variant + .list-group-horizontal-{sm|md|lg|xl} to make a list group + horizontal starting at that breakpoint’s min-width. +

    + +
      +
    • Google
    • +
    • Whatsapp
    • +
    • Facebook
    • +
    + +
      +
    • Apple
    • +
    • PayPal
    • +
    • Intercom
    • +
    + +
      +
    • Google
    • +
    • Whatsapp
    • +
    • Facebook
    • +
    +
    +
    +
    +
    + + +
    +
    +
    +
    +

    Contextual classes

    +

    Use contextual classes to style list items with a + stateful background and color.

    + +
      +
    • Dapibus ac facilisis in
    • +
    • A simple primary + list group item
    • +
    • A simple secondary + list group item
    • +
    • A simple success + list group item
    • +
    • A simple danger list + group item
    • +
    • A simple warning + list group item
    • +
    • A simple info list + group item
    • +
    • A simple light list + group item
    • +
    • A simple dark list + group item
    • +
    +
    +
    +
    + + + + + +
    + + +
    +
    +
    +
    +

    With badges

    +

    Add badges to any list group item to show unread + counts, activity, and more with the help of some utilities.

    + +
      +
    • + Gmail Emails + 14 +
    • +
    • + Pending Payments + 2 +
    • +
    • + Action Needed + 99+ +
    • +
    • + Payments Done + 20+ +
    • +
    • + Pending Payments + 12 +
    • +
    +
    +
    +
    + +
    +
    +
    +

    Checkboxes and radios

    +

    Place Bootstrap’s checkboxes and radios within list + group items and customize as needed. You can use them without + <label>s, but please remember to include an + aria-label attribute and value for accessibility. +

    + +
      +
    • + + +
    • +
    • + + +
    • +
    + +
      +
    • + + +
    • +
    • + + +
    • +
    +
    +
    +
    + +
    +
    +
    +

    Numbered

    +

    Numbers are generated by counter-reset on + the <ol>, and then styled and placed with a + ::before psuedo-element on the <li> with + counter-increment and content. +

    + +
      +
    1. +
      +
      Attex Admin
      + Attex Admin +
      + 865 +
    2. +
    3. +
      +
      Attex React Admin
      + Attex React Admin +
      + 140 +
    4. +
    5. +
      +
      Angular Version
      + Angular Version +
      + 85 +
    6. +
    +
    +
    +
    +
    + + +{% endblock content %} + +{% block extra_js %} + + + + +{% endblock extra_js %} \ No newline at end of file diff --git a/pxy_dashboard/templates/pxy_dashboard/components/base-ui/modals.html b/pxy_dashboard/templates/pxy_dashboard/components/base-ui/modals.html new file mode 100644 index 0000000..e5b884b --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/components/base-ui/modals.html @@ -0,0 +1,1301 @@ +{% extends "partials/base.html" %} +{% load static %} + +{% block title %}Modals{% endblock title %} + +{% block extra_css %} +{% endblock extra_css %} + + +{% block pagetitle %} +{% include "partials/page-title.html" with pagetitle="Base UI" title="Modals" %} +{% endblock pagetitle %} + +{% block content %} +
    +
    +
    +
    +

    Bootstrap Modals

    + +

    + A rendered modal with header, body, and set of actions in the footer. +

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

    Modal with Pages

    +

    Examples of custom modals.

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

    Modal based Alerts

    +

    Show different contexual alert messages using modal component

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

    Modal Position

    +

    Specify the position for the modal. You can display modal at top, bottom, + center or right of page by specifying + classes modal-top, modal-bottom, modal-dialog-centered and + modal-right + respectively.

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

    Colored Header Modals

    +

    A rendered modal with header having contexual background color.

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

    Filled Modals

    +

    A rendered modal with header, body and footer having contexual background + color.

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

    Multiple Modal

    +

    Display a series of modals one by one to guide your users on multiple + aspects or take step wise input.

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

    Toggle Between Modals

    +

    Toggle between multiple modals with some clever placement of the + data-bs-target and data-bs-toggle attributes.

    + + + + + + + + Open first + modal +
    +
    +
    +
    + + +
    +
    +
    +
    +

    Fullscreen Modal

    +

    Another override is the option to pop up a modal that covers the user + viewport, available via modifier classes that are placed on a .modal-dialog

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

    Static Backdrop

    +

    When backdrop is set to static, the modal will not close when clicking + outside it. Click the button below to try it.

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

    Varying Modal Content

    +

    Have a bunch of buttons that all trigger the same modal with slightly + different contents? Use + event.relatedTarget and HTML data-bs-* + attributes to vary the contents of the modal depending on which button was clicked. +

    + +
    + + + +
    + + +
    +
    +
    +
    + + + +{% endblock content %} + +{% block extra_js %} + + + + +{% endblock extra_js %} \ No newline at end of file diff --git a/pxy_dashboard/templates/pxy_dashboard/components/base-ui/notifications.html b/pxy_dashboard/templates/pxy_dashboard/components/base-ui/notifications.html new file mode 100644 index 0000000..ef6020c --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/components/base-ui/notifications.html @@ -0,0 +1,353 @@ +{% extends "partials/base.html" %} +{% load static %} + +{% block title %}Notifications{% endblock title %} + +{% block extra_css %} + + + +{% endblock extra_css %} + + +{% block pagetitle %} +{% include "partials/page-title.html" with pagetitle="Base UI" title="Notifications" %} +{% endblock pagetitle %} + + +{% block content %} +
    +
    +
    +
    + +

    Bootstrap Toasts

    +

    Push notifications to your visitors with a toast, a + lightweight and easily customizable alert message.

    + +
    +
    +
    Basic
    +

    Toasts are as flexible as you need and + have very little required markup. At a minimum, we + require a single element to contain your “toasted” content and + strongly encourage a dismiss button.

    +
    + + + + +
    +
    +
    +
    Translucent
    +

    Toasts are slightly translucent, too, + so they blend over whatever they might appear over. + For browsers that support the backdrop-filter CSS property, + we’ll also attempt to blur the elements under a toast.

    + +
    + + +
    +
    +
    + + +
    +
    +
    Stacking
    +

    When you have multiple toasts, we + default to vertiaclly stacking them in a readable manner.

    +
    +
    + +
    + + + + + + + +
    +
    +
    +
    +
    +
    Placement
    +

    Place toasts with custom CSS as you + need them. The top right is often used for + notifications, as is the top middle. If you’re only ever going + to show one toast at a time, put the positioning + styles right on the .toast.

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

    Custom content

    +

    Alternatively, you can also add additional controls + and components to toasts.

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

    Placement

    +

    Place toasts with custom CSS as you need them. The top + right is often used for notifications, as is the top middle. If you’re only ever + going to show one toast at a time, put the positioning styles right on the + .toast. +

    + +
    +
    + + +
    +
    +
    +
    +
    +
    + brand-logo + Attex + 11 mins ago +
    +
    + Hello, world! This is a toast message. +
    +
    +
    +
    +
    +
    +
    +
    + + +
    +
    +
    +
    + +

    Jquery Toast

    +

    Toasts based notifications can be used to to show + important alerts or information to users.

    + +
    +
    +
    +

    Info Example

    + +
    +
    +
    +
    +

    Warning Example

    + +
    +
    +
    +
    +

    Success Example

    + +
    +
    +
    +
    +

    Danger Example

    + +
    +
    +
    + + +
    +
    +
    +

    The text can be an array

    + +
    +
    +
    +
    +

    Put some HTML in the text

    + +
    +
    +
    +
    +

    Making them sticky

    + +
    +
    +
    +
    +

    Fade transitions

    + +
    +
    +
    + + +
    +
    +
    +
    + + + +{% endblock content %} + +{% block extra_js %} + + + + + + + + + +{% endblock extra_js %} \ No newline at end of file diff --git a/pxy_dashboard/templates/pxy_dashboard/components/base-ui/offcanvas.html b/pxy_dashboard/templates/pxy_dashboard/components/base-ui/offcanvas.html new file mode 100644 index 0000000..7a1c7fa --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/components/base-ui/offcanvas.html @@ -0,0 +1,353 @@ +{% extends "partials/base.html" %} +{% load static %} + +{% block title %}Offcanvas{% endblock title %} + +{% block extra_css %} +{% endblock extra_css %} + + +{% block pagetitle %} +{% include "partials/page-title.html" with pagetitle="Base UI" title="Offcanvas" %} +{% endblock pagetitle %} + +{% block content %} +
    +
    +
    +
    +

    Offcanvas

    +

    + You can use a link with the href attribute, or a button with the + data-bs-target attribute. In both cases, the data-bs-toggle="offcanvas" is + required. +

    + +
    + + Link with href + + +
    + +
    +
    +
    Offcanvas
    + +
    + +
    +
    + Some text as placeholder. In real life you can have the elements you have chosen. Like, + text, + images, lists, etc. +
    +
    List
    +
      +
    • Nemo enim ipsam voluptatem quia aspernatur
    • +
    • Neque porro quisquam est, qui dolorem
    • +
    • Quis autem vel eum iure qui in ea
    • +
    + +
      +
    • At vero eos et accusamus et iusto odio dignissimos
    • +
    • Et harum quidem rerum facilis
    • +
    • Temporibus autem quibusdam et aut officiis
    • +
    +
    +
    + +
    +
    + +
    +
    +

    Offcanvas Backdrop

    +

    + Scrolling the <body> element is disabled when an offcanvas and its backdrop are + visible. Use the data-bs-scroll attribute to toggle <body> scrolling + and data-bs-backdrop to toggle the backdrop. +

    + +
    + + + +
    + +
    +
    +
    Colored with scrolling
    + +
    +
    +
    + Some text as placeholder. In real life you can have the elements you have chosen. Like, + text, + images, lists, etc. +
    +
    List
    +
      +
    • Nemo enim ipsam voluptatem quia aspernatur
    • +
    • Neque porro quisquam est, qui dolorem
    • +
    • Quis autem vel eum iure qui in ea
    • +
    + +
      +
    • At vero eos et accusamus et iusto odio dignissimos
    • +
    • Et harum quidem rerum facilis
    • +
    • Temporibus autem quibusdam et aut officiis
    • +
    +
    +
    + +
    +
    +
    Offcanvas with backdrop
    + +
    + +
    +
    + Some text as placeholder. In real life you can have the elements you have chosen. Like, + text, + images, lists, etc. +
    +
    List
    +
      +
    • Nemo enim ipsam voluptatem quia aspernatur
    • +
    • Neque porro quisquam est, qui dolorem
    • +
    • Quis autem vel eum iure qui in ea
    • +
    + +
      +
    • At vero eos et accusamus et iusto odio dignissimos
    • +
    • Et harum quidem rerum facilis
    • +
    • Temporibus autem quibusdam et aut officiis
    • +
    +
    +
    + +
    +
    +
    Backdroped with scrolling
    + +
    + +
    +
    + Some text as placeholder. In real life you can have the elements you have chosen. Like, + text, + images, lists, etc. +
    +
    List
    +
      +
    • Nemo enim ipsam voluptatem quia aspernatur
    • +
    • Neque porro quisquam est, qui dolorem
    • +
    • Quis autem vel eum iure qui in ea
    • +
    + +
      +
    • At vero eos et accusamus et iusto odio dignissimos
    • +
    • Et harum quidem rerum facilis
    • +
    • Temporibus autem quibusdam et aut officiis
    • +
    +
    +
    +
    +
    +
    + +
    +
    +
    +

    Offcanvas Placement

    +

    + Try the right and bottom examples out below. +

    + +
      +
    • .offcanvas-start places offcanvas on the left of the viewport (shown above)
    • +
    • .offcanvas-end places offcanvas on the right of the viewport
    • +
    • .offcanvas-top places offcanvas on the top of the viewport
    • +
    • .offcanvas-bottom places offcanvas on the bottom of the viewport
    • +
    + +
    +
    + + + + +
    + +
    +
    +
    Offcanvas Top
    + +
    + +
    +
    + Some text as placeholder. In real life you can have the elements you have chosen. Like, + text, + images, lists, etc. +
    +
    List
    +
      +
    • Nemo enim ipsam voluptatem quia aspernatur
    • +
    • Neque porro quisquam est, qui dolorem
    • +
    • Quis autem vel eum iure qui in ea
    • +
    +
    +
    + +
    +
    +
    Offcanvas right
    + +
    + +
    +
    + Some text as placeholder. In real life you can have the elements you have chosen. Like, + text, + images, lists, etc. +
    +
    List
    +
      +
    • Nemo enim ipsam voluptatem quia aspernatur
    • +
    • Neque porro quisquam est, qui dolorem
    • +
    • Quis autem vel eum iure qui in ea
    • +
    +
    +
    + +
    +
    +
    Offcanvas bottom
    + +
    + +
    +
    + Some text as placeholder. In real life you can have the elements you have chosen. Like, + text, + images, lists, etc. +
    +
    List
    +
      +
    • Nemo enim ipsam voluptatem quia aspernatur
    • +
    • Neque porro quisquam est, qui dolorem
    • +
    • Quis autem vel eum iure qui in ea
    • +
    +
    +
    + +
    +
    +
    Offcanvas Left
    + +
    + +
    +
    + Some text as placeholder. In real life you can have the elements you have chosen. Like, + text, + images, lists, etc. +
    +
    List
    +
      +
    • Nemo enim ipsam voluptatem quia aspernatur
    • +
    • Neque porro quisquam est, qui dolorem
    • +
    • Quis autem vel eum iure qui in ea
    • +
    +
    +
    +
    +
    +
    + +
    +
    +

    Dark Offcanvas

    +

    Change the appearance of offcanvases with utilities to better match them to + different contexts like dark navbars. + Here we add .text-bg-dark to the .offcanvas and + .btn-close-white to + .btn-close for proper styling with a dark offcanvas. If you have dropdowns within, + consider also adding + .dropdown-menu-dark to .dropdown-menu. +

    + + + +
    +
    +
    Dark Offcanvas
    + +
    + +
    +
    + Some text as placeholder. In real life you can have the elements you have chosen. Like, + text, + images, lists, etc. +
    +
    List
    +
      +
    • Nemo enim ipsam voluptatem quia aspernatur
    • +
    • Neque porro quisquam est, qui dolorem
    • +
    • Quis autem vel eum iure qui in ea
    • +
    +
    +
    +
    +
    +
    +
    + + +{% endblock content %} + +{% block extra_js %} + + + + +{% endblock extra_js %} \ No newline at end of file diff --git a/pxy_dashboard/templates/pxy_dashboard/components/base-ui/pagination.html b/pxy_dashboard/templates/pxy_dashboard/components/base-ui/pagination.html new file mode 100644 index 0000000..0c8dde6 --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/components/base-ui/pagination.html @@ -0,0 +1,189 @@ +{% extends "partials/base.html" %} +{% load static %} + +{% block title %}Pagination{% endblock title %} + +{% block extra_css %} +{% endblock extra_css %} + + +{% block pagetitle %} +{% include "partials/page-title.html" with pagetitle="Base UI" title="Pagination" %} +{% endblock pagetitle %} + +{% block content %} +
    +
    +
    +
    +

    Default Pagination

    +

    Simple pagination inspired by Rdio, great for apps and search results.

    + + +
    +
    + +
    +
    +

    Disabled and active states

    +

    Pagination links are customizable for different circumstances. Use + .disabled for links that appear un-clickable and .active to indicate the + current page. +

    + + +
    +
    + +
    +
    +

    Alignment

    +

    Change the alignment of pagination components with flexbox utilities.

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

    Rounded Pagination

    +

    Add .pagination-rounded for rounded pagination.

    + + +
    +
    + +
    +
    +

    Sizing

    +

    Add .pagination-lg or .pagination-sm for + additional sizes.

    + + + + +
    +
    +
    +
    + + + +{% endblock content %} + +{% block extra_js %} + + + + +{% endblock extra_js %} \ No newline at end of file diff --git a/pxy_dashboard/templates/pxy_dashboard/components/base-ui/placeholders.html b/pxy_dashboard/templates/pxy_dashboard/components/base-ui/placeholders.html new file mode 100644 index 0000000..18cf94e --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/components/base-ui/placeholders.html @@ -0,0 +1,171 @@ +{% extends "partials/base.html" %} +{% load static %} + +{% block title %}Placeholders{% endblock title %} + +{% block extra_css %} +{% endblock extra_css %} + + +{% block pagetitle %} +{% include "partials/page-title.html" with pagetitle="Base UI" title="Placeholders" %} +{% endblock pagetitle %} + +{% block content %} +
    +
    +
    +
    +

    Placeholders

    +

    + In the example below, we take a typical card component and recreate it with placeholders applied to + create a “loading card”. Size and proportions are the same between the two. +

    + +
    +
    +
    + ... + +
    +
    Card title
    +

    Some quick example text to build on the card title and make up the + bulk of the card's + content.

    + Go somewhere +
    +
    +
    + +
    + +
    +
    + +
    +
    +
    + +
    +
    +
    +

    Color

    +

    + By default, the placeholder uses currentColor. This can be overriden with + a custom color or utility class. +

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

    Width

    +

    + You can change the width through grid column classes, width utilities, or inline + styles. +

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

    Sizing

    +

    + The size of .placeholders are based on the typographic style of the parent element. + Customize them with sizing modifiers: .placeholder-lg, .placeholder-sm, or + .placeholder-xs. +

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

    How it works

    +

    + Create placeholders with the .placeholder class and a grid column class (e.g., + .col-6) to set the width. They can replace the text inside an element or + as be added as a modifier class to an existing component. +

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

    Animation

    +

    + Animate placehodlers with .placeholder-glow or .placeholder-wave to better + convey the perception of something being actively loaded. +

    + +

    + +

    + +

    + +

    +
    +
    +
    +
    + + +{% endblock content %} + +{% block extra_js %} + + + + +{% endblock extra_js %} \ No newline at end of file diff --git a/pxy_dashboard/templates/pxy_dashboard/components/base-ui/popovers.html b/pxy_dashboard/templates/pxy_dashboard/components/base-ui/popovers.html new file mode 100644 index 0000000..a564c6b --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/components/base-ui/popovers.html @@ -0,0 +1,155 @@ +{% extends "partials/base.html" %} +{% load static %} + +{% block title %}Popovers{% endblock title %} + +{% block extra_css %} +{% endblock extra_css %} + + +{% block pagetitle %} +{% include "partials/page-title.html" with pagetitle="Base UI" title="Popovers" %} +{% endblock pagetitle %} + +{% block content %} +
    +
    +
    +
    +

    Simple Popover

    +

    + Popover is a component which displays a box with a content after a click on an + element - similar to the tooltip but can contain more content. +

    + + +
    +
    + +
    +
    +

    Dismiss on Next Click

    +

    Use the focus trigger to dismiss popovers + on the user’s next click of a different element than the toggle element.

    + + +
    +
    + +
    +
    +

    Hover

    +

    Use the attribute data-bs-trigger="hover" + to show the popover on hovering the element.

    + + +
    +
    +
    + +
    +
    +
    +

    Four Directions

    +

    Four options are available: top, right, bottom, and + left aligned.

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

    Custom Popovers

    +

    You can customize the appearance of popovers using CSS variables. We set a + custom class with + data-bs-custom-class="primary-popover" to scope our custom appearance and use it to + override some of the + local CSS variables. +

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

    Disabled Elements

    +

    Elements with the disabled attribute + aren’t interactive, meaning users cannot hover or click them to trigger a + popover (or tooltip). As a workaround, you’ll want to trigger the popover from a + wrapper <div> or <span> and override the + pointer-events on the disabled element. +

    + + + + +
    +
    +
    +
    + + + +{% endblock content %} + +{% block extra_js %} + + + + +{% endblock extra_js %} \ No newline at end of file diff --git a/pxy_dashboard/templates/pxy_dashboard/components/base-ui/progress.html b/pxy_dashboard/templates/pxy_dashboard/components/base-ui/progress.html new file mode 100644 index 0000000..d09f53f --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/components/base-ui/progress.html @@ -0,0 +1,165 @@ +{% extends "partials/base.html" %} +{% load static %} + +{% block title %}Progress{% endblock title %} + +{% block extra_css %} +{% endblock extra_css %} + + +{% block pagetitle %} +{% include "partials/page-title.html" with pagetitle="Base UI" title="Progress" %} +{% endblock pagetitle %} + +{% block content %} +
    +
    +
    +
    +

    Examples

    +

    A progress bar can be used to show a user how far along he/she is in a process.

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

    Height

    +

    We only set a height value on the .progress, so if you change that value the inner .progress-bar will automatically resize accordingly. + Use .progress-sm,.progress-md,.progress-lg,.progress-xl classes. +

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

    Multiple bars

    +

    Include multiple progress bars in a progress component if you need.

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

    Animated stripes

    +

    The striped gradient can also be animated. Add .progress-bar-animated to .progress-bar to animate the stripes right to left via CSS3 animations.

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

    Labels

    +

    Add labels to your progress bars by placing text within the .progress-bar.

    + +
    +
    25%
    +
    +
    +
    + +
    +
    +

    Backgrounds

    +

    Use background utility classes to change the appearance of individual progress bars.

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

    Striped

    +

    Add .progress-bar-striped to any .progress-bar to apply a stripe via CSS gradient over the progress bar’s background color.

    + +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    + +
    +
    + + +{% endblock content %} + +{% block extra_js %} + + + + +{% endblock extra_js %} \ No newline at end of file diff --git a/pxy_dashboard/templates/pxy_dashboard/components/base-ui/spinners.html b/pxy_dashboard/templates/pxy_dashboard/components/base-ui/spinners.html new file mode 100644 index 0000000..e648133 --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/components/base-ui/spinners.html @@ -0,0 +1,181 @@ +{% extends "partials/base.html" %} +{% load static %} + +{% block title %}Spinners{% endblock title %} + +{% block extra_css %} +{% endblock extra_css %} + + +{% block pagetitle %} +{% include "partials/page-title.html" with pagetitle="Base UI" title="Spinners" %} +{% endblock pagetitle %} + +{% block content %} +
    +
    +
    +
    +

    Border Spinner

    +

    Use the border spinners for a lightweight loading indicator.

    + +
    + Loading... +
    +
    +
    + +
    +
    +

    Colors

    +

    You can use any + of our text color utilities on the standard spinner.

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

    Alignment

    +

    Use flexbox utilities, float utilities, or text alignment utilities to place + spinners exactly where you need them in any situation.

    + +
    +
    +
    +
    +
    + +
    +
    +

    Size

    +

    Add .spinner-border-sm and + .spinner-border.avatar-** to make a smaller spinner that can quickly be used within + other components. +

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

    Growing Spinner

    +

    If you don’t fancy a border spinner, switch to the grow spinner. While it + doesn’t technically spin, it does repeatedly grow!

    + +
    + Loading... +
    +
    +
    + +
    +
    +

    Color Growing Spinner

    +

    You can use any of our text color utilities on the standard spinner.

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

    Placement

    +

    Use flexbox utilities, float utilities, or + text alignment utilities to place spinners exactly where you need them in any + situation. +

    + +
    + Loading... + +
    +
    +
    + +
    +
    +

    Buttons Spinner

    +

    Use spinners within buttons to indicate an action is currently processing or + taking place. + You may also swap the text out of the spinner element and utilize button text as needed.

    + +
    +
    +
    + + +
    +
    +
    +
    + + +
    +
    +
    +
    +
    +
    +
    + + +{% endblock content %} + +{% block extra_js %} + + + + +{% endblock extra_js %} \ No newline at end of file diff --git a/pxy_dashboard/templates/pxy_dashboard/components/base-ui/tabs.html b/pxy_dashboard/templates/pxy_dashboard/components/base-ui/tabs.html new file mode 100644 index 0000000..75f25ff --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/components/base-ui/tabs.html @@ -0,0 +1,421 @@ +{% extends "partials/base.html" %} +{% load static %} + +{% block title %}Tabs{% endblock title %} + +{% block extra_css %} +{% endblock extra_css %} + + +{% block pagetitle %} +{% include "partials/page-title.html" with pagetitle="Base UI" title="Tabs" %} +{% endblock pagetitle %} + +{% block content %} +
    +
    +
    +
    +

    Default Tabs

    +

    Simple widget of tabbable panes of local content.

    + + + +
    +
    +

    Food truck quinoa dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget + dolor. Aenean massa. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur + ridiculus mus. Donec quam felis, ultricies nec, pellentesque eu, pretium quis, sem. Nulla + consequat massa quis enim.

    +

    Donec pede justo, fringilla vel, aliquet nec, vulputate eget, arcu. In enim + justo, rhoncus ut, imperdiet a, venenatis vitae, justo. Nullam dictum felis eu pede mollis + pretium. Integer tincidunt.Cras dapibus. Vivamus elementum semper nisi. Aenean vulputate + eleifend tellus. Aenean leo ligula, porttitor eu, consequat vitae, eleifend ac, enim.

    +
    +
    +

    Donec pede justo, fringilla vel, aliquet nec, vulputate eget, arcu. In enim justo, rhoncus + ut, imperdiet a, venenatis vitae, justo. Nullam dictum felis eu pede mollis pretium. Integer + tincidunt.Cras dapibus. Vivamus elementum semper nisi. Aenean vulputate eleifend tellus. + Aenean leo ligula, porttitor eu, consequat vitae, eleifend ac, enim.

    +

    Food truck quinoa dolor sit amet, consectetuer adipiscing elit. Aenean commodo + ligula eget dolor. Aenean massa. Cum sociis natoque penatibus et magnis dis parturient + montes, nascetur ridiculus mus. Donec quam felis, ultricies nec, pellentesque eu, pretium + quis, sem. Nulla consequat massa quis enim.

    +
    +
    +

    Food truck quinoa dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget + dolor. Aenean massa. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur + ridiculus mus. Donec quam felis, ultricies nec, pellentesque eu, pretium quis, sem. Nulla + consequat massa quis enim.

    +

    Donec pede justo, fringilla vel, aliquet nec, vulputate eget, arcu. In enim + justo, rhoncus ut, imperdiet a, venenatis vitae, justo. Nullam dictum felis eu pede mollis + pretium. Integer tincidunt.Cras dapibus. Vivamus elementum semper nisi. Aenean vulputate + eleifend tellus. Aenean leo ligula, porttitor eu, consequat vitae, eleifend ac, enim.

    +
    +
    +
    +
    +
    + +
    +
    +
    +

    Tabs Justified

    +

    Using class .nav-justified, you can force your + tab menu items to use the full available width.

    + + + +
    +
    +

    Leggings occaecat dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget + dolor. Aenean massa. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur + ridiculus mus. Donec quam felis, ultricies nec, pellentesque eu, pretium quis, sem. Nulla + consequat massa quis enim.

    +

    Donec pede justo, fringilla vel, aliquet nec, vulputate eget, arcu. In enim + justo, rhoncus ut, imperdiet a, venenatis vitae, justo. Nullam dictum felis eu pede mollis + pretium. Integer tincidunt.Cras dapibus. Vivamus elementum semper nisi. Aenean vulputate + eleifend tellus. Aenean leo ligula, porttitor eu, consequat vitae, eleifend ac, enim.

    +
    +
    +

    Donec pede justo, fringilla vel, aliquet nec, vulputate eget, arcu. In enim justo, rhoncus + ut, imperdiet a, venenatis vitae, justo. Nullam dictum felis eu pede mollis pretium. Integer + tincidunt.Cras dapibus. Vivamus elementum semper nisi. Aenean vulputate eleifend tellus. + Aenean leo ligula, porttitor eu, consequat vitae, eleifend ac, enim.

    +

    Leggings occaecat dolor sit amet, consectetuer adipiscing elit. Aenean commodo + ligula eget dolor. Aenean massa. Cum sociis natoque penatibus et magnis dis parturient + montes, nascetur ridiculus mus. Donec quam felis, ultricies nec, pellentesque eu, pretium + quis, sem. Nulla consequat massa quis enim.

    +
    +
    +

    Food truck quinoa dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget + dolor. Aenean massa. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur + ridiculus mus. Donec quam felis, ultricies nec, pellentesque eu, pretium quis, sem. Nulla + consequat massa quis enim.

    +

    Donec pede justo, fringilla vel, aliquet nec, vulputate eget, arcu. In enim + justo, rhoncus ut, imperdiet a, venenatis vitae, justo. Nullam dictum felis eu pede mollis + pretium. Integer tincidunt.Cras dapibus. Vivamus elementum semper nisi. Aenean vulputate + eleifend tellus. Aenean leo ligula, porttitor eu, consequat vitae, eleifend ac, enim.

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

    Tabs Vertical Left

    +

    + You can stack your navigation by changing the flex item direction with the .flex-column + utility. +

    + +
    + + +
    +
    +
    +

    Cillum ad ut irure tempor velit nostrud occaecat ullamco aliqua anim + Leggings sint. Veniam sint duis incididunt + do esse magna mollit excepteur laborum qui. Id id reprehenderit sit est eu aliqua + occaecat quis et velit + excepteur laborum mollit dolore eiusmod. Ipsum dolor in occaecat commodo et + voluptate minim reprehenderit + mollit pariatur. Deserunt non laborum enim et cillum eu deserunt excepteur ea + incididunt minim occaecat.

    +
    +
    +

    Culpa dolor voluptate do laboris laboris irure reprehenderit id + incididunt duis pariatur mollit aute magna + pariatur consectetur. Eu veniam duis non ut dolor deserunt commodo et minim in quis + laboris ipsum velit + id veniam. Quis ut consectetur adipisicing officia excepteur non sit. Ut et elit + aliquip labore Leggings + enim eu. Ullamco mollit occaecat dolore ipsum id officia mollit qui esse anim + eiusmod do sint minim consectetur + qui.

    +
    +
    +

    Food truck quinoa dolor sit amet, consectetuer adipiscing elit. Aenean + commodo ligula eget dolor. Aenean massa. Cum sociis + natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Donec + quam felis, ultricies nec, pellentesque + eu, pretium quis, sem. Nulla consequat massa quis enim. Cillum ad ut irure tempor + velit nostrud occaecat ullamco + aliqua anim Leggings sint. Veniam sint duis incididunt do esse magna mollit + excepteur laborum qui.

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

    Tabs Vertical Right

    +

    + You can stack your navigation by changing the flex item direction with the .flex-column + utility. +

    + +
    +
    +
    +
    +

    Cillum ad ut irure tempor velit nostrud occaecat ullamco aliqua anim + Leggings sint. Veniam sint duis incididunt + do esse magna mollit excepteur laborum qui. Id id reprehenderit sit est eu aliqua + occaecat quis et velit + excepteur laborum mollit dolore eiusmod. Ipsum dolor in occaecat commodo et + voluptate minim reprehenderit + mollit pariatur. Deserunt non laborum enim et cillum eu deserunt excepteur ea + incididunt minim occaecat.

    +
    +
    +

    Culpa dolor voluptate do laboris laboris irure reprehenderit id + incididunt duis pariatur mollit aute magna + pariatur consectetur. Eu veniam duis non ut dolor deserunt commodo et minim in quis + laboris ipsum velit + id veniam. Quis ut consectetur adipisicing officia excepteur non sit. Ut et elit + aliquip labore Leggings + enim eu. Ullamco mollit occaecat dolore ipsum id officia mollit qui esse anim + eiusmod do sint minim consectetur + qui.

    +
    +
    +

    Food truck quinoa dolor sit amet, consectetuer adipiscing elit. Aenean + commodo ligula eget dolor. Aenean massa. Cum sociis + natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Donec + quam felis, ultricies nec, pellentesque + eu, pretium quis, sem. Nulla consequat massa quis enim. Cillum ad ut irure tempor + velit nostrud occaecat ullamco + aliqua anim Leggings sint. Veniam sint duis incididunt do esse magna mollit + excepteur laborum qui.

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

    Tabs Bordered

    +

    + The navigation item can have a simple bottom border as well. Just specify the class + .nav-bordered. +

    + + + +
    +
    +

    Leggings occaecat dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget + dolor. Aenean massa. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur + ridiculus mus. Donec quam felis, ultricies nec, pellentesque eu, pretium quis, sem. Nulla + consequat massa quis enim.

    +

    Donec pede justo, fringilla vel, aliquet nec, vulputate eget, arcu. In enim + justo, rhoncus ut, imperdiet a, venenatis vitae, justo. Nullam dictum felis eu pede mollis + pretium. Integer tincidunt.Cras dapibus. Vivamus elementum semper nisi. Aenean vulputate + eleifend tellus. Aenean leo ligula, porttitor eu, consequat vitae, eleifend ac, enim.

    +
    +
    +

    Donec pede justo, fringilla vel, aliquet nec, vulputate eget, arcu. In enim justo, rhoncus + ut, imperdiet a, venenatis vitae, justo. Nullam dictum felis eu pede mollis pretium. Integer + tincidunt.Cras dapibus. Vivamus elementum semper nisi. Aenean vulputate eleifend tellus. + Aenean leo ligula, porttitor eu, consequat vitae, eleifend ac, enim.

    +

    Leggings occaecat dolor sit amet, consectetuer adipiscing elit. Aenean commodo + ligula eget dolor. Aenean massa. Cum sociis natoque penatibus et magnis dis parturient + montes, nascetur ridiculus mus. Donec quam felis, ultricies nec, pellentesque eu, pretium + quis, sem. Nulla consequat massa quis enim.

    +
    +
    +

    Food truck quinoa dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget + dolor. Aenean massa. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur + ridiculus mus. Donec quam felis, ultricies nec, pellentesque eu, pretium quis, sem. Nulla + consequat massa quis enim.

    +

    Donec pede justo, fringilla vel, aliquet nec, vulputate eget, arcu. In enim + justo, rhoncus ut, imperdiet a, venenatis vitae, justo. Nullam dictum felis eu pede mollis + pretium. Integer tincidunt.Cras dapibus. Vivamus elementum semper nisi. Aenean vulputate + eleifend tellus. Aenean leo ligula, porttitor eu, consequat vitae, eleifend ac, enim.

    +
    +
    +
    +
    +
    + +
    +
    +
    +

    Tabs Bordered Justified

    +

    + The navigation item with a simple bottom border and justified +

    + + + +
    +
    +

    Leggings occaecat dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget + dolor. Aenean massa. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur + ridiculus mus. Donec quam felis, ultricies nec, pellentesque eu, pretium quis, sem. Nulla + consequat massa quis enim.

    +

    Donec pede justo, fringilla vel, aliquet nec, vulputate eget, arcu. In enim + justo, rhoncus ut, imperdiet a, venenatis vitae, justo. Nullam dictum felis eu pede mollis + pretium. Integer tincidunt.Cras dapibus. Vivamus elementum semper nisi. Aenean vulputate + eleifend tellus. Aenean leo ligula, porttitor eu, consequat vitae, eleifend ac, enim.

    +
    +
    +

    Donec pede justo, fringilla vel, aliquet nec, vulputate eget, arcu. In enim justo, rhoncus + ut, imperdiet a, venenatis vitae, justo. Nullam dictum felis eu pede mollis pretium. Integer + tincidunt.Cras dapibus. Vivamus elementum semper nisi. Aenean vulputate eleifend tellus. + Aenean leo ligula, porttitor eu, consequat vitae, eleifend ac, enim.

    +

    Leggings occaecat dolor sit amet, consectetuer adipiscing elit. Aenean commodo + ligula eget dolor. Aenean massa. Cum sociis natoque penatibus et magnis dis parturient + montes, nascetur ridiculus mus. Donec quam felis, ultricies nec, pellentesque eu, pretium + quis, sem. Nulla consequat massa quis enim.

    +
    +
    +

    Food truck quinoa dolor sit amet, consectetuer adipiscing elit. Aenean commodo ligula eget + dolor. Aenean massa. Cum sociis natoque penatibus et magnis dis parturient montes, nascetur + ridiculus mus. Donec quam felis, ultricies nec, pellentesque eu, pretium quis, sem. Nulla + consequat massa quis enim.

    +

    Donec pede justo, fringilla vel, aliquet nec, vulputate eget, arcu. In enim + justo, rhoncus ut, imperdiet a, venenatis vitae, justo. Nullam dictum felis eu pede mollis + pretium. Integer tincidunt.Cras dapibus. Vivamus elementum semper nisi. Aenean vulputate + eleifend tellus. Aenean leo ligula, porttitor eu, consequat vitae, eleifend ac, enim.

    +
    +
    +
    +
    +
    +
    + + +{% endblock content %} + +{% block extra_js %} + + + + +{% endblock extra_js %} \ No newline at end of file diff --git a/pxy_dashboard/templates/pxy_dashboard/components/base-ui/tooltips.html b/pxy_dashboard/templates/pxy_dashboard/components/base-ui/tooltips.html new file mode 100644 index 0000000..4d419db --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/components/base-ui/tooltips.html @@ -0,0 +1,137 @@ +{% extends "partials/base.html" %} +{% load static %} + +{% block title %}Tooltips{% endblock title %} + +{% block extra_css %} +{% endblock extra_css %} + + +{% block pagetitle %} +{% include "partials/page-title.html" with pagetitle="Base UI" title="Tooltips" %} +{% endblock pagetitle %} + +{% block content %} +
    +
    +
    +
    +

    Examples

    +

    Hover over the links below to see tooltips.

    + +

    + Tight pants next level keffiyeh you probably haven't heard + of them. Photo booth beard raw denim letterpress vegan messenger bag + stumptown. Farm-to-table Photo booth beard seitan, mcsweeney's fixie sustainable quinoa + 8-bit american apparel have + a terry richardson + vinyl chambray. Beard stumptown, cardigans banh mi lomo thundercats. + Tofu biodiesel williamsburg marfa, four loko mcsweeney's cleanse vegan + chambray. A really ironic artisan whatever + keytar, scenester farm-to-table banksy Austin twitter handle freegan cred + raw denim single-origin coffee viral. +

    +
    +
    + +
    +
    +

    Disabled elements

    +

    Elements with the disabled attribute + aren’t interactive, meaning users cannot focus, hover, or click them to trigger + a tooltip (or popover). As a workaround, you’ll want to trigger the tooltip from + a wrapper <div> or <span>, ideally made + keyboard-focusable using tabindex="0", and override the + pointer-events on the disabled element. +

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

    Four Directions

    +

    Hover over the buttons below to see the four tooltips + directions: top, right, bottom, and left.

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

    HTML Tags

    +

    And with custom HTML added:

    + + +
    +
    + +
    +
    +

    Color Tooltips

    +

    We set a custom class with ex. + data-bs-custom-class="primary-tooltip" to scope our background-color primary appearance + and use + it to override a local CSS + variable.

    + +
    + + + + +
    +
    +
    +
    +
    + + + +{% endblock content %} + +{% block extra_js %} + + + + +{% endblock extra_js %} \ No newline at end of file diff --git a/pxy_dashboard/templates/pxy_dashboard/components/base-ui/typography.html b/pxy_dashboard/templates/pxy_dashboard/components/base-ui/typography.html new file mode 100644 index 0000000..f66be58 --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/components/base-ui/typography.html @@ -0,0 +1,461 @@ +{% extends "partials/base.html" %} +{% load static %} + +{% block title %}Typography{% endblock title %} + +{% block extra_css %} +{% endblock extra_css %} + + +{% block pagetitle %} +{% include "partials/page-title.html" with pagetitle="Base UI" title="Typography" %} +{% endblock pagetitle %} + +{% block content %} +
    +
    +
    +
    +

    Display headings

    +

    Traditional heading elements are designed to work best in the meat of your + page content. When you need a heading to stand out, consider using a display heading—a larger, + slightly more opinionated heading style.

    + +

    Display 1

    +

    Suspendisse vel quam malesuada, aliquet sem sit + amet, fringilla elit. Morbi + tempor tincidunt tempor. Etiam id turpis viverra, vulputate sapien + nec, + varius sem. Curabitur ullamcorper fringilla eleifend. In ut eros + hendrerit + est consequat posuere et at velit.

    + +
    + +

    Display 2

    +

    In nec rhoncus eros. Vestibulum eu mattis nisl. + Quisque viverra viverra magna + nec pulvinar. Maecenas pellentesque porta augue, consectetur + facilisis diam + porttitor sed. Suspendisse tempor est sodales augue rutrum + tincidunt. + Quisque a malesuada purus.

    + +
    + +

    Display 3

    +

    Vestibulum auctor tincidunt semper. Phasellus ut + vulputate lacus. Suspendisse + ultricies mi eros, sit amet tempor nulla varius sed. Proin nisl + nisi, + feugiat quis bibendum vitae, dapibus in tellus.

    + +
    + +

    Display 4

    +

    Nulla et mattis nunc. Curabitur scelerisque + commodo condimentum. Mauris + blandit, velit a consectetur egestas, diam arcu fermentum justo, + eget + ultrices arcu eros vel erat.

    + +
    + +

    Display 5

    +

    Nulla et mattis nunc. Curabitur scelerisque + commodo condimentum. Mauris + blandit, velit a consectetur egestas, diam arcu fermentum justo, + eget.

    + +
    + +

    Display 6

    +

    Nulla et mattis nunc. Curabitur scelerisque + commodo condimentum. Mauris + blandit, velit a consectetur egestas.

    +
    +
    +
    +
    + + +
    +
    +
    +
    +

    Headings

    +

    All HTML headings, <h1> through + <h6>, are available. .h1 through .h6 + classes are also available, for when you want to match the font styling of a heading + but still want your text to be displayed inline. +

    + +

    This is a Heading 1

    +

    Suspendisse vel quam malesuada, aliquet sem sit + amet, fringilla elit. Morbi + tempor tincidunt tempor. Etiam id turpis viverra, vulputate sapien + nec, + varius sem. Curabitur ullamcorper fringilla eleifend. In ut eros + hendrerit + est consequat posuere et at velit.

    + +
    + +

    This is a Heading 2

    +

    In nec rhoncus eros. Vestibulum eu mattis nisl. + Quisque viverra viverra magna + nec pulvinar. Maecenas pellentesque porta augue, consectetur + facilisis diam + porttitor sed. Suspendisse tempor est sodales augue rutrum + tincidunt. + Quisque a malesuada purus.

    + +
    + +

    This is a Heading 3

    +

    Vestibulum auctor tincidunt semper. Phasellus ut + vulputate lacus. Suspendisse + ultricies mi eros, sit amet tempor nulla varius sed. Proin nisl + nisi, + feugiat quis bibendum vitae, dapibus in tellus.

    + +
    + +

    This is a Heading 4

    +

    Nulla et mattis nunc. Curabitur scelerisque + commodo condimentum. Mauris + blandit, velit a consectetur egestas, diam arcu fermentum justo, + eget + ultrices arcu eros vel erat.

    + +
    + +
    This is a Heading 5
    +

    Quisque nec turpis at urna dictum luctus. + Suspendisse convallis dignissim + eros at volutpat. In egestas mattis dui. Aliquam mattis dictum + aliquet. + Nulla sapien mauris, eleifend et sem ac, commodo dapibus odio. + Vivamus + pretium nec odio cursus elementum. Suspendisse molestie ullamcorper + ornare.

    + +
    + +
    This is a Heading 6
    +

    Donec ultricies, lacus id tempor condimentum, orci + leo faucibus sem, a + molestie libero lectus ac justo. ultricies mi eros, sit amet tempor + nulla + varius sed. Proin nisl nisi, feugiat quis bibendum vitae, dapibus in + tellus.

    +
    +
    +
    +
    + + +
    +
    +
    +
    +

    Inline text elements

    +

    Styling for common inline HTML5 elements.

    + +

    + Your title goes here +

    + +

    You can use the mark tag to highlight text.

    +

    This line of text is meant to be treated as deleted text.

    +

    This line of text is meant to be treated as no longer accurate.

    +

    This line of text is meant to be treated as an addition to the document.

    +

    This line of text will render as underlined

    +

    This line of text is meant to be treated as fine print.

    +

    This line rendered as bold text.

    +

    This line rendered as italicized text.

    + Nulla attr vitae elit libero, a pharetra augue. +
    +
    +
    + +
    +
    +
    +

    Contextual Text Colors

    +

    Available color variations.

    + +

    + Fusce dapibus, tellus ac cursus commodo, tortor mauris nibh. +

    +

    + Nullam id dolor id nibh ultricies vehicula ut id elit. +

    +

    + Duis mollis, est non commodo luctus, nisi erat porttitor ligula. +

    +

    + Maecenas sed diam eget risus varius blandit sit amet non magna. +

    +

    + Etiam porta sem malesuada magna mollis euismod. +

    +

    + Donec ullamcorper nulla non metus auctor fringilla. +

    +

    + Nullam id dolor id nibh ultricies vehicula ut id elit. +

    +

    + Fusce dapibus, tellus ac cursus commodo, tortor mauris nibh. +

    +

    + Nullam id dolor id nibh ultricies vehicula ut id elit. +

    +

    + Duis mollis, est non commodo luctus, nisi erat porttitor ligula. +

    +
    +
    +
    +
    + + +
    +
    +
    +
    +

    Unordered

    +

    A list of items in which the order does not explicitly matter.

    + +
      +
    • + Lorem ipsum dolor sit amet +
    • +
    • + Consectetur adipiscing elit +
    • +
    • + Integer molestie lorem at massa +
    • +
    • + Facilisis in pretium nisl aliquet +
    • +
    • + Nulla volutpat aliquam velit +
        +
      • + Phasellus iaculis neque +
      • +
      • + Purus sodales ultricies +
      • +
      • + Vestibulum laoreet porttitor sem +
      • +
      • + Ac tristique libero volutpat at +
      • +
      +
    • +
    • + Faucibus porta lacus fringilla vel +
    • +
    • + Aenean sit amet erat nunc +
    • +
    • + Eget porttitor lorem +
    • +
    +
    +
    +
    + +
    +
    +
    +

    Ordered

    +

    A list of items in which the order does explicitly matter.

    + +
      +
    1. + Lorem ipsum dolor sit amet +
    2. +
    3. + Consectetur adipiscing elit +
    4. +
    5. + Integer molestie lorem at massa +
    6. +
    7. + Facilisis in pretium nisl aliquet +
    8. +
    9. + Nulla volutpat aliquam velit +
        +
      1. + Phasellus iaculis neque +
      2. +
      3. + Purus sodales ultricies +
      4. +
      5. + Vestibulum laoreet porttitor sem +
      6. +
      7. + Ac tristique libero volutpat at +
      8. +
      +
    10. +
    11. + Faucibus porta lacus fringilla vel +
    12. +
    13. + Aenean sit amet erat nunc +
    14. +
    15. + Eget porttitor lorem +
    16. +
    +
    +
    +
    + +
    +
    +
    +

    Unstyled

    +

    This only applies to immediate children + list items, meaning you will need to add the class for any nested lists as well.

    + +
      +
    • + Lorem ipsum dolor sit amet +
    • +
    • + Integer molestie lorem at massa +
        +
      • + Phasellus iaculis neque +
      • +
      +
    • +
    • + Faucibus porta lacus fringilla vel +
    • +
    • + Eget porttitor lorem +
    • +
    + +
    Inline
    +

    + Place all list items on a single line with + display: inline-block; + and some light padding. +

    + +
      +
    • + Lorem ipsum +
    • +
    • + Phasellus iaculis +
    • +
    • + Nulla volutpat +
    • +
    +
    +
    +
    +
    + + +
    +
    +
    +
    +

    Blockquotes

    +

    For quoting blocks of content from another source within your document. Wrap + <blockquote class="blockquote"> around any HTML as the quote.

    + +
    +

    Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere erat a + ante.

    +
    + + +

    + Use text utilities as needed to change the alignment of your blockquote. +

    + +
    +

    Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere erat a + ante.

    +
    + + +
    +

    Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere erat a + ante.

    +
    + +
    +
    +
    + +
    +
    +
    +

    Description list alignment

    +

    Align terms and descriptions horizontally by using our grid system’s + predefined classes (or semantic mixins). For longer terms, you can optionally add a + .text-truncate class to truncate the text with an ellipsis.

    + +
    +
    Description lists
    +
    A description list is perfect for defining terms.
    + +
    Euismod
    +
    +

    Vestibulum id ligula porta felis euismod semper eget lacinia odio sem nec elit.

    +

    Donec id elit non mi porta gravida at eget metus.

    +
    + +
    Malesuada porta
    +
    Etiam porta sem malesuada magna mollis euismod.
    + +
    Truncated term is truncated
    +
    Fusce dapibus, tellus ac cursus commodo, tortor mauris condimentum nibh, ut + fermentum massa justo sit amet risus.
    + +
    Nesting
    +
    +
    +
    Nested definition list
    +
    Aenean posuere, tortor sed cursus feugiat, nunc augue blandit nunc. +
    +
    +
    +
    +
    +
    +
    +
    + + + +{% endblock content %} + +{% block extra_js %} + + + + +{% endblock extra_js %} \ No newline at end of file diff --git a/pxy_dashboard/templates/pxy_dashboard/components/base-ui/utilities.html b/pxy_dashboard/templates/pxy_dashboard/components/base-ui/utilities.html new file mode 100644 index 0000000..90f9280 --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/components/base-ui/utilities.html @@ -0,0 +1,763 @@ +{% extends "partials/base.html" %} +{% load static %} + +{% block title %}Utilities{% endblock title %} + +{% block extra_css %} +{% endblock extra_css %} + + +{% block pagetitle %} +{% include "partials/page-title.html" with pagetitle="Base UI" title="Utilitiess" %} +{% endblock pagetitle %} + +{% block content %} +
    +
    +
    +
    +

    Background Color

    +

    Similar to the contextual text color classes, set the background of an + element to any contextual class. Background + utilities do not set color, so in some cases you’ll want to use + .text-*color utilities. +

    + +
    .bg-primary
    +
    .bg-secondary
    +
    .bg-success
    +
    .bg-danger
    +
    .bg-warning
    +
    .bg-info
    +
    .bg-light
    +
    .bg-dark
    +
    .bg-body
    +
    .bg-body-secondary
    +
    .bg-body-tertiary
    +
    .bg-white
    +
    .bg-black
    +
    .bg-transparent
    +
    +
    +
    + +
    +
    +
    +

    Background Gradient Color

    +

    By adding a .bg-gradient class, a linear gradient is added as + background image to the backgrounds. This + gradient starts with a semi-transparent white which fades out to the bottom.

    + +
    .bg-gradient.bg-primary
    +
    .bg-secondary.bg-gradient
    +
    .bg-success.bg-gradient
    +
    .bg-danger.bg-gradient
    +
    .bg-warning.bg-gradient
    +
    .bg-info.bg-gradient
    +
    .bg-light.bg-gradient
    +
    .bg-dark.bg-gradient
    +
    .bg-black.bg-gradient
    +
    +
    +
    +
    + + +
    +
    +
    +
    +

    Soft background

    +

    Similar to the contextual text color classes, set the background of an + element to any contextual class. Background utilities do not set color, so in some + cases you’ll want to use .text-* color utilities.

    +
    +
    +
    +
    .text-primary-subtle
    +
    .bg-secondary-subtle
    +
    .bg-success-subtle
    +
    .bg-danger-subtle
    +
    .bg-warning-subtle
    +
    .bg-info-subtle +
    +
    .bg-light-subtle +
    +
    .bg-dark-subtle +
    +
    +
    +
    +
    +
    +
    + +
    +
    +
    +

    Color & background

    +

    Color and background helpers combine the power of our .text-* + utilities and .bg-* utilities in one class. Using our Sass + color-contrast() function, we automatically determine a contrasting color + for a particular background-color. +

    +
    +
    Primary with contrasting color (.text-bg-primary)
    +
    Secondary with contrasting color (.text-bg-secondary)
    +
    Success with contrasting color (.text-bg-success)
    +
    Danger with contrasting color (.text-bg-danger)
    +
    Warning with contrasting color (.text-bg-warning)
    +
    Info with contrasting color (.text-bg-info)
    +
    Light with contrasting color (.text-bg-light)
    +
    Dark with contrasting color (.text-bg-dark)
    +
    +
    +
    +
    +
    + +
    +
    +
    +
    +

    Background Opacity

    +

    background-color utilities are generated with Sass using CSS + variables. This + allows for real-time color changes without compilation and dynamic alpha transparency changes.

    + +
    This is default primary background
    +
    This is 75% opacity primary background
    +
    This is 50% opacity primary background
    +
    This is 25% opacity primary background
    +
    This is 10% opacity success background
    +
    +
    +
    +
    + + +
    +
    +
    +
    +

    Text Color

    +

    Colorize text with color utilities. If you want to colorize links, you can + use the .link-* helper classes which have :hover + and :focus states.

    + +
    +
    +

    .text-primary

    +

    .text-primary-emphasis

    +

    .text-secondary

    +

    .text-secondary-emphasis

    +

    .text-success

    +

    .text-success-emphasis

    +

    .text-danger

    +

    .text-danger-emphasis

    +

    .text-warning

    +

    .text-warning-emphasis

    +

    .text-info

    +

    .text-info-emphasis

    +

    .text-light

    +

    .text-light-emphasis

    +
    +
    +

    .text-dark

    +

    .text-dark-emphasis

    +

    .text-muted

    +

    .text-body

    +

    .text-body-emphasis

    +

    .text-body-secondary

    +

    .text-body-tertiary

    +

    .text-black

    +

    .text-white

    +

    .text-black-50

    +

    .text-white-50

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

    Text Opacity Color

    +

    text color utilities are generated with Sass using CSS variables. This + allows for real-time color + changes without compilation and dynamic alpha transparency changes.

    + +
    This is default primary text
    +
    This is 75% opacity primary text
    +
    This is 50% opacity primary text
    +
    This is 25% opacity primary text
    +
    +
    +
    + +
    +
    +
    +

    Opacity

    +

    The opacity property sets the opacity level for an element. + The opacity level describes the transparency + level, where 1 is not transparent at all, .5 is 50% visible, and + 0 is + completely transparent. Set the opacity of an element using + .opacity-{value} utilities. +

    + +
    +
    100%
    +
    75%
    +
    50%
    +
    25%
    +
    +
    +
    +
    +
    + + +
    +
    +
    +
    +

    Additive(Add) Border

    +

    Use border utilities to add an element’s borders. Choose from all + borders or one at a time.

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

    Subtractive(Remove) Border

    +

    Use border utilities to remove an element’s borders. Choose from + all borders or one at a time.

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

    Border Color

    +

    Change the border color using utilities built on our theme colors.

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

    Border Width Size

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

    Border Opacity

    +

    choose from any of the .border-opacity utilities:

    + +
    This is default success border
    +
    This is 75% opacity success border +
    +
    This is 50% opacity success border +
    +
    This is 25% opacity success border +
    +
    This is 10% opacity success border
    +
    +
    +
    +
    + + +
    +
    +
    +
    +

    Border subtle Color

    +

    Change the border color using utilities built on our theme colors.

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

    Border Radius

    +

    Add classes to an element to easily round its corners.

    + +
    + rounded + rounded-top + rounded-end + rounded-bottom + rounded-start + rounded-circle + rounded-pill +
    +
    +
    +
    + +
    +
    +
    +

    Border Radius Size

    +

    Use the scaling classes for larger or smaller rounded corners. Sizes + range from 0 to 5.

    + +
    + rounded-0 + rounded-1 + rounded-2 + rounded-3 + rounded-4 + rounded-5 +
    +
    +
    +
    +
    + + + +
    +
    +
    +
    +

    Text Selection

    +

    Use user-select-all, user-select-auto, or + user-select-none class to the content which is selected when the user interacts + with it. +

    + +

    This paragraph will be entirely selected when clicked by the user.

    +

    This paragraph has default select behavior.

    +

    This paragraph will not be selectable when clicked by the user.

    +
    +
    +
    + +
    +
    +
    +

    Pointer Events

    +

    Bootstrap provides .pe-none and .pe-auto + classes to prevent or add element interactions.

    + +

    This link can not be clicked. +

    +

    This link can be clicked (this is default behavior).

    +

    This link can not be clicked + because the + pointer-events property is inherited from its parent. However, this + link has a pe-auto class and can be clicked. +

    +
    +
    +
    +
    + + +
    +
    +
    +
    +

    Overflow

    +

    Adjust the overflow property on the fly with four default + values and classes. These classes are not + responsive by default.

    + +
    +
    + This is an example of using .overflow-auto on an element with set width and + height dimensions. By + design, this content will vertically scroll. +
    +
    + This is an example of using .overflow-hidden on an element with set width and + height dimensions. +
    +
    + This is an example of using .overflow-visible on an element with set width and + height dimensions. +
    +
    + This is an example of using .overflow-scroll on an element with set width and + height dimensions. +
    +
    +
    +
    +
    +
    + + +
    +
    +
    +
    +

    Position in Arrange

    +

    Arrange elements easily with the edge positioning utilities. The format + is {property}-{position}.

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

    Position in Center

    +

    In addition, you can also center the elements with the transform utility + class .translate-middle.

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

    Position in Axis

    +

    By adding .translate-middle-x or + .translate-middle-y classes, elements can be positioned only in horizontal or + vertical direction. +

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

    Shadows

    +

    While shadows on components are disabled by default in Bootstrap and can + be enabled via + $enable-shadows, you can also quickly add or remove a shadow with our + box-shadow utility + classes. Includes support for .shadow-none and three default sizes (which have + associated variables to + match). +

    + +
    No shadow
    +
    Small shadow
    +
    Regular shadow
    +
    Larger shadow
    +
    +
    +
    +
    + + + +
    +
    +
    +
    +

    Width

    +

    Width utilities are generated from the utility API in + _utilities.scss. Includes support for + 25%, 50%, 75%, 100%, and auto + by default. Modify + those values as you need to generate different utilities here. +

    + + +
    Width 25%
    + +
    Width 50%
    + +
    Width 75%
    + +
    Width 100%
    + +
    Width auto
    +
    +
    +
    + +
    +
    +
    +

    Height

    +

    Height utilities are generated from the utility API in + _utilities.scss. Includes support for + 25%, 50%, 75%, 100%, and auto + by default. Modify + those values as you need to generate different utilities here. +

    + +
    + +
    Height25%
    + +
    Height50%
    + +
    Height75%
    + +
    Height100%
    + +
    Height auto
    +
    +
    +
    +
    +
    + + +
    +
    +
    +
    +

    Object fit

    +

    Change the value of the object-fit + property with our responsive object-fit utility classes. This property + tells the content to fill the parent container in a variety of ways, such as preserving the + aspect ratio or stretching to take up as much space as possible.

    + +
    +
    + ... +

    .object-fit-contain

    +
    +
    + ... +

    .object-fit-cover

    +
    +
    + ... +

    .object-fit-fill

    +
    +
    + ... +

    .object-fit-scale

    +
    +
    + ... +

    .object-fit-none

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

    Object fit

    +

    Change the value of the object-fit + property with our responsive object-fit utility classes. This property + tells the content to fill the parent container in a variety of ways, such as preserving the + aspect ratio or stretching to take up as much space as possible.

    + +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    + + + {% endblock content %} + + {% block extra_js %} + + + + + {% endblock extra_js %} \ No newline at end of file diff --git a/pxy_dashboard/templates/pxy_dashboard/components/charts/__init__.py b/pxy_dashboard/templates/pxy_dashboard/components/charts/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/pxy_dashboard/templates/pxy_dashboard/components/charts/apex-charts/__init__.py b/pxy_dashboard/templates/pxy_dashboard/components/charts/apex-charts/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/pxy_dashboard/templates/pxy_dashboard/components/charts/apex-charts/apex-area.html b/pxy_dashboard/templates/pxy_dashboard/components/charts/apex-charts/apex-area.html new file mode 100644 index 0000000..71c84b8 --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/components/charts/apex-charts/apex-area.html @@ -0,0 +1,178 @@ +{% extends "partials/base.html" %} +{% load static %} + +{% block title %}Apex Area Chart{% endblock title %} + +{% block extra_css %} +{% endblock extra_css %} + + +{% block pagetitle %} +{% include "partials/page-title.html" with pagetitle="Apex" title="Area Charts" %} +{% endblock pagetitle %} + +{% block content %} + +
    +
    +
    +
    +

    Basic Area Chart

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

    Spline Area

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

    Area Chart - Datetime X-axis

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

    Area with Negative Values

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

    Selection - Github Style

    +
    +
    +
    +
    +
    + file-image +
    + +
    +
    +
    +
    +
    + +
    + +
    + + +
    +
    +
    +

    Stacked Area

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

    Irregular TimeSeries

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

    Area Chart with Null values

    +
    +
    +
    +
    + +
    + +
    + +
    + + + +{% endblock content %} + +{% block extra_js %} + + + + + + + + + + + + + + + +{% endblock extra_js %} + diff --git a/pxy_dashboard/templates/pxy_dashboard/components/charts/apex-charts/apex-bar.html b/pxy_dashboard/templates/pxy_dashboard/components/charts/apex-charts/apex-bar.html new file mode 100644 index 0000000..c45c9b1 --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/components/charts/apex-charts/apex-bar.html @@ -0,0 +1,186 @@ +{% extends "partials/base.html" %} +{% load static %} + +{% block title %}Apex Bar Charts{% endblock title %} + +{% block extra_css %} +{% endblock extra_css %} + + +{% block pagetitle %} +{% include "partials/page-title.html" with pagetitle="Bar Charts" title="Apex" %} +{% endblock pagetitle %} + +{% block content %} +
    +
    +
    +
    +

    Basic Bar Chart

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

    Grouped Bar Chart

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

    Stacked Bar Chart

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

    100% Stacked Bar Chart

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

    Bar with Negative Values

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

    Reversed Bar Chart

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

    Bar with Image Fill

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

    Custom DataLabels Bar

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

    Patterned Bar Chart

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

    Bar with Markers

    +
    +
    +
    +
    + +
    + +
    + +
    + + + + +{% endblock content %} + +{% block extra_js %} + + + + + + + + + + +{% endblock extra_js %} + diff --git a/pxy_dashboard/templates/pxy_dashboard/components/charts/apex-charts/apex-boxplot.html b/pxy_dashboard/templates/pxy_dashboard/components/charts/apex-charts/apex-boxplot.html new file mode 100644 index 0000000..4b64078 --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/components/charts/apex-charts/apex-boxplot.html @@ -0,0 +1,79 @@ +{% extends "partials/base.html" %} +{% load static %} + +{% block title %}Apex Boxplot Charts{% endblock title %} + +{% block extra_css %} +{% endblock extra_css %} + + +{% block pagetitle %} +{% include "partials/page-title.html" with pagetitle="Boxplot Charts" title="Apex" %} +{% endblock pagetitle %} + +{% block content %} +
    +
    +
    +
    +

    Basic Boxplot

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

    Scatter Boxplot

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

    Horizontal BoxPlot

    +
    +
    +
    +
    + +
    + +
    + +
    + + + + +{% endblock content %} + +{% block extra_js %} + + + + + + + + + + +{% endblock extra_js %} + diff --git a/pxy_dashboard/templates/pxy_dashboard/components/charts/apex-charts/apex-bubble.html b/pxy_dashboard/templates/pxy_dashboard/components/charts/apex-charts/apex-bubble.html new file mode 100644 index 0000000..8deae1d --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/components/charts/apex-charts/apex-bubble.html @@ -0,0 +1,62 @@ +{% extends "partials/base.html" %} +{% load static %} + +{% block title %}Apex Bubble Charts{% endblock title %} + +{% block extra_css %} +{% endblock extra_css %} + + +{% block pagetitle %} +{% include "partials/page-title.html" with pagetitle="Bubble Charts" title="Apex" %} +{% endblock pagetitle %} + +{% block content %} +
    +
    +
    +
    +

    Simple Bubble Chart

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

    3D Bubble Chart

    +
    +
    +
    +
    + +
    + +
    + +
    + + + + +{% endblock content %} + +{% block extra_js %} + + + + + + + + + + +{% endblock extra_js %} + diff --git a/pxy_dashboard/templates/pxy_dashboard/components/charts/apex-charts/apex-candlestick.html b/pxy_dashboard/templates/pxy_dashboard/components/charts/apex-charts/apex-candlestick.html new file mode 100644 index 0000000..5c77e86 --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/components/charts/apex-charts/apex-candlestick.html @@ -0,0 +1,95 @@ +{% extends "partials/base.html" %} +{% load static %} + +{% block title %}Apex Candlestick Charts{% endblock title %} + +{% block extra_css %} +{% endblock extra_css %} + + +{% block pagetitle %} +{% include "partials/page-title.html" with pagetitle="Candlestick Charts" title="Apex" %} +{% endblock pagetitle %} + +{% block content %} +
    +
    +
    +
    +

    Simple Candlestick Chart

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

    Combo Candlestick Chart

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

    Category X-Axis

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

    Candlestick with Line

    +
    +
    +
    +
    + +
    + +
    + +
    + + + +{% endblock content %} + +{% block extra_js %} + + + + + + + + + + + + +{% endblock extra_js %} + diff --git a/pxy_dashboard/templates/pxy_dashboard/components/charts/apex-charts/apex-column.html b/pxy_dashboard/templates/pxy_dashboard/components/charts/apex-charts/apex-column.html new file mode 100644 index 0000000..23d1e20 --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/components/charts/apex-charts/apex-column.html @@ -0,0 +1,224 @@ +{% extends "partials/base.html" %} +{% load static %} + +{% block title %}Apex Column Charts{% endblock title %} + +{% block extra_css %} +{% endblock extra_css %} + + +{% block pagetitle %} +{% include "partials/page-title.html" with pagetitle="Column Charts" title="Apex" %} +{% endblock pagetitle %} + +{% block content %} +
    +
    +
    +
    +

    Basic Column Chart

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

    Column Chart with Datalabels

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

    Stacked Column Chart

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

    100% Stacked Column Chart

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

    Column with Markers

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

    Column with Group Label

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

    Column Chart with rotated labels & Annotations

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

    Column Chart with negative values

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

    Distributed Column Chart

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

    Range Column Chart

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

    Dynamic Loaded Chart

    +
    + +
    +
    + +
    +

    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    + +
    + +
    + +
    + + + + + +{% endblock content %} + +{% block extra_js %} + + + + + + + + + + + + +{% endblock extra_js %} + diff --git a/pxy_dashboard/templates/pxy_dashboard/components/charts/apex-charts/apex-heatmap.html b/pxy_dashboard/templates/pxy_dashboard/components/charts/apex-charts/apex-heatmap.html new file mode 100644 index 0000000..d7b630e --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/components/charts/apex-charts/apex-heatmap.html @@ -0,0 +1,93 @@ +{% extends "partials/base.html" %} +{% load static %} + +{% block title %}Apex Heatmap Charts{% endblock title %} + +{% block extra_css %} +{% endblock extra_css %} + + +{% block pagetitle %} +{% include "partials/page-title.html" with pagetitle="Heatmap Charts" title="Apex" %} +{% endblock pagetitle %} + +{% block content %} +
    +
    +
    +
    +

    Basic Heatmap - Single Series

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

    Heatmap - Multiple Series

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

    Heatmap - Color Range

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

    Heatmap - Range without Shades

    +
    +
    +
    +
    + +
    + +
    + +
    + + + + +{% endblock content %} + +{% block extra_js %} + + + + + + + + + + +{% endblock extra_js %} + diff --git a/pxy_dashboard/templates/pxy_dashboard/components/charts/apex-charts/apex-line.html b/pxy_dashboard/templates/pxy_dashboard/components/charts/apex-charts/apex-line.html new file mode 100644 index 0000000..4becd3a --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/components/charts/apex-charts/apex-line.html @@ -0,0 +1,207 @@ +{% extends "partials/base.html" %} +{% load static %} + +{% block title %}Apex Line Charts{% endblock title %} + +{% block extra_css %} +{% endblock extra_css %} + + +{% block pagetitle %} +{% include "partials/page-title.html" with pagetitle="Line Charts" title="Apex" %} +{% endblock pagetitle %} + +{% block content %} +
    +
    +
    +
    +

    Simple line chart

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

    Line with Data Labels

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

    Zoomable Timeseries

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

    Line Chart with Annotations

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

    Syncing charts

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

    Gradient Line Chart

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

    Missing / Null values

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

    Dashed Line Chart

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

    Stepline Chart

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

    Brush Chart

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

    Realtime Chart

    +
    +
    +
    +
    + +
    + +
    + +
    + + + + +{% endblock content %} + +{% block extra_js %} + + + + + + + + + + + + +{% endblock extra_js %} + diff --git a/pxy_dashboard/templates/pxy_dashboard/components/charts/apex-charts/apex-mixed.html b/pxy_dashboard/templates/pxy_dashboard/components/charts/apex-charts/apex-mixed.html new file mode 100644 index 0000000..c63dd0b --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/components/charts/apex-charts/apex-mixed.html @@ -0,0 +1,93 @@ +{% extends "partials/base.html" %} +{% load static %} + +{% block title %}Apex Mixed Charts{% endblock title %} + +{% block extra_css %} +{% endblock extra_css %} + + +{% block pagetitle %} +{% include "partials/page-title.html" with pagetitle="Mixed Charts" title="Apex" %} +{% endblock pagetitle %} + +{% block content %} +
    +
    +
    +
    +

    Line & Column Chart

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

    Multiple Y-Axis Chart

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

    Line & Area Chart

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

    Line, Column & Area Chart

    +
    +
    +
    +
    + +
    + +
    + +
    + + + + +{% endblock content %} + +{% block extra_js %} + + + + + + + + + + +{% endblock extra_js %} + diff --git a/pxy_dashboard/templates/pxy_dashboard/components/charts/apex-charts/apex-pie.html b/pxy_dashboard/templates/pxy_dashboard/components/charts/apex-charts/apex-pie.html new file mode 100644 index 0000000..d40e123 --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/components/charts/apex-charts/apex-pie.html @@ -0,0 +1,149 @@ +{% extends "partials/base.html" %} +{% load static %} + +{% block title %}Apex Pie Charts{% endblock title %} + +{% block extra_css %} +{% endblock extra_css %} + + +{% block pagetitle %} +{% include "partials/page-title.html" with pagetitle="Pie Charts" title="Apex" %} +{% endblock pagetitle %} + +{% block content %} +
    +
    +
    +
    +

    Simple Pie Chart

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

    Simple Donut Chart

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

    Monochrome Pie Chart

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

    Gradient Donut Chart

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

    Patterned Donut Chart

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

    Pie Chart with Image fill

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

    Donut Update

    +
    +
    +
    + +
    + + + + +
    + +
    + +
    + +
    + +
    + + + + +{% endblock content %} + +{% block extra_js %} + + + + + + + + + + +{% endblock extra_js %} + diff --git a/pxy_dashboard/templates/pxy_dashboard/components/charts/apex-charts/apex-polar-area.html b/pxy_dashboard/templates/pxy_dashboard/components/charts/apex-charts/apex-polar-area.html new file mode 100644 index 0000000..f113d53 --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/components/charts/apex-charts/apex-polar-area.html @@ -0,0 +1,61 @@ +{% extends "partials/base.html" %} +{% load static %} + +{% block title %}Apex Polar Area Charts{% endblock title %} + +{% block extra_css %} +{% endblock extra_css %} + + +{% block pagetitle %} +{% include "partials/page-title.html" with pagetitle="Polar Area Charts" title="Apex" %} +{% endblock pagetitle %} + +{% block content %} +
    +
    +
    +
    +

    Basic Polar Area Chart

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

    Monochrome Polar Area

    +
    +
    +
    +
    + +
    + +
    + +
    + + + +{% endblock content %} + +{% block extra_js %} + + + + + + + + + + +{% endblock extra_js %} + diff --git a/pxy_dashboard/templates/pxy_dashboard/components/charts/apex-charts/apex-radar.html b/pxy_dashboard/templates/pxy_dashboard/components/charts/apex-charts/apex-radar.html new file mode 100644 index 0000000..2b20521 --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/components/charts/apex-charts/apex-radar.html @@ -0,0 +1,81 @@ +{% extends "partials/base.html" %} +{% load static %} + +{% block title %}Apex Radar Charts{% endblock title %} + +{% block extra_css %} +{% endblock extra_css %} + + +{% block pagetitle %} +{% include "partials/page-title.html" with pagetitle="Radar Charts" title="Apex" %} +{% endblock pagetitle %} + +{% block content %} +
    +
    +
    +
    +

    Basic Radar Chart

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

    Radar with Polygon-fill

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

    Radar – Multiple Series

    +
    +
    +
    + +
    +
    +
    + +
    + +
    + +
    + + + + +{% endblock content %} + +{% block extra_js %} + + + + + + + + + + +{% endblock extra_js %} + diff --git a/pxy_dashboard/templates/pxy_dashboard/components/charts/apex-charts/apex-radialbar.html b/pxy_dashboard/templates/pxy_dashboard/components/charts/apex-charts/apex-radialbar.html new file mode 100644 index 0000000..cee2b9c --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/components/charts/apex-charts/apex-radialbar.html @@ -0,0 +1,140 @@ +{% extends "partials/base.html" %} +{% load static %} + +{% block title %}Apex RadialBar Charts{% endblock title %} + +{% block extra_css %} +{% endblock extra_css %} + + +{% block pagetitle %} +{% include "partials/page-title.html" with pagetitle="RadialBar Charts" title="Apex" %} +{% endblock pagetitle %} + +{% block content %} +
    +
    +
    +
    +

    Basic RadialBar Chart

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

    Multiple RadialBars

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

    Circle Chart - Custom Angle

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

    Circle Chart with Image

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

    Stroked Circular Guage

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

    Gradient Circular Chart

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

    Semi Circle Gauge

    +
    +
    +
    +
    + +
    + +
    + +
    + + + +{% endblock content %} + +{% block extra_js %} + + + + + + + + + + +{% endblock extra_js %} + diff --git a/pxy_dashboard/templates/pxy_dashboard/components/charts/apex-charts/apex-scatter.html b/pxy_dashboard/templates/pxy_dashboard/components/charts/apex-charts/apex-scatter.html new file mode 100644 index 0000000..de5cee1 --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/components/charts/apex-charts/apex-scatter.html @@ -0,0 +1,78 @@ +{% extends "partials/base.html" %} +{% load static %} + +{% block title %}Apex Scatter Charts{% endblock title %} + +{% block extra_css %} +{% endblock extra_css %} + + +{% block pagetitle %} +{% include "partials/page-title.html" with pagetitle="Scatter Charts" title="Apex" %} +{% endblock pagetitle %} + +{% block content %} +
    +
    +
    +
    +

    Scatter (XY) Chart

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

    Scatter Chart - Datetime

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

    Scatter - Images

    +
    +
    +
    +
    + +
    + +
    + +
    + + + +{% endblock content %} + +{% block extra_js %} + + + + + + + + + + +{% endblock extra_js %} + diff --git a/pxy_dashboard/templates/pxy_dashboard/components/charts/apex-charts/apex-sparklines.html b/pxy_dashboard/templates/pxy_dashboard/components/charts/apex-charts/apex-sparklines.html new file mode 100644 index 0000000..62da8d6 --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/components/charts/apex-charts/apex-sparklines.html @@ -0,0 +1,112 @@ +{% extends "partials/base.html" %} +{% load static %} + +{% block title %}Apex Sparklines Charts{% endblock title %} + +{% block extra_css %} +{% endblock extra_css %} + + +{% block pagetitle %} +{% include "partials/page-title.html" with pagetitle="Sparklines Charts" title="Apex" %} +{% endblock pagetitle %} + +{% block content %} +
    +
    +
    +
    + +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    + + +
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Total ValuePercentage of PortfolioLast 10 daysVolume
    $32,55415% +
    +
    +
    +
    $23,5337% +
    +
    +
    +
    $54,2769% +
    +
    +
    +
    $11,5332% +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    + + + +{% endblock content %} + +{% block extra_js %} + + + + + + + + + + +{% endblock extra_js %} + diff --git a/pxy_dashboard/templates/pxy_dashboard/components/charts/apex-charts/apex-timeline.html b/pxy_dashboard/templates/pxy_dashboard/components/charts/apex-charts/apex-timeline.html new file mode 100644 index 0000000..48b3614 --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/components/charts/apex-charts/apex-timeline.html @@ -0,0 +1,113 @@ +{% extends "partials/base.html" %} +{% load static %} + +{% block title %}Apex Timeline Charts{% endblock title %} + +{% block extra_css %} +{% endblock extra_css %} + + +{% block pagetitle %} +{% include "partials/page-title.html" with pagetitle="Timeline Charts" title="Apex" %} +{% endblock pagetitle %} + +{% block content %} +
    +
    +
    +
    +

    Basic Timeline

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

    Distributed Timeline

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

    Multi Series Timeline

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

    Advanced Timeline

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

    Multiple Series - Group Rows

    +
    +
    +
    +
    + +
    + +
    + +
    + + + +{% endblock content %} + +{% block extra_js %} + + + + + + + + + + + + + +{% endblock extra_js %} + diff --git a/pxy_dashboard/templates/pxy_dashboard/components/charts/apex-charts/apex-treemap.html b/pxy_dashboard/templates/pxy_dashboard/components/charts/apex-charts/apex-treemap.html new file mode 100644 index 0000000..71b9f18 --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/components/charts/apex-charts/apex-treemap.html @@ -0,0 +1,92 @@ +{% extends "partials/base.html" %} +{% load static %} + +{% block title %}Apex Treemap Charts{% endblock title %} + +{% block extra_css %} +{% endblock extra_css %} + + +{% block pagetitle %} +{% include "partials/page-title.html" with pagetitle="Treemap Charts" title="Apex" %} +{% endblock pagetitle %} + +{% block content %} +
    +
    +
    +
    +

    Basic Treemap

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

    Treemap Multiple Series

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

    Distributed Treemap

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

    Color Range Treemap

    +
    +
    +
    +
    + +
    + +
    + +
    + + + +{% endblock content %} + +{% block extra_js %} + + + + + + + + + + +{% endblock extra_js %} + diff --git a/pxy_dashboard/templates/pxy_dashboard/components/charts/chartjs/__init__.py b/pxy_dashboard/templates/pxy_dashboard/components/charts/chartjs/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/pxy_dashboard/templates/pxy_dashboard/components/charts/chartjs/chartjs-area.html b/pxy_dashboard/templates/pxy_dashboard/components/charts/chartjs/chartjs-area.html new file mode 100644 index 0000000..742f3f4 --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/components/charts/chartjs/chartjs-area.html @@ -0,0 +1,109 @@ +{% extends "partials/base.html" %} +{% load static %} + +{% block title %}Chartjs{% endblock title %} + + +{% block pagetitle %} +{% include "partials/page-title.html" with pagetitle="Chartjs" title="Charts" %} +{% endblock pagetitle %} + +{% block content %} +
    +
    +
    +
    +

    Boundaries

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

    Different Dataset

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

    Draw Time

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

    Stacked

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

    Radar

    + +
    +
    + +
    +
    +
    +
    +
    +
    + + +{% endblock content %} + +{% block extra_js %} + + + + + + + + + + +{% endblock extra_js %} + diff --git a/pxy_dashboard/templates/pxy_dashboard/components/charts/chartjs/chartjs-bar.html b/pxy_dashboard/templates/pxy_dashboard/components/charts/chartjs/chartjs-bar.html new file mode 100644 index 0000000..aeea6b2 --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/components/charts/chartjs/chartjs-bar.html @@ -0,0 +1,124 @@ +{% extends "partials/base.html" %} +{% load static %} + +{% block title %}Chartjs{% endblock title %} + +{% block extra_css %} +{% endblock extra_css %} + + +{% block pagetitle %} +{% include "partials/page-title.html" with pagetitle="Chartjs" title="Charts" %} +{% endblock pagetitle %} + +{% block content %} + +
    +
    +
    +
    +

    Border Radius

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

    Floating

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

    Horizontal

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

    Stacked

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

    Stacked with Groups

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

    Vertical

    + +
    +
    + +
    +
    +
    +
    +
    +
    + + +{% endblock content %} + +{% block extra_js %} + + + + + + + + + + +{% endblock extra_js %} + diff --git a/pxy_dashboard/templates/pxy_dashboard/components/charts/chartjs/chartjs-line.html b/pxy_dashboard/templates/pxy_dashboard/components/charts/chartjs/chartjs-line.html new file mode 100644 index 0000000..17ba1b9 --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/components/charts/chartjs/chartjs-line.html @@ -0,0 +1,124 @@ +{% extends "partials/base.html" %} +{% load static %} + +{% block title %}Chartjs{% endblock title %} + +{% block extra_css %} +{% endblock extra_css %} + + +{% block pagetitle %} +{% include "partials/page-title.html" with pagetitle="Chartjs" title="Charts" %} +{% endblock pagetitle %} + + +{% block content %} +
    +
    +
    +
    +

    Interpolation

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

    Line

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

    Multi-Axes

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

    Point Styling

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

    Line Segment

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

    Stepped

    + +
    +
    + +
    +
    +
    +
    +
    +
    + + +{% endblock content %} + +{% block extra_js %} + + + + + + + + + + +{% endblock extra_js %} + diff --git a/pxy_dashboard/templates/pxy_dashboard/components/charts/chartjs/chartjs-other.html b/pxy_dashboard/templates/pxy_dashboard/components/charts/chartjs/chartjs-other.html new file mode 100644 index 0000000..d959fa6 --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/components/charts/chartjs/chartjs-other.html @@ -0,0 +1,142 @@ +{% extends "partials/base.html" %} +{% load static %} + +{% block title %}Chartjs{% endblock title %} + +{% block extra_css %} +{% endblock extra_css %} + + +{% block pagetitle %} +{% include "partials/page-title.html" with pagetitle="Chartjs" title="Charts" %} +{% endblock pagetitle %} + +{% block content %} + +
    +
    +
    +
    +

    Bubble

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

    DONUT

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

    Pie

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

    Polar Area

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

    Radar

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

    Scatter

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

    Stacked Bar/Line

    + +
    +
    + +
    +
    +
    +
    +
    + +
    + + +{% endblock content %} + +{% block extra_js %} + + + + + + + + + + +{% endblock extra_js %} + diff --git a/pxy_dashboard/templates/pxy_dashboard/components/extended-ui/__init__.py b/pxy_dashboard/templates/pxy_dashboard/components/extended-ui/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/pxy_dashboard/templates/pxy_dashboard/components/extended-ui/extended-dragula.html b/pxy_dashboard/templates/pxy_dashboard/components/extended-ui/extended-dragula.html new file mode 100644 index 0000000..d02d386 --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/components/extended-ui/extended-dragula.html @@ -0,0 +1,370 @@ +{% extends "partials/base.html" %} +{% load static %} + +{% block title %}Dragula{% endblock title %} + +{% block extra_css %} +{% endblock extra_css %} + + +{% block pagetitle %} +{% include "partials/page-title.html" with pagetitle="Extended UI" title="Dragula" %} +{% endblock pagetitle %} + +{% block content %} +
    +
    +
    +
    +

    Simple Drag and Drop Example

    +

    + Just specify the data attribute data-plugin='dragula' to have drag and drop support in your container. +

    + +
    +
    +
    +
    +
    +

    Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere + erat a ante.

    +
    Someone famous in Source Title +
    +
    +
    +
    +
    + +
    +
    +
    +
    +

    Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere + erat a ante.

    +
    Someone famous in Source Title +
    +
    +
    +
    +
    + +
    +
    +
    +
    +

    Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere + erat a ante.

    +
    Someone famous in Source Title +
    +
    +
    +
    +
    + +
    +
    +
    +
    +

    Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere + erat a ante.

    +
    Someone famous in Source Title +
    +
    +
    +
    +
    + +
    +
    +
    +
    +

    Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere + erat a ante.

    +
    Someone famous in Source Title +
    +
    +
    +
    +
    + +
    +
    +
    +
    +

    Lorem ipsum dolor sit amet, consectetur adipiscing elit. Integer posuere + erat a ante.

    +
    Someone famous in Source Title +
    +
    +
    +
    +
    + +
    + + +
    +
    +
    +
    + + +
    +
    +
    +
    +

    Move stuff between containers

    +

    + Just specify the data attribute + data-plugin='dragula' and + data-containers='["first-container-id", "second-container-id"]'. +

    + +
    +
    +
    +
    Part 1
    +
    + +
    +
    +
    + image +
    +
    Louis K. Bond
    +

    Founder & CEO

    +

    + "Disrupt pork belly poutine, asymmetrical tousled succulents selfies. You probably haven't heard of them tattooed master cleanse live-edge keffiyeh. +

    +
    +
    +
    +
    + +
    +
    +
    + image +
    +
    Dennis N. Cloutier
    +

    Software Engineer

    +

    + "Disrupt pork belly poutine, asymmetrical tousled succulents selfies. You probably haven't heard of them tattooed master cleanse live-edge keffiyeh. +

    +
    +
    +
    +
    + +
    +
    +
    + image +
    +
    Susan J. Sander
    +

    Web Designer

    +

    + "Disrupt pork belly poutine, asymmetrical tousled succulents selfies. You probably haven't heard of them tattooed master cleanse live-edge keffiyeh. +

    +
    +
    +
    +
    + +
    +
    +
    + +
    +
    +
    Part 2
    +
    +
    + +
    +
    + image +
    +
    James M. Short
    +

    Web Developer

    +

    + "Disrupt pork belly poutine, asymmetrical tousled succulents selfies. You probably haven't heard of them tattooed master cleanse live-edge keffiyeh +

    +
    +
    +
    +
    + +
    +
    +
    + image +
    +
    Gabriel J. Snyder
    +

    Business Analyst

    +

    + "Disrupt pork belly poutine, asymmetrical tousled succulents selfies. You probably haven't heard of them tattooed master cleanse live-edge keffiyeh +

    +
    +
    +
    +
    + +
    +
    +
    + image +
    +
    Louie C. Mason
    +

    Human Resources

    +

    + "Disrupt pork belly poutine, asymmetrical tousled succulents selfies. You probably haven't heard of them tattooed master cleanse live-edge keffiyeh +

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

    Move stuff between containers using handle

    +

    + Just specify the data attribute + data-plugin='dragula', + data-containers='["first-container-id", "second-container-id"]' and + data-handle-class='dragula-handle'. +

    + +
    +
    +
    +
    Part 1
    +
    + +
    +
    +
    + image +
    +
    Louis K. Bond
    +

    Founder & CEO

    +
    + +
    +
    +
    + +
    +
    +
    + image +
    +
    Dennis N. Cloutier
    +

    Software Engineer

    +
    + +
    +
    +
    + +
    +
    +
    + image +
    +
    Susan J. Sander
    +

    Web Designer

    +
    + +
    +
    +
    + +
    +
    +
    + +
    +
    +
    Part 2
    +
    +
    + +
    +
    + image +
    +
    James M. Short
    +

    Web Developer

    +
    + +
    +
    +
    + +
    +
    +
    + image +
    +
    Gabriel J. Snyder
    +

    Business Analyst

    +
    + +
    +
    +
    + +
    +
    +
    + image +
    +
    Louie C. Mason
    +

    Human Resources

    +
    + +
    +
    +
    + +
    +
    +
    + +
    + +
    +
    +
    +
    + + +{% endblock content %} + +{% block extra_js %} + + + + + + + + + + +{% endblock extra_js %} + diff --git a/pxy_dashboard/templates/pxy_dashboard/components/extended-ui/extended-range-slider.html b/pxy_dashboard/templates/pxy_dashboard/components/extended-ui/extended-range-slider.html new file mode 100644 index 0000000..2fbd78b --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/components/extended-ui/extended-range-slider.html @@ -0,0 +1,168 @@ +{% extends "partials/base.html" %} +{% load static %} + +{% block title %}Range Slider{% endblock title %} + +{% block extra_css %} +{% endblock extra_css %} + + +{% block pagetitle %} +{% include "partials/page-title.html" with pagetitle="Extended UI" title="Range Slider" %} +{% endblock pagetitle %} + +{% block content %} + +
    +
    +
    +
    +

    Default

    +

    Start with default options

    + + + +
    +
    + +
    +
    +

    Prefix

    +

    Showing grid and adding prefix "$"

    + + +
    +
    + +
    +
    +

    Step

    +

    Increment with specific value only (step)

    + + +
    +
    + +
    +
    +

    Prettify Numbers

    +

    Prettify enabled. Much better!

    + + +
    +
    + +
    +
    +

    Extra Example

    +

    Want to show that max number is not the biggest one?

    + + +
    +
    + +
    +
    +

    Postfixes

    +

    Using postfixes

    + + +
    +
    + +
    + +
    +
    +
    +

    Min-Max

    +

    Set min value, max value and start point

    + + +
    +
    + +
    +
    +

    Range

    +

    Set up range with negative values

    + + +
    +
    + +
    +
    +

    Custom Values

    +

    Using any strings as values

    + + +
    +
    + +
    +
    +

    Disabled

    +

    Lock slider by using disable option

    + + +
    +
    + +
    +
    +

    Use Decorate Both option

    +

    Use decorate_both option

    + + +
    +
    + +
    +
    +

    Hide

    +

    Or hide any part you wish

    + + +
    +
    + +
    +
    + + +{% endblock content %} + +{% block extra_js %} + + + + + + + + +{% endblock extra_js %} + diff --git a/pxy_dashboard/templates/pxy_dashboard/components/extended-ui/extended-ratings.html b/pxy_dashboard/templates/pxy_dashboard/components/extended-ui/extended-ratings.html new file mode 100644 index 0000000..b33d6e1 --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/components/extended-ui/extended-ratings.html @@ -0,0 +1,159 @@ +{% extends "partials/base.html" %} +{% load static %} + +{% block title %}Ratings{% endblock title %} + +{% block extra_css %} +{% endblock extra_css %} + + +{% block pagetitle %} +{% include "partials/page-title.html" with pagetitle="Extended UI" title="Ratings" %} +{% endblock pagetitle %} + +{% block content %} +
    +
    +
    +
    +

    Default Ratings

    +

    + +
    +
    +
    +
    + +
    +
    +

    Icon Font - Change icon

    +

    + +
    +
    +
    +
    + +
    +
    +

    Progressive enhancement (using select)

    +

    + + +
    +
    +
    + +
    +
    +

    Javascript interaction

    +

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

    RTL support

    +

    Now we are in RTL mode. No changes needed to make this work

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

    Remix Icons

    +

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

    Icon Font - Sizing

    +

    + +
    +
    +
    +
    + +
    +
    +

    Readonly and preset value

    +

    + +
    +
    +
    +
    + +
    +
    +

    Setting and Getting values

    +

    All properties can also be set on the fly. Here are a few examples:

    + +
    +
    +
    + + + + + + + + + + + +
    +
    +
    + +
    +
    + + + +{% endblock content %} + +{% block extra_js %} + + + + + + + + + + +{% endblock extra_js %} + diff --git a/pxy_dashboard/templates/pxy_dashboard/components/extended-ui/extended-scrollbar.html b/pxy_dashboard/templates/pxy_dashboard/components/extended-ui/extended-scrollbar.html new file mode 100644 index 0000000..3e5efc6 --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/components/extended-ui/extended-scrollbar.html @@ -0,0 +1,178 @@ +{% extends "partials/base.html" %} +{% load static %} + +{% block title %}Scrollbar{% endblock title %} + +{% block extra_css %} +{% endblock extra_css %} + + +{% block pagetitle %} +{% include "partials/page-title.html" with pagetitle="Extended UI" title="Scrollbar" %} +{% endblock pagetitle %} + +{% block content %} +
    +
    +
    +
    +

    Default Scroll

    +

    Just use data attribute data-simplebar + and add max-height: **px oh fix height

    +
    + +
    + SimpleBar does only one thing: replace the browser's default scrollbar + with a custom CSS-styled one without losing performances. + Unlike some popular plugins, SimpleBar doesn't mimic scroll with + Javascript, causing janks and strange scrolling behaviours... + You keep the awesomeness of native scrolling...with a custom scrollbar! +

    SimpleBar does NOT implement a custom scroll + behaviour. It keeps the native + overflow: auto scroll and only replace + the scrollbar visual appearance. +

    +
    Design it as you want
    +

    SimpleBar uses pure CSS to style the scrollbar. You can easily + customize it as you want! Or even have multiple style on the same + page...or just keep the default style ("Mac OS" scrollbar style). +

    +
    Lightweight and performant
    +

    Only 6kb minified. SimpleBar doesn't use Javascript to handle + scrolling. You keep the performances/behaviours of the native + scroll.

    +
    Supported everywhere
    +

    SimpleBar has been tested on the following browsers: Chrome, + Firefox, + Safari, Edge, IE11.

    +
    +
    +
    + +
    +
    +
    +

    RTL Position

    +

    Just use data attribute + data-simplebar data-simplebar-direction='rtl' + and add max-height: **px oh fix height

    +
    + +
    + SimpleBar does only one thing: replace the browser's default scrollbar + with a custom CSS-styled one without losing performances. + Unlike some popular plugins, SimpleBar doesn't mimic scroll with + Javascript, causing janks and strange scrolling behaviours... + You keep the awesomeness of native scrolling...with a custom scrollbar! +

    SimpleBar does NOT implement a custom scroll + behaviour. It keeps the native + overflow: auto scroll and only replace + the scrollbar visual appearance. +

    +
    Design it as you want
    +

    SimpleBar uses pure CSS to style the scrollbar. You can easily + customize it as you want! Or even have multiple style on the same + page...or just keep the default style ("Mac OS" scrollbar style). +

    +
    Lightweight and performant
    +

    Only 6kb minified. SimpleBar doesn't use Javascript to handle + scrolling. You keep the performances/behaviours of the native + scroll.

    +
    Supported everywhere
    +

    SimpleBar has been tested on the following browsers: Chrome, + Firefox, + Safari, Edge, IE11.

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

    Scroll Size

    +

    Just use data attribute data-simplebar + and add max-height: **px oh fix height

    +
    + +
    + SimpleBar does only one thing: replace the browser's default scrollbar + with a custom CSS-styled one without losing performances. + Unlike some popular plugins, SimpleBar doesn't mimic scroll with + Javascript, causing janks and strange scrolling behaviours... + You keep the awesomeness of native scrolling...with a custom scrollbar! +

    SimpleBar does NOT implement a custom scroll + behaviour. It keeps the native + overflow: auto scroll and only replace + the scrollbar visual appearance. +

    +
    Design it as you want
    +

    SimpleBar uses pure CSS to style the scrollbar. You can easily + customize it as you want! Or even have multiple style on the same + page...or just keep the default style ("Mac OS" scrollbar style). +

    +
    Lightweight and performant
    +

    Only 6kb minified. SimpleBar doesn't use Javascript to handle + scrolling. You keep the performances/behaviours of the native + scroll.

    +
    Supported everywhere
    +

    SimpleBar has been tested on the following browsers: Chrome, + Firefox, + Safari, Edge, IE11.

    +
    +
    +
    + +
    +
    +
    +

    Scroll Color

    +

    Just use data attribute + data-simplebar data-simplebar-primary + and add max-height: **px oh fix height

    +
    +
    + SimpleBar does only one thing: replace the browser's default scrollbar + with a custom CSS-styled one without losing performances. + Unlike some popular plugins, SimpleBar doesn't mimic scroll with + Javascript, causing janks and strange scrolling behaviours... + You keep the awesomeness of native scrolling...with a custom scrollbar! +

    SimpleBar does NOT implement a custom scroll + behaviour. It keeps the native + overflow: auto scroll and only replace + the scrollbar visual appearance. +

    +
    Design it as you want
    +

    SimpleBar uses pure CSS to style the scrollbar. You can easily + customize it as you want! Or even have multiple style on the same + page...or just keep the default style ("Mac OS" scrollbar style). +

    +
    Lightweight and performant
    +

    Only 6kb minified. SimpleBar doesn't use Javascript to handle + scrolling. You keep the performances/behaviours of the native + scroll.

    +
    Supported everywhere
    +

    SimpleBar has been tested on the following browsers: Chrome, + Firefox, + Safari, Edge, IE11.

    +
    +
    +
    +
    + + +{% endblock content %} + +{% block extra_js %} + + + + +{% endblock extra_js %} + diff --git a/pxy_dashboard/templates/pxy_dashboard/components/extended-ui/extended-scrollspy.html b/pxy_dashboard/templates/pxy_dashboard/components/extended-ui/extended-scrollspy.html new file mode 100644 index 0000000..cc7ebf6 --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/components/extended-ui/extended-scrollspy.html @@ -0,0 +1,300 @@ +{% extends "partials/base.html" %} +{% load static %} + +{% block title %}Scrollspy{% endblock title %} + +{% block extra_css %} +{% endblock extra_css %} + + +{% block pagetitle %} +{% include "partials/page-title.html" with pagetitle="Extended UI" title="Scrollspy" %} +{% endblock pagetitle %} + +{% block content %} +
    +
    +
    +
    +

    Example in navbar

    +

    Scroll the area below the navbar and watch the active + class change. The dropdown items will be highlighted as well.

    + + +
    +

    @fat

    +

    Ad leggings keytar, brunch id art party dolor labore. Pitchfork yr + enim lo-fi before they sold out qui. Tumblr farm-to-table bicycle + rights whatever. Anim keffiyeh carles cardigan. Velit seitan + mcsweeney's photo booth 3 wolf moon irure. Cosby sweater lomo jean + shorts, williamsburg hoodie minim qui you probably haven't heard of + them et cardigan trust fund culpa biodiesel wes anderson aesthetic. + Nihil tattooed accusamus, cred irony biodiesel keffiyeh artisan + ullamco consequat.

    +

    @mdo

    +

    Veniam marfa mustache skateboard, adipisicing fugiat velit pitchfork + beard. Freegan beard aliqua cupidatat mcsweeney's vero. Cupidatat + four loko nisi, ea helvetica nulla carles. Tattooed cosby sweater + food truck, mcsweeney's quis non freegan vinyl. Lo-fi wes anderson + +1 sartorial. Carles non aesthetic exercitation quis gentrify. + Brooklyn adipisicing craft beer vice keytar deserunt.

    +

    one

    +

    Occaecat commodo aliqua delectus. Fap craft beer deserunt skateboard + ea. Lomo bicycle rights adipisicing banh mi, velit ea sunt next + level locavore single-origin coffee in magna veniam. High life id + vinyl, echo park consequat quis aliquip banh mi pitchfork. Vero VHS + est adipisicing. Consectetur nisi DIY minim messenger bag. Cred ex + in, sustainable delectus consectetur fanny pack iphone.

    +

    two

    +

    In incididunt echo park, officia deserunt mcsweeney's proident master + cleanse thundercats sapiente veniam. Excepteur VHS elit, proident + shoreditch +1 biodiesel laborum craft beer. Single-origin coffee + wayfarers irure four loko, cupidatat terry richardson master + cleanse. Assumenda you probably haven't heard of them art party + fanny pack, tattooed nulla cardigan tempor ad. Proident wolf + nesciunt sartorial keffiyeh eu banh mi sustainable. Elit wolf + voluptate, lo-fi ea portland before they sold out four loko. + Locavore enim nostrud mlkshk brooklyn nesciunt.

    +

    three

    +

    Ad leggings keytar, brunch id art party dolor labore. Pitchfork yr + enim lo-fi before they sold out qui. Tumblr farm-to-table bicycle + rights whatever. Anim keffiyeh carles cardigan. Velit seitan + mcsweeney's photo booth 3 wolf moon irure. Cosby sweater lomo jean + shorts, williamsburg hoodie minim qui you probably haven't heard of + them et cardigan trust fund culpa biodiesel wes anderson aesthetic. + Nihil tattooed accusamus, cred irony biodiesel keffiyeh artisan + ullamco consequat.

    +

    Keytar twee blog, culpa messenger bag marfa whatever delectus food + truck. Sapiente synth id assumenda. Locavore sed helvetica cliche + irony, thundercats you probably haven't heard of them consequat + hoodie gluten-free lo-fi fap aliquip. Labore elit placeat before + they sold out, terry richardson proident brunch nesciunt quis cosby + sweater pariatur keffiyeh ut helvetica artisan. Cardigan craft beer + seitan readymade velit. VHS chambray laboris tempor veniam. Anim + mollit minim commodo ullamco thundercats. +

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

    Example with nested nav

    +

    Scrollspy also works with nested .navs. + If a nested .nav is .active, its parents will also be + .active. Scroll the area next to the navbar and watch the active + class change.

    + +
    +
    + +
    +
    +
    +

    Item 1

    +

    Ex consequat commodo adipisicing exercitation aute excepteur + occaecat ullamco duis aliqua id magna ullamco eu. Do aute + ipsum ipsum ullamco cillum consectetur ut et aute + consectetur labore. Fugiat laborum incididunt tempor eu + consequat enim dolore proident. Qui laborum do non excepteur + nulla magna eiusmod consectetur in. Aliqua et aliqua officia + quis et incididunt voluptate non anim reprehenderit + adipisicing dolore ut consequat deserunt mollit dolore. + Aliquip nulla enim veniam non fugiat id cupidatat nulla elit + cupidatat commodo velit ut eiusmod cupidatat elit dolore. +

    +
    Item 1-1
    +

    Amet tempor mollit aliquip pariatur excepteur commodo do ea + cillum commodo Lorem et occaecat elit qui et. Aliquip labore + ex ex esse voluptate occaecat Lorem ullamco deserunt. Aliqua + cillum excepteur irure consequat id quis ea. Sit proident + ullamco aute magna pariatur nostrud labore. Reprehenderit + aliqua commodo eiusmod aliquip est do duis amet proident + magna consectetur consequat eu commodo fugiat non quis. Enim + aliquip exercitation ullamco adipisicing voluptate excepteur + minim exercitation minim minim commodo adipisicing + exercitation officia nisi adipisicing. Anim id duis qui + consequat labore adipisicing sint dolor elit cillum anim et + fugiat.

    +
    Item 1-2
    +

    Cillum nisi deserunt magna eiusmod qui eiusmod velit + voluptate pariatur laborum sunt enim. Irure laboris mollit + consequat incididunt sint et culpa culpa incididunt + adipisicing magna magna occaecat. Nulla ipsum cillum eiusmod + sint elit excepteur ea labore enim consectetur in labore + anim. Proident ullamco ipsum esse elit ut Lorem eiusmod + dolor et eiusmod. Anim occaecat nulla in non consequat + eiusmod velit incididunt.

    +

    Item 2

    +

    Quis magna Lorem anim amet ipsum do mollit sit cillum + voluptate ex nulla tempor. Laborum consequat non elit enim + exercitation cillum aliqua consequat id aliqua. Esse ex + consectetur mollit voluptate est in duis laboris ad sit + ipsum anim Lorem. Incididunt veniam velit elit elit veniam + Lorem aliqua quis ullamco deserunt sit enim elit aliqua esse + irure. Laborum nisi sit est tempor laborum mollit labore + officia laborum excepteur commodo non commodo dolor + excepteur commodo. Ipsum fugiat ex est consectetur ipsum + commodo tempor sunt in proident.

    +

    Item 3

    +

    Quis anim sit do amet fugiat dolor velit sit ea ea do + reprehenderit culpa duis. Nostrud aliqua ipsum fugiat minim + proident occaecat excepteur aliquip culpa aute tempor + reprehenderit. Deserunt tempor mollit elit ex pariatur + dolore velit fugiat mollit culpa irure ullamco est ex + ullamco excepteur.

    +
    Item 3-1
    +

    Deserunt quis elit Lorem eiusmod amet enim enim amet minim + Lorem proident nostrud. Ea id dolore anim exercitation aute + fugiat labore voluptate cillum do laboris labore. Ex velit + exercitation nisi enim labore reprehenderit labore nostrud + ut ut. Esse officia sunt duis aliquip ullamco tempor eiusmod + deserunt irure nostrud irure. Ullamco proident veniam + laboris ea consectetur magna sunt ex exercitation aliquip + minim enim culpa occaecat exercitation. Est tempor excepteur + aliquip laborum consequat do deserunt laborum esse eiusmod + irure proident ipsum esse qui.

    +
    Item 3-2
    +

    Labore sit culpa commodo elit adipisicing sit aliquip elit + proident voluptate minim mollit nostrud aute reprehenderit + do. Mollit excepteur eu Lorem ipsum anim commodo sint labore + Lorem in exercitation velit incididunt. Occaecat consectetur + nisi in occaecat proident minim enim sunt reprehenderit + exercitation cupidatat et do officia. Aliquip consequat ad + labore labore mollit ut amet. Sit pariatur tempor proident + in veniam culpa aliqua excepteur elit magna fugiat eiusmod + amet officia.

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

    Example with list-group

    +

    Scrollspy also works with nested .navs. + If a nested .nav is .active, its parents will also be + .active. Scroll the area next to the navbar and watch the active + class change.

    + +
    +
    + +
    +
    +
    +

    Item 1

    +

    Ex consequat commodo adipisicing exercitation aute excepteur + occaecat ullamco duis aliqua id magna ullamco eu. Do aute + ipsum ipsum ullamco cillum consectetur ut et aute + consectetur labore. Fugiat laborum incididunt tempor eu + consequat enim dolore proident. Qui laborum do non excepteur + nulla magna eiusmod consectetur in. Aliqua et aliqua officia + quis et incididunt voluptate non anim reprehenderit + adipisicing dolore ut consequat deserunt mollit dolore. + Aliquip nulla enim veniam non fugiat id cupidatat nulla elit + cupidatat commodo velit ut eiusmod cupidatat elit dolore. +

    +

    Item 2

    +

    Quis magna Lorem anim amet ipsum do mollit sit cillum + voluptate ex nulla tempor. Laborum consequat non elit enim + exercitation cillum aliqua consequat id aliqua. Esse ex + consectetur mollit voluptate est in duis laboris ad sit + ipsum anim Lorem. Incididunt veniam velit elit elit veniam + Lorem aliqua quis ullamco deserunt sit enim elit aliqua esse + irure. Laborum nisi sit est tempor laborum mollit labore + officia laborum excepteur commodo non commodo dolor + excepteur commodo. Ipsum fugiat ex est consectetur ipsum + commodo tempor sunt in proident.

    +

    Item 3

    +

    Quis anim sit do amet fugiat dolor velit sit ea ea do + reprehenderit culpa duis. Nostrud aliqua ipsum fugiat minim + proident occaecat excepteur aliquip culpa aute tempor + reprehenderit. Deserunt tempor mollit elit ex pariatur + dolore velit fugiat mollit culpa irure ullamco est ex + ullamco excepteur.

    +

    Item 4

    +

    Quis anim sit do amet fugiat dolor velit sit ea ea do + reprehenderit culpa duis. Nostrud aliqua ipsum fugiat minim + proident occaecat excepteur aliquip culpa aute tempor + reprehenderit. Deserunt tempor mollit elit ex pariatur + dolore velit fugiat mollit culpa irure ullamco est ex + ullamco excepteur.

    +
    +
    +
    +
    +
    +
    +
    + + + +{% endblock content %} + +{% block extra_js %} + + + + + +{% endblock extra_js %} + diff --git a/pxy_dashboard/templates/pxy_dashboard/components/forms/__init__.py b/pxy_dashboard/templates/pxy_dashboard/components/forms/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/pxy_dashboard/templates/pxy_dashboard/components/forms/form-advanced.html b/pxy_dashboard/templates/pxy_dashboard/components/forms/form-advanced.html new file mode 100644 index 0000000..066aa9d --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/components/forms/form-advanced.html @@ -0,0 +1,745 @@ +{% extends "partials/base.html" %} +{% load static %} + +{% block title %}Form Advanced{% endblock title %} + +{% block extra_css %} + + + + + + + + + + + + + + + + + + + +{% endblock extra_css %} + + +{% block pagetitle %} +{% include "partials/page-title.html" with pagetitle="Forms" title="Form Advanced" %} +{% endblock pagetitle %} + +{% block content %} +
    +
    +
    +
    +

    Select2

    +

    Select2 gives you a customizable select box with support for searching, tagging, remote data sets, infinite scrolling, and many other highly used options.

    + +
    +
    +

    Single Select

    +

    + Select2 can take a regular select box like this... +

    + + +
    + +
    +

    Multiple Select

    +

    + Select2 can take a regular select box like this... +

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

    Date Range Picker

    +

    + A JavaScript component for choosing date ranges, dates and times. +

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

    Flatpickr - Date picker

    +

    A lightweight and powerful datetimepicker

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

    Flatpickr - Time Picker

    +

    A lightweight and powerful datetimepicker

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

    Input Masks

    +

    + A jQuery Plugin to make masks on form fields and HTML elements. +

    + +
    +
    +
    +
    + + + e.g "DD/MM/YYYY" +
    +
    + + + e.g "HH:MM:SS" +
    +
    + + + e.g "DD/MM/YYYY HH:MM:SS" +
    +
    + + + e.g "xxxxx-xxx" +
    +
    + + + e.g "x-xx-xx-xx" +
    +
    + + + e.g "Your money" +
    +
    + + + e.g "#.##0,00" +
    + +
    +
    + +
    +
    +
    + + + e.g "xxxx-xxxx" +
    +
    + + + e.g "(xx) xxxx-xxxx" +
    +
    + + + e.g "(xxx) xxx-xxxx" +
    +
    + + + e.g "(xx) xxxxx-xxxx" +
    +
    + + + e.g "xxx.xxx.xxxx-xx" +
    +
    + + + e.g "xx.xxx.xxx/xxxx-xx" +
    +
    + + + e.g "xxx.xxx.xxx.xxx" +
    +
    +
    +
    + + +
    +
    +
    +
    + +
    +
    +
    +
    +

    Bootstrap Touchspin

    +

    + A mobile and touch friendly input spinner component for Bootstrap. + Specify attribute data-toggle="touchspin" and your input would be conveterted into touch friendly spinner. +

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

    Bootstrap Maxlength

    +

    + Uses the HTML5 attribute "maxlength" to work. Just specify data-toggle="maxlength" attribute + to have maxlength indication on any input. +

    + +
    +
    +
    + +

    + The badge will show up by default when the remaining chars are 10 or less: +

    + +
    + +
    + +

    + Satrt displaying the indication when reached to some threshhold. Specift the data attribute threshold. E.g. + data-threshold="12" +

    + +
    +
    + +
    +
    + +

    + All you need to do is specify the data attribute placement. The possible positions are left, top, right, bottom-right, top-right, top-left, + bottom, bottom-left and centered-right. If none is specified, the positioning will be defauted to 'bottom'. + E.g. data-placement="top" +

    + +
    + +
    + +

    + Bootstrap maxlength supports textarea as well as inputs. Even on old IE. +

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

    Timepicker

    +

    + Easily select a time for a text input using your mouse or keyboards arrow keys. Specify attribute data-toggle="timepicker" + and you would have nice timepicker input element. +

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

    Typeahead

    +

    + Typeahead.js %} is a fast and fully-featured autocomplete library. +

    + +
    +
    +
    + + +
    +
    + +
    +
    + + +
    +
    +
    + + +
    +
    +
    + + +
    +
    + +
    +
    + + +
    +
    +
    + + +
    +
    +
    + + +
    +
    + +
    +
    + + +
    +
    +
    + + +
    +
    +
    + + +
    +
    +
    + + +
    +
    +
    +
    + + +{% endblock content %} + +{% block extra_js %} + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +{% endblock extra_js %} + diff --git a/pxy_dashboard/templates/pxy_dashboard/components/forms/form-editors.html b/pxy_dashboard/templates/pxy_dashboard/components/forms/form-editors.html new file mode 100644 index 0000000..3750006 --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/components/forms/form-editors.html @@ -0,0 +1,97 @@ +{% extends "partials/base.html" %} +{% load static %} + +{% block title %}Editors{% endblock title %} + +{% block extra_css %} + + + + + + +{% endblock extra_css %} + + +{% block pagetitle %} +{% include "partials/page-title.html" with pagetitle="Forms" title="Editors" %} +{% endblock pagetitle %} + +{% block content %} +
    +
    +
    +
      +
    • +
      +

      Quill Editor

      +

      Snow is a clean, flat toolbar theme.

      + +
      +

      Hello World!

      +


      +

      This is an simple editable area.

      +


      +
        +
      • + Select a text to reveal the toolbar. +
      • +
      • + Edit rich document on-the-fly, so elastic! +
      • +
      +


      +

      + End of simple area +

      +
      +
      +
    • + +
    • +
      +
      Bubble Editor
      +

      Bubble is a simple tooltip based theme.

      + +
      +

      Hello World!

      +


      +

      This is an simple editable area.

      +


      +
        +
      • + Select a text to reveal the toolbar. +
      • +
      • + Edit rich document on-the-fly, so elastic! +
      • +
      +


      +

      + End of simple area +

      +
      + +
      +
    • +
    +
    +
    +
    + + +{% endblock content %} + +{% block extra_js %} + + + + + + + + + + +{% endblock extra_js %} + diff --git a/pxy_dashboard/templates/pxy_dashboard/components/forms/form-elements.html b/pxy_dashboard/templates/pxy_dashboard/components/forms/form-elements.html new file mode 100644 index 0000000..1e694c7 --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/components/forms/form-elements.html @@ -0,0 +1,806 @@ +{% extends "partials/base.html" %} +{% load static %} + +{% block title %}Form Elements{% endblock title %} + + +{% block pagetitle %} +{% include "partials/page-title.html" with pagetitle="Forms" title="Form Elements" %} +{% endblock pagetitle %} + +{% block content %} +
    +
    +
    +
    +

    Input Types

    +

    + Most common form control, text-based input fields. Includes support for all HTML5 types: text, password, datetime, datetime-local, date, month, time, week, number, email, url, search, tel, and color. +

    + +
    +
    +
    +
    + + +
    + +
    + + +
    + +
    + + +
    + +
    + +
    + +
    + +
    +
    +
    + +
    + + +
    + +
    + + +
    + +
    + + +
    + +
    + + +
    + +
    + + +
    + +
    + + + A block of help text that breaks onto a new line and may extend beyond one line. +
    + +
    +
    + +
    +
    + +
    + + +
    + +
    + + +
    + +
    + + +
    + +
    + + +
    + +
    + + +
    + +
    + + +
    + +
    + + +
    + +
    + + +
    + +
    + + +
    + +
    + + +
    + +
    +
    +
    + +
    +
    +
    +
    + +
    +
    +
    +
    +

    Floating labels

    +

    + Wrap a pair of <input class="form-control"> and <label> elements in .form-floating to enable floating labels with Bootstrap’s textual form fields. A placeholder is required on each <input> as our method of CSS-only floating labels uses the :placeholder-shown pseudo-element. Also note that the <input> must come first so we can utilize a sibling selector (e.g., ~). +

    +
    +
    +
    Example
    +
    + + +
    +
    + + +
    + +
    Textareas
    +
    + + +
    +
    + +
    +
    Selects
    +
    + + +
    + +
    Layout
    +
    +
    +
    + + +
    +
    +
    +
    + + +
    +
    +
    +
    +
    +
    +
    +
    +
    + +
    +
    +
    +
    +
    +
    +

    Select

    +

    + <select> menus need only a custom class, .form-select to trigger the custom styles. +

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

    Switches

    +

    + A switch has the markup of a custom checkbox but uses the .form-switch class to render a toggle switch. Switches also support the disabled attribute. +

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

    Checkboxes

    +

    + Each checkbox and radio <input> and <label> pairing is wrapped in a <div> to create our custom control. Structurally, this is the same approach as our default .form-check. +

    + +
    Checkboxes
    +
    +
    + + +
    +
    + + +
    +
    + +
    Inline
    + +
    +
    + + +
    +
    + + +
    +
    + +
    Disabled
    + +
    +
    + + +
    +
    + + +
    +
    + +
    Colors
    + +
    + + +
    +
    + + +
    +
    + + +
    +
    + + +
    +
    + + +
    +
    + + +
    +
    + + +
    + +
    +
    +
    + +
    +
    +
    +

    radios

    +

    + Each checkbox and radio <input> and <label> pairing is wrapped in a <div> to create our custom control. Structurally, this is the same approach as our default .form-check. +

    + +
    Radios
    + +
    +
    + + +
    +
    + + +
    +
    + +
    Inline
    + +
    +
    + + +
    +
    + + +
    +
    + +
    Disabled
    + +
    +
    + + +
    +
    + + +
    +
    + +
    Colors
    + +
    + + +
    +
    + + +
    +
    + + +
    +
    + + +
    +
    + + +
    +
    + + +
    +
    + + +
    + +
    +
    +
    +
    + + +
    +
    +
    +
    + +

    Input Sizes

    +

    + Set heights using classes like .input-lg, and set widths using grid column classes like .col-lg-*. +

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

    Input Group

    +

    + Easily extend form controls by adding text, buttons, or button groups on either side of textual inputs, custom selects, and custom file inputs +

    + +
    +
    + +
    + @ + +
    +
    + +
    + +
    + + + +
    +
    + +
    + +
    + + +
    +
    + +
    +
    + + +
    +
    + + +
    +
    +
    + +
    +
    +
    +
    + + + +
    +
    +
    +
    +

    Basic Example

    +

    Here’s a quick example to demonstrate Bootstrap’s form styles. Keep reading for documentation on required classes, form layout, and more.

    + +
    +
    + + + We'll never share your email with anyone else. +
    +
    + + +
    +
    +
    + + +
    +
    + +
    + +
    +
    +
    + + +
    +
    +
    +

    Horizontal form

    +

    Create horizontal forms with the grid by adding the .row class to form groups and using the .col-*-* classes to specify the width of your labels and controls. Be sure to add .col-form-label to your <label>s as well so they’re vertically centered with their associated form controls.

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

    Inline Form

    +

    + Use the .row-cols-lg-auto, .g-3 & .align-items-center class to display a series of labels, form controls, and buttons on a single horizontal row. Form controls within inline forms vary slightly from their default states. Controls only appear inline in viewports that are at least 576px wide to account for narrow viewports on mobile devices. +

    + +
    +
    + + +
    +
    + + +
    +
    + +
    +
    + +
    Auto-sizing
    +
    +
    +
    + + +
    +
    + +
    +
    @
    + +
    +
    +
    +
    + + +
    +
    +
    + +
    +
    +
    + +
    +
    +
    +
    + + +
    +
    +
    +
    +

    Horizontal form label sizing

    +

    Be sure to use .col-form-label-sm or .col-form-label-lg to your <label>s or <legend>s to correctly follow the size of .form-control-lg and .form-control-sm.

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

    Form Row

    +

    + By adding .row & .g-2, you can have control over the gutter width in as well the inline as block direction. +

    + +
    +
    +
    + + +
    +
    + + +
    +
    + +
    + + +
    + +
    + + +
    + +
    +
    + + +
    +
    + + +
    +
    + + +
    +
    + +
    +
    + + +
    +
    + + +
    + +
    +
    +
    +
    + + +{% endblock content %} + +{% block extra_js %} + + + + +{% endblock extra_js %} + diff --git a/pxy_dashboard/templates/pxy_dashboard/components/forms/form-fileuploads.html b/pxy_dashboard/templates/pxy_dashboard/components/forms/form-fileuploads.html new file mode 100644 index 0000000..5bf582e --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/components/forms/form-fileuploads.html @@ -0,0 +1,83 @@ +{% extends "partials/base.html" %} +{% load static %} + +{% block title %}File Uploads{% endblock title %} + + +{% block pagetitle %} +{% include "partials/page-title.html" with pagetitle="Forms" title="File Uploads" %} +{% endblock pagetitle %} + +{% block content %} +
    +
    +
    +
    +

    Dropzone File Upload

    +

    + DropzoneJS is an open source library that provides drag’n’drop file uploads with image previews. +

    + +
    +
    + +
    + +
    + +

    Drop files here or click to upload.

    + (This is just a demo dropzone. Selected files are + not actually uploaded.) +
    +
    + + +
    + +
    + +
    + +
    + +
    + + + +
    +
    +
    +
    +
    + +
    +
    + +

    +
    +
    + + + + +
    +
    +
    +
    +
    +{% endblock content %} + +{% block extra_js %} + + + + + + + + + + +{% endblock extra_js %} + diff --git a/pxy_dashboard/templates/pxy_dashboard/components/forms/form-validation.html b/pxy_dashboard/templates/pxy_dashboard/components/forms/form-validation.html new file mode 100644 index 0000000..7c08cae --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/components/forms/form-validation.html @@ -0,0 +1,170 @@ +{% extends "partials/base.html" %} +{% load static %} + +{% block title %}Form Validation{% endblock title %} + + +{% block pagetitle %} +{% include "partials/page-title.html" with pagetitle="Forms" title="Form Validation" %} +{% endblock pagetitle %} + +{% block content %} +
    +
    +
    +
    +

    Custom styles

    +

    Custom feedback styles apply custom colors, borders, + focus styles, and background + icons to better communicate feedback. Background icons for + <select>s are only available with + .form-select, and not .form-control. +

    + +
    +
    + + +
    + Looks good! +
    +
    +
    + + +
    + Looks good! +
    +
    +
    + +
    + @ + +
    + Please choose a username. +
    +
    +
    +
    + + +
    + Please provide a valid city. +
    +
    +
    + + +
    + Please provide a valid state. +
    +
    +
    + + +
    + Please provide a valid zip. +
    +
    +
    +
    + + +
    + You must agree before submitting. +
    +
    +
    + +
    + +
    +
    +
    + + +
    +
    +
    +

    Tooltips

    +

    If your form layout allows it, you can swap the + .{valid|invalid}-feedback classes for + .{valid|invalid}-tooltip classes to display validation feedback in + a styled tooltip. Be sure to have a parent with position: relative + on it for tooltip positioning. In the example below, our column classes have + this already, but your project may require an alternative setup. +

    + +
    +
    + + +
    + Looks good! +
    +
    + Please enter first name. +
    +
    +
    + + +
    + Looks good! +
    +
    + Please enter last name. +
    +
    +
    + +
    + @ + +
    + Please choose a unique and valid username. +
    +
    +
    +
    + + +
    + Please provide a valid city. +
    +
    +
    + + +
    + Please provide a valid state. +
    +
    +
    + + +
    + Please provide a valid zip. +
    +
    + +
    +
    +
    +
    +
    + + +{% endblock content %} + +{% block extra_js %} + + + + +{% endblock extra_js %} + diff --git a/pxy_dashboard/templates/pxy_dashboard/components/forms/form-wizard.html b/pxy_dashboard/templates/pxy_dashboard/components/forms/form-wizard.html new file mode 100644 index 0000000..003bed2 --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/components/forms/form-wizard.html @@ -0,0 +1,575 @@ +{% extends "partials/base.html" %} +{% load static %} + +{% block title %}Form Wizard{% endblock title %} + + +{% block pagetitle %} +{% include "partials/page-title.html" with pagetitle="Forms" title="Form Wizard" %} +{% endblock pagetitle %} + +{% block content %} +
    +
    +
    +
    + +

    Basic Wizard

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

    +

    Thank you !

    + +

    Quisque nec turpis at urna dictum luctus. Suspendisse convallis dignissim eros at volutpat. In egestas mattis dui. Aliquam + mattis dictum aliquet.

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

    Button Wizard

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

    +

    Thank you !

    + +

    Quisque nec turpis at urna dictum luctus. Suspendisse convallis dignissim eros at volutpat. In egestas mattis dui. Aliquam + mattis dictum aliquet.

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

    Wizard With Progress Bar

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

    +

    Thank you !

    + +

    Quisque nec turpis at urna dictum luctus. Suspendisse convallis dignissim eros at volutpat. In egestas mattis dui. Aliquam + mattis dictum aliquet.

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

    Wizard With Form Validation

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

    + +

    +

    Thank you !

    + +

    Quisque nec turpis at urna dictum luctus. Suspendisse convallis dignissim eros at volutpat. In egestas mattis + dui. Aliquam mattis dictum aliquet.

    + +
    +
    + + +
    +
    +
    +
    + +
    + + +
      + + +
    +
    + +
    +
    + + +
    +
    +
    +
    + + + + +{% endblock content %} + +{% block extra_js %} + + + + + + + + + + +{% endblock extra_js %} + diff --git a/pxy_dashboard/templates/pxy_dashboard/components/icons/__init__.py b/pxy_dashboard/templates/pxy_dashboard/components/icons/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/pxy_dashboard/templates/pxy_dashboard/components/icons/icons-bootstrap.html b/pxy_dashboard/templates/pxy_dashboard/components/icons/icons-bootstrap.html new file mode 100644 index 0000000..eb9706c --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/components/icons/icons-bootstrap.html @@ -0,0 +1,38 @@ +{% extends "partials/base.html" %} +{% load static %} + +{% block title %}Bootstrap Icons{% endblock title %} + +{% block extra_css %} +{% endblock extra_css %} + + +{% block pagetitle %} +{% include "partials/page-title.html" with pagetitle="Icons" title="Bootstrap Icons" %} +{% endblock pagetitle %} + +{% block content %} +
    +
    +
    +
    +
    Icons
    +

    Use class <i class="bi bi-123"></i>

    +
    +
    +
    +
    +
    + +{% endblock content %} + +{% block extra_js %} + + + + + + + +{% endblock extra_js %} + diff --git a/pxy_dashboard/templates/pxy_dashboard/components/icons/icons-material-symbol.html b/pxy_dashboard/templates/pxy_dashboard/components/icons/icons-material-symbol.html new file mode 100644 index 0000000..49f7570 --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/components/icons/icons-material-symbol.html @@ -0,0 +1,48 @@ +{% extends "partials/base.html" %} +{% load static %} + +{% block title %}Material Symbols{% endblock title %} + +{% block extra_css %} +{% endblock extra_css %} + + +{% block pagetitle %} +{% include "partials/page-title.html" with pagetitle="Icons" title="Material Symbols" %} +{% endblock pagetitle %} + +{% block content %} +
    +
    +
    +
    +

    All IconsGoogle Icon

    +
    + home + home + .material-symbols-outlined +
    + +
    + home + home + .material-symbols-outlined .fill-1 +
    +
    +
    +
    +
    +
    + +{% endblock content %} + +{% block extra_js %} + + + + + + + +{% endblock extra_js %} + diff --git a/pxy_dashboard/templates/pxy_dashboard/components/icons/icons-remixicons.html b/pxy_dashboard/templates/pxy_dashboard/components/icons/icons-remixicons.html new file mode 100644 index 0000000..08f1ee9 --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/components/icons/icons-remixicons.html @@ -0,0 +1,31 @@ +{% extends "partials/base.html" %} +{% load static %} + +{% block title %}Remix Icons{% endblock title %} + +{% block extra_css %} +{% endblock extra_css %} + + +{% block pagetitle %} +{% include "partials/page-title.html" with pagetitle="Icons" title="Remix Icons" %} +{% endblock pagetitle %} + +{% block content %} +
    +
    +
    + + +{% endblock content %} + +{% block extra_js %} + + + + + + + +{% endblock extra_js %} + diff --git a/pxy_dashboard/templates/pxy_dashboard/components/maps/__init__.py b/pxy_dashboard/templates/pxy_dashboard/components/maps/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/pxy_dashboard/templates/pxy_dashboard/components/maps/maps-google.html b/pxy_dashboard/templates/pxy_dashboard/components/maps/maps-google.html new file mode 100644 index 0000000..0cedcf4 --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/components/maps/maps-google.html @@ -0,0 +1,93 @@ +{% extends "partials/base.html" %} +{% load static %} + +{% block title %}Google Maps{% endblock title %} + + +{% block pagetitle %} +{% include "partials/page-title.html" with pagetitle="Maps" title="Google Maps" %} +{% endblock pagetitle %} + +{% block content %} +
    +
    +
    +
    +

    Basic Google Map

    +
    +
    +
    +
    +
    +
    +
    +

    Markers Google Map

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

    Street View Panoramas Google Map

    +
    +
    +
    +
    +
    +
    +
    +

    Google Map Types

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

    Ultra Light with Labels

    +
    +
    + +
    + +
    + +
    +
    +
    +

    Dark

    +
    +
    + +
    + +
    + +
    + + +{% endblock content %} + +{% block extra_js %} + + + + + + + + + + + +{% endblock extra_js %} + diff --git a/pxy_dashboard/templates/pxy_dashboard/components/maps/maps-vector.html b/pxy_dashboard/templates/pxy_dashboard/components/maps/maps-vector.html new file mode 100644 index 0000000..5dfdbaf --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/components/maps/maps-vector.html @@ -0,0 +1,156 @@ +{% extends "partials/base.html" %} +{% load static %} + +{% block title %}Vector Maps{% endblock title %} + +{% block extra_css %} + + + + +{% endblock extra_css %} + + +{% block pagetitle %} +{% include "partials/page-title.html" with pagetitle="Maps" title="Vector Maps" %} +{% endblock pagetitle %} + +{% block content %} +
    +
    +
    +
    +

    World Vector Map

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

    USA Vector Map

    +
    +
    +
    +
    +
    +
    +
    +

    India Vector Map

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

    Australia Vector Map

    +
    +
    +
    +
    +
    +
    +
    +

    Chicago Vector Map

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

    UK Vector Map

    +
    +
    +
    +
    +
    +
    +
    +

    Canada Vector Map

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

    Europe Vector Map

    +
    +
    +
    +
    +
    +
    +
    +

    France Vector Map

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

    Spain Vector Map

    +
    +
    +
    +
    +
    +
    +
    +

    Spain Vector Map

    +
    +
    +
    +
    +
    + + +{% endblock content %} + +{% block extra_js %} + + + + + + + + + + + + + + + + + + + + + +{% endblock extra_js %} + diff --git a/pxy_dashboard/templates/pxy_dashboard/components/tables/__init__.py b/pxy_dashboard/templates/pxy_dashboard/components/tables/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/pxy_dashboard/templates/pxy_dashboard/components/tables/tables-basic.html b/pxy_dashboard/templates/pxy_dashboard/components/tables/tables-basic.html new file mode 100644 index 0000000..878f5bd --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/components/tables/tables-basic.html @@ -0,0 +1,858 @@ +{% extends "partials/base.html" %} +{% load static %} + +{% block title %}Basic Tables{% endblock title %} + + +{% block pagetitle %} +{% include "partials/page-title.html" with pagetitle="Tables" title="Basic Tables" %} +{% endblock pagetitle %} + +{% block content %} +
    +
    +
    +
    + +

    Basic example

    +

    + For basic styling—light padding and only horizontal dividers—add the base class .table to any <table>. +

    + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    NamePhone NumberDate of BirthCountry
    Risa D. Pearson336-508-2157July 24, 1950India
    Ann C. Thompson646-473-2057January 25, 1959USA
    Paul J. Friend281-308-0793September 1, 1939Canada
    Linda G. Smith606-253-1207May 3, 1962Brazil
    +
    + +
    +
    +
    + +
    +
    +
    + +

    Inverse table

    +

    + You can also invert the colors—with light text on dark backgrounds—with .table-dark. +

    + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    NamePhone NumberDate of BirthCountry
    Risa D. Pearson336-508-2157July 24, 1950Malaysia
    Ann C. Thompson646-473-2057January 25, 1959Belgium
    Paul J. Friend281-308-0793September 1, 1939Australia
    Sean C. Nguyen269-714-6825February 5, 1994Algeria
    +
    + +
    +
    +
    +
    + + +
    +
    +
    +
    + +

    Striped rows

    +

    + Use .table-striped to add zebra-striping to any table row + within the <tbody>. +

    + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    UserAccount No.BalanceAction
    + table-user + Risa D. Pearson + AC336 508 2157July 24, 1950 + + +
    + table-user + Ann C. Thompson + SB646 473 2057January 25, 1959 + + +
    + table-user + Paul J. Friend + DL281 308 0793September 1, 1939 + + +
    + table-user + Sean C. Nguyen + CA269 714 6825February 5, 1994 + + +
    +
    + +
    +
    +
    + +
    +
    +
    + +

    Table head options

    +

    + Use one of two modifier classes to make <thead>s appear light or dark gray. +

    + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    ProductCourierProcessStatus
    ASOS Ridley High WaistFedEx +
    +
    +
    +
    Delivered
    Marco Lightweight ShirtDHL +
    +
    +
    +
    Shipped
    Half Sleeve ShirtBright +
    +
    +
    +
    Order Received
    Lightweight JacketFedEx +
    +
    +
    +
    Delivered
    Cargo Pant & ShirtFedEx +
    +
    +
    +
    Payment Failed
    +
    + +
    +
    +
    +
    + + + +
    +
    +
    +
    +

    Hoverable rows

    +

    + Add .table-hover to enable a hover state on table rows within a <tbody>. +

    + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    ProductPriceQuantityAmount
    ASOS Ridley High Waist$79.4982 Pcs$6,518.18
    Marco Lightweight Shirt$128.5037 Pcs$4,754.50
    Half Sleeve Shirt$39.9964 Pcs$2,559.36
    Lightweight Jacket$20.00184 Pcs$3,680.00
    +
    + +
    +
    +
    + +
    +
    +
    + +

    Small table

    +

    + Add .table-sm to make tables more compact by cutting cell padding in half. +

    + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    ProductPriceQuantityAmount
    ASOS Ridley High Waist$79.4982 Pcs$6,518.18
    Marco Lightweight Shirt$128.5037 Pcs$4,754.50
    Half Sleeve Shirt$39.9964 Pcs$2,559.36
    Lightweight Jacket$20.00184 Pcs$3,680.00
    Marco Shoes$28.4969 Pcs$1,965.81
    ASOS Ridley High Waist$79.4982 Pcs$6,518.18
    +
    + +
    +
    +
    +
    + + +
    +
    +
    +
    +

    Bordered table

    +

    + Add .table-bordered for borders on all sides of the table and cells. +

    + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    UserAccount No.BalanceAction
    + table-user + Risa D. Pearson + AC336 508 2157July 24, 1950 + +
    + table-user + Ann C. Thompson + SB646 473 2057January 25, 1959 + +
    + table-user + Paul J. Friend + DL281 308 0793September 1, 1939 + +
    + table-user + Sean C. Nguyen + CA269 714 6825February 5, 1994 + +
    +
    + +
    +
    +
    + +
    +
    +
    +

    Bordered color table

    +

    + Add .table-bordered & .border-primary can be added to change colors. +

    + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    UserAccount No.BalanceAction
    + table-user + Risa D. Pearson + AC336 508 2157July 24, 1950 + +
    + table-user + Ann C. Thompson + SB646 473 2057January 25, 1959 + +
    + table-user + Paul J. Friend + DL281 308 0793September 1, 1939 + +
    + table-user + Sean C. Nguyen + CA269 714 6825February 5, 1994 + +
    +
    + +
    +
    +
    +
    + + + +
    +
    +
    +
    + +

    Always responsive

    +

    + Across every breakpoint, use + .table-responsive for horizontally scrolling tables. Use + .table-responsive{-sm|-md|-lg|-xl} as needed to create responsive tables up to a particular breakpoint. From that breakpoint and up, the table will behave + normally and not scroll horizontally. +

    + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    #HeadingHeadingHeadingHeadingHeadingHeadingHeadingHeadingHeading
    1CellCellCellCellCellCellCellCellCell
    2CellCellCellCellCellCellCellCellCell
    3CellCellCellCellCellCellCellCellCell
    +
    + +
    +
    +
    +
    + + + +
    +
    +
    +
    + +

    Basic Borderless Example

    +

    + Add .table-borderless for a table without borders. +

    + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    NamePhone NumberDate of BirthCountry
    Risa D. Pearson336-508-2157July 24, 1950India
    Ann C. Thompson646-473-2057January 25, 1959USA
    Paul J. Friend281-308-0793September 1, 1939Canada
    Linda G. Smith606-253-1207May 3, 1962Brazil
    +
    + +
    +
    +
    + +
    +
    +
    + +

    Inverse Borderless table

    +

    + Add .table-borderless for a table without borders. +

    + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    NamePhone NumberDate of BirthCountry
    Risa D. Pearson336-508-2157July 24, 1950Malaysia
    Ann C. Thompson646-473-2057January 25, 1959Belgium
    Paul J. Friend281-308-0793September 1, 1939Australia
    Sean C. Nguyen269-714-6825February 5, 1994Algeria
    +
    + +
    +
    +
    +
    + + +
    +
    +
    +
    +

    Active tables

    +

    + Highlight a table row or cell by adding a .table-active class. +

    + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    NamePhone NumberDate of BirthCountry
    Risa D. Pearson336-508-2157July 24, 1950Belgium
    Ann C. Thompson646-473-2057January 25, 1959Malaysia
    Paul J. Friend281-308-0793September 1, 1939Algeria
    Linda G. Smith606-253-1207Australia
    Paul J. Friend281-308-0793September 1, 1939India
    +
    +
    +
    +
    + +
    +
    +
    +

    Nesting

    +

    + Border styles, active styles, and table variants are not inherited by nested tables. +

    + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + +
    NamePhone NumberDate of BirthCountry
    Risa D. Pearson336-508-2157July 24, 1950India
    + + + + + + + + + + + + + + + + + + + + + + + +
    NamePhone NumberDate of BirthCountry
    Risa D. Pearson336-508-2157July 24, 1950Malaysia
    Ann C. Thompson646-473-2057January 25, 1959Canada
    +
    Linda G. Smith606-253-1207September 2, 1939Belgium
    +
    +
    +
    +
    +
    + + +{% endblock content %} + +{% block extra_js %} + + + + +{% endblock extra_js %} + diff --git a/pxy_dashboard/templates/pxy_dashboard/components/tables/tables-datatable.html b/pxy_dashboard/templates/pxy_dashboard/components/tables/tables-datatable.html new file mode 100644 index 0000000..c5aa28f --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/components/tables/tables-datatable.html @@ -0,0 +1,5861 @@ +{% extends "partials/base.html" %} +{% load static %} + +{% block title %}Datatables{% endblock title %} + +{% block extra_css %} + + + + + + + + + +{% endblock extra_css %} + + +{% block pagetitle %} +{% include "partials/page-title.html" with pagetitle="Tables" title="Data Tables" %} +{% endblock pagetitle %} + +{% block content %} +
    +
    +
    +
    +

    Basic Data Table

    +

    + DataTables has most features enabled by default, so all you need to do to use it with your own tables is to call the construction + function: + $().DataTable();. KeyTable provides Excel like cell navigation on any table. Events (focus, blur, action etc) can be assigned to individual + cells, columns, rows or all cells. +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    NamePositionOfficeAgeStart dateSalary
    Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
    Garrett WintersAccountantTokyo632011/07/25$170,750
    Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
    Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
    Airi SatouAccountantTokyo332008/11/28$162,700
    Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
    Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
    Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
    Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
    Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
    Jena GainesOffice ManagerLondon302008/12/19$90,560
    Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
    Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
    Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
    Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
    Michael SilvaMarketing DesignerLondon662012/11/27$198,500
    Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
    Gloria LittleSystems AdministratorNew York592009/04/10$237,500
    Bradley GreerSoftware EngineerLondon412012/10/13$132,000
    Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
    Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
    Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
    Caesar VancePre-Sales SupportNew York212011/12/12$106,450
    Doris WilderSales AssistantSidney232010/09/20$85,600
    Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
    Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
    Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
    Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
    Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
    Shou ItouRegional MarketingTokyo202011/08/14$163,000
    Michelle HouseIntegration SpecialistSidney372011/06/02$95,400
    Suki BurksDeveloperLondon532009/10/22$114,500
    Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
    Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
    Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
    Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
    Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
    Hope FuentesSecretarySan Francisco412010/02/12$109,850
    Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
    Timothy MooneyOffice ManagerLondon372008/12/11$136,200
    Jackson BradshawDirectorNew York652008/09/26$645,750
    Olivia LiangSupport EngineerSingapore642011/02/03$234,500
    Bruno NashSoftware EngineerLondon382011/05/03$163,500
    Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
    Thor WaltonDeveloperNew York612013/08/11$98,540
    Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
    Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
    Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
    Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
    Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
    Cara StevensSales AssistantNew York462011/12/06$145,600
    Hermione ButlerRegional DirectorLondon472011/03/21$356,250
    Lael GreerSystems AdministratorLondon212009/02/27$103,500
    Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
    Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
    Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
    Donna SniderCustomer SupportNew York272011/01/25$112,000
    + +
    +
    +
    +
    + + +
    +
    +
    +
    + +

    Buttons example

    +

    + The Buttons extension for DataTables provides a common set of options, API methods and styling to display buttons on a page + that will interact with a DataTable. The core library provides the based framework upon which plug-ins can built. +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    NamePositionOfficeAgeStart dateSalary
    Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
    Garrett WintersAccountantTokyo632011/07/25$170,750
    Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
    Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
    Airi SatouAccountantTokyo332008/11/28$162,700
    Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
    Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
    Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
    Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
    Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
    Jena GainesOffice ManagerLondon302008/12/19$90,560
    Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
    Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
    Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
    Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
    Michael SilvaMarketing DesignerLondon662012/11/27$198,500
    Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
    Gloria LittleSystems AdministratorNew York592009/04/10$237,500
    Bradley GreerSoftware EngineerLondon412012/10/13$132,000
    Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
    Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
    Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
    Caesar VancePre-Sales SupportNew York212011/12/12$106,450
    Doris WilderSales AssistantSidney232010/09/20$85,600
    Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
    Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
    Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
    Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
    Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
    Shou ItouRegional MarketingTokyo202011/08/14$163,000
    Michelle HouseIntegration SpecialistSidney372011/06/02$95,400
    Suki BurksDeveloperLondon532009/10/22$114,500
    Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
    Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
    Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
    Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
    Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
    Hope FuentesSecretarySan Francisco412010/02/12$109,850
    Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
    Timothy MooneyOffice ManagerLondon372008/12/11$136,200
    Jackson BradshawDirectorNew York652008/09/26$645,750
    Olivia LiangSupport EngineerSingapore642011/02/03$234,500
    Bruno NashSoftware EngineerLondon382011/05/03$163,500
    Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
    Thor WaltonDeveloperNew York612013/08/11$98,540
    Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
    Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
    Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
    Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
    Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
    Cara StevensSales AssistantNew York462011/12/06$145,600
    Hermione ButlerRegional DirectorLondon472011/03/21$356,250
    Lael GreerSystems AdministratorLondon212009/02/27$103,500
    Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
    Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
    Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
    Donna SniderCustomer SupportNew York272011/01/25$112,000
    + +
    +
    +
    +
    + + +
    +
    +
    +
    + +

    Multi item selection

    +

    + This example shows the multi option. Note how a click on a row will toggle its selected state without effecting other rows, + unlike the os and single options shown in other examples. +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    NamePositionOfficeAgeStart dateSalary
    Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
    Garrett WintersAccountantTokyo632011/07/25$170,750
    Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
    Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
    Airi SatouAccountantTokyo332008/11/28$162,700
    Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
    Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
    Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
    Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
    Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
    Jena GainesOffice ManagerLondon302008/12/19$90,560
    Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
    Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
    Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
    Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
    Michael SilvaMarketing DesignerLondon662012/11/27$198,500
    Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
    Gloria LittleSystems AdministratorNew York592009/04/10$237,500
    Bradley GreerSoftware EngineerLondon412012/10/13$132,000
    Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
    Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
    Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
    Caesar VancePre-Sales SupportNew York212011/12/12$106,450
    Doris WilderSales AssistantSidney232010/09/20$85,600
    Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
    Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
    Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
    Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
    Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
    Shou ItouRegional MarketingTokyo202011/08/14$163,000
    Michelle HouseIntegration SpecialistSidney372011/06/02$95,400
    Suki BurksDeveloperLondon532009/10/22$114,500
    Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
    Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
    Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
    Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
    Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
    Hope FuentesSecretarySan Francisco412010/02/12$109,850
    Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
    Timothy MooneyOffice ManagerLondon372008/12/11$136,200
    Jackson BradshawDirectorNew York652008/09/26$645,750
    Olivia LiangSupport EngineerSingapore642011/02/03$234,500
    Bruno NashSoftware EngineerLondon382011/05/03$163,500
    Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
    Thor WaltonDeveloperNew York612013/08/11$98,540
    Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
    Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
    Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
    Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
    Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
    Cara StevensSales AssistantNew York462011/12/06$145,600
    Hermione ButlerRegional DirectorLondon472011/03/21$356,250
    Lael GreerSystems AdministratorLondon212009/02/27$103,500
    Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
    Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
    Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
    Donna SniderCustomer SupportNew York272011/01/25$112,000
    + +
    +
    +
    +
    + + +
    +
    +
    +
    +

    Alternative Pagination

    +

    + The default page control presented by DataTables (forward and backward buttons with up to 7 page numbers in-between) + is fine for most situations, but there are cases where you may wish to customise the options presented to the end + user. +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    NamePositionOfficeAgeStart dateSalary
    Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
    Garrett WintersAccountantTokyo632011/07/25$170,750
    Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
    Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
    Airi SatouAccountantTokyo332008/11/28$162,700
    Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
    Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
    Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
    Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
    Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
    Jena GainesOffice ManagerLondon302008/12/19$90,560
    Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
    Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
    Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
    Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
    Michael SilvaMarketing DesignerLondon662012/11/27$198,500
    Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
    Gloria LittleSystems AdministratorNew York592009/04/10$237,500
    Bradley GreerSoftware EngineerLondon412012/10/13$132,000
    Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
    Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
    Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
    Caesar VancePre-Sales SupportNew York212011/12/12$106,450
    Doris WilderSales AssistantSidney232010/09/20$85,600
    Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
    Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
    Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
    Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
    Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
    Shou ItouRegional MarketingTokyo202011/08/14$163,000
    Michelle HouseIntegration SpecialistSidney372011/06/02$95,400
    Suki BurksDeveloperLondon532009/10/22$114,500
    Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
    Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
    Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
    Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
    Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
    Hope FuentesSecretarySan Francisco412010/02/12$109,850
    Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
    Timothy MooneyOffice ManagerLondon372008/12/11$136,200
    Jackson BradshawDirectorNew York652008/09/26$645,750
    Olivia LiangSupport EngineerSingapore642011/02/03$234,500
    Bruno NashSoftware EngineerLondon382011/05/03$163,500
    Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
    Thor WaltonDeveloperNew York612013/08/11$98,540
    Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
    Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
    Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
    Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
    Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
    Cara StevensSales AssistantNew York462011/12/06$145,600
    Hermione ButlerRegional DirectorLondon472011/03/21$356,250
    Lael GreerSystems AdministratorLondon212009/02/27$103,500
    Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
    Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
    Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
    Donna SniderCustomer SupportNew York272011/01/25$112,000
    + +
    +
    +
    +
    + + +
    +
    +
    +
    +

    Scroll - Vertical

    +

    + This example shows the DataTables table body scrolling in the vertical direction. This can generally be seen as an + alternative method to pagination for displaying a large table in a fairly small vertical area, and as such + pagination has been disabled here (note that this is not mandatory, it will work just fine with pagination enabled + as well!). +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    NamePositionOfficeAgeStart dateSalary
    Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
    Garrett WintersAccountantTokyo632011/07/25$170,750
    Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
    Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
    Airi SatouAccountantTokyo332008/11/28$162,700
    Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
    Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
    Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
    Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
    Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
    Jena GainesOffice ManagerLondon302008/12/19$90,560
    Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
    Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
    Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
    Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
    Michael SilvaMarketing DesignerLondon662012/11/27$198,500
    Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
    Gloria LittleSystems AdministratorNew York592009/04/10$237,500
    Bradley GreerSoftware EngineerLondon412012/10/13$132,000
    Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
    Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
    Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
    Caesar VancePre-Sales SupportNew York212011/12/12$106,450
    Doris WilderSales AssistantSidney232010/09/20$85,600
    Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
    Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
    Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
    Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
    Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
    Shou ItouRegional MarketingTokyo202011/08/14$163,000
    Michelle HouseIntegration SpecialistSidney372011/06/02$95,400
    Suki BurksDeveloperLondon532009/10/22$114,500
    Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
    Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
    Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
    Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
    Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
    Hope FuentesSecretarySan Francisco412010/02/12$109,850
    Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
    Timothy MooneyOffice ManagerLondon372008/12/11$136,200
    Jackson BradshawDirectorNew York652008/09/26$645,750
    Olivia LiangSupport EngineerSingapore642011/02/03$234,500
    Bruno NashSoftware EngineerLondon382011/05/03$163,500
    Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
    Thor WaltonDeveloperNew York612013/08/11$98,540
    Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
    Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
    Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
    Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
    Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
    Cara StevensSales AssistantNew York462011/12/06$145,600
    Hermione ButlerRegional DirectorLondon472011/03/21$356,250
    Lael GreerSystems AdministratorLondon212009/02/27$103,500
    Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
    Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
    Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
    Donna SniderCustomer SupportNew York272011/01/25$112,000
    + +
    +
    +
    +
    + + +
    +
    +
    +
    +

    Scroll - Horizontal

    +

    + DataTables has the ability to show tables with horizontal scrolling, which is very useful for when you have a wide + table, but want to constrain it to a limited horizontal display area. +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    First nameLast namePositionOfficeAgeStart dateSalaryExtn.E-mail
    TigerNixonSystem ArchitectEdinburgh612011/04/25$320,8005421t.nixon@datatables.net
    GarrettWintersAccountantTokyo632011/07/25$170,7508422g.winters@datatables.net
    AshtonCoxJunior Technical AuthorSan Francisco662009/01/12$86,0001562a.cox@datatables.net
    CedricKellySenior Javascript DeveloperEdinburgh222012/03/29$433,0606224c.kelly@datatables.net
    AiriSatouAccountantTokyo332008/11/28$162,7005407a.satou@datatables.net
    BrielleWilliamsonIntegration SpecialistNew York612012/12/02$372,0004804b.williamson@datatables.net
    HerrodChandlerSales AssistantSan Francisco592012/08/06$137,5009608h.chandler@datatables.net
    RhonaDavidsonIntegration SpecialistTokyo552010/10/14$327,9006200r.davidson@datatables.net
    ColleenHurstJavascript DeveloperSan Francisco392009/09/15$205,5002360c.hurst@datatables.net
    SonyaFrostSoftware EngineerEdinburgh232008/12/13$103,6001667s.frost@datatables.net
    JenaGainesOffice ManagerLondon302008/12/19$90,5603814j.gaines@datatables.net
    QuinnFlynnSupport LeadEdinburgh222013/03/03$342,0009497q.flynn@datatables.net
    ChardeMarshallRegional DirectorSan Francisco362008/10/16$470,6006741c.marshall@datatables.net
    HaleyKennedySenior Marketing DesignerLondon432012/12/18$313,5003597h.kennedy@datatables.net
    TatyanaFitzpatrickRegional DirectorLondon192010/03/17$385,7501965t.fitzpatrick@datatables.net
    MichaelSilvaMarketing DesignerLondon662012/11/27$198,5001581m.silva@datatables.net
    PaulByrdChief Financial Officer (CFO)New York642010/06/09$725,0003059p.byrd@datatables.net
    GloriaLittleSystems AdministratorNew York592009/04/10$237,5001721g.little@datatables.net
    BradleyGreerSoftware EngineerLondon412012/10/13$132,0002558b.greer@datatables.net
    DaiRiosPersonnel LeadEdinburgh352012/09/26$217,5002290d.rios@datatables.net
    JenetteCaldwellDevelopment LeadNew York302011/09/03$345,0001937j.caldwell@datatables.net
    YuriBerryChief Marketing Officer (CMO)New York402009/06/25$675,0006154y.berry@datatables.net
    CaesarVancePre-Sales SupportNew York212011/12/12$106,4508330c.vance@datatables.net
    DorisWilderSales AssistantSidney232010/09/20$85,6003023d.wilder@datatables.net
    AngelicaRamosChief Executive Officer (CEO)London472009/10/09$1,200,0005797a.ramos@datatables.net
    GavinJoyceDeveloperEdinburgh422010/12/22$92,5758822g.joyce@datatables.net
    JenniferChangRegional DirectorSingapore282010/11/14$357,6509239j.chang@datatables.net
    BrendenWagnerSoftware EngineerSan Francisco282011/06/07$206,8501314b.wagner@datatables.net
    FionaGreenChief Operating Officer (COO)San Francisco482010/03/11$850,0002947f.green@datatables.net
    ShouItouRegional MarketingTokyo202011/08/14$163,0008899s.itou@datatables.net
    MichelleHouseIntegration SpecialistSidney372011/06/02$95,4002769m.house@datatables.net
    SukiBurksDeveloperLondon532009/10/22$114,5006832s.burks@datatables.net
    PrescottBartlettTechnical AuthorLondon272011/05/07$145,0003606p.bartlett@datatables.net
    GavinCortezTeam LeaderSan Francisco222008/10/26$235,5002860g.cortez@datatables.net
    MartenaMccrayPost-Sales supportEdinburgh462011/03/09$324,0508240m.mccray@datatables.net
    UnityButlerMarketing DesignerSan Francisco472009/12/09$85,6755384u.butler@datatables.net
    HowardHatfieldOffice ManagerSan Francisco512008/12/16$164,5007031h.hatfield@datatables.net
    HopeFuentesSecretarySan Francisco412010/02/12$109,8506318h.fuentes@datatables.net
    VivianHarrellFinancial ControllerSan Francisco622009/02/14$452,5009422v.harrell@datatables.net
    TimothyMooneyOffice ManagerLondon372008/12/11$136,2007580t.mooney@datatables.net
    JacksonBradshawDirectorNew York652008/09/26$645,7501042j.bradshaw@datatables.net
    OliviaLiangSupport EngineerSingapore642011/02/03$234,5002120o.liang@datatables.net
    BrunoNashSoftware EngineerLondon382011/05/03$163,5006222b.nash@datatables.net
    SakuraYamamotoSupport EngineerTokyo372009/08/19$139,5759383s.yamamoto@datatables.net
    ThorWaltonDeveloperNew York612013/08/11$98,5408327t.walton@datatables.net
    FinnCamachoSupport EngineerSan Francisco472009/07/07$87,5002927f.camacho@datatables.net
    SergeBaldwinData CoordinatorSingapore642012/04/09$138,5758352s.baldwin@datatables.net
    ZenaidaFrankSoftware EngineerNew York632010/01/04$125,2507439z.frank@datatables.net
    ZoritaSerranoSoftware EngineerSan Francisco562012/06/01$115,0004389z.serrano@datatables.net
    JenniferAcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,6503431j.acosta@datatables.net
    CaraStevensSales AssistantNew York462011/12/06$145,6003990c.stevens@datatables.net
    HermioneButlerRegional DirectorLondon472011/03/21$356,2501016h.butler@datatables.net
    LaelGreerSystems AdministratorLondon212009/02/27$103,5006733l.greer@datatables.net
    JonasAlexanderDeveloperSan Francisco302010/07/14$86,5008196j.alexander@datatables.net
    ShadDeckerRegional DirectorEdinburgh512008/11/13$183,0006373s.decker@datatables.net
    MichaelBruceJavascript DeveloperSingapore292011/06/27$183,0005384m.bruce@datatables.net
    DonnaSniderCustomer SupportNew York272011/01/25$112,0004226d.snider@datatables.net
    + +
    +
    +
    +
    + + +
    +
    +
    +
    +

    Complex headers with column visibility

    +

    + Complex headers (using colspan / rowspan) can be used to group columns of similar information in DataTables, creating a very powerful visual effect. +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    NameHR InformationContact
    PositionSalaryOfficeExtn.E-mail
    Tiger NixonSystem Architect$320,800Edinburgh5421t.nixon@datatables.net
    Garrett WintersAccountant$170,750Tokyo8422g.winters@datatables.net
    Ashton CoxJunior Technical Author$86,000San Francisco1562a.cox@datatables.net
    Cedric KellySenior Javascript Developer$433,060Edinburgh6224c.kelly@datatables.net
    Airi SatouAccountant$162,700Tokyo5407a.satou@datatables.net
    Brielle WilliamsonIntegration Specialist$372,000New York4804b.williamson@datatables.net
    Herrod ChandlerSales Assistant$137,500San Francisco9608h.chandler@datatables.net
    Rhona DavidsonIntegration Specialist$327,900Tokyo6200r.davidson@datatables.net
    Colleen HurstJavascript Developer$205,500San Francisco2360c.hurst@datatables.net
    Sonya FrostSoftware Engineer$103,600Edinburgh1667s.frost@datatables.net
    Jena GainesOffice Manager$90,560London3814j.gaines@datatables.net
    Quinn FlynnSupport Lead$342,000Edinburgh9497q.flynn@datatables.net
    Charde MarshallRegional Director$470,600San Francisco6741c.marshall@datatables.net
    Haley KennedySenior Marketing Designer$313,500London3597h.kennedy@datatables.net
    Tatyana FitzpatrickRegional Director$385,750London1965t.fitzpatrick@datatables.net
    Michael SilvaMarketing Designer$198,500London1581m.silva@datatables.net
    Paul ByrdChief Financial Officer (CFO)$725,000New York3059p.byrd@datatables.net
    Gloria LittleSystems Administrator$237,500New York1721g.little@datatables.net
    Bradley GreerSoftware Engineer$132,000London2558b.greer@datatables.net
    Dai RiosPersonnel Lead$217,500Edinburgh2290d.rios@datatables.net
    Jenette CaldwellDevelopment Lead$345,000New York1937j.caldwell@datatables.net
    Yuri BerryChief Marketing Officer (CMO)$675,000New York6154y.berry@datatables.net
    Caesar VancePre-Sales Support$106,450New York8330c.vance@datatables.net
    Doris WilderSales Assistant$85,600Sidney3023d.wilder@datatables.net
    Angelica RamosChief Executive Officer (CEO)$1,200,000London5797a.ramos@datatables.net
    Gavin JoyceDeveloper$92,575Edinburgh8822g.joyce@datatables.net
    Jennifer ChangRegional Director$357,650Singapore9239j.chang@datatables.net
    Brenden WagnerSoftware Engineer$206,850San Francisco1314b.wagner@datatables.net
    Fiona GreenChief Operating Officer (COO)$850,000San Francisco2947f.green@datatables.net
    Shou ItouRegional Marketing$163,000Tokyo8899s.itou@datatables.net
    Michelle HouseIntegration Specialist$95,400Sidney2769m.house@datatables.net
    Suki BurksDeveloper$114,500London6832s.burks@datatables.net
    Prescott BartlettTechnical Author$145,000London3606p.bartlett@datatables.net
    Gavin CortezTeam Leader$235,500San Francisco2860g.cortez@datatables.net
    Martena MccrayPost-Sales support$324,050Edinburgh8240m.mccray@datatables.net
    Unity ButlerMarketing Designer$85,675San Francisco5384u.butler@datatables.net
    Howard HatfieldOffice Manager$164,500San Francisco7031h.hatfield@datatables.net
    Hope FuentesSecretary$109,850San Francisco6318h.fuentes@datatables.net
    Vivian HarrellFinancial Controller$452,500San Francisco9422v.harrell@datatables.net
    Timothy MooneyOffice Manager$136,200London7580t.mooney@datatables.net
    Jackson BradshawDirector$645,750New York1042j.bradshaw@datatables.net
    Olivia LiangSupport Engineer$234,500Singapore2120o.liang@datatables.net
    Bruno NashSoftware Engineer$163,500London6222b.nash@datatables.net
    Sakura YamamotoSupport Engineer$139,575Tokyo9383s.yamamoto@datatables.net
    Thor WaltonDeveloper$98,540New York8327t.walton@datatables.net
    Finn CamachoSupport Engineer$87,500San Francisco2927f.camacho@datatables.net
    Serge BaldwinData Coordinator$138,575Singapore8352s.baldwin@datatables.net
    Zenaida FrankSoftware Engineer$125,250New York7439z.frank@datatables.net
    Zorita SerranoSoftware Engineer$115,000San Francisco4389z.serrano@datatables.net
    Jennifer AcostaJunior Javascript Developer$75,650Edinburgh3431j.acosta@datatables.net
    Cara StevensSales Assistant$145,600New York3990c.stevens@datatables.net
    Hermione ButlerRegional Director$356,250London1016h.butler@datatables.net
    Lael GreerSystems Administrator$103,500London6733l.greer@datatables.net
    Jonas AlexanderDeveloper$86,500San Francisco8196j.alexander@datatables.net
    Shad DeckerRegional Director$183,000Edinburgh6373s.decker@datatables.net
    Michael BruceJavascript Developer$183,000Singapore5384m.bruce@datatables.net
    Donna SniderCustomer Support$112,000New York4226d.snider@datatables.net
    NamePositionSalaryOfficeExtn.E-mail
    + +
    +
    +
    +
    + + +
    +
    +
    +
    +

    Row Created Callback

    +

    + The following example shows how a callback function can be used to format a particular row at draw time. For each + row that is generated for display, the createdRow function is called once and once only. It is passed the create row + node which can then be modified. +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    NamePositionOfficeAgeStart dateSalary
    Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
    Garrett WintersAccountantTokyo632011/07/25$170,750
    Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
    Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
    Airi SatouAccountantTokyo332008/11/28$162,700
    Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
    Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
    Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
    Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
    Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
    Jena GainesOffice ManagerLondon302008/12/19$90,560
    Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
    Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
    Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
    Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
    Michael SilvaMarketing DesignerLondon662012/11/27$198,500
    Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
    Gloria LittleSystems AdministratorNew York592009/04/10$237,500
    Bradley GreerSoftware EngineerLondon412012/10/13$132,000
    Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
    Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
    Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
    Caesar VancePre-Sales SupportNew York212011/12/12$106,450
    Doris WilderSales AssistantSidney232010/09/20$85,600
    Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
    Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
    Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
    Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
    Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
    Shou ItouRegional MarketingTokyo202011/08/14$163,000
    Michelle HouseIntegration SpecialistSidney372011/06/02$95,400
    Suki BurksDeveloperLondon532009/10/22$114,500
    Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
    Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
    Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
    Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
    Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
    Hope FuentesSecretarySan Francisco412010/02/12$109,850
    Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
    Timothy MooneyOffice ManagerLondon372008/12/11$136,200
    Jackson BradshawDirectorNew York652008/09/26$645,750
    Olivia LiangSupport EngineerSingapore642011/02/03$234,500
    Bruno NashSoftware EngineerLondon382011/05/03$163,500
    Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
    Thor WaltonDeveloperNew York612013/08/11$98,540
    Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
    Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
    Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
    Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
    Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
    Cara StevensSales AssistantNew York462011/12/06$145,600
    Hermione ButlerRegional DirectorLondon472011/03/21$356,250
    Lael GreerSystems AdministratorLondon212009/02/27$103,500
    Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
    Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
    Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
    Donna SniderCustomer SupportNew York272011/01/25$112,000
    + +
    +
    +
    +
    + + +
    +
    +
    +
    +

    State Saving

    +

    + DataTables has the option of being able to save the state of a table (its paging position, ordering state etc) so + that is can be restored when the user reloads a page, or comes back to the page after visiting a sub-page. This + state saving ability is enabled by the stateSave option. +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    NamePositionOfficeAgeStart dateSalary
    Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
    Garrett WintersAccountantTokyo632011/07/25$170,750
    Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
    Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
    Airi SatouAccountantTokyo332008/11/28$162,700
    Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
    Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
    Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
    Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
    Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
    Jena GainesOffice ManagerLondon302008/12/19$90,560
    Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
    Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
    Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
    Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
    Michael SilvaMarketing DesignerLondon662012/11/27$198,500
    Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
    Gloria LittleSystems AdministratorNew York592009/04/10$237,500
    Bradley GreerSoftware EngineerLondon412012/10/13$132,000
    Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
    Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
    Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
    Caesar VancePre-Sales SupportNew York212011/12/12$106,450
    Doris WilderSales AssistantSidney232010/09/20$85,600
    Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
    Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
    Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
    Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
    Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
    Shou ItouRegional MarketingTokyo202011/08/14$163,000
    Michelle HouseIntegration SpecialistSidney372011/06/02$95,400
    Suki BurksDeveloperLondon532009/10/22$114,500
    Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
    Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
    Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
    Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
    Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
    Hope FuentesSecretarySan Francisco412010/02/12$109,850
    Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
    Timothy MooneyOffice ManagerLondon372008/12/11$136,200
    Jackson BradshawDirectorNew York652008/09/26$645,750
    Olivia LiangSupport EngineerSingapore642011/02/03$234,500
    Bruno NashSoftware EngineerLondon382011/05/03$163,500
    Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
    Thor WaltonDeveloperNew York612013/08/11$98,540
    Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
    Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
    Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
    Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
    Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
    Cara StevensSales AssistantNew York462011/12/06$145,600
    Hermione ButlerRegional DirectorLondon472011/03/21$356,250
    Lael GreerSystems AdministratorLondon212009/02/27$103,500
    Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
    Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
    Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
    Donna SniderCustomer SupportNew York272011/01/25$112,000
    + +
    +
    +
    +
    + + +
    +
    +
    +
    +

    Fixed Columns

    +

    + When making use of DataTables' x-axis scrolling feature you may wish to fix the left or right most columns in place +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    First nameLast namePositionOfficeAgeStart dateSalaryExtn.E-mail
    TigerNixonSystem ArchitectEdinburgh612011/04/25$320,8005421t.nixon@datatables.net
    GarrettWintersAccountantTokyo632011/07/25$170,7508422g.winters@datatables.net
    AshtonCoxJunior Technical AuthorSan Francisco662009/01/12$86,0001562a.cox@datatables.net
    CedricKellySenior Javascript DeveloperEdinburgh222012/03/29$433,0606224c.kelly@datatables.net
    AiriSatouAccountantTokyo332008/11/28$162,7005407a.satou@datatables.net
    BrielleWilliamsonIntegration SpecialistNew York612012/12/02$372,0004804b.williamson@datatables.net
    HerrodChandlerSales AssistantSan Francisco592012/08/06$137,5009608h.chandler@datatables.net
    RhonaDavidsonIntegration SpecialistTokyo552010/10/14$327,9006200r.davidson@datatables.net
    ColleenHurstJavascript DeveloperSan Francisco392009/09/15$205,5002360c.hurst@datatables.net
    SonyaFrostSoftware EngineerEdinburgh232008/12/13$103,6001667s.frost@datatables.net
    JenaGainesOffice ManagerLondon302008/12/19$90,5603814j.gaines@datatables.net
    QuinnFlynnSupport LeadEdinburgh222013/03/03$342,0009497q.flynn@datatables.net
    ChardeMarshallRegional DirectorSan Francisco362008/10/16$470,6006741c.marshall@datatables.net
    HaleyKennedySenior Marketing DesignerLondon432012/12/18$313,5003597h.kennedy@datatables.net
    TatyanaFitzpatrickRegional DirectorLondon192010/03/17$385,7501965t.fitzpatrick@datatables.net
    MichaelSilvaMarketing DesignerLondon662012/11/27$198,5001581m.silva@datatables.net
    PaulByrdChief Financial Officer (CFO)New York642010/06/09$725,0003059p.byrd@datatables.net
    GloriaLittleSystems AdministratorNew York592009/04/10$237,5001721g.little@datatables.net
    BradleyGreerSoftware EngineerLondon412012/10/13$132,0002558b.greer@datatables.net
    DaiRiosPersonnel LeadEdinburgh352012/09/26$217,5002290d.rios@datatables.net
    JenetteCaldwellDevelopment LeadNew York302011/09/03$345,0001937j.caldwell@datatables.net
    YuriBerryChief Marketing Officer (CMO)New York402009/06/25$675,0006154y.berry@datatables.net
    CaesarVancePre-Sales SupportNew York212011/12/12$106,4508330c.vance@datatables.net
    DorisWilderSales AssistantSidney232010/09/20$85,6003023d.wilder@datatables.net
    AngelicaRamosChief Executive Officer (CEO)London472009/10/09$1,200,0005797a.ramos@datatables.net
    GavinJoyceDeveloperEdinburgh422010/12/22$92,5758822g.joyce@datatables.net
    JenniferChangRegional DirectorSingapore282010/11/14$357,6509239j.chang@datatables.net
    BrendenWagnerSoftware EngineerSan Francisco282011/06/07$206,8501314b.wagner@datatables.net
    FionaGreenChief Operating Officer (COO)San Francisco482010/03/11$850,0002947f.green@datatables.net
    ShouItouRegional MarketingTokyo202011/08/14$163,0008899s.itou@datatables.net
    MichelleHouseIntegration SpecialistSidney372011/06/02$95,4002769m.house@datatables.net
    SukiBurksDeveloperLondon532009/10/22$114,5006832s.burks@datatables.net
    PrescottBartlettTechnical AuthorLondon272011/05/07$145,0003606p.bartlett@datatables.net
    GavinCortezTeam LeaderSan Francisco222008/10/26$235,5002860g.cortez@datatables.net
    MartenaMccrayPost-Sales supportEdinburgh462011/03/09$324,0508240m.mccray@datatables.net
    UnityButlerMarketing DesignerSan Francisco472009/12/09$85,6755384u.butler@datatables.net
    HowardHatfieldOffice ManagerSan Francisco512008/12/16$164,5007031h.hatfield@datatables.net
    HopeFuentesSecretarySan Francisco412010/02/12$109,8506318h.fuentes@datatables.net
    VivianHarrellFinancial ControllerSan Francisco622009/02/14$452,5009422v.harrell@datatables.net
    TimothyMooneyOffice ManagerLondon372008/12/11$136,2007580t.mooney@datatables.net
    JacksonBradshawDirectorNew York652008/09/26$645,7501042j.bradshaw@datatables.net
    OliviaLiangSupport EngineerSingapore642011/02/03$234,5002120o.liang@datatables.net
    BrunoNashSoftware EngineerLondon382011/05/03$163,5006222b.nash@datatables.net
    SakuraYamamotoSupport EngineerTokyo372009/08/19$139,5759383s.yamamoto@datatables.net
    ThorWaltonDeveloperNew York612013/08/11$98,5408327t.walton@datatables.net
    FinnCamachoSupport EngineerSan Francisco472009/07/07$87,5002927f.camacho@datatables.net
    SergeBaldwinData CoordinatorSingapore642012/04/09$138,5758352s.baldwin@datatables.net
    ZenaidaFrankSoftware EngineerNew York632010/01/04$125,2507439z.frank@datatables.net
    ZoritaSerranoSoftware EngineerSan Francisco562012/06/01$115,0004389z.serrano@datatables.net
    JenniferAcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,6503431j.acosta@datatables.net
    CaraStevensSales AssistantNew York462011/12/06$145,6003990c.stevens@datatables.net
    HermioneButlerRegional DirectorLondon472011/03/21$356,2501016h.butler@datatables.net
    LaelGreerSystems AdministratorLondon212009/02/27$103,5006733l.greer@datatables.net
    JonasAlexanderDeveloperSan Francisco302010/07/14$86,5008196j.alexander@datatables.net
    ShadDeckerRegional DirectorEdinburgh512008/11/13$183,0006373s.decker@datatables.net
    MichaelBruceJavascript DeveloperSingapore292011/06/27$183,0005384m.bruce@datatables.net
    DonnaSniderCustomer SupportNew York272011/01/25$112,0004226d.snider@datatables.net
    +
    +
    +
    +
    + + +
    +
    +
    +
    +

    Fixed Header

    +

    + The FixedHeader will freeze in place the header and/or footer in a DataTable, ensuring that title information will remain always visible. +

    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    NamePositionOfficeAgeStart dateSalary
    Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
    Garrett WintersAccountantTokyo632011/07/25$170,750
    Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
    Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
    Airi SatouAccountantTokyo332008/11/28$162,700
    Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
    Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
    Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
    Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
    Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
    Jena GainesOffice ManagerLondon302008/12/19$90,560
    Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
    Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
    Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
    Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
    Michael SilvaMarketing DesignerLondon662012/11/27$198,500
    Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
    Gloria LittleSystems AdministratorNew York592009/04/10$237,500
    Bradley GreerSoftware EngineerLondon412012/10/13$132,000
    Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
    Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
    Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
    Caesar VancePre-Sales SupportNew York212011/12/12$106,450
    Doris WilderSales AssistantSidney232010/09/20$85,600
    Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
    Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
    Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
    Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
    Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
    Shou ItouRegional MarketingTokyo202011/08/14$163,000
    Michelle HouseIntegration SpecialistSidney372011/06/02$95,400
    Suki BurksDeveloperLondon532009/10/22$114,500
    Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
    Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
    Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
    Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
    Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
    Hope FuentesSecretarySan Francisco412010/02/12$109,850
    Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
    Timothy MooneyOffice ManagerLondon372008/12/11$136,200
    Jackson BradshawDirectorNew York652008/09/26$645,750
    Olivia LiangSupport EngineerSingapore642011/02/03$234,500
    Bruno NashSoftware EngineerLondon382011/05/03$163,500
    Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
    Thor WaltonDeveloperNew York612013/08/11$98,540
    Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
    Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
    Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
    Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
    Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
    Cara StevensSales AssistantNew York462011/12/06$145,600
    Hermione ButlerRegional DirectorLondon472011/03/21$356,250
    Lael GreerSystems AdministratorLondon212009/02/27$103,500
    Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
    Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
    Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
    Donna SniderCustomer SupportNew York272011/01/25$112,000
    NamePositionOfficeAgeStart dateSalary
    +
    +
    +
    +
    + + +{% endblock content %} + +{% block extra_js %} + + + + + + + + + + + + + + + + + + + + + + + + +{% endblock extra_js %} + diff --git a/pxy_dashboard/templates/pxy_dashboard/components/widgets/__init__.py b/pxy_dashboard/templates/pxy_dashboard/components/widgets/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/pxy_dashboard/templates/pxy_dashboard/components/widgets/widgets.html b/pxy_dashboard/templates/pxy_dashboard/components/widgets/widgets.html new file mode 100644 index 0000000..6c73614 --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/components/widgets/widgets.html @@ -0,0 +1,878 @@ +{% extends "partials/base.html" %} +{% load static %} + +{% block title %}Widgets{% endblock title %} + +{% block extra_css %} +{% endblock extra_css %} + + +{% block pagetitle %} +{% include "partials/page-title.html" with pagetitle="Extras" title="Widgets" %} +{% endblock pagetitle %} + +{% block content %} +
    +
    +
    +
    +
    +
    +
    Customers
    +

    54,214

    +

    + 2,541 + Since last month +

    +
    +
    + + + +
    +
    +
    +
    +
    + +
    +
    +
    +
    +
    +
    Orders
    +

    7,543

    +

    + 1.08% + Since last month +

    +
    +
    + + + +
    +
    +
    +
    +
    + +
    +
    +
    +
    +
    +
    Revenue
    +

    $9,254

    +

    + 7.00% + Since last month +

    +
    +
    + + + +
    +
    + +
    +
    +
    + +
    +
    +
    +
    +
    +
    Growth
    +

    + 20.6%

    +

    + 4.87% + Since last month +

    +
    +
    + + + +
    +
    + +
    +
    +
    +
    +
    +
    +
    +
    +
    Conversation
    +

    9.62%

    +

    + 3.07% + Since last month +

    +
    +
    + + + +
    +
    + +
    +
    +
    +
    +
    +
    +
    +
    +
    Balance
    +

    $168.5k

    +

    + 18.34% + Since last month +

    +
    +
    + + + +
    +
    + +
    +
    +
    +
    + +
    +
    +
    +
    +
    + +
    +
    Revenue
    +

    $6,254

    +

    + 7.00% + Since last month +

    +
    +
    +
    + +
    +
    +
    +
    + +
    +
    Growth
    +

    + 30.56%

    +

    + 4.87% + Since last month +

    +
    +
    +
    + +
    +
    +
    +
    + +
    +
    Customers
    +

    36,254

    +

    + 5.27% + Since last month +

    +
    +
    +
    + +
    +
    +
    +
    + +
    +
    Orders
    +

    $10,245

    +

    + 17.26% + Since last month +

    +
    +
    +
    +
    + + +
    +
    +
    +
    +
    + +
    +
    Customers
    +

    54,214

    +

    + 5.27% + Since last month +

    +
    +
    +
    + +
    +
    +
    +
    + +
    +
    Orders
    +

    7,543

    +

    + 1.08% + Since last month +

    +
    +
    +
    + +
    +
    +
    +
    + +
    +
    Revenue
    +

    $9,254

    +

    + 7.00% + Since last month +

    +
    +
    +
    + +
    +
    +
    +
    + +
    +
    Growth
    +

    + 20.06%

    +

    + 4.87% + Since last month +

    +
    +
    +
    +
    +
    +
    +
    + +
    +
    Conversation
    +

    9.62%

    +

    + 5.27% + Since last month +

    +
    +
    +
    +
    + + +
    + +
    +
    +
    +
    +
    +
    Campaign Sent
    +

    9,184

    +

    + 3.27% +

    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    + +
    +
    +
    +
    +
    +
    New Leads
    +

    3,254

    +

    + 5.38% +

    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    + +
    +
    +
    +
    +
    +
    Deals
    +

    861

    +

    + 4.87% +

    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    + +
    +
    +
    +
    +
    +
    Booked Revenue
    +

    $253k

    +

    + 11.7% +

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

    Chat

    + +
    + +
    +
    +
      +
    • +
      + male + 10:00 +
      +
      +
      + Geneva +

      + Hello! +

      +
      +
      +
    • +
    • +
      + Female + 10:01 +
      +
      +
      + Dominic +

      + Hi, How are you? What about our next meeting? +

      +
      +
      +
    • +
    • +
      + male + 10:01 +
      +
      +
      + Geneva +

      + Yeah everything is fine +

      +
      +
      +
    • +
    • +
      + male + 10:02 +
      +
      +
      + Dominic +

      + Wow that's great +

      +
      +
      +
    • +
    +
    +
    +
    +
    +
    + +
    + Please enter your messsage +
    +
    +
    + +
    +
    +
    +
    + +
    + +
    +
    + +
    +
    +
    + + avatar-2 + +
    +

    Michael Franklin

    +

    Authorised Brand Seller

    + +
      +
    • +
      $ 25,184
      +

      Total Revenue

      +
    • +
    • +
      5482
      +

      Number of Orders

      +
    • +
    +
    + +
    + +
    + +
    +
    +
    +

    Enhance your Campaign for better outreach

    + + Generic placeholder image + +
    + + Know More +
    +
    + +
    + + +
    + +
    + +
    +
    +

    Todo

    + +
    + +
    +
    +
    +
    +
    of remaining
    +
    +
    + Archive +
    +
    +
    + +
    +
      +
      + +
      +
      +
      +
      + +
      + Please enter your task name +
      +
      +
      + +
      +
      +
      +
      +
      +
      +
      +
      + + +
      +
      + +
      +
      +

      Messages

      + +
      + +
      +
      +
      +
      +

      Tomaslau

      +

      I've finished it! See you so...

      +

      + Reply +

      +
      +
      +
      +

      Stillnotdavid

      +

      This theme is awesome!

      +

      + Reply +

      +
      +
      +
      +

      Kurafire

      +

      Nice to meet you

      +

      + Reply +

      +
      + +
      +
      +

      Shahedk

      +

      Hey! there I'm available...

      +

      + Reply +

      +
      +
      +
      +

      Adhamdannaway

      +

      This theme is awesome!

      +

      + Reply +

      +
      +
      +
      +
      +
      + + +
      +
      +
      +

      Recent Activity

      + +
      + +
      +
      +
      + +
      + You sold an item + Paul Burgess just purchased “Jidox - Admin Dashboard”! +

      + 5 minutes ago +

      +
      +
      + +
      + +
      + Product on the Bootstrap Market + Dave Gamache added + Admin Dashboard + +

      + 30 minutes ago +

      +
      +
      + +
      + +
      + Robert Delaney + Send you message + "Are you there?" + +

      + 2 hours ago +

      +
      +
      + +
      + +
      + Audrey Tobey + Uploaded a photo + "Error.jpg" + +

      + 14 hours ago +

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

      Transactions

      + +
      + +
      +
      +
      + +
      + +
      + -$489.30 +
      +
      +
      +
      + +
      + +
      + +$1578.54 +
      +
      +
      +
      + +
      +
      + Freelance work - Shane +

      16 Sep 2018

      +
      +
      + +$247.5 +
      +
      +
      +
      + +
      +
      + Hire new developer for work +

      09 Sep 2018

      +
      +
      + -$185.14 +
      +
      +
      +
      + +
      +
      + Money received from paypal +

      28 Aug 2018

      +
      +
      + +$684.45 +
      +
      +
      +
      + +
      +
      + Zairo landing purchased +

      17 Aug 2018

      +
      +
      + -$21.00 +
      +
      +
      +
      + +
      +
      + Purchased Ubold admin template +

      17 Aug 2018

      +
      +
      + -$32.89 +
      +
      +
      +
      + +
      +
      + Interest received +

      09 Sep 2018

      +
      +
      + +$784.55 +
      +
      +
      +
      + +
      + +
      + + +{% endblock content %} + +{% block extra_js %} + + + + + + + + + + + + + + + + + + +{% endblock extra_js %} + diff --git a/pxy_dashboard/templates/pxy_dashboard/custom/__init__.py b/pxy_dashboard/templates/pxy_dashboard/custom/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/pxy_dashboard/templates/pxy_dashboard/custom/auth-pages/__init__.py b/pxy_dashboard/templates/pxy_dashboard/custom/auth-pages/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/pxy_dashboard/templates/pxy_dashboard/custom/auth-pages/auth-confirm-mail-2.html b/pxy_dashboard/templates/pxy_dashboard/custom/auth-pages/auth-confirm-mail-2.html new file mode 100644 index 0000000..bc2c085 --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/custom/auth-pages/auth-confirm-mail-2.html @@ -0,0 +1,109 @@ +{% load static %} + +{% include "partials/main.html" %} + + +{% include "partials/title-meta.html" with title="Confirm Email" %} + +{% include "partials/head-css.html" %} + + + + + +
      + + +
      +
      + +
      +
      + + + +
      +
      + + + + +
      + +
      + mail sent image +

      Please check your email

      +

      + A email has been send to youremail@domain.com. + Please check for an email from company and click on the included link to + reset your password. +

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

      + © Jidox - Coderthemes.com +

      +
      + +
      +
      + + + +
      + + +{% include "partials/footer-script.html" %} + +{% block extra_js %} + + +{% endblock extra_js %} + + + diff --git a/pxy_dashboard/templates/pxy_dashboard/custom/auth-pages/auth-confirm-mail.html b/pxy_dashboard/templates/pxy_dashboard/custom/auth-pages/auth-confirm-mail.html new file mode 100644 index 0000000..cbcd239 --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/custom/auth-pages/auth-confirm-mail.html @@ -0,0 +1,74 @@ +{% load static %} + +{% include "partials/main.html" %} + + + {% include "partials/title-meta.html" with title="Confirm Email" %} + + {% include "partials/head-css.html" %} + + + + + {% include "partials/background.html" %} + + + + +
      + + © Jidox - Coderthemes.com + +
      + {% include "partials/footer-script.html" %} + + {% block extra_js %} + + + {% endblock extra_js %} \ No newline at end of file diff --git a/pxy_dashboard/templates/pxy_dashboard/custom/auth-pages/auth-lock-screen-2.html b/pxy_dashboard/templates/pxy_dashboard/custom/auth-pages/auth-lock-screen-2.html new file mode 100644 index 0000000..c933fc3 --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/custom/auth-pages/auth-lock-screen-2.html @@ -0,0 +1,122 @@ +{% load static %} + +{% include "partials/main.html" %} + + +{% include "partials/title-meta.html" with title="Lock Screen" %} + +{% include "partials/head-css.html" %} + + + +
      + + +
      +
      + +
      +
      + + + +
      +
      + + + + +
      + +
      + user-image +

      Hi ! Tosha

      +

      Enter your password to access the admin.

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

      Authentication in with

      + +
      +
      + +
      + + + + +
      +
      + + + +
      + +{% include "partials/footer-script.html" %} + +{% block extra_js %} + + +{% endblock extra_js %} + + + diff --git a/pxy_dashboard/templates/pxy_dashboard/custom/auth-pages/auth-lock-screen.html b/pxy_dashboard/templates/pxy_dashboard/custom/auth-pages/auth-lock-screen.html new file mode 100644 index 0000000..2c5ea92 --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/custom/auth-pages/auth-lock-screen.html @@ -0,0 +1,85 @@ +{% load static %} + +{% include "partials/main.html" %} + + + {% include "partials/title-meta.html" with title="Lock Screen" %} + + {% include "partials/head-css.html" %} + + + + + {% include "partials/background.html" %} + + + + +
      + + © Jidox - Coderthemes.com + +
      + {% include "partials/footer-script.html" %} + + {% block extra_js %} + + + {% endblock extra_js %} \ No newline at end of file diff --git a/pxy_dashboard/templates/pxy_dashboard/custom/auth-pages/auth-login-2.html b/pxy_dashboard/templates/pxy_dashboard/custom/auth-pages/auth-login-2.html new file mode 100644 index 0000000..65cdfe5 --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/custom/auth-pages/auth-login-2.html @@ -0,0 +1,140 @@ +{% load static %} + +{% include "partials/main.html" %} + + + {% include "partials/title-meta.html" with title="Log In" %} + + {% include "partials/head-css.html" %} + + + +
      + +
      +
      + +
      +
      + + +
      + +
      + + + + +
      + +

      Sign In

      +

      Enter your email address and password to access account.

      + + +
      +
      + + +
      +
      + Forgot your + password? + + +
      +
      +
      + + +
      +
      +
      + +
      + +
      +

      Sign in with

      + +
      +
      + +
      + + +
      +

      Don't have an account? Sign Up

      +
      + +
      +
      + + +
      + + + {% include "partials/footer-script.html" %} + + {% block extra_js %} + + + {% endblock extra_js %} \ No newline at end of file diff --git a/pxy_dashboard/templates/pxy_dashboard/custom/auth-pages/auth-login.html b/pxy_dashboard/templates/pxy_dashboard/custom/auth-pages/auth-login.html new file mode 100644 index 0000000..f4c4567 --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/custom/auth-pages/auth-login.html @@ -0,0 +1,106 @@ +{% load static %} + +{% include "partials/main.html" %} + + + {% include "partials/title-meta.html" with title="Log In" %} + + {% include "partials/head-css.html" %} + + + + + {% include "partials/background.html" %} + + + + +
      + + © Jidox - Coderthemes.com + +
      + + {% include "partials/footer-script.html" %} + + {% block extra_js %} + + + {% endblock extra_js %} \ No newline at end of file diff --git a/pxy_dashboard/templates/pxy_dashboard/custom/auth-pages/auth-logout-2.html b/pxy_dashboard/templates/pxy_dashboard/custom/auth-pages/auth-logout-2.html new file mode 100644 index 0000000..06891ae --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/custom/auth-pages/auth-logout-2.html @@ -0,0 +1,113 @@ +{% load static %} + +{% include "partials/main.html" %} + + + {% include "partials/title-meta.html" with title="Logout" %} + + {% include "partials/head-css.html" %} + + + + +
      + + +
      +
      + +
      +
      + + + +
      +
      + + + + +
      + +
      +

      See You Again !

      +

      You are now successfully sign out.

      +
      + + +
      + + + + + + + +
      + +
      + + + + +
      +
      + + + +
      + + {% include "partials/footer-script.html" %} + + {% block extra_js %} + + + {% endblock extra_js %} \ No newline at end of file diff --git a/pxy_dashboard/templates/pxy_dashboard/custom/auth-pages/auth-logout.html b/pxy_dashboard/templates/pxy_dashboard/custom/auth-pages/auth-logout.html new file mode 100644 index 0000000..4184d10 --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/custom/auth-pages/auth-logout.html @@ -0,0 +1,83 @@ +{% load static %} + +{% include "partials/main.html" %} + + +{% include "partials/title-meta.html" with title="Logout" %} + +{% include "partials/head-css.html" %} + + + + + {% include "partials/background.html" %} + + + + +
      + © Jidox - Coderthemes.com +
      +{% include "partials/footer-script.html" %} + +{% block extra_js %} + + +{% endblock extra_js %} + + + diff --git a/pxy_dashboard/templates/pxy_dashboard/custom/auth-pages/auth-recoverpw-2.html b/pxy_dashboard/templates/pxy_dashboard/custom/auth-pages/auth-recoverpw-2.html new file mode 100644 index 0000000..00b9b13 --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/custom/auth-pages/auth-recoverpw-2.html @@ -0,0 +1,104 @@ +{% load static %} + +{% include "partials/main.html" %} + + + {% include "partials/title-meta.html" with title="Recover Password" %} + + {% include "partials/head-css.html" %} + + + + +
      + +
      +
      + +
      +
      + + + +
      +
      + + + + +
      + +

      Reset Password

      +

      Enter your email address and we'll send you an email with instructions to + reset your password.

      + + +
      +
      + + +
      +
      + +
      +
      + +
      + + + + +
      +
      + + + +
      + + {% include "partials/footer-script.html" %} + + {% block extra_js %} + + + {% endblock extra_js %} \ No newline at end of file diff --git a/pxy_dashboard/templates/pxy_dashboard/custom/auth-pages/auth-recoverpw.html b/pxy_dashboard/templates/pxy_dashboard/custom/auth-pages/auth-recoverpw.html new file mode 100644 index 0000000..12617b1 --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/custom/auth-pages/auth-recoverpw.html @@ -0,0 +1,80 @@ +{% load static %} + +{% include "partials/main.html" %} + + + {% include "partials/title-meta.html" with title="Recover Password" %} + + {% include "partials/head-css.html" %} + + + + + {% include "partials/background.html" %} + + + + +
      + © Jidox - Coderthemes.com +
      + {% include "partials/footer-script.html" %} + + {% block extra_js %} + + + {% endblock extra_js %} \ No newline at end of file diff --git a/pxy_dashboard/templates/pxy_dashboard/custom/auth-pages/auth-register-2.html b/pxy_dashboard/templates/pxy_dashboard/custom/auth-pages/auth-register-2.html new file mode 100644 index 0000000..ef193e7 --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/custom/auth-pages/auth-register-2.html @@ -0,0 +1,144 @@ +{% load static %} + +{% include "partials/main.html" %} + + + {% include "partials/title-meta.html" with title="Register" %} + + {% include "partials/head-css.html" %} + + + +
      + +
      +
      + +
      +
      + + + + +
      +
      + + + + +
      + +

      Free Sign Up

      +

      Don't have an account? Create your account, it takes less than a minute +

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

      Create account using

      + +
      +
      + +
      + + +
      +

      Already have account? Log In

      +
      + +
      +
      + + +
      + + {% include "partials/footer-script.html" %} + + {% block extra_js %} + + + {% endblock extra_js %} \ No newline at end of file diff --git a/pxy_dashboard/templates/pxy_dashboard/custom/auth-pages/auth-register.html b/pxy_dashboard/templates/pxy_dashboard/custom/auth-pages/auth-register.html new file mode 100644 index 0000000..3707dd3 --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/custom/auth-pages/auth-register.html @@ -0,0 +1,103 @@ +{% load static %} + +{% include "partials/main.html" %} + + +{% include "partials/title-meta.html" with title="Register" %} + +{% include "partials/head-css.html" %} + + + + + {% include "partials/background.html" %} + + + + +
      + © Jidox - Coderthemes.com +
      +{% include "partials/footer-script.html" %} + +{% block extra_js %} + + +{% endblock extra_js %} + + + diff --git a/pxy_dashboard/templates/pxy_dashboard/custom/error-pages/__init__.py b/pxy_dashboard/templates/pxy_dashboard/custom/error-pages/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/pxy_dashboard/templates/pxy_dashboard/custom/error-pages/error-404-alt.html b/pxy_dashboard/templates/pxy_dashboard/custom/error-pages/error-404-alt.html new file mode 100644 index 0000000..d3ecadd --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/custom/error-pages/error-404-alt.html @@ -0,0 +1,36 @@ +{% extends "partials/base.html" %} +{% load static %} + +{% block title %}Error 404{% endblock title %} + + +{% block pagetitle %} +{% include "partials/page-title.html" with pagetitle="Pages" title="404 Error" %} +{% endblock pagetitle %} + +{% block content %} +
      +
      +
      + +

      404

      +

      Page Not Found

      +

      It's looking like you may have taken a wrong turn. Don't worry... it + happens to the best of us. Here's a + little tip that might help you get back on track.

      + + Back to Home +
      +
      +
      + + +{% endblock content %} + +{% block extra_js %} + + + + +{% endblock extra_js %} + diff --git a/pxy_dashboard/templates/pxy_dashboard/custom/error-pages/error-404.html b/pxy_dashboard/templates/pxy_dashboard/custom/error-pages/error-404.html new file mode 100644 index 0000000..86c8c07 --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/custom/error-pages/error-404.html @@ -0,0 +1,65 @@ +{% load static %} + +{% include "partials/main.html" %} + + +{% include "partials/title-meta.html" with title="Error 404" %} + +{% include "partials/head-css.html" %} + + + + + {% include "partials/background.html" %} + + + + +
      + © Attex - Coderthemes.com +
      + +{% include "partials/footer-script.html" %} + +{% block extra_js %} + + +{% endblock extra_js %} + + + diff --git a/pxy_dashboard/templates/pxy_dashboard/custom/error-pages/error-500.html b/pxy_dashboard/templates/pxy_dashboard/custom/error-pages/error-500.html new file mode 100644 index 0000000..f95d493 --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/custom/error-pages/error-500.html @@ -0,0 +1,68 @@ +{% load static %} + +{% include "partials/main.html" %} + + +{% include "partials/title-meta.html" with title="Error 500" %} + +{% include "partials/head-css.html" %} + + + + +{% include "partials/background.html" %} + + + + +
      + © Jidox - Coderthemes.com +
      + +{% include "partials/footer-script.html" %} + +{% block extra_js %} + + +{% endblock extra_js %} + + + diff --git a/pxy_dashboard/templates/pxy_dashboard/custom/layouts/__init__.py b/pxy_dashboard/templates/pxy_dashboard/custom/layouts/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/pxy_dashboard/templates/pxy_dashboard/custom/layouts/compact.html b/pxy_dashboard/templates/pxy_dashboard/custom/layouts/compact.html new file mode 100644 index 0000000..a70bfa2 --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/custom/layouts/compact.html @@ -0,0 +1,673 @@ +{% load static %} + + + + + + {% include "partials/title-meta.html" with title="Layout Compact" %} + + + + + + {% include "partials/head-css.html" %} + + + + +
      + + {% include "partials/topbar.html" %} + + {% include "partials/left-sidebar.html" %} + + + + + +
      +
      + + +
      + +
      +
      +
      +

      Layout Icon View

      +
      +
      + + + + +
      + + + +
      +
      +
      +
      + +
      +
      +
      +
      +
      +
      +
      Customers
      +

      54,214

      +

      + 2,541 + Since last month +

      +
      +
      + + + +
      +
      +
      +
      +
      + +
      +
      +
      +
      +
      +
      Orders
      +

      7,543

      +

      + 1.08% + Since last month +

      +
      +
      + + + +
      +
      +
      +
      +
      + +
      +
      +
      +
      +
      +
      Revenue
      +

      $9,254

      +

      + 7.00% + Since last month +

      +
      +
      + + + +
      +
      + +
      +
      +
      + +
      +
      +
      +
      +
      +
      Growth
      +

      + 20.6%

      +

      + 4.87% + Since last month +

      +
      +
      + + + +
      +
      + +
      +
      +
      +
      +
      +
      +
      +
      +
      Conversation
      +

      9.62%

      +

      + 3.07% + Since last month +

      +
      +
      + + + +
      +
      + +
      +
      +
      +
      +
      +
      +
      +
      +
      Balance
      +

      $168.5k

      +

      + 18.34% + Since last month +

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

      Total Sales

      + +
      + +
      +
      + +
      Brooklyn, New York
      +
      + 72k +
      +
      +
      +
      + +
      The Castro, San Francisco
      +
      + 39k +
      +
      +
      +
      + +
      Kovan, Singapore
      +
      + 61k +
      +
      +
      +
      +
      +
      +
      +
      +
      +
      +

      Revenue

      + +
      +
      +
      +
      +
      +

      Current Week

      +

      + $1705.54 +

      +
      +
      +

      Previous Week

      +

      + $6,523.25 +

      +
      +
      +

      Conversation

      +

      + 8.27% +

      +
      +
      +

      Customers

      +

      + 69k +

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

      Revenue By Locations

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

      Top Selling Products

      + Export +
      +
      +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      ProductPriceOrdersAvl. QuantitySeller
      ASOS Ridley High Waist$79.49828,540Adidas
      Marco Lightweight Shirt$12.5586,320Puma
      Half Sleeve Shirt$9.9925410,258Nike
      Lightweight Jacket$69.995601,020Puma
      Marco Sport Shoes$119.9975357Adidas
      Custom Women's T-shirts$45.0085135Branded
      Marco Sport Shoes$119.9975357Adidas
      +
      +
      + View All +
      +
      +
      +
      +
      + + +
      +
      +
      +
      +

      Channels

      + Export +
      + +
      + +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      ChannelVisitsProgress
      Direct2,050 +
      +
      +
      +
      Organic Search1,405 +
      +
      +
      +
      Refferal750 +
      +
      +
      +
      Social540 +
      +
      +
      +
      Other8,965 +
      +
      +
      +
      +
      +
      +
      +
      + +
      +
      +
      +

      Social Media Traffic

      + Export +
      + +
      + +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      NetworkVisitsProgress
      Facebook2,250 +
      +
      +
      +
      Instagram1,501 +
      +
      +
      +
      Twitter750 +
      +
      +
      +
      LinkedIn540 +
      +
      +
      +
      Other13,851 +
      +
      +
      +
      +
      +
      +
      +
      + +
      +
      +
      +

      Engagement Overview

      + Export +
      + +
      + +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      Duration (Secs)SessionsViews
      0-302,2504,250
      31-601,5012,050
      61-1207501,600
      121-2405401,040
      141-42056886
      +
      +
      +
      +
      + +
      + + + +
      + + +
      + + {% include "partials/footer.html" %} + +
      + + + + + +
      + + + {% include "partials/right-sidebar.html" %} + + {% include "partials/footer-script.html" %} + {% block extra_js %} + + + + + + + + + + + + + + + + + + {% endblock extra_js %} + + \ No newline at end of file diff --git a/pxy_dashboard/templates/pxy_dashboard/custom/layouts/detached.html b/pxy_dashboard/templates/pxy_dashboard/custom/layouts/detached.html new file mode 100644 index 0000000..b05bb47 --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/custom/layouts/detached.html @@ -0,0 +1,671 @@ +{% load static %} + + + + + + {% include "partials/title-meta.html" with title="Layout Detached" %} + + + + + + {% include "partials/head-css.html" %} + + + + +
      + + {% include "partials/topbar.html" %} + + {% include "partials/left-sidebar.html" %} + + + + + +
      +
      + + +
      + +
      +
      +
      +

      Layout Full

      +
      +
      + + + + +
      + + + +
      +
      +
      +
      + +
      +
      +
      +
      +
      +
      +
      Customers
      +

      54,214

      +

      + 2,541 + Since last month +

      +
      +
      + + + +
      +
      +
      +
      +
      + +
      +
      +
      +
      +
      +
      Orders
      +

      7,543

      +

      + 1.08% + Since last month +

      +
      +
      + + + +
      +
      +
      +
      +
      + +
      +
      +
      +
      +
      +
      Revenue
      +

      $9,254

      +

      + 7.00% + Since last month +

      +
      +
      + + + +
      +
      + +
      +
      +
      + +
      +
      +
      +
      +
      +
      Growth
      +

      + 20.6%

      +

      + 4.87% + Since last month +

      +
      +
      + + + +
      +
      + +
      +
      +
      +
      +
      +
      +
      +
      +
      Conversation
      +

      9.62%

      +

      + 3.07% + Since last month +

      +
      +
      + + + +
      +
      + +
      +
      +
      +
      +
      +
      +
      +
      +
      Balance
      +

      $168.5k

      +

      + 18.34% + Since last month +

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

      Total Sales

      + +
      + +
      +
      + +
      Brooklyn, New York
      +
      + 72k +
      +
      +
      +
      + +
      The Castro, San Francisco
      +
      + 39k +
      +
      +
      +
      + +
      Kovan, Singapore
      +
      + 61k +
      +
      +
      +
      +
      +
      +
      +
      +
      +
      +

      Revenue

      + +
      +
      +
      +
      +
      +

      Current Week

      +

      + $1705.54 +

      +
      +
      +

      Previous Week

      +

      + $6,523.25 +

      +
      +
      +

      Conversation

      +

      + 8.27% +

      +
      +
      +

      Customers

      +

      + 69k +

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

      Revenue By Locations

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

      Top Selling Products

      + Export +
      +
      +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      ProductPriceOrdersAvl. QuantitySeller
      ASOS Ridley High Waist$79.49828,540Adidas
      Marco Lightweight Shirt$12.5586,320Puma
      Half Sleeve Shirt$9.9925410,258Nike
      Lightweight Jacket$69.995601,020Puma
      Marco Sport Shoes$119.9975357Adidas
      Custom Women's T-shirts$45.0085135Branded
      Marco Sport Shoes$119.9975357Adidas
      +
      +
      + View All +
      +
      +
      +
      +
      + + +
      +
      +
      +
      +

      Channels

      + Export +
      + +
      + +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      ChannelVisitsProgress
      Direct2,050 +
      +
      +
      +
      Organic Search1,405 +
      +
      +
      +
      Refferal750 +
      +
      +
      +
      Social540 +
      +
      +
      +
      Other8,965 +
      +
      +
      +
      +
      +
      +
      +
      + +
      +
      +
      +

      Social Media Traffic

      + Export +
      + +
      + +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      NetworkVisitsProgress
      Facebook2,250 +
      +
      +
      +
      Instagram1,501 +
      +
      +
      +
      Twitter750 +
      +
      +
      +
      LinkedIn540 +
      +
      +
      +
      Other13,851 +
      +
      +
      +
      +
      +
      +
      +
      + +
      +
      +
      +

      Engagement Overview

      + Export +
      + +
      + +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      Duration (Secs)SessionsViews
      0-302,2504,250
      31-601,5012,050
      61-1207501,600
      121-2405401,040
      141-42056886
      +
      +
      +
      +
      + +
      + + +
      + + +
      + + + {% include "partials/footer.html" %} + +
      + + + + + +
      + + + {% include "partials/right-sidebar.html" %} + + {% include "partials/footer-script.html" %} + {% block extra_js %} + + + + + + + + + + + + + + + + + {% endblock extra_js %} + + \ No newline at end of file diff --git a/pxy_dashboard/templates/pxy_dashboard/custom/layouts/full.html b/pxy_dashboard/templates/pxy_dashboard/custom/layouts/full.html new file mode 100644 index 0000000..c48d1d7 --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/custom/layouts/full.html @@ -0,0 +1,707 @@ +{% load static %} + + + + + + {% include "partials/title-meta.html" with title="Layout Full" %} + + + + + + {% include "partials/head-css.html" %} + + + + +
      + + {% include "partials/topbar.html" %} + + {% include "partials/left-sidebar.html" %} + + + + + +
      +
      + + +
      + +
      +
      +
      +

      Layout Full

      +
      +
      + + + + +
      + + + +
      +
      +
      +
      + +
      +
      +
      +
      +
      +
      +
      Customers
      +

      54,214

      +

      + + 2,541 + Since last month +

      +
      +
      + + + +
      +
      +
      +
      +
      + +
      +
      +
      +
      +
      +
      + Orders
      +

      7,543

      +

      + + 1.08% + Since last month +

      +
      +
      + + + +
      +
      +
      +
      +
      + +
      +
      +
      +
      +
      +
      + Revenue
      +

      $9,254

      +

      + + 7.00% + Since last month +

      +
      +
      + + + +
      +
      + +
      +
      +
      + +
      +
      +
      +
      +
      +
      Growth
      +

      + 20.6%

      +

      + + 4.87% + Since last month +

      +
      +
      + + + +
      +
      + +
      +
      +
      +
      +
      +
      +
      +
      +
      Conversation
      +

      9.62%

      +

      + + 3.07% + Since last month +

      +
      +
      + + + +
      +
      + +
      +
      +
      +
      +
      +
      +
      +
      +
      Balance
      +

      $168.5k

      +

      + + 18.34% + Since last month +

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

      Total Sales

      + +
      + +
      +
      + +
      Brooklyn, New York
      +
      + 72k +
      +
      +
      +
      + +
      The Castro, San Francisco
      +
      + 39k +
      +
      +
      +
      + +
      Kovan, Singapore
      +
      + 61k +
      +
      +
      +
      +
      +
      +
      +
      +
      +
      +

      Revenue

      + +
      +
      +
      +
      +
      +

      Current + Week

      +

      + $1705.54 +

      +
      +
      +

      Previous + Week

      +

      + $6,523.25 +

      +
      +
      +

      + Conversation

      +

      + 8.27% +

      +
      +
      +

      Customers +

      +

      + 69k +

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

      Revenue By Locations

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

      Top Selling Products

      + Export +
      +
      +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      ProductPriceOrdersAvl. QuantitySeller
      ASOS Ridley High Waist$79.49828,540Adidas
      Marco Lightweight Shirt$12.5586,320Puma
      Half Sleeve Shirt$9.9925410,258Nike
      Lightweight Jacket$69.995601,020Puma
      Marco Sport Shoes$119.9975357Adidas
      Custom Women's T-shirts$45.0085135Branded
      Marco Sport Shoes$119.9975357Adidas
      +
      +
      + View All +
      +
      +
      +
      +
      + + +
      +
      +
      +
      +

      Channels

      + Export +
      + +
      + +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      ChannelVisitsProgress
      Direct2,050 +
      +
      +
      +
      Organic Search1,405 +
      +
      +
      +
      Refferal750 +
      +
      +
      +
      Social540 +
      +
      +
      +
      Other8,965 +
      +
      +
      +
      +
      +
      +
      +
      + +
      +
      +
      +

      Social Media Traffic

      + Export +
      + +
      + +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      NetworkVisitsProgress
      Facebook2,250 +
      +
      +
      +
      Instagram1,501 +
      +
      +
      +
      Twitter750 +
      +
      +
      +
      LinkedIn540 +
      +
      +
      +
      Other13,851 +
      +
      +
      +
      +
      +
      +
      +
      + +
      +
      +
      +

      Engagement Overview

      + Export +
      + +
      + +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      Duration (Secs)SessionsViews
      0-302,2504,250
      31-601,5012,050
      61-1207501,600
      121-2405401,040
      141-42056886
      +
      +
      +
      +
      + +
      + + +
      + + +
      + + {% include "partials/footer.html" %} + +
      + + + + + +
      + + + {% include "partials/right-sidebar.html" %} + + {% include "partials/footer-script.html" %} + {% block extra_js %} + + + + + + + + + + + + + + + + +{% endblock extra_js %} + + \ No newline at end of file diff --git a/pxy_dashboard/templates/pxy_dashboard/custom/layouts/fullscreen.html b/pxy_dashboard/templates/pxy_dashboard/custom/layouts/fullscreen.html new file mode 100644 index 0000000..c0a395a --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/custom/layouts/fullscreen.html @@ -0,0 +1,708 @@ +{% load static %} + + + + + + {% include "partials/title-meta.html" with title="Layout Fullscreen" %} + + + + + + {% include "partials/head-css.html" %} + + + + +
      + + {% include "partials/topbar.html" %} + + {% include "partials/left-sidebar.html" %} + + + + + +
      +
      + + +
      + +
      +
      +
      +

      Layout Fullscreen

      +
      +
      + + + + +
      + + + +
      +
      +
      +
      + +
      +
      +
      +
      +
      +
      +
      Customers
      +

      54,214

      +

      + + 2,541 + Since last month +

      +
      +
      + + + +
      +
      +
      +
      +
      + +
      +
      +
      +
      +
      +
      + Orders
      +

      7,543

      +

      + + 1.08% + Since last month +

      +
      +
      + + + +
      +
      +
      +
      +
      + +
      +
      +
      +
      +
      +
      + Revenue
      +

      $9,254

      +

      + + 7.00% + Since last month +

      +
      +
      + + + +
      +
      + +
      +
      +
      + +
      +
      +
      +
      +
      +
      Growth
      +

      + 20.6%

      +

      + + 4.87% + Since last month +

      +
      +
      + + + +
      +
      + +
      +
      +
      +
      +
      +
      +
      +
      +
      Conversation
      +

      9.62%

      +

      + + 3.07% + Since last month +

      +
      +
      + + + +
      +
      + +
      +
      +
      +
      +
      +
      +
      +
      +
      Balance
      +

      $168.5k

      +

      + + 18.34% + Since last month +

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

      Total Sales

      + +
      + +
      +
      + +
      Brooklyn, New York
      +
      + 72k +
      +
      +
      +
      + +
      The Castro, San Francisco
      +
      + 39k +
      +
      +
      +
      + +
      Kovan, Singapore
      +
      + 61k +
      +
      +
      +
      +
      +
      +
      +
      +
      +
      +

      Revenue

      + +
      +
      +
      +
      +
      +

      Current + Week

      +

      + $1705.54 +

      +
      +
      +

      Previous + Week

      +

      + $6,523.25 +

      +
      +
      +

      + Conversation

      +

      + 8.27% +

      +
      +
      +

      Customers +

      +

      + 69k +

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

      Revenue By Locations

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

      Top Selling Products

      + Export +
      +
      +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      ProductPriceOrdersAvl. QuantitySeller
      ASOS Ridley High Waist$79.49828,540Adidas
      Marco Lightweight Shirt$12.5586,320Puma
      Half Sleeve Shirt$9.9925410,258Nike
      Lightweight Jacket$69.995601,020Puma
      Marco Sport Shoes$119.9975357Adidas
      Custom Women's T-shirts$45.0085135Branded
      Marco Sport Shoes$119.9975357Adidas
      +
      +
      + View All +
      +
      +
      +
      +
      + + +
      +
      +
      +
      +

      Channels

      + Export +
      + +
      + +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      ChannelVisitsProgress
      Direct2,050 +
      +
      +
      +
      Organic Search1,405 +
      +
      +
      +
      Refferal750 +
      +
      +
      +
      Social540 +
      +
      +
      +
      Other8,965 +
      +
      +
      +
      +
      +
      +
      +
      + +
      +
      +
      +

      Social Media Traffic

      + Export +
      + +
      + +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      NetworkVisitsProgress
      Facebook2,250 +
      +
      +
      +
      Instagram1,501 +
      +
      +
      +
      Twitter750 +
      +
      +
      +
      LinkedIn540 +
      +
      +
      +
      Other13,851 +
      +
      +
      +
      +
      +
      +
      +
      + +
      +
      +
      +

      Engagement Overview

      + Export +
      + +
      + +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      Duration (Secs)SessionsViews
      0-302,2504,250
      31-601,5012,050
      61-1207501,600
      121-2405401,040
      141-42056886
      +
      +
      +
      +
      + +
      + + +
      + + +
      + + {% include "partials/footer.html" %} + +
      + + + + + +
      + + + {% include "partials/right-sidebar.html" %} + + {% include "partials/footer-script.html" %} + {% block extra_js %} + + + + + + + + + + + + + + + + + + {% endblock extra_js %} + + \ No newline at end of file diff --git a/pxy_dashboard/templates/pxy_dashboard/custom/layouts/horizontal.html b/pxy_dashboard/templates/pxy_dashboard/custom/layouts/horizontal.html new file mode 100644 index 0000000..528dd02 --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/custom/layouts/horizontal.html @@ -0,0 +1,669 @@ +{% load static %} + + + + + + {% include "partials/title-meta.html" with title="Horizontal Layout" %} + + + + + + {% include "partials/head-css.html" %} + + + + +
      + + {% include "partials/topbar.html" %} + + {% include "partials/horizontal-nav.html" %} + +
      +
      + + +
      + +
      +
      +
      +

      Horizontal

      +
      +
      + + + + +
      + + + +
      +
      +
      +
      + +
      +
      +
      +
      +
      +
      +
      Customers
      +

      54,214

      +

      + 2,541 + Since last month +

      +
      +
      + + + +
      +
      +
      +
      +
      + +
      +
      +
      +
      +
      +
      Orders
      +

      7,543

      +

      + 1.08% + Since last month +

      +
      +
      + + + +
      +
      +
      +
      +
      + +
      +
      +
      +
      +
      +
      Revenue
      +

      $9,254

      +

      + 7.00% + Since last month +

      +
      +
      + + + +
      +
      + +
      +
      +
      + +
      +
      +
      +
      +
      +
      Growth
      +

      + 20.6%

      +

      + 4.87% + Since last month +

      +
      +
      + + + +
      +
      + +
      +
      +
      +
      +
      +
      +
      +
      +
      Conversation
      +

      9.62%

      +

      + 3.07% + Since last month +

      +
      +
      + + + +
      +
      + +
      +
      +
      +
      +
      +
      +
      +
      +
      Balance
      +

      $168.5k

      +

      + 18.34% + Since last month +

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

      Total Sales

      + +
      + +
      +
      + +
      Brooklyn, New York
      +
      + 72k +
      +
      +
      +
      + +
      The Castro, San Francisco
      +
      + 39k +
      +
      +
      +
      + +
      Kovan, Singapore
      +
      + 61k +
      +
      +
      +
      +
      +
      +
      +
      +
      +
      +

      Revenue

      + +
      +
      +
      +
      +
      +

      Current Week

      +

      + $1705.54 +

      +
      +
      +

      Previous Week

      +

      + $6,523.25 +

      +
      +
      +

      Conversation

      +

      + 8.27% +

      +
      +
      +

      Customers

      +

      + 69k +

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

      Revenue By Locations

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

      Top Selling Products

      + Export +
      +
      +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      ProductPriceOrdersAvl. QuantitySeller
      ASOS Ridley High Waist$79.49828,540Adidas
      Marco Lightweight Shirt$12.5586,320Puma
      Half Sleeve Shirt$9.9925410,258Nike
      Lightweight Jacket$69.995601,020Puma
      Marco Sport Shoes$119.9975357Adidas
      Custom Women's T-shirts$45.0085135Branded
      Marco Sport Shoes$119.9975357Adidas
      +
      +
      + View All +
      +
      +
      +
      +
      + + +
      +
      +
      +
      +

      Channels

      + Export +
      + +
      + +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      ChannelVisitsProgress
      Direct2,050 +
      +
      +
      +
      Organic Search1,405 +
      +
      +
      +
      Refferal750 +
      +
      +
      +
      Social540 +
      +
      +
      +
      Other8,965 +
      +
      +
      +
      +
      +
      +
      +
      + +
      +
      +
      +

      Social Media Traffic

      + Export +
      + +
      + +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      NetworkVisitsProgress
      Facebook2,250 +
      +
      +
      +
      Instagram1,501 +
      +
      +
      +
      Twitter750 +
      +
      +
      +
      LinkedIn540 +
      +
      +
      +
      Other13,851 +
      +
      +
      +
      +
      +
      +
      +
      + +
      +
      +
      +

      Engagement Overview

      + Export +
      + +
      + +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      Duration (Secs)SessionsViews
      0-302,2504,250
      31-601,5012,050
      61-1207501,600
      121-2405401,040
      141-42056886
      +
      +
      +
      +
      + +
      + + + +
      + + +
      + + + {% include "partials/footer.html" %} + +
      + + + + + +
      + + + {% include "partials/right-sidebar.html" %} + + {% include "partials/footer-script.html" %} + {% block extra_js %} + + + + + + + + + + + + + + + + + {% endblock extra_js %} + + \ No newline at end of file diff --git a/pxy_dashboard/templates/pxy_dashboard/custom/layouts/hover.html b/pxy_dashboard/templates/pxy_dashboard/custom/layouts/hover.html new file mode 100644 index 0000000..c7dee21 --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/custom/layouts/hover.html @@ -0,0 +1,672 @@ +{% load static %} + + + + + + {% include "partials/title-meta.html" with title="Layout Hover" %} + + + + + + {% include "partials/head-css.html" %} + + + + +
      + + {% include "partials/topbar.html" %} + + {% include "partials/left-sidebar.html" %} + + + + + +
      +
      + + +
      + +
      +
      +
      +

      Layout Hover

      +
      +
      + + + + +
      + + + +
      +
      +
      +
      + +
      +
      +
      +
      +
      +
      +
      Customers
      +

      54,214

      +

      + 2,541 + Since last month +

      +
      +
      + + + +
      +
      +
      +
      +
      + +
      +
      +
      +
      +
      +
      Orders
      +

      7,543

      +

      + 1.08% + Since last month +

      +
      +
      + + + +
      +
      +
      +
      +
      + +
      +
      +
      +
      +
      +
      Revenue
      +

      $9,254

      +

      + 7.00% + Since last month +

      +
      +
      + + + +
      +
      + +
      +
      +
      + +
      +
      +
      +
      +
      +
      Growth
      +

      + 20.6%

      +

      + 4.87% + Since last month +

      +
      +
      + + + +
      +
      + +
      +
      +
      +
      +
      +
      +
      +
      +
      Conversation
      +

      9.62%

      +

      + 3.07% + Since last month +

      +
      +
      + + + +
      +
      + +
      +
      +
      +
      +
      +
      +
      +
      +
      Balance
      +

      $168.5k

      +

      + 18.34% + Since last month +

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

      Total Sales

      + +
      + +
      +
      + +
      Brooklyn, New York
      +
      + 72k +
      +
      +
      +
      + +
      The Castro, San Francisco
      +
      + 39k +
      +
      +
      +
      + +
      Kovan, Singapore
      +
      + 61k +
      +
      +
      +
      +
      +
      +
      +
      +
      +
      +

      Revenue

      + +
      +
      +
      +
      +
      +

      Current Week

      +

      + $1705.54 +

      +
      +
      +

      Previous Week

      +

      + $6,523.25 +

      +
      +
      +

      Conversation

      +

      + 8.27% +

      +
      +
      +

      Customers

      +

      + 69k +

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

      Revenue By Locations

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

      Top Selling Products

      + Export +
      +
      +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      ProductPriceOrdersAvl. QuantitySeller
      ASOS Ridley High Waist$79.49828,540Adidas
      Marco Lightweight Shirt$12.5586,320Puma
      Half Sleeve Shirt$9.9925410,258Nike
      Lightweight Jacket$69.995601,020Puma
      Marco Sport Shoes$119.9975357Adidas
      Custom Women's T-shirts$45.0085135Branded
      Marco Sport Shoes$119.9975357Adidas
      +
      +
      + View All +
      +
      +
      +
      +
      + + +
      +
      +
      +
      +

      Channels

      + Export +
      + +
      + +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      ChannelVisitsProgress
      Direct2,050 +
      +
      +
      +
      Organic Search1,405 +
      +
      +
      +
      Refferal750 +
      +
      +
      +
      Social540 +
      +
      +
      +
      Other8,965 +
      +
      +
      +
      +
      +
      +
      +
      + +
      +
      +
      +

      Social Media Traffic

      + Export +
      + +
      + +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      NetworkVisitsProgress
      Facebook2,250 +
      +
      +
      +
      Instagram1,501 +
      +
      +
      +
      Twitter750 +
      +
      +
      +
      LinkedIn540 +
      +
      +
      +
      Other13,851 +
      +
      +
      +
      +
      +
      +
      +
      + +
      +
      +
      +

      Engagement Overview

      + Export +
      + +
      + +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      Duration (Secs)SessionsViews
      0-302,2504,250
      31-601,5012,050
      61-1207501,600
      121-2405401,040
      141-42056886
      +
      +
      +
      +
      + +
      + + +
      + + +
      + + {% include "partials/footer.html" %} + +
      + + + + + +
      + + + {% include "partials/right-sidebar.html" %} + + {% include "partials/footer-script.html" %} + {% block extra_js %} + + + + + + + + + + + + + + + + + + {% endblock extra_js %} + + \ No newline at end of file diff --git a/pxy_dashboard/templates/pxy_dashboard/custom/layouts/icon-view.html b/pxy_dashboard/templates/pxy_dashboard/custom/layouts/icon-view.html new file mode 100644 index 0000000..e0d7497 --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/custom/layouts/icon-view.html @@ -0,0 +1,674 @@ +{% load static %} + + + + + + {% include "partials/title-meta.html" with title="Layout Icon View" %} + + + + + + {% include "partials/head-css.html" %} + + + + +
      + + {% include "partials/topbar.html" %} + + {% include "partials/left-sidebar.html" %} + + + + + +
      +
      + + +
      + + +
      +
      +
      +

      Layout Icon View

      +
      +
      + + + + +
      + + + +
      +
      +
      +
      + +
      +
      +
      +
      +
      +
      +
      Customers
      +

      54,214

      +

      + 2,541 + Since last month +

      +
      +
      + + + +
      +
      +
      +
      +
      + +
      +
      +
      +
      +
      +
      Orders
      +

      7,543

      +

      + 1.08% + Since last month +

      +
      +
      + + + +
      +
      +
      +
      +
      + +
      +
      +
      +
      +
      +
      Revenue
      +

      $9,254

      +

      + 7.00% + Since last month +

      +
      +
      + + + +
      +
      + +
      +
      +
      + +
      +
      +
      +
      +
      +
      Growth
      +

      + 20.6%

      +

      + 4.87% + Since last month +

      +
      +
      + + + +
      +
      + +
      +
      +
      +
      +
      +
      +
      +
      +
      Conversation
      +

      9.62%

      +

      + 3.07% + Since last month +

      +
      +
      + + + +
      +
      + +
      +
      +
      +
      +
      +
      +
      +
      +
      Balance
      +

      $168.5k

      +

      + 18.34% + Since last month +

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

      Total Sales

      + +
      + +
      +
      + +
      Brooklyn, New York
      +
      + 72k +
      +
      +
      +
      + +
      The Castro, San Francisco
      +
      + 39k +
      +
      +
      +
      + +
      Kovan, Singapore
      +
      + 61k +
      +
      +
      +
      +
      +
      +
      +
      +
      +
      +

      Revenue

      + +
      +
      +
      +
      +
      +

      Current Week

      +

      + $1705.54 +

      +
      +
      +

      Previous Week

      +

      + $6,523.25 +

      +
      +
      +

      Conversation

      +

      + 8.27% +

      +
      +
      +

      Customers

      +

      + 69k +

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

      Revenue By Locations

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

      Top Selling Products

      + Export +
      +
      +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      ProductPriceOrdersAvl. QuantitySeller
      ASOS Ridley High Waist$79.49828,540Adidas
      Marco Lightweight Shirt$12.5586,320Puma
      Half Sleeve Shirt$9.9925410,258Nike
      Lightweight Jacket$69.995601,020Puma
      Marco Sport Shoes$119.9975357Adidas
      Custom Women's T-shirts$45.0085135Branded
      Marco Sport Shoes$119.9975357Adidas
      +
      +
      + View All +
      +
      +
      +
      +
      + + +
      +
      +
      +
      +

      Channels

      + Export +
      + +
      + +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      ChannelVisitsProgress
      Direct2,050 +
      +
      +
      +
      Organic Search1,405 +
      +
      +
      +
      Refferal750 +
      +
      +
      +
      Social540 +
      +
      +
      +
      Other8,965 +
      +
      +
      +
      +
      +
      +
      +
      + +
      +
      +
      +

      Social Media Traffic

      + Export +
      + +
      + +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      NetworkVisitsProgress
      Facebook2,250 +
      +
      +
      +
      Instagram1,501 +
      +
      +
      +
      Twitter750 +
      +
      +
      +
      LinkedIn540 +
      +
      +
      +
      Other13,851 +
      +
      +
      +
      +
      +
      +
      +
      + +
      +
      +
      +

      Engagement Overview

      + Export +
      + +
      + +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      Duration (Secs)SessionsViews
      0-302,2504,250
      31-601,5012,050
      61-1207501,600
      121-2405401,040
      141-42056886
      +
      +
      +
      +
      + +
      + + + +
      + + +
      + + {% include "partials/footer.html" %} + +
      + + + + + +
      + + + {% include "partials/right-sidebar.html" %} + + {% include "partials/footer-script.html" %} + {% block extra_js %} + + + + + + + + + + + + + + + + + + {% endblock extra_js %} + + \ No newline at end of file diff --git a/pxy_dashboard/templates/pxy_dashboard/custom/pages/__init__.py b/pxy_dashboard/templates/pxy_dashboard/custom/pages/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/pxy_dashboard/templates/pxy_dashboard/custom/pages/pages-faq.html b/pxy_dashboard/templates/pxy_dashboard/custom/pages/pages-faq.html new file mode 100644 index 0000000..bf65cde --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/custom/pages/pages-faq.html @@ -0,0 +1,145 @@ +{% extends "partials/base.html" %} +{% load static %} + +{% block title %}FAQ{% endblock title %} + + + +{% block pagetitle %} +{% include "partials/page-title.html" with pagetitle="Pages" title="FAQ" %} +{% endblock pagetitle %} + +{% block content %} +
      +
      +
      +
      +
      +
      +
      +

      Frequently Asked Questions

      +

      Do you have a question about your subscription, a recent order, products, shipping or you want to suggest a new magazine? Here you can find some helpful answers to frequently asked questions (FAQ).

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

      Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book.

      +

      Anim pariatur cliche reprehenderit, enim eiusmod high life accusamus terry richardson ad squid. 3 wolf moon officia aute, non cupidatat skateboard dolor brunch. Food truck quinoa nesciunt laborum eiusmod.

      +
      +
      +
      +
      + +
      +
      +

      Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book.

      +

      Anim pariatur cliche reprehenderit, enim eiusmod high life accusamus terry richardson ad squid. 3 wolf moon officia aute, non cupidatat skateboard dolor brunch. Food truck quinoa nesciunt laborum eiusmod.

      +
      +
      +
      +
      + +
      +
      +

      Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book.

      +

      Anim pariatur cliche reprehenderit, enim eiusmod high life accusamus terry richardson ad squid. 3 wolf moon officia aute, non cupidatat skateboard dolor brunch. Food truck quinoa nesciunt laborum eiusmod.

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

      Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book.

      +

      Anim pariatur cliche reprehenderit, enim eiusmod high life accusamus terry richardson ad squid. 3 wolf moon officia aute, non cupidatat skateboard dolor brunch. Food truck quinoa nesciunt laborum eiusmod.

      +
      +
      +
      +
      + +
      +
      +

      Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book.

      +

      Anim pariatur cliche reprehenderit, enim eiusmod high life accusamus terry richardson ad squid. 3 wolf moon officia aute, non cupidatat skateboard dolor brunch. Food truck quinoa nesciunt laborum eiusmod.

      +
      +
      +
      +
      + +
      +
      +

      Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book.

      +

      Anim pariatur cliche reprehenderit, enim eiusmod high life accusamus terry richardson ad squid. 3 wolf moon officia aute, non cupidatat skateboard dolor brunch. Food truck quinoa nesciunt laborum eiusmod.

      +
      +
      +
      +
      + +
      +
      + +
      + +
      +
      +
      +
      + + +{% endblock content %} + +{% block extra_js %} + + + + +{% endblock extra_js %} + diff --git a/pxy_dashboard/templates/pxy_dashboard/custom/pages/pages-invoice.html b/pxy_dashboard/templates/pxy_dashboard/custom/pages/pages-invoice.html new file mode 100644 index 0000000..1165fdf --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/custom/pages/pages-invoice.html @@ -0,0 +1,174 @@ +{% extends "partials/base.html" %} +{% load static %} + +{% block title %}Invoice{% endblock title %} + + + +{% block pagetitle %} +{% include "partials/page-title.html" with pagetitle="Pages" title="Invoice" %} +{% endblock pagetitle %} + +{% block content %} +
      +
      +
      +
      + + +
      +
      + dark logo +
      +
      +

      Invoice

      +
      +
      + + +
      +
      +
      +

      Hello, Tosha Minner

      +

      Please find below a cost-breakdown for the recent work completed. Please make payment at your earliest convenience, and do not hesitate to contact me with any questions.

      +
      + +
      +
      +
      +

      Order Date:     Jan 17, 2023

      +

      Order Status: Paid

      +

      Order ID: #123456

      +
      +
      +
      + + +
      +
      +
      Billing Address
      +
      + Lynne K. Higby
      + 795 Folsom Ave, Suite 600
      + San Francisco, CA 94107
      + P: (123) 456-7890 +
      +
      + +
      +
      Shipping Address
      +
      + Tosha Minner
      + 795 Folsom Ave, Suite 600
      + San Francisco, CA 94107
      + P: (123) 456-7890 +
      +
      + +
      +
      + barcode-image +
      +
      +
      + + +
      +
      +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      #ItemQuantityUnit CostTotal
      1 + Laptop
      + Brand Model VGN-TXN27N/B + 11.1" Notebook PC +
      1$1799.00$1799.00
      2 + Warranty
      + Two Year Extended Warranty - + Parts and Labor +
      3$499.00$1497.00
      3 + LED
      + 80cm (32) HD Ready LED TV +
      2$412.00$824.00
      +
      +
      +
      + + +
      +
      +
      +
      Notes:
      + + All accounts are to be paid within 7 days from receipt of + invoice. To be paid by cheque or credit card or direct payment + online. If account is not paid within 7 days the credits details + supplied as confirmation of work undertaken will be charged the + agreed quoted fee noted above. + +
      +
      +
      +
      +

      Sub-total: $4120.00

      +

      VAT (12.5): $515.00

      +

      $4635.00 USD

      +
      +
      +
      +
      + + +
      +
      + Print + Submit +
      +
      + + +
      +
      +
      +
      + + +{% endblock content %} + +{% block extra_js %} + + + + +{% endblock extra_js %} + diff --git a/pxy_dashboard/templates/pxy_dashboard/custom/pages/pages-maintenance.html b/pxy_dashboard/templates/pxy_dashboard/custom/pages/pages-maintenance.html new file mode 100644 index 0000000..0d900f4 --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/custom/pages/pages-maintenance.html @@ -0,0 +1,77 @@ +{% load static %} + +{% include "partials/main.html" %} + +{% include "partials/head-css.html" %} + + + {% include "partials/background.html" %} + + + + +
      + + © Jidox - Coderthemes.com + +
      + + + +{% include "partials/footer-script.html" %} + +{% block extra_js %} + + +{% endblock extra_js %} \ No newline at end of file diff --git a/pxy_dashboard/templates/pxy_dashboard/custom/pages/pages-preloader.html b/pxy_dashboard/templates/pxy_dashboard/custom/pages/pages-preloader.html new file mode 100644 index 0000000..2012021 --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/custom/pages/pages-preloader.html @@ -0,0 +1,641 @@ +{% extends "partials/base.html" %} +{% load static %} + +{% block title %}Preloader{% endblock title %} + +{% block extra_css %} + + + + + + + +{% endblock extra_css %} + + +{% block content %} + +
      +
      +
      +
      +
      + + +
      +
      +
      +

      Preloader

      +
      +
      + + + + +
      + + + +
      +
      +
      +
      + +
      +
      +
      +
      +
      +
      +
      Customers
      +

      54,214

      +

      + 2,541 + Since last month +

      +
      +
      + + + +
      +
      +
      +
      +
      + +
      +
      +
      +
      +
      +
      Orders
      +

      7,543

      +

      + 1.08% + Since last month +

      +
      +
      + + + +
      +
      +
      +
      +
      + +
      +
      +
      +
      +
      +
      Revenue
      +

      $9,254

      +

      + 7.00% + Since last month +

      +
      +
      + + + +
      +
      + +
      +
      +
      + +
      +
      +
      +
      +
      +
      Growth
      +

      + 20.6%

      +

      + 4.87% + Since last month +

      +
      +
      + + + +
      +
      + +
      +
      +
      +
      +
      +
      +
      +
      +
      Conversation
      +

      9.62%

      +

      + 3.07% + Since last month +

      +
      +
      + + + +
      +
      + +
      +
      +
      +
      +
      +
      +
      +
      +
      Balance
      +

      $168.5k

      +

      + 18.34% + Since last month +

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

      Total Sales

      + +
      + +
      +
      + +
      Brooklyn, New York
      +
      + 72k +
      +
      +
      +
      + +
      The Castro, San Francisco
      +
      + 39k +
      +
      +
      +
      + +
      Kovan, Singapore
      +
      + 61k +
      +
      +
      +
      +
      +
      +
      +
      +
      +
      +

      Revenue

      + +
      +
      +
      +
      +
      +

      Current Week

      +

      + $1705.54 +

      +
      +
      +

      Previous Week

      +

      + $6,523.25 +

      +
      +
      +

      Conversation

      +

      + 8.27% +

      +
      +
      +

      Customers

      +

      + 69k +

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

      Revenue By Locations

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

      Top Selling Products

      + Export +
      +
      +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      ProductPriceOrdersAvl. QuantitySeller
      ASOS Ridley High Waist$79.49828,540Adidas
      Marco Lightweight Shirt$12.5586,320Puma
      Half Sleeve Shirt$9.9925410,258Nike
      Lightweight Jacket$69.995601,020Puma
      Marco Sport Shoes$119.9975357Adidas
      Custom Women's T-shirts$45.0085135Branded
      Marco Sport Shoes$119.9975357Adidas
      +
      +
      + View All +
      +
      +
      +
      +
      + + +
      +
      +
      +
      +

      Channels

      + Export +
      + +
      + +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      ChannelVisitsProgress
      Direct2,050 +
      +
      +
      +
      Organic Search1,405 +
      +
      +
      +
      Refferal750 +
      +
      +
      +
      Social540 +
      +
      +
      +
      Other8,965 +
      +
      +
      +
      +
      +
      +
      +
      + +
      +
      +
      +

      Social Media Traffic

      + Export +
      + +
      + +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      NetworkVisitsProgress
      Facebook2,250 +
      +
      +
      +
      Instagram1,501 +
      +
      +
      +
      Twitter750 +
      +
      +
      +
      LinkedIn540 +
      +
      +
      +
      Other13,851 +
      +
      +
      +
      +
      +
      +
      +
      + +
      +
      +
      +

      Engagement Overview

      + Export +
      + +
      + +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      Duration (Secs)SessionsViews
      0-302,2504,250
      31-601,5012,050
      61-1207501,600
      121-2405401,040
      141-42056886
      +
      +
      +
      +
      + +
      + + +{% endblock content %} {% block extra_js %} + + + + + + + + + + + + + + + + +{% endblock extra_js %} \ No newline at end of file diff --git a/pxy_dashboard/templates/pxy_dashboard/custom/pages/pages-pricing.html b/pxy_dashboard/templates/pxy_dashboard/custom/pages/pages-pricing.html new file mode 100644 index 0000000..1fe12d2 --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/custom/pages/pages-pricing.html @@ -0,0 +1,137 @@ +{% extends "partials/base.html" %} +{% load static %} + +{% block title %}Dashboard{% endblock title %} + + + +{% block pagetitle %} +{% include "partials/page-title.html" with pagetitle="Pages" title="Pricing" %} +{% endblock pagetitle %} + +{% block content %} +
      +
      + + +
      +

      Our Plans

      +

      + We have plans and prices that fit your business perfectly. Make your
      client site a success with our products. +

      +
      + +
      + + +
      +
      +
      +
      +

      Basic

      +

      $19

      +
      Per Month
      +
      +
        +
      • 5 Projects
      • +
      • 1 GB Storage
      • +
      • No Domain
      • +
      • 1 User
      • +
      • 24x7 Support
      • +
      + + +
      +
      +
      + + +
      +
      POPULAR
      +
      +
      +
      +

      Premium

      +

      $29

      +
      Per Month
      +
      +
        +
      • 5 Projects
      • +
      • 1 GB Storage
      • +
      • No Domain
      • +
      • 1 User
      • +
      • 24x7 Support
      • +
      + + +
      +
      +
      + + + +
      +
      +
      +
      +

      Developer

      +

      $39

      +
      Per Month
      +
      +
        +
      • 5 Projects
      • +
      • 1 GB Storage
      • +
      • No Domain
      • +
      • 1 User
      • +
      • 24x7 Support
      • +
      + + +
      +
      +
      + + +
      +
      +
      +
      +

      Business

      +

      $49

      +
      Per Month
      +
      +
        +
      • 5 Projects
      • +
      • 1 GB Storage
      • +
      • No Domain
      • +
      • 1 User
      • +
      • 24x7 Support
      • +
      + + +
      +
      +
      + +
      + +
      +
      + +{% endblock content %} + +{% block extra_js %} + + + + +{% endblock extra_js %} + diff --git a/pxy_dashboard/templates/pxy_dashboard/custom/pages/pages-profile.html b/pxy_dashboard/templates/pxy_dashboard/custom/pages/pages-profile.html new file mode 100644 index 0000000..402ba17 --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/custom/pages/pages-profile.html @@ -0,0 +1,541 @@ +{% extends "partials/base.html" %} +{% load static %} + +{% block title %}Profile{% endblock title %} + + + +{% block pagetitle %} +{% include "partials/page-title.html" with pagetitle="Pages" title="Profile" %} +{% endblock pagetitle %} + +{% block content %} +
      +
      +
      +
      + profile-image + +

      Tosha Minner

      +

      Founder

      + + + + +
      +

      About Me :

      +

      + Hi I'm Tosha Minner,has been the industry's standard dummy text ever since the + 1500s, when an unknown printer took a galley of type. +

      +

      Full Name : Tosha K. Minner

      + +

      Mobile :(123) + 123 1234

      + +

      Email : user@email.domain

      + +

      Location : USA

      +
      + + +
      +
      + + +
      +
      +
      +

      Messages

      + +
      + +
      +
      +
      +

      Tomaslau

      +

      I've finished it! See you so...

      +

      + Reply +

      +
      +
      +
      +

      Stillnotdavid

      +

      This theme is awesome!

      +

      + Reply +

      +
      +
      +
      +

      Kurafire

      +

      Nice to meet you

      +

      + Reply +

      +
      + +
      +
      +

      Shahedk

      +

      Hey! there I'm available...

      +

      + Reply +

      +
      +
      +
      +

      Adhamdannaway

      +

      This theme is awesome!

      +

      + Reply +

      +
      +
      +
      +
      + +
      + +
      + + +
      +
      + +
      +
      + +
      + Projects
      +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      #ClientsProject NameStart DateDue DateStatus
      1table-user Halette BoivinApp design and development01/01/202210/12/2023Work in Progress
      2table-user Durandana JolicoeurCoffee detail page - Main Page21/07/202312/05/2024Pending
      3table-user Lucas SabourinPoster illustation design18/03/202328/09/2023Done
      4table-user Donatien BrunelleDrinking bottle graphics02/10/202207/05/2023Work in Progress
      5table-user Karel AuberjoLanding page design - Home17/01/202225/05/2023Coming soon
      +
      + +
      + Experience
      + +
      +
      + +
      +
      Lead designer / Developer
      +

      websitename.com Year: 2015 - 18

      +

      Everyone realizes why a new common language + would be desirable: one could refuse to pay expensive translators. + To achieve this, it would be necessary to have uniform grammar, + pronunciation and more common words.

      +
      +
      + +
      + +
      +
      Senior Graphic Designer
      +

      Software Inc. Year: 2012 - 15

      +

      If several languages coalesce, the grammar + of the resulting language is more simple and regular than that of + the individual languages. The new common language will be more + simple and regular than the existing European languages.

      + +
      +
      + +
      + +
      +
      Graphic Designer
      +

      Coderthemes Design LLP Year: 2010 - 12

      +

      The European languages are members of + the same family. Their separate existence is a myth. For science + music sport etc, Europe uses the same vocabulary. The languages + only differ in their grammar their pronunciation.

      +
      +
      + +
      + + +
      + + +
      + + +
      +
      + +
      +
      + + + + +
      + +
      +
      +
      + + + +
      +
      + Generic placeholder image +
      +
      Thelma Fridley
      +

      about 1 hour ago

      +
      +
      +
      + Cras sit amet nibh libero, in + gravida nulla. Nulla vel metus scelerisque ante sollicitudin. Cras + purus odio, vestibulum in vulputate at, tempus viverra turpis. Duis + sagittis ipsum. Praesent mauris. Fusce nec tellus sed augue semper + porta. Mauris massa. +
      + +
      +
      + Generic placeholder image +
      +
      Jeremy Tomlinson about 2 minuts ago
      + Nice work, makes me think of The Money Pit. + +
      + Reply + +
      + + Generic placeholder image + +
      +
      Thelma Fridley 5 hours ago
      + i'm in the middle of a timelapse animation myself! (Very different though.) Awesome stuff. +
      +
      +
      +
      + +
      + + Generic placeholder image + +
      + +
      +
      +
      + + +
      + + +
      +
      + Generic placeholder image +
      +
      Jeremy Tomlinson
      +

      3 hours ago

      +
      +
      +

      Story based around the idea of time lapse, animation to post soon!

      + + post-img + post-img + post-img + + +
      + + +
      +
      + Generic placeholder image +
      +
      Martin Williamson
      +

      15 hours ago

      +
      +
      +

      The parallax is a little odd but O.o that house build is awesome!!

      + + +
      + + + +
      + + +
      +
      +
      Personal Info
      +
      +
      +
      + + +
      +
      +
      +
      + + +
      +
      +
      + +
      +
      +
      + + +
      +
      +
      + +
      +
      +
      + + + If you want to change email please click here. +
      +
      +
      +
      + + + If you want to change password please click here. +
      +
      +
      + +
      Company Info
      +
      +
      +
      + + +
      +
      +
      +
      + + +
      +
      +
      + +
      Social
      +
      +
      +
      + +
      + + +
      +
      +
      +
      +
      + +
      + + +
      +
      +
      +
      + +
      +
      +
      + +
      + + +
      +
      +
      +
      +
      + +
      + + +
      +
      +
      +
      + +
      +
      +
      + +
      + + +
      +
      +
      +
      +
      + +
      + + +
      +
      +
      +
      + +
      + +
      +
      +
      + + +
      +
      +
      +
      +
      + + +{% endblock content %} + +{% block extra_js %} + + + + + + + + + + +{% endblock extra_js %} + diff --git a/pxy_dashboard/templates/pxy_dashboard/custom/pages/pages-starter.html b/pxy_dashboard/templates/pxy_dashboard/custom/pages/pages-starter.html new file mode 100644 index 0000000..8966670 --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/custom/pages/pages-starter.html @@ -0,0 +1,38 @@ +{% extends "partials/base.html" %} +{% load static %} + +{% block title %}Starter{% endblock title %} + + + +{% block pagetitle %} +{% endblock pagetitle %} + +{% block content %} +
      +
      +
      +

      Starter

      +
      +
      + + + + +
      + + + +
      +
      +
      +
      +{% endblock content %} + +{% block extra_js %} + + + + +{% endblock extra_js %} + diff --git a/pxy_dashboard/templates/pxy_dashboard/custom/pages/pages-timeline.html b/pxy_dashboard/templates/pxy_dashboard/custom/pages/pages-timeline.html new file mode 100644 index 0000000..8ada646 --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/custom/pages/pages-timeline.html @@ -0,0 +1,166 @@ +{% extends "partials/base.html" %} +{% load static %} + +{% block title %}Timeline{% endblock title %} + + +{% block pagetitle %} +{% include "partials/page-title.html" with pagetitle="Pages" title="Timeline" %} +{% endblock pagetitle %} + +{% block content %} +
      +
      +
      + +
      +
      Today
      +
      + +
      +
      +
      + + +

      Completed UX design project for our client

      +

      22 July, 2019

      +

      Dolorum provident rerum aut hic quasi placeat iure tempora laudantium ipsa ad debitis unde?

      + + 👍 17 + ❤️ 89 +
      +
      +
      + +
      +
      +
      + + +

      Yay! We are celebrating our first admin release.

      +

      22 July, 2019

      +

      Consectetur adipisicing elit. Iusto, optio, dolorum John deon provident rerum aut hic quasi placeat iure tempora laudantium

      + + 🎉 148 +
      +
      +
      + +
      +
      Yesterday
      +
      + +
      +
      +
      + + +

      We released new version of our theme Ubold.

      +

      21 July, 2019

      +

      3 new photo Uploaded on facebook fan page

      + + + + 🏆 94 +
      +
      +
      + +
      +
      +
      + + +

      We have archieved 25k sales in our themes.

      +

      21 July, 2019

      +

      Outdoor visit at California State Route 85 with John Boltana & + Harry Piterson regarding to setup a new show room.

      + + 👍 1.4k + 🎉 2k +
      +
      +
      + +
      +
      +
      + + +

      Conference call with UX team

      +

      21 July, 2019

      +

      Jonatha Smith added new milestone Pathek + Lorem ipsum dolor sit amet consiquest dio

      + + ❤️ 89 +
      +
      +
      + +
      +
      2018
      +
      + +
      +
      +
      + + +

      Join new team member Alex Smith

      +

      10 December, 2018

      +

      Alex Smith is a Senior Software (Full Stack) engineer with a deep passion for building usable, functional & pretty web applications.

      +
      + Arya S +
      +
      + Alex Smith - Senior Software (Full Stack) +
      +
      +
      +
      +
      +
      + +
      +
      +
      + + +

      First release of Attex admin dashboard template

      +

      05 May, 2023

      +

      Outdoor visit at California State Route 85 with John Boltana & + Harry Piterson regarding to setup a new show room.

      + + 🎉 10k + 👍 3.2k + ❤️ 7.1k + +
      +
      +
      + +
      + +
      +
      + + +{% endblock content %} + +{% block extra_js %} + + + + +{% endblock extra_js %} + diff --git a/pxy_dashboard/templates/pxy_dashboard/index.html b/pxy_dashboard/templates/pxy_dashboard/index.html new file mode 100644 index 0000000..28dad56 --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/index.html @@ -0,0 +1,626 @@ +{% extends "pxy_dashboard/partials/base.html" %} {% load static %} +{% block title %}Dashboard{% endblock title %} {% block extra_css %} + + + + + + + +{% endblock extra_css %} {% block content %} +
      +
      +
      +

      Dashboard

      +
      +
      + + + + +
      + + + +
      +
      +
      +
      + +
      +
      +
      +
      +
      +
      +
      Customers
      +

      54,214

      +

      + 2,541 + Since last month +

      +
      +
      + + + +
      +
      +
      +
      +
      + +
      +
      +
      +
      +
      +
      Orders
      +

      7,543

      +

      + 1.08% + Since last month +

      +
      +
      + + + +
      +
      +
      +
      +
      + +
      +
      +
      +
      +
      +
      Revenue
      +

      $9,254

      +

      + 7.00% + Since last month +

      +
      +
      + + + +
      +
      + +
      +
      +
      + +
      +
      +
      +
      +
      +
      Growth
      +

      + 20.6%

      +

      + 4.87% + Since last month +

      +
      +
      + + + +
      +
      + +
      +
      +
      +
      +
      +
      +
      +
      +
      Conversation
      +

      9.62%

      +

      + 3.07% + Since last month +

      +
      +
      + + + +
      +
      + +
      +
      +
      +
      +
      +
      +
      +
      +
      Balance
      +

      $168.5k

      +

      + 18.34% + Since last month +

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

      Total Sales

      + +
      + +
      +
      + +
      Brooklyn, New York
      +
      + 72k +
      +
      +
      +
      + +
      The Castro, San Francisco
      +
      + 39k +
      +
      +
      +
      + +
      Kovan, Singapore
      +
      + 61k +
      +
      +
      +
      +
      +
      +
      +
      +
      +
      +

      Revenue

      + +
      +
      +
      +
      +
      +

      Current Week

      +

      + $1705.54 +

      +
      +
      +

      Previous Week

      +

      + $6,523.25 +

      +
      +
      +

      Conversation

      +

      + 8.27% +

      +
      +
      +

      Customers

      +

      + 69k +

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

      Revenue By Locations

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

      Top Selling Products

      + Export +
      +
      +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      ProductPriceOrdersAvl. QuantitySeller
      ASOS Ridley High Waist$79.49828,540Adidas
      Marco Lightweight Shirt$12.5586,320Puma
      Half Sleeve Shirt$9.9925410,258Nike
      Lightweight Jacket$69.995601,020Puma
      Marco Sport Shoes$119.9975357Adidas
      Custom Women's T-shirts$45.0085135Branded
      Marco Sport Shoes$119.9975357Adidas
      +
      +
      + View All +
      +
      +
      +
      +
      + + +
      +
      +
      +
      +

      Channels

      + Export +
      + +
      + +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      ChannelVisitsProgress
      Direct2,050 +
      +
      +
      +
      Organic Search1,405 +
      +
      +
      +
      Refferal750 +
      +
      +
      +
      Social540 +
      +
      +
      +
      Other8,965 +
      +
      +
      +
      +
      +
      +
      +
      + +
      +
      +
      +

      Social Media Traffic

      + Export +
      + +
      + +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      NetworkVisitsProgress
      Facebook2,250 +
      +
      +
      +
      Instagram1,501 +
      +
      +
      +
      Twitter750 +
      +
      +
      +
      LinkedIn540 +
      +
      +
      +
      Other13,851 +
      +
      +
      +
      +
      +
      +
      +
      + +
      +
      +
      +

      Engagement Overview

      + Export +
      + +
      + +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      Duration (Secs)SessionsViews
      0-302,2504,250
      31-601,5012,050
      61-1207501,600
      121-2405401,040
      141-42056886
      +
      +
      +
      +
      + +
      + + +{% endblock content %} {% block extra_js %} + + + + + + + + + + + + + + + + +{% endblock extra_js %} \ No newline at end of file diff --git a/pxy_dashboard/templates/pxy_dashboard/partials/__init__.py b/pxy_dashboard/templates/pxy_dashboard/partials/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/pxy_dashboard/templates/pxy_dashboard/partials/background.html b/pxy_dashboard/templates/pxy_dashboard/partials/background.html new file mode 100644 index 0000000..82c1872 --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/partials/background.html @@ -0,0 +1,24 @@ +
      + + + + + + + + + + + + + + + + + + + + + + +
      diff --git a/pxy_dashboard/templates/pxy_dashboard/partials/base.html b/pxy_dashboard/templates/pxy_dashboard/partials/base.html new file mode 100644 index 0000000..11d70b1 --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/partials/base.html @@ -0,0 +1,52 @@ +{% load static %} +{% include "pxy_dashboard/partials/main.html" %} + + + + + {% block title %}{% endblock title %} | Jidox - Bootstrap 5 Admin & + Dashboard Template + + + + + + + + + {% block css %} + + {% block extra_css %} {% endblock extra_css %} + {% include "pxy_dashboard/partials/head-css.html" %} + {% endblock css %} + + + + + +
      + {% include "pxy_dashboard/partials/topbar.html" %} {% include "pxy_dashboard/partials/left-sidebar.html" %} +
      +
      + + {% block pagetitle %} {% endblock pagetitle %} + {% block content %} +
      + {% endblock content %} {% block footer %} {% endblock footer %} +
      +
      + + {% include "pxy_dashboard/partials/right-sidebar.html" %} + {% include "pxy_dashboard/partials/footer.html" %} + + + {% block javascript %} + + {% include "pxy_dashboard/partials/footer-script.html" %} + + {% block extra_js %} {% endblock extra_js %} + + {% endblock javascript %} + + + \ No newline at end of file diff --git a/pxy_dashboard/templates/pxy_dashboard/partials/footer-script.html b/pxy_dashboard/templates/pxy_dashboard/partials/footer-script.html new file mode 100644 index 0000000..b95378f --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/partials/footer-script.html @@ -0,0 +1,6 @@ +{% load static %} + + + + +{% block extra_js %} {% endblock extra_js %} \ No newline at end of file diff --git a/pxy_dashboard/templates/pxy_dashboard/partials/footer.html b/pxy_dashboard/templates/pxy_dashboard/partials/footer.html new file mode 100644 index 0000000..ef658f8 --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/partials/footer.html @@ -0,0 +1,18 @@ + +
      +
      +
      +
      + © Jidox - Coderthemes.com +
      +
      + +
      +
      +
      +
      + \ No newline at end of file diff --git a/pxy_dashboard/templates/pxy_dashboard/partials/head-css.html b/pxy_dashboard/templates/pxy_dashboard/partials/head-css.html new file mode 100644 index 0000000..62e96aa --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/partials/head-css.html @@ -0,0 +1,9 @@ +{% load static %} + + + + + + + + \ No newline at end of file diff --git a/pxy_dashboard/templates/pxy_dashboard/partials/horizontal-nav.html b/pxy_dashboard/templates/pxy_dashboard/partials/horizontal-nav.html new file mode 100644 index 0000000..85bf99d --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/partials/horizontal-nav.html @@ -0,0 +1,241 @@ + +
      +
      + +
      +
      + \ No newline at end of file diff --git a/pxy_dashboard/templates/pxy_dashboard/partials/left-sidebar.html b/pxy_dashboard/templates/pxy_dashboard/partials/left-sidebar.html new file mode 100644 index 0000000..010a9f3 --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/partials/left-sidebar.html @@ -0,0 +1,661 @@ +{% load static %} + +
      + + + + + + + + +
      + +
      + + +
      + +
      + + +
      + + + + + + + +
      +
      +
      + \ No newline at end of file diff --git a/pxy_dashboard/templates/pxy_dashboard/partials/main.html b/pxy_dashboard/templates/pxy_dashboard/partials/main.html new file mode 100644 index 0000000..6ea1ab0 --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/partials/main.html @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/pxy_dashboard/templates/pxy_dashboard/partials/menu.html b/pxy_dashboard/templates/pxy_dashboard/partials/menu.html new file mode 100644 index 0000000..37e9835 --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/partials/menu.html @@ -0,0 +1,2 @@ +{% include "topbar.html" %} +{% include "left-sidebar.html" %} \ No newline at end of file diff --git a/pxy_dashboard/templates/pxy_dashboard/partials/page-title.html b/pxy_dashboard/templates/pxy_dashboard/partials/page-title.html new file mode 100644 index 0000000..1819851 --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/partials/page-title.html @@ -0,0 +1,14 @@ + +
      +
      +
      +

      {{title}}

      + +
      +
      +
      + diff --git a/pxy_dashboard/templates/pxy_dashboard/partials/right-sidebar.html b/pxy_dashboard/templates/pxy_dashboard/partials/right-sidebar.html new file mode 100644 index 0000000..607083f --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/partials/right-sidebar.html @@ -0,0 +1,176 @@ + +
      +
      +
      Theme Settings
      + +
      + +
      +
      +
      + + +
      Choose Layout
      +
      +
      + + +
      +
      + + +
      +
      + +
      Color Scheme
      + +
      +
      + + +
      + +
      + + +
      +
      + +
      +
      Layout Mode
      + +
      +
      + + +
      + +
      +
      + + +
      +
      + +
      +
      + + +
      +
      +
      +
      + +
      Topbar Color
      + +
      +
      + + +
      + +
      + + +
      + +
      + + +
      +
      + +
      +
      Menu Color
      + +
      +
      + + +
      + +
      + + +
      +
      + + +
      +
      +
      + + + +
      +
      Layout Position
      + +
      + + + + + +
      +
      + + + +
      +
      + +
      + +
      diff --git a/pxy_dashboard/templates/pxy_dashboard/partials/title-meta.html b/pxy_dashboard/templates/pxy_dashboard/partials/title-meta.html new file mode 100644 index 0000000..7f3e15f --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/partials/title-meta.html @@ -0,0 +1,9 @@ +{% load static %} + + {{title}} | Jidox - Bootstrap 5 Admin & Dashboard Template + + + + + + \ No newline at end of file diff --git a/pxy_dashboard/templates/pxy_dashboard/partials/topbar.html b/pxy_dashboard/templates/pxy_dashboard/partials/topbar.html new file mode 100644 index 0000000..8af738d --- /dev/null +++ b/pxy_dashboard/templates/pxy_dashboard/partials/topbar.html @@ -0,0 +1,394 @@ +{% load static %} + + + \ No newline at end of file diff --git a/pxy_dashboard/templates/pxy_dashboard/pxy_dashboard/__init__.py b/pxy_dashboard/templates/pxy_dashboard/pxy_dashboard/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/pxy_dashboard/templates/pxy_dashboard/pxy_dashboard/templates/__init__.py b/pxy_dashboard/templates/pxy_dashboard/pxy_dashboard/templates/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/pxy_dashboard/templates/pxy_dashboard/pxy_dashboard/templates/pxy_dashboard/__init__.py b/pxy_dashboard/templates/pxy_dashboard/pxy_dashboard/templates/pxy_dashboard/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/pxy_dashboard/tests.py b/pxy_dashboard/tests.py new file mode 100644 index 0000000..7ce503c --- /dev/null +++ b/pxy_dashboard/tests.py @@ -0,0 +1,3 @@ +from django.test import TestCase + +# Create your tests here. diff --git a/pxy_dashboard/urls.py b/pxy_dashboard/urls.py new file mode 100644 index 0000000..5453e12 --- /dev/null +++ b/pxy_dashboard/urls.py @@ -0,0 +1,14 @@ +from django.urls import path, include +from .views import index + +# No es necesario importar los módulos si usarás strings +urlpatterns = [ + path('', index, name='index'), + + # Usa include con strings y namespaces correctos + path("custom/", include(("pxy_dashboard.custom.urls", "custom"), namespace="custom")), + path("apps/", include(("pxy_dashboard.apps.urls", "apps"), namespace="apps")), + path("components/", include(("pxy_dashboard.components.urls", "components"), namespace="components")), + path("layouts/", include(("pxy_dashboard.layouts.urls", "layouts"), namespace="layouts")), + path("users/", include(("pxy_dashboard.users.urls", "users"), namespace="users")), +] diff --git a/pxy_dashboard/users/__init__.py b/pxy_dashboard/users/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/pxy_dashboard/users/adapters.py b/pxy_dashboard/users/adapters.py new file mode 100644 index 0000000..8fd7e6e --- /dev/null +++ b/pxy_dashboard/users/adapters.py @@ -0,0 +1,16 @@ +from typing import Any + +from allauth.account.adapter import DefaultAccountAdapter +from allauth.socialaccount.adapter import DefaultSocialAccountAdapter +from django.conf import settings +from django.http import HttpRequest + + +class AccountAdapter(DefaultAccountAdapter): + def is_open_for_signup(self, request: HttpRequest): + return getattr(settings, "ACCOUNT_ALLOW_REGISTRATION", True) + + +class SocialAccountAdapter(DefaultSocialAccountAdapter): + def is_open_for_signup(self, request: HttpRequest, sociallogin: Any): + return getattr(settings, "ACCOUNT_ALLOW_REGISTRATION", True) diff --git a/pxy_dashboard/users/admin.py b/pxy_dashboard/users/admin.py new file mode 100644 index 0000000..14ea33b --- /dev/null +++ b/pxy_dashboard/users/admin.py @@ -0,0 +1,33 @@ +from django.contrib import admin +from django.contrib.auth import admin as auth_admin +from django.contrib.auth import get_user_model +from django.utils.translation import gettext_lazy as _ + +from .forms import UserChangeForm, UserCreationForm + +User = get_user_model() + +@admin.register(User) +class UserAdmin(auth_admin.UserAdmin): + + form = UserChangeForm + add_form = UserCreationForm + fieldsets = ( + (None, {"fields": ("username", "password")}), + (_("Personal info"), {"fields": ("name", "email")}), + ( + _("Permissions"), + { + "fields": ( + "is_active", + "is_staff", + "is_superuser", + "groups", + "user_permissions", + ), + }, + ), + (_("Important dates"), {"fields": ("last_login", "date_joined")}), + ) + list_display = ["username", "name", "is_superuser"] + search_fields = ["name"] diff --git a/pxy_dashboard/users/apps.py b/pxy_dashboard/users/apps.py new file mode 100644 index 0000000..98aa00e --- /dev/null +++ b/pxy_dashboard/users/apps.py @@ -0,0 +1,6 @@ +from django.apps import AppConfig + + +class UsersConfig(AppConfig): + default_auto_field = 'django.db.models.BigAutoField' + name = 'pxy_dashboard.users' diff --git a/pxy_dashboard/users/forms.py b/pxy_dashboard/users/forms.py new file mode 100644 index 0000000..ca93599 --- /dev/null +++ b/pxy_dashboard/users/forms.py @@ -0,0 +1,19 @@ +from django.contrib.auth import forms as admin_forms +from django.contrib.auth import get_user_model +from django.utils.translation import gettext_lazy as _ + +User = get_user_model() + + +class UserChangeForm(admin_forms.UserChangeForm): + class Meta(admin_forms.UserChangeForm.Meta): + model = User + + +class UserCreationForm(admin_forms.UserCreationForm): + class Meta(admin_forms.UserCreationForm.Meta): + model = User + + error_messages = { + "username": {"unique": _("This username has already been taken.")} + } diff --git a/pxy_dashboard/users/models.py b/pxy_dashboard/users/models.py new file mode 100644 index 0000000..854bed3 --- /dev/null +++ b/pxy_dashboard/users/models.py @@ -0,0 +1,22 @@ +from django.contrib.auth.models import AbstractUser +from django.db.models import CharField +from django.urls import reverse +from django.utils.translation import gettext_lazy as _ + + +class User(AbstractUser): + """Default user.""" + + #: First and last name do not cover name patterns around the globe + name = CharField(_("Name of User"), blank=True, max_length=255) + first_name = None # type: ignore + last_name = None # type: ignore + + def get_absolute_url(self): + """Get url for user's detail view. + + Returns: + str: URL for user detail. + + """ + return reverse("users:detail", kwargs={"username": self.username}) diff --git a/pxy_dashboard/users/tests.py b/pxy_dashboard/users/tests.py new file mode 100644 index 0000000..de8bdc0 --- /dev/null +++ b/pxy_dashboard/users/tests.py @@ -0,0 +1,3 @@ +from django.test import TestCase + +# Create your tests here. diff --git a/pxy_dashboard/users/urls.py b/pxy_dashboard/users/urls.py new file mode 100644 index 0000000..e251d29 --- /dev/null +++ b/pxy_dashboard/users/urls.py @@ -0,0 +1,14 @@ +from django.urls import path + +from .views import ( + user_detail_view, + user_redirect_view, + user_update_view, +) + +app_name = "users" +urlpatterns = [ + path("~redirect/", view=user_redirect_view, name="redirect"), + path("~update/", view=user_update_view, name="update"), + path("/", view=user_detail_view, name="detail"), +] diff --git a/pxy_dashboard/users/views.py b/pxy_dashboard/users/views.py new file mode 100644 index 0000000..a6ed7f0 --- /dev/null +++ b/pxy_dashboard/users/views.py @@ -0,0 +1,45 @@ +from django.contrib.auth import get_user_model +from django.contrib.auth.mixins import LoginRequiredMixin +from django.contrib.messages.views import SuccessMessageMixin +from django.urls import reverse +from django.utils.translation import gettext_lazy as _ +from django.views.generic import DetailView, RedirectView, UpdateView + +User = get_user_model() + + +class UserDetailView(LoginRequiredMixin, DetailView): + + model = User + slug_field = "username" + slug_url_kwarg = "username" + + +user_detail_view = UserDetailView.as_view() + + +class UserUpdateView(LoginRequiredMixin, SuccessMessageMixin, UpdateView): + + model = User + fields = ["name"] + success_message = _("Information successfully updated") + + def get_success_url(self): + return self.request.user.get_absolute_url() # type: ignore [union-attr] + + def get_object(self): + return self.request.user + + +user_update_view = UserUpdateView.as_view() + + +class UserRedirectView(LoginRequiredMixin, RedirectView): + + permanent = False + + def get_redirect_url(self): + return reverse("users:detail", kwargs={"username": self.request.user.username}) + + +user_redirect_view = UserRedirectView.as_view() diff --git a/pxy_dashboard/views.py b/pxy_dashboard/views.py new file mode 100644 index 0000000..eb636b7 --- /dev/null +++ b/pxy_dashboard/views.py @@ -0,0 +1,4 @@ +from django.shortcuts import render + +def index(request): + return render(request, 'pxy_dashboard/index.html') diff --git a/pxy_de/__pycache__/__init__.cpython-310.pyc b/pxy_de/__pycache__/__init__.cpython-310.pyc index 26e2ecd..788ba33 100644 Binary files a/pxy_de/__pycache__/__init__.cpython-310.pyc and b/pxy_de/__pycache__/__init__.cpython-310.pyc differ diff --git a/pxy_de/__pycache__/admin.cpython-310.pyc b/pxy_de/__pycache__/admin.cpython-310.pyc index b7120da..80aea16 100644 Binary files a/pxy_de/__pycache__/admin.cpython-310.pyc and b/pxy_de/__pycache__/admin.cpython-310.pyc differ diff --git a/pxy_de/__pycache__/apps.cpython-310.pyc b/pxy_de/__pycache__/apps.cpython-310.pyc index c02331b..d24d506 100644 Binary files a/pxy_de/__pycache__/apps.cpython-310.pyc and b/pxy_de/__pycache__/apps.cpython-310.pyc differ diff --git a/pxy_de/__pycache__/models.cpython-310.pyc b/pxy_de/__pycache__/models.cpython-310.pyc index 61e32ba..d81ab0f 100644 Binary files a/pxy_de/__pycache__/models.cpython-310.pyc and b/pxy_de/__pycache__/models.cpython-310.pyc differ diff --git a/pxy_de/migrations/__pycache__/0001_initial.cpython-310.pyc b/pxy_de/migrations/__pycache__/0001_initial.cpython-310.pyc index 6a7f577..b4feca9 100644 Binary files a/pxy_de/migrations/__pycache__/0001_initial.cpython-310.pyc and b/pxy_de/migrations/__pycache__/0001_initial.cpython-310.pyc differ diff --git a/pxy_de/migrations/__pycache__/__init__.cpython-310.pyc b/pxy_de/migrations/__pycache__/__init__.cpython-310.pyc index ce71311..6a2b824 100644 Binary files a/pxy_de/migrations/__pycache__/__init__.cpython-310.pyc and b/pxy_de/migrations/__pycache__/__init__.cpython-310.pyc differ diff --git a/pxy_de/pipelines/__pycache__/__init__.cpython-310.pyc b/pxy_de/pipelines/__pycache__/__init__.cpython-310.pyc index a0f4842..c8a5004 100644 Binary files a/pxy_de/pipelines/__pycache__/__init__.cpython-310.pyc and b/pxy_de/pipelines/__pycache__/__init__.cpython-310.pyc differ diff --git a/pxy_de/pipelines/__pycache__/models.cpython-310.pyc b/pxy_de/pipelines/__pycache__/models.cpython-310.pyc deleted file mode 100644 index 293be0d..0000000 Binary files a/pxy_de/pipelines/__pycache__/models.cpython-310.pyc and /dev/null differ diff --git a/pxy_de/pipelines/pxy_products/__pycache__/__init__.cpython-310.pyc b/pxy_de/pipelines/pxy_products/__pycache__/__init__.cpython-310.pyc index 33c7d47..47b6a95 100644 Binary files a/pxy_de/pipelines/pxy_products/__pycache__/__init__.cpython-310.pyc and b/pxy_de/pipelines/pxy_products/__pycache__/__init__.cpython-310.pyc differ diff --git a/pxy_de/pipelines/pxy_products/__pycache__/create_category.cpython-310.pyc b/pxy_de/pipelines/pxy_products/__pycache__/create_category.cpython-310.pyc index 0f70511..10ba736 100644 Binary files a/pxy_de/pipelines/pxy_products/__pycache__/create_category.cpython-310.pyc and b/pxy_de/pipelines/pxy_products/__pycache__/create_category.cpython-310.pyc differ diff --git a/pxy_de/pipelines/pxy_products/__pycache__/create_user_menus.cpython-310.pyc b/pxy_de/pipelines/pxy_products/__pycache__/create_user_menus.cpython-310.pyc index 81cbf68..f99db68 100644 Binary files a/pxy_de/pipelines/pxy_products/__pycache__/create_user_menus.cpython-310.pyc and b/pxy_de/pipelines/pxy_products/__pycache__/create_user_menus.cpython-310.pyc differ diff --git a/pxy_de/pipelines/pxy_products/__pycache__/fetch_data.cpython-310.pyc b/pxy_de/pipelines/pxy_products/__pycache__/fetch_data.cpython-310.pyc index dec2315..8130e0a 100644 Binary files a/pxy_de/pipelines/pxy_products/__pycache__/fetch_data.cpython-310.pyc and b/pxy_de/pipelines/pxy_products/__pycache__/fetch_data.cpython-310.pyc differ diff --git a/pxy_de/pipelines/pxy_products/__pycache__/models.cpython-310.pyc b/pxy_de/pipelines/pxy_products/__pycache__/models.cpython-310.pyc deleted file mode 100644 index bab6491..0000000 Binary files a/pxy_de/pipelines/pxy_products/__pycache__/models.cpython-310.pyc and /dev/null differ diff --git a/pxy_de/pipelines/pxy_products/__pycache__/run_products.cpython-310.pyc b/pxy_de/pipelines/pxy_products/__pycache__/run_products.cpython-310.pyc index 761b16d..d245ebf 100644 Binary files a/pxy_de/pipelines/pxy_products/__pycache__/run_products.cpython-310.pyc and b/pxy_de/pipelines/pxy_products/__pycache__/run_products.cpython-310.pyc differ diff --git a/pxy_langchain/__pycache__/__init__.cpython-310.pyc b/pxy_langchain/__pycache__/__init__.cpython-310.pyc index ac73692..571b397 100644 Binary files a/pxy_langchain/__pycache__/__init__.cpython-310.pyc and b/pxy_langchain/__pycache__/__init__.cpython-310.pyc differ diff --git a/pxy_langchain/__pycache__/admin.cpython-310.pyc b/pxy_langchain/__pycache__/admin.cpython-310.pyc index 6234559..1863e2f 100644 Binary files a/pxy_langchain/__pycache__/admin.cpython-310.pyc and b/pxy_langchain/__pycache__/admin.cpython-310.pyc differ diff --git a/pxy_langchain/__pycache__/apps.cpython-310.pyc b/pxy_langchain/__pycache__/apps.cpython-310.pyc index fa7e18a..6267150 100644 Binary files a/pxy_langchain/__pycache__/apps.cpython-310.pyc and b/pxy_langchain/__pycache__/apps.cpython-310.pyc differ diff --git a/pxy_langchain/__pycache__/models.cpython-310.pyc b/pxy_langchain/__pycache__/models.cpython-310.pyc index 15a36c3..50e2e54 100644 Binary files a/pxy_langchain/__pycache__/models.cpython-310.pyc and b/pxy_langchain/__pycache__/models.cpython-310.pyc differ diff --git a/pxy_langchain/__pycache__/services.cpython-310.pyc b/pxy_langchain/__pycache__/services.cpython-310.pyc index 4e18e80..cf67bf1 100644 Binary files a/pxy_langchain/__pycache__/services.cpython-310.pyc and b/pxy_langchain/__pycache__/services.cpython-310.pyc differ diff --git a/pxy_langchain/migrations/__pycache__/0001_initial.cpython-310.pyc b/pxy_langchain/migrations/__pycache__/0001_initial.cpython-310.pyc index 554a660..d199d97 100644 Binary files a/pxy_langchain/migrations/__pycache__/0001_initial.cpython-310.pyc and b/pxy_langchain/migrations/__pycache__/0001_initial.cpython-310.pyc differ diff --git a/pxy_langchain/migrations/__pycache__/0002_remove_aiprovider_base_url_aiassistant_created_at_and_more.cpython-310.pyc b/pxy_langchain/migrations/__pycache__/0002_remove_aiprovider_base_url_aiassistant_created_at_and_more.cpython-310.pyc index cb20a19..65ced56 100644 Binary files a/pxy_langchain/migrations/__pycache__/0002_remove_aiprovider_base_url_aiassistant_created_at_and_more.cpython-310.pyc and b/pxy_langchain/migrations/__pycache__/0002_remove_aiprovider_base_url_aiassistant_created_at_and_more.cpython-310.pyc differ diff --git a/pxy_langchain/migrations/__pycache__/0003_aiassistant_neo4j_profile_aiassistant_uses_graph.cpython-310.pyc b/pxy_langchain/migrations/__pycache__/0003_aiassistant_neo4j_profile_aiassistant_uses_graph.cpython-310.pyc index bec0e52..59c25b8 100644 Binary files a/pxy_langchain/migrations/__pycache__/0003_aiassistant_neo4j_profile_aiassistant_uses_graph.cpython-310.pyc and b/pxy_langchain/migrations/__pycache__/0003_aiassistant_neo4j_profile_aiassistant_uses_graph.cpython-310.pyc differ diff --git a/pxy_langchain/migrations/__pycache__/__init__.cpython-310.pyc b/pxy_langchain/migrations/__pycache__/__init__.cpython-310.pyc index 9ed1a1a..130957a 100644 Binary files a/pxy_langchain/migrations/__pycache__/__init__.cpython-310.pyc and b/pxy_langchain/migrations/__pycache__/__init__.cpython-310.pyc differ diff --git a/pxy_meta_pages/__pycache__/__init__.cpython-310.pyc b/pxy_meta_pages/__pycache__/__init__.cpython-310.pyc index da8f02d..68618bd 100644 Binary files a/pxy_meta_pages/__pycache__/__init__.cpython-310.pyc and b/pxy_meta_pages/__pycache__/__init__.cpython-310.pyc differ diff --git a/pxy_meta_pages/__pycache__/admin.cpython-310.pyc b/pxy_meta_pages/__pycache__/admin.cpython-310.pyc index 1ecb826..b157224 100644 Binary files a/pxy_meta_pages/__pycache__/admin.cpython-310.pyc and b/pxy_meta_pages/__pycache__/admin.cpython-310.pyc differ diff --git a/pxy_meta_pages/__pycache__/apps.cpython-310.pyc b/pxy_meta_pages/__pycache__/apps.cpython-310.pyc index 0714b3f..19783dd 100644 Binary files a/pxy_meta_pages/__pycache__/apps.cpython-310.pyc and b/pxy_meta_pages/__pycache__/apps.cpython-310.pyc differ diff --git a/pxy_meta_pages/__pycache__/models.cpython-310.pyc b/pxy_meta_pages/__pycache__/models.cpython-310.pyc index 9e3d6c0..f1bc512 100644 Binary files a/pxy_meta_pages/__pycache__/models.cpython-310.pyc and b/pxy_meta_pages/__pycache__/models.cpython-310.pyc differ diff --git a/pxy_meta_pages/__pycache__/services.cpython-310.pyc b/pxy_meta_pages/__pycache__/services.cpython-310.pyc index 0b61af4..77ddecb 100644 Binary files a/pxy_meta_pages/__pycache__/services.cpython-310.pyc and b/pxy_meta_pages/__pycache__/services.cpython-310.pyc differ diff --git a/pxy_meta_pages/__pycache__/urls.cpython-310.pyc b/pxy_meta_pages/__pycache__/urls.cpython-310.pyc index ddf67e2..5bcd33f 100644 Binary files a/pxy_meta_pages/__pycache__/urls.cpython-310.pyc and b/pxy_meta_pages/__pycache__/urls.cpython-310.pyc differ diff --git a/pxy_meta_pages/__pycache__/views.cpython-310.pyc b/pxy_meta_pages/__pycache__/views.cpython-310.pyc index 7ae5a4c..3100a87 100644 Binary files a/pxy_meta_pages/__pycache__/views.cpython-310.pyc and b/pxy_meta_pages/__pycache__/views.cpython-310.pyc differ diff --git a/pxy_meta_pages/__pycache__/webhook_handlers.cpython-310.pyc b/pxy_meta_pages/__pycache__/webhook_handlers.cpython-310.pyc index f160898..6384ef9 100644 Binary files a/pxy_meta_pages/__pycache__/webhook_handlers.cpython-310.pyc and b/pxy_meta_pages/__pycache__/webhook_handlers.cpython-310.pyc differ diff --git a/pxy_meta_pages/migrations/__pycache__/0001_initial.cpython-310.pyc b/pxy_meta_pages/migrations/__pycache__/0001_initial.cpython-310.pyc index 9e944e0..292b8f7 100644 Binary files a/pxy_meta_pages/migrations/__pycache__/0001_initial.cpython-310.pyc and b/pxy_meta_pages/migrations/__pycache__/0001_initial.cpython-310.pyc differ diff --git a/pxy_meta_pages/migrations/__pycache__/0002_facebookpageassistant_is_subscribed.cpython-310.pyc b/pxy_meta_pages/migrations/__pycache__/0002_facebookpageassistant_is_subscribed.cpython-310.pyc index 814c61b..095b54e 100644 Binary files a/pxy_meta_pages/migrations/__pycache__/0002_facebookpageassistant_is_subscribed.cpython-310.pyc and b/pxy_meta_pages/migrations/__pycache__/0002_facebookpageassistant_is_subscribed.cpython-310.pyc differ diff --git a/pxy_meta_pages/migrations/__pycache__/__init__.cpython-310.pyc b/pxy_meta_pages/migrations/__pycache__/__init__.cpython-310.pyc index 22c39fe..d1f1c54 100644 Binary files a/pxy_meta_pages/migrations/__pycache__/__init__.cpython-310.pyc and b/pxy_meta_pages/migrations/__pycache__/__init__.cpython-310.pyc differ diff --git a/pxy_neo4j/__pycache__/__init__.cpython-310.pyc b/pxy_neo4j/__pycache__/__init__.cpython-310.pyc index 1f3f6f4..b67d3ce 100644 Binary files a/pxy_neo4j/__pycache__/__init__.cpython-310.pyc and b/pxy_neo4j/__pycache__/__init__.cpython-310.pyc differ diff --git a/pxy_neo4j/__pycache__/admin.cpython-310.pyc b/pxy_neo4j/__pycache__/admin.cpython-310.pyc index b8f0f02..ca58541 100644 Binary files a/pxy_neo4j/__pycache__/admin.cpython-310.pyc and b/pxy_neo4j/__pycache__/admin.cpython-310.pyc differ diff --git a/pxy_neo4j/__pycache__/apps.cpython-310.pyc b/pxy_neo4j/__pycache__/apps.cpython-310.pyc index bfe947b..2c5a721 100644 Binary files a/pxy_neo4j/__pycache__/apps.cpython-310.pyc and b/pxy_neo4j/__pycache__/apps.cpython-310.pyc differ diff --git a/pxy_neo4j/__pycache__/models.cpython-310.pyc b/pxy_neo4j/__pycache__/models.cpython-310.pyc index dc0e549..b97a5f3 100644 Binary files a/pxy_neo4j/__pycache__/models.cpython-310.pyc and b/pxy_neo4j/__pycache__/models.cpython-310.pyc differ diff --git a/pxy_neo4j/__pycache__/neo4j_connector.cpython-310.pyc b/pxy_neo4j/__pycache__/neo4j_connector.cpython-310.pyc index ce1e0b2..6292dd1 100644 Binary files a/pxy_neo4j/__pycache__/neo4j_connector.cpython-310.pyc and b/pxy_neo4j/__pycache__/neo4j_connector.cpython-310.pyc differ diff --git a/pxy_neo4j/migrations/__pycache__/0001_initial.cpython-310.pyc b/pxy_neo4j/migrations/__pycache__/0001_initial.cpython-310.pyc index 86ab5da..8f74767 100644 Binary files a/pxy_neo4j/migrations/__pycache__/0001_initial.cpython-310.pyc and b/pxy_neo4j/migrations/__pycache__/0001_initial.cpython-310.pyc differ diff --git a/pxy_neo4j/migrations/__pycache__/__init__.cpython-310.pyc b/pxy_neo4j/migrations/__pycache__/__init__.cpython-310.pyc index b6a8b60..cb04714 100644 Binary files a/pxy_neo4j/migrations/__pycache__/__init__.cpython-310.pyc and b/pxy_neo4j/migrations/__pycache__/__init__.cpython-310.pyc differ diff --git a/pxy_openai/__pycache__/__init__.cpython-310.pyc b/pxy_openai/__pycache__/__init__.cpython-310.pyc index 55e96cf..6aef507 100644 Binary files a/pxy_openai/__pycache__/__init__.cpython-310.pyc and b/pxy_openai/__pycache__/__init__.cpython-310.pyc differ diff --git a/pxy_openai/__pycache__/admin.cpython-310.pyc b/pxy_openai/__pycache__/admin.cpython-310.pyc index 54709c5..d924a78 100644 Binary files a/pxy_openai/__pycache__/admin.cpython-310.pyc and b/pxy_openai/__pycache__/admin.cpython-310.pyc differ diff --git a/pxy_openai/__pycache__/apps.cpython-310.pyc b/pxy_openai/__pycache__/apps.cpython-310.pyc index 2bd47c1..92d4de2 100644 Binary files a/pxy_openai/__pycache__/apps.cpython-310.pyc and b/pxy_openai/__pycache__/apps.cpython-310.pyc differ diff --git a/pxy_openai/__pycache__/assistants.cpython-310.pyc b/pxy_openai/__pycache__/assistants.cpython-310.pyc index 42be2de..b9db794 100644 Binary files a/pxy_openai/__pycache__/assistants.cpython-310.pyc and b/pxy_openai/__pycache__/assistants.cpython-310.pyc differ diff --git a/pxy_openai/__pycache__/client.cpython-310.pyc b/pxy_openai/__pycache__/client.cpython-310.pyc index 8950552..0e08afd 100644 Binary files a/pxy_openai/__pycache__/client.cpython-310.pyc and b/pxy_openai/__pycache__/client.cpython-310.pyc differ diff --git a/pxy_openai/__pycache__/models.cpython-310.pyc b/pxy_openai/__pycache__/models.cpython-310.pyc index 282a834..837a5a3 100644 Binary files a/pxy_openai/__pycache__/models.cpython-310.pyc and b/pxy_openai/__pycache__/models.cpython-310.pyc differ diff --git a/pxy_openai/migrations/__pycache__/0001_initial.cpython-310.pyc b/pxy_openai/migrations/__pycache__/0001_initial.cpython-310.pyc index 60d152f..963f5ac 100644 Binary files a/pxy_openai/migrations/__pycache__/0001_initial.cpython-310.pyc and b/pxy_openai/migrations/__pycache__/0001_initial.cpython-310.pyc differ diff --git a/pxy_openai/migrations/__pycache__/__init__.cpython-310.pyc b/pxy_openai/migrations/__pycache__/__init__.cpython-310.pyc index 4e88a5f..cf2d064 100644 Binary files a/pxy_openai/migrations/__pycache__/__init__.cpython-310.pyc and b/pxy_openai/migrations/__pycache__/__init__.cpython-310.pyc differ diff --git a/pxy_whatsapp/__pycache__/__init__.cpython-310.pyc b/pxy_whatsapp/__pycache__/__init__.cpython-310.pyc index 95547b6..74c01ad 100644 Binary files a/pxy_whatsapp/__pycache__/__init__.cpython-310.pyc and b/pxy_whatsapp/__pycache__/__init__.cpython-310.pyc differ diff --git a/pxy_whatsapp/__pycache__/admin.cpython-310.pyc b/pxy_whatsapp/__pycache__/admin.cpython-310.pyc index 6e93f46..44345de 100644 Binary files a/pxy_whatsapp/__pycache__/admin.cpython-310.pyc and b/pxy_whatsapp/__pycache__/admin.cpython-310.pyc differ diff --git a/pxy_whatsapp/__pycache__/apps.cpython-310.pyc b/pxy_whatsapp/__pycache__/apps.cpython-310.pyc index 48d9732..64160e4 100644 Binary files a/pxy_whatsapp/__pycache__/apps.cpython-310.pyc and b/pxy_whatsapp/__pycache__/apps.cpython-310.pyc differ diff --git a/pxy_whatsapp/__pycache__/models.cpython-310.pyc b/pxy_whatsapp/__pycache__/models.cpython-310.pyc index 6a5ceb4..04ee944 100644 Binary files a/pxy_whatsapp/__pycache__/models.cpython-310.pyc and b/pxy_whatsapp/__pycache__/models.cpython-310.pyc differ diff --git a/pxy_whatsapp/__pycache__/urls.cpython-310.pyc b/pxy_whatsapp/__pycache__/urls.cpython-310.pyc index 59a37e7..6001742 100644 Binary files a/pxy_whatsapp/__pycache__/urls.cpython-310.pyc and b/pxy_whatsapp/__pycache__/urls.cpython-310.pyc differ diff --git a/pxy_whatsapp/__pycache__/views.cpython-310.pyc b/pxy_whatsapp/__pycache__/views.cpython-310.pyc index 392def5..1ac1ec1 100644 Binary files a/pxy_whatsapp/__pycache__/views.cpython-310.pyc and b/pxy_whatsapp/__pycache__/views.cpython-310.pyc differ diff --git a/pxy_whatsapp/migrations/__pycache__/0001_initial.cpython-310.pyc b/pxy_whatsapp/migrations/__pycache__/0001_initial.cpython-310.pyc index e622ac1..6eb2352 100644 Binary files a/pxy_whatsapp/migrations/__pycache__/0001_initial.cpython-310.pyc and b/pxy_whatsapp/migrations/__pycache__/0001_initial.cpython-310.pyc differ diff --git a/pxy_whatsapp/migrations/__pycache__/0002_whatsappbot_webhook_verify_token_and_more.cpython-310.pyc b/pxy_whatsapp/migrations/__pycache__/0002_whatsappbot_webhook_verify_token_and_more.cpython-310.pyc index a76d24c..3ed5b4c 100644 Binary files a/pxy_whatsapp/migrations/__pycache__/0002_whatsappbot_webhook_verify_token_and_more.cpython-310.pyc and b/pxy_whatsapp/migrations/__pycache__/0002_whatsappbot_webhook_verify_token_and_more.cpython-310.pyc differ diff --git a/pxy_whatsapp/migrations/__pycache__/0003_whatsappbot_assistant.cpython-310.pyc b/pxy_whatsapp/migrations/__pycache__/0003_whatsappbot_assistant.cpython-310.pyc index e14b739..1b107ee 100644 Binary files a/pxy_whatsapp/migrations/__pycache__/0003_whatsappbot_assistant.cpython-310.pyc and b/pxy_whatsapp/migrations/__pycache__/0003_whatsappbot_assistant.cpython-310.pyc differ diff --git a/pxy_whatsapp/migrations/__pycache__/__init__.cpython-310.pyc b/pxy_whatsapp/migrations/__pycache__/__init__.cpython-310.pyc index 40aaa3e..a35a990 100644 Binary files a/pxy_whatsapp/migrations/__pycache__/__init__.cpython-310.pyc and b/pxy_whatsapp/migrations/__pycache__/__init__.cpython-310.pyc differ diff --git a/requirements.txt b/requirements.txt index 8e5f3a1..ca1a2c5 100644 --- a/requirements.txt +++ b/requirements.txt @@ -134,12 +134,13 @@ yarl==1.18.3 zipp==3.21.0 zstandard==0.23.0 gunicorn -psycopg2 +psycopg2-binary dj-database-url networkx osmnx>=1.6 geopandas shapely pyproj -pyrosm matplotlib +dj-database-url>=1.0.0 +