/* 0.16.0 — soft dark surfaces and subtle semantic card colors. */
body {
  --soft-purple:#372e48; --soft-purple-border:#655276; --soft-purple-ink:#d4baff;
  --soft-green:#2b3c36; --soft-green-border:#476357; --soft-green-ink:#9be2b8;
  --soft-red:#443039; --soft-red-border:#72505c; --soft-red-ink:#ffadb9;
  --soft-amber:#423a2d; --soft-amber-border:#706047; --soft-amber-ink:#f7d295;
  --soft-blue:#2e374b; --soft-blue-border:#50617b; --soft-blue-ink:#b0cefa;
}
body.light-theme {
  --soft-purple:#f3edfc; --soft-purple-border:#ded0ee; --soft-purple-ink:#6f39a5;
  --soft-green:#edf7f0; --soft-green-border:#c9e3d2; --soft-green-ink:#216943;
  --soft-red:#fceff1; --soft-red-border:#efd0d7; --soft-red-ink:#a02d47;
  --soft-amber:#fcf5e7; --soft-amber-border:#ecdcb9; --soft-amber-ink:#855b1c;
  --soft-blue:#eef3fc; --soft-blue-border:#d1def1; --soft-blue-ink:#375e96;
}
body:not(.light-theme) {
  color-scheme:dark; background:#262330; color:#f5f1fa;
  --bg:#262330; --card:#35303f; --border:#494253; --muted:#c0b8cf;
  --chart-muted:#c0b8cf; --chart-grid:#ffffff12; --chart-track:#ffffff0b;
  --chart-purple:#bca0ff; --chart-green:#9be2b8; --chart-surface:#2d293a; --chart-border:#494253;
  --gextto-scroll-thumb:#635a72; --gextto-scroll-hover:#8f809f;
}
body:not(.light-theme) :is(.sidebar,.topbar,.auth-gate,.auth-splash) { background:#262330; border-color:var(--border); }
body:not(.light-theme) :is(.card,.section,.mini,.auth-card,.modal-card,.profile-menu,.billing-usage-card,.billing-history,.plan-card) { background:#35303f; border-color:var(--border); }
body:not(.light-theme) .section { background:#2d293a; }
body:not(.light-theme) :is(.input,.select) { background-color:#292533; color:#f5f1fa; border-color:#554c63; }
body:not(.light-theme) :is(.input,.select):focus { border-color:#bca0ff; box-shadow:0 0 0 2px #bca0ff20; }
body:not(.light-theme) :is(.icon-btn,.btn.secondary,.close,.sidebar-toggle,.back-button,#backBtn.back-button,.month-selector-button) { background:#393342; color:#e6dff0; border-color:#554c63; }
body:not(.light-theme) :is(.sidebar nav button,.brand small,.muted,.card small,.mini small,.card .muted,.section .muted,.field label,.table th,.empty,.topbar span,.auth-message,.auth-footer,.profile-menu-info span,.app-footer) { color:#c0b8cf; }
body:not(.light-theme) :is(.sidebar nav button:hover,.sidebar nav button.active,.profile-menu>button:hover) { background:#40334f; color:#ede2ff; }
body:not(.light-theme) :is(.nav-sep,.billing-meter,.stock-overview-bar) { background:#494253; }
body:not(.light-theme) :is(.table th,.table td,.list-item,.management-row,.billing-event,.profile-menu-info,hr,.backup-confirm,.business-receipt,.purchase-cart,.sale-row,.getting-started-step,.help-topics) { border-color:var(--border); }
body:not(.light-theme) :is(.purchase-row,.purchase-editor,.purchase-total,.removal-summary,.help-tip,.receivables-feature-example) { background:#35303f; border-color:var(--border); }
body:not(.light-theme) :is(.purchase-editor-note,.purchase-cart-count,.sale-price-note,.product-variation,.sale-row-total,.stock-overview-copy small,.stock-overview-chevron,.notice-copy,.billing-note,.billing-event p,.billing-event time,.billing-block-head p,.billing-intro p,.getting-started-step p,.backup-counts span) { color:#c0b8cf; }
body:not(.light-theme) :is(.metric,.section h2,.topbar h1,.notice-dialog h2,.notice-copy strong) { color:#f5f1fa; }
body:not(.light-theme) :is(.metric.revenue,.revenue) { color:var(--soft-green-ink); }
body:not(.light-theme) :is(.metric.expense,.expense,.balance-negative) { color:var(--soft-red-ink); }
body:not(.light-theme) :is(.metric.cost,.metric.receivable) { color:var(--soft-amber-ink); }
body:not(.light-theme) .metric.balance { color:var(--soft-purple-ink); }
body:not(.light-theme) .dashboard-cards { --dash-balance:var(--soft-purple-ink); --dash-receivable:var(--soft-amber-ink); --dash-revenue:var(--soft-green-ink); --dash-expense:var(--soft-red-ink); }
body:not(.light-theme) .dashboard-action-card:hover { filter:brightness(1.08); border-color:#947cab; }
body:not(.light-theme) .dash-card-arrow { color:#c0b8cf; }
body:not(.light-theme) .billing-hero { background:linear-gradient(120deg,#3b2f4c,#35303f 70%); border-color:#655276; }
body:not(.light-theme) .plan-card.recommended { background:linear-gradient(160deg,#3c304e,#35303f 65%); border-color:#ab8af9; }
body:not(.light-theme) :is(.notice-primary,.auth-card form .btn,.support-whatsapp) { background:#7838e8; color:#fff; }
body:not(.light-theme) .support-whatsapp:hover { background:#6b2fd3; }
body:not(.light-theme) .profile-button { background:#7838e8; border-color:#956ccc; }
body:not(.light-theme) .auth-spinner { border-color:#554c63; border-top-color:#bca0ff; }
body:not(.light-theme) #dashboardMonthHeader .month-selector-menu { background:#35303f; border-color:#655276; color:#f5f1fa; }
body:not(.light-theme) #dashboardMonthHeader .month-selector-header { background:#7044ae; }
body:not(.light-theme) #dashboardMonthHeader .month-selector-grid button:hover { background:#494052!important; }
body:not(.light-theme) #dashboardMonthHeader .month-selector-grid button.selected { background:#594173!important; color:#f1e7ff!important; }
/* Native date fields retain their system calendar and match the active theme. */
body.light-theme { color-scheme:light; }
/* Summary colors follow the meaning of the displayed value, including negative results. */
body :is(.card,.mini):is(:has(.balance),.pastel-purple) { --summary-bg:var(--soft-purple); background:var(--summary-bg); border-color:var(--soft-purple-border); }
body :is(.card,.mini):is(:has(.revenue),.pastel-green) { --summary-bg:var(--soft-green); background:var(--summary-bg); border-color:var(--soft-green-border); }
body :is(.card,.mini):is(:has(.cost),:has(.receivable),.pastel-amber) { --summary-bg:var(--soft-amber); background:var(--summary-bg); border-color:var(--soft-amber-border); }
body :is(.card,.mini):is(:has(.expense),:has(.balance-negative),.pastel-red) { --summary-bg:var(--soft-red); background:var(--summary-bg); border-color:var(--soft-red-border); }
body:not(.light-theme) .dashboard-action-card:hover { background:var(--summary-bg); }
body :is(.card,.mini).pastel-blue { background:var(--soft-blue); border-color:var(--soft-blue-border); }
body .stock-overview-counts .stock-overview-good,body .stock-overview-icon { background:var(--soft-green); color:var(--soft-green-ink); }
body .stock-overview-counts .stock-overview-low { background:var(--soft-amber); color:var(--soft-amber-ink); }
body .stock-overview-counts .stock-overview-empty { background:var(--soft-red); color:var(--soft-red-ink); }
body .section.inventory-alert-card { background:var(--soft-amber); border-color:var(--soft-amber-border); }
body .section.inventory-alert-healthy { background:var(--soft-green); border-color:var(--soft-green-border); }
body .inventory-alert-card>strong { color:var(--soft-amber-ink); }
body .inventory-alert-healthy>strong { color:var(--soft-green-ink); }
body .section:is(.dashboard-sales-chart,.chart-products,.getting-started),body .section:has(.app-install-row) { background:var(--soft-purple); border-color:var(--soft-purple-border); --chart-surface:var(--soft-purple); }
body .section.chart-financial { background:var(--soft-blue); border-color:var(--soft-blue-border); --chart-surface:var(--soft-blue); }
body .section.chart-expenses { background:var(--soft-red); border-color:var(--soft-red-border); --chart-surface:var(--soft-red); }
body .section.stock-profit-section,body .support-page .section:has(.support-whatsapp) { background:var(--soft-green); border-color:var(--soft-green-border); }
body .section.support-guide { background:var(--soft-blue); border-color:var(--soft-blue-border); }
body .getting-started-step { background:var(--soft-blue); border-color:var(--soft-blue-border); }
body .getting-started-step.done { background:var(--soft-green); border-color:var(--soft-green-border); }
body:not(.light-theme) .getting-started-step.done .getting-started-number { background:#476357; color:#d4f6e0; }
body:not(.light-theme) .stock-projection-chart { background:#2d3834; }
@media(forced-colors:active) {
  body :is(.card,.mini,.section,.getting-started-step) { background:Canvas!important; color:CanvasText!important; border-color:CanvasText!important; }
}
