diff --git a/.editorconfig b/.editorconfig
deleted file mode 100644
index 07926923..00000000
--- a/.editorconfig
+++ /dev/null
@@ -1,16 +0,0 @@
-# Editor configuration, see https://editorconfig.org
-root = true
-
-[*]
-charset = utf-8
-indent_style = space
-indent_size = 4
-insert_final_newline = true
-trim_trailing_whitespace = true
-
-[*.ts]
-quote_type = single
-
-[*.md]
-max_line_length = off
-trim_trailing_whitespace = false
diff --git a/.eslintrc.json b/.eslintrc.json
index 97926803..695c05dd 100644
--- a/.eslintrc.json
+++ b/.eslintrc.json
@@ -1,5 +1,13 @@
{
"root": true,
+ "parser": "@typescript-eslint/parser",
+ "parserOptions": {
+ "ecmaVersion": "latest",
+ "sourceType": "module",
+ "ecmaFeatures": {
+ "jsx": true
+ }
+ },
"settings": {
"react": {
"pragma": "React",
@@ -15,32 +23,43 @@
"plugin:react/jsx-runtime",
"plugin:react-hooks/recommended"
],
- "parser": "@typescript-eslint/parser",
- "parserOptions": {
- "ecmaFeatures": {
- "jsx": true
- },
- "ecmaVersion": "latest",
- "sourceType": "module"
- },
"plugins": [
- "react",
- "@typescript-eslint"
+ "@typescript-eslint",
+ "react"
],
"rules": {
- "linebreak-style": [ "off" ],
- "quotes": [ "error", "single" ],
- "@typescript-eslint/indent": [ "error", 4, { "SwitchCase": 1 } ],
- "array-bracket-spacing": [ "error", "always" ],
- "brace-style": [ "error", "allman" ],
- "template-curly-spacing": [ "error", "always" ],
- "no-multi-spaces": [ "error" ],
- "jsx-quotes": [ "error" ],
- "react/prop-types": [ "off" ],
- "react/jsx-curly-spacing": [ "error", { "when": "always", "children": true } ],
- "react/jsx-equals-spacing": [ "error" ],
- "react/jsx-newline": [ "error", { "prevent": true } ],
- "@typescript-eslint/object-curly-spacing": [ "error", "always",
+ "linebreak-style": [
+ "off"
+ ],
+ "quotes": [
+ "error",
+ "single"
+ ],
+ "@typescript-eslint/indent": [
+ "error",
+ 4,
+ {
+ "SwitchCase": 1
+ }
+ ],
+ "array-bracket-spacing": [
+ "error",
+ "always"
+ ],
+ "brace-style": [
+ "error",
+ "allman"
+ ],
+ "template-curly-spacing": [
+ "error",
+ "always"
+ ],
+ "no-multi-spaces": [
+ "error"
+ ],
+ "@typescript-eslint/object-curly-spacing": [
+ "error",
+ "always",
{
"arraysInObjects": true,
"objectsInObjects": false
@@ -62,6 +81,30 @@
"extendDefaults": true
}
],
- "no-switch-case-fall-through": [ "off" ]
+ "no-switch-case-fall-through": [
+ "off"
+ ],
+ "jsx-quotes": [
+ "error"
+ ],
+ "react/prop-types": [
+ "off"
+ ],
+ "react/jsx-curly-spacing": [
+ "error",
+ {
+ "when": "always",
+ "children": true
+ }
+ ],
+ "react/jsx-equals-spacing": [
+ "error"
+ ],
+ "react/jsx-newline": [
+ "error",
+ {
+ "prevent": true
+ }
+ ]
}
}
diff --git a/.gitignore b/.gitignore
index aa65aeba..154341fb 100644
--- a/.gitignore
+++ b/.gitignore
@@ -27,5 +27,5 @@ Thumbs.db
/build
*.zip
.env
-public/renderer-config.json
-public/ui-config.json
+public/renderer-config*
+public/ui-config*
diff --git a/.vscode/settings.json b/.vscode/settings.json
index 87146d22..3fdf856d 100644
--- a/.vscode/settings.json
+++ b/.vscode/settings.json
@@ -4,24 +4,29 @@
"typescript.preferences.quoteStyle": "single",
"typescript.format.placeOpenBraceOnNewLineForControlBlocks": true,
"typescript.format.placeOpenBraceOnNewLineForFunctions": true,
- "typescript.format.enable": false,
+ "editor.wordWrap": "on",
"editor.codeActionsOnSave": {
"source.fixAll.eslint": true,
+ "source.fixAll.sortJSON": false,
"source.organizeImports": true
},
+ "editor.formatOnSave": false,
"git.ignoreLimitWarning": true,
"files.eol": "\n",
"files.insertFinalNewline": true,
"files.trimFinalNewlines": true,
- "editor.wordWrap": "on",
"emmet.showExpandedAbbreviation": "never",
+ "eslint.format.enable": true,
"eslint.validate": [
"javascript",
- "javascriptreact",
- "html",
- "typescriptreact"
+ "typescript"
],
"eslint.workingDirectories": [
- "./src"
- ]
+ {
+ "pattern": "./src"
+ }
+ ],
+ "javascript.format.enable": false,
+ "thunder-client.saveToWorkspace": false,
+ "thunder-client.workspaceRelativePath": "."
}
diff --git a/README.md b/README.md
index b9932897..7b6ffc14 100644
--- a/README.md
+++ b/README.md
@@ -46,5 +46,5 @@ To build a production version of Nitro just run the following command
yarn build:prod
```
-- A `build` folder will be generated, these are the files that must be uploaded to your webserver
+- A `dist` folder will be generated, these are the files that must be uploaded to your webserver
- Consult your CMS documentation for compatibility with Nitro and how to add the production files
diff --git a/craco.config.js b/craco.config.js
deleted file mode 100644
index 51847cbb..00000000
--- a/craco.config.js
+++ /dev/null
@@ -1,49 +0,0 @@
-module.exports = {
- eslint: {
- enable: false
- },
- webpack: {
- configure: (webpackConfig) => ({
- ...webpackConfig,
- optimization: {
- ...webpackConfig.optimization,
- splitChunks: {
- cacheGroups: {
- vendor: {
- name: 'vendors',
- test: /[\\/]node_modules[\\/]/,
- chunks: 'all',
- },
- renderer: {
- name: 'renderer',
- test: /[\\/]node_modules[\\/]@nitrots[\\/]nitro-renderer[\\/]/,
- chunks: 'all',
- }
- }
- }
- },
- module: {
- ...webpackConfig.module,
- rules: [
- {
- test: /\.mjs$/,
- include: /node_modules/,
- type: 'javascript/auto'
- },
- ...webpackConfig.module.rules.map((rule) => {
- if (!rule.oneOf) return rule;
-
- return {
- ...rule,
- oneOf: rule.oneOf.map((ruleObject) => {
- if (!new RegExp(ruleObject.test).test('.ts') || !ruleObject.include) return ruleObject;
-
- return { ...ruleObject, include: undefined };
- })
- };
- })
- ]
- }
- })
- }
-}
diff --git a/public/index.html b/index.html
similarity index 70%
rename from public/index.html
rename to index.html
index aaceef80..dd4538b5 100644
--- a/public/index.html
+++ b/index.html
@@ -2,13 +2,13 @@
-
+
-
-
-
-
-
+
+
+
+
+
@@ -30,5 +30,6 @@
"friend.id": (new URLSearchParams(window.location.search).get('friend') || 0),
};
+
diff --git a/package.json b/package.json
index cb577f5f..057bdeaf 100644
--- a/package.json
+++ b/package.json
@@ -4,54 +4,37 @@
"homepage": ".",
"private": true,
"scripts": {
- "start": "cross-env SKIP_PREFLIGHT_CHECK=true BROWSER=none IMAGE_INLINE_SIZE_LIMIT=100000 craco --openssl-legacy-provider start",
- "build": "cross-env SKIP_PREFLIGHT_CHECK=true GENERATE_SOURCEMAP=false IMAGE_INLINE_SIZE_LIMIT=100000 craco --openssl-legacy-provider build",
+ "start": "vite",
+ "build": "vite build",
"build:prod": "npx browserslist@latest --update-db && yarn build",
- "test": "craco test",
- "eject": "react-scripts eject",
"eslint": "eslint src --ext .ts,.tsx"
},
"dependencies": {
- "@craco/craco": "^6.4.5",
- "@fortawesome/fontawesome-svg-core": "^6.1.1",
- "@fortawesome/free-solid-svg-icons": "^6.1.1",
- "@fortawesome/react-fontawesome": "^0.2.0",
- "@nitrots/nitro-renderer": "^1.3.4",
- "animate.css": "^4.1.1",
- "classnames": "^2.3.1",
- "cross-env": "^7.0.3",
- "emoji-toolkit": "^6.6.0",
+ "@nitrots/nitro-renderer": "^1.6.6",
+ "@tanstack/react-virtual": "^3.0.0-alpha.0",
"react": "^18.2.0",
"react-bootstrap": "^2.2.2",
"react-dom": "^18.2.0",
- "react-scripts": "4.0.3",
+ "react-icons": "^4.7.1",
"react-slider": "^2.0.0",
- "react-transition-group": "^4.4.2",
- "react-virtualized": "^9.22.3",
"react-youtube": "^7.13.1",
- "sass": "^1.53.0",
"typescript": "^4.3.5",
"use-between": "^1.3.4"
},
- "resolutions": {
- "react-error-overlay": "6.0.9",
- "@types/react": "^18.0.15",
- "@types/react-dom": "^18.0.6"
- },
"devDependencies": {
"@types/node": "^18.6.1",
"@types/react": "^18.0.15",
"@types/react-dom": "^18.0.6",
"@types/react-slider": "^1.3.1",
- "@types/react-transition-group": "^4.4.5",
- "@types/react-virtualized": "^9.21.21",
"@typescript-eslint/eslint-plugin": "^5.30.7",
"@typescript-eslint/parser": "^5.30.7",
+ "@vitejs/plugin-react": "^3.0.0",
"eslint": "^8.20.0",
"eslint-plugin-import": "^2.26.0",
"eslint-plugin-jsx-a11y": "^6.6.0",
"eslint-plugin-react": "^7.30.1",
"eslint-plugin-react-hooks": "^4.6.0",
- "react-error-overlay": "6.0.9"
+ "sass": "^1.56.2",
+ "vite": "^4.4.5"
}
}
diff --git a/public/renderer-config.json.example b/public/renderer-config.json.example
index e2b2f9c2..dbcbcc8c 100644
--- a/public/renderer-config.json.example
+++ b/public/renderer-config.json.example
@@ -24,13 +24,17 @@
"furni.rotation.bounce.steps": 20,
"furni.rotation.bounce.height": 0.0625,
"enable.avatar.arrow": false,
- "system.animation.fps": 24,
- "system.limits.fps": false,
- "system.dispatcher.log": false,
- "system.packet.log": false,
+ "system.log.debug": false,
+ "system.log.warn": false,
+ "system.log.error": false,
+ "system.log.events": false,
+ "system.log.packets": false,
+ "system.fps.animation": 24,
+ "system.fps.max": 60,
"system.pong.manually": true,
"system.pong.interval.ms": 20000,
"room.color.skip.transition": true,
+ "room.landscapes.enabled": true,
"avatar.mandatory.libraries": [
"bd:1",
"li:0"
diff --git a/public/site.webmanifest b/public/site.webmanifest
index d5d93cab..6264b894 100644
--- a/public/site.webmanifest
+++ b/public/site.webmanifest
@@ -4,12 +4,12 @@
"short_name": "Nitro",
"icons": [
{
- "src": "/android-chrome-192x192.png",
+ "src": "android-chrome-192x192.png",
"sizes": "192x192",
"type": "image/png"
},
{
- "src": "/android-chrome-512x512.png",
+ "src": "android-chrome-512x512.png",
"sizes": "512x512",
"type": "image/png"
}
diff --git a/public/ui-config.json.example b/public/ui-config.json.example
index 80b6970a..2187bc03 100644
--- a/public/ui-config.json.example
+++ b/public/ui-config.json.example
@@ -11,16 +11,21 @@
"widget.dimmer.colorwheel": false,
"avatar.wardrobe.max.slots": 10,
"user.badges.max.slots": 5,
+ "user.tags.enabled": false,
"camera.publish.disabled": false,
"hc.disabled": false,
"badge.descriptions.enabled": true,
"motto.max.length": 38,
"bot.name.max.length": 15,
+ "pet.package.name.max.length": 15,
"wired.action.bot.talk.to.avatar.max.length": 64,
"wired.action.bot.talk.max.length": 64,
"wired.action.chat.max.length": 100,
"wired.action.kick.from.room.max.length": 100,
"wired.action.mute.user.max.length": 100,
+ "game.center.enabled": false,
+ "guides.enabled": true,
+ "toolbar.hide.quests": true,
"navigator.room.models": [
{ "clubLevel": 0, "tileSize": 104, "name": "a" },
{ "clubLevel": 0, "tileSize": 94, "name": "b" },
diff --git a/src/App.scss b/src/App.scss
index 9a3bd885..2000adec 100644
--- a/src/App.scss
+++ b/src/App.scss
@@ -45,6 +45,9 @@ $nitro-widget-custom-stack-height-height: 220px;
$nitro-widget-exchange-credit-width: 375px;
$nitro-widget-exchange-credit-height: 150px;
+$nitro-widget-crafting-width: 500px;
+$nitro-widget-crafting-height: 300px;
+
$chat-history-width: 300px;
$chat-history-height: 300px;
diff --git a/src/App.tsx b/src/App.tsx
index 82ca72a4..072b05dd 100644
--- a/src/App.tsx
+++ b/src/App.tsx
@@ -1,12 +1,10 @@
-import { ConfigurationEvent, HabboWebTools, LegacyExternalInterface, Nitro, NitroCommunicationDemoEvent, NitroEvent, NitroLocalizationEvent, NitroVersion, RoomEngineEvent, WebGL } from '@nitrots/nitro-renderer';
+import { ConfigurationEvent, GetAssetManager, HabboWebTools, LegacyExternalInterface, Nitro, NitroCommunicationDemoEvent, NitroConfiguration, NitroEvent, NitroLocalizationEvent, NitroVersion, RoomEngineEvent } from '@nitrots/nitro-renderer';
import { FC, useCallback, useEffect, useState } from 'react';
-import { DispatchUiEvent, GetCommunication, GetConfiguration, GetNitroInstance, GetUIVersion } from './api';
+import { GetCommunication, GetConfiguration, GetNitroInstance, GetUIVersion } from './api';
import { Base, TransitionAnimation, TransitionAnimationTypes } from './common';
import { LoadingView } from './components/loading/LoadingView';
import { MainView } from './components/main/MainView';
import { useConfigurationEvent, useLocalizationEvent, useMainEvent, useRoomEngineEvent } from './hooks';
-import IntervalWebWorker from './workers/IntervalWebWorker';
-import { WorkerBuilder } from './workers/WorkerBuilder';
NitroVersion.UI_VERSION = GetUIVersion();
@@ -24,13 +22,9 @@ export const App: FC<{}> = props =>
if(!NitroConfig) throw new Error('NitroConfig is not defined!');
Nitro.bootstrap();
-
- const worker = new WorkerBuilder(IntervalWebWorker);
-
- Nitro.instance.setWorker(worker);
}
- const handler = useCallback((event: NitroEvent) =>
+ const handler = useCallback(async (event: NitroEvent) =>
{
switch(event.type)
{
@@ -86,22 +80,21 @@ export const App: FC<{}> = props =>
const assetUrls = GetConfiguration('preload.assets.urls');
const urls: string[] = [];
- if(assetUrls && assetUrls.length) for(const url of assetUrls) urls.push(GetNitroInstance().core.configuration.interpolate(url));
+ if(assetUrls && assetUrls.length) for(const url of assetUrls) urls.push(NitroConfiguration.interpolate(url));
- GetNitroInstance().core.asset.downloadAssets(urls, (status: boolean) =>
+ const status = await GetAssetManager().downloadAssets(urls);
+
+ if(status)
{
- if(status)
- {
- GetCommunication().init();
+ GetCommunication().init();
- setPercent(prevValue => (prevValue + 20))
- }
- else
- {
- setIsError(true);
- setMessage('Assets Failed');
- }
- });
+ setPercent(prevValue => (prevValue + 20))
+ }
+ else
+ {
+ setIsError(true);
+ setMessage('Assets Failed');
+ }
return;
}
}
@@ -121,14 +114,7 @@ export const App: FC<{}> = props =>
useEffect(() =>
{
- if(!WebGL.isWebGLAvailable())
- {
- DispatchUiEvent(new NitroEvent(Nitro.WEBGL_UNAVAILABLE));
- }
- else
- {
- GetNitroInstance().core.configuration.init();
- }
+ GetNitroInstance().core.configuration.init();
const resize = (event: UIEvent) => setImageRendering(!(window.devicePixelRatio % 1));
diff --git a/src/api/GetUIVersion.ts b/src/api/GetUIVersion.ts
index cf8d5a5d..bdbe9223 100644
--- a/src/api/GetUIVersion.ts
+++ b/src/api/GetUIVersion.ts
@@ -1 +1 @@
-export const GetUIVersion = () => '2.1.1';
+export const GetUIVersion = () => '2.2.0';
diff --git a/src/api/chat-history/IChatEntry.ts b/src/api/chat-history/IChatEntry.ts
index 472a5dbe..1bf7a520 100644
--- a/src/api/chat-history/IChatEntry.ts
+++ b/src/api/chat-history/IChatEntry.ts
@@ -1,11 +1,16 @@
export interface IChatEntry
{
id: number;
+ webId: number;
entityId: number;
name: string;
look?: string;
message?: string;
entityType?: number;
+ style?: number;
+ chatType?: number;
+ imageUrl?: string;
+ color?: string;
roomId: number;
timestamp: string;
type: number;
diff --git a/src/api/guide-tool/GuideSessionState.ts b/src/api/guide-tool/GuideSessionState.ts
index 02d225f0..c5e24f37 100644
--- a/src/api/guide-tool/GuideSessionState.ts
+++ b/src/api/guide-tool/GuideSessionState.ts
@@ -7,6 +7,8 @@ export class GuideSessionState
public static readonly USER_PENDING: string = 'USER_PENDING';
public static readonly USER_ONGOING: string = 'USER_ONGOING';
public static readonly USER_FEEDBACK: string = 'USER_FEEDBACK';
+ public static readonly USER_NO_HELPERS: string = 'USER_NO_HELPERS';
+ public static readonly USER_SOMETHING_WRONG: string = 'USER_SOMETHING_WRONG';
public static readonly USER_THANKS: string = 'USER_THANKS';
public static readonly USER_GUIDE_DISCONNECTED: string = 'USER_GUIDE_DISCONNECTED';
public static readonly GUIDE_TOOL_MENU: string = 'GUIDE_TOOL_MENU';
diff --git a/src/api/inventory/FurnitureItem.ts b/src/api/inventory/FurnitureItem.ts
index 2ad27ce5..f5f2f0fa 100644
--- a/src/api/inventory/FurnitureItem.ts
+++ b/src/api/inventory/FurnitureItem.ts
@@ -1,5 +1,4 @@
-import { IFurnitureItemData, IObjectData } from '@nitrots/nitro-renderer';
-import { GetNitroInstance } from '../nitro';
+import { GetTickerTime, IFurnitureItemData, IObjectData } from '@nitrots/nitro-renderer';
import { IFurnitureItem } from './IFurnitureItem';
export class FurnitureItem implements IFurnitureItem
@@ -123,7 +122,7 @@ export class FurnitureItem implements IFurnitureItem
if(this._hasRentPeriodStarted)
{
- time = (this._secondsToExpiration - ((GetNitroInstance().time - this._expirationTimeStamp) / 1000));
+ time = (this._secondsToExpiration - ((GetTickerTime() - this._expirationTimeStamp) / 1000));
if(time < 0) time = 0;
}
diff --git a/src/api/nitro/AddWorkerEventTracker.ts b/src/api/nitro/AddWorkerEventTracker.ts
deleted file mode 100644
index 0d81670b..00000000
--- a/src/api/nitro/AddWorkerEventTracker.ts
+++ /dev/null
@@ -1,7 +0,0 @@
-import { IWorkerEventTracker } from '@nitrots/nitro-renderer';
-import { GetNitroInstance } from './GetNitroInstance';
-
-export const AddWorkerEventTracker = (tracker: IWorkerEventTracker) =>
-{
- GetNitroInstance().addWorkerEventTracker(tracker);
-}
diff --git a/src/api/nitro/GetCommunication.ts b/src/api/nitro/GetCommunication.ts
index 96b4c67e..5dc57616 100644
--- a/src/api/nitro/GetCommunication.ts
+++ b/src/api/nitro/GetCommunication.ts
@@ -3,5 +3,5 @@ import { GetNitroInstance } from './GetNitroInstance';
export function GetCommunication(): INitroCommunicationManager
{
- return GetNitroInstance().communication;
+ return GetNitroInstance()?.communication;
}
diff --git a/src/api/nitro/GetConfiguration.ts b/src/api/nitro/GetConfiguration.ts
index 2676d53f..800d1f16 100644
--- a/src/api/nitro/GetConfiguration.ts
+++ b/src/api/nitro/GetConfiguration.ts
@@ -1,6 +1,6 @@
-import { GetNitroInstance } from './GetNitroInstance';
+import { NitroConfiguration } from '@nitrots/nitro-renderer';
export function GetConfiguration(key: string, value: T = null): T
{
- return GetNitroInstance().getConfiguration(key, value);
+ return NitroConfiguration.getValue(key, value);
}
diff --git a/src/api/nitro/GetConnection.ts b/src/api/nitro/GetConnection.ts
index fc27f045..ec39d8db 100644
--- a/src/api/nitro/GetConnection.ts
+++ b/src/api/nitro/GetConnection.ts
@@ -3,5 +3,5 @@ import { GetCommunication } from './GetCommunication';
export function GetConnection(): IConnection
{
- return GetCommunication().connection;
+ return GetCommunication()?.connection;
}
diff --git a/src/api/nitro/GetTicker.ts b/src/api/nitro/GetTicker.ts
deleted file mode 100644
index 9d02551f..00000000
--- a/src/api/nitro/GetTicker.ts
+++ /dev/null
@@ -1,6 +0,0 @@
-import { GetNitroInstance } from './GetNitroInstance';
-
-export function GetTicker()
-{
- return GetNitroInstance().ticker;
-}
diff --git a/src/api/nitro/RemoveWorkerEventTracker.ts b/src/api/nitro/RemoveWorkerEventTracker.ts
deleted file mode 100644
index a1307118..00000000
--- a/src/api/nitro/RemoveWorkerEventTracker.ts
+++ /dev/null
@@ -1,7 +0,0 @@
-import { IWorkerEventTracker } from '@nitrots/nitro-renderer';
-import { GetNitroInstance } from './GetNitroInstance';
-
-export const RemoveWorkerEventTracker = (tracker: IWorkerEventTracker) =>
-{
- GetNitroInstance().removeWorkerEventTracker(tracker);
-}
diff --git a/src/api/nitro/SendWorkerEvent.ts b/src/api/nitro/SendWorkerEvent.ts
deleted file mode 100644
index b0e32740..00000000
--- a/src/api/nitro/SendWorkerEvent.ts
+++ /dev/null
@@ -1,6 +0,0 @@
-import { GetNitroInstance } from './GetNitroInstance';
-
-export const SendWorkerEvent = (message: { [index: string]: any }) =>
-{
- GetNitroInstance().sendWorkerEvent(message);
-}
diff --git a/src/api/nitro/index.ts b/src/api/nitro/index.ts
index c5af3a30..c43e958d 100644
--- a/src/api/nitro/index.ts
+++ b/src/api/nitro/index.ts
@@ -1,5 +1,4 @@
export * from './AddLinkEventTracker';
-export * from './AddWorkerEventTracker';
export * from './avatar';
export * from './camera';
export * from './core';
@@ -9,11 +8,8 @@ export * from './GetConfiguration';
export * from './GetConnection';
export * from './GetLocalization';
export * from './GetNitroInstance';
-export * from './GetTicker';
export * from './OpenUrl';
export * from './RemoveLinkEventTracker';
-export * from './RemoveWorkerEventTracker';
export * from './room';
export * from './SendMessageComposer';
-export * from './SendWorkerEvent';
export * from './session';
diff --git a/src/api/purse/IPurse.ts b/src/api/purse/IPurse.ts
index b08ded9b..9fffb188 100644
--- a/src/api/purse/IPurse.ts
+++ b/src/api/purse/IPurse.ts
@@ -4,7 +4,7 @@ export interface IPurse
activityPoints: Map;
clubDays: number;
clubPeriods: number;
- _Str_13571: boolean;
+ hasClubLeft: boolean;
isVip: boolean;
pastClubDays: number;
pastVipDays: number;
diff --git a/src/api/purse/Purse.ts b/src/api/purse/Purse.ts
index a0a54b4c..6970e59c 100644
--- a/src/api/purse/Purse.ts
+++ b/src/api/purse/Purse.ts
@@ -1,5 +1,4 @@
-import { HabboClubLevelEnum } from '@nitrots/nitro-renderer';
-import { GetNitroInstance } from '..';
+import { GetTickerTime, HabboClubLevelEnum } from '@nitrots/nitro-renderer';
import { IPurse } from './IPurse';
export class Purse implements IPurse
@@ -42,7 +41,7 @@ export class Purse implements IPurse
public set credits(credits: number)
{
- this._lastUpdated = GetNitroInstance().time;
+ this._lastUpdated = GetTickerTime();
this._credits = credits;
}
@@ -53,7 +52,7 @@ export class Purse implements IPurse
public set activityPoints(k: Map)
{
- this._lastUpdated = GetNitroInstance().time;
+ this._lastUpdated = GetTickerTime();
this._activityPoints = k;
}
@@ -64,7 +63,7 @@ export class Purse implements IPurse
public set clubDays(k: number)
{
- this._lastUpdated = GetNitroInstance().time;
+ this._lastUpdated = GetTickerTime();
this._clubDays = k;
}
@@ -75,11 +74,11 @@ export class Purse implements IPurse
public set clubPeriods(k: number)
{
- this._lastUpdated = GetNitroInstance().time;
+ this._lastUpdated = GetTickerTime();
this._clubPeriods = k;
}
- public get _Str_13571(): boolean
+ public get hasClubLeft(): boolean
{
return (this._clubDays > 0) || (this._clubPeriods > 0);
}
@@ -101,7 +100,7 @@ export class Purse implements IPurse
public set pastClubDays(k: number)
{
- this._lastUpdated = GetNitroInstance().time;
+ this._lastUpdated = GetTickerTime();
this._pastClubDays = k;
}
@@ -112,7 +111,7 @@ export class Purse implements IPurse
public set pastVipDays(k: number)
{
- this._lastUpdated = GetNitroInstance().time;
+ this._lastUpdated = GetTickerTime();
this._pastVipDays = k;
}
@@ -128,14 +127,14 @@ export class Purse implements IPurse
public get minutesUntilExpiration(): number
{
- var k: number = ((GetNitroInstance().time - this._lastUpdated) / (1000 * 60));
+ var k: number = ((GetTickerTime() - this._lastUpdated) / (1000 * 60));
var _local_2: number = (this._minutesUntilExpiration - k);
return (_local_2 > 0) ? _local_2 : 0;
}
public set minutesUntilExpiration(k: number)
{
- this._lastUpdated = GetNitroInstance().time;
+ this._lastUpdated = GetTickerTime();
this._minutesUntilExpiration = k;
}
@@ -146,7 +145,7 @@ export class Purse implements IPurse
public set minutesSinceLastModified(k: number)
{
- this._lastUpdated = GetNitroInstance().time;
+ this._lastUpdated = GetTickerTime();
this._minutesSinceLastModified = k;
}
diff --git a/src/api/room/events/RoomWidgetPollUpdateEvent.ts b/src/api/room/events/RoomWidgetPollUpdateEvent.ts
index 58e8d644..edfb8fd0 100644
--- a/src/api/room/events/RoomWidgetPollUpdateEvent.ts
+++ b/src/api/room/events/RoomWidgetPollUpdateEvent.ts
@@ -1,4 +1,4 @@
-import { PollQuestion } from '@nitrots/nitro-renderer';
+import { IPollQuestion } from '@nitrots/nitro-renderer';
import { RoomWidgetUpdateEvent } from './RoomWidgetUpdateEvent';
export class RoomWidgetPollUpdateEvent extends RoomWidgetUpdateEvent
@@ -13,7 +13,7 @@ export class RoomWidgetPollUpdateEvent extends RoomWidgetUpdateEvent
private _numQuestions = 0;
private _startMessage = '';
private _endMessage = '';
- private _questionArray: PollQuestion[] = null;
+ private _questionArray: IPollQuestion[] = null;
private _pollType = '';
private _npsPoll = false;
@@ -78,12 +78,12 @@ export class RoomWidgetPollUpdateEvent extends RoomWidgetUpdateEvent
this._endMessage = k;
}
- public get questionArray(): PollQuestion[]
+ public get questionArray(): IPollQuestion[]
{
return this._questionArray;
}
- public set questionArray(k: PollQuestion[])
+ public set questionArray(k: IPollQuestion[])
{
this._questionArray = k;
}
diff --git a/src/api/room/events/RoomWidgetUpdateRoomObjectEvent.ts b/src/api/room/events/RoomWidgetUpdateRoomObjectEvent.ts
index aa9b7258..0660276c 100644
--- a/src/api/room/events/RoomWidgetUpdateRoomObjectEvent.ts
+++ b/src/api/room/events/RoomWidgetUpdateRoomObjectEvent.ts
@@ -11,6 +11,7 @@ export class RoomWidgetUpdateRoomObjectEvent extends RoomWidgetUpdateEvent
public static OBJECT_ROLL_OVER: string = 'RWUROE_OBJECT_ROLL_OVER';
public static OBJECT_ROLL_OUT: string = 'RWUROE_OBJECT_ROLL_OUT';
public static OBJECT_REQUEST_MANIPULATION: string = 'RWUROE_OBJECT_REQUEST_MANIPULATION';
+ public static OBJECT_DOUBLE_CLICKED: string = 'RWUROE_OBJECT_DOUBLE_CLICKED';
private _id: number;
private _category: number;
diff --git a/src/api/room/widgets/AvatarInfoUtilities.ts b/src/api/room/widgets/AvatarInfoUtilities.ts
index 57501993..7c489448 100644
--- a/src/api/room/widgets/AvatarInfoUtilities.ts
+++ b/src/api/room/widgets/AvatarInfoUtilities.ts
@@ -1,5 +1,5 @@
-import { IFurnitureData, ObjectDataFactory, PetFigureData, PetType, RoomControllerLevel, RoomModerationSettings, RoomObjectCategory, RoomObjectType, RoomObjectVariable, RoomPetData, RoomTradingLevelEnum, RoomUserData, RoomWidgetEnumItemExtradataParameter, Vector3d } from '@nitrots/nitro-renderer';
-import { GetNitroInstance, GetRoomEngine, GetRoomSession, GetSessionDataManager, IsOwnerOfFurniture } from '../../nitro';
+import { GetTickerTime, IFurnitureData, IRoomModerationSettings, IRoomPetData, IRoomUserData, ObjectDataFactory, PetFigureData, PetType, RoomControllerLevel, RoomModerationSettings, RoomObjectCategory, RoomObjectType, RoomObjectVariable, RoomTradingLevelEnum, RoomWidgetEnumItemExtradataParameter, Vector3d } from '@nitrots/nitro-renderer';
+import { GetRoomEngine, GetRoomSession, GetSessionDataManager, IsOwnerOfFurniture } from '../../nitro';
import { LocalizeText } from '../../utils';
import { AvatarInfoFurni } from './AvatarInfoFurni';
import { AvatarInfoName } from './AvatarInfoName';
@@ -139,7 +139,7 @@ export class AvatarInfoUtilities
const expiryTime = model.getValue(RoomObjectVariable.FURNITURE_EXPIRY_TIME);
const expiryTimestamp = model.getValue(RoomObjectVariable.FURNITURE_EXPIRTY_TIMESTAMP);
- furniInfo.expiration = ((expiryTime < 0) ? expiryTime : Math.max(0, (expiryTime - ((GetNitroInstance().time - expiryTimestamp) / 1000))));
+ furniInfo.expiration = ((expiryTime < 0) ? expiryTime : Math.max(0, (expiryTime - ((GetTickerTime() - expiryTimestamp) / 1000))));
let roomObjectImage = GetRoomEngine().getRoomObjectImage(roomSession.roomId, objectId, category, new Vector3d(180), 64, null);
@@ -162,7 +162,7 @@ export class AvatarInfoUtilities
if(guildId !== 0)
{
furniInfo.groupId = guildId;
- //this.container.connection.send(new _Str_2863(guildId, false));
+ //this.container.connection.send(new GroupInformationComposer(guildId, false));
}
if(IsOwnerOfFurniture(roomObject)) furniInfo.isOwner = true;
@@ -170,7 +170,7 @@ export class AvatarInfoUtilities
return furniInfo;
}
- public static getUserInfo(category: number, userData: RoomUserData): AvatarInfoUser
+ public static getUserInfo(category: number, userData: IRoomUserData): AvatarInfoUser
{
const roomSession = GetRoomSession();
@@ -250,7 +250,7 @@ export class AvatarInfoUtilities
if(tradeMode !== RoomTradingLevelEnum.FREE_TRADING) userInfo.canTradeReason = AvatarInfoUser.TRADE_REASON_NO_TRADING;
// const _local_12 = GetSessionDataManager().userId;
- // _local_13 = GetSessionDataManager()._Str_18437(_local_12);
+ // _local_13 = GetSessionDataManager().getUserTags(_local_12);
// this._Str_16287(_local_12, _local_13);
}
@@ -259,15 +259,15 @@ export class AvatarInfoUtilities
userInfo.groupName = userData.groupName;
userInfo.badges = roomSession.userDataManager.getUserBadges(userData.webID);
userInfo.figure = userData.figure;
- //var _local_8:Array = GetSessionDataManager()._Str_18437(userData.webID);
- //this._Str_16287(userData._Str_2394, _local_8);
- //this._container._Str_8097._Str_14387(userData.webID);
- //this._container.connection.send(new _Str_8049(userData._Str_2394));
+ //var _local_8:Array = GetSessionDataManager().getUserTags(userData.webID);
+ //this._Str_16287(userData.webId, _local_8);
+ //this._container.habboGroupsManager.updateVisibleExtendedProfile(userData.webID);
+ //this._container.connection.send(new GetRelationshipStatusInfoMessageComposer(userData.webId));
return userInfo;
}
- public static getBotInfo(category: number, userData: RoomUserData): AvatarInfoUser
+ public static getBotInfo(category: number, userData: IRoomUserData): AvatarInfoUser
{
const roomSession = GetRoomSession();
const userInfo = new AvatarInfoUser(AvatarInfoUser.BOT);
@@ -293,7 +293,7 @@ export class AvatarInfoUtilities
return userInfo;
}
- public static getRentableBotInfo(category: number, userData: RoomUserData): AvatarInfoRentableBot
+ public static getRentableBotInfo(category: number, userData: IRoomUserData): AvatarInfoRentableBot
{
const roomSession = GetRoomSession();
const botInfo = new AvatarInfoRentableBot(AvatarInfoRentableBot.RENTABLE_BOT);
@@ -319,7 +319,7 @@ export class AvatarInfoUtilities
return botInfo;
}
- public static getPetInfo(petData: RoomPetData): AvatarInfoPet
+ public static getPetInfo(petData: IRoomPetData): AvatarInfoPet
{
const roomSession = GetRoomSession();
const userData = roomSession.userDataManager.getPetData(petData.id);
@@ -387,7 +387,7 @@ export class AvatarInfoUtilities
return (userInfo.roomControllerLevel >= RoomControllerLevel.GUEST);
}
- private static isValidSetting(userInfo: AvatarInfoUser, checkSetting: (userInfo: AvatarInfoUser, moderation: RoomModerationSettings) => boolean): boolean
+ private static isValidSetting(userInfo: AvatarInfoUser, checkSetting: (userInfo: AvatarInfoUser, moderation: IRoomModerationSettings) => boolean): boolean
{
const roomSession = GetRoomSession();
@@ -404,7 +404,7 @@ export class AvatarInfoUtilities
private static canBeMuted(userInfo: AvatarInfoUser): boolean
{
- const checkSetting = (userInfo: AvatarInfoUser, moderation: RoomModerationSettings) =>
+ const checkSetting = (userInfo: AvatarInfoUser, moderation: IRoomModerationSettings) =>
{
switch(moderation.allowMute)
{
@@ -420,7 +420,7 @@ export class AvatarInfoUtilities
private static canBeKicked(userInfo: AvatarInfoUser): boolean
{
- const checkSetting = (userInfo: AvatarInfoUser, moderation: RoomModerationSettings) =>
+ const checkSetting = (userInfo: AvatarInfoUser, moderation: IRoomModerationSettings) =>
{
switch(moderation.allowKick)
{
@@ -438,7 +438,7 @@ export class AvatarInfoUtilities
private static canBeBanned(userInfo: AvatarInfoUser): boolean
{
- const checkSetting = (userInfo: AvatarInfoUser, moderation: RoomModerationSettings) =>
+ const checkSetting = (userInfo: AvatarInfoUser, moderation: IRoomModerationSettings) =>
{
switch(moderation.allowBan)
{
diff --git a/src/api/room/widgets/ChatBubbleMessage.ts b/src/api/room/widgets/ChatBubbleMessage.ts
index cef0ff27..c9cede33 100644
--- a/src/api/room/widgets/ChatBubbleMessage.ts
+++ b/src/api/room/widgets/ChatBubbleMessage.ts
@@ -8,7 +8,6 @@ export class ChatBubbleMessage
public width: number = 0;
public height: number = 0;
public elementRef: HTMLDivElement = null;
- public visible: boolean = false;
public skipMovement: boolean = false;
private _top: number = 0;
diff --git a/src/api/room/widgets/GetDiskColor.ts b/src/api/room/widgets/GetDiskColor.ts
new file mode 100644
index 00000000..989f2949
--- /dev/null
+++ b/src/api/room/widgets/GetDiskColor.ts
@@ -0,0 +1,37 @@
+const DISK_COLOR_RED_MIN: number = 130;
+const DISK_COLOR_RED_RANGE: number = 100;
+const DISK_COLOR_GREEN_MIN: number = 130;
+const DISK_COLOR_GREEN_RANGE: number = 100;
+const DISK_COLOR_BLUE_MIN: number = 130;
+const DISK_COLOR_BLUE_RANGE: number = 100;
+
+export const GetDiskColor = (name: string) =>
+{
+ let r: number = 0;
+ let g: number = 0;
+ let b: number = 0;
+ let index: number = 0;
+
+ while (index < name.length)
+ {
+ switch ((index % 3))
+ {
+ case 0:
+ r = (r + ( name.charCodeAt(index) * 37) );
+ break;
+ case 1:
+ g = (g + ( name.charCodeAt(index) * 37) );
+ break;
+ case 2:
+ b = (b + ( name.charCodeAt(index) * 37) );
+ break;
+ }
+ index++;
+ }
+
+ r = ((r % DISK_COLOR_RED_RANGE) + DISK_COLOR_RED_MIN);
+ g = ((g % DISK_COLOR_GREEN_RANGE) + DISK_COLOR_GREEN_MIN);
+ b = ((b % DISK_COLOR_BLUE_RANGE) + DISK_COLOR_BLUE_MIN);
+
+ return `rgb(${ r },${ g },${ b })`;
+}
diff --git a/src/api/room/widgets/ICraftingIngredient.ts b/src/api/room/widgets/ICraftingIngredient.ts
new file mode 100644
index 00000000..cb2b0311
--- /dev/null
+++ b/src/api/room/widgets/ICraftingIngredient.ts
@@ -0,0 +1,6 @@
+export interface ICraftingIngredient
+{
+ name: string;
+ iconUrl: string;
+ count: number;
+}
diff --git a/src/api/room/widgets/ICraftingRecipe.ts b/src/api/room/widgets/ICraftingRecipe.ts
new file mode 100644
index 00000000..dd99291f
--- /dev/null
+++ b/src/api/room/widgets/ICraftingRecipe.ts
@@ -0,0 +1,6 @@
+export interface ICraftingRecipe
+{
+ name: string;
+ localizedName: string;
+ iconUrl: string;
+}
diff --git a/src/api/room/widgets/IPhotoData.ts b/src/api/room/widgets/IPhotoData.ts
index 05441767..9a7b846c 100644
--- a/src/api/room/widgets/IPhotoData.ts
+++ b/src/api/room/widgets/IPhotoData.ts
@@ -29,4 +29,14 @@ export interface IPhotoData
* photo image url
*/
w?: string;
-}
+
+ /**
+ * owner id
+ */
+ oi?: number;
+
+ /**
+ * owner name
+ */
+ o?: string;
+}
\ No newline at end of file
diff --git a/src/api/room/widgets/index.ts b/src/api/room/widgets/index.ts
index 14e561c3..c43d6aaa 100644
--- a/src/api/room/widgets/index.ts
+++ b/src/api/room/widgets/index.ts
@@ -10,7 +10,10 @@ export * from './ChatMessageTypeEnum';
export * from './DimmerFurnitureWidgetPresetItem';
export * from './DoChatsOverlap';
export * from './FurnitureDimmerUtilities';
+export * from './GetDiskColor';
export * from './IAvatarInfo';
+export * from './ICraftingIngredient';
+export * from './ICraftingRecipe';
export * from './IPhotoData';
export * from './MannequinUtilities';
export * from './PetSupplementEnum';
diff --git a/src/api/utils/ColorUtils.ts b/src/api/utils/ColorUtils.ts
index 9377255e..c32f8fba 100644
--- a/src/api/utils/ColorUtils.ts
+++ b/src/api/utils/ColorUtils.ts
@@ -8,19 +8,58 @@ export class ColorUtils
public static makeColorNumberHex(color: number): string
{
let val = color.toString(16);
- if(val.length < 6)
- {
- const diff = 6 - val.length;
- for(let i = 0; i < diff; i++)
- {
- val = '0' + val;
- }
- }
- return ( '#' + val);
+ return ( '#' + val.padStart(6, '0'));
}
public static convertFromHex(color: string): number
{
return parseInt(color.replace('#', ''), 16);
}
+
+ public static uintHexColor(color: number): string
+ {
+ const realColor = color >>>0;
+
+ return ColorUtils.makeColorHex(realColor.toString(16).substring(2));
+ }
+
+ /**
+ * Converts an integer format into an array of 8-bit values
+ * @param {number} value value in integer format
+ * @returns {Array} 8-bit values
+ */
+ public static int_to_8BitVals(value: number): [number, number, number, number]
+ {
+ const val1 = ((value >> 24) & 0xFF)
+ const val2 = ((value >> 16) & 0xFF);
+ const val3 = ((value >> 8) & 0xFF);
+ const val4 = (value & 0xFF);
+
+ return [ val1, val2, val3, val4 ];
+ }
+
+ /**
+ * Combines 4 8-bit values into a 32-bit integer. Values are combined in
+ * in the order of the parameters
+ * @param val1
+ * @param val2
+ * @param val3
+ * @param val4
+ * @returns 32-bit integer of combined values
+ */
+ public static eight_bitVals_to_int(val1: number, val2: number, val3: number, val4: number): number
+ {
+ return (((val1) << 24) + ((val2) << 16) + ((val3) << 8) + (val4| 0));
+ }
+
+ public static int2rgb(color: number): string
+ {
+ color >>>= 0;
+ const b = color & 0xFF;
+ const g = (color & 0xFF00) >>> 8;
+ const r = (color & 0xFF0000) >>> 16;
+ const a = ((color & 0xFF000000) >>> 24) / 255;
+
+ return 'rgba(' + [ r, g, b, 1 ].join(',') + ')';
+ }
}
diff --git a/src/api/utils/GetLocalStorage.ts b/src/api/utils/GetLocalStorage.ts
index e8ba878d..769df6d7 100644
--- a/src/api/utils/GetLocalStorage.ts
+++ b/src/api/utils/GetLocalStorage.ts
@@ -1 +1,11 @@
-export const GetLocalStorage = (key: string) => JSON.parse(window.localStorage.getItem(key)) as T ?? null;
+export const GetLocalStorage = (key: string) =>
+{
+ try
+ {
+ JSON.parse(window.localStorage.getItem(key)) as T ?? null
+ }
+ catch(e)
+ {
+ return null;
+ }
+}
diff --git a/src/api/utils/RoomChatFormatter.ts b/src/api/utils/RoomChatFormatter.ts
index 8da83aca..a24cdf57 100644
--- a/src/api/utils/RoomChatFormatter.ts
+++ b/src/api/utils/RoomChatFormatter.ts
@@ -1,5 +1,3 @@
-import * as joypixels from 'emoji-toolkit';
-
const allowedColours: Map = new Map();
allowedColours.set('r', 'red');
@@ -44,7 +42,7 @@ export const RoomChatFormatter = (content: string) =>
let result = '';
content = encodeHTML(content);
- content = (joypixels.shortnameToUnicode(content) as string)
+ //content = (joypixels.shortnameToUnicode(content) as string)
if(content.startsWith('@') && content.indexOf('@', 1) > -1)
{
diff --git a/src/assets/images/catalog/target-price.png b/src/assets/images/catalog/target-price.png
new file mode 100644
index 00000000..8639afd5
Binary files /dev/null and b/src/assets/images/catalog/target-price.png differ
diff --git a/src/assets/images/gamecenter/selectedIcon.png b/src/assets/images/gamecenter/selectedIcon.png
new file mode 100644
index 00000000..718e48b8
Binary files /dev/null and b/src/assets/images/gamecenter/selectedIcon.png differ
diff --git a/src/assets/images/infostand/disk-creator.png b/src/assets/images/infostand/disk-creator.png
new file mode 100644
index 00000000..c4e95c9d
Binary files /dev/null and b/src/assets/images/infostand/disk-creator.png differ
diff --git a/src/assets/images/infostand/disk-icon.png b/src/assets/images/infostand/disk-icon.png
new file mode 100644
index 00000000..9ee4ed83
Binary files /dev/null and b/src/assets/images/infostand/disk-icon.png differ
diff --git a/src/assets/images/mysterybox/chain_mysterybox_box_overlay.png b/src/assets/images/mysterybox/chain_mysterybox_box_overlay.png
new file mode 100644
index 00000000..5914aa5a
Binary files /dev/null and b/src/assets/images/mysterybox/chain_mysterybox_box_overlay.png differ
diff --git a/src/assets/images/mysterybox/key_overlay.png b/src/assets/images/mysterybox/key_overlay.png
new file mode 100644
index 00000000..8f8c2a5b
Binary files /dev/null and b/src/assets/images/mysterybox/key_overlay.png differ
diff --git a/src/assets/images/mysterybox/mystery_box.png b/src/assets/images/mysterybox/mystery_box.png
new file mode 100644
index 00000000..e85f966c
Binary files /dev/null and b/src/assets/images/mysterybox/mystery_box.png differ
diff --git a/src/assets/images/mysterybox/mystery_box_key.png b/src/assets/images/mysterybox/mystery_box_key.png
new file mode 100644
index 00000000..79b43dee
Binary files /dev/null and b/src/assets/images/mysterybox/mystery_box_key.png differ
diff --git a/src/assets/images/mysterytrophy/frank_mystery_trophy.png b/src/assets/images/mysterytrophy/frank_mystery_trophy.png
new file mode 100644
index 00000000..67bfeba7
Binary files /dev/null and b/src/assets/images/mysterytrophy/frank_mystery_trophy.png differ
diff --git a/src/assets/images/pets/pet-package/gnome.png b/src/assets/images/pets/pet-package/gnome.png
new file mode 100644
index 00000000..2c388280
Binary files /dev/null and b/src/assets/images/pets/pet-package/gnome.png differ
diff --git a/src/assets/images/pets/pet-package/leprechaun_box.png b/src/assets/images/pets/pet-package/leprechaun_box.png
new file mode 100644
index 00000000..1603eb86
Binary files /dev/null and b/src/assets/images/pets/pet-package/leprechaun_box.png differ
diff --git a/src/assets/images/pets/pet-package/petbox_epic.png b/src/assets/images/pets/pet-package/petbox_epic.png
new file mode 100644
index 00000000..e09ad774
Binary files /dev/null and b/src/assets/images/pets/pet-package/petbox_epic.png differ
diff --git a/src/assets/images/pets/pet-package/pterosaur_egg.png b/src/assets/images/pets/pet-package/pterosaur_egg.png
new file mode 100644
index 00000000..43ee1418
Binary files /dev/null and b/src/assets/images/pets/pet-package/pterosaur_egg.png differ
diff --git a/src/assets/images/pets/pet-package/val11_present.png b/src/assets/images/pets/pet-package/val11_present.png
new file mode 100644
index 00000000..3d371b5b
Binary files /dev/null and b/src/assets/images/pets/pet-package/val11_present.png differ
diff --git a/src/assets/images/pets/pet-package/velociraptor_egg.png b/src/assets/images/pets/pet-package/velociraptor_egg.png
new file mode 100644
index 00000000..242f0dfa
Binary files /dev/null and b/src/assets/images/pets/pet-package/velociraptor_egg.png differ
diff --git a/src/assets/images/prize/prize_background.png b/src/assets/images/prize/prize_background.png
new file mode 100644
index 00000000..ec9c0306
Binary files /dev/null and b/src/assets/images/prize/prize_background.png differ
diff --git a/src/assets/images/room-widgets/playlist-editor/disk_2.png b/src/assets/images/room-widgets/playlist-editor/disk_2.png
new file mode 100644
index 00000000..30330209
Binary files /dev/null and b/src/assets/images/room-widgets/playlist-editor/disk_2.png differ
diff --git a/src/assets/images/room-widgets/playlist-editor/disk_image.png b/src/assets/images/room-widgets/playlist-editor/disk_image.png
new file mode 100644
index 00000000..7a8ab453
Binary files /dev/null and b/src/assets/images/room-widgets/playlist-editor/disk_image.png differ
diff --git a/src/assets/images/room-widgets/playlist-editor/move.png b/src/assets/images/room-widgets/playlist-editor/move.png
new file mode 100644
index 00000000..9d1635d8
Binary files /dev/null and b/src/assets/images/room-widgets/playlist-editor/move.png differ
diff --git a/src/assets/images/room-widgets/playlist-editor/pause-btn.png b/src/assets/images/room-widgets/playlist-editor/pause-btn.png
new file mode 100644
index 00000000..900f99b4
Binary files /dev/null and b/src/assets/images/room-widgets/playlist-editor/pause-btn.png differ
diff --git a/src/assets/images/room-widgets/playlist-editor/pause.png b/src/assets/images/room-widgets/playlist-editor/pause.png
new file mode 100644
index 00000000..ec5fef47
Binary files /dev/null and b/src/assets/images/room-widgets/playlist-editor/pause.png differ
diff --git a/src/assets/images/room-widgets/playlist-editor/playing.png b/src/assets/images/room-widgets/playlist-editor/playing.png
new file mode 100644
index 00000000..0e3449d1
Binary files /dev/null and b/src/assets/images/room-widgets/playlist-editor/playing.png differ
diff --git a/src/assets/images/room-widgets/playlist-editor/preview.png b/src/assets/images/room-widgets/playlist-editor/preview.png
new file mode 100644
index 00000000..160f0bef
Binary files /dev/null and b/src/assets/images/room-widgets/playlist-editor/preview.png differ
diff --git a/src/assets/styles/bootstrap/_functions.scss b/src/assets/styles/bootstrap/_functions.scss
index e0039550..977f0eed 100644
--- a/src/assets/styles/bootstrap/_functions.scss
+++ b/src/assets/styles/bootstrap/_functions.scss
@@ -192,7 +192,7 @@ $_luminance-list: .0008 .001 .0011 .0013 .0015 .0017 .002 .0022 .0025 .0027 .003
// Return opaque color
// opaque(#fff, rgba(0, 0, 0, .5)) => #808080
@function opaque($background, $foreground) {
- @return mix(rgba($foreground, 1), $background, opacity($foreground) * 100);
+ @return mix(rgba($foreground, 1), $background, opacity($foreground) * 100%);
}
// scss-docs-start color-functions
@@ -208,7 +208,7 @@ $_luminance-list: .0008 .001 .0011 .0013 .0015 .0017 .002 .0022 .0025 .0027 .003
// Shade the color if the weight is positive, else tint it
@function shift-color($color, $weight) {
- @return if($weight > 0, shade-color($color, $weight), tint-color($color, -$weight));
+ @return if($weight * 1% > 0, shade-color($color, $weight), tint-color($color, -$weight));
}
// scss-docs-end color-functions
diff --git a/src/assets/styles/fontawesome/_animated.scss b/src/assets/styles/fontawesome/_animated.scss
deleted file mode 100644
index 7c7c0e17..00000000
--- a/src/assets/styles/fontawesome/_animated.scss
+++ /dev/null
@@ -1,20 +0,0 @@
-// Animated Icons
-// --------------------------
-
-.#{$fa-css-prefix}-spin {
- animation: fa-spin 2s infinite linear;
-}
-
-.#{$fa-css-prefix}-pulse {
- animation: fa-spin 1s infinite steps(8);
-}
-
-@keyframes fa-spin {
- 0% {
- transform: rotate(0deg);
- }
-
- 100% {
- transform: rotate(360deg);
- }
-}
diff --git a/src/assets/styles/fontawesome/_bordered-pulled.scss b/src/assets/styles/fontawesome/_bordered-pulled.scss
deleted file mode 100644
index c8c4274c..00000000
--- a/src/assets/styles/fontawesome/_bordered-pulled.scss
+++ /dev/null
@@ -1,20 +0,0 @@
-// Bordered & Pulled
-// -------------------------
-
-.#{$fa-css-prefix}-border {
- border: solid .08em $fa-border-color;
- border-radius: .1em;
- padding: .2em .25em .15em;
-}
-
-.#{$fa-css-prefix}-pull-left { float: left; }
-.#{$fa-css-prefix}-pull-right { float: right; }
-
-.#{$fa-css-prefix},
-.fas,
-.far,
-.fal,
-.fab {
- &.#{$fa-css-prefix}-pull-left { margin-right: .3em; }
- &.#{$fa-css-prefix}-pull-right { margin-left: .3em; }
-}
diff --git a/src/assets/styles/fontawesome/_core.scss b/src/assets/styles/fontawesome/_core.scss
deleted file mode 100644
index cbd4cf7c..00000000
--- a/src/assets/styles/fontawesome/_core.scss
+++ /dev/null
@@ -1,21 +0,0 @@
-// Base Class Definition
-// -------------------------
-
-.#{$fa-css-prefix},
-.fas,
-.far,
-.fal,
-.fad,
-.fab {
- -moz-osx-font-smoothing: grayscale;
- -webkit-font-smoothing: antialiased;
- display: inline-block;
- font-style: normal;
- font-variant: normal;
- text-rendering: auto;
- line-height: 1;
-}
-
-%fa-icon {
- @include fa-icon;
-}
diff --git a/src/assets/styles/fontawesome/_fixed-width.scss b/src/assets/styles/fontawesome/_fixed-width.scss
deleted file mode 100644
index 970641ff..00000000
--- a/src/assets/styles/fontawesome/_fixed-width.scss
+++ /dev/null
@@ -1,6 +0,0 @@
-// Fixed Width Icons
-// -------------------------
-.#{$fa-css-prefix}-fw {
- text-align: center;
- width: $fa-fw-width;
-}
diff --git a/src/assets/styles/fontawesome/_icons.scss b/src/assets/styles/fontawesome/_icons.scss
deleted file mode 100644
index f8dc0a08..00000000
--- a/src/assets/styles/fontawesome/_icons.scss
+++ /dev/null
@@ -1,1461 +0,0 @@
-/* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen
-readers do not read off random characters that represent icons */
-
-.#{$fa-css-prefix}-500px:before { content: fa-content($fa-var-500px); }
-.#{$fa-css-prefix}-accessible-icon:before { content: fa-content($fa-var-accessible-icon); }
-.#{$fa-css-prefix}-accusoft:before { content: fa-content($fa-var-accusoft); }
-.#{$fa-css-prefix}-acquisitions-incorporated:before { content: fa-content($fa-var-acquisitions-incorporated); }
-.#{$fa-css-prefix}-ad:before { content: fa-content($fa-var-ad); }
-.#{$fa-css-prefix}-address-book:before { content: fa-content($fa-var-address-book); }
-.#{$fa-css-prefix}-address-card:before { content: fa-content($fa-var-address-card); }
-.#{$fa-css-prefix}-adjust:before { content: fa-content($fa-var-adjust); }
-.#{$fa-css-prefix}-adn:before { content: fa-content($fa-var-adn); }
-.#{$fa-css-prefix}-adversal:before { content: fa-content($fa-var-adversal); }
-.#{$fa-css-prefix}-affiliatetheme:before { content: fa-content($fa-var-affiliatetheme); }
-.#{$fa-css-prefix}-air-freshener:before { content: fa-content($fa-var-air-freshener); }
-.#{$fa-css-prefix}-airbnb:before { content: fa-content($fa-var-airbnb); }
-.#{$fa-css-prefix}-algolia:before { content: fa-content($fa-var-algolia); }
-.#{$fa-css-prefix}-align-center:before { content: fa-content($fa-var-align-center); }
-.#{$fa-css-prefix}-align-justify:before { content: fa-content($fa-var-align-justify); }
-.#{$fa-css-prefix}-align-left:before { content: fa-content($fa-var-align-left); }
-.#{$fa-css-prefix}-align-right:before { content: fa-content($fa-var-align-right); }
-.#{$fa-css-prefix}-alipay:before { content: fa-content($fa-var-alipay); }
-.#{$fa-css-prefix}-allergies:before { content: fa-content($fa-var-allergies); }
-.#{$fa-css-prefix}-amazon:before { content: fa-content($fa-var-amazon); }
-.#{$fa-css-prefix}-amazon-pay:before { content: fa-content($fa-var-amazon-pay); }
-.#{$fa-css-prefix}-ambulance:before { content: fa-content($fa-var-ambulance); }
-.#{$fa-css-prefix}-american-sign-language-interpreting:before { content: fa-content($fa-var-american-sign-language-interpreting); }
-.#{$fa-css-prefix}-amilia:before { content: fa-content($fa-var-amilia); }
-.#{$fa-css-prefix}-anchor:before { content: fa-content($fa-var-anchor); }
-.#{$fa-css-prefix}-android:before { content: fa-content($fa-var-android); }
-.#{$fa-css-prefix}-angellist:before { content: fa-content($fa-var-angellist); }
-.#{$fa-css-prefix}-angle-double-down:before { content: fa-content($fa-var-angle-double-down); }
-.#{$fa-css-prefix}-angle-double-left:before { content: fa-content($fa-var-angle-double-left); }
-.#{$fa-css-prefix}-angle-double-right:before { content: fa-content($fa-var-angle-double-right); }
-.#{$fa-css-prefix}-angle-double-up:before { content: fa-content($fa-var-angle-double-up); }
-.#{$fa-css-prefix}-angle-down:before { content: fa-content($fa-var-angle-down); }
-.#{$fa-css-prefix}-angle-left:before { content: fa-content($fa-var-angle-left); }
-.#{$fa-css-prefix}-angle-right:before { content: fa-content($fa-var-angle-right); }
-.#{$fa-css-prefix}-angle-up:before { content: fa-content($fa-var-angle-up); }
-.#{$fa-css-prefix}-angry:before { content: fa-content($fa-var-angry); }
-.#{$fa-css-prefix}-angrycreative:before { content: fa-content($fa-var-angrycreative); }
-.#{$fa-css-prefix}-angular:before { content: fa-content($fa-var-angular); }
-.#{$fa-css-prefix}-ankh:before { content: fa-content($fa-var-ankh); }
-.#{$fa-css-prefix}-app-store:before { content: fa-content($fa-var-app-store); }
-.#{$fa-css-prefix}-app-store-ios:before { content: fa-content($fa-var-app-store-ios); }
-.#{$fa-css-prefix}-apper:before { content: fa-content($fa-var-apper); }
-.#{$fa-css-prefix}-apple:before { content: fa-content($fa-var-apple); }
-.#{$fa-css-prefix}-apple-alt:before { content: fa-content($fa-var-apple-alt); }
-.#{$fa-css-prefix}-apple-pay:before { content: fa-content($fa-var-apple-pay); }
-.#{$fa-css-prefix}-archive:before { content: fa-content($fa-var-archive); }
-.#{$fa-css-prefix}-archway:before { content: fa-content($fa-var-archway); }
-.#{$fa-css-prefix}-arrow-alt-circle-down:before { content: fa-content($fa-var-arrow-alt-circle-down); }
-.#{$fa-css-prefix}-arrow-alt-circle-left:before { content: fa-content($fa-var-arrow-alt-circle-left); }
-.#{$fa-css-prefix}-arrow-alt-circle-right:before { content: fa-content($fa-var-arrow-alt-circle-right); }
-.#{$fa-css-prefix}-arrow-alt-circle-up:before { content: fa-content($fa-var-arrow-alt-circle-up); }
-.#{$fa-css-prefix}-arrow-circle-down:before { content: fa-content($fa-var-arrow-circle-down); }
-.#{$fa-css-prefix}-arrow-circle-left:before { content: fa-content($fa-var-arrow-circle-left); }
-.#{$fa-css-prefix}-arrow-circle-right:before { content: fa-content($fa-var-arrow-circle-right); }
-.#{$fa-css-prefix}-arrow-circle-up:before { content: fa-content($fa-var-arrow-circle-up); }
-.#{$fa-css-prefix}-arrow-down:before { content: fa-content($fa-var-arrow-down); }
-.#{$fa-css-prefix}-arrow-left:before { content: fa-content($fa-var-arrow-left); }
-.#{$fa-css-prefix}-arrow-right:before { content: fa-content($fa-var-arrow-right); }
-.#{$fa-css-prefix}-arrow-up:before { content: fa-content($fa-var-arrow-up); }
-.#{$fa-css-prefix}-arrows-alt:before { content: fa-content($fa-var-arrows-alt); }
-.#{$fa-css-prefix}-arrows-alt-h:before { content: fa-content($fa-var-arrows-alt-h); }
-.#{$fa-css-prefix}-arrows-alt-v:before { content: fa-content($fa-var-arrows-alt-v); }
-.#{$fa-css-prefix}-artstation:before { content: fa-content($fa-var-artstation); }
-.#{$fa-css-prefix}-assistive-listening-systems:before { content: fa-content($fa-var-assistive-listening-systems); }
-.#{$fa-css-prefix}-asterisk:before { content: fa-content($fa-var-asterisk); }
-.#{$fa-css-prefix}-asymmetrik:before { content: fa-content($fa-var-asymmetrik); }
-.#{$fa-css-prefix}-at:before { content: fa-content($fa-var-at); }
-.#{$fa-css-prefix}-atlas:before { content: fa-content($fa-var-atlas); }
-.#{$fa-css-prefix}-atlassian:before { content: fa-content($fa-var-atlassian); }
-.#{$fa-css-prefix}-atom:before { content: fa-content($fa-var-atom); }
-.#{$fa-css-prefix}-audible:before { content: fa-content($fa-var-audible); }
-.#{$fa-css-prefix}-audio-description:before { content: fa-content($fa-var-audio-description); }
-.#{$fa-css-prefix}-autoprefixer:before { content: fa-content($fa-var-autoprefixer); }
-.#{$fa-css-prefix}-avianex:before { content: fa-content($fa-var-avianex); }
-.#{$fa-css-prefix}-aviato:before { content: fa-content($fa-var-aviato); }
-.#{$fa-css-prefix}-award:before { content: fa-content($fa-var-award); }
-.#{$fa-css-prefix}-aws:before { content: fa-content($fa-var-aws); }
-.#{$fa-css-prefix}-baby:before { content: fa-content($fa-var-baby); }
-.#{$fa-css-prefix}-baby-carriage:before { content: fa-content($fa-var-baby-carriage); }
-.#{$fa-css-prefix}-backspace:before { content: fa-content($fa-var-backspace); }
-.#{$fa-css-prefix}-backward:before { content: fa-content($fa-var-backward); }
-.#{$fa-css-prefix}-bacon:before { content: fa-content($fa-var-bacon); }
-.#{$fa-css-prefix}-bacteria:before { content: fa-content($fa-var-bacteria); }
-.#{$fa-css-prefix}-bacterium:before { content: fa-content($fa-var-bacterium); }
-.#{$fa-css-prefix}-bahai:before { content: fa-content($fa-var-bahai); }
-.#{$fa-css-prefix}-balance-scale:before { content: fa-content($fa-var-balance-scale); }
-.#{$fa-css-prefix}-balance-scale-left:before { content: fa-content($fa-var-balance-scale-left); }
-.#{$fa-css-prefix}-balance-scale-right:before { content: fa-content($fa-var-balance-scale-right); }
-.#{$fa-css-prefix}-ban:before { content: fa-content($fa-var-ban); }
-.#{$fa-css-prefix}-band-aid:before { content: fa-content($fa-var-band-aid); }
-.#{$fa-css-prefix}-bandcamp:before { content: fa-content($fa-var-bandcamp); }
-.#{$fa-css-prefix}-barcode:before { content: fa-content($fa-var-barcode); }
-.#{$fa-css-prefix}-bars:before { content: fa-content($fa-var-bars); }
-.#{$fa-css-prefix}-baseball-ball:before { content: fa-content($fa-var-baseball-ball); }
-.#{$fa-css-prefix}-basketball-ball:before { content: fa-content($fa-var-basketball-ball); }
-.#{$fa-css-prefix}-bath:before { content: fa-content($fa-var-bath); }
-.#{$fa-css-prefix}-battery-empty:before { content: fa-content($fa-var-battery-empty); }
-.#{$fa-css-prefix}-battery-full:before { content: fa-content($fa-var-battery-full); }
-.#{$fa-css-prefix}-battery-half:before { content: fa-content($fa-var-battery-half); }
-.#{$fa-css-prefix}-battery-quarter:before { content: fa-content($fa-var-battery-quarter); }
-.#{$fa-css-prefix}-battery-three-quarters:before { content: fa-content($fa-var-battery-three-quarters); }
-.#{$fa-css-prefix}-battle-net:before { content: fa-content($fa-var-battle-net); }
-.#{$fa-css-prefix}-bed:before { content: fa-content($fa-var-bed); }
-.#{$fa-css-prefix}-beer:before { content: fa-content($fa-var-beer); }
-.#{$fa-css-prefix}-behance:before { content: fa-content($fa-var-behance); }
-.#{$fa-css-prefix}-behance-square:before { content: fa-content($fa-var-behance-square); }
-.#{$fa-css-prefix}-bell:before { content: fa-content($fa-var-bell); }
-.#{$fa-css-prefix}-bell-slash:before { content: fa-content($fa-var-bell-slash); }
-.#{$fa-css-prefix}-bezier-curve:before { content: fa-content($fa-var-bezier-curve); }
-.#{$fa-css-prefix}-bible:before { content: fa-content($fa-var-bible); }
-.#{$fa-css-prefix}-bicycle:before { content: fa-content($fa-var-bicycle); }
-.#{$fa-css-prefix}-biking:before { content: fa-content($fa-var-biking); }
-.#{$fa-css-prefix}-bimobject:before { content: fa-content($fa-var-bimobject); }
-.#{$fa-css-prefix}-binoculars:before { content: fa-content($fa-var-binoculars); }
-.#{$fa-css-prefix}-biohazard:before { content: fa-content($fa-var-biohazard); }
-.#{$fa-css-prefix}-birthday-cake:before { content: fa-content($fa-var-birthday-cake); }
-.#{$fa-css-prefix}-bitbucket:before { content: fa-content($fa-var-bitbucket); }
-.#{$fa-css-prefix}-bitcoin:before { content: fa-content($fa-var-bitcoin); }
-.#{$fa-css-prefix}-bity:before { content: fa-content($fa-var-bity); }
-.#{$fa-css-prefix}-black-tie:before { content: fa-content($fa-var-black-tie); }
-.#{$fa-css-prefix}-blackberry:before { content: fa-content($fa-var-blackberry); }
-.#{$fa-css-prefix}-blender:before { content: fa-content($fa-var-blender); }
-.#{$fa-css-prefix}-blender-phone:before { content: fa-content($fa-var-blender-phone); }
-.#{$fa-css-prefix}-blind:before { content: fa-content($fa-var-blind); }
-.#{$fa-css-prefix}-blog:before { content: fa-content($fa-var-blog); }
-.#{$fa-css-prefix}-blogger:before { content: fa-content($fa-var-blogger); }
-.#{$fa-css-prefix}-blogger-b:before { content: fa-content($fa-var-blogger-b); }
-.#{$fa-css-prefix}-bluetooth:before { content: fa-content($fa-var-bluetooth); }
-.#{$fa-css-prefix}-bluetooth-b:before { content: fa-content($fa-var-bluetooth-b); }
-.#{$fa-css-prefix}-bold:before { content: fa-content($fa-var-bold); }
-.#{$fa-css-prefix}-bolt:before { content: fa-content($fa-var-bolt); }
-.#{$fa-css-prefix}-bomb:before { content: fa-content($fa-var-bomb); }
-.#{$fa-css-prefix}-bone:before { content: fa-content($fa-var-bone); }
-.#{$fa-css-prefix}-bong:before { content: fa-content($fa-var-bong); }
-.#{$fa-css-prefix}-book:before { content: fa-content($fa-var-book); }
-.#{$fa-css-prefix}-book-dead:before { content: fa-content($fa-var-book-dead); }
-.#{$fa-css-prefix}-book-medical:before { content: fa-content($fa-var-book-medical); }
-.#{$fa-css-prefix}-book-open:before { content: fa-content($fa-var-book-open); }
-.#{$fa-css-prefix}-book-reader:before { content: fa-content($fa-var-book-reader); }
-.#{$fa-css-prefix}-bookmark:before { content: fa-content($fa-var-bookmark); }
-.#{$fa-css-prefix}-bootstrap:before { content: fa-content($fa-var-bootstrap); }
-.#{$fa-css-prefix}-border-all:before { content: fa-content($fa-var-border-all); }
-.#{$fa-css-prefix}-border-none:before { content: fa-content($fa-var-border-none); }
-.#{$fa-css-prefix}-border-style:before { content: fa-content($fa-var-border-style); }
-.#{$fa-css-prefix}-bowling-ball:before { content: fa-content($fa-var-bowling-ball); }
-.#{$fa-css-prefix}-box:before { content: fa-content($fa-var-box); }
-.#{$fa-css-prefix}-box-open:before { content: fa-content($fa-var-box-open); }
-.#{$fa-css-prefix}-box-tissue:before { content: fa-content($fa-var-box-tissue); }
-.#{$fa-css-prefix}-boxes:before { content: fa-content($fa-var-boxes); }
-.#{$fa-css-prefix}-braille:before { content: fa-content($fa-var-braille); }
-.#{$fa-css-prefix}-brain:before { content: fa-content($fa-var-brain); }
-.#{$fa-css-prefix}-bread-slice:before { content: fa-content($fa-var-bread-slice); }
-.#{$fa-css-prefix}-briefcase:before { content: fa-content($fa-var-briefcase); }
-.#{$fa-css-prefix}-briefcase-medical:before { content: fa-content($fa-var-briefcase-medical); }
-.#{$fa-css-prefix}-broadcast-tower:before { content: fa-content($fa-var-broadcast-tower); }
-.#{$fa-css-prefix}-broom:before { content: fa-content($fa-var-broom); }
-.#{$fa-css-prefix}-brush:before { content: fa-content($fa-var-brush); }
-.#{$fa-css-prefix}-btc:before { content: fa-content($fa-var-btc); }
-.#{$fa-css-prefix}-buffer:before { content: fa-content($fa-var-buffer); }
-.#{$fa-css-prefix}-bug:before { content: fa-content($fa-var-bug); }
-.#{$fa-css-prefix}-building:before { content: fa-content($fa-var-building); }
-.#{$fa-css-prefix}-bullhorn:before { content: fa-content($fa-var-bullhorn); }
-.#{$fa-css-prefix}-bullseye:before { content: fa-content($fa-var-bullseye); }
-.#{$fa-css-prefix}-burn:before { content: fa-content($fa-var-burn); }
-.#{$fa-css-prefix}-buromobelexperte:before { content: fa-content($fa-var-buromobelexperte); }
-.#{$fa-css-prefix}-bus:before { content: fa-content($fa-var-bus); }
-.#{$fa-css-prefix}-bus-alt:before { content: fa-content($fa-var-bus-alt); }
-.#{$fa-css-prefix}-business-time:before { content: fa-content($fa-var-business-time); }
-.#{$fa-css-prefix}-buy-n-large:before { content: fa-content($fa-var-buy-n-large); }
-.#{$fa-css-prefix}-buysellads:before { content: fa-content($fa-var-buysellads); }
-.#{$fa-css-prefix}-calculator:before { content: fa-content($fa-var-calculator); }
-.#{$fa-css-prefix}-calendar:before { content: fa-content($fa-var-calendar); }
-.#{$fa-css-prefix}-calendar-alt:before { content: fa-content($fa-var-calendar-alt); }
-.#{$fa-css-prefix}-calendar-check:before { content: fa-content($fa-var-calendar-check); }
-.#{$fa-css-prefix}-calendar-day:before { content: fa-content($fa-var-calendar-day); }
-.#{$fa-css-prefix}-calendar-minus:before { content: fa-content($fa-var-calendar-minus); }
-.#{$fa-css-prefix}-calendar-plus:before { content: fa-content($fa-var-calendar-plus); }
-.#{$fa-css-prefix}-calendar-times:before { content: fa-content($fa-var-calendar-times); }
-.#{$fa-css-prefix}-calendar-week:before { content: fa-content($fa-var-calendar-week); }
-.#{$fa-css-prefix}-camera:before { content: fa-content($fa-var-camera); }
-.#{$fa-css-prefix}-camera-retro:before { content: fa-content($fa-var-camera-retro); }
-.#{$fa-css-prefix}-campground:before { content: fa-content($fa-var-campground); }
-.#{$fa-css-prefix}-canadian-maple-leaf:before { content: fa-content($fa-var-canadian-maple-leaf); }
-.#{$fa-css-prefix}-candy-cane:before { content: fa-content($fa-var-candy-cane); }
-.#{$fa-css-prefix}-cannabis:before { content: fa-content($fa-var-cannabis); }
-.#{$fa-css-prefix}-capsules:before { content: fa-content($fa-var-capsules); }
-.#{$fa-css-prefix}-car:before { content: fa-content($fa-var-car); }
-.#{$fa-css-prefix}-car-alt:before { content: fa-content($fa-var-car-alt); }
-.#{$fa-css-prefix}-car-battery:before { content: fa-content($fa-var-car-battery); }
-.#{$fa-css-prefix}-car-crash:before { content: fa-content($fa-var-car-crash); }
-.#{$fa-css-prefix}-car-side:before { content: fa-content($fa-var-car-side); }
-.#{$fa-css-prefix}-caravan:before { content: fa-content($fa-var-caravan); }
-.#{$fa-css-prefix}-caret-down:before { content: fa-content($fa-var-caret-down); }
-.#{$fa-css-prefix}-caret-left:before { content: fa-content($fa-var-caret-left); }
-.#{$fa-css-prefix}-caret-right:before { content: fa-content($fa-var-caret-right); }
-.#{$fa-css-prefix}-caret-square-down:before { content: fa-content($fa-var-caret-square-down); }
-.#{$fa-css-prefix}-caret-square-left:before { content: fa-content($fa-var-caret-square-left); }
-.#{$fa-css-prefix}-caret-square-right:before { content: fa-content($fa-var-caret-square-right); }
-.#{$fa-css-prefix}-caret-square-up:before { content: fa-content($fa-var-caret-square-up); }
-.#{$fa-css-prefix}-caret-up:before { content: fa-content($fa-var-caret-up); }
-.#{$fa-css-prefix}-carrot:before { content: fa-content($fa-var-carrot); }
-.#{$fa-css-prefix}-cart-arrow-down:before { content: fa-content($fa-var-cart-arrow-down); }
-.#{$fa-css-prefix}-cart-plus:before { content: fa-content($fa-var-cart-plus); }
-.#{$fa-css-prefix}-cash-register:before { content: fa-content($fa-var-cash-register); }
-.#{$fa-css-prefix}-cat:before { content: fa-content($fa-var-cat); }
-.#{$fa-css-prefix}-cc-amazon-pay:before { content: fa-content($fa-var-cc-amazon-pay); }
-.#{$fa-css-prefix}-cc-amex:before { content: fa-content($fa-var-cc-amex); }
-.#{$fa-css-prefix}-cc-apple-pay:before { content: fa-content($fa-var-cc-apple-pay); }
-.#{$fa-css-prefix}-cc-diners-club:before { content: fa-content($fa-var-cc-diners-club); }
-.#{$fa-css-prefix}-cc-discover:before { content: fa-content($fa-var-cc-discover); }
-.#{$fa-css-prefix}-cc-jcb:before { content: fa-content($fa-var-cc-jcb); }
-.#{$fa-css-prefix}-cc-mastercard:before { content: fa-content($fa-var-cc-mastercard); }
-.#{$fa-css-prefix}-cc-paypal:before { content: fa-content($fa-var-cc-paypal); }
-.#{$fa-css-prefix}-cc-stripe:before { content: fa-content($fa-var-cc-stripe); }
-.#{$fa-css-prefix}-cc-visa:before { content: fa-content($fa-var-cc-visa); }
-.#{$fa-css-prefix}-centercode:before { content: fa-content($fa-var-centercode); }
-.#{$fa-css-prefix}-centos:before { content: fa-content($fa-var-centos); }
-.#{$fa-css-prefix}-certificate:before { content: fa-content($fa-var-certificate); }
-.#{$fa-css-prefix}-chair:before { content: fa-content($fa-var-chair); }
-.#{$fa-css-prefix}-chalkboard:before { content: fa-content($fa-var-chalkboard); }
-.#{$fa-css-prefix}-chalkboard-teacher:before { content: fa-content($fa-var-chalkboard-teacher); }
-.#{$fa-css-prefix}-charging-station:before { content: fa-content($fa-var-charging-station); }
-.#{$fa-css-prefix}-chart-area:before { content: fa-content($fa-var-chart-area); }
-.#{$fa-css-prefix}-chart-bar:before { content: fa-content($fa-var-chart-bar); }
-.#{$fa-css-prefix}-chart-line:before { content: fa-content($fa-var-chart-line); }
-.#{$fa-css-prefix}-chart-pie:before { content: fa-content($fa-var-chart-pie); }
-.#{$fa-css-prefix}-check:before { content: fa-content($fa-var-check); }
-.#{$fa-css-prefix}-check-circle:before { content: fa-content($fa-var-check-circle); }
-.#{$fa-css-prefix}-check-double:before { content: fa-content($fa-var-check-double); }
-.#{$fa-css-prefix}-check-square:before { content: fa-content($fa-var-check-square); }
-.#{$fa-css-prefix}-cheese:before { content: fa-content($fa-var-cheese); }
-.#{$fa-css-prefix}-chess:before { content: fa-content($fa-var-chess); }
-.#{$fa-css-prefix}-chess-bishop:before { content: fa-content($fa-var-chess-bishop); }
-.#{$fa-css-prefix}-chess-board:before { content: fa-content($fa-var-chess-board); }
-.#{$fa-css-prefix}-chess-king:before { content: fa-content($fa-var-chess-king); }
-.#{$fa-css-prefix}-chess-knight:before { content: fa-content($fa-var-chess-knight); }
-.#{$fa-css-prefix}-chess-pawn:before { content: fa-content($fa-var-chess-pawn); }
-.#{$fa-css-prefix}-chess-queen:before { content: fa-content($fa-var-chess-queen); }
-.#{$fa-css-prefix}-chess-rook:before { content: fa-content($fa-var-chess-rook); }
-.#{$fa-css-prefix}-chevron-circle-down:before { content: fa-content($fa-var-chevron-circle-down); }
-.#{$fa-css-prefix}-chevron-circle-left:before { content: fa-content($fa-var-chevron-circle-left); }
-.#{$fa-css-prefix}-chevron-circle-right:before { content: fa-content($fa-var-chevron-circle-right); }
-.#{$fa-css-prefix}-chevron-circle-up:before { content: fa-content($fa-var-chevron-circle-up); }
-.#{$fa-css-prefix}-chevron-down:before { content: fa-content($fa-var-chevron-down); }
-.#{$fa-css-prefix}-chevron-left:before { content: fa-content($fa-var-chevron-left); }
-.#{$fa-css-prefix}-chevron-right:before { content: fa-content($fa-var-chevron-right); }
-.#{$fa-css-prefix}-chevron-up:before { content: fa-content($fa-var-chevron-up); }
-.#{$fa-css-prefix}-child:before { content: fa-content($fa-var-child); }
-.#{$fa-css-prefix}-chrome:before { content: fa-content($fa-var-chrome); }
-.#{$fa-css-prefix}-chromecast:before { content: fa-content($fa-var-chromecast); }
-.#{$fa-css-prefix}-church:before { content: fa-content($fa-var-church); }
-.#{$fa-css-prefix}-circle:before { content: fa-content($fa-var-circle); }
-.#{$fa-css-prefix}-circle-notch:before { content: fa-content($fa-var-circle-notch); }
-.#{$fa-css-prefix}-city:before { content: fa-content($fa-var-city); }
-.#{$fa-css-prefix}-clinic-medical:before { content: fa-content($fa-var-clinic-medical); }
-.#{$fa-css-prefix}-clipboard:before { content: fa-content($fa-var-clipboard); }
-.#{$fa-css-prefix}-clipboard-check:before { content: fa-content($fa-var-clipboard-check); }
-.#{$fa-css-prefix}-clipboard-list:before { content: fa-content($fa-var-clipboard-list); }
-.#{$fa-css-prefix}-clock:before { content: fa-content($fa-var-clock); }
-.#{$fa-css-prefix}-clone:before { content: fa-content($fa-var-clone); }
-.#{$fa-css-prefix}-closed-captioning:before { content: fa-content($fa-var-closed-captioning); }
-.#{$fa-css-prefix}-cloud:before { content: fa-content($fa-var-cloud); }
-.#{$fa-css-prefix}-cloud-download-alt:before { content: fa-content($fa-var-cloud-download-alt); }
-.#{$fa-css-prefix}-cloud-meatball:before { content: fa-content($fa-var-cloud-meatball); }
-.#{$fa-css-prefix}-cloud-moon:before { content: fa-content($fa-var-cloud-moon); }
-.#{$fa-css-prefix}-cloud-moon-rain:before { content: fa-content($fa-var-cloud-moon-rain); }
-.#{$fa-css-prefix}-cloud-rain:before { content: fa-content($fa-var-cloud-rain); }
-.#{$fa-css-prefix}-cloud-showers-heavy:before { content: fa-content($fa-var-cloud-showers-heavy); }
-.#{$fa-css-prefix}-cloud-sun:before { content: fa-content($fa-var-cloud-sun); }
-.#{$fa-css-prefix}-cloud-sun-rain:before { content: fa-content($fa-var-cloud-sun-rain); }
-.#{$fa-css-prefix}-cloud-upload-alt:before { content: fa-content($fa-var-cloud-upload-alt); }
-.#{$fa-css-prefix}-cloudflare:before { content: fa-content($fa-var-cloudflare); }
-.#{$fa-css-prefix}-cloudscale:before { content: fa-content($fa-var-cloudscale); }
-.#{$fa-css-prefix}-cloudsmith:before { content: fa-content($fa-var-cloudsmith); }
-.#{$fa-css-prefix}-cloudversify:before { content: fa-content($fa-var-cloudversify); }
-.#{$fa-css-prefix}-cocktail:before { content: fa-content($fa-var-cocktail); }
-.#{$fa-css-prefix}-code:before { content: fa-content($fa-var-code); }
-.#{$fa-css-prefix}-code-branch:before { content: fa-content($fa-var-code-branch); }
-.#{$fa-css-prefix}-codepen:before { content: fa-content($fa-var-codepen); }
-.#{$fa-css-prefix}-codiepie:before { content: fa-content($fa-var-codiepie); }
-.#{$fa-css-prefix}-coffee:before { content: fa-content($fa-var-coffee); }
-.#{$fa-css-prefix}-cog:before { content: fa-content($fa-var-cog); }
-.#{$fa-css-prefix}-cogs:before { content: fa-content($fa-var-cogs); }
-.#{$fa-css-prefix}-coins:before { content: fa-content($fa-var-coins); }
-.#{$fa-css-prefix}-columns:before { content: fa-content($fa-var-columns); }
-.#{$fa-css-prefix}-comment:before { content: fa-content($fa-var-comment); }
-.#{$fa-css-prefix}-comment-alt:before { content: fa-content($fa-var-comment-alt); }
-.#{$fa-css-prefix}-comment-dollar:before { content: fa-content($fa-var-comment-dollar); }
-.#{$fa-css-prefix}-comment-dots:before { content: fa-content($fa-var-comment-dots); }
-.#{$fa-css-prefix}-comment-medical:before { content: fa-content($fa-var-comment-medical); }
-.#{$fa-css-prefix}-comment-slash:before { content: fa-content($fa-var-comment-slash); }
-.#{$fa-css-prefix}-comments:before { content: fa-content($fa-var-comments); }
-.#{$fa-css-prefix}-comments-dollar:before { content: fa-content($fa-var-comments-dollar); }
-.#{$fa-css-prefix}-compact-disc:before { content: fa-content($fa-var-compact-disc); }
-.#{$fa-css-prefix}-compass:before { content: fa-content($fa-var-compass); }
-.#{$fa-css-prefix}-compress:before { content: fa-content($fa-var-compress); }
-.#{$fa-css-prefix}-compress-alt:before { content: fa-content($fa-var-compress-alt); }
-.#{$fa-css-prefix}-compress-arrows-alt:before { content: fa-content($fa-var-compress-arrows-alt); }
-.#{$fa-css-prefix}-concierge-bell:before { content: fa-content($fa-var-concierge-bell); }
-.#{$fa-css-prefix}-confluence:before { content: fa-content($fa-var-confluence); }
-.#{$fa-css-prefix}-connectdevelop:before { content: fa-content($fa-var-connectdevelop); }
-.#{$fa-css-prefix}-contao:before { content: fa-content($fa-var-contao); }
-.#{$fa-css-prefix}-cookie:before { content: fa-content($fa-var-cookie); }
-.#{$fa-css-prefix}-cookie-bite:before { content: fa-content($fa-var-cookie-bite); }
-.#{$fa-css-prefix}-copy:before { content: fa-content($fa-var-copy); }
-.#{$fa-css-prefix}-copyright:before { content: fa-content($fa-var-copyright); }
-.#{$fa-css-prefix}-cotton-bureau:before { content: fa-content($fa-var-cotton-bureau); }
-.#{$fa-css-prefix}-couch:before { content: fa-content($fa-var-couch); }
-.#{$fa-css-prefix}-cpanel:before { content: fa-content($fa-var-cpanel); }
-.#{$fa-css-prefix}-creative-commons:before { content: fa-content($fa-var-creative-commons); }
-.#{$fa-css-prefix}-creative-commons-by:before { content: fa-content($fa-var-creative-commons-by); }
-.#{$fa-css-prefix}-creative-commons-nc:before { content: fa-content($fa-var-creative-commons-nc); }
-.#{$fa-css-prefix}-creative-commons-nc-eu:before { content: fa-content($fa-var-creative-commons-nc-eu); }
-.#{$fa-css-prefix}-creative-commons-nc-jp:before { content: fa-content($fa-var-creative-commons-nc-jp); }
-.#{$fa-css-prefix}-creative-commons-nd:before { content: fa-content($fa-var-creative-commons-nd); }
-.#{$fa-css-prefix}-creative-commons-pd:before { content: fa-content($fa-var-creative-commons-pd); }
-.#{$fa-css-prefix}-creative-commons-pd-alt:before { content: fa-content($fa-var-creative-commons-pd-alt); }
-.#{$fa-css-prefix}-creative-commons-remix:before { content: fa-content($fa-var-creative-commons-remix); }
-.#{$fa-css-prefix}-creative-commons-sa:before { content: fa-content($fa-var-creative-commons-sa); }
-.#{$fa-css-prefix}-creative-commons-sampling:before { content: fa-content($fa-var-creative-commons-sampling); }
-.#{$fa-css-prefix}-creative-commons-sampling-plus:before { content: fa-content($fa-var-creative-commons-sampling-plus); }
-.#{$fa-css-prefix}-creative-commons-share:before { content: fa-content($fa-var-creative-commons-share); }
-.#{$fa-css-prefix}-creative-commons-zero:before { content: fa-content($fa-var-creative-commons-zero); }
-.#{$fa-css-prefix}-credit-card:before { content: fa-content($fa-var-credit-card); }
-.#{$fa-css-prefix}-critical-role:before { content: fa-content($fa-var-critical-role); }
-.#{$fa-css-prefix}-crop:before { content: fa-content($fa-var-crop); }
-.#{$fa-css-prefix}-crop-alt:before { content: fa-content($fa-var-crop-alt); }
-.#{$fa-css-prefix}-cross:before { content: fa-content($fa-var-cross); }
-.#{$fa-css-prefix}-crosshairs:before { content: fa-content($fa-var-crosshairs); }
-.#{$fa-css-prefix}-crow:before { content: fa-content($fa-var-crow); }
-.#{$fa-css-prefix}-crown:before { content: fa-content($fa-var-crown); }
-.#{$fa-css-prefix}-crutch:before { content: fa-content($fa-var-crutch); }
-.#{$fa-css-prefix}-css3:before { content: fa-content($fa-var-css3); }
-.#{$fa-css-prefix}-css3-alt:before { content: fa-content($fa-var-css3-alt); }
-.#{$fa-css-prefix}-cube:before { content: fa-content($fa-var-cube); }
-.#{$fa-css-prefix}-cubes:before { content: fa-content($fa-var-cubes); }
-.#{$fa-css-prefix}-cut:before { content: fa-content($fa-var-cut); }
-.#{$fa-css-prefix}-cuttlefish:before { content: fa-content($fa-var-cuttlefish); }
-.#{$fa-css-prefix}-d-and-d:before { content: fa-content($fa-var-d-and-d); }
-.#{$fa-css-prefix}-d-and-d-beyond:before { content: fa-content($fa-var-d-and-d-beyond); }
-.#{$fa-css-prefix}-dailymotion:before { content: fa-content($fa-var-dailymotion); }
-.#{$fa-css-prefix}-dashcube:before { content: fa-content($fa-var-dashcube); }
-.#{$fa-css-prefix}-database:before { content: fa-content($fa-var-database); }
-.#{$fa-css-prefix}-deaf:before { content: fa-content($fa-var-deaf); }
-.#{$fa-css-prefix}-deezer:before { content: fa-content($fa-var-deezer); }
-.#{$fa-css-prefix}-delicious:before { content: fa-content($fa-var-delicious); }
-.#{$fa-css-prefix}-democrat:before { content: fa-content($fa-var-democrat); }
-.#{$fa-css-prefix}-deploydog:before { content: fa-content($fa-var-deploydog); }
-.#{$fa-css-prefix}-deskpro:before { content: fa-content($fa-var-deskpro); }
-.#{$fa-css-prefix}-desktop:before { content: fa-content($fa-var-desktop); }
-.#{$fa-css-prefix}-dev:before { content: fa-content($fa-var-dev); }
-.#{$fa-css-prefix}-deviantart:before { content: fa-content($fa-var-deviantart); }
-.#{$fa-css-prefix}-dharmachakra:before { content: fa-content($fa-var-dharmachakra); }
-.#{$fa-css-prefix}-dhl:before { content: fa-content($fa-var-dhl); }
-.#{$fa-css-prefix}-diagnoses:before { content: fa-content($fa-var-diagnoses); }
-.#{$fa-css-prefix}-diaspora:before { content: fa-content($fa-var-diaspora); }
-.#{$fa-css-prefix}-dice:before { content: fa-content($fa-var-dice); }
-.#{$fa-css-prefix}-dice-d20:before { content: fa-content($fa-var-dice-d20); }
-.#{$fa-css-prefix}-dice-d6:before { content: fa-content($fa-var-dice-d6); }
-.#{$fa-css-prefix}-dice-five:before { content: fa-content($fa-var-dice-five); }
-.#{$fa-css-prefix}-dice-four:before { content: fa-content($fa-var-dice-four); }
-.#{$fa-css-prefix}-dice-one:before { content: fa-content($fa-var-dice-one); }
-.#{$fa-css-prefix}-dice-six:before { content: fa-content($fa-var-dice-six); }
-.#{$fa-css-prefix}-dice-three:before { content: fa-content($fa-var-dice-three); }
-.#{$fa-css-prefix}-dice-two:before { content: fa-content($fa-var-dice-two); }
-.#{$fa-css-prefix}-digg:before { content: fa-content($fa-var-digg); }
-.#{$fa-css-prefix}-digital-ocean:before { content: fa-content($fa-var-digital-ocean); }
-.#{$fa-css-prefix}-digital-tachograph:before { content: fa-content($fa-var-digital-tachograph); }
-.#{$fa-css-prefix}-directions:before { content: fa-content($fa-var-directions); }
-.#{$fa-css-prefix}-discord:before { content: fa-content($fa-var-discord); }
-.#{$fa-css-prefix}-discourse:before { content: fa-content($fa-var-discourse); }
-.#{$fa-css-prefix}-disease:before { content: fa-content($fa-var-disease); }
-.#{$fa-css-prefix}-divide:before { content: fa-content($fa-var-divide); }
-.#{$fa-css-prefix}-dizzy:before { content: fa-content($fa-var-dizzy); }
-.#{$fa-css-prefix}-dna:before { content: fa-content($fa-var-dna); }
-.#{$fa-css-prefix}-dochub:before { content: fa-content($fa-var-dochub); }
-.#{$fa-css-prefix}-docker:before { content: fa-content($fa-var-docker); }
-.#{$fa-css-prefix}-dog:before { content: fa-content($fa-var-dog); }
-.#{$fa-css-prefix}-dollar-sign:before { content: fa-content($fa-var-dollar-sign); }
-.#{$fa-css-prefix}-dolly:before { content: fa-content($fa-var-dolly); }
-.#{$fa-css-prefix}-dolly-flatbed:before { content: fa-content($fa-var-dolly-flatbed); }
-.#{$fa-css-prefix}-donate:before { content: fa-content($fa-var-donate); }
-.#{$fa-css-prefix}-door-closed:before { content: fa-content($fa-var-door-closed); }
-.#{$fa-css-prefix}-door-open:before { content: fa-content($fa-var-door-open); }
-.#{$fa-css-prefix}-dot-circle:before { content: fa-content($fa-var-dot-circle); }
-.#{$fa-css-prefix}-dove:before { content: fa-content($fa-var-dove); }
-.#{$fa-css-prefix}-download:before { content: fa-content($fa-var-download); }
-.#{$fa-css-prefix}-draft2digital:before { content: fa-content($fa-var-draft2digital); }
-.#{$fa-css-prefix}-drafting-compass:before { content: fa-content($fa-var-drafting-compass); }
-.#{$fa-css-prefix}-dragon:before { content: fa-content($fa-var-dragon); }
-.#{$fa-css-prefix}-draw-polygon:before { content: fa-content($fa-var-draw-polygon); }
-.#{$fa-css-prefix}-dribbble:before { content: fa-content($fa-var-dribbble); }
-.#{$fa-css-prefix}-dribbble-square:before { content: fa-content($fa-var-dribbble-square); }
-.#{$fa-css-prefix}-dropbox:before { content: fa-content($fa-var-dropbox); }
-.#{$fa-css-prefix}-drum:before { content: fa-content($fa-var-drum); }
-.#{$fa-css-prefix}-drum-steelpan:before { content: fa-content($fa-var-drum-steelpan); }
-.#{$fa-css-prefix}-drumstick-bite:before { content: fa-content($fa-var-drumstick-bite); }
-.#{$fa-css-prefix}-drupal:before { content: fa-content($fa-var-drupal); }
-.#{$fa-css-prefix}-dumbbell:before { content: fa-content($fa-var-dumbbell); }
-.#{$fa-css-prefix}-dumpster:before { content: fa-content($fa-var-dumpster); }
-.#{$fa-css-prefix}-dumpster-fire:before { content: fa-content($fa-var-dumpster-fire); }
-.#{$fa-css-prefix}-dungeon:before { content: fa-content($fa-var-dungeon); }
-.#{$fa-css-prefix}-dyalog:before { content: fa-content($fa-var-dyalog); }
-.#{$fa-css-prefix}-earlybirds:before { content: fa-content($fa-var-earlybirds); }
-.#{$fa-css-prefix}-ebay:before { content: fa-content($fa-var-ebay); }
-.#{$fa-css-prefix}-edge:before { content: fa-content($fa-var-edge); }
-.#{$fa-css-prefix}-edge-legacy:before { content: fa-content($fa-var-edge-legacy); }
-.#{$fa-css-prefix}-edit:before { content: fa-content($fa-var-edit); }
-.#{$fa-css-prefix}-egg:before { content: fa-content($fa-var-egg); }
-.#{$fa-css-prefix}-eject:before { content: fa-content($fa-var-eject); }
-.#{$fa-css-prefix}-elementor:before { content: fa-content($fa-var-elementor); }
-.#{$fa-css-prefix}-ellipsis-h:before { content: fa-content($fa-var-ellipsis-h); }
-.#{$fa-css-prefix}-ellipsis-v:before { content: fa-content($fa-var-ellipsis-v); }
-.#{$fa-css-prefix}-ello:before { content: fa-content($fa-var-ello); }
-.#{$fa-css-prefix}-ember:before { content: fa-content($fa-var-ember); }
-.#{$fa-css-prefix}-empire:before { content: fa-content($fa-var-empire); }
-.#{$fa-css-prefix}-envelope:before { content: fa-content($fa-var-envelope); }
-.#{$fa-css-prefix}-envelope-open:before { content: fa-content($fa-var-envelope-open); }
-.#{$fa-css-prefix}-envelope-open-text:before { content: fa-content($fa-var-envelope-open-text); }
-.#{$fa-css-prefix}-envelope-square:before { content: fa-content($fa-var-envelope-square); }
-.#{$fa-css-prefix}-envira:before { content: fa-content($fa-var-envira); }
-.#{$fa-css-prefix}-equals:before { content: fa-content($fa-var-equals); }
-.#{$fa-css-prefix}-eraser:before { content: fa-content($fa-var-eraser); }
-.#{$fa-css-prefix}-erlang:before { content: fa-content($fa-var-erlang); }
-.#{$fa-css-prefix}-ethereum:before { content: fa-content($fa-var-ethereum); }
-.#{$fa-css-prefix}-ethernet:before { content: fa-content($fa-var-ethernet); }
-.#{$fa-css-prefix}-etsy:before { content: fa-content($fa-var-etsy); }
-.#{$fa-css-prefix}-euro-sign:before { content: fa-content($fa-var-euro-sign); }
-.#{$fa-css-prefix}-evernote:before { content: fa-content($fa-var-evernote); }
-.#{$fa-css-prefix}-exchange-alt:before { content: fa-content($fa-var-exchange-alt); }
-.#{$fa-css-prefix}-exclamation:before { content: fa-content($fa-var-exclamation); }
-.#{$fa-css-prefix}-exclamation-circle:before { content: fa-content($fa-var-exclamation-circle); }
-.#{$fa-css-prefix}-exclamation-triangle:before { content: fa-content($fa-var-exclamation-triangle); }
-.#{$fa-css-prefix}-expand:before { content: fa-content($fa-var-expand); }
-.#{$fa-css-prefix}-expand-alt:before { content: fa-content($fa-var-expand-alt); }
-.#{$fa-css-prefix}-expand-arrows-alt:before { content: fa-content($fa-var-expand-arrows-alt); }
-.#{$fa-css-prefix}-expeditedssl:before { content: fa-content($fa-var-expeditedssl); }
-.#{$fa-css-prefix}-external-link-alt:before { content: fa-content($fa-var-external-link-alt); }
-.#{$fa-css-prefix}-external-link-square-alt:before { content: fa-content($fa-var-external-link-square-alt); }
-.#{$fa-css-prefix}-eye:before { content: fa-content($fa-var-eye); }
-.#{$fa-css-prefix}-eye-dropper:before { content: fa-content($fa-var-eye-dropper); }
-.#{$fa-css-prefix}-eye-slash:before { content: fa-content($fa-var-eye-slash); }
-.#{$fa-css-prefix}-facebook:before { content: fa-content($fa-var-facebook); }
-.#{$fa-css-prefix}-facebook-f:before { content: fa-content($fa-var-facebook-f); }
-.#{$fa-css-prefix}-facebook-messenger:before { content: fa-content($fa-var-facebook-messenger); }
-.#{$fa-css-prefix}-facebook-square:before { content: fa-content($fa-var-facebook-square); }
-.#{$fa-css-prefix}-fan:before { content: fa-content($fa-var-fan); }
-.#{$fa-css-prefix}-fantasy-flight-games:before { content: fa-content($fa-var-fantasy-flight-games); }
-.#{$fa-css-prefix}-fast-backward:before { content: fa-content($fa-var-fast-backward); }
-.#{$fa-css-prefix}-fast-forward:before { content: fa-content($fa-var-fast-forward); }
-.#{$fa-css-prefix}-faucet:before { content: fa-content($fa-var-faucet); }
-.#{$fa-css-prefix}-fax:before { content: fa-content($fa-var-fax); }
-.#{$fa-css-prefix}-feather:before { content: fa-content($fa-var-feather); }
-.#{$fa-css-prefix}-feather-alt:before { content: fa-content($fa-var-feather-alt); }
-.#{$fa-css-prefix}-fedex:before { content: fa-content($fa-var-fedex); }
-.#{$fa-css-prefix}-fedora:before { content: fa-content($fa-var-fedora); }
-.#{$fa-css-prefix}-female:before { content: fa-content($fa-var-female); }
-.#{$fa-css-prefix}-fighter-jet:before { content: fa-content($fa-var-fighter-jet); }
-.#{$fa-css-prefix}-figma:before { content: fa-content($fa-var-figma); }
-.#{$fa-css-prefix}-file:before { content: fa-content($fa-var-file); }
-.#{$fa-css-prefix}-file-alt:before { content: fa-content($fa-var-file-alt); }
-.#{$fa-css-prefix}-file-archive:before { content: fa-content($fa-var-file-archive); }
-.#{$fa-css-prefix}-file-audio:before { content: fa-content($fa-var-file-audio); }
-.#{$fa-css-prefix}-file-code:before { content: fa-content($fa-var-file-code); }
-.#{$fa-css-prefix}-file-contract:before { content: fa-content($fa-var-file-contract); }
-.#{$fa-css-prefix}-file-csv:before { content: fa-content($fa-var-file-csv); }
-.#{$fa-css-prefix}-file-download:before { content: fa-content($fa-var-file-download); }
-.#{$fa-css-prefix}-file-excel:before { content: fa-content($fa-var-file-excel); }
-.#{$fa-css-prefix}-file-export:before { content: fa-content($fa-var-file-export); }
-.#{$fa-css-prefix}-file-image:before { content: fa-content($fa-var-file-image); }
-.#{$fa-css-prefix}-file-import:before { content: fa-content($fa-var-file-import); }
-.#{$fa-css-prefix}-file-invoice:before { content: fa-content($fa-var-file-invoice); }
-.#{$fa-css-prefix}-file-invoice-dollar:before { content: fa-content($fa-var-file-invoice-dollar); }
-.#{$fa-css-prefix}-file-medical:before { content: fa-content($fa-var-file-medical); }
-.#{$fa-css-prefix}-file-medical-alt:before { content: fa-content($fa-var-file-medical-alt); }
-.#{$fa-css-prefix}-file-pdf:before { content: fa-content($fa-var-file-pdf); }
-.#{$fa-css-prefix}-file-powerpoint:before { content: fa-content($fa-var-file-powerpoint); }
-.#{$fa-css-prefix}-file-prescription:before { content: fa-content($fa-var-file-prescription); }
-.#{$fa-css-prefix}-file-signature:before { content: fa-content($fa-var-file-signature); }
-.#{$fa-css-prefix}-file-upload:before { content: fa-content($fa-var-file-upload); }
-.#{$fa-css-prefix}-file-video:before { content: fa-content($fa-var-file-video); }
-.#{$fa-css-prefix}-file-word:before { content: fa-content($fa-var-file-word); }
-.#{$fa-css-prefix}-fill:before { content: fa-content($fa-var-fill); }
-.#{$fa-css-prefix}-fill-drip:before { content: fa-content($fa-var-fill-drip); }
-.#{$fa-css-prefix}-film:before { content: fa-content($fa-var-film); }
-.#{$fa-css-prefix}-filter:before { content: fa-content($fa-var-filter); }
-.#{$fa-css-prefix}-fingerprint:before { content: fa-content($fa-var-fingerprint); }
-.#{$fa-css-prefix}-fire:before { content: fa-content($fa-var-fire); }
-.#{$fa-css-prefix}-fire-alt:before { content: fa-content($fa-var-fire-alt); }
-.#{$fa-css-prefix}-fire-extinguisher:before { content: fa-content($fa-var-fire-extinguisher); }
-.#{$fa-css-prefix}-firefox:before { content: fa-content($fa-var-firefox); }
-.#{$fa-css-prefix}-firefox-browser:before { content: fa-content($fa-var-firefox-browser); }
-.#{$fa-css-prefix}-first-aid:before { content: fa-content($fa-var-first-aid); }
-.#{$fa-css-prefix}-first-order:before { content: fa-content($fa-var-first-order); }
-.#{$fa-css-prefix}-first-order-alt:before { content: fa-content($fa-var-first-order-alt); }
-.#{$fa-css-prefix}-firstdraft:before { content: fa-content($fa-var-firstdraft); }
-.#{$fa-css-prefix}-fish:before { content: fa-content($fa-var-fish); }
-.#{$fa-css-prefix}-fist-raised:before { content: fa-content($fa-var-fist-raised); }
-.#{$fa-css-prefix}-flag:before { content: fa-content($fa-var-flag); }
-.#{$fa-css-prefix}-flag-checkered:before { content: fa-content($fa-var-flag-checkered); }
-.#{$fa-css-prefix}-flag-usa:before { content: fa-content($fa-var-flag-usa); }
-.#{$fa-css-prefix}-flask:before { content: fa-content($fa-var-flask); }
-.#{$fa-css-prefix}-flickr:before { content: fa-content($fa-var-flickr); }
-.#{$fa-css-prefix}-flipboard:before { content: fa-content($fa-var-flipboard); }
-.#{$fa-css-prefix}-flushed:before { content: fa-content($fa-var-flushed); }
-.#{$fa-css-prefix}-fly:before { content: fa-content($fa-var-fly); }
-.#{$fa-css-prefix}-folder:before { content: fa-content($fa-var-folder); }
-.#{$fa-css-prefix}-folder-minus:before { content: fa-content($fa-var-folder-minus); }
-.#{$fa-css-prefix}-folder-open:before { content: fa-content($fa-var-folder-open); }
-.#{$fa-css-prefix}-folder-plus:before { content: fa-content($fa-var-folder-plus); }
-.#{$fa-css-prefix}-font:before { content: fa-content($fa-var-font); }
-.#{$fa-css-prefix}-font-awesome:before { content: fa-content($fa-var-font-awesome); }
-.#{$fa-css-prefix}-font-awesome-alt:before { content: fa-content($fa-var-font-awesome-alt); }
-.#{$fa-css-prefix}-font-awesome-flag:before { content: fa-content($fa-var-font-awesome-flag); }
-.#{$fa-css-prefix}-font-awesome-logo-full:before { content: fa-content($fa-var-font-awesome-logo-full); }
-.#{$fa-css-prefix}-fonticons:before { content: fa-content($fa-var-fonticons); }
-.#{$fa-css-prefix}-fonticons-fi:before { content: fa-content($fa-var-fonticons-fi); }
-.#{$fa-css-prefix}-football-ball:before { content: fa-content($fa-var-football-ball); }
-.#{$fa-css-prefix}-fort-awesome:before { content: fa-content($fa-var-fort-awesome); }
-.#{$fa-css-prefix}-fort-awesome-alt:before { content: fa-content($fa-var-fort-awesome-alt); }
-.#{$fa-css-prefix}-forumbee:before { content: fa-content($fa-var-forumbee); }
-.#{$fa-css-prefix}-forward:before { content: fa-content($fa-var-forward); }
-.#{$fa-css-prefix}-foursquare:before { content: fa-content($fa-var-foursquare); }
-.#{$fa-css-prefix}-free-code-camp:before { content: fa-content($fa-var-free-code-camp); }
-.#{$fa-css-prefix}-freebsd:before { content: fa-content($fa-var-freebsd); }
-.#{$fa-css-prefix}-frog:before { content: fa-content($fa-var-frog); }
-.#{$fa-css-prefix}-frown:before { content: fa-content($fa-var-frown); }
-.#{$fa-css-prefix}-frown-open:before { content: fa-content($fa-var-frown-open); }
-.#{$fa-css-prefix}-fulcrum:before { content: fa-content($fa-var-fulcrum); }
-.#{$fa-css-prefix}-funnel-dollar:before { content: fa-content($fa-var-funnel-dollar); }
-.#{$fa-css-prefix}-futbol:before { content: fa-content($fa-var-futbol); }
-.#{$fa-css-prefix}-galactic-republic:before { content: fa-content($fa-var-galactic-republic); }
-.#{$fa-css-prefix}-galactic-senate:before { content: fa-content($fa-var-galactic-senate); }
-.#{$fa-css-prefix}-gamepad:before { content: fa-content($fa-var-gamepad); }
-.#{$fa-css-prefix}-gas-pump:before { content: fa-content($fa-var-gas-pump); }
-.#{$fa-css-prefix}-gavel:before { content: fa-content($fa-var-gavel); }
-.#{$fa-css-prefix}-gem:before { content: fa-content($fa-var-gem); }
-.#{$fa-css-prefix}-genderless:before { content: fa-content($fa-var-genderless); }
-.#{$fa-css-prefix}-get-pocket:before { content: fa-content($fa-var-get-pocket); }
-.#{$fa-css-prefix}-gg:before { content: fa-content($fa-var-gg); }
-.#{$fa-css-prefix}-gg-circle:before { content: fa-content($fa-var-gg-circle); }
-.#{$fa-css-prefix}-ghost:before { content: fa-content($fa-var-ghost); }
-.#{$fa-css-prefix}-gift:before { content: fa-content($fa-var-gift); }
-.#{$fa-css-prefix}-gifts:before { content: fa-content($fa-var-gifts); }
-.#{$fa-css-prefix}-git:before { content: fa-content($fa-var-git); }
-.#{$fa-css-prefix}-git-alt:before { content: fa-content($fa-var-git-alt); }
-.#{$fa-css-prefix}-git-square:before { content: fa-content($fa-var-git-square); }
-.#{$fa-css-prefix}-github:before { content: fa-content($fa-var-github); }
-.#{$fa-css-prefix}-github-alt:before { content: fa-content($fa-var-github-alt); }
-.#{$fa-css-prefix}-github-square:before { content: fa-content($fa-var-github-square); }
-.#{$fa-css-prefix}-gitkraken:before { content: fa-content($fa-var-gitkraken); }
-.#{$fa-css-prefix}-gitlab:before { content: fa-content($fa-var-gitlab); }
-.#{$fa-css-prefix}-gitter:before { content: fa-content($fa-var-gitter); }
-.#{$fa-css-prefix}-glass-cheers:before { content: fa-content($fa-var-glass-cheers); }
-.#{$fa-css-prefix}-glass-martini:before { content: fa-content($fa-var-glass-martini); }
-.#{$fa-css-prefix}-glass-martini-alt:before { content: fa-content($fa-var-glass-martini-alt); }
-.#{$fa-css-prefix}-glass-whiskey:before { content: fa-content($fa-var-glass-whiskey); }
-.#{$fa-css-prefix}-glasses:before { content: fa-content($fa-var-glasses); }
-.#{$fa-css-prefix}-glide:before { content: fa-content($fa-var-glide); }
-.#{$fa-css-prefix}-glide-g:before { content: fa-content($fa-var-glide-g); }
-.#{$fa-css-prefix}-globe:before { content: fa-content($fa-var-globe); }
-.#{$fa-css-prefix}-globe-africa:before { content: fa-content($fa-var-globe-africa); }
-.#{$fa-css-prefix}-globe-americas:before { content: fa-content($fa-var-globe-americas); }
-.#{$fa-css-prefix}-globe-asia:before { content: fa-content($fa-var-globe-asia); }
-.#{$fa-css-prefix}-globe-europe:before { content: fa-content($fa-var-globe-europe); }
-.#{$fa-css-prefix}-gofore:before { content: fa-content($fa-var-gofore); }
-.#{$fa-css-prefix}-golf-ball:before { content: fa-content($fa-var-golf-ball); }
-.#{$fa-css-prefix}-goodreads:before { content: fa-content($fa-var-goodreads); }
-.#{$fa-css-prefix}-goodreads-g:before { content: fa-content($fa-var-goodreads-g); }
-.#{$fa-css-prefix}-google:before { content: fa-content($fa-var-google); }
-.#{$fa-css-prefix}-google-drive:before { content: fa-content($fa-var-google-drive); }
-.#{$fa-css-prefix}-google-pay:before { content: fa-content($fa-var-google-pay); }
-.#{$fa-css-prefix}-google-play:before { content: fa-content($fa-var-google-play); }
-.#{$fa-css-prefix}-google-plus:before { content: fa-content($fa-var-google-plus); }
-.#{$fa-css-prefix}-google-plus-g:before { content: fa-content($fa-var-google-plus-g); }
-.#{$fa-css-prefix}-google-plus-square:before { content: fa-content($fa-var-google-plus-square); }
-.#{$fa-css-prefix}-google-wallet:before { content: fa-content($fa-var-google-wallet); }
-.#{$fa-css-prefix}-gopuram:before { content: fa-content($fa-var-gopuram); }
-.#{$fa-css-prefix}-graduation-cap:before { content: fa-content($fa-var-graduation-cap); }
-.#{$fa-css-prefix}-gratipay:before { content: fa-content($fa-var-gratipay); }
-.#{$fa-css-prefix}-grav:before { content: fa-content($fa-var-grav); }
-.#{$fa-css-prefix}-greater-than:before { content: fa-content($fa-var-greater-than); }
-.#{$fa-css-prefix}-greater-than-equal:before { content: fa-content($fa-var-greater-than-equal); }
-.#{$fa-css-prefix}-grimace:before { content: fa-content($fa-var-grimace); }
-.#{$fa-css-prefix}-grin:before { content: fa-content($fa-var-grin); }
-.#{$fa-css-prefix}-grin-alt:before { content: fa-content($fa-var-grin-alt); }
-.#{$fa-css-prefix}-grin-beam:before { content: fa-content($fa-var-grin-beam); }
-.#{$fa-css-prefix}-grin-beam-sweat:before { content: fa-content($fa-var-grin-beam-sweat); }
-.#{$fa-css-prefix}-grin-hearts:before { content: fa-content($fa-var-grin-hearts); }
-.#{$fa-css-prefix}-grin-squint:before { content: fa-content($fa-var-grin-squint); }
-.#{$fa-css-prefix}-grin-squint-tears:before { content: fa-content($fa-var-grin-squint-tears); }
-.#{$fa-css-prefix}-grin-stars:before { content: fa-content($fa-var-grin-stars); }
-.#{$fa-css-prefix}-grin-tears:before { content: fa-content($fa-var-grin-tears); }
-.#{$fa-css-prefix}-grin-tongue:before { content: fa-content($fa-var-grin-tongue); }
-.#{$fa-css-prefix}-grin-tongue-squint:before { content: fa-content($fa-var-grin-tongue-squint); }
-.#{$fa-css-prefix}-grin-tongue-wink:before { content: fa-content($fa-var-grin-tongue-wink); }
-.#{$fa-css-prefix}-grin-wink:before { content: fa-content($fa-var-grin-wink); }
-.#{$fa-css-prefix}-grip-horizontal:before { content: fa-content($fa-var-grip-horizontal); }
-.#{$fa-css-prefix}-grip-lines:before { content: fa-content($fa-var-grip-lines); }
-.#{$fa-css-prefix}-grip-lines-vertical:before { content: fa-content($fa-var-grip-lines-vertical); }
-.#{$fa-css-prefix}-grip-vertical:before { content: fa-content($fa-var-grip-vertical); }
-.#{$fa-css-prefix}-gripfire:before { content: fa-content($fa-var-gripfire); }
-.#{$fa-css-prefix}-grunt:before { content: fa-content($fa-var-grunt); }
-.#{$fa-css-prefix}-guilded:before { content: fa-content($fa-var-guilded); }
-.#{$fa-css-prefix}-guitar:before { content: fa-content($fa-var-guitar); }
-.#{$fa-css-prefix}-gulp:before { content: fa-content($fa-var-gulp); }
-.#{$fa-css-prefix}-h-square:before { content: fa-content($fa-var-h-square); }
-.#{$fa-css-prefix}-hacker-news:before { content: fa-content($fa-var-hacker-news); }
-.#{$fa-css-prefix}-hacker-news-square:before { content: fa-content($fa-var-hacker-news-square); }
-.#{$fa-css-prefix}-hackerrank:before { content: fa-content($fa-var-hackerrank); }
-.#{$fa-css-prefix}-hamburger:before { content: fa-content($fa-var-hamburger); }
-.#{$fa-css-prefix}-hammer:before { content: fa-content($fa-var-hammer); }
-.#{$fa-css-prefix}-hamsa:before { content: fa-content($fa-var-hamsa); }
-.#{$fa-css-prefix}-hand-holding:before { content: fa-content($fa-var-hand-holding); }
-.#{$fa-css-prefix}-hand-holding-heart:before { content: fa-content($fa-var-hand-holding-heart); }
-.#{$fa-css-prefix}-hand-holding-medical:before { content: fa-content($fa-var-hand-holding-medical); }
-.#{$fa-css-prefix}-hand-holding-usd:before { content: fa-content($fa-var-hand-holding-usd); }
-.#{$fa-css-prefix}-hand-holding-water:before { content: fa-content($fa-var-hand-holding-water); }
-.#{$fa-css-prefix}-hand-lizard:before { content: fa-content($fa-var-hand-lizard); }
-.#{$fa-css-prefix}-hand-middle-finger:before { content: fa-content($fa-var-hand-middle-finger); }
-.#{$fa-css-prefix}-hand-paper:before { content: fa-content($fa-var-hand-paper); }
-.#{$fa-css-prefix}-hand-peace:before { content: fa-content($fa-var-hand-peace); }
-.#{$fa-css-prefix}-hand-point-down:before { content: fa-content($fa-var-hand-point-down); }
-.#{$fa-css-prefix}-hand-point-left:before { content: fa-content($fa-var-hand-point-left); }
-.#{$fa-css-prefix}-hand-point-right:before { content: fa-content($fa-var-hand-point-right); }
-.#{$fa-css-prefix}-hand-point-up:before { content: fa-content($fa-var-hand-point-up); }
-.#{$fa-css-prefix}-hand-pointer:before { content: fa-content($fa-var-hand-pointer); }
-.#{$fa-css-prefix}-hand-rock:before { content: fa-content($fa-var-hand-rock); }
-.#{$fa-css-prefix}-hand-scissors:before { content: fa-content($fa-var-hand-scissors); }
-.#{$fa-css-prefix}-hand-sparkles:before { content: fa-content($fa-var-hand-sparkles); }
-.#{$fa-css-prefix}-hand-spock:before { content: fa-content($fa-var-hand-spock); }
-.#{$fa-css-prefix}-hands:before { content: fa-content($fa-var-hands); }
-.#{$fa-css-prefix}-hands-helping:before { content: fa-content($fa-var-hands-helping); }
-.#{$fa-css-prefix}-hands-wash:before { content: fa-content($fa-var-hands-wash); }
-.#{$fa-css-prefix}-handshake:before { content: fa-content($fa-var-handshake); }
-.#{$fa-css-prefix}-handshake-alt-slash:before { content: fa-content($fa-var-handshake-alt-slash); }
-.#{$fa-css-prefix}-handshake-slash:before { content: fa-content($fa-var-handshake-slash); }
-.#{$fa-css-prefix}-hanukiah:before { content: fa-content($fa-var-hanukiah); }
-.#{$fa-css-prefix}-hard-hat:before { content: fa-content($fa-var-hard-hat); }
-.#{$fa-css-prefix}-hashtag:before { content: fa-content($fa-var-hashtag); }
-.#{$fa-css-prefix}-hat-cowboy:before { content: fa-content($fa-var-hat-cowboy); }
-.#{$fa-css-prefix}-hat-cowboy-side:before { content: fa-content($fa-var-hat-cowboy-side); }
-.#{$fa-css-prefix}-hat-wizard:before { content: fa-content($fa-var-hat-wizard); }
-.#{$fa-css-prefix}-hdd:before { content: fa-content($fa-var-hdd); }
-.#{$fa-css-prefix}-head-side-cough:before { content: fa-content($fa-var-head-side-cough); }
-.#{$fa-css-prefix}-head-side-cough-slash:before { content: fa-content($fa-var-head-side-cough-slash); }
-.#{$fa-css-prefix}-head-side-mask:before { content: fa-content($fa-var-head-side-mask); }
-.#{$fa-css-prefix}-head-side-virus:before { content: fa-content($fa-var-head-side-virus); }
-.#{$fa-css-prefix}-heading:before { content: fa-content($fa-var-heading); }
-.#{$fa-css-prefix}-headphones:before { content: fa-content($fa-var-headphones); }
-.#{$fa-css-prefix}-headphones-alt:before { content: fa-content($fa-var-headphones-alt); }
-.#{$fa-css-prefix}-headset:before { content: fa-content($fa-var-headset); }
-.#{$fa-css-prefix}-heart:before { content: fa-content($fa-var-heart); }
-.#{$fa-css-prefix}-heart-broken:before { content: fa-content($fa-var-heart-broken); }
-.#{$fa-css-prefix}-heartbeat:before { content: fa-content($fa-var-heartbeat); }
-.#{$fa-css-prefix}-helicopter:before { content: fa-content($fa-var-helicopter); }
-.#{$fa-css-prefix}-highlighter:before { content: fa-content($fa-var-highlighter); }
-.#{$fa-css-prefix}-hiking:before { content: fa-content($fa-var-hiking); }
-.#{$fa-css-prefix}-hippo:before { content: fa-content($fa-var-hippo); }
-.#{$fa-css-prefix}-hips:before { content: fa-content($fa-var-hips); }
-.#{$fa-css-prefix}-hire-a-helper:before { content: fa-content($fa-var-hire-a-helper); }
-.#{$fa-css-prefix}-history:before { content: fa-content($fa-var-history); }
-.#{$fa-css-prefix}-hive:before { content: fa-content($fa-var-hive); }
-.#{$fa-css-prefix}-hockey-puck:before { content: fa-content($fa-var-hockey-puck); }
-.#{$fa-css-prefix}-holly-berry:before { content: fa-content($fa-var-holly-berry); }
-.#{$fa-css-prefix}-home:before { content: fa-content($fa-var-home); }
-.#{$fa-css-prefix}-hooli:before { content: fa-content($fa-var-hooli); }
-.#{$fa-css-prefix}-hornbill:before { content: fa-content($fa-var-hornbill); }
-.#{$fa-css-prefix}-horse:before { content: fa-content($fa-var-horse); }
-.#{$fa-css-prefix}-horse-head:before { content: fa-content($fa-var-horse-head); }
-.#{$fa-css-prefix}-hospital:before { content: fa-content($fa-var-hospital); }
-.#{$fa-css-prefix}-hospital-alt:before { content: fa-content($fa-var-hospital-alt); }
-.#{$fa-css-prefix}-hospital-symbol:before { content: fa-content($fa-var-hospital-symbol); }
-.#{$fa-css-prefix}-hospital-user:before { content: fa-content($fa-var-hospital-user); }
-.#{$fa-css-prefix}-hot-tub:before { content: fa-content($fa-var-hot-tub); }
-.#{$fa-css-prefix}-hotdog:before { content: fa-content($fa-var-hotdog); }
-.#{$fa-css-prefix}-hotel:before { content: fa-content($fa-var-hotel); }
-.#{$fa-css-prefix}-hotjar:before { content: fa-content($fa-var-hotjar); }
-.#{$fa-css-prefix}-hourglass:before { content: fa-content($fa-var-hourglass); }
-.#{$fa-css-prefix}-hourglass-end:before { content: fa-content($fa-var-hourglass-end); }
-.#{$fa-css-prefix}-hourglass-half:before { content: fa-content($fa-var-hourglass-half); }
-.#{$fa-css-prefix}-hourglass-start:before { content: fa-content($fa-var-hourglass-start); }
-.#{$fa-css-prefix}-house-damage:before { content: fa-content($fa-var-house-damage); }
-.#{$fa-css-prefix}-house-user:before { content: fa-content($fa-var-house-user); }
-.#{$fa-css-prefix}-houzz:before { content: fa-content($fa-var-houzz); }
-.#{$fa-css-prefix}-hryvnia:before { content: fa-content($fa-var-hryvnia); }
-.#{$fa-css-prefix}-html5:before { content: fa-content($fa-var-html5); }
-.#{$fa-css-prefix}-hubspot:before { content: fa-content($fa-var-hubspot); }
-.#{$fa-css-prefix}-i-cursor:before { content: fa-content($fa-var-i-cursor); }
-.#{$fa-css-prefix}-ice-cream:before { content: fa-content($fa-var-ice-cream); }
-.#{$fa-css-prefix}-icicles:before { content: fa-content($fa-var-icicles); }
-.#{$fa-css-prefix}-icons:before { content: fa-content($fa-var-icons); }
-.#{$fa-css-prefix}-id-badge:before { content: fa-content($fa-var-id-badge); }
-.#{$fa-css-prefix}-id-card:before { content: fa-content($fa-var-id-card); }
-.#{$fa-css-prefix}-id-card-alt:before { content: fa-content($fa-var-id-card-alt); }
-.#{$fa-css-prefix}-ideal:before { content: fa-content($fa-var-ideal); }
-.#{$fa-css-prefix}-igloo:before { content: fa-content($fa-var-igloo); }
-.#{$fa-css-prefix}-image:before { content: fa-content($fa-var-image); }
-.#{$fa-css-prefix}-images:before { content: fa-content($fa-var-images); }
-.#{$fa-css-prefix}-imdb:before { content: fa-content($fa-var-imdb); }
-.#{$fa-css-prefix}-inbox:before { content: fa-content($fa-var-inbox); }
-.#{$fa-css-prefix}-indent:before { content: fa-content($fa-var-indent); }
-.#{$fa-css-prefix}-industry:before { content: fa-content($fa-var-industry); }
-.#{$fa-css-prefix}-infinity:before { content: fa-content($fa-var-infinity); }
-.#{$fa-css-prefix}-info:before { content: fa-content($fa-var-info); }
-.#{$fa-css-prefix}-info-circle:before { content: fa-content($fa-var-info-circle); }
-.#{$fa-css-prefix}-innosoft:before { content: fa-content($fa-var-innosoft); }
-.#{$fa-css-prefix}-instagram:before { content: fa-content($fa-var-instagram); }
-.#{$fa-css-prefix}-instagram-square:before { content: fa-content($fa-var-instagram-square); }
-.#{$fa-css-prefix}-instalod:before { content: fa-content($fa-var-instalod); }
-.#{$fa-css-prefix}-intercom:before { content: fa-content($fa-var-intercom); }
-.#{$fa-css-prefix}-internet-explorer:before { content: fa-content($fa-var-internet-explorer); }
-.#{$fa-css-prefix}-invision:before { content: fa-content($fa-var-invision); }
-.#{$fa-css-prefix}-ioxhost:before { content: fa-content($fa-var-ioxhost); }
-.#{$fa-css-prefix}-italic:before { content: fa-content($fa-var-italic); }
-.#{$fa-css-prefix}-itch-io:before { content: fa-content($fa-var-itch-io); }
-.#{$fa-css-prefix}-itunes:before { content: fa-content($fa-var-itunes); }
-.#{$fa-css-prefix}-itunes-note:before { content: fa-content($fa-var-itunes-note); }
-.#{$fa-css-prefix}-java:before { content: fa-content($fa-var-java); }
-.#{$fa-css-prefix}-jedi:before { content: fa-content($fa-var-jedi); }
-.#{$fa-css-prefix}-jedi-order:before { content: fa-content($fa-var-jedi-order); }
-.#{$fa-css-prefix}-jenkins:before { content: fa-content($fa-var-jenkins); }
-.#{$fa-css-prefix}-jira:before { content: fa-content($fa-var-jira); }
-.#{$fa-css-prefix}-joget:before { content: fa-content($fa-var-joget); }
-.#{$fa-css-prefix}-joint:before { content: fa-content($fa-var-joint); }
-.#{$fa-css-prefix}-joomla:before { content: fa-content($fa-var-joomla); }
-.#{$fa-css-prefix}-journal-whills:before { content: fa-content($fa-var-journal-whills); }
-.#{$fa-css-prefix}-js:before { content: fa-content($fa-var-js); }
-.#{$fa-css-prefix}-js-square:before { content: fa-content($fa-var-js-square); }
-.#{$fa-css-prefix}-jsfiddle:before { content: fa-content($fa-var-jsfiddle); }
-.#{$fa-css-prefix}-kaaba:before { content: fa-content($fa-var-kaaba); }
-.#{$fa-css-prefix}-kaggle:before { content: fa-content($fa-var-kaggle); }
-.#{$fa-css-prefix}-key:before { content: fa-content($fa-var-key); }
-.#{$fa-css-prefix}-keybase:before { content: fa-content($fa-var-keybase); }
-.#{$fa-css-prefix}-keyboard:before { content: fa-content($fa-var-keyboard); }
-.#{$fa-css-prefix}-keycdn:before { content: fa-content($fa-var-keycdn); }
-.#{$fa-css-prefix}-khanda:before { content: fa-content($fa-var-khanda); }
-.#{$fa-css-prefix}-kickstarter:before { content: fa-content($fa-var-kickstarter); }
-.#{$fa-css-prefix}-kickstarter-k:before { content: fa-content($fa-var-kickstarter-k); }
-.#{$fa-css-prefix}-kiss:before { content: fa-content($fa-var-kiss); }
-.#{$fa-css-prefix}-kiss-beam:before { content: fa-content($fa-var-kiss-beam); }
-.#{$fa-css-prefix}-kiss-wink-heart:before { content: fa-content($fa-var-kiss-wink-heart); }
-.#{$fa-css-prefix}-kiwi-bird:before { content: fa-content($fa-var-kiwi-bird); }
-.#{$fa-css-prefix}-korvue:before { content: fa-content($fa-var-korvue); }
-.#{$fa-css-prefix}-landmark:before { content: fa-content($fa-var-landmark); }
-.#{$fa-css-prefix}-language:before { content: fa-content($fa-var-language); }
-.#{$fa-css-prefix}-laptop:before { content: fa-content($fa-var-laptop); }
-.#{$fa-css-prefix}-laptop-code:before { content: fa-content($fa-var-laptop-code); }
-.#{$fa-css-prefix}-laptop-house:before { content: fa-content($fa-var-laptop-house); }
-.#{$fa-css-prefix}-laptop-medical:before { content: fa-content($fa-var-laptop-medical); }
-.#{$fa-css-prefix}-laravel:before { content: fa-content($fa-var-laravel); }
-.#{$fa-css-prefix}-lastfm:before { content: fa-content($fa-var-lastfm); }
-.#{$fa-css-prefix}-lastfm-square:before { content: fa-content($fa-var-lastfm-square); }
-.#{$fa-css-prefix}-laugh:before { content: fa-content($fa-var-laugh); }
-.#{$fa-css-prefix}-laugh-beam:before { content: fa-content($fa-var-laugh-beam); }
-.#{$fa-css-prefix}-laugh-squint:before { content: fa-content($fa-var-laugh-squint); }
-.#{$fa-css-prefix}-laugh-wink:before { content: fa-content($fa-var-laugh-wink); }
-.#{$fa-css-prefix}-layer-group:before { content: fa-content($fa-var-layer-group); }
-.#{$fa-css-prefix}-leaf:before { content: fa-content($fa-var-leaf); }
-.#{$fa-css-prefix}-leanpub:before { content: fa-content($fa-var-leanpub); }
-.#{$fa-css-prefix}-lemon:before { content: fa-content($fa-var-lemon); }
-.#{$fa-css-prefix}-less:before { content: fa-content($fa-var-less); }
-.#{$fa-css-prefix}-less-than:before { content: fa-content($fa-var-less-than); }
-.#{$fa-css-prefix}-less-than-equal:before { content: fa-content($fa-var-less-than-equal); }
-.#{$fa-css-prefix}-level-down-alt:before { content: fa-content($fa-var-level-down-alt); }
-.#{$fa-css-prefix}-level-up-alt:before { content: fa-content($fa-var-level-up-alt); }
-.#{$fa-css-prefix}-life-ring:before { content: fa-content($fa-var-life-ring); }
-.#{$fa-css-prefix}-lightbulb:before { content: fa-content($fa-var-lightbulb); }
-.#{$fa-css-prefix}-line:before { content: fa-content($fa-var-line); }
-.#{$fa-css-prefix}-link:before { content: fa-content($fa-var-link); }
-.#{$fa-css-prefix}-linkedin:before { content: fa-content($fa-var-linkedin); }
-.#{$fa-css-prefix}-linkedin-in:before { content: fa-content($fa-var-linkedin-in); }
-.#{$fa-css-prefix}-linode:before { content: fa-content($fa-var-linode); }
-.#{$fa-css-prefix}-linux:before { content: fa-content($fa-var-linux); }
-.#{$fa-css-prefix}-lira-sign:before { content: fa-content($fa-var-lira-sign); }
-.#{$fa-css-prefix}-list:before { content: fa-content($fa-var-list); }
-.#{$fa-css-prefix}-list-alt:before { content: fa-content($fa-var-list-alt); }
-.#{$fa-css-prefix}-list-ol:before { content: fa-content($fa-var-list-ol); }
-.#{$fa-css-prefix}-list-ul:before { content: fa-content($fa-var-list-ul); }
-.#{$fa-css-prefix}-location-arrow:before { content: fa-content($fa-var-location-arrow); }
-.#{$fa-css-prefix}-lock:before { content: fa-content($fa-var-lock); }
-.#{$fa-css-prefix}-lock-open:before { content: fa-content($fa-var-lock-open); }
-.#{$fa-css-prefix}-long-arrow-alt-down:before { content: fa-content($fa-var-long-arrow-alt-down); }
-.#{$fa-css-prefix}-long-arrow-alt-left:before { content: fa-content($fa-var-long-arrow-alt-left); }
-.#{$fa-css-prefix}-long-arrow-alt-right:before { content: fa-content($fa-var-long-arrow-alt-right); }
-.#{$fa-css-prefix}-long-arrow-alt-up:before { content: fa-content($fa-var-long-arrow-alt-up); }
-.#{$fa-css-prefix}-low-vision:before { content: fa-content($fa-var-low-vision); }
-.#{$fa-css-prefix}-luggage-cart:before { content: fa-content($fa-var-luggage-cart); }
-.#{$fa-css-prefix}-lungs:before { content: fa-content($fa-var-lungs); }
-.#{$fa-css-prefix}-lungs-virus:before { content: fa-content($fa-var-lungs-virus); }
-.#{$fa-css-prefix}-lyft:before { content: fa-content($fa-var-lyft); }
-.#{$fa-css-prefix}-magento:before { content: fa-content($fa-var-magento); }
-.#{$fa-css-prefix}-magic:before { content: fa-content($fa-var-magic); }
-.#{$fa-css-prefix}-magnet:before { content: fa-content($fa-var-magnet); }
-.#{$fa-css-prefix}-mail-bulk:before { content: fa-content($fa-var-mail-bulk); }
-.#{$fa-css-prefix}-mailchimp:before { content: fa-content($fa-var-mailchimp); }
-.#{$fa-css-prefix}-male:before { content: fa-content($fa-var-male); }
-.#{$fa-css-prefix}-mandalorian:before { content: fa-content($fa-var-mandalorian); }
-.#{$fa-css-prefix}-map:before { content: fa-content($fa-var-map); }
-.#{$fa-css-prefix}-map-marked:before { content: fa-content($fa-var-map-marked); }
-.#{$fa-css-prefix}-map-marked-alt:before { content: fa-content($fa-var-map-marked-alt); }
-.#{$fa-css-prefix}-map-marker:before { content: fa-content($fa-var-map-marker); }
-.#{$fa-css-prefix}-map-marker-alt:before { content: fa-content($fa-var-map-marker-alt); }
-.#{$fa-css-prefix}-map-pin:before { content: fa-content($fa-var-map-pin); }
-.#{$fa-css-prefix}-map-signs:before { content: fa-content($fa-var-map-signs); }
-.#{$fa-css-prefix}-markdown:before { content: fa-content($fa-var-markdown); }
-.#{$fa-css-prefix}-marker:before { content: fa-content($fa-var-marker); }
-.#{$fa-css-prefix}-mars:before { content: fa-content($fa-var-mars); }
-.#{$fa-css-prefix}-mars-double:before { content: fa-content($fa-var-mars-double); }
-.#{$fa-css-prefix}-mars-stroke:before { content: fa-content($fa-var-mars-stroke); }
-.#{$fa-css-prefix}-mars-stroke-h:before { content: fa-content($fa-var-mars-stroke-h); }
-.#{$fa-css-prefix}-mars-stroke-v:before { content: fa-content($fa-var-mars-stroke-v); }
-.#{$fa-css-prefix}-mask:before { content: fa-content($fa-var-mask); }
-.#{$fa-css-prefix}-mastodon:before { content: fa-content($fa-var-mastodon); }
-.#{$fa-css-prefix}-maxcdn:before { content: fa-content($fa-var-maxcdn); }
-.#{$fa-css-prefix}-mdb:before { content: fa-content($fa-var-mdb); }
-.#{$fa-css-prefix}-medal:before { content: fa-content($fa-var-medal); }
-.#{$fa-css-prefix}-medapps:before { content: fa-content($fa-var-medapps); }
-.#{$fa-css-prefix}-medium:before { content: fa-content($fa-var-medium); }
-.#{$fa-css-prefix}-medium-m:before { content: fa-content($fa-var-medium-m); }
-.#{$fa-css-prefix}-medkit:before { content: fa-content($fa-var-medkit); }
-.#{$fa-css-prefix}-medrt:before { content: fa-content($fa-var-medrt); }
-.#{$fa-css-prefix}-meetup:before { content: fa-content($fa-var-meetup); }
-.#{$fa-css-prefix}-megaport:before { content: fa-content($fa-var-megaport); }
-.#{$fa-css-prefix}-meh:before { content: fa-content($fa-var-meh); }
-.#{$fa-css-prefix}-meh-blank:before { content: fa-content($fa-var-meh-blank); }
-.#{$fa-css-prefix}-meh-rolling-eyes:before { content: fa-content($fa-var-meh-rolling-eyes); }
-.#{$fa-css-prefix}-memory:before { content: fa-content($fa-var-memory); }
-.#{$fa-css-prefix}-mendeley:before { content: fa-content($fa-var-mendeley); }
-.#{$fa-css-prefix}-menorah:before { content: fa-content($fa-var-menorah); }
-.#{$fa-css-prefix}-mercury:before { content: fa-content($fa-var-mercury); }
-.#{$fa-css-prefix}-meteor:before { content: fa-content($fa-var-meteor); }
-.#{$fa-css-prefix}-microblog:before { content: fa-content($fa-var-microblog); }
-.#{$fa-css-prefix}-microchip:before { content: fa-content($fa-var-microchip); }
-.#{$fa-css-prefix}-microphone:before { content: fa-content($fa-var-microphone); }
-.#{$fa-css-prefix}-microphone-alt:before { content: fa-content($fa-var-microphone-alt); }
-.#{$fa-css-prefix}-microphone-alt-slash:before { content: fa-content($fa-var-microphone-alt-slash); }
-.#{$fa-css-prefix}-microphone-slash:before { content: fa-content($fa-var-microphone-slash); }
-.#{$fa-css-prefix}-microscope:before { content: fa-content($fa-var-microscope); }
-.#{$fa-css-prefix}-microsoft:before { content: fa-content($fa-var-microsoft); }
-.#{$fa-css-prefix}-minus:before { content: fa-content($fa-var-minus); }
-.#{$fa-css-prefix}-minus-circle:before { content: fa-content($fa-var-minus-circle); }
-.#{$fa-css-prefix}-minus-square:before { content: fa-content($fa-var-minus-square); }
-.#{$fa-css-prefix}-mitten:before { content: fa-content($fa-var-mitten); }
-.#{$fa-css-prefix}-mix:before { content: fa-content($fa-var-mix); }
-.#{$fa-css-prefix}-mixcloud:before { content: fa-content($fa-var-mixcloud); }
-.#{$fa-css-prefix}-mixer:before { content: fa-content($fa-var-mixer); }
-.#{$fa-css-prefix}-mizuni:before { content: fa-content($fa-var-mizuni); }
-.#{$fa-css-prefix}-mobile:before { content: fa-content($fa-var-mobile); }
-.#{$fa-css-prefix}-mobile-alt:before { content: fa-content($fa-var-mobile-alt); }
-.#{$fa-css-prefix}-modx:before { content: fa-content($fa-var-modx); }
-.#{$fa-css-prefix}-monero:before { content: fa-content($fa-var-monero); }
-.#{$fa-css-prefix}-money-bill:before { content: fa-content($fa-var-money-bill); }
-.#{$fa-css-prefix}-money-bill-alt:before { content: fa-content($fa-var-money-bill-alt); }
-.#{$fa-css-prefix}-money-bill-wave:before { content: fa-content($fa-var-money-bill-wave); }
-.#{$fa-css-prefix}-money-bill-wave-alt:before { content: fa-content($fa-var-money-bill-wave-alt); }
-.#{$fa-css-prefix}-money-check:before { content: fa-content($fa-var-money-check); }
-.#{$fa-css-prefix}-money-check-alt:before { content: fa-content($fa-var-money-check-alt); }
-.#{$fa-css-prefix}-monument:before { content: fa-content($fa-var-monument); }
-.#{$fa-css-prefix}-moon:before { content: fa-content($fa-var-moon); }
-.#{$fa-css-prefix}-mortar-pestle:before { content: fa-content($fa-var-mortar-pestle); }
-.#{$fa-css-prefix}-mosque:before { content: fa-content($fa-var-mosque); }
-.#{$fa-css-prefix}-motorcycle:before { content: fa-content($fa-var-motorcycle); }
-.#{$fa-css-prefix}-mountain:before { content: fa-content($fa-var-mountain); }
-.#{$fa-css-prefix}-mouse:before { content: fa-content($fa-var-mouse); }
-.#{$fa-css-prefix}-mouse-pointer:before { content: fa-content($fa-var-mouse-pointer); }
-.#{$fa-css-prefix}-mug-hot:before { content: fa-content($fa-var-mug-hot); }
-.#{$fa-css-prefix}-music:before { content: fa-content($fa-var-music); }
-.#{$fa-css-prefix}-napster:before { content: fa-content($fa-var-napster); }
-.#{$fa-css-prefix}-neos:before { content: fa-content($fa-var-neos); }
-.#{$fa-css-prefix}-network-wired:before { content: fa-content($fa-var-network-wired); }
-.#{$fa-css-prefix}-neuter:before { content: fa-content($fa-var-neuter); }
-.#{$fa-css-prefix}-newspaper:before { content: fa-content($fa-var-newspaper); }
-.#{$fa-css-prefix}-nimblr:before { content: fa-content($fa-var-nimblr); }
-.#{$fa-css-prefix}-node:before { content: fa-content($fa-var-node); }
-.#{$fa-css-prefix}-node-js:before { content: fa-content($fa-var-node-js); }
-.#{$fa-css-prefix}-not-equal:before { content: fa-content($fa-var-not-equal); }
-.#{$fa-css-prefix}-notes-medical:before { content: fa-content($fa-var-notes-medical); }
-.#{$fa-css-prefix}-npm:before { content: fa-content($fa-var-npm); }
-.#{$fa-css-prefix}-ns8:before { content: fa-content($fa-var-ns8); }
-.#{$fa-css-prefix}-nutritionix:before { content: fa-content($fa-var-nutritionix); }
-.#{$fa-css-prefix}-object-group:before { content: fa-content($fa-var-object-group); }
-.#{$fa-css-prefix}-object-ungroup:before { content: fa-content($fa-var-object-ungroup); }
-.#{$fa-css-prefix}-octopus-deploy:before { content: fa-content($fa-var-octopus-deploy); }
-.#{$fa-css-prefix}-odnoklassniki:before { content: fa-content($fa-var-odnoklassniki); }
-.#{$fa-css-prefix}-odnoklassniki-square:before { content: fa-content($fa-var-odnoklassniki-square); }
-.#{$fa-css-prefix}-oil-can:before { content: fa-content($fa-var-oil-can); }
-.#{$fa-css-prefix}-old-republic:before { content: fa-content($fa-var-old-republic); }
-.#{$fa-css-prefix}-om:before { content: fa-content($fa-var-om); }
-.#{$fa-css-prefix}-opencart:before { content: fa-content($fa-var-opencart); }
-.#{$fa-css-prefix}-openid:before { content: fa-content($fa-var-openid); }
-.#{$fa-css-prefix}-opera:before { content: fa-content($fa-var-opera); }
-.#{$fa-css-prefix}-optin-monster:before { content: fa-content($fa-var-optin-monster); }
-.#{$fa-css-prefix}-orcid:before { content: fa-content($fa-var-orcid); }
-.#{$fa-css-prefix}-osi:before { content: fa-content($fa-var-osi); }
-.#{$fa-css-prefix}-otter:before { content: fa-content($fa-var-otter); }
-.#{$fa-css-prefix}-outdent:before { content: fa-content($fa-var-outdent); }
-.#{$fa-css-prefix}-page4:before { content: fa-content($fa-var-page4); }
-.#{$fa-css-prefix}-pagelines:before { content: fa-content($fa-var-pagelines); }
-.#{$fa-css-prefix}-pager:before { content: fa-content($fa-var-pager); }
-.#{$fa-css-prefix}-paint-brush:before { content: fa-content($fa-var-paint-brush); }
-.#{$fa-css-prefix}-paint-roller:before { content: fa-content($fa-var-paint-roller); }
-.#{$fa-css-prefix}-palette:before { content: fa-content($fa-var-palette); }
-.#{$fa-css-prefix}-palfed:before { content: fa-content($fa-var-palfed); }
-.#{$fa-css-prefix}-pallet:before { content: fa-content($fa-var-pallet); }
-.#{$fa-css-prefix}-paper-plane:before { content: fa-content($fa-var-paper-plane); }
-.#{$fa-css-prefix}-paperclip:before { content: fa-content($fa-var-paperclip); }
-.#{$fa-css-prefix}-parachute-box:before { content: fa-content($fa-var-parachute-box); }
-.#{$fa-css-prefix}-paragraph:before { content: fa-content($fa-var-paragraph); }
-.#{$fa-css-prefix}-parking:before { content: fa-content($fa-var-parking); }
-.#{$fa-css-prefix}-passport:before { content: fa-content($fa-var-passport); }
-.#{$fa-css-prefix}-pastafarianism:before { content: fa-content($fa-var-pastafarianism); }
-.#{$fa-css-prefix}-paste:before { content: fa-content($fa-var-paste); }
-.#{$fa-css-prefix}-patreon:before { content: fa-content($fa-var-patreon); }
-.#{$fa-css-prefix}-pause:before { content: fa-content($fa-var-pause); }
-.#{$fa-css-prefix}-pause-circle:before { content: fa-content($fa-var-pause-circle); }
-.#{$fa-css-prefix}-paw:before { content: fa-content($fa-var-paw); }
-.#{$fa-css-prefix}-paypal:before { content: fa-content($fa-var-paypal); }
-.#{$fa-css-prefix}-peace:before { content: fa-content($fa-var-peace); }
-.#{$fa-css-prefix}-pen:before { content: fa-content($fa-var-pen); }
-.#{$fa-css-prefix}-pen-alt:before { content: fa-content($fa-var-pen-alt); }
-.#{$fa-css-prefix}-pen-fancy:before { content: fa-content($fa-var-pen-fancy); }
-.#{$fa-css-prefix}-pen-nib:before { content: fa-content($fa-var-pen-nib); }
-.#{$fa-css-prefix}-pen-square:before { content: fa-content($fa-var-pen-square); }
-.#{$fa-css-prefix}-pencil-alt:before { content: fa-content($fa-var-pencil-alt); }
-.#{$fa-css-prefix}-pencil-ruler:before { content: fa-content($fa-var-pencil-ruler); }
-.#{$fa-css-prefix}-penny-arcade:before { content: fa-content($fa-var-penny-arcade); }
-.#{$fa-css-prefix}-people-arrows:before { content: fa-content($fa-var-people-arrows); }
-.#{$fa-css-prefix}-people-carry:before { content: fa-content($fa-var-people-carry); }
-.#{$fa-css-prefix}-pepper-hot:before { content: fa-content($fa-var-pepper-hot); }
-.#{$fa-css-prefix}-perbyte:before { content: fa-content($fa-var-perbyte); }
-.#{$fa-css-prefix}-percent:before { content: fa-content($fa-var-percent); }
-.#{$fa-css-prefix}-percentage:before { content: fa-content($fa-var-percentage); }
-.#{$fa-css-prefix}-periscope:before { content: fa-content($fa-var-periscope); }
-.#{$fa-css-prefix}-person-booth:before { content: fa-content($fa-var-person-booth); }
-.#{$fa-css-prefix}-phabricator:before { content: fa-content($fa-var-phabricator); }
-.#{$fa-css-prefix}-phoenix-framework:before { content: fa-content($fa-var-phoenix-framework); }
-.#{$fa-css-prefix}-phoenix-squadron:before { content: fa-content($fa-var-phoenix-squadron); }
-.#{$fa-css-prefix}-phone:before { content: fa-content($fa-var-phone); }
-.#{$fa-css-prefix}-phone-alt:before { content: fa-content($fa-var-phone-alt); }
-.#{$fa-css-prefix}-phone-slash:before { content: fa-content($fa-var-phone-slash); }
-.#{$fa-css-prefix}-phone-square:before { content: fa-content($fa-var-phone-square); }
-.#{$fa-css-prefix}-phone-square-alt:before { content: fa-content($fa-var-phone-square-alt); }
-.#{$fa-css-prefix}-phone-volume:before { content: fa-content($fa-var-phone-volume); }
-.#{$fa-css-prefix}-photo-video:before { content: fa-content($fa-var-photo-video); }
-.#{$fa-css-prefix}-php:before { content: fa-content($fa-var-php); }
-.#{$fa-css-prefix}-pied-piper:before { content: fa-content($fa-var-pied-piper); }
-.#{$fa-css-prefix}-pied-piper-alt:before { content: fa-content($fa-var-pied-piper-alt); }
-.#{$fa-css-prefix}-pied-piper-hat:before { content: fa-content($fa-var-pied-piper-hat); }
-.#{$fa-css-prefix}-pied-piper-pp:before { content: fa-content($fa-var-pied-piper-pp); }
-.#{$fa-css-prefix}-pied-piper-square:before { content: fa-content($fa-var-pied-piper-square); }
-.#{$fa-css-prefix}-piggy-bank:before { content: fa-content($fa-var-piggy-bank); }
-.#{$fa-css-prefix}-pills:before { content: fa-content($fa-var-pills); }
-.#{$fa-css-prefix}-pinterest:before { content: fa-content($fa-var-pinterest); }
-.#{$fa-css-prefix}-pinterest-p:before { content: fa-content($fa-var-pinterest-p); }
-.#{$fa-css-prefix}-pinterest-square:before { content: fa-content($fa-var-pinterest-square); }
-.#{$fa-css-prefix}-pizza-slice:before { content: fa-content($fa-var-pizza-slice); }
-.#{$fa-css-prefix}-place-of-worship:before { content: fa-content($fa-var-place-of-worship); }
-.#{$fa-css-prefix}-plane:before { content: fa-content($fa-var-plane); }
-.#{$fa-css-prefix}-plane-arrival:before { content: fa-content($fa-var-plane-arrival); }
-.#{$fa-css-prefix}-plane-departure:before { content: fa-content($fa-var-plane-departure); }
-.#{$fa-css-prefix}-plane-slash:before { content: fa-content($fa-var-plane-slash); }
-.#{$fa-css-prefix}-play:before { content: fa-content($fa-var-play); }
-.#{$fa-css-prefix}-play-circle:before { content: fa-content($fa-var-play-circle); }
-.#{$fa-css-prefix}-playstation:before { content: fa-content($fa-var-playstation); }
-.#{$fa-css-prefix}-plug:before { content: fa-content($fa-var-plug); }
-.#{$fa-css-prefix}-plus:before { content: fa-content($fa-var-plus); }
-.#{$fa-css-prefix}-plus-circle:before { content: fa-content($fa-var-plus-circle); }
-.#{$fa-css-prefix}-plus-square:before { content: fa-content($fa-var-plus-square); }
-.#{$fa-css-prefix}-podcast:before { content: fa-content($fa-var-podcast); }
-.#{$fa-css-prefix}-poll:before { content: fa-content($fa-var-poll); }
-.#{$fa-css-prefix}-poll-h:before { content: fa-content($fa-var-poll-h); }
-.#{$fa-css-prefix}-poo:before { content: fa-content($fa-var-poo); }
-.#{$fa-css-prefix}-poo-storm:before { content: fa-content($fa-var-poo-storm); }
-.#{$fa-css-prefix}-poop:before { content: fa-content($fa-var-poop); }
-.#{$fa-css-prefix}-portrait:before { content: fa-content($fa-var-portrait); }
-.#{$fa-css-prefix}-pound-sign:before { content: fa-content($fa-var-pound-sign); }
-.#{$fa-css-prefix}-power-off:before { content: fa-content($fa-var-power-off); }
-.#{$fa-css-prefix}-pray:before { content: fa-content($fa-var-pray); }
-.#{$fa-css-prefix}-praying-hands:before { content: fa-content($fa-var-praying-hands); }
-.#{$fa-css-prefix}-prescription:before { content: fa-content($fa-var-prescription); }
-.#{$fa-css-prefix}-prescription-bottle:before { content: fa-content($fa-var-prescription-bottle); }
-.#{$fa-css-prefix}-prescription-bottle-alt:before { content: fa-content($fa-var-prescription-bottle-alt); }
-.#{$fa-css-prefix}-print:before { content: fa-content($fa-var-print); }
-.#{$fa-css-prefix}-procedures:before { content: fa-content($fa-var-procedures); }
-.#{$fa-css-prefix}-product-hunt:before { content: fa-content($fa-var-product-hunt); }
-.#{$fa-css-prefix}-project-diagram:before { content: fa-content($fa-var-project-diagram); }
-.#{$fa-css-prefix}-pump-medical:before { content: fa-content($fa-var-pump-medical); }
-.#{$fa-css-prefix}-pump-soap:before { content: fa-content($fa-var-pump-soap); }
-.#{$fa-css-prefix}-pushed:before { content: fa-content($fa-var-pushed); }
-.#{$fa-css-prefix}-puzzle-piece:before { content: fa-content($fa-var-puzzle-piece); }
-.#{$fa-css-prefix}-python:before { content: fa-content($fa-var-python); }
-.#{$fa-css-prefix}-qq:before { content: fa-content($fa-var-qq); }
-.#{$fa-css-prefix}-qrcode:before { content: fa-content($fa-var-qrcode); }
-.#{$fa-css-prefix}-question:before { content: fa-content($fa-var-question); }
-.#{$fa-css-prefix}-question-circle:before { content: fa-content($fa-var-question-circle); }
-.#{$fa-css-prefix}-quidditch:before { content: fa-content($fa-var-quidditch); }
-.#{$fa-css-prefix}-quinscape:before { content: fa-content($fa-var-quinscape); }
-.#{$fa-css-prefix}-quora:before { content: fa-content($fa-var-quora); }
-.#{$fa-css-prefix}-quote-left:before { content: fa-content($fa-var-quote-left); }
-.#{$fa-css-prefix}-quote-right:before { content: fa-content($fa-var-quote-right); }
-.#{$fa-css-prefix}-quran:before { content: fa-content($fa-var-quran); }
-.#{$fa-css-prefix}-r-project:before { content: fa-content($fa-var-r-project); }
-.#{$fa-css-prefix}-radiation:before { content: fa-content($fa-var-radiation); }
-.#{$fa-css-prefix}-radiation-alt:before { content: fa-content($fa-var-radiation-alt); }
-.#{$fa-css-prefix}-rainbow:before { content: fa-content($fa-var-rainbow); }
-.#{$fa-css-prefix}-random:before { content: fa-content($fa-var-random); }
-.#{$fa-css-prefix}-raspberry-pi:before { content: fa-content($fa-var-raspberry-pi); }
-.#{$fa-css-prefix}-ravelry:before { content: fa-content($fa-var-ravelry); }
-.#{$fa-css-prefix}-react:before { content: fa-content($fa-var-react); }
-.#{$fa-css-prefix}-reacteurope:before { content: fa-content($fa-var-reacteurope); }
-.#{$fa-css-prefix}-readme:before { content: fa-content($fa-var-readme); }
-.#{$fa-css-prefix}-rebel:before { content: fa-content($fa-var-rebel); }
-.#{$fa-css-prefix}-receipt:before { content: fa-content($fa-var-receipt); }
-.#{$fa-css-prefix}-record-vinyl:before { content: fa-content($fa-var-record-vinyl); }
-.#{$fa-css-prefix}-recycle:before { content: fa-content($fa-var-recycle); }
-.#{$fa-css-prefix}-red-river:before { content: fa-content($fa-var-red-river); }
-.#{$fa-css-prefix}-reddit:before { content: fa-content($fa-var-reddit); }
-.#{$fa-css-prefix}-reddit-alien:before { content: fa-content($fa-var-reddit-alien); }
-.#{$fa-css-prefix}-reddit-square:before { content: fa-content($fa-var-reddit-square); }
-.#{$fa-css-prefix}-redhat:before { content: fa-content($fa-var-redhat); }
-.#{$fa-css-prefix}-redo:before { content: fa-content($fa-var-redo); }
-.#{$fa-css-prefix}-redo-alt:before { content: fa-content($fa-var-redo-alt); }
-.#{$fa-css-prefix}-registered:before { content: fa-content($fa-var-registered); }
-.#{$fa-css-prefix}-remove-format:before { content: fa-content($fa-var-remove-format); }
-.#{$fa-css-prefix}-renren:before { content: fa-content($fa-var-renren); }
-.#{$fa-css-prefix}-reply:before { content: fa-content($fa-var-reply); }
-.#{$fa-css-prefix}-reply-all:before { content: fa-content($fa-var-reply-all); }
-.#{$fa-css-prefix}-replyd:before { content: fa-content($fa-var-replyd); }
-.#{$fa-css-prefix}-republican:before { content: fa-content($fa-var-republican); }
-.#{$fa-css-prefix}-researchgate:before { content: fa-content($fa-var-researchgate); }
-.#{$fa-css-prefix}-resolving:before { content: fa-content($fa-var-resolving); }
-.#{$fa-css-prefix}-restroom:before { content: fa-content($fa-var-restroom); }
-.#{$fa-css-prefix}-retweet:before { content: fa-content($fa-var-retweet); }
-.#{$fa-css-prefix}-rev:before { content: fa-content($fa-var-rev); }
-.#{$fa-css-prefix}-ribbon:before { content: fa-content($fa-var-ribbon); }
-.#{$fa-css-prefix}-ring:before { content: fa-content($fa-var-ring); }
-.#{$fa-css-prefix}-road:before { content: fa-content($fa-var-road); }
-.#{$fa-css-prefix}-robot:before { content: fa-content($fa-var-robot); }
-.#{$fa-css-prefix}-rocket:before { content: fa-content($fa-var-rocket); }
-.#{$fa-css-prefix}-rocketchat:before { content: fa-content($fa-var-rocketchat); }
-.#{$fa-css-prefix}-rockrms:before { content: fa-content($fa-var-rockrms); }
-.#{$fa-css-prefix}-route:before { content: fa-content($fa-var-route); }
-.#{$fa-css-prefix}-rss:before { content: fa-content($fa-var-rss); }
-.#{$fa-css-prefix}-rss-square:before { content: fa-content($fa-var-rss-square); }
-.#{$fa-css-prefix}-ruble-sign:before { content: fa-content($fa-var-ruble-sign); }
-.#{$fa-css-prefix}-ruler:before { content: fa-content($fa-var-ruler); }
-.#{$fa-css-prefix}-ruler-combined:before { content: fa-content($fa-var-ruler-combined); }
-.#{$fa-css-prefix}-ruler-horizontal:before { content: fa-content($fa-var-ruler-horizontal); }
-.#{$fa-css-prefix}-ruler-vertical:before { content: fa-content($fa-var-ruler-vertical); }
-.#{$fa-css-prefix}-running:before { content: fa-content($fa-var-running); }
-.#{$fa-css-prefix}-rupee-sign:before { content: fa-content($fa-var-rupee-sign); }
-.#{$fa-css-prefix}-rust:before { content: fa-content($fa-var-rust); }
-.#{$fa-css-prefix}-sad-cry:before { content: fa-content($fa-var-sad-cry); }
-.#{$fa-css-prefix}-sad-tear:before { content: fa-content($fa-var-sad-tear); }
-.#{$fa-css-prefix}-safari:before { content: fa-content($fa-var-safari); }
-.#{$fa-css-prefix}-salesforce:before { content: fa-content($fa-var-salesforce); }
-.#{$fa-css-prefix}-sass:before { content: fa-content($fa-var-sass); }
-.#{$fa-css-prefix}-satellite:before { content: fa-content($fa-var-satellite); }
-.#{$fa-css-prefix}-satellite-dish:before { content: fa-content($fa-var-satellite-dish); }
-.#{$fa-css-prefix}-save:before { content: fa-content($fa-var-save); }
-.#{$fa-css-prefix}-schlix:before { content: fa-content($fa-var-schlix); }
-.#{$fa-css-prefix}-school:before { content: fa-content($fa-var-school); }
-.#{$fa-css-prefix}-screwdriver:before { content: fa-content($fa-var-screwdriver); }
-.#{$fa-css-prefix}-scribd:before { content: fa-content($fa-var-scribd); }
-.#{$fa-css-prefix}-scroll:before { content: fa-content($fa-var-scroll); }
-.#{$fa-css-prefix}-sd-card:before { content: fa-content($fa-var-sd-card); }
-.#{$fa-css-prefix}-search:before { content: fa-content($fa-var-search); }
-.#{$fa-css-prefix}-search-dollar:before { content: fa-content($fa-var-search-dollar); }
-.#{$fa-css-prefix}-search-location:before { content: fa-content($fa-var-search-location); }
-.#{$fa-css-prefix}-search-minus:before { content: fa-content($fa-var-search-minus); }
-.#{$fa-css-prefix}-search-plus:before { content: fa-content($fa-var-search-plus); }
-.#{$fa-css-prefix}-searchengin:before { content: fa-content($fa-var-searchengin); }
-.#{$fa-css-prefix}-seedling:before { content: fa-content($fa-var-seedling); }
-.#{$fa-css-prefix}-sellcast:before { content: fa-content($fa-var-sellcast); }
-.#{$fa-css-prefix}-sellsy:before { content: fa-content($fa-var-sellsy); }
-.#{$fa-css-prefix}-server:before { content: fa-content($fa-var-server); }
-.#{$fa-css-prefix}-servicestack:before { content: fa-content($fa-var-servicestack); }
-.#{$fa-css-prefix}-shapes:before { content: fa-content($fa-var-shapes); }
-.#{$fa-css-prefix}-share:before { content: fa-content($fa-var-share); }
-.#{$fa-css-prefix}-share-alt:before { content: fa-content($fa-var-share-alt); }
-.#{$fa-css-prefix}-share-alt-square:before { content: fa-content($fa-var-share-alt-square); }
-.#{$fa-css-prefix}-share-square:before { content: fa-content($fa-var-share-square); }
-.#{$fa-css-prefix}-shekel-sign:before { content: fa-content($fa-var-shekel-sign); }
-.#{$fa-css-prefix}-shield-alt:before { content: fa-content($fa-var-shield-alt); }
-.#{$fa-css-prefix}-shield-virus:before { content: fa-content($fa-var-shield-virus); }
-.#{$fa-css-prefix}-ship:before { content: fa-content($fa-var-ship); }
-.#{$fa-css-prefix}-shipping-fast:before { content: fa-content($fa-var-shipping-fast); }
-.#{$fa-css-prefix}-shirtsinbulk:before { content: fa-content($fa-var-shirtsinbulk); }
-.#{$fa-css-prefix}-shoe-prints:before { content: fa-content($fa-var-shoe-prints); }
-.#{$fa-css-prefix}-shopify:before { content: fa-content($fa-var-shopify); }
-.#{$fa-css-prefix}-shopping-bag:before { content: fa-content($fa-var-shopping-bag); }
-.#{$fa-css-prefix}-shopping-basket:before { content: fa-content($fa-var-shopping-basket); }
-.#{$fa-css-prefix}-shopping-cart:before { content: fa-content($fa-var-shopping-cart); }
-.#{$fa-css-prefix}-shopware:before { content: fa-content($fa-var-shopware); }
-.#{$fa-css-prefix}-shower:before { content: fa-content($fa-var-shower); }
-.#{$fa-css-prefix}-shuttle-van:before { content: fa-content($fa-var-shuttle-van); }
-.#{$fa-css-prefix}-sign:before { content: fa-content($fa-var-sign); }
-.#{$fa-css-prefix}-sign-in-alt:before { content: fa-content($fa-var-sign-in-alt); }
-.#{$fa-css-prefix}-sign-language:before { content: fa-content($fa-var-sign-language); }
-.#{$fa-css-prefix}-sign-out-alt:before { content: fa-content($fa-var-sign-out-alt); }
-.#{$fa-css-prefix}-signal:before { content: fa-content($fa-var-signal); }
-.#{$fa-css-prefix}-signature:before { content: fa-content($fa-var-signature); }
-.#{$fa-css-prefix}-sim-card:before { content: fa-content($fa-var-sim-card); }
-.#{$fa-css-prefix}-simplybuilt:before { content: fa-content($fa-var-simplybuilt); }
-.#{$fa-css-prefix}-sink:before { content: fa-content($fa-var-sink); }
-.#{$fa-css-prefix}-sistrix:before { content: fa-content($fa-var-sistrix); }
-.#{$fa-css-prefix}-sitemap:before { content: fa-content($fa-var-sitemap); }
-.#{$fa-css-prefix}-sith:before { content: fa-content($fa-var-sith); }
-.#{$fa-css-prefix}-skating:before { content: fa-content($fa-var-skating); }
-.#{$fa-css-prefix}-sketch:before { content: fa-content($fa-var-sketch); }
-.#{$fa-css-prefix}-skiing:before { content: fa-content($fa-var-skiing); }
-.#{$fa-css-prefix}-skiing-nordic:before { content: fa-content($fa-var-skiing-nordic); }
-.#{$fa-css-prefix}-skull:before { content: fa-content($fa-var-skull); }
-.#{$fa-css-prefix}-skull-crossbones:before { content: fa-content($fa-var-skull-crossbones); }
-.#{$fa-css-prefix}-skyatlas:before { content: fa-content($fa-var-skyatlas); }
-.#{$fa-css-prefix}-skype:before { content: fa-content($fa-var-skype); }
-.#{$fa-css-prefix}-slack:before { content: fa-content($fa-var-slack); }
-.#{$fa-css-prefix}-slack-hash:before { content: fa-content($fa-var-slack-hash); }
-.#{$fa-css-prefix}-slash:before { content: fa-content($fa-var-slash); }
-.#{$fa-css-prefix}-sleigh:before { content: fa-content($fa-var-sleigh); }
-.#{$fa-css-prefix}-sliders-h:before { content: fa-content($fa-var-sliders-h); }
-.#{$fa-css-prefix}-slideshare:before { content: fa-content($fa-var-slideshare); }
-.#{$fa-css-prefix}-smile:before { content: fa-content($fa-var-smile); }
-.#{$fa-css-prefix}-smile-beam:before { content: fa-content($fa-var-smile-beam); }
-.#{$fa-css-prefix}-smile-wink:before { content: fa-content($fa-var-smile-wink); }
-.#{$fa-css-prefix}-smog:before { content: fa-content($fa-var-smog); }
-.#{$fa-css-prefix}-smoking:before { content: fa-content($fa-var-smoking); }
-.#{$fa-css-prefix}-smoking-ban:before { content: fa-content($fa-var-smoking-ban); }
-.#{$fa-css-prefix}-sms:before { content: fa-content($fa-var-sms); }
-.#{$fa-css-prefix}-snapchat:before { content: fa-content($fa-var-snapchat); }
-.#{$fa-css-prefix}-snapchat-ghost:before { content: fa-content($fa-var-snapchat-ghost); }
-.#{$fa-css-prefix}-snapchat-square:before { content: fa-content($fa-var-snapchat-square); }
-.#{$fa-css-prefix}-snowboarding:before { content: fa-content($fa-var-snowboarding); }
-.#{$fa-css-prefix}-snowflake:before { content: fa-content($fa-var-snowflake); }
-.#{$fa-css-prefix}-snowman:before { content: fa-content($fa-var-snowman); }
-.#{$fa-css-prefix}-snowplow:before { content: fa-content($fa-var-snowplow); }
-.#{$fa-css-prefix}-soap:before { content: fa-content($fa-var-soap); }
-.#{$fa-css-prefix}-socks:before { content: fa-content($fa-var-socks); }
-.#{$fa-css-prefix}-solar-panel:before { content: fa-content($fa-var-solar-panel); }
-.#{$fa-css-prefix}-sort:before { content: fa-content($fa-var-sort); }
-.#{$fa-css-prefix}-sort-alpha-down:before { content: fa-content($fa-var-sort-alpha-down); }
-.#{$fa-css-prefix}-sort-alpha-down-alt:before { content: fa-content($fa-var-sort-alpha-down-alt); }
-.#{$fa-css-prefix}-sort-alpha-up:before { content: fa-content($fa-var-sort-alpha-up); }
-.#{$fa-css-prefix}-sort-alpha-up-alt:before { content: fa-content($fa-var-sort-alpha-up-alt); }
-.#{$fa-css-prefix}-sort-amount-down:before { content: fa-content($fa-var-sort-amount-down); }
-.#{$fa-css-prefix}-sort-amount-down-alt:before { content: fa-content($fa-var-sort-amount-down-alt); }
-.#{$fa-css-prefix}-sort-amount-up:before { content: fa-content($fa-var-sort-amount-up); }
-.#{$fa-css-prefix}-sort-amount-up-alt:before { content: fa-content($fa-var-sort-amount-up-alt); }
-.#{$fa-css-prefix}-sort-down:before { content: fa-content($fa-var-sort-down); }
-.#{$fa-css-prefix}-sort-numeric-down:before { content: fa-content($fa-var-sort-numeric-down); }
-.#{$fa-css-prefix}-sort-numeric-down-alt:before { content: fa-content($fa-var-sort-numeric-down-alt); }
-.#{$fa-css-prefix}-sort-numeric-up:before { content: fa-content($fa-var-sort-numeric-up); }
-.#{$fa-css-prefix}-sort-numeric-up-alt:before { content: fa-content($fa-var-sort-numeric-up-alt); }
-.#{$fa-css-prefix}-sort-up:before { content: fa-content($fa-var-sort-up); }
-.#{$fa-css-prefix}-soundcloud:before { content: fa-content($fa-var-soundcloud); }
-.#{$fa-css-prefix}-sourcetree:before { content: fa-content($fa-var-sourcetree); }
-.#{$fa-css-prefix}-spa:before { content: fa-content($fa-var-spa); }
-.#{$fa-css-prefix}-space-shuttle:before { content: fa-content($fa-var-space-shuttle); }
-.#{$fa-css-prefix}-speakap:before { content: fa-content($fa-var-speakap); }
-.#{$fa-css-prefix}-speaker-deck:before { content: fa-content($fa-var-speaker-deck); }
-.#{$fa-css-prefix}-spell-check:before { content: fa-content($fa-var-spell-check); }
-.#{$fa-css-prefix}-spider:before { content: fa-content($fa-var-spider); }
-.#{$fa-css-prefix}-spinner:before { content: fa-content($fa-var-spinner); }
-.#{$fa-css-prefix}-splotch:before { content: fa-content($fa-var-splotch); }
-.#{$fa-css-prefix}-spotify:before { content: fa-content($fa-var-spotify); }
-.#{$fa-css-prefix}-spray-can:before { content: fa-content($fa-var-spray-can); }
-.#{$fa-css-prefix}-square:before { content: fa-content($fa-var-square); }
-.#{$fa-css-prefix}-square-full:before { content: fa-content($fa-var-square-full); }
-.#{$fa-css-prefix}-square-root-alt:before { content: fa-content($fa-var-square-root-alt); }
-.#{$fa-css-prefix}-squarespace:before { content: fa-content($fa-var-squarespace); }
-.#{$fa-css-prefix}-stack-exchange:before { content: fa-content($fa-var-stack-exchange); }
-.#{$fa-css-prefix}-stack-overflow:before { content: fa-content($fa-var-stack-overflow); }
-.#{$fa-css-prefix}-stackpath:before { content: fa-content($fa-var-stackpath); }
-.#{$fa-css-prefix}-stamp:before { content: fa-content($fa-var-stamp); }
-.#{$fa-css-prefix}-star:before { content: fa-content($fa-var-star); }
-.#{$fa-css-prefix}-star-and-crescent:before { content: fa-content($fa-var-star-and-crescent); }
-.#{$fa-css-prefix}-star-half:before { content: fa-content($fa-var-star-half); }
-.#{$fa-css-prefix}-star-half-alt:before { content: fa-content($fa-var-star-half-alt); }
-.#{$fa-css-prefix}-star-of-david:before { content: fa-content($fa-var-star-of-david); }
-.#{$fa-css-prefix}-star-of-life:before { content: fa-content($fa-var-star-of-life); }
-.#{$fa-css-prefix}-staylinked:before { content: fa-content($fa-var-staylinked); }
-.#{$fa-css-prefix}-steam:before { content: fa-content($fa-var-steam); }
-.#{$fa-css-prefix}-steam-square:before { content: fa-content($fa-var-steam-square); }
-.#{$fa-css-prefix}-steam-symbol:before { content: fa-content($fa-var-steam-symbol); }
-.#{$fa-css-prefix}-step-backward:before { content: fa-content($fa-var-step-backward); }
-.#{$fa-css-prefix}-step-forward:before { content: fa-content($fa-var-step-forward); }
-.#{$fa-css-prefix}-stethoscope:before { content: fa-content($fa-var-stethoscope); }
-.#{$fa-css-prefix}-sticker-mule:before { content: fa-content($fa-var-sticker-mule); }
-.#{$fa-css-prefix}-sticky-note:before { content: fa-content($fa-var-sticky-note); }
-.#{$fa-css-prefix}-stop:before { content: fa-content($fa-var-stop); }
-.#{$fa-css-prefix}-stop-circle:before { content: fa-content($fa-var-stop-circle); }
-.#{$fa-css-prefix}-stopwatch:before { content: fa-content($fa-var-stopwatch); }
-.#{$fa-css-prefix}-stopwatch-20:before { content: fa-content($fa-var-stopwatch-20); }
-.#{$fa-css-prefix}-store:before { content: fa-content($fa-var-store); }
-.#{$fa-css-prefix}-store-alt:before { content: fa-content($fa-var-store-alt); }
-.#{$fa-css-prefix}-store-alt-slash:before { content: fa-content($fa-var-store-alt-slash); }
-.#{$fa-css-prefix}-store-slash:before { content: fa-content($fa-var-store-slash); }
-.#{$fa-css-prefix}-strava:before { content: fa-content($fa-var-strava); }
-.#{$fa-css-prefix}-stream:before { content: fa-content($fa-var-stream); }
-.#{$fa-css-prefix}-street-view:before { content: fa-content($fa-var-street-view); }
-.#{$fa-css-prefix}-strikethrough:before { content: fa-content($fa-var-strikethrough); }
-.#{$fa-css-prefix}-stripe:before { content: fa-content($fa-var-stripe); }
-.#{$fa-css-prefix}-stripe-s:before { content: fa-content($fa-var-stripe-s); }
-.#{$fa-css-prefix}-stroopwafel:before { content: fa-content($fa-var-stroopwafel); }
-.#{$fa-css-prefix}-studiovinari:before { content: fa-content($fa-var-studiovinari); }
-.#{$fa-css-prefix}-stumbleupon:before { content: fa-content($fa-var-stumbleupon); }
-.#{$fa-css-prefix}-stumbleupon-circle:before { content: fa-content($fa-var-stumbleupon-circle); }
-.#{$fa-css-prefix}-subscript:before { content: fa-content($fa-var-subscript); }
-.#{$fa-css-prefix}-subway:before { content: fa-content($fa-var-subway); }
-.#{$fa-css-prefix}-suitcase:before { content: fa-content($fa-var-suitcase); }
-.#{$fa-css-prefix}-suitcase-rolling:before { content: fa-content($fa-var-suitcase-rolling); }
-.#{$fa-css-prefix}-sun:before { content: fa-content($fa-var-sun); }
-.#{$fa-css-prefix}-superpowers:before { content: fa-content($fa-var-superpowers); }
-.#{$fa-css-prefix}-superscript:before { content: fa-content($fa-var-superscript); }
-.#{$fa-css-prefix}-supple:before { content: fa-content($fa-var-supple); }
-.#{$fa-css-prefix}-surprise:before { content: fa-content($fa-var-surprise); }
-.#{$fa-css-prefix}-suse:before { content: fa-content($fa-var-suse); }
-.#{$fa-css-prefix}-swatchbook:before { content: fa-content($fa-var-swatchbook); }
-.#{$fa-css-prefix}-swift:before { content: fa-content($fa-var-swift); }
-.#{$fa-css-prefix}-swimmer:before { content: fa-content($fa-var-swimmer); }
-.#{$fa-css-prefix}-swimming-pool:before { content: fa-content($fa-var-swimming-pool); }
-.#{$fa-css-prefix}-symfony:before { content: fa-content($fa-var-symfony); }
-.#{$fa-css-prefix}-synagogue:before { content: fa-content($fa-var-synagogue); }
-.#{$fa-css-prefix}-sync:before { content: fa-content($fa-var-sync); }
-.#{$fa-css-prefix}-sync-alt:before { content: fa-content($fa-var-sync-alt); }
-.#{$fa-css-prefix}-syringe:before { content: fa-content($fa-var-syringe); }
-.#{$fa-css-prefix}-table:before { content: fa-content($fa-var-table); }
-.#{$fa-css-prefix}-table-tennis:before { content: fa-content($fa-var-table-tennis); }
-.#{$fa-css-prefix}-tablet:before { content: fa-content($fa-var-tablet); }
-.#{$fa-css-prefix}-tablet-alt:before { content: fa-content($fa-var-tablet-alt); }
-.#{$fa-css-prefix}-tablets:before { content: fa-content($fa-var-tablets); }
-.#{$fa-css-prefix}-tachometer-alt:before { content: fa-content($fa-var-tachometer-alt); }
-.#{$fa-css-prefix}-tag:before { content: fa-content($fa-var-tag); }
-.#{$fa-css-prefix}-tags:before { content: fa-content($fa-var-tags); }
-.#{$fa-css-prefix}-tape:before { content: fa-content($fa-var-tape); }
-.#{$fa-css-prefix}-tasks:before { content: fa-content($fa-var-tasks); }
-.#{$fa-css-prefix}-taxi:before { content: fa-content($fa-var-taxi); }
-.#{$fa-css-prefix}-teamspeak:before { content: fa-content($fa-var-teamspeak); }
-.#{$fa-css-prefix}-teeth:before { content: fa-content($fa-var-teeth); }
-.#{$fa-css-prefix}-teeth-open:before { content: fa-content($fa-var-teeth-open); }
-.#{$fa-css-prefix}-telegram:before { content: fa-content($fa-var-telegram); }
-.#{$fa-css-prefix}-telegram-plane:before { content: fa-content($fa-var-telegram-plane); }
-.#{$fa-css-prefix}-temperature-high:before { content: fa-content($fa-var-temperature-high); }
-.#{$fa-css-prefix}-temperature-low:before { content: fa-content($fa-var-temperature-low); }
-.#{$fa-css-prefix}-tencent-weibo:before { content: fa-content($fa-var-tencent-weibo); }
-.#{$fa-css-prefix}-tenge:before { content: fa-content($fa-var-tenge); }
-.#{$fa-css-prefix}-terminal:before { content: fa-content($fa-var-terminal); }
-.#{$fa-css-prefix}-text-height:before { content: fa-content($fa-var-text-height); }
-.#{$fa-css-prefix}-text-width:before { content: fa-content($fa-var-text-width); }
-.#{$fa-css-prefix}-th:before { content: fa-content($fa-var-th); }
-.#{$fa-css-prefix}-th-large:before { content: fa-content($fa-var-th-large); }
-.#{$fa-css-prefix}-th-list:before { content: fa-content($fa-var-th-list); }
-.#{$fa-css-prefix}-the-red-yeti:before { content: fa-content($fa-var-the-red-yeti); }
-.#{$fa-css-prefix}-theater-masks:before { content: fa-content($fa-var-theater-masks); }
-.#{$fa-css-prefix}-themeco:before { content: fa-content($fa-var-themeco); }
-.#{$fa-css-prefix}-themeisle:before { content: fa-content($fa-var-themeisle); }
-.#{$fa-css-prefix}-thermometer:before { content: fa-content($fa-var-thermometer); }
-.#{$fa-css-prefix}-thermometer-empty:before { content: fa-content($fa-var-thermometer-empty); }
-.#{$fa-css-prefix}-thermometer-full:before { content: fa-content($fa-var-thermometer-full); }
-.#{$fa-css-prefix}-thermometer-half:before { content: fa-content($fa-var-thermometer-half); }
-.#{$fa-css-prefix}-thermometer-quarter:before { content: fa-content($fa-var-thermometer-quarter); }
-.#{$fa-css-prefix}-thermometer-three-quarters:before { content: fa-content($fa-var-thermometer-three-quarters); }
-.#{$fa-css-prefix}-think-peaks:before { content: fa-content($fa-var-think-peaks); }
-.#{$fa-css-prefix}-thumbs-down:before { content: fa-content($fa-var-thumbs-down); }
-.#{$fa-css-prefix}-thumbs-up:before { content: fa-content($fa-var-thumbs-up); }
-.#{$fa-css-prefix}-thumbtack:before { content: fa-content($fa-var-thumbtack); }
-.#{$fa-css-prefix}-ticket-alt:before { content: fa-content($fa-var-ticket-alt); }
-.#{$fa-css-prefix}-tiktok:before { content: fa-content($fa-var-tiktok); }
-.#{$fa-css-prefix}-times:before { content: fa-content($fa-var-times); }
-.#{$fa-css-prefix}-times-circle:before { content: fa-content($fa-var-times-circle); }
-.#{$fa-css-prefix}-tint:before { content: fa-content($fa-var-tint); }
-.#{$fa-css-prefix}-tint-slash:before { content: fa-content($fa-var-tint-slash); }
-.#{$fa-css-prefix}-tired:before { content: fa-content($fa-var-tired); }
-.#{$fa-css-prefix}-toggle-off:before { content: fa-content($fa-var-toggle-off); }
-.#{$fa-css-prefix}-toggle-on:before { content: fa-content($fa-var-toggle-on); }
-.#{$fa-css-prefix}-toilet:before { content: fa-content($fa-var-toilet); }
-.#{$fa-css-prefix}-toilet-paper:before { content: fa-content($fa-var-toilet-paper); }
-.#{$fa-css-prefix}-toilet-paper-slash:before { content: fa-content($fa-var-toilet-paper-slash); }
-.#{$fa-css-prefix}-toolbox:before { content: fa-content($fa-var-toolbox); }
-.#{$fa-css-prefix}-tools:before { content: fa-content($fa-var-tools); }
-.#{$fa-css-prefix}-tooth:before { content: fa-content($fa-var-tooth); }
-.#{$fa-css-prefix}-torah:before { content: fa-content($fa-var-torah); }
-.#{$fa-css-prefix}-torii-gate:before { content: fa-content($fa-var-torii-gate); }
-.#{$fa-css-prefix}-tractor:before { content: fa-content($fa-var-tractor); }
-.#{$fa-css-prefix}-trade-federation:before { content: fa-content($fa-var-trade-federation); }
-.#{$fa-css-prefix}-trademark:before { content: fa-content($fa-var-trademark); }
-.#{$fa-css-prefix}-traffic-light:before { content: fa-content($fa-var-traffic-light); }
-.#{$fa-css-prefix}-trailer:before { content: fa-content($fa-var-trailer); }
-.#{$fa-css-prefix}-train:before { content: fa-content($fa-var-train); }
-.#{$fa-css-prefix}-tram:before { content: fa-content($fa-var-tram); }
-.#{$fa-css-prefix}-transgender:before { content: fa-content($fa-var-transgender); }
-.#{$fa-css-prefix}-transgender-alt:before { content: fa-content($fa-var-transgender-alt); }
-.#{$fa-css-prefix}-trash:before { content: fa-content($fa-var-trash); }
-.#{$fa-css-prefix}-trash-alt:before { content: fa-content($fa-var-trash-alt); }
-.#{$fa-css-prefix}-trash-restore:before { content: fa-content($fa-var-trash-restore); }
-.#{$fa-css-prefix}-trash-restore-alt:before { content: fa-content($fa-var-trash-restore-alt); }
-.#{$fa-css-prefix}-tree:before { content: fa-content($fa-var-tree); }
-.#{$fa-css-prefix}-trello:before { content: fa-content($fa-var-trello); }
-.#{$fa-css-prefix}-trophy:before { content: fa-content($fa-var-trophy); }
-.#{$fa-css-prefix}-truck:before { content: fa-content($fa-var-truck); }
-.#{$fa-css-prefix}-truck-loading:before { content: fa-content($fa-var-truck-loading); }
-.#{$fa-css-prefix}-truck-monster:before { content: fa-content($fa-var-truck-monster); }
-.#{$fa-css-prefix}-truck-moving:before { content: fa-content($fa-var-truck-moving); }
-.#{$fa-css-prefix}-truck-pickup:before { content: fa-content($fa-var-truck-pickup); }
-.#{$fa-css-prefix}-tshirt:before { content: fa-content($fa-var-tshirt); }
-.#{$fa-css-prefix}-tty:before { content: fa-content($fa-var-tty); }
-.#{$fa-css-prefix}-tumblr:before { content: fa-content($fa-var-tumblr); }
-.#{$fa-css-prefix}-tumblr-square:before { content: fa-content($fa-var-tumblr-square); }
-.#{$fa-css-prefix}-tv:before { content: fa-content($fa-var-tv); }
-.#{$fa-css-prefix}-twitch:before { content: fa-content($fa-var-twitch); }
-.#{$fa-css-prefix}-twitter:before { content: fa-content($fa-var-twitter); }
-.#{$fa-css-prefix}-twitter-square:before { content: fa-content($fa-var-twitter-square); }
-.#{$fa-css-prefix}-typo3:before { content: fa-content($fa-var-typo3); }
-.#{$fa-css-prefix}-uber:before { content: fa-content($fa-var-uber); }
-.#{$fa-css-prefix}-ubuntu:before { content: fa-content($fa-var-ubuntu); }
-.#{$fa-css-prefix}-uikit:before { content: fa-content($fa-var-uikit); }
-.#{$fa-css-prefix}-umbraco:before { content: fa-content($fa-var-umbraco); }
-.#{$fa-css-prefix}-umbrella:before { content: fa-content($fa-var-umbrella); }
-.#{$fa-css-prefix}-umbrella-beach:before { content: fa-content($fa-var-umbrella-beach); }
-.#{$fa-css-prefix}-uncharted:before { content: fa-content($fa-var-uncharted); }
-.#{$fa-css-prefix}-underline:before { content: fa-content($fa-var-underline); }
-.#{$fa-css-prefix}-undo:before { content: fa-content($fa-var-undo); }
-.#{$fa-css-prefix}-undo-alt:before { content: fa-content($fa-var-undo-alt); }
-.#{$fa-css-prefix}-uniregistry:before { content: fa-content($fa-var-uniregistry); }
-.#{$fa-css-prefix}-unity:before { content: fa-content($fa-var-unity); }
-.#{$fa-css-prefix}-universal-access:before { content: fa-content($fa-var-universal-access); }
-.#{$fa-css-prefix}-university:before { content: fa-content($fa-var-university); }
-.#{$fa-css-prefix}-unlink:before { content: fa-content($fa-var-unlink); }
-.#{$fa-css-prefix}-unlock:before { content: fa-content($fa-var-unlock); }
-.#{$fa-css-prefix}-unlock-alt:before { content: fa-content($fa-var-unlock-alt); }
-.#{$fa-css-prefix}-unsplash:before { content: fa-content($fa-var-unsplash); }
-.#{$fa-css-prefix}-untappd:before { content: fa-content($fa-var-untappd); }
-.#{$fa-css-prefix}-upload:before { content: fa-content($fa-var-upload); }
-.#{$fa-css-prefix}-ups:before { content: fa-content($fa-var-ups); }
-.#{$fa-css-prefix}-usb:before { content: fa-content($fa-var-usb); }
-.#{$fa-css-prefix}-user:before { content: fa-content($fa-var-user); }
-.#{$fa-css-prefix}-user-alt:before { content: fa-content($fa-var-user-alt); }
-.#{$fa-css-prefix}-user-alt-slash:before { content: fa-content($fa-var-user-alt-slash); }
-.#{$fa-css-prefix}-user-astronaut:before { content: fa-content($fa-var-user-astronaut); }
-.#{$fa-css-prefix}-user-check:before { content: fa-content($fa-var-user-check); }
-.#{$fa-css-prefix}-user-circle:before { content: fa-content($fa-var-user-circle); }
-.#{$fa-css-prefix}-user-clock:before { content: fa-content($fa-var-user-clock); }
-.#{$fa-css-prefix}-user-cog:before { content: fa-content($fa-var-user-cog); }
-.#{$fa-css-prefix}-user-edit:before { content: fa-content($fa-var-user-edit); }
-.#{$fa-css-prefix}-user-friends:before { content: fa-content($fa-var-user-friends); }
-.#{$fa-css-prefix}-user-graduate:before { content: fa-content($fa-var-user-graduate); }
-.#{$fa-css-prefix}-user-injured:before { content: fa-content($fa-var-user-injured); }
-.#{$fa-css-prefix}-user-lock:before { content: fa-content($fa-var-user-lock); }
-.#{$fa-css-prefix}-user-md:before { content: fa-content($fa-var-user-md); }
-.#{$fa-css-prefix}-user-minus:before { content: fa-content($fa-var-user-minus); }
-.#{$fa-css-prefix}-user-ninja:before { content: fa-content($fa-var-user-ninja); }
-.#{$fa-css-prefix}-user-nurse:before { content: fa-content($fa-var-user-nurse); }
-.#{$fa-css-prefix}-user-plus:before { content: fa-content($fa-var-user-plus); }
-.#{$fa-css-prefix}-user-secret:before { content: fa-content($fa-var-user-secret); }
-.#{$fa-css-prefix}-user-shield:before { content: fa-content($fa-var-user-shield); }
-.#{$fa-css-prefix}-user-slash:before { content: fa-content($fa-var-user-slash); }
-.#{$fa-css-prefix}-user-tag:before { content: fa-content($fa-var-user-tag); }
-.#{$fa-css-prefix}-user-tie:before { content: fa-content($fa-var-user-tie); }
-.#{$fa-css-prefix}-user-times:before { content: fa-content($fa-var-user-times); }
-.#{$fa-css-prefix}-users:before { content: fa-content($fa-var-users); }
-.#{$fa-css-prefix}-users-cog:before { content: fa-content($fa-var-users-cog); }
-.#{$fa-css-prefix}-users-slash:before { content: fa-content($fa-var-users-slash); }
-.#{$fa-css-prefix}-usps:before { content: fa-content($fa-var-usps); }
-.#{$fa-css-prefix}-ussunnah:before { content: fa-content($fa-var-ussunnah); }
-.#{$fa-css-prefix}-utensil-spoon:before { content: fa-content($fa-var-utensil-spoon); }
-.#{$fa-css-prefix}-utensils:before { content: fa-content($fa-var-utensils); }
-.#{$fa-css-prefix}-vaadin:before { content: fa-content($fa-var-vaadin); }
-.#{$fa-css-prefix}-vector-square:before { content: fa-content($fa-var-vector-square); }
-.#{$fa-css-prefix}-venus:before { content: fa-content($fa-var-venus); }
-.#{$fa-css-prefix}-venus-double:before { content: fa-content($fa-var-venus-double); }
-.#{$fa-css-prefix}-venus-mars:before { content: fa-content($fa-var-venus-mars); }
-.#{$fa-css-prefix}-vest:before { content: fa-content($fa-var-vest); }
-.#{$fa-css-prefix}-vest-patches:before { content: fa-content($fa-var-vest-patches); }
-.#{$fa-css-prefix}-viacoin:before { content: fa-content($fa-var-viacoin); }
-.#{$fa-css-prefix}-viadeo:before { content: fa-content($fa-var-viadeo); }
-.#{$fa-css-prefix}-viadeo-square:before { content: fa-content($fa-var-viadeo-square); }
-.#{$fa-css-prefix}-vial:before { content: fa-content($fa-var-vial); }
-.#{$fa-css-prefix}-vials:before { content: fa-content($fa-var-vials); }
-.#{$fa-css-prefix}-viber:before { content: fa-content($fa-var-viber); }
-.#{$fa-css-prefix}-video:before { content: fa-content($fa-var-video); }
-.#{$fa-css-prefix}-video-slash:before { content: fa-content($fa-var-video-slash); }
-.#{$fa-css-prefix}-vihara:before { content: fa-content($fa-var-vihara); }
-.#{$fa-css-prefix}-vimeo:before { content: fa-content($fa-var-vimeo); }
-.#{$fa-css-prefix}-vimeo-square:before { content: fa-content($fa-var-vimeo-square); }
-.#{$fa-css-prefix}-vimeo-v:before { content: fa-content($fa-var-vimeo-v); }
-.#{$fa-css-prefix}-vine:before { content: fa-content($fa-var-vine); }
-.#{$fa-css-prefix}-virus:before { content: fa-content($fa-var-virus); }
-.#{$fa-css-prefix}-virus-slash:before { content: fa-content($fa-var-virus-slash); }
-.#{$fa-css-prefix}-viruses:before { content: fa-content($fa-var-viruses); }
-.#{$fa-css-prefix}-vk:before { content: fa-content($fa-var-vk); }
-.#{$fa-css-prefix}-vnv:before { content: fa-content($fa-var-vnv); }
-.#{$fa-css-prefix}-voicemail:before { content: fa-content($fa-var-voicemail); }
-.#{$fa-css-prefix}-volleyball-ball:before { content: fa-content($fa-var-volleyball-ball); }
-.#{$fa-css-prefix}-volume-down:before { content: fa-content($fa-var-volume-down); }
-.#{$fa-css-prefix}-volume-mute:before { content: fa-content($fa-var-volume-mute); }
-.#{$fa-css-prefix}-volume-off:before { content: fa-content($fa-var-volume-off); }
-.#{$fa-css-prefix}-volume-up:before { content: fa-content($fa-var-volume-up); }
-.#{$fa-css-prefix}-vote-yea:before { content: fa-content($fa-var-vote-yea); }
-.#{$fa-css-prefix}-vr-cardboard:before { content: fa-content($fa-var-vr-cardboard); }
-.#{$fa-css-prefix}-vuejs:before { content: fa-content($fa-var-vuejs); }
-.#{$fa-css-prefix}-walking:before { content: fa-content($fa-var-walking); }
-.#{$fa-css-prefix}-wallet:before { content: fa-content($fa-var-wallet); }
-.#{$fa-css-prefix}-warehouse:before { content: fa-content($fa-var-warehouse); }
-.#{$fa-css-prefix}-watchman-monitoring:before { content: fa-content($fa-var-watchman-monitoring); }
-.#{$fa-css-prefix}-water:before { content: fa-content($fa-var-water); }
-.#{$fa-css-prefix}-wave-square:before { content: fa-content($fa-var-wave-square); }
-.#{$fa-css-prefix}-waze:before { content: fa-content($fa-var-waze); }
-.#{$fa-css-prefix}-weebly:before { content: fa-content($fa-var-weebly); }
-.#{$fa-css-prefix}-weibo:before { content: fa-content($fa-var-weibo); }
-.#{$fa-css-prefix}-weight:before { content: fa-content($fa-var-weight); }
-.#{$fa-css-prefix}-weight-hanging:before { content: fa-content($fa-var-weight-hanging); }
-.#{$fa-css-prefix}-weixin:before { content: fa-content($fa-var-weixin); }
-.#{$fa-css-prefix}-whatsapp:before { content: fa-content($fa-var-whatsapp); }
-.#{$fa-css-prefix}-whatsapp-square:before { content: fa-content($fa-var-whatsapp-square); }
-.#{$fa-css-prefix}-wheelchair:before { content: fa-content($fa-var-wheelchair); }
-.#{$fa-css-prefix}-whmcs:before { content: fa-content($fa-var-whmcs); }
-.#{$fa-css-prefix}-wifi:before { content: fa-content($fa-var-wifi); }
-.#{$fa-css-prefix}-wikipedia-w:before { content: fa-content($fa-var-wikipedia-w); }
-.#{$fa-css-prefix}-wind:before { content: fa-content($fa-var-wind); }
-.#{$fa-css-prefix}-window-close:before { content: fa-content($fa-var-window-close); }
-.#{$fa-css-prefix}-window-maximize:before { content: fa-content($fa-var-window-maximize); }
-.#{$fa-css-prefix}-window-minimize:before { content: fa-content($fa-var-window-minimize); }
-.#{$fa-css-prefix}-window-restore:before { content: fa-content($fa-var-window-restore); }
-.#{$fa-css-prefix}-windows:before { content: fa-content($fa-var-windows); }
-.#{$fa-css-prefix}-wine-bottle:before { content: fa-content($fa-var-wine-bottle); }
-.#{$fa-css-prefix}-wine-glass:before { content: fa-content($fa-var-wine-glass); }
-.#{$fa-css-prefix}-wine-glass-alt:before { content: fa-content($fa-var-wine-glass-alt); }
-.#{$fa-css-prefix}-wix:before { content: fa-content($fa-var-wix); }
-.#{$fa-css-prefix}-wizards-of-the-coast:before { content: fa-content($fa-var-wizards-of-the-coast); }
-.#{$fa-css-prefix}-wodu:before { content: fa-content($fa-var-wodu); }
-.#{$fa-css-prefix}-wolf-pack-battalion:before { content: fa-content($fa-var-wolf-pack-battalion); }
-.#{$fa-css-prefix}-won-sign:before { content: fa-content($fa-var-won-sign); }
-.#{$fa-css-prefix}-wordpress:before { content: fa-content($fa-var-wordpress); }
-.#{$fa-css-prefix}-wordpress-simple:before { content: fa-content($fa-var-wordpress-simple); }
-.#{$fa-css-prefix}-wpbeginner:before { content: fa-content($fa-var-wpbeginner); }
-.#{$fa-css-prefix}-wpexplorer:before { content: fa-content($fa-var-wpexplorer); }
-.#{$fa-css-prefix}-wpforms:before { content: fa-content($fa-var-wpforms); }
-.#{$fa-css-prefix}-wpressr:before { content: fa-content($fa-var-wpressr); }
-.#{$fa-css-prefix}-wrench:before { content: fa-content($fa-var-wrench); }
-.#{$fa-css-prefix}-x-ray:before { content: fa-content($fa-var-x-ray); }
-.#{$fa-css-prefix}-xbox:before { content: fa-content($fa-var-xbox); }
-.#{$fa-css-prefix}-xing:before { content: fa-content($fa-var-xing); }
-.#{$fa-css-prefix}-xing-square:before { content: fa-content($fa-var-xing-square); }
-.#{$fa-css-prefix}-y-combinator:before { content: fa-content($fa-var-y-combinator); }
-.#{$fa-css-prefix}-yahoo:before { content: fa-content($fa-var-yahoo); }
-.#{$fa-css-prefix}-yammer:before { content: fa-content($fa-var-yammer); }
-.#{$fa-css-prefix}-yandex:before { content: fa-content($fa-var-yandex); }
-.#{$fa-css-prefix}-yandex-international:before { content: fa-content($fa-var-yandex-international); }
-.#{$fa-css-prefix}-yarn:before { content: fa-content($fa-var-yarn); }
-.#{$fa-css-prefix}-yelp:before { content: fa-content($fa-var-yelp); }
-.#{$fa-css-prefix}-yen-sign:before { content: fa-content($fa-var-yen-sign); }
-.#{$fa-css-prefix}-yin-yang:before { content: fa-content($fa-var-yin-yang); }
-.#{$fa-css-prefix}-yoast:before { content: fa-content($fa-var-yoast); }
-.#{$fa-css-prefix}-youtube:before { content: fa-content($fa-var-youtube); }
-.#{$fa-css-prefix}-youtube-square:before { content: fa-content($fa-var-youtube-square); }
-.#{$fa-css-prefix}-zhihu:before { content: fa-content($fa-var-zhihu); }
diff --git a/src/assets/styles/fontawesome/_larger.scss b/src/assets/styles/fontawesome/_larger.scss
deleted file mode 100644
index 27c2ad5f..00000000
--- a/src/assets/styles/fontawesome/_larger.scss
+++ /dev/null
@@ -1,23 +0,0 @@
-// Icon Sizes
-// -------------------------
-
-// makes the font 33% larger relative to the icon container
-.#{$fa-css-prefix}-lg {
- font-size: (4em / 3);
- line-height: (3em / 4);
- vertical-align: -.0667em;
-}
-
-.#{$fa-css-prefix}-xs {
- font-size: .75em;
-}
-
-.#{$fa-css-prefix}-sm {
- font-size: .875em;
-}
-
-@for $i from 1 through 10 {
- .#{$fa-css-prefix}-#{$i}x {
- font-size: $i * 1em;
- }
-}
diff --git a/src/assets/styles/fontawesome/_list.scss b/src/assets/styles/fontawesome/_list.scss
deleted file mode 100644
index 8ebf3333..00000000
--- a/src/assets/styles/fontawesome/_list.scss
+++ /dev/null
@@ -1,18 +0,0 @@
-// List Icons
-// -------------------------
-
-.#{$fa-css-prefix}-ul {
- list-style-type: none;
- margin-left: $fa-li-width * 5/4;
- padding-left: 0;
-
- > li { position: relative; }
-}
-
-.#{$fa-css-prefix}-li {
- left: -$fa-li-width;
- position: absolute;
- text-align: center;
- width: $fa-li-width;
- line-height: inherit;
-}
diff --git a/src/assets/styles/fontawesome/_mixins.scss b/src/assets/styles/fontawesome/_mixins.scss
deleted file mode 100644
index 55baeeba..00000000
--- a/src/assets/styles/fontawesome/_mixins.scss
+++ /dev/null
@@ -1,56 +0,0 @@
-// Mixins
-// --------------------------
-
-@mixin fa-icon {
- -webkit-font-smoothing: antialiased;
- -moz-osx-font-smoothing: grayscale;
- display: inline-block;
- font-style: normal;
- font-variant: normal;
- font-weight: normal;
- line-height: 1;
-}
-
-@mixin fa-icon-rotate($degrees, $rotation) {
- -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=#{$rotation})";
- transform: rotate($degrees);
-}
-
-@mixin fa-icon-flip($horiz, $vert, $rotation) {
- -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=#{$rotation}, mirror=1)";
- transform: scale($horiz, $vert);
-}
-
-
-// Only display content to screen readers. A la Bootstrap 4.
-//
-// See: http://a11yproject.com/posts/how-to-hide-content/
-
-@mixin sr-only {
- border: 0;
- clip: rect(0, 0, 0, 0);
- height: 1px;
- margin: -1px;
- overflow: hidden;
- padding: 0;
- position: absolute;
- width: 1px;
-}
-
-// Use in conjunction with .sr-only to only display content when it's focused.
-//
-// Useful for "Skip to main content" links; see http://www.w3.org/TR/2013/NOTE-WCAG20-TECHS-20130905/G1
-//
-// Credit: HTML5 Boilerplate
-
-@mixin sr-only-focusable {
- &:active,
- &:focus {
- clip: auto;
- height: auto;
- margin: 0;
- overflow: visible;
- position: static;
- width: auto;
- }
-}
diff --git a/src/assets/styles/fontawesome/_rotated-flipped.scss b/src/assets/styles/fontawesome/_rotated-flipped.scss
deleted file mode 100644
index 164d9721..00000000
--- a/src/assets/styles/fontawesome/_rotated-flipped.scss
+++ /dev/null
@@ -1,24 +0,0 @@
-// Rotated & Flipped Icons
-// -------------------------
-
-.#{$fa-css-prefix}-rotate-90 { @include fa-icon-rotate(90deg, 1); }
-.#{$fa-css-prefix}-rotate-180 { @include fa-icon-rotate(180deg, 2); }
-.#{$fa-css-prefix}-rotate-270 { @include fa-icon-rotate(270deg, 3); }
-
-.#{$fa-css-prefix}-flip-horizontal { @include fa-icon-flip(-1, 1, 0); }
-.#{$fa-css-prefix}-flip-vertical { @include fa-icon-flip(1, -1, 2); }
-.#{$fa-css-prefix}-flip-both, .#{$fa-css-prefix}-flip-horizontal.#{$fa-css-prefix}-flip-vertical { @include fa-icon-flip(-1, -1, 2); }
-
-// Hook for IE8-9
-// -------------------------
-
-:root {
- .#{$fa-css-prefix}-rotate-90,
- .#{$fa-css-prefix}-rotate-180,
- .#{$fa-css-prefix}-rotate-270,
- .#{$fa-css-prefix}-flip-horizontal,
- .#{$fa-css-prefix}-flip-vertical,
- .#{$fa-css-prefix}-flip-both {
- filter: none;
- }
-}
diff --git a/src/assets/styles/fontawesome/_screen-reader.scss b/src/assets/styles/fontawesome/_screen-reader.scss
deleted file mode 100644
index 5d0ab262..00000000
--- a/src/assets/styles/fontawesome/_screen-reader.scss
+++ /dev/null
@@ -1,5 +0,0 @@
-// Screen Readers
-// -------------------------
-
-.sr-only { @include sr-only; }
-.sr-only-focusable { @include sr-only-focusable; }
diff --git a/src/assets/styles/fontawesome/_shims.scss b/src/assets/styles/fontawesome/_shims.scss
deleted file mode 100644
index d1753445..00000000
--- a/src/assets/styles/fontawesome/_shims.scss
+++ /dev/null
@@ -1,2066 +0,0 @@
-.#{$fa-css-prefix}.#{$fa-css-prefix}-glass:before { content: fa-content($fa-var-glass-martini); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-meetup {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-star-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-star-o:before { content: fa-content($fa-var-star); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-remove:before { content: fa-content($fa-var-times); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-close:before { content: fa-content($fa-var-times); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-gear:before { content: fa-content($fa-var-cog); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-trash-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-trash-o:before { content: fa-content($fa-var-trash-alt); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-file-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-file-o:before { content: fa-content($fa-var-file); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-clock-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-clock-o:before { content: fa-content($fa-var-clock); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-arrow-circle-o-down {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-arrow-circle-o-down:before { content: fa-content($fa-var-arrow-alt-circle-down); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-arrow-circle-o-up {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-arrow-circle-o-up:before { content: fa-content($fa-var-arrow-alt-circle-up); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-play-circle-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-play-circle-o:before { content: fa-content($fa-var-play-circle); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-repeat:before { content: fa-content($fa-var-redo); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-rotate-right:before { content: fa-content($fa-var-redo); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-refresh:before { content: fa-content($fa-var-sync); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-list-alt {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-dedent:before { content: fa-content($fa-var-outdent); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-video-camera:before { content: fa-content($fa-var-video); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-picture-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-picture-o:before { content: fa-content($fa-var-image); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-photo {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-photo:before { content: fa-content($fa-var-image); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-image {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-image:before { content: fa-content($fa-var-image); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-pencil:before { content: fa-content($fa-var-pencil-alt); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-map-marker:before { content: fa-content($fa-var-map-marker-alt); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-pencil-square-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-pencil-square-o:before { content: fa-content($fa-var-edit); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-share-square-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-share-square-o:before { content: fa-content($fa-var-share-square); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-check-square-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-check-square-o:before { content: fa-content($fa-var-check-square); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-arrows:before { content: fa-content($fa-var-arrows-alt); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-times-circle-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-times-circle-o:before { content: fa-content($fa-var-times-circle); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-check-circle-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-check-circle-o:before { content: fa-content($fa-var-check-circle); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-mail-forward:before { content: fa-content($fa-var-share); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-expand:before { content: fa-content($fa-var-expand-alt); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-compress:before { content: fa-content($fa-var-compress-alt); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-eye {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-eye-slash {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-warning:before { content: fa-content($fa-var-exclamation-triangle); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-calendar:before { content: fa-content($fa-var-calendar-alt); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-arrows-v:before { content: fa-content($fa-var-arrows-alt-v); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-arrows-h:before { content: fa-content($fa-var-arrows-alt-h); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-bar-chart {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-bar-chart:before { content: fa-content($fa-var-chart-bar); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-bar-chart-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-bar-chart-o:before { content: fa-content($fa-var-chart-bar); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-twitter-square {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-facebook-square {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-gears:before { content: fa-content($fa-var-cogs); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-thumbs-o-up {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-thumbs-o-up:before { content: fa-content($fa-var-thumbs-up); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-thumbs-o-down {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-thumbs-o-down:before { content: fa-content($fa-var-thumbs-down); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-heart-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-heart-o:before { content: fa-content($fa-var-heart); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-sign-out:before { content: fa-content($fa-var-sign-out-alt); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-linkedin-square {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-linkedin-square:before { content: fa-content($fa-var-linkedin); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-thumb-tack:before { content: fa-content($fa-var-thumbtack); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-external-link:before { content: fa-content($fa-var-external-link-alt); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-sign-in:before { content: fa-content($fa-var-sign-in-alt); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-github-square {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-lemon-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-lemon-o:before { content: fa-content($fa-var-lemon); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-square-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-square-o:before { content: fa-content($fa-var-square); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-bookmark-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-bookmark-o:before { content: fa-content($fa-var-bookmark); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-twitter {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-facebook {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-facebook:before { content: fa-content($fa-var-facebook-f); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-facebook-f {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-facebook-f:before { content: fa-content($fa-var-facebook-f); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-github {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-credit-card {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-feed:before { content: fa-content($fa-var-rss); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-hdd-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-hdd-o:before { content: fa-content($fa-var-hdd); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-hand-o-right {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-hand-o-right:before { content: fa-content($fa-var-hand-point-right); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-hand-o-left {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-hand-o-left:before { content: fa-content($fa-var-hand-point-left); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-hand-o-up {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-hand-o-up:before { content: fa-content($fa-var-hand-point-up); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-hand-o-down {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-hand-o-down:before { content: fa-content($fa-var-hand-point-down); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-arrows-alt:before { content: fa-content($fa-var-expand-arrows-alt); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-group:before { content: fa-content($fa-var-users); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-chain:before { content: fa-content($fa-var-link); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-scissors:before { content: fa-content($fa-var-cut); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-files-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-files-o:before { content: fa-content($fa-var-copy); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-floppy-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-floppy-o:before { content: fa-content($fa-var-save); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-navicon:before { content: fa-content($fa-var-bars); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-reorder:before { content: fa-content($fa-var-bars); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-pinterest {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-pinterest-square {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-google-plus-square {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-google-plus {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-google-plus:before { content: fa-content($fa-var-google-plus-g); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-money {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-money:before { content: fa-content($fa-var-money-bill-alt); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-unsorted:before { content: fa-content($fa-var-sort); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-sort-desc:before { content: fa-content($fa-var-sort-down); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-sort-asc:before { content: fa-content($fa-var-sort-up); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-linkedin {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-linkedin:before { content: fa-content($fa-var-linkedin-in); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-rotate-left:before { content: fa-content($fa-var-undo); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-legal:before { content: fa-content($fa-var-gavel); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-tachometer:before { content: fa-content($fa-var-tachometer-alt); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-dashboard:before { content: fa-content($fa-var-tachometer-alt); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-comment-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-comment-o:before { content: fa-content($fa-var-comment); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-comments-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-comments-o:before { content: fa-content($fa-var-comments); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-flash:before { content: fa-content($fa-var-bolt); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-clipboard {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-paste {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-paste:before { content: fa-content($fa-var-clipboard); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-lightbulb-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-lightbulb-o:before { content: fa-content($fa-var-lightbulb); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-exchange:before { content: fa-content($fa-var-exchange-alt); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-cloud-download:before { content: fa-content($fa-var-cloud-download-alt); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-cloud-upload:before { content: fa-content($fa-var-cloud-upload-alt); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-bell-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-bell-o:before { content: fa-content($fa-var-bell); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-cutlery:before { content: fa-content($fa-var-utensils); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-file-text-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-file-text-o:before { content: fa-content($fa-var-file-alt); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-building-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-building-o:before { content: fa-content($fa-var-building); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-hospital-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-hospital-o:before { content: fa-content($fa-var-hospital); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-tablet:before { content: fa-content($fa-var-tablet-alt); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-mobile:before { content: fa-content($fa-var-mobile-alt); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-mobile-phone:before { content: fa-content($fa-var-mobile-alt); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-circle-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-circle-o:before { content: fa-content($fa-var-circle); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-mail-reply:before { content: fa-content($fa-var-reply); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-github-alt {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-folder-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-folder-o:before { content: fa-content($fa-var-folder); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-folder-open-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-folder-open-o:before { content: fa-content($fa-var-folder-open); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-smile-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-smile-o:before { content: fa-content($fa-var-smile); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-frown-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-frown-o:before { content: fa-content($fa-var-frown); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-meh-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-meh-o:before { content: fa-content($fa-var-meh); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-keyboard-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-keyboard-o:before { content: fa-content($fa-var-keyboard); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-flag-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-flag-o:before { content: fa-content($fa-var-flag); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-mail-reply-all:before { content: fa-content($fa-var-reply-all); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-star-half-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-star-half-o:before { content: fa-content($fa-var-star-half); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-star-half-empty {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-star-half-empty:before { content: fa-content($fa-var-star-half); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-star-half-full {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-star-half-full:before { content: fa-content($fa-var-star-half); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-code-fork:before { content: fa-content($fa-var-code-branch); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-chain-broken:before { content: fa-content($fa-var-unlink); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-shield:before { content: fa-content($fa-var-shield-alt); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-calendar-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-calendar-o:before { content: fa-content($fa-var-calendar); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-maxcdn {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-html5 {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-css3 {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-ticket:before { content: fa-content($fa-var-ticket-alt); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-minus-square-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-minus-square-o:before { content: fa-content($fa-var-minus-square); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-level-up:before { content: fa-content($fa-var-level-up-alt); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-level-down:before { content: fa-content($fa-var-level-down-alt); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-pencil-square:before { content: fa-content($fa-var-pen-square); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-external-link-square:before { content: fa-content($fa-var-external-link-square-alt); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-compass {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-caret-square-o-down {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-caret-square-o-down:before { content: fa-content($fa-var-caret-square-down); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-toggle-down {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-toggle-down:before { content: fa-content($fa-var-caret-square-down); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-caret-square-o-up {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-caret-square-o-up:before { content: fa-content($fa-var-caret-square-up); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-toggle-up {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-toggle-up:before { content: fa-content($fa-var-caret-square-up); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-caret-square-o-right {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-caret-square-o-right:before { content: fa-content($fa-var-caret-square-right); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-toggle-right {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-toggle-right:before { content: fa-content($fa-var-caret-square-right); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-eur:before { content: fa-content($fa-var-euro-sign); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-euro:before { content: fa-content($fa-var-euro-sign); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-gbp:before { content: fa-content($fa-var-pound-sign); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-usd:before { content: fa-content($fa-var-dollar-sign); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-dollar:before { content: fa-content($fa-var-dollar-sign); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-inr:before { content: fa-content($fa-var-rupee-sign); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-rupee:before { content: fa-content($fa-var-rupee-sign); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-jpy:before { content: fa-content($fa-var-yen-sign); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-cny:before { content: fa-content($fa-var-yen-sign); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-rmb:before { content: fa-content($fa-var-yen-sign); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-yen:before { content: fa-content($fa-var-yen-sign); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-rub:before { content: fa-content($fa-var-ruble-sign); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-ruble:before { content: fa-content($fa-var-ruble-sign); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-rouble:before { content: fa-content($fa-var-ruble-sign); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-krw:before { content: fa-content($fa-var-won-sign); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-won:before { content: fa-content($fa-var-won-sign); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-btc {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-bitcoin {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-bitcoin:before { content: fa-content($fa-var-btc); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-file-text:before { content: fa-content($fa-var-file-alt); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-sort-alpha-asc:before { content: fa-content($fa-var-sort-alpha-down); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-sort-alpha-desc:before { content: fa-content($fa-var-sort-alpha-down-alt); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-sort-amount-asc:before { content: fa-content($fa-var-sort-amount-down); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-sort-amount-desc:before { content: fa-content($fa-var-sort-amount-down-alt); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-sort-numeric-asc:before { content: fa-content($fa-var-sort-numeric-down); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-sort-numeric-desc:before { content: fa-content($fa-var-sort-numeric-down-alt); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-youtube-square {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-youtube {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-xing {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-xing-square {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-youtube-play {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-youtube-play:before { content: fa-content($fa-var-youtube); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-dropbox {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-stack-overflow {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-instagram {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-flickr {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-adn {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-bitbucket {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-bitbucket-square {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-bitbucket-square:before { content: fa-content($fa-var-bitbucket); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-tumblr {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-tumblr-square {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-long-arrow-down:before { content: fa-content($fa-var-long-arrow-alt-down); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-long-arrow-up:before { content: fa-content($fa-var-long-arrow-alt-up); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-long-arrow-left:before { content: fa-content($fa-var-long-arrow-alt-left); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-long-arrow-right:before { content: fa-content($fa-var-long-arrow-alt-right); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-apple {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-windows {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-android {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-linux {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-dribbble {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-skype {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-foursquare {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-trello {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-gratipay {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-gittip {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-gittip:before { content: fa-content($fa-var-gratipay); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-sun-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-sun-o:before { content: fa-content($fa-var-sun); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-moon-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-moon-o:before { content: fa-content($fa-var-moon); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-vk {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-weibo {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-renren {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-pagelines {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-stack-exchange {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-arrow-circle-o-right {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-arrow-circle-o-right:before { content: fa-content($fa-var-arrow-alt-circle-right); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-arrow-circle-o-left {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-arrow-circle-o-left:before { content: fa-content($fa-var-arrow-alt-circle-left); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-caret-square-o-left {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-caret-square-o-left:before { content: fa-content($fa-var-caret-square-left); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-toggle-left {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-toggle-left:before { content: fa-content($fa-var-caret-square-left); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-dot-circle-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-dot-circle-o:before { content: fa-content($fa-var-dot-circle); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-vimeo-square {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-try:before { content: fa-content($fa-var-lira-sign); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-turkish-lira:before { content: fa-content($fa-var-lira-sign); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-plus-square-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-plus-square-o:before { content: fa-content($fa-var-plus-square); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-slack {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-wordpress {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-openid {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-institution:before { content: fa-content($fa-var-university); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-bank:before { content: fa-content($fa-var-university); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-mortar-board:before { content: fa-content($fa-var-graduation-cap); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-yahoo {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-google {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-reddit {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-reddit-square {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-stumbleupon-circle {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-stumbleupon {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-delicious {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-digg {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-pied-piper-pp {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-pied-piper-alt {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-drupal {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-joomla {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-spoon:before { content: fa-content($fa-var-utensil-spoon); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-behance {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-behance-square {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-steam {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-steam-square {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-automobile:before { content: fa-content($fa-var-car); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-envelope-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-envelope-o:before { content: fa-content($fa-var-envelope); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-spotify {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-deviantart {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-soundcloud {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-file-pdf-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-file-pdf-o:before { content: fa-content($fa-var-file-pdf); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-file-word-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-file-word-o:before { content: fa-content($fa-var-file-word); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-file-excel-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-file-excel-o:before { content: fa-content($fa-var-file-excel); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-file-powerpoint-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-file-powerpoint-o:before { content: fa-content($fa-var-file-powerpoint); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-file-image-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-file-image-o:before { content: fa-content($fa-var-file-image); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-file-photo-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-file-photo-o:before { content: fa-content($fa-var-file-image); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-file-picture-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-file-picture-o:before { content: fa-content($fa-var-file-image); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-file-archive-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-file-archive-o:before { content: fa-content($fa-var-file-archive); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-file-zip-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-file-zip-o:before { content: fa-content($fa-var-file-archive); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-file-audio-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-file-audio-o:before { content: fa-content($fa-var-file-audio); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-file-sound-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-file-sound-o:before { content: fa-content($fa-var-file-audio); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-file-video-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-file-video-o:before { content: fa-content($fa-var-file-video); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-file-movie-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-file-movie-o:before { content: fa-content($fa-var-file-video); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-file-code-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-file-code-o:before { content: fa-content($fa-var-file-code); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-vine {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-codepen {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-jsfiddle {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-life-ring {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-life-bouy {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-life-bouy:before { content: fa-content($fa-var-life-ring); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-life-buoy {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-life-buoy:before { content: fa-content($fa-var-life-ring); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-life-saver {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-life-saver:before { content: fa-content($fa-var-life-ring); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-support {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-support:before { content: fa-content($fa-var-life-ring); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-circle-o-notch:before { content: fa-content($fa-var-circle-notch); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-rebel {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-ra {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-ra:before { content: fa-content($fa-var-rebel); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-resistance {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-resistance:before { content: fa-content($fa-var-rebel); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-empire {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-ge {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-ge:before { content: fa-content($fa-var-empire); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-git-square {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-git {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-hacker-news {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-y-combinator-square {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-y-combinator-square:before { content: fa-content($fa-var-hacker-news); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-yc-square {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-yc-square:before { content: fa-content($fa-var-hacker-news); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-tencent-weibo {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-qq {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-weixin {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-wechat {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-wechat:before { content: fa-content($fa-var-weixin); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-send:before { content: fa-content($fa-var-paper-plane); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-paper-plane-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-paper-plane-o:before { content: fa-content($fa-var-paper-plane); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-send-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-send-o:before { content: fa-content($fa-var-paper-plane); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-circle-thin {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-circle-thin:before { content: fa-content($fa-var-circle); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-header:before { content: fa-content($fa-var-heading); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-sliders:before { content: fa-content($fa-var-sliders-h); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-futbol-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-futbol-o:before { content: fa-content($fa-var-futbol); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-soccer-ball-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-soccer-ball-o:before { content: fa-content($fa-var-futbol); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-slideshare {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-twitch {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-yelp {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-newspaper-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-newspaper-o:before { content: fa-content($fa-var-newspaper); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-paypal {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-google-wallet {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-cc-visa {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-cc-mastercard {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-cc-discover {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-cc-amex {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-cc-paypal {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-cc-stripe {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-bell-slash-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-bell-slash-o:before { content: fa-content($fa-var-bell-slash); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-trash:before { content: fa-content($fa-var-trash-alt); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-copyright {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-eyedropper:before { content: fa-content($fa-var-eye-dropper); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-area-chart:before { content: fa-content($fa-var-chart-area); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-pie-chart:before { content: fa-content($fa-var-chart-pie); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-line-chart:before { content: fa-content($fa-var-chart-line); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-lastfm {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-lastfm-square {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-ioxhost {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-angellist {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-cc {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-cc:before { content: fa-content($fa-var-closed-captioning); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-ils:before { content: fa-content($fa-var-shekel-sign); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-shekel:before { content: fa-content($fa-var-shekel-sign); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-sheqel:before { content: fa-content($fa-var-shekel-sign); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-meanpath {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-meanpath:before { content: fa-content($fa-var-font-awesome); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-buysellads {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-connectdevelop {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-dashcube {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-forumbee {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-leanpub {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-sellsy {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-shirtsinbulk {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-simplybuilt {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-skyatlas {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-diamond {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-diamond:before { content: fa-content($fa-var-gem); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-intersex:before { content: fa-content($fa-var-transgender); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-facebook-official {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-facebook-official:before { content: fa-content($fa-var-facebook); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-pinterest-p {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-whatsapp {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-hotel:before { content: fa-content($fa-var-bed); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-viacoin {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-medium {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-y-combinator {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-yc {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-yc:before { content: fa-content($fa-var-y-combinator); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-optin-monster {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-opencart {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-expeditedssl {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-battery-4:before { content: fa-content($fa-var-battery-full); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-battery:before { content: fa-content($fa-var-battery-full); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-battery-3:before { content: fa-content($fa-var-battery-three-quarters); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-battery-2:before { content: fa-content($fa-var-battery-half); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-battery-1:before { content: fa-content($fa-var-battery-quarter); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-battery-0:before { content: fa-content($fa-var-battery-empty); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-object-group {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-object-ungroup {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-sticky-note-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-sticky-note-o:before { content: fa-content($fa-var-sticky-note); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-cc-jcb {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-cc-diners-club {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-clone {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-hourglass-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-hourglass-o:before { content: fa-content($fa-var-hourglass); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-hourglass-1:before { content: fa-content($fa-var-hourglass-start); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-hourglass-2:before { content: fa-content($fa-var-hourglass-half); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-hourglass-3:before { content: fa-content($fa-var-hourglass-end); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-hand-rock-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-hand-rock-o:before { content: fa-content($fa-var-hand-rock); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-hand-grab-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-hand-grab-o:before { content: fa-content($fa-var-hand-rock); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-hand-paper-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-hand-paper-o:before { content: fa-content($fa-var-hand-paper); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-hand-stop-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-hand-stop-o:before { content: fa-content($fa-var-hand-paper); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-hand-scissors-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-hand-scissors-o:before { content: fa-content($fa-var-hand-scissors); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-hand-lizard-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-hand-lizard-o:before { content: fa-content($fa-var-hand-lizard); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-hand-spock-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-hand-spock-o:before { content: fa-content($fa-var-hand-spock); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-hand-pointer-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-hand-pointer-o:before { content: fa-content($fa-var-hand-pointer); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-hand-peace-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-hand-peace-o:before { content: fa-content($fa-var-hand-peace); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-registered {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-creative-commons {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-gg {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-gg-circle {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-tripadvisor {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-odnoklassniki {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-odnoklassniki-square {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-get-pocket {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-wikipedia-w {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-safari {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-chrome {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-firefox {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-opera {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-internet-explorer {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-television:before { content: fa-content($fa-var-tv); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-contao {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-500px {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-amazon {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-calendar-plus-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-calendar-plus-o:before { content: fa-content($fa-var-calendar-plus); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-calendar-minus-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-calendar-minus-o:before { content: fa-content($fa-var-calendar-minus); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-calendar-times-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-calendar-times-o:before { content: fa-content($fa-var-calendar-times); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-calendar-check-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-calendar-check-o:before { content: fa-content($fa-var-calendar-check); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-map-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-map-o:before { content: fa-content($fa-var-map); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-commenting:before { content: fa-content($fa-var-comment-dots); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-commenting-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-commenting-o:before { content: fa-content($fa-var-comment-dots); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-houzz {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-vimeo {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-vimeo:before { content: fa-content($fa-var-vimeo-v); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-black-tie {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-fonticons {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-reddit-alien {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-edge {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-credit-card-alt:before { content: fa-content($fa-var-credit-card); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-codiepie {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-modx {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-fort-awesome {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-usb {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-product-hunt {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-mixcloud {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-scribd {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-pause-circle-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-pause-circle-o:before { content: fa-content($fa-var-pause-circle); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-stop-circle-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-stop-circle-o:before { content: fa-content($fa-var-stop-circle); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-bluetooth {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-bluetooth-b {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-gitlab {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-wpbeginner {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-wpforms {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-envira {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-wheelchair-alt {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-wheelchair-alt:before { content: fa-content($fa-var-accessible-icon); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-question-circle-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-question-circle-o:before { content: fa-content($fa-var-question-circle); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-volume-control-phone:before { content: fa-content($fa-var-phone-volume); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-asl-interpreting:before { content: fa-content($fa-var-american-sign-language-interpreting); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-deafness:before { content: fa-content($fa-var-deaf); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-hard-of-hearing:before { content: fa-content($fa-var-deaf); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-glide {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-glide-g {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-signing:before { content: fa-content($fa-var-sign-language); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-viadeo {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-viadeo-square {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-snapchat {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-snapchat-ghost {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-snapchat-square {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-pied-piper {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-first-order {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-yoast {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-themeisle {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-google-plus-official {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-google-plus-official:before { content: fa-content($fa-var-google-plus); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-google-plus-circle {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-google-plus-circle:before { content: fa-content($fa-var-google-plus); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-font-awesome {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-fa {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-fa:before { content: fa-content($fa-var-font-awesome); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-handshake-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-handshake-o:before { content: fa-content($fa-var-handshake); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-envelope-open-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-envelope-open-o:before { content: fa-content($fa-var-envelope-open); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-linode {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-address-book-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-address-book-o:before { content: fa-content($fa-var-address-book); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-vcard:before { content: fa-content($fa-var-address-card); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-address-card-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-address-card-o:before { content: fa-content($fa-var-address-card); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-vcard-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-vcard-o:before { content: fa-content($fa-var-address-card); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-user-circle-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-user-circle-o:before { content: fa-content($fa-var-user-circle); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-user-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-user-o:before { content: fa-content($fa-var-user); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-id-badge {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-drivers-license:before { content: fa-content($fa-var-id-card); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-id-card-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-id-card-o:before { content: fa-content($fa-var-id-card); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-drivers-license-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-drivers-license-o:before { content: fa-content($fa-var-id-card); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-quora {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-free-code-camp {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-telegram {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-thermometer-4:before { content: fa-content($fa-var-thermometer-full); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-thermometer:before { content: fa-content($fa-var-thermometer-full); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-thermometer-3:before { content: fa-content($fa-var-thermometer-three-quarters); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-thermometer-2:before { content: fa-content($fa-var-thermometer-half); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-thermometer-1:before { content: fa-content($fa-var-thermometer-quarter); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-thermometer-0:before { content: fa-content($fa-var-thermometer-empty); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-bathtub:before { content: fa-content($fa-var-bath); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-s15:before { content: fa-content($fa-var-bath); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-window-maximize {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-window-restore {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-times-rectangle:before { content: fa-content($fa-var-window-close); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-window-close-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-window-close-o:before { content: fa-content($fa-var-window-close); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-times-rectangle-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-times-rectangle-o:before { content: fa-content($fa-var-window-close); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-bandcamp {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-grav {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-etsy {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-imdb {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-ravelry {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-eercast {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-eercast:before { content: fa-content($fa-var-sellcast); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-snowflake-o {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
-.#{$fa-css-prefix}.#{$fa-css-prefix}-snowflake-o:before { content: fa-content($fa-var-snowflake); }
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-superpowers {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-wpexplorer {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
-
-.#{$fa-css-prefix}.#{$fa-css-prefix}-cab:before { content: fa-content($fa-var-taxi); }
-
diff --git a/src/assets/styles/fontawesome/_stacked.scss b/src/assets/styles/fontawesome/_stacked.scss
deleted file mode 100644
index ae7ef4e8..00000000
--- a/src/assets/styles/fontawesome/_stacked.scss
+++ /dev/null
@@ -1,31 +0,0 @@
-// Stacked Icons
-// -------------------------
-
-.#{$fa-css-prefix}-stack {
- display: inline-block;
- height: 2em;
- line-height: 2em;
- position: relative;
- vertical-align: middle;
- width: ($fa-fw-width*2);
-}
-
-.#{$fa-css-prefix}-stack-1x,
-.#{$fa-css-prefix}-stack-2x {
- left: 0;
- position: absolute;
- text-align: center;
- width: 100%;
-}
-
-.#{$fa-css-prefix}-stack-1x {
- line-height: inherit;
-}
-
-.#{$fa-css-prefix}-stack-2x {
- font-size: 2em;
-}
-
-.#{$fa-css-prefix}-inverse {
- color: $fa-inverse;
-}
diff --git a/src/assets/styles/fontawesome/_variables.scss b/src/assets/styles/fontawesome/_variables.scss
deleted file mode 100644
index 79d02834..00000000
--- a/src/assets/styles/fontawesome/_variables.scss
+++ /dev/null
@@ -1,1478 +0,0 @@
-// Variables
-// --------------------------
-
-$fa-font-path: "/webfonts" !default;
-$fa-font-size-base: 16px !default;
-$fa-font-display: block !default;
-$fa-css-prefix: fa !default;
-$fa-version: "5.15.4" !default;
-$fa-border-color: #eee !default;
-$fa-inverse: #fff !default;
-$fa-li-width: 2em !default;
-$fa-fw-width: 1.25em;
-$fa-primary-opacity: 1 !default;
-$fa-secondary-opacity: .4 !default;
-
-// Convenience function used to set content property
-@function fa-content($fa-var) {
- @return unquote("\"#{ $fa-var }\"");
-}
-
-$fa-var-500px: \f26e;
-$fa-var-accessible-icon: \f368;
-$fa-var-accusoft: \f369;
-$fa-var-acquisitions-incorporated: \f6af;
-$fa-var-ad: \f641;
-$fa-var-address-book: \f2b9;
-$fa-var-address-card: \f2bb;
-$fa-var-adjust: \f042;
-$fa-var-adn: \f170;
-$fa-var-adversal: \f36a;
-$fa-var-affiliatetheme: \f36b;
-$fa-var-air-freshener: \f5d0;
-$fa-var-airbnb: \f834;
-$fa-var-algolia: \f36c;
-$fa-var-align-center: \f037;
-$fa-var-align-justify: \f039;
-$fa-var-align-left: \f036;
-$fa-var-align-right: \f038;
-$fa-var-alipay: \f642;
-$fa-var-allergies: \f461;
-$fa-var-amazon: \f270;
-$fa-var-amazon-pay: \f42c;
-$fa-var-ambulance: \f0f9;
-$fa-var-american-sign-language-interpreting: \f2a3;
-$fa-var-amilia: \f36d;
-$fa-var-anchor: \f13d;
-$fa-var-android: \f17b;
-$fa-var-angellist: \f209;
-$fa-var-angle-double-down: \f103;
-$fa-var-angle-double-left: \f100;
-$fa-var-angle-double-right: \f101;
-$fa-var-angle-double-up: \f102;
-$fa-var-angle-down: \f107;
-$fa-var-angle-left: \f104;
-$fa-var-angle-right: \f105;
-$fa-var-angle-up: \f106;
-$fa-var-angry: \f556;
-$fa-var-angrycreative: \f36e;
-$fa-var-angular: \f420;
-$fa-var-ankh: \f644;
-$fa-var-app-store: \f36f;
-$fa-var-app-store-ios: \f370;
-$fa-var-apper: \f371;
-$fa-var-apple: \f179;
-$fa-var-apple-alt: \f5d1;
-$fa-var-apple-pay: \f415;
-$fa-var-archive: \f187;
-$fa-var-archway: \f557;
-$fa-var-arrow-alt-circle-down: \f358;
-$fa-var-arrow-alt-circle-left: \f359;
-$fa-var-arrow-alt-circle-right: \f35a;
-$fa-var-arrow-alt-circle-up: \f35b;
-$fa-var-arrow-circle-down: \f0ab;
-$fa-var-arrow-circle-left: \f0a8;
-$fa-var-arrow-circle-right: \f0a9;
-$fa-var-arrow-circle-up: \f0aa;
-$fa-var-arrow-down: \f063;
-$fa-var-arrow-left: \f060;
-$fa-var-arrow-right: \f061;
-$fa-var-arrow-up: \f062;
-$fa-var-arrows-alt: \f0b2;
-$fa-var-arrows-alt-h: \f337;
-$fa-var-arrows-alt-v: \f338;
-$fa-var-artstation: \f77a;
-$fa-var-assistive-listening-systems: \f2a2;
-$fa-var-asterisk: \f069;
-$fa-var-asymmetrik: \f372;
-$fa-var-at: \f1fa;
-$fa-var-atlas: \f558;
-$fa-var-atlassian: \f77b;
-$fa-var-atom: \f5d2;
-$fa-var-audible: \f373;
-$fa-var-audio-description: \f29e;
-$fa-var-autoprefixer: \f41c;
-$fa-var-avianex: \f374;
-$fa-var-aviato: \f421;
-$fa-var-award: \f559;
-$fa-var-aws: \f375;
-$fa-var-baby: \f77c;
-$fa-var-baby-carriage: \f77d;
-$fa-var-backspace: \f55a;
-$fa-var-backward: \f04a;
-$fa-var-bacon: \f7e5;
-$fa-var-bacteria: \e059;
-$fa-var-bacterium: \e05a;
-$fa-var-bahai: \f666;
-$fa-var-balance-scale: \f24e;
-$fa-var-balance-scale-left: \f515;
-$fa-var-balance-scale-right: \f516;
-$fa-var-ban: \f05e;
-$fa-var-band-aid: \f462;
-$fa-var-bandcamp: \f2d5;
-$fa-var-barcode: \f02a;
-$fa-var-bars: \f0c9;
-$fa-var-baseball-ball: \f433;
-$fa-var-basketball-ball: \f434;
-$fa-var-bath: \f2cd;
-$fa-var-battery-empty: \f244;
-$fa-var-battery-full: \f240;
-$fa-var-battery-half: \f242;
-$fa-var-battery-quarter: \f243;
-$fa-var-battery-three-quarters: \f241;
-$fa-var-battle-net: \f835;
-$fa-var-bed: \f236;
-$fa-var-beer: \f0fc;
-$fa-var-behance: \f1b4;
-$fa-var-behance-square: \f1b5;
-$fa-var-bell: \f0f3;
-$fa-var-bell-slash: \f1f6;
-$fa-var-bezier-curve: \f55b;
-$fa-var-bible: \f647;
-$fa-var-bicycle: \f206;
-$fa-var-biking: \f84a;
-$fa-var-bimobject: \f378;
-$fa-var-binoculars: \f1e5;
-$fa-var-biohazard: \f780;
-$fa-var-birthday-cake: \f1fd;
-$fa-var-bitbucket: \f171;
-$fa-var-bitcoin: \f379;
-$fa-var-bity: \f37a;
-$fa-var-black-tie: \f27e;
-$fa-var-blackberry: \f37b;
-$fa-var-blender: \f517;
-$fa-var-blender-phone: \f6b6;
-$fa-var-blind: \f29d;
-$fa-var-blog: \f781;
-$fa-var-blogger: \f37c;
-$fa-var-blogger-b: \f37d;
-$fa-var-bluetooth: \f293;
-$fa-var-bluetooth-b: \f294;
-$fa-var-bold: \f032;
-$fa-var-bolt: \f0e7;
-$fa-var-bomb: \f1e2;
-$fa-var-bone: \f5d7;
-$fa-var-bong: \f55c;
-$fa-var-book: \f02d;
-$fa-var-book-dead: \f6b7;
-$fa-var-book-medical: \f7e6;
-$fa-var-book-open: \f518;
-$fa-var-book-reader: \f5da;
-$fa-var-bookmark: \f02e;
-$fa-var-bootstrap: \f836;
-$fa-var-border-all: \f84c;
-$fa-var-border-none: \f850;
-$fa-var-border-style: \f853;
-$fa-var-bowling-ball: \f436;
-$fa-var-box: \f466;
-$fa-var-box-open: \f49e;
-$fa-var-box-tissue: \e05b;
-$fa-var-boxes: \f468;
-$fa-var-braille: \f2a1;
-$fa-var-brain: \f5dc;
-$fa-var-bread-slice: \f7ec;
-$fa-var-briefcase: \f0b1;
-$fa-var-briefcase-medical: \f469;
-$fa-var-broadcast-tower: \f519;
-$fa-var-broom: \f51a;
-$fa-var-brush: \f55d;
-$fa-var-btc: \f15a;
-$fa-var-buffer: \f837;
-$fa-var-bug: \f188;
-$fa-var-building: \f1ad;
-$fa-var-bullhorn: \f0a1;
-$fa-var-bullseye: \f140;
-$fa-var-burn: \f46a;
-$fa-var-buromobelexperte: \f37f;
-$fa-var-bus: \f207;
-$fa-var-bus-alt: \f55e;
-$fa-var-business-time: \f64a;
-$fa-var-buy-n-large: \f8a6;
-$fa-var-buysellads: \f20d;
-$fa-var-calculator: \f1ec;
-$fa-var-calendar: \f133;
-$fa-var-calendar-alt: \f073;
-$fa-var-calendar-check: \f274;
-$fa-var-calendar-day: \f783;
-$fa-var-calendar-minus: \f272;
-$fa-var-calendar-plus: \f271;
-$fa-var-calendar-times: \f273;
-$fa-var-calendar-week: \f784;
-$fa-var-camera: \f030;
-$fa-var-camera-retro: \f083;
-$fa-var-campground: \f6bb;
-$fa-var-canadian-maple-leaf: \f785;
-$fa-var-candy-cane: \f786;
-$fa-var-cannabis: \f55f;
-$fa-var-capsules: \f46b;
-$fa-var-car: \f1b9;
-$fa-var-car-alt: \f5de;
-$fa-var-car-battery: \f5df;
-$fa-var-car-crash: \f5e1;
-$fa-var-car-side: \f5e4;
-$fa-var-caravan: \f8ff;
-$fa-var-caret-down: \f0d7;
-$fa-var-caret-left: \f0d9;
-$fa-var-caret-right: \f0da;
-$fa-var-caret-square-down: \f150;
-$fa-var-caret-square-left: \f191;
-$fa-var-caret-square-right: \f152;
-$fa-var-caret-square-up: \f151;
-$fa-var-caret-up: \f0d8;
-$fa-var-carrot: \f787;
-$fa-var-cart-arrow-down: \f218;
-$fa-var-cart-plus: \f217;
-$fa-var-cash-register: \f788;
-$fa-var-cat: \f6be;
-$fa-var-cc-amazon-pay: \f42d;
-$fa-var-cc-amex: \f1f3;
-$fa-var-cc-apple-pay: \f416;
-$fa-var-cc-diners-club: \f24c;
-$fa-var-cc-discover: \f1f2;
-$fa-var-cc-jcb: \f24b;
-$fa-var-cc-mastercard: \f1f1;
-$fa-var-cc-paypal: \f1f4;
-$fa-var-cc-stripe: \f1f5;
-$fa-var-cc-visa: \f1f0;
-$fa-var-centercode: \f380;
-$fa-var-centos: \f789;
-$fa-var-certificate: \f0a3;
-$fa-var-chair: \f6c0;
-$fa-var-chalkboard: \f51b;
-$fa-var-chalkboard-teacher: \f51c;
-$fa-var-charging-station: \f5e7;
-$fa-var-chart-area: \f1fe;
-$fa-var-chart-bar: \f080;
-$fa-var-chart-line: \f201;
-$fa-var-chart-pie: \f200;
-$fa-var-check: \f00c;
-$fa-var-check-circle: \f058;
-$fa-var-check-double: \f560;
-$fa-var-check-square: \f14a;
-$fa-var-cheese: \f7ef;
-$fa-var-chess: \f439;
-$fa-var-chess-bishop: \f43a;
-$fa-var-chess-board: \f43c;
-$fa-var-chess-king: \f43f;
-$fa-var-chess-knight: \f441;
-$fa-var-chess-pawn: \f443;
-$fa-var-chess-queen: \f445;
-$fa-var-chess-rook: \f447;
-$fa-var-chevron-circle-down: \f13a;
-$fa-var-chevron-circle-left: \f137;
-$fa-var-chevron-circle-right: \f138;
-$fa-var-chevron-circle-up: \f139;
-$fa-var-chevron-down: \f078;
-$fa-var-chevron-left: \f053;
-$fa-var-chevron-right: \f054;
-$fa-var-chevron-up: \f077;
-$fa-var-child: \f1ae;
-$fa-var-chrome: \f268;
-$fa-var-chromecast: \f838;
-$fa-var-church: \f51d;
-$fa-var-circle: \f111;
-$fa-var-circle-notch: \f1ce;
-$fa-var-city: \f64f;
-$fa-var-clinic-medical: \f7f2;
-$fa-var-clipboard: \f328;
-$fa-var-clipboard-check: \f46c;
-$fa-var-clipboard-list: \f46d;
-$fa-var-clock: \f017;
-$fa-var-clone: \f24d;
-$fa-var-closed-captioning: \f20a;
-$fa-var-cloud: \f0c2;
-$fa-var-cloud-download-alt: \f381;
-$fa-var-cloud-meatball: \f73b;
-$fa-var-cloud-moon: \f6c3;
-$fa-var-cloud-moon-rain: \f73c;
-$fa-var-cloud-rain: \f73d;
-$fa-var-cloud-showers-heavy: \f740;
-$fa-var-cloud-sun: \f6c4;
-$fa-var-cloud-sun-rain: \f743;
-$fa-var-cloud-upload-alt: \f382;
-$fa-var-cloudflare: \e07d;
-$fa-var-cloudscale: \f383;
-$fa-var-cloudsmith: \f384;
-$fa-var-cloudversify: \f385;
-$fa-var-cocktail: \f561;
-$fa-var-code: \f121;
-$fa-var-code-branch: \f126;
-$fa-var-codepen: \f1cb;
-$fa-var-codiepie: \f284;
-$fa-var-coffee: \f0f4;
-$fa-var-cog: \f013;
-$fa-var-cogs: \f085;
-$fa-var-coins: \f51e;
-$fa-var-columns: \f0db;
-$fa-var-comment: \f075;
-$fa-var-comment-alt: \f27a;
-$fa-var-comment-dollar: \f651;
-$fa-var-comment-dots: \f4ad;
-$fa-var-comment-medical: \f7f5;
-$fa-var-comment-slash: \f4b3;
-$fa-var-comments: \f086;
-$fa-var-comments-dollar: \f653;
-$fa-var-compact-disc: \f51f;
-$fa-var-compass: \f14e;
-$fa-var-compress: \f066;
-$fa-var-compress-alt: \f422;
-$fa-var-compress-arrows-alt: \f78c;
-$fa-var-concierge-bell: \f562;
-$fa-var-confluence: \f78d;
-$fa-var-connectdevelop: \f20e;
-$fa-var-contao: \f26d;
-$fa-var-cookie: \f563;
-$fa-var-cookie-bite: \f564;
-$fa-var-copy: \f0c5;
-$fa-var-copyright: \f1f9;
-$fa-var-cotton-bureau: \f89e;
-$fa-var-couch: \f4b8;
-$fa-var-cpanel: \f388;
-$fa-var-creative-commons: \f25e;
-$fa-var-creative-commons-by: \f4e7;
-$fa-var-creative-commons-nc: \f4e8;
-$fa-var-creative-commons-nc-eu: \f4e9;
-$fa-var-creative-commons-nc-jp: \f4ea;
-$fa-var-creative-commons-nd: \f4eb;
-$fa-var-creative-commons-pd: \f4ec;
-$fa-var-creative-commons-pd-alt: \f4ed;
-$fa-var-creative-commons-remix: \f4ee;
-$fa-var-creative-commons-sa: \f4ef;
-$fa-var-creative-commons-sampling: \f4f0;
-$fa-var-creative-commons-sampling-plus: \f4f1;
-$fa-var-creative-commons-share: \f4f2;
-$fa-var-creative-commons-zero: \f4f3;
-$fa-var-credit-card: \f09d;
-$fa-var-critical-role: \f6c9;
-$fa-var-crop: \f125;
-$fa-var-crop-alt: \f565;
-$fa-var-cross: \f654;
-$fa-var-crosshairs: \f05b;
-$fa-var-crow: \f520;
-$fa-var-crown: \f521;
-$fa-var-crutch: \f7f7;
-$fa-var-css3: \f13c;
-$fa-var-css3-alt: \f38b;
-$fa-var-cube: \f1b2;
-$fa-var-cubes: \f1b3;
-$fa-var-cut: \f0c4;
-$fa-var-cuttlefish: \f38c;
-$fa-var-d-and-d: \f38d;
-$fa-var-d-and-d-beyond: \f6ca;
-$fa-var-dailymotion: \e052;
-$fa-var-dashcube: \f210;
-$fa-var-database: \f1c0;
-$fa-var-deaf: \f2a4;
-$fa-var-deezer: \e077;
-$fa-var-delicious: \f1a5;
-$fa-var-democrat: \f747;
-$fa-var-deploydog: \f38e;
-$fa-var-deskpro: \f38f;
-$fa-var-desktop: \f108;
-$fa-var-dev: \f6cc;
-$fa-var-deviantart: \f1bd;
-$fa-var-dharmachakra: \f655;
-$fa-var-dhl: \f790;
-$fa-var-diagnoses: \f470;
-$fa-var-diaspora: \f791;
-$fa-var-dice: \f522;
-$fa-var-dice-d20: \f6cf;
-$fa-var-dice-d6: \f6d1;
-$fa-var-dice-five: \f523;
-$fa-var-dice-four: \f524;
-$fa-var-dice-one: \f525;
-$fa-var-dice-six: \f526;
-$fa-var-dice-three: \f527;
-$fa-var-dice-two: \f528;
-$fa-var-digg: \f1a6;
-$fa-var-digital-ocean: \f391;
-$fa-var-digital-tachograph: \f566;
-$fa-var-directions: \f5eb;
-$fa-var-discord: \f392;
-$fa-var-discourse: \f393;
-$fa-var-disease: \f7fa;
-$fa-var-divide: \f529;
-$fa-var-dizzy: \f567;
-$fa-var-dna: \f471;
-$fa-var-dochub: \f394;
-$fa-var-docker: \f395;
-$fa-var-dog: \f6d3;
-$fa-var-dollar-sign: \f155;
-$fa-var-dolly: \f472;
-$fa-var-dolly-flatbed: \f474;
-$fa-var-donate: \f4b9;
-$fa-var-door-closed: \f52a;
-$fa-var-door-open: \f52b;
-$fa-var-dot-circle: \f192;
-$fa-var-dove: \f4ba;
-$fa-var-download: \f019;
-$fa-var-draft2digital: \f396;
-$fa-var-drafting-compass: \f568;
-$fa-var-dragon: \f6d5;
-$fa-var-draw-polygon: \f5ee;
-$fa-var-dribbble: \f17d;
-$fa-var-dribbble-square: \f397;
-$fa-var-dropbox: \f16b;
-$fa-var-drum: \f569;
-$fa-var-drum-steelpan: \f56a;
-$fa-var-drumstick-bite: \f6d7;
-$fa-var-drupal: \f1a9;
-$fa-var-dumbbell: \f44b;
-$fa-var-dumpster: \f793;
-$fa-var-dumpster-fire: \f794;
-$fa-var-dungeon: \f6d9;
-$fa-var-dyalog: \f399;
-$fa-var-earlybirds: \f39a;
-$fa-var-ebay: \f4f4;
-$fa-var-edge: \f282;
-$fa-var-edge-legacy: \e078;
-$fa-var-edit: \f044;
-$fa-var-egg: \f7fb;
-$fa-var-eject: \f052;
-$fa-var-elementor: \f430;
-$fa-var-ellipsis-h: \f141;
-$fa-var-ellipsis-v: \f142;
-$fa-var-ello: \f5f1;
-$fa-var-ember: \f423;
-$fa-var-empire: \f1d1;
-$fa-var-envelope: \f0e0;
-$fa-var-envelope-open: \f2b6;
-$fa-var-envelope-open-text: \f658;
-$fa-var-envelope-square: \f199;
-$fa-var-envira: \f299;
-$fa-var-equals: \f52c;
-$fa-var-eraser: \f12d;
-$fa-var-erlang: \f39d;
-$fa-var-ethereum: \f42e;
-$fa-var-ethernet: \f796;
-$fa-var-etsy: \f2d7;
-$fa-var-euro-sign: \f153;
-$fa-var-evernote: \f839;
-$fa-var-exchange-alt: \f362;
-$fa-var-exclamation: \f12a;
-$fa-var-exclamation-circle: \f06a;
-$fa-var-exclamation-triangle: \f071;
-$fa-var-expand: \f065;
-$fa-var-expand-alt: \f424;
-$fa-var-expand-arrows-alt: \f31e;
-$fa-var-expeditedssl: \f23e;
-$fa-var-external-link-alt: \f35d;
-$fa-var-external-link-square-alt: \f360;
-$fa-var-eye: \f06e;
-$fa-var-eye-dropper: \f1fb;
-$fa-var-eye-slash: \f070;
-$fa-var-facebook: \f09a;
-$fa-var-facebook-f: \f39e;
-$fa-var-facebook-messenger: \f39f;
-$fa-var-facebook-square: \f082;
-$fa-var-fan: \f863;
-$fa-var-fantasy-flight-games: \f6dc;
-$fa-var-fast-backward: \f049;
-$fa-var-fast-forward: \f050;
-$fa-var-faucet: \e005;
-$fa-var-fax: \f1ac;
-$fa-var-feather: \f52d;
-$fa-var-feather-alt: \f56b;
-$fa-var-fedex: \f797;
-$fa-var-fedora: \f798;
-$fa-var-female: \f182;
-$fa-var-fighter-jet: \f0fb;
-$fa-var-figma: \f799;
-$fa-var-file: \f15b;
-$fa-var-file-alt: \f15c;
-$fa-var-file-archive: \f1c6;
-$fa-var-file-audio: \f1c7;
-$fa-var-file-code: \f1c9;
-$fa-var-file-contract: \f56c;
-$fa-var-file-csv: \f6dd;
-$fa-var-file-download: \f56d;
-$fa-var-file-excel: \f1c3;
-$fa-var-file-export: \f56e;
-$fa-var-file-image: \f1c5;
-$fa-var-file-import: \f56f;
-$fa-var-file-invoice: \f570;
-$fa-var-file-invoice-dollar: \f571;
-$fa-var-file-medical: \f477;
-$fa-var-file-medical-alt: \f478;
-$fa-var-file-pdf: \f1c1;
-$fa-var-file-powerpoint: \f1c4;
-$fa-var-file-prescription: \f572;
-$fa-var-file-signature: \f573;
-$fa-var-file-upload: \f574;
-$fa-var-file-video: \f1c8;
-$fa-var-file-word: \f1c2;
-$fa-var-fill: \f575;
-$fa-var-fill-drip: \f576;
-$fa-var-film: \f008;
-$fa-var-filter: \f0b0;
-$fa-var-fingerprint: \f577;
-$fa-var-fire: \f06d;
-$fa-var-fire-alt: \f7e4;
-$fa-var-fire-extinguisher: \f134;
-$fa-var-firefox: \f269;
-$fa-var-firefox-browser: \e007;
-$fa-var-first-aid: \f479;
-$fa-var-first-order: \f2b0;
-$fa-var-first-order-alt: \f50a;
-$fa-var-firstdraft: \f3a1;
-$fa-var-fish: \f578;
-$fa-var-fist-raised: \f6de;
-$fa-var-flag: \f024;
-$fa-var-flag-checkered: \f11e;
-$fa-var-flag-usa: \f74d;
-$fa-var-flask: \f0c3;
-$fa-var-flickr: \f16e;
-$fa-var-flipboard: \f44d;
-$fa-var-flushed: \f579;
-$fa-var-fly: \f417;
-$fa-var-folder: \f07b;
-$fa-var-folder-minus: \f65d;
-$fa-var-folder-open: \f07c;
-$fa-var-folder-plus: \f65e;
-$fa-var-font: \f031;
-$fa-var-font-awesome: \f2b4;
-$fa-var-font-awesome-alt: \f35c;
-$fa-var-font-awesome-flag: \f425;
-$fa-var-font-awesome-logo-full: \f4e6;
-$fa-var-fonticons: \f280;
-$fa-var-fonticons-fi: \f3a2;
-$fa-var-football-ball: \f44e;
-$fa-var-fort-awesome: \f286;
-$fa-var-fort-awesome-alt: \f3a3;
-$fa-var-forumbee: \f211;
-$fa-var-forward: \f04e;
-$fa-var-foursquare: \f180;
-$fa-var-free-code-camp: \f2c5;
-$fa-var-freebsd: \f3a4;
-$fa-var-frog: \f52e;
-$fa-var-frown: \f119;
-$fa-var-frown-open: \f57a;
-$fa-var-fulcrum: \f50b;
-$fa-var-funnel-dollar: \f662;
-$fa-var-futbol: \f1e3;
-$fa-var-galactic-republic: \f50c;
-$fa-var-galactic-senate: \f50d;
-$fa-var-gamepad: \f11b;
-$fa-var-gas-pump: \f52f;
-$fa-var-gavel: \f0e3;
-$fa-var-gem: \f3a5;
-$fa-var-genderless: \f22d;
-$fa-var-get-pocket: \f265;
-$fa-var-gg: \f260;
-$fa-var-gg-circle: \f261;
-$fa-var-ghost: \f6e2;
-$fa-var-gift: \f06b;
-$fa-var-gifts: \f79c;
-$fa-var-git: \f1d3;
-$fa-var-git-alt: \f841;
-$fa-var-git-square: \f1d2;
-$fa-var-github: \f09b;
-$fa-var-github-alt: \f113;
-$fa-var-github-square: \f092;
-$fa-var-gitkraken: \f3a6;
-$fa-var-gitlab: \f296;
-$fa-var-gitter: \f426;
-$fa-var-glass-cheers: \f79f;
-$fa-var-glass-martini: \f000;
-$fa-var-glass-martini-alt: \f57b;
-$fa-var-glass-whiskey: \f7a0;
-$fa-var-glasses: \f530;
-$fa-var-glide: \f2a5;
-$fa-var-glide-g: \f2a6;
-$fa-var-globe: \f0ac;
-$fa-var-globe-africa: \f57c;
-$fa-var-globe-americas: \f57d;
-$fa-var-globe-asia: \f57e;
-$fa-var-globe-europe: \f7a2;
-$fa-var-gofore: \f3a7;
-$fa-var-golf-ball: \f450;
-$fa-var-goodreads: \f3a8;
-$fa-var-goodreads-g: \f3a9;
-$fa-var-google: \f1a0;
-$fa-var-google-drive: \f3aa;
-$fa-var-google-pay: \e079;
-$fa-var-google-play: \f3ab;
-$fa-var-google-plus: \f2b3;
-$fa-var-google-plus-g: \f0d5;
-$fa-var-google-plus-square: \f0d4;
-$fa-var-google-wallet: \f1ee;
-$fa-var-gopuram: \f664;
-$fa-var-graduation-cap: \f19d;
-$fa-var-gratipay: \f184;
-$fa-var-grav: \f2d6;
-$fa-var-greater-than: \f531;
-$fa-var-greater-than-equal: \f532;
-$fa-var-grimace: \f57f;
-$fa-var-grin: \f580;
-$fa-var-grin-alt: \f581;
-$fa-var-grin-beam: \f582;
-$fa-var-grin-beam-sweat: \f583;
-$fa-var-grin-hearts: \f584;
-$fa-var-grin-squint: \f585;
-$fa-var-grin-squint-tears: \f586;
-$fa-var-grin-stars: \f587;
-$fa-var-grin-tears: \f588;
-$fa-var-grin-tongue: \f589;
-$fa-var-grin-tongue-squint: \f58a;
-$fa-var-grin-tongue-wink: \f58b;
-$fa-var-grin-wink: \f58c;
-$fa-var-grip-horizontal: \f58d;
-$fa-var-grip-lines: \f7a4;
-$fa-var-grip-lines-vertical: \f7a5;
-$fa-var-grip-vertical: \f58e;
-$fa-var-gripfire: \f3ac;
-$fa-var-grunt: \f3ad;
-$fa-var-guilded: \e07e;
-$fa-var-guitar: \f7a6;
-$fa-var-gulp: \f3ae;
-$fa-var-h-square: \f0fd;
-$fa-var-hacker-news: \f1d4;
-$fa-var-hacker-news-square: \f3af;
-$fa-var-hackerrank: \f5f7;
-$fa-var-hamburger: \f805;
-$fa-var-hammer: \f6e3;
-$fa-var-hamsa: \f665;
-$fa-var-hand-holding: \f4bd;
-$fa-var-hand-holding-heart: \f4be;
-$fa-var-hand-holding-medical: \e05c;
-$fa-var-hand-holding-usd: \f4c0;
-$fa-var-hand-holding-water: \f4c1;
-$fa-var-hand-lizard: \f258;
-$fa-var-hand-middle-finger: \f806;
-$fa-var-hand-paper: \f256;
-$fa-var-hand-peace: \f25b;
-$fa-var-hand-point-down: \f0a7;
-$fa-var-hand-point-left: \f0a5;
-$fa-var-hand-point-right: \f0a4;
-$fa-var-hand-point-up: \f0a6;
-$fa-var-hand-pointer: \f25a;
-$fa-var-hand-rock: \f255;
-$fa-var-hand-scissors: \f257;
-$fa-var-hand-sparkles: \e05d;
-$fa-var-hand-spock: \f259;
-$fa-var-hands: \f4c2;
-$fa-var-hands-helping: \f4c4;
-$fa-var-hands-wash: \e05e;
-$fa-var-handshake: \f2b5;
-$fa-var-handshake-alt-slash: \e05f;
-$fa-var-handshake-slash: \e060;
-$fa-var-hanukiah: \f6e6;
-$fa-var-hard-hat: \f807;
-$fa-var-hashtag: \f292;
-$fa-var-hat-cowboy: \f8c0;
-$fa-var-hat-cowboy-side: \f8c1;
-$fa-var-hat-wizard: \f6e8;
-$fa-var-hdd: \f0a0;
-$fa-var-head-side-cough: \e061;
-$fa-var-head-side-cough-slash: \e062;
-$fa-var-head-side-mask: \e063;
-$fa-var-head-side-virus: \e064;
-$fa-var-heading: \f1dc;
-$fa-var-headphones: \f025;
-$fa-var-headphones-alt: \f58f;
-$fa-var-headset: \f590;
-$fa-var-heart: \f004;
-$fa-var-heart-broken: \f7a9;
-$fa-var-heartbeat: \f21e;
-$fa-var-helicopter: \f533;
-$fa-var-highlighter: \f591;
-$fa-var-hiking: \f6ec;
-$fa-var-hippo: \f6ed;
-$fa-var-hips: \f452;
-$fa-var-hire-a-helper: \f3b0;
-$fa-var-history: \f1da;
-$fa-var-hive: \e07f;
-$fa-var-hockey-puck: \f453;
-$fa-var-holly-berry: \f7aa;
-$fa-var-home: \f015;
-$fa-var-hooli: \f427;
-$fa-var-hornbill: \f592;
-$fa-var-horse: \f6f0;
-$fa-var-horse-head: \f7ab;
-$fa-var-hospital: \f0f8;
-$fa-var-hospital-alt: \f47d;
-$fa-var-hospital-symbol: \f47e;
-$fa-var-hospital-user: \f80d;
-$fa-var-hot-tub: \f593;
-$fa-var-hotdog: \f80f;
-$fa-var-hotel: \f594;
-$fa-var-hotjar: \f3b1;
-$fa-var-hourglass: \f254;
-$fa-var-hourglass-end: \f253;
-$fa-var-hourglass-half: \f252;
-$fa-var-hourglass-start: \f251;
-$fa-var-house-damage: \f6f1;
-$fa-var-house-user: \e065;
-$fa-var-houzz: \f27c;
-$fa-var-hryvnia: \f6f2;
-$fa-var-html5: \f13b;
-$fa-var-hubspot: \f3b2;
-$fa-var-i-cursor: \f246;
-$fa-var-ice-cream: \f810;
-$fa-var-icicles: \f7ad;
-$fa-var-icons: \f86d;
-$fa-var-id-badge: \f2c1;
-$fa-var-id-card: \f2c2;
-$fa-var-id-card-alt: \f47f;
-$fa-var-ideal: \e013;
-$fa-var-igloo: \f7ae;
-$fa-var-image: \f03e;
-$fa-var-images: \f302;
-$fa-var-imdb: \f2d8;
-$fa-var-inbox: \f01c;
-$fa-var-indent: \f03c;
-$fa-var-industry: \f275;
-$fa-var-infinity: \f534;
-$fa-var-info: \f129;
-$fa-var-info-circle: \f05a;
-$fa-var-innosoft: \e080;
-$fa-var-instagram: \f16d;
-$fa-var-instagram-square: \e055;
-$fa-var-instalod: \e081;
-$fa-var-intercom: \f7af;
-$fa-var-internet-explorer: \f26b;
-$fa-var-invision: \f7b0;
-$fa-var-ioxhost: \f208;
-$fa-var-italic: \f033;
-$fa-var-itch-io: \f83a;
-$fa-var-itunes: \f3b4;
-$fa-var-itunes-note: \f3b5;
-$fa-var-java: \f4e4;
-$fa-var-jedi: \f669;
-$fa-var-jedi-order: \f50e;
-$fa-var-jenkins: \f3b6;
-$fa-var-jira: \f7b1;
-$fa-var-joget: \f3b7;
-$fa-var-joint: \f595;
-$fa-var-joomla: \f1aa;
-$fa-var-journal-whills: \f66a;
-$fa-var-js: \f3b8;
-$fa-var-js-square: \f3b9;
-$fa-var-jsfiddle: \f1cc;
-$fa-var-kaaba: \f66b;
-$fa-var-kaggle: \f5fa;
-$fa-var-key: \f084;
-$fa-var-keybase: \f4f5;
-$fa-var-keyboard: \f11c;
-$fa-var-keycdn: \f3ba;
-$fa-var-khanda: \f66d;
-$fa-var-kickstarter: \f3bb;
-$fa-var-kickstarter-k: \f3bc;
-$fa-var-kiss: \f596;
-$fa-var-kiss-beam: \f597;
-$fa-var-kiss-wink-heart: \f598;
-$fa-var-kiwi-bird: \f535;
-$fa-var-korvue: \f42f;
-$fa-var-landmark: \f66f;
-$fa-var-language: \f1ab;
-$fa-var-laptop: \f109;
-$fa-var-laptop-code: \f5fc;
-$fa-var-laptop-house: \e066;
-$fa-var-laptop-medical: \f812;
-$fa-var-laravel: \f3bd;
-$fa-var-lastfm: \f202;
-$fa-var-lastfm-square: \f203;
-$fa-var-laugh: \f599;
-$fa-var-laugh-beam: \f59a;
-$fa-var-laugh-squint: \f59b;
-$fa-var-laugh-wink: \f59c;
-$fa-var-layer-group: \f5fd;
-$fa-var-leaf: \f06c;
-$fa-var-leanpub: \f212;
-$fa-var-lemon: \f094;
-$fa-var-less: \f41d;
-$fa-var-less-than: \f536;
-$fa-var-less-than-equal: \f537;
-$fa-var-level-down-alt: \f3be;
-$fa-var-level-up-alt: \f3bf;
-$fa-var-life-ring: \f1cd;
-$fa-var-lightbulb: \f0eb;
-$fa-var-line: \f3c0;
-$fa-var-link: \f0c1;
-$fa-var-linkedin: \f08c;
-$fa-var-linkedin-in: \f0e1;
-$fa-var-linode: \f2b8;
-$fa-var-linux: \f17c;
-$fa-var-lira-sign: \f195;
-$fa-var-list: \f03a;
-$fa-var-list-alt: \f022;
-$fa-var-list-ol: \f0cb;
-$fa-var-list-ul: \f0ca;
-$fa-var-location-arrow: \f124;
-$fa-var-lock: \f023;
-$fa-var-lock-open: \f3c1;
-$fa-var-long-arrow-alt-down: \f309;
-$fa-var-long-arrow-alt-left: \f30a;
-$fa-var-long-arrow-alt-right: \f30b;
-$fa-var-long-arrow-alt-up: \f30c;
-$fa-var-low-vision: \f2a8;
-$fa-var-luggage-cart: \f59d;
-$fa-var-lungs: \f604;
-$fa-var-lungs-virus: \e067;
-$fa-var-lyft: \f3c3;
-$fa-var-magento: \f3c4;
-$fa-var-magic: \f0d0;
-$fa-var-magnet: \f076;
-$fa-var-mail-bulk: \f674;
-$fa-var-mailchimp: \f59e;
-$fa-var-male: \f183;
-$fa-var-mandalorian: \f50f;
-$fa-var-map: \f279;
-$fa-var-map-marked: \f59f;
-$fa-var-map-marked-alt: \f5a0;
-$fa-var-map-marker: \f041;
-$fa-var-map-marker-alt: \f3c5;
-$fa-var-map-pin: \f276;
-$fa-var-map-signs: \f277;
-$fa-var-markdown: \f60f;
-$fa-var-marker: \f5a1;
-$fa-var-mars: \f222;
-$fa-var-mars-double: \f227;
-$fa-var-mars-stroke: \f229;
-$fa-var-mars-stroke-h: \f22b;
-$fa-var-mars-stroke-v: \f22a;
-$fa-var-mask: \f6fa;
-$fa-var-mastodon: \f4f6;
-$fa-var-maxcdn: \f136;
-$fa-var-mdb: \f8ca;
-$fa-var-medal: \f5a2;
-$fa-var-medapps: \f3c6;
-$fa-var-medium: \f23a;
-$fa-var-medium-m: \f3c7;
-$fa-var-medkit: \f0fa;
-$fa-var-medrt: \f3c8;
-$fa-var-meetup: \f2e0;
-$fa-var-megaport: \f5a3;
-$fa-var-meh: \f11a;
-$fa-var-meh-blank: \f5a4;
-$fa-var-meh-rolling-eyes: \f5a5;
-$fa-var-memory: \f538;
-$fa-var-mendeley: \f7b3;
-$fa-var-menorah: \f676;
-$fa-var-mercury: \f223;
-$fa-var-meteor: \f753;
-$fa-var-microblog: \e01a;
-$fa-var-microchip: \f2db;
-$fa-var-microphone: \f130;
-$fa-var-microphone-alt: \f3c9;
-$fa-var-microphone-alt-slash: \f539;
-$fa-var-microphone-slash: \f131;
-$fa-var-microscope: \f610;
-$fa-var-microsoft: \f3ca;
-$fa-var-minus: \f068;
-$fa-var-minus-circle: \f056;
-$fa-var-minus-square: \f146;
-$fa-var-mitten: \f7b5;
-$fa-var-mix: \f3cb;
-$fa-var-mixcloud: \f289;
-$fa-var-mixer: \e056;
-$fa-var-mizuni: \f3cc;
-$fa-var-mobile: \f10b;
-$fa-var-mobile-alt: \f3cd;
-$fa-var-modx: \f285;
-$fa-var-monero: \f3d0;
-$fa-var-money-bill: \f0d6;
-$fa-var-money-bill-alt: \f3d1;
-$fa-var-money-bill-wave: \f53a;
-$fa-var-money-bill-wave-alt: \f53b;
-$fa-var-money-check: \f53c;
-$fa-var-money-check-alt: \f53d;
-$fa-var-monument: \f5a6;
-$fa-var-moon: \f186;
-$fa-var-mortar-pestle: \f5a7;
-$fa-var-mosque: \f678;
-$fa-var-motorcycle: \f21c;
-$fa-var-mountain: \f6fc;
-$fa-var-mouse: \f8cc;
-$fa-var-mouse-pointer: \f245;
-$fa-var-mug-hot: \f7b6;
-$fa-var-music: \f001;
-$fa-var-napster: \f3d2;
-$fa-var-neos: \f612;
-$fa-var-network-wired: \f6ff;
-$fa-var-neuter: \f22c;
-$fa-var-newspaper: \f1ea;
-$fa-var-nimblr: \f5a8;
-$fa-var-node: \f419;
-$fa-var-node-js: \f3d3;
-$fa-var-not-equal: \f53e;
-$fa-var-notes-medical: \f481;
-$fa-var-npm: \f3d4;
-$fa-var-ns8: \f3d5;
-$fa-var-nutritionix: \f3d6;
-$fa-var-object-group: \f247;
-$fa-var-object-ungroup: \f248;
-$fa-var-octopus-deploy: \e082;
-$fa-var-odnoklassniki: \f263;
-$fa-var-odnoklassniki-square: \f264;
-$fa-var-oil-can: \f613;
-$fa-var-old-republic: \f510;
-$fa-var-om: \f679;
-$fa-var-opencart: \f23d;
-$fa-var-openid: \f19b;
-$fa-var-opera: \f26a;
-$fa-var-optin-monster: \f23c;
-$fa-var-orcid: \f8d2;
-$fa-var-osi: \f41a;
-$fa-var-otter: \f700;
-$fa-var-outdent: \f03b;
-$fa-var-page4: \f3d7;
-$fa-var-pagelines: \f18c;
-$fa-var-pager: \f815;
-$fa-var-paint-brush: \f1fc;
-$fa-var-paint-roller: \f5aa;
-$fa-var-palette: \f53f;
-$fa-var-palfed: \f3d8;
-$fa-var-pallet: \f482;
-$fa-var-paper-plane: \f1d8;
-$fa-var-paperclip: \f0c6;
-$fa-var-parachute-box: \f4cd;
-$fa-var-paragraph: \f1dd;
-$fa-var-parking: \f540;
-$fa-var-passport: \f5ab;
-$fa-var-pastafarianism: \f67b;
-$fa-var-paste: \f0ea;
-$fa-var-patreon: \f3d9;
-$fa-var-pause: \f04c;
-$fa-var-pause-circle: \f28b;
-$fa-var-paw: \f1b0;
-$fa-var-paypal: \f1ed;
-$fa-var-peace: \f67c;
-$fa-var-pen: \f304;
-$fa-var-pen-alt: \f305;
-$fa-var-pen-fancy: \f5ac;
-$fa-var-pen-nib: \f5ad;
-$fa-var-pen-square: \f14b;
-$fa-var-pencil-alt: \f303;
-$fa-var-pencil-ruler: \f5ae;
-$fa-var-penny-arcade: \f704;
-$fa-var-people-arrows: \e068;
-$fa-var-people-carry: \f4ce;
-$fa-var-pepper-hot: \f816;
-$fa-var-perbyte: \e083;
-$fa-var-percent: \f295;
-$fa-var-percentage: \f541;
-$fa-var-periscope: \f3da;
-$fa-var-person-booth: \f756;
-$fa-var-phabricator: \f3db;
-$fa-var-phoenix-framework: \f3dc;
-$fa-var-phoenix-squadron: \f511;
-$fa-var-phone: \f095;
-$fa-var-phone-alt: \f879;
-$fa-var-phone-slash: \f3dd;
-$fa-var-phone-square: \f098;
-$fa-var-phone-square-alt: \f87b;
-$fa-var-phone-volume: \f2a0;
-$fa-var-photo-video: \f87c;
-$fa-var-php: \f457;
-$fa-var-pied-piper: \f2ae;
-$fa-var-pied-piper-alt: \f1a8;
-$fa-var-pied-piper-hat: \f4e5;
-$fa-var-pied-piper-pp: \f1a7;
-$fa-var-pied-piper-square: \e01e;
-$fa-var-piggy-bank: \f4d3;
-$fa-var-pills: \f484;
-$fa-var-pinterest: \f0d2;
-$fa-var-pinterest-p: \f231;
-$fa-var-pinterest-square: \f0d3;
-$fa-var-pizza-slice: \f818;
-$fa-var-place-of-worship: \f67f;
-$fa-var-plane: \f072;
-$fa-var-plane-arrival: \f5af;
-$fa-var-plane-departure: \f5b0;
-$fa-var-plane-slash: \e069;
-$fa-var-play: \f04b;
-$fa-var-play-circle: \f144;
-$fa-var-playstation: \f3df;
-$fa-var-plug: \f1e6;
-$fa-var-plus: \f067;
-$fa-var-plus-circle: \f055;
-$fa-var-plus-square: \f0fe;
-$fa-var-podcast: \f2ce;
-$fa-var-poll: \f681;
-$fa-var-poll-h: \f682;
-$fa-var-poo: \f2fe;
-$fa-var-poo-storm: \f75a;
-$fa-var-poop: \f619;
-$fa-var-portrait: \f3e0;
-$fa-var-pound-sign: \f154;
-$fa-var-power-off: \f011;
-$fa-var-pray: \f683;
-$fa-var-praying-hands: \f684;
-$fa-var-prescription: \f5b1;
-$fa-var-prescription-bottle: \f485;
-$fa-var-prescription-bottle-alt: \f486;
-$fa-var-print: \f02f;
-$fa-var-procedures: \f487;
-$fa-var-product-hunt: \f288;
-$fa-var-project-diagram: \f542;
-$fa-var-pump-medical: \e06a;
-$fa-var-pump-soap: \e06b;
-$fa-var-pushed: \f3e1;
-$fa-var-puzzle-piece: \f12e;
-$fa-var-python: \f3e2;
-$fa-var-qq: \f1d6;
-$fa-var-qrcode: \f029;
-$fa-var-question: \f128;
-$fa-var-question-circle: \f059;
-$fa-var-quidditch: \f458;
-$fa-var-quinscape: \f459;
-$fa-var-quora: \f2c4;
-$fa-var-quote-left: \f10d;
-$fa-var-quote-right: \f10e;
-$fa-var-quran: \f687;
-$fa-var-r-project: \f4f7;
-$fa-var-radiation: \f7b9;
-$fa-var-radiation-alt: \f7ba;
-$fa-var-rainbow: \f75b;
-$fa-var-random: \f074;
-$fa-var-raspberry-pi: \f7bb;
-$fa-var-ravelry: \f2d9;
-$fa-var-react: \f41b;
-$fa-var-reacteurope: \f75d;
-$fa-var-readme: \f4d5;
-$fa-var-rebel: \f1d0;
-$fa-var-receipt: \f543;
-$fa-var-record-vinyl: \f8d9;
-$fa-var-recycle: \f1b8;
-$fa-var-red-river: \f3e3;
-$fa-var-reddit: \f1a1;
-$fa-var-reddit-alien: \f281;
-$fa-var-reddit-square: \f1a2;
-$fa-var-redhat: \f7bc;
-$fa-var-redo: \f01e;
-$fa-var-redo-alt: \f2f9;
-$fa-var-registered: \f25d;
-$fa-var-remove-format: \f87d;
-$fa-var-renren: \f18b;
-$fa-var-reply: \f3e5;
-$fa-var-reply-all: \f122;
-$fa-var-replyd: \f3e6;
-$fa-var-republican: \f75e;
-$fa-var-researchgate: \f4f8;
-$fa-var-resolving: \f3e7;
-$fa-var-restroom: \f7bd;
-$fa-var-retweet: \f079;
-$fa-var-rev: \f5b2;
-$fa-var-ribbon: \f4d6;
-$fa-var-ring: \f70b;
-$fa-var-road: \f018;
-$fa-var-robot: \f544;
-$fa-var-rocket: \f135;
-$fa-var-rocketchat: \f3e8;
-$fa-var-rockrms: \f3e9;
-$fa-var-route: \f4d7;
-$fa-var-rss: \f09e;
-$fa-var-rss-square: \f143;
-$fa-var-ruble-sign: \f158;
-$fa-var-ruler: \f545;
-$fa-var-ruler-combined: \f546;
-$fa-var-ruler-horizontal: \f547;
-$fa-var-ruler-vertical: \f548;
-$fa-var-running: \f70c;
-$fa-var-rupee-sign: \f156;
-$fa-var-rust: \e07a;
-$fa-var-sad-cry: \f5b3;
-$fa-var-sad-tear: \f5b4;
-$fa-var-safari: \f267;
-$fa-var-salesforce: \f83b;
-$fa-var-sass: \f41e;
-$fa-var-satellite: \f7bf;
-$fa-var-satellite-dish: \f7c0;
-$fa-var-save: \f0c7;
-$fa-var-schlix: \f3ea;
-$fa-var-school: \f549;
-$fa-var-screwdriver: \f54a;
-$fa-var-scribd: \f28a;
-$fa-var-scroll: \f70e;
-$fa-var-sd-card: \f7c2;
-$fa-var-search: \f002;
-$fa-var-search-dollar: \f688;
-$fa-var-search-location: \f689;
-$fa-var-search-minus: \f010;
-$fa-var-search-plus: \f00e;
-$fa-var-searchengin: \f3eb;
-$fa-var-seedling: \f4d8;
-$fa-var-sellcast: \f2da;
-$fa-var-sellsy: \f213;
-$fa-var-server: \f233;
-$fa-var-servicestack: \f3ec;
-$fa-var-shapes: \f61f;
-$fa-var-share: \f064;
-$fa-var-share-alt: \f1e0;
-$fa-var-share-alt-square: \f1e1;
-$fa-var-share-square: \f14d;
-$fa-var-shekel-sign: \f20b;
-$fa-var-shield-alt: \f3ed;
-$fa-var-shield-virus: \e06c;
-$fa-var-ship: \f21a;
-$fa-var-shipping-fast: \f48b;
-$fa-var-shirtsinbulk: \f214;
-$fa-var-shoe-prints: \f54b;
-$fa-var-shopify: \e057;
-$fa-var-shopping-bag: \f290;
-$fa-var-shopping-basket: \f291;
-$fa-var-shopping-cart: \f07a;
-$fa-var-shopware: \f5b5;
-$fa-var-shower: \f2cc;
-$fa-var-shuttle-van: \f5b6;
-$fa-var-sign: \f4d9;
-$fa-var-sign-in-alt: \f2f6;
-$fa-var-sign-language: \f2a7;
-$fa-var-sign-out-alt: \f2f5;
-$fa-var-signal: \f012;
-$fa-var-signature: \f5b7;
-$fa-var-sim-card: \f7c4;
-$fa-var-simplybuilt: \f215;
-$fa-var-sink: \e06d;
-$fa-var-sistrix: \f3ee;
-$fa-var-sitemap: \f0e8;
-$fa-var-sith: \f512;
-$fa-var-skating: \f7c5;
-$fa-var-sketch: \f7c6;
-$fa-var-skiing: \f7c9;
-$fa-var-skiing-nordic: \f7ca;
-$fa-var-skull: \f54c;
-$fa-var-skull-crossbones: \f714;
-$fa-var-skyatlas: \f216;
-$fa-var-skype: \f17e;
-$fa-var-slack: \f198;
-$fa-var-slack-hash: \f3ef;
-$fa-var-slash: \f715;
-$fa-var-sleigh: \f7cc;
-$fa-var-sliders-h: \f1de;
-$fa-var-slideshare: \f1e7;
-$fa-var-smile: \f118;
-$fa-var-smile-beam: \f5b8;
-$fa-var-smile-wink: \f4da;
-$fa-var-smog: \f75f;
-$fa-var-smoking: \f48d;
-$fa-var-smoking-ban: \f54d;
-$fa-var-sms: \f7cd;
-$fa-var-snapchat: \f2ab;
-$fa-var-snapchat-ghost: \f2ac;
-$fa-var-snapchat-square: \f2ad;
-$fa-var-snowboarding: \f7ce;
-$fa-var-snowflake: \f2dc;
-$fa-var-snowman: \f7d0;
-$fa-var-snowplow: \f7d2;
-$fa-var-soap: \e06e;
-$fa-var-socks: \f696;
-$fa-var-solar-panel: \f5ba;
-$fa-var-sort: \f0dc;
-$fa-var-sort-alpha-down: \f15d;
-$fa-var-sort-alpha-down-alt: \f881;
-$fa-var-sort-alpha-up: \f15e;
-$fa-var-sort-alpha-up-alt: \f882;
-$fa-var-sort-amount-down: \f160;
-$fa-var-sort-amount-down-alt: \f884;
-$fa-var-sort-amount-up: \f161;
-$fa-var-sort-amount-up-alt: \f885;
-$fa-var-sort-down: \f0dd;
-$fa-var-sort-numeric-down: \f162;
-$fa-var-sort-numeric-down-alt: \f886;
-$fa-var-sort-numeric-up: \f163;
-$fa-var-sort-numeric-up-alt: \f887;
-$fa-var-sort-up: \f0de;
-$fa-var-soundcloud: \f1be;
-$fa-var-sourcetree: \f7d3;
-$fa-var-spa: \f5bb;
-$fa-var-space-shuttle: \f197;
-$fa-var-speakap: \f3f3;
-$fa-var-speaker-deck: \f83c;
-$fa-var-spell-check: \f891;
-$fa-var-spider: \f717;
-$fa-var-spinner: \f110;
-$fa-var-splotch: \f5bc;
-$fa-var-spotify: \f1bc;
-$fa-var-spray-can: \f5bd;
-$fa-var-square: \f0c8;
-$fa-var-square-full: \f45c;
-$fa-var-square-root-alt: \f698;
-$fa-var-squarespace: \f5be;
-$fa-var-stack-exchange: \f18d;
-$fa-var-stack-overflow: \f16c;
-$fa-var-stackpath: \f842;
-$fa-var-stamp: \f5bf;
-$fa-var-star: \f005;
-$fa-var-star-and-crescent: \f699;
-$fa-var-star-half: \f089;
-$fa-var-star-half-alt: \f5c0;
-$fa-var-star-of-david: \f69a;
-$fa-var-star-of-life: \f621;
-$fa-var-staylinked: \f3f5;
-$fa-var-steam: \f1b6;
-$fa-var-steam-square: \f1b7;
-$fa-var-steam-symbol: \f3f6;
-$fa-var-step-backward: \f048;
-$fa-var-step-forward: \f051;
-$fa-var-stethoscope: \f0f1;
-$fa-var-sticker-mule: \f3f7;
-$fa-var-sticky-note: \f249;
-$fa-var-stop: \f04d;
-$fa-var-stop-circle: \f28d;
-$fa-var-stopwatch: \f2f2;
-$fa-var-stopwatch-20: \e06f;
-$fa-var-store: \f54e;
-$fa-var-store-alt: \f54f;
-$fa-var-store-alt-slash: \e070;
-$fa-var-store-slash: \e071;
-$fa-var-strava: \f428;
-$fa-var-stream: \f550;
-$fa-var-street-view: \f21d;
-$fa-var-strikethrough: \f0cc;
-$fa-var-stripe: \f429;
-$fa-var-stripe-s: \f42a;
-$fa-var-stroopwafel: \f551;
-$fa-var-studiovinari: \f3f8;
-$fa-var-stumbleupon: \f1a4;
-$fa-var-stumbleupon-circle: \f1a3;
-$fa-var-subscript: \f12c;
-$fa-var-subway: \f239;
-$fa-var-suitcase: \f0f2;
-$fa-var-suitcase-rolling: \f5c1;
-$fa-var-sun: \f185;
-$fa-var-superpowers: \f2dd;
-$fa-var-superscript: \f12b;
-$fa-var-supple: \f3f9;
-$fa-var-surprise: \f5c2;
-$fa-var-suse: \f7d6;
-$fa-var-swatchbook: \f5c3;
-$fa-var-swift: \f8e1;
-$fa-var-swimmer: \f5c4;
-$fa-var-swimming-pool: \f5c5;
-$fa-var-symfony: \f83d;
-$fa-var-synagogue: \f69b;
-$fa-var-sync: \f021;
-$fa-var-sync-alt: \f2f1;
-$fa-var-syringe: \f48e;
-$fa-var-table: \f0ce;
-$fa-var-table-tennis: \f45d;
-$fa-var-tablet: \f10a;
-$fa-var-tablet-alt: \f3fa;
-$fa-var-tablets: \f490;
-$fa-var-tachometer-alt: \f3fd;
-$fa-var-tag: \f02b;
-$fa-var-tags: \f02c;
-$fa-var-tape: \f4db;
-$fa-var-tasks: \f0ae;
-$fa-var-taxi: \f1ba;
-$fa-var-teamspeak: \f4f9;
-$fa-var-teeth: \f62e;
-$fa-var-teeth-open: \f62f;
-$fa-var-telegram: \f2c6;
-$fa-var-telegram-plane: \f3fe;
-$fa-var-temperature-high: \f769;
-$fa-var-temperature-low: \f76b;
-$fa-var-tencent-weibo: \f1d5;
-$fa-var-tenge: \f7d7;
-$fa-var-terminal: \f120;
-$fa-var-text-height: \f034;
-$fa-var-text-width: \f035;
-$fa-var-th: \f00a;
-$fa-var-th-large: \f009;
-$fa-var-th-list: \f00b;
-$fa-var-the-red-yeti: \f69d;
-$fa-var-theater-masks: \f630;
-$fa-var-themeco: \f5c6;
-$fa-var-themeisle: \f2b2;
-$fa-var-thermometer: \f491;
-$fa-var-thermometer-empty: \f2cb;
-$fa-var-thermometer-full: \f2c7;
-$fa-var-thermometer-half: \f2c9;
-$fa-var-thermometer-quarter: \f2ca;
-$fa-var-thermometer-three-quarters: \f2c8;
-$fa-var-think-peaks: \f731;
-$fa-var-thumbs-down: \f165;
-$fa-var-thumbs-up: \f164;
-$fa-var-thumbtack: \f08d;
-$fa-var-ticket-alt: \f3ff;
-$fa-var-tiktok: \e07b;
-$fa-var-times: \f00d;
-$fa-var-times-circle: \f057;
-$fa-var-tint: \f043;
-$fa-var-tint-slash: \f5c7;
-$fa-var-tired: \f5c8;
-$fa-var-toggle-off: \f204;
-$fa-var-toggle-on: \f205;
-$fa-var-toilet: \f7d8;
-$fa-var-toilet-paper: \f71e;
-$fa-var-toilet-paper-slash: \e072;
-$fa-var-toolbox: \f552;
-$fa-var-tools: \f7d9;
-$fa-var-tooth: \f5c9;
-$fa-var-torah: \f6a0;
-$fa-var-torii-gate: \f6a1;
-$fa-var-tractor: \f722;
-$fa-var-trade-federation: \f513;
-$fa-var-trademark: \f25c;
-$fa-var-traffic-light: \f637;
-$fa-var-trailer: \e041;
-$fa-var-train: \f238;
-$fa-var-tram: \f7da;
-$fa-var-transgender: \f224;
-$fa-var-transgender-alt: \f225;
-$fa-var-trash: \f1f8;
-$fa-var-trash-alt: \f2ed;
-$fa-var-trash-restore: \f829;
-$fa-var-trash-restore-alt: \f82a;
-$fa-var-tree: \f1bb;
-$fa-var-trello: \f181;
-$fa-var-trophy: \f091;
-$fa-var-truck: \f0d1;
-$fa-var-truck-loading: \f4de;
-$fa-var-truck-monster: \f63b;
-$fa-var-truck-moving: \f4df;
-$fa-var-truck-pickup: \f63c;
-$fa-var-tshirt: \f553;
-$fa-var-tty: \f1e4;
-$fa-var-tumblr: \f173;
-$fa-var-tumblr-square: \f174;
-$fa-var-tv: \f26c;
-$fa-var-twitch: \f1e8;
-$fa-var-twitter: \f099;
-$fa-var-twitter-square: \f081;
-$fa-var-typo3: \f42b;
-$fa-var-uber: \f402;
-$fa-var-ubuntu: \f7df;
-$fa-var-uikit: \f403;
-$fa-var-umbraco: \f8e8;
-$fa-var-umbrella: \f0e9;
-$fa-var-umbrella-beach: \f5ca;
-$fa-var-uncharted: \e084;
-$fa-var-underline: \f0cd;
-$fa-var-undo: \f0e2;
-$fa-var-undo-alt: \f2ea;
-$fa-var-uniregistry: \f404;
-$fa-var-unity: \e049;
-$fa-var-universal-access: \f29a;
-$fa-var-university: \f19c;
-$fa-var-unlink: \f127;
-$fa-var-unlock: \f09c;
-$fa-var-unlock-alt: \f13e;
-$fa-var-unsplash: \e07c;
-$fa-var-untappd: \f405;
-$fa-var-upload: \f093;
-$fa-var-ups: \f7e0;
-$fa-var-usb: \f287;
-$fa-var-user: \f007;
-$fa-var-user-alt: \f406;
-$fa-var-user-alt-slash: \f4fa;
-$fa-var-user-astronaut: \f4fb;
-$fa-var-user-check: \f4fc;
-$fa-var-user-circle: \f2bd;
-$fa-var-user-clock: \f4fd;
-$fa-var-user-cog: \f4fe;
-$fa-var-user-edit: \f4ff;
-$fa-var-user-friends: \f500;
-$fa-var-user-graduate: \f501;
-$fa-var-user-injured: \f728;
-$fa-var-user-lock: \f502;
-$fa-var-user-md: \f0f0;
-$fa-var-user-minus: \f503;
-$fa-var-user-ninja: \f504;
-$fa-var-user-nurse: \f82f;
-$fa-var-user-plus: \f234;
-$fa-var-user-secret: \f21b;
-$fa-var-user-shield: \f505;
-$fa-var-user-slash: \f506;
-$fa-var-user-tag: \f507;
-$fa-var-user-tie: \f508;
-$fa-var-user-times: \f235;
-$fa-var-users: \f0c0;
-$fa-var-users-cog: \f509;
-$fa-var-users-slash: \e073;
-$fa-var-usps: \f7e1;
-$fa-var-ussunnah: \f407;
-$fa-var-utensil-spoon: \f2e5;
-$fa-var-utensils: \f2e7;
-$fa-var-vaadin: \f408;
-$fa-var-vector-square: \f5cb;
-$fa-var-venus: \f221;
-$fa-var-venus-double: \f226;
-$fa-var-venus-mars: \f228;
-$fa-var-vest: \e085;
-$fa-var-vest-patches: \e086;
-$fa-var-viacoin: \f237;
-$fa-var-viadeo: \f2a9;
-$fa-var-viadeo-square: \f2aa;
-$fa-var-vial: \f492;
-$fa-var-vials: \f493;
-$fa-var-viber: \f409;
-$fa-var-video: \f03d;
-$fa-var-video-slash: \f4e2;
-$fa-var-vihara: \f6a7;
-$fa-var-vimeo: \f40a;
-$fa-var-vimeo-square: \f194;
-$fa-var-vimeo-v: \f27d;
-$fa-var-vine: \f1ca;
-$fa-var-virus: \e074;
-$fa-var-virus-slash: \e075;
-$fa-var-viruses: \e076;
-$fa-var-vk: \f189;
-$fa-var-vnv: \f40b;
-$fa-var-voicemail: \f897;
-$fa-var-volleyball-ball: \f45f;
-$fa-var-volume-down: \f027;
-$fa-var-volume-mute: \f6a9;
-$fa-var-volume-off: \f026;
-$fa-var-volume-up: \f028;
-$fa-var-vote-yea: \f772;
-$fa-var-vr-cardboard: \f729;
-$fa-var-vuejs: \f41f;
-$fa-var-walking: \f554;
-$fa-var-wallet: \f555;
-$fa-var-warehouse: \f494;
-$fa-var-watchman-monitoring: \e087;
-$fa-var-water: \f773;
-$fa-var-wave-square: \f83e;
-$fa-var-waze: \f83f;
-$fa-var-weebly: \f5cc;
-$fa-var-weibo: \f18a;
-$fa-var-weight: \f496;
-$fa-var-weight-hanging: \f5cd;
-$fa-var-weixin: \f1d7;
-$fa-var-whatsapp: \f232;
-$fa-var-whatsapp-square: \f40c;
-$fa-var-wheelchair: \f193;
-$fa-var-whmcs: \f40d;
-$fa-var-wifi: \f1eb;
-$fa-var-wikipedia-w: \f266;
-$fa-var-wind: \f72e;
-$fa-var-window-close: \f410;
-$fa-var-window-maximize: \f2d0;
-$fa-var-window-minimize: \f2d1;
-$fa-var-window-restore: \f2d2;
-$fa-var-windows: \f17a;
-$fa-var-wine-bottle: \f72f;
-$fa-var-wine-glass: \f4e3;
-$fa-var-wine-glass-alt: \f5ce;
-$fa-var-wix: \f5cf;
-$fa-var-wizards-of-the-coast: \f730;
-$fa-var-wodu: \e088;
-$fa-var-wolf-pack-battalion: \f514;
-$fa-var-won-sign: \f159;
-$fa-var-wordpress: \f19a;
-$fa-var-wordpress-simple: \f411;
-$fa-var-wpbeginner: \f297;
-$fa-var-wpexplorer: \f2de;
-$fa-var-wpforms: \f298;
-$fa-var-wpressr: \f3e4;
-$fa-var-wrench: \f0ad;
-$fa-var-x-ray: \f497;
-$fa-var-xbox: \f412;
-$fa-var-xing: \f168;
-$fa-var-xing-square: \f169;
-$fa-var-y-combinator: \f23b;
-$fa-var-yahoo: \f19e;
-$fa-var-yammer: \f840;
-$fa-var-yandex: \f413;
-$fa-var-yandex-international: \f414;
-$fa-var-yarn: \f7e3;
-$fa-var-yelp: \f1e9;
-$fa-var-yen-sign: \f157;
-$fa-var-yin-yang: \f6ad;
-$fa-var-yoast: \f2b1;
-$fa-var-youtube: \f167;
-$fa-var-youtube-square: \f431;
-$fa-var-zhihu: \f63f;
diff --git a/src/assets/styles/fontawesome/brands.scss b/src/assets/styles/fontawesome/brands.scss
deleted file mode 100644
index 16af9964..00000000
--- a/src/assets/styles/fontawesome/brands.scss
+++ /dev/null
@@ -1,23 +0,0 @@
-/*!
- * Font Awesome Free 5.15.4 by @fontawesome - https://fontawesome.com
- * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
- */
-@import 'variables';
-
-@font-face {
- font-family: 'Font Awesome 5 Brands';
- font-style: normal;
- font-weight: 400;
- font-display: $fa-font-display;
- src: url('#{$fa-font-path}/fa-brands-400.eot');
- src: url('#{$fa-font-path}/fa-brands-400.eot?#iefix') format('embedded-opentype'),
- url('#{$fa-font-path}/fa-brands-400.woff2') format('woff2'),
- url('#{$fa-font-path}/fa-brands-400.woff') format('woff'),
- url('#{$fa-font-path}/fa-brands-400.ttf') format('truetype'),
- url('#{$fa-font-path}/fa-brands-400.svg#fontawesome') format('svg');
-}
-
-.fab {
- font-family: 'Font Awesome 5 Brands';
- font-weight: 400;
-}
diff --git a/src/assets/styles/fontawesome/fontawesome.scss b/src/assets/styles/fontawesome/fontawesome.scss
deleted file mode 100644
index 466d26c6..00000000
--- a/src/assets/styles/fontawesome/fontawesome.scss
+++ /dev/null
@@ -1,16 +0,0 @@
-/*!
- * Font Awesome Free 5.15.4 by @fontawesome - https://fontawesome.com
- * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
- */
-@import 'variables';
-@import 'mixins';
-@import 'core';
-@import 'larger';
-@import 'fixed-width';
-@import 'list';
-@import 'bordered-pulled';
-@import 'animated';
-@import 'rotated-flipped';
-@import 'stacked';
-@import 'icons';
-@import 'screen-reader';
diff --git a/src/assets/styles/fontawesome/regular.scss b/src/assets/styles/fontawesome/regular.scss
deleted file mode 100644
index 14b6cb3d..00000000
--- a/src/assets/styles/fontawesome/regular.scss
+++ /dev/null
@@ -1,23 +0,0 @@
-/*!
- * Font Awesome Free 5.15.4 by @fontawesome - https://fontawesome.com
- * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
- */
-@import 'variables';
-
-@font-face {
- font-family: 'Font Awesome 5 Free';
- font-style: normal;
- font-weight: 400;
- font-display: $fa-font-display;
- src: url('#{$fa-font-path}/fa-regular-400.eot');
- src: url('#{$fa-font-path}/fa-regular-400.eot?#iefix') format('embedded-opentype'),
- url('#{$fa-font-path}/fa-regular-400.woff2') format('woff2'),
- url('#{$fa-font-path}/fa-regular-400.woff') format('woff'),
- url('#{$fa-font-path}/fa-regular-400.ttf') format('truetype'),
- url('#{$fa-font-path}/fa-regular-400.svg#fontawesome') format('svg');
-}
-
-.far {
- font-family: 'Font Awesome 5 Free';
- font-weight: 400;
-}
diff --git a/src/assets/styles/fontawesome/solid.scss b/src/assets/styles/fontawesome/solid.scss
deleted file mode 100644
index 56f1ead9..00000000
--- a/src/assets/styles/fontawesome/solid.scss
+++ /dev/null
@@ -1,24 +0,0 @@
-/*!
- * Font Awesome Free 5.15.4 by @fontawesome - https://fontawesome.com
- * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
- */
-@import 'variables';
-
-@font-face {
- font-family: 'Font Awesome 5 Free';
- font-style: normal;
- font-weight: 900;
- font-display: $fa-font-display;
- src: url('#{$fa-font-path}/fa-solid-900.eot');
- src: url('#{$fa-font-path}/fa-solid-900.eot?#iefix') format('embedded-opentype'),
- url('#{$fa-font-path}/fa-solid-900.woff2') format('woff2'),
- url('#{$fa-font-path}/fa-solid-900.woff') format('woff'),
- url('#{$fa-font-path}/fa-solid-900.ttf') format('truetype'),
- url('#{$fa-font-path}/fa-solid-900.svg#fontawesome') format('svg');
-}
-
-.fa,
-.fas {
- font-family: 'Font Awesome 5 Free';
- font-weight: 900;
-}
diff --git a/src/assets/styles/fontawesome/v4-shims.scss b/src/assets/styles/fontawesome/v4-shims.scss
deleted file mode 100644
index 20d627a1..00000000
--- a/src/assets/styles/fontawesome/v4-shims.scss
+++ /dev/null
@@ -1,6 +0,0 @@
-/*!
- * Font Awesome Free 5.15.4 by @fontawesome - https://fontawesome.com
- * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License)
- */
-@import 'variables';
-@import 'shims';
diff --git a/src/assets/styles/fonts.scss b/src/assets/styles/fonts.scss
index de694df0..dbb7f866 100644
--- a/src/assets/styles/fonts.scss
+++ b/src/assets/styles/fonts.scss
@@ -1,4 +1,4 @@
@font-face {
font-family: Ubuntu;
- src: url('../webfonts/Ubuntu-C.ttf');
+ src: url('@/assets/webfonts/Ubuntu-C.ttf');
}
diff --git a/src/assets/styles/icons.scss b/src/assets/styles/icons.scss
index 17c3657f..509952b3 100644
--- a/src/assets/styles/icons.scss
+++ b/src/assets/styles/icons.scss
@@ -1,5 +1,4 @@
-.fas,
-.svg-inline--fa {
+.fa-icon {
line-height: 0 !important;
}
@@ -11,11 +10,11 @@
background-position: center;
&.icon-nitro-light {
- background-image: url('../images/nitro/nitro-n-light.svg');
+ background-image: url('@/assets/images/nitro/nitro-n-light.svg');
}
&.icon-nitro-dark {
- background-image: url('../images/nitro/nitro-n-dark.svg');
+ background-image: url('@/assets/images/nitro/nitro-n-dark.svg');
}
&.icon-nitro-light,
@@ -25,572 +24,591 @@
}
&.icon-catalog {
- background-image: url('../images/toolbar/icons/catalog.png');
+ background-image: url('@/assets/images/toolbar/icons/catalog.png');
width: 37px;
height: 36px;
}
+ &.icon-game {
+ background-image: url('@/assets/images/toolbar/icons/game.png');
+ width: 44px;
+ height: 25px;
+ }
+
&.icon-rooms {
- background-image: url('../images/toolbar/icons/rooms.png');
+ background-image: url('@/assets/images/toolbar/icons/rooms.png');
width: 44px;
height: 30px;
}
&.icon-house {
- background-image: url('../images/toolbar/icons/house.png');
+ background-image: url('@/assets/images/toolbar/icons/house.png');
height: 30px;
width: 32px;
}
&.gray {
- opacity: .5;
+ opacity: 0.5;
}
&.icon-inventory {
- background-image: url('../images/toolbar/icons/inventory.png');
+ background-image: url('@/assets/images/toolbar/icons/inventory.png');
height: 41px;
width: 44px;
}
&.icon-modtools {
- background-image: url('../images/toolbar/icons/modtools.png');
+ background-image: url('@/assets/images/toolbar/icons/modtools.png');
height: 34px;
width: 29px;
}
&.icon-friendall {
- background-image: url('../images/toolbar/icons/friend_all.png');
+ background-image: url('@/assets/images/toolbar/icons/friend_all.png');
height: 33px;
width: 32px;
}
&.icon-friendsearch {
- background-image: url('../images/toolbar/icons/friend_search.png');
+ background-image: url('@/assets/images/toolbar/icons/friend_search.png');
height: 33px;
width: 29px;
}
&.icon-sendmessage {
- background-image: url('../images/toolbar/icons/sendmessage.png');
+ background-image: url('@/assets/images/toolbar/icons/sendmessage.png');
width: 20px;
height: 21px;
}
&.icon-me-talents {
- background-image: url('../images/toolbar/icons/me-menu/talents.png');
+ background-image: url('@/assets/images/toolbar/icons/me-menu/talents.png');
width: 32px;
height: 30px;
}
&.icon-me-helper-tool {
- background-image: url('../images/toolbar/icons/me-menu/helper-tool.png');
+ background-image: url('@/assets/images/toolbar/icons/me-menu/helper-tool.png');
width: 32px;
height: 30px;
}
&.icon-me-profile {
- background-image: url('../images/toolbar/icons/me-menu/profile.png');
+ background-image: url('@/assets/images/toolbar/icons/me-menu/profile.png');
width: 32px;
height: 30px;
}
&.icon-me-forums {
- background-image: url('../images/toolbar/icons/me-menu/forums.png');
+ background-image: url('@/assets/images/toolbar/icons/me-menu/forums.png');
width: 32px;
height: 30px;
}
&.icon-me-rooms {
- background-image: url('../images/toolbar/icons/me-menu/my-rooms.png');
+ background-image: url('@/assets/images/toolbar/icons/me-menu/my-rooms.png');
width: 30px;
height: 30px;
}
&.icon-me-achievements {
- background-image: url('../images/toolbar/icons/me-menu/achievements.png');
+ background-image: url('@/assets/images/toolbar/icons/me-menu/achievements.png');
width: 31px;
height: 30px;
}
&.icon-me-clothing {
- background-image: url('../images/toolbar/icons/me-menu/clothing.png');
+ background-image: url('@/assets/images/toolbar/icons/me-menu/clothing.png');
width: 27px;
height: 30px;
}
&.icon-me-settings {
- background-image: url('../images/toolbar/icons/me-menu/cog.png');
+ background-image: url('@/assets/images/toolbar/icons/me-menu/cog.png');
width: 28px;
height: 34px;
}
&.icon-cog {
- background: url('../images/icons/icon_cog.png');
+ background: url('@/assets/images/icons/icon_cog.png');
width: 14px;
height: 15px;
}
&.icon-help {
- background: url('../images/icons/help.png');
+ background: url('@/assets/images/icons/help.png');
width: 13px;
height: 23px;
}
&.icon-joinroom {
- background-image: url('../images/toolbar/icons/joinroom.png');
+ background-image: url('@/assets/images/toolbar/icons/joinroom.png');
width: 21px;
height: 21px;
}
&.icon-habbo {
- background-image: url('../images/toolbar/icons/habbo.png');
+ background-image: url('@/assets/images/toolbar/icons/habbo.png');
width: 28px;
height: 28px;
}
&.icon-camera {
- background-image: url('../images/toolbar/icons/camera.png');
+ background-image: url('@/assets/images/toolbar/icons/camera.png');
width: 38px;
height: 45px;
}
&.icon-message {
- background-image: url('../images/toolbar/icons/message.png');
+ background-image: url('@/assets/images/toolbar/icons/message.png');
width: 36px;
height: 32px;
&.is-unseen {
- background-image: url('../images/toolbar/icons/message_unsee.gif');
+ background-image: url('@/assets/images/toolbar/icons/message_unsee.gif');
}
}
&.icon-wired-trigger {
- background-image: url('../images/wired/icon_trigger.png');
+ background-image: url('@/assets/images/wired/icon_trigger.png');
width: 13px;
height: 14px;
}
&.icon-wired-condition {
- background-image: url('../images/wired/icon_condition.png');
+ background-image: url('@/assets/images/wired/icon_condition.png');
width: 13px;
height: 14px;
}
&.icon-wired-action {
- background-image: url('../images/wired/icon_action.png');
+ background-image: url('@/assets/images/wired/icon_action.png');
width: 13px;
height: 14px;
}
&.chatstyles-icon {
- background-image: url('../images/chat/styles-icon.png');
+ background-image: url('@/assets/images/chat/styles-icon.png');
width: 17px;
height: 19px;
}
&.pencil-icon {
- background-image: url('../images/infostand/pencil-icon.png');
+ background-image: url('@/assets/images/infostand/pencil-icon.png');
width: 17px;
height: 18px;
}
+ &.disk-icon {
+ background-image: url('@/assets/images/infostand/disk-icon.png');
+ width: 14px;
+ height: 14px;
+ }
+
+ &.disk-creator {
+ background-image: url('@/assets/images/infostand/disk-creator.png');
+ width: 14px;
+ height: 14px;
+ }
+
&.trade-locked-icon {
- background-image: url('../images/inventory/trading/locked-icon.png');
+ background-image: url('@/assets/images/inventory/trading/locked-icon.png');
width: 29px;
height: 43px;
}
&.trade-unlocked-icon {
- background-image: url('../images/inventory/trading/unlocked-icon.png');
+ background-image: url('@/assets/images/inventory/trading/unlocked-icon.png');
width: 29px;
height: 43px;
}
&.modtool-room-icon {
- background-image: url('../images/modtool/room.png');
+ background-image: url('@/assets/images/modtool/room.png');
width: 20px;
height: 15px;
}
&.modtool-chatlog-icon {
- background-image: url('../images/modtool/chatlog.gif');
+ background-image: url('@/assets/images/modtool/chatlog.gif');
width: 20px;
height: 15px;
}
&.modtool-user-icon {
- background-image: url('../images/modtool/user.gif');
+ background-image: url('@/assets/images/modtool/user.gif');
width: 20px;
height: 15px;
}
&.modtool-reports-icon {
- background-image: url('../images/modtool/reports.png');
+ background-image: url('@/assets/images/modtool/reports.png');
width: 20px;
height: 15px;
}
&.modtool-wrench-icon {
- background-image: url('../images/modtool/wrench.gif');
+ background-image: url('@/assets/images/modtool/wrench.gif');
width: 20px;
height: 15px;
}
&.modtool-key-icon {
- background-image: url('../images/modtool/key.gif');
+ background-image: url('@/assets/images/modtool/key.gif');
width: 20px;
height: 15px;
}
&.icon-catalogue-hc_small {
- background-image: url('../images/catalog/hc_small.png');
+ background-image: url('@/assets/images/catalog/hc_small.png');
height: 17px;
width: 31px;
}
&.icon-catalogue-hc_big {
- background: url('../images/catalog/hc_big.png');
+ background: url('@/assets/images/catalog/hc_big.png');
width: 68px;
height: 40px;
}
&.icon-sign-exclamation {
- background: url('../images/icons/sign-exclamation.png');
+ background: url('@/assets/images/icons/sign-exclamation.png');
width: 7px;
height: 17px;
}
&.icon-sign-heart {
- background: url('../images/icons/sign-heart.png');
+ background: url('@/assets/images/icons/sign-heart.png');
width: 15px;
height: 13px;
}
&.icon-sign-red {
- background: url('../images/icons/sign-red.png');
+ background: url('@/assets/images/icons/sign-red.png');
width: 11px;
height: 19px;
}
&.icon-sign-yellow {
- background: url('../images/icons/sign-yellow.png');
+ background: url('@/assets/images/icons/sign-yellow.png');
width: 11px;
height: 19px;
}
&.icon-sign-skull {
- background: url('../images/icons/sign-skull.png');
+ background: url('@/assets/images/icons/sign-skull.png');
width: 12px;
height: 12px;
}
&.icon-sign-smile {
- background: url('../images/icons/sign-smile.png');
+ background: url('@/assets/images/icons/sign-smile.png');
width: 7px;
height: 14px;
}
&.icon-sign-soccer {
- background: url('../images/icons/sign-soccer.png');
+ background: url('@/assets/images/icons/sign-soccer.png');
width: 20px;
height: 20px;
}
&.icon-house-small {
- background: url('../images/icons/house-small.png');
+ background: url('@/assets/images/icons/house-small.png');
width: 19px;
height: 14px;
}
&.icon-camera-small {
- background: url('../images/icons/camera-small.png');
+ background: url('@/assets/images/icons/camera-small.png');
width: 17px;
height: 15px;
}
&.icon-small-room {
- background: url('../images/icons/small-room.png');
+ background: url('@/assets/images/icons/small-room.png');
width: 17px;
height: 16px;
}
&.icon-cog {
- background: url('../images/icons/cog.png');
+ background: url('@/assets/images/icons/cog.png');
width: 21px;
height: 21px;
}
&.icon-chat-history {
- background: url('../images/icons/chat-history.png');
+ background: url('@/assets/images/icons/chat-history.png');
width: 17px;
height: 21px;
}
&.icon-room-link {
- background: url('../images/icons/room-link.png');
+ background: url('@/assets/images/icons/room-link.png');
width: 17px;
height: 15px;
}
&.icon-zoom-more {
- background: url('../images/icons/zoom-more.png');
+ background: url('@/assets/images/icons/zoom-more.png');
width: 12px;
height: 22px;
}
&.icon-zoom-less {
- background: url('../images/icons/zoom-less.png');
+ background: url('@/assets/images/icons/zoom-less.png');
width: 12px;
height: 22px;
}
&.icon-like-room {
- background: url('../images/icons/like-room.png');
+ background: url('@/assets/images/icons/like-room.png');
width: 20px;
height: 22px;
}
&.icon-arrows {
- background: url('../images/icons/arrows.png');
+ background: url('@/assets/images/icons/arrows.png');
width: 17px;
height: 15px;
}
&.icon-camera-colormatrix {
- background: url('../images/icons/camera-colormatrix.png');
+ background: url('@/assets/images/icons/camera-colormatrix.png');
width: 32px;
height: 21px;
}
&.icon-camera-composite {
- background: url('../images/icons/camera-composite.png');
+ background: url('@/assets/images/icons/camera-composite.png');
width: 32px;
height: 21px;
}
&.icon-pf-online {
- background: url('../images/profile/icons/online.gif');
+ background: url('@/assets/images/profile/icons/online.gif');
width: 40px;
height: 16px;
}
&.icon-pf-offline {
- background: url('../images/profile/icons/offline.png');
+ background: url('@/assets/images/profile/icons/offline.png');
width: 39px;
height: 16px;
}
&.icon-pf-tick {
- background: url('../images/profile/icons/tick.png');
+ background: url('@/assets/images/profile/icons/tick.png');
width: 11px;
height: 10px;
}
&.icon-group-type-0 {
- background: url('../images/groups/icons/grouptype_icon_0.png');
+ background: url('@/assets/images/groups/icons/grouptype_icon_0.png');
width: 16px;
height: 16px;
}
&.icon-group-type-1 {
- background: url('../images/groups/icons/grouptype_icon_1.png');
+ background: url('@/assets/images/groups/icons/grouptype_icon_1.png');
width: 16px;
height: 16px;
}
&.icon-group-type-2 {
- background: url('../images/groups/icons/grouptype_icon_2.png');
+ background: url('@/assets/images/groups/icons/grouptype_icon_2.png');
width: 16px;
height: 16px;
}
&.icon-group-decorate {
- background: url('../images/groups/icons/group_decorate_icon.png');
+ background: url('@/assets/images/groups/icons/group_decorate_icon.png');
width: 15px;
height: 15px;
}
&.icon-group-member {
- background: url('../images/groups/icons/group_icon_big_member.png');
+ background: url('@/assets/images/groups/icons/group_icon_big_member.png');
width: 20px;
height: 20px;
}
&.icon-group-admin {
- background: url('../images/groups/icons/group_icon_big_admin.png');
+ background: url('@/assets/images/groups/icons/group_icon_big_admin.png');
width: 20px;
height: 20px;
}
&.icon-group-owner {
- background: url('../images/groups/icons/group_icon_big_owner.png');
+ background: url('@/assets/images/groups/icons/group_icon_big_owner.png');
width: 20px;
height: 20px;
}
&.icon-group-favorite {
- background: url('../images/groups/icons/group_favorite.png');
+ background: url('@/assets/images/groups/icons/group_favorite.png');
width: 14px;
height: 14px;
}
&.icon-group-not-favorite {
- background: url('../images/groups/icons/group_notfavorite.png');
+ background: url('@/assets/images/groups/icons/group_notfavorite.png');
width: 14px;
height: 14px;
}
&.icon-group-small-admin {
- background: url('../images/groups/icons/group_icon_admin.png');
+ background: url('@/assets/images/groups/icons/group_icon_admin.png');
width: 11px;
height: 13px;
}
&.icon-group-small-not-admin {
- background: url('../images/groups/icons/group_icon_not_admin.png');
+ background: url('@/assets/images/groups/icons/group_icon_not_admin.png');
width: 11px;
height: 13px;
}
&.icon-group-small-owner {
- background: url('../images/groups/icons/group_icon_small_owner.png');
+ background: url('@/assets/images/groups/icons/group_icon_small_owner.png');
width: 13px;
height: 13px;
}
&.icon-navigator-info {
- background: url('../images/navigator/icons/info.png');
+ background: url('@/assets/images/navigator/icons/info.png');
width: 18px;
height: 18px;
}
&.icon-navigator-room-locked {
- background: url('../images/navigator/icons/room_locked.png');
+ background: url('@/assets/images/navigator/icons/room_locked.png');
width: 13px;
height: 16px;
}
&.icon-navigator-room-password {
- background: url('../images/navigator/icons/room_password.png');
+ background: url('@/assets/images/navigator/icons/room_password.png');
width: 13px;
height: 16px;
}
&.icon-navigator-room-invisible {
- background: url('../images/navigator/icons/room_invisible.png');
+ background: url('@/assets/images/navigator/icons/room_invisible.png');
width: 13px;
height: 16px;
}
&.icon-navigator-room-group {
- background: url('../images/navigator/icons/room_group.png');
+ background: url('@/assets/images/navigator/icons/room_group.png');
width: 13px;
height: 11px;
}
&.icon-youtube-next {
- background: url('../images/room-widgets/youtube-widget/next.png');
+ background: url('@/assets/images/room-widgets/youtube-widget/next.png');
width: 21px;
height: 16px;
}
&.icon-youtube-prev {
- background: url('../images/room-widgets/youtube-widget/prev.png');
+ background: url('@/assets/images/room-widgets/youtube-widget/prev.png');
width: 21px;
height: 16px;
}
&.icon-hc-banner {
- background: url('../images/catalog/hc_big.png');
+ background: url('@/assets/images/catalog/hc_big.png');
width: 68px;
height: 40px;
}
&.icon-set-tile {
- background-image: url('../images/floorplaneditor/icon-tile-set.png');
+ background-image: url('@/assets/images/floorplaneditor/icon-tile-set.png');
width: 40px;
height: 40px;
}
&.icon-unset-tile {
- background-image: url('../images/floorplaneditor/icon-tile-unset.png');
+ background-image: url('@/assets/images/floorplaneditor/icon-tile-unset.png');
width: 40px;
height: 40px;
}
&.icon-increase-height {
- background-image: url('../images/floorplaneditor/icon-tile-up.png');
+ background-image: url('@/assets/images/floorplaneditor/icon-tile-up.png');
width: 40px;
height: 40px;
}
&.icon-decrease-height {
- background-image: url('../images/floorplaneditor/icon-tile-down.png');
+ background-image: url('@/assets/images/floorplaneditor/icon-tile-down.png');
width: 40px;
height: 40px;
}
&.icon-set-door {
- background-image: url('../images/floorplaneditor/icon-door.png');
+ background-image: url('@/assets/images/floorplaneditor/icon-door.png');
width: 40px;
height: 40px;
}
&.icon-door-direction-0 {
- background-image: url('../images/floorplaneditor/door-direction-0.png');
+ background-image: url('@/assets/images/floorplaneditor/door-direction-0.png');
width: 80px;
height: 45px;
}
&.icon-door-direction-1 {
- background-image: url('../images/floorplaneditor/door-direction-1.png');
+ background-image: url('@/assets/images/floorplaneditor/door-direction-1.png');
width: 80px;
height: 45px;
}
&.icon-door-direction-2 {
- background-image: url('../images/floorplaneditor/door-direction-2.png');
+ background-image: url('@/assets/images/floorplaneditor/door-direction-2.png');
width: 80px;
height: 45px;
}
&.icon-door-direction-3 {
- background-image: url('../images/floorplaneditor/door-direction-3.png');
+ background-image: url('@/assets/images/floorplaneditor/door-direction-3.png');
width: 80px;
height: 45px;
}
&.icon-door-direction-4 {
- background-image: url('../images/floorplaneditor/door-direction-4.png');
+ background-image: url('@/assets/images/floorplaneditor/door-direction-4.png');
width: 80px;
height: 45px;
}
&.icon-door-direction-5 {
- background-image: url('../images/floorplaneditor/door-direction-5.png');
+ background-image: url('@/assets/images/floorplaneditor/door-direction-5.png');
width: 80px;
height: 45px;
}
&.icon-door-direction-6 {
- background-image: url('../images/floorplaneditor/door-direction-6.png');
+ background-image: url('@/assets/images/floorplaneditor/door-direction-6.png');
width: 80px;
height: 45px;
}
&.icon-door-direction-7 {
- background-image: url('../images/floorplaneditor/door-direction-7.png');
+ background-image: url('@/assets/images/floorplaneditor/door-direction-7.png');
width: 80px;
height: 45px;
}
&.icon-tickets {
- background-image: url('../images/icons/tickets.png');
+ background-image: url('@/assets/images/icons/tickets.png');
width: 17px;
height: 17px;
}
+
&.icon-user {
- background-image: url('../images/icons/user.png');
+ background-image: url('@/assets/images/icons/user.png');
width: 18px;
height: 19px;
}
diff --git a/src/assets/styles/index.scss b/src/assets/styles/index.scss
index 7427e6b4..dc1c5dad 100644
--- a/src/assets/styles/index.scss
+++ b/src/assets/styles/index.scss
@@ -1,6 +1,5 @@
@import './fonts';
@import './bootstrap/bootstrap';
-@import '../node_modules/animate.css/animate.min.css';
@import './scrollbars';
@import './slider';
@import './icons';
diff --git a/src/assets/styles/slider.scss b/src/assets/styles/slider.scss
index a9bb5e64..199c30ea 100644
--- a/src/assets/styles/slider.scss
+++ b/src/assets/styles/slider.scss
@@ -40,14 +40,14 @@
&.degree {
&:after {
- content: "\00b0"
+ content: '\00b0'
}
}
&.percent {
&:after {
- content: "\0025"
+ content: '\0025'
}
}
}
diff --git a/src/assets/styles/utils.scss b/src/assets/styles/utils.scss
index f8710058..ee9c6459 100644
--- a/src/assets/styles/utils.scss
+++ b/src/assets/styles/utils.scss
@@ -42,6 +42,10 @@ ul {
}
}
+.cursor-default {
+ cursor: default !important;
+}
+
.cursor-pointer {
cursor: pointer;
}
@@ -62,6 +66,14 @@ ul {
width: unset;
}
+.w-12 {
+ width: 12px;
+}
+
+.h-12 {
+ height: 12px;
+}
+
.no-select {
-webkit-user-select: none;
-khtml-user-select: none;
diff --git a/src/assets/webfonts/fa-brands-400.eot b/src/assets/webfonts/fa-brands-400.eot
deleted file mode 100644
index cba6c6cc..00000000
Binary files a/src/assets/webfonts/fa-brands-400.eot and /dev/null differ
diff --git a/src/assets/webfonts/fa-brands-400.svg b/src/assets/webfonts/fa-brands-400.svg
deleted file mode 100644
index b9881a43..00000000
--- a/src/assets/webfonts/fa-brands-400.svg
+++ /dev/null
@@ -1,3717 +0,0 @@
-
-
-
diff --git a/src/assets/webfonts/fa-brands-400.ttf b/src/assets/webfonts/fa-brands-400.ttf
deleted file mode 100644
index 8d75dedd..00000000
Binary files a/src/assets/webfonts/fa-brands-400.ttf and /dev/null differ
diff --git a/src/assets/webfonts/fa-brands-400.woff b/src/assets/webfonts/fa-brands-400.woff
deleted file mode 100644
index 3375bef0..00000000
Binary files a/src/assets/webfonts/fa-brands-400.woff and /dev/null differ
diff --git a/src/assets/webfonts/fa-brands-400.woff2 b/src/assets/webfonts/fa-brands-400.woff2
deleted file mode 100644
index 402f81c0..00000000
Binary files a/src/assets/webfonts/fa-brands-400.woff2 and /dev/null differ
diff --git a/src/assets/webfonts/fa-regular-400.eot b/src/assets/webfonts/fa-regular-400.eot
deleted file mode 100644
index a4e59893..00000000
Binary files a/src/assets/webfonts/fa-regular-400.eot and /dev/null differ
diff --git a/src/assets/webfonts/fa-regular-400.svg b/src/assets/webfonts/fa-regular-400.svg
deleted file mode 100644
index 463af27c..00000000
--- a/src/assets/webfonts/fa-regular-400.svg
+++ /dev/null
@@ -1,801 +0,0 @@
-
-
-
diff --git a/src/assets/webfonts/fa-regular-400.ttf b/src/assets/webfonts/fa-regular-400.ttf
deleted file mode 100644
index 7157aafb..00000000
Binary files a/src/assets/webfonts/fa-regular-400.ttf and /dev/null differ
diff --git a/src/assets/webfonts/fa-regular-400.woff b/src/assets/webfonts/fa-regular-400.woff
deleted file mode 100644
index ad077c6b..00000000
Binary files a/src/assets/webfonts/fa-regular-400.woff and /dev/null differ
diff --git a/src/assets/webfonts/fa-regular-400.woff2 b/src/assets/webfonts/fa-regular-400.woff2
deleted file mode 100644
index 56328948..00000000
Binary files a/src/assets/webfonts/fa-regular-400.woff2 and /dev/null differ
diff --git a/src/assets/webfonts/fa-solid-900.eot b/src/assets/webfonts/fa-solid-900.eot
deleted file mode 100644
index e9941719..00000000
Binary files a/src/assets/webfonts/fa-solid-900.eot and /dev/null differ
diff --git a/src/assets/webfonts/fa-solid-900.svg b/src/assets/webfonts/fa-solid-900.svg
deleted file mode 100644
index 00296e95..00000000
--- a/src/assets/webfonts/fa-solid-900.svg
+++ /dev/null
@@ -1,5034 +0,0 @@
-
-
-
diff --git a/src/assets/webfonts/fa-solid-900.ttf b/src/assets/webfonts/fa-solid-900.ttf
deleted file mode 100644
index 25abf389..00000000
Binary files a/src/assets/webfonts/fa-solid-900.ttf and /dev/null differ
diff --git a/src/assets/webfonts/fa-solid-900.woff b/src/assets/webfonts/fa-solid-900.woff
deleted file mode 100644
index 23ee6634..00000000
Binary files a/src/assets/webfonts/fa-solid-900.woff and /dev/null differ
diff --git a/src/assets/webfonts/fa-solid-900.woff2 b/src/assets/webfonts/fa-solid-900.woff2
deleted file mode 100644
index 2217164f..00000000
Binary files a/src/assets/webfonts/fa-solid-900.woff2 and /dev/null differ
diff --git a/src/common/InfiniteScroll.tsx b/src/common/InfiniteScroll.tsx
new file mode 100644
index 00000000..f679da0b
--- /dev/null
+++ b/src/common/InfiniteScroll.tsx
@@ -0,0 +1,63 @@
+import { useVirtual } from '@tanstack/react-virtual';
+import { FC, Fragment, ReactElement, useEffect, useRef, useState } from 'react';
+import { Base } from './Base';
+
+interface InfiniteScrollProps
+{
+ rows: T[];
+ overscan?: number;
+ scrollToBottom?: boolean;
+ rowRender: (row: T) => ReactElement;
+}
+
+export const InfiniteScroll: FC = props =>
+{
+ const { rows = [], overscan = 5, scrollToBottom = false, rowRender = null } = props;
+ const [ scrollIndex, setScrollIndex ] = useState(rows.length - 1);
+ const elementRef = useRef(null);
+
+ const { virtualItems = [], totalSize = 0, scrollToIndex = null } = useVirtual({
+ parentRef: elementRef,
+ size: rows.length,
+ overscan
+ });
+
+ const paddingTop = (virtualItems.length > 0) ? (virtualItems?.[0]?.start || 0) : 0
+ const paddingBottom = (virtualItems.length > 0) ? (totalSize - (virtualItems?.[virtualItems.length - 1]?.end || 0)) : 0;
+
+ useEffect(() =>
+ {
+ if(!scrollToBottom) return;
+
+ scrollToIndex(scrollIndex);
+ }, [ scrollToBottom, scrollIndex, scrollToIndex ]);
+
+ return (
+
+ { (paddingTop > 0) &&
+ }
+ { virtualItems.map(item =>
+ {
+ const row = rows[item.index];
+
+ if (!row) return (
+
+ );
+
+ return (
+
+ { rowRender(row) }
+
+ )
+ }) }
+ { (paddingBottom > 0) &&
+ }
+
+ );
+}
diff --git a/src/common/card/NitroCardHeaderView.tsx b/src/common/card/NitroCardHeaderView.tsx
index 72ed3678..98837c76 100644
--- a/src/common/card/NitroCardHeaderView.tsx
+++ b/src/common/card/NitroCardHeaderView.tsx
@@ -1,17 +1,19 @@
-import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
-import { FC, MouseEvent, useCallback, useMemo } from 'react';
+import { FC, MouseEvent, useMemo } from 'react';
+import { FaFlag, FaTimes } from 'react-icons/fa';
import { Base, Column, ColumnProps, Flex } from '..';
interface NitroCardHeaderViewProps extends ColumnProps
{
headerText: string;
+ isGalleryPhoto?: boolean;
noCloseButton?: boolean;
+ onReportPhoto?: (event: MouseEvent) => void;
onCloseClick: (event: MouseEvent) => void;
}
export const NitroCardHeaderView: FC = props =>
{
- const { headerText = null, noCloseButton = false, onCloseClick = null, justifyContent = 'center', alignItems = 'center', classNames = [], children = null, ...rest } = props;
+ const { headerText = null, isGalleryPhoto = false, noCloseButton = false, onReportPhoto = null, onCloseClick = null, justifyContent = 'center', alignItems = 'center', classNames = [], children = null, ...rest } = props;
const getClassNames = useMemo(() =>
{
@@ -22,19 +24,24 @@ export const NitroCardHeaderView: FC = props =>
return newClassNames;
}, [ classNames ]);
- const onMouseDown = useCallback((event: MouseEvent) =>
+ const onMouseDown = (event: MouseEvent) =>
{
event.stopPropagation();
event.nativeEvent.stopImmediatePropagation();
- }, []);
+ }
return (
{ headerText }
-
-
-
+ { isGalleryPhoto &&
+
+
+
+ }
+
+
+
);
diff --git a/src/common/card/NitroCardSubHeaderView.tsx b/src/common/card/NitroCardSubHeaderView.tsx
index f25e6e51..a37d0bd4 100644
--- a/src/common/card/NitroCardSubHeaderView.tsx
+++ b/src/common/card/NitroCardSubHeaderView.tsx
@@ -1,18 +1,23 @@
import { FC, useMemo } from 'react';
import { Flex, FlexProps } from '..';
-export const NitroCardSubHeaderView: FC = props =>
+interface NitroCardSubHeaderProps extends FlexProps {
+ variant?: string;
+}
+export const NitroCardSubHeaderView: FC = props =>
{
- const { justifyContent = 'center', classNames = [], ...rest } = props;
+ const { justifyContent = 'center', classNames = [], variant = 'muted', ...rest } = props;
const getClassNames = useMemo(() =>
{
- const newClassNames: string[] = [ 'container-fluid', 'bg-muted', 'p-1' ];
+ const newClassNames: string[] = [ 'container-fluid', 'p-1' ];
if(classNames.length) newClassNames.push(...classNames);
+ newClassNames.push('bg-' + variant);
+
return newClassNames;
- }, [ classNames ]);
+ }, [ classNames, variant ]);
return ;
}
diff --git a/src/common/card/NitroCardView.scss b/src/common/card/NitroCardView.scss
index e942d516..a552182e 100644
--- a/src/common/card/NitroCardView.scss
+++ b/src/common/card/NitroCardView.scss
@@ -24,6 +24,29 @@ $nitro-card-tabs-height: 33px;
}
.nitro-card-header-close {
+ cursor: pointer;
+ padding: 2px 2px;
+ line-height: 1;
+ border-radius: $border-radius;
+ box-shadow: 0 0 0 1.6px $white;
+ border: 2px solid #921911;
+ background: repeating-linear-gradient(
+ rgba(245, 80, 65, 1),
+ rgba(245, 80, 65, 1) 50%,
+ rgba(194, 48, 39, 1) 50%,
+ rgba(194, 48, 39, 1) 100%
+ );
+
+ &:hover {
+ filter: brightness(1.2);
+ }
+
+ &:active {
+ filter: brightness(0.8);
+ }
+ }
+
+ .nitro-card-header-report-camera {
cursor: pointer;
padding: 1px 3px;
line-height: 1;
@@ -36,11 +59,11 @@ $nitro-card-tabs-height: 33px;
rgba(194, 48, 39, 1) 50%,
rgba(194, 48, 39, 1) 100%
);
-
+
&:hover {
filter: brightness(1.2);
}
-
+
&:active {
filter: brightness(0.8);
}
@@ -68,7 +91,7 @@ $nitro-card-tabs-height: 33px;
}
&:before {
- content: "";
+ content: '';
position: absolute;
width: 93%;
height: 3px;
@@ -101,10 +124,10 @@ $nitro-card-tabs-height: 33px;
width: 100%;
margin: 0;
padding-top:2px;
-
+
&:before {
position: absolute;
- content: " ";
+ content: ' ';
top: 0;
left: 0;
width: 100%;
@@ -137,7 +160,32 @@ $nitro-card-tabs-height: 33px;
&:hover {
filter: brightness(1.2);
}
-
+
+ &:active {
+ filter: brightness(0.8);
+ }
+ }
+
+ .nitro-card-header-report-camera {
+ cursor: pointer;
+ padding: 0px 2px;
+ margin-right: 4px;
+ line-height: 1;
+ @include font-size($h7-font-size);
+ border-radius: $border-radius;
+ box-shadow: 0 0 0 1.6px $white;
+ border: 2px solid #921911;
+ background: repeating-linear-gradient(
+ rgba(245, 80, 65, 1),
+ rgba(245, 80, 65, 1) 50%,
+ rgba(194, 48, 39, 1) 50%,
+ rgba(194, 48, 39, 1) 100%
+ );
+
+ &:hover {
+ filter: brightness(1.2);
+ }
+
&:active {
filter: brightness(0.8);
}
diff --git a/src/common/card/NitroCardView.tsx b/src/common/card/NitroCardView.tsx
index 236f615f..46c4126b 100644
--- a/src/common/card/NitroCardView.tsx
+++ b/src/common/card/NitroCardView.tsx
@@ -1,6 +1,5 @@
-import { FC, useEffect, useMemo, useRef } from 'react';
+import { FC, useMemo, useRef } from 'react';
import { Column, ColumnProps } from '..';
-import { GetLocalStorage, SetLocalStorage, WindowSaveOptions } from '../../api';
import { DraggableWindow, DraggableWindowPosition, DraggableWindowProps } from '../draggable-window';
import { NitroCardContextProvider } from './NitroCardContext';
@@ -25,7 +24,7 @@ export const NitroCardView: FC = props =>
return newClassNames;
}, [ theme, classNames ]);
- useEffect(() =>
+ /* useEffect(() =>
{
if(!uniqueKey || !elementRef || !elementRef.current) return;
@@ -34,8 +33,8 @@ export const NitroCardView: FC = props =>
if(localStorage && localStorage.size)
{
- element.style.width = `${ localStorage.size.width }px`;
- element.style.height = `${ localStorage.size.height }px`;
+ //element.style.width = `${ localStorage.size.width }px`;
+ //element.style.height = `${ localStorage.size.height }px`;
}
const observer = new ResizeObserver(event =>
@@ -53,7 +52,7 @@ export const NitroCardView: FC = props =>
{
observer.disconnect();
}
- }, [ uniqueKey ]);
+ }, [ uniqueKey ]); */
return (
diff --git a/src/common/card/accordion/NitroCardAccordionSetView.tsx b/src/common/card/accordion/NitroCardAccordionSetView.tsx
index 86eda4cb..d9e0656e 100644
--- a/src/common/card/accordion/NitroCardAccordionSetView.tsx
+++ b/src/common/card/accordion/NitroCardAccordionSetView.tsx
@@ -1,5 +1,5 @@
-import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
import { FC, useCallback, useEffect, useMemo, useState } from 'react';
+import { FaCaretDown, FaCaretUp } from 'react-icons/fa';
import { Column, ColumnProps, Flex, Text } from '../..';
import { useNitroCardAccordionContext } from './NitroCardAccordionContext';
@@ -72,7 +72,8 @@ export const NitroCardAccordionSetView: FC = pro
{ headerText }
-
+ { isOpen && }
+ { !isOpen && }
{ isOpen &&
diff --git a/src/common/classNames.ts b/src/common/classNames.ts
new file mode 100644
index 00000000..2127d85e
--- /dev/null
+++ b/src/common/classNames.ts
@@ -0,0 +1 @@
+export const classNames = (...classes: string[]) => classes.filter(Boolean).join(' ');
diff --git a/src/common/index.scss b/src/common/index.scss
index b9e5297c..bc4a01b0 100644
--- a/src/common/index.scss
+++ b/src/common/index.scss
@@ -31,7 +31,7 @@
&.has-highlight {
&:after {
- content: "";
+ content: '';
z-index: 2;
position: absolute;
top: 0;
@@ -47,7 +47,7 @@
.nitro-room-thumbnail-camera {
width: 132px;
height: 192px;
- background-image: url("../assets/images/room-widgets/thumbnail-widget/thumbnail-camera-spritesheet.png");
+ background-image: url('@/assets/images/room-widgets/thumbnail-widget/thumbnail-camera-spritesheet.png');
.camera-frame {
position: absolute;
@@ -66,7 +66,7 @@
pointer-events: all;
background-position: 0px 0px;
- background-image: url("../assets/images/room-widgets/trophy-widget/trophy-spritesheet.png");
+ background-image: url('@/assets/images/room-widgets/trophy-widget/trophy-spritesheet.png');
&.trophy-2 {
background-position: 0px 173px;
@@ -102,7 +102,7 @@
.nitro-gift-card {
width: 306px;
height: 159px;
- background: url("../assets/images/gift/gift_tag.png") center no-repeat;
+ background: url('@/assets/images/gift/gift_tag.png') center no-repeat;
.gift-face {
width: 65px;
@@ -110,7 +110,7 @@
.gift-incognito {
width: 37px;
height: 48px;
- background: url("../assets/images/gift/incognito.png") center no-repeat;
+ background: url('@/assets/images/gift/incognito.png') center no-repeat;
}
.gift-avatar {
@@ -198,7 +198,7 @@
position: relative;
width: 110px;
height: 110px;
- background: url("../assets/images/navigator/thumbnail_placeholder.png") no-repeat center;
+ background: url('@/assets/images/navigator/thumbnail_placeholder.png') no-repeat center;
background-color: rgba($black, 0.125);
}
@@ -268,7 +268,7 @@
&:before {
position: absolute;
- content: " ";
+ content: ' ';
width: 0;
height: 0;
border-left: 10px solid $white;
@@ -291,7 +291,7 @@
.nitro-rarity-level {
width: 36px;
height: 28px;
- background: url("../assets/images/infostand/rarity-level.png");
+ background: url('@/assets/images/infostand/rarity-level.png');
div {
line-height: 28px;
@@ -304,7 +304,7 @@
.nitro-counter-time {
width: 36px;
height: 28px;
- background: url("../assets/images/infostand/countown-timer.png");
+ background: url('@/assets/images/infostand/countown-timer.png');
div {
line-height: 28px;
@@ -355,7 +355,7 @@
&::after {
position: absolute;
- content: "";
+ content: '';
top: 0;
bottom: 0;
left: 0;
@@ -378,26 +378,26 @@
&:before {
position: absolute;
- content: "";
+ content: '';
width: 100%;
height: 100%;
- background: url("../assets/images/unique/grid-bg.png") center no-repeat;
+ background: url('@/assets/images/unique/grid-bg.png') center no-repeat;
z-index: 1;
}
&:after {
position: absolute;
- content: "";
+ content: '';
width: 100%;
height: 100%;
- background: url("../assets/images/unique/grid-bg-glass.png") center no-repeat;
+ background: url('@/assets/images/unique/grid-bg-glass.png') center no-repeat;
bottom: 0;
z-index: 4;
}
&.sold-out:after {
- background: url("../assets/images/unique/grid-bg-sold-out.png") center no-repeat,
- url("../assets/images/unique/grid-bg-glass.png") center no-repeat;
+ background: url('@/assets/images/unique/grid-bg-sold-out.png') center no-repeat,
+ url('@/assets/images/unique/grid-bg-glass.png') center no-repeat;
}
.unique-item-counter {
@@ -408,7 +408,7 @@
bottom: 1px;
width: 100%;
height: 9px;
- background: url("../assets/images/unique/grid-count-bg.png") center no-repeat;
+ background: url('@/assets/images/unique/grid-count-bg.png') center no-repeat;
z-index: 3;
}
}
@@ -416,7 +416,7 @@
.unique-sold-out-blocker {
width: 364px;
height: 30px;
- background: url("../assets/images/unique/catalog-info-sold-out.png");
+ background: url('@/assets/images/unique/catalog-info-sold-out.png');
div {
float: right;
@@ -437,7 +437,7 @@
right: 16px;
width: 34px;
height: 37px;
- background: url("../assets/images/unique/inventory-info-amount-bg.png");
+ background: url('@/assets/images/unique/inventory-info-amount-bg.png');
div {
display: flex;
@@ -450,7 +450,7 @@
.unique-complete-plate {
width: 170px;
height: 29px;
- background: url("../assets/images/unique/catalog-info-amount-bg.png") no-repeat center;
+ background: url('@/assets/images/unique/catalog-info-amount-bg.png') no-repeat center;
z-index: 1;
padding-top: 3px;
@@ -471,7 +471,7 @@
outline: 0;
height: 5px;
margin-right: 1px;
- background-image: url("../assets/images/unique/numbers.png");
+ background-image: url('@/assets/images/unique/numbers.png');
background-repeat: no-repeat;
&:last-child {
@@ -558,4 +558,4 @@
}
}
-@import "./card/NitroCardView";
+@import './card/NitroCardView';
diff --git a/src/common/index.ts b/src/common/index.ts
index cdcb7512..3722c52f 100644
--- a/src/common/index.ts
+++ b/src/common/index.ts
@@ -5,6 +5,7 @@ export * from './ButtonGroup';
export * from './card';
export * from './card/accordion';
export * from './card/tabs';
+export * from './classNames';
export * from './Column';
export * from './draggable-window';
export * from './Flex';
@@ -12,7 +13,9 @@ export * from './FormGroup';
export * from './Grid';
export * from './GridContext';
export * from './HorizontalRule';
+export * from './InfiniteScroll';
export * from './layout';
+export * from './layout/limited-edition';
export * from './Text';
export * from './transitions';
export * from './types';
diff --git a/src/common/layout/LayoutBadgeImageView.tsx b/src/common/layout/LayoutBadgeImageView.tsx
index 3445abc4..a469429b 100644
--- a/src/common/layout/LayoutBadgeImageView.tsx
+++ b/src/common/layout/LayoutBadgeImageView.tsx
@@ -37,7 +37,7 @@ export const LayoutBadgeImageView: FC = props =>
if(imageElement)
{
- newStyle.backgroundImage = `url('${ imageElement.src }')`;
+ newStyle.backgroundImage = `url(${ (isGroup) ? imageElement.src : GetConfiguration('badge.asset.url').replace('%badgename%', badgeCode.toString())})`;
newStyle.width = imageElement.width;
newStyle.height = imageElement.height;
@@ -46,7 +46,7 @@ export const LayoutBadgeImageView: FC = props =>
newStyle.transform = `scale(${ scale })`;
if(!(scale % 1)) newStyle.imageRendering = 'pixelated';
-
+
newStyle.width = (imageElement.width * scale);
newStyle.height = (imageElement.height * scale);
}
@@ -72,7 +72,7 @@ export const LayoutBadgeImageView: FC = props =>
element.onload = () => setImageElement(element);
didSetBadge = true;
-
+
GetSessionDataManager().events.removeEventListener(BadgeImageReadyEvent.IMAGE_READY, onBadgeImageReadyEvent);
}
diff --git a/src/common/layout/LayoutFurniImageView.tsx b/src/common/layout/LayoutFurniImageView.tsx
index ed14d0af..ef8696c5 100644
--- a/src/common/layout/LayoutFurniImageView.tsx
+++ b/src/common/layout/LayoutFurniImageView.tsx
@@ -1,5 +1,5 @@
import { IGetImageListener, ImageResult, TextureUtils, Vector3d } from '@nitrots/nitro-renderer';
-import { CSSProperties, FC, useCallback, useEffect, useMemo, useState } from 'react';
+import { CSSProperties, FC, useEffect, useMemo, useState } from 'react';
import { BaseProps } from '..';
import { GetRoomEngine, ProductTypeEnum } from '../../api';
import { Base } from '../Base';
@@ -41,7 +41,7 @@ export const LayoutFurniImageView: FC = props =>
return newStyle;
}, [ imageElement, scale, style ]);
- const buildImage = useCallback(() =>
+ useEffect(() =>
{
let imageResult: ImageResult = null;
@@ -71,16 +71,11 @@ export const LayoutFurniImageView: FC = props =>
if(imageResult)
{
const image = imageResult.getImage();
-
+
image.onload = () => setImageElement(image);
}
}, [ productType, productClassId, direction, extraData ]);
- useEffect(() =>
- {
- buildImage();
- }, [ buildImage ]);
-
if(!imageElement) return null;
return ;
diff --git a/src/common/layout/LayoutMiniCameraView.tsx b/src/common/layout/LayoutMiniCameraView.tsx
index 934e1cc8..31b361c7 100644
--- a/src/common/layout/LayoutMiniCameraView.tsx
+++ b/src/common/layout/LayoutMiniCameraView.tsx
@@ -1,5 +1,5 @@
import { NitroRectangle, NitroRenderTexture } from '@nitrots/nitro-renderer';
-import { FC, useCallback, useRef } from 'react';
+import { FC, useRef } from 'react';
import { GetRoomEngine, LocalizeText, PlaySound, SoundNames } from '../../api';
import { DraggableWindow } from '../draggable-window';
@@ -15,20 +15,20 @@ export const LayoutMiniCameraView: FC = props =>
const { roomId = -1, textureReceiver = null, onClose = null } = props;
const elementRef = useRef();
- const getCameraBounds = useCallback(() =>
+ const getCameraBounds = () =>
{
if(!elementRef || !elementRef.current) return null;
const frameBounds = elementRef.current.getBoundingClientRect();
return new NitroRectangle(Math.floor(frameBounds.x), Math.floor(frameBounds.y), Math.floor(frameBounds.width), Math.floor(frameBounds.height));
- }, []);
+ }
- const takePicture = useCallback(() =>
+ const takePicture = () =>
{
PlaySound(SoundNames.CAMERA_SHUTTER);
textureReceiver(GetRoomEngine().createTextureFromRoom(roomId, 1, getCameraBounds()));
- }, [ roomId, getCameraBounds, textureReceiver ]);
+ }
return (
diff --git a/src/common/layout/LayoutPetImageView.tsx b/src/common/layout/LayoutPetImageView.tsx
index e504fce2..27d43ded 100644
--- a/src/common/layout/LayoutPetImageView.tsx
+++ b/src/common/layout/LayoutPetImageView.tsx
@@ -1,4 +1,4 @@
-import { PetCustomPart, PetFigureData, TextureUtils, Vector3d } from '@nitrots/nitro-renderer';
+import { IPetCustomPart, PetFigureData, TextureUtils, Vector3d } from '@nitrots/nitro-renderer';
import { CSSProperties, FC, useEffect, useMemo, useRef, useState } from 'react';
import { GetRoomEngine } from '../../api';
import { Base, BaseProps } from '../Base';
@@ -9,7 +9,7 @@ interface LayoutPetImageViewProps extends BaseProps
typeId?: number;
paletteId?: number;
petColor?: number;
- customParts?: PetCustomPart[];
+ customParts?: IPetCustomPart[];
posture?: string;
headOnly?: boolean;
direction?: number;
@@ -52,7 +52,7 @@ export const LayoutPetImageView: FC = props =>
let petTypeId = typeId;
let petPaletteId = paletteId;
let petColor1 = petColor;
- let petCustomParts = customParts;
+ let petCustomParts: IPetCustomPart[] = customParts;
let petHeadOnly = headOnly;
if(figure && figure.length)
diff --git a/src/common/layout/LayoutPrizeProductImageView.tsx b/src/common/layout/LayoutPrizeProductImageView.tsx
new file mode 100644
index 00000000..206c7a80
--- /dev/null
+++ b/src/common/layout/LayoutPrizeProductImageView.tsx
@@ -0,0 +1,30 @@
+import { FC } from 'react';
+import { ProductTypeEnum } from '../../api';
+import { LayoutBadgeImageView } from './LayoutBadgeImageView';
+import { LayoutCurrencyIcon } from './LayoutCurrencyIcon';
+import { LayoutFurniImageView } from './LayoutFurniImageView';
+
+interface LayoutPrizeProductImageViewProps
+{
+ productType: string;
+ classId: number;
+ extraParam?: string;
+}
+
+export const LayoutPrizeProductImageView: FC = props =>
+{
+ const { productType = ProductTypeEnum.FLOOR, classId = -1, extraParam = undefined } = props;
+
+ switch(productType)
+ {
+ case ProductTypeEnum.WALL:
+ case ProductTypeEnum.FLOOR:
+ return
+ case ProductTypeEnum.BADGE:
+ return
+ case ProductTypeEnum.HABBO_CLUB:
+ return
+ }
+
+ return null;
+}
diff --git a/src/common/layout/LayoutRoomPreviewerView.tsx b/src/common/layout/LayoutRoomPreviewerView.tsx
index a45ca522..69fbea84 100644
--- a/src/common/layout/LayoutRoomPreviewerView.tsx
+++ b/src/common/layout/LayoutRoomPreviewerView.tsx
@@ -1,6 +1,5 @@
-import { ColorConverter, IRoomRenderingCanvas, RoomPreviewer, TextureUtils } from '@nitrots/nitro-renderer';
-import { FC, MouseEvent, ReactNode, useCallback, useEffect, useRef, useState } from 'react';
-import { GetNitroInstance } from '../../api';
+import { ColorConverter, GetTicker, IRoomRenderingCanvas, RoomPreviewer, TextureUtils } from '@nitrots/nitro-renderer';
+import { FC, MouseEvent, ReactNode, useEffect, useRef, useState } from 'react';
export interface LayoutRoomPreviewerViewProps
{
@@ -19,60 +18,53 @@ export const LayoutRoomPreviewerView: FC = props =
{
if(!roomPreviewer) return;
- if(event.shiftKey)
- {
- roomPreviewer.changeRoomObjectDirection();
- }
- else
- {
- roomPreviewer.changeRoomObjectState();
- }
+ if(event.shiftKey) roomPreviewer.changeRoomObjectDirection();
+ else roomPreviewer.changeRoomObjectState();
}
- const update = useCallback((time: number) =>
- {
- if(!roomPreviewer || !renderingCanvas || !elementRef.current) return;
-
- roomPreviewer.updatePreviewRoomView();
-
- if(!renderingCanvas.canvasUpdated) return;
-
- elementRef.current.style.backgroundImage = `url(${ TextureUtils.generateImageUrl(renderingCanvas.master) })`;
- }, [ roomPreviewer, renderingCanvas, elementRef ]);
-
- const setupPreviewer = useCallback(() =>
- {
- if(!elementRef.current || !roomPreviewer) return;
-
- const computed = document.defaultView.getComputedStyle(elementRef.current, null);
-
- let backgroundColor = computed.backgroundColor;
-
- backgroundColor = ColorConverter.rgbStringToHex(backgroundColor);
- backgroundColor = backgroundColor.replace('#', '0x');
-
- roomPreviewer.backgroundColor = parseInt(backgroundColor, 16);
-
- const width = elementRef.current.parentElement.clientWidth;
-
- roomPreviewer.getRoomCanvas(width, height);
-
- const canvas = roomPreviewer.getRenderingCanvas();
-
- setRenderingCanvas(canvas);
-
- canvas.canvasUpdated = true;
-
- update(-1);
- }, [ elementRef, height, roomPreviewer, update ]);
-
useEffect(() =>
{
if(!roomPreviewer) return;
- if(!renderingCanvas) setupPreviewer();
+ const update = (time: number) =>
+ {
+ if(!roomPreviewer || !renderingCanvas || !elementRef.current) return;
+
+ roomPreviewer.updatePreviewRoomView();
- GetNitroInstance().ticker.add(update);
+ if(!renderingCanvas.canvasUpdated) return;
+
+ elementRef.current.style.backgroundImage = `url(${ TextureUtils.generateImageUrl(renderingCanvas.master) })`;
+ }
+
+ if(!renderingCanvas)
+ {
+ if(elementRef.current && roomPreviewer)
+ {
+ const computed = document.defaultView.getComputedStyle(elementRef.current, null);
+
+ let backgroundColor = computed.backgroundColor;
+
+ backgroundColor = ColorConverter.rgbStringToHex(backgroundColor);
+ backgroundColor = backgroundColor.replace('#', '0x');
+
+ roomPreviewer.backgroundColor = parseInt(backgroundColor, 16);
+
+ const width = elementRef.current.parentElement.clientWidth;
+
+ roomPreviewer.getRoomCanvas(width, height);
+
+ const canvas = roomPreviewer.getRenderingCanvas();
+
+ setRenderingCanvas(canvas);
+
+ canvas.canvasUpdated = true;
+
+ update(-1);
+ }
+ }
+
+ GetTicker().add(update);
const resizeObserver = new ResizeObserver(() =>
{
@@ -91,10 +83,10 @@ export const LayoutRoomPreviewerView: FC = props =
{
resizeObserver.disconnect();
- GetNitroInstance().ticker.remove(update);
+ GetTicker().remove(update);
}
- }, [ renderingCanvas, roomPreviewer, elementRef, height, setupPreviewer, update ]);
+ }, [ renderingCanvas, roomPreviewer, elementRef, height ]);
return (
diff --git a/src/common/types/OverflowType.ts b/src/common/types/OverflowType.ts
index 7c9e3b15..9231ff9f 100644
--- a/src/common/types/OverflowType.ts
+++ b/src/common/types/OverflowType.ts
@@ -1 +1 @@
-export type OverflowType = 'auto' | 'hidden' | 'visible' | 'scroll' | 'unset';
+export type OverflowType = 'auto' | 'hidden' | 'visible' | 'scroll' | 'y-scroll' | 'unset';
diff --git a/src/common/utils/FriendlyTimeView.tsx b/src/common/utils/FriendlyTimeView.tsx
index d98d45e8..95af3a3f 100644
--- a/src/common/utils/FriendlyTimeView.tsx
+++ b/src/common/utils/FriendlyTimeView.tsx
@@ -1,5 +1,5 @@
import { FriendlyTime } from '@nitrots/nitro-renderer';
-import { FC, useCallback, useEffect, useMemo, useState } from 'react';
+import { FC, useEffect, useMemo, useState } from 'react';
import { Base, BaseProps } from '..';
interface FriendlyTimeViewProps extends BaseProps
@@ -15,15 +15,6 @@ export const FriendlyTimeView: FC = props =>
const getStartSeconds = useMemo(() => (Math.round(new Date().getSeconds()) - seconds), [ seconds ]);
- const getFriendlyTime = useCallback(() =>
- {
- const value = (Math.round(new Date().getSeconds()) - getStartSeconds);
-
- if(isShort) return FriendlyTime.format(value);
-
- return FriendlyTime.format(value);
- }, [ getStartSeconds, isShort ]);
-
useEffect(() =>
{
const interval = setInterval(() => setUpdateId(prevValue => (prevValue + 1)), 10000);
@@ -31,5 +22,7 @@ export const FriendlyTimeView: FC = props =>
return () => clearInterval(interval);
}, []);
- return { getFriendlyTime() };
+ const value = (Math.round(new Date().getSeconds()) - getStartSeconds);
+
+ return { isShort ? FriendlyTime.shortFormat(value) : FriendlyTime.format(value) };
}
diff --git a/src/components/achievements/AchievementsView.scss b/src/components/achievements/AchievementsView.scss
index f4d9606a..3fa61ac0 100644
--- a/src/components/achievements/AchievementsView.scss
+++ b/src/components/achievements/AchievementsView.scss
@@ -4,7 +4,7 @@
}
.nitro-achievements-back-arrow {
- background: url('../../assets/images/achievements/back-arrow.png') no-repeat center;
+ background: url('@/assets/images/achievements/back-arrow.png') no-repeat center;
width: 33px;
height: 34px;
}
diff --git a/src/components/achievements/AchievementsView.tsx b/src/components/achievements/AchievementsView.tsx
index b4979006..6c7940a7 100644
--- a/src/components/achievements/AchievementsView.tsx
+++ b/src/components/achievements/AchievementsView.tsx
@@ -1,5 +1,5 @@
import { ILinkEventTracker } from '@nitrots/nitro-renderer';
-import { FC, useEffect, useMemo, useState } from 'react';
+import { FC, useEffect, useState } from 'react';
import { AchievementUtilities, AddEventLinkTracker, LocalizeText, RemoveLinkEventTracker } from '../../api';
import { Base, Column, LayoutImage, LayoutProgressBar, NitroCardContentView, NitroCardHeaderView, NitroCardSubHeaderView, NitroCardView, Text } from '../../common';
import { useAchievements } from '../../hooks';
@@ -9,14 +9,7 @@ import { AchievementsCategoryListView } from './views/category-list/Achievements
export const AchievementsView: FC<{}> = props =>
{
const [ isVisible, setIsVisible ] = useState(false);
- const { achievementCategories = [], selectedCategoryCode = null, setSelectedCategoryCode = null, selectedAchievementId = -1, setSelectedAchievementId = null, achievementScore = 0, getProgress = 0, getMaxProgress = 0, setAchievementSeen = null } = useAchievements();
-
- const selectedCategory = useMemo(() =>
- {
- if(selectedCategoryCode === null) return null;
-
- return achievementCategories.find(category => (category.code === selectedCategoryCode));
- }, [ achievementCategories, selectedCategoryCode ]);
+ const { achievementCategories = [], selectedCategoryCode = null, setSelectedCategoryCode = null, achievementScore = 0, getProgress = 0, getMaxProgress = 0, selectedCategory = null } = useAchievements();
useEffect(() =>
{
@@ -72,7 +65,7 @@ export const AchievementsView: FC<{}> = props =>
> }
{ selectedCategory &&
- }
+ }
);
diff --git a/src/components/achievements/views/AchievementCategoryView.tsx b/src/components/achievements/views/AchievementCategoryView.tsx
index d5834c7c..8774d208 100644
--- a/src/components/achievements/views/AchievementCategoryView.tsx
+++ b/src/components/achievements/views/AchievementCategoryView.tsx
@@ -1,48 +1,35 @@
-import { Dispatch, FC, SetStateAction, useEffect, useMemo } from 'react';
+import { FC, useEffect } from 'react';
import { AchievementCategory } from '../../../api';
import { Column } from '../../../common';
-import { AchievementListView } from './achievement-list/AchievementListView';
+import { useAchievements } from '../../../hooks';
+import { AchievementListView } from './achievement-list';
import { AchievementDetailsView } from './AchievementDetailsView';
interface AchievementCategoryViewProps
{
category: AchievementCategory;
- selectedAchievementId: number;
- setSelectedAchievementId: Dispatch>;
- setAchievementSeen: (code: string, achievementId: number) => void;
}
export const AchievementCategoryView: FC = props =>
{
- const { category = null, selectedAchievementId = -1, setSelectedAchievementId = null, setAchievementSeen = null } = props;
-
- const selectedAchievement = useMemo(() =>
- {
- if(selectedAchievementId === -1) return null;
-
- return category.achievements.find(achievement => (achievement.achievementId === selectedAchievementId));
- }, [ category, selectedAchievementId ]);
+ const { category = null } = props;
+ const { selectedAchievement = null, setSelectedAchievementId = null } = useAchievements();
useEffect(() =>
{
+ if(!category) return;
+
if(!selectedAchievement)
{
- if(category.achievements.length) setSelectedAchievementId(category.achievements[0].achievementId);
+ setSelectedAchievementId(category?.achievements?.[0]?.achievementId);
}
- }, [ selectedAchievement, category, setSelectedAchievementId ]);
-
- useEffect(() =>
- {
- if(!selectedAchievement) return;
-
- setAchievementSeen(category.code, selectedAchievement.achievementId);
- }, [ selectedAchievement, category, setAchievementSeen ]);
+ }, [ category, selectedAchievement, setSelectedAchievementId ]);
if(!category) return null;
return (
-
+
{ !!selectedAchievement &&
}
diff --git a/src/components/achievements/views/AchievementDetailsView.tsx b/src/components/achievements/views/AchievementDetailsView.tsx
index 6e978250..b04fa183 100644
--- a/src/components/achievements/views/AchievementDetailsView.tsx
+++ b/src/components/achievements/views/AchievementDetailsView.tsx
@@ -1,5 +1,5 @@
import { AchievementData } from '@nitrots/nitro-renderer';
-import { FC, PropsWithChildren } from 'react';
+import { FC } from 'react';
import { AchievementUtilities, LocalizeBadgeDescription, LocalizeBadgeName, LocalizeText } from '../../../api';
import { Column, Flex, LayoutCurrencyIcon, LayoutProgressBar, Text } from '../../../common';
import { AchievementBadgeView } from './AchievementBadgeView';
@@ -9,14 +9,14 @@ interface AchievementDetailsViewProps
achievement: AchievementData;
}
-export const AchievementDetailsView: FC> = props =>
+export const AchievementDetailsView: FC = props =>
{
- const { achievement = null, children = null, ...rest } = props;
+ const { achievement = null } = props;
if(!achievement) return null;
return (
-
+
@@ -48,7 +48,6 @@ export const AchievementDetailsView: FC }
}
- { children }
)
}
diff --git a/src/components/achievements/views/achievement-list/AchievementListItemView.tsx b/src/components/achievements/views/achievement-list/AchievementListItemView.tsx
index bf686088..9da632bd 100644
--- a/src/components/achievements/views/achievement-list/AchievementListItemView.tsx
+++ b/src/components/achievements/views/achievement-list/AchievementListItemView.tsx
@@ -1,25 +1,24 @@
import { AchievementData } from '@nitrots/nitro-renderer';
-import { Dispatch, FC, PropsWithChildren, SetStateAction } from 'react';
+import { FC } from 'react';
import { LayoutGridItem } from '../../../../common';
+import { useAchievements } from '../../../../hooks';
import { AchievementBadgeView } from '../AchievementBadgeView';
interface AchievementListItemViewProps
{
achievement: AchievementData;
- selectedAchievementId: number;
- setSelectedAchievementId: Dispatch>;
}
-export const AchievementListItemView: FC> = props =>
+export const AchievementListItemView: FC = props =>
{
- const { achievement = null, selectedAchievementId = -1, setSelectedAchievementId = null, children = null, ...rest } = props;
+ const { achievement = null } = props;
+ const { selectedAchievement = null, setSelectedAchievementId = null } = useAchievements();
if(!achievement) return null;
return (
- 0) } onClick={ event => setSelectedAchievementId(achievement.achievementId) } { ...rest }>
+ 0) } onClick={ event => setSelectedAchievementId(achievement.achievementId) }>
- { children }
);
}
diff --git a/src/components/achievements/views/achievement-list/AchievementListView.tsx b/src/components/achievements/views/achievement-list/AchievementListView.tsx
index 341af280..f0095817 100644
--- a/src/components/achievements/views/achievement-list/AchievementListView.tsx
+++ b/src/components/achievements/views/achievement-list/AchievementListView.tsx
@@ -1,23 +1,20 @@
import { AchievementData } from '@nitrots/nitro-renderer';
-import { Dispatch, FC, PropsWithChildren, SetStateAction } from 'react';
+import { FC } from 'react';
import { AutoGrid } from '../../../../common';
import { AchievementListItemView } from './AchievementListItemView';
interface AchievementListViewProps
{
achievements: AchievementData[];
- selectedAchievementId: number;
- setSelectedAchievementId: Dispatch>;
}
-export const AchievementListView: FC> = props =>
+export const AchievementListView: FC = props =>
{
- const { achievements = null, selectedAchievementId = -1, setSelectedAchievementId = null, children = null, ...rest } = props;
+ const { achievements = null } = props;
return (
-
- { achievements && (achievements.length > 0) && achievements.map((achievement, index) => ) }
- { children }
+
+ { achievements && (achievements.length > 0) && achievements.map((achievement, index) => ) }
);
}
diff --git a/src/components/achievements/views/achievement-list/index.ts b/src/components/achievements/views/achievement-list/index.ts
new file mode 100644
index 00000000..87ccb432
--- /dev/null
+++ b/src/components/achievements/views/achievement-list/index.ts
@@ -0,0 +1,2 @@
+export * from './AchievementListItemView';
+export * from './AchievementListView';
diff --git a/src/components/achievements/views/category-list/AchievementsCategoryListItemView.tsx b/src/components/achievements/views/category-list/AchievementsCategoryListItemView.tsx
index 2af18b96..91b96c6e 100644
--- a/src/components/achievements/views/category-list/AchievementsCategoryListItemView.tsx
+++ b/src/components/achievements/views/category-list/AchievementsCategoryListItemView.tsx
@@ -1,4 +1,4 @@
-import { Dispatch, FC, PropsWithChildren, SetStateAction } from 'react';
+import { Dispatch, FC, SetStateAction } from 'react';
import { AchievementUtilities, IAchievementCategory, LocalizeText } from '../../../../api';
import { LayoutBackgroundImage, LayoutGridItem, Text } from '../../../../common';
@@ -9,9 +9,9 @@ interface AchievementCategoryListItemViewProps
setSelectedCategoryCode: Dispatch>;
}
-export const AchievementsCategoryListItemView: FC> = props =>
+export const AchievementsCategoryListItemView: FC = props =>
{
- const { category = null, selectedCategoryCode = null, setSelectedCategoryCode = null, children = null, ...rest } = props;
+ const { category = null, selectedCategoryCode = null, setSelectedCategoryCode = null } = props;
if(!category) return null;
@@ -21,12 +21,11 @@ export const AchievementsCategoryListItemView: FC setSelectedCategoryCode(category.code) } { ...rest }>
+ setSelectedCategoryCode(category.code) }>
{ LocalizeText(`quests.${ category.code }.name`) }
{ progress } / { maxProgress }
- { children }
);
}
diff --git a/src/components/achievements/views/category-list/AchievementsCategoryListView.tsx b/src/components/achievements/views/category-list/AchievementsCategoryListView.tsx
index 231cd4f4..ca362968 100644
--- a/src/components/achievements/views/category-list/AchievementsCategoryListView.tsx
+++ b/src/components/achievements/views/category-list/AchievementsCategoryListView.tsx
@@ -1,4 +1,4 @@
-import { Dispatch, FC, PropsWithChildren, SetStateAction } from 'react';
+import { Dispatch, FC, SetStateAction } from 'react';
import { IAchievementCategory } from '../../../../api';
import { AutoGrid } from '../../../../common';
import { AchievementsCategoryListItemView } from './AchievementsCategoryListItemView';
@@ -10,14 +10,13 @@ interface AchievementsCategoryListViewProps
setSelectedCategoryCode: Dispatch>;
}
-export const AchievementsCategoryListView: FC> = props =>
+export const AchievementsCategoryListView: FC = props =>
{
- const { categories = null, selectedCategoryCode = null, setSelectedCategoryCode = null, children = null, ...rest } = props;
+ const { categories = null, selectedCategoryCode = null, setSelectedCategoryCode = null } = props;
return (
-
+
{ categories && (categories.length > 0) && categories.map((category, index) => ) }
- { children }
);
};
diff --git a/src/components/achievements/views/category-list/index.ts b/src/components/achievements/views/category-list/index.ts
new file mode 100644
index 00000000..5a367f85
--- /dev/null
+++ b/src/components/achievements/views/category-list/index.ts
@@ -0,0 +1,2 @@
+export * from './AchievementsCategoryListItemView';
+export * from './AchievementsCategoryListView';
diff --git a/src/components/achievements/views/index.ts b/src/components/achievements/views/index.ts
new file mode 100644
index 00000000..576c6357
--- /dev/null
+++ b/src/components/achievements/views/index.ts
@@ -0,0 +1,5 @@
+export * from './achievement-list';
+export * from './AchievementBadgeView';
+export * from './AchievementCategoryView';
+export * from './AchievementDetailsView';
+export * from './category-list';
diff --git a/src/components/avatar-editor/AvatarEditorView.scss b/src/components/avatar-editor/AvatarEditorView.scss
index 3b8b6304..22b873d4 100644
--- a/src/components/avatar-editor/AvatarEditorView.scss
+++ b/src/components/avatar-editor/AvatarEditorView.scss
@@ -1,5 +1,5 @@
.nitro-avatar-editor-spritesheet {
- background: url('../../assets/images/avatareditor/avatar-editor-spritesheet.png') transparent no-repeat;
+ background: url('@/assets/images/avatareditor/avatar-editor-spritesheet.png') transparent no-repeat;
&.arrow-left-icon {
width: 28px;
diff --git a/src/components/avatar-editor/AvatarEditorView.tsx b/src/components/avatar-editor/AvatarEditorView.tsx
index ad638ab2..6b3766e2 100644
--- a/src/components/avatar-editor/AvatarEditorView.tsx
+++ b/src/components/avatar-editor/AvatarEditorView.tsx
@@ -1,6 +1,6 @@
-import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
import { AvatarEditorFigureCategory, FigureSetIdsMessageEvent, GetWardrobeMessageComposer, IAvatarFigureContainer, ILinkEventTracker, UserFigureComposer, UserWardrobePageEvent } from '@nitrots/nitro-renderer';
import { FC, useCallback, useEffect, useMemo, useState } from 'react';
+import { FaDice, FaTrash, FaUndo } from 'react-icons/fa';
import { AddEventLinkTracker, AvatarEditorAction, AvatarEditorUtilities, BodyModel, FigureData, generateRandomFigure, GetAvatarRenderManager, GetClubMemberLevel, GetConfiguration, GetSessionDataManager, HeadModel, IAvatarEditorCategoryModel, LegModel, LocalizeText, RemoveLinkEventTracker, SendMessageComposer, TorsoModel } from '../../api';
import { Button, ButtonGroup, Column, Grid, NitroCardContentView, NitroCardHeaderView, NitroCardTabsItemView, NitroCardTabsView, NitroCardView } from '../../common';
import { useMessageEvent } from '../../hooks';
@@ -295,13 +295,13 @@ export const AvatarEditorView: FC<{}> = props =>