diff --git a/.github/workflows/deploy-docker-github-sync.yml b/.github/workflows/deploy-docker-github-sync.yml
new file mode 100644
index 000000000..9ace2873c
--- /dev/null
+++ b/.github/workflows/deploy-docker-github-sync.yml
@@ -0,0 +1,349 @@
+# #
+# @type github workflow
+# @author Aetherinox
+# @url https://github.com/Aetherinox
+#
+# @usage originally, Keeweb's docker files were hosted in the main branch within the folder /package/docker/*
+# with the new setup, the Keeweb docker files are stored in a separate branch from main called `docker/keeweb`.
+# this workflow copies the required docker files from the new branch docker/keeweb, and brings them over to the main branch
+# and places them within the original subfolder `package/docker/*`
+#
+# @secrets secrets.ADMINSERV_GPG_KEY_ASC gpg private key (armored) | BEGIN PGP PRIVATE KEY BLOCK
+# secrets.ADMINSERV_GPG_PASSPHRASE gpg private key passphrase
+#
+# @triggers this workflow is automatically run every time a PUSH is made to the branch `docker/keeweb`; it will copy docker/keeweb's contents
+# to the main branch's `package/docker` folder.
+#
+# this workflow can be manually triggered (WORKFLOW_DISPATCH). to select the destination branch, click `Run Workflow` and select `Use Workflow From`
+# and select the destination branch
+# #
+
+name: "🔄 Sync › Docker › Github"
+run-name: "🔄 Sync › Docker › Github"
+
+# #
+# Triggers
+# #
+
+on:
+
+ # #
+ # Trigger › Workflow Dispatch
+ #
+ # If any values are not provided, will use fallback env variable
+ # #
+
+ workflow_dispatch:
+ inputs:
+
+ # #
+ # Branch › Source
+ #
+ # Where the files to be copied are
+ # #
+
+ BRANCH_SRC:
+ description: '📂 Repo › Source'
+ required: true
+ default: 'docker/keeweb'
+ type: string
+
+ # #
+ # Folder › Destination
+ #
+ # where the files will be placed
+ # #
+
+ FOLDER_DEST:
+ description: '📂 Folder › Destination'
+ required: true
+ default: 'package/docker'
+ type: string
+
+ # #
+ # true no changes to the repo will be made
+ # false workflow will behave normally, and push any changes detected to the files
+ # #
+
+ DRY_RUN:
+ description: '📑 Dry Run Only'
+ required: true
+ default: false
+ type: boolean
+
+ # #
+ # Trigger › Push
+ # #
+
+ push:
+ branches:
+ - docker/keeweb
+
+# #
+# Environment Vars
+#
+# BRANCH_SRC the source branch where you want to copy files from
+# BRANCH_DEST the destination branch where the files will be copied to
+# FOLDER_DEST the destination folder where the files will be placed within BRANCH_DEST
+# BRANCH_MAIN even though this value is set below; it is a fallback.
+# when the workflow is started, it will attempt to fetch
+# the real default branch name.
+# #
+
+env:
+ BRANCH_SRC: ${{ github.event.inputs.BRANCH_SRC || 'docker/keeweb' }}
+ BRANCH_DEST: ${{ github.ref_name || 'main' }}
+ FOLDER_DEST: ${{ github.event.inputs.FOLDER_DEST || 'package/docker' }}
+ BRANCH_MAIN: 'main'
+
+ BOT_NAME_1: EuropaServ
+ BOT_NAME_DEPENDABOT: dependabot[bot]
+
+# #
+# Jobs
+#
+# The way pushed docker containers on Github work, the most recent image built goes at the top.
+# We will use the order below which builds the :latest image last so that it appears at the very
+# top of the packages page.
+# #
+
+jobs:
+
+ # #
+ # Job › Create Tag
+ # #
+
+ job-docker-release-tags-create:
+ name: >-
+ 📦 Release › Sync
+ runs-on: ubuntu-latest
+ permissions:
+ contents: write
+ packages: write
+ attestations: write
+ id-token: write
+ steps:
+
+ # #
+ # Sync › Start
+ # #
+
+ - name: "✅ Start"
+ id: task_sync_start
+ run: |
+ echo "Starting branch sync"
+
+ # #
+ # Sync › Checkout
+ # #
+
+ - name: "☑️ Checkout"
+ id: task_sync_checkout
+ uses: actions/checkout@v4
+ with:
+ fetch-depth: 0
+
+ # #
+ # Sync › Install Dependencies
+ # #
+
+ - name: "📦 Install Dependencies"
+ id: task_sync_dependencies
+ run:
+ sudo apt-get install -qq dos2unix
+
+ # #
+ # Sync › Get Default Branch Name
+ #
+ # attempts to get the name of the default branch so that we don't have to manually changes
+ # #
+
+ - name: "🔍 Find Default Branch Name"
+ id: task_sync_branch_default_get
+ run:
+ echo "BRANCH_MAIN=${{ github.event.repository.default_branch }}" >> $GITHUB_ENV
+
+ # #
+ # Sync › Debug
+ # #
+
+ - name: '⚠️ Env Variable › Check'
+ id: task_sync_vars_check
+ run: |
+ if [[ "${{ env.BRANCH_SRC }}" == "${{ env.BRANCH_DEST }}" ]]; then
+ branch_default="${{ env.BRANCH_MAIN }}"
+ echo "⚠️⚠️⚠️ Source and destination branches are the same, changing destination branch to $branch_default ⚠️⚠️⚠️"
+ echo "BRANCH_DEST=$(echo $branch_default)" >> $GITHUB_ENV
+ fi
+
+ # #
+ # Sync › Var Check › Confirm
+ # #
+
+ - name: '⚠️ Env Variable › Confirm'
+ id: task_sync_vars_confirm
+ run: |
+ echo "BRANCH_DEST is now ${{ env.BRANCH_DEST }}"
+
+ # #
+ # Sync › Checkpoint › 1
+ # #
+
+ - name: '⚠️ Checkpoint 1'
+ id: task_sync_checkpoint_1
+ run: |
+ echo "github.actor.......... ${{ github.actor }}"
+ echo "github.ref ........... ${{ github.ref }}"
+ echo "github.ref_name ...... ${{ github.ref_name }}"
+ echo "github.event_name .... ${{ github.event_name }}"
+ echo "inputs.DRY_RUN ....... ${{ inputs.DRY_RUN }}"
+ echo "env.BRANCH_SRC........ ${{ env.BRANCH_SRC }}"
+ echo "env.BRANCH_DEST....... ${{ env.BRANCH_DEST || env.BRANCH_MAIN }}"
+ echo "env.FOLDER_DEST....... ${{ env.FOLDER_DEST }}"
+
+ echo " ⚠️⚠️⚠️⚠️ This workflow will copy files [ 📄 root Dockerfile* ] from branch 🏠 ${{ env.BRANCH_SRC }} to 🔄 ${{ env.BRANCH_DEST || env.BRANCH_MAIN }} to folder 📂 ${{ env.FOLDER_DEST }} ⚠️⚠️⚠️"
+ echo " › Copy files ............. 📄 root Dockerfile*"
+ echo " › From branch ............ 🏠 ${{ env.BRANCH_SRC }}"
+ echo " › To branch .............. 🔄 ${{ env.BRANCH_DEST || env.BRANCH_MAIN }}"
+ echo " › In folder .............. 📂 ${{ env.FOLDER_DEST }}"
+
+ # #
+ # Sync › Copy Dockerfiles to Main branch
+ #
+ # this action copies all the required docker files from the docker/keeweb branch, over to
+ # the main branch within the subfolder `package/docker/*`
+ #
+ # to discard the actions of git checkout and not commit, run:
+ # git checkout -
+ #
+ # if you are copying files from docker/keeweb which don't exist on the main branch, you must
+ # run `git add package/docker` to track the new files / folders added
+ #
+ # this step does the following:
+ # - deletes the package/docker/* folder contents on the destination repo
+ # - sets a few settings to get rid of annoying features
+ # - git checkout origin/main (destination branch)
+ # - git checkout origin/docker/keeweb (source branch) and sets working tree to /package/docker/
+ # - adds all changes to git which will be committed in a later step
+ # #
+
+ - name: '⬇️ Pull Docker Files'
+ id: task_sync_files_pull
+ run: |
+ rm -rf ${{ env.FOLDER_DEST }}/*
+ mkdir -p ${{ env.FOLDER_DEST }}
+ git config --global pager.diff false
+ git config --global advice.detachedHead false
+ git checkout origin/${{ env.BRANCH_DEST || env.BRANCH_MAIN }} # ${{ github.ref_name || 'main' }}
+ git --work-tree=${{ env.FOLDER_DEST }} checkout origin/${{ env.BRANCH_SRC }} -- root Dockerfile* # 'docker/keeweb'
+ git add ${{ env.FOLDER_DEST }}
+
+ # #
+ # Sync › Run permission management
+ # #
+
+ - name: '#️⃣ Manage Permissions'
+ id: task_sync_fix_permissions
+ run: |
+ find ${{ env.FOLDER_DEST }} -name 'run' -exec chmod 755 {} \;
+ WRONG_PERM=$(find ${{ env.FOLDER_DEST }} -path "./.git" -prune -o \( -name "run" -o -name "finish" -o -name "check" \) -not -perm -u=x,g=x,o=x -print)
+ if [ -n "${WRONG_PERM}" ]; then
+ for i in ${WRONG_PERM}; do
+ echo "::error file=${i},line=1,title=Missing Executable Bit::This file needs to be set as executable!"
+ done
+ exit 1
+ else
+ echo "**** Executable permissions are OK ****"
+ fi
+
+ # #
+ # Sync › Run dos2unix
+ # #
+
+ - name: '🔐 Apply dos2unix'
+ id: task_sync_fix_dos2unix
+ run: |
+ find ${{ env.FOLDER_DEST }} -type f | grep -Ev '.git|.github|*.jpg|*.jpeg|*.png' | xargs dos2unix --
+
+ # #
+ # Sync › Show Differences
+ #
+ # this is just a debugging step, it shows all the files pending commit that will be committed.
+ # if you are stuck in the git pager, hit "Q" to quit.
+ #
+ # to disable the pager, run the command:
+ # git config --global pager.diff false
+ # #
+
+ - name: '📑 View Differences'
+ id: task_sync_debug_diff
+ run: |
+ git diff --name-only HEAD
+
+ # #
+ # Sync › Precommit
+ #
+ # define the date/time and the commit message
+ # #
+
+ - name: '📦 Commit › Pre-commit'
+ id: task_sync_commit_pre
+ run: |
+ now=$(date -u '+%m/%d/%Y %H:%M')
+ commit_label="chore(auto): Docker Sync" >> $GITHUB_ENV
+ commit_message="\`️️$commit_label 🔄\` \`$now UTC\`" >> $GITHUB_ENV
+ echo "COMMIT_MESSAGE=$(echo $commit_message)" >> $GITHUB_ENV
+ echo "NOW=$(echo $now)" >> $GITHUB_ENV
+
+ # #
+ # Sync › GPG Key
+ #
+ # this step is required so that you can sign commits in the last step
+ # stefanzweifel/git-auto-commit-action@v5
+ # #
+
+ - name: '📦 Commit › GPG Key'
+ id: task_sync_commit_gpg
+ uses: crazy-max/ghaction-import-gpg@v6
+ with:
+ gpg_private_key: ${{ secrets.ADMINSERV_GPG_KEY_ASC }}
+ passphrase: ${{ secrets.ADMINSERV_GPG_PASSPHRASE }}
+ git_user_signingkey: true
+ git_commit_gpgsign: true
+
+ # #
+ # Sync › Checkpoint › 2
+ # #
+
+ - name: '⚠️ Checkpoint 2'
+ id: task_sync_checkpoint_2
+ run: |
+ echo "github.actor.......... ${{ github.actor }}"
+ echo "github.ref ........... ${{ github.ref }}"
+ echo "github.ref_name ...... ${{ github.ref_name }}"
+ echo "github.event_name .... ${{ github.event_name }}"
+ echo "inputs.DRY_RUN ....... ${{ inputs.DRY_RUN }}"
+
+ echo " ⚠️⚠️⚠️⚠️ This workflow will copy files [ 📄 root Dockerfile* ] from branch 🏠 ${{ env.BRANCH_SRC }} to 🔄 ${{ env.BRANCH_DEST || env.BRANCH_MAIN }} to folder 📂 ${{ env.FOLDER_DEST }} ⚠️⚠️⚠️"
+ echo " › Copy files ............. 📄 root Dockerfile*"
+ echo " › From branch ............ 🏠 ${{ env.BRANCH_SRC }}"
+ echo " › To branch .............. 🔄 ${{ env.BRANCH_DEST || env.BRANCH_MAIN }}"
+ echo " › In folder .............. 📂 ${{ env.FOLDER_DEST }}"
+
+ # #
+ # Sync › Commit
+ #
+ # commits the pending changes to the main branch
+ # #
+
+ - name: '🔄 Sync › Commit'
+ id: task_sync_commit
+ uses: stefanzweifel/git-auto-commit-action@v5
+ if: ( github.event_name == 'workflow_dispatch' && inputs.DRY_RUN == false ) || ( github.event_name == 'push' )
+ with:
+ commit_message: ${{ env.COMMIT_MESSAGE }}
+ commit_author: "${{ steps.task_sync_commit_gpg.outputs.name }} <${{ steps.task_sync_commit_gpg.outputs.email }}>"
+ commit_user_name: ${{ steps.task_sync_commit_gpg.outputs.name }}
+ commit_user_email: ${{ steps.task_sync_commit_gpg.outputs.email }}
+ branch: ${{ env.BRANCH_DEST || env.BRANCH_MAIN }}
+ add_options: '-u'
\ No newline at end of file
diff --git a/package/docker/Dockerfile b/package/docker/Dockerfile
new file mode 100644
index 000000000..94c9c9965
--- /dev/null
+++ b/package/docker/Dockerfile
@@ -0,0 +1,107 @@
+# syntax=docker/dockerfile:1
+
+# #
+# @project keeweb
+# @usage keeweb docker image
+# @file Dockerfile
+# @repo https://github.com/keeweb/keeweb
+# https://github.com/keeweb/alpine-base
+# https://hub.docker.com/repository/docker/keeweb/keeweb
+# https://hub.docker.com/repository/docker/keeweb/alpine-base
+# #
+
+FROM ghcr.io/keeweb/alpine-base:3.20-amd64
+
+# #
+# Set Args
+# #
+
+ARG BUILD_DATE
+ARG VERSION
+ARG NGINX_VERSION
+
+# #
+# Set Labels
+# #
+
+LABEL maintainer="Aetherinox"
+LABEL org.opencontainers.image.authors="Aetherinox, Antelle"
+LABEL org.opencontainers.image.vendor="Keeweb"
+LABEL org.opencontainers.image.title="Keeweb Password Manager"
+LABEL org.opencontainers.image.description="Keeweb password manager"
+LABEL org.opencontainers.image.source="https://github.com/keeweb/keeweb"
+LABEL org.opencontainers.image.documentation="https://github.com/keeweb/keeweb"
+LABEL org.opencontainers.image.url="https://github.com/keeweb/keeweb/pkgs/container/keeweb"
+LABEL org.opencontainers.image.licenses="MIT"
+LABEL build_version="Keeweb v${VERSION} build-date: ${BUILD_DATE}"
+
+# #
+# Set Env Var
+# #
+
+ENV TZ="Etc/UTC"
+ENV URL_REPO_BASE="https://github.com/keeweb/alpine-base/pkgs/container/alpine-base"
+ENV URL_REPO_APP="https://github.com/keeweb/keeweb/pkgs/container/keeweb"
+ENV FILE_NAME="index.html"
+ENV PORT_HTTP=80
+ENV PORT_HTTPS=443
+
+# #
+# Install
+# #
+
+RUN \
+ if [ -z ${NGINX_VERSION+x} ]; then \
+ NGINX_VERSION=$(curl -sL "http://dl-cdn.alpinelinux.org/alpine/v3.20/main/x86_64/APKINDEX.tar.gz" | tar -xz -C /tmp \
+ && awk '/^P:nginx$/,/V:/' /tmp/APKINDEX | sed -n 2p | sed 's/^V://'); \
+ fi && \
+ apk add --no-cache \
+ wget \
+ logrotate \
+ openssl \
+ apache2-utils \
+ nginx==${NGINX_VERSION} \
+ nginx-mod-http-fancyindex==${NGINX_VERSION} && \
+ echo "**** Install Build Packages ****" && \
+ echo "**** Configure Nginx ****" && \
+ echo 'fastcgi_param HTTP_PROXY ""; # https://httpoxy.org/' >> \
+ /etc/nginx/fastcgi_params && \
+ echo 'fastcgi_param PATH_INFO $fastcgi_path_info; # http://nginx.org/en/docs/http/ngx_http_fastcgi_module.html#fastcgi_split_path_info' >> \
+ /etc/nginx/fastcgi_params && \
+ echo 'fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; # https://www.nginx.com/resources/wiki/start/topics/examples/phpfcgi/#connecting-nginx-to-php-fpm' >> \
+ /etc/nginx/fastcgi_params && \
+ echo 'fastcgi_param SERVER_NAME $host; # Send HTTP_HOST as SERVER_NAME. If HTTP_HOST is blank, send the value of server_name from nginx (default is `_`)' >> \
+ /etc/nginx/fastcgi_params && \
+ rm -f /etc/nginx/http.d/default.conf && \
+ rm -f /etc/nginx/conf.d/stream.conf && \
+ rm -f /config/www/index.html && \
+ echo "**** Setup Logrotate ****" && \
+ sed -i "s#/var/log/messages {}.*# #g" \
+ /etc/logrotate.conf && \
+ sed -i 's#/usr/sbin/logrotate /etc/logrotate.conf#/usr/sbin/logrotate /etc/logrotate.conf -s /config/log/logrotate.status#g' \
+ /etc/periodic/daily/logrotate
+
+# #
+# Set work directory
+# #
+
+WORKDIR /config/www
+
+# #
+# Add local files
+# #
+
+COPY root/ /
+
+# #
+# Ports and volumes
+# #
+
+EXPOSE ${PORT_HTTP} ${PORT_HTTPS}
+
+# #
+# In case user sets up the cron for a longer duration, do a first run
+# and then keep the container running. Hacky, but whatever.
+# #
+
+# CMD ["sh", "-c", "/run.sh ; /task.sh ; tail -f /dev/null"]
diff --git a/package/docker/Dockerfile.aarch64 b/package/docker/Dockerfile.aarch64
new file mode 100644
index 000000000..2cfdabbd6
--- /dev/null
+++ b/package/docker/Dockerfile.aarch64
@@ -0,0 +1,107 @@
+# syntax=docker/dockerfile:1
+
+# #
+# @project keeweb
+# @usage keeweb docker image
+# @file Dockerfile
+# @repo https://github.com/keeweb/keeweb
+# https://github.com/keeweb/alpine-base
+# https://hub.docker.com/repository/docker/keeweb/keeweb
+# https://hub.docker.com/repository/docker/keeweb/alpine-base
+# #
+
+FROM ghcr.io/keeweb/alpine-base:3.20-arm64
+
+# #
+# Set Args
+# #
+
+ARG BUILD_DATE
+ARG VERSION
+ARG NGINX_VERSION
+
+# #
+# Set Labels
+# #
+
+LABEL maintainer="Aetherinox"
+LABEL org.opencontainers.image.authors="Aetherinox, Antelle"
+LABEL org.opencontainers.image.vendor="Keeweb"
+LABEL org.opencontainers.image.title="Keeweb Password Manager"
+LABEL org.opencontainers.image.description="Keeweb password manager"
+LABEL org.opencontainers.image.source="https://github.com/keeweb/keeweb"
+LABEL org.opencontainers.image.documentation="https://github.com/keeweb/keeweb"
+LABEL org.opencontainers.image.url="https://github.com/keeweb/keeweb/pkgs/container/keeweb"
+LABEL org.opencontainers.image.licenses="MIT"
+LABEL build_version="Keeweb v${VERSION} build-date: ${BUILD_DATE}"
+
+# #
+# Set Env Var
+# #
+
+ENV TZ="Etc/UTC"
+ENV URL_REPO_BASE="https://github.com/keeweb/alpine-base/pkgs/container/alpine-base"
+ENV URL_REPO_APP="https://github.com/keeweb/keeweb/pkgs/container/keeweb"
+ENV FILE_NAME="index.html"
+ENV PORT_HTTP=80
+ENV PORT_HTTPS=443
+
+# #
+# Install
+# #
+
+RUN \
+ if [ -z ${NGINX_VERSION+x} ]; then \
+ NGINX_VERSION=$(curl -sL "http://dl-cdn.alpinelinux.org/alpine/v3.20/main/x86_64/APKINDEX.tar.gz" | tar -xz -C /tmp \
+ && awk '/^P:nginx$/,/V:/' /tmp/APKINDEX | sed -n 2p | sed 's/^V://'); \
+ fi && \
+ apk add --no-cache \
+ wget \
+ logrotate \
+ openssl \
+ apache2-utils \
+ nginx==${NGINX_VERSION} \
+ nginx-mod-http-fancyindex==${NGINX_VERSION} && \
+ echo "**** Install Build Packages ****" && \
+ echo "**** Configure Nginx ****" && \
+ echo 'fastcgi_param HTTP_PROXY ""; # https://httpoxy.org/' >> \
+ /etc/nginx/fastcgi_params && \
+ echo 'fastcgi_param PATH_INFO $fastcgi_path_info; # http://nginx.org/en/docs/http/ngx_http_fastcgi_module.html#fastcgi_split_path_info' >> \
+ /etc/nginx/fastcgi_params && \
+ echo 'fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; # https://www.nginx.com/resources/wiki/start/topics/examples/phpfcgi/#connecting-nginx-to-php-fpm' >> \
+ /etc/nginx/fastcgi_params && \
+ echo 'fastcgi_param SERVER_NAME $host; # Send HTTP_HOST as SERVER_NAME. If HTTP_HOST is blank, send the value of server_name from nginx (default is `_`)' >> \
+ /etc/nginx/fastcgi_params && \
+ rm -f /etc/nginx/http.d/default.conf && \
+ rm -f /etc/nginx/conf.d/stream.conf && \
+ rm -f /config/www/index.html && \
+ echo "**** Setup Logrotate ****" && \
+ sed -i "s#/var/log/messages {}.*# #g" \
+ /etc/logrotate.conf && \
+ sed -i 's#/usr/sbin/logrotate /etc/logrotate.conf#/usr/sbin/logrotate /etc/logrotate.conf -s /config/log/logrotate.status#g' \
+ /etc/periodic/daily/logrotate
+
+# #
+# Set work directory
+# #
+
+WORKDIR /config/www
+
+# #
+# Add local files
+# #
+
+COPY root/ /
+
+# #
+# Ports and volumes
+# #
+
+EXPOSE ${PORT_HTTP} ${PORT_HTTPS}
+
+# #
+# In case user sets up the cron for a longer duration, do a first run
+# and then keep the container running. Hacky, but whatever.
+# #
+
+# CMD ["sh", "-c", "/run.sh ; /task.sh ; tail -f /dev/null"]
diff --git a/package/docker/root/custom-cont-init.d/plugins b/package/docker/root/custom-cont-init.d/plugins
new file mode 100644
index 000000000..872cb95da
--- /dev/null
+++ b/package/docker/root/custom-cont-init.d/plugins
@@ -0,0 +1,38 @@
+#!/bin/bash
+
+# #
+# @project keeweb
+# @usage keeweb docker image
+# @file plugins
+# @repo https://github.com/keeweb/keeweb
+# https://github.com/keeweb/alpine-base
+# https://hub.docker.com/repository/docker/keeweb/keeweb
+# https://hub.docker.com/repository/docker/keeweb/alpine-base
+#
+# this script installs the keeweb plugins from https://github.com/keeweb/keeweb-plugins/
+# #
+
+PLUGINS_PATH="/config/www/plugins"
+
+# #
+# Plugins > Start
+# #
+
+echo -e " Loader : Checking keeweb-plugins"
+
+# #
+# Plugins > Install
+# #
+
+if [ ! -d ${PLUGINS_PATH} ]; then
+ curl -Ss -L https://github.com/keeweb/keeweb-plugins/archive/master.zip >> /config/www/master.zip
+ unzip -qq /config/www/master.zip -d /config/www/
+ rm /config/www/master.zip
+ mkdir -p ${PLUGINS_PATH}
+ cp -R /config/www/keeweb-plugins-master/docs/plugins/* ${PLUGINS_PATH}
+ rm -rf /config/www/keeweb-plugins-master
+
+ echo -e " Loader : Installed keeweb-plugins to ${PLUGINS_PATH}"
+else
+ echo -e " Loader : keeweb-plugins already installed in ${PLUGINS_PATH}; skipping"
+fi;
\ No newline at end of file
diff --git a/package/docker/root/defaults/nginx/dhparams.pem b/package/docker/root/defaults/nginx/dhparams.pem
new file mode 100644
index 000000000..eed4c41e2
--- /dev/null
+++ b/package/docker/root/defaults/nginx/dhparams.pem
@@ -0,0 +1,13 @@
+-----BEGIN DH PARAMETERS-----
+MIICCAKCAgEA//////////+t+FRYortKmq/cViAnPTzx2LnFg84tNpWp4TZBFGQz
++8yTnc4kmz75fS/jY2MMddj2gbICrsRhetPfHtXV/WVhJDP1H18GbtCFY2VVPe0a
+87VXE15/V8k1mE8McODmi3fipona8+/och3xWKE2rec1MKzKT0g6eXq8CrGCsyT7
+YdEIqUuyyOP7uWrat2DX9GgdT0Kj3jlN9K5W7edjcrsZCwenyO4KbXCeAvzhzffi
+7MA0BM0oNC9hkXL+nOmFg/+OTxIy7vKBg8P+OxtMb61zO7X8vC7CIAXFjvGDfRaD
+ssbzSibBsu/6iGtCOGEfz9zeNVs7ZRkDW7w09N75nAI4YbRvydbmyQd62R0mkff3
+7lmMsPrBhtkcrv4TCYUTknC0EwyTvEN5RPT9RFLi103TZPLiHnH1S/9croKrnJ32
+nuhtK8UiNjoNq8Uhl5sN6todv5pC1cRITgq80Gv6U93vPBsg7j/VnXwl5B0rZp4e
+8W5vUsMWTfT7eTDp5OWIV7asfV9C1p9tGHdjzx1VA0AEh/VbpX4xzHpxNciG77Qx
+iu1qHgEtnmgyqQdgCpGBMMRtx3j5ca0AOAkpmaMzy4t6Gh25PXFAADwqTs6p+Y0K
+zAqCkc3OyX3Pjsm1Wn+IpGtNtahR9EGC4caKAH5eZV9q//////////8CAQI=
+-----END DH PARAMETERS-----
\ No newline at end of file
diff --git a/package/docker/root/defaults/nginx/nginx.conf.sample b/package/docker/root/defaults/nginx/nginx.conf.sample
new file mode 100644
index 000000000..2c9092c3b
--- /dev/null
+++ b/package/docker/root/defaults/nginx/nginx.conf.sample
@@ -0,0 +1,92 @@
+# #
+# @project keeweb
+# @usage Nginx site-configs default configuration file
+# @file /root/defaults/nginx/nginx.conf.sample
+# @repo https://github.com/keeweb/keeweb
+# https://github.com/keeweb/alpine-base
+# https://hub.docker.com/repository/docker/keeweb/keeweb
+# https://hub.docker.com/repository/docker/keeweb/alpine-base
+# #
+
+user keeweb;
+
+# Set number of worker processes automatically based on number of CPU cores.
+include /config/nginx/worker_processes.conf;
+
+# Enables the use of JIT for regular expressions to speed-up their processing.
+pcre_jit on;
+
+# Configures default error logger.
+error_log /config/log/nginx/error.log;
+
+# Includes files with directives to load dynamic modules.
+include /etc/nginx/modules/*.conf;
+
+# Include files with config snippets into the root context.
+include /etc/nginx/conf.d/*.conf;
+
+events
+{
+ # The maximum number of simultaneous connections that can be opened by
+ # a worker process.
+ worker_connections 1024;
+}
+
+http
+{
+ # Includes mapping of file name extensions to MIME types of responses
+ # and defines the default type.
+ include /etc/nginx/mime.types;
+ default_type application/octet-stream;
+
+ # Name servers used to resolve names of upstream servers into addresses.
+ # It's also needed when using tcpsocket and udpsocket in Lua modules.
+ # resolver 1.1.1.1 1.0.0.1 2606:4700:4700::1111 2606:4700:4700::1001;
+ include /config/nginx/resolver.conf;
+
+ # Don't tell nginx version to the clients. Default is 'on'.
+ server_tokens off;
+
+ # Specifies the maximum accepted body size of a client request, as
+ # indicated by the request header Content-Length. If the stated content
+ # length is greater than this size, then the client receives the HTTP
+ # error code 413. Set to 0 to disable. Default is '1m'.
+ client_max_body_size 0;
+
+ # Sendfile copies data between one FD and other from within the kernel,
+ # which is more efficient than read() + write(). Default is off.
+ sendfile on;
+
+ # Causes nginx to attempt to send its HTTP response head in one packet,
+ # instead of using partial frames. Default is 'off'.
+ tcp_nopush on;
+
+ # all ssl related config moved to ssl.conf
+ # included in server blocks where listen 443 is defined
+
+ # Enable gzipping of responses.
+ # gzip on;
+
+ # Set the Vary HTTP header as defined in the RFC 2616. Default is 'off'.
+ gzip_vary on;
+
+ # Helper variable for proxying websockets.
+ map $http_upgrade $connection_upgrade
+ {
+ default upgrade;
+ '' close;
+ }
+
+ # Enable http2 by default for all servers
+ http2 on;
+
+ # Sets the path, format, and configuration for a buffered log write.
+ access_log /config/log/nginx/access.log;
+
+ # Includes virtual hosts configs.
+ include /etc/nginx/http.d/*.conf;
+ include /config/nginx/site-confs/*.conf;
+}
+
+daemon off;
+pid /run/nginx.pid;
diff --git a/package/docker/root/defaults/nginx/site-confs/default.conf.sample b/package/docker/root/defaults/nginx/site-confs/default.conf.sample
new file mode 100644
index 000000000..10564f9a4
--- /dev/null
+++ b/package/docker/root/defaults/nginx/site-confs/default.conf.sample
@@ -0,0 +1,83 @@
+# #
+# @project keeweb
+# @usage Nginx site-configs default configuration file
+# @file /root/defaults/nginx/site-confs/default.conf
+# @repo https://github.com/keeweb/keeweb
+# https://github.com/keeweb/alpine-base
+# https://hub.docker.com/repository/docker/keeweb/keeweb
+# https://hub.docker.com/repository/docker/keeweb/alpine-base
+# #
+
+server
+{
+ listen 80 default_server;
+ listen [::]:80 default_server;
+ listen 443 ssl default_server;
+ listen [::]:443 ssl default_server;
+
+ server_name _;
+
+ include /config/nginx/ssl.conf;
+
+ set $root /app/www/public;
+ if (!-d /app/www/public)
+ {
+ set $root /config/www;
+ }
+
+ root $root;
+ index index.html index.htm index.php;
+
+ location /
+ {
+ # enable for basic auth
+ #auth_basic "Restricted";
+ #auth_basic_user_file /config/nginx/.htpasswd;
+
+ # index > fancy
+ fancyindex on;
+ fancyindex_header "/theme/header.html";
+ fancyindex_footer "/theme/footer.html";
+ fancyindex_ignore "theme";
+ fancyindex_time_format "%m-%d-%Y %T";
+ fancyindex_name_length 255;
+ fancyindex_show_dotfiles off;
+ fancyindex_hide_symlinks on;
+ fancyindex_default_sort name;
+
+ # index > auto
+ autoindex_exact_size off;
+ autoindex_format html;
+ autoindex_localtime on;
+
+ gzip on;
+ gzip_vary on;
+ gzip_types text/css text/javascript text/xml application/atom+xml application/rss+xml text/markdown text/mathml text/plain text/vnd.sun.j2me.app-descriptor text/vnd.wap.wml text/x-component application/json application/xhtml+xml application/xspf+xml font/woff font/woff2 image/avif image/bmp image/png image/svg+xml image/tiff image/vnd.wap.wbmp image/webp image/x-icon image/x-jng audio/midi audio/mpeg audio/ogg audio/x-m4a audio/x-realaudio;
+ gzip_proxied any;
+ gzip_comp_level 1;
+ gzip_http_version 1.0;
+ gunzip on;
+ gzip_static on;
+
+ try_files $uri $uri/ /index.html /index.htm /index.php$is_args$args;
+ }
+
+ location ~ ^(.+\.php)(.*)$
+ {
+ # enable the next two lines for http auth
+ #auth_basic "Restricted";
+ #auth_basic_user_file /config/nginx/.htpasswd;
+
+ fastcgi_split_path_info ^(.+\.php)(.*)$;
+ if (!-f $document_root$fastcgi_script_name) { return 404; }
+ fastcgi_pass 127.0.0.1:9000;
+ fastcgi_index index.php;
+ include /etc/nginx/fastcgi_params;
+ }
+
+ # deny access to .htaccess/.htpasswd files
+ location ~ /\.ht
+ {
+ deny all;
+ }
+}
diff --git a/package/docker/root/defaults/nginx/ssl.conf.sample b/package/docker/root/defaults/nginx/ssl.conf.sample
new file mode 100644
index 000000000..b287d34e3
--- /dev/null
+++ b/package/docker/root/defaults/nginx/ssl.conf.sample
@@ -0,0 +1,68 @@
+
+# #
+# @project keeweb
+# @usage Nginx site-configs default configuration file
+# @file /root/defaults/nginx/ssl.conf.sample
+# @repo https://github.com/keeweb/keeweb
+# https://github.com/keeweb/alpine-base
+# https://hub.docker.com/repository/docker/keeweb/keeweb
+# https://hub.docker.com/repository/docker/keeweb/alpine-base
+# #
+
+# #
+# generated 2023-06-25, Mozilla Guideline v5.7, nginx 1.24.0, OpenSSL 3.1.1, intermediate configuration
+# https://ssl-config.mozilla.org/#server=nginx&version=1.24.0&config=intermediate&openssl=3.1.1&guideline=5.7
+# #
+
+ssl_certificate /config/keys/cert.crt;
+ssl_certificate_key /config/keys/cert.key;
+ssl_session_timeout 1d;
+ssl_session_cache shared:MozSSL:10m; # about 40000 sessions
+ssl_session_tickets off;
+
+# #
+# curl https://ssl-config.mozilla.org/ffdhe2048.txt > /path/to/dhparam
+# #
+
+ssl_dhparam /config/nginx/dhparams.pem;
+
+# #
+# intermediate configuration
+# #
+
+ssl_protocols TLSv1.2 TLSv1.3;
+ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256;
+ssl_prefer_server_ciphers on;
+
+# #
+# OCSP stapling
+# #
+
+# ssl_stapling on;
+# ssl_stapling_verify on;
+
+# #
+# verify chain of trust of OCSP response using Root CA and Intermediate certs
+# #
+
+# ssl_trusted_certificate /config/keys/cert.crt;
+
+# #
+# HSTS (ngx_http_headers_module is required) (63072000 seconds)
+# #
+
+add_header X-Content-Type-Options nosniff;
+add_header Strict-Transport-Security "max-age=31536000; includeSubdomains" always;
+
+# #
+# Optional additional headers
+# #
+
+# add_header Cache-Control "no-transform" always;
+# add_header Content-Security-Policy "upgrade-insecure-requests; frame-ancestors 'self'" always;
+# add_header Permissions-Policy "interest-cohort=()" always;
+# add_header Referrer-Policy "same-origin" always;
+# add_header X-Content-Type-Options "nosniff" always;
+# add_header X-Frame-Options "SAMEORIGIN" always;
+# add_header X-UA-Compatible "IE=Edge" always;
+# add_header X-XSS-Protection "1; mode=block" always;
diff --git a/package/docker/root/defaults/www/404.html b/package/docker/root/defaults/www/404.html
new file mode 100644
index 000000000..f67b45a7d
--- /dev/null
+++ b/package/docker/root/defaults/www/404.html
@@ -0,0 +1,27 @@
+
+
+
+
+ Not Found
+
+
+
+404 Not Found
+Sorry, the page you're looking for was not found.
+
+
diff --git a/package/docker/root/defaults/www/icons/android-chrome-192x192.png b/package/docker/root/defaults/www/icons/android-chrome-192x192.png
new file mode 100644
index 000000000..c87012fcf
Binary files /dev/null and b/package/docker/root/defaults/www/icons/android-chrome-192x192.png differ
diff --git a/package/docker/root/defaults/www/icons/android-chrome-512x512.png b/package/docker/root/defaults/www/icons/android-chrome-512x512.png
new file mode 100644
index 000000000..aa075ac44
Binary files /dev/null and b/package/docker/root/defaults/www/icons/android-chrome-512x512.png differ
diff --git a/package/docker/root/defaults/www/icons/apple-touch-icon.png b/package/docker/root/defaults/www/icons/apple-touch-icon.png
new file mode 100644
index 000000000..589634e73
Binary files /dev/null and b/package/docker/root/defaults/www/icons/apple-touch-icon.png differ
diff --git a/package/docker/root/defaults/www/icons/favicon-16x16.png b/package/docker/root/defaults/www/icons/favicon-16x16.png
new file mode 100644
index 000000000..33a08287d
Binary files /dev/null and b/package/docker/root/defaults/www/icons/favicon-16x16.png differ
diff --git a/package/docker/root/defaults/www/icons/favicon-32x32.png b/package/docker/root/defaults/www/icons/favicon-32x32.png
new file mode 100644
index 000000000..e67e6cbcc
Binary files /dev/null and b/package/docker/root/defaults/www/icons/favicon-32x32.png differ
diff --git a/package/docker/root/defaults/www/icons/mstile-150x150.png b/package/docker/root/defaults/www/icons/mstile-150x150.png
new file mode 100644
index 000000000..86ee52d80
Binary files /dev/null and b/package/docker/root/defaults/www/icons/mstile-150x150.png differ
diff --git a/package/docker/root/defaults/www/icons/mstile-310x150.png b/package/docker/root/defaults/www/icons/mstile-310x150.png
new file mode 100644
index 000000000..c3a1a3977
Binary files /dev/null and b/package/docker/root/defaults/www/icons/mstile-310x150.png differ
diff --git a/package/docker/root/defaults/www/icons/mstile-310x310.png b/package/docker/root/defaults/www/icons/mstile-310x310.png
new file mode 100644
index 000000000..d347e6d55
Binary files /dev/null and b/package/docker/root/defaults/www/icons/mstile-310x310.png differ
diff --git a/package/docker/root/defaults/www/icons/mstile-70x70.png b/package/docker/root/defaults/www/icons/mstile-70x70.png
new file mode 100644
index 000000000..8bdcce560
Binary files /dev/null and b/package/docker/root/defaults/www/icons/mstile-70x70.png differ
diff --git a/package/docker/root/defaults/www/icons/safari-pinned-tab.svg b/package/docker/root/defaults/www/icons/safari-pinned-tab.svg
new file mode 100644
index 000000000..076d20822
--- /dev/null
+++ b/package/docker/root/defaults/www/icons/safari-pinned-tab.svg
@@ -0,0 +1 @@
+
diff --git a/package/docker/root/defaults/www/icons/splash-1125x2436.png b/package/docker/root/defaults/www/icons/splash-1125x2436.png
new file mode 100644
index 000000000..068c4bed2
Binary files /dev/null and b/package/docker/root/defaults/www/icons/splash-1125x2436.png differ
diff --git a/package/docker/root/defaults/www/icons/splash-1242x2148.png b/package/docker/root/defaults/www/icons/splash-1242x2148.png
new file mode 100644
index 000000000..a55d47dc3
Binary files /dev/null and b/package/docker/root/defaults/www/icons/splash-1242x2148.png differ
diff --git a/package/docker/root/defaults/www/icons/splash-1536x2048.png b/package/docker/root/defaults/www/icons/splash-1536x2048.png
new file mode 100644
index 000000000..c3cd0736c
Binary files /dev/null and b/package/docker/root/defaults/www/icons/splash-1536x2048.png differ
diff --git a/package/docker/root/defaults/www/icons/splash-1668x2224.png b/package/docker/root/defaults/www/icons/splash-1668x2224.png
new file mode 100644
index 000000000..107bdcf67
Binary files /dev/null and b/package/docker/root/defaults/www/icons/splash-1668x2224.png differ
diff --git a/package/docker/root/defaults/www/icons/splash-2048x2732.png b/package/docker/root/defaults/www/icons/splash-2048x2732.png
new file mode 100644
index 000000000..a3000013d
Binary files /dev/null and b/package/docker/root/defaults/www/icons/splash-2048x2732.png differ
diff --git a/package/docker/root/defaults/www/icons/splash-640x1136.png b/package/docker/root/defaults/www/icons/splash-640x1136.png
new file mode 100644
index 000000000..cbb1abc42
Binary files /dev/null and b/package/docker/root/defaults/www/icons/splash-640x1136.png differ
diff --git a/package/docker/root/defaults/www/icons/splash-750x1294.png b/package/docker/root/defaults/www/icons/splash-750x1294.png
new file mode 100644
index 000000000..9d87f0a13
Binary files /dev/null and b/package/docker/root/defaults/www/icons/splash-750x1294.png differ
diff --git a/package/docker/root/defaults/www/index.html b/package/docker/root/defaults/www/index.html
new file mode 100644
index 000000000..d7b10af6d
--- /dev/null
+++ b/package/docker/root/defaults/www/index.html
@@ -0,0 +1,208 @@
+KeeWeb
\ No newline at end of file
diff --git a/package/docker/root/defaults/www/manifest.json b/package/docker/root/defaults/www/manifest.json
new file mode 100644
index 000000000..1e1460f43
--- /dev/null
+++ b/package/docker/root/defaults/www/manifest.json
@@ -0,0 +1,21 @@
+{
+ "name": "KeeWeb",
+ "short_name": "KeeWeb",
+ "description": "Free cross-platform password manager compatible with KeePass",
+ "display": "standalone",
+ "orientation": "any",
+ "theme_color": "#6386ec",
+ "background_color": "#6386ec",
+ "icons": [
+ {
+ "src": "icons/android-chrome-192x192.png",
+ "sizes": "192x192",
+ "type": "image/png"
+ },
+ {
+ "src": "icons/android-chrome-512x512.png",
+ "sizes": "512x512",
+ "type": "image/png"
+ }
+ ]
+}
diff --git a/package/docker/root/defaults/www/oauth-result/dropbox.html b/package/docker/root/defaults/www/oauth-result/dropbox.html
new file mode 100644
index 000000000..5876caa6b
--- /dev/null
+++ b/package/docker/root/defaults/www/oauth-result/dropbox.html
@@ -0,0 +1,16 @@
+
+
+
+
+ KeeWeb
+
+
+
+
+
diff --git a/package/docker/root/defaults/www/oauth-result/gdrive.html b/package/docker/root/defaults/www/oauth-result/gdrive.html
new file mode 100644
index 000000000..80239ab8c
--- /dev/null
+++ b/package/docker/root/defaults/www/oauth-result/gdrive.html
@@ -0,0 +1,16 @@
+
+
+
+
+ KeeWeb
+
+
+
+
+
diff --git a/package/docker/root/defaults/www/oauth-result/onedrive.html b/package/docker/root/defaults/www/oauth-result/onedrive.html
new file mode 100644
index 000000000..e914c4176
--- /dev/null
+++ b/package/docker/root/defaults/www/oauth-result/onedrive.html
@@ -0,0 +1,16 @@
+
+
+
+
+ KeeWeb
+
+
+
+
+
diff --git a/package/docker/root/defaults/www/theme/css/ui.min.css b/package/docker/root/defaults/www/theme/css/ui.min.css
new file mode 100644
index 000000000..04b4ca99b
--- /dev/null
+++ b/package/docker/root/defaults/www/theme/css/ui.min.css
@@ -0,0 +1 @@
+.fa-beat,.fa-beat-fade,.fa-bounce,.fa-fade,.fa-flip{-webkit-animation-delay:var(--fa-animation-delay, 0s);-webkit-animation-duration:var(--fa-animation-duration, 1s);animation-delay:var(--fa-animation-delay, 0s);animation-duration:var(--fa-animation-duration, 1s)}.fa-fw,.fa-li{text-align:center}.fa{font-family:var(--fa-style-family, "Iconize X");font-weight:var(--fa-style,900)}.fa,.fa-brands,.fa-classic,.fa-regular,.fa-sharp,.fa-sharp-solid,.fa-solid,.fa-split,.fab,.fad,.fal,.far,.fas,.fasl,.fasr,.fass,.fast,.fat{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:var(--fa-display,inline-block);font-style:normal;font-variant:normal;line-height:1;text-rendering:auto}.fa-classic,.fa-regular,.fa-solid,.fal,.far,.fas,.fat{font-family:"Iconize X"}.fa-brands,.fab{font-family:"Iconize Logos"}.fa-classic.fa-split,.fa-split,.fad{font-family:"Iconize Split"}.fa-sharp,.fasl,.fasr,.fass,.fast{font-family:"Iconize Sharp"}.fa-sharp,.fass{font-weight:900}.fa-1x{font-size:1em}.fa-2x,.fa-stack-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-6x{font-size:6em}.fa-7x{font-size:7em}.fa-8x{font-size:8em}.fa-9x{font-size:9em}.fa-10x{font-size:10em}.fa-2xs{font-size:.625em;line-height:.1em;vertical-align:.225em}.fa-xs{font-size:.75em;line-height:.08333em;vertical-align:.125em}.fa-sm{font-size:.875em;line-height:.07143em;vertical-align:.05357em}.fa-lg{font-size:1.25em;line-height:.05em;vertical-align:-.075em}.fa-xl{font-size:1.5em;line-height:.04167em;vertical-align:-.125em}.fa-2xl{font-size:2em;line-height:.03125em;vertical-align:-.1875em}.fa-fw{width:1.25em}.fa-ul{list-style-type:none;margin-left:var(--fa-li-margin,2.5em);padding-left:0}.fa-ul>li{position:relative}.fa-li{left:calc(var(--fa-li-width,2em) * -1);position:absolute;width:var(--fa-li-width,2em);line-height:inherit}.fa-border{border-radius:var(--fa-border-radius,.1em);border:var(--fa-border-width,.08em) var(--fa-border-style,solid) var(--fa-border-color,#eee);padding:var(--fa-border-padding,.2em .25em .15em)}.fa-pull-left{float:left;margin-right:var(--fa-pull-margin,.3em)}.fa-pull-right{float:right;margin-left:var(--fa-pull-margin,.3em)}.fa-beat{-webkit-animation-name:fa-beat;animation-name:fa-beat;-webkit-animation-direction:var(--fa-animation-direction,normal);animation-direction:var(--fa-animation-direction,normal);-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-timing-function:var(--fa-animation-timing,ease-in-out);animation-timing-function:var(--fa-animation-timing,ease-in-out)}.fa-beat-fade,.fa-bounce,.fa-fade,.fa-flip,.fa-shake,.fa-spin{-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-direction:var(--fa-animation-direction,normal);animation-direction:var(--fa-animation-direction,normal)}.fa-beat-fade,.fa-bounce,.fa-fade,.fa-flip{animation-iteration-count:var(--fa-animation-iteration-count,infinite)}.fa-bounce{-webkit-animation-name:fa-bounce;animation-name:fa-bounce;-webkit-animation-timing-function:var(--fa-animation-timing,cubic-bezier(0.28,0.84,0.42,1));animation-timing-function:var(--fa-animation-timing,cubic-bezier(0.28,0.84,0.42,1))}.fa-fade{-webkit-animation-name:fa-fade;animation-name:fa-fade;-webkit-animation-timing-function:var(--fa-animation-timing,cubic-bezier(0.4,0,0.6,1));animation-timing-function:var(--fa-animation-timing,cubic-bezier(0.4,0,0.6,1))}.fa-beat-fade{-webkit-animation-name:fa-beat-fade;animation-name:fa-beat-fade;-webkit-animation-timing-function:var(--fa-animation-timing,cubic-bezier(0.4,0,0.6,1));animation-timing-function:var(--fa-animation-timing,cubic-bezier(0.4,0,0.6,1))}.fa-flip{-webkit-animation-name:fa-flip;animation-name:fa-flip;-webkit-animation-timing-function:var(--fa-animation-timing,ease-in-out);animation-timing-function:var(--fa-animation-timing,ease-in-out)}.fa-shake,.fa-spin{-webkit-animation-delay:var(--fa-animation-delay, 0s);animation-delay:var(--fa-animation-delay, 0s);animation-iteration-count:var(--fa-animation-iteration-count,infinite)}.fa-shake{-webkit-animation-name:fa-shake;animation-name:fa-shake;-webkit-animation-duration:var(--fa-animation-duration, 1s);animation-duration:var(--fa-animation-duration, 1s);-webkit-animation-timing-function:var(--fa-animation-timing,linear);animation-timing-function:var(--fa-animation-timing,linear)}.fa-spin{-webkit-animation-name:fa-spin;animation-name:fa-spin;-webkit-animation-duration:var(--fa-animation-duration, 2s);animation-duration:var(--fa-animation-duration, 2s);-webkit-animation-timing-function:var(--fa-animation-timing,linear);animation-timing-function:var(--fa-animation-timing,linear)}.fa-spin-reverse{--fa-animation-direction:reverse}.fa-pulse,.fa-spin-pulse{-webkit-animation-name:fa-spin;animation-name:fa-spin;-webkit-animation-direction:var(--fa-animation-direction,normal);animation-direction:var(--fa-animation-direction,normal);-webkit-animation-duration:var(--fa-animation-duration, 1s);animation-duration:var(--fa-animation-duration, 1s);-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-timing-function:var(--fa-animation-timing,steps(8));animation-timing-function:var(--fa-animation-timing,steps(8))}@media (prefers-reduced-motion:reduce){.fa-beat,.fa-beat-fade,.fa-bounce,.fa-fade,.fa-flip,.fa-pulse,.fa-shake,.fa-spin,.fa-spin-pulse{-webkit-animation-delay:-1ms;animation-delay:-1ms;-webkit-animation-duration:1ms;animation-duration:1ms;-webkit-animation-iteration-count:1;animation-iteration-count:1;-webkit-transition-delay:0s;transition-delay:0s;-webkit-transition-duration:0s;transition-duration:0s}}@-webkit-keyframes fa-beat{0%,90%{-webkit-transform:scale(1);transform:scale(1)}45%{-webkit-transform:scale(var(--fa-beat-scale,1.25));transform:scale(var(--fa-beat-scale,1.25))}}@keyframes fa-beat{0%,90%{-webkit-transform:scale(1);transform:scale(1)}45%{-webkit-transform:scale(var(--fa-beat-scale,1.25));transform:scale(var(--fa-beat-scale,1.25))}}@-webkit-keyframes fa-bounce{0%,64%,to{-webkit-transform:scale(1) translateY(0);transform:scale(1) translateY(0)}10%{-webkit-transform:scale(var(--fa-bounce-start-scale-x,1.1),var(--fa-bounce-start-scale-y,.9)) translateY(0);transform:scale(var(--fa-bounce-start-scale-x,1.1),var(--fa-bounce-start-scale-y,.9)) translateY(0)}30%{-webkit-transform:scale(var(--fa-bounce-jump-scale-x,.9),var(--fa-bounce-jump-scale-y,1.1)) translateY(var(--fa-bounce-height,-.5em));transform:scale(var(--fa-bounce-jump-scale-x,.9),var(--fa-bounce-jump-scale-y,1.1)) translateY(var(--fa-bounce-height,-.5em))}50%{-webkit-transform:scale(var(--fa-bounce-land-scale-x,1.05),var(--fa-bounce-land-scale-y,.95)) translateY(0);transform:scale(var(--fa-bounce-land-scale-x,1.05),var(--fa-bounce-land-scale-y,.95)) translateY(0)}57%{-webkit-transform:scale(1) translateY(var(--fa-bounce-rebound,-.125em));transform:scale(1) translateY(var(--fa-bounce-rebound,-.125em))}}@keyframes fa-bounce{0%,64%,to{-webkit-transform:scale(1) translateY(0);transform:scale(1) translateY(0)}10%{-webkit-transform:scale(var(--fa-bounce-start-scale-x,1.1),var(--fa-bounce-start-scale-y,.9)) translateY(0);transform:scale(var(--fa-bounce-start-scale-x,1.1),var(--fa-bounce-start-scale-y,.9)) translateY(0)}30%{-webkit-transform:scale(var(--fa-bounce-jump-scale-x,.9),var(--fa-bounce-jump-scale-y,1.1)) translateY(var(--fa-bounce-height,-.5em));transform:scale(var(--fa-bounce-jump-scale-x,.9),var(--fa-bounce-jump-scale-y,1.1)) translateY(var(--fa-bounce-height,-.5em))}50%{-webkit-transform:scale(var(--fa-bounce-land-scale-x,1.05),var(--fa-bounce-land-scale-y,.95)) translateY(0);transform:scale(var(--fa-bounce-land-scale-x,1.05),var(--fa-bounce-land-scale-y,.95)) translateY(0)}57%{-webkit-transform:scale(1) translateY(var(--fa-bounce-rebound,-.125em));transform:scale(1) translateY(var(--fa-bounce-rebound,-.125em))}}@-webkit-keyframes fa-fade{50%{opacity:var(--fa-fade-opacity, .4)}}@keyframes fa-fade{50%{opacity:var(--fa-fade-opacity, .4)}}@-webkit-keyframes fa-beat-fade{0%,to{opacity:var(--fa-beat-fade-opacity, .4);-webkit-transform:scale(1);transform:scale(1)}50%{opacity:1;-webkit-transform:scale(var(--fa-beat-fade-scale,1.125));transform:scale(var(--fa-beat-fade-scale,1.125))}}@keyframes fa-beat-fade{0%,to{opacity:var(--fa-beat-fade-opacity, .4);-webkit-transform:scale(1);transform:scale(1)}50%{opacity:1;-webkit-transform:scale(var(--fa-beat-fade-scale,1.125));transform:scale(var(--fa-beat-fade-scale,1.125))}}@-webkit-keyframes fa-flip{50%{-webkit-transform:rotate3d(var(--fa-flip-x,0),var(--fa-flip-y,1),var(--fa-flip-z,0),var(--fa-flip-angle,-180deg));transform:rotate3d(var(--fa-flip-x,0),var(--fa-flip-y,1),var(--fa-flip-z,0),var(--fa-flip-angle,-180deg))}}@keyframes fa-flip{50%{-webkit-transform:rotate3d(var(--fa-flip-x,0),var(--fa-flip-y,1),var(--fa-flip-z,0),var(--fa-flip-angle,-180deg));transform:rotate3d(var(--fa-flip-x,0),var(--fa-flip-y,1),var(--fa-flip-z,0),var(--fa-flip-angle,-180deg))}}@-webkit-keyframes fa-shake{0%{-webkit-transform:rotate(-15deg);transform:rotate(-15deg)}4%{-webkit-transform:rotate(15deg);transform:rotate(15deg)}24%,8%{-webkit-transform:rotate(-18deg);transform:rotate(-18deg)}12%,28%{-webkit-transform:rotate(18deg);transform:rotate(18deg)}16%{-webkit-transform:rotate(-22deg);transform:rotate(-22deg)}20%{-webkit-transform:rotate(22deg);transform:rotate(22deg)}32%{-webkit-transform:rotate(-12deg);transform:rotate(-12deg)}36%{-webkit-transform:rotate(12deg);transform:rotate(12deg)}40%,to{-webkit-transform:rotate(0);transform:rotate(0)}}@keyframes fa-shake{0%{-webkit-transform:rotate(-15deg);transform:rotate(-15deg)}4%{-webkit-transform:rotate(15deg);transform:rotate(15deg)}24%,8%{-webkit-transform:rotate(-18deg);transform:rotate(-18deg)}12%,28%{-webkit-transform:rotate(18deg);transform:rotate(18deg)}16%{-webkit-transform:rotate(-22deg);transform:rotate(-22deg)}20%{-webkit-transform:rotate(22deg);transform:rotate(22deg)}32%{-webkit-transform:rotate(-12deg);transform:rotate(-12deg)}36%{-webkit-transform:rotate(12deg);transform:rotate(12deg)}40%,to{-webkit-transform:rotate(0);transform:rotate(0)}}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0);transform:rotate(0)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0);transform:rotate(0)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.fa-rotate-90{-webkit-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{-webkit-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{-webkit-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{-webkit-transform:scaleX(-1);transform:scaleX(-1)}.fa-flip-vertical{-webkit-transform:scaleY(-1);transform:scaleY(-1)}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical{-webkit-transform:scale(-1);transform:scale(-1)}.fa-rotate-by{-webkit-transform:rotate(var(--fa-rotate-angle,0));transform:rotate(var(--fa-rotate-angle,0))}.fa-stack{display:inline-block;height:2em;line-height:2em;position:relative;vertical-align:middle;width:2.5em}.fa-stack-1x,.fa-stack-2x{left:0;position:absolute;text-align:center;width:100%;z-index:var(--fa-stack-z-index,auto)}.fa-stack-1x{line-height:inherit}.fa-inverse{color:var(--fa-inverse,#fff)}.fa-0:before{content:"\30"}.fa-1:before{content:"\31"}.fa-2:before{content:"\32"}.fa-3:before{content:"\33"}.fa-4:before{content:"\34"}.fa-5:before{content:"\35"}.fa-6:before{content:"\36"}.fa-7:before{content:"\37"}.fa-8:before{content:"\38"}.fa-9:before{content:"\39"}.fa-fill-drip:before{content:"\f576"}.fa-arrows-to-circle:before{content:"\e4bd"}.fa-line-height:before{content:"\f871"}.fa-at:before{content:"\40"}.fa-rectangles-mixed:before{content:"\e323"}.fa-trash-alt:before,.fa-trash-can:before{content:"\f2ed"}.fa-circle-l:before{content:"\e114"}.fa-text-height:before{content:"\f034"}.fa-user-times:before,.fa-user-xmark:before{content:"\f235"}.fa-info:before{content:"\f129"}.fa-robot-astromech:before{content:"\e2d2"}.fa-theta:before{content:"\f69e"}.fa-square-user:before{content:"\e283"}.fa-compress-alt:before,.fa-down-left-and-up-right-to-center:before{content:"\f422"}.fa-explosion:before{content:"\e4e9"}.fa-file-alt:before,.fa-file-lines:before,.fa-file-text:before{content:"\f15c"}.fa-wave-square:before{content:"\f83e"}.fa-wifi-2:before,.fa-wifi-fair:before{content:"\f6ab"}.fa-calendar-alt:before,.fa-calendar-days:before{content:"\f073"}.fa-mp3-player:before{content:"\f8ce"}.fa-tally-4:before{content:"\e297"}.fa-rectangle-history:before{content:"\e4a2"}.fa-text-size:before{content:"\f894"}.fa-arrows-up-to-line:before{content:"\e4c2"}.fa-barcode-scan:before{content:"\f465"}.fa-sort-desc:before,.fa-sort-down:before{content:"\f0dd"}.fa-folder-arrow-down:before,.fa-folder-download:before{content:"\e053"}.fa-circle-minus:before,.fa-minus-circle:before{content:"\f056"}.fa-door-open:before{content:"\f52b"}.fa-films:before{content:"\e17a"}.fa-right-from-bracket:before,.fa-sign-out-alt:before{content:"\f2f5"}.fa-nfc:before{content:"\e1f7"}.fa-atom:before{content:"\f5d2"}.fa-soap:before{content:"\e06e"}.fa-heart-music-camera-bolt:before,.fa-icons:before{content:"\f86d"}.fa-closed-captioning-slash:before{content:"\e135"}.fa-calculator-alt:before,.fa-calculator-simple:before{content:"\f64c"}.fa-sliders-up:before,.fa-sliders-v:before{content:"\f3f1"}.fa-location-minus:before,.fa-map-marker-minus:before{content:"\f609"}.fa-fingerprint:before{content:"\f577"}.fa-rectangle-sd:before,.fa-standard-definition:before{content:"\e28a"}.fa-h1:before{content:"\f313"}.fa-hand-point-right:before{content:"\f0a4"}.fa-magnifying-glass-location:before,.fa-search-location:before{content:"\f689"}.fa-forward-step:before,.fa-step-forward:before{content:"\f051"}.fa-square-x:before{content:"\e286"}.fa-user-vneck:before{content:"\e461"}.fa-angle-double-down:before,.fa-angles-down:before{content:"\f103"}.fa-users-rectangle:before{content:"\e594"}.fa-location-plus:before,.fa-map-marker-plus:before{content:"\f60a"}.fa-diagram-predecessor:before{content:"\e477"}.fa-calendar-circle-user:before{content:"\e471"}.fa-arrow-up-long:before,.fa-long-arrow-up:before{content:"\f176"}.fa-laptop:before{content:"\f109"}.fa-file-csv:before{content:"\f6dd"}.fa-circle-heart:before,.fa-heart-circle:before{content:"\f4c7"}.fa-record-vinyl:before{content:"\f8d9"}.fa-bring-forward:before{content:"\f856"}.fa-square-p:before{content:"\e279"}.fa-camera-movie:before{content:"\f8a9"}.fa-arrow-down-up-across-line:before{content:"\e4af"}.fa-arrows-rotate-reverse:before{content:"\e630"}.fa-envelopes-bulk:before,.fa-mail-bulk:before{content:"\f674"}.fa-file-circle-exclamation:before{content:"\e4eb"}.fa-bow-arrow:before{content:"\f6b9"}.fa-cart-xmark:before{content:"\e0dd"}.fa-hexagon-xmark:before,.fa-times-hexagon:before,.fa-xmark-hexagon:before{content:"\f2ee"}.fa-merge:before{content:"\e526"}.fa-pager:before{content:"\f815"}.fa-cart-minus:before{content:"\e0db"}.fa-address-book:before,.fa-contact-book:before{content:"\f2b9"}.fa-pan-frying:before{content:"\e42c"}.fa-grid-3:before,.fa-grid:before{content:"\e195"}.fa-hand-love:before{content:"\e1a5"}.fa-strikethrough:before{content:"\f0cc"}.fa-page:before{content:"\e428"}.fa-k:before{content:"\4b"}.fa-diagram-previous:before{content:"\e478"}.fa-folder-grid:before{content:"\e188"}.fa-ram:before{content:"\f70a"}.fa-lips:before{content:"\f600"}.fa-pencil-alt:before,.fa-pencil:before{content:"\f303"}.fa-backward:before{content:"\f04a"}.fa-caret-right:before{content:"\f0da"}.fa-file-clipboard:before,.fa-paste:before{content:"\f0ea"}.fa-desktop-arrow-down:before{content:"\e155"}.fa-code-pull-request:before{content:"\e13c"}.fa-clipboard-list:before{content:"\f46d"}.fa-note:before{content:"\e1ff"}.fa-arrow-down-to-square:before{content:"\e096"}.fa-user-check:before{content:"\f4fc"}.fa-cloud-xmark:before{content:"\e35f"}.fa-book-alt:before,.fa-book-blank:before{content:"\f5d9"}.fa-sheet-plastic:before{content:"\e571"}.fa-circle-9:before{content:"\e0f6"}.fa-blog:before{content:"\f781"}.fa-pencil-slash:before{content:"\e215"}.fa-down-right:before{content:"\e16b"}.fa-scroll-torah:before,.fa-torah:before{content:"\f6a0"}.fa-webhook:before{content:"\e5d5"}.fa-arrow-alt-up:before,.fa-up:before{content:"\f357"}.fa-square-v:before{content:"\e284"}.fa-dial-off:before{content:"\e162"}.fa-toggle-off:before{content:"\f204"}.fa-archive:before,.fa-box-archive:before{content:"\f187"}.fa-grapes:before{content:"\e306"}.fa-dial-max:before{content:"\e15e"}.fa-circle-m:before{content:"\e115"}.fa-calendar-image:before{content:"\e0d4"}.fa-caret-circle-down:before,.fa-circle-caret-down:before{content:"\f32d"}.fa-arrow-down-9-1:before,.fa-sort-numeric-desc:before,.fa-sort-numeric-down-alt:before{content:"\f886"}.fa-w:before{content:"\57"}.fa-code-pull-request-draft:before{content:"\e3fa"}.fa-square-b:before{content:"\e264"}.fa-circle-notch:before{content:"\f1ce"}.fa-tablet-alt:before,.fa-tablet-screen-button:before{content:"\f3fa"}.fa-cloud:before{content:"\f0c2"}.fa-square-3:before{content:"\e258"}.fa-chf-sign:before{content:"\e602"}.fa-cart-circle-arrow-up:before{content:"\e3f0"}.fa-gavel:before,.fa-legal:before{content:"\f0e3"}.fa-browsers:before{content:"\e0cb"}.fa-music-slash:before{content:"\f8d1"}.fa-binoculars:before{content:"\f1e5"}.fa-circle-c:before{content:"\e101"}.fa-chart-bullet:before{content:"\e0e1"}.fa-badge:before{content:"\f335"}.fa-file-mp3:before{content:"\e648"}.fa-arrow-progress:before{content:"\e5df"}.fa-square-root:before{content:"\f697"}.fa-album-collection-circle-plus:before{content:"\e48e"}.fa-sign-post:before{content:"\e624"}.fa-caret-square-right:before,.fa-square-caret-right:before{content:"\f152"}.fa-cut:before,.fa-scissors:before{content:"\f0c4"}.fa-list-music:before{content:"\f8c9"}.fa-hyphen:before{content:"\2d"}.fa-table:before{content:"\f0ce"}.fa-sensor-alert:before,.fa-sensor-triangle-exclamation:before{content:"\e029"}.fa-magnifying-glass-arrow-right:before{content:"\e521"}.fa-digital-tachograph:before,.fa-tachograph-digital:before{content:"\f566"}.fa-star-sharp-half:before{content:"\e28c"}.fa-users-slash:before{content:"\e073"}.fa-mail-reply:before,.fa-reply:before{content:"\f3e5"}.fa-star-and-crescent:before{content:"\f699"}.fa-empty-set:before{content:"\f656"}.fa-minus-square:before,.fa-square-minus:before{content:"\f146"}.fa-helicopter:before{content:"\f533"}.fa-bird:before{content:"\e469"}.fa-compass:before{content:"\f14e"}.fa-caret-square-down:before,.fa-square-caret-down:before{content:"\f150"}.fa-heart-half-alt:before,.fa-heart-half-stroke:before{content:"\e1ac"}.fa-file-circle-question:before{content:"\e4ef"}.fa-laptop-code:before{content:"\f5fc"}.fa-rectangle-vertical-history:before{content:"\e237"}.fa-swatchbook:before{content:"\f5c3"}.fa-bars:before,.fa-navicon:before{content:"\f0c9"}.fa-keyboard-left:before{content:"\e1c3"}.fa-droplet-percent:before,.fa-humidity:before{content:"\f750"}.fa-external-link-square-alt:before,.fa-square-up-right:before{content:"\f360"}.fa-roller-coaster:before{content:"\e324"}.fa-photo-film-music:before{content:"\e228"}.fa-radar:before{content:"\e024"}.fa-sickle:before{content:"\f822"}.fa-film:before{content:"\f008"}.fa-square-terminal:before{content:"\e32a"}.fa-caret-left:before{content:"\f0d9"}.fa-trash-can-list:before{content:"\e2ab"}.fa-block:before{content:"\e46a"}.fa-circle-exclamation:before,.fa-exclamation-circle:before{content:"\f06a"}.fa-arrow-right-from-bracket:before,.fa-sign-out:before{content:"\f08b"}.fa-sidebar-flip:before{content:"\e24f"}.fa-unlock-alt:before,.fa-unlock-keyhole:before{content:"\f13e"}.fa-sitemap:before{content:"\f0e8"}.fa-pipe-section:before{content:"\e438"}.fa-memory:before{content:"\f538"}.fa-arrow-to-top:before,.fa-arrow-up-to-line:before{content:"\f341"}.fa-chart-scatter-3d:before{content:"\e0e8"}.fa-display-chart-up:before{content:"\e5e3"}.fa-square-code:before{content:"\e267"}.fa-times-to-slot:before,.fa-vote-nay:before,.fa-xmark-to-slot:before{content:"\f771"}.fa-box-alt:before,.fa-box-taped:before{content:"\f49a"}.fa-album:before{content:"\f89f"}.fa-circle-n:before{content:"\e118"}.fa-compress:before{content:"\f066"}.fa-asterisk:before{content:"\2a"}.fa-check-square:before,.fa-square-check:before{content:"\f14a"}.fa-shredder:before{content:"\f68a"}.fa-book-open-alt:before,.fa-book-open-cover:before{content:"\e0c0"}.fa-header:before,.fa-heading:before{content:"\f1dc"}.fa-film-alt:before,.fa-film-simple:before{content:"\f3a0"}.fa-list-squares:before,.fa-list:before{content:"\f03a"}.fa-cart-plus:before{content:"\f217"}.fa-border-center-v:before{content:"\f89d"}.fa-circle-dot:before,.fa-dot-circle:before{content:"\f192"}.fa-arrow-alt-to-top:before,.fa-up-to-line:before{content:"\f34d"}.fa-folder-plus:before{content:"\f65e"}.fa-jug:before{content:"\f8c6"}.fa-paint-brush:before,.fa-paintbrush:before{content:"\f1fc"}.fa-lock:before{content:"\f023"}.fa-arrow-down-from-line:before,.fa-arrow-from-top:before{content:"\f345"}.fa-signal-alt-slash:before,.fa-signal-bars-slash:before{content:"\f694"}.fa-pro:before,.fa-rectangle-pro:before{content:"\e235"}.fa-blanket:before{content:"\f498"}.fa-map-location:before,.fa-map-marked:before{content:"\f59f"}.fa-backpack:before{content:"\f5d4"}.fa-square-small:before{content:"\e27e"}.fa-folder-arrow-up:before,.fa-folder-upload:before{content:"\e054"}.fa-crosshairs-simple:before{content:"\e59f"}.fa-edit:before,.fa-pen-to-square:before{content:"\f044"}.fa-sliders-h-square:before,.fa-square-sliders:before{content:"\f3f0"}.fa-share-alt:before,.fa-share-nodes:before{content:"\f1e0"}.fa-wave-sine:before{content:"\f899"}.fa-heart-circle-minus:before{content:"\e4ff"}.fa-circle-w:before{content:"\e12c"}.fa-calendar-circle:before,.fa-circle-calendar:before{content:"\e102"}.fa-microscope:before{content:"\f610"}.fa-calendar-exclamation:before{content:"\f334"}.fa-hand-heart:before{content:"\f4bc"}.fa-arrow-down-z-a:before,.fa-sort-alpha-desc:before,.fa-sort-alpha-down-alt:before{content:"\f881"}.fa-mitten:before{content:"\f7b5"}.fa-arrow-alt-right:before,.fa-right:before{content:"\f356"}.fa-circle-f:before{content:"\e10e"}.fa-users:before{content:"\f0c0"}.fa-eye-slash:before{content:"\f070"}.fa-hand-paper:before,.fa-hand:before{content:"\f256"}.fa-folder-bookmark:before{content:"\e186"}.fa-arrow-turn-left-down:before{content:"\e633"}.fa-om:before{content:"\f679"}.fa-pi:before{content:"\f67e"}.fa-worm:before{content:"\e599"}.fa-plug:before{content:"\f1e6"}.fa-calendar-circle-exclamation:before{content:"\e46e"}.fa-square-i:before{content:"\e272"}.fa-camera-circle:before,.fa-circle-camera:before{content:"\e103"}.fa-hand-spock:before{content:"\f259"}.fa-book-arrow-up:before{content:"\e0ba"}.fa-command:before{content:"\e142"}.fa-square-2:before{content:"\e257"}.fa-arrow-up-square-triangle:before,.fa-sort-shapes-up-alt:before{content:"\f88b"}.fa-square-m:before{content:"\e276"}.fa-camera-web:before,.fa-webcam:before{content:"\f832"}.fa-window-frame-open:before{content:"\e050"}.fa-period:before{content:"\2e"}.fa-up-to-dotted-line:before{content:"\e457"}.fa-thought-bubble:before{content:"\e32e"}.fa-flute:before{content:"\f8b9"}.fa-video-arrow-up-right:before{content:"\e2c9"}.fa-seal-exclamation:before{content:"\e242"}.fa-eclipse:before{content:"\f749"}.fa-minus-octagon:before,.fa-octagon-minus:before{content:"\f308"}.fa-rss-square:before,.fa-square-rss:before{content:"\f143"}.fa-i-cursor:before{content:"\f246"}.fa-stamp:before{content:"\f5bf"}.fa-file-plus:before{content:"\f319"}.fa-draw-square:before{content:"\f5ef"}.fa-dial-high:before{content:"\e15c"}.fa-i:before{content:"\49"}.fa-arrow-down-left-and-arrow-up-right-to-center:before{content:"\e092"}.fa-v:before{content:"\56"}.fa-circle-arrow-up-right:before{content:"\e0fc"}.fa-calendars:before{content:"\e0d7"}.fa-circle-d:before{content:"\e104"}.fa-file-mov:before{content:"\e647"}.fa-bracket-round:before,.fa-parenthesis:before{content:"\28"}.fa-filters:before{content:"\e17e"}.fa-angle-right:before{content:"\f105"}.fa-q:before{content:"\51"}.fa-link-simple:before{content:"\e1cd"}.fa-g:before{content:"\47"}.fa-file-vector:before{content:"\e64c"}.fa-square-dashed:before{content:"\e269"}.fa-square-j:before{content:"\e273"}.fa-hand-point-up:before{content:"\f0a6"}.fa-arrow-up-big-small:before,.fa-sort-size-up:before{content:"\f88e"}.fa-barcode-read:before{content:"\f464"}.fa-arrow-alt-square-up:before,.fa-square-up:before{content:"\f353"}.fa-exclamation-square:before,.fa-square-exclamation:before{content:"\f321"}.fa-bookmark:before{content:"\f02e"}.fa-align-justify:before{content:"\f039"}.fa-location-smile:before,.fa-map-marker-smile:before{content:"\f60d"}.fa-arrow-left-to-line:before,.fa-arrow-to-left:before{content:"\f33e"}.fa-trash-list:before{content:"\e2b1"}.fa-option:before{content:"\e318"}.fa-raccoon:before{content:"\e613"}.fa-hand-point-down:before{content:"\f0a7"}.fa-arrow-up-from-bracket:before{content:"\e09a"}.fa-file-cad:before{content:"\e672"}.fa-folder-blank:before,.fa-folder:before{content:"\f07b"}.fa-credit-card-blank:before{content:"\f389"}.fa-microchip-ai:before{content:"\e1ec"}.fa-radiation:before{content:"\f7b9"}.fa-pen-circle:before{content:"\e20e"}.fa-chart-simple:before{content:"\e473"}.fa-square-bolt:before{content:"\e265"}.fa-lambda:before{content:"\f66e"}.fa-e:before{content:"\45"}.fa-h3:before{content:"\f315"}.fa-pen-alt:before,.fa-pen-clip:before{content:"\f305"}.fa-badge-percent:before{content:"\f646"}.fa-rotate-reverse:before{content:"\e631"}.fa-user:before{content:"\f007"}.fa-sensor:before{content:"\e028"}.fa-comma:before{content:"\2c"}.fa-arrow-down-to-arc:before{content:"\e4ae"}.fa-caret-square-left:before,.fa-square-caret-left:before{content:"\f191"}.fa-heart-rate:before,.fa-wave-pulse:before{content:"\f5f8"}.fa-key:before{content:"\f084"}.fa-arrow-left-to-bracket:before{content:"\e669"}.fa-box-check:before{content:"\f467"}.fa-location-crosshairs-slash:before,.fa-location-slash:before{content:"\f603"}.fa-file-chart-column:before,.fa-file-chart-line:before{content:"\f659"}.fa-folder-image:before{content:"\e18a"}.fa-calendar-edit:before,.fa-calendar-pen:before{content:"\f333"}.fa-location-arrow:before{content:"\f124"}.fa-c:before{content:"\43"}.fa-tablet-button:before{content:"\f10a"}.fa-rectangle-history-circle-user:before{content:"\e4a4"}.fa-chart-line-up:before{content:"\e0e5"}.fa-mailbox:before{content:"\f813"}.fa-sign-posts:before{content:"\e625"}.fa-area-chart:before,.fa-chart-area:before{content:"\f1fe"}.fa-circle-three-quarters-stroke:before{content:"\e5d4"}.fa-ban:before,.fa-cancel:before{content:"\f05e"}.fa-bookmark-circle:before,.fa-circle-bookmark:before{content:"\e100"}.fa-camera-rotate:before{content:"\e0d8"}.fa-signal-alt-4:before,.fa-signal-alt:before,.fa-signal-bars-strong:before,.fa-signal-bars:before{content:"\f690"}.fa-star:before{content:"\f005"}.fa-dial-min:before{content:"\e161"}.fa-repeat:before{content:"\f363"}.fa-cross:before{content:"\f654"}.fa-file-caret-down:before,.fa-page-caret-down:before{content:"\e429"}.fa-box:before{content:"\f466"}.fa-arrow-pointer:before,.fa-mouse-pointer:before{content:"\f245"}.fa-signal-alt-3:before,.fa-signal-bars-good:before{content:"\f693"}.fa-expand-arrows-alt:before,.fa-maximize:before{content:"\f31e"}.fa-shapes:before,.fa-triangle-circle-square:before{content:"\f61f"}.fa-circle-u:before{content:"\e127"}.fa-arrow-up-left:before{content:"\e09d"}.fa-random:before,.fa-shuffle:before{content:"\f074"}.fa-grip-lines-vertical:before{content:"\f7a5"}.fa-bin-bottles-recycle:before{content:"\e5f6"}.fa-arrow-up-from-square:before{content:"\e09c"}.fa-file-dashed-line:before,.fa-page-break:before{content:"\f877"}.fa-bracket-curly-right:before{content:"\7d"}.fa-window:before{content:"\f40e"}.fa-file-lock:before{content:"\e3a6"}.fa-diagram-venn:before{content:"\e15a"}.fa-arrow-down-from-bracket:before{content:"\e667"}.fa-x-ray:before{content:"\f497"}.fa-goal-net:before{content:"\e3ab"}.fa-spell-check:before{content:"\f891"}.fa-location-xmark:before,.fa-map-marker-times:before,.fa-map-marker-xmark:before{content:"\f60e"}.fa-circle-quarter-stroke:before{content:"\e5d3"}.fa-lasso:before{content:"\f8c8"}.fa-slash:before{content:"\f715"}.fa-calendar-star:before{content:"\f736"}.fa-computer-mouse:before,.fa-mouse:before{content:"\f8cc"}.fa-arrow-right-to-bracket:before,.fa-sign-in:before{content:"\f090"}.fa-nfc-lock:before{content:"\e1f8"}.fa-square-6:before{content:"\e25b"}.fa-wind-turbine:before{content:"\f89b"}.fa-sliders-simple:before{content:"\e253"}.fa-grid-round:before{content:"\e5da"}.fa-badge-sheriff:before{content:"\f8a2"}.fa-server:before{content:"\f233"}.fa-family:before{content:"\e300"}.fa-layer-group-minus:before,.fa-layer-minus:before{content:"\f5fe"}.fa-chart-pie-simple-circle-currency:before{content:"\e604"}.fa-circle-e:before{content:"\e109"}.fa-apostrophe:before{content:"\27"}.fa-file-png:before{content:"\e666"}.fa-right-to-bracket:before,.fa-sign-in-alt:before{content:"\f2f6"}.fa-video-plus:before{content:"\f4e1"}.fa-arrow-alt-square-right:before,.fa-square-right:before{content:"\f352"}.fa-inbox-arrow-down:before,.fa-inbox-in:before{content:"\f310"}.fa-heart-pulse:before,.fa-heartbeat:before{content:"\f21e"}.fa-circle-8:before{content:"\e0f5"}.fa-folder-user:before{content:"\e18e"}.fa-trash-can-xmark:before{content:"\e2ae"}.fa-microchip:before{content:"\f2db"}.fa-left-long-to-line:before{content:"\e41e"}.fa-weight-hanging:before{content:"\f5cd"}.fa-xmarks-lines:before{content:"\e59a"}.fa-table-cells-lock:before{content:"\e679"}.fa-calendar-range:before{content:"\e0d6"}.fa-hand-back-point-up:before{content:"\e1a2"}.fa-weight-scale:before,.fa-weight:before{content:"\f496"}.fa-arrow-up-to-arc:before{content:"\e617"}.fa-star-exclamation:before{content:"\f2f3"}.fa-books:before{content:"\f5db"}.fa-user-friends:before,.fa-user-group:before{content:"\f500"}.fa-arrow-up-a-z:before,.fa-sort-alpha-up:before{content:"\f15e"}.fa-layer-group-plus:before,.fa-layer-plus:before{content:"\f5ff"}.fa-play-pause:before{content:"\e22f"}.fa-block-question:before{content:"\e3dd"}.fa-snooze:before,.fa-zzz:before{content:"\f880"}.fa-scanner-image:before{content:"\f8f3"}.fa-tv-retro:before{content:"\f401"}.fa-square-t:before{content:"\e280"}.fa-bars-sort:before{content:"\e0ae"}.fa-code-simple:before{content:"\e13d"}.fa-bolt-slash:before{content:"\e0b8"}.fa-binary-circle-check:before{content:"\e33c"}.fa-objects-column:before{content:"\e3c1"}.fa-triangle-instrument:before,.fa-triangle-music:before{content:"\f8e2"}.fa-arrow-circle-up:before,.fa-circle-arrow-up:before{content:"\f0aa"}.fa-toggle-on:before{content:"\f205"}.fa-rectangle-portrait:before,.fa-rectangle-vertical:before{content:"\f2fb"}.fa-l:before{content:"\4c"}.fa-signal-stream:before{content:"\f8dd"}.fa-down-to-bracket:before{content:"\e4e7"}.fa-circle-z:before{content:"\e130"}.fa-stars:before{content:"\f762"}.fa-chart-pie-alt:before,.fa-chart-pie-simple:before{content:"\f64e"}.fa-folder-open:before{content:"\f07c"}.fa-album-collection-circle-user:before{content:"\e48f"}.fa-heart-circle-plus:before{content:"\e500"}.fa-code-fork:before{content:"\e13b"}.fa-signal-alt-1:before,.fa-signal-bars-weak:before{content:"\f691"}.fa-unlock:before{content:"\f09c"}.fa-colon-sign:before{content:"\e140"}.fa-headset:before{content:"\f590"}.fa-h4:before{content:"\f86a"}.fa-user-minus:before{content:"\f503"}.fa-taco:before{content:"\f826"}.fa-hexagon-plus:before,.fa-plus-hexagon:before{content:"\f300"}.fa-clipboard:before{content:"\f328"}.fa-file-arrow-up:before,.fa-file-upload:before{content:"\f574"}.fa-wifi-3:before,.fa-wifi-strong:before,.fa-wifi:before{content:"\f1eb"}.fa-rectangle-history-circle-plus:before{content:"\e4a3"}.fa-underline:before{content:"\f0cd"}.fa-user-edit:before,.fa-user-pen:before{content:"\f4ff"}.fa-binary-slash:before{content:"\e33e"}.fa-square-o:before{content:"\e278"}.fa-signature:before{content:"\f5b7"}.fa-bold:before{content:"\f032"}.fa-circle-down-right:before{content:"\e108"}.fa-square-k:before{content:"\e274"}.fa-not-equal:before{content:"\f53e"}.fa-border-style:before,.fa-border-top-left:before{content:"\f853"}.fa-map-location-dot:before,.fa-map-marked-alt:before{content:"\f5a0"}.fa-tilde:before{content:"\7e"}.fa-arrow-down-square-triangle:before,.fa-sort-shapes-down-alt:before{content:"\f889"}.fa-memo-circle-info:before{content:"\e49a"}.fa-gauge-circle-bolt:before{content:"\e496"}.fa-coin-front:before{content:"\e3fc"}.fa-file-slash:before{content:"\e3a7"}.fa-paint-brush-alt:before,.fa-paint-brush-fine:before,.fa-paintbrush-alt:before,.fa-paintbrush-fine:before{content:"\f5a9"}.fa-glasses:before{content:"\f530"}.fa-hood-cloak:before{content:"\f6ef"}.fa-square-quote:before{content:"\e329"}.fa-up-left:before{content:"\e2bd"}.fa-bring-front:before{content:"\f857"}.fa-repeat-1:before{content:"\f365"}.fa-arrow-down-to-line:before,.fa-arrow-to-bottom:before{content:"\f33d"}.fa-grid-5:before{content:"\e199"}.fa-swap-arrows:before{content:"\e60a"}.fa-right-long-to-line:before{content:"\e444"}.fa-grid-round-5:before{content:"\e5de"}.fa-tally-5:before,.fa-tally:before{content:"\f69c"}.fa-caret-square-up:before,.fa-square-caret-up:before{content:"\f151"}.fa-bar-chart:before,.fa-chart-bar:before{content:"\f080"}.fa-less-than-equal:before{content:"\f537"}.fa-up-from-dotted-line:before{content:"\e456"}.fa-eye-low-vision:before,.fa-low-vision:before{content:"\f2a8"}.fa-user-unlock:before{content:"\e058"}.fa-hexagon-divide:before{content:"\e1ad"}.fa-00:before{content:"\e467"}.fa-window-restore:before{content:"\f2d2"}.fa-nfc-magnifying-glass:before{content:"\e1f9"}.fa-file-binary:before{content:"\e175"}.fa-circle-v:before{content:"\e12a"}.fa-plus-square:before,.fa-square-plus:before{content:"\f0fe"}.fa-sunrise:before{content:"\f766"}.fa-subtitles:before{content:"\e60f"}.fa-panel-ews:before{content:"\e42e"}.fa-cloud-exclamation:before{content:"\e491"}.fa-bucket:before{content:"\e4cf"}.fa-floppy-disk-pen:before{content:"\e182"}.fa-image:before{content:"\f03e"}.fa-window-frame:before{content:"\e04f"}.fa-file-zip:before{content:"\e5ee"}.fa-arrow-alt-from-top:before,.fa-down-from-line:before{content:"\f349"}.fa-caret-up:before{content:"\f0d8"}.fa-circle-sort-down:before,.fa-sort-circle-down:before{content:"\e031"}.fa-folder-closed:before{content:"\e185"}.fa-square-nfi:before{content:"\e576"}.fa-bracket-square-right:before{content:"\5d"}.fa-rotate-back:before,.fa-rotate-backward:before,.fa-rotate-left:before,.fa-undo-alt:before{content:"\f2ea"}.fa-columns:before,.fa-table-columns:before{content:"\f0db"}.fa-square-a:before{content:"\e25f"}.fa-tick:before{content:"\e32f"}.fa-lemon:before{content:"\f094"}.fa-compress-arrows-alt:before,.fa-minimize:before{content:"\f78c"}.fa-monument:before{content:"\f5a6"}.fa-octagon-xmark:before,.fa-times-octagon:before,.fa-xmark-octagon:before{content:"\f2f0"}.fa-align-slash:before{content:"\f846"}.fa-angle-double-right:before,.fa-angles-right:before{content:"\f101"}.fa-circle-play:before,.fa-play-circle:before{content:"\f144"}.fa-location-arrow-up:before{content:"\e63a"}.fa-tablets:before{content:"\f490"}.fa-360-degrees:before{content:"\e2dc"}.fa-ethernet:before{content:"\f796"}.fa-eur:before,.fa-euro-sign:before,.fa-euro:before{content:"\f153"}.fa-chair:before{content:"\f6c0"}.fa-check-circle:before,.fa-circle-check:before{content:"\f058"}.fa-square-dashed-circle-plus:before{content:"\e5c2"}.fa-circle-stop:before,.fa-stop-circle:before{content:"\f28d"}.fa-arrow-up-to-bracket:before{content:"\e66a"}.fa-compass-drafting:before,.fa-drafting-compass:before{content:"\f568"}.fa-calendar-circle-minus:before{content:"\e46f"}.fa-id-badge:before{content:"\f2c1"}.fa-marker:before{content:"\f5a1"}.fa-bin-bottles:before{content:"\e5f5"}.fa-tree-large:before{content:"\f7dd"}.fa-helicopter-symbol:before{content:"\e502"}.fa-aperture:before{content:"\e2df"}.fa-universal-access:before{content:"\f29a"}.fa-gear-complex:before{content:"\e5e9"}.fa-file-magnifying-glass:before,.fa-file-search:before{content:"\f865"}.fa-up-right:before{content:"\e2be"}.fa-stocking:before{content:"\f7d5"}.fa-image-slash:before{content:"\e1b7"}.fa-up-to-bracket:before{content:"\e66e"}.fa-arrow-down-long:before,.fa-long-arrow-down:before{content:"\f175"}.fa-certificate:before{content:"\f0a3"}.fa-mail-reply-all:before,.fa-reply-all:before{content:"\f122"}.fa-star-shooting:before{content:"\e036"}.fa-binary-lock:before{content:"\e33d"}.fa-camera-retro:before{content:"\f083"}.fa-arrow-circle-down:before,.fa-circle-arrow-down:before{content:"\f0ab"}.fa-arrow-right-to-file:before,.fa-file-import:before{content:"\f56f"}.fa-banjo:before{content:"\f8a3"}.fa-kerning:before{content:"\f86f"}.fa-box-open:before{content:"\f49e"}.fa-square-f:before{content:"\e270"}.fa-scroll:before{content:"\f70e"}.fa-arrow-from-right:before,.fa-arrow-left-from-line:before{content:"\f344"}.fa-location-pin-lock:before{content:"\e51f"}.fa-pause:before{content:"\f04c"}.fa-registered:before{content:"\f25d"}.fa-trash-can-plus:before{content:"\e2ac"}.fa-address-card:before,.fa-contact-card:before,.fa-vcard:before{content:"\f2bb"}.fa-balance-scale-right:before,.fa-scale-unbalanced-flip:before{content:"\f516"}.fa-subscript:before{content:"\f12c"}.fa-integral:before{content:"\f667"}.fa-burst:before{content:"\e4dc"}.fa-caret-circle-up:before,.fa-circle-caret-up:before{content:"\f331"}.fa-square-a-lock:before{content:"\e44d"}.fa-cloud-arrow-up:before,.fa-cloud-upload-alt:before,.fa-cloud-upload:before{content:"\f0ee"}.fa-palette:before{content:"\f53f"}.fa-chart-mixed-up-circle-currency:before{content:"\e5d8"}.fa-arrows-turn-right:before{content:"\e4c0"}.fa-inbox-full:before{content:"\e1ba"}.fa-circle-envelope:before,.fa-envelope-circle:before{content:"\e10c"}.fa-arrows-alt-h:before,.fa-left-right:before{content:"\f337"}.fa-boxes-packing:before{content:"\e4c7"}.fa-arrow-circle-left:before,.fa-circle-arrow-left:before{content:"\f0a8"}.fa-file-jpg:before{content:"\e646"}.fa-group-arrows-rotate:before{content:"\e4f6"}.fa-square-9:before{content:"\e25e"}.fa-candy-cane:before{content:"\f786"}.fa-arrow-down-wide-short:before,.fa-sort-amount-asc:before,.fa-sort-amount-down:before{content:"\f160"}.fa-cloud-bolt:before,.fa-thunderstorm:before{content:"\f76c"}.fa-remove-format:before,.fa-text-slash:before{content:"\f87d"}.fa-watch:before{content:"\f2e1"}.fa-circle-down-left:before{content:"\e107"}.fa-text:before{content:"\f893"}.fa-circle-6:before{content:"\e0f3"}.fa-waves-sine:before{content:"\e65d"}.fa-arrow-alt-left:before,.fa-left:before{content:"\f355"}.fa-file-word:before{content:"\f1c2"}.fa-file-powerpoint:before{content:"\f1c4"}.fa-arrow-alt-square-down:before,.fa-square-down:before{content:"\f350"}.fa-arrows-h:before,.fa-arrows-left-right:before{content:"\f07e"}.fa-cloud-arrow-down:before,.fa-cloud-download-alt:before,.fa-cloud-download:before{content:"\f0ed"}.fa-children:before{content:"\e4e1"}.fa-meter-droplet:before{content:"\e1ea"}.fa-user-alt-slash:before,.fa-user-large-slash:before{content:"\f4fa"}.fa-signal-4:before,.fa-signal-strong:before{content:"\f68f"}.fa-list-tree:before{content:"\e1d2"}.fa-envelope-open:before{content:"\f2b6"}.fa-draw-circle:before{content:"\f5ed"}.fa-memo-pad:before{content:"\e1da"}.fa-border-top:before{content:"\f855"}.fa-arrows-rotate:before,.fa-refresh:before,.fa-sync:before{content:"\f021"}.fa-book-circle:before,.fa-circle-book-open:before{content:"\e0ff"}.fa-arrows-to-dotted-line:before{content:"\e0a6"}.fa-magnifying-glass-arrows-rotate:before{content:"\e65e"}.fa-cruzeiro-sign:before{content:"\e152"}.fa-watch-apple:before{content:"\e2cb"}.fa-watch-calculator:before{content:"\f8f0"}.fa-list-dropdown:before{content:"\e1cf"}.fa-cabinet-filing:before{content:"\f64b"}.fa-burger-soda:before{content:"\f858"}.fa-greater-than-equal:before{content:"\f532"}.fa-atlas:before,.fa-book-atlas:before{content:"\f558"}.fa-grid-round-2:before{content:"\e5db"}.fa-wave:before{content:"\e65b"}.fa-envelope-circle-check:before{content:"\e4e8"}.fa-layer-group:before{content:"\f5fd"}.fa-arrows-to-dot:before{content:"\e4be"}.fa-border-outer:before{content:"\f851"}.fa-hashtag-lock:before{content:"\e415"}.fa-archway:before{content:"\f557"}.fa-heart-circle-check:before{content:"\e4fd"}.fa-file-archive:before,.fa-file-zipper:before{content:"\f1c6"}.fa-ticket-perforated:before{content:"\e63e"}.fa-heart-half:before{content:"\e1ab"}.fa-square:before{content:"\f0c8"}.fa-memo:before{content:"\e1d8"}.fa-italic:before{content:"\f033"}.fa-calendar-lines-pen:before{content:"\e472"}.fa-table-cells-column-lock:before{content:"\e678"}.fa-tickets-simple:before{content:"\e659"}.fa-link-simple-slash:before{content:"\e1ce"}.fa-z:before{content:"\5a"}.fa-a:before{content:"\41"}.fa-bookmark-slash:before{content:"\e0c2"}.fa-p:before{content:"\50"}.fa-newspaper:before{content:"\f1ea"}.fa-ad:before,.fa-rectangle-ad:before{content:"\f641"}.fa-arrow-turn-down-right:before{content:"\e3d6"}.fa-arrow-circle-right:before,.fa-circle-arrow-right:before{content:"\f0a9"}.fa-circle-i:before{content:"\e111"}.fa-filter-circle-xmark:before{content:"\e17b"}.fa-sort:before,.fa-unsorted:before{content:"\f0dc"}.fa-list-1-2:before,.fa-list-numeric:before,.fa-list-ol:before{content:"\f0cb"}.fa-wifi-exclamation:before{content:"\e2cf"}.fa-chart-network:before{content:"\f78a"}.fa-vector-square:before{content:"\f5cb"}.fa-language:before{content:"\f1ab"}.fa-memo-circle-check:before{content:"\e1d9"}.fa-arrow-alt-to-bottom:before,.fa-down-to-line:before{content:"\f34a"}.fa-filter:before{content:"\f0b0"}.fa-square-g:before{content:"\e271"}.fa-question:before{content:"\3f"}.fa-file-signature:before{content:"\f573"}.fa-toggle-large-on:before{content:"\e5b1"}.fa-arrow-up-small-big:before,.fa-sort-size-up-alt:before{content:"\f88f"}.fa-star-half-alt:before,.fa-star-half-stroke:before{content:"\f5c0"}.fa-file-exclamation:before{content:"\f31a"}.fa-code:before{content:"\f121"}.fa-magnifying-glass-chart:before{content:"\e522"}.fa-arrow-up-right-from-square:before,.fa-external-link:before{content:"\f08e"}.fa-cubes-stacked:before{content:"\e4e6"}.fa-images-user:before{content:"\e1b9"}.fa-image-polaroid-user:before{content:"\e1b6"}.fa-square-ellipsis:before{content:"\e26e"}.fa-f:before{content:"\46"}.fa-chart-pie:before,.fa-pie-chart:before{content:"\f200"}.fa-file-xls:before{content:"\e64d"}.fa-file-excel:before{content:"\f1c3"}.fa-file-contract:before{content:"\f56c"}.fa-circle-q:before{content:"\e11e"}.fa-object-ungroup:before{content:"\f248"}.fa-circle-arrow-down-right:before{content:"\e0fa"}.fa-hand-point-ribbon:before{content:"\e1a6"}.fa-object-exclude:before{content:"\e49c"}.fa-location-pin:before,.fa-map-marker:before{content:"\f041"}.fa-square-list:before{content:"\e489"}.fa-kaaba:before{content:"\f66b"}.fa-sim-cards:before{content:"\e251"}.fa-eject:before{content:"\f052"}.fa-arrow-alt-circle-right:before,.fa-circle-right:before{content:"\f35a"}.fa-seal:before{content:"\e241"}.fa-hexagon-vertical-nft:before{content:"\e505"}.fa-rings-wedding:before{content:"\f81b"}.fa-object-group:before{content:"\f247"}.fa-chart-line:before,.fa-line-chart:before{content:"\f201"}.fa-send-back:before{content:"\f87e"}.fa-tickets:before{content:"\e658"}.fa-signature-lock:before{content:"\e3ca"}.fa-arrow-right:before{content:"\f061"}.fa-map-signs:before,.fa-signs-post:before{content:"\f277"}.fa-octagon-plus:before,.fa-plus-octagon:before{content:"\f301"}.fa-cash-register:before{content:"\f788"}.fa-cup-straw:before{content:"\e363"}.fa-arrow-alt-from-right:before,.fa-left-from-line:before{content:"\f348"}.fa-h:before{content:"\48"}.fa-arrows-to-eye:before{content:"\e4bf"}.fa-circle-three-quarters:before{content:"\e125"}.fa-trophy-alt:before,.fa-trophy-star:before{content:"\f2eb"}.fa-plug-circle-bolt:before{content:"\e55b"}.fa-grid-round-4:before{content:"\e5dd"}.fa-heart:before{content:"\f004"}.fa-file-chart-pie:before{content:"\f65a"}.fa-circle-arrow-down-left:before{content:"\e0f9"}.fa-hexagon-minus:before,.fa-minus-hexagon:before{content:"\f307"}.fa-arrow-right-to-arc:before{content:"\e4b2"}.fa-circle-pause:before,.fa-pause-circle:before{content:"\f28b"}.fa-gauge-circle-plus:before{content:"\e498"}.fa-folders:before{content:"\f660"}.fa-value-absolute:before{content:"\f6a6"}.fa-circle-euro:before{content:"\e5ce"}.fa-apple-alt:before,.fa-apple-whole:before{content:"\f5d1"}.fa-lock-alt:before,.fa-lock-keyhole:before{content:"\f30d"}.fa-r:before{content:"\52"}.fa-info-square:before,.fa-square-info:before{content:"\f30f"}.fa-wifi-slash:before{content:"\f6ac"}.fa-cube:before{content:"\f1b2"}.fa-arrow-down-triangle-square:before,.fa-sort-shapes-down:before{content:"\f888"}.fa-bitcoin-sign:before{content:"\e0b4"}.fa-solar-panel:before{content:"\f5ba"}.fa-lock-open:before{content:"\f3c1"}.fa-table-tree:before{content:"\e293"}.fa-tally-3:before{content:"\e296"}.fa-circle:before{content:"\f111"}.fa-left-to-bracket:before{content:"\e66d"}.fa-cart-circle-exclamation:before{content:"\e3f2"}.fa-backward-fast:before,.fa-fast-backward:before{content:"\f049"}.fa-recycle:before{content:"\f1b8"}.fa-circle-dashed:before{content:"\e105"}.fa-trademark:before{content:"\f25c"}.fa-badge-check:before{content:"\f336"}.fa-arrow-alt-circle-up:before,.fa-circle-up:before{content:"\f35b"}.fa-slider:before{content:"\e252"}.fa-inbox-arrow-up:before,.fa-inbox-out:before{content:"\f311"}.fa-cloud-slash:before{content:"\e137"}.fa-users-rays:before{content:"\e593"}.fa-octagon-check:before{content:"\e426"}.fa-clipboard-check:before{content:"\f46c"}.fa-cart-circle-plus:before{content:"\e3f3"}.fa-file-audio:before{content:"\f1c7"}.fa-turn-down-left:before{content:"\e331"}.fa-lock-hashtag:before{content:"\e423"}.fa-chart-radar:before{content:"\e0e7"}.fa-staff:before{content:"\f71b"}.fa-burger:before,.fa-hamburger:before{content:"\f805"}.fa-arrow-turn-left:before{content:"\e632"}.fa-bugs:before{content:"\e4d0"}.fa-vector-polygon:before{content:"\e2c7"}.fa-diagram-nested:before{content:"\e157"}.fa-file-image:before{content:"\f1c5"}.fa-circle-question:before,.fa-question-circle:before{content:"\f059"}.fa-tickets-perforated:before{content:"\e63f"}.fa-image-user:before{content:"\e1b8"}.fa-book-bookmark:before{content:"\e0bb"}.fa-typewriter:before{content:"\f8e7"}.fa-arrow-right-from-arc:before{content:"\e4b1"}.fa-circle-k:before{content:"\e113"}.fa-object-subtract:before{content:"\e49e"}.fa-code-branch:before{content:"\f126"}.fa-arrow-down-from-dotted-line:before{content:"\e090"}.fa-file-doc:before{content:"\e5ed"}.fa-square-quarters:before{content:"\e44e"}.fa-trash-xmark:before{content:"\e2b4"}.fa-caret-circle-left:before,.fa-circle-caret-left:before{content:"\f32e"}.fa-files:before{content:"\e178"}.fa-route:before{content:"\f4d7"}.fa-cart-circle-check:before{content:"\e3f1"}.fa-clipboard-question:before{content:"\e4e3"}.fa-file-circle-minus:before{content:"\e4ed"}.fa-arrow-turn-right:before{content:"\e635"}.fa-tags:before{content:"\f02c"}.fa-fast-forward:before,.fa-forward-fast:before{content:"\f050"}.fa-user-robot:before{content:"\e04b"}.fa-bars-progress:before,.fa-tasks-alt:before{content:"\f828"}.fa-arrows-to-line:before{content:"\e0a7"}.fa-arrow-up-right:before{content:"\e09f"}.fa-circle-r:before{content:"\e120"}.fa-circle-sort-up:before,.fa-sort-circle-up:before{content:"\e032"}.fa-terminal:before{content:"\f120"}.fa-eye:before{content:"\f06e"}.fa-heat:before{content:"\e00c"}.fa-boot-heeled:before{content:"\e33f"}.fa-arrows-minimize:before,.fa-compress-arrows:before{content:"\e0a5"}.fa-audio-description:before{content:"\f29e"}.fa-hexagon:before{content:"\f312"}.fa-user-slash:before{content:"\f506"}.fa-pen:before{content:"\f304"}.fa-floppy-disks:before{content:"\e183"}.fa-file-code:before{content:"\f1c9"}.fa-signal-5:before,.fa-signal-perfect:before,.fa-signal:before{content:"\f012"}.fa-heart-circle-xmark:before{content:"\e501"}.fa-arrow-up-left-from-circle:before{content:"\e09e"}.fa-window-maximize:before{content:"\f2d0"}.fa-screencast:before{content:"\e23e"}.fa-floppy-disk:before,.fa-save:before{content:"\f0c7"}.fa-balance-scale-left:before,.fa-scale-unbalanced:before{content:"\f515"}.fa-file-user:before{content:"\f65c"}.fa-tennis-ball:before{content:"\f45e"}.fa-square-l:before{content:"\e275"}.fa-sort-asc:before,.fa-sort-up:before{content:"\f0de"}.fa-album-circle-plus:before{content:"\e48c"}.fa-arrow-alt-square-left:before,.fa-square-left:before{content:"\f351"}.fa-circle-ellipsis-vertical:before{content:"\e10b"}.fa-grid-dividers:before{content:"\e3ad"}.fa-hand-pointer:before{content:"\f25a"}.fa-user-music:before{content:"\f8eb"}.fa-arrow-right-rotate:before,.fa-arrow-rotate-forward:before,.fa-arrow-rotate-right:before,.fa-redo:before{content:"\f01e"}.fa-sensor-on:before{content:"\e02b"}.fa-balloon:before{content:"\e2e3"}.fa-location-crosshairs:before,.fa-location:before{content:"\f601"}.fa-left-from-bracket:before{content:"\e66c"}.fa-card-club:before{content:"\e3e9"}.fa-users-between-lines:before{content:"\e591"}.fa-spinner-third:before{content:"\f3f4"}.fa-computer-mouse-scrollwheel:before,.fa-mouse-alt:before{content:"\f8cd"}.fa-calendar-times:before,.fa-calendar-xmark:before{content:"\f273"}.fa-table-layout:before{content:"\e290"}.fa-calendar-circle-plus:before{content:"\e470"}.fa-border-inner:before{content:"\f84e"}.fa-rectangle-code:before{content:"\e322"}.fa-keyboard-brightness:before{content:"\e1c0"}.fa-square-5:before{content:"\e25a"}.fa-heart-square:before,.fa-square-heart:before{content:"\f4c8"}.fa-puzzle:before{content:"\e443"}.fa-user-cog:before,.fa-user-gear:before{content:"\f4fe"}.fa-pipe-circle-check:before{content:"\e436"}.fa-arrow-up-1-9:before,.fa-sort-numeric-up:before{content:"\f163"}.fa-octagon-exclamation:before{content:"\e204"}.fa-dial-low:before{content:"\e15d"}.fa-door-closed:before{content:"\f52a"}.fa-vent-damper:before{content:"\e465"}.fa-ban-bug:before,.fa-debug:before{content:"\f7f9"}.fa-text-width:before{content:"\f035"}.fa-mouse-field:before{content:"\e5a8"}.fa-box-circle-check:before{content:"\e0c4"}.fa-brightness:before{content:"\e0c9"}.fa-file-xml:before{content:"\e654"}.fa-cloud-word:before{content:"\e138"}.fa-trash:before{content:"\f1f8"}.fa-arrow-down-small-big:before,.fa-sort-size-down-alt:before{content:"\f88d"}.fa-pen-alt-slash:before,.fa-pen-clip-slash:before{content:"\e20f"}.fa-quote-right-alt:before,.fa-quote-right:before{content:"\f10e"}.fa-scroll-old:before{content:"\f70f"}.fa-square-r:before{content:"\e27c"}.fa-cubes:before{content:"\f1b3"}.fa-divide:before{content:"\f529"}.fa-square-7:before{content:"\e25c"}.fa-circle-ampersand:before{content:"\e0f8"}.fa-arrow-left:before{content:"\f060"}.fa-arrow-left-from-bracket:before{content:"\e668"}.fa-align-left:before{content:"\f036"}.fa-high-definition:before,.fa-rectangle-hd:before{content:"\e1ae"}.fa-j:before{content:"\4a"}.fa-file-video:before{content:"\f1c8"}.fa-external-link-alt:before,.fa-up-right-from-square:before{content:"\f35d"}.fa-circle-sort:before,.fa-sort-circle:before{content:"\e030"}.fa-table-cells:before,.fa-th:before{content:"\f00a"}.fa-file-pdf:before{content:"\f1c1"}.fa-arrow-up-to-dotted-line:before{content:"\e0a1"}.fa-image-landscape:before,.fa-landscape:before{content:"\e1b5"}.fa-messages-question:before{content:"\e1e7"}.fa-o:before{content:"\4f"}.fa-expand-wide:before{content:"\f320"}.fa-rv:before{content:"\f7be"}.fa-user-secret:before{content:"\f21b"}.fa-cloud-drizzle:before{content:"\f738"}.fa-table-cells-large:before,.fa-th-large:before{content:"\f009"}.fa-solar-system:before{content:"\e02f"}.fa-seal-question:before{content:"\e243"}.fa-disc-drive:before{content:"\f8b5"}.fa-rows:before,.fa-table-rows:before{content:"\e292"}.fa-location-exclamation:before,.fa-map-marker-exclamation:before{content:"\f608"}.fa-clipboard-user:before{content:"\f7f3"}.fa-film-slash:before{content:"\e179"}.fa-child:before{content:"\f1ae"}.fa-user-visor:before{content:"\e04c"}.fa-file-plus-minus:before{content:"\e177"}.fa-tag:before{content:"\f02b"}.fa-brackets-curly:before{content:"\f7ea"}.fa-ellipsis-stroke-vertical:before,.fa-ellipsis-v-alt:before{content:"\f39c"}.fa-square-1:before{content:"\e256"}.fa-envelope:before{content:"\f0e0"}.fa-angle-double-up:before,.fa-angles-up:before{content:"\f102"}.fa-bin-recycle:before{content:"\e5f7"}.fa-paperclip:before{content:"\f0c6"}.fa-chart-line-down:before{content:"\f64d"}.fa-lock-a:before{content:"\e422"}.fa-ribbon:before{content:"\f4d6"}.fa-arrow-up-9-1:before,.fa-sort-numeric-up-alt:before{content:"\f887"}.fa-apple-core:before{content:"\e08f"}.fa-circle-y:before{content:"\e12f"}.fa-h6:before{content:"\e413"}.fa-litecoin-sign:before{content:"\e1d3"}.fa-circle-small:before{content:"\e122"}.fa-border-none:before{content:"\f850"}.fa-arrow-turn-down-left:before{content:"\e2e1"}.fa-circle-wifi-circle-wifi:before,.fa-circle-wifi-group:before{content:"\e67e"}.fa-circle-nodes:before{content:"\e4e2"}.fa-reflect-horizontal:before{content:"\e664"}.fa-indent:before{content:"\f03c"}.fa-puzzle-piece-alt:before,.fa-puzzle-piece-simple:before{content:"\e231"}.fa-nfc-trash:before{content:"\e1fd"}.fa-mountain:before{content:"\f6fc"}.fa-file-times:before,.fa-file-xmark:before{content:"\f317"}.fa-meter-bolt:before{content:"\e1e9"}.fa-slash-back:before{content:"\5c"}.fa-circle-info:before,.fa-info-circle:before{content:"\f05a"}.fa-cloud-meatball:before{content:"\f73b"}.fa-camera-polaroid:before{content:"\f8aa"}.fa-camera-alt:before,.fa-camera:before{content:"\f030"}.fa-cart-arrow-up:before{content:"\e3ee"}.fa-arrow-down-1-9:before,.fa-sort-numeric-asc:before,.fa-sort-numeric-down:before{content:"\f162"}.fa-square-4:before{content:"\e259"}.fa-file-eps:before{content:"\e644"}.fa-waveform:before{content:"\f8f1"}.fa-star-sharp-half-alt:before,.fa-star-sharp-half-stroke:before{content:"\e28d"}.fa-nfc-signal:before{content:"\e1fb"}.fa-calendar-check:before{content:"\f274"}.fa-crosshairs:before{content:"\f05b"}.fa-laptop-binary:before{content:"\e5e7"}.fa-check-double:before{content:"\f560"}.fa-arrow-down-a-z:before,.fa-sort-alpha-asc:before,.fa-sort-alpha-down:before{content:"\f15d"}.fa-plus-large:before{content:"\e59e"}.fa-octagon:before{content:"\f306"}.fa-octagon-divide:before{content:"\e203"}.fa-arrow-left-rotate:before,.fa-arrow-rotate-back:before,.fa-arrow-rotate-backward:before,.fa-arrow-rotate-left:before,.fa-undo:before{content:"\f0e2"}.fa-tv-music:before{content:"\f8e6"}.fa-hard-drive:before,.fa-hdd:before{content:"\f0a0"}.fa-list-alt:before,.fa-rectangle-list:before{content:"\f022"}.fa-arrow-down-right:before{content:"\e093"}.fa-calendar-plus:before{content:"\f271"}.fa-arrow-alt-circle-left:before,.fa-circle-left:before{content:"\f359"}.fa-distribute-spacing-vertical:before{content:"\e366"}.fa-signal-alt-2:before,.fa-signal-bars-fair:before{content:"\f692"}.fa-list-timeline:before{content:"\e1d1"}.fa-crop-alt:before,.fa-crop-simple:before{content:"\f565"}.fa-left-long:before,.fa-long-arrow-alt-left:before{content:"\f30a"}.fa-keyboard-down:before{content:"\e1c2"}.fa-circle-up-right:before{content:"\e129"}.fa-turn-left-up:before{content:"\e638"}.fa-bracket-round-right:before{content:"\29"}.fa-circle-5:before{content:"\e0f2"}.fa-minus:before,.fa-subtract:before{content:"\f068"}.fa-arrow-alt-to-right:before,.fa-right-to-line:before{content:"\f34c"}.fa-gif:before{content:"\e190"}.fa-trash-slash:before{content:"\e2b3"}.fa-arrow-left-long:before,.fa-long-arrow-left:before{content:"\f177"}.fa-plug-circle-check:before{content:"\e55c"}.fa-font-case:before{content:"\f866"}.fa-arrow-down-left:before{content:"\e091"}.fa-book-circle-arrow-right:before{content:"\e0bc"}.fa-chart-user:before,.fa-user-chart:before{content:"\f6a3"}.fa-presentation-screen:before,.fa-presentation:before{content:"\f685"}.fa-circle-bolt:before{content:"\e0fe"}.fa-cart-circle-arrow-down:before{content:"\e3ef"}.fa-file-award:before,.fa-file-certificate:before{content:"\f5f3"}.fa-camera-home:before,.fa-camera-security:before{content:"\f8fe"}.fa-cog:before,.fa-gear:before{content:"\f013"}.fa-droplet-slash:before,.fa-tint-slash:before{content:"\f5c7"}.fa-book-heart:before{content:"\f499"}.fa-mosque:before{content:"\f678"}.fa-book-font:before{content:"\e0bf"}.fa-eye-dropper-full:before{content:"\e172"}.fa-distribute-spacing-horizontal:before{content:"\e365"}.fa-tablet-rugged:before{content:"\f48f"}.fa-scanner-touchscreen:before{content:"\f48a"}.fa-circle-7:before{content:"\e0f4"}.fa-plug-circle-plus:before{content:"\e55f"}.fa-place-of-worship:before{content:"\f67f"}.fa-waveform-lines:before,.fa-waveform-path:before{content:"\f8f2"}.fa-split:before{content:"\e254"}.fa-film-canister:before,.fa-film-cannister:before{content:"\f8b7"}.fa-folder-times:before,.fa-folder-xmark:before{content:"\f65f"}.fa-tablet-android-alt:before,.fa-tablet-screen:before{content:"\f3fc"}.fa-hexagon-vertical-nft-slanted:before{content:"\e506"}.fa-folder-music:before{content:"\e18d"}.fa-share-all:before{content:"\f367"}.fa-square-d:before{content:"\e268"}.fa-grip-vertical:before{content:"\f58e"}.fa-arrow-turn-up:before,.fa-level-up:before{content:"\f148"}.fa-u:before{content:"\55"}.fa-arrow-up-from-dotted-line:before{content:"\e09b"}.fa-square-root-alt:before,.fa-square-root-variable:before{content:"\f698"}.fa-arrow-down-arrow-up:before,.fa-sort-alt:before{content:"\f883"}.fa-dash:before,.fa-minus-large:before{content:"\e404"}.fa-input-numeric:before{content:"\e1bd"}.fa-backward-step:before,.fa-step-backward:before{content:"\f048"}.fa-arrows-maximize:before,.fa-expand-arrows:before{content:"\f31d"}.fa-cloud-sleet:before{content:"\f741"}.fa-list-radio:before{content:"\e1d0"}.fa-pen-nib-slash:before{content:"\e4a1"}.fa-square-up-left:before{content:"\e282"}.fa-overline:before{content:"\f876"}.fa-s:before{content:"\53"}.fa-timeline:before{content:"\e29c"}.fa-keyboard:before{content:"\f11c"}.fa-arrows-from-dotted-line:before{content:"\e0a3"}.fa-usb-drive:before{content:"\f8e9"}.fa-caret-down:before{content:"\f0d7"}.fa-location-dot-slash:before,.fa-map-marker-alt-slash:before{content:"\f605"}.fa-folder-heart:before{content:"\e189"}.fa-circle-location-arrow:before,.fa-location-circle:before{content:"\f602"}.fa-filter-list:before{content:"\e17c"}.fa-sliders-h:before,.fa-sliders:before{content:"\f1de"}.fa-folder-tree:before{content:"\f802"}.fa-network-wired:before{content:"\f6ff"}.fa-map-pin:before{content:"\f276"}.fa-square-u:before{content:"\e281"}.fa-ellipsis-v:before,.fa-ellipsis-vertical:before{content:"\f142"}.fa-power-off:before{content:"\f011"}.fa-coin:before{content:"\f85c"}.fa-laptop-slash:before{content:"\e1c7"}.fa-long-arrow-alt-right:before,.fa-right-long:before{content:"\f30b"}.fa-circle-b:before{content:"\e0fd"}.fa-pipe-collar:before{content:"\e437"}.fa-laptop-file:before{content:"\e51d"}.fa-teletype:before,.fa-tty:before{content:"\f1e4"}.fa-chart-tree-map:before{content:"\e0ea"}.fa-diagram-next:before{content:"\e476"}.fa-pipe-valve:before{content:"\e439"}.fa-arrow-up-from-arc:before{content:"\e4b4"}.fa-gear-complex-code:before{content:"\e5eb"}.fa-closed-captioning:before{content:"\f20a"}.fa-arrow-alt-from-left:before,.fa-right-from-line:before{content:"\f347"}.fa-images:before{content:"\f302"}.fa-calculator:before{content:"\f1ec"}.fa-eye-evil:before{content:"\f6db"}.fa-n:before{content:"\4e"}.fa-swap:before{content:"\e609"}.fa-game-console-handheld:before{content:"\f8bb"}.fa-ship:before{content:"\f21a"}.fa-arrows-down-to-line:before{content:"\e4b8"}.fa-download:before{content:"\f019"}.fa-backspace:before,.fa-delete-left:before{content:"\f55a"}.fa-cloud-binary:before{content:"\e601"}.fa-eye-dropper-empty:before,.fa-eye-dropper:before,.fa-eyedropper:before{content:"\f1fb"}.fa-rotate-exclamation:before{content:"\e23c"}.fa-file-circle-check:before{content:"\e5a0"}.fa-loader:before{content:"\e1d4"}.fa-forward:before{content:"\f04e"}.fa-code-pull-request-closed:before{content:"\e3f9"}.fa-align-center:before{content:"\f037"}.fa-drivers-license:before,.fa-id-card:before{content:"\f2c2"}.fa-heart-circle-exclamation:before{content:"\e4fe"}.fa-vector-circle:before{content:"\e2c6"}.fa-calendar-week:before{content:"\f784"}.fa-flying-disc:before{content:"\e3a9"}.fa-square-down-right:before{content:"\e26c"}.fa-b:before{content:"\42"}.fa-circle-a:before{content:"\e0f7"}.fa-arrow-right-arrow-left:before,.fa-exchange:before{content:"\f0ec"}.fa-redo-alt:before,.fa-rotate-forward:before,.fa-rotate-right:before{content:"\f2f9"}.fa-arrow-up-wide-short:before,.fa-sort-amount-up:before{content:"\f161"}.fa-timeline-arrow:before{content:"\e29d"}.fa-circle-video:before,.fa-video-circle:before{content:"\e12b"}.fa-chart-scatter-bubble:before{content:"\e0e9"}.fa-block-quote:before{content:"\e0b5"}.fa-long-arrow-alt-up:before,.fa-up-long:before{content:"\f30c"}.fa-stop:before{content:"\f04d"}.fa-code-merge:before{content:"\f387"}.fa-arrow-alt-from-bottom:before,.fa-up-from-line:before{content:"\f346"}.fa-upload:before{content:"\f093"}.fa-grid-round-2-plus:before{content:"\e5dc"}.fa-windsock:before{content:"\f777"}.fa-compact-disc:before{content:"\f51f"}.fa-file-arrow-down:before,.fa-file-download:before{content:"\f56d"}.fa-camera-web-slash:before,.fa-webcam-slash:before{content:"\f833"}.fa-folder-cog:before,.fa-folder-gear:before{content:"\e187"}.fa-bolt:before,.fa-zap:before{content:"\f0e7"}.fa-trash-can-check:before{content:"\e2a9"}.fa-arrow-turn-left-up:before{content:"\e634"}.fa-vault:before{content:"\e2c5"}.fa-gear-code:before{content:"\e5e8"}.fa-notes:before{content:"\e202"}.fa-trash-arrow-turn-left:before,.fa-trash-undo:before{content:"\f895"}.fa-trash-alt-slash:before,.fa-trash-can-slash:before{content:"\e2ad"}.fa-screen-users:before,.fa-users-class:before{content:"\f63d"}.fa-square-8:before{content:"\e25d"}.fa-brackets-square:before,.fa-brackets:before{content:"\f7e9"}.fa-laptop-arrow-down:before{content:"\e1c6"}.fa-signal-2:before,.fa-signal-fair:before{content:"\f68d"}.fa-arrows-repeat:before,.fa-repeat-alt:before{content:"\f364"}.fa-bore-hole:before{content:"\e4c3"}.fa-image-polaroid:before{content:"\f8c4"}.fa-wave-triangle:before{content:"\f89a"}.fa-turn-left-down:before{content:"\e637"}.fa-arrow-alt-circle-down:before,.fa-circle-down:before{content:"\f358"}.fa-arrows-turn-to-dots:before{content:"\e4c1"}.fa-analytics:before,.fa-chart-mixed:before{content:"\f643"}.fa-arrow-down-short-wide:before,.fa-sort-amount-desc:before,.fa-sort-amount-down-alt:before{content:"\f884"}.fa-less-than:before{content:"\3c"}.fa-desktop-code:before,.fa-display-code:before{content:"\e165"}.fa-question-square:before,.fa-square-question:before{content:"\f2fd"}.fa-angle-down:before{content:"\f107"}.fa-grip-lines:before{content:"\f7a4"}.fa-thumbs-down:before{content:"\f165"}.fa-user-lock:before{content:"\f502"}.fa-arrow-right-long:before,.fa-long-arrow-right:before{content:"\f178"}.fa-ellipsis-h:before,.fa-ellipsis:before{content:"\f141"}.fa-nfc-slash:before{content:"\e1fc"}.fa-grid-2-plus:before{content:"\e197"}.fa-bells:before{content:"\f77f"}.fa-toolbox:before{content:"\f552"}.fa-envelope-badge:before,.fa-envelope-dot:before{content:"\e16f"}.fa-magnifying-glass-waveform:before{content:"\e661"}.fa-bug:before{content:"\f188"}.fa-credit-card-alt:before,.fa-credit-card:before{content:"\f09d"}.fa-circle-s:before{content:"\e121"}.fa-book-open-reader:before,.fa-book-reader:before{content:"\f5da"}.fa-circle-x:before{content:"\e12e"}.fa-chart-simple-horizontal:before{content:"\e474"}.fa-arrows-left-right-to-line:before{content:"\e4ba"}.fa-hand-back-point-left:before{content:"\e19f"}.fa-file-heart:before{content:"\e176"}.fa-file-circle-xmark:before{content:"\e5a1"}.fa-medal:before{content:"\f5a2"}.fa-book-copy:before{content:"\e0be"}.fa-h-square:before,.fa-square-h:before{content:"\f0fd"}.fa-square-c:before{content:"\e266"}.fa-square-ellipsis-vertical:before{content:"\e26f"}.fa-calendar-users:before{content:"\e5e2"}.fa-podcast:before{content:"\f2ce"}.fa-xmark-large:before{content:"\e59b"}.fa-file-ppt:before{content:"\e64a"}.fa-arrows-from-line:before{content:"\e0a4"}.fa-superscript:before{content:"\f12b"}.fa-hexagon-check:before{content:"\e416"}.fa-plug-circle-xmark:before{content:"\e560"}.fa-paint-roller:before{content:"\f5aa"}.fa-accent-grave:before{content:"\60"}.fa-circle-0:before{content:"\e0ed"}.fa-dial-med-low:before{content:"\e160"}.fa-location-dot:before,.fa-map-marker-alt:before{content:"\f3c5"}.fa-crab:before{content:"\e3ff"}.fa-box-full:before,.fa-box-open-full:before{content:"\f49c"}.fa-file:before{content:"\f15b"}.fa-greater-than:before{content:"\3e"}.fa-quotes:before{content:"\e234"}.fa-arrow-down:before{content:"\f063"}.fa-user-robot-xmarks:before{content:"\e4a7"}.fa-folder-magnifying-glass:before,.fa-folder-search:before{content:"\e18b"}.fa-notebook:before{content:"\e201"}.fa-circle-wifi:before{content:"\e67d"}.fa-droplet:before,.fa-tint:before{content:"\f043"}.fa-eraser:before{content:"\f12d"}.fa-hexagon-image:before{content:"\e504"}.fa-file-svg:before{content:"\e64b"}.fa-hand-back-point-right:before{content:"\e1a1"}.fa-grid-4:before{content:"\e198"}.fa-inbox:before{content:"\f01c"}.fa-square-0:before{content:"\e255"}.fa-section:before{content:"\e447"}.fa-box-up:before,.fa-square-this-way-up:before{content:"\f49f"}.fa-square-ampersand:before{content:"\e260"}.fa-envelope-open-text:before{content:"\f658"}.fa-bars-staggered:before,.fa-reorder:before,.fa-stream:before{content:"\f550"}.fa-diagram-sankey:before{content:"\e158"}.fa-cloud-hail-mixed:before{content:"\f73a"}.fa-circle-up-left:before{content:"\e128"}.fa-angle-90:before{content:"\e08d"}.fa-rectangle-terminal:before{content:"\e236"}.fa-heart-circle-bolt:before{content:"\e4fc"}.fa-square-e:before{content:"\e26d"}.fa-cloud-hail:before{content:"\f739"}.fa-check-to-slot:before,.fa-vote-yea:before{content:"\f772"}.fa-star-half:before{content:"\f089"}.fa-speaker:before{content:"\f8df"}.fa-timer:before{content:"\e29e"}.fa-boxes-alt:before,.fa-boxes-stacked:before,.fa-boxes:before{content:"\f468"}.fa-chain:before,.fa-link:before{content:"\f0c1"}.fa-file-minus:before{content:"\f318"}.fa-play:before{content:"\f04b"}.fa-font:before{content:"\f031"}.fa-square-down-left:before{content:"\e26b"}.fa-table-cells-row-lock:before{content:"\e67a"}.fa-magnifying-glass:before,.fa-search:before{content:"\f002"}.fa-trash-can-arrow-up:before,.fa-trash-restore-alt:before{content:"\f82a"}.fa-signal-3:before,.fa-signal-good:before{content:"\f68e"}.fa-location-question:before,.fa-map-marker-question:before{content:"\f60b"}.fa-floppy-disk-circle-xmark:before,.fa-floppy-disk-times:before,.fa-save-circle-xmark:before,.fa-save-times:before{content:"\e181"}.fa-bracket-curly-left:before,.fa-bracket-curly:before{content:"\7b"}.fa-colon:before{content:"\3a"}.fa-cart-arrow-down:before{content:"\f218"}.fa-file-edit:before,.fa-file-pen:before{content:"\f31c"}.fa-receipt:before{content:"\f543"}.fa-pen-square:before,.fa-pencil-square:before,.fa-square-pen:before{content:"\f14b"}.fa-desktop-slash:before,.fa-display-slash:before{content:"\e2fa"}.fa-book-arrow-right:before{content:"\e0b9"}.fa-dewpoint:before,.fa-droplet-degree:before{content:"\f748"}.fa-code-compare:before{content:"\e13a"}.fa-list-dots:before,.fa-list-ul:before{content:"\f0ca"}.fa-circle-ellipsis:before{content:"\e10a"}.fa-tower-cell:before{content:"\e585"}.fa-sd-cards:before{content:"\e240"}.fa-down-long:before,.fa-long-arrow-alt-down:before{content:"\f309"}.fa-envelopes:before{content:"\e170"}.fa-ranking-star:before{content:"\e561"}.fa-nfc-pen:before{content:"\e1fa"}.fa-magnifying-glass-play:before{content:"\e660"}.fa-arrow-up:before{content:"\f062"}.fa-down-from-dotted-line:before{content:"\e407"}.fa-television:before,.fa-tv-alt:before,.fa-tv:before{content:"\f26c"}.fa-border-left:before{content:"\f84f"}.fa-circle-divide:before{content:"\e106"}.fa-shrimp:before{content:"\e448"}.fa-list-check:before,.fa-tasks:before{content:"\f0ae"}.fa-diagram-subtask:before{content:"\e479"}.fa-circle-user:before,.fa-user-circle:before{content:"\f2bd"}.fa-square-y:before{content:"\e287"}.fa-circle-exclamation-check:before{content:"\e10d"}.fa-wind:before{content:"\f72e"}.fa-y:before{content:"\59"}.fa-user-headset:before{content:"\f82d"}.fa-user-magnifying-glass:before{content:"\e5c5"}.fa-star-sharp:before{content:"\e28b"}.fa-circle-1:before{content:"\e0ee"}.fa-circle-star:before,.fa-star-circle:before{content:"\e123"}.fa-music-alt:before,.fa-music-note:before{content:"\f8cf"}.fa-user-graduate:before{content:"\f501"}.fa-arrow-right-long-to-line:before{content:"\e3d5"}.fa-chain-horizontal:before,.fa-link-horizontal:before{content:"\e1cb"}.fa-music-alt-slash:before,.fa-music-note-slash:before{content:"\f8d0"}.fa-circle-radiation:before,.fa-radiation-alt:before{content:"\f7ba"}.fa-circle-p:before{content:"\e11a"}.fa-award-simple:before{content:"\e0ab"}.fa-diagram-project:before,.fa-project-diagram:before{content:"\f542"}.fa-chart-pyramid:before{content:"\e0e6"}.fa-sidebar:before{content:"\e24e"}.fa-copy:before{content:"\f0c5"}.fa-burger-glass:before{content:"\e0ce"}.fa-bars-filter:before{content:"\e0ad"}.fa-paintbrush-pencil:before{content:"\e206"}.fa-grip-horizontal:before,.fa-grip:before{content:"\f58d"}.fa-share-from-square:before,.fa-share-square:before{content:"\f14d"}.fa-keynote:before{content:"\f66c"}.fa-add:before,.fa-plus:before{content:"\2b"}.fa-expand:before{content:"\f065"}.fa-computer:before{content:"\e4e5"}.fa-cloud-check:before{content:"\e35c"}.fa-close:before,.fa-multiply:before,.fa-remove:before,.fa-times:before,.fa-xmark:before{content:"\f00d"}.fa-cart-circle-xmark:before{content:"\e3f4"}.fa-users-line:before{content:"\e592"}.fa-quote-left-alt:before,.fa-quote-left:before{content:"\f10d"}.fa-down-from-bracket:before{content:"\e66b"}.fa-trash-arrow-up:before,.fa-trash-restore:before{content:"\f829"}.fa-arrow-down-up-lock:before{content:"\e4b0"}.fa-arrow-down-to-bracket:before{content:"\e094"}.fa-lines-leaning:before{content:"\e51e"}.fa-square-q:before{content:"\e27b"}.fa-icons-alt:before,.fa-symbols:before{content:"\f86e"}.fa-copyright:before{content:"\f1f9"}.fa-bracket-left:before,.fa-bracket-square:before,.fa-bracket:before{content:"\5b"}.fa-arrow-from-left:before,.fa-arrow-right-from-line:before{content:"\f343"}.fa-h2:before{content:"\f314"}.fa-equals:before{content:"\3d"}.fa-tally-2:before{content:"\e295"}.fa-map:before{content:"\f279"}.fa-arrow-left-from-arc:before{content:"\e615"}.fa-file-circle-info:before{content:"\e493"}.fa-video-arrow-down-left:before{content:"\e2c8"}.fa-photo-film:before,.fa-photo-video:before{content:"\f87c"}.fa-floppy-disk-circle-arrow-right:before,.fa-save-circle-arrow-right:before{content:"\e180"}.fa-folder-minus:before{content:"\f65d"}.fa-chart-scatter:before{content:"\f7ee"}.fa-circle-gf:before{content:"\e67f"}.fa-display-arrow-down:before{content:"\e164"}.fa-arrow-trend-up:before{content:"\e098"}.fa-plug-circle-minus:before{content:"\e55e"}.fa-angle:before{content:"\e08c"}.fa-sign-hanging:before,.fa-sign:before{content:"\f4d9"}.fa-square-divide:before{content:"\e26a"}.fa-folder-check:before{content:"\e64e"}.fa-signal-stream-slash:before{content:"\e250"}.fa-bezier-curve:before{content:"\f55b"}.fa-eye-dropper-half:before{content:"\e173"}.fa-camera-slash:before{content:"\e0d9"}.fa-tablet-android:before,.fa-tablet:before{content:"\f3fb"}.fa-fill:before{content:"\f575"}.fa-chain-horizontal-slash:before,.fa-link-horizontal-slash:before{content:"\e1cc"}.fa-arrow-left-to-arc:before{content:"\e616"}.fa-clouds:before{content:"\f744"}.fa-table-pivot:before{content:"\e291"}.fa-filter-slash:before{content:"\e17d"}.fa-trash-can-arrow-turn-left:before,.fa-trash-can-undo:before,.fa-trash-undo-alt:before{content:"\f896"}.fa-notdef:before{content:"\e1fe"}.fa-signal-1:before,.fa-signal-weak:before{content:"\f68c"}.fa-computer-classic:before{content:"\f8b1"}.fa-frame:before{content:"\e495"}.fa-video-slash:before{content:"\f4e2"}.fa-ellipsis-h-alt:before,.fa-ellipsis-stroke:before{content:"\f39b"}.fa-down-to-dotted-line:before{content:"\e408"}.fa-cloud-music:before{content:"\f8ae"}.fa-cloud-minus:before{content:"\e35d"}.fa-thermometer:before{content:"\f491"}.fa-vr-cardboard:before{content:"\f729"}.fa-gauge-circle-minus:before{content:"\e497"}.fa-brightness-low:before{content:"\e0ca"}.fa-hand-middle-finger:before{content:"\f806"}.fa-percent:before,.fa-percentage:before{content:"\25"}.fa-location-check:before,.fa-map-marker-check:before{content:"\f606"}.fa-coin-vertical:before{content:"\e3fd"}.fa-display:before{content:"\e163"}.fa-thumb-tack:before,.fa-thumbtack:before{content:"\f08d"}.fa-alt:before{content:"\e08a"}.fa-circle-trash:before,.fa-trash-circle:before{content:"\e126"}.fa-rotate:before,.fa-sync-alt:before{content:"\f2f1"}.fa-circle-quarters:before{content:"\e3f8"}.fa-arrow-up-triangle-square:before,.fa-sort-shapes-up:before{content:"\f88a"}.fa-cogs:before,.fa-gears:before{content:"\f085"}.fa-lock-keyhole-open:before,.fa-lock-open-alt:before{content:"\f3c2"}.fa-arrow-up-right-dots:before{content:"\e4b7"}.fa-square-n:before{content:"\e277"}.fa-meter:before{content:"\e1e8"}.fa-sim-card:before{content:"\f7c4"}.fa-up-from-bracket:before{content:"\e590"}.fa-border-right:before{content:"\f852"}.fa-arrow-turn-down:before,.fa-level-down:before{content:"\f149"}.fa-spade:before{content:"\f2f4"}.fa-card-spade:before{content:"\e3ec"}.fa-line-columns:before{content:"\f870"}.fa-arrow-right-to-line:before,.fa-arrow-to-right:before{content:"\f340"}.fa-user-group-simple:before{content:"\e603"}.fa-award:before{content:"\f559"}.fa-ticket-alt:before,.fa-ticket-simple:before{content:"\f3ff"}.fa-angle-double-left:before,.fa-angles-left:before{content:"\f100"}.fa-camcorder:before,.fa-video-handheld:before{content:"\f8a8"}.fa-album-circle-user:before{content:"\e48d"}.fa-subtitles-slash:before{content:"\e610"}.fa-qrcode:before{content:"\f029"}.fa-browser:before{content:"\f37e"}.fa-pen-paintbrush:before,.fa-pencil-paintbrush:before{content:"\f618"}.fa-magnifying-glass-music:before{content:"\e65f"}.fa-arrow-right-from-file:before,.fa-file-export:before{content:"\f56e"}.fa-arrow-up-short-wide:before,.fa-sort-amount-up-alt:before{content:"\f885"}.fa-arrows-repeat-1:before,.fa-repeat-1-alt:before{content:"\f366"}.fa-binary:before{content:"\e33b"}.fa-diagram-cells:before{content:"\e475"}.fa-pen-line:before{content:"\e212"}.fa-atom-alt:before,.fa-atom-simple:before{content:"\f5d3"}.fa-ampersand:before{content:"\26"}.fa-arrow-from-bottom:before,.fa-arrow-up-from-line:before{content:"\f342"}.fa-pen-slash:before{content:"\e213"}.fa-square-star:before{content:"\e27f"}.fa-send-backward:before{content:"\f87f"}.fa-music:before{content:"\f001"}.fa-compass-slash:before{content:"\f5e9"}.fa-file-music:before{content:"\f8b6"}.fa-code-commit:before{content:"\f386"}.fa-display-chart-up-circle-currency:before{content:"\e5e5"}.fa-circle-g:before{content:"\e10f"}.fa-circle-arrow-up-left:before{content:"\e0fb"}.fa-coin-blank:before{content:"\e3fb"}.fa-card-heart:before{content:"\e3eb"}.fa-container-storage:before{content:"\f4b7"}.fa-square-xmark:before,.fa-times-square:before,.fa-xmark-square:before{content:"\f2d3"}.fa-hashtag:before{content:"\23"}.fa-t:before{content:"\54"}.fa-chart-column:before{content:"\e0e3"}.fa-infinity:before{content:"\f534"}.fa-object-intersect:before{content:"\e49d"}.fa-voicemail:before{content:"\f897"}.fa-block-brick:before,.fa-wall-brick:before{content:"\e3db"}.fa-turtle:before{content:"\f726"}.fa-pencil-mechanical:before{content:"\e5ca"}.fa-calendar:before{content:"\f133"}.fa-box-heart:before{content:"\f49d"}.fa-sd-card:before{content:"\f7c2"}.fa-wifi-1:before,.fa-wifi-weak:before{content:"\f6aa"}.fa-circle-plus:before,.fa-plus-circle:before{content:"\f055"}.fa-chain-broken:before,.fa-chain-slash:before,.fa-link-slash:before,.fa-unlink:before{content:"\f127"}.fa-clone:before{content:"\f24d"}.fa-arrow-up-z-a:before,.fa-sort-alpha-up-alt:before{content:"\f882"}.fa-file-circle-plus:before{content:"\e494"}.fa-delete-right:before{content:"\e154"}.fa-circle-quarter:before{content:"\e11f"}.fa-border-all:before{content:"\f84c"}.fa-function:before{content:"\f661"}.fa-arrow-trend-down:before{content:"\e097"}.fa-feed:before,.fa-rss:before{content:"\f09e"}.fa-draw-polygon:before{content:"\f5ee"}.fa-balance-scale:before,.fa-scale-balanced:before{content:"\f24e"}.fa-calendar-lines:before,.fa-calendar-note:before{content:"\e0d5"}.fa-arrow-down-big-small:before,.fa-sort-size-down:before{content:"\f88c"}.fa-do-not-enter:before{content:"\f5ec"}.fa-desktop-alt:before,.fa-desktop:before{content:"\f390"}.fa-m:before{content:"\4d"}.fa-spinner-scale:before{content:"\e62a"}.fa-grip-dots-vertical:before{content:"\e411"}.fa-creemee:before,.fa-soft-serve:before{content:"\e400"}.fa-h5:before{content:"\e412"}.fa-hand-back-point-down:before{content:"\e19e"}.fa-table-list:before,.fa-th-list:before{content:"\f00b"}.fa-rectangle-landscape:before,.fa-rectangle:before{content:"\f2fa"}.fa-clipboard-list-check:before{content:"\f737"}.fa-book:before{content:"\f02d"}.fa-user-plus:before{content:"\f234"}.fa-check:before{content:"\f00c"}.fa-angle-left:before{content:"\f104"}.fa-diagram-successor:before{content:"\e47a"}.fa-square-w:before{content:"\e285"}.fa-arrows-split-up-and-left:before{content:"\e4bc"}.fa-airplay:before{content:"\e089"}.fa-slash-forward:before{content:"\2f"}.fa-location-pen:before,.fa-map-marker-edit:before{content:"\f607"}.fa-image-portrait:before,.fa-portrait:before{content:"\f3e0"}.fa-user-tag:before{content:"\f507"}.fa-print-slash:before{content:"\f686"}.fa-hand-back-point-ribbon:before{content:"\e1a0"}.fa-rectangle-times:before,.fa-rectangle-xmark:before,.fa-times-rectangle:before,.fa-window-close:before{content:"\f410"}.fa-corner:before{content:"\e3fe"}.fa-book-open:before{content:"\f518"}.fa-book-journal-whills:before,.fa-journal-whills:before{content:"\f66a"}.fa-exclamation-triangle:before,.fa-triangle-exclamation:before,.fa-warning:before{content:"\f071"}.fa-database:before{content:"\f1c0"}.fa-down-left:before{content:"\e16a"}.fa-mail-forward:before,.fa-share:before{content:"\f064"}.fa-turn-down-right:before{content:"\e455"}.fa-scanner-keyboard:before{content:"\f489"}.fa-circle-o:before{content:"\e119"}.fa-grid-horizontal:before{content:"\e307"}.fa-exchange-alt:before,.fa-right-left:before{content:"\f362"}.fa-columns-3:before{content:"\e361"}.fa-input-text:before{content:"\e1bf"}.fa-window-alt:before,.fa-window-flip:before{content:"\f40f"}.fa-align-right:before{content:"\f038"}.fa-caret-circle-right:before,.fa-circle-caret-right:before{content:"\f330"}.fa-turn-left:before{content:"\e636"}.fa-file-spreadsheet:before{content:"\f65b"}.fa-audio-description-slash:before{content:"\e0a8"}.fa-calendar-day:before{content:"\f783"}.fa-level-down-alt:before,.fa-turn-down:before{content:"\f3be"}.fa-square-s:before{content:"\e27d"}.fa-barcode-alt:before,.fa-rectangle-barcode:before{content:"\f463"}.fa-envelope-square:before,.fa-square-envelope:before{content:"\f199"}.fa-pompebled:before{content:"\e43d"}.fa-watch-smart:before{content:"\e2cc"}.fa-book-user:before{content:"\f7e7"}.fa-calendar-minus:before{content:"\f272"}.fa-circle-xmark:before,.fa-times-circle:before,.fa-xmark-circle:before{content:"\f057"}.fa-circle-4:before{content:"\e0f1"}.fa-gifts:before{content:"\f79c"}.fa-album-collection:before{content:"\f8a0"}.fa-id-card-alt:before,.fa-id-card-clip:before{content:"\f47f"}.fa-magnifying-glass-plus:before,.fa-search-plus:before{content:"\f00e"}.fa-thumbs-up:before{content:"\f164"}.fa-arrow-down-to-dotted-line:before{content:"\e095"}.fa-window-minimize:before{content:"\f2d1"}.fa-rectangle-wide:before{content:"\f2fc"}.fa-brush:before{content:"\f55d"}.fa-mask:before{content:"\f6fa"}.fa-calendar-heart:before{content:"\e0d3"}.fa-magnifying-glass-minus:before,.fa-search-minus:before{content:"\f010"}.fa-arrow-down-from-arc:before{content:"\e614"}.fa-right-left-large:before{content:"\e5e1"}.fa-circles-overlap:before{content:"\e600"}.fa-user-alt:before,.fa-user-large:before{content:"\f406"}.fa-trash-check:before{content:"\e2af"}.fa-square-full:before{content:"\f45c"}.fa-grip-dots:before{content:"\e410"}.fa-pen-swirl:before{content:"\e214"}.fa-circle-2:before{content:"\e0ef"}.fa-note-sticky:before,.fa-sticky-note:before{content:"\f249"}.fa-arrow-alt-down:before,.fa-down:before{content:"\f354"}.fa-paperclip-vertical:before{content:"\e3c2"}.fa-wind-circle-exclamation:before,.fa-wind-warning:before{content:"\f776"}.fa-location-pin-slash:before,.fa-map-marker-slash:before{content:"\f60c"}.fa-bug-slash:before{content:"\e490"}.fa-toggle-large-off:before{content:"\e5b0"}.fa-boot:before{content:"\f782"}.fa-file-check:before{content:"\f316"}.fa-cards-blank:before{content:"\e4df"}.fa-circle-3:before{content:"\e0f0"}.fa-keyboard-brightness-low:before{content:"\e1c1"}.fa-user-injured:before{content:"\f728"}.fa-exclamation:before{content:"\21"}.fa-arrows-spin:before{content:"\e4bb"}.fa-circle-waveform-lines:before,.fa-waveform-circle:before{content:"\e12d"}.fa-computer-speaker:before{content:"\f8b2"}.fa-x:before{content:"\58"}.fa-users-cog:before,.fa-users-gear:before{content:"\f509"}.fa-circle-t:before{content:"\e124"}.fa-grid-2:before{content:"\e196"}.fa-horizontal-rule:before{content:"\f86c"}.fa-d:before{content:"\44"}.fa-file-gif:before{content:"\e645"}.fa-cloud-question:before{content:"\e492"}.fa-hand-point-left:before{content:"\f0a5"}.fa-gallery-thumbnails:before{content:"\e3aa"}.fa-circle-j:before{content:"\e112"}.fa-eyes:before{content:"\e367"}.fa-file-caret-up:before,.fa-page-caret-up:before{content:"\e42a"}.fa-share-alt-square:before,.fa-square-share-nodes:before{content:"\f1e1"}.fa-file-mp4:before{content:"\e649"}.fa-barcode:before{content:"\f02a"}.fa-bulldozer:before{content:"\e655"}.fa-plus-minus:before{content:"\e43c"}.fa-video-camera:before,.fa-video:before{content:"\f03d"}.fa-square-z:before{content:"\e288"}.fa-sr-only,.fa-sr-only-focusable:not(:focus),.sr-only,.sr-only-focusable:not(:focus){position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}
\ No newline at end of file
diff --git a/package/docker/root/defaults/www/theme/footer.html b/package/docker/root/defaults/www/theme/footer.html
new file mode 100644
index 000000000..1a4eb6e8f
--- /dev/null
+++ b/package/docker/root/defaults/www/theme/footer.html
@@ -0,0 +1,21 @@
+
+
+
+
+
+
+
+
+