    :root {
        --bg: #ebedef;
        --card-bg: #ffffff;
        --text-main: #2e3338;
        --text-muted: #4f5660;
        --border: #e3e5e8;
        --navbar-bg: #ffffff;
        --input-bg: #e3e5e8;
        --table-head: #f2f3f5;
        --accent: #5865f2;
        --accent-hover: #4752c4;
        --danger: #ed4245;
    }

    [data-theme="dark"] {
        --bg: #36393f;
        --card-bg: #2f3136;
        --text-main: #dcddde;
        --text-muted: #b9bbbe;
        --border: #202225;
        --navbar-bg: #202225;
        --input-bg: #202225;
        --table-head: #292b2f;
    }

    [data-theme="dark"] .table {
        --bs-table-color: var(--text-main);
        color: var(--text-main);
    }

    [data-theme="dark"] .btn-close {
        filter: invert(1) grayscale(100%) brightness(200%);
    }

    [data-theme="dark"] .text-muted {
        color: var(--text-muted) !important;
    }

    [data-theme="dark"] .modal-body .text-muted {
        color: #f6f6f7 !important;
    }

    [data-theme="dark"] .btn-close {
        filter: invert(1) grayscale(100%) brightness(200%);
    }

    [data-theme="dark"] .form-select {
        background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23dcddde' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e") !important;
    }

    [data-theme="dark"] .modal-content {
        background-color: var(--card-bg);
        border-color: var(--border);
    }

    .rounded-circle {
        border: 1px solid var(--border);
    }

    body {
        background: var(--bg);
        color: var(--text-main);
        font-family: "gg sans", "Segoe UI", sans-serif;
        transition: background 0.2s, color 0.2s;
    }

    .navbar {
        background: var(--navbar-bg) !important;
        border-bottom: 1px solid var(--border);
    }

    .navbar-brand {
        color: var(--text-main) !important;
        font-weight: 700;
    }

    .nav-link,
    .dropdown-item {
        color: var(--text-main) !important;
    }

    .dropdown-menu {
        background: var(--card-bg);
        border: 1px solid var(--border);
    }

    .dropdown-item:hover {
        background: var(--input-bg);
    }

    .dropdown-item.text-danger {
        color: var(--danger) !important;
    }

    .discord-card {
        background: var(--card-bg);
        border: 1px solid var(--border);
        border-radius: 8px;
        box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
    }

    .form-control,
    .form-control:focus {
        background: var(--input-bg);
        color: var(--text-main);
        border: none;
        box-shadow: none;
    }

    .form-control:focus {
        outline: 2px solid var(--accent);
    }

    .form-control::placeholder {
        color: var(--text-muted);
    }

    .btn-accent {
        background: var(--accent);
        color: #fff;
        border: none;
    }

    .btn-accent:hover {
        background: var(--accent-hover);
        color: #fff;
    }

    .btn-danger-discord {
        background: var(--danger);
        color: #fff;
        border: none;
    }

    .btn-danger-discord:hover {
        background: #c23235;
        color: #fff;
    }

    .price-tag {
        font-size: 2.8rem;
        font-weight: 800;
        color: var(--accent);
    }

    .table {
        color: var(--text-main);
        --bs-table-color: var(--text-main);
        --bs-table-bg: transparent;
        --bs-table-border-color: var(--border);
    }

    #select-all {
        transform: scale(1.3);
        margin-top: 2px;
    }



    .table thead th {
        background: var(--table-head);
        color: var(--text-muted);
        font-size: 0.72rem;
        text-transform: uppercase;
        border-bottom: 1px solid var(--border);
    }

    .table tbody td {
        border-bottom: 1px solid var(--border);
        vertical-align: middle;
    }

    /* ── Bulk bar ── */
    .bulk-bar {
        background: var(--accent);
        color: #fff;
        border-radius: 8px;
    }

    .bulk-bar .form-control {
        width: 110px;
        background: rgba(0, 0, 0, 0.2) !important;
        color: #fff !important;
        border: 1px solid rgba(255, 255, 255, 0.25) !important;
    }

    .bulk-bar .form-control::placeholder {
        color: rgba(255, 255, 255, 0.6);
    }

    .new-product-prompt {
        background: var(--accent);
        color: #fff;
        border-radius: 8px;
    }

    #display-img {
        width: 100%;
        max-width: 250px;
        height: auto;
        max-height: 250px;
        object-fit: contain;
    }

    input[type="checkbox"] {
        cursor: pointer;
    }

    @media (max-width: 576px) {
        .col-barcode {
            display: none;
        }

        .btn-edit-sm,
        .btn-del-sm {
            padding: 4px 7px;
            font-size: 0.75rem;
        }
    }

    .modal-content {
        background: var(--card-bg);
        color: var(--text-main);
        border: 1px solid var(--border);
    }

    .modal-header,
    .modal-footer {
        border-color: var(--border);
    }

    .btn-close {
        filter: var(--bs-theme-placeholder, invert(0.7) grayscale(100%) brightness(200%));
    }

    .form-select {
        background-color: var(--input-bg) !important;
        color: var(--text-main) !important;
        border: none !important;
        background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23adb5bd' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e") !important;
        background-repeat: no-repeat !important;
        background-position: right 0.75rem center !important;
        background-size: 16px 12px !important;
    }

    .login-box {
        max-width: 400px;
        margin: 100px auto;
        padding: 40px;
        background: var(--card-bg);
        border: 1px solid var(--border);
        border-radius: 8px;
        box-shadow: 0 2px 10px rgba(0, 0, 0, 0.2);
    }

    .btn-login {
        background: var(--accent);
        color: #fff;
        font-weight: 600;
        padding: 10px;
        border: none;
    }

    .btn-login:hover {
        background: var(--accent-hover);
        color: #fff;
    }

    .error-alert {
        background: var(--danger);
        color: #fff;
        border-radius: 4px;
        font-size: 0.9rem;
    }