/*
 * Sonic Hardcore IC5 shared front-end shell
 * Alpha 7.1: Loader contract hotfix for the site-wide shell assets.
 * Loaded through the IC5 Loader extension; no core files are edited.
 */

body.shcGlobalAssets,
body.shcGlobalShellMounted {
    --shc-global-deep: #010711;
    --shc-global-surface: #06111e;
    --shc-global-raised: #091a2a;
    --shc-global-raised-2: #0c2237;
    --shc-global-border: #173a59;
    --shc-global-border-hot: #176fd4;
    --shc-global-blue: #0b7cff;
    --shc-global-blue-bright: #27a6ff;
    --shc-global-orange: #ff7200;
    --shc-global-text: #f3f8ff;
    --shc-global-soft: #9fb3c8;
    --shc-global-shadow: 0 22px 60px rgb(0 0 0 / 62%);
    --shc-global-radius: 9px;
    --shc-global-max-width: 1600px;
    --shc-global-player-height: 96px;
}

body.shcGlobalShellMounted {
    color: var(--shc-global-text);
    background:
        radial-gradient(circle at 14% 0%, rgb(0 100 255 / 12%), transparent 31%),
        linear-gradient(180deg, #020711 0%, #030914 70%, #020711 100%);
}

/* Hide native chrome only after the SHC shell has successfully moved the live controls. */
body.shcGlobalShellMounted :is(.ipsHeader, .ipsNavPanel, .ipsNavPanelBreadcrumbs, .ipsMobileHeader, .ipsHeaderExtra) {
    display: none !important;
}

body.shcGlobalShellMounted :is(.ipsLayout, .ipsLayout__app) {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
}

body.shcGlobalShellMounted .ipsLayout__main {
    padding-bottom: calc(var(--shc-global-player-height, 96px) + 28px);
    background: transparent;
}

body.shcGlobalShellMounted .ipsWidth--main-content {
    width: min(calc(100% - 24px), var(--shc-global-max-width, 1600px));
    max-width: var(--shc-global-max-width, 1600px);
    margin-inline: auto;
}

/* Global SHC shell */
.shcGlobalShell,
.shcGlobalShell * {
    box-sizing: border-box;
}

.shcGlobalShell {
    width: min(100%, var(--shc-global-max-width, 1600px));
    margin-inline: auto;
    color: var(--shc-global-text);
    background: #020812;
    border-inline: 1px solid rgb(26 68 105 / 35%);
    font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.shcGlobalUtility {
    position: relative;
    min-height: 56px;
    display: flex;
    align-items: center;
    gap: 18px;
    padding: 8px 26px;
    background: rgb(1 6 13 / 97%);
    border-bottom: 1px solid #0c2841;
}

.shcGlobalUtility__brand {
    color: #fff !important;
    font-weight: 800;
    font-style: italic;
    letter-spacing: .04em;
    white-space: nowrap;
    text-decoration: none !important;
}

.shcGlobalUtility__brand span {
    color: var(--shc-global-blue-bright);
}

.shcGlobalUtility__divider {
    width: 1px;
    height: 32px;
    background: #183149;
}

.shcGlobalUtility__points {
    display: flex;
    align-items: center;
    gap: 9px;
    color: #eef6ff;
    font-size: .85rem;
}

.shcGlobalUtility__points::before {
    content: '';
    width: 13px;
    height: 13px;
    border: 3px solid var(--shc-global-blue);
    border-radius: 50%;
}

.shcGlobalUtility__points strong {
    padding: 8px 15px;
    color: #fff;
    border: 1px solid #173149;
    border-radius: 7px;
}

.shcGlobalUtility__account {
    min-width: 0;
    margin-left: auto;
    display: flex;
    align-items: center;
}

.shcGlobalUserBar--mobile {
    display: none;
}


/* RC1.9: centred Audio 2 MIDI launch link in the utility header. */
.shcMidiHeaderLink {
    position: absolute;
    z-index: 4;
    top: 50%;
    left: 50%;
    width: min(31vw, 462px);
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    transform: translate(-50%, -50%);
    border: 1px solid rgb(23 132 230 / 42%);
    border-radius: 4px;
    background: #020812;
    box-shadow: 0 0 0 1px rgb(0 0 0 / 65%), 0 0 18px rgb(16 128 255 / 12%);
    text-decoration: none !important;
    transition: border-color .16s ease, box-shadow .16s ease, filter .16s ease;
}
.shcMidiHeaderLink img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
}
.shcMidiHeaderLink:hover,
.shcMidiHeaderLink:focus-visible,
.shcMidiHeaderLink.is-active {
    border-color: rgb(31 159 255 / 88%);
    box-shadow: 0 0 0 1px rgb(0 0 0 / 75%), 0 0 17px rgb(0 126 255 / 33%), 0 0 19px rgb(255 119 0 / 18%);
    filter: brightness(1.08);
}
.shcMidiHeaderLink:focus-visible {
    outline: 2px solid #61c7ff;
    outline-offset: 2px;
}
@media (max-width: 1180px) {
    .shcMidiHeaderLink { width: min(29vw, 340px); }
}
@media (max-width: 900px) {
    .shcMidiHeaderLink { display: none; }
}

.shcGlobalUserBar > .ipsUserNav,
.shcGlobalUserBar .ipsUserNav {
    display: flex;
    align-items: center;
    gap: 5px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.shcGlobalUserBar .ipsUserNav__link,
.shcGlobalUserBar .ipsMobileNavIcons__button {
    min-width: 40px;
    min-height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 6px 9px;
    color: #eaf4ff !important;
    background: transparent;
    border: 1px solid transparent;
    border-radius: 8px;
}

.shcGlobalUserBar .ipsUserNav__link:hover,
.shcGlobalUserBar .ipsMobileNavIcons__button:hover {
    color: #fff !important;
    background: #07192a;
    border-color: #19456c;
    box-shadow: 0 0 18px rgb(8 124 255 / 32%);
}

.shcGlobalUserBar .ipsUserPhoto,
.shcGlobalUserBar .ipsUserPhoto img {
    width: 38px;
    height: 38px;
}

.shcGlobalUserBar .ipsUserPhoto img {
    object-fit: cover;
    border: 1px solid var(--shc-global-orange);
    border-radius: 50%;
}

.shcGlobalHero {
    height: 150px;
    position: relative;
    display: grid;
    place-items: center;
    overflow: hidden;
    background-image:
        linear-gradient(90deg, rgb(0 80 255 / 35%), transparent 40%, rgb(255 80 0 / 25%)),
        var(--shc-global-hero-image);
    background-size: cover;
    background-position: center;
}

.shcGlobalHero::after {
    content: '';
    position: absolute;
    inset: 0;
    z-index: 2;
    background: linear-gradient(180deg, transparent 55%, #020914);
    box-shadow: inset 0 -90px 120px rgb(2 9 20 / .45), inset 0 0 0 rgb(255 255 255 / 0);
    animation: shcGlobalHeroLightningShade 8.8s linear infinite;
}

.shcGlobalHero img {
    position: relative;
    z-index: 3;
    max-width: min(520px, 58vw);
    max-height: 130px;
    object-fit: contain;
    filter: drop-shadow(0 0 18px rgb(0 120 255 / 55%));
}

.shcGlobalHero__lightning {
    position: absolute;
    inset: 0;
    z-index: 1;
    pointer-events: none;
    mix-blend-mode: screen;
    opacity: 0;
    background:
        radial-gradient(circle at 21% 16%, rgb(255 255 255 / .95), rgb(82 183 255 / .45) 13%, transparent 24%),
        radial-gradient(circle at 74% 20%, rgb(255 255 255 / .92), rgb(255 149 74 / .35) 12%, transparent 22%),
        linear-gradient(114deg, transparent 0 43%, rgb(255 255 255 / 0) 43.5%, rgb(255 255 255 / .98) 44.2%, rgb(134 214 255 / .94) 44.9%, transparent 45.7%) 16% -3% / 34% 108% no-repeat,
        linear-gradient(77deg, transparent 0 53%, rgb(255 255 255 / 0) 53.2%, rgb(255 255 255 / .9) 54%, rgb(92 192 255 / .85) 54.8%, transparent 55.6%) 26% 16% / 18% 64% no-repeat,
        linear-gradient(104deg, transparent 0 46%, rgb(255 255 255 / 0) 46.2%, rgb(255 255 255 / .98) 47%, rgb(255 175 96 / .88) 47.8%, transparent 48.6%) 64% -5% / 27% 110% no-repeat,
        linear-gradient(63deg, transparent 0 58%, rgb(255 255 255 / 0) 58.4%, rgb(255 255 255 / .88) 59.2%, rgb(111 198 255 / .78) 60%, transparent 60.8%) 57% 23% / 16% 58% no-repeat;
    filter: drop-shadow(0 0 12px rgb(150 222 255 / .85)) drop-shadow(0 0 26px rgb(36 122 255 / .45));
    animation: shcGlobalHeroLightningCycle 8.8s linear infinite;
}

@keyframes shcGlobalHeroLightningCycle {
    0%, 8%, 9.1%, 26%, 27%, 44%, 45.1%, 73%, 74.1%, 100% { opacity: 0; }
    8.2% { opacity: .18; }
    8.38% { opacity: .98; }
    8.55% { opacity: .28; }
    8.74% { opacity: .86; }
    8.93% { opacity: .22; }
    26.18% { opacity: .16; }
    26.34% { opacity: .88; }
    26.52% { opacity: .25; }
    26.72% { opacity: .76; }
    44.16% { opacity: .22; }
    44.34% { opacity: .94; }
    44.52% { opacity: .3; }
    44.78% { opacity: .82; }
    73.1% { opacity: .18; }
    73.32% { opacity: .86; }
    73.5% { opacity: .24; }
    73.74% { opacity: .74; }
}

.shcGlobalNav {
    min-height: 54px;
    display: flex;
    align-items: center;
    gap: 12px;
    margin: -1px 24px 14px;
    padding: 0 18px;
    position: relative;
    z-index: 20;
    background: rgb(3 12 22 / 97%);
    border: 1px solid #16344f;
    border-radius: 10px;
}

.shcGlobalNav__mobile {
    display: none;
    padding: 8px 12px;
    color: #fff;
    background: #0755c9;
    border: 0;
    border-radius: 5px;
    font-weight: 800;
}

.shcGlobalNav__slot {
    min-width: 0;
    flex: 1;
}


.shcNavigationMenu {
    width: 100%;
    min-width: 0;
}

/*
 * The SHC header has enough room for the complete menu. IC5's priority
 * clone is intentionally disabled here so native links do not remain
 * trapped in one More dropdown after the navigation is relocated.
 */
.shcGlobalNav__slot [data-role="moreLi"],
.shcGlobalNav__slot .ipsNavPriority,
.shcGlobalNav__slot .js-ipsNavPriority {
    display: none !important;
}

.shcGlobalNav__slot .ipsNavBar {
    overflow-x: auto;
    overflow-y: visible;
    scrollbar-width: none;
}

.shcGlobalNav__slot .ipsNavBar::-webkit-scrollbar {
    display: none;
}

.shcGlobalNav__slot .ipsNavBar > li[data-id] {
    display: list-item !important;
    flex: 0 0 auto;
}

.shcGlobalNav__search {
    min-width: 220px;
    margin-left: auto;
}

.shcGlobalNav__search .ipsSearchPseudo {
    width: 100%;
    min-height: 38px;
    display: flex;
    align-items: center;
    gap: 9px;
    padding: 8px 12px;
    color: #aebed0;
    background: #020a14;
    border: 1px solid #19364f;
    border-radius: 7px;
    text-align: left;
}

.shcGlobalNav__search .ipsSearchPseudo span {
    flex: 1;
}

.shcGlobalNav__search .ipsSearchPseudo:hover {
    border-color: var(--shc-global-blue);
}

/* Native IC5 navigation, moved intact into the SHC bar. */
.shcGlobalNav__slot .ipsNav {
    width: 100%;
    background: transparent;
    border: 0;
}

.shcGlobalNav__slot .ipsNavBar {
    display: flex;
    align-items: center;
    gap: 4px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.shcGlobalNav__slot .ipsNavBar > li > :is(a, button),
.shcGlobalNav__slot .ipsNavBar__link {
    min-height: 42px;
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px 13px;
    color: #f7faff !important;
    background: transparent;
    border: 0;
    border-radius: 6px;
    font-size: .81rem;
    font-weight: 700;
    white-space: nowrap;
}

.shcGlobalNav__slot .ipsNavBar > li > :is(a, button):hover,
.shcGlobalNav__slot .ipsNavBar > li[data-active] > :is(a, button),
.shcGlobalNav__slot .ipsNavBar__link[aria-current='page'] {
    color: #fff !important;
    background: linear-gradient(180deg, #137cff, #064ac1);
    box-shadow: 0 0 18px rgb(8 124 255 / 35%);
}

.shcGlobalNav__slot .ipsNavBar__icon {
    color: #dfeeff;
}

.shcGlobalNav__slot .ipsNavPriority {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
}

.shcGlobalNav__slot .ipsNav__dropdown {
    overflow: hidden;
    color: #fff;
    background:
        radial-gradient(circle at 100% 0%, rgb(10 109 215 / 18%), transparent 45%),
        linear-gradient(180deg, #091a2a, #030b14);
    border: 1px solid var(--shc-global-border-hot);
    border-radius: 8px;
    box-shadow: 0 20px 42px rgb(0 0 0 / 58%);
}

.shcGlobalNav__slot .ipsNav__dropdown a {
    color: #edf6ff !important;
}

.shcGlobalNav__slot .ipsNav__dropdown a:hover {
    color: #fff !important;
    background: #0a3158;
    box-shadow: inset 3px 0 var(--shc-global-orange);
}


/* Alpha 7.3 canonical navigation shared by every frontend page. */
.shcUnifiedNav {
    min-width: 0;
    display: flex;
    align-items: center;
    gap: 4px;
}

.shcUnifiedNav__item {
    min-height: 42px;
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px 13px;
    color: #f7faff !important;
    background: transparent;
    border: 0;
    border-radius: 6px;
    font-size: .81rem;
    font-weight: 700;
    line-height: 1.15;
    white-space: nowrap;
    cursor: pointer;
    list-style: none;
    text-decoration: none !important;
}

.shcUnifiedNav__item::-webkit-details-marker {
    display: none;
}

.shcUnifiedNav__item:hover,
.shcUnifiedNav__item.is-active,
.shcUnifiedNavMenu.is-active > .shcUnifiedNav__item,
.shcUnifiedNavMenu[open] > .shcUnifiedNav__item {
    color: #fff !important;
    background: linear-gradient(180deg, #137cff, #064ac1);
    box-shadow: 0 0 18px rgb(8 124 255 / 35%);
}

.shcUnifiedNavMenu {
    position: relative;
}

.shcUnifiedNavMenu__dropdown {
    min-width: 238px;
    position: absolute;
    z-index: 80;
    top: calc(100% + 7px);
    left: 0;
    display: grid;
    gap: 2px;
    padding: 7px;
    color: #fff;
    background:
        radial-gradient(circle at 100% 0%, rgb(10 109 215 / 18%), transparent 45%),
        linear-gradient(180deg, #091a2a, #030b14);
    border: 1px solid var(--shc-global-border-hot);
    border-radius: 8px;
    box-shadow: 0 20px 42px rgb(0 0 0 / 58%);
}

.shcUnifiedNavMenu__dropdown a {
    display: block;
    padding: 10px 12px;
    color: #edf6ff !important;
    border-radius: 5px;
    font-size: .79rem;
    font-weight: 650;
    text-decoration: none !important;
}

.shcUnifiedNavMenu__dropdown a:hover {
    color: #fff !important;
    background: #0a3158;
    box-shadow: inset 3px 0 var(--shc-global-orange);
}

/* First shared native-page frame pass. */
body.shcGlobalShellMounted :is(.ipsBox, .ipsWidget, .ipsTable, i-data) {
    color: var(--shc-global-text);
    background: linear-gradient(145deg, rgb(6 18 31 / 97%), rgb(2 10 18 / 97%));
    border-color: var(--shc-global-border);
    box-shadow: inset 0 1px rgb(255 255 255 / 2%);
}

body.shcGlobalShellMounted :is(.ipsBox__header, .ipsWidget__header, .ipsTable__header) {
    color: #fff;
    background: linear-gradient(180deg, #0d2c48, #071725);
    border-color: var(--shc-global-border);
}

body.shcGlobalShellMounted :is(.ipsData__item, .ipsTable__row, tr, td, th) {
    border-color: #15334e;
}

body.shcGlobalShellMounted :is(.ipsPageHeader, .ipsBreadcrumb) {
    color: var(--shc-global-text);
}

body.shcGlobalShellMounted .ipsBreadcrumb {
    margin-bottom: 12px;
    padding: 9px 12px;
    background: rgb(4 15 27 / 88%);
    border: 1px solid #15334e;
    border-radius: 7px;
}

body.shcGlobalShellMounted :is(.ipsButton--primary, .ipsButton--important) {
    color: #fff;
    background: linear-gradient(180deg, #178cff, #0752c7);
    border-color: #238fff;
}

body.shcGlobalShellMounted .ipsButton--secondary {
    color: #e9f4ff;
    background: #0a2135;
    border-color: #28506f;
}

body.shcGlobalShellMounted :is(.ipsInput, input[type='text'], input[type='search'], textarea, select) {
    color: #fff;
    background-color: #020912;
    border-color: #28506f;
}

body.shcGlobalShellMounted :is(.ipsInput, input[type='text'], input[type='search'], textarea, select):focus {
    border-color: var(--shc-global-blue);
    box-shadow: 0 0 0 3px rgb(11 124 255 / 18%);
}

body.shcGlobalShellMounted :is(.ipsTabs, .ipsTabs__panel) {
    color: var(--shc-global-text);
    background: #061522;
    border-color: var(--shc-global-border);
}

/* Site-wide sticky radio player. */
.shcGlobalPlayer {
    min-height: var(--shc-global-player-height, 96px);
    position: fixed;
    z-index: 1100;
    inset: auto 0 0;
    display: flex;
    align-items: center;
    gap: 18px;
    padding: 10px max(24px, calc((100vw - var(--shc-global-max-width, 1600px)) / 2 + 24px));
    color: #fff;
    background: linear-gradient(90deg, #020914, #031526 45%, #020914);
    border-top: 1px solid #163d61;
    box-shadow: 0 -12px 32px rgb(0 0 0 / 45%);
}

.shcGlobalPlayer[hidden] {
    display: none !important;
}

.shcGlobalPlayer__art {
    width: 72px;
    height: 72px;
    object-fit: contain;
    background: #061424;
    border: 1px solid #1b4c78;
    border-radius: 6px;
}

.shcGlobalPlayer__track {
    min-width: 230px;
}

.shcGlobalPlayer__track small,
.shcGlobalPlayer__track strong,
.shcGlobalPlayer__track a {
    display: block;
}

.shcGlobalPlayer__track a {
    margin-top: 4px;
    color: var(--shc-global-blue-bright) !important;
}

.shcGlobalPlayer__controls {
    display: flex;
    align-items: center;
    gap: 14px;
}

.shcGlobalPlayer__controls button {
    width: 48px;
    height: 48px;
    color: #fff;
    background: #06111d;
    border: 1px solid #1d3955;
    border-radius: 50%;
    font-size: 1.2rem;
}

.shcGlobalPlayer__controls .is-play {
    width: 68px;
    height: 68px;
    background: linear-gradient(145deg, #388eff, #074fc2);
    box-shadow: 0 0 18px rgb(8 124 255 / 35%);
}

.shcGlobalPlayer__volume {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-left: auto;
}

.shcGlobalPlayer__volume input {
    width: 130px;
}

.shcGlobalPlayer__action {
    min-height: 40px;
    padding: 0 18px;
    color: #f4f8ff;
    background: #07111c;
    border: 1px solid #25445f;
    border-radius: 20px;
    font-weight: 700;
}

/* Shared menu/dropdown/search styling from Alpha 6. */
body.shcGlobalAssets :is(i-dropdown[popover], i-card[popover], .ipsOffCanvas[popover], #ipsSearchDialog[open])::backdrop {
    background: rgb(0 4 10 / 70%);
    backdrop-filter: blur(3px);
}

body.shcGlobalAssets i-dropdown[popover],
body.shcGlobalAssets .ipsMenu[popover] {
    color: var(--shc-global-text);
    background: transparent;
    border: 0;
    filter: drop-shadow(0 20px 35px rgb(0 0 0 / 58%));
}

body.shcGlobalAssets .iDropdown,
body.shcGlobalAssets .ipsMenu {
    min-width: min(430px, calc(100vw - 24px));
    overflow: hidden;
    color: var(--shc-global-text);
    background:
        radial-gradient(circle at 100% 0%, rgb(9 113 218 / 18%), transparent 42%),
        linear-gradient(180deg, #091a2a 0%, #030b14 100%);
    border: 1px solid var(--shc-global-border-hot);
    border-radius: var(--shc-global-radius);
    box-shadow: var(--shc-global-shadow), inset 0 1px rgb(255 255 255 / 5%);
}

body.shcGlobalAssets .iDropdown::before,
body.shcGlobalAssets .ipsMenu::before {
    content: '';
    display: block;
    height: 2px;
    background: linear-gradient(90deg, var(--shc-global-blue), var(--shc-global-orange));
}

body.shcGlobalAssets :is(.iDropdown__header, .ipsMenu__header) {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 13px 15px;
    color: var(--shc-global-text);
    background: linear-gradient(180deg, rgb(16 44 70 / 95%), rgb(5 18 31 / 95%));
    border-bottom: 1px solid var(--shc-global-border);
}

body.shcGlobalAssets :is(.iDropdown__headerTitle, .iDropdown__headerTitle a, .ipsMenu__title) {
    margin: 0;
    color: var(--shc-global-text) !important;
    font-weight: 800;
}

body.shcGlobalAssets :is(.iDropdown__footer, .ipsMenu__footer) {
    display: block;
    padding: 11px 14px;
    color: #dcecff !important;
    background: #061522;
    border-top: 1px solid var(--shc-global-border);
    text-align: center;
    font-weight: 700;
}

body.shcGlobalAssets :is(.ipsMenu__item, .iDropdown__item) > :is(a, button),
body.shcGlobalAssets .ipsMenu__content > :is(a, button) {
    width: 100%;
    min-height: 42px;
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 9px 12px;
    color: #eaf4ff !important;
    background: transparent;
    border: 0;
    border-radius: 6px;
    text-align: left;
}

body.shcGlobalAssets :is(.ipsMenu__item, .iDropdown__item) > :is(a, button):hover,
body.shcGlobalAssets .ipsMenu__content > :is(a, button):hover {
    color: #fff !important;
    background: linear-gradient(90deg, rgb(10 83 157 / 72%), rgb(5 37 67 / 65%));
    box-shadow: inset 3px 0 var(--shc-global-orange);
}

body.shcGlobalAssets .iDropdown :is(.ipsData, .ipsData__item),
body.shcGlobalAssets .ipsOffCanvas :is(.ipsData, .ipsData__item) {
    color: var(--shc-global-text);
    background: transparent;
    border-color: var(--shc-global-border);
}

body.shcGlobalAssets .iDropdown .ipsData__item:hover,
body.shcGlobalAssets .ipsOffCanvas .ipsData__item:hover {
    background: rgb(11 95 177 / 16%);
}

body.shcGlobalAssets :is(.iDropdown, .ipsOffCanvas) :is(a, strong) {
    color: #f3f8ff;
}

body.shcGlobalAssets :is(.iDropdown, .ipsOffCanvas) :is(.i-color_soft, small, time) {
    color: var(--shc-global-soft) !important;
}

body.shcGlobalAssets #ipsSearchDialog {
    width: min(920px, calc(100vw - 24px));
    max-width: none;
    padding: 0;
    color: var(--shc-global-text);
    background: transparent;
    border: 0;
    overflow: visible;
}

body.shcGlobalAssets .ipsSearchDialog__modal {
    overflow: hidden;
    color: var(--shc-global-text);
    background:
        radial-gradient(circle at 90% 0%, rgb(9 113 218 / 22%), transparent 45%),
        linear-gradient(180deg, #0a1b2b 0%, #030a12 100%);
    border: 1px solid var(--shc-global-border-hot);
    border-radius: 12px;
    box-shadow: var(--shc-global-shadow);
}

body.shcGlobalAssets .ipsSearchDialog__input {
    display: flex;
    gap: 9px;
    padding: 14px;
    background: #06131f;
    border-bottom: 1px solid var(--shc-global-border);
}

body.shcGlobalAssets .ipsOffCanvas {
    width: min(720px, calc(100vw - 16px));
    max-width: none;
    max-height: min(84vh, 760px);
    color: var(--shc-global-text);
    background:
        radial-gradient(circle at 100% 0%, rgb(8 104 205 / 20%), transparent 44%),
        linear-gradient(180deg, #0a1b2b 0%, #030a12 100%);
    border: 1px solid var(--shc-global-border-hot);
    border-radius: 12px;
    box-shadow: var(--shc-global-shadow);
}

body.shcGlobalAssets .ipsOffCanvas__nav {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 9px;
    padding: 12px;
}

body.shcGlobalAssets .ipsOffCanvas__item > :is(a, button),
body.shcGlobalAssets .ipsOffCanvas__nav > li > :is(a, button) {
    width: 100%;
    min-height: 54px;
    display: flex;
    align-items: center;
    gap: 11px;
    padding: 10px 12px;
    color: #eaf4ff !important;
    background: linear-gradient(180deg, #10263a, #0a1927);
    border: 1px solid #29465d;
    border-radius: 7px;
}

body.shcGlobalAssets .ipsOffCanvas__item > :is(a, button):hover,
body.shcGlobalAssets .ipsOffCanvas__nav > li > :is(a, button):hover {
    color: #fff !important;
    background: linear-gradient(180deg, #0e4d86, #0a2e50);
    border-color: var(--shc-global-blue);
    box-shadow: inset 3px 0 var(--shc-global-orange);
}

@media (min-width: 768px) {
    .shcGlobalPlayer__controls {
        position: absolute;
        left: 50%;
        margin: 0;
        transform: translateX(-50%);
    }
}

@media (max-width: 1100px) {
    .shcGlobalNav__slot .ipsNavBar > li > :is(a, button),
    .shcGlobalNav__slot .ipsNavBar__link,
    .shcUnifiedNav__item {
        padding-inline: 9px;
        font-size: .72rem;
    }

    .shcGlobalNav__search {
        min-width: 170px;
    }

    .shcGlobalPlayer__action {
        display: none;
    }
}

@keyframes shcGlobalHeroLightningShade {
    0%, 8%, 9.1%, 26%, 27%, 44%, 45.1%, 73%, 74.1%, 100% {
        background: linear-gradient(180deg, transparent 55%, #020914);
        box-shadow: inset 0 -90px 120px rgb(2 9 20 / .45), inset 0 0 0 rgb(255 255 255 / 0);
    }
    8.38%, 8.74%, 26.34%, 26.72%, 44.34%, 44.78%, 73.32%, 73.74% {
        background: linear-gradient(180deg, rgb(255 255 255 / .12), transparent 48%, #020914);
        box-shadow: inset 0 -90px 120px rgb(2 9 20 / .35), inset 0 0 140px rgb(146 215 255 / .18);
    }
}

@media (prefers-reduced-motion: reduce) {
    .shcGlobalHero__lightning {
        animation: none;
        opacity: .12;
    }

    .shcGlobalHero::after {
        animation: none;
    }
}

@media (max-width: 767px) {
    body.shcGlobalShellMounted {
        --shc-global-player-height: 72px;
    }

    .shcGlobalUtility {
        padding-inline: 14px;
    }

    .shcGlobalUtility__brand {
        font-size: .82rem;
    }

    .shcGlobalUtility__points,
    .shcGlobalUserBar--desktop {
        display: none;
    }

    .shcGlobalUserBar--mobile {
        display: block;
    }

    .shcGlobalUserBar--mobile .ipsMobileNavIcons {
        display: flex;
        align-items: center;
        gap: 4px;
        margin: 0;
        padding: 0;
        list-style: none;
    }

    .shcGlobalUserBar--mobile .ipsMobileNavIcons__button {
        min-width: 38px;
        min-height: 38px;
        padding: 5px;
        color: #fff;
        background: #071725;
        border: 1px solid #183b5b;
        border-radius: 7px;
    }

    .shcGlobalHero {
        height: 105px;
    }

    .shcGlobalHero img {
        max-width: 75vw;
    }

    .shcGlobalNav {
        margin: 0 10px 10px;
        padding: 6px 8px;
        flex-wrap: wrap;
    }

    .shcGlobalNav__mobile {
        display: block;
    }

    .shcGlobalNav__slot {
        display: none;
        flex-basis: 100%;
        order: 3;
    }

    .shcGlobalNav.is-open .shcGlobalNav__slot {
        display: block;
    }

    .shcGlobalNav__slot .ipsNavBar,
    .shcUnifiedNav {
        flex-direction: column;
        align-items: stretch;
    }

    .shcGlobalNav__slot .ipsNavBar > li,
    .shcGlobalNav__slot .ipsNavBar > li > :is(a, button),
    .shcUnifiedNav__item,
    .shcUnifiedNavMenu {
        width: 100%;
    }

    .shcUnifiedNavMenu__dropdown {
        min-width: 0;
        position: static;
        margin: 4px 0 8px;
        box-shadow: none;
    }

    .shcGlobalNav__search {
        min-width: 150px;
    }

    .shcGlobalNav__search .ipsSearchPseudo span {
        display: none;
    }

    .shcGlobalPlayer {
        min-height: var(--shc-global-player-height, 72px);
        gap: 10px;
        padding: 7px 10px;
    }

    .shcGlobalPlayer__art {
        width: 52px;
        height: 52px;
    }

    .shcGlobalPlayer__track {
        min-width: 0;
        flex: 1;
    }

    .shcGlobalPlayer__track :is(strong, a) {
        max-width: 36vw;
        overflow: hidden;
        white-space: nowrap;
        text-overflow: ellipsis;
    }

    .shcGlobalPlayer__controls button:not(.is-play),
    .shcGlobalPlayer__volume,
    .shcGlobalPlayer__action {
        display: none;
    }

    .shcGlobalPlayer__controls .is-play {
        width: 52px;
        height: 52px;
    }

    body.shcGlobalAssets .ipsOffCanvas {
        width: calc(100vw - 12px);
        max-height: 88vh;
    }

    body.shcGlobalAssets .ipsOffCanvas__nav {
        gap: 7px;
        padding: 9px;
    }
}

@media (max-width: 420px) {
    body.shcGlobalAssets .ipsOffCanvas__nav {
        grid-template-columns: 1fr;
    }
}

@media (prefers-reduced-motion: reduce) {
    body.shcGlobalAssets *,
    body.shcGlobalAssets *::before,
    body.shcGlobalAssets *::after,
    body.shcGlobalShellMounted *,
    body.shcGlobalShellMounted *::before,
    body.shcGlobalShellMounted *::after {
        scroll-behavior: auto !important;
        transition-duration: .01ms !important;
        animation-duration: .01ms !important;
        animation-iteration-count: 1 !important;
    }
}


/* Alpha 11 canonical menu parity and exact child highlighting. */
.shcUnifiedNav__item > :is(.fa-solid, .fa-regular) {
    width: 1.05em;
    color: #32a7ff;
    text-align: center;
}
.shcUnifiedNav__item:hover > :is(.fa-solid, .fa-regular),
.shcUnifiedNav__item.is-active > :is(.fa-solid, .fa-regular),
.shcUnifiedNavMenu.is-active > .shcUnifiedNav__item > :is(.fa-solid, .fa-regular) {
    color: #fff;
}
.shcUnifiedNavMenu__dropdown a.is-active {
    color: #fff !important;
    background: #0a3158;
    box-shadow: inset 3px 0 var(--shc-global-orange);
}

/* Alpha 12: native IC5 Forums and topic skin. */
body.shcForumsSkin {
    --shc-forum-surface: rgb(5 17 30 / 97%);
    --shc-forum-surface-2: rgb(8 27 45 / 97%);
    --shc-forum-border: #17456d;
    --shc-forum-divider: #123653;
    --shc-forum-unread: #21a6ff;
    --shc-forum-hot: #ff7200;
    color: var(--shc-global-text);
}

body.shcForumsSkin :is(.ipsPageHeader--forum-table, .ipsPageHeader--topic-list, .ipsBox--topicHeader) {
    overflow: hidden;
    color: #fff;
    background:
        radial-gradient(circle at 100% 0%, rgb(255 114 0 / 13%), transparent 34%),
        linear-gradient(135deg, #0b2d4b 0%, #061423 60%, #04101c 100%);
    border: 1px solid var(--shc-forum-border);
    border-radius: 10px;
    box-shadow: 0 16px 34px rgb(0 0 0 / 28%), inset 0 1px rgb(255 255 255 / 4%);
}

body.shcForumsSkin :is(.ipsPageHeader--forum-table, .ipsPageHeader--topic-list, .ipsBox--topicHeader) .ipsPageHeader__title {
    color: #fff;
    text-shadow: 0 0 18px rgb(24 143 255 / 28%);
}

body.shcForumsSkin .ipsPageHeader__desc,
body.shcForumsSkin .ipsPageHeader :is(.i-color_soft, .ipsType_light) {
    color: #a9bed2 !important;
}

body.shcForumsSkin :is(.ipsBox--forum-categories, .ipsBox--forumCategory, .ipsBox--forumsClubCategory, .ipsBox--forumsTable, .ipsBox--forumsDisplayActions, .ipsBox--topicPoll) {
    overflow: hidden;
    background: linear-gradient(145deg, var(--shc-forum-surface-2), var(--shc-forum-surface));
    border: 1px solid var(--shc-forum-border);
    border-radius: 10px;
    box-shadow: 0 14px 34px rgb(0 0 0 / 25%), inset 0 1px rgb(255 255 255 / 3%);
}

body.shcForumsSkin :is(.ipsBox--forumCategory, .ipsBox--forumsClubCategory) > .ipsBox__header,
body.shcForumsSkin .ipsBox--forum-categories .ipsBox__header,
body.shcForumsSkin .ipsBox--forumsTable > .ipsBox__header {
    min-height: 48px;
    display: flex;
    align-items: center;
    padding: 11px 16px;
    color: #fff;
    background:
        linear-gradient(90deg, rgb(13 68 113 / 96%), rgb(6 25 42 / 96%));
    border-bottom: 1px solid #1b5788;
    box-shadow: inset 4px 0 var(--shc-forum-hot);
    font-weight: 800;
    letter-spacing: .02em;
}

body.shcForumsSkin :is(.ipsData--forum-category, .ipsData--forum-grid, .ipsBox--forumsTable .ipsData) {
    background: transparent;
}

body.shcForumsSkin :is(.ipsData--forum-category, .ipsBox--forumsTable .ipsData) > .ipsData__item {
    position: relative;
    color: var(--shc-global-text);
    background: linear-gradient(90deg, rgb(7 24 40 / 96%), rgb(3 13 23 / 96%));
    border-color: var(--shc-forum-divider);
    transition: background .16s ease, border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}

body.shcForumsSkin :is(.ipsData--forum-category, .ipsBox--forumsTable .ipsData) > .ipsData__item:hover {
    z-index: 1;
    background: linear-gradient(90deg, rgb(10 42 70 / 98%), rgb(5 22 38 / 98%));
    border-color: #23679e;
    box-shadow: inset 4px 0 var(--shc-global-blue), 0 8px 20px rgb(0 0 0 / 18%);
}

body.shcForumsSkin .ipsData__item :is(.ipsData__title h3, .ipsData__title h4, .ipsData__title a) {
    color: #f5faff !important;
    font-weight: 750;
}

body.shcForumsSkin .ipsData__item:hover .ipsData__title a {
    color: #fff !important;
    text-shadow: 0 0 12px rgb(44 164 255 / 32%);
}

body.shcForumsSkin .ipsData__item :is(.ipsData__meta, .ipsData__desc, .ipsData__last-secondary, .ipsData__stats-label, .i-color_soft) {
    color: #91aac0 !important;
}

body.shcForumsSkin .ipsData__item :is(.ipsData__last-primary, .ipsData__last-primary a, .ipsData__stats, .ipsData__stats a) {
    color: #dbeeff !important;
}

body.shcForumsSkin .ipsData__icon--indicator,
body.shcForumsSkin .ipsIndicator {
    color: #8ba3b8;
    background: #071522;
    border: 1px solid #21496a;
    box-shadow: inset 0 0 14px rgb(4 17 29 / 82%);
}

body.shcForumsSkin :is(.ipsIndicator:not(.ipsIndicator--read), .ipsData__item:not(.ipsData__item--read) .ipsData__icon--indicator) {
    color: #fff;
    background: linear-gradient(145deg, #188dff, #0752bd);
    border-color: #2aa8ff;
    box-shadow: 0 0 18px rgb(20 139 255 / 38%);
}

body.shcForumsSkin :is(.ipsBadge--new, .ipsData__stats-hot, .ipsData__stats-icon) {
    color: #fff;
    background: linear-gradient(145deg, #ff8a18, #d64c00);
    border-color: #ff9b3a;
}

body.shcForumsSkin :is(.ipsSubList, .cForumMiniList) {
    gap: 6px;
}

body.shcForumsSkin :is(.ipsSubList__item, .cForumMiniList__blob) {
    color: #cde6fb;
    background: #071b2d;
    border: 1px solid #1d4a6e;
    border-radius: 999px;
}

body.shcForumsSkin :is(.ipsSubList__item, .cForumMiniList__blob) a {
    color: #cde6fb !important;
}

body.shcForumsSkin :is(.ipsSubList__item, .cForumMiniList__blob):hover {
    background: #0b3458;
    border-color: var(--shc-global-blue);
}

body.shcForumsSkin :is(.ipsButtonBar, .ipsDataFilters) {
    color: #e9f5ff;
    background: #061522;
    border-color: var(--shc-forum-divider);
}

body.shcForumsSkin .ipsButtonBar {
    padding: 8px 10px;
}

body.shcForumsSkin :is(.ipsDataFilters__button, .ipsButtonBar button, .ipsButtonBar a) {
    color: #dceeff !important;
}

body.shcForumsSkin :is(.ipsDataFilters__button, .ipsButtonBar button):hover {
    color: #fff !important;
    background: #0a3153;
}

body.shcForumsSkin .ipsPagination {
    gap: 4px;
}

body.shcForumsSkin .ipsPagination > li > :is(a, span) {
    color: #dceeff;
    background: #071827;
    border: 1px solid #204867;
    border-radius: 6px;
}

body.shcForumsSkin .ipsPagination > li.ipsPagination_active > :is(a, span),
body.shcForumsSkin .ipsPagination > li > a:hover {
    color: #fff;
    background: linear-gradient(180deg, #168aff, #0752c5);
    border-color: #2c9eff;
}

/* Topic page and posts. */
body.shcForumsSkin #ipsTopicView {
    --shc-topic-author-width: 250px;
}

body.shcForumsSkin #ipsTopicView .ipsEntries--topic {
    display: grid;
    gap: 14px;
}

body.shcForumsSkin #ipsTopicView .ipsEntry {
    overflow: clip;
    color: var(--shc-global-text);
    background: linear-gradient(135deg, rgb(8 26 43 / 98%), rgb(3 13 23 / 98%));
    border: 1px solid var(--shc-forum-border);
    border-radius: 10px;
    box-shadow: 0 16px 34px rgb(0 0 0 / 24%), inset 0 1px rgb(255 255 255 / 3%);
}

body.shcForumsSkin #ipsTopicView .ipsEntry__header {
    color: #fff;
    background:
        radial-gradient(circle at 20% 0%, rgb(22 133 245 / 15%), transparent 42%),
        linear-gradient(180deg, #0a263d, #061725);
    border-color: var(--shc-forum-divider);
}

body.shcForumsSkin #ipsTopicView .ipsEntry__username,
body.shcForumsSkin #ipsTopicView .ipsEntry__username a {
    color: #fff !important;
    font-weight: 800;
}

body.shcForumsSkin #ipsTopicView :is(.ipsEntry__group, .ipsEntry__date, .ipsEntry__authorStats, .ipsEntry__authorFields) {
    color: #9db4c8;
}

body.shcForumsSkin #ipsTopicView .ipsEntry__content {
    min-width: 0;
    color: #eaf4fd;
    background: rgb(2 11 20 / 72%);
}

body.shcForumsSkin #ipsTopicView .ipsEntry__post {
    color: #eaf4fd;
    line-height: 1.68;
}

body.shcForumsSkin #ipsTopicView .ipsEntry__post a {
    color: #43b2ff;
}

body.shcForumsSkin #ipsTopicView .ipsEntry__post :is(blockquote, .ipsQuote) {
    color: #dceeff;
    background: #061a2b;
    border: 1px solid #1f4f75;
    border-left: 4px solid var(--shc-global-blue);
    border-radius: 7px;
}

body.shcForumsSkin #ipsTopicView .ipsEntry__footer {
    color: #b8cde0;
    background: rgb(5 18 31 / 92%);
    border-color: var(--shc-forum-divider);
}

body.shcForumsSkin #ipsTopicView :is(.ipsEntry__controls, .ipsEntry__meta) a,
body.shcForumsSkin #ipsTopicView :is(.ipsEntry__controls, .ipsEntry__meta) button {
    color: #cfe7fa !important;
}

body.shcForumsSkin #ipsTopicView :is(.ipsEntry__controls, .ipsEntry__meta) a:hover,
body.shcForumsSkin #ipsTopicView :is(.ipsEntry__controls, .ipsEntry__meta) button:hover {
    color: #fff !important;
}

body.shcForumsSkin #ipsTopicView :is(.ipsReact, .ipsReactOverview, .ipsReactions) {
    color: #eaf5ff;
    background: #071a2a;
    border-color: #1d4b70;
}

body.shcForumsSkin :is(.ipsComposeArea, .ipsEditor, .ipsEditor__content, .ipsForm--new-topic) {
    color: #ecf6ff;
    background: #04111e;
    border-color: var(--shc-forum-border);
}

body.shcForumsSkin :is(.ipsComposeArea_warning, .ipsMessage--warning) {
    color: #ffe6c4;
    background: rgb(80 37 5 / 88%);
    border-color: #c96b13;
}

body.shcForumsSkin .ipsMessage--success {
    color: #dfffea;
    background: rgb(6 65 42 / 88%);
    border-color: #1b9b64;
}

body.shcForumsSkin :is(.ipsTopicMeta, .ipsTopicMeta__item, .cTopicOverview) {
    color: #cfe1f1;
    background-color: transparent;
    border-color: var(--shc-forum-divider);
}

body.shcForumsCompact :is(.ipsData--forum-category, .ipsBox--forumsTable .ipsData) > .ipsData__item {
    padding-block: 9px;
}

body.shcForumsCompact .ipsData__item :is(.ipsData__meta, .ipsData__desc) {
    margin-top: 2px;
}

@media (max-width: 767px) {
    body.shcForumsSkin :is(.ipsPageHeader--forum-table, .ipsPageHeader--topic-list, .ipsBox--topicHeader) {
        border-radius: 8px;
    }

    body.shcForumsSkin :is(.ipsBox--forum-categories, .ipsBox--forumCategory, .ipsBox--forumsTable) {
        border-radius: 8px;
    }

    body.shcForumsSkin :is(.ipsData--forum-category, .ipsBox--forumsTable .ipsData) > .ipsData__item {
        padding: 11px 10px;
    }

    body.shcForumsSkin .ipsData__last,
    body.shcForumsSkin .ipsData__stats {
        color: #91aac0;
    }

    body.shcForumsSkin #ipsTopicView .ipsEntries--topic {
        gap: 10px;
    }

    body.shcForumsSkin #ipsTopicView .ipsEntry {
        border-radius: 8px;
    }

    body.shcForumsSkin #ipsTopicView .ipsEntry__header,
    body.shcForumsSkin #ipsTopicView .ipsEntry__content,
    body.shcForumsSkin #ipsTopicView .ipsEntry__footer {
        padding-inline: 12px;
    }
}

/* Alpha 13: native IC5 Downloads skin. */
body.shcDownloadsSkin {
    --shc-download-surface: rgb(5 17 30 / 97%);
    --shc-download-surface-2: rgb(8 28 47 / 97%);
    --shc-download-border: #17496f;
    --shc-download-divider: #123a58;
    --shc-download-blue: #21a6ff;
    --shc-download-orange: #ff7200;
    color: var(--shc-global-text);
}

body.shcDownloadsSkin :is(#elDownloadersHeader, .ipsPageHeader--downloadsBrowseHeader, .ipsBox--downloadsCategoryHeader, .ipsPageHeader--downloads-pending) {
    overflow: hidden;
    color: #fff;
    background:
        radial-gradient(circle at 100% 0%, rgb(255 114 0 / 14%), transparent 36%),
        radial-gradient(circle at 0% 0%, rgb(24 143 255 / 15%), transparent 42%),
        linear-gradient(135deg, #0b2f4f 0%, #061523 62%, #04101c 100%);
    border: 1px solid var(--shc-download-border);
    border-radius: 10px;
    box-shadow: 0 16px 34px rgb(0 0 0 / 28%), inset 0 1px rgb(255 255 255 / 4%);
}

body.shcDownloadsSkin :is(#elDownloadersHeader, .ipsPageHeader--downloadsBrowseHeader, .ipsBox--downloadsCategoryHeader, .ipsPageHeader--downloads-pending) .ipsPageHeader__title {
    color: #fff;
    text-shadow: 0 0 18px rgb(33 166 255 / 30%);
}

body.shcDownloadsSkin :is(.ipsPageHeader__desc, .ipsPageHeader .i-color_soft, .ipsPageHeader .ipsType_light) {
    color: #abc2d6 !important;
}

body.shcDownloadsSkin :is(
    .ipsBox--downloadCategories,
    .ipsBox--downloadClubs,
    .ipsBox--downloadsCategoryTable,
    .ipsBox--downloadsFeatured,
    .ipsBox--downloadsWhatsNew,
    .ipsBox--downloadsHighestRated,
    .ipsBox--downloadsMostDownloaded,
    .ipsBox--downloadsFile,
    .ipsBox--downloadsPending,
    .ipsBox--downloadLogTable,
    .ipsBox--commercePurchasedFile,
    [class*="ipsBox--downloadsSubmit"]
) {
    overflow: hidden;
    color: var(--shc-global-text);
    background: linear-gradient(145deg, var(--shc-download-surface-2), var(--shc-download-surface));
    border: 1px solid var(--shc-download-border);
    border-radius: 10px;
    box-shadow: 0 14px 34px rgb(0 0 0 / 25%), inset 0 1px rgb(255 255 255 / 3%);
}

body.shcDownloadsSkin :is(
    .ipsBox--downloadCategories,
    .ipsBox--downloadClubs,
    .ipsBox--downloadsCategoryTable,
    .ipsBox--downloadsFeatured,
    .ipsBox--downloadsWhatsNew,
    .ipsBox--downloadsHighestRated,
    .ipsBox--downloadsMostDownloaded,
    .ipsBox--downloadsPending,
    .ipsBox--downloadLogTable,
    [class*="ipsBox--downloadsSubmit"]
) > .ipsBox__header,
body.shcDownloadsSkin .ipsBox--downloadsFile .ipsBox__header {
    min-height: 48px;
    display: flex;
    align-items: center;
    padding: 11px 16px;
    color: #fff;
    background: linear-gradient(90deg, rgb(13 72 118 / 96%), rgb(6 25 42 / 96%));
    border-bottom: 1px solid #1c5b8b;
    box-shadow: inset 4px 0 var(--shc-download-orange);
    font-weight: 800;
    letter-spacing: .02em;
}

body.shcDownloadsSkin :is(
    .ipsData--download-category,
    .ipsData--downloads-featured-files,
    .ipsData--downloads-whats-new,
    .ipsData--downloads-highest-rated,
    .ipsData--downloads-most-downloaded,
    .ipsData--downloads-widget-file-feed,
    .ipsBox--downloadsCategoryTable .ipsData
) {
    background: transparent;
}

body.shcDownloadsSkin :is(
    .ipsData--download-category,
    .ipsData--downloads-featured-files,
    .ipsData--downloads-whats-new,
    .ipsData--downloads-highest-rated,
    .ipsData--downloads-most-downloaded,
    .ipsData--downloads-widget-file-feed,
    .ipsBox--downloadsCategoryTable .ipsData
) > .ipsData__item {
    position: relative;
    color: var(--shc-global-text);
    background: linear-gradient(90deg, rgb(7 24 40 / 96%), rgb(3 13 23 / 96%));
    border-color: var(--shc-download-divider);
    transition: background .16s ease, border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}

body.shcDownloadsSkin :is(
    .ipsData--download-category,
    .ipsData--downloads-featured-files,
    .ipsData--downloads-whats-new,
    .ipsData--downloads-highest-rated,
    .ipsData--downloads-most-downloaded,
    .ipsData--downloads-widget-file-feed,
    .ipsBox--downloadsCategoryTable .ipsData
) > .ipsData__item:hover {
    z-index: 1;
    background: linear-gradient(90deg, rgb(10 43 72 / 98%), rgb(5 22 38 / 98%));
    border-color: #276b9f;
    box-shadow: inset 4px 0 var(--shc-download-blue), 0 8px 20px rgb(0 0 0 / 18%);
}

body.shcDownloadsSkin .ipsData__image {
    overflow: hidden;
    color: #dff2ff;
    background:
        radial-gradient(circle at 50% 25%, rgb(30 156 255 / 20%), transparent 54%),
        #061828;
    border: 1px solid #1f547d;
    border-radius: 8px;
}

body.shcDownloadsSkin .ipsData__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

body.shcDownloadsSkin .ipsData__item :is(.ipsData__title h3, .ipsData__title h4, .ipsData__title a) {
    color: #f5faff !important;
    font-weight: 760;
}

body.shcDownloadsSkin .ipsData__item:hover .ipsData__title a {
    color: #fff !important;
    text-shadow: 0 0 12px rgb(44 164 255 / 34%);
}

body.shcDownloadsSkin .ipsData__item :is(.ipsData__meta, .ipsData__desc, .ipsData__last-secondary, .ipsData__stats-label, .i-color_soft) {
    color: #93acc2 !important;
}

body.shcDownloadsSkin .ipsData__item :is(.ipsData__last-primary, .ipsData__last-primary a, .ipsData__stats, .ipsData__stats a) {
    color: #dbeeff !important;
}

body.shcDownloadsSkin :is(.ipsIndicator:not(.ipsIndicator--read), [data-ips-unread] .ipsIndicator) {
    color: #fff;
    background: linear-gradient(145deg, #188dff, #0752bd);
    border-color: #2aa8ff;
    box-shadow: 0 0 18px rgb(20 139 255 / 38%);
}

body.shcDownloadsSkin .ipsSubList__item {
    color: #cde6fb;
    background: #071b2d;
    border: 1px solid #1d4a6e;
    border-radius: 999px;
}

body.shcDownloadsSkin .ipsSubList__item a {
    color: #cde6fb !important;
}

body.shcDownloadsSkin .ipsSubList__item:hover {
    background: #0b3458;
    border-color: var(--shc-download-blue);
}

body.shcDownloadsSkin .cFilePrice {
    display: inline-flex;
    align-items: center;
    min-height: 28px;
    padding: 4px 10px;
    color: #fff;
    background: linear-gradient(145deg, #ff8615, #c94700);
    border: 1px solid #ff9d42;
    border-radius: 999px;
    font-weight: 800;
}

body.shcDownloadsSkin :is(.ipsRating, .ipsRating_on) {
    color: #ff9a2e;
}

body.shcDownloadsSkin :is(.ipsButtonBar, .ipsDataFilters) {
    color: #e9f5ff;
    background: #061522;
    border-color: var(--shc-download-divider);
}

body.shcDownloadsSkin .ipsButtonBar {
    padding: 8px 10px;
}

body.shcDownloadsSkin :is(.ipsDataFilters__button, .ipsButtonBar button, .ipsButtonBar a) {
    color: #dceeff !important;
}

body.shcDownloadsSkin :is(.ipsDataFilters__button, .ipsButtonBar button):hover {
    color: #fff !important;
    background: #0a3153;
}

body.shcDownloadsSkin .ipsPagination > li > :is(a, span) {
    color: #dceeff;
    background: #071827;
    border: 1px solid #204867;
    border-radius: 6px;
}

body.shcDownloadsSkin .ipsPagination > li.ipsPagination_active > :is(a, span),
body.shcDownloadsSkin .ipsPagination > li > a:hover {
    color: #fff;
    background: linear-gradient(180deg, #168aff, #0752c5);
    border-color: #2c9eff;
}

/* Individual file page. */
body.shcDownloadsSkin .ipsBox--downloadsFile {
    background:
        radial-gradient(circle at 100% 0%, rgb(255 114 0 / 8%), transparent 34%),
        linear-gradient(145deg, rgb(8 27 45 / 98%), rgb(3 13 23 / 98%));
}

body.shcDownloadsSkin .ipsBox--downloadsFile :is(.ipsPageHeader, .ipsPageHeader__row) {
    color: #fff;
    background-color: transparent;
    border-color: var(--shc-download-divider);
}

body.shcDownloadsSkin .ipsBox--downloadsFile .ipsPageHeader__title,
body.shcDownloadsSkin .ipsBox--downloadsFile .ipsPageHeader__title a {
    color: #fff !important;
}

body.shcDownloadsSkin .ipsCarousel--downloads-file-screenshots {
    padding-block: 14px;
    background: rgb(2 10 18 / 72%);
    border-block: 1px solid var(--shc-download-divider);
}

body.shcDownloadsSkin .ipsCarousel--downloads-file-screenshots .ipsThumb {
    overflow: hidden;
    border: 1px solid #245f8c;
    border-radius: 8px;
    box-shadow: 0 12px 26px rgb(0 0 0 / 28%);
}

body.shcDownloadsSkin .ipsBox--downloadsFile .ipsColumns--lines {
    --i-co: var(--shc-download-divider);
}

body.shcDownloadsSkin .ipsBox--downloadsFile :is(.ipsEntry, .ipsEntry__post, .ipsTabs__panels) {
    color: #eaf4fd;
    background: rgb(2 11 20 / 68%);
    border-color: var(--shc-download-border);
}

body.shcDownloadsSkin .ipsBox--downloadsFile .ipsEntry__post {
    line-height: 1.68;
}

body.shcDownloadsSkin .ipsBox--downloadsFile .ipsEntry__post a {
    color: #43b2ff;
}

body.shcDownloadsSkin .ipsBox--downloadsFile :is(.ipsTabs, .ipsTabs__tab) {
    color: #dceeff;
    background: #061827;
    border-color: var(--shc-download-divider);
}

body.shcDownloadsSkin .ipsBox--downloadsFile .ipsTabs__tab[aria-selected="true"] {
    color: #fff;
    background: #0c3559;
    box-shadow: inset 0 -3px var(--shc-download-orange);
}

body.shcDownloadsSkin :is(.ipsData--file-information, .ipsBox--downloadsFile .ipsColumns__secondary) {
    color: #dceeff;
    background: rgb(5 18 31 / 88%);
    border-color: var(--shc-download-divider);
}

body.shcDownloadsSkin .ipsData--file-information .ipsData__item {
    border-color: var(--shc-download-divider);
}

body.shcDownloadsSkin :is(.ipsEntries--download-comments, .ipsEntries--download-reviews) .ipsEntry {
    overflow: hidden;
    color: #eaf4fd;
    background: linear-gradient(135deg, rgb(8 26 43 / 98%), rgb(3 13 23 / 98%));
    border: 1px solid var(--shc-download-border);
    border-radius: 9px;
    box-shadow: 0 14px 30px rgb(0 0 0 / 22%);
}

body.shcDownloadsSkin :is(.ipsEntries--download-comments, .ipsEntries--download-reviews) .ipsEntry__header {
    color: #fff;
    background: #081e31;
    border-color: var(--shc-download-divider);
}

body.shcDownloadsSkin :is(.ipsForm--file-comment, .ipsForm--submit-file, .ipsForm--bulk-submit-files, .ipsFormWrap--file-comment) {
    color: #eaf4fd;
    background: #04111e;
    border-color: var(--shc-download-border);
    border-radius: 9px;
}

body.shcDownloadsSkin :is(.ipsForm--submit-file, .ipsForm--bulk-submit-files) .ipsFieldRow {
    border-color: var(--shc-download-divider);
}

body.shcDownloadsSkin :is(.ipsForm--submit-file, .ipsForm--bulk-submit-files) :is(.ipsFieldRow__label, .ipsFieldRow__title) {
    color: #f2f8ff;
}

body.shcDownloadsSkin :is(.ipsForm--submit-file, .ipsForm--bulk-submit-files) :is(.ipsFieldRow__desc, .i-color_soft) {
    color: #9eb6ca !important;
}

body.shcDownloadsSkin :is(.ipsInput, .ipsEditor, .ipsUploader, .ipsSelectTree) {
    color: #eff7ff;
    background-color: #03111e;
    border-color: #1b4b70;
}

body.shcDownloadsSkin .ipsMessage--warning {
    color: #ffe6c4;
    background: rgb(80 37 5 / 88%);
    border-color: #c96b13;
}

body.shcDownloadsSkin .ipsMessage--success {
    color: #dfffea;
    background: rgb(6 65 42 / 88%);
    border-color: #1b9b64;
}

body.shcDownloadsCompact :is(
    .ipsData--download-category,
    .ipsData--downloads-featured-files,
    .ipsData--downloads-whats-new,
    .ipsData--downloads-highest-rated,
    .ipsData--downloads-most-downloaded,
    .ipsBox--downloadsCategoryTable .ipsData
) > .ipsData__item {
    padding-block: 9px;
}

body.shcDownloadsCompact .ipsData__image {
    max-width: 78px;
    max-height: 78px;
}

body.shcDownloadsCompact .ipsData__item :is(.ipsData__meta, .ipsData__desc) {
    margin-top: 2px;
}

@media (max-width: 767px) {
    body.shcDownloadsSkin :is(#elDownloadersHeader, .ipsPageHeader--downloadsBrowseHeader, .ipsBox--downloadsCategoryHeader, .ipsPageHeader--downloads-pending) {
        border-radius: 8px;
    }

    body.shcDownloadsSkin :is(
        .ipsBox--downloadCategories,
        .ipsBox--downloadClubs,
        .ipsBox--downloadsCategoryTable,
        .ipsBox--downloadsFeatured,
        .ipsBox--downloadsWhatsNew,
        .ipsBox--downloadsHighestRated,
        .ipsBox--downloadsMostDownloaded,
        .ipsBox--downloadsFile,
        [class*="ipsBox--downloadsSubmit"]
    ) {
        border-radius: 8px;
    }

    body.shcDownloadsSkin :is(.ipsData--download-category, .ipsBox--downloadsCategoryTable .ipsData) > .ipsData__item {
        padding: 11px 10px;
    }

    body.shcDownloadsSkin .ipsData__image {
        width: 64px;
        height: 64px;
    }

    body.shcDownloadsSkin .ipsBox--downloadsFile .ipsColumns--lines {
        display: block;
    }

    body.shcDownloadsSkin .ipsBox--downloadsFile .ipsColumns__secondary {
        border-top: 1px solid var(--shc-download-divider);
    }

    body.shcDownloadsSkin :is(.ipsEntries--download-comments, .ipsEntries--download-reviews) .ipsEntry {
        border-radius: 8px;
    }
}



/* --------------------------------------------------------------------------
   Alpha 14: Activity, Search and Discovery
   -------------------------------------------------------------------------- */
body.shcDiscoverySkin {
    --shc-discovery-blue: #158cff;
    --shc-discovery-orange: #ff7a00;
    --shc-discovery-border: #17486e;
    --shc-discovery-divider: #12344f;
}

body.shcDiscoverySkin :is(
    .ipsBox--activity-stream,
    .ipsBox--searchFilters,
    .ipsBox--promotePublicTable
) {
    overflow: hidden;
    color: #eaf4fd;
    background:
        radial-gradient(circle at 100% 0%, rgb(255 112 0 / 7%), transparent 35%),
        linear-gradient(145deg, rgb(7 24 40 / 98%), rgb(2 11 20 / 98%));
    border: 1px solid var(--shc-discovery-border);
    border-radius: 10px;
    box-shadow: 0 18px 38px rgb(0 0 0 / 24%);
}

body.shcDiscoverySkin :is(
    .ipsBox--activity-stream > .ipsPageHeader,
    .ipsPageHeader--search,
    .ipsPageHeader--promote-public-table
) {
    color: #fff;
    background:
        linear-gradient(90deg, rgb(10 47 79 / 96%), rgb(4 18 31 / 96%) 70%, rgb(80 34 3 / 82%));
    border: 1px solid var(--shc-discovery-border);
    border-radius: 10px;
    box-shadow: inset 0 -2px rgb(255 122 0 / 62%), 0 14px 28px rgb(0 0 0 / 20%);
}

body.shcDiscoverySkin :is(
    .ipsBox--activity-stream > .ipsPageHeader,
    .ipsPageHeader--search,
    .ipsPageHeader--promote-public-table
) :is(.ipsPageHeader__title, .ipsPageHeader__title a) {
    color: #fff !important;
}

body.shcDiscoverySkin :is(
    .ipsBox--activity-stream > .ipsPageHeader,
    .ipsPageHeader--search,
    .ipsPageHeader--promote-public-table
) .ipsPageHeader__desc {
    color: #a9c5dc !important;
}

body.shcDiscoverySkin :is(.ipsStream, #elSearch_main .ipsStream) {
    color: #e9f4fd;
    background: transparent;
}

body.shcDiscoverySkin .ipsStream__time {
    top: var(--i-sticky-offset, 0px);
    color: #dcefff;
    background: linear-gradient(90deg, #071b2d, #0a2944);
    border-block: 1px solid var(--shc-discovery-divider);
    box-shadow: inset 3px 0 var(--shc-discovery-orange);
}

body.shcDiscoverySkin .ipsStream__time h2 {
    color: #fff;
}

body.shcDiscoverySkin .ipsStreamItem {
    margin-inline: 10px;
    color: #eaf4fd;
    background: linear-gradient(135deg, rgb(8 27 45 / 95%), rgb(3 13 23 / 95%));
    border: 1px solid var(--shc-discovery-divider);
    border-radius: 9px;
    box-shadow: 0 10px 22px rgb(0 0 0 / 18%);
}

body.shcDiscoverySkin .ipsStreamItem + .ipsStreamItem {
    margin-top: 9px;
}

body.shcDiscoverySkin .ipsStreamItem:hover {
    border-color: #237bb5;
    background: linear-gradient(135deg, rgb(11 38 63 / 98%), rgb(4 17 29 / 98%));
}

body.shcDiscoverySkin .ipsStreamItem__iconCell {
    background: rgb(2 12 21 / 48%);
}

body.shcDiscoverySkin .ipsStreamItem__iconCell::before,
body.shcDiscoverySkin .ipsStreamItem__iconCell::after {
    background: #19567f;
}

body.shcDiscoverySkin .ipsStreamItem__mainCell {
    border-color: var(--shc-discovery-divider);
}

body.shcDiscoverySkin :is(.ipsStreamItem__title, .ipsStreamItem__title a) {
    color: #fff !important;
}

body.shcDiscoverySkin :is(.ipsStreamItem__summary, .ipsStreamItem__summary a, .ipsStreamItem__meta, .ipsStreamItem__meta a) {
    color: #aac4d8 !important;
}

body.shcDiscoverySkin .ipsStreamItem__content {
    color: #dcebf7;
    background: rgb(2 12 21 / 55%);
    border: 1px solid #123b5b;
    border-radius: 7px;
}

body.shcDiscoverySkin .ipsStreamItem__content a,
body.shcDiscoverySkin .ipsRichText a {
    color: #43b2ff;
}

body.shcDiscoverySkin .ipsStream__loadMore button {
    color: #fff;
    background: linear-gradient(180deg, #0e65bd, #083b72);
    border: 1px solid #248de0;
    border-radius: 7px;
}

body.shcDiscoverySkin .ipsStream__loadMore button:hover {
    background: linear-gradient(180deg, #168cff, #0754b8);
}

body.shcDiscoverySkin :is(#elStreamFilterForm, .cStreamForm, .ipsBox--searchFilters form) {
    color: #e8f4fd;
    background: #041421;
}

body.shcDiscoverySkin :is(#elStreamFilterForm, .cStreamForm, .ipsBox--searchFilters) :is(.ipsFieldRow, .ipsFieldRow__section) {
    border-color: var(--shc-discovery-divider);
}

body.shcDiscoverySkin :is(#elStreamFilterForm, .cStreamForm, .ipsBox--searchFilters) :is(.ipsFieldRow__label, .ipsFieldRow__title, label, legend) {
    color: #f3f8fc;
}

body.shcDiscoverySkin :is(#elStreamFilterForm, .cStreamForm, .ipsBox--searchFilters) :is(.ipsFieldRow__desc, .i-color_soft) {
    color: #9fb9cd !important;
}

body.shcDiscoverySkin :is(#elStreamFilterForm, .cStreamForm, .ipsBox--searchFilters) :is(.ipsInput, input, select, textarea) {
    color: #edf7ff;
    background-color: #03111d;
    border-color: #1b4e74;
}

body.shcDiscoverySkin :is(.cStreamForm_list, .ipsSideMenu__list) .ipsSideMenu_item {
    color: #cfe7fa;
    border-radius: 6px;
}

body.shcDiscoverySkin :is(.cStreamForm_list, .ipsSideMenu__list) .ipsSideMenu_item:hover,
body.shcDiscoverySkin :is(.cStreamForm_list, .ipsSideMenu__list) .ipsSideMenu_item[aria-current="true"],
body.shcDiscoverySkin :is(.cStreamForm_list, .ipsSideMenu__list) .ipsSideMenu_item_active {
    color: #fff;
    background: #0a3458;
    box-shadow: inset 3px 0 var(--shc-discovery-orange);
}

body.shcDiscoverySkin :is(.ipsButtonBar, .ipsDataFilters) {
    color: #eaf5fd;
    background: #061522;
    border-color: var(--shc-discovery-divider);
}

body.shcDiscoverySkin :is(.ipsDataFilters__button, .ipsButtonBar button, .ipsButtonBar a) {
    color: #dceeff !important;
}

body.shcDiscoverySkin .ipsPagination > li > :is(a, span) {
    color: #dceeff;
    background: #071827;
    border: 1px solid #204867;
    border-radius: 6px;
}

body.shcDiscoverySkin .ipsPagination > li.ipsPagination_active > :is(a, span),
body.shcDiscoverySkin .ipsPagination > li > a:hover {
    color: #fff;
    background: linear-gradient(180deg, #168aff, #0752c5);
    border-color: #2c9eff;
}

body.shcDiscoverySkin .ipsBox--promotePublicTable .ipsData--featured-content {
    padding: 12px;
    gap: 12px;
    background: transparent;
}

body.shcDiscoverySkin .ipsData--featured-content > .ipsData__item,
body.shcDiscoverySkin .cPromoted {
    overflow: hidden;
    color: #eaf4fd;
    background: linear-gradient(145deg, rgb(9 30 50 / 98%), rgb(3 13 23 / 98%));
    border: 1px solid var(--shc-discovery-border);
    border-radius: 9px;
    box-shadow: 0 13px 28px rgb(0 0 0 / 22%);
}

body.shcDiscoverySkin .ipsData--featured-content > .ipsData__item:hover,
body.shcDiscoverySkin .cPromoted:hover {
    border-color: #2788c7;
    transform: translateY(-1px);
}

body.shcDiscoverySkin .ipsData--featured-content .ipsData__image {
    background: #03111d;
    border-bottom: 1px solid var(--shc-discovery-divider);
}

body.shcDiscoverySkin .ipsData--featured-content :is(.ipsData__title, .ipsData__title a, .cPromotedTitle, .cPromotedTitle a) {
    color: #fff !important;
}

body.shcDiscoverySkin .ipsData--featured-content :is(.ipsData__desc, .ipsData__meta) {
    color: #abc4d7;
}

body.shcDiscoverySkin .ipsEmptyMessage {
    color: #b8d0e2;
    background: #061827;
    border: 1px dashed #245879;
}

body.shcDiscoveryCompact .ipsStreamItem__mainCell {
    padding-block: .8em;
}

body.shcDiscoveryCompact .ipsStreamItem__iconCell {
    --_icon-width: 4em;
}

body.shcDiscoveryCompact .ipsData--featured-content > .ipsData__item {
    min-height: 0;
}

@media (max-width: 767px) {
    body.shcDiscoverySkin :is(.ipsBox--activity-stream, .ipsBox--searchFilters, .ipsBox--promotePublicTable, .ipsPageHeader--search, .ipsPageHeader--promote-public-table) {
        border-radius: 8px;
    }

    body.shcDiscoverySkin .ipsStreamItem {
        margin-inline: 6px;
        border-radius: 8px;
    }

    body.shcDiscoverySkin .ipsStreamItem__iconCell {
        flex-basis: 52px;
    }

    body.shcDiscoverySkin .ipsBox--promotePublicTable .ipsData--featured-content {
        padding: 8px;
        gap: 8px;
    }
}


/* --------------------------------------------------------------------------
   Alpha 15: Store and Client Area
   -------------------------------------------------------------------------- */
body.shcCommerceSkin {
    --shc-commerce-blue: #168cff;
    --shc-commerce-orange: #ff7900;
    --shc-commerce-border: #174d73;
    --shc-commerce-divider: #123750;
    --shc-commerce-panel: #061725;
    --shc-commerce-panel-dark: #020d17;
}

body.shcCommerceSkin :is(
    .ipsBox--commerceCategories,
    .ipsBox--commerceFeaturedProducts,
    .ipsBox--commerceNewProducts,
    .ipsBox--commercePopularProducts,
    .ipsBox--commerceSubcategories,
    .ipsBox--commerceCategoryContents,
    .ipsBox--commercePackage,
    .ipsBox--cart,
    .ipsBox--checkoutWrapper,
    .ipsBox--commerceAddresses,
    .ipsBox--commerceInvoices,
    .ipsBox--commerceDonations,
    .ipsBox--cmsClientInfo,
    .ipsBox--cmsAlternativeClients
) {
    overflow: hidden;
    color: #eaf5fd;
    background:
        radial-gradient(circle at 100% 0%, rgb(255 121 0 / 7%), transparent 34%),
        linear-gradient(145deg, rgb(7 25 41 / 98%), rgb(2 11 20 / 98%));
    border: 1px solid var(--shc-commerce-border);
    border-radius: 10px;
    box-shadow: 0 18px 38px rgb(0 0 0 / 24%);
}

body.shcCommerceSkin :is(
    .ipsBox--commerceCategories,
    .ipsBox--commerceFeaturedProducts,
    .ipsBox--commerceNewProducts,
    .ipsBox--commercePopularProducts,
    .ipsBox--commerceSubcategories,
    .ipsBox--commerceCategoryContents,
    .ipsBox--commercePackage,
    .ipsBox--commerceAddresses,
    .ipsBox--commerceInvoices,
    .ipsBox--commerceDonations,
    .ipsBox--cmsClientInfo,
    .ipsBox--cmsAlternativeClients
) > :is(.ipsBox__header, header.ipsBox__header) {
    color: #fff;
    background: linear-gradient(90deg, #0a3458, #061a2c 70%, #512500);
    border-bottom: 1px solid #205b82;
    box-shadow: inset 0 -2px rgb(255 121 0 / 55%);
}

body.shcCommerceSkin :is(
    .ipsPageHeader,
    .ipsPageHeader--padding,
    .ipsBox--commercePackage .ipsPageHeader
) {
    color: #fff;
}

body.shcCommerceSkin :is(.ipsPageHeader__title, .ipsPageHeader__title a, .ipsBox__header, .ipsBox__header a) {
    color: #fff !important;
}

body.shcCommerceSkin :is(.ipsPageHeader__desc, .ipsData__desc, .ipsData__meta, .i-color_soft) {
    color: #a9c4d8 !important;
}

body.shcCommerceSkin :is(
    .ipsData--commerceCategories,
    .ipsData--commerce-products,
    .ipsData--commerce-featured,
    .ipsData--commerce-new,
    .ipsData--commerce-popular,
    .ipsData--commerce-related-products
) {
    background: transparent;
}

body.shcCommerceSkin :is(
    .ipsData--commerceCategories,
    .ipsData--commerce-products,
    .ipsData--commerce-featured,
    .ipsData--commerce-new,
    .ipsData--commerce-popular,
    .ipsData--commerce-related-products
) > .ipsData__item {
    overflow: hidden;
    color: #eaf5fd;
    background: linear-gradient(145deg, rgb(9 30 49 / 98%), rgb(3 13 23 / 98%));
    border: 1px solid var(--shc-commerce-divider);
    border-radius: 9px;
    box-shadow: 0 12px 25px rgb(0 0 0 / 20%);
    transition: border-color .18s ease, transform .18s ease, box-shadow .18s ease;
}

body.shcCommerceSkin :is(
    .ipsData--commerceCategories,
    .ipsData--commerce-products,
    .ipsData--commerce-featured,
    .ipsData--commerce-new,
    .ipsData--commerce-popular,
    .ipsData--commerce-related-products
) > .ipsData__item:hover {
    border-color: #288bd0;
    box-shadow: 0 15px 30px rgb(0 0 0 / 28%);
    transform: translateY(-2px);
}

body.shcCommerceSkin :is(.ipsData--commerceCategories, .ipsData--commerce-products) .ipsData__image {
    overflow: hidden;
    background: #03111d;
    border-bottom: 1px solid var(--shc-commerce-divider);
}

body.shcCommerceSkin :is(.ipsData--commerceCategories, .ipsData--commerce-products) .ipsData__image img {
    transition: transform .25s ease, filter .25s ease;
}

body.shcCommerceSkin :is(.ipsData--commerceCategories, .ipsData--commerce-products) .ipsData__item:hover .ipsData__image img {
    filter: saturate(1.08) contrast(1.04);
    transform: scale(1.025);
}

body.shcCommerceSkin :is(.ipsData__title, .ipsData__title a, .cNexusProduct_header h1, .cNexusProduct_header h1 a) {
    color: #fff !important;
}

body.shcCommerceSkin :is(.ipsCommercePrice, .cNexusPrice, .cFilePrice) {
    color: #ff981f !important;
    font-weight: 750;
}

body.shcCommerceSkin :is(.ipsCommercePrice__tax, .cNexusPrice_tax) {
    color: #9fb8cb !important;
    font-weight: 500;
}

body.shcCommerceSkin .ipsCommerceStock--in {
    color: #52e0a0;
}

body.shcCommerceSkin .ipsCommerceStock--out {
    color: #ff7d72;
}

body.shcCommerceSkin :is(.ipsBadge--positive, .cNexusOrderBadge_paid, .cNexusOrderBadge_active) {
    border-color: #1f9f6f;
}

body.shcCommerceSkin .cNexusProduct_primaryImage {
    overflow: hidden;
    background: #020d17;
    border: 1px solid #184664;
    border-radius: 9px;
}

body.shcCommerceSkin .cNexusProduct_images :is(.ipsImage, img) {
    border-radius: 7px;
}

body.shcCommerceSkin :is(.ipsButtonBar, .ipsDataFilters) {
    color: #eaf5fd;
    background: #061522;
    border-color: var(--shc-commerce-divider);
}

body.shcCommerceSkin :is(.ipsDataFilters__button, .ipsButtonBar button, .ipsButtonBar a) {
    color: #dceeff !important;
}

body.shcCommerceSkin .ipsSideMenu_item {
    color: #cfe7fa;
    border-radius: 6px;
}

body.shcCommerceSkin .ipsSideMenu_item:hover,
body.shcCommerceSkin .ipsSideMenu_item[aria-current="true"],
body.shcCommerceSkin .ipsSideMenu_item_active {
    color: #fff;
    background: #0a3458;
    box-shadow: inset 3px 0 var(--shc-commerce-orange);
}

body.shcCommerceSkin .ipsPagination > li > :is(a, span) {
    color: #dceeff;
    background: #071827;
    border: 1px solid #204867;
    border-radius: 6px;
}

body.shcCommerceSkin .ipsPagination > li.ipsPagination_active > :is(a, span),
body.shcCommerceSkin .ipsPagination > li > a:hover {
    color: #fff;
    background: linear-gradient(180deg, #168aff, #0752c5);
    border-color: #2c9eff;
}

/* Cart and order summaries */
body.shcCommerceSkin :is(.ipsBox--cart, .ipsBox--checkoutWrapper) > :is(header, .i-border-bottom_3) {
    color: #fff;
    background: linear-gradient(90deg, #092e4e, #051827 68%, #4a2200);
    border-color: #1d577e !important;
    box-shadow: inset 0 -2px rgb(255 121 0 / 55%);
}

body.shcCommerceSkin :is(.ipsData--cart, .ipsData--order-review, .ipsData--invoices, .cNexusOrderList, .cNexusPurchaseList) {
    color: #eaf5fd;
    background: transparent;
}

body.shcCommerceSkin :is(.ipsData--cart, .ipsData--order-review, .ipsData--invoices, .cNexusOrderList) > .ipsData__item,
body.shcCommerceSkin .cNexusPurchaseList > * {
    color: #eaf5fd;
    background: linear-gradient(135deg, rgb(8 27 44 / 96%), rgb(3 13 22 / 96%));
    border-color: var(--shc-commerce-divider);
}

body.shcCommerceSkin .cNexusCart_totals,
body.shcCommerceSkin .cNexusCheckout_subtotal,
body.shcCommerceSkin .cNexusCheckout_coupon {
    color: #eaf5fd;
    background: #061827;
    border-color: var(--shc-commerce-divider);
}

body.shcCommerceSkin .cNexusCart_totals .cNexusPrice,
body.shcCommerceSkin .cNexusCheckout_subtotal .cNexusPrice {
    color: #ff9b28 !important;
}

/* Checkout forms */
body.shcCommerceSkin :is(
    .ipsForm--customer-info,
    .ipsForm--payment,
    .ipsForm--coupon,
    .ipsBox--checkoutWrapper form
) {
    color: #eaf5fd;
    background: var(--shc-commerce-panel-dark);
}

body.shcCommerceSkin :is(
    .ipsForm--customer-info,
    .ipsForm--payment,
    .ipsForm--coupon,
    .ipsBox--checkoutWrapper form
) :is(.ipsFieldRow, .ipsSubmitRow, .i-border-top_3, .i-border-bottom_3) {
    border-color: var(--shc-commerce-divider) !important;
}

body.shcCommerceSkin :is(
    .ipsForm--customer-info,
    .ipsForm--payment,
    .ipsForm--coupon,
    .ipsBox--checkoutWrapper form
) :is(.ipsFieldRow__label, .ipsFieldRow__title, label, legend) {
    color: #f4f9fd;
}

body.shcCommerceSkin :is(
    .ipsForm--customer-info,
    .ipsForm--payment,
    .ipsForm--coupon,
    .ipsBox--checkoutWrapper form
) :is(.ipsFieldRow__desc, .i-color_soft) {
    color: #9fb9cc !important;
}

body.shcCommerceSkin :is(
    .ipsForm--customer-info,
    .ipsForm--payment,
    .ipsForm--coupon,
    .ipsBox--checkoutWrapper form
) :is(.ipsInput, input, select, textarea) {
    color: #edf8ff;
    background-color: #03111d;
    border-color: #1b4f75;
}

body.shcCommerceSkin :is(
    .ipsForm--customer-info,
    .ipsForm--payment,
    .ipsForm--coupon,
    .ipsBox--checkoutWrapper form
) :is(.ipsInput, input, select, textarea):focus {
    border-color: #248ee0;
    box-shadow: 0 0 0 3px rgb(22 140 255 / 15%);
}

body.shcCommerceSkin .ipsButton--primary {
    color: #fff;
    background: linear-gradient(180deg, #168cff, #0751c2);
    border-color: #2799ff;
    box-shadow: inset 0 1px rgb(255 255 255 / 18%), 0 8px 18px rgb(0 92 190 / 22%);
}

body.shcCommerceSkin .ipsButton--primary:hover {
    background: linear-gradient(180deg, #2a9bff, #0964dc);
}

body.shcCommerceSkin :is(.ipsButton--inherit, .ipsButton--soft, .ipsButton--secondary) {
    color: #e5f3fd;
    background: #071b2d;
    border-color: #245675;
}

body.shcCommerceSkin :is(.ipsButton--inherit, .ipsButton--soft, .ipsButton--secondary):hover {
    color: #fff;
    background: #0a3152;
    border-color: #2c81b7;
}

/* Client area */
body.shcCommerceSkin :is(
    .ipsGrid--commerce-address,
    .ipsGrid--commerce-other-addresses,
    .cNexusCards,
    .cNexusPurchaseList,
    .cNexusOrderList_items
) > * {
    color: #eaf5fd;
    background: linear-gradient(145deg, rgb(8 28 46 / 98%), rgb(3 13 23 / 98%));
    border-color: var(--shc-commerce-divider);
    border-radius: 8px;
}

body.shcCommerceSkin :is(.cNexusLicenseKey, code) {
    color: #ffd39b;
    background: #020b13;
    border: 1px solid #28455a;
    border-radius: 5px;
}

body.shcCommerceSkin :is(.ipsEmptyMessage, .ipsBox.ipsEmptyMessage) {
    color: #b8d0e2;
    background: #061827;
    border: 1px dashed #245879;
}

body.shcCommerceSkin :is(.ipsMessage--info, .ipsMessage--general) {
    color: #cfeaff;
    background: #082841;
    border-color: #1c618e;
}

body.shcCommerceSkin .ipsMessage--success {
    color: #d8ffed;
    background: #073527;
    border-color: #16835f;
}

body.shcCommerceSkin .ipsMessage--warning {
    color: #ffe6bd;
    background: #402407;
    border-color: #a65d10;
}

body.shcCommerceSkin .ipsMessage--error {
    color: #ffd8d5;
    background: #3b1214;
    border-color: #a84247;
}

body.shcCommerceCompact :is(
    .ipsData--commerce-products,
    .ipsData--commerce-featured,
    .ipsData--commerce-new,
    .ipsData--commerce-popular
) > .ipsData__item {
    min-height: 0;
}

body.shcCommerceCompact .ipsData--commerce-products .ipsData__content {
    padding-block: .75em;
}

body.shcCommerceCompact :is(.cNexusPurchaseList, .cNexusOrderList) .ipsData__item {
    padding-block: .65em;
}

@media (max-width: 767px) {
    body.shcCommerceSkin :is(
        .ipsBox--commerceCategories,
        .ipsBox--commerceFeaturedProducts,
        .ipsBox--commerceNewProducts,
        .ipsBox--commercePopularProducts,
        .ipsBox--commerceSubcategories,
        .ipsBox--commerceCategoryContents,
        .ipsBox--commercePackage,
        .ipsBox--cart,
        .ipsBox--checkoutWrapper,
        .ipsBox--commerceAddresses,
        .ipsBox--commerceInvoices,
        .ipsBox--commerceDonations,
        .ipsBox--cmsClientInfo,
        .ipsBox--cmsAlternativeClients
    ) {
        border-radius: 8px;
    }

    body.shcCommerceSkin .cNexusProduct_header {
        gap: 12px;
    }

    body.shcCommerceSkin :is(.ipsData--cart, .ipsData--order-review) .ipsData__item {
        padding: 10px;
    }

    body.shcCommerceSkin :is(.ipsGrid--commerce-address, .ipsGrid--commerce-other-addresses) {
        grid-template-columns: minmax(0, 1fr);
    }
}


/* --------------------------------------------------------------------------
   Alpha 16: Profiles, Staff, Online Users and Leaderboard
   -------------------------------------------------------------------------- */
body.shcCommunitySkin {
    --shc-community-blue: #168cff;
    --shc-community-orange: #ff7900;
    --shc-community-border: #174d73;
    --shc-community-divider: #123750;
    --shc-community-panel: #061725;
    --shc-community-panel-dark: #020d17;
}

body.shcCommunitySkin :is(
    .ipsProfileContainer,
    .ipsProfile,
    .cStaffDirectory,
    .ipsBox--onlineUsersList,
    .ipsBox--leaderboard
) {
    color: #eaf5fd;
}

body.shcCommunitySkin :is(
    .ipsProfile__aside .ipsWidget,
    .ipsTabs__panels--profile > .ipsTabs__panel > .ipsBox,
    .ipsTabs__panels--profile .ipsBox,
    .cStaffDirectory,
    .ipsBox--onlineUsersList,
    .ipsBox--leaderboard
) {
    overflow: hidden;
    color: #eaf5fd;
    background:
        radial-gradient(circle at 100% 0%, rgb(255 121 0 / 7%), transparent 34%),
        linear-gradient(145deg, rgb(7 25 41 / 98%), rgb(2 11 20 / 98%));
    border: 1px solid var(--shc-community-border);
    border-radius: 10px;
    box-shadow: 0 18px 38px rgb(0 0 0 / 24%);
}

body.shcCommunitySkin :is(
    .ipsProfile__aside .ipsWidget__header,
    .ipsTabs__panels--profile .ipsBox__header,
    .cStaffDirectory > .ipsBox__header,
    .ipsBox--onlineUsersList > .ipsBox__header,
    .ipsBox--leaderboard > .ipsBox__header
) {
    color: #fff;
    background: linear-gradient(90deg, #0a3458, #061a2c 70%, #512500);
    border-bottom: 1px solid #205b82;
    box-shadow: inset 0 -2px rgb(255 121 0 / 55%);
}

body.shcCommunitySkin :is(
    .ipsPageHeader__title,
    .ipsPageHeader__title a,
    .ipsBox__header,
    .ipsBox__header a,
    .ipsData__title,
    .ipsData__title a,
    .ipsTitle,
    .ipsTitle a
) {
    color: #fff !important;
}

body.shcCommunitySkin :is(.ipsPageHeader__desc, .ipsData__desc, .ipsData__meta, .i-color_soft) {
    color: #a9c4d8 !important;
}

/* Profile header, cover and tabs */
body.shcCommunitySkin .ipsProfileContainer > .ipsCoverPhoto {
    overflow: hidden;
    border: 1px solid #246b96;
    border-radius: 12px 12px 0 0;
    box-shadow: 0 18px 40px rgb(0 0 0 / 28%), inset 0 -3px rgb(255 121 0 / 58%);
}

body.shcCommunitySkin .ipsProfileContainer > .ipsCoverPhoto::after {
    content: '';
    position: absolute;
    inset: 0;
    pointer-events: none;
    background: linear-gradient(90deg, rgb(5 73 135 / 18%), transparent 48%, rgb(255 121 0 / 14%));
}

body.shcCommunitySkin .ipsCoverPhoto__container {
    background-color: #03111d;
}

body.shcCommunitySkin :is(.ipsCoverPhoto__title, .ipsCoverPhoto__title a, .ipsCoverPhoto__statValue, .ipsCoverPhoto__statValue a) {
    color: #fff !important;
    text-shadow: 0 2px 8px rgb(0 0 0 / 88%);
}

body.shcCommunitySkin .ipsCoverPhoto__statTitle {
    color: #bad2e4;
}

body.shcCommunitySkin .ipsProfile {
    gap: 16px;
    padding-block: 16px;
}

body.shcCommunitySkin .ipsProfile__aside {
    gap: 12px;
}

body.shcCommunitySkin .ipsTabs--profile,
body.shcCommunitySkin #ipsTabs_leaderboard {
    overflow: hidden;
    color: #dceeff;
    background: #04131f;
    border: 1px solid #174d73;
    border-radius: 9px;
}

body.shcCommunitySkin :is(.ipsTabs--profile, #ipsTabs_leaderboard) .ipsTabs__tab {
    color: #bad3e6;
    border-color: transparent;
}

body.shcCommunitySkin :is(.ipsTabs--profile, #ipsTabs_leaderboard) .ipsTabs__tab:hover {
    color: #fff;
    background: #082842;
}

body.shcCommunitySkin :is(.ipsTabs--profile, #ipsTabs_leaderboard) .ipsTabs__tab[aria-selected='true'] {
    color: #fff;
    background: linear-gradient(180deg, #168cff, #0751c2);
    box-shadow: inset 0 -2px var(--shc-community-orange);
}

body.shcCommunitySkin .ipsTabs__panels--profile {
    color: #eaf5fd;
}

body.shcCommunitySkin .ipsTabs__panels--profile :is(.ipsStreamItem, .ipsData__item) {
    color: #eaf5fd;
    background: linear-gradient(135deg, rgb(8 27 44 / 96%), rgb(3 13 22 / 96%));
    border-color: var(--shc-community-divider);
}

body.shcCommunitySkin .ipsData--profileVisitors > .ipsData__item {
    border-color: var(--shc-community-divider);
}

body.shcCommunitySkin .ipsProfile__aside :is(.ipsWidget__content, .ipsWidget__padding) {
    color: #dcecf8;
    background: rgb(2 13 23 / 74%);
}

/* Staff directory */
body.shcCommunitySkin .ipsPageHeader--staff {
    color: #fff;
    background: linear-gradient(100deg, rgb(8 39 66 / 94%), rgb(4 17 29 / 96%) 68%, rgb(69 31 0 / 92%));
    border: 1px solid #1b567e;
    border-radius: 10px;
    box-shadow: inset 0 -2px rgb(255 121 0 / 55%);
}

body.shcCommunitySkin .cStaffDirectory + .cStaffDirectory {
    margin-top: 16px;
}

body.shcCommunitySkin :is(
    .ipsGrid--staff,
    .ipsGrid--staff-directory-full,
    .ipsGrid--staff-directory-half
) > * {
    color: #eaf5fd;
    background: linear-gradient(145deg, rgb(9 30 49 / 98%), rgb(3 13 23 / 98%));
    border-color: var(--shc-community-divider);
    transition: border-color .18s ease, transform .18s ease, box-shadow .18s ease;
}

body.shcCommunitySkin :is(
    .ipsGrid--staff,
    .ipsGrid--staff-directory-full,
    .ipsGrid--staff-directory-half
) > *:hover {
    border-color: #288bd0;
    box-shadow: 0 14px 28px rgb(0 0 0 / 26%);
    transform: translateY(-2px);
}

body.shcCommunitySkin .cStaffDirectory [data-ips-hook='staffInfo'] a {
    color: #8fd0ff;
}

body.shcCommunitySkin .cStaffDirectory [data-ips-hook='staffInfo'] a:hover {
    color: #ffac45;
}

/* Online users */
body.shcCommunitySkin .ipsBox--onlineUsersList .ipsBox__content {
    background: transparent;
}

body.shcCommunitySkin .ipsGrid--online-users {
    background: transparent;
}

body.shcCommunitySkin .ipsGrid--online-users > .cOnlineUser {
    color: #eaf5fd;
    background: linear-gradient(145deg, rgb(9 30 49 / 98%), rgb(3 13 23 / 98%));
    border-color: var(--shc-community-divider);
    transition: border-color .18s ease, transform .18s ease, box-shadow .18s ease;
}

body.shcCommunitySkin .ipsGrid--online-users > .cOnlineUser:hover {
    border-color: #288bd0;
    box-shadow: 0 14px 28px rgb(0 0 0 / 26%);
    transform: translateY(-2px);
}

body.shcCommunitySkin .cOnlineUser .ipsUserPhoto {
    border: 2px solid #1b6b9c;
    box-shadow: 0 0 0 3px rgb(8 36 59 / 76%), 0 8px 20px rgb(0 0 0 / 30%);
}

/* Leaderboard and top members */
body.shcCommunitySkin .ipsBox--leaderboard .ipsTabs__panels {
    background: transparent;
}

body.shcCommunitySkin .ipsBox--leaderboard :is(.ipsData__item, .ipsStreamItem) {
    color: #eaf5fd;
    background: linear-gradient(145deg, rgb(9 30 49 / 98%), rgb(3 13 23 / 98%));
    border-color: var(--shc-community-divider);
}

body.shcCommunitySkin .ipsBox--leaderboard .ipsData__item:hover {
    border-color: #288bd0;
}

body.shcCommunitySkin .ipsLeaderboard_trophy {
    color: #ffc45f;
    filter: drop-shadow(0 2px 7px rgb(255 121 0 / 35%));
}

body.shcCommunitySkin .ipsBox--leaderboard .ipsCoverPhoto {
    overflow: hidden;
    border: 1px solid #1d587e;
    border-radius: 8px 8px 0 0;
}

body.shcCommunitySkin .ipsBox--leaderboard .cUserHovercard__grid {
    color: #eaf5fd;
    background: #04131f;
    border: 1px solid #143d59;
    border-top: 0;
    border-radius: 0 0 8px 8px;
}

/* Shared controls */
body.shcCommunitySkin :is(.ipsButtonBar, .ipsDataFilters) {
    color: #eaf5fd;
    background: #061522;
    border-color: var(--shc-community-divider);
}

body.shcCommunitySkin :is(.ipsDataFilters__button, .ipsButtonBar button, .ipsButtonBar a) {
    color: #dceeff !important;
}

body.shcCommunitySkin .ipsPagination > li > :is(a, span) {
    color: #dceeff;
    background: #071827;
    border: 1px solid #204867;
    border-radius: 6px;
}

body.shcCommunitySkin .ipsPagination > li.ipsPagination_active > :is(a, span),
body.shcCommunitySkin .ipsPagination > li > a:hover {
    color: #fff;
    background: linear-gradient(180deg, #168aff, #0752c5);
    border-color: #2c9eff;
}

body.shcCommunitySkin .ipsButton--primary {
    color: #fff;
    background: linear-gradient(180deg, #168cff, #0751c2);
    border-color: #2799ff;
    box-shadow: inset 0 1px rgb(255 255 255 / 18%), 0 8px 18px rgb(0 92 190 / 22%);
}

body.shcCommunitySkin .ipsButton--primary:hover {
    background: linear-gradient(180deg, #2a9bff, #0964dc);
}

body.shcCommunitySkin :is(.ipsButton--inherit, .ipsButton--soft, .ipsButton--secondary) {
    color: #e5f3fd;
    background: #071b2d;
    border-color: #245675;
}

body.shcCommunitySkin :is(.ipsButton--inherit, .ipsButton--soft, .ipsButton--secondary):hover {
    color: #fff;
    background: #0a3152;
    border-color: #2c81b7;
}

body.shcCommunitySkin :is(.ipsEmptyMessage, .ipsBox.ipsEmptyMessage) {
    color: #b8d0e2;
    background: #061827;
    border: 1px dashed #245879;
}

body.shcCommunityCompact .ipsProfile {
    gap: 10px;
    padding-block: 10px;
}

body.shcCommunityCompact .ipsProfile__aside .ipsWidget__content,
body.shcCommunityCompact .ipsTabs__panels--profile .ipsData__item,
body.shcCommunityCompact .cStaffDirectory :is(.ipsGrid--staff, .ipsGrid--staff-directory-full, .ipsGrid--staff-directory-half) > *,
body.shcCommunityCompact .ipsGrid--online-users > .cOnlineUser,
body.shcCommunityCompact .ipsBox--leaderboard .ipsData__item {
    padding-block: .7em !important;
}

body.shcCommunityCompact .ipsGrid--online-users {
    --i-basis: 220px;
}

@media (max-width: 767px) {
    body.shcCommunitySkin .ipsProfileContainer > .ipsCoverPhoto,
    body.shcCommunitySkin :is(
        .ipsProfile__aside .ipsWidget,
        .ipsTabs__panels--profile > .ipsTabs__panel > .ipsBox,
        .cStaffDirectory,
        .ipsBox--onlineUsersList,
        .ipsBox--leaderboard
    ) {
        border-radius: 8px;
    }

    body.shcCommunitySkin .ipsProfile {
        gap: 10px;
    }

    body.shcCommunitySkin :is(
        .ipsGrid--staff,
        .ipsGrid--staff-directory-full,
        .ipsGrid--staff-directory-half,
        .ipsGrid--online-users
    ) {
        grid-template-columns: minmax(0, 1fr);
    }

    body.shcCommunitySkin .ipsTabs--profile .ipsTabs__tab,
    body.shcCommunitySkin #ipsTabs_leaderboard .ipsTabs__tab {
        min-width: max-content;
    }
}

/* --------------------------------------------------------------------------
   Alpha 17: Account, messaging and system-page skin
   -------------------------------------------------------------------------- */
body.shcSystemAssets,
body.shcSystemSkin {
    --shc-system-surface: #04131f;
    --shc-system-surface-2: #071c2d;
    --shc-system-surface-3: #0a2942;
    --shc-system-border: #174d73;
    --shc-system-border-soft: #103955;
    --shc-system-blue: #168cff;
    --shc-system-orange: #ff7900;
    --shc-system-text: #eaf5fd;
    --shc-system-muted: #9db7ca;
}

body.shcSystemSkin :is(
    .ipsBox--messenger,
    .ipsBox--messengerSubmit,
    .ipsBox--notifications,
    .ipsBox--notificationsTable,
    .ipsBox--notificationOptions,
    .ipsBox--notificationSubscriptions,
    .ipsBox--notificationReceive,
    .ipsBox--notificationSettingsType,
    .ipsBox--secureAccount,
    .ipsBox--changePassword,
    .ipsBox--oauthApps,
    .ipsBox--loginBothMethods,
    .ipsBox--loginEmail,
    .ipsBox--register,
    .ipsBox--lostPass,
    .ipsBox--contact,
    .ipsBox--contactConfirmVerify,
    .ipsBox--contactDone,
    .ipsBox--contactVerify,
    #elError,
    .ipsBox--offline
) {
    overflow: hidden;
    color: var(--shc-system-text);
    background: linear-gradient(145deg, rgb(7 27 44 / 98%), rgb(2 11 19 / 98%));
    border: 1px solid var(--shc-system-border);
    border-radius: 10px;
    box-shadow: 0 16px 38px rgb(0 0 0 / 28%);
}

body.shcSystemSkin :is(
    .ipsPageHeader--messenger-submit,
    .ipsPageHeader--notifications,
    .ipsPageHeader--notifications-table
) {
    margin-bottom: 14px;
    padding: 15px 18px;
    color: #fff;
    background: linear-gradient(100deg, rgb(8 39 66 / 96%), rgb(4 17 29 / 97%) 68%, rgb(69 31 0 / 92%));
    border: 1px solid #1b567e;
    border-radius: 10px;
    box-shadow: inset 0 -2px rgb(255 121 0 / 58%);
}

body.shcSystemSkin :is(.ipsTitle, .ipsPageHeader__title, .ipsBox__header) {
    color: #fff;
}

body.shcSystemSkin :is(.i-color_soft, .ipsData__desc, .ipsData__meta, .ipsPhotoPanel__secondary) {
    color: var(--shc-system-muted) !important;
}

body.shcSystemSkin a:not(.ipsButton) {
    color: #8fd0ff;
}

body.shcSystemSkin a:not(.ipsButton):hover {
    color: #ffad4d;
}

/* Messenger and conversations */
body.shcSystemView--messenger .ipsMessenger {
    overflow: hidden;
    min-height: 590px;
    color: var(--shc-system-text);
    background: #020c15;
    border: 1px solid var(--shc-system-border);
    border-radius: 10px;
    box-shadow: 0 16px 38px rgb(0 0 0 / 28%);
}

body.shcSystemView--messenger .ipsMessenger__columns {
    min-height: 590px;
    background: transparent;
}

body.shcSystemView--messenger :is(.ipsMessenger__inbox, #elMessageSidebar) {
    color: var(--shc-system-text);
    background: linear-gradient(180deg, #071b2c, #03101b);
    border-color: var(--shc-system-border);
}

body.shcSystemView--messenger :is(.ipsMessenger__header, .ipsMessenger__conversationHeader) {
    padding: 15px 17px;
    color: #fff;
    background: linear-gradient(95deg, #0a3152, #061724 72%, #512600);
    border-bottom: 1px solid #21628d;
    box-shadow: inset 0 -2px rgb(255 121 0 / 45%);
}

body.shcSystemView--messenger .ipsMessenger__conversation {
    min-width: 0;
    color: var(--shc-system-text);
    background: radial-gradient(circle at 84% 0, rgb(0 112 222 / 9%), transparent 34%), #03101a;
}

body.shcSystemView--messenger :is(.ipsData--message-list, .ipsData--messenger-inbox) > .ipsData__item,
body.shcSystemView--messenger .ipsData__item--messenger {
    color: var(--shc-system-text);
    background: rgb(5 22 36 / 94%);
    border-color: var(--shc-system-border-soft);
    transition: background .16s ease, border-color .16s ease;
}

body.shcSystemView--messenger :is(.ipsData--message-list, .ipsData--messenger-inbox) > .ipsData__item:hover,
body.shcSystemView--messenger .ipsData__item--messenger:hover {
    background: #0a2942;
    border-color: #2485be;
}

body.shcSystemView--messenger .ipsData__item--messenger[aria-current='true'],
body.shcSystemView--messenger .ipsData__item--messenger.ipsData__item--active {
    background: linear-gradient(90deg, rgb(10 67 111 / 96%), rgb(5 29 48 / 96%));
    box-shadow: inset 4px 0 var(--shc-system-orange);
}

body.shcSystemView--messenger :is(.ipsMessenger__search, #elMessageSearchForm) {
    background: #041420;
    border-color: var(--shc-system-border-soft);
}

body.shcSystemView--messenger .cMessage_members {
    margin: 0;
    padding: 12px 17px;
    background: rgb(2 13 22 / 84%);
    border-bottom: 1px solid var(--shc-system-border-soft);
}

body.shcSystemView--messenger [data-role='commentFeed'] > :is(.ipsComment, .ipsEntry),
body.shcSystemView--messenger .ipsComment {
    color: var(--shc-system-text);
    background: linear-gradient(145deg, rgb(8 29 47 / 96%), rgb(3 13 22 / 96%));
    border-color: var(--shc-system-border-soft);
}

body.shcSystemView--messenger [data-role='replyArea'] {
    background: #061724;
    border-top: 1px solid var(--shc-system-border);
}

/* Notifications */
body.shcSystemView--notifications :is(.ipsData--notifications-table, .ipsData--stream-subscriptions) > .ipsData__item,
body.shcSystemView--notifications .ipsData__item--notification,
body.shcSystemView--notifications .ipsData__item--notification-row {
    color: var(--shc-system-text);
    background: linear-gradient(145deg, rgb(8 29 47 / 98%), rgb(3 13 22 / 98%));
    border-color: var(--shc-system-border-soft);
}

body.shcSystemView--notifications :is(.ipsData--notifications-table, .ipsData--stream-subscriptions) > .ipsData__item:hover,
body.shcSystemView--notifications .ipsData__item--notification:hover {
    background: #092943;
    border-color: #287fb3;
}

body.shcSystemView--notifications .ipsData__icon {
    color: #80c9ff;
}

body.shcSystemView--notifications :is(.cNotificationTypes, .cNotificationTypes__row) {
    color: var(--shc-system-text);
    background: transparent;
    border-color: var(--shc-system-border-soft);
}

body.shcSystemView--notifications .cNotificationTypes__toggle {
    background: #071c2d;
    border: 1px solid var(--shc-system-border);
    border-radius: 8px;
}

/* Account settings */
body.shcSystemView--account :is(#elSettingsTabs, .ipsSideMenu) {
    overflow: hidden;
    color: var(--shc-system-text);
    background: linear-gradient(180deg, #071b2c, #03101b);
    border: 1px solid var(--shc-system-border);
    border-radius: 9px;
}

body.shcSystemView--account :is(.ipsSideMenu_item, .ipsSideMenu__list a) {
    color: #bad4e6 !important;
    border-color: var(--shc-system-border-soft);
}

body.shcSystemView--account :is(.ipsSideMenu_item, .ipsSideMenu__list a):hover {
    color: #fff !important;
    background: #0a2b46;
}

body.shcSystemView--account :is(.ipsSideMenu_item_active, [aria-current='page']) {
    color: #fff !important;
    background: linear-gradient(90deg, #0b64ad, #083659);
    box-shadow: inset 4px 0 var(--shc-system-orange);
}

body.shcSystemView--account #elSettingsTabContent,
body.shcSystemView--account .ipsSideMenu__view {
    min-width: 0;
    color: var(--shc-system-text);
}

body.shcSystemView--account :is(
    .ipsData--settings-overview,
    .ipsData--settings-secure,
    .ipsData--settings-apps,
    .ipsData--settings-devices-1,
    .ipsData--settings-devices-2
) > .ipsData__item {
    color: var(--shc-system-text);
    background: linear-gradient(145deg, rgb(8 29 47 / 98%), rgb(3 13 22 / 98%));
    border-color: var(--shc-system-border-soft);
}

body.shcSystemView--account :is(.ipsGrid--privacySettings, .ipsGrid--privacyDelete, .ipsGrid--settingsMfa) > * {
    color: var(--shc-system-text);
    background: linear-gradient(145deg, #081d2f, #03101a);
    border-color: var(--shc-system-border);
}

/* Authentication, registration and recovery */
body.shcSystemView--auth:not(.shcGlobalShellMounted) {
    background:
        radial-gradient(circle at 18% 4%, rgb(0 126 255 / 18%), transparent 32%),
        radial-gradient(circle at 86% 5%, rgb(255 121 0 / 14%), transparent 28%),
        #020a12;
}

body.shcSystemView--auth :is(.ipsBox--loginBothMethods, .ipsBox--loginEmail, .ipsBox--register, .ipsBox--lostPass) {
    max-width: 1040px;
    margin-inline: auto;
}

body.shcSystemView--auth :is(.ipsColumns--login, .ipsBox--register .ipsColumns) {
    background: transparent;
}

body.shcSystemView--auth :is(.ipsColumns__primary, .ipsColumns__secondary) {
    color: var(--shc-system-text);
    background: transparent;
    border-color: var(--shc-system-border);
}

body.shcSystemView--auth .ipsColumns__secondary {
    background: linear-gradient(145deg, rgb(8 41 68 / 80%), rgb(4 17 29 / 86%));
}

body.shcSystemView--auth .cLogin_social > *,
body.shcSystemView--auth #elRegisterSocial form > * {
    width: 100%;
}

/* Contact, reports and errors */
body.shcSystemView--contact .ipsBox--contact > div,
body.shcSystemView--contact :is(.ipsBox--contactConfirmVerify, .ipsBox--contactDone, .ipsBox--contactVerify) {
    padding: 18px;
}

body.shcSystemView--reports :is(.ipsModCpanel__reportList, #elReportPanel) {
    color: var(--shc-system-text);
    background: #03101a;
    border-color: var(--shc-system-border);
}

body.shcSystemView--reports .ipsModCpanel__stickyHeader {
    color: #fff;
    background: linear-gradient(90deg, #0a3152, #061724 70%, #512600);
    border-color: #21628d;
    box-shadow: inset 0 -2px rgb(255 121 0 / 45%);
}

body.shcSystemView--reports :is(.ipsData--report-list-dropdown > .ipsData__item, .ipsEntry--report) {
    color: var(--shc-system-text);
    background: linear-gradient(145deg, rgb(8 29 47 / 98%), rgb(3 13 22 / 98%));
    border-color: var(--shc-system-border-soft);
}

body.shcSystemView--reports :is(.ipsEntry__header, .ipsEntry__footer) {
    background: rgb(5 22 36 / 88%);
    border-color: var(--shc-system-border-soft);
}

body.shcSystemView--error #elError {
    max-width: 920px;
    margin-inline: auto;
    padding: clamp(26px, 5vw, 58px);
}

body.shcSystemView--error #elError > .fa-circle-exclamation {
    color: #ff9d38;
    filter: drop-shadow(0 0 16px rgb(255 121 0 / 34%));
}

body.shcSystemView--error #elErrorMessage {
    color: #fff;
}

body.shcSystemView--error #elError textarea {
    color: #dff1ff;
    background: #020a12;
    border-color: #245b80;
}

/* Forms and controls inside all Alpha 17 pages */
body.shcSystemSkin :is(.ipsForm, .ipsFieldRow, .ipsBox__content, .ipsBox__padding) {
    color: var(--shc-system-text);
}

body.shcSystemSkin .ipsFieldRow {
    border-color: var(--shc-system-border-soft);
}

body.shcSystemSkin :is(.ipsFieldRow__label, .ipsFieldRow__content) {
    color: #e4f2fc;
}

body.shcSystemSkin .ipsFieldRow__desc {
    color: #8faabd;
}

body.shcSystemSkin :is(.ipsInput, input[type='text'], input[type='email'], input[type='password'], input[type='search'], textarea, select) {
    color: #edf8ff;
    background: #020d17;
    border-color: #20577b;
}

body.shcSystemSkin :is(.ipsInput, input, textarea, select):focus {
    border-color: #269cff;
    box-shadow: 0 0 0 3px rgb(22 140 255 / 17%);
    outline: 0;
}

body.shcSystemSkin .ipsSubmitRow {
    background: #061724;
    border-color: var(--shc-system-border);
}

body.shcSystemSkin .ipsButton--primary {
    color: #fff;
    background: linear-gradient(180deg, #168cff, #0751c2);
    border-color: #2799ff;
    box-shadow: inset 0 1px rgb(255 255 255 / 18%), 0 8px 18px rgb(0 92 190 / 22%);
}

body.shcSystemSkin .ipsButton--primary:hover {
    background: linear-gradient(180deg, #2a9bff, #0964dc);
}

body.shcSystemSkin :is(.ipsButton--inherit, .ipsButton--soft, .ipsButton--secondary) {
    color: #e5f3fd;
    background: #071b2d;
    border-color: #245675;
}

body.shcSystemSkin :is(.ipsButton--inherit, .ipsButton--soft, .ipsButton--secondary):hover {
    color: #fff;
    background: #0a3152;
    border-color: #2c81b7;
}

body.shcSystemSkin :is(.ipsButtonBar, .ipsDataFilters) {
    color: var(--shc-system-text);
    background: #061522;
    border-color: var(--shc-system-border);
}

body.shcSystemSkin .ipsPagination > li > :is(a, span) {
    color: #dceeff;
    background: #071827;
    border: 1px solid #204867;
    border-radius: 6px;
}

body.shcSystemSkin .ipsPagination > li.ipsPagination_active > :is(a, span),
body.shcSystemSkin .ipsPagination > li > a:hover {
    color: #fff;
    background: linear-gradient(180deg, #168aff, #0752c5);
    border-color: #2c9eff;
}

body.shcSystemSkin :is(.ipsEmptyMessage, .ipsEmpty, .ipsMessage--info) {
    color: #b8d0e2;
    background: #061827;
    border-color: #245879;
}

/* Global IC5 modal/dialog parity while the feature is enabled. */
body.shcSystemAssets :is(.ipsModal, dialog.ipsModal, [role='dialog'] .ipsModal) {
    color: var(--shc-system-text);
}

body.shcSystemAssets :is(.ipsModal__content, .ipsModal > .ipsBox, dialog.ipsModal > .ipsBox) {
    color: var(--shc-system-text);
    background: linear-gradient(145deg, #071c2d, #020c15);
    border-color: var(--shc-system-border);
    box-shadow: 0 22px 60px rgb(0 0 0 / 48%);
}

body.shcSystemAssets :is(.ipsModal__header, .ipsModal .ipsDialog_title) {
    color: #fff;
    background: linear-gradient(90deg, #0a3152, #061724 72%, #512600);
    border-color: #21628d;
    box-shadow: inset 0 -2px rgb(255 121 0 / 45%);
}

body.shcSystemAssets :is(.ipsModal, dialog.ipsModal) :is(.ipsInput, input[type='text'], input[type='email'], input[type='password'], textarea, select) {
    color: #edf8ff;
    background: #020d17;
    border-color: #20577b;
}

body.shcSystemCompact :is(.ipsFieldRow, .ipsData__item, .ipsEntry--report) {
    padding-block: .65em !important;
}

body.shcSystemCompact :is(.ipsBox__padding, .ipsBox__content, .ipsSubmitRow) {
    padding-block: .8em;
}

body.shcSystemCompact .ipsMessenger__conversationHeader,
body.shcSystemCompact .ipsMessenger__header {
    padding-block: 10px;
}

@media (max-width: 980px) {
    body.shcSystemView--messenger .ipsMessenger__columns {
        grid-template-columns: minmax(250px, 34%) minmax(0, 1fr);
    }

    body.shcSystemView--account :is(.ipsColumns, .ipsColumns--stack) {
        gap: 12px;
    }
}

@media (max-width: 767px) {
    body.shcSystemSkin :is(
        .ipsBox--messenger,
        .ipsBox--messengerSubmit,
        .ipsBox--notifications,
        .ipsBox--notificationsTable,
        .ipsBox--notificationOptions,
        .ipsBox--notificationSubscriptions,
        .ipsBox--notificationReceive,
        .ipsBox--secureAccount,
        .ipsBox--changePassword,
        .ipsBox--oauthApps,
        .ipsBox--loginBothMethods,
        .ipsBox--loginEmail,
        .ipsBox--register,
        .ipsBox--lostPass,
        .ipsBox--contact,
        #elError
    ) {
        border-radius: 8px;
    }

    body.shcSystemView--messenger .ipsMessenger,
    body.shcSystemView--messenger .ipsMessenger__columns {
        min-height: 520px;
    }

    body.shcSystemView--messenger .ipsMessenger__columns {
        display: block;
    }

    body.shcSystemView--messenger :is(.ipsMessenger__inbox, #elMessageSidebar, .ipsMessenger__conversation, #elMessageViewer) {
        width: 100%;
        min-width: 0;
    }

    body.shcSystemView--messenger .ipsMessenger__conversationHeader .i-flex {
        gap: 10px;
    }

    body.shcSystemView--auth :is(.ipsColumns--login, .ipsBox--register .ipsColumns) {
        display: block;
    }

    body.shcSystemView--auth .ipsColumns__secondary {
        border-top: 1px solid var(--shc-system-border);
        border-inline-start: 0;
    }

    body.shcSystemView--account :is(.ipsColumns, .ipsColumns--stack) {
        display: block;
    }

    body.shcSystemView--account :is(#elSettingsTabs, .ipsSideMenu) {
        margin-bottom: 12px;
    }

    body.shcSystemSkin :is(.ipsButtons, .ipsPageHeader__row, .ipsSubmitRow) {
        flex-wrap: wrap;
        gap: 8px;
    }

    body.shcSystemSkin :is(.ipsButton, .ipsButtons > li) {
        max-width: 100%;
    }

    body.shcSystemAssets :is(.ipsModal, dialog.ipsModal) {
        max-width: calc(100vw - 20px);
        margin-inline: auto;
    }
}



/* Alpha 18: global responsive, keyboard and fallback resilience polish. */
.shcSkipLink {
    position: fixed;
    inset: 8px auto auto 8px;
    z-index: 100000;
    padding: 10px 14px;
    color: #fff !important;
    background: #075fd0;
    border: 2px solid #73c2ff;
    border-radius: 7px;
    box-shadow: 0 8px 26px rgb(0 0 0 / 45%);
    transform: translateY(-160%);
    transition: transform .16s ease;
}

.shcSkipLink:focus {
    transform: translateY(0);
}

body.shcGlobalPolish {
    overflow-wrap: anywhere;
}

body.shcGlobalPolish :is(img, video, canvas, svg) {
    max-width: 100%;
}

body.shcGlobalPolish :is(.ipsLayout__main, .ipsLayout__content, .ipsBox, .ipsData__item, .ipsEntry, .ipsColumns__primary, .ipsColumns__secondary) {
    min-width: 0;
}

body.shcKeyboardMode :is(
    .shcGlobalShell a,
    .shcGlobalShell button,
    .shcGlobalPlayer button,
    .shcGlobalPlayer input,
    [data-shc-menu-styled] a,
    [data-shc-menu-styled] button
):focus-visible {
    outline: 3px solid #65bdff !important;
    outline-offset: 3px;
    box-shadow: 0 0 0 5px rgb(9 126 255 / 22%) !important;
}

.shcGlobalHero--logoUnavailable::before {
    content: 'SONIC HARDCORE';
    position: relative;
    z-index: 3;
    color: #fff;
    font-size: clamp(1.5rem, 5vw, 3rem);
    font-weight: 900;
    font-style: italic;
    letter-spacing: .05em;
    text-shadow: 0 0 22px rgb(0 126 255 / 65%);
}

body.shcGlobalPolish .shcGlobalPlayer {
    padding-bottom: env(safe-area-inset-bottom, 0px);
}

body.shcReducedMotion *,
body.shcReducedMotion *::before,
body.shcReducedMotion *::after {
    scroll-behavior: auto !important;
    animation-duration: .001ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .001ms !important;
}

@media (max-width: 767px) {
    body.shcGlobalPolish {
        overflow-x: hidden;
    }

    body.shcGlobalPolish .shcGlobalShell,
    body.shcGlobalPolish .ipsLayout,
    body.shcGlobalPolish .ipsLayout__app,
    body.shcGlobalPolish .ipsLayout__main {
        max-width: 100vw;
    }

    body.shcGlobalPolish :is(.shcGlobalNav__mobile, .shcGlobalUserBar a, .shcGlobalUserBar button, .shcGlobalPlayer button) {
        min-width: 44px;
        min-height: 44px;
    }

    body.shcGlobalPolish .shcUnifiedNavMenu__dropdown {
        max-height: min(60vh, 440px);
        overflow-y: auto;
        overscroll-behavior: contain;
    }
}



/* RC1.5: real WEBP lightning forks for the global shell hero */
.shcGlobalHero__lightning{
    background:none !important;
    opacity:1 !important;
    filter:none !important;
    animation:none !important;
    mix-blend-mode:screen;
    overflow:hidden;
}
.shcGlobalHero__fork{
    position:absolute;
    display:block;
    opacity:0;
    will-change:opacity,transform,filter;
    transform-origin:center;
    filter:drop-shadow(0 0 14px rgb(144 220 255 / .82)) drop-shadow(0 0 30px rgb(38 124 255 / .45));
    animation:shcGlobalForkFlash 13s linear infinite;
}
.shcGlobalHero__fork--orange{filter:drop-shadow(0 0 14px rgb(255 198 132 / .78)) drop-shadow(0 0 30px rgb(255 126 24 / .42));}
.shcGlobalHero__fork img{display:block;width:100%;height:100%;object-fit:contain;user-select:none;-webkit-user-drag:none}
.shcGlobalHero__fork.is-global-1{width:min(19vw,220px);left:1%;top:-14%;transform:rotate(-8deg)}
.shcGlobalHero__fork.is-global-2{width:min(13vw,150px);left:20%;top:12%;transform:rotate(8deg)}
.shcGlobalHero__fork.is-global-3{width:min(26vw,300px);left:39%;top:-20%;transform:rotate(2deg)}
.shcGlobalHero__fork.is-global-4{width:min(12vw,135px);right:21%;top:11%;transform:rotate(-8deg)}
.shcGlobalHero__fork.is-global-5{width:min(21vw,240px);right:2%;top:-12%;transform:rotate(6deg)}
@keyframes shcGlobalForkFlash{0%,2.6%,100%{opacity:0}2.72%{opacity:.18}2.88%{opacity:.98}3.04%{opacity:.28}3.2%{opacity:.82}3.36%,100%{opacity:0}}
@media (prefers-reduced-motion:reduce){.shcGlobalHero__fork{animation:none!important;opacity:.12}}


/* RC1.6: stronger mixed WEBP global hero forks with visible flicker */
.shcGlobalHero::after{z-index:1 !important;animation:shcGlobalHeroLightningShade 13s linear infinite}
.shcGlobalHero__lightning{z-index:2 !important;mix-blend-mode:screen;opacity:1 !important;overflow:hidden}
.shcGlobalHero__fork{opacity:0;filter:drop-shadow(0 0 16px rgb(168 230 255 / .9)) drop-shadow(0 0 38px rgb(40 132 255 / .54)) brightness(1.24);animation-name:shcGlobalForkFlashFlicker !important;animation-timing-function:linear !important;animation-iteration-count:infinite !important}
.shcGlobalHero__fork--orange{filter:drop-shadow(0 0 16px rgb(255 212 150 / .88)) drop-shadow(0 0 38px rgb(255 126 18 / .52)) brightness(1.22)}
.shcGlobalHero__fork.is-global-1{width:min(20vw,230px);left:0%;top:-14%;transform:rotate(-8deg)}
.shcGlobalHero__fork.is-global-2{width:min(14vw,155px);left:18%;top:12%;transform:rotate(8deg)}
.shcGlobalHero__fork.is-global-3{width:min(28vw,320px);left:37%;top:-20%;transform:rotate(1deg)}
.shcGlobalHero__fork.is-global-4{width:min(13vw,145px);right:22%;top:12%;transform:rotate(-8deg)}
.shcGlobalHero__fork.is-global-5{width:min(22vw,250px);right:2%;top:-12%;transform:rotate(6deg)}
.shcGlobalHero__fork.is-global-6{width:min(12vw,130px);left:58%;top:14%;transform:rotate(-2deg)}
@keyframes shcGlobalForkFlashFlicker{0%,2.48%,100%{opacity:0}2.6%{opacity:.16}2.74%{opacity:.96}2.88%{opacity:.38}3.02%{opacity:.9}3.16%{opacity:.18}3.3%{opacity:.78}3.46%{opacity:.08}3.62%{opacity:.6}3.78%,100%{opacity:0}}
@media (prefers-reduced-motion:reduce){.shcGlobalHero__fork{animation:none!important;opacity:.14}}

/* RC1.13: forum-style child-category grid for native IC5 Downloads category pages. */
body.shcDownloadsSkin .shcDownloadsSubcategoryPanel {
    overflow: hidden;
    margin-bottom: 18px;
    color: var(--shc-global-text);
    background: linear-gradient(145deg, var(--shc-download-surface-2), var(--shc-download-surface));
    border: 1px solid var(--shc-download-border);
    border-radius: 10px;
    box-shadow: 0 14px 34px rgb(0 0 0 / 25%), inset 0 1px rgb(255 255 255 / 3%);
}

body.shcDownloadsSkin .shcDownloadsSubcategoryPanel__header {
    min-height: 48px;
    display: flex;
    align-items: center;
    padding: 11px 16px;
    color: #fff;
    background: linear-gradient(90deg, rgb(13 68 113 / 96%), rgb(6 25 42 / 96%));
    border-bottom: 1px solid #1b5788;
    box-shadow: inset 4px 0 var(--shc-download-orange);
}

body.shcDownloadsSkin .shcDownloadsSubcategoryPanel__title {
    margin: 0;
    color: #fff;
    font-size: 1.05rem;
    font-weight: 800;
    letter-spacing: .02em;
}

body.shcDownloadsSkin .shcDownloadsSubcategoryGrid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    background: #03101c;
}

body.shcDownloadsSkin .shcDownloadsSubcategoryCard {
    min-width: 0;
    background: linear-gradient(180deg, rgb(5 22 37 / 98%), rgb(3 13 23 / 98%));
    border-right: 1px solid var(--shc-download-divider);
    border-bottom: 1px solid var(--shc-download-divider);
    transition: background .18s ease, box-shadow .18s ease, transform .18s ease;
}

body.shcDownloadsSkin .shcDownloadsSubcategoryCard:nth-child(3n) {
    border-right: 0;
}

body.shcDownloadsSkin .shcDownloadsSubcategoryCard__link {
    min-height: 100%;
    display: flex;
    flex-direction: column;
    padding: 12px;
    color: inherit !important;
    text-decoration: none !important;
}

body.shcDownloadsSkin .shcDownloadsSubcategoryCard__media {
    position: relative;
    overflow: hidden;
    aspect-ratio: 16 / 9;
    min-height: 150px;
    border: 1px solid #1b5f91;
    border-radius: 8px;
    background:
        radial-gradient(circle at 24% 18%, rgb(35 167 255 / 26%), transparent 34%),
        radial-gradient(circle at 88% 78%, rgb(255 112 0 / 17%), transparent 32%),
        linear-gradient(145deg, #071b2d, #020914 72%);
    box-shadow: inset 0 0 0 2px rgb(16 120 192 / 12%), inset 0 0 28px rgb(20 137 222 / 15%);
}

body.shcDownloadsSkin .shcDownloadsSubcategoryCard__media::before,
body.shcDownloadsSkin .shcDownloadsSubcategoryCard__media::after {
    content: "";
    position: absolute;
    z-index: 1;
    pointer-events: none;
}

body.shcDownloadsSkin .shcDownloadsSubcategoryCard__media::before {
    inset: 8px;
    border: 1px solid rgb(43 166 255 / 28%);
    border-radius: 6px;
    box-shadow: inset 0 0 18px rgb(15 132 219 / 14%);
}

body.shcDownloadsSkin .shcDownloadsSubcategoryCard__media::after {
    left: 8%;
    right: 8%;
    bottom: 12%;
    height: 2px;
    background: linear-gradient(90deg, transparent, #1fa8ff 20%, #ff7200 78%, transparent);
    box-shadow: 0 0 13px rgb(25 157 255 / 55%);
}

body.shcDownloadsSkin .shcDownloadsSubcategoryCard__image {
    position: absolute;
    inset: 0;
    z-index: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

body.shcDownloadsSkin .shcDownloadsSubcategoryCard__visual {
    position: absolute;
    inset: 0;
    z-index: 2;
    display: grid;
    place-content: center;
    justify-items: center;
    gap: 10px;
    padding: 18px;
    text-align: center;
    background: linear-gradient(180deg, rgb(2 10 18 / 14%), rgb(2 10 18 / 40%));
}

body.shcDownloadsSkin .shcDownloadsSubcategoryCard__image + .shcDownloadsSubcategoryCard__visual {
    background: linear-gradient(180deg, rgb(2 10 18 / 6%), rgb(2 10 18 / 58%));
}

body.shcDownloadsSkin .shcDownloadsSubcategoryCard__visual i {
    color: #77cbff;
    font-size: clamp(2.3rem, 4vw, 4.4rem);
    filter: drop-shadow(0 0 14px rgb(30 156 255 / 42%));
}

body.shcDownloadsSkin .shcDownloadsSubcategoryCard__visualName {
    max-width: 100%;
    color: #fff;
    font-size: clamp(1.35rem, 2.2vw, 2.25rem);
    font-weight: 900;
    line-height: 1.05;
    letter-spacing: -.02em;
    text-shadow: 0 2px 2px #000, 0 0 18px rgb(20 151 255 / 48%);
    overflow-wrap: anywhere;
}

body.shcDownloadsSkin .shcDownloadsSubcategoryCard__body {
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
    gap: 7px;
    padding: 14px 5px 6px;
}

body.shcDownloadsSkin .shcDownloadsSubcategoryCard__title {
    margin: 0;
    color: #f7fbff;
    font-size: 1rem;
    font-weight: 800;
}

body.shcDownloadsSkin .shcDownloadsSubcategoryCard__description {
    min-height: 2.7em;
    margin: 0;
    color: #9db6ca;
    font-size: .88rem;
    line-height: 1.45;
}

body.shcDownloadsSkin .shcDownloadsSubcategoryCard__meta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-top: auto;
    padding-top: 8px;
    color: #d9edfc;
    font-size: .82rem;
    font-weight: 650;
}

body.shcDownloadsSkin .shcDownloadsSubcategoryCard__count i {
    margin-right: 4px;
    color: #29aaff;
}

body.shcDownloadsSkin .shcDownloadsSubcategoryCard__arrow {
    color: #ff9a3c;
    white-space: nowrap;
}

body.shcDownloadsSkin .shcDownloadsSubcategoryCard:hover,
body.shcDownloadsSkin .shcDownloadsSubcategoryCard:focus-within {
    z-index: 2;
    background: linear-gradient(180deg, rgb(8 38 63 / 98%), rgb(3 17 29 / 98%));
    box-shadow: inset 4px 0 var(--shc-download-blue), 0 10px 25px rgb(0 0 0 / 24%);
}

body.shcDownloadsSkin .shcDownloadsSubcategoryCard:hover .shcDownloadsSubcategoryCard__media,
body.shcDownloadsSkin .shcDownloadsSubcategoryCard:focus-within .shcDownloadsSubcategoryCard__media {
    border-color: #2aaaff;
    box-shadow: inset 0 0 0 2px rgb(26 160 255 / 16%), 0 0 22px rgb(19 141 233 / 18%);
}

body.shcDownloadsSkin .shcDownloadsSubcategoryCard:hover .shcDownloadsSubcategoryCard__visualName,
body.shcDownloadsSkin .shcDownloadsSubcategoryCard:focus-within .shcDownloadsSubcategoryCard__visualName {
    text-shadow: 0 2px 2px #000, 0 0 22px rgb(27 164 255 / 66%);
}

body.shcDownloadsSkin [data-shc-subcategories-source="1"],
body.shcDownloadsSkin .shcDownloadsSubcategorySidebar--empty,
body.shcDownloadsSkin .shcDownloadsCategoryTable--emptyWithSubcategories {
    display: none !important;
}

body.shcDownloadsSkin .shcDownloadsSubcategoryLayout {
    display: block !important;
}

body.shcDownloadsSkin .shcDownloadsSubcategoryLayout > .ipsColumns__primary,
body.shcDownloadsSkin .shcDownloadsSubcategoryLayout > main {
    width: 100% !important;
    max-width: none !important;
    flex: 0 0 100% !important;
}

@media (max-width: 1100px) {
    body.shcDownloadsSkin .shcDownloadsSubcategoryGrid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    body.shcDownloadsSkin .shcDownloadsSubcategoryCard:nth-child(3n) {
        border-right: 1px solid var(--shc-download-divider);
    }

    body.shcDownloadsSkin .shcDownloadsSubcategoryCard:nth-child(2n) {
        border-right: 0;
    }
}

@media (max-width: 680px) {
    body.shcDownloadsSkin .shcDownloadsSubcategoryGrid {
        grid-template-columns: 1fr;
    }

    body.shcDownloadsSkin .shcDownloadsSubcategoryCard,
    body.shcDownloadsSkin .shcDownloadsSubcategoryCard:nth-child(2n),
    body.shcDownloadsSkin .shcDownloadsSubcategoryCard:nth-child(3n) {
        border-right: 0;
    }

    body.shcDownloadsSkin .shcDownloadsSubcategoryCard__link {
        padding: 10px;
    }

    body.shcDownloadsSkin .shcDownloadsSubcategoryCard__media {
        min-height: 135px;
    }
}

/* RC1.14: empty-category IC5 layout hardening for Downloads child grids. */
body.shcDownloadsSkin .shcDownloadsSubcategoryLayout .ipsColumns__primary,
body.shcDownloadsSkin .shcDownloadsSubcategoryLayout [class*="__primary"] {
    width: 100% !important;
    max-width: none !important;
    flex: 1 1 100% !important;
}

body.shcDownloadsSkin .shcDownloadsSubcategoryPanel + .shcDownloadsCategoryTable--emptyWithSubcategories {
    display: none !important;
}


/* RC1.15: use existing artwork for Downloads child-category cards.
 * Native Downloads node images win; matching forum category artwork is a
 * same-origin fallback when IC5's compact Downloads sidebar omits the image. */
body.shcDownloadsSkin .shcDownloadsSubcategoryCard--hasImage .shcDownloadsSubcategoryCard__media {
    background: #020914;
    border-color: #1b5f91;
    box-shadow: inset 0 0 0 1px rgb(25 143 221 / 10%), 0 7px 18px rgb(0 0 0 / 24%);
}

body.shcDownloadsSkin .shcDownloadsSubcategoryCard--hasImage .shcDownloadsSubcategoryCard__media::before,
body.shcDownloadsSkin .shcDownloadsSubcategoryCard--hasImage .shcDownloadsSubcategoryCard__media::after,
body.shcDownloadsSkin .shcDownloadsSubcategoryCard--hasImage .shcDownloadsSubcategoryCard__visual {
    display: none;
}

body.shcDownloadsSkin .shcDownloadsSubcategoryCard--hasImage .shcDownloadsSubcategoryCard__image {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    filter: none;
}

body.shcDownloadsSkin .shcDownloadsSubcategoryCard--hasImage:hover .shcDownloadsSubcategoryCard__image,
body.shcDownloadsSkin .shcDownloadsSubcategoryCard--hasImage:focus-within .shcDownloadsSubcategoryCard__image {
    filter: brightness(1.06);
}
