/* THEMES.CSS — Dark + Solar (Emerald Glass) */
body.dark-mode {
    --primary:#2563eb;--primary-hover:#1d4ed8;--primary-soft:rgba(37,99,235,0.15);--btn-bg:var(--primary);
    --bg-color:#0f172a;--bg-gradient:none;--card-bg:#1e293b;--card-bg-solid:#1e293b;
    --surface-tint:#0f172a;--input-bg:transparent;--input-locked-bg:#0f172a;
    --text-main:#f8fafc;--text-muted:#94a3b8;--border:#334155;--border-focus:#475569;
    --success:#16a34a;--success-bg:rgba(22,163,74,0.15);--danger:#dc2626;--danger-bg:rgba(220,38,38,0.15);
    --warning:#d97706;--warning-bg:#fffbeb;--purple:#7c3aed;--purple-bg:rgba(124,58,237,0.15);
    --shadow-sm:0 1px 2px rgba(0,0,0,0.3);--shadow-md:0 4px 12px rgba(0,0,0,0.4);
    --shadow-hover:0 8px 24px rgba(0,0,0,0.5);--shadow-modal:0 20px 40px rgba(0,0,0,0.6);
    --shadow-navbar:0 4px 12px rgba(0,0,0,0.5);
    --radius-card:0.75rem;--radius-input:0.5rem;--radius-btn:0.5rem;--radius-modal:1rem;
    --glass-blur:0px;--border-w:1px;--card-pad:1rem;--scrollbar-thumb:#475569;
    --navbar-bg:linear-gradient(180deg,#1e293b 0%,#172033 100%);
    --navbar-text:rgba(255,255,255,0.8);--navbar-active-bg:rgba(255,255,255,0.12);--rf-border:#334155;
    color-scheme:dark;
}
body.solar-theme {
    --primary:#0d9488;--primary-hover:#0f766e;--primary-soft:rgba(13,148,136,0.13);
    --btn-bg:linear-gradient(135deg,#0d9488 0%,#14b8a6 100%);
    --bg-color:#eefaf6;
    --bg-gradient:radial-gradient(circle at 10% 0%,rgba(209,250,229,0.85) 0%,rgba(209,250,229,0) 42%),linear-gradient(160deg,#f3fdf9 0%,#e7f8f1 55%,#ddf4ea 100%);
    --card-bg:rgba(255,255,255,0.68);--card-bg-solid:#fff;--surface-tint:#ecfaf5;--input-bg:rgba(255,255,255,0.6);
    --text-main:#0f2e28;--text-muted:#3f6459;--border:rgba(13,148,136,0.18);--border-focus:#5eead4;
    --success:#059669;--success-bg:#e3faf0;--danger:#dc2626;--danger-bg:#fdecec;
    --warning:#b45309;--warning-bg:#fff6e6;--purple:#7c3aed;--purple-bg:#f2edff;
    --shadow-sm:0 1px 3px rgba(6,95,70,0.06);--shadow-md:0 12px 32px -10px rgba(6,95,70,0.22);
    --shadow-hover:0 18px 40px -12px rgba(6,95,70,0.3);--shadow-modal:0 30px 60px -15px rgba(4,60,50,0.35);
    --shadow-navbar:0 8px 24px -6px rgba(4,60,45,0.35);
    --radius-card:1.15rem;--radius-input:0.75rem;--radius-btn:0.7rem;--radius-modal:1.4rem;
    --glass-blur:0px;--border-w:1px;--card-pad:1.35rem;--scrollbar-thumb:#5eead4;
    --navbar-bg:linear-gradient(120deg,#065f46 0%,#0d9488 50%,#0ea5a3 100%);
    --navbar-text:rgba(255,255,255,0.78);--navbar-active-bg:rgba(255,255,255,0.18);--rf-border:rgba(6,78,59,0.55);
}

/* ── Dark shared overrides ── */
body.dark-mode th{background:#0f172a;color:var(--text-muted)}
body.dark-mode tbody tr:hover{background:#334155}
body.dark-mode .balance-col{background:#0f172a;color:var(--text-main)}
body.dark-mode .export-bar{background:#0f172a}
body.dark-mode .input-field,.dark-mode .multi-select-box{background:#0f172a;color:var(--text-main)}
body.dark-mode .input-field:focus{box-shadow:0 0 0 3px rgba(37,99,235,0.3)}
body.dark-mode .multi-select-options{background:var(--card-bg)}
body.dark-mode .ms-option:hover,.dark-mode .ms-select-all:hover{background:#334155}
body.dark-mode .btn-outline{color:var(--text-main)}
body.dark-mode .btn-outline:hover{background:#334155}
body.dark-mode .icon-btn:hover{background:rgba(255,255,255,0.1);color:#fff}
body.dark-mode .btn-excel{color:#4ade80;border-color:#15803d}
body.dark-mode .btn-pdf{color:#f87171;border-color:#b91c1c}
body.dark-mode select.input-field,body.dark-mode select.input-field option{background:#0f172a;color:var(--text-main)}
body.dark-mode .modal-content{background:#1e293b;color:var(--text-main)}
body.dark-mode .modal-content label{color:var(--text-muted)}
body.dark-mode .filter-panel{background:var(--card-bg)}
body.dark-mode .grp-cash{color:#4ade80}body.dark-mode .grp-bank{color:#60a5fa}
body.dark-mode .grp-income{color:#fbbf24}body.dark-mode .grp-expense{color:#f87171}
body.dark-mode #excelFilterPopup{background:#0f172a;border-color:#334155;color:#f8fafc;box-shadow:0 10px 25px -5px rgba(0,0,0,0.5)}
body.dark-mode .ms-search{background:#0f172a}
body.dark-mode .ms-search input{background:#0f172a;color:var(--text-main);border-color:var(--border)}
body.dark-mode .ms-select-all{background:#0f172a;color:var(--text-main)}
body.dark-mode .toggle-group{background:#1e293b}
body.dark-mode .toggle-btn{color:#94a3b8}
body.dark-mode .toggle-btn.active[data-value="Receipt"]{color:#fff;background:#15803d}
body.dark-mode .toggle-btn.active[data-value="Payment"]{color:#fff;background:#b91c1c}
body.dark-mode .tree-group{background:#1e293b;color:#f8fafc}
body.dark-mode .report-node{background:var(--card-bg);color:#cbd5e1}
body.dark-mode .report-node:hover,.dark-mode .report-node:focus{background:#334155}
body.dark-mode .tree-group-header:hover{background:rgba(255,255,255,0.04)!important}
body.dark-mode .opening-balance-row{background:rgba(0,0,0,0.2);border-bottom-color:#334155}
body.dark-mode tr.drag-over{background:rgba(37,99,235,0.1)}
body.dark-mode ::-webkit-scrollbar-thumb{background:#475569}
body.dark-mode ::-webkit-scrollbar-thumb:hover{background:#64748b}
body.dark-mode #report table,body.dark-mode #report th,body.dark-mode #report td,
body.dark-mode #accountPage table,body.dark-mode #accountPage th,body.dark-mode #accountPage td{border-color:#475569!important;color:var(--text-main)!important}
body.dark-mode #report th,body.dark-mode #accountPage th{background:#1e293b!important;color:var(--text-muted)!important}
body.dark-mode #accountPage td.balance-col{background:#0f172a!important;color:var(--text-main)!important}
body.dark-mode .navbar .nav-link{color:var(--navbar-text)!important}
body.dark-mode .navbar .nav-link:hover{background:rgba(255,255,255,0.08)!important;color:#fff!important}
body.dark-mode .navbar .nav-link.active{background:var(--navbar-active-bg)!important;color:#fff!important}
body.dark-mode #mobileBottomNav{background:#1e293b}
body.dark-mode #mobileMoreDrawer{background:#1e293b}
body.dark-mode .rf-view-toggle{background:#1e293b;border-color:#334155;box-shadow:inset 0 1px 4px rgba(0,0,0,0.25)}
body.dark-mode .rf-toggle-slider{background:linear-gradient(135deg,#6366f1 0%,#4f46e5 100%);box-shadow:0 2px 10px rgba(99,102,241,0.45)}
body.dark-mode .rf-toggle-btn{color:#94a3b8}
body.dark-mode .rf-toggle-btn.active{color:#fff}
body.dark-mode .rf-reminder-btn{background:linear-gradient(135deg,#7c3aed 0%,#5b21b6 100%);box-shadow:0 2px 10px rgba(124,58,237,0.4)}
body.dark-mode .rf-reminder-btn:hover{background:linear-gradient(135deg,#8b5cf6 0%,#6d28d9 100%)}
body.dark-mode .flatpickr-calendar{background:var(--card-bg)!important;border-color:var(--border)!important;color:var(--text-main)!important}
body.dark-mode .flatpickr-day{color:var(--text-main)!important}
body.dark-mode .flatpickr-day:hover{background:#334155!important}
body.dark-mode .flatpickr-month,.dark-mode .flatpickr-weekday{color:var(--text-muted)!important}
body.dark-mode .flatpickr-current-month input.cur-year{color:var(--text-main)!important}
body.dark-mode .flatpickr-months .flatpickr-prev-month,.dark-mode .flatpickr-months .flatpickr-next-month{color:var(--text-main)!important;fill:var(--text-main)!important}
body.dark-mode .flatpickr-day.selected,.dark-mode .flatpickr-day.selected:hover{background:var(--primary)!important;border-color:var(--primary)!important;color:#fff!important}
body.dark-mode .flatpickr-day.today{border-color:var(--primary)!important}
body.dark-mode .flatpickr-current-month select,.dark-mode .flatpickr-current-month .flatpickr-monthDropdown-months{background:var(--card-bg)!important;color:var(--text-main)!important}
/* Maligai matrix dark */
body.dark-mode .maligai-matrix{background:var(--card-bg);color:var(--text-main)}
body.dark-mode .maligai-matrix th{background-color:var(--primary)!important;color:#c8daf8!important}
body.dark-mode .maligai-matrix td{border-color:var(--primary)!important;color:var(--text-main)!important;background:#1a2a40!important}
body.dark-mode .maligai-matrix td.date-col{background:var(--primary)!important;color:#fff!important}
body.dark-mode .maligai-matrix td.mr-cell-value{background:#1c3060!important;color:#a8ccf8!important}
body.dark-mode .maligai-matrix td.mr-cell-zero{background:#141e30!important;color:#3a5888!important}
body.dark-mode .maligai-matrix td.total-col{background:#4a3800!important;color:#ffe070!important}
body.dark-mode .maligai-matrix td.grand-total{background:#004f34!important;color:#6effc4!important}
body.dark-mode .maligai-matrix tr.mr-col-totals-row td{background:#1a2e50!important}
body.dark-mode .maligai-matrix td.mr-col-total-cell{background:#1a2e50!important;color:#80b0f0!important}
body.dark-mode .maligai-matrix tbody tr:hover td{background:#243858!important}
/* Addl matrix dark */
body.dark-mode .addl-matrix{background:var(--card-bg);color:var(--text-main)}
body.dark-mode .addl-matrix th{background:var(--primary)!important;color:#c8f0d8!important}
body.dark-mode .addl-matrix td{border-color:var(--primary)!important;background:#1a2a20!important}
body.dark-mode .addl-matrix td.date-col{background:var(--primary)!important;color:#fff!important}
body.dark-mode .addl-matrix td.ae-cell-value{background:#1a3a22!important;color:#a5d6a7!important}
body.dark-mode .addl-matrix td.total-col{background:#4a3800!important;color:#ffe070!important}
body.dark-mode .addl-matrix td.grand-total{background:#004f34!important;color:#6effc4!important}
body.dark-mode .addl-matrix tbody tr:hover td{background:#1a3a22!important}
/* Calendar dark */
body.dark-mode .calendar-page .cal-nav{background:var(--card-bg)}
body.dark-mode .calendar-page .cal-grid .cal-day{background:var(--card-bg);border-color:var(--border);color:var(--text-main)}
body.dark-mode .calendar-page .cal-grid .cal-day:hover{background:#334155}
body.dark-mode .calendar-page .cal-grid .cal-day.today{border-color:var(--primary)}
body.dark-mode .calendar-page .cal-grid .cal-day .day-number{color:var(--text-muted)}
body.dark-mode .calendar-page .cal-grid .cal-day .day-number.today-badge{background:var(--primary);color:#fff}
body.dark-mode .calendar-page .cal-sidebar{background:var(--card-bg);border-color:var(--border)}
/* Solar overrides */
body.solar-theme th{background:var(--surface-tint);color:var(--text-main)}
body.solar-theme tbody tr:hover{background:var(--surface-tint)}
body.solar-theme .balance-col{background:var(--surface-tint);color:var(--text-main)}
body.solar-theme .input-field,.solar-theme .multi-select-box{background:var(--input-bg);color:var(--text-main)}
body.solar-theme .input-field:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}
body.solar-theme .multi-select-options{background:var(--card-bg-solid)}
body.solar-theme .btn-outline{color:var(--text-main);border-color:var(--border-focus)}
body.solar-theme .btn-outline:hover{background:var(--surface-tint)}
body.solar-theme .btn-excel{color:#0f766e;border-color:#5eead4;background:rgba(20,184,166,0.12)}
body.solar-theme .btn-pdf{color:#be123c;border-color:#fda4af;background:rgba(244,63,94,0.1)}
body.solar-theme select.input-field,.solar-theme select.input-field option{background:#fff;color:var(--text-main)}
body.solar-theme .modal-content{background:var(--card-bg-solid);color:var(--text-main)}
body.solar-theme .filter-panel{background:var(--card-bg)}
body.solar-theme .grp-cash{color:#0f766e}body.solar-theme .grp-bank{color:#2563eb}
body.solar-theme .grp-income{color:#b45309}body.solar-theme .grp-expense{color:#be123c}
body.solar-theme .ms-select-all:hover{background:var(--primary-soft)}
body.solar-theme .opening-balance-row{background:var(--primary-soft)}
/* Light/Solar gradient navbar */
body:not(.dark-mode) .navbar{background:var(--navbar-bg)!important;box-shadow:var(--shadow-navbar)}
body:not(.dark-mode) .navbar .nav-link{color:var(--navbar-text)!important}
body:not(.dark-mode) .navbar .nav-link:hover{background:rgba(255,255,255,0.12)!important;color:#fff!important}
body:not(.dark-mode) .navbar .nav-link.active{background:var(--navbar-active-bg)!important;border-color:rgba(255,255,255,0.35)!important;color:#fff!important}
body:not(.dark-mode) .navbar .fy-indicator,.navbar .theme-toggle-btn{color:#fff!important}
body:not(.dark-mode) .navbar .nav-label{color:rgba(255,255,255,0.6)!important}
