:root {
    --navbar-offset: 60px;
}

html, body {
    max-width: 100%;
    overflow-x: hidden;
}

html {
    font-size: 14px;
}

body {
    font-family: 'Inter', sans-serif;
    color: #fff;
    background-color: #1f1f1f;
}

a {
    color: #2ba69a;
    text-decoration: none !important;
    font-weight: 500;
    cursor: pointer !important;
}

    a:hover {
        color: #2ba69a;
    }

b, strong {
    font-weight: 600;
}

.container {
    max-width: 1350px;
}

.monetumo-ad-slot {
    max-width: 100%;
    overflow: hidden;
}

.monetumo-ad-slot iframe,
.monetumo-ad-slot > div {
    max-width: 100% !important;
}

.cool-mini-forum {
    background-color: #15161a;
    border-radius: 10px;
}

.cool-mini-form .cool-mini-form-body {
    overflow: hidden;
    overflow-wrap: break-word;
    text-overflow: ellipsis;
    max-height: 80px;
}

.cool-new-title {
    letter-spacing: 0rem;
    display: inline-block;
    margin-top: 0.25rem;
    margin-bottom: 0.5rem;
    font-size: 1.75rem;
    font-weight: 600;
    /*
    letter-spacing: 0rem;
    display: inline-block;
    background-color: #131315;
    padding: 0.5rem 0.75rem 0.5rem 0.75rem;
    font-weight: 600;
    font-size: 1rem;
    letter-spacing: 0.075rem;
    display: inline-block;
    background-color: #000;
    padding: 0.5rem;
    font-size: 1.5rem;
    text-transform: uppercase;
    */
}

.cool-mini-forum a:visited .h5 {
    color: #b3b3b3 !important;
}

.rounded {
    border-radius: 10px !important;
}

@media (min-width: 768px) {
    html {
        font-size: 16px;
    }
}

.mt-6 {
    margin-top: 6rem !important;
}

.italic {
    font-style: italic;
}

.strike {
    text-decoration: line-through;
}

.bold {
    font-weight: bold;
}

.dash-nav > a {
    margin-right: 1rem;
}

.fs-sticky-slot-element {
    background: rgba(0, 0, 0, 0.5) !important;
}

/* Prevent Fuse/PubGalaxy sticky video ads from covering the mobile viewport */
@media only screen and (max-width: 767.98px) {
    .fs-sticky-slot-element {
        max-height: 90px !important;
        overflow: hidden !important;
    }

    div[id^="div-gpt-ad"][style*="fixed"],
    div[id^="fs-"][style*="fixed"],
    div[class*="fs-sticky"] {
        max-height: 90px !important;
        overflow: hidden !important;
    }
}

.item-list-compact .item-list-compact-section {
    width: 33%;
    float: left;
    line-height: 70px;
}

.fotorama__stage__shaft {
    margin: 0 auto !important;
}

.fotorama__stage {
    min-width: 100% !important;
    width: 100% !important;
    max-width: 100% !important;
    background: #131515;
    border-radius: 10px !important;
}

.fotorama__wrap {
    width: 100% !important;
}

.fotorama__stage__shaft {
}

.item-image-thumb {
    max-height: 160px;
    max-width: 240px;
    height: 100vh;
    width: 100vw;
    overflow: hidden;
    display: inline-block;
    background-size: cover;
    background-position: center;
    border-radius: 5px;
    cursor: pointer;
}

.fotorama__thumb-border {
    border-color: #2ba69a;
}

.item-media-viewer {
    width: 100%;
}
.item-media-stage {
    position: relative;
    min-height: 450px;
    background:
        radial-gradient(circle at 22% 18%, rgba(43,166,154,.22), transparent 28%),
        radial-gradient(circle at 78% 8%, rgba(94,127,255,.16), transparent 30%),
        linear-gradient(145deg, #111824 0%, #070a10 50%, #10131d 100%);
    border: 1px solid rgba(43,166,154,0.3);
    overflow: hidden;
}
.item-media-image {
    width: 100%;
    height: 450px;
    object-fit: contain;
    display: block;
    background: #07080c;
}
.item-media-sketchfab,
.item-media-sketchfab iframe {
    width: 100%;
    height: 450px;
}
.item-media-viewer-banner {
    background: linear-gradient(90deg, rgba(43,166,154,.15), rgba(59,130,246,.12));
    border: 1px solid rgba(43,166,154,.4);
    border-radius: 6px;
    padding: 8px 14px;
    margin-bottom: 10px;
    font-size: 13px;
    color: #c4d5e8;
    display: flex;
    align-items: center;
    gap: 8px;
}
.item-media-viewer-banner i {
    color: #2ba69a;
    font-size: 15px;
}
.item-model-canvas {
    position: relative;
    width: 100%;
    height: 450px;
    background:
        linear-gradient(rgba(255,255,255,.05) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,.045) 1px, transparent 1px),
        radial-gradient(circle at 48% 36%, rgba(206,225,240,.12), transparent 24%),
        radial-gradient(circle at 18% 18%, rgba(43,166,154,.26), transparent 34%),
        radial-gradient(circle at 82% 12%, rgba(148,112,255,.15), transparent 30%),
        linear-gradient(180deg, #26313a 0%, #141c23 46%, #070a0e 100%);
    background-size: 34px 34px, 34px 34px, auto, auto, auto, auto;
}
.item-model-canvas canvas {
    width: 100% !important;
    height: 100% !important;
    display: block;
}
.item-model-loading {
    position: absolute;
    inset: 0;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: rgba(0,0,0,.62);
    background-size: cover;
    background-position: center;
}
.item-model-progress {
    width: min(360px, calc(100% - 32px));
    display: grid;
    gap: 10px;
    justify-items: center;
    color: #fff;
    text-align: center;
}
.item-model-progress-label {
    font-size: .95rem;
    font-weight: 600;
}
.item-model-progress-track {
    width: 100%;
    height: 8px;
    overflow: hidden;
    background: rgba(255,255,255,.16);
    border: 1px solid rgba(255,255,255,.2);
}
.item-model-progress-fill {
    width: 0;
    height: 100%;
    background: #2ba69a;
    transition: width .18s ease;
    transform: none;
}
.item-model-loading.is-processing .item-model-progress-fill {
    width: 38%;
    animation: item-model-progress-slide 1.05s ease-in-out infinite;
    transition: none;
}
.item-model-progress-meta {
    min-height: 1.1rem;
    color: rgba(255,255,255,.78);
    font-size: .78rem;
}
@keyframes item-model-progress-slide {
    0% {
        transform: translateX(-110%);
    }
    50% {
        transform: translateX(85%);
    }
    100% {
        transform: translateX(260%);
    }
}
.item-model-toolbar {
    position: absolute;
    top: 10px;
    right: 10px;
    z-index: 4;
    display: flex;
    gap: 6px;
    flex-wrap: wrap;
    justify-content: flex-end;
}
.item-model-toolbar button {
    border: 1px solid rgba(255,255,255,.2);
    background: rgba(0,0,0,.58);
    color: #fff;
    padding: 4px 8px;
    font-size: .78rem;
}
.item-model-toolbar button.active {
    border-color: #2ba69a;
    color: #2ba69a;
}
.item-model-notice {
    position: absolute;
    top: 48px;
    left: 10px;
    z-index: 4;
    background: rgba(0,0,0,.7);
    color: rgba(255,255,255,.85);
    padding: 6px 10px;
    font-size: .75rem;
    border-radius: 4px;
    display: flex;
    align-items: center;
    gap: 6px;
    pointer-events: none;
}
.item-model-notice i {
    color: #f0ad4e;
}
.item-media-thumbs {
    display: flex;
    gap: 8px;
    margin-top: 10px;
    overflow-x: auto;
    padding-bottom: 4px;
}
.item-media-thumb {
    position: relative;
    flex: 0 0 74px;
    width: 74px;
    height: 58px;
    padding: 0;
    border: 2px solid transparent;
    background: #11171d;
    color: #fff;
    overflow: hidden;
}
.item-media-thumb strong {
    display: grid;
    place-items: center;
    width: 100%;
    height: 100%;
    font-size: 1.05rem;
    letter-spacing: 0;
    color: #2ba69a;
    background:
        radial-gradient(circle at 50% 45%, rgba(43,166,154,.2), transparent 42%),
        #0b1117;
}
.item-media-thumb.active {
    border-color: #2ba69a;
    box-shadow: 0 0 0 1px rgba(43,166,154,.25);
}
.item-media-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.item-media-thumb span {
    position: absolute;
    right: 3px;
    bottom: 3px;
    background: rgba(0,0,0,.72);
    color: #fff;
    font-size: .62rem;
    padding: 1px 4px;
}
@media (max-width: 767px) {
    .item-media-stage,
    .item-media-image,
    .item-media-sketchfab,
    .item-media-sketchfab iframe,
    .item-model-canvas {
        height: 340px;
        min-height: 340px;
    }
}

.item-model-gate {
    width: min(360px, calc(100% - 32px));
    display: grid;
    gap: 8px;
    justify-items: center;
    color: #fff;
    text-align: center;
    padding: 14px 16px;
    background: rgba(0,0,0,0.45);
    border: 1px solid rgba(43,166,154,0.4);
    backdrop-filter: blur(6px);
}
.item-model-gate-title {
    font-size: 1.05rem;
    font-weight: 600;
}
.item-model-gate-meta {
    font-size: 0.85rem;
    color: rgba(255,255,255,0.85);
}
.item-model-gate-sub {
    font-size: 0.78rem;
    color: rgba(255,255,255,0.55);
    margin-bottom: 4px;
}
.item-model-gate-btn {
    display: inline-flex;
    align-items: center;
    padding: 6px 18px;
    border: 1px solid #2ba69a;
    background: rgba(43,166,154,0.18);
    color: #fff;
    font-size: 0.85rem;
    font-weight: 600;
    cursor: pointer;
    transition: background 0.15s ease;
}
.item-model-gate-btn:hover {
    background: rgba(43,166,154,0.34);
}

.item-media-thumb-pending {
    border-color: rgba(43,166,154,0.45);
    cursor: progress;
    background: linear-gradient(135deg, rgba(43,166,154,0.18), rgba(7,10,14,0.9));
}
.item-media-thumb-pending strong {
    color: rgba(43,166,154,0.9);
    background: transparent;
}
.item-media-thumb-spinner {
    position: absolute;
    inset: 0;
    margin: auto;
    width: 18px;
    height: 18px;
    border: 2px solid rgba(43,166,154,0.25);
    border-top-color: #2ba69a;
    border-radius: 50%;
    animation: item-media-spin 0.75s linear infinite;
}
@keyframes item-media-spin {
    to { transform: rotate(360deg); }
}

/* Embedded stats strip (bottom of canvas) */
.item-model-strip {
    position: absolute;
    left: 12px;
    bottom: 10px;
    z-index: 3;
    max-width: calc(100% - 24px);
    padding: 4px 10px;
    background: rgba(7,10,14,0.62);
    border: 1px solid rgba(255,255,255,0.08);
    color: rgba(255,255,255,0.92);
    font-size: 0.78rem;
    line-height: 1.35;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 4px 6px;
    pointer-events: none;
    backdrop-filter: blur(4px);
}
.item-model-strip .ime-name {
    color: #fff;
    font-weight: 600;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    max-width: 240px;
}
.item-model-strip .ime-sep {
    color: rgba(255,255,255,0.35);
    margin: 0 2px;
}

/* Embedded model picker (top-left of canvas) */
.item-model-picker {
    position: absolute;
    top: 10px;
    left: 10px;
    z-index: 5;
}
.item-model-picker-btn {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 4px 10px;
    border: 1px solid rgba(255,255,255,0.2);
    background: rgba(0,0,0,0.6);
    color: #fff;
    font-size: 0.78rem;
    cursor: pointer;
    backdrop-filter: blur(4px);
}
.item-model-picker-btn:hover {
    border-color: #2ba69a;
    color: #2ba69a;
}
.item-model-picker-label {
    max-width: 180px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.item-model-picker-count {
    padding: 0 5px;
    background: rgba(43,166,154,0.22);
    color: #7fdcd2;
    font-size: 0.68rem;
    font-weight: 700;
    border-radius: 8px;
}
.item-model-picker-menu {
    list-style: none;
    margin: 4px 0 0 0;
    padding: 4px;
    min-width: 240px;
    max-width: 360px;
    max-height: 280px;
    overflow-y: auto;
    background: rgba(7,10,14,0.96);
    border: 1px solid rgba(255,255,255,0.12);
    backdrop-filter: blur(6px);
    box-shadow: 0 8px 24px rgba(0,0,0,0.55);
}
.item-model-picker-menu[hidden] { display: none; }
.item-model-picker-menu li {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 6px 8px;
    cursor: pointer;
    color: rgba(255,255,255,0.9);
    font-size: 0.8rem;
}
.item-model-picker-menu li:hover {
    background: rgba(43,166,154,0.16);
}
.item-model-picker-menu li.is-current {
    background: rgba(43,166,154,0.2);
    color: #fff;
}
.item-model-picker-menu .ime-ext {
    flex: 0 0 auto;
    padding: 1px 6px;
    background: rgba(43,166,154,0.22);
    color: #7fdcd2;
    font-size: 0.66rem;
    font-weight: 700;
    letter-spacing: 0.04em;
}
.item-model-picker-menu .ime-name {
    flex: 1 1 auto;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.item-model-picker-menu .ime-size {
    flex: 0 0 auto;
    color: rgba(255,255,255,0.5);
    font-size: 0.72rem;
}

.bg-cover {
    background-size: cover !important;
    background-position: center !important
}

.pings {
    /*background: #f00;*/
}

#div-gpt-ad-1594433880036-0, #div-gpt-ad-1594433982158-0, #div-gpt-ad-1594433912777-0, #div-gpt-ad-1594433947961-0 {
    text-align: center;
}

.left-pin, .right-pin {
    display: none;
    position: fixed;
    max-width: 350px;
}

.left-pin {
    left: 10px;
    text-align: left;
}

/* Old side billboard placements (deprecated) */
.side-billboard-left, .side-billboard-right {
    position: fixed;
    top: 50%;
    transform: translateY(-50%);
    z-index: 1030;
    display: none;
}

.side-billboard-left {
    left: 0;
}

.side-billboard-right {
    right: 0;
}

@media only screen and (min-width: 1698px) {
    .side-billboard-left, .side-billboard-right {
        display: block;
    }
}

/* AdSense gutter ads (desktop side rails) */
.adsense-gutter {
    position: fixed;
    top: 50%;
    transform: translateY(-50%);
    z-index: 1030;
    width: 160px;
    display: none;
}

.adsense-gutter-left {
    left: 5px;
}

.adsense-gutter-right {
    right: 5px;
}

@media only screen and (min-width: 1698px) {
    .adsense-gutter {
        display: block;
    }
}

/* AdSense mobile sticky bottom ad */
.adsense-sticky-bottom {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    max-height: 100px;
    overflow: hidden;
    z-index: 1040;
    text-align: center;
    background: #313235;
    border-top: 1px solid #464a4c;
    display: block;
}

.adsense-sticky-bottom ins {
    max-height: 100px;
}

@media only screen and (min-width: 768px) {
    .adsense-sticky-bottom {
        display: none;
    }
}

/* CTA Join Banner */
.cta-join-banner {
    background: linear-gradient(135deg, #1a2a2a 0%, #262626 50%, #1a1a2e 100%);
    border: 1px solid rgba(43, 166, 154, 0.2);
}

.right-pin {
    right: 10px;
    text-align: right;
}

.pin-first {
    top: 120px;
}

.pin-second {
    top: 400px;
}

#desc {
    overflow: hidden;
    white-space: normal;
    line-height: 1.25rem;
}

/* Modal */
.modal-content {
    height: auto !important;
}

.fancy-modal .modal-button {
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
}

/* Bodys */
.fancy-new-embedding-system, .fancy-nes {
    text-overflow: ellipsis;
    overflow: hidden;
    overflow-wrap: break-word;
}

.view-forum-body {
    margin-top: 1rem;
    margin-bottom: 1rem;
    line-height: 1.25rem;
}

/* Loading Animations */
.loading-dots:after {
    content: '.';
    padding-left: 1px;
    animation: dots 1.5s steps(4, end) infinite;
}

.loading-bar {
    background: #e9ecef;
    width: 100%;
    text-align: left;
    overflow: hidden;
    border-bottom-left-radius: 4px;
    border-bottom-right-radius: 4px;
    margin-top: 0;
}

    .loading-bar > .loading-inner {
        background: red;
        width: 0;
        display: block;
        height: 0.35rem;
        background-color: #007bff;
        background-image: linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);
        background-size: 1rem 1rem;
        -webkit-animation: progress-bar-stripes 1s linear infinite;
        animation: progress-bar-stripes 1s linear infinite;
    }

.ekko-lightbox {
    border: 0;
}

    .ekko-lightbox .modal-body {
        padding: 0;
    }

    .ekko-lightbox .modal-header {
        display: none;
    }

    .ekko-lightbox .modal-content {
        background: transparent;
        border: 0;
    }

p {
    overflow: hidden;
}

.navbar-toggler-icon {
    color: #fff;
}

#notificationbubble {
    -webkit-transition: all 1s;
    transition: all 1s;
    background-color: transparent;
    border-radius: 90px;
    padding: 0 .25rem;
    text-align: center;
    max-width: 45px;
}

.a-arrow::after {
    position: relative;
    margin-left: 8px;
    top: 1px;
    content: '›';
    font-size: 23px;
}

.tiny-avatar, .small-avatar, .medium-avatar, .large-icon, .large-avatar {
    width: 100vw;
    height: 100vh;
    background-size: cover;
    background-position: center;
    border-radius: 90px;
}

.small-icon {
    max-width: 32px;
    max-height: 32px;
}

.medium-icon {
    max-width: 42px;
    max-height: 42px;
}

.large-icon {
    max-width: 64px;
    max-height: 64px;
}

#avatar_preview {
    background-color: #fff;
}

.tiny-avatar {
    max-width: 32px;
    max-height: 32px;
}

.small-avatar {
    max-width: 64px;
    max-height: 64px;
}

.medium-avatar {
    max-width: 78px;
    max-height: 78px;
}

.large-avatar {
    max-width: 128px;
    max-height: 128px;
}

.profile-section * {
    display: inline-block;
    vertical-align: middle;
    line-height: 1rem;
}

.profile-section > a {
    color: #fff;
}

.alert {
    text-align: center;
    font-size: 1rem;
    margin: 0 auto;
    border-radius: 0;
    border-radius: 10px;
    color: #e5e5e5;
}

.alert {
    color: rgba(255,255,255,.8);
    background-color: #191c20;
    background-image: none;
    border-color: rgba(255,255,255,.1);
}

    .alert a {
        text-decoration: underline !important;
    }

    .alert.alert-primary, .alert-primary a {
        color: #1890ff !important;
        background-color: #172636;
        background-image: none;
        border-color: #0d518f;
    }

.alert-info, .alert-info a {
    color: #0bc7e8 !important;
    background-color: #112833;
    background-image: none;
    border-color: #0d7689;
}

.alert.alert-success, .alert-success a {
    color: #0be881 !important;
    background-color: #17312a;
    background-image: none;
    border-color: #0d8951;
}

.alert-warning, .alert-warning a {
    color: #ffcf00 !important;
    background-color: #302c1d;
    background-image: none;
    border-color: #8e7710;
}

    .alert-warning .alert a {
        color: #1a38a9;
        text-decoration: underline !important;
    }

.alert.alert-danger, .alert-danger a {
    color: #ff4d4f !important;
    background-color: #301923;
    background-image: none;
    border-color: #8c0e2e;
}

h1, h2, h3, h4, h5, h6 {
    color: #fff;
    margin-bottom: 0.5rem;
}

.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6 {
    font-weight: 600;
}

.subheading {
    font-size: 1.25rem;
    font-weight: 400;
}

hr {
    border-top: 1px solid rgba(255, 255, 255, 0.2);
}

.lg-outer .lg-thumb-item.active, .lg-outer .lg-thumb-item:hover {
    color: #26a69a;
    border-color: #26a69a;
}

.nav-wrapper {
    /*background-color: #131315;*/
    position: relative;
    z-index: 1000;
}

.hero-tuck {
    margin-top: calc(-1 * var(--navbar-offset));
    padding-top: var(--navbar-offset);
}

.nav-wrapper .navbar {
    padding: 0.5rem 0.25rem;
}

    .nav-wrapper * {
        transition: all 0.25s
    }

.nav-wrapper .navbar-nav {
    gap: 0;
}

@media (min-width: 768px) {
    .nav-wrapper .navbar-nav {
        gap: 0.25rem;
    }

    .nav-wrapper #mobilenav {
        display: flex !important;
        align-items: center;
        justify-content: flex-end;
    }

    .nav-wrapper .left-nav {
        margin-left: 1rem;
        padding-left: 1rem;
        border-left: 1px solid rgba(255, 255, 255, 0.15);
    }

    .nav-wrapper .left-nav .navbar-nav {
        gap: 0.25rem;
    }

    .nav-wrapper .nav-link {
        padding-left: 0.5rem;
        padding-right: 0.5rem;
        white-space: nowrap;
    }
}

.nav-item {
    line-height: 2.5rem;
    display: flex;
    align-items: center;
}

.nav-link {
    color: #fff;
    font-size: 0.85rem;
    font-weight: 500;
    padding-top: 0;
    padding-bottom: 0;
}

.navbar-brand {
    color: #fff;
    font-weight: 500;
    padding: 0 !important;
}

    .navbar-brand img {
        max-height: 32px;
        margin-right: 0.5rem;
        margin-left: 0.5rem;
        /*
        filter: drop-shadow(0px 0px 1px #777);
        */
    }
.search-category-customtext {
    line-height: 1.0rem;
    font-size: 0.75rem;
}

.cool-home-wrap {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-column-gap: 40px;
    -moz-column-gap: 40px;
    column-gap: 40px;
}

    .cool-home-wrap > a {
        display: flex !important;
        flex-direction: column;
        justify-content: flex-start;
        align-items: center;
    }

        .cool-home-wrap > a > h5 {
            max-width: 160px;
        }
        .cool-home-wrap > a > h6 {
            max-width: 160px;
        }

.clipboard {
    cursor: pointer;
    color: #2ba69a;
}

.item-wrapper {
    text-shadow: 0 0 7px #000;
    padding: 0 0.5rem;
    margin-bottom: 0.8rem !important;
}

    .item-wrapper .row {
        padding: 0.4rem 0.75rem;
    }

    .item-wrapper .item-flex {
        display: flex;
        padding: 0.5rem 0.75rem 0.35rem 0.75rem;
        flex-direction: row;
        align-content: center;
        flex-wrap: wrap;
    }

    .item-wrapper .item-flex-left {
        /* flex: 0 0 80%; */
        /* max-width: 80%; */
        position: relative;
        width: 100%;
    }

    .item-wrapper .item-flex-right {
        /* text-align: right; */
        /* flex: 0 0 20%; */
        /* max-width: 20%; */
        position: relative;
        width: 100%;
        align-self: self-start;
    }

    .item-wrapper .bottom-parent {
        font-weight: 500;
        color: #fff !important;
        font-size: 0.9rem;
        display: flex;
        justify-content: flex-start;
    }

.img-thumbnail {
    padding: 0.25rem;
    background-color: transparent;
    border: 0;
    border-radius: 10px;
    max-width: 100%;
    width: 80px;
    height: auto;
}

#search_page_top_flex {
    display: flex !important;
    flex-wrap: nowrap;
    align-content: center;
    flex-direction: row;
    align-items: center;
}

.item-wrapper .title-parent {
    text-overflow: ellipsis;
    overflow: hidden;
    height: 120px;
    width: 100%;
}

.item-wrapper .bottom-parent {
    font-weight: 500;
    color: #fff !important;
}

.bottom-parent > div {
    line-height: 1.15rem;
    font-size: 0.85rem;
    font-weight: 400;
    margin-right: 0.75rem;
    white-space: nowrap !important;
}

.item-flex-right .bi {
    font-size: 0.75rem;
}

.item-flex-right .bi-heart {
    font-size: 0.66rem;
}

.item-wrapper h3 {
    font-size: 1.15rem;
    font-weight: 500;
    height: 0;
    width: 100%;
    line-height: 1.25rem;
}

.item-wrapper .item-bg {
    background-position: center;
    background-size: cover;
    border-radius: 10px;
    overflow: hidden;
}

.item-wrapper .item-bg-tint {
    -webkit-transition: background-color 0.75s;
    transition: background-color 0.75s;
    background-color: rgba(0,0,0,0.5);
}

    .item-wrapper .item-bg-tint:hover {
        background-color: rgba(0, 0, 0, 0);
    }

    .item-wrapper .item-bg-tint:active, item-wrapper .item-bg-tint:focus {
        background-color: rgba(157, 89, 23, 0.25);
    }

.item-wrapper img {
    max-width: 100%;
}

.bg-dark {
    background-color: #2a2a2a !important;
}

.bg-black {
    background-color: #000 !important;
}

.badge {
    font-size: 0.7rem;
}

.badge-purple {
    color: #fff;
    background-color: #8f66d6;
}

.badge-primary {
    color: #fff;
    background-color: #667bd6;
}

.badge-success {
    color: #fff;
    background-color: #5bb172;
}

.badge-salmon {
    color: #fff;
    background-color: #d66695;
}

.text-purple, .text-purple-hover:hover {
    color: #8f66d6 !important;
}

.text-success, .text-success-hover:hover {
    color: #5bb172 !important;
}

.text-danger, .text-danger-hover:hover {
    color: #ff5858 !important;
}

.text-warning, .text-warning-hover:hover {
    color: #ffad58 !important;
}

.text-primary, .text-primary-hover:hover {
    color: #5865ed !important;
}

/* Bootstrap / Styles */

/* Table */
.table {
    color: #6c757d;
}
/* Headings */
.h2, h2 {
    font-size: 32px;
    font-weight: 600;
    margin-bottom: 2.5rem;
}

.badge-notification {
    position: absolute;
    margin-top: -0.35rem;
    margin-left: -0.5rem;
}

/* Buttons */
button, .btn {
    cursor: pointer !important;
    box-shadow: none !important;
    border-radius: 0.5rem;
}

    .btn:hover, .btn:focus {
        border-color: #ccc !important;
        background: #ccc !important;
        color: #000 !important;
    }

    .btn:active {
        border-color: #fff !important;
        background: #fff !important;
        color: #000 !important;
    }

    .btn i {
        padding-right: 0.5rem;
    }

.btn-dark {
    background-color: #343a40;
    border-color: #343a40;
}

.btn-cucumber, .bg-cucumber, .btn-primary, .bg-primary {
    color: #fff;
    background: #26a69a !important;
    border-color: #26a69a !important;
}

.btn-outline-cucumber {
    color: #2ba69a;
    border-color: #2ba69a;
    color: #2ba69a;
    border-color: #2ba69a;
    -webkit-box-shadow: inset 0px 0px 0px 1px #2ba69a !important;
    -moz-box-shadow: inset 0px 0px 0px 1px #2ba69a !important;
    box-shadow: inset 0px 0px 0px 1px #2ba69a !important;
}

    .btn-outline-cucumber:hover, .btn-outline-cucumber:active, .btn-outline-cucumber:focus, .btn-outline-cucumber:focus-visible, .btn-outline-cucumber:focus-within, .btn-outline-cucumber:target {
        -webkit-box-shadow: inset 0px 0px 0px 0 #fff !important;
        -moz-box-shadow: inset 0px 0px 0px 0 #fff !important;
        box-shadow: inset 0px 0px 0px 0 #fff !important;
    }

.btn-discboard {
    color: #fff;
    background-color: #5865F2 !important;
    border-color: #5865F2 !important;
}

.btn-warning {
    color: #000000;
    background-color: #ffc622;
    border-color: #ffc622;
}

.btn-success {
    background-color: #5bb172 !important;
}

.btn-info {
    background-color: #569dad !important;
}

.btn-purple {
    color: #fff;
    background-color: #8f66d6 !important;
}

.current-link {
    color: white;
}

.c-hover, .c-pointer {
    cursor: pointer;
}

#prog {
    height: 2px;
    background-color: #fff;
    width: 100%;
    transition-property: width;
    transition-duration: 0.25s;
    transition-timing-function: ease-in-out;
}

.form-control {
    color: #fff !important;
    background: #131315 !important;
    border: 0;
    box-shadow: 0 0 0 #000 !important;
}

.bg-dark .form-control {
    background: #181818 !important;
}

/* Darker on dark */
.bg-dark .bg-dark {
    background-color: #1a1a1a !important;
}

.border-top {
    border-top: 1px solid rgba(255, 255, 255, 0.2) !important;
}

.border-bottom {
    border-bottom: 1px solid rgba(255, 255, 255, 0.2) !important;
}

.box-shadow {
    box-shadow: 0 .25rem .75rem rgba(0, 0, 0, .05);
}

.embed-container {
    min-height: 270px;
    position: relative;
    padding-bottom: 56.25%;
    height: 0;
    overflow: hidden;
    max-width: 100%;
    width: 100%;
}

    .embed-container iframe, .embed-container object, .embed-container embed {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
    }


.scroll {
    animation: scroll 5s infinite;
    -o-animation: scroll 5s infinite;
    -webkit-animation: scroll 5s infinite;
}

@keyframes scroll {
    0%, 10% {
        background-position: 0 center;
    }

    50%, {
        background-position: 30rem center;
    }

    90%, 100% {
        background-position: 0 center;
    }
}

/* Background */
.bg-dark {
    background-color: #262626 !important;
}

/* Padding */
.py-6 {
    padding-top: 5rem;
    padding-bottom: 5rem;
}

.py-7 {
    padding-top: 7.5rem;
    padding-bottom: 7.5rem;
}

.py-12 {
    padding-top: 12rem;
    padding-bottom: 12rem;
}

/* Colors */

.text-cucumber {
    color: #26a69a !important;
}

.text-discboard {
    color: #5865F2 !important;
}

.dropdown-menu.show {
    background: #004D40;
}

a.dropdown-item {
    color: #E0F2F1 !important;
    background: none !important;
    line-height: 1rem;
    padding: 0.5rem 0.5rem;
}

.dropdown-divider {
    border-top: 1px solid #00695C;
    margin: 0.25rem 0;
}

.hero-container {
    padding-top: 6rem;
    padding-bottom: 5rem;
}

.home-hero-banner {
    background-image: url(https://storage.vrcmods.com/uploads/user/1/custom_imgs/be645c2391d841c49cc7ca9c694a5482.jpg) !important;
}

    .home-hero-banner > .home-hero-banner-inner {
        background: rgb(31,31,31);
        background: linear-gradient(180deg, rgb(31 31 31) 0%, rgb(38 77 109 / 82%) 48%, rgb(31 31 31) 84%);
    }

.upload-landing-hero {
    background: #000;
    margin-top: -50px;
}
.upload-landing-hero-inner {
    background: linear-gradient(135deg, rgba(43, 166, 154, 0.15) 0%, rgba(31, 31, 31, 1) 50%, rgba(124, 58, 237, 0.1) 100%);
}

/* Desktop Override */
@media only screen and (min-width: 768px) {
    .mobile-hide {
        display: none;
    }
}


/* Mobile Override */
@media only screen and (max-width: 767.98px) {
    .cool-home-wrap {
        display: -ms-grid;
        display: grid;
        -ms-grid-columns: 1fr 1fr 1fr;
        grid-template-columns: 1fr 1fr 1fr;
        gap: 40px 40px;
    }

    .desktop-hide {
        display: none;
    }

    .nav-wrapper .navbar-nav {
        text-align: center;
        align-items: center;
    }

    .nav-wrapper .nav-item {
        line-height: 2.5rem;
        justify-content: center;
        width: 100%;
    }

    .nav-wrapper .nav-link {
        font-size: 1.25rem;
        padding: 0.5rem 1rem;
        width: 100%;
        text-align: center;
    }

    .nav-wrapper .user-nav {
        text-align: center;
        margin-top: 0.75rem;
        padding-top: 0.75rem;
        border-top: 1px solid rgba(255, 255, 255, 0.1);
    }

    .nav-wrapper #notificationbubble {
        max-width: 100%;
        text-align: center;
    }

    .navbar-collapse {
        height: 100vh !important;
        padding-top: 0.5rem;
    }

    .hero-tuck {
        margin-top: calc(-1 * var(--navbar-offset) - 20px);
        padding-top: calc(var(--navbar-offset) + 20px);
    }

    .navbar-toggler {
        border: 0 !important;
        box-shadow: 0 0 0 #000 !important;
        outline: 0 !important;
        font-size: 1.75rem;
        padding: 0.25rem;
        line-height: 2.5rem;
    }

    .left-nav:before {
        display: none;
    }

    .item-image-thumb {
        max-width: calc(50% - 3px);
        width: 100%;
    }

    .py-12 {
        padding-top: 6rem;
        padding-bottom: 6rem;
    }

    .img-bg-right {
        margin-top: 5rem;
        margin-bottom: -70px !important;
        margin-left: auto;
        margin-right: auto !important;
        display: block;
        position: inherit !important;
    }

    .item-wrapper {
        margin-bottom: 0.5rem !important;
    }

        .item-wrapper .title-parent {
            height: 160px;
        }

    .ad-sidewall_left, .ad-sidewall_right {
        position: absolute !important;
        overflow-x: hidden;
    }
}

/* Hide sidewall ads when viewport is too narrow */
@media only screen and (max-width: 1919px) {
    .ad-sidewall_left, .ad-sidewall_right {
        display: none !important;
    }
}

.upload-preview {
    font-size: 80%;
    display: block;
    text-decoration: none !important;
    color: #fff !important;
    margin-bottom: 1rem;
    background: #1d1e23;
    border-radius: 4px;
    overflow: hidden;
    box-shadow: 0 0 20px rgba(0,0,0,0.2);
}

    .upload-preview:hover {
        opacity: 0.7;
    }

    .upload-preview:active {
        filter: brightness(1.5);
    }

    .upload-preview .thumbnail {
        height: 160px;
        width: 100%;
        background-size: contain;
        background-position: top center;
        position: relative;
        background-repeat: no-repeat;
        background-color: #131315;
    }

    .upload-preview .body {
        padding: 12px;
    }

    .upload-preview .info {
        display: flex;
        align-items: center;
        margin-bottom: 0.25rem;
    }

        .upload-preview .info .left, .upload-preview .info .right {
            position: relative;
            display: flex;
            align-items: center;
        }

        .upload-preview .info .left {
            font-weight: bold;
            min-width: 0;
            margin-right: 6px;
            flex: 1;
            white-space: nowrap;
            overflow: hidden;
            text-overflow: ellipsis;
        }


        .upload-preview .info .right {
            min-width: 35px;
            justify-content: flex-end;
            flex-shrink: 0;
            opacity: 0.9;
            font-size: 0.75rem;
            font-weight: 500;
        }

            .upload-preview .info .right > div + div {
                margin-left: 0.75rem;
            }

            .upload-preview .info .right div i {
                margin-right: 0.1rem;
            }

    .upload-preview .author {
        font-size: 90%;
    }

#app {
    zoom: 0.5;
    place-items: center;
    display: grid;
    padding: 2rem 0;
}

.base-timer {
    position: relative;
    width: 300px;
    height: 300px;
}

.base-timer__svg {
    transform: scaleX(-1);
}

.base-timer__circle {
    fill: none;
    stroke: none;
}

.base-timer__path-elapsed {
    stroke-width: 7px;
    stroke: grey;
}

.base-timer__path-remaining {
    stroke-width: 7px;
    stroke-linecap: round;
    transform: rotate(90deg);
    transform-origin: center;
    transition: 1s linear all;
    fill-rule: nonzero;
    stroke: currentColor;
}

    .base-timer__path-remaining.green {
        color: rgb(65, 184, 131);
    }

    .base-timer__path-remaining.orange {
        color: orange;
    }

    .base-timer__path-remaining.red {
        color: red;
    }

.base-timer__label {
    position: absolute;
    width: 300px;
    height: 300px;
    top: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 48px;
}

/* Swiper JS */
.small-image-slider .swiper-container {
    width: 100%;
    padding-top: 50px;
    padding-bottom: 50px;
}

.small-image-slider .swiper-slide {
    width: auto;
    height: 400px;
}

    .small-image-slider .swiper-slide img {
        max-height: 100%;
        max-width: 100%;
        cursor: pointer;
    }

        .small-image-slider .swiper-slide img:hover {
            opacity: 0.7;
        }

        .small-image-slider .swiper-slide img:active {
            filter: brightness(1.5);
        }

/* Lightgallery */
.lg-backdrop {
    background-color: rgba(0, 0, 0, 0.6);
}

#header-img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    z-index: -2;
    background-size: cover;
    background-position: center;
}


    #header-img > div {
        background: linear-gradient(rgba(38, 38, 43, 0.6),#1f2023,#26272d) !important;
        height: 100vh;
        top: 0;
        position: absolute;
        z-index: -1;
        width: 100%;
    }

.img-bg-right {
    margin-bottom: -80px;
    margin-right: -400px;
    position: absolute;
    top: auto;
    bottom: 0%;
    left: auto;
    right: 0%;
}

/* ===== Footer ===== */
.site-footer {
    position: relative;
    overflow: hidden;
}

.footer-accent {
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.08) 30%, rgba(255,255,255,0.08) 70%, transparent);
}

.footer-top {
    padding: 3rem 0 2rem;
}

.footer-brand {
    font-weight: 700;
    font-size: 1.2rem;
    color: #fff;
}

.footer-desc {
    color: #8a8a8f;
    font-size: 0.9rem;
    line-height: 1.6;
    max-width: 340px;
}

.footer-socials {
    display: flex;
    gap: 10px;
    margin-top: 1rem;
}

.footer-social-btn {
    width: 38px;
    height: 38px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.1rem;
    transition: transform 0.2s, box-shadow 0.2s;
    color: #fff !important;
}

.footer-social-btn:hover {
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0,0,0,0.3);
    color: #fff !important;
}

.social-discord { background: #5865F2; }
.social-twitter { background: #1d9bf0; }
.social-youtube { background: #FF0000; }
.social-email { background: #26a69a; }

.footer-heading {
    color: #fff;
    font-weight: 600;
    font-size: 0.85rem;
    text-transform: uppercase;
    letter-spacing: 0.05rem;
    margin-bottom: 1rem;
    position: relative;
    padding-bottom: 0.5rem;
}

.footer-heading::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 20px;
    height: 2px;
    border-radius: 1px;
    background: #26a69a;
}

.footer-links {
    list-style: none;
    padding: 0;
    margin: 0;
}

.footer-links li {
    margin-bottom: 0.5rem;
}

.footer-links a {
    color: #8a8a8f !important;
    font-weight: 400;
    font-size: 0.9rem;
    transition: color 0.2s, padding-left 0.2s;
}

.footer-links a:hover {
    color: #26a69a !important;
    padding-left: 3px;
}

.footer-bottom {
    border-top: 1px solid rgba(255,255,255,0.06);
    padding: 1.25rem 0;
    text-align: center;
}

.footer-bottom p {
    color: #555;
    font-size: 0.8rem;
}


/* ============================================
   SELLFY STYLES - START
   ============================================ */

.content-wrapper {
    max-width: 1440px;
    margin-left: auto;
    margin-right: auto;
    padding-left: 60px;
    padding-right: 60px;
}

@media screen and (max-width: 1024px) {
    .content-wrapper {
        padding-left: 40px;
        padding-right: 40px;
    }
}

@media screen and (max-width: 768px) {
    .content-wrapper {
        padding-left: 20px;
        padding-right: 20px;
    }
}

/* ------- Sell Fonts CTA ------- */
.sell-fonts {
    background-color: #131315;
    padding-top: 149px;
    padding-bottom: 80px;
    width: 100%;
}

@media screen and (max-width: 768px) {
    .sell-fonts {
        padding-top: 80px;
    }
}

.sell-fonts-left {
    max-width: 776px;
    width: 100%;
}

@media screen and (max-width: 1024px) {
    .sell-fonts-left {
        max-width: none;
    }
}

.sell-fonts-content {
    color: white;
    display: flex;
    align-items: start;
    justify-content: space-between;
    gap: 40px;
}

@media screen and (max-width: 1024px) {
    .sell-fonts-content {
        flex-direction: column;
    }
}

.sell-fonts-content p {
    font-size: 22px;
    font-weight: 300;
    line-height: 1.2;
    letter-spacing: 0.176px;
}

@media screen and (max-width: 1024px) {
    .sell-fonts-content p {
        font-size: 18px;
    }
}

.sell-fonts-customers {
    margin-top: 70px;
    display: flex;
    align-items: center;
    gap: 24px;
}

@media screen and (max-width: 1120px) {
    .sell-fonts-customers {
        gap: 20px;
    }
}

@media screen and (max-width: 620px) {
    .sell-fonts-customers {
        flex-direction: column;
        text-align: center;
        gap: 10px;
        margin-top: 46px;
    }
}

.sell-fonts-images {
    display: flex;
    align-items: center;
    padding-left: 24px;
    padding-right: 24px;
}

@media screen and (max-width: 1120px) {
    .sell-fonts-images {
        padding-left: 0;
        padding-right: 0;
    }
}

.sell-fonts-images img {
    width: 66px;
    height: 66px;
    border-radius: 1000px;
    border: 3px solid white;
}

.sell-fonts-images img:not(:first-child) {
    margin-left: -10px;
}

@media screen and (max-width: 1024px) {
    .sell-fonts-images img {
        width: 50px;
        height: 50px;
    }
}

@media screen and (max-width: 620px) {
    .sell-fonts-images img {
        width: 36px;
        height: 36px;
        border-width: 2px;
    }
}

.sell-fonts-image {
    max-width: 322px;
    width: 100%;
}

.sell-fonts-image img {
    -o-object-fit: contain;
    object-fit: contain;
    max-width: 100%;
}

.sell-fonts-loved {
    color: white;
}

.sell-fonts-loved h3 {
    font-weight: 700;
    font-size: 18px;
    line-height: 1.17;
    letter-spacing: 0.176px;
}

.sell-fonts-loved p {
    font-size: 14px;
    line-height: 1.143;
    letter-spacing: 0.176px;
}

.sell-fonts-trail {
    max-width: 420px;
    width: 100%;
    background-color: white;
    padding-left: 44px;
    padding-right: 44px;
    display: flex;
    flex-direction: row;
    gap: 24px;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    padding-top: 30px;
    padding-bottom: 30px;
    box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
}

@media screen and (max-width: 1120px) {
    .sell-fonts-trail {
        padding-left: 30px;
        padding-right: 30px;
        max-width: 370px;
    }
}

@media screen and (max-width: 620px) {
    .sell-fonts-trail {
        flex-direction: column;
        gap: 10px;
    }
}

@keyframes animate-gradient {
    from {
        --angle: 90deg;
    }
    to {
        --angle: 450deg;
    }
}

.sell-fonts-trail p {
    font-size: 16px;
    line-height: 1.17;
    letter-spacing: 0.176px;
    color: #3d3d4d;
}

/* ------- How to sell design assets? ------- */
.sell-design {
    padding-top: 70px;
    padding-bottom: 70px;
    width: 100%;
    background-image: linear-gradient(
        180deg,
        rgb(38 77 109 / 50%) 0%,
        rgb(38 77 109 / 50%) 48%,
        rgb(13 17 23) 84%
    );
    background-size: cover;
}

.sell-design-title {
    font-size: 36px;
    line-height: 1.325;
    letter-spacing: 0.14px;
    margin-bottom: 60px;
}

@media screen and (max-width: 1024px) {
    .sell-design-title {
        font-size: 36px;
        line-height: 1.25;
    }
}

.sell-design-cards {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
}

@media screen and (max-width: 1024px) {
    .sell-design-cards {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media screen and (max-width: 640px) {
    .sell-design-cards {
        grid-template-columns: 1fr;
    }
}

.sell-design-card {
    background: #26272d;
    box-shadow: 0px 1px 26px rgba(0, 0, 0, 0.1);
    border-radius: 8px;
    overflow: hidden;
}

.sell-design-card-banner {
    height: 316px;
    width: 100%;
}

.sell-design-card-banner img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
}

.sell-design-card-content {
    padding-top: 44px;
    padding-left: 30px;
    padding-right: 30px;
}

.sell-design-card-label {
    font-weight: 500;
    font-size: 22px;
    line-height: 1.36;
    letter-spacing: 0.14px;
    color: white;
    margin-bottom: 10px;
}

.sell-design-card-description {
    font-weight: 400;
    font-size: 16px;
    line-height: 1.62;
    letter-spacing: 0.14px;
    color: #6e757c;
    padding-bottom: 30px;
}

.sell-design-card-cta {
    margin-left: -30px;
    margin-right: -30px;
    padding-top: 15px;
    padding-bottom: 15px;
    padding-left: 30px;
    padding-right: 30px;
    border-top: 1px solid #6e757c;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.sell-design-card-cta span {
    font-weight: 400;
    font-size: 14px;
    line-height: 23px;
    letter-spacing: 0.14px;
    text-transform: uppercase;
    color: #c6c6c8;
}

.sell-design-card-cta a {
    font-weight: 700;
    font-size: 14px;
    line-height: 18px;
    letter-spacing: 0.14px;
    text-transform: uppercase;
    display: flex;
    align-items: center;
    gap: 10px;
    text-decoration: none;
    color: white;
}

.sell-design-card-cta a::after {
    content: "";
    width: 6px;
    height: 10px;
    transition: transform 0.3s ease;
    background-image: url("data:image/svg+xml,%3Csvg width='6' height='10' viewBox='0 0 6 10' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cg clip-path='url(%23clip0_12232_4516)'%3E%3Cg clip-path='url(%23clip1_12232_4516)'%3E%3Cpath d='M3.58657 5.00057L0.293569 8.29357C0.198059 8.38582 0.121877 8.49616 0.0694681 8.61817C0.0170591 8.74017 -0.0105272 8.87139 -0.011681 9.00417C-0.0128348 9.13695 0.0124669 9.26863 0.0627478 9.39152C0.113029 9.51442 0.187282 9.62607 0.281174 9.71996C0.375067 9.81386 0.486719 9.88811 0.609615 9.93839C0.732512 9.98867 0.864191 10.014 0.996971 10.0128C1.12975 10.0117 1.26097 9.98408 1.38297 9.93167C1.50498 9.87926 1.61532 9.80308 1.70757 9.70757L5.70757 5.70757C5.89504 5.52004 6.00036 5.26573 6.00036 5.00057C6.00036 4.7354 5.89504 4.4811 5.70757 4.29357L1.70757 0.293569C1.61532 0.198059 1.50498 0.121877 1.38297 0.0694681C1.26097 0.0170591 1.12975 -0.0105272 0.996971 -0.011681C0.864191 -0.0128348 0.732512 0.0124669 0.609615 0.0627478C0.486719 0.113029 0.375067 0.187282 0.281174 0.281174C0.187282 0.375067 0.113029 0.486719 0.0627478 0.609615C0.0124669 0.732512 -0.0128348 0.864191 -0.011681 0.996971C-0.0105272 1.12975 0.0170591 1.26097 0.0694681 1.38297C0.121877 1.50498 0.198059 1.61532 0.293569 1.70757L3.58657 5.00057Z' fill='%2311171D'/%3E%3C/g%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='clip0_12232_4516'%3E%3Crect width='6' height='10' fill='white'/%3E%3C/clipPath%3E%3CclipPath id='clip1_12232_4516'%3E%3Crect width='16' height='10' fill='white'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E%0A");
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
}

.sell-design-card-cta a:hover::after {
    transform: translateX(4px);
}

.sell-design-cta {
    margin-top: 70px;
    display: flex;
    flex-direction: row;
    gap: 0;
    align-items: center;
    justify-content: center;
    max-width: 430px;
    margin-left: auto;
    margin-right: auto;
}

/* ------- Your all-in-one online store ------- */
.online-store {
    width: 100%;
    margin-top: 30px;
    margin-bottom: 70px;
}

.online-store-title {
    font-size: 36px;
    line-height: 1.36;
    letter-spacing: 0.14px;
    margin-bottom: 10px;
    margin-bottom: 60px;
    text-align: center;
}

.online-store-box {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 10px;
    align-items: center;
}

@media screen and (max-width: 1024px) {
    .online-store-box {
        grid-template-columns: 1fr;
    }
}

.online-store-banner img {
    width: 100%;
    border-radius: 8px;
}

.online-store-list {
    padding-top: 8px;
    padding-bottom: 6px;
}

.online-store-list h3 {
    font-weight: 700;
    font-size: 22px;
    line-height: 30px;
    letter-spacing: 0.14px;
    color: white;
    margin-bottom: 10px;
}

.online-store-list p {
    font-weight: 400;
    font-size: 16px;
    line-height: 26px;
    letter-spacing: 0.14px;
    padding-left: 30px;
    color: #e6e6e7;
    background-color: #353a40;
    border-radius: 10px;
    padding: 6px 20px;
    width: fit-content;
}

/* ------- Testimonials ------- */
.testimonial {
    padding-top: 73px;
    padding-bottom: 73px;
    width: 100%;
}

.testimonial-content {
    display: flex;
    justify-content: space-between;
    gap: 40px;
}

@media screen and (max-width: 768px) {
    .testimonial-content {
        flex-direction: column;
    }
}

.testimonial-image {
    max-width: 429px;
    width: 100%;
    align-self: center;
}

@media screen and (max-width: 768px) {
    .testimonial-image {
        max-width: 100%;
        order: 2;
    }
}

.testimonial-image img {
    width: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    border-radius: 8px;
}

.testimonial-review {
    max-width: 824px;
    width: 100%;
    display: flex;
    flex-direction: column;
    align-self: stretch;
}

.testimonial-review blockquote {
    font-weight: 700;
    font-size: 32px;
    line-height: 1.38;
    letter-spacing: 0.14px;
    margin-bottom: 18px;
    color: white;
}

@media screen and (max-width: 768px) {
    .testimonial-review blockquote {
        font-size: 28px;
    }
}

.testimonial-review blockquote + p {
    font-size: 16px;
    line-height: 1.625;
    letter-spacing: 0.14px;
    margin-bottom: 30px;
    color: #6e757c;
}

.testimonial-featured {
    margin-top: auto;
}

.testimonial-featured p {
    font-weight: 400;
    font-size: 16px;
    line-height: 1.625;
    letter-spacing: 0.14px;
    color: #6e757c;
}

.testimonial-featured-images {
    margin-top: 12px;
}

.testimonial-featured-images img {
    max-width: 100%;
    -o-object-fit: contain;
    object-fit: contain;
    display: block;
    mix-blend-mode: color-dodge;
}

/* ------- Launch your online store today ------- */
.launch-store {
    width: 100%;
    color: white;
    text-align: center;
    padding-top: 80px;
    padding-bottom: 80px;
}

@media screen and (max-width: 640px) {
    .launch-store {
        padding-top: 60px;
        padding-bottom: 60px;
    }
}

.launch-store-title {
    font-size: 36px;
    line-height: 1.4;
    letter-spacing: 0.14px;
    margin-bottom: 10px;
}

@media screen and (max-width: 640px) {
    .launch-store-title {
        line-height: 1.15;
    }
}

.launch-store-description {
    font-weight: 400;
    font-size: 16px;
    line-height: 1.625;
    letter-spacing: 0.14px;
    color: #6e757c;
}

.launch-store a {
    display: inline-block;
    margin-top: 60px;
    max-width: 420px;
}

@media screen and (max-width: 640px) {
    .launch-store a {
        margin-top: 40px;
    }
}

/* ============================================
   SELLFY STYLES - END
   ============================================ */

/* ============================================
   GOOGLE ADS OVERFLOW FIX - ITEM PAGE SIDEBAR
   Prevents Google ad injections (ins, iframe, div)
   from breaking bootstrap column layout
   ============================================ */
.col-12.col-md-4.col-lg-5.col-xl-4.text-center {
    overflow: hidden;
    max-width: 100%;
}

.col-12.col-md-4.col-lg-5.col-xl-4.text-center ins,
.col-12.col-md-4.col-lg-5.col-xl-4.text-center iframe,
.col-12.col-md-4.col-lg-5.col-xl-4.text-center [id^="google_ads"],
.col-12.col-md-4.col-lg-5.col-xl-4.text-center [id^="aswift"],
.col-12.col-md-4.col-lg-5.col-xl-4.text-center .adsbygoogle {
    max-width: 100% !important;
    overflow: hidden !important;
    display: block;
    box-sizing: border-box;
}

/* ============================================
   CREATOR SELLFY BANNER - UPLOAD & DASHBOARD
   ============================================ */
.creator-sellfy-banner {
    transition: transform 0.2s ease, box-shadow 0.2s ease;
    border-radius: 12px;
    overflow: hidden;
}

.creator-sellfy-banner:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.3);
}

.creator-sellfy-banner img {
    transition: transform 0.3s ease;
}

.creator-sellfy-banner:hover img {
    transform: scale(1.02);
}

@media screen and (max-width: 767px) {
    .creator-sellfy-banner img {
        border-radius: 12px 12px 0 0 !important;
        min-height: 140px !important;
    }
}

/* Blog / global card and modal overrides */
.card {
    background-color: transparent;
    border: 0;
}
.modal-content {
    background-color: #000;
}

/* Blog listings and thumbnails */
.blog-category-row {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}
.blog-category-pill {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 6px 12px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.08);
    color: #d4d7e2;
    font-weight: 600;
    text-decoration: none;
    transition: background 0.2s ease, color 0.2s ease, box-shadow 0.2s ease;
}
.blog-category-pill:hover {
    background: rgba(255, 255, 255, 0.16);
    color: #fff;
    text-decoration: none;
}
.blog-category-pill.active {
    background: rgba(76, 201, 240, 0.25);
    color: #4cc9f0;
    box-shadow: 0 0 0 1px rgba(76, 201, 240, 0.5);
}
.blog-category-count {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 22px;
    height: 22px;
    padding: 0 6px;
    border-radius: 999px;
    background: rgba(0, 0, 0, 0.35);
    color: #fff;
    font-size: 12px;
    font-weight: 700;
}
.blog-thumb {
    color: #fff;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.blog-thumb:hover {
    transform: translateY(-4px);
    text-decoration: none;
    color: #fff;
}
.blog-thumb-image {
    width: 100%;
    padding-top: 56%;
    border-radius: 16px;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.35);
}
.blog-thumb-body {
    padding-top: 12px;
}
.blog-thumb-title {
    font-size: 16px;
    color: #fff;
    overflow: hidden;
    text-overflow: ellipsis;
}
.blog-thumb-meta {
    display: flex;
    align-items: center;
    gap: 8px;
    color: #a9b1c3;
    font-size: 12px;
    font-weight: 600;
}
.blog-thumb-avatar {
    width: 22px;
    height: 22px;
    border-radius: 999px;
    object-fit: cover;
}
.blog-thumb-author {
    color: inherit;
}
.blog-thumb-topline {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    font-size: 12px;
    color: #9aa3b6;
    margin-top: 8px;
}
.blog-thumb-category {
    font-weight: 700;
}
.blog-thumb-date {
    font-weight: 600;
}
.blog-breadcrumbs {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    align-items: center;
}
.blog-breadcrumb {
    color: #cfd5e3;
    font-weight: 700;
    text-decoration: none;
    padding: 2px 0;
}
.blog-breadcrumb + .blog-breadcrumb::before {
    content: "<";
    margin-right: 6px;
    color: #6e7788;
}
.blog-breadcrumb:hover {
    color: #fff;
    text-decoration: none;
}
.blog-category-row-centered {
    justify-content: center;
}
.blog-index-hero {
    padding: 28px 0 18px;
}
.blog-index-title {
    font-size: 36px;
    font-weight: 800;
    color: #f7f9ff;
    margin: 0;
    text-shadow: 0 2px 10px rgba(0, 0, 0, 0.3);
}
.blog-author-avatar-link {
    display: inline-flex;
    align-items: center;
}
.blog-author-avatar-link:hover {
    text-decoration: none;
    opacity: 0.9;
}
.blog-hero-banner {
    background-color: #000;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    position: relative;
}
.blog-hero-banner::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    /* Top: dark overlay; bottom: blend into page body #0d1117 */
    background: linear-gradient(180deg, rgb(31, 31, 31) 0%, rgba(13, 17, 23, 0.64) 40%, rgba(13, 17, 23, 0.84) 70%, #1f1f1f 100%);
}
.blog-hero-banner-inner {
    position: relative;
    z-index: 1;
}
.blog-hero-banner h1 {
    text-shadow: 0 2px 4px rgba(0,0,0,0.5);
}
.blog-content {
    line-height: 1.8;
}
.blog-content h1, .blog-content h2, .blog-content h3, .blog-content h4 {
    margin-top: 1.5em;
    margin-bottom: 0.5em;
}
.blog-content p {
    margin-bottom: 1em;
}
.blog-content img {
    max-width: 100%;
    height: auto;
    border-radius: 8px;
    margin: 1em 0;
}
.blog-content a.blog-lightbox-item img {
    cursor: zoom-in;
}
.blog-content pre {
    background: #1a1a2e;
    padding: 1em;
    border-radius: 8px;
    overflow-x: auto;
    color: #31bd9d;
}
.blog-content code {
    background: #1a1a2e;
    padding: 0.2em 0.4em;
    border-radius: 4px;
}
.blog-content pre code {
    padding: 0;
    background: transparent;
}
.blog-content blockquote {
    border-left: 4px solid #6c757d;
    padding-left: 1em;
    margin-left: 0;
    color: #adb5bd;
}
.blog-content ul, .blog-content ol {
    margin-bottom: 1em;
}
.table-blog,
.table-blog th,
.table-blog td {
    border: 1px solid rgba(255, 255, 255, 0.06) !important;
    vertical-align: top;
    text-align: left;
    color: inherit;
    background: transparent;
}
.table-blog thead th {
    background: rgba(255, 255, 255, 0.06);
    vertical-align: middle;
}
.blog-embed {
    position: relative;
    width: 100%;
    padding-top: 56.25%;
    border-radius: 12px;
    overflow: hidden;
    margin: 1.5em 0;
    background: #0d0f18;
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.35);
}
.blog-embed iframe {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    border: 0;
}
#blog-reactions {
    position: relative;
}
.reaction-buttons {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}
.reaction-btn {
    border: 0;
    background: rgba(255, 255, 255, 0.05);
    color: inherit;
    padding: 6px 12px;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    transition: transform 0.15s ease, box-shadow 0.15s ease, background 0.2s ease;
}
.reaction-btn:hover {
    transform: translateY(-1px);
}
.reaction-btn.active {
    background: rgba(255, 255, 255, 0.15);
    box-shadow: 0 0 0 1px currentColor, 0 6px 18px rgba(0, 0, 0, 0.35);
}
.reaction-emoji {
    font-size: 22px;
    line-height: 1;
}
.reaction-count {
    font-weight: 600;
    color: inherit;
}
.reaction-count.reaction-glow {
    font-weight: 800;
    text-shadow: 0 0 10px currentColor;
    animation: reactionGlow 1s ease-out;
}
@keyframes reactionGlow {
    0% { transform: scale(1); opacity: 1; }
    50% { transform: scale(1.2); opacity: 1; }
    100% { transform: scale(1); opacity: 1; }
}
.reaction-btn[data-reaction="love"] { color: #ff4d6d; }
.reaction-btn[data-reaction="laugh"] { color: #ffd166; }
.reaction-btn[data-reaction="thumbs_up"] { color: #4cc9f0; }
.reaction-btn[data-reaction="useful"] { color: #9bff88; }
.reaction-btn[data-reaction="angry"] { color: #ff6b6b; }
#blog-reactions-readonly {
    display: block;
}
.reaction-btn-login {
    opacity: 0.6;
}
.reaction-btn-login:hover {
    transform: none;
    box-shadow: none;
    background: rgba(255, 255, 255, 0.08);
}
.reaction-readonly-badge {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 4px 10px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.08);
    color: #d3d7e2;
    font-weight: 600;
}
.reaction-readonly-badge[data-reaction="love"] { color: #ff4d6d; }
.reaction-readonly-badge[data-reaction="laugh"] { color: #ffd166; }
.reaction-readonly-badge[data-reaction="thumbs_up"] { color: #4cc9f0; }
.reaction-readonly-badge[data-reaction="useful"] { color: #9bff88; }
.reaction-readonly-badge[data-reaction="angry"] { color: #ff6b6b; }
.reaction-confetti {
    position: absolute;
    left: 0;
    top: 0;
    pointer-events: none;
    width: 0;
    height: 0;
    overflow: visible;
    transform: translate(-50%, -50%);
}
.reaction-confetti-piece {
    position: absolute;
    left: 0;
    top: 0;
    width: var(--s);
    height: calc(var(--s) * 1.4);
    background: var(--c);
    border-radius: 2px;
    opacity: 0;
    animation: confettiFall 0.9s ease-out var(--d) forwards;
}
@keyframes confettiFall {
    0% { opacity: 1; transform: translateX(0) translateY(0) rotate(0deg); }
    100% { opacity: 0; transform: translateX(var(--x)) translateY(70px) rotate(var(--r)); }
}

/* Hero pills — desktop-only visibility (no !important so JS can override) */
.hero-desktop-only {
    display: none;
}
@media (min-width: 768px) {
    .hero-desktop-only {
        display: inline-flex;
    }
}

/* Hero pills */
.hero-pills {
    display: flex;
    flex-wrap: nowrap;
    gap: 0.35rem;
    justify-content: center;
    margin-top: 2.5rem;
    overflow-x: clip;
    overflow-y: visible;
}
.hero-pill {
    display: inline-flex;
    align-items: center;
    gap: clamp(0.2rem, 0.5vw, 0.3rem);
    padding: 0.4rem 0.7rem;
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 999px;
    color: #fff;
    font-size: 0.875rem;
    font-weight: 500;
    white-space: nowrap;
    text-decoration: none !important;
    transition: background 0.2s ease, transform 0.2s ease;
}
.hero-pill-short { display: none; }
.hero-pill-full { display: inline; }
.hero-pill:hover {
    background: rgba(255, 255, 255, 0.16);
    transform: translateY(-1px);
    color: #fff;
}
.hero-pill-primary {
    background: rgba(38, 166, 154, 0.25);
    border-color: rgba(38, 166, 154, 0.4);
}
.hero-pill-primary:hover {
    background: rgba(38, 166, 154, 0.4);
}
.hero-pill-discord {
    background: rgba(88, 101, 242, 0.25);
    border-color: rgba(88, 101, 242, 0.4);
}
.hero-pill-discord:hover {
    background: rgba(88, 101, 242, 0.4);
}

/* Mobile: swap to short labels first, preserve size */
@media (max-width: 767.98px) {
    .hero-pills {
        justify-content: center;
    }
    .hero-pill-full { display: none; }
    .hero-pill-short { display: inline; }
}
/* Smaller mobile: hide icons (except dropdown chevron) */
@media (max-width: 479px) {
    .hero-pill i:not(.hero-more-chevron) {
        display: none;
    }
    .hero-pill {
        gap: 0;
    }
}
/* Extra-small: slight size reduction as last resort */
@media (max-width: 374px) {
    .hero-pill {
        font-size: 0.85rem;
        padding: 0.35rem 0.55rem;
    }
}

/* More / Categories overflow dropdown */
.hero-more-chevron {
    font-size: 0.65em;
    transition: transform 0.2s ease;
}
.hero-more-wrap.open .hero-more-chevron {
    transform: rotate(180deg);
}
.hero-more-wrap {
    position: relative;
}
.hero-more-toggle {
    cursor: pointer;
    border: 1px solid rgba(255, 255, 255, 0.1);
}
.hero-more-dropdown {
    display: none;
    position: absolute;
    top: calc(100% + 0.5rem);
    left: 50%;
    transform: translateX(-50%);
    background: #1a1a1a;
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: 0.75rem;
    padding: 0.4rem;
    min-width: 180px;
    z-index: 10;
    flex-direction: column;
}
.hero-more-wrap.open .hero-more-dropdown {
    display: flex;
}
.hero-categories-item {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 0.75rem;
    color: #ccc;
    font-size: 0.85rem;
    text-decoration: none !important;
    border-radius: 0.5rem;
    transition: background 0.15s ease;
    white-space: nowrap;
}
.hero-categories-item:hover {
    background: rgba(255, 255, 255, 0.08);
    color: #fff;
}

/* Feature cards */
.feature-card {
    transition: transform 0.2s ease, box-shadow 0.2s ease;
    position: relative;
    overflow: hidden;
    text-align: left;
}
.feature-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    width: 3px;
}
.feature-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.3);
}

/* Feature card accent variants */
.feature-card-purple::before {
    background: linear-gradient(180deg, #7c3aed, #a78bfa);
}
.feature-card-blue::before {
    background: linear-gradient(180deg, #2563eb, #60a5fa);
}
.feature-card-amber::before {
    background: linear-gradient(180deg, #d97706, #fbbf24);
}

/* Feature icon circles */
.feature-icon {
    width: 56px;
    height: 56px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    color: #fff;
    margin-bottom: 1rem;
}
.feature-card-purple .feature-icon {
    background: linear-gradient(135deg, #7c3aed, #a78bfa);
}
.feature-card-blue .feature-icon {
    background: linear-gradient(135deg, #2563eb, #60a5fa);
}
.feature-card-amber .feature-icon {
    background: linear-gradient(135deg, #d97706, #fbbf24);
}

/* Feature card buttons */
.btn-feature {
    display: inline-block;
    padding: 0.375rem 1rem;
    font-size: 0.875rem;
    font-weight: 500;
    border-radius: 6px;
    border: 1px solid;
    background: transparent;
    text-decoration: none !important;
    transition: background 0.2s ease, color 0.2s ease;
}
.feature-card-purple .btn-feature {
    color: #a78bfa;
    border-color: #a78bfa;
}
.feature-card-purple .btn-feature:hover {
    background: rgba(124, 58, 237, 0.15);
    color: #c4b5fd;
}
.feature-card-blue .btn-feature {
    color: #60a5fa;
    border-color: #60a5fa;
}
.feature-card-blue .btn-feature:hover {
    background: rgba(37, 99, 235, 0.15);
    color: #93c5fd;
}
.feature-card-amber .btn-feature {
    color: #fbbf24;
    border-color: #fbbf24;
}
.feature-card-amber .btn-feature:hover {
    background: rgba(217, 119, 6, 0.15);
    color: #fcd34d;
}

/* Partner image */
.partner-img {
    max-width: 100%;
    height: auto;
    border-radius: 12px;
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.4);
}

/* Crateyard partner banner */
.partner-banner {
    width: 100%;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
    border: 1px solid rgba(255, 255, 255, 0.06);
}
.partner-banner:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.3);
}

/* ── File Tree Component ── */

/* Summary badges */
.ft-summary {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-bottom: 10px;
}
.ft-badge {
    display: inline-flex;
    align-items: center;
    padding: 3px 10px;
    border-radius: 12px;
    font-size: 0.72rem;
    font-weight: 600;
    letter-spacing: 0.02em;
    border: 1px solid rgba(255,255,255,0.1);
    background: rgba(255,255,255,0.04);
    color: #ccc;
}
.ft-badge-models { color: #e8a035; border-color: rgba(232,160,53,0.3); }
.ft-badge-textures { color: #42a5f5; border-color: rgba(66,165,245,0.3); }
.ft-badge-materials { color: #ab47bc; border-color: rgba(171,71,188,0.3); }
.ft-badge-prefabs { color: #66bb6a; border-color: rgba(102,187,106,0.3); }
.ft-badge-scenes { color: #66bb6a; border-color: rgba(102,187,106,0.3); }
.ft-badge-scripts { color: #ef5350; border-color: rgba(239,83,80,0.3); }
.ft-badge-animations { color: #ff7043; border-color: rgba(255,112,67,0.3); }
.ft-badge-audio { color: #ec407a; border-color: rgba(236,64,122,0.3); }
.ft-badge-fonts { color: #8d6e63; border-color: rgba(141,110,99,0.3); }
.ft-badge-other { color: #9e9e9e; border-color: rgba(158,158,158,0.3); }

/* Toolbar */
.ft-toolbar {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 8px;
    padding-bottom: 6px;
    border-bottom: 1px solid rgba(255,255,255,0.08);
}
.ft-btn {
    background: rgba(255,255,255,0.06);
    border: 1px solid rgba(255,255,255,0.1);
    color: #aaa;
    padding: 2px 10px;
    border-radius: 4px;
    font-size: 0.7rem;
    cursor: pointer;
    transition: all 0.15s ease;
}
.ft-btn:hover {
    background: rgba(255,255,255,0.12);
    color: #ddd;
}
.ft-total {
    margin-left: auto;
    font-size: 0.72rem;
    color: #777;
}

/* Tree rendering - scrolls independently from summary/toolbar */
.ft-tree {
    font-family: 'JetBrains Mono', 'Fira Code', 'Cascadia Code', 'Consolas', monospace;
    font-size: 0.78rem;
    line-height: 1.6;
    white-space: nowrap;
    max-height: 350px;
    overflow-y: auto;
    overflow-x: auto;
    scrollbar-width: thin;
    scrollbar-color: rgba(255,255,255,0.15) transparent;
}
.ft-tree::-webkit-scrollbar {
    width: 6px;
    height: 6px;
}
.ft-tree::-webkit-scrollbar-track {
    background: transparent;
}
.ft-tree::-webkit-scrollbar-thumb {
    background: rgba(255,255,255,0.15);
    border-radius: 3px;
}
.ft-tree::-webkit-scrollbar-thumb:hover {
    background: rgba(255,255,255,0.25);
}
.ft-row {
    display: flex;
    align-items: center;
    padding: 0 2px;
    border-radius: 3px;
    transition: background 0.1s ease;
}
.ft-row:hover {
    background: rgba(255,255,255,0.04);
}
.ft-prefix {
    color: rgba(255,255,255,0.15);
    white-space: pre;
    user-select: none;
}
.ft-connector {
    color: rgba(255,255,255,0.2);
    white-space: pre;
    user-select: none;
}
.ft-folder-toggle {
    cursor: pointer;
    user-select: none;
    display: inline-flex;
    align-items: center;
    margin-right: 4px;
}
.ft-folder-toggle:hover {
    filter: brightness(1.3);
}
.ft-folder-icon {
    font-size: 0.85rem;
    line-height: 1;
}
.ft-folder-name {
    color: #e0c97f;
    font-weight: 600;
}
.ft-root-name {
    color: #f0d98f;
}
.ft-folder-count {
    margin-left: 6px;
    font-size: 0.65rem;
    color: #666;
    background: rgba(255,255,255,0.05);
    padding: 0 5px;
    border-radius: 8px;
}
.ft-file-icon {
    font-size: 0.8rem;
    margin-right: 4px;
    line-height: 1;
}
.ft-file-name {
    transition: color 0.1s ease;
}
.ft-row:hover .ft-file-name {
    filter: brightness(1.2);
}
.ft-children {
    transition: none;
}

/* ── Download Page Compact Layout ── */
.dl-thumbs {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}
.dl-thumb {
    display: block;
    width: 72px;
    height: 72px;
    border-radius: 6px;
    overflow: hidden;
    border: 2px solid transparent;
    transition: border-color 0.15s ease, transform 0.15s ease;
    cursor: pointer;
    flex-shrink: 0;
}
.dl-thumb:hover {
    border-color: #2ba69a;
    transform: scale(1.05);
}
.dl-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.dl-download-box {
    background: rgba(43, 166, 154, 0.08);
    border: 1px solid rgba(43, 166, 154, 0.25);
}
.dl-info-grid {
    background: rgba(255,255,255,0.03);
    border: 1px solid rgba(255,255,255,0.06);
    border-radius: 8px;
    padding: 12px 14px;
}
.dl-info-row {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    margin-bottom: 6px;
}
.dl-info-row:last-child {
    margin-bottom: 0;
}
.dl-info-details {
    display: flex;
    flex-wrap: wrap;
    gap: 4px 14px;
    margin-top: 8px;
    padding-top: 8px;
    border-top: 1px solid rgba(255,255,255,0.06);
    font-size: 0.82rem;
    color: #aaa;
}
.dl-info-meta {
    color: #888;
}
.dl-tip-box {
    background: rgba(102, 187, 106, 0.08);
    border: 1px solid rgba(102, 187, 106, 0.2);
    border-radius: 6px;
    padding: 8px 12px;
}

/* ===== Contact Page ===== */
.contact-hero {
    background: linear-gradient(135deg, #1a2a28 0%, #1f1f1f 50%, #1f1a2a 100%);
    border-bottom: 1px solid rgba(38, 166, 154, 0.15);
}

.contact-hero-sub {
    color: #9e9e9e;
    font-size: 1.15rem;
    line-height: 1.7;
    max-width: 520px;
}

.contact-card {
    background: #1a1a1e;
    border-radius: 12px;
    overflow: hidden;
    display: flex;
    border: 1px solid rgba(255,255,255,0.05);
    transition: border-color 0.3s;
}

.contact-card:hover {
    border-color: rgba(38, 166, 154, 0.2);
}

.contact-card-accent {
    width: 4px;
    flex-shrink: 0;
    background: linear-gradient(180deg, #26a69a, #1a7a70);
}

.contact-card-accent.accent-purple {
    background: linear-gradient(180deg, #8f66d6, #6b44b8);
}

.contact-card-body {
    padding: 1.75rem;
    flex: 1;
}

.contact-icon-circle {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    background: rgba(38, 166, 154, 0.12);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.3rem;
    color: #26a69a;
    flex-shrink: 0;
}

.contact-icon-circle.icon-purple {
    background: rgba(143, 102, 214, 0.12);
    color: #8f66d6;
}

.contact-perks {
    list-style: none;
    padding: 0;
    margin: 0;
}

.contact-perks li {
    padding: 0.4rem 0;
    color: #ccc;
    display: flex;
    align-items: center;
    gap: 0.6rem;
}

.text-cucumber {
    color: #26a69a;
}

.contact-sidebar {
    position: sticky;
    top: 2rem;
}

.contact-email-box {
    background: #1a1a1e;
    border: 1px solid rgba(38, 166, 154, 0.2);
    border-radius: 12px;
    padding: 2rem;
    text-align: center;
}

.contact-email-link {
    font-size: 1.15rem;
    font-weight: 600;
    color: #26a69a !important;
    word-break: break-all;
}

.contact-sidebar-links {
    background: #1a1a1e;
    border: 1px solid rgba(255,255,255,0.05);
    border-radius: 12px;
    padding: 1.5rem;
}

.contact-link-item {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.6rem 0.75rem;
    border-radius: 8px;
    color: #9e9e9e !important;
    font-weight: 400;
    transition: background 0.2s, color 0.2s;
    margin-bottom: 0.25rem;
}

.contact-link-item:hover {
    background: rgba(255,255,255,0.04);
    color: #fff !important;
}

.contact-link-item i {
    font-size: 1.1rem;
    width: 20px;
    text-align: center;
}

.contact-discord-box {
    display: block;
    background: rgba(88, 101, 242, 0.1);
    border: 1px solid rgba(88, 101, 242, 0.25);
    border-radius: 12px;
    padding: 1.25rem 1.5rem;
    color: #fff !important;
    transition: background 0.2s, border-color 0.2s, transform 0.2s;
}

.contact-discord-box span {
    color: #9e9e9e;
    font-size: 0.85rem;
}

.contact-discord-box i.bi-discord {
    color: #5865F2;
}

.contact-discord-box:hover {
    background: rgba(88, 101, 242, 0.18);
    border-color: rgba(88, 101, 242, 0.4);
    transform: translateY(-1px);
    color: #fff !important;
}

/* ── Discord Page ── */

.discord-hero {
    background: linear-gradient(135deg, #1a1d2e 0%, #1f1f1f 50%, #1a1f2e 100%);
    border-bottom: 1px solid rgba(88, 101, 242, 0.15);
}

.discord-hero-sub {
    color: #9e9e9e;
    font-size: 1.15rem;
    line-height: 1.7;
    max-width: 520px;
}

.btn-outline-discord {
    color: #5865F2;
    border: 1px solid rgba(88, 101, 242, 0.5);
    background: transparent;
}

.btn-outline-discord:hover {
    background: rgba(88, 101, 242, 0.12);
    color: #7289da;
    border-color: #5865F2;
}

.text-blurple {
    color: #5865F2;
}

.discord-card {
    background: #1a1a1e;
    border-radius: 12px;
    overflow: hidden;
    display: flex;
    border: 1px solid rgba(255,255,255,0.05);
    transition: border-color 0.3s;
}

.discord-card:hover {
    border-color: rgba(88, 101, 242, 0.2);
}

.discord-card-accent {
    width: 4px;
    flex-shrink: 0;
    background: linear-gradient(180deg, #5865F2, #3a45c4);
}

.discord-card-accent.accent-blurple-light {
    background: linear-gradient(180deg, #7289da, #5865F2);
}

.discord-card-accent.accent-blurple-dark {
    background: linear-gradient(180deg, #4752c4, #2f3a94);
}

.discord-card-body {
    padding: 1.75rem;
    flex: 1;
}

.discord-icon-circle {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    background: rgba(88, 101, 242, 0.12);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.3rem;
    color: #5865F2;
    flex-shrink: 0;
}

.discord-icon-circle.icon-blurple-light {
    background: rgba(114, 137, 218, 0.12);
    color: #7289da;
}

.discord-icon-circle.icon-blurple-dark {
    background: rgba(71, 82, 196, 0.12);
    color: #4752c4;
}

.discord-perks {
    list-style: none;
    padding: 0;
    margin: 0;
}

.discord-perks li {
    padding: 0.4rem 0;
    color: #ccc;
    display: flex;
    align-items: center;
    gap: 0.6rem;
}

.discord-sidebar {
    position: sticky;
    top: 2rem;
}

.discord-invite-box {
    background: #1a1a1e;
    border: 1px solid rgba(88, 101, 242, 0.2);
    border-radius: 12px;
    padding: 2rem;
    text-align: center;
}

.discord-sidebar-links {
    background: #1a1a1e;
    border: 1px solid rgba(255,255,255,0.05);
    border-radius: 12px;
    padding: 1.5rem;
}

.discord-link-item {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.6rem 0.75rem;
    border-radius: 8px;
    color: #9e9e9e !important;
    font-weight: 400;
    transition: background 0.2s, color 0.2s;
    margin-bottom: 0.25rem;
}

.discord-link-item:hover {
    background: rgba(88, 101, 242, 0.08);
    color: #fff !important;
}

.discord-link-item i {
    font-size: 1.1rem;
    width: 20px;
    text-align: center;
}

/* ── About Page ── */

.about-hero {
    background: linear-gradient(135deg, #1a2a28 0%, #1f1f1f 50%, #1f1a2a 100%);
    border-bottom: 1px solid rgba(38, 166, 154, 0.15);
}

.about-hero-sub {
    color: #9e9e9e;
    font-size: 1.15rem;
    line-height: 1.7;
    max-width: 520px;
}

.btn-outline-cucumber {
    color: #26a69a;
    border: 1px solid rgba(38, 166, 154, 0.5);
    background: transparent;
}

.btn-outline-cucumber:hover {
    background: rgba(38, 166, 154, 0.12);
    color: #4dd0c4;
    border-color: #26a69a;
}

.about-staff-card {
    background: #1a1a1e;
    border: 1px solid rgba(255,255,255,0.05);
    border-radius: 12px;
    padding: 1.25rem;
    transition: border-color 0.3s;
}

.about-staff-card:hover {
    border-color: rgba(38, 166, 154, 0.2);
}

.about-badge {
    display: inline-block;
    font-size: 0.75rem;
    font-weight: 600;
    padding: 0.25rem 0.6rem;
    border-radius: 6px;
}

.about-badge-teal {
    background: rgba(38, 166, 154, 0.15);
    color: #26a69a;
}

.about-badge-purple {
    background: rgba(143, 102, 214, 0.15);
    color: #8f66d6;
}

.about-card {
    background: #1a1a1e;
    border-radius: 12px;
    overflow: hidden;
    display: flex;
    border: 1px solid rgba(255,255,255,0.05);
    transition: border-color 0.3s;
}

.about-card:hover {
    border-color: rgba(38, 166, 154, 0.2);
}

.about-card-accent {
    width: 4px;
    flex-shrink: 0;
    background: linear-gradient(180deg, #26a69a, #1a7a70);
}

.about-card-accent.accent-about-purple {
    background: linear-gradient(180deg, #8f66d6, #6b44b8);
}

.about-card-body {
    padding: 1.75rem;
    flex: 1;
}

.about-icon-circle {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    background: rgba(38, 166, 154, 0.12);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.3rem;
    color: #26a69a;
    flex-shrink: 0;
}

.about-icon-circle.icon-about-purple {
    background: rgba(143, 102, 214, 0.12);
    color: #8f66d6;
}

.about-video-wrap {
    border-radius: 12px;
    overflow: hidden;
    border: 1px solid rgba(255,255,255,0.05);
}

.about-sidebar {
    position: sticky;
    top: 2rem;
}

.about-stats-box {
    background: #1a1a1e;
    border: 1px solid rgba(38, 166, 154, 0.2);
    border-radius: 12px;
    padding: 2rem;
    text-align: center;
}

.about-sidebar-links {
    background: #1a1a1e;
    border: 1px solid rgba(255,255,255,0.05);
    border-radius: 12px;
    padding: 1.5rem;
}

.about-link-item {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.6rem 0.75rem;
    border-radius: 8px;
    color: #9e9e9e !important;
    font-weight: 400;
    transition: background 0.2s, color 0.2s;
    margin-bottom: 0.25rem;
}

.about-link-item:hover {
    background: rgba(255,255,255,0.04);
    color: #fff !important;
}

.about-link-item i {
    font-size: 1.1rem;
    width: 20px;
    text-align: center;
}

/* Sensitive content censoring */
.sensitive-card {
    position: relative;
}
.sensitive-card img {
    filter: blur(18px) brightness(0.45);
    transition: filter 0.2s ease;
}
.sensitive-overlay {
    position: absolute;
    inset: 0;
    z-index: 10;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    background: rgba(0, 0, 0, 0.35);
    border-radius: inherit;
    padding: 1rem;
}
.sensitive-overlay .btn {
    margin-top: 0.5rem;
}
.sensitive-card .item-media-stage,
.sensitive-card .dl-gallery-main {
    visibility: hidden;
}
.sensitive-revealed .item-media-stage,
.sensitive-revealed .dl-gallery-main {
    visibility: visible;
}
.sensitive-revealed img {
    filter: none;
}

/* Inline word-level censoring (caution level) */
.censored-word {
    cursor: pointer;
    color: #bbb;
    background: rgba(255, 255, 255, 0.08);
    border-radius: 0.2rem;
    padding: 0 0.2rem;
    user-select: none;
}
.censored-word:hover {
    color: #fff;
    background: rgba(255, 255, 255, 0.18);
}

