/* 8 Parallel — olive, sage and ivory. Presentation tokens only. */
:root {
  --parallel-olive: #252b1e;
  --parallel-sage: #53644e;
  --parallel-ivory: #fffff4;
  --parallel-stone: #e4e4cf;
  --primary: #53644e;
  --primary-dark: #3e5039;
  --primary-light: #e9ecdf;
  --background: #f5f5e9;
  --surface: #fffff4;
  --text-primary: #252b1e;
  --text-secondary: #68715e;
  --text-muted: #787f6c;
  --border: #dcdecd;
  --info: #6a7650;
  --info-light: #eff0df;
  --m-primary: var(--primary);
  --m-primary-hover: var(--primary-dark);
  --m-primary-soft: var(--primary-light);
  --m-bg: var(--background);
  --m-surface: var(--surface);
  --m-surface-subtle: #f0f1e6;
  --m-text: var(--text-primary);
  --m-muted: var(--text-secondary);
  --m-border: var(--border);
  --melisa-primary: var(--primary);
  --melisa-primary-hover: var(--primary-dark);
  --melisa-primary-dark: var(--primary-dark);
  --melisa-primary-soft: var(--primary-light);
  --melisa-bg: var(--background);
  --melisa-surface: var(--surface);
  --melisa-surface-muted: #f0f1e6;
  --melisa-surface-2: #f0f1e6;
  --melisa-surface-soft: #f0f1e6;
  --melisa-text: var(--text-primary);
  --melisa-muted: var(--text-secondary);
  --melisa-border: var(--border);
  --melisa-info: var(--info);
  --melisa-info-soft: var(--info-light);
  --melisa-focus: 0 0 0 3px rgb(83 100 78 / 22%);
  --m-focus: var(--melisa-focus);
  --melisa-modal-surface: var(--surface);
  --melisa-modal-surface-soft: #f0f1e6;
  --melisa-modal-text: var(--text-primary);
  --melisa-modal-muted: var(--text-secondary);
  --melisa-modal-border: var(--border);
  --melisa-modal-primary: var(--primary);
  --melisa-modal-primary-hover: var(--primary-dark);
  --melisa-modal-focus: var(--melisa-focus);
  --inv-primary: var(--primary);
  --inv-primary-soft: var(--primary-light);
  --inv-text: var(--text-primary);
  --inv-muted: var(--text-secondary);
  --inv-border: var(--border);
  --inv-surface: var(--surface);
  --inv-soft: #f0f1e6;
}
html.dark {
  --primary: #b0bfa1;
  --primary-dark: #d3dec8;
  --primary-light: #3b4932;
  --background: #1c2218;
  --surface: #252e20;
  --text-primary: #f3f3e6;
  --text-secondary: #b6bda9;
  --text-muted: #a4ad96;
  --border: #45503c;
  --melisa-primary: var(--primary);
  --melisa-primary-hover: var(--primary-dark);
  --melisa-primary-dark: var(--primary-dark);
  --melisa-primary-soft: var(--primary-light);
  --melisa-bg: var(--background);
  --melisa-surface: var(--surface);
  --melisa-text: var(--text-primary);
  --melisa-muted: var(--text-secondary);
  --melisa-border: var(--border);
  --m-bg: var(--background);
  --m-surface: var(--surface);
  --m-text: var(--text-primary);
  --m-muted: var(--text-secondary);
  --m-border: var(--border);
  --inv-primary: var(--primary);
  --inv-primary-soft: var(--primary-light);
  --inv-text: var(--text-primary);
  --inv-muted: var(--text-secondary);
  --inv-border: var(--border);
  --inv-surface: var(--surface);
  --melisa-modal-surface: var(--surface);
  --melisa-modal-text: var(--text-primary);
  --melisa-modal-muted: var(--text-secondary);
  --melisa-modal-border: var(--border);
  --melisa-modal-primary: var(--primary);
  --melisa-modal-primary-hover: var(--primary-dark);
  --m-surface-subtle: #303a28;
  --melisa-surface-muted: #303a28;
  --melisa-surface-2: #303a28;
  --melisa-surface-soft: #303a28;
  --melisa-modal-surface-soft: #303a28;
  --inv-soft: #303a28;
  --info: #bdc99b;
  --info-light: #3a442c;
}
html.light body,html.dark body,body { background-color: var(--melisa-bg); color: var(--melisa-text); }
.melisa-auth-panel { background: var(--melisa-surface); }
.melisa-auth-panel .melisa-input { background: var(--melisa-surface); }
.melisa-auth-panel .melisa-input:-webkit-autofill {
  -webkit-box-shadow: 0 0 0 1000px var(--melisa-surface) inset;
  -webkit-text-fill-color: var(--melisa-text);
  caret-color: var(--melisa-text);
}
.melisa-auth-panel .melisa-input:-webkit-autofill:focus {
  -webkit-box-shadow: 0 0 0 1000px var(--melisa-surface) inset, var(--melisa-focus);
}
.melisa-topbar { background: var(--parallel-olive); color: var(--parallel-ivory); }
.melisa-topbar .melisa-nav-link,
.melisa-topbar .melisa-top-action,
.melisa-topbar .melisa-icon-button,
.melisa-topbar .melisa-profile-trigger,
.melisa-topbar .melisa-clock { color: var(--parallel-ivory); }
.melisa-topbar .melisa-clock span { color: #d1d5bd; }
.melisa-topbar .melisa-icon-button { border-color: #59634c; }
.melisa-desktop-nav .melisa-nav-link:is(:hover,:focus-visible,.is-active),
.melisa-desktop-nav .melisa-nav-group.is-active > .melisa-nav-parent,
.melisa-topbar .melisa-top-action:hover,
.melisa-topbar .melisa-icon-button:hover { background: #48543d; color: #fffff4; }
.melisa-desktop-nav .melisa-nav-group.is-active > .melisa-nav-parent { box-shadow: inset 0 -2px #d4d6b8; }
.melisa-topbar .melisa-avatar { background: #e4e4cf; color: #252b1e; }
.melisa-sidebar-brand { background: var(--parallel-olive); }
.melisa-sidebar-brand :is(.melisa-sidebar-label,.melisa-icon-button) { color: var(--parallel-ivory); }
.accounting-context { background: var(--melisa-surface-muted); }
html.dark :is(.btn-primary,.melisa-btn-primary,.melisa-attention-confirm,.report-filter-toggle,.pms-btn.primary,.investor-primary-btn),
html.dark #content_layout .btn.bg-primary-500,
html.dark .pms-workspace[data-pms-section="overview"] #pmsPrimaryAction { color: #252b1e; }
input[type="checkbox"],input[type="radio"] { accent-color: var(--melisa-primary); }
.card { background-color: var(--melisa-surface); }
/* Keep the financial series recognizable against both light and dark surfaces. */
.apexcharts-tooltip,.apexcharts-menu { color: var(--melisa-text); background: var(--melisa-surface); }
.apexcharts-tooltip.apexcharts-theme-light .apexcharts-tooltip-title { background: var(--melisa-surface-muted); border-color: var(--melisa-border); }
.apexcharts-legend-text { color: var(--melisa-muted) !important; }
.apexcharts-xaxis-label,.apexcharts-xaxis-label tspan,
.apexcharts-yaxis-label,.apexcharts-yaxis-label tspan { fill: var(--melisa-muted) !important; }
.apexcharts-xaxistooltip,.apexcharts-yaxistooltip { color: var(--melisa-text) !important; background: var(--melisa-surface-muted) !important; border-color: var(--melisa-border) !important; }
@media print {
  body,.card { background: white; color: #252b1e; }
}
