/* ============================================================
   THEME: Mwanga (Green/Light) - kuiga rangi/mtindo wa reference
   (Swahili Debt Management System). Awamu 1 - MFANO/PREVIEW TU.
   ============================================================ */
body.theme-mwanga {
    --sidebar-bg: #0e1526;
    --sidebar-bg-2: #19223b;
    --sidebar-text: #c9d1e6;
    --accent: #f97316;
    --accent-light: #fb923c;
    --accent-dark: #c2410c;
    --success: #16a34a;
    --success-dark: #15803d;
    --danger: #dc2626;
    --danger-dark: #b91c1c;
    --amber: #f59e0b;
    --amber-dark: #b45309;
    --gray: #6b7a8c;
    --mw-page: #f4f5f8;
    --mw-card: #ffffff;
    --mw-card-line: #e3e5eb;
    --mw-ink: #1f2330;
    --mw-ink-soft: #555b6e;
    --mw-muted: #848ba0;
    --mw-hover: rgba(249,115,22,.08);
    --mw-soft: #eef0f6;
}

/* ---- Ukurasa/Main content: nyeupe/nyepesi badala ya giza ---- */
body.theme-mwanga { background: var(--mw-page); }
body.theme-mwanga .main-content { background: var(--mw-page); }
body.theme-mwanga .main-content-full { background: var(--mw-page); }

/* ---- Topbar: kijani, kinachoendelea na rangi ya sidebar (si nyeupe tena) ---- */
body.theme-mwanga .topbar {
    background: linear-gradient(90deg, var(--sidebar-bg) 0%, var(--sidebar-bg-2) 100%); color: #fff;
    box-shadow: none;
}
/* topbar-left: rangi moja tambarare (sawa na mwanzo wa gradient ya sidebar) ili
   pale topbar na sidebar vinapokutana (kona ya juu-kushoto) pasionekane mstari/utofauti wa rangi */
body.theme-mwanga .topbar-left {
    flex: 0 0 220px; display: flex; align-items: center; gap: 8px; padding-left: 8px; overflow: hidden;
    background: var(--sidebar-bg); box-sizing: border-box; margin-left: -12px;
}
body.theme-mwanga .topbar-left .topbar-brand {
    display: block; font-size: 16px; font-weight: 800; letter-spacing: .03em; color: #fff; text-transform: uppercase;
    white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 100%; line-height: 1;
}
body.sidebar-collapsed.theme-mwanga .topbar-left .topbar-brand { display: none; }
body.sidebar-collapsed.theme-mwanga .topbar-left { justify-content: center; padding-left: 0; }

/* ---- Topbar: vitu (tarehe/saa/POS/kengele/bendera/Admin) vibane pamoja upande wa KULIA ---- */
body.theme-mwanga .topbar { justify-content: space-between; }
body.theme-mwanga .topbar-right { gap: 8px; margin-left: auto; }

/* ---- Kitufe cha kubana/kupanua sidebar (icon-only mode) - sasa kiko kwenye topbar, kulia kwa jina la duka ---- */
body.theme-mwanga .sidebar-collapse-btn {
    flex: 0 0 auto; width: 30px; height: 30px; border-radius: 8px; border: 0; cursor: pointer;
    background: rgba(255,255,255,.12); color: #fff; font-size: 13px; display: flex; align-items: center; justify-content: center;
}
body.theme-mwanga .sidebar-collapse-btn:hover { background: rgba(255,255,255,.22); }

/* Nafasi ya juu ya sidebar (kipengele cha sidebar-logo kimeondolewa, jina/hamburger sasa viko kwenye topbar) */
body.theme-mwanga .sidebar { padding-top: 14px; }

/* ======================================================================
   SIDEBAR IMEBANWA (icon-only, "smart collapse") - body.sidebar-collapsed
   ====================================================================== */
body.sidebar-collapsed.theme-mwanga .sidebar,
body.sidebar-collapsed.theme-mwanga .topbar-left { width: 76px; flex-basis: 76px; }
body.sidebar-collapsed.theme-mwanga .sidebar-logo { flex-direction: column; gap: 8px; padding: 14px 0 16px; }
body.sidebar-collapsed.theme-mwanga .sidebar-item,
body.sidebar-collapsed.theme-mwanga .sidebar-group-toggle {
    justify-content: center; margin-left: 10px; margin-right: 10px; padding-left: 0; padding-right: 0; position: relative;
}
body.sidebar-collapsed.theme-mwanga .sidebar-item i,
body.sidebar-collapsed.theme-mwanga .sidebar-group-toggle i { margin-right: 0; }
body.sidebar-collapsed.theme-mwanga .sidebar-label,
body.sidebar-collapsed.theme-mwanga .sidebar-caret,
body.sidebar-collapsed.theme-mwanga .sidebar-submenu,
body.sidebar-collapsed.theme-mwanga .sidebar-divider,
body.sidebar-collapsed.theme-mwanga .sp-text { display: none !important; }
body.sidebar-collapsed.theme-mwanga .sidebar-group-toggle { display: flex; }
body.sidebar-collapsed.theme-mwanga .sidebar-badge {
    position: absolute; top: 4px; right: 10px; min-width: 9px; width: 9px; height: 9px; padding: 0; font-size: 0; margin-left: 0;
}
body.sidebar-collapsed.theme-mwanga .sidebar-profile { justify-content: center; padding: 14px 0; }
body.theme-mwanga .topbar-datetime {
    background: rgba(255,255,255,.14); color: #fff; padding: 6px 14px; border-radius: 999px; font-weight: 600;
}
body.theme-mwanga .tb-btn { color: #e4f3ea; border-radius: 10px; font-size: 12.5px; padding: 7px 11px; }
body.theme-mwanga .tb-btn:hover, body.theme-mwanga .tb-btn.active { background: rgba(255,255,255,.14); color: #fff; }
body.theme-mwanga .tb-pos { background: #fff; color: var(--accent-dark); font-weight: 700; border-radius: 999px; padding: 7px 15px; box-shadow: 0 6px 14px -8px rgba(0,0,0,.35); }
body.theme-mwanga .tb-pos i { color: var(--accent-dark); }
body.theme-mwanga .tb-avatar { background: rgba(255,255,255,.2); color: #fff; }
body.theme-mwanga .tb-user .tb-name, body.theme-mwanga .tb-hello { color: #e4f3ea; }

/* ---- Calendar/Clock pills (topbar) ---- */
body.theme-mwanga .tb-dt {
    display: flex; align-items: center; gap: 8px; background: rgba(255,255,255,.12); border: 1px solid rgba(255,255,255,.18);
    border-radius: 10px; padding: 6px 12px; font-size: 11.5px; color: #cfe9d8; line-height: 1.3;
}
body.theme-mwanga .tb-dt i { font-size: 14px; color: #fff; }
body.theme-mwanga .tb-dt span { display: flex; flex-direction: column; }
body.theme-mwanga .tb-dt b { color: #fff; font-size: 12.5px; font-weight: 700; }
@media (max-width: 1100px) { body.theme-mwanga .tb-dt small { display: none; } }
@media (max-width: 900px) { body.theme-mwanga .tb-dt { display: none; } }

/* ---- Dropdown label/separator (theme switcher ndani ya avatar menu) ---- */
body.theme-mwanga .dd-sep { height: 1px; background: var(--mw-card-line); margin: 6px 0; }
body.theme-mwanga .dd-label { font-size: 10.5px; font-weight: 700; text-transform: uppercase; letter-spacing: .04em; color: var(--mw-muted); padding: 4px 16px; }
body.theme-mwanga .dropdown-menu { background: var(--mw-card); color: var(--mw-ink); border: 1px solid var(--mw-card-line); box-shadow: 0 18px 44px -16px rgba(16,40,28,.28); }
body.theme-mwanga .dropdown-menu a, body.theme-mwanga .dropdown-menu button.lang-item { color: var(--mw-ink); }
body.theme-mwanga .dropdown-menu a:hover, body.theme-mwanga .dropdown-menu button:hover { background: #eef7f1; }

/* ---- Sidebar: gradient ya kijani kioevu (kama reference), vitu vya menu ---- */
body.theme-mwanga .sidebar { background: linear-gradient(165deg, var(--sidebar-bg), var(--sidebar-bg-2) 100%); transition: width .18s ease; }
body.theme-mwanga .topbar-left { transition: flex-basis .18s ease, width .18s ease; }
body.theme-mwanga .sidebar-item, body.theme-mwanga .sidebar-subitem { color: var(--sidebar-text); }
body.theme-mwanga .sidebar-item:hover, body.theme-mwanga .sidebar-subitem:hover { background: rgba(255,255,255,.10); color: #fff; }
body.theme-mwanga .sidebar-item.active {
    background: #fff; color: var(--accent-dark);
    box-shadow: 0 6px 16px -6px rgba(0,0,0,.35);
}
/* Kundi lililofunguliwa (mf. Wateja/Products wakati sub-menu iko wazi) -
   kijani imara, maandishi meupe - tofauti na menu-moja (nyeupe) */
body.theme-mwanga .sidebar-group-toggle.active {
    background: var(--accent); color: #fff;
    box-shadow: 0 4px 12px -4px rgba(0,0,0,.25);
}
body.theme-mwanga .sidebar-item i, body.theme-mwanga .sidebar-group-toggle i {
    background: none; width: 23px; height: auto; padding: 0; display: inline-flex;
    align-items: center; justify-content: center; text-align: center; margin-right: 12px;
    font-size: 17.5px; color: var(--sidebar-text); opacity: .88; flex-shrink: 0;
    transition: color .15s ease, opacity .15s ease, transform .15s ease, text-shadow .15s ease;
    -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
    text-rendering: optimizeLegibility;
}
body.theme-mwanga .sidebar-item:hover i, body.theme-mwanga .sidebar-group-toggle:hover i {
    color: #fff; opacity: 1; transform: scale(1.1);
    text-shadow: 0 2px 8px rgba(0,0,0,.25);
}
body.theme-mwanga .sidebar-item.active i {
    color: var(--accent-dark); opacity: 1; transform: none; text-shadow: none;
}
body.theme-mwanga .sidebar-group-toggle.active i {
    color: #fff; opacity: 1; transform: none; text-shadow: none;
}
body.theme-mwanga .sidebar-subitem { -webkit-font-smoothing: antialiased; }
body.theme-mwanga .sidebar-item, body.theme-mwanga .sidebar-group-toggle {
    border-radius: 12px; font-weight: 500; margin: 3px 14px; letter-spacing: .1px;
    transition: background-color .15s ease, color .15s ease, box-shadow .15s ease;
}
body.theme-mwanga .sidebar-caret { color: var(--sidebar-text); }
body.theme-mwanga .sidebar-group-toggle.active .sidebar-caret { color: #fff; }
/* Sub-item iliyo active ndani ya submenu iliyofunguliwa - chip hafifu nyeupe, maandishi meusi */
body.theme-mwanga .sidebar-subitem.active {
    color: var(--accent-dark); font-weight: 700; background: rgba(255,255,255,.88);
    box-shadow: 0 2px 8px -2px rgba(0,0,0,.2);
}
body.theme-mwanga .sidebar-divider { color: #a9d9bb; }
body.theme-mwanga .sidebar-item { display: flex; align-items: center; }
body.theme-mwanga .sidebar-badge { margin-left: auto; font-size: 10.5px; padding: 1px 7px; border-radius: 999px; background: #dc2626; color: #fff; }
body.theme-mwanga .sidebar { display: flex; flex-direction: column; min-height: 100%; }
body.theme-mwanga .sidebar-profile {
    margin-top: auto; display: flex; align-items: center; gap: 10px;
    padding: 14px 16px; border-top: 1px solid rgba(255,255,255,.14);
}
body.theme-mwanga .sp-avatar {
    width: 36px; height: 36px; border-radius: 50%; flex: 0 0 auto;
    background: linear-gradient(135deg, var(--accent-light), #0f6b3a); color: #fff;
    display: flex; align-items: center; justify-content: center; font-weight: 700; font-size: 14px;
}
body.theme-mwanga .sp-text { display: flex; flex-direction: column; min-width: 0; }
body.theme-mwanga .sp-name { color: #fff; font-size: 13px; font-weight: 600; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
body.theme-mwanga .sp-role { color: var(--sidebar-text); font-size: 11.5px; opacity: .85; }

/* ---- Bell ya taarifa (desktop topbar) ---- */
body.theme-mwanga .tb-bell { position: relative; }
body.theme-mwanga .tb-bell-badge {
    position: absolute; top: 2px; right: 2px; min-width: 15px; height: 15px; padding: 0 3px;
    border-radius: 999px; background: #dc2626; color: #fff; font-size: 10px; font-weight: 700;
    display: flex; align-items: center; justify-content: center; line-height: 1;
}

/* ---- Rangi mbalimbali za vitufe vya haraka (kama mfano mpya ulioletwa) ---- */
body.theme-mwanga .dash-btn.blue { background: linear-gradient(135deg, #60a5fa, #2563eb); color: #fff; border-color: #2563eb; }
body.theme-mwanga .dash-btn.blue i { color: #fff; }
body.theme-mwanga .dash-btn.orange { background: linear-gradient(135deg, #fbbf24, #ea580c); color: #fff; border-color: #ea580c; }
body.theme-mwanga .dash-btn.orange i { color: #fff; }

/* ---- Kadi za takwimu (Dashboard): tambarare, nyeupe, ikoni duara ya rangi ---- */
body.theme-mwanga .dash-card.dash-stat {
    background: var(--mw-card); border: 1px solid var(--mw-card-line); color: var(--mw-ink);
    box-shadow: 0 1px 2px rgba(16,24,40,.05), 0 14px 34px -22px rgba(16,40,28,.20);
}
body.theme-mwanga .dash-value { color: var(--mw-ink); }
body.theme-mwanga .dash-label { color: var(--mw-muted); }
body.theme-mwanga .dash-ico { background: var(--c, var(--accent)); color: #fff; border-radius: 50%; }

/* ---- Vitufe vya haraka (shortcuts): vidogo, nadhifu (si vikubwa) ---- */
body.theme-mwanga .dash-actions { gap: 8px; }
body.theme-mwanga .dash-btn {
    background: var(--mw-card); border: 1px solid var(--mw-card-line); color: var(--mw-ink);
    box-shadow: 0 1px 2px rgba(16,24,40,.05);
    padding: 7px 13px; font-size: 12.5px; border-radius: 10px; gap: 6px;
}
body.theme-mwanga .dash-btn:hover { transform: translateY(-1px); box-shadow: 0 4px 10px -4px rgba(16,24,40,.18); }
body.theme-mwanga .dash-btn i { color: var(--accent); font-size: 12.5px; }
body.theme-mwanga .dash-btn.primary, body.theme-mwanga .dash-btn.green {
    background: linear-gradient(135deg, var(--accent-light), var(--accent-dark)); color: #fff; border-color: var(--accent-dark);
}
body.theme-mwanga .dash-btn.primary i, body.theme-mwanga .dash-btn.green i { color: #fff; }

/* ---- Box/Jedwali (kurasa zingine - mwanzo wa Awamu 3) ---- */
body.theme-mwanga .box { background: var(--mw-card); border: 1px solid var(--mw-card-line); box-shadow: 0 1px 2px rgba(16,24,40,.05); border-radius: 14px; overflow: hidden; margin-bottom: 18px; }
body.theme-mwanga .box-header { border-bottom: 1px solid var(--mw-card-line); padding: 14px 18px; display: flex; align-items: center; justify-content: space-between; gap: 10px; }
body.theme-mwanga .box-header h2 { color: var(--mw-ink); margin: 0; font-size: 15.5px; font-weight: 700; display: flex; align-items: center; gap: 8px; }
body.theme-mwanga .box-header h2 .fa { color: var(--accent); }
body.theme-mwanga .box-content { padding: 16px 18px; }
body.theme-mwanga .dash-link { font-size: 12.5px; font-weight: 600; color: var(--link); }
body.theme-mwanga .dash-sel { font-size: 12px; color: var(--mw-muted); background: #f3f6f4; border: 1px solid var(--mw-card-line); padding: 5px 10px; border-radius: 8px; }
body.theme-mwanga .table > thead > tr > th { background: var(--accent); color: #fff; font-weight: 700; border-color: var(--accent-dark) !important; }

/* ---- Sales Trend chart (SVG) ---- */
body.theme-mwanga .dash-trend-svg { width: 100%; height: 180px; display: block; }
body.theme-mwanga .dash-trend-labels { display: flex; justify-content: space-between; font-size: 11px; color: var(--mw-muted); margin-top: 4px; }

/* ---- Jedwali dogo (Top Products / Low Stock) ---- */
body.theme-mwanga .dash-mini-tbl { width: 100%; border-collapse: collapse; font-size: 13px; }
body.theme-mwanga .dash-mini-tbl th { text-align: left; font-size: 11px; text-transform: uppercase; letter-spacing: .03em; color: var(--mw-muted); padding: 10px 18px; background: #f7faf8; }
body.theme-mwanga .dash-mini-tbl td { padding: 9px 18px; border-top: 1px solid var(--mw-card-line); color: var(--mw-ink); }
body.theme-mwanga .dash-mini-tbl .r { text-align: right; }
body.theme-mwanga .dash-mini-tbl .neg { color: #dc2626; font-weight: 700; }
body.theme-mwanga .rank-dot { display: inline-flex; align-items: center; justify-content: center; width: 22px; height: 22px; border-radius: 50%; background: #e2e8e4; color: var(--mw-ink-soft); font-size: 11px; font-weight: 700; }
body.theme-mwanga .rank-dot.r1 { background: #fde68a; color: #92400e; }
body.theme-mwanga .rank-dot.r2 { background: #e2e8e4; color: #475569; }
body.theme-mwanga .rank-dot.r3 { background: #fcd9b6; color: #9a3412; }

/* ---- Recent Activities feed ---- */
body.theme-mwanga .dash-activity { list-style: none; margin: 0; padding: 0; }
body.theme-mwanga .dash-activity li { display: flex; align-items: center; gap: 10px; padding: 9px 0; border-bottom: 1px dashed var(--mw-card-line); font-size: 13px; }
body.theme-mwanga .dash-activity li:last-child { border-bottom: 0; }
body.theme-mwanga .act-dot { width: 8px; height: 8px; border-radius: 50%; flex: 0 0 auto; }
body.theme-mwanga .act-dot.g { background: #22a85a; } .act-dot.b { background: #2563eb; } body.theme-mwanga .act-dot.r { background: #dc2626; }
body.theme-mwanga .act-txt { flex: 1; color: var(--mw-ink); }
body.theme-mwanga .act-time { color: var(--mw-muted); font-size: 11.5px; }

body.theme-mwanga .dash-mfano-note { font-size: 12px; color: var(--mw-muted); background: #fffbeb; border: 1px dashed #fbbf24; border-radius: 10px; padding: 8px 14px; margin: 0 0 18px; }

body.theme-mwanga .dash-grid-3col { display: grid; grid-template-columns: 1.1fr 1.2fr 1fr; gap: 16px; margin-bottom: 0; }
body.theme-mwanga .dash-grid-3col .box { margin-bottom: 0; height: 100%; min-width: 0; }
@media (max-width: 1100px) { body.theme-mwanga .dash-grid-3col { grid-template-columns: 1fr; } }
body.theme-mwanga .dash-mini-tbl th, body.theme-mwanga .dash-mini-tbl td { padding: 9px 12px; white-space: nowrap; }
body.theme-mwanga .dash-grid-3col .box-content { overflow-x: auto; }
body.theme-mwanga .dash-grid-3col .dash-mini-tbl { min-width: 100%; }
body.theme-mwanga .dash-grid-2col .box-content { overflow-x: auto; }

/* ---- Mstari wa juu: greeting + vitufe upande wa kulia (kama reference) ---- */
body.theme-mwanga .dash-top-row { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; flex-wrap: wrap; margin-bottom: 18px; }
body.theme-mwanga .dash-top-row .dash-actions { margin: 4px 0 0; }

/* ---- Safu ya kadi 5 kuu ---- */
body.theme-mwanga .dash-grid-5 { display: grid; grid-template-columns: repeat(5, 1fr); gap: 14px; margin-bottom: 20px; }
body.theme-mwanga .dash-grid-5 .dash-value { font-size: 18.5px; overflow-wrap: normal; white-space: nowrap; }
body.theme-mwanga .dash-grid-5 .dash-label { font-size: 12.5px; }
body.theme-mwanga .dash-grid-5 .chip-n { background: none; padding: 0; color: var(--mw-muted); font-weight: 500; }
body.theme-mwanga .dash-grid-5 .chip-g::before { content: "\2191 "; }
body.theme-mwanga .dash-grid-5 .chip-r::before { content: "\2193 "; }
body.theme-mwanga .dash-grid-5 .chip-g { background: #dcfce7; color: #15803d; }
body.theme-mwanga .dash-grid-5 .chip-r { background: #fee2e2; color: #b91c1c; }

/* ---- Kitufe cha "View Debts" (outline) ---- */
body.theme-mwanga .dash-btn.outline { background: #fff; border: 1px solid var(--mw-card-line); color: var(--mw-ink); font-weight: 600; }
body.theme-mwanga .dash-btn.outline i { color: var(--accent); }
@media (max-width: 1300px) { body.theme-mwanga .dash-grid-5 { grid-template-columns: repeat(3, 1fr); } }
@media (max-width: 900px) { body.theme-mwanga .dash-grid-5 { grid-template-columns: repeat(2, 1fr); } }

/* ---- Safu-mbili: Recent Sales + Low Stock ---- */
body.theme-mwanga .dash-grid-2col { display: grid; grid-template-columns: 1.6fr 1fr; gap: 16px; align-items: start; }
body.theme-mwanga .dash-grid-2col .box { margin-bottom: 0; }
@media (max-width: 1100px) { body.theme-mwanga .dash-grid-2col { grid-template-columns: 1fr; } }
body.theme-mwanga .btn-primary { background: var(--accent); border-color: var(--accent-dark); }
body.theme-mwanga .btn-primary:hover { background: var(--accent-dark); }

/* ---- Vitufe vya kadi za "Needs Attention" (Open Debts/Notifications) ---- */
body.theme-mwanga .dash-btn-block { background: linear-gradient(135deg, var(--accent-light), var(--accent-dark)); }
body.theme-mwanga .dash-btn-block.alt { background: #eef7f1; color: var(--accent-dark); border: 1px solid #cfe9d8; }

/* ---- Usafi wa ikoni: ukubwa/uzani sawa kote (sidebar, topbar, kadi) ---- */
body.theme-mwanga .fa { font-size: 1.02em; }
body.theme-mwanga .tb-flag svg, body.theme-mwanga .tb-flag img { width: 18px; height: 13px; border-radius: 2px; }
body.theme-mwanga .tb-avatar, body.theme-mwanga .mtb-avatar { font-weight: 700; letter-spacing: .02em; }
body.theme-mwanga .dash-ico { box-shadow: 0 6px 14px -8px rgba(16,24,40,.35); font-size: 15px; }

/* ============================================================
   POS: jedwali la cart, muhtasari, na Finalize Sale / Payment modal
   ============================================================ */
body.theme-mwanga .pos-wrapper { background: var(--mw-card); border-radius: 14px; }
body.theme-mwanga .pos-cart-table thead tr { background: linear-gradient(135deg, var(--accent-light), var(--accent-dark)); }
body.theme-mwanga .pos-cart-table thead th { color: #fff; font-weight: 700; border-color: transparent; }
body.theme-mwanga .pos-cart-table thead tr th:first-child { border-top-left-radius: 8px; }
body.theme-mwanga .pos-cart-table thead tr th:last-child { border-top-right-radius: 8px; }
body.theme-mwanga .pos-row-num { text-align: center; color: var(--mw-muted); font-weight: 600; }
body.theme-mwanga .pos-qty-input { text-align: center; }
body.theme-mwanga .pos-row-remove { text-align: center; vertical-align: middle; }
body.theme-mwanga .pos-row-remove .btn { display: inline-flex; align-items: center; justify-content: center; margin: 0 auto; }
body.theme-mwanga .pos-summary-half { background: var(--mw-page); border: 1px solid var(--mw-card-line); padding: 14px 20px; font-size: 15px; }
body.theme-mwanga .pos-summary-half-right { background: #eef7f1; }
body.theme-mwanga .pos-summary-half span:first-child { color: var(--mw-ink-soft); font-weight: 600; }
body.theme-mwanga .pos-summary-half b { color: var(--mw-ink); font-size: 16px; }
body.theme-mwanga .pos-summary-total-amount { color: var(--accent-dark); font-weight: 800; font-size: 20px; }
body.theme-mwanga .pos-discount-group { gap: 10px; }
body.theme-mwanga .discount-chip {
    display: inline-flex; align-items: center; gap: 7px; border: 1.5px dashed var(--mw-card-line); background: #fff;
    color: var(--mw-ink-soft); font-size: 14px; font-weight: 700; padding: 8px 14px; border-radius: 20px; cursor: pointer;
}
body.theme-mwanga .discount-chip i { color: var(--mw-muted); }
body.theme-mwanga .discount-chip:hover { border-color: var(--accent); color: var(--accent-dark); }
body.theme-mwanga .discount-chip.has-value { border-style: solid; border-color: var(--accent); background: #eef7f1; color: var(--accent-dark); }
body.theme-mwanga .discount-chip.has-value i { color: var(--accent-dark); }
body.theme-mwanga .discount-input-hidden {
    border: 1.5px solid var(--accent); width: 130px; font-size: 15px; font-weight: 700; padding: 9px 12px;
    border-radius: 8px; background: #fff; color: var(--mw-ink);
}
body.theme-mwanga .discount-input-hidden:focus { outline: none; box-shadow: 0 0 0 3px rgba(18,133,63,.15); }
body.theme-mwanga .pos-action-grid .btn-amber { background: linear-gradient(135deg, #fbbf24, var(--amber-dark)); }
body.theme-mwanga .pos-action-grid .btn-danger { background: linear-gradient(135deg, #ef4444, var(--danger-dark)); }
body.theme-mwanga .pos-action-grid .pos-payment-btn { background: linear-gradient(135deg, var(--accent-light), var(--accent-dark)); }

/* ---- Finalize Sale / Payment modal ---- */
body.theme-mwanga .finalize-modal-dialog { max-width: 1160px; }
body.theme-mwanga .modal-content:has(.fin-head) { border-radius: 18px; box-shadow: 0 24px 70px rgba(8,30,18,.28); }
body.theme-mwanga .fin-head {
    position: relative; display: flex; align-items: center; justify-content: center; gap: 12px;
    margin: -20px -20px 18px; padding: 20px 24px; background: linear-gradient(90deg, var(--sidebar-bg), var(--accent));
    border-radius: 18px 18px 0 0; box-shadow: 0 4px 14px rgba(8,30,18,.18);
}
body.theme-mwanga .fin-head-ico {
    width: 40px; height: 40px; border-radius: 10px; background: rgba(255,255,255,.16); color: #fff; font-size: 18px;
    display: flex; align-items: center; justify-content: center; flex: 0 0 auto; box-shadow: 0 2px 6px rgba(0,0,0,.15);
}
body.theme-mwanga .fin-head h4 { margin: 0; color: #fff; text-transform: none; font-size: 20px; text-align: center; }
body.theme-mwanga .fin-head-x {
    position: absolute; right: 22px; top: 50%; transform: translateY(-50%);
    background: none; border: 0; color: #fff; font-size: 28px; line-height: 1; cursor: pointer; opacity: .85;
}
body.theme-mwanga .fin-head-x:hover { opacity: 1; }

body.theme-mwanga .fin-total-banner {
    display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; gap: 4px;
    background: #eef7f1; border: 1px solid #e3f1e8;
    border-radius: 14px; padding: 16px 22px; margin-bottom: 20px; box-shadow: 0 2px 10px rgba(16,24,40,.05);
}
body.theme-mwanga .fin-total-banner span { font-size: 13px; font-weight: 700; color: var(--mw-ink-soft); text-transform: uppercase; letter-spacing: .05em; }
body.theme-mwanga .fin-total-banner b { font-size: 36px; color: var(--accent-dark); line-height: 1.1; }

body.theme-mwanga .pay-row-v2 { display: block; margin-bottom: 24px; }
body.theme-mwanga .pm-icons { display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; margin-bottom: 22px; }
body.theme-mwanga .pm-ico-btn {
    display: flex; flex-direction: column; align-items: center; gap: 8px; padding: 16px 6px; border-radius: 14px;
    border: 1px solid var(--mw-card-line); background: #fff; color: var(--mw-ink-soft); cursor: pointer; font-size: 13px; font-weight: 700;
    box-shadow: 0 2px 8px rgba(16,24,40,.06); transition: box-shadow .15s, transform .15s;
}
body.theme-mwanga .pm-ico-btn:hover { box-shadow: 0 4px 14px rgba(16,24,40,.1); transform: translateY(-1px); }
body.theme-mwanga .pm-ico-btn i { font-size: 24px; color: var(--mw-muted); }
body.theme-mwanga .pm-ico-btn.active { border-color: var(--accent); background: #eef7f1; color: var(--accent-dark); box-shadow: 0 4px 14px rgba(18,133,63,.18); }
body.theme-mwanga .pm-ico-btn.active i { color: var(--accent-dark); }
body.theme-mwanga .pm-ico-btn.pm-credit.active { border-color: var(--danger-dark); background: #fef2f2; color: var(--danger-dark); box-shadow: 0 4px 14px rgba(220,38,38,.15); }
body.theme-mwanga .pm-ico-btn.pm-credit.active i { color: var(--danger-dark); }
body.theme-mwanga .pay-amount-label { font-size: 12.5px; font-weight: 700; text-transform: uppercase; letter-spacing: .03em; color: var(--mw-muted); margin-bottom: 6px; }
body.theme-mwanga .pay-amount-row { display: flex; gap: 10px; align-items: stretch; }
body.theme-mwanga .pay-amount-row .payAmount {
    flex: 1 1 auto; min-width: 0; height: 68px; font-size: 28px; font-weight: 800; padding: 0 20px; border-radius: 12px;
    border: 1px solid var(--mw-card-line); box-shadow: inset 0 1px 3px rgba(16,24,40,.06); box-sizing: border-box;
}
body.theme-mwanga .pay-amount-row .payAmount:focus { outline: none; border-color: var(--accent); box-shadow: 0 0 0 3px rgba(18,133,63,.15); }
body.theme-mwanga .pay-amount-row .payRemoveBtn {
    width: 68px; height: 68px; font-size: 18px; border-radius: 12px; flex: 0 0 auto;
    display: flex; align-items: center; justify-content: center; box-shadow: 0 2px 8px rgba(16,24,40,.08);
}
body.theme-mwanga .pay-amount-row .payAddBtn {
    height: 68px; flex: 0 0 auto; display: flex; align-items: center; justify-content: center; gap: 8px;
    padding: 0 22px; white-space: nowrap; font-size: 15.5px; font-weight: 700; border-radius: 12px;
    background: var(--accent); border-color: var(--accent-dark); color: #fff; box-shadow: 0 2px 8px rgba(16,24,40,.08);
}
body.theme-mwanga .pay-amount-row .payAddBtn i { font-size: 14px; }
body.theme-mwanga .pay-amount-row .payAddBtn:hover { background: var(--accent-dark); }

body.theme-mwanga .finalize-quickcash { border-left: 1px solid var(--mw-card-line); padding-left: 20px; margin: 0; }
body.theme-mwanga .qc-title { font-size: 12.5px; font-weight: 700; text-transform: uppercase; color: var(--mw-muted); margin-bottom: 8px; }
body.theme-mwanga .qc-col { display: flex; flex-direction: column; gap: 10px; }
body.theme-mwanga .qc-col .qc-btn { width: 100%; padding: 13px 8px; border-radius: 12px; font-size: 15px; font-weight: 700; box-shadow: 0 2px 8px rgba(16,24,40,.06); border: 1px solid var(--mw-card-line); }
body.theme-mwanga .qc-col .qc-btn:hover { box-shadow: 0 4px 12px rgba(16,24,40,.1); transform: translateY(-1px); }

body.theme-mwanga .fin-totals-tbl { background: #fff; border-radius: 12px; overflow: hidden; box-shadow: 0 2px 8px rgba(16,24,40,.05); border: 1px solid var(--mw-card-line); margin-bottom: 22px; }
body.theme-mwanga .fin-totals-tbl td { padding: 12px 14px; font-size: 14px; border-color: var(--mw-card-line); }
body.theme-mwanga .fin-totals-tbl td:first-child, body.theme-mwanga .fin-totals-tbl td:nth-child(3) { color: var(--mw-ink-soft); font-weight: 600; }
body.theme-mwanga .fin-totals-tbl td:nth-child(2), body.theme-mwanga .fin-totals-tbl td:nth-child(4) { font-weight: 800; font-size: 16px; }

body.theme-mwanga button.fin-submit-btn {
    background: linear-gradient(135deg, var(--accent-light), var(--accent-dark)); border-color: var(--accent-dark);
    padding: 20px; font-size: 18px; font-weight: 800; border-radius: 12px; letter-spacing: .02em;
    box-shadow: 0 6px 18px rgba(18,133,63,.3); transition: box-shadow .15s, transform .15s;
}
body.theme-mwanga button.fin-submit-btn:hover { box-shadow: 0 8px 22px rgba(18,133,63,.38); transform: translateY(-1px); }
body.theme-mwanga #finalizeModal .modal-content > button.btn-secondary.btn-block {
    padding: 14px; font-size: 15px; font-weight: 700; border-radius: 10px; margin-top: 10px;
}
body.theme-mwanga #finalizeModal .btn-sm { padding: 10px 16px; font-size: 13.5px; border-radius: 8px; }
body.theme-mwanga #finalizeModal label { font-size: 15px; font-weight: 700; margin-bottom: 7px; display: inline-block; }
body.theme-mwanga #finalizeModal textarea.form-control {
    font-size: 16px; padding: 14px 16px; border-radius: 12px; box-shadow: inset 0 1px 3px rgba(16,24,40,.05);
}

/* Dirisha la Finalize Sale likae katikati kabisa ya skrini (juu-chini na kushoto-kulia) */
body.theme-mwanga #finalizeModal { align-items: center; }

/* =====================================================================
 |  SKIN: kunakili muonekano wa mfumo wa Madeni (sidebar/topbar/jedwali/
 |  vitufe) - RANGI/KONA/VIVULI/NAFASI/HOVER TU. Hakuna mabadiliko ya
 |  HTML/PHP/JS wala mpangilio wa vitufe.
 ===================================================================== */

/* Icons - rendering crisp zaidi popote (anti-aliasing) */
body.theme-mwanga .fa { -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }

/* Viungo: bila underline popote; hover ibadilishe rangi tu */
body.theme-mwanga a { text-decoration: none; }
body.theme-mwanga a:hover { text-decoration: none; }

/* Namba za simu - tap-to-call chip */
body.theme-mwanga .tel-link {
    display: inline-flex; align-items: center; gap: 6px;
    color: var(--accent-dark); font-weight: 600;
}
body.theme-mwanga .tel-link i { font-size: 12px; }
body.theme-mwanga .tel-link:hover { color: var(--accent); text-decoration: none; }

/* Jedwali (orodha) - seli nyeupe, header laini, kona za mviringo, hover ya safu */
body.theme-mwanga table.table {
    background: var(--mw-card);
    border-radius: 14px;
    box-shadow: 0 1px 2px rgba(16,24,40,.04), 0 14px 34px -22px rgba(16,40,28,.22);
}
body.theme-mwanga table.table th, body.theme-mwanga table.table td {
    border-color: var(--mw-card-line);
}
body.theme-mwanga table.table th {
    background: var(--accent); color: #fff; font-weight: 700;
}
body.theme-mwanga table.table tbody tr:nth-child(even) td { background: var(--mw-soft, var(--mw-page)); }
body.theme-mwanga table.table tr:hover td { background: #eef7f1; }
body.theme-mwanga table.table th:first-child { border-top-left-radius: 14px; }
body.theme-mwanga table.table th:last-child { border-top-right-radius: 14px; }

/* Pill badges za hali - zibaki mviringo, rangi laini zenye utofautishaji mzuri */
body.theme-mwanga .badge { border-radius: 999px; font-weight: 700; letter-spacing: .2px; }
body.theme-mwanga .badge-success { background: #dcfce7; color: #166534; }
body.theme-mwanga .badge-warning { background: #fef3c7; color: #92400e; }
body.theme-mwanga .badge-danger { background: #fee2e2; color: #b91c1c; }
body.theme-mwanga .badge-gray { background: #eef2f1; color: #475569; }

/* Vitufe - kona za mviringo zaidi + kivuli laini + hover kidogo ya kuchomoza */
body.theme-mwanga .btn {
    border-radius: 10px; transition: transform .12s ease, filter .12s ease, background .15s ease;
}
body.theme-mwanga .btn:hover { transform: translateY(-1px); filter: brightness(1.04); }
body.theme-mwanga .btn-secondary { background: #eef2f1; color: #334155; border: 1px solid #dfe6e1; }
body.theme-mwanga .btn-secondary:hover { background: #e3eae6; color: #1f2937; }
body.theme-mwanga .btn-success { background: linear-gradient(135deg, var(--accent-light), var(--success-dark)); }
body.theme-mwanga .btn-danger { background: linear-gradient(135deg, #ef4444, var(--danger-dark)); }
body.theme-mwanga .btn-amber { background: linear-gradient(135deg, #fbbf24, var(--amber-dark)); }

/* Vitufe vidogo vya "Vitendo" kwenye jedwali (edit/delete/view) - duara, rangi laini (pastel) */
body.theme-mwanga table.table .btn-xs,
body.theme-mwanga .tbl-list .btn-xs {
    min-width: 30px; height: 30px; padding: 0 11px; border-radius: 999px;
    display: inline-flex; align-items: center; justify-content: center; gap: 5px;
    box-shadow: none; border: none;
}
/* Kitufe chenye icon TU (hakina maandishi mengine karibu nayo) kibaki duara */
body.theme-mwanga table.table .btn-xs:has(> i:only-child),
body.theme-mwanga .tbl-list .btn-xs:has(> i:only-child) { width: 30px; padding: 0; }
body.theme-mwanga table.table .btn-xs.btn-primary,
body.theme-mwanga .tbl-list .btn-xs.btn-primary {
    background: #fef3c7; color: #92400e;
}
body.theme-mwanga table.table .btn-xs.btn-primary:hover,
body.theme-mwanga .tbl-list .btn-xs.btn-primary:hover { background: #fde68a; }
body.theme-mwanga table.table .btn-xs.btn-danger,
body.theme-mwanga .tbl-list .btn-xs.btn-danger {
    background: #fee2e2; color: #b91c1c;
}
body.theme-mwanga table.table .btn-xs.btn-danger:hover,
body.theme-mwanga .tbl-list .btn-xs.btn-danger:hover { background: #fecaca; }
body.theme-mwanga table.table .btn-xs.btn-success,
body.theme-mwanga .tbl-list .btn-xs.btn-success {
    background: #dbeafe; color: #1e40af;
}
body.theme-mwanga table.table .btn-xs.btn-success:hover,
body.theme-mwanga .tbl-list .btn-xs.btn-success:hover { background: #bfdbfe; }

/* Dropdown ya "Vitendo" na dropdown nyingine - kona za mviringo + kivuli */
body.theme-mwanga .dropdown-menu { border-radius: 14px; padding: 6px; }
body.theme-mwanga .dropdown-menu a, body.theme-mwanga .dropdown-menu button.lang-item,
body.theme-mwanga .dropdown-menu button {
    border-radius: 9px; margin: 1px 0;
}

/* Kurasa zisizo na .section-header/.box wrapper (mf. Reports) - sanifisha
   kichwa, stat-card, jina la sehemu na fomu za kuchuja ili zifanane na
   kurasa nyingine, bila kugusa HTML/muundo */
body.theme-mwanga .page-header h3 {
    color: var(--mw-ink); font-size: 18px; font-weight: 800; display: flex; align-items: center; gap: 10px;
}
body.theme-mwanga .section-title {
    color: var(--accent-dark); font-size: 13.5px; font-weight: 700; text-transform: uppercase; letter-spacing: .3px;
    border-left: 3px solid var(--accent); padding-left: 10px;
}
body.theme-mwanga .stat-card {
    background: #fff; border: 1px solid var(--mw-card-line); border-radius: 14px;
    box-shadow: 0 1px 2px rgba(16,24,40,.05), 0 14px 34px -22px rgba(16,40,28,.22);
    padding: 16px 20px;
}
body.theme-mwanga .stat-label { color: var(--mw-muted); font-size: 12.5px; font-weight: 600; }
body.theme-mwanga .stat-value { font-size: 22px; font-weight: 800; }
body.theme-mwanga .form-row input[type="date"], body.theme-mwanga input.form-control {
    border: 1.5px solid var(--mw-card-line); border-radius: 10px; padding: 8px 12px;
    background: #fff; color: var(--mw-ink);
}
body.theme-mwanga .form-row input[type="date"]:focus, body.theme-mwanga input.form-control:focus {
    outline: none; border-color: var(--accent); box-shadow: 0 0 0 3px rgba(18,133,63,.12);
}

/* Pagination ya DataTables - vitufe vya pill */
body.theme-mwanga .dataTables_paginate .paginate_button {
    border-radius: 999px !important; border: 1px solid var(--mw-card-line) !important;
    background: #fff !important; color: var(--mw-ink) !important; margin: 0 2px !important;
}
body.theme-mwanga .dataTables_paginate .paginate_button.current {
    background: var(--accent) !important; color: #fff !important; border-color: var(--accent-dark) !important;
}
body.theme-mwanga .dataTables_paginate .paginate_button:hover {
    background: #eef7f1 !important; color: var(--accent-dark) !important;
}

/* =====================================================================
 |  MADENI (Debts) - rangi/kona/vivuli ziendane na theme ya kijani,
 |  kama reference (count-pill, filter tabs, debt-cards, dcards simu)
 ===================================================================== */

/* Kadi za muhtasari (Debts with a balance / Total / Paid / Overdue) -
   mstari wa rangi kushoto kama reference, lakini kijani kwa default */
body.theme-mwanga .debt-card {
    border-radius: 14px; box-shadow: 0 1px 2px rgba(16,24,40,.05), 0 14px 34px -22px rgba(16,40,28,.22);
}
body.theme-mwanga .debt-card:nth-child(1) { --c: var(--accent); }
body.theme-mwanga .debt-card:nth-child(2) { --c: var(--accent-dark); }
body.theme-mwanga .debt-card:nth-child(3) { --c: #16a34a; }
body.theme-mwanga .debt-card:nth-child(4), body.theme-mwanga .debt-card.warn { --c: var(--danger-dark); }
body.theme-mwanga .debt-card:nth-child(5) { --c: var(--amber-dark); }
body.theme-mwanga .debt-card:nth-child(6) { --c: #0891b2; }
body.theme-mwanga .debt-card.warn { background: #fff7ed; }
body.theme-mwanga .debt-card.link:hover { box-shadow: 0 10px 24px -10px rgba(16,40,28,.25); }

/* Vichupo vya filter (Yote/Yenye Bakaa/...) - pill, kijani ikiwa active */
body.theme-mwanga .debt-tabs a {
    border-radius: 999px; border-color: var(--mw-card-line); color: var(--mw-ink-soft);
    font-weight: 600; font-size: 13px; transition: all .12s ease;
}
body.theme-mwanga .debt-tabs a.on {
    background: var(--accent); color: #fff; border-color: var(--accent-dark);
    box-shadow: 0 4px 10px -4px rgba(18,133,63,.4);
}
body.theme-mwanga .debt-tabs a:hover:not(.on) { background: #eef7f1; border-color: var(--accent); color: var(--accent-dark); }

/* Pill badges maalum za Madeni */
body.theme-mwanga .badge-daftari { background: #eef2f1; color: #334155; }
body.theme-mwanga .badge-hastahili { background: #ffedd5; color: #c2410c; }
body.theme-mwanga .badge-info { background: #dbeafe; color: #1e40af; }

/* Kadi za simu (dcards) - avatar ya kijani, kona za mviringo, kivuli laini */
body.theme-mwanga .dcard {
    border-radius: 14px; box-shadow: 0 1px 2px rgba(16,24,40,.05), 0 14px 34px -22px rgba(16,40,28,.2);
}
body.theme-mwanga .dc-av { background: linear-gradient(135deg, var(--accent-light), var(--accent-dark)); }
body.theme-mwanga .dc-bal b.due { color: var(--danger-dark); }
body.theme-mwanga .dc-bal b.clear { color: var(--accent-dark); }

/* Icon badge ya rangi juu-kulia kwenye kila debt-card (kama reference's
   card-stat .cs-ico) - imeongezwa kwa CSS ::after TU, hakuna HTML mpya */
body.theme-mwanga .debt-card {
    padding-right: 56px; position: relative; overflow: visible;
}
body.theme-mwanga .debt-card::after {
    content: "\f0f6"; font-family: "FontAwesome"; font-weight: normal;
    position: absolute; right: 14px; top: 14px; width: 38px; height: 38px;
    border-radius: 12px; background: var(--c, var(--accent)); color: #fff;
    display: flex; align-items: center; justify-content: center; font-size: 16px;
    box-shadow: 0 10px 18px -8px rgba(0,0,0,.35);
}
body.theme-mwanga .debt-card:nth-child(2)::after { content: "\f0d6"; }
body.theme-mwanga .debt-card:nth-child(3)::after { content: "\f00c"; }
body.theme-mwanga .debt-card:nth-child(4)::after { content: "\f071"; }
/* Kadi za 5 (Taarifa) na 6 (Amana/CASH) tayari zina icon ndani ya markup -
   ihamishe kuwa badge ile ile ya juu-kulia badala ya kuonyesha mara mbili */
body.theme-mwanga .debt-card:nth-child(5)::after { content: "\f0f3"; }
body.theme-mwanga .debt-card:nth-child(6)::after { content: "\f09d"; }
body.theme-mwanga .debt-card:nth-child(5) .n i,
body.theme-mwanga .debt-card:nth-child(6) .n i { display: none; }

/* =====================================================================
 |  SIDEBAR: aina ya icons (glyphs) ziwe sawa na reference, kwa CSS TU
 |  (content override kwenye :before) - hatujabadilisha class ya HTML
 ===================================================================== */
body.theme-mwanga .sidebar-item i.fa-th-large:before { content: "\f0e4"; } /* Dashboard -> fa-dashboard/fa-tachometer */
body.theme-mwanga .sidebar-item i.fa-exclamation-circle:before { content: "\f022"; } /* Debts -> fa-list-alt */
