/*
 *  [ HTML & BODY ]
 */

html,
body {
    background: #f3f6fa;
}

body.pushable>.pusher {
    background: #f3f6fa;
    display: flex;
    min-height: 100vh;
    flex-direction: column;
}

#wrapper {
    margin-bottom: 1rem;
}

/*
   *  [ NAVIGATION BAR ]
   */

.ui.secondary.menu {
    background: #fff;
    padding: 10px;
    margin: 0;
}

.ui.secondary.menu .toc.item {
    display: none;
}

.ui.secondary.menu .toc.item i {
    margin: 0;
}

#navbar .item i {
    margin-right: 5px;
}

.ui.secondary.menu .ui.medium.label {
    padding: .68em 1em .5em .5em;
}

.ui.secondary.menu .ui.medium.label img {
    font-size: 1.09rem;
    margin: -.6em .5em -.6em -.5em;
}

.ui.secondary.inverted.menu .popup .list a.item {
    color: rgba(0, 0, 0, .87) !important;
}

@media only screen and (max-width: 768px) {

    .ui.secondary.menu .menu,
    .ui.secondary.menu .item {
        display: none;
    }

    .ui.secondary.menu .toc.item {
        display: block;
    }
}

.ui.secondary.menu .ui.popup {
    min-width: 200px;
}

.ui.secondary.menu .ui.popup a:not([href]) {
    cursor: default !important;
}

.ui.vertical.inverted.sidebar.menu.left .item .header span.icon {
    float: right;
}

/*
   *  [ HEADER ]
   */

.ui.masthead {
    background: linear-gradient(90deg, rgb(41, 117, 286) 0%, rgb(2, 117, 216) 100%);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    margin-bottom: 20px;
    padding: 4rem 0;
    border-radius: 0;
    color: #fff;
}

.ui.masthead .connect-server {
    background: rgba(255, 255, 255, .2);
    width: fit-content;
    padding: 1rem 1.5rem;
    margin-left: auto;
    border-radius: .4rem;
    text-align: center;
    box-shadow: 1px 1px 1px 1px rgba(0, 0, 0, .1);
}

@media (max-width: 768px) {
    .ui.masthead .ui.grid .ui.row .column>* {
        margin-left: auto;
        margin-right: auto;
        text-align: center;
    }
}

.ui.masthead .connect-server .ui.header {
    margin: 0;
    color: #fff;
}

/*
   *  -[ SEGMENT ]-
   */

.ui.segment {
    background: #fff;
    border-radius: .28571429rem;
    border: none;
    -webkit-box-shadow: 0 1px 3px 0 #d4d4d5, 0 0 0 1px #d4d4d5;
    box-shadow: 0 1px 3px 0 #d4d4d5, 0 0 0 1px #d4d4d5;
}

.ui.segment .ui.list .list>.item .header,
.ui.segment .ui.list>.item .header {
    display: inline-block;
}

.ui.secondary.segment.segment.segment.segment.segment:not(.inverted) {
    border-top: none;
}

/*
   *  [ NEWS POST ]
   */

#news-post .badge,
#news-post .ui.label {
    position: absolute;
    margin: 0;
    padding: .75em 1em;
    width: auto;
    top: 0;
    right: 0;
    text-transform: uppercase;
    border-radius: 0 .21428571rem 0 .28571429rem;
}

/*
   *  [ FORUM NODE ]
   */

#forum-node #last-post {
    width: 250px;
}

#forum-node #last-post .avatar {
    margin: 2px 10px 0 0;
}

/*
   *  [ FORUM PAGE ]
   */

#sticky-threads tbody tr td:last-child:not(:first-child),
#normal-threads tbody tr td:last-child:not(:first-child) {
    text-align: right;
}

#sticky-threads tbody tr td:last-child .ui.image.header .image,
#normal-threads tbody tr td:last-child .ui.image.header .image {
    float: right;
    margin-left: 1rem;
    margin-top: .24rem;
}

#sticky-threads .badge,
#sticky-threads .ui.label,
#normal-threads .badge,
#normal-threads .ui.label {
    position: relative;
    top: -1.2px;
    padding: .3rem .5rem;
    font-size: .7rem;
    margin: 0;
    margin-bottom: .1rem;
    margin-right: .2rem;
}

/*
   *  [ TOPIC PAGE ]
   */

#topic-post #post-sidebar .ui.small.image,
#topic-reply #reply-sidebar .ui.small.image {
    width: 120px;
}

#topic-post #post-sidebar h3,
#topic-reply #reply-sidebar h3 {
    margin: 1rem 0;
}

@media (max-width: 768px) {

    #topic-post #post-sidebar .ui.list,
    #topic-reply #reply-sidebar .ui.list {
        display: none;
    }
}

#topic-post #post-meta [class*="res right floated"] {
    margin-top: -5px;
}

@media (max-width: 576px) {
    #topic-post #post-meta {
        text-align: center;
    }

    #topic-post #post-meta [class*="res right floated"] {
        margin-top: 0;
    }
}

@media only screen and (min-width: 768px) {

    #topic-post #post-sidebar,
    #topic-reply #reply-sidebar {
        border-right: solid 1px rgba(0, 0, 0, .1);
        margin-top: -1.5rem;
        margin-bottom: -1.5rem;
        padding-top: 2rem;
        padding-bottom: 2rem;
    }

    #topic-post #post-sidebar:before,
    #topic-reply #reply-sidebar:before {
        content: "";
        height: 0;
        border: 8px solid transparent;
        border-right: 8px solid rgba(0, 0, 0, .2);
        position: absolute;
        top: 75px;
        right: 0;
    }

    #topic-post #post-sidebar:after,
    #topic-reply #reply-sidebar:after {
        content: "";
        height: 0;
        border: 8px solid transparent;
        border-right: 8px solid #fff;
        position: absolute;
        top: 75px;
        right: -1px;
    }
}

@media only screen and (max-width: 768px) {

    #topic-post #post-sidebar,
    #topic-reply #reply-sidebar {
        border-bottom: solid 1px rgba(0, 0, 0, .1);
    }
}

.ui.comments {
    max-width: none;
}

.ui.grid.segment.leaderboard_table {
    margin-top: 0;
}

.leaderboard_table .ui.list {
    margin-left: -10px;
}

.leaderboard_table .ui.list li a {
    display: block;
    height: 100%;
    width: 100%;
}

.leaderboard_table .middle.aligned.content {
    display: inline-block;
    overflow: hidden;
    text-overflow: ellipsis;;
    white-space: nowrap;
}

.leaderboard_table ol li:before {
    display: none;
}

#reactions {
    margin-top: 1rem;
    padding: .7em 1.2em .7em 1.2em;
    min-height: 32.5px;
    font-size: 12px;
}

#topic-post #post-content {
    display: flex;
    flex-direction: column;
}

#topic-post #post-content {
    padding: .7em 1.2em .7em 1.2em;
    min-height: 32.5px;
}

#post-content #reactions {
    margin-top: auto;
}

.reaction-button, .reaction-button-selected {
    margin-left: 5px;
    margin-right: 5px;
}

.reaction-button {
    opacity: 50%;
}

.reaction-button:hover, .reaction-button-selected {
    opacity: 100%;
    cursor: pointer;
}

#modal-reactions .ui.menu {
    overflow-x: auto;
}

/** Reaction modal tab buttons display non-native emojis as 2.5em wide by default */
.ui.menu .item > img:not(.ui) {
    width: 1em;
}

#topic-post #post-meta {
    margin-right: 1.3em;
}

#topic-post #post-sidebar .groups {
    text-align: center;
}

.inline.fields.labels {
    flex-wrap: wrap;
}

.ui.form .inline.fields.labels .field {
    padding-bottom: 1em;
}

.blockquote {
    border-left: 2px solid #ccc;
    margin: 1.5em 10px;
    padding: 0.5em 10px;
}

/*
   *  [ ACCOUNT MESSAGES ]
   */

#view-message #message .header {
    font-size: 1.15rem;
    margin-top: 0.01rem;
}

#view-message #message .meta {
    line-height: 0.95rem;
}

@media (max-width: 768px) {
    #messages table thead tr th:first-child {
        width: 100%;
    }

    #messages table thead tr th:not(:first-child),
    #messages table tbody tr td:not(:first-child) {
        display: none;
    }
}

/*
   *  -[ 404 ERROR ]-
   */

#error-403 .ui.container,
#error-404 .ui.container,
#maintenance .ui.container {
    position: relative;
    min-height: 100vh;
}

#error-403 .ui.segment,
#error-404 .ui.segment,
#maintenance .ui.segment {
    position: absolute;
    transform: translate(-50%, -70%);
    top: 50%;
    left: 50%;
    width: 500px;
    text-align: center;
}

/*
   *  [ PROFILE PAGE ]
   */

#profile-header {
    background: #fff;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

#profile-header .ui.header {
    margin: 8px 0;
}

#profile-header .ui.label {
    margin: 0;
}

#profile-header .actions {
    position: absolute;
    right: 1rem;
}

#profile a.ui.circular.image.avatar img {
    max-height: 35px;
}

/* Fix avatar images in labels being a few px from touching the top */
.ui.image.label img {
    vertical-align: top !important;
}

/*
   *  [ FORUM SEARCH ]
   */

#forum-search-result h3.ui.header {
    margin-top: 0;
    margin-bottom: 1rem;
}

/*
   *  [ SERVER PAGE ]
   */

[id*="server"] #server-players a:not(:last-child) {
    margin-right: .3rem;
}

/*
   *  [ WIDGETS ]
   */

[id*="widget"] .item .content {
    width: calc(100% - 40px) !important;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

[id*="widget"] .item .content * {
    overflow: hidden;
    text-overflow: ellipsis;
}

[id*="widget"] .item .description {
    width: calc(100% - 120px) !important;
    text-align: right;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

[id*="widget"] .item .description * {
    overflow: hidden;
}

#widget-online-users .content {
    padding-bottom: .5rem;
}

#widget-online-users .ui.image.label {
    margin-bottom: .5rem;
}

#widget-online-staff .ui.list .item {
    display: flex;
    align-items: center;
}

#widget-online-staff .ui.list .item .content {
    display: flex;
    align-items: center;
}

#widget-online-staff .ui.list .item .content .badge {
    margin-left: .35rem;
}

.fb-page {
    padding-bottom: 14px;
}

/*
   *  -[ FOOTER ]-
   */

.ui.footer.segment {
    position: relative;
    margin: auto 0 -.5rem 0;
    padding: 3em 0;
}

@media only screen and (max-width: 768px) {
    .ui.footer.segment {
        text-align: center;
    }
}

.ui.link.list.list .active.item {
    color: rgba(255, 255, 255, .5);
}

.ui.link.list.list .active.item a:not(.ui) {
    color: rgba(0, 0, 0, .87) !important;
}

.ui.link.list.list .active.item a:not(.ui):hover {
    background: rgba(0, 0, 0, .05) !important;
}

/*
   *  [ TABLE ]
   */

@media (max-width: 576px) {
    .ui.table.res thead tr th:first-child {
        width: 100%;
    }

    .ui.table.res thead tr th:not(:first-child),
    .ui.table.res tbody tr td:not(:first-child) {
        display: none;
    }
}

@media (max-width: 992px) {

    .ui.table.res thead tr th:first-child,
    .ui.table.res thead tr th:last-child {
        width: 50%;
    }

    .ui.table.res thead tr th:not(:first-child):not(:last-child),
    .ui.table.res tbody tr td:not(:first-child):not(:last-child) {
        display: none;
    }
}

/*
   *  -[ GRID ]-
   */

.ui.grid+.grid {
    margin-top: 0.3rem;
}

.ui.row+.row {
    padding-top: 0.3rem;
}

.ui.padded.grid:not(.vertically):not(.horizontally) {
    margin: 0 -1rem 0 -1rem !important;
}

@media only screen and (max-width: 768px) {
    .ui.padded.grid:not(.vertically):not(.horizontally) {
        margin: 0 !important;
    }
}

/*
   *  [ LINK LIST ]
   */

.ui.link.list.list .item a:not(.ui):hover,
.ui.link.list.list a.item:hover {
    background: none;
}

.ui.link.list.list .ui.divider {
    margin: 0.5rem 0;
}

/*
   *  [ USES POPUP ]
   */

#user-popup .header {
    text-align: center;
}

#user-popup .header .ui.header {
    padding: .5rem 0;
}

#user-popup .header .ui.image {
    margin: auto;
}

/*
   *  [ COOKIE NOTICE ]
   */

.cc-window.cc-floating {
    padding: 1rem 1.5rem;
    background-color: #fff !important;
    color: rgba(0, 0, 0, .68) !important;
    -webkit-box-shadow: 0 1px 3px 0 #bababb, 0 0 1px 1px #bababb;
    box-shadow: 0 1px 3px 0 #bababb, 0 0 1px 1px #bababb;
    border: none;
    border-radius: .28571429rem;
    cursor: default;
    font-family: Lato, 'Helvetica Neue', Arial, Helvetica, sans-serif;
    font-size: 14px;
    line-height: 18px;
    opacity: 1;
    transition: .5s all ease;
}

.cc-window.cc-floating .cc-highlight .cc-btn:first-child {
    color: rgba(0, 0, 0, .68);
}

.cc-window.cc-floating .cc-highlight .cc-btn.cc-allow {
    -webkit-box-shadow: 0 0 0 0 rgb(34 36 38 / 15%) inset;
    box-shadow: 0 0 0 0 rgb(34 36 38 / 15%) inset;
    background-color: #2185d0;
    border-color: #fff;
    border-radius: 5px;
    color: #fff;
}

.cc-revoke.cc-bottom.cc-right {
    color: #fff;
}

/*
   *  [ SPOILER ]
   */

#tinymce .spoiler,
.spoiler {
    color: rgba(0, 0, 0, .87);
    border-radius: .28571429rem;
    -webkit-box-shadow: 0 0 0 1px rgba(34, 36, 38, .22) inset, 0 0 0 0 transparent;
    box-shadow: 0 0 0 1px rgba(34, 36, 38, .22) inset, 0 0 0 0 transparent;
    border: none;
}

#tinymce .spoiler-toggle,
.spoiler-toggle {
    color: rgba(0, 0, 0, .87);
}

#tinymce .spoiler-text,
.spoiler-text {
    color: rgba(0, 0, 0, .87);
}

/*
   *  [ MESSAGE ]
   */

.ui.message>.close.icon {
    right: .8em;
}

/*
   *  [ UPDATE MESSAGE ]
   */

#update-message {
    margin-bottom: 1rem;
}

#update-message>a {
    color: inherit;
    transition: all .2s ease;
}

#update-message>a:hover {
    filter: contrast(2);
}

#update-message>a>.icon {
    margin-right: .5em;
}

#update-message>a>.icon:not(.close) {
    display: block;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: auto;
    line-height: 1;
    font-size: 3em;
    opacity: .8;
}

/*
   *  [ PAGINATION ]
   */

.ui.mini.pagination.menu .item:first-child,
.ui.mini.pagination.menu .item:last-child {
    padding-top: .5rem;
}

/*
   *  -[ ALIGNMENTS ]-
   */

[class*="left aligned"] {
    text-align: left;
}

[class*="center aligned"] {
    text-align: center;
}

[class*="right aligned"] {
    text-align: right;
}

/*
   *  [ FLOATS ]
   */

[class*="left floated"],
[class*="res left floated"] {
    float: left;
}

[class*="right floated"],
[class*="res right floated"] {
    float: right;
}

[class*="right floated"]+.ui.segment,
[class*="res right floated"]+.ui.segment {
    margin-top: 1rem;
}

@media only screen and (max-width: 576px) {

    [class*="res right floated"],
    [class*="res left floated"] {
        margin-top: 1rem;
        float: none;
    }

    [class*="res right floated"] .button:not(.mini),
    [class*="res left floated"] .button:not(.mini) {
        width: 100%;
        text-align: center;
    }

    [class*="res right floated"] .button:not(:first-child),
    [class*="res left floated"] .button:not(:first-child) {
        margin-top: 0.5rem;
    }
}

/*
   *  [ DISPLAY ]
   */

[display="block"] {
    display: block !important;
}

[display="inline"] {
    display: inline !important;
}

[display="inline block"] {
    display: inline-block !important;
}

/*
   *  [ VISIBILITY ]
   */

@media only screen and (max-width: 576px) {

    [class*="mobile hidden"],
    [class*="tablet only"]:not(.mobile),
    [class*="computer only"]:not(.mobile),
    [class*="large screen only"]:not(.mobile),
    [class*="widescreen only"]:not(.mobile),
    [class*="or lower hidden"] {
        display: none !important;
    }
}

@media only screen and (min-width: 576px) and (max-width: 768px) {

    [class*="mobile only"]:not(.tablet),
    [class*="tablet hidden"],
    [class*="computer only"]:not(.tablet),
    [class*="large screen only"]:not(.tablet),
    [class*="widescreen only"]:not(.tablet),
    [class*="or lower hidden"]:not(.mobile) {
        display: none !important;
    }
}

@media only screen and (min-width: 768px) and (max-width: 992px) {

    [class*="mobile only"]:not(.computer),
    [class*="tablet only"]:not(.computer),
    [class*="computer hidden"],
    [class*="large screen only"]:not(.computer),
    [class*="widescreen only"]:not(.computer),
    [class*="or lower hidden"]:not(.tablet):not(.mobile) {
        display: none !important;
    }
}

@media only screen and (min-width: 992px) and (max-width: 1280px) {

    [class*="mobile only"]:not([class*="large screen"]),
    [class*="tablet only"]:not([class*="large screen"]),
    [class*="computer only"]:not([class*="large screen"]),
    [class*="large screen hidden"],
    [class*="widescreen only"]:not([class*="large screen"]),
    [class*="or lower hidden"]:not(.computer):not(.tablet):not(.mobile) {
        display: none !important;
    }
}

@media only screen and (min-width: 1280px) {

    [class*="mobile only"]:not([class*="widescreen"]),
    [class*="tablet only"]:not([class*="widescreen"]),
    [class*="computer only"]:not([class*="widescreen"]),
    [class*="large screen only"]:not([class*="widescreen"]),
    [class*="widescreen hidden"],
    [class*="widescreen or lower hidden"] {
        display: none !important;
    }
}

/*
   *  [ USER BADGES ]
   */

.badge {
    display: inline-block;
    line-height: 1;
    vertical-align: baseline;
    margin: 0 .14285714em;
    background-color: #e8e8e8;
    background-image: none;
    padding: 0.3em .3em;
    color: rgba(0, 0, 0, .6);
    text-transform: none;
    font-size: .85714286rem;
    font-weight: 700;
    border: 0 solid transparent;
    border-radius: .28571429rem;
    -webkit-transition: background .1s ease;
    transition: background .1s ease;
}

a.badge:hover,
a.badge:focus {
    text-decoration: none;
}

.badge:empty {
    display: none;
}

.badge-primary {
    color: #fff;
    background-color: #007bff;
}

a.badge-primary:hover,
a.badge-primary:focus {
    color: #fff;
    background-color: #0062cc;
}

.badge-secondary {
    color: #fff;
    background-color: #6c757d;
}

a.badge-secondary:hover,
a.badge-secondary:focus {
    color: #fff;
    background-color: #545b62;
}

.badge-success {
    color: #fff;
    background-color: #28a745;
}

a.badge-success:hover,
a.badge-success:focus {
    color: #fff;
    background-color: #1e7e34;
}

.badge-info {
    color: #fff;
    background-color: #17a2b8;
}

a.badge-info:hover,
a.badge-info:focus {
    color: #fff;
    background-color: #117a8b;
}

.badge-warning {
    color: #212529;
    background-color: #ffc107;
}

a.badge-warning:hover,
a.badge-warning:focus {
    color: #212529;
    background-color: #d39e00;
}

.badge-danger {
    color: #fff;
    background-color: #dc3545;
}

a.badge-danger:hover,
a.badge-danger:focus {
    color: #fff;
    background-color: #bd2130;
}

.badge-light {
    color: #212529;
    background-color: #f8f9fa;
}

a.badge-light:hover,
a.badge-light:focus {
    color: #212529;
    background-color: #dae0e5;
}

.badge-dark {
    color: #fff;
    background-color: #343a40;
}

a.badge-dark:hover,
a.badge-dark:focus {
    color: #fff;
    background-color: #1d2124;
}

/*
   *  [ OTHER ]
   */

select {
    font-family: Lato, 'Helvetica Neue', Arial, Helvetica, sans-serif;
    font-size: 0.9rem;
    padding: 10px !important;
}

.ui.popup {
    z-index: 99999;
    text-align: left;
}

.ui.popup .ui.header {
    margin: 0;
}

.ui.message {
    margin: 0.5em 0;
}

.tox-tinymce {
    min-height: 300px;
}

.forum_post {
    word-wrap: break-word;
}

.forum_post img {
    overflow: auto;
    max-width: 100%;
    height: auto;
}

#post-content .forum_post {
    margin-bottom: 1rem;
}

.ui.checkbox .box:before {
    margin-top: 4px;
}

.ui.checkbox input:checked~.box:after {
    margin-top: 4px;
}

.ui.header .topic.title .label,
.ui.header .topic.title .badge {
    margin-top: -4px;
    vertical-align: middle;
}

#ie-message {
    display: none;
}

@media all and (-ms-high-contrast: none),
(-ms-high-contrast: active) {
    #ie-message {
        display: initial;
    }
}

#darkmode {
    display: inline-block;
}

.darkmode-toggle {
    opacity: 0;
    position: absolute;
}

.darkmode-toggle:checked+.darkmode-toggle-label .darkmode-ball {
    transform: translateX(24px);
}

.darkmode-toggle-label {
    background-color: #111;
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-radius: 50px;
    position: relative;
    padding: 5px;
    height: 26px;
    width: 50px;
    cursor: pointer;
}

.darkmode-ball {
    background-color: #fff;
    border-radius: 50%;
    position: absolute;
    top: 2px;
    left: 2px;
    height: 22px;
    width: 22px;
    transition: transform 0.2s linear;
}

.fa-moon {
    color: #f1c400;
}

.fa-sun {
    color: #f39c00;
}

/*
 Member list search images
 */
.ui.search>.results .result .image {
    border-radius: 0;
}

/*
 Make new members grid avatars fit nicer
 */
#new-members-grid {
    padding: 0.5em;
}

#new-members-grid .column {
    padding: 0.5em;
}

/*
 *  [ EMOJI SIZING ]
 */

.joypixels,
.twemoji {
    height: 1em;
    width: 1em;
    vertical-align: middle;
}

/*
   *  [ DARK MODE ]
   */

body.dark,
body.dark>.pusher,
body.dark .ui.pointing.dropdown>.menu:after {
    background: #222;
}

body.dark .ui.secondary.menu:not(.inverted) {
    background: #303030;
    color: #fff;
}

body.dark .ui.secondary.menu .item.active {
    color: #fff;
}

body.dark .ui.top.attached.menu:not(.inverted) {
    background: #282828;
    border: 1px solid #282828;
}

body.dark .ui.top.attached.menu:not(.inverted) .item {
    color: #fff;
}

body.dark .ui.form input:not(.button) {
    background-color: #303030 !important;
}

body.dark .ui.modal {
    background-color: #303030;
    border: none;
}

body.dark .ui.modal>.content {
    background-color: #303030;
    border: 1px solid rgba(0, 0, 0, 0.125);
    color: #fff;
    -webkit-box-shadow: none;
    box-shadow: none;
}

body.dark .ui.modal>.actions,
body.dark .ui.modal>.header {
    color: rgba(255, 255, 255, 0.6);
    background-color: #444;
    border-bottom: 1px solid rgba(0, 0, 0, 0.125);
}

body.dark .ui.popup,
body.dark .ui.secondary.menu .ui.popup,
body.dark .ui.menu .dropdown.item .menu,
body.dark .ui.dropdown .menu {
    background-color: #222;
    border: 1px solid #444;
    color: rgba(255, 255, 255, 0.6);
}

body.dark .ui.default.button,
body.dark .ui.mini.icon.button,
body.dark .ui.top.right.attached.label {
    background-color: #282828;
    color: rgba(255, 255, 255, 0.6);
}

body.dark .ui.button.red {
    background-color: #db2828;
    color: #fff;
}

body.dark .ui.image.label,
body.dark .ui.selection.dropdown,
body.dark .ui.selection.visible.dropdown>.text:not(.default) {
    background-color: #282828;
    color: #fff;
}

body.dark .ui.selection.dropdown .ui.label {
    background-color: #303030;
    color: #fff;
}

body.dark .ui.form .ui.selection.dropdown input:not(.button) {
    background-color: #282828 !important;
}

body.dark .ui.form .field .ui.selection.active.dropdown .menu {
    border: 1px solid #282828;
}

body.dark .ui.form .field .ui.dropdown .menu .item {
    background-color: #282828;
    border-top: 1px solid #303030;
    color: #fff;
}

body.dark .ui.form .ui.text input:not(.button) {
    background-color: #282828 !important;
}

body.dark .ui.form .field input {
    background-color: #282828 !important;
}

body.dark .ui.card,
body.dark .ui.segment,
body.dark .ui.segment.attached:not(.basic),
body.dark .ui.vertical.menu {
    background-color: #303030;
    border: 1px solid rgba(0, 0, 0, 0.125);
    -webkit-box-shadow: none;
    box-shadow: none;
}

body.dark .ui.vertical.menu .active.item {
    background-color: #464646;
}

body.dark .ui.vertical.pointing.menu .active.item:after {
    background-color: #464646;
    border-top: 1px solid #464646;
    border-right: 1px solid #464646;
}

body.dark .ui.segment#profile-header {
    border: none;
}

body.dark .ui.attached.tabular.menu {
    border-bottom: none;
}

body.dark .ui.attached.tabular.menu .item.active {
    background-color: #303030;
    border-color: transparent;
}

body.dark .ui.card .content.header {
    background-color: #444;
    border-bottom: 1px solid rgba(0, 0, 0, 0.125);
}

body.dark .ui.card>.content>.description,
body.dark .ui.cards>.card>.content>.description,
body.dark .ui.card>.content>.description .list .right.floated,
body.dark .ui.card>.content>.header a,
body.dark .ui.segment a,
body.dark .ui.checkbox label,
body.dark .ui.checkbox+label,
body.dark .ui.list .list>.item .description,
body.dark .ui.list>.item .description,
body.dark .ui.vertical.menu .item.active,
body.dark .ui.vertical.menu .item:hover,
body.dark #user-popup .description,
body.dark .ui.search.dropdown.active>input.search,
body.dark .ui.search.selection.dropdown>input.search,
body.dark .ui.selection.dropdown .menu>.message,
body.dark .ui.attached.tabular.menu .item.active,
body.dark .ui.threaded.comments .comment .text {
    color: #fff;
}

body.dark .ui.segment .forum_post a,
body.dark .ui.comments .comment .forum_post a {
    color: #62b6f7;
}

body.dark .ui.card .meta,
.ui.cards>.card .meta,
body.dark .ui.header,
body.dark .ui.header .sub.header,
body.dark .ui.card>.content>.header,
body.dark .ui.cards>.card>.content>.header,
body.dark .ui.secondary.menu .item:not(.active),
body.dark .ui.card>.content>.description .list .item .text,
body.dark .ui.card>.extra,
body.dark .ui.cards>.card>.extra,
body.dark .ui.pointing.dropdown>.menu>.header,
body.dark .ui.dropdown .menu>.item,
body.dark .ui.breadcrumb .icon.divider,
body.dark .ui.vertical.menu .item,
body.dark .ui.segment,
body.dark .ui.form .field>label,
body.dark .ui.list .list>.item .header,
body.dark .ui.list>.item .header,
body.dark .ui.attached.tabular.menu .item,
body.dark .ui.comments .comment .metadata,
body.dark .ui.comments .comment .actions a,
body.dark .ui.card>.extra a:not(.ui),
body.dark .ui.cards>.card>.extra a:not(.ui),
body.dark .ui.relaxed.list .item .content,
body.dark .ui.horizontal.divider,
body.dark .ui.dropdown .menu>.header:not(.ui),
body.dark .ui.link.list.list .active.item,
body.dark .ui.link.list.list .active.item a:not(.ui) {
    color: rgba(255, 255, 255, 0.6) !important;
}

body.dark .ui.menu .ui.dropdown .menu>.item:hover {
    background-color: rgba(0, 0, 0, .05) !important;
}

body.dark .ui.secondary.inverted.menu .popup .list a.item,
body.dark .ui.pointing.dropdown>.menu>.item {
    color: rgba(255, 255, 255, 0.6) !important;
}

body.dark .ui.menu .ui.dropdown .menu>.item:hover,
body.dark .ui.dropdown .menu>.item:hover,
body.dark .ui.menu .ui.dropdown .menu>.item.active,
body.dark .ui.list>.item a.header,
body.dark .ui.link.list.list .active.item a:not(.ui):hover {
    color: #fff !important;
}

body.dark .ui.top.left.popup:before {
    background: #222;
    -webkit-box-shadow: 1px 1px 0 0 #444;
    box-shadow: 1px 1px 0 0 #444;
}

body.dark .ui.right.center.popup:before {
    background: #222;
    -webkit-box-shadow: -1px 1px 0 0 #444;
    box-shadow: -1px 1px 0 0 #444;
}

body.dark .ui.left.center.popup:before {
    background: #222;
    -webkit-box-shadow: 1px -1px 0 0 #444;
    box-shadow: 1px -1px 0 0 #444;
}

body.dark .ui.bottom.left.popup:before {
    background: #222;
    -webkit-box-shadow: 1px 1px 0 0 #222;
    box-shadow: 1px 1px 0 0 #222;
}

body.dark .ui.form textarea {
    background-color: #303030;
    border: 2px solid #282828;
    color: #fff;
}

body.dark .ui.form input:not([type]),
body.dark .ui.form input[type=date],
body.dark .ui.form input[type=datetime-local],
body.dark .ui.form input[type=email],
body.dark .ui.form input[type=file],
body.dark .ui.form input[type=number],
body.dark .ui.form input[type=password],
body.dark .ui.form input[type=search],
body.dark .ui.form input[type=tel],
body.dark .ui.form input[type=text],
body.dark .ui.form input[type=time],
body.dark .ui.form input[type=url] {
    color: #fff;
}

body.dark .ui.mini.message,
body.dark .ui.mini.info.message {
    background-color: #282828;
    box-shadow: 0 0 0 1px #282828 inset, 0 0 0 0 transparent;
    -webkit-box-shadow: 0 0 0 1px #282828 inset, 0 0 0 0 transparent;
}

body.dark .ui.pagination {
    background-color: #303030;
}

body.dark .ui.pagination.menu .item {
    color: #fff;
}

body.dark .ui.pagination.menu .item.active {
    background-color: #282828;
}

body.dark .ui.pagination .disabled.item {
    background-color: rgba(0, 0, 0, .05) !important;
    color: rgba(255, 255, 255, 0.6) !important;
}

body.dark .ui.table {
    background: #303030;
    color: rgba(255, 255, 255, 0.6);
}

body.dark .ui.table thead th {
    background-color: #282828;
    color: rgba(255, 255, 255, 0.6);
}

body.dark .ui.top.attached.header {
    background-color: #282828;
    border-color: #282828;
    color: rgba(255, 255, 255, 0.6);
}

body.dark .ui.table a {
    color: #fff;
}

body.dark .ui.selectable.table tbody tr:hover,
body.dark .ui.table tbody tr td.selectable:hover {
    color: rgba(255, 255, 255, 0.6) !important;
}

@media only screen and (min-width: 768px) {

    body.dark #topic-post #post-sidebar:after,
    #topic-reply #reply-sidebar:after {
        border-right: none;
    }
}

body.dark .forum_post,
body.dark .ui.comments .forum_post.text {
    color: #fff;
}

body.dark .ui.comments .comment .author {
    color: #fff;
}

body.dark .tox .tox-toolbar {
    background-color: #222;
}

body.dark .tox .tox-tbtn {
    color: #fff;
}

body.dark .tox .tox-tbtn:hover,
body.dark .tox .tox-tbtn--enabled,
body.dark .tox .tox-split-button:focus,
body.dark .tox .tox-edit-area__iframe {
    color: #fff;
}

body.dark .tox .tox-tbtn svg {
    fill: #fff;
}

/* Override TinyMCE blue-ish dark theme with neutral dark theme */

body.dark .tox .tox-menu,
body.dark .tox .tox-statusbar,
body.dark .tox .tox-menubar,
body.dark .tox .tox-toolbar,
body.dark .tox .tox-toolbar__overflow,
body.dark .tox .tox-toolbar__primary,
body.dark .tox .tox-dialog,
body.dark .tox .tox-dialog__header,
body.dark .tox .tox-dialog__footer,
body.dark .tox .tox-listboxfield .tox-listbox--select,
body.dark .tox .tox-textarea,
body.dark .tox .tox-textfield,
body.dark .tox .tox-toolbar-textfield,
body.dark .tox .tox-selectfield select {
    background-color: #222;
}

body.dark .tox .tox-dialog-wrap__backdrop {
    background-color: rgba(34, 34, 34, 0.7);
}

body.dark .tox .tox-collection--list .tox-collection__item--enabled {
    background-color: #444;
}

body.dark .tox .tox-collection--list .tox-collection__item--active {
    background-color: #666;
}

body.dark .ui.cards>.green.card,
body.dark .ui.green.card,
body.dark .ui.green.cards>.card {
    -webkit-box-shadow: 0 0 0 1px #d4d4d5, 0 5px 0 0 #178f2b, 0 1px 3px 0 #d4d4d5;
    box-shadow: 0 0 0 1px #d4d4d5, 0 5px 0 0 #178f2b, 0 1px 3px 0 #d4d4d5;
}

body.dark .ui.cards>.red.card,
body.dark .ui.red.card,
body.dark .ui.red.cards>.card {
    -webkit-box-shadow: 0 0 0 1px #d4d4d5, 0 5px 0 0 #db2828, 0 1px 3px 0 #d4d4d5;
    box-shadow: 0 0 0 1px #d4d4d5, 0 5px 0 0 #db2828, 0 1px 3px 0 #d4d4d5;
}

body.dark .ui.tabular.menu {
    border-color: #282828;
}

body.dark .ui.tabular.menu .item {
    color: #fff;
}

body.dark .ui.tabular.menu .active.item {
    background-color: #282828;
    border-color: #282828;
}

body.dark .cc-window.cc-floating {
    -webkit-box-shadow: 0 1px 3px 0 #444, 0 0 1px 1px #444;
    box-shadow: 0 1px 3px 0 #444, 0 0 1px 1px #444;
    background-color: #303030 !important;
    border: 1px solid rgba(0, 0, 0, 0.125);
    color: #fff !important;
}

body.dark .cc-window.cc-floating .cc-highlight .cc-btn:first-child,
body.dark .cc-window.cc-floating .cc-link {
    color: rgba(255, 255, 255, 0.6);
}

body.dark .cc-window.cc-floating .cc-highlight .cc-btn.cc-allow {
    background-color: #282828;
    border-color: transparent;
}

body.dark #reactions.ui.mini.message span {
    color: #fff;
}

body.dark #modal-reactions .ui.menu {
    background-color: #282828;
}

body.dark #modal-reactions .ui.menu .item {
    color: #fff;
}

body.dark #modal-reactions .ui.menu .item.active {
    background-color: #222;
}

body.dark #modal-reactions .ui.large.selection.divided.list.middle.aligned .item .content {
    color: #fff;
}

body.dark ::-webkit-scrollbar-corner {
    background-color: transparent;
}

/*
 * Colours
 */

body.dark .white {
    color: #fff;
}

/*
 * Accessiblity
 */

.screenreader-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0,0,0,0);
    border: 0;
}

/* ========================================================================== */
/* Hyflip Play 2.2 — ModernX inspired                                         */
/* ========================================================================== */
:root {
    --hy-accent:#2f80ff;
    --hy-accent-2:#7b4dff;
    --hy-warm:#ffc83d;
    --hy-bg:#08111f;
    --hy-surface:#111d31;
    --hy-surface-alt:#182844;
    --hy-text:#f7f9ff;
    --hy-muted:#aab8cf;
    --hy-border:rgba(255,255,255,.09);
    --hy-shadow:0 24px 58px rgba(0,0,0,.34);
}
html { scroll-behavior:smooth; background:var(--hy-bg)!important; }
body.hyflip-theme,
body.hyflip-theme.pushable,
body.hyflip-theme.pushable>.pusher,
body.hyflip-theme #wrapper {
    min-height:100vh;
    color:var(--hy-text);
    background:var(--hy-bg)!important;
    font-family:"Trebuchet MS",Inter,system-ui,-apple-system,"Segoe UI",sans-serif;
}
body.hyflip-theme #wrapper { display:flex; flex-direction:column; margin:0; }
body.hyflip-theme #wrapper>.hyflip-page-container { flex:1 0 auto; }
body.hyflip-theme::before {
    content:""; position:fixed; inset:0; z-index:-2; pointer-events:none;
    background:
        radial-gradient(circle at 10% 16%,rgba(47,128,255,.13),transparent 29%),
        radial-gradient(circle at 88% 22%,rgba(123,77,255,.12),transparent 25%),
        linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),
        linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px),
        var(--hy-bg);
    background-size:auto,auto,36px 36px,36px 36px,auto;
}
body.hyflip-theme a { color:#8bbdff; }
body.hyflip-theme a:hover { color:#fff; }
body.hyflip-theme .ui.container { width:min(1120px,calc(100% - 32px))!important; }
body.hyflip-theme .hyflip-page-container { padding-top:2.2rem; padding-bottom:3.2rem; }
body.hyflip-theme#page-index .hyflip-page-container { padding-top:0; }

/* Two-level navigation */
.hy-topbar { min-height:56px; display:flex; align-items:center; background:rgba(8,13,24,.96); border-bottom:1px solid rgba(255,255,255,.05); backdrop-filter:blur(10px); }
.hy-topbar-inner { display:flex!important; align-items:center; gap:1rem; min-height:56px; }
.hy-topbar-brand { display:inline-flex; align-items:center; gap:.8rem; color:#fff!important; font-weight:950; letter-spacing:.08em; }
.hy-topbar-brand img { width:29px; height:38px; object-fit:contain; }
.hy-topbar-tagline { color:#7e90af; font-size:.77rem; letter-spacing:.11em; text-transform:uppercase; white-space:nowrap; }
.hy-user-actions { margin-left:auto; display:flex; align-items:center; gap:.55rem; }
.hy-user-actions .ui.button,.hy-user-actions .ui.label { margin:0!important; border-radius:12px!important; color:#edf3ff!important; background:rgba(255,255,255,.06)!important; border:1px solid rgba(255,255,255,.07)!important; box-shadow:none!important; }
.hy-user-actions .ui.button:hover,.hy-user-actions .ui.label:hover { background:rgba(255,255,255,.1)!important; color:#fff!important; }
.hy-user-actions .ui.primary.button { background:linear-gradient(135deg,var(--hy-accent),var(--hy-accent-2))!important; border-color:transparent!important; }
.hy-user-actions .hy-account-button { padding:.55rem .9rem!important; display:inline-flex!important; align-items:center; gap:.7rem; font-weight:800!important; }
.hy-user-actions .hy-account-button img { border-radius:8px!important; width:24px!important; height:24px!important; }
.hy-user-popup.ui.popup { background:rgba(12,20,36,.99)!important; border:1px solid rgba(255,255,255,.08)!important; border-radius:14px!important; box-shadow:0 20px 40px rgba(0,0,0,.35)!important; padding:1rem!important; min-width:250px; }
.hy-user-popup.ui.popup:before { background:rgba(12,20,36,.99)!important; box-shadow:-1px -1px 0 0 rgba(255,255,255,.08)!important; }
.hy-user-popup .ui.header,.hy-user-popup h4,.hy-user-popup .item,.hy-user-popup a.item,.hy-user-popup .description,.hy-user-popup .icon,.hy-user-popup .text,.hy-user-popup b,.hy-user-popup span,.hy-user-popup small,.hy-user-popup strong { color:#eef4ff!important; }
.hy-user-popup .description { opacity:.92; }
.hy-user-popup .ui.header { margin-bottom:.85rem!important; font-weight:900!important; }
.hy-user-popup .ui.list .item { padding:.7rem .8rem!important; border-radius:10px!important; transition:background .18s ease,color .18s ease; }
.hy-user-popup .ui.relaxed.link.list>a.item:hover,.hy-user-popup .ui.link.list>a.item:hover,.hy-user-popup .ui.list .item:hover { background:rgba(255,255,255,.07)!important; color:#fff!important; }
.hy-user-popup .ui.divider { border-top-color:rgba(255,255,255,.08)!important; }

body.hyflip-theme #navbar.ui.menu { margin:0; min-height:82px; border:0; border-radius:0; background:rgba(13,19,33,.96)!important; box-shadow:0 8px 30px rgba(0,0,0,.18); position:relative; z-index:120; backdrop-filter:blur(10px); }
body.hyflip-theme #navbar.ui.menu .item,
body.hyflip-theme #navbar.ui.menu .item:hover,
body.hyflip-theme #navbar.ui.menu .item.active,
body.hyflip-theme #navbar.ui.menu .dropdown.item,
body.hyflip-theme #navbar.ui.menu .dropdown.item:hover,
body.hyflip-theme #navbar.ui.menu .dropdown.item.active { box-shadow:none!important; }
body.hyflip-theme #navbar.ui.menu .item:before,
body.hyflip-theme #navbar.ui.menu .item:after,
body.hyflip-theme #navbar.ui.menu .dropdown.item:before,
body.hyflip-theme #navbar.ui.menu .dropdown.item:after { display:none!important; }
.hy-mainnav-inner { display:flex!important; align-items:center; justify-content:flex-start; min-height:82px; gap:1rem; }
.hy-mobile-navbar-brand { display:none!important; align-items:center; gap:.7rem; color:#fff!important; font-weight:900; letter-spacing:.05em; }
.hy-mobile-navbar-brand img { width:29px; height:38px; object-fit:contain; }
.hy-mainnav-links { display:flex; align-items:center; justify-content:flex-start; gap:.55rem; flex-wrap:wrap; }
.hy-mainnav-links>.item,.hy-mainnav-links>.ui.dropdown.item { display:inline-flex!important; align-items:center; justify-content:center; gap:.45rem; min-height:46px; padding:0 1.15rem!important; color:#d6e1f6!important; font-weight:850!important; font-size:1rem; border-radius:14px!important; position:relative; border:1px solid transparent!important; background:transparent!important; transition:all .16s ease; }
.hy-mainnav-links>.item:hover,.hy-mainnav-links>.ui.dropdown.item:hover,.hy-mainnav-links>.ui.dropdown.active.item { color:#fff!important; background:rgba(255,255,255,.05)!important; border-color:rgba(255,255,255,.08)!important; transform:translateY(-1px); }
.hy-mainnav-links>.item.active,.hy-mainnav-links>.ui.dropdown.active.item { color:#fff!important; background:linear-gradient(135deg,rgba(74,99,255,.18),rgba(141,86,255,.18))!important; border-color:rgba(74,99,255,.6)!important; box-shadow:0 0 0 1px rgba(74,99,255,.12),0 12px 30px rgba(44,72,170,.15)!important; }
.hy-mainnav-links>.item.active:hover,.hy-mainnav-links>.ui.dropdown.active.item:hover { transform:none; }
.hy-mainnav-links>.item i,.hy-mainnav-links>.ui.dropdown.item i { color:inherit!important; opacity:.95; }
.hy-mainnav-links .menu { border-radius:14px!important; background:rgba(12,20,36,.98)!important; border:1px solid rgba(255,255,255,.08)!important; box-shadow:0 20px 40px rgba(0,0,0,.32)!important; }
.hy-mainnav-links .menu .item,.hy-mainnav-links .menu .header { color:#eef4ff!important; }
.hy-mainnav-links .menu .item:hover { background:rgba(255,255,255,.07)!important; color:#fff!important; }
.hy-nav-server { margin-left:auto; display:flex; align-items:center; gap:.6rem; padding:.8rem 1rem; border:1px solid rgba(255,255,255,.07); border-radius:14px; color:#ecf1ff; background:rgba(255,255,255,.03); font-weight:850; cursor:pointer; transition:all .18s ease; }
.hy-nav-server:hover { background:rgba(255,255,255,.06); transform:translateY(-1px); }
.hy-nav-server-dot { width:8px; height:8px; border-radius:50%; background:#48e28b; box-shadow:0 0 0 4px rgba(72,226,139,.11); }
.hy-nav-server-dot.offline { background:#ff6677; box-shadow:0 0 0 4px rgba(255,102,119,.11); }
.hy-mobile-menu { display:none!important; color:#eef4ff!important; font-weight:800!important; padding:.85rem 1rem!important; border-radius:14px!important; border:1px solid rgba(255,255,255,.07)!important; background:rgba(255,255,255,.04)!important; }
.hy-mobile-menu:hover { background:rgba(255,255,255,.08)!important; }
.hy-mobile-brand { display:flex!important; align-items:center; gap:.65rem; }
.hy-mobile-brand img { width:32px; height:44px; object-fit:contain; }
body.hyflip-theme #toc { background:#0a1220!important; }
body.hyflip-theme #toc .item,
body.hyflip-theme #toc a.item,
body.hyflip-theme #toc .header,
body.hyflip-theme #toc .menu .item,
body.hyflip-theme #toc i.icon,
body.hyflip-theme #toc .icon { color:#eef4ff!important; }
body.hyflip-theme #toc .item { border-left:3px solid transparent!important; }
body.hyflip-theme #toc .item.active { background:rgba(74,99,255,.18)!important; color:#fff!important; border-left:3px solid var(--hy-accent)!important; }
body.hyflip-theme #toc .item:hover,
body.hyflip-theme #toc .menu .item:hover { background:rgba(255,255,255,.06)!important; color:#fff!important; }
body.hyflip-theme #toc .menu .item { padding-left:1.15rem!important; }
body.hyflip-theme #toc .menu .header { color:#fff!important; font-weight:800!important; }
.hy-mobile-account-heading { margin-top:.7rem!important; padding-top:.7rem!important; border-top:1px solid rgba(255,255,255,.08)!important; }
/* ModernX style homepage banner */
.hy-modern-hero {
    width:100vw; margin-left:calc(50% - 50vw); position:relative; overflow:hidden;
    min-height:650px; border-bottom:5px solid var(--hy-accent); color:#fff;
    background-image:var(--hy-hero-bg),linear-gradient(135deg,#111b36,#3c276b);
    background-size:cover; background-position:center;
}
.hy-modern-hero-shade { position:absolute; inset:0; background:linear-gradient(180deg,rgba(5,10,20,var(--hy-overlay,.72)),rgba(5,10,20,.7) 58%,#08111f 100%); }
.hy-modern-hero::after { content:""; position:absolute; inset:0; pointer-events:none; background:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px); background-size:44px 44px; opacity:.45; }
.hy-modern-hero-grid { width:min(1120px,calc(100% - 32px)); min-height:410px; margin:0 auto; display:grid; grid-template-columns:1fr 280px 1fr; align-items:center; gap:2rem; position:relative; z-index:2; }
.hy-modern-logo-wrap { display:flex; flex-direction:column; align-items:center; justify-content:center; filter:drop-shadow(0 24px 35px rgba(0,0,0,.42)); }
.hy-modern-logo { width:min(230px,70vw); max-height:310px; object-fit:contain; animation:hy-logo-float 4.8s ease-in-out infinite; }
.hy-modern-logo-wrap>span { margin-top:-.4rem; color:#fff; font-size:1.1rem; font-weight:950; letter-spacing:.35em; text-indent:.35em; text-shadow:0 3px 0 rgba(0,0,0,.3); }
.hy-modern-stat { width:100%; max-width:330px; display:flex; align-items:center; gap:1rem; color:#fff!important; background:transparent; border:0; text-align:left; cursor:pointer; padding:1rem; border-radius:12px; transition:background .2s,transform .2s; }
.hy-modern-stat:hover { background:rgba(255,255,255,.07); transform:translateY(-2px); }
.hy-modern-server { justify-self:end; flex-direction:row-reverse; text-align:right; }
.hy-modern-discord { justify-self:start; }
.hy-modern-stat-icon { flex:0 0 64px; width:64px; height:64px; display:grid; place-items:center; border-radius:10px; color:#fff; font-size:1.7rem; background:linear-gradient(135deg,var(--hy-accent),var(--hy-accent-2)); box-shadow:0 7px 0 rgba(0,0,0,.24); }
.hy-modern-stat-copy { min-width:0; display:flex; flex-direction:column; }
.hy-modern-stat-copy strong { color:#fff; font-size:1.18rem; line-height:1.2; overflow:hidden; text-overflow:ellipsis; }
.hy-modern-stat-copy small { margin-top:.3rem; color:#c7d2e5; font-size:.92rem; }
.hy-modern-stat-copy small b { color:#fff; }
.hy-modern-hero-bottom { width:min(940px,calc(100% - 32px)); margin:0 auto; padding:1.5rem 1rem 4.5rem; text-align:center; position:relative; z-index:2; }
.hy-kicker { display:inline-flex; align-items:center; gap:.55rem; color:var(--hy-warm); font-size:.75rem; font-weight:950; letter-spacing:.17em; text-transform:uppercase; }
.hy-kicker::before { content:""; width:20px; height:6px; background:currentColor; box-shadow:3px 3px 0 rgba(0,0,0,.22); }
.hy-modern-hero-bottom h1 { margin:.8rem 0 .75rem; color:#fff; font-size:clamp(2.2rem,4vw,3.8rem); line-height:1.05; font-weight:950; text-shadow:0 5px 0 rgba(0,0,0,.2); }
.hy-modern-hero-bottom h1 span { color:var(--hy-warm); }
.hy-modern-hero-bottom p { max-width:700px; margin:0 auto 1.5rem; color:#c7d3e6; font-size:1.08rem; line-height:1.65; }
.hy-hero-actions { display:flex; justify-content:center; flex-wrap:wrap; gap:.75rem; }
@keyframes hy-logo-float { 0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)} }

/* Buttons */
body.hyflip-theme .hy-button { border-radius:7px!important; border:0!important; font-weight:900!important; box-shadow:0 5px 0 rgba(0,0,0,.25)!important; transition:transform .18s,filter .18s!important; }
body.hyflip-theme .hy-button:hover { transform:translateY(-2px); filter:brightness(1.08); }
body.hyflip-theme .hy-button-primary,body.hyflip-theme .ui.primary.button { color:#fff!important; background:linear-gradient(135deg,var(--hy-accent),var(--hy-accent-2))!important; }
body.hyflip-theme .hy-button-ghost { color:#fff!important; background:rgba(255,255,255,.09)!important; outline:1px solid rgba(255,255,255,.13)!important; }
body.hyflip-theme .hy-button-warm { color:#201800!important; background:var(--hy-warm)!important; }

/* Inner page banner */
.hy-inner-hero { position:relative; overflow:hidden; min-height:250px; color:#fff; border-bottom:4px solid var(--hy-accent); background-image:var(--hy-inner-bg),linear-gradient(135deg,#10224a,#48246f); background-size:cover; background-position:center; }
.hy-inner-hero::before { content:""; position:absolute; inset:0; background:linear-gradient(90deg,rgba(5,10,20,var(--hy-overlay,.74)),rgba(5,10,20,.45),rgba(5,10,20,.78)); }
.hy-inner-hero-grid { min-height:250px; display:grid!important; grid-template-columns:1fr 130px 1fr; align-items:center; gap:2rem; position:relative; z-index:1; }
.hy-inner-title span { color:var(--hy-warm); font-size:.72rem; font-weight:900; letter-spacing:.15em; text-transform:uppercase; }
.hy-inner-title h1 { margin:.45rem 0 0; color:#fff; font-size:clamp(2.3rem,5vw,4rem); font-weight:950; text-shadow:0 5px 0 rgba(0,0,0,.22); }
.hy-inner-logo img { width:115px; max-height:175px; object-fit:contain; filter:drop-shadow(0 14px 18px rgba(0,0,0,.35)); }
.hy-inner-status { justify-self:end; display:flex; align-items:center; gap:.85rem; min-width:275px; padding:.9rem 1rem; color:#fff; text-align:left; border:1px solid rgba(255,255,255,.13); border-radius:10px; background:rgba(7,13,24,.65); cursor:pointer; }
.hy-status-icon { width:48px; height:48px; display:grid; place-items:center; border-radius:8px; background:linear-gradient(135deg,var(--hy-accent),var(--hy-accent-2)); font-size:1.2rem; }
.hy-status-copy { display:flex; flex-direction:column; }
.hy-status-copy strong { color:#fff; }
.hy-status-copy small { margin-top:.2rem; color:#c8d4e6; }

/* Sections */
.hy-section { padding:5rem 0 1rem; }
.hy-section-heading { max-width:760px; margin:0 auto 2.4rem; text-align:center; }
.hy-section-heading-left { margin-left:0; text-align:left; }
.hy-section-heading h2,.hy-feature-panel h2,.hy-store-header h1 { color:#fff; font-size:clamp(2rem,4vw,3.25rem); line-height:1.08; font-weight:950; margin:.7rem 0; }
.hy-section-heading p,.hy-feature-panel p { color:var(--hy-muted); font-size:1.05rem; line-height:1.65; }
.hy-game-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1.25rem; }
.hy-game-card { min-height:390px; display:flex; flex-direction:column; overflow:hidden; position:relative; border:1px solid var(--hy-border); border-radius:10px; background:var(--hy-surface); box-shadow:0 7px 0 rgba(0,0,0,.22),var(--hy-shadow); opacity:0; transform:translateY(16px); transition:transform .3s,opacity .3s,border-color .2s; }
.hy-game-card.hy-visible { opacity:1; transform:none; }
.hy-game-card:hover { transform:translateY(-6px); border-color:var(--game-accent); }
.hy-game-card::after { content:""; position:absolute; left:0; right:0; bottom:0; height:5px; background:var(--game-accent); }
.hy-game-image { min-height:165px; display:grid; place-items:center; position:relative; overflow:hidden; color:#fff; font-size:3.7rem; background:linear-gradient(135deg,rgba(0,0,0,.12),rgba(0,0,0,.66)),var(--game-image,none),linear-gradient(135deg,var(--game-accent),#0d1628); background-size:cover; background-position:center; }
.hy-game-image::before { content:""; position:absolute; inset:0; background:linear-gradient(rgba(255,255,255,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.07) 1px,transparent 1px); background-size:25px 25px; }
.hy-game-image>i { z-index:1; text-shadow:6px 7px 0 rgba(0,0,0,.25); }
.hy-game-badge { position:absolute; top:1rem; left:1rem; z-index:2; color:#101724; background:#fff; padding:.4rem .65rem; border-radius:5px; font-size:.68rem; font-weight:950; letter-spacing:.08em; text-transform:uppercase; box-shadow:3px 3px 0 rgba(0,0,0,.23); }
.hy-game-body { flex:1; display:flex; flex-direction:column; padding:1.3rem; }
.hy-game-body h3 { color:#fff; font-size:1.38rem; font-weight:950; margin:0 0 .55rem; }
.hy-game-body p { flex:1; color:var(--hy-muted); line-height:1.55; }
.hy-text-link { display:inline-flex; align-items:center; gap:.5rem; margin-top:.7rem; color:var(--game-accent)!important; font-weight:900; }
.hy-split-sections { padding:4.5rem 0 1rem; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.25rem; }
.hy-feature-panel { min-height:350px; display:flex; align-items:flex-end; position:relative; overflow:hidden; padding:2rem; border:1px solid var(--hy-border); border-radius:10px; background:linear-gradient(180deg,rgba(8,17,31,.12),rgba(8,17,31,.98)),var(--panel-image,none),linear-gradient(135deg,var(--hy-surface-alt),var(--hy-surface)); background-size:cover; background-position:center; box-shadow:0 7px 0 rgba(0,0,0,.22),var(--hy-shadow); opacity:0; transform:translateY(16px); transition:.3s; }
.hy-feature-panel.hy-visible { opacity:1; transform:none; }
.hy-feature-panel>div:last-child { position:relative; z-index:2; }
.hy-feature-icon { position:absolute; top:1.4rem; right:1.4rem; width:66px; height:66px; display:grid; place-items:center; border-radius:9px; color:#fff; background:linear-gradient(135deg,var(--hy-accent),var(--hy-accent-2)); box-shadow:5px 6px 0 rgba(0,0,0,.22); font-size:1.7rem; }
.hy-store-panel .hy-feature-icon { color:#211800; background:var(--hy-warm); }

/* NamelessMC components */
body.hyflip-theme .ui.segment,body.hyflip-theme .ui.card,body.hyflip-theme .ui.message,body.hyflip-theme .ui.table,body.hyflip-theme .ui.modal>.content,body.hyflip-theme .ui.popup { color:var(--hy-text); background:var(--hy-surface)!important; border:1px solid var(--hy-border)!important; box-shadow:0 5px 0 rgba(0,0,0,.16)!important; }
body.hyflip-theme .ui.header,body.hyflip-theme .ui.card>.content>.header,body.hyflip-theme .ui.table thead th,body.hyflip-theme .ui.modal>.header { color:#fff!important; }
body.hyflip-theme .ui.card .meta,body.hyflip-theme .ui.card .description,body.hyflip-theme .ui.table td,body.hyflip-theme .ui.list>.item>.content>.description { color:var(--hy-muted)!important; }
body.hyflip-theme .ui.table tr td,body.hyflip-theme .ui.table tr th { border-color:var(--hy-border)!important; }
body.hyflip-theme .ui.form input,body.hyflip-theme .ui.form textarea,body.hyflip-theme .ui.form select,body.hyflip-theme .ui.input input { color:#fff!important; background:#091426!important; border:1px solid rgba(255,255,255,.12)!important; }
body.hyflip-theme .ui.menu:not(#navbar):not(#toc) { background:var(--hy-surface)!important; border-color:var(--hy-border)!important; }
body.hyflip-theme .ui.menu:not(#navbar):not(#toc) .item { color:var(--hy-muted)!important; }
body.hyflip-theme .ui.menu:not(#navbar):not(#toc) .active.item { color:#fff!important; background:rgba(47,128,255,.15)!important; }
body.hyflip-theme .forum_post { color:#dbe5f4; }
body.hyflip-theme .ui.breadcrumb,body.hyflip-theme .ui.breadcrumb .section,body.hyflip-theme .ui.breadcrumb .divider { color:var(--hy-muted)!important; }
body.hyflip-theme #forum-header,body.hyflip-theme #forum-node { border-color:var(--hy-border)!important; }
.hy-news-card { opacity:0; transform:translateY(12px); transition:.3s; }
.hy-news-card.hy-visible { opacity:1; transform:none; }
.hy-custom-content { padding:1.5rem; color:#dbe5f4; background:var(--hy-surface); border:1px solid var(--hy-border); border-radius:10px; }

/* Store */
.hy-store-header { position:relative; overflow:hidden; margin-bottom:2rem; padding:clamp(2rem,5vw,4rem); border:1px solid var(--hy-border); border-radius:11px; background:linear-gradient(90deg,rgba(8,17,31,.97),rgba(8,17,31,.48)),var(--store-banner,none),linear-gradient(135deg,var(--hy-accent),var(--hy-accent-2)); background-size:cover; background-position:center; box-shadow:0 7px 0 rgba(0,0,0,.2),var(--hy-shadow); }
.hy-store-header::after { content:""; position:absolute; inset:0; background:linear-gradient(rgba(255,255,255,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.055) 1px,transparent 1px); background-size:30px 30px; }
.hy-store-header>* { position:relative; z-index:1; }
.hy-store-header p { max-width:700px; color:#cbd7e8; font-size:1.05rem; line-height:1.6; }
.hy-product-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1.25rem; align-items:stretch; }
.hy-product-card { min-height:430px; display:flex; flex-direction:column; position:relative; overflow:hidden; color:#fff; border:1px solid var(--hy-border); border-radius:10px; background:var(--hy-surface); box-shadow:0 7px 0 rgba(0,0,0,.2),var(--hy-shadow); }
.hy-product-image { height:185px; display:grid; place-items:center; color:#fff; font-size:3.8rem; background:linear-gradient(135deg,rgba(47,128,255,.76),rgba(123,77,255,.78)),var(--product-image,none); background-size:cover; background-position:center; }
.hy-product-content { flex:1; display:flex; flex-direction:column; padding:1.3rem; }
.hy-product-title { color:#fff; font-size:1.4rem; font-weight:950; }
.hy-product-description { flex:1; color:var(--hy-muted); line-height:1.55; }
.hy-product-duration { display:inline-flex; align-items:center; gap:.45rem; width:max-content; max-width:100%; margin:.8rem 0 0; padding:.42rem .7rem; border:1px solid rgba(255,255,255,.1); border-radius:999px; background:rgba(255,255,255,.055); color:#d8e2f5; font-size:.82rem; font-weight:750; }
.hy-product-price { margin:1rem 0; color:var(--hy-warm); font-size:1.9rem; font-weight:950; }
.hy-product-badge { position:absolute; top:1rem; right:1rem; z-index:2; padding:.4rem .65rem; color:#1e1701; background:var(--hy-warm); border-radius:5px; box-shadow:3px 3px 0 rgba(0,0,0,.22); font-size:.68rem; font-weight:950; text-transform:uppercase; }
.hy-store-empty { padding:4rem 1rem; text-align:center; color:var(--hy-muted); background:var(--hy-surface); border:1px dashed rgba(255,255,255,.18); border-radius:10px; }
.hy-store-empty i { display:block; margin-bottom:1rem; color:var(--hy-warm); font-size:3rem; }

/* Footer */
body.hyflip-theme #footer { flex-shrink:0; margin:4rem 0 0; padding:3.5rem 0; border-top:4px solid var(--hy-accent); background:#060c16!important; }
body.hyflip-theme #footer .hy-footer-brand { color:#fff!important; font-size:1.25rem; font-weight:950; }
body.hyflip-theme #footer .hy-footer-copy { max-width:380px; color:var(--hy-muted); line-height:1.6; }

/* Responsive */
@media(max-width:1050px){
    .hy-mainnav-links>.item,.hy-mainnav-links>.ui.dropdown.item{padding:0 .95rem!important;font-size:.92rem;min-height:42px}
    .hy-modern-hero-grid{grid-template-columns:1fr 220px 1fr}
    .hy-game-grid,.hy-product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:767px){
    .hy-topbar{display:none!important}
    .hy-topbar-tagline,.hy-user-actions,.hy-nav-server{display:none!important}
    .hy-topbar-inner{justify-content:center}
    .hy-topbar-brand img{width:28px;height:38px}
    .hy-mainnav-inner{justify-content:space-between!important}
    .hy-mobile-navbar-brand{display:inline-flex!important}
    .hy-mainnav-links{display:none}
    .hy-mobile-menu{display:flex!important;align-items:center;gap:.4rem;margin-left:auto!important;margin-right:0!important}
    .hy-modern-hero{min-height:720px}
    .hy-modern-hero-grid{min-height:410px;grid-template-columns:1fr 150px 1fr;gap:.25rem}
    .hy-modern-logo{width:145px;max-height:220px}
    .hy-modern-logo-wrap>span{font-size:.78rem}
    .hy-modern-stat{padding:.6rem;flex-direction:column!important;text-align:center!important;justify-self:center}
    .hy-modern-stat-icon{width:52px;height:52px;flex-basis:52px;font-size:1.3rem}
    .hy-modern-stat-copy strong{font-size:.82rem}
    .hy-modern-stat-copy small{font-size:.72rem}
    .hy-inner-hero-grid{grid-template-columns:1fr 78px;min-height:210px}
    .hy-inner-logo img{width:70px;max-height:115px}
    .hy-inner-status{display:none}
    .hy-game-grid,.hy-product-grid,.hy-split-sections{grid-template-columns:1fr}
    .hy-section{padding-top:4rem}
    body.hyflip-theme .ui.container{width:min(100% - 24px,1120px)!important}
    .hy-mainnav-inner{min-height:74px}
    body.hyflip-theme #navbar.ui.menu{min-height:74px}
}

@media(max-width:500px){
    .hy-mobile-navbar-brand span{display:none}
    .hy-modern-hero-grid{grid-template-columns:1fr 120px 1fr}
    .hy-modern-logo{width:112px}
    .hy-modern-stat-icon{width:45px;height:45px;flex-basis:45px}
    .hy-modern-stat-copy strong{font-size:.72rem}
    .hy-modern-stat-copy small{font-size:.65rem}
    .hy-modern-hero-bottom h1{font-size:2.25rem}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important;animation-iteration-count:1!important}}
.hy-footer-lockup{display:flex;align-items:center;gap:.75rem;margin-bottom:.6rem}.hy-footer-lockup img{width:38px;height:54px;object-fit:contain}.hy-footer-lockup .hy-footer-brand{margin:0!important}
.hy-modern-character{position:absolute;right:max(1rem,calc((100vw - 1120px)/2 - 90px));bottom:0;z-index:1;max-height:520px;max-width:38vw;object-fit:contain;filter:drop-shadow(0 25px 28px rgba(0,0,0,.42));pointer-events:none}.hy-modern-character~.hy-modern-hero-bottom{position:relative;z-index:3}@media(max-width:1050px){.hy-modern-character{opacity:.28;right:-5%;max-width:55vw}}@media(max-width:767px){.hy-modern-character{display:none}}

/* ========================================================================== */
/* Hyflip Play 2.2 — homepage carousel, forum feed and social dashboard        */
/* ========================================================================== */
body.hyflip-theme#page-index .hyflip-page-container {
    padding-bottom: 0;
}

.hy-home-games {
    margin: 2.2rem 0 0;
    padding: 1.5rem 0 1.85rem;
    border-bottom: 1px solid var(--hy-border);
}

.hy-home-section-heading {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 1.5rem;
    margin-bottom: 1rem;
}

.hy-home-section-heading h2 {
    margin: .45rem 0 .25rem;
    color: #fff;
    font-size: clamp(1.7rem, 3vw, 2.45rem);
    line-height: 1.1;
    font-weight: 950;
}

.hy-home-section-heading p {
    margin: 0;
    color: var(--hy-muted);
    font-size: .98rem;
}

.hy-carousel-controls {
    display: flex;
    gap: .55rem;
    flex: 0 0 auto;
}

.hy-carousel-arrow {
    width: 46px;
    height: 46px;
    display: grid;
    place-items: center;
    border: 1px solid rgba(255,255,255,.10);
    border-radius: 50%;
    color: #fff;
    background: #141d2b;
    box-shadow: 0 4px 0 rgba(0,0,0,.22);
    cursor: pointer;
    transition: transform .18s ease, background .18s ease, opacity .18s ease;
}

.hy-carousel-arrow:hover:not(:disabled) {
    transform: translateY(-2px);
    background: var(--hy-accent);
}

.hy-carousel-arrow:disabled {
    opacity: .35;
    cursor: default;
}

.hy-games-carousel-shell {
    position: relative;
    overflow: hidden;
}

.hy-games-carousel {
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: minmax(285px, 1fr);
    gap: 1rem;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    scroll-snap-type: inline mandatory;
    scroll-behavior: smooth;
    scrollbar-width: none;
    padding: .4rem .15rem .75rem;
}

.hy-games-carousel::-webkit-scrollbar {
    display: none;
}

.hy-carousel-game {
    min-height: 150px;
    display: grid;
    grid-template-columns: 76px minmax(0, 1fr);
    align-items: center;
    gap: 1rem;
    position: relative;
    overflow: hidden;
    padding: 1.25rem 1.35rem;
    color: #fff !important;
    border: 1px solid color-mix(in srgb, var(--game-accent) 72%, white 8%);
    border-radius: 22px;
    background:
        linear-gradient(110deg, color-mix(in srgb, var(--game-accent) 48%, #111 52%), rgba(18,23,30,.94)),
        var(--game-image, none);
    background-size: cover;
    background-position: center;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.08), 0 12px 28px rgba(0,0,0,.22);
    scroll-snap-align: start;
    transition: transform .2s ease, filter .2s ease, box-shadow .2s ease;
}

.hy-carousel-game::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(rgba(255,255,255,.035) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.035) 1px, transparent 1px);
    background-size: 25px 25px;
    pointer-events: none;
}

.hy-carousel-game:hover {
    transform: translateY(-4px);
    filter: brightness(1.06);
    box-shadow: inset 0 1px 0 rgba(255,255,255,.10), 0 18px 34px rgba(0,0,0,.30);
}

.hy-carousel-game-bg {
    position: absolute;
    inset: 0;
    background: radial-gradient(circle at 20% 10%, rgba(255,255,255,.14), transparent 46%);
    pointer-events: none;
}

.hy-carousel-game-icon {
    width: 68px;
    height: 68px;
    display: grid;
    place-items: center;
    position: relative;
    z-index: 1;
    border-radius: 17px;
    color: #fff;
    background: rgba(0,0,0,.18);
    border: 1px solid rgba(255,255,255,.11);
    font-size: 2.25rem;
    text-shadow: 4px 5px 0 rgba(0,0,0,.22);
}

.hy-carousel-game-copy {
    min-width: 0;
    display: flex;
    flex-direction: column;
    position: relative;
    z-index: 1;
}

.hy-carousel-game-copy small {
    margin-bottom: .28rem;
    color: rgba(255,255,255,.70);
    font-size: .68rem;
    font-style: normal;
    font-weight: 900;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.hy-carousel-game-copy strong {
    color: #fff;
    font-size: 1.45rem;
    line-height: 1.1;
    font-weight: 950;
    text-transform: uppercase;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.hy-carousel-game-copy em {
    margin-top: .42rem;
    color: rgba(255,255,255,.75);
    font-size: .82rem;
    font-style: normal;
    line-height: 1.35;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.hy-carousel-online {
    position: absolute;
    right: .9rem;
    bottom: .75rem;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    gap: .4rem;
    padding: .32rem .65rem;
    border-radius: 999px;
    color: #fff;
    background: rgba(0,0,0,.54);
    font-size: .76rem;
    font-weight: 900;
}

.hy-carousel-online i {
    width: 9px;
    height: 9px;
    border-radius: 50%;
    background: #28ef86;
    box-shadow: 0 0 0 4px rgba(40,239,134,.13), 0 0 12px #28ef86;
}

.hy-home-hub {
    display: grid;
    grid-template-columns: minmax(0, 2fr) minmax(280px, .9fr);
    gap: 1.35rem;
    margin-top: 1.65rem;
    align-items: start;
}

.hy-home-feed-card,
.hy-sidebar-card {
    overflow: hidden;
    border: 1px solid var(--hy-border);
    border-radius: 20px;
    background: rgba(19,28,39,.96);
    box-shadow: 0 18px 44px rgba(0,0,0,.23);
}

.hy-panel-heading {
    min-height: 132px;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 1.25rem;
    padding: 1.4rem 1.6rem;
    border-bottom: 1px solid var(--hy-border);
    background: linear-gradient(135deg, rgba(47,128,255,.16), rgba(123,77,255,.08));
}

.hy-panel-heading h2 {
    margin: .35rem 0 .2rem;
    color: #fff;
    font-size: 1.85rem;
    font-weight: 950;
}

.hy-panel-heading p {
    margin: 0;
    color: var(--hy-muted);
    line-height: 1.45;
}

.hy-panel-link {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    gap: .5rem;
    color: #fff !important;
    padding: .7rem .9rem;
    border-radius: 9px;
    background: rgba(255,255,255,.07);
    border: 1px solid rgba(255,255,255,.08);
    font-weight: 900;
}

.hy-latest-posts {
    padding: .35rem 1.15rem .7rem;
}

.hy-latest-post {
    display: grid;
    grid-template-columns: 52px minmax(0, 1fr) 38px;
    align-items: center;
    gap: .9rem;
    min-height: 106px;
    padding: .9rem .2rem;
    border-bottom: 1px solid rgba(255,255,255,.07);
}

.hy-latest-post:last-child {
    border-bottom: 0;
}

.hy-latest-avatar img {
    width: 52px;
    height: 52px;
    border-radius: 12px;
    object-fit: cover;
    image-rendering: pixelated;
    box-shadow: 0 5px 0 rgba(0,0,0,.22);
}

.hy-latest-copy {
    min-width: 0;
}

.hy-latest-meta {
    display: flex;
    align-items: center;
    gap: .48rem;
    margin-bottom: .32rem;
    color: #8797ad;
    font-size: .73rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .05em;
}

.hy-latest-meta span {
    width: 4px;
    height: 4px;
    border-radius: 50%;
    background: var(--hy-warm);
}

.hy-latest-copy h3 {
    margin: 0;
    font-size: 1.05rem;
    line-height: 1.3;
    font-weight: 900;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.hy-latest-copy h3 a {
    color: #fff !important;
}

.hy-latest-author {
    margin-top: .34rem;
    color: var(--hy-muted);
    font-size: .8rem;
}

.hy-latest-author i {
    margin-left: .45rem;
    color: var(--hy-warm);
}

.hy-latest-open {
    width: 34px;
    height: 34px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    color: #fff !important;
    background: rgba(255,255,255,.06);
}

.hy-latest-open:hover {
    background: var(--hy-accent);
}

.hy-feed-empty {
    min-height: 250px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: .7rem;
    color: var(--hy-muted);
    text-align: center;
}

.hy-feed-empty i {
    color: var(--hy-warm);
    font-size: 2.2rem;
}

.hy-feed-empty a {
    font-weight: 900;
}

.hy-home-sidebar {
    display: grid;
    gap: 1.35rem;
}

.hy-sidebar-card h2 {
    margin: 0;
    padding: 1.05rem 1.25rem;
    color: #fff;
    border-bottom: 1px solid var(--hy-border);
    background: rgba(255,255,255,.045);
    text-align: center;
    font-size: 1.25rem;
    font-weight: 950;
}

.hy-server-card-body {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 1.25rem 1.2rem 1.35rem;
    color: #fff;
    text-align: center;
}

.hy-server-card-body > span {
    color: #dbe4f1;
    font-size: 1.05rem;
    font-weight: 800;
}

.hy-server-card-body > strong {
    margin-top: .15rem;
    color: #fff;
    font-size: 1.5rem;
    line-height: 1.25;
}

.hy-server-card-body > strong.is-offline {
    max-width: 260px;
    color: #ff8995;
    font-size: .95rem;
}

.hy-server-pill {
    max-width: 100%;
    margin-top: .95rem;
    padding: .62rem 1rem;
    border: 0;
    border-radius: 999px;
    color: #111722;
    background: #fff;
    font-size: 1.05rem;
    font-weight: 950;
    cursor: pointer;
    box-shadow: 0 5px 0 rgba(0,0,0,.20);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.hy-social-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: .8rem;
    padding: 1.15rem;
}

.hy-social-button {
    min-width: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: .45rem;
    color: #fff !important;
    text-align: center;
    font-size: .7rem;
    font-weight: 800;
}

.hy-social-button i {
    width: 58px;
    height: 58px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    color: #fff;
    background: var(--social-colour);
    font-size: 1.7rem;
    box-shadow: 0 7px 0 rgba(0,0,0,.22);
    transition: transform .18s ease, filter .18s ease;
}

.hy-social-button:hover i {
    transform: translateY(-3px) scale(1.03);
    filter: brightness(1.08);
}

.hy-home-badges {
    padding-top: 1.35rem;
}

.hy-home-badges .hy-feature-panel {
    min-height: 315px;
}

@supports not (color: color-mix(in srgb, red 50%, blue)) {
    .hy-carousel-game {
        border-color: rgba(255,255,255,.18);
        background: linear-gradient(110deg, var(--game-accent), rgba(18,23,30,.94)), var(--game-image, none);
    }
}

@media (min-width: 1180px) {
    .hy-games-carousel {
        grid-auto-columns: calc((100% - 2rem) / 3);
    }
}

@media (max-width: 900px) {
    .hy-home-hub {
        grid-template-columns: 1fr;
    }
    .hy-home-sidebar {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 640px) {
    .hy-home-section-heading,
    .hy-panel-heading {
        align-items: flex-start;
        flex-direction: column;
    }
    .hy-carousel-controls {
        align-self: flex-end;
    }
    .hy-games-carousel {
        grid-auto-columns: minmax(265px, 88%);
    }
    .hy-carousel-game {
        min-height: 142px;
        grid-template-columns: 60px minmax(0, 1fr);
        padding: 1rem;
        border-radius: 16px;
    }
    .hy-carousel-game-icon {
        width: 56px;
        height: 56px;
        font-size: 1.8rem;
    }
    .hy-carousel-game-copy strong {
        font-size: 1.15rem;
    }
    .hy-home-sidebar {
        grid-template-columns: 1fr;
    }
    .hy-social-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
    .hy-social-button span {
        display: none;
    }
    .hy-latest-post {
        grid-template-columns: 44px minmax(0, 1fr) 32px;
        gap: .7rem;
    }
    .hy-latest-avatar img {
        width: 44px;
        height: 44px;
    }
}

/* ========================================================================== */
/* Hyflip Play 2.4 — Odyssey-style navigation + dedicated games page          */
/* ========================================================================== */
.hy-site-header {
    position: relative;
    z-index: 220;
    padding: 12px 0;
    background: #080d18;
    border-bottom: 1px solid rgba(255,255,255,.05);
}
.hy-site-nav {
    min-height: 72px;
    display: grid!important;
    grid-template-columns: minmax(190px,auto) 1fr minmax(240px,auto);
    align-items: center;
    gap: 1.35rem;
    padding: 10px 16px!important;
    border: 1px solid rgba(124,145,196,.18);
    border-radius: 20px;
    background: rgba(7,12,24,.92);
    box-shadow: 0 18px 45px rgba(0,0,0,.22);
    backdrop-filter: blur(14px);
}
.hy-site-brand {
    display: inline-flex;
    align-items: center;
    gap: .8rem;
    min-width: 0;
    color: #fff!important;
}
.hy-site-brand img {
    width: 34px;
    height: 46px;
    flex: 0 0 auto;
    object-fit: contain;
}
.hy-site-brand-copy {
    min-width: 0;
    display: flex;
    flex-direction: column;
    line-height: 1.05;
}
.hy-site-brand-copy strong {
    color: #fff;
    font-size: 1.1rem;
    font-weight: 950;
    letter-spacing: .055em;
    white-space: nowrap;
}
.hy-site-brand-copy small {
    margin-top: .32rem;
    color: #7f92b5;
    font-size: .66rem;
    font-weight: 750;
    letter-spacing: .08em;
    text-transform: uppercase;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 190px;
}
.hy-desktop-nav {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: .25rem;
    min-width: 0;
}
.hy-desktop-nav .hy-nav-item,
.hy-desktop-nav .ui.dropdown.hy-nav-item {
    min-height: 44px;
    display: inline-flex!important;
    align-items: center;
    justify-content: center;
    gap: .25rem;
    padding: 0 1rem!important;
    margin: 0!important;
    border: 1px solid transparent!important;
    border-radius: 12px!important;
    background: transparent!important;
    box-shadow: none!important;
    color: #aebad1!important;
    font-size: .98rem;
    font-weight: 850!important;
    white-space: nowrap;
    transition: color .16s ease, background .16s ease, border-color .16s ease, transform .16s ease;
}
.hy-desktop-nav .hy-nav-item::before,
.hy-desktop-nav .hy-nav-item::after,
.hy-desktop-nav .ui.dropdown.hy-nav-item::before,
.hy-desktop-nav .ui.dropdown.hy-nav-item::after {
    display: none!important;
}
.hy-desktop-nav .hy-nav-item:hover,
.hy-desktop-nav .ui.dropdown.hy-nav-item:hover {
    color: #fff!important;
    background: rgba(255,255,255,.055)!important;
    border-color: rgba(255,255,255,.07)!important;
    transform: translateY(-1px);
}
.hy-desktop-nav .hy-nav-item.active,
.hy-desktop-nav .ui.dropdown.hy-nav-item.active {
    color: #fff!important;
    background: linear-gradient(135deg, color-mix(in srgb, var(--hy-accent) 24%, transparent), color-mix(in srgb, var(--hy-accent-2) 18%, transparent))!important;
    border-color: color-mix(in srgb, var(--hy-accent) 66%, transparent)!important;
    box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--hy-accent) 12%, transparent)!important;
}
.hy-desktop-nav .ui.dropdown .menu {
    min-width: 210px!important;
    margin-top: 10px!important;
    padding: .55rem!important;
    border: 1px solid rgba(255,255,255,.08)!important;
    border-radius: 14px!important;
    background: #0d1729!important;
    box-shadow: 0 22px 48px rgba(0,0,0,.38)!important;
}
.hy-desktop-nav .ui.dropdown .menu .item {
    display: flex!important;
    align-items: center;
    gap: .55rem;
    padding: .75rem .8rem!important;
    border-radius: 9px!important;
    color: #e8eef9!important;
}
.hy-desktop-nav .ui.dropdown .menu .item:hover {
    color: #fff!important;
    background: rgba(255,255,255,.07)!important;
}
.hy-header-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: .55rem;
    min-width: 0;
}
.hy-header-server,
.hy-icon-action,
.hy-account-button,
.hy-header-link,
.hy-header-cta,
.hy-mobile-toggle {
    min-height: 44px;
    display: inline-flex!important;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(255,255,255,.075)!important;
    border-radius: 12px!important;
    background: rgba(255,255,255,.045)!important;
    color: #eef4ff!important;
    box-shadow: none!important;
    transition: background .16s ease, border-color .16s ease, transform .16s ease;
}
.hy-header-server {
    gap: .55rem;
    padding: 0 .8rem;
    cursor: pointer;
    font-weight: 850;
    font-size: .78rem;
    max-width: 145px;
}
.hy-header-server span:last-child {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.hy-icon-action {
    width: 44px;
    padding: 0!important;
    cursor: pointer;
}
.hy-icon-action.is-primary {
    border-color: transparent!important;
    background: linear-gradient(135deg,var(--hy-accent),var(--hy-accent-2))!important;
}
.hy-account-button {
    gap: .55rem;
    max-width: 170px;
    padding: 0 .75rem!important;
    cursor: pointer;
    font-weight: 850;
}
.hy-account-button img {
    width: 27px!important;
    height: 27px!important;
    border-radius: 8px!important;
    object-fit: cover;
}
.hy-account-button span {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.hy-header-link,
.hy-header-cta {
    padding: 0 .95rem!important;
    font-weight: 850;
}
.hy-header-cta {
    border-color: transparent!important;
    background: linear-gradient(135deg,var(--hy-accent),var(--hy-accent-2))!important;
}
.hy-header-server:hover,
.hy-icon-action:hover,
.hy-account-button:hover,
.hy-header-link:hover,
.hy-header-cta:hover,
.hy-mobile-toggle:hover {
    color: #fff!important;
    background: rgba(255,255,255,.09)!important;
    border-color: rgba(255,255,255,.12)!important;
    transform: translateY(-1px);
}
.hy-header-cta:hover,
.hy-icon-action.is-primary:hover {
    background: linear-gradient(135deg,var(--hy-accent),var(--hy-accent-2))!important;
    filter: brightness(1.08);
}
.hy-desktop-user-actions {
    display: flex;
    align-items: center;
    gap: .45rem;
}
.hy-mobile-toggle {
    display: none!important;
    width: 48px;
    padding: 0!important;
    font-size: 1.2rem;
    cursor: pointer;
}
.hy-mobile-toggle i { margin: 0!important; }

.hy-user-popup.ui.popup,
.hy-user-popup.ui.popup.basic {
    z-index: 9999!important;
    min-width: 255px!important;
    padding: 1rem!important;
    border: 1px solid rgba(255,255,255,.09)!important;
    border-radius: 15px!important;
    background: #0d1729!important;
    color: #eef4ff!important;
    box-shadow: 0 24px 54px rgba(0,0,0,.42)!important;
}
.hy-user-popup.ui.popup::before { background:#0d1729!important; }
.hy-user-popup,
.hy-user-popup * { color: #eef4ff!important; }
.hy-user-popup .ui.header { color:#fff!important; font-weight:950!important; }
.hy-user-popup .ui.list .item,
.hy-user-popup .ui.list a.item {
    padding: .72rem .78rem!important;
    border-radius: 9px!important;
    color: #e5ecf8!important;
}
.hy-user-popup .ui.list .item:hover,
.hy-user-popup .ui.list a.item:hover {
    color:#fff!important;
    background:rgba(255,255,255,.07)!important;
}
.hy-user-popup .ui.divider { border-top-color:rgba(255,255,255,.09)!important; }

body.hyflip-theme #toc {
    width: min(88vw,360px)!important;
    padding: .75rem!important;
    background: #091220!important;
    box-shadow: 20px 0 60px rgba(0,0,0,.42)!important;
}
body.hyflip-theme #toc .hy-mobile-brand {
    display: flex!important;
    align-items: center;
    gap: .8rem;
    margin-bottom: .75rem!important;
    padding: .85rem!important;
    border: 1px solid rgba(255,255,255,.07)!important;
    border-radius: 14px!important;
    background: rgba(255,255,255,.035)!important;
}
body.hyflip-theme #toc .hy-mobile-brand img {
    width: 34px;
    height: 46px;
    object-fit: contain;
}
body.hyflip-theme #toc .hy-mobile-brand span {
    min-width: 0;
    display: flex;
    flex-direction: column;
    line-height: 1.15;
}
body.hyflip-theme #toc .hy-mobile-brand strong { color:#fff!important; font-weight:950; }
body.hyflip-theme #toc .hy-mobile-brand small {
    margin-top:.25rem;
    color:#7f92b5!important;
    font-size:.64rem;
    text-transform:uppercase;
    letter-spacing:.06em;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
    max-width:235px;
}
.hy-mobile-nav-section {
    padding: .8rem .75rem .45rem;
    color: #627493;
    font-size: .68rem;
    font-weight: 900;
    letter-spacing: .11em;
    text-transform: uppercase;
}
body.hyflip-theme #toc > .item,
body.hyflip-theme #toc > a.item,
body.hyflip-theme #toc .menu > .item {
    display:flex!important;
    align-items:center;
    gap:.7rem;
    min-height:46px;
    margin:.2rem 0!important;
    padding:.75rem .85rem!important;
    border:1px solid transparent!important;
    border-radius:11px!important;
    background:transparent!important;
    color:#dbe5f5!important;
    font-weight:800!important;
}
body.hyflip-theme #toc .item span,
body.hyflip-theme #toc .item i,
body.hyflip-theme #toc .item .icon,
body.hyflip-theme #toc .header { color:inherit!important; }
body.hyflip-theme #toc > a.item:hover,
body.hyflip-theme #toc .menu > a.item:hover {
    color:#fff!important;
    border-color:rgba(255,255,255,.07)!important;
    background:rgba(255,255,255,.055)!important;
}
body.hyflip-theme #toc > a.item.active {
    color:#fff!important;
    border-color:color-mix(in srgb,var(--hy-accent) 58%,transparent)!important;
    background:color-mix(in srgb,var(--hy-accent) 18%,transparent)!important;
}
body.hyflip-theme #toc .hy-mobile-dropdown-group {
    display:block!important;
    padding:.7rem!important;
    border:1px solid rgba(255,255,255,.06)!important;
    background:rgba(255,255,255,.025)!important;
}
body.hyflip-theme #toc .hy-mobile-dropdown-group .header {
    display:flex;
    align-items:center;
    gap:.65rem;
    padding:.2rem .15rem .45rem;
    color:#fff!important;
}
body.hyflip-theme #toc .hy-mobile-dropdown-group .menu { margin:0!important; }

/* Dedicated games page */
.hy-games-page {
    padding: 1rem 0 2rem;
}
.hy-games-page-intro {
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:1.5rem;
    margin-bottom:1.4rem;
}
.hy-games-page-intro h1 {
    margin:.45rem 0 .55rem;
    color:#fff;
    font-size:clamp(2.2rem,4vw,3.7rem);
    line-height:1.02;
    font-weight:950;
}
.hy-games-page-intro p {
    max-width:760px;
    margin:0;
    color:var(--hy-muted);
    font-size:1.05rem;
    line-height:1.65;
}
.hy-games-browser {
    padding:1rem;
    border:1px solid rgba(255,255,255,.075);
    border-radius:18px;
    background:rgba(10,18,32,.72);
    box-shadow:var(--hy-shadow);
}
.hy-games-selector {
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:.75rem;
    margin-bottom:1rem;
}
.hy-game-selector {
    min-height:82px;
    display:grid;
    grid-template-columns:50px 1fr;
    align-items:center;
    gap:.75rem;
    padding:.7rem .8rem;
    border:1px solid rgba(255,255,255,.07);
    border-radius:13px;
    background:#111a29;
    color:#fff;
    cursor:pointer;
    text-align:left;
    transition:transform .16s ease,border-color .16s ease,background .16s ease;
}
.hy-game-selector:hover {
    transform:translateY(-2px);
    border-color:color-mix(in srgb,var(--game-accent) 65%,transparent);
    background:color-mix(in srgb,var(--game-accent) 12%,#111a29);
}
.hy-game-selector.active {
    border-color:var(--game-accent);
    background:color-mix(in srgb,var(--game-accent) 22%,#111a29);
    box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--game-accent) 18%,transparent);
}
.hy-game-selector-icon {
    width:50px;
    height:50px;
    display:grid;
    place-items:center;
    overflow:hidden;
    border-radius:10px;
    background:linear-gradient(135deg,color-mix(in srgb,var(--game-accent) 78%,#fff 4%),color-mix(in srgb,var(--game-accent) 30%,#09111f));
    color:#fff;
    font-size:1.3rem;
}
.hy-game-selector-icon img { width:100%;height:100%;object-fit:cover; }
.hy-game-selector-copy { min-width:0; }
.hy-game-selector-copy strong {
    display:block;
    overflow:hidden;
    color:#fff;
    font-size:.95rem;
    font-weight:900;
    white-space:nowrap;
    text-overflow:ellipsis;
}
.hy-game-selector-copy small {
    display:block;
    margin-top:.22rem;
    overflow:hidden;
    color:#8999b5;
    font-size:.72rem;
    white-space:nowrap;
    text-overflow:ellipsis;
}
.hy-game-detail {
    position:relative;
    min-height:440px;
    display:grid;
    grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);
    overflow:hidden;
    border:1px solid rgba(255,255,255,.08);
    border-radius:16px;
    background:#0a1322;
}
.hy-game-detail::before {
    content:"";
    position:absolute;
    inset:0;
    background:
        linear-gradient(90deg,rgba(7,13,24,.97) 0%,rgba(7,13,24,.85) 48%,rgba(7,13,24,.22) 100%),
        var(--game-background,none),
        linear-gradient(135deg,color-mix(in srgb,var(--game-accent) 42%,#07101d),#07101d);
    background-size:cover;
    background-position:center;
}
.hy-game-detail-content,
.hy-game-detail-art { position:relative;z-index:1; }
.hy-game-detail-content {
    display:flex;
    flex-direction:column;
    justify-content:center;
    padding:clamp(2rem,4vw,4rem);
}
.hy-game-detail-category {
    color:var(--game-accent);
    font-size:.72rem;
    font-weight:950;
    letter-spacing:.12em;
    text-transform:uppercase;
}
.hy-game-detail h2 {
    margin:.55rem 0 .35rem;
    color:#fff;
    font-size:clamp(2.4rem,5vw,4.2rem);
    line-height:.98;
    font-weight:950;
}
.hy-game-detail-short {
    margin:0 0 1.1rem;
    color:#dce6f6;
    font-size:1.08rem;
    font-weight:750;
}
.hy-game-detail-description {
    max-width:680px;
    color:#aebbd1;
    font-size:1rem;
    line-height:1.75;
    white-space:pre-line;
}
.hy-game-detail-actions {
    display:flex;
    flex-wrap:wrap;
    gap:.7rem;
    margin-top:1.3rem;
}
.hy-game-detail-art {
    min-height:360px;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:2rem;
}
.hy-game-detail-art img {
    max-width:100%;
    max-height:390px;
    object-fit:contain;
    filter:drop-shadow(0 22px 30px rgba(0,0,0,.36));
}
.hy-game-detail-placeholder {
    width:220px;
    height:220px;
    display:grid;
    place-items:center;
    border-radius:28px;
    background:linear-gradient(135deg,var(--game-accent),color-mix(in srgb,var(--game-accent) 20%,#07101d));
    color:#fff;
    font-size:5rem;
    box-shadow:0 28px 50px rgba(0,0,0,.3);
}
.hy-games-empty {
    padding:4rem 1rem;
    text-align:center;
    color:var(--hy-muted);
    border:1px dashed rgba(255,255,255,.14);
    border-radius:16px;
    background:rgba(255,255,255,.025);
}

@media (max-width:1180px) {
    .hy-site-nav { grid-template-columns:minmax(165px,auto) 1fr minmax(170px,auto); gap:.8rem; }
    .hy-site-brand-copy small { display:none; }
    .hy-header-server { display:none; }
    .hy-desktop-nav .hy-nav-item,.hy-desktop-nav .ui.dropdown.hy-nav-item { padding:0 .7rem!important;font-size:.9rem; }
    .hy-games-selector { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media (max-width:900px) {
    .hy-site-header { padding:8px 0; }
    .hy-site-nav {
        min-height:64px;
        display:flex!important;
        justify-content:space-between;
        padding:8px 12px!important;
        border-radius:16px;
    }
    .hy-site-brand img { width:30px;height:42px; }
    .hy-site-brand-copy small { display:none; }
    .hy-desktop-nav,.hy-desktop-user-actions,.hy-header-server { display:none!important; }
    .hy-mobile-toggle { display:inline-flex!important; margin-left:auto; }
    .hy-header-actions { margin-left:auto; }
    .hy-game-detail { grid-template-columns:1fr; }
    .hy-game-detail-art { min-height:260px;padding-top:0; }
    .hy-game-detail::before {
        background:linear-gradient(180deg,rgba(7,13,24,.98) 0%,rgba(7,13,24,.86) 62%,rgba(7,13,24,.35) 100%),var(--game-background,none),linear-gradient(135deg,var(--game-accent),#07101d);
    }
}
@media (max-width:700px) {
    .hy-site-header .ui.container { width:calc(100% - 16px)!important; }
    .hy-site-brand-copy strong { font-size:1rem; }
    .hy-games-page-intro { align-items:flex-start;flex-direction:column; }
    .hy-games-selector { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .hy-game-selector { min-height:68px;grid-template-columns:42px 1fr;padding:.55rem; }
    .hy-game-selector-icon { width:42px;height:42px; }
    .hy-game-selector-copy small { display:none; }
    .hy-game-detail-content { padding:2rem 1.25rem; }
    .hy-game-detail-art { padding:1rem 1.25rem 2rem; }
    .hy-game-detail-placeholder { width:160px;height:160px;font-size:3.7rem;border-radius:22px; }
    .hy-modern-logo { width:128px!important;max-height:180px!important; }
    .hy-modern-hero-grid { grid-template-columns:1fr 128px 1fr!important; }
}
@media (max-width:460px) {
    .hy-site-brand-copy small { display:none; }
    .hy-site-nav { border-radius:14px; }
    .hy-games-selector { grid-template-columns:1fr; }
    .hy-game-selector-copy small { display:block; }
    .hy-game-detail h2 { font-size:2.35rem; }
}
