/*
================================================
 SVIETGAME MODERN UCP THEME
 CLEANED + OPTIMIZED
 DESKTOP / TABLET / MOBILE
================================================
*/

/* =========================
   GLOBAL
========================= */

:root {
    --svg-bg: #f4f7fc;
    --svg-card: #ffffff;
    --svg-text: #1e293b;
    --svg-muted: #64748b;
    --svg-border: #e8eef7;
    --svg-primary: #2f6df6;
    --svg-success: #18b67a;
    --svg-info: #19b6df;
    --svg-warning: #f3a313;
    --svg-radius-lg: 22px;
    --svg-radius-md: 14px;
    --svg-shadow: 0 10px 30px rgba(15, 23, 42, .04);
    --svg-shadow-hover: 0 14px 34px rgba(15, 23, 42, .08);
}

*,
*::before,
*::after {
    box-sizing: border-box;
}

html,
body {
    width: 100%;
    min-height: 100%;
    margin: 0;
    overflow-x: hidden;
}

body {
    font-family: 'Inter', sans-serif !important;
    background: var(--svg-bg) !important;
    color: var(--svg-text);
}

#wrapper {
    width: 100%;
    min-height: 100vh;
}

#content-wrapper {
    flex: 1;
    min-width: 0;
    background: var(--svg-bg);
}

#content {
    width: 100%;
    min-width: 0;
}

.container-fluid {
    width: 100%;
    max-width: 100%;
    padding: 24px 24px 10px !important;
}


/* =========================
   DESKTOP SIDEBAR
========================= */

@media (min-width:768px) {

    .sidebar {
        width: 260px !important;
        min-width: 260px !important;
        flex: 0 0 260px !important;
    }

    .sidebar .nav-item .nav-link {
        width: auto !important;
    }

}



/* =========================
   TOPBAR + SIDEBAR POLISH
========================= */

.topbar {
    background: #fff !important;
    border-bottom: 1px solid #edf1f7;
    box-shadow: 0 5px 18px rgba(15, 23, 42, .035);
}

.topbar .navbar-search {
    width: 100%;
    max-width: 420px;
}

.topbar .navbar-search .form-control {
    min-height: 38px;
    border: 1px solid #edf1f7;
    background: #f8fafc;
}

.topbar .navbar-search .form-control:focus {
    border-color: #bfd2ff;
    background: #fff;
    box-shadow: 0 0 0 3px rgba(47, 109, 246, .10);
}

.topbar .img-profile {
    object-fit: cover;
    border: 2px solid #fff;
    box-shadow: 0 4px 12px rgba(15, 23, 42, .12);
}

.sidebar .sidebar-heading {
    color: #91a3bd !important;
    font-size: 11px !important;
    font-weight: 800 !important;
    letter-spacing: .8px;
}

.sidebar .nav-item .nav-link {
    border-radius: 10px;
    transition:
        background-color .2s ease,
        color .2s ease,
        transform .2s ease;
}

.sidebar .nav-item .nav-link:hover {
    transform: translateX(2px);
}

.sidebar .nav-item.active .nav-link {
    box-shadow: 0 8px 18px rgba(47, 109, 246, .22);
}

.sidebar-user-box,
.sidebar-user-card,
.sidebar .user-panel {
    margin: 16px 14px;
    padding: 16px 12px;
    border: 1px solid rgba(255, 255, 255, .08);
    border-radius: 12px;
    background: rgba(255, 255, 255, .04);
}

a:focus-visible,
button:focus-visible,
select:focus-visible,
input:focus-visible,
textarea:focus-visible {
    outline: 3px solid rgba(47, 109, 246, .24);
    outline-offset: 2px;
}

/* =========================
   STAT BOX
========================= */

.stat-box {
    width: 100%;
    min-height: 112px;
    padding: 24px 22px;

    position: relative;
    overflow: hidden;

    display: flex;
    align-items: center;
    justify-content: space-between;

    background: #fff;
    border: 1px solid #e8eef7;
    border-radius: 22px;

    box-shadow: 0 10px 30px rgba(15, 23, 42, .04);

    transition:
        transform .2s ease,
        box-shadow .2s ease;
}

.stat-box:hover {
    transform: translateY(-2px);
    box-shadow: 0 14px 34px rgba(15, 23, 42, .08);
}

.stat-content {
    position: relative;
    z-index: 2;

    min-width: 0;
    padding-right: 12px;
}

.stat-title {
    margin-bottom: 8px;

    font-size: 14px;
    font-weight: 700;
    line-height: 1.4;
    letter-spacing: .2px;
    text-transform: uppercase;
}

.stat-number {
    font-size: 24px;
    font-weight: 800;
    line-height: 1;
    color: #0f172a;
}

.stat-icon {
    width: 54px;
    height: 54px;
    min-width: 54px;
    flex: 0 0 54px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 50%;
    color: #fff;
    font-size: 22px;

    box-shadow: 0 12px 24px rgba(0, 0, 0, .12);
}

.stat-box.primary .stat-title {
    color: #2f6df6;
}

.stat-box.primary .stat-icon {
    background: linear-gradient(135deg, #13c4ff, #2f6df6);
}

.stat-box.success .stat-title {
    color: #18b67a;
}

.stat-box.success .stat-icon {
    background: linear-gradient(135deg, #31e1b0, #18b67a);
}

.stat-box.info .stat-title {
    color: #19b6df;
}

.stat-box.info .stat-icon {
    background: linear-gradient(135deg, #26d0f4, #23a6f0);
}

.stat-box.warning .stat-title {
    color: #f3a313;
}

.stat-box.warning .stat-icon {
    background: linear-gradient(135deg, #ffc233, #f3a313);
}


/* =========================
   SECURITY CARD
========================= */

.security-card {
    width: 100%;
    min-height: 126px;
    padding: 24px;

    position: relative;
    overflow: hidden;

    display: flex;
    align-items: center;

    background: #fff;
    border-radius: 22px;

    box-shadow: 0 10px 30px rgba(15, 23, 42, .04);
}

.warning-card {
    border: 1px solid #dbeafe;
    background: linear-gradient(135deg, #f6faff 0%, #fff 100%);
}

.pin-card {
    border: 1px solid #ffd9d4;
    background: linear-gradient(135deg, #fff8f8 0%, #fff 100%);
}

.mail-card {
    border: 1px solid #ffe2bd;
    background: linear-gradient(135deg, #fffaf2 0%, #fff 100%);
}

.security-icon {
    width: 58px;
    height: 58px;
    min-width: 58px;
    flex: 0 0 58px;

    margin-right: 18px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 50%;
    font-size: 26px;
}

.warning-card .security-icon {
    color: #2f6df6;
    background: #e7f0ff;
}

.pin-card .security-icon {
    color: #ff5a4f;
    background: #ffe6e3;
}

.mail-card .security-icon {
    color: #f5a11a;
    background: #ffefdb;
}

.security-content {
    position: relative;
    z-index: 2;

    min-width: 0;
    flex: 1;
}

.security-content h5 {
    margin: 0 0 8px;

    font-size: 17px;
    font-weight: 800;
    line-height: 1.4;
    color: #2b2f42;
}

.warning-card .security-content h5 {
    color: #2f6df6;
}

.pin-card .security-content h5 {
    color: #f05b4f;
}

.mail-card .security-content h5 {
    color: #f39b11;
}

.security-content p {
    margin: 0 0 14px;

    color: #64748b;
    font-size: 14px;
    line-height: 1.55;
}

.security-btn {
    padding: 11px 18px;

    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;

    border: 0;
    border-radius: 12px;

    color: #fff !important;
    font-weight: 700;
    line-height: 1.2;
    text-decoration: none !important;

    box-shadow: 0 10px 20px rgba(0, 0, 0, .1);

    cursor: pointer;
    transition:
        transform .2s ease,
        box-shadow .2s ease;
}

.security-btn:hover {
    color: #fff !important;
    text-decoration: none !important;

    transform: translateY(-1px);
    box-shadow: 0 13px 24px rgba(0, 0, 0, .14);
}

.pin-btn {
    background: linear-gradient(135deg, #ff6259, #f2463a);
}

.mail-btn {
    background: linear-gradient(135deg, #f8b126, #ee9400);
}

.security-close {
    position: absolute;
    top: 16px;
    right: 18px;
    z-index: 3;

    color: #a6afc4;
    font-size: 18px;
}

.security-bg {
    position: absolute;
    right: 22px;
    bottom: 18px;
    z-index: 1;

    font-size: 68px;
    opacity: .08;
    pointer-events: none;
}

.warning-card .security-bg {
    color: #2f6df6;
}

.pin-card .security-bg {
    color: #f2463a;
}

.mail-card .security-bg {
    color: #ee9400;
}


/* =========================
   COMMON CARD
========================= */

.modern-card {
    width: 100%;

    overflow: hidden;

    background: #fff;
    border: 1px solid #e8eef7;
    border-radius: 22px;

    box-shadow: var(--svg-shadow);

    transition:
        transform .2s ease,
        box-shadow .2s ease;
}

.modern-card:hover {
    transform: translateY(-1px);
    box-shadow: var(--svg-shadow-hover);
}

.modern-card.h-100 {
    height: 100%;
}

.modern-card-header {
    width: 100%;
    min-height: 58px;
    padding: 18px 22px;

    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;

    border-bottom: 1px solid #eef2f7;

    color: #2f6df6;
    font-size: 14px;
    font-weight: 800;
    line-height: 1.4;
}

.modern-card-header i {
    margin-right: 8px;
}

.modern-card-body {
    width: 100%;
    padding: 18px 22px;
}


/* =========================
   SERVER NOTICE
========================= */

.server-news {
    min-height: 165px;

    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.server-notice-item {
    padding: 16px;

    background: #f8fafc;
    border: 1px solid #eef2f7;
    border-radius: 14px;

    color: #334155;
    font-size: 14px;
    line-height: 1.7;

    overflow-wrap: anywhere;
}

.server-notice-footer {
    margin-top: 16px;

    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;

    font-size: 14px;
}

.server-notice-footer span {
    color: #2f6df6;
    font-weight: 700;
}

.server-notice-footer a {
    flex-shrink: 0;

    color: #64748b;
    font-weight: 600;
    text-decoration: none;
}

.server-notice-footer a:hover {
    color: #2f6df6;
    text-decoration: none;
}


/* =========================
   FANPAGE
========================= */

.fanpage-widget {
    width: 100%;
    min-height: 128px;

    position: relative;
    overflow: hidden;

    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
}

.fanpage-left {
    min-width: 0;

    position: relative;
    z-index: 2;

    display: flex;
    align-items: center;
    gap: 16px;
}

.fanpage-avatar {
    width: 68px;
    height: 68px;
    min-width: 68px;

    object-fit: cover;

    border: 4px solid #fff;
    border-radius: 50%;

    box-shadow: 0 8px 20px rgba(0, 0, 0, .08);
}

.fanpage-meta {
    min-width: 0;
}

.fanpage-name {
    color: #2b3445;
    font-size: 16px;
    font-weight: 800;
    line-height: 1.4;

    overflow-wrap: anywhere;
}

.fanpage-desc {
    margin-top: 4px;

    color: #64748b;
    font-size: 14px;
    line-height: 1.45;
}

.fanpage-btn {
    padding: 11px 18px;

    position: relative;
    z-index: 2;
    flex-shrink: 0;

    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;

    background: #f5f8ff;
    border: 1px solid #dbe8ff;
    border-radius: 12px;

    color: #2f6df6 !important;
    font-weight: 700;
    text-decoration: none !important;
}

.fanpage-btn:hover {
    background: #eaf1ff;
    color: #1d58d8 !important;
    text-decoration: none !important;
}

.fanpage-bg {
    position: absolute;
    right: 12px;
    bottom: 8px;
    z-index: 1;

    color: #2f6df6;
    font-size: 84px;
    opacity: .06;

    pointer-events: none;
}


/* =========================
   DISCORD
========================= */

.discord-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.discord-online-badge {
    display: flex;
    align-items: center;
    gap: 8px;

    color: #475569;
    font-size: 14px;
    font-weight: 700;
}

.online-dot {
    width: 10px;
    height: 10px;

    display: inline-block;

    background: #22c55e;
    border-radius: 50%;
}

.discord-frame {
    width: 100%;
    overflow: hidden;

    border-radius: 16px;
}

.discord-frame iframe {
    width: 100% !important;
    height: 260px !important;
    min-height: 260px !important;

    display: block;

    border: 0 !important;
    border-radius: 16px;
}


/* =================================================
   TABLET
================================================= */

@media (min-width:768px) and (max-width:1199.98px) {

    .container-fluid {
        padding: 20px 18px 10px !important;
    }

    .stat-box {
        min-height: 106px;
        padding: 20px;
    }

    .stat-title {
        font-size: 12px;
    }

    .stat-icon {
        width: 50px;
        height: 50px;
        min-width: 50px;
        flex-basis: 50px;

        font-size: 20px;
    }

    .security-card {
        padding: 20px;
    }

}


/* =================================================
   MOBILE
================================================= */

@media (max-width:767.98px) {

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

    #wrapper {
        width: 100% !important;
        min-width: 0 !important;

        display: block !important;
    }

    /*
     * Sidebar mặc định ẩn.
     * Khi nhấn nút menu, SB Admin thêm class .toggled
     * và sidebar sẽ trượt vào màn hình.
     */
    .sidebar {
        width: 260px !important;
        min-width: 260px !important;
        height: 100vh !important;
        min-height: 100vh !important;

        position: fixed !important;
        top: 0;
        left: 0;
        bottom: 0;
        z-index: 1060;

        overflow-x: hidden !important;
        overflow-y: auto !important;

        transform: translateX(-100%);
        transition: transform .25s ease;

        box-shadow: 8px 0 30px rgba(2, 6, 23, .28);
    }

    .sidebar.toggled {
        width: 260px !important;
        min-width: 260px !important;

        overflow-x: hidden !important;
        overflow-y: auto !important;

        transform: translateX(0);
    }

    /*
     * Lớp phủ tối khi mở sidebar.
     */
    body.sidebar-toggled::before {
        content: "";

        position: fixed;
        inset: 0;
        z-index: 1050;

        background: rgba(2, 6, 23, .48);
    }

    #content-wrapper {
        width: 100% !important;
        min-width: 0 !important;
        margin-left: 0 !important;
    }

    #content {
        width: 100% !important;
        min-width: 0 !important;
    }

    /*
     * Topbar
     */
    .topbar {
        width: 100%;
        min-height: 64px;
        margin-bottom: 0 !important;
        padding: 8px 10px !important;

        position: sticky;
        top: 0;
        z-index: 1030;

        border-radius: 0 !important;
    }

    #sidebarToggleTop {
        width: 44px;
        height: 44px;
        min-width: 44px;

        display: inline-flex !important;
        align-items: center;
        justify-content: center;

        margin-right: 8px;

        border-radius: 50%;
    }

    .topbar .navbar-nav {
        flex-shrink: 0;
    }

    .topbar .nav-link {
        padding-left: .45rem !important;
        padding-right: .45rem !important;
    }

    .topbar .img-profile {
        width: 36px !important;
        height: 36px !important;

        object-fit: cover;
    }

    /*
     * Nội dung chính
     */
    .container-fluid {
        width: 100% !important;
        max-width: 100% !important;

        padding: 16px 12px 8px !important;
    }

    .container-fluid>.row {
        margin-left: -6px !important;
        margin-right: -6px !important;
    }

    .container-fluid>.row>[class*="col-"] {
        padding-left: 6px !important;
        padding-right: 6px !important;
    }

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

    /*
     * Stat card
     */
    .stat-box {
        min-height: 102px;
        padding: 18px;

        border-radius: 18px;
    }

    .stat-content {
        min-width: 0;
        padding-right: 10px;
    }

    .stat-title {
        max-width: 190px;

        font-size: 12px;
        line-height: 1.4;
    }

    .stat-number {
        margin-top: 7px;

        font-size: 27px;
    }

    .stat-icon {
        width: 50px;
        height: 50px;
        min-width: 50px;
        flex: 0 0 50px;

        font-size: 20px;
    }

    /*
     * Security
     */
    .security-card {
        min-height: auto;
        padding: 18px;
        gap: 14px;

        align-items: flex-start;

        border-radius: 18px;
    }

    .security-icon {
        width: 50px;
        height: 50px;
        min-width: 50px;
        flex: 0 0 50px;

        margin-right: 0;

        font-size: 21px;
    }

    .security-content {
        width: 100%;
        min-width: 0;
    }

    .security-content h5 {
        padding-right: 18px;

        font-size: 15px;
        line-height: 1.45;
    }

    .security-content p {
        font-size: 13px;
        line-height: 1.55;
    }

    .security-btn {
        padding: 9px 14px;

        border-radius: 10px;

        font-size: 13px;
    }

    .security-close {
        top: 12px;
        right: 13px;

        font-size: 15px;
    }

    .security-bg {
        right: 12px;
        bottom: 12px;

        font-size: 48px;
    }

    /*
     * Card chung
     */
    .modern-card {
        height: auto !important;
        border-radius: 18px;
    }

    .modern-card.h-100 {
        height: auto !important;
    }

    .modern-card-header {
        min-height: 52px;
        padding: 15px 16px;

        font-size: 13px;
    }

    .modern-card-body {
        padding: 14px;
    }

    /*
     * Thông báo
     */
    .server-news {
        min-height: auto;
    }

    .server-notice-item {
        padding: 14px;

        font-size: 13px;
        line-height: 1.65;
    }

    .server-notice-footer {
        gap: 12px;

        font-size: 12px;
    }

    /*
     * Fanpage
     */
    .fanpage-widget {
        min-height: auto;

        flex-direction: column;
        align-items: flex-start;

        gap: 16px;
    }

    .fanpage-left {
        width: 100%;
    }

    .fanpage-avatar {
        width: 56px;
        height: 56px;
        min-width: 56px;
    }

    .fanpage-name {
        font-size: 14px;
    }

    .fanpage-desc {
        font-size: 12px;
    }

    .fanpage-btn {
        width: 100%;
        justify-content: center;
    }

    .fanpage-bg {
        display: none;
    }

    /*
     * Discord
     */
    .discord-header {
        flex-direction: column;
        align-items: flex-start;

        gap: 8px;
    }

    .discord-online-badge {
        font-size: 12px;
    }

    .discord-frame {
        border-radius: 12px;
    }

    .discord-frame iframe {
        width: 100% !important;
        height: 260px !important;
        min-height: 260px !important;

        border-radius: 12px;
    }

}


/* =================================================
   VERY SMALL MOBILE
================================================= */

@media (max-width:420px) {

    .container-fluid {
        padding-left: 10px !important;
        padding-right: 10px !important;
    }

    .stat-title {
        max-width: 165px;
        font-size: 11px;
    }

    .stat-number {
        font-size: 25px;
    }

    .security-card {
        flex-direction: column;
        align-items: flex-start;
    }

    .security-icon {
        margin-bottom: 2px;
    }

    .security-content h5 {
        padding-right: 0;
    }

    .security-btn {
        width: 100%;
        justify-content: center;
    }

    .security-bg,
    .security-close {
        display: none;
    }

    .server-notice-footer {
        flex-direction: column;
        align-items: flex-start;
    }

    .fanpage-left {
        align-items: flex-start;
    }

    .discord-frame iframe {
        height: 240px !important;
        min-height: 240px !important;
    }

}

/* ==================================================
   SVIETGAME CANVAS SNOW
================================================== */

#sv-snow-canvas {
    position: fixed;
    inset: 0;
    width: 100vw;
    height: 100vh;
    display: block;

    pointer-events: none;
    user-select: none;

    z-index: 999999;
}

@media (max-width:767.98px) {
    #sv-snow-canvas {
        opacity: .92;
    }
}

/* =========================
   BUTTON TẢI GAME SIDEBAR
========================= */

.sidebar .game-download-item {
    width: 100%;
    margin: 20px 0 18px !important;
    padding: 0 14px;
    list-style: none;
}

.sidebar .game-download-btn {
    width: 100%;
    min-height: 42px;
    padding: 9px 16px;

    display: flex !important;
    align-items: center;
    justify-content: center;
    gap: 8px;

    border: 1px solid #70e69a !important;
    border-radius: 8px;

    background: linear-gradient(180deg, #3edb74 0%, #1db75a 100%) !important;

    color: #fff !important;
    font-size: 17px;
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: .2px;
    text-align: center;
    text-decoration: none !important;
    text-shadow: 0 1px 2px rgba(0, 0, 0, .34);

    box-shadow:
        0 4px 10px rgba(0, 0, 0, .22),
        inset 0 1px 0 rgba(255, 255, 255, .28);

    transition:
        transform .2s ease,
        box-shadow .2s ease,
        filter .2s ease;
}

.sidebar .game-download-btn:hover {
    background: linear-gradient(180deg, #50e984 0%, #20c462 100%) !important;
    color: #fff !important;
    text-decoration: none !important;

    transform: translateY(-2px);
    filter: brightness(1.02);

    box-shadow:
        0 7px 15px rgba(0, 0, 0, .26),
        inset 0 1px 0 rgba(255, 255, 255, .30);
}

.sidebar .game-download-btn:active {
    transform: translateY(0) scale(.985);
}

.sidebar .game-download-btn img {
    display: none !important;
}

@media(max-width:767.98px) {
    .sidebar .game-download-item {
        margin: 18px 0 14px !important;
        padding: 0 12px;
    }

    .sidebar .game-download-btn {
        min-height: 42px;
        font-size: 16px;
    }
}


/* ==================================================
   DISCORD VERIFICATION CARD
================================================== */

.discord-security-card {
    position: relative;
    min-height: 126px;
    padding: 24px;

    display: flex;
    align-items: center;

    overflow: hidden;

    border: 1px solid #d8ddff !important;
    border-radius: 22px;

    background:
        linear-gradient(135deg,
            #f7f8ff 0%,
            #ffffff 100%) !important;

    box-shadow:
        0 10px 30px rgba(15, 23, 42, .04);
}

.discord-security-icon {
    width: 58px !important;
    height: 58px !important;
    min-width: 58px !important;

    margin-right: 18px !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    border-radius: 50% !important;

    background: #e8ebff !important;
    color: #5865f2 !important;

    font-size: 25px !important;
}

.discord-security-icon i {
    color: #5865f2 !important;
}

.discord-security-title {
    margin: 0 0 8px !important;

    color: #5865f2 !important;

    font-size: 17px !important;
    font-weight: 800 !important;
}

.discord-security-card .security-content {
    position: relative;
    z-index: 3;
}

.discord-security-card .security-content p {
    margin: 0 0 14px !important;

    color: #64748b !important;

    font-size: 14px !important;
}

.discord-security-btn {
    width: auto !important;
    min-width: 170px !important;

    padding: 11px 18px !important;

    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;

    border: 0 !important;
    border-radius: 12px !important;

    background:
        linear-gradient(135deg,
            #5865f2,
            #4752c4) !important;

    color: #ffffff !important;

    font-size: 14px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;

    text-decoration: none !important;

    box-shadow:
        0 10px 20px rgba(88, 101, 242, .25) !important;

    transition:
        transform .2s ease,
        box-shadow .2s ease,
        filter .2s ease;
}

.discord-security-btn,
.discord-security-btn span,
.discord-security-btn i {
    color: #ffffff !important;
}

.discord-security-btn:hover {
    color: #ffffff !important;
    text-decoration: none !important;

    transform: translateY(-1px);

    filter: brightness(1.06);

    box-shadow:
        0 13px 24px rgba(88, 101, 242, .34) !important;
}

.discord-security-bg {
    position: absolute !important;

    right: 24px !important;
    bottom: 18px !important;

    z-index: 1 !important;

    color: #5865f2 !important;

    font-size: 68px !important;

    opacity: .08 !important;

    pointer-events: none;
}

@media(max-width:767.98px) {

    .discord-security-card {
        padding: 18px !important;
        min-height: 116px !important;
    }

    .discord-security-icon {
        width: 50px !important;
        height: 50px !important;
        min-width: 50px !important;

        margin-right: 13px !important;

        font-size: 21px !important;
    }

    .discord-security-title {
        padding-right: 35px;

        font-size: 15px !important;
        line-height: 1.35 !important;
    }

    .discord-security-card .security-content p {
        font-size: 12px !important;
        line-height: 1.5 !important;
    }

    .discord-security-btn {
        min-width: 155px !important;

        padding: 10px 14px !important;

        font-size: 13px !important;
    }

    .discord-security-bg {
        right: 14px !important;
        bottom: 15px !important;

        font-size: 55px !important;
    }

}

/* =========================
   ACCESSIBILITY / LOW MOTION
========================= */

@media (prefers-reduced-motion:reduce) {

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

    #sv-snow-canvas {
        display: none !important;
    }
}
/* =========================
   MODERN SIDEBAR GUEST CARD
========================= */

.sidebar .sv-guest-card {
    position: relative;
    isolation: isolate;
    width: calc(100% - 24px) !important;
    margin: 14px 12px 20px !important;
    padding: 16px !important;
    overflow: hidden;
    align-items: stretch !important;
    color: #eaf2ff !important;
    border: 1px solid rgba(148, 163, 184, .18) !important;
    border-radius: 20px !important;
    background:
        linear-gradient(145deg, rgba(15, 23, 42, .98), rgba(14, 28, 57, .98)) !important;
    box-shadow:
        0 18px 38px rgba(2, 8, 23, .34),
        inset 0 1px 0 rgba(255, 255, 255, .05) !important;
}

.sidebar .sv-guest-card::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -2;
    background:
        radial-gradient(circle at 12% 0%, rgba(59, 130, 246, .28), transparent 40%),
        radial-gradient(circle at 100% 100%, rgba(34, 197, 94, .16), transparent 42%);
    pointer-events: none;
}

.sidebar .sv-guest-card__decor {
    position: absolute;
    top: -50px;
    right: -50px;
    z-index: -1;
    width: 128px;
    height: 128px;
    border: 18px solid rgba(255, 255, 255, .03);
    border-radius: 50%;
    pointer-events: none;
}

.sidebar .sv-guest-card__header {
    display: flex;
    align-items: center;
    min-width: 0;
    margin-bottom: 14px;
}

.sidebar .sv-guest-card__avatar-wrap {
    position: relative;
    width: 62px;
    height: 62px;
    min-width: 62px;
    padding: 3px;
    border-radius: 18px;
    background: linear-gradient(135deg, #5b8cff, #22c58b);
    box-shadow: 0 10px 24px rgba(47, 109, 246, .28);
}

.sidebar .sv-guest-card__avatar {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center top;
    border: 2px solid #111c31;
    border-radius: 15px;
    background: #f8fafc;
}

.sidebar .sv-guest-card__status {
    position: absolute;
    right: -2px;
    bottom: -2px;
    width: 15px;
    height: 15px;
    border: 3px solid #111c31;
    border-radius: 50%;
    background: #94a3b8;
    box-shadow: 0 0 0 2px rgba(148, 163, 184, .16);
}

.sidebar .sv-guest-card__identity {
    min-width: 0;
    margin-left: 12px;
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    align-items: flex-start;
}

.sidebar .sv-guest-card__eyebrow {
    margin-bottom: 3px;
    color: #8da2c3;
    font-size: 9px;
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: 1.2px;
}

.sidebar .sv-guest-card__name {
    color: #ffffff;
    font-size: 15px;
    font-weight: 800;
    line-height: 1.3;
}

.sidebar .sv-guest-card__tagline {
    margin-top: 4px;
    color: #9fb0ca;
    font-size: 10px;
    line-height: 1.55;
}

.sidebar .sv-guest-card__benefits {
    width: 100%;
    display: grid;
    gap: 8px;
}

.sidebar .sv-guest-card__benefit-item {
    min-width: 0;
    padding: 10px 11px;
    display: flex;
    align-items: center;
    gap: 9px;
    border: 1px solid rgba(148, 163, 184, .12);
    border-radius: 13px;
    background: rgba(255, 255, 255, .045);
}

.sidebar .sv-guest-card__benefit-icon {
    width: 29px;
    height: 29px;
    min-width: 29px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #93c5fd;
    border-radius: 10px;
    background: rgba(59, 130, 246, .16);
    font-size: 11px;
}

.sidebar .sv-guest-card__benefit-copy {
    min-width: 0;
    color: #f8fafc;
    font-size: 10px;
    font-weight: 700;
    line-height: 1.45;
}

.sidebar .sv-guest-card__actions {
    width: 100%;
    margin-top: 12px;
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 8px;
}

.sidebar .sv-guest-card__login-btn,
.sidebar .sv-guest-card__register-btn {
    min-height: 40px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    border-radius: 12px;
    font-size: 11px;
    font-weight: 800;
    text-decoration: none !important;
    transition:
        transform .2s ease,
        filter .2s ease,
        box-shadow .2s ease,
        background-color .2s ease;
}

.sidebar .sv-guest-card__login-btn {
    color: #ffffff !important;
    border: 1px solid rgba(96, 165, 250, .24);
    background: linear-gradient(135deg, #2563eb, #3979f7);
    box-shadow: 0 8px 18px rgba(37, 99, 235, .22);
}

.sidebar .sv-guest-card__register-btn {
    color: #dbeafe !important;
    border: 1px solid rgba(148, 163, 184, .18);
    background: rgba(255, 255, 255, .055);
}

.sidebar .sv-guest-card__login-btn:hover,
.sidebar .sv-guest-card__register-btn:hover {
    transform: translateY(-1px);
    filter: brightness(1.06);
}

.sidebar .sv-guest-card__register-btn:hover {
    color: #ffffff !important;
    background: rgba(255, 255, 255, .09);
}

@media (max-width: 1100px) and (min-width: 992px) {
    .sidebar .sv-guest-card {
        padding: 13px !important;
    }
}

/* =========================
   MODERN SIDEBAR PROFILE CARD
========================= */

.sidebar .sv-profile-card {
    position: relative;
    isolation: isolate;
    width: calc(100% - 24px) !important;
    margin: 14px 12px 20px !important;
    padding: 16px !important;
    overflow: hidden;
    align-items: stretch !important;
    color: #eaf2ff !important;
    border: 1px solid rgba(148, 163, 184, .18) !important;
    border-radius: 18px !important;
    background:
        linear-gradient(145deg, rgba(30, 41, 59, .98), rgba(15, 23, 42, .98)) !important;
    box-shadow:
        0 18px 38px rgba(2, 8, 23, .32),
        inset 0 1px 0 rgba(255, 255, 255, .05) !important;
}

.sidebar .sv-profile-card::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -2;
    background:
        radial-gradient(circle at 12% 0%, rgba(47, 109, 246, .28), transparent 38%),
        radial-gradient(circle at 100% 100%, rgba(24, 182, 122, .14), transparent 42%);
    pointer-events: none;
}

.sidebar .sv-profile-card__decor {
    position: absolute;
    top: -44px;
    right: -42px;
    z-index: -1;
    width: 116px;
    height: 116px;
    border: 18px solid rgba(255, 255, 255, .025);
    border-radius: 50%;
    pointer-events: none;
}

.sidebar .sv-profile-card__header {
    display: flex;
    align-items: center;
    min-width: 0;
    margin-bottom: 14px;
}

.sidebar .sv-profile-card__avatar-link {
    flex: 0 0 auto;
    text-decoration: none !important;
}

.sidebar .sv-profile-card__avatar-wrap {
    position: relative;
    width: 58px;
    height: 58px;
    display: block;
    padding: 3px;
    border-radius: 18px;
    background: linear-gradient(135deg, #5b8cff, #22c58b);
    box-shadow: 0 10px 24px rgba(47, 109, 246, .28);
}

.sidebar .sv-profile-card__avatar {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    object-position: center top;
    border: 2px solid #111c31;
    border-radius: 15px;
    background: #f8fafc;
}

.sidebar .sv-profile-card__status {
    position: absolute;
    right: -2px;
    bottom: -2px;
    width: 15px;
    height: 15px;
    border: 3px solid #111c31;
    border-radius: 50%;
    background: #22c55e;
    box-shadow: 0 0 0 2px rgba(34, 197, 94, .16);
}

.sidebar .sv-profile-card__identity {
    min-width: 0;
    margin-left: 12px;
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    align-items: flex-start;
}

.sidebar .sv-profile-card__eyebrow {
    margin-bottom: 2px;
    color: #8da2c3;
    font-size: 9px;
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: 1.2px;
}

.sidebar .sv-profile-card__username {
    width: 100%;
    overflow: hidden;
    color: #ffffff !important;
    font-size: 14px;
    font-weight: 800;
    line-height: 1.35;
    text-decoration: none !important;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sidebar .sv-profile-card__username:hover {
    color: #9fc1ff !important;
}

.sidebar .sv-profile-card__rank {
    max-width: 100%;
    margin-top: 5px;
    padding: 4px 8px;
    overflow: hidden;
    display: inline-flex;
    align-items: center;
    gap: 5px;
    color: #bfdbfe;
    border: 1px solid rgba(96, 165, 250, .18);
    border-radius: 999px;
    background: rgba(37, 99, 235, .14);
    font-size: 9px;
    font-weight: 700;
    line-height: 1.2;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sidebar .sv-profile-card__rank i {
    color: #60a5fa;
    font-size: 9px;
}

.sidebar .sv-profile-card__primary-balance {
    width: 100%;
    min-height: 58px;
    padding: 10px 12px;
    display: flex;
    align-items: center;
    border: 1px solid rgba(96, 165, 250, .22);
    border-radius: 14px;
    background: linear-gradient(135deg, rgba(37, 99, 235, .27), rgba(14, 165, 233, .12));
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .04);
}

.sidebar .sv-profile-card__balance-icon {
    width: 36px;
    height: 36px;
    min-width: 36px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #dbeafe;
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: 11px;
    background: rgba(59, 130, 246, .28);
    font-size: 15px;
}

.sidebar .sv-profile-card__balance-copy,
.sidebar .sv-profile-card__wallet-copy {
    min-width: 0;
    margin-left: 10px;
    display: flex;
    flex-direction: column;
}

.sidebar .sv-profile-card__balance-copy small,
.sidebar .sv-profile-card__wallet-copy small {
    color: #94a7c4;
    font-size: 9px;
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: .35px;
    text-transform: uppercase;
}

.sidebar .sv-profile-card__balance-copy strong {
    margin-top: 2px;
    overflow: hidden;
    color: #ffffff;
    font-size: 16px;
    font-weight: 800;
    line-height: 1.25;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sidebar .sv-profile-card__wallet-grid {
    width: 100%;
    margin-top: 8px;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
}

.sidebar .sv-profile-card__wallet-item {
    min-width: 0;
    min-height: 58px;
    padding: 9px;
    display: flex;
    align-items: center;
    border: 1px solid rgba(148, 163, 184, .12);
    border-radius: 12px;
    background: rgba(255, 255, 255, .045);
    transition:
        border-color .2s ease,
        background-color .2s ease,
        transform .2s ease;
}

.sidebar .sv-profile-card__wallet-item:hover {
    transform: translateY(-1px);
    border-color: rgba(148, 163, 184, .22);
    background: rgba(255, 255, 255, .065);
}

.sidebar .sv-profile-card__wallet-icon {
    width: 28px;
    height: 28px;
    min-width: 28px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 9px;
    font-size: 11px;
}

.sidebar .sv-profile-card__wallet-icon--cash {
    color: #86efac;
    background: rgba(34, 197, 94, .13);
}

.sidebar .sv-profile-card__wallet-icon--bank {
    color: #67e8f9;
    background: rgba(6, 182, 212, .13);
}

.sidebar .sv-profile-card__wallet-copy {
    margin-left: 7px;
}

.sidebar .sv-profile-card__wallet-copy strong {
    margin-top: 2px;
    overflow: hidden;
    color: #f8fafc;
    font-size: 11px;
    font-weight: 800;
    line-height: 1.25;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sidebar .sv-profile-card__actions {
    width: 100%;
    margin-top: 12px;
    display: grid;
    grid-template-columns: minmax(0, 1fr) 40px;
    gap: 8px;
}

.sidebar .sv-profile-card__profile-btn,
.sidebar .sv-profile-card__logout-btn {
    min-height: 40px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #ffffff !important;
    border-radius: 11px;
    font-size: 11px;
    font-weight: 800;
    text-decoration: none !important;
    transition:
        transform .2s ease,
        filter .2s ease,
        box-shadow .2s ease;
}

.sidebar .sv-profile-card__profile-btn {
    gap: 7px;
    border: 1px solid rgba(96, 165, 250, .24);
    background: linear-gradient(135deg, #2563eb, #3979f7);
    box-shadow: 0 8px 18px rgba(37, 99, 235, .22);
}

.sidebar .sv-profile-card__logout-btn {
    border: 1px solid rgba(248, 113, 113, .18);
    background: rgba(239, 68, 68, .11);
    color: #fca5a5 !important;
}

.sidebar .sv-profile-card__profile-btn:hover,
.sidebar .sv-profile-card__logout-btn:hover {
    transform: translateY(-1px);
    filter: brightness(1.08);
}

.sidebar .sv-profile-card__logout-btn:hover {
    color: #ffffff !important;
    background: rgba(239, 68, 68, .22);
    box-shadow: 0 8px 18px rgba(239, 68, 68, .13);
}

@media (max-width: 1100px) and (min-width: 992px) {
    .sidebar .sv-profile-card {
        padding: 13px !important;
    }

    .sidebar .sv-profile-card__wallet-grid {
        grid-template-columns: 1fr;
    }
}

/* ==================================================
   MODERN SIDEBAR NAVIGATION V2
   Đồng bộ với profile card và dashboard sáng
================================================== */

.sidebar.sv-modern-sidebar {
    --sv-side-bg: #0b1424;
    --sv-side-surface: rgba(255, 255, 255, .045);
    --sv-side-border: rgba(148, 163, 184, .14);
    --sv-side-text: #dce7f7;
    --sv-side-muted: #7f93b1;
    --sv-side-blue: #3b82f6;
    --sv-side-cyan: #22d3ee;

    padding: 12px 12px 22px !important;
    overflow-x: hidden;
    color: var(--sv-side-text);
    border-right: 1px solid rgba(148, 163, 184, .12);
    border-radius: 0 !important;
    background:
        radial-gradient(circle at 0 0, rgba(37, 99, 235, .20), transparent 27%),
        radial-gradient(circle at 100% 42%, rgba(6, 182, 212, .08), transparent 28%),
        linear-gradient(180deg, #0b1424 0%, #101c30 58%, #0b1627 100%) !important;
    box-shadow: 12px 0 34px rgba(2, 8, 23, .10);
}

@media (min-width: 768px) {
    .sidebar.sv-modern-sidebar {
        position: sticky;
        top: 0;
        height: 100vh;
        min-height: 100vh;
        overflow-y: auto;
        overscroll-behavior: contain;
        scrollbar-width: thin;
        scrollbar-color: rgba(96, 165, 250, .32) transparent;
    }

    .sidebar.sv-modern-sidebar::-webkit-scrollbar {
        width: 5px;
    }

    .sidebar.sv-modern-sidebar::-webkit-scrollbar-track {
        background: transparent;
    }

    .sidebar.sv-modern-sidebar::-webkit-scrollbar-thumb {
        border-radius: 999px;
        background: rgba(96, 165, 250, .30);
    }
}

.sidebar.sv-modern-sidebar .sv-sidebar-brand {
    position: relative;
    isolation: isolate;
    width: 100% !important;
    height: auto !important;
    min-height: 112px;
    margin: 0 0 8px !important;
    padding: 13px 12px 11px !important;
    overflow: hidden;
    display: flex !important;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 8px;
    border: 1px solid rgba(96, 165, 250, .16);
    border-radius: 19px;
    background:
        linear-gradient(145deg, rgba(30, 41, 59, .88), rgba(15, 23, 42, .58));
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, .045),
        0 14px 30px rgba(2, 8, 23, .18);
    text-decoration: none !important;
}

.sidebar.sv-modern-sidebar .sv-sidebar-brand__ambient {
    position: absolute;
    inset: auto -36px -64px auto;
    z-index: -1;
    width: 150px;
    height: 150px;
    border-radius: 50%;
    background: rgba(37, 99, 235, .20);
    filter: blur(30px);
    pointer-events: none;
}

.sidebar.sv-modern-sidebar .sv-sidebar-brand__logo-shell {
    min-width: 0;
    min-height: 62px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.sidebar.sv-modern-sidebar .ucp-logo {
    width: 128px !important;
    max-width: 100% !important;
    height: auto !important;
    max-height: 70px !important;
    padding: 0 !important;
    display: block;
    object-fit: contain;
    filter: drop-shadow(0 8px 18px rgba(0, 0, 0, .24));
    transition: transform .24s ease, filter .24s ease;
}

.sidebar.sv-modern-sidebar .sv-sidebar-brand:hover .ucp-logo {
    transform: translateY(-2px) scale(1.025);
    filter: drop-shadow(0 10px 20px rgba(37, 99, 235, .20));
}

.sidebar.sv-modern-sidebar .sv-sidebar-brand__status {
    padding: 5px 9px;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: #9eb2cf;
    border: 1px solid rgba(148, 163, 184, .12);
    border-radius: 999px;
    background: rgba(15, 23, 42, .42);
    font-size: 8px;
    font-weight: 800;
    line-height: 1;
    letter-spacing: .9px;
}

.sidebar.sv-modern-sidebar .sv-sidebar-brand__status-dot {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #22c55e;
    box-shadow: 0 0 0 3px rgba(34, 197, 94, .12), 0 0 12px rgba(34, 197, 94, .55);
}

.sidebar.sv-modern-sidebar .sv-sidebar-heading {
    width: 100%;
    margin: 0 !important;
    padding: 14px 8px 6px !important;
    display: flex;
    align-items: center;
    gap: 7px;
    color: var(--sv-side-muted) !important;
    font-size: 9px !important;
    font-weight: 800 !important;
    line-height: 1.15;
    letter-spacing: 1px;
    text-align: left;
    text-transform: uppercase;
}

.sidebar.sv-modern-sidebar .sv-sidebar-heading::after {
    content: "";
    height: 1px;
    min-width: 12px;
    flex: 1 1 auto;
    background: linear-gradient(90deg, rgba(148, 163, 184, .20), transparent);
}

.sidebar.sv-modern-sidebar .sv-sidebar-heading > i {
    width: 15px;
    color: #5d7597;
    font-size: 9px;
    text-align: center;
}

.sidebar.sv-modern-sidebar .sv-sidebar-heading--admin,
.sidebar.sv-modern-sidebar .sv-sidebar-heading--admin > i {
    color: #fbbf24 !important;
}

.sidebar.sv-modern-sidebar .nav-item {
    width: 100% !important;
    margin: 3px 0 !important;
}

.sidebar.sv-modern-sidebar .nav-item .nav-link {
    position: relative;
    width: 100% !important;
    min-height: 47px;
    margin: 0 !important;
    padding: 7px 10px !important;
    display: flex !important;
    align-items: center;
    gap: 10px;
    color: var(--sv-side-text) !important;
    border: 1px solid transparent;
    border-radius: 13px !important;
    background: transparent;
    font-size: 12px;
    font-weight: 700;
    line-height: 1.25;
    text-align: left;
    transition:
        color .2s ease,
        border-color .2s ease,
        background-color .2s ease,
        transform .2s ease,
        box-shadow .2s ease;
}

.sidebar.sv-modern-sidebar .nav-item .nav-link > i:not(.sv-nav-external) {
    width: 32px !important;
    height: 32px;
    min-width: 32px;
    margin: 0 !important;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #91a6c3 !important;
    border: 1px solid rgba(148, 163, 184, .10);
    border-radius: 10px;
    background: rgba(148, 163, 184, .07);
    font-size: 12px !important;
    text-align: center;
    transition: inherit;
}

.sidebar.sv-modern-sidebar .nav-item .nav-link > span {
    min-width: 0;
    overflow: hidden;
    flex: 1 1 auto;
    color: inherit !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    line-height: 1.25;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sidebar.sv-modern-sidebar .nav-item .nav-link:hover {
    color: #ffffff !important;
    border-color: rgba(96, 165, 250, .14);
    background: rgba(59, 130, 246, .10);
    transform: translateX(2px);
}

.sidebar.sv-modern-sidebar .nav-item .nav-link:hover > i:not(.sv-nav-external) {
    color: #cfe1ff !important;
    border-color: rgba(96, 165, 250, .18);
    background: rgba(59, 130, 246, .16);
}

.sidebar.sv-modern-sidebar .nav-item.active > .nav-link {
    color: #ffffff !important;
    border-color: rgba(147, 197, 253, .20);
    background:
        linear-gradient(100deg, rgba(37, 99, 235, .98), rgba(59, 130, 246, .86)) !important;
    box-shadow:
        0 10px 22px rgba(37, 99, 235, .24),
        inset 0 1px 0 rgba(255, 255, 255, .12) !important;
}

.sidebar.sv-modern-sidebar .nav-item.active > .nav-link > i:not(.sv-nav-external) {
    color: #ffffff !important;
    border-color: rgba(255, 255, 255, .18);
    background: rgba(255, 255, 255, .14);
}

.sidebar.sv-modern-sidebar .nav-item.sv-has-open-menu.active > .nav-link {
    box-shadow: 0 8px 18px rgba(37, 99, 235, .18) !important;
}

.sidebar.sv-modern-sidebar .nav-link[data-toggle="collapse"]::after {
    width: 18px;
    height: 18px;
    margin-left: auto;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #7186a5;
    border-radius: 6px;
    font-size: 9px;
    line-height: 1;
    transition: transform .2s ease, color .2s ease, background-color .2s ease;
}

.sidebar.sv-modern-sidebar .nav-link[data-toggle="collapse"]:not(.collapsed)::after {
    color: #dbeafe;
    background: rgba(255, 255, 255, .10);
}

.sidebar.sv-modern-sidebar .sv-nav-external {
    width: auto !important;
    height: auto !important;
    min-width: 0 !important;
    margin-left: auto !important;
    color: #647b9c !important;
    border: 0 !important;
    background: transparent !important;
    font-size: 9px !important;
}

.sidebar.sv-modern-sidebar .sv-sidebar-submenu {
    margin: 5px 0 7px 42px !important;
    padding: 6px !important;
    overflow: hidden;
    border: 1px solid rgba(148, 163, 184, .11);
    border-radius: 12px !important;
    background: rgba(3, 9, 20, .32) !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .025);
}

.sidebar.sv-modern-sidebar .sv-sidebar-submenu .collapse-item {
    position: relative;
    width: 100%;
    margin: 2px 0 !important;
    padding: 8px 9px 8px 20px !important;
    overflow: hidden;
    color: #9fb0c8 !important;
    border-radius: 8px !important;
    font-size: 10.5px;
    font-weight: 650;
    line-height: 1.3;
    text-overflow: ellipsis;
    white-space: nowrap;
    transition: color .18s ease, background-color .18s ease;
}

.sidebar.sv-modern-sidebar .sv-sidebar-submenu .collapse-item::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 9px;
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: #536b8e;
    transform: translateY(-50%);
    transition: background-color .18s ease, box-shadow .18s ease;
}

.sidebar.sv-modern-sidebar .sv-sidebar-submenu .collapse-item:hover {
    color: #ffffff !important;
    background: rgba(59, 130, 246, .11) !important;
}

.sidebar.sv-modern-sidebar .sv-sidebar-submenu .collapse-item.active {
    color: #dbeafe !important;
    background: rgba(37, 99, 235, .18) !important;
}

.sidebar.sv-modern-sidebar .sv-sidebar-submenu .collapse-item.active::before {
    background: #60a5fa;
    box-shadow: 0 0 0 3px rgba(96, 165, 250, .12);
}

.sidebar.sv-modern-sidebar .game-download-item {
    width: 100%;
    margin: 15px 0 8px !important;
    padding: 0 !important;
}

.sidebar.sv-modern-sidebar .game-download-btn {
    width: 100%;
    min-height: 60px;
    padding: 9px 10px !important;
    display: flex !important;
    align-items: center;
    justify-content: flex-start;
    gap: 9px;
    color: #ffffff !important;
    border: 1px solid rgba(134, 239, 172, .40) !important;
    border-radius: 15px !important;
    background:
        radial-gradient(circle at 0 0, rgba(255, 255, 255, .18), transparent 33%),
        linear-gradient(135deg, #16a34a, #22c55e) !important;
    box-shadow:
        0 12px 24px rgba(22, 163, 74, .23),
        inset 0 1px 0 rgba(255, 255, 255, .22) !important;
    text-decoration: none !important;
}

.sidebar.sv-modern-sidebar .game-download-btn__icon {
    width: 38px;
    height: 38px;
    min-width: 38px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(255, 255, 255, .20);
    border-radius: 12px;
    background: rgba(255, 255, 255, .14);
    font-size: 15px;
}

.sidebar.sv-modern-sidebar .game-download-btn__copy {
    min-width: 0;
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    align-items: flex-start;
}

.sidebar.sv-modern-sidebar .game-download-btn__copy strong {
    font-size: 11px;
    font-weight: 900;
    line-height: 1.25;
    letter-spacing: .3px;
}

.sidebar.sv-modern-sidebar .game-download-btn__copy small {
    margin-top: 2px;
    overflow: hidden;
    color: rgba(255, 255, 255, .76);
    font-size: 8.5px;
    font-weight: 600;
    line-height: 1.2;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sidebar.sv-modern-sidebar .game-download-btn__arrow {
    width: auto !important;
    margin-left: auto;
    color: rgba(255, 255, 255, .80);
    font-size: 10px;
    transition: transform .2s ease;
}

.sidebar.sv-modern-sidebar .game-download-btn:hover {
    transform: translateY(-2px) !important;
    filter: brightness(1.04);
    box-shadow:
        0 16px 30px rgba(22, 163, 74, .29),
        inset 0 1px 0 rgba(255, 255, 255, .25) !important;
}

.sidebar.sv-modern-sidebar .game-download-btn:hover .game-download-btn__arrow {
    transform: translateX(3px);
}

.sidebar.sv-modern-sidebar .sv-admin-item .nav-link {
    border-color: rgba(251, 191, 36, .11);
    background: rgba(245, 158, 11, .055);
}

.sidebar.sv-modern-sidebar .sv-admin-item .nav-link > i:not(.sv-nav-external) {
    color: #fbbf24 !important;
    border-color: rgba(251, 191, 36, .13);
    background: rgba(245, 158, 11, .09);
}

.sidebar.sv-modern-sidebar .sv-admin-item .nav-link:hover {
    border-color: rgba(251, 191, 36, .20);
    background: rgba(245, 158, 11, .10);
}

/* Cân lại tổng thể: thanh trên, vùng nội dung và sidebar cùng một hệ khoảng cách. */
.topbar {
    min-height: 64px;
    margin-bottom: 20px !important;
}

.container-fluid {
    max-width: 1720px;
    margin-right: auto;
    margin-left: auto;
}

@media (min-width: 768px) and (max-width: 1100px) {
    .sidebar.sv-modern-sidebar .nav-item .nav-link {
        padding-right: 8px !important;
        padding-left: 8px !important;
    }

    .sidebar.sv-modern-sidebar .sv-sidebar-submenu {
        margin-left: 34px !important;
    }
}

@media (max-width: 767.98px) {
    .sidebar.sv-modern-sidebar {
        padding: 10px 10px 18px !important;
        border-radius: 0 !important;
    }

    .sidebar.sv-modern-sidebar .sv-sidebar-brand {
        min-height: 105px !important;
        margin-top: 0 !important;
    }

    .sidebar.sv-modern-sidebar .sv-sidebar-heading {
        padding: 13px 8px 6px !important;
        text-align: left !important;
    }

    .sidebar.sv-modern-sidebar .nav-item .nav-link {
        min-height: 47px !important;
        padding: 7px 9px !important;
        gap: 9px !important;
    }

    .sidebar.sv-modern-sidebar .nav-item .nav-link > span {
        font-size: 12px !important;
    }

    .sidebar.sv-modern-sidebar .sv-sidebar-submenu {
        margin-left: 38px !important;
    }

    .sidebar.sv-modern-sidebar .game-download-item {
        margin-top: 14px !important;
        padding: 0 !important;
    }
}

/* ==================================================
   SIDEBAR PROFILE VISIBILITY FIX V3
   Giữ hồ sơ luôn hiển thị; chỉ cuộn vùng menu ở giữa.
================================================== */
@media (min-width: 992px) {
    .sidebar.sv-modern-sidebar {
        display: flex !important;
        flex-direction: column !important;
        height: 100vh !important;
        min-height: 100vh !important;
        overflow: hidden !important;
        padding-bottom: 10px !important;
    }

    .sidebar.sv-modern-sidebar .sv-sidebar-brand {
        flex: 0 0 auto;
    }

    .sidebar.sv-modern-sidebar .sv-sidebar-menu-scroll {
        min-height: 0;
        flex: 1 1 auto;
        overflow-x: hidden;
        overflow-y: auto;
        overscroll-behavior: contain;
        padding: 0 2px 12px;
        scrollbar-width: thin;
        scrollbar-color: rgba(96, 165, 250, .34) transparent;
    }

    .sidebar.sv-modern-sidebar .sv-sidebar-menu-scroll::-webkit-scrollbar {
        width: 5px;
    }

    .sidebar.sv-modern-sidebar .sv-sidebar-menu-scroll::-webkit-scrollbar-track {
        background: transparent;
    }

    .sidebar.sv-modern-sidebar .sv-sidebar-menu-scroll::-webkit-scrollbar-thumb {
        border-radius: 999px;
        background: rgba(96, 165, 250, .34);
    }

    .sidebar.sv-modern-sidebar .sv-sidebar-menu-scroll::-webkit-scrollbar-thumb:hover {
        background: rgba(96, 165, 250, .55);
    }

    .sidebar.sv-modern-sidebar .sv-profile-card,
    .sidebar.sv-modern-sidebar .sv-guest-card,
    .sidebar.sv-modern-sidebar > .sidebar-card:not(.sv-profile-card):not(.sv-guest-card) {
        position: relative !important;
        inset: auto !important;
        flex: 0 0 auto !important;
        max-height: none !important;
        margin: 8px 0 0 !important;
        width: 100% !important;
        z-index: 20;
    }

    .sidebar.sv-modern-sidebar .sv-profile-card {
        padding: 12px !important;
.sidebar.sv-modern-sidebar .sv-guest-card {
        padding: 12px !important;
        border-radius: 16px !important;
        box-shadow:
            0 -12px 28px rgba(2, 8, 23, .20),
            0 14px 30px rgba(2, 8, 23, .22),
            inset 0 1px 0 rgba(255, 255, 255, .05) !important;
    }

    .sidebar.sv-modern-sidebar .sv-guest-card__header {
        margin-bottom: 10px;
    }

    .sidebar.sv-modern-sidebar .sv-guest-card__avatar-wrap {
        width: 52px;
        height: 52px;
        min-width: 52px;
        border-radius: 16px;
    }

    .sidebar.sv-modern-sidebar .sv-guest-card__avatar {
        border-radius: 13px;
    }

    .sidebar.sv-modern-sidebar .sv-guest-card__benefit-item {
        padding: 8px 9px;
    }

    .sidebar.sv-modern-sidebar .sv-guest-card__actions {
        margin-top: 10px;
    }

    .sidebar.sv-modern-sidebar .sv-guest-card__login-btn,
    .sidebar.sv-modern-sidebar .sv-guest-card__register-btn {
        min-height: 35px;
    }


        border-radius: 16px !important;
        box-shadow:
            0 -12px 28px rgba(2, 8, 23, .20),
            0 14px 30px rgba(2, 8, 23, .22),
            inset 0 1px 0 rgba(255, 255, 255, .05) !important;
    }

    .sidebar.sv-modern-sidebar .sv-profile-card__header {
        margin-bottom: 9px;
    }

    .sidebar.sv-modern-sidebar .sv-profile-card__avatar-wrap {
        width: 48px;
        height: 48px;
        border-radius: 15px;
    }

    .sidebar.sv-modern-sidebar .sv-profile-card__avatar {
        border-radius: 12px;
    }

    .sidebar.sv-modern-sidebar .sv-profile-card__primary-balance {
        min-height: 48px;
        padding: 8px 10px;
    }

    .sidebar.sv-modern-sidebar .sv-profile-card__balance-icon {
        width: 31px;
        height: 31px;
        min-width: 31px;
    }

    .sidebar.sv-modern-sidebar .sv-profile-card__wallet-item {
        min-height: 47px;
        padding: 7px;
    }

    .sidebar.sv-modern-sidebar .sv-profile-card__actions {
        margin-top: 8px;
    }

    .sidebar.sv-modern-sidebar .sv-profile-card__profile-btn,
    .sidebar.sv-modern-sidebar .sv-profile-card__logout-btn {
        min-height: 34px;
    }
}

/* Màn hình desktop thấp: tiếp tục giữ profile, thu gọn nhẹ để đủ không gian. */
@media (min-width: 992px) and (max-height: 760px) {
    .sidebar.sv-modern-sidebar .sv-sidebar-brand {
        min-height: 92px !important;
        margin-bottom: 4px !important;
    }

    .sidebar.sv-modern-sidebar .sv-sidebar-brand__logo-shell {
        width: 62px;
        height: 52px;
    }

    .sidebar.sv-modern-sidebar .sv-profile-card__rank {
        display: none;
    }

    .sidebar.sv-modern-sidebar .sv-profile-card__primary-balance {
        min-height: 42px;
    }

    .sidebar.sv-modern-sidebar .sv-profile-card__wallet-item {
        min-height: 42px;
    }
}
