.os-host .os-scrollbar {
    width: 20px;
}

.os-host .os-scrollbar .os-scrollbar-handle {
    cursor: pointer;
}

body {
    margin: 0;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto",
        "Oxygen", "Ubuntu", "Cantarell", "Fira Sans", "Droid Sans",
        "Helvetica Neue", sans-serif;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.cover-bg {
    background-color: transparent;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: -1;
}

#start_here {
    padding-top: 20px;
    height: 10px;
    width: 10px;
    display: block;
}

li .fa {
    margin-right: 5px;
}

.codebox {
    padding: 1rem;
    margin-bottom: 1rem;
}

.codebox .os-scrollbar.os-scrollbar-vertical {
    border-top-left-radius: 5px;
    border-top-right-radius: 5px;
    border-bottom-left-radius: 5px;
    border-bottom-right-radius: 5px;
}

.codebox p {
    margin-bottom: 0;
}

.codebox pre {
    font-family: source-code-pro, Menlo, Monaco, Consolas, "Courier New",
        monospace;
    max-height: 400px;
    overflow: auto;
    margin-bottom: 0;
}

.sitename {
    font-family: "Circe Extra Light", sans-serif;
    font-size: 45px;
    color: #fff;
    text-shadow: 3px 3px 2px black, -2px -1px 2px #868686;
}

.dw-logo-card {
    background: transparent;
}

.card-img-overlay {
    background: url("images/Sponsored_by_shinra.png") no-repeat center;
}

.dw-logo-rotate {
    animation: dw-logo-rotate 50000ms infinite linear;
}

@keyframes dw-logo-rotate {
    0% {
        transform: rotate(0deg);
    }

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

#sidebar-container {
    position: fixed;
}

#forum-search input {
    border-top-left-radius: 20px;
    border-bottom-left-radius: 20px;
}

.search-box #search_keywords {
    border-radius: 20px;
}

input#keywords {
    border-left: none;
}

input.search:-webkit-autofill {
    -webkit-background-clip: text;
    background-clip: text;
}

input.search::-webkit-search-cancel-button {
    -webkit-appearance: none;
    appearance: none;
    height: 10px;
    width: 10px;
    background-size: contain;
    filter: invert(1);
}

div .online-dot {
    display: none;
}

.online .online-dot {
    display: block;
}

.online-dot {
    width: 20px;
    height: 20px;
    border-radius: 10px;
}

.blockquote {
    font-size: 1rem;
}

.blockquote>div {
    padding: 1rem;
}

.btn-group-xs>.btn,
.btn-xs {
    padding: 0.15rem 0.25rem;
    font-size: 0.715rem;
}

label.btn-network+input[type="file"] {
    display: none;
}

.search-box .inpt-group {
    float: left;
    width: 83%;
    margin-left: 4px;
}

.search-box .inpt-group-btn {
    border: none;
    height: 40px;
}

.search-box .button-search-end {
    float: left;
    padding: 0.5rem;
}

.search-box input {
    height: 40px;
    padding: 10px;
    border-top-right-radius: 20px;
    border-bottom-right-radius: 20px;
    padding-right: 35px;
    padding-bottom: 14px;
}

#sidebar {
    z-index: 1;
}

.card-network .card-header {
    border-bottom-width: 4px;
    border-image-slice: 20 22;
}

.card-network .h1,
.card-network .h2,
.card-network .h3,
.card-network .h4,
.card-network .h5,
.card-network .h6,
.card-network h1,
.card-network h2,
.card-network h3,
.card-network h4,
.card-network h5,
.card-network h6 {
    margin-bottom: 0;
}

.card-network[data-augmented-ui*="clip"] .card-header,
.card-network[data-augmented-ui-compiled*="clip"] .card-header {
    padding-top: 1.5rem;
}

.card-network[data-augmented-ui*="clip"] .card-body,
.card-network[data-augmented-ui-compiled*="clip"] .card-body {
    padding: 2rem;
}

.card-network .card-footer {
    border-top-width: 4px;
    border-image-slice: 20 22;
}

.modal-dialog-network .modal-content {
    clip-path: none;
    padding: 1rem;
}

.modal-dialog-network .modal-header {
    margin-left: -1rem;
    margin-right: -1rem;
    margin-top: -1rem;
    padding-top: 1rem;
    border-bottom-width: 4px;
    border-image-slice: 20 22;
}

.modal-dialog-network .modal-footer {
    margin-left: -1rem;
    margin-right: -1rem;
    margin-bottom: -1rem;
    padding-bottom: 1.5rem;
    border-top-width: 4px;
    border-image-slice: 20 22;
}

.nav-tabs {
    border-top-width: 4px;
    border-image-slice: 20 22;
}

.nav-tabs .nav-item .nav-link {
    border: none;
}

hr.dashed {
    border-top-width: 4px;
    border-image-slice: 20 22;
}

.checkbox-network input[type="checkbox"] {
    display: none;
}

.checkbox-network input[type="checkbox"]+label {
    margin-bottom: initial;
}

.checkbox-network input[type="checkbox"]+label:hover {
    cursor: pointer;
}

.checkbox-network input[type="checkbox"]+label:before {
    margin-right: 0.5rem;
}

.checkbox-network input[type="checkbox"]+label svg {
    display: none;
}

.checkbox-network input[type="checkbox"]+label i {
    display: inline-block;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    font: var(--fa-font-regular);
}

.checkbox-network input[type="checkbox"]+label i:before {
    content: "\f0c8";
}

.checkbox-network input[type="checkbox"]:checked+label i:before {
    content: "\f14a";
}

.checkbox-network:last-child input[type="radio"]+label {
    margin-left: 1rem;
}

.checkbox-network input[type="radio"] {
    display: none;
}

.checkbox-network input[type="radio"]+label:hover {
    cursor: pointer;
}

.checkbox-network input[type="radio"]+label:before {
    margin-right: 0.5rem;
}

.checkbox-network input[type="radio"]+label svg {
    display: none;
}

.checkbox-network input[type="radio"]+label i {
    display: inline-block;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    font: var(--fa-font-regular);
}

.checkbox-network input[type="radio"]+label i:before {
    content: "\f111";
}

.checkbox-network input[type="radio"]:checked+label i:before {
    content: "\f192";
}

.main-header-container#main-header-container {
    position: fixed;
    z-index: 1;
}

.main-header-container .nav-breadcrumbs {
    padding-top: 1rem;
    padding-inline-start: 0;
    display: flex;
    flex-wrap: wrap;
    float: left;
    list-style: none;
}

@-moz-document url-prefix() {
    .main-header-container .nav-breadcrumbs {
        margin-bottom: 2rem;
    }
}

.nav-content {
    padding-top: 1rem;
    padding-bottom: 1rem;
}

.offcanvas {
    position: fixed !important;
}

.offcanvas-body {
    padding: 1rem 0.3rem;
}

.offcanvas-body .dw-logo-card img {
    max-width: 50%;
}

.offcanvas-body .search-box .inpt-group {
    margin-left: 0px;
}

.accordion-network h6 {
    margin-bottom: 0;
}

.accordion-network.user-menu .accordion-button::after {
    content: unset;
}

.accordion-network .accordion-button h6~i {
    transition: transform 0.2s ease-in-out;
}

.accordion-network .accordion-button:not(.collapsed) h6~i {
    transform: rotate(-180deg);
}

.nav-menu-aug>div {
    /*margin-top: 0.5rem !important;
    max-height: 98.5vh !important;*/
}

.nav-menu-aug .nav-parent .nav-content {
    margin: 1rem;
    margin-bottom: 2rem;
    padding: 0.5rem;
    padding-top: 2rem;
    padding-bottom: 2rem;
    height: auto !important;
}

.nav-menu-aug.hc-offcanvas-nav.nav-open[class*="hc-nav-"] div.nav-container {
    transform: translate3d(0px, 0, 0) !important;
}

.nav-menu-aug.hc-offcanvas-nav.nav-levels-overlap.nav-position-right li.level-open>.nav-wrapper {
    margin-top: 2rem;
    transform: translate3d(0px, 0, 0) !important;
}

.nav-menu-aug.hc-offcanvas-nav.nav-levels-overlap.nav-position-left li.level-open>.nav-wrapper {
    margin-top: 2rem;
    transform: translate3d(0px, 0, 0) !important;
}

.nav-menu-aug .search-box input {
    height: 40px;
    padding: 10px;
    border-top-right-radius: 20px;
    border-bottom-right-radius: 20px;
    border-top-left-radius: 20px;
    border-bottom-left-radius: 20px;
}

.nav-menu-aug .quick-login label {
    position: initial;
    top: initial;
    left: initial;
    right: initial;
    bottom: initial;
    z-index: initial;
    cursor: initial;
}

.main-header-container button.nav-menu-trigger span.forum-icon {
    margin-top: -0.1rem;
}

.main-header-container button.nav-menu-trigger span.forum-icon {
    margin-left: -0.75rem;
}

@-moz-document url-prefix() {
    .main-header-container button.nav-menu-trigger span.forum-icon {
        margin-left: -0.7rem;
    }
}

.main-header-container button.nav-menu-trigger span.forum-icon.has-avatar {
    margin-left: -0.8rem;
}

.main-header-container button.nav-menu-trigger {
    width: 50px;
    height: 50px;
    border-radius: 25px;
    position: relative;
    cursor: pointer;
    outline: none;
}

#footer-navbar-container #footer-navbar {
    height: 100px;
}

.inpt-group {
    display: table;
    width: 100%;
}

.inpt-group>div,
.inpt-group>button {
    display: table-cell;
    vertical-align: middle;
    margin-left: -2.5rem;
}

.inpt-group .inpt-group-input {
    width: 100%;
}

.inpt-group .inpt-group-input input {
    display: block;
}

.emoji {
    min-height: 18px;
    min-width: 18px;
    height: 1em;
    width: 1em;
}

.smilies {
    vertical-align: text-bottom;
}

a {
    cursor: pointer;
    transition: color 250ms ease-out;
    text-decoration: none;
}

.action-bar form {
    display: inline-block;
}

.jumpbox .dropdown-menu {
    min-width: 400px;
}

.dropdown-menu {
    padding: 1rem;
    padding-top: 1.3rem;
    background: transparent;
}

.dropdown-menu fieldset {
    min-width: 135px;
}

.select-network,
.select-network-container select {
    display: block;
    width: 100%;
    height: initial;
    padding: 0.375rem 0.75rem;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    background-clip: padding-box;
    border-radius: 0.25rem;
    transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

.select-network-container select {
    display: block;
    width: 100%;
    padding: 0.375rem 2.25rem 0.375rem 0.75rem;
    -moz-padding-start: calc(0.75rem - 3px);
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.5;
    background-repeat: no-repeat;
    background-position: right 0.75rem center;
    background-size: 16px 12px;
    border-radius: 0.25rem;
    transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

a.avatar {
    display: inline-block;
}

.avatar {
    max-width: 100%;
    height: initial;
    border-radius: 50%;
}

.header-avatar img.avatar {
    max-width: 48px;
    max-height: 48px;
    border-radius: 23px;
}

.header-avatar img.avatar {
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    -webkit-transform-origin: center center;
    transform-origin: center center;
    display: inline-block;
    position: absolute;
    text-align: center;
}

.row-forum dd.posts div {
    text-align: center;
    padding: 15px;
}

.row-forum .forumrow-container,
.row-forum dt.topics,
.row-forum dd.topics,
.row-forum dd.posts,
.row-forum dd.views,
.row-forum dd.lastpost,
.row-forum dd.redirect {
    margin-bottom: 0;
}

.row-forum .forumrow-container-remove-link-margin {
    margin-bottom: -2rem;
}

.row-forum .forumrow-container>div,
.row-forum dt.topics>div,
.row-forum dd.topics>div,
.row-forum dd.posts>div,
.row-forum dd.views>div,
.row-forum dd.lastpost>div,
.row-forum dd.redirect>div {
    padding-top: 1.3rem;
    padding-bottom: 1rem;
    padding-left: 1rem;
    height: 100%;
}

.row-forum dd.topics>div,
.row-forum dd.posts>div {
    padding-left: 0;
    padding-right: 1rem;
}

img.postimage {
    max-width: 100%;
}

.topiclist-aug {
    padding-top: 1rem;
    padding-bottom: 1rem;
    padding-left: 1rem;
    height: 100%;
}

.topiclist.topics.row dd {
    margin-bottom: 0;
}

.topiclist.topics.row dl,
.topiclist.topics.row ol,
.topiclist.topics.row ul {
    margin-bottom: 0.5rem;
}

.row-category dd.topics,
.row-category dd.posts,
.row-category dd.lastpost {
    text-align: center;
}

.topiclist dfn {
    display: none;
}

.postbody>div.postbody-aug {
    padding: 1rem;
    padding-right: 2rem;
    padding-bottom: 2rem;
}

.postlist.post {
    padding-top: 7rem;
    margin-top: -7rem;
}

.postprofile>div.postprofile-aug {
    padding: 1rem;
}

.collapse-partial.collapse:not(.show) {
    display: block;
    height: 200px;
    overflow: auto;
}

.collapse-partial.collapse.show {
    max-height: 900px;
}

.collapse-partial.collapsing {
    height: 200px;
}

.alert-aug {
    padding: 1.3rem;
}

.pagination-info .pagination-mark,
.pagination-info .pagination-mark~.pagination-total,
.pagination-info .pagination-mark~.pagination-bullet,
.pagination-info .pagination-mark~.pagination-pages {
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
}

.pagination-info .pagination-mark~.pagination-network {
    padding-left: 1rem;
}

.pagination-info .pagination-bullet {
    margin-right: 0.5rem;
    margin-left: 0.5rem;
}

.pagination-info .pagination-mark,
.pagination-info .pagination-total,
.pagination-info .pagination-bullet,
.pagination-info .pagination-pages {
    float: left;
}

.pm-legend {
    border-left-width: 10px;
    border-left-style: solid;
    border-right-width: 0;
    margin-bottom: 3px;
    padding-left: 3px;
}

.pmlist div.pm_message_reported_colour dt,
.pmlist div.pm_marked_colour dt,
.pmlist div.pm_replied_colour dt,
.pmlist div.pm_friend_colour dt,
.pmlist div.pm_foe_colour dt {
    border-left: 4px solid;
    margin-left: -4px;
    margin-right: 4px;
}

input:checked+.avatar-radio img {
    border: 2px solid;
    border-radius: 2px;
}

.signature {
    padding-top: 1rem;
    padding-bottom: 1rem;
}

#wrap {
    /*padding-right: 25px;*/
}

#wrap .stat-block {
    padding: 1rem;
    height: 100%;
}

/* Icon images
  ---------------------------------------- */
.contact-icon {
    background-image: url("./images/icons_contact.png");
}

/* Poster contact icons
----------------------------------------*/
.contact-icons.dropdown-contents {
    min-width: 0;
    padding: 0;
    font-size: 0;
}

.contact-icon {
    background-repeat: no-repeat;
    display: block;
    height: 16px;
    width: 16px;
    float: left;
}

.contact-icons a {
    display: block;
    float: left;
    padding: 8px;
}

.contact-icons .last-cell {
    border-right: none;
}

.contact-icons div:last-child a {
    border-bottom: none;
}

.contact-icons div {
    clear: left;
}

/* Profile & navigation icons */
.pm-icon {
    background-position: 0 0;
}

.email-icon {
    background-position: -21px 0;
}

.jabber-icon {
    background-position: -80px 0;
}

.phpbb_icq-icon {
    background-position: -61px 0;
}

.phpbb_wlm-icon {
    background-position: -182px 0;
}

.phpbb_aol-icon {
    background-position: -244px 0;
}

.phpbb_website-icon {
    background-position: -40px 0;
}

.phpbb_youtube-icon {
    background-position: -98px 0;
}

.phpbb_facebook-icon {
    background-position: -119px 0;
}

.phpbb_googleplus-icon {
    background-position: -140px 0;
}

.phpbb_skype-icon {
    background-position: -161px 0;
}

.phpbb_twitter-icon {
    background-position: -203px 0;
}

.phpbb_yahoo-icon {
    background-position: -224px 0;
}

.forum-icon {
    padding: 0.5rem;
    font-size: 3rem;
    display: none;
}

.fontawesome-i2svg-active .forum-icon {
    display: initial;
}

/* jQuery popups
  ---------------------------------------- */
.phpbb_alert {
    border: 1px solid transparent;
    display: none;
    left: 0;
    padding: 0 25px 20px 25px;
    position: fixed;
    right: 0;
    top: 150px;
    z-index: 50;
    width: 620px;
    margin: 0 auto;
}

@media only screen and (max-height: 500px),
only screen and (max-device-width: 500px) {
    .phpbb_alert {
        top: 25px;
    }
}

.phpbb_alert .alert_close {
    float: right;
}

.phpbb_alert p {
    margin: 8px 0;
    padding-bottom: 8px;
}

.phpbb_alert label {
    display: block;
    margin: 8px 0;
    padding-bottom: 8px;
}

.phpbb_alert div.alert_text>p,
.phpbb_alert div.alert_text>label,
.phpbb_alert div.alert_text>select,
.phpbb_alert div.alert_text>textarea,
.phpbb_alert div.alert_text>input {
    font-size: 1.1em;
}

.darkenwrapper {
    display: none;
    position: relative;
    z-index: 44;
}

.darken {
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    opacity: 0.5;
    z-index: 45;
}

.back2top {
    position: relative;
}

.back2top a {
    position: absolute;
    bottom: -10px;
}

.fa-layers-counter {
    padding: 0.56em 0.5em;
}

.span-kerning {
    display: flex;
}

/* Firefox fixes */
[augmented-ui~="border-el"]:not(.vdr, .modal-content),
[augmented-ui~="exe"]:not(.vdr, .modal-content)::after {
    z-index: -2;
}

#message-box textarea {
    min-height: 250px;
}

/* Glitch CSS (modified), from css-tricks: https://css-tricks.com/glitch-effect-text-images-svg/ */
.glitch {
    display: inline-block;
    font-style: normal;
    position: relative;
    margin: 0 auto;
    mask-image: repeating-linear-gradient(black, black 2px, transparent 3px);
}

.glitch::before,
.glitch::after {
    width: 100%;
    height: 100%;
}

.glitch::before {
    content: attr(data-text);
    display: inline-block;
    position: absolute;
    left: -2px;
    top: 0;
    overflow: hidden;
    pointer-events: none;
    animation: noise-anim-2 5.25s infinite linear alternate-reverse;
}

.glitch::after {
    content: attr(data-text);
    display: inline-block;
    position: absolute;
    left: 2px;
    top: 0;
    overflow: hidden;
    pointer-events: none;
    animation: noise-anim 5.25s infinite linear alternate-reverse;
}

@keyframes noise-anim {
    0% {
        clip-path: inset(96% 0 1% 0);
    }

    5% {
        clip-path: inset(44% 0 19% 0);
    }

    10% {
        clip-path: inset(64% 0 18% 0);
    }

    15% {
        clip-path: inset(97% 0 4% 0);
    }

    20% {
        clip-path: inset(77% 0 8% 0);
    }

    25% {
        clip-path: inset(53% 0 2% 0);
    }

    30% {
        clip-path: inset(22% 0 33% 0);
    }

    35% {
        clip-path: inset(14% 0 24% 0);
    }

    40% {
        clip-path: inset(24% 0 29% 0);
    }

    45% {
        clip-path: inset(100% 0 1% 0);
    }

    50% {
        clip-path: inset(82% 0 16% 0);
    }

    55% {
        clip-path: inset(75% 0 9% 0);
    }

    60% {
        clip-path: inset(69% 0 27% 0);
    }

    65% {
        clip-path: inset(53% 0 47% 0);
    }

    70% {
        clip-path: inset(72% 0 3% 0);
    }

    75% {
        clip-path: inset(5% 0 12% 0);
    }

    80% {
        clip-path: inset(10% 0 88% 0);
    }

    85% {
        clip-path: inset(55% 0 30% 0);
    }

    90% {
        clip-path: inset(23% 0 10% 0);
    }

    95% {
        clip-path: inset(98% 0 2% 0);
    }

    100% {
        clip-path: inset(42% 0 19% 0);
    }
}

@keyframes noise-anim-2 {
    0% {
        clip-path: inset(88% 0 4% 0);
    }

    5% {
        clip-path: inset(47% 0 43% 0);
    }

    10% {
        clip-path: inset(42% 0 43% 0);
    }

    15% {
        clip-path: inset(24% 0 73% 0);
    }

    20% {
        clip-path: inset(58% 0 10% 0);
    }

    25% {
        clip-path: inset(56% 0 30% 0);
    }

    30% {
        clip-path: inset(41% 0 4% 0);
    }

    35% {
        clip-path: inset(9% 0 27% 0);
    }

    40% {
        clip-path: inset(72% 0 25% 0);
    }

    45% {
        clip-path: inset(61% 0 23% 0);
    }

    50% {
        clip-path: inset(45% 0 26% 0);
    }

    55% {
        clip-path: inset(77% 0 13% 0);
    }

    60% {
        clip-path: inset(66% 0 18% 0);
    }

    65% {
        clip-path: inset(13% 0 31% 0);
    }

    70% {
        clip-path: inset(19% 0 21% 0);
    }

    75% {
        clip-path: inset(35% 0 26% 0);
    }

    80% {
        clip-path: inset(89% 0 11% 0);
    }

    85% {
        clip-path: inset(80% 0 18% 0);
    }

    90% {
        clip-path: inset(9% 0 41% 0);
    }

    95% {
        clip-path: inset(88% 0 4% 0);
    }

    100% {
        clip-path: inset(25% 0 53% 0);
    }
}