/* GENERATED by scripts/build_dark_css.py - do not edit; hand-tuned rules go in pf-dark.css */

/* static/css/forecast.css */
html[data-theme="dark"] .pf-fc .pf-seg .forecast-toggle.active { background: #12201B !important; }
html[data-theme="dark"] .pf-fc #tbl-cashflow-statement thead th { color: #C0EDE1 !important; }
html[data-theme="dark"] .pf-fc .report-table td.month-act,
html[data-theme="dark"] .pf-fc .report-table th.month-act { background-color: #1B1B28 !important; }
html[data-theme="dark"] .pf-fc .report-table th.month-cur,
html[data-theme="dark"] .pf-fc #tbl-cashflow-statement thead th.month-cur,
html[data-theme="dark"] .pf-fc #tbl-cashflow-statement thead tr.month-status-row th.month-status-cell.month-cur { background: #123022 !important; }
html[data-theme="dark"] .pf-fc .report-table td.month-cur { background-color: #172822 !important; }
html[data-theme="dark"] .pf-fc #tbl-cashflow-statement tbody tr.report-table__summary-row td { background-color: #172822 !important; }
html[data-theme="dark"] .pf-fc #tbl-cashflow-statement tbody tr.report-table__summary-row td.month-cur { background-color: #172822 !important; }
html[data-theme="dark"] .pf-fc #tbl-cashflow-statement tbody tr.report-table__balance-row td { background-color: #172822 !important; }
html[data-theme="dark"] .pf-fc .full-year-table tbody td.report-table__total-col,
html[data-theme="dark"] .pf-fc .full-year-table thead th.report-table__total-col,
html[data-theme="dark"] .pf-fc .full-year-table thead tr.month-status-row th.report-table__total-col { background-color: #172822 !important; }
html[data-theme="dark"] .pf-fc .pf-nw-retired td { background: #172822 !important; }
html[data-theme="dark"] .pf-fc .pf-shortfall { background: #301512; border: 1px solid #402826; color: #DF9B90; }
html[data-theme="dark"] .pf-fc .pf-shortfall__title { color: #DF9690; }
html[data-theme="dark"] .pf-fc .pf-shortfall__body { color: #DF9B90; }
html[data-theme="dark"] .pf-fc .pf-shortfall__chip { background: #12201B !important; color: #DF9690 !important; }
html[data-theme="dark"] .pf-fc .pf-shortfall__chip:hover { background: #301412 !important; }
html[data-theme="dark"] .pf-fc .pf-ev-short { background: #301812; }
html[data-theme="dark"] .pf-fc .pf-nw-short td { background: #301512 !important; }
html[data-theme="dark"] .pf-fc .pf-verdict { background: #172822; border: 1px solid #264030; color: #C0EDDA; }
html[data-theme="dark"] .pf-fc .pf-verdict__title { color: #C0EDDA; }
html[data-theme="dark"] .pf-fc .pf-verdict__body { color: #C0EDDA; }
html[data-theme="dark"] .pf-fc .pf-fixes__title { color: #DF9690; }
html[data-theme="dark"] .pf-fc .pf-fixes__list { color: #DF9B90; }
html[data-theme="dark"] .pf-fc .pf-fixes__try { color: #DF9690 !important; }
html[data-theme="dark"] .pf-fc .pf-setup { background: #12201B; }
html[data-theme="dark"] .pf-fc .pf-nw-estimate { background: #302712; }
html[data-theme="dark"] .pf-fc .pf-check { background: #302912; border: 1px solid #403926; color: #DFA890; }
html[data-theme="dark"] .pf-fc .pf-check__title { color: #DFA990; }
html[data-theme="dark"] .pf-fc .pf-fs-money .input-group-text { border: 1px solid #2C333A; }
html[data-theme="dark"] .pf-fc tr.pf-fs-group td { background: var(--pf-section, #172822) !important; }
html[data-theme="dark"] .pf-fc tr.pf-fs-dirty td { background: #302A12 !important; }
html[data-theme="dark"] .pf-fc .pf-savebar { background: #12201B; border: 1px solid #403926; }
html[data-theme="dark"] .pf-fc .pf-cashguard { background: #301512; border: 1px solid #402826; color: #DF9B90; }
html[data-theme="dark"] .pf-fc .pf-cashguard__title { color: #DF9690; }
html[data-theme="dark"] .pf-fc .pf-cashguard.is-amber { background: #302912; border-color: #403926; color: #DFA890; }
html[data-theme="dark"] .pf-fc .pf-cashguard.is-amber .pf-cashguard__title { color: #DFA990; }
html[data-theme="dark"] .pf-fc .pf-cashchart { background: #12201B; }
html[data-theme="dark"] .pf-fc .pf-cashchart__buffer input { border: 1px solid #2C333A; }
html[data-theme="dark"] .pf-fc #tbl-cashflow-statement .pf-ly-col { background: #172822 !important; }
html[data-theme="dark"] .pf-fc .pf-overcommit { background: #301512; border: 1px solid #402826; color: #DF9B90; }
html[data-theme="dark"] .pf-fc .pf-goal { background: #12201B; }
html[data-theme="dark"] .pf-fc .pf-goal-empty { background: #12201B; }
html[data-theme="dark"] .pf-fc .pf-goal-type { background: #12201B; }
html[data-theme="dark"] .pf-fc .pf-goals .scenario-panel { background: #172822; }
html[data-theme="dark"] .pf-fc #tbl-cashflow-statement tbody tr.pf-cat-sum td { background: #12201B; }
html[data-theme="dark"] .pf-fc .pf-verdict.is-info { background: #302912; border-color: #403926; color: #DFA890; }
html[data-theme="dark"] .pf-fc .pf-verdict.is-info .pf-verdict__title,
html[data-theme="dark"] .pf-fc .pf-verdict.is-info .pf-verdict__body { color: #DFA890; }
html[data-theme="dark"] .pf-fc .pf-recon { background: #192029; }
html[data-theme="dark"] .pf-fc .pf-recon.is-ok { background: #172822; }
html[data-theme="dark"] .pf-fc .pf-recon.is-off { background: #302912; }
html[data-theme="dark"] .pf-fc #tbl-cashflow-statement tbody td.pf-ly-col { background: #172822 !important; color: #AAB5C5; }
@media (max-width: 767.98px) { html[data-theme="dark"] .pf-fc .pf-fs-table tr.forecast-row { border-bottom: 1px solid var(--pf-line, #264032); } }
@media (min-width: 768px) { html[data-theme="dark"] .pf-fc .pf-fs-table tbody tr.forecast-row { --row-bg-color: #12201B; } }
@media (min-width: 768px) { html[data-theme="dark"] .pf-fc .pf-fs-table tbody tr.forecast-row > td { background: #12201B; border-top: 1px solid #264033; border-bottom: 1px solid #264033; } }
@media (min-width: 768px) { html[data-theme="dark"] .pf-fc .pf-fs-table tbody tr.forecast-row > td:first-child { border-left: 1px solid #264033; } }
@media (min-width: 768px) { html[data-theme="dark"] .pf-fc .pf-fs-table tbody tr.forecast-row > td:last-child { border-right: 1px solid #264033; } }
@media (min-width: 768px) { html[data-theme="dark"] .pf-fc .pf-fs-table tbody tr.forecast-row:hover > td { background: #172822; border-color: #264034; } }
@media (min-width: 768px) { html[data-theme="dark"] .pf-fc .pf-fs-table tbody tr.pf-fs-dirty > td { background: #302A12 !important; border-color: #403A26; } }
@media (min-width: 768px) { html[data-theme="dark"] .pf-fc .forecast-set-panel .table-responsive { background: #172822; } }
@media (min-width: 768px) { html[data-theme="dark"] .pf-fc .pf-fs-table thead th { color: #ABC4BB !important; } }
@media (min-width: 768px) { html[data-theme="dark"] .pf-fc .pf-fs-table thead .forecast-sort-button { color: #ABC4BB !important; } }
html[data-theme="dark"] .pf-fc .pf-fs-table .pf-fs-line > .fw-semibold { color: #C3EADD; }
html[data-theme="dark"] .pf-fc .pf-fs-table .pf-fs-monthly { color: #C3EADD; }
@media (max-width: 767.98px) { html[data-theme="dark"] .pf-fc .pf-fs-table tr.forecast-row { background: #12201B !important; border: 1px solid #264033; } }

/* static/css/overview.css */
html[data-theme="dark"] .pf-ui.finance-overview .card { background: #12201B !important; }
html[data-theme="dark"] .pf-ui.finance-overview .ai-hero-card { background: #12201B !important; }
html[data-theme="dark"] .pf-ui.finance-overview .ai-insights-list .ai-insight-item { background: #172822; }
html[data-theme="dark"] .pf-ui.finance-overview .ai-insights-list .ai-insight-item .ai-insight-icon { background: #12201B; }
html[data-theme="dark"] .pf-ui.finance-overview .mix-card .dataset-toggle button.active,
html[data-theme="dark"] .pf-ui.finance-overview .mix-table th .delta-toggle button.active,
html[data-theme="dark"] .pf-ui.finance-overview .mix-card .delta-toggle button.active { background: #12201B; }
html[data-theme="dark"] .pf-ui.finance-overview .mix-table .delta-chip--negative { background: #301512; }
html[data-theme="dark"] .pf-ui.finance-overview .top-movers-item { background: #172822 !important; }
html[data-theme="dark"] .pf-ui.finance-overview .top-mover-badge { background: #12201B; }
html[data-theme="dark"] .pf-ui.finance-overview .top-mover-badge.top-mover-flag { background: #302912; color: #DFA990; border-color: #403926; }

/* static/css/pf-theme.css */
html[data-theme="dark"] .pf-about .section-title { color: #C3EADD; }
html[data-theme="dark"] .pf-ui.finance-overview [data-role="headline-row"]::before { background: linear-gradient(90deg, var(--pf-gold), #302A12) !important; }
html[data-theme="dark"] .pf-figures::before { background: linear-gradient(90deg, var(--pf-gold), #302A12) !important; }

/* static/css/pf-ui.css */
html[data-theme="dark"] .pf-ui { --pf-ink: #C9D4E3; --pf-text: #A7B3C8; --pf-line: #2A313C; --pf-line-strong: #2B313B; --pf-line-green: #264031; --pf-wash: #172822; --pf-canvas: #172822; --pf-section: #172822; }
html[data-theme="dark"] .pf-ui .pf-tabs .nav-link:hover { background: rgba(18, 32, 27, 0.55) !important; }
html[data-theme="dark"] .pf-ui .pf-tabs .nav-link.active { background: #12201B !important; }
html[data-theme="dark"] .pf-ui .tab-content,
html[data-theme="dark"] .pf-ui .pf-panel { background: #12201B !important; }
html[data-theme="dark"] .pf-ui select.form-select,
html[data-theme="dark"] .pf-ui select.form-select-sm { background-color: #12201B; }
html[data-theme="dark"] .pf-ui .btn-outline-success,
html[data-theme="dark"] .pf-ui .btn-outline-secondary,
html[data-theme="dark"] .pf-ui .btn-outline-primary { background: #12201B; }
html[data-theme="dark"] .pf-ui .btn-outline-danger { border-color: #402826; background: #12201B; }
html[data-theme="dark"] .pf-ui .btn-outline-danger:hover { background: #301512; }
html[data-theme="dark"] .pf-seg { background: var(--pf-canvas, #172822); }
html[data-theme="dark"] .pf-ui .pf-seg .btn.active,
html[data-theme="dark"] .pf-ui .pf-seg .btn[aria-pressed="true"],
html[data-theme="dark"] .pf-ui .pf-seg .nav-link.active { background: #12201B !important; }
html[data-theme="dark"] .pf-ui .table tbody td { border-bottom: 1px solid #27313F; }
html[data-theme="dark"] .pf-ui .table tbody tr,
html[data-theme="dark"] .pf-ui .report-table tbody tr:nth-of-type(odd),
html[data-theme="dark"] .pf-ui .report-table tbody tr:nth-of-type(even) { --row-bg-color: #12201B; background-color: #12201B; }
html[data-theme="dark"] .pf-ui .table-hover tbody tr:hover td,
html[data-theme="dark"] .pf-ui .report-table tbody tr:hover td { background-color: #172822; }
html[data-theme="dark"] .pf-ui .card { background: #12201B; }
html[data-theme="dark"] .pf-ui .card.bg-light,
html[data-theme="dark"] .pf-ui .bg-light,
html[data-theme="dark"] .pf-ui .pf-soft { background: #172822 !important; }
html[data-theme="dark"] .pf-ui .list-group-item { background: #12201B; }
html[data-theme="dark"] .pf-ui .pf-pill.is-warn { background: #302912; color: #DFA990; }
html[data-theme="dark"] .pf-ui .pf-pill.is-neg { background: #301512; }
html[data-theme="dark"] .pf-ui .alert-warning { background: #302912; border-color: #403926; color: #DFA990; }
html[data-theme="dark"] .pf-ui.pf-profile .pf-account { background: #12201B; }

/* static/css/style.css */
html[data-theme="dark"] { --surface: #12201B; --surface-soft: #172822; --surface-glass: rgba(18, 32, 27, 0.82); --text-primary: #C8D0E4; --text-secondary: #AAB5C5; }
html[data-theme="dark"] body::before { background: linear-gradient(120deg, rgba(23, 40, 34, 0.75), rgba(18, 32, 27, 0.4)); }
html[data-theme="dark"] .navbar.site-navbar { background: rgba(18, 32, 27, 0.92); }
html[data-theme="dark"] .btn-outline-primary:hover { background: #172822; border-color: #264034; }
html[data-theme="dark"] .insight-pill { background: #12201B; }
html[data-theme="dark"] .cta-panel .btn-outline-primary { border-color: rgba(51, 51, 51, 0.55); }
html[data-theme="dark"] .auth-card .form-control:focus { background: #12201B; }
html[data-theme="dark"] .signup-form .form-control:focus { background: #12201B; }
html[data-theme="dark"] .signup-form .form-control:focus { background: #12201B; }
html[data-theme="dark"] .dashboard-tabs-feedback[data-variant="error"] { color: #DF9090; }
html[data-theme="dark"] .report-table tbody tr { --row-bg-color: #12201B; }
html[data-theme="dark"] .report-table tbody tr:nth-of-type(odd) { --row-bg-color: #172822; }
html[data-theme="dark"] .report-table tbody tr:nth-of-type(even) { --row-bg-color: #192929; }
html[data-theme="dark"] .full-year-table-wrapper { background: #12201B; }
html[data-theme="dark"] .full-year-table thead th { background-color: #12201B; }
html[data-theme="dark"] .full-year-table thead tr.month-status-row th { background-color: #14212E; }
html[data-theme="dark"] .full-year-table thead tr.month-status-row th.report-table__total-col { background-color: #1D2025; }
html[data-theme="dark"] .full-year-table tbody td.report-table__total-col,
html[data-theme="dark"] .full-year-table tfoot td.report-table__total-col { background-color: #14212E; }
html[data-theme="dark"] .full-year-table thead th[data-col-key="section"],
html[data-theme="dark"] .full-year-table thead th[data-col-key="category"],
html[data-theme="dark"] .full-year-table thead th[data-col-key="line_item"] { background-color: var(--sticky-header-bg, #12201B); }
html[data-theme="dark"] .cashflow-table thead tr.month-status-row th { background: #12201B; color: #C3CEEA; }
html[data-theme="dark"] .cashflow-table thead tr.month-status-row th.report-table__total-col { background-color: #1D2025; }
html[data-theme="dark"] .report-table__balance-row td { color: #D6D6D6; }
html[data-theme="dark"] .report-table__balance-row td:first-child { color: #D6D6D6; }
html[data-theme="dark"] .report-table__balance-row td .num:not(.neg) { color: #D6D6D6; }
html[data-theme="dark"] .report-table td.month-act,
html[data-theme="dark"] .report-table th.month-act { background-color: #1C2026 !important; color: var(--text-primary, #C3CEEA); }
html[data-theme="dark"] .report-table th.month-cur { color: #D7EDC0; }
html[data-theme="dark"] .report-table td.month-cur { color: #BDDF90; }
html[data-theme="dark"] .transaction-detail-row td { background: #121F30 !important; }
html[data-theme="dark"] .transaction-detail-row__content { background: #14212E; }
html[data-theme="dark"] .forecast-detail-row td { background: #121F30 !important; }
html[data-theme="dark"] .forecast-detail-row__content { background: #14212E; }
html[data-theme="dark"] .forecast-detail-row__body p { color: #AAB4C5; }
html[data-theme="dark"] .forecast-detail-table { color: #CBD4E2; }
html[data-theme="dark"] .forecast-detail-table tbody td { color: #C3CEEA; }
html[data-theme="dark"] .forecast-detail-table__row--active { color: #CBD4E2; }
html[data-theme="dark"] .forecast-detail-table__row--base { color: #CBD4E2; }
html[data-theme="dark"] .forecast-detail-badge--base { color: #C3CEEA; }
html[data-theme="dark"] .forecast-editor-form { background: rgba(18, 48, 33, 0.55); }
html[data-theme="dark"] .forecast-editor-grid .form-control.is-readonly,
html[data-theme="dark"] .forecast-editor-grid .form-control[readonly] { background-color: rgba(23, 40, 34, 0.85); }
html[data-theme="dark"] .forecast-editor-grid .form-select.is-disabled,
html[data-theme="dark"] .forecast-editor-grid .form-control.is-disabled { background-color: #14212E; border-color: #262C40; }
html[data-theme="dark"] .transaction-detail-table th { color: #CBD4E2; }
html[data-theme="dark"] .report-table__major-heading.section-transfers .section-heading-label { color: #D6D6D6; }
html[data-theme="dark"] .rule-modal__dialog { background: #12201B; }
html[data-theme="dark"] .rule-modal__header,
html[data-theme="dark"] .rule-modal__footer { background: #14212E; }
html[data-theme="dark"] .rule-modal__close { color: #C3CEEA; }
html[data-theme="dark"] .pf-cmt { border: 1px solid #264034; background: #172822; }
html[data-theme="dark"] .pf-cmt__head { color: #C3EADD; }
html[data-theme="dark"] .pf-cmt__status.is-on { background: #123021; color: #C0EDE1; }
html[data-theme="dark"] .pf-cmt__status.is-off { background: #302A12; color: #DFAE90; }
html[data-theme="dark"] .pf-cmt__status.is-upcoming { background: #122430; color: #90C3DF; }
html[data-theme="dark"] .pf-cmt__line { color: #ABC4BB; }
html[data-theme="dark"] .pf-cmt__m { background: #12201B; border: 1px solid #264033; color: #C3EADD; }
html[data-theme="dark"] .pf-cmt__m.is-met { border-color: #264036; }
html[data-theme="dark"] .pf-cmt__m.is-miss { border-color: #403A26; background: #302A12; }
html[data-theme="dark"] .pf-cmt__coach { color: #CAE3DB; }
html[data-theme="dark"] .pf-cmt__warn { color: #DFAE90; background: #302A12; border: 1px solid #403A26; }
html[data-theme="dark"] .pf-cmt.is-lapsed { background: #14212E; border-color: #263240; }
html[data-theme="dark"] .pf-cmt__status.is-ended { background: #17202C; color: #A6B4C9; }
html[data-theme="dark"] .pf-neg { color: #DF9090; }

/* static/css/transactions.css */
html[data-theme="dark"] .pf-tx,
html[data-theme="dark"] .pf-modal { --tx-ink: #C6D0E6; --tx-text: #AAB4C5; --tx-line: #2C313A; --tx-line-soft: #263340; --tx-panel: #1B2128; }
html[data-theme="dark"] .pf-tx .form-control,
html[data-theme="dark"] .pf-tx .form-select,
html[data-theme="dark"] .pf-modal .form-control,
html[data-theme="dark"] .pf-modal .form-select { background-color: #12201B; border: 1px solid #2D3239; }
html[data-theme="dark"] .pf-tx .btn-outline-secondary,
html[data-theme="dark"] .pf-modal .btn-light { background: #12201B; border: 1px solid #2D3239; }
html[data-theme="dark"] .pf-tx .btn-outline-secondary:hover,
html[data-theme="dark"] .pf-modal .btn-light:hover { border-color: #2D3239; }
html[data-theme="dark"] .pf-tx #transactions-filters > .rounded-3,
html[data-theme="dark"] .pf-tx #transactions-advanced-filters > .rounded-3 { background: #172822; border: 1px solid #264031 !important; }
html[data-theme="dark"] .pf-tx .transactions-fixed-wrapper,
html[data-theme="dark"] .pf-tx .table-responsive { background: #12201B; border: 1px solid #264031; }
html[data-theme="dark"] .pf-tx .table thead th,
html[data-theme="dark"] .pf-tx .transactions-table__head th { background: #123021 !important; color: #C0EDE1 !important; }
html[data-theme="dark"] .pf-tx .table tbody tr:hover,
html[data-theme="dark"] .pf-tx .transactions-table tbody tr:hover { background: #14212E !important; }
html[data-theme="dark"] .pf-tx .transactions-table td .text-danger { color: #DF9690 !important; }
html[data-theme="dark"] .pf-tx .transactions-table__action-btn { background: #12201B; }
html[data-theme="dark"] .pf-tx .badge-warning { background: #302812; color: #DFA990; }
html[data-theme="dark"] .pf-tx .badge-success { background: #172822; }
html[data-theme="dark"] .pf-tx .badge-primary { background: #121C30; color: #9092DF; }
html[data-theme="dark"] .pf-tx .badge-info { background: #122430; color: #90C3DF; }
html[data-theme="dark"] .pf-tx .badge-light { background: #192029; color: #AAB5C5; }
html[data-theme="dark"] .pf-modal .pf-mini-table { background: #12201B; }
html[data-theme="dark"] .pf-modal .pf-mini-table th { background: #12201B; }
html[data-theme="dark"] .pf-modal .pf-chip--from { background: #192029; color: #AAB5C5; }
html[data-theme="dark"] .pf-modal .pf-chip--to { background: #172822; }
html[data-theme="dark"] .pf-tx [data-csv-root] .form-control-file { border: 1px dashed #263240; }
html[data-theme="dark"] .pf-tx [data-csv-root] .form-control-file::file-selector-button { background: #12201B; }
html[data-theme="dark"] .pf-tx .transaction-editor-row > td { background: #12201B; }

/* templates/auth/login.html */
html[data-theme="dark"] .pf-google-btn { background: #12201B; border: 1px solid #2D3239; color: #CBD4E2; }
html[data-theme="dark"] .pf-google-btn:hover { background: #1B2128; border-color: #2D3239; }
html[data-theme="dark"] .pf-divider::before,
html[data-theme="dark"] .pf-divider::after { border-top: 1px solid #2C313A; }

/* templates/auth/profile.html */
html[data-theme="dark"] .pf-profile { color: #AAB4C5; }
html[data-theme="dark"] .pf-profile__title { color: #C6D0E6; }
html[data-theme="dark"] .pf-progress__bar { background: #1D2025; }
html[data-theme="dark"] .pf-account { background: #1B2128; border: 1px solid #2C313A; }
html[data-theme="dark"] .pf-section-card { background: #12201B; border: 1px solid #2C313A; }
html[data-theme="dark"] .pf-section-card__title { color: #C6D0E6; }
html[data-theme="dark"] .pf-step { background: #14212E; color: #AAB5C5; }
html[data-theme="dark"] .pf-step--done { background: #172822; }
html[data-theme="dark"] .pf-field label,
html[data-theme="dark"] .pf-legend { color: #AAB4C5; }
html[data-theme="dark"] .pf-chip-check span { border: 1px solid #2D3239; background: #12201B; }
html[data-theme="dark"] .pf-chip-check input:checked + span { background: #172822; color: #C0EDE1; }
html[data-theme="dark"] .pf-persona { border: 1px solid #2C313A; }
html[data-theme="dark"] .pf-persona__name { color: #C6D0E6; }
html[data-theme="dark"] .pf-persona:has(input:checked) { background: #172822; }

/* templates/public/about.html */
html[data-theme="dark"] .pf-about2 { --mint: #172822; --ink: #C3EADD; }
html[data-theme="dark"] .pf-about2 p,
html[data-theme="dark"] .pf-about2 li { color: #A6C9BD; }
html[data-theme="dark"] .pf-about2 section + section { border-top: 1px solid #264033; }
html[data-theme="dark"] .pf-about2 .pa-band { background: #172822; }
html[data-theme="dark"] .pf-about2 .pa-compare .then { background: #14212E; }
html[data-theme="dark"] .pf-about2 .pa-questions li { background: #12201B; border: 1px solid #264032; }

/* templates/public/index.html */
html[data-theme="dark"] .pf-home { --mint: #172822; --ink: #C3EADD; --line: #264032; --card: #12201B; }
html[data-theme="dark"] .pf-home p { color: #A6C9BD; }
html[data-theme="dark"] .pf-home .ph-mint { background: #172822; }
html[data-theme="dark"] .pf-home .ph-pillars a { border: 1px solid rgba(38, 64, 52, 0.25); }
html[data-theme="dark"] .pf-home .ph-pillars b { color: #EDDFC0; }
html[data-theme="dark"] .pf-home .ph-actions .btn-gold { color: #EDDFC0; }
html[data-theme="dark"] .pf-home .ph-actions .btn-ghost { border: 1px solid #264034; }
html[data-theme="dark"] .pf-home .ph-points li { color: #A6C9BD; }
html[data-theme="dark"] .pf-home .ph-bar { background: #172822; }
html[data-theme="dark"] .pf-home .ph-callout { background: #302A12; color: #DFAD90; }
html[data-theme="dark"] .pf-home .ph-callout b { color: #DFAE90; }
html[data-theme="dark"] .pf-home .ph-say img { background: #12201B; }
html[data-theme="dark"] .pf-home .ph-faces img { background: #12201B; }
html[data-theme="dark"] .pf-home .ph-commit { background: #172822; border: 1px solid #264034; }
html[data-theme="dark"] .pf-home .ph-months span { background: #12201B; border: 1px solid #264036; }
html[data-theme="dark"] .pf-home .ph-months span.miss { border-color: #403A26; background: #302A12; }
html[data-theme="dark"] .pf-home .ph-cta .btn { color: #EDDFC0; }

/* templates/bank/connecting.html */
html[data-theme="dark"] .pf-bank-card { background: #12201B; }
html[data-theme="dark"] .pf-while { background: #172822; border: 1px solid #264034; }
html[data-theme="dark"] .pf-step { border-bottom: 1px solid #2A333C; }
html[data-theme="dark"] .pf-step-icon { border: 2px solid #2C333A; }
html[data-theme="dark"] .pf-step[data-status="complete"] .pf-step-icon::after { border: solid #333333; }
html[data-theme="dark"] .pf-step[data-status="partial"] .pf-step-icon { border-color: #403926; }

/* templates/bank/connections.html */
html[data-theme="dark"] .pf-conn-card { background: #12201B; }
html[data-theme="dark"] .pf-conn-card h1,
html[data-theme="dark"] .pf-conn-card h2 { color: #C9D4E3; }

/* templates/bank/link_complete.html */
html[data-theme="dark"]  { background-color: #161B2C; color: #D3D3D9; }
html[data-theme="dark"] .card { background: #12201B; }
html[data-theme="dark"] .card p { color: #B1B5BF; }

/* templates/dashboard/ai_personas.html */
html[data-theme="dark"] .pc .pc-tile { background: #12201B; border: 1px solid #264033; }
html[data-theme="dark"] .pc .pc-tile:hover { border-color: #264034; background: #172822; }
html[data-theme="dark"] .pc .pc-tile.is-on { background: #172822; }
html[data-theme="dark"] .pc .pc-tile img { background: #12201B; }
html[data-theme="dark"] .pc .pc-tile b { color: #C3EADD; }
html[data-theme="dark"] .pc .pc-panel { background: #172822; }
html[data-theme="dark"] .pc .pc-who img { background: #12201B; }
html[data-theme="dark"] .pc .pc-who b { color: #C0EDE1; }
html[data-theme="dark"] .pc .pc-intro { color: #A6C9BD; }
html[data-theme="dark"] .pc .pc-slider label { color: #C3EADD; }
html[data-theme="dark"] .pc .pc-sample { background: #12201B; color: #C0EDE1; }

/* templates/dashboard/compare.html */
html[data-theme="dark"] .pf-cmp { --mint: #172822; --ink: #C3EADD; --card: #12201B; --line: #264033; --soft: #172822; --barbg: #172822; }
html[data-theme="dark"] .pf-cmp .pf-cmp__face { border: 3px solid #264034; }
html[data-theme="dark"] .pf-cmp .pf-cmp__verdict.above { background: #302A12; color: #DFAE90; }
html[data-theme="dark"] .pf-cmp .pf-cmp__verdict.below { background: #123021; color: #C0EDE1; }
html[data-theme="dark"] .pf-cmp .pf-cmp__verdict.similar { background: #14212E; color: #AAB5C5; }
html[data-theme="dark"] .pf-cmp .pf-cmp__verdict.neutral { background: #122430; color: #90C3DF; }
html[data-theme="dark"] .pf-cmp .pf-bars__row.is-neg b { color: #DF9090; }
html[data-theme="dark"] .pf-cmp .pf-chip.above { background: #302A12; }
html[data-theme="dark"] .pf-cmp .pf-chip.below { background: #123021; }
html[data-theme="dark"] .pf-cmp .pf-chip.similar { background: #14212E; color: #AAB5C5; }

/* templates/dashboard/forecast_calendar.html */
html[data-theme="dark"] .pf-cal { --line: #264032; --ink: #C3EADD; --card: #12201B; --soft: #172822; }
html[data-theme="dark"] .pf-cal__chip.is-out b,
html[data-theme="dark"] .pf-cal__chip b.is-neg { color: #DF9090; }
html[data-theme="dark"] .pf-cal__num em.is-neg { color: #DF9090; }
html[data-theme="dark"] .pf-cal__item { background: #301212; color: #DF9090; }
html[data-theme="dark"] .pf-cal__item b { color: #DF9090; }
html[data-theme="dark"] .pf-cal__item.is-in { background: #172822; color: #C0EDE1; }
html[data-theme="dark"] .pf-cal__item.is-event { background: #181230; color: #AF90DF; }
html[data-theme="dark"] .pf-cal__box li b.is-neg,
html[data-theme="dark"] .pf-cal__box h6 b.is-neg { color: #DF9090; }

/* templates/dashboard/forecast_history.html */
html[data-theme="dark"] .pf-hist { --line: #264032; --ink: #C3EADD; --card: #12201B; }
html[data-theme="dark"] .pf-hist__kind { background: #172822; color: #C0EDE1; }
html[data-theme="dark"] .pf-hist__kind.is-event { background: #181230; color: #AF90DF; }
html[data-theme="dark"] .pf-hist__kind.is-rates { background: #122430; color: #90C3DF; }
html[data-theme="dark"] .pf-hist__table td.fxv.is-down { color: #DF9090; }
html[data-theme="dark"] .pf-hist__table tfoot td { background: #172822; }

/* templates/dashboard/forecast_long_range.html */
html[data-theme="dark"] .pf-net-worth .pf-nw-series button { border: 1px solid #264033; background: #12201B; color: #ABC4BB; }
html[data-theme="dark"] .pf-net-worth .pf-nw-series button[aria-pressed="true"] { background: #172822; color: #C0EDE1; }
html[data-theme="dark"] .pf-net-worth .pf-nw-colhead { color: #C3EADD; }
html[data-theme="dark"] .pf-net-worth .pf-nw-colhead span.is-debt { color: #DF9090; }
html[data-theme="dark"] .pf-net-worth .pf-nw-list > .list-group-item { border: 1px solid #264033 !important; background: #12201B; }
html[data-theme="dark"] .pf-net-worth .pf-nw-ico { background: #172822; }
html[data-theme="dark"] .pf-net-worth .pf-nw-ico.is-debt { background: #301212; }
html[data-theme="dark"] .pf-net-worth .pf-nw-ico.is-event { background: #302A12; }
html[data-theme="dark"] .pf-net-worth .pf-nw-name { color: #C3EADD; }
html[data-theme="dark"] .pf-net-worth .pf-nw-amt { color: #C3EADD; }
html[data-theme="dark"] .pf-net-worth .pf-nw-amt.is-debt { color: #DF9090; }
html[data-theme="dark"] .pf-net-worth .pf-nw-edit { border: 1px solid #264033; background: #12201B; }
html[data-theme="dark"] .pf-net-worth .pf-nw-edit:hover { background: #172822; }
html[data-theme="dark"] .pf-net-worth .pf-nw-list > .pf-ev-short { background: #301212; }
html[data-theme="dark"] .pf-net-worth .pf-nw-years .pf-nw-expand { background: #12201B !important; }
html[data-theme="dark"] .pf-net-worth .pf-nw-expand { border: 1px solid #264034; background: #12201B; }
html[data-theme="dark"] .pf-net-worth .pf-nw-sub-col { color: #ABC4BB; background: #172822; }

/* templates/dashboard/overview.html */
html[data-theme="dark"] .finance-overview .metric-card { background: linear-gradient(160deg, rgba(25, 135, 84, 0.12), rgba(18, 32, 27, 0.95) 75%); }
html[data-theme="dark"] .finance-overview .metric-label { color: #C0EDD8; }
html[data-theme="dark"] .finance-overview .metric-value--cash { color: #D6D6D6; }
html[data-theme="dark"] .finance-overview .metric-delta.text-success { color: #C0EDD8 !important; }
html[data-theme="dark"] .finance-overview .metric-delta.text-danger { color: #DF9098 !important; }
html[data-theme="dark"] .finance-overview .metric-delta.text-muted { color: #B1B8BE !important; }
html[data-theme="dark"] .finance-overview .section-heading { color: #90DFBA; }
html[data-theme="dark"] .finance-overview .ai-hero-card { background: radial-gradient(circle at 20% 20%, rgba(25, 135, 84, 0.18), rgba(18, 32, 27, 0.95) 55%),
      linear-gradient(135deg, rgba(25, 135, 84, 0.12), rgba(12, 92, 62, 0.08)); }
html[data-theme="dark"] .finance-overview .ai-hero-chip { background: rgba(18, 32, 27, 0.65); }
html[data-theme="dark"] .finance-overview .ai-hero-chip small { color: #90DFBA; }
html[data-theme="dark"] .finance-overview .ai-greeting { color: #C0EDD8; background: rgba(18, 32, 27, 0.8); }
html[data-theme="dark"] .finance-overview .ai-narrative { color: #CAE3D3; }
html[data-theme="dark"] .finance-overview .ai-insights-list .ai-insight-item { background: rgba(18, 32, 27, 0.86); }
html[data-theme="dark"] .finance-overview .ai-insights-list .ai-insight-item .ai-insight-icon { color: #C0EDD8; }
html[data-theme="dark"] .finance-overview .ai-insights-list .ai-insight-item p { color: #CAE3D3; }
html[data-theme="dark"] .finance-overview .mix-table .delta-chip--positive { color: #C0EDD8; }
html[data-theme="dark"] .finance-overview .mix-table .delta-chip--negative { color: #DF9098; }
html[data-theme="dark"] .finance-overview [data-role="period-controls"] .period-controls-inputs .form-select,
html[data-theme="dark"] .finance-overview [data-role="period-controls"] .period-controls-inputs .form-control { color: #90DFBA; background-color: #12201B; }
html[data-theme="dark"] .finance-overview .top-movers-item { background: linear-gradient(135deg, rgba(25, 135, 84, 0.08), rgba(18, 32, 27, 0.95)); }
html[data-theme="dark"] .finance-overview .top-movers-label { color: #C0EDD8; }
html[data-theme="dark"] .finance-overview .top-mover-badge { color: #90DFBA; }
html[data-theme="dark"] .finance-overview .top-mover-badge.top-mover-flag { background-color: #302912; }

/* templates/dashboard/overview.html */
html[data-theme="dark"] .finance-overview .ov-tag { background: #172822; color: #C0EDE1; }
html[data-theme="dark"] .finance-overview .top-mover-item { border-bottom: 1px solid #2C3A33; }
html[data-theme="dark"] .finance-overview .ov-recent__row { border-bottom: 1px solid #2C3A33; }
html[data-theme="dark"] .finance-overview .ov-action { border-bottom: 1px solid #2C3A33; }
html[data-theme="dark"] .finance-overview .ov-headline { background: #12201B; border: 1px solid #264033; }
html[data-theme="dark"] .finance-overview .ov-headline__face { border: 2px solid #264034; }
html[data-theme="dark"] .finance-overview .ov-headline__text { color: #C3EADD; }
html[data-theme="dark"] .finance-overview .ov-benefit { color: #C3EADD; background: #172822; border: 1px solid #264033; }
html[data-theme="dark"] .finance-overview .ov-benefit b.is-down { color: #DF9090; }
html[data-theme="dark"] .finance-overview .ov-cuts { background: linear-gradient(135deg, #302A12 0%, #172822 60%); border: 1px solid #403B26; }
html[data-theme="dark"] .finance-overview .ov-cuts__face { border: 3px solid #403A26; background: #12201B; }
html[data-theme="dark"] .finance-overview .ov-cuts__title h5 { color: #DFAD90; }
html[data-theme="dark"] .finance-overview .ov-cuts__title p { color: #DFC190; }
html[data-theme="dark"] .finance-overview .ov-cuts__sub { color: #DFAE90; }
html[data-theme="dark"] .finance-overview .ov-cut { background: #12201B; border: 1px solid #403B26; }
html[data-theme="dark"] .finance-overview .ov-cut__title { color: #C3EADD; }
html[data-theme="dark"] .finance-overview .ov-cut__line { color: #CAE3DB; }
html[data-theme="dark"] .finance-overview .ov-cuts__consequence { color: #DFAD90; }
html[data-theme="dark"] .finance-overview .ov-coach { background: #12201B; border: 1px solid #264033; }
html[data-theme="dark"] .finance-overview .ov-coach__face { background: #172822; }
html[data-theme="dark"] .finance-overview .ov-coach__name { color: #C0EDE1; }
html[data-theme="dark"] .finance-overview .ov-coach__talk { background: #172822; }
html[data-theme="dark"] .finance-overview .ov-verdict--ahead { background: #172822; color: #C0EDE1; }
html[data-theme="dark"] .finance-overview .ov-verdict--on_track { background: #122430; color: #90C3DF; }
html[data-theme="dark"] .finance-overview .ov-verdict--behind { background: #301212; color: #DF9090; }
html[data-theme="dark"] .finance-overview .ov-verdict--no_forecast { background: #14212E; color: #AAB5C5; }
html[data-theme="dark"] .finance-overview .ov-coach__greeting { color: #C0EDE1; }
html[data-theme="dark"] .finance-overview .ov-coach__narrative { color: #CAE3DB; }
html[data-theme="dark"] .finance-overview .ov-coach__points .ai-insight-item { border-top: 1px solid #264032; }
html[data-theme="dark"] .finance-overview .ov-coach__points .ai-insight-item p { color: #CAE3DB; }
@media (max-width: 768px) { html[data-theme="dark"] .finance-overview .ov-coach__talk::before { border-bottom-color: #26402E; } }
html[data-theme="dark"] .finance-overview .ov-lowcash { background: #302A12; color: #DFAD90; }
html[data-theme="dark"] .finance-overview .ov-lowcash a { color: #DFAD90; }
html[data-theme="dark"] .finance-overview .ov-upcoming li { border-bottom: 1px solid #2C3A33; }
html[data-theme="dark"] .finance-overview .ov-upcoming__date { background: #172822; }
html[data-theme="dark"] .finance-overview .ov-upcoming__date b { color: #C0EDE1; }
html[data-theme="dark"] .finance-overview .ov-action__set { background: #12201B; }
html[data-theme="dark"] .finance-overview [data-role="headline-row"] .ov-verdict--on_track { background: #122430; }
html[data-theme="dark"] .finance-overview .ov-progress { background: #123021; }
html[data-theme="dark"] .finance-overview .ov-donut__centre strong { color: #C0EDE1; }
html[data-theme="dark"] .pf-ui.finance-overview .section-heading,
html[data-theme="dark"] .finance-overview .top-movers-card .section-heading { color: #C3EADD; }
html[data-theme="dark"] .finance-overview .mix-card,
html[data-theme="dark"] .finance-overview .top-movers-card,
html[data-theme="dark"] .finance-overview .recent-transactions-card,
html[data-theme="dark"] .finance-overview .cashflow-card,
html[data-theme="dark"] #ai-recommendations > .card { border: 1px solid #264033 !important; }
html[data-theme="dark"] .finance-overview .top-mover-item { border-left: 3px solid #263240; }

/* templates/dashboard/settings.html */
html[data-theme="dark"] .pf-set { --mint: #172822; --ink: #C3EADD; }
html[data-theme="dark"] .pf-set .pf-set__band::before { background: linear-gradient(90deg, #302912, #302A12); }
html[data-theme="dark"] .pf-set .pf-set__tile img { background: #12201B; }
html[data-theme="dark"] .pf-set .pf-card { background: #12201B; border: 1px solid #264033; }
html[data-theme="dark"] .pf-set .pf-rows li { border-top: 1px solid #264031; }
html[data-theme="dark"] .pf-set .pf-chip.done { background: #123021; color: #C0EDE1; }
html[data-theme="dark"] .pf-set .pf-chip.part { background: #302A12; color: #DFAE90; }
html[data-theme="dark"] .pf-set .pf-chip.todo { background: #14212E; color: #AAB5C5; }
html[data-theme="dark"] .pf-set .btn-pf-outline { background: #12201B; }
html[data-theme="dark"] .pf-set .pf-switch span { background: #18202A; }
html[data-theme="dark"] .pf-set .pf-switch span::before { background: #12201B; }
html[data-theme="dark"] .pf-set .pf-seg { background: #172822; }
html[data-theme="dark"] .pf-set .pf-danger summary .t { color: #DF9090; }
html[data-theme="dark"] .pf-set .pf-danger__body { background: #301212; border: 1px solid #402626; color: #DF9090; }
html[data-theme="dark"] .pf-set .pf-danger__body a { color: #DF9090; }

/* templates/dashboard/styles.html */
html[data-theme="dark"] .searchable-combobox__list { background: #12201B; }
html[data-theme="dark"] .cashflow-table tbody tr.section-header-row td { color: #C3CEEA; }
html[data-theme="dark"] .cashflow-table tbody tr.section-header-row.section-expenses td { color: #DF9090; }
html[data-theme="dark"] #tbl-cashflow-statement tbody tr.report-table__major-heading td { color: #C3CEEA; }
html[data-theme="dark"] #tbl-cashflow-statement tbody tr.report-table__major-heading.section-expenses td { color: #DF9090; }
html[data-theme="dark"] #tbl-cashflow-statement thead tr.month-status-row th.month-status-cell.month-cur { color: #BDDF90; }
html[data-theme="dark"] .cashflow-statement-detail td.ps-4 { color: var(--text-secondary, #AAB5C5); }
html[data-theme="dark"] .budget-analysis__table .report-table__major-heading.section-expenses td { color: #DF9090; }
html[data-theme="dark"] .budget-analysis__table .report-table__section-heading .section-heading-label { color: #C3CEEA; }
html[data-theme="dark"] .budget-analysis__legend-chip { color: #C3CEEA; }
html[data-theme="dark"] .budget-analysis__totals .text-danger { color: #DF9090 !important; }

/* templates/dashboard/tools.html */
html[data-theme="dark"] .tools-suite .tool-result { color: #C0EDD8; }

/* templates/dashboard/transactions.html */
html[data-theme="dark"] .transactions-table tbody tr:hover { background-color: #121E30 !important; }
