/* --- BIẾN MÀU NEON --- */
        :root {
            --popup-border-highlight: rgba(0, 0, 0, 0.15);
            --neon-glow: var(--primary);
            --link-hover-bg: rgba(0, 0, 0, 0.03);
        }
        body.dark-mode {
            --popup-border-highlight: rgba(255, 255, 255, 0.2);
            --link-hover-bg: rgba(255, 255, 255, 0.05);
        }
        /* Colors per group */
        .menu-group-box[data-group-id="overview"]    { --neon-glow: #0d6efd; }
        .menu-group-box[data-group-id="sales"]       { --neon-glow: #198754; }
        .menu-group-box[data-group-id="logistics"]   { --neon-glow: #20c997; }
        .menu-group-box[data-group-id="system"]      { --neon-glow: #6c757d; }
        .menu-group-box[data-group-id="technical"]   { --neon-glow: #00d2d3; }
        .menu-group-box[data-group-id="products"]    { --neon-glow: #ffc107; }
        .menu-group-box[data-group-id="inventory"]   { --neon-glow: #dc3545; }
        .menu-group-box[data-group-id="finance"]     { --neon-glow: #6610f2; }
        .menu-group-box[data-group-id="consignment"] { --neon-glow: #adb5bd; }
        .menu-group-box[data-group-id="marketing"]   { --neon-glow: #0dcaf0; }
        .menu-group-box[data-group-id="content"]     { --neon-glow: #6f42c1; }
        .menu-group-box[data-group-id="crm"]         { --neon-glow: #fd7e14; }
        .menu-group-box[data-group-id="locations"]   { --neon-glow: #0ea5e9; }
        .menu-group-box[data-group-id="admin_standard"] { --neon-glow: #0dcaf0; }
        .menu-group-box[data-group-id="staff"]       { --neon-glow: #0d6efd; }
        .menu-group-box[data-group-id="accounts"]    { --neon-glow: #20c997; }
        .menu-group-box[data-group-id="study"]       { --neon-glow: #0d6efd; }
        .menu-group-box[data-group-id="about"]       { --neon-glow: #0dcaf0; }
        .menu-group-box[data-group-id="management"]  { --neon-glow: #198754; }
        .menu-group-box[data-group-id="configuration"] { --neon-glow: #0dcaf0; }

        .menu-link {
            display: flex; align-items: center; text-decoration: none !important; color: var(--text-color);
            border-radius: 0.625rem; font-weight: 500; font-size: 1.05rem; white-space: nowrap;
            /* [ĐÃ SỬA] Đồng bộ tốc độ với Client (0.25s) thay vì 2s */
            transition: all 0.25s ease;
            position: relative;
        }

        /* NEON HOVER LOGIC */
        body.neon-active .menu-link:hover span,
        body.neon-active .menu-link:hover i {
            color: var(--neon-glow, #0ea5e9) !important;
            text-shadow: none !important;
        }

        /* Chế độ Sáng - Viền màu Neon */
        body:not(.dark-mode).neon-active .menu-link:hover {
            background-color: transparent !important; 
            border-color: var(--neon-glow, #0ea5e9) !important;
            box-shadow: inset 0 0 0.125rem var(--neon-glow, #0ea5e9), 0 0 0.3125rem var(--neon-glow, #0ea5e9), 0 0 0.9375rem var(--neon-glow, #0ea5e9);
            transform: none !important;
        }

        /* Chế độ Tối - Viền màu trắng */
        body.dark-mode.neon-active .menu-link:hover {
            background-color: transparent !important; 
            border-color: #ffffff !important;
            box-shadow: inset 0 0 0.125rem var(--neon-glow, #0ea5e9), 0 0 0.3125rem var(--neon-glow, #0ea5e9), 0 0 0.9375rem var(--neon-glow, #0ea5e9);
            transform: none !important;
        }

        /* Khi Neon TẮT */
        body:not(.neon-active) .menu-link:hover {
            background-color: var(--link-hover-bg) !important;
            border-color: var(--popup-border-highlight) !important;
            box-shadow: none !important;
            transform: none !important;
        }

        /* LIST VIEW */
        .view-mode-list { display: flex; flex-wrap: wrap; gap: 1.5625rem; }
        .view-mode-list .menu-group-box { flex: 1 1 calc(50% - 0.8rem); min-width: min(max-content, 100%); }
        .view-mode-list .menu-items-container { display: flex; flex-direction: column; gap: 0.3125rem; }
        .view-mode-list .menu-link { padding: 0.5625rem 0.875rem; border: 0.125rem solid var(--popup-border-highlight); border-radius: 0.75rem; overflow: hidden; text-overflow: ellipsis; }

        .view-mode-list .menu-link i { width: 1.5rem; margin-right: 0.625rem; text-align: center; color: var(--text-muted); font-size: 1.15rem; flex-shrink: 0; }
        @media (max-width: 576px) { .view-mode-list .menu-group-box { flex-basis: 100%; } }

        /* GRID VIEW */
        .view-mode-grid .menu-items-container { display: flex; flex-wrap: wrap; gap: 0.9375rem; }
        .view-mode-grid .menu-group-box { width: 100%; margin-bottom: 1.5625rem; }
        .view-mode-grid .menu-link { flex-direction: column; justify-content: center; width: 5.75rem; height: 5.75rem; background: transparent; border: 0.125rem solid var(--popup-border-highlight); border-radius: 0.75rem; padding: 0.75rem 0.3125rem; }

        .view-mode-grid .menu-link i { font-size: 1.9rem; margin-bottom: 0.625rem; color: var(--neon-glow); }
        .view-mode-grid .menu-link span { font-size: 0.85rem; font-weight: 700; line-height: 1.2; text-align: center; white-space: normal; word-break: break-word; }

        /* SCROLL & HEADER */
        #menu-interface { width: 420px; max-width: 100%; overflow-y: auto; max-height: 80vh; scrollbar-width: thin; overscroll-behavior: contain; }
        @media (max-width: 998px) { #menu-interface { width: min(calc(100vw - 20px), 420px); max-height: 75vh; } }
        #menu-interface::-webkit-scrollbar { width: 0.375rem; }
        #menu-interface::-webkit-scrollbar-thumb { background-color: var(--scrollbar-thumb); border-radius: 0.625rem; }
        .popup-header { padding: var(--general-py, 1.125rem) var(--general-px, 1.5625rem); border-bottom: 0.0625rem solid var(--popup-border); position: sticky; top: 0; z-index: 50; background-color: var(--popup-bg); backdrop-filter: blur(0.625rem); -webkit-backdrop-filter: blur(0.625rem); margin-top: -0.0625rem; }
        .menu-main-wrapper { padding: var(--general-px, 1.5625rem); }
        .group-title { font-size: 0.8rem; font-weight: 800; text-transform: uppercase; color: var(--text-muted); margin-bottom: 0.625rem; letter-spacing: 0.05rem; padding-bottom: 0.3125rem; border-bottom: 0.125rem solid rgba(0,0,0,0.03); }
        body.dark-mode .group-title { border-bottom-color: rgba(255,255,255,0.05); }