
        * {
            margin: 0;
            padding: 0;
            box-sizing: border-box;
        }

        body {
            background: #f5f6fa;
            font-family: Arial, sans-serif;
        }

        /* ================= SIDEBAR ================= */

        .sidebar {
            width: 270px;
            height: 100vh;
            background: #222;
            position: fixed;
            left: 0;
            top: 0;
            overflow-y: auto;
            transition: 0.3s;
            z-index: 1050;
        }

        /* Logo */

        .sidebar-logo {
            padding: 15px 20px;
            color: #fff;
            font-size: 22px;
            font-weight: bold;
            border-bottom: 1px solid #333;
        }

        .sidebar-logo span {
            color: #ffc107;
        }

        /* Menu */

        .sidebar-menu {
            padding: 5px 10px;
        }

        .menu-title {
            color: #777;
            font-size: 11px;
            text-transform: uppercase;
            padding: 15px 15px 8px;
            font-weight: bold;
            letter-spacing: 1px;
        }

        .sidebar-menu a {
            text-decoration: none;
        }

        .menu-link {
            display: flex;
            align-items: center;
            padding: 6px 15px;
            color: #bbb;
            border-radius: 8px;
            margin-bottom: 4px;
            transition: 0.3s;
            cursor: pointer;
        }

        .menu-link i:first-child {
            font-size: 12px;
            width: 30px;
        }

        .menu-link span {
            flex: 1;
        }

        .menu-link:hover,
        .menu-link.active {
            background: #333;
            color: #fff;
        }

        .menu-link.active {
            border-left: 3px solid #ffc107;
        }

        /* Arrow */

        .menu-arrow {
            font-size: 13px;
            transition: 0.3s;
        }

        /* Sub Menu */

        .submenu {
            padding-left: 45px;
            margin-bottom: 5px;
        }

        .submenu a {
            display: block;
            color: #999;
            padding: 5px 20px;
            font-size: 14px;
            border-radius: 5px;
            transition: 0.3s;
        }

        .submenu a:hover {
            color: #fff;
            background: #2d2d2d;
        }

        /* ================= MAIN CONTENT ================= */

        .main-content {
            margin-left: 270px;
            padding: 30px;
            transition: 0.3s;
        }

        /* ================= MOBILE ================= */

        .mobile-header {
            display: none;
            background: #222;
            color: white;
            padding: 15px;
            position: sticky;
            top: 0;
            z-index: 1040;
        }

        .mobile-header button {
            border: none;
            background: none;
            color: white;
            font-size: 24px;
        }
        
        
        /* =========================
           MAIN AREA
        ========================= */

        .main-wrapper {
            margin-left: 260px;
            min-height: 100vh;
        }

        .topbar {
            height: 68px;
            background: #fff;
            border-bottom: 1px solid var(--border);
            display: flex;
            align-items: center;
            justify-content: space-between;
            padding: 0 26px;
        }

        .menu-toggle {
            border: 0;
            background: transparent;
            font-size: 24px;
            color: #43505c;
        }

        .top-right {
            display: flex;
            align-items: center;
            gap: 25px;
        }

        .notification {
            position: relative;
            font-size: 21px;
        }

        .notification span {
            position: absolute;
            top: -7px;
            right: -8px;
            width: 17px;
            height: 17px;
            border-radius: 50%;
            background: #e44747;
            color: #fff;
            font-size: 10px;
            display: flex;
            align-items: center;
            justify-content: center;
        }

        .user-box {
            display: flex;
            align-items: center;
            gap: 12px;
        }

        .user-avatar {
            width: 45px;
            height: 45px;
            border-radius: 50%;
            background: #edf0f4;
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 28px;
            color: #586574;
        }

        .user-name {
            font-size: 14px;
            font-weight: 600;
        }

        .partner-id {
            font-size: 12px;
            color: var(--muted);
        }

        .dashboard {
            padding: 20px 25px 30px;
        }


        /* =========================
           DASHBOARD HEADER
        ========================= */

        .welcome-text {
            color: #657180;
            font-size: 15px;
            margin-bottom: 2px;
        }

        .welcome-title {
            font-size: 26px;
            font-weight: 700;
            margin: 0;
        }

        .date-filter {
            background: #fff;
            border: 1px solid #dce2e8;
            border-radius: 7px;
            padding: 10px 15px;
            font-size: 13px;
            color: #475463;
        }


        /* =========================
           COMMON CARD
        ========================= */

        .panel-card {
            background: #fff;
            border: 1px solid var(--border);
            border-radius: 12px;
            padding: 15px;
            height: 100%;
            box-shadow: 0 2px 7px rgba(0,0,0,.025);
        }

        .stat-card {
            padding: 19px;
            min-height: 126px;
        }

        .stat-icon {
            width: 58px;
            height: 58px;
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 25px;
            flex-shrink: 0;
        }

        .purple {
            background: #ebe7ff;
            color: #7352d6;
        }

        .green {
            background: #e0f4ea;
            color: #228655;
        }

        .blue {
            background: #e7effd;
            color: #2865bb;
        }

        .orange {
            background: #fff0d8;
            color: #e9941c;
        }

        .pink {
            background: #fce7f0;
            color: #d23877;
        }

        .stat-label {
            color: #53606d;
            font-size: 13px;
            margin-bottom: 4px;
        }

        .stat-value {
            font-size: 23px;
            font-weight: 700;
        }

        .stat-growth {
            color: #237c4d;
            font-size: 12px;
            margin-top: 14px;
        }

        .stat-warning {
            color: #c66e12;
        }


        /* =========================
           SECTION HEADER
        ========================= */

        .section-title {
            font-size: 15px;
            font-weight: 700;
            margin: 0;
        }

        .view-all {
            font-size: 12px;
            color: #2359a1;
            text-decoration: none;
        }

        .small-select {
            border: 1px solid #dce2e8;
            border-radius: 6px;
            padding: 7px 10px;
            font-size: 12px;
            background: #fff;
            color: #4b5663;
        }


        /* =========================
           SALES CHART
        ========================= */

        .chart-box {
            height: 350px;
            position: relative;
            padding: 20px 10px 0;
        }

        .chart-grid {
            position: absolute;
            left: 10px;
            right: 10px;
            top: 60px;
            bottom: 40px;
            background:
                repeating-linear-gradient(
                    to bottom,
                    transparent,
                    transparent 49px,
                    #edf0f4 50px
                );
        }

        .chart-svg {
            width: 100%;
            height: 100%;
            position: relative;
            z-index: 2;
        }

        .chart-legend {
            display: flex;
            gap: 25px;
            font-size: 12px;
            color: #627080;
            margin-bottom: 5px;
        }

        .dot {
            width: 11px;
            height: 11px;
            border-radius: 50%;
            display: inline-block;
            margin-right: 8px;
        }


        /* =========================
           TOP RESELLERS
        ========================= */

        .rank-row {
            display: flex;
            align-items: center;
            gap: 10px;
            padding: 13px 0;
            border-bottom: 1px solid #edf0f3;
        }

        .rank-row:last-child {
            border-bottom: 0;
        }

        .rank-number {
            width: 27px;
            height: 27px;
            border-radius: 50%;
            background: #f3f5f7;
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 13px;
            color: #586474;
        }

        .rank-1 {
            color: #f2aa13;
            font-size: 24px;
        }

        .rank-2 {
            color: #9ba7b4;
            font-size: 24px;
        }

        .rank-3 {
            color: #bd792f;
            font-size: 24px;
        }

        .reseller-avatar {
            width: 38px;
            height: 38px;
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 19px;
        }

        .reseller-name {
            font-size: 13px;
            font-weight: 600;
        }

        .reseller-id {
            font-size: 11px;
            color: #788391;
        }

        .sales-number {
            font-size: 12px;
            text-align: right;
        }

        .sales-income {
            color: #218653;
            font-size: 12px;
            margin-top: 4px;
        }


        /* =========================
           RECENT SALES
        ========================= */

        .recent-sale {
            display: flex;
            align-items: center;
            gap: 11px;
            padding: 13px 0;
            border-bottom: 1px solid #edf0f3;
        }

        .sale-business-icon {
            width: 40px;
            height: 40px;
            background: #eef3fa;
            color: #3b70c8;
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
        }

        .business-name {
            font-size: 13px;
            font-weight: 600;
        }

        .reseller-small {
            font-size: 11px;
            color: #687483;
        }

        .sale-price {
            font-size: 12px;
            font-weight: 600;
            text-align: right;
        }

        .sale-date {
            font-size: 10px;
            color: #75808c;
        }

        .paid {
            font-size: 10px;
            color: #218653;
            background: #e5f4ea;
            padding: 2px 5px;
            border-radius: 3px;
        }


        /* =========================
           COMMISSION
        ========================= */

        .mini-card {
            border: 1px solid #e8ecf0;
            border-radius: 8px;
            padding: 14px;
            min-height: 140px;
        }

        .mini-label {
            font-size: 12px;
            color: #657180;
        }

        .mini-value {
            font-size: 21px;
            font-weight: 700;
            margin-top: 7px;
        }

        .growth-badge {
            display: inline-block;
            margin-top: 10px;
            padding: 4px 8px;
            font-size: 11px;
            color: #237c4d;
            background: #e1f2e8;
            border-radius: 3px;
        }


        /* =========================
           PAYOUT CHART
        ========================= */

        .donut {
            width: 140px;
            height: 140px;
            border-radius: 50%;
            background:
                conic-gradient(
                    #2767c5 0deg 270deg,
                    #f6a128 270deg 356deg,
                    #cbd2d9 356deg 360deg
                );
            position: relative;
        }

        .donut::after {
            content: "";
            position: absolute;
            width: 78px;
            height: 78px;
            background: #fff;
            border-radius: 50%;
            top: 31px;
            left: 31px;
        }

        .payout-item {
            display: flex;
            justify-content: space-between;
            font-size: 12px;
            margin-bottom: 16px;
        }


        /* =========================
           IMPORTANT UPDATE
        ========================= */

        .update-box {
            background: linear-gradient(90deg, #fff4d3, #fff9eb);
            border: 1px solid #f5dfaa;
            border-radius: 10px;
            padding: 22px;
            display: flex;
            align-items: center;
            gap: 22px;
        }

        .update-icon {
            font-size: 38px;
            color: #e9a01d;
        }

        .update-title {
            font-size: 14px;
            font-weight: 700;
            margin-bottom: 8px;
        }

        .update-text {
            font-size: 12px;
            color: #5d6873;
            line-height: 1.7;
        }

        .training-btn {
            margin-top: 10px;
            background: #f4bd28;
            color: #3c331b;
            border: 0;
            border-radius: 6px;
            padding: 8px 18px;
            font-size: 12px;
            font-weight: 600;
        }
        
        