/* Dark calculator, generator and cheatsheet surfaces; screen-only to retain print output. */
body.site-theme.tool-page {
    --bs-body-color: #edf3ff;
    --bs-secondary-color: #a4b2c8;
    --bs-border-color: #334765;
}
/* Keep the result ID separate so it does not raise every card selector’s specificity. */
.site-theme.tool-page :is(.card, .bg-light, .bg-white, .bg-body-tertiary, .category-section, .fee-table, .form-bg, .ab_stats, .modal-content),
.site-theme.tool-page #result {
    --bs-heading-color: #edf3ff;
    --bs-card-color: #edf3ff;
    --bs-card-bg: #111e33;
    --bs-card-border-color: #25334b;
    background: var(--site-panel) !important;
    color: var(--site-ink) !important;
    border-color: var(--site-border) !important;
    color-scheme: dark;
}
.site-theme.tool-page :is(.card-header, .card-footer, .input-group-text) {
    background: #18283f;
    color: var(--site-ink);
    border-color: var(--site-border);
}
.site-theme.tool-page :is(.text-dark, .text-black, .link-dark) { color: var(--site-ink) !important; }
.site-theme.tool-page :is(.text-muted, .text-secondary, .form-text, .desc) { color: var(--site-muted) !important; }
.site-theme.tool-page :is(.text-primary, a:not(.btn):not(.dropdown-item):not(.nav-link)) { color: var(--site-accent) !important; }
.site-theme.tool-page :is(.form-control, .form-select, textarea.embed) {
    background-color: #0b1426 !important;
    border: 1px solid #334765;
    color: #edf3ff;
    color-scheme: dark;
}
.site-theme.tool-page :is(.form-control, textarea)::placeholder { color: #93a5bf; opacity: 1; }
.site-theme.tool-page :is(.form-control, .form-select):disabled { background-color: #223047 !important; color: #a4b2c8; }
.site-theme.tool-page :is(.form-control, .form-select):focus { border-color: #8bb8ff; color: #edf3ff; }
.site-theme.tool-page .form-check-input:not(:checked) { background-color: #0b1426; border-color: #67809f; }
.site-theme.tool-page :is(code, .code-short, pre) {
    background: #0b1426;
    color: #c4dcff;
    border-color: #334765;
}
.site-theme.tool-page .table {
    --bs-table-color: #edf3ff;
    --bs-table-bg: #111e33;
    --bs-table-border-color: #334765;
    --bs-table-striped-color: #edf3ff;
    --bs-table-striped-bg: #18283f;
    --bs-table-hover-color: #edf3ff;
    --bs-table-hover-bg: #223755;
}
.site-theme.tool-page :is(table, tr, td, th) { color: #edf3ff; }
.site-theme.tool-page :is(tr, td):not(.td-header) { background-color: #111e33; }
.site-theme.tool-page :is(td, th) { border-color: #334765; }
.site-theme.tool-page table :is(input, select, textarea) {
    background-color: #0b1426;
    color: #edf3ff;
    border-color: #334765;
    color-scheme: dark;
}
.site-theme.tool-page :is(.filepond--panel-root, .toolbar, .block) {
    background: #18283f;
    color: #edf3ff;
    border-color: #334765;
}
.site-theme.tool-page .filepond--drop-label { color: #c8d4e6; }
.site-theme.tool-page .modal-header .btn-close { filter: invert(1) grayscale(1) brightness(2); }
/* Keep intentionally light status badges and buttons legible. */
.site-theme.tool-page .datepicker-dropdown {
    color-scheme: light;
    background: #fff;
    color: #17243a;
    border-color: #cbd5e1;
    box-shadow: 0 8px 24px #0003;
}
.site-theme.tool-page .datepicker-dropdown :is(table, tr, td, th) {
    background: transparent;
    color: #17243a;
}
.site-theme.tool-page .datepicker-dropdown :is(td.day, th.prev, th.next, th.datepicker-switch, tfoot th):hover,
.site-theme.tool-page .datepicker-dropdown td span:hover,
.site-theme.tool-page .datepicker-dropdown td.focused {
    background: #e2e8f0;
    color: #17243a;
}
.site-theme.tool-page .datepicker-dropdown td :is(.old, .new),
.site-theme.tool-page .datepicker-dropdown td:is(.old, .new) { color: #64748b; }
.site-theme.tool-page .datepicker-dropdown td.today {
    background: #dbeafe;
    color: #1e3a8a;
}
.site-theme.tool-page .datepicker-dropdown td.active,
.site-theme.tool-page .datepicker-dropdown td span.active {
    background: #2563eb;
    color: #fff;
    text-shadow: none;
}
.site-theme.tool-page .datepicker-dropdown td.disabled,
.site-theme.tool-page .datepicker-dropdown td span.disabled {
    background: transparent;
    color: #94a3b8;
}
.site-theme.tool-page .datepicker-dropdown:after { border-bottom-color: #fff; }
.site-theme.tool-page .datepicker-dropdown.datepicker-orient-top:after { border-top-color: #fff; }
.site-theme.tool-page :is(.badge.bg-warning, .badge.bg-light, .btn-light) { color: #17243a !important; }
.site-theme.tool-page .comp_reference { color: var(--site-ink); }
.site-theme.tool-page :is(.company_style, .compare-btn:hover) {
    background: #223755 !important;
    color: var(--site-ink);
}
.site-theme.tool-page .table :is(.table-light, .table-secondary) {
    --bs-table-bg: #18283f;
    --bs-table-color: #edf3ff;
}
