* {
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

a {
    text-decoration: none;
}

a:link, div { -webkit-tap-highlight-color: rgba(0,0,0,0); }

hr {
    background: #dadde1;
    padding: 0;
    margin: 12px 0;
}

h1 {
    font-size: 3rem;
    font-weight: 500;
}

h2 {
    font-size: 1.8rem;
    font-weight: 500;
}

h3 {
    font-size: 1.6rem;
    font-weight: 500;
}

h4 {
    font-size: 1.3rem;
    font-weight: 500;
}

strong {
    color: inherit;
}

.input {
    box-shadow: none;
}

.gcard {
    /*background-color: #FFF;
    box-shadow: 0 1px 2px rgba(0,0,0,0.08), 0 1px 1px rgba(0,0,0,0.12);*/
    padding: 0;
    color: #252525;
    margin-bottom: 10px;
}

.gcard-title {
    width: 100%;
    color: #232f3e;
    font-size: 16px;
    font-weight: 700;
    margin-bottom: 10px;
}

.threadview {
    color: #252525;
    margin: 30px 0;
}

.flexrow {
    display: flex;
}

.verticalflex {
    align-items: center;
}

.threadrow:not(:last-child) {
    margin-bottom: 10px;
}

.cursor-pointer {
    cursor: pointer;
}

.textarea {
    font-size: 13px;
}

.has-max-width-768 {
    max-width: 768px;
}

.has-min-width {
    min-width: 560px;
}

.has-margin-top {
    margin-top: 10px;
}

.has-margin-top-4 {
    margin-top: 4px;
}

.has-margin-top-6 {
    margin-top: 6px;
}

.has-margin-top-8 {
     margin-top: 8px;
 }

.has-margin-top-12 {
    margin-top: 12px;
}

.has-margin-top-16 {
    margin-top: 16px;
}

.has-margin-top-20 {
    margin-top: 20px;
}

.has-margin-top-30 {
    margin-top: 30px;
}

.has-margin-bottom {
    margin-bottom: 10px !important;
}

.has-margin-bottom-6 {
    margin-bottom: 6px !important;
}

.has-margin-bottom-8 {
    margin-bottom: 8px !important;
}

.has-margin-bottom-14 {
    margin-bottom: 14px !important;
}

.has-margin-bottom-20 {
    margin-bottom: 20px !important;
}

.has-margin-bottom-30 {
    margin-bottom: 30px !important;
}

.has-margin-right {
    margin-right: 12px;
}

.has-margin-right-2 {
    margin-right: 2px;
}

.has-margin-right-5 {
    margin-right: 5px;
}

.has-margin-right-7 {
    margin-right: 7px;
}

.mr-1 { margin-right: 1em; }
[v-cloak] { display: none; }
.vcenter {
    display: inline-block;
    vertical-align: middle;
    float: none;
}

.spanbutton, .spanbutton a {
    color: #888 !important;
}

.menubutton {
    color: #cacaca;
    cursor: pointer;
    transition: all 0.15s ease-in-out;
}

.icon.menubutton .fa {
    font-size: 16px;
}

.menubutton-outer {
    width: 18px;
    height: 20px;
    padding-top: 2px;
    margin-left: 10px;
}

.hidebutton {
    font-size: 11px !important;
    margin-top: 5px;
}

.tagsettingsbutton {
    position: absolute;
    top: 0;
    right: 0;
    cursor: pointer;
}

.tagsettingsbutton:hover {
    opacity: 0.7;
}

.pointer:hover {
    cursor: pointer;
}

/*
.comment-wrapper {
    padding-left: 10px;
    padding-right: 10px;
    padding-bottom: 0;
}
*/

.thread .menuActive {
    display: block !important;
}

.thread .menubutton {
    display: block;
}

.is-not-displayed {
    display: none !important;
}

.is-full-width {
    width: 100%;
}

.thread:hover .menubutton {
    display: block !important;
}

.has-large-font {
    font-size: 16px;
    line-height: 1.2;
}

.has-larger-font {
    font-size: 15px;
    line-height: 1.2;
}

.has-even-larger-font {
    font-size: 18px;
    line-height: 1;
}

.has-huge-font {
    font-size: 21px;
}

.has-smaller-font {
    font-size: 13px;
    line-height: 1.2;
}

.has-small-font {
    font-size: 11px;
    line-height: 1;
}

.is-one-third {
    width: 33%;
}

.is-centered {
    margin-left: auto;
    margin-right: auto;
}

.has-margin-top-2 {
    margin-top: 2px;
}

.has-margin-top-4 {
    margin-top: 4px;
}

.has-margin-top-5 {
    margin-top: 5px;
}

.has-margin-top-20 {
    margin-top: 20px;
}

.has-margin-right {
    margin-right: 10px;
}

.has-margin-right-4 {
    margin-right: 4px;
}

.has-margin-right-5 {
    margin-right: 5px;
}

.has-margin-left {
    margin-left: 10px;
}

.has-margin-left-4 {
    margin-left: 4px;
}

.has-margin-left-40 {
    margin-left: 40px;
}

.has-padding {
    padding: 10px;
}

.has-padding-top {
    padding-top: 10px;
}

.has-padding-top-5 {
    padding-top: 5px;
}

.has-padding-top-14 {
    padding-top: 14px;
}

.has-padding-bottom {
    padding-bottom: 12px;
}

.has-padding-bottom-4 {
    padding-bottom: 4px;
}

.has-padding-bottom-6 {
    padding-bottom: 6px;
}

.has-padding-bottom-20 {
    padding-bottom: 20px;
}

.has-padding-right {
    padding-right: 10px;
}

.has-padding-left {
    padding-left: 10px;
}

.has-fatter-font {
    font-weight: 500;
}

.has-bolder-font {
    font-weight: 400;
}

.has-bold-font {
    font-weight: 700;
}

.has-half-opacity {
    filter: opacity(50%);
}

.is-blurry {
    filter: blur(10px);
}

.is-floating-right {
    float: right;
}

a.blacklink {
    color: #222;
}

a.blacklink:hover {
    color: #000;
}

.grow { transition: all 0.2s ease-out; }
.grow:hover { transform: scale(1.05); }

.has-max-width-560 {
    max-width: 560px;
}

.content blockquote {
    padding: 10px;
}

.error {
    color: red;
}

.show-more a {
    color: #336699;
}

.show-more a:hover {
    color: #003366;
}

.selectedReply, .selectedReply .replyVotes {
    background: #fffbe3;
}

.tag {
    height: 100%;
    border-radius: 10px;
    font-size: inherit;
    padding: 0 3px;
}

.tagheadersection {
    position: relative;
}

.tagheaderimg {

}

.tagheaderimg:hover {
}

.tagheader.hero-body {
    padding: 1.5rem 0;
    overflow: hidden;
}

.taglabel {
    float: left;
    display: block;
    font-weight: 700;
    margin-right: 10px;
    padding-top: 6px;
}

.image-upload-button {
    padding-top: 7px;
}

.max-width-100 {
    max-width: 100px;
}

.follow-icon {

}

.hashtag {
    display: inline-block;
    padding: 0 5px;
    font-size: 0.95rem;
    margin-right: 5px;
    background: #fbfbfb;
    border: 1px #e2e2e2 solid;
    color: #555;
    border-radius: 2px;
    font-style: italic;
}

.hashtag:hover {
    background: #fff;
    color: #000;
    border: 1px #555 solid;
}

.follow-icon.hover {
    color: #ff9900;
}

.follow-icon.red {
    color: #984B43;
}

.follow-icon.active {
    color: #6dac00;
}

.follow-button {

}

.has-higher-index {
    z-index: 5;
}

.headline {
    font-size: 16px;
    font-weight: 700;
}

#main {
    padding-top: 50px;
    transition: filter 0s !important;
}

.nowrap {
    white-space: nowrap;
}

.message-body a:not(.button) {
    text-decoration: none;
}

.verticalalign {
    vertical-align: middle;
}

.pushcontentforsidebar {
    flex: 0 0 240px !important;
    width: 240px;
}

.pushtagheaderforsidebar {
    padding-left: 240px !important;
}

.disabled {
    opacity: 0.5;
}

.is-amazing {
    /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#94d2c4+1,c9dbbd+100 */
    background: rgb(148,210,196); /* Old browsers */
    background: -moz-linear-gradient(-45deg, rgba(148,210,196,1) 1%, rgba(201,219,189,1) 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(-45deg, rgba(148,210,196,1) 1%,rgba(201,219,189,1) 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(135deg, rgba(148,210,196,1) 1%,rgba(201,219,189,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#94d2c4', endColorstr='#c9dbbd',GradientType=1 ); /* IE6-9 fallback on horizontal gradient */
}

.is-amazing .title, .is-amazing .subtitle {
    color: rgba(0,0,0,0.68);
}

.is-awesome {
    background: linear-gradient(-20deg, #BB48D4, #23A6D5);
    background-size: 400% 400%;
    -webkit-animation: Gradient 50s ease infinite;
    -moz-animation: Gradient 50s ease infinite;
    animation: Gradient 50s ease infinite;
}

@-webkit-keyframes Gradient {
    0% {
        background-position: 0% 50%
    }
    50% {
        background-position: 100% 50%
    }
    100% {
        background-position: 0% 50%
    }
}

@-moz-keyframes Gradient {
    0% {
        background-position: 0% 50%
    }
    50% {
        background-position: 100% 50%
    }
    100% {
        background-position: 0% 50%
    }
}

@keyframes Gradient {
    0% {
        background-position: 0% 50%
    }
    50% {
        background-position: 100% 50%
    }
    100% {
        background-position: 0% 50%
    }
}

@keyframes notification {
    0% {
        transform: scale(1) rotate(0deg);
    }
    50% {
        transform: scale(1.35) rotate(20deg);
    }
    100% {
        transform: scale(1) rotate(0deg);
    }
}

.is-awesome .title, .is-awesome .subtitle {
    color: rgba(255,255,255,0.9);
}

.subtitle {
    padding-top: 10px;
}

.subtitle a {
    color: #EAC67A !important;
}

#footer {
    width: 100%;
    height: 30px;
}

.has-max-width {
    max-width: 1100px;
    padding: 0 20px;
    margin: 0 auto;
}

.has-position-relative {
    position: relative;
}

.is-centered-vertically {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

#threadContents {
    display: none;
}

.is-loading {
    opacity: 0.6 !important;
}

.hideel-parent {
    width: 28px;
    margin-right: 6px;
    flex: 1 0 auto;
}

.hideel-parent.hasReplies {
    cursor: pointer;
}

.hideel {
    width: 3px;
    height: 100%;
    margin: 0 auto;
}

.hideel-parent.hasReplies .hideel {
    background: #eaeaea;
}

.hideel-parent.hasReplies:hover .hideel {
    background: #888;
}

.hideel-white-area {
    width: 100%;
    height: 36px;
    background: #fff;
}

.useravatar {
    margin: 5px auto;
    width: 28px;
    height: 28px;
    border-radius: 28px;
    overflow: hidden;
    background: #888;
}

.spinner {
    height: 40px;
    width: 40px;
    border-radius: 50%;
    border: 1px #888 solid;
    position: relative;
    animation: universe 1.4s ease infinite;
    margin: 20px auto 100px auto;
}

.middleplanet {
    height: 12px;
    width: 12px;
    position: absolute;
    background: #888;
    border-radius: 13px;
    left: 13px;
    top: 13px;
}

.planet1 {
    width: 9px;
    height: 9px;
    border-radius: 10px;
    background: #888;
    margin: 1px;
    position: absolute;
}

.planet2 {
    width: 9px;
    height: 9px;
    border-radius: 10px;
    background: #888;
    margin: 1px;
    position: absolute;
    right: 0;
    bottom: 0;
}

.cardtitle {
    font-size: 1.7rem;
    font-weight: 400;
}

.cant-be-selected {
    -webkit-user-select: none; /* Safari */
    -moz-user-select: none; /* Firefox */
    -ms-user-select: none; /* IE10+/Edge */
    user-select: none;
}

/* from https://stackoverflow.com/questions/16670931/hide-scroll-bar-but-while-still-being-able-to-scroll */
.cant-be-scrolled {
    overflow: hidden;
}

body.noscroll
{
    position: fixed;
    overflow-y: scroll;
    width: 100%;
}

/* Safari */
@-webkit-keyframes universe {
    0% {
        -webkit-transform: rotate(0deg);
        opacity: 0.2;
    }

    95% {
        opacity: 1;
    }

    100% {
        -webkit-transform: rotate(360deg);
        opacity: 0.2;
    }
}

@keyframes universe {
    0% {
        -webkit-transform: rotate(0deg);
        opacity: 0.2;
    }

    95% {
        opacity: 1;
    }

    100% {
        -webkit-transform: rotate(360deg);
        opacity: 0.2;
    }
}

.rotate180 {
    transform: rotate(-180deg);
}

.zoom-enter-active, .zoom-leave-active {
    transition: opacity .05s ease-in-out, transform .05s ease-in-out;
}
.zoom-enter, .zoom-leave-to /* .fade-leave-active below version 2.1.8 */ {
    opacity: 0;
    transform: scale(0.7) translate(20px, -30px);
}

.datenschutz {
    text-align: justify;
}

.regelwerk li {
    list-style: disc;
    margin-left: 2rem;
}

.profileavatar {
    border-radius: 100px;
}

.message.is-warning {
    margin: 0 12px;
}

.dont-break-out {

    /* These are technically the same, but use both */
    overflow-wrap: break-word;
    word-wrap: break-word;
    /* Instead use this non-standard one: */
    word-break: break-word;
    /* Adds a hyphen where the word breaks, if supported (No Blink) */
    -ms-hyphens: auto;
    -moz-hyphens: auto;
    -webkit-hyphens: auto;
    hyphens: auto;

}

/* Desktop */

@media screen and (min-width: 769px) {
    #spinner {
        display: none;
    }
    .is-blurry-desktop {
        filter: blur(8px);
    }
}


/* Touch */

@media screen and (max-width: 768px) {
    html, footer {
        background: #dcdee3;
    }

    /* dont zoom when focus on mobile browsers */
    input[type="color"],
    input[type="date"],
    input[type="datetime"],
    input[type="datetime-local"],
    input[type="email"],
    input[type="month"],
    input[type="number"],
    input[type="password"],
    input[type="search"],
    input[type="tel"],
    input[type="text"],
    input[type="time"],
    input[type="url"],
    input[type="week"],
    select:focus,
    .fr-wrapper,
    textarea {
        font-size: 16px;
        border-style:solid;
        -webkit-appearance: none;
        -moz-appearance: none;
        appearance: none;
    }

    .has-max-width {
        padding: 0;
    }

    .has-max-width-960 {
        margin: 0 12px;
    }

    .tagheadercontent .title {
        font-size: 1.7rem;
    }

    .mobilecard {
        background: #fff;
        padding: 16px 14px;
        box-shadow: 0 2px 2px rgba(0, 0, 0, 0.08);
    }

    .cardtitle {
        font-size: 1.4rem;
    }

    .menu-list {
        position: fixed !important;
        bottom: 3% !important;
        width: 86% !important;
        left: 0 !important;
        right: 0 !important;
        top: auto !important;
        margin: 0 auto;
        border-radius: 8px !important;
        overflow: hidden;
        max-width: 400px;
    }

    .menu-list > li {
        width: 100%;
        line-height: 2.2;
        font-size: 1.2rem;
        text-align: center;
    }

    .zoom-enter-active, .zoom-leave-active {
        transition: opacity .15s ease-in-out, transform .15s ease-in-out;
    }
    .zoom-enter, .zoom-leave-to /* .fade-leave-active below version 2.1.8 */ {
        opacity: 0;
        transform: translate(0, 100%);
    }

    .mobile-align-right {
        text-align: right;
    }

    .hideel-parent {
        width: 18px;
    }
    .useravatar {
        height: 18px;
        width: 18px;
        margin: 3px auto;
    }
    .hideel-white-area {
        height: 26px;
    }

}



/* FROALA */

.fr-view span.fr-emoticon.fr-emoticon-img {
    margin: auto !important;
}

.fr-box {
    z-index: 1 !important;
}

#postform .fr-wrapper, #completethread .fr-wrapper {
    box-shadow: none !important;
    border-top: 0 !important;
    border-left: 1px #ccd0d2 solid !important;
    border-right: 1px #ccd0d2 solid !important;
    border-bottom: 1px #ccd0d2 solid !important;
    border-radius: 0 0 4px 4px !important;
}

#postform .fr-toolbar, #completethread .fr-toolbar {
    box-shadow: none !important;
    border: 1px solid #ccd0d2 !important;
    border-bottom-color: #f2f2f2 !important;
}

#completethread .fr-toolbar {
    border-radius: 0 !important;
}

#completethread .fr-view img {
    margin: 0 auto;
    display: block;
}

/*
.fr-view span.fr-emoticon {
    font-size: 1.25rem;
    position: relative;
    top: 2px;
}


/* INFINITE LOADING */

.infinite-status-prompt {
    font-size: inherit !important;
    padding: 0 !important;
  }