/*
 * Shared screen theme for the modern accounting workspace.
 * Every rule is page-scoped; print layouts remain owned by each report.
 */
@media screen {
  body.dashboard-modern {
    color: #4f5f7d;
    background: #f5f8fc !important;
    font-family: "Plus Jakarta Sans", "Segoe UI", sans-serif;
  }
}

:where(
  #enterBillsRoot,
  #payBillsRoot,
  #billTrackerRoot,
  #studentBalanceApp,
  #incomeByStudentApp,
  #studentLedgerApp,
  #accountsPayableSummaryApp,
  #statementCashFlowsApp,
  #trialBalanceApp,
  #generalLedgerApp
) {
  --ac-blue: #1769ff;
  --ac-blue-dark: #0b46e8;
  --ac-blue-soft: #edf4ff;
  --ac-navy: #101a3b;
  --ac-text: #4f5f7d;
  --ac-muted: #8491a9;
  --ac-bg: #f5f8fc;
  --ac-border: #e3eaf5;
  --ac-card: #fff;
  --ac-success: #22ad63;
  --ac-danger: #e34454;
  --ac-warning: #e99a0b;
  width: 100%;
  color: var(--ac-text);
  font-family: "Plus Jakarta Sans", "Segoe UI", sans-serif;
  font-size: 13px;
}

:where(
  #enterBillsRoot,
  #payBillsRoot,
  #billTrackerRoot,
  #studentBalanceApp,
  #incomeByStudentApp,
  #studentLedgerApp,
  #accountsPayableSummaryApp,
  #statementCashFlowsApp,
  #trialBalanceApp,
  #generalLedgerApp
) *,
:where(
  #enterBillsRoot,
  #payBillsRoot,
  #billTrackerRoot,
  #studentBalanceApp,
  #incomeByStudentApp,
  #studentLedgerApp,
  #accountsPayableSummaryApp,
  #statementCashFlowsApp,
  #trialBalanceApp,
  #generalLedgerApp
) *::before,
:where(
  #enterBillsRoot,
  #payBillsRoot,
  #billTrackerRoot,
  #studentBalanceApp,
  #incomeByStudentApp,
  #studentLedgerApp,
  #accountsPayableSummaryApp,
  #statementCashFlowsApp,
  #trialBalanceApp,
  #generalLedgerApp
) *::after {
  box-sizing: border-box;
}

/* Page shells and breadcrumbs */
#enterBillsRoot.eb-wrap,
#payBillsRoot.eb-wrap,
#billTrackerRoot.eb-wrap,
#studentBalanceApp.page-wrap,
#incomeByStudentApp.page-wrap,
#studentLedgerApp.page-wrap,
#accountsPayableSummaryApp .aps-wrap,
#statementCashFlowsApp .scf-wrap,
#trialBalanceApp .tb-wrap,
#generalLedgerApp .gl-wrap {
  max-width: none;
  margin: 0;
  padding: 0 0 24px;
}

:where(
  #enterBillsRoot,
  #payBillsRoot,
  #billTrackerRoot
) .eb-crumb,
#studentBalanceApp .crumb,
#incomeByStudentApp .crumb,
#studentLedgerApp .crumb,
#accountsPayableSummaryApp .aps-crumb,
#statementCashFlowsApp .scf-crumb,
#trialBalanceApp .tb-crumb,
#generalLedgerApp .gl-crumb {
  margin: 0 0 14px;
  padding: 0 2px;
  color: var(--ac-navy);
  font-size: 14px;
  font-weight: 800;
}

/* Primary cards */
:where(#enterBillsRoot, #payBillsRoot, #billTrackerRoot) .eb-card,
:where(#studentBalanceApp, #incomeByStudentApp, #studentLedgerApp) .card-box,
#accountsPayableSummaryApp .aps-card,
#statementCashFlowsApp .scf-card,
#trialBalanceApp .tb-card,
#generalLedgerApp .gl-card {
  overflow: visible;
  padding: 18px 20px 20px;
  background: var(--ac-card);
  border: 1px solid var(--ac-border);
  border-radius: 15px;
  box-shadow: 0 9px 28px rgba(31, 59, 116, .065);
}

/* Toolbars and module navigation */
:where(#enterBillsRoot, #payBillsRoot, #billTrackerRoot) .eb-toolbar,
:where(#studentBalanceApp, #incomeByStudentApp, #studentLedgerApp) .toolbar,
#accountsPayableSummaryApp .aps-toolbar,
#statementCashFlowsApp .scf-toolbar,
#trialBalanceApp .tb-toolbar,
#generalLedgerApp .gl-toolbar {
  gap: 10px;
  margin-bottom: 18px;
  padding: 0 0 16px;
  border-bottom: 1px solid var(--ac-border);
}

:where(#enterBillsRoot, #payBillsRoot, #billTrackerRoot) .eb-mod-nav {
  display: inline-flex;
  gap: 5px;
  margin: 0 0 14px;
  padding: 5px;
  background: #eaf1fc;
  border: 1px solid #dde7f6;
  border-radius: 12px;
}

:where(#enterBillsRoot, #payBillsRoot, #billTrackerRoot) .eb-mod-nav a {
  padding: 8px 14px;
  color: #667694;
  border-radius: 8px;
  font-size: 11px;
  font-weight: 700;
  text-decoration: none;
  transition: .18s ease;
}

:where(#enterBillsRoot, #payBillsRoot, #billTrackerRoot) .eb-mod-nav a:hover {
  color: var(--ac-blue);
  background: rgba(255, 255, 255, .75);
}

:where(#enterBillsRoot, #payBillsRoot, #billTrackerRoot) .eb-mod-nav a.active {
  color: #fff;
  background: linear-gradient(135deg, var(--ac-blue), var(--ac-blue-dark));
  box-shadow: 0 5px 13px rgba(23, 105, 255, .22);
}

/* Labels and controls */
:where(
  #enterBillsRoot,
  #payBillsRoot,
  #billTrackerRoot,
  #studentBalanceApp,
  #incomeByStudentApp,
  #studentLedgerApp,
  #accountsPayableSummaryApp,
  #statementCashFlowsApp,
  #trialBalanceApp,
  #generalLedgerApp
) label,
:where(#enterBillsRoot, #payBillsRoot, #billTrackerRoot) .eb-lbl {
  color: #53617c;
  font-size: 11px;
  font-weight: 700;
}

:where(#enterBillsRoot, #payBillsRoot, #billTrackerRoot) :is(.eb-in, .eb-sel, .eb-ta, .form-control, select),
:where(#studentBalanceApp, #incomeByStudentApp, #studentLedgerApp) .toolbar :is(.form-control, select, input),
#accountsPayableSummaryApp .aps-toolbar :is(input, select),
#statementCashFlowsApp .scf-toolbar :is(input, select),
#trialBalanceApp .tb-toolbar :is(input, select),
#generalLedgerApp .gl-toolbar :is(input, select) {
  min-height: 40px;
  padding: 7px 11px;
  color: var(--ac-navy);
  background: #fbfcff;
  border: 1px solid #dce5f1;
  border-radius: 9px;
  font-size: 12px;
  outline: none;
  box-shadow: none;
  transition: border-color .18s ease, box-shadow .18s ease, background .18s ease;
}

:where(#enterBillsRoot, #payBillsRoot, #billTrackerRoot) :is(.eb-in, .eb-sel, .eb-ta, .form-control, select):focus,
:where(#studentBalanceApp, #incomeByStudentApp, #studentLedgerApp) .toolbar :is(.form-control, select, input):focus,
#accountsPayableSummaryApp .aps-toolbar :is(input, select):focus,
#statementCashFlowsApp .scf-toolbar :is(input, select):focus,
#trialBalanceApp .tb-toolbar :is(input, select):focus,
#generalLedgerApp .gl-toolbar :is(input, select):focus {
  background: #fff;
  border-color: #8fb4ff;
  box-shadow: 0 0 0 3px rgba(23, 105, 255, .09);
}

/* Buttons */
:where(
  #enterBillsRoot,
  #payBillsRoot,
  #billTrackerRoot,
  #studentBalanceApp,
  #incomeByStudentApp,
  #studentLedgerApp,
  #accountsPayableSummaryApp,
  #statementCashFlowsApp,
  #trialBalanceApp,
  #generalLedgerApp
) .btn {
  min-height: 38px;
  padding: 7px 13px;
  border-radius: 9px;
  font-size: 11px;
  font-weight: 700;
  box-shadow: none;
  transition: transform .18s ease, box-shadow .18s ease, background .18s ease;
}

:where(
  #enterBillsRoot,
  #payBillsRoot,
  #billTrackerRoot,
  #studentBalanceApp,
  #incomeByStudentApp,
  #studentLedgerApp,
  #accountsPayableSummaryApp,
  #statementCashFlowsApp,
  #trialBalanceApp,
  #generalLedgerApp
) .btn:hover {
  transform: translateY(-1px);
}

:where(
  #enterBillsRoot,
  #payBillsRoot,
  #billTrackerRoot,
  #studentBalanceApp,
  #incomeByStudentApp,
  #studentLedgerApp,
  #accountsPayableSummaryApp,
  #statementCashFlowsApp,
  #trialBalanceApp,
  #generalLedgerApp
) .btn-primary {
  color: #fff;
  background: linear-gradient(135deg, var(--ac-blue), var(--ac-blue-dark));
  border-color: var(--ac-blue);
  box-shadow: 0 6px 15px rgba(23, 105, 255, .18);
}

:where(
  #enterBillsRoot,
  #payBillsRoot,
  #billTrackerRoot,
  #studentBalanceApp,
  #incomeByStudentApp,
  #studentLedgerApp,
  #accountsPayableSummaryApp,
  #statementCashFlowsApp,
  #trialBalanceApp,
  #generalLedgerApp
) :is(.btn-light, .btn-secondary, .btn-outline-secondary) {
  color: #5f6f8c;
  background: #f7f9fd;
  border-color: #dce5f1;
}

/* Bill forms, grids and tracker cards */
:where(#enterBillsRoot, #payBillsRoot) :is(.eb-side, .eb-gridbox),
#billTrackerRoot :is(.bt-filters, .table-responsive) {
  background: #fbfcff;
  border-color: var(--ac-border);
  border-radius: 11px;
}

:where(#enterBillsRoot, #payBillsRoot) .eb-side {
  padding: 13px;
}

:where(#enterBillsRoot, #payBillsRoot) :is(.eb-grid, table),
#billTrackerRoot .bt-grid {
  color: var(--ac-text);
  font-size: 11px;
}

:where(#enterBillsRoot, #payBillsRoot) .eb-grid thead th,
#billTrackerRoot .bt-grid thead th {
  padding: 10px;
  color: #5d6d88;
  background: #f1f5fb;
  border-color: var(--ac-border);
  font-size: 10px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .02em;
}

:where(#enterBillsRoot, #payBillsRoot) .eb-grid tbody tr:hover,
#billTrackerRoot .bt-grid tbody tr:hover {
  background: var(--ac-blue-soft);
}

#billTrackerRoot .bt-cards {
  gap: 13px;
}

#billTrackerRoot .bt-card {
  min-height: 92px;
  padding: 16px;
  background: #fff;
  border: 1px solid var(--ac-border);
  border-radius: 13px;
  box-shadow: 0 6px 18px rgba(31, 59, 116, .055);
}

#billTrackerRoot .bt-title {
  margin: -18px -20px 18px;
  padding: 15px 20px;
  color: #fff;
  background: linear-gradient(135deg, var(--ac-blue), var(--ac-blue-dark));
  border-radius: 14px 14px 0 0;
}

/* Reports */
:where(#studentBalanceApp, #incomeByStudentApp, #studentLedgerApp) .report,
#accountsPayableSummaryApp .aps-report,
#statementCashFlowsApp .scf-report,
#trialBalanceApp .tb-report,
#generalLedgerApp .gl-report {
  min-height: 140px;
  margin-top: 4px;
  padding: 4px 2px 0;
}

:where(#studentBalanceApp, #incomeByStudentApp, #studentLedgerApp) .hdr .ti,
#accountsPayableSummaryApp .aps-hdr .ti,
#statementCashFlowsApp .scf-hdr .ti,
#trialBalanceApp .tb-hdr .ti,
#generalLedgerApp .gl-hdr .ti {
  color: var(--ac-navy);
  font-size: 20px;
  font-weight: 800;
}

:where(#studentBalanceApp, #incomeByStudentApp, #studentLedgerApp) .hdr :is(.co, .su),
#accountsPayableSummaryApp .aps-hdr :is(.co, .su),
#statementCashFlowsApp .scf-hdr :is(.co, .su),
#trialBalanceApp .tb-hdr :is(.co, .su),
#generalLedgerApp .gl-hdr :is(.co, .su) {
  color: var(--ac-blue);
}

:where(#studentBalanceApp, #incomeByStudentApp, #studentLedgerApp) table.qb,
#accountsPayableSummaryApp :is(.aps-qb, .aps-det),
#statementCashFlowsApp .scf-table,
#trialBalanceApp .tb-table,
#generalLedgerApp .gl-table {
  overflow: hidden;
  border: 1px solid var(--ac-border);
  border-radius: 10px;
  color: var(--ac-text);
  font-size: 11px;
}

:where(#studentBalanceApp, #incomeByStudentApp, #studentLedgerApp) table.qb thead th,
#accountsPayableSummaryApp :is(.aps-qb, .aps-det) th,
#statementCashFlowsApp .scf-table th,
#trialBalanceApp .tb-table th,
#generalLedgerApp .gl-table th {
  padding: 9px 10px;
  color: #586984;
  background: #f1f5fb;
  border-color: var(--ac-border);
  font-size: 10px;
  font-weight: 800;
}

:where(#studentBalanceApp, #incomeByStudentApp, #studentLedgerApp) table.qb td,
#accountsPayableSummaryApp :is(.aps-qb, .aps-det) td,
#statementCashFlowsApp .scf-table td,
#trialBalanceApp .tb-table td,
#generalLedgerApp .gl-table td {
  padding: 7px 10px;
  border-color: #edf1f7;
}

:where(#studentBalanceApp, #incomeByStudentApp, #studentLedgerApp) table.qb tbody tr:hover td,
#accountsPayableSummaryApp :is(.aps-qb, .aps-det) tbody tr:hover td,
#statementCashFlowsApp .scf-table tbody tr:hover td,
#trialBalanceApp .tb-table tbody tr:hover td,
#generalLedgerApp .gl-table tbody tr:hover td {
  background: #f4f8ff;
}

:where(#studentBalanceApp, #incomeByStudentApp, #studentLedgerApp) :is(tr.g1, tr.g3, tr.gt) td,
#accountsPayableSummaryApp :is(.g1, .g3, .gt) td,
#statementCashFlowsApp :is(.scf-section, .scf-grand) td,
#trialBalanceApp .tb-total td,
#generalLedgerApp .gl-total td {
  color: var(--ac-navy);
  background: #edf4ff;
  font-weight: 800;
}

:where(#studentBalanceApp, #incomeByStudentApp, #studentLedgerApp) a,
#accountsPayableSummaryApp a,
#statementCashFlowsApp a,
#trialBalanceApp a,
#generalLedgerApp a {
  color: var(--ac-blue);
}

/* Search suggestions and report action buttons */
#studentLedgerApp .stu-search-results,
#generalLedgerApp .gl-account-results {
  overflow: hidden;
  background: #fff;
  border: 1px solid var(--ac-border);
  border-radius: 10px;
  box-shadow: 0 12px 30px rgba(31, 59, 116, .13);
}

#trialBalanceApp .tb-action,
#generalLedgerApp .gl-action {
  min-height: 36px;
  padding: 7px 12px;
  color: var(--ac-blue);
  background: #f5f8ff;
  border: 1px solid #d7e4fa;
  border-radius: 8px;
  font-size: 11px;
  font-weight: 700;
}

/* Native overlays and Bootstrap modals */
:is(.sbs-overlay, .sbs-txn-overlay, .ibs-overlay, .aps-overlay, .scf-overlay) {
  background: rgba(10, 20, 48, .52);
  backdrop-filter: blur(2px);
}

:is(.sbs-overlay-panel, .sbs-txn-panel, .ibs-panel, .aps-panel, .scf-modal) {
  --ac-blue: #1769ff;
  --ac-navy: #101a3b;
  --ac-border: #e3eaf5;
  background: #fff;
  border: 1px solid rgba(255, 255, 255, .7);
  border-radius: 17px;
  box-shadow: 0 24px 70px rgba(10, 25, 62, .25);
}

:is(.sbs-overlay-head, .ibs-panel-head, .aps-panel-head, .scf-modal-head) {
  color: #fff;
  background: linear-gradient(135deg, #0b46ff, #1138d8);
  border: 0;
  padding: 14px 18px;
}

:is(.sbs-overlay-foot, .ibs-panel-foot, .aps-panel-foot, .scf-modal-foot) {
  padding: 12px 18px;
  background: #f8faff;
  border-color: var(--ac-border);
}

:is(.sbs-overlay-panel, .sbs-txn-panel, .ibs-panel, .aps-panel, .scf-modal) .btn {
  min-height: 38px;
  padding: 7px 13px;
  border-radius: 9px;
  font-size: 11px;
  font-weight: 700;
}

:is(.sbs-overlay-panel, .sbs-txn-panel, .ibs-panel, .aps-panel, .scf-modal) .btn-primary {
  color: #fff;
  background: linear-gradient(135deg, #1769ff, #0b46e8);
  border-color: #1769ff;
}

#enterBillsRoot ~ .modal .modal-content.eb-modal,
#payBillsRoot ~ .modal .modal-content,
#billTrackerRoot ~ .modal .modal-content {
  overflow: hidden;
  border: 0;
  border-radius: 17px;
  box-shadow: 0 24px 70px rgba(10, 25, 62, .25);
}

#enterBillsRoot ~ .modal .eb-modal .modal-header {
  color: #fff;
  background: linear-gradient(135deg, #0b46ff, #1138d8);
  border: 0;
}

/* Select2 follows the same control language. */
:where(#enterBillsRoot, #payBillsRoot, #billTrackerRoot) .select2-container .select2-selection--single {
  height: 40px;
  background: #fbfcff;
  border: 1px solid #dce5f1;
  border-radius: 9px;
}

:where(#enterBillsRoot, #payBillsRoot, #billTrackerRoot) .select2-container .select2-selection--single .select2-selection__rendered {
  line-height: 38px;
  color: var(--ac-navy);
  font-size: 12px;
}

:where(#enterBillsRoot, #payBillsRoot, #billTrackerRoot) .select2-container .select2-selection--single .select2-selection__arrow {
  height: 38px;
}

/* Compatibility corrections for the pages' existing markup and behavior. */
#enterBillsRoot.eb-wrap,
#payBillsRoot.eb-wrap,
#billTrackerRoot.eb-wrap {
  padding: 0 12px 24px;
}

:where(#enterBillsRoot, #payBillsRoot, #billTrackerRoot) .eb-mod-nav {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 14px;
  border-bottom: 0;
}

:where(#enterBillsRoot, #payBillsRoot, #billTrackerRoot) .eb-mod-nav .nav-item {
  margin: 0;
}

:where(#enterBillsRoot, #payBillsRoot, #billTrackerRoot) .eb-mod-nav .nav-link,
:where(#enterBillsRoot, #payBillsRoot, #billTrackerRoot) .eb-mod-nav .nav-link.active {
  margin: 0;
  border: 0;
}

:is(#enterBillsRoot, #payBillsRoot, #billTrackerRoot) .eb-mod-nav .nav-link.active,
:is(#enterBillsRoot, #payBillsRoot, #billTrackerRoot) .eb-mod-nav .nav-link.active:hover,
:is(#enterBillsRoot, #payBillsRoot, #billTrackerRoot) .eb-mod-nav .nav-link.active:focus {
  color: #fff !important;
  background: linear-gradient(135deg, #1769ff, #0b46e8) !important;
  border: 0 !important;
  box-shadow: 0 5px 13px rgba(23, 105, 255, .22);
}

#enterBillsRoot .eb-ta {
  min-height: 88px;
}

#payBillsRoot :is(.pb-in, .pb-sel, .eb-pay-amt, .eb-disc-amt, .eb-cred-amt),
#billTrackerRoot .bt-filters :is(input, select) {
  min-height: 40px;
  padding: 7px 11px;
  color: var(--ac-navy);
  background: #fbfcff;
  border: 1px solid #dce5f1;
  border-radius: 9px;
  font-size: 12px;
}

:where(#enterBillsRoot, #payBillsRoot, #billTrackerRoot) .select2-container .select2-selection--single {
  height: 40px !important;
  border-color: #dce5f1 !important;
  border-radius: 9px !important;
}

:where(#enterBillsRoot, #payBillsRoot, #billTrackerRoot) .select2-container .select2-selection--single .select2-selection__rendered {
  line-height: 38px !important;
}

:where(#enterBillsRoot, #payBillsRoot, #billTrackerRoot) .select2-container .select2-selection--single .select2-selection__arrow {
  height: 38px !important;
}

#enterBillsRoot .eb-grid .select2-container .select2-selection--single {
  height: 32px !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
}

#enterBillsRoot .eb-grid .select2-container .select2-selection--single .select2-selection__rendered {
  line-height: 30px !important;
}

:where(
  #enterBillsRoot,
  #payBillsRoot,
  #billTrackerRoot,
  #studentBalanceApp,
  #incomeByStudentApp,
  #studentLedgerApp,
  #accountsPayableSummaryApp,
  #statementCashFlowsApp,
  #trialBalanceApp,
  #generalLedgerApp
) .btn:hover {
  transform: none;
}

:where(
  #enterBillsRoot,
  #payBillsRoot,
  #billTrackerRoot,
  #studentBalanceApp,
  #incomeByStudentApp,
  #studentLedgerApp,
  #accountsPayableSummaryApp,
  #statementCashFlowsApp,
  #trialBalanceApp,
  #generalLedgerApp
) .btn-sm {
  min-height: 31px;
  padding: 4px 10px;
  border-radius: 7px;
  font-size: 10px;
}

:where(
  #enterBillsRoot,
  #payBillsRoot,
  #billTrackerRoot,
  #studentBalanceApp,
  #incomeByStudentApp,
  #studentLedgerApp,
  #accountsPayableSummaryApp,
  #statementCashFlowsApp,
  #trialBalanceApp,
  #generalLedgerApp
) .btn-success {
  color: #fff;
  background: linear-gradient(135deg, #27bd67, #189951);
  border-color: #22ad63;
}

:where(
  #enterBillsRoot,
  #payBillsRoot,
  #billTrackerRoot,
  #studentBalanceApp,
  #incomeByStudentApp,
  #studentLedgerApp,
  #accountsPayableSummaryApp,
  #statementCashFlowsApp,
  #trialBalanceApp,
  #generalLedgerApp
) .btn-warning {
  color: #fff;
  background: linear-gradient(135deg, #ffb21c, #e99500);
  border-color: #e99a0b;
}

#billTrackerRoot .bt-card.c-blue {
  color: #fff;
  background: linear-gradient(135deg, #1769ff, #0b46e8);
}

#billTrackerRoot .bt-card.c-yellow {
  color: #684700;
  background: linear-gradient(135deg, #ffe5a6, #ffd46f);
}

#billTrackerRoot .bt-card.c-red {
  color: #fff;
  background: linear-gradient(135deg, #ef5967, #d83c4b);
}

#billTrackerRoot .bt-card.c-green {
  color: #fff;
  background: linear-gradient(135deg, #2bc46d, #199f55);
}

#billTrackerRoot .bt-title {
  margin: -18px -20px 18px;
}

:where(#studentBalanceApp, #incomeByStudentApp, #studentLedgerApp) .toolbar,
#accountsPayableSummaryApp .aps-toolbar,
#statementCashFlowsApp .scf-toolbar,
#trialBalanceApp .tb-toolbar,
#generalLedgerApp .gl-toolbar {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
}

#studentLedgerApp table.qb tr.g1 td {
  color: var(--ac-text);
  background: #fff;
  font-weight: 400;
}

#studentLedgerApp table.qb tr.g1:hover td {
  background: #f4f8ff;
}

#studentLedgerApp .stu-suggest {
  overflow: hidden;
  background: #fff;
  border: 1px solid var(--ac-border);
  border-radius: 10px;
  box-shadow: 0 12px 30px rgba(31, 59, 116, .13);
}

#studentBalanceApp tr.g2 td {
  color: var(--ac-text);
  background: #fff;
  font-weight: 400;
}

#studentBalanceApp tr.hide {
  display: none;
}

#studentLedgerApp tr.open td {
  color: var(--ac-navy);
  background: #f7f9fd;
  font-weight: 700;
}

#accountsPayableSummaryApp tr.tot td {
  color: var(--ac-navy);
  background: #edf4ff;
  font-weight: 800;
}

#statementCashFlowsApp .scf-section td {
  color: var(--ac-navy);
  background: #edf4ff;
  font-weight: 800;
}

#statementCashFlowsApp :is(.scf-section-total, .scf-grand) td {
  color: var(--ac-navy);
  background: #fff;
  font-weight: 800;
  border-top: 1px solid var(--ac-border);
}

#statementCashFlowsApp .scf-cash-end td {
  border-bottom: 3px double var(--ac-blue);
}

#statementCashFlowsApp .scf-action,
#trialBalanceApp .tb-action,
#generalLedgerApp .gl-action,
#apsEntryHost .aps-back,
#scfEntryHost .scf-back {
  min-height: 36px;
  padding: 7px 12px;
  color: #1769ff;
  background: #f5f8ff;
  border: 1px solid #d7e4fa;
  border-radius: 8px;
  font-size: 11px;
  font-weight: 700;
}

#generalLedgerApp .gl-table tr.gl-account th {
  color: var(--ac-navy);
  background: #e8edf5;
  border-top: 1px solid var(--ac-border);
  text-align: left;
  text-transform: none;
  letter-spacing: normal;
}

#generalLedgerApp .gl-table tr.gl-cols th {
  background: #f1f5fb;
}

#findModal .modal-content,
#addVendorModal .modal-content {
  overflow: hidden;
  border: 0;
  border-radius: 17px;
  box-shadow: 0 24px 70px rgba(10, 25, 62, .25);
}

#findModal .modal-header,
#addVendorModal .modal-header {
  color: #fff;
  background: linear-gradient(135deg, #0b46ff, #1138d8);
  border: 0;
}

:is(.sbs-overlay, .sbs-txn-overlay, .ibs-overlay, .aps-overlay, .scf-overlay) {
  display: none;
  position: fixed;
  inset: 0;
  z-index: 99990;
  align-items: center;
  justify-content: center;
  padding: 16px;
}

:is(.sbs-overlay.is-open, .sbs-txn-overlay.is-open, .ibs-overlay.is-open, .aps-overlay.open, .scf-overlay.open) {
  display: flex;
}

/* Statement of Cash Flows needs readable sizing on wide dashboard screens. */
@media screen {
  #statementCashFlowsApp.scf-page {
    font-family: "Plus Jakarta Sans", "Segoe UI", sans-serif !important;
    font-size: 15px !important;
  }

  #statementCashFlowsApp .scf-hdr .ti {
    font-size: 23px !important;
    font-weight: 800 !important;
  }

  #statementCashFlowsApp .scf-table {
    font-family: "Plus Jakarta Sans", "Segoe UI", sans-serif !important;
    font-size: 14px !important;
  }

  #statementCashFlowsApp .scf-table th {
    padding: 9px 11px !important;
    font-size: 13px !important;
    font-weight: 800 !important;
  }

  #statementCashFlowsApp .scf-table td {
    padding: 8px 11px !important;
    font-size: 14px !important;
    line-height: 1.4 !important;
  }

  #trialBalanceApp.tb-page {
    font-family: "Plus Jakarta Sans", "Segoe UI", sans-serif !important;
    font-size: 15px !important;
  }

  #trialBalanceApp .tb-hdr .ti {
    font-size: 23px !important;
    font-weight: 800 !important;
  }

  #trialBalanceApp .tb-table {
    font-family: "Plus Jakarta Sans", "Segoe UI", sans-serif !important;
    font-size: 14px !important;
  }

  #trialBalanceApp .tb-table th {
    padding: 9px 11px !important;
    font-size: 13px !important;
    font-weight: 800 !important;
  }

  #trialBalanceApp .tb-table td {
    padding: 8px 11px !important;
    font-size: 14px !important;
    line-height: 1.4 !important;
  }

  #generalLedgerApp.gl-page {
    font-family: "Plus Jakarta Sans", "Segoe UI", sans-serif !important;
    font-size: 15px !important;
  }

  #generalLedgerApp .gl-hdr .ti {
    font-size: 23px !important;
    font-weight: 800 !important;
  }

  #generalLedgerApp .gl-table {
    font-family: "Plus Jakarta Sans", "Segoe UI", sans-serif !important;
    font-size: 14px !important;
  }

  #generalLedgerApp .gl-table th {
    padding: 9px 11px !important;
    font-size: 13px !important;
    font-weight: 800 !important;
  }

  #generalLedgerApp .gl-table td {
    padding: 8px 11px !important;
    font-size: 14px !important;
    line-height: 1.4 !important;
  }
}

/* Responsive screen layout only. */
@media screen and (max-width: 900px) {
  :where(
    #enterBillsRoot,
    #payBillsRoot,
    #billTrackerRoot,
    #studentBalanceApp,
    #incomeByStudentApp,
    #studentLedgerApp,
    #accountsPayableSummaryApp,
    #statementCashFlowsApp,
    #trialBalanceApp,
    #generalLedgerApp
  ) {
    font-size: 12px;
  }

  :where(#enterBillsRoot, #payBillsRoot, #billTrackerRoot) .eb-card,
  :where(#studentBalanceApp, #incomeByStudentApp, #studentLedgerApp) .card-box,
  #accountsPayableSummaryApp .aps-card,
  #statementCashFlowsApp .scf-card,
  #trialBalanceApp .tb-card,
  #generalLedgerApp .gl-card {
    padding: 14px;
    border-radius: 12px;
  }

  :where(
    #enterBillsRoot,
    #payBillsRoot,
    #billTrackerRoot,
    #studentBalanceApp,
    #incomeByStudentApp,
    #studentLedgerApp,
    #accountsPayableSummaryApp,
    #statementCashFlowsApp,
    #trialBalanceApp,
    #generalLedgerApp
  ) :is(.toolbar, .eb-toolbar, .aps-toolbar, .scf-toolbar, .tb-toolbar, .gl-toolbar) {
    align-items: stretch;
  }
}

@media print {
  /* The existing per-report print styles deliberately remain authoritative. */
}
