@charset "utf-8";

/**
 * easymde v2.16.1
 * Copyright Jeroen Akkerman
 * @link https://github.com/ionaru/easy-markdown-editor
 * @license MIT
 */

.CodeMirror{font-family:monospace;height:300px;color:#000;direction:ltr}

.CodeMirror-lines{padding:4px 0}

.CodeMirror pre.CodeMirror-line,.CodeMirror pre.CodeMirror-line-like{padding:0 4px}

.CodeMirror-gutter-filler,.CodeMirror-scrollbar-filler{background-color:#fff}

.CodeMirror-gutters{border-right:1px solid #ddd;background-color:#f7f7f7;white-space:nowrap}

.CodeMirror-linenumber{padding:0 3px 0 5px;min-width:20px;text-align:right;color:#999;white-space:nowrap}

.CodeMirror-guttermarker{color:#000}

.CodeMirror-guttermarker-subtle{color:#999}

.CodeMirror-cursor{border-left:1px solid #000;border-right:none;width:0}

.CodeMirror div.CodeMirror-secondarycursor{border-left:1px solid silver}

.cm-fat-cursor .CodeMirror-cursor{width:auto;border:0!important;background:#7e7}

.cm-fat-cursor div.CodeMirror-cursors{z-index:1}

.cm-fat-cursor .CodeMirror-line::-moz-selection, .cm-fat-cursor .CodeMirror-line>span::-moz-selection, .cm-fat-cursor .CodeMirror-line>span>span::-moz-selection{background:0 0}

.cm-fat-cursor .CodeMirror-line::selection,.cm-fat-cursor .CodeMirror-line>span::selection,.cm-fat-cursor .CodeMirror-line>span>span::selection{background:0 0}

.cm-fat-cursor .CodeMirror-line::-moz-selection,.cm-fat-cursor .CodeMirror-line>span::-moz-selection,.cm-fat-cursor .CodeMirror-line>span>span::-moz-selection{background:0 0}

.cm-fat-cursor{caret-color:transparent}

@keyframes blink{50%{background-color:transparent}}

.cm-tab{display:inline-block;text-decoration:inherit}

.CodeMirror-rulers{position:absolute;left:0;right:0;top:-50px;bottom:0;overflow:hidden}

.CodeMirror-ruler{border-left:1px solid #ccc;top:0;bottom:0;position:absolute}

.cm-s-default .cm-header{color:#00f}

.cm-s-default .cm-quote{color:#090}

.cm-negative{color:#d44}

.cm-positive{color:#292}

.cm-header,.cm-strong{font-weight:700}

.cm-em{font-style:italic}

.cm-link{text-decoration:underline}

.cm-strikethrough{text-decoration:line-through}

.cm-s-default .cm-keyword{color:#708}

.cm-s-default .cm-atom{color:#219}

.cm-s-default .cm-number{color:#164}

.cm-s-default .cm-def{color:#00f}

.cm-s-default .cm-variable-2{color:#05a}

.cm-s-default .cm-type,.cm-s-default .cm-variable-3{color:#085}

.cm-s-default .cm-comment{color:#a50}

.cm-s-default .cm-string{color:#a11}

.cm-s-default .cm-string-2{color:#f50}

.cm-s-default .cm-meta{color:#555}

.cm-s-default .cm-qualifier{color:#555}

.cm-s-default .cm-builtin{color:#30a}

.cm-s-default .cm-bracket{color:#997}

.cm-s-default .cm-tag{color:#170}

.cm-s-default .cm-attribute{color:#00c}

.cm-s-default .cm-hr{color:#999}

.cm-s-default .cm-link{color:#00c}

.cm-s-default .cm-error{color:red}

.cm-invalidchar{color:red}

.CodeMirror-composing{border-bottom:2px solid}

div.CodeMirror span.CodeMirror-matchingbracket{color:#0b0}

div.CodeMirror span.CodeMirror-nonmatchingbracket{color:#a22}

.CodeMirror-matchingtag{background:rgba(255,150,0,.3)}

.CodeMirror-activeline-background{background:#e8f2ff}

.CodeMirror{position:relative;overflow:hidden;background:#fff}

.CodeMirror-scroll{overflow:scroll!important;margin-bottom:-50px;margin-right:-50px;padding-bottom:50px;height:100%;outline:0;position:relative}

.CodeMirror-sizer{position:relative;border-right:50px solid transparent}

.CodeMirror-gutter-filler,.CodeMirror-hscrollbar,.CodeMirror-scrollbar-filler,.CodeMirror-vscrollbar{position:absolute;z-index:6;display:none;outline:0}

.CodeMirror-vscrollbar{right:0;top:0;overflow-x:hidden;overflow-y:scroll}

.CodeMirror-hscrollbar{bottom:0;left:0;overflow-y:hidden;overflow-x:scroll}

.CodeMirror-scrollbar-filler{right:0;bottom:0}

.CodeMirror-gutter-filler{left:0;bottom:0}

.CodeMirror-gutters{position:absolute;left:0;top:0;min-height:100%;z-index:3}

.CodeMirror-gutter{white-space:normal;height:100%;display:inline-block;vertical-align:top;margin-bottom:-50px}

.CodeMirror-gutter-wrapper{position:absolute;z-index:4;background:0 0!important;border:none!important}

.CodeMirror-gutter-background{position:absolute;top:0;bottom:0;z-index:4}

.CodeMirror-gutter-elt{position:absolute;cursor:default;z-index:4}

.CodeMirror-gutter-wrapper ::-moz-selection{background-color:transparent}

.CodeMirror-gutter-wrapper ::selection{background-color:transparent}

.CodeMirror-gutter-wrapper ::-moz-selection{background-color:transparent}

.CodeMirror-lines{cursor:text;min-height:1px}

.CodeMirror pre.CodeMirror-line,.CodeMirror pre.CodeMirror-line-like{border-radius:0;border-width:0;background:0 0;font-family:inherit;font-size:inherit;margin:0;white-space:pre;word-wrap:normal;line-height:inherit;color:inherit;z-index:2;position:relative;overflow:visible;-webkit-tap-highlight-color:transparent;-webkit-font-variant-ligatures:contextual;font-feature-settings:"calt";font-variant-ligatures:contextual}

.CodeMirror-wrap pre.CodeMirror-line,.CodeMirror-wrap pre.CodeMirror-line-like{word-wrap:break-word;white-space:pre-wrap;word-break:normal}

.CodeMirror-linebackground{position:absolute;left:0;right:0;top:0;bottom:0;z-index:0}

.CodeMirror-linewidget{position:relative;z-index:2;padding:.1px}

.CodeMirror-rtl pre{direction:rtl}

.CodeMirror-code{outline:0}

.CodeMirror-gutter,.CodeMirror-gutters,.CodeMirror-linenumber,.CodeMirror-scroll,.CodeMirror-sizer{box-sizing:content-box}

.CodeMirror-measure{position:absolute;width:100%;height:0;overflow:hidden;visibility:hidden}

.CodeMirror-cursor{position:absolute;pointer-events:none}

.CodeMirror-measure pre{position:static}

div.CodeMirror-cursors{visibility:hidden;position:relative;z-index:3}

div.CodeMirror-dragcursors{visibility:visible}

.CodeMirror-focused div.CodeMirror-cursors{visibility:visible}

.CodeMirror-selected{background:#d9d9d9}

.CodeMirror-focused .CodeMirror-selected{background:#d7d4f0}

.CodeMirror-crosshair{cursor:crosshair}

.CodeMirror-line::-moz-selection, .CodeMirror-line>span::-moz-selection, .CodeMirror-line>span>span::-moz-selection{background:#d7d4f0}

.CodeMirror-line::selection,.CodeMirror-line>span::selection,.CodeMirror-line>span>span::selection{background:#d7d4f0}

.CodeMirror-line::-moz-selection,.CodeMirror-line>span::-moz-selection,.CodeMirror-line>span>span::-moz-selection{background:#d7d4f0}

.cm-searching{background-color:#ffa;background-color:rgba(255,255,0,.4)}

.cm-force-border{padding-right:.1px}

@media print{.CodeMirror div.CodeMirror-cursors{visibility:hidden}}

.cm-tab-wrap-hack:after{content:''}

span.CodeMirror-selectedtext{background:0 0}

.EasyMDEContainer{display:block}

.CodeMirror-rtl pre{direction:rtl}

.EasyMDEContainer.sided--no-fullscreen{display:flex;flex-direction:row;flex-wrap:wrap}

.EasyMDEContainer .CodeMirror{box-sizing:border-box;height:auto;border:1px solid #ddd;border-bottom-left-radius:4px;border-bottom-right-radius:4px;padding:10px;font:inherit;z-index:0;word-wrap:break-word}

.EasyMDEContainer .CodeMirror-scroll{cursor:text}

.EasyMDEContainer .CodeMirror-fullscreen{background:#fff;position:fixed!important;top:50px;left:0;right:0;bottom:0;height:auto;z-index:8;border-right:none!important;border-bottom-right-radius:0!important}

.EasyMDEContainer .CodeMirror-sided{width:50%!important}

.EasyMDEContainer.sided--no-fullscreen .CodeMirror-sided{border-right:none!important;border-bottom-right-radius:0;position:relative;flex:1 1 auto}

.EasyMDEContainer .CodeMirror-placeholder{opacity:.5}

.EasyMDEContainer .CodeMirror-focused .CodeMirror-selected{background:#d9d9d9}

.editor-toolbar{position:relative;-webkit-user-select:none;-moz-user-select:none;-o-user-select:none;user-select:none;padding:9px 10px;border-top:1px solid #bbb;border-left:1px solid #bbb;border-right:1px solid #bbb;border-top-left-radius:4px;border-top-right-radius:4px}

.editor-toolbar.fullscreen{width:100%;height:50px;padding-top:10px;padding-bottom:10px;box-sizing:border-box;background:#fff;border:0;position:fixed;top:0;left:0;opacity:1;z-index:9}

.editor-toolbar.fullscreen::before{width:20px;height:50px;background:linear-gradient(to right,#fff 0,rgba(255,255,255,0) 100%);position:fixed;top:0;left:0;margin:0;padding:0}

.editor-toolbar.fullscreen::after{width:20px;height:50px;background:linear-gradient(to right,rgba(255,255,255,0) 0,#fff 100%);position:fixed;top:0;right:0;margin:0;padding:0}

.EasyMDEContainer.sided--no-fullscreen .editor-toolbar{width:100%}

.editor-toolbar .easymde-dropdown,.editor-toolbar button{background:0 0;display:inline-block;text-align:center;text-decoration:none!important;height:30px;margin:0;padding:0;border:1px solid transparent;border-radius:3px;cursor:pointer}

.editor-toolbar button{width:30px}

.editor-toolbar button.active,.editor-toolbar button:hover{background:#fcfcfc;border-color:#95a5a6}

.editor-toolbar i.separator{display:inline-block;width:0;border-left:1px solid #d9d9d9;border-right:1px solid #fff;color:transparent;text-indent:-10px;margin:0 6px}

.editor-toolbar button:after{font-family:Arial,"Helvetica Neue",Helvetica,sans-serif;font-size:65%;vertical-align:text-bottom;position:relative;top:2px}

.editor-toolbar button.heading-1:after{content:"1"}

.editor-toolbar button.heading-2:after{content:"2"}

.editor-toolbar button.heading-3:after{content:"3"}

.editor-toolbar button.heading-bigger:after{content:"▲"}

.editor-toolbar button.heading-smaller:after{content:"▼"}

.editor-toolbar.disabled-for-preview button:not(.no-disable){opacity:.6;pointer-events:none}

@media only screen and (max-width:700px){.editor-toolbar i.no-mobile{display:none}}

.editor-statusbar{padding:8px 10px;font-size:12px;color:#959694;text-align:right}

.EasyMDEContainer.sided--no-fullscreen .editor-statusbar{width:100%}

.editor-statusbar span{display:inline-block;min-width:4em;margin-left:1em}

.editor-statusbar .lines:before{content:'lines: '}

.editor-statusbar .words:before{content:'words: '}

.editor-statusbar .characters:before{content:'characters: '}

.editor-preview-full{position:absolute;width:100%;height:100%;top:0;left:0;z-index:7;overflow:auto;display:none;box-sizing:border-box}

.editor-preview-side{position:fixed;bottom:0;width:50%;top:50px;right:0;z-index:9;overflow:auto;display:none;box-sizing:border-box;border:1px solid #ddd;word-wrap:break-word}

.editor-preview-active-side{display:block}

.EasyMDEContainer.sided--no-fullscreen .editor-preview-active-side{flex:1 1 auto;height:auto;position:static}

.editor-preview-active{display:block}

.editor-preview{padding:10px;background:#fafafa}

.editor-preview>p{margin-top:0}

.editor-preview pre{background:#eee;margin-bottom:10px}

.editor-preview table td,.editor-preview table th{border:1px solid #ddd;padding:5px}

.cm-s-easymde .cm-tag{color:#63a35c}

.cm-s-easymde .cm-attribute{color:#795da3}

.cm-s-easymde .cm-string{color:#183691}

.cm-s-easymde .cm-header-1{font-size:200%;line-height:200%}

.cm-s-easymde .cm-header-2{font-size:160%;line-height:160%}

.cm-s-easymde .cm-header-3{font-size:125%;line-height:125%}

.cm-s-easymde .cm-header-4{font-size:110%;line-height:110%}

.cm-s-easymde .cm-comment{background:rgba(0,0,0,.05);border-radius:2px}

.cm-s-easymde .cm-link{color:#7f8c8d}

.cm-s-easymde .cm-url{color:#aab2b3}

.cm-s-easymde .cm-quote{color:#7f8c8d;font-style:italic}

.editor-toolbar .easymde-dropdown{position:relative;background:linear-gradient(to bottom right,#fff 0,#fff 84%,#333 50%,#333 100%);border-radius:0;border:1px solid #fff}

.editor-toolbar .easymde-dropdown:hover{background:linear-gradient(to bottom right,#fff 0,#fff 84%,#333 50%,#333 100%)}

.easymde-dropdown-content{display:block;visibility:hidden;position:absolute;background-color:#f9f9f9;box-shadow:0 8px 16px 0 rgba(0,0,0,.2);padding:8px;z-index:2;top:30px}

.easymde-dropdown:active .easymde-dropdown-content,.easymde-dropdown:focus .easymde-dropdown-content,.easymde-dropdown[focus-within] .easymde-dropdown-content{visibility:visible}

.easymde-dropdown:active .easymde-dropdown-content,.easymde-dropdown:focus .easymde-dropdown-content,.easymde-dropdown:focus-within .easymde-dropdown-content{visibility:visible}

span[data-img-src]::after{content:'';background-image:var(--bg-image);display:block;max-height:100%;max-width:100%;background-size:contain;height:0;padding-top:var(--height);width:var(--width);background-repeat:no-repeat}

.CodeMirror .cm-spell-error:not(.cm-url):not(.cm-comment):not(.cm-tag):not(.cm-word){background:rgba(255,0,0,.15)}

/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */

/* Document
   ========================================================================== */

/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */

html {
  line-height: 1.15; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
}

/* Sections
   ========================================================================== */

/**
 * Remove the margin in all browsers.
 */

body {
  margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */

main {
  display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */

h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
   ========================================================================== */

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */

hr {
  box-sizing: content-box; /* 1 */
  height: 0; /* 1 */
  overflow: visible; /* 2 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

pre {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/* Text-level semantics
   ========================================================================== */

/**
 * Remove the gray background on active links in IE 10.
 */

a {
  background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */

abbr[title] {
  border-bottom: none; /* 1 */
  text-decoration: underline; /* 2 */
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted; /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */

b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

code,
kbd,
samp {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */

small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
   ========================================================================== */

/**
 * Remove the border on images inside links in IE 10.
 */

img {
  border-style: none;
}

/* Forms
   ========================================================================== */

/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */

button,
input,
optgroup,
select,
textarea {
  font-family: inherit; /* 1 */
  font-size: 100%; /* 1 */
  line-height: 1.15; /* 1 */
  margin: 0; /* 2 */
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */

button,
input { /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */

button,
select { /* 1 */
  text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */

button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */

fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */

legend {
  box-sizing: border-box; /* 1 */
  color: inherit; /* 2 */
  display: table; /* 1 */
  max-width: 100%; /* 1 */
  padding: 0; /* 3 */
  white-space: normal; /* 1 */
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */

progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */

textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */

[type="checkbox"],
[type="radio"] {
  box-sizing: border-box; /* 1 */
  padding: 0; /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */

[type="search"] {
  -webkit-appearance: textfield; /* 1 */
  outline-offset: -2px; /* 2 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */

[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */

::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

/* Interactive
   ========================================================================== */

/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */

details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */

summary {
  display: list-item;
}

/* Misc
   ========================================================================== */

/**
 * Add the correct display in IE 10+.
 */

template {
  display: none;
}

/**
 * Add the correct display in IE 10.
 */

[hidden] {
  display: none;
}

@font-face {
    font-family: "Merriweather";
    src: local('Merriweather Italic'),
        local('Merriweather-Italic'),
        url(fonts/Merriweather-Italic.woff2) format("woff2"),
        url(fonts/Merriweather-Italic.woff) format("woff");
    font-weight: normal;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: "Merriweather";
    src: local('Merriweather Black'),
        local('Merriweather-Black'),
        url(fonts/Merriweather-Black.woff2) format("woff2"),
        url(fonts/Merriweather-Black.woff) format("woff");
    font-weight: 900;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Merriweather";
    src: local('Merriweather Bold'),
        local('Merriweather-Bold'),
        url(fonts/Merriweather-Bold.woff2) format("woff2"),
        url(fonts/Merriweather-Bold.woff) format("woff");
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Merriweather";
    src: local('Merriweather Light'),
        local('Merriweather-Light'),
        url(fonts/Merriweather-Light.woff2) format("woff2"),
        url(fonts/Merriweather-Light.woff) format("woff");
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Merriweather";
    src: local('Merriweather'),
        local('Merriweather Regular'),
        local('Merriweather-Regular'),
        url(fonts/Merriweather-Regular.woff2) format("woff2"),
        url(fonts/Merriweather-Regular.woff) format("woff");
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Ubuntu";
    src: local('Ubuntu Italic'),
        local('Ubuntu-Italic'),
        url(fonts/Ubuntu-Italic.woff2) format("woff2"),
        url(fonts/Ubuntu-Italic.woff) format("woff");
    font-weight: normal;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: "Ubuntu";
    src: local('Ubuntu BoldItalic'),
        local('Ubuntu-BoldItalic'),
        url(fonts/Ubuntu-BoldItalic.woff2) format("woff2"),
        url(fonts/Ubuntu-BoldItalic.woff) format("woff");
    font-weight: bold;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: "Ubuntu";
    src: local('Ubuntu Medium'),
        local('Ubuntu-Medium'),
        url(fonts/Ubuntu-Medium.woff2) format("woff2"),
        url(fonts/Ubuntu-Medium.woff) format("woff");
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Ubuntu";
    src: local('Ubuntu Bold'),
        local('Ubuntu-Bold'),
        url(fonts/Ubuntu-Bold.woff2) format("woff2"),
        url(fonts/Ubuntu-Bold.woff) format("woff");
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Ubuntu";
    src: local('Ubuntu'),
        local('Ubuntu Regular'),
        local('Ubuntu-Regular'),
        url(fonts/Ubuntu-Regular.woff2) format("woff2"), url(fonts/Ubuntu-Regular.woff) format("woff");
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: "Ubuntu";
    src: local('Ubuntu MediumItalic'),
        local('Ubuntu-MediumItalic'),
        url(fonts/Ubuntu-MediumItalic.woff2) format("woff2"),
        url(fonts/Ubuntu-MediumItalic.woff) format("woff");
    font-weight: 500;
    font-style: italic;
    font-display: swap;
}

/*!
 * 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)
 */

.fa,
.fas,
.far,
.fal,
.fad,
.fab {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  display: inline-block;
  font-style: normal;
  font-feature-settings: normal;
  font-variant: normal;
  text-rendering: auto;
  line-height: 1; }

.fa-lg {
  font-size: 1.33333em;
  line-height: 0.75em;
  vertical-align: -.0667em; }

.fa-xs {
  font-size: .75em; }

.fa-sm {
  font-size: .875em; }

.fa-1x {
  font-size: 1em; }

.fa-2x {
  font-size: 2em; }

.fa-3x {
  font-size: 3em; }

.fa-4x {
  font-size: 4em; }

.fa-5x {
  font-size: 5em; }

.fa-6x {
  font-size: 6em; }

.fa-7x {
  font-size: 7em; }

.fa-8x {
  font-size: 8em; }

.fa-9x {
  font-size: 9em; }

.fa-10x {
  font-size: 10em; }

.fa-fw {
  text-align: center;
  width: 1.25em; }

.fa-ul {
  list-style-type: none;
  margin-left: 2.5em;
  padding-left: 0; }

.fa-ul > li {
    position: relative; }

.fa-li {
  left: -2em;
  position: absolute;
  text-align: center;
  width: 2em;
  line-height: inherit; }

.fa-border {
  border: solid 0.08em #eee;
  border-radius: .1em;
  padding: .2em .25em .15em; }

.fa-pull-left {
  float: left; }

.fa-pull-right {
  float: right; }

.fa.fa-pull-left,
.fas.fa-pull-left,
.far.fa-pull-left,
.fal.fa-pull-left,
.fab.fa-pull-left {
  margin-right: .3em; }

.fa.fa-pull-right,
.fas.fa-pull-right,
.far.fa-pull-right,
.fal.fa-pull-right,
.fab.fa-pull-right {
  margin-left: .3em; }

.fa-spin {
  animation: fa-spin 2s infinite linear; }

.fa-pulse {
  animation: fa-spin 1s infinite steps(8); }

@keyframes fa-spin {
  0% {
    transform: rotate(0deg); }
  100% {
    transform: rotate(360deg); } }

.fa-rotate-90 {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";
  transform: rotate(90deg); }

.fa-rotate-180 {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";
  transform: rotate(180deg); }

.fa-rotate-270 {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";
  transform: rotate(270deg); }

.fa-flip-horizontal {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";
  transform: scale(-1, 1); }

.fa-flip-vertical {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";
  transform: scale(1, -1); }

.fa-flip-both, .fa-flip-horizontal.fa-flip-vertical {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";
  transform: scale(-1, -1); }

:root .fa-rotate-90,
:root .fa-rotate-180,
:root .fa-rotate-270,
:root .fa-flip-horizontal,
:root .fa-flip-vertical,
:root .fa-flip-both {
  filter: none; }

.fa-stack {
  display: inline-block;
  height: 2em;
  line-height: 2em;
  position: relative;
  vertical-align: middle;
  width: 2.5em; }

.fa-stack-1x,
.fa-stack-2x {
  left: 0;
  position: absolute;
  text-align: center;
  width: 100%; }

.fa-stack-1x {
  line-height: inherit; }

.fa-stack-2x {
  font-size: 2em; }

.fa-inverse {
  color: #fff; }

/* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen
readers do not read off random characters that represent icons */

.fa-500px:before {
  content: "\f26e"; }

.fa-accessible-icon:before {
  content: "\f368"; }

.fa-accusoft:before {
  content: "\f369"; }

.fa-acquisitions-incorporated:before {
  content: "\f6af"; }

.fa-ad:before {
  content: "\f641"; }

.fa-address-book:before {
  content: "\f2b9"; }

.fa-address-card:before {
  content: "\f2bb"; }

.fa-adjust:before {
  content: "\f042"; }

.fa-adn:before {
  content: "\f170"; }

.fa-adversal:before {
  content: "\f36a"; }

.fa-affiliatetheme:before {
  content: "\f36b"; }

.fa-air-freshener:before {
  content: "\f5d0"; }

.fa-airbnb:before {
  content: "\f834"; }

.fa-algolia:before {
  content: "\f36c"; }

.fa-align-center:before {
  content: "\f037"; }

.fa-align-justify:before {
  content: "\f039"; }

.fa-align-left:before {
  content: "\f036"; }

.fa-align-right:before {
  content: "\f038"; }

.fa-alipay:before {
  content: "\f642"; }

.fa-allergies:before {
  content: "\f461"; }

.fa-amazon:before {
  content: "\f270"; }

.fa-amazon-pay:before {
  content: "\f42c"; }

.fa-ambulance:before {
  content: "\f0f9"; }

.fa-american-sign-language-interpreting:before {
  content: "\f2a3"; }

.fa-amilia:before {
  content: "\f36d"; }

.fa-anchor:before {
  content: "\f13d"; }

.fa-android:before {
  content: "\f17b"; }

.fa-angellist:before {
  content: "\f209"; }

.fa-angle-double-down:before {
  content: "\f103"; }

.fa-angle-double-left:before {
  content: "\f100"; }

.fa-angle-double-right:before {
  content: "\f101"; }

.fa-angle-double-up:before {
  content: "\f102"; }

.fa-angle-down:before {
  content: "\f107"; }

.fa-angle-left:before {
  content: "\f104"; }

.fa-angle-right:before {
  content: "\f105"; }

.fa-angle-up:before {
  content: "\f106"; }

.fa-angry:before {
  content: "\f556"; }

.fa-angrycreative:before {
  content: "\f36e"; }

.fa-angular:before {
  content: "\f420"; }

.fa-ankh:before {
  content: "\f644"; }

.fa-app-store:before {
  content: "\f36f"; }

.fa-app-store-ios:before {
  content: "\f370"; }

.fa-apper:before {
  content: "\f371"; }

.fa-apple:before {
  content: "\f179"; }

.fa-apple-alt:before {
  content: "\f5d1"; }

.fa-apple-pay:before {
  content: "\f415"; }

.fa-archive:before {
  content: "\f187"; }

.fa-archway:before {
  content: "\f557"; }

.fa-arrow-alt-circle-down:before {
  content: "\f358"; }

.fa-arrow-alt-circle-left:before {
  content: "\f359"; }

.fa-arrow-alt-circle-right:before {
  content: "\f35a"; }

.fa-arrow-alt-circle-up:before {
  content: "\f35b"; }

.fa-arrow-circle-down:before {
  content: "\f0ab"; }

.fa-arrow-circle-left:before {
  content: "\f0a8"; }

.fa-arrow-circle-right:before {
  content: "\f0a9"; }

.fa-arrow-circle-up:before {
  content: "\f0aa"; }

.fa-arrow-down:before {
  content: "\f063"; }

.fa-arrow-left:before {
  content: "\f060"; }

.fa-arrow-right:before {
  content: "\f061"; }

.fa-arrow-up:before {
  content: "\f062"; }

.fa-arrows-alt:before {
  content: "\f0b2"; }

.fa-arrows-alt-h:before {
  content: "\f337"; }

.fa-arrows-alt-v:before {
  content: "\f338"; }

.fa-artstation:before {
  content: "\f77a"; }

.fa-assistive-listening-systems:before {
  content: "\f2a2"; }

.fa-asterisk:before {
  content: "\f069"; }

.fa-asymmetrik:before {
  content: "\f372"; }

.fa-at:before {
  content: "\f1fa"; }

.fa-atlas:before {
  content: "\f558"; }

.fa-atlassian:before {
  content: "\f77b"; }

.fa-atom:before {
  content: "\f5d2"; }

.fa-audible:before {
  content: "\f373"; }

.fa-audio-description:before {
  content: "\f29e"; }

.fa-autoprefixer:before {
  content: "\f41c"; }

.fa-avianex:before {
  content: "\f374"; }

.fa-aviato:before {
  content: "\f421"; }

.fa-award:before {
  content: "\f559"; }

.fa-aws:before {
  content: "\f375"; }

.fa-baby:before {
  content: "\f77c"; }

.fa-baby-carriage:before {
  content: "\f77d"; }

.fa-backspace:before {
  content: "\f55a"; }

.fa-backward:before {
  content: "\f04a"; }

.fa-bacon:before {
  content: "\f7e5"; }

.fa-bacteria:before {
  content: "\e059"; }

.fa-bacterium:before {
  content: "\e05a"; }

.fa-bahai:before {
  content: "\f666"; }

.fa-balance-scale:before {
  content: "\f24e"; }

.fa-balance-scale-left:before {
  content: "\f515"; }

.fa-balance-scale-right:before {
  content: "\f516"; }

.fa-ban:before {
  content: "\f05e"; }

.fa-band-aid:before {
  content: "\f462"; }

.fa-bandcamp:before {
  content: "\f2d5"; }

.fa-barcode:before {
  content: "\f02a"; }

.fa-bars:before {
  content: "\f0c9"; }

.fa-baseball-ball:before {
  content: "\f433"; }

.fa-basketball-ball:before {
  content: "\f434"; }

.fa-bath:before {
  content: "\f2cd"; }

.fa-battery-empty:before {
  content: "\f244"; }

.fa-battery-full:before {
  content: "\f240"; }

.fa-battery-half:before {
  content: "\f242"; }

.fa-battery-quarter:before {
  content: "\f243"; }

.fa-battery-three-quarters:before {
  content: "\f241"; }

.fa-battle-net:before {
  content: "\f835"; }

.fa-bed:before {
  content: "\f236"; }

.fa-beer:before {
  content: "\f0fc"; }

.fa-behance:before {
  content: "\f1b4"; }

.fa-behance-square:before {
  content: "\f1b5"; }

.fa-bell:before {
  content: "\f0f3"; }

.fa-bell-slash:before {
  content: "\f1f6"; }

.fa-bezier-curve:before {
  content: "\f55b"; }

.fa-bible:before {
  content: "\f647"; }

.fa-bicycle:before {
  content: "\f206"; }

.fa-biking:before {
  content: "\f84a"; }

.fa-bimobject:before {
  content: "\f378"; }

.fa-binoculars:before {
  content: "\f1e5"; }

.fa-biohazard:before {
  content: "\f780"; }

.fa-birthday-cake:before {
  content: "\f1fd"; }

.fa-bitbucket:before {
  content: "\f171"; }

.fa-bitcoin:before {
  content: "\f379"; }

.fa-bity:before {
  content: "\f37a"; }

.fa-black-tie:before {
  content: "\f27e"; }

.fa-blackberry:before {
  content: "\f37b"; }

.fa-blender:before {
  content: "\f517"; }

.fa-blender-phone:before {
  content: "\f6b6"; }

.fa-blind:before {
  content: "\f29d"; }

.fa-blog:before {
  content: "\f781"; }

.fa-blogger:before {
  content: "\f37c"; }

.fa-blogger-b:before {
  content: "\f37d"; }

.fa-bluetooth:before {
  content: "\f293"; }

.fa-bluetooth-b:before {
  content: "\f294"; }

.fa-bold:before {
  content: "\f032"; }

.fa-bolt:before {
  content: "\f0e7"; }

.fa-bomb:before {
  content: "\f1e2"; }

.fa-bone:before {
  content: "\f5d7"; }

.fa-bong:before {
  content: "\f55c"; }

.fa-book:before {
  content: "\f02d"; }

.fa-book-dead:before {
  content: "\f6b7"; }

.fa-book-medical:before {
  content: "\f7e6"; }

.fa-book-open:before {
  content: "\f518"; }

.fa-book-reader:before {
  content: "\f5da"; }

.fa-bookmark:before {
  content: "\f02e"; }

.fa-bootstrap:before {
  content: "\f836"; }

.fa-border-all:before {
  content: "\f84c"; }

.fa-border-none:before {
  content: "\f850"; }

.fa-border-style:before {
  content: "\f853"; }

.fa-bowling-ball:before {
  content: "\f436"; }

.fa-box:before {
  content: "\f466"; }

.fa-box-open:before {
  content: "\f49e"; }

.fa-box-tissue:before {
  content: "\e05b"; }

.fa-boxes:before {
  content: "\f468"; }

.fa-braille:before {
  content: "\f2a1"; }

.fa-brain:before {
  content: "\f5dc"; }

.fa-bread-slice:before {
  content: "\f7ec"; }

.fa-briefcase:before {
  content: "\f0b1"; }

.fa-briefcase-medical:before {
  content: "\f469"; }

.fa-broadcast-tower:before {
  content: "\f519"; }

.fa-broom:before {
  content: "\f51a"; }

.fa-brush:before {
  content: "\f55d"; }

.fa-btc:before {
  content: "\f15a"; }

.fa-buffer:before {
  content: "\f837"; }

.fa-bug:before {
  content: "\f188"; }

.fa-building:before {
  content: "\f1ad"; }

.fa-bullhorn:before {
  content: "\f0a1"; }

.fa-bullseye:before {
  content: "\f140"; }

.fa-burn:before {
  content: "\f46a"; }

.fa-buromobelexperte:before {
  content: "\f37f"; }

.fa-bus:before {
  content: "\f207"; }

.fa-bus-alt:before {
  content: "\f55e"; }

.fa-business-time:before {
  content: "\f64a"; }

.fa-buy-n-large:before {
  content: "\f8a6"; }

.fa-buysellads:before {
  content: "\f20d"; }

.fa-calculator:before {
  content: "\f1ec"; }

.fa-calendar:before {
  content: "\f133"; }

.fa-calendar-alt:before {
  content: "\f073"; }

.fa-calendar-check:before {
  content: "\f274"; }

.fa-calendar-day:before {
  content: "\f783"; }

.fa-calendar-minus:before {
  content: "\f272"; }

.fa-calendar-plus:before {
  content: "\f271"; }

.fa-calendar-times:before {
  content: "\f273"; }

.fa-calendar-week:before {
  content: "\f784"; }

.fa-camera:before {
  content: "\f030"; }

.fa-camera-retro:before {
  content: "\f083"; }

.fa-campground:before {
  content: "\f6bb"; }

.fa-canadian-maple-leaf:before {
  content: "\f785"; }

.fa-candy-cane:before {
  content: "\f786"; }

.fa-cannabis:before {
  content: "\f55f"; }

.fa-capsules:before {
  content: "\f46b"; }

.fa-car:before {
  content: "\f1b9"; }

.fa-car-alt:before {
  content: "\f5de"; }

.fa-car-battery:before {
  content: "\f5df"; }

.fa-car-crash:before {
  content: "\f5e1"; }

.fa-car-side:before {
  content: "\f5e4"; }

.fa-caravan:before {
  content: "\f8ff"; }

.fa-caret-down:before {
  content: "\f0d7"; }

.fa-caret-left:before {
  content: "\f0d9"; }

.fa-caret-right:before {
  content: "\f0da"; }

.fa-caret-square-down:before {
  content: "\f150"; }

.fa-caret-square-left:before {
  content: "\f191"; }

.fa-caret-square-right:before {
  content: "\f152"; }

.fa-caret-square-up:before {
  content: "\f151"; }

.fa-caret-up:before {
  content: "\f0d8"; }

.fa-carrot:before {
  content: "\f787"; }

.fa-cart-arrow-down:before {
  content: "\f218"; }

.fa-cart-plus:before {
  content: "\f217"; }

.fa-cash-register:before {
  content: "\f788"; }

.fa-cat:before {
  content: "\f6be"; }

.fa-cc-amazon-pay:before {
  content: "\f42d"; }

.fa-cc-amex:before {
  content: "\f1f3"; }

.fa-cc-apple-pay:before {
  content: "\f416"; }

.fa-cc-diners-club:before {
  content: "\f24c"; }

.fa-cc-discover:before {
  content: "\f1f2"; }

.fa-cc-jcb:before {
  content: "\f24b"; }

.fa-cc-mastercard:before {
  content: "\f1f1"; }

.fa-cc-paypal:before {
  content: "\f1f4"; }

.fa-cc-stripe:before {
  content: "\f1f5"; }

.fa-cc-visa:before {
  content: "\f1f0"; }

.fa-centercode:before {
  content: "\f380"; }

.fa-centos:before {
  content: "\f789"; }

.fa-certificate:before {
  content: "\f0a3"; }

.fa-chair:before {
  content: "\f6c0"; }

.fa-chalkboard:before {
  content: "\f51b"; }

.fa-chalkboard-teacher:before {
  content: "\f51c"; }

.fa-charging-station:before {
  content: "\f5e7"; }

.fa-chart-area:before {
  content: "\f1fe"; }

.fa-chart-bar:before {
  content: "\f080"; }

.fa-chart-line:before {
  content: "\f201"; }

.fa-chart-pie:before {
  content: "\f200"; }

.fa-check:before {
  content: "\f00c"; }

.fa-check-circle:before {
  content: "\f058"; }

.fa-check-double:before {
  content: "\f560"; }

.fa-check-square:before {
  content: "\f14a"; }

.fa-cheese:before {
  content: "\f7ef"; }

.fa-chess:before {
  content: "\f439"; }

.fa-chess-bishop:before {
  content: "\f43a"; }

.fa-chess-board:before {
  content: "\f43c"; }

.fa-chess-king:before {
  content: "\f43f"; }

.fa-chess-knight:before {
  content: "\f441"; }

.fa-chess-pawn:before {
  content: "\f443"; }

.fa-chess-queen:before {
  content: "\f445"; }

.fa-chess-rook:before {
  content: "\f447"; }

.fa-chevron-circle-down:before {
  content: "\f13a"; }

.fa-chevron-circle-left:before {
  content: "\f137"; }

.fa-chevron-circle-right:before {
  content: "\f138"; }

.fa-chevron-circle-up:before {
  content: "\f139"; }

.fa-chevron-down:before {
  content: "\f078"; }

.fa-chevron-left:before {
  content: "\f053"; }

.fa-chevron-right:before {
  content: "\f054"; }

.fa-chevron-up:before {
  content: "\f077"; }

.fa-child:before {
  content: "\f1ae"; }

.fa-chrome:before {
  content: "\f268"; }

.fa-chromecast:before {
  content: "\f838"; }

.fa-church:before {
  content: "\f51d"; }

.fa-circle:before {
  content: "\f111"; }

.fa-circle-notch:before {
  content: "\f1ce"; }

.fa-city:before {
  content: "\f64f"; }

.fa-clinic-medical:before {
  content: "\f7f2"; }

.fa-clipboard:before {
  content: "\f328"; }

.fa-clipboard-check:before {
  content: "\f46c"; }

.fa-clipboard-list:before {
  content: "\f46d"; }

.fa-clock:before {
  content: "\f017"; }

.fa-clone:before {
  content: "\f24d"; }

.fa-closed-captioning:before {
  content: "\f20a"; }

.fa-cloud:before {
  content: "\f0c2"; }

.fa-cloud-download-alt:before {
  content: "\f381"; }

.fa-cloud-meatball:before {
  content: "\f73b"; }

.fa-cloud-moon:before {
  content: "\f6c3"; }

.fa-cloud-moon-rain:before {
  content: "\f73c"; }

.fa-cloud-rain:before {
  content: "\f73d"; }

.fa-cloud-showers-heavy:before {
  content: "\f740"; }

.fa-cloud-sun:before {
  content: "\f6c4"; }

.fa-cloud-sun-rain:before {
  content: "\f743"; }

.fa-cloud-upload-alt:before {
  content: "\f382"; }

.fa-cloudflare:before {
  content: "\e07d"; }

.fa-cloudscale:before {
  content: "\f383"; }

.fa-cloudsmith:before {
  content: "\f384"; }

.fa-cloudversify:before {
  content: "\f385"; }

.fa-cocktail:before {
  content: "\f561"; }

.fa-code:before {
  content: "\f121"; }

.fa-code-branch:before {
  content: "\f126"; }

.fa-codepen:before {
  content: "\f1cb"; }

.fa-codiepie:before {
  content: "\f284"; }

.fa-coffee:before {
  content: "\f0f4"; }

.fa-cog:before {
  content: "\f013"; }

.fa-cogs:before {
  content: "\f085"; }

.fa-coins:before {
  content: "\f51e"; }

.fa-columns:before {
  content: "\f0db"; }

.fa-comment:before {
  content: "\f075"; }

.fa-comment-alt:before {
  content: "\f27a"; }

.fa-comment-dollar:before {
  content: "\f651"; }

.fa-comment-dots:before {
  content: "\f4ad"; }

.fa-comment-medical:before {
  content: "\f7f5"; }

.fa-comment-slash:before {
  content: "\f4b3"; }

.fa-comments:before {
  content: "\f086"; }

.fa-comments-dollar:before {
  content: "\f653"; }

.fa-compact-disc:before {
  content: "\f51f"; }

.fa-compass:before {
  content: "\f14e"; }

.fa-compress:before {
  content: "\f066"; }

.fa-compress-alt:before {
  content: "\f422"; }

.fa-compress-arrows-alt:before {
  content: "\f78c"; }

.fa-concierge-bell:before {
  content: "\f562"; }

.fa-confluence:before {
  content: "\f78d"; }

.fa-connectdevelop:before {
  content: "\f20e"; }

.fa-contao:before {
  content: "\f26d"; }

.fa-cookie:before {
  content: "\f563"; }

.fa-cookie-bite:before {
  content: "\f564"; }

.fa-copy:before {
  content: "\f0c5"; }

.fa-copyright:before {
  content: "\f1f9"; }

.fa-cotton-bureau:before {
  content: "\f89e"; }

.fa-couch:before {
  content: "\f4b8"; }

.fa-cpanel:before {
  content: "\f388"; }

.fa-creative-commons:before {
  content: "\f25e"; }

.fa-creative-commons-by:before {
  content: "\f4e7"; }

.fa-creative-commons-nc:before {
  content: "\f4e8"; }

.fa-creative-commons-nc-eu:before {
  content: "\f4e9"; }

.fa-creative-commons-nc-jp:before {
  content: "\f4ea"; }

.fa-creative-commons-nd:before {
  content: "\f4eb"; }

.fa-creative-commons-pd:before {
  content: "\f4ec"; }

.fa-creative-commons-pd-alt:before {
  content: "\f4ed"; }

.fa-creative-commons-remix:before {
  content: "\f4ee"; }

.fa-creative-commons-sa:before {
  content: "\f4ef"; }

.fa-creative-commons-sampling:before {
  content: "\f4f0"; }

.fa-creative-commons-sampling-plus:before {
  content: "\f4f1"; }

.fa-creative-commons-share:before {
  content: "\f4f2"; }

.fa-creative-commons-zero:before {
  content: "\f4f3"; }

.fa-credit-card:before {
  content: "\f09d"; }

.fa-critical-role:before {
  content: "\f6c9"; }

.fa-crop:before {
  content: "\f125"; }

.fa-crop-alt:before {
  content: "\f565"; }

.fa-cross:before {
  content: "\f654"; }

.fa-crosshairs:before {
  content: "\f05b"; }

.fa-crow:before {
  content: "\f520"; }

.fa-crown:before {
  content: "\f521"; }

.fa-crutch:before {
  content: "\f7f7"; }

.fa-css3:before {
  content: "\f13c"; }

.fa-css3-alt:before {
  content: "\f38b"; }

.fa-cube:before {
  content: "\f1b2"; }

.fa-cubes:before {
  content: "\f1b3"; }

.fa-cut:before {
  content: "\f0c4"; }

.fa-cuttlefish:before {
  content: "\f38c"; }

.fa-d-and-d:before {
  content: "\f38d"; }

.fa-d-and-d-beyond:before {
  content: "\f6ca"; }

.fa-dailymotion:before {
  content: "\e052"; }

.fa-dashcube:before {
  content: "\f210"; }

.fa-database:before {
  content: "\f1c0"; }

.fa-deaf:before {
  content: "\f2a4"; }

.fa-deezer:before {
  content: "\e077"; }

.fa-delicious:before {
  content: "\f1a5"; }

.fa-democrat:before {
  content: "\f747"; }

.fa-deploydog:before {
  content: "\f38e"; }

.fa-deskpro:before {
  content: "\f38f"; }

.fa-desktop:before {
  content: "\f108"; }

.fa-dev:before {
  content: "\f6cc"; }

.fa-deviantart:before {
  content: "\f1bd"; }

.fa-dharmachakra:before {
  content: "\f655"; }

.fa-dhl:before {
  content: "\f790"; }

.fa-diagnoses:before {
  content: "\f470"; }

.fa-diaspora:before {
  content: "\f791"; }

.fa-dice:before {
  content: "\f522"; }

.fa-dice-d20:before {
  content: "\f6cf"; }

.fa-dice-d6:before {
  content: "\f6d1"; }

.fa-dice-five:before {
  content: "\f523"; }

.fa-dice-four:before {
  content: "\f524"; }

.fa-dice-one:before {
  content: "\f525"; }

.fa-dice-six:before {
  content: "\f526"; }

.fa-dice-three:before {
  content: "\f527"; }

.fa-dice-two:before {
  content: "\f528"; }

.fa-digg:before {
  content: "\f1a6"; }

.fa-digital-ocean:before {
  content: "\f391"; }

.fa-digital-tachograph:before {
  content: "\f566"; }

.fa-directions:before {
  content: "\f5eb"; }

.fa-discord:before {
  content: "\f392"; }

.fa-discourse:before {
  content: "\f393"; }

.fa-disease:before {
  content: "\f7fa"; }

.fa-divide:before {
  content: "\f529"; }

.fa-dizzy:before {
  content: "\f567"; }

.fa-dna:before {
  content: "\f471"; }

.fa-dochub:before {
  content: "\f394"; }

.fa-docker:before {
  content: "\f395"; }

.fa-dog:before {
  content: "\f6d3"; }

.fa-dollar-sign:before {
  content: "\f155"; }

.fa-dolly:before {
  content: "\f472"; }

.fa-dolly-flatbed:before {
  content: "\f474"; }

.fa-donate:before {
  content: "\f4b9"; }

.fa-door-closed:before {
  content: "\f52a"; }

.fa-door-open:before {
  content: "\f52b"; }

.fa-dot-circle:before {
  content: "\f192"; }

.fa-dove:before {
  content: "\f4ba"; }

.fa-download:before {
  content: "\f019"; }

.fa-draft2digital:before {
  content: "\f396"; }

.fa-drafting-compass:before {
  content: "\f568"; }

.fa-dragon:before {
  content: "\f6d5"; }

.fa-draw-polygon:before {
  content: "\f5ee"; }

.fa-dribbble:before {
  content: "\f17d"; }

.fa-dribbble-square:before {
  content: "\f397"; }

.fa-dropbox:before {
  content: "\f16b"; }

.fa-drum:before {
  content: "\f569"; }

.fa-drum-steelpan:before {
  content: "\f56a"; }

.fa-drumstick-bite:before {
  content: "\f6d7"; }

.fa-drupal:before {
  content: "\f1a9"; }

.fa-dumbbell:before {
  content: "\f44b"; }

.fa-dumpster:before {
  content: "\f793"; }

.fa-dumpster-fire:before {
  content: "\f794"; }

.fa-dungeon:before {
  content: "\f6d9"; }

.fa-dyalog:before {
  content: "\f399"; }

.fa-earlybirds:before {
  content: "\f39a"; }

.fa-ebay:before {
  content: "\f4f4"; }

.fa-edge:before {
  content: "\f282"; }

.fa-edge-legacy:before {
  content: "\e078"; }

.fa-edit:before {
  content: "\f044"; }

.fa-egg:before {
  content: "\f7fb"; }

.fa-eject:before {
  content: "\f052"; }

.fa-elementor:before {
  content: "\f430"; }

.fa-ellipsis-h:before {
  content: "\f141"; }

.fa-ellipsis-v:before {
  content: "\f142"; }

.fa-ello:before {
  content: "\f5f1"; }

.fa-ember:before {
  content: "\f423"; }

.fa-empire:before {
  content: "\f1d1"; }

.fa-envelope:before {
  content: "\f0e0"; }

.fa-envelope-open:before {
  content: "\f2b6"; }

.fa-envelope-open-text:before {
  content: "\f658"; }

.fa-envelope-square:before {
  content: "\f199"; }

.fa-envira:before {
  content: "\f299"; }

.fa-equals:before {
  content: "\f52c"; }

.fa-eraser:before {
  content: "\f12d"; }

.fa-erlang:before {
  content: "\f39d"; }

.fa-ethereum:before {
  content: "\f42e"; }

.fa-ethernet:before {
  content: "\f796"; }

.fa-etsy:before {
  content: "\f2d7"; }

.fa-euro-sign:before {
  content: "\f153"; }

.fa-evernote:before {
  content: "\f839"; }

.fa-exchange-alt:before {
  content: "\f362"; }

.fa-exclamation:before {
  content: "\f12a"; }

.fa-exclamation-circle:before {
  content: "\f06a"; }

.fa-exclamation-triangle:before {
  content: "\f071"; }

.fa-expand:before {
  content: "\f065"; }

.fa-expand-alt:before {
  content: "\f424"; }

.fa-expand-arrows-alt:before {
  content: "\f31e"; }

.fa-expeditedssl:before {
  content: "\f23e"; }

.fa-external-link-alt:before {
  content: "\f35d"; }

.fa-external-link-square-alt:before {
  content: "\f360"; }

.fa-eye:before {
  content: "\f06e"; }

.fa-eye-dropper:before {
  content: "\f1fb"; }

.fa-eye-slash:before {
  content: "\f070"; }

.fa-facebook:before {
  content: "\f09a"; }

.fa-facebook-f:before {
  content: "\f39e"; }

.fa-facebook-messenger:before {
  content: "\f39f"; }

.fa-facebook-square:before {
  content: "\f082"; }

.fa-fan:before {
  content: "\f863"; }

.fa-fantasy-flight-games:before {
  content: "\f6dc"; }

.fa-fast-backward:before {
  content: "\f049"; }

.fa-fast-forward:before {
  content: "\f050"; }

.fa-faucet:before {
  content: "\e005"; }

.fa-fax:before {
  content: "\f1ac"; }

.fa-feather:before {
  content: "\f52d"; }

.fa-feather-alt:before {
  content: "\f56b"; }

.fa-fedex:before {
  content: "\f797"; }

.fa-fedora:before {
  content: "\f798"; }

.fa-female:before {
  content: "\f182"; }

.fa-fighter-jet:before {
  content: "\f0fb"; }

.fa-figma:before {
  content: "\f799"; }

.fa-file:before {
  content: "\f15b"; }

.fa-file-alt:before {
  content: "\f15c"; }

.fa-file-archive:before {
  content: "\f1c6"; }

.fa-file-audio:before {
  content: "\f1c7"; }

.fa-file-code:before {
  content: "\f1c9"; }

.fa-file-contract:before {
  content: "\f56c"; }

.fa-file-csv:before {
  content: "\f6dd"; }

.fa-file-download:before {
  content: "\f56d"; }

.fa-file-excel:before {
  content: "\f1c3"; }

.fa-file-export:before {
  content: "\f56e"; }

.fa-file-image:before {
  content: "\f1c5"; }

.fa-file-import:before {
  content: "\f56f"; }

.fa-file-invoice:before {
  content: "\f570"; }

.fa-file-invoice-dollar:before {
  content: "\f571"; }

.fa-file-medical:before {
  content: "\f477"; }

.fa-file-medical-alt:before {
  content: "\f478"; }

.fa-file-pdf:before {
  content: "\f1c1"; }

.fa-file-powerpoint:before {
  content: "\f1c4"; }

.fa-file-prescription:before {
  content: "\f572"; }

.fa-file-signature:before {
  content: "\f573"; }

.fa-file-upload:before {
  content: "\f574"; }

.fa-file-video:before {
  content: "\f1c8"; }

.fa-file-word:before {
  content: "\f1c2"; }

.fa-fill:before {
  content: "\f575"; }

.fa-fill-drip:before {
  content: "\f576"; }

.fa-film:before {
  content: "\f008"; }

.fa-filter:before {
  content: "\f0b0"; }

.fa-fingerprint:before {
  content: "\f577"; }

.fa-fire:before {
  content: "\f06d"; }

.fa-fire-alt:before {
  content: "\f7e4"; }

.fa-fire-extinguisher:before {
  content: "\f134"; }

.fa-firefox:before {
  content: "\f269"; }

.fa-firefox-browser:before {
  content: "\e007"; }

.fa-first-aid:before {
  content: "\f479"; }

.fa-first-order:before {
  content: "\f2b0"; }

.fa-first-order-alt:before {
  content: "\f50a"; }

.fa-firstdraft:before {
  content: "\f3a1"; }

.fa-fish:before {
  content: "\f578"; }

.fa-fist-raised:before {
  content: "\f6de"; }

.fa-flag:before {
  content: "\f024"; }

.fa-flag-checkered:before {
  content: "\f11e"; }

.fa-flag-usa:before {
  content: "\f74d"; }

.fa-flask:before {
  content: "\f0c3"; }

.fa-flickr:before {
  content: "\f16e"; }

.fa-flipboard:before {
  content: "\f44d"; }

.fa-flushed:before {
  content: "\f579"; }

.fa-fly:before {
  content: "\f417"; }

.fa-folder:before {
  content: "\f07b"; }

.fa-folder-minus:before {
  content: "\f65d"; }

.fa-folder-open:before {
  content: "\f07c"; }

.fa-folder-plus:before {
  content: "\f65e"; }

.fa-font:before {
  content: "\f031"; }

.fa-font-awesome:before {
  content: "\f2b4"; }

.fa-font-awesome-alt:before {
  content: "\f35c"; }

.fa-font-awesome-flag:before {
  content: "\f425"; }

.fa-font-awesome-logo-full:before {
  content: "\f4e6"; }

.fa-fonticons:before {
  content: "\f280"; }

.fa-fonticons-fi:before {
  content: "\f3a2"; }

.fa-football-ball:before {
  content: "\f44e"; }

.fa-fort-awesome:before {
  content: "\f286"; }

.fa-fort-awesome-alt:before {
  content: "\f3a3"; }

.fa-forumbee:before {
  content: "\f211"; }

.fa-forward:before {
  content: "\f04e"; }

.fa-foursquare:before {
  content: "\f180"; }

.fa-free-code-camp:before {
  content: "\f2c5"; }

.fa-freebsd:before {
  content: "\f3a4"; }

.fa-frog:before {
  content: "\f52e"; }

.fa-frown:before {
  content: "\f119"; }

.fa-frown-open:before {
  content: "\f57a"; }

.fa-fulcrum:before {
  content: "\f50b"; }

.fa-funnel-dollar:before {
  content: "\f662"; }

.fa-futbol:before {
  content: "\f1e3"; }

.fa-galactic-republic:before {
  content: "\f50c"; }

.fa-galactic-senate:before {
  content: "\f50d"; }

.fa-gamepad:before {
  content: "\f11b"; }

.fa-gas-pump:before {
  content: "\f52f"; }

.fa-gavel:before {
  content: "\f0e3"; }

.fa-gem:before {
  content: "\f3a5"; }

.fa-genderless:before {
  content: "\f22d"; }

.fa-get-pocket:before {
  content: "\f265"; }

.fa-gg:before {
  content: "\f260"; }

.fa-gg-circle:before {
  content: "\f261"; }

.fa-ghost:before {
  content: "\f6e2"; }

.fa-gift:before {
  content: "\f06b"; }

.fa-gifts:before {
  content: "\f79c"; }

.fa-git:before {
  content: "\f1d3"; }

.fa-git-alt:before {
  content: "\f841"; }

.fa-git-square:before {
  content: "\f1d2"; }

.fa-github:before {
  content: "\f09b"; }

.fa-github-alt:before {
  content: "\f113"; }

.fa-github-square:before {
  content: "\f092"; }

.fa-gitkraken:before {
  content: "\f3a6"; }

.fa-gitlab:before {
  content: "\f296"; }

.fa-gitter:before {
  content: "\f426"; }

.fa-glass-cheers:before {
  content: "\f79f"; }

.fa-glass-martini:before {
  content: "\f000"; }

.fa-glass-martini-alt:before {
  content: "\f57b"; }

.fa-glass-whiskey:before {
  content: "\f7a0"; }

.fa-glasses:before {
  content: "\f530"; }

.fa-glide:before {
  content: "\f2a5"; }

.fa-glide-g:before {
  content: "\f2a6"; }

.fa-globe:before {
  content: "\f0ac"; }

.fa-globe-africa:before {
  content: "\f57c"; }

.fa-globe-americas:before {
  content: "\f57d"; }

.fa-globe-asia:before {
  content: "\f57e"; }

.fa-globe-europe:before {
  content: "\f7a2"; }

.fa-gofore:before {
  content: "\f3a7"; }

.fa-golf-ball:before {
  content: "\f450"; }

.fa-goodreads:before {
  content: "\f3a8"; }

.fa-goodreads-g:before {
  content: "\f3a9"; }

.fa-google:before {
  content: "\f1a0"; }

.fa-google-drive:before {
  content: "\f3aa"; }

.fa-google-pay:before {
  content: "\e079"; }

.fa-google-play:before {
  content: "\f3ab"; }

.fa-google-plus:before {
  content: "\f2b3"; }

.fa-google-plus-g:before {
  content: "\f0d5"; }

.fa-google-plus-square:before {
  content: "\f0d4"; }

.fa-google-wallet:before {
  content: "\f1ee"; }

.fa-gopuram:before {
  content: "\f664"; }

.fa-graduation-cap:before {
  content: "\f19d"; }

.fa-gratipay:before {
  content: "\f184"; }

.fa-grav:before {
  content: "\f2d6"; }

.fa-greater-than:before {
  content: "\f531"; }

.fa-greater-than-equal:before {
  content: "\f532"; }

.fa-grimace:before {
  content: "\f57f"; }

.fa-grin:before {
  content: "\f580"; }

.fa-grin-alt:before {
  content: "\f581"; }

.fa-grin-beam:before {
  content: "\f582"; }

.fa-grin-beam-sweat:before {
  content: "\f583"; }

.fa-grin-hearts:before {
  content: "\f584"; }

.fa-grin-squint:before {
  content: "\f585"; }

.fa-grin-squint-tears:before {
  content: "\f586"; }

.fa-grin-stars:before {
  content: "\f587"; }

.fa-grin-tears:before {
  content: "\f588"; }

.fa-grin-tongue:before {
  content: "\f589"; }

.fa-grin-tongue-squint:before {
  content: "\f58a"; }

.fa-grin-tongue-wink:before {
  content: "\f58b"; }

.fa-grin-wink:before {
  content: "\f58c"; }

.fa-grip-horizontal:before {
  content: "\f58d"; }

.fa-grip-lines:before {
  content: "\f7a4"; }

.fa-grip-lines-vertical:before {
  content: "\f7a5"; }

.fa-grip-vertical:before {
  content: "\f58e"; }

.fa-gripfire:before {
  content: "\f3ac"; }

.fa-grunt:before {
  content: "\f3ad"; }

.fa-guilded:before {
  content: "\e07e"; }

.fa-guitar:before {
  content: "\f7a6"; }

.fa-gulp:before {
  content: "\f3ae"; }

.fa-h-square:before {
  content: "\f0fd"; }

.fa-hacker-news:before {
  content: "\f1d4"; }

.fa-hacker-news-square:before {
  content: "\f3af"; }

.fa-hackerrank:before {
  content: "\f5f7"; }

.fa-hamburger:before {
  content: "\f805"; }

.fa-hammer:before {
  content: "\f6e3"; }

.fa-hamsa:before {
  content: "\f665"; }

.fa-hand-holding:before {
  content: "\f4bd"; }

.fa-hand-holding-heart:before {
  content: "\f4be"; }

.fa-hand-holding-medical:before {
  content: "\e05c"; }

.fa-hand-holding-usd:before {
  content: "\f4c0"; }

.fa-hand-holding-water:before {
  content: "\f4c1"; }

.fa-hand-lizard:before {
  content: "\f258"; }

.fa-hand-middle-finger:before {
  content: "\f806"; }

.fa-hand-paper:before {
  content: "\f256"; }

.fa-hand-peace:before {
  content: "\f25b"; }

.fa-hand-point-down:before {
  content: "\f0a7"; }

.fa-hand-point-left:before {
  content: "\f0a5"; }

.fa-hand-point-right:before {
  content: "\f0a4"; }

.fa-hand-point-up:before {
  content: "\f0a6"; }

.fa-hand-pointer:before {
  content: "\f25a"; }

.fa-hand-rock:before {
  content: "\f255"; }

.fa-hand-scissors:before {
  content: "\f257"; }

.fa-hand-sparkles:before {
  content: "\e05d"; }

.fa-hand-spock:before {
  content: "\f259"; }

.fa-hands:before {
  content: "\f4c2"; }

.fa-hands-helping:before {
  content: "\f4c4"; }

.fa-hands-wash:before {
  content: "\e05e"; }

.fa-handshake:before {
  content: "\f2b5"; }

.fa-handshake-alt-slash:before {
  content: "\e05f"; }

.fa-handshake-slash:before {
  content: "\e060"; }

.fa-hanukiah:before {
  content: "\f6e6"; }

.fa-hard-hat:before {
  content: "\f807"; }

.fa-hashtag:before {
  content: "\f292"; }

.fa-hat-cowboy:before {
  content: "\f8c0"; }

.fa-hat-cowboy-side:before {
  content: "\f8c1"; }

.fa-hat-wizard:before {
  content: "\f6e8"; }

.fa-hdd:before {
  content: "\f0a0"; }

.fa-head-side-cough:before {
  content: "\e061"; }

.fa-head-side-cough-slash:before {
  content: "\e062"; }

.fa-head-side-mask:before {
  content: "\e063"; }

.fa-head-side-virus:before {
  content: "\e064"; }

.fa-heading:before {
  content: "\f1dc"; }

.fa-headphones:before {
  content: "\f025"; }

.fa-headphones-alt:before {
  content: "\f58f"; }

.fa-headset:before {
  content: "\f590"; }

.fa-heart:before {
  content: "\f004"; }

.fa-heart-broken:before {
  content: "\f7a9"; }

.fa-heartbeat:before {
  content: "\f21e"; }

.fa-helicopter:before {
  content: "\f533"; }

.fa-highlighter:before {
  content: "\f591"; }

.fa-hiking:before {
  content: "\f6ec"; }

.fa-hippo:before {
  content: "\f6ed"; }

.fa-hips:before {
  content: "\f452"; }

.fa-hire-a-helper:before {
  content: "\f3b0"; }

.fa-history:before {
  content: "\f1da"; }

.fa-hive:before {
  content: "\e07f"; }

.fa-hockey-puck:before {
  content: "\f453"; }

.fa-holly-berry:before {
  content: "\f7aa"; }

.fa-home:before {
  content: "\f015"; }

.fa-hooli:before {
  content: "\f427"; }

.fa-hornbill:before {
  content: "\f592"; }

.fa-horse:before {
  content: "\f6f0"; }

.fa-horse-head:before {
  content: "\f7ab"; }

.fa-hospital:before {
  content: "\f0f8"; }

.fa-hospital-alt:before {
  content: "\f47d"; }

.fa-hospital-symbol:before {
  content: "\f47e"; }

.fa-hospital-user:before {
  content: "\f80d"; }

.fa-hot-tub:before {
  content: "\f593"; }

.fa-hotdog:before {
  content: "\f80f"; }

.fa-hotel:before {
  content: "\f594"; }

.fa-hotjar:before {
  content: "\f3b1"; }

.fa-hourglass:before {
  content: "\f254"; }

.fa-hourglass-end:before {
  content: "\f253"; }

.fa-hourglass-half:before {
  content: "\f252"; }

.fa-hourglass-start:before {
  content: "\f251"; }

.fa-house-damage:before {
  content: "\f6f1"; }

.fa-house-user:before {
  content: "\e065"; }

.fa-houzz:before {
  content: "\f27c"; }

.fa-hryvnia:before {
  content: "\f6f2"; }

.fa-html5:before {
  content: "\f13b"; }

.fa-hubspot:before {
  content: "\f3b2"; }

.fa-i-cursor:before {
  content: "\f246"; }

.fa-ice-cream:before {
  content: "\f810"; }

.fa-icicles:before {
  content: "\f7ad"; }

.fa-icons:before {
  content: "\f86d"; }

.fa-id-badge:before {
  content: "\f2c1"; }

.fa-id-card:before {
  content: "\f2c2"; }

.fa-id-card-alt:before {
  content: "\f47f"; }

.fa-ideal:before {
  content: "\e013"; }

.fa-igloo:before {
  content: "\f7ae"; }

.fa-image:before {
  content: "\f03e"; }

.fa-images:before {
  content: "\f302"; }

.fa-imdb:before {
  content: "\f2d8"; }

.fa-inbox:before {
  content: "\f01c"; }

.fa-indent:before {
  content: "\f03c"; }

.fa-industry:before {
  content: "\f275"; }

.fa-infinity:before {
  content: "\f534"; }

.fa-info:before {
  content: "\f129"; }

.fa-info-circle:before {
  content: "\f05a"; }

.fa-innosoft:before {
  content: "\e080"; }

.fa-instagram:before {
  content: "\f16d"; }

.fa-instagram-square:before {
  content: "\e055"; }

.fa-instalod:before {
  content: "\e081"; }

.fa-intercom:before {
  content: "\f7af"; }

.fa-internet-explorer:before {
  content: "\f26b"; }

.fa-invision:before {
  content: "\f7b0"; }

.fa-ioxhost:before {
  content: "\f208"; }

.fa-italic:before {
  content: "\f033"; }

.fa-itch-io:before {
  content: "\f83a"; }

.fa-itunes:before {
  content: "\f3b4"; }

.fa-itunes-note:before {
  content: "\f3b5"; }

.fa-java:before {
  content: "\f4e4"; }

.fa-jedi:before {
  content: "\f669"; }

.fa-jedi-order:before {
  content: "\f50e"; }

.fa-jenkins:before {
  content: "\f3b6"; }

.fa-jira:before {
  content: "\f7b1"; }

.fa-joget:before {
  content: "\f3b7"; }

.fa-joint:before {
  content: "\f595"; }

.fa-joomla:before {
  content: "\f1aa"; }

.fa-journal-whills:before {
  content: "\f66a"; }

.fa-js:before {
  content: "\f3b8"; }

.fa-js-square:before {
  content: "\f3b9"; }

.fa-jsfiddle:before {
  content: "\f1cc"; }

.fa-kaaba:before {
  content: "\f66b"; }

.fa-kaggle:before {
  content: "\f5fa"; }

.fa-key:before {
  content: "\f084"; }

.fa-keybase:before {
  content: "\f4f5"; }

.fa-keyboard:before {
  content: "\f11c"; }

.fa-keycdn:before {
  content: "\f3ba"; }

.fa-khanda:before {
  content: "\f66d"; }

.fa-kickstarter:before {
  content: "\f3bb"; }

.fa-kickstarter-k:before {
  content: "\f3bc"; }

.fa-kiss:before {
  content: "\f596"; }

.fa-kiss-beam:before {
  content: "\f597"; }

.fa-kiss-wink-heart:before {
  content: "\f598"; }

.fa-kiwi-bird:before {
  content: "\f535"; }

.fa-korvue:before {
  content: "\f42f"; }

.fa-landmark:before {
  content: "\f66f"; }

.fa-language:before {
  content: "\f1ab"; }

.fa-laptop:before {
  content: "\f109"; }

.fa-laptop-code:before {
  content: "\f5fc"; }

.fa-laptop-house:before {
  content: "\e066"; }

.fa-laptop-medical:before {
  content: "\f812"; }

.fa-laravel:before {
  content: "\f3bd"; }

.fa-lastfm:before {
  content: "\f202"; }

.fa-lastfm-square:before {
  content: "\f203"; }

.fa-laugh:before {
  content: "\f599"; }

.fa-laugh-beam:before {
  content: "\f59a"; }

.fa-laugh-squint:before {
  content: "\f59b"; }

.fa-laugh-wink:before {
  content: "\f59c"; }

.fa-layer-group:before {
  content: "\f5fd"; }

.fa-leaf:before {
  content: "\f06c"; }

.fa-leanpub:before {
  content: "\f212"; }

.fa-lemon:before {
  content: "\f094"; }

.fa-less:before {
  content: "\f41d"; }

.fa-less-than:before {
  content: "\f536"; }

.fa-less-than-equal:before {
  content: "\f537"; }

.fa-level-down-alt:before {
  content: "\f3be"; }

.fa-level-up-alt:before {
  content: "\f3bf"; }

.fa-life-ring:before {
  content: "\f1cd"; }

.fa-lightbulb:before {
  content: "\f0eb"; }

.fa-line:before {
  content: "\f3c0"; }

.fa-link:before {
  content: "\f0c1"; }

.fa-linkedin:before {
  content: "\f08c"; }

.fa-linkedin-in:before {
  content: "\f0e1"; }

.fa-linode:before {
  content: "\f2b8"; }

.fa-linux:before {
  content: "\f17c"; }

.fa-lira-sign:before {
  content: "\f195"; }

.fa-list:before {
  content: "\f03a"; }

.fa-list-alt:before {
  content: "\f022"; }

.fa-list-ol:before {
  content: "\f0cb"; }

.fa-list-ul:before {
  content: "\f0ca"; }

.fa-location-arrow:before {
  content: "\f124"; }

.fa-lock:before {
  content: "\f023"; }

.fa-lock-open:before {
  content: "\f3c1"; }

.fa-long-arrow-alt-down:before {
  content: "\f309"; }

.fa-long-arrow-alt-left:before {
  content: "\f30a"; }

.fa-long-arrow-alt-right:before {
  content: "\f30b"; }

.fa-long-arrow-alt-up:before {
  content: "\f30c"; }

.fa-low-vision:before {
  content: "\f2a8"; }

.fa-luggage-cart:before {
  content: "\f59d"; }

.fa-lungs:before {
  content: "\f604"; }

.fa-lungs-virus:before {
  content: "\e067"; }

.fa-lyft:before {
  content: "\f3c3"; }

.fa-magento:before {
  content: "\f3c4"; }

.fa-magic:before {
  content: "\f0d0"; }

.fa-magnet:before {
  content: "\f076"; }

.fa-mail-bulk:before {
  content: "\f674"; }

.fa-mailchimp:before {
  content: "\f59e"; }

.fa-male:before {
  content: "\f183"; }

.fa-mandalorian:before {
  content: "\f50f"; }

.fa-map:before {
  content: "\f279"; }

.fa-map-marked:before {
  content: "\f59f"; }

.fa-map-marked-alt:before {
  content: "\f5a0"; }

.fa-map-marker:before {
  content: "\f041"; }

.fa-map-marker-alt:before {
  content: "\f3c5"; }

.fa-map-pin:before {
  content: "\f276"; }

.fa-map-signs:before {
  content: "\f277"; }

.fa-markdown:before {
  content: "\f60f"; }

.fa-marker:before {
  content: "\f5a1"; }

.fa-mars:before {
  content: "\f222"; }

.fa-mars-double:before {
  content: "\f227"; }

.fa-mars-stroke:before {
  content: "\f229"; }

.fa-mars-stroke-h:before {
  content: "\f22b"; }

.fa-mars-stroke-v:before {
  content: "\f22a"; }

.fa-mask:before {
  content: "\f6fa"; }

.fa-mastodon:before {
  content: "\f4f6"; }

.fa-maxcdn:before {
  content: "\f136"; }

.fa-mdb:before {
  content: "\f8ca"; }

.fa-medal:before {
  content: "\f5a2"; }

.fa-medapps:before {
  content: "\f3c6"; }

.fa-medium:before {
  content: "\f23a"; }

.fa-medium-m:before {
  content: "\f3c7"; }

.fa-medkit:before {
  content: "\f0fa"; }

.fa-medrt:before {
  content: "\f3c8"; }

.fa-meetup:before {
  content: "\f2e0"; }

.fa-megaport:before {
  content: "\f5a3"; }

.fa-meh:before {
  content: "\f11a"; }

.fa-meh-blank:before {
  content: "\f5a4"; }

.fa-meh-rolling-eyes:before {
  content: "\f5a5"; }

.fa-memory:before {
  content: "\f538"; }

.fa-mendeley:before {
  content: "\f7b3"; }

.fa-menorah:before {
  content: "\f676"; }

.fa-mercury:before {
  content: "\f223"; }

.fa-meteor:before {
  content: "\f753"; }

.fa-microblog:before {
  content: "\e01a"; }

.fa-microchip:before {
  content: "\f2db"; }

.fa-microphone:before {
  content: "\f130"; }

.fa-microphone-alt:before {
  content: "\f3c9"; }

.fa-microphone-alt-slash:before {
  content: "\f539"; }

.fa-microphone-slash:before {
  content: "\f131"; }

.fa-microscope:before {
  content: "\f610"; }

.fa-microsoft:before {
  content: "\f3ca"; }

.fa-minus:before {
  content: "\f068"; }

.fa-minus-circle:before {
  content: "\f056"; }

.fa-minus-square:before {
  content: "\f146"; }

.fa-mitten:before {
  content: "\f7b5"; }

.fa-mix:before {
  content: "\f3cb"; }

.fa-mixcloud:before {
  content: "\f289"; }

.fa-mixer:before {
  content: "\e056"; }

.fa-mizuni:before {
  content: "\f3cc"; }

.fa-mobile:before {
  content: "\f10b"; }

.fa-mobile-alt:before {
  content: "\f3cd"; }

.fa-modx:before {
  content: "\f285"; }

.fa-monero:before {
  content: "\f3d0"; }

.fa-money-bill:before {
  content: "\f0d6"; }

.fa-money-bill-alt:before {
  content: "\f3d1"; }

.fa-money-bill-wave:before {
  content: "\f53a"; }

.fa-money-bill-wave-alt:before {
  content: "\f53b"; }

.fa-money-check:before {
  content: "\f53c"; }

.fa-money-check-alt:before {
  content: "\f53d"; }

.fa-monument:before {
  content: "\f5a6"; }

.fa-moon:before {
  content: "\f186"; }

.fa-mortar-pestle:before {
  content: "\f5a7"; }

.fa-mosque:before {
  content: "\f678"; }

.fa-motorcycle:before {
  content: "\f21c"; }

.fa-mountain:before {
  content: "\f6fc"; }

.fa-mouse:before {
  content: "\f8cc"; }

.fa-mouse-pointer:before {
  content: "\f245"; }

.fa-mug-hot:before {
  content: "\f7b6"; }

.fa-music:before {
  content: "\f001"; }

.fa-napster:before {
  content: "\f3d2"; }

.fa-neos:before {
  content: "\f612"; }

.fa-network-wired:before {
  content: "\f6ff"; }

.fa-neuter:before {
  content: "\f22c"; }

.fa-newspaper:before {
  content: "\f1ea"; }

.fa-nimblr:before {
  content: "\f5a8"; }

.fa-node:before {
  content: "\f419"; }

.fa-node-js:before {
  content: "\f3d3"; }

.fa-not-equal:before {
  content: "\f53e"; }

.fa-notes-medical:before {
  content: "\f481"; }

.fa-npm:before {
  content: "\f3d4"; }

.fa-ns8:before {
  content: "\f3d5"; }

.fa-nutritionix:before {
  content: "\f3d6"; }

.fa-object-group:before {
  content: "\f247"; }

.fa-object-ungroup:before {
  content: "\f248"; }

.fa-octopus-deploy:before {
  content: "\e082"; }

.fa-odnoklassniki:before {
  content: "\f263"; }

.fa-odnoklassniki-square:before {
  content: "\f264"; }

.fa-oil-can:before {
  content: "\f613"; }

.fa-old-republic:before {
  content: "\f510"; }

.fa-om:before {
  content: "\f679"; }

.fa-opencart:before {
  content: "\f23d"; }

.fa-openid:before {
  content: "\f19b"; }

.fa-opera:before {
  content: "\f26a"; }

.fa-optin-monster:before {
  content: "\f23c"; }

.fa-orcid:before {
  content: "\f8d2"; }

.fa-osi:before {
  content: "\f41a"; }

.fa-otter:before {
  content: "\f700"; }

.fa-outdent:before {
  content: "\f03b"; }

.fa-page4:before {
  content: "\f3d7"; }

.fa-pagelines:before {
  content: "\f18c"; }

.fa-pager:before {
  content: "\f815"; }

.fa-paint-brush:before {
  content: "\f1fc"; }

.fa-paint-roller:before {
  content: "\f5aa"; }

.fa-palette:before {
  content: "\f53f"; }

.fa-palfed:before {
  content: "\f3d8"; }

.fa-pallet:before {
  content: "\f482"; }

.fa-paper-plane:before {
  content: "\f1d8"; }

.fa-paperclip:before {
  content: "\f0c6"; }

.fa-parachute-box:before {
  content: "\f4cd"; }

.fa-paragraph:before {
  content: "\f1dd"; }

.fa-parking:before {
  content: "\f540"; }

.fa-passport:before {
  content: "\f5ab"; }

.fa-pastafarianism:before {
  content: "\f67b"; }

.fa-paste:before {
  content: "\f0ea"; }

.fa-patreon:before {
  content: "\f3d9"; }

.fa-pause:before {
  content: "\f04c"; }

.fa-pause-circle:before {
  content: "\f28b"; }

.fa-paw:before {
  content: "\f1b0"; }

.fa-paypal:before {
  content: "\f1ed"; }

.fa-peace:before {
  content: "\f67c"; }

.fa-pen:before {
  content: "\f304"; }

.fa-pen-alt:before {
  content: "\f305"; }

.fa-pen-fancy:before {
  content: "\f5ac"; }

.fa-pen-nib:before {
  content: "\f5ad"; }

.fa-pen-square:before {
  content: "\f14b"; }

.fa-pencil-alt:before {
  content: "\f303"; }

.fa-pencil-ruler:before {
  content: "\f5ae"; }

.fa-penny-arcade:before {
  content: "\f704"; }

.fa-people-arrows:before {
  content: "\e068"; }

.fa-people-carry:before {
  content: "\f4ce"; }

.fa-pepper-hot:before {
  content: "\f816"; }

.fa-perbyte:before {
  content: "\e083"; }

.fa-percent:before {
  content: "\f295"; }

.fa-percentage:before {
  content: "\f541"; }

.fa-periscope:before {
  content: "\f3da"; }

.fa-person-booth:before {
  content: "\f756"; }

.fa-phabricator:before {
  content: "\f3db"; }

.fa-phoenix-framework:before {
  content: "\f3dc"; }

.fa-phoenix-squadron:before {
  content: "\f511"; }

.fa-phone:before {
  content: "\f095"; }

.fa-phone-alt:before {
  content: "\f879"; }

.fa-phone-slash:before {
  content: "\f3dd"; }

.fa-phone-square:before {
  content: "\f098"; }

.fa-phone-square-alt:before {
  content: "\f87b"; }

.fa-phone-volume:before {
  content: "\f2a0"; }

.fa-photo-video:before {
  content: "\f87c"; }

.fa-php:before {
  content: "\f457"; }

.fa-pied-piper:before {
  content: "\f2ae"; }

.fa-pied-piper-alt:before {
  content: "\f1a8"; }

.fa-pied-piper-hat:before {
  content: "\f4e5"; }

.fa-pied-piper-pp:before {
  content: "\f1a7"; }

.fa-pied-piper-square:before {
  content: "\e01e"; }

.fa-piggy-bank:before {
  content: "\f4d3"; }

.fa-pills:before {
  content: "\f484"; }

.fa-pinterest:before {
  content: "\f0d2"; }

.fa-pinterest-p:before {
  content: "\f231"; }

.fa-pinterest-square:before {
  content: "\f0d3"; }

.fa-pizza-slice:before {
  content: "\f818"; }

.fa-place-of-worship:before {
  content: "\f67f"; }

.fa-plane:before {
  content: "\f072"; }

.fa-plane-arrival:before {
  content: "\f5af"; }

.fa-plane-departure:before {
  content: "\f5b0"; }

.fa-plane-slash:before {
  content: "\e069"; }

.fa-play:before {
  content: "\f04b"; }

.fa-play-circle:before {
  content: "\f144"; }

.fa-playstation:before {
  content: "\f3df"; }

.fa-plug:before {
  content: "\f1e6"; }

.fa-plus:before {
  content: "\f067"; }

.fa-plus-circle:before {
  content: "\f055"; }

.fa-plus-square:before {
  content: "\f0fe"; }

.fa-podcast:before {
  content: "\f2ce"; }

.fa-poll:before {
  content: "\f681"; }

.fa-poll-h:before {
  content: "\f682"; }

.fa-poo:before {
  content: "\f2fe"; }

.fa-poo-storm:before {
  content: "\f75a"; }

.fa-poop:before {
  content: "\f619"; }

.fa-portrait:before {
  content: "\f3e0"; }

.fa-pound-sign:before {
  content: "\f154"; }

.fa-power-off:before {
  content: "\f011"; }

.fa-pray:before {
  content: "\f683"; }

.fa-praying-hands:before {
  content: "\f684"; }

.fa-prescription:before {
  content: "\f5b1"; }

.fa-prescription-bottle:before {
  content: "\f485"; }

.fa-prescription-bottle-alt:before {
  content: "\f486"; }

.fa-print:before {
  content: "\f02f"; }

.fa-procedures:before {
  content: "\f487"; }

.fa-product-hunt:before {
  content: "\f288"; }

.fa-project-diagram:before {
  content: "\f542"; }

.fa-pump-medical:before {
  content: "\e06a"; }

.fa-pump-soap:before {
  content: "\e06b"; }

.fa-pushed:before {
  content: "\f3e1"; }

.fa-puzzle-piece:before {
  content: "\f12e"; }

.fa-python:before {
  content: "\f3e2"; }

.fa-qq:before {
  content: "\f1d6"; }

.fa-qrcode:before {
  content: "\f029"; }

.fa-question:before {
  content: "\f128"; }

.fa-question-circle:before {
  content: "\f059"; }

.fa-quidditch:before {
  content: "\f458"; }

.fa-quinscape:before {
  content: "\f459"; }

.fa-quora:before {
  content: "\f2c4"; }

.fa-quote-left:before {
  content: "\f10d"; }

.fa-quote-right:before {
  content: "\f10e"; }

.fa-quran:before {
  content: "\f687"; }

.fa-r-project:before {
  content: "\f4f7"; }

.fa-radiation:before {
  content: "\f7b9"; }

.fa-radiation-alt:before {
  content: "\f7ba"; }

.fa-rainbow:before {
  content: "\f75b"; }

.fa-random:before {
  content: "\f074"; }

.fa-raspberry-pi:before {
  content: "\f7bb"; }

.fa-ravelry:before {
  content: "\f2d9"; }

.fa-react:before {
  content: "\f41b"; }

.fa-reacteurope:before {
  content: "\f75d"; }

.fa-readme:before {
  content: "\f4d5"; }

.fa-rebel:before {
  content: "\f1d0"; }

.fa-receipt:before {
  content: "\f543"; }

.fa-record-vinyl:before {
  content: "\f8d9"; }

.fa-recycle:before {
  content: "\f1b8"; }

.fa-red-river:before {
  content: "\f3e3"; }

.fa-reddit:before {
  content: "\f1a1"; }

.fa-reddit-alien:before {
  content: "\f281"; }

.fa-reddit-square:before {
  content: "\f1a2"; }

.fa-redhat:before {
  content: "\f7bc"; }

.fa-redo:before {
  content: "\f01e"; }

.fa-redo-alt:before {
  content: "\f2f9"; }

.fa-registered:before {
  content: "\f25d"; }

.fa-remove-format:before {
  content: "\f87d"; }

.fa-renren:before {
  content: "\f18b"; }

.fa-reply:before {
  content: "\f3e5"; }

.fa-reply-all:before {
  content: "\f122"; }

.fa-replyd:before {
  content: "\f3e6"; }

.fa-republican:before {
  content: "\f75e"; }

.fa-researchgate:before {
  content: "\f4f8"; }

.fa-resolving:before {
  content: "\f3e7"; }

.fa-restroom:before {
  content: "\f7bd"; }

.fa-retweet:before {
  content: "\f079"; }

.fa-rev:before {
  content: "\f5b2"; }

.fa-ribbon:before {
  content: "\f4d6"; }

.fa-ring:before {
  content: "\f70b"; }

.fa-road:before {
  content: "\f018"; }

.fa-robot:before {
  content: "\f544"; }

.fa-rocket:before {
  content: "\f135"; }

.fa-rocketchat:before {
  content: "\f3e8"; }

.fa-rockrms:before {
  content: "\f3e9"; }

.fa-route:before {
  content: "\f4d7"; }

.fa-rss:before {
  content: "\f09e"; }

.fa-rss-square:before {
  content: "\f143"; }

.fa-ruble-sign:before {
  content: "\f158"; }

.fa-ruler:before {
  content: "\f545"; }

.fa-ruler-combined:before {
  content: "\f546"; }

.fa-ruler-horizontal:before {
  content: "\f547"; }

.fa-ruler-vertical:before {
  content: "\f548"; }

.fa-running:before {
  content: "\f70c"; }

.fa-rupee-sign:before {
  content: "\f156"; }

.fa-rust:before {
  content: "\e07a"; }

.fa-sad-cry:before {
  content: "\f5b3"; }

.fa-sad-tear:before {
  content: "\f5b4"; }

.fa-safari:before {
  content: "\f267"; }

.fa-salesforce:before {
  content: "\f83b"; }

.fa-sass:before {
  content: "\f41e"; }

.fa-satellite:before {
  content: "\f7bf"; }

.fa-satellite-dish:before {
  content: "\f7c0"; }

.fa-save:before {
  content: "\f0c7"; }

.fa-schlix:before {
  content: "\f3ea"; }

.fa-school:before {
  content: "\f549"; }

.fa-screwdriver:before {
  content: "\f54a"; }

.fa-scribd:before {
  content: "\f28a"; }

.fa-scroll:before {
  content: "\f70e"; }

.fa-sd-card:before {
  content: "\f7c2"; }

.fa-search:before {
  content: "\f002"; }

.fa-search-dollar:before {
  content: "\f688"; }

.fa-search-location:before {
  content: "\f689"; }

.fa-search-minus:before {
  content: "\f010"; }

.fa-search-plus:before {
  content: "\f00e"; }

.fa-searchengin:before {
  content: "\f3eb"; }

.fa-seedling:before {
  content: "\f4d8"; }

.fa-sellcast:before {
  content: "\f2da"; }

.fa-sellsy:before {
  content: "\f213"; }

.fa-server:before {
  content: "\f233"; }

.fa-servicestack:before {
  content: "\f3ec"; }

.fa-shapes:before {
  content: "\f61f"; }

.fa-share:before {
  content: "\f064"; }

.fa-share-alt:before {
  content: "\f1e0"; }

.fa-share-alt-square:before {
  content: "\f1e1"; }

.fa-share-square:before {
  content: "\f14d"; }

.fa-shekel-sign:before {
  content: "\f20b"; }

.fa-shield-alt:before {
  content: "\f3ed"; }

.fa-shield-virus:before {
  content: "\e06c"; }

.fa-ship:before {
  content: "\f21a"; }

.fa-shipping-fast:before {
  content: "\f48b"; }

.fa-shirtsinbulk:before {
  content: "\f214"; }

.fa-shoe-prints:before {
  content: "\f54b"; }

.fa-shopify:before {
  content: "\e057"; }

.fa-shopping-bag:before {
  content: "\f290"; }

.fa-shopping-basket:before {
  content: "\f291"; }

.fa-shopping-cart:before {
  content: "\f07a"; }

.fa-shopware:before {
  content: "\f5b5"; }

.fa-shower:before {
  content: "\f2cc"; }

.fa-shuttle-van:before {
  content: "\f5b6"; }

.fa-sign:before {
  content: "\f4d9"; }

.fa-sign-in-alt:before {
  content: "\f2f6"; }

.fa-sign-language:before {
  content: "\f2a7"; }

.fa-sign-out-alt:before {
  content: "\f2f5"; }

.fa-signal:before {
  content: "\f012"; }

.fa-signature:before {
  content: "\f5b7"; }

.fa-sim-card:before {
  content: "\f7c4"; }

.fa-simplybuilt:before {
  content: "\f215"; }

.fa-sink:before {
  content: "\e06d"; }

.fa-sistrix:before {
  content: "\f3ee"; }

.fa-sitemap:before {
  content: "\f0e8"; }

.fa-sith:before {
  content: "\f512"; }

.fa-skating:before {
  content: "\f7c5"; }

.fa-sketch:before {
  content: "\f7c6"; }

.fa-skiing:before {
  content: "\f7c9"; }

.fa-skiing-nordic:before {
  content: "\f7ca"; }

.fa-skull:before {
  content: "\f54c"; }

.fa-skull-crossbones:before {
  content: "\f714"; }

.fa-skyatlas:before {
  content: "\f216"; }

.fa-skype:before {
  content: "\f17e"; }

.fa-slack:before {
  content: "\f198"; }

.fa-slack-hash:before {
  content: "\f3ef"; }

.fa-slash:before {
  content: "\f715"; }

.fa-sleigh:before {
  content: "\f7cc"; }

.fa-sliders-h:before {
  content: "\f1de"; }

.fa-slideshare:before {
  content: "\f1e7"; }

.fa-smile:before {
  content: "\f118"; }

.fa-smile-beam:before {
  content: "\f5b8"; }

.fa-smile-wink:before {
  content: "\f4da"; }

.fa-smog:before {
  content: "\f75f"; }

.fa-smoking:before {
  content: "\f48d"; }

.fa-smoking-ban:before {
  content: "\f54d"; }

.fa-sms:before {
  content: "\f7cd"; }

.fa-snapchat:before {
  content: "\f2ab"; }

.fa-snapchat-ghost:before {
  content: "\f2ac"; }

.fa-snapchat-square:before {
  content: "\f2ad"; }

.fa-snowboarding:before {
  content: "\f7ce"; }

.fa-snowflake:before {
  content: "\f2dc"; }

.fa-snowman:before {
  content: "\f7d0"; }

.fa-snowplow:before {
  content: "\f7d2"; }

.fa-soap:before {
  content: "\e06e"; }

.fa-socks:before {
  content: "\f696"; }

.fa-solar-panel:before {
  content: "\f5ba"; }

.fa-sort:before {
  content: "\f0dc"; }

.fa-sort-alpha-down:before {
  content: "\f15d"; }

.fa-sort-alpha-down-alt:before {
  content: "\f881"; }

.fa-sort-alpha-up:before {
  content: "\f15e"; }

.fa-sort-alpha-up-alt:before {
  content: "\f882"; }

.fa-sort-amount-down:before {
  content: "\f160"; }

.fa-sort-amount-down-alt:before {
  content: "\f884"; }

.fa-sort-amount-up:before {
  content: "\f161"; }

.fa-sort-amount-up-alt:before {
  content: "\f885"; }

.fa-sort-down:before {
  content: "\f0dd"; }

.fa-sort-numeric-down:before {
  content: "\f162"; }

.fa-sort-numeric-down-alt:before {
  content: "\f886"; }

.fa-sort-numeric-up:before {
  content: "\f163"; }

.fa-sort-numeric-up-alt:before {
  content: "\f887"; }

.fa-sort-up:before {
  content: "\f0de"; }

.fa-soundcloud:before {
  content: "\f1be"; }

.fa-sourcetree:before {
  content: "\f7d3"; }

.fa-spa:before {
  content: "\f5bb"; }

.fa-space-shuttle:before {
  content: "\f197"; }

.fa-speakap:before {
  content: "\f3f3"; }

.fa-speaker-deck:before {
  content: "\f83c"; }

.fa-spell-check:before {
  content: "\f891"; }

.fa-spider:before {
  content: "\f717"; }

.fa-spinner:before {
  content: "\f110"; }

.fa-splotch:before {
  content: "\f5bc"; }

.fa-spotify:before {
  content: "\f1bc"; }

.fa-spray-can:before {
  content: "\f5bd"; }

.fa-square:before {
  content: "\f0c8"; }

.fa-square-full:before {
  content: "\f45c"; }

.fa-square-root-alt:before {
  content: "\f698"; }

.fa-squarespace:before {
  content: "\f5be"; }

.fa-stack-exchange:before {
  content: "\f18d"; }

.fa-stack-overflow:before {
  content: "\f16c"; }

.fa-stackpath:before {
  content: "\f842"; }

.fa-stamp:before {
  content: "\f5bf"; }

.fa-star:before {
  content: "\f005"; }

.fa-star-and-crescent:before {
  content: "\f699"; }

.fa-star-half:before {
  content: "\f089"; }

.fa-star-half-alt:before {
  content: "\f5c0"; }

.fa-star-of-david:before {
  content: "\f69a"; }

.fa-star-of-life:before {
  content: "\f621"; }

.fa-staylinked:before {
  content: "\f3f5"; }

.fa-steam:before {
  content: "\f1b6"; }

.fa-steam-square:before {
  content: "\f1b7"; }

.fa-steam-symbol:before {
  content: "\f3f6"; }

.fa-step-backward:before {
  content: "\f048"; }

.fa-step-forward:before {
  content: "\f051"; }

.fa-stethoscope:before {
  content: "\f0f1"; }

.fa-sticker-mule:before {
  content: "\f3f7"; }

.fa-sticky-note:before {
  content: "\f249"; }

.fa-stop:before {
  content: "\f04d"; }

.fa-stop-circle:before {
  content: "\f28d"; }

.fa-stopwatch:before {
  content: "\f2f2"; }

.fa-stopwatch-20:before {
  content: "\e06f"; }

.fa-store:before {
  content: "\f54e"; }

.fa-store-alt:before {
  content: "\f54f"; }

.fa-store-alt-slash:before {
  content: "\e070"; }

.fa-store-slash:before {
  content: "\e071"; }

.fa-strava:before {
  content: "\f428"; }

.fa-stream:before {
  content: "\f550"; }

.fa-street-view:before {
  content: "\f21d"; }

.fa-strikethrough:before {
  content: "\f0cc"; }

.fa-stripe:before {
  content: "\f429"; }

.fa-stripe-s:before {
  content: "\f42a"; }

.fa-stroopwafel:before {
  content: "\f551"; }

.fa-studiovinari:before {
  content: "\f3f8"; }

.fa-stumbleupon:before {
  content: "\f1a4"; }

.fa-stumbleupon-circle:before {
  content: "\f1a3"; }

.fa-subscript:before {
  content: "\f12c"; }

.fa-subway:before {
  content: "\f239"; }

.fa-suitcase:before {
  content: "\f0f2"; }

.fa-suitcase-rolling:before {
  content: "\f5c1"; }

.fa-sun:before {
  content: "\f185"; }

.fa-superpowers:before {
  content: "\f2dd"; }

.fa-superscript:before {
  content: "\f12b"; }

.fa-supple:before {
  content: "\f3f9"; }

.fa-surprise:before {
  content: "\f5c2"; }

.fa-suse:before {
  content: "\f7d6"; }

.fa-swatchbook:before {
  content: "\f5c3"; }

.fa-swift:before {
  content: "\f8e1"; }

.fa-swimmer:before {
  content: "\f5c4"; }

.fa-swimming-pool:before {
  content: "\f5c5"; }

.fa-symfony:before {
  content: "\f83d"; }

.fa-synagogue:before {
  content: "\f69b"; }

.fa-sync:before {
  content: "\f021"; }

.fa-sync-alt:before {
  content: "\f2f1"; }

.fa-syringe:before {
  content: "\f48e"; }

.fa-table:before {
  content: "\f0ce"; }

.fa-table-tennis:before {
  content: "\f45d"; }

.fa-tablet:before {
  content: "\f10a"; }

.fa-tablet-alt:before {
  content: "\f3fa"; }

.fa-tablets:before {
  content: "\f490"; }

.fa-tachometer-alt:before {
  content: "\f3fd"; }

.fa-tag:before {
  content: "\f02b"; }

.fa-tags:before {
  content: "\f02c"; }

.fa-tape:before {
  content: "\f4db"; }

.fa-tasks:before {
  content: "\f0ae"; }

.fa-taxi:before {
  content: "\f1ba"; }

.fa-teamspeak:before {
  content: "\f4f9"; }

.fa-teeth:before {
  content: "\f62e"; }

.fa-teeth-open:before {
  content: "\f62f"; }

.fa-telegram:before {
  content: "\f2c6"; }

.fa-telegram-plane:before {
  content: "\f3fe"; }

.fa-temperature-high:before {
  content: "\f769"; }

.fa-temperature-low:before {
  content: "\f76b"; }

.fa-tencent-weibo:before {
  content: "\f1d5"; }

.fa-tenge:before {
  content: "\f7d7"; }

.fa-terminal:before {
  content: "\f120"; }

.fa-text-height:before {
  content: "\f034"; }

.fa-text-width:before {
  content: "\f035"; }

.fa-th:before {
  content: "\f00a"; }

.fa-th-large:before {
  content: "\f009"; }

.fa-th-list:before {
  content: "\f00b"; }

.fa-the-red-yeti:before {
  content: "\f69d"; }

.fa-theater-masks:before {
  content: "\f630"; }

.fa-themeco:before {
  content: "\f5c6"; }

.fa-themeisle:before {
  content: "\f2b2"; }

.fa-thermometer:before {
  content: "\f491"; }

.fa-thermometer-empty:before {
  content: "\f2cb"; }

.fa-thermometer-full:before {
  content: "\f2c7"; }

.fa-thermometer-half:before {
  content: "\f2c9"; }

.fa-thermometer-quarter:before {
  content: "\f2ca"; }

.fa-thermometer-three-quarters:before {
  content: "\f2c8"; }

.fa-think-peaks:before {
  content: "\f731"; }

.fa-thumbs-down:before {
  content: "\f165"; }

.fa-thumbs-up:before {
  content: "\f164"; }

.fa-thumbtack:before {
  content: "\f08d"; }

.fa-ticket-alt:before {
  content: "\f3ff"; }

.fa-tiktok:before {
  content: "\e07b"; }

.fa-times:before {
  content: "\f00d"; }

.fa-times-circle:before {
  content: "\f057"; }

.fa-tint:before {
  content: "\f043"; }

.fa-tint-slash:before {
  content: "\f5c7"; }

.fa-tired:before {
  content: "\f5c8"; }

.fa-toggle-off:before {
  content: "\f204"; }

.fa-toggle-on:before {
  content: "\f205"; }

.fa-toilet:before {
  content: "\f7d8"; }

.fa-toilet-paper:before {
  content: "\f71e"; }

.fa-toilet-paper-slash:before {
  content: "\e072"; }

.fa-toolbox:before {
  content: "\f552"; }

.fa-tools:before {
  content: "\f7d9"; }

.fa-tooth:before {
  content: "\f5c9"; }

.fa-torah:before {
  content: "\f6a0"; }

.fa-torii-gate:before {
  content: "\f6a1"; }

.fa-tractor:before {
  content: "\f722"; }

.fa-trade-federation:before {
  content: "\f513"; }

.fa-trademark:before {
  content: "\f25c"; }

.fa-traffic-light:before {
  content: "\f637"; }

.fa-trailer:before {
  content: "\e041"; }

.fa-train:before {
  content: "\f238"; }

.fa-tram:before {
  content: "\f7da"; }

.fa-transgender:before {
  content: "\f224"; }

.fa-transgender-alt:before {
  content: "\f225"; }

.fa-trash:before {
  content: "\f1f8"; }

.fa-trash-alt:before {
  content: "\f2ed"; }

.fa-trash-restore:before {
  content: "\f829"; }

.fa-trash-restore-alt:before {
  content: "\f82a"; }

.fa-tree:before {
  content: "\f1bb"; }

.fa-trello:before {
  content: "\f181"; }

.fa-trophy:before {
  content: "\f091"; }

.fa-truck:before {
  content: "\f0d1"; }

.fa-truck-loading:before {
  content: "\f4de"; }

.fa-truck-monster:before {
  content: "\f63b"; }

.fa-truck-moving:before {
  content: "\f4df"; }

.fa-truck-pickup:before {
  content: "\f63c"; }

.fa-tshirt:before {
  content: "\f553"; }

.fa-tty:before {
  content: "\f1e4"; }

.fa-tumblr:before {
  content: "\f173"; }

.fa-tumblr-square:before {
  content: "\f174"; }

.fa-tv:before {
  content: "\f26c"; }

.fa-twitch:before {
  content: "\f1e8"; }

.fa-twitter:before {
  content: "\f099"; }

.fa-twitter-square:before {
  content: "\f081"; }

.fa-typo3:before {
  content: "\f42b"; }

.fa-uber:before {
  content: "\f402"; }

.fa-ubuntu:before {
  content: "\f7df"; }

.fa-uikit:before {
  content: "\f403"; }

.fa-umbraco:before {
  content: "\f8e8"; }

.fa-umbrella:before {
  content: "\f0e9"; }

.fa-umbrella-beach:before {
  content: "\f5ca"; }

.fa-uncharted:before {
  content: "\e084"; }

.fa-underline:before {
  content: "\f0cd"; }

.fa-undo:before {
  content: "\f0e2"; }

.fa-undo-alt:before {
  content: "\f2ea"; }

.fa-uniregistry:before {
  content: "\f404"; }

.fa-unity:before {
  content: "\e049"; }

.fa-universal-access:before {
  content: "\f29a"; }

.fa-university:before {
  content: "\f19c"; }

.fa-unlink:before {
  content: "\f127"; }

.fa-unlock:before {
  content: "\f09c"; }

.fa-unlock-alt:before {
  content: "\f13e"; }

.fa-unsplash:before {
  content: "\e07c"; }

.fa-untappd:before {
  content: "\f405"; }

.fa-upload:before {
  content: "\f093"; }

.fa-ups:before {
  content: "\f7e0"; }

.fa-usb:before {
  content: "\f287"; }

.fa-user:before {
  content: "\f007"; }

.fa-user-alt:before {
  content: "\f406"; }

.fa-user-alt-slash:before {
  content: "\f4fa"; }

.fa-user-astronaut:before {
  content: "\f4fb"; }

.fa-user-check:before {
  content: "\f4fc"; }

.fa-user-circle:before {
  content: "\f2bd"; }

.fa-user-clock:before {
  content: "\f4fd"; }

.fa-user-cog:before {
  content: "\f4fe"; }

.fa-user-edit:before {
  content: "\f4ff"; }

.fa-user-friends:before {
  content: "\f500"; }

.fa-user-graduate:before {
  content: "\f501"; }

.fa-user-injured:before {
  content: "\f728"; }

.fa-user-lock:before {
  content: "\f502"; }

.fa-user-md:before {
  content: "\f0f0"; }

.fa-user-minus:before {
  content: "\f503"; }

.fa-user-ninja:before {
  content: "\f504"; }

.fa-user-nurse:before {
  content: "\f82f"; }

.fa-user-plus:before {
  content: "\f234"; }

.fa-user-secret:before {
  content: "\f21b"; }

.fa-user-shield:before {
  content: "\f505"; }

.fa-user-slash:before {
  content: "\f506"; }

.fa-user-tag:before {
  content: "\f507"; }

.fa-user-tie:before {
  content: "\f508"; }

.fa-user-times:before {
  content: "\f235"; }

.fa-users:before {
  content: "\f0c0"; }

.fa-users-cog:before {
  content: "\f509"; }

.fa-users-slash:before {
  content: "\e073"; }

.fa-usps:before {
  content: "\f7e1"; }

.fa-ussunnah:before {
  content: "\f407"; }

.fa-utensil-spoon:before {
  content: "\f2e5"; }

.fa-utensils:before {
  content: "\f2e7"; }

.fa-vaadin:before {
  content: "\f408"; }

.fa-vector-square:before {
  content: "\f5cb"; }

.fa-venus:before {
  content: "\f221"; }

.fa-venus-double:before {
  content: "\f226"; }

.fa-venus-mars:before {
  content: "\f228"; }

.fa-vest:before {
  content: "\e085"; }

.fa-vest-patches:before {
  content: "\e086"; }

.fa-viacoin:before {
  content: "\f237"; }

.fa-viadeo:before {
  content: "\f2a9"; }

.fa-viadeo-square:before {
  content: "\f2aa"; }

.fa-vial:before {
  content: "\f492"; }

.fa-vials:before {
  content: "\f493"; }

.fa-viber:before {
  content: "\f409"; }

.fa-video:before {
  content: "\f03d"; }

.fa-video-slash:before {
  content: "\f4e2"; }

.fa-vihara:before {
  content: "\f6a7"; }

.fa-vimeo:before {
  content: "\f40a"; }

.fa-vimeo-square:before {
  content: "\f194"; }

.fa-vimeo-v:before {
  content: "\f27d"; }

.fa-vine:before {
  content: "\f1ca"; }

.fa-virus:before {
  content: "\e074"; }

.fa-virus-slash:before {
  content: "\e075"; }

.fa-viruses:before {
  content: "\e076"; }

.fa-vk:before {
  content: "\f189"; }

.fa-vnv:before {
  content: "\f40b"; }

.fa-voicemail:before {
  content: "\f897"; }

.fa-volleyball-ball:before {
  content: "\f45f"; }

.fa-volume-down:before {
  content: "\f027"; }

.fa-volume-mute:before {
  content: "\f6a9"; }

.fa-volume-off:before {
  content: "\f026"; }

.fa-volume-up:before {
  content: "\f028"; }

.fa-vote-yea:before {
  content: "\f772"; }

.fa-vr-cardboard:before {
  content: "\f729"; }

.fa-vuejs:before {
  content: "\f41f"; }

.fa-walking:before {
  content: "\f554"; }

.fa-wallet:before {
  content: "\f555"; }

.fa-warehouse:before {
  content: "\f494"; }

.fa-watchman-monitoring:before {
  content: "\e087"; }

.fa-water:before {
  content: "\f773"; }

.fa-wave-square:before {
  content: "\f83e"; }

.fa-waze:before {
  content: "\f83f"; }

.fa-weebly:before {
  content: "\f5cc"; }

.fa-weibo:before {
  content: "\f18a"; }

.fa-weight:before {
  content: "\f496"; }

.fa-weight-hanging:before {
  content: "\f5cd"; }

.fa-weixin:before {
  content: "\f1d7"; }

.fa-whatsapp:before {
  content: "\f232"; }

.fa-whatsapp-square:before {
  content: "\f40c"; }

.fa-wheelchair:before {
  content: "\f193"; }

.fa-whmcs:before {
  content: "\f40d"; }

.fa-wifi:before {
  content: "\f1eb"; }

.fa-wikipedia-w:before {
  content: "\f266"; }

.fa-wind:before {
  content: "\f72e"; }

.fa-window-close:before {
  content: "\f410"; }

.fa-window-maximize:before {
  content: "\f2d0"; }

.fa-window-minimize:before {
  content: "\f2d1"; }

.fa-window-restore:before {
  content: "\f2d2"; }

.fa-windows:before {
  content: "\f17a"; }

.fa-wine-bottle:before {
  content: "\f72f"; }

.fa-wine-glass:before {
  content: "\f4e3"; }

.fa-wine-glass-alt:before {
  content: "\f5ce"; }

.fa-wix:before {
  content: "\f5cf"; }

.fa-wizards-of-the-coast:before {
  content: "\f730"; }

.fa-wodu:before {
  content: "\e088"; }

.fa-wolf-pack-battalion:before {
  content: "\f514"; }

.fa-won-sign:before {
  content: "\f159"; }

.fa-wordpress:before {
  content: "\f19a"; }

.fa-wordpress-simple:before {
  content: "\f411"; }

.fa-wpbeginner:before {
  content: "\f297"; }

.fa-wpexplorer:before {
  content: "\f2de"; }

.fa-wpforms:before {
  content: "\f298"; }

.fa-wpressr:before {
  content: "\f3e4"; }

.fa-wrench:before {
  content: "\f0ad"; }

.fa-x-ray:before {
  content: "\f497"; }

.fa-xbox:before {
  content: "\f412"; }

.fa-xing:before {
  content: "\f168"; }

.fa-xing-square:before {
  content: "\f169"; }

.fa-y-combinator:before {
  content: "\f23b"; }

.fa-yahoo:before {
  content: "\f19e"; }

.fa-yammer:before {
  content: "\f840"; }

.fa-yandex:before {
  content: "\f413"; }

.fa-yandex-international:before {
  content: "\f414"; }

.fa-yarn:before {
  content: "\f7e3"; }

.fa-yelp:before {
  content: "\f1e9"; }

.fa-yen-sign:before {
  content: "\f157"; }

.fa-yin-yang:before {
  content: "\f6ad"; }

.fa-yoast:before {
  content: "\f2b1"; }

.fa-youtube:before {
  content: "\f167"; }

.fa-youtube-square:before {
  content: "\f431"; }

.fa-zhihu:before {
  content: "\f63f"; }

.sr-only {
  border: 0;
  clip: rect(0, 0, 0, 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px; }

.sr-only-focusable:active, .sr-only-focusable:focus {
  clip: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  position: static;
  width: auto; }

@font-face {
  font-family: 'Font Awesome 5 Brands';
  font-style: normal;
  font-weight: 400;
  font-display: block;
  src: url(fonts/fa-brands-400.eot);
  src: url(fonts/fa-brands-400.eot?#iefix) format("embedded-opentype"), url(fonts/fa-brands-400.woff2) format("woff2"), url(fonts/fa-brands-400.woff) format("woff"), url(fonts/fa-brands-400.ttf) format("truetype"), url(fonts/fa-brands-400.svg#fontawesome) format("svg"); }

.fab {
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400; }

@font-face {
  font-family: 'Font Awesome 5 Free';
  font-style: normal;
  font-weight: 400;
  font-display: block;
  src: url(fonts/fa-regular-400.eot);
  src: url(fonts/fa-regular-400.eot?#iefix) format("embedded-opentype"), url(fonts/fa-regular-400.woff2) format("woff2"), url(fonts/fa-regular-400.woff) format("woff"), url(fonts/fa-regular-400.ttf) format("truetype"), url(fonts/fa-regular-400.svg#fontawesome) format("svg"); }

.far {
  font-family: 'Font Awesome 5 Free';
  font-weight: 400; }

@font-face {
  font-family: 'Font Awesome 5 Free';
  font-style: normal;
  font-weight: 900;
  font-display: block;
  src: url(fonts/fa-solid-900.eot);
  src: url(fonts/fa-solid-900.eot?#iefix) format("embedded-opentype"), url(fonts/fa-solid-900.woff2) format("woff2"), url(fonts/fa-solid-900.woff) format("woff"), url(fonts/fa-solid-900.ttf) format("truetype"), url(fonts/fa-solid-900.svg#fontawesome) format("svg"); }

.fa,
.fas {
  font-family: 'Font Awesome 5 Free';
  font-weight: 900; }

:root {
    --sans-font: "Ubuntu", Helvetica, Verdana, sans-serif;
    --serif-font: "Merriweather", Georgia, Times, serif;

    --block-border-radius: 15px;
    --button-border-radius: 15px;

    --button-color: #FFF;
    --button-bg-color: #333;
    --button-border: solid 2px #333;
    --button-hover-color: #333;
    --button-hover-bg-color: #FFF;
    --button-hover-border: solid 2px #333;

    --badge-color: rgba(255, 196, 85, 0.91);
}

html, html[theme="light"] {
    --bg-color: #FCFDFF;
    --opposite-bg-color: #282c35;

    --text-color: #333;
    --brighter-text-color: #000;
    --opposite-text-color: #DDD;

    --block-bg-color: #FFF;
    --opposite-block-bg-color: #282c35;
    --block-shadow: 10px 15px 40px rgba(83, 91, 110, 0.11);
    --block-border: none;

    --link-color: #333;
    --link-hover-color: #000;
    --visited-link-color: #333;

    --button-color: #FFF;
    --button-bg-color: #333;
    --button-disabled-bg-color: #DDD;
    --button-border: solid 2px #333;
    --button-hover-color: #333;
    --button-hover-bg-color: #FFF;
    --button-hover-border: solid 2px #333;

    --select-color: #333;
    --select-bg-color: #FFF;

    --input-color: #000;
    --input-bg-color: #fff;
    --input-border-color: #ddd;
    --input-toolbar-bg: #fff;
    --input-toolbar-button-color: #000;
    --input-link: #7f8c8d;
    --input-selection-color: #d7d4f0;
}

html[theme="dark"] {
    --bg-color: #282c35;
    --opposite-bg-color: #FCFDFF;

    --text-color: #DDD;
    --brighter-text-color: #FFF;
    --opposite-text-color: #333;

    --block-bg-color: #1B1B1C;
    --opposite-block-bg-color: #FFF;
    --block-shadow: 0px 0px 0px #000;
    --block-border: solid 1px #FCFDFF;

    --link-color: #DDD;
    --link-hover-color: #FFF;
    --visited-link-color: #737373;

    --button-color: #333;
    --button-bg-color: #FFF;
    --button-disabled-bg-color: #8A8A8A;
    --button-border: solid 2px #FFF;
    --button-hover-color: #FFF;
    --button-hover-bg-color: #333;
    --button-hover-border: solid 2px #FFF;

    --select-color: #333;
    --select-bg-color: #FFF;

    --input-color: #fff;
    --input-bg-color: #373c48;
    --input-border-color: #333;
    --input-toolbar-bg: #252a35;
    --input-toolbar-button-color: #fff;
    --input-link: #b3b6ff;
    --input-selection-color: #978fd8;
}

@media (prefers-color-scheme: dark) {
    html {
        --bg-color: #282c35;
        --opposite-bg-color: #FCFDFF;

        --text-color: #DDD;
        --brighter-text-color: #FFF;
        --opposite-text-color: #333;

        --block-bg-color: #1B1B1C;
        --opposite-block-bg-color: #FFF;
        --block-shadow: 0px 0px 0px #000;
        --block-border: solid 1px #FCFDFF;

        --link-color: #DDD;
        --link-hover-color: #FFF;
        --visited-link-color: #737373;

        --button-color: #333;
        --button-bg-color: #FFF;
        --button-border: solid 2px #FFF;
        --button-hover-color: #FFF;
        --button-hover-bg-color: #333;
        --button-hover-border: solid 2px #FFF;
    }
}

body {
    font-family: var(--sans-font);
    font-size: 15px;
    line-height: 1.42;
    color: var(--text-color);
    background-color: var(--bg-color);
    text-rendering: optimizeSpeed;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

@media only screen and (min-device-width : 768px)
    and (max-device-width : 1024px)
    and (orientation : portrait) {
        body {
            font-size: 14px;
        }
    }

@media only screen and (max-width : 800px) {
        body {
            font-size: 13px;
        }
    }

a {
    color: var(--link-color);
    transition: color linear .1s;
}

a:hover {
        color: var(--link-hover-color);
    }

figure {
    margin: 0;
}

img {
    max-width: 100%;
}

select {
    color: var(--select-color);
    background-color: var(--select-bg-color);
}

h1, h2, h3, h4, h5 {
    scroll-margin-top: 30px;
}

li {
    margin-bottom: 0.8em;
}

h1 > a,
h2 > a,
h3 > a,
h4 > a,
h5 > a {
    text-decoration: none;
}

input[type=text],
input[type=number],
input[type=file],
input[type=email],
input[type=time],
input[type=url],
textarea,
select,
.CodeMirror,
.input-select
{
    -webkit-appearance: none;
    border: none;
    box-shadow: 0 4px 8px -2px rgba(9,30,66,.25),0 0 0 1px rgba(9,30,66,.08);
    outline: none;
    padding: 8px 15px;
    resize: vertical;
    box-sizing: border-box;
    line-height: 1.4em;
    background: var(--input-bg-color);
    border-color: var(--input-border-color);
    color: var(--input-color);
}

input:focus,
    textarea:focus,
    .CodeMirror-focused {
        box-shadow: 0 4px 12px -2px rgba(9,30,66,.45),0 0 0 1px rgba(9,30,66,.32);
    }

.editor-toolbar {
            border: none;
            box-shadow: 0 4px 8px -2px rgba(9,30,66,.25), 0 0 0 1px rgba(9,30,66,.08);
            background: var(--input-toolbar-bg);
        }

.editor-toolbar button {
            color: var(--input-toolbar-button-color);
        }

.editor-toolbar button:hover {
            background: var(--input-bg-color);
        }

input:hover,
    textarea:hover {
        transform: scale(1.01);
        transition: all linear .2s;
    }

pre > code {
    display: block;
    padding: 15px 20px;
    white-space: pre-wrap;
    background-color: var(--opposite-block-bg-color);
    color: var(--opposite-text-color);
    border-radius: 10px;
    overflow-x: auto;
    overflow-y: hidden;
}

.battle-side-a-color {
    color: #4C98D5;
    -webkit-text-decoration-color: #4C98D5;
            text-decoration-color: #4C98D5;
}

.battle-side-b-color {
    color: #53AA68;
    -webkit-text-decoration-color: #53AA68;
            text-decoration-color: #53AA68;
}

.battle-side-a-background {
    background: #4C98D5;
}

.battle-side-b-background {
    background: #53AA68;
}

/* Buttons, switches and other reusable elements */

.block {
    padding: 30px;
    margin-bottom: 30px;
    box-sizing: border-box;
    box-shadow: var(--block-shadow);
    background-color: var(--block-bg-color);
    border-radius: var(--block-border-radius);
    transition: 0.1s ease-out;
}

.block-description {
        display: block;
        margin: 0 auto;
        max-width: 90%;
        padding: 20px 0;
        font-size: 130%;
    }

.block-description > p:first-child {
            margin-top: 0;
        }

.block-description-center {
            text-align: center;
        }

.block-description li {
            padding-bottom: 0.8em;
        }

.block-description a {
            font-weight: 600;
        }

.block-header {
        display: block;
        font-size: 200%;
        font-weight: 600;
        text-align: center;
        padding-top: 30px;
        padding-bottom: 20px;
        margin: 0 auto;
    }

.block-header-big {
            font-size: 300%;
        }

.block-subheader {
        display: block;
        font-size: 150%;
        font-weight: 400;
        text-align: center;
        margin: 0 auto;
        padding-bottom: 20px;
    }

@media only screen and (max-width : 570px) {
        .block {
            padding: 20px;
        }
    }

.window {
    display: block;
    position: fixed;
    top: 50%;
    left: 50%;
    font-size: 110%;
    transform: translateX(-50%) translateY(-50%);
    margin: 0 auto;
    min-width: 200px;
    max-width: 500px;
    min-height: 200px;
    z-index: 9999;
    padding: 20px 30px 30px;
    background-color: var(--block-bg-color);
    border-radius: var(--block-border-radius);
    box-shadow: 10px 10px 100px #999;
}

.window-close-button {
        display: block;
        position: absolute;
        right: 25px;
        top: 25px;
        font-size: 30px;
        line-height: 30px;
        cursor: pointer;
    }

.window-title {
        display: block;
        font-size: 150%;
        font-weight: 600;
    }

.window-button {
        margin-top: 10px;
        float: right;
    }

.avatar {
    display: inline-block;
    border-radius: 50%;
    min-height: 20px;
    min-width: 20px;
    box-sizing: border-box;
    background-color: #bdc3c7;
    vertical-align: middle;
    overflow: hidden;
    background-position: 50% 50%;
    background-size: cover;
}

.avatar img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

.icon {
    width: 14px;
    height: 14px;
    vertical-align: middle;
    opacity: 0.8;
}

.clearfix {
    width: 100%;
    height: 0;
    display: block;
    clear: both;
}

.clearfix10 {
    width: 100%;
    height: 10px;
    display: block;
    clear: both;
}

.clearfix20 {
    width: 100%;
    height: 20px;
    display: block;
    clear: both;
}

.clearfix50 {
    width: 100%;
    height: 50px;
    display: block;
    clear: both;
}

.clearfix100 {
    width: 100%;
    height: 100px;
    display: block;
    clear: both;
}

.clickable {
    cursor: pointer;
}

.button {
    display: inline-block;
    padding: 15px 18px;
    box-sizing: border-box;
    text-decoration: none;
    border-radius: var(--button-border-radius);
    background-color: var(--button-bg-color);
    border: var(--button-border);
    color: var(--button-color);
    text-align: center;
    cursor: pointer;
    line-height: 1em;
    font-weight: 500;
    transition: 0.2s ease-out;
}

.button-round {
        border-radius: 50%;
    }

.button:hover {
        color: var(--button-hover-color);
        background-color: var(--button-hover-bg-color);
        border: var(--button-hover-border);
    }

.button:disabled {
        background-color: var(--button-disabled-bg-color);
        border-color: var(--button-disabled-bg-color);
    }

.button:disabled:hover {
        color: var(--button-color);
        background-color: var(--button-disabled-bg-color);
        border-color: var(--button-disabled-bg-color);
    }

.button-inverted {
        background-color: var(--button-color);
        color: var(--button-bg-color);
    }

.button-inverted:hover {
            background-color: var(--button-bg-color);
            color: var(--button-color);
            border: solid 2px var(--button-color);
        }

.button-big {
        padding: 15px 30px;
        font-size: 160%;
        font-weight: bold;
        margin: 50px auto 0;
    }

.button-small {
        padding: 5px 10px;
        font-size: 90%;
        font-weight: normal;
    }

.button-red {
        background-color: #ff1917;
        border-color: #ff1917;
    }

.button-blue {
        background-color: #0088cc;
        border-color: #0088cc;
    }

/* SLIDER THEME */

input[type=range] {
  -webkit-appearance: none;
  width: 100%;
  margin: 5.25px 0;
}

input[type=range]:focus {
  outline: none;
}

input[type=range]::-webkit-slider-runnable-track {
  width: 100%;
  height: 15.5px;
  cursor: pointer;
  box-shadow: 0.3px 0.3px 0px #000000, 0px 0px 0.3px #0d0d0d;
  background: rgba(0, 0, 0, 0.78);
  border-radius: 7.5px;
  border: 0px solid #010101;
}

input[type=range]::-webkit-slider-thumb {
  box-shadow: 0px 0px 0px #000000, 0px 0px 0px #0d0d0d;
  border: 2px solid #00001e;
  height: 26px;
  width: 42px;
  border-radius: 17px;
  background: #ffffff;
  cursor: pointer;
  -webkit-appearance: none;
  margin-top: -5.25px;
}

input[type=range]:focus::-webkit-slider-runnable-track {
  background: rgba(13, 13, 13, 0.78);
}

input[type=range]::-moz-range-track {
  width: 100%;
  height: 15.5px;
  cursor: pointer;
  box-shadow: 0.3px 0.3px 0px #000000, 0px 0px 0.3px #0d0d0d;
  background: rgba(0, 0, 0, 0.78);
  border-radius: 7.5px;
  border: 0px solid #010101;
}

input[type=range]::-moz-range-thumb {
  box-shadow: 0px 0px 0px #000000, 0px 0px 0px #0d0d0d;
  border: 2px solid #00001e;
  height: 26px;
  width: 42px;
  border-radius: 17px;
  background: #ffffff;
  cursor: pointer;
}

input[type=range]::-ms-track {
  width: 100%;
  height: 15.5px;
  cursor: pointer;
  background: transparent;
  border-color: transparent;
  color: transparent;
}

input[type=range]::-ms-fill-lower {
  background: rgba(0, 0, 0, 0.78);
  border: 0px solid #010101;
  border-radius: 15px;
  box-shadow: 0.3px 0.3px 0px #000000, 0px 0px 0.3px #0d0d0d;
}

input[type=range]::-ms-fill-upper {
  background: rgba(0, 0, 0, 0.78);
  border: 0px solid #010101;
  border-radius: 15px;
  box-shadow: 0.3px 0.3px 0px #000000, 0px 0px 0.3px #0d0d0d;
}

input[type=range]::-ms-thumb {
  box-shadow: 0px 0px 0px #000000, 0px 0px 0px #0d0d0d;
  border: 2px solid #00001e;
  height: 26px;
  width: 42px;
  border-radius: 17px;
  background: #ffffff;
  cursor: pointer;
  height: 15.5px;
}

input[type=range]:focus::-ms-fill-lower {
  background: rgba(0, 0, 0, 0.78);
}

input[type=range]:focus::-ms-fill-upper {
  background: rgba(13, 13, 13, 0.78);
}

/* END SLIDER THEME */

.theme-switcher {
    display: inline-block;
    height: 34px;
    position: relative;
    width: 60px;
}

.theme-switcher input {
        display: none;
    }

.theme-switcher .slider {
        display: block;
        background-color: #000;
        bottom: 0;
        cursor: pointer;
        left: 0;
        position: absolute;
        right: 0;
        top: 0;
        transition: .4s;
    }

.theme-switcher .slider:before {
        background-color: #fff;
        bottom: 4px;
        content: "";
        height: 26px;
        left: 4px;
        position: absolute;
        transition: .4s;
        width: 26px;
    }

.theme-switcher .slider:after {
        content: "🌙";
        display: block;
        position: absolute;
        top: 12px;
        right: 5px;
        font-size: 13px;
        line-height: 13px;
    }

.theme-switcher input:checked + .slider:after {
            content: "☀️";
            right: auto;
            left: 7px;
            font-size: 16px;
        }

.theme-switcher input:checked + .slider {
    }

.theme-switcher input:checked + .slider:before {
            transform: translateX(26px);
        }

.theme-switcher .slider.round {
        border-radius: 34px;
    }

.theme-switcher .slider.round:before {
        border-radius: 50%;
    }

.form {

}

.form-title {
        display: block;
        font-size: 250%;
        font-weight: 600;
        text-align: center;
        padding-top: 20px;
        padding-bottom: 30px;
    }

.form-row {
        display: block;
        padding-bottom: 70px;
        font-size: 130%;
    }

.form-row-center {
            display: flex;
            justify-content: center;
        }

.form-row-right {
            display: flex;
            justify-content: flex-end;
        }

.form-row-hidden {
            display: none;
        }

.form-row-space-between {
            display: flex;
            justify-content: space-between;
        }

.form-row-checkbox {
            font-size: 120%;
        }

.form-row-checkbox label {
                display: inline-block !important;
                max-width: 80%;
                padding-left: 10px;
            }

.form-label {
            display: block;
            padding-bottom: 10px;
        }

.form-row input,
        .form-row textarea {
            display: block;
            width: 100%;
            margin: 0 auto;
        }

.form-row input::-moz-selection, .form-row textarea::-moz-selection {
            background: var(--input-selection-color);
        }

.form-row input::selection,
        .form-row textarea::selection {
            background: var(--input-selection-color);
        }

.form-row textarea {
                padding: 10px;
            }

.form-row input[type=radio] {
                width: auto;
            }

.form-row input[type=text],
            .form-row input[type=email] {
                text-align: center;
            }

.form-row input[type=checkbox] {
                display: inline-block;
                vertical-align: middle;
                width: auto;
                transform: scale(1.5);
                position: relative;
                top: -2px;
            }

.form-row-help {
                padding-top: 10px;
                display: block;
                font-size: 70%;
                opacity: 0.6;
                max-width: 65%;
                margin: 0 auto;
            }

.form-row-help-wide {
                    max-width: 100%;
                }

.form-row-errors {
                display: block;
                font-weight: bold;
                color: #ff192f;
                padding-top: 10px;
                font-size: 90%;
            }

.form-row-errors li {
                    list-style: none;
                    padding: 0;
                }

.form-row-input-big {

        }

.form-warning {
            font-size: 90%;
            text-align: center;
            background-color: rgba(243, 255, 81, 0.3);
        }

.simple-grid-2-auto {
    display: grid;
    grid-template-columns: minmax(auto, min-content) minmax(auto, max-content);
    grid-column-gap: 20px;
}

@media only screen and (max-width : 570px) {
        .simple-grid-2-auto {
            grid-template-columns: auto;
        }
    }

.ratio-16-9 {
    display: block;
    width: 100%;
    padding-top: 56.25%;
    position: relative;
}

.ratio-16-9 > * {
        position: absolute;
        top: 0;
        left: 0;
        bottom: 0;
        right: 0;
        width: 100%;
        height: 100%;
    }

.twitter-tweet {
    margin: 10px auto;
}

.link-favicon {
    display: inline-block;
    min-height: 1.2em;
    min-width: 1.2em;
    background-position: center center;
    background-size: cover;
    vertical-align: middle;
}

.link-favicon i {
        font-size: 140%;
    }

.show-on-iphone {
    display: none !important;
}

.no-underline {
    text-decoration: none;
}

.with-underline {
    text-decoration: underline;
}

@media only screen and (max-width : 570px) {
    .hide-on-iphone {
        display: none !important;
    }

    .show-on-iphone {
        display: block !important;
    }
}

@media only screen and (max-width : 1024px)  {
    .hide-on-ipad {
        display: none;
    }
}

.CodeMirror-line {
    word-break: break-word !important;
}

.topic {
    display: inline-block;
    position: relative;
    vertical-align: middle;
    padding: 5px 13px 5px 5px;
    text-decoration: none;
    background-color: var(--opposite-bg-color);
    color: #FFF;
    font-size: 110%;
    max-width: 300px;
    line-height: 1.3em;
    border-radius: 20px;
    overflow: hidden;
    transition: none;
}

.topic-gradient {
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        bottom: 0;
        width: 100%; /* FF3.6-15 */ /* Chrome10-25,Safari5.1-6 */
        background: linear-gradient(to top,  rgba(255,255,255,0.25) 0%,rgba(255,255,255,0) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    }

.topic-icon {
        display: inline-block;
        vertical-align: middle;
        width: 22px;
        height: 22px;
        border-radius: 50%;
        background-color: #FFF;
        border: solid 2px #FFF;
        overflow: hidden;
    }

.topic-icon img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

.topic-name {
        padding-left: 5px;
        vertical-align: middle;
        font-weight: 500;
    }

.topic:hover .topic-name {
            color: #FFF;
        }

.topic-type-inline {
        padding: 2px 9px 2px 3px;
        font-size: 90%;
        top: -1px;
    }

.topic-type-inline .topic-icon {
            width: 15px;
            height: 15px;
        }

.topic-type-inline .topic-name {
            padding-left: 1px;
        }

.topic-type-card {
        display: flex;
        margin-top: 10px;
        padding: 10px 20px 10px 10px;
        box-sizing: border-box;
        align-items: center;
        font-size: 100%;
        border-radius: 30px;
    }

.topic-type-card:hover {
            transform: translateY(-2px);
            transition: .2s;
        }

.topic-type-card .topic-name {
            display: inline-block;
            max-width: 100%;
            overflow: hidden;
            text-overflow: ellipsis;
            padding: 0;
            vertical-align: middle;
        }

.topic-type-card .topic-icon {
            display: inline-block;
            width: 35px;
            height: 35px;
            margin: 0 5px 0 0;
        }

.topic-type-post {
        display: flex;
        align-items: center;
    }

.topic-type-post:not(:only-child) {
            margin-right: 10px;
        }

img.emoji {
   height: 1.2em;
   width: 1.2em;
   margin: 0 .05em 0 .1em;
   vertical-align: -0.25em;
}

.text-center {
    text-align: center;
}

.text-80 {
    font-size: 80%;
}

.text-120 {
    font-size: 120%;
}

.text-140 {
    font-size: 140%;
}

.text-200 {
    font-size: 200%;
}

.big-radio {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    grid-gap: 30px;
    gap: 30px;
    padding: 20px 0;
    font-size: 17px;
}

@media only screen and (max-width : 620px) {
        .big-radio {
            flex-direction: column;
        }
        .big-radio .big-radio-item {
            min-height: -moz-fit-content;
            min-height: fit-content;
        }
    }

.big-radio-item {
        flex: 1;
        display: block;
        cursor: pointer;
        position: relative;
        min-height: 250px;
    }

.big-radio-label {
        display: block;
        cursor: pointer;
        width: 100%;
        height: 100%;
        padding: 10px;
        box-sizing: border-box;
        text-decoration: none;
        box-shadow: var(--block-shadow);
        background-color: var(--block-bg-color);
        border-radius: 10px;
        border: var(--block-border);
        text-align: center;
    }

.big-radio-item input {
        position: absolute;
        bottom: 0;
        right: 0;
        opacity: 0.01;
    }

.big-radio-item input:checked + .big-radio-label {
        background-color: var(--opposite-block-bg-color);
        color: var(--opposite-text-color);
    }

.big-radio-item input:checked + .big-radio-label a {
        color: var(--opposite-text-color);
    }

.big-radio-label:hover {
        transition: 0.5s ease-out;
        box-shadow: 2px 2px 8px 0 rgba(69, 70, 70, 0.12);
    }

.big-radio-label i {
            display: block;
            font-size: 60px;
            padding-top: 20px;
        }

.big-radio-title {
            display: block;
            padding: 20px 10px 10px;
            font-weight: 500;
            font-size: 120%;
            line-height: 1.3em;
        }

.big-radio-description {
            display: block;
            padding: 10px;
        }

.zoom-on-hover:hover {
    transform: scale(1.05);
    transition: transform .2s;
}

/* Layouts and grids without any styles */

:root {
    --max-content-width: 1000px;
    --normal-content-width: 800px;
}

.content {
    margin: 0 auto;
    max-width: var(--normal-content-width);
    padding-left: 20px;
    padding-right: 20px;
}

.content-header {
        font-size: 230%;
        text-align: center;
        padding-top: 20px;
        padding-bottom: 30px;
        margin: 0 auto;
    }

.content-description {
        font-size: 130%;
        text-align: center;
        max-width: 90%;
        padding-bottom: 30px;
        margin: 0 auto;
    }

.content-description-left {
        text-align: left;
    }

@media only screen and (max-width : 570px) {
        .content {
            padding-left: 10px;
            padding-right: 10px;
        }
    }

.footer {
    display: flex;
    justify-content: space-between;
    margin: 200px auto 0;
    max-width: var(--max-content-width);
    padding: 50px 20px 100px;
}

.footer-right {
        text-align: right;
        display: flex;
        flex-direction: column;
        justify-content: space-between;
        align-items: end;
    }

.footer-logout-button {
        display: block;
        margin-top: 20px;
        -moz-appearance: none;
             appearance: none;
        border: none;
        outline: none;
        background: none;
        text-decoration: underline;
        cursor: pointer;
        color: var(--link-color);
        transition: color linear .1s;
    }

.footer-logout-button i {
            display: inline-block;
            vertical-align: middle;
        }

@media only screen and (max-width : 570px) {
    footer {
        flex-direction: column;
        grid-gap: 2rem;
        gap: 2rem;
    }

    .footer-right {
        flex-direction: row;
        align-items: center;
    }

    .footer-logout {
        margin-left: auto;
    }

    .footer-logout-button {
        margin-top: 0;
    }
}

.search {
    display: grid;
    grid-template-columns: auto;
    margin: 0 auto;
    max-width: var(--normal-content-width);
}

.doc {
    font-size: 130%;
}

.doc h1,
    .doc h2,
    .doc h3 {
        margin-top: 80px;
    }

.doc h1 a,
    .doc h2 a,
    .doc h3 a {
        text-decoration: none;
    }

.doc a {
        font-weight: bold;
    }

.doc h1 {
        font-size: 230%;
    }

.doc h2 {
        font-size: 180%;
    }

.doc li {
        margin-bottom: 10px;
    }

.doc .rules {
    }

.doc .rules li {
            padding-top: 20px;
        }

.error, .message, .access-denied {
    display: block;
    max-width: 600px;
    margin: 50px auto 50px;
    padding: 40px;
    font-size: 120%;
}

.error h1, .message h1, .access-denied h1 {
        display: block;
        font-size: 230%;
        margin-top: 0;
        margin-bottom: 30px;
    }

.error h2, .message h2, .access-denied h2 {
        display: block;
        font-size: 150%;
        margin-top: 0;
        margin-bottom: 30px;
    }

.message-center {
        text-align: center;
    }

.profile-card {
    display: grid;
    grid-template-columns: 200px auto;
    grid-column-gap: 20px;
    -moz-column-gap: 20px;
         column-gap: 20px;
    align-items: flex-start;
}

@media only screen and (max-width : 570px) {
        .profile-card {
            grid-template-columns: auto;
            align-items: center;
        }
    }

.user-small {
    display: grid;
    grid-template-columns: 55px auto;
    grid-template-rows: auto auto;
    justify-content: left;
}

.user-small .user-avatar {
        display: inline-block;
        grid-column-start: 1;
        grid-column-end: 2;
        grid-row-start: 1;
        grid-row-end: 3;
        justify-self: start;
    }

.user-small .user-info {
        display: inline-block;
        grid-column-start: 2;
        grid-column-end: 3;
        grid-row-start: 1;
        grid-row-end: 2;
        justify-self: start;
    }

.user-small .user-footer {
        grid-column-start: 2;
        grid-column-end: 3;
        grid-row-start: 2;
        grid-row-end: 3;
        justify-self: start;
    }

.post-layout-block {
    display: grid;
    grid-template-columns: minmax(auto, 1fr) min-content;
    grid-template-rows: auto auto auto;
    justify-content: stretch;
    align-items: flex-start;
}

.post-layout-block .post-upvote {
        grid-column-start: 2;
        grid-column-end: 3;
        grid-row-start: 1;
        grid-row-end: 2;
        justify-self: end;
        padding-left: 10px;
    }

.post-layout-block .post-header {
        grid-column-start: 1;
        grid-column-end: 2;
        grid-row-start: 1;
        grid-row-end: 2;
        justify-self: start;
    }

.post-layout-block .text-body {
        grid-column-start: 1;
        grid-column-end: 3;
        grid-row-start: 2;
        grid-row-end: 3;
        justify-self: start;
    }

.post-layout-block .text-body-layout-notitle {
            grid-column-start: 1;
            grid-column-end: 2;
            grid-row-start: 1;
            grid-row-end: 3;
            justify-self: start;
        }

.post-layout-block .post-footer {
        grid-column-start: 1;
        grid-column-end: 3;
        grid-row-start: 3;
        grid-row-end: 4;
        justify-self: stretch;
        display: flex;
        justify-content: space-between;
    }

.battle-title {
    margin: 0 auto;
    max-width: var(--max-content-width);
    display: grid;
    grid-template-columns: minmax(auto, 1fr) 50px minmax(auto, 1fr);
}

.battle-title-side-a {
        grid-column-start: 1;
        grid-column-end: 2;
        grid-row-start: 1;
        grid-row-end: 2;
        justify-self: stretch;
    }

.battle-title-vs {
        grid-column-start: 2;
        grid-column-end: 3;
        grid-row-start: 1;
        grid-row-end: 2;
        justify-self: stretch;
    }

.battle-title-side-b {
        grid-column-start: 3;
        grid-column-end: 4;
        grid-row-start: 1;
        grid-row-end: 2;
        justify-self: stretch;
    }

.comment-form {
    display: flex;
    --form-border-radius: 5px;
}

.comment-form-avatar {
        width: -moz-min-content;
        width: min-content;
    }

.comment-form-body {
        flex: 1;
    }

.comment-form-editor-container,
    .reply-form-editor-container {
        box-shadow: 0 4px 8px -2px rgba(9,30,66,.25),0 0 0 1px rgba(9,30,66,.08);
        border-radius: var(--form-border-radius);
        overflow: hidden;
    }

.comment-form-editor-container[focus-within],
    .reply-form-editor-container[focus-within] {
        box-shadow: 0 4px 12px -2px rgba(9,30,66,.45),0 0 0 1px rgba(9,30,66,.32);
    }

.comment-form-editor-container:focus-within,
    .reply-form-editor-container:focus-within {
        box-shadow: 0 4px 12px -2px rgba(9,30,66,.45),0 0 0 1px rgba(9,30,66,.32);
    }

.comment-form-footer,
    .reply-form-footer {
        background-color: var(--input-bg-color);
        display: flex;
        align-items: center;
        padding: 6px;
    }

.comment-form-footer .button {
        padding: 10px 16px;
        border-radius: var(--form-border-radius, var(--button-border-radius));
    }

.comment-form-attach-image {
        display: block;
        position: relative;
        font-size: 1.125rem;
        padding: 3px 9px;
        border-radius: var(--form-border-radius);
        border: var(--button-border);
        border-color: transparent;
    }

.comment-form-attach-image:hover,
    .comment-form-attach-image[focus-within] {
        border-color: inherit;
        cursor: pointer;
    }

.comment-form-attach-image:hover,
    .comment-form-attach-image:focus-within {
        border-color: inherit;
        cursor: pointer;
    }

.comment-form-attach-image input[type=file] {
        clip: rect(0 0 0 0);
        clip-path: inset(50%);
        height: 1px;
        overflow: hidden;
        position: absolute;
        white-space: nowrap;
        width: 1px;
        padding: 0;
        resize: none;
    }

.comment-form-body {
    }

.comment-form-body-battle-side {
            font-size: 150%;
        }

.comment-form-body-battle-side select {
            width: 100%;
        }

.comment-form-body-battle-side #id_battle_side {
                width: 100%;
                max-width: 60%;
            }

.comment-form-body-title {
            padding: 20px 0;
        }

.comment-form-body-title input {
                font-size: 150%;
                width: 100%;
            }

.reply-form {
    display: grid;
    grid-template-columns: 40px auto 110px;
    justify-content: stretch;
}

.reply-form-avatar {
        grid-column-start: 1;
        grid-column-end: 2;
        grid-row-start: 1;
        grid-row-end: 2;
        justify-self: start;
    }

.reply-form-body {
        grid-column-start: 2;
        grid-column-end: 3;
        grid-row-start: 1;
        grid-row-end: 2;
        justify-self: stretch;
    }

.reply-form-button {
        grid-column-start: 3;
        grid-column-end: 4;
        grid-row-start: 1;
        grid-row-end: 2;
        justify-self: end;
        align-self: end;
    }

.reply-form-attach-image {
        display: block;
        position: relative;
        font-size: 1rem;
        padding: 0 6px;
        border: var(--button-border);
        border-color: transparent;
    }

.reply-form-attach-image:hover,
    .reply-form-attach-image[focus-within] {
        border-color: inherit;
        cursor: pointer;
    }

.reply-form-attach-image:hover,
    .reply-form-attach-image:focus-within {
        border-color: inherit;
        cursor: pointer;
    }

.reply-form-attach-image input[type=file] {
        clip: rect(0 0 0 0);
        clip-path: inset(50%);
        height: 1px;
        overflow: hidden;
        position: absolute;
        white-space: nowrap;
        width: 1px;
        padding: 0;
        resize: none;
    }

.reply-form-attach-image input[type=file]:hover,
    .reply-form-attach-image input[type=file]:focus {
        cursor: pointer;
    }

@media only screen and (max-width : 570px) {
        .reply-form {
            display: grid;
            grid-template-columns: 25px auto;
            grid-template-rows: auto auto;
            justify-content: stretch;
        }

            .reply-form-button {
                margin-bottom: 6px;
                margin-right: 6px;
                grid-column-start: 2;
                grid-column-end: 3;
                grid-row-start: 1;
                grid-row-end: 2;
                justify-self: end;
                align-self: end;
            }
    }

.reply {
    display: grid;
    grid-template-columns: 35px minmax(auto, 1fr) 50px;
    grid-template-rows: auto auto min-content auto;
    justify-content: start;
}

.reply-side {
        grid-column-start: 1;
        grid-column-end: 2;
        grid-row-start: 3;
        grid-row-end: 5;
        justify-self: start;
        align-self: stretch;
    }

.reply-header {
        grid-column-start: 1;
        grid-column-end: 3;
        grid-row-start: 1;
        grid-row-end: 2;
        justify-self: start;
        align-self: start;
    }

.reply-body,
    .reply-collapse-stub {
        grid-column-start: 1;
        grid-column-end: 4;
        grid-row-start: 2;
        grid-row-end: 3;
        justify-self: stretch;
        align-self: start;
    }

.reply-rating {
        grid-column-start: 3;
        grid-column-end: 4;
        grid-row-start: 1;
        grid-row-end: 4;
        justify-self: end;
        align-self: start;
    }

.reply-footer {
        grid-column-start: 2;
        grid-column-end: 4;
        grid-row-start: 3;
        grid-row-end: 4;
        justify-self: end;
        align-self: start;
    }

.reply-replies {
        grid-column-start: 2;
        grid-column-end: 4;
        grid-row-start: 4;
        grid-row-end: 5;
        justify-self: stretch;
        align-self: start;
    }

.comment-layout-normal {
    display: grid;
    grid-template-columns: 60px minmax(auto, 1fr) 60px;
    grid-template-rows: min-content auto min-content auto;
    justify-content: stretch;
}

.comment-layout-normal .comment-side {
        grid-column-start: 1;
        grid-column-end: 2;
        grid-row-start: 1;
        grid-row-end: 5;
        justify-self: start;
        align-self: stretch;
    }

.comment-layout-normal .comment-header {
        grid-column-start: 2;
        grid-column-end: 3;
        grid-row-start: 1;
        grid-row-end: 2;
        justify-self: start;
    }

.comment-layout-normal .comment-body,
    .comment-layout-normal .comment-collapse-stub {
        grid-column-start: 2;
        grid-column-end: 4;
        grid-row-start: 2;
        grid-row-end: 3;
        justify-self: stretch;
    }

.comment-body-muted {
        grid-column-start: 1;
        grid-column-end: 4;
        grid-row-start: 1;
        grid-row-end: 4;
        justify-self: stretch;
        align-self: start;
    }

.comment-layout-normal .comment-rating {
        grid-column-start: 3;
        grid-column-end: 4;
        grid-row-start: 1;
        grid-row-end: 3;
        justify-self: end;
        padding-right: 8px;
    }

.comment-layout-normal .comment-footer {
        grid-column-start: 2;
        grid-column-end: 4;
        grid-row-start: 3;
        grid-row-end: 4;
        justify-content: flex-end;
        display: flex;
    }

.comment-layout-normal .comment-replies {
        grid-column-start: 2;
        grid-column-end: 4;
        grid-row-start: 4;
        grid-row-end: 5;
        justify-self: stretch;
    }

.comment-layout-battle .comment-replies {
        grid-area: replies;
    }

@media only screen and (max-width : 570px) {
        .comment-layout-normal {
            grid-template-columns: 35px minmax(auto, 1fr) 60px;
        }
    }

.comment-layout-block {
    display: grid;
    grid-template-columns: 60px minmax(auto, 1fr) 60px;
    grid-template-rows: min-content auto min-content;
    justify-content: stretch;
}

.comment-layout-block .comment-side {
        grid-column-start: 1;
        grid-column-end: 2;
        grid-row-start: 1;
        grid-row-end: 3;
        justify-self: start;
        align-self: stretch;
    }

.comment-layout-block .comment-header {
        grid-column-start: 2;
        grid-column-end: 3;
        grid-row-start: 1;
        grid-row-end: 2;
        justify-self: start;
    }

.comment-layout-block .comment-rating {
        grid-column-start: 3;
        grid-column-end: 4;
        grid-row-start: 1;
        grid-row-end: 3;
        justify-self: end;
    }

.comment-layout-block .comment-body {
        grid-column-start: 1;
        grid-column-end: 3;
        grid-row-start: 2;
        grid-row-end: 3;
        justify-self: stretch;
    }

.comment-layout-block .comment-footer {
        grid-column-start: 2;
        grid-column-end: 4;
        grid-row-start: 3;
        grid-row-end: 4;
        justify-content: flex-end;
        display: flex;
    }

.comment-type-battle {
    display: grid;
    grid-template-columns: min-content minmax(auto, 1fr);
    grid-template-rows: min-content auto 35px;
    justify-content: stretch;
}

.comment-type-battle .comment-header {
        grid-column-start: 2;
        grid-column-end: 3;
        grid-row-start: 1;
        grid-row-end: 2;
        justify-self: start;
    }

.comment-type-battle .comment-rating {
        grid-column-start: 1;
        grid-column-end: 2;
        grid-row-start: 1;
        grid-row-end: 2;
        justify-self: end;
        padding-right: 10px;
    }

.comment-type-battle .comment-body {
        grid-column-start: 1;
        grid-column-end: 3;
        grid-row-start: 2;
        grid-row-end: 3;
        justify-self: stretch;
    }

.comment-type-battle .comment-footer {
        grid-column-start: 1;
        grid-column-end: 3;
        grid-row-start: 3;
        grid-row-end: 4;
        justify-content: flex-end;
        display: flex;
    }

.comment-type-battle-side-a {
        grid-template-columns: min-content minmax(auto, 1fr);
        max-width: 90%;
        min-width: 50%;
        float: left;
    }

.comment-type-battle-side-a .comment-rating {
            grid-column-start: 1;
            grid-column-end: 2;
            grid-row-start: 1;
            grid-row-end: 2;
            justify-self: start;
            padding-left: 0;
            padding-right: 10px;
        }

.comment-type-battle-side-a .comment-header {
            grid-column-start: 2;
            grid-column-end: 3;
            grid-row-start: 1;
            grid-row-end: 2;
            justify-self: start;
        }

.comment-type-battle-side-b {
        grid-template-columns: minmax(auto, 1fr) min-content;
        max-width: 90%;
        min-width: 50%;
        float: right;
    }

.comment-type-battle-side-b .comment-rating {
            grid-column-start: 2;
            grid-column-end: 3;
            grid-row-start: 1;
            grid-row-end: 2;
            justify-self: end;
            padding-left: 10px;
            padding-right: 0;
        }

.comment-type-battle-side-b .comment-header {
            grid-column-start: 1;
            grid-column-end: 2;
            grid-row-start: 1;
            grid-row-end: 2;
            justify-self: end;
        }

.achievements {
    margin: 50px auto;
    max-width: var(--max-content-width);
}

/* THIS FILE IS LEGACY AND DEPRECATED */

/* DO NOT ADD NEW THINGS HERE */

/* USE ./components/ DIRECTORY */

.paginator {
    display: block;
    clear: both;
    font-size: 24px;
    margin: 50px auto 100px;
    overflow: hidden;
    text-align: center;
}

.paginator-page {
        display: inline-block;
        min-width: 30px;
        width: auto;
        height: 30px;
        text-align: center;
        line-height: 30px;
        color: var(--text-color);
        text-decoration: none;
        margin-right: 10px;
        padding: 10px;
    }

.paginator-page-active {
            background-color: var(--opposite-bg-color);
            color: var(--opposite-text-color);
        }

.user {
    text-decoration: none;
}

.user a {
        text-decoration: none;
    }

.user-tiny {
        overflow: hidden;
        text-overflow: ellipsis;
    }

.user-small {
    }

.user-small .avatar {
            width: 42px;
            height: 42px;
        }

.user-small .user-info {
            font-size: 110%;
            max-width: 100%;
            overflow: hidden;
        }

.user-small .user-name {
                font-weight: 500;
            }

.user-small .user-position {
                opacity: 0.7;
            }

.user-small .user-footer {
            font-size: 90%;
            opacity: 0.7;
        }

.user-small .hat {
            margin-left: 5px;
        }

.user-round {
        display: flex;
        flex-direction: column;
        align-items: center;
        width: 100%;
        text-decoration: none;
        text-align: center;
        position: relative;
    }

.user-round-avatar {
            width: 90%;
            aspect-ratio: 1 / 1;
        }

.user-round-avatar-badge {
            position: absolute;
            top: -10px;
            right: -10px;
            font-size: 50px;
        }

.user-round-name {
            display: block;
            font-size: 110%;
            font-weight: 500;
            padding: 10px 0 5px;
            line-height: 1.2em;
        }

.user-round-info {
            display: block;
            font-size: 80%;
            opacity: 0.8;
        }

.user-name-is-banned {
        text-decoration: line-through;
    }

.hat {
    display: inline-block;
    vertical-align: middle;
    background-color: #000000;
    height: 1.7em;
    overflow: hidden;
    font-size: 87%;
    border-radius: 5px;
    padding: 0 0.5em;
}

.hat > * {
        display: inline-block;
        vertical-align: middle;
    }

.hat-icon {
        line-height: 1em;
        color: #FFFFFF;
    }

.hat-icon img {
        object-fit: cover;
    }

.hat-title {
        color: #FFFFFF;
        font-weight: 500;
        line-height: 1.6em;
    }

.label {
    display: inline-block;
    vertical-align: middle;
    position: relative;
    top: -1px;
    background-color: #000000;
    height: 1.6em;
    line-height: 1.5em;
    overflow: hidden;
    font-size: 75%;
    border-radius: 5px;
}

.label-type-draft {
        font-size: 120%;
        background-color: var(--opposite-block-bg-color);
    }

.label-type-draft .label-title {
            color: var(--opposite-text-color);
        }

.label-type-deleted {
        background-color: var(--opposite-block-bg-color);
    }

.label-type-deleted .label-title {
            color: #F00;
        }

.label-title {
        display: inline-block;
        color: #FFFFFF;
        font-weight: normal;
        padding: 0 0.6em 0;
        font-size: 90%;
    }

.upvote {
    position: relative;
    display: inline-block;
    text-decoration: none;
    padding: 30px 17px 7px;
    font-size: 140%;
    font-weight: 600;
    font-family: var(--sans-font);
    background-color: var(--bg-color);
    color: var(--text-color);
    border: var(--button-border);
    border-radius: var(--button-border-radius);
}

.upvote:hover {
        background-color: var(--opposite-bg-color);
        color: var(--opposite-text-color);
    }

.upvote::before {
        content: "▲";
        position: absolute;
        font-size: 18px;
        top: 5px;
        left: 50%;
        transform: translateX(-50%);
    }

.upvote-voted {
        background-color: var(--opposite-bg-color);
        color: var(--opposite-text-color);
    }

.upvote-voted:hover {
            color: var(--opposite-text-color);
        }

.upvote-disabled {
        padding-top: 18px;
        padding-bottom: 18px;
        pointer-events: none;
        cursor: none;
    }

.upvote-disabled::before {
        display: none;
    }

.upvote-type-small {
        padding: 7px 10px 6px 25px;
        font-size: 120%;
        font-weight: 600;
        border: none;
    }

.upvote-type-small::before {
            content: "+";
            position: absolute;
            top: 2px;
            left: 17px;
            font-size: 130%;
        }

.upvote-type-small.upvote-disabled {
            padding-left: 17px;
            padding-right: 17px;
        }

.upvote-type-inline {
        padding: 3px 9px 4px 20px;
        font-size: 100%;
        font-weight: 600;
        border: none;
        position: relative;
        top: -2px;
    }

.upvote-type-inline::before {
            content: "+";
            position: absolute;
            top: 2px;
            left: 13px;
            font-size: 110%;
        }

.upvote-type-inline.upvote-disabled {
            padding-left: 14px;
            padding-right: 14px;
        }

@media only screen and (max-width : 570px) {
        .upvote {
            padding: 18px 11px 5px;
            font-size: 16px;
        }

        .upvote::before {
            font-size: 10px;
        }

        .post-comments .upvote {
            padding: 4px 7px;
            font-size: 14px;
        }

        .post-comments .upvote::before {
            font-size: 110%;
            position: relative;
            top: 0;
            left: 0;
        }

        .upvote-disabled {
            padding-top: 11px;
            padding-bottom: 10px;
            cursor: none;
        }

        .upvote-type-inline {
            padding: 7px;
        }

        .upvote-type-inline::before {
            position: relative;
            top: 0;
            left: 0;
            bottom: 0;
            content: "+";
            font-size: 110%;
        }
    }

.achievements {

}

.achievements-header {
        text-align: center;
        font-size: 250%;
        font-weight: 700;
    }

.achievements-description {
        max-width: 700px;
        font-size: 120%;
        margin: 30px auto;

    }

.search {
    padding: 30px 20px 0;
}

.search-filters {
    padding: 0 20px 40px;
}

@media only screen and (max-width : 570px) {
        .search-filters {
            padding-left: 0;
            padding-right: 0;
        }
    }

.search-query {
        padding: 0 0 40px;
        box-sizing: border-box;
    }

.search-query-input {
            width: 100%;
            font-size: 130%;
        }

.search-filters-types {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
    }

.search-filters-type {
            display: block;
            font-size: 140%;
            padding: 10px 20px;
            margin-bottom: 10px;
            text-decoration: none;
        }

.search-filters-type-selected {
                background-color: var(--opposite-bg-color);
                color: var(--opposite-text-color);
            }

.search-filters-ordering {
            margin-left: auto;
        }

@media only screen and (max-width : 570px) {
            .search-filters-types {
                font-size: 90%;
            }

                .search-filters-type {
                    padding: 5px 10px;
                }

                .search-filters-ordering {
                    margin-left: 0;
                }
        }

.search-results {
}

.search-results .profile-card {
        max-width: 90%;
        margin-left: auto;
        margin-right: auto;
    }

.search-results-title {
        font-size: 200%;
        font-weight: 600;
        text-align: center;
        padding-bottom: 40px;
    }

.search-results-placeholder {
        text-align: center;
        padding: 100px 0;
        font-size: 160%;
        opacity: 0.6;
    }

.user-telegram-auth-data {
    padding: 20px 40px;
    display: block;
    background-color: var(--opposite-bg-color);
    color: var(--opposite-text-color);
    max-width: 400px;
    margin: 40px auto;
    font-size: 120%;
    border-radius: var(--button-border-radius);
}

.post-bookmarks-placeholder {
    font-weight: bolder;
    opacity: 0.6;
}

.license {
    display: block;
    text-decoration: none;
    font-size: 200%;
    text-align: center;
    padding: 30px 0;
}

.license img {
        width: 80px;
        height: 80px;
    }

.menu {
    font-size: 120%;
    max-width: var(--max-content-width);
    margin: 0 auto;
    padding-top: 25px;
    padding-bottom: 15px;
}

.menu-full {
        display: flex;
        grid-gap: 10px;
        gap: 10px;
        flex-direction: row;
        align-items: center;
        flex-wrap: nowrap;
        width: 100%;
        box-sizing: border-box;
    }

.menu-burger {
            font-size: 30px;
            line-height: 1em;
            cursor: pointer;
            display: none;
        }

.menu-left {
            transition: margin-left .3s ease;
            flex-grow: 1;
            min-width: 210px;
        }

@media only screen and (max-width : 1000px) {
            .menu-full {
                padding-left: 10px;
                padding-right: 10px;
            }
        }

@media only screen and (max-width : 570px) {
            .menu-left {
                min-width: auto;
            }
            
            .menu-burger {
                display: block;
            }

            .menu-full {
                flex-wrap: wrap;
                padding-left: 10px;
                padding-right: 10px;
            }

            .menu-center {
                display: none;
            }

            .mobile-menu-opened .menu-center {
                order: 3;
                width: 100%;
                display: block;
            }
        }

.menu-center {
            flex-grow: 4;
        }

.menu-right {
            display: flex;
            flex-grow: 1;
            flex-direction: row;
            justify-content: flex-end;
            align-items: center;
        }

.menu-simplified {
        grid-template-columns: auto;
        justify-content: space-between;
        display: flex;
        flex-direction: row;
    }

.menu-simplified-right {
            display: flex;
            justify-items: flex-end;
            align-items: center;
            grid-gap: 20px;
            gap: 20px;
        }

.menu-logo {
        font-size: 26px;
        font-weight: 700;
        text-decoration: none;
        white-space: nowrap;
    }

@media only screen and (max-width : 570px) {
            .menu-logo {
                font-size: 22px;
            }
        }

.menu-logo:hover {
            color: var(--text-color);
        }

.menu-logo img {
            width: 1em;
            height: 1em;
            vertical-align: middle;
            margin: 0 8px;
            position: relative;
            top: -2px;
        }

html[theme="dark"] .menu-logo img {
                filter: invert();
            }

@media (prefers-color-scheme: dark) {
                html:not([theme]) .menu-logo img {
                    filter: invert();
                }
            }

.menu-avatar {
        width: 40px;
        height: 40px;
        margin-left: 10px;
    }

.mobile-menu-opened .menu-avatar {
            display: none;
        }

.menu-search {
        white-space: nowrap;
    }

.menu-search-label {
            cursor: pointer;
            font-size: 20px;
            line-height: 20px;
            position: relative;
            top: -1px;
            opacity: 0.4;
            padding-right: 15px;
        }

.menu-search-label:hover,
            .menu-search-label-is-active {
                opacity: 1;
            }

.menu-search-input {
            width: 80%;
            box-shadow: none !important;
            background-color: transparent !important;
            outline: none !important;
            border: none !important;
            padding: 0 !important;
            font-weight: 500;
            font-size: 26px;
            transform: none !important;
            color: var(--text-color) !important;
        }

.menu-search-input::-moz-placeholder {
            visibility: hidden;
        }

.menu-search-input::placeholder {
            visibility: hidden;
        }

@media only screen and (max-width : 570px) {
            .menu-search-input {
                font-size: 20px;
            }

            .menu-search-input::-moz-placeholder {
                visibility: visible;
            }

            .menu-search-input::placeholder {
                visibility: visible;
            }
        }

.menu-button {
    font-size: 80%;
    padding: 10px 18px;
}

.menu-button-compose {
        margin-right: 10px;
        display: flex;
        flex-direction: row;
        flex-wrap: nowrap;
        grid-gap: 8px;
        gap: 8px;
        align-items: center;
        padding: 13px 20px;
    }

@media only screen and (max-width : 570px) {
            .menu-button-compose-text {
                display: none;
            }
        }

.menu-button-bookmark,
    .menu-button-godmode {
        font-size: 110%;
        opacity: 0.5;
        text-decoration: none;
        vertical-align: middle;
    }

.menu-button-bookmark:hover,
        .menu-button-godmode:hover {
            opacity: 1.0;
        }

@media only screen and (max-width : 570px) {
        .menu-button {
            display: none;
        }
    }

.mobile-menu-opened .menu-button {
        display: block;
    }

.join {
    font-size: 120%;
    padding-top: 80px;
}

.join-title {
        text-align: center;
        font-weight: 500;
        font-size: 280%;
        padding-top: 20px;
    }

.join-title a {
            text-decoration: none;
        }

.join-subtitle {
        text-align: center;
        font-weight: 500;
        font-size: 180%;
        padding-top: 100px;
        padding-bottom: 40px;
    }

.join-description {
        text-align: center;
        padding: 50px 20px;
        max-width: 700px;
        margin: 0 auto;
        font-size: 110%;
    }

.join-email {
        display: block;
        font-size: 120%;
        text-align: center;
        max-width: 600px;
        margin: 0 auto;
    }

.join-email input {
            width: 300px;
        }

.join-consent {
        font-size: 110%;
        display: block;
        text-align: center;
        max-width: 600px;
        margin: 0 auto;
        padding: 40px 0;
    }

.join-button {
        display: block;
        margin: 0 auto;
        max-width: 350px;
    }

.login {
    font-size: 130%;
    padding-top: 30px;
    padding-left: 20px;
    padding-right: 20px;
    max-width: 1000px;
    margin: 0 auto;
}

.login-services {
        display: flex;
        align-items: flex-start;
        justify-content: center;
        flex-wrap: wrap;
    }

.login-service {
            display: block;
            margin: 20px;
            width: 460px;
        }

.login-service-title {
                font-size: 150%;
                font-weight: 500;
                padding-bottom: 20px;
            }

.login-service-description {
                font-size: 70%;
                opacity: 0.9;
                padding-top: 30px;
            }

.login-service-form {

            }

.login-email {
                width: 100%;
            }

.login-button {
                margin-top: 20px;
                min-width: 170px;
            }

.login-button-patreon {
                background-color: #f96854;
                border-color: #f96854;
                color: #052d49;
            }

.login-separator {
    display: block;
    width: 100%;
    padding: 100px 0 30px;
    font-size: 120%;
    font-weight: bold;
    text-align: center;
}

.login-join {
    text-align: center;
}

.login-code {
    max-width: 500px;
    margin: 40px auto;
}

.login-code-title {
        text-align: center;
        font-weight: 500;
        font-size: 150%;
        padding-top: 20px;
    }

.login-code-description {
        text-align: center;
        padding: 40px 20px;
    }

.login-code-form {
        text-align: center;
    }

.login-code-input {
        width: 250px;
        font-size: 36px;
        text-align: center;
        letter-spacing: 5px;
        font-weight: 500;
    }

.login-code-button {
        display: block;
        min-width: 170px;
        margin: 40px auto 0;
    }

.feed {
    display: grid;
    grid-template-columns: 250px auto;
    margin: 0 auto;
    max-width: var(--max-content-width);
    padding: 10px 20px 50px;
}

@media only screen and (max-width : 1024px) {
        .feed {
            grid-template-columns: 210px auto;
            padding-left: 10px;
            padding-right: 10px;
        }
    }

@media only screen and (max-width : 570px) {
        .feed {
            grid-template-columns: auto;
        }
    }

.feed-sidebar {
        padding-top: 30px;
        padding-right: 30px;
        font-size: 110%;
    }

@media only screen and (max-width : 570px) {
            .feed-sidebar {
                transform: translate(-100%);
                position: absolute;
                top: 90px;
                left: 0;
                right: 0;
                background: var(--bg-color);
                z-index: 2;
                min-height: calc(100% - 120px);
                padding: 30px 14px;
            }

            .mobile-menu-opened .feed-sidebar {
                transform: translate(0);
                padding-top: 0;
                position: relative;
                top: 0;
            }
        }

.feed-sidebar-block {
            padding-bottom: 20px;
        }

.feed-sidebar-header {
            font-size: 110%;
            font-weight: 600;
        }

@media only screen and (max-width : 570px) {
            .feed-sidebar-header {
                padding: 5px 10px;
            }
        }

.feed-sidebar-list {
            list-style: none;
            padding: 0;
        }

.feed-sidebar-list li {
                padding-bottom: 15px;
                margin-bottom: 0;
            }

.feed-sidebar-menu {
            font-size: 110%;
            font-weight: 500;
        }

.feed-sidebar-menu a {
                display: block;
                text-decoration: none;
                padding: 5px 10px;
            }

.feed-sidebar-menu a:hover,
            .feed-sidebar-menu-selected {
                color: var(--opposite-text-color);
                background-color: var(--opposite-bg-color);
            }

.feed-sidebar-menu-small {
                font-size: 90%;
            }

.feed-sidebar-menu-small li {
                    padding-bottom: 5px;
                }

.feed-sidebar-topics {
            max-width: 100%;
        }

.feed-sidebar-topics-more {
            text-align: center;
            padding: 20px 5px;
            font-weight: 500;
        }

.feed-main {
    }

@media only screen and (max-width : 570px) {
        .mobile-menu-opened .feed-main {
            display: none;
        }
    }

.feed-topic-header {
        padding: 30px;
        box-sizing: border-box;
        color: #FFF;
        font-size: 110%;
        margin-bottom: 40px;
    }

.feed-topic-header a {
            color: #FFF;
        }

.feed-topic-header-title {
            display: flex;
            flex-direction: row;
            grid-gap: 20px;
            gap: 20px;
            align-items: center;
        }

.feed-topic-header-name {
                font-size: 210%;
                font-weight: 700;
                text-decoration: none;
            }

.feed-topic-header-icon {
                width: 64px;
                height: 64px;
                border-radius: 50%;
                overflow: hidden;
                position: relative;
                border: solid 2px var(--bg-color);
            }

.feed-topic-header-desctiption {
        display: block;
    }

.feed-topic-header-footer {
        display: block;
        padding-top: 20px;
        font-size: 115%;
    }

.feed-topic-header-footer small {
            font-size: 70%;
        }

.feed-topic-header-settings {
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-start;
        align-items: center;
        flex-direction: row;
        grid-gap: 20px;
        gap: 20px;
        padding-top: 40px;
    }

.feed-topic-header-toggle {
            display: inline-block;
            position: relative;
            padding: 6px 13px 7px;
            cursor: pointer;
            color: var(--text-color);
            background-color: var(--block-bg-color);
            border-radius: var(--button-border-radius);
            border: var(--button-border);
            border-width: 0;
        }

.feed-topic-header-toggle.is-active {
                background-color: var(--button-bg-color);
                border: var(--button-border);
                border-color: var(--block-bg-color);
                color: var(--button-color);
            }

.feed-ordering {
        display: flex;
        align-content: flex-start;
        justify-content: flex-end;
        font-size: 110%;
        padding: 10px;
        width: 100%;
        box-sizing: border-box;
    }

@media only screen and (max-width : 570px) {
            .feed-ordering {
                font-size: 100%;
                justify-content: space-around;
            }
        }

.feed-ordering-item {
            padding: 10px;
            text-decoration: none;
            opacity: 0.5;
        }

select.feed-ordering-item {
                padding: 5px;
                margin: 5px 0 5px 0;
                opacity: 1;
            }

.feed-ordering-item:hover {
                opacity: 0.8;
            }

.feed-ordering-item-is-active {
                font-weight: 700;
                opacity: 1.0;
            }

.feed-ordering-extra {
        display: flex;
        flex-wrap: wrap;
        grid-gap: 10px;
        gap: 10px;
        font-size: 120%;
        padding: 10px;
        justify-content: flex-end;
    }

@media only screen and (max-width : 570px) {
            .feed-ordering-extra {
                font-size: 100%;
                justify-content: space-around;
                grid-gap: 0;
                gap: 0;
            }
        }

.feed-ordering-extra-item {
            padding: 7px 10px;
            text-decoration: none;
        }

.feed-ordering-extra-item-selected {
            color: var(--opposite-text-color);
            background-color: var(--opposite-bg-color);
        }

.feed-ordering-extra-item-selected:hover {
                color: var(--opposite-text-color);
            }

.feed-post {
    display: grid;
    grid-template-columns: min-content minmax(auto, 1fr) min-content;
    grid-template-rows: auto auto;
    justify-content: stretch;
    position: relative;
    padding-left: 40px;
    margin-left: 30px;
    min-height: 130px;
    cursor: pointer;
}

.feed-post-author,
    .feed-post-image {
        grid-column-start: 1;
        grid-column-end: 2;
        grid-row-start: 1;
        grid-row-end: 3;
        justify-self: start;
        display: flex;
        align-items: center;
    }

.feed-post-votes {
        grid-column-start: 3;
        grid-column-end: 4;
        grid-row-start: 1;
        grid-row-end: 3;
        justify-self: end;
        display: flex;
        align-items: center;
    }

.feed-post-header {
        grid-column-start: 2;
        grid-column-end: 3;
        grid-row-start: 1;
        grid-row-end: 2;
        justify-self: start;
        align-self: end;
    }

.feed-post-footer {
        grid-column-start: 2;
        grid-column-end: 3;
        grid-row-start: 2;
        grid-row-end: 3;
        justify-self: start;
        align-self: start;
        z-index: 1;
    }

.feed-post-type-intro,
    .feed-post-type-weekly_digest {
        min-height: 20px;
    }

.feed-post-type-intro .post-title-link:focus {
        outline: auto;
    }

.feed-post a {
        z-index: 1;
    }

.feed-post:hover {
        transition: 0.2s ease-out;
        box-shadow: 0 0 40px rgba(94, 104, 125, 0.3);
    }

.feed-post-type-intro:hover,
        .feed-post-type-weekly_digest:hover {
            box-shadow: none;
        }

.feed-post-votes {
        padding-left: 10px;
        z-index: 2;
    }

.feed-post-header {
        padding-bottom: 10px;
        max-width: 100%;
        overflow: hidden;
        text-overflow: ellipsis;
    }

.feed-post-title {
        font-size: 140%;
        font-weight: 500;
        line-height: 1.3em;
        text-align: left;
        overflow: hidden;
        text-overflow: ellipsis;
    }

.feed-post-title a {
            text-decoration: none;
        }

.feed-post-author .avatar {
        position: absolute;
        left: -26px;
        width: 52px;
        height: 52px;
        border: solid 3px var(--block-bg-color);
        text-align: left;
        z-index: 2;
    }

.feed-post-author .avatar img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

.feed-post-image {
        width: 20px;
    }

.feed-post-image-link {
            position: absolute;
            width: 72px;
            height: 72px;
            left: -36px;
            border: solid 3px var(--block-bg-color);
            border-radius: 100%;
            overflow: hidden;
            display: flex;
        }

@media only screen and (max-width: 570px) {
            .feed-post-image-link {
                width: 48px;
                height: 48px;
                left: -18px;
            }
        }

.feed-post-image img {
            object-fit: cover;
            width: 100%;
            height: 100%;
        }

.feed-post-room {
        padding-right: 10px;
        display: inline-block;
    }

.feed-post-badge {
        width: 1.3em;
        height: 1.3em;
        margin-right: 5px;
        vertical-align: middle;
        position: relative;
        top: -2px;
    }

.feed-post-comments {
        text-decoration: none;
        color: #999;
        white-space: nowrap;
        padding: 1em;
        margin: -1em;
        display: inline-block;
    }

.feed-post-footer .bookmark-button {
        display: inline-block;
        text-decoration: none;
        opacity: 0.6;
    }

.feed-post-is-pinned {
        background-color: var(--opposite-block-bg-color);
        color: var(--opposite-text-color);
    }

.feed-post-is-pinned a {
            color: var(--opposite-text-color);
        }

.feed-post-is-pinned .avatar {
            border-color: var(--opposite-block-bg-color);
        }

.feed-post-is-pinned .upvote {
            color: var(--text-color);
            border-color: var(--opposite-text-color);
        }

.feed-post-is-pinned .upvote:hover,
            .feed-post-is-pinned .upvote-voted {
                color: var(--opposite-text-color);
            }

.feed-post-comments-unread {
        font-weight: 600;
        color: var(--link-color);
        text-decoration: none;
        white-space: nowrap;
        padding: 1em;
        margin: -1em;
        display: inline-block;
    }

@media only screen and (max-width : 570px) {
        .feed-post {
            padding: 15px 15px 15px 30px;
            margin-left: 10px;
            margin-bottom: 25px;
        }

            .feed-post-author .avatar {
                left: -16px;
                width: 36px;
                height: 36px;
            }
    }

.feed-post-type-intro,
.feed-post-type-weekly_digest {
    display: flex;
    justify-content: flex-start;
    font-size: 120%;
    padding: 0 0 20px 0;
    margin-left: 40px;
}

.feed-post-type-intro .feed-post-title,
    .feed-post-type-weekly_digest .feed-post-title {
        font-size: 100%;
        font-weight: 400;
        line-height: 1.1em;
        padding-top: 3px;
    }

.feed-post-type-intro .avatar {
        position: relative;
        top: -2px;
        left: -5px;
        width: 38px;
        height: 38px;
    }

.feed-post-type-intro .user-position {
        font-size: 80%;
    }

.feed-post-type-intro .upvote {
        margin-left: 10px;
        margin-right: 10px;
        top: 0;
    }

.feed-post-type-intro .feed-post-comments {
        font-weight: 400;
        font-size: 80%;
        opacity: 0.5;
    }

@media only screen and (max-width : 570px) {
        .feed-post-type-intro,
        .feed-post-type-weekly_digest {
            margin-left: 10px;
            margin-bottom: 0;
        }
    }

.feed-post-type-intro .user-position {
        opacity: 0.7;
    }

.feed-post-type-weekly_digest .feed-post-author {
    font-size: 30px;
    padding-right: 10px;
    line-height: 1em;
}

.feed-post-type-event {
    grid-template-columns: min-content min-content minmax(auto, 1fr) min-content;
}

.feed-post-type-event .feed-post-author,
    .feed-post-type-event .feed-post-image {
        grid-column-start: 2;
        grid-column-end: 3;
    }

.feed-post-type-event .feed-post-votes {
        grid-column-start: 4;
        grid-column-end: 5;
    }

.feed-post-type-event .feed-post-header {
        grid-column-start: 3;
        grid-column-end: 4;
    }

.feed-post-type-event .feed-post-footer {
        grid-column-start: 3;
        grid-column-end: 4;
    }

.feed-post-type-event .feed-post-header-icon {
        grid-column-start: 1;
        grid-column-end: 2;
        grid-row-start: 1;
        grid-row-end: 3;
        align-self: center;
    }

.feed-post-type-event .post-event-date {
        border-radius: 10px;
        margin-right: 15px;
        max-height: 70px;
        max-width: 75px;
        font-size: 100%;
    }

.feed-post-type-event .post-event-date .post-event-date-day {
            padding: 7px;
        }

@media only screen and (max-width : 570px) {
            .feed-post-type-event .post-event-date {
                max-height: 60px;
                max-width: 55px;
                font-size: 90%;
            }
        }

.pay {
    font-size: 120%;
    padding-top: 30px;
}

.pay-title {
        text-align: center;
        font-weight: 500;
        font-size: 200%;
        padding-top: 20px;
        line-height: 1em;
    }

.pay-title small {
            font-size: 50%;
            font-weight: normal;
        }

.pay-subtitle {
        text-align: center;
        font-weight: 500;
        font-size: 180%;
        padding-top: 100px;
        padding-bottom: 40px;
    }

.pay-description {
        font-size: 120%;
        margin-top: 40px;
        text-align: center;
        padding: 40px 20px;
    }

.pay-list {
        text-align: left;
        list-style: none;
    }

.pay-button {
        margin: 50px 0 0;
    }

.pay-subscription {
        display: block;
        margin-top: 20px;
        font-size: 130%;
        text-align: center;
    }

.pay-warning {
        background-color: rgba(255, 252, 103, 0.5);
    }

.invite-friend {
    max-width: 450px;
    font-size: 140%;
    margin: 20px auto;
    text-align: center;
}

.invite-friend input {
        margin: 20px 0;
    }

.membership-expired {
    max-width: 600px;
    font-size: 140%;
    margin: 150px auto 50px;
}

.membership-expired-title {
        font-size: 140%;
        font-weight: 500;
        padding-top: 20px;
    }

.membership-expired-description {
        padding: 20px 0;
    }

.pay-packages {
    display: flex;
    align-items: flex-start;
    justify-content: center;
    flex-wrap: wrap;
}

.pay-packages input[type=radio] {
        display: none;
    }

.pay-package {
        display: block;
        margin: 10px;
        width: 240px;
        text-align: center;
        font-size: 140%;
        cursor: pointer;
    }

.pay-package:hover {
            transform: scale(1.05);
            transition: transform .2s;
        }

.pay-packages input[type=radio]:checked + .pay-package {
            transform: scale(1.05);
            background-color: var(--opposite-block-bg-color);
            color: var(--opposite-text-color);
        }

.pay-package-name {

        }

.pay-package-image {
            font-size: 56px;
            padding: 10px 0;
        }

.pay-package-price {
            font-weight: 500;
            font-size: 120%;
        }

.pay-package-price small {
                font-size: 50%;
                font-weight: 300;
            }

.pay-recurrent {
    display: block;
    padding: 20px;
    text-align: center;
}

.pay-recurrent-block {
        display: inline-block;
        font-size: 120%;
        padding: 10px 30px;
        font-weight: 500;
    }

.pay-recurrent-block input[type=checkbox] {
            transform: scale(1.5);
            margin-right: 5px;
        }

.pay-recurrent-block select {
            padding: 5px 10px;
            margin-left: 5px;
        }

.bookmarks {
    padding-top: 30px;
}

.bookmarks-title {
        font-size: 220%;
        font-weight: 600;
        text-align: right;
    }

.bookmarks-list {
        padding-top: 20px;
    }

.bookmarks-list-placeholder {
        font-size: 130%;
        opacity: 0.6;
        text-align: right;
        padding-top: 40px;
        max-width: 500px;
        float: right;
    }

.dashboard {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: flex-start;
}

.dashboard-item {
        display: block;
        min-width: 180px;
        text-align: center;
        text-decoration: none;
        margin: 20px 5px;
        padding: 30px 20px;
        border-radius: var(--block-border-radius);
    }

.dashboard-item:hover {
            box-shadow: var(--block-shadow);
        }

.dashboard-item-icon {
            display: block;
            width: 100%;
            font-size: 60px;
            line-height: 1em;
            padding-bottom: 10px;
        }

.dashboard-item-title {
            display: block;
            width: 100%;
            font-size: 140%;
            line-height: 1.5em;
        }

.landing {
    font-size: 140%;
    line-height: 1.5em;
}

.landing-block {
        display: flex;
        grid-gap: 30px;
        gap: 30px;
        flex-wrap: wrap;
        justify-content: center;
        align-items: flex-start;
        position: relative;
        margin: 0 auto;
        padding: 40px 10px 80px;
        box-sizing: border-box;
    }

.landing-block-limited {
            max-width: 1200px;
        }

.landing-block-narrow {
            max-width: var(--normal-content-width);
        }

.landing-block > div {
            flex: 1;
            min-width: 300px;
        }

.landing-block p {
            opacity: 0.85;
        }

@media only screen and (max-width : 570px) {
                .landing-block-20, .landing-block-30, .landing-block-40,
                .landing-block-50, .landing-block-60, .landing-block-70,
                .landing-block-80 {
                    max-width: 100% !important;
                    box-sizing: border-box;
                    padding: 20px;
                }

                .landing-block {
                    box-sizing: border-box;
                    padding: 20px;
                }
            }

.landing-block h2 {
            font-size: 220%;
            line-height: 1.2em;
            display: block;
        }

.landing-block-chats {
    grid-gap: 0;
    gap: 0;
    width: 100%;
    max-width: 2000px;
    padding-top: 30px;
    padding-bottom: 150px;
    display: flex;
    flex-wrap: nowrap;
}

.landing-block-chats img {
        max-width: 25%;
    }

@media only screen and (max-width : 570px) {
        .landing-block-chats {
            flex-wrap: wrap;
        }

        .landing-block-chats img {
            max-width: 100%;
        }
    }

.landing-block-map-title {
    font-size: 120%;
}

.landing-block-map {
    padding-bottom: 100px;
}

.landing-title {
    position: absolute;
    top: 45%;
    left: 50%;
    transform: translateX(-50%) translateY(-50%);
    font-size: 40px;
    line-height: 1.2em;
}

@media only screen and (max-width : 570px) {
        .landing-title {
            font-size: 5vw;
        }

        .landing {
            padding-top: 80px;
        }
    }

.feature {

}

.feature-title {
        font-size: 180%;
        line-height: 1.24em;
        margin-bottom: 0;
        text-align: center;
    }

.feature-list {
        padding-top: 30px;
    }

.feature-list li {
            padding-bottom: 10px;
        }

.feature-image {
        max-width: 100%;
    }

.map {
    position: relative;
}

.map-background {
        width: 100%;
        height: 700px;
        background-position: 80% 50%;
        background-size: cover;
        min-height: 500px;
        max-width: 2500px;
    }

.map-container {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
    }

.map-sidebar {
        font-size: 16px;
        padding: 20px;
        margin-bottom: 30px;
        box-sizing: border-box;
        box-shadow: 10px 15px 40px rgba(83, 91, 110, 0.11);
        background-color: #FFFFFF;
        color: #000000;
        border-radius: var(--block-border-radius);
        position: absolute;
        top: -30px;
        left: 5%;
        bottom: 0;
        width: 300px;
        height: 100%;
    }

.map-sidebar-header {
            font-size: 140%;
            padding-top: 30px;
            padding-bottom: 20px;
            font-weight: 500;
            padding-left: 7px;
        }

.map-sidebar-item {
            display: block;
            position: relative;
            margin-bottom: 5px;
            padding: 3px 7px;
        }

.map-sidebar-item-selected {
                background-color: #282c35;
                color: #FFFFFF;
            }

.map-counters {
        position: absolute;
        top: 20px;
        right: 10%;
        max-width: 450px;
    }

.map-counter {
            display: inline-block;
            float: right;
            padding: 20px 35px;
            margin-bottom: 20px;
            background-color: #FFFFFF;
            color: #000000;
            font-size: 220%;
            text-align: center;
        }

@media only screen and (max-width : 570px) {
            .map-counters {
                right: 20px;
                top: 40px;
            }
        }

.landing-screenshots {
    max-width: 2000px;
    position: relative;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

.landing-screenshot {
        display: block;
        max-width: 300px;
        top: 0;
        left: 0;
        z-index: 1;
    }

.landing-screenshot:hover {
            z-index: 100;
            transform: scale(1.1);
            transition: transform 0.1s;
        }

.landing-posts {
    position: relative;
    width: 100%;
    min-height: 500px;
    padding-left: 20px;
}

.landing-post {
        display: block;
        position: relative;
        width: 90%;
        padding: 20px 100px 20px 30px;
        box-sizing: border-box;
        box-shadow: 10px 15px 40px rgba(83, 91, 110, 0.11);
        background-color: #FFFFFF;
        border-radius: var(--block-border-radius);
        color: #333;
        font-size: 16px;
        line-height: 1.3em;
        font-family: var(--sans-font);
        margin-bottom: 20px;
    }

.landing-post:hover {
            z-index: 100;
            transform: scale(1.02);
            transition: transform 0.2s;
        }

.landing-post-avatar {
            display: block;
            position: absolute;
            top: 30px;
            left: -20px;
            height: 40px;
            width: 40px;
            border: solid 1px #FFF;
        }

.landing-post-title {
            font-weight: 500;
            padding-bottom: 5px;
            font-size: 110%;
            line-height: 1.2em;
        }

.landing-post-footer {
            font-size: 85%;
            color: #999;
        }

.landing-post-footer strong {
                color: #000;
                font-weight: 500;
            }

.landing-post-upvotes {
            position: absolute;
            top: 16px;
            right: 20px;
            box-sizing: border-box;
            padding: 26px 12px 5px;
            font-size: 110%;
            font-weight: 600;
            border: solid 1px #333;
            border-radius: var(--button-border-radius);
        }

.landing-post-upvotes::before {
                content: "▲";
                position: absolute;
                font-size: 16px;
                top: 5px;
                left: 50%;
                transform: translateX(-50%);
            }

.landing-post-link {
            display: block;
            position: absolute;
            top: 0;
            left: 0;
            bottom: 0;
            right: 0;
            width: 100%;
        }

.landing-dolor {
    width: 150px;
    height: 150px;
    float: right;
}

.profile {
    padding-top: 50px;
    padding-bottom: 100px;
    font-size: 110%;
}

.profile-card {
        page-break-inside: avoid;
        -moz-column-break-inside: avoid;
             break-inside: avoid;
        vertical-align: middle;
        color: var(--opposite-text-color);
        background-color: var(--opposite-bg-color);
    }

.profile-card-photo {
            display: flex;
            flex-direction: column;
            justify-content: center;
            align-items: center;
        }

.profile-card-age {
            font-size: 90%;
            max-width: 60%;
            margin: 0 auto;
            display: flex;
            flex-direction: row;
            justify-content: center;
            grid-gap: 3px;
            gap: 3px;
            line-height: 1.1em;
            border-radius: 5px;
            min-width: 25px;
            padding: 6px 5px 6px;
            color: var(--text-color);
            background-color: var(--bg-color);
            position: relative;
            top: -17px;
        }

.profile-card-info {
            display: block;
            text-align: left;
            font-size: 110%;
            padding-top: 20px;
            max-height: 700px;
            overflow: hidden;
        }

.profile-user-avatar {
            display: block;
            width: 100%;
            padding-top: 100%; /* 1:1 Aspect Ratio (Safari doesn't support an actual property) */
            margin: 0 auto;
            position: relative;
        }

.profile-user-avatar img {
                position: absolute;
                top: 0;
                left: 0;
                right: 0;
                width: 100%;
                height: 100%;
                object-fit: cover;
            }

.profile-user-name {
            display: block;
            font-size: 170%;
            font-weight: 600;
            padding-bottom: 10px;
            text-decoration: none;
            word-break: break-word;
        }

.profile-user-fullname {
                margin-right: 15px;
                color: var(--opposite-text-color);
            }

.profile-user-nickname {
                font-weight: 300;
                opacity: 0.4;
                font-size: 88%;
                color: var(--opposite-text-color);
            }

.profile-user-job {
            display: block;
            font-weight: 500;
            padding-bottom: 10px;
        }

.profile-user-location {
            display: block;
        }

.profile-user-hat {
            padding-top: 10px;
            font-size: 120%;
        }

.profile-user-bio {
            display: block;
            opacity: 0.7;
            font-size: 90%;
        }

.profile-user-bio img {
                max-width: 200px;
            }

.profile-user-bio a {
                color: var(--opposite-text-color);
            }

.profile-header {
        font-size: 150%;
        font-weight: 700;
        text-align: center;
        padding-bottom: 20px;
        padding-top: 40px;
    }

.profile-header a {
            text-decoration: none;
        }

.profile-more {
        text-align: center;
        font-size: 90%;
        padding-bottom: 50px;
    }

.profile-user-edit {
        display: block;
        text-align: right;
        padding-bottom: 20px;
        font-size: 120%;
    }

.profile-statuses {
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: center;
        align-items: stretch;
        align-content: stretch;
        text-align: center;
        font-size: 120%;
        padding: 0;
        margin-bottom: 30px;
        overflow: hidden;
    }

.profile-friend-button-comment {
            font-size: 90%;
            opacity: 0.8;
            max-width: 50%;
        }

.profile-status {
            display: flex;
            flex-direction: column;
            justify-content: center;
            align-items: center;
            text-decoration: none;
            width: 25%;
            min-width: 120px;
            padding: 20px;
            box-sizing: border-box;
        }

a.profile-status:hover {
                background-color: var(--opposite-bg-color);
                color: var(--opposite-text-color);
            }

.profile-status-number,
        .profile-status-icon {
            display: block;
            font-size: 180%;
            font-weight: 500;
            padding: 0;
        }

.profile-status-icon {
            display: block;
            font-size: 230%;
        }

.profile-status-text {
            display: block;
            font-size: 100%;
        }

.profile-status-text-small {
            display: block;
            font-size: 60%;
        }

.profile-status-status {
            display: block;
            font-size: 90%;
        }

.profile-intro {
        padding-top: 50px;
        padding-bottom: 50px;
    }

.profile-intro .profile-header {
            position: relative;
            padding-top: 0;
        }

.profile-intro .profile-header a {
            text-decoration: none;
        }

.profile-intro-text {
            padding-top: 10px;
            font-size: 110%;
            line-height: 1.5em;
            overflow: hidden;
            text-overflow: ellipsis;
        }

.profile-intro-footer {
            padding-top: 20px;
            text-align: center;
        }

.profile-intro-footer a {
                text-decoration: none;
                font-weight: 500;
            }

.profile-intro-edit {
        position: absolute;
        right: 0;
    }

.profile-achievements {
        padding-bottom: 20px;
        font-size: 90%;
    }

.user-achievements {
            display: flex;
            flex-wrap: wrap;
            justify-content: center;
            margin-left: -20px;
            margin-right: -20px;
        }

.user-achievement {
            display: flex;
            position: relative;
            align-items: center;
            width: 150px;
            margin: 20px;
            min-height: 170px;
            font-weight: bold;
            text-align: center;
            text-decoration: none;
            color: #FFF;
            height: 210px;
            perspective: 1000px;
            transition: 0.2s ease-out;
        }

.user-achievement:hover {
                color: #FFF;
                text-decoration: none;
            }

.user-achievement:hover .user-achievement-wrapper {
                transform: rotateY(180deg);
            }

.user-achievement-wrapper {
                text-overflow: ellipsis;
                position: relative;
                width: 100%;
                height: 100%;
                text-align: center;
                transition: transform 0.8s;
                transform-style: preserve-3d;
                word-wrap: break-word;
            }

.user-badge-image {
                max-height: 100px;
                margin: 0 auto;
            }

.user-achievement-name {
                display: block;
                padding-top: 10px;
                padding-bottom: 10px;
                text-align: center;
                line-height: 1.3em;
            }

.user-achievement-front,
            .user-achievement-back {
                position: absolute;
                width: calc(100% - 40px);
                height: calc(100% - 30px);
                -webkit-backface-visibility: hidden;
                border-radius: var(--block-border-radius);
                box-shadow: var(--block-shadow);
            }

.user-achievement-front {
                padding: 15px 20px;
                font-size: 140%;
                display: flex;
                flex-direction: column;
                justify-content: center;
            }

.user-achievement-back {
                display: flex;
                padding: 15px 20px;
                flex-direction: column;
                justify-content: center;
                font-size: 90% !important;
                transform: rotateY(180deg);
            }

.profile-list {
        padding-top: 30px;
    }

.profile-list-placeholder {
            text-align: center;
            padding: 100px 0;
            font-size: 160%;
            opacity: 0.6;
        }

.profile-tags {
        padding-top: 30px;
        padding-bottom: 30px;
    }

.profile-tags-group {
            padding-top: 20px;
            padding-bottom: 50px;
        }

.collectible-tags-group {
            font-size: 130%;
            padding-bottom: 10px;
        }

.user-tags {
            display: flex;
            flex-wrap: wrap;
            justify-content: center;
            align-items: flex-start;
        }

.user-tag {
                position: relative;
                cursor: pointer;
                font-size: 110%;
                font-weight: 300;
                padding: 7px 20px;
                border: var(--button-hover-border);
                margin-right: 20px;
                margin-bottom: 20px;
                border-radius: 20px;
                text-decoration: none;
                text-align: center;
                opacity: 0.7;
                z-index: 100;
                transition: 0.2s ease-out;
            }

.user-tag:hover,
                .user-tag-active {
                    color: var(--button-hover-color);
                    background-color: var(--button-hover-bg-color);
                    border: solid 2px;
                    opacity: 1;
                }

.user-tag-active {
                    border-color: var(--bg-color);
                    color: #FFF !important;
                    font-weight: 500;
                }

.profile-tags-footer {
        text-align: center;
        font-size: 120%;
    }

.profile-tags-footer small {
            opacity: 0.7;
        }

.profile-add-button {
        text-align: center;
        padding: 50px 0;
    }

.user-projects {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: flex-start;
    }

.user-project {
            width: 46%;
            margin: 20px 2%;
            text-align: center;
        }

@media only screen and (max-width : 570px) {
                .user-project {
                    width: 100%;
                }
            }

.user-project img {
                max-height: 300px;
            }

.user-project-title {
                display: block;
                text-align: center;
                padding: 20px;
                font-size: 140%;
                font-weight: 500;
                overflow: hidden;
                text-overflow: ellipsis;
            }

.profile-comments,
   .profile-posts,
   .user-projects {
        margin: 20px 0 30px;
   }

.profile-note {
       display: flex;
       flex-direction: column;
       grid-gap: 20px;
       gap: 20px;
       margin: 10px auto 10px;
       border-radius: var(--block-border-radius);
       min-width: 300px;
       width: 50%;
        opacity: 0.8;
       box-sizing: border-box;
   }

.profile-note:hover {
            opacity: 1;
            color: var(--opposite-text-color);
            background-color: var(--opposite-block-bg-color);
        }

.profile-note-title {
            cursor: pointer;
            font-weight: 500;
            padding: 10px 20px;
            text-align: center;
            box-sizing: border-box;
        }

.profile-note-form {
            display: none;
            flex-direction: column;
            grid-gap: 5px;
            gap: 5px;
            padding: 0 20px 20px;
            align-items: center;
        }

.profile-note-form-text {
                -moz-appearance: none;
                     appearance: none;
                width: 100%;
                outline: none;
                border: none;
                box-shadow: none;
                font-size: 120%;
                text-align: center;
                overflow-y: hidden;
                transition: none;
            }

.profile-note-form-text:focus {
                    border: var(--button-border);
                }

.profile-note-form-button {
                width: 120px;
            }

.profile-note-moderator {
                padding-top: 10px;
                opacity: 0.8;
                width: 100%;
                text-align: left;
            }

.profile-note-footer {
                padding-top: 20px;
                opacity: 0.8;
            }

.profile-note-extended {
            opacity: 1;
            width: 100%;
            cursor: default;
            background-color: var(--block-bg-color);
            box-shadow: var(--block-shadow);
            margin-bottom: 30px;
        }

.profile-note-extended:hover {
                color: var(--text-color);
                background-color: var(--block-bg-color);
            }

.profile-note-extended .profile-note-form {
                display: flex;
            }

.friend-button {
    position: relative;
    top: -15px;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: center;
    grid-gap: 5px;
    gap: 5px;
    padding: 10px 17px;
}

.friend-button-icon-big {
        font-weight: 700;
        font-size: 27px;
        height: 20px;
    }

.people-wrapper {
    display: grid;
    grid-template-columns: 320px minmax(auto, 1fr);
    grid-template-rows: 90px 100px 500px auto;
    justify-content: stretch;
    align-items: flex-start;
    grid-column-gap: 20px;
    -moz-column-gap: 20px;
         column-gap: 20px;
    grid-row-gap: 20px;
    row-gap: 20px;
    margin: 0 auto;
    position: relative;
    max-width: var(--max-content-width);
}

.people-title {
        grid-column-start: 2;
        grid-column-end: 3;
        grid-row-start: 1;
        grid-row-end: 2;
        justify-self: start;
        z-index: 100;
        font-size: 220%;
        font-weight: 500;
        padding-top: 30px;
    }

.people-title a {
            text-decoration: none;
        }

.people-search {
        grid-column-start: 2;
        grid-column-end: 3;
        grid-row-start: 2;
        grid-row-end: 3;
        justify-self: start;
        z-index: 100;
        width: 100%;
        position: relative;
        display: flex;
        flex-wrap: wrap;
    }

.people-search-text,
        .people-search-country {
            display: block;
            padding: 10px;
            font-size: 145%;
        }

.people-search-text > input,
            .people-search-country > select {
                display: block;
                position: relative;
                -moz-appearance: none;
                     appearance: none;
                -webkit-appearance: none;
                border: none;
                resize: vertical;
            }

.people-search-text {
                width: 100%;
                min-width: 200px;
                max-width: 400px;
                margin-right: 20px;
            }

.people-search-text > input {
                    width: 100%;
                }

.people-search-country > select {
                width: 200px;
            }

.people-results {
        grid-column-start: 2;
        grid-column-end: 3;
        grid-row-start: 4;
        grid-row-end: 5;
        justify-self: start;
        z-index: 100;
    }

@media only screen and (max-width : 570px) {
        .people-wrapper {
            grid-template-columns: 100%;
            grid-template-rows: auto;
            margin: 10px;
        }

        .people-title {
            display: none;
        }

        .people-search {
            grid-column-start: 1;
            grid-column-end: 2;
            grid-row-start: auto;
            grid-row-end: auto;
        }

            .people-filters-group {
                display: none;
            }

            .people-filters-group.visible {
                margin-top: 40px;
                display: block;
            }

            .people-search-text {
                max-width: 100%;
                margin-right: 0;
            }

            .people-search-country,
            .people-search-country > select {
                width: 100%;
            }

        .people-results {
            grid-column-start: 1;
            grid-column-end: 2;
            grid-row-start: auto;
            grid-row-end: auto;
        }
    }

.people {
    max-width: 100%;
}

.people-map {
    display: block;
    z-index: 1;
    position: absolute;
    width: 100%;
    padding-top: 90px;
}

.people-map-container,
    .people-map-container .mapboxgl-map,
    .people-map-container .mgl_map_wrapper {
        width: 100%;
        height: 800px;
    }

@media only screen and (max-width : 570px) {
        .people-map {
            padding-top: 0;
            position: relative;
        }

        .people-map-container,
        .people-map-container .mapboxgl-map,
        .people-map-container .mgl_map_wrapper {
            height: 500px;
        }
    }

.people-map-user-marker {
        display: block;
        cursor: pointer;
        width: 25px;
        height: 25px;
        border-radius: 50%;
        background-size: cover;
        background-position: 50% 50%;
        border: solid 2px var(--block-bg-color);
        background-color: #CCC;
        transition: 0.2s ease-out;
    }

.people-map-user-marker:hover {
            width: 50px;
            height: 50px;
        }

.people-map-user-cluster {
        display: block;
        cursor: pointer;
        width: 30px;
        height: 30px;
        border-radius: 50%;
        background-size: cover;
        background-position: 50% 50%;
        background-color: var(--block-bg-color);
        border: solid 2px var(--block-bg-color);
        color: #FFF;
        text-shadow: 0 0 2px black;
        text-align: center;
        font-weight: 700;
        font-size: 12px;
        line-height: 30px;
    }

.people-filters {
    grid-column-start: 1;
    grid-column-end: 2;
    grid-row-start: 1;
    grid-row-end: 6;
    justify-self: start;
    z-index: 100;
    display: block;
    background-color: var(--block-bg-color);
    border-radius: var(--block-border-radius);
    width: 100%;
}

@media only screen and (max-width : 570px) {
        .people-filters {
            grid-row-start: auto;
            grid-row-end: auto;
        }
    }

.people-filters-title {
        display: block;
        font-size: 190%;
        font-weight: 500;
        padding-bottom: 20px;
    }

.people-filters-title a {
            text-decoration: none;
        }

.people-filters-title strong {
            font-size: 120%;
            font-weight: 700;
        }

.people-filters-header {
        font-size: 140%;
        padding-top: 30px;
        padding-bottom: 20px;
        font-weight: 500;
    }

.people-filters-tag {
        display: block;
        position: relative;
        margin-bottom: 10px;
    }

.people-filters-tag label {
            display: block;
            cursor: pointer;
            font-weight: 300;
            text-decoration: none;
            padding: 6px 10px;
        }

.people-filters-tag input[type=checkbox] {
            display: none;
        }

.people-filters-tag input:checked + label {
            background-color: var(--opposite-block-bg-color);
            color: var(--opposite-text-color);
        }

.people-filters-tag-bar {
            display: block;
            border-radius: 5px;
            height: 7px;
            width: 100%;
            margin-top: 3px;
            background-color: var(--opposite-block-bg-color);
            opacity: 0.5;
        }

.people-filters-tag:hover .people-filters-tag-bar {
                opacity: 1.0;
            }

.people-filters-tag input:checked + label .people-filters-tag-bar {
                background-color: var(--block-bg-color);
                opacity: 1.0;
            }

.people-filters-button {
        width: 100%;
        font-size: 120%;
        margin-top: 50px;
        margin-bottom: 70px;
    }

@media only screen and (max-width : 570px) {
        .people-filters-header {
            padding: 40px 0 20px;
        }

        .people-filters-button {
            margin-top: 10px;
            margin-bottom: 30px;
        }
    }

.people-stats {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    font-size: 120%;
}

.people-stat {
        margin: 0 1.5%;
        width: 30%;
    }

.people-stat-header {
            font-size: 110%;
            font-weight: 500;
        }

.people-stat-list {
            padding: 0 0 0 20px;
        }

.people-stat-list li {
                padding-bottom: 10px;
            }

.people-results {
    display: block;
    width: 100%;
}

.people-results-placeholder {
        display: block;
        width: 100%;
        padding: 50px 20px;
        text-align: center;
        opacity: 0.5;
        font-size: 150%;
    }

.network {
    font-size: 140%;
    padding-top: 30px;
}

.network-title {
        font-size: 230%;
        text-align: center;
        font-weight: 500;
        padding-top: 50px;
        padding-bottom: 40px;
        text-decoration: none;
    }

.network-header {
        font-size: 150%;
        font-weight: 500;
        text-decoration: none;
        display: block;
        width: 100%;
        box-sizing: border-box;
        padding-top: 10px;
        padding-left: 20px;
        padding-bottom: 30px;
    }

.network-description {
        text-align: center;
        max-width: var(--normal-content-width);
        padding-bottom: 40px;
        font-size: 110%;
    }

.network-block {
        padding-bottom: 40px;
    }

.network-channels {
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-start;
        align-items: flex-start;
    }

.network-channel {
            position: relative;
            display: block;
            max-width: 180px;
            padding: 20px;
            box-sizing: border-box;
            text-align: center;
            text-decoration: none;
        }

.network-channel-icon {
                display: block;
                width: 140px;
                height: 140px;
                background-color: #FFFFFF;
            }

.network-channel-badge {
                position: absolute;
                display: block;
                top: 16px;
                right: 16px;
                font-size: 200%;
                border-radius: 1em;
                background-color: var(--bg-color);
                line-height: 1em;
                min-width: 1em;
                border: solid 2px var(--bg-color);
            }

.network-channel-name {
                display: block;
                padding-top: 10px;
                text-decoration: underline;
                font-weight: 500;
            }

.network-channel-description {
                display: block;
                padding-top: 5px;
                font-size: 70%;
                opacity: 0.8;
            }

.network-channel-count {
                display: block;
                font-size: 60%;
                padding-top: 5px;
                opacity: 0.8;
            }

@media only screen and (max-width : 570px) {
            .network-block {
                padding: 10px;
            }

            .network-channels {
                justify-content: center;
            }

                .network-channel {
                    max-width: 160px;
                    padding: 10px;
                }

                    .network-channel-icon {
                        width: 120px;
                        height: 120px;
                    }
        }

.network-channel-text {
            font-size: 90%;
            padding: 10px;
        }

:root {
    --post-width: 700px;
}

.post {
    max-width: var(--post-width);
    margin: 70px auto 0;
}

.post-edit-button {
    display: inline-block;
    padding: 8px 6px 9px 10px;
    font-size: 60%;
    vertical-align: top;
}

.post-header {
    position: relative;
}

.post-actions-line {
    opacity: 0.6;
}

.post-actions-line a {
    display: inline-block;
    text-decoration: none;
}

.post-actions-line-item {
    padding-right: 15px;
}

.post-image {
    margin-bottom: 50px;
}

.post-text {
    position: relative;
}

.post-publicity-preferences {
    display: inline-block;
    font-size: initial;
    font-weight: lighter;
    opacity: 0.6;
    vertical-align: middle;
}

.post-title {
    word-break: break-word;
}

.post-inline-title {
    margin: 0;
    font-size: 28px;
    display: inline-block;
    word-break: break-word;
}

.post-type-post {

}

.post-type-post .post-header {
    text-align: center;
}

.post-type-post .post-info {
    padding-bottom: 20px;
    display: inline-flex;
    flex-wrap: wrap;
}

.post-type-post .post-title {
    font-size: 300%;
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    line-height: 1.3em;
    font-weight: 700;
    margin: 0;
}

.post-title-link::before {
    bottom: 0;
    content: "";
    left: 0;
    overflow: hidden;
    position: absolute;
    right: 0;
    top: 0;
    white-space: nowrap;
    z-index: 1;
    border-radius: var(--block-border-radius);
}

.post-title-link:focus {
    outline: none;
}

.block .post-title-link:focus::before {
    box-shadow: 0 0 20px 0 var(--input-selection-color);
}

.post-type-post .post-edit-button {
    display: inline-block;
    vertical-align: middle;
    font-size: 50%;
    position: relative;
    top: -5px;
}

.post-type-post .post-label {
    font-size: 180%;
    padding-bottom: 20px;
}

.post-type-post .post-actions-line {
    padding-top: 20px;
    padding-bottom: 20px;
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
}

.post-type-post .post-author {
    font-size: 110%;
    padding-bottom: 40px;
}

.post-type-post .post-author .post {
    padding-bottom: 5px;
}

.post-type-post .post-author .avatar {
    width: 30px;
    height: 30px;
}

.post-type-post .post-image {
    max-height: 800px;
    padding-top: 40px;
    overflow: hidden;
}

.post-type-post .upvote {
    position: absolute;
    top: 30px;
    left: -110px;
    padding-left: 20px;
    padding-right: 20px;
}

.post-type-post .upvote:not(.upvote-disabled) {
    float: left;
    position: sticky;
    margin-left: -110px;
    margin-top: 30px;
}

@media only screen and (max-width: 1024px) {
    .post-type-post .upvote, .post-type-post .upvote:not(.upvote-disabled) {
        top: 0;
        left: auto;
        right: 0;
        z-index: 1;
        float: right;
        display: block;
        margin-bottom: 1.5em;
        margin-left: 1.5em;
        position: relative;
    }
}

.post-type-post .post-footer {
    padding: 40px 0;
    margin-top: 70px;
}

.post-layout-block {
    width: 100%;
    max-width: 100%;
}

.post-layout-block .post-title {
    font-size: 200%;
    font-weight: 500;
    line-height: 1.2em;
}

.post-layout-block .post-info {
    padding-top: 7px;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: flex-start;
    grid-gap: 10px;
    gap: 10px;
}

.post-layout-block .post-footer {
    text-align: left;
    padding-top: 20px;
}

.post-layout-block .post-footer .post-user {
    display: block;
    padding-top: 10px;
}

.post-layout-block .post-badges {
    padding-top: 10px;
    padding-bottom: 0;
    font-size: 120%;
}

.post-type-battle {
    margin-top: 30px;
    width: 100%;
    max-width: 100%;
}

.post-project-image .post-image {
    padding-top: 0;
    margin-bottom: 30px;
    max-height: none;
}

.post-project-link {
    font-size: 180%;
    font-weight: 600;
    word-break: break-all;
    overflow: hidden;
}

.text-body {
    position: relative;
    font-style: normal;
    color: var(--text-color);
    font-family: var(--serif-font);
    font-weight: 400;
    max-width: 100%;
    letter-spacing: 0.01rem;
    word-break: break-word;
    text-overflow: ellipsis;
}

.text-body-type-post {
    font-size: 19px;
    line-height: 1.67;
    letter-spacing: 0.01rem;
    padding-top: 30px;
}

.text-body-layout-notitle {
    padding-top: 0;
}

.post-layout-block .text-body {
    padding-top: 30px;
}

.post-type-battle .text-body {
    padding-top: 0;
}

@media only screen and (max-width: 570px) {
    .text-body {
        font-size: 15px;
        line-height: 1.6em;
    }
}

.text-body-type-comment {
}

.text-body p,
.text-body h1,
.text-body h2,
.text-body h3,
.text-body h4,
.text-body h5,
.text-body ul,
.text-body dl {
    width: 100%;
    font-style: normal;
    padding: 0;
    box-sizing: border-box;
}

.text-body p {
    margin-top: 1.5em;
    margin-bottom: 1.5em;
    box-sizing: border-box;
}

.text-body strong,
.text-body b {
    font-weight: 600;
}

.text-body a {
    font-weight: 600;
}

.text-body h1,
.text-body h2,
.text-body h3,
.text-body h4,
.text-body h5 {
    font-family: var(--sans-font);
    letter-spacing: -0.02em;
    line-height: 1.3em;
    font-weight: 500;
    margin: 0 auto;
}

.text-body h1 {
    font-size: 230%;
    margin-top: 180px;
    margin-bottom: 70px;
    line-height: 1.4em;
    text-align: center;
}

.text-body h2 {
    font-size: 190%;
    margin-top: 130px;
    margin-bottom: 50px;
    text-align: left;
}

.text-body h3 {
    font-size: 150%;
    margin-top: 100px;
    margin-bottom: 30px;
    text-align: left;
}

.text-body h4 {
    font-size: 120%;
    margin-top: 70px;
    margin-bottom: 10px;
    text-align: left;
}

.text-body h1 strong,
.text-body h2 strong,
.text-body h3 strong {
    font-size: 200%;
    line-height: 1.2em;
}

.text-body h1 a,
.text-body h2 a,
.text-body h3 a {
    color: var(--text-color);
}

.text-body hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: dashed 3px #BDC3C7;
    margin: 2em 0;
    padding: 0;
}

.text-body h1 + h2 {
    margin-top: 10px;
}

.text-body h2 + h3 {
    margin-top: 10px;
}

.text-body ul,
.text-body ol {
    padding-left: 30px;
    width: 95%;
    font-weight: 400;
    font-style: normal;
    box-sizing: border-box;
}

.text-body li {
    margin-bottom: 15px;
}

.text-body ol li {
    list-style-type: decimal;
}

.text-body li ul {
    padding-top: 10px;
}

.text-body dl {
    padding-left: 0;
}

.text-body dd {
    margin-top: 10px;
    margin-left: 20px;
}

.text-body dt {
    margin-bottom: 20px;
    line-height: 1.3em;
    font-family: var(--sans-font);
    font-weight: bold;
    margin-top: 40px;
    padding: 0;
}

.text-body blockquote {
    font-size: 110%;
    font-family: var(--sans-font);
    border-left: solid 4px var(--opposite-block-bg-color);
    padding-left: 15px;
    margin-left: 0;
    margin-top: 2em;
    margin-bottom: 2em;
}

.text-body code {
    font-family: Ubuntu, monospace;
}

.text-body pre {
    display: block;
    white-space: pre-wrap;
    background-color: var(--opposite-block-bg-color);
    color: var(--opposite-text-color);
    border-radius: 20px;
    margin-top: 2em;
    margin-bottom: 2em;
    overflow-x: auto;
    overflow-y: hidden;
}

.text-body pre code {
    font-family: Ubuntu, monospace;
    display: block;
    padding: 20px 25px;
}

.text-body figure {
    display: block;
    width: 100%;
    box-sizing: border-box;
    margin: 1em auto;
    text-align: center;
}

@media only screen and (min-width: 800px) {
    .post-type-post .text-body figure {
        width: 110%;
        margin: 1em auto 1em -5%;
    }
}

.text-body figcaption {
    font-family: var(--sans-font);
    color: var(--text-color);
}

.text-body figure * {
    max-width: 100%;
    box-sizing: border-box;
}

.text-body img {
    max-width: 100%;
}

@media only screen and (min-width: 1100px) {
    .image-wide {
        max-width: none !important;
        width: 170% !important;
        position: relative;
        left: -30%;
    }
}

.text-body big {
    font-size: 120%;
}

.text-body figure a {
    border-bottom: none;
    text-decoration: none;
}

.text-body strong > em {
    font-size: 110%;
    font-style: normal;
    height: 35px;
    font-weight: 400;
    vertical-align: bottom;
    background-color: var(--opposite-bg-color);
    color: var(--opposite-text-color);
    padding: 4px 7px 5px;
    line-height: 1.6em;
    -webkit-box-decoration-break: clone;
    box-decoration-break: clone;
}

.text-body strong > em a {
    color: var(--opposite-text-color);
}

.text-body table {
    table-layout: fixed;
    border-spacing: 10px;
    border-collapse: collapse;
}

.text-body table thead {
    text-align: left;
    font-size: 120%;
}

.text-body table thead th {
    padding-bottom: 30px;
}

.text-body table td {
    width: 1%;
    padding: 0 50px 30px 0;
    vertical-align: top;
    box-sizing: border-box;
}

.text-body-type-comment {
    font-size: 115%;
    line-height: 1.67;
    letter-spacing: 0.01rem;
}

.text-body-type-comment p {
    margin-top: 0;
    margin-bottom: 1.1em;
    overflow: hidden;
    text-overflow: ellipsis;
}

.text-body-type-comment p:last-of-type {
    margin-bottom: 0;
}

.text-body-type-comment blockquote {
    margin-top: 2em;
    margin-bottom: 0.5em;
    opacity: 0.5;
    border-width: 2px;
}

.text-body-type-comment h1,
.text-body-type-comment h2 {
    margin-top: 2em;
    margin-bottom: 0.8em;
}

.text-body-type-comment h3,
.text-body-type-comment h3 {
    margin-top: 1.5em;
    margin-bottom: 0.5em;
}

.text-body-type-comment h1 {
    font-size: 180%;
}

.text-body-type-comment h2 {
    font-size: 160%;
}

.text-body-type-comment h3 {
    font-size: 130%;
}

.text-body-type-comment h4 {
    font-size: 110%;
}

.text-body > *:first-child {
    margin-top: 0;
    padding-top: 0;
}

.post-link {
    color: var(--opposite-text-color);
    background-color: var(--opposite-block-bg-color);
    font-family: var(--sans-font);
    font-weight: normal;
    margin: 40px auto 0;
    padding: 30px !important;
}

.post-link-a {
    display: block;
    color: var(--opposite-text-color) !important;
    width: 100%;
    text-decoration: none;
}

.post-link-image {
    margin-bottom: 15px;
    background-color: var(--bg-color);
}

.post-link-title {
    display: block;
    font-size: 150%;
    line-height: 1.3em;
    padding-bottom: 15px;
    font-weight: 600;
    text-decoration: underline;
}

.post-link-url {
    font-size: 90%;
    line-height: 1.3em;
    font-weight: 300;
    display: block;
    opacity: 0.6;
}

.battle-header {
    text-align: center;
    margin: 0 auto;
}

.battle-header-topic {
    display: inline-flex;
    flex-wrap: wrap;
    padding-top: 20px;
}

.battle-title-main {
}

.battle-title-main .post-actions-line {
    text-align: center;
}

.battle-title {
    padding: 0;
    overflow: hidden;
    font-size: 250%;
    min-height: 140px;
    color: #FFF;
    margin: 50px auto 20px;
}

.battle-title-side-a,
.battle-title-side-b {
    padding: 30px 25px;
    display: flex;
    align-items: center;
    box-sizing: border-box;
    font-weight: 500;
}

@media only screen and (max-width: 570px) {
    .battle-title {
        font-size: 150%;
        min-height: 100px;
        margin-top: 20px;
    }

    .battle-title-side-a,
    .battle-title-side-b {
        padding: 10px;
    }
}

.battle-title-side-a {
    background-color: #4C98D5;
}

.battle-title-side-a div,
.battle-title-side-b div {
    width: 100%;
    text-align: center;
}

.battle-title-side-b {
    background-color: #53AA68;
}

.battle-title-vs {
    position: relative;
    background: rgb(76, 152, 213);
    background: linear-gradient(108deg, rgba(76, 152, 213, 1) 0%, rgba(76, 152, 213, 1) 49%, rgba(83, 170, 104, 1) 50%, rgba(83, 170, 104, 1) 100%);
}

.battle-title-vs-text {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateX(-50%) translateY(-50%);
    font-size: 70%;
    opacity: 0.7;
}

.battle-stats {
}

.battle-stats-arguments {
    font-size: 180%;
    padding-top: 10px;
    padding-bottom: 20px;
}

.battle-stats-graph {
    display: flex;
    height: 10px;
    border-radius: 15px;
    overflow: hidden;
}

.battle-stats-arguments strong {
    font-weight: 700;
}

.post-event {
    display: grid;
    grid-template-columns: min-content auto min-content;
    grid-template-rows: auto auto auto;
    justify-content: stretch;
    align-items: stretch;

    max-width: var(--post-width);
    margin-bottom: 40px;
}

.post-event-side {
    grid-column-start: 1;
    grid-column-end: 2;
    grid-row-start: 1;
    grid-row-end: 4;

    padding-right: 20px;
}

.post-event-date {
    display: grid;
    grid-template-columns: auto;
    grid-template-rows: 60% 40%;
    justify-content: stretch;
    align-items: stretch;

    width: 90px;
    height: 100px;
    border-radius: 20px;
    box-sizing: border-box;
    box-shadow: var(--block-shadow);
    text-align: center;
    overflow: hidden;

    font-size: 20px;
}

.post-event-date-day {
    font-size: 200%;
    line-height: 1em;
    padding: 11px;
    color: var(--opposite-text-color);
    background-color: var(--opposite-bg-color);
}

.post-event-date-month {
    font-weight: 500;
    background-color: #FB1324;
    color: #FFF;
    padding: 3px;
}

.post-event-title {
    grid-column-start: 2;
    grid-column-end: 3;
    grid-row-start: 1;
    grid-row-end: 2;

    font-size: 160%;
    padding-bottom: 10px;
}

.post-event-location {
    grid-column-start: 2;
    grid-column-end: 3;
    grid-row-start: 2;
    grid-row-end: 3;

    font-size: 120%;
    padding-bottom: 10px;
}

.post-event-location i {
    opacity: 0.7;
}

.post-event-calendar {
    grid-column-start: 2;
    grid-column-end: 3;
    grid-row-start: 3;
    grid-row-end: 4;

    font-size: 90%;
    padding-top: 10px;
}

.post-event-participants {
    display: flex;
    grid-gap: 10px;
    gap: 10px;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    padding-bottom: 40px;
}

.post-event-participants > * {
        width: 50px;
    }

.post-event-participants-text {
        font-size: 120%;
        font-weight: 500;
        white-space: nowrap;
        width: auto;
        text-align: right;
    }

.post-event-rsvp {
    grid-column-start: 3;
    grid-column-end: 4;
    grid-row-start: 1;
    grid-row-end: 4;

    padding-left: 20px;
}

.event-rsvp-button {
    display: block;
    padding: 10px;
    width: 90px;
    text-align: center;
    color: var(--opposite-text-color);
    background-color: var(--opposite-bg-color);
    border-radius: 20px;
}

.event-rsvp-button-icon {
    display: block;
    font-size: 160%;
    text-align: center;
    padding-bottom: 10px;
}

.event-rsvp-button-text {
    display: block;
    font-size: 130%;
    text-align: center;
    line-height: 1.2em;
}

@media only screen and (max-width: 570px) {
    .post-event {
        display: grid;
        grid-template-columns: min-content auto;
        grid-template-rows: 90px auto auto auto auto;
        justify-content: stretch;
        align-items: stretch;
    }

    .post-event-date {
        height: 70px;
        width: 70px;
        font-size: 14px;
    }

    .post-event-location {
        grid-column-start: 1;
        grid-column-end: 3;
        grid-row-start: 2;
        grid-row-end: 3;

        font-size: 130%;
    }

    .post-event-calendar {
        grid-column-start: 1;
        grid-column-end: 3;
        grid-row-start: 3;
        grid-row-end: 4;

        padding-top: 30px;
    }

    .post-event-rsvp {
        grid-column-start: 1;
        grid-column-end: 3;
        grid-row-start: 4;
        grid-row-end: 5;

        padding-top: 40px;
        padding-left: 0;
    }

    .event-rsvp-button {
        width: 100%;
    }
}

.linked-posts {
    max-width: var(--normal-content-width);
    margin: 50px auto 0;
    padding-bottom: 0;
    padding-right: 10px;
}

.linked-posts-title {
    display: block;
    font-size: 180%;
    width: 100%;
    font-weight: 500;
    padding: 0;
    box-sizing: border-box;
}

.linked-posts-scroll {
    display: block;
    overflow-x: visible;
    overflow-y: auto;
    width: 100%;
    max-height: 520px;
    padding: 30px 30px 10px 5px;
    box-sizing: border-box;
    font-size: 90%;
}

@media only screen and (max-width: 570px) {
    .linked-posts-scroll {
        padding-right: 10px;
    }
}

.post-guide-rules {
    max-width: var(--post-width);
    margin: 0 auto;
}

.post-guide-rules-header {
    font-size: 170%;
    line-height: 140%;
    font-weight: 500;
    padding-bottom: 10px;
}

.post-guide-rules-description {
    font-size: 120%;
}

.post-guide-rules-description ul {
    padding-left: 20px;
}

.post-collectible-tag-block {
    padding: 50px;
    position: relative;
    max-width: var(--post-width);
    margin: 150px auto;
    font-size: 120%;
    text-align: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    grid-gap: 50px;
    gap: 50px;
    overflow: hidden;
}

.post-collectible-tag-bg {
    font-size: 300px;
    opacity: 0.1;
    position: absolute;
    top: -3%;
    right: -20%;
    height: 300px;
    width: 300px;
}

.post-collectible-tag-header {
    font-size: 140%;
    line-height: 120%;
    font-weight: 500;
}

.post-collectible-tag-description {
    opacity: 0.7;
}

.post-collectible-tag {
    font-size: 150%;
    margin: 0;
}

.post-comments {
    padding-top: 80px;
}

.post-comments-title {
    font-size: 110%;
    font-weight: 500;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    scroll-margin-top: 20px;
}

.post-comments-count {
    font-size: 160%;
    text-decoration: none;
}

.post-comments-list {
    padding-top: 25px;
    padding-bottom: 40px;
}

@media only screen and (max-width: 570px) {
    .post-comments-list {
        margin-left: -10px;
        margin-right: -10px;
    }
}

.battle-comments-list {
    display: grid;
    grid-template-columns: 10% 1fr 10%;
    grid-template-areas:
            "prefix prefix prefix"
            "left center right"
            "reply-form reply-form reply-form"
            "replies replies replies"
}

.battle-comments-list .comment-replies {
    grid-area: replies;
}

.battle-comments-list #comment-reply-form {
    grid-area: reply-form;
}

.post-comments-form {
    padding-top: 30px;
    padding-left: 10px;
}

.post-comments-rules {
    padding-top: 50px;
    padding-left: 90px;
    padding-right: 30px;
}

.post-comments-rules ul {
    list-style: none;
    padding: 0;
}

@media only screen and (max-width: 570px) {
    .post-comments-rules {
        padding-left: 0;
        padding-right: 0;
    }
}

.post-comments-order {
    display: inline-block;
    margin-left: 10px;
    opacity: 0.7;
}

.post-comments-order select {
    position: relative;
    padding: 4px 7px;
    top: -4px;
}

.post-comments-subscription {
    display: inline-block;
    position: relative;
    top: -3px;
    padding: 10px 15px;
    cursor: pointer;
    border-radius: var(--button-border-radius);
    border: var(--button-border);
}

.post-comments-subscription.is-active {
    background-color: var(--button-bg-color);
    border: var(--button-border);
    color: var(--button-color);
}

.post-comments-subscription > * {
    cursor: pointer;
}

.post-comments-subscription > input {
    margin-right: 5px;
}

.post-toc {
    display: block;
    position: fixed;
    right: 0;
    top: 200px;
    max-height: 70dvh;
    max-width: 300px;
    border-radius: var(--form-border-radius);
    overflow-y: auto;
    overflow-x: hidden;
    z-index: 2;
}

@media only screen and (max-width: 800px) {
    .post-toc {
        display: none;
    }
}

.post-toc-opened-list {
    list-style-type: none;
    display: flex;
    flex-direction: column;
    grid-gap: 4px;
    gap: 4px;
    background-color: var(--input-bg-color);
    margin: 0;
    padding: 16px 12px;

    .post-toc-item {
        margin: 0;
        text-wrap: balance;
        text-wrap: pretty;
    }

    .post-toc-item-active {
        background-color: var(--input-border-color);
    }

    a {
        text-decoration: none;
        display: block;
        padding: 4px 12px;
    }

    .post-toc-item:not(.post-toc-item-active) a:hover {
        background-color: var(--button-hover-bg-color);
    }

    .post-toc-item-level-2 {
        margin-left: 16px;
    }

    .post-toc-item-level-3 {
        margin-left: 32px;
    }

    .post-toc-item-comments {
        padding-top: 8px;
    }
}

.post-toc-collapsed-list {
    list-style-type: none;
    padding: 0 20px;
    display: flex;
    flex-direction: column;
    align-items: flex-end;

    .post-toc-collapsed-item {
        height: 4px;
        border-radius: 4px;
        background-color: var(--text-color);
        opacity: .5;
        transition: all .5s ease-in-out;
    }

    .post-toc-collapsed-active {
        opacity: 1;
        box-shadow: var(--text-color) 0 0 3px;
    }

    .post-toc-collapsed-level-1 {
        width: 24px;
    }

    .post-toc-collapsed-level-2 {
        width: 18px;
    }

    .post-toc-collapsed-level-3 {
        width: 12px;
    }
}

.replies {
    padding-top: 10px;
    padding-bottom: 10px;
    padding-left: 0;
}

.replies-indent-normal {
        padding-left: 70px;
    }

@media only screen and (max-width : 570px) {
        .replies-indent-normal {
            padding-left: 5px;
        }
    }

.comment-form {
    width: 100%;
}

.comment-form-avatar {
        padding-right: 10px;
    }

.comment-form .avatar {
        width: 60px;
        height: 60px;
    }

@media only screen and (max-width : 570px) {
            .comment-form .avatar {
                width: 20px;
                height: 20px;
            }
        }

.comment-form textarea {
        display: block;
        width: 100%;
        height: 180px;
        font-size: 110%;
        padding: 15px;
        font-family: var(--serif-font);
        min-height: 100px;
    }

.comment-form .CodeMirror,
        .comment-form .CodeMirror-scroll {
            min-height: 150px !important;
            font-size: 110%;
            font-family: var(--serif-font);
            border-radius: 5px;
        }

.comment-form-subscribe {
        opacity: 0.75;
        padding: 0 20px;
        margin-left: auto;
    }

.reply-form-form {
        scroll-margin-top: 20px;
    }

.reply-form {
    margin-top: 0;
    margin-left: 25px;
    margin-bottom: 100px;
}

.reply-form-avatar .avatar {
        width: 30px;
        height: 30px;
    }

.replies .reply-form {
        margin-left: 0;
    }

.reply-form textarea {
        width: 100%;
        height: 80px;
        font-size: 100%;
        box-sizing: border-box;
        padding: 15px;
        font-family: var(--serif-font);
    }

.reply-form .CodeMirror,
        .reply-form .CodeMirror-scroll {
            font-size: 100%;
            min-height: 50px !important;
            font-family: var(--serif-font);
            border-radius: var(--block-border-radius);
        }

.EasyMDEContainer .CodeMirror {
            border-color: var(--input-border-color);
        }

.CodeMirror-line::-moz-selection, .CodeMirror-line > span::-moz-selection, .CodeMirror-line > span > span::-moz-selection {
            background: var(--input-selection-color);
        }

.CodeMirror-line::selection, .CodeMirror-line > span::selection,
        .CodeMirror-line > span > span::selection {
            background: var(--input-selection-color);
        }

.cm-s-easymde .cm-link {
            color: var(--input-link);
        }

.reply-form .button {
        margin-top: 10px;
    }

@media only screen and (max-width: 570px) {
    .reply-form {
        margin-top: 20px;
    }

    .reply-form-avatar .avatar {
        width: 20px;
        height: 20px;
    }

    .comment-form textarea,
    .reply-form textarea {
        /*
        Caveat!
        increase font size for textareas on small screens, to avoid mobile Safari zoom-in
        https://css-tricks.com/16px-or-larger-text-prevents-ios-form-zoom/
        */
        font-size: max(1.25rem, 16px);
        min-height: 300px;
    }
}

.thread {

}

.thread-ruler {
        display: block;
        height: 100%;
        width: 15px;
        position: absolute;
        top: 0;
        left: 50%;
        bottom: 0;
        border-left: dotted 2px rgb(128, 128, 128);
        margin-left: -1px;
        opacity: 0.15;
        transition: opacity .3s;
    }

@media (hover: hover) and (pointer: fine) {
            /* disable hover effects on mobile */

            .comment:hover .thread-ruler {
                opacity: 0.3;
            }

            .comment-side:hover .thread-ruler,
            .reply-side:hover .thread-ruler {
                opacity: 1;
            }
        }

.thread-ruler-icons {
            display: block;
            position: absolute;
            top: 26px;
            width: 20px;
            margin-left: -11px;
            text-align: center;
            visibility: hidden;
            transition: visibility .3s;
        }

.comment-side:hover .thread-ruler-icons {
                visibility: visible;
            }

.thread-ruler-icons i {
                display: block;
                background-color: var(--block-bg-color);
                width: 20px;
                height: 20px;
                font-size: 17px;
                margin-bottom: 3px;
            }

.comment {
    position: relative;
    padding: 20px;
    margin-top: 20px;
    border-radius: var(--block-border-radius);
    scroll-margin-top: 20px;
}

.comment:not(.comment-scroll-selected):target,
    .reply:not(.comment-scroll-selected):target {
        background-color: rgba(125, 232, 125, 0.3);
    }

.comment-text-deleted {
        display: inline-block;
        font-family: var(--sans-font);
        opacity: 0.7;
    }

.comment-date,
    .comment-footer-button {
        padding: 4px 10px 5px;
        text-decoration: none;
        cursor: pointer;
        -webkit-user-select: none;
           -moz-user-select: none;
                user-select: none;
        max-width: 300px;
    }

.comment-date:hover,
        .comment-footer-button:hover {
            background-color: var(--opposite-bg-color);
            color: var(--opposite-text-color);
        }

.comment-footer i {
            font-size: 70%;
        }

.comment-date {
            float: left;
        }

.comment-button-visible-on-hover {
        visibility: hidden;
    }

.comment:hover .comment-button-visible-on-hover {
            visibility: visible;
        }

@media only screen and (max-width : 570px) {
            .comment-button-visible-on-hover {
                visibility: visible;
            }
        }

.comment-badge-button {
        display: inline-block;
        border-radius: 50%;
        width: 1.7em;
        height: 1.7em;
        box-sizing: border-box;
        text-align: center;
        line-height: 1.65em;
        opacity: 0.4;
        font-size: 90%;
        text-decoration: none;
        margin-left: 10px;
    }

.comment-badge-button:hover {
            opacity: 1;
            transition: opacity 0.3s;
            background-color: var(--badge-color);
            color: #FFFFFF;
        }

.comment-side {
        position: relative;
        padding-top: 3px;
        cursor: pointer;
    }

.comment-side-avatar {
            display: block;
            width: 42px;
            height: 42px;
        }

.comment-side .thread-ruler {
            top: 51px;
        }

@media only screen and (max-width : 570px) {
            .comment-side-avatar {
                width: 30px;
                height: 30px;
            }

            .comment-side .thread-ruler {
                top: 37px;
            }
        }

.comment-header {
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        align-content: stretch;
        align-items: stretch;
        padding-bottom: 5px;
    }

.comment-header-author {
            display: block;
            width: 100%;
            font-size: 115%;
        }

.comment-header-author-name {
                text-decoration: none;
                font-weight: 500;
                padding-right: 5px;
            }

.comment-header-author-position {
                opacity: 0.7;
            }

.comment-header-author-note {
                font-weight: 500;
                opacity: 0.7;
            }

.comment-header-date {
                text-decoration: none;
                opacity: 0.7;
                font-size: 90%;
            }

.comment-header-post {
                font-weight: 500;
                text-decoration: underline;
            }

.comment-header .hat {
                margin-left: 10px;
            }

.comment-header-badges {
            display: flex;
            flex-wrap: wrap;
            flex-direction: row;
            align-items: center;
        }

.comment-body {
        padding-top: 10px;
        text-overflow: ellipsis;
        box-sizing: border-box;
        max-width: 100%;
    }

.comment-collapse-stub,
    .reply-collapse-stub {
        display: none;
        cursor: pointer;
        opacity: 0.6;
        font-size: 110%;
    }

.comment-collapse-stub {
            padding-top: 20px;
        }

.reply-collapse-stub {
            padding-top: 14px;
            padding-left: 7px;
        }

.comment-collapse-stub:hover,
        .reply-collapse-stub:hover {
            opacity: 1;
        }

.comment-title {
        font-size: 160%;
        font-weight: 500;
        padding: 5px 0 3px;
    }

.comment-footer {
        padding-top: 5px;
    }

.comment-body-muted {
        font-size: 110%;
        opacity: 0.5;
        padding-bottom: 20px;
    }

.comment-layout-block {
        padding: 30px;
        margin: 0 auto 30px;
    }

.comment-layout-block .upvote {
            top: -10px;
        }

.comment-layout-block .comment-body {
            padding-top: 20px;
        }

@media only screen and (max-width : 570px) {
        .comment {
            padding: 10px;
        }

            .comment-layout-block {
                padding: 20px;
            }

        .comment-body {
            max-width: 100%;
        }
    }

.comment-type-battle {}

.comment-type-battle.comment {
            scroll-margin-top: 40px;
        }

.comment-type-battle .comment-header {
            flex-direction: column;
        }

.comment-type-battle .comment-header .user-avatar {
            width: 20px;
            height: 20px;
        }

.comment-type-battle .comment-body {
            padding-left: 0;
            padding-top: 20px;
        }

.comment-type-battle-userinfo {
            display: flex;
            grid-gap: 0 6px;
            gap: 0 6px;
        }

.comment-type-battle-userinfo .reply-date {
            padding-left: 0;
        }

@media only screen and (max-width : 350px) {
            .comment-type-battle-userinfo {
                flex-direction: column;
            }
        }

.comment-type-battle-side-a {
            background: rgba(76, 152, 213, 0.3);
            /* from left border to the end of the center column */
            grid-area: auto / left-start / auto / center-end;
            justify-self: start;
        }

.comment-type-battle-side-a:target {
                background: rgba(76, 152, 213, 0.6);
            }

.comment-type-battle-side-a .comment-title {
                color: #4C98D5;
            }

.comment-type-battle-side-b {
            background: rgba(83, 170, 104, 0.3);
            /* from center column to the end of the right column */
            grid-area: auto / center-start / auto / right-end;
            justify-self: end;
        }

.comment-type-battle-side-b:target {
                background: rgba(83, 170, 104, 0.6);
            }

.comment-type-battle-side-b .comment-header {
                text-align: right;
            }

.comment-type-battle-side-b .comment-title {
                color: #53AA68;
            }

.battle-comment-prefix {
        position: relative;
        top: 0.7em;
        opacity: 0.5;
        font-weight: 500;
        grid-area: prefix;
    }

.battle-comment-prefix-side-a {
            color: #4C98D5;
        }

.battle-comment-prefix-side-b {
            color: #53AA68;
            text-align: right;
        }

.replies-type-battle {
        grid-area: replies;
    }

.reply {
    margin: 10px 0 15px 0;
    padding: 10px 0 10px 10px;
    scroll-margin-top: 20px;
}

@media only screen and (max-width : 570px) {
        .reply {
            padding-left: 0;
        }
    }

.reply-side {
        position: relative;
        width: 25px;
        cursor: pointer;
    }

.reply-side .thread-ruler {
            top: 7px;
            bottom: -25px;
            height: auto;
        }

.reply-avatar {
        width: 26px;
        height: 26px;
        top: -2px;
        position: relative;
        margin-right: 5px;
    }

.reply-header {
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        align-content: stretch;
        align-items: stretch;
        padding-bottom: 10px;
        font-size: 110%;
    }

.reply-author {
            font-weight: 500;
        }

.reply-header .hat {
            margin-left: 10px;
        }

.reply-date {
            text-decoration: none;
            opacity: 0.6;
            font-size: 85%;
            padding-left: 10px;
            line-height: 24px;
        }

.reply-body {
        font-size: 90%;
        padding-left: 5px;
        padding-bottom: 5px;
        text-overflow: ellipsis;
        word-break: break-word;
    }

.reply-body .comment-text {
            max-width: 100%;
        }

.reply-footer {
        font-size: 90%;
    }

.reply-footer i {
            font-size: 70%;
        }

.reply-button-hidden {
        visibility: hidden;
    }

.reply:hover .reply-button-hidden {
            visibility: visible;
        }

.comment-is-pinned {
    padding: 30px;
    margin-bottom: 30px;
    box-sizing: border-box;
    box-shadow: var(--block-shadow);
    background-color: var(--block-bg-color);
    border-radius: var(--block-border-radius);
}

.comment-pinned-icon {
        padding-top: 15px;
        width: 100%;
        box-sizing: border-box;
        text-align: center;
        font-size: 140%;
    }

.comment-is-new {
    background-color: rgba(104, 118, 128, 0.30);
    padding-right: 8px;
}

.comment-is-new .comment-is-new {
        background-color: transparent;
        padding-right: 0;
    }

.comment-is-badged {
    border: solid 3px var(--badge-color);
}

.comment-scroll-arrow {
    position: fixed;
    left: 20px;
    bottom: 20px;
    display: inline-block;
    text-decoration: none;
    width: 48px;
    height: 48px;
    font-size: 140%;
    font-weight: 600;
    font-family: var(--sans-font);
    color: var(--text-color);
    border: var(--button-border);
    background-color: var(--bg-color);
    border-radius: 50%;
    cursor: pointer;
    z-index: 5;
}

.comment-scroll-arrow:hover {
        background-color: var(--opposite-bg-color);
        color: var(--opposite-text-color);
    }

.comment-scroll-arrow::before {
        content: "▲";
        position: absolute;
        font-size: 18px;
        top: 50%;
        left: 50%;
        transform: translateX(-50%) translateY(-43%) rotate(180deg);
        transition: transform .2s;
    }

.comment-scroll-arrow.arrow-up::before {
        transform: translateX(-50%) translateY(-50%) rotate(0);
    }

.comment-markdown-editor {
    position: relative;
}

.mention-autocomplete-hint {
    position: absolute;
    min-width: 100px;
    box-shadow: 0 0 4px 2px rgb(9 30 66 / 8%);
    border: 1px solid var(--input-border-color);
    overflow: hidden;
    border-radius: 4px;
    font-size: 125%;
}

.mention-autocomplete-hint__option {
        background: var(--input-bg-color);
        font-weight: 400;
        padding: 0 5px;
    }

.mention-autocomplete-hint__option span {
        font-weight: 200;
        color: #737373;
        padding-left: 10px;
    }

.mention-autocomplete-hint__option:hover {
        cursor: pointer;
        background: #4c98d5;
        color: #fff;
    }

.mention-autocomplete-hint__option:hover span {
        color: #fff;
    }

.mention-autocomplete-hint__option--suggested {
        background: #4c98d5;
        color: #fff;
    }

.mention-autocomplete-hint__option--suggested span {
        color: #fff;
    }

.comment-moderation {
    max-width: 500px;
    margin: 50px auto;
    text-align: center;
}

.comment-form-restriction {
    border-top: dashed 1px #b31616;
    color: #b31616;
    padding: 10px;
    margin-top: 20px;
}

.compose {
    max-width: var(--normal-content-width);
    margin-top: 100px;
}

@media only screen and (max-width : 570px) {
        .compose {
            font-size: 80%;
        }
    }

.compose-types {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
    }

.compose-type {
        width: 220px;
        height: 220px;
        text-decoration: none;
        text-align: center;
    }

.compose-type-icon {
            display: block;
            font-size: 70px;
            padding-bottom: 10px;
            padding-top: 20px;
        }

.compose-type-name {
            display: block;
            font-size: 120%;
            font-weight: 500;
        }

.compose-posts-header {
        text-align: center;
        padding-top: 50px;
        padding-bottom: 100px;
    }

.compose-form {

}

.compose-form-title input {
        text-align: center;
        font-size: 150%;
        font-weight: 600;
        padding: 15px;
    }

.compose-form-text textarea.markdown-editor-full {
        padding: 20px;
        min-height: 500px;
        font-family: var(--serif-font);
        line-height: 1.4em;
    }

.compose-form-text .CodeMirror,
        .compose-form-text .CodeMirror-focused,
        .compose-form-text .CodeMirror-scroll {
            min-height: 400px !important;
            transform: scale(1);
        }

/* Markdown editor styles */

.compose-form .CodeMirror-code {
        position: relative;
        font-style: normal;
        font-size: 19px;
        line-height: 1.67;
        color: var(--input-color);
        font-family: var(--serif-font);
        font-weight: 400;
    }

.compose-form .cm-header {
            font-family: var(--sans-font);
        }

.compose-vs {
        display: inline-block;
        padding: 5px 10px;
        font-size: 130%;
        font-weight: 600;
    }

.compose-form-counter {
        display: block;
        text-align: right;
        font-size: 120%;
        font-weight: bold;
        padding-top: 5px;
    }

.compose-visibility {
    padding-top: 20px;
    padding-bottom: 80px;
}

@media only screen and (max-width : 570px) {
        .compose-visibility .big-radio-item {
            font-size: 75%;
        }
        .compose-visibility .big-radio-item .fas {
            font-size: 46px;
        }
    }

.compose-form-text {
    padding-bottom: 50px;
}

.compose-form-datetime {
    display: flex;
    flex-wrap: wrap;
    grid-gap: 10px;
    gap: 10px;
    justify-content: flex-start;
    align-items: center;
    font-size: 130%;
}

.compose-form-datetime-utc-offset, .compose-form-datetime-utc-offset select {
        max-width: 250px;
    }

.compose-form-location {
    display: flex;
    flex-wrap: wrap;
    grid-gap: 10px;
    gap: 10px;
    justify-content: flex-start;
    align-items: center;
    font-size: 130%;
}

.compose-form-location-field {
        flex: 1;
    }

.compose-form-location input {
        text-align: left !important;
    }

.compose-form-advanced {
    padding: 20px;
    margin-bottom: 50px;
}

.compose-form-advanced summary {
        cursor: pointer;
        font-size: 130%;
        text-align: center;
    }

.compose-form-room select {
        width: 100%;
        padding: 10px;
        font-size: 110%;
        font-weight: 500;
        -moz-appearance: auto;
             appearance: auto;
    }

.stats {
    padding-top: 40px;
    margin: 0 auto;
    max-width: var(--max-content-width);
}

.stats-title {
        display: block;
        font-size: 300%;
        text-align: center;
        font-weight: 500;
        padding-top: 50px;
        padding-bottom: 30px;
        text-decoration: none;
    }

.stats-header {
        display: block;
        font-size: 250%;
        text-align: center;
        font-weight: 500;
        padding-top: 80px;
        padding-bottom: 30px;
        text-decoration: none;
        max-width: var(--post-width);
        margin: 0 auto;
    }

.stats-subheader {
        display: block;
        font-size: 180%;
        text-align: center;
        font-weight: 500;
        padding-top: 60px;
        padding-bottom: 50px;
        text-decoration: none;
        max-width: var(--post-width);
        margin: 0 auto;
    }

.stats-description {
        display: block;
        font-size: 130%;
        text-align: center;
        padding-bottom: 30px;
        max-width: var(--post-width);
        margin: 0 auto;
    }

.stats-top-users {
    max-width: var(--max-content-width);
    margin: 0 auto 50px;
}

.top-users {
    display: flex;
    flex-wrap: wrap;
    grid-gap: 20px;
    gap: 20px;
    justify-content: center;
    align-content: center;
    align-items: flex-start;
    padding-bottom: 50px;
}

.top-users-big {
        font-size: 120%;
    }

.top-users-big > * {
            max-width: 160px;
        }

.top-users-medium {
        font-size: 105%;
        grid-gap: 30px;
        gap: 30px;
    }

.top-users-medium > * {
            max-width: 100px;
        }

.top-users-small {
        grid-gap: 10px;
        gap: 10px;
    }

.top-users-small > * {
            max-width: 60px;
        }

.top-users-more {
        align-self: center;
        text-decoration: none;
        display: block;
        background-color: rgba(128, 128, 128, 0.1);
        border-radius: 50px;
        min-width: 190px;
        font-size: 120%;
        padding: 10px 20px;
    }

.stats-achievements {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-content: stretch;
    padding-bottom: 50px;
}

.stats-achievements-badge {
        width: 200px;
    }

.stats-achievements-users {
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-start;
        padding-top: 50px;
        width: 100%;
    }

@media only screen and (max-width : 570px) {
        .stats-achievements {
            flex-wrap: wrap;
            flex-direction: column;
        }
        .stats-achievements-badge {
            display: flex;
            justify-content: center;
            width: 100%;
        }
        .stats-achievements-users {
            justify-content: center;
        }
    }

.stats-achievement-details {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

.stats-achievement-details .user-achievement {
        width: 250px;
        height: 350px;
        font-size: 180%;
    }

.stats-achievement-details .user-badge-image {
        max-height: 180px;
    }

.stats-achievement-details__info {
        max-width: 60%;
        font-size: 150%;
        display: flex;
        flex-direction: column;
        grid-gap: 10px;
        gap: 10px;
        justify-content: center;
    }

.stats-badges-latest {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    align-items: flex-start;
    grid-gap: 30px;
    gap: 30px;
}

.stats-badge {
        display: flex;
        flex-direction: column;
        align-items: center;
        max-width: 100px;
        text-align: center;
        grid-gap: 3px;
        gap: 3px;
        text-decoration: none;
    }

.stats-badge-image {
            width: 80px;
            height: 80px;
        }

.stats-badge-image-tiny {
                width: 25px;
                height: 25px;
            }

.stats-badge-title {
            font-size: 120%;
            font-weight: 500;
        }

.stats-badge-info {
            font-size: 80%;
        }

.stats-badges-top {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    align-items: flex-start;
    max-width: var(--max-content-width);
}

.friends {
    padding-top: 40px;
    margin: 0 auto;
    max-width: var(--max-content-width);
}

.friends-title {
        display: block;
        font-size: 300%;
        text-align: center;
        font-weight: 500;
        padding-top: 50px;
        padding-bottom: 30px;
        text-decoration: none;
    }

.friends-header {
        display: block;
        font-size: 250%;
        text-align: center;
        font-weight: 500;
        padding-top: 80px;
        padding-bottom: 30px;
        text-decoration: none;
        max-width: var(--post-width);
        margin: 0 auto;
    }

.friends-description {
        display: block;
        font-size: 130%;
        text-align: center;
        padding-bottom: 30px;
        max-width: var(--post-width);
        margin: 0 auto;
    }

.friends-results {
    grid-column-start: 2;
    grid-column-end: 3;
    grid-row-start: 4;
    grid-row-end: 5;
    justify-self: start;
    z-index: 100;
}

.friends-results-placeholder {
        display: block;
        width: 100%;
        padding: 50px 20px;
        text-align: center;
        opacity: 0.5;
        font-size: 150%;
    }

.create-badge {}

.create-badge-comment-snippet {
    position: relative;
    max-height: 280px;
    overflow: hidden;
    padding: 10px;
}

.create-badge-comment-snippet:after {
        content: "";
        position: absolute;
        z-index: 1;
        bottom: 0;
        left: 0;
        pointer-events: none;
        background-image: linear-gradient(to bottom, rgba(255, 255, 255, 0), var(--block-bg-color, 0) 90%);
        width: 100%;
        height: 6em;
    }

.create-badge-list {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: center;
    grid-gap: 20px;
    gap: 20px;
    padding-bottom: 50px;
}

.create-badge-list-item {
        position: relative;
        max-width: 200px;
        cursor: pointer;
    }

.create-badge-list-item-label {
            padding: 15px 20px;
            margin: 0;
            cursor: pointer;
            display: flex;
            flex-wrap: wrap;
            justify-content: center;
            text-align: center;
            grid-gap: 7px;
            gap: 7px;
        }

.create-badge-list-item-disabled .create-badge-list-item-label {
            opacity: 0.2;
            cursor: not-allowed;
            filter: blur(2px);
            -webkit-user-select: none;
               -moz-user-select: none;
                    user-select: none;
        }

.create-badge-list-item input:checked + .create-badge-list-item-label {
            background-color: var(--opposite-block-bg-color);
            color: var(--opposite-text-color);
            filter: blur(0);
        }

.create-badge-list-item input {
            position: absolute;
            top: 0;
            left: -1000px;
            opacity: 0;
        }

.create-badge-list-item-image {
            width: 100%;
        }

.create-badge-list-item-title {
            width: 100%;
            padding-top: 10px;
            font-size: 140%;
            line-height: 1.2em;
            font-weight: 600;
        }

.create-badge-list-item-description {
            width: 100%;
            font-size: 90%;
            line-height: 1.3em;
        }

.create-badge-list-item-price {
            margin-top: 5px;
            display: block;
            font-size: 120%;
        }

.create-badge-note {
        display: block;
        margin: 40px auto;
        width: 80%;
        height: 150px;
        font-size: 120%;
    }

.create-badge-button {
        text-align: center;
    }

.badge {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    text-decoration: none;
    transition: 0.5s ease-out;
}

.badge:hover {
        transform: scale(1.2);
        opacity: 0.7;
        transition: 0.3s;
    }

.badge-image {
        max-width: 2em;
        max-height: 2em;
    }

.badge-count {
        font-weight: 700;
        line-height: 1.8em;
    }

.badge-price {
        display: inline-block;
        background-color: var(--badge-color);
        color: #FFFFFF;
        border-radius: 10px;
        font-weight: 500;
        padding: 3px 7px;
    }

.badge-price a {
            color: #FFFFFF;
        }

.post-badges, .comment-badges, .reply-badges, .user-badges {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: flex-start;
    grid-gap: 15px;
    gap: 15px;
    text-decoration: none;
}

.post-badges {
    padding-bottom: 20px;
    font-size: 24px;
}

.post-badges-center {
        justify-content: center;
    }

.comment-badges {
    font-size: 16px;
    padding-left: 10px;
}

.reply-badges {
    font-size: 13px;
    padding-left: 10px;
}

.user-badges {
    padding-bottom: 30px;
    font-size: 35px;
    justify-content: center;
    grid-gap: 25px;
    gap: 25px;
}

.profile-badge {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    grid-gap: 30px;
    gap: 30px;
    margin-bottom: 30px;
}

.profile-badge-side {
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        grid-gap: 10px;
        gap: 10px;
        width: 130px;
        min-width: 130px;
    }

@media only screen and (max-width : 570px) {
            .profile-badge-side {
                width: 50px;
                min-width: 50px;
            }
        }

.profile-badge-main {
        display: flex;
        flex-direction: column;
        justify-content: center;
        grid-gap: 10px;
        gap: 10px;
    }

.profile-badge-image {
        width: 100%;
        max-width: none;
        max-height: none;
    }

.profile-badge-title {
        font-size: 130%;
        font-weight: 500;
    }

.profile-badge-body {
        display: block;
    }

.profile-badge-note {
        display: inline-block;
        opacity: 0.5;
        font-size: 110%;
        padding-left: 20px;
        padding-right: 10px;
        padding-bottom: 10px;
    }

.profile-badge-from {
        display: inline-block;
    }

.profile-badge-from .avatar {
            width: 20px;
            height: 20px;
        }

@keyframes vSelectSpinner {
    0% {
        transform: rotate(0deg);
    }
    to {
        transform: rotate(1turn);
    }
}

:root {
    --vs-line-height: 1.4;
    --vs-dropdown-min-width: 160px;
    --vs-dropdown-max-height: 350px;

    --vs-controls-actions-size: 24px;
    --vs-input-margin: 4px 2px;

    /* Copied from theme.css */
    --vs-dropdown-box-shadow: 0 4px 8px -2px rgba(9,30,66,.25),0 0 0 1px rgba(9,30,66,.08);
}

/* Cleanup global styles */

.input-select input, .input-select input:focus {
    width: inherit;
    margin: var(--vs-input-margin);
}

.input-select {
    padding: 0;
}

/* Common styles for select */

.v-select {
    font-family: inherit;
    position: relative;
}

.v-select, .v-select * {
    box-sizing: border-box;
}

/* Search input */

.vs__search, .vs__search:focus {
    -moz-appearance: none;
    appearance: none;
    background: none;
    border: 1px solid transparent;
    border-left: none;
    box-shadow: none;
    color: var(--input-color);
    flex-grow: 1;
    font-size: 100%;
    line-height: var(--vs-line-height);
    margin: 4px 0 0;
    max-width: 100%;
    outline: none;
    padding: 0 7px;
    width: 0;
    z-index: 1;
    text-align: center;
}

/* Dropdown skeleton animation */

.vs__fade-enter-active, .vs__fade-leave-active {
    pointer-events: none;
    transition: opacity 0.15s cubic-bezier(1, 0.5, 0.8, 1);
}

.vs__fade-enter, .vs__fade-leave-to {
    opacity: 0;
}

/* Disabled */

.vs--disabled .vs__clear,
.vs--disabled .vs__dropdown-toggle,
.vs--disabled .vs__open-indicator,
.vs--disabled .vs__search,
.vs--disabled .vs__selected {
    background-color: var(--button-disabled-bg-color);
    cursor: not-allowed;
}

/* Input with side buttons, without dropdown options list */

.vs__dropdown-toggle {
    -moz-appearance: none;
    appearance: none;
    background: none;
    display: flex;
    padding: 8px 15px;
    white-space: normal;
}

/* Selected options next to input */

.vs__selected-options {
    display: flex;
    flex-basis: 90%;
    flex-wrap: wrap;
    padding: 0 2px;
    position: relative;
}

/* Selected option */

.vs__selected {
    align-items: center;
    background-color: var(--input-bg-color);
    border: 1px solid var(--input-border-color);
    border-radius: 4px;
    color: var(--input-color);
    display: flex;
    line-height: var(--vs-line-height);
    margin: var(--vs-input-margin);
    padding: 0 .25em;
    z-index: 0;
}

/* Mods for single option mode */

.vs--single .vs__selected {
    background-color: transparent;
    border-color: transparent;
}

.vs--single.vs--loading .vs__selected, .vs--single.vs--open .vs__selected {
    opacity: .4;
    position: absolute;
}

/* Side buttons */

.vs__actions {
    align-items: center;
    display: flex;
    margin-left: auto;
    padding: 4px 6px 0 3px;
}

.vs--searchable .vs__dropdown-toggle {
    cursor: text;
}

.vs--unsearchable .vs__dropdown-toggle {
    cursor: pointer;
}

/* Dropdown symbol */

.vs__open-indicator {
    fill: var(--input-toolbar-button-color);
    transition: transform 0.15s cubic-bezier(1, 0.5, 0.8, 1);
    opacity: 0.5;
    cursor: pointer;
    margin: calc((var(--vs-controls-actions-size) - 10px)/2) calc((var(--vs-controls-actions-size) - 14px)/2);
}

.vs--open .vs__open-indicator {
    transform: rotate(180deg);
}

.vs--loading .vs__open-indicator {
    opacity: 0;
}

/* Clear button */

.vs__clear {
    fill: var(--input-toolbar-button-color);
    opacity: 0.5;
    background-color: transparent;
    border: 0;
    cursor: pointer;
    margin-right: 8px;
    padding: 0;
    position: relative;
    top: -2px;
}

/* Loader */

.vs__spinner {
    align-self: center;
    animation: vSelectSpinner 1.1s linear infinite;
    border: .9em solid hsla(0, 0%, 39%, .1);
    border-left-color: rgba(60, 60, 60, .45);
    font-size: 5px;
    opacity: 0;
    overflow: hidden;
    text-indent: -9999em;
    transition: opacity .1s;
}

.vs__spinner, .vs__spinner:after, .vs__clear {
    width: var(--vs-controls-actions-size);
    height: var(--vs-controls-actions-size);
}

.vs__spinner, .vs__spinner:after {
    border-radius: 50%;
    height: var(--vs-controls-actions-size);
}

.vs--loading .vs__spinner {
    opacity: 1;
}

/* Dropdown options */

.vs__dropdown-menu {
    background: var(--input-bg-color);
    box-shadow: var(--vs-dropdown-box-shadow);
    box-sizing: border-box;
    display: block;
    left: 0;
    list-style: none;
    margin: 0;
    max-height: var(--vs-dropdown-max-height);
    min-width: var(--vs-dropdown-min-width);
    overflow-y: auto;
    padding: 0;
    position: absolute;
    top: 100%;
    width: 100%;
    z-index: 1000;
    font-size: 90%;
    text-align: left;
}

/* Dropdown: any option item (enabled + disabled + hint) */

.vs__dropdown-menu li {
    margin: 0;
    padding: 8px 16px;
}

/* Dropdown: single option-hint */

.vs__no-options {
    width: 95%;
    text-align: center;
}

/* Dropdown: new + existed items */

.vs__dropdown-option {
    clear: both;
    cursor: pointer;
    display: block;
    line-height: 1.42857143;
    padding: 3px 20px;
    white-space: nowrap;
    border-left: 4px solid transparent;
}

.vs__dropdown-option:hover {
    border-left-color: var(--button-hover-color);
}

.vs__dropdown-option--highlight {
    background: var(--select-bg-color);
    color: var(--select-color);
}

.vs__dropdown-option--disabled {
    background: var(--button-disabled-bg-color);
    cursor: not-allowed;
    opacity: .6;
}

.vs__dropdown-option-secondary-text {
    font-size: 80%;
}

.vs__deselect {
    fill: var(--input-toolbar-button-color);
    opacity: .5;
    -moz-appearance: none;
    appearance: none;
    background: none;
    border: 0;
    cursor: pointer;
    display: inline-flex;
    margin-left: 4px;
    padding: 0;
    text-shadow: 0 1px 0 #fff;
}

/* Don't merge this line with rule below - it's workaround for chrome clear button */

.vs__search::-webkit-search-cancel-button {
    display: none;
}

.vs--single.vs--searching .vs__selected,
.vs__search::-ms-clear,
.vs__search::-webkit-search-decoration,
.vs__search::-webkit-search-results-button,
.vs__search::-webkit-search-results-decoration {
    display: none;
}

.vs__search::-moz-placeholder {
    color: inherit;
    opacity: .8;
}

.vs__search::-moz-placeholder,
.vs__search:-ms-input-placeholder,
.vs__search::placeholder {
    color: inherit;
    opacity: .8;
}

.vs--unsearchable .vs__search {
    opacity: 1;
}

.vs--unsearchable:not(.vs--disabled) .vs__search {
    cursor: pointer;
}

.vs--single.vs--searching:not(.vs--open):not(.vs--loading) .vs__search {
    opacity: .2;
}

.intro {
    padding-top: 50px;
    font-size: 110%;
}

.intro .form-title {
        font-size: 300%;
    }

.intro-form {
        padding-top: 40px;
        text-align: center;
    }

.form-row #id_slug {
            max-width: 220px;
            font-weight: 500;
        }

.form-row #id_full_name {
            max-width: 430px;
            font-weight: 500;
        }

.form-row #id_email {
            max-width: 350px;
            font-weight: 500;
        }

.form-row #id_avatar {
            max-width: 350px;
        }

.form-row #id_bio {
            width: 80%;
            height: 180px;
            min-height: auto;
        }

.form-row #id_contact {
            width: 80%;
        }

.form-row #id_country,
        .form-row #id_city {
            display: inline-block;
            width: 35%;
            min-width: 150px;
        }

.intro-form textarea,
        .intro-form .CodeMirror {
            text-align: left;
            min-height: 700px;
            transform: scale(1);
        }

.form-row #id_company {
            max-width: 400px;
            font-weight: 500;
        }

.form-row #id_position {
            max-width: 500px;
            font-weight: 500;
        }

.intro-form-counter {
            display: block;
            text-align: right;
            font-size: 120%;
            font-weight: bold;
            padding-top: 5px;
        }

.intro-form-counter.bad {
                color: #c41509;
            }

.intro-form-counter.good {
                color: #53AA68;
            }

.post-join {
    margin-top: 30px;
    font-size: 120%;
    text-align: center;
}

.post-join-icon {
        font-size: 50px;
        margin: 20px;
        line-height: 1em;
    }

.post-join-message {
        font-size: 130%;
        font-weight: 500;
    }

.apps-list {
    padding: 20px 0;
}

.apps-list-placeholder {
    text-align: center;
    padding: 50px 20px;
    font-size: 120%;
    opacity: 0.7;
}

.apps-list-create-button {
    display: flex;
    justify-content: center;
}

.apps-list-item {
    display: flex;
    grid-gap: 10px;
    gap: 10px;
    flex-direction: column;
    text-decoration: none;
    color: var(--opposite-text-color);
    background-color: var(--opposite-block-bg-color);
    font-size: 120%;
}

.apps-list-item-name {
        text-decoration: underline;
        font-size: 130%;
        font-weight: 600;
    }

.apps-list-item-description,
    .apps-list-item-created-at {
        opacity: 0.7;
    }

.invites-list {
    display: flex;
    flex-wrap: nowrap;
    flex-direction: column;
    grid-gap: 20px;
    gap: 20px;
    margin: 40px 0;
}

.invites-list-item {
        text-decoration: none;
        font-weight: normal !important;
        width: 100%;
        padding: 15px 20px;
        margin: 0;
        display: flex;
        flex-wrap: wrap;
        flex-direction: row;
        align-items: center;
        grid-gap: 20px;
        gap: 20px;
        justify-content: space-between;
    }

.badge-invite {
    display: inline-block;
    background-color: var(--badge-color);
    color: #FFFFFF;
    border-radius: 10px;
    font-weight: 500;
    padding: 5px 10px;
}

.badge-invite-used, .badge-invite-expired {
        color: var(--opposite-text-color);
        background-color: var(--opposite-block-bg-color);
    }

